|
|
|
@ -16,6 +16,7 @@ import (
|
|
|
|
|
"strconv"
|
|
|
|
|
"strings"
|
|
|
|
|
"time"
|
|
|
|
|
"unicode/utf8"
|
|
|
|
|
|
|
|
|
|
"dev.narayana.im/narayana/telegabber/telegram/cache"
|
|
|
|
|
"dev.narayana.im/narayana/telegabber/telegram/formatter"
|
|
|
|
@ -42,7 +43,7 @@ var spaceRegex = regexp.MustCompile(`\s+`)
|
|
|
|
|
var replyRegex = regexp.MustCompile("\\A>>? ?([0-9]+)\\n")
|
|
|
|
|
|
|
|
|
|
const newlineChar string = "\n"
|
|
|
|
|
const messageHeaderSeparator string = " | "
|
|
|
|
|
const messageHeaderSeparator string = " | " // no hrunicode allowed here yet
|
|
|
|
|
|
|
|
|
|
// GetContactByUsername resolves username to user id retrieves user and chat information
|
|
|
|
|
func (c *Client) GetContactByUsername(username string) (*client.Chat, *client.User, error) {
|
|
|
|
@ -845,7 +846,7 @@ func (c *Client) contentToFile(content client.MessageContent) (*client.File, *cl
|
|
|
|
|
|
|
|
|
|
func (c *Client) countCharsInLines(lines *[]string) (count int) {
|
|
|
|
|
for _, line := range *lines {
|
|
|
|
|
count += len(line)
|
|
|
|
|
count += utf8.RuneCountInString(line)
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
@ -895,7 +896,7 @@ func (c *Client) messageToPrefix(message *client.Message, previewString string,
|
|
|
|
|
}
|
|
|
|
|
replyLine := "reply: " + c.formatMessage(message.ChatId, message.ReplyToMessageId, true, replyMsg)
|
|
|
|
|
prefix = append(prefix, replyLine)
|
|
|
|
|
replyEnd = replyStart + len(replyLine)
|
|
|
|
|
replyEnd = replyStart + utf8.RuneCountInString(replyLine)
|
|
|
|
|
if len(prefix) > 0 {
|
|
|
|
|
replyEnd += len(messageHeaderSeparator)
|
|
|
|
|
}
|
|
|
|
|