сделать стартовой  |  добавить в избранное

   SciTE - редактор кода для программистов

Архив SciTE-форума


Автор: mozers, Отправлено:09:11 01-09-2006
unreal666
Все лексеры перечислены в файле scintilla\include\Scintilla.iface (см. исходники).
Т.е. циферки в моем скрипте можно бы даже заменить SciTE константами:
Код:
......,
[SCLEX_PYTHON] = "python",
[SCLEX_CPP] = "cpp",
[SCLEX_HTML] = "hypertext",
[SCLEX_XML] = "xml",
[SCLEX_PERL] = "perl",
......,

Автор: gansA, Отправлено:11:57 01-09-2006
mozers

Цитата:
Поместить пробел и табуляцию в квадратных скобках

Блин стормозил, но ничего готова новая верися , тока это уже не "хайку".
Что делает: - удаляет все отступы, все позторяющиеся пробельные символы, грохает пустые строки. Где применять уж сами решите ))).
Собсно startup.lua

Цитата:

--// trim all space
function TrimAllSpace(strCmd)
    local bF=0;
    local textOut='';
    local text=editor:GetSelText();

    if string.len(text)==0 then
        bF=1;
        text=editor:GetText();
    end;

    text=text..'\n';
    for str in string.gfind(text,'((.-)\r?\n)') do
        textOut=textOut..FormatString(str,strCmd)
    end
    textOut=string.gsub(textOut,'(.+)\n','%1')
    --//trace(textOut) --// debug

    if bF==0 then
        editor:ReplaceSel(textOut);
    else
        editor:SetText(textOut);
    end;

    return 0;
end

function FormatString(str, strCmd)
    if strCmd == 'trim' then
        str=string.gsub(str,'[     ]+',' '); --// удаление повторяющихся символов
        str=string.gsub(str,'^ *(.-) *','%1');    --// удаление пробелов в нач. конце строки
    end

    str=string.gsub(str,'^(%s*)$',''); --// удаление пустых строк
    return str;
end

В str=string.gsub(str,'[ ]+',' '); содержатся знак пробела и знак табуляции.

И SciTEGlobal.properties

Цитата:

command.name.7.*=Trim all spaces
command.7.*=dostring TrimAllSpace('trim')
command.mode.7.*=subsystem:lua,savebefore:no
command.shortcut.7.*=Shift+Space

command.name.8.*=Drop Empty Line
command.8.*=dostring TrimAllSpace('drop')
command.mode.8.*=subsystem:lua,savebefore:no
command.shortcut.8.*=Alt+Space


Автор: mozers, Отправлено:23:47 01-09-2006
Задачи и вопросы для программистов:

  • Как бы увеличить допустимую длину строки в параметре statusbar.text.1 ?
    (Хочется видеть сразу и много, поэтому писать в statusbar.text.2 и другие уже не так интересно)

  • Мечталось бы модернезировать функцию ParametersDialog(VladVRO) вызова настраиваемого диалога ввода, в которой можно было бы задать кол-во входных полей, надписи к ним (опционально), общую надпись (опционально), список кнопок.

  • Реализовать перетаскивание закладок мышью (подробнее...)

  • Необходимо добавить новый эвент onClick(keycode), который бы позволил не только отслеживать одинарные клики мыши, но и анализировать код нажатой(нажатых) в данный момент клавиш.
    (mimir уже добавил onDoubleClick(Ctrl,Shift,Alt) так что путь известен...)

  • Как сделать ВСЕ меню SciTE (а не только Tools) полностью настраиваемым.

    Задачи для любителей:

  • Необходим полный и корректный перевод HELPа на русский язык. Сделайте малое - переведите хотя бы один абзац. А ваш друг переведет другой. А кто то сможет изложить более грамотно и понятно переведенные ранее части

  • Необходимы полные откорректированные, удобные и отлаженные файлы API и сокращений (abbrev) для различных языков программирования.

  • Необходимы удобные и полезные скрипты. На lua, vbs, js или другом каком языке они будут написаны - это уже не важно.

  • Необходимо снабдить подробными и понятными комментариями все файлы настроек

  • Есть задача обновления материала, размещенного на сайте. Например, многие скрипты там размещенные, уже давно обновились и обрели новые возможности...

    В общем - творите, делитесь результатом, и ваше имя навсегда останется в памяти благодарных пользователей

Автор: Moon_aka_Sun, Отправлено:04:32 02-09-2006
mozers
Цитата:
Да и вообще как выполнить любую команду меню?

Я так понимаю, что и сам SciTE, и расширение (Луа), являются как бы надстройкой над Scintilla. И тот и другой имеют доступ к функциям редактирования и т.п. В редакторе можно контролировать расширение (подключать/отключать, запускать и т.д.), но сам редактор не выдаёт никакого API для доступа к себе. Или выдаёт, но очень ограниченный (ххххх: команды?). Может это всё и не так - я всей документации не читал и не пытался во всём разобраться. Я бы предложил спросить об этом у Hodgson'а.

mozers
Цитата:
В меню Tools отсутствует возможность вставлять разделители и делать подменю.

Тот же Mitchell Foral это сделал. При вызове команды из Тулз, показывается новое меню - из Луа, по-моему. Разделители - да, этого нет. Это надо код SciTE править. Если у меня число пунктов перевалит за 30, то можно было бы и посмотреть, должно быть не сложно сделать пустую команду с именем '-' и превращать её в разделитель.

mozers
Цитата:
Необходим единый список всех клавиатурных комманд SciTE

У меня есть мой список, но я немного поменял и KeyMap.cxx в Scintill'e, и SciTEProps.cxx и SciTERes.rc в SciTE. Лучше, конечно, собрать было изменения в одном-двух местах, но так уж исторически вышло - зачем опряделять какие-то команды внизу, когда всё равно я их буду переопределять, и всё равно всё перекомпилировать. В общем, своё могу доработать и облагородить, а оригинальные - нет. Работы там, кстати, для энтузиастов немного, практически все файлы я уже назвал.


Цитата:
макросы?

Если включить при компиляции (или можно из расширения), то в меню появятся 4 команды, привязанные к F9, но они вызывают функции из расширения. Т.о. если их просто включить в исходнике, то без реального обработчика они ничего не делают. Есть filerx или как он там назывался - организатор сессий, но и макро в нём есть. Довольно неудобное и чужеродное средство по-моему, в общем, у меня не пошло. А делать макро на С - работы там довольно много, за вечер не сделаешь.


В свою очередь, тоже хочу спросить. Я видел где-то упоминание, что можно открыть две панели (или два таба?) и редактировать в них один и тот же файл в разных местах. Это было, по-моему, в общем описании принципиальных возможностей Scintill'ы, но точно уже не помню. Никто не владеет вопросом?

Автор: Moon_aka_Sun, Отправлено:11:05 02-09-2006

Цитата:
В меню Tools отсутствует возможность вставлять разделители

Это оказалось проще всего, если мы условимся, что те пункты, которые должны идти после (ниже) разделителя, начинаются с минуса (который не показывается, конечно). Такое соглашение не позволит поставить черту перед (выше) Stop Executing/Ctrl+Break, но он всё равно обычно засерен и после него идёт черта, так что это как раз не страшно.

Итак, в SciTE.h надо вставить новый ид, например,

Код:

#define IDM_PREVMSG            307

#define IDM_TOOLS_SEP 308

#define IDM_MACRO_SEP        310


В SciTEBuffers.cxx надо добавить код вместо строки 1062 (тоже выделено жирным)

Код:

if (commandName.length()) {
//G-: +++ add separator if command.name starts with '-'
int skip_1st_char = 0;
if( commandName[0] == '-' )
{
SetMenuItem(menuTools, menuPos++, IDM_TOOLS_SEP, "");
skip_1st_char = 1;
}
SString sMenuItem = commandName.c_str() + skip_1st_char;
//G-: ---

prefix = "command.shortcut.";


И перекомпилировать

Тогда можно писать в главных пропертиз:

Код:

command.name.1.*=-&Fill Rectangle
command.1.*=*fill_rectangle text:$(1) incr:$(2)
command.mode.1.*=subsystem:lua,savebefore:no

Будет отделено от находящегося выше Go/F5.

Upd.: Добавляет корректно только два сепаратора. Больше - почему-то не хочет.

Автор: mozers, Отправлено:21:07 02-09-2006
Moon_aka_Sun

Цитата:
но сам редактор не выдаёт никакого API для доступа к себе
если это
Код:
scite.SendEditor(SCI_constant, ...) - sends a message to the editor pane
несмотря на название, пример доступа к Scintill'e, а не к редактору, то, наверное, неплохо бы было добавить в исходники хотя бы простенькое API
Спрашивать у Нейла для меня - все равно что идти на прием к зубному врачу...

Цитата:
При вызове команды из Тулз, показывается новое меню - из Луа, по-моему
Не видел такого. Ссылочку можно? Если на LUA - то не надо - это совсем не то. Чтобы при выборе пункта меню Tools открывалось меню на LUA - это несложно. Только меню то будет - КОНТЕКСТНОЕ, чужеродное, возникающее не на месте меню, а на месте текстового курсора

Цитата:
Разделители - да, этого нет
Нейл, в ответ на мою просьбу, сказал что сделать это дико сложно В Windows, мол, работать будет, а в GTK - нет. (вариант что это можно сделать только для пользователей Виндов ему как то в голову не пришел

Цитата:
Если у меня число пунктов перевалит за 30
На меня уже давно давит ограничение в 50 пунктов Надо добавить в "пожелания" увеличить это число хотя бы до 100.

Цитата:
У меня есть мой список
У меня - тоже Все никак не дойдут руки причесать... Наверное надо убрать это из пожеланий - сам займусь...

Цитата:
то в меню появятся 4 команды, привязанные к F9, но они вызывают функции из расширения. Т.о. если их просто включить в исходнике, то без реального обработчика они ничего не делают.
Не понимаю тогда зачем они вообще... Командой из меню Tools нельзя что ли внешний "магнитофон" для записи нажатий на клавиши запустить?
Делать кнопки для магнитофона которого нет??? Очень странно это...

Цитата:
Я видел где-то упоминание, что можно открыть две панели (или два таба?) и редактировать в них один и тот же файл в разных местах
Увы, не знаю Могу прислать весь архив официальной эхи в формате TheBat! - может поможет?


Цитата:
Это оказалось проще всего, если мы условимся, что те пункты, которые должны идти после (ниже) разделителя, начинаются с минуса

УРА!!! - сбылась мечта!
Гениальная идея - не делать лишний пункт меню, а писать - в существующих (а то и так нумеров не хватает).
Главное - начать, а ошибки, я думаю, ты найдешь и исправишь (или кто другой поможет).
Пока, будем честны, все выглядит достаточно сыро... 2 разделителя, Ctrl+Break у меня вдруг улетел наверх и встал 5м пунктом...
В общем, с нетерпением жду исправленный вариант

Автор: Moon_aka_Sun, Отправлено:00:50 03-09-2006

Цитата:
Не видел такого. Ссылочку можно?

Да у того же Форала (http://caladbolg.net/scite.php)
Например, http://caladbolg.net/tools/sc/scite_file_browser.html


Цитата:
Ctrl+Break у меня вдруг улетел наверх и встал 5м пунктом...

У меня это происходит, когда вставляешь третью полоску - вместо неё подхватывается Ctrl+Break. Но разбираться с этим не буду - пусть "настоящие" виндовс-программисты займутся. Наверняка там что-то очень простое, но надо знать виндовс GUI API и его тонкости и заскоки. Буду как Нейл говорить, что "это очень сложно"


Цитата:
scite.SendEditor(SCI_constant, ...)

А может туда можно и IDM_command пихнуть? Хотя вряд ли, конечно.
Есть ещё Director Interface. Туда точно можно любую менюшную команду подать - с помощью menucommand:...

Автор: ALeXkRU, Отправлено:01:21 03-09-2006
mozers
21:07 02-09-2006
Цитата:
Не понимаю тогда зачем они вообще... Командой из меню Tools нельзя что ли внешний "магнитофон" для записи нажатий на клавиши запустить?
Делать кнопки для магнитофона которого нет??? Очень странно это...

может он это на будущее делал... а довести - руки не дошли...
В принципе, в Notepad++ макросы работают... а он же на том же движке.. можно попробовать портировать...
Автор: Moon_aka_Sun, Отправлено:01:38 03-09-2006

Цитата:
На меня уже давно давит ограничение в 50 пунктов Надо добавить в "пожелания" увеличить это число хотя бы до 100.

File scite\src\SciTEBase.h, Line 488:

Код:
    enum { toolMax = 50 };

Moжно увеличить, но должно оставаться не более 100, т.к. в другом месте зашито ограничение на число элементов в меню, вернее, со 101-го элемента начнутся пункты из другого меню.

Добавлено 20060902-2040:

mozers

Цитата:
В SciTE нет возможности создать невидимую в меню Tools команду.

Там довольно глупая система. Для каждого(!) нажатия клавиши просматриваются список user.shortcuts и меню Tools и Language, все их элементы, ищутся определения клавиш, парсятся(!) каждый раз их текстовые описания (кроме Tools, там уже разобранные значения клавиш) и сравниваются с нажатой клавишей. Другого хранилища клавиш нет. Поэтому если элемента не будет в меню, то и определения binding'a как бы и нет. В user.shortcuts можно хранить только команды IDM_ и SCI_.

Проще, наверное, добавить возможность вызова луа-фунций из user.shortcuts, но тогда надо добавить туда хоть чуть-чуть из системы savebefore:no и т.п. Другой путь - добавлять в меню Tools, но не показывать. Но, насколько я помню, в Виндовс нет такого. Третий путь - создать отдельную структуру.

ПС. Я сейчас третьим и занимаюсь Upd. Даже работает

ППС. Ёлки, команды, вызываемые из Tools, получают уже готовые

props.CurrentWord
props.CurrentSelection
props.SelectionStartLine
props.SelectionStartColumn
props.SelectionEndLine
props.SelectionEndColumn

Нигде не описано, поэтому каждый в каждой своей функции добывает их заново

Автор: mozers, Отправлено:12:35 03-09-2006
Moon_aka_Sun
Цитата:
Например, http://caladbolg.net/tools/sc/scite_file_browser.html
Да... Точно. Раз мужик сделал подменю, то почему нам нельзя?

Цитата:
> Ctrl+Break у меня вдруг улетел наверх и встал 5м пунктом...
У меня это происходит, когда вставляешь третью полоску - вместо неё подхватывается Ctrl+Break. Но разбираться с этим не буду - пусть "настоящие" виндовс-программисты займутся.
АУ!!! Программисты! ОЧЕНЬ надо

Цитата:
enum { toolMax = 50 };
Ура!

Цитата:
В user.shortcuts можно хранить только команды IDM_ и SCI_
Да ну???. Приведи рабочий пример с SCI_

Цитата:
добавить возможность вызова луа-фунций из user.shortcuts
Ну это уже есть. Правда вызывается не сама команда, а пункт меню Tools ее содержащий.
Делать это напрямую "добавляя туда хоть чуть-чуть из системы savebefore:no и т.п." мне кажется - некрасиво.

Цитата:
Третий путь - создать отдельную структуру.
Команды эти будут нужны только для того, чтобы заменить стандартные обработчики своими собственными.
Поэтому структура, на мой взгляд, должна выглядеть приблизительно так:
Код:
userproc.IDM.10.*=IDM_UPRCASE
userproc.10.*=dostring case="U" dofile(props["SciteDefaultHome"].."\\tools\\ChangeCase.lua")
userproc.mode.10.*=subsystem:lua,savebefore:no

userproc.IDM.11.*=IDM_LWRCASE
userproc.11.*=dostring case="L" dofile(props["SciteDefaultHome"].."\\tools\\ChangeCase.lua")
userproc.mode.11.*=subsystem:lua,savebefore:no
И содержание этой структуры не должно анализироваться при формировании меню Tools (хотя по виду они очень похожи).
Запрос к ней должен идти при вызове соответствующих команд (IDM_UPRCASE, IDM_LWRCASE).

ALeXkRU
Цитата:
В принципе, в Notepad++ макросы работают... а он же на том же движке.. можно попробовать портировать...
Ага. Запись довольно примитивная - номер команды посылаемой окну и ее параметры (т.е. отредактировать после записи записанный макрос - с ума сойдешь). С другой стороны у Скайта помимо макросов полно других средств автоматизации (одно LUA чего стоит). Так что записать что нито на скорую руку, а потом проиграть - было бы удобно.
В общем, если записывать макро сразу в виде кода lua - очень сложно, то поддерживаю идею о портировании

Автор: Moon_aka_Sun, Отправлено:14:02 03-09-2006

Цитата:
Да ну???. Приведи рабочий пример с SCI_

Где-то в коде есть анализ на больше-меньше, т.е. попадает в SCI_ или в IDM_. Или я это где-то краем глаза прочёл. А что, SCI_ там не работают? А надо? Всё, что есть в SCI_, по-моему, доступно из Lua. Значит, скрипач не нужен (С).


Цитата:
Поэтому структура, на мой взгляд, должна выглядеть приблизительно так

Это кому как. У меня она выглядит внутри как просто массив строк - определений кнопок, а снаружи - точно как command-структура, только называется shortcut. Естественно, name нет, вместо него key, а shortcut который прилагался к command, естественно, не нужен.

shortcut.key.0.*=Ctrl+0
shortcut.0.*=hello
shortcut.mode.0.*=subsystem:lua,savebefore:no

Таким макаром можно ещё 100 клавиш определить.

Кстати, оказалось, что чтобы определить обратную косую, надо 1) повторить её дважды, 2) следующая строка должна быть пустой. Т.е.

shortcut.key.99.*=Ctrl+\\

shortcut.99.*=duplicate_backslashes_in_selection
shortcut.mode.99.*=subsystem:lua,savebefore:no


Цитата:
Запрос к ней должен идти при вызове соответствующих команд (IDM_UPRCASE, IDM_LWRCASE).

Так это ж совсем другое - ты хочешь стандартные команды, вызываемые из меню, заменить на свои. А зачем этом может быть (действительно) нужно? В общем, с таким размахом надо в MultiEdit или Emacs переползать


Цитата:
у Скайта

Хм. Уж скорее SciTE похож на сцыте Англичане читают скорее как сити или сайти.
Автор: mozers, Отправлено:14:51 03-09-2006

Цитата:
SCI_ там не работают?
Неа. Попробуй...

Цитата:
А надо?
Если это будет, то возможности, конечно, возрастут, но мне придется увеличивать в несколько раз файл с командами SciTE
Дописываю потихоньку... IDM_ - числовое значение - шорткат - название в меню. Надо еще команды окна редактирования добивать - а они то не на IDM_ вешаются...

Цитата:
ты хочешь стандартные команды, вызываемые из меню, заменить на свои. А зачем этом может быть (действительно) нужно?

А зачем дублировать команды? У меня в меню "Правка" уже есть "Перевести в верхний/нижний регистр". Зачем мне видеть эту же команду в "Tools"? (а у меня там - улучшенный вариант, понимающий кирилицу).
Поэтому идеальный случай, чтобы при вызове соответствующей команды из меню "Правка" просто молча выполнялась не встроенная IDM_UPRCASE или IDM_LWRCASE а мой скрипт.
А вот скрыть из меню Tools какую то уникальную команду ни в каком другом меню не видимую... Не понимаю кому это может понадобится

Цитата:
В общем, с таким размахом надо в MultiEdit или Emacs переползать

Не... SciTE - гибче имхо...
Вот тут мне сегодня Shura здорово помог. Так что и пункт про утилу "позволяющую не только подавать команды в активное окно SciTE но и получать с него необходимые данные" можно будет скоро убрать
Таких плагинов с ее помощью понаделаем!!!...

Добавлено:
Moon_aka_Sun
Сейчас пришла мысль. Можно же сделать событие onMenuSelect(int itemID)!
Тогда подключать свои обработчики будет совсем просто
А, кстати, че такое OnExecute(const char *s); ???

Автор: Moon_aka_Sun, Отправлено:16:00 03-09-2006

Цитата:
Не... SciTE - гибче имхо...

О, нет. Это совершенно не так! Как сейчас говрят, даже рядом не стоял.

Автор: mozers, Отправлено:16:54 03-09-2006
Ладно, не будем спорить о том какой из редакторов лучше
Просто я "кинул идею". Если кому то она показалась интересной то он ее реализует. Нет - будем мучиться дальше
Вот, сейчас, причесывая список команд обнаружил ужасную несправедливость
(почему это раньше никогда в голову не приходило?):
На любой пункт меню можно с легкостью повесить свой шорткат (user.shortcuts=...)
Однако есть солидный список шорткатов редактора, охватывающие далеко не все доступные команды, которые и переназназначить то нельзя и дополнить довольно проблематично...
Ведь несправедливо же!
Ты сам сказал, что судя по коду, в user.shortcuts=... можно использовать не только IDM_ но и SCI_ команды. И это - логично и правильно. Так почему ни одна из SCI_ команд из user.shortcuts=... не работает???
Может Нейл просто лопухнулся маленько, а никто и не заметил?
Автор: Moon_aka_Sun, Отправлено:22:19 03-09-2006
mozers

Цитата:
На любой пункт меню можно с легкостью повесить свой шорткат (user.shortcuts=...)

По-моему, именно для этого user.shortcuts и делался. Кроме того, для посылки SCI_ команд Синтилле. Если оно теперь не работает, значит, где-то что-то сломалось. В коде проверка и ветвление есть (и память моя, значит, ещё помнит ).

А для простой коррекции меню и шорткатов на нём достаточно любого редактора ресурсов
Автор: gansA, Отправлено:12:42 05-09-2006
Только сейчас заметил, что Scite стал хранить SciTE.recent и SciTE.ses в директории пользователя, ох как мне это не нравится , после использования на машине остается следы, в случае работы с флешки.

Пришлось опять изобретать константу.
Автор: mozers, Отправлено:15:38 05-09-2006
gansA
Угу. Сделать это новшество опциональным - верное решение. Поделись кодом?

Автор: g0re, Отправлено:22:57 05-09-2006
помогите ламеру
ни как не получается прикрутить перловую подсветку для файлов HTA
для скриптов в тегах

Код:

<script language="PerlScript">
...
</script>


в файле html.properties прописал
keywords7.$(file.patterns.html)=$(keywordclass.perl)

в perl.properties

Код:

perl_keywords=\
NULL __FILE__ __LINE__ __PACKAGE__ __DATA__ __END__ AUTOLOAD \
BEGIN CORE DESTROY END EQ GE GT INIT LE LT NE CHECK abs accept \
........

keywords.$(file.patterns.perl)=$(perl_keywords)

keywordclass.perl=$(perl_keywords)


ни чего не работает...
но если в html.properties
удалить все keywords*.$(file.patterns.html)=*
и оставить
keywords2.$(file.patterns.html)=$(keywordclass.perl)

то работает...

не понимаю ни чего.

как правильно прикрутить все это дело?
Автор: mozers, Отправлено:09:12 06-09-2006
g0re
Во-первых: не надо себя принижать
Во-вторых: Можно, конечно, помучиться и как то заставить лексер html посвечивать отдельные перловые слова.
Можно... Но зачем??? Ради того, чтобы одновременно видеть подсвеченным и html и perl код? Все равно или тот или другой не будут подсвечены путью.
Да и всякие фичи обычно привязаны к конкретному лексеру.
SciTE в любой момент времени работает только с одним лексером.
Т.е. что я предлагаю:
Не мучайся, а просто когда редактируешь перл код в своем файле, переключи лексер на Perl, а когда надумаешь тут же редактировать html - нажми F12 (если шорткат сам не переназначил) и все будет в шоколаде


Добавлено:
Не помню пробегала тут или нет ссылочка на еще одну сборку:
http://www.fw-web.de/download/scite-ide.zip [4089KB]
Немецкий товарищ Frank Wunderlich не равнодушен к Delphi (много настроек для этого языка).
В дистрибутив включены несколько его и не его утилит и даже HEX-редактор.
Скрипты кой какие имеются, api-файлы...
В общем, можно наковырять кой чего и для себя

ALL
Как заставить SciTE редактировать read-only файлы?
(точнее - сохранять в них отредактированный текст)
Автор: g0re, Отправлено:13:14 06-09-2006
mozers
а как же подсветка jscript, vbscript, php, phyton и т.п. в html?
или лексер под это заточен?

PS: если переключаться на подсветку perl синтаксиса, то все остальное становится ужасно страшных цветов и жутко напрягает
неужели все таки ни как нельзя настросить?



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 / 194 / 195 / 196 / 197 / 198 / 199 / 200 / 201 / 202 / 203 / 204 / 205 / 206 / 207 / 208 / 209 / 210 / 211 / 212 / 213 /
SciTE © 2004 - 2011