Compare commits
226 Commits
e3ad628597
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
af1a257167
|
|||
|
50e1703719
|
|||
|
d007bb0229
|
|||
|
8ceaf658a1
|
|||
|
ec4279e5c0
|
|||
|
4473bbab7e
|
|||
|
71bbd9576b
|
|||
|
ba9370bbd4
|
|||
|
fbba44d7a2
|
|||
|
827e1a879a
|
|||
|
258ffa1486
|
|||
|
826b27a621
|
|||
|
84d941ed62
|
|||
|
f42e7c2192
|
|||
|
fa19e34239
|
|||
|
51d2463a8d
|
|||
|
5e0f9a61be
|
|||
|
e8dd98aa3c
|
|||
|
9cbcaf62ac
|
|||
|
90d56d2b24
|
|||
|
30a50895eb
|
|||
|
8fc7079b10
|
|||
|
6acb05a8a9
|
|||
|
4f7d27bd34
|
|||
|
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
|
|||
|
7a899af24b
|
|||
|
b9e6c9a616
|
|||
|
977744ce59
|
|||
|
378d2fe4e6
|
|||
|
8537a95d75
|
|||
|
3b566848fc
|
|||
|
889bf1cd36
|
|||
|
98c80dcef9
|
|||
|
6ec9c1e5e3
|
|||
|
49729c3ccf
|
|||
|
0d070204d8
|
|||
|
3b319eb911
|
|||
|
afeedc44c9
|
|||
|
bc521cb73a
|
|||
|
592f79045f
|
|||
|
e8e04de380
|
|||
|
c35bb8840c
|
|||
|
05cdc26582
|
|||
|
1a83f5159e
|
|||
|
f52ed235f4
|
|||
|
86b2fd2169
|
|||
|
2a6257a689
|
|||
|
a7b83c7e54
|
|||
|
d151287226
|
|||
|
b626dce91e
|
|||
|
c24e096011
|
|||
|
4310375e44
|
|||
|
c35dc58f00
|
|||
|
cca6cdef5e
|
|||
|
42b99fbb5d
|
|||
|
1298ebdcf7
|
|||
|
c676f90d13
|
|||
|
2031e24dab
|
|||
|
678c52909b
|
|||
|
2e221b913e
|
|||
|
1ad29ad70f
|
|||
|
2d74c3a675
|
|||
|
7c8dd7acfc
|
|||
|
c1d3ac52a6
|
|||
|
46f629b479
|
|||
|
0a2980db32
|
|||
|
038d8d0215
|
|||
|
04f6fb5abf
|
|||
|
edf3fa34d0
|
|||
|
aba11a76a3
|
|||
|
2ca8b61e68
|
|||
|
35bccb49a4
|
|||
|
9c386ba5c1
|
|||
|
c1cec965b3
|
|||
|
3d0ab84f06
|
|||
|
666490c13f
|
|||
|
cbaac3a67b
|
|||
|
53b4fffbee
|
|||
|
3c5aa45749
|
|||
|
b8aec662cf
|
|||
|
5d6c600b1f
|
|||
|
cf77a594c6
|
|||
|
dab3d10b6d
|
|||
|
0f6745d8aa
|
38
+keybindings.el
Normal file
38
+keybindings.el
Normal file
@@ -0,0 +1,38 @@
|
||||
;;; +keybindings.el -*- lexical-binding: t; -*-
|
||||
;; Custom keybindings
|
||||
;;
|
||||
;; Select target in Makefile compilation as default
|
||||
(map! :leader :n "c c" #'makefile-executor-execute-project-target)
|
||||
;; Keybindings for R markdown polymode
|
||||
(map! :map poly-markdown+R-mode-map
|
||||
:n "RET" #'polymode-eval-chunk
|
||||
:desc "Evaluate code block")
|
||||
;; Map elfeed to global keybinding
|
||||
(map! :leader :n "o e" #'=rss
|
||||
:desc "RSS reader")
|
||||
;; Keybindings for org-noter
|
||||
(map! :mode pdf-view-mode
|
||||
:n "i" #'org-noter-insert-note
|
||||
:desc "Insert note with a subheading")
|
||||
(map! :mode pdf-view-mode
|
||||
:n "x" #'org-noter-kill-session
|
||||
:desc "Kill the current org-noter session")
|
||||
;; Keybindings for pdf-view
|
||||
(map! :mode pdf-view-mode
|
||||
:n ":" #'pdf-view-goto-page
|
||||
:desc "Move to the selected page")
|
||||
;; Keybindings for mu4e
|
||||
(map! :mode mu4e-view-mode
|
||||
:n "S" #'mu4e-view-save-attachments
|
||||
:desc "Save the chosen mail attachments")
|
||||
;; Keybindings for next/previous buffer
|
||||
(map! :n "C-c j" #'previous-buffer)
|
||||
(map! :n "C-c k" #'next-buffer)
|
||||
;; Keybindings for PlatformIO
|
||||
(map! :after platformio-mode
|
||||
:map platformio-mode-map
|
||||
(:localleader
|
||||
:desc "Compile the project" "c c" #'platformio-build
|
||||
:desc "Upload the project" "c u" #'platformio-upload
|
||||
:desc "Monitor the serial console" "c m" #'platformio-device-monitor
|
||||
:desc "Upload data files" "c d" #'platformio-spiffs-upload))
|
||||
45
+mail.el
Normal file
45
+mail.el
Normal file
@@ -0,0 +1,45 @@
|
||||
;;; +mail.el -*- lexical-binding: t; -*-
|
||||
;; Mu4e configuration
|
||||
;;
|
||||
;; Set up the default email identity
|
||||
(setq user-full-name "Amin Kasrou Aouam")
|
||||
;; Use msmtp to send email
|
||||
(setq sendmail-program (executable-find "msmtp")
|
||||
send-mail-function #'smtpmail-send-it
|
||||
message-sendmail-f-is-evil t
|
||||
message-sendmail-extra-arguments '("--read-envelope-from")
|
||||
message-send-mail-function #'message-send-mail-with-sendmail)
|
||||
;; Account configuration
|
||||
(set-email-account! "gmail"
|
||||
'((mu4e-sent-folder . "/gmail/sent")
|
||||
(mu4e-drafts-folder . "/gmail/drafts")
|
||||
(mu4e-trash-folder . "/gmail/trash")
|
||||
(mu4e-refile-folder . "/gmail/archive")
|
||||
(smtpmail-smtp-user . "akasroua@gmail.com")
|
||||
(user-mail-address . "akasroua@gmail.com"))
|
||||
t)
|
||||
(set-email-account! "disroot"
|
||||
'((mu4e-sent-folder . "/disroot/sent")
|
||||
(mu4e-drafts-folder . "/disroot/drafts")
|
||||
(mu4e-trash-folder . "/disroot/trash")
|
||||
(mu4e-refile-folder . "/disroot/archive")
|
||||
(smtpmail-smtp-user . "akasroua@disroot.org")
|
||||
(user-mail-address . "akasroua@disroot.org"))
|
||||
t)
|
||||
;; Configure mu4e contexts
|
||||
(setq mu4e-context-policy 'ask-if-none
|
||||
mu4e-compose-context-policy 'ask-if-none)
|
||||
;; Run lazy check when syncing
|
||||
(setq mu4e-index-lazy-check t)
|
||||
;; Use ISO dates
|
||||
(setq mu4e-headers-date-format "%Y-%m-%d %H:%M")
|
||||
;; Disable colors for HTML emails
|
||||
(setq shr-use-colors nil)
|
||||
;; Use shortcuts to access inboxes easily
|
||||
(setq mu4e-maildir-shortcuts
|
||||
'(("/disroot/inbox" . ?d)
|
||||
("/gmail/inbox" . ?g)))
|
||||
;; Change mu4e bookmarks
|
||||
(setq mu4e-bookmarks '((:name "Unread messages" :query "flag:unread AND NOT flag:trashed" :key 117)
|
||||
(:name "Today's messages" :query "date:today..now" :key 116)
|
||||
(:name "Last 7 days" :query "date:7d..now" :hide-unread t :key 119)))
|
||||
164
+org.el
164
+org.el
@@ -1,39 +1,175 @@
|
||||
;;; ~/.doom.d/+org.el -*- lexical-binding: t; -*-
|
||||
;; Org mode configuration
|
||||
;;
|
||||
(setq org-ellipsis " ▼ "
|
||||
org-bullets-bullet-list '("◉" "⁖" "○" "‣"))
|
||||
(setq org-ellipsis " ▼ ")
|
||||
;; Cycle through header visibility
|
||||
(after! evil-org
|
||||
(remove-hook 'org-tab-first-hook #'+org-cycle-only-current-subtree-h))
|
||||
;; Disable completion
|
||||
(set-company-backend! 'org-mode nil)
|
||||
;; 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 '((:name "Due today"
|
||||
:deadline today)
|
||||
(setq org-agenda-skip-scheduled-if-done t
|
||||
org-agenda-skip-deadline-if-done t
|
||||
org-agenda-skip-scheduled-delay-if-deadline t
|
||||
org-agenda-skip-deadline-prewarning-if-scheduled t
|
||||
org-deadline-warning-days 0
|
||||
org-agenda-include-deadlines t
|
||||
org-agenda-tags-column 100
|
||||
org-agenda-block-separator nil
|
||||
org-agenda-compact-blocks t
|
||||
org-agenda-start-day nil
|
||||
org-agenda-span 7
|
||||
org-agenda-start-on-weekday 0)
|
||||
(setq org-super-agenda-groups '((:name "Overdue"
|
||||
:deadline past
|
||||
:order 0)
|
||||
(:name "Important"
|
||||
:priority "A")
|
||||
(:name "Overdue"
|
||||
:deadline past)
|
||||
(:name "Due soon"
|
||||
:deadline future)))
|
||||
:and (:priority "A" :deadline future)
|
||||
:order 1)
|
||||
(:name "Today"
|
||||
:time-grid t
|
||||
:scheduled today
|
||||
:deadline today
|
||||
:order 2)
|
||||
(:name "Assignments"
|
||||
:tag "labs"
|
||||
:order 3)
|
||||
(:name "Mails"
|
||||
:tag "mail"
|
||||
:order 4)
|
||||
(:name "Errands"
|
||||
:tag ("errand" "call")
|
||||
:order 10)
|
||||
(:name "Projects"
|
||||
:file-path "Projects"
|
||||
:order 6)
|
||||
(:discard (:tag ("periodic" "birthday")))))
|
||||
:config
|
||||
(org-super-agenda-mode))
|
||||
;; Add timestamp to DONE task
|
||||
(setq org-log-done 'time)
|
||||
;; Print babel results to the buffer
|
||||
(setq org-babel-default-header-args '((:session . "none") (:results . "output") (:exports . "both")
|
||||
(:cache . "no") (:noweb . "no") (:hlines . "no") (:tangle . "no")))
|
||||
;; Print babel results to the buffer and export them
|
||||
(setq org-babel-default-header-args '((:session . "default") (:results . "output") (:exports . "both")
|
||||
(:cache . "no") (:noweb . "no") (:hlines . "no") (:tangle . "no"))
|
||||
org-babel-default-lob-header-args '((:exports . "both")))
|
||||
;; 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
|
||||
(add-to-list 'org-latex-packages-alist '("AUTO" "babel" t ("pdflatex")))
|
||||
;; Don't evaluate code blocks on export
|
||||
(setq org-export-use-babel nil)
|
||||
;; Speed up agenda startup
|
||||
(setq org-agenda-dim-blocked-tasks nil)
|
||||
;; Open file with folded headlines
|
||||
(setq org-startup-folded t)
|
||||
;; Add tufte-handout to LaTeX classes
|
||||
(after! ox-latex
|
||||
(add-to-list 'org-latex-classes
|
||||
'("tufte-handout"
|
||||
"\\documentclass{tufte-handout}"
|
||||
("\\section{%s}" . "\\section*{%s}")
|
||||
("\\subsection{%s}" . "\\subsection*{%s}")
|
||||
("\\subsubsection{%s}" . "\\subsubsection*{%s}"))))
|
||||
;; Add org-plain-latex
|
||||
(after! ox-latex
|
||||
(add-to-list 'org-latex-classes
|
||||
'("org-plain-latex"
|
||||
"\\documentclass{article}
|
||||
[NO-DEFAULT-PACKAGES]
|
||||
[PACKAGES]
|
||||
[EXTRA]"
|
||||
("\\section{%s}" . "\\section*{%s}")
|
||||
("\\subsection{%s}" . "\\subsection*{%s}")
|
||||
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
|
||||
("\\paragraph{%s}" . "\\paragraph*{%s}")
|
||||
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))))
|
||||
;; Prettify code block export
|
||||
(use-package! engrave-faces-latex
|
||||
:after ox-latex)
|
||||
(setq org-latex-src-block-backend 'engraved)
|
||||
;; Add citeproc and metadata-file options to ox-pandoc
|
||||
(after! ox-pandoc
|
||||
(add-to-list 'org-pandoc-valid-options 'citeproc)
|
||||
(add-to-list 'org-pandoc-valid-options 'metadata-file))
|
||||
;; Allow referencing by label in org-ref
|
||||
(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-audio-player "pw-play"
|
||||
org-pomodoro-time-format "%.2m min"
|
||||
org-pomodoro-keep-killed-pomodoro-time t)
|
||||
;; Define declarative org capture remplates
|
||||
(use-package! doct
|
||||
:commands doct)
|
||||
(setq org-capture-templates
|
||||
(doct `(("Cookbook" :keys "c"
|
||||
:file "~/Notes/Recipes.org"
|
||||
:type entry
|
||||
:template ("%(org-chef-get-recipe-from-url)"))
|
||||
;; Fix org-chef scraping
|
||||
(setq org-chef-prefer-json-ld t)
|
||||
;; Get the current state of org-pomodoro
|
||||
(defun bergheim/org-clock-status ()
|
||||
"Return the org time status - including any pomodoro activity"
|
||||
(if (and (featurep 'org-pomodoro) (org-pomodoro-active-p))
|
||||
(cl-case org-pomodoro-state
|
||||
(:pomodoro
|
||||
(format "%d min" (/ (org-pomodoro-remaining-seconds) 60)))
|
||||
(:short-break
|
||||
(format "Short break: %d min" (/ (org-pomodoro-remaining-seconds) 60)))
|
||||
(:long-break
|
||||
(format "Long break: %d min" (/ (org-pomodoro-remaining-seconds) 60)))
|
||||
(:overtime
|
||||
(format "Overtime! %d min" (/ (org-pomodoro-remaining-seconds) 60))))
|
||||
(if (org-clocking-p)
|
||||
(format "%s" (org-duration-from-minutes (org-clock-get-clocked-time)))
|
||||
"")))
|
||||
;; 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 "$" "$")))
|
||||
;; Only show a task once if it has a schedule and deadline
|
||||
(setq org-agenda-skip-deadline-prewarning-if-scheduled t)
|
||||
;; Show raw latex when the cursor on the expression
|
||||
(add-hook! 'org-mode-hook 'org-fragtog-mode)
|
||||
;; Auto tangle on save
|
||||
(add-hook! 'org-mode-hook 'org-auto-tangle-mode)
|
||||
;; HACK Fix search folded sections
|
||||
(setq org-fold-core-style 'overlays)
|
||||
(evil-select-search-module 'evil-search-module 'evil-search)
|
||||
|
||||
32
+rss.el
Normal file
32
+rss.el
Normal file
@@ -0,0 +1,32 @@
|
||||
;;; +rss.el -*- lexical-binding: t; -*-
|
||||
;; Elfeed configuration
|
||||
;;
|
||||
;; Synchronize elfeed with Miniflux
|
||||
(setq elfeed-use-curl t
|
||||
elfeed-protocol-enabled-protocols '(fever)
|
||||
elfeed-protocol-feeds (list
|
||||
(list "fever+https://coolneng@rss.psydnd.org"
|
||||
:api-url "https://rss.psydnd.org/fever/"
|
||||
:password (auth-source-pass-get 'secret "api/miniflux")))
|
||||
elfeed-protocol-lazy-sync t
|
||||
elfeed-sort-order 'ascending
|
||||
elfeed-search-filter "@all +unread"
|
||||
elfeed-goodies/tag-column-width 0)
|
||||
(elfeed-protocol-enable)
|
||||
;; Update RSS feeds on startup
|
||||
(add-hook! 'elfeed-search-mode-hook 'elfeed-update)
|
||||
;; Use different font and show article in fullscreen
|
||||
(setq elfeed-show-entry-switch #'switch-to-buffer)
|
||||
(defadvice! +rss-elfeed-wrap-h-nicer ()
|
||||
"Enhances an elfeed entry's readability by wrapping it to a width of
|
||||
`fill-column' and centering it with `visual-fill-column-mode'."
|
||||
:override #'+rss-elfeed-wrap-h
|
||||
(setq-local truncate-lines nil
|
||||
shr-width 160
|
||||
visual-fill-column-center-text t
|
||||
default-text-properties '(line-height 1.1))
|
||||
(let ((inhibit-read-only t)
|
||||
(inhibit-modification-hooks t))
|
||||
(visual-fill-column-mode)
|
||||
(setq-local shr-current-font '(:family "Lato" :height 1.1))
|
||||
(set-buffer-modified-p nil)))
|
||||
75
+ui.el
75
+ui.el
@@ -1,19 +1,80 @@
|
||||
;;; ~/.doom.d/+ui.el -*- lexical-binding: t; -*-
|
||||
;; Appearance settings
|
||||
;; Set Font and theme
|
||||
(setq doom-font (font-spec :family "Iosevka Medium" :size 24)
|
||||
doom-theme 'doom-nord)
|
||||
(setq doom-font (font-spec :family "Iosevka Medium" :size 26)
|
||||
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
|
||||
;; Match pdf-tools colors to the theme, fit to page by default and enable smooth scrolling
|
||||
(after! pdf-tools
|
||||
(setq pdf-view-midnight-colors '("#ECEFF4" . "#2E3440"))
|
||||
(add-hook 'pdf-tools-enabled-hook 'pdf-view-midnight-minor-mode))
|
||||
(setq pdf-view-midnight-colors '("#BBC2CF" . "#282C34"))
|
||||
(setq-default pdf-view-display-size 'fit-width)
|
||||
(add-hook 'pdf-tools-enabled-hook 'pdf-view-roll-minor-mode))
|
||||
;; Customize modeline
|
||||
(setq doom-modeline-major-mode-icon t
|
||||
doom-modeline-persp-name t
|
||||
doom-modeline-buffer-encoding nil)
|
||||
(setq evil-command-window-height 3)
|
||||
;; Hide direnv environment variables popup
|
||||
(setq direnv-always-show-summary nil)
|
||||
;; Change splash-screen banner
|
||||
(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-enable nil
|
||||
lsp-modeline-code-actions-enable nil
|
||||
lsp-headerline-breadcrumb-enable nil
|
||||
lsp-len-enable nil))
|
||||
;; Shrink minibuffer
|
||||
(after! vertico
|
||||
(setq vertico-count 8))
|
||||
;; Eliminate gaps between windows
|
||||
(after! frame
|
||||
(remove-hook 'doom-init-ui-hook #'window-divider-mode))
|
||||
;; Reduce size of the popup terminal
|
||||
(set-popup-rule! "*doom:vterm-popup:*" :size 0.25 :vslot -4 :select t :quit nil :ttl 0)
|
||||
;; Show matching parenthesis on the minibuffer
|
||||
(after! smartparens (show-smartparens-global-mode t))
|
||||
;; Modify the splash screen actions
|
||||
(setq +doom-dashboard-menu-sections
|
||||
'(("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)
|
||||
("Open email client"
|
||||
:icon (nerd-icons-octicon "nf-oct-mail" :face 'doom-dashboard-menu-title)
|
||||
:when (featurep! :email mu4e)
|
||||
:face (:inherit (doom-dashboard-menu-title bold))
|
||||
:action =mu4e)
|
||||
("RSS reader"
|
||||
:icon (nerd-icons-octicon "nf-oct-rss" :face 'doom-dashboard-menu-title)
|
||||
:when (featurep! :app rss)
|
||||
:face (:inherit (doom-dashboard-menu-title bold))
|
||||
:action =rss)
|
||||
("Read saved articles"
|
||||
:icon (nerd-icons-octicon "nf-oct-book" :face 'doom-dashboard-menu-title)
|
||||
:face (:inherit (doom-dashboard-menu-title bold))
|
||||
:action =wallabag)))
|
||||
;; 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)
|
||||
;; Increase size of the PlatformIO compilation buffer
|
||||
(set-popup-rule! "*platformio*" :size 0.25 :vslot -4 :select t :quit t :ttl 0)
|
||||
|
||||
76
assets/emacs.svg
Normal file
76
assets/emacs.svg
Normal file
@@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://web.resource.org/cc/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" id="svg6612" sodipodi:version="0.32" inkscape:version="0.45.1" width="270" height="217" version="1.0" sodipodi:docbase="/home/sphinx/images" sodipodi:docname="Emacs-logo.svg" inkscape:output_extension="org.inkscape.output.svg.inkscape">
|
||||
<metadata id="metadata6617">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
|
||||
<cc:license rdf:resource="http://creativecommons.org/licenses/GPL/2.0/"/>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>Dmitry Dzhus</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:date>2007-07</dc:date>
|
||||
<dc:title>Emacs logo</dc:title>
|
||||
<dc:subject>
|
||||
<rdf:Bag>
|
||||
<rdf:li>emacs</rdf:li>
|
||||
<rdf:li>logo</rdf:li>
|
||||
</rdf:Bag>
|
||||
</dc:subject>
|
||||
<dc:description>Emacs logo by Luis Fernandes was created in 2001. This is an SVG version created by hand from scratch in Inkscape.</dc:description>
|
||||
<dc:language>en</dc:language>
|
||||
</cc:Work>
|
||||
<cc:License rdf:about="http://creativecommons.org/licenses/GPL/2.0/">
|
||||
<cc:permits rdf:resource="http://web.resource.org/cc/Reproduction"/>
|
||||
<cc:permits rdf:resource="http://web.resource.org/cc/Distribution"/>
|
||||
<cc:requires rdf:resource="http://web.resource.org/cc/Notice"/>
|
||||
<cc:permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/>
|
||||
<cc:requires rdf:resource="http://web.resource.org/cc/ShareAlike"/>
|
||||
<cc:requires rdf:resource="http://web.resource.org/cc/SourceCode"/>
|
||||
</cc:License>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs id="defs6615"/>
|
||||
<sodipodi:namedview inkscape:window-height="990" inkscape:window-width="1276" inkscape:pageshadow="2" inkscape:pageopacity="0.0" guidetolerance="10.0" gridtolerance="10.0" objecttolerance="10.0" borderopacity="1.0" bordercolor="#666666" pagecolor="#ffffff" id="base" inkscape:zoom="1.7926268" inkscape:cx="227.95993" inkscape:cy="149.03165" inkscape:window-x="0" inkscape:window-y="0" inkscape:current-layer="svg6612"/>
|
||||
<g id="g2240" style="fill:#000000;fill-opacity:1;stroke:none" transform="translate(-4.7334344,4.3389815)">
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 176.57988,37.972907 C 174.9871,39.007967 168.87448,51.953525 168.7783,53.533221 C 180.64186,73.113933 202.57955,40.078784 206.55381,24.980764 C 206.55381,24.980764 196.17124,43.179003 186.77317,43.526939 C 175.75676,43.93479 178.17554,36.935973 176.57988,37.972907 z " id="path2242" sodipodi:nodetypes="cccsz"/>
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 22.47173,15.758997 L 15.81003,32.485756 C 15.81003,32.485756 19.89052,42.218104 26.49069,42.838195 C 41.61737,44.259359 58.45245,15.619537 63.19409,15.758997 C 67.93574,15.898457 77.55353,23.422298 82.6657,33.922656 C 89.39535,20.759071 97.58642,14.911225 111.16839,24.667015 C 119.07042,30.342966 135.58934,52.795226 145.47559,53.901349 C 156.18021,55.099037 165.37798,44.912817 169.81138,26.288239 C 163.67513,34.237468 161.1768,37.806706 155.0286,38.212082 C 148.68317,38.630462 149.241,39.885604 127.06684,16.874679 C 104.89268,-6.1362469 94.43317,4.8811053 87.87854,14.643316 C 86.41421,13.039524 78.99699,1.01863 70.05858,1.1156811 C 63.72511,1.1844483 53.17415,16.174161 46.86414,21.616488 C 40.30897,27.270272 36.37856,28.267647 33.99471,28.294944 C 30.30074,28.339067 25.84923,26.450798 22.47173,15.758997 z " id="path2244" sodipodi:nodetypes="ccsscsscsscsssc"/>
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 76.60517,33.616604 C 59.9071,53.934058 59.23819,54.418087 50.46092,68.860929 C 41.68365,83.303771 39.35397,92.905012 43.4733,96.486252 C 47.62389,100.09467 55.01913,100.29382 64.07871,93.597586 C 76.68602,83.936084 93.51416,70.148169 98.13382,58.409876 C 99.33455,55.358876 77.4725,76.054153 68.69926,81.186233 C 63.43563,84.265304 56.36004,85.075126 52.55923,81.397725 C 44.80291,73.893236 79.52343,36.77475 76.60517,33.616604 z " id="path2246" sodipodi:nodetypes="csscsssc"/>
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 101.40617,64.709511 C 101.3713,63.070854 109.84351,50.554306 111.30784,50.066195 C 132.55351,64.354287 121.48844,101.10862 114.51543,104.3162 C 114.51543,104.3162 115.7357,88.557199 112.56298,78.655527 C 109.39026,68.753854 101.4411,66.351131 101.40617,64.709511 z " id="path2248" sodipodi:nodetypes="cccsz"/>
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 212.01995,32.790058 C 210.0143,24.25611 219.12924,1.1854142 230.75546,1.1854142 C 259.78347,1.1854142 245.6869,47.473559 240.02956,64.570053 C 226.22301,100.34158 217.47477,153.8249 216.87918,158.42673 C 216.15214,164.0442 207.47903,179.09487 211.85861,154.24293 C 216.23819,129.39099 224.1069,100.38994 233.56074,66.549824 C 238.51906,48.801431 244.54954,17.14762 227.7868,17.100791 C 219.23545,16.991458 219.72047,23.025811 212.01995,32.790058 z " id="path2250" sodipodi:nodetypes="cscssscc"/>
|
||||
</g>
|
||||
<g id="g2233" style="stroke:none">
|
||||
<path sodipodi:nodetypes="cccsz" id="path9706" d="M 176.57988,37.972907 C 174.9871,39.007967 168.87448,51.953525 168.7783,53.533221 C 180.64186,73.113933 202.57955,40.078784 206.55381,24.980764 C 206.55381,24.980764 196.17124,43.179003 186.77317,43.526939 C 175.75676,43.93479 178.17554,36.935973 176.57988,37.972907 z " style="fill:#c64e3b;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"/>
|
||||
<path sodipodi:nodetypes="ccsscsscsscsssc" id="path7673" d="M 22.47173,15.758997 L 15.81003,32.485756 C 15.81003,32.485756 19.89052,42.218104 26.49069,42.838195 C 41.61737,44.259359 58.45245,15.619537 63.19409,15.758997 C 67.93574,15.898457 77.55353,23.422298 82.6657,33.922656 C 89.39535,20.759071 97.58642,14.911225 111.16839,24.667015 C 119.07042,30.342966 135.58934,52.795226 145.47559,53.901349 C 156.18021,55.099037 165.37798,44.912817 169.81138,26.288239 C 163.67513,34.237468 161.1768,37.806706 155.0286,38.212082 C 148.68317,38.630462 149.241,39.885604 127.06684,16.874679 C 104.89268,-6.1362469 94.43317,4.8811053 87.87854,14.643316 C 86.41421,13.039524 78.99699,1.01863 70.05858,1.1156811 C 63.72511,1.1844483 53.17415,16.174161 46.86414,21.616488 C 40.30897,27.270272 36.37856,28.267647 33.99471,28.294944 C 30.30074,28.339067 25.84923,26.450798 22.47173,15.758997 z " style="fill:#c64e3b;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"/>
|
||||
<path sodipodi:nodetypes="csscsssc" id="path8693" d="M 76.60517,33.616604 C 59.9071,53.934058 59.23819,54.418087 50.46092,68.860929 C 41.68365,83.303771 39.35397,92.905012 43.4733,96.486252 C 47.62389,100.09467 55.01913,100.29382 64.07871,93.597586 C 76.68602,83.936084 93.51416,70.148169 98.13382,58.409876 C 99.33455,55.358876 77.4725,76.054153 68.69926,81.186233 C 63.43563,84.265304 56.36004,85.075126 52.55923,81.397725 C 44.80291,73.893236 79.52343,36.77475 76.60517,33.616604 z " style="fill:#c64e3b;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"/>
|
||||
<path sodipodi:nodetypes="cccsz" id="path9704" d="M 101.40617,64.709511 C 101.3713,63.070854 109.84351,50.554306 111.30784,50.066195 C 132.55351,64.354287 121.48844,101.10862 114.51543,104.3162 C 114.51543,104.3162 115.7357,88.557199 112.56298,78.655527 C 109.39026,68.753854 101.4411,66.351131 101.40617,64.709511 z " style="fill:#c64e3b;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"/>
|
||||
<path sodipodi:nodetypes="cscssscc" id="path2171" d="M 212.01995,32.790058 C 210.0143,24.25611 219.12924,1.1854142 230.75546,1.1854142 C 259.78347,1.1854142 245.6869,47.473559 240.02956,64.570053 C 226.22301,100.34158 217.47477,153.8249 216.87918,158.42673 C 216.15214,164.0442 207.47903,179.09487 211.85861,154.24293 C 216.23819,129.39099 224.1069,100.38994 233.56074,66.549824 C 238.51906,48.801431 244.54954,17.14762 227.7868,17.100791 C 219.23545,16.991458 219.72047,23.025811 212.01995,32.790058 z " style="fill:#c64e3b;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"/>
|
||||
</g>
|
||||
<g style="fill:#000000;fill-opacity:1;stroke:none" id="g2256" transform="translate(0.8166413,4.3944529)">
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="M 79.886738,152.50463 C 67.822172,155.61715 50.502331,192.18769 49.743523,198.14195 C 52.532726,198.83925 111.02019,130.19512 80.295208,193.81167 C 102.57324,174.95912 124.9556,141.04167 107.8027,183.94795 C 103.74903,194.08781 123.59559,194.09426 142.96938,172.96563 C 137.88975,176.22186 112.22868,191.62171 126.35499,159.60889 C 133.77483,142.79418 109.21923,159.41447 102.3683,165.83729 C 103.80096,159.33343 108.94433,147.78354 100.61675,150.98227 C 92.289176,154.181 83.310373,160.6892 67.937825,175.11509 C 76.765795,160.89643 77.224181,159.40756 79.886738,152.50463 z " id="path2258" sodipodi:nodetypes="cccscscscc"/>
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="M 248.85492,188.50638 C 263.21933,186.53398 284.36437,164.67209 255.21207,163.30784 C 223.17817,161.81588 262.88238,150.47751 262.88238,150.47751 C 245.58932,149.36183 214.14946,168.68613 239.80172,165.74839 C 265.63062,162.76646 265.93049,186.17596 239.24388,186.14445 C 235.50916,186.14004 236.66387,182.41388 236.66387,182.41388 L 225.77752,187.22526 C 236.0826,190.18366 240.70876,189.62494 248.85492,188.50638 z " id="path2260" sodipodi:nodetypes="cscssccs"/>
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="M 35.422878,148.66454 C 20.150885,157.04591 -6.2772909,190.95274 6.2647537,199.01662 C 17.984924,206.55208 68.941642,170.29445 77.667057,153.75538 C 4.3035383,211.52619 14.065561,174.90254 27.008448,162.02628 C 35.805465,151.30801 64.004057,143.68513 71.481066,128.52052 C 32.789119,149.29474 30.405114,131.50519 62.642197,110.82103 C 68.569623,107.02504 107.74937,89.042889 77.768775,114.28261 C 95.502651,106.02716 110.52675,93.267855 98.941531,90.767173 C 83.884151,87.517022 60.202847,105.92694 48.092626,115.80927 C 40.969928,121.62162 11.868522,145.38354 35.422878,148.66454 z " id="path2262" sodipodi:nodetypes="cscccscssc"/>
|
||||
<g style="fill:#000000;fill-opacity:1;stroke:none" id="g2264">
|
||||
<path sodipodi:nodetypes="ccc" id="path2266" d="M 153.52386,181.54504 C 114.3973,212.57672 133.43947,164.59338 180.00502,149.95001 C 144.43247,174.12306 139.76476,184.61018 153.52386,181.54504 z " style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"/>
|
||||
<path sodipodi:nodetypes="ccc" id="path2268" d="M 196.30981,176.96638 C 156.1373,209.46239 150.29865,172.10195 184.30492,155.10468 C 167.14111,181.92747 183.59666,177.6607 196.30981,176.96638 z " style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"/>
|
||||
</g>
|
||||
<path style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="M 229.3687,178.97034 C 185.57023,211.04797 178.47643,161.27557 237.30661,150.27509 C 188.34589,179.18978 219.44475,183.56954 229.3687,178.97034 z " id="path2270" sodipodi:nodetypes="ccc"/>
|
||||
</g>
|
||||
<g id="g2201" style="fill:#2076c1;fill-opacity:1;stroke:none">
|
||||
<path sodipodi:nodetypes="cccscscscc" id="path2173" d="M 79.886738,152.50463 C 67.822172,155.61715 50.502331,192.18769 49.743523,198.14195 C 52.532726,198.83925 111.02019,130.19512 80.295208,193.81167 C 102.57324,174.95912 124.9556,141.04167 107.8027,183.94795 C 103.74903,194.08781 123.59559,194.09426 142.96938,172.96563 C 137.88975,176.22186 112.22868,191.62171 126.35499,159.60889 C 133.77483,142.79418 109.21923,159.41447 102.3683,165.83729 C 103.80096,159.33343 108.94433,147.78354 100.61675,150.98227 C 92.289176,154.181 83.310373,160.6892 67.937825,175.11509 C 76.765795,160.89643 77.224181,159.40756 79.886738,152.50463 z " style="fill:#2076c1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"/>
|
||||
<path sodipodi:nodetypes="cscssccs" id="path2183" d="M 248.85492,188.50638 C 263.21933,186.53398 284.36437,164.67209 255.21207,163.30784 C 223.17817,161.81588 262.88238,150.47751 262.88238,150.47751 C 245.58932,149.36183 214.14946,168.68613 239.80172,165.74839 C 265.63062,162.76646 265.93049,186.17596 239.24388,186.14445 C 235.50916,186.14004 236.66387,182.41388 236.66387,182.41388 L 225.77752,187.22526 C 236.0826,190.18366 240.70876,189.62494 248.85492,188.50638 z " style="fill:#2076c1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"/>
|
||||
<path sodipodi:nodetypes="cscccscssc" id="path6069" d="M 35.422878,148.66454 C 20.150885,157.04591 -6.2772909,190.95274 6.2647537,199.01662 C 17.984924,206.55208 68.941642,170.29445 77.667057,153.75538 C 4.3035383,211.52619 14.065561,174.90254 27.008448,162.02628 C 35.805465,151.30801 64.004057,143.68513 71.481066,128.52052 C 32.789119,149.29474 30.405114,131.50519 62.642197,110.82103 C 68.569623,107.02504 107.74937,89.042889 77.768775,114.28261 C 95.502651,106.02716 110.52675,93.267855 98.941531,90.767173 C 83.884151,87.517022 60.202847,105.92694 48.092626,115.80927 C 40.969928,121.62162 11.868522,145.38354 35.422878,148.66454 z " style="fill:#2076c1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"/>
|
||||
<g id="g2188" style="fill:#2076c1;fill-opacity:1;stroke:none">
|
||||
<path style="fill:#2076c1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1" d="M 153.52386,181.54504 C 114.3973,212.57672 133.43947,164.59338 180.00502,149.95001 C 144.43247,174.12306 139.76476,184.61018 153.52386,181.54504 z " id="path2175" sodipodi:nodetypes="ccc"/>
|
||||
<path style="fill:#2076c1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1" d="M 196.30981,176.96638 C 156.1373,209.46239 150.29865,172.10195 184.30492,155.10468 C 167.14111,181.92747 183.59666,177.6607 196.30981,176.96638 z " id="path2177" sodipodi:nodetypes="ccc"/>
|
||||
</g>
|
||||
<path sodipodi:nodetypes="ccc" id="path2179" d="M 229.3687,178.97034 C 185.57023,211.04797 178.47643,161.27557 237.30661,150.27509 C 188.34589,179.18978 219.44475,183.56954 229.3687,178.97034 z " style="fill:#2076c1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"/>
|
||||
</g>
|
||||
<path sodipodi:nodetypes="cscsss" id="path2252" d="M 124.1858,189.83823 C 119.19632,187.34349 148.26509,119.15484 152.29057,142.10943 C 154.09525,152.40027 170.73124,123.57014 170.73124,123.57014 C 170.73124,123.57014 183.79749,99.804357 184.43848,101.87524 C 187.48343,111.71277 149.00775,175.41789 146.27516,159.36674 C 143.51342,143.14437 124.77748,190.13407 124.1858,189.83823 z " style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"/>
|
||||
<path style="fill:#c64e3b;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 127.36915,186.62713 C 122.37967,184.13239 151.44844,115.94374 155.47392,138.89833 C 157.2786,149.18917 173.91459,120.35904 173.91459,120.35904 C 173.91459,120.35904 186.98084,96.593259 187.62183,98.664137 C 190.66678,108.50167 152.1911,172.20679 149.45851,156.15564 C 146.69677,139.93327 127.96083,186.92297 127.36915,186.62713 z " id="path3158" sodipodi:nodetypes="cscsss"/>
|
||||
<path sodipodi:nodetypes="cscsc" id="path2254" d="M 56.312166,214.04162 C 56.312166,214.04162 56.065636,199.44685 80.768246,168.4823 C 100.68005,143.52298 123.7636,107.53934 123.7636,107.53934 C 123.7636,107.53934 119.97892,126.52044 103.15975,148.19092 C 83.527796,173.4855 56.312166,214.04162 56.312166,214.04162 z " style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"/>
|
||||
<path style="fill:#c64e3b;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.125;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 59.52326,215.22497 C 59.52326,215.22497 59.27673,200.6302 83.97934,169.66565 C 103.89115,144.70633 126.9747,108.72269 126.9747,108.72269 C 126.9747,108.72269 123.19002,127.70379 106.37085,149.37427 C 86.73889,174.66885 59.52326,215.22497 59.52326,215.22497 z " id="path4129" sodipodi:nodetypes="cscsc"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 18 KiB |
124
config.el
124
config.el
@@ -4,48 +4,106 @@
|
||||
;;
|
||||
;; Load appearance configuration
|
||||
(load! "+ui")
|
||||
;; Load custom keybindings
|
||||
(load! "+keybindings")
|
||||
;; Set projects directories
|
||||
(setq projectile-project-search-path '("~/Projects"))
|
||||
; Auto cleanup recentf
|
||||
(setq projectile-project-search-path '(("~/Projects" . 2)
|
||||
("~/Documents" . 5)
|
||||
("~/Repos")
|
||||
"~/.dotfiles"
|
||||
"~/Notes"))
|
||||
;; Auto cleanup recentf
|
||||
(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"))
|
||||
auto-save-list-file-prefix
|
||||
(concat "~/.cache/emacs"))
|
||||
;; Set Magit repositories
|
||||
(setq magit-repository-directories '(("~/Projects" . 3)
|
||||
("~/.dotfiles" . 0)
|
||||
("~/.doom.d" . 0)))
|
||||
auto-save-list-file-prefix (concat "~/.cache"))
|
||||
;; Load org configuration
|
||||
(setq org-directory "~/Notes")
|
||||
(after! org (load! "+org"))
|
||||
;; Enter writeroom and disable completion and line numbers in Markdown
|
||||
(add-hook 'markdown-mode-hook (lambda () (display-line-numbers-mode -1)))
|
||||
;; Disable completion and line numbers in Markdown
|
||||
(add-hook! 'markdown-mode-hook (display-line-numbers-mode -1))
|
||||
(after! markdown
|
||||
(set-company-backend! 'markdown-mode nil)
|
||||
(add-hook 'markdown-mode-hook 'global-writeroom-mode))
|
||||
(set-company-backend! 'markdown-mode nil))
|
||||
;; 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
|
||||
(defun revert-buffer-no-confirm ()
|
||||
(interactive)
|
||||
(revert-buffer :ignore-auto :noconfirm))
|
||||
;; Select target in Makefile compilation as default
|
||||
(map! :leader :n "c c" #'makefile-executor-execute-project-target)
|
||||
;; Set docsets for each language
|
||||
(after! python
|
||||
(set-docsets! 'python-mode "Python 3" "NumPy" "Pandas"))
|
||||
(after! c++
|
||||
(set-docsets! 'c++-mode "C++"))
|
||||
(after! go
|
||||
(set-docsets! 'go-mode "Go"))
|
||||
;; 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
|
||||
(setq compilation-finish-functions
|
||||
(lambda (buf str)
|
||||
(if (null (string-match ".*exited abnormally.*" str))
|
||||
(progn
|
||||
(run-at-time
|
||||
"0.5 sec" nil 'delete-windows-on
|
||||
(get-buffer-create "*compilation*"))
|
||||
(message "No Compilation Errors!")))))
|
||||
;; Enable writeroom for text modes
|
||||
(setq writeroom-major-modes '(markdown-mode org-mode))
|
||||
(defun close-compilation-buffer-if-successful (buffer string)
|
||||
"Bury a compilation buffer if succeeded without warnings "
|
||||
(when (and (eq major-mode 'compilation-mode)
|
||||
(string-match "finished" string)
|
||||
(not
|
||||
(with-current-buffer buffer
|
||||
(search-forward "warning" nil t))))
|
||||
(run-with-timer 1 nil
|
||||
(lambda (buf)
|
||||
(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 ,
|
||||
(setq evil-snipe-override-evil-repeat-keys nil)
|
||||
(setq doom-localleader-key ",")
|
||||
;; Disable company mode in Nix
|
||||
(setq-hook! 'nix-mode-hook company-idle-delay nil)
|
||||
;; Trigger flycheck after save
|
||||
(setq flycheck-check-syntax-automatically '(save))
|
||||
;; Ignore development databases folders
|
||||
(after! lsp-mode
|
||||
(add-to-list 'lsp-file-watch-ignored-directories "[/\\\\]\\.mysql\\'")
|
||||
(add-to-list 'lsp-file-watch-ignored-directories "[/\\\\]\\.pgdata\\'"))
|
||||
;; Ignore empty files
|
||||
(after! projectile
|
||||
(add-to-list 'projectile-globally-ignored-files ".gitkeep")
|
||||
(add-to-list 'projectile-globally-ignored-files ".envrc")
|
||||
(add-to-list 'projectile-globally-ignored-files ".project")
|
||||
(add-to-list 'projectile-globally-ignored-directories ".direnv")
|
||||
(add-to-list 'projectile-globally-ignored-directories ".ipynb_checkpoints"))
|
||||
;; Associate polymode to R markdown files
|
||||
(add-to-list 'auto-mode-alist '("\\.[rR]md\\'" . poly-markdown+R-mode))
|
||||
;; Set clangd as C/C++ LSP
|
||||
(setq lsp-clients-clangd-args '("-j=3"
|
||||
"--background-index"
|
||||
"--clang-tidy"
|
||||
"--completion-style=detailed"
|
||||
"--header-insertion=never"
|
||||
"--header-insertion-decorators=0"))
|
||||
(after! lsp-clangd (set-lsp-priority! 'clangd 2))
|
||||
;; Use relative line numbers (Usage: number <j/k>)
|
||||
(setq display-line-numbers-type 'relative)
|
||||
;; Set up RSS reader
|
||||
(after! elfeed (load! "+rss"))
|
||||
;; Set up the mail stack
|
||||
(after! mu4e (load! "+mail"))
|
||||
;; HACK Enable AOT native compilation
|
||||
(setq native-comp-jit-compilation nil)
|
||||
(after! (doom-packages straight)
|
||||
(setq straight--native-comp-available t))
|
||||
;; Use PlatformIO for Arduino development
|
||||
(use-package! platformio-mode
|
||||
:after cc-mode
|
||||
:config
|
||||
(add-hook! 'c++-mode-hook (platformio-conditionally-enable)))
|
||||
;; Disable Pyright's type checking
|
||||
(after! lsp-pyright
|
||||
(setq lsp-pyright-use-library-code-for-types nil))
|
||||
;; Set indentation level to 2
|
||||
(setq tab-width 2)
|
||||
;; Move buffer while maintaining cursor centered
|
||||
(use-package! centered-cursor-mode
|
||||
:config
|
||||
(global-centered-cursor-mode))
|
||||
;; Enable smooth scrolling
|
||||
(pixel-scroll-precision-mode)
|
||||
;; Restore previous session on startup
|
||||
(add-hook 'window-setup-hook #'doom/quickload-session)
|
||||
|
||||
130
init.el
130
init.el
@@ -11,35 +11,40 @@
|
||||
(doom! :input
|
||||
;;chinese
|
||||
;;japanese
|
||||
;;layout ; auie,ctsrnm is the superior home row
|
||||
|
||||
:completion
|
||||
(company + tng) ; the ultimate code completion backend
|
||||
;;(company +tng) ; the ultimate code completion backend
|
||||
(corfu +orderless) ; complete with cap(f), cape and a flying feather!
|
||||
;;helm ; the *other* search engine for love and life
|
||||
;;ido ; the other *other* search engine...
|
||||
(ivy ; a search engine for love and life
|
||||
+fuzzy ; fuzzy search is a millenial thing
|
||||
+icons) ; prettify the small thingss
|
||||
;;(ivy ; a search engine for love and life
|
||||
;;+fuzzy ; fuzzy search is a millenial thing
|
||||
;;+icons) ; prettify the small thingss
|
||||
(vertico +icons) ; The search engine of the future
|
||||
|
||||
:ui
|
||||
;;deft ; notational velocity for Emacs
|
||||
doom ; what makes DOOM look the way it does
|
||||
doom-dashboard ; a nifty splash screen for 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
|
||||
;;hydra
|
||||
;;indent-guides ; highlighted indent columns
|
||||
(ligatures
|
||||
+extra
|
||||
+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
|
||||
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
|
||||
(popup ; tame sudden yet inevitable temporary windows
|
||||
+all ; catch all popups that start with an asterix
|
||||
+defaults) ; default popup rules
|
||||
(pretty-code +iosevka); replace bits of code with pretty symbols
|
||||
;;tabs ; an tab bar for Emacs
|
||||
;;treemacs ; a project drawer, like neotree but cooler
|
||||
;;unicode ; extended unicode support for various languages
|
||||
;;tabs ; an tab bar for Emacs
|
||||
;;treemacs ; a project drawer, like neotree but cooler
|
||||
;;unicode ; extended unicode support for various languages
|
||||
vc-gutter ; vcs diff in the fringe
|
||||
vi-tilde-fringe ; fringe tildes to mark beyond EOB
|
||||
window-select ; visually switch windows
|
||||
@@ -47,39 +52,39 @@
|
||||
zen ; distraction-free coding or writing
|
||||
|
||||
:editor
|
||||
(evil +everywhere); come to the dark side, we have cookies
|
||||
file-templates ; auto-snippets for empty files
|
||||
fold ; (nigh) universal code folding
|
||||
(format +onsave) ; automated prettiness
|
||||
(evil +everywhere) ; come to the dark side, we have cookies
|
||||
file-templates ; auto-snippets for empty files
|
||||
fold ; (nigh) universal code folding
|
||||
(format +onsave) ; automated prettiness
|
||||
;;god ; run Emacs commands without modifier keys
|
||||
;;lispy ; vim for lisp, for people who don't like vim
|
||||
;;multiple-cursors ; editing in many places at once
|
||||
;;objed ; text object editing for the innocent
|
||||
;;parinfer ; turn lisp into python, sort of
|
||||
rotate-text ; cycle region at point between text candidates
|
||||
snippets ; my elves. They type so I don't have to
|
||||
rotate-text ; cycle region at point between text candidates
|
||||
snippets ; my elves. They type so I don't have to
|
||||
;;word-wrap ; soft wrapping with language-aware indent
|
||||
|
||||
:emacs
|
||||
dired ; making dired pretty [functional]
|
||||
electric ; smarter, keyword-based electric-indent
|
||||
;;ibuffer ; interactive buffer management
|
||||
;;ibuffer ; interactive buffer management
|
||||
vc ; version-control and Emacs, sitting in a tree
|
||||
|
||||
:term
|
||||
;;eshell ; a consistent, cross-platform shell (WIP)
|
||||
shell ; a terminal REPL for Emacs
|
||||
;;term ; terminals in Emacs
|
||||
;;vterm ; another terminals in Emacs
|
||||
;;eshell ; the elisp shell that works everywhere
|
||||
;;shell ; simple shell REPL for Emacs
|
||||
;;term ; basic terminal emulator for Emacs
|
||||
vterm ; the best terminal emulation in Emacs
|
||||
|
||||
:checkers
|
||||
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
|
||||
|
||||
:tools
|
||||
;;ansible
|
||||
biblio
|
||||
;;biblio ; Writes a PhD for you (citation needed)
|
||||
debugger ; FIXME stepping through code, to help you add bugs
|
||||
direnv
|
||||
;;docker
|
||||
@@ -87,9 +92,9 @@
|
||||
;;ein ; tame Jupyter notebooks with emacs
|
||||
(eval +overlay) ; run code, run (also, repls)
|
||||
;;gist ; interacting with github gists
|
||||
(lookup ; helps you navigate your code and documentation
|
||||
+docsets) ; ...or in Dash docsets locally
|
||||
lsp
|
||||
lookup ; navigate your code and its documentation
|
||||
;;+docsets) ; ...or in Dash docsets locally
|
||||
(lsp +booster) ; M-x vscode
|
||||
;;macos ; MacOS-specific commands
|
||||
magit ; a git porcelain for Emacs
|
||||
make ; run make tasks from Emacs
|
||||
@@ -99,81 +104,100 @@
|
||||
;;rgb ; creating color strings
|
||||
;;terraform ; infrastructure as code
|
||||
;;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
|
||||
;;agda ; types of types of types of types...
|
||||
;;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
|
||||
;;common-lisp ; if you've seen one lisp, you've seen them all
|
||||
;;coq ; proofs-as-programs
|
||||
;;crystal ; ruby at the speed of c
|
||||
;;csharp ; unity, .NET, and mono shenanigans
|
||||
data ; config/data formats
|
||||
;;(dart +flutter) ; paint ui and not much else
|
||||
;;dhall
|
||||
;;elixir ; erlang done right
|
||||
;;elm ; care for a cup of TEA?
|
||||
emacs-lisp ; drown in parentheses
|
||||
;;erlang ; an elegant language for a more civilized age
|
||||
;;ess ; emacs speaks statistics
|
||||
(ess +lsp) ; emacs speaks statistics
|
||||
;;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
|
||||
(go +lsp) ; the hipster dialect
|
||||
;;(haskell +dante) ; a language that's lazier than I am
|
||||
;;fstar ; (dependent) types and (monadic) effects and Z3
|
||||
;;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
|
||||
;;idris ;
|
||||
json ; At least it ain't XML
|
||||
(java +meghanada) ; the poster child for carpal tunnel syndrome
|
||||
(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
|
||||
;;idris ; a language you can depend on
|
||||
(json +tree-sitter) ; At least it ain't XML
|
||||
(java +lsp
|
||||
+tree-sitter) ; the poster child for carpal tunnel syndrome
|
||||
;;(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
|
||||
;;julia ; a better, faster MATLAB
|
||||
;;kotlin ; a better, slicker Java(Script)
|
||||
;;latex ; writing papers in Emacs has never been so fun
|
||||
;;lean
|
||||
;;factor
|
||||
(latex +lsp) ; writing papers in Emacs has never been so fun
|
||||
;;lean ; for folks with too much to prove
|
||||
;;ledger ; an accounting system in Emacs
|
||||
;;lua ; one-based indices? one-based indices
|
||||
markdown ; writing docs for people to ignore
|
||||
;;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
|
||||
(org ; organize your plain life in plain text
|
||||
+dragndrop ; drag & drop files/images into org buffers
|
||||
;;+hugo ; use Emacs for hugo blogging
|
||||
;;+ipython ; ipython/jupyter support for babel
|
||||
;;+jupyter ; jupyter support for babel
|
||||
+noter
|
||||
+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
|
||||
;;perl ; write code no one else can comprehend
|
||||
(php +lsp) ; perl's insecure younger brother
|
||||
;;+pretty)
|
||||
;;php ; perl's insecure younger brother
|
||||
;;plantuml ; diagrams for confusing people more
|
||||
;;purescript ; javascript, but functional
|
||||
(python +lsp) ; beautiful is better than ugly
|
||||
(python +lsp ; beautiful is better than ugly
|
||||
+pyright
|
||||
+poetry
|
||||
+tree-sitter)
|
||||
;;qt ; the 'cutest' gui framework ever
|
||||
;;racket ; a DSL for DSLs
|
||||
;;raku ; the artist formerly known as perl6
|
||||
rest ; Emacs as a REST client
|
||||
;;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()
|
||||
;;scala ; java, but good
|
||||
;;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.
|
||||
swift ; who asked for emoji variables?
|
||||
;;swift ; who asked for emoji variables?
|
||||
;;terra ; Earth and Moon in alignment for performance.
|
||||
web ; the tubes
|
||||
(web +tree-sitter) ; the tubes
|
||||
yaml ; JSON, but readable
|
||||
;;zig ; C, but simpler
|
||||
|
||||
|
||||
:email
|
||||
;;(mu4e +gmail)
|
||||
(mu4e +org +gmail)
|
||||
;;notmuch
|
||||
;;(wanderlust +gmail)
|
||||
|
||||
:app
|
||||
;;calendar
|
||||
;;emms
|
||||
;;everywhere ; *leave* Emacs!? You must be joking
|
||||
;;irc ; how neckbeards socialize
|
||||
;;(rss +org) ; emacs as an RSS reader
|
||||
rss ; emacs as an RSS reader
|
||||
;;twitter ; twitter client https://twitter.com/vnought
|
||||
;;write ; emacs for writers (fiction, notes, papers, etc.)
|
||||
|
||||
:config
|
||||
;;literate
|
||||
@@ -183,9 +207,7 @@
|
||||
;; If you edit it by hand, you could mess it up, so be careful.
|
||||
;; Your init file should contain only one such instance.
|
||||
;; 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 was added by Custom.
|
||||
;; If you edit it by hand, you could mess it up, so be careful.
|
||||
|
||||
25
packages.el
25
packages.el
@@ -5,4 +5,29 @@
|
||||
;; (package! some-package)
|
||||
;; (package! another-package :recipe (:host github :repo "username/repo"))
|
||||
;; (package! builtin-package :disable t)
|
||||
;; Better org agenda
|
||||
(package! org-super-agenda)
|
||||
;; Save recipes to org file
|
||||
(package! org-chef)
|
||||
;; Miniflux integration for elfeed
|
||||
(package! elfeed-protocol)
|
||||
;; Prettier LaTeX source blocks
|
||||
(package! engrave-faces)
|
||||
;; Prettier org mode
|
||||
(package! org-modern)
|
||||
;; Tangle org files on save
|
||||
(package! org-auto-tangle)
|
||||
;; Enable LaTeX previews automatically
|
||||
(package! org-fragtog)
|
||||
;; Arduino development
|
||||
(package! platformio-mode)
|
||||
;; Light theme
|
||||
(package! os1-theme :recipe (:host github :repo "sashimacs/os1-theme"))
|
||||
;; Move buffer while maintaining cursor centered
|
||||
(package! centered-cursor-mode)
|
||||
;; Use the fork of pdf-tools with smooth scrolling
|
||||
(unpin! pdf-tools)
|
||||
(package! pdf-tools :recipe (:host github :repo "aikrahguzar/pdf-tools" :branch "child-frame-preview"))
|
||||
(package! image-roll :recipe (:host github :repo "dalanicolai/image-roll.el"))
|
||||
;; Declarative org capture templates
|
||||
(package! doct :recipe (:host github :repo "progfolio/doct"))
|
||||
|
||||
11
snippets/org-mode/article latex metadata
Normal file
11
snippets/org-mode/article latex metadata
Normal file
@@ -0,0 +1,11 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: article latex metadata
|
||||
# key: art
|
||||
# --
|
||||
#+TITLE: $0
|
||||
#+SUBTITLE:
|
||||
#+AUTHOR: Amin Kasrou Aouam
|
||||
#+OPTIONS: toc:nil
|
||||
#+LATEX_CLASS: org-plain-latex
|
||||
#+LATEX_CLASS_OPTIONS: [a4paper]
|
||||
#+SETUPFILE: ~/.pandoc/templates/emacs-latex.org
|
||||
@@ -5,13 +5,13 @@
|
||||
#+TITLE: $0
|
||||
#+SUBTITLE:
|
||||
#+AUTHOR: Amin Kasrou Aouam
|
||||
#+DATE: `(format-time-string "%Y-%m-%d")`
|
||||
#+DATE: `(format-time-string "%d-%m-%Y")`
|
||||
#+PANDOC_OPTIONS: template:~/.pandoc/templates/eisvogel.latex
|
||||
#+PANDOC_OPTIONS: listings:t
|
||||
#+PANDOC_OPTIONS: toc:t
|
||||
#+PANDOC_METADATA: lang=es
|
||||
#+PANDOC_METADATA: titlepage:t
|
||||
#+PANDOC_METADATA: listings-no-page-break:t
|
||||
#+PANDOC_METADATA: toc-own-page:t
|
||||
#+PANDOC_METADATA: table-use-row-colors:t
|
||||
#+PANDOC_METADATA: logo:/home/coolneng/Photos/Logos/UGR.png
|
||||
#+PANDOC_METADATA: colorlinks:t
|
||||
#+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
|
||||
9
snippets/org-mode/reveal.js presentation
Normal file
9
snippets/org-mode/reveal.js presentation
Normal file
@@ -0,0 +1,9 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: reveal.js presentation
|
||||
# key: pres
|
||||
# --
|
||||
#+TITLE: $0
|
||||
#+SUBTITLE:
|
||||
#+REVEAL_TITLE_SLIDE: %t <br>%s</br>
|
||||
#+REVEAL_THEME: moon
|
||||
#+OPTIONS: toc:nil ^:nil num:nil
|
||||
9
snippets/org-mode/tufte latex metadata
Normal file
9
snippets/org-mode/tufte latex metadata
Normal file
@@ -0,0 +1,9 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: tufte latex metadata
|
||||
# key: tufte
|
||||
# --
|
||||
#+TITLE: $0
|
||||
#+AUTHOR: Amin Kasrou Aouam
|
||||
#+OPTIONS: toc:nil
|
||||
#+LATEX_CLASS: tufte-handout
|
||||
#+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
|
||||
# --
|
||||
|
||||
Kind 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
|
||||
12
snippets/org-msg-edit-mode/work administration
Normal file
12
snippets/org-msg-edit-mode/work administration
Normal file
@@ -0,0 +1,12 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: work administration template
|
||||
# key: work
|
||||
# condition: t
|
||||
# --
|
||||
Dear colleague,
|
||||
|
||||
You will find attached to this mail my $1 for the month of `(format-time-string "%B %Y")`.
|
||||
|
||||
Kind regards,
|
||||
|
||||
Amin Kasrou Aouam
|
||||
Reference in New Issue
Block a user