Microemacs
Modern Jasspa's Microemacs fork - based on Dave Conroy and Daniel Lawrences code. Text editor with GUI and terminal mode, with syntax highlighting, folding, outlines, abbreviations, own extension language, calendar, games, notes, ...
Install / Use
/learn @mittelmark/MicroemacsREADME
<img src="jasspa/pixmaps/me_s.png" /> Jasspa MicroEmacs 2009 / Jasspa MicroEmacs 2025
[!NOTE] New users should consider using MicroEmacs 2025 which has better support for Unicode in terminals, more modern font support on X11 and as well adds SSL (https) support. New development will take place mainly in the MicroEmacs 25 project. Here we will add smaller improvements and bugfixes.
Currently FreeBSD, Linux 32 bit, Linux kernel 4 builds and Windows Cygwin builds are only available for MicroEmacs 09, so the binaries for this project here which you find below.
Extensible Terminal and GUI text editor with Emacs feeling coming as a small, single file executable for Windows, Linux, MacOS and FreeBSD.
Main features - Pros:
- small!! and fast!!
- character based user interface in terminal and in GUI mode working the same way
- Windows, Windows Cygwin, Linux, macOS and FreeBSD versions all working the same file
- single file installs possible (2.5MB-4MB file size)
- Emacs like (default) or CUA key bindings available
- menu entries for all main functions (Esc = in Terminal mode for menu)
- extensible programming language
- themes, customizations, templates, snippets menu or GUI accessible
- for its size the text editor with most features without being bloated
Cons:
- No Unicode (but full ISO and Windows encoding support) - you can type usually all the keys from your keyboard
- No softwrap (but automatic wrap is available)
This is a fork of Jasspa MicroEmacs forked from https://github.com/vitalyster/microemacs. It is an extended version of the MicroEmacs 2009 release which was the last official release available at the website http://www.jasspa.com.
Schemes
<a name="Schemes"> </a>
<img src="images/ayu-light.png" width="390px"/> <img src="images/dracula.png" width="390px"/>
Left the Ayu Light theme which is defined in the file schemeal.emf and right the popular "Dracula" theme which is defined in the file schemedr.emf. See the folding feature for Markdown, in the image below (Dracula theme) the section build is folded by the indicated three dots:
<img src="images/terminal-greek-text.png" width="390px"/> <img src="images/solarized-light-rcode.png" width="400px"/>
Left Greek Lipum text in a ME terminal session as well displaying the menu. Please note, that to use extended char sets you need for MicroEmacs 09 the luit application. On the right the Solarized Light theme showing R documentation for the function pam in the cluster package.
<a name="Types"> Executables can be of three types:</a>
- mec(b) - console only (around 600kb without macro files)
- mew(b) - X11/Windows only (around 630kb without macro files)
- mecw(b) Terminal and X11 enabled - for Mac with XQuartz and for Linux with X11 (650kb w/o macro files)
The bfs executables (mecb, mewb and mecwb) have as well all macro files, the internal help file and the American dictionary embedded (file size around 2.5-4.0Mb depending on the platform). For simplicity reasons all downloads on the release page are bfs-builds.
<a name="Features">New Features</a>
In comparison to the version at the Jasspa website it contains the following changes / extensions:
- improved terminal mode for suspend-emacs with using alternative terminal buffer (thanks to Steven Phillips)
- basic git support with commands to add, commit and get status of files etc
- easier addition of own user templates with interactive template selection using the command "insert-template"
- support for Go, Tcl and Python for linters and formatters, other programming languages on request
- more schemes (themes) Ayu Light and Dark, Dracula, Solarized Light and Dark, and Tango Light and Dark
- editor themes can be directly loaded from xrdb theme files like these from the iTerm2-Color-Schemes repo
using the xrdb-scheme macro - better support for TTF-fonts on X11 and their ISO-8859-1 .. 15 and Windows-Cp1252 encodings
- easier font-selection on X11 using xfontsel from the user-setup or using the change-font-xfontsel macro
- easier font resize on X11 (Mac and Linux) and Windows using Ctrl-Plus and Ctrl-Minus keys
- documenting ME macro functions as well with basic Markdown syntax - see define-help help page
- much improved Markdown mode (folding, template file, syntax hilghlighting, outline in item list, embedding Tcl, Python, R and Dot code in fences with syntax highlight)
- improved Python, Shell, Tcl and R support with folding, item-list and abbreviations
- improved CUA bindings and jeany-bindings where CUA bindings (C-s, C-x, C-v etc are prefixed with C-j so that still all Emacs bindings are available
- AppImage for easy install on Linux systems
- Linux (Ubuntu 20, 22, 24), Windows, Windows Cygwin, Darwin 21, 22, 23, 24 builds using Github actions
- Windows builds using cross compilation on Ubuntu with Github actions on Windows Visual Studio build as Github action
- updates on documentation
- fix for str_errlist[errno] by replacing it with strerror(errno) on Linux x64 Fedora with gcc 10.3
- fix for hang on error bug if using the -n command line switch
- fix for frame resize on X11 if the font changes (thanks to Steven Phillips)
New important macro commands (see the internal help pages - version v09.12.24):
change-font-sizecan be done as well with key bindingsC-PlusandC-Minus- X11 only (Linux, MacOS)
change-font-xfontsel- direct font selection using xfontselchange-font-bold
git-add,git-commit,git-status,git-diffetcexecute-region- for macro developmentinsert-template- easier definition of user templatesxrdb-scheme- load directly xrdb color schemesr-doc- loading R documentation as hypertext help within MEr-exec,r-formatandr-lintto execute, reformat or check R code for possible problemspy-doc- loading Python documentation within MEpy-exec,py-formatandpy-lintto execute, reformat or check Python code for possible problemstcl-exec,tcl-formatandtcl-lintto execute, reformat or check Tcl code forgo-exec,go-formatandgo-lintto execute, reformat or check Go code for
<a name="installation"> </a>
Installation
<a name="unix"> </a>
Unix systems
For Linux, MacOS, FreeBSD, Cygwin-Windows and Msys-Windows the following lines might work to install or to update the MicroEmacs 09 executable:
bash -c "$(curl -fsSL https://github.com/mittelmark/microemacs/releases/latest/download/install.sh)"
source ~/.bashrc ## for the current session update the PATH settings
mecb -V
This line requires the tools curl and unzip to be installed on your Linux, FreeBSD or Windows Cygwin/Msys system.
You can then start either the terminal version with the command mecb arguments or the
X11/Windows version with mewb arguments.
On Cygwin Windows you might as well need to install libxt6 for instance on MobaXterm you write apt install libxt6 to
run the mewb executable.
To get the colored terminal version you should activate TermCap colors in Tools-User Setup-Platform and run the mecb version like this:
TERM=xterm mecb ...
To avoid typing this and for proper rendering of non ISO-8859-1 characters
using the luit tool on a Unix terminal with UTF-8 support it is usually done by performing an
alias in your .bashrc or your .zshrc like this:
alias mec="TERM=xterm luit -encoding ISO8859-15 mecb"
alias mew="mewb"
If you like to have Windows CP1252 character support you can as well use the following mec alias:
alias mec="TERM=xterm luit -encoding CP1252 mecb"
<a name="x11fonts"> </a> Better Font Support on X11
The number of fonts which MicroEmacs can use per default is a little bit restricted as it uses the X11 font system For a long story look here: https://www.linuxdoc.org/HOWTO/XWindow-User-HOWTO-7.html
There is as well a little installer script for the X11 version of MicroEmacs which links your already installed existing monospaced TrueType fonts into your
Related Skills
node-connect
331.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
81.5kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
331.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
81.5kCommit, push, and open a PR
