SYNOPSIS

lk-changelog.pl [options] [file [...]]

Try lk-changelog.pl --help or lk-changelog.pl --man for more information.


OPTIONS

 -h, --help          print this short help
     --man           print the manual page for this program
     --[no]compress  if true, suppress duplicate entries
     --[no]count     if true, fold duplicate entries into one,
                     prefixing it with the count. Implies --compress.
     --[no]swap      in terse and oneline mode, swap address and log entry.
     --[no]merge     treat all files on command line as one big file
                     and suppress the prolog
     --[no]multi     states that multiple changelogs are in one file
     --[no]warn      warn about unknown addresses. Default: set!
     --[no]warnverbose
                     suggest more addresses to be added from
                     Signed-off-by and From lines. Default: unset.
                     Use with caution!
     --[no]abbreviate-names
                     abbreviate all but the last name
     --[no]by-surname
                     sort entries by surname
     --[no]omitaddresses
                     omit "email address" when a name is known
     --[no]obfuscate
                     obfuscate "email address" in output
     --mode=MODE     specify the output format (use --man to find out more)
     --width[=WIDTH] specify the line length, if omitted: $COLUMNS or 80.
                     text lines will not exceed this length.
     --selftest      perform some self tests (for developers of this script)

Warning: Neither --compress nor --count are currently functional with --mode=full.


DESCRIPTION

Summarizes or reformats BitKeeper ChangeLogs for Linux Kernel 2.X.

Addresses of patch authors are determined with the following precedence:

  1. From: line
  2. Signed-off-by
  3. BK user/host

--mode options are:

oneline - a one-line-per-change format (supports --swap)
terse - a shortened one-paragraph-per-change format (supports --swap)
ordered - shortened changes grouped by sorted author
full - full changes grouped by sorted author
fixup - a special mode (since 0.166)
This mode replaces addresses by names if the addresses are known. Useful to postprocess this script's output after new addresses have been added. Besides addresses that are replaced by names, the output is the verbatim input. No ordering or grouping takes place.

resolve - another special mode (since 0.171)
This mode is a quick mode that will try to map all mail addresses to names, up to one per input line. You can run this mode on bk changes output directly.


ENVIRONMENT

LINUXKERNEL_BK_FMT
Default options. These have the same meaning and syntax as the command line options and are parsed before them, so you can override defaults set in this variable on the command line. Example: If you put --swap here and --noswap on your command line, --noswap takes precedence.

LINUXKERNEL_BK_FMT_DEBUG
If this evaluates to ``true'' when used as Perl expression, i. e. it is a nonempty string or a number other than 0, enable debugging.


EXAMPLES

``What am I about to pull?''
bk changes -R -m | lk-changelog.pl | less

Reformat ChangeLog-2.5.17, displaying all changes grouped by their author (that is the default mode, but we specify it anyways), with 76 character wide lines:
 lk-changelog.pl --mode=grouped --width=76 ChangeLog-2.5.17
Reformat ChangeLog-2.5.18, displaying all changes and their author on in ``-ac changelog style'', with 80 character wide lines:
 lk-changelog.pl --mode=terse --width=80 ChangeLog-2.5.18
Reformat 2.4.19-pre ChangeLogs (several in one file) from your mailer:
Use the pipe command to pipe the mail into:
 lk-changelog.pl --multi --mode=terse --width=80


AUTHOR


BUGS


TODO