Как стать автором
Обновить
0
Маклауд
Облачные серверы на базе AMD EPYC

Создание совершенной печатной машины из Sublime Text

Время на прочтение 5 мин
Количество просмотров 12K
Автор оригинала: Nikita Prokopov
UPD: Прошло больше месяца с тех пор, как я написал первоначальный черновик этой статьи. С тех пор я опубликовал еще три записи в блоге и более двадцати на моем канале в Телеграм. Настройки зарекомендовали себя фантастически, мне он очень нравится, и у меня нет желания искать где-либо еще.

Я был давним поклонником iA Writer из-за того, что писал. Я купил оригинальную версию для iPad, оригинальную версию macOS (когда она еще называлась MacOS X), версию для Android и даже ту, которую они переиздали как «платное обновление по полной цене». На мой взгляд, в нем есть идеальный баланс между функциями и простотой, дизайном и направленностью.

Вот скриншот первоначальной версии iA Writer от 2011 года:

image

А вот как это выглядит сейчас, в 2021 году:

image

Дизайн настолько вне времени, что практически не изменился за 10 лет.
И я этим доволен, я не собираюсь жаловаться. Это здорово и для вдохновения, и для нововведений, и для фактического воплощения. Я искренне рекомендую его всем, кто пишет.

Ограничения iA Writer


Тем не менее, со временем я начал чувствовать, что это не идеально подходит для моего конкретного рабочего процесса:

  • iA Writer предназначен для работы с одним документом за раз. Я предпочитаю работать с проектами и папками, переключаясь между файлами.
  • Библиотека iA Writer привязана к iCloud, и вы должны хранить там все свои файлы. Недавно я отказался от iCloud и вообще предпочитаю, когда инструменты не определяют, где мне хранить файлы.
  • При наличии собственного блога публикация состоит из периодического редактирования CSS/JS/шаблонов, для чего iA Writer, опять же, не оптимизирован.
  • Я привык к таким удобствам Sublime, как несколько курсоров, поиск в файлах, Go Anywhere и интеграция с Git. Чувствуешь себя скованно, не имея этого всего под рукой.

Оптимизация Sublime Text для письменной работы


Я решил попробовать повторить то, что делает iA Writer, но внутри Sublime Text. Это мои настройки.

Цветовая схема


К счастью, iA Writer использует абсолютный минимум цветов, поэтому повторить эту часть было проще всего.

image

Исходный код.

В Package Control: Цветовая схема Writer.

P.S. Да, есть и темная версия.

Шрифт


iA Writer дебютировал с проприетарным шрифтом Nitti, но позже переключился на IBM Plex Mono, который выпускается под лицензией Open Font License.

После нескольких попыток и ошибок мне удалось установить размер шрифта, высоту строки и ширину страницы с параметрами, соответствующими тому, что делает iA Writer:

image

Параметры следующие:

«font_face»: «IBM Plex Mono»,
«font_size»: 16,
«line_padding_bottom»: 3,
«line_padding_top»: 3,
«wrap_width»: 72

Это уже очень хорошее соответствие, но перфекционист во мне хотел получить точное соответствие. Две вещи требовали корректировки: немного увеличенный вес шрифта (текст вместо обычного) и дополнительные 3,5% ширины символа. Поэтому я взял на себя смелость и модифицировал оригинальный IBM Plex Mono, чтобы он соответствовал этим характеристикам.

Сморите:

image

Совпадает почти идеально! Вы можете получить мою версию IBM Plex Mono на github.com/tonsky/font-writer.

Смена профиля


Мы настроены на то, чтобы писать, но как нам вернуться к кодированию?

Проблема в том, что режим письма влияет на несколько отдельных настроек (в моем случае 19), а не только на шрифт и цветовую схему.

Встречайте Profile Switcher! Он хранит несколько отдельных файлов Preferences.sublime-settings и мгновенно переключается между ними.

image

image

Источники: github.com/tonsky/sublime-profiles

В управлении пакетами: Profile Switcher.

P.S. Альтернативный способ — поместить настройки для записи в файл настроек для синтаксиса Markdown. Мне этот подход нравится меньше, потому что он влияет, например, на Sublime Merge diff view и все файлы разметки, некоторые из которых я не хочу видеть в режиме записи.

Кроме того, Profile Switcher кажется чем-то, что может быть полезно не только для написания/кодирования duo.

Все вместе (TL;DR)


  1. Скачайте и установите шрифт Writer.
  2. Через Package Control установите цветовую схему Writer
  3. Через Package Control установите Profile Switcher.
  4. Создайте профиль Writing с помощью команды Profiles: Create profile.
  5. Поместите эти настройки сюда (просто замените все, что у вас есть):

{
  "caret_extra_width": 2,
  "draw_centered": true,
  "draw_indent_guides": false,
  "draw_white_space": ["none"],
  "font_face": "Writer",
  "font_size": 16,
  "gutter": false,
  "highlight_line": false,
  "line_padding_bottom": 3,
  "line_padding_top": 3,
  "margin": 10,
  "scroll_context_lines": 2,
  "scroll_past_end": 0.5,
  "word_wrap": true,
  "wrap_width": 72,
  "color_scheme": "Packages/sublime-scheme-writer/Writer.sublime-color-scheme",
  "theme": "Adaptive.sublime-theme",
}

Вы должны увидеть что-то вроде этого:

image

Сравните с тем, с чего мы начали:

image

Чтобы вернуться, используйте команду «Профили: сменить профиль» и выберите «По умолчанию».

Отсутствующие функции


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

Дуоширинный шрифт


Чего ждать? Дуоширинный? Это что?

Что ж, это еще одна гениальная идея от iA: сделать W и M 1,5× ширину, оставив остальную часть шрифта моноширинной. Он по-прежнему выглядит и ощущается моноширинным, но Ms и W больше не уродливы без причины. Хотелось бы, чтобы таких шрифтов было больше.

image

Можем ли мы воспроизвести это в Sublime Text? И да и нет. ST может отображать не моноширинные шрифты, но отключает полужирный/курсивный шрифт, если шрифт не моноширинный.

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

Если вы хотите попробовать дуоширинный шрифт, его можно бесплатно загрузить по ссылке github.com/iaolo/iA-Fonts.

Висячая пунктуация


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

image

Почему это так круто? Если ### выровнено по основному тексту, вам нужно пропустить ### и найти первую значимую букву.

Если он висит снаружи, ничто не сможет помешать вам.

Динамическая типографика


Еще одна вещь, которую сложно воспроизвести в Sublime Text, — это динамическая типографика. Насколько я понимаю, iA Writer динамически переключается между несколькими версиями с разным интервалом и весом в зависимости от текущего размера шрифта и разрешения экрана. Это сложно реконструировать и еще сложнее повторить в Sublime Text.

Хотя, с профилями…

Подсветка синтаксиса


Во-первых, да, в iA Writer есть подсветка синтаксиса для простого английского. Выглядит это так:

image

Предположительно, это помогает писать более сбалансированные предложения. Как вы могли заметить, я этим никогда не пользовался :)

Режим фокусировки


В режиме фокусировки выделено только текущее предложение, все остальное затенено. Это помогает попасть в зону, хотелось бы, чтобы это можно было сделать и в ST.

image

Заключение


Sublime Text можно довольно хорошо настроить и превратить в фантастический инструмент для письменной работы.

Однако специализированное программное обеспечение, такое как iA Writer, может делать больше.

Надеюсь, вы найдете эту информацию полезной или (что еще лучше!) вдохновитесь написать что-нибудь.

6 апреля 2021 г.



Наши серверы можно использовать для разработки и продакшена на любом языке.

Зарегистрируйтесь по ссылке выше или кликнув на баннер и получите 10% скидку на первый месяц аренды сервера любой конфигурации!

Теги:
Хабы:
+21
Комментарии 11
Комментарии Комментарии 11

Публикации

Информация

Сайт
macloud.ru
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
Mikhail

Истории