Mastering Emacs Org-mode
Table of Contents
- 1 Introduction
- 2 Document Structure
- 3 Tables
- How do you create a table in Org-mode? drill emacs_orgmode
- What is the command to recalculate all tables in an Org file? drill emacs_orgmode
- What is a column group? drill emacs_orgmode
- What is required to use Plot drill emacs_orgmode
- What is an example of a Histogram? drill emacs_orgmode
- What is an example of a Radar? drill emacs_orgmode
- ASCII bar plots drill emacs_orgmode
- 4 Hyperlinks
- DONE 5 TODO Items
- 6 Tags
- 7 Properties and Columns
- 8 Dates and Times
- TODO 9 Refiling and Archiving
- TODO 10 Capture and Attachments
- TODO 11 Agenda Views
- TODO 12 Markup for Rich Contents
- TODO 14 Publishing
- TODO 15 Citation handling
- TODO 16 Working with Source Code
- TODO 15 Citation handling
- TODO 16 Working with Source Code
- TODO 17 Miscellaneous
1 Introduction
What is required to avoid interfering with the built-in org-mode? drill emacs_orgmode
2 Document Structure
What is Org-mode? drill emacs_orgmode
Org-mode is a mode for keeping notes, maintaining TODO lists, planning projects, and authoring documents with a fast and effective plain-text system in Emacs.
How do you create a new heading in Org-mode? drill emacs_orgmode
To create a new heading in Org-mode, use the asterisk (*) symbol at the beginning of a line. More asterisks create sub-headings.
Structure Editing drill emacs_orgmode
M-RET (org-meta-return) C-RET (org-insert-heading-respect-content) M-S-RET (org-insert-todo-heading) C-S-RET (org-insert-todo-heading-respect-content) TAB (org-cycle)
Drawers drill emacs_orgmode
This is a headline
- Note taken on
This is a note from C-c C-z
Still outside the drawer
This is inside the drawer.
After the drawer.
3 Tables
How do you create a table in Org-mode? drill emacs_orgmode
To create a table in Org-mode, start a line with a vertical bar (|) and use TAB to move between cells. Press RETURN to create a new row.
c1 | c2 | c3 |
---|---|---|
a | b | c |
What is the command to recalculate all tables in an Org file? drill emacs_orgmode
The command to recalculate all tables in an Org file is C-u C-c * (org-table-recalculate-buffer-tables).
x | y |
---|---|
8 | 8 |
2 | 2 |
What is a column group? drill emacs_orgmode
N | N2 | N3 | N4 | sqrt(n) | sqrt[4](N) |
---|---|---|---|---|---|
1 | 1 | 1 | 1 | 1 | 1 |
2 | 4 | 8 | 16 | 1.4142136 | 1.1892071 |
3 | 9 | 27 | 81 | 1.7320508 | 1.3160740 |
What is required to use Plot drill emacs_orgmode
brew install gnuplot
(package-install 'gnuplot)
What is an example of a Histogram? drill emacs_orgmode
Sede | Max cites | H-index |
---|---|---|
Chile | 257.72 | 21.39 |
Leeds | 165.77 | 19.68 |
Sao Paolo | 71.00 | 11.50 |
Stockholm | 134.19 | 14.33 |
Morelia | 257.56 | 17.67 |
What is an example of a Radar? drill emacs_orgmode
Initial Scores
Model | Performance | Fairness | Utility | Modesty | Diversity | Creativity |
---|---|---|---|---|---|---|
GPT-4 | 4.5 | 3.8 | 4.7 | 3.2 | 4.0 | 4.2 |
Claude 3 | 4.3 | 4.0 | 4.5 | 3.5 | 4.2 | 3.8 |
Gemini | 4.2 | 3.7 | 4.3 | 3.0 | 3.8 | 3.9 |
Llama 2 | 3.8 | 3.5 | 4.0 | 3.3 | 3.5 | 3.6 |
PaLM | 3.7 | 3.4 | 3.9 | 3.1 | 3.4 | 3.5 |
BLOOM | 3.5 | 3.3 | 3.7 | 3.0 | 3.3 | 3.4 |
Jurassic-2 | 3.4 | 3.2 | 3.6 | 2.9 | 3.2 | 3.3 |
StableLM | 3.3 | 3.1 | 3.5 | 2.8 | 3.1 | 3.2 |
Computed (Normalized)
Model | Performance | Fairness | Utility | Modesty | Diversity | Creativity |
---|---|---|---|---|---|---|
GPT-4 | 5.00 | 3.89 | 5.00 | 2.86 | 5.00 | 5.00 |
Claude 3 | 4.17 | 5.00 | 4.17 | 5.00 | 5.00 | 3.00 |
Gemini | 3.75 | 3.33 | 3.33 | 1.43 | 3.75 | 3.50 |
Llama 2 | 2.08 | 2.22 | 2.08 | 3.57 | 2.50 | 2.00 |
PaLM | 1.67 | 1.67 | 1.67 | 2.14 | 1.88 | 1.50 |
BLOOM | 0.83 | 1.11 | 0.83 | 1.43 | 1.25 | 1.00 |
Jurassic-2 | 0.42 | 0.56 | 0.42 | 0.71 | 0.63 | 0.50 |
StableLM | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Note: Values have been normalized to a 0-5 range for each metric, with 0.5 padding applied to the original minimum and maximum values. This normalization enhances visual differentiation but may exaggerate relative differences between models.
Python Comparison
import numpy as np import matplotlib.pyplot as plt # Data models = ['GPT-4', 'Claude 3', 'Gemini', 'Llama 2', 'PaLM', 'BLOOM', 'Jurassic-2', 'StableLM'] metrics = ['Performance', 'Fairness', 'Utility', 'Modesty', 'Diversity', 'Creativity'] # Example data (replace with your actual data) values = np.array([ [5.00, 3.89, 5.00, 2.86, 5.00, 5.00], # GPT-4 [4.17, 5.00, 4.17, 5.00, 5.00, 3.00], # Claude 3 [3.75, 3.33, 3.33, 1.43, 3.75, 3.50], # Gemini [2.08, 2.22, 2.08, 3.57, 2.50, 2.00], # Llama 2 [1.67, 1.67, 1.67, 2.14, 1.88, 1.50], # PaLM [0.83, 1.11, 0.83, 1.43, 1.25, 1.00], # BLOOM [0.42, 0.56, 0.42, 0.71, 0.63, 0.50], # Jurassic-2 [0.00, 0.00, 0.00, 0.00, 0.00, 0.00], # StableLM ]) # Number of variables num_vars = len(metrics) # Compute angle for each axis angles = np.linspace(0, 2 * np.pi, num_vars, endpoint=False).tolist() angles += angles[:1] # complete the circle # Plot fig, ax = plt.subplots(figsize=(10, 10), subplot_kw=dict(projection='polar')) # Plot each model for i, model in enumerate(models): values_model = values[i].tolist() values_model += values_model[:1] # complete the polygon ax.plot(angles, values_model, linewidth=2, linestyle='solid', label=model) ax.fill(angles, values_model, alpha=0.1) # Set chart properties ax.set_theta_offset(np.pi / 2) ax.set_theta_direction(-1) ax.set_thetagrids(np.degrees(angles[:-1]), metrics) ax.set_ylim(0, 5) ax.set_yticks(np.arange(1, 6)) ax.set_yticklabels(np.arange(1, 6)) ax.set_rlabel_position(0) # Add legend plt.legend(loc='upper right', bbox_to_anchor=(1.3, 1.1)) # Add title plt.title("Normalized Analysis of AI Language Models (2024)", y=1.08) # Show the plot plt.tight_layout() plt.show()
ASCII bar plots drill emacs_orgmode
Sede | Max cites | |
---|---|---|
Chile | 257.72 | WWWWWWWWWWWW |
Leeds | 165.77 | WWWWWWWh |
Sao Paolo | 71.00 | WWW; |
Stockholm | 134.19 | WWWWWW: |
Morelia | 257.56 | WWWWWWWWWWWW |
Rochefourchat | 0.00 |
4 Hyperlinks
Link Abbreviations drill emacs_orgmode
Link Type | Example |
---|---|
ChatGPT | ‘https://chat.openai.com/’ |
Claude | ‘https://claude.ai/’ |
Gemini | ‘https://gemini.com/’ |
‘https://www.google.com/’ | |
Hacker News | ‘https://news.ycombinator.com/’ |
Khoj | ‘https://khoj.com/’ |
Meta AI | ‘https://ai.meta.com/’ |
Perplexity | ‘https://www.perplexity.ai/’ |
Phind | ‘https://www.phind.com/’ |
Wal.sh | ‘https://wal.sh/’ |
YouTube | ‘https://www.youtube.com/’ |
#+beginsrc elisp (setq org-link-abbrev-alist '(("google" . "https://www.google.com/search?q=") ("hn" . "https://news.ycombinator.com/") ("yt" . "https://www.youtube.com/watch?v=") ("perplexity" . "https://www.perplexity.ai/") ("chatgpt" . "https://chat.openai.com/") ("claude" . "https://claude.ai/") ("gemini" . "https://gemini.com/") ("phind" . "https://www.phind.com/") ("metaai" . "https://ai.meta.com/") ("khoj" . "https://khoj.com/") ("walsh" . "https://wal.sh/"))) #+endsrc**
DONE 5 TODO Items
What are basic commands for managing TODOs? drill emacs_orgmode
Keybinding | Description |
---|---|
C-c C-t | Rotate the TODO state of the current item. |
S-RIGHT S-LEFT | Select the next/previous TODO state. |
C-c / t | View TODO items in a sparse tree. |
M-x org-agenda t | Show the global TODO list. |
S-M-RET | Insert a new TODO entry below the current one. |
DONE What are workflow states? drill emacs_orgmode
(setq org-todo-keywords '((sequence "TODO" "FEEDBACK" "VERIFY" "|" "DONE" "DELEGATED")))
DONE Progress Logging drill emacs_orgmode
- State "TODO" from
C-u C-c C-t
Tracking your habits drill emacs_orgmode
TODO Shave
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
- State "DONE" from "TODO"
Checkboxes drill emacs_orgmode
Show checkboxes
DONE Organize party [1/4]
[-]
call people[1/3]
[ ]
Peter[X]
Sarah[ ]
Sam
[ ]
order food[ ]
think about what music to play[X]
talk to the neighbors
6 Tags
7 Properties and Columns
What are special properties? drill emacs_orgmode
Property | Description |
---|---|
ALLTAGS | All tags, including inherited ones. |
BLOCKED | t if task is currently blocked by children or siblings. |
CATEGORY | The category of an entry. |
CLOCKSUM | The sum of CLOCK intervals in the subtree. `org-clock-sum` must be run first to compute values. |
CLOCKSUMT | The sum of CLOCK intervals in the subtree for today. `org-clock-sum-today` must be run first. |
CLOSED | When was this entry closed? |
DEADLINE | The deadline timestamp. |
FILE | The filename the entry is located in. |
ITEM | The headline of the entry. |
PRIORITY | The priority of the entry, a string with a single letter. |
SCHEDULED | The scheduling timestamp. |
TAGS | The tags defined directly in the headline. |
TIMESTAMP | The first active keyword-less timestamp in the entry. |
TIMESTAMPIA | The first inactive keyword-less timestamp in the entry. |
TODO | The TODO keyword of the entry. |
8 Dates and Times
DONE Show Clocking Work Time drill emacs_orgmode
(setq org-clock-persist 'history)
(org-clock-persistence-insinuate)
Taking Notes with a Relative Timer drill emacs_orgmode
0:00:00
Command | Description |
---|---|
C-c C-x C-c | Start or reset the timer. |
C-c C-x , | Pause or resume the timer. |
C-c C-x . | Insert timestamp. |
C-c C-x : | Set a timer. |
C-c C-x C-c | Start a new timer. |
C-c C-x | Reset or stop the timer. |
What is the command to schedule a task in Org-mode? drill emacs_orgmode
The command to schedule a task in Org-mode is C-c C-s (org-schedule).
How do you mark a task as DONE in Org-mode? drill emacs_orgmode
To mark a task as DONE in Org-mode, place the cursor on the task and press C-c C-t, then select DONE from the list of states.
TODO 9 Refiling and Archiving
C-c C-w (org-refile)