【vim 学习系列文章 19 -- 映射快捷键调用两个函数 A 和B】


请阅读【嵌入式开发学习必备专栏 之 Vim】


文章目录

    • 映射快捷键调用两个函数

映射快捷键调用两个函数

在 Vim 中,如果想通过按下 gcm 来调用两个函数,比如 FunctionAFunctionB,需要先定义这两个函数,然后创建一个映射。这个映射将会在被触发时依次调用这两个函数。
首先,确保 .vimrc 文件中包含了这两个函数的定义,以及一个用于调用它们的映射。下面是一个示例:

" 定义函数 A
function! FunctionA()echo "Function A is called"
endfunction" 定义函数 B
function! FunctionB()echo "Function B is called"
endfunction" 定义一个包装函数,用于依次调用这两个函数
function! CallFunctionsAB()call FunctionA()call FunctionB()
endfunction" 在普通模式下设置 gcm 映射,以便调用 CallFunctionsAB 函数
nnoremap gcm :call CallFunctionsAB()<CR>

在这个例子中:

  • FunctionAFunctionB 是想要调用的两个函数。在这个示例中,这两个函数只是简单地显示了一个消息。可以将这些函数替换为自己的函数实现。
  • CallFunctionsAB 是一个包装函数,其目的是依次调用 FunctionAFunctionB。这是必要的,因为直接在映射中调用多个函数可能会导致语法问题。
  • nnoremap gcm :call CallFunctionsAB()<CR> 创建了一个映射,当在普通模式下按下 gcm 时,就会调用 CallFunctionsAB 函数,进而依次调用 FunctionAFunctionB

确保将这些代码添加到 .vimrc 文件中,并保存更改。之后,可能需要重新加载 .vimrc 文件或重启 Vim 以应用更改。在 Vim 中,可以通过执行 :source ~/.vimrc 命令来重新加载 .vimrc 文件。

现在,每当在普通模式下按下 gcm,Vim 就会依次调用 FunctionAFunctionB 了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/804250.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式|单例模式(Singleton Pattern)

文章目录 适用场景优缺点优点缺点 示例分布式部署情况下&#xff0c;保证单例常见面试题 单例模式&#xff08;Singleton Pattern&#xff09;是一种创建型设计模式&#xff0c;它确保类只有一个实例&#xff0c;并提供一个全局访问点来访问这个实例。 适用场景 单例模式在许多…

2024-04-09 问AI: 在深度学习中,dropout层是什么?

文心一言 在深度学习中&#xff0c;Dropout层是一种正则化技术&#xff0c;用于防止神经网络过拟合。它通过在训练过程中随机地将一部分神经元的输出设置为0&#xff0c;来减少神经元之间的复杂共适应性&#xff0c;使得模型更加健壮&#xff0c;提高泛化能力。 具体来说&…

语音识别(录音与语音播报)

语音识别&#xff08;录音与语音播报&#xff09; 简介 语音识别人工智能技术的应用领域非常广泛&#xff0c;常见的应用系统有&#xff1a;语音输入系统&#xff0c;相对于键盘输入方法&#xff0c;它更符合人的日常习惯&#xff0c;也更自然、更高效&#xff1b;语音控制系…

JVM—垃圾收集器

JVM—垃圾收集器 什么是垃圾 没有被引用的对象就是垃圾。 怎么找到垃圾 引用计数法 当对象引用消失&#xff0c;对象就称为垃圾。 对象消失一个引用&#xff0c;计数减去一&#xff0c;当引用都消失了&#xff0c;计数就会变为0.此时这个对象就会变成垃圾。 在堆内存中主…

C++设计模式:抽象工厂模式(七)

1、定义与动机 抽象工厂定义&#xff1a;提供一个接口&#xff0c;让该接口负责创建一系列“相关或者相互依赖的对象”&#xff0c;无需指定它们具体的类动机&#xff1a; 在软件系统中&#xff0c;经常面临着“一系列相互依赖的对象”的创建工作&#xff1b;同时&#xff0c;…

人工智能——深度学习

4. 深度学习 4.1. 概念 深度学习是一种机器学习的分支&#xff0c;旨在通过构建和训练多层神经网络模型来实现数据的高级特征表达和复杂模式识别。与传统机器学习算法相比&#xff0c;深度学习具有以下特点&#xff1a; 多层表示学习&#xff1a;深度学习使用深层神经网络&a…

麒麟KOS删除鼠标右键新建菜单里不需要的选项

原文链接&#xff1a;麒麟KOS删除鼠标右键新建菜单里不需要的选项 Hello&#xff0c;大家好啊&#xff01;在日常使用麒麟KOS操作系统时&#xff0c;我们可能会发现鼠标右键新建菜单里包含了一些不常用或者不需要的选项。这不仅影响我们的使用效率&#xff0c;也让菜单显得杂乱…

新能源电力行业设备点巡检系统的应用

新能源电力行业正日益成为全球能源结构的重要支柱&#xff0c;其设备点巡检系统作为确保电力设施安全、高效运行的关键环节&#xff0c;正受到业界的广泛关注和应用。 设备点巡检系统是一种集数据采集、实时监控、智能分析于一体的现代化管理工具。在新能源电力行业中&#xff…

Java常见算法_常见的查找算法和排序算法——简介及代码演示

在本文中我将介绍Java中的常见算法&#xff0c;查找算法包括基本查找、二分查找、插值查找和分块查找。排序算法包括冒泡排序、选择排序、插入排序和快速排序 查找算法&#xff1a; 1.基本查找&#xff1a; 代码&#xff1a; public class BasicSearchDemo {public static …

SpringMVC:搭建第一个web项目并配置视图解析器

&#x1f449;需求&#xff1a;用spring mvc框架搭建web项目&#xff0c;通过配置视图解析器达到jsp页面不得直接访问&#xff0c;实现基本的输出“hello world”功能。&#x1f469;‍&#x1f4bb;&#x1f469;‍&#x1f4bb;&#x1f469;‍&#x1f4bb; 1 创建web项目 1…

Matplotlib之bar3d画3D柱状图

Matplotlib之bar3d画3D柱状图 一、参数x, y, z:array-likedx, dy, dz:float or array-likecolor:颜色顺序,可选zsort:字符,可选shade:bool, 默认Truelightsource:LightSourcedata:可索引对象,可选**kwargs二、代码3D柱状图通常用于展示数据集中不同分类项的数据大小或…

如何解决Python包管理问题:ERROR: Could not find a version that satisfies the requirement

如何解决Python包管理问题&#xff1a;“ERROR: Could not find a version that satisfies the requirement” 文章目录 如何解决Python包管理问题&#xff1a;“ERROR: Could not find a version that satisfies the requirement”错误描述问题分析解决方案检查包名确保网络连…

【JVM】面试题汇总

JVM1. 什么是JVM&#xff1f;2. 了解过字节码文件的组成吗&#xff1f;3. 什么是运行时数据区4. 哪些区域会出现内存溢出5. JVM在JDK6-8之间在内存区域上有什么不同 6. 类的生命周期 7. 什么是类加载器&#xff1f;类加载器有哪几种 8. 什么是双亲委派机制&#xff1f;有什么好…

深度学习框架中张量的执行过程

本文重点介绍深度学习框架OneFlow中张量执行背后发生的情况。以操作符oneflow.relu为例,介绍执行该操作符需要依赖的Interpreter和VM机制。希望本文对您对深度学习框架的系统设计有所启发。 首先,我们看一下PyTorch中的以下代码: import torch x = torch.tensor([-1.0, 2.0…

“国字号”荣誉、全国试点,侨乡群众身边的“放心”公证处

日前&#xff0c;我市五邑公证处获评“全国公共法律服务工作先进集体”称号。 走进公证处&#xff0c;首先映入眼帘的是一间宽敞明亮的大厅&#xff0c;办证点内还设置多个独立办证室&#xff0c;工作人员热情地为前来办理业务的市民提供专业、人性化的公证服务。江门市五邑公证…

Windows上面搭建Flutter Android运行环境

Flutter Android环境搭建 电脑上面安装配置JDK电脑上下载安装Android Studio电脑上面下载配置Flutter Sdk &#xff08;避坑点一&#xff09;下载SDK配置对应的环境变量 到path 电脑上配置Flutter国内镜像运行 flutter doctor命令检测环境是否配置成功创建运行Flutter项目&…

常见Linux嵌入式C语言笔试面试题

进程线程的基本概念 1.进程,线程概念,有什么区别 进程是计算机中运行的程序实例,它具有独立的内存空间、执行环境和系统资源。 线程是进程中的一个执行单元,多个线程共享同一进程的内存和资源。区别在于进程是资源分配的基本单位,而线程是处理器调度的基本单位 2.多进程、…

【牛客SQL快速入门】SQL基础(二)

一、高级查询 1. 计算函数 AVG AVG()为平均值函数&#xff0c;通过对表中行数计数并计算其列值之和&#xff0c;求得该列的平均值。 AVG() 可用来返回所有列的平均值&#xff0c;也可以用来返回特定列或行的平均值。 Select avg(gpa) From user_profile COUNT COUNT()函数…

ARM单片机的GPIO口在控制不同LED、按键时的设置

个人备忘&#xff0c;不喜勿喷。 GPIO口在驱动共阴极、共阳极LED灯时需要不同的初始化设置 对于这一类的led灯&#xff1a; 最好选择推挽、上拉、高速输出&#xff0c;同时IO口初始化时需要拉高。 上面这种需要下拉输入&#xff1b; 上图这种需要上拉输入&#xff0c;这样才…

如何使用Arduino IDE对STM32F103C8T6进行编程

使用Arduino IDE对STM32F103C8T6进行编程调试&#xff0c;你需要进行一些准备工作和设置。以下是详细的操作步骤&#xff1a; 准备工作&#xff1a; 安装Arduino IDE&#xff1a;确保你已经安装了最新版本的Arduino IDE。可以从官方网站 https://www.arduino.cc/en/software 下…