javascript - 为什么 modifyNumberUp 切换添加/删除和下一个/上一个
问题描述
注意:我实际上在 MacOS 上的RStudio中偶然发现了这种行为,但我认为它与 Java/JS 有关。
当您将光标放在数字后面时,您可以通过 OPTION + SHIFT + ARROW UP/DOWN(或 CNTRL + SHIFT + ARROW UP/DOWN 用于 Windows。此快捷方式可能会调用键绑定modifyNumberUp
/ modifyNumberDown
。但是,它也会切换单词对add/remove和next/previous。
- 这里发生了什么?它实际上是JS还是其他东西?
- 为什么会这样?什么目的?
- 是否有这样定义的单词列表?
只需将以下内容粘贴到https://ace.c9.io/之类的代码编辑器中,设置光标,然后使用快捷方式。
1
add
next
解决方案
最终,我找到了这种行为的根源。RStudio - 和许多其他编辑器 - 指的是Ace编辑器(它是用 JS 编写的)。
RStudio 使用多个 JavaScript 库,包括 Ace(文本编辑器)和 xterm.js(终端仿真器)
在这个编辑器中,定义了一个函数modifyNumber
。如果输入不是数字,则触发该函数。toggleWord
此函数使用列表toggleWordPairs
在多对之间切换。这些都是:
toggleWordPairs = [
["first", "last"],
["true", "false"],
["yes", "no"],
["width", "height"],
["top", "bottom"],
["right", "left"],
["on", "off"],
["x", "y"],
["get", "set"],
["max", "min"],
["horizontal", "vertical"],
["show", "hide"],
["add", "remove"],
["up", "down"],
["before", "after"],
["even", "odd"],
["in", "out"],
["inside", "outside"],
["next", "previous"],
["increase", "decrease"],
["attach", "detach"],
["&&", "||"],
["==", "!="]
];
推荐阅读
- python - Python Pygame 按键创建一个矩形或任何图形
- java - IndexOutOfBounds:为什么低点一直超过高点
- typescript - 如何编写一个类型保护,它接受一个泛型类型 T 的对象和一个字符串参数,并检查该字符串是否属于 keyof T 类型?
- javascript - 在Angular中将数组从一个组件传递到另一个组件
- python-3.x - AttributeError:模块“tensorflow_core.keras.layers”没有属性“Conv1d”
- javascript - 如何使用 Google Analytics 设置 Reactjs?
- python - 根据另一列特定值用平均值填充 NaN 值
- python - django 和 html 上的 ml 模型
- python-3.x - 向用户数据添加新的 openTypeExtension 的后调用失败,并显示“找不到段'扩展'的资源”
- function - 如何从另一个模块中的函数(方法)中访问变量