mirror of
https://github.com/livebook-dev/livebook.git
synced 2025-10-09 13:07:37 +08:00
Trigger completion suggestions on dot (#1784)
This commit is contained in:
parent
a9ea50f01a
commit
070a11932f
1 changed files with 22 additions and 7 deletions
|
@ -85,7 +85,20 @@ document.fonts.addEventListener("loadingdone", (event) => {
|
||||||
* See cell/live_editor.js for more details.
|
* See cell/live_editor.js for more details.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
monaco.languages.registerCompletionItemProvider("elixir", {
|
let completionItemProvider = null;
|
||||||
|
|
||||||
|
settingsStore.getAndSubscribe((settings) => {
|
||||||
|
// We replace the completion provider to always reflect the settings
|
||||||
|
if (completionItemProvider) {
|
||||||
|
completionItemProvider.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
completionItemProvider = monaco.languages.registerCompletionItemProvider(
|
||||||
|
"elixir",
|
||||||
|
{
|
||||||
|
// Trigger characters always open the popup, so we add dot only
|
||||||
|
// when completion while typing is enabled
|
||||||
|
triggerCharacters: settings.editor_auto_completion ? ["."] : [],
|
||||||
provideCompletionItems: (model, position, context, token) => {
|
provideCompletionItems: (model, position, context, token) => {
|
||||||
if (model.__getCompletionItems__) {
|
if (model.__getCompletionItems__) {
|
||||||
return model.__getCompletionItems__(model, position);
|
return model.__getCompletionItems__(model, position);
|
||||||
|
@ -93,6 +106,8 @@ monaco.languages.registerCompletionItemProvider("elixir", {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
}
|
||||||
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
monaco.languages.registerHoverProvider("elixir", {
|
monaco.languages.registerHoverProvider("elixir", {
|
||||||
|
|
Loading…
Add table
Reference in a new issue