当前位置: 首页 > 编程日记 > 正文

Ubuntu上Vim安装NERDTree插件操作步骤

NERDTree是Vim的文件系统浏览器,使用此插件,用户可以直观地浏览复杂的目录层次结构,快速打开文件以进行读取或编辑,以及执行基本的文件系统操作。NERDTree源码在https://github.com/preservim/nerdtree。

这里通过Vundle安装NERDTree,Vundle是Vim软件包的缩写,是Vim插件管理器。Vundle源码在https://github.com/VundleVim/Vundle.vim。

安装Vundle:

(1). 执行如下命令:

mkdir -p ~/.vim/bundle
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

(2). 打开~/.vimrc,在此文件中添加内容如下:

set nocompatible              " be iMproved, required
filetype off                  " required" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'" Keep Plugin commands between vundle#begin/end." 安装其它插件" All of your Plugins must be added before the following line
call vundle#end()            " required
filetype plugin indent on    " required

安装NERDTree:

(1). 执行如下命令:

git clone https://github.com/preservim/nerdtree.git ~/.vim/bundle/nerdtree

(2). 打开~/.vimrc,在语句call vundle#end()语句前添加内容如下:

Plugin 'preservim/nerdtree'

NERDTree常用快捷键:未说明默认是在命令行模式,命令前有”:”是在底行模式下

1. 通过vim打开一个文件后,在底行模式下输入”NERDTree”后回车进入NERDTree;

2. ctrl+w+h:光标focus左侧树形结构;

3. ctrl+w+l:光标focus右侧文件显示窗口;

4. ctrl+w+w:光标自动在左右侧窗口切换;

5. ctrl+w+r:移动当前窗口的布局位置;

6. o/go:在已有窗口中打开文件,跳到/不跳到该窗口;

7. o:如果光标定位在目录上,点击”o”则会展开或合拢该目录;

8. t/T:在新的Tab中打开文件,跳到/不跳到新Tab;

9. :tabc/:tabo:关闭当前的/关闭所有其它的Tab;

10. :tabp/:tabn:跳到前一个/跳到后一个Tab;

12. i/gi:split一个新窗口并打开选中文件,跳到/不跳到该窗口;

13. s/gs:vsplit一个新窗口并打开选中文件,跳到/不跳到该窗口;

14. x:合拢当前文件或目录的父目录;

15. P/p:跳到根结点/父结点;

16. C:将选中目录或选中文件的父目录设为根结点;

17. u/U:将当前根结点的父目录设为根结点,并合拢原根结点/展开原根结点;

18. r/R:递归刷新选中目录/根结点;

19. I:切换是否显示隐藏文件;

20. q:关闭NERDTree窗口。

打开NERDTree后界面如下:

完整的~/.vimrc文件内容如下:

" 安装Vundle: 参考:https://github.com/VundleVim/Vundle.vim
" $ mkdir -p ~/.vim/bundle
" $ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vimset nocompatible              " be iMproved, required
filetype off                  " required" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'" Keep Plugin commands between vundle#begin/end." 安装NERDTree
" $ git clone https://github.com/preservim/nerdtree.git ~/.vim/bundle/nerdtree
Plugin 'preservim/nerdtree'" All of your Plugins must be added before the following line
call vundle#end()            " required
filetype plugin indent on    " required
" To ignore plugin indent changes, instead use:
"filetype plugin on" 语法高亮显示
syntax on
" 缩进设置
set tabstop=8
set softtabstop=8
set shiftwidth=8
" C代码缩进
set cindent
" 搜索结果高亮显示
set hlsearch" 解决中文字符显示乱码
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
set termencoding=utf-8
set encoding=utf-8

相关文章:

《评人工智能如何走向新阶段》后记(再续4)

由AI科技大本营下载自视觉中国41. 在人工智能感知阶段,依靠数据驱动的深度学习算法。目前5种最流行的深度学习架构: ① 递归神经网络(RNN)② 长短期记忆 (LSTM)/门控递归单元(GRU)③卷积神经网络…

电视游戏会是未来客厅娱乐的主角吗?

在时下流行的多屏生态概念中,电视虽为最大屏幕,但与智能手机、平板等小屏相比,属于相对较弱的一环。无移动性、自身交互性不足,在一定程度上影响着它在移动时代的发展。而作为最能体现其“吸睛能力”的——大屏娱乐功能&#xff0…

王爽著的《汇编语言》第3版笔记

王爽著的《汇编语言》(第3版)于2013年出版,虽然是2013年出版的,但书中部分内容感觉已过时: (1). 基于intel 8086 CPU介绍,intel 8086是英特尔公司上个世纪生产的芯片,是16位的,早已停产; (2).…

iOS 倒计时方法

//启动计时器 double delayInSeconds 10.0; dispatch_time_t popTime dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC); dispatch_after(popTime, dispatch_get_main_queue(), ^(void){ //执行事件 NSLog("计时器结束了"); UIAlertController …

《评人工智能如何走向新阶段》后记(再续5)

由AI科技大本营下载自视觉中国51.今年发表的由俄罗斯“脑机接口”公司(Neurobotics)和莫斯科物理技术学院(MIPT)研究的一种全新“脑机接口”算法。利用“脑机接口”将人脑(EEG)神经元与脑外深度学习网络连接…

不说12306你会Die啊?当然不会,但会憋死

别嫌这标题话粗啊,只是突然想起了某小品中的一句台词儿而已。又是一年春运时,几十亿人口开始了兴奋着、痛苦着的大迁徙。12306开通有几年了吧,我今年才第一次用。因为父母要回老家,不想排队那么辛苦,所以才尝试一把网络…

汇编程序设计与计算机体系结构软件工程师教程笔记:处理器、寄存器简介

《汇编程序设计与计算机体系结构: 软件工程师教程》这本书是由Brain R.Hall和Kevin J.Slonka著,由爱飞翔译。中文版是2019年出版的。个人感觉这本书真不错,书中介绍了三种汇编器GAS、NASM、MASM异同,全部示例代码都放在了GitHub上&#xff0c…

iOS 发布APP关于IDFA的相关内容

您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息或将其从 App 中移除,然后再上传您的二进制文件。 如果出现下边这两张图,你就会感到蛋蛋的忧伤 还有这个 怎么解决? 1,查看你所集成的SDK,看看…

《评人工智能如何走向新阶段》后记(再续6)

由AI科技大本营下载自视觉中国61. 在2019深度学习开发者峰会上,百度发布基于飞桨的图学习框架(PaddleGraphLearning,PGL)。近年来深度神经网络推动了人工智能的发展,但在实际场景中有大量数据是在非欧式空间的&#xf…

Android APP测试的日志文件抓取

1 log文件分类简介 实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志 状态信息的有:adb shell cat /proc/kmsg ,adb shell dmesg&#xff0c…

汇编程序设计与计算机体系结构软件工程师教程笔记:指令

《汇编程序设计与计算机体系结构: 软件工程师教程》这本书是由Brain R.Hall和Kevin J.Slonka著,由爱飞翔译。中文版是2019年出版的。个人感觉这本书真不错,书中介绍了三种汇编器GAS、NASM、MASM异同,全部示例代码都放在了GitHub上&#xff0c…

IOS视频编辑功能详解上篇-添加水印

前言 用代码在简单视频编辑中,主要就是加美颜、水印(贴图)、视频截取、视频拼接、音视频的处理,在美颜中,使用GPUImage即可实现多种滤镜、磨皮美颜的功能,并且可以脸部识别实时美颜等功能,这个…

《评人工智能如何走向新阶段》后记(再续7)

由AI科技大本营下载自视觉中国66. 谷歌近来研发用于基因科学的人工智能AlphaFold,根据基因序列预测生命基本分子一蛋白质的三维结构(AlphaFold与下国际围棋的AlphaGo似孪生兄弟),这是用来预测蛋白质折叠结构的能力或设计新的蛋白质…

Linux多线程实践(6) --Posix读写锁解决读者写者问题

Posix读写锁 int pthread_rwlock_init(pthread_rwlock_t *restrict rwlock,const pthread_rwlockattr_t *restrict attr); int pthread_rwlock_destroy(pthread_rwlock_t *rwlock);int pthread_rwlock_rdlock(pthread_rwlock_t *rwlock); int pthread_rwlock_wrlock(pthread_r…

iOS-直播开发(开发从底层做起)

代码链接: Github: https://github.com/jessonliu/JFLivePlaye 技术部分------ ⬇️ 脑涂: ![ 直播思维导图.png ] 视频直播的大概流程就上脑涂上所画的, 还有一些没列出来, 比如, 聊天, 送礼, 踢出, 禁言, 等等一系列功能, 但本文只是针对视频直播的简单实现! 下边来说一下以…

汇编程序设计与计算机体系结构软件工程师教程笔记:函数、字符串、浮点运算

《汇编程序设计与计算机体系结构: 软件工程师教程》这本书是由Brain R.Hall和Kevin J.Slonka著,由爱飞翔译。中文版是2019年出版的。个人感觉这本书真不错,书中介绍了三种汇编器GAS、NASM、MASM异同,全部示例代码都放在了GitHub上&#xff0c…

《庆余年》值得一看吗?Python告诉你谁在关注 | CSDN原力计划

扫码参与CSDN“原力计划”作者 | A字头来源 | 数据札记倌庆余年电视剧终于在前两天上了,这两天赶紧爬取数据看一下它的表现。庆余年《庆余年》是作家猫腻的小说。这部从2007年就开更的作品拥有固定的书迷群体,也在文学IP价值榜上有名。期待已久的影视版的…

《C语言及程序设计》实践项目——画分支结构流程图

返回&#xff1a;贺老师课程教学链接 【单分支结构流程图-大值】问题&#xff1a;画流程图&#xff0c;输入两个整数a和b&#xff0c;输出其中的大值。提示&#xff1a;当a<b时&#xff0c;交换a和b&#xff0c;最后输出的a一定是其中的大值。流程图中可以直接给出交换a和b…

汇编程序设计与计算机体系结构软件工程师教程笔记:内联汇编与宏

《汇编程序设计与计算机体系结构: 软件工程师教程》这本书是由Brain R.Hall和Kevin J.Slonka著&#xff0c;由爱飞翔译。中文版是2019年出版的。个人感觉这本书真不错&#xff0c;书中介绍了三种汇编器GAS、NASM、MASM异同&#xff0c;全部示例代码都放在了GitHub上&#xff0c…

无需标注数据,利用辅助性旋转损失的自监督GANs,效果堪比现有最好方法

作者 | Ting Chen译者 | 王红成出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;本文作者提出了一种自检督方式的生成对抗网络&#xff0c;通过辅助性的旋转损失来达到目的。因为通常主流方法来生成自然图像都是通过条件GAN来完成&#xff0c;但是这就需要很多的标签数…

iOS环信聊天界面中点击头像和消息的几种状态

/*环信自带头像点击事件*/ - (void)messageViewController:(EaseMessageViewController *)viewControllerdidSelectAvatarMessageModel:(id<IMessageModel>)messageModel {内容可以根据需要自己添加 }/*!methodbrief 点击了简历消息 (lyq添加)discussion 点击了简历消息,…

ASP.NET将Session保存到数据库中

因为ASP.NET中Session的存取机制与ASP相同&#xff0c;都是保存在进行中&#xff0c; 一旦进程崩溃&#xff0c;所有Session信息将会丢失&#xff0c;所以我采取了将Session信息保存到SQL Server中&#xff0c;尽管还有其它的几个方式&#xff08;本文不作介绍&#xff09;&…

iOS App上架流程

一、前言&#xff1a;作为一名iOSer&#xff0c;把开发出来的App上传到App Store是必要的。下面就来详细讲解一下具体流程步骤。 二、准备&#xff1a; 一个已付费的开发者账号&#xff08;账号类型分为个人&#xff08;Individual&#xff09;、公司&#xff08;Company&#…

不止Markov决策过程,全景式分析强化学习研究内容

作者 | 肖智清编辑 | 刘静来源 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;强化学习作为通用人工智能的希望&#xff0c;吸引了很多人工智能爱好者学习和研究。Markov决策过程是最知名的强化学习模型&#xff0c;强化学习教程也常以Markov决策过程作为起点。但是&am…

Windows下创建进程简介

正在执行的应用程序称为进程&#xff0c;进程不仅仅是指令和数据&#xff0c;它还有状态。状态是保存在处理器寄存器中的一组值&#xff0c;如当前执行指令的地址、保存在内存中的值&#xff0c;以及唯一定义进程在任一时刻任务的所有其他值。进程与应用程序的一个重要的区别在…

jQuery中鲜为人知的的几个方法

转来学习一下 jQuery中鲜为人知的的几个方法 jQuery近些年来仍旧是web开发中最受欢迎的类库&#xff0c;虽然大家褒贬不一&#xff0c;但是仍旧不失为一款最流行的Javascript&#xff0c;在今天这篇文章中&#xff0c;我们将介绍几个jQuery的相关方法&#xff0c;无论你是入门级…

Linux下创建进程简介

在博文https://blog.csdn.net/fengbingchun/article/details/108940548中简单介绍了Windows下通过函数CreateProcess创建进程的过程&#xff0c;这里简单介绍下Linux下通过fork函数创建进程的过程。很早之前在https://blog.csdn.net/fengbingchun/article/details/45690745中也…

热更新 FrameWork

工作中遇到想要绕过AppStore直接更新App的要求&#xff01;这里友情提示下&#xff0c;看了很多资料只是是实现了功能&#xff0c;但在项目中并没有真正用到&#xff01;资料大多都显示会被拒&#xff0c;这个说的是个人级的&#xff0c;好像企业级的不会这样,仅仅是项目需要做…

陆首群:评人工智能如何走向新阶段?

作者 | 陆首群&#xff0c;中国开源软件推进联盟名誉主席 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 编者按&#xff1a;近来&#xff0c;业内关于深度学习算法的潜力是否已达天花板的争论陆续发出。有人认为&#xff0c;基于深度学习算法的应用还有深度开拓空…

Mysql INSERT、REPLACE、UPDATE的区别

用于操作数据库的SQL一般分为两种&#xff0c;一种是查询语句&#xff0c;也就是我们所说的SELECT语句&#xff0c;另外一种就是更新语句&#xff0c;也叫做数据操作语句。言外之意&#xff0c;就是对数据进行修改。在标准的SQL中有3个语句&#xff0c;它们是INSERT、UPDATE以及…