Compare commits
144 Commits
7a899af24b
...
work
| Author | SHA1 | Date | |
|---|---|---|---|
|
be91582932
|
|||
|
18e2a8c8b6
|
|||
|
8d67a93b4e
|
|||
|
2e404a10b7
|
|||
|
6e436427e5
|
|||
|
379ff2ec1e
|
|||
|
27a2755eb4
|
|||
|
b6e0a698e6
|
|||
|
039cacf3dd
|
|||
|
39c23de25f
|
|||
|
55fc91233d
|
|||
|
fb09e42be9
|
|||
|
a1c2007852
|
|||
|
b94f685eb4
|
|||
|
6035a22ce4
|
|||
|
52d48f4375
|
|||
|
bd063ca02b
|
|||
|
a550ccf9dc
|
|||
|
8a44b7dd7e
|
|||
|
3fcd65d6d2
|
|||
|
0b7dc5996a
|
|||
|
f7baa0c089
|
|||
|
d65a20323d
|
|||
|
34af171ca3
|
|||
|
fdf2bc63a6
|
|||
|
de5d9f5d0d
|
|||
|
1f183d9ef8
|
|||
|
0beb26a94a
|
|||
|
5453df478c
|
|||
|
30a5cd3ad7
|
|||
|
d872172bc6
|
|||
|
5c4802b371
|
|||
|
a9ad9e54b3
|
|||
|
5de7e2288c
|
|||
|
518413d20d
|
|||
|
72f1079538
|
|||
|
24a3c71c13
|
|||
|
e46df2a852
|
|||
|
9711448199
|
|||
|
f46b5043a2
|
|||
|
193dce0fa5
|
|||
|
1ada882299
|
|||
|
13d6081b6a
|
|||
|
68f5d3c8ab
|
|||
|
f897a11a5d
|
|||
|
9b8ca71e69
|
|||
|
309e692435
|
|||
|
6bb4e798c3
|
|||
|
4517547396
|
|||
|
6404fe9d37
|
|||
|
0e39dd1adb
|
|||
|
3ba5cf98ef
|
|||
|
33e17cad08
|
|||
|
a3246af270
|
|||
|
f062bcb218
|
|||
|
59b9517c89
|
|||
|
f8c1b7c558
|
|||
|
b5740b6e5b
|
|||
|
a709487e14
|
|||
|
fb0c1b31b8
|
|||
|
f7b37e9248
|
|||
|
a83fdb2ecd
|
|||
|
8c1768e1d1
|
|||
|
5c570c5608
|
|||
|
70d27dc4a8
|
|||
|
a60d59643f
|
|||
|
7cbc1eccbb
|
|||
|
a2538eba67
|
|||
|
037171f063
|
|||
|
8322c56272
|
|||
|
89d3d153ed
|
|||
|
ce50237782
|
|||
|
e41edb9617
|
|||
|
cd12d6361d
|
|||
|
e24b160411
|
|||
|
15ebe5b28d
|
|||
|
ef04978af9
|
|||
|
2ee4eeacdd
|
|||
|
73039f9790
|
|||
|
4abcfb8912
|
|||
|
bfef58394d
|
|||
|
5fee719f82
|
|||
|
9625e9b14f
|
|||
|
58c25ac89b
|
|||
|
298a7165aa
|
|||
|
e656a9a7f9
|
|||
|
c8f06f0955
|
|||
|
160d71a7fc
|
|||
|
6b9ec0057f
|
|||
|
88e7aeae2c
|
|||
|
b2125f273e
|
|||
|
25020b6485
|
|||
|
c9b615a241
|
|||
|
b1b1edbcaf
|
|||
|
6e2ec43437
|
|||
|
9ce6fdaf23
|
|||
|
2398612a6c
|
|||
|
b48ffef269
|
|||
|
fdcd5a4c6b
|
|||
|
fb1695bed4
|
|||
|
7e936bfe84
|
|||
|
32305747af
|
|||
|
f40f205bf5
|
|||
|
00ee2dbd6f
|
|||
|
10428092bd
|
|||
|
60e45e6874
|
|||
|
0c1473123e
|
|||
|
1f72440b12
|
|||
|
e085d2a740
|
|||
|
ce35c7cade
|
|||
|
7df7854787
|
|||
|
83477573a1
|
|||
|
fc2ebefa68
|
|||
|
c325d268dc
|
|||
|
91428a22c3
|
|||
|
c309db78d5
|
|||
|
3b6e996bf9
|
|||
|
5cc92ce0d8
|
|||
|
459ef84df0
|
|||
|
971cc7e5cb
|
|||
|
e244dac20c
|
|||
|
cbc4c89161
|
|||
|
e5fb8d625d
|
|||
|
3ee83cc4e1
|
|||
|
aaa86d9c85
|
|||
|
eab69da4d8
|
|||
|
b4818d0e20
|
|||
|
c04d688c14
|
|||
|
f80b35e6f2
|
|||
|
d8fea95751
|
|||
|
7d4debaede
|
|||
|
19ad6fcf10
|
|||
|
8bfe16a8aa
|
|||
|
969a3d92fa
|
|||
|
75d304022e
|
|||
|
a093924ef7
|
|||
|
4473a6c9bc
|
|||
|
54e20121be
|
|||
|
83ecb87645
|
|||
|
e6c28bbbb6
|
|||
|
5600e4aea6
|
|||
|
5074f44b14
|
|||
|
234645b604
|
|||
|
be595c4c24
|
6
+keybindings.el
Normal file
6
+keybindings.el
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
;;; +keybindings.el -*- lexical-binding: t; -*-
|
||||||
|
;; Custom keybindings
|
||||||
|
;;
|
||||||
|
;; Keybindings for next/previous buffer
|
||||||
|
(map! :n "C-c j" #'previous-buffer)
|
||||||
|
(map! :n "C-c k" #'next-buffer)
|
||||||
90
+org.el
90
+org.el
@@ -1,24 +1,14 @@
|
|||||||
;;; ~/.doom.d/+org.el -*- lexical-binding: t; -*-
|
;;; ~/.doom.d/+org.el -*- lexical-binding: t; -*-
|
||||||
;; Org mode configuration
|
;; Org mode configuration
|
||||||
;;
|
;;
|
||||||
(setq org-ellipsis " ▼ "
|
(setq org-ellipsis " ▼ ")
|
||||||
org-superstar-headline-bullets-list '("⁖"))
|
|
||||||
;; Cycle through header visibility
|
;; Cycle through header visibility
|
||||||
(after! evil-org
|
(after! evil-org
|
||||||
(remove-hook 'org-tab-first-hook #'+org-cycle-only-current-subtree-h))
|
(remove-hook 'org-tab-first-hook #'+org-cycle-only-current-subtree-h))
|
||||||
;; Disable completion
|
;; Disable completion
|
||||||
(set-company-backend! 'org-mode nil)
|
(set-company-backend! 'org-mode nil)
|
||||||
;; Turn off line numbers
|
;; Turn off line numbers
|
||||||
(add-hook 'org-mode-hook (lambda () (display-line-numbers-mode -1)))
|
(add-hook! 'org-mode-hook (display-line-numbers-mode -1))
|
||||||
;; Add Notes to agenda
|
|
||||||
(setq org-agenda-files '("~/Notes"))
|
|
||||||
;; Tailor Org super agenda
|
|
||||||
(use-package! org-super-agenda
|
|
||||||
:after org-agenda
|
|
||||||
:init
|
|
||||||
(setq org-super-agenda-groups '((:auto-category t)))
|
|
||||||
:config
|
|
||||||
(org-super-agenda-mode))
|
|
||||||
;; Add timestamp to DONE task
|
;; Add timestamp to DONE task
|
||||||
(setq org-log-done 'time)
|
(setq org-log-done 'time)
|
||||||
;; Print babel results to the buffer and export them
|
;; Print babel results to the buffer and export them
|
||||||
@@ -26,7 +16,8 @@
|
|||||||
(:cache . "no") (:noweb . "no") (:hlines . "no") (:tangle . "no"))
|
(:cache . "no") (:noweb . "no") (:hlines . "no") (:tangle . "no"))
|
||||||
org-babel-default-lob-header-args '((:exports . "both")))
|
org-babel-default-lob-header-args '((:exports . "both")))
|
||||||
;; Enter writeroom-mode in all org files
|
;; Enter writeroom-mode in all org files
|
||||||
(add-hook 'org-mode-hook 'global-writeroom-mode)
|
(add-hook! 'org-mode-hook 'global-writeroom-mode)
|
||||||
|
(add-hook! 'org-mode-hook 'visual-line-mode)
|
||||||
;; Respect LANGUAGE export variable
|
;; Respect LANGUAGE export variable
|
||||||
(add-to-list 'org-latex-packages-alist '("AUTO" "babel" t ("pdflatex")))
|
(add-to-list 'org-latex-packages-alist '("AUTO" "babel" t ("pdflatex")))
|
||||||
;; Don't evaluate code blocks on export
|
;; Don't evaluate code blocks on export
|
||||||
@@ -34,7 +25,7 @@
|
|||||||
;; Speed up agenda startup
|
;; Speed up agenda startup
|
||||||
(setq org-agenda-dim-blocked-tasks nil)
|
(setq org-agenda-dim-blocked-tasks nil)
|
||||||
;; Open file with folded headlines
|
;; Open file with folded headlines
|
||||||
(setq org-startup-folded 'content)
|
(setq org-startup-folded t)
|
||||||
;; Add tufte-handout to LaTeX classes
|
;; Add tufte-handout to LaTeX classes
|
||||||
(after! ox-latex
|
(after! ox-latex
|
||||||
(add-to-list 'org-latex-classes
|
(add-to-list 'org-latex-classes
|
||||||
@@ -46,23 +37,64 @@
|
|||||||
;; Add org-plain-latex
|
;; Add org-plain-latex
|
||||||
(after! ox-latex
|
(after! ox-latex
|
||||||
(add-to-list 'org-latex-classes
|
(add-to-list 'org-latex-classes
|
||||||
'("org-plain-latex"
|
'("org-plain-latex"
|
||||||
"\\documentclass{article}
|
"\\documentclass{article}
|
||||||
[NO-DEFAULT-PACKAGES]
|
[NO-DEFAULT-PACKAGES]
|
||||||
[PACKAGES]
|
[PACKAGES]
|
||||||
[EXTRA]"
|
[EXTRA]"
|
||||||
("\\section{%s}" . "\\section*{%s}")
|
("\\section{%s}" . "\\section*{%s}")
|
||||||
("\\subsection{%s}" . "\\subsection*{%s}")
|
("\\subsection{%s}" . "\\subsection*{%s}")
|
||||||
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
|
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
|
||||||
("\\paragraph{%s}" . "\\paragraph*{%s}")
|
("\\paragraph{%s}" . "\\paragraph*{%s}")
|
||||||
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))))
|
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))))
|
||||||
;; Enable listings for LaTeX export
|
;; Prettify code block export
|
||||||
(setq org-latex-listings 't)
|
(use-package! engrave-faces-latex
|
||||||
;; Set up bibliography management
|
:after ox-latex)
|
||||||
(setq! +biblio-pdf-library-dir "~/Documents/Uni/TFG/bibliography/"
|
(setq org-latex-src-block-backend 'engraved)
|
||||||
+biblio-default-bibliography-files '("~/Documents/Uni/TFG/assets/bibliography.bib"))
|
;; Add citeproc and metadata-file options to ox-pandoc
|
||||||
;; Add citeproc and metadata-file options to ox-latex
|
(after! ox-pandoc
|
||||||
(add-to-list 'org-pandoc-valid-options 'citeproc)
|
(add-to-list 'org-pandoc-valid-options 'citeproc)
|
||||||
(add-to-list 'org-pandoc-valid-options 'metadata-file)
|
(add-to-list 'org-pandoc-valid-options 'metadata-file))
|
||||||
;; Allow referencing by label in org-ref
|
;; Allow referencing by label in org-ref
|
||||||
(setq org-latex-prefer-user-labels t)
|
(setq org-latex-prefer-user-labels t)
|
||||||
|
;; Extend pomodoro length to 45/15
|
||||||
|
(setq org-pomodoro-length '45
|
||||||
|
org-pomodoro-short-break-length '15
|
||||||
|
org-pomodoro-long-break-length '30
|
||||||
|
org-pomodoro-time-format "%.2m min"
|
||||||
|
org-pomodoro-keep-killed-pomodoro-time t)
|
||||||
|
;; Save org-download images to an assets directory
|
||||||
|
(after! org-download
|
||||||
|
(setq org-download-image-dir "assets/"
|
||||||
|
org-attach-auto-tag nil))
|
||||||
|
;; Show images by default with a limited width
|
||||||
|
(setq org-startup-with-inline-images t
|
||||||
|
org-image-actual-width 600)
|
||||||
|
;; Use a modern look
|
||||||
|
(use-package! org-modern
|
||||||
|
:hook (org-mode . org-modern-mode)
|
||||||
|
:config
|
||||||
|
(setq org-modern-star ["⁖"]))
|
||||||
|
(add-hook! 'org-agenda-finalize-hook #'org-modern-agenda)
|
||||||
|
;; Configure a better split and some default for org-noter
|
||||||
|
(after! org-noter
|
||||||
|
(setq org-noter-always-create-frame nil
|
||||||
|
org-noter-doc-split-fraction '(0.7 . 0.3)
|
||||||
|
org-noter-default-heading-title " "
|
||||||
|
org-noter-separate-notes-from-heading nil))
|
||||||
|
;; Show latex preview automatically and increase its size
|
||||||
|
(setq org-startup-with-latex-preview t
|
||||||
|
org-format-latex-options (plist-put org-format-latex-options :scale 3.0))
|
||||||
|
;; Close tags automatically
|
||||||
|
(after! smartparens
|
||||||
|
(sp-with-modes 'org-mode
|
||||||
|
(sp-local-pair "*" "*")
|
||||||
|
(sp-local-pair "_" "_")
|
||||||
|
(sp-local-pair "/" "/")
|
||||||
|
(sp-local-pair "~" "~")
|
||||||
|
(sp-local-pair "$" "$")))
|
||||||
|
;; Show raw latex when the cursor on the expression
|
||||||
|
(add-hook! 'org-mode-hook 'org-fragtog-mode)
|
||||||
|
;; HACK Fix search folded sections
|
||||||
|
(setq org-fold-core-style 'overlays)
|
||||||
|
(evil-select-search-module 'evil-search-module 'evil-search)
|
||||||
|
|||||||
58
+ui.el
58
+ui.el
@@ -2,37 +2,41 @@
|
|||||||
;; Appearance settings
|
;; Appearance settings
|
||||||
;; Set Font and theme
|
;; Set Font and theme
|
||||||
(setq doom-font (font-spec :family "Iosevka Medium" :size 26)
|
(setq doom-font (font-spec :family "Iosevka Medium" :size 26)
|
||||||
doom-theme 'doom-nord)
|
doom-theme 'doom-one)
|
||||||
;; Display Magit status in fullscreen
|
|
||||||
(after! magit
|
|
||||||
(setq magit-display-buffer-function #'magit-display-buffer-fullframe-status-v1))
|
|
||||||
;; Match pdf-tools colors to the theme
|
|
||||||
(after! pdf-tools
|
|
||||||
(setq pdf-view-midnight-colors '("#ECEFF4" . "#2E3440"))
|
|
||||||
(add-hook 'pdf-tools-enabled-hook 'pdf-view-midnight-minor-mode))
|
|
||||||
;; Customize modeline
|
;; Customize modeline
|
||||||
(setq doom-modeline-major-mode-icon t
|
(setq doom-modeline-buffer-encoding nil)
|
||||||
doom-modeline-persp-name t
|
|
||||||
doom-modeline-buffer-encoding nil)
|
|
||||||
;; Hide direnv environment variables popup
|
|
||||||
(setq direnv-always-show-summary nil)
|
|
||||||
;; Change splash-screen banner
|
;; Change splash-screen banner
|
||||||
(setq fancy-splash-image "~/.doom.d/assets/emacs.svg")
|
(setq fancy-splash-image "~/.doom.d/assets/emacs.svg")
|
||||||
;; Disable LSP documentation popup
|
|
||||||
(after! lsp-ui
|
|
||||||
(setq lsp-ui-doc-enable nil
|
|
||||||
lsp-signature-auto-activate nil
|
|
||||||
lsp-enable-symbol-highlighting nil
|
|
||||||
lsp-ui-sideline-show-code-actions nil
|
|
||||||
lsp-modeline-code-actions-enable nil))
|
|
||||||
;; Shrink minibuffer
|
;; Shrink minibuffer
|
||||||
(after! ivy
|
(after! vertico
|
||||||
(setq ivy-height 10))
|
(setq vertico-count 8))
|
||||||
;; Eliminate gaps between windows
|
;; Eliminate gaps between windows
|
||||||
(after! frame
|
(after! frame
|
||||||
(remove-hook 'doom-init-ui-hook #'window-divider-mode))
|
(remove-hook 'doom-init-ui-hook #'window-divider-mode))
|
||||||
;; Disable lsp header line
|
;; Show matching parenthesis on the minibuffer
|
||||||
(after! lsp-mode
|
(after! smartparens (show-smartparens-global-mode t))
|
||||||
(setq lsp-headerline-breadcrumb-enable nil))
|
;; Modify the splash screen actions
|
||||||
;; Shrink terminal buffer
|
(setq +doom-dashboard-menu-sections
|
||||||
(set-popup-rule! "^\\*vterm" :size 0.1 :vslot -4 :select t :quit nil :ttl 0)
|
'(("Reload last session"
|
||||||
|
:icon (nerd-icons-octicon "nf-oct-history" :face 'doom-dashboard-menu-title)
|
||||||
|
:when (cond ((modulep! :ui workspaces)
|
||||||
|
(file-exists-p (expand-file-name persp-auto-save-fname persp-save-dir)))
|
||||||
|
((require 'desktop nil t)
|
||||||
|
(file-exists-p (desktop-full-file-name))))
|
||||||
|
:face (:inherit (doom-dashboard-menu-title bold))
|
||||||
|
:action doom/quickload-session)
|
||||||
|
("Open org-agenda"
|
||||||
|
:icon (nerd-icons-octicon "nf-oct-calendar" :face 'doom-dashboard-menu-title)
|
||||||
|
:when (fboundp 'org-agenda)
|
||||||
|
:action org-agenda)
|
||||||
|
("Recently opened files"
|
||||||
|
:icon (nerd-icons-faicon "nf-fa-file_text" :face 'doom-dashboard-menu-title)
|
||||||
|
:action recentf-open-files)))
|
||||||
|
;; Restore previous session without confirmation
|
||||||
|
(defadvice! restore-no-confirm-session-quickload-a ()
|
||||||
|
:override #'doom/quickload-session
|
||||||
|
(message "Restoring session...")
|
||||||
|
(doom-load-session)
|
||||||
|
(message "Session restored. Welcome back."))
|
||||||
|
;; Decrease size of icons in the modeline
|
||||||
|
(setq nerd-icons-scale-factor 1.0)
|
||||||
|
|||||||
80
config.el
80
config.el
@@ -4,58 +4,58 @@
|
|||||||
;;
|
;;
|
||||||
;; Load appearance configuration
|
;; Load appearance configuration
|
||||||
(load! "+ui")
|
(load! "+ui")
|
||||||
;; Set projects directories
|
;; Load custom keybindings
|
||||||
(setq projectile-project-search-path '("~/Projects" "~/Documents/Work" "~/Documents/Typesetting"))
|
(load! "+keybindings")
|
||||||
; Auto cleanup recentf
|
;; Auto cleanup recentf
|
||||||
(setq recentf-auto-cleanup 300)
|
(setq recentf-auto-cleanup 300)
|
||||||
; Save backup files to ~/.cache and autosave files to ~/.cache/emacs
|
;; Save backup files to ~/.cache and autosave files to ~/.cache/emacs
|
||||||
(setq backup-directory-alist `(("." . "~/.cache"))
|
(setq backup-directory-alist `(("." . "~/.cache"))
|
||||||
auto-save-list-file-prefix
|
auto-save-list-file-prefix (concat "~/.cache"))
|
||||||
(concat "~/.cache/emacs"))
|
|
||||||
;; Set Magit repositories
|
|
||||||
(setq magit-repository-directories '(("~/Projects" . 3)
|
|
||||||
("~/.dotfiles" . 0)
|
|
||||||
("~/.doom.d" . 0)))
|
|
||||||
;; Load org configuration
|
;; Load org configuration
|
||||||
(after! org (load! "+org"))
|
(after! org (load! "+org"))
|
||||||
;; Enter writeroom and disable completion and line numbers in Markdown
|
;; Disable completion and line numbers in Markdown
|
||||||
(add-hook 'markdown-mode-hook (lambda () (display-line-numbers-mode -1)))
|
(add-hook! 'markdown-mode-hook (display-line-numbers-mode -1))
|
||||||
(after! markdown
|
(after! markdown
|
||||||
(set-company-backend! 'markdown-mode nil)
|
(set-company-backend! 'markdown-mode nil))
|
||||||
(add-hook 'markdown-mode-hook 'global-writeroom-mode))
|
;; Enable writeroom-mode for text modes
|
||||||
|
(setq writeroom-major-modes '(org-mode markdown-mode)
|
||||||
|
+zen-text-scale 1.5)
|
||||||
|
(add-hook! 'markdown-mode-hook 'global-writeroom-mode)
|
||||||
;; Reload file from disk without confirmation
|
;; Reload file from disk without confirmation
|
||||||
(defun revert-buffer-no-confirm ()
|
(defun revert-buffer-no-confirm ()
|
||||||
(interactive)
|
(interactive)
|
||||||
(revert-buffer :ignore-auto :noconfirm))
|
(revert-buffer :ignore-auto :noconfirm))
|
||||||
;; Select target in Makefile compilation as default
|
|
||||||
(map! :leader :n "c c" #'makefile-executor-execute-project-target)
|
|
||||||
;; Align columns in CSV mode
|
;; Align columns in CSV mode
|
||||||
(add-hook 'csv-mode-hook 'csv-align-mode)
|
(add-hook! 'csv-mode-hook 'csv-align-mode)
|
||||||
|
(add-hook! 'csv-mode-hook 'csv-header-line)
|
||||||
;; Close compilation buffer if successful
|
;; Close compilation buffer if successful
|
||||||
(setq compilation-finish-functions
|
(defun close-compilation-buffer-if-successful (buffer string)
|
||||||
(lambda (buf str)
|
"Bury a compilation buffer if succeeded without warnings "
|
||||||
(if (null (string-match ".*exited abnormally.*" str))
|
(when (and (eq major-mode 'compilation-mode)
|
||||||
(progn
|
(string-match "finished" string)
|
||||||
(run-at-time
|
(not
|
||||||
"0.5 sec" nil 'delete-windows-on
|
(with-current-buffer buffer
|
||||||
(get-buffer-create "*compilation*"))
|
(search-forward "warning" nil t))))
|
||||||
(message "No Compilation Errors!")))))
|
(run-with-timer 1 nil
|
||||||
;; Enable writeroom for text modes
|
(lambda (buf)
|
||||||
(setq writeroom-major-modes '(markdown-mode org-mode))
|
(let ((window (get-buffer-window buf)))
|
||||||
|
(when (and (window-live-p window)
|
||||||
|
(eq buf (window-buffer window)))
|
||||||
|
(delete-window window))))
|
||||||
|
buffer)))
|
||||||
|
(add-hook 'compilation-finish-functions #'close-compilation-buffer-if-successful)
|
||||||
;; Map leader key for major mode to ,
|
;; Map leader key for major mode to ,
|
||||||
|
(setq evil-snipe-override-evil-repeat-keys nil)
|
||||||
(setq doom-localleader-key ",")
|
(setq doom-localleader-key ",")
|
||||||
;; Show matching parenthesis on the minibuffer
|
|
||||||
(after! smartparens (show-smartparens-global-mode t))
|
|
||||||
;; Disable company mode in Nix
|
|
||||||
(setq-hook! 'nix-mode-hook company-idle-delay nil)
|
|
||||||
;; Trigger flycheck after save
|
;; Trigger flycheck after save
|
||||||
(setq flycheck-check-syntax-automatically '(save))
|
(setq flycheck-check-syntax-automatically '(save))
|
||||||
;; Ignore development databases folders
|
;; Use relative line numbers (Usage: number <j/k>)
|
||||||
(after! lsp-mode
|
(setq display-line-numbers-type 'relative)
|
||||||
(add-to-list 'lsp-file-watch-ignored-directories "[/\\\\]\\.mysql\\'")
|
;; Set indentation level to 2
|
||||||
(add-to-list 'lsp-file-watch-ignored-directories "[/\\\\]\\.pgdata\\'"))
|
(setq tab-width 2)
|
||||||
;; Ignore empty files
|
;; Move buffer while maintaining cursor centered
|
||||||
(after! projectile
|
(use-package! centered-cursor-mode
|
||||||
(add-to-list 'projectile-globally-ignored-files ".gitkeep"))
|
:config
|
||||||
;; Set org-mode as the default
|
(global-centered-cursor-mode))
|
||||||
(setq-default major-mode 'org-mode)
|
;; Restore previous session on startup
|
||||||
|
(add-hook 'window-setup-hook #'doom/quickload-session)
|
||||||
|
|||||||
148
init.el
148
init.el
@@ -11,178 +11,192 @@
|
|||||||
(doom! :input
|
(doom! :input
|
||||||
;;chinese
|
;;chinese
|
||||||
;;japanese
|
;;japanese
|
||||||
|
;layout ; auie,ctsrnm is the superior home row
|
||||||
|
|
||||||
:completion
|
:completion
|
||||||
(company + tng) ; the ultimate code completion backend
|
(company +tng) ; the ultimate code completion backend
|
||||||
;;helm ; the *other* search engine for love and life
|
;;helm ; the *other* search engine for love and life
|
||||||
;;ido ; the other *other* search engine...
|
;;ido ; the other *other* search engine...
|
||||||
(ivy ; a search engine for love and life
|
;;(ivy ; a search engine for love and life
|
||||||
+fuzzy ; fuzzy search is a millenial thing
|
;;+fuzzy ; fuzzy search is a millenial thing
|
||||||
+icons) ; prettify the small thingss
|
;;+icons) ; prettify the small thingss
|
||||||
|
(vertico +icons) ; The search engine of the future
|
||||||
|
|
||||||
:ui
|
:ui
|
||||||
;;deft ; notational velocity for Emacs
|
;;deft ; notational velocity for Emacs
|
||||||
doom ; what makes DOOM look the way it does
|
doom ; what makes DOOM look the way it does
|
||||||
doom-dashboard ; a nifty splash screen for Emacs
|
doom-dashboard ; a nifty splash screen for Emacs
|
||||||
doom-quit ; DOOM quit-message prompts when you quit Emacs
|
doom-quit ; DOOM quit-message prompts when you quit Emacs
|
||||||
;;fill-column ; a `fill-column' indicator
|
|
||||||
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
|
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
|
||||||
;;hydra
|
;;hydra
|
||||||
;;indent-guides ; highlighted indent columns
|
;;indent-guides ; highlighted indent columns
|
||||||
(ligatures
|
(ligatures
|
||||||
+extra
|
+extra
|
||||||
+iosevka) ; ligatures and symbols to make your code pretty again
|
+iosevka) ; ligatures and symbols to make your code pretty again
|
||||||
|
;;minimap ; show a map of the code on the side
|
||||||
modeline ; snazzy, Atom-inspired modeline, plus API
|
modeline ; snazzy, Atom-inspired modeline, plus API
|
||||||
nav-flash ; blink the current line after jumping
|
nav-flash ; blink the current line after jumping
|
||||||
;;neotree ; a project drawer, like NERDTree for vim
|
;;neotree ; a project drawer, like NERDTree for vim
|
||||||
ophints ; highlight the region an operation acts on
|
ophints ; highlight the region an operation acts on
|
||||||
(popup ; tame sudden yet inevitable temporary windows
|
(popup ; tame sudden yet inevitable temporary windows
|
||||||
+all ; catch all popups that start with an asterix
|
+all ; catch all popups that start with an asterix
|
||||||
+defaults) ; default popup rules
|
+defaults) ; default popup rules
|
||||||
;;tabs ; an tab bar for Emacs
|
;;tabs ; an tab bar for Emacs
|
||||||
;;treemacs ; a project drawer, like neotree but cooler
|
;;treemacs ; a project drawer, like neotree but cooler
|
||||||
;;unicode ; extended unicode support for various languages
|
;;unicode ; extended unicode support for various languages
|
||||||
vc-gutter ; vcs diff in the fringe
|
;;vc-gutter ; vcs diff in the fringe
|
||||||
vi-tilde-fringe ; fringe tildes to mark beyond EOB
|
vi-tilde-fringe ; fringe tildes to mark beyond EOB
|
||||||
window-select ; visually switch windows
|
window-select ; visually switch windows
|
||||||
workspaces ; tab emulation, persistence & separate workspaces
|
workspaces ; tab emulation, persistence & separate workspaces
|
||||||
zen ; distraction-free coding or writing
|
zen ; distraction-free coding or writing
|
||||||
|
|
||||||
:editor
|
:editor
|
||||||
(evil +everywhere); come to the dark side, we have cookies
|
(evil +everywhere) ; come to the dark side, we have cookies
|
||||||
file-templates ; auto-snippets for empty files
|
file-templates ; auto-snippets for empty files
|
||||||
fold ; (nigh) universal code folding
|
fold ; (nigh) universal code folding
|
||||||
(format +onsave) ; automated prettiness
|
(format +onsave) ; automated prettiness
|
||||||
;;god ; run Emacs commands without modifier keys
|
;;god ; run Emacs commands without modifier keys
|
||||||
;;lispy ; vim for lisp, for people who don't like vim
|
;;lispy ; vim for lisp, for people who don't like vim
|
||||||
;;multiple-cursors ; editing in many places at once
|
;;multiple-cursors ; editing in many places at once
|
||||||
;;objed ; text object editing for the innocent
|
;;objed ; text object editing for the innocent
|
||||||
;;parinfer ; turn lisp into python, sort of
|
;;parinfer ; turn lisp into python, sort of
|
||||||
rotate-text ; cycle region at point between text candidates
|
rotate-text ; cycle region at point between text candidates
|
||||||
snippets ; my elves. They type so I don't have to
|
snippets ; my elves. They type so I don't have to
|
||||||
;;word-wrap ; soft wrapping with language-aware indent
|
;;word-wrap ; soft wrapping with language-aware indent
|
||||||
|
|
||||||
:emacs
|
:emacs
|
||||||
dired ; making dired pretty [functional]
|
dired ; making dired pretty [functional]
|
||||||
electric ; smarter, keyword-based electric-indent
|
electric ; smarter, keyword-based electric-indent
|
||||||
;;ibuffer ; interactive buffer management
|
;;ibuffer ; interactive buffer management
|
||||||
vc ; version-control and Emacs, sitting in a tree
|
;;vc ; version-control and Emacs, sitting in a tree
|
||||||
|
|
||||||
:term
|
:term
|
||||||
;;eshell ; a consistent, cross-platform shell (WIP)
|
;;eshell ; the elisp shell that works everywhere
|
||||||
;;shell ; a terminal REPL for Emacs
|
;;shell ; simple shell REPL for Emacs
|
||||||
;;term ; terminals in Emacs
|
;;term ; basic terminal emulator for Emacs
|
||||||
vterm ; another terminals in Emacs
|
;;vterm ; the best terminal emulation in Emacs
|
||||||
|
|
||||||
:checkers
|
:checkers
|
||||||
syntax ; tasing you for every semicolon you forget
|
syntax ; tasing you for every semicolon you forget
|
||||||
;;spell ; tasing you for misspelling mispelling
|
;;(spell +flyspell) ; tasing you for misspelling mispelling
|
||||||
;;grammar ; tasing grammar mistake every you make
|
;;grammar ; tasing grammar mistake every you make
|
||||||
|
|
||||||
:tools
|
:tools
|
||||||
;;ansible
|
;;ansible
|
||||||
biblio ; Writes a PhD for you[citation needed]
|
;; biblio ; Writes a PhD for you (citation needed)
|
||||||
debugger ; FIXME stepping through code, to help you add bugs
|
;; debugger ; FIXME stepping through code, to help you add bugs
|
||||||
direnv
|
;; direnv
|
||||||
;;docker
|
;;docker
|
||||||
;;editorconfig ; let someone else argue about tabs vs spaces
|
;;editorconfig ; let someone else argue about tabs vs spaces
|
||||||
;;ein ; tame Jupyter notebooks with emacs
|
;;ein ; tame Jupyter notebooks with emacs
|
||||||
(eval +overlay) ; run code, run (also, repls)
|
;;(eval +overlay) ; run code, run (also, repls)
|
||||||
;;gist ; interacting with github gists
|
;;gist ; interacting with github gists
|
||||||
lookup ; helps you navigate your code and documentation
|
lookup ; navigate your code and its documentation
|
||||||
;;+docsets) ; ...or in Dash docsets locally
|
;;+docsets) ; ...or in Dash docsets locally
|
||||||
lsp
|
;;lsp ; M-x vscode
|
||||||
;;macos ; MacOS-specific commands
|
;;macos ; MacOS-specific commands
|
||||||
magit ; a git porcelain for Emacs
|
;;magit ; a git porcelain for Emacs
|
||||||
make ; run make tasks from Emacs
|
;;make ; run make tasks from Emacs
|
||||||
;;pass ; password manager for nerds
|
;;pass ; password manager for nerds
|
||||||
pdf ; pdf enhancements
|
;;pdf ; pdf enhancements
|
||||||
;;prodigy ; FIXME managing external services & code builders
|
;;prodigy ; FIXME managing external services & code builders
|
||||||
;;rgb ; creating color strings
|
;;rgb ; creating color strings
|
||||||
;;terraform ; infrastructure as code
|
;;terraform ; infrastructure as code
|
||||||
;;tmux ; an API for interacting with tmux
|
;;tmux ; an API for interacting with tmux
|
||||||
upload ; map local to remote projects via ssh/ftp
|
;;tree-sitter ; syntax and parsing, sitting in a tree...
|
||||||
|
;;upload ; map local to remote projects via ssh/ftp
|
||||||
|
|
||||||
:lang
|
:lang
|
||||||
;;agda ; types of types of types of types...
|
;;agda ; types of types of types of types...
|
||||||
;;assembly ; assembly for fun or debugging
|
;;assembly ; assembly for fun or debugging
|
||||||
(cc +lsp) ; C/C++/Obj-C madness
|
;;beancount ; mind the GAAP
|
||||||
|
;;(cc +lsp
|
||||||
|
;; +tree-sitter) ; C > C++ == 1
|
||||||
;;clojure ; java with a lisp
|
;;clojure ; java with a lisp
|
||||||
;;common-lisp ; if you've seen one lisp, you've seen them all
|
;;common-lisp ; if you've seen one lisp, you've seen them all
|
||||||
;;coq ; proofs-as-programs
|
;;coq ; proofs-as-programs
|
||||||
;;crystal ; ruby at the speed of c
|
;;crystal ; ruby at the speed of c
|
||||||
;;csharp ; unity, .NET, and mono shenanigans
|
;;csharp ; unity, .NET, and mono shenanigans
|
||||||
data ; config/data formats
|
data ; config/data formats
|
||||||
;;(dart
|
;;(dart +flutter) ; paint ui and not much else
|
||||||
;;+flutter
|
;;dhall
|
||||||
;;+lsp) ; paint ui and not much else
|
|
||||||
;;elixir ; erlang done right
|
;;elixir ; erlang done right
|
||||||
;;elm ; care for a cup of TEA?
|
;;elm ; care for a cup of TEA?
|
||||||
emacs-lisp ; drown in parentheses
|
emacs-lisp ; drown in parentheses
|
||||||
;;erlang ; an elegant language for a more civilized age
|
;;erlang ; an elegant language for a more civilized age
|
||||||
(ess +lsp) ; emacs speaks statistics
|
;;(ess +lsp) ; emacs speaks statistics
|
||||||
;;faust ; dsp, but you get to keep your soul
|
;;faust ; dsp, but you get to keep your soul
|
||||||
|
;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER)
|
||||||
;;fsharp ; ML stands for Microsoft's Language
|
;;fsharp ; ML stands for Microsoft's Language
|
||||||
(go +lsp) ; the hipster dialect
|
;;fstar ; (dependent) types and (monadic) effects and Z3
|
||||||
;;(haskell +dante) ; a language that's lazier than I am
|
;;gdscript ; the language you waited for
|
||||||
|
;;(go +lsp
|
||||||
|
;; +tree-sitter) ; the hipster dialect
|
||||||
|
;;(graphql +lsp) ; Give queries a REST
|
||||||
|
;;(haskell +lsp) ; a language that's lazier than I am
|
||||||
;;hy ; readability of scheme w/ speed of python
|
;;hy ; readability of scheme w/ speed of python
|
||||||
;;idris ;
|
;;idris ; a language you can depend on
|
||||||
json ; At least it ain't XML
|
;;(json +tree-sitter) ; At least it ain't XML
|
||||||
(java +lsp) ; the poster child for carpal tunnel syndrome
|
;;(java +lsp
|
||||||
|
;;+tree-sitter) ; the poster child for carpal tunnel syndrome
|
||||||
;;(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
|
;;(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
|
||||||
;;julia ; a better, faster MATLAB
|
;;julia ; a better, faster MATLAB
|
||||||
;;kotlin ; a better, slicker Java(Script)
|
;;kotlin ; a better, slicker Java(Script)
|
||||||
latex ; writing papers in Emacs has never been so fun
|
;;(latex +lsp) ; writing papers in Emacs has never been so fun
|
||||||
;;lean
|
;;lean ; for folks with too much to prove
|
||||||
;;factor
|
|
||||||
;;ledger ; an accounting system in Emacs
|
;;ledger ; an accounting system in Emacs
|
||||||
;;lua ; one-based indices? one-based indices
|
;;lua ; one-based indices? one-based indices
|
||||||
markdown ; writing docs for people to ignore
|
markdown ; writing docs for people to ignore
|
||||||
;;nim ; python + lisp at the speed of c
|
;;nim ; python + lisp at the speed of c
|
||||||
nix ; I hereby declare "nix geht mehr!"
|
;;(nix +tree-sitter); I hereby declare "nix geht mehr!"
|
||||||
;;ocaml ; an objective camel
|
;;ocaml ; an objective camel
|
||||||
(org ; organize your plain life in plain text
|
(org ; organize your plain life in plain text
|
||||||
+dragndrop ; drag & drop files/images into org buffers
|
+dragndrop ; drag & drop files/images into org buffers
|
||||||
;;+hugo ; use Emacs for hugo blogging
|
;;+hugo ; use Emacs for hugo blogging
|
||||||
;;+ipython ; ipython/jupyter support for babel
|
;;+jupyter ; jupyter support for babel
|
||||||
|
+noter
|
||||||
+pandoc ; export-with-pandoc support
|
+pandoc ; export-with-pandoc support
|
||||||
;;+pomodoro ; be fruitful with the tomato technique
|
+pomodoro ; be fruitful with the tomato technique
|
||||||
+present ; using org-mode for presentations
|
+present) ; using org-mode for presentations
|
||||||
+pretty
|
;;+pretty)
|
||||||
+ref)
|
|
||||||
;;perl ; write code no one else can comprehend
|
|
||||||
;;php ; perl's insecure younger brother
|
;;php ; perl's insecure younger brother
|
||||||
;;plantuml ; diagrams for confusing people more
|
;;plantuml ; diagrams for confusing people more
|
||||||
;;purescript ; javascript, but functional
|
;;purescript ; javascript, but functional
|
||||||
(python +lsp ; beautiful is better than ugly
|
;;(python +lsp ; beautiful is better than ugly
|
||||||
+pyright
|
;;+pyright
|
||||||
+poetry)
|
;;+poetry
|
||||||
|
;;+tree-sitter)
|
||||||
;;qt ; the 'cutest' gui framework ever
|
;;qt ; the 'cutest' gui framework ever
|
||||||
;;racket ; a DSL for DSLs
|
;;racket ; a DSL for DSLs
|
||||||
rest ; Emacs as a REST client
|
;;raku ; the artist formerly known as perl6
|
||||||
|
;;rest ; Emacs as a REST client
|
||||||
;;rst ; ReST in peace
|
;;rst ; ReST in peace
|
||||||
;;ruby ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
|
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
|
||||||
;;rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
|
;;rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
|
||||||
;;scala ; java, but good
|
;;scala ; java, but good
|
||||||
;;scheme ; a fully conniving family of lisps
|
;;scheme ; a fully conniving family of lisps
|
||||||
sh ; she sells {ba,z,fi}sh shells on the C xor
|
;;(sh +tree-sitter) ; she sells {ba,z,fi}sh shells on the C xor
|
||||||
|
;;sml
|
||||||
;;solidity ; do you need a blockchain? No.
|
;;solidity ; do you need a blockchain? No.
|
||||||
;;swift ; who asked for emoji variables?
|
;;swift ; who asked for emoji variables?
|
||||||
;;terra ; Earth and Moon in alignment for performance.
|
;;terra ; Earth and Moon in alignment for performance.
|
||||||
web ; the tubes
|
;;(web +tree-sitter); the tubes
|
||||||
yaml ; JSON, but readable
|
;;yaml ; JSON, but readable
|
||||||
|
;;zig ; C, but simpler
|
||||||
|
|
||||||
|
|
||||||
:email
|
:email
|
||||||
;;(mu4e +gmail)
|
;;(mu4e +org +gmail)
|
||||||
;;notmuch
|
;;notmuch
|
||||||
;;(wanderlust +gmail)
|
;;(wanderlust +gmail)
|
||||||
|
|
||||||
:app
|
:app
|
||||||
;;calendar
|
;;calendar
|
||||||
|
;;emms
|
||||||
|
;;everywhere ; *leave* Emacs!? You must be joking
|
||||||
;;irc ; how neckbeards socialize
|
;;irc ; how neckbeards socialize
|
||||||
;;(rss +org) ; emacs as an RSS reader
|
;;rss ; emacs as an RSS reader
|
||||||
;;twitter ; twitter client https://twitter.com/vnought
|
;;twitter ; twitter client https://twitter.com/vnought
|
||||||
;;write ; emacs for writers (fiction, notes, papers, etc.)
|
|
||||||
|
|
||||||
:config
|
:config
|
||||||
;;literate
|
;;literate
|
||||||
@@ -192,9 +206,7 @@
|
|||||||
;; If you edit it by hand, you could mess it up, so be careful.
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
;; Your init file should contain only one such instance.
|
;; Your init file should contain only one such instance.
|
||||||
;; If there is more than one, they won't work right.
|
;; If there is more than one, they won't work right.
|
||||||
'(org-agenda-files
|
)
|
||||||
(quote
|
|
||||||
("~/Sync/Notes/Personal.org" "~/Sync/Notes/Education.org" "~/Sync/Projects/Titank/Organization.org" "~/Sync/Notes/Uni.org" "~/Sync/Notes/Projects.org"))))
|
|
||||||
(custom-set-faces
|
(custom-set-faces
|
||||||
;; custom-set-faces was added by Custom.
|
;; custom-set-faces was added by Custom.
|
||||||
;; If you edit it by hand, you could mess it up, so be careful.
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
|
|||||||
@@ -1,116 +0,0 @@
|
|||||||
;;; tools/biblio/config.el -*- lexical-binding: t; -*-
|
|
||||||
|
|
||||||
;; Internal function to set the various paths used in the
|
|
||||||
;; reference packages.
|
|
||||||
(defun +biblio-set-paths-fn (&optional symbol value)
|
|
||||||
(when symbol
|
|
||||||
(set-default symbol value))
|
|
||||||
(when value
|
|
||||||
(cond ((eq symbol '+biblio-pdf-library-dir)
|
|
||||||
(when (featurep! :lang org)
|
|
||||||
(setq org-ref-pdf-directory value))
|
|
||||||
(setq bibtex-completion-library-path value))
|
|
||||||
((eq symbol '+biblio-default-bibliography-files)
|
|
||||||
(when (featurep! :lang org)
|
|
||||||
(setq reftex-default-bibliography value
|
|
||||||
org-ref-default-bibliography value))
|
|
||||||
(setq bibtex-completion-bibliography value))
|
|
||||||
((eq symbol '+biblio-notes-path)
|
|
||||||
(when (featurep! :lang org)
|
|
||||||
(if (directory-name-p value)
|
|
||||||
(setq org-ref-notes-directory value)
|
|
||||||
(setq org-ref-bibliography-notes value)))
|
|
||||||
(setq bibtex-completion-notes-path value)))))
|
|
||||||
|
|
||||||
|
|
||||||
(defcustom +biblio-pdf-library-dir nil
|
|
||||||
"Directory where pdf files are stored. Must end with a slash."
|
|
||||||
:type 'string
|
|
||||||
:set #'+biblio-set-paths-fn)
|
|
||||||
|
|
||||||
(defcustom +biblio-default-bibliography-files nil
|
|
||||||
"A list of default bibtex files to use."
|
|
||||||
:type '(repeat :tag "List of bibtex files" file)
|
|
||||||
:set #'+biblio-set-paths-fn)
|
|
||||||
|
|
||||||
(defcustom +biblio-notes-path nil
|
|
||||||
"The place where you will store your notes for bibliography files.
|
|
||||||
|
|
||||||
This can be either a single file or directory of files.
|
|
||||||
In case of directory the path must end with a slash."
|
|
||||||
:type 'string
|
|
||||||
:set #'+biblio-set-paths-fn)
|
|
||||||
|
|
||||||
|
|
||||||
(use-package! bibtex-completion
|
|
||||||
:defer t
|
|
||||||
:preface
|
|
||||||
;; Allow the user to set a template of their own via (setq). if the user does
|
|
||||||
;; not set one fall back to the +biblio variants which have a reasonable
|
|
||||||
;; fallback.
|
|
||||||
(defvar bibtex-completion-notes-template-multiple-files nil)
|
|
||||||
:config
|
|
||||||
|
|
||||||
(when (featurep! :completion ivy)
|
|
||||||
(add-to-list 'ivy-re-builders-alist '(ivy-bibtex . ivy--regex-plus)))
|
|
||||||
|
|
||||||
(setq bibtex-completion-additional-search-fields '(keywords)
|
|
||||||
;; This tell bibtex-completion to look at the File field of the bibtex
|
|
||||||
;; to figure out which pdf to open
|
|
||||||
bibtex-completion-pdf-field "file")
|
|
||||||
(unless bibtex-completion-notes-template-multiple-files
|
|
||||||
(setq bibtex-completion-notes-template-multiple-files
|
|
||||||
"${title} : (${=key=})
|
|
||||||
|
|
||||||
- tags ::
|
|
||||||
- keywords :: ${keywords}
|
|
||||||
|
|
||||||
\n* ${title}\n :PROPERTIES:\n :Custom_ID: ${=key=}\n :URL: ${url}\n :AUTHOR: ${author-or-editor}\n :NOTER_DOCUMENT: /${file}\n :NOTER_PAGE: \n :END:\n\n")))
|
|
||||||
|
|
||||||
|
|
||||||
;; TODO which set of keys that should be bound for commonly used functions
|
|
||||||
;; see https://github.com/jkitchin/org-ref/blob/master/org-ref-core.el#L3998
|
|
||||||
(use-package! org-ref
|
|
||||||
:when (featurep! :lang org +ref)
|
|
||||||
:after org
|
|
||||||
:preface
|
|
||||||
;; This need to be set before the package is loaded, because org-ref will
|
|
||||||
;; automatically `require' an associated package during its loading.
|
|
||||||
(setq org-ref-completion-library (cond ((featurep! :completion ivy) #'org-ref-ivy-cite)
|
|
||||||
((featurep! :completion helm) #'org-ref-helm-bibtex)
|
|
||||||
(t #'org-ref-reftex)))
|
|
||||||
:config
|
|
||||||
;; Although the name is helm-bibtex, it is actually a bibtex-completion function
|
|
||||||
;; it is the legacy naming of the project helm-bibtex that causes confusion.
|
|
||||||
(setq org-ref-open-pdf-function 'org-ref-get-pdf-filename-helm-bibtex)
|
|
||||||
;; orb will define handlers for note taking so not needed to use the
|
|
||||||
;; ones set for bibtex-completion
|
|
||||||
(unless (featurep! :lang org +roam)
|
|
||||||
;; Allow org-ref to use the same template mechanism as {helm,ivy}-bibtex for
|
|
||||||
;; multiple files if the user has chosen to spread their notes.
|
|
||||||
(setq org-ref-notes-function (if (and org-ref-notes-directory (directory-name-p org-ref-notes-directory))
|
|
||||||
#'org-ref-notes-function-many-files
|
|
||||||
#'org-ref-notes-function-one-file))))
|
|
||||||
|
|
||||||
(use-package! org-roam-bibtex
|
|
||||||
:when (featurep! :lang org +roam)
|
|
||||||
:preface
|
|
||||||
;; if the user has not set a template mechanism set a reasonable one of them
|
|
||||||
;; The package already tests for nil itself so we define a dummy tester
|
|
||||||
(defvar orb-preformat-keywords
|
|
||||||
'("=key=" "title" "url" "file" "author-or-editor" "keywords"))
|
|
||||||
(defvar orb-templates nil)
|
|
||||||
:hook (org-roam-mode . org-roam-bibtex-mode)
|
|
||||||
:config
|
|
||||||
(unless orb-templates
|
|
||||||
(setq orb-templates
|
|
||||||
'(("r" "ref" plain (function org-roam-capture--get-point)
|
|
||||||
""
|
|
||||||
:file-name "${slug}"
|
|
||||||
:head "#+TITLE: ${=key=}: ${title}\n#+roam_key: ${ref}\n#+roam_tags: lit
|
|
||||||
|
|
||||||
- tags ::
|
|
||||||
- keywords :: ${keywords}
|
|
||||||
|
|
||||||
\n* ${title}\n :PROPERTIES:\n :Custom_ID: ${=key=}\n :URL: ${url}\n :AUTHOR: ${author-or-editor}\n :NOTER_DOCUMENT: %(orb-process-file-field \"${=key=}\")\n :NOTER_PAGE: \n :END:\n\n"
|
|
||||||
:unnarrowed t)))))
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
;; -*- no-byte-compile: t; -*-
|
|
||||||
;;; tools/biblio/packages.el
|
|
||||||
|
|
||||||
(package! bibtex-completion :pin "9f6ea920a49457d85096caa0e61f086a42b2908e")
|
|
||||||
(when (featurep! :completion ivy)
|
|
||||||
(package! ivy-bibtex :pin "9f6ea920a49457d85096caa0e61f086a42b2908e"))
|
|
||||||
(when (featurep! :completion helm)
|
|
||||||
(package! helm-bibtex :pin "9f6ea920a49457d85096caa0e61f086a42b2908e"))
|
|
||||||
(when (featurep! :lang org +ref)
|
|
||||||
(package! org-ref :pin "8aa2bb45268f660956151547533689d4ec30378d"))
|
|
||||||
(when (featurep! :lang org +roam)
|
|
||||||
(package! org-roam-bibtex :pin "f7b5be2ce0b43dd4d842484fc0ec37fdc8526907"))
|
|
||||||
11
packages.el
11
packages.el
@@ -5,4 +5,13 @@
|
|||||||
;; (package! some-package)
|
;; (package! some-package)
|
||||||
;; (package! another-package :recipe (:host github :repo "username/repo"))
|
;; (package! another-package :recipe (:host github :repo "username/repo"))
|
||||||
;; (package! builtin-package :disable t)
|
;; (package! builtin-package :disable t)
|
||||||
(package! org-super-agenda)
|
;; Prettier LaTeX source blocks
|
||||||
|
(package! engrave-faces)
|
||||||
|
;; Prettier org mode
|
||||||
|
(package! org-modern)
|
||||||
|
;; Enable LaTeX previews automatically
|
||||||
|
(package! org-fragtog)
|
||||||
|
;; Light theme
|
||||||
|
(package! os1-theme :recipe (:host github :repo "sashimacs/os1-theme"))
|
||||||
|
;; Move buffer while maintaining cursor centered
|
||||||
|
(package! centered-cursor-mode)
|
||||||
|
|||||||
@@ -5,7 +5,6 @@
|
|||||||
#+TITLE: $0
|
#+TITLE: $0
|
||||||
#+SUBTITLE:
|
#+SUBTITLE:
|
||||||
#+AUTHOR: Amin Kasrou Aouam
|
#+AUTHOR: Amin Kasrou Aouam
|
||||||
#+LANGUAGE: es
|
|
||||||
#+OPTIONS: toc:nil
|
#+OPTIONS: toc:nil
|
||||||
#+LATEX_CLASS: org-plain-latex
|
#+LATEX_CLASS: org-plain-latex
|
||||||
#+LATEX_CLASS_OPTIONS: [a4paper]
|
#+LATEX_CLASS_OPTIONS: [a4paper]
|
||||||
|
|||||||
@@ -9,10 +9,9 @@
|
|||||||
#+PANDOC_OPTIONS: template:~/.pandoc/templates/eisvogel.latex
|
#+PANDOC_OPTIONS: template:~/.pandoc/templates/eisvogel.latex
|
||||||
#+PANDOC_OPTIONS: listings:t
|
#+PANDOC_OPTIONS: listings:t
|
||||||
#+PANDOC_OPTIONS: toc:t
|
#+PANDOC_OPTIONS: toc:t
|
||||||
#+PANDOC_METADATA: lang=es
|
|
||||||
#+PANDOC_METADATA: titlepage:t
|
#+PANDOC_METADATA: titlepage:t
|
||||||
#+PANDOC_METADATA: listings-no-page-break:t
|
#+PANDOC_METADATA: listings-no-page-break:t
|
||||||
#+PANDOC_METADATA: toc-own-page:t
|
#+PANDOC_METADATA: toc-own-page:t
|
||||||
#+PANDOC_METADATA: table-use-row-colors:t
|
#+PANDOC_METADATA: table-use-row-colors:t
|
||||||
#+PANDOC_METADATA: colorlinks:t
|
#+PANDOC_METADATA: colorlinks:t
|
||||||
#+PANDOC_METADATA: logo:/home/coolneng/Photos/Logos/UGR.png
|
#+PANDOC_METADATA: logo:/home/coolneng/Photos/Logos/UGent.png
|
||||||
9
snippets/org-mode/image
Normal file
9
snippets/org-mode/image
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: img
|
||||||
|
# uuid: img
|
||||||
|
# key: trigger-key
|
||||||
|
# condition: t
|
||||||
|
# --
|
||||||
|
#+CAPTION: $1
|
||||||
|
#+LABEL: $2
|
||||||
|
#+ATTR_HTML: :width 50%
|
||||||
10
snippets/org-mode/metropolis presentation
Normal file
10
snippets/org-mode/metropolis presentation
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: metropolis presentation
|
||||||
|
# key: met
|
||||||
|
# --
|
||||||
|
#+TITLE: $0
|
||||||
|
#+AUTHOR: Amin Kasrou Aouam
|
||||||
|
#+SUBTITLE:
|
||||||
|
#+PANDOC_OPTIONS: pdf-engine:xelatex
|
||||||
|
#+PANDOC_METADATA: theme:metropolis
|
||||||
|
#+PANDOC_METADATA: logo:/home/coolneng/Photos/Logos/UGent.png
|
||||||
@@ -4,7 +4,6 @@
|
|||||||
# --
|
# --
|
||||||
#+TITLE: $0
|
#+TITLE: $0
|
||||||
#+SUBTITLE:
|
#+SUBTITLE:
|
||||||
#+LANGUAGE: es
|
|
||||||
#+REVEAL_TITLE_SLIDE: %t <br>%s</br>
|
#+REVEAL_TITLE_SLIDE: %t <br>%s</br>
|
||||||
#+REVEAL_THEME: moon
|
#+REVEAL_THEME: moon
|
||||||
#+OPTIONS: toc:nil ^:nil num:nil
|
#+OPTIONS: toc:nil ^:nil num:nil
|
||||||
@@ -4,7 +4,6 @@
|
|||||||
# --
|
# --
|
||||||
#+TITLE: $0
|
#+TITLE: $0
|
||||||
#+AUTHOR: Amin Kasrou Aouam
|
#+AUTHOR: Amin Kasrou Aouam
|
||||||
#+LANGUAGE: es
|
|
||||||
#+OPTIONS: toc:nil
|
#+OPTIONS: toc:nil
|
||||||
#+LATEX_CLASS: tufte-handout
|
#+LATEX_CLASS: tufte-handout
|
||||||
#+LATEX_CLASS_OPTIONS: [a4paper]
|
#+LATEX_CLASS_OPTIONS: [a4paper]
|
||||||
|
|||||||
8
snippets/org-msg-edit-mode/email signature
Normal file
8
snippets/org-msg-edit-mode/email signature
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: email signature
|
||||||
|
# key: sign
|
||||||
|
# --
|
||||||
|
|
||||||
|
Best regards,
|
||||||
|
|
||||||
|
Amin Kasrou Aouam
|
||||||
5
snippets/org-msg-edit-mode/formal greeting
Normal file
5
snippets/org-msg-edit-mode/formal greeting
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: formal greeting
|
||||||
|
# key: dear
|
||||||
|
# --
|
||||||
|
Dear Madam/Sir,
|
||||||
8
snippets/org-msg-edit-mode/french signature
Normal file
8
snippets/org-msg-edit-mode/french signature
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: email signature
|
||||||
|
# key: frsign
|
||||||
|
# --
|
||||||
|
|
||||||
|
Cordialement,
|
||||||
|
|
||||||
|
Amin Kasrou Aouam
|
||||||
Reference in New Issue
Block a user