Ru-Board.club
← Вернуться в раздел «Тестирование»

» SciTE Ru-Board Edition

Автор: UR4LTZ
Дата сообщения: 04.09.2010 19:51
iiiiio

Цитата:
Посмотрел коррективы. Там везде описание к ним такое, что создается впечатление, что они уже все сделаны. Получается с выходом новой версии scite вы просто меняете исходный код в определенных местах своими исправлениями? И так каждый раз с выходом новых версий от Нейла? Или я что-то не так понял...

Все правильно ты понял. Проблема состоит в том что в новых версиях 2.2x отсутствуют те файлы и те места кода в которых эти исправления были. Начина с версии 2.10 как в ядро Scintilla так и сам SciTE были внесены огромные изменения (проще было бы сказать что он был полностью переписан).
Автор: iiiiio
Дата сообщения: 04.09.2010 20:16
Теперь понятно, почему у вас такие задержки.
Может быть стоит часть ваших корректировок оформить как feature request для Scintilla / Scite?
Автор: UR4LTZ
Дата сообщения: 04.09.2010 20:24

Цитата:
Может быть стоит часть ваших корректировок оформить как feature request для Scintilla / Scite?

Часть наших доработок иногда Neil вносит в официальную версию, но чтобы он это сделал нужно очень постараться (проще говоря достать его ).
Автор: BioInfo
Дата сообщения: 06.09.2010 13:41
Высокоуважаемые! Надо с чего то начинать.
Я обновил версию Scintilla до 2.21. Наши доработки в Scintilla не пострадали.
Кому кажется что это не так, отпишите здесь.
Сам SciTE пока некогда обновлять, но надеюсь хоть половина работы ускорит переход на новую версию
Пишите если что не так.

Добавлено:
Еще, постите нейлу наши доработки лексеров. Я переделал теперь они низа что не цепляются, можно каждый файл отдельно. Типа доработали лексер по lua - вот держи lexlua.cpp и т.п.
Там же мелось, ему только взять да вставить.
Автор: mozers
Дата сообщения: 06.09.2010 19:52
BioInfo
Вот обрадовал так обрадовал!
Лед тронулся!!!
Сижу, изучаю получившийся код... Быстрый ответ не получится - туго я в С++ понимаю...
Пока, увы, не компилится (использую дистрибутив ur4ltz с нашего сайта)
Код: SciTEWinDlg.cxx: In member function 'virtual bool SciTEWin::OpenDialog(FilePath, const GUI::gui_char*)':
SciTEWinDlg.cxx:241: warning: missing initializer for member 'tagOFNW::pvReserved'
SciTEWinDlg.cxx:241: warning: missing initializer for member 'tagOFNW::dwReserved'
SciTEWinDlg.cxx:241: warning: missing initializer for member 'tagOFNW::FlagsEx'
SciTEWinDlg.cxx: In member function 'FilePath SciTEWin::ChooseSaveName(FilePath, const char*, const GUI::gui_char*, const char*)':
SciTEWinDlg.cxx:294: warning: missing initializer for member 'tagOFNW::pvReserved'
SciTEWinDlg.cxx:294: warning: missing initializer for member 'tagOFNW::dwReserved'
SciTEWinDlg.cxx:294: warning: missing initializer for member 'tagOFNW::FlagsEx'
SciTEWinDlg.cxx: In member function 'virtual void SciTEWin::LoadSessionDialog()':
SciTEWinDlg.cxx:376: warning: missing initializer for member 'tagOFNW::pvReserved'
SciTEWinDlg.cxx:376: warning: missing initializer for member 'tagOFNW::dwReserved'
SciTEWinDlg.cxx:376: warning: missing initializer for member 'tagOFNW::FlagsEx'
SciTEWinDlg.cxx: In member function 'virtual void SciTEWin::SaveSessionDialog()':
SciTEWinDlg.cxx:397: warning: missing initializer for member 'tagOFNW::pvReserved'
SciTEWinDlg.cxx:397: warning: missing initializer for member 'tagOFNW::dwReserved'
SciTEWinDlg.cxx:397: warning: missing initializer for member 'tagOFNW::FlagsEx'

g++ "-Wl,-s" -Xlinker --subsystem -Xlinker windows -o ../bin/SciTE.exe SciTEBase.o FilePath.o SciTEBuffers.o SciTEIO.o Exporters.o PropSetFile.o StringList.o SciTEProps.o SciTEWin.o SciTEWinBar.o SciTEWinDlg.o MultiplexExtension.o StyleWriter.o UniqueInstance.o Utf8_16.o SciTERes.o GUIWin.o IFaceTable.o DirectorExtension.o JobQueue.o WinMutex.o LuaExtension.o SingleThreadExtension.o lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o ltablib.o lstrlib.o loadlib.o loslib.o linit.o -mwindows -lcomctl32 -limm32 -lole32 -luuid -mno-cygwin
mingw32-make: *** No rule to make target `Accessor.h', needed by `Sc1.o'. Stop.
Автор: BioInfo
Дата сообщения: 07.09.2010 10:47
Пофиксил в ревизии 1438 и ворнинги тоже убрал.
Жду вопросов, жалоб и предложений


Цитата:
в ядро Scintilla так и сам SciTE были внесены огромные изменения (проще было бы сказать что он был полностью переписан)

Ну, не всё так сурово ))) По крайней мере Scintilla я портировал. SciTE не смотрел, но winmarge показывает

Еще, я предлагаю не выкидывать наши корректировки библиотеки lua. Доводы Нейла понятны, но наши доработки (а точнее моя ) делают библиотеку более универсальной без всяких уловок. Не нужен никакой iconv и прочая дополнительная хрень - всё работает.
Испровлений не много, так что если Нейл решит обновить lua (или выйдет новая версия), то перенести наши изменения не будет большой проблемой
Резюме - долой iconv, да здравствуют доработки библиотеки lua!

Добавлено:
Хм... посмотрел я доработки Нейла по lua, в общем его решение тоже красивое
Только в одном месте он не поправил loadlib. Я так полагаю он решил не парится - мол если библиотека лежит там же где запускается SciTE всё будет срабатывать. Как буду мержить, в этом месте нашу доработку оставлю. Т.е. наши библиотеки пусть как загружались, так и загружаются.
Автор: mozers
Дата сообщения: 07.09.2010 11:32
BioInfo
Компилится без единого ворнинга! Просто класс!
Наконец то заработала подсветка в ini, properties, в результатах поиска, а то я уже заклебался. Ура!!!

Твое исправление библиотеки lua можно оформить как отдельный коммит. Потом опять заменить файлы на прежние.
При случае всегда можно будет найти исправления по номеру коммита.

Что же использовать iconv или править lua?

1. Нейл править lua не будет никогда. Поэтому нам надо будет каждый раз убирать его доработки io.open и io.popen и вносить твои исправления в lua.

2. iconv - очень неудобный костыль. Думаю проблему могла бы решить пара функций editor:EncodedFromUTF8() и editor:DecodedToUTF8(). Правка lua всех проблем не решит, все равно осталась куча мест где необходима перекодировка, а эти функции закроют любые проблемы и lua править будет без надобности

Добавлено:
Попробовал откомпилить в Microsoft Visual Studio .NET 2003 (VC7.1)
Началось все красиво, а на этапе линковки выдало:
Цитата:
Creating library ..\bin\SciLexer.lib and object ..\bin\SciLexer.exp
Catalogue.obj : error LNK2001: unresolved external symbol "class LexerModule lmEuphoria" (?lmEuphoria@@3VLexerModule@@A)
Catalogue.obj : error LNK2001: unresolved external symbol "class LexerModule lmABAP" (?lmABAP@@3VLexerModule@@A)
Catalogue.obj : error LNK2001: unresolved external symbol "class LexerModule lmAHK1" (?lmAHK1@@3VLexerModule@@A)
..\bin\SciLexer.dll : fatal error LNK1120: 3 unresolved externals
NMAKE : fatal error U1077: 'link' : return code '0x460'
Stop.
Т.е. что то ему именно наши лексеры не понравились
Автор: UR4LTZ
Дата сообщения: 07.09.2010 16:02
mozers

Цитата:
Думаю проблему могла бы решить пара функций editor:EncodedFromUTF8() и editor:DecodedToUTF8()

Так это у нас уже давно вроде есть.

shell.cpp [строка 950] :
Код: static int to_utf8( lua_State* L )
{
return
internalConv( L, true );
}

static int
from_utf8( lua_State* L )
{
return
internalConv( L, false );
}
Автор: mozers
Дата сообщения: 07.09.2010 16:57
UR4LTZ
И действительно table.foreach(shell, print) выдает эту сладкую парочку
Почему в описалово они не попали - совершенно неясно
Только, конечно, попробовать их надо в работе и то, что они во внешней библитеке находятся, а не в scite тоже не есть гуд, поскольку функция конвертирования сейчас нужна еще до загрузки библиотек (щас либы, если путь к ним содержит русские символы, не грузятся - Нейл считает это несущественной мелочью).
Автор: UR4LTZ
Дата сообщения: 07.09.2010 17:14

Цитата:
Почему в описалово они не попали - совершенно неясно

Ну видно также как и "shell.getclipboardtext()" туда не попала.
Автор: BioInfo
Дата сообщения: 07.09.2010 18:02

Цитата:
Попробовал откомпилить в Microsoft Visual Studio .NET 2003 (VC7.1)
Началось все красиво, а на этапе линковки выдало:

Поправил, ревизия 1439


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

В нашей текущей версии должно всё работать, проверь пожалуйста. Если это не так, то напиши как повторить
Остальные запросы должно покрыть shell.dll
Автор: iiiiio
Дата сообщения: 07.09.2010 18:17
Ну вот! Процесс пошел ))
Автор: iiiiio
Дата сообщения: 24.10.2010 04:08
Ребят, как у вас дела?
Автор: mozers
Дата сообщения: 25.10.2010 11:46
iiiiio
Да ничего. Нормальная рабочая обстановка. Скоро Нейл 2.22 выложит, так у нас scite-ru 2.22 практически готов
Тут редко писать стали, поскольку все оперативные вопросы решаем в чате.
Автор: iiiiio
Дата сообщения: 25.10.2010 21:52
Круто) Вы напишите тогда тут, как доделаете, ок? Еще бы хотел узнать: по сравнению с последней стабильной версией как, на ваш взгляд, смотрится грядущая, в плане скорости / улучшений?
Автор: mozers
Дата сообщения: 25.10.2010 23:31
iiiiio
Цитата:
Вы напишите тогда тут, как доделаете, ок?
Вся инфа будет в основном топике.

Цитата:
по сравнению с последней стабильной версией как, на ваш взгляд, смотрится грядущая, в плане скорости / улучшений?
Последний SciTE-Ru 2.21.85 сделан не по релизу, а по рабочему коду из Hg, поэтому 90% новшеств будущего официального релиза 2.22 в него уже вошли. Только найденные ошибки (а они всегда есть) исправлены.
Автор: jite
Дата сообщения: 07.11.2010 01:52
Настраивая SciTE под работу с VBScript в файле vb.properties обнаружил, что ключевые слова и названия функций перемешаны, список функций явно неполон, а имена констант отсутствуют как класс. Не поленился, рассортировал, добавил, руководствуясь официальной документацией от MS (Microsoft Windows Script Technologies. JScript & VBScript 5.6, 2006, chm).


Имеется (SciTE_222_87Ru_011110)

Код:
# Keywords, operators, statements, data types and some words in .frm files
keywordclass.vb6=\
addressof alias and as attribute base begin binary boolean byref byte byval call case chr clng createobject cstr compare \
const currency date decimal declare defbool defbyte defint deflng defcur defsng defdbl defdec \
defdate defstr defobj defvar dim do double each else elseif empty end enum eqv erase error \
err err.clear err.description err.number \
event exit explicit false for friend function get gosub goto if instr instrrev imp implements in input integer \
is len let lib like load lock long loop lset me mid midb msgbox mod new next not nothing null object \
on option optional or paramarray preserve print private property public raiseevent randomize \
redim regexp rem resume return rset seek select set single static step stop string sub then time to \
trim true type typeof unload until variant wend while with withevents xor

# Functions
functionclass.vb6=\
array asc ascb eval instr replace len lenb mid midb lcase ucase ubound lbound cstr clng cint trim left split int \
isnull isempty isarray isdate isnumeric isobject vartype typename \
formatnumber formatcurrency formatpercent \
formatdatetime now date year month day hour minute second weekday monthname
Автор: mozers
Дата сообщения: 07.11.2010 11:05
jite
Спасибо за работу! В целом - принимается. В деталях - надо смотреть. На вскидку (первое что бросилось в глаза):
- классы вообще то - для VB6, а не для VSCRIPT так что плясать нужно от документации на VB6.
- методы в общем то мало чем отличаются от функций. Стоит ли их задавать отдельно?
- "debug.write debug.writeline". Разве эти методы есть только у объекта debug ?

И вообще, vb.properties давно бы надо переработать, четко разграничив параметры для разных диалектов VB (Visual Basic, VBScript, VBA, и т.д.)
Автор: jite
Дата сообщения: 08.11.2010 01:18
1) Стоит ли делать детальную поддержку собственно VB6, IDE которого уже не поддерживается. Тем более что vbs младше и ключевые только добавились, так что в первом приближении все подойдет и для vb6. Даже не знаю, где оф. доки по нему найти (MS у себя все постирали).
А вот улучшить раздел по VB.NET вероятно стоит. Именно его MS сейчас называет Visual Basic.
2)
Цитата:
"debug.write debug.writeline". Разве эти методы есть только у объекта debug

В vbs именно так. Можно, конечно, самостоятельно их вводить, но это уже отсебятина будет.
3) Методы выделил по 2 причинам: а) они выделены в отдельную категорию самими разработчиками и пишутся как obj.SomeMethod() в отличие от функций SomeFunc() б) ну и полезно выделить данной категорией популярные специфические WScript.Echo и WScript.Quit
4) Вскоре придется ковыряться и в vba. Если успею, посмотрю что можно сделать. Вдруг там все просто и недолго?..
Автор: mozers
Дата сообщения: 08.11.2010 21:36
jite
Цитата:
Стоит ли делать детальную поддержку собственно VB6
Думаю что детализировать должны еще не вымершие фанаты. Но ущемлять - тоже не стоит.

Цитата:
улучшить раздел по VB.NET вероятно стоит
Тут можно надолго зависнуть. Но если у тебя есть желание...

Цитата:

Цитата: "debug.write debug.writeline". Разве эти методы есть только у объекта debug?
В vbs именно так.
Автор: jite
Дата сообщения: 09.11.2010 18:46

Цитата:
Ой, ли? А TextStream, StdIn, StdOut разве не имеют этих методов?

Ой, вру. Имеют.
Вот только они не описаны в списке VBScript\Reference\Methods руководства, они описаны "глубже", в свойствах объекта FileSystemObject и потоков. Вот версия от 2001 упомянутого руководства. Пользуюсь версией от 2006, но на нее ссылку не помню (весит 3MB, могу выслать).
А так как с vbs опыта работы не имею (пока), я их легко упустил. (upd вообще-то мог бы и не упускать, если бы вспомнил работу с файлами/потоками в jscript, мда, вот что значит "написал обертку и забыл" )
Не думаю, что это так уж страшно, по прочтении, куда ж они денутся, все должные методы будут добавлены.

Так что это я ничего не выдумываю, просто не все прочел.

Опыт работы имею в jscript (не javascript), но его я правлю в Eclipse как javascript и вряд ли слезу с него, не в обиду SciTE. Но тут вот понадобились vbs, vba, и я занялся изучением языка... и редактора для него.


Цитата:
захотелось проверить все твои исправления более досконально

Думаю, это надо делать в любом случае. Все-таки общественное дело. Я конечно проверял, но... см. выше
С другой стороны я достаточно детально прошелся по спискам functions и constants. Вроде ничего не упустил. Если учесть, что они применяются безотносительно встроенных объектов, то списки видимо полные. Часть из них ранее были в keywords, это уж точно неправильно - перенес.

Детально все ключевые слова не проверял. Там наверняка есть слова, которых нет в vbs, например "lock". Может это из VB6?.. Видимо да, все-таки надо как-то разделять vbs и vb6, чтобы мусора не осталось "я думал это из другого".

По VB.NET конечно можно зависнуть. Но по крайней мере по ключевым словам проблем быть не должно - документация в ассортименте. А по части функций/методов/свойств (их там... ) надо подключать к кого-то имевшего реальный опыт (у меня опыт только C#).

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

1) Если будем:
С глобальными объектами все просто - WScript.Echo везде одно. А с инстансами? Скайт, насколько понимаю, их не сечет и не будет, в отличие от IDE, следящих за типом переменных и подсвечивающих только в верном контексте. Таким образом, будут подсвечены drive, path, name и другие простые слова, где бы они не находились. Это плохо.

2) Если не будем:
От writeline останутся debug.writeline и xxxOut.WriteLine. А от работы файлами/реестром/шеллом/сетью вообще ничего не останется. Это тоже плохо.

Что лучше, пока затрудняюсь ответить, но склоняюсь к 1-му варианту в вариации "без фанатизма", в смысле, писать только самое популярное.

Да, и еще по 1 варианту. Т.к. в WSH встроенные объекты одни и те же, не следует смешивать их методы/свойства с vbs-functions или jsc-methods. Надо их выделить в отдельную категорию и далее объединять ее с языкозависимыми подмножествами. Как сейчас сделано с vba - import из отдельного файла. Кстати, так можно легко реализовать оба варианта, и пусть каждый решает сам, включать или нет. Логично?
Автор: jite
Дата сообщения: 11.11.2010 01:29
Документация по VB6 нашлась в составе MS Office 2003 "C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\1049\VBLR6.CHM"
Автор: frs
Дата сообщения: 11.11.2010 04:44
Решил посмотреть, релизацию lua лексеров в scintillua-ru-r1302
Ставил опыты на vb лексере. Приделал пару костылей.
[more=vb.lua]-- Copyright 2006-2010 Mitchell Foral mitchell<att>caladbolg.net. See LICENSE.
-- VisualBasic LPeg lexer

module(..., package.seeall)
local P, R, S = lpeg.P, lpeg.R, lpeg.S

local ws = token('whitespace', space^1)

-- comments
local comment = token('comment', (P("'") + 'REM ') * nonnewline^0)

-- strings
local string = token('string', delimited_range('"', nil, true, false, '\n'))

-- numbers
local number = token('number', (float + integer) * S('LlUuFf')^-2)

-- keywords
local keyword = token('keyword', word_match(word_list{
-- control
'If', 'Then', 'Else', 'ElseIf', 'EndIf', 'While', 'Wend', 'For', 'To', 'Each',
'In', 'Step', 'Case', 'Select', 'EndSelect', 'Return', 'Continue', 'Do',
'Until', 'Loop', 'Next', 'With', 'Exit',
-- operators
'Mod', 'And', 'Not', 'Or', 'Xor', 'Is',
-- storage types
'Call', 'Class', 'Const', 'Dim', 'Redim', 'Function', 'Sub', 'Property',
'End', 'Set', 'Let', 'Get', 'New', 'Randomize',
-- storage modifiers
'Private', 'Public', 'Default', 'Global',
-- constants
'Empty', 'False', 'Nothing', 'Null', 'True'
},true),false,true))

-- types
local type = token('type', word_match(word_list{
'Boolean', 'Byte', 'Char', 'Date', 'Decimal', 'Double', 'Long', 'Object',
'Short', 'Single', 'String'
},true),false,true))

-- identifier
local identifier = token('identifier', word)

-- operators
local operator = token('operator', S('=><+-*^&:.,_();\\/'))

function LoadTokens()
local vb = vb
add_token(vb, 'whitespace', ws)
add_token(vb, 'keyword', keyword)
add_token(vb, 'type', type)
add_token(vb, 'comment', comment)
add_token(vb, 'identifier', identifier)
add_token(vb, 'string', string)
add_token(vb, 'number', number)
add_token(vb, 'operator', operator)
add_token(vb, 'any_char', any_char)

-- embedding VB in another language
if hypertext then
local html = hypertext
local tag = html.TokenPatterns.tag
local case_insensitive = html.case_insensitive_tags
-- search for something of the form <script language="vbscript">
local script_element = word_match(word_list{'script'}, nil, case_insensitive_tags)
start_token = #(P('<') * script_element *
P(function(input, index)
if input:find('[^>]+language%s*=%s*(["\'])vbscript%1') then return index end
end)) * tag -- color tag normally, and tag passes for start_token
end_token = #('</' * script_element * ws^0 * '>') * tag -- </script>
vb.TokenPatterns.operator = token('operator', S('=>+-*^&:.,_()')) +
'<' * -('/' * script_element)
vb.TokenPatterns.any_char = token('vb_default', any - end_token)
make_embeddable(vb, html, start_token, end_token)
end
end

Fold = require'folder' {
['+'] = {'Function', 'Then', 'Repeat', 'For', 'Sub','Do While','Do Until','Select Case','While','Do'},
['-'] = {'End', 'Until','Next','Loop','Wend'},
['+-'] = {'Else','ElseIf', 'Case'},
types = {'keyword', ['operator']={'{','}'}, ['comment']={'\''}},
true
}[/more] - приделывал фолдинг, внёс чуток правок в ключевые слова (имхо, лучше в будущем их считывать из соответствующих *.properties файлов), внёс независимость подсветки операторов от строчности-заглавности написания, для чего пришлось чуток подправить lexers.lua (на существующие лексеры других языков не повлияет),
[more=lexer.lua]function word_list(word_table,case_insensitive)
local hash = {}
if case_insensitive then
for _, v in ipairs(word_table) do hash[v:lower()] = true end
else
for _, v in ipairs(word_table) do hash[v] = true end
end
return hash
end[/more] - реализация костыльная т.к. в лексере языка приходится дважды указывать case_independance (один раз для списка слов, второй для приведения слов в подсвечиваемом тексте), надо будет позже доработать.
Автор: data man
Дата сообщения: 13.12.2010 00:50
После сегодняшних изменений, у кого-нибудь MinGW компилируется ?

[more=Error]In file included from ../src/Extender.h:12:0,
from ../src/MultiplexExtension.h:11,
from ../src/MultiplexExtension.cxx:12:
../src/SString.h: In constructor 'SString::SString(const char*)':
../src/SString.h:141:32: error: 'strlen' was not declared in this scope
../src/SString.h: In member function 'bool SString::contains(char) const':
../src/SString.h:195:34: error: 'strchr' was not declared in this scope
../src/SString.h: In member function 'SString& SString::appendwithseparator(const char*, char)':
../src/SString.h:225:38: error: 'strlen' was not declared in this scope[/more]
Автор: UR4LTZ
Дата сообщения: 13.12.2010 01:10
data man

Цитата:
После сегодняшних изменений, у кого-нибудь MinGW компилируется ?

в Extender.h вставить 2 строки.

#include "Scintilla.h"
#include "stdlib.h" <------
#include "string.h" <------
#include "SString.h"

Заходи в чат.. jid:online@conference.scite-ru.org
http://scite-ru.org/chat/logs.php
Автор: data man
Дата сообщения: 13.12.2010 01:34
UR4LTZ


Цитата:
в Extender.h вставить 2 строки.

Класс, спасибо.


Цитата:
Заходи в чат.. jid:online@conference.scite-ru.org
http://scite-ru.org/chat/logs.php

В закладки, однозначно.
Автор: UR4LTZ
Дата сообщения: 13.12.2010 01:51
data man
Вышла новая ревизия.
Автор: AKRAV
Дата сообщения: 13.12.2010 08:57
UR4LTZ а пак с новой версией собранный где лежит?
ЗЫ: На гугле смотрел там пока ноябрьский самый свежий.
Автор: UR4LTZ
Дата сообщения: 13.12.2010 14:44
AKRAV

Цитата:
UR4LTZ а пак с новой версией собранный где лежит?

Периодически выкладываю здесь Ссылка SciTE-Ru.2.23.Rev1667.rar
Автор: mozers
Дата сообщения: 13.12.2010 20:24
Предлагаю вместе решить что нам делать с аббревиатурами.
Для начала забудем про наши переменные (%SEL%, %CLP%, %[имя_переменной]%, %GUID%) и посмотрим как ведет себя SciTE при вставке аббревиатуры, содержащей только курсорные метки | и наличии выделенного текста:

Содержимое txt.abbrev:
Код: abc=aa"|"bb"|"cc"|"dd

Страницы: 1234567891011121314151617181920212223242526

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


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