Using TRAMP-mode in Emacs on Windows 10

TRAMP is another one of those Emacs power tools that once you have it working you go “How did I live without this till now?” 1. Getting it working on Windows 10 (I’m sensing a theme here) can be tricky due to some gotchas. A lot of articles on TRAMP will suggest using /ssh to start the session. Do not use this with Windows 10! Annoyingly, TRAMP will parse the SSH config file on Windows 10 but any attempt to connect using those sessions will just hang Emacs. [Read More]

Dealing with tmux/sslh and Linux upgrades

I understand that breaking changes are required from time in time in software. But I really don’t get why maintainers of some software tools are so obstinate about not wanting to write code to manage such scenarios. Case in point - tmux in Debian “buster” and at some point “sslh” as well. I use tmux when setting up new servers. Once the servers are setup, I might leave a tmux session open with tools like “htop”/“iftop” etc. [Read More]

Setting up shellcheck, platinum-searcher and zeal with Emacs

Unlike the complexity of setting up spellcheck, getting these tools to work with Emacs pretty much just requires installing them choco install shellcheck pt zeal. There are few other things you can do to make your Emacs experience nicer though: In spacemacs, you can set “pt” as the default search tool by changing dotspacemacs-search-tools to have “pt” listed as the first tool - for example dotspacemacs-search-tools '("pt" "ag" "rg" "ack" "grep"). [Read More]

Setting up spellcheck in Emacs

Since Emacs is born in GNU-land, like all other Unix(y) tools it relies on other programs to do specific things. This includes some basic capabilities such as spell-checking, but the same applies for other integrations as well. All of this is of course much less straightforward when it comes to working in Windows. Install hunspell using chocolatey1 choco install hunspell.portable Download the spelling dictionaries from the Libreoffice website The location of these dictionary files changes regularly so the above link can break. [Read More]

Making Putty, Windows 10 SSH & WSL work together

Since PuTTY has been the defacto SSH client on Windows since Windows XP, I tend to use PAGEANT.EXE to manage my SSH keys. Now that PUTTYGEN.EXE supports more robust ed25519 keys, I can get good security for my SSH keys and integration with apps such as Git and Emacs. The only annoyance has been the Windows 10 ssh.exe and WSL1. Typically to get SSH keys working in these environments, you needed to setup keys again with ssh-agent or worse set it up twice - once for ssh. [Read More]

Improving Emacs startup performance in Windows

Much like everything else to do with Emacs, getting it to run “snappily” 1 is a bit of a black art especially Windows. Here’s a quick list of everything that I did to get Emacs to start-up quickly. Pick the right flavour of Emacs The default Windows binary available on the GNU website is not the most optimized version and lacks some quality of life features such as having GnuTLS built in, which is needed for getting MELPA packages. [Read More]