Atom Editor - 如何 select 带有多光标的矩形
Atom Editor - How to select rectangle with multi cursor
我很喜欢Notepad++的一个功能,按Alt
然后用鼠标选中可以选出一个矩形选区,就像桌面上的选区一样。。。想不出合适的词来形容,也许 rectangular selection
或 vertical selection
或 block selection
。很酷的是它还可以处理空行结尾,它会自动生成空格。
Atom 中是否有类似的功能?
例如,一个用例是使用 tree
命令提取文件列表:
.
├── element_portals_commands
│ ├── depends.txt
│ └── init.lua
├── element_portals_functional
│ ├── portal_data_api.lua
├── liquid_portals
│ ├── constants.lua
│ ├── crafts.lua
│ ├── depends.txt
│ ├── sounds
│ │ └── fireball_whoosh.ogg
│ └── textures
│ ├── ray_y_tile.png
│ └── README.md
.......
将多光标置于固定宽度(每行的最后一个|
代表光标)
. |
├── element_portals_commands |
│ ├── depends.txt |
│ └── init.lua |
................
│ ├── sounds |
│ │ └── fireball_whoosh.ogg |
│ └── textures |
│ ├── ray_y_tile.png |
│ └── README.md |
.......
然后开始输入
. <- |
├── element_portals_commands <- |
│ ├── depends.txt <- |
│ └── init.lua <- |
................
│ ├── sounds <- |
│ │ └── fireball_whoosh.ogg <- |
│ └── textures <- |
│ ├── ray_y_tile.png <- |
│ └── README.md <- |
.......
我现在做什么来实现这个:
- 查找行尾
\r
或 \n
并替换为大量空格 \n
- 然后Ctrl + 点击我的出路。
- 插入一个字符。
- Trim行尾。
我相信有更好的方法。没有任何插件是可能的吗?你知道另一种选择吗?
更新:
一些进一步的研究表明
Add selection below alt+shift+↓
在当前光标下方放置另一个光标...但它不会用空格填充行。存在也可以填充线条的东西吗?
首先,根据official site of Notepad++,此功能称为栏模式编辑。
在 Atom 中有一个插件可以做类似的事情,但遗憾的是,如果该行不够长,它只会跳行,而不是填充 space。这是插件:
今天我在 Atom 中发现了一个名为“column-select”的包。到目前为止,它工作得很好。他们的工作方式非常接近 Rstudio 和 Kate 的 Block selection 的实现。
不加space补缺。如果那里有任何东西,它实际上让你 select 垂直(跳过空行和没有足够长度的行)。
来自他们 github 的以下 gif 显示了它是如何工作的:
如果你想select atom中的一个矩形区域,你所要做的就是首先通过select输入一些文本来设置水平尺寸,然后通过按住CTL-SHIFT来设置垂直尺寸然后按向上或向下箭头。或者,您可以反过来执行此操作,首先使用 CTL-SHIFT 设置垂直尺寸,然后放开 CTL 但保持按住 SHIFT,然后使用向右或向左箭头 select 水平尺寸。
我很喜欢Notepad++的一个功能,按Alt
然后用鼠标选中可以选出一个矩形选区,就像桌面上的选区一样。。。想不出合适的词来形容,也许 rectangular selection
或 vertical selection
或 block selection
。很酷的是它还可以处理空行结尾,它会自动生成空格。
Atom 中是否有类似的功能?
例如,一个用例是使用 tree
命令提取文件列表:
.
├── element_portals_commands
│ ├── depends.txt
│ └── init.lua
├── element_portals_functional
│ ├── portal_data_api.lua
├── liquid_portals
│ ├── constants.lua
│ ├── crafts.lua
│ ├── depends.txt
│ ├── sounds
│ │ └── fireball_whoosh.ogg
│ └── textures
│ ├── ray_y_tile.png
│ └── README.md
.......
将多光标置于固定宽度(每行的最后一个|
代表光标)
. |
├── element_portals_commands |
│ ├── depends.txt |
│ └── init.lua |
................
│ ├── sounds |
│ │ └── fireball_whoosh.ogg |
│ └── textures |
│ ├── ray_y_tile.png |
│ └── README.md |
.......
然后开始输入
. <- |
├── element_portals_commands <- |
│ ├── depends.txt <- |
│ └── init.lua <- |
................
│ ├── sounds <- |
│ │ └── fireball_whoosh.ogg <- |
│ └── textures <- |
│ ├── ray_y_tile.png <- |
│ └── README.md <- |
.......
我现在做什么来实现这个:
- 查找行尾
\r
或\n
并替换为大量空格 \n
- 然后Ctrl + 点击我的出路。
- 插入一个字符。
- Trim行尾。
我相信有更好的方法。没有任何插件是可能的吗?你知道另一种选择吗?
更新:
一些进一步的研究表明
Add selection below alt+shift+↓
在当前光标下方放置另一个光标...但它不会用空格填充行。存在也可以填充线条的东西吗?
首先,根据official site of Notepad++,此功能称为栏模式编辑。
在 Atom 中有一个插件可以做类似的事情,但遗憾的是,如果该行不够长,它只会跳行,而不是填充 space。这是插件:
今天我在 Atom 中发现了一个名为“column-select”的包。到目前为止,它工作得很好。他们的工作方式非常接近 Rstudio 和 Kate 的 Block selection 的实现。
不加space补缺。如果那里有任何东西,它实际上让你 select 垂直(跳过空行和没有足够长度的行)。
来自他们 github 的以下 gif 显示了它是如何工作的:
如果你想select atom中的一个矩形区域,你所要做的就是首先通过select输入一些文本来设置水平尺寸,然后通过按住CTL-SHIFT来设置垂直尺寸然后按向上或向下箭头。或者,您可以反过来执行此操作,首先使用 CTL-SHIFT 设置垂直尺寸,然后放开 CTL 但保持按住 SHIFT,然后使用向右或向左箭头 select 水平尺寸。