Vim入门教程
Vim是一个高度可配置的文本编辑器,用于创建和修改各种类型的文本文件。以下是一些基本的Vim使用示例,展示如何在Vim中进行编辑和操作。
1. 打开和保存文件
- 打开一个名为
example.txt的文件:vim example.txt - 打开多个文件,使用大括号包围文件列表:
vim file1.txt file2.txt
2. Vim的模式
- 普通模式(Normal Mode):Vim启动时默认的模式,可以移动光标,复制、粘贴、删除文本等。
- 插入模式(Insert Mode):编辑文本的模式。按
i进入插入模式,按Esc返回普通模式。 - 命令行模式(Command Mode):输入命令,如保存文件或退出Vim。按
:进入命令行模式。
3. 基本编辑命令
- 进入插入模式并编辑文本:
i # 进入插入模式 Hello, Vim! # 输入文本 Esc # 返回普通模式 - 删除一个字符:
x - 删除一行:
dd - 复制一行:
yy - 粘贴文本:
p - 撤销:
u - 重做:
Ctrl + r
4. 移动光标
- 按
h、j、k、l在文本中左、下、上、右移动光标。 - 按
G移动到文件末尾,按gg移动到文件开头。
5. 查找和替换
- 查找一个单词:
/word,然后按n或N跳转到下一个或上一个匹配项。 - 替换一个单词:
:s/old-word/new-word/g,其中g表示全局替换。
6. 保存和退出
- 保存文件:
:w - 保存所有打开的文件:
:wqa - 退出Vim:
:q - 保存并退出:
:wq
7. 设置和自定义
- 设置行号显示:
:set number - 切换到水平分割窗口:
:split或简写:sp - 切换到垂直分割窗口:
:vsplit或简写:vsp
8. 高级编辑技巧
- 使用可视模式选择文本块:按
v进入可视模式,移动光标选择文本,然后执行复制或删除。 - 使用宏录制一系列操作:按
q<letter>开始录制,执行操作后按q结束。使用@<letter>执行宏。
9. Vim脚本
- Vim脚本文件通常以
.vim为后缀,例如.vimrc是Vim的配置文件。 - 在
.vimrc中添加以下行以启用语法高亮:syntax on
10. 插件管理
- 使用Vim插件管理器(如Vundle或Pathogen)来安装和管理插件。
这些只是Vim的一些基本操作和示例。Vim的功能非常强大,可以通过阅读其文档(输入:help在Vim中或查看:help vim_tutorial)和配置来进一步学习。
相关文章:
Vim入门教程
Vim是一个高度可配置的文本编辑器,用于创建和修改各种类型的文本文件。以下是一些基本的Vim使用示例,展示如何在Vim中进行编辑和操作。 1. 打开和保存文件 打开一个名为example.txt的文件: vim example.txt 打开多个文件,使用大…...
机器学习课程复习——隐马尔可夫
不考计算题 Q:概率图有几种结构? 条件独立性的公式? 顺序结构发散结构汇总结构Q:隐马尔可夫模型理解? 概念 集合:状态集合、观测集合 序列:状态序列、观测序列...
大数据-数据分析初步学习,待补充
参考视频:数据分析只需3小时从入门到进阶(up亲身实践)_哔哩哔哩_bilibili 数据指标: 对当前业务有参考价值的统计数据 分类:用户数据,业务数据,行为数据 用户数据 存量: DAU&#…...
微服务为什么使用RPC而不使用HTTP通信
微服务架构中使用RPC(Remote Procedure Call)而不是HTTP通信,主要是因为RPC在某些方面相比HTTP具有显著的优势。以下是一些关键原因: 性能: RPC通常比HTTP性能更高。RPC协议可以使用二进制序列化格式(如gRP…...
怪物猎人物语什么时候上线?游戏售价多少?
怪物猎人物语是一款全新的RPG游戏,玩家在游戏中将化身为骑士,不断与怪物建立羁绊、不断成长,踏上前往外面世界的旅程,且最终目的地是以狩猎怪物为生的猎人世界。因为最近有不少玩家在关注这款游戏,所以下面就给大家分享…...
以创新思维点亮盲盒小程序:探索未来零售新趋势
随着科技的飞速发展和消费者需求的不断变化,零售行业正迎来一场前所未有的变革。在这个变革的浪潮中,盲盒小程序凭借其独特的魅力和巨大的潜力,成为未来零售新趋势的代表之一。本文将探讨如何以创新思维点亮盲盒小程序,探索未来零…...
DzzOffice集成功能最丰富的开源PHP+MySQL办公系统套件
DzzOffice是一套开源办公套件,旨在为企业和团队提供类似“Google企业应用套件”和“微软Office365”的协同办公平台。以下是对DzzOffice的详细介绍: 主要功能和应用: 网盘:支持企业、团队文件的集中管理,提供文件标签…...
关于生成式人工智能的发展
近年来,人工智能的发展引起了广泛关注,尤其是在深度学习领域,以深度神经网络为代表的人工智能技术已经取得了重大突破。然而,深度神经网络也有其局限性。深度学习技术在处理一些复杂问题时表现良好,但在解决更广泛的任…...
Python魔法方法__call__深入详解
目录 1、魔法方法__call__初探 🧙♂️ 1.1 什么是__call__? 1.2 基础用法演示 1.3 自定义行为与参数传递 2、实现轻量级装饰器模式 🎗️ 2.1 装饰器概念回顾 2.2 利用__call__构建装饰器 2.3 深入理解装饰器应用场景 3、类实例变身函数调用 🔮 3.1 类似函数的…...
PyQt5 生成py文件不能运行;pushButton点击事件;QTextEdit 获取输入框内容
目录 cant open file c.pyuic: c.pyuic $FileName$ -o $FileNameWithoutExtension$.p PyQt5 生成py文件不能运行 pushButton点击事件 QTextEdit 获取输入框内容 整体运行代码: Creating a Qt Widget Based Application | Qt Creator Manual cant open file c.pyuic: c.…...
HarmonyOS最佳实践文档总结汇总(面试题可能会问)
api12 上面来了最佳实现方案,未来面试题有的问了 编号分类内容子类链接 1性能体验设计体验设计概述 文档中心用户体验设计 文档中心流畅评测指标 文档中心交互流畅体验设计 文档中心视觉流畅体验设计 文档中心2性能优化开发高性能ArkUIUI组件性能优化文档中心合…...
leetcode 56合并区间
思路 合并就是首先应该按照left左边界排序,排完序以后,如果i的左边界小于等于i-1的右边界,说明有重合,此时这两个可以合并,右边界应该取最大值。 代码 排序 我是定义了一个类,存储左右边界,先将数组转化…...
企业微信内嵌H5项目接入聊天功能
产品需求是,在列表中把符合条件的列表接入聊天功能,以下是详细步骤: 1.引入企业微信 <script src"https://res.wx.qq.com/wwopen/js/jsapi/jweixin-1.0.0.js"></script> 2.获取wx签名(必须要) /*** 获取wx签名**/ export function getWxJsApi(data) {r…...
微信小程序 this.setData高级用法(只更改单个数据)
合理使用 setData | 微信开放文档 1、页面 <view class"h-100px"></view> <view>最简单的数据:</view> <button bind:tap"handleAdd" data-type"1">点我加 1: {{text}}</button> &…...
使用npm发布自己的插件包
文章目录 1. 准备工作1.1 拥有一个npm账号1.2 准备你的插件代码1.3 编写package.json文件 2. 本地测试3. 发布到npm3.1 登录npm3.2 发布插件3.3 更新插件 4. 注意事项 在JavaScript和Node.js的生态系统中,npm(Node Package Manager)是一个非常…...
前端入门篇(五十二)练习6:transition过渡小动画
所以应该先找到第n个li,找到li再找img,li没有找错,底下又各自只有一个img,解决 ul li:nth-child(1) img { } 描述文字从下往上: 一开始描述也在框框下面,当hover时,translateY(0)࿰…...
scrapy模块的基础使用
scrapy模块是爬虫工作者最常用的一个模块之一,因它有许多好用的模板,和丰富的中间件,深受欢迎。 一,scrapy的安装 可以通过pypi的指引进行安装 在终端内输入以下代码: pip install scrapy 二,项目的建…...
如何在不降低网络安全防护的前提下,优化pcdn的流量清洗效率?
在不降低网络安全防护的前提下,优化PCDN的流量清洗效率是一个复杂但至关重要的任务。以下是一些建议,帮助您实现这一目标: 一.升级硬件与网络设备: 投资于高性能的硬件和网络设备,以确保流量清洗过程中的…...
linux发行版CentOS、Debian和Ubuntu的对比
一、CentOS、Debian和Ubuntu优缺点比较 CentOS、Debian和Ubuntu是目前国内云服务市场上最常见三个linux发行版本,在我们选购云服务时,要怎么选择?以下表格详细介绍了三者之间的优缺点和适用场景。 特性CentOSDebianUbuntu优点稳定性高&…...
WordPress如何删除内存中的缓存?
今天boke112百科将某篇文章修改分类和内容更新后,发现文章底部的相关文章显示的内容跟文章分类、标签毫无关系,还是显示原来的旧内容。后来查看YIA主题相关文章的代码,才发现相关文章的数据保存到内存中的,而且是永不过期…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...
中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...
HDFS分布式存储 zookeeper
hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架,允许使用简单的变成模型跨计算机对大型集群进行分布式处理(1.海量的数据存储 2.海量数据的计算)Hadoop核心组件 hdfs(分布式文件存储系统)&a…...
HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...
论文笔记——相干体技术在裂缝预测中的应用研究
目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术:基于互相关的相干体技术(Correlation)第二代相干体技术:基于相似的相干体技术(Semblance)基于多道相似的相干体…...
