#lsp #markdown #notemancy #similarity #content #companion #completion

app notemancy-lsp

A markdown LSP - companion tool for notemancy PKM

1 unstable release

Uses new Rust 2024

new 0.1.0 Mar 24, 2025

#456 in Text processing

MIT license

47KB
818 lines

Notemancy LSP

Hey there! 👋 This is the language server for Notemancy, a powerful note-taking system that turns your markdown files into a connected knowledge base.

What's This All About?

Notemancy LSP brings smart editor features to your Notemancy notes. It makes writing and navigating your notes way easier by adding:

  • Wiki-link Completion: Type [[ and get suggestions for all your notes
  • Document Navigation: Easily jump between headings in your notes
  • Hover Previews: See what's in a linked note by hovering over a wiki-link
  • Search Similar Documents: Find related notes based on content similarity

The coolest feature? The semantic search that finds notes with similar content to what you're writing - not just by keywords, but by what the content actually means.

Getting Started

Installation

  1. Make sure you have Rust installed. If not, grab it from rustup.rs
  2. Clone and build the project:
git clone https://github.com/yourusername/notemancy-lsp.git
cd notemancy-lsp
cargo build --release
  1. Add the binary to your PATH:
cp target/release/notemancy-lsp ~/.local/bin/
# or wherever you keep your binaries

Environment Setup

Notemancy needs to know where your configuration is:

export NOTEMANCY_CONF_DIR=~/.config/notemancy

Helix Editor configuration

Helix is a great editor that works well with Notemancy. Here's how to set it up:

  1. Edit your ~/.config/helix/languages.toml file:
[language-server.notemancy-lsp]
command = "notemancy-lsp"
args = []

[[language]]
name = "markdown"
language-servers = ["notemancy-lsp"]
scope = "source.markdown"
roots = []
file-types = ["md", "markdown"]

Vectorize Your Knowledge Base

For the related documents feature to work, you need to vectorize your vault:

ncy vectorize

This command creates embeddings of all your notes so the LSP can find similar content.

Contributing

I'd love your help making Notemancy better! Here's how you can contribute:

Report Bugs: Found something weird? Open an issue! Suggest Features: Have ideas? Let me know! Submit PRs: Code speaks louder than words - fixes and improvements are always welcome

No need for formal processes - just fork, code, and open a pull request.

License

This project is open source. Hack away and have fun!

Dependencies

~43MB
~725K SLoC