gettext (GetText::TextDomain)

    # File lib/gettext/textdomain.rb, line 117
        def gettext(msgid)
          return "" if msgid == "" or msgid.nil?
          return nil unless @current_mo
          if @current_mo[msgid] and (@current_mo[msgid].size > 0)
            @current_mo[msgid]
          elsif msgid.include?("\000")
            ret = nil
            msgid_single = msgid.split("\000")[0]
            @current_mo.each{|key, val|
              if key =~ /^#{Regexp.quote(msgid_single)}\000/
                  # Usually, this is not caused to make po-files from rgettext.
                  warn %Q[Warning: n_("#{msgid_single}", "#{msgid.split("\000")[1]}") and n_("#{key.gsub(/\000/, '", "')}") are duplicated.] if $DEBUG
                ret = val
                break
              end
            }
            ret
          else
            ret = nil
            @current_mo.each{|key, val|
              if key =~ /^#{Regexp.quote(msgid)}\000/
                  ret = val.split("\000")[0]
                break
              end
            }
            ret
          end
        end