Commit graph

12 commits

Author SHA1 Message Date
Carl-Robert Linnupuu
f0172722c7 feat: add support for configuring code completions via settings 2024-04-03 02:02:15 +03:00
Carl-Robert
8cf5720db9
feat: OpenAI and Claude vision support (#430)
* feat: add OpenAI and Claude vision support

* refactor: replace awaitility with PlatformTestUtil.waitWithEventsDispatching

* feat: display error when image not found

* chore: bump llm-client

* feat: configurable file watcher and minor code cleanup

* fix: ensure image notifications are triggered only for image file types

* docs: update changelog

* fix: user textarea icon button behaviour

* refactor: minor cleanup
2024-04-02 02:50:41 +03:00
Carl-Robert
657868453f
feat: migrate to a new inline completion api (#425)
* fix: plugin since/until build versions

* add necessary kotlin deps

* migrate to new inline completions api

* remove previous implementation

* replace build and platform versions

* bump gradle-intellij-plugin version
2024-03-27 14:34:09 +02:00
Carl-Robert
91dd7bdb43
feat: apply post-processing for code completions (#404) 2024-03-11 23:13:10 +02:00
Carl-Robert Linnupuu
4ed74a31c1 feat: second set of autocomplete improvements
- support typing as suggested functionality
- do not fetch completions on cursor change
- other minor fixes
2024-02-11 01:31:34 +02:00
Carl-Robert Linnupuu
01ec29c102 fix: code completion int. test 2024-02-08 02:32:36 +02:00
Carl-Robert Linnupuu
097f0914bf refactor: extract configuration state into standalone class 2024-02-07 02:13:22 +02:00
Carl-Robert Linnupuu
169957687d fix: test execution 2024-02-06 02:20:57 +02:00
Carl-Robert Linnupuu
fe4e02f7f6 Revert "Revert "feat: code completion improvements""
This reverts commit 7f586da0c1.
2024-02-06 02:18:53 +02:00
Carl-Robert Linnupuu
7f586da0c1 Revert "feat: code completion improvements"
This reverts commit abc8dc8d07.
2024-02-05 16:28:18 +02:00
Carl-Robert Linnupuu
abc8dc8d07 feat: code completion improvements
- truncate context when working with bigger files
- fix notification error messages
- other minor fixes
2024-02-05 15:59:49 +02:00
Phil
7387cf4536
Inline Autocompletion Pt.2 (#333)
* Add first draft of inline code completion with mock text

* Adds InsertInlineTextAction for inserting autocomplete suggestion with tab

- Changed to disable suggestions when text is selected
- Adds and removes the insert action based on when it shows the inlay hint

* Request inline code completion

* Move inline completion prompt into txt file

* Add inline completion settings to ConfigurationState

* Fix code style

* Use EditorTrackerListener instead of EditorFactoryListener to enable inline completion

* Code completion requests synchronously without SSE

* Use LlamaClient.getInfill() for inline code completion

* support inlay block element rendering, clean up code

* Use only enclosed Method or Class contents for code completion if possible

* Refactor extracting PsiElement contents in code completion

* bump llm-client

* fix completion call from triggering on EDT, force method params to be nonnull by default

* refactor request building, decrease delay value

* Trigger code completion if cursor is not inside a word

* Improve inlay rendering

* Support cancellable infill requests

* add statusbar widget, disable completions by default

* Show error notification if code completion failed

* Truely disable/enable EditorInlayHandler when completion is turned off/on

* Add CodeCompletionEnabledListener Topic to control enabling/disabling code-completion

* Add progress indicator for code-completion with option to cancel

* Add CodeCompletionServiceTest + refactor inlay ElementRenderers

* several improvements

- replace timer implementation with call debouncing
- use OpenAI /v1/completions API for completions
- code refactoring

* trigger progress indicator only for llama completions

* fix tests

---------

Co-authored-by: James Higgins <james.isaac.higgins@gmail.com>
Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
2024-01-31 01:05:31 +02:00