主頁 >  其他 > Win10的VIM配置

Win10的VIM配置

2023-04-22 07:38:31 其他

我的VIM配置

簡介

電腦重裝了個win10,想在wi10上用vim,所以配置了個NeoVim,下面是配置好的效果圖:

圖片

安裝步驟

1. 下載安裝vim

由于vim有點老舊,所以安裝NeoVim,下載后直接雙擊Neovim Qt運行,下載鏈接:https://github.com/neovim/neovim/releases/tag/stable
圖片

2. 健康檢查

安裝完成后運行一下健康檢查:checkhealth,檢查環境是否齊全
圖片

3. 環境配置

按照官方檔案配置(https://github.com/neovim/neovim/wiki/Installing-Neovim)
圖片
配置$VIMRUNTIME環境,這個運行環境是安裝目錄下的./NeoVim\share\nvim\runtime

PATH: 包括neovim的bin和一些后面會用到的軟體變數,如圖:

圖片

:setpell: 打開軟體直接輸入,如果執行失敗的話,去官網上下載檔案,手動放到目錄中去

init.lua:核心組態檔,在neovim中,使用lua來配置,目錄:C:\Users\your-user-name\AppData\Local\nvim

上面配置好之后記得再次運行健康檢查:checkhealth

4. 配置目錄

lua支持模塊化配置,我們創建如下圖所示的檔案(plugins目錄下的都是一些插件配置)
圖片

5. 說明一下這幾個檔案的用途

  • init.lua 核心組態檔,用來加載其他的組態檔
  • options.lua 基礎配置,包括一些行號、tab、換行等配置
  • lazy.lua 插件管理器lazy.nvim的配置
  • keymaps.lua 快捷鍵設定
  • plugins目錄下的都是一些插件配置

6. 插件管理器安裝

這里選擇Lazy.nvim作為插件管理器(主要是有個ui,看起來舒服),直接按照官方檔案安裝:(https://github.com/folke/lazy.nvim)

這里需要安裝Nerd Font(一款字體,不安裝的話插件中有些符號無法顯示)

圖片

組態檔如下:

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
    vim.fn.system({
        "git", "clone", "--filter=blob:none",
        "https://github.com/folke/lazy.nvim.git", "--branch=stable", -- latest stable release
        lazypath
    })
end
vim.opt.rtp:prepend(lazypath)

-- Use a protected call so we don't error out on first use
local status_ok, lazy = pcall(require, 'lazy')
if not status_ok then return end
-- Start setup
lazy.setup({
    spec = {
      -- 需要的插件都寫在這里
    }
})

撰寫完成后,在init.lua中匯入require('core.lazy')

安裝完成后,輸入:Lazy,如圖:

圖片

7. 插件安裝示例

基本上都是在github上找官方檔案一步一步安裝的,這里就以安裝nvim-tree為案例演示一下插件安裝的方法(https://github.com/nvim-tree/nvim-tree.lua)

圖片

  • 撰寫lazy.lua
  local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
  if not vim.loop.fs_stat(lazypath) then
      vim.fn.system({
          "git", "clone", "--filter=blob:none",
          "https://github.com/folke/lazy.nvim.git", "--branch=stable", -- latest stable release
          lazypath
      })
  end
  vim.opt.rtp:prepend(lazypath)

  -- Use a protected call so we don't error out on first use
  local status_ok, lazy = pcall(require, 'lazy')
  if not status_ok then return end
  -- Start setup
  lazy.setup({
      spec = {
          {
              "nvim-tree/nvim-tree.lua",
              version = "*",
              dependencies = {"nvim-tree/nvim-web-devicons"},
              config = function() require("nvim-tree").setup {} end
          }
      }
  })
  • 運行:Lazy安裝
  • 撰寫組態檔nvim-tree.lua,這些配置都在官方檔案里
  local status,ntree = pcall(require,'nvim-tree')
  if not status then 
      return
  end

  vim.g.loaded_netrw = 1
  vim.g.loaded_netrwPlugin = 1

  vim.opt.termguicolors = true

  ntree.setup({
  sort_by = "case_sensitive",
  renderer = {
      group_empty = true,
  },
  filters = {
      dotfiles = true,
  },
  })

  • init.lua中匯入
-- 省略lua檔案夾
require('plugins.nvim-tree')
  • 輸入:so重新加載組態檔

8. 我裝的一些插件

由于我本人只是使用vim查看代碼,撰寫檔案,所以并沒有安裝Lsp(雖然我裝了Mason.....)

navarasu/onedark.nvim:主題插件,超愛onedark配色

nvim-tree/nvim-tree.lua:左側目錄樹

windwp/nvim-autopairs:自動完成括號、單引號、雙引號啥的

nvim-telescope/telescope.nvim: 全域搜索

phaazon/hop.nvim:快速跳轉

szw/vim-maximizer:vim視窗最大化

christoomey/vim-tmux-navigator:tmux導航

numToStr/Comment.nvim:注釋

tpope/vim-surround:成對符號修改,可以很方便輸入成對的符號,例如將一串字符中間的幾個字符用括號包裹起來

williamboman/mason.nvim: mason,LSP安裝管理器

illiamboman/mason-lspconfig.nvim: LSP

neovim/nvim-lspconfig : LSP

folke/trouble.nvim :顯示warning

nvim-treesitter/nvim-treesitter 代碼高亮

KaraMCC/vim-termtoggle 打開終端

iamcco/markdown-preview.nvim markdown預覽

folke/which-key.nvim:神器,顯示vim快捷鍵

akinsho/bufferline.nvim: 美化,把 buffer 顯示成類似 VSCode 中 Tab 頁

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/550786.html

標籤:其他

上一篇:toml格式組態檔介紹

下一篇:返回列表

標籤雲
其他(157799) Python(38089) JavaScript(25379) Java(17985) C(15215) 區塊鏈(8256) C#(7972) AI(7469) 爪哇(7425) MySQL(7135) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4555) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1959) Web開發(1951) python-3.x(1918) HtmlCss(1917) 弹簧靴(1913) C++(1910) xml(1889) PostgreSQL(1872) .NETCore(1854) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • Win10的VIM配置

    我的VIM配置 簡介 電腦重裝了個win10,想在wi10上用vim,所以配置了個NeoVim,下面是配置好的效果圖: 安裝步驟 1. 下載安裝vim 由于vim有點老舊,所以安裝NeoVim,下載后直接雙擊Neovim Qt運行,下載鏈接:https://github.com/neovim/neo ......

    uj5u.com 2023-04-22 07:38:31 more
  • toml格式組態檔介紹

    toml官方wik toml官方檔案 此次檔案是以v1.0.0為例,進行說明的。如果使用到的版本不同,直接去官方檔案中找對應的版本即可。 談到組態檔,大家都能說出來好幾種,比如常見的ini、xml、json、yaml、properties、toml等等,因為專案中用到了toml格式的組態檔,但是 ......

    uj5u.com 2023-04-22 07:37:46 more
  • 【ZeroMQ】zguide 第一章 部分翻譯

    為了更好的閱讀體驗,請點擊這里 本文大部分內容翻譯自 Chapter 1 - Basics,原因是之前翻譯的版本太老了,不得不親自披掛上陣~~拿機器翻譯一下~~。只截取了部分自己可能用得到的,所以如果有看不太懂的地方,去翻一下原網頁吧。QWQ 附贈 libzmq 的 api 介面函式說明 一份。 一 ......

    uj5u.com 2023-04-22 07:37:37 more
  • 10萬字干貨:《數字業務連續性提升最佳實踐》免費領取|TakinTalks社

    一分鐘精華速覽 首刊限版400本,沒有電子版下載。 100本作為社區福利,免費領取,領完即止!不加印。 為什么會有這本刊物? TakinTalks社區是由業內專家共同發起的、專注業務穩定性提升的技術交流平臺。面向技術管理者和一線從業者,定期探討行業前沿的技術,分享最新的、可參考的、可落地的實戰經驗。 ......

    uj5u.com 2023-04-22 07:36:24 more
  • Excel的列數如何用數字表示?

    本文介紹在Excel表格檔案中,用數字而非字母來表示列號的方法。 在日常生活、作業中,我們不免經常使用各種、各類Excel表格檔案;而在Excel表格檔案中,微軟Office是默認用數字表示行數,用字母表示列數的,如下圖所示: 而這樣就帶來一個問題:當一個Excel表格檔案的列數相對較多時(比如有幾 ......

    uj5u.com 2023-04-22 07:35:55 more
  • Docker基礎知識和命令使用入門

    本文介紹了 Docker 相關的基礎知識和命令的簡單使用。基礎知識部分包括 Docker 的用途和意義,Docker 的鏡像、容器、倉庫、Dockerfile 和 Docker Compose 的理解,以及 Docker 圖形管理工具 Portainer 的基礎功能。Docker 命令的使用包括鏡像... ......

    uj5u.com 2023-04-21 09:23:34 more
  • web3 產品介紹:硬體錢包Ledger 離線管理私鑰更安全

    Ledger是一款硬體錢包,可以安全地存盤用戶的加密資產,并在需要時進行交易。作為一種離線存盤設備,Ledger錢包比在線錢包更加安全,因為它能夠保護用戶的私鑰和交易資訊,使其免受黑客攻擊和網路病毒的影響。本文將詳細介紹Ledger錢包的特點和使用方法。 一、Ledger錢包的特點 1.安全性高:L ......

    uj5u.com 2023-04-21 09:23:29 more
  • 人工智能AI影像風格遷移(StyleTransfer),基于雙層ControlNet(Pyt

    影像風格遷移(Style Transfer)是一種計算機視覺技術,旨在將一幅影像的風格應用到另一幅影像上,從而生成一幅新影像,該新影像結合了兩幅原始影像的特點,目的是達到一種風格化疊加的效果,本次我們使用Stable-Diffusion結合ControlNet來實作影像風格遷移效果。 安裝Contr ......

    uj5u.com 2023-04-21 09:23:15 more
  • 人工智能AI影像風格遷移(StyleTransfer),基于雙層ControlNet(Pyt

    影像風格遷移(Style Transfer)是一種計算機視覺技術,旨在將一幅影像的風格應用到另一幅影像上,從而生成一幅新影像,該新影像結合了兩幅原始影像的特點,目的是達到一種風格化疊加的效果,本次我們使用Stable-Diffusion結合ControlNet來實作影像風格遷移效果。 安裝Contr ......

    uj5u.com 2023-04-21 09:17:25 more
  • 年薪50W京東軟體測驗工程師的成長路 —— 我們都曾一樣迷茫

    ?和朋友談到軟體測驗行業的發展問題,其實軟體測驗現在已經不知不覺發生了非常大的變化,前幾年的軟體測驗行業還是一個風口,人才缺口巨大,隨著不斷地轉行人員以及畢業的大學生瘋狂地涌入軟體測驗行業,目前軟體測驗行業“缺口”已經基本飽和。 當然,我說的是最基礎的功能測驗的崗位需求已經很少了,而自動化、性能、安 ......

    uj5u.com 2023-04-21 08:10:56 more