25 Jul 2022
Started to learn about the Markdown format and migrating all my note-taking to Markdown files.
This will allow me to leverage app-independent files which can be used for AI and other programmatic tasks.
GitHub Pages Markdown Reference
https://www.markdownguide.org/tools/github-pages/
12 Mar 2023
add attributes (class, id) in markdown
Applies to markdown library. Need to figure out how to leverage this in Pelican. Building a static site with Pelican
Example of how to use the attr_list extension to add attributes to HTML elements in Markdown:
# My Heading {#heading-id .custom-class}
This is a paragraph with some text.
Another paragraph.
- Item 1 {#item1 .done}
- Item 2 {#item2}
In this example, we have added attributes to the h1, li, and ol elements using the following syntax:
{#id}: Adds an id attribute to the element with the specified value.{.class}: Adds one or more classes to the element with the specified values.
When we convert this Markdown to HTML using the markdown library with the attr_list extension, we get the following HTML:
<h1 id="heading-id" class="custom-class">My Heading</h1>
<p>This is a paragraph with some text.</p>
<p>Another paragraph.</p>
<ul>
<li id="item1" class="done">Item 1</li>
<li id="item2">Item 2</li>
</ul>
you can use the attr_list extension to add a class or other attributes to the table element in Markdown. Here's an example:
| Column 1 | Column 2 |
|----------|----------|
| Row 1 | Row 1 |
| Row 2 | Row 2 |
{:class="my-table-class"}
In this example, we define a table with two columns and two rows, and add the {:class="my-table-class"} attribute list at the end of the table definition. This adds the class="my-table-class" attribute to the resulting table element in the HTML output.
When this Markdown is converted to HTML using the markdown library with the attr_list extension, the resulting HTML will include the following table element:
<table class="my-table-class">
<thead>
<tr>
<th>Column 1</th>
<th>Column 2</th>
</tr>
</thead>
<tbody>
<tr>
<td>Row 1</td>
<td>Row 1</td>
</tr>
</tbody>
</table>
Markdown Symbols
Headers
#(Header level 1, can use multiple#for levels 2-6)
Emphasis
*or_(italic:*text*or_text_)**or__(bold:**text**or__text__)***or___(bold and italic:***text***or___text___)
Lists
-or*(unordered list)1.(ordered list)
Links and Images
[ ](link text, e.g.,[link text])( )(URL, e.g.,[link text](URL)))
Blockquotes
>(block quote)
Code
`(inline code:`code`)```(code block:```code block```)
Horizontal Rule
---or***or___(horizontal line)
Tables
|(table columns, e.g.,| column1 | column2 |)-(divider in table headers:| --- | --- |)
Escaping Characters
\(escape special characters, e.g.,\*not italic\*)
Now using \# for headers within my Markdown notes, where I don't want the header to be rendered as a header.
Strikethrough
~~(e.g.,~~text~~)
Task Lists
- [ ](unchecked item)- [x](checked item)
Footnotes
[^1](footnote marker)[1]: URL(reference for the marker)
Definition Lists (GFM)
:(e.g.,Term : Definition)
Automatic Links (GFM)
<URL>(e.g.,<https://example.com>)
HTML Tags
<tag>(e.g.,<b>bold</b>)
Special Syntax Extensions (depending on implementation)
~~(strikethrough)^(superscript, e.g.,H^2^O)~(subscript, e.g.,X~2~)