From 8300912bb63fc3918385f9e6d2a9777f62f164a2 Mon Sep 17 00:00:00 2001 From: Thomas Ulmer Date: Wed, 12 Mar 2025 10:18:42 -0700 Subject: firefox files and new emacs stuff --- emacs/site-lisp/coding-config.el | 9 +++++- emacs/site-lisp/evil-config.el | 3 ++ emacs/site-lisp/exwm-pref.el | 56 +++++++++++++++++++++----------------- emacs/site-lisp/general-text.el | 2 +- emacs/site-lisp/irc-config.el | 24 ++++++++++++++++ emacs/site-lisp/modeline-config.el | 4 +-- emacs/site-lisp/my-binds.el | 5 ---- 7 files changed, 69 insertions(+), 34 deletions(-) create mode 100644 emacs/site-lisp/irc-config.el (limited to 'emacs/site-lisp') diff --git a/emacs/site-lisp/coding-config.el b/emacs/site-lisp/coding-config.el index 9d228f0..143da4c 100755 --- a/emacs/site-lisp/coding-config.el +++ b/emacs/site-lisp/coding-config.el @@ -58,10 +58,10 @@ ("C-x C-b" . ibuffer) :hook (ibuffer . (lambda () - (ibuffer-projectile-set-filter-groups) (unless (eq ibuffer-sorting-mode 'alphabetic) (ibuffer-do-sort-by-alphabetic))))) + ;; make shells and whatnot slightly better (require 'comint) (setq comint-scroll-to-bottom-on-input t) @@ -94,6 +94,7 @@ (require 'my-funcs) (add-hook 'prog-mode-hook (lambda () (hs-minor-mode 1) + (hl-todo-mode 1) (superword-mode 1) (modify-syntax-entry ?_ "w") ) (display-fill-column-indicator-mode 1) @@ -125,3 +126,9 @@ "rg -i -M 120 --no-heading --line-number --color never '%s' %s") (global-set-key (kbd "C-s") 'counsel-grep-or-swiper) (global-set-key (kbd "C-S-s") 'isearch-forward) + +;; racket +(use-package racket-mode) + +;; rust +(use-package rustic) diff --git a/emacs/site-lisp/evil-config.el b/emacs/site-lisp/evil-config.el index b019146..b64a720 100644 --- a/emacs/site-lisp/evil-config.el +++ b/emacs/site-lisp/evil-config.el @@ -32,6 +32,7 @@ (define-key evil-motion-state-map (kbd "TAB") 'indent-for-tab-command) (evil-set-initial-state 'vterm-mode 'emacs) +(evil-set-initial-state 'eshell-mode 'emacs) ;;; sasha bindings (defun evil-window-split-and-switch () @@ -75,3 +76,5 @@ (evil-define-key 'normal global-map (kbd "SPC s f") 'counsel-find-file) (evil-define-key 'normal global-map (kbd "SPC s r") 'counsel-rg) (evil-define-key 'normal global-map (kbd "SPC ;") 'frog-jump-buffer) + +(use-package treemacs-evil) diff --git a/emacs/site-lisp/exwm-pref.el b/emacs/site-lisp/exwm-pref.el index fee729f..6407e9e 100644 --- a/emacs/site-lisp/exwm-pref.el +++ b/emacs/site-lisp/exwm-pref.el @@ -6,9 +6,10 @@ (require 'exwm-randr) (require 'exwm-xim) (require 'exwm-systemtray) +(require 'exwm-manage) -(setq exwm-workspace-number 1) -;; (setq exwm-randr-workspace-monitor-plist '(0 "DP-0" 1 "HDMI-0" 2 "DVI-I-1")) +;; (setq exwm-workspace-number 2) +;; (setq exwm-randr-workspace-monitor-plist '(0 "DP-0" 1 "HDMI-0")) (setq exwm-workspace-show-all-buffers t) (setq exwm-layout-show-all-buffers t) @@ -22,9 +23,9 @@ ;; (require 'exwm-firefox) ;; (exwm-firefox-mode) -(setq persp-auto-resume-time 0) +(setq exwm-title-length 50) -(setq exwm-title-length 70) +(setq exwm-manage-force-tiling t) (defun b3n-exwm-set-buffer-name () (if (and exwm-title (string-match "\\`http[^ ]+" exwm-title)) @@ -41,7 +42,7 @@ "<" ;; (if (<= (length exwm-title) exwm-title-length) exwm-title - ;; (concat (substring exwm-title 0 exwm-title-length) "…")) + ;; (concat (substring exwm-title 0 exwm-title-length) "…")) ">")) (exwm-workspace-rename-buffer exwm-title)) @@ -75,7 +76,7 @@ ;; super hacky, assumes that there are only two active workspaces (exwm-workspace-switch-create (exwm-workspace--workspace-from-frame-or-index (let* ((workspace-list (seq-filter 'exwm-workspace--active-p exwm-workspace--list)) - (active-workspaces workspace-list)) + (active-workspaces workspace-list)) (while (not (eq (car active-workspaces) (selected-frame))) (setq active-workspaces (cdr active-workspaces))) (setq active-workspaces (cdr active-workspaces)) @@ -147,7 +148,7 @@ ;;fast workspace switch ([?\s-O] . exwm-other-assigned-workspace) - ;; ([?\M-O] . exwm-other-assigned-workspace) + ([?\M-O] . exwm-other-assigned-workspace) ;;quick calc switching ;; ([?\s-c] . switch-to-calc) @@ -178,43 +179,48 @@ ([?\s-d] . (lambda (command) (interactive (list (read-shell-command "$ "))) (start-process-shell-command command nil command))) + ([?\M-d] . (lambda (command) + (interactive (list (read-shell-command "$ "))) + (start-process-shell-command command nil command))) ;; ([?\M-d] . (lambda (command) - ;; (interactive (list (read-shell-command "$ "))) - ;; (start-process-shell-command command nil command))) + ;; (interactive (list (read-shell-command "$ "))) + ;; (start-process-shell-command command nil command))) ;; browser ([?\s-e] . (lambda () (interactive) - (start-process-shell-command "vimb" nil "vimb"))) + (start-process-shell-command "firefox" nil "firefox"))) ;; ([?\M-e] . (lambda () - ;; (interactive) - ;; (start-process-shell-command "vimb" nil "vimb"))) + ;; (interactive) + ;; (start-process-shell-command "vimb" nil "vimb"))) ;;terminal - ([s-return] . 'eshell) - ;; ([M-return] . (lambda () - ;; (interactive) - ;;if we are already there, switch back - ;; (if (string= (buffer-name (current-buffer)) "*vterm*") - ;; (exwm-workspace-switch-to-buffer exwm-last-buffer) - ;; (progn - ;; (setq exwm-last-buffer (current-buffer)) - ;; (vterm))))) + ([s-return] . eshell) + ;; ((kbd "M-") . eshell) + ;; ([?\M-return] . (lambda () + ;; (interactive) + ;;if we are already there, switch back + ;; (if (string= (buffer-name (current-buffer)) "*vterm*") + ;; (exwm-workspace-switch-to-buffer exwm-last-buffer) + ;; (progn + ;; (setq exwm-last-buffer (current-buffer)) + ;; (vterm))))) ;; return to the last window - ;; ([s-tab] . (lambda () + ;; ([?\s-tab] . (lambda () ;; (interactive) ;; (exwm-workspace-switch-to-buffer (other-buffer)))) ;; kill the current window and close the buffer if possible ([?\s-Q] . kill-buffer-and-window) + ([?\M-Q] . kill-buffer-and-window) ;; kill current buffer but leave window ([?\s-q] . (lambda () (interactive) (kill-buffer nil))) ;; suspend - ([?\s-`] . (lambda () - (interactive) - (start-process "" nil "loginctl" "suspend"))) + ;; ([?\s-`] . (lambda () + ;; (interactive) + ;; (start-process "" nil "loginctl" "suspend"))) )) ;; requires some custom shell scripts not included in my emacs config diff --git a/emacs/site-lisp/general-text.el b/emacs/site-lisp/general-text.el index d03171a..e593487 100644 --- a/emacs/site-lisp/general-text.el +++ b/emacs/site-lisp/general-text.el @@ -20,7 +20,7 @@ (setq ispell-personal-dictionary "/home/tmu/.aspell.en.pws") (add-hook 'text-mode-hook (lambda () - (ispell-mode 1) + (ispell-minor-mode 1) (local-set-key (kbd "M-l") 'dict-map))) (electric-pair-mode 1) diff --git a/emacs/site-lisp/irc-config.el b/emacs/site-lisp/irc-config.el new file mode 100644 index 0000000..d9213ef --- /dev/null +++ b/emacs/site-lisp/irc-config.el @@ -0,0 +1,24 @@ + +;; erc stuff +(require 'erc) +(setq erc-modules '(services autojoin button completion fill imenu irccontrols list match menu + move-to-prompt netsplit networks readonly ring stamp track) + erc-nick "tccq" + erc-use-auth-source-for-nickserv-password t + erc-autojoin-channels-alist '(("libera.chat" + "#emacs" "#emacs-social" "#linux" "#archlinux" "#haskell" "#invidious")) + + erc-hide-list '("JOIN" "PART" "QUIT") + erc-current-nick-highlight-type 'nick + erc-keywords nil + erc-track-exclude-types '("JOIN" "PART" "QUIT" "NICK" "MODE") + erc-track-use-faces t + erc-track-faces-priority-list '(erc-current-nick-face erc-keyword-face) + erc-track-priority-faces-only 'all) + +(defun start-erc () + "Start erc and autojoin various channels" + (interactive) + (erc :server "irc.libera.chat" :port 6667)) + +(provide 'irc-config) diff --git a/emacs/site-lisp/modeline-config.el b/emacs/site-lisp/modeline-config.el index 873f855..b74a15d 100644 --- a/emacs/site-lisp/modeline-config.el +++ b/emacs/site-lisp/modeline-config.el @@ -2,8 +2,8 @@ (provide 'modeline-config) -(require 'battery) -(display-battery-mode 1) +;; (require 'battery) +;; (display-battery-mode 1) (use-package doom-modeline :init diff --git a/emacs/site-lisp/my-binds.el b/emacs/site-lisp/my-binds.el index d3455e4..0b85e66 100644 --- a/emacs/site-lisp/my-binds.el +++ b/emacs/site-lisp/my-binds.el @@ -17,8 +17,3 @@ (keymap-set dired-mode-map "C-o" 'dired-display-file) (keymap-set dired-mode-map "F" 'dired-do-find-marked-files) - -(global-set-key (kbd "M-l") 'forward-char) -(global-set-key (kbd "M-j") 'next-line) -(global-set-key (kbd "M-k") 'previous-line) -(global-set-key (kbd "M-h") 'backward-char) -- cgit v1.2.3 From d33a9964ecf98b0b5e14d1a3a237d9b23425081d Mon Sep 17 00:00:00 2001 From: Thomas Ulmer Date: Fri, 14 Mar 2025 09:20:56 -0700 Subject: s-ret in minibuffer --- emacs/site-lisp/exwm-pref.el | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'emacs/site-lisp') diff --git a/emacs/site-lisp/exwm-pref.el b/emacs/site-lisp/exwm-pref.el index 6407e9e..a5b8875 100644 --- a/emacs/site-lisp/exwm-pref.el +++ b/emacs/site-lisp/exwm-pref.el @@ -282,6 +282,13 @@ ;; uncommenting the following line. ;; (setq exwm-workspace-minibuffer-position 'bottom) + +;; specifically disable S-return in the minibuffer so you don't hit it on accident +;; This is here cause cause the other s-* bindings are here +(if vertico-mode + (define-key vertico-map (kbd "s-") 'vertico-exit) + (define-key minibuffer-mode-map (kbd "s-") 'minibuffer-complete-and-exit)) + ;; Do not forget to enable EXWM. It will start by itself when things are ;; ready. You can put it _anywhere_ in your configuration. (exwm-enable) -- cgit v1.2.3 From 3bf89f4ceb8494848f5ca17cb4c3987b9eb706ba Mon Sep 17 00:00:00 2001 From: Thomas Ulmer Date: Mon, 17 Mar 2025 15:56:01 -0700 Subject: emacs cleanup and evil sandboxing --- emacs/init.el | 73 +++++++++++++++++++++++++--------------- emacs/site-lisp/coding-config.el | 23 ++++--------- emacs/site-lisp/evil-config.el | 2 -- emacs/site-lisp/my-funcs.el | 28 ++++++++------- 4 files changed, 68 insertions(+), 58 deletions(-) (limited to 'emacs/site-lisp') diff --git a/emacs/init.el b/emacs/init.el index 29a39fc..c4d0db7 100644 --- a/emacs/init.el +++ b/emacs/init.el @@ -141,16 +141,16 @@ '(helm-minibuffer-history-key "M-p") '(menu-bar-mode nil) '(package-selected-packages - '(2048-game all-the-icons-completion amsreftex auctex benchmark-init - bongo buffer-move cape chinese-conv cmake-mode - company-go corfu corfu-terminal counsel-projectile - cuda-mode dockerfile-mode doom-modeline dumb-jump eat - edit-indirect eglot embark-consult ement - emms-player-simple-mpv emms-state esh-help - eshell-fringe-status eshell-vterm esup evil-collection - evil-easymotion evil-snipe evil-surround - exwm-firefox-evil exwm-modeline eyebrowse fish-mode - flycheck-aspell flymake-aspell + '(2048-game all-the-icons-completion amsreftex auctex balanced-windows + benchmark-init bongo buffer-move cape chinese-conv + cmake-mode company-go corfu corfu-terminal + counsel-projectile cuda-mode dockerfile-mode + doom-modeline dumb-jump eat edit-indirect eglot + embark-consult ement emms-player-simple-mpv emms-state + esh-help eshell-fringe-status eshell-vterm esup + evil-collection evil-easymotion evil-snipe + evil-surround exwm-firefox-evil exwm-modeline eyebrowse + fish-mode flycheck-aspell flymake-aspell flymake-diagnostic-at-point fold-this folding free-keys frog-jump-buffer gdscript-mode gxref haskell-mode helm-exwm helm-hoogle highlight hindent hl-todo @@ -164,7 +164,7 @@ simple-httpd spell-fu telephone-line tempel tree-sitter-langs treemacs treemacs-evil vertico-prescient vimgolf visible-mark volume which-key - workgroups yaml-mode)) + winum workgroups yaml-mode)) '(pyim-assistant-scheme 'cangjie) '(safe-local-variable-values '((LEXICAL-binding . t))) '(scroll-bar-mode nil) @@ -203,6 +203,10 @@ (setq-default proced-auto-update-interval 1) ;; always auto update proced +;; this is to avoid loading evil entirely, and ease some of the +;; internconnection complexity of the config +(setq want-evil t) + ;; -------------------------------------------------------------------- ;; external packages @@ -242,7 +246,7 @@ ("C-h B" . embark-bindings) ;; alternative for `describe-bindings' ) :init - (add-hook 'eldoc-documentation-functions #'embark-eldoc-first-target) + ;; (add-hook 'eldoc-documentation-functions #'embark-eldoc-first-target) :config ;; Hide the mode line of the Embark live/completions buffers (add-to-list 'display-buffer-alist @@ -275,9 +279,9 @@ (use-package corfu-terminal :init - ;; (corfu-terminal-mode 1) + (corfu-terminal-mode 1) :custom - (corfu-terminal-disable-on-gui nil)) + (corfu-terminal-disable-on-gui t)) (use-package cape ;; extend completion frameworks @@ -286,16 +290,14 @@ (advice-add 'pcomplete-completions-at-point :around 'cape-wrap-silent) (advice-add 'pcomplete-completions-at-point :around 'cape-wrap-purify) :init - (setq completion-at-point-functions '(cape-dict - tags-completion-at-point-function + (setq completion-at-point-functions '(tags-completion-at-point-function cape-keyword cape-dabbrev - cape-symbol))) + cape-symbol + cape-dict))) (use-package dabbrev - ;; Swap M-/ and C-M-/ - :bind ( ;; ("M-/" . completion-at-point) - ("C-M-/" . dabbrev-expand)) + :bind (("C-M-/" . dabbrev-expand)) :config (add-to-list 'dabbrev-ignored-buffer-regexps "\\` ") ;; Since 29.1, use `dabbrev-ignored-buffer-regexps' on older. @@ -355,14 +357,24 @@ " " filename-and-process) (mark " " (name 16 -1) - " " filename)))) + " " filename))) + :bind + ("C-x C-b" . ibuffer) + :hook + (ibuffer . (lambda () + (unless (eq ibuffer-sorting-mode 'alphabetic) + (ibuffer-do-sort-by-alphabetic))))) (use-package buffer-move :bind ("C-x -" . buf-move-right)) +(use-package winum + :init + (winum-mode 1)) + (use-package consult - :custom (consult-preview-excluded-buffers '(major-mode . exwm-mode)) - :bind ("C-x b" . consult-buffer)) + :custom (consult-preview-excluded-buffers t) + :bind (("C-x b" . consult-buffer))) ;; (use-package beacon ;; :init @@ -382,6 +394,12 @@ (visible-mark-max 1) ) +(use-package avy + :bind (("C-'" . avy-goto-char-2))) + +(use-package balanced-windows + :bind ("C-x w b" . balanced-windows-mode)) + ;; eshell stuff (use-package eshell :init @@ -395,9 +413,8 @@ (keymap-set eshell-hist-mode-map "C-c C-p" 'previous-line) (keymap-set eshell-mode-map "C-l" 'eshell/clear) (add-hook 'eshell-mode-hook 'eldoc-mode) - (add-hook 'eshell-mode-hook (lambda () (evil-local-mode -1))) - :custom - (eshell-prefer-lisp-functions t)) + (if want-evil + (add-hook 'eshell-mode-hook (lambda () (evil-local-mode -1))))) (use-package eat :init @@ -406,6 +423,8 @@ ;; file browser (use-package treemacs + :init + (if want-evil (use-package treemacs-evil)) :bind (("C-c t" . treemacs))) ;; password integration @@ -420,7 +439,7 @@ ;; ---------------------------------------------------------------------- ;; my custom stuff -(require 'evil-config) +(if want-evil (require 'evil-config)) (require 'my-funcs) (require 'my-binds) (require 'coding-config) diff --git a/emacs/site-lisp/coding-config.el b/emacs/site-lisp/coding-config.el index 143da4c..a8f34a9 100755 --- a/emacs/site-lisp/coding-config.el +++ b/emacs/site-lisp/coding-config.el @@ -52,16 +52,6 @@ (setq imenu-auto-rescan t) -;; make ibuffer play with projectile -(use-package ibuffer - :bind - ("C-x C-b" . ibuffer) - :hook - (ibuffer . (lambda () - (unless (eq ibuffer-sorting-mode 'alphabetic) - (ibuffer-do-sort-by-alphabetic))))) - - ;; make shells and whatnot slightly better (require 'comint) (setq comint-scroll-to-bottom-on-input t) @@ -96,12 +86,13 @@ (hs-minor-mode 1) (hl-todo-mode 1) (superword-mode 1) - (modify-syntax-entry ?_ "w") ) - (display-fill-column-indicator-mode 1) - (add-hook 'before-save-hook - (lambda () - (if (not (eq major-mode 'makefile-gmake-mode)) - (clean-prog-file (current-buffer)))))) + (modify-syntax-entry ?_ "w") + + (display-fill-column-indicator-mode 1) + (add-hook 'before-save-hook + (lambda () + (if (not (eq major-mode 'makefile-gmake-mode)) + (clean-prog-file (current-buffer))))))) ;; haskell flavor and tags (use-package haskell-mode diff --git a/emacs/site-lisp/evil-config.el b/emacs/site-lisp/evil-config.el index b64a720..582617e 100644 --- a/emacs/site-lisp/evil-config.el +++ b/emacs/site-lisp/evil-config.el @@ -76,5 +76,3 @@ (evil-define-key 'normal global-map (kbd "SPC s f") 'counsel-find-file) (evil-define-key 'normal global-map (kbd "SPC s r") 'counsel-rg) (evil-define-key 'normal global-map (kbd "SPC ;") 'frog-jump-buffer) - -(use-package treemacs-evil) diff --git a/emacs/site-lisp/my-funcs.el b/emacs/site-lisp/my-funcs.el index b1cfdec..8bed290 100644 --- a/emacs/site-lisp/my-funcs.el +++ b/emacs/site-lisp/my-funcs.el @@ -91,19 +91,21 @@ BEG and END define the region." (let ((transient-mark-mode nil)) (yank-advised-indent-function (region-beginning) (region-end))))) -(defadvice evil-paste-before (after yank-indent activate) - "If current mode is one of 'yank-indent-modes, indent yanked text (with prefix arg don't indent)." - (if (and (not (ad-get-arg 0)) - (member major-mode yank-indent-modes)) - (let ((transient-mark-mode nil)) - (yank-advised-indent-function (region-beginning) (region-end))))) - -(defadvice evil-paste-after (after yank-indent activate) - "If current mode is one of 'yank-indent-modes, indent yanked text (with prefix arg don't indent)." - (if (and (not (ad-get-arg 0)) - (member major-mode yank-indent-modes)) - (let ((transient-mark-mode nil)) - (yank-advised-indent-function (region-beginning) (region-end))))) +(if want-evil + (progn + (defadvice evil-paste-before (after yank-indent activate) + "If current mode is one of 'yank-indent-modes, indent yanked text (with prefix arg don't indent)." + (if (and (not (ad-get-arg 0)) + (member major-mode yank-indent-modes)) + (let ((transient-mark-mode nil)) + (yank-advised-indent-function (region-beginning) (region-end))))) + + (defadvice evil-paste-after (after yank-indent activate) + "If current mode is one of 'yank-indent-modes, indent yanked text (with prefix arg don't indent)." + (if (and (not (ad-get-arg 0)) + (member major-mode yank-indent-modes)) + (let ((transient-mark-mode nil)) + (yank-advised-indent-function (region-beginning) (region-end))))))) (defun fold-this-fold-forward (&optional arg) "Fold forward ARG number of sexps, defaulting to one." -- cgit v1.2.3 From c69522dbb64264c7271ea272dba1bf7147a1ad44 Mon Sep 17 00:00:00 2001 From: Thomas Ulmer Date: Sat, 22 Mar 2025 18:42:02 -0700 Subject: small emacs changes --- emacs/init.el | 12 +++++------- emacs/site-lisp/evil-config.el | 2 ++ 2 files changed, 7 insertions(+), 7 deletions(-) (limited to 'emacs/site-lisp') diff --git a/emacs/init.el b/emacs/init.el index c4d0db7..e0975a3 100644 --- a/emacs/init.el +++ b/emacs/init.el @@ -141,16 +141,16 @@ '(helm-minibuffer-history-key "M-p") '(menu-bar-mode nil) '(package-selected-packages - '(2048-game all-the-icons-completion amsreftex auctex balanced-windows - benchmark-init bongo buffer-move cape chinese-conv - cmake-mode company-go corfu corfu-terminal + '(2048-game all-the-icons-completion amsreftex auctex avy-flycheck + balanced-windows benchmark-init bongo buffer-move cape + chinese-conv cmake-mode company-go corfu corfu-terminal counsel-projectile cuda-mode dockerfile-mode doom-modeline dumb-jump eat edit-indirect eglot embark-consult ement emms-player-simple-mpv emms-state esh-help eshell-fringe-status eshell-vterm esup evil-collection evil-easymotion evil-snipe evil-surround exwm-firefox-evil exwm-modeline eyebrowse - fish-mode flycheck-aspell flymake-aspell + fish-mode flycheck flycheck-aspell flymake-aspell flymake-diagnostic-at-point fold-this folding free-keys frog-jump-buffer gdscript-mode gxref haskell-mode helm-exwm helm-hoogle highlight hindent hl-todo @@ -205,7 +205,7 @@ ;; this is to avoid loading evil entirely, and ease some of the ;; internconnection complexity of the config -(setq want-evil t) +(setq want-evil nil) ;; -------------------------------------------------------------------- ;; external packages @@ -423,8 +423,6 @@ ;; file browser (use-package treemacs - :init - (if want-evil (use-package treemacs-evil)) :bind (("C-c t" . treemacs))) ;; password integration diff --git a/emacs/site-lisp/evil-config.el b/emacs/site-lisp/evil-config.el index 582617e..38db735 100644 --- a/emacs/site-lisp/evil-config.el +++ b/emacs/site-lisp/evil-config.el @@ -30,6 +30,8 @@ (define-key evil-normal-state-map (kbd "M-.") 'xref-find-definitions) (define-key evil-normal-state-map (kbd "M-Z") 'suspend-frame) +(use-package treemacs-evil) + (define-key evil-motion-state-map (kbd "TAB") 'indent-for-tab-command) (evil-set-initial-state 'vterm-mode 'emacs) (evil-set-initial-state 'eshell-mode 'emacs) -- cgit v1.2.3 From dade583159e78a0ba6a40acf8ae888ce6df1b32f Mon Sep 17 00:00:00 2001 From: Thomas Ulmer Date: Wed, 26 Mar 2025 10:37:22 -0700 Subject: pyenv and other --- emacs/init.el | 8 ++++---- emacs/site-lisp/coding-config.el | 3 +++ emacs/site-lisp/exwm-pref.el | 43 ++++++++++++++++++++-------------------- 3 files changed, 29 insertions(+), 25 deletions(-) (limited to 'emacs/site-lisp') diff --git a/emacs/init.el b/emacs/init.el index e0975a3..832c35f 100644 --- a/emacs/init.el +++ b/emacs/init.el @@ -159,10 +159,10 @@ markdown-preview-mode minions nginx-mode oauth2 orderless pass password-store persp-mode-projectile-bridge popwin pyim-basedict - pyim-cangjiedict racket-mode rainbow-delimiters rustic - sdcv sideline-flycheck sideline-flymake sideline-lsp - simple-httpd spell-fu telephone-line tempel - tree-sitter-langs treemacs treemacs-evil + pyim-cangjiedict pyvenv racket-mode rainbow-delimiters + rustic sdcv sideline-flycheck sideline-flymake + sideline-lsp simple-httpd spell-fu telephone-line + tempel tree-sitter-langs treemacs treemacs-evil vertico-prescient vimgolf visible-mark volume which-key winum workgroups yaml-mode)) '(pyim-assistant-scheme 'cangjie) diff --git a/emacs/site-lisp/coding-config.el b/emacs/site-lisp/coding-config.el index a8f34a9..25dd372 100755 --- a/emacs/site-lisp/coding-config.el +++ b/emacs/site-lisp/coding-config.el @@ -24,6 +24,8 @@ (use-package lsp-haskell) +(use-package pyvenv) + (use-package sideline :init (setq sideline-backends-right '())) @@ -51,6 +53,7 @@ (global-set-key (kbd "M-I") 'xref-find-definitions) (setq imenu-auto-rescan t) +(setq imenu-flatten t) ;; make shells and whatnot slightly better (require 'comint) diff --git a/emacs/site-lisp/exwm-pref.el b/emacs/site-lisp/exwm-pref.el index a5b8875..75bf5a9 100644 --- a/emacs/site-lisp/exwm-pref.el +++ b/emacs/site-lisp/exwm-pref.el @@ -99,6 +99,7 @@ ;;(exwm-config-default) (exwm-systemtray-mode) (push ?\C-\\ exwm-input-prefix-keys) ;;C-\ to switch input method +(push ?\C-u exwm-input-prefix-keys) ;; send C-u to all windows too ;; All buffers created in EXWM mode are named "*EXWM*". You may want to ;; change it in `exwm-update-class-hook' and `exwm-update-title-hook', which @@ -256,27 +257,27 @@ ;; list of cons cells (SRC . DEST), where SRC is the key sequence you press ;; and DEST is what EXWM actually sends to application. Note that both SRC ;; and DEST should be key sequences (vector or string). -;; (setq exwm-input-simulation-keys -;; '( -;; ;; movement -;; ([?\C-b] . [left]) -;; ([?\M-b] . [C-left]) -;; ([?\C-f] . [right]) -;; ([?\M-f] . [C-right]) -;; ([?\C-p] . [up]) -;; ([?\C-n] . [down]) -;; ([?\C-a] . [home]) -;; ([?\C-e] . [end]) -;; ([?\M-v] . [prior]) -;; ([?\C-v] . [next]) -;; ([?\C-d] . [delete]) -;; ([?\C-k] . [S-end delete]) -;; ;; cut/paste. -;; ;; ([?\C-w] . [?\C-x]) -;; ;; ([?\M-w] . [?\C-c]) -;; ;; ([?\C-y] . [?\C-v]) -;; ;; search -;; ([?\C-s] . [?\C-f]))) +(setq exwm-input-simulation-keys + '( + ;; movement + ([?\C-b] . [left]) + ([?\M-b] . [C-left]) + ([?\C-f] . [right]) + ([?\M-f] . [C-right]) + ([?\C-p] . [up]) + ([?\C-n] . [down]) + ([?\C-a] . [home]) + ([?\C-e] . [end]) + ([?\M-v] . [prior]) + ([?\C-v] . [next]) + ([?\C-d] . [delete]) + ([?\C-k] . [S-end delete]) + ;; cut/paste. + ;; ([?\C-w] . [?\C-x]) + ([?\M-w] . [?\C-c]) + ([?\C-y] . [?\C-v]) + ;; search + ([?\C-s] . [?\C-f]))) ;; You can hide the minibuffer and echo area when they're not used, by ;; uncommenting the following line. -- cgit v1.2.3 From f2e7dfcf2e9c606e47511701a8cff37c913b8b96 Mon Sep 17 00:00:00 2001 From: Thomas Ulmer Date: Sat, 29 Mar 2025 17:12:10 -0700 Subject: new binds and stuff --- emacs/init.el | 2 +- emacs/site-lisp/exwm-pref.el | 15 ++++++++------- emacs/site-lisp/my-binds.el | 3 +++ 3 files changed, 12 insertions(+), 8 deletions(-) (limited to 'emacs/site-lisp') diff --git a/emacs/init.el b/emacs/init.el index 832c35f..1c47a39 100644 --- a/emacs/init.el +++ b/emacs/init.el @@ -281,7 +281,7 @@ :init (corfu-terminal-mode 1) :custom - (corfu-terminal-disable-on-gui t)) + (corfu-terminal-disable-on-gui nil)) (use-package cape ;; extend completion frameworks diff --git a/emacs/site-lisp/exwm-pref.el b/emacs/site-lisp/exwm-pref.el index 75bf5a9..f03711c 100644 --- a/emacs/site-lisp/exwm-pref.el +++ b/emacs/site-lisp/exwm-pref.el @@ -8,8 +8,8 @@ (require 'exwm-systemtray) (require 'exwm-manage) -;; (setq exwm-workspace-number 2) -;; (setq exwm-randr-workspace-monitor-plist '(0 "DP-0" 1 "HDMI-0")) +(setq exwm-workspace-number 2) +(setq exwm-randr-workspace-monitor-plist '(0 "DP-0" 1 "HDMI-0")) (setq exwm-workspace-show-all-buffers t) (setq exwm-layout-show-all-buffers t) @@ -34,6 +34,10 @@ (setq-local exwm-title (replace-regexp-in-string (concat (regexp-quote url) " - ") "" + exwm-title)) + (setq-local exwm-title (replace-regexp-in-string + " - Mozilla Firefox" + "" exwm-title)))) (setq-local exwm-title @@ -180,12 +184,9 @@ ([?\s-d] . (lambda (command) (interactive (list (read-shell-command "$ "))) (start-process-shell-command command nil command))) - ([?\M-d] . (lambda (command) - (interactive (list (read-shell-command "$ "))) - (start-process-shell-command command nil command))) ;; ([?\M-d] . (lambda (command) - ;; (interactive (list (read-shell-command "$ "))) - ;; (start-process-shell-command command nil command))) + ;; (interactive (list (read-shell-command "$ "))) + ;; (start-process-shell-command command nil command))) ;; browser ([?\s-e] . (lambda () (interactive) diff --git a/emacs/site-lisp/my-binds.el b/emacs/site-lisp/my-binds.el index 0b85e66..bb80e62 100644 --- a/emacs/site-lisp/my-binds.el +++ b/emacs/site-lisp/my-binds.el @@ -17,3 +17,6 @@ (keymap-set dired-mode-map "C-o" 'dired-display-file) (keymap-set dired-mode-map "F" 'dired-do-find-marked-files) +;; searching +(global-set-key (kbd "M-s g") 'rgrep) +(global-set-key (kbd "M-s r") 'counsel-rg) -- cgit v1.2.3