Because GitHub’s render is inconsistent with real emacs experience, it is recommended that you download this file and open it in Emacs. Another HTML version of this org file, made with org-html-themes, is also available here. This render, too, doesn’t offer what you experience with Emacs.
C
- “Control” keyM
- “M” or “option/alt” keys
- “Command” keySPC
- “Space” key
SPC f s
for saving the current fileSPC :
for entering a commandSPC q q
to close EmacsSPC f D
to delete this file
SPC p p
to open a projectSPC SPC
to open a file in a projectSPC o p
to open the file explorerSPC o e
to open the shell in fullscreenSPC o E
to open the shell in a popup windowSPC f r
recently visited filesSPC f R
recently visited files in a projectM-x projectile-discover-projects-in-directory
to find projects within given folder using ProjectileM-x projectile-discover-projects-in-search-path
to find projects in the folder defined by theprojectile-project-search-path
variable using Projectile
- Dired (Directory Editor) is how you interfaces with a directory
- Press
C-x d
to open dired. - Use
RET
to go to a folder or open a file. - Use
-
for going one folder back - Use
+
for creating a new directory - Use
d
to mark the files for deletion, pressx
to delete. - Use
M
to change permissions - Use
o
to sort by modes. - Use
O
to change the owner. - Use
m
to mark andu
to unmark files or directories. U
to unselect all- Use
t
to invert the selection. t
to switch between files and directories- Use
C
to copy. - Use
R
to move. - Move with
h
,j
,k
,l
- Toggle
(
for simple view SPC .
to create or find a file*
to select all directories.C
copy to another windowR
move to another windowdired-do-what-i-mean-target
set to truei
to edit file/dir name
- Buffers are a special concept in emacs they can be terminals, files, directories, etc
SPC b b
to open another buffer- workspace buffer
SPC b B
you can see all the bufferSPC ,
to switch buffers (its an alias)SPC SHIFT ,
to switch to all buffersSPC b X
You can create a scratch bufferSPC b s
to save and name itCTRL w v
window split verticallyCTRL w s
window split horizonalCTRL w w
to switch windows- You can use the vim motion keys to navigate between open windows
- Windows are panes in your screen
CTLR + =
to make the windows equal size
SPC f p
to open the config.- To add a package, add the package to
.doom.d/package.el
- Then close and
doom refresh
- Then go to
.doom.d/config.el
to configure the package def-package!
is a macro you can use to configure packagesspace h help
you can look up method man pages:init
is used for setting the package up:config
to set configuration after the package has been initialized:after
lets you set which package it should load after
- You can use
:after!
to configure packages that are already there
f
and then the letter you want to navigate to.,
will go backward;
will go forward after that “find”
t
to find and move cursor to the charachter before what you’ve searched.v
puts you in visual mode. You can select text by withv t some-char-you-navigate-to
orv f some-char-you-navigate-to
;
to jump to the next find,
to jump to the previous ones
to snipe
- Evil-snipe lets you go to all the occuranses in your document
g s SPC
to use avy and going to a certain word in file.t
is the same thing except for a character you want to jump to before the one you inserts
to do a double character search- Evil-snipe will remember your last search so
,
and;
will navigate F
orT
to go backwardsg s SPC
and then select the letter that avy gives you to navigate to that spot- These letters are on your home row so they are easy to click
SPC h v
for variable, to set the avy variable to search all open windowsavy-all-windows
lets you search in all windows open.
- You can remove a word with
g s SPC select-one-letter x select-the-removal-spot
- You can use
X
to stay in your original spot of search
- You can use
- You can go
g s space select-one-letter i select-the-correction-spot
to correct the spelling of the search- Install ispell on your OS first
- You can
yank
a word from one place to another withg s SPC select-one-letter y select-the-correction-spot-to-paste
- Use
t
to “teleport” the word from one place to anotherg s SPC select-one-letter t select-the-correction-spot-to-teleport
- Make selections and then edit those selections interactively
M d
will select the current word, and again will find another occuranceM D
will find the occurence upward- You can use a visual selection to select multiple words.
R
will select all occurancesCTRL n
for next selectionCTRL p
for previous- Exclude matches with
RET
- You can make an edit and the changes will be reflected in all the selection
- Org mode gives you structure to your document
*
for a h1**
for an h2 and so on- You can
TAB
a section to fold a subtree (hide it) - You can use
SHIFT TAB
to cycle through folded states CTRL return
to create a headline of the same typeM arrow up
lets you shift the position of the sectionM h
promotes a headline to the next levelM l
demotes- You can create lists
- onw
- 2
- wooo
- 3
SPC m l
to add a link to an org page- You can add
::
to specify a heading or a line number - You can paste http links as well
- You can “link” some text with specific code
SPC m l
elisp: (+ 2 2) when you click the link, emacs will evaluate the expression - Show My Agenda
- List Files in directory
SPC n l
stores a link to a particular headline
SPC i s
for inserting code snippets- Example:
(+ 2 3 4 5)
- Example:
C-c C-c
to execute the code.SPC m '
to edit inside the babel in another buffer.- Results will show up in a
##+RESULTS
header - This feature is called Babel
- One snippet can consume the output of another snippet
- You can create your own snippets in the following directory:
~/.doom.d/snippets/
- Create a task by prefixing any heading with
TODO
DONE
means the task is done- You can create your custom key words by changing this variable:
org-todo-keywords
- remember you can get to your variables through
SPC h v
(M-x counsel-describe-variable) - These values are already set in Doom:
((sequence "TODO(t)" "PROJ(p)" "STRT(s)" "WAIT(w)" "HOLD(h)" "|" "DONE(d)" "KILL(k)") (sequence "[ ](T)" "[-](S)" "[?](W)" "|" "[X](D)"))
- remember you can get to your variables through
SPC m t
to change a status of a todoSHIFT left
andSHIFT right
can be used to change the status of a todo as well.- If you finish a task with a command, org mode will add a date that you “closed” the task.
SPC o a t
to open the agenda -> todo listq
to quitorg-agenda-files
is a variable you can set to filter which files agenda searches for todos in.
SHIFT up
andSHIFT down
will toggle the priority of tasksorg-fancy-priorities
gives you fancy looking priorities
- Tags can be attached to any headlines
SPC m q
to tag a headline- Example:
- TODO play more games :fun:
- Tags are hierarchical so nested headings will be tagged with the parent header tag
org-tag-sparce-tree
will search for headings that only have a specific tag
SPC m o
is used for setting a property.
- You can use categories to change the label in agenda view.
- If you want to keep track of your habits using org mode, you can set the
STYLE
property to habit.- If you want to set a category (for chani
- Two types of lists, ordered and unordered lists
SHIFT right
andSHIFT left
can be used to change the type of lists.
- You can also change an unorded list by changing the first item to 1. and then typing
C-c C-c
and vice verca.
- [ ] This is still todo
- [-] This is in progress
- [X] This is a done task
- [-] Task 1
- [X] Task 2
- You can do this by adding [/] to the heading and pressing
C-c C-c
- You can’t assign a tag or a priority
- magit is configured for you
SPC g g
to show Magit status Page- most commands are done from the status page
- press
?
to see what you can do git add -p
lets you stage in hunks- Open and close with the
TAB
- Open diff view for a file with
TAB
s
to stage a changeu
to undo a changec
to commitb s
for branch and spinoff to create another branch, rewinding the commits you made to masterb b
to switch branches
t t
to create a tag, default place is the commit you are currently selectingV
to select a change in a diff andx
to discard that change.s
to stagec
to commit, you canq
to quit the commit screenP
to push and thenp
to your remote oru
to a another remote
- Forge is installed in emacs doom
@
for forge- Set up forge with
M x forge-pull
- the first time you will get a token from github
@ c p
to create a pull request with forge- select the base branch
- then select the target branch
- then provide a short description
CTRL c CTRL c
to finish the pull request
- Now there will be a
pull requests
tab
- Set up vterm in your init.el file.
SPC o T
for opening vterm
- Set up neotree in your init.el file.
SPC o p
for neotree
C-c C-z
to insert a note for a heading in org mode.
- Note taken on [2020-12-18 Fri 21:52]
Like this!
C-c C-c
to insert a tag for a heading in org mode.
SPC X
to capture (the new thing gets caputured to a single file but that’s fine since we can easily refile it.)SPC m r r
to refile
SPC m m t
to put roam tags on an org file.
- Link to youtube video series
- This org file is mostly from the notes taken from the series above by ianjones.us
- [ ] Org-journal
- [ ] Org Roam
- [ ] abbrev-mode
- [ ] Org-super-agenda