Как поддержка форматирования сообщений делает мессенджер лучше

    image

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

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

    Проблема


    Значительная часть мессенджеров (когда мы начинали работу над Kato таких было большинство) по тем или иным причинам не дает пользователям широких возможностей по оформлению текста — чаще всего разнообразить его можно только с помощью сссылок, смайликов и emoji, но не более.

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

    Если сравнивать ситуацию с email, то электронная почта выигрывает, поскольку любой популярный email-клиент умеет красиво форматировать текст, а не просто вставлять смайлики и прикреплять файлы.

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

    Использование Markdown


    Оптимальным вариантом решения задачи на первом этапе стало внедрение в мессенджер поддержки разметки Markdown, созданной Джоном Грубером и Аароном Шварцем. У этого решения есть свои минусы:

    • Это — пусть упрощенный, но язык разметки, и с ним нужно разбираться, что сразу же делает его неподходящим для большого количества обычных пользователей.
    • Документация Markdown откровенно плоха — это привело к появлению сторонних и лучше структурированных реализаций (создателям одной из них под названием Standard Markdown Джон Грубер даже предъявлял претензии и потребовал переименовать проект, чтобы была видна его вторичность).

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

    Число пользователй Kato, применяющих Markdown в ежедневной работе, составляет уже 20% и постоянно увеличивается, и, согласно их отзывам, возвращаться к общению в режиме «только текст» они не хотят.

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

    image

    Также можно включить режим Markdown по умолчанию.

    После этого пользователь может писать операторы для создания списков, выделения жирным шрифтом или курсивом, вставки изображений, и так далее (у нас есть отдельная статья о самых популярных операторах):

    image

    Кроме того, существует возможность просмотра исходного Markdown-кода уже
    отправленных в чат сообщений — для этого необходимо кликнуть на «шпалы» с левой стороны сообщения в истории и нажать иконку Markdown:

    image

    В будущем мы планируем внедрить в Kato визуальный редактор, который позволял бы пользователю форматировать сообщения без необходимости ввода команд (скорее всего, действия пользователя будут автоматически транслироваться в разметку Markdown).

    Мессенджер для программистов


    Форматирование текста — это общая проблема, но для людей, которые работают с программным кодом и пользуются мессенджерами, существует еще одна сложность — копирование кода и его последующая вставка. Многие сервисы (например, Skype или HipChat) «портят» код — комбинации скобок и двоеточий интерпретируют в качестве смайликов, и при попытке использования кода, скопированного из сообщения, он уже не компилируется.

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

    image

    Небольшие куски кода можно вставлять прямо текущую строку и с помощью все того же Markdown (для этого используются специальные кавычки, расположенные на клавиатуре под символом «тильда»):

    image

    В режиме вставки кода небольшие его куски в чате отображаются целиком:

    image

    Более крупные участки отображаются с помощью ссылки ‘paste’ — по клику на нее открывается отдельное окно, где код подсвечивается:

    image

    image

    Пользователи Kato оценили возможности по использованию Markdown и вставке кода и благодарят за их внедрение.

    На сегодня все. В следующем материале мы расскажем о документе, который никто не читает, но который очень важен — политике конфиденциальности мессенджера и о том, кто, когда и как получает доступ к истории.
    Kato.im
    58,00
    Компания
    Поделиться публикацией

    Комментарии 10

      0
      Со времен последнего скандала вокруг standard и потом уже common markdown особо ничего не было слышно по теме, а тут в целом толковая штука, хоть и аналогами (без интеграции) пользуюсь частенько.
        +2
        Думаю, возможность обмена кодом оценят многие. Это реально важно, когда надо быстро что-то кому-то перебросить. Но тут начинаются все описанные вами ужасы по работе с кодом. Так что, спасибо!
          0
          Заметил вчера, когда скинул кусочек кода в Скайп, что местами исчезли символы "*". Оказывается, с некоторых пор скайп тоже в нектором виде поддерживает markdown. И теперь сниппеты кода не только украшаются смайлами, но и могут приобретать расширенное форматирование.
            0
            Тут еще важна степень поддержки разметки, у нас одна одна из самых полных из известных сервисов
              0
              Ну я как раз привожу этот пример в плюс вам. Когда поддержка имеется это хорошо. И вдвойне хорошо, когда она настраиваемая, а не так как в скайпе без спроса.
                0
                Да мы тоже без негатива :). Спасибо, что читаете
            0
            Горячие клавиши есть/будут? Вообще классно получилось, не нарадуюсь. Вспомнились времена QIP и прочего )

            Полчища домохозяек, дорвавшихся до компьютеров, сыграли злую шутку — разработчики ринулись удовлетворять их низменные потребности, упрощая все и везде, где только можно. А про профессионалов особо никто не думал. Если еще в сугубо технических программах вроде IDE от Jetbrains программисты делают все для людей и себя любимых, то в более массовом сегменте принято считать, что пользователь дебил, и лучше его мозг лишний раз не нагружать, а то забудет что-нибудь купить. Больной мозоль — Опера, сегодня вот еще Яндекс отметился со своими упрощениями. Че уж, говорили б прямо — надо впихнуть везде свои сервисы и привязать вас к себе так, чтоб даже не рыпались, а интерфейс вторичен — попытка соригинальничать, переманить бОльшую аудиторию, прикрывшись заботой об удобстве и функционале. Удобно — когда я сам решаю, как и что должно быть, а не когда меня перед фактом ставят. Дайте больше настроек! Спрячьте их от домохозяек, но скажите нам, где лежат — и все буду счастливы.
            Накипело.
            Полегчало.
              0
              Про хоткеи есть целый пост — горячие клавиши реализованы в соответствии с идеологией Vim
              0
              Довольно странный вопрос, но все же: десктоп-клиент планируется?
                0
                Да, планируем течении пары месяцев выпустить беты для мака и windows

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

              Самое читаемое