-
-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathplugin.xml
112 lines (97 loc) · 7.31 KB
/
plugin.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<idea-plugin>
<id>org.openasr.idiolect</id>
<name>idiolect</name>
<vendor email="[email protected]" url="https://github.com/OpenASR/idiolect">OpenASR</vendor>
<description>
<![CDATA[
Speech recognition for IntelliJ IDEA. Idiolect listens to voice commands and assists with simple actions
like debugging, navigation, and refactoring. For a list of example phrases, please see the
<a href="https://github.com/OpenASR/idiolect/blob/feature/grammar-system/docs/example-phrases.md">documentation</a>.
You can also ask "What can I say?" or "What can I say about 'tab'?"
<img src="https://raw.githubusercontent.com/OpenASR/idiolect/master/docs/command-search.png" alt="Command search view"/>
]]>
</description>
<depends>com.intellij.modules.lang</depends>
<depends optional="true" config-file="java-pronouncer.xml">com.intellij.modules.java</depends>
<!-- <depends>AceJump</depends>-->
<applicationListeners>
<!-- <listener topic="org.openasr.idiolect.nlp.NlpResultListener" class="org.openasr.idiolect.nlp.IntellijNlpResultListener"/> -->
<listener topic="org.openasr.idiolect.nlp.NlpResultListener" class="org.openasr.idiolect.nlp.LoggingNlpResultListener"/>
</applicationListeners>
<extensionPoints>
<extensionPoint name="intentResolver" interface="org.openasr.idiolect.nlp.intent.resolvers.IntentResolver" dynamic="true"/>
<extensionPoint name="intentHandler" interface="org.openasr.idiolect.nlp.intent.handlers.IntentHandler" dynamic="true"/>
<extensionPoint name="asrSystem" interface="org.openasr.idiolect.asr.AsrSystem" dynamic="true"/>
<extensionPoint name="asrProvider" interface="org.openasr.idiolect.asr.AsrProvider" dynamic="true"/>
<extensionPoint name="ttsProvider" interface="org.openasr.idiolect.tts.TtsProvider" dynamic="true"/>
<extensionPoint name="nlpProvider" interface="org.openasr.idiolect.nlp.NlpProvider" dynamic="true"/>
</extensionPoints>
<extensions defaultExtensionNs="com.intellij">
<applicationService serviceImplementation="org.openasr.idiolect.asr.AsrService"/>
<applicationService serviceImplementation="org.openasr.idiolect.settings.IdiolectConfig"/>
<applicationService serviceImplementation="org.openasr.idiolect.asr.vosk.VoskConfig"/>
<applicationService serviceImplementation="org.openasr.idiolect.settings.openai.OpenAiConfig"/>
<applicationService serviceImplementation="org.openasr.idiolect.nlp.ai.AiService"/>
<applicationConfigurable groupId="tools" displayName="Idiolect"
id="preferences.IdiolectConfiguration"
instance="org.openasr.idiolect.settings.IdiolectConfigurable" dynamic="true"/>
<applicationConfigurable groupId="tools" displayName="Vosk"
id="preferences.VoskConfiguration"
parentId="preferences.IdiolectConfiguration"
instance="org.openasr.idiolect.asr.vosk.VoskConfigurable" dynamic="true"/>
<applicationConfigurable groupId="tools" displayName="OpenAI"
id="preferences.OpenAIConfiguration"
parentId="preferences.IdiolectConfiguration"
instance="org.openasr.idiolect.settings.openai.OpenAiConfigurable" dynamic="true"/>
<notificationGroup id="Idiolect" displayType="BALLOON"/>
<statusBarWidgetFactory id="Idiolect"
implementation="org.openasr.idiolect.presentation.statusbar.RecognitionStatusBarWidgetFactory"/>
<toolWindow id="Idiolect" secondary="false" icon="AllIcons.CodeWithMe.CwmMicOn" anchor="bottom"
factoryClass="org.openasr.idiolect.presentation.toolwindow.IdiolectToolWindowFactory"/>
</extensions>
<extensions defaultExtensionNs="org.openasr.idiolect">
<intentResolver implementation="org.openasr.idiolect.actions.recognition.IdiolectCommandRecognizer" order="first"
id="idiolectCommandRecognizer"
/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.CustomPhraseRecognizer"
id="CustomPhraseRecognizer"
order="after idiolectCommandRecognizer"
/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.LiveTemplateActionRecognizer"/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.ExtractFieldOrVariable"/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.FindUsagesActionRecognizer"/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.RenameActionRecognizer"/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.SurroundWithNoNullCheckRecognizer"/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.JavaActionRecognizer"/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.AiChatRecognizer"/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.RegisteredEditorActionRecognizer"
id="RegisteredEditorActionRecognizer"
order="before RegisteredActionRecognizer"/>
<intentResolver implementation="org.openasr.idiolect.actions.recognition.RegisteredActionRecognizer"
id="RegisteredActionRecognizer"
order="last"/>
<intentHandler implementation="org.openasr.idiolect.nlp.intent.handlers.IdiolectCommandIntentHandler" order="first"/>
<intentHandler implementation="org.openasr.idiolect.nlp.intent.handlers.IdiolectActionIntentHandler"/>
<intentHandler implementation="org.openasr.idiolect.nlp.intent.handlers.IdiolectChatIntentHandler"/>
<intentHandler implementation="org.openasr.idiolect.nlp.intent.handlers.TemplateIntentHandler"/>
<intentHandler implementation="org.openasr.idiolect.nlp.intent.handlers.JavaActionIntentHandler"/>
<intentHandler implementation="org.openasr.idiolect.nlp.intent.handlers.RegisteredActionHandler" order="last"/>
<asrSystem implementation="org.openasr.idiolect.asr.AsrControlLoop"/>
<asrProvider implementation="org.openasr.idiolect.asr.vosk.VoskAsr"/>
<ttsProvider implementation="org.openasr.idiolect.tts.IdiolectTTS"/>
<nlpProvider implementation="org.openasr.idiolect.nlp.PatternBasedNlpProvider"/>
</extensions>
<actions>
<action id="Idiolect.Start" text="Voice Control" description="Start listening for voice commands"
class="org.openasr.idiolect.actions.VoiceRecordControllerAction"
icon="/org/openasr/idiolect/icons/start.svg">
<add-to-group group-id="MainToolbarRight"/>
</action>
<action id="Idiolect.CommandFrontTextField" text="Invoke Voice Command"
class="org.openasr.idiolect.actions.ExecuteActionFromTextField"/>
<action id="Idiolect.VoiceAction" text="Invoke by Voice Command"
class="org.openasr.idiolect.actions.ExecuteVoiceCommandAction"/>
<action id="Idiolect.AiCompletion" text="AI Completion"
class="org.openasr.idiolect.actions.LlmCompletionAction"/>
</actions>
</idea-plugin>