Обычно люди редко изучают все многочисленные возможности плагина. Поэтому прошу посмотреть на эти функции — многие из них вам очень пригодятся.
Раньше этот плагин был предустановлен, но с переходом на версию Unicode плагин ушел в состав устанавливаемых пользователем. Помните, что сам плагин довольно древний, так что не все функции работают. Возможно поэтому плагин и исключили из программы по умолчанию.
Исследования проводились в Windows 7 x64 в Notepad++ v.6.2.3 (UNICODE). И да x64 версии у него нет.
Установка Plugin Manager
Создатель Notepad++ выпилил Plugin Manager из программы несколько лет назад (пишу в 2018) из-за наличия рекламы в данном инструменте. Поэтому его нужно устанавливать отдельно с официального репозитория: https://github.com/bruderstein/nppPluginManager/releases:
Рекомендую устанавливать x86 версию Notepad++, если хотите пользоваться плагинами, так как многие плагины не перестроены на x64 версию. Соответственно нужно выбирать версию UNI
у nppPluginManager.
Из архива достаньте обе папки plugins
и updater
, скопируйте их в папку Notepad++ (у меня это C:\Program Files (x86)\Notepad+
).
Перезапустите Notepad++ и менеджер плагинов у вас появится:
Установка TextFX
Идем Плагины
→ Plugin Manager
→ Show Plugin Manager
. Ищем там плагин TextFX Characters
и его устанавливаем:
Обязательно выделяйте текст, перед тем как производить действия этим плагином, если иное не оговорено.
TextFX Characters
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
Это поисковые функции:
Mark Word or Find Reverse
Если щелкнуть просто без выделения, то функция выделит текущее слово. Если выделить какой-то текст, то, если есть такой же текст до данного, то выделится этот такой же текст до данного. Если такого текста нет, то ничего не произойдет. То есть эта функция быстрого поиска предыдущего такого же текста.
Допустим, что в тексте выделим слово пример
:
В результате выделится предыдущее слово Пример
:
Mark Word or Find Forward
Если щелкнуть просто без выделения, то функция выделит текущее слово. Если выделить какой-то текст, то, если есть такой же текст после данного, то выделится этот такой же текст после данного. Если такого текста нет, то ничего не произойдет. То есть эта функция быстрого поиска последующего такого же текста.
Допустим, что в тексте выделим часть слова приме
:
В результате выделится следующее слово (точнее часть слова) приме
:
+Mark Word or Find Case Sensitive
При включенной данной функции поиск в предыдущих двух функциях будет зависеть от регистра.
Допустим, что в тексте выделим часть слова Приме
:
В результате выделится предыдущее слово Приме
при вызове Mark Word or Find Reverse
:
+Mark Word or Find Whole Words
При включенной данной функции поиск в предыдущих двух функциях будет вестись по полному соответствию слову. То есть нужно выделить всё слово, чтобы поиск заработал.
Допустим, что в тексте выделим слово Пример
:
В результате выделится предыдущее слово пример
:
Find matching {([])}
Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}
. Функция найдет соответствующую скобку и перейдет к ней. Аналог действия клавиш Ctrl
+ B
.
Допустим, что в тексте выделим первую фигурную скобку и вызовем команду:
В результате выделится вторая скобка:
Mark to matching {([])}
Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}
. Функция выделит текст между скобками.
Допустим, что в тексте выделим первую фигурную скобку (или вторую) и вызовем команду:
В результате выделится весь текст внутри них, включая скобки:
Delete Marked {([])} Pair
Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}
. Функция удалит пару соответствующих скобок.
Допустим, что в тексте выделим первую фигурную скобку (или вторую) и вызовем команду:
В результате обе скобки удалятся:
Mark lines to matching {([])}
Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}
. Функция выделит строки в которых заключается текст, что между скобками, включая их. Функция Update 2018. Нет, выделит также скобки.Mark to matching {([])}
выделяет текст между скобками, а эта функция именно строки.
Допустим, что в тексте выделим первую фигурную скобку (или вторую) и вызовем команду:
В результате выделится весь текст внутри них (и скобки тоже):
Find/Replace
Это функция поиска и замены. Честно, лучше использовать встроенные функции, чем этот инструмент:
Выделите слово, которое вы хотите искать и вызовите функцию поиска. Вводить русский текст не получится в поле поиска, так как вместо русского текста возникают крякозябры. С остальным вы сможете разобраться. Хотя не вижу причин использовать этот глючный вариант.
Duplicate Line or Block
Поставьте курсор в нужной строке или выделите нужный текст. Если вы поставили просто курсор, то продублируется строка и вставится после текущей. Если выделите текст, то продублируется данный текст.
Допустим, что щелкнем в тексте на третей строке и вызовем функцию:
В результате строка продублируется:
TextFX Edit
Fill Down Insert
Данная функция вставляет содержимое выделения первой строки при вертикальном выделении и вставляет в каждую строку, сдвигая элементы.
С помощью клавиши Alt
выделите вертикально текст:
При вызове функции получим:
Fill Down Overwrite
Данная функция вставляет содержимое выделения первой строки при вертикальном выделении и вставляет в каждую строку, замещая элементы.
С помощью клавиши Alt
выделите вертикально текст:
При вызове функции получим:
Insert (Clipboard) through lines
Данная функция вставляет содержимое выделения буфера обмена при выделении нескольких строк в месте в каждой строки, равное началу выделения в первой строки.
Выделите текст, а в буфере обмена пусть находится строчка double max
:
При вызове функции получим:
Reindent C++ code
Функция форматирует отступы в коде C++. То есть расставляет знаки табуляции в блоках, находящихся в фигурных скобках. Возможно и иные места обрабатывает.
Выделите текст, содержащий код C++:
При вызове функции получим:
Leading space to tabs or tabs to spaces
Насколько я понял, функция превращает пробелы в табуляцию нужных размеров. Превратить табуляцию в пробелы не получилось. Пример текста:
При вызове функции получим:
Leading space to tabs or tabs to spaces width=8
Чем отличается эта функция от предыдущей, я на практике не смог понять. Вроде делает всё то же самое.
Trim Trailing Spaces
Удаляет в конце строки пробелы. Пример текста:
При вызове функции получим:
Indent text sticky left margin
Добавляет слева табуляцию ко всем выделенным строкам. Но как показала практика, некоторые строки остаются без изменения. Причины не понял. Пример текста:
При вызове функции получим:
Indent & surround { text lines }
Обрамляет текст в фигурные скобки, а текст сдвигает табуляцией.
Попробуем выделить текст вот так (только две строки):
При вызове функции получим:
Попробуем выделить текст вот так (с третьей пустой строкой):
При вызове функции получим:
Delete Blank Lines
Удаляет пустые строки. Если в строке есть табуляция или пробелы, то пустой строкой не является.
Выделим текст:
При вызове функции получим:
Delete Surplus Blank Lines
Функция должна удалять повторяющиеся пустые строки. Но если есть пустые строки с табуляциями, то может удалить знак абзаца. Так что будьте осторожнее. Лучше воспользоваться функцией заменой Notepad++.
Выделим текст:
При вызове функции получим:
Strip unquoted text (C) separate by (Clipboard<=20)
У вас есть некий код на языке C++. В нем встречаются строки обрамленные в двойные кавычки. Нужно их достать из данного кода. В качестве разделителя строк будет использоваться то, что в буфере обмена, если в буфере обмена меньше или равно 20 символов. Иначе будет использоваться запятая.
Выделим текст, а в буфер обмена занесем знак +
:
При вызове функции получим:
Strip unquoted text (VB) separate by (Clipboard<=20)
По сути должна быть такой же функцией, что и предыдущая, но со спецификой построения строк в Visual Basic. Что там за особенности я не знаю. И надеюсь, что никогда не узнаю)
Kill unquoted (C) whitespace
Удаляет лишние пробелы, оставляя только по одному. Пробелы вначале строки не трогает.
Выделим текст:
При вызове функции получим:
Kill unquoted (VB) whitespace
По сути должна быть такой же функцией, что и предыдущая, но со спецификой построения строк в Visual Basic. Что там за особенности я не знаю.
Split lines at (clipboard character) or, (C)
Разделяет строку (или строки) на множество строк. В качестве символа, который служит распознаванием конца места разрыва строки, используется символ в буфере обмена или запятая.
Выделим текст, а в буфер обмена или ничего не запишем, или запятую:
При вызове функции получим:
Split lines at (clipboard character) or, (VB)
По сути должна быть такой же функцией, что и предыдущая, но со спецификой построения строк в Visual Basic. Что там за особенности я не знаю.
Line up multiple lines by (,)
При выделении нескольких строк, в которых есть знаки ,
, функция подстраивает строки так, чтобы знаки ,
были на одном уровне. Делает это с помощью пробелов. Недостаток. Если перед ,
вам нужен пробел, то его у вас не будет.
Выделим текст:
При вызове функции получим:
Line up multiple lines by (=)
Аналогично предыдущей функции. Только в качестве разделителя используется знак =
.
Выделим текст:
При вызове функции получим:
Line up multiple lines by (Clipboard character)
Аналогично предыдущей функции. Только в качестве разделителя используется знак знак из буфера обмена.
Unwrap Text
Удаляет знак перевода строки. То есть объединяет строки в одну. В качестве разделителя используется пробел. Пустые строки не объединяются.
Выделим текст:
При вызове функции получим:
ReWrap Text (Clipboard or 72) width
По сути функция должна переразбивать текст на строки согласно длине в буфере обмена или по 72 символа. Но управлять я этой функцией так и не смог. Разбивает по своему усмотрению и всегда одинаково.
Выделим текст:
При вызове функции получим:
Пользователь DmFedorov так прокомментировал этот пункт:
ReWrap Text to (Clipboard or 72) width — тут не 72 символа.
Я как раз перевожу этот плагин с жестких строк и у меня задача очень кратко (не шире чем исходный текст) сформулировать.
Получилось так: НЕ пустые строки преобразовать в ширину 72 пословно. Т. е. ширина 72 — это максимум.
А вот причем здесь буфер — для меня загадка тоже.
Pad rectangular selection with spaces
Пользователь DmFedorov так прокомментировал этот пункт:
Смысл тут простой: Подбить прямоугольник выделения до максимальной длины (в выделении).
Причем длина — это вовсе не число символов. Это то что ты видишь в строке состояния Npp как length или в окне Summary.
Т. е. это типа длина виртуальная символов но не совсем так. Короче это толком нигде не объяснено. Но если хочешь проверить после того как будет подбито для каждого подбитого куска Summary покажет тебе одинаковую длину (если ты этот кусок выделишь). Хотя на глаз длина этого куска после заполнения пробелами будет наоборот не одинаковая.
TextFX Convert
Encode URI Component
Функция переводит строку в формат URI. Но где и как это использовать? Тот же адрес сайта становится непонятным для браузеров, так как переделывает все нелатинские символы, в том числе и слэши.
Выделим текст:
При вызове функции получим:
Encode HTML (&<>")
Функция переводит символы &<>"
в их HTML аналоги. Хорошая функция, когда вам нужно в HTML тексте написать код HTML так, чтобы он отображался как текст, а не преобразовывался как код. Сложно как-то описал.
Выделим текст:
При вызове функции получим:
Strip HTML tags table tabs
Очень полезная функция. Удаляет из HTML кода все тэги, оставляю только текст. При этом таблицы делает таблицами с разделителем в виде табуляции.
Выделим текст:
При вызове функции получим:
Strip HTML tags table nontabs
Аналогично предыдущей функции, только при этом таблицы делает таблицами с разделителем в виде пробелов.
Выделим текст:
При вызове функции получим:
Submit to W3C HTML Validator
Функция не работает. Должна отправлять файл или выделенный фрагмент на сайт W3C и проверять HTML код на валидность.
Submit to W3C CSS Validator
Функция не работает. Должна отправлять файл или выделенный фрагмент на сайт W3C и проверять CSS код на валидность.
Convert text to code command ("text=\"value\"");
Превращает какой-нибудь текст в строку под тот или иной язык. Данная функция требует выбора синтаксиса языка в документе:
Выделим текст в документе C++:
При вызове функции получим:
Выделим текст в документе PHP:
При вызове функции получим:
Convert Decimal Number to Binary
Конвертирует десятичное число в двоичное.
Выделим текст:
При вызове функции получим:
Convert Decimal Number to Octal
Конвертирует десятичное число в восьмеричное.
Выделим текст:
При вызове функции получим:
Convert Decimal Number to Hex
Конвертирует десятичное число в шестнадцатеричное.
Выделим текст:
При вызове функции получим:
Convert Hex Number to Decimal
Конвертирует шестнадцатеричное число в десятичное.
Выделим текст:
При вызове функции получим:
Convert Octal Number to Decimal
Конвертирует восьмеричное число в десятичное.
Выделим текст:
При вызове функции получим:
Convert Binary Number to Decimal
Конвертирует двоичное число в десятичное.
Выделим текст:
При вызове функции получим:
Convert C-style Number to Decimal
Конвертирует число в форме C стиля в десятичное. Что за стиль C? Язык C++ или просто C? Вроде числа формата -10f
переводит (удаляет идентификатор типа float
), но с другими числами не справляется, например, с 1.5e-10
. В общем оно вам надо связываться с сомнительной функцией?
Convert text to Hex-16
Переводит текст в 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 (порядок байтов от младшего к старшему). Честно, не понимаю, что конкретно это и где это может использоваться.
Комментарий от https://habr.com/users/Fedcomp/:
Это больше полезно для сетевого кода, там бывает используют разные порядки байт. Мне лично попадалось такое при исследовании сетевого кода двух разных игр.
Выделим текст:
При вызове функции получим:
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 формата в обычный текст.
Выделим текст:
При вызове функции получим:
ROT13 Text
Отличная функция! Кодирует и раскодирует латинский текст по «шифру» ROT13, который довольно популярен на форумах и так далее. Подробнее читать в статье https://ru.wikipedia.org/wiki/ROT13.
Выделим текст:
При вызове функции получим:
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
Current Full Path
Должна копировать полный путь к файлу и вставлять в документ. Но почему то копирует только первую букву из всего полного пути, то есть букву диска, на котором файле располагается. Например, C
. В общем, используйте стандартную функцию в Notepad++ (правый клик по вкладке с файлом).
Current File Name
Должна копировать имя файла и вставлять в документ. Но почему то копирует только первую букву из всего имени. Например, n
. В общем, используйте стандартную функцию в Notepad++ (правый клик по вкладке с файлом).
Current Directory
Должна копировать имя полного пути, в котором находится файл, и вставлять в документ. Но почему то копирует только первую букву из всего имени. Например, C
. В общем, используйте стандартную функцию в Notepad++ (правый клик по вкладке с файлом).
Date & Time - short format
Вставляет в текст дату в коротком формате:
Date & Time - long format
Вставляет в текст дату в полном формате:
Но документ должен быть в кодировке ASCII, а не в UTF-8, что есть плохо. В UTF-8 вставляет крякозябры:
TextFX HTML Tidy
В общем, я не смог завести эти функции все. Они требуют установки 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
Sort lines case sensitive (at column)
Это самая любимая моя функция. Благодаря ей и пользуюсь этим плагином. Сортировка строк с учетом регистра.
Выделим текст:
При вызове функции получим:
Sort lines case insensitive (at column)
Сортировка строк без учета регистра. Но к сожалению, только для английского языка. Для русского языка сортировка будет производиться, но с учетом регистра.
Выделим текст:
При вызове функции получим:
+Sort ascending
При включенной галочке сортировка в предыдущий двух функциях будет вестись по возрастанию. Без ее включения сортировка будет вестись по убыванию.
Выделим текст:
При вызове функции Sort lines case sensitive (at column) при выключенной галочке получим:
+Sort outputs only UNIQUE (at column) lines
При включенной галочке при сортировке будут удалены копии строк. То есть останутся только уникальные строки.
Выделим текст:
При вызове функции Sort lines case sensitive (at column) при включенной галочке получим:
Insert Ascii Chart or Character
Для символа показывает его ASCII код и другие характеристики.
Выделим текст:
При вызове функции получим:
Если же не выделять символы, то функция выдаст весь список кодов:
Insert Ruler
Вставляет интересную и красивую линейку. Просто прикольная штука.
При вызове функции получим:
Insert Line Numbers
Вставляет номера строк.
Выделим текст:
При вызове функции получим:
Delete Line Numbers or First Word
Удаляет первое слово в выделенных строках. Ну очень полезная функция. Например, когда с сайта код копируется с номерами строк.
Выделим текст:
При вызове функции получим:
Clean eMail > Quoting
Очищает текст email письма от знаков цитирования >
.
Выделим текст:
При вызове функции получим:
Uuencode
Декодирует текст в виде UUE.
Выделим текст:
При вызове функции получим:
Base64 Decode
Декодирует текст в виде Base64.
Выделим текст:
При вызове функции получим:
Word Count
Показывает число слов в тексте и другие характеристики.
Выделим текст:
При вызове функции получим:
Add up numbers
Должна суммировать числа, но делает это часто неправильно.
Выделим текст:
При вызове функции получим:
Empty Undo Buffer (be sure to save)
Очищает буфер изменений. То есть после применения этой функции вы не сможете отменить изменения в файле, что вы сделали во время редактирования. Полезна тем, кто хочет стереть какие-то свои провинности)
TextFX Viz
Данные инструменты используются для работы со спрятанными строками (Вид
→ Спрятать выбранные строки
или Alt
+ H
). Например, у нас есть текст:
Выделяем вторую строку и нажимаем 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
Функция сворачивает те строки, в которых есть текст, что есть в буфере обмена. Функция работает, но опять таки без опознавательных знаков, и, кажется, что строки удаляются. А при смене вкладок всё возвращается.
Пусть есть текст:
Скопируем в буфер обмена текст 33
. Выделим текст весь текст и применим функцию:
Hide Lines without (Clipboard) text
Функция сворачивает те строки, в которых нет текста, что есть в буфере обмена. Функция работает, но опять таки без опознавательных знаков, и, кажется, что строки удаляются. А при смене вкладок всё возвращается. При этом первые строки текста, что должен скрываться остается.
Пусть есть текст:
Скопируем в буфер обмена текст 33
. Выделим текст весь текст и применим функцию:
Show Lines with (Clipboard) text
Функция показывает те строки в которых есть текст в буфере обмена.
Пусть есть текст:
Скопируем в буфер обмена текст 33
. Скроем строки:
Выделим текст весь текст и применим функцию:
Show Lines without (Clipboard) text
Функция показывает те строки в которых нет текста из буфера обмена.
Пусть есть текст:
Скопируем в буфер обмена текст 33
. Скроем строки:
Выделим текст весь текст и применим функцию:
Show More Lines around my position
Функция постепенно раскрывает строки из свернутого варианта.
Пусть есть текст:
Скроем строки:
Применим функцию и увидим текст:
По данному тексту с зажатой клавишей 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
Копирует только видимый текст. Но копирует без переносов строк. Ну, кому это надо?
Если у вас есть скрытый текст, и вы скопируете часть текста, что содержит этот текст:
И потом вставите скопированный текст, то увидите, что скопировался и скрытый текст:
Если же скопируете через эту функцию плагина и вставите текст, то увидите, что скопировался только видимый текст, но без перевода строк:
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
Копирует невидимый и видимый текст. При этом не замещает то, что есть в буфере обмена, а добавляет к нему. Но копирует без переносов строк. Ну, кому это надо, если можно и так скопировать?
У вас есть текст, а в буфере обмена текст Example text
:
Скопируете через эту функцию плагина и вставите текст, то увидите, что скопировался видимый и невидимый текст, но без перевода строк:
Cut & Append Entire Selection
Вырезает невидимый и видимый текст. При этом не замещает то, что есть в буфере обмена, а добавляет к нему. Но копирует без переносов строк. Ну, кому это надо, если можно и так скопировать?
У вас есть текст, а в буфере обмена текст Example text
:
После функции получите:
Скопируете через эту функцию плагина и вставите текст, то увидите, что скопировался видимый и невидимый текст, но без перевода строк:
Paste as UTF-8/ANSI
Вставляет текст. Наверно в формате UTF-8 или ANSI в зависимости от ситуации. Особо не разбирался. Главное, что переносы строк не вставляет.
Paste
Вставляет текст. Чем отличается от предыдущей функции не знаю.
TextFX Viz Settings
Здесь будут настройки для работы функций предыдущего раздела. Так как там только три работающих, но не мега важных функций, то особо сильно останавливаться не буду.
+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
Последний раздел. И несколько очень «вкусных» и полезных функций. Вам понравится.
+Cancel Overwrite Mode moving from current line
У многих на клавиатурах есть Insert
. При нажатии на нее включается режим Overwrite, то сеть когда пишешь в тексте, то символы замещают те, что уже были. Режим бесит, а кнопка расположена так, что частенько на нее нажимаешь. При включенной данной опции вам не нужно будет беспокоиться: так как режим Overwrite в Notepad++ не включится, даже если вы нажмете Insert
. Рекомендую, хотя проверить не могу, так как такой клавиши на ноутбуке нет.
+Autoclose XHTML/XML <tag>
Включает автозавершение тэгов. Очень удобная вещь. Например, вы пишите:
После этого закрываете тэг символом >
, и автоматически появляется закрывающий тэг:
+Autoclose {([Brace<tag>
Включает автозавершение скобок в соответствующих языках. Очень удобная вещь. Например, в C++ вы пишите открывающуюся скобку {
, и автоматически появляется закрывающаяся скобка:
+Autoconvert typed leading spaces to tabs
Включает автоматическое превращение пробелов в знаки табуляции в начале строк, когда их число равно 4. Очень удобная вещь. Например, вы пишите:
После этого пишите еще один пробел, и он автоматически превращает четыре пробела в знак табуляции:
+Autoconvert typed HTML/XML to &entities;
В HTML тексте при нажатии клавиши Enter
внутри тэгов происходит автоматическое добавление тега <br/>
:
Нажимаете Enter
и получаете:
И так далее:
+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
Выносит в главное меню два подменю этого плагина. При включении этой галочки возникнет надпись:
После перезапустите Notepad++ и в главном меню будут изменения:
И вынеслось два подменю, где самые неинтересные и неработающие функции. Tidy только не хватает.
Пользователь DmFedorov так прокомментировал этот пункт:
выносит подменю quick в отдельное главное меню Np++.
+Ctrl-D also dups marked text
При включении этой галочки возникнет надпись:
После перезапуска Notepad++ не обнаружил никаких изменений.
Update 2018. По идеи должно включать/выключать дублирование строчек по Ctrl
+ D
, но это сейчас по умолчанию работает в Notepad++, так что эффекта данный пункт никакого не оказывает.
Visit Notepad++ & TextFX website
Происходит посещение сайта https://notepad-plus-plus.org/:
Help
При нажатии появляется надпись:
Данный файл nppTextFXDemo.txt
на диске я так и не нашел. Но в интернете он есть. Если нужно, пользуйтесь: nppTextFXDemo.txt.
Может некоторые функции объяснены тут лучше, чем у меня. Но есть описание не всех функций, и я почти все функции проверил на работоспособность.
About TextFX
При нажатии появляется надпись:
В общем, вот и всё! Надеюсь, что что-то новое для себя нашли.