Remplacement pour l'utilisation de rdoc
Question
Selon ce poste , RDoc :: utilisation n'est pas actuellement disponible en Ruby 1.9. Y a-t-il des bons remplaçants?
Je serais intéressé d'entendre ce qui est disponible à partir de la norme d'installation, ainsi que ce qui est disponible à partir de pierres précieuses.
La solution
J'aime OptionParser (la chose que l'article mentionne que est utile pour RDoc::usage
complément).
Il ressemble à tous les 1.9 bogues ont été patché .
Autres conseils
demande de fonctionnalité 2713, le responsable du rdoc a déclaré qu'il a gagné « t ajouter rdoc / usage ou toute fonctionnalité similaire retour à rdoc, en disant que OptionParser doit être utilisé à la place.
Nous utilisons OptionParser pour tous les nouveaux scripts, mais avait environ 100+ qui utilisait RDoc. Au lieu de réécrire chacun j'ai écrit cette méthode (BB est l'espace de nom de l'entreprise. Changer cela à ce que vous voulez). Il fonctionne très bien. La syntaxe est légèrement différente, mais son texte d'aide pour que nous ne me dérange pas. Hope it helps!
J'ai ensuite utilisé sed pour trouver tous les scripts et les modifier.
grep -rl "RDoc::usage" * | xargs sed -i "/rdoc\/usage/ s/RDoc/BB/"
grep -rl "BB::usage" * | xargs sed -i "/rdoc\/usage/ s/rdoc/lib\/bb/"
-
module BB
def BB::usage( exit_code )
File::open( $0, 'r').readlines.each_with_index do | line, idx |
next if idx == 0
if( line =~ /^#/ )
puts line.gsub(/^#\ ?/,'')
else
puts #RDoc adds extra line so we do too
exit( exit_code )
end
end
end
end