doom-emacs

    Key Bindings

    (map! :leader
          (:desc "file" :prefix "f"
            :desc "Delete file" :n "D" #'doom/delete-this-file)
          (:desc "open" :prefix "o"
            :desc "Org agenda" :n "a" #'org-agenda)
          )

    Git

    I personally use gitflow for most of my projects. So adding gitflow support to magit.
    (def-package! magit-gitflow
      :init (add-hook 'magit-mode-hook 'turn-on-magit-gitflow)
      :after magit)

    org-mode

    Basic Variables

    (setq org-directory "~/io"
          org-agenda-files (concat org-directory "/.agenda-files")
          org-log-into-drawer 1
          org-ellipsis " ▼ "
          org-archive-mark-done nil)

    Refile

    (setq org-refile-targets
          '((nil :maxlevel . 3)
            (org-agenda-files :maxlevel . 3)))

    Capture

    (setq org-capture-templates
          `(("t" "todo" entry
             (file+headline ,(concat org-directory "/inbox.org") "Tasks")
             "* TODO %?\n:LOGBOOK:\n- Added: %U\n:END:"
             ::empty-lines-before 1
             ::empty-lines-after 1)
            ("n" "note" entry
             (file+headline ,(concat org-directory "/inbox.org") "Notes")
             "* %^{description}\n:LOGBOOK:\n- Added: %U\n:END:\n\n%?"
             ::empty-lines-before 1
             ::empty-lines-after 1)
            ("l" "link" entry
             (file+headline ,(concat org-directory "/inbox.org") "Notes")
             "* %?\n:LOGBOOK:\n- Added: %U\n:END:\n%^L"
             ::empty-lines-before 1
             ::empty-lines-after 1)
            ))

    Agenda

    (setq org-agenda-custom-commands
          '((" " "My Agenda"
             ((agenda "This Week" ((org-agenda-span 7) ;; days for the calander
                                   ))
              (tags-todo "-pause+TODO=\"NEXT\""
                         ((org-agenda-overriding-header "NEXT")))
              (tags-todo "-pause+@work"
                         ((org-agenda-overriding-header "WORK")))
              ))
            ("r" "Review"
             (
              (tags-todo "-pause+TODO=\"TODO\"-CATEGORY=\"routine\""
                         ((org-agenda-overriding-header "TODOs")))
              (tags-todo "pause"
                         ((org-agenda-overriding-header "PAUSED")))
              ))
            ("Q" . "Custom Queries")
            ("Qn" "Note Search" search ""
             ((org-agenda-files (file-expand-wildcards (concat org-directory "/notes/*.org")))))
            ))

    Utilities

    (after! org
      (map! :map evil-org-mode-map
            :localleader
            :n "l" #'x/org-insert-link-with-title)
      )

    coding

    (after! js2-mode
      ;; javascript indent
      (setq-default
       ;; js2-mode
       js2-basic-offset 2
       js-indent-level 2
       ;; web-mode
       css-indent-offset 2
       web-mode-markup-indent-offset 2
       web-mode-css-indent-offset 2
       web-mode-code-indent-offset 2
       web-mode-attr-indent-offset 2)
      )