Module: CTioga2::Utils
- Defined in:
- lib/ctioga2/utils.rb
Overview
Various utilities
Class Method Summary collapse
-
.pdftex_quote_string(str) ⇒ Object
Quotes a string so it can be included directly within a pdfinfo statement (for instance).
-
.shell_quote_string(str) ⇒ Object
Takes a string a returns a quoted version that should be able to go through shell expansion.
Class Method Details
.pdftex_quote_string(str) ⇒ Object
Quotes a string so it can be included directly within a pdfinfo statement (for instance).
104 105 106 107 108 109 110 111 112 113 114 115 116 |
# File 'lib/ctioga2/utils.rb', line 104 def self.pdftex_quote_string(str) return str.gsub(/([%#])|([()])|([{}~_^])|\\/) do if $1 "\\#{$1}" elsif $2 # Quoting (), as they can be quite nasty !! "\\string\\#{$2}" elsif $3 "\\string#{$3}" else # Quoting \ "\\string\\\\" end end end |
.shell_quote_string(str) ⇒ Object
Takes a string a returns a quoted version that should be able to go through shell expansion.
89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/ctioga2/utils.rb', line 89 def self.shell_quote_string(str) if str =~ /[\s"*$()\[\]{}';\\]/ if str =~ /'/ a = str.gsub(/(["$\\])/) { "\\#$1" } return "\"#{a}\"" else return "'#{str}'" end else return str end end |