complete-computing-environment/emacs-helper-scripts.org

1.4 KiB

Emacs Helper Scripts

When using XMonad it's really easy to set up custom global keybindings declaratively.

home-manager lets me write easy little functions to do this. Previously I had them stuffed away in my report on krohnkite, but they should be hoisted out; I don't define them in the XMonad module because i used these in other tiling WMs too and sometimes in krunner…

{ pkgs, ... }:

{
  home.packages = [
    (pkgs.writeScriptBin "meta-x" ''
      #!${pkgs.stdenv.shell}
      emacsclient -c --eval "(execute-extended-command nil)"
      '')
    (pkgs.writeScriptBin "org-journal" ''
      #!${pkgs.stdenv.shell}
      emacsclient -c --eval "(cce/open-journal)"
      '')
    (pkgs.writeScriptBin "org-agenda" ''
      #!${pkgs.stdenv.shell}
      emacsclient -c --eval "(cce/org-agenda)"
      '')
    (pkgs.writeScriptBin "org-todos" ''
      #!${pkgs.stdenv.shell}
      emacsclient -c --eval "(cce/org-agenda t)"
      '')
    (pkgs.writeScriptBin "mastodon-el" ''
      #!${pkgs.stdenv.shell}
      emacsclient -c --eval "(cce/my-mastodon.el-buffers)"
      '')
  ];
}