Brief description
(description continued)
description continued
- AutoHotkey main launcher, loads common and machine-specific files
- [PCH] and
aX.ahk
machine-specificAuto-Execute Section
and keybindings
- 0 Hyper ⇪ as a "Hyper" modifier key when held and open a launcher app when tapped
- xReformatPrompt avoid accidentally formatting your USB drive by auto-closing prompts with a 'Format disk' button (helpful when inserting USB drives with unrecognized formatting). Use in a separate process / compile to a standalone
exe
withAhk2Exe
to not block the main app
- char ⎇› TypES typographical layout and easily insert modifier symbols like ⎇ when pressed with ⎇›
- char🠿 insert chars on key Hold via a Mac-like Press&Hold character picker:
where a symbol can be inserted with a single key label, cursor keys and ⏎, or a mouse click on the symbol or the label. Symbols, labels, hold duration trigger, and a few picker styles are customizable. - char-AltTT add diacritics to keys by triggering an diacritic type and finishing with a key (with a tooltip hint) or insert arbitrary symbols via the same mechanism
⇧⎇m to insert macron
⇧⎇t to insert math
- 6 NumPad NumPad with two prefix keys:
- right-hand: ⭾ 7...0...n.../
- left-hand: ⎇ 1...5...z...b
- 5 Mouse e.g., scroll ←→ with ⇧🖱↑/🖱↓ (MouseWheel)
- 🖰Scroll Excel horizontal scroll in Excel to be launched separately in a no-UIA Autohotkey session
- 🖰hide on 🖮 hide mouse pointer while typing
- Tab convert ⭾ into a prefix key and use ⭾1...8 to navigate to favorite folders in a file manager or use it as a substitute for ❖x shortcuts
- 9 ‹␠1 as ⎇ restore physical ⎇ (mapped to ⎈ via SharpKeys registry override) as ⎇ (e.g., ⎈f4→ ⎇f4)
- 8 Language remap ⎇⇪ to keyboard layout switching (with workarounds around various window types)
Library files in /lib
used only when function by the same name is called
- constTypES definition for the TypES typographical layout
- constWin32 get any Windows API constant by name (full and short) (external dll/data)
- winAPIconst_embed.dll with data embedded
- or
winAPIconst_mmap.dll
withdata/winAPI_Const.rkyv_data_0
data/winAPI_Const.rkyv_state
- constWin32T translate Windows API types to DllCall types
- constKey use
⎈1
to define a keybind instead of^1
(only works in a function) - Win app/window management, including applying borderless style
- Unicode
RemoveLetterAccents
- cfg FileExplore to toggle extensions, hidden files in Windows File Explorer
- 4 Cursor Home Row cursor with 🠿⎇›
- Data types and their extension
- Collection like
OrderedMap
- Array
- Collection like
- libFunc various helper functions
keyFunc
register hotkeys and send functionsRunActivMin
run a new app/switch to an existing instance, but with options to make the window borderless and pass other optionsOpusDir_CD
open a path in Directory OpusHasValue
checks if a value exists in an arrayGroupHasWin
check if the specified group contains the specified window (quasi-boolean)- libFunc Scroll
ScrollHCombo
horizontal scroll, picking the working sub-function depending on the window/app since ther isn't a single universal horizontal scrolling method. Unfortunately, with 'UIA' enabled fails with COM (Word/Excel...) due to some weird permissions mismatch src - libFunc Dbg
dbgTT
debugging tooltip that only shows if a globaldbg
var is set above a threshold, also with posion/timer arguments, less intrusive than a typical message box (thoughdbgMsg
is also there)
- Enumerate all conhosts and tries to find the one that maps to our console window (external) getconkbl.dll
- UI Automation (external) UIA v2
- Copy external libraries to
Lib
- char🠿 contains the hotkey definitions and what set of symbols those hotkeys should use to show a symbol picker
- symbol contains a few Maps of symbols that can be updated to insert whatever symbols you need
- PressH contains a set of visual tweaks (like fonts and colors) and
TimerHold
hold threshold (0.4 sec by default) - varWinGroup contains the list of apps in the
PressnHold
group where the functionality is enabled - PressH library contains the actual
PressH_ChPick
function that creates the popup characte picker, and haslbl_en
list of default labels used when no user defined labels are provided (non-english labels can be added to the constKey library)
You can configure the script to ignore selected mouse behavior when you type:
- hide mouse pointer to avoid obscuring your text caret with it
- clicks to avoid surprising caret movements
- wheel scrolling (on a per-direction level)
- pointer movements within user defined horizontal/vertical threshold (to help with accidentally moving your mouse)
And further configure it to:
- ignore key presses with modifiers, e.g., hide the pointer on a, but ignore ⎈a as that's not typing
- work only within text fields, e.g., don't hide when using j to scroll down in an app
- ignore specific apps (and manually tweaked to work only in specific apps)
All of these are set by changing the values of the ucfg🖰hide
configuration map at the top of 🖰hide on 🖮 and reloading the script. Each value has a comment explaining what it does and what values are allowed
You can also change the keys that trigger hiding the pointer by adjusting the keys_m['en']
map for the English locale
- Horizontal scrolling fails with 'UIA' enabled AutoHotkey and COM (Word/Excel...) due to some weird permissions mismatch src, use 🖰Scroll Excel