Рубрика «текстовый редактор»

Современные текстовые редакторы умеют не только бибикать и не давать выйти из программы. Оказывается, внутри них кипит очень сложный метаболизм. Хотите узнать, какие ухищрения предпринимаются для быстрого пересчета координат, как к тексту приделываются стили, фолдинги и софтврапы и как это всё обновляется, при чем тут функциональные структуры данных и очереди с приоритетами, а также как обманывать пользователя — добро пожаловать под кат!

Текстовый редактор — это вам не высшая математика, тут думать надо - 1

В основе статьи — доклад Алексея Кудрявцева с Joker 2017. Алексей уже лет 10 пишет Intellij IDEA в JetBrains. Под катом вы найдете видео и текстовую расшифровку доклада.
Читать полностью »

Фетиш LaTeX (или Не пишите в LaTeX! Он только для вёрстки) - 1Сейчас то время года, когда студенты выбирают себе классы для обучающих навыков. Один из навыков, который будет поощряться, — обучение LaTeX. Другие могут придти к использованию LaTeX по другим причинам: кто-то хочет сверстать книгу; кто-то слышал, что LaTeX может иметь отношение к журналу Digital Humanities; ну и так далее. Я написал это эссе в качестве предварительного введения в LaTeX. Оно не научит вас использовать редактор (я не имею квалификации для этого!), но я попытаюсь популярно объяснить тем, кто ещё не использует LaTeX, для чего именно он нужен. Это поможет им понять, стоит ли LaTeX усилий на его изучение (не говоря уже о том, чтобы просто заставить его работать). Почему такое большое эссе? Потому что многие из евангелистов превратили LaTeX в фетиш и распространяют дезинформацию о его истинных достоинствах. Хочу прояснить ситуацию.

1. Что такое LaTeX?

По словам официального сайта, LaTeX — это «высококачественная система набора и вёрстки» и «стандарт де-факто для обмена и публикации научных документов». С этим никто не спорит.
Читать полностью »

Что если бы вы могли добавить в редакторы документов любые функции, какие вам хочется? Теперь вы можете: в редакторах ONLYOFFICE появилась возможность подключения плагинов. Несколько примеров мы написали сами — все их можно посмотреть в нашем открытом репозитории на GitHub'e. Теперь ваш ход — напишите то, чего вам не хватало.

Подробности далее.

Теперь ONLYOFFICE может всё: добавляем плагины в редакторы документов - 1
Читать полностью »

В последнее время наблюдается тенденция бессмысленных, с моей точки зрения, дискуссий относительно того, что лучше, — текстовый редактор или IDE. При этом, в темах, где обсуждается данный вопрос, зачастую 400 и более комментариев. Значит, людей этот вопрос интересует. Значит, надо писать статью.

Итак, какие цели статьи?
1. Что же лучше для программирования: текстовый редактор или IDE
2. Vim и Emacs — не текстовые редакторы
Читать полностью »

image

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

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

Более того, многие пользователи ставят знак равенства между понятиями «программа для обработки документов» и Microsoft Office. Стандартных средств для профессиональной, полноценной обработки документов операционная система не предоставляет. Но ведь кроме MS Office есть продукты других производителей.

Наверняка, у каждого из них есть свои недостатки. В настоящее время бессменным лидером рынка является детище Microsoft, а ее конкуренты самоотверженно над этим работают. Однако в этой сфере пока прорыва не случилось. Чего же не хватает существующим продуктам «для полного счастья»?Читать полностью »

Весной 2015 года компания «Новые облачные технологии» (НОТ) запустит новый сервис «МойОфис», который должен составить конкуренцию сервисам Microsoft Office и Google docs. Разработчики ставят перед собой амбициозные цели: к 2020 году получить 25% отечественного рынка и выйти на рынки Европы и Латинской Америки.Читать полностью »

Определенная доля текстовой части моего диплома была написана на Nokia E63 — было срочно и поздно, поэтому работать приходилось в пути, переездах, на конференциях, а ноутбука у бедного студента не было. Удобная QWERTY-клавиатура и доступный Интернет позволяли набирать и редактировать текст даже с определенным комфортом. В общем, некоторый опыт извращений в наборе текста у меня есть.

image

То ли дело современные студенты — ноутбуки, планшеты, редакторы онлайн и оффлайн, совместная работа над документами. Кажется, проблемы в далеком прошлом.
Читать полностью »

Это статья про плагины к текстовому редактору SynWrite.

С момента обзора редактора, он получил нормальное Python API. Можно через API делать всякую обработку текста, выводить меню, запрашивать ввод и т.п. Появилось несколько плагинов — я их тут перечислю.
Читать полностью »

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

  1. иметь малые накладные расходы по памяти. Большая часть доступной памяти должна использоваться для хранения текста, а не служебной информации;
  2. допускать эффективную вставку и удаление в произвольном месте текста.

Удовлетворить эти требования одновременно непросто. Если рассмотреть широкоизвестные структуры данных, такие как массивы, списки, деревья, стеки, очереди, кольцевые буфера — то такой структуры, которая бы позволила эффективно выполнить оба требования, не встречается. В случае массива имеем незначительные накладные расходы по памяти, но операция вставки имеет сложность O(n), где n — размер редактируемого текста. В случае списка сложность вставки и удаления составляет O(1), однако накладные расходы по памяти в несколько раз превышают размер собственно текста. Деревья, кучи, кольцевые буфера, ассоциативные массивы и прочие структуры и вовсе неприменимы для хранения текста в редакторе.

Встречаются гибридные решения, когда текст хранится в наборе массивов, которые, в свою очередь, объединены в список. Казалось бы, такой подход позволяет объединить преимущества массивов и списков (быстрая вставка/удаление при низких накладных расходах по памяти). Однако такое решение сложно в реализации. Также оно приводит к фрагментации памяти.

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

Несмотря на то, что эта структура данных была открыта давно и использовалась в текстовых редакторах на старых ЭВМ в 8-битную эпоху, это тайное знание предков было в значительной мере утеряно и в современных редакторах встречается редко. Попробуйте открыть файл, состоящий из одной строки мегабайт на 10, в Notepad или Far. Вставка и удаление символов будет длиться секундами.
Читать полностью »

Доброго времени суток, товарищи читатели!

Последнее время в хабе Старое железо наблюдается довольно большая активность как со стороны авторов, так и со стороны читателей. Причем, судя по количеству плюсов к публикациям в этом хабе, обзоры старой техники действительно интересны и пользуются спросом. И раз уж на то пошло, я решил достать из темного угла чудо японских инженеров компании Fujitsu — текстовый редактор OASYS 30AFII, и поделиться с вами его обзором.

image

Внимание! Много картинок и фотографий.
Читать полностью »