• tabstop shiftwidth expandtab


    转一:

     ts           实际的tab键占用的space

    sts:        当敲一个tab键时所占用的space

    shiftwidth 自动缩进的space

    vim有几个关于tab和space的option让我迷惑了一阵子,查手册tabstop是一个tab几个space,softtabstop是当编辑的时候一个tab表现为几个space,shiftwidth是缩进的时候用几个space。怎么设置才合适呢?

    官方给了4个方案.

    1. 保持tabstop是8,把softtabstop和shiftwidth设置成4,再加上noexpandtab,这样呢vim就会把space和tab给混用,但是呈现的时候是4个space。
    2. 把tabstop,shiftwidth设置成同一个值,加上expandtab,这样就会只用space,而不用tab了,这样不管tabstop怎么变样式也不会花了。
    3. 用modeline的方式把tabstop和shiftwidth的设置放在文件里,无论怎样编辑样式都不会花了。
    4. 永远保持tabstop和shiftwidth是同一个值,再加上noexpandtab。

    介于Py3k的Style Changes

    set tabstop=4
    set shiftwidth=4
    set softtabstop=4
    set expandtab

    这样设置应该是比较和谐了。

    转二:

    1 shiftwidth

    这个是用于程序中自动缩进所使用的空白长度指示的。一般来说为了保持程序的美观,和下面的参数最好一致。同时它也是符号移位长度的制定者。

    2 tabstop

    定义tab所等同的空格长度,一般来说最好设置成8,因为如果是其它值的话,可能引起文件在打印之类的场合中看起来很别扭。除非你设置了expandtab模式,也就是把tabs转换成空格,这样的话就不会一起混淆,不过毕竟制表符为8是最常用最普遍的设置,所以一般还是不要改。

    3 softtabstop

    如果我们希望改变程序中的缩进怎么办?shiftwidth和tabstop不一样的话,你会发现程序比较难看的。这时候,softtabstop就起作用了。可以从vim的说明中看到,一旦设置了softtabstop的值时,你按下tab键,插入的是空格和tab制表符的混合,具体如何混合取决于你设定的softtabstop,举个例子,如果设定softtabstop=8, 那么按下tab键,插入的就是正常的一个制表符;如果设定 softtabstop=16,那么插入的就是两个制表符;如果softtabstop=12,那么插入的就是一个制表符加上4个空格;如果softtabstop=4呢?那么一开始,插入的就是4个空格,此时一旦你再按下一次tab,这次的四个空格就会和上次的四个空格组合起来变成一个制表符。换句话说,softtabstop是“逢8空格进1制表符”,前提是你tabstop=8。

    4 关于expandtab

    举个例子,在多人一起开发项目时,为了使代码风格尽量保持一致,一般不允许在代码使用TAB符,而以4个空格代之。我们可以编辑一个文件,包含下面的内容:
    set shiftwidth=4
    set expandtab

    然后把下面的命令加入到.vimrc中:
    autocmd FileType c,cpp set shiftwidth=4 | set expandtab

    就可以只在编辑c和cpp文件时实行这种设置了

    转自:
    https://blog.khsing.net/2008/12/vims-tabstop.html
    http://blog.csdn.net/ludonghai715/article/details/5657712

  • 相关阅读:
    Prometheus组件
    任务和实例
    初识Prometheus
    Prometheus简介【转】
    MySQL定时备份数据库(全库备份)
    lvextend 扩容后, df -h 看到的却还是原来的大小
    修复VSAN无法看到主机磁盘
    RocketMQ 单机部署(单master模式)
    强制找回GitLab管理员账户密码的方法
    php iis 上传图片后401无法访问
  • 原文地址:https://www.cnblogs.com/air-of-code/p/5784759.html
Copyright © 2020-2023  润新知