Форматування коду в Блокноті ++


186

Чи є комбінація клавіш для форматування коду в Блокноті ++?
Я в основному працюю з 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 ++, тому що він не любить мої теги джанго.
— Даррен

1
На це потрібна сучасна відповідь. Жодна з цих відповідей більше не працює.
— Філіп Рего

Вам потрібно додати пов’язаний плагін, доступ до якого можна отримати Plugin manger: справа від Notepad ++ версії 7.5, менеджер плагінів більше не постачається із Notepad ++
— Mohammad

Відповіді:


127

TextFX -> HTML Tidy -> Tidy: Reindent XML

Не забудьте обрати HTML-код перед цим.


1
Привіт, я це використав, і це чудово працює лише з HTML. Однак теги django, здається, просто стирають їх або не форматують їх належним чином. Це найближчий поки що. Та для підказки.
— darren

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

2
Здається, Блокнот ++ хоче ускладнити життя . НАВІТЬ якщо у вас є версії 6 або вище , вам все одно потрібно завантажити зіп версії 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 ++, для розуміння цього знадобилося досить багато невдалого пошуку меню, а за ним і Googling. Процес його встановлення потрібно враховувати у простоті цього рішення, якщо він починається з нуля.
— Stabledog

1
хоч плагін, він попередньо встановлений у встановниках Notepad ++ за замовчуванням
— Дмитро Автономов

3
це не працює ... Де команда форматування / автоматичного відступу? Нічого не працює. У цей день 2017-05-29 нічого не буде автоматично відступати ні PHP, ні JS. Чи може хто-небудь пояснити, що йде не так, і чому простий бізнес автоматичного відступу PHP та JS-коду доводить такі неприємні болі в ***?
— мійський гризун

23

Якщо ви перейдете до TextFXменю та перейдете до TextFX Edit, ви побачите пункт менюReindent C++ Code .

Це також буде форматувати код C #.


Це не вводиться правильно в PHP. Іноді він робить 2 або 3 пробіли табуляції замість одного, а в деяких ситуаціях не робить жодного, коли слід.
— Джо Смо

У мене немає меню TextFX ... про що ти йдеш?
— мійський гризун

Вам потрібно буде встановити його через менеджер плагінів. Це називається символи TextFX.
— користувач890332

11

Ось список доступних ярликів у Блокноті ++.

Якщо потрібна функціональність недоступна, ви можете визначити власні макроси та призначити їх власному ярлику (я не звик використовувати макроси).

ОНОВЛЕННЯ : Я опублікую тут ярлики, якщо посилання стане недійсним:

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, який можна встановити за допомогою Плагінів> Менеджер плагінів> Показати Менеджер плагінів.

Я пропоную редагувати config 1 та встановлювати позначки цитат: ні, особливо якщо у вас є сценарій, який використовує лапки.

Крім того, виправлення декількох разів може призвести до вставки амперсандів у перший раз, а потім заміни амперсандів вдруге. Ви можете пограти з конфігурацією, щоб дістатись туди, де вам це потрібно.


6

Це не зовсім відповідь, яку ви шукали, але це рішення, до якого я прийшов, коли у мене було те саме питання.

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


Однозначно не відповідь на це запитання
— skia.heliou

Чи можливо автоматичне форматування PHP всередині Netbeans? Мені потрібен додатковий плагін для цього? Дякую.
— WM

Так, Netbeans автоформатує PHP, але вам, ймовірно, потрібно переконатися, що у вас є версія php або принаймні встановлений плагін php. У Windows ключовим комбо для автоматичного форматування є Alt + Shift + F.
— користувач3413723


3

ВІДПОВІД ЧЕРВЕНЬ 2019 року

Встановіть XML Tools плагін із адміністратора плагінів (у Блокноті ++ 7.7 принаймні)

Потім натисніть Плагіни -> Інструменти XML -> Гарне друк (лише XML з розривами рядків)

Це зробило це для мене.


1
Це ТІЛЬКЕ рішення на цій сторінці, яке працювало для мене, і воно працює чудово!
— Дон Келлі

2

У моєму блокноті ++, здається, TextFX потребує Perl середовища для форматування файлів HTML. Tidy2 нічого не вимагає, тому я думаю, що це зручніше.


2

Якщо все, що вам потрібно, це вирівнювання, спробуйте плагін під назвою Code Alignment.

Ви можете отримати його від вбудованого менеджера плагінів у Notepad ++.


0

Ні. Блокнот ++ не може сам форматувати. Форматування легко здійснити в багатьох IDE, таких як Eclipse, NetBeans, Visual Studio [Код].


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

"сам по собі". Будьте веселі, намагаючись надати Notepad ++ для форматування, коли у вас немає доступу до встановлення плагінів.
— Філіп Рего

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

-1

Ми можемо використовувати наступний ярлик в останній версії блокнота ++ для форматування коду

Alt + Ctrl + Shift + B

2
Я встановив останній блокнот ++, але це скорочення не працює для мене. Чи можете ви надати ще одну відповідь, будь ласка.
— Шаші Шива L

У якій версії та для якого типу контенту повинен працювати цей ярлик? Спробував це в Notepad ++ v7.7.1 без ефекту.
— gia
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.