Полезные плагины для notepad++.

Одним из самых популярных текстовых редакторов является Notepad++. Софт бесплатный, есть русская локализация. Даже встроенных из коробки возможностей достаточно, чтобы сделать его текстовым редактором по умолчанию и внедрить как просмотрщик в файловые менеджеры. Текстовый редактор разработан под windows платформу, на mac и linux можно найти только аналоги. Скачать последнюю версию notepad++ можно по ссылке.

Но кроме стандартных возможностей notepad++, к нему есть куча дополнений — плагинов, которые позволяют допилить функциональность «под себя».

В обзоре я расскажу о наиболее полезных для меня плагинах.

Общие плагины notepad++.

Plugin Manager

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

Compare

Как ясно из названия, позволяет сравнить содержимое двух файлов. Полезно, если нет времени или желания просматривать изменения в git или svn.

Плагин compare

NppAutoIndient

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

NppAutoIndient

TextFX

Очень мощный инструмент для преобразования текста.

  1. TextFX Characters.

Блок всевозможных операций с кавычками. Все эти действия можно решить и поиском с заменой, но в TextFX это сделать можно более визуально.

  • Convert quotes to » (+)
 "require" long " float 'string' -> "require" long " float "string"
  • Convert quotes to ‘ (+)
int "require" long " float 'string' -> int 'require' long ' float "string"
  • Swap quotes (» -> ‘) (+)
int "require" long " float 'string' -> int 'require' long ' float "string"
  • Drop quotes » & ‘ (+)
int "require" long " float 'string' -> int require long float string
  • Escape » to \» (+)
int "require" long " float 'string' ->  int \"require\" long \" float 'string'
  • Escape ‘ to \’ (+)
int "require" long " float 'string' ->  int "require" long " float \'string\'
  • Escape ‘ to \» (+)
int "require" long " float 'string' -> int "require" long " float \"string\"
  • Escape both «&’ to \»&\’ (+)
int "require" long " float 'string' -> int \"require\" long \" float \'string\'
  • unEscape \» to » (+)
 int \"require\" long \" float 'string' -> int "require" long " float 'string'
  • unEscape \’ to ‘ (+)
int "require" long " float \'string\' -> int "require" long " float 'string'
  • unEscape \» to ‘ (+)
 int \"require\" long \" float 'string' -> int 'require' long ' float 'string'
  • unEscape both \»&\’ to «&’ (+)
int \"require\" long \" float \'string\' -> int "require" long " float 'string'
  • Escape » to «» (+)
int "require" long " float 'string' -> int ""require"" long "" float 'string'
  • Escape ‘ to «» (+)
int "require" long " float 'string' ->  int "require" long " float ""string""
  • unEscape «» to » (+)
 int "require" long " float ""string"" -> int "require" long " float "string"
  • unEscape «» to ‘ (+)
 int "require" long " float ""string"" ->  int "require" long " float 'string'

Все эти функции достаточно легко, да и более полезно для общей практики выполнять командами замены (Ctrl+h)

Работа со строками:

  • UPPER CASE (+)

Пример текст. текст второй -> ПРИМЕР ТЕКСТ. ТЕКСТ ВТОРОЙ 

  • lower case (+)

Пример текст. текст второй -> пример текст. текст второй 

  • Proper Case (+)

Пример текст. текст второй -> Пример Текст. Текст Второй

  • Sentence case (!+)

Пример текст. текст второй -> Пример текст. Текст второй 

  • iNVERT cASE (+)

Пример текст. текст второй -> пРИМЕР ТЕКСТ. ТЕКСТ ВТОРОЙ 

  • Zap all characters to space (?)

Пример текст. текст второй -> 48 пробелов 

  • Zap all non printable characters to # (-)

Пример текст. This is Sparta *-()+= k hh/?- -> ############ ##########. This is Sparta *-()+= k hh/?- 

Все функции, кроме последней, полезные. Последняя, к несчастью, не работает с кириллицей.

  1. TextFX Quick. Поисковые функции

  • Mark Word or Find Reverse

Пример текста Пример пример вот так
Шоколад Печенье ходит само по себе пример кат

->

Пример текста Пример пример вот так
Шоколад Печенье ходит само по себе
пример кат

  • Mark Word or Find Forward

Пример текста Пример пример вот так
Шоколад Печенье ходит само по себе пример кат

->

Пример текста Пример пример вот так
Шоколад Печенье ходит само по себе
 пример кат

  • +Mark Word or Find Case Sensitive

Пример текста Пример пример вот так
Шоколад Печенье ходит само по себе пример кат
 Пример.

->

Пример текста Пример пример вот так
Шоколад Печенье ходит само по себе пример кат Пример
.

  • +Mark Word or Find Whole Words

Пример текста Пример пример вот так
Шоколад Печенье ходит само по себе пример кат
 Пример.

->

Пример текста Пример пример вот так
Шоколад Печенье ходит само по себе 
пример кат Пример.

  • Find matching {([])}

Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}. Функция найдет соответствующую скобку и перейдет к ней. Аналог действия клавиш Ctrl + B.

  • Mark to matching {([])}

Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}. Функция выделит текст между скобками, включая их.

  • Delete Marked {([])} Pair

Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}. Функция удалит пару соответствующих скобок.

  • Mark lines to matching {([])}

Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}. Функция выделит строки, в которых есть текст, заключенный между скобками, включая сами скобки. Функция Mark to matching {([])} выделяет текст между скобками, а эта функция именно строки.

  • Find/Replace

Абсолютно бесполезная функция поиска/замены. Проще/лучше/полезнее использовать встроенные инструменты.

  • Duplicate Line or Block

Аналогично бесполезная функция. Легко заменяется Ctrl+D или Ctrl+C и Ctrl+V

  1. TextFX Edit

  • Fill Down Insert

Fill Down Insert

С помощью клавиши Alt выделите вертикально текст.

  • Fill Down Overwrite

Fill Down Overwrite

  • Insert (Clipboard) through lines

Insert (Clipboard) through lines

  • Reindent C++ code

Функция форматирует отступы в коде C++. То есть расставляет знаки табуляции в блоках, находящихся в фигурных скобках. Возможно и иные места обрабатывает.

  • Leading space to tabs or tabs to spaces

Заменяет пробелы на табы.

  • Leading space to tabs or tabs to spaces

Меняет пробелы на табы, а табы на пробелы.

  • Leading space to tabs or tabs to spaces width=8

Не понял, чем отличается эта функция от вышеописанной.

  • Trim Trailing Spaces

Trim Trailing Spaces

  • Indent text sticky left margin

Бесполезный пункт. Для получения нужного результата достаточно выделить несколько строк и нажать tab.

  • Indent & surround { text lines }

Обрамляет текст в фигурные скобки, а текст сдвигает табуляцией.

Indent & surround { text lines }

  • Delete Blank Lines

Удаляет пустые строки. Если в строке есть табуляция или пробелы, то пустой строкой не является.

  • Delete Surplus Blank Lines

Бесполезная функция замены пустых строк, эффективнее и проще воспользоваться стандартной заменой.

  • Strip unquoted text (C) separate by (Clipboard<=20)

Strip unquoted text (C) separate by (Clipboard<=20)

  • Strip unquoted text (VB) separate by (Clipboard<=20)

Strip unquoted text (C) separate by (Clipboard<=20)

  • Kill unquoted (C) whitespace

Удаляет множественные пробелы, заменяя их одним пробелом. Очень полезная функция.

  • Kill unquoted (VB) whitespace

Та же самая функция, только в синтаксисе VB.

  • Split lines at (clipboard character) or, (C)

• Split lines at (clipboard character) or, (C)

  • Split lines at (clipboard character) or, (VB)

Та же самая функция, только в синтаксисе VB.

  • Line up multiple lines by (,)

Форматирует строки по вертикали по запятым.

Line up multiple lines by (,)

  • Line up multiple lines by (=)

То же самое, только по знаку равенства. Полезная функция.

  • Line up multiple lines by (Clipboard character)

То же самое, только по знаку из буфера обмена. По сути универсальный вариант предыдущих функций.

  • Unwrap Text

Unwrap Text

  • ReWrap Text (Clipboard or 72) width

Разбивает текст по разделителю или по 72 символа (максимум). Странная функция, непонятно, чем может пригодиться.

  • Pad rectangular selection with spaces

 

Вообще не понял, как этим пользоваться, и чем оно могло бы быть полезно.

  1. TextFX Convert

  • Encode URI Component

Аналог php-функции urlencode. Полезная и удобная функция.

  • Encode HTML (&<>»)

Аналог php-функции htmlentities. Полезная и удобная функция.

  • Strip HTML tags table tabs

Аналог php-функции strip_tags. Полезная и удобная функция.

  • Strip HTML tags table nontabs

Аналогично предыдущей функции, только при этом таблицы делает таблицами с разделителем в виде пробелов.

  • Submit to W3C HTML Validator

Пункт не работает.

  • Submit to W3C CSS Validator

Пункт не работает.

  • Convert text to code command («text=\»value\»»);

Полезный пункт. Превращает какой-нибудь текст в строку под тот или иной язык. Данная функция требует выбора синтаксиса языка в документе.

Convert text to code command

  • Convert Decimal Number to Binary

Конвертирует десятичное число в двоичное.

121 -> $1111001

  • Convert Decimal Number to Octal

Конвертирует десятичное число в восьмеричное.

121 -> 0171

  • Convert Decimal

Конвертирует десятичное число в шестнадцатеричное.

121 -> 0x79

  • Convert Hex Number to Decimal

Конвертирует шестнадцатеричное число в десятичное.

0x79 -> 121

  • Convert Octal Number to Decimal

Конвертирует восьмеричное число в десятичное.

0171 -> 121

  • Convert Binary Number to Decimal

Конвертирует двоичное число в десятичное.

1111001 -> 121

  • Convert C-style Number to Decimal

Конвертирует число в форме C стиля в десятичное. Слабо понял, как может помочь эта функция.

  • Convert text to Hex-16

Переводит текст в Hex формат по 16 символов в строке.

Convert text to Hex-16

  • Convert text to Hex-32

Аналогично предыдущей функции переводит текст в Hex формат, но уже по 32 символа в строке.

  • Convert text to Hex-64

Аналогично предыдущей функции переводит текст в Hex формат, но уже по 64 символа в строке.

  • Convert text to Hex-128

Аналогично предыдущей функции переводит текст в Hex формат, но уже по 128 символов в строке.

  • Convert hex byte runs into LE-WORDS

Переводит текст из Hex формата в Little Endian WORD (порядок байтов от младшего к старшему). Это мало полезно в веб-разработке.

  • Convert hex byte runs into LE-DWORDS

Переводит текст из Hex формата в Little Endian DWORD (порядок байтов от младшего к старшему). Это мало полезно в веб-разработке.

  • Convert LE-words to hex byte runs

Переводит текст из Little Endian DWORDS формата в Hex.

  • Convert LE-words to hex byte runs

Переводит текст из Little Endian DWORDS формата в Hex.

  • Convert Hex to text

Переводит текст из Hex формата в обычный текст.

  • ROT13 Text

Кодирует и раскодирует латинский текст по шифру ROT13.

zl anzr vf -> my name is

  • Convert EBCDIC to ASCII

Функция конвертирует EBCDIC текст в текст в кодировке ASCII.

  • Convert ASCII to EBCDIC

Обратная предыдущей функция.

  • Convert KOI8_R to CP1251

Конвертирует текст из кодировки KOI8_R в CP1251.

  • Convert CP1251 to KOI8_R

Конвертирует текст из кодировки CP1251 в KOI8_R.

  1. TextFX Insert

  • Current Full Path

Функция не работает. Если нужен адрес файла, надо нажать на вкладку с файлом правой кнопкой и выбрать пункт «Полный путь к файлу в буфер» и ctrl+v.

  • Current File Name

Функция не работает. Если нужен адрес файла, надо нажать на вкладку с файлом правой кнопкой и выбрать пункт «Имя файла в буфер» и ctrl+v.

  • Current Directory

Функция не работает. Если нужен адрес файла, надо нажать на вкладку с файлом правой кнопкой и выбрать пункт «Путь к директории файла в буфер» и ctrl+v.

  • Date & Time — short format

Вставляет дату и время в коротком формате. Удобная функция.

  • Date & Time — long format

Вставляет дату и время в полном формате, но работает нормально только для документов в кодировке UTF-8.

  1. TextFX HTML Tidy

Пункт не работает.

  1. TextFX Tools

  • Sort lines case sensitive (at column)

Сортировка строк с учетом регистра.

Sort lines case insensitive

  • Sort lines case insensitive (at column)

Сортировка строк без учета регистра. Работает корректно только для латиницы. Для кириллицы сортировка будет производиться, но с учетом регистра.

  • +Sort ascending

При включенной галочке сортировка в предыдущий двух функциях будет вестись по возрастанию. Без ее включения сортировка будет вестись по убыванию.

  • +Sort outputs only UNIQUE (at column) lines

При включенной галочке при сортировке будут удалены копии строк.

  • Insert Ascii Chart or Character

Если выделить любой символ, функция покажет его ASCII код и другие характеристики. Если не выделять – вставится вся ASCII таблица.

  • Insert Ruler

Вставляет линейку. Как это использовать на практике – не представляю.

  • Insert Line Numbers

Вставляет номера строк для выделенных строк.

  • Delete Line Numbers or First Word

Удаляет первое слово в выделенных строках. Полезная функция.

  • Clean eMail > Quoting

Очищает текст e-mail письма от знаков цитирования >.

  • UUdecode

Декодирует текст в виде UUE.

#0V%T -> Cat

  • Base64 Decode

Декодирует текст в виде Base64.

dGVzdA== -> test

  • Word Count

Показывает число слов в тексте и другие характеристики.

  • Add up numbers

Суммирует выделенные цифры.

  • Empty Undo Buffer (be sure to save)

Очищает буфер изменений.

  1. TextFX Viz

Функционал предназначен для работы со скрытыми строками. Можно выделить несколько строк и нажать alt+h. Глобально, не думаю, что есть реальные сценарии работы, при которых все нижеописанные функции могут быть полезны.

  • Show Between-Selected or All-Reset Lines

Разворачивает в выделенном фрагменте все свернутые строки. Если ничего не выделено, то развернет все строки.

  • Hide Between-Selected or All-Reset Lines

Функция работает плохо и глючно. Не рекомендую использовать.

  • Invert Visibility Between-Selected or All-Reset Lines

Показывает скрытые строки в выделенном фрагменте.

  • Hide Lines with (Clipboard) text

Функция работает плохо и глючно. Не рекомендую использовать.

  • Hide Lines without (Clipboard) text

Функция работает плохо и глючно. Не рекомендую использовать.

  • Show Lines with (Clipboard) text

Функция показывает те строки, в которых есть текст в буфере обмена.

  • Show Lines without (Clipboard) text

Функция показывает те строки, в которых нет текста из буфера обмена.

  • Show More Lines around my position

Функция работает плохо и глючно. Не рекомендую использовать.

  • Hide/Show sequence all steps

Функция работает плохо и глючно. Не рекомендую использовать.

  • Hide/Show sequence singlestep start

Функция работает плохо и глючно. Не рекомендую использовать.

  • Hide/Show sequence singlestep next

Функция работает плохо и глючно. Не рекомендую использовать.

  • Hide/Show sequence singlestep rest

Функция работает плохо и глючно. Не рекомендую использовать.

  • Select at Hide/Show sequence

Функция работает плохо и глючно. Не рекомендую использовать.

  • Insert Show/Hide Sequence

Функция работает плохо и глючно. Не рекомендую использовать.

  • Copy Visible Selection

Копирует только видимый текст, но без переносов строк.

  • Cut Visible Selection

Вырезает только видимый текст, но без переносов строк.

  • Delete Visible Selection

Удаляет только видимый текст.

  • Copy Invisible Selection

Копирует только невидимый текст, но без переносов строк.

  • Cut Invisible Selection

Вырезает только невидимый текст, но без переносов строк.

  • Delete Invisible Selection

Удаляет только невидимый текст.

  • Copy Entire Selection (no append)

Копирует текст (и видимый и невидимый), но без переноса строк.

  • Cut Entire Selection (no append)

Вырезает текст (и видимый и невидимый), но без переноса строк.

  • Copy & Append Entire Selection

Копирует текст (и видимый и невидимый), но без переноса строк. Добавляет все к буферу обмена.

  • Cut & Append Entire Selection

Вырезает текст (и видимый и невидимый), но без переноса строк. Добавляет все к буферу обмена.

  • Paste as UTF-8/ANSI

Вставляет текст, преобразуя попутно кодировку.

  • Paste

Вставляет текст. Походу просто вставляет текст.

  1. TextFX Viz Settings

Настройки TextFX Viz.

  • +Viz Text Search Case Sensitive

Включить регистр зависимый вариант поиска в вышеописанных функциях.

  • +Viz Text Search Whole Words

Включить поиск по полным словам.

  • +Viz Text Search Regex

Включает поиск по регулярным выражениям.

  • +Viz Copy-Cut Appends to clipboard

При включенной этой галочке все функции раздела TexFX Viz при копировании, вырезании элемента в буфер обмена будут копировать текст, не удаляя его, а добавляя его к тому, что уже было в буфере. Как в функции Cut & Append Entire Selection.

  • +Viz Copy-Cut always converts to CRLF

Конвертирует строки в CRLF при копировании и вырезании.

  • +Viz Copy-Cut replace [NUL] with space

При копировании в функциях TextFX Viz заменяет [NULL] на пробел.

  • +Viz Copy-Cut also in UTF-8

Копирование и вставка происходит только в формате UTF-8.

  • +Viz Paste retains position

Возвращает курсор при вставке обратно в то место, где был курсор до вставки.

  • +Viz Paste/Append binary

Добавляет в буфер данные в бинарном формате.

  • +Viz Paste converts EOL to editor

При включенной галочке должна конвертировать символ EOL.

  • +Viz Capture Keyboard Ctrl-C,X,V

При включенной галочке должна перехватывать клавиши Ctrl-C,X,V и навязывать свои функции. Крайне не рекомендую использовать.

  1. TextFX Settings

Общие настройки плагина TextFX

  • +Cancel Overwrite Mode moving from current line

При нажатии на кнопку Insert включается режим Overwrite. Это значит, что если нажать на клавишу, то вводимый текст будет заменять текущий. Если эта стандартная функция бесит – можно включить эту опцию, и режим работы будет стандартным.

  • +Autoclose XHTML/XML

Закрывает html теги. Если ввести <p и > <p></p>. Аналогичная настройка есть и в редакторе. Использовать обе настройки сразу нельзя!

  • +Autoclose {([Brace

Включает автозакрытие скобок. Аналогичная настройка есть и в редакторе. Использовать обе настройки сразу нельзя!

  • +Autoconvert typed leading spaces to tabs

Включает автоматическое превращение пробелов в знаки табуляции в начале строк, когда их число равно 4. Очень полезная функция.

  • +Autoconvert typed HTML/XML to &entities;

Довольно странный функционал. При включенной опции нажатие кнопки Enter приводит к появлению <br/>.

  • +Disable Subclassing & advanced features

Я не подключил Tidy и настройка по сути не работает.

  • +Move quick menus out of ‘Plugins’ menu

Выносит в меню настройки TextFX.

  • +Move quick menus out of ‘Plugins’ menu

Ctrl+D дублирует строку, на которую установлен курсор. Если выделена подстрока, дублирует подстроку.