Как мне отформатировать XML в Notepad ++?


1739

У меня есть Notepad ++, и я получил немного XML-кода, который очень длинный. Когда я вставил его в Notepad ++, была длинная строка кода (трудно читать и работать с ним).

Я хочу знать, есть ли простой способ сделать текст читабельным (под читабельным я имею в виду правильно код с вкладками).

Я могу сделать это вручную, но мне нужно постоянное решение, поскольку я сталкивался с этим несколько раз. Я уверен, что есть способ сделать это, как я делал это однажды, пару лет назад, может быть, с помощью Visual Studio или другого редактора, я не помню.

Но может ли Notepad ++ сделать это?


3
Конфигурирование XMLTools немного сложнее с последними версиями. В Windows 10, Notepad ++ версии V6.6.8 я успешно настроил XMLTools 2.4.7. Загрузите последний плагин по этой ссылке и следуйте инструкциям в файле install.txt> notepad-plus-plus.org/community/topic/125/… .
С.Рошант

1
Текущее решение для 64-битной версии: superuser.com/q/1239935/333622
Raidri поддерживает Monica

Ответы:


2438

Попробуйте подключаемые модули -> Инструменты XML -> Pretty Print (libXML) или (только XML - с переносами строк Ctrl+ Alt+ Shift+ B)

Вам может понадобиться установить XML Tools, используя менеджер плагинов, чтобы получить эту опцию в вашем меню.

По моему опыту, libXML дает хороший вывод, но только если файл сформирован на 100% правильно.


635
если вы не можете найти XML инструментов под плагины, intall это от плагинов> Plugins Manager> Show Plugins Manager
ала

30
Если при попытке использовать этот плагин появляется ошибка «Обнаружены ошибки в содержимом», попробуйте Инструменты XML -> Проверить синтаксис XML сейчас. У меня была проблема, когда кодировка была указана как UTF-16, но на самом деле была UTF-8. Изменение атрибута кодировки в файле XML устранило проблему.
Мирза Добрик

153
И если ваш менеджер плагинов не может найти XML Tools, потому что вы находитесь за прокси на работе, загрузите его отсюда sourceforge.net/projects/npp-plugins/files/XML%20Tools Затем скопируйте XMLTools.dll в каталог плагинов и остальные четыре библиотеки в корневой директории Notepad ++.
Амит Найду

15
Если вы не видите ни одного доступного плагина, перейдите в раздел «Обновления» и обновите свой менеджер плагинов.
Surasin Tancharoen

37
... И если у вас нет плагина Менеджера плагинов, вы можете получить его здесь: github.com/bruderstein/nppPluginManager/releases
Zbigniew Wiadro

111

Вам необходимо установить инструмент XML из пункта меню « Плагины» → « Диспетчер плагинов» → « Показать диспетчер плагинов», а затем проверить инструменты XML, установить его, а затем Ctrl+ Alt+ Shift+ BИЛИ, показанный выше вариант для инструмента XML.


80
Step 1: Install XML Tools plugin
Step 2: Format ....completed

введите описание изображения здесь


2
отличный ответ, однако у меня нет «Менеджера плагинов» o_O Может кто-нибудь помочь? Это было удалено тем временем?
fl0w

работал для меня .. Для новых версий notepad ++ вместо диспетчера плагинов есть админ плагина
Jayani Sumudini

42

Попробуйте TextFX → TextFX HTML Tidy → Tidy: переопределить XML

Если вы не можете попробовать с Eclipse, сделайте правую кнопку, источник и исправьте отступ.


2
Спасибо за ответ, но я не могу найти Tidy: reindent XML в моем меню TextFX Html Tidy. Можете ли вы сказать мне, что мне не хватает?
happyhardik

3
Если у вас нет глобальной опции TextFX, вам нужно установить плагин с именем TextFX. Но этого недостаточно, по-видимому, версии 6.x также отсутствуют в загрузке libtidy.dll, поэтому вам нужно пройти через обручи, чтобы получить его. Тогда у вас будет опция Tidy: reindent XML (я полагаю)
rogerdpack

1
У меня есть такая опция, но она ничего не делает (и не выдает сообщение об ошибке).
Дунайский моряк

Для всех, кто интересуется, обручи, упомянутые @rogerdpack, обсуждаются здесь
Стив Чэмберс

1
Основная проблема, с которой я столкнулся при работе с TidyXML, заключается в том, что он медлительно медленный для любого файла размером более одного или двух мегабайт.
TS

33

Плагины -> Инструменты XML -> Pretty Print (libXML) или Ctrl+ Alt+ Shift+B

Вам, вероятно, нужно установить плагин:

Плагины> Менеджер плагинов> Показать менеджер плагинов

Если вы находитесь за прокси-сервером, загрузите его отсюда .

Затем скопируйте XMLTools.dllв каталог плагинов и внешние библиотеки (четыре библиотеки) в корневой каталог Notepad ++.


19

Вот большинство плагинов, которые вы можете использовать в Notepad ++ для форматирования вашего XML-кода.

  • UniversalIndentGUI
    (я рекомендую этот)

Включите «автоматическое обновление текста» в менеджере плагинов-> UniversalIndentGUI
Shortkey = CTRL+ ALT+ SHIFT+J

  • TextFX
    (это инструмент, который используют большинство пользователей)

Shortkey = CTRL+ ALT+ SHIFT+B

  • Инструменты XML
    (настраиваемый плагин для XML)

Shortkey = CTRL+ ALT+ SHIFT+B


1
Когда я использую UniversalIndentGUI для отступа одной большой строки XML, это не работает. У меня нет изменений.
Алекс

1
Я проверил еще раз, и он не работает только после установки плагина. Вы должны отредактировать настройки плагина, перейти к настройкам отступа XML и проверить опцию Force newline. Теперь это работает. Спасибо за советы, потому что это помогает для XML не на 100% правильно :)
Alex

UniversalIndentGUI работал для меня, когда другие параметры не помогли, не знаю почему, за исключением того, что файл XML, который я предварительно выполнил, был 40 МБ плюс. Это было также очень быстро. Подсказки к Алексу для подсказки опции новой строки XML.
Бранстар

TextFX был прекращен - из будущего TextFX : «... попрощайтесь со стареющей рабочей лошадкой, которая хорошо послужила сообществу».
Питер Мортенсен

15

Все предыдущие ответы не определяют, как добавить менеджер плагинов в вашей установке Notepad ++.

Это для людей, которые не видят менеджер плагинов во вкладке плагинов

Скачайте менеджер плагинов по этой ссылке - это для 64-битного менеджера плагинов . После загрузки менеджера плагинов вставьте в папку плагинов. Это было мое местоположение папки плагинов:C:\Program Files\Notepad++\plugins

Введите описание изображения здесь

После вставки DLL-файла перезапустите Notepad ++. Теперь вы можете установить любой плагин. Чтобы установить плагин, нажмите на вкладку плагинов, затем перейдите в диспетчер плагинов и выберите плагин по своему желанию.


14

Для достижения наилучших результатов, вы должны использовать как TextFX XML Tidy, так и XML инструменты. Вот как и почему:

1.TextFX -> TextFX HTML Tidy -> Tidy: reindent XML

TextFX имеет преимущество переноса длинных строк, чего не делает XML Tools, но он не делает правильные отступы для этих новых строк.

2. XML Tools -> Pretty print (Text indent)

Инструменты XML дополняют TextFX, аккуратно делая отступы для вновь обернутых строк.


Я пытался сравнить 2 разных файла конфигурации среды ... которые имели около 10 разных настроек ... но атрибуты xml были в одной строке в одном файле и в разных строках в другом файле XML. Только выполнив оба этих действия, в инструменте сравнения файлов всплыли реальные различия. Спасибо.
granadaCoder

1
TextFX был прекращен - из будущего TextFX : «... попрощайтесь со стареющей рабочей лошадкой, которая хорошо послужила сообществу».
Питер Мортенсен

9

Если вы получили эту ошибку:

Notepad ++ Ошибка: не удается загрузить 32-разрядный плагин

Не удается загрузить 32-разрядный плагин, XMLTools.dll не совместим с текущей версией Notepad ++

Здесь вы можете найти рабочую версию для Windows 10 x64: Xml Tools 2.4.9.2 Unicode

Примечание. Это единственная версия, которую я нашел для Windows 10 Professional x64.


7

Хорошо, вот как я это сделал в Notepad ++:

  • Плагины
  • Менеджер плагинов
  • Показать менеджер плагинов
  • Проверьте инструменты XML
  • устанавливать
  • Перезапустите Блокнот ++
  • Открыть файл XML
  • Плагины
  • Инструменты XML
  • Красивая печать (только XML - с переносами строк)

5

Вы можете найти подробности здесь, чтобы быстро отформатировать XML с помощью Pretty Print (libXML)

Установка инструментов XML

Если вы запустите Notepad ++ и загляните в меню плагинов, вы увидите, что инструментов XML там нет:

  1. Загрузите инструменты XML здесь .

  2. Разархивируйте файл и скопируйте XMLTools.dll в папку плагинов Notepad ++ (в приведенном выше примере: C: \ Program Files (x86) \ Notepad ++ \ plugins):

  3. Перезапустите Notepad ++, и вы должны увидеть, что XMLTools появляются в меню плагинов.

  4. Разархивируйте файл ext_libs.zip, а затем скопируйте разархивированные библиотеки DLL в установочный каталог Notepad ++ (в приведенном выше примере: C: \ Program Files (x86) \ Notepad ++).

  5. Перезапустите Notepad ++, и вы наконец увидите правильное меню XML Tools.

  6. Чаще всего я использую функцию «Довольно печатать (только XML - с переносами строк)». Это отформатирует любой фрагмент XML со всем правильным межстрочным интервалом.


4

Notepad ++ v6.6.3 с плагин "XML Tools" и ярлык Ctrl+ Alt+ Shift+ Bработает отлично.


3

В Notepad ++ нет такой вещи, как TextFX, по крайней мере, в последней версии. Это одна из причин, по которой я все еще работаю с DreamWeaver, даже если это сводит меня с ума, потому что я медлительный и время от времени не реагирую ...


да, многое изменилось в новой версии, но я все еще не смог ее решить!
happyhardik

4
для версий 5.9.x перейдите к плагинам -> менеджер плагинов -> показать менеджер плагинов, и вы можете добавить его отсюда
Ralph Willgoss

1
Поначалу возможность добавлять или не добавлять определенные функции может показаться странной, НО именно поэтому многие люди используют Notepad ++ для более объемных продуктов, таких как DreamWeaver! ВЫ сами решаете, насколько тонкой или толстой ваша программа, а не загружать
мойку

3

Последняя версия Notepad ++ x64 v7.6.2 в Windows 10 уже перенесла менеджер плагинов в «Администратор плагинов».

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


2

"Но может ли Notepad ++ сделать это?"

Если XML неверен, ответ, очевидно, «нет». Я пробовал Notepad ++ с плагинами Tidy2 и XMLTools. Оба выдают ошибки, похожие на «ошибки обнаружены, пожалуйста, исправьте». Если вас не волнуют ошибки, это PITA.

Вместо этого откройте его в Visual Studio, затем отредактируйте -> расширенный -> формат документа. Быстро и красиво.


1
XMLTools будет жаловаться, если нет корневого элемента. Если ваш XML верен, вы можете исправить это, просто добавив что-то вроде <root>/ </root>вверху / внизу.
Джон Фухи

2

Если ваш XML несовершенный, попробуйте это с плагином TextFX Characters (установить из менеджера плагинов):

Сначала найдите «>» для копирования в буфер обмена. Затем выберите ВСЕ свой текст, а затем ...

В главном меню: TextFX -> TextFX Edit -> Solit линий в буфере обмена символов ...

Это сделает разумную работу, не идеальную, но, по крайней мере, все будет читабельно.

Я должен был сделать это с кодом XML, хранящимся в базе данных SQL Server , где заголовки не были сохранены, только тело XML ...


TextFX был прекращен - из будущего TextFX : «... попрощайтесь со стареющей рабочей лошадкой, которая хорошо послужила сообществу».
Питер Мортенсен

2

Так как я вижу много комментариев о людях, имеющих проблемы с плагином, я подумал, что упомяну работу, которую я использую.

Я просто использую один из онлайн-сайтов для просмотра XML (я использую https://codebeautify.org/xmlviewer , но их там много) следующим образом:

  1. Вставьте содержимое XML в окно ввода
  2. Нажмите кнопку "украсить / форматировать"
  3. Скопируйте форматированный вывод XML из окна результатов
  4. Вставить в Блокнот ++

Я не знаю, отвечает ли он как точный ответ на вопрос OP, но это очень просто и легко для любого, у кого есть проблемы с плагином.


9
Делайте это только в том случае, если ваш xml не содержит конфиденциальных / личных данных
Patman

1

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

TextFX не будет корректно устанавливаться и работать на старом ПК с Windows XP. Выше приведены инструкции для ручной установки различных файлов DLL, но я бы предпочел избегать любой ручной установки.

UniversalIndentGUI отформатировал несколько строк следующим образом:

        <ClockStatus>1
        </ClockStatus>

И я бы предпочел:

        <ClockStatus>1</ClockStatus>

Но выход все же намного лучше, чем одна длинная линия!


1

Вы не можете, если у вас нет доступа к установке плагинов. Но вы, вероятно, имеете или можете получить Eclipse (Visual Studio может сделать это тоже).

Ctrl+ N(новый файл) → (выберите файл XML) → (вставьте содержимое XML) → Ctrl+ Shift+K (формат)

Если вы хотите отформатировать JSON, NotePad ++ может сделать это по умолчанию с помощью Ctrl+ Alt+m

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.