[{{mminutes}}:{{sseconds}}] X
Пользователь приглашает вас присоединиться к открытой игре игре с друзьями .
Ctrl предыдущая следующая Ctrl Страницы
1 2

Форум «Программное обеспечение» / Техническое задание: самый полезный скрипт на КГ

Анна_Банановна Сообщение #1 21 января 2021 в 18:16
Супермен
66
Дорогие умельцы! (По именам пока не называю )

Клавотулз имеет скрипт, отключащий таб. А как же всё остальное?

  • Может кто-то из вас сможет предложить скрипт, отключающий во время заезда ряд клавиш (или хотя бы одну из них, и то дело): win, menu (у меня написано Fn на ней), а также все F самого верхнего ряда (ну или хотя бы F11 и F12).
  • Возможно можно запрограммировать так, что каждый сам выберет свою кнопку (например, такая-то кнопка в нижнем ряду).
  • Ну и не помешало бы дезактивировать горячие клавиши, комбинации кнопок, открывающие всякие вкладки и выполняющие разные действия. В этом случае не помешало бы делать возможность исключения (например, такая-то комбинация кнопок работает; я бы у себя оставила альт+капс, переключающие мне раскладку).

И всё это только во время заезда на кг. Во всех остальных случаях скрипт не должен активироваться.
Doctorisimus Сообщение #2 21 января 2021 в 18:35
Супермен
61
ну, клавиша FN сама по себе никакого действия не имеет, она лишь активирует подслой функциональных клавиш
а с самими функциональными клавишами-то что? Они специально высоко, случайно-то уж как нажать :huh:
клавишу виндуза нельзя отключить в браузере, потому она на уровне системы работает
горчячие браузерные клавиши тоже не все можно отключить, потому что они работают на уровне браузера, а не страницы, но вроде какие-то расширения есть, ну или может в глубинных настройках браузера можно, но это получится не на время заезда
такое через ахк наверно только если делать...
ShirokiMiRukami Сообщение #3 21 января 2021 в 18:40
Кибергонщик
58
может стоит просто осторожнее печатать) это надо как по клавиатуре неаккуратно долбить, чтобы все перечисленное нажимать? Странная проблема какая-то.
EVERGLOW Сообщение #4 21 января 2021 в 18:44
Экстракибер
37
Я печатаю с жёсткими-прежёсткими зонами, но когда хочу нажать ctrl+a, может вылезти всё вышеописанное :)
ShirokiMiRukami Сообщение #5 21 января 2021 в 18:45
Кибергонщик
58
переставь контрол на caps, это божественно. Одно из самых лучших изменений, которые я внес в свою раскладку.
Doctorisimus Сообщение #6 21 января 2021 в 18:56
Супермен
61
JustSo писал(а):
может стоит просто осторожнее печатать) это надо как по клавиатуре неаккуратно долбить, чтобы все перечисленное нажимать? Странная проблема какая-то.
плюсую

если просходит проблема нажатия вышеописанных вещей, то это значит, что мозг теряет контроль над пальцами и они несутся уже сломя фаланги, заплетаются и могут нажать невообразимые комбинации
заметьте, у всех наверно было, когда быстро едешь на ноль - чувствуется абсолютный контроль над каждым движением и каждое движение четкое и выверенное, тогда ни то что о нажатии какой-то левой клавиши или комбинации речи нет - так даже об ошибке! к этому и надо стремится, ведь если даже здесь для тренировки выключить все ненужное - во всех других случаях, когда придется набирать что-то, выключить это же не получится, поэтому нужно тренироваться в боевых условиях максимально приближенных к реальности, к этому относится и вышеупомянутая ctrl+a, которую некоторые зачем-то практикуют, которую попробуйте использовать в тексте, в котором больше одного слова - не очень-то полезный навык
Последний раз отредактировано 21 января 2021 в 18:58 пользователем Doctorisimus
Анна_Банановна Сообщение #7 21 января 2021 в 19:04
Супермен
66
Ну нельзя, так нельзя. Эх...

А насчёт, аккуратнее печатать, такие все обладатели мощной воли, контролирующей все движения. )))) У меня постоянно пальцы вылетают на эти клавиши, и на Ф11 и Ф12 (Это когда быстро печтаешь всякие периферии, и надо удалить). И не у меня одной это - постоянно кто-то жалуется в чате, что открыл безумные вкладки или вылетел из текста.
ShirokiMiRukami Сообщение #8 21 января 2021 в 19:16
Кибергонщик
58
Как это возможно, чтобы со среднего ряда у тебя пальцы вылетали на F* ряд и на нижний ряд функциональных клавиш? Жуть просто лютая... Остановись... меняй технику, если такое происходит, это не нормально.
Открыть вкладку можно только нажав Ctrl-T, Ctrl-Shift-T или Ctrl-N. Ctrl-H, Ctrl-J для открытия служебных страниц браузера. Ctrl-W для закрытия вкладки. Опять же нужно блокирующее действие с зажатым Ctrl.
Для отключения этих вещей есть расширения для браузера аля Kiosk-mode. Погугли. Но в первую очередь надо с руками разобраться, иначе дальше прогресса не будет, если у тебя пальцы ошибаются не на миллиметр-другой, случайно задевая колпачок соседней клавиши, а на сантиметры :)
Последний раз отредактировано 21 января 2021 в 19:22 пользователем ShirokiMiRukami
Анна_Банановна Сообщение #9 21 января 2021 в 19:25
Супермен
66
Как это возможно, чтобы со среднего ряда у тебя пальцы вылетали на F* ряд

Пальцы не всегда на среднем ряду, и я их не возвращаю туда постоянно. Тем более, попадаются такие тексты, где руки летают где-то на верних рядах, и в какой-то момент, память, возможно не удерживает актуальное положение, и двигательные паттерны генерируются по умолчанию (со среднего ряда, похоже). А со среднего ряда до бэкспэйса, например, прыжок совсем не в пару миллиметров, а в 3-4 сантиметра. Вот и всё.

А вниз когда я залетаю, это в попытке попасть в шифт. Мне всегда дико неудобно попадать в шифты (это еще зависит от разработанности среднего и мизинца. У меня они с огромным трудом могут действовать относительно независимо, и вообще, достаточно неподвижные).
Последний раз отредактировано 21 января 2021 в 19:28 пользователем Анна_Банановна
plytishka Сообщение #10 21 января 2021 в 20:13
Супермен
51
надо скрипт штобы прес Х и вин
но затакое банят
как жить то в таких условиях, а?1! скажите?1?!
iforrest Сообщение #11 21 января 2021 в 20:16
Кибергонщик
58
ChromeKeyboardHook.ahk

Очень примитивно. Скрипт работает в активном окне Chrome. Как сделать его активным только во время заезда, не знаю. Но такое возможно, наверное. Просто нужно идти на соответствующий форум и спрашивать у людей, разбирающихся в AHK.
Скрипт вырубает Tab, Win, Ctrl, Alt, CapsLock, F1-F12, клавишу контекстного меню.
Активазция/дезактивация по ScrollLock (в трее Н -- активный, S -- неактивный).
Список клавиш можно дополнить или убрать что-то. Язык менять нельзя.
Хардкор, короче
Анна_Банановна Сообщение #12 21 января 2021 в 20:30
Супермен
66
Ифорест, спасибо, золото! Буду пробовать. Если что, приду с вопросами.

upd. Всё, вопросы появились, но более общего технически неграмотного характера.
Активазция/дезактивация по ScrollLock (в трее Н -- активный, S -- неактивный).

То есть, один раз скачал (нажав на твою ссылку), а потом жмешь на клавишу Скролл и она поочередно активирует и дезактивирует скрипт? У меня этот номер не прошел.
В трее - это на нижней полоске экрана? Там оно у меня было зеленая кнопка Н, и больше ничего.
(У меня, может, кнопка Скролл не работает?...)

Список клавиш можно дополнить или убрать что-то. Язык менять нельзя.

Какой язык нельзя менять? Скрипт работает только в русской раскладке или о чем речь?
Последний раз отредактировано 21 января 2021 в 21:41 пользователем Анна_Банановна
iforrest Сообщение #13 21 января 2021 в 21:53
Кибергонщик
58
Анна_Банановна писал(а):
То есть, один раз скачал (нажав на твою ссылку), а потом жмешь на клавишу Скролл и она поочередно активирует и дезактивирует скрипт? У меня этот номер не прошел.
В трее - это на нижней полоске экрана? Там оно у меня было зеленая кнопка Н, и больше ничего.

Я так понял, AutoHotKey установлен. Скачанный скрипт запускаешь двойным щелчком ЛКМ или ПКМ → Run Script. В системном трее (рядом с часиками) должна появиться иконка [H]. Значит, скрипт запущен. Он неактивный, ничего не делает, хоть и запущен, пока ты не сделаешь активным окно браузера, в данном случае Google Chrome (если браузер другой, то нужно тогда скрипт подкорректировать). Как только окно браузера становится активным, то скрипт автоматически "активируется" и блокирует клавиши, которые перечислены выше. Не заблокированными остаются фактически в основной части клавиатуры только Enter, Space, Backspace и Shift. Это значит, что если переключение языка ввода (раскладки) у тебя, допустим, на Ctrl+Shift или Alt+CapsLock, то то раскладку переключить нельзя, ведь все эти клавиши, кроме Shift, заблокированы. Нельзя выделять весь текст через Ctrl+А или сохранить страницу через Ctrl+S. Ну и так далее. Короче, ничего нельзя, пока ты в браузере. Только набирать текст.

Чтобы временно отключить скрипт: ПКМ по значку [H] в трее → Suspend Hotkeys. Теперь значок [S]. Ну или то же самое -- с помощью клавиши ScrollLock как горячей (можно назначит другую, это для примера). Так быстрее и удобнее, не нужно клацать мышью и покидать браузер.

Чтобы назначить другую горячую клавишу, в строке ScrollLock::Suspend нужно заменить ScrollLock на что-то другое. И лучше тогда уж вынести эту строку вверх скрипта, над #InstallKeybdHook и добавив префикс ~. Короче, например, если вкл/выкл на Esc, то примерно вот так:
скрытый текст…

В таком случае Esc будет, не теряя своей функциональности, каждый раз будет активировать/деактивировать скрипт. Так что если пользуешь Esc на автомате, то тут нужно быть осторожным. Всё же лучше повесить куда-то подальше горячую клавишу выкл/вкл.

Если ты используешь для запуска старта в заезде Ctrl+Enter, а для перехода в следующий заезд Ctrl →, то желательно, конечно, из скрипта убрать строку RCtrl:: (если правый Ctrl для этих целей используется). Чтобы отредактировать скрипт: ПКМ → Edit Script. Изменяешь в Блонкоет или Notepad каком-нибудь (через что откроется), сохраняешь документ, перезапускаешь скрипт заново с сохранёнными изменениями.

Короче, подводя итог, как бы я делал: запускаю скрипт, сразу его приостанавливаю. Когда на Клавогонках захожу в заезд, перед самым стартом жму ScrollLock -- активирую скрипт, чтобы во время набора текста ничего не могло помешать. После финиша опять жму ScrollLock, деактивируя скрипт, чтобы он не помешал что-то скопипастить в чат или сохранить страницу, допустим. И так каждый раз перед стартом и после финиша -- вкл/выкл. Поэтому и примитивно. Главное -- не забывать перед стартом проверять, какая раскладка активная и выключен ли капс.
Последний раз отредактировано 21 января 2021 в 22:11 пользователем iforrest
Анна_Банановна Сообщение #14 21 января 2021 в 22:23
Супермен
66
У меня эта часть "ScrollLock::Suspend" почему-то не сработала.

Про изменение скрипта в блокноте понятно, спасибо.

А так-то да, я тоже готова выучить новый автоматизм включения-выключения этого скрипта. Надо только разобраться с тем, что горячая клавиша не функционирует.
iforrest Сообщение #15 21 января 2021 в 22:41
Кибергонщик
58
А браузер Google Chrome или другой? Возможно, в этом проблеме...
Короче, поскольку задача упростилась до включения скрипта непосредственно перед заездом на Клавогонка и потом его выключением, то отслеживание активного окна браузера (которое, в принципе, было ни к чему, так как не решало поставленную задачу) тоже не нужно, поэтому упрощаем. Замени тело скрипта ниже директив по умолчанию (четыре строки сверху) на вот это:
скрытый текст…

Ну и если уж всё не хочет работать ScrollLock, то попробуй Pause, ещё что-то.
Phemmer Сообщение #16 21 января 2021 в 23:39
Супермен
71
Для работы только в заездах когда идет время перед или во время заезда
скрытый текст…
Анна_Банановна Сообщение #17 22 января 2021 в 02:58
Супермен
66
Для работы только в заездах когда идет время перед или во время заезда

Феммер, я правильно поняла, после окончания заезда (мной) у меня снова активируются мои кнопки? А если зайти заранее, то они не будут работать (в чате, например)?

В любом случае, это что-то восхитительное! А говорили, что невозможно. :)

Ифорест, получается, нам и с вкл-выкл скрипта не придется морочить себе голову, живем!

Спасибо вам огромное за помощь.
iforrest Сообщение #18 22 января 2021 в 04:06
Кибергонщик
58
Страницы http://klavogonki.ru/g/* до старта имеют заголовки, которые начинаются на Игра с друзьями, Открытая игра, если таймер обратного отсчёта не запущен. После запуска таймера до старта -- [xx:xx]. А вот и во время заезда, и после окончания заезда -- [Идет игра]. То есть скрипт не может как-то идентифицировать по заголовку вкладки, что заезд завершен. В одиночном режиме, поскольку таймер обратного отсчета запускается автоматически, там сразу [xx:xx].

#If WinActive("[") -- в таком случае скрипт активный и во время заезда, и после. А не активный только до старта, если обратный отсчёт не запущен.
Можно вот так ещё:
#If WinActive("[Идет игра]") -- в таком случае до старта даже при запущенном таймере скрипт не активный, а во время заезда и после его окончания -- активный.
Последний раз отредактировано 22 января 2021 в 04:07 пользователем iforrest
Анна_Банановна Сообщение #19 22 января 2021 в 05:20
Супермен
66
У меня не получается разобраться с автоматическими вкл-выкл скрипта, ну или хотя бы с нажатием горячей клавиши, чтоб активировать-дезактивировать скрипт.
Вот такой у меня скрипт:
скрытый текст…

Поставила кнопку Pause вместо "скрол"(не уверена была, что мой скрол нормально работает). Так вот, эта "пауза" как-то странно реагирует. Если просто её жать, то ничего не происходит. Но иногда, когда открываю это окно
, значок Н меняется с зеленого на красный (приостановить скрипт).
Так вот, первая проблема, горячая клавиша "пауза" не работает так, как ожидается. Вторая проблема, если она и работает, то она "приостанавливает скрипт", но скрипт при этом продолжает действовать - все эти таб, вин и прочее не нажимаются. Что за роль тогда у этого "приостановить скрипт"?

Единственно, что позволяет прекратить скрипт, это зайти и кликнуть мышью на "приостановит АХК".


Итого, я по-прежнему не могу включать выключать скрипт быстро.

Дальше, проверяю скрипт, какой есть. Он работает до запуска таймера в заезде, и после окончания заезда.

Что мне исправить?
Doctorisimus Сообщение #20 22 января 2021 в 05:56
Супермен
61
Поставила кнопку Pause вместо "скрол"(не уверена была, что мой скрол нормально работает). Так вот, эта "пауза" как-то странно реагирует.

Пауза называется просто "Pause", вот здесь можно посмотреть "кодовые" названия клавиш.
И должно быть вот так: "Pause::Suspend".

Он работает до запуска таймера в заезде, и после окончания заезда.

Несусем понял... Со строкой "[Идет игра]" он работает после старта заезда, то есть когда начался набор. И все, не завершается далее, потому что название вкладки после завершения набора не изменяется.

И после изменения кода скрипт надо либо Exit'нуть и запустить заново, либо нажать Reload. И если ты так сделаешь, то у тебя на "Pause break" как раз вылезет ошибка.
Последний раз отредактировано 22 января 2021 в 06:20 пользователем Doctorisimus

Чтобы писать в форуме, нужно зарегистрироваться.

Ctrl предыдущая следующая Ctrl Страницы
1 2

Связаться
Выделить
Выделите фрагменты страницы, относящиеся к вашему сообщению
Скрыть сведения
Скрыть всю личную информацию
Отмена