【问题标题】:How to use Codemirror codefolding without "["?如何在没有“[”的情况下使用 Codemirror 代码折叠?
【发布时间】:2017-09-03 11:04:31
【问题描述】:

我想使用 Codemirror 代码折叠来折叠 {} 以及 cmets。我遇到的唯一问题是它还对括号[] 进行了代码折叠。方括号几乎总是一行语句的一部分,我不希望对它们使用代码折叠。我怎样才能防止这种情况发生?

codemirror/addon/fold/brace-fold.js 我尝试注释掉这些行:

if (startCh == null) {
    startToken = "[", endToken = "]";
    startCh = findOpening("[");
  }

但这仍然不能阻止方括号的代码折叠。另外,有什么想法addon/fold/indent-fold.js 做什么?我不确定是否应该包含该文件。

注意 我在 JavaScript 和 PHP 模式下都使用 Codefolding。

编辑

这是Codemirror codefolding的演示。

【问题讨论】:

  • 请在我的 codemirror 实例上提供Minimal, Complete, and Verifiable example.,这很有效。至于缩进折叠,它与大括号折叠相同,但对于缩进,对于缩进标记代码块的语言。
  • 我现在开始工作了。这是一个缓存问题。我排除了缓存的问题,因为我按 F5 刷新清除缓存,当我注释掉 var startToken = "{", endToken = "}", startCh = findOpening("{"); 时,更改立即更新。
  • @Salketer 我无法向自己奖励赏金,所以请您发布答案吗?

标签: javascript php codemirror code-folding codemirror-modes


【解决方案1】:

OP 代码很好。

根据 cmets 的说法,问题来自文件的缓存版本,使得修改看起来好像不起作用。

为防止以后出现此类问题,请注意按 F5 不会清除缓存。您需要使用 ctrl+F5。我使用的另一个不错的选择是在开发人员工具中(我使用 Chrome,但它肯定也存在于其他浏览器中),您可以将浏览器设置为在 devtools 打开时清除缓存。由于在测试您的网站时该选项卡几乎总是打开,这使得缓存问题永远不会发生......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-11
    • 1970-01-01
    • 1970-01-01
    • 2018-01-09
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多