basex-lsp/webapp/static/clients/ace/script.js
2025-08-17 19:52:52 +01:00

42 lines
No EOL
1.2 KiB
JavaScript

ace.require("ace/ext/language_tools"); //To allow autocompletion
var editor = ace.edit("editor", {
enableBasicAutocompletion: true,
enableLiveAutocompletion: true,
theme: "ace/theme/chrome",
mode: "ace/mode/html",
fontSize: "14px",
showPrintMargin: false,
useWorker: false // Disable web worker for this simple demo
});
ace.require('ace/ext/settings_menu');
editor.setTheme("ace/theme/github");
//editor.session.setMode("ace/mode/html");
editor.commands.addCommands([
{
name: "showSettingsMenu",
bindKey: {
win: "Ctrl-q",
mac: "Ctrl-q"
},
exec: function (editor) {
editor.showSettingsMenu();
},
readOnly: true
}
]);
var provider = LanguageProvider.fromCdn("https://www.unpkg.com/ace-linters@latest/build/");
provider.registerEditor(editor);
const serverData = {
module: () => import("https://www.unpkg.com/ace-linters@latest/build/language-client"),
modes: "json|json5",
type: "socket",
socket: new WebSocket("ws://127.0.0.1:3000/ws/lsp"), // your websocket server address
}
function opts(editor) {
const modes=editor.session.$modes;
console.log(editor.session.$modeId);
console.log(Object.keys(modes));
}