From b3dbe2982e9219d25a38e875da070d421ef418e1 Mon Sep 17 00:00:00 2001 From: jjanzen Date: Wed, 8 Jan 2025 11:39:36 -0600 Subject: system changes --- common/.config/emacs/force-custom-file.el.org | 8 - common/.config/emacs/languages.el.org | 188 ---------- common/.config/emacs/package-setup.el.org | 36 -- common/.config/emacs/tools.el.org | 388 --------------------- common/.config/emacs/user-interface.el.org | 120 ------- common/.flake/home/programs/alacritty.nix.org | 68 ---- .../home/programs/emacs/force-custom-file.el.org | 1 - common/.flake/home/programs/emacs/languages.el.org | 1 - .../home/programs/emacs/package-setup.el.org | 1 - common/.flake/home/programs/emacs/tools.el.org | 1 - .../home/programs/emacs/user-interface.el.org | 1 - 11 files changed, 813 deletions(-) delete mode 100644 common/.config/emacs/force-custom-file.el.org delete mode 100644 common/.config/emacs/languages.el.org delete mode 100644 common/.config/emacs/package-setup.el.org delete mode 100644 common/.config/emacs/tools.el.org delete mode 100644 common/.config/emacs/user-interface.el.org delete mode 100644 common/.flake/home/programs/alacritty.nix.org delete mode 120000 common/.flake/home/programs/emacs/force-custom-file.el.org delete mode 120000 common/.flake/home/programs/emacs/languages.el.org delete mode 120000 common/.flake/home/programs/emacs/package-setup.el.org delete mode 120000 common/.flake/home/programs/emacs/tools.el.org delete mode 120000 common/.flake/home/programs/emacs/user-interface.el.org (limited to 'common') diff --git a/common/.config/emacs/force-custom-file.el.org b/common/.config/emacs/force-custom-file.el.org deleted file mode 100644 index 8b8a418..0000000 --- a/common/.config/emacs/force-custom-file.el.org +++ /dev/null @@ -1,8 +0,0 @@ -#+title: Emacs Force the Usage of a =custom.el= File - -Force the usage of a =custom.el= file for customizations instead of placing them in =init.el=. -#+begin_src emacs-lisp :tangle ~/.config/emacs/force-custom-file.el :mkdirp yes - (setq custom-file (concat user-emacs-directory "custom.el")) - (when (file-exists-p custom-file) - (load custom-file)) -#+end_src diff --git a/common/.config/emacs/languages.el.org b/common/.config/emacs/languages.el.org deleted file mode 100644 index bb84ff5..0000000 --- a/common/.config/emacs/languages.el.org +++ /dev/null @@ -1,188 +0,0 @@ -#+title: Emacs Programming Language Setup - -* Shell Script -Run =eglot= on shell script files. -#+begin_src emacs-lisp - (add-hook 'sh-mode-hook 'jj/eglot-setup) -#+end_src - -* C -Run =eglot= on C and C++ files. -#+begin_src emacs-lisp - (add-hook 'c-mode-hook 'jj/eglot-setup) - (add-hook 'c++-mode-hook 'jj/eglot-setup) - (add-hook 'cc-mode-hook 'jj/eglot-setup) -#+end_src - -Run =eglot= on CMake files. -#+begin_src emacs-lisp - (use-package cmake-mode - :init - (add-hook 'cmake-mode-hook 'jj/eglot-setup)) -#+end_src - -Turn off C mode in =lex= and =yacc= files. -#+begin_src emacs-lisp - (add-to-list 'auto-mode-alist '("\\.l$" . prog-mode)) - (add-to-list 'auto-mode-alist '("\\.y$" . prog-mode)) -#+end_src - -* Web -Run =eglot= on HTML files. -#+begin_src emacs-lisp - (add-hook 'html-mode-hook 'jj/eglot-setup) -#+end_src - -Run =eglot= on CSS files. -#+begin_src emacs-lisp - (add-hook 'css-mode-hook 'jj/eglot-setup) -#+end_src - -Run =eglot= on JavaScript files. -#+begin_src emacs-lisp - (add-hook 'js-json-mode-hook 'jj/eglot-setup) - (add-hook 'js-mode-hook 'jj/eglot-setup) -#+end_src - -* Python -Run =eglot= on Python files. -#+begin_src emacs-lisp - (add-hook 'python-mode-hook 'jj/eglot-setup) -#+end_src - -* Go -Install Go support and run =eglot= on Go files. -#+begin_src emacs-lisp - (use-package go-mode - :init - (add-hook 'go-mode-hook 'jj/eglot-setup)) -#+end_src - -Get documentation for Go variables, functions, and arguments. -#+begin_src emacs-lisp - (use-package go-eldoc - :init - (add-hook 'go-mode-hook 'go-eldoc-setup)) -#+end_src - -Automatically generate tests in Go. -#+begin_src emacs-lisp - (use-package go-gen-test) -#+end_src - -Get refactoring tools from =go-guru=. -#+begin_src emacs-lisp - (use-package go-guru - :hook (go-mode . go-guru-hl-identifier-mode)) -#+end_src - -* Lua -Install Lua support and run =eglot= on Lua files. -#+begin_src emacs-lisp - (use-package lua-mode - :init - (add-hook 'lua-mode-hook 'jj/eglot-setup)) -#+end_src - -Better parentheses handling in lisp with =parinfer-rust-mode=. -#+begin_src emacs-lisp - (use-package parinfer-rust-mode - :hook (emacs-lisp-mode . parinfer-rust-mode) - :init - (setq parinfer-rust-auto-download t)) -#+end_src - -* Markdown -Install Markdown support and run =eglot= on Markdown files. -#+begin_src emacs-lisp - (use-package markdown-mode - :init - (add-hook 'markdown-mode-hook 'jj/eglot-setup)) - (add-hook 'markdown-mode-hook 'variable-pitch-mode) - (custom-set-faces - `(variable-pitch ((t :font ,jj/var-font))) - `(fixed-pitch ((t :font ,jj/mono-font))) - '(markdown-header-face ((t (:inherit variable-pitch :weight bold)))) - '(markdown-header-face-1 ((t (:inherit markdown-header-face :height 2.0)))) - '(markdown-header-face-2 ((t (:inherit markdown-header-face :height 1.75)))) - '(markdown-header-face-3 ((t (:inherit markdown-header-face :height 1.5)))) - '(markdown-header-face-4 ((t (:inherit markdown-header-face :height 1.25)))) - '(markdown-header-face-5 ((t (:inherit markdown-header-face :height 1.1)))) - '(markdown-header-face-6 ((t (:inherit markdown-header-face :height 1.1)))) - '(markdown-blockquote-face ((t (:inherit fixed-pitch)))) - '(markdown-code-face ((t (:inherit fixed-pitch)))) - '(markdown-html-attr-name-face ((t (:inherit fixed-pitch)))) - '(markdown-html-attr-value-face ((t (:inherit fixed-pitch)))) - '(markdown-html-entity-face ((t (:inherit fixed-pitch)))) - '(markdown-html-tag-delimiter-face ((t (:inherit fixed-pitch)))) - '(markdown-html-tag-name-face ((t (:inherit fixed-pitch)))) - '(markdown-comment-face ((t (:inherit fixed-pitch)))) - '(markdown-header-delimiter-face ((t (:inherit fixed-pitch)))) - '(markdown-hr-face ((t (:inherit fixed-pitch)))) - '(markdown-inline-code-face ((t (:inherit fixed-pitch)))) - '(markdown-language-info-face ((t (:inherit fixed-pitch)))) - '(markdown-language-keyword-face ((t (:inherit fixed-pitch)))) - '(markdown-link-face ((t (:inherit fixed-pitch)))) - '(markdown-markup-face ((t (:inherit fixed-pitch)))) - '(markdown-math-face ((t (:inherit fixed-pitch)))) - '(markdown-metadata-key-face ((t (:inherit fixed-pitch)))) - '(markdown-metadata-value-face ((t (:inherit fixed-pitch)))) - '(markdown-missing-link-face ((t (:inherit fixed-pitch)))) - '(markdown-plain-url-face ((t (:inherit fixed-pitch)))) - '(markdown-reference-face ((t (:inherit fixed-pitch)))) - '(markdown-table-face ((t (:inherit fixed-pitch)))) - '(markdown-url-face ((t (:inherit fixed-pitch))))) - (add-hook 'markdown-mode-hook 'visual-line-mode) - (add-hook 'markdown-mode-hook #'(lambda () (display-line-numbers-mode -1))) - (defun jj/markdown-mode-visual-fill () - (setq visual-fill-column-width 100 - visual-fill-column-center-text t) - (visual-fill-column-mode 1)) - (add-hook 'markdown-mode-hook #'jj/markdown-mode-visual-fill) - (setq markdown-hide-markup t) -#+end_src - -* LaTeX -Run =eglot= on TeX files. -#+begin_src emacs-lisp - (add-hook 'tex-mode-hook 'jj/eglot-setup) -#+end_src - -Use AUCTeX for extra LaTeX integration. -#+begin_src emacs-lisp - (use-package auctex - :config - (add-hook 'LaTeX-mode-hook 'jj/eglot-setup) - (add-hook 'LaTeX-mode-hook - (lambda () - (put 'LaTeX-mode 'eglot-language-id "latex")))) -#+end_src - -Use CDLaTeX for environment and macro insertion. -#+begin_src emacs-lisp - (use-package cdlatex - :config - (add-hook 'LaTeX-mode-hook #'turn-on-cdlatex)) -#+end_src - -Use =latex-preview-pane= to see the PDF automatically. -#+begin_src emacs-lisp - (use-package latex-preview-pane - :config - (latex-preview-pane-enable)) -#+end_src - -* YAML -Install YAML support and run =eglot= on YAML files. -#+begin_src emacs-lisp - (use-package yaml-mode - :init - (add-hook 'yaml-mode-hook 'jj/eglot-setup)) -#+end_src - -* Nix -Install =nix= support and run =eglot= on =nix= files. -#+begin_src emacs-lisp - (use-package nix-mode - :mode "\\.nix\\'") -#+end_src diff --git a/common/.config/emacs/package-setup.el.org b/common/.config/emacs/package-setup.el.org deleted file mode 100644 index fa15a44..0000000 --- a/common/.config/emacs/package-setup.el.org +++ /dev/null @@ -1,36 +0,0 @@ -#+title: Emacs Package Setup -Install =straight= for better package management. -#+begin_src emacs-lisp :tangle ~/.config/emacs/package-setup.el :mkdirp yes - (defun set-exec-path-from-shell-PATH () - (interactive) - (let ((path-from-shell (replace-regexp-in-string - "[ \t\n]*$" "" (shell-command-to-string - "$SHELL --login -c 'echo $PATH'")))) - - (setenv "PATH" path-from-shell) - (setq exec-path (split-string path-from-shell path-separator)))) - - (set-exec-path-from-shell-PATH) - (setq native-comp-async-report-warnings-errors 'silent) - (defvar bootstrap-version) - (let ((bootstrap-file - (expand-file-name - "straight/repos/straight.el/bootstrap.el" - (or (bound-and-true-p straight-base-dir) - user-emacs-directory))) - (bootstrap-version 7)) - (unless (file-exists-p bootstrap-file) - (with-current-buffer - (url-retrieve-synchronously - "https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el" - 'silent 'inhibit-cookies) - (goto-char (point-max)) - (eval-print-last-sexp))) - (load bootstrap-file nil 'nomessage)) -#+end_src - -Install =use-package= for declarative package installation. Make =use-package= default to =ensure t= so that packages are enabled if they are declared. -#+begin_src emacs-lisp :tangle ~/.config/emacs/package-setup.el :mkdirp yes - (straight-use-package 'use-package) - (setq straight-use-package-by-default t) -#+end_src diff --git a/common/.config/emacs/tools.el.org b/common/.config/emacs/tools.el.org deleted file mode 100644 index 8c5b001..0000000 --- a/common/.config/emacs/tools.el.org +++ /dev/null @@ -1,388 +0,0 @@ -#+title: Emacs Tool Setup - -* Lookup -Better lookup with =dumb-jump=. -#+begin_src emacs-lisp - (use-package dumb-jump - :init (add-hook 'xref-backend-functions #'dumb-jump-xref-activate)) -#+end_src - -* Version Control -Install Magit for Git integration. -#+begin_src emacs-lisp - (use-package magit) -#+end_src - -* Remote Editing -#+begin_src emacs-lisp -(setq tramp-default-method "ssh") -#+end_src - -* Fuzzy Finder -#+begin_src emacs-lisp - (use-package fzf - :bind - ("C-c C-f" . fzf) - :config - (setq fzf/args "-x --color 16 --print-query --margin=1,0 --no-hscroll" - fzf/executable "fzf" - fzf/git-grep-args "-i --line-number %s" - fzf/grep-command "grep -nrH" - fzf/position-bottom nil - fzf/window-height 15)) -#+end_src - -* Document Viewing -Replace =DocView= with a better document viewer from =pdf-tools=. -#+begin_src emacs-lisp - (use-package pdf-tools - :config - (pdf-tools-install) - :init - (add-hook 'pdf-view-mode-hook #'(lambda () (display-line-numbers-mode -1))) - (add-hook 'TeX-after-compilation-finished-functions - #'TeX-revert-document-buffer) - :config - (setq TeX-view-program-selection '((output-pdf "PDF Tools")) - TeX-view-program-list '(("PDF Tools" TeX-pdf-tools-sync-view)) - TeX-source-correlate-start-server t)) -#+end_src - -Save place in PDFs with =saveplace-pdf-view=. -#+begin_src emacs-lisp - (use-package saveplace-pdf-view - :config (save-place-mode 1)) -#+end_src - -* Org-Mode -Ensure that =org= is set up before any of this. -#+begin_src emacs-lisp - (use-package org) -#+end_src -Set my =org-mode= directory. -#+begin_src emacs-lisp - (setq org-directory "~/org") -#+end_src - -Hide emphasis markers because I can see if something is *bold*, /italic/, or =monospace= without needing to see the markers. -#+begin_src emacs-lisp - (setq org-hide-emphasis-markers t) -#+end_src - -Set up nicer looking bullet points. -- they look like circles -- instead of hyphens -#+begin_src emacs-lisp - (font-lock-add-keywords 'org-mode - '(("^ *\\([-]\\) " - (0 (prog1 () (compose-region (match-beginning 1) (match-end 1) "•")))))) -#+end_src - -Set up fonts. Don't use =monospace= by default. Do use it where necessary though. Also, make different heading levels different sizes. -#+begin_src emacs-lisp - (add-hook 'org-mode-hook 'variable-pitch-mode) - (custom-set-faces - `(variable-pitch ((t :font ,jj/var-font))) - `(fixed-pitch ((t :font ,jj/mono-font))) - '(org-block ((t (:inherit fixed-pitch)))) - '(org-code ((t (:inherit (shadow fixed-pitch))))) - '(org-document-info-keyword ((t (:inherit (shadow fixed-pitch))))) - '(org-meta-line ((t (:inherit (font-lock-comment-face fixed-pitch))))) - '(org-verbatim ((t (:inherit (shadow fixed-pitch))))) - '(org-table ((t (:inherit (shadow fixed-pitch))))) - '(org-document-title ((t (:inherit title :height 2.0 :underline nil)))) - '(org-level-1 ((t (:inherit outline-1 :weight: bold :height 1.75)))) - '(org-level-2 ((t (:inherit outline-2 :weight: bold :height 1.5)))) - '(org-level-2 ((t (:inherit outline-3 :weight: bold :height 1.25)))) - '(org-level-2 ((t (:inherit outline-4 :weight: bold :height 1.1)))) - '(org-level-4 ((t (:inherit outline-4 :height 1.1)))) - '(org-level-5 ((t (:inherit outline-5 :height 1.0)))) - ) -#+end_src - -Wrap lines and centre the view to make for a nicer reading experience. -#+begin_src emacs-lisp - (use-package visual-fill-column) - (add-hook 'org-mode-hook 'visual-line-mode) - (add-hook 'org-mode-hook #'(lambda () (display-line-numbers-mode -1))) - (defun jj/org-mode-visual-fill () - (setq visual-fill-column-width 100 - visual-fill-column-center-text t) - (visual-fill-column-mode 1)) - (add-hook 'org-mode-hook #'jj/org-mode-visual-fill) -#+end_src - -Increase the size of LaTeX previews. -#+begin_src emacs-lisp - (setq org-format-latex-options (plist-put org-format-latex-options :scale 2.0)) -#+end_src - -Follow links with the return key. -#+begin_src emacs-lisp - (setq org-return-follows-link t) -#+end_src - -Enable Org Crypt. -#+begin_src emacs-lisp - (org-crypt-use-before-save-magic) - (setq org-tags-exclude-from-inheritance '("crypt")) - (setq org-crypt-key nil) - (setq auto-save-default nil) -#+end_src - -* Shell -Use =eshell= as an integrated shell. -#+begin_src emacs-lisp - (use-package eshell) - (global-set-key (kbd "C-c e") 'eshell) -#+end_src - -Use =vterm= when it works better than =eshell=. -#+begin_src emacs-lisp - (use-package vterm) - (global-set-key (kbd "C-c v") 'vterm) -#+end_src - -* Language Servers -Add =eglot= keybindings. -#+begin_src emacs-lisp - (global-set-key (kbd "C-c r") 'eglot-rename) - (global-set-key (kbd "C-c a") 'eglot-code-actions) -#+end_src - -Install =tree-sitter=. -#+begin_src emacs-lisp - (use-package tree-sitter) - (use-package tree-sitter-langs) -#+end_src - -Define function to set up =eglot= automatically. -#+begin_src emacs-lisp - (defun jj/eglot-setup () - (eglot-ensure) - (tree-sitter-mode 1) - (tree-sitter-hl-mode 1)) -#+end_src - -* Completions -Use company for completions with no delay, starting immediately after first character is typed. -#+begin_src emacs-lisp - (use-package company - :config - (add-hook 'after-init-hook 'global-company-mode) - (setq company-idle-delay 0 - company-minimum-prefix-length 1 - company-selection-wrap-around t)) -#+end_src - -Use =vertico= as a completion user interface. -#+begin_src emacs-lisp - (use-package vertico - :custom - (vertico-cycle t) - :init - (vertico-mode)) -#+end_src - -Use =orderless= to allow typing any portion of a word that you want to search for. -#+begin_src emacs-lisp - (use-package orderless - :ensure t - :custom - (completion-styles '(orderless basic)) - (completion-category-overrides '((file (styles basic partial-completion))))) -#+end_src - -Get descriptions of items in =vertico= with =marginalia=. -#+begin_src emacs-lisp - (use-package marginalia - :bind (:map minibuffer-local-map - ("M-A" . marginalia-cycle)) - :init - (marginalia-mode)) -#+end_src - -Get nerd font icons in completions. -#+begin_src emacs-lisp - (use-package nerd-icons-completion - :config - (nerd-icons-completion-mode)) -#+end_src - -Use consult with =vertico= for extra functionality to various functions. -#+begin_src emacs-lisp - (use-package consult - :bind ( - ("C-c M-x" . consult-mode-command) - ("C-c h" . consult-history) - ("C-c k" . consult-kmacro) - ("C-c m" . consult-man) - ("C-c i" . consult-info) - ([remap Info-search] . consult-info) - ("C-x M-:" . consult-complex-command) - ("C-x b" . consult-buffer) - ("C-x 4 b" . consult-buffer-other-window) - ("C-x 5 b" . consult-buffer-other-frame) - ("C-x t b" . consult-buffer-other-tab) - ("C-x r b" . consult-bookmark) - ("C-x p b" . consult-project-buffer) - ("M-#" . consult-register-load) - ("M-'" . consult-register-store) - ("C-M-#" . consult-register) - ("M-y" . consult-yank-pop) - ("M-g e" . consult-compile-error) - ("M-g f" . consult-flycheck) - ("M-g g" . consult-goto-line) - ("M-g M-g" . consult-goto-line) - ("M-g o" . consult-outline) - ("M-g m" . consult-mark) - ("M-g k" . consult-global-mark) - ("M-g i" . consult-imenu) - ("M-g I" . consult-imenu-multi) - ("M-s d" . consult-fd) - ("M-s c" . consult-locate) - ("M-s g" . consult-grep) - ("M-s G" . consult-git-grep) - ("M-s r" . consult-ripgrep) - ("M-s l" . consult-line) - ("M-s L" . consult-line-multi) - ("M-s k" . consult-keep-lines) - ("M-s u" . consult-focus-lines) - ("M-s e" . consult-isearch-history) - :map isearch-mode-map - ("M-e" . consult-isearch-history) - ("M-s e" . consult-isearch-history) - ("M-s l" . consult-line) - ("M-s L" . consult-line-multi) - :map minibuffer-local-map - ("M-s" . consult-history) - ("M-r" . consult-history)) - :hook (completion-list-mode . consult-preview-at-point-mode) - :init - (setq register-preview-delay 0.5 - register-preview-function #'consult-register-format) - (advice-add #'register-preview :override #'consult-register-window) - (setq xref-show-xrefs-function #'consult-xref - xref-show-definitions-function #'consult-xref) - :config - (consult-customize - consult-theme :preview-key '(:debounce 0.2 any) - consult-ripgrep consult-git-grep consult-grep - consult-bookmark consult-recent-file consult-xref - consult--source-bookmark consult--source-file-register - consult--source-recent-file consult--source-project-recent-file - :preview-key '(:debounce 0.4 any)) - (setq consult-narrow-key "<")) -#+end_src - -Use Flycheck for syntax checking. -#+begin_src emacs-lisp - (use-package flycheck - :config - (add-hook 'after-init-hook #'global-flycheck-mode)) -#+end_src - -Use Flyspell for spell checking. -#+begin_src emacs-lisp - (dolist (hook '(text-mode-hook)) - (add-hook hook (lambda () (flyspell-mode 1)))) - (use-package flyspell-correct - :after flyspell - :bind (:map flyspell-mode-map ("C-;" . flyspell-correct-wrapper))) -#+end_src - -* Snippets -Use =yasnippet= for snippets so I don't need to type as much. -#+begin_src emacs-lisp - (use-package yasnippet - :init - (yas-global-mode 1) - :config - (global-set-key (kbd "C-c s") 'yas-insert-snippet)) -#+end_src - -Install snippet collection for =yasnippet=. -#+begin_src emacs-lisp - (use-package yasnippet-snippets) -#+end_src - -* Formatting -Automatically format with Apheleia and =clang-format=. -#+begin_src emacs-lisp - (use-package apheleia - :init (apheleia-global-mode +1)) - (use-package clang-format) -#+end_src - -* RSS -Use Emacs as an RSS feed with =elfeed=. -#+begin_src emacs-lisp - (use-package elfeed - :config - (global-set-key (kbd "C-c f") 'elfeed) - (global-set-key (kbd "C-c M-f") 'elfeed-update)) -#+end_src - -Make =elfeed= more powerful with =elfeed-goodies=. -#+begin_src emacs-lisp - (use-package elfeed-goodies - :after elfeed - :config - (elfeed-goodies/setup)) -#+end_src - -Store my feed in Org-mode [[./feed.org][here]]. -#+begin_src emacs-lisp - (use-package elfeed-org - :config - (elfeed-org) - (setq rmh-elfeed-org-files (list "~/.config/emacs/feed.org"))) -#+end_src - -Style =elfeed-show-mode=. -#+begin_src emacs-lisp - (add-hook 'elfeed-show-mode-hook 'visual-line-mode) - (add-hook 'elfeed-show-mode-hook #'(lambda () (display-line-numbers-mode -1))) - (defun jj/elfeed-show-mode-visual-fill () - (setq visual-fill-column-width 100 - visual-fill-column-center-text t) - (visual-fill-column-mode 1)) - (add-hook 'elfeed-show-mode-hook #'jj/elfeed-show-mode-visual-fill) - (use-package unfill - :config - (defun jj/unfill-buffer () - (interactive) - (goto-char (point-min)) - (while (not (eobp)) - (condition-case ex (unfill-paragraph) - (error - (message "Skipping Paragraph: %s" ex))) - (forward-paragraph)))) - (add-hook 'elfeed-show-mode-hook #'jj/unfill-buffer) -#+end_src - -* Deft -Use the Deft package to manage notes. -#+begin_src emacs-lisp - (use-package deft - :config - (global-set-key (kbd "C-c d") 'deft) - (setq deft-directory "~/notes/" - deft-default-extension "org")) -#+end_src - -* Reference Management -Use Biblio and Citar to manage citations. -#+begin_src emacs-lisp - (use-package biblio) - (use-package citar - :custom - (citar-bibliography '("~/bib/references.bib")) - :hook - (LaTeX-mode . citar-capf-setup) - (org-mode . citar-capf-setup)) - (use-package citar-embark - :after citar embark - :no-require - :config (citar-embark-mode)) -#+end_src diff --git a/common/.config/emacs/user-interface.el.org b/common/.config/emacs/user-interface.el.org deleted file mode 100644 index f3ef2a6..0000000 --- a/common/.config/emacs/user-interface.el.org +++ /dev/null @@ -1,120 +0,0 @@ -#+title: Emacs User Interface - -* Theming -Set up Source Code Pro with Nerd Font patches as default font and Computer Modern as a variable pitch font. -#+begin_src emacs-lisp - (defvar jj/mono-font) - (defvar jj/var-font) - (pcase system-type - (`gnu/linux - (when (eq (system-name) "gentoo")) - (setq jj/mono-font "SauceCodePro Nerd Font-11") - (setq jj/var-font "CMU Serif-14")) - (`darwin - (setq jj/mono-font "SauceCodePro Nerd Font-14:weight=thin") - (setq jj/var-font "CMU Serif-18"))) - (add-to-list 'default-frame-alist - `(font . ,jj/mono-font)) -#+end_src - -Use my custom Doom Disco light theme. -#+begin_src emacs-lisp - (use-package doom-themes - :straight (doom-themes :type git :host github :repo "doomemacs/themes" - :fork (:host github - :repo "JacobJanzen/emacs-doom-themes")) - :config - (setq doom-themes-enable-bold t - doom-themes-enable-italic t) - (load-theme 'doom-disco t) - (doom-themes-org-config)) - - (add-to-list 'default-frame-alist '(alpha-background . 90)) -#+end_src - -Use =doom-modeline= for a nicer modeline. -#+begin_src emacs-lisp - (use-package doom-modeline - :init (doom-modeline-mode 1)) -#+end_src - -Remove the title bar. -#+begin_src emacs-lisp - (add-to-list 'default-frame-alist '(undecorated . t)) -#+end_src - -* Clean UI -Disable the Emacs start screen and make the =scratch= buffer default to empty. -#+begin_src emacs-lisp - (setq inhibit-startup-screen t) - (setq initial-scratch-message nil) -#+end_src - -Disable scroll bar, tool bar, and menu bar. -#+begin_src emacs-lisp - (scroll-bar-mode -1) - (tool-bar-mode -1) - (menu-bar-mode -1) -#+end_src - -* Fancy Stuff -Use line numbers by default. -#+begin_src emacs-lisp - (global-display-line-numbers-mode 1) -#+end_src - -Install nerd font icons. -#+begin_src emacs-lisp - (use-package nerd-icons) -#+end_src - -Scroll one line at a time. -#+begin_src emacs-lisp - (setq scroll-conservatively most-positive-fixnum) -#+end_src - -Create parent directories when they don't yet exist. -#+begin_src emacs-lisp - (defun jj/create-non-existent-directory () - (let ((parent-directory (file-name-directory buffer-file-name))) - (when (and (not (file-exists-p parent-directory)) - (y-or-n-p (format "Directory `%s' does not exist! Create it?" parent-directory))) - (make-directory parent-directory t)))) - (add-to-list 'find-file-not-found-functions #'jj/create-non-existent-directory) -#+end_src - -* Whitespace Management -Use spaces over tabs and set tab width to 4. -#+begin_src emacs-lisp - (setq-default indent-tabs-mode nil) - (setq tab-width 4 - c-basic-offset tab-width) -#+end_src - -Delete trailing whitespace on save. -#+begin_src emacs-lisp - (defun jj/before-save-hook () - (unless (eql (with-current-buffer (current-buffer) major-mode) - 'markdown-mode) - (delete-trailing-whitespace))) - (add-hook 'before-save-hook #'jj/before-save-hook) -#+end_src - -* Backup Management -Don't create backup files. -#+begin_src emacs-lisp - (setq make-backup-files nil) -#+end_src - -* Customize =dired= -Use nerd font icons in =dired=. -#+begin_src emacs-lisp - (use-package nerd-icons-dired - :hook (dired-mode . nerd-icons-dired-mode)) -#+end_src - -Use colours in =dired= with =diredfl=. -#+begin_src emacs-lisp - (use-package diredfl - :init (diredfl-global-mode 1)) -#+end_src diff --git a/common/.flake/home/programs/alacritty.nix.org b/common/.flake/home/programs/alacritty.nix.org deleted file mode 100644 index 5249145..0000000 --- a/common/.flake/home/programs/alacritty.nix.org +++ /dev/null @@ -1,68 +0,0 @@ -#+title: Alacritty Configuration - -This is the configuration for Alacritty terminal emulator. -#+begin_src nix - { config, pkgs, ... }: - - { - programs.alacritty = { - enable = true; - settings = { -#+end_src - -Use no window decorations, slight transparency, small padding, and allow the =⌥= to work as =alt=. -#+begin_src nix - window = { - decorations = "None"; - opacity = 0.9; - padding = { - x = 6; - y = 6; - }; - option_as_alt = "Both"; - }; -#+end_src - -Use Source Code Pro (Nerd Font), size 14 as my font. -#+begin_src nix - font = { - normal = { - family = "SauceCodePro Nerd Font"; - style = "Regular"; - }; - size = 14; - }; -#+end_src - -Set colour scheme. -#+begin_src nix - colors = { - primary = { - background = "#ece0c9"; - foreground = "#191916"; - }; - normal = { - black = "#191916"; - red = "#ac4438"; - green = "#354d52"; - yellow = "#ba9151"; - blue = "#465b91"; - magenta = "#5b5489"; - cyan = "#4e6062"; - white = "#c9ad7a"; - }; - bright = { - black = "#293c3c"; - red = "#d8611c"; - green = "#4b7b53"; - yellow = "#d8974b"; - blue = "#2f3d91"; - magenta = "#735e82"; - cyan = "#6b8f92"; - white = "#ece0c9"; - }; - }; - }; - }; - } -#+end_src diff --git a/common/.flake/home/programs/emacs/force-custom-file.el.org b/common/.flake/home/programs/emacs/force-custom-file.el.org deleted file mode 120000 index 06a4dc7..0000000 --- a/common/.flake/home/programs/emacs/force-custom-file.el.org +++ /dev/null @@ -1 +0,0 @@ -../../../../../common/.config/emacs/force-custom-file.el.org \ No newline at end of file diff --git a/common/.flake/home/programs/emacs/languages.el.org b/common/.flake/home/programs/emacs/languages.el.org deleted file mode 120000 index dd60c9f..0000000 --- a/common/.flake/home/programs/emacs/languages.el.org +++ /dev/null @@ -1 +0,0 @@ -../../../../../common/.config/emacs/languages.el.org \ No newline at end of file diff --git a/common/.flake/home/programs/emacs/package-setup.el.org b/common/.flake/home/programs/emacs/package-setup.el.org deleted file mode 120000 index c0f3ead..0000000 --- a/common/.flake/home/programs/emacs/package-setup.el.org +++ /dev/null @@ -1 +0,0 @@ -../../../../../common/.config/emacs/package-setup.el.org \ No newline at end of file diff --git a/common/.flake/home/programs/emacs/tools.el.org b/common/.flake/home/programs/emacs/tools.el.org deleted file mode 120000 index ff0296b..0000000 --- a/common/.flake/home/programs/emacs/tools.el.org +++ /dev/null @@ -1 +0,0 @@ -../../../../../common/.config/emacs/tools.el.org \ No newline at end of file diff --git a/common/.flake/home/programs/emacs/user-interface.el.org b/common/.flake/home/programs/emacs/user-interface.el.org deleted file mode 120000 index 8a7f782..0000000 --- a/common/.flake/home/programs/emacs/user-interface.el.org +++ /dev/null @@ -1 +0,0 @@ -../../../../../common/.config/emacs/user-interface.el.org \ No newline at end of file -- cgit v1.2.3