powered by simpleCommunicator - 2.0.33     © 2025 Programmizd 02
Форумы / Обсуждение нашего сайта (архив) [закрыт] [закрыт для гостей] / выделение исходников
25 сообщений из 111, страница 1 из 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
25 сообщений из 111, страница 1 из 5
Форумы / Обсуждение нашего сайта (архив) [закрыт] [закрыт для гостей] / выделение исходников
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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