Zum Inhalt springen

Joe

Installation

Linux/Ubuntu/Debian

# Using apt package manager
sudo apt update
sudo apt install joe

# Using yum (Fedora/CentOS)
sudo yum install joe

# Using pacman (Arch Linux)
sudo pacman -S joe

# Building from source
wget https://sourceforge.net/projects/joe-editor/files/joe/4.6/joe-4.6.tar.gz
tar -xzf joe-4.6.tar.gz
cd joe-4.6
./configure
make
sudo make install

macOS

# Using Homebrew
brew install joe

# Using MacPorts
sudo port install joe

# Building from source
wget https://sourceforge.net/projects/joe-editor/files/joe/4.6/joe-4.6.tar.gz
tar -xzf joe-4.6.tar.gz
cd joe-4.6
./configure
make
sudo make install

Verify Installation

# Check version
joe --version

# Verify binary location
which joe

# Show help information
joe --help

Basic Usage

Opening Files

# Open a single file
joe filename.txt

# Open multiple files
joe file1.txt file2.txt file3.txt

# Open file at specific line
joe +10 filename.txt

# Open file for read-only
joe -readonly filename.txt

# Open with specific mode
joe -wordstar filename.txt    # WordStar compatible keys
joe -pico filename.txt        # Pico compatible keys
joe -emacs filename.txt       # Emacs compatible keys

Exiting Joe

# While in editor, press Ctrl+K then X (WordStar mode)
# Or press Ctrl+C in command mode

# Quit without saving
# Ctrl+K Q (abandon changes)

# Save and quit
# Ctrl+K X (save current file and exit)

Editing Commands

WordStar Key Bindings (Default)

# Movement
Ctrl+A      # Move cursor to beginning of line
Ctrl+E      # Move cursor to end of line
Ctrl+D      # Move cursor right one character
Ctrl+S      # Move cursor left one character
Ctrl+X      # Move cursor down one line
Ctrl+W      # Move cursor up one line
Ctrl+F      # Move cursor right one word
Ctrl+B      # Move cursor left one word

# Page operations
Ctrl+C      # Page down
Page Down   # Page down alternative
Ctrl+R      # Page up
Page Up     # Page up alternative

# Jump to specific location
Ctrl+J      # Go to specific line (prompts for line number)

# File operations
Ctrl+K D    # Delete current line
Ctrl+K Y    # Delete entire line and move up
Ctrl+T      # Delete word to the right

Editing Operations

# Insert/Overwrite
Ctrl+V      # Toggle insert/overwrite mode

# Delete operations
Ctrl+H      # Delete character to left (backspace)
Ctrl+G      # Delete character at cursor
Delete      # Delete character to right

# Selection and copying
Ctrl+K B    # Mark beginning of selection block
Ctrl+K K    # Mark end of selection block
Ctrl+K C    # Copy selected block
Ctrl+K V    # Paste block
Ctrl+K X    # Cut (delete) selected block
Ctrl+K W    # Write block to file

# Undo/Redo
Ctrl+U      # Undo last change
Ctrl+_      # Redo (if implemented)

Search and Replace

# Search
Ctrl+F      # Find text
Ctrl+L      # Find next occurrence
Ctrl+K F    # Find and replace

# Search options (in search prompt)
# ? - previous occurrence
# / - next occurrence
# A - replace all
# R - replace current
# N - skip this occurrence

Advanced Features

Multiple Windows

# Split window
Ctrl+K O    # Open file in new window
Ctrl+K P    # Switch between windows

# Manage windows
Ctrl+K 1    # Show only current window
Ctrl+K 2    # Split into two windows
Ctrl+K N    # Open new file in new window

Syntax Highlighting

# Set syntax highlighting mode
Ctrl+T S    # Select syntax highlighting type
# Common modes: C, HTML, JAVA, PYTHON, PERL, SHELL

# Supported file types (auto-detected):
# .c, .h - C source
# .java - Java
# .py - Python
# .pl - Perl
# .sh - Shell script
# .html, .htm - HTML

Status and Help

# Display help
Ctrl+K H    # Show context help
Ctrl+K ?    # Show key bindings

# View file status
Ctrl+I S    # Show current file status
# Displays: filename, line number, column, file size

# Show line numbers
Ctrl+T N    # Toggle line number display

Configuration

joerc File

# Location: ~/.joerc or /etc/joe/joerc
# Copy default configuration
cp /etc/joe/joerc ~/.joerc

# Edit configuration
joe ~/.joerc

# Common settings:
# -mid        - Message in window, not in bar
# -nolinesl   - Don't show line numbers
# -wordwrap   - Enable word wrapping
# -autoindent - Auto-indentation
# +options    - Enable option
# -options    - Disable option

Custom Configuration

# ~/.joerc example configuration
-wordwrap
-autoindent
-nolinesl

# Display options
-mid
-mouse

# Tab and indentation
-tab 4          # Tab width = 4
-indentc 4      # Indentation = 4 spaces

# Line wrapping column
-lmargin 0
-rmargin 70     # Wrap at column 70

Keyboard Shortcuts Reference

ShortcutAction
Ctrl+K XSave and exit
Ctrl+K QQuit without saving
Ctrl+K SSave file
Ctrl+K DDelete line
Ctrl+FFind
Ctrl+K FFind and replace
Ctrl+LFind next
Ctrl+AGo to line start
Ctrl+EGo to line end
Ctrl+WPage up
Ctrl+CPage down
Ctrl+UUndo
Ctrl+K BMark block start
Ctrl+K KMark block end
Ctrl+K CCopy block
Ctrl+K VPaste block

Workflow Examples

Basic Text Editing

# 1. Open file
joe myfile.txt

# 2. Use Ctrl+A/Ctrl+E to navigate within line
# 3. Use Ctrl+W/Ctrl+C to navigate between pages
# 4. Use Ctrl+F to search for text
# 5. Use Ctrl+K F to find and replace
# 6. Use Ctrl+U to undo mistakes
# 7. Use Ctrl+K X to save and exit

Code Editing

# 1. Open source file
joe program.c

# 2. Enable syntax highlighting: Ctrl+T S (select C)
# 3. Use Ctrl+I S to see line numbers and file info
# 4. Navigate with Ctrl+D/Ctrl+S for character movement
# 5. Use Ctrl+K B and Ctrl+K K to mark code blocks
# 6. Copy blocks with Ctrl+K C
# 7. Find function names with Ctrl+F
# 8. Save with Ctrl+K S

Bulk Find and Replace

# 1. Open file: joe logfile.txt
# 2. Invoke Find and Replace: Ctrl+K F
# 3. Enter search term when prompted
# 4. Enter replacement text when prompted
# 5. Use 'A' to replace all occurrences
# 6. Save with Ctrl+K S

Best Practices

  • Use Ctrl+K S frequently to save work (AutoSave not available)
  • Enable auto-indentation for code editing with -autoindent
  • Use syntax highlighting for source code (Ctrl+T S)
  • Mark and copy blocks efficiently with Ctrl+K B, K, C
  • Use Ctrl+J to jump directly to specific line numbers
  • Create custom ~/.joerc for preferred settings
  • Learn WordStar key bindings for faster editing
  • Use Ctrl+F for quick text searches in large files
  • Utilize tabs (Ctrl+Tab) for indentation in code
  • Keep backups since Joe doesn’t have automatic recovery

Additional Resources


Last updated: 2026-03-30