Qnote permite criar e pesquisar rapidamente dezenas de milhares de notas curtas.
#
As notas são armazenadas em um banco de dados SQLite (o suporte para mais bancos de dados está chegando). A pesquisa é fornecida pelo Bleve (padrão) ou Elasticsearch com alguma configuração extra.
Se ainda não o fez, você precisa configurar o Golang. Do que você acabou de correr
go get github.com/anmil/quicknote/cmd/qnote
Isso puxará a biblioteca e a construirá em seu diretório bin Golang.
O livro permite que você mantenha notas relacionadas separadas umas das outras, como notas de trabalho e notas pessoais. Salvo indicação em contrário, cada ação é realizada apenas na pasta de trabalho. Você pode alterar a pasta de trabalho com o sinalizador -n
.
Para criar um novo livro
qnote new book <book name>
qnote ls books
Você pode excluir livros e todas as notas do livro.
qnote rm book <book name>
Se você deseja remover um livro, mas manter as anotações. Você pode mesclar o livro em outro. Mesclar livros pega todas as notas de um livro e as move para outro, em seguida, exclui o livro vazio.
qnote merge <book to delete> <book to move notes to>
Os livros podem ser divididos de duas maneiras: a partir dos resultados de uma consulta ou de uma lista de IDs de notas.
por consulta
qnote split query <book name> <query>
Isto irá pré-formar uma pesquisa de consulta (usando QueryStringQuery) na pasta de trabalho e os resultados da consulta serão movidos para o <book name>
(criando-o se ele não existir). Você não precisa especificar o livro na string de consulta. Já está adicionado para você.
por IDs
qnote split ids <book name> <note ids...>
Isso faz o mesmo, mas em vez de consultar as notas, ele move as notas para os IDs fornecidos.
Para abrir o editor (padrão Vim, substitua por Env: EDITOR) e crie uma nova nota
qnote new note
As notas são executadas por meio de um analisador que considera a primeira linha como título e o restante como corpo. Qualquer palavra que comece com um caractere #
é usada como tag para a nota.
Criando uma nota com o seguinte texto
This is a test #note
notes are #cool and #fun
one #note is never enough
criará uma nota com o título This is a test #note
, Tags note, cool, fun
e um corpo de
notes are #cool and #fun
one #note is never enough
Você também pode criar uma nota a partir de um URL.
qnote new url <url>
qnote irá realizar uma solicitação GET na URL. Ele analisará o HTML retornado para as tags title
, meta[name=keywords]
e meta[name=description]
da página da web. O título mais o URL são usados como título, palavras-chave são usadas para as tags e a descrição para o corpo. Ele abrirá o editor com essas informações preenchidas e permitirá que você faça alterações antes de salvá-las.
Para listar todas as notas de um livro
qnote ls notes
Para listar todas as notas em todos os livros
qnote ls notes all
Para abrir o editor e editar uma nota
qnote edit note <note id>
Para excluir uma nota
qnote rm note `<note id>`
qnote usa Bleve por padrão, mas também suporta ElasticSearch, para indexar notas e permitir pesquisas. ElasticSearch é recomendado se você não se importa com uma configuração extra, pois é muito mais poderoso e rápido. Se você instalar o Elasticsearch, poderá editar o arquivo de configuração do qnote localizado em $HOME/.config/quicknote
no Linux e $HOME/Library/Application Support/quicknote
no Max OSX.
Para pesquisar suas notas no livro de trabalho usando o prefixo de frase
qnote search query
Você também pode usar a sintaxe de consulta mais poderosa QueryStringQuery (Bleve ElasticSearch) definindo o sinalizador -q
. Observe que ao usar o sinalizador -q
, a consulta é executada em todos os livros.
Os campos nos quais você pode pesquisar são id
, created
, modifed
, title
, tags
(lista separada comum), body
e book
. Então, se você quiser procure por alguma nota no livro "Trabalho" que tenha a tag "projectx". Você correria
Para Bléve
qnote search -q "+book:Work +tag:projectx"
e ElasticSearch
qnote search -q "book:Work AND tags:projectx"
Ao criar, editar e excluir notas, o qnote se encarregará de atualizar o índice. Mas, se você precisar reindexar por motivos como alterar provedores de indexação, reinstalar o ElasticSearch, copiar o banco de dados de notas de outro sistema. Você pode correr
qnote search reindex
e qnote irá reindexar todas as notas.
A maneira mais simples de fazer backup de suas notas é copiar qnote.db no diretório de dados $HOME/.config/quicknote
no Linux e $HOME/Library/Application Support/quicknote
no Max OSX. Você também pode exportar a lista no formato csv ou json com o sinalizador -f
no comando qnote ls notes
.
Atualmente, não há como restaurar notas de CSV ou JSON.
Todos os comandos e sinalizadores são documentos no comando help
. Simples, execute qnote help <command>
para visualizar a descrição e sinalizadores de qualquer comando
Exemplo 1:
$ qnote help
Qnote allows you to quickly create and search tens of thousands of short notes.
Create Books to organize collections of notes.
Add tags to notes for more accurate searching.
Export your notes in text, csv, and json.
Notes are stored in an SQLite database (support for more databases is coming).
Searching is provided by Bleve by default, or Elasticsearch with some extra setup.
Usage:
qnote [command]
Available Commands:
delete Delete Note or Notebook
edit Edit Note or Notebook
get Get/List Notes, Notebook, Tags
merge Merge all notes from <book_name 1> into <book_name 2>
new Create new Note or Notebook
search Search notes
split Split Book
version Print the version of qnote
Flags:
-n, --notebook string Working Notebook (default "General")
Use "qnote [command] --help" for more information about a command.
Exemplo 2:
$ qnote help edit book
Edit the working Book's name. This requires re-index the Book
Usage:
qnote edit book <new book_name> [flags]
Global Flags:
Exemplo 3:
$ qnote get -h
Get/List Notes, Notebook, Tags
Usage:
qnote get [command]
Aliases:
get, list, ls
Available Commands:
book List all books
note List all notes in the working Book, or all notes for the given [note id...]
tag lists all tags for the working Book
Flags:
-f, --display-format string Format to display notes in [ids, text, short, json, csv] (default "text")
-d, --display-order string The order to display Notebook, Notes, Tags [asc, desc] (default "asc")
-s, --sort-by string Sort notes by [id, created, modified, title] (default "modified")
Global Flags:
-n, --notebook string Working Notebook (default "General")
Use "qnote get [command] --help" for more information about a command.