Autohotkey Is So Useful

Autohotkey is mind bogglingly useful! Autohotkey is a free, open source Windows program that lets you do simple and complicated scripting with keyboard commands. I’ve been using it since about 2001. I use it a zillion times a day. I couldn’t imagine not having it.

Some things you can do with it:
– Have a second copy-paste clipboard
– Do a “paste” and strip out the formatting
– type often used strings like addresses, phone numbers, and email signatures with just a few strokes.
– make a window on your computer to be always on top of the other windows
– start a favorite program (Chrome, Word, Calc, whatever) with a single keystroke
– Type today’s date with a single keystroke

I’ve set it up to do about 50 commands. If you want to do things on the computer faster and easier, you might want to use it too. Just download Autohotkey and put some of the scripts I have below in your setting file. There’s a bunch of ways to do that, here is a tutorial.

Here is my settings file. Just look at the first line of each script to see what it does.


^!v:: ;Ctrl-Alt-v to paste text only; the formatted version remains in clipboard
; This script replaces Puretext.exe (https://stevemiller.net/puretext/) that I used from about 2000-2018
OriginalClipboardContents = %ClipBoardAll%
ClipBoard = %ClipBoard% ; Convert to text
Send ^v
Sleep 400 ; Don't change clipboard while it is being pasted
ClipBoard := OriginalClipboardContents ; Restore original clipboard contents
OriginalClipboardContents = ; Free memory
Return

; Want a SECOND clipboard to copy-paste from? Here it is! copy = Ctrl-Alt-n paste = Ctrl-Alt-m
; copy selected text to AutohotkeyClipboard
^!n:: ;Ctrl-Alt-n copy selected text to AutohotkeyClipboard
OriginalClipboardContents = %ClipBoardAll%
Send ^c
AutohotkeyClipBoard = %ClipBoard% ; Convert to text-only
ClipBoard := OriginalClipboardContents ; Restore original clipboard contents
OriginalClipboardContents = ; Free memory
Return

; paste from AutohotkeyClipboard
^!m:: ;Ctrl-Alt-m to paste from memory
Send %AutohotkeyClipBoard%
Return

; type "..sig" and my signature appears
:o:..sig::Thanks,{enter}Lee Sonko, OTR/L{enter}Occupational Therapist

; hit ctrl-space to make the current window always on top. From http://www.labnol.org/software/tutorials/keep-window-always-on-top/5213/
^SPACE:: Winset, Alwaysontop, , A

; I use this next one a zillion times a day!!
^!d:: ; Start Chrome with Ctrl-Alt-d
IfWinExist, New Tab - Google Chrome ; If there is already a blank window, bring it to front.
{
WinActivate, New Tab - Google Chrome
ControlFocus, Chrome_OmniboxView1
}

else
{
Run, chrome
; Run, "C:\Program Files\Google\Chrome\Application\chrome.exe"
; WinWaitActive, New Tab - Google Chrome, , 3 ; wait for for Chrome to open
;if ErrorLevel ; if Chrome doesn't open within the timeframe, throw an error on the desktop
; {
; ; MsgBox, Chrome WinWait timed out.
; TrayTip, Autohotkey, Chrome WinWait timed out, 5
; WinActivate, New Tab - Google Chrome ; activate the chrome window
; return
; }

Loop 10 ; Let's try pulling it up 10 times (Loop 10) waiting .2 seconds (sleep 200) to check and pull it up
{
Sleep, 200 ; maybe this will help guarantee that it catches????????
; SoundPlay *-1
IfWinExist, New Tab - Google Chrome ; If there is already a blank window, bring it to front.
{
WinActivate, New Tab - Google Chrome
ControlFocus, Chrome_OmniboxView1
}
}
}
return

; I have a lot of ".." codes. Just type ".. and whatever" and the text appears.
; First example: type "..9" and my zip code appears.
:o:..9::90028

:o:..ot::occupational therapist
:o:..4::415-my-phone-number

:o:..b::Berkeley
:o:..bc::Berkeley, CA

:o:..s::San Francisco
:o:..c:: California

; This script opens my favorite text editor. If it's already open, it pulls it to the front. I use this a zillion times a day
; I made it Ctrl-Alt-e because it used to start Editpad... My fingers remember the "e" better than the "s". Change it to whatever you like.
^!e:: ; Run SublimeText++ with Ctrl-Alt-e
IfWinExist, sublime_text.exe
WinActivate
else
Run, "C:\Program Files\Sublime Text 3\sublime_text.exe"
return

; Start up my favorite calculator
^!c:: ; Run Calc with Ctrl-Alt-c
IfWinExist, Moffsoft FreeCalc
WinActivate
else
Run, "C:\Program Files (x86)\Moffsoft FreeCalc\MoffFreeCalc.exe"
return

^!t:: ; Run Truecrypt with Ctrl-Alt-t
IfWinExist, TrueCrypt
WinActivate
else
; Run, "C:\Truecrypt.tc"
Run, "C:\Truecrypt.exe"
return

^!k:: ; Open Truecrypt k: with Ctrl-Alt-k
SetTitleMatchMode, 2 ; allow partial matches for WinExist

If WinExist("K:\","Namespace Tree Control") or WinExist("&crumb=location:K%3A")
{
WinActivate
ControlFocus, DirectUIHWND1
}
else
{
Run, explorer K:\
ControlFocus, DirectUIHWND1
}
return

:o:..address::Lee Sonko{enter}1304 Albina Ave Apt 2{enter}Berkeley, CA 94706{enter}

:0:..80::123456789012345678901234567890123456 >40< 3456789012345678901234567890123456 >80{enter}

:o:..-::{enter}--------------------------------------------------{up}

:o:..=::=================================================={Right}

; Here's some old school message quoting. I don't use this often. Try "..<" when you are at the top of some text you want to do message quoting to. :o:.<::{Home}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter}>{Right 76}{ctrl left}{Enter} ; More message quoting. Try "..>" then hit enter, then type a number from 1 to 99 and hit enter again
:o:.>:: ; Perform message quoting... Give it 1-99 and it'll quote that many lines.
Input,variable,L2,{Enter}
SetKeyDelay 0
BlockInput,on
Send {Home}
Loop, %variable%
{
Send >{Right 78}{ctrldown}{left}{ctrlup}{Enter}
}
BlockInput,off

:o:.p::-------- Page Break -------------{enter}

:o:.ms::-------- Original Message -------------{enter}

:o:.me::-------- End of Original Message ------{enter}

:o:.ss::---- Start of Snippet ----{home}{down}

:o:.se::---- End of Snippet ----{enter}

; type "..d" and watch the date magically appear with a line after it
:o:..d:: ; current date
FormatTime, CurrentDateTime,, M-d-yy ; It will look like 9-1-17
SetKeyDelay 0 ; This sets the keystrokes below to be sent faster than the default.
Send %CurrentDateTime%
Send {space}{enter}--------------------------------------------------{up}
return

:o:..date:: ; This hotstring replaces "]d" with the current date and time.
FormatTime, CurrentDateTime,, M/d/yyyy h:mm tt ; It will look like 9/1/2005 3:53 PM
SetKeyDelay 0 ; This sets the keystrokes below to be sent faster than the default.
Send %CurrentDateTime%
return

Today’s Motivation

When watching this, I first thought, “Yes, yes, yes. I understand. Get past the ‘life is hard, long, and boring’ part. What I need are answers. He talks about it, which is nice. It’s not a simple, easy answer, but yes, it’s simple and easy, and ultimately totally right-on.

 

School-Based OT Directly Out of Grad School

An OT student asked if going into school-based OT advisable straight out of school, saying “a couple people have warned against this because it requires a certain level of autonomy as a new practitioner…” Here is my answer:

I’m in my 6th month of working school-based, straight out of school. To survive, you certainly need to have some supports. I had school-based fieldwork, I chat often with a close family member who works in special education, and I’m working part-time. I still yearn for more supports. There are a lot of moving parts… a wide array of pediatric conditions, parents, assessments, reports, the variable school environment, multiple campuses, IEP meetings, never enough time in a day or resources. Be prepared to not be prepared. That said, it can be done if you have the supports. If I didn’t have my supports, it would not have worked.

At the end of my SNF fieldwork, I felt like I almost had it down. At the end of my school-based fieldwork. I didn’t feel nearly as competent, partially because of the particular experience I had (ask me about it privately) and partially because the job is more faceted.

 

 

What is a reasonable workload for a school-based occupational therapist?

What is a reasonable workload for a school-based occupational therapist? What percentage of time should a school-based occupational therapist be seeing clients vs performing other duties?

There are few guidelines or rules to answer these questions. That makes it especially difficult for a new occupational therapist who is working in a district on his own (like me). Here are some thoughts and datapoints for you on the subject:

From the AOTA Workforce Survey (I think the data is from 2014),  “How OT Practitioners Spend Their Time in Different Settings”

 

The North Carolina Department of Public Instruction created a guideline document in 2016. I found it here. You can find a local archive of it here:  Workload-document-and-formulas.2016. This creates a formula to determine workloads for occupational therapists and speech-language pathologists.

Another useful source is the OTSalary.com site. It is billed as “The only open source OT salary survey designed by and for OT practitioners. Knowledge is power.”

What do I do with Researchgate?

I really enjoyed the research portion of my occupational therapy master’s degree. I’m now a member of researchgate.net but I can’t figure out what it’s good for! Any thoughts?

Sloppy Equifax

I wrote this letter to Equifax today:

 

I got an email from TrustedID Customer Service <no-reply@trustedid.com> today. In it there was a sure sign of a phishing attack, only it wasn’t.

It reads like so:
Subject: New Credit Monitoring Alert
We’ve noticed a change on your credit report, and we encourage you to log in to your account to view details at www.trustedid.com.
Notice that the text reads “www.trustedid.com” but the link behind it reads “http://click.e.equifax.com/?qs=b15633469f1…”
Don’t do that shit. There is arguably only one key bit of protected information on the internet, domain names. Customers should only ever click on matched text and links. If you get customers used to clicking mismatched text and links, you get them used to being scammed.
Please write back and tell me you’ll fix this type of error in your emails.
Thank you,

Lee Sonko