Как редактировать man-страницу?

Я хочу знать, можно ли редактировать man-страницу. Если да, то как? (Если возможно, изменив gedit).

P.S.- Я хочу знать, можно ли редактировать man-страницу (просто для удовольствия).

1
задан 19 June 2016 в 08:19

2 ответа

Да, вы можете, но это не рекомендуется. Лучший подход, вероятно, будет похож на инструмент, предложенный Rinzwind, но да, вы также можете сделать это вручную. Я буду использовать страницу man для grep в качестве примера.

Человеческие страницы - это сжатые файлы, поэтому вам нужно либо использовать настоящий редактор, например emacs, который может читать / записывать сжатые файлы, либо сначала его необходимо распаковать:
sudo gunzip /usr/share/man/man1/grep.1.gz
Изменить его:
sudo gedit /usr/share/man/man1/grep.1
] Теперь формат немного странный. Однако, если вы хотите просто изменить простые вещи, вы можете игнорировать форматирование и изменять только обычный текст. Например, я могу легко изменить описание grep. Вот как выглядят первые несколько строк при открытии файла в gedit (или любом другом редакторе):
.\" GNU grep man page
.if !\n(.g \{\
.   if !\w|\*(lq| \{\
.       ds lq ``
.       if \w'\(lq' .ds lq "\(lq
.   \}
.   if !\w|\*(rq| \{\
.       ds rq ''
.       if \w'\(rq' .ds rq "\(rq
.   \}
.\}
.
.ie \n[.g] .mso www.tmac
.el \{\
. de MTO
\\$2 \(laemail: \\$1 \(ra\\$3
..
. de URL
\\$2 \(laURL: \\$1 \(ra\\$3
..
.\}
.
.TH GREP 1 \*(Dt "GNU grep 2.25" "User Commands"
.hy 0
.
.SH NAME
grep, egrep, fgrep \- print lines matching a pattern
.
.SH SYNOPSIS
.B grep
.RI [ OPTIONS ]
.I PATTERN
.RI [ FILE .\|.\|.]
.br
.B grep
.RI [ OPTIONS ]
.RB [ \-e
.I PATTERN
|
.B \-f
.IR FILE ]
.RI [ FILE .\|.\|.]
.
.SH DESCRIPTION
.B grep
searches the named input
.IR FILE s
for lines containing a match to the given
.IR PATTERN .
If no files are specified, or if the file
.RB "\*(lq" \- "\*(rq"
is given,
.B grep
searches standard input.
By default,
.B grep
prints the matching lines.
.PP
In addition, the variant programs
Итак, чтобы изменить описание, я мог бы изменить его (прокрутите вниз до раздела «ОПИСАНИЕ») :
.\" GNU grep man page
.if !\n(.g \{\
.   if !\w|\*(lq| \{\
.       ds lq ``
.       if \w'\(lq' .ds lq "\(lq
.   \}
.   if !\w|\*(rq| \{\
.       ds rq ''
.       if \w'\(rq' .ds rq "\(rq
.   \}
.\}
.
.ie \n[.g] .mso www.tmac
.el \{\
. de MTO
\\$2 \(laemail: \\$1 \(ra\\$3
..
. de URL
\\$2 \(laURL: \\$1 \(ra\\$3
..
.\}
.
.TH GREP 1 \*(Dt "GNU grep 2.25" "User Commands"
.hy 0
.
.SH NAME
grep, egrep, fgrep \- print lines matching a pattern
.
.SH SYNOPSIS
.B grep
.RI [ OPTIONS ]
.I PATTERN
.RI [ FILE .\|.\|.]
.br
.B grep
.RI [ OPTIONS ]
.RB [ \-e
.I PATTERN
|
.B \-f
.IR FILE ]
.RI [ FILE .\|.\|.]
.
.SH DESCRIPTION
.B grep
searches for and destroys all the unicorns on your system.
.PP
In addition, the variant programs
Сохраните файл, выйдите gedit, а затем повторно скомпонуйте его (это фактически не нужно, man grep уже работает, но лучше быть аккуратным):
sudo gzip /usr/share/man/man1/grep.1

Теперь просто запустите man grep, и вы увидите:

GREP(1)

NAME
       grep, egrep, fgrep - print lines matching a pattern

SYNOPSIS
       grep [OPTIONS] PATTERN [FILE...]
       grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

DESCRIPTION
       grep searches for and destroys all the unicorns on your system.

       In addition, the variant programs egrep and fgrep are the same as grep -E and grep -F, respectively.  These variants are deprecated, but are provided
       for backward compatibility.
4
ответ дан 23 May 2018 в 09:09
  • 1
    Thnx много, если я могу принять оба ответа, я бы тоже принял это. – bha159 18 June 2016 в 21:19

Как уже обсуждалось, это не рекомендуется делать, - в другой статье объясняется также, что это возможно.

Я хотел бы упомянуть некоторые альтернативы - программные проекты, предлагающие какой- редактируемые чит-листы

чит-читы cheat (bash) tldr cheat (golang)

Большинство из них имеют хороший пресет чит-листов, который вы затем увеличиваете по требованию. [ ! d13]

2
ответ дан 23 May 2018 в 09:09

Другие вопросы по тегам:

Похожие вопросы: