JOE or Joe’s Own Editor is a full-featured ncurses-based text editor for Unix systems.
JOE is a blending of MicroPro’s venerable microcomputer word processor WordStar and Richard Stallman’s famous Lisp based text editor Emacs (but it does not use code from either program): most of the basic editing keys are the same as in WordStar as is the overall feel of the editor. JOE also has some of the key bindings and many of the powerful features of Emacs.
JOE is free and open source software.
Key Features
- Multi-file search and replace- file list is either given on command line or by a UNIX command (grep/find) run from within JOE.
- Mouse support, including wheel (works best when using xterm). The mouse can resize windows, scroll windows, select and paste text, and select menu entries.
- Context display on status line: allows you to see name of function cursor is in.
- UTF-8 support, optional auto-detect of UTF-8 files.
- Syntax highlighting for more than 40 languages.
- Hexadecimal edit mode. Use JOE as a disk editor: joe -overwrite -hex /dev/hda1,0,512 (edit first sector of /dev/hda1).
- Non-destructive editing of binary files even when handling MS-DOS or UNIX line endings.
- Swap file allows editing files larger than memory.
- Context sensitive on-line help.
- Bash-like TAB completion and history for all prompts, or jump into the completion menu and use it to traverse the file system.
- Complete word in edit buffer by hitting ESC Enter (uses other words in buffer for dictionary).
- EMACS-compatible file locks and file modification checking.
- Shell windows.
- Multiple-windows onto same or different files.
- Compile and step through errors or Grep and step through finds.
- Goto matching character delimiter “() [] {} <>” which skips comments and quoted matter.
- Goto matching word delimiter, including XML tags and C preprocessor directives.
- Ctrl-arrow key block selection.
- Search and replace system, including regular expression and optional incremental search. Regular expression key for matching balanced C expressions.
- Tags file search (tab completion at tags search prompt uses tags file as database).
- Spell check commands which invoke aspell or ispell. Language for aspell can be passed through editor.
- Paragraph format which preserves news/mail quoting indentation characters.
- Unlimited Undo and Redo.
- Yank buffer allows stepping through and insertion of previously deleted text.
- State file restores history buffers, yank buffer and last file cursor positions.
- Cursor position history allows you to step through previously visited areas of a file.
- Multiple interactive keyboard macros. Macros can be assigned to key sequences in joerc file.
- Block move/copy/delete/filter.
- Rectangle (columnar) block mode- search and replace can be narrowed to the rectangular block. Rectangular blocks can be filtered through UNIX commands.
- Overtype/Insert modes.
- Indent/Unindent (shift block left or right).
- Auto-indent mode.
- Picture mode for ASCII graphics.
- Line number mode displays line number of each line.
- Powerful scientific calculator with block statistics functions (sum/standard-deviation/count highlighted block of numbers).
- Termcap/Terminfo support allows JOE to use any terminal or terminal emulator.
- Can accept data from a pipe, for example: ls | joe.
Website: joe-editor.sourceforge.io
Support:
Developer: Joseph H. Allen, Marek ‘Marx’ Grac and contributors
License: GNU General Public License v2.0

JOE is written in C. Learn C with our recommended free books and free tutorials.
Related Software
| Emacs-like Text Editors | |
|---|---|
| TeXmacs | High quality scientific word processor and typesetting program |
| vile | Combines aspects of the Emacs and vi editors |
| Zile | Customizable, self-documenting real-time display editor |
| Remacs | Community-driven port of Emacs to Rust |
| JOE | Joe's Own Editor with no code used from Emacs |
| Textbringer | Emacs-like text editor written in Ruby |
| QEmacs | Small but powerful UNIX editor |
| mg | Small, fast, and portable Emacs-like editor |
| ce | Small, fast, Emacs-like text editor |
| JOVE | Jonathan's Own Version of Emacs. Supports many ancient systems |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

