如何在 Vim 中剪切、复制和粘贴

devtools/2024/9/18 13:55:32/ 标签: vim, 编辑器, linux

图片

目录

⛳️推荐

如何在 Vim 编辑器中复制文本

如何在 Vim 编辑器中剪切文本

如何在 Vim 编辑器中粘贴文本

如何通过选择文本来剪切和复制文本

通过选择文本复制

在 Vim 中选择文本来剪切文本


⛳️推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站

在本篇 Vim 快速技巧中,你将学习到剪切和复制粘贴的相关知识。

剪切、复制和粘贴文本是文本编辑中最基本的任务之一,我们都知道 Vim 有不同的处理方式。

这意味着,在你掌握它之前,你会害怕它,一旦你掌握了它,它就只是一个兔子洞。

虽然我将详细介绍剪切、复制和粘贴,但这里是本教程的基本摘要,以帮助你开始使用:

< 如显示不全,请左右滑动 >

按键描述
yiw复制当前单词。
yy复制整行。
diw剪切当前单词。
dd剪掉整行。
p粘贴文本。

别担心,Vim 为你提供的选项比我上面提到的要多得多。

在本教程中,我将引导你完成以下内容:

◈ 如何在 Vim 中复制文本

◈ 如何在 Vim 中剪切文本

◈ 如何在 Vim 中粘贴文本

◈ 如何使用可视模式在 Vim 中剪切和复制文本

那么让我们从第一个开始。

如何在 Vim 编辑器中复制文本

虽然我们使用术语“复制”,但 Vim 有一个不同的术语,称为 “扽出(yank)”,因此从现在开始,我将使用“扽出”而不是“复制”。

正如我之前提到的,你可以使用多种方法在 Vim 中扽出文本,以下是一些有用的方法:

< 如显示不全,请左右滑动 >

命令描述
nyy 或 nY扽出(复制)当前行和接下来的 n-1 行。例如,3yy 复制当前行及其下面的两行。
yaw扽出(复制)光标所在的当前单词。
yy 或 Y扽出(复制)整个当前行。
y$扽出(复制)从光标到行尾的文本。
y^ 或 y0扽出(复制)从光标到行首的文本。

要在 Vim 中扽出,请执行以下 3 个简单步骤:

1. 按 Esc 键切换到正常模式

2. 移动到要复制的行或单词

3. 按上表中的相关命令,你的文本将被复制

想学习交互式复制行的方式吗?跳到本教程的最后一部分。

如何在 Vim 编辑器中剪切文本

在 Vim 中,你没有任何删除文本的选项。取而代之的是剪切文本,因此删除和剪切文本与 Vim 中的操作类似。

要在 Vim 中剪切文本,请按 d 命令。但你永远不会在没有任何选项的情况下使用 d 命令。你总是会添加一些东西来做更多操作。

因此,你可以使用以下一些实用方法使用 d 命令剪切文本:

< 如显示不全,请左右滑动 >

命令描述
dd剪切整个当前行。
d$将文本从光标剪切到行尾。
d^ 或 d0将文本从光标剪切到行首。
ndd 或 dN剪切当前行和接下来的 n-1 行。例如,3dd 剪切当前行及其下面的两行。
daw剪切光标所在的当前单词。

假设我想从文件中剪切前 4 行,然后我需要使用 4dd,我是这样做的:

图片

如何在 Vim 编辑器中粘贴文本

在 Vim 中复制或剪切文本后,只需按 p 键即可粘贴它。

你可以多次按 p 键多次粘贴文本,也可以使用 np,其中 n 是要粘贴文本的次数。

例如,在这里,我粘贴了之前复制了三遍的行:

图片

就是这么简单!

如何通过选择文本来剪切和复制文本

如果你使用过 GUI 文本编辑器,那么你肯定习惯于通过选择文本来复制和剪切文本。

让我们从如何通过在 Vim 中选择文本来复制开始。

通过选择文本复制

要在可视模式下复制文本,请执行以下 3 个简单步骤:

1. 移动到要开始选择的地方

2. 按 Ctrl + v 启用可视模式

3. 使用箭头键进行选择

4. 按 y 键复制所选文本

例如,在这里,我使用可视模式复制了 4 行:

图片

如果你注意到,当我按下 y 键,它就会显示有多少行被扽出(复制)。就我而言,有 4 行被复制。

在 Vim 中选择文本来剪切文本

要在 Vim 中以可视模式剪切文本,你所要做的就是遵循 4 个简单步骤:

1. 移动到要剪切的位置

2. 按 Ctrl + v 切换到可视模式

3. 使用箭头键选择要剪切的行

4. 按 d 键剪切选定的行

假设我想剪掉 4 行,那么我会这样做:

图片

挺容易。是吧?


http://www.ppmy.cn/devtools/10171.html

相关文章

Redis入门到通关之Redis数据结构-ZSet篇

文章目录 ZSet也就是SortedSet&#xff0c;其中每一个元素都需要指定一个 score 值和 member 值&#xff1a; 可以根据score值排序后member必须唯一可以根据member查询分数 因此&#xff0c;zset底层数据结构必须满足键值存储、键必须唯一、可排序这几个需求。之前学习的哪种编…

Hadoop3:HDFS、YARN、MapReduce三部分的架构概述及三者间关系(Hadoop入门必须记住的内容)

一、HDFS架构概述 Hadoop Distributed File System&#xff0c;简称HDFS&#xff0c;是一个分布式文件系统。 1&#xff09;NameNode(nn)&#xff1a;存储文件的元数据&#xff0c;如文件名&#xff0c;文件目录结构&#xff0c;文件属性&#xff08;生成时间、副本数、文件…

MyBatis<foreach>标签的用法

文章目录 1. foreach 标签2. MyBatis&#xff1c;foreach&#xff1e;标签的使用2.1 批量插入2.2 批量编辑2.3 批量查询2.4 使用 foreach 遍历 map 1. foreach 标签 foreach 可以在 SQL 语句中进行迭代一个集合。foreach元素的属性主要有 item&#xff0c;index&#xff0c;co…

Redis中的Lua脚本(五)

Lua脚本 脚本复制 复制EVALSHA命令 EVALSHA命令式所有与Lua脚本有关的命令中&#xff0c;复制操作最复杂的一个&#xff0c;因为主服务器与从服务器载入Lua脚本的情况可能有所不同&#xff0c;所以主服务器不能像复制EVAL命令、SCRIPT LOAD命令或者SCRIPT FLUSH命令那样&…

计算机网络原原理学习资料分享笔记---第一章/第四节/第五节(为有梦想的自己加油!)

第四节 计算机网络性能 第四节 计算机网络性能 第四节 计算机网络性能 1 、速率&#xff1a; 速率&#xff1a;网络单位时间内传送的数据量&#xff0c;用以描述网络传输数据的快慢。 速率基本单位&#xff1a;bit/s&#xff08;位每秒&#xff09; Kbit/s、 Mbit/s、 Gbit/…

生成计算机注册信息:硬盘,主板和CPU组合 根据计算机硬盘,主板,CPU生成注册信息

目录 一.总体说明 二.完整代码 三.逐行分析 一.总体说明 注册信息是用于识别和验证计算机的唯一标识符。在生成注册信息时,通常会包含计算机的硬盘、主板和CPU的相关信息。这些信息可以用于授权软件、管理许可证、防止盗版以及进行系统配置和维护等方面。 具体而言,注册…

PDM在Office文档中的变量映射

在PDM数据管理软件中需要在数据卡中反馈出文件的一些属性信息&#xff0c;使得用户在不打开文件的情况下可以快速了解此文件的属性信息&#xff0c;或者需要用户在创建文档时填入相应内容&#xff0c;能够自动的填充到文档中&#xff0c;所以就需要在实施的过程中在SOLIDWORKS …

Environment Modules工具

Environment Modules工具 简介 Module是一个环境变量管理工具&#xff0c;可以很好的实现开发环境的切换。 具体可以查看官网文档 安装 安装&#xff08;安装完成之后需要exit重新登录一下才会生效&#xff09; yum install -y environment-modules命令介绍 module avai…

CentOS 源码安装 pip3

今天在安装部分服务的时候&#xff0c;由于系统 CentOS 中默认带了 pip2&#xff0c;但是我的项目需要是基于 Python3 开发的&#xff0c;需要安装 pip3&#xff0c;特此将整个安装步骤记录下来。 需要安装 Python3&#xff0c;可参考 https://devlive.org/archives/wGwzd3RG 安…

古籍数字化平台中的OCR:这个平台更精准

在浩瀚的历史长河中&#xff0c;古籍作为中华民族的文化瑰宝&#xff0c;承载着无数先人的智慧与心血。然而&#xff0c;由于岁月侵蚀、保存不当等多种原因&#xff0c;许多珍贵的古籍面临损坏、失传的危机。为了守护这些无价之宝&#xff0c;云聪研发团队倾力打造了一款尖端的…

gitlab 16.2.4 恢复

新创建新gitlab&#xff0c;版本需和备份的gitlab版本一致 docker run -d -p 322:22 -p 822:80 --name gitlab_1 gitlab/gitlab-ce:16.2.4-ce.0 进入容器内部 docker exec -it c51685817e27 /bin/bash 新的环境至少运行过一次&#xff0c;sudo gitlab-ctl reconfigu…

《前端面试题》- TypeScript - TypeScript的优/缺点

问题 简述TypeScript的优/缺点 答案 优点 增强了代码的可读性和可维护性包容性&#xff0c;js可以直接改成ts&#xff0c;ts编译报错也可以生成js文件&#xff0c;兼容第三方库&#xff0c;即使不是ts编写的社区活跃&#xff0c;完全支持es6 缺点 增加学习成本增加开发成…

STM32 堆栈内存以及变量存储分布

STM32的程序存储器、数据存储器、寄存器和输入输出端口被组织在同一个4GB的线性地址空间内, 地址范围为0x0000 0000至0xFFFF FFFF。其中FLASH为ROM类型&#xff0c;储存的数据掉电不易失&#xff1b;RAM中存储的数据掉电易失。以STM32F103系列为例&#xff0c;最多有512KB的FLA…

负载均衡的原理及算法

一、定义 负载均衡&#xff08;Load Balancing&#xff09;是一种计算机网络和服务器管理技术&#xff0c;旨在分配网络流量、请求或工作负载到多个服务器或资源&#xff0c;以确保这些服务器能够高效、均匀地处理负载&#xff0c;并且能够提供更高的性能、可用性和可扩展性。…

MATLAB图像处理介绍

MATLAB图像处理介绍 MATLAB是一款功能强大的数学软件&#xff0c;广泛应用于各种科学计算和数据分析中。其中&#xff0c;MATLAB的图像处理工具箱&#xff08;Image Processing Toolbox&#xff09;为用户提供了一套完整的图像处理和分析工具&#xff0c;无论是图像的预处理、…

高斯锁表导致sql报错处理

构造锁等待场景&#xff1a; 1.打开一个新的连接会话&#xff0c;使用普通用户连接GaussDB(DWS)数据库&#xff0c;在test SCHEMA 下创建测试表test.ypg_test。 CREATE TABLE ypg_test (id int, name varchar(50)); 2.开启事务1&#xff0c;进行INSERT操作。 START TRANSACTI…

使用代理绕过网站的反爬机制

最近在尝试收集一些网络指标的数据&#xff0c; 所以&#xff0c; 我又开始做爬虫了。 :) 我们在做爬虫的过程中经常会遇到这样的情况&#xff0c;最初爬虫正常运行&#xff0c;正常抓取数据&#xff0c;一切看起来都是那么的美好&#xff0c;然而一杯茶的功夫可能就会出现错误…

为什么单片机控制电机需要加电机驱动

通常很多地方只是单纯的单片机MCU没有对电机的驱动能力&#xff0c;或者是介绍关于电机驱动的作用&#xff0c;如&#xff1a; 提高电机的效率和精度。驱动器采用先进的电子技术和控制算法&#xff0c;能够精准控制电机的参数和运行状态&#xff0c;提高了电机的效率和精度。拓…

镜舟科技荣获金科创新社 2024 年度金融数据智能解决方案奖

近日&#xff0c; 镜舟科技凭借领先的金融实时数仓构建智能经营解决方案&#xff0c;在“金科创新社第六届金融数据智能优秀解决方案评选”活动中&#xff0c;成功入选“数据治理与数据平台创新优秀解决方案”榜单。 金科创新社主办的“鑫智奖”评选活动&#xff0c;旨在展示…

社交巨头与去中心化:解析Facebook在区块链的角色

在数字化时代&#xff0c;社交媒体已经成为人们日常生活中不可或缺的一部分。作为全球最大的社交媒体平台&#xff0c;Facebook 在社交领域的影响力无可置疑。然而&#xff0c;随着区块链技术的崛起&#xff0c;Facebook 也开始探索如何将这一技术应用于其平台&#xff0c;以适…