https://github.com/zettel-lint/zettel-lint
A linter/compiler for markdown-based Zettelkasten git repositories
https://github.com/zettel-lint/zettel-lint
hacktoberfest hacktoberfest2020 linter markdown notes zettelkasten
Last synced: 4 months ago
JSON representation
A linter/compiler for markdown-based Zettelkasten git repositories
- Host: GitHub
- URL: https://github.com/zettel-lint/zettel-lint
- Owner: zettel-lint
- License: gpl-3.0
- Created: 2020-05-10T15:25:25.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-11-29T22:32:54.000Z (5 months ago)
- Last Synced: 2024-11-29T23:24:21.345Z (5 months ago)
- Topics: hacktoberfest, hacktoberfest2020, linter, markdown, notes, zettelkasten
- Language: TypeScript
- Homepage:
- Size: 1010 KB
- Stars: 7
- Watchers: 2
- Forks: 2
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- jimsghstars - zettel-lint/zettel-lint - A linter/compiler for markdown-based Zettelkasten git repositories (TypeScript)
README
---
title: Readme
references: [00000001]
notes: YAML top matter is supported---
If you are a coder and watch to submit a PR, please see the [Contributor guide](CONTRIBUTING.md) [Contributor Covenant Code of Conduct](CODE_OF_CONDUCT.md).
If you are not a confident coder and would like to contribute please [look at the task list](tasks.md). I will accept PRs that add issues from that file and update the md to point to them, so long as you at least do all the tasks in a section.
## ZL

A linter/compiler for markdown-based Zettelkasten git repositories
Based on the [Zettelkasten method](https://zettelkasten.de/)
This is a link to a [Page that doesn't exist](404.md)
[This is a link to a page that doesn't exist - an orphan]
[00000000] points back here
[ ] This is a task
[x] This completed task is ignored
* [ ] Also supports tasks in a bullet list
* [x] if they aren't completedTags can use #hashtag or +projectref formats for compatibility with `todo.txt` files
To refresh index:
* `cd zle`
* `npm i`
* `npm run-script zl -- -r ../ -i "../zle/**" -r ../references.md`This will use the `references.md.mustache` as the template for the references file.
See [example journal](https://github.com/zettel-lint/example) for the style of repo this could be used on.
## Templating
Some features accept a mustache based template to generate their output.
For the indexer, there is a `{{#notes}}` collection with all notes, as well as a collection named after each collector.
Each collector looks for specific features. For example, the TagCollector looks for #hashtag and +project references, the TaskCollector looks for `[ ] Tasks` or `(A) todo.txt style`
Each note has the following properties:
* `id` - the unique internal id (usually the timestamp from the filename)
* `filename`
* `wikiname` - filename without the last 3 characters, which turns a `.md` file into its wiki reference.
* `title` - taken from YAML top matter, the first `# H1 header` or the filename, in that order
* `data` - the collection of matches by this collector in this file### Template extensions
* `{{``markdownEscaping}}` Using the backtick at the start of the tag will escape any markdown characters into an HTML escaped version.
* `{{?tag[filter]}}{{/?tag}}` Using a ? at the start of a tag pair will filter any output using the specified regular expression.