Manpages

이 름

lexgrog - 맨 페 이 지 의 헤 더 정 보 를 해 석 합 니 다

개 요

lexgrog [-m|-c] [-dfw?V] [-E 인 코 딩 ] file ...

설 명

lexgrog 은 (는 ) lex의 “groff guess” 유 틸 리 티 기 존 구 현 체 입 니 다 . 맨 페 이 지 원 본 파 일 또 는 “cat” 페 이 지 로 선 서 식 화 처 리 한 페 이 지 로 명 령 행 에 서 파 일 목 록 을 읽 어 들 이 며 , apropos and whatis에 서 나 타 내 듯 이 이 름 과 설 명 , 그 리 고 nroff 또 는 troff 두 요 소 모 두 에 전 달 하 기 전 맨 페 이 지 에 서 필 요 한 전 처 리 필 터 목 록 을 표 시 합 니 다 .

입 력 구 성 이 잘 못 됐 을 경 우 , lexprog에 서 “해 석 실 패 ” 를 출 력 합 니 다 . 맨 페 이 지 정 확 성 검 사 가 필 요 한 외 브 프 로 그 램 에 쓸 만 합 니 다 . lexgrog의 입 력 파 일 이 “-” 이 면 , 표 준 입 력 을 읽 습 니 다 . 입 력 파 일 이 압 축 파 일 이 면 , 자 동 으 로 압 축 해 제 후 읽 습 니 다 .

옵 션

-d, --debug

디 버 깅 정 보 를 출 력 합 니 다 .

-m, --man

입 력 을 맨 페 이 지 원 본 파 일 로 해 석 합 니 다 . --man 또 는 --cat 둘 중 어 느 하 나 라 도 지 정 하 지 않 았 을 경 우 기 본 동 작 입 니 다 .

-c, --cat

입 력 을 선 서 식 화 처 리 한 맨 페 이 지 로 해 석 합 니 다 (“cat pages”). --man--cat 옵 션 은 동 시 에 쓸 수 없 습 니 다 .

-w, --whatis

aproposwhatis에 서 활 용 하 듯 맨 페 이 지 헤 더 의 이 름 과 설 명 을 표 시 합 니 다 . --whatis 또 는 --filters 둘 중 어 느 하 나 도 주 어 지 지 않 은 상 태 가 기 본 입 니 다 .

-f, --filters

nroff 또 는 troff로 서 식 화 하 기 전 전 처 리 에 필 요 한 필 터 목 록 을 표 시 합 니 다 .

-E 인 코 딩 , --encoding 인 코 딩

페 이 지 에 대 해 예 측 한 문 자 셋 대 신 인 코 딩 값 을 활 용 합 니 다 .

-?, --help

도 움 말 메 시 지 를 출 력 하 고 나 갑 니 다 .

--usage

간 단 한 사 용 법 메 시 지 를 출 력 하 고 나 갑 니 다 .

-V, --version

버 전 정 보 를 출 력 합 니 다 .

종 료 상 태

0

프 로 그 램 실 행 성 공 .

1

사 용 법 오 류 .

2

lexgrog 에 서 입 력 파 일 하 나 이 상 해 석 에 실 패 했 습 니 다 .

예 제

$ lexgrog man.1
man.1: "man - an interface to the system reference manuals"
$ lexgrog -fw man.1
man.1 (t): "man - an interface to the system reference manuals"
$ lexgrog -c whatis.cat1
whatis.cat1: "whatis - display manual page descriptions"
$ lexgrog broken.1
broken.1: parse failed

WHATIS 해 석

mandb(lexgrog와 동 일 한 코 드 를 활 용 함 )는 문 서 로 기 록 한 특 징 의 이 름 과 설 명 을 찾 으 려 각 설 명 서 페 이 지 상 단 의 이 름 섹 션 을 해 석 합 니 다 . 해 석 프 로 그 램 이 여 태 껏 활 용 해 온 제 각 기 다 른 문 서 양 식 에 대 응 하 느 라 대 부 분 문 제 가 없 지 만 , 필 요 한 정 보 추 출 에 실 패 할 때 도 있 습 니 다 .

전 통 man 매 크 로 집 합 을 활 용 할 때 , 올 바 른 이 름 섹 션 은 다 음 과 같 습 니 다 :

.SH NAME
foo \- program to do something

일 부 설 명 서 페 이 저 에 서 는 정 확 히 나 타 난 대 로 ’\-’ 옵 션 이 필 요 합 니 다 . mandb에 서 는 어 지 간 한 경 우 를 다 받 아 들 이 지 만 , 다 른 시 스 템 에 서 의 호 환 성 에 있 어 서 는 백 슬 래 시 를 붙 여 두 는 게 좋 습 니 다 .

좌 측 에 는 쉼 표 로 구 분 한 몇 가 지 이 름 이 있 습 니 다 . 공 백 이 들 어 간 이 름 은 구 성 이 영 탐 탁 치 못 한 몇 가 지 이 름 섹 션 에 서 이 상 한 동 작 을 막 기 위 해 무 시 합 니 다 . 우 측 에 는 자 유 로 운 형 태 를 갖 추 며 , 여 러 줄 에 걸 쳐 내 용 을 구 성 할 수 도 있 습 니 다 . 동 일 한 설 명 서 페 이 지 에 몇 가 지 기 능 에 대 한 다 른 여 러 가 지 설 명 을 붙 여 넣 었 다 면 , 다 음 구 성 을 갖 춥 니 다 :

.SH NAME
foo, bar \- programs to do something
.br
baz \- program to do nothing

(.PP와 같 이 새 문 단 을 시 작 하 는 매 크 로 는 .br 강 제 개 행 매 크 로 대 신 사 용 할 수 있 습 니 다 .)

BSD의 mdoc 매 크 로 세 트 를 활 용 한 다 면 , 올 바 른 이 름 섹 션 은 다 음 과 같 습 니 다 :

.Sh NAME
.Nm foo
.Nd program to do something

WHATIS 해 석 에 실 패 하 는 덴 몇 가 지 보 편 적 인 이 유 가 있 습 니 다 . 가 끔 설 명 서 페 이 지 저 자 분 들 은 ’.SH NAME’을 ’.SH MYPROGRAM’과 같 은 식 으 로 바 꾸 어 , mandb에 서 필 요 한 정 보 를 추 출 해 야 하 는 부 분 에 서 섹 션 을 찾 지 못 하 게 합 니 다 . 때 로 는 이 름 섹 션 을 넣 지 만 ’name \- description’ 형 식 대 신 내 용 을 멋 대 로 임 의 로 넣 습 니 다 . 그 러 나 , 위 에 서 재 구 성 한 어 떤 문 법 이 든 따 라 야 합 니 다 .

추 가 참 조

apropos(1), man(1), whatis(1), mandb(8)

참 고

lexgrog 에 서 는 .so 요 청 이 들 어 간 파 일 을 해 석 하 려 하 지 만 , 파 일 을 설 명 서 페 이 지 계 층 위 치 에 제 대 로 복 사 해 넣 어 야 만 올 바 르 게 수 행 할 수 있 습 니 다 .

저 작 자

맨 페 이 지 를 검 색 할 때 lexgrog에 서 활 용 하 는 코 드 작 성 자 :

Wilf. (G.Wilford [AT] ee.uk).
Fabrizio Polacco (fpolacco [AT] debian.org).
Colin Watson (cjwatson [AT] debian.org).

Colin Watson은 이 맨 페 이 지 와 같 이 명 령 행 프 론 트 엔 드 의 현 재 형 태 를 작 성 했 습 니 다 .

버 그

https://gitlab.com/man-db/man-db/-/issues
https://savannah.nongnu.org/bugs/?group=man-db