Nano Hash - криптовалюты, майнинг, программирование

CodeMirror readOnly разрешает вставку с помощью сочетания клавиш и опции щелчка правой кнопкой мыши

Я делаю приложение, которое будет служить для обучения студентов с помощью плагина codemirror. Проблема, которая у меня есть, заключается в следующем: я не хочу, чтобы студенты могли изменять код, который я отображаю для них в редакторе, поэтому я следовал документации и установил для свойства 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
    });

Я читал это, но я не нашел ничего полезного

25.07.2015

  • Я проверил это на Chrome и IE11, и Paste там не работало. Какой у вас браузер? 27.07.2015

Ответы:


1

Это ошибка в версии 5.5, которая была исправлена ​​несколько дней назад (см. этот отчет об ошибке). ). Вы можете получить текущую разработку, вручную применить патч, связанный с этой проблемой, или дождаться следующего выпуска.

28.07.2015
  • Каковы ваши предпочтительные методы использования библиотеки? Можно ли использовать их напрямую с codemirror.net? Всегда ли файлы *.cs на codemirror.net являются текущими? 28.07.2015
  • Нет, определенно не делайте горячую ссылку на codemirror.net. Загрузите zip-архив или используйте npm. 28.07.2015
  • это интересно, если у меня есть простой простой экземпляр, просто чтобы проверить, что вставка не работает, но если у меня есть больше функциональности для экземпляра codemirror, он работает даже с readOnly, вы думаете, что эта ошибка была своего рода выборочной? и это исправление исправит это, чтобы всегда запрещать вставку? 28.07.2015
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..