[Emacs Lisp] Personal ~/.emacs.d/ configuration folder.
Start work on sd-document-properties.
custom.el
@@ -15,7 +15,7 @@
15
15
'(company-quickhelp-color-foreground "#DCDCCC")
16
16
'(custom-enabled-themes nil)
17
17
'(custom-safe-themes
18
Removed:
'("bac014130231bcb21409a5ba0368ae6a437d36cb3cd710a814c2b8399dacd0a3" "3db2664cf7a2f3ca8add66736e8b432ad7aed88159c74dc220ffdc0580d37ffa" "41d8c624783c3bf1624ac595936a6968fbd7297ffdc40a0c9b080fa750027df0" "abf6e5f8aa2af79ac329a7bfcac3111dab0025ce3eaea24e424fb9e3e77e1162" "6dd0e1980e88c5bc5c4c9ab1e8b16b13287a4fa5a2e11970c0d26dfbcf2d62f3" "e479b796a220addcd20678fbb95018e4945ca574ba9900b54d107ed1569c704c" "46d1602c1e28e6223fec2bcd008312bc57a08e5ccc8c2ac35c40e6a5d2a20244" "57c9cc95433eb236e74a3b501d3bebb2716e1988cf633c47384d33d8a83a7940" "1229a1fe390f71ddeec71efd61129af285d032364a1957f9954845a6c5f617a1" "42350b596ca9d6a283ce13efb9bbb7774064d917e04ea3220ebf32b95a677d60" "07b0edb4d75390504029f7905ca8add46af2c8bb13cec46efb0d880de014464c" "884b3999dfeff6d4f45859239a46b84399ab1b3602dd2ee6d11f3a3e39fe088d" "0c5c0078062fafd063a227b4cebb49b65434ea6e9557e3aaf8bc3212ba986512" "469032293efae7c0c86a95c39cab8b0ff8883cf4af3f2c292313cf6a71195b40" "8fb0949f4229860cf19034b924eb99c664327c9250fb92a2633bdf4b4abaf060" "c3a2a37e84e474c73c2b468553f9b5b73341419f72bbc1f4a4bcc1230ef86c85" "6495716176be0ced4142593b94a410135e0b373b686a869637824260d2f1ca11" "4467b1c8d7cc78fe98345c9c63eb62cf37844dc6868630add365494bde455715" "faeef63cb31f796b4bdf22f38e614934ab34d7deacaeb89b3e9cccf70aac5a85" "370fb305168fea1614535dc9ca30f496918eaca754b6c8969dd77fa872bec695" "e9f0c0c3397d07eb1c6c3551d67fd151e24bc6d72ec678841623ed572677c97a" "5c32236ef318adafe4102f627f330fa8f448046dfd838eef5cc09c7f682cf71f" "e343fecfb8d681186d594002c9b44ce48c2061599d7e4ec635cf1ca2a277a47a" "302dc61dc55600c7424f945dce9e74fba7df19f4a7bfb72aefd93193fa82ede4" "58f1f85248ba913387d1e7ed02a867161b315cfb5acff0c234e013ffd2577d22" "a256abf590bbc3257cc11d91a312e9fe8487dc1b95a5b7b732dd2f96a7fe5a45" "30368d6195cae9298304e6ac0534b90c85b1655965f1206c5c624270f0f46002" "311aa5df3223b5b4a7c638aad3befb4de9c7f46360d52acd1fa2cd2232b1dcbd" default))
18
Added:
'("8bc595fa3d4cde8770ec075aa939bff9ba28f3e70fe34292a43e22690bc63c76" "ab538dce25085abac8ab09b184e9cef8273082a1b2a792f1bf1bf08ecc30056a" "0326fd263f840b21da906e36c54976e211cfcc252800e6ee7dad4a7eb5a3e819" "77dfce3ef0bdf852a7a1b3527aa384c3c895eec7792a68c2d694b7341364da26" "1692d3b1f4bf5c6c55dd090d6a10c613c0b213510892ae305c1f2518cb1a3ab3" "7ddce903be67800840ef2660310123e2ee11c8ec716ac54333d961307389ccde" "95ea953c58a6510531acf2231d9bddad92015214dce68e8ffe216b51237a3a5f" "47ff07593ae6fc4069b49ee32b0f7422239ad3b6619dc37358b9e76c4b014e81" "8a7a94e776727c6ff6ac14ae88826281eea80c687ffee71a8b188e415b737525" "566f33a94ac1f29db041d55a22fb677b1f9abd02a3ea529ac2b67b93624247ac" "bac014130231bcb21409a5ba0368ae6a437d36cb3cd710a814c2b8399dacd0a3" "3db2664cf7a2f3ca8add66736e8b432ad7aed88159c74dc220ffdc0580d37ffa" "41d8c624783c3bf1624ac595936a6968fbd7297ffdc40a0c9b080fa750027df0" "abf6e5f8aa2af79ac329a7bfcac3111dab0025ce3eaea24e424fb9e3e77e1162" "6dd0e1980e88c5bc5c4c9ab1e8b16b13287a4fa5a2e11970c0d26dfbcf2d62f3" "e479b796a220addcd20678fbb95018e4945ca574ba9900b54d107ed1569c704c" "46d1602c1e28e6223fec2bcd008312bc57a08e5ccc8c2ac35c40e6a5d2a20244" "57c9cc95433eb236e74a3b501d3bebb2716e1988cf633c47384d33d8a83a7940" "1229a1fe390f71ddeec71efd61129af285d032364a1957f9954845a6c5f617a1" "42350b596ca9d6a283ce13efb9bbb7774064d917e04ea3220ebf32b95a677d60" "07b0edb4d75390504029f7905ca8add46af2c8bb13cec46efb0d880de014464c" "884b3999dfeff6d4f45859239a46b84399ab1b3602dd2ee6d11f3a3e39fe088d" "0c5c0078062fafd063a227b4cebb49b65434ea6e9557e3aaf8bc3212ba986512" "469032293efae7c0c86a95c39cab8b0ff8883cf4af3f2c292313cf6a71195b40" "8fb0949f4229860cf19034b924eb99c664327c9250fb92a2633bdf4b4abaf060" "c3a2a37e84e474c73c2b468553f9b5b73341419f72bbc1f4a4bcc1230ef86c85" "6495716176be0ced4142593b94a410135e0b373b686a869637824260d2f1ca11" "4467b1c8d7cc78fe98345c9c63eb62cf37844dc6868630add365494bde455715" "faeef63cb31f796b4bdf22f38e614934ab34d7deacaeb89b3e9cccf70aac5a85" "370fb305168fea1614535dc9ca30f496918eaca754b6c8969dd77fa872bec695" "e9f0c0c3397d07eb1c6c3551d67fd151e24bc6d72ec678841623ed572677c97a" "5c32236ef318adafe4102f627f330fa8f448046dfd838eef5cc09c7f682cf71f" "e343fecfb8d681186d594002c9b44ce48c2061599d7e4ec635cf1ca2a277a47a" "302dc61dc55600c7424f945dce9e74fba7df19f4a7bfb72aefd93193fa82ede4" "58f1f85248ba913387d1e7ed02a867161b315cfb5acff0c234e013ffd2577d22" "a256abf590bbc3257cc11d91a312e9fe8487dc1b95a5b7b732dd2f96a7fe5a45" "30368d6195cae9298304e6ac0534b90c85b1655965f1206c5c624270f0f46002" "311aa5df3223b5b4a7c638aad3befb4de9c7f46360d52acd1fa2cd2232b1dcbd" default))
19
19
'(electric-indent-mode nil)
20
20
'(fci-rule-color "#383838")
21
21
'(fringe-mode 0 nil (fringe))
smart-documents.org
@@ -67,7 +67,7 @@
67
67
"Boolean to track literate configuration packed/unpacked status.")
68
68
69
69
(defvar sd-unpack-sections (org-property-values "sd-unpack-path")
70
Removed:
"List of target sections in `my/literate-config' to be unpacked into `user-emacs-directory'.")
70
Added:
"List of target sections in `my/literate-config' to be unpacked.")
71
71
72
72
(defun sd-unpack-sections ()
73
73
"Unpack literate configuration into `emacs-user-directory'."
@@ -166,7 +166,8 @@
166
166
looks at =~/.emacs.el=, =~/.emacs.d/init.el=, =~/.config/emacs/init.el=, or
167
167
other locations.
168
168
169
Removed:
From the GNU website[fn::[[https://www.gnu.org/software/emacs/manual/html_node/emacs/Init-File.html]]]
169
Added:
From the GNU
170
Added:
website[fn::[[https://www.gnu.org/software/emacs/manual/html_node/emacs/Init-File.html]]]
170
171
#+END_QUOTE
171
172
172
173
This file can be found here: [[file:init.el]]
@@ -266,13 +267,12 @@
266
267
267
268
#+BEGIN_SRC emacs-lisp :tangle yes
268
269
(setq backup-directory-alist `((".*" . ,temporary-file-directory))
269
Removed:
auto-save-file-name-transforms `((".*" ,temporary-file-directory t))
270
Removed:
backup-by-copying t ; Don't delink hardlinks
271
Removed:
version-control t ; Use version numbers on backups
272
Removed:
delete-old-versions t ; Automatically delete excess backups
273
Removed:
kept-new-versions 20 ; how many of the newest versions to keep
274
Removed:
kept-old-versions 5 ; and how many of the old
275
Removed:
)
270
Added:
auto-save-file-name-transforms `((".*" ,temporary-file-directory t))
271
Added:
backup-by-copying t ; Don't delink hardlinks
272
Added:
version-control t ; Use version numbers on backups
273
Added:
delete-old-versions t ; Automatically delete excess backups
274
Added:
kept-new-versions 20 ; how many of the newest versions to keep
275
Added:
kept-old-versions 5) ; and how many of the old
276
276
#+END_SRC
277
277
278
278
** Initial and default frames
@@ -450,11 +450,12 @@
450
450
451
451
** Navigation
452
452
453
Removed:
=Alt= (=Meta=) is the privileged key for motion in a buffer. It precedes a
454
Removed:
numerical argument, and a movement command. You may navigate in a buffer by
455
Removed:
keeping =Alt= pressed, optionally inputting a number from the keypad or number
456
Removed:
row, then pressing any of the following movement keys: =j=, =k=, =h=, and
457
Removed:
=l=. You will move in that direction by the according numerical argument.
453
Added:
=Alt= (=Meta=) is the privileged key for motion in a buffer. It is followed by
454
Added:
an optional numerical argument, and a movement command. You may navigate in a
455
Added:
buffer by keeping =Alt= pressed, optionally inputting a number from the keypad
456
Added:
or number row, then pressing any of the following movement keys: =j=, =k=, =h=,
457
Added:
and =l=. You will move in that direction in the amount of the numerical
458
Added:
argument.
458
459
459
460
#+NAME: keybinding-navigation
460
461
#+CAPTION[Navigation keybindings]: Navigation keybindings.
@@ -466,7 +467,6 @@
466
467
| Word | =M-f= | =M-b= |
467
468
| Paragraph | =M-a= | =M-e= |
468
469
469
Removed:
470
470
We prevent Org mode from overriding preferred navigation keys.
471
471
472
472
#+BEGIN_SRC emacs-lisp :tangle yes
@@ -826,18 +826,14 @@
826
826
;; (load-file)
827
827
#+END_SRC
828
828
829
Removed:
*** Icons
829
Added:
# *** Icons
830
830
831
Removed:
Icon fonts
831
Added:
# Icon fonts
832
832
833
Removed:
#+BEGIN_SRC emacs-lisp :tangle yes
834
Removed:
(use-package all-the-icons)
835
Removed:
#+END_SRC
833
Added:
# #+BEGIN_SRC emacs-lisp :tangle yes
834
Added:
# (use-package all-the-icons)
835
Added:
# #+END_SRC
836
836
837
Removed:
#+BEGIN_SRC emacs-lisp :tangle yes
838
Removed:
(use-package mode-icons)
839
Removed:
#+END_SRC
840
Removed:
841
837
*** Better parentheses
842
838
843
839
#+BEGIN_SRC emacs-lisp :tangle yes
@@ -868,11 +864,17 @@
868
864
869
865
* ~org-mode~
870
866
871
Removed:
Phew, I can finally introduce Org mode! I am so *excited*.
867
Added:
Org mode is so significant that this section of the paper deserves its own
868
Added:
introduction.
872
869
870
Added:
** Introduction
871
Added:
872
Added:
Phew, after all this initialization, I can finally introduce Org mode! I am so
873
Added:
*excited*.
874
Added:
873
875
Org mode replaces aword processor, a presentation creator, and a spreadsheet
874
Removed:
editor. IMHO, the spreadsheet ability captures more than 80% use cases wherein
875
Removed:
one wishes to include a table in a text document destined for physical
876
Added:
editor. The spreadsheet ability captures more than 80% use cases wherein one
877
Added:
wishes to include a table in a text document destined for physical
876
878
publication. (It is clear that Excel spreadsheets are /not/ destined for
877
879
physical publication---simply attempt to print an Excel spreadsheet with the
878
880
default settings.) In my opinion, Org mode matches all /useful/ features of
@@ -911,26 +913,33 @@
911
913
(setq org-directory (concat user-emacs-directory "~/org"))
912
914
#+END_SRC
913
915
914
Removed:
First, we hide markup symbols for *bold*, /italic/, _underlined_ and
915
Removed:
+strikethrough+ text, and ensure our document appears indented upon
916
Removed:
loading:[fn::It /appears/ indented, but the underlying plaintext file does not
917
Removed:
contain tab characters!]
916
Added:
** TODO Org cosmetics
918
917
919
Removed:
For the time being, I will in fact display emphasis markers, because hiding
920
Removed:
them corrupts tables.
918
Added:
First, we ensure the display of markup symbols for *bold*, /italic/,
919
Added:
_underlined_ and +strikethrough+ text, and ensure our document appears indented
920
Added:
upon loading.[fn::It /appears/ indented, but the underlying plaintext file does
921
Added:
not contain tab characters!]
921
922
922
Removed:
#+NAME: org-format
923
Added:
We then set values for many other Org-related cosmetic symbols.
924
Added:
923
925
#+BEGIN_SRC emacs-lisp :tangle yes
924
Removed:
(setq org-hide-emphasis-markers nil
925
Removed:
org-startup-indented t
926
Removed:
org-src-preserve-indentation nil
927
Removed:
org-edit-src-content-indentation 0)
926
Added:
(setq org-hide-emphasis-markers nil
927
Added:
org-startup-indented t
928
Added:
org-src-preserve-indentation nil
929
Added:
org-edit-src-content-indentation 2
930
Added:
org-ellipsis " ") ; folding symbol
928
931
#+END_SRC
929
932
930
Removed:
We enable the dynamic numbering of headlines in an Org buffer.
933
Added:
*** Dynamic numbering of headlines
931
934
935
Added:
We enable the dynamic numbering of headlines in an Org buffer. We also set the
936
Added:
numbering face to ~org-special-keyword~, which specifies a ~:background white~
937
Added:
attribute. This is necessary because otherwise, the background of the numbering
938
Added:
may be overridden by the ~TODO~ face attribute ~:background coral~.
939
Added:
932
940
#+BEGIN_SRC emacs-lisp :tangle yes
933
941
(add-hook 'org-mode-hook 'org-num-mode)
942
Added:
(setq org-num-face 'org-special-keyword)
934
943
#+END_SRC
935
944
936
945
By default, we hide Org document properties such as =#+TITLE=, =#+AUTHOR=, and
@@ -939,13 +948,43 @@
939
948
manually, with a simple keyboard shortcut (cf. Section [[Open Org mode document
940
949
properties]]).
941
950
942
Removed:
#+BEGIN_SRC emacs-lisp :tangle yes
951
Added:
*** Document properties
952
Added:
953
Added:
#+BEGIN_SRC emacs-lisp :tangle no
954
Added:
(defun org-property-value (property)
955
Added:
"Return the value of a given Org document property."
956
Added:
(save-excursion
957
Added:
(goto-char (point-min))
958
Added:
(when (re-search-forward
959
Added:
(concat
960
Added:
"^[[:space:]]*#\\+"
961
Added:
property
962
Added:
":[[:space:]]*\\(.*?\\)[[:space:]]*$")
963
Added:
nil t)
964
Added:
(match-string 1))))
965
Added:
943
966
(defun sd-document-properties ()
944
Removed:
"Open separate buffer enabling the editing of Org mode properties.")
967
Added:
"Open separate buffer to edit Org mode properties."
968
Added:
(interactive)
969
Added:
(let ((title (car (org-property-value "TITLE")))
970
Added:
(date (org-property-value "DATE")))
971
Added:
(with-output-to-temp-buffer "Smart Document Properties"
972
Added:
(print title)
973
Added:
(print date))))
945
974
#+END_SRC
946
975
976
Added:
#+RESULTS:
977
Added:
: sd-document-properties
947
978
948
Removed:
** TODO Languages executable in smart documents
979
Added:
#+BEGIN_SRC emacs-lisp :tangle yes
980
Added:
(add-hook 'org-src-mode-hook
981
Added:
'(lambda ()
982
Added:
"Disable flycheck for `emacs-lisp-mode'."
983
Added:
(setq-local flycheck-disabled-checkers
984
Added:
'(emacs-lisp-checkdoc))))
985
Added:
#+END_SRC
986
Added:
987
Added:
** Languages executable in Smart Documents
949
988
950
989
The following languages can be written inside =SRC= blocks, in view of being
951
990
executed by the Org Babel backend.
smart-documents.pdf
Binary files differ
themes/blendoit-light-theme.el
@@ -1,5 +1,5 @@
1
1
(deftheme blendoit-light
2
Removed:
"Created 2020-11-04.")
2
Added:
"Created 2020-11-05.")
3
3
4
4
(custom-theme-set-faces
5
5
'blendoit-light
@@ -11,12 +11,12 @@
11
11
'(minibuffer-prompt ((t (:inherit org-meta-line))))
12
12
'(highlight ((t (:background "deep sky blue" :foreground "white"))))
13
13
'(region ((t (:background "gainsboro"))))
14
Removed:
'(shadow ((t (:foreground "dark slate gray"))))
14
Added:
'(shadow ((t (:foreground "light slate gray"))))
15
15
'(secondary-selection ((((class color) (min-colors 88) (background light)) (:background "yellow1")) (((class color) (min-colors 88) (background dark)) (:background "SkyBlue4")) (((class color) (min-colors 16) (background light)) (:background "yellow")) (((class color) (min-colors 16) (background dark)) (:background "SkyBlue4")) (((class color) (min-colors 8)) (:foreground "black" :background "cyan")) (t (:inverse-video t))))
16
16
'(trailing-whitespace ((((class color) (background light)) (:background "red1")) (((class color) (background dark)) (:background "red1")) (t (:inverse-video t))))
17
17
'(font-lock-builtin-face ((t (:foreground "dark slate blue"))))
18
Removed:
'(font-lock-comment-delimiter-face ((t (:foreground "dim gray" :inherit font-lock-comment-face))))
19
Removed:
'(font-lock-comment-face ((t (:foreground "slate gray" :slant italic))))
18
Added:
'(font-lock-comment-delimiter-face ((t (:foreground "slate gray"))))
19
Added:
'(font-lock-comment-face ((t (:foreground "light slate gray" :slant italic))))
20
20
'(font-lock-constant-face ((t (:foreground "dark cyan"))))
21
21
'(font-lock-function-name-face ((((class color) (min-colors 88) (background light)) (:foreground "Blue1")) (((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue")) (((class color) (min-colors 16) (background light)) (:foreground "Blue")) (((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue")) (((class color) (min-colors 8)) (:weight bold :foreground "blue")) (t (:weight bold :inverse-video t))))
22
22
'(font-lock-keyword-face ((t (:foreground "slate blue"))))
@@ -64,7 +64,7 @@
64
64
'(org-document-info ((t (:weight bold))))
65
65
'(org-table ((t (:height 0.8 :family "Hack"))))
66
66
'(org-block ((t (:height 0.8 :family "Hermit"))))
67
Removed:
'(org-special-keyword ((t (:inherit org-meta-line :weight bold :background "white"))))
67
Added:
'(org-special-keyword ((t (:background "white" :weight bold :inherit org-meta-line))))
68
68
'(org-level-1 ((t (:foreground "black" :weight bold :height 1.6 :family "Jost*"))))
69
69
'(org-level-2 ((t (:foreground "gray30" :weight bold :height 1.4))))
70
70
'(org-level-3 ((t (:foreground "gray45" :weight bold :height 1.2))))
@@ -86,6 +86,8 @@
86
86
'(tab-line-tab-current ((t (:inherit tab-line-tab :background "grey85" :foreground "red"))))
87
87
'(tab-line-close-highlight ((t (:foreground "red"))))
88
88
'(tab-line-highlight ((default (:inherit (tab-line-tab)))))
89
Removed:
'(default ((t (:background "white" :foreground "black" :height 140 :family "Hack")))))
89
Added:
'(default ((t (:background "white" :foreground "black" :height 140 :family "Hack"))))
90
Added:
'(org-quote ((t (:inherit variable-pitch :slant italic))))
91
Added:
'(org-ellipsis ((t (:inherit shadow :background "white")))))
90
92
91
93
(provide-theme 'blendoit-light)