2024-07-03 17:13:09 +02:00
|
|
|
-- Copyright (C) 2024 The Qt Company Ltd.
|
|
|
|
|
-- SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
|
|
|
|
return {
|
|
|
|
|
Name = "AiAssistant",
|
|
|
|
|
Version = "1.0.0",
|
|
|
|
|
CompatVersion = "1.0.0",
|
|
|
|
|
Vendor = "The Qt Company",
|
|
|
|
|
Category = "Language Client",
|
2024-08-14 09:44:05 +02:00
|
|
|
Description = "Qt AI Assistant",
|
2024-07-03 17:13:09 +02:00
|
|
|
Experimental = true,
|
2024-07-10 12:47:23 +02:00
|
|
|
DisabledByDefault = true,
|
2024-07-03 17:13:09 +02:00
|
|
|
LongDescription = [[
|
2024-08-14 09:44:05 +02:00
|
|
|
The Qt AI Assistant extension is your personal coding assistant. The Qt AI Assistant can provide code suggestions triggered by a keyboard shortcut (CTRL-SHIFT-A), on request in an inline chat window, or automatically while you are typing. You can configure the Qt AI Assistant to collect suggestions from different commercial or open-source Large Language Models (LLM).
|
|
|
|
|
|
|
|
|
|
You also need one of the following valid Qt licenses: Qt for Application Development Enterprise, Qt for Device Creation Professional, Qt for Device Creation Enterprise, Qt for Small Business, Qt Evaluation License, Qt Education License.
|
|
|
|
|
|
|
|
|
|
You will need access to a LLM for the suggestions. You can use a subscription to a commercial, cloud-hosted LLM, a privately hosted or on-premise LLM, or a Small Language Model running locally on your computer.
|
2024-07-03 17:13:09 +02:00
|
|
|
]],
|
|
|
|
|
Dependencies = {
|
|
|
|
|
{ Name = "Lua", Version = "14.0.0" },
|
|
|
|
|
{ Name = "LuaLanguageClient", Version = "14.0.0" }
|
|
|
|
|
},
|
2024-07-10 12:47:23 +02:00
|
|
|
hooks = {
|
|
|
|
|
editors = {
|
2024-07-16 16:07:57 +02:00
|
|
|
text = {
|
2024-07-24 10:40:11 +02:00
|
|
|
contentsChanged = function(document, position, charsRemoved, charsAdded)
|
|
|
|
|
require 'init'.Hooks.onDocumentContentsChanged(document, position, charsRemoved, charsAdded)
|
|
|
|
|
end,
|
2024-07-25 13:18:44 +02:00
|
|
|
currentChanged = function(editor)
|
|
|
|
|
require 'init'.Hooks.onCurrentChanged(editor)
|
|
|
|
|
end,
|
2024-07-16 16:07:57 +02:00
|
|
|
}
|
2024-07-10 12:47:23 +02:00
|
|
|
}
|
|
|
|
|
},
|
2024-07-03 17:13:09 +02:00
|
|
|
setup = function()
|
|
|
|
|
require 'init'.setup()
|
|
|
|
|
end,
|
|
|
|
|
} --[[@as QtcPlugin]]
|