Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) v8.1 + autohotkey = mini OpenConf (число прочтений - 51483 )
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
v8.1 + autohotkey = mini OpenConf
24. Ноября 2008 :: 19:04
Печать  
кто-нибудь уже пробовал скрипты для ahk писать?
описание программы: http://script-coding.info/AutoHotkeyTranslation.html

Скачать: https://github.com/ret-Phoenix/v8CfgAddsAhk

Описание + скрины: http://itpath.ru/v8cfgaddsahk/

v8CfgAddsAhk
============
Набор скриптов для автоматизации ряда действий в конфигураторе.

Реализует часть функционала из Снегопат (https://snegopat.ru/)

Установка
------------
1. Установить Autohotkey (http://www.autohotkey.com/)
2. Зарегистрировать библиотеки:
     - v8CfgAddsAhk\system\svcsvc.dll
     - v8CfgAddsAhk\system\WshExtra.dll
     
Запуск
------------
- v8CfgAddsAhk\v8CfgAdds.ahk (Основной набор скриптов)
- v8CfgAddsAhk\continueRow.ahk (Операции по переносу комментариев, строк). Автор ADirks

Реализованные функции
------------
- Вызов списка процедур: {ctrl +1}
- Поиск с рег.выражениями: {Alt+f}
- Поиск с рег.выражениями (результат последнего поиска): {Alt+r}
- Добавление ссылки на основной реквизит в модуле (преобразование модуля формы из обычных форм в управляемые): {Alt+h}
- Генератор кода для объектов метаданных (требуется предварительная генерация файла структуры обработкой v8CfgAddsAhk\ext\ПолучениеСтруктуры.epf): {Alt+g}
- Препроцессор функции: {Alt+7}
- Закоментировать строку: {ctrl + / (ctrl + .)}
- Развернуть модуль: {ctrl+i}
- Удаление строки: {Ctrl+y}
- Авторские комментарии:
     - блок добавлен: {alt+s}
     - блок изменен: {alt+e}
     - блок удален: {alt+d}
- Cимвол '<': {Ctrl-,}
- Cимвол '>': {Ctrl-.}
- Cимвол '|': {Ctrl-\}
- Копирование текущей строки и вставка в следующей: {ctrl+shift+c}
- Переход в процедуру: {ctrl+enter}
- Возврат на предыдущую позицию: {Alt,-}
- Форматирование модуля: {F6} (code_beautifier.pl - ADirks)
« Последняя редакция: 02. Сентября 2014 :: 13:32 - Phoenix »  

v8ahk.rar ( 53 KB | Загрузки )

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
Brr
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 142
Зарегистрирован: 26. Декабря 2006
Re: v8.1 + autohotkey = mini OpenConf
Ответ #1 - 25. Ноября 2008 :: 08:43
Печать  
Можно посмотреть как прикрутил?
  
Наверх
 
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #2 - 25. Ноября 2008 :: 11:24
Печать  
небольшая настройка:
- поиск с рег.выражениями с установками закладок
- комментирование текущей строки
- открытие списка процедур
- форматирование модуля (требуется разобраться почему вставляет кракозябру)

потребуется подправить пути скриптов.
  

ahk.zip ( 1 KB | Загрузки )

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #3 - 25. Ноября 2008 :: 11:38
Печать  
сцуко наболело  Улыбка)

Код
Выбрать все
; удаление строки Ctrl+y
$^y::
WinGetClass, class, A
If class = V8TopLevelFrame
	Send ^l
Else
	Send ^y
Return


;Закрытие окна сообщение Ctrl+z (не всем нравится)
$^z::
WinGetClass, class, A
If class = V8TopLevelFrame
	Send ^+z
Else
	Send ^z
Return


;символ '<' по Ctrl-,
$^,::
WinGetClass, class, A
If class = V8TopLevelFrame
	Send <
Else
	Send ^,
Return


;символ '>' по Ctrl-.
$^.::
WinGetClass, class, A
If class = V8TopLevelFrame
	Send >
Else
	Send ^.
Return
 

  
Наверх
 
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #4 - 25. Ноября 2008 :: 11:41
Печать  
Леша, вот ты и попался Улыбка
может подскажешь, что нужно сделать, чтобы твой содебьютифаер заработал нормально? Улыбка
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #5 - 25. Ноября 2008 :: 12:20
Печать  
Вот и началась Улыбка бедная-бедная автоматизация 8-ки Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #6 - 25. Ноября 2008 :: 12:29
Печать  
так, поправочка
Код
Выбрать все
; удаление строки Ctrl+y
$^SC015::
WinGetClass, class, A
If class = V8TopLevelFrame
	Send ^{SC026}
Else
	Send ^{SC015}
Return


;Закрытие окна сообщение Ctrl+z (не всем нравится)
$^SC02C::
WinGetClass, class, A
If class = V8TopLevelFrame
	Send ^+{SC02C}
Else
	Send ^{SC02C}
Return
 


вечная проблема с раскладкой в SendKey
  
Наверх
 
IP записан
 
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #7 - 26. Ноября 2008 :: 04:37
Печать  
после некоторых ковыряний и подсказки Артура получилось такое
Код
Выбрать все
Ctrl_A = ^{SC01E}
Ctrl_L = ^{SC026}
Ctrl_Shift_Z = ^+{SC02C}

#IfWinActive ahk_class V8TopLevelFrame
F6::

module = %temp%\module.1s
clipboard =

Send %Ctrl_A%

Send, ^{ins}
FileDelete %module%
FileAppend, %clipboard%, %module%
RunWait, perl S:\gcomp\scripts\code_beautifier\code_beautifier.pl -f %module%

FileRead, text, %module%

clipboard =
ClipPutText(text)
ClipWait
Send +{ins}

Return



; Вызов списка процедур: ctrl +1
#IfWinActive ahk_class V8TopLevelFrame
^1::
;SendMessage, 0x50,, 0x4090409,, A ;
;Send, ^!p
;SendMessage, 0x50,, 0x4190419,, A ;

SendMessage, 0x50,, 0x4090409,, A ;
Send %Ctrl_A%
Send, ^{ins}
FileDelete %temp%\module.1s
FileAppend, %clipboard%, %temp%\module.1s
;Send, {home}
Run, wscript .\scripts.js %temp%\module.1s proclist
Return


; удаление строки Ctrl+y
#IfWinActive ahk_class V8TopLevelFrame
$^SC015::Send %Ctrl_L%


;Закрытие окна сообщение Ctrl+z (не всем нравится)
#IfWinActive ahk_class V8TopLevelFrame
$^SC02C::Send %Ctrl_Shift_Z%


;символ '<' по Ctrl-,
#IfWinActive ahk_class V8TopLevelFrame
$^,::Send <


;символ '>' по Ctrl-.
#IfWinActive ahk_class V8TopLevelFrame
$^.::Send >

;символ '|' по Ctrl-\
#IfWinActive ahk_class V8TopLevelFrame
$^\::Send |




set_locale_ru()
{
	SendMessage, 0x50,, 0x4190419,, A
}



;From http://forum.script-coding.info  (http://forum.script-coding.info/viewtopic.php?id=1073)
ClipPutText(Text, LocaleID=0x419)
{
  CF_TEXT:=1, CF_LOCALE:=16, GMEM_MOVEABLE:=2
  TextLen   :=StrLen(Text)
  HmemText  :=DllCall("GlobalAlloc", UInt, GMEM_MOVEABLE, UInt, TextLen+1)  ; Запрос перемещаемой
  HmemLocale:=DllCall("GlobalAlloc", UInt, GMEM_MOVEABLE, UInt, 4)  ; памяти, возвращаются хэндлы.
  If(!HmemText || !HmemLocale)
    Return
  PtrText   :=DllCall("GlobalLock",  UInt, HmemText)   ; Фиксация памяти, хэндлы конвертируются
  PtrLocale :=DllCall("GlobalLock",  UInt, HmemLocale) ; в указатели (адреса).
  DllCall("msvcrt\memcpy", UInt, PtrText, Str, Text, UInt, TextLen+1) ; Копирование текста.
  NumPut(LocaleID, PtrLocale+0)		     ; Запись идентификатора локали.
  DllCall("GlobalUnlock",     UInt, HmemText)   ; Расфиксация памяти.
  DllCall("GlobalUnlock",     UInt, HmemLocale)
  If not DllCall("OpenClipboard", UInt, 0)	; Открытие буфера обмена.
  {
    DllCall("GlobalFree", UInt, HmemText)    ; Освобождение памяти,
    DllCall("GlobalFree", UInt, HmemLocale)  ; если открыть не удалось.
    Return
  }
  DllCall("EmptyClipboard")			   ; Очистка.
  DllCall("SetClipboardData", UInt, CF_TEXT,   UInt, HmemText)   ; Помещение данных.
  DllCall("SetClipboardData", UInt, CF_LOCALE, UInt, HmemLocale)
  DllCall("CloseClipboard")						  ; Закрытие.
}




ClipGetText(CodePage=1251)
{
  CF_TEXT:=1, CF_UNICODETEXT:=13, Format:=0
  If not DllCall("OpenClipboard", UInt, 0)		     ; Открытие буфера обмена.
    Return
  Loop
  {
    Format:=DllCall("EnumClipboardFormats", UInt, Format)  ; Перебор форматов.
    If(Format=0 || Format=CF_TEXT || Format=CF_UNICODETEXT)
	Break
  }
  If(Format=0)	  ; Текста не найдено.
    Return
  If(Format=CF_TEXT)
  {
    HmemText:=DllCall("GetClipboardData", UInt, CF_TEXT)  ; Получение хэндла данных.
    PtrText :=DllCall("GlobalLock",	 UInt, HmemText) ; Конвертация хэндла в указатель.
    TextLen :=DllCall("msvcrt\strlen",    UInt, PtrText)  ; Измерение длины найденного текста.
    VarSetCapacity(Text, TextLen+1)  ; Переменная под этот текст.
    DllCall("msvcrt\memcpy", Str, Text, UInt, PtrText, UInt, TextLen+1) ; Текст в переменную.
    DllCall("GlobalUnlock", UInt, HmemText)  ; Расфиксация памяти.
  }
  Else If(Format=CF_UNICODETEXT)
  {
    HmemTextW:=DllCall("GetClipboardData", UInt, CF_UNICODETEXT)
    PtrTextW :=DllCall("GlobalLock",	 UInt, HmemTextW)
    TextLen  :=DllCall("msvcrt\wcslen",    UInt, PtrTextW)
    VarSetCapacity(Text, TextLen+1)
    DllCall("WideCharToMultiByte", UInt, CodePage, UInt, 0, UInt, PtrTextW
					   , Int, TextLen+1, Str, Text, Int, TextLen+1
					   , UInt, 0, Int, 0)  ; Конвертация из Unicode в ANSI.
    DllCall("GlobalUnlock", UInt, HmemTextW)
  }
  DllCall("CloseClipboard")  ; Закрытие.
  Return Text
} 


Фишка была в том, что в клипборд текст засовывало приложение AHK, а у него включена аглицкая раскладка клавиатуры. Т.е. нужно либо принудительно включать AHK русскую раскладку, либо самостоятельно складывать текст в клипборд. Благо для второго варианта всё готовое есть на ScriptCoding.
Но конструкции типа DllCall("GlobalAlloc", UInt, GMEM_MOVEABLE, UInt, TextLen+1) в скриптах меня всегда сражали просто наповал  Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #8 - 26. Ноября 2008 :: 05:40
Печать  
Чуть проще написать
#IfWinActive ahk_class V8TopLevelFrame
один раз в начале скрипта, а не повторять каждый раз Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #9 - 26. Ноября 2008 :: 10:16
Печать  
Чтобы не дрочить раскладку, нужно посылать клавиши не буквально, а по скан-кодам. Например, вместо:
Код
Выбрать все
; Вызов списка процедур: ctrl +1
^1::
SendMessage, 0x50,, 0x4090409,, A ;
Send, ^!p
SendMessage, 0x50,, 0x4190419,, A ;
Return 


Лучше писать:
Код
Выбрать все
; вызов окна списка процедур: Сtrl+1
^1::
Send, ^!{sc019} ; Ctrl+Alt+P
Return
 

  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #10 - 26. Ноября 2008 :: 11:43
Печать  
А чем code_beautifier.pl лучше стандартного Alt+Shift+F?
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #11 - 26. Ноября 2008 :: 11:59
Печать  
  
Наверх
www  
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #12 - 26. Ноября 2008 :: 12:22
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 11:43:
А чем code_beautifier.pl лучше стандартного Alt+Shift+F?


убирает лишние пустые строки.
форматирует с отступом строки, если был перенос.
делает первую букву служебных слов заглавной
...

раздел на твоем ресурсе - отлично! т.к. этот ресурс несколько не по теме.
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #13 - 26. Ноября 2008 :: 13:06
Печать  
ADirks
Можно code_beautifier.pl я у себя опубликую?

All
И вообще, не возражаете, если я буду публиковать здешние скрипты у себя?
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #14 - 26. Ноября 2008 :: 13:12
Печать  
Phoenix писал(а) 26. Ноября 2008 :: 12:22:
убирает лишние пустые строки.
форматирует с отступом строки, если был перенос.
делает первую букву служебных слов заглавной
...

Было бы неплохо развернуть многоточие в конце Улыбка. Очень кратко, но развернуть. Чтобы было понятно.
Просто, чтобы ставить ActivePerl и всё такое, нужны причины Улыбка.
  
Наверх
www  
IP записан
 
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #15 - 26. Ноября 2008 :: 13:13
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 13:06:
ADirks
Можно code_beautifier.pl я у себя опубликую?

All
И вообще, не возражаете, если я буду публиковать здешние скрипты у себя?

Дык. Все скрипты из состава GComp выложены под GPL - публикуй себе наздоровье!
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #16 - 26. Ноября 2008 :: 13:36
Печать  
Ещё мысль. AutoHotkey поддерживает регулярные выражения и построение GUI. Так что лучше мыслить в этом направлении, а не работать через файлы с другими языками.

В порядке бреда: если всё-таки работать с другими языками, то, может, попытаться работать через буфер. Например, AutoHotkey срабатывает на горячую клавишу, помещает что надо в буфер и запускает что-то с ожиданием завершения процесса. Затем забирает из буфера результат. Насколько я знаю, перлы-питоны с буфером работают.
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #17 - 26. Ноября 2008 :: 13:41
Печать  
Вопрос. А как забрать с assembla.com скрипты с нормальными комментариями в коде? Там кракозябры какие-то.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #18 - 26. Ноября 2008 :: 13:42
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 13:36:
Ещё мысль. AutoHotkey поддерживает регулярные выражения и построение GUI. Так что лучше мыслить в этом направлении, а не работать через файлы с другими языками.

В порядке бреда: если всё-таки работать с другими языками, то, может, попытаться работать через буфер. Например, AutoHotkey срабатывает на горячую клавишу, помещает что надо в буфер и запускает что-то с ожиданием завершения процесса. Затем забирает из буфера результат. Насколько я знаю, перлы-питоны с буфером работают.

1. Другие языки пока привычнее Улыбка
2. По ожиданию - мы уже так и делаем Улыбка в этих же скриптах.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #19 - 26. Ноября 2008 :: 13:50
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 13:41:
Вопрос. А как забрать с assembla.com скрипты с нормальными комментариями в коде? Там кракозябры какие-то.


чем берешь исходники?
под win использую tortoiseSVN, никогда проблем с кириллицей при импорте не было, опять же чем скрипты смотришь?

по поводу других языков - присоединюсь к Артуру, мне например JS намного ближе, насчет GUI - видел, пока не придумал зачем может понадобиться.
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #20 - 26. Ноября 2008 :: 14:01
Печать  
Добавлю свои скромные 5 копеек.
Закирпичиватель для строк текста:

Код
Выбрать все
$SC11C::
	Enter()
Return

$SC01C::
	Enter()
Return

Enter()
{
	ClipSaved := ClipboardAll
	clipboard =
	Send +{Home}^{ins}{Right}

	FirstChar := SubStr(clipboard, 1, 1)
	if FirstChar = |
		fStr := 0
	Else
		fStr := 1

	Loop, parse, clipboard, `"
	{
		fStr := 1 - fStr
	}

	if fStr = 1
	{
		Send {SC01C}|
	}
	else
	{
		Send {SC01C}
	}

	Clipboard := ClipSaved
	ClipSaved =
}
 



P.S. Сильно не пинайте. Первый опыт в скриптовых языках Печаль
  
Наверх
 
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #21 - 26. Ноября 2008 :: 14:06
Печать  
Полезно, не будешь против, если добавлю в репозитарий?
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #22 - 26. Ноября 2008 :: 14:12
Печать  
ИМХО уже нужно делать меню макросов - хоткеи запоминать уж очень неудобно.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #23 - 26. Ноября 2008 :: 14:16
Печать  
Насколько сложно будет прикрутить твой скрипт для опенконфа?
насколько понял нужно повесить вывод меню на другое событие?
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #24 - 26. Ноября 2008 :: 14:21
Печать  
Phoenix писал(а) 26. Ноября 2008 :: 14:16:
Насколько сложно будет прикрутить твой скрипт для опенконфа?
насколько понял нужно повесить вывод меню на другое событие?

Главный вопрос - как автоматически или полуавтоматически составить список макросов?
Остальное уже намного проще - например, ГУИ есть или меню самому через ДЛЛ сделать Улыбка

ЗЫ Серый Кардинал, а есть ли возможность обращаться к КОМ-объектам из АутоХоткей-скрипта?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #25 - 26. Ноября 2008 :: 14:21
Печать  
Phoenix писал(а) 26. Ноября 2008 :: 13:50:
чем берешь исходники?
под win использую tortoiseSVN, никогда проблем с кириллицей при импорте не было, опять же чем скрипты смотришь?

Ничем, т.е. браузером Улыбка.
Но уже разобрался, вроде.
По первой ссылке - кракозябры, по второй - нормально.
http://trac.assembla.com/v8_ahk/browser/code_beautifier.pl
http://svn.assembla.com/svn/v8_ahk/code_beautifier.pl
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #26 - 26. Ноября 2008 :: 14:23
Печать  
Выложите сюда сборку из SVN, у меня инет мертвый что-то, черепаху не могу скачать Печаль
Я бы дома еще поюзал бы Улыбка

ЗЫ наконец-то что-то похожее на настоящее дело и к 81 нарисовалось Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #27 - 26. Ноября 2008 :: 14:25
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:23:
Выложите сюда сборку из SVN, у меня инет мертвый что-то, черепаху не могу скачать Печаль

УПС, уже не нужно, прямо с Веб-а же можно скачать, без SVN-клиента
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #28 - 26. Ноября 2008 :: 14:26
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:21:
ЗЫ Серый Кардинал, а есть ли возможность обращаться к КОМ-объектам из АутоХоткей-скрипта?

Есть, но через очень глубокий зад. Считай - нету. Например:
http://www.autohotkey.com/wiki/index.php?title=ADO
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #29 - 26. Ноября 2008 :: 14:34
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 14:26:
artbear писал(а) 26. Ноября 2008 :: 14:21:
ЗЫ Серый Кардинал, а есть ли возможность обращаться к КОМ-объектам из АутоХоткей-скрипта?

Есть, но через очень глубокий зад. Считай - нету. Например:
http://www.autohotkey.com/wiki/index.php?title=ADO

Неужели так сложно прицепить хотя бы OleAutomation через IDispatch - как в скриптах ?
Исходники интересно на чем написаны?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #30 - 26. Ноября 2008 :: 14:37
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:21:
Главный вопрос - как автоматически или полуавтоматически составить список макросов?
Остальное уже намного проще - например, ГУИ есть или меню самому через ДЛЛ сделать Улыбка

А чего его (список макросов) составлять-то? В каком-то "главном" скрипте держать его в каком-то виде, да и всё (строковая переменная хотя бы, или просто специальный файл). А меню не надо через DLL делать: AutoHotkey: меню своих команд по средней кнопке мыши на рабочем столе.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #31 - 26. Ноября 2008 :: 14:43
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 14:37:
artbear писал(а) 26. Ноября 2008 :: 14:21:
Главный вопрос - как автоматически или полуавтоматически составить список макросов?
Остальное уже намного проще - например, ГУИ есть или меню самому через ДЛЛ сделать Улыбка

А чего его (список макросов) составлять-то? В каком-то "главном" скрипте держать его в каком-то виде, да и всё (строковая переменная хотя бы, или просто специальный файл). А меню не надо через DLL делать: AutoHotkey: меню своих команд по средней кнопке мыши на рабочем столе.

Да, по меню понятно, спасибо.

Хочется как-то автоматически генерить этот спец.файл из файлов скриптов.
Нет ли такой фичи - получение списка определенных хоткеев или функций для скриптов *.ahk?

ЗЫ ты видел, как сделано у меня для Опенконфа?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #32 - 26. Ноября 2008 :: 14:43
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:34:
Неужели так сложно прицепить хотя бы OleAutomation через IDispatch - как в скриптах ?
Исходники интересно на чем написаны?

Исходники вроде на Си. Автор проги, насколько я помню, отказывается делать поддержку COM, т.к. не умеет Улыбка. Но я могу ошибаться Улыбка.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #33 - 26. Ноября 2008 :: 14:44
Печать  
Если нет возможности автоматом получить список скриптов, то небольшая проблема - будем ручками писать в спец.файл настройки.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #34 - 26. Ноября 2008 :: 14:46
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:43:
Нет ли такой фичи - получение списка определенных хоткеев или функций для скриптов *.ahk?

ЗЫ ты видел, как сделано у меня для Опенконфа?

Не понимай. Сформулируй задачу точнее Улыбка.
Как "сделано у тебя для Опенконфа", тоже не знаю Улыбка.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #35 - 26. Ноября 2008 :: 14:46
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 14:43:
artbear писал(а) 26. Ноября 2008 :: 14:34:
Неужели так сложно прицепить хотя бы OleAutomation через IDispatch - как в скриптах ?
Исходники интересно на чем написаны?

Исходники вроде на Си. Автор проги, насколько я помню, отказывается делать поддержку COM, т.к. не умеет Улыбка. Но я могу ошибаться Улыбка.

Ага, исходники для ВизуалС++ 2005
Тогда не должно быть больших проблем Улыбка

Нужно подумать, правда, насколько это нужно Улыбка и к какой задаче его применить.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #36 - 26. Ноября 2008 :: 14:47
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:44:
Если нет возможности автоматом получить список скриптов, то небольшая проблема - будем ручками писать в спец.файл настройки.

http://www.script-coding.info/AutoHotkey/IniRead.html
http://www.script-coding.info/AutoHotkey/IniDelete.html
http://www.script-coding.info/AutoHotkey/IniWrite.html
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #37 - 26. Ноября 2008 :: 14:49
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 14:46:
artbear писал(а) 26. Ноября 2008 :: 14:43:
Нет ли такой фичи - получение списка определенных хоткеев или функций для скриптов *.ahk?

ЗЫ ты видел, как сделано у меня для Опенконфа?

Не понимай. Сформулируй задачу точнее Улыбка.
Как "сделано у тебя для Опенконфа", тоже не знаю Улыбка.

Например, у нас есть несколько скриптов *.ahk в одной или нескольких папках.
Есть ли возможность получить из этих файлов список всех хоткеев и функций без параметров в виде - имя файла, имя хоткея или имя функции?

ЗЫ кстати, а как выполнить из одного скрипта вызов функци или хоткею другого скрипта? наверняка популярная задача?
можно просто линк дать или отправить в раздел русской доки Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #38 - 26. Ноября 2008 :: 14:50
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:46:
Ага, исходники для ВизуалС++ 2005
Тогда не должно быть больших проблем Улыбка

Нужно подумать, правда, насколько это нужно Улыбка и к какой задаче его применить.

Если ты сумеешь вкрячить в AHK полноценную поддержку COM-клиента, будешь народным героем, кроме шуток Улыбка. Можно попытаться связаться с Крисом (это автор) по этому поводу.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #39 - 26. Ноября 2008 :: 14:51
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 14:47:
artbear писал(а) 26. Ноября 2008 :: 14:44:
Если нет возможности автоматом получить список скриптов, то небольшая проблема - будем ручками писать в спец.файл настройки.

http://www.script-coding.info/AutoHotkey/IniRead.html
http://www.script-coding.info/AutoHotkey/IniDelete.html
http://www.script-coding.info/AutoHotkey/IniWrite.html

Спасибо, но проблема и правда небольшая Улыбка - проблема не писать, а проблема ручного ввода Улыбка ну не любля я его Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #40 - 26. Ноября 2008 :: 14:52
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:49:
Например, у нас есть несколько скриптов *.ahk в одной или нескольких папках.
Есть ли возможность получить из этих файлов список всех хоткеев и функций без параметров в виде - имя файла, имя хоткея или имя функции?

ЗЫ кстати, а как выполнить из одного скрипта вызов функци или хоткею другого скрипта? наверняка популярная задача?
можно просто линк дать или отправить в раздел русской доки Улыбка

По первому - вроде нет. Т.е. надо тупо читать файлы.
По второму:
http://www.script-coding.info/AutoHotkey/Include.html
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #41 - 26. Ноября 2008 :: 14:55
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 14:50:
artbear писал(а) 26. Ноября 2008 :: 14:46:
Ага, исходники для ВизуалС++ 2005
Тогда не должно быть больших проблем Улыбка

Нужно подумать, правда, насколько это нужно Улыбка и к какой задаче его применить.

Если ты сумеешь вкрячить в AHK полноценную поддержку COM-клиента, будешь народным героем, кроме шуток Улыбка. Можно попытаться связаться с Крисом (это автор) по этому поводу.

Крис на каком языке говорит?
КОМ-поддержка состоит из многих частей Печаль
Позднее связывание - OleAutomation через Диспатч-вызовы - ИМХО сделать не так сложно.
А вот раннее связывание, через виртуальные таблицы, как в примере для ADO, это гемор еще тот Печаль
Еще есть проблема АктивИкс и событий для них - правда, их я уже умею решать - например, в 1С++ разрулил Улыбка - наверное, также несложно.

Если есть нужная/тестовая/полезная задача, можно подумать над решением.
Лично мне это было бы интересно для повышения мастерства.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #42 - 26. Ноября 2008 :: 15:03
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:55:
Крис на каком языке говорит?
КОМ-поддержка состоит из многих частей Печаль
Позднее связывание - OleAutomation через Диспатч-вызовы - ИМХО сделать не так сложно.
А вот раннее связывание, через виртуальные таблицы, как в примере для ADO, это гемор еще тот Печаль
Еще есть проблема АктивИкс и событий для них - правда, их я уже умею решать - например, в 1С++ разрулил Улыбка - наверное, также несложно.

Если есть нужная/тестовая/полезная задача, можно подумать над решением.
Лично мне это было бы интересно для повышения мастерства.

Крис - на английском. Ты можешь спокойно запостить у них на форуме, он там постоянно читает и пишет.
Насколько я понимаю, CreateObject в VBScript - это исключительно позднее связывание? Если было хотя бы это, было бы уже очень круто. А задач сколько угодно - есть куча народу, которая в WSH вообще ни сном, ни духом, а на AHK пишут постоянно, даже довольно сложные GUI-программы. Для них поддержка COM была бы просто прорывом Улыбка.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #43 - 26. Ноября 2008 :: 15:05
Печать  
А как в AHK c поддержкой каких-нибудь объектов?
я вообще ничего не увидел по объектам в доке Печаль, возможно, что плохо смотрел.
Увидел переменную, функции и препроцессор, более ничего Печаль
Как в этом случае, без объектов, разруливать КОМ, непонятно Печаль

ЗЫ уехал домой, там инета нету Улыбка
завтра почитаю.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #44 - 26. Ноября 2008 :: 15:08
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 15:03:
Насколько я понимаю, CreateObject в VBScript - это исключительно позднее связывание? Если было хотя бы это, было бы уже очень круто. А задач сколько угодно - есть куча народу, которая в WSH вообще ни сном, ни духом, а на AHK пишут постоянно, даже довольно сложные GUI-программы. Для них поддержка COM была бы просто прорывом Улыбка.

1. Я свой аглицкий на показ не выставляю, к сожалению, еще слабоват Улыбка Печаль
2. Да, ВБ юзает исключительно позднее связывание.
3. Найди мне какую-нибудь задачу, плиз, поинтереснее по КОМ.
Сам понимаешь, при моей заинтересованности или заинтересованности родного для меня сообщества Улыбка дело будет быстрее, чем для какого-то виртуального и незнакомого лично мне сообщества Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #45 - 26. Ноября 2008 :: 15:10
Печать  
artbear писал(а) 26. Ноября 2008 :: 15:05:
А как в AHK c поддержкой каких-нибудь объектов?

Похоже, никак...
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #46 - 26. Ноября 2008 :: 16:20
Печать  
artbear писал(а) 26. Ноября 2008 :: 15:08:
3. Найди мне какую-нибудь задачу, плиз, поинтереснее по КОМ.
Сам понимаешь, при моей заинтересованности или заинтересованности родного для меня сообщества Улыбка дело будет быстрее, чем для какого-то виртуального и незнакомого лично мне сообщества Улыбка

Задач для COM-клиента миллион каких угодно, да хотя бы работа с ADO по той ссылке, которую я уже приводил выше. Да и вообще - всё, что угодно, что можно написать и на VBScript.

Хотя ладно, наверное, чёрт с ним, с COM, не надо гнать лошадей так быстро Улыбка.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #47 - 26. Ноября 2008 :: 18:26
Печать  
Phoenix писал(а) 26. Ноября 2008 :: 14:06:
Полезно, не будешь против, если добавлю в репозитарий?

Если это было мне, то, разумеется, буду только за.
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #48 - 26. Ноября 2008 :: 18:30
Печать  
sadovnikov писал(а) 26. Ноября 2008 :: 14:01:
Добавлю свои скромные 5 копеек.
Закирпичиватель для строк текста...

А для чего это?
Насколько я понял, ставить палки справа и слева от текста при нажатии Enter. А зачем палки справа?
И работает не очень надёжно. Иногда зацикливается и начинает осатанело печатать палки Очень довольный.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #49 - 26. Ноября 2008 :: 18:35
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 18:30:
А для чего это?
Насколько я понял, ставить палки справа и слева от текста при нажатии Enter. А зачем палки справа?
И работает не очень надёжно. Иногда зацикливается и начинает осатанело печатать палки Очень довольный.

Вообще-то должно было ставить "палки" только слева...
Научи, как у тебя они получились справа? И как в цикл смог загнать?
Тестировалось, конечно, суперочень мало, но не до такого же... Стыдно Печаль
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #50 - 26. Ноября 2008 :: 18:43
Печать  
sadovnikov писал(а) 26. Ноября 2008 :: 18:35:
Вообще-то должно было ставить "палки" только слева...
Научи, как у тебя они получились справа? И как в цикл смог загнать?

Это пусть Крис научит, ведь это его рук дело Очень довольный.
Мои соображения:
1. Можно писать так:
Код
Выбрать все
~$SC11C:: ; Enter на "цифровой" клавиатуре
~$SC01C:: ; Enter
	MsgBox, Вы нажали какой-то из Enter'ов
Return
 


2. Метаться курсором влево-вправо и хватать что-то в буфер не совсем хорошо, т.к. снижает надёжность и некрасиво мелькает.
3. Я бы не мудрствовал лукаво, а просто палку после Enter'a повесил бы на Shift+Enter, ничего вообще в скрипте не анализируя. Потянет?
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #51 - 26. Ноября 2008 :: 18:48
Печать  
Немного к предыдущему. Доллар - это средство против "зацикливания", когда процедура собирается посылать ту же клавишу, по которой вызывается. Тильда позволяет отдать клавишу активному окну, не взирая на то, что эта клавиша перехвачена скриптом.
К третьему пункту. Так, по-моему, в этой ситуации даже гораздо удобнее - не машина за тебя думает, а ты сам решаешь, ставить палку, или нет.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #52 - 26. Ноября 2008 :: 18:49
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 18:43:
Мои соображения:
1. Можно писать так:
Код
Выбрать все
~$SC11C:: ; Enter на "цифровой" клавиатуре
~$SC01C:: ; Enter
	MsgBox, Вы нажали какой-то из Enter'ов
Return
 



Завтра гляну, что означает знак "~". Прохалявил, не читал про него в доке...

The gray Cardinal писал(а) 26. Ноября 2008 :: 18:43:
2. Метаться курсором влево-вправо и хватать что-то в буфер не совсем хорошо, т.к. снижает надёжность и некрасиво мелькает.

Еще как некрасиво. Да еще и тормознуто. Вот только не смог придумать, как по другому строку программного текста выхватить... Есть идеи? Или просто готовые решения, в которые мменя можно носом ткнуть?

The gray Cardinal писал(а) 26. Ноября 2008 :: 18:43:
3. Я бы не мудрствовал лукаво, а просто палку после Enter'a повесил бы на Shift+Enter, ничего вообще в скрипте не анализируя. Потянет?

Неа... В том-то и была задумка, чтобы повторить поведение семерки. Чтобы прогеру не заморачиваться - надо "палку" ставить или нет. У прогера комп есть, пусть он об этом заботится. А прогер - о возвышенном думает Улыбка
  
Наверх
 
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #53 - 26. Ноября 2008 :: 18:53
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 18:48:
Доллар - это средство против "зацикливания", когда процедура собирается посылать ту же клавишу, по которой вызывается.

Волт я и удивляюсь - как удалось в цикл-то  загнать? Баксик-то у меня стоит...
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #54 - 26. Ноября 2008 :: 18:53
Печать  
sadovnikov писал(а) 26. Ноября 2008 :: 18:49:
Завтра гляну, что означает знак "~".

Дело не в тильде. Я просто хотел показать, что две клавиши могут висеть на одной процедуре.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #55 - 26. Ноября 2008 :: 18:56
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 18:53:
Дело не в тильде. Я просто хотел показать, что две клавиши могут висеть на одной процедуре.

О как. Спасибо. Не уловил сразу. Удобно.
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #56 - 26. Ноября 2008 :: 19:11
Печать  
sadovnikov писал(а) 26. Ноября 2008 :: 18:49:
Чтобы прогеру не заморачиваться - надо "палку" ставить или нет. У прогера комп есть, пусть он об этом заботится. А прогер - о возвышенном думает Улыбка

Просто искать кавычку в строке мало (это частный случай). В общем случае нужно смотреть, нет ли незакрытых кавычек в части строки перед курсором. Это долго Улыбка. Пусть уж лучше человек принимает решение, ставить палку или нет, а машина выполняет Подмигивание. Мне кажется, что Shift+Enter станет рефлекторным буквально через пять минут, кстати.

Насчёт того, как избавиться от скакания курсором, чтобы прочитать текст, подумаю. Хорошо бы найти способ достучаться до элемента управления, в котором находится курсор, и захватить его текст. AHK умеет вызывать Win32API, так что вопрос теоретически может оказаться решаемым.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #57 - 26. Ноября 2008 :: 19:22
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 19:11:
Просто искать кавычку в строке мало (это частный случай). В общем случае нужно смотреть, нет ли незакрытых кавычек в части строки перед курсором.

пардон, но скрипт как раз это и делает. Причем, еще и наличие "палки" в начале строки анализирует.

The gray Cardinal писал(а) 26. Ноября 2008 :: 19:11:
Насчёт того, как избавиться от скакания курсором, чтобы прочитать текст, подумаю. Хорошо бы найти способ достучаться до элемента управления, в котором находится курсор, и захватить его текст. AHK умеет вызывать Win32API, так что вопрос теоретически может оказаться решаемым.

Вот это было бы вообще супер.
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #58 - 26. Ноября 2008 :: 22:33
Печать  
sadovnikov писал(а) 26. Ноября 2008 :: 18:35:
Научи, как у тебя они получились справа? И как в цикл смог загнать?

Учу: никогда не выключай автоматический режим Punto Switcher, и запускай одновременно самых разных скриптов AutoHotkey побольше, побольше, как можно больше. И крайне желательно - со взаимоисключающими директивами глобального назначения. И будет тебе счастья немеряно! Но главное - Punto Switcher!

P.S. Всё работает, на самом деле, спасибо за скрипт Улыбка.
http://forum.script-coding.info/viewtopic.php?pid=16320#p16320
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #59 - 27. Ноября 2008 :: 04:15
Печать  
Phoenix в репозитарий выложил скрипт continueRow.ahk, основанный на исходном скрипте Олега и
который продолжает не только текстовые строки с |, а и комментарии.
Предлагаю посмотреть и решить, как правильно.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #60 - 27. Ноября 2008 :: 04:24
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 22:33:
P.S. Всё работает, на самом деле, спасибо за скрипт Улыбка.
http://forum.script-coding.info/viewtopic.php?pid=16320#p16320

В приведенном у тебя авто-скрипте коммент неверный - ты пишешь про Шифт+Энтер, а нужно просто Энтер Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #61 - 27. Ноября 2008 :: 05:19
Печать  
The gray Cardinal писал(а) 26. Ноября 2008 :: 22:33:
Учу: никогда не выключай автоматический режим Punto Switcher...

Не получится у меня Punto Switcher не отключать... Нету его у меня Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #62 - 27. Ноября 2008 :: 06:04
Печать  
artbear писал(а) 26. Ноября 2008 :: 13:42:
The gray Cardinal писал(а) 26. Ноября 2008 :: 13:36:
Ещё мысль. AutoHotkey поддерживает регулярные выражения и построение GUI. Так что лучше мыслить в этом направлении, а не работать через файлы с другими языками.

1. Другие языки пока привычнее Улыбка

Еще добавлю - раз в AHK нет поддержки COM, некоторые вещи сделать крайне трудно.
Например, есть отличный сервисный объект Svcsvc с кучей методов, автор Саша Орефков.
Самый важнейший - это FilterValue - выбор значений из списка с отличной и удобной фильтрацией по подстрокам.
Из AHK его не вызовешь никак, поэтому и приходится юзать другой язык Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #63 - 27. Ноября 2008 :: 06:15
Печать  
Может я не совсем в тему а может подойдет Auto At3

com там есть, ActiveX тоже. да и много чего еще.
писал на нем инсталяшку после освоения вещь .
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #64 - 27. Ноября 2008 :: 06:54
Печать  
Z1 писал(а) 27. Ноября 2008 :: 06:15:
Может я не совсем в тему а может подойдет Auto At3

com там есть, ActiveX тоже. да и много чего еще.
писал на нем инсталяшку после освоения вещь .

Наверное, AutoIt3 все-таки?

Серый Кардинал, что скажешь про разницу?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #65 - 27. Ноября 2008 :: 06:58
Печать  
artbear писал(а) 27. Ноября 2008 :: 06:54:
Z1 писал(а) 27. Ноября 2008 :: 06:15:
Может я не совсем в тему а может подойдет Auto At3

com там есть, ActiveX тоже. да и много чего еще.
писал на нем инсталяшку после освоения вещь .

Наверное, AutoIt3 все-таки?

Серый Кардинал, что скажешь про разницу?

да  он самый AutoIt3 http://www.autoitscript.com/autoit3/
у Серого Кардинала на сайте тоже есть куча информации о нем
  
Наверх
 
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #66 - 27. Ноября 2008 :: 07:46
Печать  
Чуток модифицировал "закирпичиватель" - сделал включение/отключение нажатием Ctrl + Shift + |
Код
Выбрать все
IsContinueRowMode := false ;Включен/отключен "закирпичиватель"

#IfWinActive ahk_class V8TopLevelFrame

; Автоматическая печать символа "|" после перевода строки, при необходимости - Enter.
; Автоматическая печать символов комментария "//" после перевода строки по Shift+Enter, если текущая.строка также является комментарием.
$SC01C:: ; Enter
$SC11C:: ; Enter на "цифровой" клавиатуре
	If IsContinueRowMode
		continueRow("|", """", 1)
	Else
		Send, % "{" . SubStr(A_ThisHotkey, 2) . "}"
Return

+$SC01C:: ; Shift+Enter
+$SC11C:: ; Shift+Enter на "цифровой" клавиатуре
	continueRow("//","//",2)
Return

;Ctrl + Shift + |
;Включить/выключить автоматическую печать символов
^+SC02B:: IsContinueRowMode := Not IsContinueRowMode

continueRow(prmStr,prmStrParent,prmNum)  
{
	ClipSaved := ClipboardAll
	ClipWait

	_A_KeyDelay := A_KeyDelay
	SetKeyDelay 0 ;Данная команда задает более быструю эмуляцию нажатий клавиш, чем определено по умолчанию.

	clipboard =
	SendInput +{Home}^{ins}
	ClipWait

	StringReplace clipboard, clipboard, %A_Tab%
	If (StrLen(clipboard) > 0)
		SendInput {Right}
	Else
		clipboard = NULL

	FirstChar := SubStr(clipboard, 1, prmNum)
	if FirstChar = %prmStr%
		fStr := 0
	Else
		fStr := 1

	Loop, parse, clipboard, %prmStrParent%
	{
		fStr := 1 - fStr
	}

	if fStr = 1
	{
		SendInput {SC01C}%prmStr%
	}
	else
	{
		SendInput {SC01C}
	}

	Clipboard := ClipSaved
	ClipSaved =

	SetKeyDelay _A_KeyDelay
}
 


« Последняя редакция: 28. Ноября 2008 :: 09:54 - sadovnikov »  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #67 - 27. Ноября 2008 :: 08:52
Печать  
artbear писал(а) 27. Ноября 2008 :: 04:24:
В приведенном у тебя авто-скрипте коммент неверный - ты пишешь про Шифт+Энтер, а нужно просто Энтер Улыбка

Последствия копи-пастинга, исправил.
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #68 - 27. Ноября 2008 :: 08:53
Печать  
artbear писал(а) 27. Ноября 2008 :: 06:54:
Наверное, AutoIt3 все-таки?

Серый Кардинал, что скажешь про разницу?

Только то, что там есть COM. Я AutoIt3 практически не знаю.
  
Наверх
www  
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #69 - 27. Ноября 2008 :: 09:19
Печать  
Обновления скриптов будут выкладываться в 0 посте
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #70 - 27. Ноября 2008 :: 11:54
Печать  
Скрипт в посте 66 обновлен.
- Убран косяк, возникающий, когда курсор при нажатии энтера находится левее текста.
- Send заменен на SendInput
- Более надежная работа с буфером обмена
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #71 - 27. Ноября 2008 :: 12:24
Печать  
artbear писал(а) 27. Ноября 2008 :: 06:54:
Наверное, AutoIt3 все-таки?

Серый Кардинал, что скажешь про разницу?

AutoHotkey versus AutoIT
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #72 - 27. Ноября 2008 :: 13:22
Печать  
Мне кажется, можно притормозить лошадей и немного подумать Подмигивание.

Во-первых - AutoHotkey versus AutoIT. Их можно теоретически использовать и в связке, наверное. Только хорошенько продумать, как именно. В порядке бреда: например, AutoHotkey может сэмулировать какое-нибудь труднонажимаемое вручную глобальное сочетание клавиш, на которое сработает AutoIT, в котором уже есть COM и всё такое Улыбка.

Во-вторых, если уж AutoHotkey, то не бросаться на все эти Ctrl+A, Ctrl+Ins с мельканием экрана, и вызовом всяческих приблуд через файлы с мельканием окон командного интерпретатора. И, если использовать наработки под openConf, то предварительно договориться, какие именно, а не вхреначивать всё, что пришло в голову и было установлено на своём любимом компьютере в течение последней пятилетки (в репозитарии текущего проекта уже есть вызовы компонентов, которых в этом репозитарии нет, т.е. начинается бардачок-с Подмигивание).

Здесь надо хорошо продумать стратегию проекта.

Если AutoHotkey хорошо умеет вызывать экспортируемые функции из DLL (в том числе и с callback'ом, кстати), то, может, подумать о написании таких "расширений"? Может, можно написать компонент, который, например, получает текст активного текстового редактора восьмёры по его HWND (который вроде можно получить в AutoHotkey), и т.д. А может, и писать ничего не надо, а хорошенько поискать фриварные библиотеки подобного толка?
  
Наверх
www  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #73 - 27. Ноября 2008 :: 13:35
Печать  
The gray Cardinal писал(а) 27. Ноября 2008 :: 13:22:
Мне кажется, можно притормозить лошадей и немного подумать Подмигивание.

Во-первых - AutoHotkey versus AutoIT. Их можно теоретически использовать и в связке, наверное. Только хорошенько продумать, как именно. В порядке бреда: например, AutoHotkey может сэмулировать какое-нибудь труднонажимаемое вручную глобальное сочетание клавиш, на которое сработает AutoIT, в котором уже есть COM и всё такое Улыбка.

А может так при наступлении какого либо события AutoHotkey
вызовет exe модуль AutoIT с параметром.
по этому параметру AutoIT отработает (сложным образом com )
и AutoHotkey продолжит работу.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #74 - 27. Ноября 2008 :: 13:37
Печать  
The gray Cardinal писал(а) 27. Ноября 2008 :: 13:22:
Может, можно написать компонент, который, например, получает текст активного текстового редактора восьмёры по его HWND (который вроде можно получить в AutoHotkey), и т.д. А может, и писать ничего не надо, а хорошенько поискать фриварные библиотеки подобного толка?

ПРобовал разных шпионов, в т.ч. и отличный http://s0m.narod.ru/iws.html, и дельфовский, и С-ный, и от AHK и еще некоторые
У восьмерки никто не смог получить внутренний текст даже окна текстового редактора Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #75 - 27. Ноября 2008 :: 13:49
Печать  
Просто AutoHotkey'ем хорошо делать "малую автоматизацию", т.е. заменить шорткаты и подобное. Вызывать из AutoHotkey script.js, который вызывает script.wsc, который вызывает my.dll - это чересчур.
  
Наверх
www  
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #76 - 27. Ноября 2008 :: 13:58
Печать  
Добавил в репозитарий системные файлы для работы скриптов.


P.S.
Саша, а есть другой вариант?
на данный момент мне неизвестны проекты которые бы внедрялись в процеесс 8-ки и расширяли ее функционал.
может быть они и есть, но не уверен что свободные


  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #77 - 27. Ноября 2008 :: 14:15
Печать  
Phoenix писал(а) 27. Ноября 2008 :: 13:58:
...а есть другой вариант?

Может, и нет. Просто мне не очень нравится цепочка вызовов AHK-JS-WSC-DLL. Длинновато. Это отпугивает. Хочется пару звеньев из середины выкинуть Улыбка. К тому же, в реале цепочка иногда наверное ещё длиннее, т.к. разные WSC используют друг друга или ещё что-нибудь.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #78 - 27. Ноября 2008 :: 14:21
Печать  
Кстати, Svcsvc несложно доработать, добавив спец.экспортные функции для COM-аналогов, т.к. все методы очень просты с точки зрения параметров - строки и числа.
Но это промежуточное решение, конечно Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #79 - 27. Ноября 2008 :: 14:36
Печать  
Информация к размышлению.
Из хелпа программы "Kleptomania".
Цитата:
Технология Direct Klepting, или внутри Kleptomania

Kleptomania применяет технологию Direct Klepting, основанную на механизме оптического распознавания символов (OCR). Этот механизм обнаруживает символы в растровом изображении и определяет их точные свойства; т.е., расположение, шрифт, начертание и размер. OCR имеет два источника данных - зафиксированное изображение и База данных образцов шрифта. База данных образцов шрифта создается из шрифтов установленных в Windows. Более подробно см. в разделе База данных шрифта.

Textract - библиотека захвата экранного текста (OCR)

Textract - инструмент разработчика, основанный на технологии Direct Klepting. Textract позволяет зафиксировать экранный текст в Windows 95/98/ME/NT/2000/XP, под управлением другой программы. Textract - инструмент разработчика в форме OCX, DLL и EXE, который может быть интегрирован разработчиком в другой продукт или программное решение. Загрузите Textract 2.9 Trial (1,93 МБ) и попробуйте его.

Отделы контроля качества  программного обеспечения могут использовать Textract для захвата текста тестируемого приложения и сравнения этого текста с планируемым контентом. Textract хорошо подходит для корпоративной среды как инструмент взаимодействия программ, для передачи текста от одного исходного приложения другому. Textract  особенно полезен, если это исходное приложение является сторонним, или не может быть изменено, или изменить его трудно и овчинка выделки не стоит, и нет никакой адекватной внедренной поддержки передачи информации.

Textract основан на технологии Direct Klepting, специальной технологии оптического распознавания символов(OCR) для распознавания растеризованного текста с экрана компьютера. Таким образом, Textract может захватывать текст от любой части любого приложения, даже в программах, неподозревающих о буфере обмена и технологии OLE, например: от дерева папок, списков файлов, отчетов баз данных, текста окон диалогов и сообщений, меню, строки состояния, унаследованных систем (DOS). Технология Direct Klepting защищена авторскими правами 1996-2005 Structu Rise.

Часть Textract, Textra.EXE является автономным консольным Win32 приложением с простым, но все еще мощным интерфейсом командной строки. Textra.EXE самый простой способ захватить текст, используя perl-скрипты, командные файлы, сценарии инсталляции, и любую другую утилиту, позволяющую  выполнять программы. Textra.EXE может фиксировать текст с экрана или из файлов точечной графики и сохранять его в файл в виде обычного текста, RTF, в двоичном формате и подробном текстовом.

Другая часть Textract, Textract.DLL является динамически загружаемой библиотекой с простым  API для вызова из программ, написанных на C++, Visual Basic, Power Builder и любом другом языке программирования с поддержкой DLL. Наилучшая для использования в качестве строительного блока целой программы, которая требует захвата текста, типа управления вашим собственным оборудованием посредством текста, зафиксированного от DOS-приложения. Textract.DLL может распознавать текст с экрана или из файлов точечной графики и сохранять результат в память или файл в виде обычного текста, RTF,  в двоичном формате и подробном текстовом.

Textract содержит MFC и VB примеры, поясняющие как использовать все особенности Textract.DLL. Textract также содержит примеры использования DLL для консоли C++, которые показывают самые простые возможности использования каждого режима ввода/вывода. Примеры MFC, VB и режима консоли снабжены исходным текстом и готовыми для использования откомпилированными EXE.

Вы можете заказать Textract Commercial в сети, по телефону, факсу, выписать чек, заказать по почте или просто заказать. Лицензия Textract включает гарантию возврата денег в течение 30 дней. Одиночная лицензия стоит 149$. Купите сейчас!

Вы можете бесплатно загрузить Textract 2.9 Trial с Веб страницы Textract, работающий 40 дней с момента инсталляции. Вы должны так же попробовать Kleptomania, чтобы оценить качество распознавания  и скорость технологии Direct Klepting. Textract и Kleptomania, оба используют один и тот же механизм захвата текста, основанный на технологии Direct Klepting. Версия для ознакомления Kleptomania включена в Textract.


Пожалуйста, не стесняйтесь спрашивать больше об особенностях Textract, использовании, политике распространения, покупке, демонстрационной и коммерческой версиях, отправив письмо на support@structurise.com
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #80 - 27. Ноября 2008 :: 15:11
Печать  
sadovnikov писал(а) 27. Ноября 2008 :: 11:54:
Скрипт в посте 66 обновлен.
- Убран косяк, возникающий, когда курсор при нажатии энтера находится левее текста.
- Send заменен на SendInput
- Более надежная работа с буфером обмена

Там очепятки:
Цитата:
Error at line 26.

Line Text: continueRow(prmStr,prmStrParent,prmNum)
Error: Functions cannot contain functions.

The program will exit.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #81 - 28. Ноября 2008 :: 05:10
Печать  
The gray Cardinal писал(а) 27. Ноября 2008 :: 15:11:
Там очепятки


Поправил.
Блин, что ж такое маленькое-то окошко для ввода/редактирования текста сообщения Печаль Жутко неудобно, когда код туда всовываешь...
  
Наверх
 
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #82 - 28. Ноября 2008 :: 07:17
Печать  
Какие еще хотелки хотелось бы увидеть/решить для Конфигуратора 8.1?
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #83 - 28. Ноября 2008 :: 07:53
Печать  
Еще одно уточнение от artbear:
Код:
#IfWinActive ahk_class V8TopLevelFrame
надо доукомплектовать до:
#IfWinActive ahk_class V8TopLevelFrame
#IfWinActive Конфигуратор
Иначе веселуху наблюдаем в режиме исполнения Улыбка
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #84 - 28. Ноября 2008 :: 07:58
Печать  
А у вас вот это работает?
Код
Выбрать все
Send %A_ThisHotkey% 


У меня это посылает буквальную строку, а не саму клавишу. В справке вроде не сказано, что аргументом Send может быть переменная, кстати.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #85 - 28. Ноября 2008 :: 08:01
Печать  
The gray Cardinal писал(а) 28. Ноября 2008 :: 07:58:
А у вас вот это работает?
Код
Выбрать все
Send %A_ThisHotkey% 


У меня это посылает буквальную строку, а не саму клавишу. В справке вроде не сказано, что аргументом Send может быть переменная, кстати.

Очень странно. Прекрасно работает...
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #86 - 28. Ноября 2008 :: 08:04
Печать  
sadovnikov писал(а) 28. Ноября 2008 :: 07:53:
Еще одно уточнение от artbear:
Код:
#IfWinActive ahk_class V8TopLevelFrame
надо доукомплектовать до:
#IfWinActive ahk_class V8TopLevelFrame
#IfWinActive Конфигуратор
Иначе веселуху наблюдаем в режиме исполнения Улыбка

#IfWinActive Конфигуратор ahk_class V8TopLevelFrame
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #87 - 28. Ноября 2008 :: 08:09
Печать  
The gray Cardinal писал(а) 28. Ноября 2008 :: 08:04:
#IfWinActive Конфигуратор ahk_class V8TopLevelFrame

Согласен, так будет гораздо красивее.
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #88 - 28. Ноября 2008 :: 08:44
Печать  
sadovnikov писал(а) 27. Ноября 2008 :: 11:54:
- Send заменен на SendInput

Кстати. Обратите внимание, что при умолчальной установке AutoHotkey она ставит шаблон для контекстного меню Проводника "Создать" - "AutoHotkey Script". В этом шаблоне есть строка:
Код
Выбрать все
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
 

  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #89 - 28. Ноября 2008 :: 09:39
Печать  
Посыл клавишей самой себя, рецепт от YMP:
Код
Выбрать все
$SC01C:: ; Enter
$SC11C:: ; Enter на "цифровой" клавиатуре
    Send, % "{" . SubStr(A_ThisHotkey, 2) . "}"
Return
 

  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #90 - 28. Ноября 2008 :: 09:48
Печать  
The gray Cardinal писал(а) 28. Ноября 2008 :: 07:58:
А у вас вот это работает?
Код
Выбрать все
Send %A_ThisHotkey% 


У меня это посылает буквальную строку, а не саму клавишу. В справке вроде не сказано, что аргументом Send может быть переменная, кстати.

Блин, карма у тебя плохая Улыбка Сел экспериментировать, чтобы добиться такой ошибки. Добился. А обратно в работающее состояние вернуть не получилось Улыбка
В общем, в итоге в скрипте строку
     Send %A_ThisHotkey%
заменил на
     _Str = %A_ThisHotkey%
     StringReplace _Str, _Str, $
     SendInput {%_Str%}
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #91 - 28. Ноября 2008 :: 09:52
Печать  
sadovnikov писал(а) 27. Ноября 2008 :: 11:54:
- Убран косяк, возникающий, когда курсор при нажатии энтера находится левее текста.

А вот это не понял. У меня поведение не изменилось, да и никакого косяка не было и нет вроде. Что за косяк?
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #92 - 28. Ноября 2008 :: 09:55
Печать  
sadovnikov писал(а) 28. Ноября 2008 :: 09:48:
В общем, в итоге в скрипте строку
     Send %A_ThisHotkey%
заменил на
     _Str = %A_ThisHotkey%
     StringReplace _Str, _Str, $
     SendInput {%_Str%}

На всякий случай: см. мой пост непосредственно перед твоим.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #93 - 28. Ноября 2008 :: 10:01
Печать  
The gray Cardinal писал(а) 28. Ноября 2008 :: 09:39:
Посыл клавишей самой себя, рецепт от YMP:
Код
Выбрать все
$SC01C:: ; Enter
$SC11C:: ; Enter на "цифровой" клавиатуре
    Send, % "{" . SubStr(A_ThisHotkey, 2) . "}"
Return
 


Ага, проще. Прислушался Улыбка

The gray Cardinal писал(а) 28. Ноября 2008 :: 09:52:
sadovnikov писал(а) 27. Ноября 2008 :: 11:54:
- Убран косяк, возникающий, когда курсор при нажатии энтера находится левее текста.

А вот это не понял. У меня поведение не изменилось, да и никакого косяка не было и нет вроде. Что за косяк?

Попробуй в старой редации скрипта поставить курсор перед, например, КонецПроцедуры (тоесть, пред первым символом) и нажать энтер.  Из-за строчки:
SendInput +{Home}^{ins}{Right}
курсор перепрыгивал на символ вправо и резал текст.
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #94 - 28. Ноября 2008 :: 10:18
Печать  
sadovnikov писал(а) 28. Ноября 2008 :: 10:01:
Попробуй в старой редации скрипта поставить курсор перед, например, КонецПроцедуры...

У тебя, думаешь, карма хорошая? Очень довольный
У меня в новом скрипте этот глюк есть (в старом - тоже). И ещё иногда Enter напрочь заклинивает (перестаёт реагировать на нажатия вообще).
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #95 - 28. Ноября 2008 :: 10:21
Печать  
The gray Cardinal писал(а) 28. Ноября 2008 :: 10:18:
sadovnikov писал(а) 28. Ноября 2008 :: 10:01:
Попробуй в старой редации скрипта поставить курсор перед, например, КонецПроцедуры...

У тебя, думаешь, карма хорошая? Очень довольный
У меня в новом скрипте этот глюк есть (в старом - тоже). И ещё иногда Enter напрочь заклинивает (перестаёт реагировать на нажатия вообще).


Блииин... Да что ж за день-то сегодня такой... Вчера же правильно все работало???
Ща править буду...
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #96 - 28. Ноября 2008 :: 10:30
Печать  
Кстати, лучшие собаководы Подмигивание рекомендуют использовать коды виртуальных клавиш.
Цитата:
Кстати, была пара случаев, когда со сканкодами глючило, а при замене на коды виртуальных клавиш заработало.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #97 - 28. Ноября 2008 :: 11:10
Печать  
Блин, сижу, чешу репу: встаем курсором левее первого символа в строке. Нажимаем Shift + Home. Потом Ctrl + Insert.
И вместо ожидаемого неизменившегося буфера обмена получаем в нем всю текущую строку...  Нерешительный
Итого вопрос: есть идеи, как понять - есть у нас что-то слева от курсора или нету?
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #98 - 28. Ноября 2008 :: 11:52
Печать  
sadovnikov писал(а) 28. Ноября 2008 :: 11:10:
Блин, сижу, чешу репу: встаем курсором левее первого символа в строке. Нажимаем Shift + Home. Потом Ctrl + Insert.
И вместо ожидаемого неизменившегося буфера обмена получаем в нем всю текущую строку...  Нерешительный

Вот это прикол... Не обращал внимания, что текстовый редактор восьмёры так работает.
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #99 - 28. Ноября 2008 :: 11:54
Печать  
Мало того: при нажатии Shift + Home он будет отступ выделять, если ты вначале строки с отступом.
  
Наверх
www  
IP записан
 
sadovnikov
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 420
Зарегистрирован: 06. Марта 2007
Re: v8.1 + autohotkey = mini OpenConf
Ответ #100 - 28. Ноября 2008 :: 11:57
Печать  
The gray Cardinal писал(а) 28. Ноября 2008 :: 11:54:
Мало того: при нажатии Shift + Home он будет отступ выделять, если ты вначале строки с отступом.

Под "отступом" ты имел ввиду символ табуляции?
Как раз по этому в скрипте и пришлось писать:
StringReplace clipboard, clipboard, %A_Tab%
  
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #101 - 28. Ноября 2008 :: 12:00
Печать  
sadovnikov писал(а) 28. Ноября 2008 :: 11:57:
Под "отступом" ты имел ввиду символ табуляции?

Любое количество пробелов - тоже. И вперемешку - тоже.
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #102 - 29. Ноября 2008 :: 16:25
Печать  
Любопытный прожект, ссылку дали на мисте:
http://groups.google.ru/group/enterprise-integrator
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #103 - 29. Ноября 2008 :: 17:07
Печать  
artbear писал(а) 26. Ноября 2008 :: 14:49:
...как выполнить из одного скрипта вызов функци или хоткею другого скрипта?

http://forum.script-coding.info/viewtopic.php?id=2515
  
Наверх
www  
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #104 - 04. Декабря 2008 :: 15:00
Печать  
Может, кому интересно будет:
AHK: Запись клавиатурных макросов
  
Наверх
www  
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #105 - 02. Марта 2009 :: 15:08
Печать  
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #106 - 18. Марта 2009 :: 09:20
Печать  
В репозитарий залит скритп Авторские комментарии.
На данный момент не работает диалог настройки правил, если кто поможет - буду признателен.
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
igor77777
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 3
Зарегистрирован: 14. Мая 2009
Re: v8.1 + autohotkey = mini OpenConf
Ответ #107 - 14. Мая 2009 :: 10:39
Печать  
Подскажите такую мелочь.
AutoHotKey - поставил.
v8ahk.rar - скачал.

Не пойму куда его распаковать, чтобы заработало?

Или что и куда прописать?
  
Наверх
 
IP записан
 
kuntashov
Full Member
***
Отсутствует


1С:Специалист

Сообщений: 130
Местоположение: Саратов
Зарегистрирован: 13. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #108 - 19. Мая 2009 :: 20:35
Печать  
Phoenix писал(а) 18. Марта 2009 :: 09:20:
В репозитарий залит скритп Авторские комментарии.
На данный момент не работает диалог настройки правил, если кто поможет - буду признателен.


Всем привет, всех рад видеть Улыбка

Сделал окно настройки как HTML-приложение (см. http://script-coding.info/HTA.html).

Сам диалог настройки (author_js_config.hta) запускается либо как любое другое виндовое приложение, либо по задуманной комбинации Alt+o (ну как в ahk-скрипте прописали).

Обратите внимание, что файлы author.js и author_js_config.hta должны лежать в одном каталоге, т.е. author.js инклюдится в author_js_config.hta.

p.s.
Пожалуйста, подскажите кто нибудь: как избавиться от сообщения "The hotkey такой-то will not be activate бла-бла-бла потому что у тебя, дубина, по умолчанию раскладка русская".
  

author_js_for_v8ahk_20090520.zip ( 6 KB | Загрузки )

С уважением, &&Александр Кунташов&&http://kuntashov.ru/
Наверх
 
IP записан
 
The gray Cardinal
Full Member
***
Отсутствует



Сообщений: 159
Зарегистрирован: 17. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #109 - 20. Мая 2009 :: 07:22
Печать  
Цитата:
Пожалуйста, подскажите кто нибудь: как избавиться от сообщения "The hotkey такой-то will not be activate бла-бла-бла потому что у тебя, дубина, по умолчанию раскладка русская".

Использовать скан-коды (или виртуальные коды) клавиш вместо их буквальных обозначений.
http://www.script-coding.info/AutoHotkey/AhkRussian_3b.html
http://www.script-coding.info/AutoHotkey/KeyList.html (в самом конце — методика поиска кодов клавиш).
  
Наверх
www  
IP записан
 
kuntashov
Full Member
***
Отсутствует


1С:Специалист

Сообщений: 130
Местоположение: Саратов
Зарегистрирован: 13. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #110 - 20. Мая 2009 :: 09:19
Печать  
А, то есть ahk-скрипт надо подкорректировать.

Я прочилал в этой ветке про это, но в сами ahk-скрипты в роли программиста не лазил, просто запустил все как тупой юзверь Улыбка

Думал, раз про это написали, то там уже все сделано.

Спасибо Улыбка
  

С уважением, &&Александр Кунташов&&http://kuntashov.ru/
Наверх
 
IP записан
 
igor77777
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 3
Зарегистрирован: 14. Мая 2009
Re: v8.1 + autohotkey = mini OpenConf
Ответ #111 - 22. Мая 2009 :: 04:52
Печать  
igor77777 писал(а) 14. Мая 2009 :: 10:39:
Подскажите такую мелочь.
AutoHotKey - поставил.
v8ahk.rar - скачал.

Не пойму куда его распаковать, чтобы заработало?

Или что и куда прописать?

Ну ткните пожалуйста пальцем, где написано, как правильно подключать готовые скрипты.
Этож не дело, запускать кучу экземпляров ahk и в каждый передавать путь к скрипту.
  
Наверх
 
IP записан
 
kuntashov
Full Member
***
Отсутствует


1С:Специалист

Сообщений: 130
Местоположение: Саратов
Зарегистрирован: 13. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #112 - 22. Мая 2009 :: 05:35
Печать  
Чтобы запустить скрипт надо просто дважды щелкнуть на файле с расширением ahk.

Из пакета v8ahk надо запускать скрипт... test.ahk

Странное, конечно название, но не я придумал Улыбка

(Библиотеки из папки System надо зарегистрировать также, как это делалось в случае OpenConf для 7.7)
  

С уважением, &&Александр Кунташов&&http://kuntashov.ru/
Наверх
 
IP записан
 
igor77777
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 3
Зарегистрирован: 14. Мая 2009
Re: v8.1 + autohotkey = mini OpenConf
Ответ #113 - 22. Мая 2009 :: 10:50
Печать  
kuntashov писал(а) 22. Мая 2009 :: 05:35:
Чтобы запустить скрипт надо просто дважды щелкнуть на файле с расширением ahk.

Из пакета v8ahk надо запускать скрипт... test.ahk

Странное, конечно название, но не я придумал Улыбка

(Библиотеки из папки System надо зарегистрировать также, как это делалось в случае OpenConf для 7.7)

Спасибо, справился.
Вроде работает, только пока ругается на code_beautifier.pl, но это потому, что у меня не perl. Я думаю после установки должно заработать.

Маленькое пожелание.
Было бы неплохо расписать процесс установки необходимых компонент и запуска AHK со скриптами 1С на заглавной странице. На мой взляд, это не совсем очевидно.
В частности test.ahk  Подмигивание
Иначе этот проект не выйден на уровень широкого использования

  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #114 - 12. Сентября 2009 :: 09:31
Печать  
В файлике scripts.js нужно сделать маленькую поправку
исправить метод ResultList как показано ниже
Цитата:
function ResultList(prmStr,prmCaption)
{
     cs = new ActiveXObject("OpenConf.CommonServices");
     var vRes = cs.SelectValue(prmStr, prmCaption, "", true, true);
     cs = 0
     if (!(vRes) == "")
     {
           var nEnd = vRes.indexOf(")")
           var nStr = vRes.substring(1,nEnd);

           // если набрали несколько символов и нажали Esc, без блока try-catch вылетает ошибка исполнения JScript
           try{
                 WScript.Quit(nStr);
           }
           catch(e) {}
           finally {}
     }
}
« Последняя редакция: 15. Сентября 2009 :: 13:23 - artbear »  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #115 - 12. Сентября 2009 :: 09:32
Печать  
Если при нажатии Ctrl+1 в окне Конфигуратора v8 выдается ошибка
"Невозможно добавить ссылку {578f85c8-89eb-4cda-ac7e-8f3bb34e8b54}"
это значит, что у вас не установлен/не зарегистрирован Опенконф для 77 Улыбка
Например, у вас тупо нету 77.

Для исправления можно в файле System\CommonServices.wsc
закомментировать или удалить строку 97, в которой написано
<reference guid="{578f85c8-89eb-4cda-ac7e-8f3bb34e8b54}" />
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
nicolas
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 148
Зарегистрирован: 24. Мая 2006
Re: v8.1 + autohotkey = mini OpenConf
Ответ #116 - 15. Сентября 2009 :: 12:09
Печать  
artbear писал(а) 12. Сентября 2009 :: 09:31:
В файлике scripts.js нужно сделать маленькую поправку
исправить метод ResultList как показано ниже
Цитата:
function ResultList(prmStr,prmCaption)
{
     cs = new ActiveXObject("OpenConf.CommonServices");
     var vRes = cs.SelectValue(prmStr, prmCaption, "", true, true);
     cs = 0
     if (!(vRes) == "")
     {
           var nEnd = vRes.indexOf(")")
           var nStr = vRes.substring(1,nEnd);

           // если набрали несколько символов и нажали Esc, без блока try-catch вылетает ошибка исполнения JScript
           try{
                 WScript.Quit(procCInt(nStr));
           }
           catch(e) {}
           finally {}
     }
}

Артур? А вот тут не ошибка?
  WScript.Quit(procCInt(nStr));
наверное надо
WScript.Quit(nStr);
Или я  ошибаюсь?
Потому что в первом варианте у меня не работало....
Встает на первую строку модуля.

И еще сделал по твоей рекомендации (отсюда http://forum.script-coding.info/viewtopic.php?id=2496)

                 //Заменено по рекомендации artbear
                  //lListProcFunc += "(" + j + ") "+delFP(FuncName) + "\r\n";
                 // на строку
                 lListProcFunc += delFP(FuncName) + " (" + j + ") " + "\r\n";

то же самое, после выбора встает на первую строку модуля
но в скриптах я полный 0.
Плачущий
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #117 - 15. Сентября 2009 :: 13:15
Печать  
nicolas писал(а) 15. Сентября 2009 :: 12:09:
Цитата:
           // если набрали несколько символов и нажали Esc, без блока try-catch вылетает ошибка исполнения JScript
           try{
                 WScript.Quit(procCInt(nStr));
           }
           catch(e) {}
           finally {}


Упс, опечатался. Конечно, procCInt нужно убрать Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #118 - 15. Сентября 2009 :: 13:16
Печать  
nicolas писал(а) 15. Сентября 2009 :: 12:09:
И еще сделал по твоей рекомендации (отсюда http://forum.script-coding.info/viewtopic.php?id=2496)

Кстати, в той теме я выложил нормальный набор, который у меня работает.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #119 - 16. Сентября 2009 :: 10:30
Печать  
Выкладываю исправленный вариант.
В ранее выложенном все-таки были ошибки, например, в скрипте "Процедуры/функции модуля"
  

v8ahk.zip ( 64 KB | Загрузки )

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
alest
Senior Member
****
Отсутствует



Сообщений: 380
Местоположение: Гродно, Беларусь
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #120 - 29. Декабря 2009 :: 16:12
Печать  
artbear писал(а) 16. Сентября 2009 :: 10:30:
Выкладываю исправленный вариант.
В ранее выложенном все-таки были ошибки, например, в скрипте "Процедуры/функции модуля"

На выбранную найденную строку (по рег.выражению) не переходит.

В scripts.js
Код
Выбрать все
lstrRes += "(" + j + ") "+ JSTrim(lStr).replace("|","") + "\r\n"; 


надо добавить номер строки в конце
Код
Выбрать все
" |"+ j  


  
Наверх
ICQ  
IP записан
 
alest
Senior Member
****
Отсутствует



Сообщений: 380
Местоположение: Гродно, Беларусь
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #121 - 29. Декабря 2009 :: 16:13
Печать  
Как предотвратить переключение раскладки при открытии окна svc?
Как хотя бы программно запомнить тек. раскладку, чтоб в скрипте ее вернуть потом?
  
Наверх
ICQ  
IP записан
 
unnamed
Full Member
***
Отсутствует


0x1c = 28

Сообщений: 166
Местоположение: Chelyabinsk
Зарегистрирован: 01. Ноября 2007
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #122 - 24. Сентября 2010 :: 10:03
Печать  
artbear писал(а) 16. Сентября 2009 :: 10:30:
Выкладываю исправленный вариант.
В ранее выложенном все-таки были ошибки, например, в скрипте "Процедуры/функции модуля"


Шапочку бы тоже отредактировать, или дописать в ней про урл, по которому лучше искать последний вариант сборки (или так и написать - последнюю версию ищите, начиная с последней страницы). Для впервые зашедшего сюда лишняя подсказка. Подмигивание
  
Наверх
ICQ  
IP записан
 
mvgfirst
Full Member
***
Отсутствует


В борьбе бобра с ослом
всегда побеждает бобро!

Сообщений: 152
Местоположение: Украина г. Кривой Рог
Зарегистрирован: 17. Августа 2007
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #123 - 17. Июля 2011 :: 02:32
Печать  
Попробовал поставить эти скрипты ....
Скачал AHK
Установил
Скачал скрипты
Развернул в произвольный каталог на диск С
Даблклик на test.ahk
В результате имеем следующее сообщение:

Цитата:
---------------------------
test.ahk
---------------------------
Error in #include file "C:\v8ahk\WorkWithModule.ahk":
     Call to nonexistent function.

Specifically: PutCurrentModuleTextIntoFile(module)

     Line#
     023: FileDelete,%module%
     024: FileAppend,%clipboard%,%module%
     026: if (flagSaveClipboard = 1) 
     027: RestoreClipboard() 
     028: }
     031: {
     032: module = %temp%\module.1s
--->      033: PutCurrentModuleTextIntoFile(module) 
     034: }
     036: gClipSavedInner45 :=
     039: {
     041: gClipSavedInner45 := ClipboardAll
     042: clipboard =
     044: ClipWait,1
     045: }

The program will exit.
---------------------------
ОК   
---------------------------

А теперь внимание вопрос - что я сделал не так!?

И еще один вопрос - все это мне сильно надо для установки авторских комментариев. И т.к. тема давно не обновляется - есть подозрение что 8.2 уже научилась их вставлять самостоятельно?! Или есть другие причины заброшенности этой ветки
  
Наверх
ICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #124 - 17. Июля 2011 :: 10:28
Печать  
а шаблоны для авторских комментариев не прокатят?
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #125 - 17. Июля 2011 :: 10:48
Печать  
mvgfirst писал(а) 17. Июля 2011 :: 02:32:

ОФФ. ты бы в первую очередь картинку "бегущую" убрал бы из подписи, очень неприятно смотреть Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
mvgfirst
Full Member
***
Отсутствует


В борьбе бобра с ослом
всегда побеждает бобро!

Сообщений: 152
Местоположение: Украина г. Кривой Рог
Зарегистрирован: 17. Августа 2007
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #126 - 17. Июля 2011 :: 20:30
Печать  
JohnyDeath писал(а) 17. Июля 2011 :: 10:28:
а шаблоны для авторских комментариев не прокатят?

Ну да как бы уже прокатили Улыбка...
Но это потом до меня дошло.. что их можно использовать ... т.к. я уже несколько лет ими не пользовался (телепата хватало за глаза).

Так что с помощью шаблоновы выкрутился  Улыбка
Есть еще мысль опробовать снегопат.... но ввиду его будущей небесплатности - сильно углуб##ться не планирую Печаль
  
Наверх
ICQ  
IP записан
 
mvgfirst
Full Member
***
Отсутствует


В борьбе бобра с ослом
всегда побеждает бобро!

Сообщений: 152
Местоположение: Украина г. Кривой Рог
Зарегистрирован: 17. Августа 2007
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #127 - 17. Июля 2011 :: 20:32
Печать  
artbear писал(а) 17. Июля 2011 :: 10:48:
mvgfirst писал(а) 17. Июля 2011 :: 02:32:

ОФФ. ты бы в первую очередь картинку "бегущую" убрал бы из подписи, очень неприятно смотреть Печаль

Убрал Улыбка... отзвуки прошлого Улыбка
  
Наверх
ICQ  
IP записан
 
Phoenix
Senior Member
****
Отсутствует


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #128 - 02. Сентября 2014 :: 11:37
Печать  
Реанимировал разработку (Снегопат под 8.3.5 пока не вышел, а мне уже нужно работать под 8.3.5).
Теперь все на github: https://github.com/ret-Phoenix/v8CfgAddsAhk
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
avcherba
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 1
Зарегистрирован: 04. Октября 2014
Re: v8.1 + autohotkey = mini OpenConf
Ответ #129 - 04. Октября 2014 :: 19:49
Печать  
Добрый вечер!
начал недавно пользоваться программой autohotkey, теперь без нее не представляю как можно работать, так как приходится много выполнять однотипных действий.
есть такой скрипт который скачал с мануала проги:
Loop, parse, clipboard, `n, `r
{
    MsgBox, 4, , %A_LoopField%.`n`n Дальше?
    IfMsgBox, No, break
}

хотелось бы понять как можно сделать так чтоб при копировании из эксель файла в буфер допустим данные такого вида:
3153446      13.4
45681      14.5
362579      15.7
скрипт разделял по каждой строке на 2 и более  переменных.
пока я обхожусь скриптом типа скопировал вставил туда куда нужно переключаясь между окнами эксель и нужной программы.
Знаю что так можно сделать, видел скрипт который скомпилирован, и видел его работу.
  
Наверх
 
IP записан
 
zelenprog
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 42
Зарегистрирован: 03. Июня 2022
Пол: Мужской
Re: v8.1 + autohotkey = mini OpenConf
Ответ #130 - 16. Июня 2023 :: 13:33
Печать  
Здравствуйте!

Работает ли этот "помощник" для конфигуратора в актуальных платформах?
Кто-нибудь пользуется?
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать