龙空技术网

推荐一款基于vim的超可扩展文本编辑器neovim

青枫教学 63

前言:

今天你们对“vi编译器centos”大致比较关心,我们都想要知道一些“vi编译器centos”的相关知识。那么小编同时在网络上汇集了一些关于“vi编译器centos””的相关知识,希望大家能喜欢,各位老铁们一起来学习一下吧!

一、简介

Vim是一个基于流行的Vi编辑器的文本编辑器,最初是在20世纪70年代发布的。Vim代表“改进的Vi”,它拥有广泛的用户基础和广泛的可用插件和扩展。

Neovim是Vim的一个分支,创建于2014年,旨在解决Vim的一些缺点,并提供额外的特性和功能。Neovim向后兼容Vim,并支持Vim的大部分功能。

二、neovim特性相比 Vim 改进了性能和稳定性支持异步插件和脚本改进了对现代用户界面框架和 Unicode 字符的支持更好的终端集成和 UI 支持支持对代码的本机调试和分析支持改进了对 Lua 脚本的支持三、安装neovim

由于neovim跨平台,可在Windows、Linux、MacOS系统上安装。

Windows上安装

仅支持Win8+

使用Winget安装

winget install Neovim.Neovim
使用Chocolatey安装
choco install neovim
MacOS上安装使用Homebrew安装
brew install neovim
使用MacPorts安装
sudo port selfupdatesudo port install neovim
直接下载压缩包安装

x86_64版本的

curl -LO  -xzvf nvim-macos-x86_64.tar.gzsudo mv nvim-macos-x86_64 /usr/local/cd /usr/localsudo mv nvim-macos-x86_64 nvimecho 'export PATH="/usr/local/nvim/bin:$PATH"' >> ~/.zshrc

arm64版本的

curl -LO  -xzvf nvim-macos-arm64.tar.gzsudo mv nvim-macos-arm64 /usr/local/cd /usr/localsudo mv nvim-macos-arm64 nvimecho 'export PATH="/usr/local/nvim/bin:$PATH"' >> ~/.zshrc
Linux上安装

直接下载压缩包安装

curl -LO  -xzvf nvim-linux64.tar.gzsudo mv nvim-linux64 /usr/local/cd /usr/localsudo mv nvim-linux64 nvimecho 'export PATH="/usr/local/nvim/bin:$PATH"' >> ~/.zshrc

基于CentOS系的使用yum安装

yum install -y  install -y neovim python3-neovim

基于Debian系的使用apt-get安装

sudo apt-get install neovim

基于Fedora系的使用dnf安装

sudo dnf install -y neovim python3-neovim
四、配置neovim

Vim采取硬编码的路径来存储插件和配置文件。通常是~/.vim目录。尽管更改这个硬编码路径并非不可能,但与NeoVim如何构建其配置目录相比,仍然需要做很多工作。

NeoVim遵循XDG基本目录规范。遵循此规范的程序将其配置文件存储在由XDG_CONFIG_HOME环境变量指定的目录中。按照惯例,它通常指向~/.config目录。

因此,NeoVim将所有插件和配置文件存储在~/.config/nvim目录,使其符合XBD规范。

可以直接复用原vim配置

直接做一个软链接链到neovim的配置

先在~/.config下创建nvim目录cd ~/.configmkdir nvimln -s ~/.vimrc ~/.config/nvim/init.vim做一个判断设置不同的命令if has('nvim')    " NeoVim specific commandselse    " Standard Vim specific commandsendif
流行的插件LazyVim:简化Neovim的配置。CoC.nvim:是Neovim的语言服务器协议客户端,它为各种编程语言提供代码补全、语法高亮显示和错误检查。Vim-Plug:是一个流行的 Vim 插件管理器,但它也适用于 Neovim。它可以轻松安装和管理 Neovim 插件,并支持延迟加载和自动更新等功能。nvim-tree.lua:是一个用于Neovim的文件系统资源管理器,它提供了项目目录结构的树状视图。它支持基本的文件管理功能,如创建、删除和重命名,并可以自定义各种图标和主题。nvim-telescope:这是一个高度可扩展的列表模糊查找器。nvim-treesitter:提供了一种简单的方法来使用Neovim中的tree-siter,还提供了高亮显示等功能。如何安装配置插件

使用vim-plug来便利安装

安装vim-plug

Linux、MacOS

sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \       ;

Windows

iwr -useb  |`    ni "$(@($env:XDG_DATA_HOME, $env:LOCALAPPDATA)[$null -eq $env:XDG_DATA_HOME])/nvim-data/site/autoload/plug.vim" -Force
使用示例

在call plug#begin()和call plug#end()中间列出所要安装的插件即可,如下:

call plug#begin()" 默认的插件存储目录:"   - Vim (Linux/macOS): '~/.vim/plugged'"   - Vim (Windows): '~/vimfiles/plugged'"   - Neovim (Linux/macOS/Windows): stdpath('data') . '/plugged'" 可以在begin里面指定插件的目录"   - e.g. `call plug#begin('~/.vim/plugged')`"   - 避免使用vim标准目录名:plugin"   - 必须使用单引号包裹" Shorthand notation for GitHub; translates to  'junegunn/vim-easy-align'" Any valid git URL is allowedPlug ';" Using a tagged release; wildcard allowed (requires git 1.9.2 or above)Plug 'fatih/vim-go', { 'tag': '*' }" Using a non-default branchPlug 'neoclide/coc.nvim', { 'branch': 'release' }" Use 'dir' option to install plugin in a non-default directoryPlug 'junegunn/fzf', { 'dir': '~/.fzf' }" Post-update hook: run a shell command after installing or updating the pluginPlug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }" Post-update hook can be a lambda expressionPlug 'junegunn/fzf', { 'do': { -> fzf#install() } }" If the vim plugin is in a subdirectory, use 'rtp' option to specify its pathPlug 'nsf/gocode', { 'rtp': 'vim' }" On-demand loading: loaded when the specified command is executedPlug 'preservim/nerdtree', { 'on': 'NERDTreeToggle' }" On-demand loading: loaded when a file with a specific file type is openedPlug 'tpope/vim-fireplace', { 'for': 'clojure' }" Unmanaged plugin (manually installed and updated)Plug '~/my-prototype-plugin'" Initialize plugin system" - Automatically executes `filetype plugin indent on` and `syntax enable`.call plug#end()" You can revert the settings after the call like so:"   filetype indent off   " Disable file-type-specific indentation"   syntax off            " Disable syntax highlighting
常用的命令PlugInstall:安装插件PlugUpdate:安装或更新插件PlugClean:移除未列出的插件PlugUpgrade:更新vim-plug插件自身PlugStatus:检查插件状态

vim-plug地址:

注意

敲命令的时候使用nvim

标签: #vi编译器centos