Форматирование кода в Notepad ++


186

Есть ли сочетание клавиш для форматирования кода в Notepad ++?
Я в основном работаю с HTML, CSS и Python кодом.

Например:

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

Для того, чтобы:

<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 ++, если он даже может это сделать.


Я использовал Dreamweaver «Применить исходное форматирование» или CRTL + K + D в Visual Studio и форматировал свои страницы. Я также использовал VIM, но я никогда не делал это правильно с Notepadd ++, потому что он не любит мои теги django.
Даррен

1
Это требует современного ответа. Ни один из этих ответов больше не работает.
Филипп Рего

Вам нужно добавить связанный плагин, доступный через Plugin manger, с точки зрения Notepad ++ версии 7.5, менеджер плагинов больше не поставляется с Notepad ++
Мохаммад Мусави

Ответы:


127

TextFX -> HTML Tidy -> Tidy: переопределить XML

Не забудьте выбрать HTML-код, прежде чем сделать это.


1
Привет, я использовал это, и он прекрасно работает только с HTML. Однако теги django, похоже, просто стирают их или неправильно форматируют. Пока это самое близкое. Та за чаевые.
Даррен

158
Для тех, кто скачивает новый Блокнот ++. TextFX больше не в комплекте. Вам нужно будет зайти Plugins > Plugin Manager > Show Plugin Managerи скачать TextFX оттуда. Кроме того, вы, вероятно, обнаружите, что TextFX не может найти libTidy.dll. Чтобы исправить это, вы можете сделать это stackoverflow.com/questions/6985637/… После всего этого вы должны быть в состоянии, TextFX -> HTML Tidy -> Tidy: Reindent XMLкак описано @gablin.
Даррен

2
Кажется, Notepad ++ хочет усложнить жизнь . Даже если у вас версия 6 или выше, вам все равно нужно скачать zip версию 5.9 здесь . Затем скопируйте tidyпапку unicode\plugins\Configи вставьте ее в свою C:\Program Files\Notepad++\plugins\Configпапку.
Даррен

1
В моем случае не было плагинов, перечисленных на вкладке «Доступно» «Диспетчер плагинов». Чтобы это исправить, мне пришлось изменить правила брандмауэра для Notepad ++, и «Диспетчер плагинов» затем отобразил полный список загружаемых плагинов, как и ожидалось.
Энтони Уолш

4
Tidy2Плагин будет делать работу, а Plugins > Plugin Manager > Show Plugin Managerзатем добавить Tidy2.
Джордж

76

Существует такой плагин, как UniversalIndentGUI , он может быть установлен прямо из менеджера плагинов и имеет возможность переопределять наиболее используемые языки программирования.


10
+1 Это прекрасно работает! Установите плагин UniversalIndentGUI и нажмите Ctrl + Alt + Shift + J для форматирования.
T_D

1
Спасибо, это прекрасно работает. Есть ли способ автоматически отформатировать код при сохранении? Прямо сейчас, когда я проверяю включение текста автообновления, он не обновляется, когда я сохраняю файл или выхожу из него.
obesechicken13

2
Кажется, стоит отметить, что «менеджер плагинов» сам по себе является плагином, да? Будучи незнакомым с Notepad ++, потребовалось немало неудачных попыток поиска в меню, а затем поиск в Google. Процесс установки должен учитываться в «простоте» этого решения, если оно начинается с нуля.
Конюшня

1
хотя это плагин, он поставляется с предустановленными в установщиках Notepad ++ по умолчанию
Дмитрий Автономов

3
это не работает ... Где команда format / auto-indent? Ничего не работает Ничто не будет автоматически делать отступы ни PHP, ни JS в этот день 2017-05-29. Может кто-нибудь объяснить, что происходит не так и почему простое занятие по автоматическому выравниванию кода PHP и JS доказывает такую ​​чертову боль в ***?
Майк Грызун

23

Если вы зайдете в TextFXменю и перейдете к TextFX Edit, вы увидите пункт меню Reindent C++ Code.

Это также отформатирует код C #.


Это не правильно делать отступ в PHP. Иногда он делает 2 или 3 пробела вместо одного, а в некоторых ситуациях не делает ни одного, когда должен.
Джо Смо

У меня нет меню TextFX ... о чем ты?
Майк Грызун

Вам нужно будет установить его через менеджер плагинов. Это называется TextFX Characters.
user890332

11

Вот список доступных ярлыков в 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

24
Я не вижу опции быстрого доступа, которая форматирует код. Что касается макроса, я понятия не имею, как бы я поступил об этом. Спасибо, в любом случае.
Даррен

макросы описаны здесь: stackoverflow.com/questions/362444/…
Thariama

35
Хаха все это и без ярлыка на вопрос? Зачем публиковать? -1
MH

9

Последний плагин - tidy2, который можно установить через Плагины> Диспетчер плагинов> Показать диспетчер плагинов.

Я предлагаю изменить конфигурацию 1 и установить кавычки: нет, особенно если у вас есть скрипт, который использует кавычки.

Кроме того, приведение в порядок более одного раза может привести к первой вставке амперсандов, а затем к замене амперсандов во второй раз. Вы можете поиграть с конфигом, чтобы получить его там, где он вам нужен.


6

Это не совсем тот ответ, который вы искали, но это решение, к которому я пришел, когда у меня возник тот же вопрос.

Я довольно серьезный пользователь Notepad ++, так что не поймите это неправильно. Я начал использовать NetBeans 8для разработки веб-сайтов в дополнение к Notepad ++, потому что вы можете настроить его на автоматическое форматирование при сохранении для всех ваших языков, и есть множество вариантов конфигурации для того, как выглядит форматирование, вплоть до мельчайших деталей. Вы можете заглянуть в него и найти его достойным инструментом в сочетании с notepad ++. Он также с открытым исходным кодом, полностью бесплатный, и имеет множество плагинов и других полезных вещей, таких как автоматическая компиляция Sass, если вы тоже это используете. Он определенно не такой быстрый, как NP ++, поэтому он не подходит для небольших правок, но может подойти для долгой сессии программирования.


Определенно нет ответа на этот вопрос
skia.heliou

Можно ли автоматически форматировать PHP внутри Netbeans? Нужен ли какой-нибудь дополнительный плагин для этого? Спасибо.
WM

Да, Netbeans автоматически форматирует PHP, но вам, вероятно, нужно убедиться, что у вас установлена ​​версия php или, по крайней мере, установлен плагин php. В Windows комбинация клавиш для автоформатирования - Alt + Shift + F.
user3413723


3

ОТВЕТ на июнь 2019 г.

Установите XML Toolsплагин от администратора плагинов (по крайней мере, в Notepad ++ 7.7)

Затем нажмите «Плагины» -> «Инструменты XML» -> «Красивая печать» (только XML с переносами строк)

Это сделало это для меня.


1
Это единственное решение на этой странице, которое работает для меня, и оно работает отлично!
Дон Келли

2

В моем блокноте ++, кажется, TextFX нужна среда Perl для форматирования файлов HTML. Tidy2 ничего не требует, поэтому я думаю, что это более удобно.


2

Если все, что вам нужно, это выравнивание, попробуйте плагин под названием Code Alignment.

Вы можете получить его из встроенного менеджера плагинов в Notepad ++.


0

Нет. Notepad ++ не может отформатировать сам по себе. Форматирование может быть легко выполнено во многих IDE, таких как Eclipse, NetBeans, Visual Studio [Code].


Неправильный ответ, во встроенный менеджер плагинов Notepad ++ можно установить и активировать функционал. IDE не требуются.
Payedimaunt

"само собой". Получайте удовольствие, пытаясь заставить Notepad ++ форматировать, когда у вас нет доступа к установке плагинов.
Филипп Рего

1
@ Payedimaunt, пожалуйста, подробно ответьте.
Шаши Шива L

-1

Мы можем использовать следующий ярлык в последней версии notepad ++ для форматирования кода

Alt + Ctrl + Shift + B

2
Я установил последний блокнот ++, но у меня не работает ярлык. Можете ли вы дать другой ответ, пожалуйста.
Шаши Шива L

В какой версии и с каким типом контента должен работать этот ярлык? Пробовал в Notepad ++ v7.7.1 безрезультатно.
Гия
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.