Class: SpecI18n::CommandLine::LanguageHelpFormatter
- Inherits:
-
Object
- Object
- SpecI18n::CommandLine::LanguageHelpFormatter
- Extended by:
- Parser, Term::ANSIColor
- Defined in:
- lib/spec-i18n/command_line/language_help_formatter.rb
Class Method Summary collapse
- .grep_value(lang, key) ⇒ Object
- .list_advanced_keywords(io, language) ⇒ Object
- .list_basic_keywords(language) ⇒ Object
- .list_keywords_and_exit(io, lang) ⇒ Object
- .list_languages ⇒ Object
- .list_languages_and_exit(io) ⇒ Object
- .print_table(io, raw, options = {}) ⇒ Object
Class Method Details
.grep_value(lang, key) ⇒ Object
49 50 51 |
# File 'lib/spec-i18n/command_line/language_help_formatter.rb', line 49 def grep_value(lang, key) SpecI18n::SPEC_LANGUAGES[lang][key] end |
.list_advanced_keywords(io, language) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/spec-i18n/command_line/language_help_formatter.rb', line 60 def list_advanced_keywords(io, language) NaturalLanguage::ADVANCED_KEYWORDS.map do |keyword| language_keywords = [keyword] language.keywords[keyword].map do |key, values| language_keywords << [key, values.to_s.split('|').join(' / ')] end keywords_table = table do self.headings = [language_keywords.shift] language_keywords.each do |keywords| add_row keywords end end keywords_table end end |
.list_basic_keywords(language) ⇒ Object
53 54 55 56 57 58 |
# File 'lib/spec-i18n/command_line/language_help_formatter.rb', line 53 def list_basic_keywords(language) NaturalLanguage::BASIC_KEYWORDS.map do |keyword| words = language.keywords[keyword] [ keyword, words.split('|').join(' / ')] end end |
.list_keywords_and_exit(io, lang) ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/spec-i18n/command_line/language_help_formatter.rb', line 30 def list_keywords_and_exit(io, lang) language = NaturalLanguage.get(lang) keywords = list_basic_keywords(language) print_table io, table(nil, *keywords) advanced_keywords = list_advanced_keywords(io, language) print_table io, advanced_keywords, :exit => true end |
.list_languages ⇒ Object
43 44 45 46 47 |
# File 'lib/spec-i18n/command_line/language_help_formatter.rb', line 43 def list_languages languages = SpecI18n::SPEC_LANGUAGES.keys.sort.map do |lang| [ lang, grep_value(lang, 'name'), grep_value(lang, 'native') ] end end |
.list_languages_and_exit(io) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/spec-i18n/command_line/language_help_formatter.rb', line 17 def list_languages_and_exit(io) languages = list_languages languages_table = table do self.headings = ['Language', 'Name', 'Native'] languages.each do |language| add_row language end end print_table io, languages_table, :exit => true end |
.print_table(io, raw, options = {}) ⇒ Object
79 80 81 82 |
# File 'lib/spec-i18n/command_line/language_help_formatter.rb', line 79 def print_table(io, raw, ={}) io.puts raw.to_s.send([:color] || :green).bold Kernel.exit(0) if [:exit] end |