Редактор vkNotepad

Общие замечания

Редактор может работать с текстовыми файлами в следующих кодировках:

(AW) ASCII Windows-1251 -- русская кодировка Виндовс
(AD) ASCII CP-866 (DOS) -- русская кодировка, которая использовалась в системе MS DOS
(AK) ASCII KOI8-R (NET) -- русской кодировка в системах типа Юникс
(UB) Unicode BE BOM -- двухбайтовые юникоды с маркером, записанные так, что старший байт справа, как принято в Windows
(UL) Unicode LE BOM -- двухбайтовые юникоды с маркером, записанные так, что младший байт справа, как принято в Java
(FJ) UTF-8 Java mark -- специальная кодировка символов, файл имеет маркер, введенный в Java, устарела
(FG) UTF-8 Gen. mark -- специальная кодировка символов, файл имеет стандартный маркер из трех байтов
(FN) UTF-8 No mark -- специальная кодировка символов, файл не имеет маркера

Кодировка при загрузке текста из файла с маркером определяется автоматически. Если маркера в файле нет, то подразумевается AW кодировка. Соответственно кодировки (AD), (AK), (FN) в файле без маркера не распознаются. Редактор позволяет заказать повторное считывание файла с принудительным указанием одной из этих трех кодировок. При спасении текста (то есть записи в файл) используется та кодировка, которая указана пользователем заранее. Она показывается в титульной строке окна редактора (смотри далее).

Признак конца строки также должен быть заказан заранее. Он может быть выбран из трех возможностей: Java (LF), Windows (CR+LF), Apple (CR). Текущие варианты заказа кодировки и признака конца строки указываются в титульной строке в 3 и 4 позициях. Следует знать, что сам редактор работает с юникодами BOM LE (UL) и с концом строки LF. Перекодировка происходит в момент записи текста в файл или в момент считывания текста из файла.

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

[Shift]+[стрелки] - выделяет часть текста, отмеченный текст можно затем использовать разными способами
[Ctrl]+[C] - засылает отмеченный текст в буфер
[Ctrl]+[X] - уничтожает отмеченный текст с одновременной засылкой его в буфер.
[Ctrl]+[V] - вставляет текст из буфера в текст редактора на позиции курсора.
[Ctrl]+[A] - выделяет сразу весь текст редактора.
[Ctrl]+[Z] - отменяет последнюю сделанную операцию с текстом редактора (Undo)
[Ctrl]+[Y] - восстанавливает последнюю отмененную операцию (Redo)
[Ctrl]+[H] - эквивалентно клавише Backspace
[Page Up] - поднимает текст в окне вверх так, что нижней становится строка над верхней в старом окне.
[Page Down] - опускает текст в окне вниз так, что верхней становится строка под нижней в старом окне.
[Home] - ставит курсор в начало строки
[End] - ставит курсор в конец строки
[Ctrl]+[Home] - ставит курсор в начало текста
[Ctrl]+[End] - ставит курсор в конец текста
[F10] - активирует Меню (вместо клавиши [Alt])

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

Ниже дано описание всех операций, выполняемых по кнопкам меню. Горячие клавиши для этих операций указаны в меню справа от названия кнопки. Далее названия основного раздела меню и его подраздела разделяются с помощью наклонной черты (знак деления). Итак

Меню: File

File / Open - загрузка текста в редактор из выбранного файла, имя файла выбирается с помощью менеджера файлов из списка или вводится в строку ввода с клавиатуры. Если файл существует, то текст из него переписывается в редактор. Но можно указать имя несуществующего файла, в этом случае имя запоминается, но в редактор загружается пустой текст, то есть ни одного символа, старый текст при этом исчезает. Вновь набитый текст при сохранении (меню "Save") попадет в новый файл, который будет создан как раз в этот момент. При запуске программы без аргумента предполагается, что открыт новый файл с именем "newtext.txt" в текущей папке. Исходно этот файл может не существовать, тогда он записывается при использовании меню "Save". Если же такой файл уже существует, то он будет перезаписан. Однако, если использовать меню "Save as", или повторно меню "Open", то такой файл может и не появиться. Операция "Save as" переопределяет имя исходно заданного несуществующего файла. Выбор файла с помощью менеджера файлов начинается с той папки, из которой последний раз был выбран файл.
Важно также знать, что программа способна брать имя файла для записи текста из командной строки, что позволяет связать ее с разными расширениями файлов и автоматически запускать при выборе файла с данным расширением. Однако, так как она работает через интерпретатор (виртуальную машину Java), то связывать с расширением нужно командный файл vkNP.bat, в котором должна быть набита одна строка
java.exe -jar folder\vkNotepad.jar %1
где слово folder надо заменить на адрес папки, в которой находится программа, если эта папка не прописана в списке папок, в которых ищутся файлы. А сам bat-файл надо поставить в корневую папку системного диска. Для тех, кто использует Total Commander, можно в качестве команды запуска просто скопировать указанную строку по кнопке меню "Associate with". Однако, при работе со словарем (проверкой правописания) режим запуска программы по расширению не удобен, потому что словарь автоматически не загружается. Если необходимо просто посмотреть содержимое файла, то удобнее использовать бесплатную программу "Universal Viewer". Кроме того, в программу можно загружать файлы с разными расширениями.
У этой операции есть и еще один специальный режим. При выборе файлов с расширением jpg, png, gif программа кодирует картинки из файла в текст и загружает этот текст в окно текстового редактора. Этот текст затем может быть использован для передачи картинки текстом, если это необходимо. В частности таким образом можно передать картинку в окна текстовых редакторов программ, работающих в интернете. Подробнее об этом см. в описании операции [Show/Image].
Если открывается несуществующий файл, то кодировка при этом не определена, она сохраняется той, какая была при работе с предыдущим файлом. Если необходимо, пользователь сам должен изменить кодировку (см. далее).

File / reOpen - быстрая загрузка текста в редактор из того файла, который был выбран при предыдущей загрузке. Эта операция может использоваться в тех случаях, когда в процессе редактирования были допущены ошибки и необходимо восстановить исходный текст. Кроме того, некоторые операции меняют текст непосредственно в файле, из которого выполнена загрузка. Чтобы посмотреть изменения надо заново загрузить текст из файла. Она полезна также, если необходимо просто заново редактировать тот файл, с которым работали последний раз.

File / Open from List - загрузка текста в редактор из файла, который выбирается из специального списка. Этот список формирует сам пользователь. В списке в каждой строке запоминаются название файла, полный путь к файлу и позиция курсора на момент записи файла в список. Список показывается в отдельном окне дополнительного редактора и его можно редактировать. Выбор нужного файла производится установкой курсора на нужной строке и нажатием клавиши [Esc], после чего указанный файл загружается в основной редактор и в окне показывается то место, в котором находился курсор при записи файла в список операцией "Save to List". Слово, на котором находился курсор высвечивается как отмеченное. Если выйти из дополнительного редактора по кнопке крестика [x] в правом верхнем углу его окна, то ничего не происходит.
Важно также знать, что в список автоматически попадают текущие файлы не только при операции спасения "Save to List", но и при операции "Save as". При этом список постоянно растет, но ненужные строки пользователь может уничтожить сам обычным редактированием. А также может добавить новые строки. Можно при редактировании списка указывать имена несуществующих файлов. В этом случае все работает так же, как при операции Open.

File / Save - запись текста в окне редактора в файл. Эта операция необходима только на случай сбоев в питании компьютера. Ее можно выполнять многократно для спасения части набитого текста. Если неожиданно компьютер выключится, то спасенная часть текста не пропадет. После записи файла в титульной строке справа указывается время записи. Это позволяет в любой момент определить как давно в последний раз был записан файл. При выходе из редактора через меню "Exit", текущий файл спасается автоматически. Если необходимо отказаться от этой операции, то окно редактора надо закрывать по кнопке крестика [x] в правом верхнем углу. Текст также спасается при открытии нового файла, но только при условии, что заказанный файл существует. См. выше описание операции "Open".

File / Save as - запись текста в редакторе в новый файл. Имя файла выбирается с помощью менеджера файлов из списка или вводится с клавиатуры в строку для имени файла. Эта операция позволяет начать со старого письма и после его редактирования записать новый файл с новым письмом. После выполнения этой операции, предыдущая операция выполняется в новый файл, так как он становится текущим файлом. Одновременно данные о файле попадают в список (см. следующую операцию).

File / Save to List - запись в текущий файл текста в редакторе и одновременная запись пути к файлу и текущей позиции курсора в специальный список файлов для более быстрого поиска привелегированных файлов. Эта операция особенно полезна при чтении книг и больших статей, потому что в список также записывается позиция курсора, которую можно поставить в то место, где было закончено чтение. Запись всегда производится в первую строку списка и состоит из трех полей: названия, полного пути к файлу и позиции курсора, разделенных символом "|". Поле, соответсвующее названию, изначально пустое и его заполняет сам пользователь. Одновременно пользователь может редактировать весь список и удалять ненужные строки. Чтобы записать изменения закрывать окно редактора списка нужно по клавише [Esc].

File / Encoding - эта операция позволяет переопределить текущий режим кодировки текста при записи его в файл. Можно выбрать любую из 8-ми кодировок, указанных выше: AW, AD, AK, UB, UL, FJ, FG, FN. Текущая кодировка в виде указанных выше букв указывается в титульной строке на третьей позиции после имени файла. Сама по себе эта операция ничего не делает. Запись файла происходит по двум предыдущим операциям. Но при этом запись будет учитывать новый выбор. Тем самым можно прочитать файл в одной кодировке, а записать его в другой кодировке. В процессе работы редактор работает с юникодами. Если в тексте используются юникоды, и он записывается как ASCII, то результат может быть непредсказуем. Однако при использовании русских символов все нормально.

File / Line ending - эта операция позволяет выбрать способ записи конца строки при записи текста из редактора в файл. Можно выбрать из трех возможностей Java (LF), Windows (CR+LF), Apple (CR). Текущий способ окончания строк высвечивается в четвертой позиции после имени файла в виде букв J или W или A.

File / reOpen as - эта операция позволяет повторить попытку чтения файла, если кодировка не определилась автоматически. Это происходит в случае трех кодировок AD, AK, FN. Можно выбрать одну из них и файл будет считываться в этой кодировке принудительно. Наиболее массово эта операция необходима для кодировки FN, которая часто используется в интернете.

File / Exit - выход из редактора с сохранением параметров и с автоматической записью в текущий файл текущего текста в редакторе. Если редактор был запущен без имени файла, то текст сохраняется в файл с именем newtext.txt. Если не нужно записывать новый текст в файл, то редактор необходимо закрыть кликом кнопки с крестиком в правом верхнем углу окна программы. При этом параметры тоже не сохраняются.

Меню: Edit

Edit / Find - поиск набранной комбинации символов от позиции курсора вниз. Символы вводятся с клавиатуры в окне ввода. Поиск проводится строго по набранной комбинации, то есть с учетом регистра и независимо от того - часть слова или нет. Если символы не найдены, выдается сообщение.

Edit / Find Next - повторный поиск той же комбинации символов.

Edit / Replace - эта операция позволяет автоматически и быстро заменить одну комбинацию символов на другую в тексте редактора. Обе комбинации надо набить в строках ввода специальной формы. При этом можно вводить не только символы клавиатуры, но и любые юникоды. Последние вводятся в виде (#123 ), то есть признаком юникода служит символ (#), после него идет десятичный номер юникода, который заканчивается символом пробела. Ясно, что сами символы пробела и # тоже надо задавать юникодами 32 и 35. Вот пример; если надо заменить знаки <br> в начале каждой строки на знаки <br>, то пишем: заменить [#10 <br>] на [#10 <br>] и все замены будут сделаны. При этом замена будет происходить только в начале строк и нигде больше. Если нужно просто удалить какую-то комбинацию символов, то во втором окне ничего не пишем.

Edit / Info - информация о параметрах текста и окна редактора, показывается в отдельном окне.

Edit / Go to brne - ставит курсор на строку с заданным номером. Номер задается в отдельном окне.

Edit / Input by code - эта операция позволяет вводить символы, которых нет на клавиатуре, методом указания их юникодов. Таких символов может быть очень много, если использовать кодировку юникодов. В ASCII файл много символов не запишешь. Для правильного ввода символов нужно знать их юникоды. Но таблицу юникодов и их символов можно записать с помошью самого редактора. Если нужно вводить несколько разных символов, то они разделяются запятой, а если несколько подряд, то через знак тире можно указать первый и последний.

Edit / Input Date - эта операция записывает в текст текущие дату и время в специальном формате на позиции курсора.

Edit / Input HTML Tag - эта операция позволяет быстро вводить в текст теги языка HTML, что очень удобно при написании кода страниц интернета. Она открывает новое окно второго редактора, в котором показывает различные теги и их комбинации, каждую на отдельной строке и с комментарием. Необходимо поставить курсор на нужный тег в любое место (но раньше знака "|", с которого начинается комментарий) и закрыть окно кликом крестика или нажать клавишу [Esc]. Нужный тег появится в тексте на позиции курсора. Сам курсор остается на старой позиции. Более того, в новой строке второго редактора в любом месте можно набить дополнительный текст, закрыв его знаком "|" и этот текст тоже можно будет вставлять в основной текст. Но это работает только на один сеанс редактора. Для модификации текста на все сеансы надо сделать Update тегов в меню Format / Update.

Edit / Input text - эта операция аналогична предыдущей, но она позволяет быстро вводить в текст редактора произвольные фрагменты текста, заранее спасенные в отдельном (внутреннем) файле. Она открывает новое окно второго редактора, в котором показывает различные фрагменты текста, каждый на отдельной строке. Если фрагмент многострочный, то признак конца строки кодируется символом (`), который редко используется при печати. Необходимо поставить курсор на нужный текст в любое место и нажать клавишу [Esc]. Выбранный фрагмент появится в основном тексте на позиции курсора. При этом символы (`) будут снова заменены на признаки конца строки. Сам курсор остается на старой позиции. Более того, в новой строке второго редактора в любом месте можно набить дополнительный текст и этот текст тоже можно будет вставлять в основной текст. Если закрыть окно выбора текста иконкой крестика [x] в правом верхнем углу, то ничего не будет.

Edit / Store text - эта операция противоположна предыдущей, она позволяет быстро запомнить выделенный фрагмент текста в отдельном (внутреннем) файле для того, чтобы потом его можно было быстро вставить в текст в другом месте. В паре Copy / Paste эта операция эквивалентна Copy, но копирование происходит во внутренний буфер редактора, в котором может быть много вариантов. Новый фрагмент всегда появляется в первой строке, причем признаки конца строки автоматически заменяются на символ (`).

Меню: Format

Format / Change Font / Input - выбор имени, типа и размера фонта. Имя задается текстом. Список всех имен, имеющихся на данном компьютере, можно посмотреть средствами операционной системы, а тип и размер задаются двумя числами. При этом тип имеет значения 0 - нормальный текст, 1 - жирный текст, 2 - наклонный текст. Второе число указывает на размер текста в единицах px.

Format / Change Font / Choose - выбор имени, типа и размера фонта из списка. Достаточно поставить курсор на строку с выбранным фонтом и нажать [Esc]. Сам список можно редактировать обычным образом. Отредактированный список действителен на один сеанс работы. Но если сделать Update списка, то новый список запоминается на следующий сеанс.

Format / Wrap brnes - меняет режим переноса строк, на противоположный. В первом случае, если длина строки больше ширины окна, то все слова переносятся на другую строку автоматически. Во-втором, не переносятся и будут не видны. Повторный вызов отменяет предыдущий режим. Текущее состояние режима работы редактора по переносу слов указывается в титульной строке во второй позиции после имени файла: W - если слова переносятся и L - если не переносятся.

Format / Set Tab - устанавливает длину отступа при использовании клавиши (символа) [Tab] числом пробелов.

Format / Set Margin - устанавливает размеры полей между границами текстового окна и самим текстом. Эти размеры можно менять в зависимости от настроения. Они вводятся в специальной строке ввода четырьмя числами (сверху, слева, снизу и справа)

Format / Set Colors - позволяет настроить цвета текста и фона, курсора, а также выделенного текста и фона. Всего 5 цветов. Каждый цвет задается тремя числами в диапазоне от 0 до 255, которые определяют интенсивности красной, зеленой и синей компонент.

Format / Update - позволяет запомнить измененный (отредактированный) текст, который появлялся в окнах Списка фонтов, Списка html тегов, Программ расчетов калькулятора и Текстов на картинку по выбору.

Format / Adjust / Browser - эта операция позволяет установить интернет браузер по умолчанию, который запускается в операции Execute (см. далее) при указании на слово "вэб-ссылку", начинающееся с заголовка "http://". Программа в менеджере файлов первоначально показывает папку, где находился уже заданный ранее браузер (исходно C:\Program Files\Internet Explorer|iexplore.exe). Пользователь может выбрать любой другой браузер, установленный на компьютере.

Меню: Convert

Convert / Eng -> Rus - перевод выделенного текста в русский язык. Предполагается, что набивался русский язык, но режим клавиатуры был установлен на английский. Эта операция исправляет ошибку.

Convert / Rus -> Eng - перевод выделенного текста в английский язык. Предполагается, что набивался английский язык, но режим клавиатуры был установлен на русский. Эта операция исправляет ошибку.

Convert / Lower -> Upper - перевод выделенного текста в верхний регистр букв, все буквы после операции оказываются в верхнем регистре

Convert / Upper -> Lower - перевод выделенного текста в нижний регистр букв, все буквы после операции оказываются в нижнем регистре.

Convert / Keyboard switch - независимое от операционной системы переключение клавиатуры с английской на русскую или обратно, повторный вызов отменяет предыдущий режим. Текущее состояние клавиатуры указывается первым символом после имени файла в титульной строке. E - для английской клавиатуры, R - для русской клавиатуры.

Меню: Show

Show / Brackets - эта операция высвечивает текст между парными скобками. Если в тексте есть скобки типа ")" или "]" или "}", то нужно поставить курсор перед скобкой и нажать клавишу F11. При этом высветится весь текст слева до парной открывающей скобки такого же типа. Операция полезна при написания кода на некоторых языках программирования.

Show / Figure - эта операция показывает текст в виде графика. Для этого текст очевидно должен представлять собой колонки чисел. График делается автоматически и не требует никакой настройки. Для правильной работы операции необходимо, чтобы все строки с числами содержали одинаковое число колонок, причем предполагается, что в первой колонке записан аргумент, а в остальных колонках - одна или несколько функций от одинакового аргумента. Если в файле есть нецифровые строки, то они пропускаются. Очевидно, что если в файле совсем нет чисел, то операция ничего не делает. Разные кривые рисуются разными цветами. Порядок первых цветов кривых такой: черная, красная, синяя, зеленая, фиолетовая, серая, коричневая, бардовая, темно-синяя, черная, далее цвета циклически повторяются. Картинка с графиком автоматически спасается в файл с тем же полным именем, включая папку, из которого были загружены числа, но с расширением "png". Если данные были скопированы в редактор из другого файла и файл в программе не открыт, то картинка спасается в папку программы с именем "Figure.png". Так может быть только в самом начале работы программы. Если же файл был открыт и переписан, то картинка все равно спасается в файл с тем именем, какой был открыт. Если нужно изменить имя, то предварительно нужно спасти новый текст в файл с другим именем с помощью операции "Save as". Параметры графика можно настроить с помощью следующей операции.

Show / Fig settings - Эта операция позволяет изменить параметры графика, которые используются при его рисовании. Параметры разделяюся на числа и подписи. Чисел всего 15 и они вводятся в специальной форме, содержащей 15 подписанных окон ввода. Подписи на английском языке означают следующее: [1] Ширина графика в пикселях, [2] Высота графика, [3] Длина горизонтальной оси аргумента, [4]. Длина вертикальной оси функции, [5]-[6] X и Y координаты начала координат относительно левого нижнего угла области графика, [7] Способ задания осей. В общем случае это пятиразрядное число, первые 4 разряда которого (слева направо) указывают на способ представления осей: 0 - стандартный (левая и нижняя с числами), 1 - ось отсутсвует, 2 - нестандартный (правая и верхняя оси с числами). 5-й разряд указывает на способ рисования рисок: 0 риски внутрь, 1 риски наружу. Левые нули в числе можно не писать, так что 00001 и 1 одно и то же, [8] Длина коротких рисок, [9] Длина длинных рисок, [10] размер шрифта для написания чисел, [11] Номер шрифта, один из пяти возможных, шрифты можно проверить эмпирическим путем, [12] Тип текста 0 - прямой, 1 - жирный, 2 - наклонный, 3 - жирный и наклонный [13] Размер маркера, если равен нулю, то кривые чертятся линиями, в противном случае каждая точка отмечается маркером, [14] определяет тип маркера для первых 5 кривых, если его размер не равен нулю. Это есть 5-разрядное целое число, в котором каждый разряд может иметь значения от 0 до 4. Все 5 разрядов необходимо задавать, причем левый (старший) разряд относится к первой кривой, следующий слева - к второй кривой и так далее. Например, [14]=1234 означает линию для первой кривой (левый разряд = 0), пустой прямоугольник для второй кривой, сплошной прямоугольник для третьей кривой, пустой круг для четвертой кривой, и сплошной круг для пятой кривой. Остальные кривые задаются теми же маркерами в цикле, [15] Число подписей. Если последний параметр не равен нулю, то необходимо задать сами подписи. Они задаются в отдельном файле, по две строки на каждую подпись, первая из которых содержит 3 числа: x,y координаты левого нижнего угла текста и отклонение размера шрифта от стандартного, задаваемого параметром 10. Вторая строка содержит саму подпись. Эти строки можно отредактировать в специальном редакторе, который открывается в отдельном окне. Если вам необходимо сохранить изменения, то нужно закрыть редактор кнопкой [Exit]. Если не нужно ничего менять, то кликаете крестик в правом верхнем углу.

Show / Slide show - Эта операция позволяет показать слайд шоу по картинкам или фотографиям как на компьютере, так и в интернете. Для этого в тексте редактора должны быть записаны имена файлов с картинками в форматах GIF, JPG, PNG. Картинки могyт иметь произвольный размер и они показываются как есть, без масштабирования. Поэтому очень большие картинки нужно масштабировать заранее. Сканирование текста начинается с той строки, на которую показывает положение курсора. Его можно переставить в любое место. Редактор пропускает все строки, в которых нет знака (#) в первой позиции. Если в строке есть такой знак, то считывается имя файла сразу после этого знака и до знака (|). То есть имя файла должно находиться между знаками (#) и (|). Первый знак должен быть в первой позиции, а за вторым знаком может быть любой текст, он игнорируется. Далее у имени файла проверяется первый знак. Если он равен ($), то он тоже не учитывается и имя файла начинается с третьего знака в строке. Но этот знак указывает на то, что файл надо искать по имени в папке с названием [resources], которая должна находиться в той же папке, где находится сама программа редактора. Если же второй знак - не ($), то имя файла должно представлять собой URL. URL (universe resource locator) - это адрес файла в универсальной форме. Файлы в интернете задаются как обычно http://a/b/c.jpg, а файлы на локальном компьютере надо задавать в виде File:C:/a/b/c.jpg. Обращаю внимание, что все символы обратной наклонной черты "\" надо заменить на символы прямой наклонной черты "/". Это просто связано с особенностью программы. Навигация выполняется следующим образом: левая или верхняя стрелки - движение назад, [Esc] прекращение показа, остальные клавиши - движение вперед. Если в строках указаны файлы, которых нет, то такие строки пропускаются. Если ничего не указано - ничего и не будет. Протокол показа можно набить в редакторе и затем спасти в файл, в последующем все будет работать автоматически. Эта операция сделана таким образом, что она способна показывать файлы default.vks программ фото-шоу в форме Java аплета. Фактически эти файлы можно как раз и набивать в редакторе и сразу проверять размеры картинок и их последовательность. Она не накладывает тексты и не играет музыку, но это здесь совсем не нужно. В отличие от анимации, она может показывать большие картинки в натуральную величину с прокруткой. Масштабирование на экран пока отсутсвует.

Show / Slide animation - Эта операция является в каком-то смысле развитием или модификацией предыдущей операции. Она тоже показывает слайд шоу по картинкам или фотографиям как на компьютере, так и в интернете. Но делает она это автоматически по протоколу, который должен быть записан в файл. А полное имя файла протокола программа берет из окна редактора, как раз из той строки, где находится курсор. Таким образом в тексте редактора может находиться полный список файлов с протоколами показа анимации, набитый таким образом, что имя каждого файла находится на отдельной строке. Выбор нужной анимации делается установкой курсора на нужной строке. Этот список можно также загрузить в редактор из файла. Протокол записывается по определенным правилам и является фактически программой показа. Процессом показа можно управлять, нажимая определенные клавиши. Правила записи протокола, а также способы управления анимацией записаны в отдельном файле, который можно посмотреть КЛИКАЯ ЗДЕСЬ

Show / Image - Эта специальная операция позволяет проверить текстовый код картинки. Дело в том, что редактор умеет закодировать картинку из файлов типа jpg, png, gif в текст, то есть он создает текстовое представление картинки. Все, что реально делается - это каждый байт файла представляется двумя символами текста в квази-гексагональной системе (используются символы с номерами от 48 до 63). Работает это так. В режиме [File / Open] выбирается какой-либо файл с картинкой и обязательно с расширением jpg, png, gif. Программа кодирует этот файл текстом и показывает текст в окне редактора. Если вы выйдете из редактора по кнопке [File/Exit], то исходный файл будет перезаписан и в нем вместо картинки появится текст. Иногда это полезно, но часто нет, поэтому выходить из редактора после данной операции надо кликом крестика в правом верхнем углу окна. Данная операция удобна в тех случаях, когда необходимо передать картинку в текстовом режиме через буфер обмена. Например, интернет программы не могут использовать графический буфер обмена, но могут использовать текстовый. Поэтому текст можно просто скопировать в окно такой программы. В последующем текст можно снова перекодировать в картинку. Главное назначение этой операции - это взаимодействие с интернет программами, имеющими перекодировщик текста в картинку. Для проверки кода как раз можно использовать данную операцию. При наличии кода картинки в окне редактора, она его прочитывает и показывает картинку, соответсвующую этому коду. Если картинку получить не удается, она выдает сообщение об этом.

Меню: Operation

Operation / Image Processor / Fragment - Эта операция позволяет вырезать фрагмент из выбранной картинки и спасти его в файл с заданным именем и в заданной папке. На первом этапе запускается менеджер файлов, в котором показываются все файлы с расширениями gif, jpg, png. Файлы других форматов не показываются. При выборе файлов можно увидеть их уменьшенные копии. Двойной клик или клик на кнопке [Image] показывает полную картинку. Вырезать фрагмент можно двумя способами. Первый способ использует мышь. Необходимо поставить курсор в левый нижний угол вырезаемого фрагмента, нажать левую кнопку и не отпуская ее переместить курсор в правый верхний угол фрагмента, после чего кнопку отпустить. Второй способ использует клавиатуру. Нужно нажать клавишу [C] и в появившемся окне набрать 4 цифры: координаты левого нижнего угла фрагмента, ширину и высоту. В любом случае в новом окне появится фрагмент картинки. Клик на картинке закрывает окно и снова показывает менеджер файлов для спасения картинки в файл. Можно выбрать любой из уже существующих файлов, тогда он будет перезаписан или набрать новое имя в строке ввода. Тогда создается новый файл с указанным именем. При перезаписи существующего файла никакое предупреждение не выводится. Для записи картинки в файл надо нажать кнопку [Save Image]. Если нажать кнопку [Cancel], то записи не будет.

Operation / Image Processor / Resize - Эта операция создает новую картинку, которая появляется из старой путем масштабирования на новые размеры. Выбор картинки оригинала делается так же как и в предыдущей операции. Затем в строке ввода надо ввести новые размеры картинки в пикселях. Если одно из значений отрицательно, то оно вычисляется из второго с сохранением аспектного соотношения. Оба значения отрицательными быть не могут. Новая картинка показывается в новом окне и дальше как в предыдущей операции.

Operation / Image Processor / Rotate - Эта операция вращает картинку на заданный угол и записывает новую картинку в файл. Выбор картинки оригинала делается как в предыдущей операции. Затем в строке ввода надо задать угол вращения. Новая картинка показывает старую повернутую на заданный угол. Размеры новой картинки автоматически подбираются так, чтобы старая картинка полностью вместилась при любом угле поворота. Иногда размеры области больше, чем необходимо и возникают черные поля. Так как часто правильный угол поворота заранее неизвестен, например при исправлении горизонта на фотографиях, то после клика на картинке предлагается ввести новый угол и так много раз, пока не будет нажата клавиша [Cancel] при выборе угла. Спасать картинку в файл нужно так же, как в предыдущей операции.

Operation / Image Processor / Set text - Эта операция позволяет записать на картинку несколько строк текста. Выбор картинки оригинала делается как в предыдущей операции. Затем открывается новое окно редактора, в котором можно записать много вариантов текстов с их параметрами. Каждый текст записывается на одну строку в виде набора чисел и слов. Сначала записываются числа x y r g b k s , где x, y -- координаты левого нижнего угла текста, r g b - компоненты цвета в диапазоне от 9 до 255, k - тип текста (0 - простой, 1 - жирный, 2 - наклонный, 3 - жирный наклонный), s - размер текста в пикселях. Затем ставится символ вертикальной черты и записывает имя фонта, например, Times New Roman. Нужно использовать лишь те фонты, какие имеются в операционной системе и показываются по кнопке [Control Panel / Fonts]. Затем ставится второй символ вертикальной черты и записывается сам текст, который появится на картинке. Можно использовать английские и русские символы. Число текстов неограниченно. Один вариант от другого отличается пустой строкой (так же, как в калькуляторе). Выбор варианта реализуется установкой курсора на нужный текст. Затем надо закрыть редактор из меню, либо нажать клавишу [Esc]. Тексты появятся на картинке. После клика на картинке программа возвращает в редактор, для отладки правильных параметров текста. Если ничего менять не надо, то необходимо закрыть редактор кликом крестика [X] в правом верхнем углу окна. Спасать картинку в файл нужно так же, как в предыдущей операции. Содержимое окна редактора сохраняется на один сеанс работы. Чтобы спасти содержимое на следующий сеанс нужно выполнить операцию по кнопке [Format/Update/Text on image].

Operation / Image Processor / Set image - Эта операция позволяет записать на картинку другую картинку с меньшими или равными размерами. Выбор картинки оригинала делается как в предыдущей операции. Затем в строке ввода надо задать 4 числа: x,y,c1,c2, где x,y - координаты позиции левого нижнего угла второй картинки на поле первой картинки, отсчитываемые от левого нижнего угла, а коэффициенты c1 и c2 задают веса смешивания цветов старой и новой картинок в процентах (должны быть целыми числами). Затем пишется символ вертикальной черты "|" и сразу после него - полный путь к файлу второй картинки. Новая картинка будет содержать картинку оригинал и вставленную в нее вторую картинку с нужными весами смешивания. Так как часто правильные параметры задать сложно, то после клика на картинке, программа возвращается в редактор. Если исправлять ничего не надо, то нажимает кнопку [Cancel]. Спасать картинку в файл нужно так же, как в предыдущей операции.

Operation / Image Viewer - Эта операция позволяет просматривать картинки в формате jpg, png, gif в папках компьютера с предпросмотром. Последняя просматриваемая папка запоминается на следующий сеанс работы. Картинки показываются без масштабирования в натуральную величину. Если размер картинки превышает экран, то ставится линейка прокрутки. Для каждой картинки указывается ее размер и координаты курсора при его движении по картинке.

Operation / Snapshot - Эта специальная операция имеет горячую клавишу [Ctrl]+[P], по которой ее и разумно использовать. Она позволяет вырезать с экрана компьютера любую область и спасти ее в графический файл с расширением jpg или png. Такая операция совсем не имеет отношения к редактированию текста, но тем не менее она очень полезна для многих целей. Работает это так. Открываете окно редактора и цепляя мышкой за титульное поле опускаете окно вниз почти до самого конца, так что его совсем не видно. Но иконка редактора остается в статусной строке ОС. После того, как нужная вам картинка появилась на экране, активируете редактор кликая на его иконке. И затем нажимаете горячую клавишу [Ctrl]+[P]. При этом изображение всего экрана спасается и показывается в отдельном окне. В этом окне выбираете область с помощью мыши так: ставите курсор в нижний левый угол и нажимаете левую клавишу, затем не отпуская клавишу передвигаете курсор в правый верхний угол области. Область при этом отметится черной рамкой. Когда область аккуратно выбрана, отпускаете клавишу. Выбранная область появляется в новом окне. Кликаете на ней и открывается окно менеджера файлов, в котором можно выбрать нужную папку и ввести имя файла. Нажимаете [OK] и вырезанная картинка спасается в выбранный файл. Такой способ не всегда удобен, так как мышь дрожит и вырезать картинку с заранее заданными размерами сложно. Поэтому есть второй способ. Когда изображение всего экрана показывается в окне с названием "Capture", то у этого окна есть статусная строка, показывающая текущие координаты курсора. Выбираете нужные координаты начала фрагмента и затем нажимаете клавишу [C]. Появляется окно ввода, в нем надо ввести 4 числа, координаты x,y левого нижнего угла фрагмента, ширину и высоту фрагмента и нажать кнопку [OK]. Выбранный фрагмент будет показан в отдельном окне. Далее действуете как описано выше.

Operation / Sbrde - Эта операция позволяет сформировать слайд для показа в презентации и для других целей, кому что надо. Слайд -- это сложная картинка, содержащая тексты, более мелкие картинки, заголовки и так далее. Предлагается следующая техника. С помощью предыдущей операции Snapshot с экрана компьютера могут быть вырезаны самые разные фрагменты изображений, сформированных люой программой, способной работать на компьютере. Эта операция позволяет уложить все эти фрагменты на области заданных размеров. Протокол создания слайда должен быть записан в текстовом окне редактора, его можно загрузить из файла или скопировать из другого редактора или набрать. В первой строке надо задать адрес рабочей папки, где находятся все фрагменты слайда. Вот образец адреса: c:/tmp/2/ . То есть буква диска, двоеточие и затем структура вложенных папок, только не обратная наклонная черта, как принято в Виндовс, а знак деления и все заканчивается знаком деления. Во второй строке надо набрать три числа и через вертикальную черту имя файла будущего слайда без расширения, вот так: w h n|имя . При этом w и h -- ширина и высота будущей картинки слайда в пикселях, n -- число фрагментов. Исходно поле слайда имеет белый цвет. Однако поместив картинку на все поле слайда фон можно сделать любым. Далее надо записать ровно n строк (можно и больше, но остальные не прочитаются) с информацией по каждому фрагменту. Информация выглядит так: семь чисел, вертикальная черта и полное имя файла в данной папке. Условно это выглядит так: x y a Sx Sy sx sy|имя.тип . Объяснения я начну с конца. Имя файла может быть любым (какое надо), тип - либо jpg либо png, другие типы картинок не поддерживаются. Параметры sx и sy -- это коэффициенты масштабирования исходной картинки перед наложением на поле слайда. Если масштабирование не нужно, то надо писать 1 1. Параметры Sx Sy -- это коэффициенты сдвигового преобразования картинки. Как это работает проще посмотреть, чем описать. Если преобразование не нужно, то надо писать 0 0. Параметр а -- это угол поворота картинки в градусах вокруг ее центра. Параметры x и y задают координаты фрагмента на поле слайда, отсчитываемые от левого нижнего угла, но имеют двойной смысл. Если а = 0, то это координаты левого нижнего угла фрагмента. Если а > 0 или а < 0, то это координаты центра картинки фрагмента. Так сделано просто из соображений удобства. Если вращения нет, то координаты 0 0 означают, что фрагмент будет в левом нижнем углу слайда и легко вычислить как его надо сместить. Если вращение есть, то оно происходит вокруг центра и лучше задавать координаты центра. При выборе операции или нажатии клавиш Ctrl+0 появляется рисунок полного слайда со всеми фрагментами, установленными в нужных местах. Клик на картинке или нажатие любой клавиши приводит к тому, что картинка исчезает, а в рабочей папке появляются два файла с расширениями jpg и png и с тем же самым (указанным) именем. Если компоновка слайда не понравилась, то можно отредактировать параметры к тексте редактора и повторить попытку. Важно помнить, что последующие фрагменты накладываются на предыдущие, так что изменяя порядок фрагментов можно получть различные картинки. В отличие от программы Power Point или Word данная операция сразу дает твердую копию слайда в виде файла.

Operation / Calculation - Эта операция позволяет производить расчеты математических выражений и функций по специальным программам. Текст программы расчетов вводится в отдельном окне и может быть сохранен в памяти редактора с помощью меню Format/Update/Calculation таким образом, что при следующем запуске редактора он сразу появится. Текст в течение одного сеанса сохраняется автоматически. В окне калькулятора можно вводить несколько программ расчетов, отдельные программы разделяются пустой строкой. Первая программа начинается с начала текста до пустой строки. Если программа расчетов готова, то ставите курсор на ее текст и нажимаете клавишу [Esc]. Если расчеты проводить не надо, то закрываете окно кликом крестика. Результаты расчетов появляются в основном окне редактора в виде таблицы чисел. При этом, если в окне редактора до этого был текст, то он будет потерян. Поэтому перед тем, как пользоваться редактором, надо сохранить текст в окне редактора в файле. Результат расчетов калькулятора записывается в отдельный файл с названием calc.txt в текущую папку. Обычно это папка, из которой запущена программа редактора. Программа расчетов должна удовлетворять некоторым правилам, о которых написано в отдельном файле КЛИКАЕМ ЗДЕСЬ. Важно, что в расчетах можно использовать переменные и элементы массива r(). В редакторе показываются значения первых элементов этого массива, причем таблица значений будет иметь столько строк, чему равно значение переменной n и столько колонок, чему равно значение переменной m. Ширина колонки (число знаков) задается переменной k. Таким образом, программа расчетов должна присвоить первым элементам массива r() нужные значения и в конце определить правильные значения переменных k,m,n. Если таблица чисел показывает зависимости нескольких функций от одного аргумента, то можно сразу посмотреть график по меню Show/Figure. Естественно в программе могут быть ошибки, в результате которых вычисления невозможны. Редактор выдает сообщение об ошибке, в котором содержится кусок текста с ошибкой. При повторном вызове операции курсор будет стоять на том месте, где была зафиксирована ошибка. Ширина колонки (значение переменной k) должна быть достаточной, чтобы вместить число. Число имеет максимум три знака дробной части, знак, десятичную точку и нужно оставить хотя бы один пробел. Таким образом ширина колонки не может быть меньше, чем число знаков целой части максимального числа + 6. Слишком большие и слишком маленькие числа необходимо масштабировать.

Operation / Alarm clock - Эта операция позволяет использовать редактор как будильник. Текущее время программа не показывает, так как оно и так есть на экране, но часто бывает так, что работа увлекает и смотреть на часы некогда, а в какой-то момент надо что-то сделать, например, выключить чайник. Поэтому было бы хорошо, если бы компьютер подавал звуковой сигнал в нужное время. Именно это и делает данная операция. Она выставляет окно, в котором надо исправить дату и время подачи сигнала и потом нажать кнопку [OK]. Все, время пошло. К сожалению редактором уже пользоваться нельзя, он весь работает на одну операцию будильника. Поэтому для запуска редактора как будильника нужно открыть новую копию программы (если вы уже работаете с редактором), желательно окно программы увести с экрана, например, опустить вниз, оставив лишь немного титульной строки, чтобы оно не загораживало экран. Запустить операцию по горячей клавише [Alt+Z]. В центре экрана появится небольшое окна, можно установить время и затем сместить окно куда нибудь на край экрана. И только после этого нажимать клавишу [OK]. Данная копия программы будет недоступна до того времени которое указано в будильнике. В это время программа начнет играть музыку, что и является сигналом будильника. Музыку можно отключить кнопкой [Cancel] и поставить новое время на будильнике. После клика на кнопке [OK] он снова в работе. Если же этого не нужно, то кликаем кнопку [Exit], а затем закрываем окно данной копии редактора.

Operation / Execute - Эта операция позволяет исполнять файлы, находящиеся на локальном компьютере, а также ссылки интернета. Работает она следующим образом: Она берет слово, на котором находится курсор, то есть текст без пробелов, ограниченный слева и справа либо пробелами, либо началом или концом строки. Затем она проверяет первые 7 букв слова на совпадение с "http://". Если все совпадает, то она запускает браузер, установленный по умолчанию (см выше в меню Format) c этой ссылкой. Если не совпадает, то она проверяет: не является ли данное слово полным именем файла, который существует на данном компьютере. Если это так и файл существует, то она автоматически запускает программу, которая связана с данным файлом по расширению. То есть, если расширение файла htm, запускается браузер и показывает сайт, если расширение файла mp3 или flv, запускается дежурный проигрыватель медиа файлов. И так далее. Если же имя файла или папки написано с пробелами, то ничего не будет. Поэтому не следует писать имена папок и файлов с пробелами, это дурной тон.

Operation / Text trasform / Ordering brnes - Эта операция имеет специальное значение, которое иногда может пригодиться. Она упорядочивает строки текста по алфавиту. Если строк в тексте очень много, то операция выполняется не быстро. В этом случае процесс выполнения показывается графически. Результат, то есть текст с упорядоченными по алфавиту строками снова показывается в редакторе. В частности, с помощью данной операции можно упорядочивать файлы словарей для проверки орфографии, которые используются данной программой. Сама программа упорядочивает словарь не по алфавиту, а по другому алгоритму.

Operation / Text trasform / Add dictionaries - Эта операция имеет специальное значение, которое иногда может пригодиться. Дело в том, что разные люди могут иметь разные словари для проверки орфографии, в которых могут быть как одинаковые так и разные слова. Когда словари очень большие, то процедура переноса всех новых слов из одного с другой с помощью самой программы, которая проверяет все слова, может занять большое время. Поэтому разработан специальный быстрый алгоритм, который из двух словарей делает один при условии, что оба словаря упорядочены по алфавиту. Упорядочение можно выполнить с помощью предыдущей команды. В новом словаре будут все слова как из первого, так и из второго словаря, но без потери порядка слов. В более общем случае операция может работать не со словами, а со строками. Важно, что порядок одинаковых строк должен совпадать в обоих файлах. Этого можно добиться после упорядочивания строк. Полные имена файлов как двух исходных словарей, так и нового, который будет создан, должны быть набиты в первых трех строках текста в окне редактора.

Operation / Text trasform / Only alphabet - Эта операция имеет специальное значение, которое иногда может пригодиться. Она особенно полезна при работе с файлами словарей. Она берет весь текст из редактора и убирает из него все слова, которые имеют символы, отличные от английского и русского алфавитов и символа пробела. Таким образом в тексте остаются только сами слова без знаков препинания и специальных символов. Новый текст возвращается в окно редактора.

Меню: Dictionary

Dictionary / Load current Dic - Операции со словарем позволяют автоматически проводить проверку правильности написания отдельных слов. Проверка осуществляется методом нахождения набранного слова в словаре. Если слова в словаре нет, оно отмечается. Это служит указанием на то, что слово либо редкое, либо неверно набрано. Данная операция позволяет загрузить в редактор словарь, который использовался при предыдущем сеансе работы с программой. При первом запуске редактора этой операцией пользоваться нельзя, так как редактор еще не знает о словаре. Загрузка словаря является первой и обязательной для использования других операций данного меню. Указание на то - загружен словарь или нет, появляется в 5-й позиции титульной строки (перед временем) в виде букв DY (словарь загружен) или DN (словарь не загружен). После загрузки словаря проверка нового текста в редакторе осуществляется автоматически. Однако, если в момент загрузки в окне редактора уже был текст, то он автоматически не проверяется. Для его проверки надо отключить проверку и тут же включить ее обратно с помощью операций, описанных ниже.

Dictionary / Load new Dic - Эта операция позволяет открыть для работы новый словарь. При этом открывается менеджер файлов и показываются все файлы с расширением dic, начиная с текущей папки, из которой запущен редактор. В принципе словарей может быть много, но программа работает только с тем, который выбран. При первом запуске редактора надо пользоваться только этой операцией. После выбора словаря он запоминается и в следующий раз его можно сразу открыть предыдущей операцией. Словарь, которым пользуюсь я сам можно скачать в интернете по адресу
"https://dl.dropboxusercontent.com/u/29019411/pro/vktot.zip".
Так как словарь большой, то его надо вынуть из архива после скачивания архива.

Dictionary / Start Check - Эта операция позволяет снова включить проверку правильности написания отдельных слов, если она была до этого выключена далее описываемой операцией.

Dictionary / Stop Check - Эта операция позволяет выключить проверку правильности написания отдельных слов, если она была до этого включена при загрузке словаря или ранее описанной операцией.

Dictionary / Add words to Dic - Эта операция позволяет создать сам словарь или дополнить его теми словами, которых у него нет. Программа исходно дается с пустым словарем, в котором набито одно слово [Я], хотя файлы словарей можно скачать из интернета. Данная операция позволяет пополнить словарь новыми словами из выделенного текста в окне редактора. При этом в словарь попадают только те слова, которые в нем отсутствуют. Поэтому если редактор высветил какие-то слова в тексте, как указание на то, что они в нем отсутствуют, то можно записать их в словарь с помощью этой операции. Для этого надо выделить кусок текста, из которого будет происходить загрузка новых слов. Если все слова надо записать, то можно высветить (отметить) весь текст клавишами [Ctrl+A] и все новые слова из отмеченного текста попадут в словарь. То есть для инициализации словаря надо загрузить в редактор какую-нибудь книгу и запустить эту операцию. А можно просто постепенно заполнять словарь только теми словами, которые вы сами используете. Обрабатываются как русские, так и иностранные слова. Обработку текста перед засылкой его в словарь можно выполнить с помощью указанных выше операций в меню Text transform

Dictionary / Remove words from Dic - Эта операция позволяет исключить из словаря выделенные в окне редактора слова. Такая операция может понадобиться, если вы пополняли словарь из своего или чужого текста и потом заметили в этом слове ошибку. Такое слово надо исключить из словаря. Это бывает не часто, но бывает. Важно также знать, что словарь можно редактировать и вручную, в самом текстовом редакторе. При этом надо соблюдать следующие правила: (1) каждое слово записывается на отдельной строке заглавными буквами, (2) вы сами должны следить за тем, чтобы слова не повторялись. Это не так просто сделать, потому что слова в словаре не упорядочены по алфавиту. Порядок слов подчиняется какому-то сложному алгоритму, который мне не известен.

Замечания для специалистов

Во время работы программы иногда возникают ситуации, в которых операция не может быть выполнена. О некоторых из таких ситуаций программа сообщает в окне предупреждения. Однако программа способна дать более детальную информацию об аварийной ситуации, которая выпечатывается в терминальное окно. В этой информации есть данные о том, что реально произошло и указание на место в коде программы, где именно это произошло. В нормальном режиме работы программы такие указания блокируются, чтобы не пугать пользователя. Но если запустить программу из командной строки или из bat файла с указанием имени файла и ключа -i перед ним, то в таком режиме работы детальная информация показывается. Выглядит такая команда следующим образом
java -jar vkNotepad.jar -i имя файла
где вместо слов "имя файла" надо поставить реальное имя файла с текстом или полный путь к файлу, если файл находится в другой папке.

Маркеры титульной строки

В титульной строке показываются:
полный путь к выбранному файлу или последние 60 символов пути, если строка очень большая
состояние клавиатуры (E) английская (R) русская
состояние обработки длинных строк (W) строки переносятся на краю окна (L) строки не переносятся
текущая кодировка (AW, AD, AK, UB, UL, FJ, FG, FN) смотри описание в самом начале
текущий признак конца строки (W) windows, (J) java, (A) apple
состояние загрузки словаря (DY) загружен, (DN) не загружен