How message formatting support makes messenger better


    With the development of applications for instant messaging, users gradually became more and more demanding - at first they had little opportunity to simply send text, but wanted to exchange files, then there was a function to access the message history from any device, and the storage volume increased.

    With all the variety of new features that are available in modern messengers, not all of them allow you to properly format the text for the sake of which they were originally created. While working on the Kato project, we decided to pay more attention to this aspect.


    A significant part of the messengers (when we started working on Kato there were most of them) for one reason or another does not give users wide opportunities for text design - most often it can be varied only with the help of links, emoticons and emoji, but no more.

    Moreover, the spread of messengers has led to the fact that they began to be used for business communications, which imply a more structured information. In such a situation, the inability to create a banal list directly in the message text is a problem for the user.

    If we compare the situation with email, then email wins, because any popular email client can format text beautifully, and not just insert emoticons and attach files.

    Because we do not consider email is an ideal tool for business communication and we want to create a product that would be better suited for this, it was decided to introduce broader text formatting capabilities into the Kato messenger.

    Using Markdown

    The optimal solution to the problem at the first stage was the introduction of Markdown markup support created by John Gruber and Aaron Schwartz into the messenger. This solution has its drawbacks:

    • This is a simplified, but markup language, and you need to deal with it, which immediately makes it unsuitable for a large number of ordinary users.
    • Markdown documentation is frankly bad - this led to the emergence of third-party and better structured implementations (the creators of one of them, called Standard Markdown, John Gruber even made claims and demanded to rename the project so that its secondary was visible).

    However, there are big pluses, the main of which is the ability to write much more complex and richly designed messages than before. In addition, Markdown is still easier than markup and commands of some other services ...

    The number of Kato users who use Markdown in their daily work is already 20% and is constantly increasing, and, according to their reviews, they return to communication in the "text only" mode do not want.

    Since the markup mode cannot be called the most popular function for ordinary users, it is disabled by default. Markdown is enabled in the message input window (that the mode is activated, the corresponding mark is displayed under the input field):


    You can also enable Markdown mode by default.

    After that, the user can write operators for creating lists, highlighting in bold or italics, inserting images, and so on (we have a separate article about the most popular operators):


    In addition, you can view the source Markdown code of
    messages already sent to chat - To do this, click on the "sleepers" on the left side of the message in the history and click the Markdown icon:


    In the future, we plan to introduce a visual editor in Kato that would allow the user to format messages without having to enter omand (most likely, user actions will be automatically translated into Markdown markup).

    Messenger for programmers

    Text formatting is a common problem, but for people who work with program code and use instant messengers, there is one more difficulty - copying the code and then pasting it. Many services (for example, Skype or HipChat) “spoil” the code - the combinations of brackets and colons are interpreted as emoticons, and when you try to use the code copied from the message, it no longer compiles.

    When using these general-purpose chat services, we repeatedly faced this problem, so Kato decided to correct the situation. As a result, another message typing mode was created , which (like Markdown) is activated separately and allows users to exchange code.


    Small pieces of code can be inserted directly into the current line and using the same Markdown (for this, special quotes are used located on the keyboard under the tilde symbol):


    In the code insertion mode, small pieces of it in the chat are displayed entirely:


    Larger sections are displayed using 'paste' links - clicking on it opens a separate window where the code is highlighted:



    Kato users appreciated the possibilities of using Markdown and inserting the code and are grateful for their implementation.

    That's all for today. In the next article we will talk about a document that no one reads, but which is very important - the privacy policy of the messenger and about who, when and how gets access to the story.

    Also popular now: