View GitHub Pull Requests in Magit
How to view GitHub Pull Request branches locally in the cloned repo, and more importantly, how to do that automatically from within Emacs.
How to view GitHub Pull Request branches locally in the cloned repo, and more importantly, how to do that automatically from within Emacs.
My diagrammatic take on summarizing all the Emacs advice combinators.
How to define a custom org-global-cycle
-like command that collapses
only the Org subtrees with specific properties.
Using the org-map-entries
API to loop through selected or all
headings in an Org file.
In this post, I introduce a little library I created for ox-hugo
to
have a robust mechanism for generating TOML from any Lisp expression.
Creating a specification for an Emacs-Lisp library to convert Lisp data expressions into easy-to-read TOML strings.
A short guide for getting the single quotes rendered as expected
(straight or curved) in Emacs Lisp function and variable documentation
strings and message
outputs.
Using the :around
advice to prevent messages from being displayed in
the echo area or the ∗Messages∗ buffer.
A quick introduction to using ERT (Emacs Lisp Regression Testing) for your next elisp library.
I ventured out to start writing about a 100+ line Emacs Lisp snippet in my config, and then I thought — Wouldn’t it be nice if I can quickly split out that huge snippet into smaller Org Src blocks?
And so this blog post happened.
How to trim the FontAwesome JS for your website, using Emacs Lisp.
Huh? 😕
Well, a mechanic usually wouldn’t give you a time estimate in seconds, but a tool I am using prints something like this at the end:
The simulation took 54227.9 seconds in CPU time.
That triggered me to write a “little” script to convert seconds to human time i.e. time in days, hours, minutes and seconds.
I never quite liked the trend to have upper-cased keywords in Org
documents, like #+TITLE
.
So it was a pleasure to see that trend start changing in this Org
commit.. so that that same keyword would now be written as #+title
.
The Org and Worg git repos can be committed to only via ssh protocol (and not https), and for technical reasons, I cannot commit to those repos via ssh from my primary development machine. So I ended up with a flow that involves pushing commits to those repos using my Nexus 6p phone.
Magit is how I git, and I love to primarily work from the
∗magit-log∗ buffer (M-x magit-status
, l b). But the default
column widths were not optimal on a Nexus 6p 5.7" screen. And that’s
what inspired this tweak, which looks great on a regular desktop
monitor too.
In almost all of my ediff
use cases, I would have windows open
side-by-side in a frame, and then I would want to do a diff between
the two using ediff-buffers
.
But emacs doesn’t know that I obviously want to diff those two
side-by-side buffers! So it always asks me to select the buffers to be
diffed. The same problem is when using ediff-files
too.
So I came up with the following helper function to pick the correct
ediff
command.
The setup of outshine package for emacs requires the user to set the
variable outline-minor-mode-prefix
to "\M-#"
before the outline-mode
package (that ships with emacs) is loaded.
The best way to do this is via the Customize interface in emacs.
So I did M-x customize
and set that variable’s value to "\M-#"
and restarted
emacs and that worked.
But then I was surprised to see that value being saved in the custom.el
as
'(outline-minor-mode-prefix "\243")
.
I have a couple of theme packages installed on my emacs but I would like to assign a default theme.
I set the zenburn theme via a function zenburn
. I set the
leuven theme via another function leuven
. But in my emacs
startup I didn’t want to hard-code either of these function and thus
arose the need to set a variable to one of these functions.