Sha256: 89b598bb2730fdb631f11ef341f7b68027c7ad53489f072e1bbd1a8a771be13b

Contents?: true

Size: 1010 Bytes

Versions: 77

Compression:

Stored size: 1010 Bytes

Contents

class Pry
  class Command::ShellCommand < Pry::ClassCommand
    match /\.(.*)/
    group 'Input and Output'
    description "All text following a '.' is forwarded to the shell."
    command_options :listing => '.<shell command>', :use_prefix => false,
      :takes_block => true

    banner <<-'BANNER'
      Usage: .COMMAND_NAME

      All text following a "." is forwarded to the shell.

      .ls -aF
      .uname
    BANNER

    def process(cmd)
      if cmd =~ /^cd\s+(.+)/i
        dest = $1
        begin
          Dir.chdir File.expand_path(dest)
        rescue Errno::ENOENT
          raise CommandError, "No such directory: #{dest}"
        end
      else
        pass_block(cmd)

        if command_block
          command_block.call `#{cmd}`
        else
          Pry.config.system.call(output, cmd, _pry_)
        end
      end
    end

    def complete(search)
      super + Bond::Rc.files(search.split(" ").last || '')
    end
  end

  Pry::Commands.add_command(Pry::Command::ShellCommand)
end

Version data entries

77 entries across 77 versions & 5 rubygems

Version Path
asana2flowdock-1.0.0 vendor/bundle/ruby/1.9.1/gems/pry-0.9.12.6/lib/pry/commands/shell_command.rb
pry-0.9.12.6 lib/pry/commands/shell_command.rb
pry-0.9.12.6-i386-mswin32 lib/pry/commands/shell_command.rb
pry-0.9.12.6-i386-mingw32 lib/pry/commands/shell_command.rb
pry-0.9.12.6-java lib/pry/commands/shell_command.rb
pry-0.9.12.5 lib/pry/commands/shell_command.rb
pry-0.9.12.5-i386-mswin32 lib/pry/commands/shell_command.rb
pry-0.9.12.5-i386-mingw32 lib/pry/commands/shell_command.rb
pry-0.9.12.5-java lib/pry/commands/shell_command.rb
pry-0.9.12.4 lib/pry/commands/shell_command.rb
pry-0.9.12.4-i386-mswin32 lib/pry/commands/shell_command.rb
pry-0.9.12.4-i386-mingw32 lib/pry/commands/shell_command.rb
pry-0.9.12.4-java lib/pry/commands/shell_command.rb
pry-0.9.12.3 lib/pry/commands/shell_command.rb
pry-0.9.12.3-i386-mswin32 lib/pry/commands/shell_command.rb
pry-0.9.12.3-i386-mingw32 lib/pry/commands/shell_command.rb
pry-0.9.12.3-java lib/pry/commands/shell_command.rb
torquebox-console-0.3.0 vendor/bundle/jruby/1.9/gems/pry-0.9.12-java/lib/pry/commands/shell_command.rb
sshp-0.0.2 vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/shell_command.rb
sshp-0.0.1 vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/shell_command.rb