• 笙默考试管理系统-MyExamTest----codemirror(22)


    笙默考试管理系统-MyExamTest----codemirror(22

    目录

    一、 笙默考试管理系统-MyExamTest

    二、 笙默考试管理系统-MyExamTest

    三、 笙默考试管理系统-MyExamTest

    四、 笙默考试管理系统-MyExamTest

    五、 笙默考试管理系统-MyExamTest

    • 笙默考试管理系统-MyExamTest

      return {line: line, ch: ch};

            }

            function moveH(dir, unit) {

                var pos = dir < 0 ? sel.from : sel.to;

                if (shiftSelecting || posEq(sel.from, sel.to)) pos = findPosH(dir, unit);

                setCursor(pos.line, pos.ch, true);

            }

    • 笙默考试管理系统-MyExamTest

            function deleteH(dir, unit) {

                if (!posEq(sel.from, sel.to)) replaceRange("", sel.from, sel.to);

                else if (dir < 0) replaceRange("", findPosH(dir, unit), sel.to);

                else replaceRange("", sel.from, findPosH(dir, unit));

                userSelChange = true;

            }

            var goalColumn = null;

            function moveV(dir, unit) {

                var dist = 0, pos = localCoords(sel.inverted ? sel.from : sel.to, true);

                if (goalColumn != null) pos.x = goalColumn;

                if (unit == "page") dist = scroller.clientHeight;

                else if (unit == "line") dist = textHeight();

                var target = coordsChar(pos.x, pos.y + dist * dir + 2);

                setCursor(target.line, target.ch, true);

                goalColumn = pos.x;

            }

    • 笙默考试管理系统-MyExamTest

            function selectWordAt(pos) {

                var line = getLine(pos.line).text;

                var start = pos.ch, end = pos.ch;

                while (start > 0 && isWordChar(line.charAt(start - 1))) --start;

                while (end < line.length && isWordChar(line.charAt(end))) ++end;

                setSelectionUser({line: pos.line, ch: start}, {line: pos.line, ch: end});

            }

            function selectLine(line) {

                setSelectionUser({line: line, ch: 0}, {line: line, ch: getLine(line).text.length});

            }

            function indentSelected(mode) {

                if (posEq(sel.from, sel.to)) return indentLine(sel.from.line, mode);

                var e = sel.to.line - (sel.to.ch ? 0 : 1);

                for (var i = sel.from.line; i <= e; ++i) indentLine(i, mode);

            }

    • 笙默考试管理系统-MyExamTest

            function indentLine(n, how) {

                if (!how) how = "add";

                if (how == "smart") {

                    if (!mode.indent) how = "prev";

                    else var state = getStateBefore(n);

                }

    • 笙默考试管理系统-MyExamTest

                var line = getLine(n), curSpace = line.indentation(options.tabSize),

                    curSpaceString = line.text.match(/^\s*/)[0], indentation;

                if (how == "prev") {

                    if (n) indentation = getLine(n-1).indentation(options.tabSize);

                    else indentation = 0;

  • 相关阅读:
    雪花算法详解(原理优缺点及代码实现)
    Kotlin协程:续体、续体拦截器、调度器
    Unity 将是驱动 C# 增长的引擎吗 ?
    如何防范各类联属欺诈?
    读书会丨如何才能不做情绪的人质?
    同花顺_代码解析_五彩K线
    11.4商业伦理(全)
    力扣HOT100 - 199. 二叉树的右视图
    移动端实现HTML5 mp3录音踩坑指南:系统播放音量变小、一些机型录音断断续续 之 MediaRecorder和AudioWorklet的终极对决
    约数个数定理
  • 原文地址:https://blog.csdn.net/N201871643/article/details/132994705