home.social

#autohotkey — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #autohotkey, aggregated by home.social.

fetched live
  1. Атомарные регулярные выражения

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

    habr.com/ru/articles/1057658/

    #regex #регулярки #регулярные_выражения #парсинг #pcre #алгоритмы #изучение_программирования #autohotkey #регулярное_выражение #regular_expressions

  2. Почему умерли лаунчеры?

    В нулевых у пользователя Windows было две системы. Первая Windows XP, загружалась с диска, показывала ядовито‑зелёный «Пуск», синюю панель задач, загрузчик браузера и уверенно делала вид, что этого достаточно. Вторую пользователь собирал сам. Снизу ставился RocketDock, чтобы было почти как на Mac. Поверх XP натягивалась тема под Vista, потому что сама Vista уже выглядела красиво. В угол попадал CPU‑Meter с температурой процессора, погодой, сетью и другими признаками того, что компьютер не просто работает, а живёт насыщенной внутренней жизнью. По горячей клавише вызывался Launchy. Окна прятались в трей CaptainTay‑ем, с обязательнным Boss‑Key. Раскладку спасал Punto Switcher. Скриншоты делал отдельный скриншотер. Хоткеи держались на AutoHotkey. Это была не коллекция утилит. Это была функциональная прослойка на условных рефлексах между человеком и системой. Днем унылые пары, а ночью Vista Transformation Pack на свежепереустановленный ZverXP, потому что хотелось красоты. Дикий рынок, пиратские диски, форумные сборки, доверие на честном «у всех антивирь ругается» и надежда на то, что если программа весит меньше мегабайта, значит, она почти святая. Сегодня большая часть этих динозавров вымерла. Сайты пропали, сертификаты истекли, последние версии лежат на загрузочных агрегаторах как цифровые окаменелости. Но вся странность в том, что сами функции не умерли. Они победили. Просто теперь быстрый запуск, поиск, хоткеи, скриншоты, виджеты, command palette и автоматизация живут внутри ОС, браузеров, редакторов, SaaS‑продуктов, PowerToys, Alfred, Raycast, скриптов и AI‑ассистентов. Классический лаунчер умер не потому, что стал не нужен. Он умер потому, что его разобрали на органы и пересадили в платформы.

    habr.com/ru/articles/1055052/

    #Windows_Vista #лаунчеры #desktop_launchers #StyleXP #Vista_Transformation_Pack #PowerToys_Run #AutoHotkey #Punto_Switcher #hotkeys #tray_utilities

  3. Управляющие последовательности (ANSI)

    Что такое ANSI коды и как их обрабатывает терминал? Зачем нужны эмуляторы терминала? Как отформатировать вывод в PowerShell из AutoHotkey? Разбираемся в этой статье.

    habr.com/ru/articles/1054876/

    #powershell #autohotkey #ansi #escaped_sequence #control_sequence #vt100 #output #console #terminal #history

  4. Цветной текст в консоли в AutoHotkey

    Алгоритм вывода цветного текста в консоль и как его можно написать на AutoHotkey. Погрузимся в язык, рассмотрим оптимизацию кода и улучшение читабельности (применимо к любому высокоуровневому языку).

    habr.com/ru/articles/1053046/

    #autohotkey #output #консоль #cli #алгоритмы #оптимизация #prototypebase #prototypebased #синтаксический_сахар #высокоуровневое_программирование

  5. Sooo, I made some progress on automating shit on #Android to coerce #backups from apps, e.g. those that are not included in SeedVault.

    Thanks to #Keymapper (via @fdroidorg)! This is as close as it gets to have #AutoHotkey „scripting“ on Android.
    You don't even need a spare key: Just add a homescreen widget to run your script.
    Maybe not as portable as #Tasker and different approach, but something to keep an eye on!

    keymapper.app
    github.com/keymapperorg/KeyMap

    #GPLv3 #floss #software

  6. Sooo, I made some progress on automating shit on #Android to coerce #backups from apps, e.g. those that are not included in SeedVault.

    Thanks to #Keymapper (via @fdroidorg)! This is as close as it gets to have #AutoHotkey „scripting“ on Android.
    You don't even need a spare key: Just add a homescreen widget to run your script.
    Maybe not as portable as #Tasker and different approach, but something to keep an eye on!

    keymapper.app
    github.com/keymapperorg/KeyMap

    #GPLv3 #floss #software

  7. Вайбкодим .EXE под Windows с GUI на AutoHotkey v2

    История о том, как превратить консольный скрипт в полноценное Windows приложение с GUI на AutoHotkey v2 при помощи нейросетей и вайбкодинга. Разбираем этапы от поиска инструментов до борьбы с интерфейсом в стиле софта нулевых без единой строчки кода, написанной вручную.

    habr.com/ru/articles/1016392/

    #вайбкодинг #нейросети #программирование #autohotkey #cmd #ffmpeg #gemini #qwen

  8. Windows users mostly dislike the command-line. This GUI utility is useful.

    autohotkey.com/

    ```
    #Requires AutoHotkey v2.0

    #SingleInstance Force

    MainGui := Gui("+AlwaysOnTop", "CSV to XLSX Converter")
    MainGui.SetFont("s10", "Segoe UI")

    MainGui.Add("Text",, "Input CSV File:")
    EditFile := MainGui.Add("Edit", "w400 ReadOnly", "No file selected...")
    MainGui.Add("Button", "x+10 w80", "Browse").OnEvent("Click", SelectFile)

    MainGui.Add("Text", "xm", "Output Folder:")
    EditDir := MainGui.Add("Edit", "w400 ReadOnly", "No folder selected...")
    MainGui.Add("Button", "x+10 w80", "Browse").OnEvent("Click", SelectFolder)

    MainGui.Add("Text", "xm h10", "") ; Spacer
    BtnConvert := MainGui.Add("Button", "xm w100 h40 Default", "Convert Now")
    BtnConvert.OnEvent("Click", RunConversion)

    MainGui.Show()

    SelectFile(*) {
    Selected := FileSelect(3, , "Select your CSV file", "CSV Files (*.csv)")
    if Selected
    EditFile.Value := Selected
    }

    SelectFolder(*) {
    Selected := DirSelect(, 3, "Select the destination folder")
    if Selected
    EditDir.Value := Selected
    }

    RunConversion(*) {
    InputPath := EditFile.Value
    OutputDir := EditDir.Value

    if (InputPath = "No file selected..." || OutputDir = "No folder selected...") {
    MsgBox("Please select both a file and a destination!", "Missing Info", "Icon!")
    return
    }

    FullCommand := 'csv2xlsx.exe -o="' . OutputDir . '\output.xlsx" ' . InputPath

    try {
    RunWait(FullCommand)
    MsgBox("Success! The file has been converted.", "Done", "Iconi")
    } catch {
    MsgBox("Error.", "Execution Failed", "Iconx")
    }
    }
    ```
    #autohotkey #gui #coding

  9. #Opensource #AutoHotkey #Windows

    Kleine Fenster-Basteleien:

    - Fenster Always-on-top
    - Größe, Platzierung, Transparenz
    - Profile für mehrere Fenster

    Skripte und EXEn als Anregung für Fensterschubser.

    tutonaut.de/praktisches-kleine

  10. #Opensource #AutoHotkey #Windows

    Kleine Fenster-Basteleien:

    - Fenster Always-on-top
    - Größe, Platzierung, Transparenz
    - Profile für mehrere Fenster

    Skripte und EXEn als Anregung für Fensterschubser.

    tutonaut.de/praktisches-kleine

  11. Resized the #Raycast window with #AutoHotKey on #Windows.

    IfWinExist, Raycast
    { WinMove,,,1266,418,1000,1300
    }

    Yep, it worked. Settings screen looks good. Main window looks like shit because the viewport is still locked to it's original size and of course it STILL can't be resized even on Win. Great app, monumental and almost dealbreaking UI flaw.

    I only use it for an emoji picker right now so it's tolerable. It may become triggering in the future..

  12. Resized the #Raycast window with #AutoHotKey on #Windows.

    IfWinExist, Raycast
    { WinMove,,,1266,418,1000,1300
    }

    Yep, it worked. Settings screen looks good. Main window looks like shit because the viewport is still locked to it's original size and of course it STILL can't be resized even on Win. Great app, monumental and almost dealbreaking UI flaw.

    I only use it for an emoji picker right now so it's tolerable. It may become triggering in the future..

  13. «ghbdtn» → «привет»: Свой маленький punto switcher на AHK (без блэкджека, но с поддержкой системных языков)

    Мне надоело, что автоматические переключатели в Punto срабатывают не там, где нужно, а «умные» исправления ломают пароли. Поэтому я давно использовал только функцию переключения раскладки выделенного текста, остальное выключал в настройках. Перегруженность и тормознутость, в целом, долго и успешно терпел. Но после попытки скачать Punto, в очередной раз, с официального сайта, антивирус не дал этого сделать и сказал, что там вирус. Это было последней каплей, пробежавшись по аналогам, я взгрустнул и решил написать свою утилиту на AutoHotkey v2, которая делает только одну вещь: исправляет выделенный текст по горячей клавише, циклически переключая его между установленными в системе раскладками.

    habr.com/ru/articles/987334/

    #AutoHotkey #Раскладка_клавиатуры #Open_Source #Windows_Utils #punto #punto_switcher

  14. Как я настраивал глобальные горячие клавиши для Яндекс Музыки (что делать с RDP), и почему в итоге пришёл к джойстику

    История простая: после очередного обновления Windows 10 у меня стали с перебоями работать мультимедийные клавиши для Яндекс музыки. Плюс что вообще делать с горячими клавишами если их перехватывает RDP.

    habr.com/ru/articles/985696/

    #яндексмузыка #rdp #геймпады #autohotkey #горячие_клавиши

  15. But hey, I still have my client prototype — let's find who else uses DBGP?

    There's not much projects, but there are *some*, one example is… #AutoHotKey. Yep, they use the debugger protocol inherited from PHP!

    Wondeful, my debug client is even compatible with AutoHotKey.

  16. But hey, I still have my client prototype — let's find who else uses DBGP?

    There's not much projects, but there are *some*, one example is… #AutoHotKey. Yep, they use the debugger protocol inherited from PHP!

    Wondeful, my debug client is even compatible with AutoHotKey.

  17. @dustcircle I solved that back in #WindowsXP with a bit of #AutoHotkey 😁

    #-::Send {U+2013} ; Win + - → en dash
    +#-::Send {U+2014} ; Shift + Win + - → em dash

  18. @dustcircle I solved that back in #WindowsXP with a bit of #AutoHotkey 😁

    #-::Send {U+2013} ; Win + - → en dash
    +#-::Send {U+2014} ; Shift + Win + - → em dash

  19. My GitHub profile is now the central hub for my open-source tools! 💻✨

    Find the source for my FFmpeg Audio Normalizer (🔊), GhostKey Sentinel (🛡️), the Highlighter with X Userscript (🖍️), and more.

    Check it all out here:
    github.com/melcom-creations

    #Demoscene #AutoHotkey #Python #AudioTools

  20. My GitHub profile is now the central hub for my open-source tools! 💻✨

    Find the source for my FFmpeg Audio Normalizer (🔊), GhostKey Sentinel (🛡️), the Highlighter with X Userscript (🖍️), and more.

    Check it all out here:
    github.com/melcom-creations

    #Demoscene #AutoHotkey #Python #AudioTools

  21. Here's an #autohotkey script that will send any highlighted text to ZoteroBib in a new browser tab. Typical usage: highlight a URL, hit the hotkeys, and generate a full bibliography entry. #dh #zotero

    gist.github.com/driscoll/dfa86

  22. Here's an #autohotkey script that will send any highlighted text to ZoteroBib in a new browser tab. Typical usage: highlight a URL, hit the hotkeys, and generate a full bibliography entry. #dh #zotero

    gist.github.com/driscoll/dfa86

  23. DSL KeyPad — ввод более 4 700 символов Юникода прямо с клавиатуры

    Зачем? — У меня и самой был запрос на такую программу. Программу с кучей «нестандартных» символов. Существующие решения не отвечали моим потребностям и тогда я решила создать своё, подходящее под мои хотелки: многоязычный ввод, ввод типографских, математических и даже алхимических символов. И теперь я надеюсь, что сие «изобретение» окажется полезным не только для меня. Такой инструмент необходим мне для разработки вселенной — построение канона культур, писательство (именно работа над книгой стала триггером для начала разработки) и работа с языками. Создавать новые языки на основе существующих систем ныне будет проще — все нужные символы как на ладони. В статье представлен обзор на DSL KeyPad и его основные фичи, благодаря которым вы сможете печатать с внушительным арсеналом символов, имея всего-то две языковые раскладки: русскую и английскую. Румынский? Немецкий? Или может быть Вьетнамский? Старославянский? Да легко — множество комбинаций и ряд фич позволит вам писать на куче языков. Да хоть Германские руны и Глаголицу печатать. Прилагаются и широкие возможности кастомизации под свои нужды. А это примеры названий языков и систем, написанные с помощью моей программы: Қазақ тілі, Хуэйзў йүян, Забони тоҷикӣ, Йағнобӣ зивок, Аԥсуа бызшәа, Авар мацӏ, Українська мова, Словѣньскъ ѩꙁꙑкъ, Црногорски језик, Ли́мба Рꙋмѫнѣскъ, Итәнмәӈин крвэԓхатас, Даһур Усүүэ, Эвэды̄ турэ̄н, Азәрбајҹанҹа, Башҡорт теле, Тэлэңгэт, Чӑваш чӗлхи… Ænglisċ sprǣċe, Français, Tiếng Việt, Hànyǔ Pīnyīn, Norrœnt mál, Limba Română, Español, Język polski, Čeština, Bokmål, Tamaziɣt, Türkçe, Sää’mǩiõll…

    habr.com/ru/articles/932600/

    #типографика #autohotkey #раскладка_клавиатуры #unicode #юникод #языки #клавиатура #набор_текста #qwerty #йцукен

  24. #TIL: die umstellung von #autohotkey version 1 auf version 2 verlangt einige anpassungen in der skript-datei: autohotkey.com/docs/v2/v2-chan.
    (brauche ich für textbausteine, siehe ulb.uni-muenster.de/fachblog/a)

  25. #TIL: die umstellung von #autohotkey version 1 auf version 2 verlangt einige anpassungen in der skript-datei: autohotkey.com/docs/v2/v2-chan.
    (brauche ich für textbausteine, siehe ulb.uni-muenster.de/fachblog/a)

  26. Without looking it up, can you guess what "if 0 < 3" does in #AutoHotKey ?

  27. Without looking it up, can you guess what "if 0 < 3" does in #AutoHotKey ?

  28. Adding #AutoHotkey to the list of cautionary examples of ad-hoc scripting languages. But I'm still glad it exists, now I can start automating the #PocketViewer simulator. Opening it is already so much faster.
    But ideally I'd still prefer to reverse engineer it enough to use Frida to add some automation and maybe even a GDB stub.
    #theWorkshop

  29. Adding #AutoHotkey to the list of cautionary examples of ad-hoc scripting languages. But I'm still glad it exists, now I can start automating the #PocketViewer simulator. Opening it is already so much faster.
    But ideally I'd still prefer to reverse engineer it enough to use Frida to add some automation and maybe even a GDB stub.
    #theWorkshop

  30. I've a new blog post out about using my new Logitech Litra Glow light. Being me though, somehow I got an old Raspberry Pi (with some very particular pieces of software), Apple #Shortcuts, #HomeAssistant, and #AutoHotkey involved in remote controlling it.

    thoughtasylum.com/2025/02/22/r

  31. The more I use #Espanso the more I like it. Still a long way to go to be as powerful as #AutoHotKey, but I don't think it ever could be due to MacOS restrictions. Meh. I still like it. espanso.org

  32. #AutoHotKey can disable the Copilot key, I am now an AHK fan

  33. I'm new to Mastodon. Here's some stuff I like and might post about:

    - Theology (I am very Christian)
    - Amateur Category Theory (bad)
    - Programming in #janetlang
    - Philosophy (anti-platonism)
    - Note-taking/PKM ( #roamresearch )
    - Data Analysis (self-taught, bad)
    - Cool Etymologies
    - Literary Criticism
    - Desktop Automation ( #autohotkey )
    - Now Reading/Watching/Listening to/Playing
    - Complaining about Microsoft products
    - Misc. side projects (I write #vscode extensions)

  34. I wanted to highlight text and hit alt+shift+b to look it up on ZoteroBib.

    Here's my hacky prototype in AutoHotKey:
    forums.zotero.org/discussion/c

    #zotero #autohotkey

  35. I set up an #AutoHotKey macro to pause/resume #Audacity when recording audio. The pause/break key works wonderfully as a cough button.

    ```
    #Requires AutoHotkey v2.0

    #r:: { ; Windows+R: Record
    if WinExist("ahk_exe audacity.exe") {
    hwnd := WinExist("ahk_exe audacity.exe") ; Get the Audacity window handle
    if hwnd {
    PostMessage(0x100, 0x52, 0, , hwnd) ; WM_KEYDOWN message for Space key
    PostMessage(0x101, 0x52, 0, , hwnd) ; WM_KEYUP message for Space key
    }
    }
    }

    #s:: { ; Windows+S: Stop/Play
    if WinExist("ahk_exe audacity.exe") {
    hwnd := WinExist("ahk_exe audacity.exe") ; Get the Audacity window handle
    if hwnd {
    PostMessage(0x100, 0x20, 0, , hwnd) ; WM_KEYDOWN message for Space key
    PostMessage(0x101, 0x20, 0, , hwnd) ; WM_KEYUP message for Space key
    }
    }
    }

    #p::PauseResume() ; Windows+P
    Pause::PauseResume() ; Pause/Break key

    PauseResume() {
    if WinExist("ahk_exe audacity.exe") {
    hwnd := WinExist("ahk_exe audacity.exe") ; Get the Audacity window handle
    if hwnd {
    PostMessage(0x100, 0x50, 0, , hwnd) ; WM_KEYDOWN message for Space key
    PostMessage(0x101, 0x50, 0, , hwnd) ; WM_KEYUP message for Space key
    }
    }
    }
    ```