-
AHKCommandPicker
An AutoHotkey (AHK) script that allows you to easily run AHK functions. Instead of having to remember what shortcut key maps to each of your AHK scripts, this displays a list of all your AHK functions and allows you to easily run them.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Background On my v1 journey, I eventually made so many hotkey functions that I started to run out of unused hotkeys. I was inspired by deadlydog/AHKCommandPicker, and recently by PowerToys Run, to create a minimalist GUI with a combobox of essentially script names to free up using more hotkeys by calling the GUI and typing in a function name.
SetCapsLockState "Off" Hotkey "CapsLock", (*) => createGUI() initQuery := "Turtles" entriesList := ["Red", "Green", "Blue"] createGUI() { global QSGui QSGui := Gui("AlwaysOnTop -Resize +ToolWindow -Caption", "Debug GUI") QSGui.SetColor := 0x161821 QSGui.BackColor := 0x161821 QSGui.SetFont "s10 q5", "Fira Code" QSCB := QSGui.AddComboBox("vQSEdit w200", entriesList) QSCB.Text := initQuery QSCB.OnEvent "Change", (*) => AutoComplete(QSCB) QSBtn := QSGui.AddButton("default hidden yp hp w0", "OK") QSBtn.OnEvent "Click", (*) => processInput() QSGui.OnEvent "Close", (*) => QSGui.Destroy() QSGui.OnEvent "Escape", (*) => QSGui.Destroy() QSGui.Show "w222" } processInput() { QSSubmit := QSGui.Submit() ; Save the contents of named controls into an object. if QSSubmit.QSEdit { MsgBox(QSSubmit.QSEdit, "Debug GUI") initQuery := QSSubmit.QSEdit } QSGui.Destroy() } ; https://github.com/Pulover/CbAutoComplete ; Rewritten for AutoHotkey v2 AutoComplete(ComboBox) { ; CB_GETEDITSEL = 0x0140, CB_SETEDITSEL = 0x0142 if ((GetKeyState("Delete", "P")) || (GetKeyState("Backspace", "P"))) return MakeShort SendMessage(0x0140, 0, 0, , "ahk_id" ComboBox.Hwnd), &Start, &End try { if !ControlChooseString(ComboBox.Text, ComboBox) { ControlSetText ComboBox.Text, ComboBox PostMessage 0x0142, 0, MakeLong(Start, End), , "ahk_id " ComboBox.Hwnd } else PostMessage 0x0142, 0, MakeLong(Start, StrLen(ComboBox.Text)), , "ahk_id " ComboBox.Hwnd } MakeShort(Long, &LoWord, &HiWord) { LoWord := Long & 0xffff , HiWord := Long >> 16 } MakeLong(LoWord, HiWord) { return (HiWord << 16) | (LoWord & 0xffff) } }
Related posts
-
Show HN: Screencast and accesibility app: KeyPress OSD
-
KeyPress OSD – a unique OSD for screencasts; my first ever developed app
-
Show HN: Fixkey is a keyboard-focused AI copilot for writing
-
Automating Workday Job Application Forms
-
Wordstar-keys: Implement wordstar cursor control keys in Linux using xkb