diff options
author | Yaohan Chen <yaohan.chen@gmail.com> | 2007-08-11 03:21:38 +0000 |
---|---|---|
committer | Yaohan Chen <yaohan.chen@gmail.com> | 2007-08-11 03:21:38 +0000 |
commit | c6a2d538ad42c905aeb4ebaf3047df83d58acddd (patch) | |
tree | 1ebd2339efa21661c4d90f88c65cf950866cfcf9 | |
parent | 2afa17906a6c819517c048d55a57a358a7b7fb8d (diff) |
translator.rb:
+ added WorldLingo translator
+ display translator information in help messages
* refactoring of error handling code
* updated messages
-rw-r--r-- | data/rbot/plugins/translator.rb | 74 | ||||
-rw-r--r-- | po/en_US/rbot.po | 58 | ||||
-rw-r--r-- | po/ja/rbot.po | 58 | ||||
-rw-r--r-- | po/rbot.pot | 58 | ||||
-rw-r--r-- | po/zh_CN/rbot.po | 58 | ||||
-rw-r--r-- | po/zh_TW/rbot.po | 58 |
6 files changed, 212 insertions, 152 deletions
diff --git a/data/rbot/plugins/translator.rb b/data/rbot/plugins/translator.rb index 76392ccc..47ff329f 100644 --- a/data/rbot/plugins/translator.rb +++ b/data/rbot/plugins/translator.rb @@ -19,10 +19,14 @@ require 'timeout' # methods in the Direction module are convenient for initializing this # attribute class Translator + INFO = 'Some translation service' class UnsupportedDirectionError < ArgumentError end + class NoTranslationError < RuntimeError + end + attr_reader :directions, :cache def initialize(directions, cache={}) @@ -36,18 +40,26 @@ class Translator from != to && @directions[from].include?(to) end - # this implements checking of languages and caching. subclasses should define the + # this implements argument checking and caching. subclasses should define the # do_translate method to implement actual translation def translate(text, from, to) raise UnsupportedDirectionError unless support?(from, to) - @cache[[text, from, to]] ||= do_translate(text, from, to) + raise ArgumentError, _("Cannot translate empty string") if text.empty? + request = [text, from, to] + unless @cache.has_key? request + translation = do_translate(text, from, to) + raise NoTranslationError if translation.empty? + @cache[request] = translation + else + @cache[request] + end end module Direction # given the set of supported languages, return a hash suitable for the directions # attribute which includes any language to any other language def self.all_to_all(languages) - directions = all_to_all(languages) + directions = all_to_none(languages) languages.each {|l| directions[l] = languages.to_set} directions end @@ -88,6 +100,8 @@ end class NiftyTranslator < Translator + INFO = '@nifty Translation <http://nifty.amikai.com/amitext/indexUTF8.jsp>' + def initialize(cache={}) require 'mechanize' super(Translator::Direction.all_from_to(%w[ja en zh_CN ko], %w[ja]), cache) @@ -107,6 +121,7 @@ end class ExciteTranslator < Translator + INFO = 'Excite.jp Translation <http://www.excite.co.jp/world/>' def initialize(cache={}) require 'mechanize' @@ -158,6 +173,8 @@ end class GoogleTranslator < Translator + INFO = 'Google Translate <http://www.google.com/translate_t>' + def initialize(cache={}) require 'mechanize' load_form! @@ -188,6 +205,8 @@ end class BabelfishTranslator < Translator + INFO = 'AltaVista Babel Fish Translation <http://babelfish.altavista.com/babelfish/>' + def initialize(cache) require 'mechanize' @@ -210,6 +229,28 @@ class BabelfishTranslator < Translator end end +class WorldlingoTranslator < Translator + INFO = 'WorldLingo Free Online Translator <http://www.worldlingo.com/en/products_services/worldlingo_translator.html>' + + LANGUAGES = %w[en fr de it pt es ru nl el sv ar ja ko zh_CN zh_TW] + def initialize(cache) + require 'uri' + super(Translator::Direction.all_to_all(LANGUAGES), cache) + end + + def translate(text, from, to) + response = Irc::Plugins.manager['translator'].bot.httputil.get_response( + URI.escape("http://www.worldlingo.com/SEfpX0LV2xIxsIIELJ,2E5nOlz5RArCY,/texttranslate?wl_srcenc=utf-8&wl_trgenc=utf-8&wl_text=#{text}&wl_srclang=#{from.upcase}&wl_trglang=#{to.upcase}")) + # WorldLingo seems to respond an XML when error occurs + case response['Content-Type'] + when %r'text/plain' + response.body + else + raise Translator::NoTranslationError + end + end +end + class TranslatorPlugin < Plugin BotConfig.register BotConfigIntegerValue.new('translate.timeout', :default => 30, :validate => Proc.new{|v| v > 0}, @@ -221,7 +262,8 @@ class TranslatorPlugin < Plugin 'nifty' => NiftyTranslator, 'excite' => ExciteTranslator, 'google_translate' => GoogleTranslator, - 'babelfish' => BabelfishTranslator + 'babelfish' => BabelfishTranslator, + 'worldlingo' => WorldlingoTranslator, } @translators = {} @@ -239,15 +281,16 @@ class TranslatorPlugin < Plugin def help(plugin, topic=nil) if @translators.has_key?(topic) - _('Supported directions of translation for %{translator}: %{directions}') % { - :translator => topic, - :directions => @translators[topic].directions.map do |source, targets| + translator = @translators[topic] + _('%{info}, supported directions of translation: %{directions}') % { + :info => translator.class::INFO, + :directions => translator.directions.map do |source, targets| _('%{source} -> %{targets}') % {:source => source, :targets => targets.to_a.join(', ')} end.join(' | ') } else - _('Command: <translator> <from> <to> <phrase>, where <translator> is one of: %{translators}. Use help <translator> to look up supported from and to languages') % + _('Command: <translator> <from> <to> <phrase>, where <translator> is one of: %{translators}. Use "help translator <translator>" to look up supported from and to languages') % {:translators => @translators.keys.join(', ')} end end @@ -259,24 +302,21 @@ class TranslatorPlugin < Plugin from, to, phrase = params[:from], params[:to], params[:phrase].to_s if translator begin - if translator.support?(from, to) translation = Timeout.timeout(@bot.config['translate.timeout']) do translator.translate(phrase, from, to) end - if translation.empty? - m.reply _('No translation returned') - else - m.reply translation - end - else + m.reply translation + rescue Translator::UnsupportedDirectionError m.reply _("%{translator} doesn't support translating from %{source} to %{target}") % {:translator => tname, :source => from, :target => to} - end + rescue Translator::NoTranslationError + m.reply _('%{translator} failed to provide a translation') % + {:translator => tname} rescue Timeout::Error m.reply _('The translator timed out') end else - m.reply _('No translator called %{name}') % {:name => translator} + m.reply _('No translator called %{name}') % {:name => tname} end end end diff --git a/po/en_US/rbot.po b/po/en_US/rbot.po index d95fe2de..c1c47e7d 100644 --- a/po/en_US/rbot.po +++ b/po/en_US/rbot.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: rbot\n" -"POT-Creation-Date: 2007-08-10 05:14-0400\n" +"POT-Creation-Date: 2007-08-10 23:18-0400\n" "PO-Revision-Date: 2007-07-14 00:06-0400\n" "Last-Translator: Yaohan Chen <yaohan.chen@gmail.com>\n" "Language-Team: English\n" @@ -945,51 +945,51 @@ msgstr "" "dictclient databases => List databases; dictclient strategies => List " "strategies" -#: data/rbot/plugins/alias.rb:51 +#: data/rbot/plugins/alias.rb:52 msgid "Data file is not found or corrupt, reinitializing data" msgstr "" -#: data/rbot/plugins/alias.rb:58 +#: data/rbot/plugins/alias.rb:59 msgid "Invalid alias entry %{alias} : %{command} in %{filename}: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:74 +#: data/rbot/plugins/alias.rb:75 msgid "The definition you provided is invalid: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:85 data/rbot/plugins/alias.rb:102 +#: data/rbot/plugins/alias.rb:86 data/rbot/plugins/alias.rb:103 msgid "No such alias is defined" msgstr "" -#: data/rbot/plugins/alias.rb:91 +#: data/rbot/plugins/alias.rb:92 msgid "No aliases defined" msgstr "" -#: data/rbot/plugins/alias.rb:100 +#: data/rbot/plugins/alias.rb:101 msgid "Alias of %{command}" msgstr "" -#: data/rbot/plugins/alias.rb:112 +#: data/rbot/plugins/alias.rb:113 msgid "" "The arguments in alias must match the substitutions in command, and vice " "versa" msgstr "" -#: data/rbot/plugins/alias.rb:129 +#: data/rbot/plugins/alias.rb:130 msgid "" "The alias seems to have caused infinite recursion. Please examine your alias " "definitions" msgstr "" -#: data/rbot/plugins/alias.rb:145 +#: data/rbot/plugins/alias.rb:146 msgid "Error handling the alias, the command is not defined" msgstr "" -#: data/rbot/plugins/alias.rb:155 +#: data/rbot/plugins/alias.rb:156 msgid "Create and use aliases for commands. Topics: create, commands" msgstr "" -#: data/rbot/plugins/alias.rb:157 +#: data/rbot/plugins/alias.rb:158 msgid "" "\"alias <text> => <command>\" => add text as an alias of command. Text can " "contain placeholders marked with : or * for :words and *multiword arguments. " @@ -998,49 +998,53 @@ msgid "" "google site:linuxbrit.co.uk/rbot/ <terms>" msgstr "" -#: data/rbot/plugins/alias.rb:159 +#: data/rbot/plugins/alias.rb:160 msgid "" "alias list => list defined aliases | alias whatis <alias> => show definition " "of the alias | alias remove <alias> => remove defined alias | see the " "\"create\" topic about adding aliases" msgstr "" -#: data/rbot/plugins/translator.rb:217 +#: data/rbot/plugins/translator.rb:47 +msgid "Cannot translate empty string" +msgstr "" + +#: data/rbot/plugins/translator.rb:257 msgid "Number of seconds to wait for the translation service before timeout" msgstr "" -#: data/rbot/plugins/translator.rb:235 +#: data/rbot/plugins/translator.rb:276 msgid "Translator %{name} cannot be used: %{reason}" msgstr "" -#: data/rbot/plugins/translator.rb:243 -msgid "Supported directions of translation for %{translator}: %{directions}" +#: data/rbot/plugins/translator.rb:285 +msgid "%{info}, supported directions of translation: %{directions}" msgstr "" -#: data/rbot/plugins/translator.rb:246 +#: data/rbot/plugins/translator.rb:288 msgid "%{source} -> %{targets}" msgstr "" -#: data/rbot/plugins/translator.rb:251 +#: data/rbot/plugins/translator.rb:293 msgid "" "Command: <translator> <from> <to> <phrase>, where <translator> is one of: %" -"{translators}. Use help <translator> to look up supported from and to " -"languages" +"{translators}. Use \"help translator <translator>\" to look up supported " +"from and to languages" msgstr "" -#: data/rbot/plugins/translator.rb:267 -msgid "No translation returned" +#: data/rbot/plugins/translator.rb:310 +msgid "%{translator} doesn't support translating from %{source} to %{target}" msgstr "" -#: data/rbot/plugins/translator.rb:272 -msgid "%{translator} doesn't support translating from %{source} to %{target}" +#: data/rbot/plugins/translator.rb:313 +msgid "%{translator} failed to provide a translation" msgstr "" -#: data/rbot/plugins/translator.rb:276 +#: data/rbot/plugins/translator.rb:316 msgid "The translator timed out" msgstr "" -#: data/rbot/plugins/translator.rb:279 +#: data/rbot/plugins/translator.rb:319 msgid "No translator called %{name}" msgstr "" diff --git a/po/ja/rbot.po b/po/ja/rbot.po index af2b3cdf..55cabe4a 100644 --- a/po/ja/rbot.po +++ b/po/ja/rbot.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: rbot\n" -"POT-Creation-Date: 2007-08-10 05:14-0400\n" +"POT-Creation-Date: 2007-08-10 23:18-0400\n" "PO-Revision-Date: 2007-07-09 01:36-0400\n" "Last-Translator: Yaohan Chen <yaohan.chen@gmail.com>\n" "Language-Team: Japanese\n" @@ -829,51 +829,51 @@ msgid "" "strategies" msgstr "" -#: data/rbot/plugins/alias.rb:51 +#: data/rbot/plugins/alias.rb:52 msgid "Data file is not found or corrupt, reinitializing data" msgstr "" -#: data/rbot/plugins/alias.rb:58 +#: data/rbot/plugins/alias.rb:59 msgid "Invalid alias entry %{alias} : %{command} in %{filename}: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:74 +#: data/rbot/plugins/alias.rb:75 msgid "The definition you provided is invalid: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:85 data/rbot/plugins/alias.rb:102 +#: data/rbot/plugins/alias.rb:86 data/rbot/plugins/alias.rb:103 msgid "No such alias is defined" msgstr "" -#: data/rbot/plugins/alias.rb:91 +#: data/rbot/plugins/alias.rb:92 msgid "No aliases defined" msgstr "" -#: data/rbot/plugins/alias.rb:100 +#: data/rbot/plugins/alias.rb:101 msgid "Alias of %{command}" msgstr "" -#: data/rbot/plugins/alias.rb:112 +#: data/rbot/plugins/alias.rb:113 msgid "" "The arguments in alias must match the substitutions in command, and vice " "versa" msgstr "" -#: data/rbot/plugins/alias.rb:129 +#: data/rbot/plugins/alias.rb:130 msgid "" "The alias seems to have caused infinite recursion. Please examine your alias " "definitions" msgstr "" -#: data/rbot/plugins/alias.rb:145 +#: data/rbot/plugins/alias.rb:146 msgid "Error handling the alias, the command is not defined" msgstr "" -#: data/rbot/plugins/alias.rb:155 +#: data/rbot/plugins/alias.rb:156 msgid "Create and use aliases for commands. Topics: create, commands" msgstr "" -#: data/rbot/plugins/alias.rb:157 +#: data/rbot/plugins/alias.rb:158 msgid "" "\"alias <text> => <command>\" => add text as an alias of command. Text can " "contain placeholders marked with : or * for :words and *multiword arguments. " @@ -882,49 +882,53 @@ msgid "" "google site:linuxbrit.co.uk/rbot/ <terms>" msgstr "" -#: data/rbot/plugins/alias.rb:159 +#: data/rbot/plugins/alias.rb:160 msgid "" "alias list => list defined aliases | alias whatis <alias> => show definition " "of the alias | alias remove <alias> => remove defined alias | see the " "\"create\" topic about adding aliases" msgstr "" -#: data/rbot/plugins/translator.rb:217 +#: data/rbot/plugins/translator.rb:47 +msgid "Cannot translate empty string" +msgstr "" + +#: data/rbot/plugins/translator.rb:257 msgid "Number of seconds to wait for the translation service before timeout" msgstr "" -#: data/rbot/plugins/translator.rb:235 +#: data/rbot/plugins/translator.rb:276 msgid "Translator %{name} cannot be used: %{reason}" msgstr "" -#: data/rbot/plugins/translator.rb:243 -msgid "Supported directions of translation for %{translator}: %{directions}" +#: data/rbot/plugins/translator.rb:285 +msgid "%{info}, supported directions of translation: %{directions}" msgstr "" -#: data/rbot/plugins/translator.rb:246 +#: data/rbot/plugins/translator.rb:288 msgid "%{source} -> %{targets}" msgstr "" -#: data/rbot/plugins/translator.rb:251 +#: data/rbot/plugins/translator.rb:293 msgid "" "Command: <translator> <from> <to> <phrase>, where <translator> is one of: %" -"{translators}. Use help <translator> to look up supported from and to " -"languages" +"{translators}. Use \"help translator <translator>\" to look up supported " +"from and to languages" msgstr "" -#: data/rbot/plugins/translator.rb:267 -msgid "No translation returned" +#: data/rbot/plugins/translator.rb:310 +msgid "%{translator} doesn't support translating from %{source} to %{target}" msgstr "" -#: data/rbot/plugins/translator.rb:272 -msgid "%{translator} doesn't support translating from %{source} to %{target}" +#: data/rbot/plugins/translator.rb:313 +msgid "%{translator} failed to provide a translation" msgstr "" -#: data/rbot/plugins/translator.rb:276 +#: data/rbot/plugins/translator.rb:316 msgid "The translator timed out" msgstr "" -#: data/rbot/plugins/translator.rb:279 +#: data/rbot/plugins/translator.rb:319 msgid "No translator called %{name}" msgstr "" diff --git a/po/rbot.pot b/po/rbot.pot index e7a2590a..7f0309a6 100644 --- a/po/rbot.pot +++ b/po/rbot.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: rbot\n" -"POT-Creation-Date: 2007-08-10 05:14-0400\n" +"POT-Creation-Date: 2007-08-10 23:18-0400\n" "PO-Revision-Date: 2007-07-09 01:24-0400\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -839,51 +839,51 @@ msgid "" "strategies" msgstr "" -#: data/rbot/plugins/alias.rb:51 +#: data/rbot/plugins/alias.rb:52 msgid "Data file is not found or corrupt, reinitializing data" msgstr "" -#: data/rbot/plugins/alias.rb:58 +#: data/rbot/plugins/alias.rb:59 msgid "Invalid alias entry %{alias} : %{command} in %{filename}: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:74 +#: data/rbot/plugins/alias.rb:75 msgid "The definition you provided is invalid: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:85 data/rbot/plugins/alias.rb:102 +#: data/rbot/plugins/alias.rb:86 data/rbot/plugins/alias.rb:103 msgid "No such alias is defined" msgstr "" -#: data/rbot/plugins/alias.rb:91 +#: data/rbot/plugins/alias.rb:92 msgid "No aliases defined" msgstr "" -#: data/rbot/plugins/alias.rb:100 +#: data/rbot/plugins/alias.rb:101 msgid "Alias of %{command}" msgstr "" -#: data/rbot/plugins/alias.rb:112 +#: data/rbot/plugins/alias.rb:113 msgid "" "The arguments in alias must match the substitutions in command, and vice " "versa" msgstr "" -#: data/rbot/plugins/alias.rb:129 +#: data/rbot/plugins/alias.rb:130 msgid "" "The alias seems to have caused infinite recursion. Please examine your alias " "definitions" msgstr "" -#: data/rbot/plugins/alias.rb:145 +#: data/rbot/plugins/alias.rb:146 msgid "Error handling the alias, the command is not defined" msgstr "" -#: data/rbot/plugins/alias.rb:155 +#: data/rbot/plugins/alias.rb:156 msgid "Create and use aliases for commands. Topics: create, commands" msgstr "" -#: data/rbot/plugins/alias.rb:157 +#: data/rbot/plugins/alias.rb:158 msgid "" "\"alias <text> => <command>\" => add text as an alias of command. Text can " "contain placeholders marked with : or * for :words and *multiword arguments. " @@ -892,49 +892,53 @@ msgid "" "google site:linuxbrit.co.uk/rbot/ <terms>" msgstr "" -#: data/rbot/plugins/alias.rb:159 +#: data/rbot/plugins/alias.rb:160 msgid "" "alias list => list defined aliases | alias whatis <alias> => show definition " "of the alias | alias remove <alias> => remove defined alias | see the " "\"create\" topic about adding aliases" msgstr "" -#: data/rbot/plugins/translator.rb:217 +#: data/rbot/plugins/translator.rb:47 +msgid "Cannot translate empty string" +msgstr "" + +#: data/rbot/plugins/translator.rb:257 msgid "Number of seconds to wait for the translation service before timeout" msgstr "" -#: data/rbot/plugins/translator.rb:235 +#: data/rbot/plugins/translator.rb:276 msgid "Translator %{name} cannot be used: %{reason}" msgstr "" -#: data/rbot/plugins/translator.rb:243 -msgid "Supported directions of translation for %{translator}: %{directions}" +#: data/rbot/plugins/translator.rb:285 +msgid "%{info}, supported directions of translation: %{directions}" msgstr "" -#: data/rbot/plugins/translator.rb:246 +#: data/rbot/plugins/translator.rb:288 msgid "%{source} -> %{targets}" msgstr "" -#: data/rbot/plugins/translator.rb:251 +#: data/rbot/plugins/translator.rb:293 msgid "" "Command: <translator> <from> <to> <phrase>, where <translator> is one of: %" -"{translators}. Use help <translator> to look up supported from and to " -"languages" +"{translators}. Use \"help translator <translator>\" to look up supported " +"from and to languages" msgstr "" -#: data/rbot/plugins/translator.rb:267 -msgid "No translation returned" +#: data/rbot/plugins/translator.rb:310 +msgid "%{translator} doesn't support translating from %{source} to %{target}" msgstr "" -#: data/rbot/plugins/translator.rb:272 -msgid "%{translator} doesn't support translating from %{source} to %{target}" +#: data/rbot/plugins/translator.rb:313 +msgid "%{translator} failed to provide a translation" msgstr "" -#: data/rbot/plugins/translator.rb:276 +#: data/rbot/plugins/translator.rb:316 msgid "The translator timed out" msgstr "" -#: data/rbot/plugins/translator.rb:279 +#: data/rbot/plugins/translator.rb:319 msgid "No translator called %{name}" msgstr "" diff --git a/po/zh_CN/rbot.po b/po/zh_CN/rbot.po index 7bdd4fa0..8d7364aa 100644 --- a/po/zh_CN/rbot.po +++ b/po/zh_CN/rbot.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: rbot\n" -"POT-Creation-Date: 2007-08-10 05:14-0400\n" +"POT-Creation-Date: 2007-08-10 23:18-0400\n" "PO-Revision-Date: 2007-07-09 01:39-0400\n" "Last-Translator: Yaohan Chen <yaohan.chen@gmail.com>\n" "Language-Team: Chinese\n" @@ -838,51 +838,51 @@ msgid "" "strategies" msgstr "" -#: data/rbot/plugins/alias.rb:51 +#: data/rbot/plugins/alias.rb:52 msgid "Data file is not found or corrupt, reinitializing data" msgstr "" -#: data/rbot/plugins/alias.rb:58 +#: data/rbot/plugins/alias.rb:59 msgid "Invalid alias entry %{alias} : %{command} in %{filename}: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:74 +#: data/rbot/plugins/alias.rb:75 msgid "The definition you provided is invalid: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:85 data/rbot/plugins/alias.rb:102 +#: data/rbot/plugins/alias.rb:86 data/rbot/plugins/alias.rb:103 msgid "No such alias is defined" msgstr "" -#: data/rbot/plugins/alias.rb:91 +#: data/rbot/plugins/alias.rb:92 msgid "No aliases defined" msgstr "" -#: data/rbot/plugins/alias.rb:100 +#: data/rbot/plugins/alias.rb:101 msgid "Alias of %{command}" msgstr "" -#: data/rbot/plugins/alias.rb:112 +#: data/rbot/plugins/alias.rb:113 msgid "" "The arguments in alias must match the substitutions in command, and vice " "versa" msgstr "" -#: data/rbot/plugins/alias.rb:129 +#: data/rbot/plugins/alias.rb:130 msgid "" "The alias seems to have caused infinite recursion. Please examine your alias " "definitions" msgstr "" -#: data/rbot/plugins/alias.rb:145 +#: data/rbot/plugins/alias.rb:146 msgid "Error handling the alias, the command is not defined" msgstr "" -#: data/rbot/plugins/alias.rb:155 +#: data/rbot/plugins/alias.rb:156 msgid "Create and use aliases for commands. Topics: create, commands" msgstr "" -#: data/rbot/plugins/alias.rb:157 +#: data/rbot/plugins/alias.rb:158 msgid "" "\"alias <text> => <command>\" => add text as an alias of command. Text can " "contain placeholders marked with : or * for :words and *multiword arguments. " @@ -891,49 +891,53 @@ msgid "" "google site:linuxbrit.co.uk/rbot/ <terms>" msgstr "" -#: data/rbot/plugins/alias.rb:159 +#: data/rbot/plugins/alias.rb:160 msgid "" "alias list => list defined aliases | alias whatis <alias> => show definition " "of the alias | alias remove <alias> => remove defined alias | see the " "\"create\" topic about adding aliases" msgstr "" -#: data/rbot/plugins/translator.rb:217 +#: data/rbot/plugins/translator.rb:47 +msgid "Cannot translate empty string" +msgstr "" + +#: data/rbot/plugins/translator.rb:257 msgid "Number of seconds to wait for the translation service before timeout" msgstr "" -#: data/rbot/plugins/translator.rb:235 +#: data/rbot/plugins/translator.rb:276 msgid "Translator %{name} cannot be used: %{reason}" msgstr "" -#: data/rbot/plugins/translator.rb:243 -msgid "Supported directions of translation for %{translator}: %{directions}" +#: data/rbot/plugins/translator.rb:285 +msgid "%{info}, supported directions of translation: %{directions}" msgstr "" -#: data/rbot/plugins/translator.rb:246 +#: data/rbot/plugins/translator.rb:288 msgid "%{source} -> %{targets}" msgstr "" -#: data/rbot/plugins/translator.rb:251 +#: data/rbot/plugins/translator.rb:293 msgid "" "Command: <translator> <from> <to> <phrase>, where <translator> is one of: %" -"{translators}. Use help <translator> to look up supported from and to " -"languages" +"{translators}. Use \"help translator <translator>\" to look up supported " +"from and to languages" msgstr "" -#: data/rbot/plugins/translator.rb:267 -msgid "No translation returned" +#: data/rbot/plugins/translator.rb:310 +msgid "%{translator} doesn't support translating from %{source} to %{target}" msgstr "" -#: data/rbot/plugins/translator.rb:272 -msgid "%{translator} doesn't support translating from %{source} to %{target}" +#: data/rbot/plugins/translator.rb:313 +msgid "%{translator} failed to provide a translation" msgstr "" -#: data/rbot/plugins/translator.rb:276 +#: data/rbot/plugins/translator.rb:316 msgid "The translator timed out" msgstr "" -#: data/rbot/plugins/translator.rb:279 +#: data/rbot/plugins/translator.rb:319 msgid "No translator called %{name}" msgstr "" diff --git a/po/zh_TW/rbot.po b/po/zh_TW/rbot.po index fba6cfb9..4c9e19e1 100644 --- a/po/zh_TW/rbot.po +++ b/po/zh_TW/rbot.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: rbot\n" -"POT-Creation-Date: 2007-08-10 05:14-0400\n" +"POT-Creation-Date: 2007-08-10 23:18-0400\n" "PO-Revision-Date: 2007-07-09 01:24-0400\n" "Last-Translator: Liang-Bin Hsueh <hlb@handlino.com>\n" "Language-Team: Chinese\n" @@ -847,51 +847,51 @@ msgid "" "strategies" msgstr "" -#: data/rbot/plugins/alias.rb:51 +#: data/rbot/plugins/alias.rb:52 msgid "Data file is not found or corrupt, reinitializing data" msgstr "" -#: data/rbot/plugins/alias.rb:58 +#: data/rbot/plugins/alias.rb:59 msgid "Invalid alias entry %{alias} : %{command} in %{filename}: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:74 +#: data/rbot/plugins/alias.rb:75 msgid "The definition you provided is invalid: %{reason}" msgstr "" -#: data/rbot/plugins/alias.rb:85 data/rbot/plugins/alias.rb:102 +#: data/rbot/plugins/alias.rb:86 data/rbot/plugins/alias.rb:103 msgid "No such alias is defined" msgstr "" -#: data/rbot/plugins/alias.rb:91 +#: data/rbot/plugins/alias.rb:92 msgid "No aliases defined" msgstr "" -#: data/rbot/plugins/alias.rb:100 +#: data/rbot/plugins/alias.rb:101 msgid "Alias of %{command}" msgstr "" -#: data/rbot/plugins/alias.rb:112 +#: data/rbot/plugins/alias.rb:113 msgid "" "The arguments in alias must match the substitutions in command, and vice " "versa" msgstr "" -#: data/rbot/plugins/alias.rb:129 +#: data/rbot/plugins/alias.rb:130 msgid "" "The alias seems to have caused infinite recursion. Please examine your alias " "definitions" msgstr "" -#: data/rbot/plugins/alias.rb:145 +#: data/rbot/plugins/alias.rb:146 msgid "Error handling the alias, the command is not defined" msgstr "" -#: data/rbot/plugins/alias.rb:155 +#: data/rbot/plugins/alias.rb:156 msgid "Create and use aliases for commands. Topics: create, commands" msgstr "" -#: data/rbot/plugins/alias.rb:157 +#: data/rbot/plugins/alias.rb:158 msgid "" "\"alias <text> => <command>\" => add text as an alias of command. Text can " "contain placeholders marked with : or * for :words and *multiword arguments. " @@ -900,49 +900,53 @@ msgid "" "google site:linuxbrit.co.uk/rbot/ <terms>" msgstr "" -#: data/rbot/plugins/alias.rb:159 +#: data/rbot/plugins/alias.rb:160 msgid "" "alias list => list defined aliases | alias whatis <alias> => show definition " "of the alias | alias remove <alias> => remove defined alias | see the " "\"create\" topic about adding aliases" msgstr "" -#: data/rbot/plugins/translator.rb:217 +#: data/rbot/plugins/translator.rb:47 +msgid "Cannot translate empty string" +msgstr "" + +#: data/rbot/plugins/translator.rb:257 msgid "Number of seconds to wait for the translation service before timeout" msgstr "" -#: data/rbot/plugins/translator.rb:235 +#: data/rbot/plugins/translator.rb:276 msgid "Translator %{name} cannot be used: %{reason}" msgstr "" -#: data/rbot/plugins/translator.rb:243 -msgid "Supported directions of translation for %{translator}: %{directions}" +#: data/rbot/plugins/translator.rb:285 +msgid "%{info}, supported directions of translation: %{directions}" msgstr "" -#: data/rbot/plugins/translator.rb:246 +#: data/rbot/plugins/translator.rb:288 msgid "%{source} -> %{targets}" msgstr "" -#: data/rbot/plugins/translator.rb:251 +#: data/rbot/plugins/translator.rb:293 msgid "" "Command: <translator> <from> <to> <phrase>, where <translator> is one of: %" -"{translators}. Use help <translator> to look up supported from and to " -"languages" +"{translators}. Use \"help translator <translator>\" to look up supported " +"from and to languages" msgstr "" -#: data/rbot/plugins/translator.rb:267 -msgid "No translation returned" +#: data/rbot/plugins/translator.rb:310 +msgid "%{translator} doesn't support translating from %{source} to %{target}" msgstr "" -#: data/rbot/plugins/translator.rb:272 -msgid "%{translator} doesn't support translating from %{source} to %{target}" +#: data/rbot/plugins/translator.rb:313 +msgid "%{translator} failed to provide a translation" msgstr "" -#: data/rbot/plugins/translator.rb:276 +#: data/rbot/plugins/translator.rb:316 msgid "The translator timed out" msgstr "" -#: data/rbot/plugins/translator.rb:279 +#: data/rbot/plugins/translator.rb:319 msgid "No translator called %{name}" msgstr "" |