如何在没有 Node.js 的情况下使用摩纳哥编辑器

2024-03-01

我需要将 monaco-editor 与纯客户端解决方案集成在网页上,并且无需使用 Node.js。

我找到了 @SimperT 的一个很好的答案如何在没有nodejs和电子的情况下在网页上实现monaco-editor https://stackoverflow.com/questions/44987410/how-to-implement-monaco-editor-on-a-webpage-without-nodejs-and-electron但他的存储库已经过时了(js 是一个狂野的世界),而且我有一个额外的限制,即文件只能在本地提供(没有 CDN,它用于内联网,无需外部访问)。

所以,这有点像瓶子里的信息,但如果有人有关于如何做到这一点的线索或指示,我会洗耳恭听......(如果我想出解决方案,我会将其发布在这里)


这个问题问得有点笨拙。尽管如此,我的错误可能对其他人有益:问题出在未正确设置的 require 变量中。

在这里找到的包:https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.23.0.tgz https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.23.0.tgz

解压并正确静态服务。路径是monaco-editor-x.xx.x/package/min/vs/[editor/].

这是提供的 html 页面(使用cherrypy):

<!doctype html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>monaco editor</title>

        <!-- MONACO CSS -->
        <link rel="stylesheet" data-name="vs/editor/editor.main" href="_static/js/ext/monaco-editor/min/vs/editor/editor.main.css">
    </head>

    <body style="background-color: rgb(140, 190, 190);">
        <h1>monaco editor</h1>
        <div id="monaco_editor" style="height:400px">
        </div>

        <!-- MONACO JS -->
        <script>var require = { paths: { 'vs': '_static/js/ext/monaco-editor/min/vs' } };</script>

        <script src="_static/js/ext/monaco-editor/min/vs/loader.js"></script>
        <script src="_static/js/ext/monaco-editor/min/vs/editor/editor.main.nls.js"></script>
        <script src="_static/js/ext/monaco-editor/min/vs/editor/editor.main.js"></script>

        <script>
        // CREATE AN EDITOR
        var h_div = document.getElementById('monaco_editor');
        var editor = monaco.editor.create(h_div, {
            value: [
                'function x() {',
                '\tconsole.log("Hello world!");',
                '}'
            ].join('\n'),
            language: 'javascript'
        });
        </script>
    </body>
</html>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在没有 Node.js 的情况下使用摩纳哥编辑器 的相关文章

  • monaco-editor基本使用以及monaco-editor封装成vue组件

    文章目录 一 monaco editor基本使用 二 monaco editor封装成vue组件 一 monaco editor基本使用 以vue2项目为例 安装依赖 npm i monaco editor npm i monaco edi
  • 在webpack中使用monaco-editor

    目录 前言 使用 自己总结的使用过程 1 安装 2 在页面中使用 3 开启辅助功能 4 如何设置菜单中文显示效果 5 编辑器功能 6 monaco editor使用到的JS文件如何压缩 2020年4月28日11 49 58 前言 我查过网上
  • 在摩纳哥编辑器的上下文菜单中禁用剪切和复制

    我正在使用摩纳哥编辑器 我看到在以后的版本中 上下文菜单中添加了剪切和复制功能 我想从上下文菜单中删除这两个选项 请让我知道我怎样才能实现它 完整代码 import as actions from monaco editor esm vs
  • 新的 Apps Script IDE 太有帮助了。你能把它关掉吗?

    知道如何关闭涵盖您正在处理的行上方的代码的上下文帮助吗 它还涵盖了超级烦人的自动完成功能 在新的 Apps 脚本代码编辑器中 没有用于禁用上下文帮助的用户首选项设置
  • 如何从摩纳哥编辑器的操作列表中隐藏“命令面板”项目

    我一直在到处寻找 摩纳哥文档 github SO 但似乎没有关于如何从上下文菜单中隐藏和禁用 命令调色板 命令的示例 有什么建议吗 哦 好吧 我别无选择 只能侵入 DOM 来删除 命令面板 这离理想还很远 而且也没有真正禁用F1捷径 但这是
  • 如何在摩纳哥编辑器中添加打开下拉菜单的操作?

    我知道如何在 Monaco 编辑器的上下文菜单中添加条目 editor addAction 如何添加打开下拉列表的操作作为 命令面板 操作 正如中提到的这个问题 https github com Microsoft monaco edito
  • 在 Angular 13 中实现 Monaco 编辑器

    在 Angular 13 中实现 Monaco 编辑器的最佳选择是什么 我见过 ngx monaco editor 但上次更新是 9 个月 它已经升级到 Angular 12 Monaco 版本也有 0 20 0 11 02 2020 非常
  • 如何在摩纳哥编辑器中设置行尾

    默认为 CRLF 我想将其更改为 LF 因为我正在处理 BASH 脚本 请帮忙 我已浏览文档但找不到任何解决方案或示例 https github com Microsoft vscode blob 013501950e78b9dde5c2e
  • 如何覆盖编辑器服务

    我正在尝试采用自定义方式来实现转到定义 这需要覆盖编辑器服务 尤其是openEditor and findModel 方法 据我所见 我尝试遵循此评论 https github com microsoft monaco editor iss
  • 如何使用 API 在 Monaco Editor 中格式化 JSON 代码?

    我正在与摩纳哥编辑又名VS CodeWeb 项目中的引擎 我使用它来允许用户编辑一些具有 JSON 架构集的 JSON 以帮助提供一些自动完成功能 当他们保存更改并希望重新编辑他们的工作时 我加载回编辑器的 JSON 会转换为字符串 但这会
  • Monaco Editor 获取插入符号的源代码索引

    有没有办法将插入符号位置作为源代码字符串中的索引 我知道我可以获取位置 这将为我提供一个包含行和列的对象 但是有没有办法获取或将行 列转换为字符串字符索引 例如 如果我有 using System using System Data 我将插
  • 如何在没有 Node.js 的情况下使用摩纳哥编辑器

    我需要将 monaco editor 与纯客户端解决方案集成在网页上 并且无需使用 Node js 我找到了 SimperT 的一个很好的答案如何在没有nodejs和电子的情况下在网页上实现monaco editor https stack
  • 如何使用 Webpack 和 React create-react-app 在 Monaco 中加载 npm 模块类型定义

    我想在 React 应用程序中加载 Monaco 中的一些模块类型定义以用于教程目的 事实上 我在经历了很大的痛苦之后设法让它工作 但以一种非常hacky的方式 所以我不是问如何做 而是问如何正确地做 我希望能用 Webpack 解决的部分
  • 向 monaco 编辑器提供类型提示

    我正在尝试使用 Monaco 编辑器向 javascript 编辑器提供智能感知 代码补全 该代码必须是有效的 javascript 而不是 typescript 假设一些用户输入了这样的脚本 function onMyEvent even
  • 摩纳哥编辑器自动完成功能位于哪里?

    我正在为 monaco editor 创建 PromQL 语言支持 我发现语言定义位于此存储库中 https github com microsoft monaco languages https github com microsoft
  • 摩纳哥编辑器:隐藏概述标尺

    有没有办法在摩纳哥编辑器中完全隐藏概述标尺 通过以下内容仍然可见 overviewRulerLanes 0 hideCursorInOverviewRuler true scrollbar vertical hidden overviewR
  • 如何使用 Javascript 删除 Monaco 编辑器的默认 DOM/浏览器相关自动完成功能?

    我使用 Monaco 进行 JavaScript 对象文字创建 其中我只需要基本类型完成 再加上自定义类型完成 使用 monaco languages registerCompletionItemProvider javascript 当我
  • 摩纳哥:如何添加内联自动完成/代码建议?

    我找不到任何有关如何添加内联自动完成功能的示例 如下图所示 有人可以指导我如何在摩纳哥做到这一点吗 这可以在 v1 66 中启用 现在在 Insiders 中 The editor quickSuggestions设置现在接受内联为 配置值
  • 将 monaco 编辑器集成到 ember 辛烷中

    我尝试整合摩纳哥代码 https github com Microsoft monaco editor编辑到我的 ember 辛烷应用程序中 目前我正在使用 ESM 导入样式并确认手册 我安装了 webpack 加载器插件并将其集成到我的
  • 如何将文本插入摩纳哥编辑器?

    我的应用程序中嵌入了摩纳哥代码编辑器 如何以编程方式在特定行上插入文本 var editor monaco editor create document getElementById container value First line n

随机推荐