В большинстве современных книг есть такой раздел — «Благодарности». Автор благодарит своих редакторов, учителей, друзей, родственников, любимых котов и всех тех, без кого книга никак не могла появиться на свет. Книгу я писать не планирую. А составить свой список и поблагодарить за всё хорошее можно и в посте на Хабре.
Рубрика «текстовые редакторы»
Синей пеленой экран заполнил чистый DOS. Доска почёта и респекта: лучшие программные решения и интерфейсы
2024-09-29 в 13:25, admin, рубрики: FAR, браузеры, буфер обмена, интерфейсы, командная строка, консоль, минимализм, ностальгия, текстовые редакторы, текстовые файлыСоздание PDF размером с Германию
2024-02-16 в 14:29, admin, рубрики: Acrobat Reader, Germany, PDF, pdf reader, ruvds_перевод, текстовые редакторыСегодня утром, пролистывая ленты социальных сетей, я уже в который раз встретил утверждение, что у PDF-документа есть максимально допустимый размер.
Подобное утверждение появилось на просторах интернета ещё в 2007 году. Этот твит является характерным примером постов с аналогичным заявлением, в которых оно преподносится как твёрдый факт без каких-либо подтверждающих свидетельств или объяснений. То есть мы должны просто принять, что один PDF может покрыть лишь около половины площади Германии, и нам никак не объясняют, почему его магический предел составляет 381 километр.
Тут мне стало интересно – а создавал ли кто-нибудь такой большой PDF? Насколько это сложно? А можно ли сделать документ ещё больше?
Несколько лет назад я из праздного любопытства немного поигрался с PostScript, предшественником PDF, и это оказалось очень увлекательным! Ранее мне не доводилось изучать внутреннее устройство PDF, так что здесь у меня возник для этого хороший повод.
Приступим!Читать полностью »
Проектирование аналога Google Docs
2023-12-17 в 9:00, admin, рубрики: Google Docs, ruvds_перевод, одноранговая архитектура, онлайн-редакторы, текстовые редакторыGoogle docs – это сервис для совместного редактирования документов. В целом подобные сервисы можно спроектировать двумя способами:
- В качестве централизованного ресурса, использующего клиент-серверную архитектуру для предоставления возможности редактирования документа всем пользователям.
- На базе одноранговой архитектуры, позволяющей разным людям совместно работать над одним документом.
Большинство коммерческих решений ориентированы на клиент-серверный подход ввиду предоставляемого им более детального контроля. Так что и мы в этой статье разберём проектирование сервиса с использованием именно клиент-серверной архитектуры. Читать полностью »
Когда программы были маленькими, а деревья пиксельными. Простота и минимализм TreePad
2023-11-26 в 14:12, admin, рубрики: TreePad, база знаний, древовидные заметки, заметки, записки, минимализм, ностальгия, текстовые редакторы, текстовые файлы, текстыМы привыкли к тому, что в нашем IT-мире всё течёт и меняется. Постоянно появляются новые версии операционных систем, сменяют друг друга приложения и фреймворки. То, что ещё вчера было мейнстримом, сегодня считается безнадёжно устаревшим.
Но у многих из нас есть любимые программы, которые путешествуют с компьютера на компьютер, от одной версии операционной системы к другой. И продолжают служить нам верой и правдой — привычные и надёжные, как старые друзья.
Зарождение и эволюция редакторов Vi и Vim
2023-09-24 в 10:00, admin, рубрики: emacs, ruvds_перевод, UNIX, VI, vim, текстовые редакторыИстория Vi и Vim идёт параллельно с историей опенсорсного ПО. В этой статье мы окунёмся в прошлое, чтобы исследовать процесс зарождения текстовых редакторов UNIX, попутно рассмотрев наиболее значимые решения в этой сфере и исторические события, связанные с их эволюцией.Читать полностью »
Выбор структур данных для самописного текстового редактора
2023-06-26 в 13:00, admin, рубрики: c++, data structures, ruvds_перевод, vscode, Алгоритмы, Блог компании RUVDS.com, красно-черные деревья, Программирование, структуры данных, текстовые редакторы, хранение данныхПрограммирование текстовых редакторов может быть очень интересной и сложной задачей. Типы задач, которые должны решать текстовые редакторы, варьируются от тривиальных до невероятно трудных. Недавно я занимался переработкой внутренних структур данных редактора, над которым я работаю. В частности, самой фундаментальной для любого текстового редактора структуры данных: текста.
Ресурсы
Прежде чем мы приступим к разбору того, что я сделал, важно упомянуть очень полезные ресурсы для создания собственного текстового редактора:
- Build Your Own Text Editor — наверно, самый фундаментальный пост о создании текстового редактора с нуля, который я видел. Это превосходный туториал на случай, если вы хотите начать писать собственный текстовый редактор. Стоит заметить, что в редакторе из этого туториала в качестве внутренней структуры для текста используется, по сути, вектор строк.
- Text Editor: Data Structures — отличный обзор множества структур данных, которые можно использовать при реализации текстового редактора. (Спойлер: как минимум одна из них будет рассмотрена в моём посте)
- Плейлист Ded (Text Editor) на YouTube — это потрясающая серия, в которой @tscoding фиксирует процесс создания с нуля текстового редактора. Эти видео стали для меня источником вдохновения.
Зачем?
Если в сети есть так много хороших ресурсов о создании собственного текстового редактора (не говоря уже о том, что уже существует множество феноменальных текстовых редакторов), то зачем я это пишу? На то есть несколько причин:
- Я хотел заняться проектом, непохожим ни на один свой прошлый.
- Я хотел создать инструмент, которым смогу пользоваться.
- Мне всегда хотелось глубже разобраться с созданием собственных структур данных.
Редактор TECO: EMACS, я твой отец
2018-03-19 в 5:42, admin, рубрики: emacs, teco, интерпретаторы, КодоБред, ненормальное программирование, старожилы помнят, текстовые редакторыВпервые про TECO я прочитал в пародийной статье Real Programmers Don't Use Pascal, написанной незадолго до моего рождения. Там было написано, что настоящие программисты не используют новомодные редакторы EMACS и VI:
Нет, Настоящий Программист хочет редактор вида «Просил? Так получай!» — сложный, загадочный, мощный, не прощающий ошибок, опасный. TECO, если быть точным.
ОригиналNo, the Real Programmer wants a `you asked for it, you got it' text editor — complicated, cryptic, powerful, unforgiving, dangerous. TECO, to be precise.
Это меня заинтриговало. Что за зверь такой, можно ли его пощупать? Википедия рассказала, что TECO — это Text Editor & COrrector, создан он в 1962-м году в DEC и использовался на компьютерах семейства PDP, а позже на системах OpenVMS. Оказалось, что существует порт на Си, который поддерживается энтузиастами в актуальном состоянии и собирается под современными операционными системами. Вот я и решил почувствовать себя настоящим программистом хотя бы немножко.
Visual Studio Code как универсальный редактор кода
2017-08-06 в 18:20, admin, рубрики: C#, emmet, python, visual studio code, web-разработка, Разработка веб-сайтов, текстовые редакторыVisual Studio Code (далее — VS Code) – сравнительно молодой редактор кода (первый выпуск – весна 2015 г.) с открытым исходным кодом, распространяемый бесплатно и способный составить реальную конкуренцию таким признанным лидерам отрасли как Sublime Text, Atom, Notepad++.
Ниже перечислены те особенности VS Code, которые меня заинтересовали и заставили попробовать в действии.
Читать полностью »
Как подружить Custom View и клавиатуру
2017-02-02 в 6:46, admin, рубрики: android, Android sdk, CustomView, inputType, myoffice, SDK, T9, TextureView, автозамена, Блог компании Новые облачные технологии, мой офис, разработка мобильных приложений, Разработка под android, текстовые редакторы, метки: CustomView, inputType, TextureViewВведение
«МойОфис» работает на большинстве современных платформ: это Web-клиент, настольные версии приложения для Windows, MacOS и Linux, а также мобильные приложения для iOS, Android, Tizen. И если в разработке компьютерных приложений уже давно есть основные правила подхода к дизайну интерфейсов, то при создании приложений для мобильных устройств требуется отдельная проработка многих особенностей.
Читать полностью »
Семантический перенос строк
2016-08-09 в 7:11, admin, рубрики: Brian Kernighan, python, UNIX, vim, редактирование текстов, Семантика, системы контроля версий, Системы управления версиями, текстовые редакторы, метки: редактирование текстовОт переводчика:
Некоторое время назад на Хабре публиковался перевод статьи под названием "Искусство командной строки". Среди прочего, в статье было рекомендовано освоить vim. Исходник статьи, выложенный на Гитхаб, по иронии судьбы, оказался совершенно непригодным к редактированию именно этим редактором, так как в нём на один параграф приходилась ровно одна строка.
Я тогда выразил своё недоумение автору и попросил его выровнять текст на 80 символов. Но после непродолжительной дискуссии в коментариях дали ссылку на описание форматирования исходников литературных текстов по семантическому принципу. Идея, заложенная в этом принципе в общем довольно простая, но я был поражён её глубиной, которой, пусть и запоздало, хочу поделиться с окружающими.
Хочу предупредить, что не все ссылки в статье работоспособны, но я решил оставить их как есть — мало ли что.