bg face for latex is now default background
This commit is contained in:
parent
6764c1a683
commit
1c8bbf965c
@ -208,9 +208,6 @@ Turn off auto-fill mode that add line breaks.
|
|||||||
;; Avoid accidentally editing folded regions, say by adding text after an Org “⋯”.
|
;; Avoid accidentally editing folded regions, say by adding text after an Org “⋯”.
|
||||||
(setq org-catch-invisible-edits 'show)
|
(setq org-catch-invisible-edits 'show)
|
||||||
|
|
||||||
;; Highligh latex parts in org mode
|
|
||||||
(setq org-highlight-latex-and-related '(native))
|
|
||||||
|
|
||||||
;; The following setting hides blank lines between headings which keeps folded view nice and compact.
|
;; The following setting hides blank lines between headings which keeps folded view nice and compact.
|
||||||
(setq org-cycle-separator-lines 0)
|
(setq org-cycle-separator-lines 0)
|
||||||
|
|
||||||
@ -231,96 +228,6 @@ TAB was changed to toggle only the visibility state of the current subtree, rath
|
|||||||
(remove-hook 'org-tab-first-hook #'+org-cycle-only-current-subtree-h))
|
(remove-hook 'org-tab-first-hook #'+org-cycle-only-current-subtree-h))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Org latex fragment
|
|
||||||
Don't change the font size for subscripts and superscripts in latex fragments.
|
|
||||||
This cause the orgmode tables not to be well aligned.
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(after! org
|
|
||||||
(setq font-latex-fontify-script nil))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(defvar tdh-org-latex-fragment-last nil
|
|
||||||
"Holds last fragment/environment you were on.")
|
|
||||||
|
|
||||||
(defun tdh-org-in-latex-fragment-p ()
|
|
||||||
"Return the point where the latex fragment begins, if inside
|
|
||||||
a latex fragment. Else return false"
|
|
||||||
(let* ((el (org-element-context))
|
|
||||||
(el-type (car el)))
|
|
||||||
(and (or (eq 'latex-fragment el-type) (eq 'latex-environment el-type))
|
|
||||||
(org-element-property :begin el))))
|
|
||||||
|
|
||||||
(defun tdh-org-latex-fragment-toggle ()
|
|
||||||
"Toggle a latex fragment image "
|
|
||||||
(and (eq 'org-mode major-mode)
|
|
||||||
(let ((begin (tdh-org-in-latex-fragment-p)))
|
|
||||||
(cond
|
|
||||||
;; were on a fragment and now on a new fragment
|
|
||||||
((and
|
|
||||||
;; fragment we were on
|
|
||||||
tdh-org-latex-fragment-last
|
|
||||||
;; and are on a fragment now
|
|
||||||
begin
|
|
||||||
|
|
||||||
;; but not on the last one this is a little tricky. as you edit the
|
|
||||||
;; fragment, it is not equal to the last one. We use the begin
|
|
||||||
;; property which is less likely to change for the comparison.
|
|
||||||
(not (and tdh-org-latex-fragment-last
|
|
||||||
(= begin
|
|
||||||
tdh-org-latex-fragment-last))))
|
|
||||||
;; go back to last one and put image back, provided there is still a fragment there
|
|
||||||
(save-excursion
|
|
||||||
(goto-char tdh-org-latex-fragment-last)
|
|
||||||
(when (tdh-org-in-latex-fragment-p) (org-preview-latex-fragment))
|
|
||||||
|
|
||||||
;; now remove current image
|
|
||||||
(goto-char begin)
|
|
||||||
(let ((ov (loop for ov in (org--list-latex-overlays)
|
|
||||||
if
|
|
||||||
(and
|
|
||||||
(<= (overlay-start ov) (point))
|
|
||||||
(>= (overlay-end ov) (point)))
|
|
||||||
return ov)))
|
|
||||||
(when ov
|
|
||||||
(delete-overlay ov)))
|
|
||||||
;; and save new fragment
|
|
||||||
(setq tdh-org-latex-fragment-last begin)))
|
|
||||||
|
|
||||||
;; were on a fragment and now are not on a fragment
|
|
||||||
((and
|
|
||||||
;; not on a fragment now
|
|
||||||
(not begin)
|
|
||||||
;; but we were on one
|
|
||||||
tdh-org-latex-fragment-last)
|
|
||||||
;; put image back on, provided that there is still a fragment here.
|
|
||||||
(save-excursion
|
|
||||||
(goto-char tdh-org-latex-fragment-last)
|
|
||||||
(when (tdh-org-in-latex-fragment-p) (org-preview-latex-fragment)))
|
|
||||||
|
|
||||||
;; unset last fragment
|
|
||||||
(setq tdh-org-latex-fragment-last nil))
|
|
||||||
|
|
||||||
;; were not on a fragment, and now are
|
|
||||||
((and
|
|
||||||
;; we were not one one
|
|
||||||
(not tdh-org-latex-fragment-last)
|
|
||||||
;; but now we are
|
|
||||||
begin)
|
|
||||||
;; remove image
|
|
||||||
(save-excursion
|
|
||||||
(goto-char begin)
|
|
||||||
(let ((ov (loop for ov in (org--list-latex-overlays)
|
|
||||||
if
|
|
||||||
(and
|
|
||||||
(<= (overlay-start ov) (point))
|
|
||||||
(>= (overlay-end ov) (point)))
|
|
||||||
return ov)))
|
|
||||||
(when ov
|
|
||||||
(delete-overlay ov))))
|
|
||||||
(setq tdh-org-latex-fragment-last begin))))))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Org Inline Images
|
** Org Inline Images
|
||||||
Display the real size of images and not the one set with =attr_latex: :width \linewidth= for instance.
|
Display the real size of images and not the one set with =attr_latex: :width \linewidth= for instance.
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
@ -915,6 +822,158 @@ by spaces.
|
|||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Org LaTeX
|
** Org LaTeX
|
||||||
|
*** Org latex fragment
|
||||||
|
Don't change the font size for subscripts and superscripts in latex fragments.
|
||||||
|
This cause the orgmode tables not to be well aligned.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(after! org
|
||||||
|
(setq font-latex-fontify-script nil))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(defvar tdh-org-latex-fragment-last nil
|
||||||
|
"Holds last fragment/environment you were on.")
|
||||||
|
|
||||||
|
(defun tdh-org-in-latex-fragment-p ()
|
||||||
|
"Return the point where the latex fragment begins, if inside
|
||||||
|
a latex fragment. Else return false"
|
||||||
|
(let* ((el (org-element-context))
|
||||||
|
(el-type (car el)))
|
||||||
|
(and (or (eq 'latex-fragment el-type) (eq 'latex-environment el-type))
|
||||||
|
(org-element-property :begin el))))
|
||||||
|
|
||||||
|
(defun tdh-org-latex-fragment-toggle ()
|
||||||
|
"Toggle a latex fragment image "
|
||||||
|
(and (eq 'org-mode major-mode)
|
||||||
|
(let ((begin (tdh-org-in-latex-fragment-p)))
|
||||||
|
(cond
|
||||||
|
;; were on a fragment and now on a new fragment
|
||||||
|
((and
|
||||||
|
;; fragment we were on
|
||||||
|
tdh-org-latex-fragment-last
|
||||||
|
;; and are on a fragment now
|
||||||
|
begin
|
||||||
|
|
||||||
|
;; but not on the last one this is a little tricky. as you edit the
|
||||||
|
;; fragment, it is not equal to the last one. We use the begin
|
||||||
|
;; property which is less likely to change for the comparison.
|
||||||
|
(not (and tdh-org-latex-fragment-last
|
||||||
|
(= begin
|
||||||
|
tdh-org-latex-fragment-last))))
|
||||||
|
;; go back to last one and put image back, provided there is still a fragment there
|
||||||
|
(save-excursion
|
||||||
|
(goto-char tdh-org-latex-fragment-last)
|
||||||
|
(when (tdh-org-in-latex-fragment-p) (org-preview-latex-fragment))
|
||||||
|
|
||||||
|
;; now remove current image
|
||||||
|
(goto-char begin)
|
||||||
|
(let ((ov (loop for ov in (org--list-latex-overlays)
|
||||||
|
if
|
||||||
|
(and
|
||||||
|
(<= (overlay-start ov) (point))
|
||||||
|
(>= (overlay-end ov) (point)))
|
||||||
|
return ov)))
|
||||||
|
(when ov
|
||||||
|
(delete-overlay ov)))
|
||||||
|
;; and save new fragment
|
||||||
|
(setq tdh-org-latex-fragment-last begin)))
|
||||||
|
|
||||||
|
;; were on a fragment and now are not on a fragment
|
||||||
|
((and
|
||||||
|
;; not on a fragment now
|
||||||
|
(not begin)
|
||||||
|
;; but we were on one
|
||||||
|
tdh-org-latex-fragment-last)
|
||||||
|
;; put image back on, provided that there is still a fragment here.
|
||||||
|
(save-excursion
|
||||||
|
(goto-char tdh-org-latex-fragment-last)
|
||||||
|
(when (tdh-org-in-latex-fragment-p) (org-preview-latex-fragment)))
|
||||||
|
|
||||||
|
;; unset last fragment
|
||||||
|
(setq tdh-org-latex-fragment-last nil))
|
||||||
|
|
||||||
|
;; were not on a fragment, and now are
|
||||||
|
((and
|
||||||
|
;; we were not one one
|
||||||
|
(not tdh-org-latex-fragment-last)
|
||||||
|
;; but now we are
|
||||||
|
begin)
|
||||||
|
;; remove image
|
||||||
|
(save-excursion
|
||||||
|
(goto-char begin)
|
||||||
|
(let ((ov (loop for ov in (org--list-latex-overlays)
|
||||||
|
if
|
||||||
|
(and
|
||||||
|
(<= (overlay-start ov) (point))
|
||||||
|
(>= (overlay-end ov) (point)))
|
||||||
|
return ov)))
|
||||||
|
(when ov
|
||||||
|
(delete-overlay ov))))
|
||||||
|
(setq tdh-org-latex-fragment-last begin))))))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(map! :map org-mode-map
|
||||||
|
;; Activate Automatic LaTeX fragment
|
||||||
|
:n ",ol" '(lambda () (interactive) (add-hook 'post-command-hook 'tdh-org-latex-fragment-toggle t))
|
||||||
|
;; ;; Disable Automatic LaTeX fragment
|
||||||
|
:n ",oL" '(lambda () (interactive) (remove-hook 'post-command-hook 'tdh-org-latex-fragment-toggle)))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
*** TODO Latex Fragments
|
||||||
|
- [ ] The remove hook does not seems to work
|
||||||
|
http://slumpy.org/blog/2017-02-01-automatic-latex-preview-in-org-mode/
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(after! org
|
||||||
|
;; Highligh latex parts in org mode
|
||||||
|
(setq org-highlight-latex-and-related '(native))
|
||||||
|
|
||||||
|
;; Use F9 to globally generate all the latex fragments
|
||||||
|
(map! :map org-mode-map :n "<f9>" (lambda () (interactive) (org-preview-latex-fragment 16)))
|
||||||
|
|
||||||
|
;; Put all the preview images in some directory
|
||||||
|
(setq org-preview-latex-image-directory "~/.ltximg/")
|
||||||
|
|
||||||
|
;; Define backends to preview LaTeX fragments
|
||||||
|
(setq org-preview-latex-process-alist '((imagemagick
|
||||||
|
:programs ("pdflatex" "convert")
|
||||||
|
:description "pdf > png"
|
||||||
|
:message "you need to install the programs: pdflatex and imagemagick."
|
||||||
|
:image-input-type "pdf"
|
||||||
|
:image-output-type "png"
|
||||||
|
:image-size-adjust (0.6 . 0.6)
|
||||||
|
:latex-compiler ("pdflatex -interaction nonstopmode -output-directory %o %f")
|
||||||
|
:image-converter ("convert -density %D -trim -antialias %f -quality 100 %O"))
|
||||||
|
(dvipng
|
||||||
|
:programs ("latex" "dvipng")
|
||||||
|
:description "dvi > png"
|
||||||
|
:message "you need to install the programs: latex and dvipng."
|
||||||
|
:image-input-type "dvi"
|
||||||
|
:image-output-type "png"
|
||||||
|
:image-size-adjust (0.5 . 0.5)
|
||||||
|
:latex-compiler ("latex -interaction nonstopmode -output-directory %o %f")
|
||||||
|
:image-converter ("dvipng -D %D -T tight -o %O %f"))
|
||||||
|
(dvisvgm
|
||||||
|
:programs ("pdflatex" "dvisvgm")
|
||||||
|
:description "dvi > svg"
|
||||||
|
:message "you need to install the programs: latex and dvisvgm."
|
||||||
|
:image-input-type "dvi"
|
||||||
|
:image-output-type "svg"
|
||||||
|
:image-size-adjust (0.7 . 0.7)
|
||||||
|
:latex-compiler ("latex -interaction nonstopmode -output-directory %o %f")
|
||||||
|
:image-converter ("dvisvgm %f -n -b min -c %S -o %O"))
|
||||||
|
))
|
||||||
|
|
||||||
|
;; Use imagemagick/dvisvgm to generate png from pdf
|
||||||
|
(setq org-preview-latex-default-process 'dvipng)
|
||||||
|
|
||||||
|
;; Colors of latex fragments
|
||||||
|
(setq org-format-latex-options (plist-put org-format-latex-options :foreground 'default))
|
||||||
|
(setq org-format-latex-options (plist-put org-format-latex-options :background (face-background 'fringe)))
|
||||||
|
)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
*** LaTeX Classes
|
*** LaTeX Classes
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(after! org
|
(after! org
|
||||||
@ -1046,59 +1105,6 @@ Special Environments
|
|||||||
)
|
)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** TODO Latex Fragments
|
|
||||||
- [ ] The remove hook does not seems to work
|
|
||||||
http://slumpy.org/blog/2017-02-01-automatic-latex-preview-in-org-mode/
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(after! org
|
|
||||||
(map! :map org-mode-map
|
|
||||||
;; Activate Automatic LaTeX fragment
|
|
||||||
:n ",ol" '(lambda () (interactive) (add-hook 'post-command-hook 'tdh-org-latex-fragment-toggle t))
|
|
||||||
;; ;; Disable Automatic LaTeX fragment
|
|
||||||
:n ",oL" '(lambda () (interactive) (remove-hook 'post-command-hook 'tdh-org-latex-fragment-toggle)))
|
|
||||||
|
|
||||||
;; Use F9 to globally generate all the latex fragments
|
|
||||||
(map! :map org-mode-map :n "<f9>" (lambda () (interactive) (org-preview-latex-fragment 16)))
|
|
||||||
|
|
||||||
;; Put all the preview images in some directory
|
|
||||||
(setq org-preview-latex-image-directory "~/.ltximg/")
|
|
||||||
|
|
||||||
;; Define backends to preview LaTeX fragments
|
|
||||||
(setq org-preview-latex-process-alist '((imagemagick
|
|
||||||
:programs ("pdflatex" "convert")
|
|
||||||
:description "pdf > png"
|
|
||||||
:message "you need to install the programs: pdflatex and imagemagick."
|
|
||||||
:image-input-type "pdf"
|
|
||||||
:image-output-type "png"
|
|
||||||
:image-size-adjust (0.6 . 0.6)
|
|
||||||
:latex-compiler ("pdflatex -interaction nonstopmode -output-directory %o %f")
|
|
||||||
:image-converter ("convert -density %D -trim -antialias %f -quality 100 %O"))
|
|
||||||
(dvipng
|
|
||||||
:programs ("latex" "dvipng")
|
|
||||||
:description "dvi > png"
|
|
||||||
:message "you need to install the programs: latex and dvipng."
|
|
||||||
:image-input-type "dvi"
|
|
||||||
:image-output-type "png"
|
|
||||||
:image-size-adjust (0.5 . 0.5)
|
|
||||||
:latex-compiler ("latex -interaction nonstopmode -output-directory %o %f")
|
|
||||||
:image-converter ("dvipng -D %D -T tight -o %O %f"))
|
|
||||||
(dvisvgm
|
|
||||||
:programs ("pdflatex" "dvisvgm")
|
|
||||||
:description "dvi > svg"
|
|
||||||
:message "you need to install the programs: latex and dvisvgm."
|
|
||||||
:image-input-type "dvi"
|
|
||||||
:image-output-type "svg"
|
|
||||||
:image-size-adjust (0.7 . 0.7)
|
|
||||||
:latex-compiler ("latex -interaction nonstopmode -output-directory %o %f")
|
|
||||||
:image-converter ("dvisvgm %f -n -b min -c %S -o %O"))
|
|
||||||
))
|
|
||||||
|
|
||||||
;; Use imagemagick/dvisvgm to generate png from pdf
|
|
||||||
(setq org-preview-latex-default-process 'dvipng)
|
|
||||||
)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
*** TODO Custom Export - Add Page and Label for LaTeX export
|
*** TODO Custom Export - Add Page and Label for LaTeX export
|
||||||
https://emacs.stackexchange.com/questions/156/emacs-function-to-convert-an-arbitrary-org-property-into-an-arbitrary-string-na?rq=1
|
https://emacs.stackexchange.com/questions/156/emacs-function-to-convert-an-arbitrary-org-property-into-an-arbitrary-string-na?rq=1
|
||||||
|
|
||||||
@ -1454,7 +1460,7 @@ Nice Functions:
|
|||||||
(map!
|
(map!
|
||||||
:map org-mode-map
|
:map org-mode-map
|
||||||
(:desc "Insert Link"
|
(:desc "Insert Link"
|
||||||
:n "C-c i" #'org-ref-insert-ref-link))
|
:ni "C-c i" #'org-ref-insert-ref-link))
|
||||||
)
|
)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
@ -2005,14 +2011,6 @@ https://emacs.stackexchange.com/questions/22430/rebind-org-babel-execute-src-blo
|
|||||||
)
|
)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** TODO Theme
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
;; (after! org
|
|
||||||
;; (require 'color)
|
|
||||||
;; (set-face-attribute 'org-block nil :background (color-darken-name (face-attribute 'default :background) 3))
|
|
||||||
;; )
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Indentation
|
** Indentation
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(after! org
|
(after! org
|
||||||
@ -2208,6 +2206,14 @@ Actually this tangle the file and then go to the file. Maybe I would like to ign
|
|||||||
(add-hook 'TeX-mode-hook #'TeX-fold-mode)
|
(add-hook 'TeX-mode-hook #'TeX-fold-mode)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
** Face Attributes
|
||||||
|
#+begin_src emacs-lisp :tangle no
|
||||||
|
(after! tex
|
||||||
|
(set-face-attribute 'font-latex-math-face nil :foreground (face-foreground 'default))
|
||||||
|
(set-face-attribute 'font-latex-math-face nil :background (face-background 'fringe))
|
||||||
|
)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
** Master file
|
** Master file
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(setq-default TeX-master nil)
|
(setq-default TeX-master nil)
|
||||||
|
Loading…
Reference in New Issue
Block a user