#+startup: overview * Pending task - Set hydra for =straight.el= ([[https://github.com/abo-abo/hydra/wiki/straight.el][reference]]) * Famous init files - [[https://github.com/zamansky/dot-emacs][The Big Zemansky]] - [[https://pages.sachachua.com/.emacs.d/Sacha.html][Sacha Chua Emac's configuration]] - [[https://github.com/patrickt/emacs][Patrick: GOAT init emacs]] - [[https://github.com/manugoyal/.emacs.d][Manugoyal: Emacs config]] - [[https://github.com/daviwil/dotfiles/blob/master/Emacs.org][System Crafters]] - [[https://github.com/daviwil/emacs-from-scratch/blob/master/Emacs.org][System Crafters emacs-from-scratch]] - [[https://github.com/SystemCrafters/crafter-configs][System Crafters configs compilation]] - [[https://github.com/oantolin/emacs-config][Omar Antolin]] - [[https://bitbucket.org/hyunlee1o/dotfiles/src/main/.emacs.d/init.el][hyunlee1o]] - [[https://www.lucacambiaghi.com/vanilla-emacs/readme.html#h:403F77CB-A591-4431-B568-CD802876F770][Luca Cambiaghi]] - [[https://github.com/abougouffa/minemacs][Minemacs]] * Before this file loads ** The =early-init.el= file has been loaded. This file inhibits =package.el= for loading packages ** The =init.el= file has been loaded This file: - Sets a new =straight-base-dir= - Sets all that it's needed for =straight.el= to work as package manager - Load the =no-littering= package (see [[https://github.com/emacscollective/no-littering][doc]]) This package sets out to fix "the littering" by changing the values of path variables to put configuration files in =no-littering-etc-directory= (this will be =~/.cache/emacs/etc/= for this configuration) and persistent data files in =no-littering-var-directory= (for me: =~/.cache/emacs/var/=), and by using descriptive file names and subdirectories when appropriate. This is similar to a color-theme; a "path-theme" if you will. - Load backup configuration by using the =backup-theme-function= from =no-littering= - Tries to install =org-mode= just to be sure the newest release is used - Loads the newer of this two files: =myconfig.org= or =myconfig.el=. In other words, if there are no new changes in =myconfig.org= it loads =myconfig.el= (it's faster) * use-package tips Some notes about [[https://github.com/jwiegley/use-package][use-package]] - *:ensure* if true will install the package if not installed It won't update packages. See auto-package-update for keeping all packages up to date - *:init* keyword to execute code *before* a package is loaded. It accepts one or more forms, up to the next keyword - *:config* can be used to execute code *after* a package is loaded. In cases where loading is done lazily (see more about autoloading below), this execution is deferred until after the autoload occurs - *:custom* permite configurar variables con syntaxis simplificada - *:bind* - *:bind-keymap* - *:commands* - *:mode* and *:interpreter* - *:magic* - *:hook* You can define hooks - *:if* - *:defer* En general use-package intenta aplicar lazy loading, pero en algĂșn paquete es necesario especificarlo explicitamente - *:demand* Este es el contrario del anterior, para paquetes que queremos cargar de inmediato - *:diminish* and *:delight* changes minormode display in status line * Personal info #+begin_src elisp ;; (setq user-full-name "FirstName Surname" ;; user-mail-address "myaddress@mymail.com") #+end_src