Created
September 9, 2023 11:54
-
-
Save bx-sa1/dcc87595ac56a7b9679f165fa2766896 to your computer and use it in GitHub Desktop.
init.el
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(require 'package) | |
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/")) | |
(unless (package-installed-p 'use-package) | |
(package-refresh-contents) | |
(package-install 'use-package) | |
(eval-when-compile (require 'use-package))) | |
;; variables | |
(defvar baba/org-capture-title "") | |
;; functions | |
(defun baba/find-config () | |
"Edit init.el" | |
(interactive) | |
(find-file "~/.config/emacs/init.el")) | |
(defun baba/org-capture-get-target (folder) | |
(let ((title (read-string "Title "))) | |
(setq baba/org-capture-title title) | |
(let ((path (concat org-directory folder title ".org"))) | |
(set-buffer (org-capture-target-buffer path)) | |
(goto-char (point-min))))) | |
;; settings | |
(defalias 'yes-or-no-p 'y-or-n-p) | |
(setq use-package-always-ensure t) | |
(setq backup-directory-alist `(("." . "~/.local/state/emacs/backups"))) | |
(tool-bar-mode -1) | |
(scroll-bar-mode -1) | |
(load-theme 'misterioso t) | |
(setq custom-file (make-temp-file "emacs-custom")) | |
(global-auto-revert-mode) | |
(setq-default tab-width 4) | |
;; keybinds | |
(global-set-key (kbd "<f12>") 'baba/find-config) | |
;; packages | |
(use-package org | |
:ensure t | |
:hook ((org-mode . visual-line-mode) | |
(org-mode . variable-pitch-mode)) | |
:config | |
(setq org-directory (file-truename "~/Documents/org/")) | |
(setq org-startup-with-inline-images t) | |
(setq org-id-link-to-org-use-id 'create-if-interactive-and-no-custom-id) | |
(setq org-agenda-files '("notes.org" "quick_notes.org")) | |
(setq org-hide-emphasis-markers t) | |
(require 'oc-basic) | |
(setq org-latex-pdf-process | |
(let | |
((cmd (concat "pdflatex -shell-escape -interaction nonstopmode" | |
" --synctex=1" | |
" -output-directory %o %f"))) | |
(list cmd | |
"cd %o; if test -r %b.idx; then makeindex %b.idx; fi" | |
"cd %o; bibtex %b" | |
cmd | |
cmd))) | |
(setq org-capture-templates | |
'(("q" "Quick note" entry (file "quick_notes.org") | |
"* %?\n") | |
("j" "Anki (Japanese)" entry (file+headline "notes.org" "Japanese") | |
"* %x\n:PROPERTIES:\n:ANKI_DECK: Language\n:ANKI_NOTE_TYPE: Basic (and reversed card)\n:END:\n** Front\n%?\n** Back\n%x\n") | |
("p" "Anki (Portuguese)" entry (file+headline "notes.org" "Portuguese") | |
"* %x\n:PROPERTIES:\n:ANKI_DECK: Language\n:ANKI_NOTE_TYPE: Basic (and reversed card)\n:END:\n** Front\n%?\n** Back\n%x\n"))) | |
:bind (("C-c c" . org-capture) | |
("C-c l" . org-store-link) | |
("C-c a" . org-agenda))) | |
(use-package org-roam | |
:after org | |
:ensure t | |
:config | |
(setq org-roam-directory (concat org-directory "roam/")) | |
(org-roam-db-autosync-mode) | |
:bind (("C-c r i" . org-roam-node-insert) | |
("C-c r f" . org-roam-node-find) | |
("C-c r c" . org-roam-capture))) | |
(use-package anki-editor | |
:ensure t | |
:config | |
(setq anki-editor-create-decks t ;; Allow anki-editor to create a new deck if it doesn't exist | |
anki-editor-org-tags-as-anki-tags t) | |
:bind (("<f9>" . anki-editor-push-notes) | |
("C-c RET" . anki-editor-insert-note))) | |
(use-package org-bullets | |
:init | |
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1)))) | |
(use-package dashboard | |
:ensure t | |
:config | |
(dashboard-setup-startup-hook) | |
(setq initial-buffer-choice (lambda () (get-buffer "*dashboard*")))) | |
(use-package counsel | |
:config | |
(ivy-mode) | |
(setq ivy-use-virtual-buffers t) | |
:bind (("M-x" . counsel-M-x) | |
("C-x C-f" . counsel-find-file) | |
("M-y" . counsel-yank-pop) | |
("<f1> f" . counsel-describe-function) | |
("<f1> v" . counsel-describe-variable) | |
("<f1> l" . counsel-find-library) | |
("<f2> i" . counsel-info-lookup-symbol) | |
("<f2> u" . counsel-unicode-char) | |
("<f2> j" . counsel-set-variable) | |
("C-x b" . ivy-switch-buffer) | |
("C-c C-r" . ivy-resume))) | |
(use-package org-alert | |
:ensure t | |
:config | |
(setq alert-default-style 'notifications) | |
(org-alert-enable)) | |
(use-package org-download | |
:ensure t) | |
(use-package go-mode | |
:ensure t | |
:hook ((go-mode . display-line-numbers-mode))) | |
z |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment