百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

技巧:如何在 Vim 中显示行号?(vim编辑文件如何显示行号)

liuian 2025-04-30 18:03 15 浏览


VimLinux中一款功能强大的文本编辑器,广泛用于代码编写和文件编辑。对于使用人员来说,Vim行号功能可以大大简化代码审查和编辑过程。

本文将详细介绍如何在Vim中启用行号显示,帮助提高文本编辑的效率和准确性。

要在 Vim 中显示行号

  • 先在linux终端命令行中进入vim,然后请按 Esc 键进入命令模式,执行输入:set number:set nu命令显示行号。
  • 若需关闭行号显示,再按 Esc 键进入命令模式,执行输入:set nonu 即可

实际上,我们可以在 Vim 中显示三种行号

  • 绝对行号
  • 相对行号
  • 混合行号

下面让我们更深入地了解一下。

一、在 Vim 中显示绝对行号

绝对行号,它以 1 开始,以最后一行的编号结束。

  1. 确保当前处于命令模式。可以通过按 Escape (Esc) 键切换到命令模式。
  2. 按:(冒号)键。Vim 的左下角应该有冒号字符。执行输入:set number或:set nu命令。

现在在在窗口左侧可以看到行号。

若需关闭行号显示,再按 Esc 键进入命令模式,执行输入:set nonu 即可

二、在 Vim 中显示相对行号

当打开了相对行号时,这意味着当前所在的行是行号 0,并且光标上方和下方的行连续编号为 1、2、3

这特别有用,因为上下移动光标 x 行数变得更容易,不必进行从行号中减去当前行号的心算,可以轻松地转到 Vim 中的特定行。

  1. 确保处于命令模式。通过按 Escape (Esc) 键切换到命令模式。
  2. 按:(冒号)键。Vim 的左下角应该有一个冒号字符,现在输入set relativenumber,或者您可以输入set rnu(简称)并按 Enter 键。

看到与光标所在行的上方和下方的相对行号。

若需关闭行号显示,再按 Esc 键进入命令模式,执行输入:set norelativenumber:set nornu 即可

三、显示混合行号

混合行号是绝对行号和相对行号的混合,当混合编号模式打开时,光标所在的行将具有绝对编号,而每隔一行将具有相对编号。

在个人看来,这是两全其美的方法,既想知道正在处理的行号,又想查看当前行上下的相对数字。

如果想临时启用/禁用混合线路号,请执行以下步骤:

  1. 使用命令需要处于正常模式,因此请确保当前处于正常模式。
  2. 按:(冒号)键开始编写命令。这会让 Vim 知道你正在输入一个命令。现在输入:set number relativenumber。

切换后,如上所示图,将看到光标无论在哪一行,那行都具有绝对行号,其余行具有相对行号。

要禁用混合模式,再按 Esc 键进入命令模式,执行输入:set nonumber norelativenumber即可

补充vim相关指令:**

  • syntax on #设置语法高亮
  • set tabstop=4 #设置制表符宽度为4
  • set softtabstop=4 #设置软制表符宽度为4
  • set shiftwidth=4 #设置缩进的空格数为4
  • set autoindent #设置自动缩进
  • set cindent #设置使用 C/C 语言的自动缩进方式

总结

上面介绍没有体现自动启用行号的配置,因为我认为临时启用已经满足日常使用,特别在一些Ctrl+C的场景,vim自动显示行号并不是个好的选择。

通过上述方法,可以轻松在Vim中显示或隐藏行号,无论是临时使用还是长期工作,都能提高编辑效率。希望这些技巧能助在Vim的使用中更加得心应手。


最后~欢迎关注我! @Linux学习的那些事儿

我的个人资源整理,满满都是干货: → 可按需访问领取无限流元宇宙 | VLink

200T免费资料,持续发布中...

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

相关推荐

打开新世界,教你用RooCode+Copliot+Mcp打造一个自己的Manus

本文耗时两天打造,想要一遍走通需要花点时间,建议找个专注的时间开搞!这不仅是个免费使用claude3.5的方案,也是一个超级智能体方案,绝对值得一试!最近Manus真是赚足了眼球,然而我还是没有邀请码...

Git仓库(git仓库有哪些)

#Git仓库使用方法流程详解##一、环境搭建与基础配置###1.1安装与初始化-**安装Git**:官网下载安装包,默认配置安装-**配置全局信息**:```bashgitconfig...

idea版的cursor:Windsurf Wave 7(ideawalk)

在企业环境中,VisualStudioCode和JetBrains系列是最常用的开发工具,覆盖了全球绝大多数开发者。这两类IDE各有优势,但JetBrains系列凭借其针对特定语言和企业场景的深度...

Ai 编辑器 Cursor 零基础教程:推箱子小游戏实战演练

最近Ai火的同时,Ai编辑器Cursor同样火了一把。今天我们就白漂一下Cursor,使用免费版本搞一个零基础教程,并实战演练一个“网页版的推箱子小游戏”。通过这篇文章,让你真正了解cursor是什么...

ChatGPT深度集成于苹果Mac软件 编码能力得到提升

【CNMO科技消息】近日,OpenAI发布了针对MacOS的桌面应用程序,并宣布了一系列与各类应用程序的互操作性功能,标志着ChatGPT正在从聊天机器人向AI智能体工具进化。此次发布的MacOS桌面...

日常开发中常用的git操作命令和使用技巧

日常开发中常用的git操作命令,从配置、初始化本地仓库到提交代码的常用git操作命令使用git前的配置刚使用git,先要在电脑上安装好git,接着我们需要配置一下帐户信息:用户名和邮箱。#设置用户名...

Trae IDE 如何与 GitHub 无缝对接?

TraeIDE内置了GitHub集成功能,让开发者可以直接在IDE里管理代码仓库和版本控制。1.直接从GitHub克隆项目如果你想把GitHub上的代码拉到本地,Trae提供了...

China's diplomacy to further provide strong support for country's modernization: FM

BEIJING,March7(Xinhua)--ChineseForeignMinisterWangYisaidFridaythatChina'sdiplomacywil...

三十分钟入门基础Go(Java小子版)(java入门级教程)

前言Go语言定义Go(又称Golang)是Google的RobertGriesemer,RobPike及KenThompson开发的一种静态、强类型、编译型语言。Go语言语法与...

China will definitely take countermeasures in response to arbitrary pressure: FM

BEIJING,March7(Xinhua)--Chinawilldefinitelytakecountermeasuresinresponsetoarbitrarypre...

Go操作etcd(go操作docker实现沙箱)

Go语言操作etcd,这里推荐官方包etcd/clientv3。文档:https://pkg.go.dev/go.etcd.io/etcd/clientv3etcdv3使用gRPC进行远程过程调...

腾讯 Go 性能优化实战(腾讯游戏优化软件)

作者:trumanyan,腾讯CSIG后台开发工程师项目背景网关服务作为统一接入服务,是大部分服务的统一入口。为了避免成功瓶颈,需要对其进行尽可能地优化。因此,特别总结一下golang后台服务...

golang 之JWT实现(golang gin jwt)

什么是JSONWebToken?JSONWebToken(JWT)是一个开放标准(RFC7519),它定义了一种紧凑且自包含的方式,用于在各方之间以JSON方式安全地传输信息。由于此信息是经...

一文看懂 session 和 cookie(session cookie的区别)

-----------cookie大家应该都熟悉,比如说登录某些网站一段时间后,就要求你重新登录;再比如有的同学很喜欢玩爬虫技术,有时候网站就是可以拦截住你的爬虫,这些都和cookie有关。如果...

有望取代 java?GO 语言项目了解一下

GO语言在编程界一直让人又爱又恨,有人说“GO将统治下一个十年”,“几乎所有新的、有趣的东西都是用Go写的”;也有人说它过于死板,使用感太差。国外有Google、AWS、Cloudflar...