vi - macOS


vi is a powerful text editor available in macOS, designed for efficient text manipulation and code editing. It is particularly suitable for advanced editing tasks and system-level configurations.


vi [options] [file]


  • -e or –edit: Enter edit mode after opening the file.
  • -f or –file: Open the specified file.
  • -R or –noreadonly: Open the file in read-write mode even if it’s marked read-only.
  • -W or –wrapmargin: Wrap long lines at the specified column (default 80).
  • -w or –showmode: Display the current mode (e.g., INSERT, COMMAND) in the status bar.
  • -y or –readonly: Open the file in read-only mode.
  • –version: Display the vi version information.
  • –help: Display usage information.


  • Create a new file named example.txt: vi example.txt
  • Open an existing file named test.txt for editing: vi test.txt
  • Open config.txt in read-only mode: vi -y config.txt

Common Issues

  • Unable to save changes: Ensure the file is not read-only (use -R option to override) or that you have sufficient write permissions.
  • Cursor not moving: Press “Esc” to exit insert mode and switch to command mode.
  • Command not found: Install vi if it is not already installed using Homebrew or MacPorts.


  • Combine with Bash for scripting: vi | grep search_term
  • Use with pipes to process text: vi config.txt | sed 's/pattern/replacement/'
  • vim: Enhanced version of vi with additional features
  • nano: User-friendly text editor suitable for beginners
  • pico: Basic text editor included in macOS