首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在构建系统编译代码的复制版本时在vim中设置makeprg

在vim中设置makeprg可以帮助我们构建系统并编译代码的复制版本。makeprg是一个vim选项,用于指定构建系统的命令。以下是在vim中设置makeprg的步骤:

  1. 打开vim编辑器,并进入命令模式(按下冒号键)。
  2. 输入以下命令来设置makeprg选项::set makeprg=<构建系统命令>其中,<构建系统命令>是你所使用的构建系统的命令,可以是编译器命令、构建脚本等。

例如,如果你使用的是GCC编译器来编译C代码,那么命令可以是:

代码语言:txt
复制

:set makeprg=gcc\ %

代码语言:txt
复制

这里的%表示当前打开的文件名。

  1. 按下回车键,保存设置并退出命令模式。

设置完makeprg后,你可以使用vim的内置命令来执行构建系统命令。以下是一些常用的命令:

  • 使用:make命令执行构建系统命令::make
  • 使用:cn命令跳转到下一个错误位置::cn
  • 使用:cp命令跳转到上一个错误位置::cp
  • 使用:copen命令打开错误列表窗口,显示所有错误信息::copen

这样,你就可以在vim中设置makeprg,并使用vim的内置命令来执行构建系统命令、跳转到错误位置、查看错误信息。这对于在开发过程中快速编译和调试代码非常有帮助。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Vim激荡30年发展史

pack/ Vim 8原生软件包目录,它采用了“Pathogen”格式包管理。原生包管理系统不需要任何第三方代码。 最后,通用编辑器设置都会放到~/.vimrc。...默认设置下“backupskip”设置能够禁用系统临时目录下任何文件备份。 Vim“patchmode”与备份有关。你可以没有被版本控制管理目录下使用该设置。...编辑-编译循环 :make 命令会执行用户选择程序来构建项目,然后将输出收集到quickfix缓冲区。quickfix记录每一项都记录了文件名、行号、列号、类型(警告或错误)和消息。...例如,Vimgcc设置($VIMRUNTIME/compiler/gcc.vim自带了errorformat设置,但却没有包含clang编译设置。...当你复制文本,先前复制就会被轮换到寄存器"0 - "9。因此,"0p 会粘贴倒数第二个复制/删除。特殊寄存器 "+ 和 "* 可以从系统剪贴板复制/粘贴,也可以复制/粘贴到系统剪贴板。

1.3K30

Ubuntu下VIM配置成C++开发编辑器

’ 我vim配置主要有以下优点: 1.按F5可以直接编译并执行C、C++、java代码以及执行shell脚本,按“F8”可进行C、C++代码调试 2.自动插入文件头 ,新建C、C++源文件自动插入表头...:包括文件名、作者、联系方式、建立时间等,读者可根据需求自行更改 3.映射“Ctrl + A”为全选并复制快捷键,方便复制代码 4.按“F2”可以直接消除代码空行 5....cmdheight=1 " 命令行(状态行下)高度,设置为1 "set whichwrap+=,h,l " 允许backspace和光标键跨越行边界(不建议) "set scrolloff...vi一致性模式,避免以前版本一些bug和局限 " 显示中文帮助 if version >= 603 set helplang=cn set encoding=utf-8 endif " 设置配色方案...任何地方使用鼠标(类似office工作区双击鼠标定位) set mouse=a set selection=exclusive set selectmode=mouse,key " 通过使用: commands

1.4K31

Linux学习笔记之vim操作指令大全

这在插入分割线非常有用,30i+就插入了36个+组成分割线。...ayy把当前行内容放入a寄存器。 A-Z:用大写字母索引寄存器,可以寄存器追加内容。 ”Ayy把当前行内容追加到a寄存器。 :reg 显示所有寄存器内容。...“”:不加寄存器索引,默认使用寄存器。 “*:当前选择缓冲区,”*yy把当前行内容放入当前选择缓冲区。 “+:系统剪贴板。”+yy把当前行内容放入系统剪贴板。...用法为: :vim[grep]/pattern/[g] [j] files g含义是如果一个模式一行多次出现,则这一行也结果多次出现。...j含义是grep结束后,结果停在第j项,默认是停在第一项。 vimgrep前面可以加数字限定搜索结果上限, :1vim/pattern/ % 只查找那个模式本文件第一个出现。

2.7K20

Gvim入门(3)——简易配置pytho

用Gvim配置python编写环境最重要也是最基本一项就是要在Gvim配置启动文件,也就是安装目录下_vimrc添加配置python解释器代码。然而前提是要有配置好环境变量。...总结一下就是: (1)配置环境变量: 将python路径添加到系统环境变量path里面,注意加分号。不会就去百度里面google一下。...(3)修改_vimrc文件: _vimrc文件找个适当位置,将如下代码粘贴保存。...这段代码将运行绑定到F5,编译绑定到F6,自己可以根据喜好修改位置。...(4)用vim打开一个python文件,或随意写个helloworld程序,试试能否成功打印。如果可以的话,那就congratulations!你Gvim可以写python程序并且解释执行它了。

73910

【Linux 操作系统vim编辑器配置及常用命令

sh文件头 括号 单双引号自动补全 刚开始使用vim时候, 觉得很难用, 每次使用大括号, if语句等都要缩进, 并且没有行号, 编译或者运行出错以后不好查找错误, 这些都是可以配置文件里面进行设定...文件自动读写 set autoread " 设置当文件被改动自动载入 set autowrite "自动保存 6....任何地方使用鼠标(类似office工作区双击鼠标定位) set mouse=a set selection=exclusive set selectmode=mouse,key " 通过使用...模式之间转换 命令状态 : vim 文件名 进入vim编辑器就是一般模式, 在这个模式下可以做移动光标,翻页等操作 命令行状态 : 一般模式下按下冒号, 进入命令行模式, 命令行模式命令都是按下...打开多文档方法 vim file1 file2打开多个文档 :n 编辑下一个文件 :N 编辑上一个文件 :e file VIM编辑器在打开其它文件, tab键可以补全文件名

2.2K50

Linux:常用软件、工具和周边知识介绍

拓展软件源: 拓展软件源是由第三方组织或社区提供EPEL、RPM Fusion等。 这些软件源提供了一些官方软件源没有的软件包,或者提供了更新版本软件包,以满足用户更多需求。...选择包要和系统匹配 第二列:软件包版本号 第三列:软件包存储库来源 2.vim-多模式文本编辑器 2.1基本介绍 vim(Vi IMproved)是一个功能强大文本编辑器,常用于终端编辑文本文件...-w: 不生成任何警告信息 3.2编译过程 编译过程通常包括以下四个阶段: 预处理(Preprocessing): 在这个阶段,预处理器将源代码预处理指令(宏替换、条件编译等)处理成适合编译器进一步处理形式...特点: 在编译将静态库代码复制到可执行文件,因此可执行文件会比较大。 程序在编译就会把所需库函数代码和数据加入到可执行文件,因此在运行时不需要依赖外部库文件。...特点: 动态库代码不会被复制到可执行文件,而是程序运行时由动态链接器加载到内存。 可执行文件相对较小,因为它只包含了链接到动态库信息,而不是实际代码

19910

vim 从嫌弃到依赖(22)——自动补全

我们对 c/c++ 语言执行 :make 也就是调用 shell make 命令。它会将编译产生错误信息存储 quickfix 列表。我们上一节中介绍了如何操作 quickfix 列表。...同样 :make 也支持使用相同方法进行改造。 :make 命令,使用 makeprg 来执行外部命令,使用 errorformat 来格式化输出到 quickfix 。...需要注意是当我们使用相对路径来补全文件名,使用是工作目录,也就是你从哪个目录中进入vim。我们可以 vim中使用:cd来切换工作目录。...根据具体编程语言生成补全 上述补全在编辑普通文本时候显有点用处,但是作为程序员平时代码如果只能使用上述方式进行补全肯定会抓狂。好在vim 提供了像其他IDE那样基于编程语言补全方式。...vim.o.filetype="plugin" 或者vim可以使用如下代码 set filetype=plugin set nocompatiable # 设置与vi 不兼容 例如我们可以尝试着 css

97520

【Linux】--- 详解Linux软件包管理器yum和编辑器vim

便有了下面这个问题 1.2 Linux系统(Centos)生态 三种安装方式:源代码安装,rpm包安装,yum安装: 源代码安装: 一些软件是开源,我们可以直接下载源代码,并在我们自己环境下编译,..."x86_64"后缀表示64位系统安装包,"i686"后缀表示32位系统安装包。选择包要和系统匹配。 "el7"表示操作系统发行版版本。"el7"表示是 centos7/redhat7。"...如果我们vim编写代码vim会为我们维护临时文件,来应对vim退出没有保存内容,形成临时文件,保障数据安全。但下次每当我们vim打开文件,都会跳出提示,那么如何去点提示呢?...即如何在sudoers配置文件添加自己?...那么我们便可在此文件添加指令或链接,来完善编译环境(:自动缩进,自动补齐,显示行号等等)。文件.vimrc添加set nu,那么再用vim打开文件写代码,便会显示行号。其余操作还请自行搜索

8310

springcloud实战:详解应用系统发布上线

cp: copy 简写,用于复制文件, cp a.txt /root/ .。scp:远程复制文件。...--我建议这里设置为true,否则在编译,如果有单元测试类,就会自动执行, 这带来坏处是:一是运行单元测试,增加编译时长;二是如果单元测试类有改变数据库数据代码,尤其是删除数据,可能会带来灾难性后果...Pre Steps选项卡设置构建命令,Root POM一栏输入pom.xml,Goals and options 一栏输入clean package,如图14-24所示。...图14-26我们输入了执行命令(Exec command ),该执行命令为构建成功后服务器执行脚本,我们需要事先再服务器创建register.sh 脚本文件,并输入以下shell代码: #!... Build History可看到当前构建进度。 点击当前构建进度,可以进入控制台,Jenkins 会实时刷新日志,如图14-28所示。

71520

.NET周刊【11月第1期 2023-11-09】

文章首先介绍了调试环境,包括操作系统、调试工具、开发工具、Net 版本和 CoreCLR 源码。然后,详细解释了如何在非托管函数和托管函数下断点。对于非托管函数,可以直接在机器代码设置断点。...对于托管函数,由于可能还未生成机器码,需要采用三种方式:在编译函数上下断点、编译函数上下断点和对泛型方法下断点。最后,文章通过具体调试操作过程,实际演示了如何设置断点。...使用伪终端模拟输入输出设备执行相应进程, vim 等程序可以终端运行。设计包括建立连接、监听终端输出和前端输入,以及处理超时和关闭。...编译编译阶段将 C#源码编译成 IL 代码,JIT 编译阶段则将 IL 代码编译成可以直接运行机器代码。 .net core MD5 用对了吗?...他使用了.NET SharpHook 组件,设置了全局快捷键来控制自动点击开关。程序,他设置了每隔两秒钟模拟鼠标左键点击一次。

22410

基于TVM实现ARM架构模型优化 | 安装篇

我自己实际测试,pytorch模型x86平台优化后效率提升了10倍之多,而在arm平台——树莓派3B同时加载pytorch和tvm模型,效率提升18.79倍。...支持 14(g+-5 C++ 或更高)最近 c++ 编译器 CMake 3.5 或更高版本 我们强烈建议使用 LLVM 进行构建,以启用所有功能。... macOS 上,您可能希望安装Homebrew以便轻松安装和管理依赖关系。 我们使用 cmake 来构建库。TVM配置可以通过配置.cmake进行修改。 首先,检查系统 cmake。...x86设备 cd build cmake .. make -j4 您也可以使用ninja生成系统,而不是 Unix Makefile。与使用 Makefile 构建速度可能更快。...python 包位于tvm/python有两种方法可以安装该包: 对于可能更改代码开发人员,建议使用此方法。 设置环境变量PYTHONPATH以告诉 python 在哪里可以找到库。

1.5K10

Golang环境安装

Go语言专门针对多处理器系统应用程序编程进行了优化,使用Go编译程序可以媲美C或C++代码速度,而且更加安全、支持并行进程。   Go 语言具有很强表达能力,它简洁、清晰而高效。...Go 代码编译成机器码不仅非常迅速,还具有方便垃圾收集机制和强大运行时反射机制。 它是一个快速、静态类型编译型语言,感觉却像动态类型解释型语言。...Go语言特点 简洁、快速、安全 并行、有趣、开源 内存管理、数组安全、编译迅速 GO语言应用场景 服务器编程, 处理日志、数据打包、虚拟机处理、文件系统等 分布式系统 (数据库代理、中间件) 网络编程...删除旧go安装文件 tar -C /usr/local -xzf $GZFILE; #解压文件到 /usr/local/go目录 复制代码 墙内用户设置环境变量goproxy 为https://goproxy.io...# 或者设置成阿里云镜像 https://mirrors.aliyun.com/goproxy/ $env:GOPROXY=https://goproxy.io 复制代码 现在,当您构建并运行应用程序时

1.2K40

vim配置文件修改

,看清楚些   "set cmdheight=1     " 命令行(状态行下)高度,设置为1   "set whichwrap+=,h,l   " 允许backspace和光标键跨越行边界...隐藏菜单栏 "set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\ " 设置状态行显示信息...,而是vim自己 set nocompatible " 语法高亮 set syntax=on " 去掉输入错误提示声音 set noeb " 处理未保存或只读文件时候,弹出确认 set..." 带有如下符号单词不要被换行分割 set iskeyword+=_,$,@,%,#,- " 字符间插入像素行数目 set linespace=0 " 增强模式命令行自动完成操作 set...任何地方使用鼠标(类似office工作区双击鼠标定位) set mouse=a set selection=exclusive set selectmode=mouse,key " 通过使用

2.4K20

.NET周刊【12月第1期 2023-12-06】

这些更新提高了编码效率,特别是处理大文件和复杂项目。用户可通过设置特定属性来启用非 SDK 项目的构建加速。微软鼓励用户反馈,以进一步优化 Visual Studio 体验。...通过示例展示了将结构体成员设为只读后,尝试修改其字段值编译器不报错但修改不成功,因为只读机制会导致字段值堆栈上拷贝。这种隐蔽行为可能引发 BUG,自旋锁示例计数错误。...结构作为值类型,存储栈上,泛型参数为结构编译器生成特定实现,提升性能,减少装箱拆箱。类作为引用类型,存储堆上,泛型参数为类编译器生成通用实现,可能导致性能下降。...IIS 请求队列是处理前临时存放请求地方,监控请求队列性能计数器有助于优化队列设置增加工作进程数、优化代码和调整队列长度,以减少等待时间,确保请求快速处理。...如何在 C# 代码格式设置设置大括号之前和之后开口。

21210

VIM技巧

1) 为什么别人方法我这里行不通? (2) 如何找到上次编辑文件? (3) 如何复制粘贴? (4) 如何在多个文件中进行替换? (5) 如何把fold一次全部打开?...需要解释是,VI有很多变种,它本身并没有这种功能,提供这种功能 往往是其各种衍生版本,比如说vim。下面就vim如何语法高亮简单解释一下。...如果是控制台中使用vim,还应当确定你终端设置支持颜色。 (11) 如何快速插入多行数字0-99?...命令行输入以下代码,或者先把代码保存到一个外部文件,然后source这个文件: let i = 0 while i < 100   put = i   let i = i + 1   endw...标  题: VIM不易发现强劲功能 发信站: BBS 水木清华站 (Mon May 31 10:54:41 2004), 站内 我最初使用Vim,有些功能并不知道,等发现后真后悔自己干了那么久体力活

1.1K30

vim从安装到熟练,这篇文章就够了

A-Z:用大写字母索引寄存器,可以寄存器追加内容。 "Ayy把当前行内容追加到a寄存器。 :reg 显示所有寄存器内容。 "":不加寄存器索引,默认使用寄存器。...j含义是grep结束后,结果停在第j项,默认是停在第一项。 vimgrep前面可以加数字限定搜索结果上限, :1vim/pattern/ % 只查找那个模式本文件第一个出现。...如果你没有make程序,你可以通过配置makeprg选项来更改make调用程序。 如果你只有一个abc.Java文件,你可以这样设置: 然后:make即可。...不过如果要正确定位错误,需要设置好errorformat,让vim识别错误信息。 : %f表示文件名,%l表示行号, %m表示错误信息,其它还不能理解。...可视模式下,选择要调整代码块,按=,代码会按书写规则缩排好。 或者n =,调整n行代码缩排。

4.6K10

Golang指南:顶级Golang框架、IDE和工具列表

可以这么说,这全都是因为Go语言易用性。 作为一种编译开源编程语言,Go语言能使开发人员轻松构建简单可靠又高效软件。它是更保守语言,C和C ++创新和演变产物。...你可以通过解析之前Tree上设置相应标志来添加自定义。 4.Go-Swagger 该工具包包括各种功能和功能。...此工具构建具有复杂代码大型项目特别有用。它在你想要了解另一个开发人员代码结构或重建别人项目,也很有用。...7.Gonative Gonative是一个简单Golang工具,让你能够使用本机库构建Go工具链,而这可以使用stdlib软件包Cgo-enabled版本进行交叉编译。...Gonative为每个平台下载二进制发行版,并将它们复制到正确位置。同时,Gonative设置正确mod时间,以避免不必要重建。 不幸是,GonativeWindows上仍然未经测试。

19.3K40
领券