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

如何配置一个高效的php编辑环境, 很好

对vundle的操作, 除了仓库名称是vundle.git (*.git就是仓库) 和 本地目录名是 vundle之外, 其他的操作都是bundle

git clone的地址是: https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle, 注意这个本地地址不是固定的,可以是任意的, 比如: ~/.vim/bundles/ 上面这个只不过是一个推荐地址.

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

git clone [options] ... 选项在clone命令的后面, 跟yum -y install... 选项在中间略有区别!

bang 美[bæŋ] Bang, bang, there goes my life . Don't bang the door

!! 文本也可以有格式的!
vundle就是vim bundle的插件管理成ide

clone后, vundle目录下的内容, 包括一个.git仓库(克隆得到的, 这个跟普通的/ 常规的仓库是一样的), 一个autoload(vundle.vim的核心)和一些辅助文件
vundle就是vim bundle的插件管理成ide

git内部原理

=================================================
hash 美[hæʃ], 不是ha:ʃ n. 混杂, 拼凑, 哈希, 散列值. you must provide a hash value.

sha1: secure hash algorithm 1: 安全哈希算法.

sha1: 是一种算法, hash是这种算法的一个值(hash value哈希值, 散列值, **不是"嘻哈""嘻嘻哈哈")

((Hash,一般翻译做"散列",也有直接音译为"哈希"的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,即是一个"多对一"的映射 y=H(x): x1,x2,...,xi,...-> y1 , 所以不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数

校验你的SHA1的HASH值的,文件被保存下来就有这个值,原始文件在网络传输前被生成的原值,经过网络传输以后如果文件有所损坏原值可能发生变化,这个时候SHA1就会变,所以SHA1工具是用来校验文件是否损坏的工具。
))

在Git中,每个commit id的信息(如f2c8ea6ea648d4b097f2e552b674f856a86c31cc)就是一个sha1 hash值,如果想查看自己分支中的coomit id执行git log即可。

生成这个hash值,它是对那个commit是 Git仓库中内容和头信息Header的一个校验和checksum。Linux kernel开创者和Git的开发者——Linus说,Git使用了sha1并非是为了安全性,而是为了数据的完整性;

它可以保证,在很多年后,你重新checkout某个commit时,一定是它多年前的当时的状态,完全一摸一样,完全值得信任。在Git中,根据commit的sha1值40个十六进制数字进行了简单的划分目录,以前2位数字作为目录名,其下面是剩余38位数字组成的一个文件名。

sha1的hash 报文摘要:
SHA-1是一种加密哈希函数(cryptographic hash function),另外两种SHA(secure hash algorithm)算法是SHA-0和SHA-2。

SHA-1将文件中的内容通过其hash算法生成一个160bit的报文摘要,即40个十六进制数字(每个十六进制数字占4位)。

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

几乎可以保证,如果两个文件的SHA-1值是相同的,那么它们确是完全相同的内容(类似于生活中的指纹识别);不过也不是绝对的安全可靠,最新资料显示,理论上对其进行哈希碰撞(hash collision,不同的两块数据有相同的hash值)的攻击可以在2^51(2的51次方)左右的次数内实现。

(BTW,国内也有对密码攻击研究深入的学者,我就看到wikipedia上经常提到山东大学的王小云[Wang Xiaoyun]教授,有兴趣研究密码破译攻击的,可以google其论文来读读。)由于SHA-1不是足够的安全,现在美国的很多*部门都开始不采用SHA-1而采用SHA-2(256/224/512/384等多种长度的输出报文摘要,目前还没有发现其hash碰撞的存在)。SHA-1主要有两种用途,一个是加密,一个是数据完整性校验

vim-scripts的仓库地址以及插件名称见: http://vim-scripts.org/vim/scripts.html

vundle中插件的四种类型和安装书写方式, 最好

--------------------------------- == 要使用vundle, 首先要安装vim!
在linux中如何使用vim?
系统中 ,如果 仅仅只是安装了vim-minimal, 这时是 不会有vim这个命令的!
vundle就是vim bundle的插件管理成ide

vi (/vim 都是一样的!) 的多个模式?
vi -v是最简的vi模式
vi -e 是ex mode模式
vi -E 是vim模式

vi的语法?
vi [arguments] file | -
其中, 这些参数就是 options, 如-v, -e, -E, --version等,
其中 "-" 是指对标准输入进行编辑.

vim-minimal和vim-enhanced?
先安装vim-minimal, 后安装vim-enhanced, 出现transaction check error?

原因是: 在/etc/yum.repos.d中有好多源。出现冲突就是因为对于 某些软件 不同的源提供的元数据不一样。那就删除一些不用的源,或者打开其中的一个*.repo文件将其中的enable=1,改为enable=0.如果还是有冲突就再将一个源标记为不可用,直至只用一个源为止

好! 应用上面的方法, 问题就解决了!
vundle就是vim bundle的插件管理成ide
vundle就是vim bundle的插件管理成ide

只有当安装好 vim-enhanced这个包,后, 出现 VIM - Vi IMproved by Bram Moolenaar后才表示vim可用了!

使用vim /vi --version 可以查看很多关于vi/vim的信息! 包括 它启用了哪些features, syntax, 使用的什么compi'[i,2]lation选项 link选项等等.

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

注意/root和$HOME两者是不同地位的! (在fedora-22-xfce中, 其他发行版也是类似的???)/home目录下只有普通用户. 是没有root用户的!

  • $HOME 是用户家目录, 用来装文件/图片/音乐等,
  • 而root的东西是没有放在这里/home下的, 它是放在/root下的, 它不是用来放"资料"的,而是用来进行管理的, 所以它里面是没有Document,Video,Music等东西的!

------------------------------------------------==
/bin/cat和/usr/bin/cat有什么不同?

  • /bin,/sbin目录是在系统启动后挂载到根文件系统中的,所以/sbin,/bin目录必须和根文件系统在同一分区;

  • /usr/bin,usr/sbin可以和根文件系统不在一个分区。

  • /usr/bin 是你在后期安装的一些软件的运行脚本

    linux中的系统函数, 以下画线开头, 末尾就不必加下划线了, 而且都是小写,不必camel书写
    vundle就是vim bundle的插件管理成ide

关于ls都有很多不同的显示方式和控制
ls -w --width=cols, 控制ls显示的列数,为什么? 因为有的时候, 明明屏幕还有更宽的空间, 但是却只显示较少的列, 这样就不便于观察!
用这个选项, 就可以自己控制屏幕上显示的列数. (assume [假设,假定] screen width instead of current value)[实际上不是那
么多] 可以通过 $LINES, $COLUMNS 两个系统变量查看当前的bash 行数和列数.
!!! 注意, 这个$LINES $COLUMNS 是一个动态变量, 会根据你当前窗口的大小而动态改变的, 并不是一个固定的值!!

如: ls -w70 可能显示两列, 但是ls -w100 则可能显示3列: -w100 = -w 100

ls -x 默认的都是按列来排列, -x可以按行来排列内容

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

vim的配置文件:
/etc/vimrc 是属于root用户的, 是影响整个全局的 所有用户的配置
~/.vimrc 或者 ~/.vim/vimrc是用户个人的配置.

vimrc中的set ruler 设置标尺, 是指vim窗口的底部显示 的那些内容: 文件名, 行列位置
vundle就是vim bundle的插件管理成ide

Cscope scope: 范围, 区域, CScope是用来搜索定位 C/C++ 函数定位,跳转的工具, 如果用php编程就不用了, 应该类似与 ctags.

vim不只是一个编辑器, 而且它也是一个linux命令, 所有可以像命令一样的执行它:
vim [arguments: -n, -r...] file...
其中:
-n no swap file
-r: show swap files
--noplugin

系统全局的vim配置就放在 /etc/vimrc中, 专门为vundle的就放在个人的配置文件中:~/.vimrc 或者 ~/.vim/vimrc

rtp是什么意思? rtp= realtime path 实时路径.
" set the runtime path to include Vundle and initialize

set rtp+=~/vimfiles/bundle/Vundle.vim " this is in Windows platform
set rtp+=~/.vim/bundle/vundle/ " this is in linux platform


vim可以直接读取 filetype.txt.gz

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

vim中可以使用帮助, 查看某个关键词: 格式是: :help keyword , 如: help filetype.

filetype plugin indent on 是什么意思?

/usr/share/ 中并不是只有man! 还有其他的一些程序的文件也放在这里的!! 如vim等等.

http://www.linuxdiyf.com/linux/1295.html
http://blog.csdn.net/jiaolongdy/article/details/17889787
http://www.68idc.cn/help/server/linux/2014042692925.html
http://www.68idc.cn/help/server/linux/20151006570964.html

http://www.83xw.com/linux/15820.html

上一篇:lua 获取文件名和扩展名


下一篇:使用Vundle管理Vim插件