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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Выкладываю скрипт для автодополнения:
    Подробнее...
    Конечно, мастера LUA сразу обнаружат в этом скрипте кучу нерациональных решений (да я и сам уже думаю как его отрехтовать) но по большому счету, довел меня Нейл до этого сочинительства    
    Почему Скайт ИЗНАЧАЛЬНО не работает именно так?
    Может быть наши программеры все таки поправят это дело ???
     

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 23:08 01-07-2006 | Исправлено: mozers, 21:35 09-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Народ, помогите!!!
    Ну подскажите кто нить как отследить нажата клавиша Ctrl или нет, при обработке события OnDoubleClick ???
    mimir знает. Он же сказал:
    Цитата:
    Я сделал по Ctrl+DoubleClick. Меня это полнустью устраивает.  
    Попозже если надо пришлю исправления.  
    и пропал ((
    Я уже все доки перерыл ну нигде этого нету    
    Ну неужели кроме mimir-а никто этого не знает???
     
     
    Че то никто на мой чудесный скрипт для атоматической вставки свойств/методов объекта и внимания не обратил А я прям балдею - как удобно
    Код в своем посте раз 5 исправлял - все лучшее и лучшее делаю...
    Правда опыта lua-писательства у меня никакого, поэтому и надеялся я что старшие товарищи поправят мою реализацию...
    Однако - тишина
     
    Тут как то даавно ктото вопрос задавал, про то, как сделать всплывающие подсказки в 2 строки (ну некоторые длинные очень - на экран не влазят).
    Можно выйти из положения так:

    Код:
    style.*.38=font:MS Sans Serif,size:8
    (назначить маленький фонт)
    можно в *.api эту подсказку записать в несколько строк:
    Код:
    parseInt(string strInt,int numberBase)
    parseInt Converts a string argument to a number in a specified number base(2,8,10,16...)
     
    а можно использовать оба метода

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



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Какая версия Lua используется в SciTE ? Точнее в каких версиях скайта какие версии Lua используются?

    ----------
    MSI PRO B650-P WIFI / Ryzen 5 7600X / RAM 32Gib / 4 HDD = 10Tib + 1 NVME 2Tib / Radeon RX 560 2Gib / Win 10 x64 // POB, PVD

    Всего записей: 6637 | Зарегистр. 14-02-2005 | Отправлено: 20:19 05-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    unreal666
    Мне кажется и вопрос не совсем корректен и мой ответ - тоже:
    В Скайт встроена поддержка LUA. Т.е. с одной стороны в lua скриптах для SciTE можно использовать операторы LUA5, + доступна куча расширений от самого Скайта. С другой стороны некоторые методы LUA вообще недоступны и на офф-форуме периодически обсуждается стоит их добавлять или нет.
     
    Вот api-файл со всеми (как мне кажется) доступными операторами, методами и свойствами. (Правда добавить описания на них у меня терпения не хватило
    В комплекте с предыдущим скриптом работает просто великолепно - lua - скрипты может писать любой их впервые увидевший

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



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

    Цитата:
    Вот api-файл со всеми (как мне кажется)  

    Ссылка на c:/TEMP/SciTELua_api.zip  

    ----------
    MSI PRO B650-P WIFI / Ryzen 5 7600X / RAM 32Gib / 4 HDD = 10Tib + 1 NVME 2Tib / Radeon RX 560 2Gib / Win 10 x64 // POB, PVD

    Всего записей: 6637 | Зарегистр. 14-02-2005 | Отправлено: 14:31 06-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    unreal666
    Почтовую рассылку с форума читаешь? Я ссылу то сразу же подрехтовал
     
    И чтобы мой пост не был таким неинформативным - маленький скрипт (изуродовал вариант mirk - теперь он корректно работает с переводами строк, ну и кода поменьше):
    SciTEStartup.lua:
    Код:
    function sort_text(i)
        local sel_text = editor:GetSelText()
        local lines = {}
        local one_line = ''
        for one_line in string.gfind(sel_text, "[^\n]+") do
            table.insert(lines, one_line)
        end
        if i == '' then
            table.sort(lines)
        else
            table.sort(lines, function(a, b) return a > b end)
        end
        local out_text = table.concat(lines, "\n").."\n"
        editor:ReplaceSel(out_text)
    end

    .properties:
    Код:
      command.name.21.*=Сортировка текста
      command.21.*=sort_text
      command.mode.21.*=subsystem:lua,savebefore:no
     
      command.name.22.*=Обратная сортировка текста
      command.22.*=sort_text reverse
      command.mode.22.*=subsystem:lua,savebefore:no
     

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



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Как (LUA) определить имя используемого в данный момент Скайтом api-файла?
    Есть какие то
    Код:
    editor:GetProperty (string)
    editor:GetPropertyExpanded (string)
    editor.Property
    editor.PropertyInt
    только как их пользовать - вообще непонятно    
    Всю башку сломал    

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



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Изучаю LUA потихоньку... Вот такой скрипт сляпал:
    IndentTabToSpace.lua
    Код:
    -- Замена отступов в виде табуляторов на пробелы и наоборот
    -- соответствие количества пробелов заменяющих знак табуляции берется из ваших установок в .properties
    -- mozers™ icq#256106175
     
    local indent_char = nil
    editor:BeginUndoAction()
    for line_num = 0, editor.LineCount-1 do
        local line = editor:GetLine (line_num)
        if line ~= nil then
            local len = editor.LineIndentation[line_num]
            if len ~= 0 then
                if indent_char == nil then
                    indent_char = string.sub(line, 1, 1)
                end
                if indent_char == "\t" then
                    indent = string.rep (" ", len)
                else
                    indent = string.rep ("\t", len/editor.Indent + 0.5)
                end
                editor.TargetStart = editor:PositionFromLine(line_num)
                editor.TargetEnd = editor.LineIndentPosition[line_num]
                editor:ReplaceTarget(indent)
            end
        end
    end
    editor.Indent = props["indent.size"]
    editor:EndUndoAction()

    .properties
    Код:
      command.name.23.*=Заменить отступы (TAB <-> Пробелы)
      command.23.*=dofile $(SciteDefaultHome)\tools\IndentTabToSpace.lua
      command.mode.23.*=subsystem:lua,savebefore:no
     

    Идея - не нова. Что отличает от остальных: полный автоматизм, маленький код
     
    unreal666
    2 уточнения:
    1. Если выполнить такой код из Скайта:
    Код:
    print(_VERSION)
    то получим
    Код:
    Lua 5.0.2

    2. Повозился над SciTELua.api Вот теперь там действительно ВСЕ Вроде как...
    Подключать лучше так:
    Код:
    # Подключение файла автодополнения и всплывающих подсказок по синтаксису
    api.$(file.patterns.lua)=$(SciteDefaultHome)\api\SciTELua.api
    # Необходимо для работы скрипта вывода подсказки по методам/свойствам объекта (сам скрипт - в SciTEStartup.lua)
    api.*.lua=$(SciteDefaultHome)\api\SciTELua.api
     
    # Символы, после ввода которых возникает подсказка
    calltip.lua.parameters.start= ([
    # Символы - разделители параметров
    calltip.lua.parameters.separators=,
    # Символы, из которых строятся операторы языка (используется для всплывающей подсказки)
    calltip.lua.word.characters=$(chars.alpha)$(chars.numeric)_-:.
     
    # Символ, после которого включается автодополнение
    autocomplete.lua.start.characters=.:
     
     
     

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



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Возможно, что все про это уже знают (я про Shift+F8), а для меня это было открытием:

    Код:
    1=Сколько
    2=еще нам
    3=откроется
    4=неизвестного?
    command.name.35.*=Test
    command.35.*=print $(1) $(2) $(3) $(4)
    command.mode.35.*=subsystem:lua,savebefore:no

    Теперь думаю куда бы это приспособить для себя...

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



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

    Цитата:
    чудесный скрипт для атоматической вставки свойств/методов объекта  

    не подскажешь, почему-то странно работает: окошко всплывает, а собственно свойства\методы не вставляются   ни по энтеру ни мышой

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



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALeXkRU
    Билин, виноват    
    Во время очередной правки забыл добавить вызов InsertProp (она должна вызываться из Скайтового события OnUserListSelection). Вот поэтому список формируется, а при выборе ничего и не вставляется.
    Ща исправил (попутно там много чего другого поменялось)...
     
    Вот еще скрипт сочинил:
    Код:
    -- Вывод списка функций / процедур, имеющихся в коде
    -- mozers™ icq#256106175
    -- Идея и первый вариант: Grisper <http://forum.ru-board.com/topic.cgi?forum=5&topic=3215&start=700#4>
     
    function find (str, pattern)
        for p in string.gfind(str, pattern) do
            return p
        end
        return ""
    end
     
    local FOLDSTART = 1024        -- level to start folding (from 1024)
    editor:Colourise(0, -1)       -- update doc's folding info
    local count = 0
    trace("> Список функций: \n")
    for line_num = 0, editor.LineCount-1 do
        local foldRaw = editor.FoldLevel[line_num]
        local foldLvl = math.mod(foldRaw, 4096)
        local foldHdr = math.mod(math.floor(foldRaw / 8192), 2) == 1
        if foldHdr and foldLvl == FOLDSTART then
            local line = editor:GetLine (line_num)
            line = string.gsub (line, "^[^%a]*([^{\n]*).*", "%1")
            if line ~= "" then
                if find (line, "[(].*[)]") ~= "" then
                    print (":"..(line_num + 1)..":\t"..line)
                    count = count + 1
                end
            end
        end
    end
    if count > 0 then
        trace("> Найдено: "..count.." функций / процедур\nДвойной щелчок на строке с результатом\nустановит курсор на оригинальную строку")
    else
        trace("> Функций / процедур не найдено!")
    end

    Скажите с каким языком программирования не работает - поправим

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



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

    Цитата:
    Ща исправил (попутно там много чего другого поменялось)...  

    теперь работает. Еще бы туда регистронезависимость добавить - и совсем хорошо будет    
    а то этот

    Код:
    wscript.arguments.count
     
    на самом деле не работает   нужно вводить "WScript.Arguments.Count"
     
    Добавлено:

    Цитата:
    еще скрипт сочинил

    пока мало где работает   из 5 тестовых файлов нашлись функции хорошо только в SciTEStartup.lua   а в четырех остальных - или ничего не находили (прога на Delphi то бишь Pascal) или находит конструкции типа  

    Код:
    if (Args(1))


    Код:
    If len(sText) > 1 then

    до возможностей команды из Менеджера проекта - пока далеко  
     
    Добавлено:
    кстати, а что с исходниками Менеджера? вроде как кто-то говорил что удалось их заполучить - и тишина  

    Всего записей: 11797 | Зарегистр. 03-12-2003 | Отправлено: 23:31 09-07-2006
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALeXkRU
    Не... Тут скрипт - ни при чем. Надо в .properties написать:
    Код:
    autocomplete.*.ignorecase=1
    calltip.*.ignorecase=1
     
     
     
    Добавлено:

    Цитата:
    а в четырех остальных - или ничего не находили (прога на Delphi то бишь Pascal)
    Угу В Паскале процедуры не по человечески построены. Фолдеры не с заголовка открываются, а с директивы begin. Жаль, думал что скрипт будет работать со всеми языками. Для Паскаля мой алгоритм вообще не работает
    Тут и исправить не получится. А писать отдельный только для него чо то...

    Цитата:
    что с исходниками Менеджера? вроде как кто-то говорил что удалось их заполучить  
    mirk говорил...

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



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

    Всего записей: 247 | Зарегистр. 21-05-2003 | Отправлено: 00:28 10-07-2006
    ALeXkRU



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

    Цитата:
    Надо в .properties написать
    у меня так и есть
    Цитата:
    Жаль, думал что скрипт будет работать со всеми языками

    ну, сечас он не работает не только с паскалем проверял на vbs и js (из папки tools)
     
    Добавлено:
    mirk
    опа! как же я прозевал-то   мне ж даже дельфю не нужно ставить и вспоминать старое доброе    
    что нам от него нужно-то? перевести? или еще что-то?
     
    Добавлено:
    оказалось, что ignorecase в Global.properties не работает   продублировал в UserCommands - стало действовать нормально  

    Всего записей: 11797 | Зарегистр. 03-12-2003 | Отправлено: 00:47 10-07-2006
    mozers



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

    Цитата:
    проверял на vbs и js (из папки tools)
    Да. Лишнего порой выводит   Поправим...

    Цитата:
    что нам от него нужно-то? перевести? или еще что-то?
    Первое, что мне бросилось в глаза - невозможность проги нормально работать в каталоге отличном от $(SciteDefaultHome).

    Цитата:
    ignorecase в Global.properties не работает  
    Сдается мне что этот параметр у тебя где то продублирован с неверным значением (возможно в .properties языка программирования).
     
     
    Добавлено:
    SciTE 1.70 .08Ru-Board Edition [Сборка 10.07.2006]
    • Новое ядро .08Ru - Доработанный вариант оригинальной версии 1.70 (исправления те же что и в версии .07Ru)
    • Добавлены и модернизированы скрипты:
         - автодополнение объектов их методами и свойствами
         - создание резервных копий сохраняемого после редактирования файла
         - вставка спецсимволов (©,®,§,±,…) из раскрывающегося списка
         - сортировка выделенных строк
         - вывод списка функций / процедур, имеющихся в коде
         - замена отступов в виде табуляторов на пробелы и наоборот
         - поиск выделенного в окне редактора (или консоли) текста
    • Откорректированы и дополнены: vbscript.api, jscript.api, SciTELua.api,...
    • Корректировка других настроек редактора

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



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

    Цитата:
    опа! как же я прозевал-то  [Image] мне ж даже дельфю не нужно ставить и вспоминать старое доброе  [Image]  
    что нам от него нужно-то? перевести? или еще что-то?  

    Угу, перевести...

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



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Все улучшаем и улучшаем
    SciTELua.api
    SortText.lua
    (в сборке - старые варианты)

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



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Господа, всем советую заглянуть вот на эту страницу, и глянуть screecast`ы....
    Я обалдел.... ))
    Жалкот раффика на нуле.. кто скачает и установит эту красоту отпишите плиз в форум
     
    Вроде mozers бился над тем что бы сделать многострочные всплывающие подсказки.. они там тоже есть

    Всего записей: 247 | Зарегистр. 21-05-2003 | Отправлено: 04:01 12-07-2006 | Исправлено: mirk, 12:54 12-07-2006
    zvyagaaa



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Господа, я вас умоляю, ну добейте для паскаля файло! а то как сборку обновляю - приходится файл паскалевский туда-сюда тыркать... правда, мало чем он от стандартного отличается, но хотя бы символы комментирования добавьте и если возможно, то api  файл если кто делал - выложьте пожалуйста, а разработчики сборки не игнорируйте этот очень популярный в бывшем СССР язык.

    Всего записей: 776 | Зарегистр. 02-02-2005 | Отправлено: 14:20 12-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.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru