<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Блог разработчика</title>
	<atom:link href="https://www.mgordeev.ru/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.mgordeev.ru</link>
	<description>Блог о веб-технологиях, скриптовых языках, CMS.</description>
	<lastBuildDate>Sat, 11 Jan 2025 18:51:35 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.5</generator>
	<item>
		<title>Полезные в работе нейронки</title>
		<link>https://www.mgordeev.ru/2025/01/%d0%bf%d0%be%d0%bb%d0%b5%d0%b7%d0%bd%d1%8b%d0%b9-%d0%b2-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5-%d0%bd%d0%b5%d0%b9%d1%80%d0%be%d0%bd%d0%ba%d0%b8/</link>
					<comments>https://www.mgordeev.ru/2025/01/%d0%bf%d0%be%d0%bb%d0%b5%d0%b7%d0%bd%d1%8b%d0%b9-%d0%b2-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5-%d0%bd%d0%b5%d0%b9%d1%80%d0%be%d0%bd%d0%ba%d0%b8/#respond</comments>
		
		<dc:creator><![CDATA[mgordeev]]></dc:creator>
		<pubDate>Thu, 09 Jan 2025 20:13:38 +0000</pubDate>
				<category><![CDATA[Обзоры]]></category>
		<guid isPermaLink="false">https://www.mgordeev.ru/?p=872</guid>

					<description><![CDATA[<p>Как узнать, какие есть нейронки и которые из них могут пригодиться? Можно гуглить, изучать, пробовать, но это черезчур несовременный подход, как по мне. Современный подход — задать этот вопрос нейросетке. Вот примерно такой ответ я получил: 1. Генерация и рефакторинг&#8230;  </p>
<p class="more-link"><a href="https://www.mgordeev.ru/2025/01/%d0%bf%d0%be%d0%bb%d0%b5%d0%b7%d0%bd%d1%8b%d0%b9-%d0%b2-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5-%d0%bd%d0%b5%d0%b9%d1%80%d0%be%d0%bd%d0%ba%d0%b8/">Читать далее <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://www.mgordeev.ru/2025/01/%d0%bf%d0%be%d0%bb%d0%b5%d0%b7%d0%bd%d1%8b%d0%b9-%d0%b2-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5-%d0%bd%d0%b5%d0%b9%d1%80%d0%be%d0%bd%d0%ba%d0%b8/">Полезные в работе нейронки</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Как узнать, какие есть нейронки и которые из них могут пригодиться? Можно гуглить, изучать, пробовать, но это черезчур несовременный подход, как по мне. Современный подход — задать этот вопрос нейросетке. Вот примерно такой ответ я получил:</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="768" height="768" src="https://www.mgordeev.ru/wp-content/uploads/2025/01/photo_2025-01-09_23-12-33.jpg" alt="" class="wp-image-873" srcset="https://www.mgordeev.ru/wp-content/uploads/2025/01/photo_2025-01-09_23-12-33.jpg 768w, https://www.mgordeev.ru/wp-content/uploads/2025/01/photo_2025-01-09_23-12-33-300x300.jpg 300w, https://www.mgordeev.ru/wp-content/uploads/2025/01/photo_2025-01-09_23-12-33-150x150.jpg 150w" sizes="(max-width: 768px) 100vw, 768px" /></figure>



<h3 class="wp-block-heading">1. <strong>Генерация и рефакторинг кода</strong></h3>



<ul class="wp-block-list">
<li><strong>GitHub Copilot</strong>: Работает на основе GPT, помогает с автозаполнением кода, написанием функций и комментариев.</li>



<li><strong>TabNine</strong>: Инструмент для автодополнения кода, поддерживает несколько языков программирования.</li>



<li><strong>CodeT5</strong>: Модель от Google, обученная специально для задач генерации и трансформации кода.</li>
</ul>



<h3 class="wp-block-heading">2. <strong>Дебаг и анализ кода</strong></h3>



<ul class="wp-block-list">
<li><strong>DeepCode (Snyk Code)</strong>: Анализирует код на наличие багов и уязвимостей.</li>



<li><strong>SonarLint</strong>: Инструмент статического анализа кода, который интегрируется с IDE и выявляет ошибки.</li>



<li><strong>OpenAI Codex</strong>: Может использоваться для поиска багов и предложений по их исправлению.</li>
</ul>



<h3 class="wp-block-heading">3. <strong>Документация и комментарии</strong></h3>



<ul class="wp-block-list">
<li><strong>Kite</strong>: Помогает в написании документации и пояснений к коду.</li>



<li><strong>Codex (OpenAI)</strong>: Генерирует комментарии и документацию к существующему коду.</li>
</ul>



<h3 class="wp-block-heading">4. <strong>Генерация тестов</strong></h3>



<ul class="wp-block-list">
<li><strong>Diffblue Cover</strong>: Автоматически генерирует юнит-тесты для Java.</li>



<li><strong>Testim</strong>: Использует ИИ для создания тестов и их управления.</li>
</ul>



<h3 class="wp-block-heading">5. <strong>Автоматизация DevOps</strong></h3>



<ul class="wp-block-list">
<li><strong>AWS CodeGuru</strong>: Анализирует код на предмет улучшений и автоматизирует задачи DevOps.</li>



<li><strong>TensorFlow Extended (TFX)</strong>: Упрощает создание конвейеров машинного обучения.</li>
</ul>



<h3 class="wp-block-heading">6. <strong>Работа с данными</strong></h3>



<ul class="wp-block-list">
<li><strong>Pandas AI</strong>: Облегчает анализ данных, предлагая умные способы обработки и визуализации данных.</li>



<li><strong>GPT-4 API</strong>: Используется для написания сложных запросов к базам данных и преобразования данных.</li>
</ul>



<h3 class="wp-block-heading">7. <strong>UI/UX разработка</strong></h3>



<ul class="wp-block-list">
<li><strong>Figma AI Plugins</strong>: Помогают автоматизировать создание интерфейсов и генерацию CSS/HTML-кода.</li>



<li><strong>Sketch2Code</strong>: Конвертирует нарисованные от руки эскизы интерфейсов в HTML.</li>
</ul>



<h3 class="wp-block-heading">8. <strong>Обучение и исследование</strong></h3>



<ul class="wp-block-list">
<li><strong>OpenAI ChatGPT</strong>: Помогает в объяснении концепций, поиске решений и обучении новым технологиям.</li>



<li><strong>Khan Academy AI</strong>: Обучающие курсы и материалы с использованием ИИ.</li>
</ul>



<h3 class="wp-block-heading">9. <strong>Интеграция нейросетей в проекты</strong></h3>



<ul class="wp-block-list">
<li><strong>Hugging Face Transformers</strong>: Библиотека для интеграции моделей NLP и компьютерного зрения.</li>



<li><strong>TensorFlow</strong> и <strong>PyTorch</strong>: Фреймворки для создания и обучения собственных моделей.</li>
</ul>



<h3 class="wp-block-heading">10. <strong>Управление проектами</strong></h3>



<ul class="wp-block-list">
<li><strong>Taskade AI</strong>: Помогает в автоматизации планирования задач и управления проектами.</li>



<li><strong>Notion AI</strong>: Упрощает написание заметок, планирование и составление документации.</li>
</ul>



<p>Эти инструменты помогают программистам сосредоточиться на творческих задачах, снижая время на рутину и улучшая качество работы.</p>



<p></p><p>The post <a href="https://www.mgordeev.ru/2025/01/%d0%bf%d0%be%d0%bb%d0%b5%d0%b7%d0%bd%d1%8b%d0%b9-%d0%b2-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5-%d0%bd%d0%b5%d0%b9%d1%80%d0%be%d0%bd%d0%ba%d0%b8/">Полезные в работе нейронки</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.mgordeev.ru/2025/01/%d0%bf%d0%be%d0%bb%d0%b5%d0%b7%d0%bd%d1%8b%d0%b9-%d0%b2-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5-%d0%bd%d0%b5%d0%b9%d1%80%d0%be%d0%bd%d0%ba%d0%b8/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как установить Let&#8217;s Encrypt на сервер</title>
		<link>https://www.mgordeev.ru/2022/03/%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-lets-encrypt-%d0%bd%d0%b0-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80/</link>
					<comments>https://www.mgordeev.ru/2022/03/%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-lets-encrypt-%d0%bd%d0%b0-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80/#respond</comments>
		
		<dc:creator><![CDATA[mgordeev]]></dc:creator>
		<pubDate>Wed, 16 Mar 2022 18:43:06 +0000</pubDate>
				<category><![CDATA[Обзоры]]></category>
		<guid isPermaLink="false">https://www.mgordeev.ru/?p=862</guid>

					<description><![CDATA[<p>В статье опишу, как это делается для ОС Centos, для других linux систем это делается аналогично. 1. Убеждаемся, что подключен нужный репозиторий. Если нет &#8212; подключаем. 2. Устанавливаем certbot 3. Устанавливаем модуль для веб-сервера. Для nginx Для apache Если стоит&#8230;  </p>
<p class="more-link"><a href="https://www.mgordeev.ru/2022/03/%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-lets-encrypt-%d0%bd%d0%b0-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80/">Читать далее <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://www.mgordeev.ru/2022/03/%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-lets-encrypt-%d0%bd%d0%b0-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80/">Как установить Let’s Encrypt на сервер</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>В статье опишу, как это делается для ОС Centos, для других linux систем это делается аналогично.</p>



<p>1. Убеждаемся, что подключен нужный репозиторий. Если нет &#8212; подключаем. </p>



<pre class="wp-block-code"><code>yum install epel-release</code></pre>



<p>2. Устанавливаем certbot</p>



<pre class="wp-block-code"><code>yum install certbot</code></pre>



<p> 3. Устанавливаем модуль для веб-сервера. </p>



<p>Для nginx</p>



<pre class="wp-block-code"><code>yum install certbot-nginx</code></pre>



<p>Для apache</p>



<pre class="wp-block-code"><code>yum install certbot-apache</code></pre>



<p>Если стоит и то и другое делать надо для nginx. Далее все команды для него.</p>



<p>4. Выполняем в консоли из-под root команду. Вместо site.ru пишем наш сайт</p>



<pre class="wp-block-code"><code>certbot --nginx -d site.ru</code></pre>



<p>5. Все готово. Теперь надо повесить на cron перевыпуск сертификатов. В консоли пишем</p>



<pre class="wp-block-code"><code>crontab -e</code></pre>



<p>6. Добавляем строчки</p>



<pre class="wp-block-code"><code>30 2 * * 5 certbot renew >> /var/log/le-renew.log
35 2 * * 5 /usr/bin/systemctl reload nginx</code></pre>



<p>Теперь сертификаты будут обновляться каждое 5-ое число месяца в 2:30 по часам вашего сервера, а в 2:35 будет перезапущен nginx.</p><p>The post <a href="https://www.mgordeev.ru/2022/03/%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-lets-encrypt-%d0%bd%d0%b0-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80/">Как установить Let’s Encrypt на сервер</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.mgordeev.ru/2022/03/%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-lets-encrypt-%d0%bd%d0%b0-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как узнать сохраненный пароль в WinSCP</title>
		<link>https://www.mgordeev.ru/2018/02/winscp-restore-paswword/</link>
					<comments>https://www.mgordeev.ru/2018/02/winscp-restore-paswword/#respond</comments>
		
		<dc:creator><![CDATA[mgordeev]]></dc:creator>
		<pubDate>Sun, 04 Feb 2018 13:51:33 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[Софт для Web-разработки]]></category>
		<guid isPermaLink="false">https://www.mgordeev.ru/?p=850</guid>

					<description><![CDATA[<p>Инструкция как просматривать и восстанавливать сохраненные пароли в файловых менеджерах. &#8230;  </p>
<p class="more-link"><a href="https://www.mgordeev.ru/2018/02/winscp-restore-paswword/">Читать далее <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://www.mgordeev.ru/2018/02/winscp-restore-paswword/">Как узнать сохраненный пароль в WinSCP</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Сохранять пароли в файловых менеджерах &#8212; плохая идея. Их можно легко скомпрометировать в случае взлома компьютера злоумышленниками. </p>
<p>Обычно пароль сохраняется в зашифрованном виде, который лежит в папке с программой или в папке пользователя. В интернете несложно найти программы-дешифраторы, некоторые даже работают онлайн.</p>
<p>Я опишу самый простой способ, который работает для практически любой программы, не только файлового менеджера. Проверил на WinSCP, TotalCommander.</p>
<p>Потребуется скачать BulletsPassView. Это простенькая программка перехватов, лучше скачивать в архиве: так не придется ее устанавливать.</p>
<p>Скачать можно с <a href="http://www.softportal.com/get-30865-bulletspassview.html" rel="nofollow" target="_blank">softportal</a> или с <a href="http://www.nirsoft.net/utils/bullets_password_view.html" rel="nofollow" target="_blank">официального сайт разработчика</a>. Есть и русская локализация, хотя программа очень простая и вряд ли возникнут сложности с интерфейсом, даже если не знать английский язык.</p>
<p>Как работать:</p>
<p>1) запускаем BulletsPassView;</p>
<p>2) открываем программу, в которой нужно перехватить пароль;</p>
<p>3) переходим в интерфейс, где пароль отображается в виде звездочек;</p>
<p>4) нажимаем на иконку обновить в интерфейсе BulletsPassView;</p>
<p>5) копируем пароль. Profit!<br />
<div id="attachment_852" style="width: 610px" class="wp-caption aligncenter"><img decoding="async" aria-describedby="caption-attachment-852" src="https://www.mgordeev.ru/wp-content/uploads/2018/02/BulletsPassView.gif" alt="BulletsPassView в TotalCommander" width="600" height="320" class="size-full wp-image-852" /><p id="caption-attachment-852" class="wp-caption-text">Просмотр пароля в TotalCommander с помощью BulletsPassView</p></div></p>
<p>Если указанный способ помог вам просмотреть пароли в других программах, напишите, пожалуйста, в комментариях.</p><p>The post <a href="https://www.mgordeev.ru/2018/02/winscp-restore-paswword/">Как узнать сохраненный пароль в WinSCP</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.mgordeev.ru/2018/02/winscp-restore-paswword/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Полезные плагины для notepad++.</title>
		<link>https://www.mgordeev.ru/2017/07/notepad-plugins/</link>
					<comments>https://www.mgordeev.ru/2017/07/notepad-plugins/#respond</comments>
		
		<dc:creator><![CDATA[mgordeev]]></dc:creator>
		<pubDate>Tue, 11 Jul 2017 09:22:21 +0000</pubDate>
				<category><![CDATA[Обзоры]]></category>
		<guid isPermaLink="false">https://www.mgordeev.ru/?p=812</guid>

					<description><![CDATA[<p>Обзор must have плагинов notepad++ для веб-разработки.&#8230;  </p>
<p class="more-link"><a href="https://www.mgordeev.ru/2017/07/notepad-plugins/">Читать далее <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://www.mgordeev.ru/2017/07/notepad-plugins/">Полезные плагины для notepad++.</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Одним из самых популярных текстовых редакторов является Notepad++. Софт бесплатный, есть русская локализация. Даже встроенных из коробки возможностей достаточно, чтобы сделать его текстовым редактором по умолчанию и внедрить как просмотрщик в файловые менеджеры. Текстовый редактор разработан под windows платформу, на mac и linux можно найти только аналоги. Скачать последнюю версию notepad++ можно по <a href="https://notepad-plus-plus.org/download/" target="_blank" rel="nofollow noopener">ссылке</a>.</p>
<p>Но кроме стандартных возможностей notepad++, к нему есть куча дополнений — плагинов, которые позволяют допилить функциональность «под себя».</p>
<p>В обзоре я расскажу о наиболее полезных для меня плагинах.</p>
<p>Общие плагины notepad++.</p>
<h3>Plugin Manager</h3>
<p>Позволяет загружать новые плагины и обновлять уже установленные. Идет в базовой поставке редактора. Рекомендуется использовать его для работы.</p>
<h3>Compare</h3>
<p>Как ясно из названия, позволяет сравнить содержимое двух файлов. Полезно, если нет времени или желания просматривать изменения в git или svn.</p>
<p><img decoding="async" class="aligncenter size-full wp-image-819" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/compare.gif" alt="Плагин compare" width="694" height="738" /></p>
<h3>NppAutoIndient</h3>
<p>Как тоже очевидно из названия, расставляет отступы в коде, что улучшает его читаемость. После установки плагин по умолчанию выключен, его надо активировать и выбрать режим работы, я рекомендую smart. Плагин в этом режиме учитывает действия пользователя и форматирует текст в том же стиле, что и разработчик.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-820" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/indient.gif" alt="NppAutoIndient" width="1058" height="738" /></p>
<h3>TextFX</h3>
<p>Очень мощный инструмент для преобразования текста.</p>
<ol>
<li>
<h4>TextFX Characters.</h4>
</li>
</ol>
<p>Блок всевозможных операций с кавычками. Все эти действия можно решить и поиском с заменой, но в TextFX это сделать можно более визуально.</p>
<ul>
<li>Convert quotes to &#187; (+)</li>
</ul>
<pre class="lang:php decode:true "> "require" long " float 'string' -&gt; "require" long " float "string"</pre>
<ul>
<li>Convert quotes to &#8216; (+)</li>
</ul>
<pre class="lang:php decode:true">int "require" long " float 'string' -&gt; int 'require' long ' float "string"</pre>
<ul>
<li>Swap quotes (&#187; -&gt; &#8216;) (+)</li>
</ul>
<pre class="lang:php decode:true ">int "require" long " float 'string' -&gt; int 'require' long ' float "string"</pre>
<ul>
<li>Drop quotes &#187; &amp; &#8216; (+)</li>
</ul>
<pre class="lang:php decode:true ">int "require" long " float 'string' -&gt; int require long float string</pre>
<ul>
<li>Escape &#187; to \&#187; (+)</li>
</ul>
<pre class="lang:php decode:true ">int "require" long " float 'string' -&gt;  int \"require\" long \" float 'string'</pre>
<ul>
<li>Escape &#8216; to \&#8217; (+)</li>
</ul>
<pre class="lang:php decode:true ">int "require" long " float 'string' -&gt;  int "require" long " float \'string\'</pre>
<ul>
<li>Escape &#8216; to \&#187; (+)</li>
</ul>
<pre class="lang:php decode:true ">int "require" long " float 'string' -&gt; int "require" long " float \"string\"</pre>
<ul>
<li>Escape both &#171;&amp;&#8217; to \&#187;&amp;\&#8217; (+)</li>
</ul>
<pre class="lang:php decode:true ">int "require" long " float 'string' -&gt; int \"require\" long \" float \'string\'</pre>
<ul>
<li>unEscape \&#187; to &#187; (+)</li>
</ul>
<pre class="lang:php decode:true "> int \"require\" long \" float 'string' -&gt; int "require" long " float 'string'</pre>
<ul>
<li>unEscape \&#8217; to &#8216; (+)</li>
</ul>
<pre class="lang:php decode:true">int "require" long " float \'string\' -&gt; int "require" long " float 'string'</pre>
<ul>
<li>unEscape \&#187; to &#8216; (+)</li>
</ul>
<pre class="lang:php decode:true "> int \"require\" long \" float 'string' -&gt; int 'require' long ' float 'string'</pre>
<ul>
<li>unEscape both \&#187;&amp;\&#8217; to &#171;&amp;&#8217; (+)</li>
</ul>
<pre class="lang:php decode:true ">int \"require\" long \" float \'string\' -&gt; int "require" long " float 'string'</pre>
<ul>
<li>Escape &#187; to &#171;&#187; (+)</li>
</ul>
<pre class="lang:php decode:true ">int "require" long " float 'string' -&gt; int ""require"" long "" float 'string'</pre>
<ul>
<li>Escape &#8216; to &#171;&#187; (+)</li>
</ul>
<pre class="lang:php decode:true ">int "require" long " float 'string' -&gt;  int "require" long " float ""string""</pre>
<ul>
<li>unEscape &#171;&#187; to &#187; (+)</li>
</ul>
<pre class="lang:php decode:true "> int "require" long " float ""string"" -&gt; int "require" long " float "string"</pre>
<ul>
<li>unEscape &#171;&#187; to &#8216; (+)</li>
</ul>
<pre class="lang:php decode:true "> int "require" long " float ""string"" -&gt;  int "require" long " float 'string'</pre>
<p>Все эти функции достаточно легко, да и более полезно для общей практики выполнять командами замены (Ctrl+h)</p>
<p>Работа со строками:</p>
<ul>
<li>UPPER CASE (+)</li>
</ul>
<p><em><span class="lang:php highlight:0 decode:true crayon-inline ">Пример текст. текст второй -&gt; ПРИМЕР ТЕКСТ. ТЕКСТ ВТОРОЙ</span> </em></p>
<ul>
<li>lower case (+)</li>
</ul>
<p><em><span class="lang:php highlight:0 decode:true crayon-inline">Пример текст. текст второй -&gt; пример текст. текст второй</span> </em></p>
<ul>
<li>Proper Case (+)</li>
</ul>
<p><span class="lang:php highlight:0 decode:true crayon-inline">Пример текст. текст второй -&gt; Пример Текст. Текст Второй</span></p>
<ul>
<li>Sentence case (!+)</li>
</ul>
<p><em><span class="lang:php highlight:0 decode:true crayon-inline ">Пример текст. текст второй -&gt; Пример текст. Текст второй</span> </em></p>
<ul>
<li>iNVERT cASE (+)</li>
</ul>
<p><em><span class="lang:php highlight:0 decode:true crayon-inline ">Пример текст. текст второй -&gt; пРИМЕР ТЕКСТ. ТЕКСТ ВТОРОЙ</span> </em></p>
<ul>
<li>Zap all characters to space (?)</li>
</ul>
<p><em><span class="lang:php highlight:0 decode:true crayon-inline ">Пример текст. текст второй -&gt; 48 пробелов</span> </em></p>
<ul>
<li>Zap all non printable characters to # (-)</li>
</ul>
<p><em><span class="lang:php highlight:0 decode:true crayon-inline ">Пример текст. This is Sparta *-()+= k hh/?- -&gt; ############ ##########. This is Sparta *-()+= k hh/?-</span> </em></p>
<p>Все функции, кроме последней, полезные. Последняя, к несчастью, не работает с кириллицей.</p>
<ol start="2">
<li>
<h4>TextFX Quick. Поисковые функции</h4>
</li>
</ol>
<ul>
<li>Mark Word or Find Reverse</li>
</ul>
<p><em>Пример текста Пример</em> <strong>приме</strong><em>р вот так<br />
Шоколад Печенье ходит само по себе пример кат </em></p>
<p><em>-&gt;</em></p>
<p><em>Пример текста <strong>Пример</strong> пример вот так<br />
Шоколад Печенье ходит само по себе</em> приме<em>р кат</em></p>
<ul>
<li><em>Mark Word or Find Forward</em></li>
</ul>
<p><em>Пример текста Пример</em> <strong>приме</strong><em>р вот так<br />
Шоколад Печенье ходит само по себе пример кат </em></p>
<p><em>-&gt;</em></p>
<p><em>Пример текста Пример пример вот так<br />
Шоколад Печенье ходит само по себе</em> <strong>приме</strong><em>р кат</em></p>
<ul>
<li><em>+Mark Word or Find Case Sensitive</em></li>
</ul>
<p><em>Пример текста Пример пример вот так<br />
Шоколад Печенье ходит само по себе пример кат</em> <strong>Приме</strong><em>р</em>.</p>
<p>-&gt;</p>
<p><em>Пример текста </em><strong>Приме</strong><em>р пример вот так<br />
Шоколад Печенье ходит само по себе пример кат Пример</em>.</p>
<ul>
<li><em>+Mark Word or Find Whole Words</em></li>
</ul>
<p><em>Пример текста Пример пример вот так<br />
Шоколад Печенье ходит само по себе пример кат</em> <strong>Пример</strong>.</p>
<p>-&gt;</p>
<p><em>Пример текста Пример пример вот так<br />
Шоколад Печенье ходит само по себе </em><strong>пример</strong><em> кат Пример</em>.</p>
<ul>
<li>Find matching {([])}</li>
</ul>
<p>Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}. Функция найдет соответствующую скобку и перейдет к ней. Аналог действия клавиш Ctrl + B.</p>
<ul>
<li>Mark to matching {([])}</li>
</ul>
<p>Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}. Функция выделит текст между скобками, включая их.</p>
<ul>
<li>Delete Marked {([])} Pair</li>
</ul>
<p>Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}. Функция удалит пару соответствующих скобок.</p>
<ul>
<li>Mark lines to matching {([])}</li>
</ul>
<p>Поставьте курсор к какой-нибудь скобке (или выделите её) из набора: {([])}. Функция выделит строки, в которых есть текст, заключенный между скобками, включая сами скобки. Функция <strong>Mark to matching {([])}</strong> выделяет текст между скобками, а эта функция именно строки.</p>
<ul>
<li>Find/Replace</li>
</ul>
<p>Абсолютно бесполезная функция поиска/замены. Проще/лучше/полезнее использовать встроенные инструменты.</p>
<ul>
<li>Duplicate Line or Block</li>
</ul>
<p>Аналогично бесполезная функция. Легко заменяется Ctrl+D или Ctrl+C и Ctrl+V</p>
<ol start="3">
<li>
<h4>TextFX Edit</h4>
</li>
</ol>
<ul>
<li>Fill Down Insert</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-822" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Fill-Down-Insert.gif" alt="Fill Down Insert" width="880" height="738" /></p>
<p>С помощью клавиши Alt выделите вертикально текст.</p>
<ul>
<li>Fill Down Overwrite</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-823" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Fill-Down-Overwrite.gif" alt="Fill Down Overwrite" width="880" height="738" /></p>
<ul>
<li>Insert (Clipboard) through lines</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-824" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Insert-_Clipboard_-through-lines.gif" alt="Insert (Clipboard) through lines" width="880" height="738" /></p>
<ul>
<li>Reindent C++ code</li>
</ul>
<p>Функция форматирует отступы в коде C++. То есть расставляет знаки табуляции в блоках, находящихся в фигурных скобках. Возможно и иные места обрабатывает.</p>
<ul>
<li>Leading space to tabs or tabs to spaces</li>
</ul>
<p>Заменяет пробелы на табы.</p>
<ul>
<li>Leading space to tabs or tabs to spaces</li>
</ul>
<p>Меняет пробелы на табы, а табы на пробелы.</p>
<ul>
<li>Leading space to tabs or tabs to spaces width=8</li>
</ul>
<p>Не понял, чем отличается эта функция от вышеописанной.</p>
<ul>
<li>Trim Trailing Spaces</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-825" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Trim-Trailing-Spaces.gif" alt="Trim Trailing Spaces" width="880" height="738" /></p>
<ul>
<li>Indent text sticky left margin</li>
</ul>
<p>Бесполезный пункт. Для получения нужного результата достаточно выделить несколько строк и нажать tab.</p>
<ul>
<li>Indent &amp; surround { text lines }</li>
</ul>
<p>Обрамляет текст в фигурные скобки, а текст сдвигает табуляцией.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-827" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Indent-_-surround.gif" alt="Indent &amp; surround { text lines }" width="880" height="738" /></p>
<ul>
<li>Delete Blank Lines</li>
</ul>
<p>Удаляет пустые строки. Если в строке есть табуляция или пробелы, то пустой строкой не является.</p>
<ul>
<li>Delete Surplus Blank Lines</li>
</ul>
<p>Бесполезная функция замены пустых строк, эффективнее и проще воспользоваться стандартной заменой.</p>
<ul>
<li>Strip unquoted text (C) separate by (Clipboard&lt;=20)</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-828" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Strip-unquoted-text-.gif" alt="Strip unquoted text (C) separate by (Clipboard&lt;=20)" width="880" height="738" /></p>
<ul>
<li>Strip unquoted text (VB) separate by (Clipboard&lt;=20)</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-828" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Strip-unquoted-text-.gif" alt="Strip unquoted text (C) separate by (Clipboard&lt;=20)" width="880" height="738" /></p>
<ul>
<li>Kill unquoted (C) whitespace</li>
</ul>
<p>Удаляет множественные пробелы, заменяя их одним пробелом. Очень полезная функция.</p>
<ul>
<li>Kill unquoted (VB) whitespace</li>
</ul>
<p>Та же самая функция, только в синтаксисе VB.</p>
<ul>
<li>Split lines at (clipboard character) or, (C)</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-830" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/split.gif" alt="• Split lines at (clipboard character) or, (C)" width="880" height="738" /></p>
<ul>
<li>Split lines at (clipboard character) or, (VB)</li>
</ul>
<p>Та же самая функция, только в синтаксисе VB.</p>
<ul>
<li>Line up multiple lines by (,)</li>
</ul>
<p>Форматирует строки по вертикали по запятым.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-831" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Line-up-multiple-lines-by.gif" alt="Line up multiple lines by (,)" width="880" height="738" /></p>
<ul>
<li>Line up multiple lines by (=)</li>
</ul>
<p>То же самое, только по знаку равенства. Полезная функция.</p>
<ul>
<li>Line up multiple lines by (Clipboard character)</li>
</ul>
<p>То же самое, только по знаку из буфера обмена. По сути универсальный вариант предыдущих функций.</p>
<ul>
<li>Unwrap Text</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-832" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/unwrap.gif" alt="Unwrap Text" width="880" height="738" /></p>
<ul>
<li>ReWrap Text (Clipboard or 72) width</li>
</ul>
<p>Разбивает текст по разделителю или по 72 символа (максимум). Странная функция, непонятно, чем может пригодиться.</p>
<ul>
<li>Pad rectangular selection with spaces</li>
</ul>
<p>&nbsp;</p>
<p>Вообще не понял, как этим пользоваться, и чем оно могло бы быть полезно.</p>
<ol start="4">
<li>
<h4>TextFX Convert</h4>
</li>
</ol>
<ul>
<li>Encode URI Component</li>
</ul>
<p>Аналог php-функции urlencode. Полезная и удобная функция.</p>
<ul>
<li>Encode HTML (&amp;&lt;&gt;&#187;)</li>
</ul>
<p>Аналог php-функции htmlentities. Полезная и удобная функция.</p>
<ul>
<li>Strip HTML tags table tabs</li>
</ul>
<p>Аналог php-функции strip_tags. Полезная и удобная функция.</p>
<ul>
<li>Strip HTML tags table nontabs</li>
</ul>
<p>Аналогично предыдущей функции, только при этом таблицы делает таблицами с разделителем в виде пробелов.</p>
<ul>
<li>Submit to W3C HTML Validator</li>
</ul>
<p>Пункт не работает.</p>
<ul>
<li>Submit to W3C CSS Validator</li>
</ul>
<p>Пункт не работает.</p>
<ul>
<li>Convert text to code command (&#171;text=\&#187;value\&#187;&#187;);</li>
</ul>
<p>Полезный пункт. Превращает какой-нибудь текст в строку под тот или иной язык. Данная функция требует выбора синтаксиса языка в документе.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-835" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Convert-text-to-code.gif" alt="Convert text to code command " width="880" height="738" /></p>
<ul>
<li>Convert Decimal Number to Binary</li>
</ul>
<p>Конвертирует десятичное число в двоичное.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">121 -&gt; $1111001</span></p>
<ul>
<li>Convert Decimal Number to Octal</li>
</ul>
<p>Конвертирует десятичное число в восьмеричное.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">121 -&gt; 0171</span></p>
<ul>
<li>Convert Decimal</li>
</ul>
<p>Конвертирует десятичное число в шестнадцатеричное.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">121 -&gt; 0x79</span></p>
<ul>
<li>Convert Hex Number to Decimal</li>
</ul>
<p>Конвертирует шестнадцатеричное число в десятичное.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">0x79 -&gt; 121</span></p>
<ul>
<li>Convert Octal Number to Decimal</li>
</ul>
<p>Конвертирует восьмеричное число в десятичное.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">0171 -&gt; 121</span></p>
<ul>
<li>Convert Binary Number to Decimal</li>
</ul>
<p>Конвертирует двоичное число в десятичное.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">1111001 -&gt; 121</span></p>
<ul>
<li>Convert C-style Number to Decimal</li>
</ul>
<p>Конвертирует число в форме C стиля в десятичное. Слабо понял, как может помочь эта функция.</p>
<ul>
<li>Convert text to Hex-16</li>
</ul>
<p>Переводит текст в Hex формат по 16 символов в строке.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-836" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Convert-text-to-Hex-16.gif" alt="Convert text to Hex-16" width="880" height="738" /></p>
<ul>
<li>Convert text to Hex-32</li>
</ul>
<p>Аналогично предыдущей функции переводит текст в Hex формат, но уже по 32 символа в строке.</p>
<ul>
<li>Convert text to Hex-64</li>
</ul>
<p>Аналогично предыдущей функции переводит текст в Hex формат, но уже по 64 символа в строке.</p>
<ul>
<li>Convert text to Hex-128</li>
</ul>
<p>Аналогично предыдущей функции переводит текст в Hex формат, но уже по 128 символов в строке.</p>
<ul>
<li>Convert hex byte runs into LE-WORDS</li>
</ul>
<p>Переводит текст из Hex формата в Little Endian WORD (порядок байтов от младшего к старшему). Это мало полезно в веб-разработке.</p>
<ul>
<li>Convert hex byte runs into LE-DWORDS</li>
</ul>
<p>Переводит текст из Hex формата в Little Endian DWORD (порядок байтов от младшего к старшему). Это мало полезно в веб-разработке.</p>
<ul>
<li>Convert LE-words to hex byte runs</li>
</ul>
<p>Переводит текст из Little Endian DWORDS формата в Hex.</p>
<ul>
<li>Convert LE-words to hex byte runs</li>
</ul>
<p>Переводит текст из Little Endian DWORDS формата в Hex.</p>
<ul>
<li>Convert Hex to text</li>
</ul>
<p>Переводит текст из Hex формата в обычный текст.</p>
<ul>
<li>ROT13 Text</li>
</ul>
<p>Кодирует и раскодирует латинский текст по шифру ROT13.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">zl anzr vf -&gt; my name is</span></p>
<ul>
<li>Convert EBCDIC to ASCII</li>
</ul>
<p>Функция конвертирует EBCDIC текст в текст в кодировке ASCII.</p>
<ul>
<li>Convert ASCII to EBCDIC</li>
</ul>
<p>Обратная предыдущей функция.</p>
<ul>
<li>Convert KOI8_R to CP1251</li>
</ul>
<p>Конвертирует текст из кодировки KOI8_R в CP1251.</p>
<ul>
<li>Convert CP1251 to KOI8_R</li>
</ul>
<p>Конвертирует текст из кодировки CP1251 в KOI8_R.</p>
<ol start="5">
<li>
<h4>TextFX Insert</h4>
</li>
</ol>
<ul>
<li>Current Full Path</li>
</ul>
<p>Функция не работает. Если нужен адрес файла, надо нажать на вкладку с файлом правой кнопкой и выбрать пункт «Полный путь к файлу в буфер» и ctrl+v.</p>
<ul>
<li>Current File Name</li>
</ul>
<p>Функция не работает. Если нужен адрес файла, надо нажать на вкладку с файлом правой кнопкой и выбрать пункт «Имя файла в буфер» и ctrl+v.</p>
<ul>
<li>Current Directory</li>
</ul>
<p>Функция не работает. Если нужен адрес файла, надо нажать на вкладку с файлом правой кнопкой и выбрать пункт «Путь к директории файла в буфер» и ctrl+v.</p>
<ul>
<li>Date &amp; Time &#8212; short format</li>
</ul>
<p>Вставляет дату и время в коротком формате. Удобная функция.</p>
<ul>
<li>Date &amp; Time &#8212; long format</li>
</ul>
<p>Вставляет дату и время в полном формате, но работает нормально только для документов в кодировке UTF-8.</p>
<ol start="6">
<li>
<h4>TextFX HTML Tidy</h4>
</li>
</ol>
<p>Пункт не работает.</p>
<ol start="7">
<li>
<h4>TextFX Tools</h4>
</li>
</ol>
<ul>
<li>Sort lines case sensitive (at column)</li>
</ul>
<p>Сортировка строк с учетом регистра.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-837" src="https://www.mgordeev.ru/wp-content/uploads/2017/07/Sort-lines-case-sensitive-.gif" alt="Sort lines case insensitive " width="880" height="738" /></p>
<ul>
<li>Sort lines case insensitive (at column)</li>
</ul>
<p>Сортировка строк без учета регистра. Работает корректно только для латиницы. Для кириллицы сортировка будет производиться, но с учетом регистра.</p>
<ul>
<li>+Sort ascending</li>
</ul>
<p>При включенной галочке сортировка в предыдущий двух функциях будет вестись по возрастанию. Без ее включения сортировка будет вестись по убыванию.</p>
<ul>
<li>+Sort outputs only UNIQUE (at column) lines</li>
</ul>
<p>При включенной галочке при сортировке будут удалены копии строк.</p>
<ul>
<li>Insert Ascii Chart or Character</li>
</ul>
<p>Если выделить любой символ, функция покажет его ASCII код и другие характеристики. Если не выделять – вставится вся ASCII таблица.</p>
<ul>
<li>Insert Ruler</li>
</ul>
<p>Вставляет линейку. Как это использовать на практике – не представляю.</p>
<ul>
<li>Insert Line Numbers</li>
</ul>
<p>Вставляет номера строк для выделенных строк.</p>
<ul>
<li>Delete Line Numbers or First Word</li>
</ul>
<p>Удаляет первое слово в выделенных строках. Полезная функция.</p>
<ul>
<li>Clean eMail &gt; Quoting</li>
</ul>
<p>Очищает текст e-mail письма от знаков цитирования <strong>&gt;</strong>.</p>
<ul>
<li>UUdecode</li>
</ul>
<p>Декодирует текст в виде <a href="http://ru.wikipedia.org/wiki/UUE">UUE</a>.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">#0V%T -&gt; Cat</span></p>
<ul>
<li>Base64 Decode</li>
</ul>
<p>Декодирует текст в виде <a href="http://ru.wikipedia.org/wiki/Base64">Base64</a>.</p>
<p><span class="lang:php highlight:0 decode:true crayon-inline ">dGVzdA== -&gt; test</span></p>
<ul>
<li>Word Count</li>
</ul>
<p>Показывает число слов в тексте и другие характеристики.</p>
<ul>
<li>Add up numbers</li>
</ul>
<p>Суммирует выделенные цифры.</p>
<ul>
<li>Empty Undo Buffer (be sure to save)</li>
</ul>
<p>Очищает буфер изменений.</p>
<ol start="8">
<li>
<h4>TextFX Viz</h4>
</li>
</ol>
<p>Функционал предназначен для работы со скрытыми строками. Можно выделить несколько строк и нажать alt+h. Глобально, не думаю, что есть реальные сценарии работы, при которых все нижеописанные функции могут быть полезны.</p>
<ul>
<li>Show Between-Selected or All-Reset Lines</li>
</ul>
<p>Разворачивает в выделенном фрагменте все свернутые строки. Если ничего не выделено, то развернет все строки.</p>
<ul>
<li>Hide Between-Selected or All-Reset Lines</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Invert Visibility Between-Selected or All-Reset Lines</li>
</ul>
<p>Показывает скрытые строки в выделенном фрагменте.</p>
<ul>
<li>Hide Lines with (Clipboard) text</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Hide Lines without (Clipboard) text</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Show Lines with (Clipboard) text</li>
</ul>
<p>Функция показывает те строки, в которых есть текст в буфере обмена.</p>
<ul>
<li>Show Lines without (Clipboard) text</li>
</ul>
<p>Функция показывает те строки, в которых нет текста из буфера обмена.</p>
<ul>
<li>Show More Lines around my position</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Hide/Show sequence all steps</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Hide/Show sequence singlestep start</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Hide/Show sequence singlestep next</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Hide/Show sequence singlestep rest</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Select at Hide/Show sequence</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Insert Show/Hide Sequence</li>
</ul>
<p>Функция работает плохо и глючно. Не рекомендую использовать.</p>
<ul>
<li>Copy Visible Selection</li>
</ul>
<p>Копирует только видимый текст, но без переносов строк.</p>
<ul>
<li>Cut Visible Selection</li>
</ul>
<p>Вырезает только видимый текст, но без переносов строк.</p>
<ul>
<li>Delete Visible Selection</li>
</ul>
<p>Удаляет только видимый текст.</p>
<ul>
<li>Copy Invisible Selection</li>
</ul>
<p>Копирует только невидимый текст, но без переносов строк.</p>
<ul>
<li>Cut Invisible Selection</li>
</ul>
<p>Вырезает только невидимый текст, но без переносов строк.</p>
<ul>
<li>Delete Invisible Selection</li>
</ul>
<p>Удаляет только невидимый текст.</p>
<ul>
<li>Copy Entire Selection (no append)</li>
</ul>
<p>Копирует текст (и видимый и невидимый), но без переноса строк.</p>
<ul>
<li>Cut Entire Selection (no append)</li>
</ul>
<p>Вырезает текст (и видимый и невидимый), но без переноса строк.</p>
<ul>
<li>Copy &amp; Append Entire Selection</li>
</ul>
<p>Копирует текст (и видимый и невидимый), но без переноса строк. Добавляет все к буферу обмена.</p>
<ul>
<li>Cut &amp; Append Entire Selection</li>
</ul>
<p>Вырезает текст (и видимый и невидимый), но без переноса строк. Добавляет все к буферу обмена.</p>
<ul>
<li>Paste as UTF-8/ANSI</li>
</ul>
<p>Вставляет текст, преобразуя попутно кодировку.</p>
<ul>
<li>Paste</li>
</ul>
<p>Вставляет текст. Походу просто вставляет текст.</p>
<ol start="9">
<li>
<h4>TextFX Viz Settings</h4>
</li>
</ol>
<p>Настройки TextFX Viz.</p>
<ul>
<li>+Viz Text Search Case Sensitive</li>
</ul>
<p>Включить регистр зависимый вариант поиска в вышеописанных функциях.</p>
<ul>
<li>+Viz Text Search Whole Words</li>
</ul>
<p>Включить поиск по полным словам.</p>
<ul>
<li>+Viz Text Search Regex</li>
</ul>
<p>Включает поиск по регулярным выражениям.</p>
<ul>
<li>+Viz Copy-Cut Appends to clipboard</li>
</ul>
<p>При включенной этой галочке все функции раздела TexFX Viz при копировании, вырезании элемента в буфер обмена будут копировать текст, не удаляя его, а добавляя его к тому, что уже было в буфере. Как в функции Cut &amp; Append Entire Selection.</p>
<ul>
<li>+Viz Copy-Cut always converts to CRLF</li>
</ul>
<p>Конвертирует строки в CRLF при копировании и вырезании.</p>
<ul>
<li>+Viz Copy-Cut replace [NUL] with space</li>
</ul>
<p>При копировании в функциях TextFX Viz заменяет [NULL] на пробел.</p>
<ul>
<li>+Viz Copy-Cut also in UTF-8</li>
</ul>
<p>Копирование и вставка происходит только в формате UTF-8.</p>
<ul>
<li>+Viz Paste retains position</li>
</ul>
<p>Возвращает курсор при вставке обратно в то место, где был курсор до вставки.</p>
<ul>
<li>+Viz Paste/Append binary</li>
</ul>
<p>Добавляет в буфер данные в бинарном формате.</p>
<ul>
<li>+Viz Paste converts EOL to editor</li>
</ul>
<p>При включенной галочке должна конвертировать символ EOL.</p>
<ul>
<li>+Viz Capture Keyboard Ctrl-C,X,V</li>
</ul>
<p>При включенной галочке должна перехватывать клавиши Ctrl-C,X,V и навязывать свои функции. Крайне не рекомендую использовать.</p>
<ol start="10">
<li>
<h4>TextFX Settings</h4>
</li>
</ol>
<p>Общие настройки плагина TextFX</p>
<ul>
<li>+Cancel Overwrite Mode moving from current line</li>
</ul>
<p>При нажатии на кнопку Insert включается режим Overwrite. Это значит, что если нажать на клавишу, то вводимый текст будет заменять текущий. Если эта стандартная функция бесит – можно включить эту опцию, и режим работы будет стандартным.</p>
<ul>
<li>+Autoclose XHTML/XML</li>
</ul>
<p>Закрывает html теги. Если ввести &lt;p и &gt; &lt;p&gt;&lt;/p&gt;. Аналогичная настройка есть и в редакторе. Использовать обе настройки сразу нельзя!</p>
<ul>
<li>+Autoclose {([Brace</li>
</ul>
<p>Включает автозакрытие скобок. Аналогичная настройка есть и в редакторе. Использовать обе настройки сразу нельзя!</p>
<ul>
<li>+Autoconvert typed leading spaces to tabs</li>
</ul>
<p>Включает автоматическое превращение пробелов в знаки табуляции в начале строк, когда их число равно 4. Очень полезная функция.</p>
<ul>
<li>+Autoconvert typed HTML/XML to &amp;entities;</li>
</ul>
<p>Довольно странный функционал. При включенной опции нажатие кнопки Enter приводит к появлению &lt;br/&gt;.</p>
<ul>
<li>+Disable Subclassing &amp; advanced features</li>
</ul>
<p>Я не подключил Tidy и настройка по сути не работает.</p>
<ul>
<li>+Move quick menus out of &#8216;Plugins&#8217; menu</li>
</ul>
<p>Выносит в меню настройки TextFX.</p>
<ul>
<li>+Move quick menus out of &#8216;Plugins&#8217; menu</li>
</ul>
<p>Ctrl+D дублирует строку, на которую установлен курсор. Если выделена подстрока, дублирует подстроку.</p><p>The post <a href="https://www.mgordeev.ru/2017/07/notepad-plugins/">Полезные плагины для notepad++.</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.mgordeev.ru/2017/07/notepad-plugins/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Переполнение диска по количеству inode</title>
		<link>https://www.mgordeev.ru/2017/06/unix-inode-errror/</link>
					<comments>https://www.mgordeev.ru/2017/06/unix-inode-errror/#respond</comments>
		
		<dc:creator><![CDATA[mgordeev]]></dc:creator>
		<pubDate>Sun, 25 Jun 2017 13:45:28 +0000</pubDate>
				<category><![CDATA[unix]]></category>
		<guid isPermaLink="false">https://www.mgordeev.ru/?p=805</guid>

					<description><![CDATA[<p>Необычная ситуация вызывающая массу ошибок записи на диск, диагностика и решение.&#8230;  </p>
<p class="more-link"><a href="https://www.mgordeev.ru/2017/06/unix-inode-errror/">Читать далее <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://www.mgordeev.ru/2017/06/unix-inode-errror/">Переполнение диска по количеству inode</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Процентов 80 всех проблем с unix ОС связно со внезапно закончившимся местом. Симптомы всегда разные, в зависимости от наблюдаемого сервиса. Как правило это невозможность записи файла, создания сессии, обнуление размера файла.<br />
Проверить наличие свободного места можно командой<br />
df –h</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-806" src="https://www.mgordeev.ru/wp-content/uploads/2017/06/df-h.png" alt="Результат выполнения команды df -h" width="436" height="81" srcset="https://www.mgordeev.ru/wp-content/uploads/2017/06/df-h.png 436w, https://www.mgordeev.ru/wp-content/uploads/2017/06/df-h-300x56.png 300w" sizes="auto, (max-width: 436px) 100vw, 436px" /></p>
<p>Но я расскажу о проблеме, с аналогичными симптомами, при которой команда df –h будет показывать наличие свободного места в системе.<br />
Дело может быть в переполнении inod. Inode – это индексные дескрипторы, в них хранится метаинформация о файлах. На inode выделяется примерно 1% от объема диска. Обычно, этого вполне хватает, но бывают случаи и сбои, когда inodы переполняются. Подробнее об этом можно почитать <a href="https://ru.wikipedia.org/wiki/Inode" target="_blank" rel="nofollow">здесь</a>.<br />
Проверить количество inode можно командой<br />
df –i</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-807 size-full" src="https://www.mgordeev.ru/wp-content/uploads/2017/06/df-i.png" alt="Результат выполнения команды df -i" width="475" height="80" srcset="https://www.mgordeev.ru/wp-content/uploads/2017/06/df-i.png 475w, https://www.mgordeev.ru/wp-content/uploads/2017/06/df-i-300x51.png 300w" sizes="auto, (max-width: 475px) 100vw, 475px" /></p>
<p>Если диагностировано переполнение inode, надо найти какой именно сервис за это отвечает. В веб-разработки это чаще всего неудаляющиеся файлы сессий и неправильно настроенный кеш.<br />
Далее необходимо найти, в какой папке создается много файлов. Можно это сделать эмпирически, можно воспользоваться командой:<br />
find &lt;точка монтирования файловой системы&gt; -type d | ( while read A; do B=`ls -l &#171;$A&#187; | wc -l`; if [ &#171;$B&#187; -gt 12345 ] ; then echo $B $A; fi ; done)<br />
точка монтирования файловой системы &#8212; например корень / или /my/dir/<br />
12345 &#8212; это условие проверки, если кол-во файлов больше этого числа, то показать путь к директории, чтобы потом можно было почистить эту директорию.<br />
После того, как найдена причина рекомендуется остановить генерирующий файлы сервис и решить проблему системно.<br />
После чего уже смело можно удалять многочисленные файлы. Однако и это не так просто: такое действие начинает очень сильно нагружать жесткий диск. Все остальные задачи скорее всего выполняться не будут.</p>
<p>По практике не стоит удалять файлы командами в лоб rm -rf ./* или find . -type f -exec rm -v {} \; в результате их выполнения сервер скорее всего повиснет. На практике удаление через <a href="https://midnight-commander.org/" target="_blank" rel="nofollow noopener">Midnight Commander</a> при условии, что сервис генерирующий файлы остановлен вполне неплохо справляется с задачей.</p><p>The post <a href="https://www.mgordeev.ru/2017/06/unix-inode-errror/">Переполнение диска по количеству inode</a> first appeared on <a href="https://www.mgordeev.ru">Блог разработчика</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.mgordeev.ru/2017/06/unix-inode-errror/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
