Skip to content

Instantly share code, notes, and snippets.

Henrik Lissner hlissner

Block or report user

Report or block hlissner

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
hlissner / custom-set-faces.el
Last active Jul 13, 2019
Convenience macro for additively setting face attributes in Doom Emacs
View custom-set-faces.el
(defmacro custom-theme-set-faces! (theme &rest specs)
"Apply a list of face specs as user customizations for THEME.
THEME can be a single symbol or list thereof. If nil, apply these settings to
all themes. It will apply to all themes once they are loaded.
(custom-theme-set-faces! '(doom-one doom-one-light)
`(mode-line :foreground ,(doom-color 'blue))
`(mode-line-buffer-id :foreground ,(doom-color 'fg) :background \"#000000\")
'(mode-line-success-highlight :background \"#00FF00\")
hlissner / doom-persist-frame.el
Last active May 16, 2019
(Doom Emacs) Persists the Emacs' frame's dimensions, location and full-screen state across sessions
View doom-persist-frame.el
(when-let* ((dims (doom-cache-get 'last-frame-size)))
(cl-destructuring-bind ((left . top) width height fullscreen) dims
(setq initial-frame-alist
(append initial-frame-alist
`((left . ,left)
(top . ,top)
(width . ,width)
(height . ,height)
(fullscreen . ,fullscreen))))))
hlissner /
Last active May 16, 2019
TL;DR for setting up Chemacs (particularly for Doom Emacs)

Chemacs is a bootloader for Emacs. It makes it easy to switch between multiple Emacs configurations. To get it set up, start by deploying Doom somewhere:

git clone ~/doom-emacs
~/doom-emacs/bin/doom quickstart

Then deploy Chemacs’ startup script in ~/.emacs.

hlissner /
Created Apr 4, 2019
Some literature on touch-bending in Unity or HLSL
hlissner /
Created Apr 3, 2019
Install yay on Arch Linux
if ! command -v yay >/dev/null; then
tmp=$(mktemp -d)
function finish { rm -rf "$tmp"; } # clean up after yourself...
trap finish EXIT # matter how you exist
git clone "$tmp"
pushd "$tmp"
makepkg -sri --noconfirm --needed
hlissner / hs-special-modes-alist.el
Created Jun 21, 2018
Adds hideshow folding rules for yaml-mode and ruby-mode
View hs-special-modes-alist.el
(defun +data-hideshow-forward-sexp (arg)
(let ((start (current-indentation)))
(unless (= start (current-indentation))
(require 'evil-indent-plus)
(let ((range (evil-indent-plus--same-indent-range)))
(goto-char (cadr range))
(map-put hs-special-modes-alist
hlissner /
Last active May 16, 2019
Install pacaur on Arch Linux
if ! command -v pacaur >/dev/null; then
tmp=$(mktemp -d)
function finish {
rm -rf "$tmp"
trap finish EXIT
pushd $tmp
for pkg in cower pacaur; do
curl -o PKGBUILD$pkg && \

Keybase proof

I hereby claim:

  • I am hlissner on github.
  • I am hlissner ( on keybase.
  • I have a public key whose fingerprint is 0ABF F606 54D7 AEAF C9CC 27CE 5F6C 0EA1 6055 7395

To claim this, I am signing this object:

hlissner / git-gutter.el
Last active Jun 20, 2017
My Emacs git-gutter configuration, paraphrased
View git-gutter.el
(defconst doom-fringe-size '3 "Default fringe width")
;;; Setting up the fringe
;; switches order of fringe and margin
(setq-default fringes-outside-margins t)
;; standardize fringe width
(fringe-mode doom-fringe-size)
(push `(left-fringe . ,doom-fringe-size) default-frame-alist)
(push `(right-fringe . ,doom-fringe-size) default-frame-alist)
hlissner /
Last active Jul 30, 2019
Codesign gdb on OSX

Note: these instructions are for pre-Sierra MacOS. Sierra and newer users see by @gravitylow.

If you are getting this in gdb on OSX while trying to run a program:

Unable to find Mach task port for process-id 57573: (os/kern) failure (0x5).
 (please check gdb is codesigned - see taskgated(8))
You can’t perform that action at this time.