diff options
| author | Martin Bielik <mx.bielik@gmail.com> | 2023-03-14 19:10:09 +0100 |
|---|---|---|
| committer | Martin Bielik <mx.bielik@gmail.com> | 2023-03-14 19:10:09 +0100 |
| commit | 641ac91387da52197d31a0e6bc5a06e28281f0e1 (patch) | |
| tree | f75cf68bb73eb26898f272b5550ea4a1774ced9d /py/complete.py | |
| parent | 9545d08a879380d47901a7398c0c3aa6972933bf (diff) | |
| download | vim-ai-641ac91387da52197d31a0e6bc5a06e28281f0e1.tar.gz | |
ctrl c to cancel completion
Diffstat (limited to '')
| -rw-r--r-- | py/complete.py | 42 |
1 files changed, 24 insertions, 18 deletions
diff --git a/py/complete.py b/py/complete.py index 705dd90..9e46d63 100644 --- a/py/complete.py +++ b/py/complete.py @@ -8,22 +8,28 @@ prompt = vim.eval("prompt") openai.api_key = load_api_key() -if prompt.strip(): - - response = openai.Completion.create( - model="text-davinci-003", - prompt=prompt, - max_tokens=1000, - temperature=0.1, - stream=True, - ) - - generating_text = False - for resp in response: - text = resp['choices'][0].get('text', '') - if not text.strip() and not generating_text: - continue # trim newlines from the beginning - - generating_text = True - vim.command("normal! a" + text) +try: + if prompt.strip(): + + print('Completing...') vim.command("redraw") + + response = openai.Completion.create( + model="text-davinci-003", + prompt=prompt, + max_tokens=1000, + temperature=0.1, + stream=True, + ) + + generating_text = False + for resp in response: + text = resp['choices'][0].get('text', '') + if not text.strip() and not generating_text: + continue # trim newlines from the beginning + + generating_text = True + vim.command("normal! a" + text) + vim.command("redraw") +except KeyboardInterrupt: + vim.command("normal! a Ctrl-C...") |