Notepad ++ автоматически завершает HTML-теги после </ (как это делает Dreamweaver)


20

В Dreamweaver при печати </автоматически закрывается последний открытый тег, поэтому вам не нужно вводить его полностью, и это помогает, если вы не уверены, закрыли ли вы его или нет. Есть ли плагин, который дозирует это для Notepad ++?

Это не похоже на текстовый FX, где ввод открывающего тега / скобки добавляет закрытие на другой стороне курсора. Такое поведение является автоматическим завершением, которое происходит при </вводе, DW находит любой самый открытый открытый тег и закрывает его. Я обнаружил, что, когда у меня есть возможность использовать DW, я буду использовать эту функцию гораздо чаще, чем все, что предоставляет DW. Поэтому я хотел бы знать, есть ли способ сделать это на АЭС.

Вот вопрос
введите описание изображения здесь
о предпочтениях DW: обратите внимание, как существует другая опция, которая делает то, что делает текст FX, но я не хочу этого.

Я не против неортодоксальных предложений, какого-то макроса или взлома засорения. Что-нибудь, чтобы подражать функциональности. Если нужно, я мог бы написать плагин, я просто не знаю, как это сделать.


Так неужели никто не знает о чем-то подобном? Любая идея, насколько сложно было бы реализовать?
— Zeel

Просто используйте Dreamweaver .... :)
— Apple II

Я бы, если бы мог себе это позволить. В прошлом у меня были времена, когда у меня был доступ к использованию DW, и мне это нравилось, но у меня нет средств, чтобы владеть им для себя.
— Zeel

Eclipse выполняет автозаполнение, хотя я думаю, что он слишком тяжел для простого редактирования HTML. +1 за вопрос, я тоже использую АЭС и было бы неплохо иметь такой плагин
— Alok

Менее чем за 24 часа. Тем не менее, ни один из ответов не заслуживает награды. Это останется без награды, если никто не даст лучшего.
— Zeel

Ответы:


9

Перейдите в настройки TextFX / TextFX и установите флажок «автоматически закрывать теги XHTML».

Это заставляет его работать и в простых HTML-файлах.


1
Нет, вы видите, что это не одно и то же. Это автоматически добавляет конечный тег, когда вы вводите открытие. так что печатание <p>приведет вас <p>|</p>туда, где | это строка ввода. Я хочу, чтобы после печати я дал ему точную информацию о </том, как он дозируется в Dreamweaver. Dw найдет следующий открытый тег и закроет его, если вы введете </25 открытых тегов и напечатаете </25 раз, и все они будут закрыты в правильном порядке. TextFX удобен при создании страницы, но редактирование его позже, если я оберну раздел, скажем, в div, мне нужно будет найти конец и напечатать его. Иногда это может быть проблемой. так что +1 к Dw
— Zeel

Я думаю, что в этом нет проблем, так как вы выберете тег в N ++, он будет выделять теги из открытых и закрытых позиций.
— avirk

Удивительно, но это не работает для меня.
— Лев

5

Да, это можно сделать в Notepad ++, и это очень легко сделать. Следуй этим шагам:

  1. Зайдите в настройки .
  2. Нажмите на вкладку Настройки .
  3. Теперь нажмите на Автозаполнение . Здесь вы увидите два раздела: один - Автозаполнение , а другой - Авто Вставка .
  4. В разделе « Автоматическая вставка » установите флажок « Закрыть теги HTML / XML» .

Еще раз, это не то, что я ищу, я хорошо знаю этот вариант, и он был предложен ранее. Это поведение совсем не то, что я ищу, это объявление закрывающего тега после ввода открытого тега и размещение курсора между ними. Как я уже говорил другим, я не хочу, чтобы это делалось - я хочу, чтобы он автоматически завершал закрывающий тег, как только я начал печатать закрывающий тег. Это функция присутствует в Dreamweaver, введите, </и она будет завершена до первого незамеченного тега.
— Zeel

1

Очень частичный ответ:

Вы не включить в TextFX / Настройки TextFX опцию «Auto близко XHTML / XML».

Перейдите в диалоговое окно « Настройки» -> «Настройки ». Нажмите на вкладку Резервное копирование / Автозаполнение и установите параметр Включить автозаполнение .

Это позволит вам выбрать имя конечного тега из префикса.

Лично я бы предпочел для Notepad ++ ответ @ user79590 вместо моего ответа. Если оба ответа не являются удовлетворительными, я бы искал другой HTML-редактор, так как я не верю, что для Notepad ++ существует какая-либо другая возможность.


Хотя это хорошая функция, мне все еще нужно набрать первую букву имени тега (" </d" для div), а затем выбрать имя из списка. Функциональность Dreamweaver является автоматической.
— Zeel

Я не верю, что это существует точно так же, как в Notepad ++ или любом существующем плагине.
— Harrymc

Тогда возникает вопрос, как бы я это сделал?
— Zeel

1
Перейдите в другой редактор. Исходя из моего личного опыта, я считаю, что Eclipse по умолчанию работает так, как вы хотите. Еще один отличный редактор - IntelliJ IDEA (где это настройка). Оба являются бесплатными и отличными средами разработки, а не просто редакторами. Очень большой список других редакторов можно найти в Best Free HTML Editor .
— Harrymc

Хотя это может быть вариантом, мне нравится АЭС, и я все же хотел бы найти способ сделать это в ней.
— Zeel

1

Возможно, вы могли бы использовать HTMLKit с ярлыком «ALT + END», который завершит ваш текущий тег. Может быть, в N ++ есть что-то подобное ...


Если бы я использовал это, я, конечно, мог бы подделать функциональность DW с AHK, чтобы превратить </в ALT+END. Однако я не знаю ни одного подобного ярлыка на АЭС. Любой, кто действительно может хотеть трубить, потому что они могут просто получить награду.
— Zeel

@zeel Не знаю, заметили ли вы, но в ответе @ user2427906 упоминается Notepad#плагин, который имеет эту функциональность. Итак, используя это в сочетании с Auto HotKey (AHK), у нас все-таки может быть обходной путь ... Я сейчас работаю над сценарием ...
— D.Tate

1

Эта тема может быть довольно старой, но вот ответ. Используйте Менеджер плагинов (Плагины -> Менеджер плагинов) и установите XML Tools.

После установки инструменты XML будут отображаться в пункте меню «Плагины», и в его функциональности есть опция «Автоматически закрывать теги».

Ура!


Нет, то же самое, что TextFX будет делать. И, как я уже заметил, я не ищу этого. Я хочу, чтобы мой закрывающий тег был создан, когда я его запрашиваю (в DW я просто набираю '</') не сразу после завершения первого.
— Зил

1

Если ни один из приведенных выше ответов не делает то, что вы хотите, вы также можете отправить запрос о функции разработчику Notepad ++ здесь:

http://sourceforge.net/p/notepad-plus/feature-requests/

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


1

попробуйте установить:

Блокнот Sharp плагин.

выполните этот шаг:

  • Нажмите Plugins> Notepad#>Close last open tag

  • или нажмите ( Ctrl+ .)

Примечания:
не очень хорошо для вложенных тегов. просто хорошо для вашего последнего открытого тега.

Плагин XML Tools

выполните этот шаг:

  • Нажмите Plugins> XML Tools>Tag auto-close

другой вопрос похож:
Notepad ++ закрытие последнего открытого тега

Notepad ++ XML Auto Indent + закрытие тегов

HTML-тег автозаполнения в Notepad ++?

Блокнот ++ - выделите текст и вставьте в него HTML-тег <tag> </ tag>

Размещение тегов вокруг выделенного текста в блокноте ++

обернуть выделение вокруг ... в блокноте ++


1

Используя плагин Notepad ++ Notepad #, упомянутый в ответе @ user2427906 , а также AutoHotKey , можно закрыть HTML-теги в коде Notepad ++ после ввода текста </, как в Dreamweaver. После правильной настройки вот код AHK, который вы можете использовать, чтобы заставить его работать:

#IfWinActive, ahk_class Notepad++
~<::
Input, UserInput, L1 V
if UserInput=/
    Send, {Backspace 2}^.
return
#IfWinActive

Примечание. Используется команда «WinActive», поэтому она будет работать только в окне Notepad ++. Также обратите внимание, что если вы введете </его, он сначала выдаст 2 команды Backspace, прежде чем пытаться закрыть тег, и эти символы будут удалены независимо от того, закрыт тег или нет.

В сумме: Блокнот # предоставляет вам возможность ввода Ctrl+., чтобы закрыть тег, что приведет нас на полпути. И AutoHotKey затем используется для сопоставления </сCtrl+.

Спасибо @ user2427906, а также этот ответ .

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