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

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



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dB6
     
    Прости я имел ввиду, можно ли вставить свой пункт (т.е. ссылку на скрипт...) ???

    Всего записей: 568 | Зарегистр. 13-01-2005 | Отправлено: 22:16 07-11-2005
    dB6



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    VedunO
    Насколько следует из документации (с погрешностью на мое знание английского), нельзя добавить туда ссылку на скрипт. А можно только определенные команды самого SciTE:

    Цитата:
    Named IDs and numeric IDs below 2000 are SciTE menu commands which can be found in from scite/src/SciTE.h


    Всего записей: 408 | Зарегистр. 09-02-2003 | Отправлено: 00:23 08-11-2005
    mozers



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

    Цитата:
    можно ли вставить свой пункт (т.е. ссылку на скрипт...) ???

    Можно исхитрится так:

    Код:
    user.context.menu=\
    ||\
    Мой пункт|IDM_TOOLS|

    Так запустится 1й пользовательский пункт меню Tools. Ну а в качестве этого первого пункта может быть и твой скрипт
    Наверное, существует какой то способ запустить любой пункт меню, но только мои эксперименты не увенчались успехом
    Кто знает - подскажите!
     
    ALL
    Еще в списке внутренних команд SciTE есть такая как IDM_MACROPLAY
    Чо это за макросы? Как с ними работать?

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 12:11 08-11-2005
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Все. Допетрил  
    Чтобы вставить любой пункт из меню Tools (Сервис) в ваше контекстное меню
    надо прибавить номер этого пункта к числу 1100
    И все!
    Непонятно? Объясняю на примере:
    В меню Tools у меня имеется такая команда:
    Код:
    command.name.22.*=ASCII Table
    Вставляю ее в контекстное меню:
    1100+22=1122
    Код:
    user.context.menu=\  
    ||\  
    ASCII Table|1122|
    Эх, какие просторы для творчества раскрываются...

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 23:38 08-11-2005
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ау, люди!... Неужель никто ответы на мои вопросы не знает?
     
    При использовании внешних команд, встраиваемых в меню Tools в основном используется следующая технология:
    1. Текущий файл сохраняется
    2. С помощью команды из меню Tools типа
    Код:
    command.9.*="$(SciteDefaultHome)\tools\WordCheck.vbs" "$(FilePath)"
    command.subsystem.9.*=2
    запукается внешний скрипт обрабатывающий весь файл и сохраняющий его уже измененным.
    3. Если в .properties стоит load.on.activate=1 то SciTE чует что текущий файл изменен внешней программой и перезагружает его либо молча, либо с выдачей запроса (are.you.sure.on.reload=1).
     
    Во внешний скрипт в качестве аргумента можно передать не только имя файла, но и просто выделенный текст $(CurrentSelection). Но только возникает архиважная задача - Как после обработки этого текста скриптом получить его взад ??? (т.е. что бы команда command.replace.selection все таки работала)
    Без проблем результат выполнения возвращается только в случае использования LUA скриптов.
    Но, увы, из LUA скрипта низзя подключить COM-объект и поиметь его свойства и методы...
    А без этого все превращается в детскую забаву ((
    Или я ошибаюсь ???

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 15:36 09-11-2005
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Театр одного актера продолжает свою работу.
    Файл HELP.JS
    Код:
    //  -----------------------------------------------------------------------
    //  SciTE Help Context
    //  mozers™ icq#256106175
    //  -----------------------------------------------------------------------
    //  Вызывает справку по SciTE
    //  Подсвечивает все вхождения выделенного текста и позиционирует справку на первое найденное вхождение
    //  Для подключеня добавьте в свой файл .properties следующие строки:
    //  command.name.31.*=SciTE Help
    //  command.31.*=wscript "$(SciteDefaultHome)\tools\help.js" "$(SciteDefaultHome)\doc\SciTEDoc.html" "$(CurrentSelection)"
    //  command.subsystem.31.*=2
    //  command.shortcut.31.*=F1
    //  command.mode.31.*=savebefore:no
    //  -----------------------------------------------------------------------
     
    var Args = WScript.Arguments;
    var objIE = new ActiveXObject('InternetExplorer.Application');
    objIE.MenuBar = 0;
    objIE.ToolBar = 0;
    objIE.StatusBar = 0;
    objIE.Navigate (Args(0));
    objIE.Visible = 1;
     
    if (Args(1)) {
        var r=objIE.document.body.createTextRange();
        for(var i=0;r.findText(Args(1));i++){
            r.execCommand('BackColor','','yellow');
            r.execCommand('CreateBookmark','','bmk'+i);
            r.collapse(false);
        }
        if (i==0){
            WScript.Echo ('Текст не найден !');
        } else {
            objIE.document.location.href=objIE.document.location.href+'#bmk0';
        }
    }
     
     
     
    Добавлено:
    Вот еще кусок из моего SciTEStartup.lua:

    Код:
    -- ======================================================
    -- Перевести в ВЕРХНИЙ (Ctrl+Shift+U) и нижний регистр (Ctrl+U)
    -- (т.к. встроенная функция не понимает кириллицу)
    -- За основу был взят скрипт, взятый на http://scite.ruteam.ru
    function InvertCase(case)
      local str = editor:GetSelText()
      local res = ''
      if str ~= nil then
        for i = 1, string.len(str) do
          local strS = string.sub(str,i,i)
          local strB = string.byte(strS,1)
          if case == 'L' and (strB > 191 and strB < 224) then --// [А-Я]
            res = res..string.char(strB + 32)
          elseif case == 'U' and (strB > 223 and strB <= 255) then --// [а-я]
            res = res..string.char(strB - 32)
          elseif case == 'L' and (strB > 64 and strB < 91) then --// [A-Z]
            res = res..string.lower(strS)
          elseif case == 'U' and (strB > 96 and strB < 123) then --// [a-z]
            res = res..string.upper(strS)
          else
            res = res..strS
          end
        end
      end
      editor:ReplaceSel(res)
    end
     
    -- ======================================================
    -- Функция для быстрого добавления команд в меню Tools
    -- (Для тех, кому лень вручную прописывать 5 строк для каждой команды в .properties)
    function ToolsCommand(idx,name,cmd,shortcut)
      local which = '.'..idx..'.*'
      props['command.name'..which] = name
      props['command'..which] = cmd
      props['command.subsystem'..which] = '3'
      props['command.mode'..which] = 'savebefore:no'
      props['command.shortcut'..which] = shortcut
    end
     
    -- а теперь добавляем нужные нам команды  в меню Tools
    ToolsCommand (11,'Перевести в ВЕРХНИЙ регистр','InvertCase U','Ctrl+Shift+U')
    ToolsCommand (12,'Перевести в нижний регистр','InvertCase L','Ctrl+U')
     
    ToolsCommand (38,'Увеличить шрифт','Zoom_In','Ctrl+KeypadPlus')
    ToolsCommand (39,'Уменьшить шрифт','Zoom_Out','Ctrl+KeypadMinus')
     
    -- ======================================================
    -- Увы, но я не нашел другого способа, чтобы вызвать встроенные команды SciTE
    -- поэтому приходится вызывать встроенные команды из LUA скрипта
    -- Зачем это надо? Ну хотя бы затем, что этих команд просто нет в меню и поместить их туда можно, чтобы напомнить пользователю шорткаты для их вызова.
    -- Кроме того, так можно задать другой шорткат для вызова команды или изменить ее поведение.
    function Zoom_In()
      editor:ZoomIn()
    end
    function Zoom_Out()
      editor:ZoomOut()
    end
     
     

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 22:40 14-11-2005
    dB6



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

    Цитата:
    Театр одного актера продолжает свою работу.  

    Юмор - это хорошо.. Но все-таки ты - молодец!

    Цитата:
    -- Перевести в ВЕРХНИЙ (Ctrl+Shift+U) и нижний регистр (Ctrl+U)  
    -- (т.к. встроенная функция не понимает кириллицу)  
    -- За основу был взят скрипт, взятый на http://scite.ruteam.ru  

    Добавил бы еще возможность инвертирования регистра. Т.е. проверку на еще один case, типа I - Invert.
     
     
    Добавлено:
    Кстати, не работает инвертирование регистра для таких символов, как Ў, ў, І, і - а в белорусском языке без них никак. Можешь посмотреть, добавить?  
     
    Добавлено:

    Цитата:
    Файл HELP.JS
    Код:
    Код:
    //  -----------------------------------------------------------------------  
    //  SciTE Help Context  
    //  mozers™ icq#256106175  
    //  -----------------------------------------------------------------------  
    //  Вызывает справку по SciTE  
    //  Подсвечивает все вхождения выделенного текста и позиционирует справку на первое найденное вхождение  
    //  Для подключеня добавьте в свой файл .properties следующие строки:  
    //  command.name.31.*=SciTE Help  
    //  command.31.*=wscript "$(SciteDefaultHome)\tools\help.js" "$(SciteDefaultHome)\doc\SciTEDoc.html" "$(CurrentSelection)"  
    //  command.subsystem.31.*=2  
    //  command.shortcut.31.*=F1  
    //  command.mode.31.*=savebefore:no  
    //  -----------------------------------------------------------------------

    А не лучше ли написать:

    Код:
     
      command.name.31.*.properties=SciTE Help  
      command.31.*.properties=wscript "$(SciteDefaultHome)\tools\help.js" "$(SciteDefaultHome)\doc\SciTEDoc.html" "$(CurrentSelection)"  
      command.subsystem.31.*.properties=2  
      command.shortcut.31.*.properties=F1  
      command.mode.31.*.properties=savebefore:no  
     

    Чтобы привязка была именно к файлам .properties

    Всего записей: 408 | Зарегистр. 09-02-2003 | Отправлено: 22:01 15-11-2005
    mozers



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

    Цитата:
    Добавил бы еще возможность инвертирования регистра
    А оно кому то действительно надо? (Я почему и переделал, что меня это инвертирование всех символов подряд бесило...)
    Цитата:
    Ў, ў, І, і - а в белорусском языке без них никак. Можешь посмотреть, добавить?  
    Можно, конечно. Только там 1 надо прибавлять, а не 32... (Не так красиво код будет смотреться

    Цитата:
    Чтобы привязка была именно к файлам .properties
    Согласен. А по большому счету, можно задать patterns, например так:
    Код:
    SciHELP=*.properties;*.lua;*.iface
    и привязать команду к нему
    Код:
    command.name.31.$(SciHELP)=SciTE Help
    command.31.$(SciHELP)= ... ну и т.д...
    Интересная фича. Даже пункт этот из меню исчезает при открытии файлов с расширениями, отличными от patterns.
    Чем не способ создавать индивидуальное меню для заданных типов файлов
    Жаль, что только Tools... Вот все бы целиком...
     
    Кстати воспользовался твоей подсказкой и добавил в SciTEGlobal.properties (у меня там все настройки) несколько команд:
    Код:
    import [International]
    import [Print]
    import [Export]
    import [StatusBar]
    import [Tools]
    import [ContextMenu]
    import [Shortcuts]
    import [Styles]
    import [Help]
    #import [Warnings]

    Т.е. вынес часть настроек в отдельные файлы. Ну ОЧЕНЬ удобно (скобки [] - просто чтоб в меню лучше смотрелось)
    Жаль что в команде import нельзя задать путь к файлу...
    При доступности исходного кода и обилии программирующих на С мы терпим такую несправедливость

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 23:47 15-11-2005
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Вот. Теперь понимает белорусские  Ў І / ў і  и может инвертировать:
    Код:
    -- Перевести в ВЕРХНИЙ (Ctrl+Shift+U) и нижний регистр (Ctrl+U)
    -- (т.к. встроенная функция не понимает кириллицу)
    -- За основу был взят скрипт, взятый на http://scite.ruteam.ru
    function SetCase(case)
      local str = editor:GetSelText()
      local res = ''
      if str ~= nil then
        for i = 1, string.len(str) do
          local strS = string.sub(str,i,i)
          local strB = string.byte(strS,1)
          if case ~= 'U' and (strB > 191 and strB < 224) then --// [А-Я]
              res = res..string.char(strB + 32)
          elseif case ~= 'U' and (strB == 161 or strB == 178) then -- // Ў І
              res = res..string.char(strB + 1)
          elseif case ~= 'L' and (strB > 223 and strB <= 255) then --// [а-я]
              res = res..string.char(strB - 32)
          elseif case ~= 'L' and (strB == 162 or strB == 179) then -- // ў і
              res = res..string.char(strB - 1)
          elseif case ~= 'U' and (strB > 64 and strB < 91) then --// [A-Z]
            res = res..string.lower(strS)
          elseif case ~= 'L' and (strB > 96 and strB < 123) then --// [a-z]
            res = res..string.upper(strS)
          else
            res = res..strS
          end
        end
      end
      editor:ReplaceSel(res)
    end
    ------------------------------------------------------------------
    -- а теперь добавляем нужные нам команды  в меню Tools
    ToolsCommand (11,'Перевести в ВЕРХНИЙ регистр','SetCase U','Ctrl+Shift+U')
    ToolsCommand (12,'Перевести в нижний регистр','SetCase L','Ctrl+U')
    ToolsCommand (13,'Инвертировать регистр','SetCase I','Ctrl+I')
     
     
     
    Добавлено:
    Смастерил скрипт проверки орфографии выделенного фрагмента текста.
    Кому надо?

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 00:34 17-11-2005
    dB6



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers
    Молодец!!!! Спасибо!!!)
    Только не удержусь еще от одного замечания - не работает, если работаем с текстом в кодировке DOS.

    Всего записей: 408 | Зарегистр. 09-02-2003 | Отправлено: 01:19 17-11-2005
    gansA

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

    Цитата:
    скрипт проверки орфографии выделенного фрагмента текста  

    оченно интересно .
     
    Просто твои изыскания по поводу Com-объектов подтолкнули на поиск вариантов, вот что нашел http://www.tecgraf.puc-rio.br/~rcerq/luacom/, а вот траблы с использованием http://article.gmane.org/gmane.editors.scite.general/4409/match=luacom, после непродолжительных экспериментов получил тот же nil и забил ...

    Всего записей: 51 | Зарегистр. 07-12-2004 | Отправлено: 14:09 18-11-2005
    8AleX8



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Прошу прощения за мелочные замечания. Но не стоит забывать что:
    • SciTE является кроссплатформенным редактором.
    • SciTE распространяется под лицензией GPL.

    Следовательно:
    • Платформо-зависимые решения не применимы под другими OS.
    • При интеграции с другими програмными продуктами стоит отдать предпочтение открытым продуктам перед проприативными.

    Всего записей: 1813 | Зарегистр. 11-12-2001 | Отправлено: 15:13 18-11-2005
    Roman_Stinger_Ilyin



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите пожалуйста как в .api файле для SciTE сделать перенос трок
    есть функция
    myfunc (args) описание_очень_большое
     
    как сделать чтобы по Ctrl+Shift_Space показывалась подсказка многострочная?

    Всего записей: 7 | Зарегистр. 13-01-2005 | Отправлено: 15:35 18-11-2005
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    gansA
    Поздавляю с первым постом! УРА! В нашем полку прибыло
    А какие интересные ссылки  Обязательно все сам перепроверю...
    Имхо если люди выпускают уже 4-ю стабильную версию, то работать то она всяко должна...
    Проверку орфографии выкладываю. Прошу сильно не бить. Измудрялся все реализовать стандартными средствами. Работать то, оно конечно работает, но уж больно средства то не слишком подходящие. Вот если получится теперь (с помощью твоих ссылок) подключить COM-объекты прямо из LUA скрипта, то все может быть гораздо лучше...
    Фрагмент из SciTEStartup.lua
    Код:
    --Проверка орфографии выделенного фрагмента текста
    function SpellCheck (path)
      local txt = editor:GetSelText()
      if string.len(txt) ~= 0 then
        editor:Copy()
        local exit_code = os.execute('wscript "'..path..'"')
        if exit_code == 0 then
          editor:Paste()
        end
      end
    end
     
    -- добавляем команду  в меню Tools
    -- (Функцию для автоматизированного добавления выкладывал уже
    -- если не нравится, то можно и ручками дописать 5 строчек в .properties)
    ToolsCommand (32,'Проверка орфографии','SpellCheck $(SciteDefaultHome)\\tools\\SpellCheck.vbs','')

    Текст SpellCheck.vbs
    Код:
    ' Проверка орфографии текста, находящегося в буфере обмена
    ' Исправленный текст возвращается в буфер
    ' --------------------------------------------------------------------------
    Option Explicit
    Dim objWord, exit_code
     
    Set objWord = WScript.CreateObject("Word.Application")
    objWord.WindowState = 2 'wdWindowStateMinimize
    objWord.Visible = False
    objWord.Documents.Add
    objWord.Selection.Paste
     
    If Not objWord.CheckSpelling(objWord.ActiveDocument.Range(0,objWord.Selection.End)) Then
        If objWord.Options.CheckGrammarWithSpelling = True Then
            objWord.ActiveDocument.CheckGrammar
        Else
            objWord.ActiveDocument.CheckSpelling
        End If
        objWord.ActiveDocument.Range(0,objWord.Selection.End).Copy
    Else
        MsgBox "Текст не содержит ошибок!"
        exit_code = 1
    end if
     
    objWord.ActiveDocument.Close 0 'wdDoNotSaveChanges
    objWord.Quit True
    Set objWord = Nothing
    WScript.Quit (exit_code)
     
     
    dB6
    Цитата:
    не работает, если работаем с текстом в кодировке DOS
    Все усложняем и усложняем задачу Ладно сделаю. Это - вполне реально

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 16:02 18-11-2005
    gansA

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

    Цитата:
    Поздавляю с первым постом! УРА! В нашем полку прибыло  

    "Дык чукча не писатель, чукча читатель", мониторю ветку давно, с твоим появлением она вроде как ожила .

    Цитата:
    SpellCheck.vbs

    обязательно попробую.
     
    8AleX8
    Вот вроде как кроссплатформенное решение , за исключением ехплорера (мож кому пригодится, хотя куски уже кидал на  http://scite.ruteam.ru/)

    Цитата:
     
    --//============================================================================
    --// расчет выражения выделенного в редакторе
    --// или обработка выделенного URL
    --// или сводка по документу
    --//============================================================================
    local str = editor:GetSelText()
     
    if (string.len(str) > 2) then
        if (not string.find(str,'%a')) then
            print(assert(loadstring('return '..str),str)())
        else
            if string.find(str,'http://(.*)') then
                local browser = ('explorer ' .. str .. ' &')
                os.execute(browser)
            end
        end
    else
        --//========================================================================
        --// source http://www.rrreese.com/scite/wordcount.lua
        --//========================================================================
        output:ClearAll()
     
        local whiteSpace = 0;   --number of whitespace chars
        local nonEmptyLine = 0; --number of non blank lines
        local wordCount = 0;    --total number of words
     
        --Calculate whitespace control
        for m in editor:match("\n") do
            whiteSpace = whiteSpace + 1;
        end
        for m in editor:match("\r") do
            whiteSpace = whiteSpace + 1;
        end
        for m in editor:match("\t") do --count tabs
            whiteSpace = whiteSpace + 1;
        end
     
        --Calculate non-empty lines and word count
        local itt = 0;
        while itt < editor.LineCount do --iterate through each line
            local hasChar, hasNum = 0;
            line = editor:GetLine(itt);
     
            if line then
                hasAlphaNum = string.find(line,'%w');
            end
     
            if (hasAlphaNum ~= nill) then
                nonEmptyLine = nonEmptyLine + 1;
            end
     
            if line then
                for word in string.gfind(line, "%w+") do wordCount = wordCount + 1 end
            end
     
            itt = itt + 1;
        end
     
        print("Символов: ",(editor.Length) - whiteSpace);
        print("Слов: \t",wordCount);
        print("Линий (всего): ",editor.LineCount);
        print("Линий (текст): ", nonEmptyLine);
    end
     
    --//http://www.ya.ru
    --//=(2*3)/56+1-(4^2)
     
     


    Всего записей: 51 | Зарегистр. 07-12-2004 | Отправлено: 16:41 18-11-2005
    mozers



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

    Цитата:
    как в .api файле для SciTE сделать перенос трок  

    ИМХО тултипы в SciTE однострочные по определению, так что редактирование .api делу не поможет
    8AleX8
    Лично меня, сидящего под Виндами, кроссплатформенность SciTE как то мало колышет... И прятать от людей удачную находку только потому что она не работает под Х-ами считаю преступлением.
     
    Добавлено:
    gansA
    Цитата:
    с твоим появлением она вроде как ожила  
    Если бы "чукча" писал, а не только читал, то оживление произошло бы гораздо раньше
    Меня в эту ветку когда то привлек 8AleX8 который на протяжении уже нескольких лет не дает ей угаснуть. Но, правда, тогда я так ничего и не просек в этом редакторе ( FAQ-а путного как не было так и нет) и забросил это дело.
    И вот теперь, больше чем через годовалый период забвения, я поставил плагин к Total Commander Scintilla Lister и интерес возник вновь... В принципе я - такой же дурак, каким и был год назад, но зато есть интерес ковырнуть эту тему поглубже
    Классный ты скрипт выложил! Мне очень понравился (особенно верхняя половина), нижняя - в принципе дублирет инфу со строки состояния, но тоже интересно. (На http://scite.ruteam.ru/ я его не видел. Да и не мудрено там ничего не найти... То ли дело - тут  

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 16:54 18-11-2005
    gansA

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

    Цитата:
    Если бы "чукча" писал

     писал, писал но на http://scite.ruteam.ru/, а после того как форум "покинул" Тугаринов Сергей там стало не оченно интересно
     
    Как пример тема руссфикации вывода в консоль http://forum.ruteam.ru/index.php?action=vthread&forum=1&topic=193&page=0#572, таким образом правлю под себя каждую сборку, работает  
     
    Или же тема упраления положения консолью из скрипта http://forum.ruteam.ru/index.php?action=vthread&forum=22&topic=175, на что в приципе уже забил повесив управление консолью на Esc и Shift+Esc, а вот скрипт приведенный в теме юзаю постоянно, оченно удобно для анализа кода и лог файлов.

    Цитата:
     
    --//============================================================================
    --// поиск выделенного фрагмента с выводом номеров строк в консоль
    --//============================================================================
    local findText = editor:GetSelText()
    local flag = 0
     
    output:ClearAll()
     
    if string.len(findText) > 0 then
        trace('>find: '..findText..'\n')
        local s,e = editor:findtext(findText,flag,0)
        local m = editor:LineFromPosition(s) - 1
        local count = 0
     
        while s do
            local l = editor:LineFromPosition(s)
     
            if l ~= m then
                count = count + 1
     
                local str = string.gsub(' '..editor:GetLine(l),'%s+',' ')
     
                local add = ':'..(l + 1)..':'
                local i = 8 - string.len(add)
                local ind = ' '
                while (string.len(ind) < i) do
                    ind = ind..' '
                end
     
                trace(add..ind..str..'\n')
                m = l
            end
     
            s,e = editor:findtext(findText,flag,e+1)
        end
     
        trace('>result: '..count..'\n')
    else
        trace('! Select symbol and replay')
    end
     

     
    mozers
    Как дела с Com?

    Всего записей: 51 | Зарегистр. 07-12-2004 | Отправлено: 11:14 20-11-2005 | Исправлено: gansA, 11:26 20-11-2005
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    gansA
    Классный скрипт Спасибо! Буду пользовать

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

    Цитата:
    Как дела с Com?
    Хреново Если использовать внешний движок LUA то все работает (но так, сам понимаешь, неинтересно. Я с тем же успехом могу пользовать WSH скрипты).
    А подключенная к Скайту luacom.dll (с помощью директивы loadlib) у меня так же ни хрена не работает...
    Я так думаю, что во первых - надо лучше знать LUA (функцию loadlib я впервые увидел в указанном тобой примере. Нигде нет ни описания на нее ни примеров использования).
    Во вторых - очень может быть что luacom.dll таким макаром подключить вообще нельзя - нужно добавлять эту библиотеку во время компиляции SciTE. (В описалово LuaCOM написано как).

    Цитата:
    руссфикации вывода в консоль ... таким образом правлю под себя каждую сборку
    Опа! Так ты еще и на С пишешь ! ДРАГОЦЕННЫЙ ТЫ НАШ    
    Может быть, с твоей помощью наконец то сбудутся дерзкие мечты, которые требуют перекомпиляции проги?
    Обидно же... И исходники доступны и поправить надо совсем немного...

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

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

    Цитата:
    Не понял, зачем это надо  

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

    Цитата:
    Опа!  Так ты еще и на С пишешь !

    Жаль, но вынужден тебя огорчить , все мои знания С сводятся к тупому добавлению нужной строки, найденной в тернете, в сорцы и перекомпиляции проекта.
     

    Цитата:
    Обидно же... И исходники доступны и поправить надо совсем немного...

    Согласен, те кто поумнее берут движок Scite и пишут редактор под себя, примеров тому масса, а нам остается только "подтачивать" готовые продукты под свои требования.
     
    Ежели интересно еще есть скрипт для замены выделенного в редакторе фрагмента, но там узается внешняя dll (не моя ) для создания окна ввода.

    Всего записей: 51 | Зарегистр. 07-12-2004 | Отправлено: 16:41 20-11-2005
    dB6



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers, gansA
    Выше нос
    Покопался я в сорцах и нашел много интересного Сделал даже тестовое добавление команд в меню файл (измененные файлы из сорцов выслал mozers), сырое пока все, но можно сделать все хорошо Только предложите нормальную идею. И пожелания.
    У меня пока есть такая задумка: комманды с номерами от 0 до 49 добавляются в одно меню, с 50 до 99 - в другое, и т.д. Т.е. можно будет регулировать в какое меню, какую комманду куда добавить.  

    Всего записей: 408 | Зарегистр. 09-02-2003 | Отправлено: 17:18 20-11-2005
       

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