由于ubuntu 20.04自带的vim版本比较老了,有些新装的插件适配不上,所以需要安装最新版本的vim。在网上找了很久也没有比较官方的安装教程所以记录一下。

安装依赖库

sudo apt install git
sudo apt install make
sudo apt install clang
sudo apt install libtool-bin

下载源码

使用git方式

git clone https://github.com/vim/vim.git
cd vim

也可以从http://github.com/vim/vim/tags下载,在我写这篇笔记的时候最新的版本是v8.2.4995

wget -c https://github.com/vim/vim/archive/refs/tags/v8.2.4995.tar.gz
tar -xzvf v8.2.4995.tar.gz
cd vim-8.2.4995/

vim功能配置

进入编译的工作路径

cd src

如果需要和系统进行复制粘贴操作,就需要为vim添加剪切板的支持

sudo apt install libxt-dev

如果需要GUI界面支持

sudo apt install libgtk-3-dev

添加python3支持

sudo apt install libpython3-dev

编辑Makefile文件,取消注释

CONF_OPT_PYTHON3 = --enable-python3interp

更加详细的配置可以看Makefile的内容,不过这些功能对于我来说已经够用了

编译和安装

为了提高编译的速度使用-j参数,-j后面的数字就是cpu所支持的线程数

make -j8
make install

ubuntu 20.04 安装 vim8.2的更多相关文章

  1. Ubuntu 16.04安装Vim8.0

    Ubuntu 16.04安装Vim8.0 https://www.aliyun.com/jiaocheng/131859.html sudo add-apt-repository ppa:jonath ...

  2. Ubuntu 20.04安装Docker

    Docker学习系列文章 入门必备:十本你不容错过的Docker入门到精通书籍推荐 day1.全面的Docker快速入门教程 day2.CentOS 8.4安装Docker day3.Windows1 ...

  3. Ubuntu 14.04安装vim8

    本文介绍两种方法安装 VIM8.1 方法一:GitHub下载源码手动安装 1.查看系统是否有安装vim:如果有,先删除 dpkg -l | grep vim 2.从git上下载 git clone h ...

  4. ubuntu 20.04 安装 ros1 和ros2

    ubuntu  选择Hong Kong 源 1. ROS1安装 添加 sources.list(设置你的电脑可以从 packages.ros.org 接收软件.) sudo sh -c '. /etc ...

  5. Ubuntu 16.04 安装vim8

    1. 卸载旧版本vim sudo apt-get remove vim vim-runtime gvim sudo apt-get remove vim-tiny vim-common vim-gui ...

  6. Ubuntu 20.04 安装和编译poco 1.10.1

    1.首先安装其openssl其它依赖库,打开终端,使用root账户(sudo su),完成以下库的安装 //安装odbc相关库 apt-get install unixodbc apt-get ins ...

  7. Ubuntu 20.04 安装kodi播放器

    打开终端,执行命令在线安装 sudo apt-get install software-properties-common sudo add-apt-repository ppa:team-xbmc/ ...

  8. Ubuntu 20.04安装mysql后用mysql root无法登录

    刚安装mysql后,执行 mysql -u root -p 提示无法执行 解决方案: sudo mysql -u root -p 使用root权限不用密码就能进入mysql 然后 >ALTER ...

  9. Ubuntu 20.04下源码编译安装ROS 2 Foxy Fitzroy

    ROS 2 Foxy Fitzroy(以下简称Foxy)于2020年6月5日正式发布了,是LTS版本,支持到2023年5月.本文主要根据官方的编译安装教程[1]完成,并记录编译过程中遇到的问题. 1. ...

随机推荐

  1. 字节跳动构建Data Catalog数据目录系统的实践(上)

    作为数据目录产品,Data Catalog 通过汇总技术和业务元数据,解决大数据生产者组织梳理数据.数据消费者找数和理解数的业务场景,并服务于数据开发和数据治理的产品体系.本文介绍了字节跳动 Data ...

  2. Unity实现A*寻路算法学习2.0

    二叉树存储路径节点 1.0中虽然实现了寻路的算法,但是使用List<>来保存节点性能并不够强 寻路算法学习1.0在这里:https://www.cnblogs.com/AlphaIcaru ...

  3. IIS发布Https和Https的问题

    asp.net调试页面的时候遇到一个问题,我喜欢右键点击在浏览器查看页面,打开的页面默认是https的,其实iis会同时生成http和https两种页面,但是我懒得每次去点.问题是页面中测试接口是ht ...

  4. [数学基础] 4 欧几里得算法&扩展欧几里得算法

    欧几里得算法 欧几里得算法基于的性质: 若\(d|a, a|b\),则\(d|(ax+by)\) \((a,b)=(b,a~mod~b)\) 第二条性质证明: \(\because a~mod~b=a ...

  5. axios源码解析 - 请求拦截器

    axios请求拦截器,也就是在请求发送之前执行自定义的函数. axios源码版本 - ^0.27.2 (源码是精简版) 平时在业务中会这样去写请求拦截器,代码如下: // 创建一个新的实例 var s ...

  6. Android 子线程 UI 操作真的不可以?

    作者:vivo 互联网大前端团队- Zhang Xichen 一.背景及问题 某 SDK 有 PopupWindow 弹窗及动效,由于业务场景要求,对于 App 而言,SDK 的弹窗弹出时机具有随机性 ...

  7. 浅析kubernetes中client-go Informer

    之前了解了client-go中的架构设计,也就是 tools/cache 下面的一些概念,那么下面将对informer进行分析 Controller 在client-go informer架构中存在一 ...

  8. Pandas:添加修改、高级过滤

    1.添加修改数据 Pandas 的数据修改是进行赋值,先把要修改的数据筛选出来,然后将同结构或者可解包的数据赋值给它: 修改数值 df.Q1 = [1, 3, 5, 7, 9] * 20 # 就会把值 ...

  9. ApeForms | WinForm窗体UI美化库(Metro扁平风格)演示与安装

    ApeForms系列① 快速上手 @ 目录 ApeForms系列① 快速上手 前言 演示视频 快速上手 安装及使用 Demo下载 联系开发者 加入我们 建议与咨询 前言 ApeForms是一套基于Wi ...

  10. mybatis中二级缓存整合ehcache实现分布式缓存

    mybatis自带二级缓存,但是这个缓存是单服务器工作,无法实现分布式缓存.那么什么是分布式缓存呢?假设现在有两个服务器1和2,用户访问的时候访问了1服务器,查询后的缓存就会放在1服务器上,假设现在有 ...