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

» SciTE - Open Source Text Editor for Windows & Linux

Автор: heart2heart
Дата сообщения: 26.03.2013 21:59
В англоязычном варианте (том, что идет вместе с Lua 5.1.4 ) Lua нормально работает с консолью.
В русском — a=io.read() не дожидаясь ввода с клавиатуры, сразу возвращает nil.
Я еще очень чайник, подскажите аксакалы, как с этим справиться!
Автор: mozers
Дата сообщения: 27.03.2013 20:00
heart2heart
Сравнил SciTE что идет с lua for windows и наш SciTE-Ru.
Вся разница в запуске скриптов.lua в клавише. У них они запускаются по F5, а у нас - по F7 (по F5 у нас запускаются скрипты, использующие встроенный в SciTE lua-движок).
Для запуска скриптов с помощью внешнего lua команда практически одинакова:
Код: # Команда меню - Собрать (F7)
# выполняем скрипт lua внешним интерпретатором
command.build.*.lua=lua -e "io.stdout:setvbuf 'no'" "$(FilePath)" $(1) $(2) $(3) $(4)
Автор: GF777
Дата сообщения: 31.03.2013 07:41
Release 3.3.0

Released 30 March 2013.
Overlay scrollers and kinetic scrolling implemented on Cocoa.
To improve display smoothness, styling and UI Update notifications will, when possible, be performed in a high-priority idle task on Cocoa instead of during painting. Performing these jobs inside painting can cause paints to be abandoned and a new paint scheduled. On GTK+, the high-priority idle task is used in more cases.
SCI_SCROLLRANGE added to scroll the view to display a range of text. If the whole range can not be displayed, priority is given to one end.
C++ lexer no longer recognises raw (R"") strings when the first character after " is invalid. Bug #1454.
HTML lexer recognises JavaScript RegEx literals in more contexts. Bug #1412.
Fixed automatic display of folded text when return pressed at end of fold header and first folded line was blank. Bug #1455.
SCI_VISIBLEFROMDOCLINE fixed to never return a line beyond the document end.
SCI_LINESCROLL fixed for a negative column offset. Bug #1450.
On GTK+, fix tab markers so visible if indent markers are visible. Bug #1453.
Автор: maxidronische
Дата сообщения: 06.04.2013 00:11
Поставил себе SciTE_325_99Ru_030313.
Не получается настроить подсветку для языка, которого нет в списке поставляемых.
На более ранних версиях такая возможность была

Может быть я что-то делаю не так?

В SciTEGlobal.properties прописываю:
menu.language=\
rsl|mac||\

[Languages]
import languages\rsl

при открытии файла *.mac в меню "Подсветка" указывается, что выбран rsl, однако в статус строке не отображается rsl. И подсветки ни какой нет.

Автор: mozers
Дата сообщения: 07.04.2013 08:14
maxidronische
Все правильно делаете. Только файлика rsl.properties ни в оригинальном Scite ни в нашей сборке - сроду не было.
Автор: maxidronische
Дата сообщения: 07.04.2013 15:07
mozers
rsl.properties писался самостоятельно, но сейчас почему-то он работать не хочет

Правильно ли я понимаю, что если профиля нет в сборке, то добавить его нельзя?
Автор: mozers
Дата сообщения: 08.04.2013 19:41
maxidronische
Напротив. Можно. Проблема - в rsl.properties. Киньте ссылку или опубликуйте его (только в тегах "more").
Автор: maxidronische
Дата сообщения: 08.04.2013 20:55
mozers, для примера поправил sql.properties, если его подложить, то весь текст кода становится серым. При необходимости, добавлю кусок кода

[more]
# Define SciTE settings for rsl

filter.rsl=rsl (mac)|*.mac|

file.patterns.rsl=*.mac

lexer.$(file.patterns.rsl)=rsl

# rsl styles
# Default
style.rsl.32=
# White space
style.rsl.0=$(colour.whitespace)
# Comment
style.rsl.1=$(colour.comment),$(font.comment)
# Line Comment
style.rsl.2=$(colour.comment),$(font.comment)
# Doc comment
style.rsl.3=$(colour.code.comment.doc),$(font.comment)
# Number
style.rsl.4=$(colour.number)
# Keyword
style.rsl.5=$(colour.keyword),bold
# Double quoted string
style.rsl.6=$(colour.string)
# Single quoted string
style.rsl.7=$(colour.char)
# rsl*Plus
style.rsl.8=$(colour.preproc)
# rsl*Plus PROMPT
style.rsl.9=fore:#007F00,back:#E0FFE0,eolfilled
# Operators
style.rsl.10=bold
# Identifiers
style.rsl.11=
# End of line where string is not closed / not used
style.rsl.12=back:#E0C0E0,eolfilled
# rsl*Plus Comment
style.rsl.13=fore:#007F00,$(font.comment)
# Line Comment: //.
#style.rsl.14=$(colour.comment),$(font.comment),back:#888888
# Hash Line Comment
style.rsl.15=fore:#007F00,$(font.comment)
# Keywords2: Database objects
style.rsl.16=fore:#B00040
# Comment Doc Keyword
style.rsl.17=fore:#3060A0,$(font.comment)
# Comment Doc Keyword Error
style.rsl.18=fore:#804020,$(font.comment)
# Keywords5: User Keywords 1
style.rsl.19=fore:#4B0082
# Keywords6: User Keywords 2
style.rsl.20=fore:#B00040
# Keywords7: User Keywords 3
style.rsl.21=fore:#8B0000
# Keywords8: User Keywords 4
style.rsl.22=fore:#800080


# Braces are only matched in operator style
braces.rsl.style=10
# Enables backslash as an escape character
#rsl.backslash.escapes=1


keywords.$(file.patterns.rsl)= macro end if else elif while or and true false

# Keywords for PlDoc comments
keywords3.$(file.patterns.rsl)= record array private var return    

# Keywords for rsl*Plus
keywords4.$(file.patterns.rsl)= bankinter fiinter ptinter

# User keywords 1
# Keywords for Standard packages
keywords5.$(file.patterns.rsl)= strlen msgbox onerror setparm

comment.block.rsl=//
comment.stream.start.rsl=/*
comment.stream.end.rsl=*/

[/more]
Автор: mozers
Дата сообщения: 09.04.2013 19:22
maxidronische
Цитата:
lexer.$(file.patterns.rsl)=rsl
Такого лексера не существует! Позволительно использовать только существующий лексер и не какой попало, а тот, который может понять конструкции вашего языка.
Откройте свой файл и выберите (с помощью меню "Подсветка") тот, который воспринимает код наиболее адекватно (мне показалось что это - лексер cpp).
Автор: maxidronische
Дата сообщения: 09.04.2013 20:38
mozers,
то есть количество лексеров ограничено каким-то набором, и у каждого из них свои особенности.

Спасибо за помощь!
Автор: Shadowman
Дата сообщения: 09.04.2013 20:45
Подскажите, как включить проверку синтаксиса lua-скриптов?
Автор: maxidronische
Дата сообщения: 10.04.2013 14:50
mozers
подскажите, пожалуйста, еще одну вещь: можно ли настраивать возможность отображения функций/процедур для сторонних языков?
[img] http://imageshack.us/photo/my-images/594/92679665.png/[/img]
Автор: mozers
Дата сообщения: 11.04.2013 19:39
maxidronische

Цитата:
то есть количество лексеров ограничено каким-то набором, и у каждого из них свои особенности.
Совершенно верно.

Цитата:
можно ли настраивать возможность отображения функций/процедур для сторонних языков?
Можно. Правкой содержимого SideBar.lua. Вот недавно новый автор nicksabaka добавил поддержку методов Nemerle.

Shadowman
Снять комментарий со строчки в SciTEGlobal.properties:
Код: #~ import languages\script_lua
Автор: GF777
Дата сообщения: 12.04.2013 07:19
Release 3.3.1

Released 11 April 2013.
Autocompletion lists can now appear in priority order or be sorted by Scintilla. Feature #981.
Most lexers now lex an extra NUL byte at the end of the document which makes it more likely they will classify keywords at document end correctly. Bug #574, Bug #588.
Haskell lexer improved in several ways. Bug #1459.
Matlab/Octave lexer recognises block comments and ... comments. Bug #1414.
Ruby lexer crash fixed with keyword at start of document.
The PLAT_NCURSES platform now called PLAT_CURSES as may work on other implementations.
Bug on Cocoa fixed where input composition with multiple selection or virtual space selection could make undo stop working.
Direct2D/DirectWrite mode on Windows now displays documents in non-Latin1 8-bit encodings correctly.
Character positioning corrected in Direct2D/DirectWrite mode on Windows to avoid text moving and cutting off lower parts of characters.
Position of calltip and autocompletion lists fixed on Cocoa.
While regular expression search in DBCS text is still not working, matching partial characters is now avoided by moving end of match to end of character.

Шапку поправьте pls!
Автор: maxidronische
Дата сообщения: 12.04.2013 12:03
mozers

Цитата:
Можно. Правкой содержимого SideBar.lua. Вот недавно новый автор nicksabaka добавил поддержку методов Nemerle.


Добавил свой кусок кода в SideBar.lua
[more]
    do --v----- RSL ------v--
        -- define local patterns
        local m = AnyCase"macro"
        local c = AnyCase"class"
        
        -- create additional captures
        local I = C(IDENTIFIER)*cl

        -- definitions to capture:
        local macro = Ct(m*SC^1*I*SC^0*par^-1)
        local class = Ct(c*SC^1*I*SC^0*par^-1)

        -- resulting pattern, which does the work
        local patt = (macro + class + IGNORED^1 + IDENTIFIER + 1)^0 * EOF

        Lang2lpeg.RSL = lpeg.Ct(patt)
    end --^----- RSL ------^--
[/more]

конструкции типа:
class test_class (...)
macro test_macro (...)
private macro test_macro (...)
отлавливаются

а как сделать так, чтобы отлавливались еще и такие конструкции:
class (parent_class) test_class (...)
???
Автор: TymurGubayev
Дата сообщения: 12.04.2013 19:35
maxidronische

Цитата:
class (parent_class) test_class (...)


если такой синтаксис возможен только после ключевого слова class, то как-то так:


Код:
local class = Ct(c*SC^1*(P"("*I*P")")^(-1)*SC^0*I*SC^0*par^-1)
Автор: Callisto_K
Дата сообщения: 11.05.2013 01:31
Доброго временм суток.

С недавних пор решила отказаться от использования нескольких редакторов и остановиться на одном, SciTE.
Но встала такая проблема. Есть у меня увлечение - Rainmeter, и при редактировании конфигурационных файлов, желательна своя подсветка синтаксиса. По структуре, это обычные .ini файлы, просто необходимо подсветить список определенных ключей и значений. К сожалению в SciTE я пока полный ноль и максимум научилась менять оформление Но уже надоела куча редакторов.

И поэтому прошу подсказать решение моей задачи или ткнуть носом, где про это можно почитать.
Автор: ALeXkRU
Дата сообщения: 11.05.2013 02:11
Callisto_K

Цитата:
при редактировании конфигурационных файлов, желательна своя подсветка синтаксиса. По структуре, это обычные .ini файлы

расширение у них какое?
чтобы они автоматически распознавались и подсвечивались, их расширение нужно добавить в перечень в файле SciTE\languages\others.properties. Открыть его можно через меню Настройки/Подключенные настройки/Открыть others.properties..

Проверить нужно, что соответствующий файл настроек подключен: в меню Настройки/Открыть файл.../Глобальных настроек,.. (а лучше перенести - скопировать - изменяемые параметры в файл Пользовательских настроек из глобальных), найти в секции [Languages] и раскомментировать так:
Код: # Другие неучтённые языки (*.properties;*.abbrev;*.ini;*.inf;*.reg;.txt;*.log;*.lst;*.doc;*.bat;*.cmd; и др.)
import ..\languages\others
Автор: Callisto_K
Дата сообщения: 11.05.2013 02:32

Цитата:
ЗЫ: очень полезно просмотреть файл глобальных настроек
Спасибо за подсказку, теперь буду знать. А то только что обновила программу и все мои настройки слетели

Расширение у них .ini, и бывают еще включения с расширением .inc.
И вот сейчас меня посетила мысль, что по идее еще нужно отлечить обычный .ini от моего.

Спасибо за наводку, попробую пока "покавыряться"
Автор: Skif_off
Дата сообщения: 11.05.2013 03:21
И снова о подсветке AviSynth
Крайняя версия SciTE-Ru, в SciTEUser.properties в секциях [Menu Language] и [Languages] добавлено соотв. AviSynth|avs||\ и import languages\avs, но ничего не подсвечивается. Насильно указать тип подсветки тоже не сразу получается: в меню Подсветка при открытии avs-скрипта пункт AviSynth не отмечен, при нажатии на него ничего не происходит, но если щелкнуть любой другой пункт, а после того, как у него появится галочка - снова нажать AviSynth, то появляется галочка уже у пункта AviSynth, но ничего не подсвечивается все равно. Как заставить работать подсветку?
Автор: Callisto_K
Дата сообщения: 11.05.2013 15:08
Ну, что же...
С настройками разобралась и как языки подключаются вроде тоже. Но вот сама структура и принцип построения самих languages\....properties пока остается загадкой
Поэтому, задам вопрос, так сказать, прямо в лоб. Возможно ли реализовать для .ini нечто вроде этого[more=Скрины]Из Sublime Text 2
http://4put.ru/pictures/small/612/1882241.jpg

Из Notepad++
http://4put.ru/pictures/small/612/1882249.jpg[/more]
Если подобное реализуемо, то тогда вижу смысл углубится в изучении данного вопросе, ну, а если нет, то нет
Автор: ALeXkRU
Дата сообщения: 11.05.2013 16:09
Callisto_K
в принципе, можно.. у N++ тот же движок, что у скайта..


Цитата:
сама структура и принцип построения самих languages\....properties пока остается загадкой

в others.properties тебя, в общем, интересует (если речь о подсветке) часть, посвящённая стилям лексера.. Находишь, примерно, в середине файла что-то вроде
others.properties [line 518] :
Код:
keywords.$(file.patterns.props)=$(keywordclass.props)
keywords2.$(file.patterns.props)=$(keywordclass2.props)
keywords3.$(file.patterns.props)=$(keywordclass3.props)

# Default
style.props.0=
# Comment
style.props.1=fore:#007F7F,$(font.comment)
# Section
style.props.2=fore:#7F007F,back:#E0F0F0,eolfilled
# Assignment operator
style.props.3=$(colour.operator)
# Default value (@)
style.props.4=$(colour.preproc)
# Key
style.props.5=fore:#0000FF
# Keys Set 0
style.props.6=fore:#AA00AA,bold
# Keys Set 1
style.props.7=fore:#FF7700,bold
# Keys Set 2
style.props.8=fore:#0000FF,bold
# Keys Set 3
style.props.9=fore:#00FF00,bold
# Keywords
style.props.10=fore:#CC0000,bold
# Matched Operators
style.props.34=fore:#0000FF,notbold
style.props.35=fore:#FF0000,notbold

comment.block.props=#
Автор: Skif_off
Дата сообщения: 11.05.2013 19:22
Проверил версии 3.0.3, 3.0.4, 3.1.0, 3.2.0, 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.5, 3.3.0, 3.3.1. Подсветка скриптов AviSynth добавлена в версии 3.0.3, тут она работает по умолчанию, в других - нет. Но причину таки нашел, в SciTEGlobal.properties:

Код: # To keep menus short, these .properties files are not loaded by default.
imports.exclude=abaqus asn1 au3 avenue avs baan blitzbasic bullant \
cobol cmake csound ecl escript flagship forth freebasic gap haskell inno \
kix latex lot lout metapost mmixal modula3 nimrod nncrontab nsis \
opal oscript powerpro powershell purebasic r rebol \
scriptol smalltalk sorcins spice specman \
tacl tal txt2tags verilog vhdl
# Newly removed: ave baan escript lot metapost mmixal
# The set of imports allowed can be set with
#imports.include=ave
Автор: ALeXkRU
Дата сообщения: 11.05.2013 22:35
Skif_off
всё работает:
- добавил в SciTE\home\SciTEUser.properties пару строк
в секции

Код: [Menu Language]
...
AviSynth|avs||\
...
Автор: Skif_off
Дата сообщения: 11.05.2013 23:06
ALeXkRU, спасибо, даже в голову не пришло Думал, как обычно - относительные пути относительно исполняемого файла.
Автор: Callisto_K
Дата сообщения: 13.05.2013 00:20

Цитата:
сорри за бледные шрифты
Да нормально все видно

Похоже я что-то я не то делаю. Сам стиль то настроить удалось, но вот как добавить список своих слов, увы не дошло.
И еще есть такой момент, в коде используются переменные заключенные в # (напр. #Variables#). Как с ними быть?
Автор: ivanmiro
Дата сообщения: 21.05.2013 11:27
Все доброго дня!
Подскажите, пожалуйста, по добавлению нового плагина.
Интересует добавление пути файла: http://lua-users.org/wiki/SciteFileBrowser


Сюда (SciTEGlobal.properties) добавил строки:

command.name.3.*=FileBrowser
command.mode.3.*=subsystem:lua,savebefore:no
command.3.*=dostring createContent()


Сюда (C:\Program Files (x86)\SciTE\tools) добавил файл "SciteFileBrwoser.lua" с кодом плагина.


Сюда (SciTEStartup.lua) добавил:

dofile (props["SciteDefaultHome"].."\\tools\\SciteFileBrwoser.lua")


Всё ли правильно я сделал и как теперь пользоваться плагином?
Спасибо!
Автор: mozers
Дата сообщения: 21.05.2013 18:45
ivanmiro
Все сделано правильно. Только:
- это lua скрипт. В SciTE плагинов нет;
- номер команды лучше поменять с 3 на, допустим, 229 (чтобы без проблем ее разыскать в меню Tools).
Строки, добавленные Вами в SciTEGlobal.properties лучше добавлять в SciTEUser.properties (он открывается по команде "Открыть файл пользовательских настроек");

Код: dofile (props["SciteDefaultHome"].."\\tools\\SciteFileBrwoser.lua")
Автор: ivanmiro
Дата сообщения: 21.05.2013 21:37

Цитата:
это lua скрипт. В SciTE плагинов нет;

- учтено!


Цитата:
добавлять надо в самый низ SciTEStartup.lua (иначе даблклик не заработает).

- добавил. Но что-то дабклик не удалось завести


Цитата:
Скрипт хорош разве что для обучения. Для практической деятельности в SciTE-Ru есть инструменты и поудобней.

- а можно поподробнее? Меня SciTE целиком устраивает, но данной функции не хватает.

Спасибо!
Автор: mozers
Дата сообщения: 22.05.2013 08:23
ivanmiro

Цитата:
Но что-то дабклик не удалось завести
Увы, но моей сообразительности не хватает чтобы догадаться что ты умудрился сделать не так Весьма странно что не работает.
Если строка подключения действительно помещена в самый низ SciTEStartup.lua, то скрипт не только будет перехватывать даблклик, он еще при этом заблокирует работу всех остальных скриптов, обрабатывающих это событие (это потому что скрипт слишком уж прост).


Цитата:
а можно поподробнее?
Как я понял из вопроса у тебя не оригинальный SciTE, а наша сборка.
Так тогда чем тебя SideBar (боковая панель) не устраивает??? В ней помимо файлового менеджера еще функционала немеряно.

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566

Предыдущая тема: Opera AC


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