;;; init-notes.el --- for notes and tasks -*- lexical-binding: t -*- ;; Author: Franck Cuny ;;; Commentary: ;; commentary ;;; Code: (use-package howm :ensure t :init ;; Org-compatible filenames and syntax. (setq howm-file-name-format "%Y/%m/%Y-%m-%d-%H%M%S.org") (setq howm-view-title-header "*") ;; Use ripgrep for fast searching. (setq howm-view-use-grep t) (setq howm-view-grep-command "rg") (setq howm-view-grep-option "-nH --no-heading --color never") (setq howm-view-grep-extended-option nil) (setq howm-view-grep-fixed-option "-F") (setq howm-view-grep-expr-option nil) (setq howm-view-grep-file-stdin-option nil) ;; Make the "comefrom links" case-insensitive. (setq howm-keyword-case-fold-search t) ;; Get rid of the old-fashioned separators. (setq howm-view-summary-sep "\t") ;; Where to store data. (setq howm-directory "~/Documents/notes") (setq howm-home-directory howm-directory) :config (custom-set-faces '(howm-menu-list-face ((t (:foreground "#a9a9a9")))) '(howm-reminder-normal-face ((t (:foreground "#ab82ff")))) '(howm-reminder-today-face ((t (:background "#993333" :foreground "white")))) '(howm-reminder-todo-face ((t (:foreground "#ffb90f")))))) (use-package org :hook (org-mode . turn-on-flyspell) (org-mode . visual-line-mode) (org-mode . org-indent-mode) :custom (org-directory "~/Documents/notes") (org-startup-folded t) (org-startup-indented t) (org-startup-with-inline-images t) ;; enable todo and checkbox dependencies (org-enforce-todo-dependencies t) (org-enforce-todo-checkbox-dependencies t) (org-hide-emphasis-markers t) (org-hide-leading-stars t) (org-pretty-entities t) (org-return-follows-link t) (org-export-backends '(html md)) (org-imenu-depth 4) (org-insert-heading-respect-content t) (org-outline-path-complete-in-steps nil) (org-src-fontify-natively t) (org-src-preserve-indentation t) (org-src-tab-acts-natively t) (org-src-window-setup 'current-window) (org-yank-adjusted-subtrees t) (org-structure-template-alist '(("s" . "src") ("E" . "src emacs-lisp") ("p" . "src python") ("e" . "example") ("q" . "quote") ("V" . "verbatim")))) (use-package org-auto-tangle :ensure t :hook (org-mode . org-auto-tangle-mode)) (use-package org-babel :no-require t :after (org) :config (org-babel-do-load-languages 'org-babel-load-languages '((python . t) (emacs-lisp . t) (calc . t) (shell . t) (sql . t) (dot . t))) (remove-hook 'kill-emacs-hook 'org-babel-remove-temporary-directory) (advice-add 'org-babel-edit-prep:emacs-lisp :after #'(lambda (_info) (run-hooks 'emacs-lisp-mode-hook)))) (provide 'init-notes) ;;; init-notes.el ends here