about summary refs log tree commit diff
path: root/emacs
AgeCommit message (Collapse)AuthorFilesLines
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.
2020-04-01 Drop support for org-captureWilliam Carroll1-33/+3
I don't use org-capture, and I am not currently interested in developing that habit.
2020-04-01 Prefer briefcase/org to Dropbox/orgWilliam Carroll2-2/+3
I would like to version-control most but not all of my org files.
2020-04-01 Delete dusty Elisp codeWilliam Carroll2-421/+0
When I first switched to EXWM, I wrote a lot of Elisp. I think I was mostly excited about having a monorepo and, as I had a backlog of ideas that I wanted to implement, I ended up writing many halfly baked ideas in Elisp. These are mostly sketches.
2020-03-27 Ensure Emacs prettier hook activatesWilliam Carroll1-2/+0
Problem: prettier-js waits for rjsx-mode. rjsx-mode only runs on .js files. As such, the hook that installs prettier-js-mode for *all* of my frontend hooks, which includes more than just js files, does not install until a javascript file is opened. Solution: Do not conditionally load prettier-js. Bonus: Remove the .js mode from rjsx.
2020-03-26 Change theme to doom-oneWilliam Carroll1-1/+1
TL;DR - Prefer doom-one theme to solarized light - Prefer colorscheme/set to themes/set
2020-03-20 Change the value of constants/current-projectWilliam Carroll1-1/+1
Yesterday evening, I moved the blog directory to website/blog; I forgot to update this value.
2020-03-20 Unbind <SPC> in evil's motion mapWilliam Carroll1-1/+1
By default this just advances the point one character, which I don't use nor want especially because my leader key is the space key.
2020-03-20 Support KBD for toggling linum-modeWilliam Carroll1-2/+1
I would like to restore the good practice of jumping precisely to line numbers within buffers.
2020-03-16 Remove setting for enabling both laptop and external monitorWilliam Carroll1-1/+1
Currently I prefer working with one screen at a time, so I'm preferring to toggle between external monitor and laptop monitor.
2020-03-10 Restore Emacs serverWilliam Carroll1-0/+3
I think I removed the `(server-start)` call when I was debugging some EXWM issues. I have stabilized my configuration considerably since then, and I'd like to use the Emacs server.
2020-03-06 Include notmuch as an Emacs dependencyWilliam Carroll1-0/+1
`(require 'notmuch)` in `email.el` broke my Emacs initialization. This should fix that.
2020-03-06 Include NIX_PATH settings in nix/rebuild-emacs functionWilliam Carroll1-2/+5
I'm currently setting NIX_PATH in ~/briefcase/shell.nix. This means when I call `nix/rebuild-emacs` from a buffer that is inside the briefcase directory, the command succeeds because NIX_PATH is properly defined. When I call `nix/rebuild-emacs` from any other location it fails. I'm hard-coding the NIX_PATH in this command so that I can call `nix/rebuild-emacs` from any buffer that is currently active.
2020-03-06 Support nix/home-manager-switchWilliam Carroll1-0/+10
As a part of my plan to reduce my dependence on the shell, I defined an Elisp function to call `home-manager switch` from `M-x`.
2020-03-06 Add programs to home-managerWilliam Carroll1-10/+0
Support commonly used programs like fd, exa, bat, etc. For now, I'm unsure how to manage the programs in my emacs/default.nix with my home.nix. I'll wait until I have a stronger opinion to handle this.
2020-03-04 Consume top-level emacs attributeWilliam Carroll1-3/+4
Refactor `nix/rebuild-emacs` to consume newly defined top-level emacs attribute.
2020-03-01 Use doom-modelineWilliam Carroll2-0/+5
Cleaning up my modeline by using the beautiful doom-modeline package.
2020-03-01 Remove default values for Nix expression parametersWilliam Carroll1-6/+2
I'm not sure if this commit breaks everything in my monorepo. I think it will. Why am I doing this? Perhaps it's a bad idea. I don't fully understand how readTree works. My ignorance is costing me hours of time spent debugging. In an effort to better understand readTree, I'm removing the default values for my Nix expression parameters, which I believe have preventing errors from surfacing.
2020-02-22 Converge naming of Acer laptop to "socrates"William Carroll1-1/+1
Prefer "socrates" to "flattop".
2020-02-20 Support ssh/{sudo-buffer,cd-home}William Carroll1-3/+17
- Support command to open a dired buffer with wpcarro's $HOME directory for any host defined in ssh/hosts. - Support opening the current buffer with sudo privileges.
2020-02-18 Configure ssh preferencesWilliam Carroll2-3/+15
Every Tuesday I work from Google's 6PS office instead of BEL. I work from my laptop, which often requires that I ssh into the desktop work station in BEL. I have settled on a locally optimal workflow that I'd like to improve. To help seek higher ground, I'm planning on using ssh.el to configure tramp and define utility functions to lower my cost of exploring new workflows. - Defines a function, `ssh/desktop-cd-home` that helps me quickly open a dired buffer for my work station's home directory. - Documents some variables that I set weeks ago. - Requires ssh.el in init.el.
2020-02-18 Further configure notmuchWilliam Carroll1-0/+32
Until now my notmuch is usable but not almost always pleasurably so. For example, when I reply to messages, notmuch warns that "Insert failed:"; when I check Gmail, the reply sent... strange. After consulting with a fellow notmuch user and Emacs disciple, tazjin@, I borrowed some of his notmuch configuration. - notmuch is no longer warning about replies - Replies do not include noisy email signatures - I have an Emacs User-Agent header in my outgoing mail - All of this and more...
2020-02-18 Define KBD for find-file-at-point (i.e. ffap)William Carroll1-0/+5
I'm attempting to incorporate the beloved find-file-at-point function into my workflow.
2020-02-18 Further specify saved searches for tagsWilliam Carroll1-3/+3
Add tag:unread to: - direct - broadcast - systems Additionally: I added "and not tag:sent" for direct because oftentimes I send myself mail. Without that condition, my sent mail shows up in direct.
2020-02-17 Require keybindings.el after wpc-keybindings.elWilliam Carroll1-1/+1
keybindings.el calls (require 'evil-ex), which I introduced in this commit... 0456a1c4b4405da2681296b2250681454637d80f ...calling (require 'evil-ex) loads evil. When evil is loaded before evil-want-integration is set to nil, evil-collection writes to *Warnings* when Emacs initializes, which I find noisy. This commit ensures the evil-want-integration is set to nil before evil is loaded, which appeases evil-collection and thus removes the warning message. Bonus: If you git checkout the previous commit, and attempt to run the KBDs... - `SPC g s`: magit-status - `s h`: evil-window-vsplit ...from a buffer whose major-mode is dired-mode, you should notice that the above functions won't execute. Strangely though, if you look at this commit... 37f8ca04f29ea9bf988b2277c42f3e264d7a89e1 ...I fixed these issues. Well I introduced a regression when I added 0456a1c. My current guess is that when evil-collection complains about evil-want-integration, it is breaking the evaluation sequence of my init.el file. wpc-dired.el is downstream from wpc-keybindings.el, which requires evil-collection. Perhaps no modules required after wpc-keybindings.el are evaluated after evil-collection warns about evil-want-integration. Even if that assumption is wrong, what I do know is that this commit fixes the evil-collection warning and restores the KBDs for dired-mode-map. Here's to feeding two birds with one scone!
2020-02-17 Drop support for comptonWilliam Carroll1-2/+1
I'm finding myself running `pkill compton` offer. In the spirit of slimming down my configuration, I'm dropping support for compton.
2020-02-16 Support additional notmuch saved queriesWilliam Carroll1-9/+10
Today I setup declarative gmail filters using some Google internal tooling. I'm now adding labels to messages from Critique, Sphinx, Ganpati, "The Daily Insider", messages sent directly to me, and more. These labels are applied server-side. On the notmuch, client-side, I'm support saved queries for these newly created gmail labels.
2020-02-16 Support KBDs for labelling emailsWilliam Carroll1-1/+16
I can already tag emails with `+` and `-`. Here I'm defining KBDs for moving messages from my inbox into: action, review, and waiting. I'm also mutually excluding messages in action, review, and waiting from inbox and vice versa. I'm also supporting a "muted" tag for now; I'm still learning how to use notmuch with email threads, but I'm hoping the "muted" tag will prevent future messages in a thread from arriving in my inbox.
2020-02-14 Prefer newest-to-oldest sortingWilliam Carroll1-0/+3
The default sorting order of results from notmuch.el are in oldest-to-newest. This prefers the opposite.
2020-02-14 Define notmuch KBDsWilliam Carroll1-0/+44
Until I have more opinions about my workflow with notmuch, I will redefine the KBDs from Gmail that I'm comfortable with. While not many KBDs are defined here, evil-collection defines dozens, many of which I find reasonable; those that I disagree with, I've unbound in this commit. Composing emails in notmuch feels similar to writing a commit message with magit. I want to be able to type :x or :wq, but these commands don't DWIM. For magit, I'd like that behavior to be the same as `C-c C-c`; not surprisingly, for notmuch, I'd like the same. I've bound :x to do this for notmuch. I'd like to define a macro that can easily define buffer-local evil-ex commands for particular modes. This should lower the cost of defining evil-ex commands and hopefully convince me to support some of this desired behavior.
2020-02-14 Configure saved searches for notmuchWilliam Carroll1-1/+25
Mimmicking the "action", "review", and "waiting" labels that I had in Gmail using the equivalent labels as tags in notmuch.
2020-02-14 Support list/xs-distinct-by?William Carroll1-0/+5
Supporting a predicate to check that all elements in a list are distinct after applying a transformation function to them.
2020-02-12 Disable auto pairing parens, brackets, quotesWilliam Carroll1-3/+0
I don't see much value in this tool for my workflow.
2020-02-11 Support cycling through display configurationsWilliam Carroll2-18/+31
Today when I opened my laptop, I wasn't sure if it was powered off or on because the display was blank. Thankfully the volume was muted and the LED indicator was on, which informed me that the laptop was powered on. This saved me from unnecessarily rebooting. What happened was that last night I was working from home and using my external monitor. Usually I enable my external display and disable my laptop display. But when I left for work this morning, I unplugged the HDMI cable from my laptop without disabling the external display or enabling the laptop display. I noticed a XF86 button on my laptop entitled XF86Display. I figured that this could be a nice place to bind a key to toggle my laptop display on or off. At the last minute, I had the idea to just cycle through all possible display configurations that I use; there are only three anyways. When dealing with more than two states, I realized I should use a cycle to model the configuration states. Now I'm thinking that I should be using cycles to model toggles as well - instead of just using a top-level variable that I `setq` over. I haven't refactored existing toggles to be cycles, but I am excited about this new keybinding. This commit additionally: - Moves keybindings out of display.el and into keybindings.el - Conditionally sets KBDs if using work laptop