Linux的奇妙冒险———vim的用法和本地配置

2024-01-24 21:52

本文主要是介绍Linux的奇妙冒险———vim的用法和本地配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

vim的用法和本地配置

  • 一.vim的组成和功能。
    • 1.什么是vim
    • 2.vim的多种模式
  • 二.文本编辑(普通模式)的快捷使用
    • 1.快速复制,粘贴,剪切。
    • 2.撤销,返回上一步操作
    • 3.光标的控制
    • 4.文本快捷变换
    • 5.批量化操作和注释
  • 三.底行模式
  • 四.vim的配置

一.vim的组成和功能。

1.什么是vim

Vim是一款文本编辑器,是Vi的改进版本。它是一个开源软件,可在各种操作系统上运行。Vim具有强大的编辑功能,支持多种编程语言和文件格式,可以通过插件扩展功能。它也具有高度可定制性,用户可以通过配置文件自定义编辑器的行为和外观。Vim是程序员和系统管理员常用的编辑工具之一。

2.vim的多种模式

  • 命令模式(普通模式):在这个模式下,用户可以使用键盘执行各种命令,例如移动光标、复制粘贴、删除文本等。普通模式是默认的模式,用户可以通过按下Esc键进入普通模式。
  • 插入模式(Insert Mode):在这个模式下,用户可以输入文本。用户可以通过按下i、a、o等键进入插入模式,分别表示在当前光标位置插入文本、在当前光标后插入文本、在当前行下方插入新行并切换到插入模式。
  • 底行模式(命令行模式):在这个模式下,用户可以输入各种命令,例如保存文件、退出编辑器、查找替换文本等。用户可以通过按下冒号(:)键进入命令行模式。

二.文本编辑(普通模式)的快捷使用

1.快速复制,粘贴,剪切。

  • yy/n+yy
    复制当前行/复制n当前行以下n行
  • p/n+p
    粘贴所复制的内容/粘贴n次
  • dd/n+dd
    删除指定行/删除n行

2.撤销,返回上一步操作

  • u
    撤销上一步操作
  • ctrl +r
    对历史撤销进行撤销

3.光标的控制

  • shift+4$
    将光标定位到行尾
  • shift+6^
    将光标定位到行首
  • gg
    将光标定位到整个文本首端
  • shift+g
    将光标定位到整个文本末端
  • n+shift+g
    将光标定位到目标n行行首
  • h j k l
    光标向左,下,右,上移动
  • w
    以单词或符号为整体向后移动
  • b
    以单词或符号为整体向前移动

4.文本快捷变换

  • shift+~
    转换字母大小写
  • n+x
    删除光标后的n个字符
  • n+r
    替换光标后的n个字符为指定字符
  • shift+r
    进入文本替换模式,直接替换光标出文本
  • shift+zz
    快速保存并退出

5.批量化操作和注释

首先ctrl+v进入模块化视图,通过h j k l进行区域选中
在这里插入图片描述

然后shift+i进入插入模式,书写//,再按两次esc完成
在这里插入图片描述

三.底行模式

用来在vim状态下直接与shell交互,命令行的命令均可使用,须在最前方加上!

  • !+command
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
这样一来可以在vim内部完成编译处理工作。

当然,有几个常见的底行指令:

1:w  保存
2:q 退出
3:wq 保存加退出
4:set nu 打开行号
5:nonu 取消行号
6:vs +文件名  可以分屏处理多个文件如下所示

在这里插入图片描述
在vs分屏处理下,通过ctrl+ww,可以使光标进行切换

四.vim的配置

在每个用户的默认目录里都有一个.vimrc的文件,里便可以自行配置

在这里插入图片描述

这个文件是我个人的配置文件,大家可以通过自己的需求在网上找到合适指令进行配置
通过vim .vimrc进行编辑
在这里插入图片描述

这篇关于Linux的奇妙冒险———vim的用法和本地配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Linux使用nload监控网络流量的方法

《Linux使用nload监控网络流量的方法》Linux中的nload命令是一个用于实时监控网络流量的工具,它提供了传入和传出流量的可视化表示,帮助用户一目了然地了解网络活动,本文给大家介绍了Linu... 目录简介安装示例用法基础用法指定网络接口限制显示特定流量类型指定刷新率设置流量速率的显示单位监控多个

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

linux下多个硬盘划分到同一挂载点问题

《linux下多个硬盘划分到同一挂载点问题》在Linux系统中,将多个硬盘划分到同一挂载点需要通过逻辑卷管理(LVM)来实现,首先,需要将物理存储设备(如硬盘分区)创建为物理卷,然后,将这些物理卷组成... 目录linux下多个硬盘划分到同一挂载点需要明确的几个概念硬盘插上默认的是非lvm总结Linux下多

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤

《SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤》本文主要介绍了SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤,文中通过示例代码介绍的非常详... 目录 目标 步骤 1:确保 ProxySQL 和 mysql 主从同步已正确配置ProxySQL 的

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

MyBatis-Flex BaseMapper的接口基本用法小结

《MyBatis-FlexBaseMapper的接口基本用法小结》本文主要介绍了MyBatis-FlexBaseMapper的接口基本用法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具... 目录MyBATis-Flex简单介绍特性基础方法INSERT① insert② insertSelec