vim格式化代码实际上就是 "缩进代码", 命令是等号=

格式化就是 vim 根据 文件的类型, 自动的对代码进行 缩进

缩进的类型有多种, 都是用等号命令: =

  1. 全部格式化 : gg=G
  2. 对当前行格式化(缩进): ==
  3. 对以下多行格式化(倍数操作): [count] ==
  4. 选择多行后, 执行 等号命令 =

vim的插件管理有 pathogen['p2s2dg2n], (病原体, 微生物)和vundle. 而pathogen的主要作用是 将 一个插件所包含的所有内容位置 统一的放在一个目录中, 而不至于再删除的时候, 到处去寻找跟插件相关的内容. 但是 pathogen 没有自动查找搜索插件的功能. 而现在, 实际上, vundle也具有 集中放置插件的功能了. 所以, 基本上都不用pathogen而用vundle了.

shift和unshift:

shift是 队列数组 移位移出, 从数组中去除该元素, 同时返回该元素的值.

而unshift则是 在数组的 开头插入元素.


关于vim中的tab宽度

shiftwidth shift是移位, 代码移位, 代码缩进, (是上面的代码向左移位, 因此下面的代码向右缩进),

参考:http://blog.csdn.net/langxianwenye/article/details/17223807http://blog.csdn.net/shell_picker/article/details/6033023http://blog.csdn.net/feiyangyangfei/article/details/17630619

tabstop是指tab键表示的空格的长度. 默认 的是8. set ts=4. (ts: tabstop) 只是显示的效果问题, 跟程序的编辑和显示问题 其实是 没有关系的!

真正会对程序中的内容, 缩进格式等产生影响的是: softtabstop, 和 shiftwidth:

softtabstop: 软tab站, 是指在软件编辑的过程中(如插入tab, 删除一个tab 的时候)所经过的长度.

而shiftwidth 则是控制 换行时的缩进 距离和长度, (即每一级的缩进长度), 这个shiftwidth 是控制 "格式化"命令时, 每一行缩进的长度.

而smarttab则是 "会忽略前面的设置", 而自己根据上文的缩进来决定 该行的 缩进距离和长度.???

所以, 为了省心, 可以把上面的三者设置成一样的, 通常都设置为4.

expandtab是将tab扩展为空格.(因为在某些编程中, 为了编程风格的一致性, 要求不使用tab, 只使用空格)

noexpandtab 则是相反的.

set %retab! %是范围, 表示全部, retab: reply tab(或者 重新tab一次), !表示对所有非空白字符后的tab都retab一次, 如果不加!,则只处理行首的TAB. 这个对set expandtab/ noexpandtab都有效!


vim中的映射命令,有的有冒号, 有的没有冒号?

如: **要设置NerdTree的显示/关闭切换的映射命令是 nmap <F4> :NERDTreeToggle<CR> , 这里要不要冒号, 是根据你 的映射命令的操作模式来决定的, 如果你要映射的是在 命令行模式下执行的 就要加冒号. 最后的cr是在命令行模式下必须加的, 你不回车就不会执行.

rove和rave的区别?

rave是 "怒吼, 咆哮, 大喊大叫, 狂欢" == rant. do not rant and rave or throw tea cups.

rove是: 倘佯, 游荡,闲逛的意思, 也是 "land rove" 罗孚--陆虎的牌子.

vim格式化代码实际上就是 "缩进代码", 命令是等号=的更多相关文章

  1. [VIM] 格式化代码

    快速使用vim格式化代码 在vim的编辑模式i下直接ESC退出道命令模式之后直接敲入如下命令: gg=G        将全部代码格式化 nG=mG    将第n行到第m行的代码格式化 注:如果ESC ...

  2. 如何通过VIM把代码格式化后生成HTML网页代码

    本文转自http://wangxiaoyu.blog.51cto.com/922065/203471 需求及思路:演示需要,需要网站上嵌入一些代码,我的建议做法是根据代码文件,生成相应的HTML代码, ...

  3. 在vim中使用perltidy美化perl代码

    来源: http://www.cnblogs.com/itech/archive/2013/02/18/2915279.html 格式优美的perl代码不但让人赏心悦目,而且可以方便阅读. perlt ...

  4. vim中凝视多行python代码

    在vim中凝视多行python代码比較麻烦,主要由下面几种方法: (1)将须要凝视的代码以文档字符串的形式呈现 (2)将须要凝视的代码以函数的形式呈现 (3)使用vim自身快捷键 我们主要使用第三种方 ...

  5. 让Eclipse不格式化数组或某段代码

    用过eclipse ctrl+shit+f的人肯定都感觉eclipse这个功能很爽. 但对于数组,有时候就不是这样了. 比如在opengl中定义一些顶点信息: int one = 0x010000; ...

  6. VS2013使用滚动条缩略图、双击选中高亮、配色方案、代码竖虚线(缩进标尺)

    1.双击代码或选中代码高亮,用以下插件,反应很灵敏,我安装的是第三个 2.代码编辑器的滚动条缩略图是VS自带的,需要打开菜单----工具----选项,如下图设置: 3.VS默认的选中颜色,需要打开菜单 ...

  7. 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块,python的代码块可以提升整体的整齐度,提高开发效率

    # ### 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块 if 5 == 5: print(1) print(2) if True: print(3) print(4) if Fa ...

  8. Android 当修改一些代码时,使用什么编译命令可以最有效率

    前言          欢迎大家我分享和推荐好用的代码段~~ 声明          欢迎转载,但请保留文章原始出处:          CSDN:http://www.csdn.net        ...

  9. 工欲善其事 之 Web 前端调试工具格式化混淆过的 JS 代码

    工欲善其事 之 Web 前端调试工具格式化混淆过的 JS 代码 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致&q ...

随机推荐

  1. JavaScript错误/异常处理

    JavaScript Try...Catch 语句 介绍:JavaScript中的try...carch语句的作用和C#中的try...catch语句的作用一样, 都是捕获并处理异常. 语法: try ...

  2. Jsoup系列学习(2)-解析html文件

    解析html文件 1.当我们通过发送http请求时,有时候返回结果是一个html格式字符串,你需要从一个网站获取和解析一个HTML文档,并查找其中的相关数据.你可以使用下面解决方法: 使用 Jsoup ...

  3. 约瑟夫问题(java实现)

    方法一.自定义的链表实现 package com.code.yuesefu; public class YueSeFuList { public static void main(String[] a ...

  4. 安装Oracle 10g

    本文仅用于学习交流,商业用途请支持正版!转载请注明: http://www.cnblogs.com/mxbs/p/6217052.html 准备: Oracle 10g for Win(32-Bit) ...

  5. 机器学习之sklearn——SVM

    sklearn包对于SVM可输出支持向量,以及其系数和数目: print '支持向量的数目: ', clf.n_support_ print '支持向量的系数: ', clf.dual_coef_ p ...

  6. 解读ASP.NET 5 & MVC6系列(16):自定义View视图文件查找逻辑

    之前MVC5和之前的版本中,我们要想对View文件的路径进行控制的话,则必须要对IViewEngine接口的FindPartialView或FindView方法进行重写,所有的视图引擎都继承于该IVi ...

  7. 微信小程序-多级联动

    微信小程序中的多级联动 这里用到的案例是城市选择器 先上代码: .wxml <view class="{{boxHide}}"> <view>{{nian} ...

  8. [LeetCode] Longest Repeating Character Replacement 最长重复字符置换

    Given a string that consists of only uppercase English letters, you can replace any letter in the st ...

  9. [开源].NET高性能框架Chloe.ORM-完美支持SQLite

    扯淡 这是一款轻量.高效的.NET C#数据库访问框架(ORM).查询接口借鉴 Linq(但不支持 Linq).借助 lambda 表达式,可以完全用面向对象的方式就能轻松执行多表连接查询.分组查询. ...

  10. 【VS】vs修改大小写快捷键

    选中一段英文 改成小写:Ctrl+U 改成大写:Ctrl+Shift+U