2023-08-12 16:45:26 +02:00
( setq user-full-name " Phil Bajsicki " )
2023-04-15 17:25:11 +02:00
2023-08-12 16:45:26 +02:00
( setq global-auto-revert-mode t )
2023-09-21 02:46:05 +02:00
( org-edna-mode )
2023-08-12 16:45:26 +02:00
( setq auth-sources ' ( " ~/.authinfo " ) )
2023-09-21 02:46:05 +02:00
( setq-default backup-inhibited t )
2023-04-15 17:25:11 +02:00
2023-09-21 02:46:05 +02:00
( setq locale-coding-system 'utf-8 )
( set-terminal-coding-system 'utf-8 )
( set-keyboard-coding-system 'utf-8 )
( set-clipboard-coding-system 'utf-8 )
( prefer-coding-system 'utf-8 )
2023-08-14 15:56:03 +02:00
2023-10-15 22:16:55 +02:00
( setq langtool-java-bin " /usr/bin/java " )
2023-08-12 16:45:26 +02:00
( after! counsel
( setq counsel-outline-display-style 'title ) )
2023-04-15 17:25:11 +02:00
2023-08-22 13:06:03 +02:00
( load-theme 'doom-one t )
( doom-themes-neotree-config )
( doom-themes-org-config )
2023-09-21 02:46:05 +02:00
( setq doom-themes-enable-bold t
doom-themes-enable-italic t )
2023-10-15 22:16:55 +02:00
( setq doom-font ( font-spec :family " Iosevka " )
doom-unicode-font ( font-spec :family " Iosevka " ) )
2023-09-21 02:46:05 +02:00
( dolist ( charset ' ( unicode ) )
( set-fontset-font ( frame-parameter nil 'font )
2023-10-15 22:16:55 +02:00
charset ( font-spec :family " Iosevka " ) ) )
( ligature-set-ligatures 't ' ( " www " ) )
;; Enable traditional ligature support in eww-mode, if the
;; `variable-pitch' face supports it
( ligature-set-ligatures 'eww-mode ' ( " ff " " fi " " ffi " ) )
;; Enable all Cascadia Code ligatures in programming modes
( ligature-set-ligatures 'org-mode ' ( " |||> " " <||| " " <==> " " <!-- " " #### " " ~~> " " *** " " ||= " " ||> "
" ::: " " ::= " " =:= " " === " " ==> " " =!= " " =>> " " =<< " " =/= " " !== "
" !!. " " >=> " " >>= " " >>> " " >>- " " >-> " " ->> " " --> " " --- " " -<< "
" <~~ " " <~> " " <*> " " <|| " " <|> " " <$> " " <== " " <=> " " <=< " " <-> "
" <-- " " <-< " " <<= " " <<- " " <<< " " <+> " " </> " " ### " " #_( " " ..< "
" ... " " +++ " " /== " " /// " " _|_ " " www " " && " " ^= " " ~~ " " ~@ " " ~= "
" ~> " " ~- " " ** " " *> " " */ " " || " " |} " " |] " " |= " " |> " " |- " " {| "
" [| " " ]# " " :: " " := " " :> " " :< " " $> " " == " " => " " != " " !! " " >: "
" >= " " >> " " >- " " -~ " " -| " " -> " " -- " " -< " " <~ " " <* " " <| " " <: "
" <$ " " <= " " <> " " <- " " << " " <+ " " </ " " #{ " " #[ " " #: " " #= " " #! "
" ## " " #( " " #? " " #_ " " %% " " .= " " .- " " .. " " .? " " +> " " ++ " " ?: "
" ?= " " ?. " " ?? " " ;; " " /* " " /= " " /> " " // " " __ " " ~~ " " (* " " *) "
" \\ \\ " " :// " ) )
;; Enables ligature checks globally in all buffers. You can also do it
;; per mode with `ligature-mode'.
( global-ligature-mode t )
( set-frame-parameter nil 'alpha-background 85 )
( add-to-list 'default-frame-alist ' ( alpha-background . 85 ) )
2023-04-15 17:25:11 +02:00
( setq display-line-numbers-type 'relative )
( setq next-screen-context-lines 4 )
2023-09-21 02:46:05 +02:00
( setq-default global-visual-line-mode t )
( setq x-stretch-cursor t )
( setq column-number-mode t )
2023-04-15 17:25:11 +02:00
2023-09-21 02:46:05 +02:00
( setq straight-repository-branch " develop " )
( global-set-key " \C -g " 'keyboard-quit )
( global-set-key " \C -cu " 'browse-url-chrome )
2023-04-15 17:25:11 +02:00
( add-to-list 'auto-mode-alist ' ( " \\ .org \\ ' " . org-mode ) )
( setq org-directory " ~/enc/org/ " )
2023-09-21 02:46:05 +02:00
( setq org-enforce-todo-dependencies t )
( setq org-insert-heading-respect-content nil )
( setq org-reverse-note-order nil )
( setq org-show-following-heading t )
( setq org-show-hierarchy-above t )
( setq org-show-siblings nil )
( setq org-deadline-warning-days 7 )
( setq org-blank-before-new-entry ( quote ( ( heading . t )
( plain-list-item . nil ) ) ) )
( setq org-todo-repeat-to-state " LOOP " )
( setq org-remove-highlights-with-change nil )
( setq org-read-date-prefer-future nil )
( setq org-special-ctrl-a/e t )
( setq org-special-ctrl-k t )
( setq org-yank-adjusted-subtrees t )
( setq org-M-RET-may-split-line t )
( setq org-log-done ( quote time ) )
( setq org-log-into-drawer t )
( setq org-catch-invisible-edits " smart " )
( setq org-completion-use-ido t )
( setq org-use-property-inheritance nil )
2023-10-15 22:16:55 +02:00
( setq org-duration-format 'h:mm )
2023-09-21 02:46:05 +02:00
( setq org-hierarchical-todo-statistics t )
( org-align-tags t )
( modify-all-frames-parameters
' ( ( right-divider-width . 2 )
( internal-border-width . 0 ) ) )
( dolist ( face ' ( window-divider
window-divider-first-pixel
window-divider-last-pixel ) )
( face-spec-reset-face face )
( set-face-foreground face ( face-attribute 'default :background ) ) )
( set-face-background 'fringe ( face-attribute 'default :background ) )
( setq
;; Edit settings
org-auto-align-tags nil
org-tags-column 0
org-catch-invisible-edits 'show-and-error
org-insert-heading-respect-content t
;; Org styling, hide markup etc.
org-hide-emphasis-markers t
org-pretty-entities t
org-ellipsis " … "
;; Agenda styling
org-agenda-tags-column 0
org-agenda-block-separator ?─
org-agenda-time-grid
' ( ( daily today require-timed )
( 800 1000 1200 1400 1600 1800 2000 )
" ┄┄┄┄┄ " " ┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ " )
org-agenda-current-time-string
" ⌚ now ───────────────────────────────────────────────── " )
( global-org-modern-mode )
2023-04-15 17:25:11 +02:00
2023-08-12 16:45:26 +02:00
( setq-default org-enforce-todo-dependencies t )
2023-09-21 02:46:05 +02:00
( setq org-enforce-todo-checkbox-dependencies t )
2023-04-15 17:25:11 +02:00
2023-09-21 02:46:05 +02:00
( add-hook 'write-file-hooks 'time-stamp )
( add-hook 'org-mode-hook
( lambda ( )
;; yasnippet
;;disabled; (make-variable-buffer-local 'yas/trigger-key)
;;disabled; (org-set-local 'yas/trigger-key [tab])
;;disabled; (define-key yas/keymap [tab] 'yas/next-field-group)
;; flyspell mode for spell checking everywhere
;;disabled; (flyspell-mode 1)
;; auto-fill mode on
( auto-fill-mode 1 ) ) )
2023-08-22 13:06:03 +02:00
2023-08-12 16:45:26 +02:00
( global-set-key " \C -cl " 'org-store-link )
( global-set-key " \C -ch " 'counsel-org-link )
( global-set-key " \C -cne " 'elgantt-open )
2023-08-22 13:06:03 +02:00
( global-set-key " \C -cnn " 'org-capture )
2023-04-15 17:25:11 +02:00
2023-08-12 22:48:12 +02:00
( global-set-key " \C -cia " ' ( lambda ( ) ( interactive )
2023-09-21 02:46:05 +02:00
( org-time-stamp ' ( 16 ) ) ) )
2023-08-12 22:48:12 +02:00
( global-set-key " \C -cii " ' ( lambda ( ) ( interactive )
2023-09-21 02:46:05 +02:00
( org-time-stamp-inactive ' ( 16 ) ) ) )
2023-08-22 13:06:03 +02:00
2023-09-21 02:46:05 +02:00
( after! org
( setq org-todo-keywords
2023-04-15 17:25:11 +02:00
' ( ( sequence
" INBOX(i) "
" TASK(t) " ; A task that needs doing & is ready to do
" PROJ(p) " ; A project, which usually contains other tasks
" LOOP(r) " ; A recurring task
" WAIT(w) " ; Something external is holding up this task
" HOLD(h) " ; This task is paused/on hold because of me
" | "
" DONE(d) " ; Task successfully completed
" KILL(k) " ) ; Task was cancelled, aborted or is no longer applicable
( sequence
" DECIDE() " ; for making decisions
" | "
" OKAY(o) " ; okay as-is
" YES(y) " ; take action
" NO(n) " ) ) ; don't take action
org-todo-keyword-faces
2023-09-21 02:46:05 +02:00
' (
( " INBOX " :foreground " cyan " :weight bold )
( " TASK " :foreground " purple " :weight bold )
( " PROJ " :foreground " violet " :weight bold )
( " LOOP " :foreground " magenta " :weight bold )
( " WAIT " :foreground " yellow " :weight bold )
( " HOLD " :foreground " orange " :weight bold )
( " DONE " :foreground " green " :weight bold )
( " KILL " :foreground " grey " :weight bold ) ) ) )
( add-hook 'org-insert-heading-hook
( lambda ( )
( if
( or
( string-match " journal.org " buffer-file-name )
( string-match " money " buffer-file-name )
( string-match " therapy.org " buffer-file-name ) )
( ( lambda ( )
( interactive )
( org-time-stamp-inactive ' ( 16 ) )
( newline ) ) )
( setq org-insert-heading-hook nil )
) ) )
2023-04-15 17:25:11 +02:00
2023-08-14 15:56:03 +02:00
( setq org-capture-templates ' ( ( " t " " inbox " entry ( file+headline " ~/enc/org/phil.org " " Inbox " ) " * TODO %i%? " )
( " i " " idea " entry ( file+headline " ~/enc/org/phil.org " " Ideas " ) " * %? " )
( " d " " reminder " entry ( file+headline " ~/enc/org/phil.org " " Reminders " ) " * %i%? \n %U " )
( " p " " person " entry ( file+headline " ~/enc/org/people.org " " People " )
" * %(org-contacts-template-name)
2023-04-15 17:25:11 +02:00
:PROPERTIES:
:EMAIL: % ( org-contacts-template-email )
:PHONE: % ( org-contacts-template-phone )
:ALIAS:
:NICKNAME:
:IGNORE:
:ICON:
:NOTE:
:ADDRESS:
:BIRTHDAY:
:END: " )))
2023-08-12 16:45:26 +02:00
2023-10-15 22:16:55 +02:00
( use-package! org-transclusion
:after org
:init
( map!
:map global-map " <F12> " #' org-transclusion-add
:leader
:prefix " n "
:desc " Org Transclusion Mode " " t " #' org-transclusion-mode ) )
2023-09-21 02:46:05 +02:00
( add-hook 'org-babel-after-execute-hook 'org-display-inline-images )
( defun org-super-links-quick-related ( )
( interactive )
( let ( ( org-super-links-link-prefix " \n related: " ) )
( org-super-links-link ) ) )
( setq org-super-links-related-into-drawer t )
( setq org-super-links-related-drawer-default-name " RELATED "
org-super-links-link-prefix 'org-super-links-link-prefix-timestamp )
( setq org-export-with-broken-links t ) ;; avoiding error on export
( global-unset-key ( kbd " C-c l " ) )
( global-set-key ( kbd " C-c l l " ) 'org-super-links-link )
( global-set-key ( kbd " C-c l s " ) 'org-super-links-store-link )
( global-set-key ( kbd " C-c l i " ) 'org-super-links-insert-drawer-link )
( global-set-key ( kbd " C-c l r " ) 'org-super-links-quick-related )
( global-set-key ( kbd " C-c l d " ) 'org-super-links-delete-link )
( org-super-agenda-mode )
( setq super-agenda-groups
' ( ;; Each group has an implicit boolean OR operator between its selectors.
( :name " Today " ; Optionally specify section name
:time-grid t ; Items that appear on the time grid
)
( :name " DEADLINES " :deadline t :order 1 )
( :name " Focus | [A] " :tag " Focus " :priority " A " :order 2 :face ( :append t :weight bold ) )
;; (:name "Important" :priority "A" :order 4)
;; (:name "Habits" :habit t :order 3)
;; (:name "Shopping" :tag "Besorgung" :order 8)
;; Boolean AND group matches items that match all subgroups
;; :and (:tag "shopping" :tag "@town")
;; Multiple args given in list with implicit OR
;; :tag ("food" "dinner"))
;; :habit t
;; :tag "personal")
( :name " Started " :and ( :todo " TASK " :not ( :tag " someday " ) :not ( :priority " C " ) :not ( :priority " B " ) ) :order 10 )
;;(:name "Space-related (non-moon-or-planet-related)"
;; ;; Regexps match case-insensitively on the entire entry
;; :and (:regexp ("space" "NASA")
;; ;; Boolean NOT also has implicit OR between selectors
;; :not (:regexp "moon" :tag "planet")))
;;(:name "BWG" :tag "@BWG" :order 16)
;; (:name "read" :tag "2read" :order 22)
;; Groups supply their own section names when none are given
( :name " Someday " :and ( :todo ( " WAIT " " HOLD " " INBOX " ) :tag " someday " :not ( :priority " C " ) :not ( :priority " B " ) )
;; Show this group at the end of the agenda (since it has the
;; highest number). If you specified this group last, items
;; with these todo keywords that e.g. have priority A would be
;; displayed in that group instead, because items are grouped
;; out in the order the groups are listed.
:order 25 )
;; "other items": an auto-group with order 99 ----------------------------
( :name " Prio ≤ B " :priority<= " B "
;; Show this section after "Today" and "Important", because
;; their order is unspecified, defaulting to 0. Sections
;; are displayed lowest-number-first.
:order 105 )
( :name " reward "
:tag ( " reward " " lp " )
:order 110
)
( :name " Waiting… " :todo " WAIT " :order 118 ) ; Set order of this section
;; After the last group, the agenda will display items that didn't
;; match any of these groups, with the default order position of 99
) )
( defun my-super-agenda ( )
" generates my super-agenda "
( interactive )
( org-super-agenda-mode )
( let
( ( org-super-agenda-groups super-agenda-groups ) )
( org-agenda nil " a " )
)
)
2023-04-15 17:25:11 +02:00
( org-wild-notifier-mode )
( setq org-wild-notifier-alert-time ' ( 10 ) )
( setq org-wild-notifier-notification-title " Emacs org-mode agenda " )
2023-08-12 16:45:26 +02:00
( setq org-wild-notifier-keyword-whitelist ' ( " TODO " ) )
2023-04-15 17:25:11 +02:00
2023-06-12 15:07:15 +02:00
( setq org-refile-targets ' ( ( nil :maxlevel . 9 )
( org-agenda-files :maxlevel . 9 ) ) )
2023-08-12 16:45:26 +02:00
( setq org-outline-path-complete-in-steps nil )
( setq org-refile-use-outline-path t )
2023-04-15 17:25:11 +02:00
2023-09-21 02:46:05 +02:00
( setq org-contacts-files ' ( " ~/enc/org/people.org " ) )
2023-08-12 16:45:26 +02:00
( define-prefix-command 'org-roam-map )
( global-set-key " \C -r " 'org-roam-map )
( define-key org-roam-map " o " 'org-roam-buffer-toggle )
( define-key org-roam-map " f " 'org-roam-node-find )
( define-key org-roam-map " i " 'org-roam-node-insert )
( define-key org-roam-map " n " 'org-roam-capture )
2023-04-15 17:25:11 +02:00
( setq org-roam-v2-ack t )
( setq org-roam-completion-everywhere t )
( setq org-roam-directory
( file-truename " ~/enc/org/roam " ) )
( org-roam-db-autosync-mode )
2023-08-12 16:45:26 +02:00
( org-roam-db-autosync-enable )
2023-04-15 17:25:11 +02:00
( setq org-roam-capture-templates
2023-08-12 22:48:12 +02:00
' ( ( " n " " default " plain
" %? "
2023-09-21 02:46:05 +02:00
:if-new ( file+head " ${slug}.org " " #+title: ${title} \n #+category: ${title} \n #+filetags: \n " )
:empty-lines 1
2023-08-12 22:48:12 +02:00
:unnarrowed t )
( " j " " journal " plain
2023-04-15 17:25:11 +02:00
" %? "
2023-09-21 02:46:05 +02:00
:if-new ( file+head " journal/journal-${slug}.org " " #+title: ${title} \n #+category: 📔${title} \n #+filetags: 📔 \n " )
2023-08-14 15:56:03 +02:00
:empty-lines 1
2023-08-12 22:48:12 +02:00
:unnarrowed t )
( " t " " Therapy " plain
2023-09-21 02:46:05 +02:00
" #+title: ${title} \n "
:if-new ( file+head " therapy/therapy-${slug}.org " " #+title: ${title} \n #+category: 📗 ${title} \n #+filetags: 📗 \n " )
2023-08-14 15:56:03 +02:00
:empty-lines 1
:unnarrowed ) ) )
2023-08-12 22:48:12 +02:00
2023-08-12 16:45:26 +02:00
( add-to-list 'load-path " ~/.emacs.d/.local/straight/repos/elgantt/ " )
2023-07-22 23:09:34 +02:00
2023-08-12 16:45:26 +02:00
( setq elgantt-header-type 'outline
elgantt-draw-overarching-headers t
elgantt-insert-header-even-if-no-timestamp nil
elgantt-scroll-to-current-month-at-startup t )
2023-07-22 23:09:34 +02:00
2023-08-12 16:45:26 +02:00
( setq elgantt-user-set-color-priority-counter 0 )
2023-07-22 23:09:34 +02:00
2023-08-12 16:45:26 +02:00
( setq elgantt-custom-header-line
' ( ( :left ( ( :prop date-at-point
:padding 25 )
( :prop todo
:padding 30 ) ) )
( :center ( ( :prop headline ) ) )
( :right ( ( :prop hashtag
:padding 40
:text-props ( face ( :background " red " ) ) ) ) ) ) )
2023-07-22 23:09:34 +02:00
2023-08-12 16:45:26 +02:00
( global-set-key " \C -ca " 'org-agenda )
( define-prefix-command 'org-agenda-map )
( global-set-key " \C -a " 'org-agenda-map )
( define-key org-agenda-map " n " 'org-agenda-capture )
( define-key org-agenda-map " a " 'org-agenda )
2023-04-15 17:25:11 +02:00
2023-08-14 15:56:03 +02:00
( setq org-agenda-files ( directory-files-recursively " ~/enc/org " " org$ " ) )
2023-08-12 16:45:26 +02:00
( setq org-agenda-start-day nil
org-agenda-span '14
org-agenda-dim-blocked-tasks 'invisible
org-agenda-sorting-strategy
' ( ( agenda habit-down time-up priority-down category-keep )
( todo priority-down category-keep )
( search category-keep ) )
org-deadline-warning-days 3
org-agenda-insert-diary-extract-time t
org-log-into-drawer t
org-clock-into-drawer t
2023-09-21 02:46:05 +02:00
org-agenda-log-mode-items ' ( closed clock state )
org-agenda-prefix-format " %l %i %c %s %t " )
2023-04-15 17:25:11 +02:00
2023-09-21 02:46:05 +02:00
( setq org-agenda-compact-blocks t )
( setq org-agenda-use-tag-inheritance ( quote ( agenda ) ) ) ;; agenda performance
( setq org-agenda-span 1 )
( add-hook 'org-agenda-mode-hook ' ( lambda ( ) ( hl-line-mode 1 ) ) )
2023-08-22 13:06:03 +02:00
( setq org-agenda-custom-commands
( quote ( ( " x " " Phil's view " agenda " "
2023-09-21 02:46:05 +02:00
( ( org-agenda-prefix-format " %i %-12:c %s %t " ) ) ) ) ) )
( setq org-agenda-todo-ignore-with-date nil )
( setq org-agenda-todo-ignore-deadlines ( quote far ) )
( setq org-agenda-todo-ignore-scheduled ( quote future ) )
( setq org-agenda-skip-deadline-if-done t )
( setq org-agenda-skip-scheduled-if-done t )
( setq org-agenda-text-search-extra-files ( quote ( agenda-archives ) ) )
( setq org-agenda-log-mode-items ( quote ( state ) ) )
;(setq org-agenda-skip-additional-timestamps-same-entry t)
( setq org-agenda-skip-additional-timestamps-same-entry nil )
( setq org-agenda-search-headline-for-time nil )
( setq org-agenda-window-setup 'current-window )
( setq org-agenda-include-diary t )
( setq org-agenda-repeating-timestamp-show-all t )
( setq org-agenda-show-all-dates t )
( setq org-agenda-sorting-strategy
( quote ( ( agenda habit-down time-up user-defined-up priority-down category-keep )
( todo priority-down category-keep )
( tags priority-down category-keep )
( search category-keep ) ) ) )
( setq org-agenda-start-on-weekday nil )
( setq org-agenda-skip-timestamp-if-deadline-is-shown t )
( setq org-agenda-cmp-user-defined 'bh/agenda-sort )
;;(setq org-agenda-tags-column -102)
( setq org-tags-column -101 ) ; for powerplantwin 23" TFT turned 90
; degrees; should *not* differ between
; systems! Otherwise Org-files gets
; re-formatted after switching
; system
;;(when (my-system-type-is-windows)
;; ;;(setq org-agenda-tags-column -103);; for 23" TFT turned 90 degrees
;; (setq org-agenda-tags-column -117);; for 24" TFT turned 90 degrees
;; )
;;(when (my-system-is-sting)
;; (setq org-agenda-tags-column -117);; -117 for 23" TFT sting, rotated 90°
;; )
( setq org-agenda-tags-column ( - ( - ( window-total-width ) 3 ) ) ) ;; total width minus 3
( define-key org-agenda-mode-map ( kbd " C-p " ) 'my-scroll-down-half )
( define-key org-agenda-mode-map ( kbd " C-n " ) 'my-scroll-up-half )
( setq org-agenda-skip-scheduled-if-deadline-is-shown nil )
;;(setq org-agenda-skip-deadline-prewarning-if-scheduled t)
( setq org-global-properties ( quote ( ( " STYLE_ALL " . " habit " ) ) ) )
( setq org-habit-graph-column 100 )
( defun org-agenda-sharpie ( )
" Censor the text of items in the agenda. "
( interactive )
( let ( regexp old-heading new-heading properties )
;; Save face properties of line in agenda to reapply to changed text
( setq properties ( text-properties-at ( point ) ) )
;; Go to source buffer
( org-with-point-at ( org-find-text-property-in-string 'org-marker
( buffer-substring ( line-beginning-position )
( line-end-position ) ) )
;; Save old heading text and ask for new text
( line-beginning-position )
( unless ( org-at-heading-p )
;; Not sure if necessary
( org-back-to-heading ) )
( setq old-heading ( when ( looking-at org-complex-heading-regexp )
( match-string 4 ) ) ) )
( unless old-heading
( error " Can't find heading. How can this be? " ) )
;; Back to agenda buffer
( setq new-heading ( read-from-minibuffer " Overwrite visible heading with: " ) )
( add-text-properties 0 ( length new-heading ) properties new-heading )
;; Replace agenda text
( save-excursion
( let ( ( inhibit-read-only t ) )
( goto-char ( line-beginning-position ) )
( when ( search-forward old-heading ( line-end-position ) )
( replace-match new-heading 'fixedcase 'literal ) ) ) ) ) )
( setq org-export-initial-scope 'subtree )
( setq org-export-with-broken-links t )
( with-eval-after-load 'ox-latex
;;(message (concat "################################################\norg-latex-classes = [" org-latex-classes "]"))
( add-to-list 'org-latex-classes
' ( " scrartcl "
" \\ documentclass \[ a4paper,parskip=half \] \{ scrartcl \} "
( " \\ section \{ %s \} " . " \\ section* \{ %s \} " )
( " \\ subsection \{ %s \} " . " \\ subsection* \{ %s \} " )
( " \\ subsubsection \{ %s \} " . " \\ subsubsection* \{ %s \} " ) ) )
( add-to-list 'org-latex-classes
' ( " detego "
" \\ documentclass \[ a4paper,parskip=half,11pt,headinclude=false,footinclude=false \] \{ scrartcl \}
\\usepackage\[ngerman,american\]\{babel\}\\usepackage\{eurosym\}\\usepackage\{xspace\}\\usepackage\[usenames,dvipsnames\]\{xcolor\}
\\usepackage\[protrusion=true,factor=900\]\{microtype\}\\usepackage\{enumitem\}
\\definecolor\{DispositionColor\}\{RGB\}\{0,54,90\}
\\usepackage\{helvet\}
\\renewcommand\{\\familydefault\}\{\\sfdefault\}
\\DeclareRobustCommand\{\\myacro\}\[1\]\{\\textsc\{\\lowercase\{#1\}\}\} %% abbrevations using small caps
\\usepackage{scrlayer-scrpage} \\rehead{\\includegraphics\[height=1cm\]{{c:/Users/karl.voit/.emacs.d/bin/images/Detego-Logo-209x41.png}}} \\pagestyle{scrheadings} %% Logo in header
\\newenvironment{NOTES}{}{} %% declares org-reveal environment in PDF output
\\usepackage [ space ] {grffile} %% enable spaces in filenames of includegraphics
%% colorful headings:
%\\setheadsepline\{.4pt\}\[\\color\{DispositionColor\}\]
\\renewcommand\{\\headfont\}\{\\normalfont\\sffamily\\color\{DispositionColor\}\}
\\renewcommand\{\\pnumfont\}\{\\normalfont\\sffamily\\color\{DispositionColor\}\}
\\addtokomafont\{disposition\}\{\\color\{DispositionColor\}\}
\\addtokomafont\{caption\}\{\\color\{DispositionColor\}\\footnotesize\}
\\addtokomafont\{captionlabel\}\{\\color\{DispositionColor\}\}
\\usepackage\{enumitem\}
\\setlist\{noitemsep\} %% kills the space between items
"
( " \\ section \{ %s \} " . " \\ section* \{ %s \} " )
( " \\ subsection \{ %s \} " . " \\ subsection* \{ %s \} " )
( " \\ subsubsection \{ %s \} " . " \\ subsubsection* \{ %s \} " ) ) )
( add-to-list 'org-latex-classes
' ( " rise "
" \\ documentclass \[ a4paper,parskip=half,11pt,headinclude=false,footinclude=false \] \{ scrartcl \}
\\usepackage\[ngerman,american\]\{babel\}\\usepackage\{eurosym\}\\usepackage\{xspace\}\\usepackage\[usenames,dvipsnames\]\{xcolor\}
\\usepackage\[protrusion=true,factor=900\]\{microtype\}\\usepackage\{enumitem\}
\\definecolor\{DispositionColor\}\{RGB\}\{0,54,90\}
\\usepackage\{helvet\}
\\renewcommand\{\\familydefault\}\{\\sfdefault\}
\\DeclareRobustCommand\{\\myacro\}\[1\]\{\\textsc\{\\lowercase\{#1\}\}\} %% abbrevations using small caps
\\usepackage{scrlayer-scrpage} \\rehead{\\includegraphics\[height=1cm\]{{c:/Users/karl.voit/.emacs.d/bin/images/RISE_logo_202x500.jpeg}}} \\pagestyle{scrheadings} %% Logo in header
\\newenvironment{NOTES}{}{} %% declares org-reveal environment in PDF output
\\usepackage [ space ] {grffile} %% enable spaces in filenames of includegraphics
%% colorful headings:
%\\setheadsepline\{.4pt\}\[\\color\{DispositionColor\}\]
\\renewcommand\{\\headfont\}\{\\normalfont\\sffamily\\color\{DispositionColor\}\}
\\renewcommand\{\\pnumfont\}\{\\normalfont\\sffamily\\color\{DispositionColor\}\}
\\addtokomafont\{disposition\}\{\\color\{DispositionColor\}\}
\\addtokomafont\{caption\}\{\\color\{DispositionColor\}\\footnotesize\}
\\addtokomafont\{captionlabel\}\{\\color\{DispositionColor\}\}
\\usepackage\{enumitem\}
\\setlist\{noitemsep\} %% kills the space between items
"
( " \\ section \{ %s \} " . " \\ section* \{ %s \} " )
( " \\ subsection \{ %s \} " . " \\ subsection* \{ %s \} " )
( " \\ subsubsection \{ %s \} " . " \\ subsubsection* \{ %s \} " ) ) )
( add-to-list 'org-latex-classes
' ( " lyrics "
" \\ documentclass \[ a4paper,parskip=half \] \{ scrartcl \}
\\renewcommand*\\sfdefault\{lcmss\} \\renewcommand*\\familydefault\{\\sfdefault\} "
( " \\ section \{ %s \} " . " \\ section* \{ %s \} " )
( " \\ subsection \{ %s \} " . " \\ subsection* \{ %s \} " )
( " \\ subsubsection \{ %s \} " . " \\ subsubsection* \{ %s \} " ) ) )
( add-to-list 'org-latex-classes
' ( " lyrics2 "
" \\ documentclass \[ a4paper,parskip=half,twocolumn \] \{ scrartcl \}
\\renewcommand*\\sfdefault\{lcmss\} \\renewcommand*\\familydefault\{\\sfdefault\} "
( " \\ section \{ %s \} " . " \\ section* \{ %s \} " )
( " \\ subsection \{ %s \} " . " \\ subsection* \{ %s \} " )
( " \\ subsubsection \{ %s \} " . " \\ subsubsection* \{ %s \} " ) ) )
( add-to-list 'org-latex-classes
' ( " memoirbook "
" \\ documentclass[a5paper,12pt]{memoir} "
;; "\\semiisopage[8]"
;; "\\hypersetup{colorlinks=true,linkcolor={Blue},urlcolor={Blue}}" ;; genera un problema al exportar
( " \\ chapter{%s} " . " \\ chapter*{%s} " )
( " \\ section{%s} " . " \\ section*{%s} " )
( " \\ subsection{%s} " . " \\ subsection*{%s} " )
( " \\ subsubsection{%s} " . " \\ subsubsection*{%s} " )
( " \\ paragraph{%s} " . " \\ paragraph*{%s} " )
( " \\ subparagraph{%s} " . " \\ subparagraph*{%s} " ) ) )
' ( org-export-latex-default-class " memoir " )
) ;; with-eval-after-load
( use-package ox-asciidoc
;;:ensure t ;; install package if not found OR: (setq use-package-always-ensure t)
:defer 110
)
( defun my-org-copy-region-as-markdown ( )
" Copy the region (in Org) to the system clipboard as Markdown. "
( interactive )
( if ( use-region-p )
( let* ( ( region
( buffer-substring-no-properties
( region-beginning )
( region-end ) ) )
( markdown
( org-export-string-as region 'md t ' ( :with-toc nil ) ) ) )
( gui-set-selection 'CLIPBOARD markdown ) ) ) )
2023-08-22 13:06:03 +02:00
2023-08-12 16:45:26 +02:00
( setq doom-snippets-enable-short-helpers t )
2023-08-22 13:06:03 +02:00
( setq dired-open-extensions ' ( ( " gif " . " sxiv " )
( " jpg " . " sxiv " )
( " png " . " sxiv " )
( " mkv " . " mpv " )
( " mp4 " . " mpv " ) ) )
2023-09-21 02:46:05 +02:00
( mode-icons-mode )
( add-hook 'dired-mode-hook #' mode-icons--mode-disable ) ;; with mode-icons, visiting a dir with dired takes up *lots* of CPU for =mode-icons-reset= (performance-issue)
( add-to-list 'auto-mode-alist ' ( " \\ .[Cc][Ss][Vv] \\ ' " . csv-mode ) )
( autoload 'csv-mode " csv-mode "
" Major mode for editing comma-separated value files. " t )
;; To open files with .journal extension in hledger-mode
( add-to-list 'auto-mode-alist ' ( " \\ .journal \\ ' " . hledger-mode ) )
;; Provide the path to you journal file.
;; The default location is too opinionated.
( setq hledger-jfile " ~/enc/org/hledger/2023.journal " )
;;; Auto-completion for account names
;; For company-mode users,
( add-to-list 'company-backends 'hledger-company )