Age | Commit message (Collapse) | Author | Files | Lines |
|
TL;DR:
- Ignore lines starting with "#"
- Tidy up the code
|
|
- Spirited Away
- Modern Times
|
|
I haven't updated this list since I was living in Dargow, Germany over the
summer. Now that I've settled down, and I'm situated in the London Bridge area,
I'm updating the list.
|
|
I recently looked at the updated Doom themes, and the screenshot for this one
looked appealing. I'm going to give it a try.
|
|
Now that I have a vertical monitor, I'd like to use it for terminals and logs.
|
|
I want to couple my EXWM workspaces with monitors. E.g. - I'd like my "Chatter"
workspace to prefer my `4k-vertical`. This change supports that.
I also did a small amount of formatting, which I don't think belongs in a
separate commit.
|
|
This is a helpful reminder to ensure that the exchange rate is always
fresh. Ideally I could use Google Sheets formulae to take a snapshot of the
GBP:USD exchange rate *at a point in time*, but I haven't set that up yet. Maybe
it'd look something like:
```pseudocode
=GOOGLEFINANCE("GBP:USD", "September 1, 2020")
```
I'll have to look into this.
|
|
My newly minted macro for defining monitors introduced two bugs:
1. Laptop defined its position in terms of 4k-horizontal and 4k-horizontal
defined its position in terms of laptop, I introduced a circular dependency.
2. The identifier, `laptop-monitor`, which `window-manager.el` depends on, is
now defined as `laptop`.
A friendly reminder to myself to always test new Emacs builds to make sure that
everything can initialize properly. This is something that my CI should be
automating, but ever since I moved flats, I lost my CI and need to restore it.
This is another reminder to drop into a TTY when Emacs fails to initialize, run
`nix-env --rollback`, then attempt to restart X. But this time, debugging this
entirely from a TTY wasn't so disappointing.
|
|
EXWM needs to know about my newly defined monitor.
|
|
I recently acquired a new monitor, which I'm orienting vertically for logs,
chats, etc. As such I needed to add more functions, KBDs to wrangle the
setup. To DRY up my code, I define a macro, `display-register`, as a DSL for
supporting new monitors. This:
- defines two functions for enabling and disabling the displays
- defines a constant, `display-<name>`
It's basically just a wrapper around `xrandr`, and that's good enough for now.
|
|
My modeline was displaying the local time (not UTC time) and appending the UTC
timezone offset, which was confusing me.
When it was `00:03` in London, my modeline would read `00:03+01`. One way of
interpreting this is that it's `00:03` in London and the `+01` is a reminder
that I'm one hour ahead of UTC. However, I was reading it as though it was
`00:03` UTC and thus `01:03` in London.
I had to set `display-time-string-forms` instead of `display-time-string` to
pass the `t` argument to the `ZONE` parameter to indicate that I'd prefer to use
UTC time and not local time when expanding the variables.
|
|
Instead of scattering helpful-mode buffers, reuse existing buffers when
traversing documentation.
See this blog post for more information:
https://d12frosted.io/posts/2019-06-26-emacs-helpful.html
|
|
I'm managing this in a separate, work-specific repository.
|
|
This is handy!
|
|
Instruct Tramp to use my SSH settings in .ssh/config.
|
|
Generate KBDs to call `find-file` on the bookmark.
|
|
My google-briefcase has subsumed this responsibility.
|
|
My custom language settings conflict with Google-Emacs's language settings, and
I'm not interested in finding a more harmonious solution. For now, I'm dropping
my settings altogether in favor of Google-Emacs's settings.
|
|
Add fzf to PATH.
|
|
I'd rather be able to jump straight here instead of visiting a file or directory
first.
|
|
On my work machines, I'm finding home-manager to be more bothersome than
helpful. I'm preferring a simpler workflow for the time being.
|
|
The code in `wpc-nix.el` relies on `nix-env` being available on $PATH.
|
|
After ~1-2 hours of debugging, I realized that locally I was reading from .envrc
but when Emacs initializes, it is not reading from .envrc. I don't know how to
ideally handle this, so for now I'm including GOOGLE_BRIEFCASE as an environment
variable and moving on with my life.
|
|
I've reconsidered; setting this to just '(cl-functions) is not what I want.
|
|
Trying to be more idiomatic.
|
|
Consider moving some of this logic into my work-specific configuration.
|
|
I was previously relying on the variable `server-process` being set, but this
only resulted in false-negatives and broken initializations. This should make my
Emacs initialization more stable.
|
|
direnv.el needs direnv available on $PATH.
|
|
When the `window-system` is set, use `solarized-light`. When it's not,
use `wombat`.
|
|
Only attempt to start the Emacs server if there isn't already one
running.
|
|
Only when `window-system` is set.
|
|
I would like to restore these KBDs.
|
|
See the URL I linked to for more information.
|
|
I'm defining a fork of this function in my work configuration, so I longer want
this here.
|
|
As the name suggests, `f-parent-of?` only returns true when A is a *parent* of
B. What I want instead if `f-ancestor-of?`.
|
|
I need this for Nix code that exists outside of this repository.
|
|
See the explanatory comment that I left in the code.
|
|
In the past I used `defconst` in many of my Elisp libraries where I should've
used something like:
```elisp
;; some/path/to/some-lib.el
(defgroup some-lib nil)
(defcustom some-lib-setting nil
:group 'some-lib)
```
When I encounter code that I should've structured this way, I'm cleaning it up
to prefer this more idiomatic pattern.
|
|
While attempting to debug why pressing `C-s-s` from an X-window screenshots my
entire screen, I switched from `call-process` to `make-process`, which is
async.
I still haven't debugged the original issue, but I think this is an improvement
regardless.
|
|
When I removed the KBD logic from fonts.el, I should have moved it here, but I
did not.
|
|
Looks like when I linted my Emacs I forgot to change the prefix from
`pulse-audio/` to `pulse-audio-`.
|
|
Now that Emacs is capable a rendering font ligatures, I defined a function to
enable them in fonts.el. Everything works, and it's beautiful.
|
|
Now that my `script.el` is behaving as expected (wahoo!), start linting away
anything that shows up in the `*Warnings*` and `*Errors*` buffers.
|
|
TL;DR:
- Prefer cl-lib
- Prefer spaces to tabs
- Resolve various checkdoc complaints
|
|
I originally liked this pattern, but now I'd prefer to put everything in
keybindings.el.
|
|
Since I'm calling `(require 'general)` in `wpc-package.el`, which gets called at
the beginning of my `init.el` file, all sub-modules have `general`. I originally
wanted this, but I'm beginning to rethink that preference.
After `script.el` broke my CI because of a missing `general` dependency, I'm
fixing it for `buffer.el` and all other modules that consume `general`.
|
|
Since script.el depends on buffer.el now, buffer.el fails to evaluate because of
a missing dependency on ts.el.
Blindspots like this make me want to eventually support testing individual loads
of each of the libraries in my .emacs.d/wpc directory.
|
|
`use-package` complains that `add-hook-before-save` doesn't exist. This is
because it's now named `macros-add-hook-before-save`.
This fixes that.
|
|
Problem: `(bufferp "*Warnings*")` always returns `nil` because it expects a
buffer object. Thankfully I wrote a function called `buffer-exists?`, which is a
more DWIM alternative of `bufferp`.
Hopefully now CI should fail!
|
|
TL;DR:
- Require cl-macs.el for modules using CL-style macros like `cl-defun`
- Require struct.el for call to `struct-set!`
|