当前位置: 首页 > news >正文

NeoVim初识

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

安装

Mac上安装(无需编译直接解压运行):

cd /tmp
wget https://github.com/neovim/neovim/releases/download/v0.3.1/nvim-macos.tar.gz && \
tar -xzvf nvim-macos.tar.gz && \
sudo mv ./nvim-osx64 /opt/nvim-0.3.1 && \
ln -s /opt/nvim-0.3.1/bin/nvim /usr/local/bin/nvim && echo "[ OK ]"

# Check Health
nvim +checkhealth

添加各种语言支持

NeoVim更像是一个框架,让添加各种支持更加方便。出于这点考虑,原生是不带各种语言支持的,需要自己去安装和关联。

添加python支持

假设(推荐)我们使用virtualenv虚拟环境中的python,地址为~/virtualenv/venv-neovim。 用source ~/virtualenv/venv-neovim/bin/activate开启虚拟环境。然后,

  1. 用pip安装neovim模块:
pip install neovim
  1. 将vim的~/.vim建立nvim的连接(大多数都是通用的不用新创建一个):
ln -s ~/.vim .config/nvim
touch ~/.vim/init.vim
  1. 将虚拟环境的python路径添加到neovim配置文件init.vim中:
let g:python3_host_prog = '/Users/Jason/virtualenv/venv-neovim/bin/python'

注意:虚拟环境一定要是绝对路径!不能用~/这样的。

  1. 检查neovim是否已经有了python支持:
nvim +checkhealth

看到这个,就是成功了:

image

添加ruby支持

首先查看本机的ruby在哪个位置:which ruby,比如/usr/local/bin/ruby。 那么在neovim的配置文件中,加入:

let g:ruby_host_prog = '/usr/local/bin/ruby'

然后在ruby的gem中安装neovim模块:

$ gem install neovim

如果报错:ERROR: Could not find a valid gem 'neovim' (>= 0) in any repository 则需要更新gem:

# 更新源
gem sources --update

# 或者更换源:
gem sources --add https://gems.ruby-china.org/

# 然后删掉其它所有的源,只保留一个:
gem sources --remove https://rubygems.org/
gem sources --remove http://gems.github.com

# 更新源
gem sources --update

# 重新安装neovim
gem install neovim

配置 vimrc

官方推荐,neovim的配置文件vimrc位于的~/.config/nvim/init.vim

安装插件

推荐用neovim官方推荐的vim-plug

安装到~/.vim目录下:

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

然后在~/.config/nvim/init.vim配置文件中加入引用:

call plug#begin('~/.vim/plugged')
    Plug 'ncm2/ncm2'
    Plug 'roxma/nvim-yarp'
call plug#end()

注意:plug后要用’单引号。

重启nvim后,在neovim中安装应用的命令::PlugInstall

转载于:https://my.oschina.net/solomonxie/blog/2997471

相关文章:

  • redis 系列20 服务器上
  • 非spring框架下使用querydsl
  • Java注解的基本概念和原理及其简单实用
  • Android Studio自定义组合控件
  • 在.Net Micro Framework中使用DPWS
  • PIC16F877A 内部EEPROM读写实验利用内部函数
  • 如何让DevExpress的DateEdit控件正确显示日期的周名
  • 手把手教你配置Windows2003集群
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • MSDN中文Webcast for Windows Phone
  • C++ 预编译头文件
  • C#学习笔记(七)——定义类
  • C#学习笔记(五)——函数
  • Google CEO 定义 Web 3.0
  • 判断字符串是否是回文字符串或者是否含有回文字符子串 (我是从两颗番茄的博客看的题目,然后自己编的) 不断学习!!...
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • mysql 数据库四种事务隔离级别
  • Otto开发初探——微服务依赖管理新利器
  • SpiderData 2019年2月16日 DApp数据排行榜
  • Webpack 4x 之路 ( 四 )
  • 给Prometheus造假数据的方法
  • 检测对象或数组
  • 解析 Webpack中import、require、按需加载的执行过程
  • 跨域
  • 力扣(LeetCode)357
  • 新版博客前端前瞻
  • 积累各种好的链接
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • # include “ “ 和 # include < >两者的区别
  • ### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException
  • #AngularJS#$sce.trustAsResourceUrl
  • (3)nginx 配置(nginx.conf)
  • (Java实习生)每日10道面试题打卡——JavaWeb篇
  • (LNMP) How To Install Linux, nginx, MySQL, PHP
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (附源码)计算机毕业设计大学生兼职系统
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • (原創) 系統分析和系統設計有什麼差別? (OO)
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .NET CORE 2.0发布后没有 VIEWS视图页面文件
  • .Net6 Api Swagger配置
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • .NET企业级应用架构设计系列之结尾篇
  • [4.9福建四校联考]
  • [Angularjs]asp.net mvc+angularjs+web api单页应用
  • [autojs]逍遥模拟器和vscode对接
  • [C/C++] -- 二叉树
  • [C\C++]读入优化【技巧】
  • [IE技巧] IE8中HTTP连接数目的变化
  • [LeetCode]: 145: Binary Tree Postorder Traversal
  • [linux] Key is stored in legacy trusted.gpg keyring
  • [No000010F]Git8/9-使用GitHub