如何让 gedit 自动缩进代码

发布于 2024-12-17 19:20:17 字数 100 浏览 1 评论 0原文

我正在尝试让 gedit 自动缩进我的代码。首选项中的自动缩进复选框不起作用。有没有办法让 gedit 自动缩进代码? (顺便说一句,我只关心 C++ 缩进。任何其他语言都不需要缩进。)

I'm trying to get gedit to auto-indent my code. The auto-indent check-box in preferences doesn't work. Is there a way to get gedit to auto-indent code?
(By the way, I only really care about C++ indentation. I don't need indentation for any other language.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

瑕疵 2024-12-24 19:20:17

gedit 有自动缩进功能,请转到

编辑->首选项->编辑->第三行

gedit has an auto indentation feature, go to

Edit -> Preferences -> Editor -> 3rd line

喜你已久 2024-12-24 19:20:17

gedit 的插件“智能文本完成”完全符合您的描述:
https://github.com/nymanjens/gedit-intelligent-text-completion

对于那些试图了解如何复制文件 intelligent_text_completion.pluginintelligent_text_completion.py 的人到.local/share/gedit/plugins,请执行以下操作:

user@example:~/.local/share$ cd ~/.local/share/
user@example:~/.local/share$ mkdir gedit
user@example:~/.local/share$ cd gedit/
user@example:~/.local/share/gedit$ mkdir plugins
user@example:~$ cp intelligent_text_completion.plugin intelligent_text_completion.py ~/.local/share/gedit/plugins/

The plugin 'intelligent text completion' for gedit does exactly what you describe:
https://github.com/nymanjens/gedit-intelligent-text-completion

For those who are trying to find out how to copy the files intelligent_text_completion.plugin and intelligent_text_completion.py to.local/share/gedit/plugins, please do the following:

user@example:~/.local/share$ cd ~/.local/share/
user@example:~/.local/share$ mkdir gedit
user@example:~/.local/share$ cd gedit/
user@example:~/.local/share/gedit$ mkdir plugins
user@example:~$ cp intelligent_text_completion.plugin intelligent_text_completion.py ~/.local/share/gedit/plugins/
不喜欢何必死缠烂打 2024-12-24 19:20:17

这是另一种解决方法,您可以使用 vim 从 Gedit 内部自动缩进和自动格式化代码。

首先确保vim已经安装。
接下来,从“工具”菜单中向 Gedit 添加一个“外部工具”,并使用以下代码:

#!/bin/sh
CMD_FILE_NAME=.formatcommand;
TMP_FILE_NAME=.tempvimfile;
touch $CMD_FILE_NAME&&echo "gg=G :wq! "$TMP_FILE_NAME > $CMD_FILE_NAME&&(vim $GEDIT_CURRENT_DOCUMENT_NAME -s $CMD_FILE_NAME > /dev/null 2>/dev/null)&&rm $CMD_FILE_NAME;
cat $TMP_FILE_NAME
rm $TMP_FILE_NAME

还要确保:

  • “保存”设置为“当前文档”。
  • “输入”设置为“无”。
  • “输出”设置为“替换当前文档”。

您还可以设置热键,我更喜欢 Alt+Shift+F,就像 Netbeans 一样。
现在,每当您按下热键时,当前文件都会被保存并自动格式化。

如果文件扩展名正确,这将适用于任何编程/脚本语言

如果您没有缩进,请在 ~/.vimrc 文件中放置 filetype indent on 并它会起作用的。

有关更多详细信息,请查看我的个人博客

Here is another workaround, you can use vim to auto indent and auto format your code from inside Gedit.

First make sure that vim is installed.
Next, add an "external tool" to Gedit from the "tools" menu and use the following code:

#!/bin/sh
CMD_FILE_NAME=.formatcommand;
TMP_FILE_NAME=.tempvimfile;
touch $CMD_FILE_NAME&&echo "gg=G :wq! "$TMP_FILE_NAME > $CMD_FILE_NAME&&(vim $GEDIT_CURRENT_DOCUMENT_NAME -s $CMD_FILE_NAME > /dev/null 2>/dev/null)&&rm $CMD_FILE_NAME;
cat $TMP_FILE_NAME
rm $TMP_FILE_NAME

Also make sure that:

  • "Save" is set to "Current document".
  • "Input" is set to "Nothing".
  • "Output" is set to "Replace current document".

You can also setup a hotkey, I prefer Alt+Shift+F like Netbeans.
Now whenever you press the hotkey, the current file will be saved and auto formatted.

This will work on any programming/scripting language given that the file's extension is correct

If you don't get the indentation put filetype indent on in your ~/.vimrc file and it will work.

For More details check my personal blog

美煞众生 2024-12-24 19:20:17

Ubuntu 16.04 和 Gedit

  1. 激活外部工具插件

    编辑→首选项→插件→外部工具

  2. 管理外部工具

    工具 → 管理外部工具

  3. 添加工具

    • 点击管理页面左下角的+按钮
      外部工具
      窗口
    • 您可以将新工具重命名为您喜欢的任何名称,
      例如 JSON 格式化程序
    • 请参考下图并进行相应设置

    管理外部工具屏幕截图

Ubuntu 16.04 and Gedit

  1. Activate External Tools Plugin

    Edit → Preferences → Plugins → External Tools

  2. Manage External Tools

    Tools → Manage External Tools

  3. Add a Tool

    • Click the + button at the bottom left of the Manage
      External Tools
      window
    • You can rename the new tool to whatever you like,
      e.g. JSON Formatter
    • Refer to the image below and set it up accordingly

    Manage External Tools screenshot

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文