summaryrefslogtreecommitdiff
path: root/go/acronym.go
diff options
context:
space:
mode:
Diffstat (limited to 'go/acronym.go')
-rw-r--r--go/acronym.go48
1 files changed, 33 insertions, 15 deletions
diff --git a/go/acronym.go b/go/acronym.go
index 52c4323..b6ead6b 100644
--- a/go/acronym.go
+++ b/go/acronym.go
@@ -31,8 +31,19 @@ func main() {
dict[ strings.ToLower( scanner.Text()[:1] ) ] = append( dict[ strings.ToLower( scanner.Text()[:1] ) ], scanner.Text() )
}
- cbkr := regexp.MustCompile( "^[0-9]{2}:[0-9]{2} <(.bungmonkey|.cornbugs|.wishapb|@[a-zA-Z0-9_]+)> +!cbk" )
- backronymr := regexp.MustCompile( "^[0-9]{2}:[0-9]{2} <(.bungmonkey|.cornbugs|.wishapb|.nottobiii|@[a-zA-Z0-9_]+)> +!backronym ([a-zA-Z]{1,12})( |$)" )
+ gdictfile, err := os.Open( "/usr/share/dict/ngerman" )
+ check( err )
+
+ defer gdictfile.Close()
+ gscanner := bufio.NewScanner( gdictfile )
+ gscanner.Split( bufio.ScanLines )
+ gdict := make( map[string][]string )
+ for gscanner.Scan() {
+ gdict[ strings.ToLower( gscanner.Text()[:1] ) ] = append( gdict[ strings.ToLower( gscanner.Text()[:1] ) ], gscanner.Text() )
+ }
+
+ backronymr := regexp.MustCompile( "^[0-9]{2}:[0-9]{2} <(.bungmonkey|.cornbugs|.wishapb|.ameera|.bungmonkey|.nottobiii|.sash_isynergy|@[a-zA-Z0-9_]+)> +!backronym ([a-zA-Z]{1,12})( |$)" )
+ akronymr := regexp.MustCompile( "^[0-9]{2}:[0-9]{2} <(.bungmonkey|.cornbugs|.wishapb|.ameera|.bungmonkey|.nottobiii|.sash_isynergy|@[a-zA-Z0-9_]+)> +!akronym ([a-zA-Z]{1,12})( |$)" )
bungr := regexp.MustCompile( "^[0-9]{2}:[0-9]{2} <.bungmonkey> +!cbk" )
logfile, err := tail.TailFile( os.ExpandEnv( "${HOME}/irclogs/twitch/#bungmonkey.log" ), tail.Config{ Follow: true, Location: &tail.SeekInfo{ 0, os.SEEK_END } } )
check( err )
@@ -41,17 +52,6 @@ func main() {
if bungr.MatchString( logline.Text ) {
time.Sleep( time.Second )
}
- if cbkr.MatchString( logline.Text ) {
- var cbk string
- cbk = fmt.Sprintf( "%s %s %s\n", dict["c"][ rand.Intn( len( dict["c"] ) ) ], dict["b"][ rand.Intn( len( dict["b"] ) ) ], dict["k"][ rand.Intn( len( dict["k"] ) ) ] )
- fmt.Printf( "%v", cbk )
- ircsocket, err := net.Dial( "unix", os.ExpandEnv( "${HOME}/.irssi/twitch-bungmonkey-socket" ) )
- check( err )
- byteswritten, err := ircsocket.Write( []byte( cbk ) )
- ircsocket.Close()
- check( err )
- fmt.Printf( "%v bytes written\n", byteswritten )
- }
if backronymr.MatchString( logline.Text ) {
var commandarg []string
var backronymarr []string
@@ -62,14 +62,32 @@ func main() {
backronymarr = append( backronymarr, dict[ strings.ToLower( string( char ) )][ rand.Intn( len( dict[ strings.ToLower( string( char ) ) ] ) ) ] )
}
backronymstring = strings.Join( backronymarr, " " )
- ircsocket, err := net.Dial( "unix", os.ExpandEnv( "${HOME}/.irssi/twitch-bungmonkey-socket" ) )
+ ircsocket, err := net.Dial( "unix", os.ExpandEnv( "${HOME}/.irssi/twitch-socket" ) )
check( err )
- backronymstring = fmt.Sprintf( "%s\n", backronymstring )
+ backronymstring = fmt.Sprintf( "#bungmonkey %s\n", backronymstring )
byteswritten, err := ircsocket.Write( []byte( backronymstring ) )
ircsocket.Close()
fmt.Printf( "%v\n", backronymstring )
fmt.Printf( "%v bytes written\n", byteswritten )
}
+ if akronymr.MatchString( logline.Text ) {
+ var gcommandargg []string
+ var gbackronymarr []string
+ var gbackronymstring string
+
+ gcommandargg = akronymr.FindStringSubmatch( logline.Text )
+ for _, char := range( gcommandargg[2] ) {
+ gbackronymarr = append( gbackronymarr, gdict[ strings.ToLower( string( char ) )][ rand.Intn( len( gdict[ strings.ToLower( string( char ) ) ] ) ) ] )
+ }
+ gbackronymstring = strings.Join( gbackronymarr, " " )
+ ircsocket, err := net.Dial( "unix", os.ExpandEnv( "${HOME}/.irssi/twitch-socket" ) )
+ check( err )
+ gbackronymstring = fmt.Sprintf( "#bungmonkey %s\n", gbackronymstring )
+ byteswritten, err := ircsocket.Write( []byte( gbackronymstring ) )
+ ircsocket.Close()
+ fmt.Printf( "%v\n", gbackronymstring )
+ fmt.Printf( "%v bytes written\n", byteswritten )
+ }
}
}