Я уже упоминал,
что среди всех текстовых редакторов
фаворитом у меня значится SciTE.
И вот сегодня я открыл для себя знатное
подспорье в автоматизации этого
прекрасного редактора. Подспорье
называется Scite
Ext Man.
Это не очень
длинный (460 строк) скрипт на Lua, который
подключается в SciTE как стартовый, после
чего становится очень легко цеплять
свои функции за события редактора и
создавать пункты меню с клавиатурными
шорткатами.
Как это сделать.
Сначала скачать пакет.
Потом зацепить его за SciTE.
Делай раз —
Options — Open User Options File.
ext.lua.directory=$(SciteUserHome)/lua/scite_lua ext.lua.startup.script=$(SciteUserHome)/lua/extman.lua
В моем случае,
скрипт автозагрузки я положил по путю
C:\Documents and
Settings\v\lua\extman.lua
а все остальные
луа-файлы я поместил в папку
C:\Documents and
Settings\v\lua\scite_lua
Из этой папки
будут автоматически загружаться все
файлы с расширением lua.
Делай два —
записал файл
c:\Documents and
Settings\v\lua\scite_lua\v_cmd.lua
с содержимым
function replaceWinSlashes2Unix() local sel = editor:GetSelText() editor:ReplaceSel(string.gsub(sel, "\\", "/")) end function removeSpaces() local sel = editor:GetSelText() editor:ReplaceSel(string.gsub(sel, "%s", "")) end function ToggleMonospace() scite.MenuCommand(IDM_MONOFONT) return false end scite_Command 'Sel Replace Slashes|replaceWinSlashes2Unix|Shift+Ctrl+M' scite_Command 'Sel Remove Spases|removeSpaces|Shift+Ctrl+Alt+M' scite_OnOpen(ToggleMonospace) |
что дало мне,
после перезапуска редактора, две команды
в меню Tools (одна переворачивает слеши,
другая убирает пробелы, обе для выделенного
текста) и одну интересную фишку.
Ради этой фишки
я и занимался сегодня изысканиями,
приведшими меня к SciteExtMan.
При открытии
файла по умолчанию он теперь отображается
моноширинным шрифтом.
Удивительно,
но факт — в настройках самогО редактора
сделать это невозможно, не потеряв
возможности переключать моно/проп по
Ctrl-F11. А по умолчанию, что тоже удивительно
для программерского редактора,
выставляется всегда отображение
пропорциональным шрифтом.
Как видно из
кода, цеплять обработчики событий и
команды меню — проще пареной свеклы. И
только потому, что в автозагрузку
прописан SciteExtMan.
Комментариев нет:
Отправить комментарий