Marksman is a program that integrates with your editor to assist you in writing and maintaining your Markdown documents. Using LSP protocol it provides completion, goto definition, find referencesrename refactoring, diagnostics, and more.

In addition to regular Markdown, it also supports wiki-link-style references that enable Zettelkasten-like1, 2 note taking. See more about Marksman's features below.

Platforms

Marksman works on MacOS, Linux, and Windows and is distributed as a self-contained binary for each OS.

Features

  • Easy to use
  • Document symbols from headings.
  • Supports inline links
  • Supports reference links
  • Workspace symbols from headings.
  • Completion for links (inline, reference, wiki).
  • "Find references" for headings and links.
  • Integrates with VSCode, Vim, Emacs, Sublime, Neovim and BBEdit
  • Supports wiki style links
  • Support multi-folder workspaces
  • Diagnostics for wiki-links
  • Custom parser for more fine-grained note structure
  • Code Lens with "# references" on headings.
  • Image Support
  • Rename refactor.
  • Add "check" command for standalone workspace checking.
  • Support for Jupyter notebooks.
  • Easy to ignore files in a workspace

Alongside regular markdown links, Marksman also supports wiki-style links, e.g. [[some-doc]] or [[#some-heading]]. This is particularly convenient when working with a Zettelkasten-like repository of markdown notes, as it streamlines linking and cross-linking of notes. This is what tool like Obsidian and Emanote use.

By default Marksman uses a document title's slug when referencing a document, however there is an configuration setting to use a file name or a file path instead. This functionality is currently experimental and may change in future depending on user's feedback. See Configuration for more details.

License

MIT License

Resources & Downlads

GitHub - artempyanykh/marksman: Write Markdown with code assist and intelligence in the comfort of your favourite editor.
Write Markdown with code assist and intelligence in the comfort of your favourite editor. - GitHub - artempyanykh/marksman: Write Markdown with code assist and intelligence in the comfort of your f…
GitHub - artempyanykh/marksman-vscode: Marksman extension for VSCode. Note taking with cross-references and diagnostics.
Marksman extension for VSCode. Note taking with cross-references and diagnostics. - GitHub - artempyanykh/marksman-vscode: Marksman extension for VSCode. Note taking with cross-references and diagn…
GitHub - williamboman/mason.nvim: Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters.
Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters. - GitHub - williamboman/mason.nvim: Portable packa…