class TheFox::Timr::Helper::TerminalHelper
This class helps with Terminal operations.
Public Class Methods
external_editor_help(edit_text)
click to toggle source
Print help to external editor.
# File lib/timr/helper/terminal_helper.rb, line 45 def external_editor_help(edit_text) edit_text << '# This is a comment.' edit_text << '# The first line should be a sentence. Sentence have dots at the end.' edit_text << '# The second line should be empty, if you provide a more detailed' edit_text << '# description from on the third line. Like on Git.' end
run_external_editor(text = nil)
click to toggle source
Run external editor via EDITOR environment variable.
# File lib/timr/helper/terminal_helper.rb, line 15 def run_external_editor(text = nil) case text when Array text = text.join("\n") end if !ENV['EDITOR'] || ENV['EDITOR'].length == 0 raise TerminalHelperError, 'EDITOR environment variable not set.' end tmpfile = Tempfile.new('timr_message') if text tmpfile.write(text) end tmpfile.close system_s = '%s %s' % [ENV['EDITOR'], tmpfile.path] system(system_s) tmpfile.open tmpfile_lines = tmpfile.read tmpfile.close tmpfile_lines .split("\n") .select{ |row| row[0] != '#' } .join("\n") end