Ru-Board.club
← Вернуться в раздел «Программы»

» SciTE - Open Source Text Editor for Windows & Linux

Автор: mozers
Дата сообщения: 12.12.2008 15:43
ViSiToR
Цитата:
Т.е работает только Ctrl+I, а Ctrl+U и Ctrl+Shift+U не работают.
Неправда Ваша. Все отлично работает:
SciTEUser.properties :
Код: command.11.*=ChangeCase U
command.mode.11.*=subsystem:lua,savebefore:no

command.12.*=ChangeCase L
command.mode.12.*=subsystem:lua,savebefore:no

command.13.*=ChangeCase I
command.mode.13.*=subsystem:lua,savebefore:no

user.shortcuts=\
Ctrl+Shift+U|1111|\
Ctrl+U|1112|\
Ctrl+I|1113|
Автор: AlphaCrow
Дата сообщения: 12.12.2008 18:53

Цитата:
AlphaCrow
В SciTE-Ru есть параметр scite.userhome, позволяющий задать каталог для сохранения файлов настроек.
В оригинальном SciTE можно изобразить нечто подобное с помощью переменной окружения SCITE_HOME

Это понятно, но для установки. А чтобы получить статический путь началього каталога проекта?
Сейчас я прописываю в качестве scite.userhome - ".\" т.е. текущий каталог. Он будет соответствовать каталогу проекта, но до первого открытия файла из другой папки. Все, теперь .session файл будет записываться в последней открытой папке. А хотелось бы что то типа такого: scite.userhome=GetCurrentPath где, CurrentPath функция возвращающая полный абсолютный путь места в момент запуска Scite. И теперь все сохранения-востановления будут в одной рабочей папке. В документации такого не нашел.
Автор: ViSiToR
Дата сообщения: 12.12.2008 19:04
mozers 16:43 12-12-2008
Цитата:
Все отлично работает:
SciTEUser.properties :

У меня нет этого файла, я пытался его создать с указанным содержимым, но SciTE видимо его не цепляет. Я помещал до этого в au3.properties (в этом файле всё что нужно для AutoIt'а, мне в принципе достаточно только для него и добавить), но и там "работает" именно как я и написал. Пробовал в начале для каждой команды добавить отдельно user.shortcuts, но сейчас попробовал как у тебя в примере (все вместе), тоже не работает, а так даже и инвертирование не работает ...

Добавлено:
Мда... оказывается это работает только при английской раскладке клавиатуры. Чтобы и для русской работало, нужно добавить так:


Код: user.shortcuts=\
Ctrl+Shift+U|1111|\
Ctrl+Shift+Г|1111|\
Ctrl+U|1112|\
Ctrl+Г|1112|\
Ctrl+I|1113|\
Ctrl+Ш|1113|
Автор: mozers
Дата сообщения: 14.12.2008 00:37
AlphaCrow
Цитата:
А хотелось бы что то типа такого: scite.userhome=GetCurrentPath где, CurrentPath функция возвращающая полный абсолютный путь места в момент запуска Scite
SciTE можно запустить из разных каталогов, просто оказав полный путь к нему => следовательно твоя CurrentPath (и scite.userhome) будет указывать на разные пути => следовательно не только файл SciTE.session будет записываться в этот каталог, но и все остальные пользовательские настройки SciTE будет искать именно в этом каталоге. Так тебе придется в каждом рабочем каталоге иметь по файлу SciTEUser.properties (а в случае использования SciTE-Ru еще и по favorites.lst, cool.dll и прочих приблудах, которые сейчас лежат в одном месте).
Тебе это надо?
Я вообще не понимаю зачем тебе понадобилось записывать файл SciTE.session в текущем каталоге? Можно же записать любой набор файлов как сессию с произвольным именем и открывать ее из любого места.

ViSiToR
Цитата:
Мда... оказывается это работает только при английской раскладке клавиатуры.
В оригинальном - да. В SciTE-Ru этот баг исправлен.
Автор: AlphaCrow
Дата сообщения: 15.12.2008 07:47
mozers

Цитата:
Я вообще не понимаю зачем тебе понадобилось записывать файл SciTE.session в текущем каталоге?


Другого пути автоматического сохранения, востановления списка открытых файлов я не знаю.
Автор: mozers
Дата сообщения: 15.12.2008 11:59
AlphaCrow
Одновременно в SciTE могут быть открыты файлы из самых разных каталогов. В каком из них сохранять текущую сессию?
Скрипт SessionManager (из пакета SciTE-Ru) сохраняет все сессии в единственном каталоге (home - по умолчанию). Может сохранять и автоматически.

Цитата:

Для использования SessionManager для открытия и сохранения сессий необходимо снять комментарии с соответствующиих ключей в файле SciTEGlobal.properties:
    session.manager=1
После этого команды меню Файл - "Загрузить/Сохранить сессию..." будут открывать вместо стандартных диалоговые окна Session Manager, где эти процедуры можно выполнить с большим удобством и возможностями.

Для того, чтобы при закрытии SciTE автоматически возникал диалог SessionManager для сохранения текущей сессии:
    save.session.manager.on.quit=1

Для того, чтобы при закрытии SciTE автоматически (без открытия диалогового окна) создавался новый файл "currentfilename_num.session" с содержимым текущей сессии:
    save.session.on.quit.auto=1

Возможности:
------------
- Можно выбрать нужную сессию и до открытия редактора, запустив SessionManager.hta непосредственно.
- В диалоговых окнах можно использовать как мышь так и клавиатуру (Esc закрывает окно)
- Контекстное меню в диалоге открытия сессии (Открыть, Добавить к открытым вкладкам, Удалить)
- Можно к любой сессии добавить многострочные описания
Автор: AlphaCrow
Дата сообщения: 15.12.2008 14:42
mozers
Y
Цитата:
Одновременно в SciTE могут быть открыты файлы из самых разных каталогов. В каком из них сохранять текущую сессию?


Немного поясню. Допустим я работаю в FAR-е и перемещаюсь из папки в папку, наконец нашел директорию нужного на данный момент проекта и считая что это главная папка набираю - SciTE. Так вот полный путь к этой папке и будет являтся тем местом, где я и хочу чтобы сохранялись все настройки в независимости от того, какие файлы были открыты до этого или будут открыты после этого.
Можно конечно вручную сохранить-загружать сессию в файле ..PROJ.SESSION но это не совсем удобно ( можно и забыть сохранить...).
Я так понял такой переменной с этим путем нет. Или я что то пропустил?
Автор: zzerf
Дата сообщения: 16.12.2008 05:21
Что-то я запутался, пытаюсь поработать с исходниками на Питоне, они в win-кодировке, в начале каждого прописано # coding: utf-8, SciTE при открытии и последующем их редактировании сохраняет весь русский текст в какой-то кодировке (utf-8?), кроме того, все сообщения, которые он выводит в свое окно вместо русских букв содержат их коды.

Как сделать, чтобы редактируемые файлы оставались в win-кодировке и чтобы сообщения SciTE отображали русский язык. Сам редактор установил только вчера и еще не разобрался что и как. Хотя в FAQ об этом ни слова нет.
Автор: vladvro
Дата сообщения: 16.12.2008 14:46
AlphaCrow

Цитата:
Я так понял такой переменной с этим путем нет. Или я что то пропустил?

Мне тоже не удалось найти такой, но ее можно заполучить, если например запускать скайт так:
SciTE.exe "-StartPath=%CD%"
тогда нужное значение будет записано в параметр StartPath и его можно будет использовать в файлах настроек как $(StartPath)

zzerf
Просьба уточнить о какой версии редактора и/или сборке идет речь.
Но, вероятно, должна помочь установка параметра:
utf8.check=0
Автор: AlphaCrow
Дата сообщения: 16.12.2008 15:48
vladvro


Цитата:
Мне тоже не удалось найти такой, но ее можно заполучить, если например запускать скайт так:
SciTE.exe "-StartPath=%CD%"
тогда нужное значение будет записано в параметр StartPath и его можно будет использовать в файлах настроек как $(StartPath)


Почти заработало. В Far-е сделал запуск с параметром SciTE.exe "-StartPath=!\" т.е. с текущей директорией. Записывает Scite.session действительно там где надо, а вот востанавливает сессию из файла Scite.session в папке "..Documents and Settings..."
Автор: vladvro
Дата сообщения: 16.12.2008 17:42
AlphaCrow

Цитата:
востанавливает сессию из файла Scite.session в папке "..Documents and Settings..."

попробуй использовать параметр -loadsession:имя_файла_сессии
Автор: AlphaCrow
Дата сообщения: 16.12.2008 22:28
vladvro

Цитата:
попробуй использовать параметр -loadsession:имя_файла_сессии


Вот теперь заработало
Сделал командную строку в FAR-е
scite.exe "-StartPath=!\" "-loadsession:.\\scite.session" и в Global.properties установил scite.userhome=$(StartPath)
и все стало ОК.

Спецам

У меня возник еще вопрос. Так как настроить анализатор ошибок компиляции в редакторе невозможно, то какой формат сообщения об ошибке должен быть чтобы автоматически выполнялся GOTO на ошибочную позицию в файле? Возможность изменения компилятора есть.
Автор: vladvro
Дата сообщения: 17.12.2008 08:35
AlphaCrow

Цитата:
какой формат сообщения об ошибке должен быть чтобы автоматически выполнялся GOTO на ошибочную позицию в файле?

Есть несколько форматов, но в плане раскраски удобнее следующий:
путь_до_файла:номер_строки:сообщение_об_ошибке
где путь_до_файла может быть как абсолютным так и относительным.
Автор: AlphaCrow
Дата сообщения: 17.12.2008 15:10
vladvro


Цитата:
Есть несколько форматов, но в плане раскраски удобнее следующий:
путь_до_файла:номер_строки:сообщение_об_ошибке
где путь_до_файла может быть как абсолютным так и относительным.


Проверил, работает. А GoTo только на строку? А как же столбец?
Автор: vladvro
Дата сообщения: 17.12.2008 15:41
AlphaCrow

Цитата:
А GoTo только на строку? А как же столбец?

Есть только на строку, да и большенство сообщений об ошибках, выдаваемые компиляторами, содержат только инфу о строке.
Но если есть большое желание отслеживать еще и столбец, то полагаю можно реализовать это например скриптом на Луа.
Автор: AlphaCrow
Дата сообщения: 18.12.2008 07:11
vladvro


Цитата:
Но если есть большое желание отслеживать еще и столбец, то полагаю можно реализовать это например скриптом на Луа.


Может конечно и не большое, но есть. Как это примерно будет выглядеть? Я в Lua не очень то.

У меня тут появилась идея совместить свой отладчик с редактором, но пока не знаю как извне можно управлять перемещением курсора в редакторе? Может подскажете?
Автор: mozers
Дата сообщения: 18.12.2008 08:32
AlphaCrow
SciTE может позиционировать курсор не только на строку с ошибкой, но и на символ в этой строке, который вызвал ошибку. Об этом написано и в документации.
Единственное условие - формат сообщения об ошибке должен быть похож на сообщение выдаваемое утилитой Tidy.
Вот, например, такой lua скриптик
Цитата:
print("line 109 column 24 - Warning: Вот тут у Вас ошибочка!")
будет выводить в консоль строку с "ошибкой", щелчок на которой вызовет перемещение на указанную строку и позицию (естественно, если такие строка и позиция реально имеются).


Цитата:
как извне можно управлять перемещением курсора в редакторе?
Извне - значит через SciTE.Helper Не только перемещением курсора а вообще всем что может редактор...
Автор: VoidVolker
Дата сообщения: 18.12.2008 11:31
AlphaCrow

Цитата:
У меня тут появилась идея совместить свой отладчик с редактором, но пока не знаю как извне можно управлять перемещением курсора в редакторе? Может подскажете?

Загляни в личный ящик.
Автор: AlphaCrow
Дата сообщения: 20.12.2008 20:14
mozers


Цитата:
Единственное условие - формат сообщения об ошибке должен быть похож на сообщение выдаваемое утилитой Tidy.


Формат то можно сделать такой, только в нем нет имени файла. Для одиночного файла сгодится.


Цитата:
Извне - значит через SciTE.Helper Не только перемещением курсора а вообще всем что может редактор...


Будем посмотреть.
Автор: Zakkazak
Дата сообщения: 21.12.2008 13:03
Может ли этот замечательныйй редактор делать фоулдинг в ini-файлах
(вопрос снят)
и фильтровать не нужные строки

нужен для упрощения редактировани
\totalcmd\usercmd.ini
Автор: mozers
Дата сообщения: 21.12.2008 19:35
Zakkazak
ВСЕ имеется. "Ненужные" строки можно скрыть (editor:HideLines, editor:HideSelection) только какие строки являются "ненужными" ?
Автор: Julgo
Дата сообщения: 21.12.2008 22:34
Подскажите, что значит PrevIdx в props['PrevIdx'], что возвращает эта запись? Встречается в braces_autoclose.lua
Автор: Zakkazak
Дата сообщения: 21.12.2008 23:17
mozers
спасибочки, буду осваивать

Автор: mozers
Дата сообщения: 24.12.2008 11:36
abbrevlist.lua переписан заново. Теперь он работает так:
После ввода части аббревиатуры и нажатия на Ctrl+B выводится список расшифровок, соответствующих написанной части из которого можно выбрать нужный вариант.
Если введенной аббревиатуре соответствует единственный вариант расшифровки, то он вставляется автоматически (т.е. стандартное поведение Ctrl+B).
Если для какого то лексера задан параметр abbrev.lexer.auto=1 то список расшифровок возникает автоматически (без нажатия на Сtrl+B).

В общем сейчас он не блокирует работу стандартной функции Ctrl+B, а лишь дополняет ее новыми возможностями.
Настройки позволяют сделать его работу как прозрачной так и навязчивой.

Запостил тут, поскольку хочется чтобы в тестировании приняли участие и те, кто за обновлениями на SVN не следит.

Добавлено:
Julgo
Цитата:
что значит PrevIdx в props['PrevIdx'], что возвращает эта запись?
ПредыдущийИндекс наверное это так переводится. (Назвать то можно как угодно).
props['PrevIdx'] возвращает значение этой переменной (стринг).
Вообще если я в любом из файлов .properties задам
my.super.prop=mozers
то props['my.super.prop'] вернет мой ник.
Я могу его и не писать в .properties, а задать прямо из lua
props['my.super.prop'] = 'Julgo'.
Зачем в скрипте вместо обычных переменных используются props - х.з. - так авторы захотели...
Автор: NecroProger
Дата сообщения: 25.12.2008 16:13
Можно ли сделать так, чтобы, например, когда я ввожу

Код: <div id=
Автор: Julgo
Дата сообщения: 25.12.2008 16:46
NecroProger
Попробуйте изменить этот файл html_tags_autoclose.lua

Код: -- attribute quotes
if ch == 61 then -- "="
local nStyle = editor.StyleAt[editor.CurrentPos - 2]
if nStyle == 3 or nStyle == 4 then
editor:BeginUndoAction()
editor:InsertText(editor.CurrentPos, "\"\"")
editor:GotoPos(editor.CurrentPos + 1)
editor:EndUndoAction()
end
end
Автор: NecroProger
Дата сообщения: 25.12.2008 16:54
Julgo
Спасибо Вам огромное!

Добавлено:
Ещё появился вопрос: при нажатии кнопки "Выполнить" в формате HTML запускается браузер по-умолчанию, или сопоставленный с расширением html?
(вопрос снят)
Автор: mozers
Дата сообщения: 25.12.2008 22:00
Хочется поздравить всех пользователей SciTe-Ru с большой ПОБЕДОЙ!
Усилиями Frank Wunderlich, tilarids (Sergey Kishchenko) и VladRO ядро программы наконец то стало компилится и под gtk (Конечно не все фичи SciTE-Ru доступны под gtk, но главное - работает!)
Спасибо alrusdi81 и всем кого забыл упомянуть (простите, склероз) кто принимал живое участие в решении этой проблемы!
Автор: oldBob
Дата сообщения: 26.12.2008 17:05
mozers
Новость и впрямь отличная! А когда и где можно будет взять и скомпилировать?
Автор: vladvro
Дата сообщения: 26.12.2008 17:11
oldBob

Цитата:
А когда и где можно будет взять и скомпилировать?

Здесь и прямо сейчас

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566

Предыдущая тема: Universal Share Downloader


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.