From 504bdc17f3d81c18fa77f48e5e44f2f343185ccf Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Sat, 24 Jan 2026 00:43:32 +0000 Subject: [PATCH] Bunch of changes --- Emacs/.config/emacs/.config/eshell/aliases | 2 +- .../.var/gamegrid-user-score/tetris-scores | 9 +- Emacs/.config/emacs/config.org | 264 ++++++++++++------ Emacs/.config/emacs/elisp/better-mode-line.el | 19 +- Emacs/.config/emacs/elisp/eshell-additions.el | 33 ++- .../emacs/straight/versions/default.el | 3 + NeoVim/.config/nvim/lazy-lock.json | 4 +- Shell/.zprofile | 2 +- XServer/.xinitrc | 4 +- aspell/.aspell.en.pws | 4 +- gdb/.gdbinit | 1 + 11 files changed, 223 insertions(+), 122 deletions(-) create mode 100644 gdb/.gdbinit diff --git a/Emacs/.config/emacs/.config/eshell/aliases b/Emacs/.config/emacs/.config/eshell/aliases index 18cda5b..7bfd3e6 100644 --- a/Emacs/.config/emacs/.config/eshell/aliases +++ b/Emacs/.config/emacs/.config/eshell/aliases @@ -1,6 +1,6 @@ alias l ls -la alias ss sudo-switch -alias pr project-root +alias pr project-root $1 alias gt goto alias gs magit-status alias fw find-file-other-window $1 diff --git a/Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores b/Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores index 1b97acb..c45d169 100644 --- a/Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores +++ b/Emacs/.config/emacs/.var/gamegrid-user-score/tetris-scores @@ -1,6 +1,9 @@ 00527 Wed Sep 3 17:15:36 2025 Aryadev Chavali 00458 Tue Oct 1 18:22:44 2024 Aryadev Chavali 00424 Tue Oct 1 14:20:22 2024 Aryadev Chavali +00382 Sat Jan 24 00:41:28 2026 Aryadev Chavali +00381 Tue Dec 9 01:41:15 2025 Aryadev Chavali +00364 Sat Jan 24 00:38:27 2026 Aryadev Chavali 00288 Sun Jun 1 14:24:57 2025 Aryadev Chavali 00281 Thu Jul 13 03:07:51 2023 Aryadev Chavali 00267 Fri Aug 16 10:54:52 2024 Aryadev Chavali @@ -11,8 +14,8 @@ 00204 Wed Dec 28 14:50:42 2022 Aryadev Chavali 00187 Thu Jan 12 01:30:09 2023 Aryadev Chavali 00172 Mon Jan 9 12:59:13 2023 Aryadev Chavali -00166 Fri Aug 16 11:05:23 2024 Aryadev Chavali 00166 Mon May 6 02:40:23 2024 Aryadev Chavali +00166 Fri Aug 16 11:05:23 2024 Aryadev Chavali 00154 Sat Jul 26 18:43:42 2025 Aryadev Chavali 00120 Thu Aug 29 18:45:32 2024 Aryadev Chavali 00114 Fri Jul 21 11:58:31 2023 Aryadev Chavali @@ -29,12 +32,12 @@ 00048 Sun May 5 19:34:16 2024 Aryadev Chavali 00046 Wed Oct 12 11:27:19 2022 Aryadev Chavali 00042 Tue Aug 1 19:58:49 2023 Aryadev Chavali -00038 Tue Oct 11 16:47:44 2022 Aryadev Chavali 00038 Fri Oct 14 13:05:44 2022 Aryadev Chavali +00038 Tue Oct 11 16:47:44 2022 Aryadev Chavali 00037 Thu Aug 17 18:11:59 2023 Aryadev Chavali 00027 Thu Jan 12 01:14:32 2023 Aryadev Chavali 00024 Thu Jan 12 01:14:54 2023 Aryadev Chavali 00012 Tue Jan 17 13:58:01 2023 Aryadev Chavali -00006 Thu Jun 22 23:16:42 2023 Aryadev Chavali 00006 Mon Jan 9 11:04:43 2023 Aryadev Chavali +00006 Thu Jun 22 23:16:42 2023 Aryadev Chavali 00000 Fri Dec 2 13:58:02 2022 Aryadev Chavali diff --git a/Emacs/.config/emacs/config.org b/Emacs/.config/emacs/config.org index 86456be..71bb9d9 100644 --- a/Emacs/.config/emacs/config.org +++ b/Emacs/.config/emacs/config.org @@ -154,6 +154,12 @@ no need to check with me first! #+begin_src emacs-lisp (setopt async-shell-command-buffer 'new-buffer) #+end_src + +Let's also ensure we don't hear that stupid bell whenever we do a +keyboard quit or other such operation. +#+begin_src emacs-lisp +(setopt ring-bell-function nil) +#+end_src * Custom functionality and libraries This is custom Lisp that I or someone else has written which I really need to setup ASAP due to how necessary it is throughout the rest of @@ -243,7 +249,7 @@ must be preserved for any operation suggested by the above. (eq 4 (car arg))) (setq items (thread-first (current-buffer) - (--get-dir-or-project-dir ) + (+cfg/--get-dir-or-project-dir ) (assoc buffer-alist #'string=) (cdr)))) ((and (listp arg) @@ -336,9 +342,9 @@ expression. Here's a macro to do that for me. #+begin_src emacs-lisp (defmacro add-multiple-to-list (listvar &rest elements) - (->> elements - (mapcar (lambda (el) (list 'cl-pushnew el listvar))) - (cons 'progn))) + (thread-last elements + (mapcar (lambda (el) (list 'cl-pushnew el listvar))) + (cons 'progn))) #+end_src ** Setting number of native jobs Emacs has a native compilation capability to make things /even @@ -358,21 +364,6 @@ never used before, 3 seems to be a reasonable default. 3) (setq native-comp-async-jobs-number))) #+end_src -** Proper paths in Emacs -Imagine you adjust your path in ZSH. This change won't necessarily -affect the results of ~(getenv "PATH")~ - you'd need to ensure Emacs -was loaded from a recent ZSH instance. This package allows you to -synchronise the PATH variable with the shell to avoid any silly -issues. - -#+begin_src emacs-lisp -(use-package exec-path-from-shell - :straight t - :demand t - :config - (when (member window-system '(mac ns x)) - (exec-path-from-shell-initialize))) -#+end_src ** Reset font size I define a function here that sets the font size for the so-called "default" face; this is usually the face that all other faces in a @@ -422,7 +413,7 @@ works for any theme! * Essential packages External and internal packages absolutely necessary for the rest of this configuration. -** TODO General - Bindings package +** General - Bindings package What's the point of an editor with no keybindings? Vanilla Emacs has the ~bind-key~ function (and the ~bind-key*~ macro) for this, but [[*Evil - Vim Emulation][Evil]] has it's own ~evil-define-key~. I'd @@ -435,9 +426,10 @@ over some pre-defined configuration, all through one interface. Here I setup the rough outline of how bindings should be made in the global scope, namely: -- Use "SPC" as a "leader", the root of all general bindings +- Use "SPC" as a "leader", the root of all general bindings when in + normal/motion mode. - Use "\" as a local-leader, the root of all major mode (read "mode - specific") bindings + specific") bindings in normal/motion mode. - A few "definers" for the different sub bindings for the leader key - ~nmmap~ macro, for defining keys under both normal and motion states. @@ -447,7 +439,6 @@ global scope, namely: :straight t :demand t :config - ;; General which key definitions for leaders (general-def :states '(normal motion) "SPC" nil @@ -569,7 +560,9 @@ set of examples on how to use general. "S" (proc-int (find-file (concat user-emacs-directory "straight/")))) (insert-leader - "c" #'insert-char) + "y" #'yank-from-kill-ring + "c" #'insert-char + "e" #'emoji-search) (dir-leader "v" #'add-dir-local-variable) @@ -1118,18 +1111,17 @@ fundamental mode and call it a day. (setq inhibit-startup-screen t inhibit-startup-echo-area-message user-login-name initial-major-mode 'text-mode - initial-scratch-message "" - ring-bell-function 'ignore) + initial-scratch-message "") :config (add-hook 'after-init-hook (proc (with-current-buffer "*scratch*" (goto-char (point-max)) - (thread-last - (straight-recipes-list) - length - (format "Emacs v%s - %s - %s packages\n" emacs-version (emacs-init-time)) - (insert)))))) + (insert + (format "Emacs v%s - %s - %s packages\n" + emacs-version + (emacs-init-time) + (length (straight-recipes-list)))))))) #+end_src ** Cursor and the highlighted line Configure the blinking cursor. @@ -1158,8 +1150,10 @@ to look at, without even being that immediately informative. I've got a custom Emacs lisp package ([[file:elisp/better-mode-line.el][here]]) which sets up the default -mode line as a set of 3 segments: left, centre and right. It pads out -the mode line with space strings to achieve this. +mode line as a sequence of 3 segments: left, centre and right. It +pads out the mode line with relevant space strings, computed using the +current windows width, to make the three segments actually justify to +their relevant sides. #+begin_src emacs-lisp (use-package better-mode-line @@ -1167,8 +1161,8 @@ the mode line with space strings to achieve this. :demand t :init (defun +mode-line/evil-state () - "Returns either \"E\" if no evil-state is defined or the first character -of the evil state capitalised" + "Returns either \"E\" if no evil-state is defined or the first character of +the evil state capitalised" (if (bound-and-true-p evil-state) (--> (format "%s" evil-state) @@ -1176,8 +1170,16 @@ of the evil state capitalised" (upcase it)) "E")) + (defun +mode-line/rsync-state () + "Returns an indicator on the current progress of the rsync process if +dired-rsync is being used" + (when (and (eq major-mode 'dired-mode) + (bound-and-true-p dired-rsync-modeline-status) + (mode-line-window-selected-p)) + (concat " " dired-rsync-modeline-status))) + (setq better-mode-line/left-segment - '(" " ;; Left padding + '(" " ;; Left padding (:eval (if (mode-line-window-selected-p) '("%l:%c" ;; Line and column count @@ -1188,28 +1190,23 @@ of the evil state capitalised" (+mode-line/evil-state)) "]")))) better-mode-line/centre-segment - '("%+" ;; Buffer state (changed or not) - "%b" ;; Buffer name - "(" ;; Major mode + '("%+" ;; Buffer state (changed or not) + "%b" ;; Buffer name + "(" ;; Major mode (:eval (format "%s" major-mode)) ")") better-mode-line/right-segment '((:eval (when (mode-line-window-selected-p) - (if vc-mode ;; Project and Git branch + (if vc-mode ;; Project and Git branch vc-mode ""))) - mode-line-misc-info ;; Any other information - (:eval - (when (and (eq major-mode 'dired-mode) - (bound-and-true-p dired-rsync-modeline-status) - (mode-line-window-selected-p)) - (concat " " - dired-rsync-modeline-status))) - (:eval ;; Compilation mode errors + mode-line-misc-info ;; Any other information + (:eval (+mode-line/rsync-state)) + (:eval ;; Compilation mode errors (if (eq major-mode 'compilation-mode) compilation-mode-line-errors)) - " " ;; Right padding + " " ;; Right padding )) :config (better-mode-line/setup-mode-line)) @@ -1377,10 +1374,7 @@ Nice set of icons, for even more emojis. #+begin_src emacs-lisp (use-package all-the-icons :straight t - :defer t - :general - (insert-leader - "e" #'all-the-icons-insert)) + :defer t) #+end_src ** Pretty symbols Prettify symbols mode allows users to declare "symbols" that replace @@ -1662,9 +1656,6 @@ Here I setup dired with a few niceties dired instance will automatically target the other dired window (~dired-dwim~) - If opening an application on a PDF file, suggest ~zathura~ -- Examine all the subdirectories within the same buffer - (~+dired/insert-all-subdirectories~) - #+begin_src emacs-lisp (use-package dired :defer t @@ -1782,8 +1773,6 @@ Here I setup dired with a few niceties :keymaps 'dired-mode-map "i" #'dired-maybe-insert-subdir "d" #'dired-goto-subdir - "I" #'+dired/insert-all-subdirectories - "o" #'dired-omit-mode "K" #'dired-kill-subdir "m" #'dired-mark-files-regexp "u" #'dired-undo) @@ -1795,7 +1784,43 @@ Here I setup dired with a few niceties '("\\.png\\'" "feh") '("\\.webm\\'" "mpv") '("\\.mp[34]\\'" "mpv") - '("\\.mkv\\'" "mpv")) + '("\\.mkv\\'" "mpv"))) +#+end_src +*** Dired Custom +Some custom to add functionality to Dired. +- ~+dired/insert-all-subdirectories~ will "insert" all subdirectories + currently present in the dired buffer; equivalent to expanding them + out into their own mini-session - but in the same buffer. A ~C-u~ + will do it recursively till everything is in front of you, while + doing it without it will just do one level of depth. Useful for a + quick tree based look at your project. +- ~+dired/sort~ will sort out the current dired buffer, with a nice + little ~completing-read~ menu to choose from a few options on how to + do so. + +#+begin_src emacs-lisp +(use-package dired + :defer t + :general + (local-leader + :keymaps 'dired-mode-map + "I" #'+dired/insert-all-subdirectories + "s" #'+dired/sort) + :config + (defun +dired/sort () + ;; Inspired by (read: slightly rewritten and expanded from) THE XahLee + ;; himself http://xahlee.info/emacs/emacs/dired_sort.html + (interactive) + (let* ((options-alist `(("default" . "-Al --group-directories-first") + ("date" . "-Al -t") + ("size" . "-Al -S") + ("ext" . "-Al -X"))) + (choice (completing-read "Enter sorting order: " options-alist nil t nil nil + (caar options-alist)))) + (thread-last options-alist + (assoc choice) + (cdr) + (dired-sort-other)))) (defun +dired/--subdirs-not-inserted () (dired-unmark-all-marks) @@ -1817,15 +1842,42 @@ Here I setup dired with a few niceties (setq subdirs-left (+dired/--subdirs-not-inserted))))))) #+end_src *** image-dired -Image dired is a little cherry on top for Dired: the ability to look -through swathes of images in a centralised fashion while still being -able to do all the usual dired stuff as well is really cool. +Image dired is the little cherry on top for Dired: the ability to +manage loads of images with Dired movements and functionality is +really cool. #+begin_src emacs-lisp (use-package dired :defer t + :display + ("\\*image-dired\\*" + (display-buffer-reuse-mode-window display-buffer-in-side-window) + (side . bottom) + (window-height . 0.5)) + ("\\*image-dired-display-image\\*" + (display-buffer-reuse-mode-window display-buffer-in-side-window) + (side . right) + (window-width . 0.35)) :init (setq image-dired-external-viewer "nsxiv") + :config + (define-advice image-dired-display-image (:override (file &optional _ignored)) + (setq file (expand-file-name file)) + (when (not (file-exists-p file)) + (error "No such file: %s" file)) + (let ((buf (get-buffer image-dired-display-image-buffer)) + (cur-win (selected-window))) + (when buf + (kill-buffer buf)) + (when-let ((buf (find-file-noselect file nil t))) + (with-current-buffer buf + (rename-buffer image-dired-display-image-buffer) + (if (string-match (image-file-name-regexp) file) + (image-dired-image-mode) + ;; Support visiting PDF files. + (normal-mode)) + (display-buffer buf)) + (select-window cur-win)))) :general (nmmap :keymaps 'image-dired-thumbnail-mode-map @@ -1839,18 +1891,6 @@ able to do all the usual dired stuff as well is really cool. "m" #'image-dired-mark-thumb-original-file "q" #'quit-window)) #+end_src -*** fd-dired -Uses fd for finding file results in a directory: ~find-dired~ -> -~fd-dired~. - -#+begin_src emacs-lisp -(use-package fd-dired - :straight t - :after dired - :general - (dir-leader - "g" #'fd-dired)) -#+end_src *** wdired Similar to [[*(Rip)grep][wgrep]] =wdired= provides the ability to use Emacs motions and editing on file names. This @@ -2453,10 +2493,10 @@ playing. (app-leader "e" #'empv-hydra/body) :init - (setq empv-audio-dir (list (expand-file-name "~/Media/music")) - empv-video-dir (list (expand-file-name "~/Media/videos") - (expand-file-name "~/Media/anime")) - empv-playlist-dir (expand-file-name "~/Media/playlists") + (setq empv-audio-dir (list (expand-file-name "~/Media/Music")) + empv-video-dir (list (expand-file-name "~/Media/Videos") + (expand-file-name "~/Media/Anime")) + empv-playlist-dir (expand-file-name "~/Media/Playlists") empv-audio-file-extensions (list "mp3" "ogg" "wav" "m4a" "flac" "aac" "opus") empv-video-file-extensions (list "mkv" "mp4" "avi" "mov" "webm") empv-radio-channels @@ -2475,7 +2515,9 @@ hydra which provides a ton of the useful =gud= keybindings that exist in an Emacs-only map. #+begin_src emacs-lisp (use-package gud - :general + :config + (evil-set-initial-state 'gdb-disassembly-mode 'motion) + (evil-set-initial-state 'gdb-registers-mode 'motion) :after hydra :hydra (gud-hydra @@ -2512,7 +2554,7 @@ in an Emacs-only map. :column "Control Flow")) :general (code-leader "d" #'gud-hydra/body - "D" #'gud-gdb)) + "D" #'gdb)) #+end_src ** Jira #+begin_src emacs-lisp @@ -2577,7 +2619,8 @@ modes that need the help. (before-save-hook . whitespace-cleanup) ((c-mode-hook c++-mode-hook haskell-mode-hook python-mode-hook - org-mode-hook text-mode-hook js-mode-hook nasm-mode-hook) + org-mode-hook text-mode-hook js-mode-hook nasm-mode-hook + makefile-mode-hook) . whitespace-mode) :init (setq whitespace-line-column nil @@ -2874,8 +2917,7 @@ so you can actually read the text. "j" #'move-error-hydra/next-error "k" #'move-error-hydra/previous-error) (code-leader - "c" #'compile - "r" #'recompile) + "c" #'compile) (nmap "M-r" #'recompile) (:keymaps 'compilation-mode-map @@ -2985,6 +3027,22 @@ apply diffs - here I configure a small subset. "M-RET" #'diff-apply-hunk "RET" #'diff-goto-source)) #+end_src +** rmsbolt +Godbolt but in Emacs! Need I say more? + +#+begin_src emacs-lisp +(use-package rmsbolt + :straight t + :config + (defun +rmsbolt/set-compiler-cmd () + (interactive) + (setq-local rmsbolt-command + (read-string "Enter rmsbolt command: "))) + :general + (code-leader + "r" #'rmsbolt + "R" #'+rmsbolt/set-compiler-cmd)) +#+end_src * Languages Emacs comes with support for many different types of programming/markup languages. Here I configure the ones I use, as @@ -3599,7 +3657,7 @@ a regular expression which captures file names and digits (add-to-list 'compilation-error-regexp-alist-alist `(fsan ,(rx (and line-start " #" (1+ digit) " 0x" (1+ hex) " in " - (1+ (or word "_")) " " + (1+ (or word "_" ":" "(" ")")) " " (group (seq (* any) (or ".c" ".cpp" ".h" ".hpp"))) ":" (group (+ digit)))) @@ -3632,7 +3690,9 @@ programming. :keymaps 'rust-mode-map "c" #'rust-run-clippy) :init - (setq rust-format-on-save t) + (setq rust-format-on-save t + rust-format-goto-problem nil + rust-format-show-buffer nil) (with-eval-after-load "eglot" (add-to-list 'eglot-server-programs '(rust-mode "rust-analyzer")))) #+end_src @@ -4406,13 +4466,12 @@ does: gptel-response-prefix-alist '((markdown-mode . "# Response:\n") (org-mode . "* Response:\n") (text-mode . "# Response:\n")) - gptel-directives - '((default . "You are a large language model living in Emacs and a helpful assistant. Respond concisely and with justification.") - (programming . "You are a large language model and a careful programmer. Provide code and only code as output without any additional text, prompt or note.") - (writing . "You are a large language model and a writing assistant. Respond concisely.") - (chat . "You are a large language model and a conversation partner. Respond concisely.") - (networking . "You are a large language model and an experienced networking technician talking to a colleague. You have the CCNA qualification. Respond concisely and with justification."))) + gptel-model 'gpt-5-mini) :config + (gptel-make-anthropic "Claude" + :key #'gptel-api-key-from-auth-source + :stream t) + (defun gptel-auto-fill-response (beg end) "Auto-fill the text response inserted between BEG and END, skipping Org source code blocks." @@ -4722,10 +4781,13 @@ itself. The only feature left is describing changes... "j" #'undo-tree-visualize-redo "k" #'undo-tree-visualize-undo "l" #'undo-tree-visualize-switch-branch-right - "h" #'undo-tree-visualize-switch-branch-left) + "h" #'undo-tree-visualize-switch-branch-left + "q" #'undo-tree-visualizer-quit) :init (setq undo-tree-auto-save-history t undo-tree-history-directory-alist backup-directory-alist) + (with-eval-after-load "evil" + (evil-set-initial-state 'undo-tree-visualizer-mode 'normal)) :config (global-undo-tree-mode)) #+end_src @@ -4833,3 +4895,21 @@ are some movements to package that movement in one go. "M-[" (+cfg/--then-recenter-top (backward-paragraph)) "M-]" (+cfg/--then-recenter-top (forward-paragraph)))) #+end_src +** WAIT Proper paths in Emacs +:PROPERTIES: +:header-args:emacs-lisp: :tangle no :results none +:END: +Imagine you adjust your path in ZSH. This change won't necessarily +affect the results of ~(getenv "PATH")~ - you'd need to ensure Emacs +was loaded from a recent ZSH instance. This package allows you to +synchronise the PATH variable with the shell to avoid any silly +issues. + +#+begin_src emacs-lisp +(use-package exec-path-from-shell + :straight t + :demand t + :config + (when (member window-system '(mac ns x)) + (exec-path-from-shell-initialize))) +#+end_src diff --git a/Emacs/.config/emacs/elisp/better-mode-line.el b/Emacs/.config/emacs/elisp/better-mode-line.el index 31281ee..bc9484c 100644 --- a/Emacs/.config/emacs/elisp/better-mode-line.el +++ b/Emacs/.config/emacs/elisp/better-mode-line.el @@ -39,24 +39,23 @@ "Minimum size of padding string.") (defun bml/--get-padding-size (other-size) - "Compute length of padding to ensure string of size OTHER is on an + "Compute length of padding to ensure string of size OTHER-SIZE is on an extreme end to CENTRE-SEGMENT." - (let* ((centre-size (length (format-mode-line bml/centre-segment))) - (win-width (window-width)) - (margins (window-margins)) - (width (if (null (car margins)) - win-width - (+ (car margins) win-width (cdr margins))))) - (floor (- (/ width 2) (/ centre-size 2) other-size)))) + (let ((centre-size (length (format-mode-line bml/centre-segment))) + (window-width ;; compute total width of window (including margins) + (thread-last (cons (window-width) (window-margins)) + (mapcar (lambda (x) (if (null x) 0 x))) + (cl-reduce #'+)))) + (floor (- (/ window-width 2) (/ centre-size 2) other-size)))) (defun bml/--generate-padding (segment) "Make padding string to separate center segment from SEGMENT." (let* ((segment-size (length (format-mode-line segment))) (padding-size (bml/--get-padding-size segment-size))) - (make-string (min padding-size bml/--minimum-padding) ?\s))) + (make-string (max padding-size bml/--minimum-padding) ?\s))) (defun bml/setup-mode-line () - "Call this to setup the mode-line when: + "Call this to setup the mode-line when either: - first loading the package. - segments are updated." (setq-default mode-line-format diff --git a/Emacs/.config/emacs/elisp/eshell-additions.el b/Emacs/.config/emacs/elisp/eshell-additions.el index 479a19b..d599ab9 100644 --- a/Emacs/.config/emacs/elisp/eshell-additions.el +++ b/Emacs/.config/emacs/elisp/eshell-additions.el @@ -53,16 +53,29 @@ (find-file name)))) (defun eshell/project-root (&rest args) - "Change to directory `project-root'" - (cond - ((project-current) - (eshell-goto-latest-prompt) - (eshell/cd (list (project-root (project-current))))) - (t - (setq eshell-last-command-status 1) - (eshell/echo - (format "[%s]: No project in current directory" - (propertize "Error" 'font-lock-face '(:foreground "red"))))))) + "Change to directory of `project-root', if current working directory is +in a project." + (eshell-eval-using-options + "project-root" + args + '((?h "help" nil nil "show usage") + :usage " + +Go to the root of the project which the current working directory is a +member of. If the current working directory is not in a valid project, +an error is produced.") + (cond + ((project-current) + (eshell-goto-latest-prompt) + (thread-last (project-current) + (project-root) + (list) + (eshell/cd))) + (t + (setq eshell-last-command-status 1) + (thread-last (propertize "Error" 'font-lock-face '(:foreground "red")) + (format "[%s]: No project in current directory") + (eshell/echo)))))) (defun eshell/sudo-switch (&rest args) "Switch to and from administrative (sudo) mode in Eshell. diff --git a/Emacs/.config/emacs/straight/versions/default.el b/Emacs/.config/emacs/straight/versions/default.el index bf20520..a7109df 100644 --- a/Emacs/.config/emacs/straight/versions/default.el +++ b/Emacs/.config/emacs/straight/versions/default.el @@ -1,4 +1,5 @@ (("Emacs-wgrep" . "3132abd3750b8c87cbcf6942db952acfab5edccd") + ("Tidal" . "fefb1c364af42be265e9f02477d6d2d8fb2ec2b9") ("ace-link" . "06ab398df85e81d1dc763b3210732dd26cba60a1") ("ace-window" . "77115afc1b0b9f633084cf7479c767988106c196") ("aggressive-indent-mode" . "a437a45868f94b77362c6b913c5ee8e67b273c42") @@ -50,6 +51,7 @@ ("goto-chg" . "278cd3e6d5107693aa2bb33189ca503f22f227d0") ("gptel" . "8a39875973a97c1e4aa53edf27407e8c0daaae5e") ("guile" . "a0f111f8dedd31c593c4ed12c0b99745f3c1340f") + ("haskell-mode" . "383b4b77753ef83420c7a755f86e1ec4770f551b") ("helpful" . "4ba24cac9fb14d5fdc32582cd947572040e82b2c") ("hl-todo" . "0faf8569b67f5b23891416d9e7a67e3843338f2a") ("htmlize" . "c9a8196a59973fabb3763b28069af9a4822a5260") @@ -78,6 +80,7 @@ ("queue" . "130c2d656cd5d7376552272fab9e50a7c37d0c4a") ("rainbow-delimiters" . "f40ece58df8b2f0fb6c8576b527755a552a5e763") ("rg.el" . "e9dc4ed342e0212d08fb82554dfd3c57fdfa5b1a") + ("rmsbolt" . "05c4795226f859009bc570940139473b6b6f7555") ("rust-mode" . "9915b3a585a7a75e9126df9e0e9d1df8057ae3cf") ("s.el" . "dda84d38fffdaf0c9b12837b504b402af910d01d") ("separedit.el" . "bfd0902d771f9f0160e4f16a7b6e8c29ce3447fe") diff --git a/NeoVim/.config/nvim/lazy-lock.json b/NeoVim/.config/nvim/lazy-lock.json index 76468a7..c1cf99b 100644 --- a/NeoVim/.config/nvim/lazy-lock.json +++ b/NeoVim/.config/nvim/lazy-lock.json @@ -1,7 +1,7 @@ { "NeoSolarized": { "branch": "master", "commit": "b94b1a9ad51e2de015266f10fdc6e142f97bd617" }, - "lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" }, + "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, - "telescope.nvim": { "branch": "master", "commit": "e69b434b968a33815e2f02a5c7bd7b8dd4c7d4b2" }, + "telescope.nvim": { "branch": "master", "commit": "ad7d9580338354ccc136e5b8f0aa4f880434dcdc" }, "vim-tmux-navigator": { "branch": "master", "commit": "c45243dc1f32ac6bcf6068e5300f3b2b237e576a" } } diff --git a/Shell/.zprofile b/Shell/.zprofile index c2b2ab7..251b701 100644 --- a/Shell/.zprofile +++ b/Shell/.zprofile @@ -24,7 +24,7 @@ export SSH_AUTH_SOCK="${XDG_RUNTIME_DIR}/ssh-agent.socket" sh /etc/profile.d/debuginfod.sh # Import useful variables to systemd -systemctl --user import-environment PATH SSH_AUTH_SOCK EDITOR +systemctl --user import-environment PATH SSH_AUTH_SOCK EDITOR DEBUGINFOD_URLS # Run some programs echo "Welcome to..." diff --git a/XServer/.xinitrc b/XServer/.xinitrc index 6a47261..1e8fcb5 100755 --- a/XServer/.xinitrc +++ b/XServer/.xinitrc @@ -3,16 +3,16 @@ killall sxhkd; sh .xprofile; -screentimer on; +$HOME/.local/scripts/screentimer on; xrandr --output HDMI1 --auto --mode 1920x1080 --left-of eDP1; xrandr --output eDP1 --auto --mode 1920x1080; xrandr --output HDMI-0 --auto --mode 1920x1080 --right-of HDMI-1-1; xrandr --output HDMI-1-1 --auto --mode 1920x1080 --left-of HDMI-0; +$(xss-lock --transfer-sleep-lock -- $HOME/.local/scripts/lock) & sxhkd & dunst & -$(xss-lock --transfer-sleep-lock -- $HOME/.local/scripts/lock) & dwmblocks & # $HOME/.local/scripts/compositor & $HOME/.local/scripts/background & diff --git a/aspell/.aspell.en.pws b/aspell/.aspell.en.pws index 9408e28..eb38c74 100644 --- a/aspell/.aspell.en.pws +++ b/aspell/.aspell.en.pws @@ -1,4 +1,4 @@ -personal_ws-1.1 en 190 +personal_ws-1.1 en 192 Architecting Aryadev Automorphism @@ -53,6 +53,7 @@ artifacting artifacts automorphism automorphisms +behoove biconnected bijection bijections @@ -184,6 +185,7 @@ undealt undebatable undirected unipotent +unoptimised variadic vectorisation verifier diff --git a/gdb/.gdbinit b/gdb/.gdbinit new file mode 100644 index 0000000..9422460 --- /dev/null +++ b/gdb/.gdbinit @@ -0,0 +1 @@ +set disassembly-flavor intel