123456789_123456789_123456789_123456789_123456789_

Module: Rails::Command::Helpers::Editor

Relationships & Source Files
Extension / Inclusion / Inheritance Descendants
Included In:
Defined in: railties/lib/rails/command/helpers/editor.rb

Instance Method Summary

Instance Method Details

#display_hint_if_system_editor_not_specified (private)

[ GitHub ]

  
# File 'railties/lib/rails/command/helpers/editor.rb', line 15

def display_hint_if_system_editor_not_specified
  if editor.to_s.empty?
    say "No $VISUAL or $EDITOR to open file in. Assign one like this:"
    say ""
    say %(VISUAL="code --wait" #{executable(current_subcommand)})
    say ""
    say "For editors that fork and exit immediately, it's important to pass a wait flag;"
    say "otherwise, the file will be saved immediately with no chance to edit."

    true
  end
end

#editor (private)

[ GitHub ]

  
# File 'railties/lib/rails/command/helpers/editor.rb', line 11

def editor
  ENV["VISUAL"].to_s.empty? ? ENV["EDITOR"] : ENV["VISUAL"]
end

#system_editor(file_path) (private)

[ GitHub ]

  
# File 'railties/lib/rails/command/helpers/editor.rb', line 28

def system_editor(file_path)
  system(*Shellwords.split(editor), file_path.to_s)
end

#using_system_editor (private)

[ GitHub ]

  
# File 'railties/lib/rails/command/helpers/editor.rb', line 32

def using_system_editor
  display_hint_if_system_editor_not_specified || yield
rescue Interrupt
  say "Aborted changing file: nothing saved."
end