about summary refs log tree commit diff
path: root/emacs
AgeCommit message (Collapse)AuthorFilesLines
2020-08-25 Replace calls to (getenv "BRIEFCASE") with constants/briefcaseWilliam Carroll4-10/+17
I would prefer to define constants/briefcase in terms of `(getenv "BRIEFCASE")` and assert that `(f-exists? (getenv "BRIEFCASE"))`, in one location: constants.el
2020-08-25 Prefer <leader>jb to <leader>jd for searching all of briefcaseWilliam Carroll1-1/+1
Feels more natural...
2020-08-25 Delete org-helpersWilliam Carroll4-35/+0
I'm trying to tidy things up, so I'm trying to apply some of the principles from "Essentialism" to my Emacs configuration.
2020-08-25 Remove unnecessary TODOWilliam Carroll1-2/+0
The Nix expression that builds `wpcarros-emacs` sets BRIEFCASE, so the .envrc isn't relied on.
2020-08-25 Remove unnecessary code from wpc-nix.elWilliam Carroll1-5/+2
TL;DR: - Prefer `(getenv "BRIEFCASE")` to `(f-expand "~/briefcase")`. I should audit my Emacs for references to ~/briefcase and replace those calls with `getenv`. - Remove calls setting <nixpkgs> and <depot> and rely exclusively on <briefcase> - Prefer ~/nixpkgs-channels to ~/nixpkgs. Notes: - I need a better way of calling `home-manager switch` that resides within my briefcase
2020-08-24 Prefer simpler, more idiomatic project-find-functionWilliam Carroll1-24/+5
This version avoids installed all of the custom `cl-defmethods` for a `'monorepo` type and instead uses the existing `'transient`.
2020-08-20 Call `git secret hide` whenever //secrets.json is savedWilliam Carroll1-0/+6
Having `git secret hide` as a pre-commit hook doesn't make much sense to me. I will detail why when/if I write a blog post on briefcase's secret mgt setup. The problem is, if I change secrets.json and then run `git status`, I won't see any pending changes. This is because secrets.json is gitignore'd. If I run `git secret hide` everytime I save secrets.json, I can rest assured that my `git status` will be consistent with any updates to secrets.json.
2020-08-20 Simplify EXWM init hookWilliam Carroll1-31/+1
Anytime something before or during window-manager.el fails to evaluate, I lose the ability to type, but I *can* still click. @tazjin recommended that I use the mouse to cycle to the *Warnings* buffer, which led me to another bug in a series of bugs that I'm uncovering: ~/briefcase/org didn't exist. A simple mistake like this should break my WM startup, so I decided to remove most of my init hook logic.
2020-08-20 Add XMODIFIERS=emacsWilliam Carroll1-1/+2
This fixes the latest segfault I encountered after /usr/bin/{google-emacs,emacs} was updated...
2020-08-20 Debug evil-want-keybindings issueWilliam Carroll1-1/+1
Problem: dependency loading order I originally assumed that keybindings.el was the first module to `require 'evil` because init.el shows: ```elisp (require 'keybindings) (require 'window-manager) ``` The problem is that keybindings.el calls `require 'window-manager` and window-manager.el requires evil! I admit, I've created a bit of a birds nest for myself. A few thoughts: - keybindings.el doesn't need to `require 'window-manager`. Fixed! - window-manager.el shouldn't need to `require 'evil`. TODO...
2020-08-20 Drop use-package in keybindings.elWilliam Carroll1-79/+63
I'm attempting to kill that zombie bug about evil-want-keybinding...
2020-08-20 Add missing dependencies to emacs/default.nixWilliam Carroll1-0/+2
While debugging some broken Emacs config, I ran Emacs in X, where for some reason my PATH doesn't have my nix-env dependencies... because of this, when I call `~/.nix-profile/bin/wpcarros-emacs` to start my Emacs, I saw warnings about missing packages that I hadn't seen before. Nice!
2020-08-20 Drop support for wpc-keybindingsWilliam Carroll3-191/+121
In favor of keybindings.el! Now I have: - kbd.el: There are no keybindings in this file. It's just a library for working with keybindings in Emacs. - keybindings.el: (hopefully) all of my keybindings for EXWM, evil, etc.
2020-08-20 Remove unused kbd/install-kbds?William Carroll1-8/+0
In another refactor, I'd like to move all ad-hoc keybindings out of individual modules and into keybindings.el.
2020-08-20 Centralize <SPC> in normal mode KBDsWilliam Carroll2-45/+28
Merging keybinding and wpc-keybindings step-by-step...
2020-08-20 Delete unused KBDsWilliam Carroll1-9/+0
Now that everything is in my monorepo, it's easy for me to use <SPC>jd to search for these files.
2020-08-20 Drop support for dir-locals.nix, <nixpkgs>, etc.William Carroll2-4/+5
In the spirit of Marie Kondo, I'm tidying up! TL;DR: - Prefer .envrc `use_nix` and delete all dir-locals.nix files - Remove ~all references to <nixpkgs>, <unstable>, <depot> and prefer referencing each with briefcase.third_party.{pkgs,unstable,depot} - Delete nixBufferFromShell function since I was only using that in dir-locals.nix files
2020-08-20 List directories first in dired viewWilliam Carroll1-0/+1
Ideally I'd use exa insted of ls, but I cannot seem to support that yet.
2020-08-20 Drop support for wpc/find-fileWilliam Carroll2-9/+1
Cleaning things up...
2020-08-13 Prefer project.el to projectileWilliam Carroll2-1/+42
Today @tazjin told me about Emacs's built-in project.el library, which he recommended that I extend to support monorepo-specific tooling. It worked like a charm! Now when I press "<leader>f", it will resolve to either the nearest file named default.nix or directory name .git.
2020-08-13 Set Emacs current-project to ~/briefcaseWilliam Carroll1-1/+1
I don't rely on this often, so it's best to leave it as the top-level directory for briefcase.
2020-07-17 Remove week / 52 indicatorWilliam Carroll1-1/+1
This is taking up too much space.
2020-07-06 Misc Emacs improvementsWilliam Carroll2-0/+6
I stole these bad-boys from @tazjin's config.
2020-07-06 Prefer telephone-line to doom-modelineWilliam Carroll3-4/+67
After growing frustrated with doom-modeline's compatibility with my EXWM setup, I decided to borrow @tazjin's setup, which I find to be much more appealing.
2020-06-16 Use ivy-helpers/list-external-commandsWilliam Carroll1-1/+1
Without the ivy-helpers/ namespace, I believe this code is buggy.
2020-06-16 Prefer Solarized Light themeWilliam Carroll1-1/+1
I've said it once, and I'll say it again: my preferences often change.
2020-06-16 Support additional KBDs for ClojureWilliam Carroll1-0/+8
Define KBDs in clojure-mode-map that resemble my common-lisp and elisp KBDs.
2020-06-16 Use dot-time format for modeline timestampWilliam Carroll1-4/+12
My current understanding of how computers deal with time: - Modelling time is easy: use the number of seconds that have elapsed since the Unix epoch. - Display time is complicated. Which timezone should we use? Which format string?
2020-06-16 Prefer smaller default font size for laptopWilliam Carroll1-1/+1
I'll be working without an external monitor for the next few months, so I prefer this smaller size.
2020-04-11 Support elm-mode for EmacsWilliam Carroll2-0/+4
Instead of (ab)using haskell-mode, support elm-mode. TODO: Support elm-format on buffer save
2020-04-11 Drop support for Haskell glyphsWilliam Carroll1-5/+0
I think that glyphs look nice, but they subtley confuse Emacs's UI. In the case of a two-character glyph condensing into one character's width, the fill-width indicator -- correctly -- highlights the 81st character as red, but it looks like it's erroneously highlighting the 80th. Also when I want to create an anonymous function I type (), which condenses into the unit character, and it's difficult to delete either the opening or the closing parenthesis. Overall I think glyphs are cute, but they're not worth the trouble.
2020-04-06 Debug unresponsive keyboardWilliam Carroll1-6/+0
After binary searching through my git history to restore my keyboard functionality, I discovered the issue: I deleted the "Terminal" workspace, but I did not remove the call to `(exwm/switch "Terminal")`, which silently prevented EXWM from initializing. I wish errors like this were noisier.
2020-04-05 Don't depend on google-stuff.elWilliam Carroll1-3/+0
I created a google-stuff.el module months ago, but I have not needed to use it much. Removing the google-stuff.el module and all of my dependencies on it.
2020-04-05 Drop support for ynab.elWilliam Carroll1-56/+0
YNAB is short for YouNeedABudget.com. I wrote this code before I started the //monzo_ynab project.
2020-04-05 Drop support for wpc-terminalWilliam Carroll3-72/+0
As I mentioned in the previous commit, I now use vterm.el as my primary terminal. I wrote most of this Elisp when I first started using Emacs. I know longer need it.
2020-04-05 Drop support for terminator.elWilliam Carroll2-1888/+0
Before I switched to vterm.el, I used alacritty as my primary terminal. I could not install alacritty on gLinux, so I switched to terminator. When I was ricing my machine, I wanted my Emacs theme to change my terminator theme. I never finished that project, and it is quite dusty now.
2020-04-05 Remove wpc-docker.elWilliam Carroll2-17/+0
I have not needed this configuration in over a year.
2020-04-05 Remove dotfiles.elWilliam Carroll3-59/+1
This module is a bit stale.
2020-04-05 Tidy //emacsWilliam Carroll2-5/+13
TL;DR: - Add README.md that includes instructions on how to install my Emacs - Delete unused Makefile
2020-04-04 Move Emacs documents to //emacsWilliam Carroll3-0/+89
These documents outline some of my Elisp conventions and ideas. As such, I think //emacs should host them.
2020-04-03 Drop support for Terminal workspaceWilliam Carroll1-3/+0
I created the Terminal workspace before I wrote a function for finding/creating vterm instances. I now use the latter almost exclusively.
2020-04-02 Remove :index field from exwm/named-workspace structWilliam Carroll1-75/+14
I can compute the index use dash.el's -elem-index. I'm also removing some unused EXWM workspaces.
2020-04-02 Tidy window-manager.elWilliam Carroll1-47/+3
Remove stale code and stale comments.
2020-04-02 Refactor opening X applications from EmacsWilliam Carroll2-23/+35
I borrowed heavily from Vincent's depot.
2020-04-02 Build either emacs.{glinux,nixos} depending on my current deviceWilliam Carroll1-7/+12
`M-x nix/rebuild-emacs` will build either emacs.glinux or emacs.nixos depending on whether I'm using a work device or a personal device.
2020-04-02 Define device/corporate?William Carroll1-0/+4
Write a predicate function for checking whether or not I'm on a corporate device.
2020-04-02 Tidy up emacs/default.nixWilliam Carroll1-33/+13
When I run `nix-env -f '<briefcase>' -iA emacs`, Nix builds a derivation of wpcarros-emacs using the path to the Emacs derivation. This doesn't work well on glinux and causes strange behavior. For instance, Chrome crashes when it tries to browse for files. Building with `nix-env -iA emacs.glinux` fixes this and other problems. Miscellaneous other changes: - Remove unnecessary fix-point recursion - Drop support for unused dottime.el - Remove unused overrideEmacs - Remove unused withLocalConfig - Support emacs.glinux and emacs.nixos alternative derivations
2020-04-02 Set Gruvbox theme as my default Emacs themeWilliam Carroll1-1/+1
I want to use a dark theme for awhile.
2020-04-02 Tidy up themes.elWilliam Carroll1-87/+34
TL;DR: - Prune unused themes - Prefer "JetBrainsMono" font for all themes - Remove TODOs that I've either supported or that I'm uninterested in supporting
2020-04-02 Increase default font size for laptopWilliam Carroll1-1/+1
I'm working off of my laptop but I'm using my 4k monitor. The expression that sets `fonts/size` could be more sophisticated and detect this, but for now, I'm just bumping up the size.