;; -> body
#IfWinActive ahk_exe kompozer.exe ahk_class MozillaUIWindowClass
^q::SendInput, !vd ; design
^w::SendInput, !vs ; split
^e::SendInput, !vh ; source
^1::SendInput, !op1 ; heading 1
^2::SendInput, !op2 ; ...
^3::SendInput, !op3
^4::SendInput, !op4
^5::SendInput, !op5
^6::SendInput, !op6
^p::SendInput, !opp ; paragraph
^+p::SendInput, !opf ; preformatted
^+b::SendInput, !ost ; strong
^+i::SendInput, !ose ; emphasis
^+-::SendInput, !ozr ; smaller
^++::SendInput, !ozg ; bigger
^+c::SendInput, !oso ; code
^+t::SendInput, !osx ; tt
^h:: ; horizontal rule
SendInput, !ih
Sleep, 100
SendInput,
{Tab}{Enter}
return
$^!s:: ; clean up and save
SendInput, !tm
Sleep, 100
SendInput, {Enter}{Esc}^s
return
+AppsKey:: ; open tag menu
MouseGetPos, mx, my
WinGetPos,,, w, h
MouseMove, % w - 40, % h - 20, 0
SendInput, {RButton}
MouseMove, % mx, % my, 0
return
F1:: ; open advanced properties for tag
MouseGetPos, mx, my
WinGetPos,,, w, h
MouseMove, % w - 40, % h - 20, 0
SendInput, {RButton}{Up}{Enter}
MouseMove, % mx, % my, 0
return
F2:: ; open inline styles for tag
MouseGetPos, mx, my
WinGetPos,,, w, h
MouseMove, % w - 40, % h - 20, 0
SendInput, {RButton}{Up}{Up}{Enter}
MouseMove, % mx, % my, 0
return
F8:: ; class=left
MouseGetPos, mx, my
WinGetPos,,, w, h
if (Counter() & 1) ; odd
MouseMove, % w - 40, % h - 25, 0
else
MouseMove, % w - 40, % h - 15, 0
SendInput, {RButton}{Up}{Up}{Up}{Right}l
MouseMove, % mx, % my, 0
return
F9:: ; class=clear
MouseGetPos, mx, my
WinGetPos,,, w, h
if (Counter() & 1) ; odd
MouseMove, % w - 40, % h - 25, 0
else
MouseMove, % w - 40, % h - 15, 0
SendInput, {RButton}{Up}{Up}{Up}{Right}c
MouseMove, % mx, % my, 0
return
;; -> library
Counter()
{
static clicks := 0
clicks += 1
return clicks
}
;; -> body
; ____
; |_ _|
; | | a b l e o f c o n t e n t s
; |_|
F5:: ; update table of contents (h2-h6)
SendInput, !ibu
goto toc1
+F5:: ; create table of contents (h2-h6)
SendInput, !ibi
goto toc1
toc1:
Sleep, 100
SendInput, h2{Tab}{Tab}h3{Tab}{Tab}-{Tab}-{Tab}-{Tab}-{Enter}
return
F6:: ; update table of contents (h2 only)
SendInput, !ibu
goto toc2
+F6:: ; create table of contents (h2 only)
SendInput, !ibi
goto toc2
toc2:
Sleep, 100
SendInput, h2
goto toc4
F7:: ; update table of contents (h3 only)
SendInput, !ibu
goto toc3
+F7:: ; create table of contents (h3 only)
SendInput, !ibi
goto toc3
toc3:
Sleep, 100
SendInput, h3
goto toc4
toc4:
SendInput, {Tab}{Tab}-{Tab}-{Tab}-{Tab}-{Tab}-{Enter}
return
#IfWinActive