clean up unused packages
This commit is contained in:
292
README.org
292
README.org
@@ -124,10 +124,12 @@ Configure all nano modules
|
|||||||
Remove all those UI elements. They do not look good and waste space.
|
Remove all those UI elements. They do not look good and waste space.
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(tool-bar-mode -1)
|
(tool-bar-mode -1)
|
||||||
(menu-bar-mode -1)
|
(menu-bar-mode t)
|
||||||
(scroll-bar-mode -1)
|
(scroll-bar-mode -1)
|
||||||
(tooltip-mode -1)
|
(tooltip-mode -1)
|
||||||
(fringe-mode -1)
|
(fringe-mode -1)
|
||||||
|
|
||||||
|
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Disable file backups
|
** Disable file backups
|
||||||
@@ -199,6 +201,7 @@ Emacs sure loves to clutter directories with backup files.
|
|||||||
;; buffer-list is not a good default
|
;; buffer-list is not a good default
|
||||||
(bind-key "C-x C-b" 'ibuffer)
|
(bind-key "C-x C-b" 'ibuffer)
|
||||||
(bind-key "C-c n" 'display-line-numbers-mode)
|
(bind-key "C-c n" 'display-line-numbers-mode)
|
||||||
|
(global-set-key [f12] 'lux/indent-buffer)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
Unbind useless keys.
|
Unbind useless keys.
|
||||||
@@ -220,14 +223,14 @@ A simple funtion to open this file for quick editing.
|
|||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Reformating
|
** Reformating
|
||||||
Reindet the whole buffer with ~F12~
|
Reindet the whole buffer with ~F1~
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(defun lux/indent-buffer ()
|
(defun lux/indent-buffer ()
|
||||||
"Reindents the whole buffer"
|
"Reindents the whole buffer"
|
||||||
(interactive)
|
(interactive)
|
||||||
(save-excursion
|
(save-excursion
|
||||||
(indent-region (point-min) (point-max) nil)))
|
(indent-region (point-min) (point-max) nil)))
|
||||||
(global-set-key [f12] 'lux/indent-buffer)
|
(global-set-key [f1] 'lux/indent-buffer)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Window Splitting
|
** Window Splitting
|
||||||
@@ -262,97 +265,12 @@ Rebind the default window controls to use "M-*" keys for ease-of-use
|
|||||||
(switch-to-buffer (other-buffer (current-buffer) 1)))
|
(switch-to-buffer (other-buffer (current-buffer) 1)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** The Links File
|
|
||||||
The link dump is the file to throw all links for later reading in.Where the file is located should be set in either =personal.el= or =custom.el=.
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(defvar lux/link-dump "")
|
|
||||||
(defun lux/open-link-dump ()
|
|
||||||
"Open the file with the links"
|
|
||||||
(interactive)
|
|
||||||
(find-file lux/link-dump))
|
|
||||||
#+END_SRC
|
|
||||||
|
|
||||||
** Variable Pitch Mode
|
|
||||||
This custom version of =variable-pitch-mode= allows to mix variable and fixed fonts in the same buffer. This is very useful for org buffers with code blocks in them. This is a slight variation of [[https://protesilaos.com/dotemacs/][Protesilaos Stavrous]] version.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package face-remap
|
|
||||||
:diminish buffer-face-mode ; the actual mode
|
|
||||||
:commands lux/variable-pitch-mode
|
|
||||||
:hook (text-mode . lux/variable-pitch-mode)
|
|
||||||
:config
|
|
||||||
(define-minor-mode lux/variable-pitch-mode
|
|
||||||
"Toggle `variable-pitch-mode', except for `prog-mode'."
|
|
||||||
:init-value nil
|
|
||||||
:global nil
|
|
||||||
(if lux/variable-pitch-mode
|
|
||||||
(unless (derived-mode-p 'prog-mode)
|
|
||||||
(variable-pitch-mode 1))
|
|
||||||
(variable-pitch-mode -1))))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Focused Mode
|
|
||||||
This is a special minor mode that allows focus reading of longer texts. It is a combination of other useful modes to create a distraction free reading environment.
|
|
||||||
|
|
||||||
This is a minor mode for keeping the cursor at the center of the screen while scrolling
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(setq-default scroll-preserve-screen-position t)
|
|
||||||
(setq-default scroll-conservatively 1)
|
|
||||||
(setq-default scroll-margin 0)
|
|
||||||
|
|
||||||
(define-minor-mode lux/center-scroll-mode
|
|
||||||
"Toggle centred cursor scrolling behaviour."
|
|
||||||
:init-value nil
|
|
||||||
:lighter " S="
|
|
||||||
:global nil
|
|
||||||
(if lux/center-scroll-mode
|
|
||||||
(setq-local scroll-margin (* (frame-height) 2)
|
|
||||||
scroll-conservatively 0
|
|
||||||
maximum-scroll-margin 0.5)
|
|
||||||
(dolist (local '(scroll-preserve-screen-position
|
|
||||||
scroll-conservatively
|
|
||||||
maximum-scroll-margin
|
|
||||||
scroll-margin))
|
|
||||||
(kill-local-variable `,local))))
|
|
||||||
|
|
||||||
(bind-key "C-c l" 'lux/center-scroll-mode)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(define-minor-mode lux/focus-mode
|
|
||||||
"Creates a distraction free reading environment in the current buffer"
|
|
||||||
:init-value nil
|
|
||||||
:global nil
|
|
||||||
(if lux/focus-mode
|
|
||||||
(progn
|
|
||||||
(olivetti-mode 1)
|
|
||||||
(lux/center-scroll-mode 1))
|
|
||||||
(progn
|
|
||||||
(olivetti-mode -1)
|
|
||||||
(lux/center-scroll-mode -1))))
|
|
||||||
|
|
||||||
(bind-key "C-c f" 'lux/focus-mode)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Org show only current subtree
|
|
||||||
|
|
||||||
Fold all other subtrees in an org file and show just the current one
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(defun lux/org-show-just-me (&rest _)
|
|
||||||
"Fold all other trees, then show entire current subtree."
|
|
||||||
(interactive)
|
|
||||||
(org-overview)
|
|
||||||
(org-reveal)
|
|
||||||
(org-show-subtree))
|
|
||||||
(bind-key "C-c m" 'lux/org-show-just-me)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
* Fonts
|
* Fonts
|
||||||
Set up the fonts to use. I like the [[https://typeof.net/Iosevka/][Iosevka]] font family.
|
Set up the fonts to use. I like the [[https://typeof.net/Iosevka/][Iosevka]] font family.
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(set-face-attribute 'default nil :font "Iosevka Light-12")
|
(set-face-attribute 'default nil :font "Fantasque Sans Mono-12")
|
||||||
(set-face-attribute 'fixed-pitch nil :font "Iosevka Light-12")
|
(set-face-attribute 'fixed-pitch nil :font "Fantasque Sans Mono-12")
|
||||||
(set-face-attribute 'variable-pitch nil :font "Iosevka Aile Light-12")
|
(set-face-attribute 'variable-pitch nil :font "Fantasque Sans Mono-12")
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* Completion
|
* Completion
|
||||||
@@ -493,11 +411,7 @@ The most important parts are configuring key bindings to quickly access the file
|
|||||||
(use-package org
|
(use-package org
|
||||||
:straight t
|
:straight t
|
||||||
;; Always get this from the GNU archive.
|
;; Always get this from the GNU archive.
|
||||||
:bind (("C-c o c" . org-capture)
|
:bind (:map org-mode-map
|
||||||
("C-c o l" . lux/open-link-dump)
|
|
||||||
("C-c o s" . org-store-link)
|
|
||||||
("C-c o a" . org-agenda)
|
|
||||||
:map org-mode-map
|
|
||||||
("M-s-<return>" . org-insert-todo-heading)
|
("M-s-<return>" . org-insert-todo-heading)
|
||||||
("M-<return>" . org-insert-heading-respect-content)
|
("M-<return>" . org-insert-heading-respect-content)
|
||||||
("C-c a s" . org-emphasize)
|
("C-c a s" . org-emphasize)
|
||||||
@@ -505,18 +419,12 @@ The most important parts are configuring key bindings to quickly access the file
|
|||||||
:hook ((org-mode . visual-line-mode)
|
:hook ((org-mode . visual-line-mode)
|
||||||
(org-mode . org-indent-mode))
|
(org-mode . org-indent-mode))
|
||||||
:config
|
:config
|
||||||
(setq org-footnote-section ""
|
(setq org-pretty-entities t
|
||||||
org-startup-with-inline-images t
|
|
||||||
org-pretty-entities t
|
|
||||||
org-indent-mode t
|
org-indent-mode t
|
||||||
org-footnote-section nil
|
|
||||||
org-hide-leading-stars nil
|
org-hide-leading-stars nil
|
||||||
org-link-file-path-type 'relative
|
org-link-file-path-type 'relative
|
||||||
org-image-actual-width nil ; with this image sizes can be set per image, with an attribute
|
|
||||||
org-display-inline-images t
|
|
||||||
org-hide-emphasis-markers t
|
org-hide-emphasis-markers t
|
||||||
)
|
)
|
||||||
(setcar (nthcdr 4 org-emphasis-regexp-components) 4))
|
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Archive Location
|
** Archive Location
|
||||||
@@ -526,107 +434,6 @@ All archives should be stored in a single ~.archive~ file per directory.
|
|||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(setq org-archive-location "./.archive::* From %s")
|
(setq org-archive-location "./.archive::* From %s")
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Export Location
|
|
||||||
This snippet will create a sub dir for exports from org-mode.
|
|
||||||
[[https://stackoverflow.com/questions/9559753/emacs-org-mode-export-to-another-directory][See the Stackoverflow question]]
|
|
||||||
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(defun org-export-output-file-name-modified (orig-fun extension &optional subtreep pub-dir)
|
|
||||||
(unless pub-dir
|
|
||||||
(setq pub-dir "Exports")
|
|
||||||
(unless (file-directory-p pub-dir)
|
|
||||||
(make-directory pub-dir)))
|
|
||||||
(apply orig-fun extension subtreep pub-dir nil))
|
|
||||||
(advice-add 'org-export-output-file-name :around #'org-export-output-file-name-modified)
|
|
||||||
#+END_SRC
|
|
||||||
|
|
||||||
** Export HTML
|
|
||||||
Auto inline a CSS theme for org HTML exports.
|
|
||||||
This will make sure a self contained single HTML file is created.
|
|
||||||
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(defun my-org-inline-css-hook (exporter)
|
|
||||||
"Insert custom inline css"
|
|
||||||
(when (eq exporter 'html)
|
|
||||||
(let* ((dir (ignore-errors (file-name-directory (buffer-file-name))))
|
|
||||||
(path (concat dir "style.css"))
|
|
||||||
(homestyle (or (null dir) (null (file-exists-p path))))
|
|
||||||
(final (if homestyle "~/.emacs.d/org-theme.css" path))) ;; <- set your own style file path
|
|
||||||
(setq org-html-head-include-default-style nil)
|
|
||||||
(setq org-html-head (concat
|
|
||||||
"<style type=\"text/css\">\n"
|
|
||||||
"<!--/*--><![CDATA[/*><!--*/\n"
|
|
||||||
(with-temp-buffer
|
|
||||||
(insert-file-contents final)
|
|
||||||
(buffer-string))
|
|
||||||
"/*]]>*/-->\n"
|
|
||||||
"</style>\n")))))
|
|
||||||
|
|
||||||
(add-hook 'org-export-before-processing-hook 'my-org-inline-css-hook)
|
|
||||||
#+END_SRC
|
|
||||||
|
|
||||||
Include images in org files as base64 directly into the HTML
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(defun replace-in-string (what with in)
|
|
||||||
(replace-regexp-in-string (regexp-quote what) with in nil 'literal))
|
|
||||||
|
|
||||||
(defun org-html--format-image (source attributes info)
|
|
||||||
(progn
|
|
||||||
(setq source (replace-in-string "%20" " " source))
|
|
||||||
(format "<img src=\"data:image/%s;base64,%s\"%s />"
|
|
||||||
(or (file-name-extension source) "")
|
|
||||||
(base64-encode-string
|
|
||||||
(with-temp-buffer
|
|
||||||
(insert-file-contents-literally source)
|
|
||||||
(buffer-string)))
|
|
||||||
(file-name-nondirectory source))
|
|
||||||
))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Org Mode Bling
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package org-bullets
|
|
||||||
:straight t
|
|
||||||
:init (add-hook 'org-mode-hook (lambda () (org-bullets-mode 1))))
|
|
||||||
(setq org-bullets-bullet-list '("◉" "○" "◆" "✿" "✚" "▶"))
|
|
||||||
|
|
||||||
;; Ellipsis icon
|
|
||||||
(setq org-ellipsis "▾")
|
|
||||||
|
|
||||||
;; Nice Icons for lists
|
|
||||||
(add-hook 'org-mode-hook
|
|
||||||
(lambda ()
|
|
||||||
"Beautify Org Checkbox Symbol"
|
|
||||||
(push '("[ ]" . "☐") prettify-symbols-alist)
|
|
||||||
(push '("[X]" . "☑" ) prettify-symbols-alist)
|
|
||||||
(push '("[-]" . "❍" ) prettify-symbols-alist)
|
|
||||||
(prettify-symbols-mode)))
|
|
||||||
;; We also want them in exported HTML files
|
|
||||||
(setq org-html-checkbox-type 'html)
|
|
||||||
|
|
||||||
;; Replace dash in bullet lists with unicode symbol
|
|
||||||
(font-lock-add-keywords 'org-mode
|
|
||||||
'(("^ *\\([-]\\) "
|
|
||||||
(0 (prog1 () (compose-region (match-beginning 1) (match-end 1) "•"))))))
|
|
||||||
|
|
||||||
;; Strike out done ckeckbox items
|
|
||||||
(defface org-checkbox-done-text
|
|
||||||
'((t (:foreground "#71696A" :strike-through t)))
|
|
||||||
"Face for the text part of a checked org-mode checkbox.")
|
|
||||||
|
|
||||||
(font-lock-add-keywords
|
|
||||||
'org-mode
|
|
||||||
`(("^[ \t]*\\(?:[-+*]\\|[0-9]+[).]\\)[ \t]+\\(\\(?:\\[@\\(?:start:\\)?[0-9]+\\][ \t]*\\)?\\[\\(?:X\\|\\([0-9]+\\)/\\2\\)\\][^\n]*\n\\)"
|
|
||||||
1 'org-checkbox-done-text prepend))
|
|
||||||
'append)
|
|
||||||
|
|
||||||
;; Prettier Timestamps in Exports
|
|
||||||
(setq-default org-display-custom-times t)
|
|
||||||
(setq org-time-stamp-custom-formats
|
|
||||||
'("<%a %d.%m.%Y>" . "<%d.%m.%y %H:%M>"))
|
|
||||||
#+END_SRC
|
|
||||||
|
|
||||||
** Templates
|
** Templates
|
||||||
*** Babel
|
*** Babel
|
||||||
Here we set custom templates to be used for structure expansion.
|
Here we set custom templates to be used for structure expansion.
|
||||||
@@ -643,58 +450,6 @@ Shortcut for creating ~emacs-lisp~ code blocks. This is used extensively in this
|
|||||||
(add-to-list 'org-structure-template-alist '("el" . "src emacs-lisp"))
|
(add-to-list 'org-structure-template-alist '("el" . "src emacs-lisp"))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
*** Capture
|
|
||||||
First we define a function to look the subheading under which we want to file captures:
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(defun org-get-target-headline (&optional targets prompt)
|
|
||||||
"Prompt for a location in an org file and jump to it.
|
|
||||||
|
|
||||||
This is for promping for refile targets when doing captures.
|
|
||||||
Targets are selected from `org-refile-targets'. If TARGETS is
|
|
||||||
given it temporarily overrides `org-refile-targets'. PROMPT will
|
|
||||||
replace the default prompt message.
|
|
||||||
|
|
||||||
If CAPTURE-LOC is is given, capture to that location instead of
|
|
||||||
prompting."
|
|
||||||
(let ((org-refile-targets (or targets org-refile-targets))
|
|
||||||
(prompt (or prompt "Capture Location")))
|
|
||||||
(org-refile t nil nil prompt))
|
|
||||||
)
|
|
||||||
#+END_SRC
|
|
||||||
|
|
||||||
Here we define templates we want to use to quickly capture stuff and automatically file them away.
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(setq org-capture-templates
|
|
||||||
'(("l" "Link" entry (file lux/link-dump)
|
|
||||||
"* NEW %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n%i\n")
|
|
||||||
))
|
|
||||||
#+END_SRC
|
|
||||||
|
|
||||||
* Treemacs
|
|
||||||
Treemacs makes navigating folders and files much easier. This is the default config from [[https://github.com/Alexander-Miller/treemacs][the offical repository]] as a base, with slight modifications to suite my config.
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package treemacs
|
|
||||||
:straight t
|
|
||||||
:defer t
|
|
||||||
:init
|
|
||||||
(with-eval-after-load 'winum
|
|
||||||
(define-key winum-keymap (kbd "M-0") #'treemacs-select-window))
|
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(setq treemacs-show-hidden-files t
|
|
||||||
treemacs-sorting 'alphabetic-asc
|
|
||||||
treemacs-width 35)
|
|
||||||
|
|
||||||
(treemacs-filewatch-mode t)
|
|
||||||
(treemacs-toggle-show-dotfiles))
|
|
||||||
:bind
|
|
||||||
(:map global-map
|
|
||||||
("C-x t t" . treemacs)
|
|
||||||
("M-9" . treemacs-select-window)))
|
|
||||||
|
|
||||||
(use-package treemacs-magit
|
|
||||||
:after treemacs magit)
|
|
||||||
#+END_SRC
|
|
||||||
* Misc Packages
|
* Misc Packages
|
||||||
** All The Icons
|
** All The Icons
|
||||||
We want to have some nice looking icons
|
We want to have some nice looking icons
|
||||||
@@ -702,6 +457,7 @@ We want to have some nice looking icons
|
|||||||
(use-package all-the-icons
|
(use-package all-the-icons
|
||||||
:straight t)
|
:straight t)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Recentf
|
** Recentf
|
||||||
Show recent files in the buffer selection
|
Show recent files in the buffer selection
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -712,6 +468,7 @@ Show recent files in the buffer selection
|
|||||||
(add-to-list 'recentf-exclude "\\.emacs.d")
|
(add-to-list 'recentf-exclude "\\.emacs.d")
|
||||||
(add-to-list 'recentf-exclude ".+tmp......\\.org"))
|
(add-to-list 'recentf-exclude ".+tmp......\\.org"))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Rainbow Delimiters
|
** Rainbow Delimiters
|
||||||
We want to have some nicely colored delimiters when reading and writing lisp code
|
We want to have some nicely colored delimiters when reading and writing lisp code
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -719,6 +476,7 @@ We want to have some nicely colored delimiters when reading and writing lisp cod
|
|||||||
:straight t
|
:straight t
|
||||||
:hook (prog-mode . rainbow-delimiters-mode))
|
:hook (prog-mode . rainbow-delimiters-mode))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Markdown Mode
|
** Markdown Mode
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package markdown-mode
|
(use-package markdown-mode
|
||||||
@@ -728,6 +486,7 @@ We want to have some nicely colored delimiters when reading and writing lisp cod
|
|||||||
(when (executable-find "pandoc")
|
(when (executable-find "pandoc")
|
||||||
(setq markdown-command "pandoc -f markdown -t html")))
|
(setq markdown-command "pandoc -f markdown -t html")))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Duplicate Thing
|
** Duplicate Thing
|
||||||
Quick bind to ~C-c u~ to duplicate the current line
|
Quick bind to ~C-c u~ to duplicate the current line
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -735,6 +494,7 @@ Quick bind to ~C-c u~ to duplicate the current line
|
|||||||
:straight t
|
:straight t
|
||||||
:bind (("C-c u" . duplicate-thing)))
|
:bind (("C-c u" . duplicate-thing)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** ACE Window
|
** ACE Window
|
||||||
Small package to quickly switch tiled windows.
|
Small package to quickly switch tiled windows.
|
||||||
Use ~M-o~ to quickly switch.
|
Use ~M-o~ to quickly switch.
|
||||||
@@ -749,13 +509,6 @@ Use ~M-o~ to quickly switch.
|
|||||||
))
|
))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** htmlize
|
|
||||||
HTML Exporter for org-mode
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package htmlize
|
|
||||||
:straight t)
|
|
||||||
#+END_SRC
|
|
||||||
|
|
||||||
** Ag
|
** Ag
|
||||||
Ag.el allows you to search using ~ag~ from inside Emacs. You can filter by file type, edit results inline, or find files.
|
Ag.el allows you to search using ~ag~ from inside Emacs. You can filter by file type, edit results inline, or find files.
|
||||||
|
|
||||||
@@ -766,18 +519,6 @@ Ag.el allows you to search using ~ag~ from inside Emacs. You can filter by file
|
|||||||
:straight t)
|
:straight t)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** Yasnippet
|
|
||||||
[[https://github.com/joaotavora/yasnippet][Github]]
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package yasnippet
|
|
||||||
:straight t
|
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(setq yas-snippet-dirs '("~/.emacs.d/snippets"))
|
|
||||||
(yas-global-mode 1)))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
* Programming
|
* Programming
|
||||||
** Elisp
|
** Elisp
|
||||||
Some customization for writing elisp
|
Some customization for writing elisp
|
||||||
@@ -808,3 +549,4 @@ It conatins customizations and file locations that are machine dependend.
|
|||||||
(load custom-file 'noerror)
|
(load custom-file 'noerror)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user