powered by simpleCommunicator - 2.0.33     © 2025 Programmizd 02
Форумы / Обсуждение нашего сайта (архив) [закрыт] [закрыт для гостей] / выделение исходников
111 сообщений из 111, показаны все 5 страниц
выделение исходников
    #11691100
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собираю пожелания и замечания по функциональности выделения иссходников.
Ошибки в текущей версии, добавление новых языков, оформление и т.п.

Alex
...
Рейтинг: 0 / 0
выделение исходников
    #11691519
Фотография Gator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за заботу.

Хотелось бы SRC в строке сообщения. Например,

Замените
Код
1.
var Obj: TObject;
на
Код
1.
var Obj: TPersistent
_a.JPG
...
Рейтинг: 0 / 0
выделение исходников
    #11691939
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ошибка в выделении комментария в SRC VBA
Если комментарий в последней строке и после него нет энтера - он не выделяется как комментарий
Код
1.
a=1 'коммент
Код
1.
a=1 'коммент не выделился
...
Рейтинг: 0 / 0
выделение исходников
    #11692074
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gator,

Я думаю это будет не очень красиво из-за большей высоты строки с исходником.

Shocker.Pro ,

Понял. Вопрос на засыпку - можно ли использовать синтакс VB.NET для выделения VB исходников?
...
Рейтинг: 0 / 0
выделение исходников
    #11692205
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При выделении всей строки (==>), она сдвигается к левому краю. Несмотря на пробелы слева
Код
1.
2.
   id=1
   var="qwerty"
Хотя исходная отформатирована правильно
Код
1.
2.
   id=1
   var="qwerty"
...
Рейтинг: 0 / 0
выделение исходников
    #11692211
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
Вопрос на засыпку - можно ли использовать синтакс VB.NET для выделения VB исходников?
думаю, что нет, все-таки принципиально разные языки.
Сейчас я так понимаю, для VB.NET вообще нет SRC, по умолчанию там C# - он вообще черти-что показывает для VBA исходников.
...
Рейтинг: 0 / 0
выделение исходников
    #11692213
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извиняюсь. Сейчас нормально :-Q

Но было. Спасибо, что поправили.
...
Рейтинг: 0 / 0
выделение исходников
    #11692663
Фотография Gator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge> Я думаю это будет не очень красиво из-за большей высоты строки с исходником.
Абсолютно согласен.
Просто хотелось бы некую "моноширинность с выделением ключевых слов а-ля SRC" в тексте.

Но это другая фича. Извиняюсь за оффтоп
...
Рейтинг: 0 / 0
выделение исходников
    #11692971
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
Собираю пожелания и замечания по функциональности выделения исходников.
цитирование в "быстром ответе" по прежнему не определяет язык (в силу отсутствия данных).
ждем-с..
...
Рейтинг: 0 / 0
выделение исходников
    #11692991
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gator 
Просто хотелось бы некую "моноширинность с выделением ключевых слов а-ля SRC" в тексте.
выделяй болдом и не заморачивайся.
...
Рейтинг: 0 / 0
выделение исходников
    #11693037
Фотография Gator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Яростный Меч, Так и делаю. А разве кто-то иначе? хи-хи
...
Рейтинг: 0 / 0
выделение исходников
    #11693211
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mds_world 
Извиняюсь. Сейчас нормально :-Q

Но было. Спасибо, что поправили.
+1

что характерно, в предпросмотре - баг остался :)
1234.JPG
...
Рейтинг: 0 / 0
выделение исходников
    #11693352
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Залил новую версию с полностью измененным движком расскраски исходников.

Добавились новые языки: XML, PowerShell, Python, Ruby, Coco, ASPX, CSS, JavaScript, HTML (+js)

Возможно будут отличаться цвета, которыми расскрашивались элементы исходников. О необходимых изменениях пишите тут.

Также должны правильно поддерживаться спец-символы внутри исходников и не должна происходить замена html кодов типа:
Код
1.
 " > ..
что было ранее.

NNTP версия пока еще будет использовать старый вариант при публикации.
...
Рейтинг: 0 / 0
выделение исходников
    #11693643
Guf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge,

А можно вернуть старые шрифты для [SRC SQL] ? А то прям глаза режет... И от привычных в студии отличается
untitled.jpg
...
Рейтинг: 0 / 0
выделение исходников
    #11693767
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guf 
judge,

А можно вернуть старые шрифты для [SRC SQL] ? А то прям глаза режет... И от привычных в студии отличается
+1
И в VB тоже, не только в [SRC SQL]

Минус еще и в том, что теперь, даже не очень длинные строки, которые раньше помещались на экране полностью, теперь частично скрываются справа экрана и целиком не видны.
...
Рейтинг: 0 / 0
выделение исходников
    #11694133
Микросекунда
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guf пишет:

G> А можно вернуть старые шрифты для [SRC SQL] ? А то прям глаза режет...

И ещё +1
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
выделение исходников
    #11694935
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Микросекунда 
Guf пишет:

G> А можно вернуть старые шрифты для [SRC SQL] ? А то прям глаза режет...

И ещё +1
+много!!!
сейчас наблюдаю прям уродство:
Длина индекса - MySQL - Sql.ru 2011-12-02 11-57-05.png
...
Рейтинг: 0 / 0
выделение исходников
    #11695602
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
Залил новую версию с полностью измененным движком расскраски исходников.
Проверил на стандартном дельфовом коде. Если старая раскраска была плоха, новая гораздо хуже. Конкретно:

1. Цвета - мягко говоря, не сахар. Раньше было лучше. А ещё лучше взять стандартную для среды.

2. Выделение чисел внутри комментариев - мягко говоря, не гуд. А что ещё там будет выделяться и как?
Код
1.
2.
3.
4.
5.
6.
7.
{ *************************************************************************** }
{                                                                             }
{ Delphi and Kylix Cross-Platform Visual Component Library                    }
{                                                                             }
{ Copyright (c) 1995, 2001 Borland Software Corporation                       }
{                                                                             }
{ *************************************************************************** }
3. Комментарий не выделяется
Код
1.
(*$NOINCLUDE ActiveX*)
4. Неверное выделение констант:
Код
1.
2.
3.
4.
5.
6.
7.
8.
const

  fmCreate = $FFFF;

  scShift = $2000;
  scCtrl = $4000;
  scAlt = $8000;
  scNone = 0;
5. А вот и ключевые слова внутри комментария, тоже выделяются
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
  // these operators are used in Assign and go beyond simply copying
  //   laCopy = dest becomes a copy of the source
  //   laAnd  = intersection of the two lists
  //   laOr   = union of the two lists
  //   laXor  = only those not in both lists
  // the last two operators can actually be thought of as binary operators but
  // their implementation has been optimized over their binary equivalent.
  //   laSrcUnique  = only those unique to source (same as laAnd followed by laXor)
  //   laDestUnique = only those unique to dest   (same as laOr followed by laXor)
6. private, protected, public, property, destructor, class, overload, virtual - не выделяются, хотя должны. Список наверняка неполный. Наверняка ещё будут constructor, dynamic, override, published, stdcall, register, cdecl, read, write, index... Три последних, кстати, нужно уметь отличать, когда они должны выделяться, а когда - нет.
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
  TList = class(TObject)
  private
    FList: PPointerList;
    FCount: Integer;
    FCapacity: Integer;
  protected
    function Get(Index: Integer): Pointer;
    procedure Grow; virtual;
    procedure Put(Index: Integer; Item: Pointer);
    procedure Notify(Ptr: Pointer; Action: TListNotification); virtual;
    procedure SetCapacity(NewCapacity: Integer);
    procedure SetCount(NewCount: Integer);
  public
    destructor Destroy; override;
    function Add(Item: Pointer): Integer;
    procedure Clear; virtual;
    procedure Delete(Index: Integer);
    class procedure Error(const Msg: string; Data: Integer); overload; virtual;
    class procedure Error(Msg: PResStringRec; Data: Integer); overload;
    procedure Exchange(Index1, Index2: Integer);
    function Expand: TList;
    function Extract(Item: Pointer): Pointer;
    function First: Pointer;
    function IndexOf(Item: Pointer): Integer;
    procedure Insert(Index: Integer; Item: Pointer);
    function Last: Pointer;
    procedure Move(CurIndex, NewIndex: Integer);
    function Remove(Item: Pointer): Integer;
    procedure Pack;
    procedure Sort(Compare: TListSortCompare);
    procedure Assign(ListA: TList; AOperator: TListAssignOp = laCopy; ListB: TList = nil);
    property Capacity: Integer read FCapacity write SetCapacity;
    property Count: Integer read FCount write SetCount;
    property Items[Index: Integer]: Pointer read Get write Put; default;
    property List: PPointerList read FList;
  end;
7. Некоторые синтаксические элементы (например, имена типов) подсвечены чем-то, очень мало отличающимся от основного текста. Только мешает, особенно если участь, что "что есть стандартный тип" - идёт с бухты-барахты. Например, integer подсвечивается, а pointer - нет.

8. object - это тоже ключевое слово.
Код
1.
  ApplicationShowException: procedure (E: Exception) of object = nil;
9. inherited - тоже ключевое слово
Код
1.
2.
3.
constructor TRegGroup.Create(AClass: TPersistentClass);
begin
  inherited Create;
10. Комментарий вообще никак не отрисован, хотя должен бы
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
begin
  inherited Create;
  FGroups := TList.Create;
  InitializeCriticalSection(FLock);
  // Initialize default group
  Group := TRegGroup.Create(TPersistent);

  // The group criterion has changed. We need to recalculate which groups the
  // classes that have already been registered belong to. We can skip
  // Group since we would just be moving a class to a group it already belongs
  // to. We also only need to find the new group of classes that descend from
  // AClass since that is the only criterion being changed. In other words,
  // we only need to move classes that descend from AClass to Group if they
  // are in another group.
  for I := 0 to FGroups.Count - 1 do
  begin
    CurrentGroup := FGroups[I];
11. raise - это тоже ключевое слово
Код
1.
2.
3.
4.
  procedure Error;
  begin
    raise EFilerError.CreateFmt(SUnknownGroup, [AGroupClass.ClassName]);
  end;
12. А здесь стандартные типы почему-то не подсвечены
Код
1.
2.
3.
4.
5.
constructor TClassFinder.Create(AClass: TPersistentClass;
  AIncludeActiveGroups: Boolean);
var
  I: Integer;
  Group: TRegGroup;
13. А ещё есть такая хорошая штука - ассемблер
Код
1.
2.
3.
4.
5.
6.
7.
8.
function GetFieldClassTable(AClass: TClass): PFieldClassTable; assembler;
asm
        MOV     EAX,[EAX].vmtFieldTable
        OR      EAX,EAX
        JE      @@1
        MOV     EAX,[EAX+2].Integer
@@1:
end;
14. Последние 16 лет try и finally - тоже ключевые слова. И except тоже
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
procedure UnRegisterClass(AClass: TPersistentClass);
begin
  RegGroups.Lock;
  try
    RegGroups.UnregisterClass(AClass);
  finally
    RegGroups.Unlock;
  end;
end;
15. И это тоже ключевое слово
Код
1.
2.
3.
threadvar
  GlobalLoaded: TList;
  GlobalLists: TList;
16. #0 или там $0F - это целые лексемы, и подсвечивать их стоит соответственно
Код
1.
2.
3.
          if (QuoteChar <> #0) and (QuoteChar = Tail^) then
            QuoteChar := #0
          else if QuoteChar = #0 then
17. И at - это тоже ключевое слово
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
class procedure TList.Error(const Msg: string; Data: Integer);

  function ReturnAddr: Pointer;
  asm
          MOV     EAX,[EBP+4]
  end;

begin
  raise EListError.CreateFmt(Msg, [Data]) at ReturnAddr;
end;
18. Странно и нелогично выделять ^ и при этом не выделять @
Код
1.
2.
3.
4.
    if (NewIndex < 0) or (NewIndex >= FCount) then
      Error(@SListIndexError, NewIndex);
    Item := Get(CurIndex);
    FList^[CurIndex] := nil;
Фух. Даже до четверти текста не дошёл, но уже устал. Пока хватит, наверное :)
...
Рейтинг: 0 / 0
выделение исходников
    #11695801
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,
Да с Delphi чето-то не то было :) Залил новую версию - посмотри еще раз?
...
Рейтинг: 0 / 0
выделение исходников
    #11695910
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
Да с Delphi чето-то не то было :) Залил новую версию - посмотри еще раз?
Замечания 2, 4, 13, 16, 17 остались на месте. Может ещё что-то, глаз уже замылен. dynamic, stdcall, at по-прежнему не подсвечиваются. Get подсвечивается не иначе чем с перепою
Код
1.
2.
3.
4.
function TList.Last: Pointer;
begin
  Result := Get(FCount - 1);
end;
...
Рейтинг: 0 / 0
выделение исходников
    #11695913
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шрифт тоже вернул
...
Рейтинг: 0 / 0
выделение исходников
    #11696509
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По JS:
Код
1.
2.
3.
/23/igm.test('g-regex');
/23/.test
undefined arguments
1) регексы не подсвечиваются.
2) undefined, arguments - можно бы подсветить.
3) стандартные классы (Array, Function, Object, Boolean, Number, RegExp, String, Math) подсвечиваются как keywords, хотя это просто классы. Может, цвет поменять?
4) ну и регистрозависимость, неплохо бы учесть.
...
Рейтинг: 0 / 0
выделение исходников
    #11696549
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Softwarer, ок постараюсь исправить

Яростный Меч
регексы пока пасс.
2 и 3 поправим. 4? сделать case sensitive?
...
Рейтинг: 0 / 0
выделение исходников
    #11696613
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
сделать case sensitive?
конечно надо.
причем во всех регистрозависимых языках

C#
Код: C#
1.
For While
...
Рейтинг: 0 / 0
выделение исходников
    #11698205
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
выделение исходников
    #11698217
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
выделение исходников
    #11698413
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grasoff.net,

исправил.
...
Рейтинг: 0 / 0
выделение исходников
    #11702204
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
grasoff.net,

исправил.
с пятитыщенкой тебя!
...
Рейтинг: 0 / 0
выделение исходников
    #11726807
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
11726795
неверная раскраска запроса.
...
Рейтинг: 0 / 0
выделение исходников
    #11726814
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код
1.
2.
3.
4.
SELECT `users`.`id`, `name` FROM `users`
WHERE `users`.`id` NOT IN (
SELECT `usersParameters`.`users_id` FROM `usersParameters`
)
`id`, `name` это явно не ключевые слова.
...
Рейтинг: 0 / 0
выделение исходников
    #11743060
`
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
`
Гость
что-то сломалось в выделении всей строки, в коде
Код
1.
select * from table1
...
Рейтинг: 0 / 0
выделение исходников
    #11744395
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код
1.
2.
3.
4.
5.
SQL> create trigger b_ai after insert on b for each row
  2  begin
  3    insert into a(id) values (:new.a_id);
  4  end;
  5  /
Выделения в первой строке просто ужасны.
...
Рейтинг: 0 / 0
выделение исходников
    #11744595
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer 
Код
1.
SQL> create trigger b_ai after insert on b for each row
Выделения в первой строке просто ужасны.
На каком слове мне следовало бы завизжать от ужаса?
...
Рейтинг: 0 / 0
выделение исходников
    #11744792
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Elic,

trigger, after, each.
...
Рейтинг: 0 / 0
выделение исходников
    #11744829
Фотография dmidek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Elic 
softwarer 
Код
1.
SQL> create trigger b_ai after insert on b for each row
Выделения в первой строке просто ужасны.
На каком слове мне следовало бы завизжать от ужаса?
Визжать вообще не стоит, тем более по такому поводу.
На мой взгляд никакой особой трагедии нет,
но пути улучшения на мой взгляд совершенно ясны - по возможности отделить ключевые слова
языка от пользовательских наименований.
В приведенном примере эта задача решена скверно.
ИМХО
...
Рейтинг: 0 / 0
выделение исходников
    #11745228
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmidek 
На мой взгляд никакой особой трагедии нет
Вот именно. И слава богу, хоть кто-то из "модераторов" это понимает.
...
Рейтинг: 0 / 0
выделение исходников
    #11746711
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tanglir 
Elic,

trigger, after, each.
А здесь?
Код
1.
2.
3.
4.
5.
6.
7.
8.
tst> declare trigger number;
  2          after number;
  3          each number;
  4  begin   null;
  5  end;
  6  /

PL/SQL procedure successfully completed.
...
Рейтинг: 0 / 0
выделение исходников
    #11746719
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав Любомудров 
А здесь?
А вот этим и отличается вменяемая синтаксическая раскраска от тупого search/replace. По состоянию на сейчас лучше вообще убрать её нафиг, чем выделять случайные слова вроде
Код
1.
2.
3.
SQL> create table ....

Table created
...
Рейтинг: 0 / 0
выделение исходников
    #11746725
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да нет, то, что есть, таки получше чем ничего
Я бы только убрал совсем уж тупизмы
Код
1.
2.
3.
4.
5.
6.
tst> declare >>>a<<< number;
  2  begin   null;
  3  end;
  4  /

PL/SQL procedure successfully completed.
...
Рейтинг: 0 / 0
выделение исходников
    #11746740
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
` 
что-то сломалось в выделении всей строки, в коде
Код
1.
select * from table1
Исправлено.

С выделением pl/sql буду разбираться. Синтаксич. раскраски, конечно не будет, но текущую постараюсь улучшить.
...
Рейтинг: 0 / 0
выделение исходников
    #11746751
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, для приблизительного обязательного списка можно взять
Код
1.
2.
3.
select keyword from v$reserved_words where reserved='Y' and length > 1
...
80 rows selected.
С другой стороны, вызывает некое недоумение отсутствующие в предыдущем списке
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
tst> select * from v$reserved_words where keyword in ('IF', 'CLOB', 'NCHAR', >>>'DECODE'<<<, 'MIN');

KEYWORD                            LENGTH R R R R D
------------------------------ ---------- - - - - -
CLOB                                    4 N N N N N
IF                                      2 N N N N N
MIN                                     3 N N N N N
NCHAR                                   5 N N N N N

tst> declare clob number; nchar number;  decode number; min number;
  2  begin   null;
  3  end;
  4  /

PL/SQL procedure successfully completed.

tst> declare if number;
  2  begin   null;
  3  end;
  4  /
declare if number;
        *
ERROR at line 1:
ORA-06550: line 1, column 9:
PLS-00103: Encountered the symbol "IF" when expecting one of the following:
begin function package pragma procedure subtype type use
<an identifier> <a double-quoted delimited-identifier> form
current cursor
...
Т.е. вроде как и выделить бы надо, и использование ввиде идентификаторов не возбраняется (IF/CASE и т.д. вообще отдельная песня).

LOOP там вообще нет, но с ним вообще случай тяжелый
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
tst> select * from v$reserved_words where keyword='LOOP';

no rows selected

tst> set serveroutput on
tst> declare loop number := 1;
  2  begin   dbms_output.put_line(loop);
  3  end;
  4  /
1

PL/SQL procedure successfully completed.

tst> declare loop number;
  2  begin   loop := 1;
  3  end;
  4  /
begin   loop := 1;
             *
ERROR at line 2:
ORA-06550: line 2, column 14:
PLS-00103: Encountered the symbol "=" when expecting one of the following:
begin case declare exit for goto if loop mod null pragma
raise return select update while with <an identifier>
<a double-quoted delimited-identifier> <a bind variable> <<
close current delete fetch lock insert open rollback
savepoint set sql execute commit forall merge pipe
The symbol "<an identifier>" was substituted for "=" to continue.
Да и много еще там граблей...

Реализовать "вменяемую синтаксическую раскраску"(c)softwarer -- можно организовать пятничную задачку по расстановке тегов в зависимости от контекста :)))
...
Рейтинг: 0 / 0
выделение исходников
    #11746754
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав Любомудров 
Да нет, то, что есть, таки получше чем ничего
Я бы только убрал совсем уж тупизмы
Код
1.
2.
3.
4.
5.
6.
tst> declare >>>a<<< number;
  2  begin   null;
  3  end;
  4  /

PL/SQL procedure successfully completed.
Ан не все так просто :)))
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
tst> select * from v$reserved_words where length=1 and keyword between 'A' and 'Z' order by 1;

KEYWORD                            LENGTH R R R R D
------------------------------ ---------- - - - - -
A                                       1 N N N N N
E                                       1 N N N N N
G                                       1 N N N N N
K                                       1 N N N N N
M                                       1 N N N N N
P                                       1 N N N N N
T                                       1 N N N N N
U                                       1 N N N N N

8 rows selected.
...
Рейтинг: 0 / 0
выделение исходников
    #11747090
Фотография dmidek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав Любомудров 
tanglir 
Elic,

trigger, after, each.
А здесь?
Код
1.
2.
3.
4.
5.
6.
7.
8.
tst> declare trigger number;
  2          after number;
  3          each number;
  4  begin   null;
  5  end;
  6  /

PL/SQL procedure successfully completed.
Отличный пример. Естественно, здесь все имена переменных тоже должны раскраситься
голубым, "дабы глупость каждого лучше видна была". Вам же легче будет горе- программисту
объяснять, что сие есть моветон.
...
Рейтинг: 0 / 0
выделение исходников
    #11747120
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не соглашусь, Дим. Во-первых, список таких слов растёт с каждой версией и накрывает "ранее свободные и нормальные" имена. Во-вторых, нередко бывают условные примеры типа
Код
1.
select * from table where id = :id
...
Рейтинг: 0 / 0
выделение исходников
    #11747155
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmidek 
"дабы глупость каждого лучше видна была"
Про trigger и даже after еще можно как-то согласиться, но в чем провинился each?
...
Рейтинг: 0 / 0
выделение исходников
    #11747931
Фотография dmidek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав Любомудров 
dmidek 
"дабы глупость каждого лучше видна была"
Про trigger и даже after еще можно как-то согласиться, но в чем провинился each?
Если judge будет выбирать между вариантами, минимизируя свои трудозатраты, то я проголосую за риск того, что переменная each, буде такая раз в 7 лет и встретится, окажется окрашенной голубым.
...
Рейтинг: 0 / 0
выделение исходников
    #12073763
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Oracle-е обратный slash (\) не является escape-символом внутри строкового литерала. Как следствие, раскраска сыпется чуть более чем полностью: 12073746
WrongSlashAsEscape.png
...
Рейтинг: 0 / 0
выделение исходников
    #12074527
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Авто-нумерацию строк добавить-бы надо. Очень полезно обсуждения отдельных
частей кода.
Код
1.
2.
3.
4.
5.
1 #include <stdio.h>
2
3 int main(int argc,char **argv){
4  printf("Hello Wold\n");
5 }
И вертикальный разделитель сделать чтоб при выделении абзаца захватывался
только исходник.
...
Рейтинг: 0 / 0
выделение исходников
    #12074815
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton 
Авто-нумерацию строк добавить-бы надо.
Нах. Не надо слушать заблудших.
...
Рейтинг: 0 / 0
выделение исходников
    #12074875
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не участвовал в обсуждении с "заблудшими". Поэтому.. хм невкурсе.
...
Рейтинг: 0 / 0
выделение исходников
    #12074909
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тебя в данном случае заблудшим и обозвали. :)

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #12076023
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нумеровать строки в исходнике допустимо только если эти номера не будут лезть в квоту и не будут мешать копипасту "из форума".
...
Рейтинг: 0 / 0
выделение исходников
    #12076035
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer 
Нумеровать строки в исходнике допустимо только если эти номера не будут лезть в квоту и не будут мешать копипасту "из форума".
++1
...
Рейтинг: 0 / 0
выделение исходников
    #12076191
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребята, вы со своими странными нумерологическими хотелками не отвлекайте внимание от охренительной баги 12073763.
Если вам очень хочется, то прошу потерпеть и хотеть либо не прямо здесь, либо не прямо сейчас.
...
Рейтинг: 0 / 0
выделение исходников
    #12076381
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Elic,

Исправил.

+
Спойлер
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
CREATE OR REPLACE TRIGGER SYSTEM.smz_trigger_on_logon
  after logon
  on database
declare
  connect_information   smz_log_connection%rowtype;
  registered            number(1);
  fio_osuser            w_user_info.fio%type;
  fio_orauser           w_user_info.fio%type;
  note_info             smz_log_forbidden.note%type;

  procedure SaveForbiddenLog
  as
    pragma autonomous_transaction;
  begin
    insert into SMZ_Log_Forbidden
      (USERNAME, TIME_LOGIN, TERMINAL, OSUSER, PROGRAM, PROG_SHORT, AUDSID, SPID, NOTE)
      values (connect_information.USERNAME, connect_information.TIME_LOGIN, connect_information.TERMINAL,
              connect_information.OSUSER, connect_information.PROGRAM, connect_information.PROG_SHORT,
              connect_information.AUDSID, connect_information.SPID, note_info);
    commit;
  end;
begin
  -- take connect information
  select user, sysdate, terminal, osuser, program, null, audsid, spid
    into connect_information
    from smz_your_session;

  -- take short name program
  connect_information.prog_short :=
    substr(connect_information.program,
           instr(connect_information.program, '\', -1) + 1);
  connect_information.prog_short :=
    substr(connect_information.prog_short,
           instr(connect_information.prog_short, '/', -1) + 1);
  connect_information.prog_short :=
    replace(lower(connect_information.prog_short), '(tns v1-v3)');
  connect_information.prog_short :=
    rtrim(replace(connect_information.prog_short, '.xxx.yyyyy.com'));

  if instr(connect_information.prog_short, '(') > 0
  then
    connect_information.prog_short :=
      substr(connect_information.prog_short,
             1,
             instr(connect_information.prog_short, ' (') - 1);
  end if;

  -- check developer if development database
  if upper(sys_context('userenv', 'db_name')) like 'D%'
     and connect_information.osuser is not null
     and connect_information.username not in
            ('ADMIN_ACCESS', 'AC', 'AC_USER', 'TDOM', 'TDOM_LS', 'SMZ_CHECK_PWD')
  then
    begin
      select null
        into registered
        from smz_developers
       where net_name = connect_information.osuser;
    exception
      when no_data_found
      then
        begin
          note_info := 'not developer login';
          SaveForbiddenLog;
          raise_application_error(
            -20101,
            'Соединение запрещено, так как вы не являетесь разработчиком программ для этой базы данных.'
            || chr(13) || chr(10) ||
            'The connect is forbidden if you not developer of programms for this database.');
        end;
    end;
  end if;

  if connect_information.username like 'O__SMZ%'
  then
    -- check connection from test environment if production database
    if upper(connect_information.terminal) like 'EURRUS-DTS%'
       and upper(sys_context('userenv', 'db_name')) like 'P%'
    then
      note_info := 'connect from test env';
      SaveForbiddenLog;
      raise_application_error(
        -20102,
        'Работа в промышленной базе данных из тестовой среды запрещена.'
        || chr(13) || chr(10) ||
        'Work in a production database from the test environment is forbidden.');
    end if;

    -- check registration of application for application user (production and testing databases)
    if upper(sys_context('userenv', 'db_name')) not like 'D%'
    then
      registered := 1;

      if connect_information.prog_short in
             ('changepwd.exe', 'sqlldr.exe', 'undefined', 'oracle.exe')
      then
        null;
      elsif connect_information.prog_short like 'oracle%@%'
      then
        if     upper(sys_context('userenv', 'db_name')) like 'P%'
           and connect_information.prog_short not like 'oracle%@%p'
           and connect_information.program not like 'oracle%(J%'
        then
          registered := 0;
        elsif upper(sys_context('userenv', 'db_name')) like 'Q%'
              and connect_information.prog_short like 'oracled%@%'
        then
          registered := 0;
        end if;
      else
        select count( * )
          into registered
          from (select null
                  from w_pril
                 where lower(app_name) = connect_information.prog_short
                union all
                select null
                  from w_path_file
                 where lower(file_name) = connect_information.prog_short);
      end if;

      if registered = 0
      then
        note_info := 'forbidden application';
        SaveForbiddenLog;
        raise_application_error(
          -20103,
          'Работа в данной программе запрещена для пользователей приложений.'
          || chr(13) || chr(10) ||
          'Work in the given program is forbidden for application users.');
      end if;
    end if;

    -- check compliance OS_username and Oracle_username if production/test database
    if upper(sys_context('userenv', 'db_name')) not like 'D%'
       and connect_information.prog_short not like 'oracle%'
    then
      begin
        select 1
          into registered
          from w_user
         where oracle_name = connect_information.username
               and net_name = connect_information.osuser;
      exception
        when no_data_found
        then
          begin
            begin
              fio_osuser := ' ';

              select fio
                into fio_osuser
                from w_user_info
               where net_name = connect_information.osuser and rownum < 2;
            exception
              when no_data_found
              then
                null;
            end;

            select fio
              into fio_orauser
              from w_user_info
             where oracle_name = connect_information.username;

            note_info := 'OS-ORA non-compliance login';
            SaveForbiddenLog;
            raise_application_error(
              -20104,
              chr(13) || chr(10) || chr(13) || chr(10) || fio_osuser || '.'
              || chr(13) || chr(10) ||
              'Вами совершена попытка доступа в приложение под именем пользователя '
              || fio_orauser || '.' || chr(13) || chr(10) ||
              'Данное действие является нарушением политики использования учетных записей.'
              || chr(13) || chr(10) ||
              'Пожалуйста, используйте свою учётную запись для входа в приложение.'
              || chr(13) || chr(10) ||
              'Если у вас возникли какие-либо вопросы, обращайтесь в службу поддержки пользователей.'
              || chr(13) || chr(10) || '.');
          end;
      end;
    end if;
  end if;

  -- save log
  insert into SMZ_Log_Connection
      values connect_information;

  -- set context
  set_zarpl_role;

end;
/
...
Рейтинг: 0 / 0
выделение исходников
    #12076629
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge,

Спасибо.
...
Рейтинг: 0 / 0
выделение исходников
    #12114306
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В качестве блажи хотелось бы выделение формул экселя, строк типа
Код
1.
=ЕСЛИ(НАЙТИ(" ";K17)=7;ПРАВСИМВ(K17;ДЛСТР(K17)-7;K17)
...
Рейтинг: 0 / 0
выделение исходников
    #12559550
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
небольшой глючок:
Код
1.
2.
3.
4.
5.
'нужно декларировать Declare Function PostMessage Lib "user32" Alias "PostMessageA" ( _
  ByVal hwnd As Long, _
  ByVal wMsg As Long, _
  ByVal wParam As Long, _
  lParam As Any) As Long
в VB такая строка считается полностью закомментированной, то есть пробел и подчеркивание на конце строки продлевает ее на следующую и к комментарию это тоже относится.
...
Рейтинг: 0 / 0
выделение исходников
    #12559972
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro 
небольшой глючок:
Код
1.
2.
3.
4.
5.
'нужно декларировать Declare Function PostMessage Lib "user32" Alias "PostMessageA" ( _
  ByVal hwnd As Long, _
  ByVal wMsg As Long, _
  ByVal wParam As Long, _
  lParam As Any) As Long
в VB такая строка считается полностью закомментированной, то есть пробел и подчеркивание на конце строки продлевает ее на следующую и к комментарию это тоже относится.
Гы! Век-живи, век учись. Я только сейчас узнал что в VB/VBA можно делать многострочные комментарии.
А вот в VBS это не работает.
...
Рейтинг: 0 / 0
выделение исходников
    #12559977
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl> Гы! Век-живи, век учись. Я только сейчас узнал что
White Owl> в VB/VBA можно делать многострочные комментарии.

:)

P.S. Хотя лично я в VBA делал многострочные комментарии по старинке.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #13229654
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код
1.
2.
3.
4.
5.
6.
Open myFile For Output As #1    ' открытие файла для записи
                Print #1, s                      ' пишем переменную в файл
                Print Len(s)           ' здесь длина переменной 97425 байт
            Close #1

            Print FileLen(myFile)   ' а здесь длина файла получилась 97427 байт
комментарии разного цвета
...
Рейтинг: 0 / 0
выделение исходников
    #13236389
alvk.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

Это же здорово, наверное можно важные комменты выделять определённым цветом. Вот только красного не наблюдаю.:-D
...
Рейтинг: 0 / 0
выделение исходников
    #13236392
alvk.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alvk.,

а вот и красный
Код
1.
2.
3.
dim a as string ' один
a = "select * from tabla where pole = 'ффф'" ' два
d = 'проблем' ' три
...
Рейтинг: 0 / 0
выделение исходников
    #13236423
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подделка! это src sql
...
Рейтинг: 0 / 0
выделение исходников
    #13236469
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> a = "select * from tabla where pole = 'ффф'" ' два

Тоже баг раскраски, кстати.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #13236487
alvk.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alvk. 
alvk.,

а вот и красный
Код
1.
2.
3.
dim a as string ' один
a = "select * from tabla where pole = 'ффф'" ' два
d = 'проблем' ' три
...
Рейтинг: 0 / 0
выделение исходников
    #13236527
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам 
Тоже баг раскраски, кстати.
почему? для sql раскрашено правильно
...
Рейтинг: 0 / 0
выделение исходников
    #13236536
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код
1.
прол #'hjkj#gjhlk
в общем, решетки тут в src vba какие-то лишние, не должны участвовать в раскраске
...
Рейтинг: 0 / 0
выделение исходников
    #13236660
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro> почему? для sql раскрашено правильно

А, если SQL, то да. Я имел в виду, что комментарий (два) не выделился,
если его закомментировать правильно (через --) то все будет правильно.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #13266402
Фотография FishHook
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотрите эту тему. 13265164
...
Рейтинг: 0 / 0
выделение исходников
    #13677858
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
неправильно работает >>><<<
делаю так:
[srс]>>>'<<<другой текст[/srс]
а выделяется вся строка:
Код
1.
>>>'<<<другой текст
...
Рейтинг: 0 / 0
выделение исходников
    #13709949
rockclimber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gator 
Спасибо за заботу.

Хотелось бы SRC в строке сообщения. Например,

Замените
Код
1.
var Obj: TObject;
на
Код
1.
var Obj: TPersistent
_a.JPG
У меня есть идея, возникшая после прочтения этого сообщения.
Не знаю, насколько это реализуемо - но я выскажусь, а вы уж сами решайте.

Сейчас содержимое тега SRC рисуется в отдельном прямоугольном блоке, а можно было бы сделать так, чтобы был не отдельный блок, а прямо в тексте слова подсвечивались, примерно как в тегах или [color]. Например:
Код
1.
2.
3.
4.
/* Старый код PL/SQL */
select *
from dual
where rownum = 1;
/* Новый код PL/SQL */
select *
from dual
where rownum = 1;

Только шрифт на моноширинный заменить еще. Тогда и прямо в текст можно будет вставлять. Имхо, это будет супер-фича, остальные форумы удавятся от зависти :-Q
...
Рейтинг: 0 / 0
выделение исходников
    #13710901
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rockclimber 
Сейчас содержимое тега SRC рисуется в отдельном прямоугольном блоке, а можно было бы сделать так, чтобы был не отдельный блок, а прямо в тексте слова подсвечивались
Мне нравится это предложение
...
Рейтинг: 0 / 0
выделение исходников
    #13711019
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rockclimber,

У нас уже так:
...
Рейтинг: 0 / 0
выделение исходников
    #13711085
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2 
rockclimber 
Сейчас содержимое тега SRC рисуется в отдельном прямоугольном блоке, а можно было бы сделать так, чтобы был не отдельный блок, а прямо в тексте слова подсвечивались
Мне нравится это предложение
Предложение замечательное.

Единственная проблема - обратная совместимость. Пользователи к такому изменению будут не готовы, и на первых порах форматирование в постах будет кривовато.

А так да, только плюсы, ничего не теряется, добавляется больше свободы при форматировании сообщения.
...
Рейтинг: 0 / 0
выделение исходников
    #13711417
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне нравится вариант Gator-а. Я не возражаю против альтернативного тега для "встраивания в текст", но не хотелось бы терять основной вариант - с ярким квадратиком.
...
Рейтинг: 0 / 0
выделение исходников
    #13711527
rockclimber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer 
Мне нравится вариант Gator-а. Я не возражаю против альтернативного тега для "встраивания в текст", но не хотелось бы терять основной вариант - с ярким квадратиком.
...для softwarer'а отдельно сделать желтый бэкграунд :-Q
...
Рейтинг: 0 / 0
выделение исходников
    #13711838
rockclimber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit 
rockclimber,

У нас уже так:
Ну это вы вручную раскрашиваете, правильно?
...
Рейтинг: 0 / 0
выделение исходников
    #13712183
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rockclimber 
Ну это вы вручную раскрашиваете, правильно?
Правильно.
...
Рейтинг: 0 / 0
выделение исходников
    #13713005
rockclimber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit 
rockclimber 
Ну это вы вручную раскрашиваете, правильно?
Правильно.
Идея была именно такая, осталось реализовать. А вам я уже немного завидую...
...
Рейтинг: 0 / 0
выделение исходников
    #13735128
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 judge:
judge 
Собираю пожелания и замечания по функциональности выделения иссходников.
Ошибки в текущей версии, добавление новых языков, оформление и т.п.
1. Язык C.

Зарезервированные слова (reserved keywords) из стандарта C89:
Код
1.
2.
3.
auto, break, case, char, const, continue, default, do, double, else, enum,
extern, float, for, goto, if, int, long, register, return, short, signed,
sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while
Новые зарезервированные слова из стандарта C99:
Код
1.
_Bool, _Complex, _Imaginary, inline, restrict
Новые зарезервированные слова из стандарта C11:
Код
1.
_Alignas, _Alignof, _Atomic, _Generic, _Noreturn, _Static_assert, _Thread_local
Источник: C keywords
Хорошо бы, чтобы tag [ src C ] раскрашивал код именно как C-шный. Потому что бывает вполне нормальный C-шный код, где переменная называется «new», а в C++ так нельзя, там это зарезервированное слово.

Кстати, начиная с C99 можно писать однострочные комментарии:
Код
1.
// как в C++
Так что по части комментариев в C и C++ теперь всё одинаково.

2. Язык C++.

Зарезервированные слова из стандарта C++03:
Код: C++
1.
2.
3.
4.
5.
6.
7.
8.
and, and_eq, asm, auto, bitand, bitor, bool, break, case, catch, char, class,
compl, const, const_cast, continue, default, delete, do, double, dynamic_cast,
else, enum, explicit, export, extern, false, float, for, friend, goto, if,
inline, int, long, mutable, namespace, new, not, not_eq, operator, or, or_eq,
private, protected, public, register, reinterpret_cast, return, short, signed,
sizeof, static, static_cast, struct, switch, template, this, throw, true, try,
typedef, typeid, typename, union, unsigned, using, virtual, void, volatile,
wchar_t, while, xor, xor_eq
Новые зарезервированные слова из стандарта C++11:
Код: C++
1.
2.
alignas, alignof, char16_t, char32_t, constexpr, decltype, noexcept, nullptr,
static_assert, thread_local
Источник: C++ keywords
Почему «friend» красное? Хорошо бы добавить в синий список «wchar_t» и все новые слова из C++11 (кроме «nullptr», которое уже добавлено).
Код: C++
1.
2.
abstract, delegate, each, event, final, finally, in, initonly, internal,
literal, override, property, sealed, where
Это context-sensitive keywords. «override», «final» -- стандартные (начиная с C++11), остальные -- нестандартные, из Visual C++, в основном для .NET. Особый смысл эти слова имеют лишь в определённых местах, а во всём остальном коде могут использоваться как обычные имена, то есть они не зарезервированы. Делать точную раскраску -- сложно, раскрашивать все такие слова в синий цвет -- тоже не очень хорошо, у меня вот например в коде есть переменная «event», и я бы не хотел видеть её синей. Так что, может вообще не заморачиваться, и отменить выделение этих слов? Тем более что вопросов по C++/.NET мало.
Код: C++
1.
int Int INT
C++ (так же как C) различает большие и маленькие буквы в словах, поэтому «int» -- зарезервированное слово, а вот «Int» и «INT» -- нет.

3. Язык C#.
Код: C#
1.
this
Это слово зарезервировано.
...
Рейтинг: 0 / 0
выделение исходников
    #13759728
РОТИК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добавте язык "Simpel" для андройда
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
выделение исходников
    #21405140
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно-ли добавить синтаксическую подсветку для Haskell?

Понимаю что аудитория редкая. Но буду признателен. Надеюсь что движок это не сломает.
...
Рейтинг: 0 / 0
выделение исходников
    #21405730
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

нужно добавить поддержку сниппетов GitHub-а. и будет +100500 языков, всегда актуальных и постоянно поддерживаемых...

об этом уже говорилось.

но конечно, вставка ютубчиков и cube роликов куда важнее. это же форум для профессионалов, без роликов с ржакой никуда.
...
Рейтинг: 0 / 0
выделение исходников
    #21405785
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поддержка сниппетов GitHub-а безопасна?

P.S. Настоятельно рекомендую воздержаться
от неуместного сарказма, во избежание.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #21405790
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или имеет в виду тупо взять (скопировать или ещё как) GitHub-ский движок подсветки?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #21405798
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

безопасна и практически бесплатна
нужно, чтобы sql.ru позволял вставлять
Код: HTML
1.
<script src="https://gist.github.com/***.js"></script>
вместо "***" обычно "userName/snippetcode"

https://thegithubexperiment.blogspot.ru/2016/06/how-to-embed-code-snippets-or-files.html

колоссальная поддержка языков, сниппеты можно форкать себе и дорабатывать, выкладывать, сохраняя историю изменений. это мастхев однозначно.
...
Рейтинг: 0 / 0
выделение исходников
    #21405803
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

например, вот есть популярный сниппет https://gist.github.com/keld30/1597012

допустим, это мой код и я хочу вставить его на форум, открываю сниппет по ссылке (или создаю свой), копирую текст из поля Embed и вставляю сюда

<script src="https://gist.github.com/keld30/1597012.js"></script>

если sql.ru его пропустит как есть, то в сообщении отобразится сниппет с подсветкой и доп. кнопками для форка и лайка.
...
Рейтинг: 0 / 0
выделение исходников
    #21405815
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

вернее, даже без кнопок, просто код с подсветкой и ссылкой на снипет на гитхабе
...
Рейтинг: 0 / 0
выделение исходников
    #21405879
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt> безопасна ... нужно, чтобы sql.ru позволял вставлять
> <script src="https://gist.github.com/***.js"></script>

"Безопасна". Ну-ну.

Впрочем, если можно себе скопировать, то почему не
позаимствовать чужой движок, если автор не против.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #21405888
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам 
"Безопасна". Ну-ну.
Вот как тут не переходить на сарказм? Он здесь очень даже уместный.

Вставлять ролики ютуба, точно такие же embedded скрипты? Безопасно.
Вставлять ролики куба, по той же технологии? Безопасно.

Гитхаб, сервис номер 1 в мире с гигансткой аудиторией... Пфф.. «ну-ну».. не безопасно.

В общем ладно, проехали. Опять 25.
...
Рейтинг: 0 / 0
выделение исходников
    #21405929
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть разница между скриптом гитхаба и скриптом с гитхаба.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #21405934
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам 
Есть разница между скриптом гитхаба и скриптом с гитхаба.
Это именно скрипт гитхаба, а не «с гитхаба».
...
Рейтинг: 0 / 0
выделение исходников
    #21405936
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В моём примере

https://gist.github.com/keld30/1597012.js

JS генерируется гитхабом, это не какой-то файл, в котором юзер может написать. Там код генерирует разметку с содержимом сниппета, точно такой же, как код ютуба или чего-то там ещё.
...
Рейтинг: 0 / 0
выделение исходников
    #21405938
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно открыть по ссылке и увидеть своими глазами, что происходит. Есть и другие способы, на гитхабе в доке описаны, просто этот самый дешёвый по внедрению, не стоит практически ничего.
...
Рейтинг: 0 / 0
выделение исходников
    #21406939
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добавил.
Использовать
[gist=...] или [gist]...[/gist] (вместо ... вставлять номер gist - в примере ниже это 1597012

[gist=1597012]
...
Рейтинг: 0 / 0
выделение исходников
    #21406940
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока это не работает в предварительном просмотре
...
Рейтинг: 0 / 0
выделение исходников
    #21406942
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton 
Можно-ли добавить синтаксическую подсветку для Haskell?

Понимаю что аудитория редкая. Но буду признателен. Надеюсь что движок это не сломает.
К сожалению, в используемой библиотеке отсутствует поддержка Haskel. Я еще поищу конечно.
...
Рейтинг: 0 / 0
выделение исходников
    #21406944
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
[gist=...] или [gist]...[/gist] (вместо ... вставлять номер gist - в примере ниже это 1597012

Пока это не работает в предварительном просмотре
Лично у меня не отобразилось и без предварительного
(ни в IE, ни в NNTP). В FF показало, с дикими тормозами.
Ну и задокументировать, наверное, надо как-то где-то
(тем паче, что и кнопки пока нигде нет).
...
Рейтинг: 0 / 0
выделение исходников
    #21406964
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge,

СПАСИБО!!! :-Q :-Q :-Q
...
Рейтинг: 0 / 0
выделение исходников
    #21406988
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверка Haskell

[gist=17c4aa687b75882f9aeec6e4f684fe19]
...
Рейтинг: 0 / 0
выделение исходников
    #21406989
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня всё работает: FireFox, Chrome, Edge последние версии.
...
Рейтинг: 0 / 0
выделение исходников
    #21406990
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но после ответа исчезает, надо обновлять страницу.
...
Рейтинг: 0 / 0
выделение исходников
    #21407008
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
Пока это не работает в предварительном просмотре
и цитирование выделением не работает.
...
Рейтинг: 0 / 0
выделение исходников
    #21407018
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
judge 
mayton 
Можно-ли добавить синтаксическую подсветку для Haskell?

Понимаю что аудитория редкая. Но буду признателен. Надеюсь что движок это не сломает.
К сожалению, в используемой библиотеке отсутствует поддержка Haskel. Я еще поищу конечно.
Спасибо.
...
Рейтинг: 0 / 0
выделение исходников
    #21407322
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft 
judge 
Пока это не работает в предварительном просмотре
и цитирование выделением не работает.
Вот это сделать сложнее, так как внутренне содержание сниппета не является содержанием сообщения, хотя наверное можно. Но результат цитирования не будет снипетом. Можешь сделать форк, сделать изменения и вставить на форум.
...
Рейтинг: 0 / 0
выделение исходников
    #21409018
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt> Но результат цитирования не будет снипетом. Можешь сделать
hVostt> форк, сделать изменения и вставить на форум.

П****ц! :)))

Я же говорю - вам в руки нельзя гранату давать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
выделение исходников
    #21409621
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам 
hVostt> Но результат цитирования не будет снипетом. Можешь сделать
hVostt> форк, сделать изменения и вставить на форум.

П****ц! :)))

Я же говорю - вам в руки нельзя гранату давать.
А в чём проблема? Любой посетитель может форкнуть исходник себе двумя клавишами мыши. Поправить и выложить. Любой другой посетитель может открыть и посмотреть что изменено в формате diff. Конечно, старый добрый копипаст, отсутствие поддержки огромного количества языков, невозможность переиспользовать выложенный сниппет для ответов другим людям, это лучше?
...
Рейтинг: 0 / 0
выделение исходников
    #21410732
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В своём подфоруме я сам раскрашиваю исходники, благо активность позволяет.
Например:
Haskell 
-- We are defining the properties of a monadic data type ( aka the Box ) -- it should support the bind (>>=) operator. -- The bind operator takes care of peeking inside the box -- and deciding if the function should be applied -- it should support the return function -- Just to put the contents in the box class Monad m where (>>=) :: m a -> (a -> m b) -> m b return :: a -> m a -- The Maybe data type. It can be either Nothing or can have Just x ( like Just 10 ) Maybe = Nothing | Just x -- Defining the Maybe monadic type instance Monad Maybe where Nothing >>= f = Nothing -- if the Maybe box is Nothing, don't apply the function, return Nothing Just x >>= f = Just (f x) -- if it contains a value, apply the function and put it inside the box ( Just result ) return x = Just x -- put the content inside a box
Sass 
/* Full Screen Background Image CSS3 */ #container { background: url(images/bg.jpg) no-repeat center center fixed; /* around 1900px wide*/ -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; } @media only screen and (max-width: 1024px) and (orientation:landscape) { #container { background: url(images/mediumBG.jpg) 50% no-repeat fixed; !important; background-size: 100% auto; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; } } @media only screen and (min-width: 768px) and (max-width: 991px) { #container { background: url(images/mediumTallBG.jpg) 50% 80% no-repeat fixed !important -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; } } @media only screen and (min-width: 0px) and (max-width: 767px) { #container { background: url(images/smallBG.jpg) 50% 80% no-repeat fixed !important; background-size: auto !important; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; } }
Scala 
import com.databricks.spark.avro._ import org.apache.spark.sql.SparkSession val spark = SparkSession.builder().master("yarn").getOrCreate() val df = spark.read.avro("*.avro").select(explode(col("extraOptions"))).select("extraOptions.*")
Bash 
beeline -u $CRM_CONNECTION -n $CRM_USER -p $CRM_PASSWORD --showHeader=false --silent=true --outputformat=csv2 --isolation=TRANSACTION_READ_COMMITTED --fastConnect=true -e "$1" 2>/dev/null
PS: если бы наряду с [ ul ] поддерживалcя и [ ol ], то стало бы ещё лучше.
...
Рейтинг: 0 / 0
выделение исходников
    #21411161
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit,

8-o 8-o 8-o

огоооо
...
Рейтинг: 0 / 0
выделение исходников
    #21411175
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для встраиваемой подстветки есть highlight.js, тоже дофига языков, на любой вкус, легко встраивается, поддерживается, и писал наш человек :-D
...
Рейтинг: 0 / 0
111 сообщений из 111, показаны все 5 страниц
Форумы / Обсуждение нашего сайта (архив) [закрыт] [закрыт для гостей] / выделение исходников
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]