Notepad ++中的自动缩进

182 code-formatting notepad++ indentation

我们总是写这样正式的代码:

void main(){
  if(){
    if()
    }
Run Code Online (Sandbox Code Playgroud)

替代文字

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

void main(){
if(){
if()
}
Run Code Online (Sandbox Code Playgroud)

替代文字

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

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

替代文字

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

scr*_*ide 133

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

  • @Fostah:您还可以通过>插件>插件管理器>显示插件管理器安装"文本FX字符" (7认同)
  • 我实际上在寻找格式化JavaScript代码的方法时发现了这一点.事实证明,这适用于.js文件! (2认同)

小智 95

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

在版本Notepad ++ v6.1.3中,我解决了:插件管理器 - >显示插件管理器**然后检查插件"缩进缩进"

  • 折叠缩进很棒.它以任意格式(*XML,C/++ /#等*)工作的事实很棒.唯一的问题是"撤销"堆栈.使用时,如果要在缩进之前撤消到某个点,则必须通过**每个**行重新缩进来撤消,因为它不会作为单个命令添加到堆栈中.基本上,使用*long*文件时要小心. (2认同)
  • 是的,它不存在,也没有插件管理器。 (2认同)

小智 31

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

  • 你需要TextFx插件 (2认同)

小智 29

大多数文本编辑程序开发人员滥用此名称(自动缩进).正确的名称是"保持缩进".自动缩进是您真正想要的,但它没有实现.

我还想在Notepad ++中看到这个功能.


Jon*_*ski 22

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

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

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


还要注意你错过了第二个方块if:

void main(){
  if(){
    if() { }  # here
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 请注意,Notepad ++中的此自动缩进设置假定您手动执行块中的第一个缩进; 它不会为您自动格式化代码. (8认同)

Aki*_*43S 14

您可以使用'Indent by fold'插件.从插件管理器安装它.这对我来说可以.

  • 折叠缩进是很好的,除了它只是通过折叠缩进;)在你缩进列表初始化的情况下,除非语言使用折叠字符来分隔初始化器,否则它将最终取消缩进.一个例子是使用`array(...)`在PHP中进行多行数组初始化,其中`()`是非折叠的. (2认同)

小智 7

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

在此输入图像描述


小智 5

在6.6.8版本中,我从插件>插件管理器>显示插件管理器安装了NppAutoIndent插件.然后我在Plugin> NppAutoIndent中选择了Smart Indent选项.希望这可以帮助.


Luk*_*uke 5

对于使用 Notepad++ v6.8.1 及更高版本的用户,自动缩进设置现在位于菜单Settings ? 偏好杂项。? 自动缩进

在此处输入图片说明