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

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

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


Автор: noloved, Отправлено:10:40 27-02-2009
все доброго дня
недавно установил SciTE Версия 1.77 .61Ru
возникло несколько вопросов, заранее прошу прощения если они уже звучали, но блин..прочитать более сотни страниц топика..эт нереально...

пишу на c++, компилятор MinGW
вопросы
1. не работает автодополнение кода, например пишу
int main()
{
struct
{
int i;
char c;
} st;
st. (в этом месте по смыслу должен выскакивать список подсказок из 2х переменных (i и c), но не выскакивает
}
вообще подобные подсказки не появляются. в чем м.б. проблема?


2. можно ли подключать внешние справки chm, чтоб они были доступны в меню "справка" (подобно току как это реализовано, например, в dev c++)

3. имеется ли возможность передавать параметры в функцию main(int argc, char **argv) непосредственно из SciTE??..как опять же например это реализовано в dev c++ (в меню есть пункт "параметры" и в него пишеш строку параметров, которые при выполнении будут передаваться программе)


Автор: TymurGubayev, Отправлено:05:15 28-02-2009
noloved

3. Есть, Shift+F8 -- окошко для ввода параметров. Но надо предварительно настроить команду меню Выполнить (F5). Для Lua, например, так:
command.go.$(file.patterns.lua)=Lua.exe "$(FileNameExt)" $(1) $(2) $(3) $(4)
(в $(i) подставляется соотв. значение)

1. Проблема в том, что это нетривиальная задача, главным образом потому, что надо решать её или "в общем виде", или для каждого языка по-отдельности. Здесь IDE для одного/двух языков имеют преимущество, а в SciTE-Ru реализован именно вариант "общий вид", реализован, к сожалению, не идеально.
Ответственный за это безобразие скрипт AutocompleteObject.lua
Так что либо переделывать скрипт, либо использовать workaround: писать руками api-файлы для наиболее часто используемых объектов.
Автор: mozers, Отправлено:12:19 28-02-2009
agner
Со структурой - все ясно. Возможно те, кто пишет ветвистые проекты и заинтересуются...
Что же касается поиска деклараций, то в смысл второго примера
Цитата:
Вот примеры вывода информации SideBar и taglist.vim
я что то так и не въехал. taglist.vim - пример из ниоткуда (давайте рассматривать только файлы из сборки). Результат анализа SideBar - полный бред. Зачем мне эта чушь???

noloved
1. Встроенное автодополнение реализовано достаточно примитивно (если есть полное слово в тексте или в api-файле, то SciTE может дополнить неполное слово до него).
Автодополнение "объектов" их "свойствами"/"методами" после точки реализовано скриптом AutocompleteObject.lua. Он великолепно работает с Lua, VBS, JS, CSS,... (т.е. с теми языками, над которыми потрудились). С C никто не занимался - видимо не надо...
2. Да. Можно. См. command.help
3. В SciTE нет отладчика. Поэтому метод, изложенный Tymur-ом отлично работает с любыми скриптовыми языками. В C он будет безполезен, поскольку в SciTE нельзя выполнить отдельную функцию С (с параметром или без - безразницы). Вот откомпилить файл, задав через Shift+F8 нужные параметры ком.строки - это без проблем.

Автор: vladvro, Отправлено:10:33 01-03-2009
agner

Цитата:
К примеру в main.c встречается функция/структура/дефайн intra_pred_mode. Что означает это определение и в каком файле находится - понятие не имею. Устанавливаю курсор на intra_pred_mode, нажимаю 'Ctrl+.'. Открывается вкладка с файлом h264.c на том месте, где определена функция/структура intra_pred_mode. Слегка подредактировав/изучив назначение функции/структуры, нажимаю 'Alt+.', попадаю на то место исходного кода, откуда начинал исследование intra_pred_mode.

IMHO такая навигация по коду довольна удобна.

Судя по описанию и правда должно быть удобно, я заинтересовался.

Цитата:
Вот примеры вывода информации SideBar и taglist.vim

О чем тут идет речь и что сравнивается не смог понять. taglist.vim - это что? Судя по представленому описанию работы ctags, его впринципе сложно сравнивать с SideBar, т.к. SideBar не умеет работать с проектами, он просто отображает список функций текущего открытого файла.
Автор: Sec0ndWind, Отправлено:21:27 01-03-2009
Други, подскажите, пожалуйста, как вставить в контекстное меню SciTE макрос находящийся в списке макросов (файл SciTE.macro)?
Или хотябы как назначить конкретному макросу из того же файла горячую клавишу???
Заранее огромное спасибо.
Автор: vladvro, Отправлено:15:43 02-03-2009
Sec0ndWind

Цитата:
Други, подскажите, пожалуйста, как вставить в контекстное меню SciTE макрос находящийся в списке макросов (файл SciTE.macro)?
Или хотябы как назначить конкретному макросу из того же файла горячую клавишу???

Надо добавить в файл настроек примерно такую команду:

Код:
command.name.201.*=Run Macro example
command.201.*=dostring scite.Perform("currentmacro:example") scite.MenuCommand(IDM_MACROPLAY)
command.mode.201.*=subsystem:lua,savebefore:no
command.shortcut.201.*=Alt+Shift+F9

где example имя нужного нам макроса.
Имя и сочетание клавишь по вкусу
Автор: MarfaKudesnica, Отправлено:20:21 03-03-2009
А это вообще нормально, что файл SciTEGlobal.properties в кодировке 1251 ? А то выставляешь code.page=65001 , т.к. все свои документы в UTF-8, а файл конфигурации - нет.

Может SciTEGlobal.properties конвертнуть в UTF-8 ?
Автор: Sec0ndWind, Отправлено:12:41 04-03-2009
vladvro, большое спасибо!
А каким образом теперь можно добавить новую комманду в контекстное меню?


Добавлено:
Вопрос снят... разобрался...
vladvro, еще раз спасибо!

Автор: VoidVolker, Отправлено:10:26 08-03-2009
Как через SciTE.Helper выполнить команду -goto:номер строки,номер столбца? А то если ее выполнять через ком-строку, то это долго очень - пока он там запустится, еще и окошко новое мигает.
Автор: mozers, Отправлено:17:47 08-03-2009
VoidVolker
Да, собственно, так же... На VBS, например, это будет так:
Код:
Set SciTE = CreateObject("SciTE.Helper")
line = 18
col = 20
SciTE.Send("goto:" & line & "," & col)
Возможно и так:
Код:
SciTE.LUA("editor:GotoPos(editor:PositionFromLine(" & line & "-1)+" & col & ")")


Автор: VoidVolker, Отправлено:21:14 08-03-2009
mozers
Ага, ясно, а как переключиться на вкладку с нужным файлом?
Автор: mozers, Отправлено:13:19 09-03-2009
VoidVolker
Нужно просто выполнить команду открытия файла
Код:
SciTE.Send("open:C:\\TEMP\\test.lua")
или так
Код:
SciTE.LUA("scite.Open(""C:\\TEMP\\test.lua"")")
При этом необходимо не забывать удваивать слеши в пути.
Если файл уже открыт, то путь к нему указывать не обязательно.
Автор: VoidVolker, Отправлено:22:28 09-03-2009

Цитата:
Нужно просто выполнить команду открытия файла

mozers, ясно, спасибо.
Автор: DeadMorozBLR, Отправлено:13:52 11-03-2009
Добрый день! Помогите, обновил SciTE до 1.77, и он перестал запускаться в качестве листер-плагина для Total Commander (через SciLister.wlx) — падает с сообщением "Access Violation…".

Видел на форуме возможность запускать как внешний просмотрщик файлов (через SciTE-View.js или просто исполняемый файл с параметрами). Но выходит, если так, я не смогу использовать остальные листер-плагины, т.к. внутренний листер вообще запускаться не будет? Как быть?
Автор: vladvro, Отправлено:16:09 11-03-2009
DeadMorozBLR

Цитата:
обновил SciTE до 1.77, и он перестал запускаться в качестве листер-плагина для Total Commander (через SciLister.wlx) — падает с сообщением "Access Violation…".

А где можно посмотреть что делает SciLister.wlx?
И хочу уточнить, речь идет именно об оригинальном редакторе версии 1.77, а не о ру-сборке, верно? (подробности о версиях в шапке форума)
Автор: DeadMorozBLR, Отправлено:16:30 11-03-2009
SciLister.wlx — вот http://wincmd.ru/plugring/SciLister.html

Не работают обе версии — ни оригинальная, ни русская.
Автор: vladvro, Отправлено:18:23 11-03-2009
DeadMorozBLR

Цитата:
SciLister.wlx — вот http://wincmd.ru/plugring/SciLister.html

судя по всему разработка этого плагина давно прекращена (дата обновления от 2005г), и на сколько я понял, он напрямую использует Scintilla.dll, интерфейс которой с тех пор мог немного поменятся, от этого видимо и падает.
вывод - либо пользовать плагин со старой версией Scintilla.dll, либо искать/делать обновленую версию плагина.
Автор: DeadMorozBLR, Отправлено:19:45 11-03-2009
Я приблизительно так и думал. Меня в основном волнует, как теперь SciTE подключать к Тоталу. Скорее всего придется просто откатиться на старую версию.
Автор: UR4LTZ, Отправлено:21:12 11-03-2009
DeadMorozBLR

Цитата:
Добрый день! Помогите, обновил SciTE до 1.77, и он перестал запускаться в качестве листер-плагина для Total Commander (через SciLister.wlx) — падает с сообщением "Access Violation…".


SciLister.wlx престал работать в в промежутке между этими версиями. (Других версий у меня просто не осталось.)
Версия 1.74 .50Ru Jul 23 2007 21:25:12
Версия 1.75 .54Ru Dec 3 2007 18:40:02

Что касаемо оригинальной версии пробовал только с 1.72 и после использую только RU сборку.
Автор: mozers, Отправлено:23:06 11-03-2009
DeadMorozBLR
Лавровый венок на голову автору плагина (за отличную идею) и в руки нас#$@ть за ее воплощение в жизнь Со знакомства с этим плагином я начал изучение SciTE. Но от постоянных глюков и неудобства работы с ним отказался навсегда. Как мне кажется проще написать новый плагин, чем справится с этим уродцем.

Цитата:
Видел на форуме возможность запускать как внешний просмотрщик файлов (через SciTE-View.js или просто исполняемый файл с параметрами). Но выходит, если так, я не смогу использовать остальные листер-плагины, т.к. внутренний листер вообще запускаться не будет?
В Тотале спокойно можно сделать так чтобы по F3 запускался листер (со всеми плагинами), а по Alt+F3 - проcмотр в SciTE...
totalcmd.ini:
Код:
Viewer=""C:\SciTE-Ru\SciTE.exe" -property:check.if.already.open=0 -property:toolbar.visible=0 -property:tabbar.visible=0 -property:save.recent=0 -property:save.session=0 -property:ADDITIONAL_SHORTCUTS=Escape|IDM_QUIT| "%1" -menucommand:416"




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