|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Настройка русской версии SciTE под AutoIt |
|
|
Настройка русской версии SciTE под AutoIt
|
|
Пользователь Сообщения: 55 |
|
|
|
Отправлено: 20:32, 26-04-2010 |
|
Новый участник Сообщения: 19
|
Профиль | Отправить PM | Цитировать Вылез еще один необъяснимый глюк.
если набрать -1 и ткнуть пробел то оно преобразовывается в "eep(1000)". Я так понял это Sleep(1000) с обрезанными первыми 2мя символами. Похожим образом ведут себя -2, -3, -4 и -5. -6 работает нормально, а -7 раскрывается в целый кусок из au3.abbrev размером со страницу. Это я уже себе что-то накрутил, или это в сборку глюк забрался? |
|
Отправлено: 18:56, 27-02-2011 | #41 |
|
Старожил Сообщения: 307
|
Профиль | Отправить PM | Цитировать Цитата Dm666:
Предлагаю самое простое решение: в файле ...\SciTE\tools\AutoIt3.lua нужно после строчки вставить такой код смысл которого в том, что если первый символ в слове будет "-" или "*", то аббревиатура для такого искаться не будет - и соответственно ошибки в SciTE не будет. Дальше нужно сохраниться и перезагрузить SciTE. P.S. Может кто разбирается в lua и предложит другое рабочее решение? |
|
|
------- Отправлено: 22:26, 27-02-2011 | #42 |
|
Новый участник Сообщения: 19
|
Профиль | Отправить PM | Цитировать Цитата beve:
В очередной раз респект, работает как часы ![]() |
|
|
Отправлено: 22:53, 27-02-2011 | #43 |
|
Новый участник Сообщения: 19
|
Профиль | Отправить PM | Цитировать Подниму-ка я эту тему еще раз...
Сборка супер, пользоваться одно удовольствие. Но есть пара моментов: 1. Автодополнение. При правке au3 - файлов не подхватываются названия самописных функций из редактируемого файла. Например имеем код : Цитата:
Подозреваю, что надо править AutoIt.lua, но я в lua нулем... Может будут у кого-нибудь идеи? 2. В Scite4AutoIt был такая удобная фишка, как "перейти к функции" Прописана была так : #x 18 Jump to Func quickly command.name.18.$(au3)=Jump to Function Prod command.mode.18.$(au3)=subsystem:lua,savebefore ![]() command.shortcut.18.$(au3)=Ctrl+J command.18.$(au3)=InvokeTool AutoItGotoDefinition.GotoDefinition #x 20 Jump Back to original spot command.name.20.$(au3)=Jump Back command.mode.20.$(au3)=subsystem:lua,savebefore ![]() command.shortcut.20.$(au3)=Ctrl+Shift+J command.20.$(au3)=InvokeTool AutoItGotoDefinition.JumpBack Было удобно при ручной отладке скрипта. Ползешь себе курсором по тексту, представляешь что там в электронных мозгах происходит. И тут попадается строка вида _MySuperCoolBeepFunction(). Ставишь на нее курсор, жмешь Ctrl+J - и он прыгает на текст этой функции. Посмотрел что она делает, жмешь Ctrl+Shift+J - и курсор прыгает обратно... Я понимаю, что можно поставить метку, найти функцию в сайд-баре, а потом к метке вернуться, но столько телодвижений... Было удобнее. Пытался прикрутить этот самый AutoItGotoDefinition к текущей сборке, не выходит. Получаю > Lua: error checking global scope for command Уж как только с бубном не плясал - не работает. Без знания Lua никак. Any ideas? |
|
|
Отправлено: 19:00, 08-04-2011 | #44 |
|
Новый участник Сообщения: 27
|
Профиль | Отправить PM | Цитировать |
|
Отправлено: 19:45, 08-04-2011 | #45 |
|
Новый участник Сообщения: 19
|
Профиль | Отправить PM | Цитировать Цитата asdf8:
А названия самописных функций эта сборка тоже не подхватывает, жаль. |
|
|
Отправлено: 00:30, 09-04-2011 | #46 |
|
Новый участник Сообщения: 27
|
Профиль | Отправить PM | Цитировать Цитата Dm666:
![]() |
|
|
Отправлено: 00:47, 09-04-2011 | #47 |
|
Старожил Сообщения: 307
|
Профиль | Отправить PM | Цитировать Цитата:
Итак в файле настроек для языка autoit - au3.properties имеется такой параметр: autocomplete.au3.start.characters=.... Что он задает? Если в этом параметре задан какой то символ, то при вводе в SciTe этого символа будет производится поиск слова для автодополнения сейчас только из соответствующего api файла (au3.api) (в предыдущих версиях Scite производился поиск слов начинающихся с этого символа и из api файла и из текущего поля редактора SciTe ). Чтоб лучше понять, замените параметр autocomplete.au3.start.characters=... этим: # Символы, после ввода которых, возникает список автодополнения autocomplete.au3.start.characters=ABCDEFGHIJKLMNOPQRSTUVWXYZ@_# Вот такое решение я пока нашел для себя. Но есть еще такое замечание. Нам нужно всегда начинать писать функцию с заглавной буквы, думаю вы поняли почему. Например, нужно написать Msgbox(). Если мы начнем запись буквы M с заглавной, то нам предложиться варианты автодополнения из api файла (вылезет слово Msgbox(), если же из прописной,то варианты будут предложены только из текущего поля редактора (если они есть.). В случаи же "самописной" функции, с какой буквы вы начнете запись, не имеет значения, ибо как только будет написан прописной символ (и не будет подсказок из api файла), будет производится поиск в поле редактора на совпадения... |
|
|
------- Отправлено: 15:03, 09-04-2011 | #48 |
|
Новый участник Сообщения: 19
|
Профиль | Отправить PM | Цитировать Цитата beve:
В который раз уже респект тебе и уважуха. Спасибо. ![]() |
|
|
Отправлено: 22:03, 09-04-2011 | #49 |
|
Старожил Сообщения: 307
|
Профиль | Отправить PM | Цитировать Цитата:
Цитата:
1.Открываем файл ...\SciTE\tools\AutoIt3.lua 2.В начале файла объявляем переменные, пишем 3.Ищем функцию GotoDefinition() и удаляем ее вместо нее пишем 2 функции: function GotoDefinition()
local word = _GetWord()
if word == nil then
print("No word selected.")
return
end
text = editor:GetText()
place = string.find(text, "[Ff][Uu][Nn][Cc] " .. word)
if place then
current_line = editor:LineFromPosition(editor.CurrentPos)
current_word = word
current_pos = editor.CurrentPos
editor:GotoLine(editor:LineFromPosition(place))
else
print("Unable to find function definition.")
end
end -- GotoDefinition()
function JumpBack()
if current_pos ~= 0 then
local frompos = editor:WordStartPosition(current_pos)
local topos = editor:WordEndPosition(current_pos)
local last_word = editor:textrange(frompos, topos)
if current_line and last_word == current_word then
editor:GotoLine(current_line)
current_pos = 0
current_line = 0
else
print("Unable to find definition")
return
end
else
return
end
end --JumpBack()
# 15 GotoDefinition (перейти к указанной функции)) extension.*.au3="$(SciteDefaultHome)\tools\AutoIt3.lua" command.name.15.*.au3=GotoDefinition command.15.*.au3=GotoDefinition command.subsystem.15.*.au3=3 command.shortcut.15.*.au3=Ctrl+J command.save.before.15.*.au3=2 # 16 JumpBack (возвратиться в прежнее место, используется после вызова GotoDefinition) extension.*.au3="$(SciteDefaultHome)\tools\AutoIt3.lua" command.name.16.*.au3=JumpBack command.16.*.au3=JumpBack command.subsystem.16.*.au3=3 command.shortcut.16.*.au3=Ctrl+Shift+J command.save.before.16.*.au3=2 5. Сохраняемся. Перезапускаемся. Пользуемся. P.S. Dm666, кажеться ты меня раньше спрашивал, как изменить шрифт в всплывающих подсказках по синтаксису в SciTe. Тут случайно нашел. В файле ...\SciTE\SciTEGlobal.properties, шрифт меняется сдесь: может и не ты спрашивал, уже не помню, тогда комуто пригодится... |
||
|
------- Последний раз редактировалось beve, 10-04-2011 в 00:44. Отправлено: 00:12, 10-04-2011 | #50 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| Lua-скрипт для SciTE добавляющий заголовок к функции (UDF) | Creat0R | AutoIt | 5 | 30-05-2009 16:34 | |
|