oeasy教您玩转vim - 26 - 缩进设置

缩进设置

回忆上节课内容🤔

  • 这次了解了颜色的细节

  • 设置 256 色模式

    • :set t_Co=256
  • 然后确定了具体的各种颜色

  • 还可以生成网页 :TOhtml

  • 还有什么好玩的么?🤔

图片描述
image.gif

缩进设置

图片描述
image.gif
  • 在正常模式下

    • 使用 << 可以向前缩进
    • 使用 >> 可以向后缩进
    • = 可以让当前行自动缩进
  • 使用 g g = G

    • 可以从头自动缩进到结尾
  • 这超爽🤪

显示缩进

  • 我们编程的时候会遇到缩进

    • 这缩进究竟是 空格 呢?还是 tab 呢?
    • 要把 空格tab 区别开来
  • :set list 使得列表生效

    • tab 会被显示为 ^I
    • 行尾会显示 $
图片描述
image.gif
  • :set nolist 使得列表失效

    • tab 会被显示为空格缩进
图片描述
image.gif
  • 但是好像缩进看起来只有两格了
  • 与实际不符
  • 能修改么?

定制 tab 显示

  • 把特殊字符作为 listchars 组显示出来

  • :set listchars

  • 设置 listchars

  • :set listchars=eol:$,tab:>-,space:_

    • tab 对应 >-
    • > 是开头
    • - 在后面补位
图片描述
image.gif
  • space 对应 _
  • eol 对应 $
  • :h listchars可以查看相关手册

空格颜色

  • :hi SpecialKey ctermfg=DarkRed guifg=grey70

    • 设置 listchars 相应的颜色
    • 设置得特殊一点
图片描述
image.gif

最终效果

图片描述
image.gif
  • 建议统一能用 tab 的时候就用 tab
  • 减小文件容量
图片描述
image.gif

基础

  • shiftwidth值是整个缩进的基础

  • :set shiftwidth=4

    • shiftwidth 是一个基础的值,对应
    • 按下 >> 缩进的宽度
    • 按下 tab 缩进的宽度
    • 退格或者删除 \t 时缩进的宽度
  • 一般 tabstopsofttabstop 都与他相同

    • 一般都是 4
    • 如果 shiftwidth 是 0 的话
    • 就按照 tabstop

解释 tab 宽度

  • tabstop读取文件 时用到的
  • 读到 \t 字符时
  • 解释他对应多少个空格的宽度
  • 一般都是 4 个空格
图片描述
image.gif

softtabstop 处理空格的数量

  • 如果 softtabstop 等于 0

    • 特性取消,一切按照 tabstop
  • 如果 tabstop=4softtabstop=8

    • 按下 tab 时

      • 一次插入 8 个位置
      • 看起来像插了两个 tab
    • 要删除 tab 时

      • 1 次删除空格 8 个
      • 看起来像删了两个 tab
    • 可以试试,能看出来

  • 当他是负数的时候 shiftwidth 起作用

  • 所以说 shiftwidth 是基础

图片描述
image.gif

扩展 tab

  • :set expandtab

    • 可以把输入的 tab 变成空格
  • 设置好之后,在正常模式下

    • 或者在插入模式下 tab 的时候
    • 都看不到 >---,而是直接变成空格 _
  • 反之 :set noexpandtab 之后

    • 插入的 tab 都还是 >---
  • :h expandtab 可以查看相关手册

    • expandtab 可以简写为 et
图片描述
image.gif
  • 那已经存在的tab怎么办呢?

强制拓展

  • :retab!
  • 把已经存在的 tab 强制扩展成为空格
图片描述
image.gif
  • 转过去之后
  • 没有转回来的命令
  • 慎重吧
  • 我觉得tab挺好的

回车之后自动缩进

  • :set autoindent

    • 可以简写为 :set ai
    • 添加与上一行一致的缩进
    • 取消为 :se noai
  • :set smartindent

    • 简写为 :se si
    • autoindent 的基础上根据 {} 来调整本行缩进
    • 取消为 :se nosi
    • 需要保证 :se nopaste
  • :set cindent

    • 根据类似于 c、java 的代码动态调节缩进
    • 见到 if 之类的可以自动缩进
    • 取消为 :set nocindent
图片描述
image.gif

整体设定为

  • :set noexpandtab
  • :set shiftwidth = 4
  • :set tabstop =4
  • :set softtabstop=4
  • :set autoindent
  • 简写为 :set noet sw=4 ts=4 sts=4 ai
  • 这都个人喜好
  • 没有绝对规定

总结

  • 这次了解了缩进的各种方式

  • 正常模式下用 << 缩进

  • 插入模式下用 tab 缩进

  • 有关于缩进对应空格数的参数

    • expandtab
    • shiftwidth
    • tabstop
    • softtabstop
    • autoindent
  • 不同的文件类型可以对应不同的缩进吗??🤔

    • python、java缩进4个
    • html、css可以缩进2个
  • 下次再说 👋

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,980评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,422评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,130评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,553评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,408评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,326评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,720评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,373评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,678评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,722评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,486评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,335评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,738评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,283评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,692评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,893评论 2 335

推荐阅读更多精彩内容