VIM中设置php自动缩进为4个空格的方法详解

代码自然少不了文本编辑利器vim,自动缩进是用制表符的,即便自己删掉制表符改成4个空格,也会在下一层次缩进中继续用制表符,这就造成了空格和制表符混用

可以修改、etc/vimrc的信息:

其中相关变量含义:
     变量名     缩写      含义
(no)autoindent  ai   自动缩进,即为新行自动添加与当前行同等的缩进。
(no)cindent     ci   类似C语言程序的缩进
(no)smartindent si   基于autoindent的一些改进 

     变量名   缩写        含义
tabstop=X     ts      编辑时一个TAB字符占多少个空格的位置。
shiftwidth=X  sw       使用每层缩进的空格数。
(no)expandtab (no)et  是否将输入的TAB自动展开成空格。开启后要输入TAB,需要Ctrl-V<TAB>
softtabstop=X sts      方便在开启了et后使用退格(backspace)键,每次退格将删除X个空格
(no)smarttab  (no)sta 开启时,在行首按TAB将加入sw个空格,否则加入ts个空格。

(0)

相关推荐

  • Vim命令高级用法

    1.启动-R  只读方式打开,但打开后如果有权限,可以强制执行保存.-c (command) 加载后执行命令,比如"vim -c /most myfirst" 打开该文件后直接向后搜索most.更多的可以参考 -h 2.同时编辑多个文件vim [file1] [file2] ... 此时 :ar 查看当前编辑的文件名 :n  切换当前编辑的文件 另外还有 :e  切换到新文件 :w  读取已存在的文件并将其内容放入正在编辑的文件中 :w [起始行][终结行] [文件名]  将当前文件部

  • Python开发如何在ubuntu 15.10 上配置vim

    1,安装vim,你可以使用ubuntu 自带的apt-get 工具安装. apt-get install vim-gnome 2,安装成功后,进行配置 1>首先进行自动提示补全的配置(pydiction) 从官方上下载http://www.vim.org/scripts/script.php?script_id=850最新的即可,解压缩后,进入解压缩后的目录,执行如下命令 # cp python_pydiction.vim /usr/share/vim/vim74/ftplugin # mkdi

  • 手把手教你将Vim改装成一个IDE编程环境(图文) 吴垠

    By: 吴垠 Date: 2007-09-07 Version: 0.5 Email: lazy.fox.wu#gmail.com Homepage: http://blog.csdn.net/wooin Copyright: 该文章版权由吴垠和他可爱的老婆小包子所有.可在非商业目的下任意传播和复制.对于商业目的下对本文的任何行为需经作者同意. 联系方式:lazy.fox.wu#gmail.com 1 写在前面 Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人

  • 你可能不知道的Vim使用小技巧

    一.用拷贝的内容替换 当发生拼写错误或者想要重命名标识符时,就需要用拷贝的内容来替换当前的名字.比如调用函数时写错了: void letus_fuckit_with_vim(){ cout<<"great!"; } let_fuckat_with_vom(); 只需要先复制上面的函数名,再把光标切换到拼错的词首.然后按下viwp,就替换过来了: void letus_fuckit_with_vim(){ cout<<"great!"; } l

  • Python 自动补全(vim)

    一.vim python自动补全插件:pydiction 可以实现下面python代码的自动补全: 1.简单python关键词补全 2.python 函数补全带括号 3.python 模块补全 4.python 模块内函数,变量补全 5.from module import sub-module 补全 想为vim启动自动补全需要下载插件,地址如下: http://vim.sourceforge.net/scripts/script.php?script_id=850 https://github

  • ruby开发vim插件小结

    在开始编写插件之前,你需要确认 Vim 是否支持 Ruby,通过以下命令来判别: $ vim --version | grep +ruby 如果输出为空,则表示你当前的vim不支持Ruby,需要重新编译一下,并启用对Ruby的支持. 顺便说下我当前的环境是: vim 7.4 ruby 2.1.0 环境检查没有问题那么就开始吧. 在~/.vim/plugin目录下创建一个 demo.vim 文件. 在开头写上以下代码: if !has('ruby') echo "Error: Required v

  • 搭建Vim为自定义的PHP开发工具的一些技巧

    虽然 vim 本质上只是一个编辑器.但只要配合一些适当的插件, vim 也能变成一个全功能的 IDE .笔者使用 vim 已经有挺长一段时间了,经过反复的试验,配置了一个高效的 PHP 开发环境,实为居家旅行.谋财害命.杀人越货必备之良品. 安装 vim 鉴于大多数读者都是使用Windows 环境,所以本文就以 Windows 作为运行环境.不过由于 vim 出色的跨平台特性,配置文件只需简单修改就可以在 Linux 版本的 vim 中使用. 目前 vim 的最新版本是 7.2 ,如果没有特别原

  • linux系统中使用Vim删除偶数行或者奇数行

    删除偶数行的方法如下: :g/^/+1 d 上面用到了:gbobal命令,gbobal命令格式如下: :[range]global/{pattern}/{command} global命令实际上是分成两步执行:首先扫描[range]指定范围内的所有行,给匹配{pattern}的行打上标记:然后依次对打有标记的行执行{command}命令,如果被标记的行在对之前匹配行的命令操作中被删除.移动或合并,则其标记自动消失,而不对该行执行{command}命令.{command}可以是一个ex命令,也可以

  • PHP语法自动检查的Vim插件

    由于最近写PHP比较多,偶尔手误少写个分号之类的语法错误难免,一般的检查方式是回到命令行运行 php -l ,或者升级一下直接在Vim里运行 :!php -l % ,或者再将此绑定为快捷键,如 :map <F5> :!php -l %<CR> ,每当按F5便可立即执行语法检查.但还是觉得略有不爽,因为很多IDE是实时检查的,语法错误会提示在代码行的旁边.虽然实时检查未必有必要,但自动检查要比手动检查方便的多,比如在php文件保存时自动执行检查. 于是写了这个 phpcheck.vi

  • VIM中设置php自动缩进为4个空格的方法详解

    代码自然少不了文本编辑利器vim,自动缩进是用制表符的,即便自己删掉制表符改成4个空格,也会在下一层次缩进中继续用制表符,这就造成了空格和制表符混用 可以修改.etc/vimrc的信息: 其中相关变量含义:     变量名     缩写      含义 (no)autoindent  ai   自动缩进,即为新行自动添加与当前行同等的缩进. (no)cindent     ci   类似C语言程序的缩进 (no)smartindent si   基于autoindent的一些改进      变量

  • C++中可以接受任意多个参数的函数定义方法(详解)

    能够接受任意多个参数的函数,可以利用重载来实现.这种函数的执行过程类似于递归调用,所以必须要有递归终止条件. #include <iostream> #include <bitset> void print() {} // 递归终止条件.这是必需的. template<typename Type, typename... Types> void print(const Type& arg, const Types&... args) { std::cou

  • 对Python中的条件判断、循环以及循环的终止方法详解

    条件判断 条件语句是用来判断给定条件是否满足,并根据判断所得结果从而决定所要执行的操作,通常的逻辑思路如下图: 单次判断 形式 if <判断条件>: <执行> else: <执行> 例子 age = int(input("输入你的年龄:")) if age < 18: print("未成年") else: print("已成年") 多次判断 形式 if <判断条件1>: <执行1>

  • C++中使用function和bind绑定类成员函数的方法详解

    定义一个普通的类 class Test1{ public: void fun(int val){ cout<<"hello world "<<val<<endl; } }; 开始第一个测试 int main(){ Test1 t; function<void(int)> pf = std::bind(&Test1::fun,t,2); pf(4); // return 0; } 输出的值是2,说明pf传进去的4并没有什么用,在bi

  • Android开发中使用Intent打开第三方应用及验证可用性的方法详解

    本文实例讲述了Android开发中使用Intent打开第三方应用及验证可用性的方法.分享给大家供大家参考,具体如下: Android中提供了Intent机制来协助应用间的交互与通讯.可作为不同组件之间通讯的媒介完成应用之间的交互.这里讨论一下针对Intent打开第三方应用的相关操作. 本文主要记录: ① 使用 Intent 打开第三方应用或指定 Activity 的三种方式 ② 使用上面三种方式时分别如何判断该 Intent 能否被解析 ③ 判断该 Intent 能否被解析中可能出现的遗漏 基础

  • Java去除字符串中空格的方法详解

    昨天写了一个关于Excel文件处理的脚本,在字符串匹配功能上总是出现多余不正确的匹配,debug调试之后,发现一个坑. ------->代码中字符串使用了replaceAll()方法,去除了所有空格(其中包括:首尾空格.中间空格) 遂整理下java关于字符串去除空格的方法. 1.方法分类 str.trim(); //去掉首尾空格 str.replace(" ",""); //去除所有空格,包括首尾.中间 str.replaceAll(" "

  • iOS中使用NSProgress类来创建UI进度条的方法详解

    一.引言 在iOS7之前,系统一直没有提供一个完整的框架来描述任务进度相关的功能.这使得在开发中进行耗时任务进度的监听将什么麻烦,在iOS7之后,系统提供了NSProgress类来专门报告任务进度. 二.创建单任务进度监听器 单任务进度的监听是NSProgress最简单的一种运用场景,我们来用定时器模拟一个耗时任务,示例代码如下: @interface ViewController () { NSProgress * progress; } @end @implementation ViewCo

  • C语言中判断int,long型等变量是否赋值的方法详解

    当然,如果你不赋值给局部变量,这样会导致整个程序的崩溃,因为,它的内容被系统指向了垃圾内存.下面我们看一段代码: 复制代码 代码如下: #include <stdio.h>#include <string.h>#include <stdlib.h>int globle_value;int my_sum(int value1, int value2);long my_sub(long value1, long value2);int main(void){ int aut

  • MySQL设置global变量和session变量的两种方法详解

    1.在MySQL中要修改全局(global)变量,有两种方法: 方法一,修改my.ini配置文件,如果要设置全局变量最简单的方式是在my.ini文件中直接写入变量配置,如下图所示.重启数据库服务就可以使全局变量生效. 我们打开几个mysql命令行,可以看到所有会话中的变量都生效了,如图 方法二,在不修改配置文件的基础上,使用关键字global设置全局变量 set global autocommit=1; 将autocommit变量的值设置为ON 需要注意的是,使用此方法对global全局变量的设

  • oracle中去掉回车换行空格的方法详解

    去除换行update zhzl_address t set t.add_administration_num=replace(t.add_administration_num,chr(10),'');去掉回车update zhzl_address t set t.add_administration_num=replace(t.add_administration_num,chr(13),'');去掉空格update zhzl_address t set t.add_administration

随机推荐