Diakonos is a Linux console text editor for the masses.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
bin Made diakonos.new object $diakonos.new, since many things need $diako… Feb 8, 2007
extensions/dk-hello-world More conversion of current_beffer to buffer_current. Sep 2, 2010
help Remove whitespace [Gun.io WhitespaceBot] Oct 29, 2011
lib Handle closure of last buffer Apr 3, 2017
scripts Removed git-related configuration and script; moved to separate repo. Jun 21, 2009
spec Conform to newer rspec exception expectations Feb 20, 2018
.gitignore Ignore .bundle and vendor directories Dec 30, 2016
.ruby-gemset Add .ruby-gemset and Gemfile. Apr 18, 2015
.travis.yml Raise minimum Ruby version requirement Feb 20, 2018
CHANGELOG Handle closure of last buffer Apr 3, 2017
Gemfile Bump gem versions Feb 20, 2018
Gemfile.lock Bump gem versions Feb 20, 2018
LICENCE Bump copyright year. Apr 1, 2015
LICENSE Symlink LICENSE to LICENCE, to help Americans know what licence Diako… Jul 2, 2009
README.rdoc Raise minimum Ruby version requirement Feb 20, 2018
Rakefile Remove unused begin-end pair in Rakefile around rspec initialization. Apr 19, 2015
_diakonos_bash_completion Added bash completion. Jul 17, 2009
_diakonos_zsh_completion Added quotes around definition of sessiondir. Jun 7, 2010
ansi-terminalcolours.txt Added a text file to use as reference for the 256 curses colours avai… May 23, 2008
diakonos Changes for successful gem building. Dec 6, 2006
diakonos-256-colour.conf Add explicit Javascript highlighting definition Sep 7, 2016
diakonos.conf Add private/protected def to Ruby indenters Feb 20, 2018
install.rb Renamed README to README.rdoc, so github can render it a little more … Jan 2, 2011
make-release.rb Document -p option on make-release.rb . May 2, 2014
make-tarballs.rb Minor update to tarball script. Apr 1, 2015




  • Ruby 2.3+

  • curses gem

Diakonos is built to run on Linux, but may run under other flavours of UNIX. It is known NOT to work under Windows (unless using Cygwin). It works reasonably well under iTerm on OSX.

Under Debian and Ubuntu derivatives, you'll need the following dependencies:

sudo apt-get install libncurses5-dev ruby-dev
sudo gem install curses


The latest stable tarballs can be acquired from


The latest development code can be obtained from github:

git clone git://github.com/Pistos/diakonos.git


ruby install.rb --help
ruby install.rb [installation parameters]

You may need root privileges on the system in order to install to system-wide places like /usr . However, Diakonos runs perfectly well in userspace, such as under ~/usr .


If you use RVM, note that Diakonos installs very easily into an RVM-based Ruby.

After installing Diakonos under RVM, you can symlink to the installed binary, and that will allow you to use Diakonos with that specific Ruby version no matter what the current RVM Ruby is. Example:

mkdir -p ~/bin
cd ~/bin
ln -s /home/pistos/.rvm/rubies/ruby-1.9.2-p180/bin/diakonos

Then ensure that ~/bin is in your PATH.

[1]: rvm.io


diakonos --uninstall


Run with any of these:

diakonos [filename...]
diakonos -s <session-name>
diakonos -m <regexp>

or, for other options and arguments,

diakonos --help

For help using Diakonos, simply press F1 or Shift-F1 from within the editor to use the interactive help system.

To dig deeper into Diakonos' rich feature set, see github.com/Pistos/diakonos/wiki/Beyond-the-Basics .

The source code repository is at github.com/Pistos/diakonos .


Send comments, feedback and tech support requests to the #mathetes channel on the FreeNode IRC network ( webchat.freenode.net/?channels=mathetes ), or the mailing list diakonos@librelist.com . Reproducible issues may be reported at github.com/Pistos/diakonos/issues .

Pistos diakonos.pist0s.ca/