rdoc :: usage ()에 대한 === 제목없이 섹션을 어떻게 정의 할 수 있습니까?

StackOverflow https://stackoverflow.com/questions/631585

문제

나는 Help2man 및 Txt2man을 통해 '-help'출력을 사용하여 사람 페이지를 생성하는 것을 좋아합니다. Ruby의 RDOC 시스템은 매우 편리하지만 원하는 방식으로 RDOC :: 사용법을 구성 할 수는 없습니다. 다음은 샘플 스크립트입니다.

#!/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')

스크립트의 출력은 다음과 같습니다.

Name
    foobar - Example command for StackOverflow question

Synopsis
    Usage: foobar [--help]

Options
    --help      This help message

그러나 나는 사용 출력에 대한 "이름"과 "시놉시스"헤더를 억제하고 싶지만 여전히 남자 페이지에 대한 출력 섹션으로 표시하고 싶습니다.

': 섹션 사용 :'Markup은 rdoc :: rdoc에서 작동하지만 rdoc :: usage는 작동하지 않습니다. 인쇄 헤더가없는 사용에 대한 섹션을 표시하는 명백한 방법이 있습니까?

도움이 되었습니까?

해결책

소스 코드를보십시오 RDoc::usage_no_exit; 당신은 당신이 원하는 것을 달성하기 위해 용기에 푹 빠지는 두 가지 방법을 가지고 있습니다.

  1. 세트 ENV['RI'] 다양한 형식 옵션 (사용자 정의 포맷터 클래스 지정 포함)을 시행하거나
  2. 기본 RI :: Textformatter 's를 재정의하십시오 display_heading (또는/또는 기타 방법) 제목 또는 기타를 표시합니다.

    require 'rdoc/usage'
    require 'rdoc/ri/ri_formatter'
    
    module RI
      class TextFormatter
        def display_heading
          # nop
        end
      end
    end
    
    RDoc::usage('name')
    
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top