From 6d54837aa2066614648aaa9e658902ba11fb53d3 Mon Sep 17 00:00:00 2001 From: rockerBOO Date: Fri, 28 Aug 2020 01:11:04 -0400 Subject: [PATCH] Add examples, API to readme --- README.md | 40 +++++++++++++++++++++++++++++++++++----- 1 file changed, 35 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 7661448..5ed9ba2 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,7 @@ Gaze deeply into unknown regions using the power of the moon. ![Example](./media/simple_rg_v1.gif) +[Example video](https://www.youtube.com/watch?v=65AVwHZflsU) ## Installation @@ -12,12 +13,18 @@ Plug 'nvim-lua/plenary.nvim' Plug 'nvim-lua/telescope.nvim' ``` +### Optional + +- bat (preview) +- ripgrep (finder) +- git (picker) +- LSP (picker) +- [devicons](https://github.com/kyazdani42/nvim-web-devicons) + ## Usage (I will write a longer description later about how to create each of the objects described in Pipeline) -There is currently a fuzzy finder for git files builtin: - ```lua -- Fuzzy find over git files in your directory require('telescope.builtin').git_files() @@ -32,6 +39,16 @@ require('telescope.builtin').lsp_references() require('telescope.builtin').quickfix() ``` +### Example + +```vimscript +nnoremap p :lua require'telescope.builtin'.git_files{} +``` + +```vimscript +nnoremap gr lua require'telescope.builtin'.lsp_references{} +``` + ## Status (Unstable API) While the underlying API & Infrastructure (A.K.A. Spaghetti Code) is still very much WIP and @@ -40,33 +57,46 @@ in, you can report bugs if they don't work, you should be able to keep them arou even if everything inside of those functions is rewritten. They provide pretty simple, easy to use wrappers over common tasks). +## API + +### `builtin` + +Defaults: + +- require'telescope.builtin'.git_files{ show_preview = true } +- require'telescope.builtin'.live_grep{} +- require'telescope.builtin'.lsp_references{} +- require'telescope.builtin'.quickfix{} +- require'telescope.builtin'.grep_string{ search = "query" } ## Goals - ### Pipeline Different Objects (Please note, this section is still in progress) "finder": + - executable: rg, git ls-files, ... - things in lua already - vim things "picker": + - fzf - sk - does this always need to be fuzzy? - - you'll map what you want to do with vimscript / lua mappings + - you'll map what you want to do with vimscript / lua mappings "previewer": + - sometimes built-in - sometimes a lua callback - As an example, you could pipe your inputs into fzf, and then it can sort them for you. fzf: + - have a list of inputs - i have a prompt/things people typed - instantly return the stuff via stdout