/note-simple

Primary LanguageGoGNU General Public License v3.0GPL-3.0

Swift Note Taker and Searcher

Qnote is a lightweight, easy-to-use tool for managing and finding quick notes.

Key Features:

  • Organize notes into collections (Books)
  • Create notes with your preferred editor (default: Vim)
  • Generate notes from web pages
  • Tag notes with hashtags
  • Edit and delete notes
  • Search with Bleve or Elasticsearch
  • Export notes to various formats (colored text, CSV, JSON)
  • Manage collections (delete, merge, split)
  • No configuration needed, just install and go
  • Compatible with Linux and macOS
  • Experimental CUI interface

Getting Started:

  1. Install Go: If you haven't already, install Go from here.

  2. Install Qnote: Use the following command:

    go get github.com/anmil/quicknote/cmd/qnote 

Managing Collections (Books):

  • Create a new collection:

    qnote new book <collection name> 
  • List all collections:

    qnote ls books
  • Delete a collection:

    qnote rm book <collection name>
  • Merge collections:

    qnote merge <collection to delete> <collection to move notes to>
  • Split collections:

    qnote split query <collection name> <search query>
    qnote split ids <collection name> <note IDs...>

Creating and Managing Notes:

  • Create a new note:

    qnote new note 
  • Create a note from a URL:

    qnote new url <URL>
  • List notes:

    qnote ls notes 
    qnote ls notes all 
  • Edit a note:

    qnote edit note <note ID>
  • Delete a note:

    qnote rm note <note ID>

Searching Notes:

  • Search using phrase prefix:

    qnote search query 
  • Search using advanced query syntax:

    qnote search -q <search query> 

Re-indexing:

  • If you need to rebuild the search index, use:

    qnote search reindex

Backup and Restore:

  • To back up, copy the qnote.db file from the data directory ($HOME/.config/quicknote on Linux and $HOME/Library/Application Support/quicknote on macOS).
  • Exporting to CSV or JSON is also an option.

Command Help:

  • Get information on any command using the help command:

    qnote help <command>

Example Usage:

$ qnote help
$ qnote new book Work
$ qnote new note
$ qnote search -q "book:Work AND tag:projectx"
$ qnote ls notes all -f json