about summary refs log tree commit diff
path: root/emacs
AgeCommit message (Collapse)AuthorFilesLines
2021-10-06 Update displays.elWilliam Carroll1-11/+2
Today is my first day back in the office at Google (this time at MP2 in Sunnyvale)! As such, I have a new desk, new monitors, so expect some changes to my configuration until I stabilize everything.
2021-03-23 Refactor window-manager-logoutWilliam Carroll1-13/+23
`sudo systemctl suspend` wasn't working because it required a secure password prompt to read the user's password for `sudo`. The recommended way to call `shell-command` with a `sudo` command (from what I read online) is to set `default-directory` to `/sudo::` before calling `shell-command`. This works just fine, so I refactored the function, `window-manager-logout`.
2021-03-02 Uninstall telegram-desktopWilliam Carroll1-1/+0
I'm spending way too much time on Telegram (both on my phone and on my computer). I'm going to remove it from my computer, so that I can better focus.
2020-11-12 Sort Emacs depsWilliam Carroll1-6/+6
Group Emacs dependencies like ivy together.
2020-10-10 Add elm-format-on-save-mode to elm-mode-hookWilliam Carroll1-1/+3
Instead of calling this manually.
2020-10-04 Remove evil dependency from window-manager.elWilliam Carroll1-2/+0
When `keybindings` requires `window-manager`, the `evil-want-integration` warning emerges. If I remove the `evil` dependency from `window-manager`, it resolves the issue.
2020-10-04 Enable spell-checking during magit commitWilliam Carroll1-1/+4
This is another (overdue) change about which I'm quite excited. Add spell-checking to my Git commit buffers. :)
2020-10-04 Extend "l" -> "L" KBD remapping for magit-{log,revision}-mode-mapWilliam Carroll1-1/+3
Thankfully `general` made this change super easy and maintainable to support.
2020-10-04 Support display-arrangement macroWilliam Carroll1-36/+66
I was tired of using `arandr` to manually configure my monitor positions, so I encoded the settings in Elisp in the `display.el` module. TL;DR: - Drop support for `position` kwarg in `display-register` macro - Support `coords` kwarg in `display-register`. - `defconst` the `xrandr` arguments and command in `display-register`. - Define `display-arrangement` macro that consumes the `xrandr` arguments that `display-register` defines to create an interactive function, `display-arrange-<NAME>`, which -- when invoked -- runs one xrandr command to configure a display "arrangement".
2020-10-04 Disable company-mode during git commitsWilliam Carroll1-0/+1
Why didn't I configure this earlier? For years, my workflow involved checking a buffer's major mode and then extending that major-mode's hook. Confusingly (to me), the `major-mode` for `COMMIT_EDITMSG` is `text-mode`, and I didn't want to disable `company-mode` for *all* `text-mode` buffers, which is what the following would have done: ```elisp (add-hook 'text-mode-hook (lambda () (company-mode -1)) ``` Thankfully I recently invested some time into learning more about Emacs's offline help system, `Info-mode`, so -- putting that knowledge to work -- I ran `info-apropos` and searched "magit commit". After ~5 minutes of reading I knew the recommended way of configuring this was to modify `git-commit-setup-hook`. How validating!
2020-10-04 Move KBDs from window-manager.el to keybindings.elWilliam Carroll2-55/+37
Assuming (hoping) that this doesn't break anything.
2020-10-04 Debug Emacs initializationWilliam Carroll1-1/+1
Since "Briefcase" doesn't exist, `window-manager--switch` fails and so does `exwm-init-hook`. It'd be nice to catch these errors earlier...
2020-10-03 Bind "g SPC" to #'Info-scroll-upWilliam Carroll1-0/+1
I'm using the "g <char>" pattern that evil-collection uses, which I think is okay.
2020-10-03 Alter doom-acario-dark's font for commentsWilliam Carroll1-1/+6
Thanks to my newly acquired `Info-mode` navigation skills, I quickly learned how to alter fonts in Emacs!
2020-10-03 Define KBDs for ibufferWilliam Carroll1-0/+9
I'd like to start using ibuffer more, so I'm making it a more hospitable place by defining useful KBDs.
2020-10-03 Define KBDs for Info-modeWilliam Carroll1-1/+16
I took the Info-mode tutorial (finally) and I found some things from evil-collection that I liked, other things that I didn't like.
2020-10-03 Set ibuffer's default sort to major-modeWilliam Carroll1-0/+3
I find this a more intuitive default.
2020-10-03 Define window-manager-swap-workspacesWilliam Carroll1-0/+16
This is a wrapper around the existing `exwm-workspace-swap` except it's aware of my `window-manager-workspace` struct.
2020-10-03 Define fn for outputting the current workspace's labelWilliam Carroll1-0/+6
This is a useful helper fn, and hopefully something I'll support in my mode line soon.
2020-10-03 Rename workspacesWilliam Carroll1-2/+2
Prefer "Web Browsing" and "Coding".
2020-10-03 Ensure "RET" follows links in Info-modeWilliam Carroll1-0/+5
Shouldn't this be handled by evil-collection?
2020-10-02 Prefer doom-acario-dark themeWilliam Carroll1-1/+1
I recently looked at the updated Doom themes, and the screenshot for this one looked appealing. I'm going to give it a try.
2020-09-29 Create a workspace for logsWilliam Carroll1-0/+4
Now that I have a vertical monitor, I'd like to use it for terminals and logs.
2020-09-29 Extend named-workspace struct to include display informationWilliam Carroll1-15/+14
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.
2020-09-29 Debug failed Emacs initializationWilliam Carroll2-4/+9
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.
2020-09-28 Support display-4k-vertical in exwm-randr-workspace-monitor-plistWilliam Carroll1-2/+3
EXWM needs to know about my newly defined monitor.
2020-09-28 Define display-4k-verticalWilliam Carroll2-71/+78
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.
2020-09-28 Debug dottime in modelineWilliam Carroll1-4/+5
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.
2020-09-27 Reuse helpful-mode buffers when traversing documentationWilliam Carroll1-0/+8
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
2020-09-08 Define KBD gu to browse-url-at-pointWilliam Carroll1-0/+1
This is handy!
2020-09-08 Prefer .ssh/config instead of Tramp's defaultsWilliam Carroll1-0/+5
Instruct Tramp to use my SSH settings in .ssh/config.
2020-09-07 Install additional KBDs for bookmark.elWilliam Carroll1-1/+3
Generate KBDs to call `find-file` on the bookmark.
2020-09-07 Drop glinux attribute from Emacs derivationWilliam Carroll1-7/+0
My google-briefcase has subsumed this responsibility.
2020-09-07 Remove Emacs config for Google languagesWilliam Carroll2-4/+0
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.
2020-09-07 Depend on fzfWilliam Carroll1-0/+1
Add fzf to PATH.
2020-09-07 Define KBDs for quickly visiting BRIEFCASE magit-statusWilliam Carroll1-1/+5
I'd rather be able to jump straight here instead of visiting a file or directory first.
2020-09-07 Drop support for Nix home-managerWilliam Carroll2-10/+10
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.
2020-09-07 Add nix to Emacs's packagesWilliam Carroll1-0/+1
The code in `wpc-nix.el` relies on `nix-env` being available on $PATH.
2020-09-07 Expose path to GOOGLE_BRIEFCASE as env varWilliam Carroll1-0/+1
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.
2020-09-07 Display all byte-compile-warningsWilliam Carroll1-6/+0
I've reconsidered; setting this to just '(cl-functions) is not what I want.
2020-09-07 defgroup for timestring.elWilliam Carroll1-2/+7
Trying to be more idiomatic.
2020-09-07 Increase the default size of my workstation fontWilliam Carroll1-1/+1
Consider moving some of this logic into my work-specific configuration.
2020-09-07 Debug defensive call to (server-start)William Carroll1-1/+1
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.
2020-09-07 Add direnv to Emacs dependenciesWilliam Carroll1-0/+1
direnv.el needs direnv available on $PATH.
2020-09-07 Conditionally load-themeWilliam Carroll1-3/+6
When the `window-system` is set, use `solarized-light`. When it's not, use `wombat`.
2020-09-07 Conditionally start Emacs serverWilliam Carroll1-1/+2
Only attempt to start the Emacs server if there isn't already one running.
2020-09-07 Vertically align search results conditionallyWilliam Carroll1-10/+13
Only when `window-system` is set.
2020-09-07 Install keybindings for bookmark.elWilliam Carroll1-0/+4
I would like to restore these KBDs.
2020-09-07 Suppress cl deprecation warnings during initializationWilliam Carroll1-0/+6
See the URL I linked to for more information.
2020-09-07 Drop support for building emacs.glinuxWilliam Carroll1-3/+2
I'm defining a fork of this function in my work configuration, so I longer want this here.