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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    тогда уж Штирлица лучше  
     
    Добавлено:
    mozers
    не подскажешь, почему при установке значения

    Код:
    # Russian code.page
    code.page=1251
    # character.set=204
    character.set=1251

    не подхватываются моноширинные шрифты?
    и кстатти, почему стоит KOI8 а не WIN (это в сборке)?

    Всего записей: 11006 | Зарегистр. 03-12-2003 | Отправлено: 12:33 18-07-2006
    mozers



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

    Цитата:
    тогда уж Штирлица лучше  

    Мы говорим про утилиту, вызов которой можно добавить в меню "Tools" дабы она перекодировала текст открываемого файла в кодировку win1251. Потом этот текст будет редактироваться в SciTE, а затем, при сохранении, та же утила должна будет перекодировать этот текст вновь в исходную кодировку.
    Как подключить xcode [45kB] - расписано достаточно подробно.
    Со Shtirlitz-ем [750kB] из ком.строки не работал не разу - он вообще может, да?
    (ты бы, если не в лом, привел примерчик как его присобачить)
     

    Цитата:
    почему стоит KOI8 а не WIN (это в сборке)?

    В сборке стоит все правильно:
    Код:
    code.page=1251
    character.set=204

    шрифт (моношинный или какой другой) задается тут:

    Код:
    style.*.32=$(font.base),...

    $(font.base) - пользовательская переменная, которая равна другой пользовательской переменной - font.base=$(font.monospace), а та уже равна font.monospace=font:Courier New,size:10
    Вот такая длинная цепочка
    Сделано это - чисто для удобства.
    Можно все упростить:
    style.*.32=font:Courier New,size:10

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 13:19 18-07-2006
    ALeXkRU



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

    Цитата:
    шрифт (моношинный или какой другой) задается тут

    это-то понятно... это я и сам знаю    
    поэтому и спрашиваю - при задании  

    Код:
    character.set=1251
    теряется моноширинный шрифт и найти почему - так мне и не удалось  

    Цитата:
    В сборке стоит все правильно

    да я и не спорю... просто интересно, почему KOI8 ?

    Цитата:
    Мы говорим про утилиту, вызов которой можно добавить в меню "Tools"  

    сорри тогда, не понял про что речь  
     
    Добавлено:
    вот утилитка с командной строкой:
    Windows Recoder 2.20

    Всего записей: 11006 | Зарегистр. 03-12-2003 | Отправлено: 14:40 18-07-2006
    mozers



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

    Цитата:
    при задании  character.set=1251  теряется моноширинный шрифт  
    Вообще то character.set - должен соответствовать 204 (этот набор соответствует русским символам при использовании unicode шрифтов). 1251 - кодовая страница русского шрифта для windows (code.page=1251).
    character.set=1251 - вообще бред какой то (по моему такого набора вообще нет в природе)...

    Цитата:
    просто интересно, почему KOI8 ?
    ГДЕ ???  

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 15:34 18-07-2006
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers
    это я изHelp'а (c GTK перепутал)   :

    Цитата:
    character.set  
    This setting allows changing the character set that is asked for when setting up fonts... To use Cyrillic characters on Windows, set character.set=204 (CP1251 encoding). To use Cyrillic characters on GTK+, set character.set=204 (KOI8-R encoding) or character.set=1251 (CP1251 encoding). Please send email if you use one of these settings and it works or doesn't or if you have information on how to support other languages

    Всего записей: 11006 | Зарегистр. 03-12-2003 | Отправлено: 16:41 18-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALeXkRU
    На GTK+ может и так (Линуксоиды должны знать правда это или нет), а Виндах charset KOI-8 в стандартных шрифтах отсутствует
    Можно, конечно, какой нить свой шрифт KOI-8 поставить (могу дать если надо) и назначить в SciTE отображение символов через него.
    Тогда тексты в KOI-8 можно будет смотреть в SciTE без перекодировки.
    Смотреть, но не редактировать. Чтобы редактировать придется еще какой нить keyboard mapper писать (как для DOS когда то YuriNB сочинил)...
    Это я так плавно перешел на другую тему "Как в SciTE редактировать KOI-8 файлы без перекодировки внешними утилитами"...

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 17:18 18-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALL
    Когда то я обошел заслуженным вниманием эту тулзу...
    Даже позволил себе несколько пренебрежительных слов в ее адрес...
    Сейчас, исправляя свою ошибку, я дополнил статью mirk-а о ней.
    Получился не обзор, а скорее - мольба о помощи ко всей пишущей братии...
    Почитайте, pls...

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 10:40 19-07-2006
    mirk



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

    Цитата:
     
    1. Убрать из кода дурацкую строчку SetForegroundWindow(w); которая переключает SciTE на последний открытый буфер при выполнении любой команды (дико раздражает).
     
    2. Научить утилу читать $(WindowID) из коммандной строки и не искать его самостоятельно, если прочесть удалось.
     
    3. Научить утилу читать данные, отдаваемые ей SciTE (например, по команде askproperty
     
    4. Можно научить утилу читать команды (их же может быть и много) не только с ком.строки, а и из файла
     
    5. Можно грохнуть все остальные команды, кроме -с за ненужностью

     
    1 - Ну это не проблема
    2 - хз даже что это такое
    3 - ты имеешь ввиду текст, или какие то внутренние команды?
    4 - А вот это уже интеерсно, получаются своеобразные bat файлы....
    5 - пускай висят, простые команды никогда не помешают.
     
    А так в общем задумка клевая, часть я смогу сделать, со своим корявым "знанием" C++

    Всего записей: 247 | Зарегистр. 21-05-2003 | Отправлено: 13:19 19-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mirk
    2 - В винде каждое окно имеет свой уникальный индефикатор. SciTE может сообщить вызываемой программе индефикатор своего окна (ну чтобы ей не пришлось его искать самостоятельно).
    3 - значения внутрених параметров SciTE (например askproperty возвращает значение любой переменной из конфига т.е. текстовое значение).
    5 - тогда можно добавить вызов простых команд из меню Тут не надо использовать SciTE Director Interface, просто окну SciTE с помощью WM_COMMAND тупо посылается номер менюшной команды.

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

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers
    Смотрю последнюю сборку круто ))), што имею сказать:
    1. у меня есть в наличии asp.api, куда кидать?
    2. файл nncrontab_.properties можно добавить следующее:

    Цитата:
     
    # help command
    command.help.$(file.patterns.nncron)=$(CurrentWord)!$(SciteDefaultHome)\help\nncron.chm
    command.help.subsystem.$(file.patterns.nncron)=4
     
    # exec command
    command.build.*.tab="D:\Program Files\nnCron\nncron.exe" -reload
    command.go.*.tab="D:\Program Files\nnCron\nncron.exe" -run $(CurrentWord)
     

    3. файл sql.properties для  MS SQL (у мну есть более подробный чем в сборке)

    Цитата:
     
    # execute
    command.go.$(file.patterns.mssql)=osql.exe -E -S(local) -i"$(FilePath)"  -n -w1000 -h-1
     

     

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



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    gansA
    Предложения хорошие Добавлю в новую сборку. Мыло мое - mozers(собака)mail.ru - шли api туда.
    только наверное лучше указать вместо $(CurrentWord)!$(SciteDefaultHome)\help\nncron.chm
    стандартное местоположение - "С:\Program Files\nnCron\nncron.chm"

     
    ALL
    При активной помощи mimir довел до ума скрипт поиска функций и процедур в коде. Куда там scitepm-у до него
     
     
    Добавлено:
    Выкладываю новое ядро SciTE_170_9Ru_beta
     
    Помимо ставшими стандартными доработок, mimir внес в код очень много нового:
    Цитата:
    1. В списки сокращений (abbrev) можно добавлять пользовательские переменные:
         - %SEL% - выделенный текст
         - %CLP% - текст из буфера обмена
         - %GUID% - уникальный GUID нового объекта (идея принадлежит codewarlock1101)
      Так, например, забив в файл abbrev такую строку:
      <a =<a href="|" alt="" target=_blank>%SEL%</a>  
      пишем '<a Привет' и выделяем 'Привет' (Ctrl+Shift+Left). Затем нажимаем Сtrl+B - получаем готовую конструкцию.
      Единственная тонкость заключается в том, что курсор при этом должен распологаться на конце сокращения (после '<a ' пробелы тоже
      учитываються). Я пишу так: все сокращения у меня заканчиваються пробелом; ввожу сокращение, через пробел параметр, и нажимаю
      Ctrl+Shift+left;Сtrl+B.
       
    2. Добавлено событие OnDoubleClickEx(key), где key это строка вида "Ctrl;Alt;Shift;"
         т.е. теперь можно написать например так:
         local ctrl  = string.find(key,'Ctrl', 1)
         if(ctrl~=nil)then ....
       
    3. Поправил ошибку при которой нельзя задавать CommentKeyWord* заглавными буквами.
         *В Scite есть возможность создания комментариев для некоторых лексеров (например сpp, sql).
         Они начинаються с //! /*! /** .
         Их отличительная особенность заключается в том, что в них можно подсвечивать отдельные ключевые слова, начинающиеся с "@". Например
      @todo. В стандартной версии можно использовать только строчные буквы.
       
    4. Добавлено 3 новых класса ключевых слов для LexCpp (т.е. теперь можно задавать до 4х дополнительных наборов слов с разной подсветкой)
       
    5. Добавлена возможность настраивать ширину и цвет курсора индивидуально для каждого лексера, например, так:
         caret.fore.$(file.patterns.cpp)=#FF0000
         caret.width.$(file.patterns.cpp)=3
         А то получаеться не удобно если у тебя для разных языков и имеется различные цветовые решения и разным светлым и темным фоном, а курсор - лишь одного цвета).
       
    6. Добавлена возможность использовать ":" в обозначениях операторов (для LexCpp и LexSQL). Ранее аналогичная правка коснулась лишь LUA.

     

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 11:56 21-07-2006 | Исправлено: mozers, 12:01 21-07-2006
    mirk



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

    Цитата:
     Поправил ошибку при которой нельзя задавать CommentKeyWord* заглавными буквами.
       *В Scite есть возможность создания комментариев для некоторых лексеров (например сpp, sql).
       Они начинаються с //! /*! /** .
       Их отличительная особенность заключается в том, что в них можно подсвечивать отдельные ключевые слова, начинающиеся с "@". Например
    @todo. В стандартной версии можно использовать только строчные буквы.
     

    слава мимиру Если я не ошибаюсь это его работа...

    Всего записей: 247 | Зарегистр. 21-05-2003 | Отправлено: 15:57 21-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ну ДА, я же написал! Все доработки кода делал mimir (мне на такое мозгов не хватает
    Жаль, конечно, что другие С программисты не помогают
    А то некоторыми идеями мне mimir-а увлечь так и не удалось
    А жаль (( Очень жаль...

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

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

    Цитата:
    Добавлена возможность использовать ":" в обозначениях операторов (для LexCpp и LexSQL). Ранее аналогичная правка коснулась лишь LUA.  

    ":" - Можно использовать в DocCommentKeyword ( @TODO: - сдесь ":" будет считаться частью слова)  
    И еще добавил в LexSQL слово "case" для начала фолдинга.

    Всего записей: 77 | Зарегистр. 14-01-2006 | Отправлено: 17:08 21-07-2006
    codewarlock1101



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ВСЕМ привет!
    Предлагаю скрипт для извращенцев: "множественное позиционирование" в коде.
     
    function GoToMark(Xcom)
     local s,e  
     if (Xcom=='N') then
        s,e = editor:findtext(string.char(14),0,editor.CurrentPos);
     end
     if (Xcom=='P') then
        s,e = editor:findtext(string.char(14),0,editor.CurrentPos-1,0);
     end
     if s~=nil and e~=nil then
       editor:SetSel(s,e)
     end
    end
     
    Подключение:
     
    #---------------------------------------------------------------
      command.name.35.*=GoTo Prev MARK
      command.35.*=GoToMark P
      command.mode.35.*=subsystem:lua,savebefore:no
      command.shortcut.35.*=Alt+O
     
     
      command.name.36.*=GoTo Next MARK
      command.36.*=GoToMark N
      command.mode.36.*=subsystem:lua,savebefore:no
      command.shortcut.36.*=Alt+P
    #---------------------------------------------------------------
    Смысл простой: если нужно вставить в текущее место (где каретка) не мальенький кусок кода из места, которое находится очень далеко, поросто нажимаем Crtl+Shift+N (вставляет спец символ <SO>) идем в то место, копирум что надо, нажимает Alt+O (или Alt+P) и попадаем в нужное место. Так же полезно использовать в abbrev'ах, например
     
    select | from <SO> where <SO>
    (примет плоховат, потому что маленькое расстояние между словам (которые лапками писать-то 3 сек), но если говорить о "стандартах" некоторых фирм, например при написании новой процедуры, со всеми описаниями и тому подобными вещами, то беглая пробежка по "козырным" местам очень удобна).
    Можно перенастроить на любой "удобный" символ.
     
    ВСЕМ ВОПРОС  
     Подскажите поджалуйста, что есть макросы для Scite, и какую пользу можно выловить при их использовании

    Всего записей: 92 | Зарегистр. 12-03-2005 | Отправлено: 00:30 25-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    codewarlock1101
    Цитата:
    Предлагаю скрипт для извращенцев
    Наверное я поизвращаюсь...

    Цитата:
    что есть макросы для Scite
    Задавал подобный вопрос на офф-форуме - никто не ответил dB6 тоже пытался что то прояснить ковырянием исходников - так же ничего конкретного
    Поэтому - присоединяюсь к вопросу - жутко интересно как пользоватся этим секретным оружием...  
     
     
    Добавлено:
    Задам еще пару вопросов по LUA (а вдруг кто поможет?):
    1. Как сохранить текущий буфер? (scite.Save() - нет такой команды
    2. Как закрыть текущий буфер? (scite.Close() - нет такой команды
    3. Как заставить SciTE перечитать настройки, после того как я их изменил с помощью скрипта? (scite.ReReadProperties() - нет такой команды
    (Если файл .properties изменять непосредственным редактированием из SciTE, то при его сохранении все настройки будут мгновенно применены. Т.е. он, гад, их тут перечитывает все таки...)
     
    В общем то задача состоит в том, чтобы динамически из меню менять настройки (не 2-3 штуки, а подключать/отключать к имеющимся .properties с помощью import целый файл(ы)). Эту задачу я решил. Все поключается/отключается. Только для того, чтобы SciTE увидел эти новые настройки, приходится его вручную закрывать, а потом запускать вновь. Не слишком это хорошо ((
    Любые идеи???

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 10:24 25-07-2006
    mimir

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Если мне не изменяет память то настройки считываються каждый раз при переключении буферов. Поэтому после того как сохроняешь настройки и переключаешься на нужный документ, то они и считываються. Вроде так. А на счет сохранения я не знаю.

    Всего записей: 77 | Зарегистр. 14-01-2006 | Отправлено: 10:47 25-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mimir
    Цитата:
    настройки считываються каждый раз при переключении буферов

    Откуда взялось это заблуждение? (Просто в офф-форуме ответили точно так же).
    На деле - не фига - ни переключение буферов ни переключение лексеров горю не помогают А вот, сам попробуй:
    Код:
    local file = props["SciteDefaultHome"].."\\languages\\cpp_.properties"
    local classic = 'import languages\\cpp_style_classic_'
    io.input(file)
    local text = io.read('*a')
    local find = string.find(text, '#'..classic)
    if find == nil then
        text = string.gsub(text, classic, '#'..classic)
    else
        text = string.gsub(text, '#'..classic, classic)
    end
    io.output(file)
    io.write (text)
    io.close()
     
    В самом низу файла cpp_.properties у меня строка
    -import -languages\cpp_style_classic_
    которую я скриптом то комментирую то снимаю с нее комментарий.
    cpp_style_classic_.properties - твой с симпатишной классической раскраской

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

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

    Цитата:
    Откуда взялось это заблуждение?  

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

    Всего записей: 77 | Зарегистр. 14-01-2006 | Отправлено: 13:06 25-07-2006
    mozers



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

    Цитата:
     Из опыта и сдравого смысла

    Только не работает твой "сдравый смысл" ни хрена
    Не перечитывает SciTE файл .properties хоть что хошь с ним делай. Токма перезагрузка
    Вот если ты открыл файл .properties в SciTE - то совсем другое дело. При его сохранении все настройки тут же вступают в силу.
    Я даже сделал такую попытку:
    Код:
    local file = props["SciteDefaultHome"].."\\languages\\cpp_.properties"
    local classic = 'import languages\\cpp_style_classic_'
    scite.Open(file)
    local text = editor:GetText()
    local find = string.find(text, '#'..classic)
    if find == nil then
        text = string.gsub(text, classic, '#'..classic)
    else
        text = string.gsub(text, '#'..classic, classic)
    end
    editor:SelectAll()
    editor:ReplaceSel(text)
    scite.SaveBuffer()
    scite.CloseBuffer()
     

    Все бы хорошо, только последних 2х комманд в природе не существует

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 15:38 25-07-2006 | Исправлено: mozers, 15:44 25-07-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.Board
    © Ru.Board 2000-2020

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru