alias_command(ali, command, *opts, &block) public

No documentation

This method has no description. You can help the Ruby community by adding new notes.

Hide source
# File lib/shell/command-processor.rb, line 410
    def self.alias_command(ali, command, *opts, &block)
      ali = ali.id2name if ali.kind_of?(Symbol)
      command = command.id2name if command.kind_of?(Symbol)
      begin
        if iterator?
          @alias_map[ali.intern] = proc

          eval((d = %[def #{ali}(*opts)
                          @shell.__send__(:#{command},
                                          *(CommandProcessor.alias_map[:#{ali}].call *opts))
                        end]), nil, __FILE__, __LINE__ - 1)
    
        else
           args = opts.collect{|opt| '"' + opt + '"'}.join(",")
           eval((d = %[def #{ali}(*opts)
                          @shell.__send__(:#{command}, #{args}, *opts)
                        end]), nil, __FILE__, __LINE__ - 1)
        end
      rescue SyntaxError
        Shell.notify "warn: Can't alias #{ali} command: #{command}." 
        Shell.notify("Definition of #{ali}: ", d)
        raise
      end
      Shell.notify "Define #{ali} command: #{command}.", Shell.debug?
      Shell.notify("Definition of #{ali}: ", d, 
             Shell.debug.kind_of?(Integer) && Shell.debug > 1)
      self
    end
Register or log in to add new notes.