Чаще всего я выкладываю у себя на канале в Телеграме сообщения немалого размѣра, но в этом мнѣ всегда неслабо досаждало и мѣшало одно обстоятельство: Telegram начинает показывать подсчитанное им количество использованных сѵмволовъ только тогда, когда их ужé многовато в сообщении, подвергаемом редактированию. (Если же сообщение не подвергается редактированию, а набирается заново, то тогда Telegram и вовсе не начинает считать количество использованных сѵмволовъ даже тогда, когда их ужé многовато в сообщении, а тупо откусывает от сообщения его хвост и кладёт въ ѿдѣльномъ слѣдующемъ сообщении.) Очень трудно заранѣе «на глаз» угадывать, сколько сѵмволовъ осталось ввести до того момента, когда достигнет будет телеграмный лимит длины сообщения (4096 сѵмволовъ).
Можно, конечно, заблаговременно ввести какую-нибудь строку извѣстной длины — напримѣръ, повторение раз за разом «123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789» содержит по десять сѵмволовъ для каждой группы цифр, если считать группу съ послѣдующимъ пробѣломъ (как считает их и сам Telegram), так что этот примѣръ строки содержит 99 сѵмволовъ. Если начать сообщение с такой строки и затѣмъ набирать текст под нею, то перевод строки станет сотым сѵмволомъ и Telegram начнёт браниться на чрезмѣрность числа сѵмволовъ на сотню ранѣе. Но у искусственной многочисленности сѵмволовъ есть свои недостатки (напримѣръ, она препятствует отправке сообщения в Telegram ничуть не хуже, чѣмъ созданная не искусственно).
Ещё можно набирать сообщение не в Телеграме, а в текстовом редакторе, из которого затѣмъ копировать в Telegram. В большинстве таких редакторов под окном ввода текста есть строка состояния, в которой показывается номер столбца, нарастающий по мѣрѣ ввода текста в строке — можно номером столбца пользоваться как индикатором длины текста. Но у этого подхода три недостатка:
➊ В отличие от редакторов «документов» (таких редакторов, каковы и LibreOffice Writer, и Microsoft Word), редакторы «просто текста» (такие, как EmEditor или Notepad++) не способны сохранять оформление текста. Приходится заранѣе составлять параллельный список таких словосочетаний, которые потóм (послѣ копирования текста внутрь Телеграма) захочется сдѣлать жирными, курсивными, подспойлерными, гиперссылками, etc.
➋ Нѣкоторые редакторы текста (напримѣръ, EmEditor) норовят при подсчёте номера столбца считать один сѵмволъ за два, если мнят его сѵмволомъ повышенной ширины. Таковы и иероглифы (напримѣръ, «魔»), и числа в кружкáх (напримѣръ, «⑪»), и многие эмоджи (напримѣръ, «🪗»), и проч. А вот Telegram с такими сѵмволами так не поступает (и правильно, а не то нам пришлось бы ещё сильнѣе экономить их в Телеграме) — значит, номер столбца в редакторе текста перестаёт быть годным аналогом телеграмнаго подсчёта сѵмволовъ.
➌ Номер столбца показывает количество текста в одной строке. Чтобы измѣрить количество текста во всём сообщении, нужно либо хорошо владѣть устным счётом четырёхзначных чисел (быстро складывать в уме всѣ номера послѣднихъ столбцовъ, сперва посмотрѣвъ ихъ в каждой из непустых строк), либо составлять всё сообщение как одну большую длинную строку, а планируемыя пустыя строки помѣчать двойным неиспользуемым сѵмволомъ (напримѣръ, «··»), замѣняя его двойным переходом на новую строку перед окончательным копированием сообщения внутрь Телеграма.
В конце концов я подзадолбался и вспомнил, что EmEditor — это скриптуемый текстовый редактор: в нём можно запускать скрипты (правда, в нём они зовутся не скриптами, а макросами, но это не принципиально) и взаимодѣйствовать с объектною моделью документа.
Вспомнив это, я сочинил для EmEditor (и прилагаю здѣсь) макрос подсчёта числа сѵмволовъ внутри выдѣленнаго текста, а если ничего не выдѣлено — то от курсора до начала файла. А почему не от начала до конца файла? — потому, что черновик может содержать наброски нѣсколькихъ сообщений или (как я это ужé упоминал чуть выше) список словосочетаний, которые потóм (послѣ копирования текста внутрь Телеграма) захочется сдѣлать жирными, курсивными, подспойлерными, гиперссылками, etc.