Emacs
Intro
Emacs is great and sucks too. NEVER USE IT when you have a GUI!
Installation
Fuck the emacs operating system, we just want a terminal editor. Always install it without X support:
sudo apt install emacs-nox
Configuration
- Use CUA mode
- This common config should work well in both terminal and UI:
/home/m/development/config/common/home/m/.emacs
NOTE that you need some other things to be configured properly:
- the terminal must use a light light blue background since it will be carried over into [emacs -nw]
- the terminal must have 256-color support; set this in .bashrc:
export TERM=xterm-256color
- Make sure you check out undo support via [ctrl-x u]
Colors
God the entire command line world is stuck in the 60s... hopefully the terminal colors stick when editing, but sometimes (RUBY cough couhg) emacs tries to "help" with garish bullshit colors that prevent reading code... try this if you're desperate...
Alt-X set-background-color [Enter] #111111 [enter]
GPG
Emacs can auto-en/decrypt GPG files during load/save, which is EXCELLENT since there is never plaintext on disk.
- You should have gpg installed by default, but apt install if needed. Create a strong key with passphrase; see gpg.
- Configure emacs to prompt for PIN, otherwise gpg-agent prompt and emacs interfere with each other and lock out keyboard:
emacs ~/.emacs.d/init.el (setq epa-pinentry-mode 'loopback)
- Use files with .gpg extention to inform emacs to attempt decryption.
- To create a newly encrypted file, just tell emacs to open it, and select your gpg key as encryption target (hit M on it, then hit Enter on the OK "button"). When you save, it will be encrypted.