edwood

Go version of Plan9 Acme Editor

Github stars Tracking Chart

Go Report CardBuild Status

Overview

Go port of Rob Pike's Acme editor. Derived from
ProjectSerenity but now
increasingly divergent. ProjectSerenity was itself a transliteration
of the original Acme and libframe C code from
plan9port

Named edwood in celebration of the formative influence of Ed Wood on
Plan9 and the truth of
ed-iting.

Note that on unix systems, Edwood (as with Acme) requires by default some
infrastructure from plan9port:
in particular devdraw, 9pserve and fontsrv. (Note that many other
utilities like win and 9pfuse that contribute to Edwood's utility
are also found in plan9port.) So, you'll want to
install plan9port first, unless
you choose to use the more experimental pure-Go Edwood described below.

Edwood without plan9port

On Windows, plan9port is never used. On unix systems, plan9port is not
used only when the duitdraw and mux9p tags are used:

go get -u -tags 'duitdraw mux9p' github.com/rjkroege/edwood

These tags replaces devdraw with
duitdraw and 9pserve with
mux9p. Note that there are several
outstanding issues
which makes Edwood more unstable and slower when not using plan9port.

Duitdraw can use TTF fonts or compressed Plan 9 bitmap fonts. If the font
name is empty, the Go Font is used.
Example usage:

edwood	# Use Go font at 10pt
edwood -f @12pt -F @12pt	# Go font at 12pt
edwood -f /usr/share/fonts/TTF/DejaVuSans.ttf@12pt -F /usr/share/fonts/TTF/DejaVuSansMono.ttf@12pt
edwood -f $PLAN9/font/lucsans/euro.8.font -F $PLAN9/font/lucm/unicode.9.font

Contributions

Contributions are welcome. Just submit a pull request and we'll review
the code before merging it in.

Project Status

Edwood has reached the useful milestone (v0.1) and should
serve as drop-in replacement for Plan9 Port Acme. (But probably with
different bugs.) Please file issues if Acme client apps don't work
with Edwood or if your favourite Acme feature doesn't work.

Roadmap

  • More idiomatic Go and tests.
  • Internal API modernization.
  • Revised text handling data structures.
  • More configurability: styles, keyboard shortcuts, autocomplete.
  • See the issues list for the details.
  • Improve the testing code coverage

Main metrics

Overview
Name With Ownerrjkroege/edwood
Primary LanguageGo
Program languageGo (Language Count: 2)
Platform
License:Other
所有者活动
Created At2018-03-23 12:36:34
Pushed At2025-07-23 21:25:11
Last Commit At2025-07-23 13:45:41
Release Count4
Last Release Namev0.3.1 (Posted on )
First Release Namev0.1 (Posted on )
用户参与
Stargazers Count408
Watchers Count21
Fork Count36
Commits Count690
Has Issues Enabled
Issues Count180
Issue Open Count53
Pull Requests Count302
Pull Requests Open Count3
Pull Requests Close Count25
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private