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

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

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


Автор: mozers, Отправлено:02:03 03-04-2007
Уважаемые переводчики поправьте, пожалуйста, на досуге и этот файл согласно новой History.
Если получится, то изложить бы его более понятным языком...

Откомпилировал код 1.73 со всеми вашими доработками (очень много их добавилось есть и приятные сюрпризы). Вроде как работает.
Непонятки с этим пунктом:
Цитата:
сообщение SCN_DOUBLECLICK может устанавливать флаги SCI_SHIFT, SCI_CTRL, и SCI_ALT в поле модификаторов
Т.е. с одной стороны, изобретение mimir-a попало в официальный релиз. С другой стороны, когда глядишь исходники, то выясняется что файлы Editor.cxx иEditor.h сняты 1:1, в ScintillaWin.cxx немного изменен код, в файлы LuaExtension.cxx, MultiplexExtension.cxx, SciTEBase.cxx, DirectorExtension.cxx, SingleThreadExtension.cxx, Extender.h, LuaExtension.h, MultiplexExtension.h, DirectorExtension.h, SingleThreadExtension.h вообще никаких изменений не внесено.
В результате фича не работает или работает но как то не так. КАК ???
Лучше ли Нейловский вариант нашего ? На каком варианте лучше остановиться ?
Автор: vladvro, Отправлено:10:47 03-04-2007
mozers
Цитата:
Т.е. с одной стороны, изобретение mimir-a попало в официальный релиз. С другой стороны...
видимо Нейл решил включить это фичу только в ядро Scintilla, а в редактор не включать (помним, что ядро это отдельная разработка и используется еще другими разработчиками редакторов).
нам конечно нужны все изменения в файлах редактора, что бы фича работала как и прежде.
Автор: mozers, Отправлено:18:06 03-04-2007
Ядро 1.73 .37Ru
EXE + DLL [449kB]
Source [388kB] (только измененные файлы)

Цитата:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[StyleDefault] (Автор: VladVRO)
Устанавливает дефолтовые значения цвета символов и фона равными системным значениям, что позволяет не задавать явно в файлах настройки во всех стилях для получения соответсвующего фона при экспорте файла.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[BookmarksWithSession] (Автор: dB6)
При сохранении сессии, сохраняет в файле сессии список букмарков для каждого файла.
Сохранение идет в формате:
<pos=1 bm=12,142,300> C:\Some\Path\To\File.ext
"bm=" и строки, отмеченные букмарками через запятую.
Сохраняется строка длиной 110 символов, букмарки, которые не "влезли" в строку - не сохраняются. Сделано для совместимости с немодернизированным SciTE.
При загрузке сессии, загружает из файла сессии список букмарков для каждого файла.
Считывается строка длинной 110 символов, остальное обрезается.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[os.run] (Автор: mimir)
Добавлена новая LUA команда os.run(Command, [WindowStyle], [WaitOnReturn]) позволяющая задать вид окна запускаемой внешней команды, приостановить выполнение скрипта на время ее выполнения и получить код завершения.
Аналогичная os.exec(<Cmd>, <WindowStyle>) исключена за ненадобностью.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[TabsMoving] (Автор: VladVRO)
Две новых команды IDM_MOVETABLEFT и IDM_MOVETABRIGHT позволяют перемещать текущую закладку.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[SubMenu] (Автор: HSolo)
Исправлена ошибка, при которой SciTE вылетал при превышении некоторого числа пунктов меню Tools (Автор: VladVRO)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[selection.hide.on.deactivate] (Автор: mozers)
Параметр selection.hide.on.deactivate=0 позволяет не снимать выделение с текста когда окно SciTE теряет фокус.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ToolbarButtons] (Автор: mozers, dB6)
На панель инструментов добавлены кнопки для записи/воспроизведения макросов

Доработок очень много. Очень большая вероятность что я где то апшибся и что то пропустил или добавил но не так.
Доработки без описания что это такое и зачем надо - убрал: (LexSQL.cxx [mimir], SciTEBase.h [DoMenuCommand])
Так что очень прошу всех (особено наших разработчиков) - проверьте работоспособность хотя бы ваших доработок и правильность их описания на русском и английском!

По поводу [OnDoubleClick] так же ниче не ясно. Мне почему то кажется что тот код, что написал Нейл, должен работать аналогично изобретению mimir-а. Только событие это анализировать надо как то иначе. Как??? Я пока новый код Нейл-а закомментировал, оставив старый вариант mimir-а.

Так что текущая версия - БЕТА в чистом виде (поэтому и на сайте ссылки на нее нет). Тестируем!!!
Автор: 8AleX8, Отправлено:12:53 04-04-2007
Нужна помощь.
У меня есть текстовые файлы в которых в вперемешку использованы символы переноса строки "CR+LF" и "CR". Я вижу эти символы, когда включаю View -> End of Line.
Мне необходимо удалить все "CR". Хотел сделать это через find & replace.
Когда я делаю поиск с использованием REG-EXP. и \r - SciTE ничего не находит. Что делать?
Автор: dB6, Отправлено:13:10 04-04-2007
8AleX8

Цитата:
Мне необходимо удалить все "CR". Хотел сделать это через find & replace.
Когда я делаю поиск с использованием REG-EXP. и \r - SciTE ничего не находит. Что делать?

А если выбрать в меню Настройки->Символы перевода строки -> LF, а потом Настройки->Конвертировать символы перевода строки ?
Автор: vladvro, Отправлено:13:15 04-04-2007
mozers
исправление для [BookmarksWithSession] - меняем:
SciTEBuffers.cxx строка 471
Код:
//!-start-[BookmarksWithSession]
char *file, line[MAX_PATH + 128], bmLine[MAX_PATH + 118];
bmLine[0]=[no]'\0'[/no];

for (int i = 0; i < bufferMax; i++)
{
if (!fgets(line, sizeof (line), sessionFile))
Данный код внедрен в форум с помощью скрипта vladvro
на:
SciTEBuffers.cxx строка 471
Код:
//!-start-[BookmarksWithSession]
char *file, line[MAX_PATH + 128], bmLine[MAX_PATH + 118];

for (int i = 0; i < bufferMax; i++)
{
bmLine[0]=[no]'\0'[/no];
if (!fgets(line, sizeof (line), sessionFile))
Данный код внедрен в форум с помощью скрипта vladvro
устраняет появление "левых" букмарков

Добавлено:
8AleX8
Цитата:
Когда я делаю поиск с использованием REG-EXP. и \r - SciTE ничего не находит. Что делать?

для использования \ выражений надо выключить REG-EXP и включить Transform backslash expresions (преобразовывать backslash-выражения)
Автор: dB6, Отправлено:13:51 04-04-2007
vladvro

Цитата:
исправление для [BookmarksWithSession]

Это больше мне, чем mozers.
Да, так более правильно. Но мне интересно - в каком случае появляются "левые букмарки"?


Автор: vladvro, Отправлено:14:00 04-04-2007
dB6
Цитата:
- в каком случае появляются "левые букмарки"?

если букмарков нет, но были в предыдущем файле, например:
Код:
<pos=1> D:\DIST\Editors\SciTE\scite_src\scite\src\SciTEBase.cxx
<pos=28613 bm=12,98,114,125,139,154,172,185,196,216,232,254,284,306,371,392,415,430,449,468,496,788,806,819,973,1038,1098> D:\DIST\Editors\SciTE\scite_src\scite\bin\SciTEGlobal.properties
<pos=-212> D:\DIST\Editors\SciTE\scite_src\scite\bin\home\SciTEUser.properties

третий буфер открывается с букмарками второго
Автор: 8AleX8, Отправлено:14:05 04-04-2007
dB6

Цитата:
А если выбрать в меню Настройки->Символы перевода строки -> LF, а потом Настройки->Конвертировать символы перевода строки ?

Нет это не то.
Возможно я не ясно выразился. Мне необходимо все CR из файла удалить, а все CR+LF оставить как есть.
Автор: dB6, Отправлено:14:06 04-04-2007
vladvro
Цитата:
третий буфер открывается с букмарками второго

И правда.. И как это я проглядел? Спасибо за подсказку!

Добавлено:
8AleX8

Цитата:
Возможно я не ясно выразился. Мне необходимо все "CR" из файла удалить, а все "CR+LF" оставить как есть.

Ну тогда делаем так:
Ставим галочку "Преобразовывать backslash-выражения".
НЕ ставим галочку "Регулярные выражения"
И пользуемся для поиска:
\r = CR
\n = LF
Только они воспринимаются, как разные символы (как оно и есть на самом деле), поэтомцу я бы сначала заменил бы \r\n на что-нибудь типа "_CRLF_", потом удалил бы все оставшиеся CR с помощью замены \r. и заменил бы обратно "_CRLF_" на \r\n.

Автор: 8AleX8, Отправлено:15:09 04-04-2007
dB6

Цитата:
Ставим галочку "Преобразовывать backslash-выражения".

Это то, что надо! Спасибо большое!
А я дурак что значит и не знал.
Теперь буду знать - http://scintilla.sourceforge.net/SciTEFAQ.html#NewlineInRegEx
Автор: vladvro, Отправлено:13:23 05-04-2007
All
кто-нибудь знает, как интегрировать в exe-ник скайта еще одну иконку?
http://scite.ruteam.ru/engine/upfiles/vladvro/SciTE-file.ico

Автор: dB6, Отправлено:14:01 05-04-2007
vladvro

Цитата:
кто-нибудь знает, как интегрировать в exe-ник скайта еще одну иконку?

Добавить ее в SciTERes.rc в Icons.
Автор: vladvro, Отправлено:14:21 05-04-2007

Цитата:
Добавить ее в SciTERes.rc в Icons.

точно
SciTERes.rc строка 13
Код:
SciTEfile ICON [no]"SciTE-file.ico"[/no]
Данный код внедрен в форум с помощью скрипта vladvro

получилось, спасибо

Добавлено:
mozers
предлагаю добавить в скайт пару новых иконок (для редактируемых файлов и для файлов сессий)
SciTE-file.ico и SciTE-ses.ico
эти файлы надо положить в src\scite\win32 и добавить:
SciTERes.rc строка 13
Код:
SciTEfile ICON [no]"SciTE-file.ico"[/no] [no]//!-add-[NewIcons][/no]
SciTEses ICON [no]"SciTE-ses.ico"[/no] [no]//!-add-[NewIcons][/no]
Данный код внедрен в форум с помощью скрипта vladvro

использование для файла сессии:
SciTE - Session file.reg строка 10
Код:
[no][HKEY_CLASSES_ROOT\SciTE.Session\DefaultIcon][/no]
@="<путь до скайта>\\SciTE.exe,2"
Данный код внедрен в форум с помощью скрипта vladvro


Добавлено:

обновление скрипта по раскраске кода для форума подробнее...
версия 1.4.3:
- скорректирована раскраска С/С++

Автор: mozers, Отправлено:16:01 05-04-2007
vladvro
Если иконки будут выдержаны в стиле SciTE, будут красивы и понятны, будут иметь набор типовых размеров и цветности, то почему бы и не добавить?
Добавлено:
Пардон, не врубился с лету что названия - линки - смотрю...

Добавлено:
Я бы только буковки Ru с иконок 16х16 убрал (вот на 32х32 смотрится отлично)
Принимается
Автор: vladvro, Отправлено:11:15 06-04-2007
mozers
Цитата:
Я бы только буковки Ru с иконок 16х16 убрал

а я бы оставил

All
не прошло и полгода, как я обнаружил средства форматирования сообщений этого форума, оказывается если навестись на то открывается весьма интересная менюшка... я минут 5 лежал под столом
Автор: dB6, Отправлено:11:57 06-04-2007
vladvro

Цитата:
не прошло и полгода, как я обнаружил средства форматирования сообщений этого форума

Было интересней, если бы ты обнаружил это раньше, учитывая, что эта возможность появилась недавно..

А буковки я бы теж убрал.. Непонятно, что это скайт, не разглядеть его иконку.
Автор: vladvro, Отправлено:15:07 06-04-2007
mozers, dB6
сделал новый вариант:
SciTE-file2.ico
SciTE-ses2.ico

но мне кажется что лучше не стало (на роль художника никогда не претендовал ), вобщем выбирайте
Автор: mozers, Отправлено:17:18 06-04-2007
Я - тож не художник... В общем - на суд общественности
32х32 не менял, только 16х16
2 варианта - с буквами Ru (уже читабельными) и без.
Автор: vladvro, Отправлено:13:33 07-04-2007
mozers
Цитата:
Я - тож не художник...
у тебя уже лучше чем у меня получилось

но я сделал новые варианты:
SciTE-file.ico
SciTE-ses.ico
SciTE-file2.ico
SciTE-ses2.ico

выбирайте.

я остановил свой выбор на варианте с буквами.

Добавлено:
добавил возможность задать иное расширение для файлов сессий, т.к. расширение ".ses" нередко пользуют другие программы [more]
вносим исправления в код

SciTEBase.h строка 649
Код:
const char *GetDefaultSessionFileName(); [no]//!-add-[SessionExtension][/no]
Данный код внедрен в форум с помощью скрипта vladvro

SciTEBuffers.cxx строка 441
Код:
[no]//!-start-[SessionExtension][/no]
const char *SciTEBase::GetDefaultSessionFileName() {
static char *name;
SString newname = [no]"SciTE"[/no];
SString ext = props.GetExpanded([no]"session.file.ext"[/no]);
if (ext.length()>0)
newname.append(ext.c_str());
else
newname.append([no]".ses"[/no]);
delete[] name;
name = newname.detach();
return name;
}
[no]//!-end-[SessionExtension][/no]
Данный код внедрен в форум с помощью скрипта vladvro

SciTEBuffers.cxx строка 459
Код:
[no]//sessionPathName = RecentFilePath(defaultSessionFileName);[/no]
sessionPathName = RecentFilePath(GetDefaultSessionFileName()); [no]//!-change-[SessionExtension][/no]
Данный код внедрен в форум с помощью скрипта vladvro

SciTEBuffers.cxx строка 536
Код:
[no]//sessionPathName = RecentFilePath(defaultSessionFileName);[/no]
sessionPathName = RecentFilePath(GetDefaultSessionFileName()); [no]//!-change-[SessionExtension][/no]
Данный код внедрен в форум с помощью скрипта vladvro

SciTEWinDlg.cxx строка 379
Код:
[no]//!-start-[SessionExtension][/no]
SString ext = props.GetExpanded([no]"session.file.ext"[/no]);
SString filter;
if (ext.length()>0) {
filter.append([no]"Session ("[/no]).append(ext.c_str()).append([no]";.ses)\0*"[/no],8).append(ext.c_str()).append([no]";*.ses"[/no]);
ofn.lpstrFilter = filter.c_str();
}
[no]//!-end-[SessionExtension][/no]
Данный код внедрен в форум с помощью скрипта vladvro

SciTEWinDlg.cxx строка 396
Код:
[no]//strcpy(saveName, "SciTE.ses");[/no]
strcpy(saveName, GetDefaultSessionFileName()); [no]//!-change-[SessionExtension][/no]
Данный код внедрен в форум с помощью скрипта vladvro

SciTEWinDlg.cxx строка 410
Код:
[no]//!-start-[SessionExtension][/no]
SString ext = props.GetExpanded([no]"session.file.ext"[/no]);
SString filter;
if (ext.length()>0) {
filter.append([no]"Session ("[/no]).append(ext.c_str()).append([no]";.ses)\0*"[/no],8).append(ext.c_str()).append([no]";*.ses"[/no]);
ofn.lpstrFilter = filter.c_str();
}
[no]//!-end-[SessionExtension][/no]
Данный код внедрен в форум с помощью скрипта vladvro

и задаем в файле настроек, например:
SciTEUser.properties
Код:
session.file.ext=.sciteses
Данный код внедрен в форум с помощью скрипта vladvro

новое расширение будет использоваться для файла автоматической записи сесси и по умолчанию в диалогах открытия и записи сессии, а фильтр будет на оба (новое и старое) расширения.
[/more]



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