当前位置:网站首页>从零开始配置 vim(9)——初始配置
从零开始配置 vim(9)——初始配置
2022-08-10 02:46:00 【aluluka】
虽然本系列文章叫做从0开始配置vim,似乎我们从一开始就要写vimrc配置文件,但是我们并没有这么做。我们先经过几篇文章了解了下面的几个内容
- 如何设置vim属性,从而改变vim的特征
- 配置快捷键,以提高我们的使用效率
- 使用自动命令,以便使用vim来自动化我们的相关操作
这些既有vimscript的东西,也有vim自身一些特性的描述。拥有这些基础知识之后,在阅读其他人写的配置或者自己配置将会变得更加容易。当然关于vim我们还有很多内容没有讲,例如该如何自定义命令,如何弹出一个窗口,以及到最后如何编写自己的插件。如果后续在配置过程中涉及到新的内容,我将会给大家进行讲解,尽量让大家明白我们配置的每行代码都有哪些作用,让大家不仅仅是照着抄一遍,而是能举一反三,根据自己的习惯打造完全属于自己的 vim。话不多说,下面就让我们从0开始来一步一步的将原始落后的vim打造成现代化的好用的编辑器。
相应的准备工作
开始配置前,让我们进行一些准备工作。
- 我们采用
neovim进行配置,也打算使用 纯lua进行配置。如果你用的是vim,请安装下载最新的neovim。 - 我本地的环境采用的是
neovim0.7.2版本,你可以使用稍微低一点的版本,但至少保证版本在0.6及以上版本。(不要怪我一直变换版本,因为7以上的版本添加了自动命令的lua接口。) - 我随教程创建了一个 github仓库用于保存记录每次的配置,各位小伙伴可以克隆下来,也可以自己按照上面的目录结构和文章所描述的自己一步步手动组织。仓库地址: nvimrc-tutorial 。我们先使用 git clone
https://github.com/aMonst/nvimrc-tutorial.git ~/.config/nvim将仓库克隆到本地,然后在里面创建一个init.lua文件作为配置文件的入口
基础配置
我们在 init.lua 中写入如下内容作为基础配置
-- 设置文件编码格式为 utf-8
vim.g.encoding = "utf-8"
-- 设置终端编码格式为 utf-8
vim.o.termencoding = "utf-8"
-- 开启语法高亮
vim.o.syntax = "enable"
-- 显示相对行号
vim.o.relativenumber = true
-- 显示行号
vim.o.number = true
-- 高亮所在行
vim.o.cursorline = true
-- 自动换行
vim.o.wrap = true
-- 显示光标位置
vim.o.ruler = true
-- 边输入边搜索
vim.o.incsearch = true
-- 开启搜索匹配高亮
vim.o.hlsearch = true
-- 搜索时自行判断是否需要忽略大小写
vim.o.smartcase = true
-- tab键转换为 4 个空格
vim.o.tabstop = 4
vim.o.softtabstop = 4
vim.o.shiftwidth = 4
-- 新行对齐当前行,tab转换为空格
vim.o.expandtab = true
vim.bo.expandtab = true
vim.o.autoindent = true
vim.bo.autoindent = true
vim.o.smartindent = true
-- << >> 缩进时移动的长度
vim.o.shiftwidth = 4
vim.bo.shiftwidth = 4
-- 使用jk移动光标时,上下方保留8行
vim.o.scrolloff = 8
vim.o.sidescrolloff = 8
-- 设置自动折叠
vim.o.smartindent = true
-- 历史命令最多保存1000条
vim.o.history = 1000
-- 显示空白字符
vim.o.list = true
-- 样式
vim.o.background = "dark"
vim.o.termguicolors = true
vim.opt.termguicolors = true
完成之后,再次打开vim发现它已经变成了这样
本篇就到这里了,下一篇我们将对默认的快捷键进行配置
边栏推荐
- GDB command basic parameters
- PostgreSQL相关语法及指令示例
- 第三章 搜索与图论(二)
- [Red Team] ATT&CK - Self-starting - Self-starting mechanism using LSA authentication package
- PC摄像头设置 默认摄像头设置 win11 默认摄像头设置
- 2022/08/09 学习笔记 (day26) IO流
- exchange2010 邮件数据库无法装入
- Research on IC enterprises
- [Kali Security Penetration Testing Practice Course] Chapter 9 Wireless Network Penetration
- The Evolutionary History of the "Double Gun" Trojan Horse Virus
猜你喜欢
随机推荐
flutter异步
推荐几款好用的MySQL开源客户端,建议收藏
兴业数金一面
【红队】ATT&CK - 自启动 - 注册表运行键、启动文件夹
C - The Battle of Chibi (dp加树状数组前缀和优化)
what is a microcontroller or mcu
数据挖掘和数据仓库之间的区别
实例046:打破循环
【CC3200AI 实验教程5】疯壳·AI语音人脸识别(会议记录仪/人脸打卡机)-定时器
芯片加速器 Accelerator
Robust Real-time LiDAR-inertial Initialization (Real-time Robust LiDAR Inertial Initialization) Paper Learning
Introduction and application of quantitative trading strategies
flex 的 三个参数:flex-grow、flex-shrink、flex-basis
HRnet
storage of data in memory
Arcgis进阶篇(1)——安装Arcgis Enterprise,创建sde库
量化交易策略介绍及应用市值中性化选股
nodejs 时钟案例(fs模块),重复使用fs.writeFile方法,旧内容会被覆盖
How to write a high-quality test case?
Robust Real-time LiDAR-inertial Initialization(实时鲁棒的LiDAR惯性初始化)论文学习








