在记事本++中自动缩进


187

我们总是像这样的形式编写代码:

void main(){
  if(){
    if()
    }

替代文字

但是当我使用Notepad ++时,显示为:

void main(){
if(){
if()
}

替代文字

如何使用Notepad ++自动缩进?

感谢Jonathan,我已经设置了它,但是它没有任何效果。快照如下:

替代文字

我正在使用Notepad ++版本5.1.3。

Answers:


135

如果您手动缩进块中的第一行,则Notepad ++仅会自动插入后续缩进。否则,您可以在使用之后重新缩进代码TextFX > TextFX Edit > Reindent C++ code


1
如果您的版本缺少DLL,则可以从ZIP 5.9.0版本中获取它。某些更高版本不包含此DLL。notepad-plus-plus.org/download/v5.9.0.html
福斯塔

2
我实际上是在寻找格式化JavaScript代码的方式时发现的。原来,这也适用于.js文件!
sacredfaith 2012年

7
@Fostah:您也可以通过>插件>插件管理器>显示插件管理器
Adrien

@scronide,有快捷键吗?
佩里耶

请注意,尽管有这个名称,它也绝对正确地重新缩进了我试图修复缩进的javascript代码。我没有理由不提它,因为它的名称具体。邓诺(Dunno)为什么该库的作者感到他必须特别偏爱C ++ ...:D
neminem

99

如果TextFX菜单不存在,则需要下载并安装插件。插件->插件管理器->显示插件管理器,然后检查插件TextFX Characters。单击“安装”,重新启动Notepad ++。

在版本Notepad ++ v6.1.3中,我使用以下方法解决:插件管理器->显示插件管理器**,然后检查插件“按折叠缩进”


2
折叠缩进很棒。它可以以任意格式(XML,C / ++ /#等)工作的事实非常棒。唯一的问题是“撤消”堆栈。在使用时,如果希望在缩进之前撤消到某个点,则必须在行重新缩进中撤消,因为它不会作为单个命令添加到堆栈中。基本上,使用文件时要小心。
Dan Lugg 2013年

嗨,@ Dan,撤消问题似乎已通过折叠方式在较新版本的缩进中得以解决……
538ROMEO

1
是的,它不存在,也没有插件管理器。
Beyondo

31

似乎至少有一种自动格式化XML的选项。可以在找到TextFX -> TextFX HTML Tidy -> Tidy: reindent XML


2
您需要为此使用TextFx插件
arviman's

29

大多数文本编辑程序开发人员都会滥用此名称(自动缩进)。正确的名称是“维护缩进”。自动缩进是您真正想要的,但是它没有实现。

我还希望在Notepad ++中看到此功能。


22

在最新版本中(至少),您可以通过以下方式找到它:

  • 设置(菜单)
  • 优先...
  • MISC(标签)
  • 左下方的复选框列表
  • 自动缩进 ”是该组中的第二个选项

[ 编辑 ]虽然,我认为它没有自动缩进的最佳实现。因此,请检查以确保您拥有5.1版-自动缩进最近已进行了大修,因此它会自动更正缩进。


另请注意,您缺少第二个障碍物if

void main(){
  if(){
    if() { }  # here
  }
}

8
请注意,Notepad ++中的此自动缩进设置假定您手动在一个块中进行第一个缩进。它不会自动为您设置代码格式。
scronide

我现在才有了您的意思,请原谅我可怜的英语...我的母语是中文...
Turion

14

您可以使用“按折叠缩进”插件。从插件管理器安装。这对我来说可以。


2
按折叠缩进是很棒的,除了它仅按折叠缩进;)在缩进列表初始化的情况下,除非该语言使用折叠字符来分隔初始化程序,否则最终将不缩进。一个例子是在PHP中使用的多线阵列初始化array( ... ),其中()是非折叠。
丹·拉格

5

在6.6.8版本中,我从插件>插件管理器>显示插件管理器安装了NppAutoIndent插件。然后,在“插件”>“ NppAutoIndent”中选择了“智能缩进”选项。希望这可以帮助。


4

一点更新:您可以跳过TextFX插件,而仅使用 Tidy2。您可以在此处为不同类型的代码配置自己的格式规则。易于安装和拆卸

Notepad ++>插件>插件管理器>显示插件管理器

并搜索Tidy2并安装它。做完了


你能解释更多吗?
Dieter Meemken '16

有关配置的更多信息,请参见:stackoverflow.com/questions/14865770/using-tydy2-for-notepad
Sven Ya

与其他插件相比,使用它非常困难
Gaurav khurana

4

对于使用Notepad ++ v6.8.1及更高版本的用户,自动缩进设置现在位于菜单设置首选项MISC中。自动缩进

在此处输入图片说明



2

这似乎很愚蠢,但在最初的问题中,Turion正在编辑纯文本文件。确保从“语言”菜单中选择正确的语言


2
Menu TextFX → TextFX Edit → Reindent C++ code

在此处输入图片说明

,Notepad ++并未附带此“ Text FX Character”插件。您将需要通过安装

Plugins → Plugin Manager → Show Plugin Manager.

为缩进添加快捷方式

单击设置快捷方式映射器...,设置所需的快捷键。我更喜欢Ctrl+ =

在此处输入图片说明


1

安装Tidy2插件。我有Notepad ++ v6.2.2,并且Tidy2到目前为止运行良好。


1

首先下载插件管理器此链接,然后解压缩zip文件夹并将其复制到program / notepad ++文件夹中。然后重新启动您的记事本++。然后您会在插件菜单中看到插件管理器。然后单击插件管理器,然后单击显示插件管理器。它显示所有插件列表。从底部的列表中找到XML工具,选中并安装。然后重新启动您的记事本++。打开文档后,然后使用plugins / xml工具/漂亮的(缩进文本)即可。


0

对于使用版本7.8.5的用户,自动缩进设置现在位于“设置”->“首选项...”->“自动完成”中。

在此处输入图片说明


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.