Emacs updates and improvements

This commit is contained in:
Emmet
2025-07-29 15:54:01 -05:00
parent 3734ba792c
commit f1a64aa937
4 changed files with 93 additions and 2 deletions

View File

@ -0,0 +1 @@
# Scratchpad

View File

@ -64,6 +64,54 @@ in {
};
}
) {})
(epkgs.callPackage (
{ lib, fetchurl, trivialBuild }:
trivialBuild {
pname = "lsp-treemacs-nerd-icons";
version = "2efa09a-unstable";
src = builtins.fetchGit {
url = "https://github.com/Velnbur/lsp-treemacs-nerd-icons.git";
rev = "2efa09a701b8b455bfb66529454f27c30f7462dc";
ref = "master";
};
buildInputs = with pkgs.emacsPackages; [
lsp-treemacs
treemacs
nerd-icons
];
meta = with lib; {
description = "Use nerd icons for lsp-mode and lsp-treemacs";
homepage = "https://github.com/Velnbur/lsp-treemacs-nerd-icons";
license = licenses.gpl3;
platforms = platforms.all;
};
}
) {})
(epkgs.callPackage (
{ lib, fetchurl, trivialBuild }:
trivialBuild {
pname = "scratch-plus";
version = "2efa09a-unstable";
src = builtins.fetchGit {
url = "https://git.sr.ht/~swflint/scratch-plus";
rev = "b794901f968000f6e338808307385b683b79ec8b";
ref = "main";
};
meta = with lib; {
description = "Better scratch buffers";
homepage = "https://git.sr.ht/~swflint/scratch-plus";
license = licenses.gpl3;
platforms = platforms.all;
};
}
) {})
];
})
fira-code

View File

@ -25,6 +25,9 @@
(use-package emacs
:defer t
:config
;; Org mode scratch buffers
(setq initial-major-mode 'org-mode)
;; No startup screen
(setq inhibit-startup-message t)
@ -146,7 +149,7 @@
(use-package line-wrapping-and-numbers
:load-path "lib/"
:after (org git-timemachine nix-mode))
:after (org git-timemachine nix-mode treemacs))
(use-package ultra-scroll
:init
@ -233,7 +236,16 @@
(evil-define-key 'motion 'global (kbd "j") 'evil-next-visual-line)
(evil-define-key 'motion 'global (kbd "k") 'evil-previous-visual-line)
(defun scratch-plus-toggle ()
(interactive)
(if (projectile-project-p)
(progn
(select-window (scratch-plus-switch-project nil)))
(progn
(select-window (scratch-plus-switch nil)))))
;; File and buffer keybinds
(evil-define-key 'motion 'global (kbd "<leader>x") 'scratch-plus-toggle)
(evil-define-key 'motion 'global (kbd "<leader>.") 'find-file)
(evil-define-key 'motion 'global (kbd "<leader>bi") 'ibuffer)
(evil-define-key 'motion 'global (kbd "<leader>bd") 'evil-delete-buffer)
@ -297,6 +309,9 @@
(evil-define-key 'motion 'global (kbd "<leader>wh") 'evil-window-left)
(evil-define-key 'motion 'global (kbd "<leader>wl") 'evil-window-right)
(evil-define-key 'motion scratch-plus-minor-mode-map (kbd "q") 'quit-window)
(evil-define-key 'normal scratch-plus-minor-mode-map (kbd "q") 'quit-window)
(evil-define-key 'insert org-mode-map (kbd "<C-return>") '+org/insert-item-below)
(evil-define-key 'insert org-mode-map (kbd "<C-S-return>") '+org/insert-item-above)
(evil-define-key 'motion org-mode-map (kbd "<C-return>") '+org/insert-item-below)
@ -361,8 +376,11 @@
:after (lsp-mode))
(use-package lsp-ui :commands lsp-ui-mode)
(use-package lsp-treemacs
:after (evil)
:custom
(lsp-treemacs-theme "nerd-icons-ext")
:config
(evil-define-key 'normal 'global (kbd "<leader>os") 'lsp-treemacs-symbols))
@ -414,6 +432,11 @@
:config
(treemacs-load-theme "nerd-icons"))
(use-package lsp-treemacs-nerd-icons
:after (lsp-treemacs)
:init (with-eval-after-load 'lsp-treemacs
(require 'lsp-treemacs-nerd-icons)))
(use-package nerd-icons-dired
:after (nerd-icons dired)
:config
@ -995,7 +1018,19 @@ Made for `org-tab-first-hook' in evil-mode."
(evil-define-key 'insert 'global (kbd "M-z") 'vterm-toggle-cd-force)
(evil-define-key 'motion vterm-mode-map (kbd "M-z") 'vterm-toggle-hide)
(evil-define-key 'insert vterm-mode-map (kbd "M-z") 'vterm-toggle-hide)
)
)
(use-package scratch-plus
:custom
(initial-major-mode 'org-mode)
(scratch-plus-save-directory (file-truename "~/.config/emacs/scratch"))
(scratch-plus-project-subdir ".scratch")
(scratch-plus-restore-type 'demand)
(scratch-plus-force-restore t)
(scratch-plus-idle-save 2)
(scratch-plus-initial-message "Scratchpad")
:init
(add-hook 'after-init-hook #'scratch-plus-mode))
(provide 'init)
;;; init.el ends here

View File

@ -27,9 +27,16 @@
(setq-local truncate-lines t)
(setq visual-line-mode nil)
(display-line-numbers-mode 1))
(defun activate-coding-lines-without-numbers ()
"Truncate lines in current buffer."
(interactive)
(setq-local truncate-lines t)
(setq visual-line-mode nil)
(display-line-numbers-mode 0))
(add-hook 'org-mode-hook 'activate-writing-lines)
(add-hook 'markdown-mode-hook 'activate-writing-lines)
(add-hook 'prog-mode-hook 'activate-coding-lines)
(add-hook 'treemacs-mode-hook 'activate-coding-lines-without-numbers)
(defun apply-proper-line-wrapping ()
"Apply proper line wrapping and visual line mode
settings according to whether or not the current