在notepad++中是否有键盘快捷键来格式化代码? 我主要使用HTML, CSS和Python代码。

例如:

<title>{% block title %}    {% endblock %}</title>      
 <link rel="stylesheet" href="/media/style.css" type="text/css" media="screen" />
</head>

To:

<head>
  <title>
    {% block title %}
    {% endblock %}
  </title>
  <link rel="stylesheet" href="/media/style.css" type="text/css" media="screen" />
</head>

我记得Visual Studio用Ctrl+K+D做到了,NetBeans也有这个功能,但在notepad++中找不到它,如果它甚至可以做到的话。


当前回答

答:截至2019年6月

从插件管理安装XML Tools插件(至少在notepad++ 7.7中)

然后点击插件-> XML工具->漂亮打印(仅XML与换行)

这对我很有帮助。

其他回答

另一个潜在的解决方案

好了,这个问题已经问了12年了。我认为我已经找到了另一个可接受的解决方案,这可能是更好的格式文件,使用pretty。

什么更漂亮?

beautitier被描述为:“一个固执己见的代码格式化器。它通过解析你的代码并使用自己的规则重新打印它来实现一致的风格,这些规则考虑到最大的行长,在必要时包装代码。”

pretty支持以下语言

超文本标记语言 CSS、Less和SCSS JavaScript 打印稿 JSX, Angular, Vue JSON, Markdown, YAML

还有其他一些。

如果你想使用其他语言,你可以使用:

社区为pretty制作的插件,允许支持其他格式,如Java、Rust、PHP、SQL和其他格式。 非漂亮格式器支持其他语言,如clangformat (npm版本)(C / c++ / Java / JavaScript / JSON / Objective-C / Protobuf / c#),或Black (Python)。

如何安装

在本教程中,你需要安装Node.js。

注意:可能会有其他的方法来使用后续的 提到的软件没有使用Node.js。但是为了保留这个教程 简单和Node.js已经广泛传播的事实 开发人员的熟悉程度,我将使用这个软件 没有解释如何安装。

在安装Node.js之后,在你的系统中全局安装更漂亮的程序,这样你就可以在命令行中运行更漂亮的程序。

# NPM is the package manager used by Node.js
# And --global allows you to use prettier anywhere on your local computer.

npm install --global prettier

# To install other plugins (example):
npm install --g prettier-plugin-rust prettier-plugin-java

# To Install clang-format using NPM
npm install -g clang-format

# Usage Examples
prettier --write jquery-min.js # Formatting a JavaScript file
clang-format -i Test.cpp # Formatting C++ file

On Notepad++, install a plugin called NppExec from Menu> Plugins Admin...> Available> NppExec. You can now run NppExec by either pressing F6 or by clicking Menu > Plugins > NppExec > Execute NppExec Script... Now you should have a window pop up, giving you the option of executing a command. You can either use prettier on a (1) specific file or (2) all files in a folder or (3) all files in a directory recursively. You can always reload a file after it's better overwritten by Prettier using Ctrl+R, and enabling the following setting: Menu > MISC. > Update silently.


NppExec + pretty的命令和截图。

REM Using Prettier on Current File (use cmd or powershell /c)
cmd /c prettier --write "$(FULL_CURRENT_PATH)"

REM Using Prettier on Current Folder (a single asterisk)
pwsh /c prettier --write "$(CURRENT_DIRECTORY)\*"

REM Using Prettier on Current Directory Recursively (double asterisk)
pwsh /c prettier --write "$(CURRENT_DIRECTORY)\**"

安装NppExec Plugin


运行NppExec Plugin


在NppExec上执行命令

在我的notepad++中,似乎TextFX需要一个perl环境来格式化HTML文件。Tidy2不需要任何东西,所以我认为它更方便。

下面是notepad++中可用的快捷方式列表。

如果你想要的功能不可用,你可以定义自己的宏,并将它们分配给一个自定义快捷方式(我不习惯使用宏)。

更新:我会在这里张贴快捷方式,以防链接无效:

Shortcut    Command

Ctrl-C  Copy
Ctrl-X  Cut
Ctrl-V  Paste
Ctrl-Z  Undo
Ctrl-Y  Redo
Ctrl-A  Select All
Ctrl-F  Launch Find Dialog
Ctrl-H  Launch Find / Replace Dialog
Ctrl-D  Duplicate Current Line
Ctrl-L  Delete Current Line
Ctrl-T  Switch the current line position with the previous line position
F3  Find Next
Shft-F3 Find Previous
Ctrl-Shft-F Find in Files
Ctrl-F3 Find (volatil) Next
Ctrl-Shft-F3    Find (volatil) Previous
Ctrl-Shft-I Incremental Search
Ctrl-S  Save File
Ctrl-Alt-S  Save As
Ctrl-Shft-S Save All
Ctrl-O  Open File
Ctrl-N  New File
Ctrl-F2 Toggle Bookmark
F2  Go To Next Bookmark 
Shft-F2 Go To Previous Bookmark
Ctrl-G  Launch GoToLine Dialog
Ctrl-W  Close Current Document
Alt-Shft-Arrow keys or Alt + Left mouse click   Column Mode Select
F5  Launch Run Dialog
Ctrl-Space  Launch CallTip ListBox
Alt-Space   Launch Word Completion ListBox
Tab (selection of several lines)    Insert Tabulation or Space (Indent)
Shft-Tab (selection of several lines)   Remove Tabulation or Space (outdent)
Ctrl-(Keypad-/Keypad+) or Ctrl + mouse wheel butto  Zoom in (+ or up) and Zoom out (- or down)
Ctrl-Keypad/    Restore the original size from zoom 
F11 Toggle Full Screen Mode
Ctrl-Tab    Next Document
Ctrl-Shft-Tab   Previous Document
Ctrl-Shft-Up    Move Current Line Up
Ctrl-Shft-Down  Move Current Line Down
Ctrl-Alt-F  Collapse the Current Level
Ctrl-Alt-Shft-F Uncollapse the Current Level
Alt-0   Fold All
Alt-(1~8)   Collapse the Level (1~8)
Alt-Shft-0  Unfold All
Alt-Shft-(1~8)  Uncollapse the Level (1~8)
Ctrl-BackSpace  Delete to start of word
Ctrl-Delete Delete to end of word
Ctrl-Shft-BackSpace Delete to start of line
Ctrl-Shft-Delete    Delete to end of line
Ctrl-U  Convert to lower case
Ctrl-Shft-U Convert to UPPER CASE
Ctrl-B  Go to matching brace
Ctrl-Shft-R Start to record /Stop recording the macro
Ctrl-Shft-P Play recorded macro
Ctrl-Q  Block comment/uncomment
Ctrl-Shft-Q Stream comment
Ctrl-Shft-T Copy current line to clipboard
Ctrl-P  Print
Alt-F4  Exit
Ctrl-I  Split Lines
Ctrl-J  Join Lines
Ctrl-Alt-R  Text Direction RTL
Ctrl-Alt-L  Text Direction LT
F1  About

有这样一个插件UniversalIndentGUI,它可以直接从插件管理器安装,并有可能重新缩进最常用的编程语言。

在插件>插件管理>搜索“XML工具”>安装。

该窗口将重新启动并在插件下安装XML Tools。

打开文件并单击Ctrl + Alt + Shift + B