;general keybindings (map! :leader :desc "insert header" "i h" #'my-insert-header) (map! :leader :desc "insert icons" "i i" #'all-the-icons-insert) (map! :leader :desc "Org babel tangle" "m B" #'org-babel-tangle) (map! :leader :desc "sort lines" "m S" #'sort-lines) ;open elfeed (map! :leader :desc "elfeed" "o n" #'elfeed) ;open personal files (map! :leader (:prefix ("f o" . "open personal files") :desc "open doomconfig" "c" #'(lambda () (interactive) (find-file "~/Nextcloud/Dokumente/org_files/config_doom_emacs.org")) :desc "open notes" "n" #'(lambda () (interactive) (find-file "~/Nextcloud/Dokumente/org_files/notes.org")) :desc "open todo_firma" "f" #'(lambda () (interactive) (find-file "~/Nextcloud/Dokumente/org_files/todo_firma.org")) :desc "open todo_securepoint" "s" #'(lambda () (interactive) (find-file "~/Nextcloud/Dokumente/org_files/todo_securepoint.org")) :desc "open todo" "t" #'(lambda () (interactive) (find-file "~/Nextcloud/Dokumente/org_files/todo.org")))) ;org-agenda (map! :after org-agenda :map org-agenda-mode-map "z m" #'org-agenda-month-view) (setq-default indent-tabs-mode nil) (setq-default tab-width 4) ;;(setq indent-line-function 'insert-tab) (beacon-mode 1) (setq user-full-name "Manuel Prinz" user-mail-address "maprinz@gmx.de") ;;############################################################################# (require 'elfeed) (require 'elfeed-org) (require 'elfeed-goodies) (elfeed-org) (setq rmh-elfeed-org-files (list "~/Nextcloud/Dokumente/org_files/elfeed.org")) (elfeed-goodies/setup) (setq elfeed-search-date-format '("%y-%m-%d" 10 :left)) (add-hook! 'elfeed-search-mode-hook #'elfeed-update) (setq doom-font (font-spec :family "Ubuntu Mono" :size 16) doom-variable-pitch-font (font-spec :family "Ubuntu Mono" :size 21) doom-big-font (font-spec :family "Ubuntu Mono" :size 18)) (after! doom-themes (setq doom-themes-enable-bold t doom-themes-enable-italic t)) (custom-set-faces! '(font-lock-comment-face :slant italic) '(font-lock-keyword-face :slant italic)) ;; set default theme (setq doom-theme 'doom-one doom-themes-enable-bold t doom-themes-enable-italic t) ;; add transparency to backgroound (add-to-list 'default-frame-alist '(alpha-background . 95)) ;; line numbers relative (setq display-line-numbers-type 'relative) ;;; :editor evil ;; Focus new window after splitting (setq evil-split-window-below t evil-vsplit-window-right t) (setq org-journal-dir "~/Nextcloud/Dokumente/org_files/journal/" org-journal-file-format "%Y%m" org-journal-file-type 'monthly org-journal-date-format "%A, %d %B %Y") (require 'org-journal) (use-package all-the-icons :diminish) (use-package all-the-icons-dired :defer t :after (dired) :diminish :init :config (setq all-the-icons-dired-monochrome nil) (add-hook 'dired-mode-hook 'all-the-icons-dired-mode)) (setq all-the-icons-scale-factor 1.0) (use-package doom-modeline :ensure t :init (doom-modeline-mode 1) :config (setq doom-modeline-icon t doom-modeline-height 20 doom-modeline-major-mode-icon t doom-modeline-major-mode-color-icon t doom-modeline-buffer-state-icon t doom-modeline-buffer-modification-icon t doom-modeline-modal-modern-icon t doom-modeline-buffer-file-name-style 'truncate-nil)) ;;(require 'org-superstar) ;;(add-hook 'org-mode-hook (lambda () (org-superstar-mode 1))) (after! org (add-to-list 'org-export-backends 'latex) (setq org-directory "~/Nextcloud/Dokumente/org_files/" ;;org-superstar-headline-bullets-list '("◉" "●" "○" "◆" "●" "○" "◆") ;;org-modern-replace-stars "◉●○◆●○◆" ;;org-superstar-item-bullet-alist '((?+ . ?➤) (?- . ?✦)) ;;org-hide-emphasis-markers t ;;org-ellipsis " ▼ ")) org-modern-hide-stars nil org-modern-list '((?+ . "➤") (?- . "✦")) org-modern-fold-stars '(("▸" . "▼") ("▹" . "▿") ("▸" . "▾") ("▹" . "▿")) org-modern-label-border 1 )) ;; changes the font size of the headlines, f.e. 1.2 increases the font size about 20% (custom-set-faces '(org-level-1 ((t (:inherit outline-1 :foreground "mediumslateblue" :height 1.15)))) '(org-level-2 ((t (:inherit outline-2 :foreground "coral" :height 1.0)))) '(org-level-3 ((t (:inherit outline-3 :height 1.0)))) '(org-level-4 ((t (:inherit outline-4 :height 1.0)))) '(org-level-5 ((t (:inherit outline-5 :height 1.0)))) ) (after! org-capture (add-to-list 'org-capture-templates '("f" "Todo Firma" entry (file+headline "~/Nextcloud/Dokumente/org_files/todo_firma.org" "zu erledigen") "* TODO %T %?\n %i")) (add-to-list 'org-capture-templates '("F" "Agenda Firma" entry (file "~/Nextcloud/Dokumente/org_files/agenda/todo_work.org") "* TODO %?")) (add-to-list 'org-capture-templates '("P" "Agenda privat" entry (file "~/Nextcloud/Dokumente/org_files/agenda/todo_private.org") "* TODO %?")) (add-to-list 'org-capture-templates '("s" "Todo Securepoint" entry (file+headline "~/Nextcloud/Dokumente/org_files/todo_securepoint.org" "zu erledigen") "* TODO %T %?\n %i")) ) (after! org-roam (setq org-roam-directory "~/Nextcloud/Dokumente/org_files/roam") (setq org-roam-capture-templates '( ("a" "Anleitung" plain "* TODO Anleitung ${title} schreiben\n:PROPERTIES:\n:CATEGORY: roam\n:END:\n%?" :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n#+date: %<%d.%m.%Y>\n\n") :unnarrowed t) ("d" "default" plain "%?" :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n") :unnarrowed t) ) ) ) ;; (define-globalized-minor-mode global-rainbow-mode rainbow-mode ;; (lambda () ;; (when (not (memq major-mode ;; (list 'org-agenda-mode 'org-roam-mode 'elfeed-search-mode 'elfeed-show-mode))) ;; (rainbow-mode 1)))) ;; (global-rainbow-mode 1 ) ;; allgmeine Einstellungen (after! org (setq calendar-week-start-day 1 diary-file "~/Nextcloud/Dokumente/org_files/agenda/diary.org" org-agenda-entry-text-maxlines 5 org-agenda-files "~/Nextcloud/Dokumente/org_files/agenda/agenda.org" org-agenda-start-with-entry-text-mode nil org-agenda-todo-ignore-scheduled t org-agenda-with-colors t org-agenda-include-diary t holiday-oriental-holidays nil holiday-islamic-holidays nil holiday-bahai-holidays nil holiday-solar-holidays nil holiday-hebrew-holidays nil calendar-day-name-array ["Sonntag" "Montag" "Dienstag" "Mittwoch" "Donnerstag" "Freitag" "Samstag"] calendar-month-name-array ["Januar" "Februar" "März" "April" "Mai" "Juni" "Juli" "August" "September" "Oktober" "November" "Dezember"] ) ) (add-hook 'calendar-load-hook (lambda () (calendar-set-date-style 'european))) (setq org-agenda-category-icon-alist `( ("Firma" ,(list (all-the-icons-faicon "building-o")) nil nil :ascent center) ("privat" ,(list (all-the-icons-faicon "home")) nil nil :ascent center) ("Geb" ,(list (all-the-icons-faicon "birthday-cake")) nil nil :ascent center) ("Urlaub" ,(list (all-the-icons-material "wb_sunny")) nil nil :ascent center) ("diary" ,(list (all-the-icons-material "today")) nil nil :ascent center) ("roam" ,(list (all-the-icons-faicon "pencil")) nil nil :ascent center) ) ) ;; automatisches Speichern beim Ändern der Termine in der Übersicht. ;; (advice-add 'org-deadline :after 'org-save-all-org-buffers) ;; (advice-add 'org-schedule :after 'org-save-all-org-buffers) ;; (advice-add 'org-store-log-note :after 'org-save-all-org-buffers) ;; (advice-add 'org-todo :after 'org-save-all-org-buffers) ;; benutzerdefinierte Übersichten (setq org-agenda-custom-commands '( ("o" "Übersicht" ( (tags "PRIORITY=\"A\"" ( (org-agenda-skip-function '(org-agenda-skip-entry-if 'todo 'done)) (org-agenda-overriding-header "\noffene Aufgaben mit hoher Priorität:\n") ) ) (agenda "" ((org-agenda-span 3) (org-agenda-start-day "+0") (org-agenda-overriding-header "die nächsten 3 Tage:\n") ) ) (alltodo "" ((org-agenda-overriding-header "alle noch offenen TODOs:\n")) ) ) ) ("p" "private Termine" agenda "" ( (org-agenda-files '("~/Nextcloud/Dokumente/org_files/agenda/todo_private.org" "~/Nextcloud/Dokumente/org_files/agenda/special_days.org")) (org-agenda-start-with-entry-text-mode 1) (org-agenda-start-on-weekday 1) (org-agenda-start-day "+0") (org-agenda-span 7) (org-agenda-overriding-header "\n die aktuelle Woche:\n") ) ) ("P" "privat TODO" ((tags-todo "CATEGORY=\"privat\"" ( (org-agenda-overriding-header "\nprivate TODOs ohne Termin:\n") (org-agenda-skip-function '(org-agenda-skip-entry-if 'todo 'done 'scheduled)) ) ) (tags-todo "CATEGORY=\"roam\"" ( (org-agenda-overriding-header "Anleitungen noch fertig schreiben:\n") (org-agenda-skip-function '(org-agenda-skip-entry-if 'todo 'done 'scheduled)) ) )) ) ("f" "Termine Firma" agenda "" ( (org-agenda-files '("~/Nextcloud/Dokumente/org_files/agenda/todo_work.org" "~/Nextcloud/Dokumente/org_files/agenda/special_days.org")) (org-agenda-start-with-entry-text-mode 1) (org-agenda-start-on-weekday 1) (org-agenda-start-day "+0") (org-agenda-span 5) (org-agenda-overriding-header "\n die aktuelle Woche:\n") ) ) ("F" "Firma TODO" ((tags-todo "CATEGORY=\"Firma\"" ( (org-agenda-overriding-header "\nTODOs Firma ohne Termin:\n") (org-agenda-skip-function '(org-agenda-skip-entry-if 'todo 'done 'scheduled)) ) )) ) ) ) ;; Feiertage (setq solar-n-hemi-seasons '("Frühlingsanfang" "Sommeranfang" "Herbstanfang" "Winteranfang")) (setq holiday-general-holidays '((holiday-fixed 1 1 "Neujahr") (holiday-fixed 5 1 "1. Mai") (holiday-fixed 10 3 "Tag der Deutschen Einheit"))) ;; Feiertage für NRW, weitere auskommentiert (setq holiday-christian-holidays '((holiday-float 12 0 -4 "1. Advent" 24) (holiday-float 12 0 -3 "2. Advent" 24) (holiday-float 12 0 -2 "3. Advent" 24) (holiday-float 12 0 -1 "4. Advent" 24) (holiday-fixed 12 6 "Nikolaus") (holiday-fixed 12 24 "Heiligabend") (holiday-fixed 12 25 "1. Weihnachtstag") (holiday-fixed 12 26 "2. Weihnachtstag") (holiday-fixed 12 31 "Silvester") (holiday-fixed 1 6 "Heilige Drei Könige") (holiday-easter-etc -48 "Rosenmontag") (holiday-easter-etc -3 "Gründonnerstag") (holiday-easter-etc -2 "Karfreitag") (holiday-easter-etc 0 "Ostersonntag") (holiday-easter-etc +1 "Ostermontag") (holiday-easter-etc +39 "Christi Himmelfahrt") (holiday-easter-etc +49 "Pfingstsonntag") (holiday-easter-etc +50 "Pfingstmontag") (holiday-easter-etc +60 "Fronleichnam") (holiday-fixed 8 15 "Mariae Himmelfahrt") (holiday-fixed 11 1 "Allerheiligen") (holiday-float 11 3 1 "Buss- und Bettag" 16) (holiday-float 11 0 1 "Totensonntag" 20))) ;; Farben ;; (add-hook 'org-finalize-agenda-hook ;; (lambda () ;; (save-excursion ;; (color-org-header "privat" "green") ;; (color-org-header "Geb:" "gold") ;; (color-org-header "Firma" "orange") ;; (color-org-header "Urlaub" "SkyBlue4")))) ;; (defun color-org-header (tag col) ;; "" ;; (interactive) ;; (goto-char (point-min)) ;; (while (re-search-forward tag nil t) ;; (add-face-text-property (match-beginning 0) (point-at-eol) '(:foreground col) 'append) ;; ) ;; ) ;; Zeit in Sekunden, bis die Vorschlagsliste aufgeht. (setq company-idle-delay (lambda () (if (company-in-string-or-comment) nil 1.5))) (defun my-insert-header () "Insert header for scripts" (interactive) (insert-file-contents "~/Nextcloud/Dokumente/org_files/header.txt")) ;; ;;; Configure Package Archives ----------------------------- ;; ;; Initialize package sources ;; (require 'package) ;; ;; This will be needed if you decide to use doom-themes! ;; (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/")) ;; ;; Set up package.el and refresh package archives if it hasn't been done yet ;; (package-initialize) ;; (unless package-archive-contents ;; (package-refresh-contents)) ;; ;;; Basic Appearance --------------------------------------- ;; ;; More minimal UI ;; (setq inhibit-startup-screen t) ;; (menu-bar-mode 0) ;; (tool-bar-mode 0) ;; (scroll-bar-mode 0) ;; ;; Let the desktop background show through ;; ;(set-frame-parameter (selected-frame) 'alpha '(97 . 100)) ;; ;(add-to-list 'default-frame-alist '(alpha . (90 . 90))) ;; ;;; Theme and Fonts ---------------------------------------- ;; ;; Install doom-themes ;; ;(unless (package-installed-p 'doom-themes) ;; ; (package-install 'doom-themes)) ;; ;; Load up doom-palenight for the System Crafters look ;; ;(load-theme 'doom-palenight t) ;; ;; Set reusable font name variables ;; (defvar my/fixed-width-font "JetBrains Mono" ;; "The font to use for monospaced (fixed width) text.") ;; (defvar my/variable-width-font "Iosevka Aile" ;; "The font to use for variable-pitch (document) text.") ;; ;; NOTE: These settings might not be ideal for your machine, tweak them as needed! ;; (set-face-attribute 'default nil :font my/fixed-width-font :weight 'light :height 180) ;; (set-face-attribute 'fixed-pitch nil :font my/fixed-width-font :weight 'light :height 190) ;; (set-face-attribute 'variable-pitch nil :font my/variable-width-font :weight 'light :height 1.3) ;; ;;; Org Mode Appearance ------------------------------------ ;; ;; Load org-faces to make sure we can set appropriate faces ;; (require 'org-faces) ;; ;; Hide emphasis markers on formatted text ;; (setq org-hide-emphasis-markers t) ;; ;; Resize Org headings ;; (dolist (face '((org-level-1 . 1.2) ;; (org-level-2 . 1.1) ;; (org-level-3 . 1.05) ;; (org-level-4 . 1.0) ;; (org-level-5 . 1.1) ;; (org-level-6 . 1.1) ;; (org-level-7 . 1.1) ;; (org-level-8 . 1.1))) ;; (set-face-attribute (car face) nil :font my/variable-width-font :weight 'medium :height (cdr face))) ;; ;; Make the document title a bit bigger ;; (set-face-attribute 'org-document-title nil :font my/variable-width-font :weight 'bold :height 1.3) ;; ;; Make sure certain org faces use the fixed-pitch face when variable-pitch-mode is on ;; (set-face-attribute 'org-block nil :foreground nil :inherit 'fixed-pitch) ;; (set-face-attribute 'org-table nil :inherit 'fixed-pitch) ;; (set-face-attribute 'org-formula nil :inherit 'fixed-pitch) ;; (set-face-attribute 'org-code nil :inherit '(shadow fixed-pitch)) ;; (set-face-attribute 'org-verbatim nil :inherit '(shadow fixed-pitch)) ;; (set-face-attribute 'org-special-keyword nil :inherit '(font-lock-comment-face fixed-pitch)) ;; (set-face-attribute 'org-meta-line nil :inherit '(font-lock-comment-face fixed-pitch)) ;; (set-face-attribute 'org-checkbox nil :inherit 'fixed-pitch) ;; ;;; Centering Org Documents -------------------------------- ;; ;; Install visual-fill-column ;; (unless (package-installed-p 'visual-fill-column) ;; (package-install 'visual-fill-column)) ;; ;; Configure fill width ;; (setq visual-fill-column-width 110 ;; visual-fill-column-center-text t) ;; ;;; Org Present -------------------------------------------- ;; ;; Install org-present if needed ;; (unless (package-installed-p 'org-present) ;; (package-install 'org-present)) ;; (defun my/org-present-prepare-slide (buffer-name heading) ;; ;; Show only top-level headlines ;; (org-overview) ;; ;; Unfold the current entry ;; (org-show-entry) ;; ;; Show only direct subheadings of the slide but don't expand them ;; (org-show-children)) ;; (defun my/org-present-start () ;; ;; Tweak font sizes ;; (setq-local face-remapping-alist '((default (:height 1.5) variable-pitch) ;; (header-line (:height 4.0) variable-pitch) ;; (org-document-title (:height 1.75) org-document-title) ;; (org-code (:height 1.55) org-code) ;; (org-verbatim (:height 1.55) org-verbatim) ;; (org-block (:height 1.25) org-block) ;; (org-block-begin-line (:height 0.7) org-block))) ;; ;; Set a blank header line string to create blank space at the top ;; (setq header-line-format " ") ;; ;; Display inline images automatically ;; (org-display-inline-images) ;; ;; Center the presentation and wrap lines ;; (visual-fill-column-mode 1) ;; (visual-line-mode 1)) ;; (defun my/org-present-end () ;; ;; Reset font customizations ;; (setq-local face-remapping-alist '((default variable-pitch default))) ;; ;; Clear the header line string so that it isn't displayed ;; (setq header-line-format nil) ;; ;; Stop displaying inline images ;; (org-remove-inline-images) ;; ;; Stop centering the document ;; (visual-fill-column-mode 0) ;; (visual-line-mode 0)) ;; ;; Turn on variable pitch fonts in Org Mode buffers ;; (add-hook 'org-mode-hook 'variable-pitch-mode) ;; ;; Register hooks with org-present ;; (add-hook 'org-present-mode-hook 'my/org-present-start) ;; (add-hook 'org-present-mode-quit-hook 'my/org-present-end) ;; (add-hook 'org-present-after-navigate-functions 'my/org-present-prepare-slide)