diff --git a/.gitignore b/.gitignore index 331e003..b13f6a1 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,6 @@ /emacs/url/ /emacs/recentf /emacs/history +/emacs/straight/repos/ +/emacs/elisp +/emacs/straight/ diff --git a/emacs/init.el b/emacs/init.el index 7e140bb..11b5e22 100644 --- a/emacs/init.el +++ b/emacs/init.el @@ -1,9 +1,25 @@ (require 'package) -(add-to-list 'package-archives - '("melpa" . "https://melpa.org/packages/") t) +(with-eval-after-load 'package + (add-to-list 'package-archives + '("melpa" . "https://melpa.org/packages/") + '("nongnu" . "https://elpa.nongnu.org/nongnu/"))) (package-initialize) (require 'use-package) +(defvar bootstrap-version) +(let ((bootstrap-file + (expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory)) + (bootstrap-version 5)) + (unless (file-exists-p bootstrap-file) + (with-current-buffer + (url-retrieve-synchronously + "https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el" + 'silent 'inhibit-cookies) + (goto-char (point-max)) + (eval-print-last-sexp))) + (load bootstrap-file nil 'nomessage)) + + ;; helper functions ;; ===== @@ -135,7 +151,7 @@ read-extended-command-predicate #'command-completion-default-include-p read-process-output-max (* 1024 1024) tab-always-indent 'complete - tab-width 2 + tab-width 4 text-mode-ispell-word-completion nil use-short-answers t version-control t @@ -187,13 +203,13 @@ (with-eval-after-load 'lsp-mode (add-hook 'lsp-mode-hook #'lsp-enable-which-key-integration) - ;; (setq lsp-idle-delay 0.500) - ;; (setq lsp-log-io nil) - ;; (setq lsp-completion-provider :capf) - (add-hook 'prog-mode-hook 'lsp-deferred) - (add-hook 'before-save-hook #'lsp-format-buffer) + ;; (setq lsp-idle-delay 0.500) + ;; (setq lsp-log-io nil) + ;; (setq lsp-completion-provider :capf) + (add-hook 'prog-mode-hook 'lsp-deferred) + (add-hook 'before-save-hook #'lsp-format-buffer) - (setq lsp-file-watch-threshold nil) + (setq lsp-file-watch-threshold nil) (add-to-list 'lsp-file-watch-ignored-directories "[/\\\\]plz-out\\'")) @@ -201,7 +217,6 @@ (when (file-exists-p custom-file) (load custom-file))) - (use-package async :ensure t) (use-package async-status :ensure t) (use-package dash :ensure t :defer t) @@ -317,6 +332,7 @@ :custom (magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1)) + ;; diagramming ;; === (use-package graphviz-dot-mode :ensure t :defer t @@ -575,6 +591,7 @@ ("p" . consult-projectile) ("/" . consult-ripgrep))) + (use-package consult-projectile :ensure t :after (consult projectile) @@ -659,21 +676,19 @@ (if (> arg 1) (number-to-string arg)) (file-name-extension filename t))) (if (file-directory-p filename) - (copy-directory filename target) - (copy-file filename target)) + (copy-file filename target)) ) ) (define-key dired-mode-map (kbd "C-c d") 'my/dired-duplicate-file) - (use-package lsp-mode :ensure t :commands lsp :custom (lsp-completion-provider :none) ;; we use Corfu! :init (defun my/lsp-mode-setup-completion () - (lsp-enable-which-key-integration) + (lsp-enable-which-key-integration) (setf (alist-get 'styles (alist-get 'lsp-capf completion-category-defaults)) @@ -700,3 +715,15 @@ (setq org-journal-enable-agenda-integration t)) (global-set-key (kbd "C-c j") 'org-journal-new-entry) + +;; (use-package lmtf +;; :straight (lmtf :type git :host github :repo "lneely/lmtf") +;; :bind (:map emacs-lisp-mode-map +;; ("C-c t !" . lmtf-run-all-tests) +;; ("C-c t r" . lmtf-show-results))) + +(add-to-list 'load-path "~/src/my/lmtf") +(require 'lmtf) +(define-key emacs-lisp-mode-map (kbd "C-c t !") #'lmtf-run-all-tests) +(define-key emacs-lisp-mode-map (kbd "C-c t r") #'lmtf-show-results) +