Stumpwm, fix goroot, emacs tweaks
This commit is contained in:
parent
901d74e8b2
commit
4c18be1f59
5 changed files with 138 additions and 28 deletions
|
|
@ -1,4 +1,5 @@
|
|||
# This file contains fish universal variable definitions.
|
||||
# VERSION: 3.0
|
||||
SETUVAR --export GOROOT:/usr/lib64/go1\x2e26\x2e5/go
|
||||
SETUVAR __fish_initialized:4300
|
||||
SETUVAR fish_user_paths:/home/green/\x2ecargo/bin\x1e/home/green/\x2elocal/bin\x1e/home/green/\x2elocal/share/npm/bin
|
||||
SETUVAR fish_user_paths:/usr/lib64/go1\x2e26\x2e5/go/bin\x1e/home/green/\x2ecargo/bin\x1e/home/green/\x2elocal/bin\x1e/home/green/\x2elocal/share/npm/bin
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
# Start Emacs daemon if not already running (works with or without X)
|
||||
if ! emacsclient -e nil 2>/dev/null; then
|
||||
emacs --daemon 2>/dev/null &
|
||||
fi
|
||||
|
||||
export EDITOR=vim
|
||||
export BROWSER=nyxt
|
||||
export PAGER=bat
|
||||
|
|
|
|||
71
config/stumpwm/config.lisp
Normal file
71
config/stumpwm/config.lisp
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
(in-package :stumpwm)
|
||||
|
||||
;; change the prefix key to something else
|
||||
(set-prefix-key (kbd "C-z"))
|
||||
|
||||
;; prompt the user for an interactive command. The first arg is an
|
||||
;; optional initial contents.
|
||||
(defcommand colon1 (&optional (initial "")) (:rest)
|
||||
(let ((cmd (read-one-line (current-screen) ": " :initial-input initial)))
|
||||
(when cmd
|
||||
(eval-command cmd t))))
|
||||
|
||||
;; Read some doc
|
||||
(define-key *root-map* (kbd "d") "exec gv")
|
||||
;; Browse somewhere
|
||||
(define-key *root-map* (kbd "b") "colon1 exec firefox http://www.")
|
||||
;; Ssh somewhere
|
||||
(define-key *root-map* (kbd "C-s") "colon1 exec xterm -e ssh ")
|
||||
;; Lock screen
|
||||
(define-key *root-map* (kbd "C-l") "exec xlock")
|
||||
|
||||
;; Web jump (works for DuckDuckGo and Imdb)
|
||||
(defmacro make-web-jump (name prefix)
|
||||
`(defcommand ,(intern name) (search) ((:rest ,(concatenate 'string name " search: ")))
|
||||
(nsubstitute #\+ #\Space search)
|
||||
(run-shell-command (concatenate 'string ,prefix search))))
|
||||
|
||||
(make-web-jump "duckduckgo" "firefox https://duckduckgo.com/?q=")
|
||||
(make-web-jump "imdb" "firefox http://www.imdb.com/find?q=")
|
||||
|
||||
;; C-t M-s is a terrble binding, but you get the idea.
|
||||
(define-key *root-map* (kbd "M-s") "duckduckgo")
|
||||
(define-key *root-map* (kbd "i") "imdb")
|
||||
|
||||
;; Message window font
|
||||
(set-font "-xos4-terminus-medium-r-normal--14-140-72-72-c-80-iso8859-15")
|
||||
|
||||
;;; Define window placement policy...
|
||||
|
||||
;; Clear rules
|
||||
(clear-window-placement-rules)
|
||||
|
||||
;; Last rule to match takes precedence!
|
||||
;; TIP: if the argument to :title or :role begins with an ellipsis, a substring
|
||||
;; match is performed.
|
||||
;; TIP: if the :create flag is set then a missing group will be created and
|
||||
;; restored from *data-dir*/create file.
|
||||
;; TIP: if the :restore flag is set then group dump is restored even for an
|
||||
;; existing group using *data-dir*/restore file.
|
||||
(define-frame-preference "Default"
|
||||
;; frame raise lock (lock AND raise == jumpto)
|
||||
(0 t nil :class "Konqueror" :role "...konqueror-mainwindow")
|
||||
(1 t nil :class "XTerm"))
|
||||
|
||||
(define-frame-preference "Ardour"
|
||||
(0 t t :instance "ardour_editor" :type :normal)
|
||||
(0 t t :title "Ardour - Session Control")
|
||||
(0 nil nil :class "XTerm")
|
||||
(1 t nil :type :normal)
|
||||
(1 t t :instance "ardour_mixer")
|
||||
(2 t t :instance "jvmetro")
|
||||
(1 t t :instance "qjackctl")
|
||||
(3 t t :instance "qjackctl" :role "qjackctlMainForm"))
|
||||
|
||||
(define-frame-preference "Shareland"
|
||||
(0 t nil :class "XTerm")
|
||||
(1 nil t :class "aMule"))
|
||||
|
||||
(define-frame-preference "Emacs"
|
||||
(1 t t :restore "emacs-editing-dump" :title "...xdvi")
|
||||
(0 t t :create "emacs-dump" :class "Emacs"))
|
||||
|
|
@ -221,8 +221,23 @@ Setting this in the :init of evil doesn't work for some reason. It has to be ear
|
|||
(use-package solaire-mode
|
||||
:config (solaire-global-mode +1))
|
||||
|
||||
(use-package simple-modeline
|
||||
:hook (after-init . simple-modeline-mode))
|
||||
(use-package nerd-icons
|
||||
:ensure t
|
||||
:config
|
||||
(unless (find-font (font-spec :name "Symbols Nerd Font"))
|
||||
(nerd-icons-install-fonts t)))
|
||||
|
||||
(use-package doom-modeline
|
||||
:hook (after-init . doom-modeline-mode)
|
||||
:config
|
||||
(setq doom-modeline-minor-modes t
|
||||
doom-modeline-height 24
|
||||
nerd-icons-font-family "Symbols Nerd Font Mono")
|
||||
(set-face-attribute 'mode-line nil :height 0.9)
|
||||
(set-face-attribute 'mode-line-inactive nil :height 0.9))
|
||||
|
||||
(use-package minions
|
||||
:config (minions-mode 1))
|
||||
|
||||
;; turn off number mode in some contexts
|
||||
(dolist (mode
|
||||
|
|
@ -485,10 +500,14 @@ Setting this in the :init of evil doesn't work for some reason. It has to be ear
|
|||
** Which-key
|
||||
#+begin_src emacs-lisp
|
||||
(use-package which-key
|
||||
:ensure nil
|
||||
:init (which-key-mode)
|
||||
:diminish which-key-mode
|
||||
:config
|
||||
(setq which-key-idle-delay 0.3))
|
||||
(setq which-key-idle-delay 0.3
|
||||
which-key-add-column-padding 1
|
||||
which-key-max-description-length 32
|
||||
which-key-min-column-description-width 20))
|
||||
#+end_src
|
||||
** General
|
||||
I know these could be bound on a per-package basis, but since this is my primary interface with emacs I'd rather keep all keymaps in one place, both for reference and to discourage myself from organizing my top-level bindings on a per-plugin basis rather than keeping the focus on functionality.
|
||||
|
|
@ -1098,7 +1117,7 @@ Idk I think this came from the vertico readme
|
|||
;; strategy, if you want to see the documentation from multiple providers.
|
||||
;; (add-hook 'eldoc-documentation-functions #'embark-eldoc-first-target)
|
||||
(define-key evil-normal-state-map (kbd "C-.") 'embark-act)
|
||||
(evil-define-key 'normal evil-normal-state-map (kbd "C-.") embark-act)
|
||||
(evil-define-key 'normal evil-normal-state-map (kbd "C-.") 'embark-act)
|
||||
|
||||
|
||||
:config
|
||||
|
|
@ -1205,6 +1224,30 @@ Idk I think this came from the vertico readme
|
|||
All lisp-family languages
|
||||
#+begin_src emacs-lisp
|
||||
; Required for some reason
|
||||
;; symex's deps are all countvajhula packages not in any recipe
|
||||
;; repo. Pre-register all recipes so straight can resolve
|
||||
;; transitive deps regardless of build order.
|
||||
(dolist (recipe '((pubsub :host github :repo "countvajhula/pubsub")
|
||||
(virtual-ring :host github :repo "countvajhula/virtual-ring")
|
||||
(mantra :host github :repo "countvajhula/mantra")
|
||||
(repeat-ring :host github :repo "countvajhula/repeat-ring")
|
||||
(lithium :host github :repo "countvajhula/lithium")))
|
||||
(straight-register-package recipe))
|
||||
|
||||
(use-package pubsub :straight (pubsub :host github :repo "countvajhula/pubsub"))
|
||||
(use-package virtual-ring :straight (virtual-ring :host github :repo "countvajhula/virtual-ring"))
|
||||
(use-package mantra :straight (mantra :host github :repo "countvajhula/mantra"))
|
||||
(use-package repeat-ring :straight (repeat-ring :host github :repo "countvajhula/repeat-ring"))
|
||||
(use-package lithium :straight (lithium :host github :repo "countvajhula/lithium"))
|
||||
|
||||
;; rigpa and symex-rigpa disabled for now — rigpa pulls in a
|
||||
;; newer transient that needs cond-let which straight can't resolve
|
||||
;; (use-package rigpa
|
||||
;; :straight
|
||||
;; (rigpa
|
||||
;; :host github
|
||||
;; :repo "countvajhula/rigpa"))
|
||||
|
||||
(use-package symex-core
|
||||
:straight
|
||||
(symex-core
|
||||
|
|
@ -1249,29 +1292,15 @@ All lisp-family languages
|
|||
#'geiser-edit-symbol-at-point)
|
||||
(symex-ide-mode 1))
|
||||
|
||||
(use-package lithium
|
||||
:straight t
|
||||
:config
|
||||
(lithium-mode 1))
|
||||
|
||||
(use-package rigpa
|
||||
:straight
|
||||
(rigpa
|
||||
:type git
|
||||
:host github
|
||||
:repo "countvajhula/rigpa")
|
||||
:config
|
||||
(rigpa-mode 1))
|
||||
|
||||
(use-package symex-rigpa
|
||||
:after (symex rigpa symex-evil)
|
||||
:straight
|
||||
(symex-rigpa
|
||||
:host github
|
||||
:repo "drym-org/symex.el"
|
||||
:files ("symex-rigpa/symex*.el"))
|
||||
:config
|
||||
(symex-rigpa-mode 1))
|
||||
;; (use-package symex-rigpa
|
||||
;; :after (symex rigpa symex-evil)
|
||||
;; :straight
|
||||
;; (symex-rigpa
|
||||
;; :host github
|
||||
;; :repo "drym-org/symex.el"
|
||||
;; :files ("symex-rigpa/symex*.el"))
|
||||
;; :config
|
||||
;; (symex-rigpa-mode 1))
|
||||
|
||||
#+end_src
|
||||
*** Scheme
|
||||
|
|
|
|||
4
link.sh
4
link.sh
|
|
@ -37,6 +37,10 @@ backup_and_link "$DOTFILES/config/yazi" "$HOME/.config/yazi"
|
|||
backup_and_link "$DOTFILES/config/rofi" "$HOME/.config/rofi"
|
||||
backup_and_link "$DOTFILES/config/zathura" "$HOME/.config/zathura"
|
||||
|
||||
# StumpWM: link individual file (preserve ~/.config/stumpwm for live data like groups, etc.)
|
||||
mkdir -p "$HOME/.config/stumpwm"
|
||||
backup_and_link "$DOTFILES/config/stumpwm/config.lisp" "$HOME/.config/stumpwm/config"
|
||||
|
||||
# GPG: link individual files to preserve ~/.gnupg's required 700 permissions
|
||||
mkdir -p "$HOME/.gnupg"
|
||||
chmod 700 "$HOME/.gnupg"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue