再说vundle: 完全vim字符编程的四个必须插件

一个常识:

基本上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终端, 要实现 特殊通配符的 转义, 要加 双引号????

原文地址:https://www.cnblogs.com/bkylee/p/5841579.html