diff --git a/emacs.d/init.el b/emacs.d/init.el index 4e5412c..36b6cca 100644 --- a/emacs.d/init.el +++ b/emacs.d/init.el @@ -1,4 +1,4 @@ -; Disable package.el early so it won't start loading packages before init is loaded +;; Disable package.el early so it won't start loading packages before init is loaded (setq package-enable-at-startup nil) ;; No thanks @@ -6,9 +6,10 @@ (scroll-bar-mode -1) ; Disable visible scrollbar (tool-bar-mode -1) ; Disable the toolbar (tooltip-mode -1) ; Disable tooltips -(set-fringe-mode 10) ; Give some breathing room +(set-fringe-mode 10) ; Add come extra space to the left/right sides (menu-bar-mode -1) ; Disable the menu bar (setq-default custom-file null-device) ; Write customizations not in this file to the null device (AKA stop littering in my init.el) +(setq confirm-kill-processes nil) ; Stop asking about running processes on exit ;; Visible bell (setq visible-bell t) @@ -67,11 +68,11 @@ conf-mode-hook)) (add-hook mode (lambda () (display-line-numbers-mode 1)))) -;; Show vertical line at column 80 to keep code clean in prog-mode +;; Show vertical line at column 80 in prog-mode (setq-default fill-column 80) (add-hook 'prog-mode-hook #'display-fill-column-indicator-mode) -; Override some modes which derive from the above +; No line numbers in org-mode (dolist (mode '(org-mode-hook)) (add-hook mode (lambda () (display-line-numbers-mode 0)))) @@ -117,20 +118,19 @@ :custom (straight-use-package-by-default t)) ;; Theme + (setq custom-safe-themes t) -;; (use-package atom-one-dark-theme -;; :config -;; (load-theme 'atom-one-dark t)) - ;; (use-package everforest -;; :straight (everforest-hard-dark-theme :type git :repo "https://git.sr.ht/~theorytoe/everforest-theme") -;; :config -;; (load-theme 'everforest-hard-dark t)) +;; :straight (:type git :repo "https://git.sr.ht/~theorytoe/everforest-theme")) -(add-to-list 'custom-theme-load-path "~/.cache/emacs/straight/build/everforest") +;; (use-package gruvbox-theme +;; :config +;; (load-theme 'gruvbox-dark-soft t)) + +(add-to-list 'custom-theme-load-path "~/.cache/emacs/custom/everforest-theme") (load-theme 'everforest-hard-dark t) - + ;; Help distinguish work buffers from others like sidebars and terminal (use-package solaire-mode :init @@ -291,7 +291,8 @@ (eval-when-compile (require 'cl-lib)) (require 'dap-python) - (require 'dap-node) + ;(require 'dap-node) + (require 'dap-lldb) :bind (:map dap-mode-map ("" . dap-debug) @@ -316,7 +317,9 @@ ("C-n" . company-select-next) ("C-p" . company-select-previous))) -;;; Languages +;;; Languages/Tools + +;; Highlighting/Formatting (use-package apheleia :init @@ -332,8 +335,9 @@ ;; C/C++ -;(setq-default c-default-style "k&r") -;(setq-default c-basic-offset 2) +(setq dap-lldb-debug-program '("/usr/bin/lldb-vscode")) +(setq-default c-default-style "k&r") +(setq-default c-basic-offset 2) ;(use-package ccls ; :hook ((c-mode c++-mode objc-mode cuda-mode) . @@ -345,9 +349,9 @@ ;; Golang -(use-package go-mode - :config - (add-hook 'before-save-hook #'lsp-organize-imports)) +;; (use-package go-mode +;; :config +;; (add-hook 'before-save-hook #'lsp-organize-imports)) ;; Java @@ -355,35 +359,35 @@ ;; JavaScript/TypeScript, HTML, CSS -(setq css-indent-level 2) -(setq css-indent-offset 2) -(setq js-indent-level 2) +;; (setq css-indent-level 2) +;; (setq css-indent-offset 2) +;; (setq js-indent-level 2) -(add-to-list 'auto-mode-alist '("\\.mjs\\'" . js-mode)) +;; (add-to-list 'auto-mode-alist '("\\.mjs\\'" . js-mode)) -(use-package js2-mode - :config - (add-to-list 'interpreter-mode-alist '("#!/usr/bin/env node" . js2-mode)) - ;(setq js2-strict-missing-semi-warning t) - (setq js2-mode-show-strict-warnings t) - :hook (js-mode . js2-minor-mode)) +;; (use-package js2-mode +;; :config +;; (add-to-list 'interpreter-mode-alist '("#!/usr/bin/env node" . js2-mode)) +;; ;(setq js2-strict-missing-semi-warning t) +;; (setq js2-mode-show-strict-warnings t) +;; :hook (js-mode . js2-minor-mode)) -(use-package typescript-mode - :config - (setq typescript-indent-level 2) - :mode ("\\.ts\\'" . typescript-mode) - ("\\.tsx\\'" . typescript-mode)) +;; (use-package typescript-mode +;; :config +;; (setq typescript-indent-level 2) +;; :mode ("\\.ts\\'" . typescript-mode) +;; ("\\.tsx\\'" . typescript-mode)) -(use-package restclient - :init - (use-package company-restclient) - :mode ("\\.http\\'" . restclient-mode)) +;; (use-package restclient +;; :init +;; (use-package company-restclient) +;; :mode ("\\.http\\'" . restclient-mode)) -(use-package rainbow-mode - :hook - ((js-mode . rainbow-mode) - (typescript-mode . rainbow-mode) - (web-mode . rainbow-mode))) +;; (use-package rainbow-mode +;; :hook +;; ((js-mode . rainbow-mode) +;; (typescript-mode . rainbow-mode) +;; (web-mode . rainbow-mode))) ;; (use-package skewer-mode ;; :init @@ -400,35 +404,36 @@ ;; (use-package simple-httpd) -(use-package web-mode - :config - (setq web-mode-code-indent-offset 2) - (setq web-mode-markup-indent-offset 2) - (setq web-mode-attribute-indent-offset 2) - :mode - (("\\.phtml\\'" . web-mode) - ("\\.tpl\\.php\\'" . web-mode) - ("\\.jsp\\'" . web-mode) - ("\\.as[cp]x\\'" . web-mode) - ("\\.erb\\'" . web-mode) - ("\\.mustache\\'" . web-mode) - ("\\.djhtml\\'" . web-mode) - ("\\.jst.ejs\\'" . web-mode) - ("\\.html?\\'" . web-mode))) +;; (use-package web-mode +;; :config +;; (setq web-mode-code-indent-offset 2) +;; (setq web-mode-markup-indent-offset 2) +;; (setq web-mode-attribute-indent-offset 2) +;; :mode +;; (("\\.phtml\\'" . web-mode) +;; ("\\.tpl\\.php\\'" . web-mode) +;; ("\\.jsp\\'" . web-mode) +;; ("\\.as[cp]x\\'" . web-mode) +;; ("\\.erb\\'" . web-mode) +;; ("\\.mustache\\'" . web-mode) +;; ("\\.djhtml\\'" . web-mode) +;; ("\\.jst.ejs\\'" . web-mode) +;; ("\\.html?\\'" . web-mode))) -(use-package jsdoc - :straight (jsdoc :type git :host github :repo "isamert/jsdoc.el") - :bind ("C-c C-n" . jsdoc)) +;; (use-package jsdoc +;; :straight (jsdoc :type git :host github :repo "isamert/jsdoc.el") +;; :bind ("C-c C-n" . jsdoc)) ;; LaTeX -(use-package lsp-latex) +;; (use-package lsp-latex) + +;; (setq lsp-tex-server 'digestif) -(setq lsp-tex-server 'digestif) ;; Protocol Buffers -(use-package protobuf-mode) +;; (use-package protobuf-mode) ;; Python @@ -446,6 +451,17 @@ :config (setq numpydoc-insert-examples-block nil)) +(use-package conda + :init + (setq conda-anaconda-home (expand-file-name "/opt/miniconda3")) + (setq conda-env-home-directory (expand-file-name "~/.conda/envs")) + (conda-env-initialize-interactive-shells) + ;(conda-env-autoactivate-mode) + :hook + ('find-file-hook . (lambda () + (when (bound-and-true-p conda-project-env-path) + (conda-env-activate-for-buffer))))) + ;; Rust ;(use-package rust-mode) @@ -463,7 +479,9 @@ ;; Syntax checking (use-package flycheck - :hook (lsp-mode . flycheck-mode)) + :hook (lsp-mode . flycheck-mode) + :config + (setq flycheck-python-flake8-executable "flake8")) ;; Templating (use-package yasnippet @@ -477,4 +495,3 @@ (use-package yasnippet-snippets) ;;; End init.el -