Frage

Ich mag man-Seiten generieren ‚--help‘ Ausgabe über help2man und txt2man verwenden. Rubys RDoc System ist sehr bequem, aber ich kann nicht scheinen, RDoc :: Verwendung in genau die Art und Weise zu konfigurieren, die ich will. Hier ist ein Beispielskript:

#!/usr/bin/env ruby
#
# === Name
#
#   foobar - Example command for StackOverflow question
#
# === Synopsis
# 
#   Usage: foobar [--help]
#
# === Options
#
#   --help      This help message

require 'rdoc/usage'

RDoc::usage('name', 'synopsis', 'options')

Die Ausgabe des Skripts sieht wie folgt aus:

Name
    foobar - Example command for StackOverflow question

Synopsis
    Usage: foobar [--help]

Options
    --help      This help message

Aber ich würde wirklich gerne den „Namen“ und „Synopsis“ Header für meine Nutzung Ausgabe zu unterdrücken, aber immer noch markiere sie als Abschnitte zur Ausgabe an einem Mann Seite.

Mit dem ': Abschnitt:' Markup-Werke für RDoc :: rdoc, aber nicht RDoc :: Nutzung. Gibt es eine offensichtliche Art und Weise Abschnitte für usage.rb zu markieren, ohne Header Druck?

War es hilfreich?

Lösung

Schauen Sie sich den Quellcode für RDoc::usage_no_exit ; Sie haben zwei Möglichkeiten Einhaken seine Eingeweide zu erreichen, was Wunsch yyou:

  1. Stellen Sie ENV['RI'] verschiedene Formatierungsoptionen zur Durchsetzung (einschließlich einer benutzerdefinierten Formatierungsklasse Angabe) oder
  2. neu definieren den Standard-RI :: TextFormatter der display_heading (und / oder andere Methoden) zu (nicht) die Überschriften angezeigt werden oder was auch immer sonst

    require 'rdoc/usage'
    require 'rdoc/ri/ri_formatter'
    
    module RI
      class TextFormatter
        def display_heading
          # nop
        end
      end
    end
    
    RDoc::usage('name')
    
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top