Ru-Board.club
← Вернуться в раздел «Программы»

» SciTE - Open Source Text Editor for Windows & Linux

Автор: ALeXkRU
Дата сообщения: 21.08.2006 14:32
mirk
что-то с сылочкой...

Цитата:
Извините, новость не найдена
Автор: dB6
Дата сообщения: 21.08.2006 15:28
ALeXkRU

Цитата:
что-то с сылочкой...

И точно...

Должна быть http://scite.ruteam.ru/novosti-saita/yaca171offtop
Автор: ALeXkRU
Дата сообщения: 21.08.2006 17:30
собственнол, релиз 1.71 от 21 августа 2006.


Цитата:
- On GTK+ drag and drop defaults to move rather than copy.
- Double click notification includes line and position.
- VB lexer bugs fixed for preprocessor directive below a comment or some other states and to use string not closed style back to the starting quote when there are internal doubled quotes.
- C++ lexer allows identifiers to contain '$' and non-ASCII characters such as UTF-8. The '$' character can be disallowed with lexer.cpp.allow.dollars=0.
- Perl lexer allows UTF-8 identifiers and has some other small improvements.
- SciTE's $(CurrentWord) uses word.characters.<filepattern> to define the word rather than a hardcoded list of word characters.
- SciTE Export as HTML adds encoding information for UTF-8 file and fixes DOCTYPE.
- SciTE session and .recent files default to the user properties directory rather than global properties directory.
- Left and right scroll events handled correctly on GTK+ and horizontal scroll bar has more sensible distances for page and arrow clicks.
- SciTE on GTK+ tab bar fixed to work on recent versions of GTK+.
- On GTK+, if the approximate character set conversion is unavailable, a second attempt is made without approximations. This may allow keyboard input and paste to work on older systems.
- SciTE on GTK+ can redefine the Insert key.
- SciTE scripting interface bug fixed where some string properties could not be changed

По традиции - переложение на русский:

Цитата:
Релиз 21 августа 2006 г.

- В GTK+ в режиме перетаскивания (drag and drop) по-умолчанию используется перемещение вместо копирования.

- Уведомление по двойному клику включает теперь номер строки и позицию.

- Исправлена ошибка лексера VB: при размещении директив препроцессора после комментариев и в некоторых других случаях, а также при использовании строк начинающихся с кавычки и не закрытых, содержащих внутри двойные кавычки.

- Лексер C++ разрешал идентификаторам содержать символ '$' и другие не ASCII символы, например UTF-8. Символ '$' может быть запрещен с помощью параметра: lexer.cpp.allow.dollars=0.

- Лексер Perl допускал идентификаторы в кодировке UTF-8, также внесены незначительные усовершенствования.

- Переменная $(CurrentWord) в SciTE использует параметр word.characters.<filepattern> для определения слов, а не жестко заданный список текстовых символов.

- При экспорте из SciTE в HTML добавлено информация для кодирование в UTF-8 файл и установлен DOCTYPE.

- Сессии SciTE и файлы .recent по-умолчанию теперь сохраняются в каталоге настроек пользователя, а не в глобальных.

- События прокрутка влево и вправо обрабатывается корректно в GTK+, горизонтальная полоса прокрутки более чувствительна к перемещению при щелчках на стрелках и страницах.

- В GTK+ панель вкладок SciTE теперь фиксирована для работы в современных версиях GTK+.

- В GTK+, если подходящий набор символов преобразования не доступен, следующий попытка будет сделана без подбора символов. Это может позволить ввод с клавиатуры и вставку при работе на старых системах.

- Для SciTE в GTK+ можно переопределить клавишу Insert.

- Исправлена ошибка текстового интерфейса SciTE, при которой некоторые свойства строк не могли изменяться.
Автор: unreal666
Дата сообщения: 21.08.2006 17:34
Еще бы он лексер для nnCon'а нормальным бы сделал.
Автор: UkRZilla
Дата сообщения: 22.08.2006 21:33
Я конечно понимаб что это не программерский форум, но все же.

Собственно говоря тысячу раз использовал Scintilla и Win32 API, а тут понадобилось влепить Scintilla на форму в VCL, естественно динамически, т.е в обработчике создания формы пишу:

char szScintillaClass[] = "Scintilla";

if (LoadLibrary("scilexer.dll") == NULL)
{
lstrcpy(szScintillaClass, "RichEdit");
LoadLibrary("riched32.dll");
}

hRichEdit = CreateWindowEx
(
WS_EX_CLIENTEDGE,
szScintillaClass,
NULL,
WS_VISIBLE | WS_CHILD | WS_VSCROLL | WS_HSCROLL |
ES_AUTOVSCROLL | ES_AUTOHSCROLL,
0,
0,
300,
300,
Form1->Handle,
NULL,
0,
NULL
);

Все прекрасно создается, но если на форме есть TreeView, то до Scintilla не доходят клавиатурные сообщения стрелок, спецклавиш, только символы. Что делать?
Автор: Moon_aka_Sun
Дата сообщения: 25.08.2006 16:39

Цитата:
mozers написал: SciTE_170_9Ru_beta

А исходники нельзя посмотреть? Хочется для себя сделать сборную солянку (с useMonoFont(true) ).
Автор: unreal666
Дата сообщения: 25.08.2006 17:48
Moon_aka_Sun
В шапке есть ссылка

Цитата:
SciTE 1.70 Ru-Board Edition [10.07.2006] (ядро .08Ru)

Переходишь по этой ссылке и скачиваешь так исходники (точнее - там только файлы, которые отличаются от оригинальных.)
Автор: Moon_aka_Sun
Дата сообщения: 26.08.2006 00:24

Цитата:
Переходишь по этой ссылке и скачиваешь так исходники (точнее - там только файлы, которые отличаются от оригинальных.)

Циферки, циферки разные!
8 и 9 - не одна и та же цифра!
Автор: mozers
Дата сообщения: 28.08.2006 08:02
Все, что напридумывали наши замечательные программисты, перенес в 1.71
Исходники (только отличающиеся от оригинальной версии файлы) [164 Кбайт]
Откомпилированное ЯДРО (SciTE.exe + SciLexer.dll) [405 Кбайт]
Список изменений: [more]
Код: SciTE v.1.71 .10Ru

Исправлена ошибка с выводом текста по command.input и $(CurrentSelection) исключительно в кодировке UTF-8 (Автор: mimir)
Это не позволяло передать русский текст во внешний скрипт или программу.

Исправлена ошибка зависания SciTE при использовании command.input. (Автор: mimir)
Если пользователь забыл выделить текст перед запуском скрипта, то SciTE зависал.

Функция автодополнения берет шаблоны как из редактируемого текста, так и из соответствующего .api файла (Автор: mimir)

Возможно использование директивы import в файлах *.abbrev (Автор: mimir)

Лексер для LUA воспринимает разделитель ":" так же как и "." (Автор: mimir)

В списки сокращений (abbrev) можно добавлять пользовательские переменные. (Автор: mimir)
- %SEL% - выделенный текст
- %CLP% - текст из буфера обмена
- %GUID% - уникальный GUID нового объекта (идея принадлежит codewarlock1101)
Так, например, забив в файл abbrev такую строку:
<a =<a href="|" alt="" target=_blank>%SEL%</a>
пишем '<a Привет' и выделяем 'Привет' (Ctrl+Shift+Left). Затем нажимаем Сtrl+B - получаем готовую конструкцию.
Единственная тонкость заключается в том, что курсор при этом должен распологаться на конце сокращения (после '<a ' пробелы тоже учитываються).
Я пишу так: все сокращения у меня заканчиваються пробелом; ввожу сокращение, через пробел параметр, и нажимаю Ctrl+Shift+left;Сtrl+B.

Добавлено событие OnDoubleClickEx(key), где key это строка вида "Ctrl;Alt;Shift;" (Автор: mimir)
т.е. теперь можно написать например так:
local ctrl = string.find(key,'Ctrl', 1)
if (ctrl~=nil) then ....

В CommentKeyWord* можно использовать заглавные буквы и двоеточие. (Автор: mimir)
*В Scite есть возможность создания комментариев для некоторых лексеров (например сpp, sql).
Они начинаються с //! /*! /** .
Их отличительная особенность заключается в том, что в них можно подсвечивать отдельные ключевые слова, начинающиеся с "@". Например @todo. В стандартной версии можно использовать только строчные буквы.

Добавлено 3 новых класса ключевых слов для LexCpp (т.е. теперь можно задавать до 4х дополнительных наборов слов с разной подсветкой) (Автор: mimir)

Добавлена возможность настраивать ширину и цвет курсора индивидуально для каждого лексера, например, так: (Автор: mimir)
caret.fore.$(file.patterns.cpp)=#FF0000
caret.width.$(file.patterns.cpp)=3
А то получаеться не удобно если у тебя для разных языков и имеется различные цветовые решения и разным светлым и темным фоном, а курсор - лишь одного цвета).

В LexSQL добавлено слово "case" для начала фолдинга (Автор: mimir)

Если используеться только один файл сокращений, то без "abbrev.always.update=1" обновляться он будет только после перезапуска Scite (Автор: mimir)

Параметр output.code.page.oem2ansi=1 включает перекодировку текста, выводимого в окно консоли, из OEM в ANSI (Автор: gansA)
Это позволяет редактировать скрипт в кодировке win1251 и видеть его вывод в консоли в кодировке dos866 не прибегая к переключению.
Автор: ALeXkRU
Дата сообщения: 28.08.2006 23:00
mozers
а что так в
Цитата:
Список изменений
значится SciTE_170_10Ru_src? надеюсь это опечатка? (она же и в Version_Changes.txt)
..
в about'e - 1.71
Автор: unreal666
Дата сообщения: 28.08.2006 23:12
mozers

Цитата:
Лучше четко сформулировать задачу, тогда есть шанс решить ее в этом топике самостоятельно.

А я ее не могу сформулировать. Слишком много чего при составлении лексера для nnCron'а надо учитывать. Вот разберусь со своими проблемами (структура логич. раздела накрылась), тогда возьмусь за исходники лексера nnCron'а.
Автор: mozers
Дата сообщения: 29.08.2006 09:13
ALeXkRU
Ага, апшибся
Только что перезалил. Поправил еще одну неприятную мелочь:
Цитата:
Выделенный текст вставлялся в диалог поиска в файлах исключительно в кодировке UTF-8, поэтому русский текст превращался в "крякозяблы" (\scite\src\SciTEBase.cxx)

Желающие могут исправить самостоятельно
Код: findWhat = sel;
Автор: Moon_aka_Sun
Дата сообщения: 29.08.2006 12:48

Цитата:
mozers написал: <...> недостаточно ???

Это какой-то идиотский способ. Моно - это одно, а всё богатое разнообразие остальных шрифтов в не-моно режиме - это другое. Я не нашёл ничего убедительного в запрете автора сделать use.monofont режимом по умолчанию. Он ссылается на какие-то жалобы каких-то пользователей. Ну что ж, на то и пользователи, чтоб жаловаться. У меня другие жалобы, но они с моношрифтами не связаны. Так что пусть не морочит голову. Редактор текстов и исходников должен прежде всего работать в моношрифтовом режиме. Так он у меня и работает.

Спасибо за исходники!

Разбираюсь тут пока, что нужно и что не нужно от Mitchell'a Foral'a. Ох он и накуролесил!


Добавлено:


Цитата:
хороший фиксированный

Я Люсидой Консольной пользуюсь. Есть ещё интересный DP Custom Mono - самый крутой А вообще - http://www.lowing.org/fonts/
Автор: mozers
Дата сообщения: 29.08.2006 16:22
Moon_aka_Sun
А почему бы не иммитировать (с помощью LUA) нажатие на Ctrl+F11 при открытии файла ? Простенько и результат - тот что ты хочешь...
Автор: Moon_aka_Sun
Дата сообщения: 29.08.2006 22:18
Можно, наверное. Да ещё и для каждого буфера это делать. Нет, мне проще флаг раз и навсегда поменять.
Автор: mozers
Дата сообщения: 30.08.2006 20:57

Цитата:
флаг раз и навсегда поменять
Лучше бы ключик сделать типа font.monospace.default=1
Если получится - скажи - охота глянуть...
А со скриптом промашка вышла
Не знаю я как из LUA выполнить команду меню IDM_MONOFONT.
Да и вообще как выполнить любую команду меню? (например для IDM_CLOSE или IDM_SAVE процедуры, аналогичные по действию, отсутствуют вообще
Как быть если НАДО? Подскажите!

Добавлено:
Придумал как обойтись без IDM_MONOFONT
Получилось даже лучше чем с этой командой:

Код: -- Смена текущих установок шрифта
-- C блеском заменяет Ctrl+F11.
-- Действует одновременно на все отрытые буфера
-- Можно задать любые комбинации шрифтов
-- mozers™ icq#256106175 (выполняя пожелание Moon_aka_Sun)

-- Для подключения добавьте в свой файл .properties следующие строки:
-- command.name.48.*=FontChanger
-- command.48.*=dofile $(SciteDefaultHome)\tools\FontChanger.lua
-- command.mode.48.*=subsystem:lua,savebefore:no
-- command.shortcut.48.*=Ctrl+F11
-- так же необходимо задать все необходимые шрифты (font.0.* и font.1.*)
------------------------------------------------
if props["font.set"] ~= "1" then
props["font.base"] = props["font.1.base"]
props["font.small"] = props["font.1.small"]
props["font.comment"] = props["font.1.comment"]
props["font.set"] = "1"
else
props["font.base"] = props["font.0.base"]
props["font.small"] = props["font.0.small"]
props["font.comment"] = props["font.0.comment"]
props["font.set"] = "0"
end
Автор: unreal666
Дата сообщения: 31.08.2006 01:06
Есть в SciTE переменная, содержащая имя активного в данный момент лексера?
Хочу добавить отображение активного лексера в строку состояния.
Автор: ALeXkRU
Дата сообщения: 31.08.2006 01:17
mozers

Цитата:
Смена текущих установок шрифта
...
Мои наборы шрифтов

оригинально смотрится
Автор: mozers
Дата сообщения: 31.08.2006 07:53
unreal666
Код: function GetLexerName()
-- Функция возвращает имя текщего лексера в текстовом виде
local lexers = {
[0] = "",
[1] = "null",
[2] = "python",
[3] = "cpp",
[4] = "hypertext",
[5] = "xml",
[6] = "perl",
[7] = "sql",
[8] = "vb",
[9] = "props",
[10] = "errorlist",
[11] = "makefile",
[12] = "batch",
[14] = "latex",
[15] = "lua",
[16] = "diff",
[17] = "conf",
[18] = "pascal",
[19] = "ave",
[20] = "ada",
[21] = "lisp",
[22] = "ruby",
[23] = "eiffel",
[24] = "eiffelkw",
[25] = "tcl",
[26] = "nncrontab",
[27] = "bullant",
[28] = "vbscript",
[29] = "asp",
[30] = "php",
[31] = "baan",
[32] = "matlab",
[33] = "scriptol",
[34] = "asm",
[35] = "cppnocase",
[36] = "fortran",
[37] = "f77",
[38] = "css",
[39] = "pov",
[40] = "lout",
[41] = "escript",
[42] = "ps",
[43] = "nsis",
[44] = "mmixal",
[45] = "clarion",
[46] = "clarionnocase",
[47] = "lot",
[48] = "yaml",
[49] = "tex",
[50] = "metapost",
[51] = "powerbasic",
[52] = "forth",
[54] = "octave",
[55] = "mssql",
[56] = "verilog",
[57] = "kix",
[58] = "gui4cli",
[59] = "specman",
[60] = "au3",
[61] = "apdl",
[62] = "bash",
[63] = "asn1",
[64] = "vhdl",
[65] = "caml",
[66] = "blitzbasic",
[67] = "purebasic",
[68] = "haskell",
[69] = "phpscript",
[70] = "tads3",
[71] = "rebol",
[72] = "smalltalk",
[73] = "flagship",
[74] = "csound",
[75] = "freebasic",
}
return lexers[editor.Lexer]
end
Автор: Ang
Дата сообщения: 31.08.2006 08:05
mozers

Цитата:
И шрифт путный так и не нашел, хотя перепробовал - кучу

А Andale Mono не пробовал?
Автор: gansA
Дата сообщения: 31.08.2006 09:43
mozers

Цитата:
P.S.2 Вопрос "как выполнить любую команду меню?" все равно не снимается!

В свое время тоже озадачивался этим вопросом и ничего кроме http://lua-users.org/wiki/SciteOther не нашел...
Автор: WATERPROOF
Дата сообщения: 31.08.2006 11:17
для обновления сборки рубоард нужно лишь загрузить экзешник? т.е. в исполняемом файле не ковырялись?

Извините, сморозил глупость
Автор: mozers
Дата сообщения: 31.08.2006 12:23
Ang
Цитата:
А Andale Mono не пробовал?
Кинь - попробую
В инете - или KOI-8 или за 30 баксов

gansA
Огорчительно... Это почти тоже самое что из LUA запускать scitecommand...
Одним словом - через ж.

WATERPROOF
Ага, ковырялись только в ядре Пооэтому копируй его поверх и все.
Все остальное (а остального накопилось предостаточно) все никак не оформлю...
Завал - короче
Автор: Ang
Дата сообщения: 31.08.2006 13:42
mozers

Цитата:
Кинь - попробую

_http://rapidshare.de/files/31416347/andalemo.zip.html
Автор: mozers
Дата сообщения: 31.08.2006 14:20
Ang
Спасибо! Неплохой шрифт Правда я предпочитаю потолще. Эх, если бы Fixedsys масштабировался...
Автор: Ang
Дата сообщения: 31.08.2006 14:30
mozers
Мне ещё понравился шрифт Raize от Rize Software (_http://www.raize.com/DevTools/Tools/RzFont.asp), но он только с латинским диапазоном и растровый...
Автор: mozers
Дата сообщения: 31.08.2006 14:59
Неплохо Но давай, все таки извинимся перед модератором! Есть же соответствующая тема
Автор: gansA
Дата сообщения: 31.08.2006 16:25
Понравилась мне тема "хайку" , сами знаете имени кого

Цитата:

command.name.7.*=Trim all spaces
command.7.*=dostring local text=editor:GetSelText(); local bF=0; if string.len(text)==0 then text=editor:GetText(); bF=1; end; text=string.gsub(text,' +',' ');text=string.gsub(text,'    +',' '); if bF==0 then editor:ReplaceSel(text); else editor:SetText(text); end;
command.mode.7.*=subsystem:lua,savebefore:no
command.shortcut.7.*=Shift+Space


Следует отметить, что первый text=string.gsub(text,' +',' ') содержит символ пробела перед плюсом, второй string.gsub(text,' +',' ') содержит симол табуляции, как их скрестить в одной команде хз .

В принципе все это дело можно заменить одной командой text=string.gsub(text,'%s+',' ') и в итоге получается одна длинная строка, отличие от стандартной команды [Правка\Абзац\Объеденить] удаляются все лишние пробельные символы.

Автор: mozers
Дата сообщения: 31.08.2006 21:04
gansA
Цитата:
как их скрестить в одной команде хз

Поместить пробел и табуляцию в квадратных скобках
Только мне не понравилось что скрипт грохает отступы в начале строк (код завсегда этими отступами выделяется) и оставляет пробелы в конце строк (когда код из форума копируешь они частенько остаются). Так что подработать бы надо...
Кстати, вопрос: А нафига ты в строке dostring точки с запятой ставишь? Для наглядности? Или есть еще какой то скрытый смысл?

К слову: Присобачил на F7 команду для тестирования скриптов во встроенном интерпретаторе (внешнего Lua.exe у меня сроду не стояло):
Код: # Команда меню - Собрать
command.build.*.lua=dofile $(FilePath)
command.build.subsystem.*.lua=3
Автор: unreal666
Дата сообщения: 31.08.2006 21:35
mozers

Цитата:
function GetLexerName()
-- Функция возвращает имя текщего лексера в текстовом виде
...

А где в скайте содержатся нумерация этих лексеров? Или это в исходники встроенно?

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869

Предыдущая тема: LeechGet


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.