(Emacs)+org template for blog posts, ~rearranged org mode
This commit is contained in:
@@ -0,0 +1,9 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: org hugo post
|
||||||
|
# key: ohpost
|
||||||
|
# --
|
||||||
|
#+title: $1
|
||||||
|
#+author: $2
|
||||||
|
#+description: $3
|
||||||
|
#+property: header-args: :eval never-export
|
||||||
|
#+date: `(format-time-string "%Y-%m-%d" (current-time))`
|
||||||
@@ -2408,99 +2408,11 @@ Some bindings for org mode.
|
|||||||
(local-leader
|
(local-leader
|
||||||
:keymaps 'org-mode-map
|
:keymaps 'org-mode-map
|
||||||
"t" #'org-todo
|
"t" #'org-todo
|
||||||
|
"i" #'org-insert-structure-template
|
||||||
"p" #'org-latex-preview
|
"p" #'org-latex-preview
|
||||||
"s" #'org-property-action
|
"s" #'org-property-action
|
||||||
"e" #'org-export-dispatch
|
"e" #'org-export-dispatch
|
||||||
"o" #'org-edit-special)
|
"o" #'org-edit-special))
|
||||||
)
|
|
||||||
#+end_src
|
|
||||||
*** Org message
|
|
||||||
Org message allows for the use of org mode when composing mails,
|
|
||||||
generating HTML multipart emails. This integrates the WYSIWYG
|
|
||||||
experience with mail in Emacs while also providing powerful text
|
|
||||||
features with basically no learning curve (as long as you've already
|
|
||||||
learnt the basics of org).
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package org-msg
|
|
||||||
:hook (message-mode-hook . org-msg-mode)
|
|
||||||
:config
|
|
||||||
(setq org-msg-options "html-postamble:nil H:5 num:nil ^:{} toc:nil author:nil email:nil \\n:t tex:dvipng"
|
|
||||||
org-msg-greeting-name-limit 3)
|
|
||||||
|
|
||||||
(add-to-list 'org-msg-enforce-css
|
|
||||||
'(img latex-fragment-inline
|
|
||||||
((transform . ,(format "translateY(-1px) scale(%.3f)"
|
|
||||||
(/ 1.0 (if (boundp 'preview-scale)
|
|
||||||
preview-scale 1.4))))
|
|
||||||
(margin . "0 -0.35em")))))
|
|
||||||
#+end_src
|
|
||||||
*** Org on save
|
|
||||||
If ~+org/compile-to-pdf-on-save-p~ is non-nil, then compile to
|
|
||||||
\(\LaTeX\) and run an async process to compile it to a PDF. Doesn't
|
|
||||||
make Emacs hang (like ~org-latex-export-to-pdf~) and doesn't randomly
|
|
||||||
crash (like the async handler for org-export). Works really well with
|
|
||||||
~pdf-view-mode~.
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package org
|
|
||||||
:init
|
|
||||||
(defvar +org/compile-to-pdf-on-save-p
|
|
||||||
nil
|
|
||||||
"Non-nil to activate compile functionality.")
|
|
||||||
:general
|
|
||||||
(local-leader
|
|
||||||
:keymaps 'org-mode-map
|
|
||||||
"C" (proc (interactive)
|
|
||||||
(if (+org/compile-to-pdf-on-save-f)
|
|
||||||
(setq-local +org/compile-to-pdf-on-save-p nil)
|
|
||||||
(setq-local +org/compile-to-pdf-on-save-p t))))
|
|
||||||
:config
|
|
||||||
(+oreo/create-auto-save
|
|
||||||
+org/compile-to-pdf-on-save-f
|
|
||||||
(and (eq major-mode 'org-mode) +org/compile-to-pdf-on-save-p)
|
|
||||||
(start-process-shell-command "" "*pdflatex*" (concat "pdflatex -shell-escape "
|
|
||||||
(org-latex-export-to-latex)))))
|
|
||||||
#+end_src
|
|
||||||
*** Evil Org
|
|
||||||
Evil org for some nice bindings.
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package evil-org
|
|
||||||
:hook (org-mode-hook . evil-org-mode))
|
|
||||||
#+end_src
|
|
||||||
*** Org reveal
|
|
||||||
Org reveal allows one to export org files as HTML presentations via
|
|
||||||
reveal.js. Pretty nifty and it's easy to use.
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package ox-reveal
|
|
||||||
:after org
|
|
||||||
:init
|
|
||||||
(setq org-reveal-root "https://cdn.jsdelivr.net/npm/reveal.js"
|
|
||||||
org-reveal-theme "sky"))
|
|
||||||
#+end_src
|
|
||||||
*** Org fragtog
|
|
||||||
Toggle latex fragments in org mode so you get fancy maths symbols. I
|
|
||||||
use latex a bit in org mode as it is the premier way of getting
|
|
||||||
mathematical symbols and text rendered and compiled, but org mode >
|
|
||||||
latex.
|
|
||||||
|
|
||||||
As Org mode has the ability to accept arbitrary inputs of Latex
|
|
||||||
(through escaped (square) brackets), allowing me to observe how they
|
|
||||||
look is nice to have.
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package org-fragtog
|
|
||||||
:hook (org-mode-hook . org-fragtog-mode))
|
|
||||||
#+end_src
|
|
||||||
*** Org pretty tags
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package org-pretty-tags
|
|
||||||
:hook (org-mode-hook . org-pretty-tags-mode))
|
|
||||||
#+end_src
|
|
||||||
*** Org superstar
|
|
||||||
Org superstar adds cute little Unicode symbols for headers, much
|
|
||||||
better than the default asterisks.
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package org-superstar
|
|
||||||
:hook (org-mode-hook . org-superstar-mode))
|
|
||||||
#+end_src
|
#+end_src
|
||||||
*** Org agenda
|
*** Org agenda
|
||||||
Org agenda provides a nice viewing for schedules. With org mode it's
|
Org agenda provides a nice viewing for schedules. With org mode it's
|
||||||
@@ -2558,6 +2470,88 @@ time a clock out occurs.")
|
|||||||
(setq-local +org/clock-out-toggle-report
|
(setq-local +org/clock-out-toggle-report
|
||||||
(not +org/clock-out-toggle-report)))))
|
(not +org/clock-out-toggle-report)))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
*** Org on save
|
||||||
|
If ~+org/compile-to-pdf-on-save-p~ is non-nil, then compile to
|
||||||
|
\(\LaTeX\) and run an async process to compile it to a PDF. Doesn't
|
||||||
|
make Emacs hang (like ~org-latex-export-to-pdf~) and doesn't randomly
|
||||||
|
crash (like the async handler for org-export). Works really well with
|
||||||
|
~pdf-view-mode~.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package org
|
||||||
|
:init
|
||||||
|
(defvar +org/compile-to-pdf-on-save-p
|
||||||
|
nil
|
||||||
|
"Non-nil to activate compile functionality.")
|
||||||
|
:general
|
||||||
|
(local-leader
|
||||||
|
:keymaps 'org-mode-map
|
||||||
|
"C" (proc (interactive)
|
||||||
|
(if (+org/compile-to-pdf-on-save-f)
|
||||||
|
(setq-local +org/compile-to-pdf-on-save-p nil)
|
||||||
|
(setq-local +org/compile-to-pdf-on-save-p t))))
|
||||||
|
:config
|
||||||
|
(+oreo/create-auto-save
|
||||||
|
+org/compile-to-pdf-on-save-f
|
||||||
|
(and (eq major-mode 'org-mode) +org/compile-to-pdf-on-save-p)
|
||||||
|
(start-process-shell-command "" "*pdflatex*" (concat "pdflatex -shell-escape "
|
||||||
|
(org-latex-export-to-latex)))))
|
||||||
|
#+end_src
|
||||||
|
*** Org message
|
||||||
|
Org message allows for the use of org mode when composing mails,
|
||||||
|
generating HTML multipart emails. This integrates the WYSIWYG
|
||||||
|
experience with mail in Emacs while also providing powerful text
|
||||||
|
features with basically no learning curve (as long as you've already
|
||||||
|
learnt the basics of org).
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package org-msg
|
||||||
|
:hook (message-mode-hook . org-msg-mode)
|
||||||
|
:config
|
||||||
|
(setq org-msg-options "html-postamble:nil H:5 num:nil ^:{} toc:nil author:nil email:nil \\n:t tex:dvipng"
|
||||||
|
org-msg-greeting-name-limit 3)
|
||||||
|
|
||||||
|
(add-to-list 'org-msg-enforce-css
|
||||||
|
'(img latex-fragment-inline
|
||||||
|
((transform . ,(format "translateY(-1px) scale(%.3f)"
|
||||||
|
(/ 1.0 (if (boundp 'preview-scale)
|
||||||
|
preview-scale 1.4))))
|
||||||
|
(margin . "0 -0.35em")))))
|
||||||
|
#+end_src
|
||||||
|
*** Org for evil
|
||||||
|
Evil org for some nice bindings.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package evil-org
|
||||||
|
:hook (org-mode-hook . evil-org-mode))
|
||||||
|
#+end_src
|
||||||
|
*** Org reveal
|
||||||
|
Org reveal allows one to export org files as HTML presentations via
|
||||||
|
reveal.js. Pretty nifty and it's easy to use.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package ox-reveal
|
||||||
|
:after org
|
||||||
|
:init
|
||||||
|
(setq org-reveal-root "https://cdn.jsdelivr.net/npm/reveal.js"
|
||||||
|
org-reveal-theme "sky"))
|
||||||
|
#+end_src
|
||||||
|
*** Org fragtog
|
||||||
|
Toggle latex fragments in org mode so you get fancy maths symbols. I
|
||||||
|
use latex a bit in org mode as it is the premier way of getting
|
||||||
|
mathematical symbols rendered, but org mode > latex.
|
||||||
|
|
||||||
|
Delimited environments are aplenty, escaped brackets and dollar signs
|
||||||
|
are my favourite. Here's a snippet:
|
||||||
|
$\int_{-\infty}^{\infty}e^{-x^2}dx = \sqrt{\pi}$.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package org-fragtog
|
||||||
|
:hook (org-mode-hook . org-fragtog-mode))
|
||||||
|
#+end_src
|
||||||
|
*** Org superstar
|
||||||
|
Org superstar adds cute little Unicode symbols for headers, much
|
||||||
|
better than the default asterisks.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package org-superstar
|
||||||
|
:hook (org-mode-hook . org-superstar-mode))
|
||||||
|
#+end_src
|
||||||
** C/C++
|
** C/C++
|
||||||
Setup for C and C++ modes via the cc-mode package. C and C++ are
|
Setup for C and C++ modes via the cc-mode package. C and C++ are
|
||||||
great languages for general purpose programming. My preferred choice
|
great languages for general purpose programming. My preferred choice
|
||||||
|
|||||||
Reference in New Issue
Block a user