mirror of
https://github.com/shazow/ssh-chat.git
synced 2025-04-14 16:17:17 +03:00
Make highlights stand out
Also re-fixed empty message check No longer re-seeding the RNG on each call for colors
This commit is contained in:
parent
cc01deb4bb
commit
fb5c2152cb
@ -324,7 +324,7 @@ func (c *Client) handleShell(channel ssh.Channel) {
|
||||
c.Msg <- fmt.Sprintf("-> Rate limiting in effect.")
|
||||
continue
|
||||
}
|
||||
if c.IsSilenced() || len(msg) > 1000 || len(msg) == 0 {
|
||||
if c.IsSilenced() || len(msg) > 1000 || len(line) < 1 {
|
||||
c.SysMsg("Message rejected.")
|
||||
continue
|
||||
}
|
||||
|
3
cmd.go
3
cmd.go
@ -36,6 +36,9 @@ func main() {
|
||||
return
|
||||
}
|
||||
|
||||
// Initialize seed for random colors
|
||||
RandomColorInit()
|
||||
|
||||
// Figure out the log level
|
||||
numVerbose := len(options.Verbose)
|
||||
if numVerbose > len(logLevels) {
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"fmt"
|
||||
"strings"
|
||||
"math/rand"
|
||||
"time"
|
||||
"time"
|
||||
)
|
||||
|
||||
const RESET string = "\033[0m"
|
||||
@ -18,12 +18,10 @@ const INVERT string = "\033[7m"
|
||||
var colors = []string { "31", "32", "33", "34", "35", "36", "37", "91", "92", "93", "94", "95", "96", "97" }
|
||||
|
||||
func RandomColor256() string {
|
||||
rand.Seed(time.Now().UTC().UnixNano())
|
||||
return fmt.Sprintf("38;05;%d", rand.Intn(256))
|
||||
}
|
||||
|
||||
func RandomColor() string {
|
||||
rand.Seed(time.Now().UTC().UnixNano())
|
||||
return colors[rand.Intn(len(colors))]
|
||||
}
|
||||
|
||||
@ -31,6 +29,10 @@ func ColorString(color string, msg string) string {
|
||||
return BOLD + "\033[" + color + "m" + msg + RESET
|
||||
}
|
||||
|
||||
func RandomColorInit() {
|
||||
rand.Seed(time.Now().UTC().UnixNano())
|
||||
}
|
||||
|
||||
// Horrible hack to "continue" the previous string color and format
|
||||
// after a RESET has been encountered.
|
||||
// This is not HTML where you can just do a </style> to resume your previous formatting!
|
||||
|
13
server.go
13
server.go
@ -89,10 +89,15 @@ func (s *Server) Broadcast(msg string, except *Client) {
|
||||
continue
|
||||
}
|
||||
|
||||
client.Send(msg)
|
||||
if client.beepMe && strings.Contains(msg, client.Name) {
|
||||
/* Add an ascii BEL to ding clients when they're mentioned */
|
||||
client.Send(BEEP)
|
||||
if strings.Contains(msg, client.Name) {
|
||||
// Turn message red if client's name is mentioned, and send BEL if they have enabled beeping
|
||||
tmpMsg := strings.Split(msg, RESET)
|
||||
if client.beepMe {
|
||||
tmpMsg[0] += BEEP
|
||||
}
|
||||
client.Send(strings.Join(tmpMsg, RESET + BOLD + "\033[31m") + RESET)
|
||||
} else {
|
||||
client.Send(msg)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user