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

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

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


Автор: mirk, Отправлено:18:47 06-04-2006
Выложил на What New`s русском.
xdude, ALeXkRU спасибо большое за помощь.

Автор: dB6, Отправлено:19:24 06-04-2006
mimir
Есть маленькая идея насчет переноса строк по Alt+Up и Alt+Down.
Но только для переноса 1 строки вверх/вниз.
В SciTE же есть встроенная функция - поменять строки местами (Ctrl+T). И если сделать, чтобы курсор переходил вслед за строкой, то получится Alt+Up. Думаю, на основе можно и Alt+Down сделать.
Насчет 1 строки - точно. Насчет нескольких - не знаю, код не смотрел.

Автор: mimir, Отправлено:19:28 06-04-2006
А как она хоть называеться, а то искать как то лень
Автор: dB6, Отправлено:20:16 06-04-2006
mimir

Код:
# Switch the current line with the previous.
fun void LineTranspose=2339(,)
и
Код:
#define SCI_LINETRANSPOSE 2339

дальше разберешься?
Автор: mozers, Отправлено:23:59 06-04-2006
Все таки не работает автодополнение так как хотелось бы
Или туплю я...
Например, имеем запись в api:
Код:
WScript.StdIn.Read(characters)
WScript.StdOut.Write(string)
пишем код:
WScript. - после точки возникает автодополнение-выбор StdIn.Read/StdOut.Write - осталось только выбрать нужное
Выбираю
WScript.StdOut.Write( - после скобки подсказка НЕ возникает

Ладно. Как показать и подсказку догадался давно - просто в api к каждой из этих строк необходимо дописать еще по одной:
Код:
WScript.StdIn.Read
Read(characters)
WScript.StdOut.Write
Write(string)
тогда подсказки будут показываться.

Но возникает другой вопрос:
Если я буду писать так:
myObj.StdOut.Write(abc) то никаких автодополнений я вообще не увижу ((
Пробовал по логике дописать в api
Код:
WScript.StdIn.Read
StdIn.Read
Read(characters)
WScript.StdOut.Write
StdOut.Write
Write(string)

Ни хрена не работает
Т.е. слова, на предмет возможности дополнения, Скайт анализирует с начала строки. А надо бы сначала ему поглядеть не стоит ли слева точка или пробел. Если стоит, то анализировать не с начала строки, а с нее.
(точнее - пробел он видит, а точку - нет
Думал, думал... Извини, mimir, наверное без правки исходников не обойдется...

Автор: mimir, Отправлено:10:52 07-04-2006

Цитата:
Т.е. слова, на предмет возможности дополнения, Скайт анализирует с начала строки. А надо бы сначала ему поглядеть не стоит ли слева точка или пробел. Если стоит, то анализировать не с начала строки, а с нее.

Эта проблема заключаеться в идеологии.
В разных объектах могут иметься разные методы с одиноковым именем,
т.е. метод Read может быть в одном объекте Read(characters), в другом Read(), а в третьем его вообще может не быть.
В таком случае myObj.Re должен аналезировать myObj и в зависимости от этого выдавать и подстановку и подсказку. К сожелению задача определения типа по имени и формирование в зависимости от типа списка процедур задача весьма сложная и как ее решать я если честно слабо представляю, да и сомниваюсь что это появиться в ближайшее время в SciTE.
Поэтому мне кажеться что правельнее анализировать целиком myObj.StdOut.Write, хотя это также не очень красиво

Цитата:
# Switch the current line with the previous.
fun void LineTranspose=2339(,)

Спасибо. Посмотрю.
Автор: UsAr, Отправлено:12:02 07-04-2006
mimir
спасибо помогло
сделал фолдинг для масма на основе лексера lua. измененные файлы решил выложить, может понадобятся кому
http://usar.gorodok.net/tmp/scite.asm.rar
Автор: mirk, Отправлено:13:24 07-04-2006
UsAr
При желании вы можете оформить ваше решение в виде статьи (пару строчек), и выложить на сайте, вообщем оставить свое имя в веках
От вашего имени статью как то неудобно писать
Автор: AntiBIOtic, Отправлено:13:37 07-04-2006
есть возможность прикрутить подсветку синтаксиса Forth (форт) ?
Автор: ALeXkRU, Отправлено:14:33 07-04-2006
AntiBIOtic
так он там и так есть... максимум, что может потребоваться - раскоментировать в настройках

Добавлено:
проверь, должен быть файлик forth.properties
Автор: UsAr, Отправлено:14:56 07-04-2006
mirk
честно говоря лень да и автор из меня некудышный. А статью лучше пишите от своего имени.
Автор: mirk, Отправлено:15:46 07-04-2006
UsAr
В общем это не совсем статья, так, новость.
В течении недели размещю.
Автор: mozers, Отправлено:16:53 07-04-2006
mimir

Цитата:
В разных объектах могут иметься разные методы с одиноковым именем

Это - не страшно. Тогда в api надо будет прописать все методы обоих объектов в виде:
Код:
obj1.metod1
obj1.metod2
obj2.metod1
obj2.metod2

А вот запись вида WScript.StdErr.Write(string) считаю маразматической потому, что всех объектов, к которым применим .StdErr не перечислить.
Такая логика (брать слово до точки слева и по нему, а не по полному тексту, искать варианты для автодополнения) имхо самая правильная, поскольку конструкции вида
Код:
window.document.parentWindow.document.body.selection.style.font
в JS - не редкость. Оговорить все возможные комбинации просто невозможно...


Цитата:
В таком случае myObj.Re должен аналезировать myObj и в зависимости от этого выдавать и подстановку и подсказку.

Ну, Скайт этого не может по определению, но вообще есть желание его этому делу научить (с помощью скриптов конечно ...

А вот что для подсказки надо писать отдельную строку (я об этом говорил в прошлом посте) наверное - плохо, но терпеть это дело - можно.

UsAr
Че люди творят! Круто! Сам, правда, на Ассемблере со времен DOS не писал. Даже не представляю как на нем написать какую нить элементарную API-шную функцию... Страницы две кода... Не меньше...
А ты от каких исходников отталкивался, когда код правил?
А если я твое решение в сборку включу ?
Автор: UsAr, Отправлено:17:13 07-04-2006
mozers

Цитата:
Сам, правда, на Ассемблере со времен DOS не писал. Даже не представляю как на нем написать какую нить элементарную API-шную функцию... Страницы две кода... Не меньше...

зря, с масмом под windows гораздо проще писать стало. Код стал больше сишный напоминать

Цитата:
А ты от каких исходников отталкивался, когда код правил?

в основном LexLua и немного LexVerilog

Цитата:
А если я твое решение в сборку включу ?

Включай конечно, так будет удобнее - я как раз ей и пользуюсь
Автор: mozers, Отправлено:17:30 07-04-2006
ALL
Все думаю, может ошибся я где то? Может Скайт без всякой переделки может так дополнять (считая от точки) ??? Народ, попробуйте на досуге (выходные впереди) подключить такой js_test.api:
Код:
window.document
window.window
document.parentWindow
document.body
body.style
parentWindow.document
parentWindow.window
style.font
style.color
Написать такие строчки в file.js (после написания первого объекта и точки дальше используя только одни автодополнения) у вас должно получится:
Код:
window.document.parentWindow.document.body.style.color
document.parentWindow.document.body.style.color
parentWindow.document.body.style.color
А вот на такой вы должны обломиться:
Код:
window.document.style
style - тут не допишется автоматом, поскоку такая комбинация в api не оговорена.
В общем - задача максимум - заставить поступать Скайт именно так, а не иначе.
Вдруг кому удастся его победить ???


Добавлено:
UsAr
Цитата:
Код стал больше сишный напоминать

Я чуствовал, что ты в меня интересной ссылкой кинешь

Цитата:
в основном LexLua и немного LexVerilog
не понял... я спрашивал от какой версии SciTE ты брал исходные файлы? От 1.68 ? Не с нуля же писал?

Автор: UsAr, Отправлено:17:57 07-04-2006
mozers

Цитата:
не понял... я спрашивал от какой версии SciTE ты брал исходные файлы? От 1.68 ? Не с нуля же писал?

Ну да. Качал 1.68
Автор: ALeXkRU, Отправлено:18:42 07-04-2006
mozers

Цитата:
Такая логика (брать слово до точки слева и по нему, а не по полному тексту, искать варианты для автодополнения) имхо самая правильная

тут, IMHO, очень регеспы пригодились бы... их нельзя задействовать в api?
Автор: mozers, Отправлено:22:38 07-04-2006
ALeXkRU
Нее... Регулярные выражения позволительны только при поиске...
Если только mimir это не внедрит
Хотя, как мне кажется, что и без них тут вполне можно обойтись.

mimir
Я вот думаю (все про то же) что наверное не стоит строки для автодополнения из api брать. Формат то - совсем другой. Один хрен сегодня надо писать в api по 2 строчки (одну - для автодополнения, а другую - для подсказки).
Может предусмотреть отдельные файлы чисто для автодополнения?
Так как то логичнее будет нежели теперь.

Автор: Perchilla, Отправлено:03:44 08-04-2006
Господа, у меня есть к вам несколько вопросов, прошу прощения если повторяюсь но 33 страницы топика просто не осилил.
Существуют ли и где можно достать следующие фишки для SciTE:
1. Что - то наподобии FTP explorer в PHPExpertEditor (для работы нужно позарез)
2. Навигатор по коду PHP. Class browser - желательно, ну и переход по функциям.
3. Менеджер проектов.

Все фишки есть PHPExpertEditor, но он мне со своими глюками немного поднадоел.

PS. пора бы уже раздел свой открывать .
Автор: mozers, Отправлено:16:23 08-04-2006
Perchilla
Поздравляю с первым постом
Вообще SciTE - достаточно простой текстовый редактор. Достоинство его в том, что к нему подключить можно практически все. Поэтому, если видел кто то все эти фичи в качестве отдельной программы, то сообщите - подумаем и присобачим к Скайту...
Многие пользуются SideWinder и Filerx - это, пожалуй, самые основные расширители функционала.
У меня как то ни та ни другая прога не прижилась. Чесно говоря ни с одной не разобрался до конца...
Вот если б кто рассказал популярно о них...

ALL
Переписал скрипт выбора цвета из палитры "Цветочник" на HTA.
Работает на порядок быстрее предыдущей связки (VBS + HTML)




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