/emacs_mathren

My personal working emacs config. I use it for LaTeX, python, fortan, C, HTML, notebooks with ein, org mode, TRAMP, and general text editing.

Primary LanguageEmacs Lisp

Emacs configuration

Tested and working with emacs 26.3 and now testing on 28.1.

I manage my emacs configuration with GNU stow here. See README.org inside dot-emacs.d/ for the description of the configuration itself, which is described in literate org file. dot-emacs is auxiliary file created by changing some emacs faces.

Screenshot

Wombat theme, doom line. ein Ipython notebook running on remote server showing inline plot with matplotlib, TRAMP remote folder, org notes file, and aweshell pop-up terminal in the bottom.

screenshot.jpg

Installing emacs 28.1 on Ubuntu 20.04

Loosely following this guide.

  • Download the tarball from savannah
  • install gcc-10, e.g. this guide
  • use configure options tweaked from from ein debug templates:
./autogen.sh
./configure --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes --enable-locallisppath=/etc/emacs --with-sound=alsa --without-gconf --with-mailutils --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --with-native-compilation --with-pop=yes --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --without-gconf --with-mailutils --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/emacs-mEZBk7/emacs-26.3+1=. -fstack-protector-strong -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro'
make -j 3
make install

(finish) Installing emacs 29.1 from repository

Prerequisite: install gcc-10, e.g. this guide

  1. Clone from https://git.savannah.gnu.org/git/emacs.git the emacs-29.1 branch (commit a9b28224af0f73d1fe0f422e9b318c5b91af889b).
  2. Run ./autogen.sh
  3. Configure with:
      ./configure --prefix=/tmp/emacs29.1/ \
    		  --with-native-compilation=aot --with-imagemagick --with-json \
    		  --with-tree-sitter --with-xft \
    		  --build x86_64-linux-gnu \
    		  --sharedstatedir=/var/lib --libexecdir=/usr/lib \
    		  --localstatedir=/var/lib --infodir=/usr/share/info \
    		  --mandir=/usr/share/man --with-pop=yes \
    		  --enable-locallisppath=/etc/emacs --with-sound=alsa \
    		  --without-gconf --with-mailutils \
    		  --build x86_64-linux-gnu \
    		  --sharedstatedir=/var/lib --libexecdir=/usr/lib \
    		  --localstatedir=/var/lib --infodir=/usr/share/info \
    		  --mandir=/usr/share/man --with-native-compilation \
    		  --with-pop=yes \
    		  --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/site-lisp:/usr/share/emacs/site-lisp \
    		  --with-sound=alsa --without-gconf --with-mailutils --with-x=yes \
    		  --with-x-toolkit=gtk3 \
    		  --with-toolkit-scroll-bars 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/emacs-mEZBk7/emacs-26.3+1=.fstack-protector-strong -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2''LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro'