Seeking OS X app recommendation: instant text entry
I'm looking for an app (or script) that does this:
- I hit a global shortcut key chord.
- A one-line text entry box appears.
- I enter a line of text and hit ENTER.
- The text is saved somewhere, perhaps as a plaintext file on the local filesystem.
- I'm looking at the same screen I was before step 1, without any more clicks, keys, or delays.
That's it. The purpose is simply to have a muscle-memory way of recording a very brief thought. Please don't suggest a solution that involves a heavy app with lots of features -- for the sake of this OP, that fails the requirements.
This description sounds a lot like Twitter, and given that many OS X Twitter clients could be configured to fulfill this behavior, I don't want a Twitter client.
You can do this without any third party software. Just use Automator to create your own Service that appends the input string to any text file.
Open Automator and select to create a new Service that receives no input in any application.
From the Library, drag the Run AppleScript action to the area on the right, and use the following script code:
on run {input, parameters}
return text returned of (display dialog "Enter some text:" default answer "")
end run
Then, add a Run Shell Script action that receives input to stdin, and replace the default script with the following:
cat >> /Users/danielbeck/notes.txt
Instead of /Users/danielbeck/notes.txt
, specify any path.
Here's what it looks like in Automator:
Save as e.g. Add Note, and assign a keyboard shortcut in System Preferences » Keyboard » Keyboard Shortcuts » Services » General » Add Note
Here's the dialog box:
You can press Cancel, Escape
, or Cmd-Period
to cancel.
You can even change how the notes appear in the text file through changes to the Run Shell Script action. For example, you can use the following instead, if you reconfigure the Run Shell Script action to receive input as arguments instead:
echo $( date +"%Y-%m-%d %H:%M:%S" ) "$@" >> /Users/danielbeck/notes.txt
It will look like this in the resulting file:
2012-01-30 12:38:56 foo
2012-01-30 12:38:58 bar
The QuickJot feature of Shovebox does this. Yojimbo also has a hot key feature, but the input box will be a little more complex. Both of these will store "files" within the application, not in the file system per say.
If you are dead set on storing plain text in the file system Notational Velocity or nvAlt may better suit your needs.