Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » SciTE - Open Source Text Editor for Windows & Linux

Модерирует : gyra, Maz

Widok (09-10-2007 14:48): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

Spab



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

A free source code editor for Win32 and X
Русскоязычный форум поддержки

  • Один из самых настраиваемых текстовых редакторов из ныне существующих. Настраивается практически все.
  • Индивидуальная подсветка для разных языков програмирования, фолдинг для классов, функций и структур, авто-дополнение, и т.д. и т.п. ...
     
  • Scite-interest -- Discussion of the SciTE editor
  • Русский сайт SciTE (документация, FAQ, снимки экрана, утилиты, скрипты и т.д. и т.п....)
  • Мечта кодера. статья
  • Burgaud.com - US.SciTE
  • SciTE: Scintilla Text Editor with Extensions
  • Filerx, SideWinder
  • ......
     
       
  • Project file releases
  • Project summary (including basic statistics)
  • Новости со SciTE.ru
     
    Последняя версия редактора - SciTE 1.74
     
    SciTE 1.74 .52Ru-Board Edition [Сборка 20.09.2007]
    Oписание: сборки ядра  
     
    Дружественная тема: Доработка исходного кода и компилирование сборки Ru-Board Edition
     
    Нерешенные задачи и вопросы ( Для умных и талантливых форумчан )
     
    P.S. Если вы используете SciTE для своих нужд, таких как: написание HTML, CSS, Java Script, PHP и др. кода для сайта, или просто вам нравится этот редактор, поставьте пожалуйста ссылку или баннер на сайт - http://scite.ruteam.ru, благодаря этому у сайта повышается индекс цитирования, соответственно увеличивается количество пользователей редактора.

  • Всего записей: 64 | Зарегистр. 02-09-2001 | Отправлено: 03:05 04-06-2002 | Исправлено: mozers, 13:45 04-10-2007
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    unreal666
    Все лексеры перечислены в файле scintilla\include\Scintilla.iface (см. исходники).
    Т.е. циферки в моем скрипте можно бы даже заменить SciTE константами:
    Код:
          ......,  
          [SCLEX_PYTHON] = "python",  
           [SCLEX_CPP] = "cpp",  
           [SCLEX_HTML] = "hypertext",  
           [SCLEX_XML] = "xml",  
           [SCLEX_PERL] = "perl",
          ......,  


    ----------
    Интересно только неизведанное...

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 09:11 01-09-2006 | Исправлено: mozers, 09:52 01-09-2006
    gansA

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers

    Цитата:
    Поместить пробел и табуляцию в квадратных скобках

    Блин стормозил, но  ничего готова новая верися , тока  это уже не "хайку".
    Что делает: - удаляет все отступы, все позторяющиеся пробельные символы, грохает пустые строки. Где применять уж сами решите ))).
    Собсно startup.lua

    Цитата:
     
    --// trim all space
    function TrimAllSpace(strCmd)
        local bF=0;
        local textOut='';
        local text=editor:GetSelText();
     
        if string.len(text)==0 then
            bF=1;
            text=editor:GetText();
        end;
     
        text=text..'\n';
        for str in string.gfind(text,'((.-)\r?\n)') do
            textOut=textOut..FormatString(str,strCmd)
        end
        textOut=string.gsub(textOut,'(.+)\n','%1')
        --//trace(textOut) --// debug
     
        if bF==0 then
            editor:ReplaceSel(textOut);
        else
            editor:SetText(textOut);
        end;
     
        return 0;
    end
     
    function FormatString(str, strCmd)
        if strCmd == 'trim' then
            str=string.gsub(str,'[     ]+',' '); --// удаление повторяющихся символов
            str=string.gsub(str,'^ *(.-) *','%1');    --// удаление пробелов в нач. конце строки
        end
     
        str=string.gsub(str,'^(%s*)$',''); --// удаление пустых строк
        return str;
    end
     

    В str=string.gsub(str,'[     ]+',' '); содержатся знак пробела и знак табуляции.
     
    И SciTEGlobal.properties

    Цитата:
     
    command.name.7.*=Trim all spaces
    command.7.*=dostring  TrimAllSpace('trim')
    command.mode.7.*=subsystem:lua,savebefore:no
    command.shortcut.7.*=Shift+Space
     
    command.name.8.*=Drop Empty Line
    command.8.*=dostring  TrimAllSpace('drop')
    command.mode.8.*=subsystem:lua,savebefore:no
    command.shortcut.8.*=Alt+Space
     


    Всего записей: 51 | Зарегистр. 07-12-2004 | Отправлено: 11:57 01-09-2006 | Исправлено: gansA, 12:42 01-09-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Задачи и вопросы для программистов:
     
  • Как бы увеличить допустимую длину строки в параметре statusbar.text.1 ?
    (Хочется видеть сразу и много, поэтому писать в statusbar.text.2 и другие уже не так интересно)
     
  • Мечталось бы модернезировать функцию ParametersDialog(VladVRO) вызова настраиваемого диалога ввода, в которой можно было бы задать кол-во входных полей, надписи к ним (опционально), общую надпись (опционально), список кнопок.
     
  • Реализовать перетаскивание закладок мышью (подробнее...)
     
  • Необходимо добавить новый эвент onClick(keycode), который бы позволил не только отслеживать одинарные клики мыши, но и анализировать код нажатой(нажатых) в данный момент клавиш.
    (mimir уже добавил onDoubleClick(Ctrl,Shift,Alt) так что путь известен...)
     
  • Как сделать ВСЕ меню SciTE (а не только Tools) полностью настраиваемым.
     
    Задачи для любителей:
     
  • Необходим полный и корректный перевод HELPа на русский язык. Сделайте малое - переведите хотя бы один абзац. А ваш друг переведет другой. А кто то сможет изложить более грамотно и понятно переведенные ранее части
     
  • Необходимы полные откорректированные, удобные и отлаженные файлы API и сокращений (abbrev) для различных языков программирования.
     
  • Необходимы удобные и полезные скрипты. На lua, vbs, js или другом каком языке они будут написаны - это уже не важно.
     
  • Необходимо снабдить подробными и понятными комментариями все файлы настроек
     
  • Есть задача обновления материала, размещенного на сайте. Например, многие скрипты там размещенные, уже давно обновились и обрели новые возможности...
     
    В общем - творите, делитесь результатом, и ваше имя навсегда останется в памяти благодарных пользователей

  • Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 23:47 01-09-2006 | Исправлено: mozers, 15:33 08-05-2007
    Moon_aka_Sun



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers
    Цитата:
    Да и вообще как выполнить любую команду меню?

    Я так понимаю, что и сам SciTE, и расширение (Луа), являются как бы надстройкой над Scintilla. И тот и другой имеют доступ к функциям редактирования и т.п. В редакторе можно контролировать расширение (подключать/отключать, запускать и т.д.), но сам редактор не выдаёт никакого API для доступа к себе. Или выдаёт, но очень ограниченный (ххххх: команды?). Может это всё и не так - я всей документации не читал и не пытался во всём разобраться. Я бы предложил спросить об этом у Hodgson'а.
     
    mozers
    Цитата:
    В меню Tools отсутствует возможность вставлять разделители и делать подменю.  

    Тот же Mitchell Foral это сделал. При вызове команды из Тулз, показывается новое меню - из Луа, по-моему. Разделители - да, этого нет. Это надо код SciTE править. Если у меня число пунктов перевалит за 30, то можно было бы и посмотреть, должно быть не сложно сделать пустую команду с именем '-' и превращать её в разделитель.
     
    mozers
    Цитата:
    Необходим единый список всех клавиатурных комманд SciTE

    У меня есть мой список, но я немного поменял и KeyMap.cxx в Scintill'e, и SciTEProps.cxx и SciTERes.rc в SciTE. Лучше, конечно, собрать было изменения в одном-двух местах, но так уж исторически вышло - зачем опряделять какие-то команды внизу, когда всё равно я их буду переопределять, и всё равно всё перекомпилировать. В общем, своё могу доработать и облагородить, а оригинальные - нет. Работы там, кстати, для энтузиастов немного, практически все файлы я уже назвал.
     

    Цитата:
    макросы?

    Если включить при компиляции (или можно из расширения), то в меню появятся 4 команды, привязанные к F9, но они вызывают функции из расширения. Т.о. если их просто включить в исходнике, то без реального обработчика они ничего не делают. Есть filerx или как он там назывался - организатор сессий, но и макро в нём есть. Довольно неудобное и чужеродное средство по-моему, в общем, у меня не пошло. А делать макро на С - работы там довольно много, за вечер не сделаешь.
     
     
    В свою очередь, тоже хочу спросить. Я видел где-то упоминание, что можно открыть две панели (или два таба?) и редактировать в них один и тот же файл в разных местах. Это было, по-моему, в общем описании принципиальных возможностей Scintill'ы, но точно уже не помню. Никто не владеет вопросом?

    Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 04:32 02-09-2006 | Исправлено: Moon_aka_Sun, 05:12 02-09-2006
    Moon_aka_Sun



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    В меню Tools отсутствует возможность вставлять разделители  

    Это оказалось проще всего, если мы условимся, что те пункты, которые должны идти после (ниже) разделителя, начинаются с минуса (который не показывается, конечно). Такое соглашение не позволит поставить черту перед (выше) Stop Executing/Ctrl+Break, но он всё равно обычно засерен и после него идёт черта, так что это как раз не страшно.
     
    Итак, в SciTE.h надо вставить новый ид, например,  

    Код:
     
    #define IDM_PREVMSG            307
     
    #define IDM_TOOLS_SEP   308
     
    #define IDM_MACRO_SEP        310
     

     
    В SciTEBuffers.cxx надо добавить код вместо строки 1062 (тоже выделено жирным)

    Код:
     
        if (commandName.length()) {
          //G-: +++ add separator if command.name starts with '-'
          int skip_1st_char = 0;
          if( commandName[0] == '-' )
          {
            SetMenuItem(menuTools, menuPos++, IDM_TOOLS_SEP, "");
            skip_1st_char = 1;
          }
          SString sMenuItem = commandName.c_str() + skip_1st_char;
          //G-: ---

          prefix = "command.shortcut.";
     

     
    И перекомпилировать
     
    Тогда можно писать в главных пропертиз:

    Код:
     
    command.name.1.*=-&Fill Rectangle
    command.1.*=*fill_rectangle text:$(1) incr:$(2)
    command.mode.1.*=subsystem:lua,savebefore:no
     

    Будет отделено от находящегося выше Go/F5.
     
    Upd.: Добавляет корректно только два сепаратора. Больше - почему-то не хочет.

    Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 11:05 02-09-2006 | Исправлено: Moon_aka_Sun, 15:31 02-09-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Moon_aka_Sun

    Цитата:
    но сам редактор не выдаёт никакого API для доступа к себе
    если это
    Код:
    scite.SendEditor(SCI_constant, ...) - sends a message to the editor pane
    несмотря на название, пример доступа к Scintill'e, а не к редактору, то, наверное, неплохо бы было добавить в исходники хотя бы простенькое API
    Спрашивать у Нейла для меня - все равно что идти на прием к зубному врачу...

    Цитата:
    При вызове команды из Тулз, показывается новое меню - из Луа, по-моему
    Не видел такого. Ссылочку можно? Если на LUA - то не надо - это совсем не то. Чтобы при выборе пункта меню Tools открывалось меню на LUA - это несложно. Только меню то будет - КОНТЕКСТНОЕ, чужеродное, возникающее не на месте меню, а на месте текстового курсора

    Цитата:
    Разделители - да, этого нет
    Нейл, в ответ на мою просьбу, сказал что сделать это дико сложно В Windows, мол, работать будет, а в GTK - нет. (вариант что это можно сделать только для пользователей Виндов ему как то в голову не пришел

    Цитата:
    Если у меня число пунктов перевалит за 30
    На меня уже давно давит ограничение в 50 пунктов Надо добавить в "пожелания" увеличить это число хотя бы до 100.

    Цитата:
    У меня есть мой список
    У меня - тоже Все никак не дойдут руки причесать... Наверное надо убрать это из пожеланий - сам займусь...

    Цитата:
    то в меню появятся 4 команды, привязанные к F9, но они вызывают функции из расширения. Т.о. если их просто включить в исходнике, то без реального обработчика они ничего не делают.
    Не понимаю тогда зачем они вообще... Командой из меню Tools нельзя что ли внешний "магнитофон" для записи нажатий на клавиши запустить?
    Делать кнопки для магнитофона которого нет??? Очень странно это...

    Цитата:
    Я видел где-то упоминание, что можно открыть две панели (или два таба?) и редактировать в них один и тот же файл в разных местах
    Увы, не знаю Могу прислать весь архив официальной эхи в формате TheBat! - может поможет?
     

    Цитата:
    Это оказалось проще всего, если мы условимся, что те пункты, которые должны идти после (ниже) разделителя, начинаются с минуса

    УРА!!! - сбылась мечта!
    Гениальная идея - не делать лишний пункт меню, а писать - в существующих (а то и так нумеров не хватает).
    Главное - начать, а ошибки, я думаю, ты найдешь и исправишь (или кто другой поможет).
    Пока, будем честны, все выглядит достаточно сыро... 2 разделителя, Ctrl+Break у меня вдруг улетел наверх и встал 5м пунктом...
    В общем, с нетерпением жду исправленный вариант

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 21:07 02-09-2006
    Moon_aka_Sun



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Не видел такого. Ссылочку можно?

    Да у того же Форала (http://caladbolg.net/scite.php)
    Например, http://caladbolg.net/tools/sc/scite_file_browser.html
     

    Цитата:
    Ctrl+Break у меня вдруг улетел наверх и встал 5м пунктом...

    У меня это происходит, когда вставляешь третью полоску - вместо неё подхватывается Ctrl+Break. Но разбираться с этим не буду - пусть "настоящие" виндовс-программисты займутся. Наверняка там что-то очень простое, но надо знать виндовс GUI API и его тонкости и заскоки. Буду как Нейл говорить, что "это очень сложно"
     

    Цитата:
    scite.SendEditor(SCI_constant, ...)  

    А может туда можно и IDM_command пихнуть? Хотя вряд ли, конечно.
    Есть ещё Director Interface. Туда точно можно любую менюшную команду подать - с помощью menucommand:...

    Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 00:50 03-09-2006 | Исправлено: Moon_aka_Sun, 01:31 03-09-2006
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers
    21:07 02-09-2006
    Цитата:
    Не понимаю тогда зачем они вообще... Командой из меню Tools нельзя что ли внешний "магнитофон" для записи нажатий на клавиши запустить?  
    Делать кнопки для магнитофона которого нет??? Очень странно это...  

    может он это на будущее делал... а довести - руки не дошли...
    В принципе, в Notepad++ макросы работают... а он же на том же движке.. можно попробовать портировать...

    Всего записей: 11788 | Зарегистр. 03-12-2003 | Отправлено: 01:21 03-09-2006
    Moon_aka_Sun



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    На меня уже давно давит ограничение в 50 пунктов  Надо добавить в "пожелания" увеличить это число хотя бы до 100.  

    File scite\src\SciTEBase.h, Line 488:

    Код:
        enum { toolMax = 50 };

    Moжно увеличить, но должно оставаться не более 100, т.к. в другом месте зашито ограничение на число элементов в меню, вернее, со 101-го элемента начнутся пункты из другого меню.
     
    Добавлено 20060902-2040:
     
    mozers

    Цитата:
    В SciTE нет возможности создать невидимую в меню Tools команду.

    Там довольно глупая система. Для каждого(!) нажатия клавиши просматриваются список user.shortcuts и меню Tools и Language, все их элементы, ищутся определения клавиш, парсятся(!) каждый раз их текстовые описания (кроме Tools, там уже разобранные значения клавиш) и сравниваются с нажатой клавишей. Другого хранилища клавиш нет. Поэтому если элемента не будет в меню, то и определения binding'a как бы и нет. В user.shortcuts можно хранить только команды IDM_ и SCI_.
     
    Проще, наверное, добавить возможность вызова луа-фунций из user.shortcuts, но тогда надо добавить туда хоть чуть-чуть из системы savebefore:no и т.п. Другой путь - добавлять в меню Tools, но не показывать. Но, насколько я помню, в Виндовс нет  такого. Третий путь - создать отдельную структуру.
     
    ПС. Я сейчас третьим и занимаюсь Upd. Даже работает
     
    ППС. Ёлки, команды, вызываемые из Tools, получают уже готовые
     
    props.CurrentWord
    props.CurrentSelection
    props.SelectionStartLine
    props.SelectionStartColumn
    props.SelectionEndLine
    props.SelectionEndColumn
     
    Нигде не описано, поэтому каждый в каждой своей функции добывает их заново

    Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 01:38 03-09-2006 | Исправлено: Moon_aka_Sun, 06:05 03-09-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Moon_aka_Sun
    Цитата:
    Например, http://caladbolg.net/tools/sc/scite_file_browser.html
    Да... Точно. Раз мужик сделал подменю, то почему нам нельзя?

    Цитата:
    > Ctrl+Break у меня вдруг улетел наверх и встал 5м пунктом...
    У меня это происходит, когда вставляешь третью полоску - вместо неё подхватывается Ctrl+Break. Но разбираться с этим не буду - пусть "настоящие" виндовс-программисты займутся.
    АУ!!! Программисты! ОЧЕНЬ надо

    Цитата:
    enum { toolMax = 50 };
    Ура!    

    Цитата:
    В user.shortcuts можно хранить только команды IDM_ и SCI_
    Да ну???. Приведи рабочий пример с SCI_

    Цитата:
    добавить возможность вызова луа-фунций из user.shortcuts
    Ну это уже есть. Правда вызывается не сама команда, а пункт меню Tools ее содержащий.
    Делать это напрямую "добавляя туда хоть чуть-чуть из системы savebefore:no и т.п." мне кажется - некрасиво.

    Цитата:
    Третий путь - создать отдельную структуру.
    Команды эти будут нужны только для того, чтобы заменить стандартные обработчики своими собственными.
    Поэтому структура, на мой взгляд, должна выглядеть приблизительно так:
    Код:
    userproc.IDM.10.*=IDM_UPRCASE
      userproc.10.*=dostring case="U" dofile(props["SciteDefaultHome"].."\\tools\\ChangeCase.lua")
      userproc.mode.10.*=subsystem:lua,savebefore:no
     
      userproc.IDM.11.*=IDM_LWRCASE
      userproc.11.*=dostring case="L" dofile(props["SciteDefaultHome"].."\\tools\\ChangeCase.lua")
      userproc.mode.11.*=subsystem:lua,savebefore:no
    И содержание этой структуры не должно анализироваться при формировании меню Tools (хотя по виду они очень похожи).
    Запрос к ней должен идти при вызове соответствующих команд (IDM_UPRCASE, IDM_LWRCASE).
     
    ALeXkRU
    Цитата:
    В принципе, в Notepad++ макросы работают... а он же на том же движке.. можно попробовать портировать...
    Ага. Запись довольно примитивная - номер команды посылаемой окну и ее параметры (т.е. отредактировать после записи записанный макрос - с ума сойдешь). С другой стороны у Скайта помимо макросов полно других средств автоматизации (одно LUA чего стоит). Так что записать что нито на скорую руку, а потом проиграть - было бы удобно.
    В общем, если записывать макро сразу в виде кода lua - очень сложно, то поддерживаю идею о портировании

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 12:35 03-09-2006
    Moon_aka_Sun



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Да ну???. Приведи рабочий пример с SCI_

    Где-то в коде есть анализ на больше-меньше, т.е. попадает в SCI_ или в IDM_. Или я это где-то краем глаза прочёл. А что, SCI_ там не работают? А надо? Всё, что есть в SCI_, по-моему, доступно из Lua. Значит, скрипач не нужен (С).
     

    Цитата:
    Поэтому структура, на мой взгляд, должна выглядеть приблизительно так

    Это кому как. У меня она выглядит внутри как просто массив строк - определений кнопок, а снаружи - точно как command-структура, только называется shortcut. Естественно, name нет, вместо него key, а shortcut который прилагался к command, естественно, не нужен.
     
    shortcut.key.0.*=Ctrl+0
    shortcut.0.*=hello
    shortcut.mode.0.*=subsystem:lua,savebefore:no
     
    Таким макаром можно ещё 100 клавиш определить.
     
    Кстати, оказалось, что чтобы определить обратную косую, надо 1) повторить её дважды, 2) следующая строка должна быть пустой. Т.е.
     
    shortcut.key.99.*=Ctrl+\\
     
    shortcut.99.*=duplicate_backslashes_in_selection
    shortcut.mode.99.*=subsystem:lua,savebefore:no
     

    Цитата:
    Запрос к ней должен идти при вызове соответствующих команд (IDM_UPRCASE, IDM_LWRCASE).

    Так это ж совсем другое - ты хочешь стандартные команды, вызываемые из меню, заменить на свои. А зачем этом может быть (действительно) нужно? В общем, с таким размахом надо в MultiEdit или Emacs переползать
     

    Цитата:
    у Скайта  

    Хм. Уж скорее SciTE похож на сцыте Англичане читают скорее как сити или сайти.

    Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 14:02 03-09-2006 | Исправлено: Moon_aka_Sun, 14:09 03-09-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    SCI_ там не работают?
    Неа. Попробуй...

    Цитата:
    А надо?
    Если это будет, то возможности, конечно, возрастут, но мне придется увеличивать в несколько раз файл с командами SciTE
    Дописываю потихоньку... IDM_ - числовое значение - шорткат - название в меню. Надо еще команды окна редактирования добивать - а они то не на IDM_ вешаются...

    Цитата:
    ты хочешь стандартные команды, вызываемые из меню, заменить на свои. А зачем этом может быть (действительно) нужно?

    А зачем дублировать команды? У меня в меню "Правка" уже есть "Перевести в верхний/нижний регистр". Зачем мне видеть эту же команду в "Tools"? (а у меня там - улучшенный вариант, понимающий кирилицу).
    Поэтому идеальный случай, чтобы при вызове соответствующей команды из меню "Правка" просто молча выполнялась не встроенная IDM_UPRCASE или IDM_LWRCASE а мой скрипт.
    А вот скрыть из меню Tools какую то уникальную команду ни в каком другом  меню не видимую... Не понимаю кому это может понадобится  

    Цитата:
    В общем, с таким размахом надо в MultiEdit или Emacs переползать  

    Не... SciTE - гибче имхо...
    Вот тут мне сегодня Shura здорово помог. Так что и пункт про утилу "позволяющую не только подавать команды в активное окно SciTE но и получать с него необходимые данные" можно будет скоро убрать
    Таких плагинов с ее помощью понаделаем!!!...
     
    Добавлено:
    Moon_aka_Sun
    Сейчас пришла мысль. Можно же сделать событие onMenuSelect(int itemID)!
    Тогда подключать свои обработчики будет совсем просто
    А, кстати, че такое OnExecute(const char *s); ???

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 14:51 03-09-2006
    Moon_aka_Sun



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Не... SciTE - гибче имхо...  

    О, нет. Это совершенно не так! Как сейчас говрят, даже рядом не стоял.

    Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 16:00 03-09-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ладно, не будем спорить о том какой из редакторов лучше
    Просто я "кинул идею". Если кому то она показалась интересной то он ее реализует. Нет - будем мучиться дальше
    Вот, сейчас, причесывая список команд обнаружил ужасную несправедливость
    (почему это раньше никогда в голову не приходило?):
    На любой пункт меню можно с легкостью повесить свой шорткат (user.shortcuts=...)
    Однако есть солидный список шорткатов редактора, охватывающие далеко не все доступные команды, которые и переназназначить то нельзя и дополнить довольно проблематично...
    Ведь несправедливо же!
    Ты сам сказал, что судя по коду, в user.shortcuts=... можно использовать не только IDM_ но и SCI_ команды. И это - логично и правильно. Так почему ни одна из SCI_ команд из user.shortcuts=... не работает???
    Может Нейл просто лопухнулся маленько, а никто и не заметил?

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 16:54 03-09-2006
    Moon_aka_Sun



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers

    Цитата:
    На любой пункт меню можно с легкостью повесить свой шорткат (user.shortcuts=...)  

    По-моему, именно для этого user.shortcuts и делался. Кроме того, для посылки SCI_ команд Синтилле. Если оно теперь не работает, значит, где-то что-то сломалось. В коде проверка и ветвление есть (и память моя, значит, ещё помнит ).
     
    А для простой коррекции меню и шорткатов на нём достаточно любого редактора ресурсов

    Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 22:19 03-09-2006 | Исправлено: Moon_aka_Sun, 22:40 03-09-2006
    gansA

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Только сейчас заметил, что Scite стал хранить SciTE.recent и SciTE.ses в директории пользователя, ох как мне это не нравится , после использования на машине остается следы, в случае работы с флешки.
     
    Пришлось опять изобретать константу.

    Всего записей: 51 | Зарегистр. 07-12-2004 | Отправлено: 12:42 05-09-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    gansA
    Угу. Сделать это новшество опциональным - верное решение. Поделись кодом?


    ----------
    Интересно только неизведанное...

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 15:38 05-09-2006
    g0re

    Newbie
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    помогите ламеру
    ни как не получается прикрутить перловую подсветку для файлов HTA
    для скриптов в тегах

    Код:
     
    <script language="PerlScript">
    ...
    </script>
     

     
    в файле html.properties прописал
    keywords7.$(file.patterns.html)=$(keywordclass.perl)  
     
    в perl.properties

    Код:
     
    perl_keywords=\
    NULL __FILE__ __LINE__ __PACKAGE__ __DATA__ __END__ AUTOLOAD \
    BEGIN CORE DESTROY END EQ GE GT INIT LE LT NE CHECK abs accept \
    ........
     
    keywords.$(file.patterns.perl)=$(perl_keywords)
     
    keywordclass.perl=$(perl_keywords)
     

     
    ни чего не работает...
    но если в html.properties
    удалить все keywords*.$(file.patterns.html)=*
    и оставить  
    keywords2.$(file.patterns.html)=$(keywordclass.perl)
     
    то работает...
     
    не понимаю ни чего.
     
    как правильно прикрутить все это дело?

    Всего записей: 2 | Зарегистр. 05-09-2006 | Отправлено: 22:57 05-09-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    g0re
    Во-первых: не надо себя принижать
    Во-вторых: Можно, конечно, помучиться и как то заставить лексер html посвечивать отдельные перловые слова.
    Можно... Но зачем??? Ради того, чтобы одновременно видеть подсвеченным и html и perl код? Все равно или тот или другой не будут подсвечены путью.
    Да и всякие фичи обычно привязаны к конкретному лексеру.
    SciTE в любой момент времени работает только с одним лексером.
    Т.е. что я предлагаю:
    Не мучайся, а просто когда редактируешь перл код в своем файле, переключи лексер на Perl, а когда надумаешь тут же редактировать html - нажми F12 (если шорткат сам не переназначил) и все будет в шоколаде
     
     
    Добавлено:
    Не помню пробегала тут или нет ссылочка на еще одну сборку:
    http://www.fw-web.de/download/scite-ide.zip [4089KB]
    Немецкий товарищ Frank Wunderlich не равнодушен к Delphi (много настроек для этого языка).
    В дистрибутив включены несколько его и не его утилит и даже HEX-редактор.
    Скрипты кой какие имеются, api-файлы...
    В общем, можно наковырять кой чего и для себя
     
    ALL
    Как заставить SciTE редактировать read-only файлы?
    (точнее - сохранять в них отредактированный текст)

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 09:12 06-09-2006
    g0re

    Newbie
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    mozers
    а как же подсветка jscript, vbscript, php, phyton и т.п. в html?
    или лексер под это заточен?
     
    PS: если переключаться на подсветку perl синтаксиса, то все остальное становится ужасно страшных цветов и жутко напрягает
    неужели все таки ни как нельзя настросить?

    Всего записей: 2 | Зарегистр. 05-09-2006 | Отправлено: 13:14 06-09-2006
       

    Страницы: 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

    Компьютерный форум Ru.Board » Компьютеры » Программы » SciTE - Open Source Text Editor for Windows & Linux
    Widok (09-10-2007 14:48): лимит страниц. продолжаем здесь


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru