module Aruba::Api::Text
Text
manipulation
Public Instance Methods
extract_text(text)
click to toggle source
Remove ansi characters from text
@param [#to_s] text
Input
# File lib/aruba/api/text.rb, line 24 def extract_text(text) if Aruba::VERSION < '1' text.gsub(/(?:\e|\033)\[\d+(?>(;\d+)*)m/, '') else text.gsub(/(?:\e|\033)\[\d+(?>(;\d+)*)m/, '').gsub(/\\\[|\\\]/, '').gsub(/\007|\016|\017/, '') end end
replace_variables(text)
click to toggle source
@experimental
Replace variables in command string
@param [#to_s] text
The text to parse
# File lib/aruba/api/text.rb, line 49 def replace_variables(text) text = text.gsub(/<pid-last-command-started>/, last_command_started.pid.to_s) if text.include? '<pid-last-command-started>' text end
sanitize_text(text)
click to toggle source
Unescape special characters and remove ANSI characters
@param [#to_s] text
The text to sanitize
# File lib/aruba/api/text.rb, line 36 def sanitize_text(text) text = unescape_text(text) text = extract_text(text) if !aruba.config.keep_ansi || aruba.config.remove_ansi_escape_sequences text.chomp end
unescape_text(text)
click to toggle source
Unescape text
'n' => “n” 'e' => “e” '033' => “e” '"' => '“'
@param [#to_s] text
Input
# File lib/aruba/api/text.rb, line 16 def unescape_text(text) text.gsub('\n', "\n").gsub('\"', '"').gsub('\e', "\e").gsub('\033', "\e").gsub('\016', "\016").gsub('\017', "\017").gsub('\t', "\t") end