Как сделать копирующийся текст в тг: пост или кнопка
Как сделать копирующийся текст в тг зависит от задачи: выделить фрагмент, оформить его моноширинным или дать кнопку бота. Разберём различия и проверку.
М
Марина
Контент-маркетолог LibraChat
6 мин чтения
«Как сделать копирующийся текст в тг?» — под этим вопросом прячутся две разные задачи. Одному автору нужен промокод, который подписчик легко выделит и скопирует. Другой ждёт настоящую кнопку «Копировать» под сообщением. Это разные действия. Я сначала уточняю цель, иначе можно долго менять шрифт и так и не получить кнопку. Для обычного поста хватит аккуратного фрагмента; для кнопки понадобится бот.
Пусть в посте о встрече стоит код `VSTRECHA`: посетитель должен перенести его в форму регистрации. Восемь латинских символов без пробелов легко проверить глазами, если поставить код отдельно от пояснения. В длинной строке читатель может захватить точку или соседнее слово при ручном выделении. Поэтому я сначала выбираю способ показа, затем проверяю копирование на нужном устройстве. Обещать одну и ту же кнопку всем клиентам Telegram нельзя: оформление сообщения и поведение интерфейса не всегда совпадают.
Как сделать копирующийся текст в тг для обычного поста
Самый доступный вариант — показать код отдельной строкой и написать, что с ним делать. Подписчик сможет выделить текст и воспользоваться обычным копированием в приложении. Я не называю это автоматической кнопкой. Кнопки здесь нет. В некоторых клиентах кодовый или моноширинный фрагмент удобно копировать целиком, но поведение интерфейса может отличаться. Поэтому оформление и факт копирования проверяют отдельно.
Для подготовки поста я делаю так:
Убираю из кода пробелы, декоративные символы и похожие буквы, если могу выбрать сам код.
Пишу рядом короткую инструкцию: куда именно его вставить.
Отправляю пробное сообщение себе и проверяю копирование на устройстве читателя.
Шаг с похожими буквами не всегда доступен: код может быть задан организатором. Тогда я сохраняю его побайтно и дописываю пояснение, например «латинские буквы». Я попробовала мысленно пройти путь подписчика: видно ли, что именно выделять? Не всегда. Поэтому сначала точность, потом красота. Ошибка в одной букве делает всю публикацию бесполезной, сколько бы внимания ни привлёк заголовок.
Telegram поддерживает форматирование отдельных фрагментов как код или предварительно оформленный блок. Если хочешь визуально отделить код, набери текст сообщения, выдели нужный фрагмент и найди моноширинный стиль в меню форматирования своего клиента. Названия пунктов и способ открытия меню зависят от версии приложения. Я бы после отправки проверила, что не захватила вместе с кодом двоеточие или пробел. Сам моноширинный вид ещё не доказывает, что у подписчика появилась кнопка копирования.
Когда нужна именно кнопка «Копировать»
Если подписчику нужно нажать отдельную кнопку под сообщением, одного редактирования текста недостаточно. Telegram Bot API поддерживает inline-кнопку с полем `copy_text`: при нажатии клиент копирует заданную строку в буфер обмена. Это функция бота, а не переключатель обычного поста. Я проверила официальную документацию: длина копируемого значения ограничена диапазоном от 1 до 256 символов. Для нашего условного кода этого достаточно. Длинную инструкцию помещать в кнопку не стоит.
Что ты хочешь · Рабочий способ · Что увидит подписчик
Просто дать точный код — Отдельная строка обычного сообщения — Код виден и доступен для выделения
Заметно отделить код от текста — Моноширинное форматирование — Внешне отдельный фрагмент; копирование проверь в клиенте
Дать отдельное действие «Копировать» — Inline-кнопка бота `copy_text` — Кнопка, которая копирует заданную строку
Я собрала в таблице три разных сценария и проверяю её прежде, чем обещать команде «сделаем копирование в один тап». Если каналом управляет человек без бота, последнее решение потребует технической настройки. Это отдельная работа. Её стоит планировать только когда кнопка действительно нужна: например, код регулярно меняется, а пользователю важно быстро перенести его без ручного выделения. Для разовой встречи отдельная строка часто понятнее и быстрее в подготовке.
Если у команды уже есть бот, задачу разработчику можно сформулировать без туманного «сделайте удобно»: «под сообщением показать кнопку с названием “Скопировать код”; `copy_text` должен содержать только актуальный код». Дальше нужен тест на устройствах аудитории. Я не утверждаю, что такая кнопка автоматически появится у обычного сообщения канала после вставки HTML или Markdown.
Иногда копирование не работает даже у аккуратно оформленного поста. Проверь настройки самого канала: Telegram позволяет владельцу включить защиту контента, которая ограничивает копирование сообщений. Если канал твой и задача состоит в распространении кода, это противоречие нужно решить на уровне правил канала. Если сообщение размещено в чужом защищённом канале, форматирование твоего фрагмента не отменит решения его владельца. Формат тут бессилен. Я бы не обещала подписчикам удобное копирование до проверки именно в месте публикации.
Что именно может подготовить нейросеть
В LibraChat можно подготовить подпись к коду и короткую инструкцию для подписчика. Но оформление в Telegram выполняется в самом Telegram, а бот-кнопку подключает команда, которая управляет ботом. Не проси текстовую модель «включить копирование» в уже отправленном посте: она не управляет кнопками приложения.
Для учебного примера я предложила бы такой запрос:
Напиши три короткие подписи к посту о встрече. Код для регистрации: VSTRECHA. Читатель должен скопировать только код и вставить его в форму на странице встречи. Не добавляй дату, адрес или цену: они не указаны. Каждая подпись должна отличаться тоном, но оставаться понятной. Отдели код отдельной строкой.
Затем я выбрала бы вариант, где действие названо первым: «Скопируй код и вставь его в форму регистрации». Только после этого оформляла бы строку в Telegram. Код в промпте учебный; в реальном посте я сверю его с исходным письмом организатора, прежде чем публиковать.
Проверь путь подписчика, а не только вид поста
Перед массовой отправкой я закладываю 5 минут на пробное сообщение и смотрю на него глазами подписчика. Видно ли, какие символы копировать? Не попала ли в выделение точка? Есть ли ссылка на место, куда вставлять код? Не перепутаны ли латинские буквы с похожими русскими? Удобный вид может скрывать ошибку в самом значении.
Скопируй фрагмент из пробного сообщения и вставь в обычное текстовое поле.
Сравни получившуюся строку с исходным кодом посимвольно.
Повтори на телефоне, если пост готовился на компьютере.
Если используешь бота, отдельно проверь, что кнопка несёт актуальную строку.
Для обычного поста начни с короткой подписи: чат LibraChat поможет подготовить варианты текста, а страница тарифов подскажет условия доступа. Если сам пост ещё сырой, сначала разберись, как написать пост. Попробуй отправить себе один пробный вариант в Telegram и скопировать код так, как это сделает подписчик. Сначала тест. Потом публикация. Только после этой проверки решай, нужен ли бот.