一个常识:

基本上vim插件的配置文集都是放在对应插件目录 的/autoload/ plugin_name.vim 文件中的

有四个必要/必须的插件,实现vim完全的字符界面的编程:

NERDTree, snipMate(自动补全, 超级tab)

最重要的是两个: ctags(支持php的), Taglist.

==============================================

.vim/bundle是一个容器, 所有的 有关vim的插件都放在 bundle目录中,

而 vundle只不过是 bundle 目录下众多 插件中的一个 而已.

每个插件都有一个单独的目录, 不可能都放在bundle目录下 "散起" 吧.

每个插件目录的内容都差不多: 包括.git(仓库核心), autoload, syntax等.

可以固定一下("套路") vim的统一插件管理目录: ~/.vim/ vimrc + /bundle/vundle, other-plugins-directories.

git 安装vundle:

=======================================================

ctags是darren hibert写的, ex'uberant ctags, version=5.8

它是一个命令行工具(好像linux下的工具都是lines方式, 只为实现丰富厉害的功能, 根本就不愿去gui)

ctags [options] [files]

options:

-R : this let you not need specify files to be ctags any more.

--format: 1 :simple format, 2: extended format.

--sort=[1]/0: let you decide whether tags created by ctags are sorted or not.

关于vim内ctags标签的跳转? 在标签上(如函数名)上按 Ctrl+], 会跳转到关键字 定义的地方... 然而往回跳转, 则是Ctrl+o 则是vim自己就带有的功能!! 而且这个ctrl+o不但可以往回跳转一次,还可以往回跳转很多次, 因为在~/.viminfo中就记录了 jumplist 跳转列表:

而且.viminfo中, 还记录了10个 (从'0, 到'9) file marks 文件标记:是指 文件最后关闭时光标所在的位置. 你可以使用'0到'9来追溯原来的位置, 如果不可以, 则用 '. 或`. 据说 '0保存的是全局的最后编辑的那个文件 离开时的光标位置...

http://blog.csdn.net/darennet/article/details/44340491

vimrc的配置文件可以放在多个位置, 如: /etc/vimrc, ~/.vim/vimrc等等, 它们是相互想成, 互为补充, 共同生效的关系.

可以在全局/etc/vimrc中设置: set nu; set ts=4; set incsearch...

还可以使用vimgrep来搜索:

安装nerdtree提示authentication错误?

authentiction再authorization之前,提示 username&passwd错误?

其实, vundle安装插件, 也是通过git来clone下载的: git clone --recursive 'https://github.com/vim-scripts/taglist' '~/.vim/bundle/' 等等.

在书写插件的时候, 使用两种方式, 一种是github上的插件, 另一种是 不在github上的插件.

  • 在github上的插件, 如过是vim-scripts账户下的 插件 , 直接写;
  • 在github上的插件, 如果不是 vim-scripts账户下的插件, 写成 "账户名/插件名"
  • 不在github上的插件, 写全部地址和插件名称 https://..../../xxx.git...

例如:

set nocompatible

filetype off

set rtp+=~/.vim/bundle/vundle/

call vundle#rc()

Bundle 'gmarik/vundle'

Plugin 'scrooloose/nerdtree'

Bundle 'bling/vim-airline'

Plugin 'taglist.vim'

Plugin 'snipMate'

Plugin 'minibufexplorerpp' 注意这里是explorer,不是explore

Plugin 'Shougo/neocomplcache' 主要这里是Shougo, 不是小写的shougo, 也不是Shougou,没有u

" 这里设置emmet zen coding 插件

Plugin 'mattn/emmet'

call vundle#end()

filetype plugin indent on

" 设置emmet操作的触发键

let g:user_emmet_leader_key=""

使用vundle更新插件非常简单,只用打开一个vim,然后在NORMAL模式下输入命令:BundleInstall!

?为什么不能使用map影射了?

像大师门一样的思考, 学会大师门 的思维习惯, 使用字母及其对应的大写字母来表示 相反的功能, 或"层次/级别"不同的功能.

vim中, 多个 "子窗口"的大小的改变?

默认的就是水平分割: sp:split, 如果要垂直方向上分割: vs

对水平窗口的 "上下方向上的调整" 是用ctrl +w +加减号来实现,

垂直方向上的窗口的 "zuoyou 调整" 是用 ctrl-w + 大于和小于符合 来实现.

要恢复所以子窗口的原始大小, 使用ctrl-w + denghao等号.

vim向前和向后的跳转?

记得向后跳转是ctrl+o, 那么, 向前跳转就是ctrl_i, 因为i正好是在按键0的前面.

安装php后,apache不能索引index.php文件?

可能是原来在安装httpd的时候, 没有将index.php加入到目录索引中去:

在/etc/httpd/conf/httpd.conf中, 找到:

    <IfModule dir_module>
DirectoryIndex index.html (//这里增加上: index.php就好了). </IfModule>

如果上述设置后仍无法按顺序运行首页,那么还得修改一下php相关配置文件php.conf

/etc/httpd/conf.d/php.conf文件中的

DirectoryIndex index.php

=====================================================================

在terminal终端, 要实现 特殊通配符的 转义, 要加 双引号????

再说vundle: 完全vim字符编程的四个必须插件 - zen coding 和emmet插件的使用的更多相关文章

  1. vundle就是vim bundle的插件管理成ide

    如何配置一个高效的php编辑环境, 很好 对vundle的操作, 除了仓库名称是vundle.git (*.git就是仓库) 和 本地目录名是 vundle之外, 其他的操作都是bundle git ...

  2. 使用Vundle管理Vim插件

    附:仓库地址 附:我自用的vim配置文件,里面注释很多,仅供参考. Vundle是一款Vim的插件管理软件(Linux),用起来很方便的原因有几点: 支持插件超多,可以来源于github.Vundle ...

  3. C#中的函数式编程:递归与纯函数(二) 学习ASP.NET Core Razor 编程系列四——Asp.Net Core Razor列表模板页面

    C#中的函数式编程:递归与纯函数(二)   在序言中,我们提到函数式编程的两大特征:无副作用.函数是第一公民.现在,我们先来深入第一个特征:无副作用. 无副作用是通过引用透明(Referential ...

  4. AOP面向切面编程的四种实现

     一.AOP(面向切面编程)的四种实现分别为最原始的经典AOP.代理工厂bean(ProxyFacteryBean)和默认自动代理DefaultAdvisorAutoProxyCreator以及Bea ...

  5. 5天玩转C#并行和多线程编程 —— 第四天 Task进阶

    5天玩转C#并行和多线程编程系列文章目录 5天玩转C#并行和多线程编程 —— 第一天 认识Parallel 5天玩转C#并行和多线程编程 —— 第二天 并行集合和PLinq 5天玩转C#并行和多线程编 ...

  6. WCF编程系列(四)配置文件

    WCF编程系列(四)配置文件   .NET应用程序的配置文件 前述示例中Host项目中的App.config以及Client项目中的App.config称为应用程序配置文件,通过该文件配置可控制程序的 ...

  7. Java 网络编程(四) InetAddress类

    链接地址:http://www.cnblogs.com/mengdd/archive/2013/03/09/2951895.html Java 网络编程(四) InetAddress类 InetAdd ...

  8. 脑残式网络编程入门(四):快速理解HTTP/2的服务器推送(Server Push)

    本文原作者阮一峰,作者博客:ruanyifeng.com. 1.前言 新一代HTTP/2 协议的主要目的是为了提高网页性能(有关HTTP/2的介绍,请见<从HTTP/0.9到HTTP/2:一文读 ...

  9. [Java并发编程(四)] Java volatile 的理论实践

    [Java并发编程(四)] Java volatile 的理论实践 摘要 Java 语言中的 volatile 变量可以被看作是一种 "程度较轻的 synchronized":与 ...

随机推荐

  1. 【poj2774】 Long Long Message

    http://poj.org/problem?id=2774 (题目链接) 题意 给出两个只包含小写字母的字符串,求出最长连续公共子串. solution 第一次用后缀数组,感觉有点神...才发现原来 ...

  2. BZOJ1070 [SCOI2007]修车

    本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000作者博客:http://www.cnblogs.com/ljh2000-jump/转 ...

  3. css设置background图片的位置实现居中

    /* 例 1: 默认值 */ background-position: 0 0; /* 元素的左上角 */ /* 例 2: 把图片向右移动 */ background-position: 75px 0 ...

  4. duxcms SQL Injection In /admin/module/loginMod.class.php

    目录 . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 duxcms是一款采用PHP开发,基于HMVC规则开发适合中小企业.公司.新闻.个 ...

  5. oracle创建存储过程

    创建: create or replace procedure insert_tbuser (   username nvarchar2,usersex nvarchar2,userage numbe ...

  6. [JavaEE]如何唤醒Sleep中的线程

    主线程调用子线程的interrupt()方法,导致子线程抛出InterruptedException, 在子线程中catch这个Exception,不做任何事即可从Sleep状态唤醒线程,继续执行. ...

  7. Loadrunner在post请求的cookie中插入其它多个值

    有一个商城,提交订单的时候,需要在post请求的cookie中set一个code码,便于防刷 tijiao() { lr_think_time(); web_reg_save_param(" ...

  8. 第5.5次Scrum会议

    会议信息 时间:2016.10.25 21:30 时长:0.5h 地点:大运村1号公寓5楼楼道 类型:日常Scrum会议 会议内容 鉴于团队推进受阻,原PM 邓 与 原后端 冯 协商后决定之后一段时间 ...

  9. runtime - Method详细笔记

    Runtime中Method详细介绍 1.找到它,认识它 //*> 在objc/runtime.h中定义了Method类型,Method是一个objc_method结构体指针,结构体中包含SEL ...

  10. sudo和rpm命令

    sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等.这样不仅减少了root用户的登录 和管理时间,同样也提高了安全 ...