Comments 11
Весьма интересный проект, будет интересно понаблюдать за его развитием.
Не во всех приложениях комбинации будут работать или работать стабильно
Это, к сожалению, не фиксится полностью - некоторые альтернативно мыслящие разработчики предпочитают собственные методы получения ввода с клавиатуры, из-за которых AHK оказывается не у дел. Как идея - можно попробовать вместо стандартного AHK'шного Send шаманить напрямую с сообщениями, отправляемыми окнам - в этом случае должно быть побольше возможностей.
Расширение библиотеки символов (пропущенными или по мере их ввода в Юникод)
Почему бы не использовать какой-нибудь API для того, чтобы гарантированно иметь все символы? Только, умоляю, сделайте кэширование - зависимость от интернета у подобной программы её никак не красит.
Следует быть аккуратнее с комбинациями, включающими
Ctrl
и правыйShift
— такая комбинация иногда может сменить выравнивание поля ввода на справо налево
В каких приложениях? Ни разу не сталкивался. Фикситься может всё тем же шаманством с сообщениями, но, вероятно, от AHK в таком случае придётся отказаться в пользу, например, C# (зато программа ресурсов жрать поменьше будет)
Почему бы не использовать какой-нибудь API для того, чтобы гарантированно иметь все символы?
Я решила пойти по пути, которому вредит подобная автоматизация — генерация данных о символе на основе его «сырой записи». Мне не захотелось брать названия из Юникода (к тому же, там бывают и ошибки, хотя сама я столкнулась с единичными случаями) — сделала свои, а с предлагаемым методом придётся от этого (и не только этого) отказаться и использовать только готовые данные (банально в угоду скорости инициализации). Можно даже сказать, что вся текущая реализация библиотеки символов несовместима с подобным. При вводе нового символа, особенно если это какая-то отдельная письменность, приходится вручную вписывать уже и внутренние данные «как, что, зачем и почему этот символ».
Да, по итогу имеем много ручной работы, но я вполне осознанно пошла именно таким путём, ибо хотела реализовать «собственное видение» даже если трудозатраты на это окажутся неэффективны.
Как некоторый компромисс — возможность ввода кодовых точек через «Композицию», что де-факто даёт все символы Юникода, но не так удобно (кодовую точку ведь ещё надо знать…).
Хотя я могла не совсем верно понять вопрос.
Только, умоляю, сделайте кэширование - зависимость от интернета у подобной программы её никак не красит.
Видимо я совершила косяк… она как раз и должна быть независимой от интернета (за исключением обновлений и чейнджлога). Кучу всего проверяла перепроверяла, а про возможные баги без интернета видимо забыла… Я и правда весьма давно тестировала работает ли программа без сети.
В каких приложениях? Ни разу не сталкивался
У меня — в ворде, в поисковой строке браузера, иногда в полях ввода на сайтах.
Благодарю за комментарий, пойду глядеть, что там не так с интернет-зависимостью программки.
пойду глядеть, что там не так с интернет-зависимостью программки.
Кажется про интернет я точно неправильно поняла. По крайней мере у меня без интернета работает (но «у меня работает», конечно, не аргумент). Хотя, я нашла, что следует изменить — я не скрыла сообщение об ошибке во время «фоновой» проверки наличия обновлений, и ещё одну ошибку нашла-починила.
Кажется про интернет я точно неправильно поняла
Имелось в виду, что если будете добавлять зависимость от API для юникодных символов - сделайте кэширование, дабы программа не требовала интернета при каждом запуске. Однако, это требование можно расширить на всю программу - сами понимаете, подобные утилиты не должны зависеть от наличия у юзера интернета.
Автор решил переизобрести LaTeX?
Автору - респект.
Я для подобного использовал AutoHotKey (на одном рабочем месте, бесплатная) или HotKeyboard (на другом рабочем месте, платная), которые последовательность одних букв заменяли на другие.
Например:
--1 -> адрес домашней почты, --2 -> адрес рабочей почты, ...
ддд -> текущая дата, ддчч -> текущая дата со временем и т.п.
Главное, чтобы мнемонически легко было запомнить.
Нашёл когда-то в линуксе третий и пятый уровни клавиатуры. И клавишу Compose. Но жаль, что приходится помнить все эти кульбиты. И все эти раскладки, фактически, ненастраиваемые. Нужно что-то настраиваемое, наглядное, но не назойливое. Ваша программа заинтересовала, но видны нет попробовать, жаль. Проект у Вас интересный, но всё равно, запоминание чачоточных па для пальцев. И я даже не представляю как должно бы вводить дополнительные, особенно сложные, символы без боли и "кассы символов" на экране.
Уменьшите нагрузку и количество зарегистрированных клавиш с помощью Tapholdmanager
Оригинальная документация: https://github.com/evilC/TapHoldManager/tree/master
Моя версия (чуть проще и читабельнее): https://github.com/JoyHak/Flow-Launcher-windows-key/tree/main/Libs
Он будет печатать клавиши с задержкой (весьма ощутимо при быстрой печати), зато на одну клавишу можно назначить неограниченное число отправок.
В качестве решения могу предложить два пути развития:
Ограничиться только подсчётом количества нажатий. создании экземпляра TapHoldManager передайте параметр holdTime равный нулю.
Ограничиться только удерживанием и одиночным нажатием. В этом случае параметр tapTime равен нулю.
Извиняюсь, я не совсем поняла для чего мне это.
От самих привязок нагрузки у меня почти никакой, а количество активных привязок меня не беспокоит.
Хотя с реализацией двойного нажатия на одну клавишу у меня да, были проблемы (из-за чего эксперименты с вводом лигатур без режима композиции не удались, ибо Ꜳ Ꝏ попросту не срабатывали; та же самая логика отвечает за ввод ↖↗↙↘↔↕ через пары клавиш-стрелок), но эту проблему я должна сама допереть как решить.
Не понял, зачем это нужно. Всё равно вы не запихнёте тысячи символов в несложные комибнации.
Не понял, зачем это нужно
Мне — иметь под рукой все символы, что могут пригодиться при создании моего же текстового контента. Т.е. у меня, как со стороны пользователя, появился запрос. И я сама же пошла этот запрос удовлетворять, т.к. готовые найденные решения не смогли этого сделать.
То, что я сделала, конечно, уже сильно вышло за рамки моих собственных нужд. Но почему бы и нет — может кому-то приглянется та же возможность писать на куче древних языках и не искать для них по всему свету раскладки/не устанавливать keyman (мне, например, keyman как раз не очень зашёл).
Всё равно вы не запихнёте тысячи символов в несложные комибнации
Конечно нет. Мне и не нужно. Если считать несложные комбинации — их ориентировочно 80–140. Но для меня вполне норм использование и сложных (как RAlt + LAlt + LShift + A
= Å), т.е. мне это дискомфорта не доставляет. Итого имеем 800+ комбинаций.
А что не влезло даже в сложные комбинации — вводится через местный «режим композиции». Итого имеем 2000 символов без учёта дополнительных режимов, описанных в статье.
Я понимаю, что мой инструмент окажется далеко не самым удобным для многих людей. Но всё же надеюсь, он будет кому-то да полезен.
DSL KeyPad — ввод более 4 700 символов Юникода прямо с клавиатуры