【ubuntu】Vim配置记录

一、Vim介绍

        vim是一个高度可定制的文本编辑器,有许多丰富的功能,扩展性极强,用户可以通过多种方式来增强vim

        vim有非常多的优点,例如高效率的移动,可以不用鼠标,完全用键盘操作,占用系统资源较少,可以无压力的打开其他编辑器打不开的大文件,并且在输入方面也十分高效,插入、复制、删除都十分容易

二、Vim配置

        在Linux下,vim的全局配置一般放在/etc/vim/vimrc,对所有用户生效,用户个性化的配置位于~/.vimrc,我们可以通过编辑此文件实现自己的个性化配置

1、基本设置

set nocompatible      //不与vi兼容,使用vim自己的操作命令
syntax on             //打开语法高亮,自动识别代码,使用多种颜色显示
set showcmd           //显示命令行
set showmode          //在底部显示当前模式
set mouse=a           //支持使用鼠标点击移动光标
set t_Co=256          //启动256色
set autoindent        //按下回车后,下一行缩进与上一行一致
set tabstop=4         //按下Tab后,vim显示的空格数
set cindent           //设置使用 C/C++ 语言的自动缩进方式
set backspace=2       //编辑时 backspace 键设置为2个空格

2、外观设置

set number            //显示行号
set relativenumber    //显示光标所在的当前行的行号,其他行为相对于该行的号
set cursorline        //光标显示的行高亮
set laststatus=2      //是否显示状态栏,0:不显示;1:多窗口显示;2:显示

3、搜索设置

set showmatch         //光标遇到括号,自动高亮对应的
set hlsearch          //高亮显示搜索结果
set incsearch         //搜索时,每输入一个字符,自动跳到1个匹配结果

4、编辑设置

set noswapfile                //不创建交换文件.swp
set listchars=tab:>-,trail:-  //如果行尾有多余的空格和Tab,该配置将让这些空格显示
set list                      //显示不可见字符

三、个人配置

set nocompatible
syntax on
set showcmd
set showmode
set t_Co=256
set autoindent
set tabstop=4
set cindent
set backspace=2set number
set relativenumber
set cursorline
set laststatus=2set showmatch
set hlsearch
set incsearchset noswapfile
set listchars=tab:>=,trail:=
set list

四、相关问题

1、source ~/.vimrc时报错

vimrc:1: command not found: syntax

        意思是syntax命令不存在,这是因为使用source ~/.vimrc命令时,其实相当于直接在终端运行“syntax on”命令,而shell中是不存在syntax这两个命令的。

        可以随便写个文件,里面写"pwd",然后source这个文件,和直接在终端执行"pwd"命令输出是一样的

        其实在编辑~/.vimrc之后不需要source操作,只需要正常的vim编辑你需要的文件就可以了。这是因为 ~/.vimrc文件是vim的配置文件,在每次vim编辑任何文件的时候都会自动读取并设置相关的信息。

2、点击ctrl+s无法退出

        点击ctrl+q即可返回原来可操作的状态

【参考博客】

[1] 有哪些编程必备的 Vim 配置? - 知乎

[2] Vim 配置入门 - 阮一峰的网络日志

[3] A Good Vimrc

[4] vim配置及插件安装管理(超级详细)_vim buffer插件-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/795397.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

159 Linux C++ 通讯架构实战14,epoll 函数代码实战

ngx_epoll_init函数的调用 //(3.2)ngx_epoll_init函数的调用(要在子进程中执行) //四章,四节 project1.cpp:nginx中创建worker子进程; //nginx中创建worker子进程 //官方nginx ,一个…

深入解析Python的lxml库:高效处理XML和HTML的利器

更多Python学习内容:ipengtao.com Python中的lxml库是一个强大的XML和HTML处理库,它基于libxml2和libxslt库,提供了高效的XML解析和处理功能。本文将详细介绍lxml库的安装、特性、基本功能、高级功能、实际应用场景和总结,帮助读者…

phpstorm设置头部注释和自定义注释内容

先说设置位置: PhpStorm中文件、类、函数等注释的设置在:setting-》Editor-》FIle and Code Template-》Includes-》PHP Function Doc Comment下设置即可,其中方法的默认是这样的: /** ${PARAM_DOC} #if (${TYPE_HINT} ! "…

Unity与CocosCraetor对比学习三

一、计时器 1.在Creator中 void start() {// js中的计时器// 延迟1秒后执行一次,不受Cocos限制setTimeout(() > {console.log("haha");}, 1000);// 每隔1秒执行一次setInterval(() > {console.log("haha");}, 1000);// creator中的计时…

计算机网络的分层结构及模型

1.计算机网络分层的基本原则 (1)各层之间相互独立,每层只实现一种相对独立的功能 (2)每层之间的交互尽可能少 (3)结构上可分割开,每层都采用最合适的技术来实现 (4&…

Linux第4课 Linux的基本操作

文章目录 Linux第4课 Linux的基本操作一、图形界面介绍二、终端界面介绍 Linux第4课 Linux的基本操作 一、图形界面介绍 本节以Ubuntu系统的GUI为例进行说明,Linux其他版本可自行网搜。 图形系统进入后,左侧黄框内为菜单栏,右侧为桌面&…

在订单流程中锁定库存的最佳时机

目录 1. 用户点击结算时锁定库存 2. 用户提交订单时锁定库存 3. 用户支付成功后锁定库存 最佳时机选择 1. 用户点击结算时锁定库存 优点:确保用户在决定购买时商品是可用的,增加了用户的购买信心。缺点:如果用户在结算后放弃购买&#x…

嵌入式开发中内存管理与优化

内存管理与优化 在嵌入式开发中,内存管理是一项至关重要的任务,直接影响到系统的稳定性和性能。由于嵌入式设备通常资源有限,尤其是内存资源,因此内存管理与优化显得尤为重要。 具体实现 1. 静态内存分配 静态内存分配是指在编…

[HackMyVM]靶场Birthday

难度:Hard kali:192.168.56.104 靶机:192.168.56.149 端口扫描 ┌──(root㉿kali2)-[~/Desktop] └─# nmap 192.168.56.149 Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-04-06 10:39 CST Nmap scan report for 192.168.56.149 Host is up (0.00016s latency). N…

硬件-1、体系架构

cpu 处理器 arm处理器的七种工作模式 arm寄存器 两张图是一样的,r0---r12是通用寄存器。其他寄存器可参考图一,cpu架构。 程序状态寄存器psr(cpsr/spsr) 程序异常处理 理解示例 当使用swi(软中断指令)指令…

【VMware Workstation】启动虚拟机报错“此主机支持 AMD-V,但 AMD-V 处于禁用状态”

问题出现步骤: 打开虚拟机: 然后报错: “此主机支持 AMD-V,但 AMD-V 处于禁用状态。 如果已在 BIOS/固件设置中禁用 AMD-V,或主机自更改此设置后从未重新启动,则 AMD-V 可能被禁用。 (1) 确认 BIOS/固件设…

机器学习KNN最邻近分类算法

文章目录 1、KNN算法简介2、KNN算法实现2.1、调用scikit-learn库中KNN算法 3、使用scikit-learn库生成数据集3.1、自定义函数划分数据集3.2、使用scikit-learn库划分数据集 4、使用scikit-learn库对鸢尾花数据集进行分类5、什么是超参数5.1、实现寻找超参数5.2、使用scikit-lea…

数据分析 -- numpy

文章目录 numpy库简介简介特点 numpy操作数组创建数组属性数组变更数据计算 numpy库简介 简介 开源的Python库,它提供了高性能的多维数值(numpy.ndarray)计算能力;由“Numerical Python”缩写而来,并且它是Pandas库的…

Zabbix6 - Centos7部署Grafana可视化图形监控系统配置手册手册

Zabbix6 - Centos7部署Grafana可视化图形监控系统配置手册手册 概述: Grafana是一个开源的数据可视化和监控平台。其特点: 1)丰富的可视化显示插件,包括热图、折线图、饼图,表格等; 2)支持多数据…

L2-2 口罩发放 (25 分)

坑点: 应该就是题目要求的身份证号唯一 然后是相同的人同一天多次申请 然后是时间相同按照申请记录排序 需要注意的是,不要在同一天内看到满足要求的就直接发放口罩,有可能发完之后发现后面的人的时间更早 #include "bits/stdc.h" …

Web Form

https://github.com/bonfy/go-mega/blob/master/04-web-form.md 从这网站学的 随着我们项目的扩大,代码量会愈来愈多,我们需要建立这样的数据结构来使整个项目看起来没有那么臃肿 package model - 负责数据建模 vm - View Model,定义各种…

【MySQL】增删改查操作(基础)

文章目录 1、新增操作(Create)1.1单行数据全列插入1.2多行数据指定列插入 2、查询操作(Retrieve)2.1全列查询2.2指定列查询2.3指定列查询2.4别名(as)2.5去重(distinct)2.6排序&#…

机器学习实战18-机器学习中XGBClassifier分类器模型的应用实战,以及XGBClassifier分类器的调优策略

大家好,我是微学AI,今天给大家介绍一下机器学习实战18-机器学习中XGBClassifier分类器模型的应用实战,以及XGBClassifier分类器的调优策略。XGBClassifier是基于eXtreme Gradient Boosting (XGBoost)算法的分类器模型,在机器学习领…

[Semi-笔记]Switching Temporary Teachers for Semi-Supervised Semantic Segmentation

目录 概要创新一:Dual Temporary Teacher挑战:解决: 创新二:Implicit Consistency Learning(隐式一致性学习)挑战:解决: 实验结果小结论文地址代码地址 分享一篇2023年NeurIPS的文章…

python 利用xpath 爬取一周天气

需求: 爬取 中国天气网指定城市一周的天气,以天津为例 实现: 1,先找到一周的数据位置。 divs html.xpath("//div[classhanml]") 2,再遍历每天。 trs div.xpath("./div/div[2]/table//tr[position…