Skip to content
A Programmer's Text Editor
Branch: master
Clone or download
driusan Handle plumbing messages on Plan 9.
This does a first pass of allowing deplumber to handle plumbing messages
on Plan 9, where the unix domain socket hack for coordinating the open
window doesn't work because there are no unix domain sockets.

This needs some work, and should create a proper 9fs server under /mnt/de,
rather than trying to port the hack, but for now it works, though it always
opens things in a new window.
Latest commit 438ceb1 Jan 1, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
actions Handle plumbing messages on Plan 9. Dec 31, 2017
demodel Use a real PTY for the Shell command Aug 7, 2017
deplumber Handle plumbing messages on Plan 9. Dec 31, 2017
kbmap Added support for Plan9Ports plumber Jan 15, 2017
plugins Fix the build on Plan9 Dec 21, 2017
position Add whitespace nuance for I. Jan 4, 2017
renderer Small bug fixes for Plan 9 Feb 19, 2017
scripts Added Comment and Uncomment helper scripts Nov 24, 2016
vendor/9fans.net/go Handle plumbing messages on Plan 9. Dec 31, 2017
viewer Use a real PTY for the Shell command Aug 7, 2017
.gitignore Added tagline support. May 17, 2016
.travis.yml Added OS X and Linux to Travis build Jul 1, 2016
COMMANDS.md Implemented File:newfilename command to view or change current filename Aug 12, 2016
CONTRIBUTING.md Added support for Plan9Ports plumber Jan 15, 2017
LICENSE Initial release May 16, 2016
PLUGINS.md Added plugin support and documentation May 17, 2016
PLUMBING.md Added support for Plan9Ports plumber Jan 15, 2017
README.md Added support for Plan9Ports plumber Jan 15, 2017
USAGE.md Added documentation for 'I' and 'A' keyboard bindings Jan 4, 2017
main.go Use a real PTY for the Shell command Aug 7, 2017
plugins.go Added basic Javascript renderer Nov 19, 2016
plumber.go Handle plumbing messages on Plan 9. Dec 31, 2017
plumber_plan9.go Handle plumbing messages on Plan 9. Dec 31, 2017
window.go Added stable background mode Jul 15, 2016

README.md

The de Editor Build Status

de is a programmer's editor. (Where that programmer happens to be driusan.)

It's kind of like a bastard child of vim and Plan 9's acme editor, because vim feels inadequate on a computer with a mouse after using acme, and acme feels inadequate on a computer with a keyboard after using vi.

Like vim, it's a modal editor with syntax highlighting that uses hjkl for movement. Like acme, it attempts to exploit your current OS environment instead of replacing it and tries to make the mouse useful.

See USAGE.md for usage instructions.

de screenshot

Features

  • Syntax highlighting (currently only Go and PHP with some basic markdown.)
  • vi-like keybindings and philosophy.
  • acme-like mouse bindings and philosophy.
  • Ability to write plugins in Go. See PLUGINS.md.
  • Ability to plumb with p9p plumber. See PLUMBING.md

de screenshot

Limitations and Bugs

  • vi-like functionality not fully implemented (most notably some movement verbs like '%' are missing, and see notes in issue #1.)
  • Can not open multiple files/windows at a time. (if your workflow is like mine, it means you often save and quit, do something in the shell, and then relaunch your editor. The startup time should be fast enough to support this style of workflow.)

Installation

It should be installable with the standard go tools:

go get -u github.com/driusan/de/...

Then as long as $GOPATH/bin is in your path, you can launch with de [filename]

Community

There's now a #de channel on gophers.slack.com for users of this editor.

You can’t perform that action at this time.