summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorMartin Bielik <mx.bielik@gmail.com>2023-02-27 21:23:12 +0100
committerMartin Bielik <mx.bielik@gmail.com>2023-02-27 21:26:18 +0100
commit7849ee09c54008cf2b87cd8af7e694367d14c879 (patch)
tree9680f237fda9e169e357d179e66e193b20cdafae /README.md
parent5c1104c5dbd81b4574b2b5a6f3f27c0457ed529c (diff)
downloadvim-ai-7849ee09c54008cf2b87cd8af7e694367d14c879.tar.gz
docu
Diffstat (limited to '')
-rw-r--r--README.md57
1 files changed, 57 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..3596cce
--- /dev/null
+++ b/README.md
@@ -0,0 +1,57 @@
+# vim-ai
+
+Complete text in vim using OpenAI.
+
+![vim-ai demo](./demo.gif)
+
+## Installation
+
+Prerequisites:
+
+```sh
+# install https://github.com/peterdemin/openai-cli
+pip install openai-cli
+
+# configure openai api key https://platform.openai.com/account/api-keys
+echo "YOUR_OPENAPI_TOKEN" > ~/.config/openai.token
+
+# alternatively using environment variable
+export OPENAI_API_TOKEN="YOUR_OPENAPI_TOKEN"
+```
+
+Add plugin to your `.vimrc`, e.g. using `vim-plug`:
+
+```vimscript
+Plug 'madox2/vim-ai'
+```
+
+## Usage
+
+### Basic usage
+
+`:AI {prompt}` - completes selected text (visual mode) or text on the current line (normal mode). Passing optional `{prompt}` parameter prepends it to the final prompt.
+
+### Key bindings
+
+Map keys in your `.vimrc` to trigger `:AI` command.
+
+```vimscript
+nnoremap <leader>a :AI<CR>
+vnoremap <leader>a :AI<CR>
+```
+
+### Custom commands
+
+To customize and re-use prompts it is useful to put some context to the language model. You can do it with prepending text to `:AI` command.
+
+```vimscript
+# key binding with custom context
+vnoremap <leader>s :AI fix grammar and spelling and use formal language<CR>
+nnoremap <leader>s :AI fix grammar and spelling and use formal language<CR>
+
+# command with custom context
+command! -range -nargs=? AICode <line1>,<line2>call AIRun("Programming syntax is " . &filetype, <f-args>)
+```
+## License
+
+[MIT License](https://github.com/madox2/vim-ai/blob/main/LICENSE)