CodeMirror只读允许粘贴从键盘快捷键和鼠标右键单击的选项



我正在做一个应用程序,将用于教学类的学生使用codemmirror插件。我所遇到的问题是这样的,我不希望学生能够改变我在编辑器中为他们显示的代码,所以我遵循文档,我把readOnly属性设置为true,这确实为他们禁用了打字能力。但是一些聪明的学生发现,他可以粘贴一些东西到编辑器使用CTRL + V或右键单击,并从中选择paste。你知道如何结束这一切吗?

这是一个实例:

    var appCM = CodeMirror.fromTextArea(document.getElementById('app-cm'), {
        mode: 'text/html',
        theme: "monokai",
        styleActiveLine: true,
        lineNumbers: true,
        matchBrackets: true,
        indentUnit: 4,
        indentWithTabs: true,
        autoCloseTags: true,
        autoCloseBrackets: true,
        matchTags: false,
        extraKeys: {
            "Ctrl-Space": "autocomplete",
            "Ctrl-Q": function(appCM) {
                appCM.foldCode(appCM.getCursor());
            }
        },
        foldGutter: true,
        gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter"],
        readOnly: true
    });

我一直在看这个,但是我没有发现任何有用的

这是几天前修复的5.5版本中的一个错误(请参阅此错误报告)。您可以获取当前的开发,手动应用从该问题链接的补丁,或者等待下一个版本。

最新更新