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

有关使用emacs进行C++项目的任何好建议吗?

关于使用Emacs进行C++项目的建议,以下是一些建议和步骤:

  1. 安装Emacs:首先,确保您已经在计算机上安装了Emacs。如果没有,请访问Emacs官方网站(https://www.gnu.org/software/emacs/)下载并安装。
  2. 安装C++模式:Emacs自带了C++模式,您可以通过在Emacs中输入M-x c++-mode来启用它。如果您想要更高级的功能,可以考虑安装CC-Mode(https://cc-mode.org/),它提供了更好的语法高亮、自动缩进和代码补全等功能。
  3. 配置Emacs:为了更好地使用Emacs进行C++开发,您可能需要对其进行一些配置。以下是一些建议的配置:
  • 启用自动缩进:在C++模式下,自动缩进可以帮助您更好地组织代码。您可以通过在Emacs配置文件中添加以下代码来启用自动缩进:
代码语言:txt
复制
 ```
代码语言:txt
复制
 (setq c-default-style "bsd"
代码语言:txt
复制
       c-basic-offset 4)
代码语言:txt
复制
 ```
  • 启用语法高亮:语法高亮可以帮助您更容易地识别代码中的错误。要启用语法高亮,请在Emacs配置文件中添加以下代码:
代码语言:txt
复制
 ```
代码语言:txt
复制
 (global-font-lock-mode t)
代码语言:txt
复制
 ```
  • 启用代码补全:代码补全可以帮助您更快地编写代码。要启用代码补全,请在Emacs配置文件中添加以下代码:
代码语言:txt
复制
 ```
代码语言:txt
复制
 (setq company-idle-delay 0.5)
代码语言:txt
复制
 (global-company-mode)
代码语言:txt
复制
 ```
  1. 使用Emacs进行C++开发:现在您已经配置好了Emacs,可以开始使用它进行C++开发了。以下是一些常用的Emacs命令和快捷键:
  • C-x C-f:打开文件
  • C-x C-s:保存文件
  • C-x C-c:退出Emacs
  • C-/:注释/取消注释当前行
  • M-;:注释/取消注释多行
  • C-M-a:跳转到函数的开头
  • C-M-e:跳转到函数的结尾
  • M-x compile:编译C++代码
  • M-x gdb:启动GDB调试器
  1. 使用版本控制:在C++项目中,使用版本控制(如Git)是非常重要的。您可以使用Emacs内置的Magit模式(https://magit.vc/)来管理Git仓库。

总之,Emacs是一个功能强大的文本编辑器,可以很好地用于C++项目的开发。通过安装和配置相应的插件,您可以更好地利用Emacs进行C++开发。

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

相关·内容

几种编程语言的优缺点

其次,这是一进行中的工程,现在只是东打一耙西搞一下,还没有精加工过的。又一个把它写到博客里的很大的理由。不需要很好,或很完整。就是我今天想说的一些话。请随便!...Emacs 是天才。连非技术人员都爱 Emacs。我现在就是在 Emacs 里打这些文字。我绝不情愿在任何其他地方打字。...想要招一个的 Java 工程师是一很有技术挑战的活。 但是总的来说,Java 是软件工程史上的一大进步。 从 C++ 到 Java 不只是语法上的改变。...Java 正是我们应该在亚马逊推荐使用的语言。 你就是得小心点儿,因为和其他任何语言一样,你能很容易找出一堆人,他们很懂一门语言及其编程环境,但对品味,计算或者其他任何重要的东西却一无所知。...但是我认为这都是跟打字有关。我根本不能想象他们以前能打字打得足够快,英文字母只有 26 个,他们却有上万个字。但是 Emacs 几年前支持多字节字符了,所以我猜他们现在打字速度他妈的快多了。

3.4K110

各种编程语言的优缺点

其次,这是一进行中的工程,现在只是东打一耙西搞一下,还没有精加工过的。又一个把它写到博客里的很大的理由。不需要很好,或很完整。就是我今天想说的一些话。请随便!...Emacs 是天才。连非技术人员都爱 Emacs。我现在就是在 Emacs 里打这些文字。我绝不情愿在任何其他地方打字。...想要招一个的 Java 工程师是一很有技术挑战的活。 但是总的来说,Java 是软件工程史上的一大进步。 从 C++ 到 Java 不只是语法上的改变。...Java 正是我们应该在亚马逊推荐使用的语言。 你就是得小心点儿,因为和其他任何语言一样,你能很容易找出一堆人,他们很懂一门语言及其编程环境,但对品味,计算或者其他任何重要的东西却一无所知。...但是我认为这都是跟打字有关。我根本不能想象他们以前能打字打得足够快,英文字母只有 26 个,他们却有上万个字。但是 Emacs 几年前支持多字节字符了,所以我猜他们现在打字速度他妈的快多了。

4.4K60

亚马逊工程师论各种编程语言的优缺点

当然,他们所有人都使用 Emacs。靠,Eric Benson 是 XEmacs 的作者之一。这个世界上所有伟大的工程师都在用 Emacs[注1]。那种世界因你而不同级别的伟大。...Shel, Eric, Greg,和其他像他们那样的人,我没有足够幸运能跟他们直接一起工作:他们禁止在这里使用C++,他们禁止使用 Perl (或者 Java,为完整起见)。他们是明白人。   ...Emacs 是天才。连非技术人员都爱 Emacs。我现在就是在 Emacs 里打这些文字。我绝不情愿在任何其他地方打字。...想要招一个的 Java 工程师是一很有技术挑战的活。   但是总的来说,Java 是软件工程史上的一大进步。   从 C++ 到 Java 不只是语法上的改变。...但是我认为这都是跟打字有关。我根本不能想象他们以前能打字打得足够快,英文字母只有 26 个,他们却有上万个字。但是 Emacs 几年前支持多字节字符了,所以我猜他们现在打字速度他妈的快多了。

2.2K80

QT(一).hello world(1)

API,使用工具库自己的代码模拟出来 GUI 模拟:任何平台都提供了图形绘制函数,例如画点、画线、画面等,工具库利用这些基本函数,再绘制出自己的组件,这就是 GUI 模拟 所以可想而知,同一套 Qt...@h102 ~]$ Tip: 虽然 Qt 的最新版本为 Qt 5.8 ,但是这里实验依旧使用的 Qt version 4.8.6 ---- helloworld 要求 使用 Qt 写一个helloworld...app(argc, argv); //创建一个QApplication对象app,使用main函数的参数进行构造 QLabel label("Hello world!")...进行初始化 label.show(); //调用label的show方法 return app.exec(); //运行app应用 } 编译执行 [emacs@h102 hello]$...它使程序在用户退出时可以“优美”的结束,或者如果干掉一个进程如果这个进程不能保留程序之前的状态(对会话管理不了解,翻译的不准确) 由于QApplication对象做了这么多初始化操作,所以它必须在所以与用户接口有关的对象创建之前被创建

71610

太惨!学Python方法用错,直接从入门到放弃!

例如,通过适当地粘贴代码,Python程序可以对C++、Java和C#的类进行子类的定制。...与Vim不同,Emacs没有模式编辑器,使用Emacs就像使用Windows的记事本一样,但Emacs比Windows的记事本的功能要强大得多。下载并安装Emacs工具的具体流程如下所示。...print('同学们,我的名字是——Python!') print('这就是我的代码,简单?')...建议使用Geany,除非你有充分的理由不这样做。 在大多数Linux系统中,都只须执行一条命令就可以安装Geany。...接下来,创建一个用于存储项目的文件夹,并将其命名为python_work(在文件名和文件夹名中,最好使用小写字母,并使用下划线来表示空格,因为这是Python采用的命名约定)。

2K20

写给新手程序员的一封信

虽然它比早期的汇编语言提供了更好语法描述,但是今天C(或者C++)不是能够快速编写软件的语言。毫不偏袒的说,我建议你学习一种动态语言。选择一种你觉得语法(文档)让你使用起来更舒服的编程。...为此,你可能需要花费一些时间来在几种不同的语言之间进行比较。这么做目的不是为了让你感觉更好或者让编程更容易。更快地完成自己的作品并且能够看到成果,才是激励你编程的源动力。...如果你想定制自己的使用习惯,需要学习Emacs Lisp. Vim – 不仅操作简洁而且它默认包含在linux的发行版中,所以深受大家欢迎。我开始使用了2年Emacs。...Emacs和Vim可能已经成为成为古董了。但是,它们都具备一些现代编辑器多不具备的功能。 2. 选择一个你可以从中学到东西的操作系统   Windows不会教会你任何东西。...不要通过复制粘贴来做备份   一个新手程序员通常会把文件复制粘贴到一个临时目录下面来进行备份。这也许也是他们唯一知道的方法。不要那么做!你需要使用版本控制软件。

68180

C++基础(一).抽象

前言 C++语言是C语言的拓展,C语言是面向过程的,C++在C的基础上增加了面向对象的方法 什么是面向对象呢,面向对象就是将数据和对数据的加工方法打包在一起,进行模块化的调用,通过方法来进行数据交换的一种设计方法...-- 抽象 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面 抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。...比如,我们要设计一个学生成绩管理系统,考察学生这个对象时,我们只关心他的班级、学号、成绩等,而不用去关心他的身高、体重这些信息 抽象包括两个方面: 过程抽象 数据抽象 过程抽象是指任何一个明确定义功能的操作都可被使用者看作单个的实体看待...@ubuntu:~/c++$ alias gtx alias gtx='g++ -Wall -g -o' emacs@ubuntu:~/c++$ gtx calc.x calc.cpp emacs@ubuntu...:~/c++$ 编译执行过程中没有报错,从结果来看,符合预期 ---- include 路径 c++ 和 c 的 include 文件夹路径不一样,可以通过下面方式查看 emacs@ubuntu:~$

36110

《Python完全自学教程》免费在线连载1.8

所以,接下来所介绍的几种可以用来编写代码的应用程序,并不是所有人都认为是 IDE ,但作者没有兴趣对此进行严格的辨析,读者如果认为将它们放在“ IDE ”之下不适合,就权当是介绍几个与编程有关的工具软件吧...Anaconda Anaconda 是另外一款在数据科学中常用的软件程序,其官方网站是 https://www.anaconda.com/ ,关于它的详细内容,读者可以自行浏览网页,此处不进行介绍,因为后面本书不使用它...★自学建议 阅读了本节内容之后,读者对 IDE 有了初步了解,就要至少选择并安装一种代码编辑软件。...在本书中,我不会使用任何 IDE 的花样技法演示代码的编写和调试——甚至于使用最笨拙的方法——而是要聚焦于编程语言本身。...至于应该选择哪种 IDE ,此处也不替读者决策,仅建议读者不要在 IDE 上花费太多精力。”

74620

10 个让你进入 Emacs 世界的技巧

我相信,问题在于人们其实并不想“学习” Emacs,而是他们想习惯 Emacs 的传统。他们想了解那些神秘的键盘快捷键和不熟悉的术语。他们想按照他们认为的“使用目的”来使用 Emacs。...在某种程度上,Emacs 就是自己的 API。 你可以通过在社区博客上阅读有关 Emacs 的资料来了解新函数,或者你可以采取更直接的方法,使用描述函数(describe-function)。...Emacs目的是为了定制,当人们为 Emacs 编写插件时,他们可以定义自己的特殊键盘快捷键。 我们的想法不是要马上记住所有的快捷键。相反,你的目标是让你在使用 Emacs 时感到舒适。...软件包管理器在每次启动时都会更新缓存,所以第一次使用时要耐心等待它下载可用软件包的列表。一旦加载完毕,你可以用键盘或鼠标进行导航(记住,Emacs 是一个 GUI 应用程序)。...这些并不是特别有用,但在任何层面上与 Emacs 进行交互都是很好的练习,游戏是让你在 Emacs 中花费时间的方法。

79420

30岁文转码:我用了三年时间从哲学家变成知名软件项目核心开发

另一个有趣的事实:他做那些教程视频的主要目的是练习他的英语。——BeetleB GNU EMACS 是一个可扩展、可定制、免费、自由的文本编辑器。同时,它也是一个集成开发环境。...下面,咱们就一起来看几个无需多高技术水平就能实现的常见工作流程: 使用补全框架对文件内容进行异步搜索,将结果放在专用缓冲区内并就地编辑。最后,把变更传播至所有相关文件。...因此,Emacs 得以将各种界面连通起来,而且完全不会因为上下文切换而引起任何冲突。 Emacs 的最后一优势,就是易用性和规模化使用时的便捷性。例如,我想用自定义代码制作本次演讲中的演示内容。...完全不需要,使用同一个模式即可。另外,我也不需要单独的工具进行文本编写和呈现,所有功能都是统一且互通的,又又简单! 除此之外,底层配置也全部在 Elisp 中完成,这又进一步简化了整体效果。...我只是建议它们应该组合使用,而目前毫无关联、彼此割裂的状态肯定不够好。用户只能竭尽全力用一个个功能孤岛拼凑出整体系统。

36130

一个很有借鉴价值的编程故事

然后一个人从我身边经过,看见我正在使用Emacs,就问“你怎么还在用Emacs(表情自行脑补),你不知道Vim更好吗?”我想“呵,Vim”,于是我开始背诵Vim成堆的键盘快捷键。 ?...这里的工程师不讨Vim和Emacs哪家强,每个人使用的文本编辑器都是RubyMine,这是一个强大的集成开发环境,默认配置非常好用。...因为工具集小,所以工程师容易成为该领域专家,又因为每个人使用的工具集都是一样的,所以相互之间进行互操作就变得很容易。...学习像Docker和Famo.us这样的工具,仅仅因为它们新奇,虽然更加基础的技术都还没掌握。 如果非得用一个词来总结我的建议,我会说:专注。 我问你,你会用专注这个词来描述你的编程学习计划?...如果你认为你的计划够专注,,你现在可以停止阅读,回到你的计划开始学习,因为我不想说任何可能导致你失去专注的事情。

99360

编程必备,程序员应该都知道的7款文本编辑器

大家,又见面了,我是全栈君。 简评:正如一个作家需要一个文字处理器来写故事,一个艺术家需要画布来创作,同样的,如果想编程,你会需要一个地方来写代码。程序员在哪里编写代码?...个人认为其中最引人注目的当属“模糊查找功能”,允许快速定位文件,无需通过 Command + T 来搜寻完整的文件目录。...由于加载可以使用 Web 技术构建,很多人都把自定义插件添加到 Atom.io 文本编辑器上。这也实属正常,毕竟是在 Github 上写的,本身就具有很强的 Git 整合性。...如果是刚刚开始学习编程的,其实不太建议使用 Vim。专业编程几年后,再来考虑拿起 Vim 提高生产力。 5、Emacs Emacs 类似于 Vim,也是一个跨平台命令行文本编辑器。...它虽然没有 wim 那种多模式,但使用仍然需要一个相对较高的技能水平,因为学习曲线比较高。 Emacs 有祥全的内置文档,支持几乎所有的 Unicode,高度可定制。

2.2K10

笨办法学 Python · 续 练习 0:起步

IDE 通常与单一语言相关联,因为它对源进行高级的检测,并为你提供编写代码的快捷方式。然后,你不必记住任何事情,只需大多数任何项目中,ctrl-space你的方式。...这些编辑器运行在我在本书中使用的每个平台上,都是可校本化的,有很多插件,而且易于使用。如果你愿意,你也可以使用 Vim 或 Emacs。 Python 3.6 这本书需要 Python 3.6。...你会希望得到一个方格纸的本子,或者可能是带有点而不是线的纸张,以及一袋的铅笔。你可以使用任何你喜欢的东西,但本书中的一部分过程是在计算机外部跟踪事件,在解决问题时,作为改变你的观点的一种方式。...git 如果你有一个github.com帐户,那么你还需要使用命令行工具git。github.com将会提供大量信息,有关如何以及在哪里获取它,但请观看视频,来了解如何为你的平台最佳安装它。...我的建议是,如果你负担得起或找到了屏幕录制软件,当你觉得你根本无法弄清楚你做错了什么,需要看观察你自己的工作,那么你应该使用它。

52930

Emacs 29.1 版本发布了

29.1 已经在 2023-07-30[1] 发布了 作为日常使用 Emacs 进行开发的重度用户,困扰笔者的一个问题时,同时打开多个项目时, xref 会错乱,这十分烦人,忍受一段时间后,最终去 SO...: 交互式命令,切换到 *scratch* buffer,可以解决误删的问题 project-list-buffers: 用于展示当前项目的 buffer xref-find-references-and-replace...这样按说就不再需要在使用 so-long-mode 了, long-line-threshold 控制长行的阈值,超过即进行优化展示。...handling.[5] kill-buffer 如果没有保存会给出 save then kill 的提示 tramp 支持了 docker podman kubernetes Org 升级到 v9.6 C+...启动 --batch --script 现在会调整 GC 参数, gc-cons-percentage 会设置成 1(默认是 0.1)。 Emacs 可以更方便的用于脚本中。 #!

47820
领券