Split README into more headings
- Add more headings to README to split up source blocks
This commit is contained in:
338
README.org
338
README.org
@ -7,8 +7,27 @@
|
|||||||
- [[#welcome][Welcome]]
|
- [[#welcome][Welcome]]
|
||||||
- [[#configuration-files][Configuration Files]]
|
- [[#configuration-files][Configuration Files]]
|
||||||
- [[#initel][init.el]]
|
- [[#initel][init.el]]
|
||||||
|
- [[#input][Input]]
|
||||||
|
- [[#completion][Completion]]
|
||||||
|
- [[#user-interface][User Interface]]
|
||||||
|
- [[#editor][Editor]]
|
||||||
|
- [[#emacs][Emacs]]
|
||||||
|
- [[#terminal][Terminal]]
|
||||||
|
- [[#checkers][Checkers]]
|
||||||
|
- [[#tools][Tools]]
|
||||||
|
- [[#os][OS]]
|
||||||
|
- [[#languages][Languages]]
|
||||||
|
- [[#email][Email]]
|
||||||
|
- [[#apps][Apps]]
|
||||||
|
- [[#config][Config]]
|
||||||
- [[#configel][config.el]]
|
- [[#configel][config.el]]
|
||||||
|
- [[#user-configuration][User Configuration]]
|
||||||
|
- [[#user-interface-1][User Interface]]
|
||||||
|
- [[#org-mode][Org Mode]]
|
||||||
|
- [[#projectile][Projectile]]
|
||||||
|
- [[#prettier-formatter][Prettier Formatter]]
|
||||||
- [[#packagesel][packages.el]]
|
- [[#packagesel][packages.el]]
|
||||||
|
- [[#packages][Packages]]
|
||||||
|
|
||||||
* Welcome
|
* Welcome
|
||||||
|
|
||||||
@ -18,34 +37,41 @@ My personal configuration of [[https://github.com/hlissner/doom-emacs][DOOM Emac
|
|||||||
|
|
||||||
** init.el
|
** init.el
|
||||||
|
|
||||||
This file controls what Doom modules are enabled and what order they load in. Remember to run 'doom sync' after modifying it!
|
This file controls which Doom modules are enabled and what order they load in. Remember to run =doom sync= after modifying it!
|
||||||
|
|
||||||
#+BEGIN_SRC emacs-lisp :tangle init.el
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
;;; init.el -*- lexical-binding: t; -*-
|
;;; init.el -*- lexical-binding: t; -*-
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's
|
*NOTE* Press =SPC h d h= (or =C-h d h= for non-vim users) to access Doom's documentation. There you'll find a "Module Index" link where you'll find a comprehensive list of Doom's modules and what flags they support.
|
||||||
;; documentation. There you'll find a "Module Index" link where you'll find
|
|
||||||
;; a comprehensive list of Doom's modules and what flags they support.
|
|
||||||
|
|
||||||
;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or
|
*NOTE* Move your cursor over a module's name (or its flags) and press =K= (or =C-c c k= for non-vim users) to view its documentation. This works on flags as well (those symbols that start with a plus).
|
||||||
;; 'C-c c k' for non-vim users) to view its documentation. This works on
|
|
||||||
;; flags as well (those symbols that start with a plus).
|
|
||||||
;;
|
|
||||||
;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its
|
|
||||||
;; directory (for easy access to its source code).
|
|
||||||
|
|
||||||
|
Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (for easy access to its source code).
|
||||||
|
|
||||||
|
*** Input
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
(doom! :input
|
(doom! :input
|
||||||
;;chinese
|
;;chinese
|
||||||
;;japanese
|
;;japanese
|
||||||
;;layout ; auie,ctsrnm is the superior home row
|
;;layout ; auie,ctsrnm is the superior home row
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Completion
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:completion
|
:completion
|
||||||
company ; the ultimate code completion backend
|
company ; the ultimate code completion backend
|
||||||
;;helm ; the *other* search engine for love and life
|
;;helm ; the *other* search engine for love and life
|
||||||
;;ido ; the other *other* search engine...
|
;;ido ; the other *other* search engine...
|
||||||
;;ivy ; a search engine for love and life
|
;;ivy ; a search engine for love and life
|
||||||
vertico ; the search engine of the future
|
vertico ; the search engine of the future
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** User Interface
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:ui
|
:ui
|
||||||
;;deft ; notational velocity for Emacs
|
;;deft ; notational velocity for Emacs
|
||||||
doom ; what makes DOOM look the way it does
|
doom ; what makes DOOM look the way it does
|
||||||
@ -70,7 +96,11 @@ This file controls what Doom modules are enabled and what order they load in. Re
|
|||||||
;;window-select ; visually switch windows
|
;;window-select ; visually switch windows
|
||||||
workspaces ; tab emulation, persistence & separate workspaces
|
workspaces ; tab emulation, persistence & separate workspaces
|
||||||
;;zen ; distraction-free coding or writing
|
;;zen ; distraction-free coding or writing
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Editor
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:editor
|
:editor
|
||||||
(evil +everywhere); come to the dark side, we have cookies
|
(evil +everywhere); come to the dark side, we have cookies
|
||||||
file-templates ; auto-snippets for empty files
|
file-templates ; auto-snippets for empty files
|
||||||
@ -84,25 +114,41 @@ This file controls what Doom modules are enabled and what order they load in. Re
|
|||||||
;;rotate-text ; cycle region at point between text candidates
|
;;rotate-text ; cycle region at point between text candidates
|
||||||
snippets ; my elves. They type so I don't have to
|
snippets ; my elves. They type so I don't have to
|
||||||
;;word-wrap ; soft wrapping with language-aware indent
|
;;word-wrap ; soft wrapping with language-aware indent
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Emacs
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:emacs
|
:emacs
|
||||||
dired ; making dired pretty [functional]
|
dired ; making dired pretty [functional]
|
||||||
electric ; smarter, keyword-based electric-indent
|
electric ; smarter, keyword-based electric-indent
|
||||||
;;ibuffer ; interactive buffer management
|
;;ibuffer ; interactive buffer management
|
||||||
undo ; persistent, smarter undo for your inevitable mistakes
|
undo ; persistent, smarter undo for your inevitable mistakes
|
||||||
vc ; version-control and Emacs, sitting in a tree
|
vc ; version-control and Emacs, sitting in a tree
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Terminal
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:term
|
:term
|
||||||
eshell ; the elisp shell that works everywhere
|
eshell ; the elisp shell that works everywhere
|
||||||
;;shell ; simple shell REPL for Emacs
|
;;shell ; simple shell REPL for Emacs
|
||||||
;;term ; basic terminal emulator for Emacs
|
;;term ; basic terminal emulator for Emacs
|
||||||
vterm ; the best terminal emulation in Emacs
|
vterm ; the best terminal emulation in Emacs
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Checkers
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:checkers
|
:checkers
|
||||||
syntax ; tasing you for every semicolon you forget
|
syntax ; tasing you for every semicolon you forget
|
||||||
(spell +flyspell) ; tasing you for misspelling mispelling
|
(spell +flyspell) ; tasing you for misspelling mispelling
|
||||||
grammar ; tasing grammar mistake every you make
|
grammar ; tasing grammar mistake every you make
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Tools
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:tools
|
:tools
|
||||||
;;ansible
|
;;ansible
|
||||||
;;debugger ; FIXME stepping through code, to help you add bugs
|
;;debugger ; FIXME stepping through code, to help you add bugs
|
||||||
@ -124,11 +170,19 @@ This file controls what Doom modules are enabled and what order they load in. Re
|
|||||||
;;terraform ; infrastructure as code
|
;;terraform ; infrastructure as code
|
||||||
;;tmux ; an API for interacting with tmux
|
;;tmux ; an API for interacting with tmux
|
||||||
;;upload ; map local to remote projects via ssh/ftp
|
;;upload ; map local to remote projects via ssh/ftp
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** OS
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:os
|
:os
|
||||||
(:if IS-MAC macos) ; improve compatibility with macOS
|
(:if IS-MAC macos) ; improve compatibility with macOS
|
||||||
tty ; improve the terminal Emacs experience
|
tty ; improve the terminal Emacs experience
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Languages
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:lang
|
:lang
|
||||||
;;agda ; types of types of types of types...
|
;;agda ; types of types of types of types...
|
||||||
;;beancount ; mind the GAAP
|
;;beancount ; mind the GAAP
|
||||||
@ -190,12 +244,20 @@ This file controls what Doom modules are enabled and what order they load in. Re
|
|||||||
web ; the tubes
|
web ; the tubes
|
||||||
yaml ; JSON, but readable
|
yaml ; JSON, but readable
|
||||||
;;zig ; C, but simpler
|
;;zig ; C, but simpler
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Email
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:email
|
:email
|
||||||
;;(mu4e +org +gmail)
|
;;(mu4e +org +gmail)
|
||||||
;;notmuch
|
;;notmuch
|
||||||
;;(wanderlust +gmail)
|
;;(wanderlust +gmail)
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Apps
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:app
|
:app
|
||||||
;;calendar
|
;;calendar
|
||||||
;;emms
|
;;emms
|
||||||
@ -203,7 +265,11 @@ This file controls what Doom modules are enabled and what order they load in. Re
|
|||||||
;;irc ; how neckbeards socialize
|
;;irc ; how neckbeards socialize
|
||||||
;;(rss +org) ; emacs as an RSS reader
|
;;(rss +org) ; emacs as an RSS reader
|
||||||
;;twitter ; twitter client https://twitter.com/vnought
|
;;twitter ; twitter client https://twitter.com/vnought
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Config
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle init.el
|
||||||
:config
|
:config
|
||||||
;;literate
|
;;literate
|
||||||
(default +bindings +smartparens))
|
(default +bindings +smartparens))
|
||||||
@ -213,133 +279,205 @@ This file controls what Doom modules are enabled and what order they load in. Re
|
|||||||
|
|
||||||
Place your private configuration here! Remember, you do not need to run =doom sync= after modifying this file!
|
Place your private configuration here! Remember, you do not need to run =doom sync= after modifying this file!
|
||||||
|
|
||||||
|
Here are some additional functions/macros that could help you configure Doom:
|
||||||
|
|
||||||
|
- =load!= for loading external *.el files relative to this one
|
||||||
|
- =use-package!= for configuring packages
|
||||||
|
- =after!= for running code after a package has loaded
|
||||||
|
- =add-load-path!= for adding directories to the =load-path=, relative to this file. Emacs searches the =load-path= when you load packages with =require= or =use-package=.
|
||||||
|
- =map!= for binding new keys
|
||||||
|
|
||||||
|
To get information about any of these functions/macros, move the cursor over the highlighted symbol at press =K= (non-evil users must press =C-c c k=).
|
||||||
|
This will open documentation for it, including demos of how they are used.
|
||||||
|
|
||||||
|
You can also try =gd= (or =C-c c d=) to jump to their definition and see how they are implemented.
|
||||||
|
|
||||||
#+BEGIN_SRC emacs-lisp :tangle config.el
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
|
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
;; Some functionality uses this to identify you, e.g. GPG configuration, email
|
*** User Configuration
|
||||||
;; clients, file templates and snippets.
|
|
||||||
|
Some functionality uses this to identify you, e.g. GPG configuration, email clients, file templates and snippets.
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
(setq user-full-name "Sravan Balaji"
|
(setq user-full-name "Sravan Balaji"
|
||||||
user-mail-address "sr98vn@gmail.com")
|
user-mail-address "sr98vn@gmail.com")
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
;; Doom exposes five (optional) variables for controlling fonts in Doom. Here
|
*** User Interface
|
||||||
;; are the three important ones:
|
|
||||||
;;
|
**** Fonts
|
||||||
;; + `doom-font'
|
|
||||||
;; + `doom-variable-pitch-font'
|
Doom exposes five (optional) variables for controlling fonts in Doom. Here are the three important ones:
|
||||||
;; + `doom-big-font' -- used for `doom-big-font-mode'; use this for
|
|
||||||
;; presentations or streaming.
|
- =doom-font=
|
||||||
;;
|
- =doom-variable-pitch-font=
|
||||||
;; They all accept either a font-spec, font string ("Input Mono-12"), or xlfd
|
- =doom-big-font= -- used for =doom-big-font-mode=; use this for presentations or streaming.
|
||||||
;; font string. You generally only need these two:
|
|
||||||
;; (setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light)
|
They all accept either a font-spec, font string ("Input Mono-12"), or xlfd font string. You generally only need these two:
|
||||||
;; doom-variable-pitch-font (font-spec :family "sans" :size 13))
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light)
|
||||||
|
doom-variable-pitch-font (font-spec :family "sans" :size 13))
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
(setq doom-font (font-spec :family "FiraCode Nerd Font" :size 13)
|
(setq doom-font (font-spec :family "FiraCode Nerd Font" :size 13)
|
||||||
doom-variable-pitch-font (font-spec :family "Cantarell" :size 13))
|
doom-variable-pitch-font (font-spec :family "Cantarell" :size 13))
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
;; There are two ways to load a theme. Both assume the theme is installed and
|
**** Theme
|
||||||
;; available. You can either set `doom-theme' or manually load a theme with the
|
|
||||||
;; `load-theme' function. This is the default:
|
There are two ways to load a theme. Both assume the theme is installed and available. You can either set =doom-theme= or manually load a theme with the =load-theme= function.
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
(setq doom-theme 'doom-dracula)
|
(setq doom-theme 'doom-dracula)
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
;; If you use `org' and don't want your org files in the default location below,
|
**** Line Numbers
|
||||||
;; change `org-directory'. It must be set before org loads!
|
|
||||||
(setq org-directory "~/org/")
|
|
||||||
|
|
||||||
;; This determines the style of line numbers in effect. If set to `nil', line
|
This determines the style of line numbers in effect. If set to =nil=, line numbers are disabled. For relative line numbers, set this to =relative=.
|
||||||
;; numbers are disabled. For relative line numbers, set this to `relative'.
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
(setq display-line-numbers-type t)
|
(setq display-line-numbers-type t)
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
(setq projectile-project-search-path '("~/Projects/" "~/.config/"))
|
**** Tab Width
|
||||||
|
|
||||||
;; Here are some additional functions/macros that could help you configure Doom:
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
;;
|
(setq-default tab-width 4)
|
||||||
;; - `load!' for loading external *.el files relative to this one
|
#+END_SRC
|
||||||
;; - `use-package!' for configuring packages
|
|
||||||
;; - `after!' for running code after a package has loaded
|
|
||||||
;; - `add-load-path!' for adding directories to the `load-path', relative to
|
|
||||||
;; this file. Emacs searches the `load-path' when you load packages with
|
|
||||||
;; `require' or `use-package'.
|
|
||||||
;; - `map!' for binding new keys
|
|
||||||
;;
|
|
||||||
;; To get information about any of these functions/macros, move the cursor over
|
|
||||||
;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k').
|
|
||||||
;; This will open documentation for it, including demos of how they are used.
|
|
||||||
;;
|
|
||||||
;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
|
|
||||||
;; they are implemented.
|
|
||||||
|
|
||||||
|
**** Highlight Indent Guides
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
|
(setq highlight-indent-guides-method 'fill)
|
||||||
|
(setq highlight-indent-guides-responsive 'stack)
|
||||||
|
(setq highlight-indent-guides-delay 0)
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Org Mode
|
||||||
|
|
||||||
|
If you use =org= and don't want your org files in the default location below, change =org-directory=. It must be set before org loads!
|
||||||
|
|
||||||
|
**** Org Directory
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
|
(setq org-directory "~/org/")
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
**** Org Auto Tangle
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
(use-package! org-auto-tangle
|
(use-package! org-auto-tangle
|
||||||
:defer t
|
:defer t
|
||||||
:hook (org-mode . org-auto-tangle-mode)
|
:hook (org-mode . org-auto-tangle-mode)
|
||||||
:config
|
:config
|
||||||
(setq org-auto-tangle-default t)
|
(setq org-auto-tangle-default t)
|
||||||
)
|
)
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
(setq-default tab-width 4)
|
**** Org Source Code Indentation
|
||||||
|
|
||||||
(setq highlight-indent-guides-method 'fill)
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
(setq highlight-indent-guides-responsive 'stack)
|
(setq org-src-preserve-indentation nil
|
||||||
(setq highlight-indent-guides-delay 0)
|
org-edit-src-content-indentation 0)
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Projectile
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
|
(setq projectile-project-search-path '("~/Projects/" "~/.config/"))
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** Prettier Formatter
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
|
(add-hook! 'web-mode-hook 'prettier-js-mode)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** packages.el
|
** packages.el
|
||||||
|
|
||||||
|
To install a package with Doom you must declare them here and run =doom sync= on the command line, then restart Emacs for the changes to take effect -- or use =M-x doom/reload=.
|
||||||
|
|
||||||
|
To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(package! some-package)
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
To install a package directly from a remote git repo, you must specify a =:recipe=. You'll find documentation on what =:recipe= accepts here: https://github.com/raxod502/straight.el#the-recipe-format
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(package! another-package
|
||||||
|
:recipe (:host github :repo "username/repo"))
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
If the package you are trying to install does not contain a PACKAGENAME.el file, or is located in a subdirectory of the repo, you'll need to specify =:files= in the =:recipe=:
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(package! this-package
|
||||||
|
:recipe (:host github :repo "username/repo"
|
||||||
|
:files ("some-file.el" "src/lisp/*.el")))
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
If you'd like to disable a package included with Doom, you can do so here with the =:disable= property:
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(package! builtin-package :disable t)
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
You can override the recipe of a built in package without having to specify all the properties for =:recipe=. These will inherit the rest of its recipe from Doom or MELPA/ELPA/Emacsmirror:
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(package! builtin-package :recipe (:nonrecursive t))
|
||||||
|
(package! builtin-package-2 :recipe (:repo "myfork/package"))
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
Specify a =:branch= to install a package from a particular branch or tag. This is required for some packages whose default branch isn't =master= (which our package manager can't deal with; see raxod502/straight.el#279)
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(package! builtin-package :recipe (:branch "develop"))
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
Use =:pin= to specify a particular commit to install.
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(package! builtin-package :pin "1a2b3c4d5e")
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
Doom's packages are pinned to a specific commit and updated from release to release. The =unpin!= macro allows you to unpin single packages...
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
(unpin! pinned-package)
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
...or multiple packages
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
;(unpin! pinned-package another-pinned-package)
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
|
...Or *all* packages (NOT RECOMMENDED; will likely break things)
|
||||||
|
|
||||||
|
#+BEGIN_EXAMPLE
|
||||||
|
;(unpin! t)
|
||||||
|
#+END_EXAMPLE
|
||||||
|
|
||||||
#+BEGIN_SRC emacs-lisp :tangle packages.el
|
#+BEGIN_SRC emacs-lisp :tangle packages.el
|
||||||
;; -*- no-byte-compile: t; -*-
|
;; -*- no-byte-compile: t; -*-
|
||||||
;;; $DOOMDIR/packages.el
|
;;; $DOOMDIR/packages.el
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
;; To install a package with Doom you must declare them here and run 'doom sync'
|
*** Packages
|
||||||
;; on the command line, then restart Emacs for the changes to take effect -- or
|
|
||||||
;; use 'M-x doom/reload'.
|
|
||||||
|
|
||||||
|
|
||||||
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
|
|
||||||
;(package! some-package)
|
|
||||||
|
|
||||||
;; To install a package directly from a remote git repo, you must specify a
|
|
||||||
;; `:recipe'. You'll find documentation on what `:recipe' accepts here:
|
|
||||||
;; https://github.com/raxod502/straight.el#the-recipe-format
|
|
||||||
;(package! another-package
|
|
||||||
; :recipe (:host github :repo "username/repo"))
|
|
||||||
|
|
||||||
;; If the package you are trying to install does not contain a PACKAGENAME.el
|
|
||||||
;; file, or is located in a subdirectory of the repo, you'll need to specify
|
|
||||||
;; `:files' in the `:recipe':
|
|
||||||
;(package! this-package
|
|
||||||
; :recipe (:host github :repo "username/repo"
|
|
||||||
; :files ("some-file.el" "src/lisp/*.el")))
|
|
||||||
|
|
||||||
;; If you'd like to disable a package included with Doom, you can do so here
|
|
||||||
;; with the `:disable' property:
|
|
||||||
;(package! builtin-package :disable t)
|
|
||||||
|
|
||||||
;; You can override the recipe of a built in package without having to specify
|
|
||||||
;; all the properties for `:recipe'. These will inherit the rest of its recipe
|
|
||||||
;; from Doom or MELPA/ELPA/Emacsmirror:
|
|
||||||
;(package! builtin-package :recipe (:nonrecursive t))
|
|
||||||
;(package! builtin-package-2 :recipe (:repo "myfork/package"))
|
|
||||||
|
|
||||||
;; Specify a `:branch' to install a package from a particular branch or tag.
|
|
||||||
;; This is required for some packages whose default branch isn't 'master' (which
|
|
||||||
;; our package manager can't deal with; see raxod502/straight.el#279)
|
|
||||||
;(package! builtin-package :recipe (:branch "develop"))
|
|
||||||
|
|
||||||
;; Use `:pin' to specify a particular commit to install.
|
|
||||||
;(package! builtin-package :pin "1a2b3c4d5e")
|
|
||||||
|
|
||||||
|
|
||||||
;; Doom's packages are pinned to a specific commit and updated from release to
|
|
||||||
;; release. The `unpin!' macro allows you to unpin single packages...
|
|
||||||
;(unpin! pinned-package)
|
|
||||||
;; ...or multiple packages
|
|
||||||
;(unpin! pinned-package another-pinned-package)
|
|
||||||
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
|
|
||||||
;(unpin! t)
|
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp :tangle packages.el
|
||||||
(package! org-auto-tangle)
|
(package! org-auto-tangle)
|
||||||
(package! fish-mode)
|
(package! fish-mode)
|
||||||
(package! gitattributes-mode)
|
(package! gitattributes-mode)
|
||||||
(package! gitconfig-mode)
|
(package! gitconfig-mode)
|
||||||
(package! gitignore-mode)
|
(package! gitignore-mode)
|
||||||
(package! vimrc-mode)
|
(package! vimrc-mode)
|
||||||
|
(package! prettier-js)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
55
config.el
55
config.el
@ -1,56 +1,22 @@
|
|||||||
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
|
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
;; Some functionality uses this to identify you, e.g. GPG configuration, email
|
|
||||||
;; clients, file templates and snippets.
|
|
||||||
(setq user-full-name "Sravan Balaji"
|
(setq user-full-name "Sravan Balaji"
|
||||||
user-mail-address "sr98vn@gmail.com")
|
user-mail-address "sr98vn@gmail.com")
|
||||||
|
|
||||||
;; Doom exposes five (optional) variables for controlling fonts in Doom. Here
|
|
||||||
;; are the three important ones:
|
|
||||||
;;
|
|
||||||
;; + `doom-font'
|
|
||||||
;; + `doom-variable-pitch-font'
|
|
||||||
;; + `doom-big-font' -- used for `doom-big-font-mode'; use this for
|
|
||||||
;; presentations or streaming.
|
|
||||||
;;
|
|
||||||
;; They all accept either a font-spec, font string ("Input Mono-12"), or xlfd
|
|
||||||
;; font string. You generally only need these two:
|
|
||||||
;; (setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light)
|
|
||||||
;; doom-variable-pitch-font (font-spec :family "sans" :size 13))
|
|
||||||
(setq doom-font (font-spec :family "FiraCode Nerd Font" :size 13)
|
(setq doom-font (font-spec :family "FiraCode Nerd Font" :size 13)
|
||||||
doom-variable-pitch-font (font-spec :family "Cantarell" :size 13))
|
doom-variable-pitch-font (font-spec :family "Cantarell" :size 13))
|
||||||
|
|
||||||
;; There are two ways to load a theme. Both assume the theme is installed and
|
|
||||||
;; available. You can either set `doom-theme' or manually load a theme with the
|
|
||||||
;; `load-theme' function. This is the default:
|
|
||||||
(setq doom-theme 'doom-dracula)
|
(setq doom-theme 'doom-dracula)
|
||||||
|
|
||||||
;; If you use `org' and don't want your org files in the default location below,
|
|
||||||
;; change `org-directory'. It must be set before org loads!
|
|
||||||
(setq org-directory "~/org/")
|
|
||||||
|
|
||||||
;; This determines the style of line numbers in effect. If set to `nil', line
|
|
||||||
;; numbers are disabled. For relative line numbers, set this to `relative'.
|
|
||||||
(setq display-line-numbers-type t)
|
(setq display-line-numbers-type t)
|
||||||
|
|
||||||
(setq projectile-project-search-path '("~/Projects/" "~/.config/"))
|
(setq-default tab-width 4)
|
||||||
|
|
||||||
;; Here are some additional functions/macros that could help you configure Doom:
|
(setq highlight-indent-guides-method 'fill)
|
||||||
;;
|
(setq highlight-indent-guides-responsive 'stack)
|
||||||
;; - `load!' for loading external *.el files relative to this one
|
(setq highlight-indent-guides-delay 0)
|
||||||
;; - `use-package!' for configuring packages
|
|
||||||
;; - `after!' for running code after a package has loaded
|
(setq org-directory "~/org/")
|
||||||
;; - `add-load-path!' for adding directories to the `load-path', relative to
|
|
||||||
;; this file. Emacs searches the `load-path' when you load packages with
|
|
||||||
;; `require' or `use-package'.
|
|
||||||
;; - `map!' for binding new keys
|
|
||||||
;;
|
|
||||||
;; To get information about any of these functions/macros, move the cursor over
|
|
||||||
;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k').
|
|
||||||
;; This will open documentation for it, including demos of how they are used.
|
|
||||||
;;
|
|
||||||
;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
|
|
||||||
;; they are implemented.
|
|
||||||
|
|
||||||
(use-package! org-auto-tangle
|
(use-package! org-auto-tangle
|
||||||
:defer t
|
:defer t
|
||||||
@ -59,8 +25,9 @@
|
|||||||
(setq org-auto-tangle-default t)
|
(setq org-auto-tangle-default t)
|
||||||
)
|
)
|
||||||
|
|
||||||
(setq-default tab-width 4)
|
(setq org-src-preserve-indentation nil
|
||||||
|
org-edit-src-content-indentation 0)
|
||||||
|
|
||||||
(setq highlight-indent-guides-method 'fill)
|
(setq projectile-project-search-path '("~/Projects/" "~/.config/"))
|
||||||
(setq highlight-indent-guides-responsive 'stack)
|
|
||||||
(setq highlight-indent-guides-delay 0)
|
(add-hook! 'web-mode-hook 'prettier-js-mode)
|
||||||
|
11
init.el
11
init.el
@ -1,16 +1,5 @@
|
|||||||
;;; init.el -*- lexical-binding: t; -*-
|
;;; init.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's
|
|
||||||
;; documentation. There you'll find a "Module Index" link where you'll find
|
|
||||||
;; a comprehensive list of Doom's modules and what flags they support.
|
|
||||||
|
|
||||||
;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or
|
|
||||||
;; 'C-c c k' for non-vim users) to view its documentation. This works on
|
|
||||||
;; flags as well (those symbols that start with a plus).
|
|
||||||
;;
|
|
||||||
;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its
|
|
||||||
;; directory (for easy access to its source code).
|
|
||||||
|
|
||||||
(doom! :input
|
(doom! :input
|
||||||
;;chinese
|
;;chinese
|
||||||
;;japanese
|
;;japanese
|
||||||
|
49
packages.el
49
packages.el
@ -1,57 +1,10 @@
|
|||||||
;; -*- no-byte-compile: t; -*-
|
;; -*- no-byte-compile: t; -*-
|
||||||
;;; $DOOMDIR/packages.el
|
;;; $DOOMDIR/packages.el
|
||||||
|
|
||||||
;; To install a package with Doom you must declare them here and run 'doom sync'
|
|
||||||
;; on the command line, then restart Emacs for the changes to take effect -- or
|
|
||||||
;; use 'M-x doom/reload'.
|
|
||||||
|
|
||||||
|
|
||||||
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
|
|
||||||
;(package! some-package)
|
|
||||||
|
|
||||||
;; To install a package directly from a remote git repo, you must specify a
|
|
||||||
;; `:recipe'. You'll find documentation on what `:recipe' accepts here:
|
|
||||||
;; https://github.com/raxod502/straight.el#the-recipe-format
|
|
||||||
;(package! another-package
|
|
||||||
; :recipe (:host github :repo "username/repo"))
|
|
||||||
|
|
||||||
;; If the package you are trying to install does not contain a PACKAGENAME.el
|
|
||||||
;; file, or is located in a subdirectory of the repo, you'll need to specify
|
|
||||||
;; `:files' in the `:recipe':
|
|
||||||
;(package! this-package
|
|
||||||
; :recipe (:host github :repo "username/repo"
|
|
||||||
; :files ("some-file.el" "src/lisp/*.el")))
|
|
||||||
|
|
||||||
;; If you'd like to disable a package included with Doom, you can do so here
|
|
||||||
;; with the `:disable' property:
|
|
||||||
;(package! builtin-package :disable t)
|
|
||||||
|
|
||||||
;; You can override the recipe of a built in package without having to specify
|
|
||||||
;; all the properties for `:recipe'. These will inherit the rest of its recipe
|
|
||||||
;; from Doom or MELPA/ELPA/Emacsmirror:
|
|
||||||
;(package! builtin-package :recipe (:nonrecursive t))
|
|
||||||
;(package! builtin-package-2 :recipe (:repo "myfork/package"))
|
|
||||||
|
|
||||||
;; Specify a `:branch' to install a package from a particular branch or tag.
|
|
||||||
;; This is required for some packages whose default branch isn't 'master' (which
|
|
||||||
;; our package manager can't deal with; see raxod502/straight.el#279)
|
|
||||||
;(package! builtin-package :recipe (:branch "develop"))
|
|
||||||
|
|
||||||
;; Use `:pin' to specify a particular commit to install.
|
|
||||||
;(package! builtin-package :pin "1a2b3c4d5e")
|
|
||||||
|
|
||||||
|
|
||||||
;; Doom's packages are pinned to a specific commit and updated from release to
|
|
||||||
;; release. The `unpin!' macro allows you to unpin single packages...
|
|
||||||
;(unpin! pinned-package)
|
|
||||||
;; ...or multiple packages
|
|
||||||
;(unpin! pinned-package another-pinned-package)
|
|
||||||
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
|
|
||||||
;(unpin! t)
|
|
||||||
|
|
||||||
(package! org-auto-tangle)
|
(package! org-auto-tangle)
|
||||||
(package! fish-mode)
|
(package! fish-mode)
|
||||||
(package! gitattributes-mode)
|
(package! gitattributes-mode)
|
||||||
(package! gitconfig-mode)
|
(package! gitconfig-mode)
|
||||||
(package! gitignore-mode)
|
(package! gitignore-mode)
|
||||||
(package! vimrc-mode)
|
(package! vimrc-mode)
|
||||||
|
(package! prettier-js)
|
||||||
|
Reference in New Issue
Block a user