­

Harrix Блог

  • Списки статей
    • Все статьи
    • IT
    • Qt
    • C++
    • Сложение двух чисел
    • Web программированиe
    • FAQ
    • Latex
    • Установка программ
    • Мифы
    • Видео
    • Про фото
  • Проекты
  • Harrix.org
  • RSS
  • Контакты

Обзор плагина TextFX в Notepad++

Раньше этот плагин был предустановлен, но с переходом на версию Unicode плагин ушел в состав устанавливаемых пользователем.

30.01.2013 62 комментариев 102 410 просмотров

Раньше этот плагин был предустановлен, но с переходом на версию Unicode плагин ушел в состав устанавливаемых пользователем. Обычно люди редко изучают все многочисленные возможности плагина. Поэтому прошу посмотреть на эти функции – многие из них Вам очень пригодятся.

Исследования проводились в Windows 7 x64 в Notepad++ v.6.2.3 (UNICODE).

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

Содержание

  • Установка
  • TextFX Characters
  • TextFX Quick
  • TextFX Edit
  • TextFX Convert
  • TextFX Insert
  • TextFX HTML Tidy
  • TextFX Tools

  • TextFX Viz
  • TextFX Viz Settings
  • TextFX Settings

Установка

Идем Плагины → Plugin Manager → Show Plagin Manager. Ищем там плагин TextFX Charaters и его устанавливаем.

textfx

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

TextFX Characters

menu1

Convert quotes to " Заменяет кавычки в тексте на двойные. Типографские кавычки не трогает. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int “include” double ” float “const”

Convert quotes to ' Заменяет кавычки в тексте на одинарные. Типографские кавычки не трогает. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int ‘include’ double ‘ float ‘const’

Swap quotes (" <-> ') Заменяет двойные кавычки в тексте на одинарные, а двойные на одинарные. Типографские кавычки не трогает. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int ‘include’ double ‘ float “const”

Drop quotes " & ' Удаляет двойные и одинарные кавычки. Типографские кавычки не трогает. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int include double float const

Escape " to \"

Пункт хороший

Экранирует двойные кавычки. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int \”include\” double \” float ‘const’

Escape ' to \'

Пункт хороший

Экранирует одинарные кавычки. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int “include” double ” float \’const\’

Escape ' to \" Экранирует одинарные кавычки в двойные. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int “include” double ” float \”const\”

Escape both "&' to \"&\' Экранирует одинарные и двойные кавычки. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int \”include\” double \” float \’const\’

unEscape \" to "

Пункт хороший

Разэкранирует двойные кавычки. 

Текст:
«Пример текста» int \”include\” double \” float ‘const’
заменяется на:
«Пример текста» int “include” double ” float ‘const’

unEscape \' to '

Пункт хороший

Разэкранирует одинарные кавычки. 

Текст:
«Пример текста» int “include” double ” float \’const\’
заменяется на:
«Пример текста» int “include” double ” float ‘const’

unEscape \" to ' Разэкранирует двойные кавычки в одинарные. 

Текст:
«Пример текста» int \”include\” double \” float ‘const’
заменяется на:
«Пример текста» int ‘include’ double ‘ float ‘const’

unEscape both \"&\' to "&' Разэкранирует двойные и одинарные кавычки. 

Текст:
«Пример текста» int \”include\” double \” float \’const\’
заменяется на:
«Пример текста» int “include” double ” float ‘const’

Escape " to "" Двойные кавычки превращает в двойные двойные кавычки. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int “”include”” double “” float ‘const’

Escape ' to "" Одинарные кавычки превращает в двойные двойные кавычки. 

Текст:
«Пример текста» int “include” double ” float ‘const’
заменяется на:
«Пример текста» int “include” double ” float “”const””

unEscape "" to " Двойные двойные кавычки превращает в обычные двойные. 

Текст:
«Пример текста» int “include” double ” float “”const””
заменяется на:
«Пример текста» int “include” double ” float “const”

unEscape "" to ' Двойные двойные кавычки превращает в обычные одинарные. 

Текст:
«Пример текста» int “include” double ” float “”const””
заменяется на:
«Пример текста» int “include” double ” float ‘const’

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/?-

TextFX Quick

Это поисковые функции.

menu2

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.

Если в тексте выделить первую фигурную скобку и вызвать команду:

1
2
3
4
5
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

то выделится вторая скобка:

1
2
3
4
5
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

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

Если в тексте выделить первую фигурную скобку (или вторую) и вызвать команду:

1
2
3
4
5
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

то выделится весь текст внутри них:

1
2
3
4
5
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

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

Если в тексте выделить первую фигурную скобку (или вторую) и вызвать команду:

1
2
3
4
5
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

то выделится весь текст внутри них:

1
2
3
4
5
double HML_RandomNumber(void)
 
return (double)rand()/(RAND_MAX+1);
 
//---------------------------------------------------------------------------

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

Если в тексте выделить первую фигурную скобку (или вторую) и вызвать команду:

1
2
3
4
5
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

то выделится весь текст внутри них:

1
2
3
4
5
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

Find/Replace

Пункт плохой

Это функция поиска и замены. Честно, лучше использовать встроенные функции, чем этот инструмент.

find

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

Duplicate Line or Block Поставьте курсор в нужной строке или выделите нужный текст. Если вы поставили просто курсор, то продублируется строка и вставится после текущей. Если выделите текст, то продублируется данный текст.

Если щелкнуть в тексте на третей строке и вызвать функцию:

1
2
3
4
5
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

то строка продублируется:

1
2
3
4
5
6
double HML_RandomNumber(void)
{
return (double)rand()/(RAND_MAX+1);
return (double)rand()/(RAND_MAX+1);
}
//---------------------------------------------------------------------------

TextFX Edit

Fill Down Insert Данная функция вставляет содержимое выделения первой строки при вертикальном выделении и вставляет в каждую строку, сдвигая элементы.

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

fill
При вызове функции получим:

fill2

Fill Down Overwrite Данная функция вставляет содержимое выделения первой строки при вертикальном выделении и вставляет в каждую строку, замещая элементы.

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

fill
При вызове функции получим:

fill2

Insert (Clipboard) through lines

Пункт хороший

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

Выделите текст, а в буфере обмена пусть находится строчка double max.

th
При вызове функции получим:

th2

Reindent C++ code

Пункт хороший

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

Выделите текст, содержащий код C++.

rec
При вызове функции получим:

rec2

Leading space to tabs or tabs to spaces

Пункт хороший

Насколько я понял, функция превращает пробелы в табуляцию нужных размеров. Превратить табуляцию в пробелы не получилось.

lead
При вызове функции получим:

lead2

Leading space to tabs or tabs to spaces width=8

Пункт плохой

Чем отличается эта функция от предыдущей, я на практике не смог понять. Вроде делает всё то же самое.
Trim Trailing Spaces

Пункт хороший

Удаляет в конце строки пробелы.

trim
При вызове функции получим:

trim2

Indent text sticky left margin

Пункт плохой

Добавляет слева табуляцию ко всем выделенным строкам. Но как показала практика, некоторые строки остаются без изменения. Причины не понял.

indent
При вызове функции получим:

indent2

Indent & surround { text lines }

Пункт хороший

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

Если выделить текст вот так (только две строки):
textlines
При вызове функции получим:

textlines2

Если выделить текст вот так (с третьей пустой строкой):
textlines3
При вызове функции получим:

textlines4

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

Выделим текст:
blank
При вызове функции получим:

blank2

Delete Surplus Blank Lines

Пункт плохой

Функция должна удалять повторяющиеся пустые строки. Но если есть пустые строки с табуляциями, то может удалить знак абзаца. Так что будьте осторожнее. Лучше воспользоваться функцией заменой Notepad++.

Выделим текст:
blank3
При вызове функции получим:

blank4

Strip unquoted text (C) separate by (Clipboard<=20) У Вас есть некий код на языке C++. В нем встречаются строки обрамленные в двойные кавычки. Нужно их достать из данного кода. В качестве разделителя строк будет использоваться то, что в буфере обмена, если в буфере обмена меньше или равно 20 символов. Иначе будет использоваться запятая.

Выделим текст, а в буфер обмена занесем знак +:
stringscut
При вызове функции получим:

stringscut2

Strip unquoted text (VB) separate by (Clipboard<=20) По сути должна быть такой же функцией, что и предыдущая, но со спецификой построения строк в Visual Basic. Что там за особенности я не знаю. И надеюсь, что никогда не узнаю)
Kill unquoted (C) whitespace

Пункт хороший

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

Выделим текст:
kill3
При вызове функции получим:

kill4

Kill unquoted (VB) whitespace По сути должна быть такой же функцией, что и предыдущая, но со спецификой построения строк в Visual Basic. Что там за особенности я не знаю.
Split lines at (clipboard character) or, (C)

Пункт хороший

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

Выделим текст, а в буфер обмена или ничего не запишем, или запятую:
split
При вызове функции получим:

split2

Split lines at (clipboard character) or, (VB) По сути должна быть такой же функцией, что и предыдущая, но со спецификой построения строк в Visual Basic. Что там за особенности я не знаю.
Line up multiple lines by (,) При выделении нескольких строк, в которых есть знаки ,, функция подстраивает строки так, чтобы знаки , были на одном уровне. Делает это с помощью пробелов. Недостаток. Если перед , Вам нужен пробел, то его у Вас не будет.

Выделим текст:
lineup
При вызове функции получим:

lineup2

Line up multiple lines by (=) Аналогично предыдущей функции. Только в качестве разделителя используется знак =.

Выделим текст:
lineup3
При вызове функции получим:

lineup4

Line up multiple lines by (Clipboard character) Аналогично предыдущей функции. Только в качестве разделителя используется знак знак из буфера обмена.
Unwrap Text

Пункт хороший

Удаляет знак перевода строки. То есть объединяет строки в одну. В качестве разделителя используется пробел. пустые строки не объединяются.

Выделим текст:
unwrap
При вызове функции получим:

unwrap2

ReWrap Text (Clipboard or 72) width

Пункт плохой

По сути функция должна переразбивать текст на строки согласно длине в буфере обмена или по 72 символа. Но управлять я этой функцией так и не смог. Разбивает по своему усмотрению и всегда одинаково.

Выделим текст:
rewrap
При вызове функции получим:

rewrap2

DmFedorov: ReWrap Text to (Clipboard or 72) width - тут не 72 символа.

Я как раз перевожу этот плагин с жестких строк и у меня задача очень кратко (не шире чем исходный текст) сформулировать.

Получилось так: НЕ пустые строки преобразовать в ширину72 пословно. Т.е. ширина 72 это максимум.

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

Pad rectangular selection with spaces

Пункт плохой

DmFedorov:
Смысл тут простой: Подбить прямоугольник выделения до максимальной длины (в выделении).

Причем длина - это вовсе не число символов. Это то что ты видишь в строке состояния Npp как length или в окне Summary.

Т.е. это типа длина виртуальная символов но не совсем так. Короче это толком нигде не объяснено.
Но если хочешь проверить после того как будет подбито для каждого подбитого куска Summary покажет тебе одинаковую длину (если ты этот кусок выделишь). Хотя на глаз длина этого куска после подбития пробелами будет наоборот не одинаковая.

TextFX Convert

menu4

Encode URI Component

Пункт плохой

Фунция переводит строку в формат URI. Но где и как это использовать? Тот же адрес сайта становится непереваримым для браузеров, так как переделывает все нелатинские символы, в том числе и слэши.

Выделим текст:
uri
При вызове функции получим:

uri2

Encode HTML (&<>") Функция переводит символы &<>" в их HTML аналоги. Хорошая функция, когда Вам нужно в HTML тексте написать код HTML так, чтобы он отображался как текст, а не преобразовывался как код. Сложно как-то описал.

Выделим текст:
encode
При вызове функции получим:

encode2

Strip HTML tags table tabs

Пункт хороший

Очень полезная функция. Удаляет из HTML кода все тэги, оставляю только текст. При этом таблицы делает таблицами с разделителем в виде табуляции.

Выделим текст:
striphtml
При вызове функции получим:

striphtml2

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

Выделим текст:
striphtml
При вызове функции получим:

striphtml3

Submit to W3C HTML Validator

Пункт плохой

Функция не работает. Должна отправлять файл или выделенный фрагмент на сайт W3C и проверять HTML код на валидность.
Submit to W3C CSS Validator

Пункт плохой

Функция не работает. Должна отправлять файл или выделенный фрагмент на сайт W3C и проверять CSS код на валидность.
Convert text to code command ("text=\"value\"");

Пункт хороший

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

converttext

Выделим текст в документе C++:
converttext2
При вызове функции получим:

converttext3

Выделим текст в документе PHP:
converttext4
При вызове функции получим:

converttext5

Convert Decimal Number to Binary Конвертирует десятичное число в двоичное.

Выделим текст:
dectobin
При вызове функции получим:

dectobin2

Convert Decimal Number to Octal Конвертирует десятичное число в восьмеричное.

Выделим текст:
dectooct
При вызове функции получим:

dectooct2

Convert Decimal Number to Hex Конвертирует десятичное число в шестнадцатеричное.

Выделим текст:
dectohex
При вызове функции получим:
dectohex3

Convert Hex Number to Decimal Конвертирует шестнадцатеричное число в десятичное.

Выделим текст:
hextodec
При вызове функции получим:
hextodec2

Convert Octal Number to Decimal Конвертирует восьмеричное число в десятичное.

Выделим текст:
octtodec
При вызове функции получим:
octtodec2

Convert Binary Number to Decimal Конвертирует двоичное число в десятичное.

Выделим текст:
bintodec
При вызове функции получим:
bintodec2

Convert C-style Number to Decimal

Пункт плохой

Конвертирует число в форме C стиля в десятичное. Что за стиль C? Язык C++ или просто C? Вроде числа формата -10f переводит (удаляет идентификатор типа float), но с другими числами не справляется, например, с 1.5e-10. В общем оно вам надо связываться с сомнительной функцией?
Convert text to Hex-16 Переводит текст в Hex формат по 16 символов в строке. По идеи лучше пользоваться соответствующими редакторами. Но вдруг потребуется?

Выделим текст:
hex
При вызове функции получим:
hex2

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 (порядок байтов от младшего к старшему). Честно, не понимаю, что конкретно это и где это может использоваться.

Upd. «Это больше полезно для сетевого кода, там бывает используют разные порядки байт. Мне лично попадалось такое при исследовании сетевого кода двух разных игр.» (http://habrahabr.ru/users/Fedcomp/)

Выделим текст:
leword
При вызове функции получим:
leword2

Convert hex byte runs into LE-DWORDS Переводит текст из Hex формата в Little Endian DWORDS (порядок байтов от младшего к старшему). Честно, не понимаю, что конкретно это и где это может использоваться. Тем более не понимаю, чем отличается от предыдущей функции.

Convert LE-words to hex byte runs
Еще одна мне непонятная функция. Переводит текст из Little Endian DWORDS формата в Hex. Честно, не понимаю, что конкретно это и где это может использоваться.
Convert Hex to text Переводит текст из Hex формата в обычный текст.

Выделим текст:
hextotext
При вызове функции получим:
hextotext2

ROT13 Text

Пункт хороший

Отличная функция! Кодирует и раскодирует латинский текст по шифру ROT13, который довольно популярен на форумах и так далее. Подробнее читать в статье http://ru.wikipedia.org/wiki/ROT13.

Выделим текст:
rot13
При вызове функции получим:
rot132

Convert EBCDIC to ASCII

Пункт плохой

Функция конвертирует EBCDIC текст в текст в кодировке ASCII. Заставить работать не получилось.
Convert ASCII to EBCDIC

Пункт плохой

Функция конвертирует ASCII текст в текст EBCDIC . Заставить работать не получилось.
Convert KOI8_R to CP1251

Пункт плохой

Не ожидал увидеть функцию в зарубежной библиотеке для русских пользователей. Конвертирует текст из кодировки KOI8_R в CP1251. Но опять таки я не смог применить эту функцию. Лучше пользоваться стандартными средставами Notepad++ для перекодирования текстов.
Convert CP1251 to KOI8_R

Пункт плохой

Конвертирует текст из кодировки CP1251 в KOI8_R. Но опять таки я не смог применить эту функцию. Лучше пользоваться стандартными средставами Notepad++ для перекодирования текстов.

TextFX Insert

menu5

Current Full Path

Пункт плохой

Должна копировать полный путь к файлу и вставлять в документ. Но почему то копирует только первую букву из всего полного пути, то есть букву диска, на котором файле располагается. Например, C. В общем, используйте стандартную функцию в Notepad++ (правый клик по вкладке с файлом).
Current File Name

Пункт плохой

Должна копировать имя файла и вставлять в документ. Но почему то копирует только первую букву из всего имени. Например, n. В общем, используйте стандартную функцию в Notepad++ (правый клик по вкладке с файлом).
Current Directory

Пункт плохой

Должна копировать имя полного пути, в котором находится файл, и вставлять в документ. Но почему то копирует только первую букву из всего имени. Например, C. В общем, используйте стандартную функцию в Notepad++ (правый клик по вкладке с файлом).
Date & Time - short format

Пункт хороший

Вставляет в текст дату в коротком формате:
date
Date & Time - long format

Пункт плохой

Вставляет в текст дату в полном формате.
date3

Но документ должен быть в кодировке ASCII, а не в UTF-8, что есть плохо. В UTF-8 вставляет крякозабры:
date2

TextFX HTML Tidy

menu6

В общем, я не смог завести эти функции все. Они требуют установки HTML Tidy. Его можно найти на сайте http://www.paehl.com/open_source/?HTML_Tidy_for_Windows. Но я не смог установить и воспроизвести нужные действия шаманского типа.

Пункт плохой

About Tidy
Visit HTML Tidy SourceForge website
Download libTidy.DLL from SourceForge
Reload libTidy.DLL
Refresh Menu from TidyCFG.INI
Tidy (most recent HTMLTIDY.CFG)

TextFX Tools

menu7

Sort lines case sensitive (at column)

Пункт хороший

Это самая любимая моя функция. Благодаря ей и пользуюсь этим плагином. Сортировка строк с учетом регистра.

Выделим текст:
sort
При вызове функции получим:
sort2

Sort lines case insensitive (at column) Сортировка строк без учета регистра. Но к сожалению, только для английского языка. Для русского языка сортировка будет производиться, но с учетом регистра.

Выделим текст:
sort3
При вызове функции получим:
sort4

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

Выделим текст:
sort3
При вызове функции Sort lines case sensitive (at column) при выключенной галочке получим:
sort5

+Sort outputs only UNIQUE (at column) lines При включенной галочке при сортировке будут удалены копии строк. То есть останутся только уникальные строки.

Выделим текст:
sort6
При вызове функции Sort lines case sensitive (at column) при включенной галочке получим:
sort7

Insert Ascii Chart or Character Для символа показывает его ASCII код и другие характеристики.

Выделим текст:
ascii
При вызове функции получим:
ascii2

Если же не выделять символы, то функция выдаст весь список кодов:
ascii3

Insert Ruler

Пункт хороший

Вставляет интересную и красивую линейку. Просто прикольная штука)

При вызове функции получим:
ruler2
ruler

Insert Line Numbers Вставляет номера строк.

Выделим текст:
number
При вызове функции получим:
number2

Delete Line Numbers or First Word

Пункт хороший

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

Выделим текст:
deletefirst
При вызове функции получим:
deletefirst2

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

Выделим текст:
email
При вызове функции получим:
email2

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

Выделим текст:
uue
При вызове функции получим:
uue2

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

Выделим текст:
base64
При вызове функции получим:
base642

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

Выделим текст:
wordcount
При вызове функции получим:
wordcount2

Add up numbers

Пункт плохой

Должна суммировать числа, но делает это часто неправильно.

Выделим текст:
addup
При вызове функции получим:
addup2

Empty Undo Buffer (be sure to save) Очищает буфер изменений. То есть после применения этой функции Вы не сможете отменить изменения в файле, что Вы сделали во время редактирования. Полезна тем, кто хочет стереть какие-то свои провинности)

TextFX Viz

menu8

Данные инструменты используются для работы со спрятанными строками (Вид?Спрятать выбранные строки или Alt + H). Например, у нас есть текст:

viz1

Выделяем вторую строку и нажимаем Alt + H. Строка свернется:

viz2

Без наличия свернутых строк функции могут вызвать некорректные результаты.

И вообще, не рекомендую использовать функции данного раздела.

Пункт плохой

Show Between-Selected or All-Reset Lines Разворачивает в выделенном фрагменте все свернутые строки. Если ничего не выделено, то развернет все строки.

Пусть есть текст:
viz3
Свернем в двух местах текст, а потом выделим текст с первым свернутым местом:
viz4
При вызове функции первое свернутое место развернется:
viz5

Hide Between-Selected or All-Reset Lines

Пункт плохой

По аналогии с предыдущей функцией должен сворачивать выделенные строки. Но сворачивает не то, что выделяется, а то, что идет после.

Пусть есть текст:
viz6

При вызове функции строки неправильно скрываются. При этом не появляется отметок, что строки скрылись. Создается ощущение, что строки просто удалились. При переходе в другой файл и возвращении обратно все строки автоматически появляются. Оно вам надо?
viz7

Invert Visibility Between-Selected or All-Reset Lines

Пункт плохой

Должна инвертировать свертывание строк. Те, что были скрыты, должны стать видимыми, а те, что были видимы, должны быть скрыты.

Пусть есть текст:
viz8
Скроем текст:
viz9
Выделим текст:
viz10
Применим функцию:
viz11
И получаем фигню, которая при смене вкладок исчезает. Возможно так и должно быть, но без видимых отметок функция бесполезна.

Hide Lines with (Clipboard) text

Пункт плохой

Функция сворачивает те строки, в которых есть текст, что есть в буфере обмена. Функция работает, но опять таки без опознавательных знаков, и, кажется, что строки удаляются. А при смене вкладок всё возвращается.

Пусть есть текст:
viz12
Скопируем в буфер обмена текст 33.
Выделим текст весь текст и применим функцию:
viz13

Hide Lines without (Clipboard) text

Пункт плохой

Функция сворачивает те строки, в которых нет текста, что есть в буфере обмена. Функция работает, но опять таки без опознавательных знаков, и, кажется, что строки удаляются. А при смене вкладок всё возвращается. При этом первые строки текста, что должен скрываться остается.

Пусть есть текст:
viz12
Скопируем в буфер обмена текст 33.
Выделим текст весь текст и применим функцию:
viz14

Show Lines with (Clipboard) text

Пункт плохой

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

Пусть есть текст:
viz14
Скопируем в буфер обмена текст 33.
Скроем строки:
viz16
Выделим текст весь текст и применим функцию:
viz17

Show Lines without (Clipboard) text

Пункт плохой

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

Пусть есть текст:
viz14
Скопируем в буфер обмена текст 33.
Скроем строки:
viz16
Выделим текст весь текст и применим функцию:
viz18

Show More Lines around my position

Пункт плохой

Функция постепенно раскрывает строки из свернутого варианта.

Пусть есть текст:
viz19
Скроем строки:
viz20
Применим функцию и увидим текст:
viz21
По данному тексту с зажатой клавишей Caps Lock щелкаем по скрытому тексту и поочередно строки начнут появляться. Вроде и без этой функции действие по клавише Caps Lock работает.

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

Пункт плохой

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

Если у Вас есть скрытый текст, и вы скопируете часть текста, что содержит этот текст:
viz23

И потом вставите скопированный текст, то увидите, что скопировался и скрытый текст:
viz24

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

Cut Visible Selection

Пункт плохой

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

Если у Вас есть скрытый текст:
viz23

То после применения функции Вы получите:
viz27

viz26

Если вставите текст, то увидите, что скопировался только видимый текст, но без перевода строк:
viz25

Delete Visible Selection Удаляет только видимый текст. Вторая работающая функция в разделе.

Если у Вас есть скрытый текст:
viz23

То после применения функции Вы получите:
viz27

viz26

Copy Invisible Selection

Пункт плохой

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

Если у Вас есть скрытый текст, и вы скопируете часть текста, что содержит этот текст:
viz23

И потом вставите скопированный текст, то увидите, что скопировался и видимый текст:
viz24

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

Cut Invisible Selection

Пункт плохой

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

Если у Вас есть скрытый текст:
viz23

То после применения функции Вы получите:
viz29

viz30

Если вставите текст, то увидите, что скопировался только невидимый текст, но без перевода строк:
viz28

Delete Invisible Selection Удаляет только невидимый текст. Третья работающая функция в разделе.

Если у Вас есть скрытый текст:
viz23

То после применения функции Вы получите:
viz29

viz30

Copy Entire Selection (no append)

Пункт плохой

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

У вас есть текст:
viz23

Скопируете через эту функцию плагина и вставите текст, то увидите, что скопировался видимый и невидимый текст, но без перевода строк:
viz31

Cut Entire Selection (no append)

Пункт плохой

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

У вас есть текст:
viz23

После функции получите:
viz32

viz33

Скопируете через эту функцию плагина и вставите текст, то увидите, что скопировался видимый и невидимый текст, но без перевода строк:
viz31

Copy & Append Entire Selection

Пункт плохой

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

У вас есть текст, а в буфере обмена текст Example text:
viz23

Скопируете через эту функцию плагина и вставите текст, то увидите, что скопировался видимый и невидимый текст, но без перевода строк:
viz34

Cut & Append Entire Selection

Пункт плохой

Вырезает невидимый и видимый текст. При этом не замещает то, что есть в буфере обмена, а добавляет к нему. Но копирует без переносов строк. Ну, кому это надо, если можно и так скопировать?

У вас есть текст, а в буфере обмена текст Example text:
viz23

После функции получите:
viz32

viz33

Скопируете через эту функцию плагина и вставите текст, то увидите, что скопировался видимый и невидимый текст, но без перевода строк:
viz34

Paste as UTF-8/ANSI

Пункт плохой

Вставляет текст. Наверно в формате UTF-8 или ANSI в зависимости от ситуации. Особо не разбирался. Главное, что переносы строк не вставляет.
Paste

Пункт плохой

Вставляет текст. Чем отличается от предыдущей функции не знаю.

TextFX Viz Settings

menu9

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

+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

Пункт плохой

Не понял, что делает эта галочка. Типа должа происходит конвертация символа перевода строки. Надеялся, что после нее копирование будет с переводом строки, но облом.
+Viz Copy-Cut replace [NUL] with space При включенной настройке должна при использовании функций раздела TextFX Viz происходить замена символов [NUL] на пробелы. Не проверял.
+Viz Copy-Cut also in UTF-8 При включенной настройке должно при использовании функций раздела TextFX Viz происходить копирование только в формате 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 и навязывать свои функции. Не проверял. Надеюсь, что никто не будет это делать.

TextFX Settings

menu10

Последний раздел. И несколько очень "вкусных" и полезных функций. Вам понравится)

+Cancel Overwrite Mode moving from current line

Пункт хороший

У многих на клавиатурах есть Insert. При нажатии на нее включается режим Overwrite, то сеть когда пишешь в тексте, то символы замещают те, что уже были. Режим бесит, а кнопка расположена так, что частенько на нее нажимаешь. При включенной данной опции Вам не нужно будет беспокоиться: так как режим Overwrite в Notepad++ не включится, даже если Вы нажмете Insert. Рекомендую, хотя проверить не могу, так как такой клавиши на ноутбуке нет.
+Autoclose XHTML/XML

Пункт хороший

Включает автозавершение тэгов. Очень удобная вещь. Например, Вы пишите:
set1
После этого закрываете тэг символом >, и автоматически появляется закрывающий тэг.
set2
+Autoclose {([Brace

Пункт хороший

Включает автозавершение скобок в соответствующих языках. Очень удобная вещь. Например, в C++ Вы пишите окрывающуюся скобку {, и автоматически появляется закрывающаяся скобка:
set3
+Autoconvert typed leading spaces to tabs

Пункт хороший

Включает автоматическое превращение пробелов в знаки табуляции в начале строк, когда их число равно 4. Очень удобная вещь. Например, Вы пишите:
set4
После этого пишите еще один пробел, и он автоматически превращает четыре пробела в знак табуляции.
set5
+Autoconvert typed HTML/XML to &entities; В HTML тексте при нажатии клавиши Enter внутри тэгов происходит автоматическое добавление тега <br/>:
set6
Нажимаете Enter и получаете.
set7
И так далее:
set8
+Disable Subclassing & advanced features

Пункт плохой

В оригинале написано, что:

At this time the extended Tidy menu and Ctrl-B require subclassing to capture. A future version of Notepad++ may cause Subclassing to fail to operate correctly. The features are still available in a more limited form if Subclassing is turned off.

Как я понимаю, это нужно, когда Вы используете плагин Tidy, который я подключить не смог. Так что функция бесполезна.

+Move quick menus out of 'Plugins' menu

Пункт плохой

Выносит в главное меню два подменю этого плагина. При включении этой галочки возникнет надпись:
set9
После перезапустите Notepad++ и в главном меню будут изменения:
set10
И вынеслось два подменю, где самые неинтересные и неработающие функции. Tidy только не хватает.

DmFedorov: выносит подменю quick в отдельное главное меню Np++.

+Move quick menus out of 'Plugins' menu

Пункт плохой

Не понял, что делает эта функция. При включении этой галочки возникнет надпись:
set11
После перезапуска Notepad++ не обнаружил никаких изменений.
Visit Notepad++ & TextFX website Происходит посещение сайта http://notepad-plus-plus.org/:
set12
Help При нажатии появляется надпись:
set13

Данный файл nppTextFXdemo.txt на диске я так и не нашел.Но в интернете он есть. Если нужно, пользуйтесь:
nppTextFXdemo

Может некоторые функции объяснены тут лучше, чем у меня. Но есть описание не всех функций, и я почти все функции проверил на работоспособность.

About TextFX При нажатии появляется надпись:
aboutTextFX

В общем, вот и всё! Надеюсь, что что-то новое для себя нашли.


Статьи по теме:

  1. QML в Notepad++
  2. Как удалить повторяющиеся строки в Notepad++ с помощью горячих клавиш
  3. Превращаем Sublime Text 2 в Notepad++
  4. Настройка текстового редактора Atom и дополнительные пакеты

IT Notepad++, Текстовой редактор

© 2014-2019 Harrix