Блокнот
Материал из Lurkmore
В эту статью нужно добавить как можно больше пасхальных яиц Блокнота и убеждений, что Emacs рулит. Также сюда можно добавить интересные факты, картинки и прочие кошерные вещи. |
Captain Obvious to the rescue! Сия статья создавалась при активном участии Капитана Очевидность, в результате чего она пространно повествует о вещах, достаточно полное представление о которых имеет даже младенец-имбецил. Так-то! |
Блокнот (пинд. notepad) — спартанский текстовый редактор, наипростейший в своем роде, который видал малобитные виды из окон Windows 1.0, и Windows NT.
Содержание |
[править] История
XX век — можно вводить текст, удалять текст и сохранять(!) текст размером до 64 Кбайт.
XXI век — добавили ахренительный функционал: снят предел в 64 Кбайта, появились торчащиегорячие клавиши и поддержка Юникода.
[править] Альтернативы
- MS-DOS Editor (edit.com) — консольный текстовый редактор, впервые появившийся в операционной системе MS-DOS 5. Поставляется со всеми последующими операционными системами Microsoft. Можно разделять окно редактирования на две части, как в Word’е.
- Write (Windows Write; не путать с нижеупомянутым Writer из OpenOffice) — штатный редактор 16-битных версий Windows, отличавшийся от Блокнота возможностью форматирования текста. Имел собственный формат файлов .wri, но, начиная с Windows 3.0, стал поддерживать документы WinWord ранних версий.
- WordPad — переделка Write для Windows 95 и последующих. Версия, распространяющаяся в Windows 7, поддерживает не только традиционный формат RTF/DOC (Word 6.0) и OOXML (Word 2007), но и — внимание! — ODF (OpenOffice), что позволяет невозбранно троллить линуксоидов отсутствием в их ОС встроенного средства для работы с OpenDocument.
- Word (WinWord) — самый многофункциональный и тяжеловесный из всех известных на сегодняшний день блокнотов. ЧСХ, был таким ещё в DOS-инкарнациях.
- AbiWord — wannabe Word из несостоявшегося пакета AbiSuite. Функционала чуть больше, чем в WordPad, i.e. дополнения, колонтитулы, таблицы, нумерация страниц, сноски, ссылки, закладки, вставка пикч и файлов, онлайн сервисы.
- Writer — wannabe свободный аналог Word из пакета OpenOffice.org.
- PageMaker — тот же блокнот, только для быдлодизайнеров.
- TextPad — тот же блокнот, только с элементарной подсветкой кода, регулярными выражениями и прочими фичами.
- GEdit — тот же блокнот, только откомпилированный под GNOME и с дополнительными функциями, тащемта умеет вкладки и кодировки, например.
- Leafpad — тот же блокнот, но для расового Linux. Юзает GTK+, минималистичен. Умеет кодировки лучше GEdit’а (например, лучше распознает KOI-8/CP1251/OEM866).
- Mousepad — XFCEшный блокнот, модификация Leafpad, предназначалась, как умеющая распечатывать тексты на принтере, но Leafpad сейчас тоже умеет печатать.
- TEA — довольно нагруженный вариант блокнота с тучей возможностей, также содержит файловый менеджер Квас и анализатор слов в тексте УНИТАЗ. (серьезно)
- Kate — тот же GEdit, только откомпилированный под Кеды и с дополнительными функциями (встроенная консоль, например).
- Bluefish — ГТКшный текстовый редактор, предназначенный в первую очередь для непосредственного редактирования HTML и PHP-кода, а также для программиздов.
- vi — тот же блокнот, только консольный и под Linux, отличается широким функционалом (имеет два режима: бибикать и всё портить).
- SciTE — удобный кросплатформенный текстовый блокнот, с возможностями запуска скриптов в отладочном окошке. С подсветкой синтаксиса, но без поддержки досовских кодировок.
- Notepad++ — недодельный вариант SciTE под винду. [24.08.2010] На текущий момент Notepad++ значительно развился и приобрёл поддержку многих функций, полезных программистам как на мёртвых, так и на бессмертных языках, всё ещё оставаясь достаточно лёгким. Но он безусловно обогнал SciTE в связи с тем, что Последний релиз SciTE состоялся к 2007 году, а сайт разваливается по винтикам ;-) в то время как нотепад++ в этом году полностью обновил сайт, и ежемесячно выпускает обновления с багфиксами и доп. функциями на сорсфордже...
- Notepad2 — расширенная версия Блокнота с панелью инструментов и подсветкой синтаксиса.
- EmEditor — тот же блокнот, только шустрый, с подсветкой синтаксиса и поддержкой разноёбистых кодировок.
- AkelPad — тот же блокнот, только есть поддержка кодировок и плагинов.
- Штирлиц — тот же блокнот, только умеет распознавать кодировку текста, иногда даже в таких случаях, когда текст подвергался неоднократному переводу в разные кодировки.
- http://docs.google.com — тот же блокнот, только в online версии, ещё работает со множеством файлов Microsoft Office.
- http://bloka.ru — из той же серии, в стиле минимала.
- A4 — тот же блокнот, только в RL версии (в классической версии А5 же).
- Bred — вовсе не бред, тот же блокнот, только с поддержкой бесполезных функций: подсветкой слов и поддержка UTF-8.
- UltraEdit32 — тот же блокнот, только с поддержкой RegExp и другими бесполезными функциями.
- IntelliJ IDEA — тот же блокнот, только с подсветкой слов вымирающих языков.
- Visual Studio — тот же блокнот, только с
блэкджеком и шлюхамиподсветкой слов вымирающих языков, тормозами и браузером. - sed — тот же блокнот, только можно использовать в скриптах.
- Eclipse — тот же блокнот, только кроссплатформенный (на самом деле та же Visual Studio, только с блэкджеком и шлюхами).
- NetBeans — тот же
Eclipseблокнот, только ещё мультиплатформенный. - Geany — кроссплатформенная мини-IDE с подсветкой слов невымирающих языков.
- haali — тот же блокнот, только мобильные телефоны.
- jEdit — тот же блокнот, только написан на Java.
- Foxit PDF Editor — тот же блокнот, только для редактирования pdf файлов.
- PDF Forms Designer - уникальная в своей области программа для дизайна PDF форм. Позволяет отказаться от дорогущих 100-мб решений Adobe. Успела отхватить пару призов немецких (и не только) журналов. Написана на Java с довольно приличным уровнем дизайна - в итоге даже индус (или студент) может добавить сам (!!!) хотелки юзеров, скачав Netbeans. Сами разрабы забили на дальнейший девелопмент. Недостатки - это десктопное приложение и все таже жаба.
- TextEdit — тот же блокнот, только с яблочным привкусом.
- Aditor — тот же блокнот, ну ты понел.
- Древний барельеф — тот же блокнот, только древнеегипетский.
- Notebook — тот же блокнот, только не блокнот.
Короче тысячи их.
- Lexicon — редактор "Лексикон". MS-DOS.
Алсо, Emacs по одной из версий — теоретико-множественное дополнение до блокнота.
[править] Упоминание
Иногда употребляется как лучший текстовой редактор, лучшая среда разработки на любом языке программирования. Бла бла бла…
В связи с вышенаписанным среди кулхацкеров и начинающих программистов считается понтовым рассказывать о том, что они пишут программы исключительно в блокноте, презрев все специализированные среды разработки. Это как бы должно намекать окружающим, что понтующийся знает наизусть весь синтаксис языка, все функции и вообще всё, а также следует пути великих мастеров прошлого, работавших еще в текстовом режиме. Но на деле вызывает лишь усмешку.
[править] Интересные возможности
- Если в начале открываемого программой файла находится кодовая последовательность «.LOG», то после открытия в конец файла добавляется текущая дата и время и курсор устанавливается после неё. Эта малоизвестная документированная возможность, существующая по крайней мере с Windows 95, позволяет использовать редактор для ведения заметок или наблюдений.[1] По-видимому, с тех же пор сохранилось ограничение размера текстового файла, при котором это работает: вместе с датой и временем должно быть не более 30 000 байт[2], хотя современные версии Блокнота могут работать и с бо́льшими файлами.[3] Аналогично, если в блокноте нажать кнопку F5, то прямо сразу вставится текущее время и дата.
- Если запустить Блокнот с ключом командной строки /.setup, то после запуска Блокнот «зависнет» — его окно не будет отрисовываться, хотя работать он будет верно. (Например, в таком Блокноте можно напечатать текст вслепую, и сохранить его в файл на диске.) Чтобы выйти из этого «зависшего» блокнота, можно использовать клавишу Esc или комбинацию Ctrl-C.[4]
- В блокноте можно отменить последние изменения в тексте, но не более трёх.
- Если создать текстовый файл, написать в него фразу «bill gates fucking asshole», «мы все умрём» или «bush hid the facts» или любую формата «xxxx xxx xxx xxxxx», и закрыть файл, предварительно сохранив, то при следующем открытии содержимое файла будет заменено иероглифами. Так-то!
Но под семеркой не работает! [5][6][7]
- Умеет переходить к определённой строке (и даже показывать её номер) и переносить слова, но считает эти возможности взаимоисключающими.
- При нажатии Ctrl+S записывает файл (неожиданно?) и показывает в строке статуса, если она видна, неправильное положение в тексте — 1:1. Проверено на XP. На семерке та же фигня.
- А ещё после сохранения, если включен перенос строк, он ломается и текст становится фиксированной ширины (и при уменьшении размера окна сильно корявится). Причём если файл сохранить ещё раз и открыть, всё становится нормально.
- Версия блокнота осталась пожалуй единственной графической прогой Windows Server 2008 версии Server Core (тот, что без гуя), предназначен для правки некоторых конфигов одмином.
[править] Примечания
- ↑ Откуда vi + — возьмёт название исходного файла, чтобы записать изменения? Типа плюсик с минусиком так охуенно выглядят, что на практический смысл можно забить?):
# !/bin/sh
if [ ! "$1" ]
then
vi
else
if [ ".LOG" = "$(sed -ne '1!d;s/^\(....\).*/\1/;p;' "$1" 2>/dev/null)" ]
then
printf "%s\n\n" "$(cat "$1"; date)" | vi + -
else
vi "$1"
fi
fi - ↑ На самом деле упомянутая строка добавляется не атомарно, а кусочками, так что если результат не укладывается в упомянутые 30000, то возможно, что Блокнот и выдаст ошибку и добавит начало строки, что-то вроде «10:00 27.01.».
- ↑ Ошибка, которую выдаёт блокнот при открытии слишком больших .LOG файлов, достойна отдельного упоминания: Not enough memory available to complete this operation. Quit one or more applications to increase available memory, and then try again. Не удивлюсь, если где-то там внутре
неонкастатический массив. - ↑ А ещё можно его свернуть в панель задач и развернуть. А потом наслаждаться Блокнотом с двумя скролл-барами.
- ↑ Происходит сей подземный стук по весьма распространённой причине благих намерений — разработчики попытались сделать автоматическое определение кодировки открываемого файла, но сил, увы, не хватило. Поэтому убогий алгоритм считает содержимое рассматриваемого файла юникодом и показывает соответствующе. Алсо, [1]
- ↑ Капитан Очевидность совместно с Джеффри Рихтером сообщают нам, что разработчики Блокнота тут ни причём, а виновата API-функция IsTextUnicode(): «Проблема с текстовыми файлами в том, что не существует четких и строгих правил относительно их содержимого. Это крайне затрудняет определение того, содержит файл символы в ANSI или в Unicode. Поэтому IsTextUnicode применяет набор статистических и детерминистских методов для того, чтобы сделать взвешенное предположение о содержимом буфера. Поскольку тут больше алхимии, чем точной науки, нет гарантий, что Вы не получите неверные результаты от IsTextUnicode.». Так-то! Алсо, см. [2]
- ↑ В блокноте, входящем в Windows 7, сабж пофиксен.