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.
|
# This file contains fish universal variable definitions.
|
||||||
# VERSION: 3.0
|
# VERSION: 3.0
|
||||||
|
SETUVAR --export GOROOT:/usr/lib64/go1\x2e26\x2e5/go
|
||||||
SETUVAR __fish_initialized:4300
|
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 EDITOR=vim
|
||||||
export BROWSER=nyxt
|
export BROWSER=nyxt
|
||||||
export PAGER=bat
|
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
|
(use-package solaire-mode
|
||||||
:config (solaire-global-mode +1))
|
:config (solaire-global-mode +1))
|
||||||
|
|
||||||
(use-package simple-modeline
|
(use-package nerd-icons
|
||||||
:hook (after-init . simple-modeline-mode))
|
: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
|
;; turn off number mode in some contexts
|
||||||
(dolist (mode
|
(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
|
** Which-key
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package which-key
|
(use-package which-key
|
||||||
|
:ensure nil
|
||||||
:init (which-key-mode)
|
:init (which-key-mode)
|
||||||
:diminish which-key-mode
|
:diminish which-key-mode
|
||||||
:config
|
: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
|
#+end_src
|
||||||
** General
|
** 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.
|
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.
|
;; strategy, if you want to see the documentation from multiple providers.
|
||||||
;; (add-hook 'eldoc-documentation-functions #'embark-eldoc-first-target)
|
;; (add-hook 'eldoc-documentation-functions #'embark-eldoc-first-target)
|
||||||
(define-key evil-normal-state-map (kbd "C-.") 'embark-act)
|
(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
|
:config
|
||||||
|
|
@ -1205,6 +1224,30 @@ Idk I think this came from the vertico readme
|
||||||
All lisp-family languages
|
All lisp-family languages
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
; Required for some reason
|
; 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
|
(use-package symex-core
|
||||||
:straight
|
:straight
|
||||||
(symex-core
|
(symex-core
|
||||||
|
|
@ -1249,29 +1292,15 @@ All lisp-family languages
|
||||||
#'geiser-edit-symbol-at-point)
|
#'geiser-edit-symbol-at-point)
|
||||||
(symex-ide-mode 1))
|
(symex-ide-mode 1))
|
||||||
|
|
||||||
(use-package lithium
|
;; (use-package symex-rigpa
|
||||||
:straight t
|
;; :after (symex rigpa symex-evil)
|
||||||
:config
|
;; :straight
|
||||||
(lithium-mode 1))
|
;; (symex-rigpa
|
||||||
|
;; :host github
|
||||||
(use-package rigpa
|
;; :repo "drym-org/symex.el"
|
||||||
:straight
|
;; :files ("symex-rigpa/symex*.el"))
|
||||||
(rigpa
|
;; :config
|
||||||
:type git
|
;; (symex-rigpa-mode 1))
|
||||||
: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))
|
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
*** Scheme
|
*** 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/rofi" "$HOME/.config/rofi"
|
||||||
backup_and_link "$DOTFILES/config/zathura" "$HOME/.config/zathura"
|
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
|
# GPG: link individual files to preserve ~/.gnupg's required 700 permissions
|
||||||
mkdir -p "$HOME/.gnupg"
|
mkdir -p "$HOME/.gnupg"
|
||||||
chmod 700 "$HOME/.gnupg"
|
chmod 700 "$HOME/.gnupg"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue