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

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

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

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

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

A free source code editor for Win32 and X
Русскоязычный форум поддержки
Внимание! Это - продолжение темы, начатой [здесь]

  • Один из самых настраиваемых текстовых редакторов из ныне существующих. Настраивается практически все.
  • Индивидуальная подсветка для разных языков програмирования, фолдинг для классов, функций и структур, авто-дополнение, и т.д. и т.п. ...
     
  • Официальный сайт: Scintilla and Scite
  • Официальный форум: Scite-interest -- Discussion of the SciTE editor
  • Русская документация по SciTE (Ждем ваших замечаний и дополнений...)
  • Проект SciTE-Ru (полезные файлы, предложения, SVN, ....)
  • SciTE - Википедия (корректируйте, дополняйте!)
  • Русский сайт 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 - 2.22
     
    Последняя версия редактора из проекта SciTE-Ru - 2.22 .87 [Сборка 01.11.2010]
    (Oписание: сборки, ядра)        [Важно! О "вирусах" в сборке SciTE-Ru!]
     
    Русскоязычный онлайновый чат, посвященный SciTE: online@conference.scite-ru.org
    Дружественная тема: Доработка исходного кода и компилирование сборки Ru-Board Edition
    Нерешенные задачи и вопросы ( Для умных и талантливых форумчан )

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 14:48 09-10-2007 | Исправлено: mozers, 19:36 01-11-2010
    neo_max

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vladvro
    К сожалению так и вышло как Вы сказали, удалось лишь реализовать открытие файла из моего Експлорера, но никак не удалось реализовать функцию сохранения и возможности оставить открытый файл при следующем запуске редактора (остаются лишь файлы из реальной ФС).
     
    Думаю придется реализовать функции-ивенты OnBeforOpen. Реально ли в будущем включить эти ивенты в официальный релиз, думаю что очень полезная вещь.
     
    Кстати по поводу открытия файла, дело в том что я новичок в SciTE, по правильному пути я иду:
        
    Код:
    local warning_couldnotopenfile_disable = props['warning.couldnotopenfile.disable']
        props['warning.couldnotopenfile.disable'] = 1
        scite.Open("DB:\\" .. filename) -- думаю здесь нужно реализовать свою процедуру открытия буфера
        props['warning.couldnotopenfile.disable'] = warning_couldnotopenfile_disable
        scite.SendEditor(SCI_CANCEL)
        scite.SendEditor(SCI_SETUNDOCOLLECTION, false)
            file_id = GetFileIdByName(filename)
        vm = db:prepare('select body from myfiles where id=?') -- ищем файл в БД
        vm:bind_values(file_id)
        if vm:step() == sqlite3.ROW then
            scite.SendEditor(SCI_ADDTEXT, vm:get_value(0)) -- Подсовываем
        end
        vm:finalize()
        scite.SendEditor(SCI_SETUNDOCOLLECTION, true)
        scite.SendEditor(SCI_SETSAVEPOINT);
        scite.SendEditor(SCI_GOTOPOS, 0);

     
    Дело в том что редактор, после открытия таким способом корректирует имя файла и подсовывает мне место текущего расположения SciTE, можно ли его задать через props чтоб в дальнейшем ловить это имя в Ивентах перед сохранением
     
    Добавлено:
    Ура! Получилось, после небольших изменений и дополнений в исходники все таки удалось добиться желаемого. Пришлось добавить событие OnBeforeOpen и немного подкорректировать класс FilePath чтоб "насильственно" не приводил указанный путь к файлу к абсолютному пути в локальной ФС, так как я использую в именах "своих" файлов свою схему. (Прим.: MyDB:/modules/myscript.lua). Думаю в дальнейшем это позволит написать к примеру екстеншн для работы через ftp в режиме онлайн

    Всего записей: 7 | Зарегистр. 27-08-2009 | Отправлено: 11:12 27-08-2009 | Исправлено: neo_max, 14:40 27-08-2009
    Oaklet

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите пожалуйста, возможно ли разделить подсветку синтаксиса скажем для JavaScript и C++? Ведь, как я понял, они привязаны к одному лексеру "cpp", из-за чего и подсветка у них одинаковая...

    Всего записей: 9 | Зарегистр. 25-07-2009 | Отправлено: 19:08 27-08-2009 | Исправлено: Oaklet, 21:08 27-08-2009
    Psorokin

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Создатели SciTE-RU.
    Добавьте такую возможность Issue 169

    Всего записей: 66 | Зарегистр. 19-04-2009 | Отправлено: 22:42 27-08-2009
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    neo_max
    Весьма интересные эксперименты...
     
    Oaklet
    Разве что написать отдельный лексер для JS, скопировав код из лексера cpp...
    Только, зачем?
     
    ALL
    Мудрые мужики, вы заглядывайте хоть иногда в Issue то!
    Там уже столько весьма интересных предложений появилось...
    Без ВАС - труба - все так и останется лишь в мечтах...

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 20:19 30-08-2009
    TymurGubayev

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    neo_max, vladvro
    теоретически можно и без правки исходников сделать все что надо, средствами чистого Луа:
     
    берем scite.Perform или scite.Open
    и делаем так:

    Код:
    local old_Open = scite.Open
    function scite.Open (filename)
     if SomeFileNameCheck( filename ) then
          return my_strange_fileopen_function ( filename )
     else
      return old_Open( filename )
     end -- if
    end --func
     

     
    осталось вставить в какой-нибудь common.lua, и всё, что открывается из Луа, будет открываться правильно

    Всего записей: 35 | Зарегистр. 24-11-2008 | Отправлено: 22:01 30-08-2009
    vladvro



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

    Цитата:
    Думаю придется реализовать функции-ивенты OnBeforOpen. Реально ли в будущем включить эти ивенты в официальный релиз, думаю что очень полезная вещь.

    если говорить про оригинальную версию редактора, то нет, а в ру-сборку без проблем, присылай код, я добавлю, а если есть желание и время на доработку редактора, то присоединяйся к нашему проекту SciTE-Ru.
     
    TymurGubayev
    идея конечно интересная, только вот как быть с теми файлами, что открываются не из Луа, таже сессия?

    Всего записей: 281 | Зарегистр. 05-04-2006 | Отправлено: 22:55 30-08-2009
    TymurGubayev

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vladvro
    переделать, чтобы открывалась из Луа
    мой вариант был скорее workaround, это да. Хотя опять же всё зависит от системы событий -- можно ли назначить свой обработчик на OnOpen и т.п., так что OnBeforeOpen -- нужная вещь.

    Всего записей: 35 | Зарегистр. 24-11-2008 | Отправлено: 07:48 31-08-2009
    neo_max

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

    Цитата:
    если есть желание и время на доработку редактора, то присоединяйся к нашему проекту SciTE-Ru.  

     
    С удовольствием, редактор мне понравился,  вот только с кодом нужно поближе познакомиться...
     
    Что с меня требуется для участия в проекте?
     
    Мой никнейм в гугле neo4max.

    Всего записей: 7 | Зарегистр. 27-08-2009 | Отправлено: 20:56 02-09-2009 | Исправлено: neo_max, 21:39 02-09-2009
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    neo_max
    Цитата:
    Что с меня требуется для участия в проекте?
    Внимательно прочитать эту инструкцию и эту - в них все описано.
    Перечень нерешенных проблем - тут. Можно внести свое предложение и выполнить его. Можно (и нужно) выполнить понравившееся чужое...
     
     

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 10:28 03-09-2009
    neo_max

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mozers
    Все предельно ясно, большое спасибо.

    Всего записей: 7 | Зарегистр. 27-08-2009 | Отправлено: 10:49 03-09-2009
    chitatel2



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, как настроить редактор SciTe для компиляции файлов, отобранных в раздел favorites?

    Всего записей: 6 | Зарегистр. 14-09-2009 | Отправлено: 21:39 14-09-2009
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    chitatel2
    Каких файлов? Чем компилировать собрался? Что за "раздел favorites"?
    И Вы верите что на такой вопрос кто то ответит???

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



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Вопрос по использованию SciTe для компиляции программ, написанных на том или ином языке программирования.
    При нажатии кнопки SideBar слева открывается окно, разделенное на верхнюю и нижнюю части.
    В верхней части есть 3 закладки. При нажатии на закладку FileMan, в верхней части  
    появляется список файлов в выбранной папке. Нижняя часть SideBar
    имеет название Favorites. Из списка верхних файлов можно отобрать некоторое число файлов и переместить их в нижнюю часть Favorites.  
    Вопрос такой: нет ли в Scite такой переменной окружения или внутренней переменной, вроде FileName, FilePath, FileExt и т.п., которой можно было бы присвоить значение, определяющие файлы в отобранном списке Favorites?
    Может быть есть несложный способ создания такой переменной?
     

    Всего записей: 6 | Зарегистр. 14-09-2009 | Отправлено: 12:17 16-09-2009
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    chitatel2
    На lua такая переменная создается элементарно:
    Код:
    props['my_value']=[[filename1.ext
    filename2.ext
    filename3.ext]]

    После запуска этого скрипта можно убедится что такая переменная появилась:
    Код:
    command.name.212.*=Показать значение моей переменной
    command.212.*=CMD /c @echo $(my_value)

    В случае с Favorites можно дописать скриптик, чтобы он загонял список файлов какую нить такую переменную... Т.е. получить переменную, содержащую список файлов из Favorites - элементарно... Но вот только что с этим списком делать потом?
    Ведь ты же пишешь что
    Цитата:
    для компиляции программ, написанных на том или ином языке программирования
    а языков этих - немеряно и компилируются они совершенно по разному.
    Я еще понимаю если, допустим, передать этот список какому нить архиватору... Но, зачем?...

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 22:27 16-09-2009
    chitatel2



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    В данном случае интересует программирование на языках Фортран, С++ и Паскаль.
     
    Например, для использования фортрановского компилятора g95,
     в файле fortran.properties можно было бы задать такие строки:
    ...
    fc95=g95 $(favorites_name) -c  
    ...
    command.compile.*.f95= $(fc95)
     
    где favorites_name - список файлов из Favorites.
     
    Применение Favorites позволяет, как мне кажется,  
    быстро получать ехе-файлы (или объектные файлы) из различного набора исходников,
    которые находятся в общей папке. Достаточно мышкой выбрать нужные файлы,
    одним кликом переместить их в Favorites и нажать на выполнение компиляции.

    Всего записей: 6 | Зарегистр. 14-09-2009 | Отправлено: 13:35 17-09-2009
    Real Root



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Господа, добавил в скрипт translit.lua возможность обратной транслитерации. Путем добавления сопоставления символов в указанный скрипт:

    Код:
    local translit = {
      ['a'] ="а", ['b'] ="б", ['v'] ="в", ['w'] ="в", ['g'] ="г", ['d'] ="д", ['e'] ="е", ['yo']="ё",
      ['j'] ="ж", ['z'] ="з", ['i'] ="и", ['y'] ="й", ['k'] ="к", ['l'] ="л", ['m'] ="м", ['n'] ="н",
      ['o'] ="о", ['p'] ="п", ['r'] ="р", ['s'] ="с", ['t'] ="т", ['u'] ="у", ['f'] ="ф", ['h'] ="х",
      ['x'] ="х", ['c'] ="ц", ['ch']="ч", ['sh']="ш", ['yu']="ю", ['ya']="я", ['а'] ="a", ['б'] ="b",
      ['в'] ="v", ['г'] ="g", ['д'] ="d", ['е'] ="e", ['ё'] ="yo", ['ж']="j", ['з'] ="z", ['и'] ="i",
      ['й'] ="y", ['к'] ="k", ['л'] ="l", ['м']="m",  ['н'] ="n", ['о'] ="o", ['п'] ="p", ['р'] ="r",
      ['с'] ="s", ['т'] ="t", ['у'] ="u", ['ф'] ="f", ['х'] ="h", ['ц'] ="c", ['ч'] ="ch",['ш']="sh",
      ['щ']="sh", ['ъ'] = "", ['ы']="i",  ['ь'] ="",  ['э']="e",  ['ю']="yu", ['я']="ya"}

    Больше ничего не менял.
    Проверил - все работает. Отдал в нужный отдел (там им очень нужен перевод из кириллицы в латиницу). Ну и сам решил отправить анекдот девушке по смс через сайт компании. Можно отправлять только латиницу. Решил воспользоваться Скитом. Вот что из этого вышло:
    Оригинал: За окном смеpкалось. Она лежала на спине совеpшенно голая. Ее бледная гpудь в последних лучах вечеpней заpи окpасилась в pозовый цвет. Пpиподнятые, чуть полусогнутые ноги, как бы обидевшись дpуг на дpуга, pаздвинулись и смотpели в pазные стоpоны. Капитан Сидоpов, запахнув халат, стоял в глубоком pаздумье. Ему было над чем пpизадуматься:
    каким обpазом накоpмить семью этой замоpоженной куpицей?  
     
    А вот что вышло после транслитерации:
    Za oknom smeпkalos. Ona lejala na spine soveпshenno golaya. Ee blednaya gпud v poslednih luchah vecheпney zaпi okпasilas v пozoviy cvet. Pпipodnyatie, chut polusognutie nogi, kak bi obidevshis dпug na dпuga, пazdvinulis i smotпeli v пaznie stoпoni. Kapitan Sidoпov, zapahnuv halat, stoyal v glubokom пazdume. Emu bilo nad chem pпizadumatsya:
    kakim obпazom nakoпmit semyu etoy zamoпojennoy kuпicey?  
     
    Что самое интересное, вот этот текст транслитируется без проблем:
    Модуль translit.lua предназначен для транслитерации английских букв в русские
    Modul транслит.луа prednaznachen dlya transliteracii angliyskih bukv v russkie
     
    ГДЕ СОБАКА ПОРЫТА?

    Всего записей: 1033 | Зарегистр. 13-04-2006 | Отправлено: 17:33 17-09-2009
    mozers



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    chitatel2
    Цитата:
    fc95=g95 $(favorites_name) -c
    Что тут должно быть вместо $(favorites_name)?
    Неужели Фортран принимает в качестве параметра длиннющую строку с перечислением компилируемых файлов???
    Все файлы - с путями? А разделитель между ними какой? А как записываются длинные имена?
    Имхо ты че то напутал. Наверное тут в качестве параметра надо указывать имя файла содержащего список файлов для компиляции.
    Что касается других языков, то идея видится еще более необдуманной...
     
    Real Root
    Если бы один символ везде менялся на 1 символ, то твоя подмена бы прокатила. Тут некоторые буквы заменяются на 1, другие - на 2 символа. Точнее - наоборот.
    Стоит ли Full Member напоминать что дублировать посты в разных топиках некрасиво?

    Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 19:52 17-09-2009
    Real Root



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

    Цитата:
    Если бы один символ везде менялся на 1 символ, то твоя подмена бы прокатила. Тут некоторые буквы заменяются на 1, другие - на 2 символа. Точнее - наоборот.

    Вы в этом уверенны? Или просто сдлали предположение совершенно не вникая почему так?
     
    Просто я этот вариант тоже проверял, пробовал ограничить длину замены одним символом:  
     
    В оригинале так: for i = 3, 1, -1 do (т.е. обрабатываются даже не 2, а 3 символа)
    Сделал так: for i = 1, 1, -1 do
    Проблема не исчезла
     
    Убедительная просьба, если разбираетесь хорошо в скриптах LUA то гляньте код, а не говорите от балды. Код там не большой, думаю, профессионалу корень проблемы понять будет не трудно. Скрипт очень нужный, иначе бы не обращался за помощью. Сам я сисадмин, и программирование знаю лишь на уровне скриптов на VBScript

    Всего записей: 1033 | Зарегистр. 13-04-2006 | Отправлено: 22:44 17-09-2009
    chitatel2



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Fortran действительно принимает длинную строку с компилируемыми файлами. Разделитель - пробел. Имена файлов вместе с путями должны быть в кавычках, если внутри пути есть пробелы. То есть в общем случае вместо $(favorites_name) должна быть подставлена строка с закавыченными файлами из Favorites.
     Например, если задать
     g95 -c $(favorites_name),
    то команда на компиляцию может, например, выглядеть так
    g95 -c "c:\dir 1\prog1.f95" "c:\dir 2\prog2.f95" "d:\dir 3\prog3.f95"  
     
    Если компилятор запускается из папки, где находятся все компилируемые
    файлы, то пути к файлам указывать не надо. Результат компиляции создается в той же папке, где расположены исходники. Команда на компиляцию будет выглядеть
    g95 -c prog1.f95 prog2.f95 prog3.f95
     

    Всего записей: 6 | Зарегистр. 14-09-2009 | Отправлено: 23:52 17-09-2009
    ALeXkRU



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

    Цитата:
    ГДЕ

    так, может, просто символ в тексте перепутан? вместо 'эр' используется латинская 'пэ' ?
    на других текстах проверялось?

    Всего записей: 11228 | Зарегистр. 03-12-2003 | Отправлено: 23:58 17-09-2009
       

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

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


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

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2020

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru