#!/usr/bin/env ruby $LOAD_PATH.unshift File.expand_path(File.dirname(__FILE__) + '/../lib') require 'fonemas' if ARGV.include?('--list') puts Fonemas.lista_de_fonemas.join("\n") exit end if ARGV.include?('--word') || ARGV.include?('-w') puts Fonemas.fonemas(ARGV[1]) exit end if ARGV.include?('--version') puts Fonemas.version exit end if ARGV.include?('--help') || ARGV.include?('-h') data=<<-EOF Fonemas #{Fonemas.version} archivo.txt Procesa archivo con lista de palabras (1 palabra por linea) y genera los fonemas de todas las palabras presentes en archivo.txt -h, --help Muestra este mensaje de ayuda -w palabra, --word palabra Muestra los fonemas asociados a palabra --list Muestra la lista de fonemas EOF puts data exit end ARGF.set_encoding('UTF-8') input = ARGF.readlines words = [] for i in input #1 palabra por linea words << Fonemas.downcase(i.split(' ')[0].split('(')[0]) unless i.nil? end words = words.sort words = words.uniq for i in words fonemas = Fonemas.fonemas(i) count = 0 begin for f in fonemas if count > 0 puts "#{i}(#{count})\t#{f}" else puts "#{i}\t#{f}" end count += 1 end rescue puts "error al procesar fonemas para #{i}" exit end end