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

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

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


Автор: azzzis, Отправлено:03:01 16-05-2007
А можно ли в bmp с кнопками использовать более цветастые иконки? или в ядре ограничение на количество цветов?

Добавлено:
Или если нельзя, то взываю к спецам о фиче!

Добавлено:
vladvro

Цитата:
вот примеры моих раскрасок:
для С/С++
для Луа
для HTML + PHP + JavaScript
для ASP
для VBA


Если можно, выложите свои файлы расцветки
Автор: Sober614, Отправлено:09:40 16-05-2007
Midas

Цитата:
Пропиши "import languages\nncrontab_" в SciTEGlobal.properties и проверь чтобы nncrontab_.properties был в папке languages\

это сделано по умолчанию, проверил все на месте.

тогда приведу пример отображения, может у меня что то не так:




очень жалко, что свертки нет :(


а так в Far'е:




Автор: Midas, Отправлено:10:08 16-05-2007
В оригинальном коде решена проблема с зависанием SciTE'а при открытии файлов по сети с включ. опцией "properties.directory.enable". Вот изменения автора:

scite\src\FilePath.cxx:160

Код:

#ifdef WIN32
    if (fileName[0] == pathSepChar || fileName[1] == ':')    // UNC path or drive separator
        return true;
#endif

    return false;
}

bool FilePath::IsRoot() const {
#ifdef WIN32
if ((fileName[0] == pathSepChar) && (fileName[1] == pathSepChar) && (fileName.search(pathSepString, 2) < 0))
return true; // UNC path like \\server
    return (fileName.length() == 3) && (fileName[1] == ':') && (fileName[2] == pathSepChar);
#else
    return fileName == "/";
#endif
}


scite\src\SciTEProps.cxx:1558

Код:

while (!propfile.Directory().IsRoot() && !propfile.Exists()) {

Автор: vladvro, Отправлено:11:30 16-05-2007
azzzis
Цитата:
Если можно, выложите свои файлы расцветки

вот файлы настроек и API
но для Луа подсветка синтаксиса будет отличаться от моей, т.к. я использую свой вариант редактора, в котором лексер для LUA воспринимает разделитель ":" как в оригинальной версии (убран пункт [LuaWord] из списка модификаций)
кроме того API файлы для VBScript и VBA не полные, я их дорабатывал по мере необходимости.
Автор: mozers, Отправлено:16:35 16-05-2007
Sober614
Цитата:
тогда приведу пример отображения, может у меня что то не так:
Лексеры пишут живые люди, кому то хватает ума сделать свертывание, а кому то - нет Я видел решение на LUA, позволяющее добавить фолдинг для файлов, для которых лексер это не делает. Замудрено, правда...
Что касается раскраски, то одного взгляда на твои скрины, достаточно чтобы увидеть что лексер SciTE распознал код ничем не хуже FAR-а. Только OPEN-FILE-SHARED надо бы перенести в ту группу keywords, где находятся RECURSIVE и FILESONLY, да и раскраску можно спокойно перестроить под себя (лично я предпочитаю более яркие и различимые цвета).
В общем - предстоит творческая работа по настройке редактора под себя
Получится удачно - выкладывай - включим в сборку

Midas
Цитата:
В оригинальном коде решена проблема с зависанием SciTE
Ты - про CSV версию что ли? Нейл это дело поправил сразу, как только vladvro ему замечание сделал. Так там вообще много чего сделано. (Например совершенно новый формат файлов сессий). Так что если компилить, то надо все наши доработки в нее переносить. Делов... Пока соберусь - CSV выдет как релиз 1.74.

BioInfo
Удобно, конечно, когда после клика на свободном месте новая закладка открывается. Так и тянется рука даблкликнуть на заголовке вкладки, чтобы она закрылась как в браузере... Ан - нет такой фичи...
Хотел на LUA написать - не ловит событие OnDoubleClick() кликов в этой области
Автор: BioInfo, Отправлено:19:37 16-05-2007
mozers

Цитата:
Так и тянется рука даблкликнуть на заголовке вкладки, чтобы она закрылась как в браузере... Ан - нет такой фичи...

Ну зачем велосипед изобретать? Жми средней кнопкой и оно закроется И главное в правильных браузерах так и работает

Цитата:
Хотел на LUA написать - не ловит событие OnDoubleClick() кликов в этой области

Специально 4ю конечно гляну что там не так, но вот сейчас завал совсем
Автор: azzzis, Отправлено:03:30 17-05-2007
Вопрос следующий...
Если в файле глобальных настроек выставить position.autosave=1, то файл пользовательских настроек при выходе затирается и в него добавляется информация, касающаяся окошка:
position.left=163
position.top=0

position.width=961

position.height=834

position.cmdShow=3

А все что было помещено туда ранее пропадает. Думаю это существенный момент, т.к. многие хранят свои настройки в пользовательском файле и нужно не затирать их при сохранении размеров окошка.
Автор: dB6, Отправлено:04:04 17-05-2007
azzzis

Цитата:
Если в файле глобальных настроек выставить position.autosave=1, то файл пользовательских настроек при выходе затирается и в него добавляется информация...

Предлагаю поменять файл, в который сохраняются настройки эти (типа Position.properties). И прописать в SciTEGlobal.properties import.
А еще лучше - добавить параметр в properties, где будет написано имя файла.

Автор: azzzis, Отправлено:04:27 17-05-2007
Еще было бы класно осуществить следующие фичи:

- работа с каталогами и файлами (с проектом) так как это сделано в TextMate, или e-TextEdit (можно на базе сессиий)
- чтобы в сессию сохранялось состояние фолдинга файлов

Добавлено:

Цитата:
Предлагаю поменять файл, в который сохраняются настройки эти (типа Position.properties). И прописать в SciTEGlobal.properties import.
А еще лучше - добавить параметр в properties, где будет написано имя файла.


А еще лучше, чтобы все сохранялось в пользовательский файл (как оно и есть), только другие настройки которые там есть не затирались

И еще о фичах:

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

Автор: mozers, Отправлено:13:44 17-05-2007
azzzis
Цитата:
Если в файле глобальных настроек выставить position.autosave=1, то файл пользовательских настроек при выходе затирается и в него добавляется информация, касающаяся окошка
Только один раз подобное было (только не затерлось, а в то что было в SciTEUser.properties наставились где попало непечатаемые символы).
Больше такого не было НИ РАЗУ. В SciTEUser.properties у меня хранится достаточно много своих параметров, position.autosave=1 включен постоянно.
Ничего не затирается, только значения параметров position.left, position.top,
position.width, position.height, position.cmdShow
переписываются.
Короче, если такая бага еще у кого то есть - рапортуйте. Надеюсь, BioInfo диплом сдаст на "отлично" и займется устранением бага

dB6
Цитата:
Предлагаю поменять файл, в который сохраняются настройки эти (типа Position.properties). И прописать в SciTEGlobal.properties import.
И добавить параметр в properties, где будет написано имя этого файла.
Я правильно подкорректировал твою цитату? Поддерживаю (кстати, у BioInfo вначале почти так и было. Это я его с панталыги сбил )
Все таки динамически меняющиеся парамеры лучше хранить отдельно (хотя бы в целях безопасности). Умная мысля приходит опосля...

Добавлено:
azzzis
Цитата:
- работа с каталогами и файлами (с проектом) так как это сделано в TextMate, или e-TextEdit (можно на базе сессиий)
Встроенного функционала такого плана никогда не будет.
Внешнюю прогу написать можно (уже есть варианты). Работу с файлами сессий очень упрощает SessionManager (сочинял, сочинял я его - а никто не ругает - абыдно, да

Цитата:
- чтобы в сессию сохранялось состояние фолдинга файлов
Будет в следующей версии SciTE (пока доступна только CSV версия)

Цитата:
- чтобы в свернутом состоянии фолдинг отображал троеточие а не полоску
Чет я не видел такого... (или пропустил?)

Автор: DeadMorozBLR, Отправлено:14:24 17-05-2007
Подскажите, уважаемые, есть ли возможность сделать так, чтобы scite сам "догадывался" о кодировке открываемого файла? Дело в том, что приходиться работать с файлами в UTF-8 без BOM, и он, естественно, открывает их как windows-1251. При этом с файлами в кодировке windows-1251 тоже приходится работать, так что выставлять кодировку по умолчанию в UTF-8 особого смысла нет.
Может хотя бы можно повесить на смену кодировки горячие клавиши?
Автор: vladvro, Отправлено:14:48 17-05-2007
DeadMorozBLR
Цитата:
Может хотя бы можно повесить на смену кодировки горячие клавиши?

это легко, правишь файл настроек:
SciTEUser.properties строка 809
Код:
user.shortcuts=\
...\
Shift+F1|IDM_ENCODING_DEFAULT|\
Shift+F2|IDM_ENCODING_UCOOKIE|\
...
Данный код внедрен в форум с помощью скрипта vladvro

а что бы "сам догадывался" нужен алгоритм распознавания, а это весьма нетривиальная вещь... если кто-то найдет/предложит такой алгоритм, тогда вероятно сделаем.
Автор: dB6, Отправлено:15:04 17-05-2007
mozers

Цитата:
Я правильно подкорректировал твою цитату?

Ага
Автор: azzzis, Отправлено:15:39 17-05-2007
mozers

Цитата:
- работа с каталогами и файлами (с проектом) так как это сделано в TextMate, или e-TextEdit (можно на базе сессиий)
Встроенного функционала такого плана никогда не будет.

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


Цитата:
Работу с файлами сессий очень упрощает SessionManager (сочинял, сочинял я его - а никто не ругает - абыдно, да

Смотрел... Идею ругать не буду, но реализация через тормозные-кривые api лично мне не по вкусу. Поэтому буду настаивать: нужен полноценный менеджер проектов. Вот был бы скайт на дельфях писаный, я бы уже что-нить слабал, а писать интерфейсики "сбоку" не охота.


Автор: DeadMorozBLR, Отправлено:15:54 17-05-2007
vladvro, спасибо. на самом деле не думаю, что разпознавать было бы уж особо полезно на практике, горячих клавиш вполне достаточно )
Автор: azzzis, Отправлено:17:33 17-05-2007
vladvro

Цитата:
вот файлы настроек и API

Спасибо! Цвета понравились, только я пользую фонт Consolas, для него пришлось жирность везде поснимать.
Автор: mozers, Отправлено:20:39 17-05-2007
azzzis
Цитата:
реализация через тормозные-кривые api лично мне не по вкусу.
Нее... Все тормоза тут вызваны не api (который совсем не тормозной и ничуть не кривой), а использованным мной движком HTA, который хотя и очень удобен для быстрописаниянаколенке, формы отрисовывает заметно долго.

Цитата:
Вот был бы скайт на дельфях писаный, я бы уже что-нить слабал, а писать интерфейсики "сбоку" не охота.
Одно из основных преимуществ SciTE заключается в его очень развитом и многогранном API, позволяющем без особого труда и бесцельного ожидания милости разработчика писать любые внешние приложения, которые будут работать абсолютно так же как внутренние процедуры.
Если бы весь функционал, реализованный через скрипты и внешние приложения (и необходимый далеко не всем) зашить в ядро, то SciTE бысто превратился бы из шустрого и маленького редактора с большими возможностями в тяжелого и неприподъемного монстра.
Нейл активно возражает против добавления в SciTE тех функций, которые нужны далеко не всем. Я его в этом поддерживаю.
Так что, чем ждать у моря погоды, давно бы "слабал" на Дельфях самый лучший и удобный менеджер проектов
Автор: Midas, Отправлено:20:59 17-05-2007
Установка Bookmark'а по 1 щелчку на панели Bookmark'ов.
Оказывается, это было предусмотрено в ядре...

SciTEProps.cxx:1183

Код:

    SendEditor(SCI_SETMARGINSENSITIVEN, 2, 1);

на

Код:

    SendEditor(SCI_SETMARGINSENSITIVEN, 2, 1);
    SendEditor(SCI_SETMARGINSENSITIVEN, 1, 1);


SciTEBase.cxx:4285

Код:

    case SCN_MARGINCLICK: {
            if (extender)
                handled = extender->OnMarginClick();
            if (!handled) {
                if (notification->margin == 1) {
                    int lineClick = int(SendEditor(SCI_LINEFROMPOSITION, notification->position));
                    BookmarkToggle(lineClick);
                }
                if (notification->margin == 2) {
                    MarginClick(notification->position, notification->modifiers);
                }
            }
        }
        break;

Автор: azzzis, Отправлено:01:30 18-05-2007
mozers

Цитата:
Нейл активно возражает против добавления в SciTE тех функций, которые нужны далеко не всем.


Ну, наверное, он по своему прав.
Автор: vladvro, Отправлено:09:50 18-05-2007
Midas
Цитата:
Установка Bookmark'а по 1 щелчку на панели Bookmark'ов.

а как быть с выделением строки по 1 щелчку на панели Bookmark'ов?



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