Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/marcinmoskala/ankimarkdown-obsidian


https://github.com/marcinmoskala/ankimarkdown-obsidian

Last synced: about 1 month ago
JSON representation

Awesome Lists containing this project

README

        

# Anki Markdown

This is an Obsidian plugin, introducing support to synchronize a file in Obsidian with Anki.

It follows Anki Markdown syntax.

## Headers

In top of a file, one can include a header with additional customizations. Currently, the following customizations are supported:

| field | required | explanation |
|----------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `deckName` | required | Specifies the name for Anki deck. |
| `articleFileName` | optional | If specified, then 'anki-markdown-generate' command will generate an article in a file with the specified name. An article file is a markdown file stripped off all Anki Markdown elements. |
| `packageDestination` | optional | If specified, then 'anki-markdown-generate' command will generate an apkg file in the specified location. |

All fields are optional.

## Run

- Install NodeJS, then run `npm i` in the command line under your repo folder.
- Run `npm run dev` to compile your plugin from `main.ts` to `main.js`.
- Make changes to `main.ts` (or create new `.ts` files). Those changes should be automatically compiled into `main.js`.
- Reload Obsidian to load the new version of your plugin.
- Enable plugin in settings window.
- For updates to the Obsidian API run `npm update` in the command line under your repo folder.

## Releasing new releases

- Update your `manifest.json` with your new version number, such as `1.0.1`, and the minimum Obsidian version required for your latest release.
- Update your `versions.json` file with `"new-plugin-version": "minimum-obsidian-version"` so older versions of Obsidian can download an older version of your plugin that's compatible.
- Create new GitHub release using your new version number as the "Tag version". Use the exact version number, don't include a prefix `v`. See here for an example: https://github.com/obsidianmd/obsidian-sample-plugin/releases
- Upload the files `manifest.json`, `main.js`, `styles.css` as binary attachments. Note: The manifest.json file must be in two places, first the root path of your repository and also in the release.
- Publish the release.

> You can simplify the version bump process by running `npm version patch`, `npm version minor` or `npm version major` after updating `minAppVersion` manually in `manifest.json`.
> The command will bump version in `manifest.json` and `package.json`, and add the entry for the new version to `versions.json`

## Adding your plugin to the community plugin list

- Check https://github.com/obsidianmd/obsidian-releases/blob/master/plugin-review.md
- Publish an initial version.
- Make sure you have a `README.md` file in the root of your repo.
- Make a pull request at https://github.com/obsidianmd/obsidian-releases to add your plugin.