Для Notepad++ поперевыбирал кучу плагинов в надежде получить тривиальную штуку - текущее выделение обрамить HTML-тегом, который вначале будет запрошен.
НИГДЕ нет!
В результате написал код для плагина Python Script:
Делает следующее:
1. Спрашивает у пользователя тег с аттрибутами.
2. Обрамляет текущее выделение текста запрошенным тегом.
3. Понимает отсутствие выделения текста.
4. Понимает теги, которые не требуется закрывать.
Можно подвесить на клавишу, я подвесил на Alt+X через Shortcut Mapper, или на контекстное меню через редактирование contextMenu.xml.
НИГДЕ нет!
В результате написал код для плагина Python Script:
def openingTag(tagStr): return "<" + tagStr + ">" def closingTag(tagStr): pureTag = tagStr.partition(" ")[0] unclosedTags = ["br", "input", "img", "link", "hr", "area", "frame", "wbr", "meta", "base", "col", "isindex", "param", "basefont"] if pureTag in unclosedTags: return "" return "</" + pureTag + ">" tagStr = notepad.prompt("Tag with attributes:", "Insert HTML/XML tag") if not tagStr is None: editor.beginUndoAction() selStr = editor.getSelText() editor.replaceSel(openingTag(tagStr) + selStr + closingTag(tagStr)) editor.endUndoAction()
Делает следующее:
1. Спрашивает у пользователя тег с аттрибутами.
2. Обрамляет текущее выделение текста запрошенным тегом.
3. Понимает отсутствие выделения текста.
4. Понимает теги, которые не требуется закрывать.
Можно подвесить на клавишу, я подвесил на Alt+X через Shortcut Mapper, или на контекстное меню через редактирование contextMenu.xml.
Огромное спасибо!! Я уж было отчаялся найти подобную штуку. Ты мне очень помог! Повесил на хоткей и гори в аду этот дримвьювер. ))
ОтветитьУдалить