C ++代码自动格式化

时间:2014-09-19 02:36:13

标签: c++ linux gedit

经过多年使用Visual Studio for C ++编程,我现在正在切换到linux工作。到目前为止,一切都很顺利,只有一个小例外 - gedit。在基本文本编辑器中编写一些代码后,我真的开始想念我已经习惯的自动格式化功能。

是否有某种类型的“程序员记事本”可以帮助实时自动格式化,还是我必须使用标准IDE来实现此功能?大多数Linux开发人员是否使用基本文本编辑器手动格式化他们的代码?

我不是在寻找一个完整的IDE,只是在我输入时会自动格式化我的C ++代码。

2 个答案:

答案 0 :(得分:1)

Linux上的IDE有很多种文本编辑器。这里有一些想到的,大多数"记事本般的"大多数" VS-like"。

在"文本编辑器中#34;部门(意思是没有集成的编译,构建配置,调试器等。只需编辑文本/代码):

  • gedit (最基本的记事本式应用,IMO)
  • Kate (增强型记事本,但没有"命令",并且具有良好的自动格式化和突出显示)
  • Emacs (增强型记事本,包含命令和高级选项,可能难以使用)
  • VIM (与emacs相同,可能难以使用,我不喜欢它)
  • Sublime-text (很酷的增强文本编辑器,很多简洁的功能,但也有点难以掌握)

在IDE部门(意味着一些构建工具集成,通常是一些代码完成和代码的语义分析(检测变量,类等等,可以链接到dox)):

  • Geany (轻量级IDE,只不过是带有" build"按钮的增强型文本编辑器)
  • NetBeans (平均大小的IDE,质量一般,IMO)
  • Eclipse (平均大小的IDE,易于使用,即适用于小型项目,例如学校作业)
  • Qt Creator (平均到大型IDE,主要针对与Qt合作)
  • 代码::块(平均大小的IDE,质量一般但是OK,IMO)
  • KDevelop (IDE有点偏重,但总体来说功能很棒,并且拥有我见过的最好的代码完成功能,比起租来的骡子击败Intellisense for C ++)

当然,这只是一个部分清单,仅包括那些我已经接触过或已经听过很多的人。那里可能还有很多其他人。

  

是否有某种类型的"程序员的记事本"这有助于实时自动格式化,还是我必须使用标准IDE来实现此功能?

我在"文本编辑器中列出的所有应用程序"部门都支持这种功能(但是我对Gedit并不是100%肯定,因为它是基本的,我不会使用它,因为我不喜欢它)。就将代码从文本编辑器编写到IDE而言,唯一的主要跳转是代码完成/后台解析器,即" Intellisense"功能类型,包括类或函数的工具提示文档。你不能在文本编辑器中得到它,因为它必须知道你的构建配置(例如,你的cmake文件或等效文件)知道从哪里拉出标题以便能够理解"您的代码超出了琐碎的语法规则,关键字和缩进。

  

大多数Linux开发人员是否使用基本文本编辑器手动格式化代码?

没有。但它是一个多元化的世界。有些像基本的文本编辑器,其中自动缩进与你得到的一样多,而其他人喜欢功能丰富的IDE,然后,有些人选择他们的文本编辑器,看看颜色主题有多酷。 ;)

顺便说一下,还有非常强大的命令行代码格式化程序,比如 clang-format ,它可以以更智能的方式重新格式化代码,因为它有一个实际的完整C ++编译器前端解析你的代码。

答案 1 :(得分:0)

据我所知, gedit 有自动缩进支持,请尝试编辑 - >偏好 - >编辑并检查"启用自动缩进"。

但是,就个人而言,我建议您使用VIM,一个专业的文本编辑器,尽管不适合所有人。 Vim不是一个IDE,只是一个文本编辑器,但它非常强大。

如果 vim 目前看起来太多,我认为 kate 优于 gedit