kernel-doc nano-HOWTO
=====================

ĥ꡼ˤϡ֥åȷǴؿвǽʻ
󤢤ޤΥƥΥݡͥȤϼΤȤǤ

- scripts/kernel-doc

  ֥åȤõľ DocBook, man, text, HTML إޡ
  åפǤ perl ץȤǤ (texinfo ϤǤޤ)

- Documentation/DocBook/*.tmpl

  SGML ƥץ졼ȥեǤ̤ SGML եǡФ줿
  ɤ֤٤ؼ̤ʾݻƤޤ

- scripts/docproc.c

  SGML ƥץ졼ȥե SGML եѴ뤿Υץ
  Ǥؿΰȼä kernel-doc ưޤ

- scripts/gen-all-syms

  C Υե EXPORT_SYMBOL ܥꥹȤ륹ץȤ
  

- scripts/docgen

  ΥץȤϡɤδؿ뤳ȤˤʤäƤ (Υꥹ
   gen-all-syms ޤ) ꤷdocproc ưޤ

- Makefile

  Documentation/DocBook  DocBook ե롢PostScript ե롢
  PDF ե롢html ե뤿ˡåȤƤ줾
  'sgmldocs', 'psdocs', 'pdfdocs', 'htmldocs' Ѥޤ

- Documentation/DocBook/Makefile

  ɤ C ե뤬 SGML ƥץ졼Ȥȴط뤫Ƥޤ


ˡ
--------------

͡ʥ֥ƥ (Documentation/DocBook/*.tmpl 򻲾ȤƤ)
δܤñɤߤʤ顢ñ 'make psdocs', 'make pdfdocs',
'make htmldocs' Τ줫򤢤ʤιߤˤϤƤ
ΰۤʤեޥåȤɤߤʤ顢'make sgmldocs' Ϥ塢
DocBook ġѤ Documentation/DocBook/*.sgml ˾եޥ
ȤѴǤޤ (㤨 'make htmldocs' ꤷʤäʤ顢
'db2html ...')

man ڡ˻ȤСǹԤޤ

$ cd linux
$ scripts/kernel-doc -man $(find -name '*.c') | split-man.pl /tmp/man
$ scripts/kernel-doc -man $(find -name '*.h') | split-man.pl /tmp/man

split-man.pl ʲ˼ޤ

-->
#!/usr/bin/perl

if ($#ARGV < 0) {
   die "where do I put the results?\n";
}

mkdir $ARGV[0],0777;
$state = 0;
while (<STDIN>) {
    if (/^\.TH \"[^\"]*\" 4 \"([^\"]*)\"/) {
	if ($state == 1) { close OUT }
	$state = 1;
	$fn = "$ARGV[0]/$1.4";
	print STDERR "Creating $fn\n";
	open OUT, ">$fn" or die "can't open $fn: $!\n";
	print OUT $_;
    } elsif ($state != 0) {
	print OUT $_;
    }
}

close OUT;
<--

եΤؿλ򸫤СǹԤޤ

$ scripts/kernel-doc -man -function fn file | nroff -man | less

뤤ϼˡ -

$ scripts/kernel-doc -text -function fn file


եؤвǽʻɲˡ
------------------------------------------

֥åȤν񼰤ϰʲΤ褦ʤΤǤ

/**
 * function_name(:)? (- short description)?
(* @parameterx: (description of parameter x)?)*
(* a blank line)?
 * (Description:)? (Description of function)?
 * (section header: (section description)? )*
(*)?*/

ñʴؿ (short description) ʣԤˤǤޤ󤬡¾
(description)ʣԤˤǤޤ (ޤԤޤळȤǤޤ)ؿ
̾θ˸ζԤ֤ʤǤʤ֤
Ƥޤޤ

ʸϤ٤ơ̤ʥѥξ硢Ŭڤ˶Ĵܤޤ

'funcname()' - ؿ
'$ENVVAR' - Ķѿ
'&struct_name' - ¤̾ ('struct' ޤĤޤǤñ)
'@parameter' - ̾
'%CONST' - ̾

ϥĥ꡼ʤƤ


 SGML ƥץ졼ȥեκˡ
------------------------------------------

SGML ƥץ졼ȥե (*.tmpl) ϡФ줿٤
򼨤ץ󥹤ޤळȤǤʳϡ̤ SGML ե
ƱͤǤ

!E<ե̾>  <ե̾>  EXPORT_SYMBOL Ѥƥݡ
ȤƤؿλ֤ޤ - ؿΰ
Documentation/DocBook/Makefile ˵ܤ줿ե뷲齸


!I<ե̾>  EXPORT_SYMBOL ѤƥݡȤƤʤؿ
λ֤ޤ

!F<ե̾> <ؿ [ؿ...]>  <ե̾> ǵܤ줿ؿλ
֤ޤ


Tim.
*/ <twaugh@redhat.com>
ܸܹ <hng@ps.ksky.ne.jp>
