Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/ostralyan/scribe.nvim

An easy note taking plugin
https://github.com/ostralyan/scribe.nvim

neovim neovim-plugin note-taking

Last synced: 19 days ago
JSON representation

An easy note taking plugin

Awesome Lists containing this project

README

        

# scribe.nvim

![code size](https://img.shields.io/github/languages/code-size/Ostralyan/scribe.nvim?style=flat-square)
![license](https://img.shields.io/github/license/Ostralyan/scribe.nvim?style=flat-square)

![scribe short](https://user-images.githubusercontent.com/7123333/195979769-5ff8cfb4-c7dd-4897-89fa-9c6705659f0f.gif)

A convenient way to find and take notes written in Lua.

## Contents

- [Getting Started](#getting-started)
- [Usage](#usage)
- [Setup](#setup)
- [Contributing](#contributing)
- [Wish List](#wish-list)

## Getting Started

### Required Dependencies

- [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim) is required to find notes.
- [nui.vim](https://github.com/nui.nvim) is required for text prompt.

### Installation

#### [vim-plug](https://github.com/junegunn/vim-plug)

```viml
Plug 'Ostralyan/scribe.nvim'
" Telescope is a required dependency for :ScribeFind to work
Plug 'nvim-telescope/telescope.nvim', { 'tag': '0.1.0' }
```

#### [packer.nvim](https://github.com/wbthomason/packer.nvim)

```lua
return require('packer').startup(function(use)
use 'nvim-telescope/telescope.nvim', tag = '0.1.0',
use 'Ostralyan/scribe.nvim'
end)
```

#### [dein.vim](https://github.com/Shougo/dein.vim)

```viml
call dein#add('nvim-telescope/telescope.nvim', { 'rev': '0.1.0' })
call dein#add('Ostralyan/scribe.nvim')
```

## Usage

```viml
" Creates a new default file (scribe.md) or opens the file up if it exists.
" The default file can be configured under setup.
nnoremap ss :ScribeOpen

" Creates a new file or opens the file up if it exists.
" Requires a filename.
nnoremap so :ScribeOpen

" Opens telescope up to
" The directory can be configured in setup.
nnoremap sf :ScribeFind
```

## Setup

### Default setup

```lua
-- Default values
-- {
-- directory = '~/notes',
-- file_ext = 'md',
-- default_file = 'scribe'
-- }
require('scribe').setup{}
```

### Custom setup with project root as default directory

```lua
require('scribe').setup{
directory = './notes',
file_ext = '.txt',
default_file = 'scribe'
}
```

## Contributing

All contributions are welcome! Just open a pull request. Feel free to take stab at wish list.

## Wish List

- Support markdown preview
- Add setup configuration to allow for customizable preview.
- More Usage examples for packer, dein, and more
- Setup examples in Lua
- Add multiple search directories