Skip to main content
Join the official 2020 Python Developers SurveyStart the survey!

a text editor

Project description

Build Status Azure DevOps coverage

babi logo

babi

a text editor, eventually...

installation

pip install babi

why is it called babi?

I used to use the text editor nano, frequently I typo this. on a qwerty keyboard, when the right hand is shifted left by one, nano becomes babi.

quitting babi

currently you can quit babi by using ^X (or via esc + :q).

key combinations

these are all of the current key bindings in babi

  • ^S: save
  • ^O: save as
  • ^X: quit
  • ^P: open file
  • arrow keys: movement
  • ^A / home: move to beginning of line
  • ^E / end: move to end of line
  • ^Y / pageup: move up one page
  • ^V / pagedown: move down one page
  • ^-left / ^-right: jump by word
  • ^-home / ^-end: jump to beginning / end of file
  • ^_: jump to line number
  • selection: shift + ...: extend the current selection
    • arrow keys
    • home / end</kdb>
    • pageup / pagedown
    • ^-left / ^-right
    • ^-end / ^-home
  • tab / shift-tab: indent or dedent current line (or selection)
  • ^K / ^U: cut and uncut the current line (or selection)
  • M-u / M-U or M-e: undo / redo
  • ^W: search
  • ^\: search and replace
  • ^C: show the current position in the file
  • ^-up / ^-down: scroll screen by a single line
  • M-left / M-right: go to previous / next file
  • ^Z: background
  • esc: open the command mode
    • :q: quit
    • :w: write the file
    • :wq: write the file and quit
    • :sort: sort the file (or selection)

in prompts (search, search replace, command):

  • ^C: cancel
  • ^K: cut to end
  • ^R: reverse search

setting up syntax highlighting

the syntax highlighting setup is a bit manual right now

  1. find a visual studio code theme, convert it to json (if it is not already json) and put it at ~/.config/babi/theme.json. a helper script is provided to make this easier: ./bin/download-theme NAME URL

here's a modified vs dark plus theme that works:

./bin/download-theme vs-dark-asottile https://gist.github.com/asottile/b465856c82b1aaa4ba8c7c6314a72e13/raw/22d602fb355fb12b04f176a733941ba5713bc36c/vs_dark_asottile.json

demos

most things work! here's a few screenshots

file view

this opens the file, displays it, and can be edited and can save! unknown keys are displayed as errors in the status bar. babi will scroll if the cursor goes off screen either from resize events or from movement. babi can edit multiple files. babi has a command mode (so you can quit it like vim :q!). babi also supports syntax highlighting

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for babi, version 0.0.17
Filename, size File type Python version Upload date Hashes
Filename, size babi-0.0.17-py2.py3-none-any.whl (42.1 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size babi-0.0.17.tar.gz (36.6 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page