Vim User Manual 阅读笔记 usr_25.txt Editing formatted text 编辑有格式的文本

|25.1| Breaking lines 换行断行

默认情况下,不自动换行

:set textwidth=30

实际没有测试成功

REFORMATTING 重排格式

自动重新排格式 gq 指令,例如

v4jgq 四行重排

整段重排 gqap

全文重拍 gggqG

移动到文首 gg

重排直到文末 gqG

但是没有试验成功:w

加空格就成功了

|25.2| Aligning text 对齐文本

:{range}center/left/right width/margin

按照宽度width 进行 左中右 对齐

|25.3| Indents and tabs 自动缩进

:set autoindent

INCREASING INDENT 增加缩进

>> 增加缩进

:set shiftwidth=4 设置缩进的空格数

4>> 增加四行的缩进

TABSTOP 制表符

设置一个tab等于多少个空格,最好用:

:set softtabstop=4

CHANGING TABS 改变制表符

最好不要改tabstop

|25.4| Dealing with long lines 处理长行

水平滚动条缺省不显示,如果需要添加水平滚动条

:set guioptions+=b

移动视口------实际测试不成功,没有得到超长的行

zh scroll right

4zh scroll four characters right

zH scroll half a window width right

ze scroll right to put the cursor at the end

zl scroll left

4zl scroll four characters left

zL scroll half a window width left

zs scroll left to put the cursor at the start

MOVING WITH WRAP OFF 在自动换行回车的情况下移动

wrap开关关闭的情况下,不滚动文本移动光标

g0 to first visible character in this line

g^ to first non-blank visible character in this line

gm to middle of screen line

gM to middle of the text in this line

g$ to last visible character in this line

BREAKING AT WORDS *edit-no-break* 断词

'nowrap' 的缺点是 无法看全句子

'wrap' 如果打开,则单词可能从中断开

好的方法之一是'linebreak'选项,可以比较好地断开,例如在句子空格处。

MOVING BY VISIBLE LINES 按照可见的行移动

如果长行换行的文字,使用j,k移动移动文本行比较累,可以使用"gj"和"gk", 在文字wrap是,其仅移动屏幕行。可作映射 到方向键。

TURNING A PARAGRAPH INTO ONE LINE *edit-paragraph-join*

把断开的文本合成一行

:g/./,/^$/join

或者

:g/\S/,/^\s*$/join

|25.5| Editing tables 编辑表格或者制表符

编辑表格,可以将光标移动到任何位置进行编辑。 如有必要,编辑器在插入的文本前自动添加空格。

:set virtualedit=all

无法感知空格 或 制表符

COPYING A COLUMN 按列复制

在 virtualedit 状态下 使用Ctrl-V 进入 blockwise Visual mode

复制y, 移动到需要插入地方,插入P

关闭之

:set virtualedit=

VIRTUAL REPLACE MODE

表格中 r 编辑可能导致紊乱,用 gr,确保新加字符占用右边单元格,右侧插入空格或制表符,以保持位置。

类似地,用R的,以 gR 替代较好

相关推荐
kebidaixu19 小时前
BCU 平台 RS485 驱动适配:从 THVD1406 到 ISO3082
linux
闪闪发亮的小星星21 小时前
开普勒三大定律
笔记
谢平康1 天前
解决用 rm 报bash: /usr/bin/rm: Argument list too long错
linux·运维·运维开发
自传.1 天前
尚硅谷 Vibe Coding|第一章 AI 编程基础理论 学习笔记
笔记·学习·尚硅谷·vibe coding
hj2862511 天前
Linux 网络服务综合笔记(概念 + 命令 + 实操案例)2
linux·运维·网络
what_20181 天前
Linux 磁盘 (查看、划分、inode)
linux·运维·服务器
2739920291 天前
GDB调试(Linux)
linux
chase。1 天前
【学习笔记】SimpleVLA-RL:通过强化学习扩展 VLA 训练
笔记·学习
凡人叶枫1 天前
Effective C++ 条款23:宁以 non-member、non-friend 替换 member 函数
linux·开发语言·c++·嵌入式开发
不会C语言的男孩1 天前
Linux 系统编程 · 第 4 章:文件属性与元数据
linux·c语言·开发语言