A downloadable tool for macOS and Linux

Just what it says on the tin: OutNoted is an editor for outlines made of one-line notes, inspired by the old Linux/BSD tool hnb.

This is my second attempt to make one; my interest in outliners dates back almost five years. The first time I failed however, because outliners are complicated.

The trick, as with many other things, is paring them down to the essence.


  • Create and edit outlines made of one-line notes.
  • Open and save outline formats like Org Mode and OPML.
  • Treat any note as a task and / or link.


  • Bookmark management: don't leave it to the browser!
  • Task management: often you don't need much more.
  • Planning a book or game, writing dialogue and so on.

How to use

  • Press Ctrl-Insert to add a note, Enter to save.
    • Or just click in the edit line and start typing.
  • Keep typing to add more notes in the same place.
  • Use Ctrl-Escape to clear the selection first.
  • Press Tab from the edit line to focus the tree.
  • Ctrl-E starts editing the selected note.
  • Escape on the edit line cancels editing the note.
  • Insert adds a child note to the one selected.
  • Delete removes the selected note and its children.
  • Use Control with the arrow keys to move notes around.
  • Right-click in the main view for a context menu.

Key bindings

(Many bindings have a Command- equivalent for Mac users.)

  • Ctrl-N: Start new outline.
  • Ctrl-O: Open outline from disk.
  • Ctrl-S: Save current outline.
  • Ctrl-F: Find text from the beginning.
  • Ctrl-G: Find again from the last result.
  • Ctrl-1 / Ctrl-2 / Ctrl-3: Toggle note status.

Other bindings are shown in the menu.


  • OutNoted guesses formats based on file extensions to keep it simple.
  • OutNoted is best used with mouse and keyboard together.
  • If you add notes while a search is active, Find Again will skip them.
  • When opening org files, only headlines are recognized!
    • Seriously, OutNoted isn't a proper org file editor, sorry.


  • Insert / extract subtrees.
  • Support more metadata / file properties.
  • Change note color depending on link or status.


outnoted-linux-amd64.zip 9 MB
outnoted-linux-x86.zip 12 MB
outnoted.py 27 kB
NEWS.txt 2 kB
README.org 1 kB

Install instructions

For the stand-alone Linux editions: unpack the archive and run bin/outnoted.

See the project homepage for instructions on running from source.

Recommended screen resolution: 800x600.


Log in with itch.io to leave a comment.

Deleted post

Thank you for the nice words! Glad I can teach people something new.

Dark mode is outside the scope of individual apps. It's the job of desktop environments. Tk should pick it up automatically since it uses native controls on Windows and Mac. Unfortunately, on Linux or BSD it takes cues from KDE of all things, so that's a no for most of us. Maybe things will improve in future versions.

(1 edit)


i keep getting this error when i try to run this app in Visual Studio Code:

_tkinter.TclError: bad event type or keysym "KP_Up"

Error starts from this line:

File "c:\Users\lacro\Downloads\outnoted.py", line 880, in <module>

top.bind("<KP_Up>", lambda e: move_up())

Do you have any idea how to fix this? Your app looks pretty nice for keeping track of gamedev tasks. Hope we can find out the solution together :)

I'm on Windows 10 btw

I've no idea why that particular key wouldn't be supported on Windows, sorry.

Wait. What version of Python do you have? Or better yet, can you figure out what Tcl/Tk it is?

Okay so my VS Code is using Python 3.9.6 

And TK seems to be the 8.6 version. Is there anything else I can give you? :)

>>> tkinter.TkVersion

Nah, just making sure it's a recent version, just in case. In the mean time I thought of something else: try commenting lines 880-883, where it says:

top.bind("<KP_Up>", lambda e: move_up())
top.bind("<KP_Right>", lambda e: move_right())
top.bind("<KP_Left>", lambda e: move_left())
top.bind("<KP_Down>", lambda e: move_down())

At least it should get OutNoted running, unless there are more issues. Hope this helps!

(1 edit) (+1)

So, that is exactly what I tried to do :) and it works fine, i can even Tab back to the writing box and down to the notes. 

Also, I managed to package the app with PyInstaller. So now i have it as a single .exe file that doesn't even open the console.

Yeah, it works now. Thanks for making this! And have a nice day :)