Fix conflicts between laptop and Desktop

This commit is contained in:
2022-07-24 15:47:16 -04:00
7 changed files with 177 additions and 3046 deletions

321
init.el
View File

@@ -48,9 +48,9 @@
;; Ensure shell variables are loaded
(use-package exec-path-from-shell :demand
:init
(exec-path-from-shell-initialize)
)
:init
(exec-path-from-shell-initialize)
)
;; Profiling
@@ -60,60 +60,71 @@
(use-package no-littering
:demand t)
;;;; Science Related
(use-package conda)
;;;; End Science Related
;; Version control
(use-package magit)
;;;; Nix Related
;; Nix direnv support
(use-package direnv
:demand t
:config
(direnv-mode))
(use-package nix-mode)
;;;; End Nix Related
;;;; Web Related
(use-package web-mode
:init
(add-to-list 'auto-mode-alist '("\\.phtml\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.[agj]sp\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.as[cp]x\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.mustache\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.html?\\'" . web-mode))
)
:init
(add-to-list 'auto-mode-alist '("\\.phtml\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.[agj]sp\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.as[cp]x\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.mustache\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.html?\\'" . web-mode))
)
(use-package php-mode)
;;;; End Web related
;;;; Company Related
(use-package company :demand t
:bind
(("C-<tab>" . company-complete))
:custom-face
(company-preview ((t (:background "#000000" :foreground "#ffffff"))))
(company-preview-common ((t (:inherit company-preview :foreground "#ff00cf"))))
(company-preview-search ((t (:inherit company-preview :background "black"))))
(company-scrollbar-bg ((t (:background "grey35"))))
(company-scrollbar-fg ((t (:background "#a22390"))))
(company-template-field ((t (:background "grey75" :foreground "black"))))
(company-tooltip ((t (:background "#353535" :foreground "white"))))
(company-tooltip-common ((t (:foreground "magenta"))))
(company-tooltip-mouse ((t (:inherit company-tooltip-selection))))
(company-tooltip-search ((t (:inherit company-tooltip-selection))))
(company-tooltip-search-selection ((t (:inherit company-tooltip-selection))))
(company-tooltip-selection ((t (:background "#4584a2" :foreground "white"))))
)
:bind
(("C-<tab>" . company-complete))
:custom-face
(company-preview ((t (:background "#000000" :foreground "#ffffff"))))
(company-preview-common ((t (:inherit company-preview :foreground "#ff00cf"))))
(company-preview-search ((t (:inherit company-preview :background "black"))))
(company-scrollbar-bg ((t (:background "grey35"))))
(company-scrollbar-fg ((t (:background "#a22390"))))
(company-template-field ((t (:background "grey75" :foreground "black"))))
(company-tooltip ((t (:background "#353535" :foreground "white"))))
(company-tooltip-common ((t (:foreground "magenta"))))
(company-tooltip-mouse ((t (:inherit company-tooltip-selection))))
(company-tooltip-search ((t (:inherit company-tooltip-selection))))
(company-tooltip-search-selection ((t (:inherit company-tooltip-selection))))
(company-tooltip-selection ((t (:background "#4584a2" :foreground "white"))))
)
(add-hook 'after-init-hook 'global-company-mode)
;; LSP related
(use-package lsp-haskell)
(use-package lsp-mode
:init
(setq lsp-keymap-prefix "C-c l")
:hook (
(dart-mode . lsp)
(python-mode . lsp)
(c-mode . lsp)
(c++-mode . lsp)
(haskell-mode . lsp))
;; which key support v v v
:init
(setq lsp-keymap-prefix "C-c l")
:hook (
(dart-mode . lsp)
(python-mode . lsp)
(c-mode . lsp)
(c++-mode . lsp)
(haskell-mode . lsp))
;; which key support v v v
(lsp-mode . lsp-enable-which-key-integration)
:commands lsp)
(lsp-mode . lsp-enable-which-key-integration)
:commands lsp)
;; optionally
(use-package lsp-ui :commands lsp-ui-mode)
@@ -128,74 +139,72 @@
;; (use-package dap-LANGUAGE) to load the dap adapter for your language
;; optional if you want which-key integration
(use-package which-key
:config
(which-key-mode))
:config
(which-key-mode))
;; END LSP related
;; projectile
(use-package projectile
:commands projectile-mode)
:commands projectile-mode)
(projectile-mode +1)
;; Recommended keymap prefix on macOS
(define-key projectile-mode-map (kbd "s-p") 'projectile-command-map)
;; projectile
; Python
;; Python
(use-package pyvenv
:init
(setenv "WORKON_HOME" "~/.pyenv/versions")
:hook (
(python-mode . pyvenv-mode)
)
)
:init
(setenv "WORKON_HOME" "~/.pyenv/versions")
:hook (
(python-mode . pyvenv-mode)
)
)
; C related
;; C related
(use-package company-ctags)
(use-package company-c-headers)
; Haskell
;; Haskell
(use-package company-ghci)
;;;; End Company Related
;;;; Haskell Related
(use-package haskell-mode
:config
(setq haskell-mode-hook '(flyspell-prog-mode interactive-haskell-mode))
)
:config
(setq haskell-mode-hook '(flyspell-prog-mode interactive-haskell-mode))
)
(use-package lsp-haskell)
(use-package ghci-completion)
;;;; End Haskell Related
;;;; NEURON Related
(use-package nrnhoc
:straight (:package nrnhoc :type git :host github :repo "***REMOVED***csterratt/neuron-emacs"))
;; -- TODO
;;;; END NEURON Related
;;; Lisp / Parentheses Related
(use-package rainbow-delimiters
:commands rainbow-delimiters-mode
:hook (
(emacs-lisp-mode . rainbow-delimiters-mode)
(geiser-mode . rainbow-delimiters-mode)
)
:custom-face
(rainbow-delimiters-depth-1-face ((t (:foreground "#69f"))) )
(rainbow-delimiters-depth-2-face ((t (:foreground "#39b"))) )
(rainbow-delimiters-depth-3-face ((t (:foreground "#278"))) )
(rainbow-delimiters-depth-4-face ((t (:foreground "#281"))) )
(rainbow-delimiters-depth-5-face ((t (:foreground "#047"))) )
(rainbow-delimiters-depth-6-face ((t (:foreground "#138"))) )
(rainbow-delimiters-depth-7-face ((t (:foreground "#708"))) )
(rainbow-delimiters-depth-8-face ((t (:foreground "#920"))) )
)
:commands rainbow-delimiters-mode
:hook (
(emacs-lisp-mode . rainbow-delimiters-mode)
(geiser-mode . rainbow-delimiters-mode)
)
:custom-face
(rainbow-delimiters-depth-1-face ((t (:foreground "#69f"))) )
(rainbow-delimiters-depth-2-face ((t (:foreground "#39b"))) )
(rainbow-delimiters-depth-3-face ((t (:foreground "#278"))) )
(rainbow-delimiters-depth-4-face ((t (:foreground "#281"))) )
(rainbow-delimiters-depth-5-face ((t (:foreground "#047"))) )
(rainbow-delimiters-depth-6-face ((t (:foreground "#138"))) )
(rainbow-delimiters-depth-7-face ((t (:foreground "#708"))) )
(rainbow-delimiters-depth-8-face ((t (:foreground "#920"))) )
)
(use-package paredit
:hook (
(emacs-lisp-mode . paredit-mode)
(geiser-mode . paredit-mode)
)
)
:hook (
(emacs-lisp-mode . paredit-mode)
(geiser-mode . paredit-mode)
)
)
;;; End Lisp / Parentheses Related
;;;; Racket Related
@@ -203,76 +212,98 @@
;;;; End Racket Related
;;;; Org Related
;; (use-package org)
(use-package org-contrib)
(use-package org
:config
(require 'doi-utils)
(require 'org-ref)
(require 'org-tempo)
(tempo-define-template
"Lab Template" '("#+TITLE: PHY324: LAB TITLE"n
"#+AUTHOR: ***REMOVED*** | ***REMOVED***"n
"#+DATE: \\today"n
"#+LATEX_HEADER: \\usepackage{natbib}"n
"#+LATEX_HEADER: \\usepackage{float}"n
"#+LATEX_CLASS: labtemplate"n
"#+OPTIONS: toc:nil"n
""n
"* Abstract:"n
"* Introduction:"n > p
"* Methods:"n
"* Results:"n
"* Discussion:"n
"bibliographystyle:ieeetr"n
"bibliography:~/Documents/Bibliography/references.bib" >)
"<LAB" "Insert Lab Template With Headings")
(tempo-define-template "Fig. Caption"
'("" (P "Image: " image t)
(P "Caption: " caption t)
(P "Figure Name: " name t)
"#+CAPTION: " (s caption) > n >
"#+NAME: fig:" (s name) > n >
"#+ATTR_LaTeX: :placement [H]" > n >
"[[" (s image) "]]" > n > p >)
"<fig" "Inserts Figure with Caption")
(with-eval-after-load 'ox-latex
(add-to-list 'org-latex-packages-alist '("" "minted"))
(setq org-latex-listings 'minted)
(add-to-list 'org-latex-classes
'("labtemplate" "\\documentclass{labtemplate}"
("\\section{%s}" . "\\section*{%s}")
("\\subsection{%s}" . "\\subsection*{%s}")
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
("\\paragraph{%s}" . "\\paragraph*{%s}")
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
)
(setq org-latex-pdf-process
'("%latex -shell-escape -interaction nonstopmode -output-directory %o %f" "%latex -shell-escape -interaction nonstopmode -output-directory %o %f" "bibtex %b" "%latex -shell-escape -interaction nonstopmode -output-directory %o %f" "%latex -shell-escape -interaction nonstopmode -output-directory %o %f")))
)
; References etc.
(use-package org-ref
:config
(setq reftex-default-bibliography '("~/Documents/Bibliography/references.bib"))
;; see org-ref for use of these variables
(setq org-ref-bibliography-notes "~/Documents/Bibliography/notes.org"
org-ref-default-bibliography '("~/Documents/Bibliography/references.bib")
org-ref-pdf-directory "~/Documents/Bibliography/bibtex-pdfs/")
)
(use-package ox-pandoc
:after org)
; PDF preview etc.
;; Completion engine
(use-package ivy-bibtex)
;; Interactive menus
(use-package helm-bibtex)
;; PDF preview etc.
(use-package pdf-tools)
;; References etc.
(use-package org-ref)
; better TEX
(use-package org
:straight (:type built-in)
:config
(require 'doi-utils)
(require 'org-ref)
(require 'org-ref-ivy)
(require 'org-ref-helm)
(require 'org-tempo)
(setq org-src-fontify-natively t
org-confirm-babel-evaluate nil
org-src-preserve-indentation t)
(setq bibtex-completion-bibliography
(list (expand-file-name "~/Documents/Bibliography/references.bib")))
(setq org-ref-bibliography-notes "~/Documents/Bibliography/notes.org"
org-ref-default-bibliography '("~/Documents/Bibliography/references.bib")
org-ref-pdf-directory "~/Documents/Bibliography/bibtex-pdfs/")
(setq org-ref-insert-link-function 'org-ref-insert-link-hydra/body
org-ref-insert-cite-function 'org-ref-cite-insert-helm
org-ref-insert-label-function 'org-ref-insert-label-link
org-ref-insert-ref-function 'org-ref-insert-ref-link
org-ref-cite-onclick-function (lambda (_) (org-ref-citation-hydra/body)))
(define-key org-mode-map (kbd "C-c ]") 'org-ref-insert-link)
(define-key org-mode-map (kbd "s-[") 'org-ref-insert-link-hydra/body)
(tempo-define-template
"Lab Template" '("#+TITLE: PHY324: LAB TITLE"n
"#+AUTHOR: ***REMOVED*** | ***REMOVED***"n
"#+DATE: \\today"n
"#+LATEX_HEADER: \\usepackage{natbib}"n
"#+LATEX_HEADER: \\usepackage{float}"n
"#+LATEX_CLASS: labtemplate"n
"#+OPTIONS: toc:nil"n
""n
"* Abstract:"n
"* Introduction:"n > p
"* Methods:"n
"* Results:"n
"* Discussion:"n
"bibliographystyle:ieeetr"n
"bibliography:~/Documents/Bibliography/references.bib" >)
"<LAB" "Insert Lab Template With Headings")
(tempo-define-template "Fig. Caption"
'("" (P "Image: " image t)
(P "Caption: " caption t)
(P "Figure Name: " name t)
"#+CAPTION: " (s caption) > n >
"#+NAME: fig:" (s name) > n >
"#+ATTR_LaTeX: :placement [H]" > n >
"[[" (s image) "]]" > n > p >)
"<fig" "Inserts Figure with Caption")
(with-eval-after-load 'ox-latex
(add-to-list 'org-latex-packages-alist '("" "minted"))
(setq org-latex-listings 'minted)
(add-to-list 'org-latex-classes
'("labtemplate" "\\documentclass{labtemplate}"
("\\section{%s}" . "\\section*{%s}")
("\\subsection{%s}" . "\\subsection*{%s}")
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
("\\paragraph{%s}" . "\\paragraph*{%s}")
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
)
(setq org-latex-pdf-process
'("%latex -shell-escape -interaction nonstopmode -output-directory %o %f"
"%latex -shell-escape -interaction nonstopmode -output-directory %o %f"
"bibtex %b"
"%latex -shell-escape -interaction nonstopmode -output-directory %o %f"
"%latex -shell-escape -interaction nonstopmode -output-directory %o %f")))
)
(use-package ox-pandoc
:after org)
;; better TEX
(use-package auctex
:after org)
:after org)
; Plotting support
;; Plotting support
(use-package gnuplot)
;;Org Auto Wrap Config