new org look
This commit is contained in:
+230
-101
@@ -5,28 +5,29 @@
|
|||||||
* Init
|
* Init
|
||||||
** Package management
|
** Package management
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
;; This is only needed once, near the top of the file
|
;; This is only needed once, near the top of the file
|
||||||
|
|
||||||
(require 'package)
|
(require 'package)
|
||||||
(add-to-list 'package-archives
|
(add-to-list 'package-archives
|
||||||
'("melpa" . "https://melpa.org/packages/") t)
|
'("melpa" . "https://melpa.org/packages/") t)
|
||||||
(package-initialize)
|
(package-initialize)
|
||||||
|
|
||||||
(setq package-archives
|
(setq package-archives
|
||||||
'(("GNU ELPA" . "https://elpa.gnu.org/packages/")
|
'(("GNU ELPA" . "https://elpa.gnu.org/packages/")
|
||||||
("MELPA Stable" . "https://stable.melpa.org/packages/")
|
("MELPA Stable" . "https://stable.melpa.org/packages/")
|
||||||
("MELPA" . "https://melpa.org/packages/"))
|
("MELPA" . "https://melpa.org/packages/"))
|
||||||
package-archive-priorities
|
package-archive-priorities
|
||||||
'(("GNU ELPA" . 10)
|
'(("GNU ELPA" . 10)
|
||||||
("MELPA" . 5)
|
("MELPA" . 5)
|
||||||
("MELPA Stable" . 0)))
|
("MELPA Stable" . 0)))
|
||||||
|
|
||||||
(unless (package-install 'use-package)
|
(unless (package-install 'use-package)
|
||||||
(package-refresh-contents)
|
(package-refresh-contents)
|
||||||
(package-install 'use-package))
|
(package-install 'use-package))
|
||||||
|
|
||||||
(eval-when-compile (require 'use-package))
|
(eval-when-compile (require 'use-package))
|
||||||
(setq use-package-always-ensure t)
|
(setq use-package-always-ensure t)
|
||||||
|
(pdf-tools-install)
|
||||||
|
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
@@ -41,72 +42,74 @@
|
|||||||
("\\.m$" . mercury-mode))
|
("\\.m$" . mercury-mode))
|
||||||
auto-mode-alist))
|
auto-mode-alist))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Dired
|
** Dired
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package dired-git
|
(use-package dired-preview)
|
||||||
:hook
|
(use-package dired-git
|
||||||
(dired-mode . dired-git-mode))
|
:hook
|
||||||
|
(dired-mode . dired-git-mode))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Theme
|
** Theme
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package zenburn-theme)
|
(use-package zenburn-theme)
|
||||||
(load-theme 'zenburn t)
|
(use-package doom-themes)
|
||||||
|
|
||||||
|
(load-theme 'doom-one t)
|
||||||
|
|
||||||
(use-package vertico
|
(use-package vertico
|
||||||
:custom
|
:custom
|
||||||
(vertico-cycle t) ;; Enable cycling for `vertico-next/previous'
|
(vertico-cycle t) ;; Enable cycling for `vertico-next/previous'
|
||||||
:init
|
:init
|
||||||
(vertico-mode))
|
(vertico-mode))
|
||||||
|
|
||||||
(use-package savehist
|
(use-package savehist
|
||||||
:init
|
:init
|
||||||
(savehist-mode))
|
(savehist-mode))
|
||||||
|
|
||||||
(use-package emacs
|
(use-package emacs
|
||||||
:custom
|
:custom
|
||||||
;; Support opening new minibuffers from inside existing minibuffers.
|
;; Support opening new minibuffers from inside existing minibuffers.
|
||||||
(enable-recursive-minibuffers t)
|
(enable-recursive-minibuffers t)
|
||||||
;; Hide commands in M-x which do not work in the current mode. Vertico
|
;; Hide commands in M-x which do not work in the current mode. Vertico
|
||||||
;; commands are hidden in normal buffers. This setting is useful beyond
|
;; commands are hidden in normal buffers. This setting is useful beyond
|
||||||
;; Vertico.
|
;; Vertico.
|
||||||
(read-extended-command-predicate #'command-completion-default-include-p)
|
(read-extended-command-predicate #'command-completion-default-include-p)
|
||||||
:init
|
:init
|
||||||
;; Add prompt indicator to `completing-read-multiple'.
|
;; Add prompt indicator to `completing-read-multiple'.
|
||||||
;; We display [CRM<separator>], e.g., [CRM,] if the separator is a comma.
|
;; We display [CRM<separator>], e.g., [CRM,] if the separator is a comma.
|
||||||
(defun crm-indicator (args)
|
(defun crm-indicator (args)
|
||||||
(cons (format "[CRM%s] %s"
|
(cons (format "[CRM%s] %s"
|
||||||
(replace-regexp-in-string "\\`\\[.*?]\\*\\|\\[.*?]\\*\\'" "" crm-separator)
|
(replace-regexp-in-string "\\`\\[.*?]\\*\\|\\[.*?]\\*\\'" "" crm-separator)
|
||||||
(car args))
|
(car args))
|
||||||
(cdr args)))
|
(cdr args)))
|
||||||
(advice-add #'completing-read-multiple :filter-args #'crm-indicator)
|
(advice-add #'completing-read-multiple :filter-args #'crm-indicator)
|
||||||
|
|
||||||
(setq minibuffer-prompt-properties '(read-only t cursor-intangible t face minibuffer-prompt))
|
(setq minibuffer-prompt-properties '(read-only t cursor-intangible t face minibuffer-prompt))
|
||||||
(add-hook 'minibuffer-setup-hook #'cursor-intangible-mode))
|
(add-hook 'minibuffer-setup-hook #'cursor-intangible-mode))
|
||||||
|
|
||||||
(use-package vertico-directory
|
(use-package vertico-directory
|
||||||
:after vertico
|
:after vertico
|
||||||
:ensure nil
|
:ensure nil
|
||||||
;; More convenient directory navigation commands
|
;; More convenient directory navigation commands
|
||||||
:bind (:map vertico-map
|
:bind (:map vertico-map
|
||||||
("RET" . vertico-directory-enter)
|
("RET" . vertico-directory-enter)
|
||||||
("DEL" . vertico-directory-delete-char)
|
("DEL" . vertico-directory-delete-char)
|
||||||
("M-DEL" . vertico-directory-delete-word))
|
("M-DEL" . vertico-directory-delete-word))
|
||||||
;; Tidy shadowed file names
|
;; Tidy shadowed file names
|
||||||
:hook (rfn-eshadow-update-overlay . vertico-directory-tidy))
|
:hook (rfn-eshadow-update-overlay . vertico-directory-tidy))
|
||||||
|
|
||||||
(use-package vertico-multiform
|
(use-package vertico-multiform
|
||||||
:after vertico
|
:after vertico
|
||||||
:load-path "~/.emacs.d/elpa/vertico-1.9/")
|
:load-path "~/.emacs.d/elpa/vertico-1.9/")
|
||||||
|
|
||||||
(vertico-multiform-mode 1)
|
(vertico-multiform-mode 1)
|
||||||
|
|
||||||
(use-package vertico-posframe
|
(use-package vertico-posframe
|
||||||
:ensure t)
|
:ensure t)
|
||||||
(setq vertico-posframe-parameters
|
(setq vertico-posframe-parameters
|
||||||
'((left-fringe . 8)
|
'((left-fringe . 8)
|
||||||
(right-fringe . 8)))
|
(right-fringe . 8)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Encoding
|
** Encoding
|
||||||
@@ -177,36 +180,46 @@
|
|||||||
|
|
||||||
** LSP
|
** LSP
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package lsp-mode
|
;; Java
|
||||||
:init
|
(use-package exec-path-from-shell)
|
||||||
;;set prefix
|
(use-package lsp-java)
|
||||||
(setq lsp-keymap-prefix "C-c l")
|
(require 'lsp-java)
|
||||||
(setq lsp-diagnostics-provider :flycheck) ; Use flycheck for diagnostics
|
(add-hook 'java-mode-hook #'lsp)
|
||||||
(setq lsp-enable-snippet t) ; Enable snippet support
|
(use-package hydra)
|
||||||
(setq company-idle-delay 0.2) ; Set delay for completion pop-up
|
(setq lsp-java-jdt-download-url "https://download.eclipse.org/jdtls/milestones/0.57.0/jdt-language-server-0.57.0-202006172108.tar.gz")
|
||||||
(setq company-minimum-prefix-length 1)
|
|
||||||
(setq lsp-clients-clangd-executable "clangd")
|
|
||||||
|
|
||||||
:hook
|
(use-package lsp-mode
|
||||||
((prog-mode . lsp)
|
:init
|
||||||
(c-mode . lsp)
|
;;set prefix
|
||||||
(latex-mode . lsp)
|
(setq lsp-keymap-prefix "C-c l")
|
||||||
(python-mode . lsp)
|
(setq lsp-diagnostics-provider :flycheck) ; Use flycheck for diagnostics
|
||||||
(lsp-mode . lsp-enable-which-key-integration)
|
(setq lsp-enable-snippet t) ; Enable snippet support
|
||||||
;;(before-save . lsp-format-buffer)
|
(setq company-idle-delay 0.2) ; Set delay for completion pop-up
|
||||||
)
|
(setq company-minimum-prefix-length 1)
|
||||||
:commands lsp
|
(setq lsp-clients-clangd-executable "clangd")
|
||||||
:bind
|
|
||||||
("C-<return>" . ff-find-other-file)
|
|
||||||
:custom
|
|
||||||
(lsp-prefer-capf t))
|
|
||||||
|
|
||||||
(use-package helm-lsp
|
:hook
|
||||||
:commands helm-lsp-workspace-symbol)
|
((prog-mode . lsp)
|
||||||
|
(c-mode . lsp)
|
||||||
|
(emacs-lisp-mode . lsp)
|
||||||
|
(java-mode . lsp)
|
||||||
|
(latex-mode . lsp)
|
||||||
|
(python-mode . lsp)
|
||||||
|
(lsp-mode . lsp-enable-which-key-integration)
|
||||||
|
(before-save . lsp-format-buffer)
|
||||||
|
)
|
||||||
|
:commands lsp
|
||||||
|
:bind
|
||||||
|
("C-<return>" . ff-find-other-file)
|
||||||
|
:custom
|
||||||
|
(lsp-prefer-capf t))
|
||||||
|
|
||||||
(use-package which-key
|
(use-package helm-lsp
|
||||||
:config
|
:commands helm-lsp-workspace-symbol)
|
||||||
(which-key-mode))
|
|
||||||
|
(use-package which-key
|
||||||
|
:config
|
||||||
|
(which-key-mode))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* Key-binds
|
* Key-binds
|
||||||
@@ -214,6 +227,13 @@
|
|||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(keymap-global-set "M-a" 'switch-to-buffer)
|
(keymap-global-set "M-a" 'switch-to-buffer)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
** Dired
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(add-hook 'dired-mode-hook (lambda () (local-key-binding "-" 'dired-jump)))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
** C
|
** C
|
||||||
*** Dereference arrow
|
*** Dereference arrow
|
||||||
|
|
||||||
@@ -271,17 +291,107 @@
|
|||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* Org
|
* Org
|
||||||
|
|
||||||
** Org bullets
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
|
(defun my/buffer-face-mode-variable ()
|
||||||
|
"Set font to a variable width (proportional) fonts in current buffer"
|
||||||
|
(interactive)
|
||||||
|
(setq buffer-face-mode-face '(:family "Roboto Slab"
|
||||||
|
:height 150
|
||||||
|
:width normal))
|
||||||
|
(buffer-face-mode))
|
||||||
(use-package org-bullets
|
(use-package org-bullets
|
||||||
:config
|
:config
|
||||||
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1))))
|
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1))))
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Emphasis markers
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(setq org-hide-emphasis-markers t)
|
(setq org-hide-emphasis-markers t)
|
||||||
|
(defun my/set-general-faces-org ()
|
||||||
|
(my/buffer-face-mode-variable)
|
||||||
|
(setq line-spacing 0.1
|
||||||
|
org-pretty-entities t
|
||||||
|
org-startup-indented t
|
||||||
|
org-adapt-indentation nil)
|
||||||
|
(variable-pitch-mode +1)
|
||||||
|
(mapc
|
||||||
|
(lambda (face) ;; Other fonts that require it are set to fixed-pitch.
|
||||||
|
(set-face-attribute face nil :inherit 'fixed-pitch))
|
||||||
|
(list 'org-block
|
||||||
|
'org-table
|
||||||
|
'org-verbatim
|
||||||
|
'org-block-begin-line
|
||||||
|
'org-block-end-line
|
||||||
|
'org-meta-line
|
||||||
|
'org-date
|
||||||
|
'org-drawer
|
||||||
|
'org-property-value
|
||||||
|
'org-special-keyword
|
||||||
|
'org-document-info-keyword))
|
||||||
|
(mapc ;; This sets the fonts to a smaller size
|
||||||
|
(lambda (face)
|
||||||
|
(set-face-attribute face nil :height 0.8))
|
||||||
|
(list 'org-document-info-keyword
|
||||||
|
'org-block-begin-line
|
||||||
|
'org-block-end-line
|
||||||
|
'org-meta-line
|
||||||
|
'org-drawer
|
||||||
|
'org-property-value
|
||||||
|
)))
|
||||||
|
|
||||||
|
(defun my/set-specific-faces-org ()
|
||||||
|
(set-face-attribute 'org-code nil
|
||||||
|
:inherit '(shadow fixed-pitch))
|
||||||
|
;; Without indentation the headlines need to be different to be visible
|
||||||
|
(set-face-attribute 'org-level-1 nil
|
||||||
|
:height 1.25
|
||||||
|
:foreground "#BEA4DB")
|
||||||
|
(set-face-attribute 'org-level-2 nil
|
||||||
|
:height 1.15
|
||||||
|
:foreground "#A382FF"
|
||||||
|
:slant 'italic)
|
||||||
|
(set-face-attribute 'org-level-3 nil
|
||||||
|
:height 1.1
|
||||||
|
:foreground "#5E65CC"
|
||||||
|
:slant 'italic)
|
||||||
|
(set-face-attribute 'org-level-4 nil
|
||||||
|
:height 1.05
|
||||||
|
:foreground "#ABABFF")
|
||||||
|
(set-face-attribute 'org-level-5 nil
|
||||||
|
:foreground "#2843FB")
|
||||||
|
(set-face-attribute 'org-date nil
|
||||||
|
:foreground "#ECBE7B"
|
||||||
|
:height 0.8)
|
||||||
|
(set-face-attribute 'org-document-title nil
|
||||||
|
:foreground "DarkOrange3"
|
||||||
|
:height 1.3)
|
||||||
|
(set-face-attribute 'org-ellipsis nil
|
||||||
|
:foreground "#4f747a" :underline nil)
|
||||||
|
(set-face-attribute 'variable-pitch nil
|
||||||
|
:family "Roboto Slab" :height 1.2))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
(defun my/set-keyword-faces-org ()
|
||||||
|
(mapc (lambda (pair) (push pair prettify-symbols-alist))
|
||||||
|
'(;; Syntax
|
||||||
|
("TODO" . "")
|
||||||
|
("DONE" . "")
|
||||||
|
("WAITING" . "")
|
||||||
|
("HOLD" . "")
|
||||||
|
("NEXT" . "")
|
||||||
|
("CANCELLED" . "")
|
||||||
|
("#+begin_quote" . "“")
|
||||||
|
("#+end_quote" . "”")))
|
||||||
|
(prettify-symbols-mode +1)
|
||||||
|
(org-superstar-mode +1)
|
||||||
|
)
|
||||||
|
|
||||||
|
(defun my/style-org ()
|
||||||
|
(my/set-general-faces-org)
|
||||||
|
(my/set-specific-faces-org)
|
||||||
|
(my/set-keyword-faces-org)
|
||||||
|
)
|
||||||
|
(add-hook 'org-mode-hook 'my/style-org)
|
||||||
|
|
||||||
|
(setq org-return-follows-link t)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* Hooks
|
* Hooks
|
||||||
@@ -309,10 +419,11 @@
|
|||||||
(add-hook 'before-make-frame-hook (lambda () (scroll-bar-mode -1)))
|
(add-hook 'before-make-frame-hook (lambda () (scroll-bar-mode -1)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
|
|
||||||
* Terminal
|
* Terminal
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package vterm)
|
(use-package vterm
|
||||||
|
:bind
|
||||||
|
("C-x t" . vterm))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* Projectile
|
* Projectile
|
||||||
@@ -322,14 +433,30 @@
|
|||||||
:init
|
:init
|
||||||
(projectile-mode +1)
|
(projectile-mode +1)
|
||||||
:bind (:map projectile-mode-map
|
:bind (:map projectile-mode-map
|
||||||
("s-p" . projectile-command-map)
|
("M-z" . projectile-command-map)
|
||||||
("C-c p" . projectile-command-map)))
|
("C-c p" . projectile-command-map)))
|
||||||
#+end_src
|
#+end_src
|
||||||
* Misceleaneous
|
* Misceleaneous
|
||||||
|
|
||||||
|
** Music
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package emms)
|
||||||
|
(emms-all)
|
||||||
|
(setq emms-player-list '(emms-player-vlc)
|
||||||
|
emms-info-functions '(emms-info-native))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Indentation
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package rainbow-delimiters)
|
||||||
|
(use-package highlight-indent-guides)
|
||||||
|
(add-hook 'prog-mode-hook 'highlight-indent-guides-mode)
|
||||||
|
(set-variable highlight-indent-guides-method 'column)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
** Global font
|
** Global font
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(set-face-attribute 'default nil :family "Cascadia Mono" :height 200)
|
(set-face-attribute 'default nil :family "Cascadia Mono" :height 140)
|
||||||
#+end_src
|
#+end_src
|
||||||
** Icons
|
** Icons
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
@@ -346,5 +473,7 @@
|
|||||||
** Line numberring
|
** Line numberring
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(add-hook 'prog-mode-hook 'display-line-numbers-mode)
|
(add-hook 'prog-mode-hook 'display-line-numbers-mode)
|
||||||
(setq-default tab-width 4)
|
(add-hook 'prog-mode-hook #'rainbow-delimiters-mode)
|
||||||
|
(setq-default indent-tabs-mode nil)
|
||||||
|
(setq-default tab-width 4)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|||||||
Reference in New Issue
Block a user