
【vim 学习专栏】
文章平均质量分 78
vim 学习
主公讲 ARM
竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【vim 学习系列文章 15.2 -- vim vimgrep 使用详细介绍】
vimgrep是 Vim 中的一个强大工具,用于在文件中搜索模式并将匹配项加载到快速修复列表(quickfix list)。你可以使用它来在一个或多个文件中查找特定的模式,然后快速导航到这些匹配项。以下是vimgrep的详细介绍及使用示例。原创 2024-08-15 23:21:22 · 958 阅读 · 0 评论 -
【vim 学习系列文章 15.1 -- vim 只显示高亮字符所在的行】
在 Vim 中,如果你想只显示包含高亮字符的行,可以使用一些 Vim 内置的命令与功能来实现。通过以上方法,你可以在 Vim 中实现只显示包含高亮字符的行。这种方法可以帮助你更专注于分析和处理匹配的行内容。命令来搜索文件并只显示包含搜索结果的行。这会高亮所有包含 “example” 的字符。原创 2024-08-15 23:17:15 · 552 阅读 · 0 评论 -
【vim 学习系列文章 5.1 -- vim ctags 使用】
在使用cscope生成文件cscope.files之后,如何将其当做ctags 命令的输入?)读取文件列表,然后为这些文件生成标签。这样,就不需要手动按行读取和传递文件路径了。可以使用一系列的Shell命令来完成这个任务。命令,你可能需要稍微调整命令,例如循环中直接调用。然而,上述方法存在一个潜在的问题:它实际上将。处理列表中的文件路径,那么你可以直接使用。命令的输入,而不是对每一行分别调用。文件多次,仅保留对最后一行内容执行。文件中的每一行内容分别执行。文件的内容,然后使用管道。从指定的文件(此处为。原创 2024-05-06 21:39:57 · 358 阅读 · 0 评论 -
【vim 学习系列文章 22 -- vim 实现 linux 多行快速标准注释】
【代码】【vim 学习系列文章 22 -- vim 实现 linux 多行快速标准注释】原创 2024-04-10 19:36:21 · 495 阅读 · 0 评论 -
【vim 学习系列文章 21 -- cterm 及 ctermbg ctermfg 介绍】
分别用于设置背景色和前景色,它们可以采用的颜色有限,因为这取决于终端的能力。大多数现代终端都支持至少 8 种基本颜色,有的支持 16 种颜色,甚至更多(如 256 色模式)。这个例子将会将注释(Comment)设置为斜体,前景色为青色(Cyan),背景色为黑色(Black)。这个例子将会将待办事项(Todo)设置为粗体和下划线,前景色为编号为 160 的颜色,背景色为编号为 235 的颜色。是与终端(或控制台)相关的颜色和样式设置。为了设置一个特定语法高亮的颜色和样式,你可以在你的。原创 2024-04-10 19:25:10 · 1313 阅读 · 0 评论 -
【vim 学习系列文章 20 -- a:mode 的值有哪些?】
常常用于函数内部,以获取该函数被调用时 Vim 正处于的模式。它主常用于那些可以从不同模式下被调用的函数中,比如映射到多个模式的快捷键触发的函数。这样,函数就可以根据不同的模式执行不同的操作。函数都会被调用,并且根据当前的模式,打印出相应的信息。注意,插入模式下的映射会先退出插入模式,因为。假设你想创建一个函数,该函数的行为会根据它被调用时的模式而改变。然后,你可以创建一个映射,让这个函数可以从不同的模式下被调用,这里使用。不直接传递给函数,而是通过这些映射的上下文来确定调用函数时的模式。原创 2024-04-10 19:22:19 · 694 阅读 · 0 评论 -
【vim 学习系列文章 19 -- 映射快捷键调用两个函数 A 和B】
需要先定义这两个函数,然后创建一个映射。这个映射将会在被触发时依次调用这两个函数。文件中包含了这两个函数的定义,以及一个用于调用它们的映射。文件或重启 Vim 以应用更改。在 Vim 中,可以通过执行。文件中,并保存更改。之后,可能需要重新加载。在 Vim 中,如果想通过按下。现在,每当在普通模式下按下。来调用两个函数,比如。,Vim 就会依次调用。确保将这些代码添加到。原创 2024-04-09 22:10:14 · 701 阅读 · 0 评论 -
【vim 学习系列文章 18 -- 选中行前后增加两行】
打开.vimrcfunction!" 获取Visual模式选中的起始和结束行号" 在选中区域的最后一行后面插入一空白行" 在选中区域的第一行前面插入一空白行" 注意:因为我们已经在末尾添加了一行,所以这里不需要调整 start_line。原创 2024-04-09 22:07:06 · 661 阅读 · 0 评论 -
【vim 学习系列文章 17 -- vim 自动保存设置】
Vim 默认并不会自动保存你的文件。这个设置通常是与自动触发一些事件(例如插件中的自动命令)相关联。如果你确实需要 Vim 每 5 秒自动保存文件,你需要结合使用自动命令(autocommand)来实现。的默认值是 4000 毫秒(4 秒),但你可以将其设置为 5000 毫秒(5 秒)以满足你的需求。如果你想让这个设置在每次打开 Vim 时自动生效,你可以将上述命令添加到你的 Vim 配置文件。上面的自动命令会在光标 5 秒静止(即没有键盘输入)后触发文件的保存。例如,你可以设置一个自动命令,在每次。原创 2024-03-22 19:14:44 · 982 阅读 · 0 评论 -
【vim 学习系列文章 16 -- vim term 打开终端命令】
请注意,内置的终端模拟器是 Vim 8.1 版本引入的功能,所以确保你的 Vim 版本至少是 8.1 或更高。这个命令允许用户在 Vim 编辑器中直接运行一个交互式的 shell 或其他终端程序,而无需离开 Vim 环境。执行这个命令后,Vim 会在当前窗口下方分割一个新的水平窗口,并在这个窗口中启动默认的 shell。命令后加上想要运行的命令,这样终端就会启动并直接执行该命令。要从终端模式回到 Vim 的正常模式,你可以使用下面的快捷键序列: 1. 按下。在 Vim 的正常模式中,你也可以用。原创 2024-03-20 21:05:12 · 1836 阅读 · 0 评论 -
【vim 学习系列文章 15 -- vim 快速选中多行】
在 Vim 中,您可以通过定义一个映射(map)来快捷地在 Visual 模式下选择指定数量的行。例如,您可能想通过按键快速选择下面的 10 行。配置文件中,然后在 Vim 重新加载配置或下次启动时,新的映射就会生效。配置文件中,然后在 Vim 重新加载配置或下次启动时,新的映射就会生效。是 Vim 中的一个特殊占位符,它通常被映射为。(反斜线),但您可以将它重新映射为其他的按键。是用于创建不可递归的正常模式下的映射的命令。和回车,以选择当前行和接下来的 9 行。可以将上面的代码放入您的。原创 2024-03-15 21:22:18 · 1489 阅读 · 0 评论 -
【vim 学习系列文章 14 -- vim 注释神器 vim-commentary 插件 】
Vim中的vim-commentary插件是一个流行的注释工具,可以使用该工具快速添加或删除代码注释。默认情况下,该插件根据文件类型来确定注释格式。对于大多数编程语言,它会使用相应的单行注释符号。,我们将这个默认的注释修改成//,并且将python的默认注释也修改一下。这样,当你编辑汇编文件并使用vim-commentary插件时,它将使用。作为注释,你需要设置相关的文件类型的注释格式。要将vim-commentary插件配置为在汇编文件中使用。例如,如果你的汇编文件类型是。原创 2024-03-13 21:28:35 · 886 阅读 · 0 评论 -
【vim 学习系列文章 3.2 -- vim 删除 空格】
就可以删除行尾空格。原创 2024-01-31 14:16:59 · 1092 阅读 · 0 评论 -
【vim 学习系列文章 3.1 -- vim 删除 ^M】
字符,这通常是因为文件使用了 Windows 风格的回车换行符(CRLF),而不是 Unix/Linux 风格的换行符(LF)。实际上是回车符(Carriage Return,CR)的可见表示。确保在执行这些操作之前,您理解文件的原始格式和为何会出现。在 Vim 中打开文件时,您可能会遇到行尾的。如果上面的命令不起作用,可能是因为文件中的。字符,以便在处理文本时不会破坏文件内容。键执行这个命令后,文件中所有行尾的。并不是真正的回车符,而是字面上的。(在一些系统或配置中可能是。原创 2023-12-30 11:41:42 · 1974 阅读 · 0 评论 -
【vim 学习系列文章 13.1 -- 自动命令autocmd 根据文件类型设置vim参数】
注意,Vim 的文件类型检测机制通常是根据文件的内容和扩展名来确定的。确保你的 Vim 已经启用了文件类型侦测功能,可以在。文件中定义了两个函数,一个用于 C 类型文件,另一个用于 Python 类型文件。(自动命令)来根据文件类型自动执行特定的函数。首先,你需要定义这些函数,然后使用。这些函数包含了文件类型特定的设置。命令清除了之前定义的同组自动命令,以避免重复。以下是一个基本的 Vim 配置示例,该配置在。在上面的配置中,我们首先定义了两个函数。来根据文件后缀名调用相应的函数。原创 2023-12-15 11:07:58 · 1805 阅读 · 0 评论 -
【vim 学习系列文章 13 -- 自动命令 vim autocmd 】
group,组名是可选项,用于分组管理多条自动命令;events,事件参数,用于指明触发命令的一个或多个事件;pattern,限定针对符合匹配模式的文件执行命令;nested,嵌套标记是可选项,用于允许嵌套自动命令;command,指明需要执行的命令、函数或脚本。原创 2023-11-30 20:49:57 · 1373 阅读 · 0 评论 -
【vim 学习系列文章 12 -- vimrc 那点事】
于是我试着在这个路径寻找 vimrc ,我看到这个文件是存在的。如上即是我的系统 vimrc 文件,就如前面提过的那样 - 它在 Vim 启动时会被读取。在这个系统级 vimrc 文件被读取解析完后,编辑器会查找一个用户特定的(或者说本地的)vimrc 文件。当 Vim 启动时,编辑器会去搜索一个系统级的 vimrc 文件来进行系统范围内的默认初始化工作。文件中(取决于你的系统和shell),以确保每次启动新的 shell 时。这样的文件,这个文件可看作是本地 vimrc。如上文所述,在 Vim 中,原创 2023-10-27 11:02:11 · 858 阅读 · 0 评论 -
【vim 学习系列文章 11 -- vim filetype | execute | runtimepath 详细介绍】
runtimepath 在 Vim 中是一个非常重要的设置,它决定了 Vim 在什么地方查找运行时文件,如插件、帮助文件、语法文件等。其默认设置通常包括 Vim 的系统文件夹、用户的配置文件夹,以及插件的文件夹。你可以使用命令查看它的当前设置。例如,假设你的插件位于这样,Vim 就会在这个路径下查找运行时文件。需要注意的是,当你使用某些插件管理器(如 Pathogen、Vundle、vim-plug 等)时,它们会自动管理 runtimepath 的设置,你不需要手动修改它。原创 2023-10-17 15:50:58 · 1230 阅读 · 0 评论 -
【vim 学习系列文章 10 -- vim 将代码中空格高亮显示方法】
在 Vim 编辑器中,highlighthi)命令用于修改或显示语法高亮的颜色和样式。这个命令非常强大,可以让你自定义 Vim 的颜色方案和高亮显示的效果。{group}是你要修改的语法组名,比如 Comment,String,Function 等等,这些都是预定义的语法组;{keys}是你要修改的属性,比如 guifg,guibg,gui,ctermbg,ctermfg,cterm 等等;{values}是你希望设置的值。原创 2023-10-17 15:06:33 · 1035 阅读 · 0 评论 -
【vim 学习系列文章 9 -- .vim 脚本文件开发学习】
在Vim中,你可以将一系列的Vim命令和设置写入一个脚本文件中,并使用:source命令来运行它。这种脚本文件通常被称为vimrc文件,因为它的默认名称是.vimrc。通常,我们将这个文件放在用户的主目录中,并用于存储用户的个性化Vim设置。" .vimrc 文件内容 set number " 显示行号set tabstop=4 " 设置tab宽度为4set shiftwidth=4 " 设置缩进宽度为4syntax enable " 启动语法高亮命令来加载并运行这个文件中的所有设置和命令。原创 2023-10-11 17:09:51 · 872 阅读 · 0 评论 -
【vim 学习系列文章 8 -- vim中 has 函数和 let g:介绍】
在Vim中是一种全局变量的赋值方法。let命令用于设定变量的值,则表示该变量的作用范围是全局的,即在任何地方都可以访问。这是Vim中的基本的脚本编程元素。常常在Vim的配置文件vimrc中使用,用来设定一些全局的设置。比如你可以使用设定一些插件的全局设置,或者设定一些自己的快捷键。下面是一些简单的例子:" 设置全局的tab宽度为4设置一个全局的开关,用于控制是否显示行号" 设置Vim插件nerdtree的全局配置在这些例子中,将全局的tab宽度设定为4,设定了一个全局开关用于控制是否显示行号,原创 2023-10-11 16:58:12 · 1321 阅读 · 0 评论 -
【vim 学习系列文章 7-- vim vnormap nnoremap nmap map inoremap 区别】
记住,为了避免映射冲突或无法预料的结果,最好在创建新的键盘映射之前,先使用 unmap 命令来取消任何现有的映射。Vim 的可视模式是 Vim 的三种主要模式之一,另外两种是普通模式和插入模式。在普通模式下按 V 将进入行可视模式,在这个模式下,你可以通过上下移动光标来选择整行文本。在普通模式下按 v 将进入字符可视模式,在这个模式下,你可以通过移动光标来选择文本。在普通模式下按 将进入块可视模式,在这个模式下,你可以通过移动光标来选择一个文本块。在普通模式下将 F2 键映射为保存文件的命令。原创 2023-10-11 10:09:14 · 2226 阅读 · 0 评论 -
【vim 学习系列文章 6 -- vim 如何从上次退出的位置打开文件】
假设我打开了文件 test.c,然后我向下滚动到第 50 行,然后我做了一些修改并关闭了文件。当我重新打开文件时。我希望 光标定位到第 50 行。如何解决这个问题呢?原创 2023-10-11 09:39:29 · 867 阅读 · 0 评论 -
【vim 学习系列文章 5 - vim 中配置 cscope 过滤掉某些目录】
第一步创建自己的cscope脚本if [!我的这个脚本首先去区分当前执行cscope命令的目录是rt-thread目录还是linux目录,因为不同的代码要过滤过目录不一样。此外,还会通过重定向将cscope在解析文件过程中输出的log重定向到cscope.log方便问题问题。关于 find 命令的使用见第二步在~/.bashrc中添加 mycscope 命令,添加完后,别忘记执行。第三部重定向。原创 2023-08-18 15:16:54 · 923 阅读 · 0 评论 -
【vim 学习系列文章 4 - vim与系统剪切板之间的交互】
从vim中拷贝些文字去其它地方粘贴,都需要用鼠标选中vim的文字后,Ctrl+c、Ctrl+v,硬生生掐断了纯键盘的流畅感,而且,vim中的块选择很方便,如果只想要拷贝某一个块的数据,鼠标操作就完全没辙了。vim会有一些存储空间来暂存内容,vim中将这些存储空间叫寄存器。例如我们在vim中y操作复制的内容,实际就是暂存到寄存器中。怎么查看寄存器内容呢?在下图中处于 “name” 那列的都是寄存器的名字,为了要与系统的剪切板交互,我们着重关注寄存器。是在系统剪切板中表示选择后Ctrl+c复制的内容。原创 2023-08-06 21:15:51 · 1903 阅读 · 0 评论 -
【vim 学习系列文章 3 - vim 选中、删除、复制、修改引号或括号内的内容】
可供选择的动作命令有很多,它们的表现也各不相同,具体取决于你是在三部分组合中使用,还是在两部分组合中使用(这时去掉文本对象,让命令从光标位置向后运行)。Vim 有一个模块化的结构,允许你使用各种命令的组合操作。这样就可以删除一个(括号)块内的所有内容。——删除(delete)“单引号”内(inside)的内容。下面是你可以在上述三段式组合中使用的一些相关动作的清单。——删除“双引号”周围(around)的内容。——改变(change)[方括号] 内的内容。——删除 html 标签(tag)内的内容。原创 2023-07-28 12:23:04 · 2627 阅读 · 0 评论 -
【vim 学习系列文章 2 - vim 常用插件配置】
Pathogen 一般作为 vim 新手的第一个插件,用来统一管理 vim 插件包。: 需要登陆自己的 github,再使用 git submodule add, 否是 执行不成功。实现的命令行搜索工具,可以通过正则来搜索当前的目录。看到这里,有些读者可能要问假如我要在两个文件类型中查找呢,这个时候。会显示当前目录下的搜索内容,会打印出文件名及关键字出现的行数。可以在它的私有文件夹下非常轻松地安装插件和管理运行时文件。执行完上面命令后,需要将对应的文件推到 自己的。参数就无法满足了,需要引入新的。原创 2023-07-28 11:31:06 · 1314 阅读 · 0 评论 -
【vim 学习系列文章 1 - vim 常用配置】
工具来看代码的时候,如查看某个函数的定义,这个时候可能会跳转出来多个文件,但是我们只关注。实现的命令行搜索工具,可以通过正则来搜索当前的目录。默认情况下 ripgrep 会遵循。目录下实现下面函数 mycscope ,在这个函数中过滤掉不关注的目录即可。会显示当前目录下的搜索内容,会打印出文件名及关键字出现的行数。默認使用的是大端顯示,使用 “-e” 之後使用小端顯示。目录下该函数的实现,这个时候我们就需要在生成。执行完上面命令后,需要将对应的文件推到 自己的。的时候过滤掉不关注的目录,按照下面方式在。原创 2022-11-14 11:03:09 · 1330 阅读 · 0 评论