Class: Pry::Command::SaveFile
- Inherits:
-
Pry::ClassCommand
- Object
- Pry::Command
- Pry::ClassCommand
- Pry::Command::SaveFile
- Defined in:
- lib/pry/commands/save_file.rb
Constant Summary
Constants inherited from Pry::Command
Constants included from Helpers::DocumentationHelpers
Helpers::DocumentationHelpers::YARD_TAGS
Constants included from Helpers::Text
Instance Attribute Summary
Attributes inherited from Pry::ClassCommand
Attributes inherited from Pry::Command
#arg_string, #captures, #command_block, #command_set, #context, #eval_string, #hooks, #output, #pry_instance, #target
Instance Method Summary collapse
- #display_content ⇒ Object
- #file_name ⇒ Object
- #mode ⇒ Object
- #options(opt) ⇒ Object
- #process ⇒ Object
- #save_file ⇒ Object
Methods inherited from Pry::ClassCommand
#call, #complete, doc, #help, inherited, #setup, #slop, source, source_file, source_line, source_location, #subcommands
Methods inherited from Pry::Command
#_pry_, banner, #block, #check_for_command_collision, command_name, #command_name, #command_options, command_regex, #commands, #complete, convert_to_regex, default_options, #description, doc, group, #initialize, inspect, #interpolate_string, #match, match_score, matches?, name, #name, options, #process_line, #run, source, #source, source_file, source_line, state, #state, subclass, #target_self, #tokenize, #void
Methods included from Helpers::DocumentationHelpers
get_comment_content, process_comment_markup, process_rdoc, process_yardoc, process_yardoc_tag, strip_comments_from_c_code, strip_leading_whitespace
Methods included from Pry::CodeObject::Helpers
#c_method?, #c_module?, #command?, #module_with_yard_docs?, #real_method_object?
Methods included from Helpers::Text
#bold, #default, #indent, #no_color, #no_pager, #strip_color, #with_line_numbers
Methods included from Helpers::CommandHelpers
#absolute_index_number, #absolute_index_range, #get_method_or_raise, #internal_binding?, #one_index_number, #one_index_range, #one_index_range_or_number, #restrict_to_lines, #set_file_and_dir_locals, #temp_file, #unindent
Methods included from Helpers::OptionsHelpers
Methods included from Helpers::BaseHelpers
#colorize_code, #find_command, #heading, #highlight, #not_a_real_file?, #safe_send, #silence_warnings, #stagger_output, #use_ansi_codes?
Constructor Details
This class inherits a constructor from Pry::Command
Instance Method Details
#display_content ⇒ Object
50 51 52 53 54 |
# File 'lib/pry/commands/save_file.rb', line 50 def display_content output.puts @cc.content output.puts "\n\n--\nPlease use `--to FILE` to export to a file." output.puts "No file saved!\n--" end |
#file_name ⇒ Object
39 40 41 |
# File 'lib/pry/commands/save_file.rb', line 39 def file_name opts[:to] || nil end |
#mode ⇒ Object
56 57 58 |
# File 'lib/pry/commands/save_file.rb', line 56 def mode opts.present?(:append) ? "a" : "w" end |
#options(opt) ⇒ Object
21 22 23 24 25 26 |
# File 'lib/pry/commands/save_file.rb', line 21 def (opt) CodeCollector.(opt) opt.on :to=, "Specify the output file path" opt.on :a, :append, "Append output to file" end |
#process ⇒ Object
28 29 30 31 32 33 34 35 36 37 |
# File 'lib/pry/commands/save_file.rb', line 28 def process @cc = CodeCollector.new(args, opts, pry_instance) raise CommandError, "Found no code to save." if @cc.content.empty? if !file_name display_content else save_file end end |
#save_file ⇒ Object
43 44 45 46 47 48 |
# File 'lib/pry/commands/save_file.rb', line 43 def save_file File.open(file_name, mode) do |f| f.puts @cc.content end output.puts "#{file_name} successfully saved" end |