monaco-editor 汉化

monaco-editor 汉化,需求拿到百度一番:

monaco editor 汉化 - 掘金webpack 项目 monaco editor 本地化 首先安装插件 webpack.config.js 设置语言包——index.js 使用monaco editorhttps://juejin.cn/post/6965675865673826335

npm install monaco-editor-esm-webpack-plugin --save-dev
npm install monaco-editor monaco-editor-webpack-plugin monaco-editor-nls

webpack配置: 

const MonacoWebpackPlugin = require('monaco-editor-esm-webpack-plugin'); //使用require,esm版本

module.exports = {
    module: {
        rules: [
            {
                test: /\.js/,
                enforce: 'pre',
                include: /node_modules[\\\/]monaco-editor[\\\/]esm/,
                use: MonacoWebpackPlugin.loader
            }
        ]
    },
    plugins: [
        new MonacoWebpackPlugin()
    ]
};
//设置语言包
import { setLocaleData } from "monaco-editor-nls";
import zh_CN from "monaco-editor-nls/locale/zh-hans";

setLocaleData(zh_CN)
//使用
//注意不要使用esm方式引入,webpack会提前打包,导致语言包设置失败,使用动态import
 const monaco = require("monaco-editor/esm/vs/editor/editor.api");
 const editor = monaco.editor.create(document.getElementById('monaco_editor'), {
    value: 'export const msg = "hello world"',
  });

装完发现版本太高.还有loader 报错等问题,

继续搜:

monaco-editor的使用,以及在webpack汉化_izhuoo的博客-CSDN博客_monaco-editor

使用下面版本汉化:

{
  "dependencies": {
    ...
    "monaco-editor": "0.30.1",
    "monaco-editor-nls": "^2.0.0",
  },
  "devDependencies": {
    ...
    "monaco-editor-esm-webpack-plugin": "^2.0.0",
    "monaco-editor-webpack-plugin": "6.0.0"
  },
}

使用以上版本再加上之前的配置,完成汉化

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
您可以通过以下步骤将Monaco-editor的右键菜单汉化: 1. 打开Monaco-editor的官网,下载monaco-editor中文语言包,下载地址为:https://cdn.jsdelivr.net/npm/monaco-editor@0.22.3/min/vs/nls/ 2. 将下载的文件解压后,将文件夹中的zh-cn.js文件复制到您的项目中。 3. 在您的html文件中,添加以下代码: ```html <script src="path/to/monaco-editor/min/vs/nls/zh-cn.js"></script> ``` 4. 在您的js文件中,添加以下代码: ```javascript monaco.languages.register({ id: 'javascript' }); monaco.languages.setMonarchTokensProvider('javascript', { tokenizer: { root: [] } }); monaco.editor.defineTheme('myTheme', { base: 'vs', inherit: true, rules: [ { token: 'comment', foreground: '008800', fontStyle: 'italic underline' }, { token: 'keyword', foreground: '000088', fontStyle: 'bold' }, { token: 'string', foreground: '880000' } ] }); monaco.editor.create(document.getElementById('container'), { value: [ 'function x() {', '\tconsole.log("Hello world!");', '}' ].join('\n'), language: 'javascript', theme: 'myTheme' }); ``` 5. 在您的js文件中,添加以下代码,将Monaco-editor的右键菜单汉化: ```javascript // 注册右键菜单 monaco.editor.onDidCreateEditor(function (editor) { var menu = new monaco.Menu($('#' + editor._domElement.id + ' .monaco-editor'), { contextMenuProvider: { getContextMenuActions: function (context) { var actions = [ { label: '剪切', id: 'cut', run: function () { document.execCommand('cut'); } }, { label: '复制', id: 'copy', run: function () { document.execCommand('copy'); } }, { label: '粘贴', id: 'paste', run: function () { document.execCommand('paste'); } }, { label: '全选', id: 'selectAll', run: function () { editor.setSelection(editor.getModel().getFullModelRange()); } } ]; return actions; } } }); editor.onContextMenu(function (e) { menu.show(e.event); }); }); ``` 这样,您就可以将Monaco-editor的右键菜单汉化了。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值