Администрирование Windows Notepad2 FAQ Wed, October 18 2017  

Поделиться

нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.


Notepad2 FAQ Печать
Добавил(а) microsin   

Ниже приведен перевод часто задаваемых вопросов (FAQ) по замечательному текстовому редактору Notepad2.

Автор принял решение назначить для своего редактора такой же простой интерфейс с одним открытым документом, как и у оригинального Notepad, чтобы было удобно выполнять повседневную работу с маленькими скриптами файлами. Это наиболее часто задаваемый автору вопрос, и свой выбор он подтверждает следующими (с его точки зрения) аргументами:

• Менеджер Окон (Window Manager) современных операционных систем Windows уже предоставляет удобную панель задач (taskbar), где открытые окна группированы друг с другом и отображаются приятной иконкой.

• Когда идет одновременная работа в нескольких приложениях, на любой нужный документ можно переключиться горячей комбинацией кнопок Alt+Tab (или с помощью иконок на панели задач), что нельзя сделать с таким же удобством в приложениях, где реализован интерфейс с несколькими документами (сначала надо использовать Alt+Tab, потом Ctrl+Tab или что-то подобное, чтобы перейти к нужному документу в приложении; кроме того, не все открытые документы можно увидеть в панели задач).

• Последние версии Windows (начиная с Windows 7) предоставляют панель задач, где доступен уменьшенный предварительный просмотр содержимого окна при наведении курсора на иконку приложения (и группы приложений) в панели задач (см. скриншот). Поэтому можно очень просто осуществлять навигацию между несколькими документами. Автор не уверен, что для многодокументного интерфейса существует более удобный способ для достижения того же самого функционала (однако некоторые приложения наподобие Internet Explorer 8 для Windows 7 поддерживают подобную функцию и для нескольких своих закладок).

• Notepad2 можно использовать с несколькими мониторами или с переключением между разными виртуальными рабочими столами (virtual desktops), что невозможно в многодокументном интерфейсе.

• Если на рабочем столе открыто несколько мелких окошек Notepad2, то можно более рационально распределить рабочее пространство, чем это было бы с многодокументным интерфейсом.

Windows7 taskbar thumbnail previews

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

В настоящий момент Notepad2 делает большинство из того, что нужно автору, так что не ожидайте чего-то экстраординарного в следующей версии. Автор сейчас думает о добавлении следующих функций:

• Выбор шрифта для печать заголовков (headers) и блоков завершения страницы (footers).
• Копирование в буфер обмена в формате RTF.
• Полноэкранный режим.

Следующие функции лежат вне потребностей автора (они не удовлетворяют концепции редактора, подобного стандартному Notepad), поэтому они вряд ли будут когда-либо реализованы:

• Интерфейс с закладками для нескольких документов в одном окне.
• Отображение документов с разделением окна (Split document view).
• Форматирование кода.
• Code Explorer.
• Свертка блоков кода.
• Автозавершение кода по синтаксису.
• Определяемые пользователем схемы синтаксиса.
• Скриптовый язык / макросы.
• Поиск по предыдущим результатам (Incremental search).
• Проверка синтаксиса (Spell checking).
• Шестнадцатеричный редактор.
• Горизонтальные линейки.
• Клиент FTP.
• Плагины.
• Скины.
• Гиперссылки (не поддерживается Scintilla [7]).
• Функция автообновления.
• Поддержка управления проектами.

Конечно, автоматическое форматирование кода, используемое во многих современных IDE, может быть иногда очень полезным. Однако добавление этой возможности в Notepad2 должно означать трату дополнительных усилий по встраиванию и поддержки требуемых библиотек, что несомненно увеличит размер выполняемого файла Notepad2. Также завершение кода должно быть предоставлено для любой схемы синтаксиса, поддерживаемой Notepad2. И такое грандиозное изменение дополнительных интерфейсов пользователя потребует настройки множества опций форматирования исходного кода.

Философия автора - использовать простой, маленький и быстрый инструмент для этой задачи. Для качественной печати кода html автор использует HTML Tidy [3] из диалога "Open with..." Notepad2 (с использованием командного файла, чтобы указать конфигурационный файл для опций для HTML Tidy). Другие форматтеры исходного кода, такие как Artistic Style [4] для языков C, C++, C# и Java, также доступны как инструменты командной строки, и их также можно запускать из Notepad2.

Для Notepad2 это можно сделать через ini-file, что будет объяснено ниже (см. вопрос "Что можно сказать по поводу секции [Settings2] ini-файла?").

Меню View -> Default Font (Alt+F12).

Начиная с Notepad2 версии 4.1.24 имеется новая установка стиля для управления улучшением вида среза символов шрифта (smoothing font edges, anti-aliasing), это можно установить для элементов стиля по умолчанию (Default Style) и дополнительного стиля по умолчанию (2nd Default Style), что будет работать для всех других стилей (см. скриншот).

Notepad2 font smoothing control

Опция улучшения вида шрифта (smoothing) может быть установлена в одно из следующих значений:

none запрет функции font smoothing (может быть выбрана для определенных шрифтов фиксированной ширины).

standard разрешает стандартное улучшение вида шрифтов (standard font smoothing, что было представлено с Windows 9x).

cleartype разрешить ClearType smoothing (оптимизировано для дисплеев LCD).

default используется метод улучшения системного шрифта по умолчанию.

Имейте в виду, что эти улучшения будут работать только если соответствующий метод антиалиасинга доступен и активирован в системе. Обычно font smoothing влияет только на отображение на экране монитора (не на печать документа). Если эта настройка недоступна, то Notepad2 использует метод улучшения system default font smoothing, но пытается принудительно применить отрисовку ClearType для некоторых шрифтов, представленных свежими версиями Windows и Microsoft Office (Calibri, Cambria, Candara, Consolas, Constantia, Corbel и Segoe UI).

Перейдите в диалог Customize Schemes (Ctrl+F12) и раскройте раздел Default Text. Измените параметр Caret (Color, Size 1-3) для изменения цвета курсора и его внешнего вида (доступны варианты size:1, 2, 3 или block). Добавьте noblink, чтобы курсор перестал мигать.

Высота строки определяется по её самым высоким элементам, по умолчанию это Matching Braces и Matching Braces Error. Измените их размер для уменьшения расстояния до их значений по умолчанию, как показано на скриншоте.

Notepad2 Matching Braces

В версии 4.0 также Вам понадобится сбросить установку Extra Line Spacing, чтобы восстановить интервалы между строками по умолчанию.

Откройте диалог Customize Schemes (Ctrl+F12), раскройте раздел Default Text, и найдите элемент Selected Text, затем удалите атрибут eolfilled.

Нет, символы управления (control characters: NUL, ACK, BEL, etc.) нельзя убрать из отображения, но их видимый размер можно уменьшить: откройте диалог Customize Schemes (Ctrl+F12), раскройте раздел Default Text, найдите элемент Control Characters (Font), и поменяйте параметр size соответствующим образом.

Выберите character set (Script, Набор символов), соответствующий Вашей локальной кодировке текста из диалога настройки шрифта, как показано на скриншоте:

Notepad2 font settings

Альтернативно character set может быть введен вручную, то только для элементов настройки Default Style и 2nd Default Style, как демонстрируется на скриншоте ниже:

Notepad2 font Default Style

Правильное преобразование текста выполняется при переключении в новую кодировку (меню File -> Encoding). Однако имейте в виду, что это действие очистит историю изменения файла (undo history). Когда осуществляется преобразование из Unicode и UTF-8 обратно в ANSI, то не поддерживаемые символы будут заменены на значения по умолчанию (обычно это знак вопроса ?).

Кодировки ANSI и UTF-8 используют одно и то же общее 7-битное подмножество символов ASCII. Файл, в которых нет каких-либо расширенных символов (русские буквы или символы наподобие (a, e, o), будут загружены по умолчанию как ANSI.

Чтобы гарантировать, что файл будет загружен как UTF-8, то либо используйте сигнатуру UTF-8 в файле (которая специально предназначена для этой цели), либо добавьте в файл некоторые комментарии с расширенными символами. Или Вы должны установить UTF-8 как кодировку по умолчанию (File -> Encoding -> Default), при этом ASCII файлы будут загружаться как обычно, но новые файлы и файлы нулевого размера будут открыты в режиме UTF-8.

Диалог настройки по умолчанию имеет опцию предпочтительной загрузки ASCII-файлов как UTF-8, даже если не был установлен UTF-8 как кодировка по умолчанию. Эта опция временно разрешена, когда осуществляется перезагрузка текущего файла с использованием горячих клавиш Shift+F8.

Чтобы загрузить файл в режиме ANSI по умолчанию с пропуском детектирования кодировки, нажмите Ctrl+Shift+A.

Детектирование Unicode может сработать на некоторых системах неправильно [5], и в результате текст не-Unicode будет показан как испорченный текст Unicode. Обычно планка статуса Notepad2 (statusbar) показывает в таких случаях кодировку Unicode, показывая отсутствие в файле BOM (Byte Order Mark, метка порядка байт), и устанавливается предположительная кодировка. Чтобы пропустить автоматическое детектирование Unicode (и просто полагаясь на BOM-ы для идентификации файла Unicode), разрешите соответствующую опцию (File -> Encoding -> Default). Это не повлияет на детектирование UTF-8.

Другая причина поврежденного текста может быть в том, что текущий шрифт не поддерживает все символы, требуемые для правильного отображения текста. Чтобы проверить это, выберите другой шрифт по умолчанию (Alt+F12), предпочтительно задавая шрифт общего назначения наподобие "Arial" или "Arial Unicode MS" (для русского текста возможно потребуется выбрать в выпадающем списке "Набор символов" - "Кириллица").

Когда идет работа в режиме ANSI, и настройка набора символов (character set, Script) не соответствует кодировке по умолчанию ANSI в Вашей системе, то при копировании/вставке в некоторых случаях текст может быть преобразован неправильно.

Также вставка символов Unicode, когда файл открыт в режим ANSI, приведет к тому, что не поддерживаемые символы будут преобразованы в значения по умолчанию (обычно символ ?).

Это можно исправить явной установкой желаемой кодировки ANSI по умолчанию, например если в Вашей системе кодовая страница ANSI по умолчанию 1252, то установите в качестве установки по умолчанию Windows-1252 вместо ANSI (1252). Это принудительно активирует внутри программы режим UTF-8 и даст гарантию, что для операций копирования/вставки будет осуществляться правильное преобразование.

Буфер обмена Windows (clipboard) байты NULL как маркеры окончания текста. Исходный код компонента редактирования Scintilla [7] может отображать байты NULL, но операции копирования и вставки не будут работать правильно по спецификациям Windows clipboard.

Примечание: чтобы найти и заменить байты NULL используйте термин \x00 и активируйте поиск с использованием регулярных выражений (Regular expression search).

Это объяснено в руководстве Notepad2 Encoding Tutorial [6].

Как сделано в версии 4.0, Notepad2 поддерживает некоторые кодировки ISO. Подробности см. в руководстве Notepad2 Encoding Tutorial [6].

В настоящее время двунаправленный текст (справа-налево), такой как Arabic, Hebrew и другие, не поддерживается в Notepad2. Добавление этой функции потребует модификации компонента редактирования Scintilla [7].

Кажущимися случайными изменения (даже если пользователь не сделал никаких модификаций файла) при сохранении файла могут быть вызваны двумя опциями, гарантирующими целостность окончаний строк и отрезание завершающих пробелов. Эти опции могут быть запрещены через меню File -> Line Endings -> окно диалога Default.

Также Notepad2 не был разработан для поддержки редактирования двоичных файлов, и многие операции редактирования, включая копирование и вставку через буфер обмена, не будут работать правильно в контексте сохранения целостности двоичного файла. Автор рекомендует вместо этого использовать для двоичного редактирования один их множества отличных бесплатных hex-редакторов, которые есть для Windows.

Notepad2 основан на компоненте редактирования Scintilla [7], который не был разработан в расчете на обработку очень длинных строк текста. Отлично работает редактирование обычного исходного кода и обычных текстовых файлов.

Тот же самый ответ, как и на предыдущий вопрос: Notepad2 основан на компоненте редактирования Scintilla [7], который был разработан для обработки обычных файлов исходного кода. Работа с большими файлами или очень длинными строками, особенно с операциями поиска и замены, могут привести к снижению производительности Notepad2.

В некоторых случаях операции поиска и замены могут быть слишком медленными, даже если не используются чрезмерно длинные строки. Кажется, это происходит главным образом в режиме ANSI, если системная кодовая страница ANSI по умолчанию (system default ANSI code page) принадлежит семейству DBCS, но это происходит не на каждой системе. Явная установка кодировки по умолчанию в кодировку Windows вместо кодировки ANSI может иногда улучшить скорость поиска, например если системная кодовая страница ANSI равна 1258, то установите по умолчанию Windows-1258 вместо ANSI (1258).

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

Самые последние версии исходного кода компонента редактирования Scintilla [7] поддерживает поиск без чувствительности к регистру для символов не-ASCII. Эта функция доступна в Notepad2 4.2 и более свежих версиях.

Однако это не относится к поиску по регулярным выражениям (regular expression search): расширенные символы, которые не являются частью базового набора символов ASCII, всегда обрабатываются с учетом регистра (case sensitive).

Это возможно, когда активирована опция Transform backslashes в диалогах поиска и замены. Введите \n для замены символа LF (перевод строки), или \r для символа CR (возврат каретки). Если режим редактирования строки установлен для Windows (CR+LF), то для замены перехода на новую строку используйте \r\n как искомую последовательность символов.

Чтобы выполнить операцию замены по нескольким строкам как исходному материалу для замены, то проще сначала скопировать этот текст в буфер обмена, и затем использовать ^c как хранилище содержимого буфера обмена в поле замены.

Если Вы активируете поиск по регулярным выражениям (Regular expression search) в окне диалога поиска и замены, то последовательность \t будет представлять символ табуляции как в искомом тексте, так и в заменяющем тексте.

Это пояснено в файле Notepad2 Readme [8].

Notepad2 поддерживает только ограниченное подмножество регулярных выражений, как это предоставлено встроенной системой исходного кода компонента редактирования Scintilla [7]. Достоинство такого решения - очень малый занимаемый объем. Сейчас нет планов интегрировать более продвинутую систему анализа регулярных выражений, однако это может быть возможно в будущей разработке.

Замечание: поиск с использованием регулярных выражений ограничен только одной строкой.

Notepad2 может проанализировать некоторые переменные Emacs [9], которые могут использоваться в файлах исходного кода. Первые 512 байт файла (и если ничего не найдено, также последние 512 байт) также проверяются на следующие конструкции (может быть отключено вручную в ini-файле или соответственно в меню File -> Encoding -> окно диалога Default, подробнее см. вопрос "Что можно сказать по поводу секции [Settings2] ini-файла?"):

   coding: utf-8;
   mode: python;
   tab-width: 8;
   c-basic-indent: 2;
   indent-tabs-mode: nil;
   c-tab-always-indent: true;
   fill-column: 64;
   truncate-lines: false;
   enable-local-variables: true;

coding обслуживает тег кодировки файла. Подробнее см. руководство Notepad2 Encoding Tutorial [6].

mode показывает используемую схему синтаксиса, и это либо имя схемы, либо расширение имени файла.

tab-width определяет настройку величины табуляции.

c-basic-indent определяет настройку отступов в коде.

indent-tabs-mode определяет, должны ли быть вставлены пробелы для табуляции (nil, false или 0), либо это не должно использоваться (true или 1).

c-tab-always-indent определяет, переформатирует ли клавиша табуляции отступы с пробелами (true или 1) или это не используется (nil, false или 0).

fill-column устанавливает желаемый лимит для длинных строк (но не отображает автоматически видимый маркер).

truncate-lines управляет обрезкой слов word wrap (для разрешения nil, false или 0; для запрета true или 1).

enable-local-variables запрещает анализ локальной переменной файла (nil, false или 0), но сохраняет вычисление тегов кодирования. Для пропуска анализа как переменной файла, так и анализа тега кодирования перезагрузите файл горячей комбинацией клавиш Alt+F8. Адаптация вышеуказанных установок постоянно выключает переменные файла т теги кодирования.

Нажмите Shift+F5, чтобы выполнить макрос замены с регулярным выражением, который определен в ini-файле Notepad2. Пример ниже показывает обновление метки времени в стиле CVS:

[Settings2]
...
TimeStamp=\$Date:[^\$]+\$ | $Date: %Y/%m/%d %H:%M:%S $

Для дополнительной информации обратитесь к файлу Readme.txt который находится в zip-архиве исходного кода Notepad2.

Для дополнительной информации обратитесь к файлу Readme.txt который находится в zip-архиве исходного кода Notepad2.

Подсветка VBScript внутри файлов ASP включается следующим оператором:

< %@ Language=VBScript % >

Найдите следующий ключ реестра (создайте его при необходимости):

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\View Source Editor\Editor Name

Установите его значение по умолчанию (default value) в полный путь до Notepad2.exe.

Обновлено: с браузером IE8 нажмите F12 для открытия инструментария разработчика (Developer Tools), выберите File -> Customize View Source и найдите Notepad2.exe.

Это можно сделать с использованием команды for в скрипте командного файла:

for %%i in %1 do echo %%~si

Либо запретите опцию Reuse Window из меню Settings, или запустите Notepad2.exe с опцией командной строки /n, чтобы открыть несколько окон.

Чтобы одновременно открыть несколько файлов в новых окнах из командной строки, используйте опцию + командной строки:

notepad2.exe + file1.txt file2.txt

Запустите Notepad2.exe с опцией /s командной строки, и укажите частично имя схемы синтаксиса, или расширение имени файла, которое связано с нужной схемой синтаксиса в диалоге Scheme Customization. Следующие примеры отображают конфигурационный файл Apache с подсветкой для стандартного файла конфигурации:

Notepad2.exe /s ini file.conf
Notepad2.exe /s "Configuration Files" file.conf

Следующие короткие опции командной строки можно использовать для прямого выбора схем синтаксиса: /d (Default Text), /h (Web Source Code) и /x (XML Document).

Используйте опцию /g командной строки для указании строки и опционально столбца:

Notepad2.exe /g 10,5 file.txt

Следующая команда может использоваться для перескока в конец файла:

Notepad2.exe /g -1 file.txt

Чтобы перескочить на указанную фразу текста, используйте опцию /m. Есть модификаторы этой опции для совпадения с последней встреченной фразой (/m-), с использованием в поиске регулярного выражения (/mr) или с использованием замены с помощью обратного слеша (/mb). Последние 2 модификатора исключающие, и нельзя найти совпадение для двойных кавычек (так как они используются для отделения друг от друга аргументов командной строки).

Используйте что-то подобное для перескока на последнюю запись в лог-файле:

Notepad2.exe /mr- "[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]:" file.txt

Файл Notepad2.ini, который поставляется вместе с zip-файлом Notepad2, имеет несколько опций для отображения текстового описание возле изображений кнопок тулбара, или для использования пользовательских изображений тулбара. Активация изменений требует перезапуска Notepad2.

Диалог предупреждения, который появляется при открытии большого файла имеет опцию, чтобы его больше не показывать. Если Вы должны подстроить лимит, когда должно срабатывать это предупреждение, то добавьте значение FileLoadWarningMB в секцию [Settings2] ini-файла Notepad2, и назначьте значение в мегабайтах.

Notepad2 нуждается в удержании всего файла в памяти (чтобы реализовать подсветку синтаксиса), и также требует дополнительной памяти для сохранения истории отмены изменений (undo history), выполнения преобразования кодировок при сохранении, и т. д. По этой причине отображается предупреждение, так как редактирование очень больших файлов может привести к исчерпанию памяти и возможной потере данных.

Если zip-файл Notepad2 был загружен с помощью Internet Explorer, то файл помечается как небезопасный, так как он был получен из web. Некоторые утилиты распаковки архива zip также могут добавлять эту пометку для распакованных файлов, и это может привести к предупреждению безопасности при запуске Notepad2.

Чтобы удалить это предупреждение безопасности, сделайте правый клик на файле Notepad2.exe в Проводнике (утилита Windows Explorer), выберите Свойства (Properties) в контекстном меню, и нажмите кнопку Unblock в нижней части закладки General. Подтвердите это действие кнопкой OK.

В версии 3.1 Notepad2 больше не создает ini-файл по умолчанию в директории программы. Если ini-файл не найден, то Вам нужно первый раз вручную сохранить настройки (F7). Теперь настройки программы будут сохраняться в новом созданном ini-файле.

Кроме того, Notepad2 требует доступа на запись в ini-файл, чтобы можно было сохранить настройки программы. Если настройки сохранены вручную (F7), то при защите ini-файла от записи появится предупреждающее сообщение. Однако при выходе не будет показано предупреждение, так как установка флага только для чтения ini-файла может использоваться для заморозки настроек.

На операционных системах Vista или более новых Notepad2 по умолчанию не может записывать файлы внутри дерева каталогов %PROGRAMFILES%. Вам нужно переместить файл Notepad2.ini в Вашу директорию %APPDATA% (введите %APPDATA% в строке адреса Windows Explorer, чтобы перейти в эту папку), или отредактируйте вручную файл Notepad2.ini внутри директории программ (требует повышенных привилегий администратора), и добавьте следующий текст сразу в начало файла:

[Notepad2]
Notepad2.ini=%APPDATA%\Notepad2.ini

Это переместит файл Notepad2.ini в Ваш каталог профиля пользователя.

Начиная с версии 3.0 настройки Notepad2 сохраняются в формате Unicode. Если Вы хотите использовать свой старый ini-файл предыдущих версий на новой версии Notepad2? то он все еще остается закодированным в старой версии кодировки. Это приводит к тому, что некоторые настройки сохраняются неправильно (последние файлы с именами в Unicode, строки поиска Unicode, имена шрифтов Unicode).

Чтобы исправить эту проблему, откройте в Notepad2 ini-файл (Ctrl+F7), преобразуйте его в Unicode (меню File -> Encoding -> Unicode), и сохраните его.

Вы могли бы также повторно использовать свой ini-файл в ранней кодировке не-Unicode, что сохранит несколько килобайт места на диске. Но в этом случае Вы не сможете сохранить в этом файле данные Unicode (выше упомянутые элементы настроек).

Новый ini-файл всегда создается в формате Unicode.

Notepad2 сначала пытается найти ini-файл с тем же именем, что и исполняемый фал, т. е. файл Notepad2.ini. Каталог программ, где находится Norepad2 это первое место, где осуществляется поиск, затем поиск идет в папке %APPDATA%, и затем к директориях, указанных в переменной окружения %PATH%, и в директории Windows.

По умолчанию если не найден существующий конфигурационный файл при поиске по вышеуказанным правилам, то место для нахождения ini-файла устанавливается в каталок программы Notepad2, и для имени используется имя выполняемого файла. Однако ini-файл будет создан только если настройки будут сохранены вручную (F7).

Если относительное имя файла указано в командной строке как альтернативный ini-файл, то будут использоваться те же самые правила поиска (используйте что-то типа Notepad2.exe /f "%APPDATA%\MySettings.ini" для сохранения ini-файла в определенной директории, или просто используйте Notepad2.exe /f "%APPDATA%").

Чтобы позволить каждому пользователю Вашей системы иметь свою собственную конфигурацию Notepad2, создайте один центральный файл Notepad2.ini (или ini-файл с тем же основным именем, что и исполняемый файл Notepad2) либо в каталоге программы Notepad2, либо в директории Windows (последний метод предпочтительнее, если в Вашей системе имеются несколько копий исполняемого файла). Теперь вставьте нечто подобное в следующей секции конфигурации центрального ini-файла:

[Notepad2]
Notepad2.ini=%WINDIR%\Notepad2-%USERNAME%.ini

Это создаст отдельный файл в именем Notepad2-userxy.ini в каталоге Windows для каждого пользователя. Чтобы сохранить ini-файл в профиле пользователя вместо директории Windows, используйте что-то типа этого:

[Notepad2]
Notepad2.ini=%APPDATA%\Notepad2.ini

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

Пользовательская конфигурация схем синтаксиса может быть импортирована или экспортирована в диалоге Customize Schemes: просто используйте подходящие кнопки, если отображается окно диалога (Ctrl+F12). Имейте в виду, что когда настройки импортированы, то отсутствующие секции ini-файла будут пропущены, и не будут восстановлены в значения по умолчанию, так что нельзя импортировать ini-файлы, содержащие только выбранные настройки схемы.

Чтобы вернуть обратно сообщения оповещения, отображение которых было подавлено установкой опции "Don't display this message again" ("больше не отображать это сообщение"), загрузите ini-файл (Ctrl+F7), и удалите все значения в секции [Suppressed Messages].

Чтобы блокировать опцию "Don't display this message again" для отдельных оповещений, установите значение соответствующей опции ini-файла в значение 2. Например, MsgNotFound=2 гарантирует, что будет всегда отображаться сообщение "Text not found" ("текст не найден").

Вы можете заметить, что ini-файл Notepad2 имеет секцию конфигурации с именем [Settings2]. Эта секция предоставляет продвинутые опции настроек программы Notepad2, и их можно изменять только вручную. Нажмите Ctrl+F7, чтобы открыть ini-файл в Notepad2. Большинство изменений вступят в силу после перезапуска Notepad2.

Элемент настройки Описание
StickyWindowPosition
ReuseWindow
SingleFileInstance
Эти элементы управляются Notepad2.
MultiFileArg Управляет, разрешается ли Notepad2 открыть несколько файлов через командную строку (когда установлено 1). Поведение по умолчанию - принять только один файл, без заключенных в кавычки пробелов, наподобие поведения стандартного Windows Notepad (когда установлено в 0). Опции командной строки + и - могут использоваться для отмены этой настройки на лету, и опция /z дает тот же эффект, как и опция -.
RelativeFileMRU Установите в 0, чтобы запретить сохранять как относительные имена последних сохраненных файлов, которые находятся на том же диске, что и Notepad2.exe. Значение по умолчанию 1 (разрешено).
PortableMyDocs Если установлено в 1, то последние файлы и другие настройки пути, ссылающиеся на дерево папки Мои Документы (My Documents) сохраняются с путями, относительными к папке My Documents. Это улучшает портируемость использования флешек USB между Windows XP и более свежими версиями Windows, которые используют другие места расположения папки My Documents. Эта настройка не дает эффекта, если сам Notepad2.exe находится в папке My Documents (или в её подкаталоге). Значение по умолчанию 1 (разрешено), если RelativeFileMRU разрешено, и иначе 0 (запрещено).
DefaultExtension Задает расширение по умолчанию для сохраняемых файлов (пропускается лидирующая точка, тут нужно ввести что-то типа txt или html).
DefaultDirectory Задает каталог по умолчанию для диалога открытия и сохранения, используется если не был открыт файл. Пути могут быть относительными к каталогу программы Notepad2.
FileDlgFilters Задает фильтры для диалогов открытия и сохранения (пример: Text Files|*.txt;*.wtx;*.log;*.asc;*.doc;*.diz;*.nfo|All Files|*.*).
FileCheckInverval Интервал (в миллисекундах) чтобы проверить внешние модификации открытого в настоящий момент файла. Значение по умолчанию 2000 мс.
AutoReloadTimeout Таймаут (в миллисекундах) для ожидания перед автоматической перезагрузкой модифицированных файлов. Значение по умолчанию 2000 мс обычно предотвращает от конфликтов чтения/записи.
FileLoadWarningMB Предел размера в мегабайтах, чтобы отобразить сообщение предупреждения при открытии больших файлов. Значение 0 запрещает это предупреждение.
OpacityLevel Уровень прозрачности (в %) окна Notepad2, когда активен transparent mode.
NoFadeHidden Установите в 1, чтобы запретить исчезновение скрытых объектов в списке файлов (как Favorites, и т. д.).
ToolbarLook Определяет вид отключенных кнопок на панели управления. 0 означает настройку по умолчанию (темно-серый и несколько зернистый на Windows Vista и Windows 7; недоступно на Windows 2000), 1 означает раскрашенный и скрытый (значение по умолчанию для Notepad2 4.2.25 на Windows XP и более новых версиях Windows), и 2 означает светло-серый стиль Windows XP (значение по умолчанию для Notepad2 4.2.25 на Windows 2000; получается вид лучше системных настроек по умолчанию на Windows Vista и Windows 7).
SimpleIndentGuides Установите в 1, чтобы предотвратить направляющие отступа от перескоков между пустыми строками.
NoHTMLGuess Установите в 1, чтобы запретить простое детектирование HTML/XML для файлов без расширений.
NoCGIGuess Установите в 1, чтобы запретить простое детектирование языка для файлов cgi и fcgi.
NoFileVariables Установите в 1, чтобы запретить анализ переменной файла (см. вопрос "Как использовать базовые файловые переменные Emacs?"). Анализ тега кодировки можно запретить через меню File -> Encoding -> окно диалога Default.
filebrowser.exe Задает путь внешней программы, которая запускается, когда нажата кнопка тулбара Browse. По умолчанию это metapath.exe, который является авторским плагином браузера файлов (можно найти в Project Archive [10]). Вы можете задать дополнительные опции командной строки, и файл, открытый в настоящее время в Notepad2, будет добавлен как последний параметр командной строки.
Замечание: из-за специальной обработки кавычек Win32 API для ini-файла, имена путей с пробелами должны быть обрамлены дважды двойными кавычками (""path to/file.exe""), но должны использоваться двойные кавычки один раз, если присутствуют дополнительные аргументы командной строки("path to/file.exe" /arg).
DateTimeShort
DateTimeLong
Задает короткий/длинный форматы даты и времени. Это параметр формата, переданный в функцию strftime() [11]. Имейте в виду, что установка локали будет English (потому что для Notepad2 использовалась English Visual C++ Runtime Library).
TimeStamp Регулярное выражение, используемое для обновления меток времени (см. вопрос "Как обновить в тексте метки времени?").
WebTemplate1
WebTemplate2
Не документировано, использовать опасно.
ShellAppUserModelID
ShellUseSystemMRU
Управляет поведением списками MRU (Most Recently Used) системы, панели задач и списка перехода (jump list). См. подробное объяснение в статье Replacing Windows Notepad [2].

Автор не занимается утомительными процедурами поиска, тестирования, упаковки и размещения на хостинге транслированных версий Notepad2. Переключение на поддержку списка ссылок не оказалось намного лучше: многие ссылки на файлы выглядели сомнительными, и они нуждались в постоянном обновлении при каждом новом релизе транслированных файлов.

Автор часто получает e-mail-ы с сообщениями о лингвистических ошибках, которые не были исправлены авторами трансляций.

По этой причине автор решил отказаться от поддержки переведенных версий Notepad2. Что-то может поменяться в этом плане, если у автора будет больше свободного времени, или появится кто-нибудь, заинтересованный в поддержке международного веб-сайта Notepad2.

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

Ответ на все эти вопросы: ДА! Notepad2 можно использовать для частных, образовательных или коммерческих целей. Также Вы можете модифицировать или транслировать Notepad2 и распространять свои собственные измененные версии, пока это соответствует условиям, обозначенным в предоставленном файле License.txt.

Пожалуйста не берите плату за любое распространение Notepad2.

Автор не рекомендует объединять Notepad2 с другими приложениями, потому что некоторые пользователи могли бы захотеть использовать другой редактор текста, и предоставление ссылки на сайт программы Notepad2 гарантировало бы для пользователей получение самой свежей версии программы.

Будет ли она работать быстрее? Да, теоретически. Обычно 32-битный машинный код обрабатывается традиционным способом на CPU 64-битной Windows, но это все еще создает дополнительную нагрузку на эмулятор WOW64. Это отличие в обиходе вероятно не будет иметь значения.

Можно ли открывать фалы большего размера? Нет, нижележащий исходный код компонента редактирования Scintilla [7] работает внутри с 32-битными целыми числами, так что существуют те же ограничения по размеру для 32-битной и 64-битной сборок Notepad2.

Улучшенная интеграция с системой! WOW64 File System Redirector может давать некоторые проблемы. Есть сложные правила [12], каким образом осуществляется перенаправляемый доступ к системным файлам для приложений WOW64, так что для некоторых специальных случаев могут понадобиться специальные знания этих правил, чтобы использовать 32-битную версию Notepad2 на 64-битной машине.

Так почему не сделать временное отключение WOW64 File System Redirector, чтобы 32-битная версия Notepad2 чувствовала себя как дома на 64-битных системах? Выключение File System Redirector постоянно препятствуется со стороны Microsoft. Временный запрет его всякий раз, когда файл открыт, может хорошо работать только из одного из каталогов %windir%\System32 или %windir%\SysWOW64. Однако автору пока не известно корректное решение для ситуаций, когда файлы доступен в обоих директориях %windir%\System32 и %windir%\SysWOW64. Все равно требуется неоднозначное использование виртуальной директории %windir%\Sysnative для доступа к 64-битной файловой системе из 32-битных приложений.

Итак, если подвести итог:

Использование 32-битных сборок Notepad2 не создаст проблемы на 64-битных системах, если файлы находятся вне системных директорий.

Доступ к 64-битным системным файлам из 32-битной версии Notepad2 должен происходить через виртуальную директорию %windir%\Sysnative (это также работает для 32-битной версии metapath). Имейте в виду, что File System Redirector пропускает некоторые директории, включая %windir%\system32\drivers\etc, место расположения известного файла hosts.

Если идет регулярная работа с 64-битными системными файлами, или утилита setup используется для замены через реестр стандартного Windows Notepad (см. [2]), то 64-битная сборка Notepad2 предпочтительнее (т. е. это даже требуется для последнего случая).

Notepad2 Setup Tool может использоваться для замены стандартного редактора текста Windows Notepad на редактор Notepad2, с помощью чистого, не нарушающего работу системы метода, основанного на реестре (подробнее см. [2]).

Стандартный редактор Windows Notepad может быть восстановлен путем деинсталляции Notepad2 через Панель Управления (Control Panel). Деинсталляция также удалит настройки Notepad2, сохраненные в %APPDATA%\Notepad2.ini, поэтому сделайте бекап этого файла вручную, если хотите сохранить эти настройки. Установка более новой версии Notepad2 не перезапишет существующие настройки.

Утилита установки понимает опции командной строки /QUIET (или её эквивалент /SILENT) и /EXTRACT. Имейте в виду, что режим QUIET (который не задает лишних вопросов при установке) не поддерживает приглашение UAC (User Account Control). Эти опции также работают как часть имени файла, например утилита установки может быть переименована в "Notepad2-Install-Silent.exe" чтобы она всегда запускалась в режиме QUIET.

Чтобы списки перехода Windows 7 (jump lists) работали правильно, окна Notepad2 назначаются на пользовательские AppUserModelID с помощью утилиты установки, по этой причине могут появиться на панели задач несколько иконок Notepad2.exe. Чтобы исправить это, сначала откройте новое окно Notepad2, и затем привяжите его к панели задач из контекстного меню кнопки панели задач Notepad2.

© Florian Balmer 1996-2014

[Ссылки]

1. Notepad2 Frequently Asked Questions (FAQs) site:flos-freeware.ch.
2Замена Windows notepad на notepad2.
3. HTML Tidy Legacy Website site:tidy.sourceforge.net.
4. Artistic Style 3.0 site:astyle.sourceforge.net.
5. The Notepad file encoding problem, redux site:msdn.microsoft.com.
6. Notepad2 Encoding Tutorial site:flos-freeware.ch.
7. A free source code editing component site:scintilla.org.
8. Notepad2.txt Regular Expression Syntax site:flos-freeware.ch.
9. Emacs Variable Index site:gnu.org.
10. Project Archive site:flos-freeware.ch.
11. strftime, wcsftime site:msdn.microsoft.com.
12. File System Redirector site:msdn.microsoft.com.

 

Добавить комментарий


Защитный код
Обновить

Top of Page