都说vim大法好(如何打造一款属于自己的vim)

2024-02-19 16:50
文章标签 打造 vim 属于 一款 大法

本文主要是介绍都说vim大法好(如何打造一款属于自己的vim),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、使用插件前后对比
  • 二、插件
    • 插件管理Vim-plug
    • YouCompleteMe
    • NERDTree
    • leaderF
    • vim-which-key
    • Ale
    • vim-airline
    • vim-colors-solarized
    • 更强大的代码跳转及函数列表插件--GNU Global(gtags)


前言

vim的强大不仅强大在它的几乎全键盘的快捷键,更强大在它的插件。

这篇文章助你打造一款属于自己的vim。有人说,我用vscode它不香吗,但作为一个喜欢动手党,我更想自己动,起码可以学习一些关于插件的小知识。(maybe你也可能用Obsidian这样的软件,这款软件想用起来顺手,也必然少不了各式各样的插件)


一、使用插件前后对比

安装插件前的样子:在这里插入图片描述
不说别的,就这个紫色我就不喜欢,且初使用vim时各种拼写不检查,语法不报错种种问题,那种痛处,想必每个使用vim的人都经历过一遍。
目前我的vim大致长这个样子:
在这里插入图片描述

想要用的达到vscode的便利性,至少需要语法检查,目录树,函数列表,能同时打开多个buffer,以及代码跳转。
下面介绍一些好用的插件及其安装:

二、插件

插件管理Vim-plug

只要你安装插件,这款必不可少。首先将这款插件手动下载下来,插件下载地址:https://github.com/junegunn/vim-plug 若是无法访问github的小伙伴,推荐去码云https://gitee.com瞅一瞅,总有些意想不到的惊喜哦。下载后解压到~/.vim目录中,接下来在终端中运行

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

插件安装之后,还需要在~/.vimrc中配置和声明,请在 ~/.vimrc 的顶部添加以下行

call plug#begin()
" The default plugin directory will be as follows:
"   - Vim (Linux/macOS): '~/.vim/plugged'
"   - Vim (Windows): '~/vimfiles/plugged'
"   - Neovim (Linux/macOS/Windows): stdpath('data') . '/plugged'
" You can specify a custom plugin directory by passing it as the argument
"   - e.g. `call plug#begin('~/.vim/plugged')`
"   - Avoid using standard Vim directory names like 'plugin'" Make sure you use single quotes
" Unmanaged plugin (manually installed and updated)
Plug '~/my-prototype-plugin'" Initialize plugin system
call plug#end()

在配置文件中,注释用" "来表示,使用vim-plug来安装其他的插件格式如:Plug '~/my-prototype-plugin'
所有通过vim-plug安装的插件,请把代码写在call plug#begin()call plug#end()之间。
重新加载 .vimrc 并安装插件。请在vim中使用命令:PlugInstall
使用

$ vim        #打开vim
:PlugStatus  #查看插件状态
:PlugInstall #安装之前在配置文件中声明的插件
:PlugUpdate   #更新插件
:PlugDiff     #查看插件的变化状态,简单地回滚有问题的插件。
:PlugClean    #删除插件

YouCompleteMe

插件如其名,号称最强大最智能的vim补全插件。什么都好,唯一的缺点:安装困难(依赖环境较复杂)
安装此插件需要一些前置条件:首先你的python版本要大于3.6,且官方文档中说ycmd已经更新到C++17,所以要求gcc版本至少为8,clang版本至少为7,CMake版本至少为3.13。
下面咱们一起来安装:

gcc 安装
在终端中输入

sudo apt update
sudo apt install build-essential

这个命令将会安装一系列软件包,包括gcc,g++,和make
在终端中输入:

sudo apt install python3-pip

CMake安装
安装pip(安装cmake使用)(默认你们电脑都安装了python3了)
YCM 需要 CMake 3.13 或更高版本。如果你的CMake太旧了,你可以简单地得到一个非常新的版本。pip install --user cmake
推荐的安装方式(源码编译安装):
首先去cmake官方下载.tar.gz文件,执行

$ tar zxvf 文件名
# 注释 
# 进入解压后的cmake文件夹
$ ./bootstrap
# 编译
$ make
# 安装 	
$ sudo make install 

YCM安装:
~/.vimrc中加入Plug 'Valloric/YouCompleteMe'
vim-plug包补全
vim-plug 安装完成后,为了避免包缺失,在 ~/.vim/plugged/YouCompleteMe下运行命令。
当使用git clone下来的工程中带有submodule时,初始的时候,submodule的内容并不会自动下载下来的,此时,只需执行如下命令:

	git submodule update --init --recursive

即可将子模块内容下载下来后工程才不会缺少相应的文件。

YCM

这篇关于都说vim大法好(如何打造一款属于自己的vim)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/725302

相关文章

利用Python打造一个Excel记账模板

《利用Python打造一个Excel记账模板》这篇文章主要为大家详细介绍了如何使用Python打造一个超实用的Excel记账模板,可以帮助大家高效管理财务,迈向财富自由之路,感兴趣的小伙伴快跟随小编一... 目录设置预算百分比超支标红预警记账模板功能介绍基础记账预算管理可视化分析摸鱼时间理财法碎片时间利用财

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

基于Python打造一个全能文本处理工具

《基于Python打造一个全能文本处理工具》:本文主要介绍一个基于Python+Tkinter开发的全功能本地化文本处理工具,它不仅具备基础的格式转换功能,更集成了中文特色处理等实用功能,有需要的... 目录1. 概述:当文本处理遇上python图形界面2. 功能全景图:六大核心模块解析3.运行效果4. 相

Python从零打造高安全密码管理器

《Python从零打造高安全密码管理器》在数字化时代,每人平均需要管理近百个账号密码,本文将带大家深入剖析一个基于Python的高安全性密码管理器实现方案,感兴趣的小伙伴可以参考一下... 目录一、前言:为什么我们需要专属密码管理器二、系统架构设计2.1 安全加密体系2.2 密码强度策略三、核心功能实现详解

基于Python打造一个可视化FTP服务器

《基于Python打造一个可视化FTP服务器》在日常办公和团队协作中,文件共享是一个不可或缺的需求,所以本文将使用Python+Tkinter+pyftpdlib开发一款可视化FTP服务器,有需要的小... 目录1. 概述2. 功能介绍3. 如何使用4. 代码解析5. 运行效果6.相关源码7. 总结与展望1

Spring AI与DeepSeek实战一之快速打造智能对话应用

《SpringAI与DeepSeek实战一之快速打造智能对话应用》本文详细介绍了如何通过SpringAI框架集成DeepSeek大模型,实现普通对话和流式对话功能,步骤包括申请API-KEY、项目搭... 目录一、概述二、申请DeepSeek的API-KEY三、项目搭建3.1. 开发环境要求3.2. mav

如何设置vim永久显示行号

《如何设置vim永久显示行号》在Linux环境下,vim默认不显示行号,这在程序编译出错时定位错误语句非常不便,通过修改vim配置文件vimrc,可以在每次打开vim时永久显示行号... 目录设置vim永久显示行号1.临时显示行号2.永www.chinasem.cn久显示行号总结设置vim永久显示行号在li

用Java打造简易计算器的实现步骤

《用Java打造简易计算器的实现步骤》:本文主要介绍如何设计和实现一个简单的Java命令行计算器程序,该程序能够执行基本的数学运算(加、减、乘、除),文中通过代码介绍的非常详细,需要的朋友可以参考... 目录目标:一、项目概述与功能规划二、代码实现步骤三、测试与优化四、总结与收获总结目标:简单计算器,设计

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip