|
Небольшое, но приятное ускорение работы в 1С | ☑ | ||
---|---|---|---|---|
0
DSblizzard
11.10.11
✎
09:44
|
Я тут в другой теме уже немного попиарил свою программу, предназначенную для более быстрого набора текста и ускорения вызова глубоко запрятанных в меню окон. Видели эти сообщения, наверное, немногие, поэтому повторю еще раз.
https://github.com/DSblizzard/rep_it Для тех, кому лень ходить по ссылкам, выкладываю readme. " rep_it - программа для записи и воспроизведения клавиатурных макросов с помощью горячих клавиш Предварительные условия: должны быть установлены Python 2.6 и PyWin32, затем нужно скопировать папку pyHook и файл pyHook.pth в <PythonDir>\Lib\site-packages. Макросы находятся в файле macros.txt и вводятся двумя способами: либо редактированием этого файла вручную, либо с использованием горячих клавиш: 1. Нажимаете ctrl+alt+F1 2. Нажимаете горячие клавиши для вызова макроса, например alt+h 3. Нажимаете ctrl+alt+F1 4. Нажимаете клавиши "тела" макроса, например "Hello, world!" 5. Нажимаете ctrl+alt+F3. В результате в macros.txt добавится определение макроса следующего вида: <Name> <Shortcut>alt+h <Events>" H e l l o , space w o r l d ! " Тэги <Name>, <Shortcut> и <Events> обязательны во всех макросах. При редактировании macros.txt вручную все клавиши, кроме букв, пишутся в нижнем регистре. Более сложный пример макросов: <Name>double quotes <Shortcut>alt+2 <Events>sl en " " left rl <Name> <Comment>Called by sequece of two keys, executes 10 times <Count>10 <Shortcut>a b <Events>s1 double_quotes sleep 0.2 <r+>Abc<r-> D e f <r+> - "сырой" режим ввода, когда можно вводить только отображаемые клавиши. <r-> - "обычный" режим (по умолчанию), когда можно вводить все клавиши, но с пробелами между ними. Названия некоторых клавиш: клавиша контекстного меню - apps backspace - back caps lock - caps escape - esc insert - ins num lock - num цифры на цифровой клавиатуре - numpad0 .. numpad9 page down - pgdn page up - pgup pause/break - pause print screen - prtsc scroll lock - scroll space bar - space win key - win арифм. операции на цифровой клавиатуре - add, sub, mul, div точка на цифровой клавиатуре - decimal Задержка: sleep <N1> или s<N2>, где <N1> - кол-во секунд, <N2> - кол-во десятичных долей секунды en - переключение на латинскую раскладку ru - переключение на русскую раскладку sl (save language) - запоминание текущего языка rl (restore language) - восстановление языка, запомненного последней командой sl Эти команды используют alt+shift для переключения раскладки Предопределенные горячие клавиши: ctrl+alt+F1 уже рассмотрели. ctrl+alt+F2 - то же, что и ctrl+alt+F1, только горячие клавиши для вызова макроса отображаются при вводе. ctrl+alt+F4 - отключение всех горячих клавиш (режим ожидания). ctrl+alt+F3 - в режиме записи макроса заканчивает запись, в режиме ожидания выходит из него (включает горячие клавиши), в обычном режиме читает заново macros.txt. ctrl+alt+e - открытие macros.txt на редактирование. В теле макроса можно использовать название другого макроса, в котором пробелы заменены на знаки подчеркивания. Осторожнее с рекурсией! Макрос можно вызвать как по сочетанию клавиш (alt+t), так и по их последовательности (ctrl+x 7 alt+b). При записи макроса можно использовать следующие последовательности клавиш: pause <цифра> . <цифра> или pause . <цифра> В результате в тело макроса будет добавлена задержка (в секундах): sleep <цифра>.<цифра> " На моем домашнем компе программа работает идеально, на рабочем с чем-то конфликтует, поэтому не могу гарантировать нормальную работу у вас. Вот дополнительные макросы, которые можно использовать при работе в 1С: <Name>soobschit <Shortcut>с б щ <Events>back back <r+>ообщить<r-> ( cl " shift+ins : space " space + space shift+ins ) ; cl <Name>Esli <Shortcut>е и т <Events>back back back <r+>Если Тогда<r-> enter enter back <r+>КонецЕсли<r-> shift+4 up up end ctrl+left left <Name>Funkciya <Shortcut>ф ц я <Events>back back back <r+>Функция<r-> space ( ) enter enter back <r+>КонецФункции<r-> up up end left left <Name>Procedura <Shortcut>п р ц <Events>back back back <r+>Процедура<r-> space ( ) enter enter back <r+>КонецПроцедуры<r-> up up end left left <Name>run 1C <Shortcut>alt+r <Events>f10 sleep 0.2 down right right right sleep 0.5 down down sleep 0.3 enter esc sleep 2.5 f5 sleep 1 enter <Name>info (1C) <Shortcut>alt+ctrl+b <Events>и н ф о alt+shift ( " ctrl+v " , space ctrl+v ) ; alt+shift <Name>soobschit (1C) <Shortcut>alt+ctrl+s <Events><r+>сообщить<r-> alt+shift ( " ctrl+v : space " space + space ctrl+v ) ; alt+shift |
|||
1
Mort
11.10.11
✎
09:47
|
Программист пишет код максимум 10% времени, остальное время он его читает и просто думает. Экономить на подобной копипасте - лучше быстро научиться печатать. И код писать понятно.
|
|||
2
mikecool
11.10.11
✎
09:50
|
(0) это под линух чтоле?
|
|||
3
DSblizzard
11.10.11
✎
09:50
|
(2) Нет, под винду
|
|||
4
mikecool
11.10.11
✎
09:51
|
(3) а чо тогда так сложно? тут думать же надо ((
|
|||
5
DSblizzard
11.10.11
✎
09:53
|
(4) Форма с кнопками в плане разработки. Думать не надо будет, только кнопки нажимать. Получатся не клавиатурные сокращения, а мышечные :)
|
|||
6
ZOMI
11.10.11
✎
09:54
|
Какое заковыристое хэллоуворлд
|
|||
7
Юрий Лазаренко
11.10.11
✎
09:59
|
(0) Интересно, развивай идею!
|
|||
8
Vovan1975
11.10.11
✎
10:02
|
и в чем принципиальное отличие вашей поделки от возможности создавать собственные шаблоны в 1С?
|
|||
9
Web00001
11.10.11
✎
10:02
|
Пишем на питоне, молодчег и красавчег! Все хорошо, все очень интересно. Но чем не устроили шаблоны? Они не такие гибкие, но покрывают 80% всех потребностей.
|
|||
10
0xFFFFFF
11.10.11
✎
10:03
|
(8), (9) тссссс.
|
|||
11
DSblizzard
11.10.11
✎
10:05
|
(8) Принципиальное - в том, что она в ОС живет, а не в 1С, т. е. более универсальная. К тому же свою прогу использую в основном для лазания по меню (1С тормозит, поэтому нужно не забывать вставлять sleep)
|
|||
12
Web00001
11.10.11
✎
10:05
|
(10) Намекаешь, что ТС не в курсе про шаблоны? :)
|
|||
13
DSblizzard
11.10.11
✎
10:05
|
(12) В курсе.
|
|||
14
Reset
11.10.11
✎
10:06
|
(9) Шаблоном ты не сможешь написать двадцать четыре раза подряд "hello, world" одним нажатием.
|
|||
15
PR
11.10.11
✎
10:06
|
(13) Тогда зачем (0)?
|
|||
16
DSblizzard
11.10.11
✎
10:07
|
(15) см. (11)
|
|||
17
PR
11.10.11
✎
10:08
|
(11) Универсальность в данном случае не в кассу, как мне кажется.
А меню, да, может быть интересным. IMHO |
|||
18
DSblizzard
11.10.11
✎
10:08
|
+(13) Кстати, про шаблоны. Меня бесит в них куча пробельных строк. Можно, конечно исправить.
|
|||
19
Web00001
11.10.11
✎
10:09
|
(11) PuntoSwitcher не смотрел? Где то видел подборку таких прог, их как минимум штук 6 и платные и бесплатные с гуями и галочками.
|
|||
20
Maxus43
11.10.11
✎
10:09
|
что привязавлись? автор креативный человек, любящий питон и испытывающий неприязнь глубокую к 1с...
v8: Компилятор из Python в 1С v8: Придираются ли на экзамене 1С:Специалист к стилю кода? и т.д. |
|||
21
IamAlexy
11.10.11
✎
10:10
|
тыщи таких.. да тот же хоткейбоардпро.. там текстовые макросы можно делать - закачаешся...
другое дело что это нафиг не нужно.. просто тупо не помнишь все их.. чтобы нажимать.. |
|||
22
DSblizzard
11.10.11
✎
10:10
|
(19) Уже несколько лет пользуюсь. К моей проге гораздо ближе другие macro recorder, но у них нет редактирования текст. файла
|
|||
23
Reset
11.10.11
✎
10:11
|
(20) Устыдился, заткнулся. Может даже запущу творение при наличии св времени. Навряд хотя
|
|||
24
DSblizzard
11.10.11
✎
10:12
|
(21) Платный, наверное?
|
|||
25
Господин ПЖ
11.10.11
✎
10:12
|
херь какая-то... шаблоны 1с + расширенный буфер обмена
|
|||
26
Web00001
11.10.11
✎
10:13
|
(20) Я и говорю, красавчег и молодчег, сам люблю питон, но как то не выходит им заниматься.
|
|||
27
0xFFFFFF
11.10.11
✎
10:13
|
Печатать учитесь лучше десятипальцевым методом. Скорость от 300 знаков в минуту спасет отца русской демократии.
|
|||
28
Юрий Лазаренко
11.10.11
✎
10:14
|
(8) Насколько я понял, она не только в конфигураторе будет работать, но и в режиме приложения.
(0) или я неправ? |
|||
29
DSblizzard
11.10.11
✎
10:14
|
(27) Давным-давно научился, причем на двух раскладках
|
|||
30
IamAlexy
11.10.11
✎
10:14
|
(24) стыдно жать бабло на инструменты посредством которых зарабатываешь деньги...
да - платный. но - нафиг не нужный.. очень, очень мощный и прикольный - но в 1С ненужный.. ибо снегопат рулит.. а остальное шлак... |
|||
31
acsent
11.10.11
✎
10:15
|
До снегопата конечно как до луны пешком
|
|||
32
DSblizzard
11.10.11
✎
10:15
|
(28) Конечно, правы. И даже alt+tab может делать, с этим у некоторых программ проблемы
|
|||
33
picom
11.10.11
✎
10:17
|
Елы палы
3 минуты в ветке ничего не понимаю что делает прога |
|||
34
Web00001
11.10.11
✎
10:18
|
(33) Внимательно (0) прочитай да и все
|
|||
35
acsent
11.10.11
✎
10:19
|
Программа - yet another менеджер шорткатов
|
|||
36
DSblizzard
11.10.11
✎
10:20
|
(33) нажимаете комбинацию клавиш
программа сама нажимает несколько других клавиш, которые вы заранее задали |
|||
37
DSblizzard
11.10.11
✎
10:22
|
+(0) Кстати, если кто решит использовать для открытия меню, учтите, что 1С по-разному открывает в первый и последующие разы. Поэтому после первого нажатия f10 нужно сразу нажать down, чтобы открыть меню, т. е. сделать поведение одинаковым.
|
|||
38
Gluk
11.10.11
✎
10:22
|
(0) и All, подскажите, как из Delphi можно нажимать кнопки 8-ки в режиме предприятия, через SendMessage не получается
|
|||
39
DSblizzard
11.10.11
✎
10:25
|
(38) Не знаю, я использовал другие функции и работали они по другому - не с помощью "общения" приложений, а с помощью нажатия виртуальной клавиши, т.е. при открытом окне программыо-приемника (8-ки)
|
|||
40
DSblizzard
11.10.11
✎
10:26
|
(38) Или у тебя также?
|
|||
41
Gluk
11.10.11
✎
10:34
|
(40) мне нужно нажать кнопку, например "Да/Нет", "Ок" и т.д. и вызвать некоторые команды из меню, например "Опрации - Проведение документов"
|
|||
42
DSblizzard
11.10.11
✎
10:36
|
Вы нажимаете кнопку, когда окно приложения открыто или не обязательно?
|
|||
43
Dirk Diggler
11.10.11
✎
10:38
|
(0) открой для себя autoit....
|
|||
44
DSblizzard
11.10.11
✎
10:41
|
(43) Открывал. Почему-то не впечатлило.
|
|||
45
Escander
11.10.11
✎
10:43
|
Где-то тут какую-то похожую помогалку уже демонстрировали... вроде другую...
|
|||
46
Gluk
11.10.11
✎
10:44
|
(42) да, только когда приложение запущено
|
|||
47
rutony
11.10.11
✎
10:45
|
Macro Scheduler 11 - наше все. Зачем грабли, если есть Ламборджини.
|
|||
48
DSblizzard
11.10.11
✎
10:48
|
(46) Уточню: не запущено, а именно открыто на часть экрана или полный экран и с фокусом на нем? Тогда смотрите на keybd_event.
|
|||
49
Gluk
11.10.11
✎
11:08
|
(48) ок, понял попробую
|
|||
50
Elf1k
11.10.11
✎
11:37
|
Чето я не понял, а с помощью этого можно скажем на сочитание клавишь открывать списки документов ?
|
|||
51
Dirk Diggler
11.10.11
✎
15:46
|
(44) еще раз открой
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |