Age | Commit message (Collapse) | Author | Files | Lines |
|
If you refer to the previous commit where I change shell-command usages to
start-process function calls, you'll see the rationale for why I prefer
start-process.
This commit introduces a more ergonomic API for start-process that fits most of
my current use-cases of it. This cleans up the code. I have introduced a bug in
the way that I'm tokenizing the COMMAND value. I've tracked that with a
TODO. For now it only affects the `xmodmap -e '<command-string>'` calls, which
isn't too disruptive.
|
|
These were latent bugs.
|
|
Continuing the series of easy-win commits that increase the speed of commands
that I was previously using `shell-command` to run by using `start-process`
instead.
|
|
As promised in the previous commit, I'm refactoring usages of `shell-command` to
prefer the faster alternative `start-process`. So far, I'm pleased with the
results.
|
|
Without doing any benchmarking (break this naughty habit), I'm preferring to
call `start-process` instead of `shell-command` in my `wallpaper/set`
function. I noticed that the `shell-command` call was unnecessarily polluting my
`pstree` call when I debugging my randomly changing wallpaper bug.
I'm mostly likely going to change a few more `shell-command` calls to prefer
`start-process`.
|
|
Defining "Shapely Patterns" theme... surely I can come up with better names than
this... :/
|
|
While I first switched to EXWM warily and thinking it would only be temporary,
it seems like this switch is here to stay. It turns out that EXWM was exactly
the integration I've been looking for. How serendipitous it that I found it when
I did.
Thank you, @tazjin.
|
|
Use pactl and exwm KBDs to support toggling my microphone setting from Emacs.
|
|
While this commit isn't much (i.e. notmuch), it represents one brave step
forward in the quest for supporting email in Emacs -- something I'm estimating
to be somewhere between a 1.5x and 2x workflow booster.
|
|
TL;DR:
Problem: I ran into a bug where my computer wallpaper was changing every five
seconds whenever my init.el file was open and I was typing in it.
Short-term solution: Disable flycheck.
Long-term solution: Disable flycheck just for Elisp or just for init.el in
Elisp.
Post Mortem:
Warning: If you have flycheck-emacs-lisp-initialize-packages set to auto or
really anything other than nil, than the emacs-lisp flycheck-checker will spin
up a new Emacs instance, and evaluate all of the Elisp in init.el.
Why does this matter? Well, if like me, you have code anywhere in your
init.el (and any files downstream from init.el), that code will get evaluated
not just twice. But countless times... tens, hundreds, w/e. So... while you
might think you have code that is just running at startup this code will be
called incessantly.
As a dramatic, contrived example, if you had something like...
```elisp
(bank/send :amount 100 :to "wpcarro@gmail.com")
```
...anywhere in that your init.el would evaluate, you may end up sending
wpcarro@gmail.com millions of dollars. To make debugging this problem a bit more
complicated is that because this runs in a separate Emacs instance, you can't do
something like...
```elisp
(defvar already-evaluated? nil)
(unless already-evaluated? (bank/send :amount 100 :to "wpcarro@gmail.com"))
(setq already-evaluated? t)
```
...since the `already-evaluated?` variable will be local to the Emacs
instance. So if you needed a mechanism to ensure code like this runs only once,
you would need a way to share this semaphore across Emacs instances --
e.g. writing to and reading from disk.
|
|
Prefer the --oneline flag for `git yday` so that it is formatted like the
`git today` command.
|
|
I'm sure that there is a fish package that supports git aliases or
abbreviations. This time, I'm preferring to write my own.
Side note: The more that I use fish's abbreviations, the less that I like them
-- at least for the way in which I'm using them.
|
|
Google-related files should eventually be moved out of GitHub hosting and onto
Google infrastructure (e.g. Git on Borg).
When I do this, I should run:
```fish
> git grep --ignore-case google (git rev-list --all)
```
To assess the reference I've introduced into this repository.
Other tools that should come in handy when I do this are:
- git filter-branch
- BFG repo-cleaner
|
|
Yasnippet supports a way to share snippets between related modes. I should do
this instead of just defining a new snippet here. Well... until then.
|
|
For now, my lack of understanding of purpose results in purpose getting in my
way. One day, I may reinvestigate this. For now, I'm attempting to learn Prolog
and Nix, which is occupying most of my tolerance for new technology.
|
|
It took me awhile to install evil-magit because I believed that evil-collection
supported it. My grasp of Emacs bindings was enough to tolerate the strangely
"inconsistent" KBD support of in magit. Eventually though my tolerance waned,
and I verified that evil-collection does *not* support magit, and suggests that
users seek evil-magit. I did that. I do not regret it.
Installing Wilfred's refine.el, which is a lovely package for interactively
editing data structures. Go LISP!
|
|
Wrap installation call with a predicate that checks on the file-system for the
icon assets. Along the way, document other parts of the wpc-ui package.
|
|
Ensure that string.el follows the latest whim in my Elisp testing circus.
|
|
Support functions for ensuring the existence of directories and files. These
functions represent the type of small ergonomic wins that I believe libraries
should support.
|
|
Why did I ever remove this? Perhaps git can help me answer that.
|
|
I had previously only worked with Facebook's Flow. Typescript support in Emacs
is excellent!
|
|
I'm unsure if this file should be included in my dotfiles, but it doesn't seem
to contain sensitive information.
|
|
In a moment of strong opinions against variadic functions, I defined
maybe/somes? and redefined maybe/some? to be non-variadic. I'm not sure if I
feel as strongly about that change as I did when I made it. Either way, the
change remains and math.el is broken unless it consumes maybe/somes?, so... this
does that!
|
|
I provided the wrong usage example in my documentation. This goes to show how
critical generated documentation is to the goal of documentation reliability,
which itself bolsters the goal of documentation in general.
|
|
I was missing a trailing comma in my xmodmap call. This rectifies that mistake.
|
|
I believe that I defined these aliases when I was optimistic about using them. I
never ended up habituating that usage, so these are covered in dust.
|
|
After attempting to run OCaml on a separate machine, I realized that I needed to
update the documentation in my wpc-ocaml package.
|
|
TODO: It may be preferable to augment my git history to remove the traces of
these files ever existing. For now, since I value a precise git history over a
pristine git history and my tendancy to maintain the former is sometimes at odds
with my goal of the latter, I'm saving this work for a later date.
|
|
Register the .pl file extension with `prolog-mode'. This is useful because I'm
reading the "Learn Prolog Now!" book at the moment.
|
|
After some back-and-forth, I'm trialing fish shell instead of zsh as my default
shell. For now, I'm porting the aliases.zsh into config.fish -- defining them as
abbreviations instead of aliases; this preference may change. See the commentary
in config.fish for more information.
A spent a lot of time in zsh and built much configuration, so supporting fish
may take considerable time. Here's some work that remains:
TODO:
- Port functions.zsh
- Port variables.zsh
- Port zle.zsh
|
|
After attempting to package some of my Elisp libraries using Nix, I exposed
circular dependencies between modules that has existed for awhile.
I'm temporarily disabling this code since I do not have time to refactor
everything. When I get around to packaging everything, I'll need to resolve
these issues.
For now, I must carry on.
|
|
Currently paying the price of months of non-diligent git usage.
Here's what has changed.
- Theming support in Gvcci and wpgtk
- Dropping support for i3
- Supporting EXWM
- Many Elisp modules
- Collapsed redundant directories in ./configs
|
|
I had `tbz`, which toggles between a project directory and it's associated
blaze-bin.
I added three functions which support navigating to blaze-bin, blaze-genfiles,
and to the project root.
|
|
Hibernating, sleeping, WiFi configuration...
|
|
More analogue to git for mercurial.
|
|
Whoops...
|
|
Ensures that the lf instances are floating windows when created.
|
|
The dream is to create an offline version of something like repl.it.
|
|
Helpful reminder for how to setup bluetooth, TV streaming, etc.
Sadly I need this because I still have a lot of trouble working with Linux.
|
|
Also adds some rules for the Compton configuration so, that the lock screen
isn't transparent.
|
|
Support aliases to quickly navigate the Google3 source code tree.
|
|
Useful command to run instead of `clear` - especially after printing sensitive
information to STDOUT. E.g. after running - `pass show misc/secret`.
|
|
Compton helps composite windows in X. This supports shadows, transparency, and
some other effects of which I'm unaware at the moment.
|
|
Re-enabling support for i3-gaps after successfully installing it from source.
|
|
At the moment, I don't find these timestamps useful.
|
|
I intend on using my experimental folder more regularly for Java, Blaze,
etc. tests.
|
|
<leader>= should align a selected region. This should have been added awhile
ago, but it's great to have now!
|
|
Should output: `public static void main(String[] args)`. More of these Java
snippets to come.
|
|
Also changes a few config settings for auto{connect,join}ing. This is still a
WIP.
|
|
Prefer using i3's "active edge" to control where apps are spawned.
|