Upgraded to org-mode 9.3, better data presentation, introduction added
An introduction was added with a direct link to the original org file as well as the .spacemacs. Extra packages are now presented as a table, with a description of what they do and why they are here. Also modified the behavior of org-mode with org-structure-template-alist.
This commit is contained in:
		
							parent
							
								
									00f9f458a8
								
							
						
					
					
						commit
						d294478b47
					
				@ -1,5 +1,6 @@
 | 
				
			|||||||
 | 
					# -*- org-confirm-babel-evaluate: nil -*-
 | 
				
			||||||
#+title: Phundrak’s Spacemacs Configuration
 | 
					#+title: Phundrak’s Spacemacs Configuration
 | 
				
			||||||
#+INCLUDE: ~/org/config-website/headers.org
 | 
					#+INCLUDE: headers.org
 | 
				
			||||||
#+OPTIONS: auto-id:t
 | 
					#+OPTIONS: auto-id:t
 | 
				
			||||||
#+HTML_HEAD_EXTRA: <meta name="description" content="Phundrak’s Spacemacs Configuration" />
 | 
					#+HTML_HEAD_EXTRA: <meta name="description" content="Phundrak’s Spacemacs Configuration" />
 | 
				
			||||||
#+HTML_HEAD_EXTRA: <meta property="og:title" content="Phundrak’s Spacemacs Configuration" />
 | 
					#+HTML_HEAD_EXTRA: <meta property="og:title" content="Phundrak’s Spacemacs Configuration" />
 | 
				
			||||||
@ -9,6 +10,7 @@
 | 
				
			|||||||
  :PROPERTIES:
 | 
					  :PROPERTIES:
 | 
				
			||||||
  :CUSTOM_ID: h-f61204c4-beb8-4008-b02e-55eae4e8f163
 | 
					  :CUSTOM_ID: h-f61204c4-beb8-4008-b02e-55eae4e8f163
 | 
				
			||||||
  :END:
 | 
					  :END:
 | 
				
			||||||
 | 
					- [[#introduction][Introduction]]
 | 
				
			||||||
- [[#spacemacs-layers-and-packages][Spacemacs layers and packages]]
 | 
					- [[#spacemacs-layers-and-packages][Spacemacs layers and packages]]
 | 
				
			||||||
  - [[#general-configuration][General configuration]]
 | 
					  - [[#general-configuration][General configuration]]
 | 
				
			||||||
  - [[#package-management][Package management]]
 | 
					  - [[#package-management][Package management]]
 | 
				
			||||||
@ -91,6 +93,7 @@
 | 
				
			|||||||
    - [[#org-variables][Org variables]]
 | 
					    - [[#org-variables][Org variables]]
 | 
				
			||||||
      - [[#user-information][User information]]
 | 
					      - [[#user-information][User information]]
 | 
				
			||||||
      - [[#visual-settings][Visual settings]]
 | 
					      - [[#visual-settings][Visual settings]]
 | 
				
			||||||
 | 
					      - [[#org-behavior][Org behavior]]
 | 
				
			||||||
      - [[#miscellaneous-2][Miscellaneous]]
 | 
					      - [[#miscellaneous-2][Miscellaneous]]
 | 
				
			||||||
    - [[#org-files-exports][Org files exports]]
 | 
					    - [[#org-files-exports][Org files exports]]
 | 
				
			||||||
    - [[#custom-latex-formats][Custom LaTeX formats]]
 | 
					    - [[#custom-latex-formats][Custom LaTeX formats]]
 | 
				
			||||||
@ -102,6 +105,20 @@
 | 
				
			|||||||
  - [[#rust][Rust]]
 | 
					  - [[#rust][Rust]]
 | 
				
			||||||
  - [[#scheme][Scheme]]
 | 
					  - [[#scheme][Scheme]]
 | 
				
			||||||
  - [[#shortcuts-1][Shortcuts]]
 | 
					  - [[#shortcuts-1][Shortcuts]]
 | 
				
			||||||
 | 
					- [[#footnotes][Footnotes]]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Introduction
 | 
				
			||||||
 | 
					  :PROPERTIES:
 | 
				
			||||||
 | 
					  :CUSTOM_ID: h-ff1cbbaa-6ab0-49ab-8945-7e25706ead8e
 | 
				
			||||||
 | 
					  :END:
 | 
				
			||||||
 | 
					  This file  is the main source  file for my Emacs  configuration which contains
 | 
				
			||||||
 | 
					  most of the user code. It is  exported thanks to Emacs’ code tangling from the
 | 
				
			||||||
 | 
					  original Org file  which you can find on my  dotfiles’ repository[fn:1] if you
 | 
				
			||||||
 | 
					  are  reading   the  web   version  of   it.  You  can   also  find   there  my
 | 
				
			||||||
 | 
					  ~.spacemacs~[fn:2] and its  code which isn’t part of the  present file. As you
 | 
				
			||||||
 | 
					  can  see in  my  ~.spacemacs~,  at init-time,  if  Emacs  detects the  tangled
 | 
				
			||||||
 | 
					  configuration  files are  older than  the Org  file, then  Emacs tangles  them
 | 
				
			||||||
 | 
					  again, and then loads them.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Spacemacs layers and packages
 | 
					* Spacemacs layers and packages
 | 
				
			||||||
  :PROPERTIES:
 | 
					  :PROPERTIES:
 | 
				
			||||||
@ -168,27 +185,37 @@
 | 
				
			|||||||
   #+BEGIN_SRC emacs-lisp :tangle no
 | 
					   #+BEGIN_SRC emacs-lisp :tangle no
 | 
				
			||||||
     '(your-package :location "~/path/to/your-package/")
 | 
					     '(your-package :location "~/path/to/your-package/")
 | 
				
			||||||
   #+END_SRC
 | 
					   #+END_SRC
 | 
				
			||||||
   Alos include the dependencies as they will not be resolved automatically:
 | 
					
 | 
				
			||||||
   #+BEGIN_SRC emacs-lisp
 | 
					   With  the  variable  ~dotspacemacs-additional-packages~, it  is  possible  to
 | 
				
			||||||
     (setq-default dotspacemacs-additional-packages '(atomic-chrome
 | 
					   install  extra  packages  which  are  not already  included  in  any  layers.
 | 
				
			||||||
                                                      dired-du
 | 
					   Dependencies  should  be  explicitly  included  as  they  won’t  be  resolved
 | 
				
			||||||
                                                      doom-themes
 | 
					   automatically. Here is a table of all the extra packages I use:
 | 
				
			||||||
                                                      edit-indirect
 | 
					   #+NAME: extra-packages
 | 
				
			||||||
                                                      elcord
 | 
					   | name of the package    | why is it installed                                  |
 | 
				
			||||||
                                                      eshell-git-prompt
 | 
					   |------------------------+------------------------------------------------------|
 | 
				
			||||||
                                                      flycheck-golangci-lint
 | 
					   | dired-du               | alternative to ~ncdu~ with Dired                     |
 | 
				
			||||||
                                                      kaolin-themes
 | 
					   | doom-themes            | some cool themes                                     |
 | 
				
			||||||
                                                      magit-gitflow
 | 
					   | edit-indirect          | edit region in separate buffer                       |
 | 
				
			||||||
                                                      meson-mode
 | 
					   | elcord                 | rich integration of Emacs in Discord                 |
 | 
				
			||||||
                                                      modern-cpp-font-lock
 | 
					   | eshell-git-prompt      | pimp my Eshell                                       |
 | 
				
			||||||
                                                      multiple-cursors
 | 
					   | kaolin-themes          | some cool themes                                     |
 | 
				
			||||||
                                                      org-sidebar
 | 
					   | magit-gitflow          | integrate gitflow in Magit                           |
 | 
				
			||||||
                                                      outorg
 | 
					   | meson-mode             | major mode for Meson build files                     |
 | 
				
			||||||
                                                      pinentry
 | 
					   | multiple-cursors       | I don’t like the layer, I prefer this package alone  |
 | 
				
			||||||
                                                      visual-fill-column
 | 
					   | org-sidebar            | display on the side the outline of an Org buffer     |
 | 
				
			||||||
                                                      wttrin
 | 
					   | outorg                 | edit comments as Org-mode buffers                    |
 | 
				
			||||||
                                                      xresources-theme
 | 
					   | pinentry               | enter a GPG password from Emacs                      |
 | 
				
			||||||
                                                      yasnippet-snippets))
 | 
					   | visual-fill-column     | allow the use of ~fill-column~ in ~visual-line-mode~ |
 | 
				
			||||||
 | 
					   | wttrin                 | weather in Emacs                                     |
 | 
				
			||||||
 | 
					   | yasnippet-snippets     | snippets for YaSnippet                               |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   #+NAME: make-extra-packages
 | 
				
			||||||
 | 
					   #+BEGIN_SRC emacs-lisp :tangle no :var packages=extra-packages[,0] :exports none
 | 
				
			||||||
 | 
					     (mapcar 'make-symbol packages)
 | 
				
			||||||
 | 
					   #+END_SRC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   #+BEGIN_SRC emacs-lisp :noweb yes :exports none
 | 
				
			||||||
 | 
					     (setq-default dotspacemacs-additional-packages (quote <<make-extra-packages()>>))
 | 
				
			||||||
   #+END_SRC
 | 
					   #+END_SRC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   It is possible to also list packages that cannot be updated:
 | 
					   It is possible to also list packages that cannot be updated:
 | 
				
			||||||
@ -575,7 +602,7 @@
 | 
				
			|||||||
    #+BEGIN_SRC emacs-lisp
 | 
					    #+BEGIN_SRC emacs-lisp
 | 
				
			||||||
      (shell :variables
 | 
					      (shell :variables
 | 
				
			||||||
             shell-default-height 40
 | 
					             shell-default-height 40
 | 
				
			||||||
             shell-default-position 'bottom
 | 
					             shell-default-position 'right
 | 
				
			||||||
             shell-default-shell 'eshell)
 | 
					             shell-default-shell 'eshell)
 | 
				
			||||||
    #+END_SRC
 | 
					    #+END_SRC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -2116,6 +2143,22 @@
 | 
				
			|||||||
       (setq org-hide-macro-markers t)
 | 
					       (setq org-hide-macro-markers t)
 | 
				
			||||||
     #+END_SRC
 | 
					     #+END_SRC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**** Org behavior
 | 
				
			||||||
 | 
					     :PROPERTIES:
 | 
				
			||||||
 | 
					     :CUSTOM_ID: h-81bcc367-4b2a-4a10-b42c-7b3cb7fd2d60
 | 
				
			||||||
 | 
					     :END:
 | 
				
			||||||
 | 
					     Here is one behavior that I really want to see modified: the ability to use
 | 
				
			||||||
 | 
					     ~M-RET~ without slicing the text the marker is on.
 | 
				
			||||||
 | 
					     #+BEGIN_SRC emacs-lisp
 | 
				
			||||||
 | 
					       (setq org-M-RET-may-split-line nil)
 | 
				
			||||||
 | 
					     #+END_SRC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					     I also have added  a couple of custom structure templates  for Org mode (>=
 | 
				
			||||||
 | 
					     9.3), mainly for source code blocks.
 | 
				
			||||||
 | 
					     #+begin_src emacs-lisp
 | 
				
			||||||
 | 
					       (add-to-list 'org-structure-template-alist '("L" . "src emacs-lisp"))
 | 
				
			||||||
 | 
					     #+end_src
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**** Miscellaneous
 | 
					**** Miscellaneous
 | 
				
			||||||
     :PROPERTIES:
 | 
					     :PROPERTIES:
 | 
				
			||||||
     :CUSTOM_ID: h-42ccf90a-f507-4fab-ae42-3fd815a34ef0
 | 
					     :CUSTOM_ID: h-42ccf90a-f507-4fab-ae42-3fd815a34ef0
 | 
				
			||||||
@ -2328,7 +2371,6 @@
 | 
				
			|||||||
        :language "fr"
 | 
					        :language "fr"
 | 
				
			||||||
        :publishing-function org-html-publish-to-html
 | 
					        :publishing-function org-html-publish-to-html
 | 
				
			||||||
        :headline-levels 5
 | 
					        :headline-levels 5
 | 
				
			||||||
        :auto-sitemap t
 | 
					 | 
				
			||||||
        :auto-preamble t)
 | 
					        :auto-preamble t)
 | 
				
			||||||
     #+END_SRC
 | 
					     #+END_SRC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -2565,3 +2607,12 @@
 | 
				
			|||||||
   like a lot of  Spacemacs shortcuts, can be called with the  use of the leader
 | 
					   like a lot of  Spacemacs shortcuts, can be called with the  use of the leader
 | 
				
			||||||
   key, in my case ~SPC~. So, if I want to call the calculator, I will type ~SPC
 | 
					   key, in my case ~SPC~. So, if I want to call the calculator, I will type ~SPC
 | 
				
			||||||
   o a c~.
 | 
					   o a c~.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Footnotes
 | 
				
			||||||
 | 
					  :PROPERTIES:
 | 
				
			||||||
 | 
					  :CUSTOM_ID: h-a471c99d-e731-4196-9e69-beb0359962bd
 | 
				
			||||||
 | 
					  :END:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fn:2] [[https://labs.phundrak.com/phundrak/dotfiles/src/branch/master/.spacemacs][labs.phundrak.com/phundrak/dotfiles/src/branch/master/.spacemacs]]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[fn:1] [[https://labs.phundrak.com/phundrak/dotfiles/src/branch/master/org/config-website/spacemacs.org][labs.phundrak.com/phundrak/dotfiles/src/branch/master/org/config-website/spacemacs.org]]
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user