X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=bin%2Frbot;h=a8dd39c4c279a07fec80e7a7cc8621f03e464244;hb=613750983b43546d8bd2732c9159ff766a1c42bd;hp=6d8ecec39e2f6cd501a114bb3f7b7819a4cd19ef;hpb=15846be1af87eefbb2d339c4c28ffbc9c1268d6a;p=user%2Fhenk%2Fcode%2Fruby%2Frbot.git diff --git a/bin/rbot b/bin/rbot index 6d8ecec3..a8dd39c4 100755 --- a/bin/rbot +++ b/bin/rbot @@ -36,90 +36,19 @@ Please note that the logfile doesn't contain IRC logs (which are located at =end -# Copyright (C) 2002 Tom Gilbert. +# Copyright (C) 2002-2006 Tom Gilbert. +# Copyright (C) 2007-2008 Giuseppe Bilotta and the rbot development team # -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies of the Software and its documentation and acknowledgment shall be -# given in the documentation and software packages that this Software was -# used. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -# Most of the string processing across rbot is done against IRC messages, which -# do not have a well-defined encoding. Although many clients are now using -# UTF-8, there is no guarantee that an arbitrary string received from IRC will -# be UTF-8 encoded. We have to force ASCII (byte-wise/charset agnostic) -# matching because otherwise some strings can give problems: in particular, for -# example, the bytesequence "\340\350\354\362\371" (that is the aeiou vowels, -# each with a grave accent) will cause the string to be considered up to the -# "\354" (i with grave accent) only: so either the rest of the message is -# ignored, or the matching fails. -$KCODE = 'a' - -$VERBOSE=true +# This is free software, see COPYING for licensing details require 'etc' require 'getoptlong' require 'fileutils' -$version="0.9.11-git" +$version ||= '0.9.15' +$version_timestamp ||= 0 $opts = Hash.new -if $version =~ /git/ - if defined?(SCM_DIR) and File.exists?(File.join(SCM_DIR, '.git')) - git_out = `git status` - - git_out.match(/^# On branch (.*)\n/) - if $1 # git 1.5.x - branch = $1.dup || "unknown" - changed = git_out.match(/^# Change(.*)\n/) - rev = "revision " - git_out = `git log -1 --pretty=format:"%h%n%b"`.split("\n") - rev << git_out.first - if git_out.last.match(/^git-svn-id: \S+@(\d+)/) - rev << "(svn #{$1})" - end - rev << ", local changes" if changed - else # older gits - git_out = `git branch` - git_out.match(/^\* (.*)\n/) - branch = $1.dup rescue "unknown" - rev = "revision " + `git rev-parse HEAD`[0,6] - end - - $version << " (#{branch} branch, #{rev})" - else - up = File.dirname(__FILE__) + "/.." - rev = " (unknown revision)" - begin - svn_out = `svn info #{up}` - if svn_out =~ /Last Changed Rev: (\d+)/ - rev = " (revision #{$1}" - end - svn_st = `svn st #{up}` - if svn_st =~ /^[MDA] / - rev << ", local changes" - end - rev << ")" - rescue => e - puts e.inspect - end - $version += rev - end -end - orig_opts = ARGV.dup opts = GetoptLong.new( @@ -158,8 +87,10 @@ if File.directory? "#{defaultlib}/rbot" $:.unshift defaultlib end end - + begin + Encoding.default_internal = Encoding::UTF_8 + Encoding.default_external = Encoding::UTF_8 require 'rbot/ircbot' rescue LoadError => e puts "Error: couldn't find the rbot/ircbot module (or one of its dependencies)\n"