Programmer’s Notepad — это легковесный редактор кода под Windows, изначально написанный Саймоном Стилом. Проект, судя по всему, заброшен с 2016 года. Я стабильно пользуюсь этим редактором с конца нулевых, отказываться пока не собираюсь, и в 2025 году решил его форкнуть под названием PN Reloaded — давно хотелось добавить функции, присущие некоторым другим редакторам.

Репозиторий: https://github.com/gecko0307/pn-reloaded

Готовую сборку можно скачать в разделе релизов.

Особенности редактора:

  • Написан на C++, основан на WTL и Scintilla
  • MDI-интерфейс, вкладки, все базовые инструменты редактирования текстов
  • Встроенная подсветка синтаксиса для множества языков, включая D, можно добавлять собственные схемы подсветки
  • Фолдинг
  • Поиск и замена по регулярным выражениям (синтаксис Perl)
  • Поддержка различных кодировок и символов перевода строки
  • Проекты и воркспейсы
  • Пользовательские команды
  • Пользовательские сниппеты кода
  • Вывод консоли прямо в приложении
  • Поддержка скриптов на Python 3.4 (к сожалению, отсутствует совместимость с актуальными версиями Python)
  • Плагины на C++
  • Распространяется по лицензии 3-Clause BSD.

Особенности форка:

  • Плагин PNScript, реализующий поддержку скриптов на JavaScript (на основе Node.js). Скрипты работают как текстовые фильтры, с их помощью можно реализовать форматирование, умный поиск, деобфускацию, различные алгоритмы анализа данных и т.д. Можно устанавливать NPM-пакеты, что дает практически неограниченные возможности обработки текстов. Автоматизация самого редактора (создание макросов) пока не поддерживается
  • Новые схемы подсветки синтаксиса для GLSL, HLSL, WGSL и Haskell. Поддержка JSON — json-файлы интерпретируются как JavaScript
  • Файлы с неизвестной кодировкой теперь загружаются как UTF-8. Раньше очень раздражало, когда они открывались как ANSI/Windows-1251 — я считаю, что теперь надобность в устаревших кодировках отпала, и любой ASCII-файл должен бесшовно интерпретироваться как UTF-8
  • Автоматическое определение индентации (табы/пробелы) из содержимого файла — очень понравилась эта фича из VSCode. Предусмотрена галочка, чтобы отключить эту опцию, и тогда будет работать по-старому — символ индентации по умолчанию будет всегда как в настройках
  • Файлы *.exe теперь запускаются двойным кликом в браузере файлов и дереве проекта
  • Добавлены файлы, необходимые для сборки CHM-справки с помощью HTML Help Workshop
  • Новая иконка приложения.