-----------------------------------------------------------------------------
 MANIFEST             |  135 
 Makefile             |   11 
 aclocal.m4           |    2 
 config.guess         |   12 
 config.sub           |   10 
 configure            |  682 ++--
 configure.in         |   10 
 doc/CHANGES          |   42 
 doc/CREDITS          |  105 
 doc/TODO             |   85 
 doc/keymap.sample    |   85 
 doc/tin.1            |  110 
 doc/tin.5            |  152 -
 include/autoconf.hin |    6 
 include/bool.h       |    2 
 include/bugrep.h     |    2 
 include/extern.h     |   45 
 include/keymap.h     |  708 ++--
 include/menukeys.h   |  463 ---
 include/newsrc.h     |    2 
 include/nntplib.h    |    5 
 include/oldconfig.h  |    2 
 include/policy.h     |    3 
 include/proto.h      |   24 
 include/rfc2046.h    |    2 
 include/stpwatch.h   |    2 
 include/tcurses.h    |    2 
 include/tin.h        |   11 
 include/tinrc.h      |    2 
 include/tnntp.h      |    2 
 include/trace.h      |    2 
 include/version.h    |   10 
 po/de.gmo            |binary
 po/de.po             | 2596 ++++++++---------
 po/en_GB.gmo         |binary
 po/en_GB.po          | 2427 ++++++++--------
 po/et.gmo            |binary
 po/et.po             | 2808 +++++++++----------
 po/fr.gmo            |binary
 po/fr.po             | 2451 ++++++++--------
 po/messages          |binary
 po/tin.pot           | 2433 ++++++++--------
 po/tr.gmo            |binary
 po/tr.po             | 7179 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/Makefile.in      |   42 
 src/active.c         |    2 
 src/art.c            |   10 
 src/attrib.c         |   24 
 src/auth.c           |    2 
 src/charset.c        |    2 
 src/color.c          |    2 
 src/config.c         |   18 
 src/cook.c           |    5 
 src/debug.c          |   18 
 src/envarg.c         |    2 
 src/feed.c           |  198 -
 src/filter.c         |   42 
 src/global.c         |   62 
 src/group.c          |  301 +-
 src/hashstr.c        |    2 
 src/header.c         |    2 
 src/help.c           |  875 ++---
 src/inews.c          |   10 
 src/init.c           |   21 
 src/joinpath.c       |    2 
 src/keymap.c         | 3176 +++++++++++++++------
 src/lang.c           |   32 
 src/list.c           |    2 
 src/lock.c           |    2 
 src/mail.c           |    2 
 src/main.c           |   19 
 src/makecfg.c        |    2 
 src/memory.c         |   76 
 src/mimetypes.c      |    2 
 src/misc.c           |  160 -
 src/my_tmpfile.c     |    2 
 src/newsrc.c         |    2 
 src/nntplib.c        |  207 +
 src/nrctbl.c         |   28 
 src/options_menu.c   |  134 
 src/page.c           |  381 +-
 src/pgp.c            |   58 
 src/post.c           |  364 +-
 src/prompt.c         |   76 
 src/read.c           |   14 
 src/refs.c           |    2 
 src/regex.c          |    2 
 src/rfc1524.c        |    2 
 src/rfc2045.c        |    2 
 src/rfc2046.c        |    2 
 src/rfc2047.c        |    4 
 src/save.c           |   49 
 src/screen.c         |   11 
 src/search.c         |   33 
 src/select.c         |  170 -
 src/sigfile.c        |    2 
 src/signal.c         |    2 
 src/strftime.c       |    2 
 src/string.c         |   29 
 src/tags.c           |    2 
 src/tcurses.c        |    2 
 src/thread.c         |  255 -
 src/tincfg.tbl       |    2 
 src/trace.c          |    2 
 src/version.c        |   22 
 src/xface.c          |    2 
 src/xref.c           |   15 
 tin.spec             |    2 
 tools/tinews.pl      |    4 
 109 files changed, 19044 insertions, 10587 deletions
-----------------------------------------------------------------------------
diff -Nurp tin-1.7.7/MANIFEST tin-1.7.8/MANIFEST
--- tin-1.7.7/MANIFEST	Wed Dec 15 16:56:38 2004
+++ tin-1.7.8/MANIFEST	Mon Mar 21 13:44:06 2005
@@ -1,27 +1,27 @@
-MANIFEST for tin-1.7.7 (Wed Dec 15 16:56:38 CET 2004)
+MANIFEST for tin-1.7.8 (Mon Mar 21 13:44:05 CET 2005)
 ----------------------------------------------------
-  13125 ./Makefile
-   7607 ./MANIFEST
+  13138 ./Makefile
+   7617 ./MANIFEST
    1440 ./README
     564 ./README.MAC
    2209 ./README.VMS
    1006 ./README.WIN
  138874 ./aclocal.m4
     882 ./conf-tin
-  43393 ./config.guess
-  31414 ./config.sub
- 487302 ./configure
-  30841 ./configure.in
+  43545 ./config.guess
+  31442 ./config.sub
+ 487325 ./configure
+  30864 ./configure.in
    7123 ./install.sh
     777 ./mkdirs.sh
    1505 ./tin.spec
   18847 ./doc/ABOUT-NLS
-  18782 ./doc/CHANGES
+  20601 ./doc/CHANGES
  226345 ./doc/CHANGES.old
-   4654 ./doc/CREDITS
+   4709 ./doc/CREDITS
    1469 ./doc/DEBUG_REFS
   29900 ./doc/INSTALL
-  30877 ./doc/TODO
+  31578 ./doc/TODO
     963 ./doc/WHATSNEW
    2618 ./doc/art_handling.txt
    1700 ./doc/article.txt
@@ -31,7 +31,7 @@ MANIFEST for tin-1.7.7 (Wed Dec 15 16:56
   35304 ./doc/good-netkeeping-seal
    3803 ./doc/internals.txt
   23621 ./doc/iso2asc.txt
-   4112 ./doc/keymap.sample
+   3728 ./doc/keymap.sample
     660 ./doc/mailcap.sample
    3365 ./doc/mime.types
    1541 ./doc/nov_tests
@@ -48,105 +48,104 @@ MANIFEST for tin-1.7.7 (Wed Dec 15 16:56
    4168 ./doc/mmdf.5
    2128 ./doc/newsoverview.5
    6963 ./doc/plp_snprintf.3
- 117824 ./doc/tin.1
-  72519 ./doc/tin.5
+ 118104 ./doc/tin.1
+  72104 ./doc/tin.5
    4733 ./doc/w2r.1
    2196 ./doc/wildmat.3
     344 ./tools/expiretover
    3815 ./tools/metamutt
    2787 ./tools/opt-case.pl
    1410 ./tools/tinlock
-  24945 ./tools/tinews.pl
+  25034 ./tools/tinews.pl
    1561 ./tools/url_handler.sh
    3347 ./tools/w2r.pl
    1661 ./tools/expand_aliases.tgz
    2778 ./include/bool.h
    2039 ./include/bugrep.h
    9502 ./include/oldconfig.h
-  58088 ./include/extern.h
-  11501 ./include/keymap.h
-  15938 ./include/menukeys.h
+  58587 ./include/extern.h
+  13218 ./include/keymap.h
    6340 ./include/newsrc.h
-   6507 ./include/nntplib.h
+   6566 ./include/nntplib.h
     665 ./include/plp_snprintf.h
-  12209 ./include/policy.h
-  30501 ./include/proto.h
+  12245 ./include/policy.h
+  30651 ./include/proto.h
    5047 ./include/rfc2046.h
    3373 ./include/stpwatch.h
    5756 ./include/tcurses.h
-  62980 ./include/tin.h
+  62940 ./include/tin.h
   13273 ./include/tinrc.h
    5670 ./include/tnntp.h
    2264 ./include/trace.h
-   2561 ./include/version.h
+   2562 ./include/version.h
   25899 ./src/active.c
-  55396 ./src/art.c
-  31543 ./src/attrib.c
+  55767 ./src/art.c
+  31826 ./src/attrib.c
   12354 ./src/auth.c
   13712 ./src/charset.c
    8220 ./src/color.c
-  57803 ./src/config.c
-  19971 ./src/cook.c
+  57811 ./src/config.c
+  20063 ./src/cook.c
   30473 ./src/curses.c
-   9791 ./src/debug.c
+   9895 ./src/debug.c
    3408 ./src/envarg.c
-  26001 ./src/feed.c
-  54995 ./src/filter.c
+  26421 ./src/feed.c
+  54846 ./src/filter.c
   18114 ./src/getline.c
-   8933 ./src/global.c
-  45174 ./src/group.c
+   8991 ./src/global.c
+  45162 ./src/group.c
    3900 ./src/hashstr.c
    8763 ./src/header.c
-  28225 ./src/help.c
-  13855 ./src/inews.c
-  32720 ./src/init.c
+  28809 ./src/help.c
+  13890 ./src/inews.c
+  32645 ./src/init.c
    2216 ./src/joinpath.c
-  38670 ./src/keymap.c
- 116362 ./src/lang.c
+  82376 ./src/keymap.c
+ 116795 ./src/lang.c
    4486 ./src/langinfo.c
    7033 ./src/list.c
    6662 ./src/lock.c
   13352 ./src/mail.c
-  21002 ./src/main.c
+  21101 ./src/main.c
   10197 ./src/makecfg.c
-  12294 ./src/memory.c
+  12278 ./src/memory.c
    5257 ./src/mimetypes.c
-  89409 ./src/misc.c
+  89594 ./src/misc.c
   40317 ./src/newsrc.c
-  37182 ./src/nntplib.c
-   7291 ./src/nrctbl.c
-  42153 ./src/options_menu.c
-  58982 ./src/page.c
+  39786 ./src/nntplib.c
+   7125 ./src/nrctbl.c
+  41462 ./src/options_menu.c
+  58511 ./src/page.c
   24133 ./src/parsdate.y
   16966 ./src/plp_snprintf.c
-  12702 ./src/pgp.c
- 133557 ./src/post.c
-  17550 ./src/prompt.c
-  10683 ./src/read.c
+  12669 ./src/pgp.c
+ 132988 ./src/post.c
+  17070 ./src/prompt.c
+  10661 ./src/read.c
   25568 ./src/refs.c
    5276 ./src/regex.c
   14545 ./src/rfc1524.c
   15062 ./src/rfc2045.c
   29727 ./src/rfc2046.c
-  32678 ./src/rfc2047.c
-  37285 ./src/save.c
-  11472 ./src/screen.c
-  16267 ./src/search.c
-  30958 ./src/select.c
+  32672 ./src/rfc2047.c
+  37371 ./src/save.c
+  11382 ./src/screen.c
+  16552 ./src/search.c
+  30892 ./src/select.c
    7590 ./src/sigfile.c
   12655 ./src/signal.c
    7215 ./src/strftime.c
-  22632 ./src/string.c
+  22954 ./src/string.c
   13874 ./src/tags.c
   16944 ./src/tcurses.c
    3071 ./src/tmpfile.c
    3364 ./src/my_tmpfile.c
-  39673 ./src/thread.c
+  40147 ./src/thread.c
    2472 ./src/trace.c
-   4384 ./src/version.c
+   4407 ./src/version.c
    5453 ./src/wildmat.c
    7153 ./src/xface.c
-   7742 ./src/xref.c
+   7775 ./src/xref.c
    3013 ./vms/dir.h
     424 ./vms/filetypes.h
   21451 ./vms/getopt.c
@@ -218,9 +217,9 @@ MANIFEST for tin-1.7.7 (Wed Dec 15 16:56
   14738 ./pcre/testdata/testoutput4
   22902 ./pcre/testdata/testoutput5
   16226 ./pcre/testdata/testoutput6
-  19859 ./include/autoconf.hin
+  19899 ./include/autoconf.hin
    5800 ./pcre/pcre.mms
-  20987 ./src/Makefile.in
+  20900 ./src/Makefile.in
    7634 ./src/tincfg.tbl
    8747 ./src/descrip.mms
     954 ./libcanlock/Build
@@ -283,13 +282,15 @@ MANIFEST for tin-1.7.7 (Wed Dec 15 16:56
      41 ./intl/VERSION
    4962 ./po/Makefile.inn
     847 ./po/POTFILES.in
- 120362 ./po/tin.pot
- 164613 ./po/de.gmo
- 195863 ./po/de.po
+ 120552 ./po/tin.pot
+ 165376 ./po/de.gmo
+ 196302 ./po/de.po
    7359 ./po/en_GB.gmo
- 123039 ./po/en_GB.po
- 142956 ./po/et.gmo
- 186066 ./po/et.po
- 162681 ./po/fr.gmo
- 193204 ./po/fr.po
-6727420 total
+ 123229 ./po/en_GB.po
+ 156862 ./po/et.gmo
+ 187287 ./po/et.po
+ 162872 ./po/fr.gmo
+ 193473 ./po/fr.po
+   5889 ./po/tr.gmo
+ 188501 ./po/tr.po
+6975169 total
diff -Nurp tin-1.7.7/Makefile tin-1.7.8/Makefile
--- tin-1.7.7/Makefile	Wed Dec 15 16:56:35 2004
+++ tin-1.7.8/Makefile	Mon Mar 21 13:44:03 2005
@@ -1,15 +1,15 @@
 # Top level Makefile for tin
 # - for configuration options read the doc/INSTALL file.
 #
-# Updated: 2004-09-14
+# Updated: 2005-03-06
 #
 
 PROJECT	= tin
 LVER	= 1
 PVER	= 7
-SVER	= 7
+SVER	= 8
 VER	= $(LVER).$(PVER).$(SVER)
-DVER	= 20041215
+DVER	= 20050321
 EXE	= tin
 
 # directory structure
@@ -31,7 +31,6 @@ HFILES	= \
 	$(INCDIR)/oldconfig.h \
 	$(INCDIR)/extern.h \
 	$(INCDIR)/keymap.h \
-	$(INCDIR)/menukeys.h \
 	$(INCDIR)/newsrc.h \
 	$(INCDIR)/nntplib.h \
 	$(INCDIR)/plp_snprintf.h \
@@ -337,7 +336,9 @@ POFILES = \
 	$(PODIR)/et.gmo \
 	$(PODIR)/et.po \
 	$(PODIR)/fr.gmo \
-	$(PODIR)/fr.po
+	$(PODIR)/fr.po \
+	$(PODIR)/tr.gmo \
+	$(PODIR)/tr.po
 
 
 ALL_FILES = $(TOP) $(DOC) $(TOL) $(HFILES) $(CFILES) $(VMS) $(PCRE) $(MISC) $(CAN) $(INTLFILES) $(POFILES)
diff -Nurp tin-1.7.7/aclocal.m4 tin-1.7.8/aclocal.m4
--- tin-1.7.7/aclocal.m4	Mon Nov 15 18:44:20 2004
+++ tin-1.7.8/aclocal.m4	Thu Dec 30 14:34:24 2004
@@ -5,7 +5,7 @@ dnl Created   : 1995-08-24
 dnl Updated   : 2004-02-28
 dnl Notes     :
 dnl
-dnl Copyright (c) 1995-2004 Thomas E. Dickey <dickey@invisible-island.net>
+dnl Copyright (c) 1995-2005 Thomas E. Dickey <dickey@invisible-island.net>
 dnl All rights reserved.
 dnl
 dnl Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/config.guess tin-1.7.8/config.guess
--- tin-1.7.7/config.guess	Mon Nov 15 18:44:20 2004
+++ tin-1.7.8/config.guess	Thu Feb 10 23:07:57 2005
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 
-timestamp='2004-11-12'
+timestamp='2005-02-10'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -53,7 +53,7 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
@@ -804,6 +804,9 @@ EOF
     i*:UWIN*:*)
 	echo ${UNAME_MACHINE}-pc-uwin
 	exit 0 ;;
+    amd64:CYGWIN*:*:*)
+	echo x86_64-unknown-cygwin
+	exit 0 ;;
     p*:CYGWIN*:*)
 	echo powerpcle-unknown-cygwin
 	exit 0 ;;
@@ -1196,6 +1199,9 @@ EOF
 	exit 0 ;;
     *:QNX:*:4*)
 	echo i386-pc-qnx
+	exit 0 ;;
+    NSE-?:NONSTOP_KERNEL:*:*)
+	echo nse-tandem-nsk${UNAME_RELEASE}
 	exit 0 ;;
     NSR-?:NONSTOP_KERNEL:*:*)
 	echo nsr-tandem-nsk${UNAME_RELEASE}
diff -Nurp tin-1.7.7/config.sub tin-1.7.8/config.sub
--- tin-1.7.7/config.sub	Thu Dec  2 02:40:05 2004
+++ tin-1.7.8/config.sub	Thu Feb 10 23:08:44 2005
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 
-timestamp='2004-11-30'
+timestamp='2005-02-10'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -70,7 +70,7 @@ Report bugs and patches to <config-patch
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
@@ -237,7 +237,7 @@ case $basic_machine in
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
 	| i370 | i860 | i960 | ia64 \
 	| ip2k | iq2000 \
-	| m32r | m32rle | m68000 | m68k | m88k | mcore \
+	| m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
 	| mips | mipsbe | mipseb | mipsel | mipsle \
 	| mips16 \
 	| mips64 | mips64el \
@@ -310,7 +310,7 @@ case $basic_machine in
 	| ip2k-* | iq2000-* \
 	| m32r-* | m32rle-* \
 	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | mcore-* \
+	| m88110-* | m88k-* | maxq-* | mcore-* \
 	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
 	| mips16-* \
 	| mips64-* | mips64el-* \
diff -Nurp tin-1.7.7/configure tin-1.7.8/configure
--- tin-1.7.7/configure	Wed Dec 15 16:56:37 2004
+++ tin-1.7.8/configure	Mon Mar 21 13:44:05 2005
@@ -627,7 +627,7 @@ fi
 
 
 PACKAGE=tin
-VERSION=1.7.7
+VERSION=1.7.8
 cat >> confdefs.h <<EOF
 #define PACKAGE "$PACKAGE"
 EOF
@@ -806,7 +806,7 @@ fi
 esac
 
 ### Native Language Support
-ALL_LINGUAS="de en_GB et fr"
+ALL_LINGUAS="de en_GB et fr tr"
 
 ### Checks for programs
 save_CFLAGS="$CFLAGS"
@@ -11706,6 +11706,7 @@ for ac_func in \
 	strftime \
 	strpbrk \
 	strrstr \
+	strsep \
 	strstr \
 	strtol \
 	tmpfile \
@@ -11720,12 +11721,12 @@ for ac_func in \
 $cf_tc_funcs 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:11724: checking for $ac_func" >&5
+echo "configure:11725: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11729 "configure"
+#line 11730 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -11748,7 +11749,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:11752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11753: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -11774,12 +11775,12 @@ done
 
 
 echo $ac_n "checking for flock""... $ac_c" 1>&6
-echo "configure:11778: checking for flock" >&5
+echo "configure:11779: checking for flock" >&5
 if eval "test \"`echo '$''{'ac_cv_func_flock'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11783 "configure"
+#line 11784 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char flock(); below.  */
@@ -11802,7 +11803,7 @@ flock();
 
 ; return 0; }
 EOF
-if { (eval echo configure:11806: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11807: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_flock=yes"
 else
@@ -11824,7 +11825,7 @@ else
   echo "$ac_t""no" 1>&6
 
 	echo $ac_n "checking for flock in -lbsd""... $ac_c" 1>&6
-echo "configure:11828: checking for flock in -lbsd" >&5
+echo "configure:11829: checking for flock in -lbsd" >&5
 ac_lib_var=`echo bsd'_'flock | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -11832,7 +11833,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbsd  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 11836 "configure"
+#line 11837 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -11843,7 +11844,7 @@ int main() {
 flock()
 ; return 0; }
 EOF
-if { (eval echo configure:11847: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -11872,12 +11873,12 @@ fi
 
 
   echo $ac_n "checking for wide char and multibyte support""... $ac_c" 1>&6
-echo "configure:11876: checking for wide char and multibyte support" >&5
+echo "configure:11877: checking for wide char and multibyte support" >&5
 if eval "test \"`echo '$''{'am_cv_multibyte_able'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11881 "configure"
+#line 11882 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 #ifdef HAVE_STDLIB_H
@@ -11913,7 +11914,7 @@ char icb[5] = {0xa4, 0xa4, 0xa4, 0xe5, 0
       wcsncat(wcb2, wcb, 5);
 ; return 0; }
 EOF
-if { (eval echo configure:11917: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11918: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_multibyte_able=yes
 else
@@ -11923,7 +11924,7 @@ else
   cf_save_LIBS="$LIBS"
       LIBS="-lutf8 $LIBS"
       cat > conftest.$ac_ext <<EOF
-#line 11927 "configure"
+#line 11928 "configure"
 #include "confdefs.h"
 #include <libutf8.h>
 int main() {
@@ -11949,7 +11950,7 @@ char icb[5] = {0xa4, 0xa4, 0xa4, 0xe5, 0
         wcsncat(wcb2, wcb, 5);
 ; return 0; }
 EOF
-if { (eval echo configure:11953: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11954: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_multibyte_able=libutf8
 else
@@ -11983,9 +11984,9 @@ EOF
 
 
 echo $ac_n "checking if gettimeofday takes two arguments""... $ac_c" 1>&6
-echo "configure:11987: checking if gettimeofday takes two arguments" >&5
+echo "configure:11988: checking if gettimeofday takes two arguments" >&5
 cat > conftest.$ac_ext <<EOF
-#line 11989 "configure"
+#line 11990 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_TIME_H
@@ -11997,7 +11998,7 @@ struct timezone *tz;
 gettimeofday(tv, tz);
 ; return 0; }
 EOF
-if { (eval echo configure:12001: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12002: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_func_gettimeofday_2args=yes
 else
@@ -12016,12 +12017,12 @@ EOF
 fi
 
 echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:12020: checking return type of signal handlers" >&5
+echo "configure:12021: checking return type of signal handlers" >&5
 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12025 "configure"
+#line 12026 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <signal.h>
@@ -12038,7 +12039,7 @@ int main() {
 int i;
 ; return 0; }
 EOF
-if { (eval echo configure:12042: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12043: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_type_signal=void
 else
@@ -12058,7 +12059,7 @@ EOF
 
 
 echo $ac_n "checking declaration of signal arguments""... $ac_c" 1>&6
-echo "configure:12062: checking declaration of signal arguments" >&5
+echo "configure:12063: checking declaration of signal arguments" >&5
 if eval "test \"`echo '$''{'cf_cv_sig_args'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12067,7 +12068,7 @@ cf_cv_sig_args=
 for cf_test in "int sig" "int sig, ..."
 do
 	cat > conftest.$ac_ext <<EOF
-#line 12071 "configure"
+#line 12072 "configure"
 #include "confdefs.h"
 
 #include <signal.h>
@@ -12075,7 +12076,7 @@ int main() {
 extern RETSIGTYPE catch($cf_test); signal(SIGINT, catch)
 ; return 0; }
 EOF
-if { (eval echo configure:12079: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12080: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_sig_args="$cf_test";break
 else
@@ -12101,13 +12102,13 @@ EOF
 if test "$ac_cv_func_sigaction" = yes; then
 
 echo $ac_n "checking whether sigaction needs _POSIX_SOURCE""... $ac_c" 1>&6
-echo "configure:12105: checking whether sigaction needs _POSIX_SOURCE" >&5
+echo "configure:12106: checking whether sigaction needs _POSIX_SOURCE" >&5
 if eval "test \"`echo '$''{'cf_cv_sigact_bad'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 12111 "configure"
+#line 12112 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -12116,7 +12117,7 @@ int main() {
 struct sigaction act
 ; return 0; }
 EOF
-if { (eval echo configure:12120: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12121: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_sigact_bad=no
 else
@@ -12137,13 +12138,13 @@ EOF
 
 
 echo $ac_n "checking if we have sigaction/related functions""... $ac_c" 1>&6
-echo "configure:12141: checking if we have sigaction/related functions" >&5
+echo "configure:12142: checking if we have sigaction/related functions" >&5
 if eval "test \"`echo '$''{'cf_cv_sigaction_funcs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 12147 "configure"
+#line 12148 "configure"
 #include "confdefs.h"
 
 #ifdef SVR4_ACTION
@@ -12161,7 +12162,7 @@ int main() {
     sigaction (SIGBUS,&sa,&osa);
 ; return 0; }
 EOF
-if { (eval echo configure:12165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12166: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_sigaction_funcs=yes
 else
@@ -12183,7 +12184,7 @@ EOF
 fi
 
 echo $ac_n "checking for fork""... $ac_c" 1>&6
-echo "configure:12187: checking for fork" >&5
+echo "configure:12188: checking for fork" >&5
 if eval "test \"`echo '$''{'cf_cv_func_fork'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12192,7 +12193,7 @@ if test "$cross_compiling" = yes; then
   cf_cv_func_fork=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 12196 "configure"
+#line 12197 "configure"
 #include "confdefs.h"
 
 int main()
@@ -12202,7 +12203,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:12206: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:12207: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_func_fork=yes
 else
@@ -12224,12 +12225,12 @@ EOF
 
 
 echo $ac_n "checking for memmove""... $ac_c" 1>&6
-echo "configure:12228: checking for memmove" >&5
+echo "configure:12229: checking for memmove" >&5
 if eval "test \"`echo '$''{'ac_cv_func_memmove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12233 "configure"
+#line 12234 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char memmove(); below.  */
@@ -12252,7 +12253,7 @@ memmove();
 
 ; return 0; }
 EOF
-if { (eval echo configure:12256: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_memmove=yes"
 else
@@ -12271,12 +12272,12 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for bcopy""... $ac_c" 1>&6
-echo "configure:12275: checking for bcopy" >&5
+echo "configure:12276: checking for bcopy" >&5
 if eval "test \"`echo '$''{'ac_cv_func_bcopy'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12280 "configure"
+#line 12281 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char bcopy(); below.  */
@@ -12299,7 +12300,7 @@ bcopy();
 
 ; return 0; }
 EOF
-if { (eval echo configure:12303: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12304: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_bcopy=yes"
 else
@@ -12315,7 +12316,7 @@ if eval "test \"`echo '$ac_cv_func_'bcop
   echo "$ac_t""yes" 1>&6
   
 	echo $ac_n "checking if bcopy does overlapping moves""... $ac_c" 1>&6
-echo "configure:12319: checking if bcopy does overlapping moves" >&5
+echo "configure:12320: checking if bcopy does overlapping moves" >&5
 if eval "test \"`echo '$''{'cf_cv_good_bcopy'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12324,7 +12325,7 @@ else
   cf_cv_good_bcopy=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 12328 "configure"
+#line 12329 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -12337,7 +12338,7 @@ int main() {
 }
 		
 EOF
-if { (eval echo configure:12341: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:12342: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_good_bcopy=yes
 else
@@ -12375,9 +12376,9 @@ fi
 
 
 echo $ac_n "checking if select expects int * arguments""... $ac_c" 1>&6
-echo "configure:12379: checking if select expects int * arguments" >&5
+echo "configure:12380: checking if select expects int * arguments" >&5
 cat > conftest.$ac_ext <<EOF
-#line 12381 "configure"
+#line 12382 "configure"
 #include "confdefs.h"
 #include <time.h>
 EOF
@@ -12397,7 +12398,7 @@ rm -f conftest*
 
 
 echo $ac_n "checking whether closedir returns void""... $ac_c" 1>&6
-echo "configure:12401: checking whether closedir returns void" >&5
+echo "configure:12402: checking whether closedir returns void" >&5
 if eval "test \"`echo '$''{'ac_cv_func_closedir_void'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12405,13 +12406,13 @@ else
   ac_cv_func_closedir_void=yes
 else
   cat > conftest.$ac_ext <<EOF
-#line 12409 "configure"
+#line 12410 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_header_dirent>
 int closedir(); main() { exit(closedir(opendir(".")) != 0); }
 EOF
-if { (eval echo configure:12415: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:12416: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_closedir_void=no
 else
@@ -12437,7 +12438,7 @@ fi
 # autoconf 2.5x assumes setvbuf is not reversed when cross-compiling
 if test "$cross_compiling" != yes ; then
 	echo $ac_n "checking whether setvbuf arguments are reversed""... $ac_c" 1>&6
-echo "configure:12441: checking whether setvbuf arguments are reversed" >&5
+echo "configure:12442: checking whether setvbuf arguments are reversed" >&5
 if eval "test \"`echo '$''{'ac_cv_func_setvbuf_reversed'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12445,7 +12446,7 @@ else
     { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 12449 "configure"
+#line 12450 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 /* If setvbuf has the reversed format, exit 0. */
@@ -12459,7 +12460,7 @@ main () {
   exit(0);			/* Non-reversed systems segv here.  */
 }
 EOF
-if { (eval echo configure:12463: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:12464: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_setvbuf_reversed=yes
 else
@@ -12497,12 +12498,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:12501: checking for $ac_func" >&5
+echo "configure:12502: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12506 "configure"
+#line 12507 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -12525,7 +12526,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:12529: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12530: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -12552,13 +12553,13 @@ done
 
 
 echo $ac_n "checking for type sigaction_t""... $ac_c" 1>&6
-echo "configure:12556: checking for type sigaction_t" >&5
+echo "configure:12557: checking for type sigaction_t" >&5
 if eval "test \"`echo '$''{'cf_cv_type_sigaction'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 12562 "configure"
+#line 12563 "configure"
 #include "confdefs.h"
 
 #include <signal.h>
@@ -12566,7 +12567,7 @@ int main() {
 sigaction_t x
 ; return 0; }
 EOF
-if { (eval echo configure:12570: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12571: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_type_sigaction=yes
 else
@@ -12586,13 +12587,13 @@ EOF
 
 
 echo $ac_n "checking for nonconflicting termios.h""... $ac_c" 1>&6
-echo "configure:12590: checking for nonconflicting termios.h" >&5
+echo "configure:12591: checking for nonconflicting termios.h" >&5
 if eval "test \"`echo '$''{'cf_cv_use_termios_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 12596 "configure"
+#line 12597 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_IOCTL_H
@@ -12614,7 +12615,7 @@ int main() {
 	(void) tcgetattr (0, &save_tty)
 ; return 0; }
 EOF
-if { (eval echo configure:12618: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12619: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_use_termios_h=yes
 else
@@ -12645,13 +12646,13 @@ fi
 
 
 echo $ac_n "checking for passwd.pw_gecos""... $ac_c" 1>&6
-echo "configure:12649: checking for passwd.pw_gecos" >&5
+echo "configure:12650: checking for passwd.pw_gecos" >&5
 if eval "test \"`echo '$''{'cf_cv_pw_gecos'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 12655 "configure"
+#line 12656 "configure"
 #include "confdefs.h"
 
 #include <pwd.h>
@@ -12662,7 +12663,7 @@ int main() {
 	char bar = foo.pw_gecos
 ; return 0; }
 EOF
-if { (eval echo configure:12666: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12667: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_pw_gecos=yes
 else
@@ -12682,13 +12683,13 @@ EOF
 
 
 echo $ac_n "checking for tm.tm_gmtoff""... $ac_c" 1>&6
-echo "configure:12686: checking for tm.tm_gmtoff" >&5
+echo "configure:12687: checking for tm.tm_gmtoff" >&5
 if eval "test \"`echo '$''{'cf_cv_tm_gmtoff'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 12692 "configure"
+#line 12693 "configure"
 #include "confdefs.h"
 
 #ifdef TIME_WITH_SYS_TIME
@@ -12708,7 +12709,7 @@ int main() {
 	long bar = foo.tm_gmtoff
 ; return 0; }
 EOF
-if { (eval echo configure:12712: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12713: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_tm_gmtoff=yes
 else
@@ -12728,7 +12729,7 @@ EOF
 
 
 echo $ac_n "checking for long file names""... $ac_c" 1>&6
-echo "configure:12732: checking for long file names" >&5
+echo "configure:12733: checking for long file names" >&5
 if eval "test \"`echo '$''{'ac_cv_sys_long_file_names'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12776,17 +12777,17 @@ for ac_hdr in sys/wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:12780: checking for $ac_hdr" >&5
+echo "configure:12781: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12785 "configure"
+#line 12786 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:12790: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:12791: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -12823,17 +12824,17 @@ for ac_hdr in wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:12827: checking for $ac_hdr" >&5
+echo "configure:12828: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12832 "configure"
+#line 12833 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:12837: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:12838: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -12863,17 +12864,17 @@ for ac_hdr in waitstatus.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:12867: checking for $ac_hdr" >&5
+echo "configure:12868: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12872 "configure"
+#line 12873 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:12877: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:12878: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -12914,13 +12915,13 @@ fi
 
 
 echo $ac_n "checking for union wait""... $ac_c" 1>&6
-echo "configure:12918: checking for union wait" >&5
+echo "configure:12919: checking for union wait" >&5
 if eval "test \"`echo '$''{'cf_cv_type_unionwait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 12924 "configure"
+#line 12925 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -12931,7 +12932,7 @@ int x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:12935: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_type_unionwait=no
 	 echo compiles ok w/o union wait 1>&5
@@ -12942,7 +12943,7 @@ else
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 12946 "configure"
+#line 12947 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -12957,7 +12958,7 @@ union wait x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:12961: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12962: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_type_unionwait=yes
 	 echo compiles ok with union wait and possibly macros too 1>&5
@@ -12982,7 +12983,7 @@ EOF
 
 
 echo $ac_n "checking if the system function returns usable child-status""... $ac_c" 1>&6
-echo "configure:12986: checking if the system function returns usable child-status" >&5
+echo "configure:12987: checking if the system function returns usable child-status" >&5
 if eval "test \"`echo '$''{'cf_cv_system_status'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12991,7 +12992,7 @@ else
   cf_cv_system_status=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 12995 "configure"
+#line 12996 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -13024,7 +13025,7 @@ int main()
 }
 
 EOF
-if { (eval echo configure:13028: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:13029: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_system_status=no
 else
@@ -13035,11 +13036,11 @@ else
   cf_cv_system_status=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 13039 "configure"
+#line 13040 "configure"
 #include "confdefs.h"
 int main() { exit(system("exit 23") != (23 << 8)); }
 EOF
-if { (eval echo configure:13043: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:13044: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_system_status=yes
 else
@@ -13082,13 +13083,13 @@ EOF
 
 if test "$cf_cv_ncurses_version" != no ; then
 echo $ac_n "checking for obsolete/broken version of ncurses""... $ac_c" 1>&6
-echo "configure:13086: checking for obsolete/broken version of ncurses" >&5
+echo "configure:13087: checking for obsolete/broken version of ncurses" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_broken'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 13092 "configure"
+#line 13093 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -13102,7 +13103,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13106: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13107: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_broken=no
 else
@@ -13127,13 +13128,13 @@ fi
 
 		
 echo $ac_n "checking if curses supports color attributes""... $ac_c" 1>&6
-echo "configure:13131: checking if curses supports color attributes" >&5
+echo "configure:13132: checking if curses supports color attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_color_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 13137 "configure"
+#line 13138 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -13148,7 +13149,7 @@ chtype x = COLOR_BLUE;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:13152: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13153: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_color_curses=yes
 else
@@ -13199,7 +13200,7 @@ if test $check_sig_const = yes ; then
 	
 
 echo $ac_n "checking for redefinable signal constants""... $ac_c" 1>&6
-echo "configure:13203: checking for redefinable signal constants" >&5
+echo "configure:13204: checking for redefinable signal constants" >&5
 if eval "test \"`echo '$''{'cf_cv_sig_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -13211,7 +13212,7 @@ if test -n "$cf_cv_sig_args"; then
   cf_cv_sig_const=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 13215 "configure"
+#line 13216 "configure"
 #include "confdefs.h"
 
 #define NEW_DFL	((RETSIGTYPE (*)($cf_test))0)
@@ -13238,7 +13239,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:13242: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:13243: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_sig_const=yes
 else
@@ -13264,13 +13265,13 @@ fi
 
 
 echo $ac_n "checking for ANSI qsort""... $ac_c" 1>&6
-echo "configure:13268: checking for ANSI qsort" >&5
+echo "configure:13269: checking for ANSI qsort" >&5
 if eval "test \"`echo '$''{'cf_cv_comptype'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 13274 "configure"
+#line 13275 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_STDLIB_H
@@ -13282,7 +13283,7 @@ extern int compare(const void *, const v
 	 qsort(foo, sizeof(foo)/sizeof(*foo), sizeof(*foo), compare)
 ; return 0; }
 EOF
-if { (eval echo configure:13286: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13287: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_comptype=yes
 else
@@ -13310,7 +13311,7 @@ fi
 
 
 echo $ac_n "checking if application can dump core""... $ac_c" 1>&6
-echo "configure:13314: checking if application can dump core" >&5
+echo "configure:13315: checking if application can dump core" >&5
 if eval "test \"`echo '$''{'cf_cv_corefile'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -13319,7 +13320,7 @@ else
   cf_cv_corefile=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 13323 "configure"
+#line 13324 "configure"
 #include "confdefs.h"
 
 #include <signal.h>
@@ -13360,7 +13361,7 @@ int main()
 #endif
 }
 EOF
-if { (eval echo configure:13364: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:13365: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_corefile=yes
 else
@@ -13399,6 +13400,7 @@ for ac_func in \
 	popen \
 	strchr \
 	strcasestr \
+	strsep \
 
 do
 
@@ -13406,18 +13408,18 @@ ac_tr_func=`echo "$ac_func" | sed y%abcd
 
 
 echo $ac_n "checking for missing "${ac_func}" extern""... $ac_c" 1>&6
-echo "configure:13410: checking for missing "${ac_func}" extern" >&5
+echo "configure:13412: checking for missing "${ac_func}" extern" >&5
 if eval "test \"`echo '$''{'cf_cv_func_${ac_func}'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 
-echo "(line 13416) testing for missing "${ac_func}" external ..." 1>&5
+echo "(line 13418) testing for missing "${ac_func}" external ..." 1>&5
 
 cf_save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS $CHECK_DECL_FLAG"
 cat > conftest.$ac_ext <<EOF
-#line 13421 "configure"
+#line 13423 "configure"
 #include "confdefs.h"
 
 $CHECK_DECL_HDRS
@@ -13431,7 +13433,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13435: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13437: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   if test -n "$CHECK_DECL_HDRS" ; then
 # try to work around system headers which are infested with non-standard syntax
@@ -13439,7 +13441,7 @@ if { (eval echo configure:13435: \"$ac_l
 cf_1_up=`echo "${ac_func}" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
 cat > conftest.$ac_ext <<EOF
-#line 13443 "configure"
+#line 13445 "configure"
 #include "confdefs.h"
 
 #define DECL_${cf_1_up}
@@ -13449,7 +13451,7 @@ int main() {
 long x = 0
 ; return 0; }
 EOF
-if { (eval echo configure:13453: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13455: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_func_'${ac_func}'=yes'
 else
@@ -13498,18 +13500,18 @@ ac_tr_func=`echo "$ac_func" | sed y%abcd
 
 
 echo $ac_n "checking for missing "${ac_func}" extern""... $ac_c" 1>&6
-echo "configure:13502: checking for missing "${ac_func}" extern" >&5
+echo "configure:13504: checking for missing "${ac_func}" extern" >&5
 if eval "test \"`echo '$''{'cf_cv_func_${ac_func}'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 
-echo "(line 13508) testing for missing "${ac_func}" external ..." 1>&5
+echo "(line 13510) testing for missing "${ac_func}" external ..." 1>&5
 
 cf_save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS $CHECK_DECL_FLAG"
 cat > conftest.$ac_ext <<EOF
-#line 13513 "configure"
+#line 13515 "configure"
 #include "confdefs.h"
 
 $CHECK_DECL_HDRS
@@ -13523,7 +13525,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13527: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13529: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   if test -n "$CHECK_DECL_HDRS" ; then
 # try to work around system headers which are infested with non-standard syntax
@@ -13531,7 +13533,7 @@ if { (eval echo configure:13527: \"$ac_l
 cf_1_up=`echo "${ac_func}" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
 cat > conftest.$ac_ext <<EOF
-#line 13535 "configure"
+#line 13537 "configure"
 #include "confdefs.h"
 
 #define DECL_${cf_1_up}
@@ -13541,7 +13543,7 @@ int main() {
 long x = 0
 ; return 0; }
 EOF
-if { (eval echo configure:13545: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13547: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_func_'${ac_func}'=yes'
 else
@@ -13588,18 +13590,18 @@ ac_tr_func=`echo "$ac_func" | sed y%abcd
 
 
 echo $ac_n "checking for missing "${ac_func}" extern""... $ac_c" 1>&6
-echo "configure:13592: checking for missing "${ac_func}" extern" >&5
+echo "configure:13594: checking for missing "${ac_func}" extern" >&5
 if eval "test \"`echo '$''{'cf_cv_func_${ac_func}'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 
-echo "(line 13598) testing for missing "${ac_func}" external ..." 1>&5
+echo "(line 13600) testing for missing "${ac_func}" external ..." 1>&5
 
 cf_save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS $CHECK_DECL_FLAG"
 cat > conftest.$ac_ext <<EOF
-#line 13603 "configure"
+#line 13605 "configure"
 #include "confdefs.h"
 
 $CHECK_DECL_HDRS
@@ -13613,7 +13615,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13617: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13619: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   if test -n "$CHECK_DECL_HDRS" ; then
 # try to work around system headers which are infested with non-standard syntax
@@ -13621,7 +13623,7 @@ if { (eval echo configure:13617: \"$ac_l
 cf_1_up=`echo "${ac_func}" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
 cat > conftest.$ac_ext <<EOF
-#line 13625 "configure"
+#line 13627 "configure"
 #include "confdefs.h"
 
 #define DECL_${cf_1_up}
@@ -13631,7 +13633,7 @@ int main() {
 long x = 0
 ; return 0; }
 EOF
-if { (eval echo configure:13635: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13637: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_func_'${ac_func}'=yes'
 else
@@ -13729,18 +13731,18 @@ ac_tr_func=`echo "$ac_func" | sed y%abcd
 
 
 echo $ac_n "checking for missing "${ac_func}" extern""... $ac_c" 1>&6
-echo "configure:13733: checking for missing "${ac_func}" extern" >&5
+echo "configure:13735: checking for missing "${ac_func}" extern" >&5
 if eval "test \"`echo '$''{'cf_cv_func_${ac_func}'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 
-echo "(line 13739) testing for missing "${ac_func}" external ..." 1>&5
+echo "(line 13741) testing for missing "${ac_func}" external ..." 1>&5
 
 cf_save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS $CHECK_DECL_FLAG"
 cat > conftest.$ac_ext <<EOF
-#line 13744 "configure"
+#line 13746 "configure"
 #include "confdefs.h"
 
 $CHECK_DECL_HDRS
@@ -13754,7 +13756,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13758: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13760: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   if test -n "$CHECK_DECL_HDRS" ; then
 # try to work around system headers which are infested with non-standard syntax
@@ -13762,7 +13764,7 @@ if { (eval echo configure:13758: \"$ac_l
 cf_1_up=`echo "${ac_func}" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
 cat > conftest.$ac_ext <<EOF
-#line 13766 "configure"
+#line 13768 "configure"
 #include "confdefs.h"
 
 #define DECL_${cf_1_up}
@@ -13772,7 +13774,7 @@ int main() {
 long x = 0
 ; return 0; }
 EOF
-if { (eval echo configure:13776: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13778: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_func_'${ac_func}'=yes'
 else
@@ -13816,18 +13818,18 @@ ac_tr_func=`echo "$ac_func" | sed y%abcd
 
 
 echo $ac_n "checking for missing "${ac_func}" extern""... $ac_c" 1>&6
-echo "configure:13820: checking for missing "${ac_func}" extern" >&5
+echo "configure:13822: checking for missing "${ac_func}" extern" >&5
 if eval "test \"`echo '$''{'cf_cv_func_${ac_func}'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 
-echo "(line 13826) testing for missing "${ac_func}" external ..." 1>&5
+echo "(line 13828) testing for missing "${ac_func}" external ..." 1>&5
 
 cf_save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS $CHECK_DECL_FLAG"
 cat > conftest.$ac_ext <<EOF
-#line 13831 "configure"
+#line 13833 "configure"
 #include "confdefs.h"
 
 $CHECK_DECL_HDRS
@@ -13841,7 +13843,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13845: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13847: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   if test -n "$CHECK_DECL_HDRS" ; then
 # try to work around system headers which are infested with non-standard syntax
@@ -13849,7 +13851,7 @@ if { (eval echo configure:13845: \"$ac_l
 cf_1_up=`echo "${ac_func}" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
 cat > conftest.$ac_ext <<EOF
-#line 13853 "configure"
+#line 13855 "configure"
 #include "confdefs.h"
 
 #define DECL_${cf_1_up}
@@ -13859,7 +13861,7 @@ int main() {
 long x = 0
 ; return 0; }
 EOF
-if { (eval echo configure:13863: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13865: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_func_'${ac_func}'=yes'
 else
@@ -13906,18 +13908,18 @@ ac_tr_func=`echo "$ac_func" | sed y%abcd
 
 
 echo $ac_n "checking for missing "${ac_func}" extern""... $ac_c" 1>&6
-echo "configure:13910: checking for missing "${ac_func}" extern" >&5
+echo "configure:13912: checking for missing "${ac_func}" extern" >&5
 if eval "test \"`echo '$''{'cf_cv_func_${ac_func}'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 
-echo "(line 13916) testing for missing "${ac_func}" external ..." 1>&5
+echo "(line 13918) testing for missing "${ac_func}" external ..." 1>&5
 
 cf_save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS $CHECK_DECL_FLAG"
 cat > conftest.$ac_ext <<EOF
-#line 13921 "configure"
+#line 13923 "configure"
 #include "confdefs.h"
 
 $CHECK_DECL_HDRS
@@ -13931,7 +13933,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:13935: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   if test -n "$CHECK_DECL_HDRS" ; then
 # try to work around system headers which are infested with non-standard syntax
@@ -13939,7 +13941,7 @@ if { (eval echo configure:13935: \"$ac_l
 cf_1_up=`echo "${ac_func}" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
 cat > conftest.$ac_ext <<EOF
-#line 13943 "configure"
+#line 13945 "configure"
 #include "confdefs.h"
 
 #define DECL_${cf_1_up}
@@ -13949,7 +13951,7 @@ int main() {
 long x = 0
 ; return 0; }
 EOF
-if { (eval echo configure:13953: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13955: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_func_'${ac_func}'=yes'
 else
@@ -13987,7 +13989,7 @@ fi
 
 
 echo $ac_n "checking for working TIOCGWINSZ""... $ac_c" 1>&6
-echo "configure:13991: checking for working TIOCGWINSZ" >&5
+echo "configure:13993: checking for working TIOCGWINSZ" >&5
 if eval "test \"`echo '$''{'cf_cv_use_tiocgwinsz'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -13998,7 +14000,7 @@ else
   cf_cv_use_tiocgwinsz=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 14002 "configure"
+#line 14004 "configure"
 #include "confdefs.h"
 
 $CHECK_DECL_HDRS
@@ -14023,7 +14025,7 @@ int main()
 	exit(0);	/* we cannot guarantee this is run interactively */
 }
 EOF
-if { (eval echo configure:14027: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:14029: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_use_tiocgwinsz=yes
 else
@@ -14070,7 +14072,7 @@ esac
 # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:14074: checking for $ac_word" >&5
+echo "configure:14076: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -14100,19 +14102,19 @@ fi
 # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
 # for constant arguments.  Useless!
 echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:14104: checking for working alloca.h" >&5
+echo "configure:14106: checking for working alloca.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14109 "configure"
+#line 14111 "configure"
 #include "confdefs.h"
 #include <alloca.h>
 int main() {
 char *p = alloca(2 * sizeof(int));
 ; return 0; }
 EOF
-if { (eval echo configure:14116: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14118: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_header_alloca_h=yes
 else
@@ -14133,12 +14135,12 @@ EOF
 fi
 
 echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:14137: checking for alloca" >&5
+echo "configure:14139: checking for alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14142 "configure"
+#line 14144 "configure"
 #include "confdefs.h"
 
 #ifdef __GNUC__
@@ -14166,7 +14168,7 @@ int main() {
 char *p = (char *) alloca(1);
 ; return 0; }
 EOF
-if { (eval echo configure:14170: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14172: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_func_alloca_works=yes
 else
@@ -14198,12 +14200,12 @@ EOF
 
 
 echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:14202: checking whether alloca needs Cray hooks" >&5
+echo "configure:14204: checking whether alloca needs Cray hooks" >&5
 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14207 "configure"
+#line 14209 "configure"
 #include "confdefs.h"
 #if defined(CRAY) && ! defined(CRAY2)
 webecray
@@ -14228,12 +14230,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6
 if test $ac_cv_os_cray = yes; then
 for ac_func in _getb67 GETB67 getb67; do
   echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:14232: checking for $ac_func" >&5
+echo "configure:14234: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14237 "configure"
+#line 14239 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -14256,7 +14258,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:14260: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14262: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -14283,7 +14285,7 @@ done
 fi
 
 echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:14287: checking stack direction for C alloca" >&5
+echo "configure:14289: checking stack direction for C alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -14291,7 +14293,7 @@ else
   ac_cv_c_stack_direction=0
 else
   cat > conftest.$ac_ext <<EOF
-#line 14295 "configure"
+#line 14297 "configure"
 #include "confdefs.h"
 find_stack_direction ()
 {
@@ -14310,7 +14312,7 @@ main ()
   exit (find_stack_direction() < 0);
 }
 EOF
-if { (eval echo configure:14314: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:14316: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_c_stack_direction=1
 else
@@ -14335,17 +14337,17 @@ for ac_hdr in unistd.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:14339: checking for $ac_hdr" >&5
+echo "configure:14341: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14344 "configure"
+#line 14346 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:14349: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:14351: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -14374,12 +14376,12 @@ done
 for ac_func in getpagesize
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:14378: checking for $ac_func" >&5
+echo "configure:14380: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14383 "configure"
+#line 14385 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -14402,7 +14404,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:14406: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14408: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -14427,7 +14429,7 @@ fi
 done
 
 echo $ac_n "checking for working mmap""... $ac_c" 1>&6
-echo "configure:14431: checking for working mmap" >&5
+echo "configure:14433: checking for working mmap" >&5
 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -14435,7 +14437,7 @@ else
   ac_cv_func_mmap_fixed_mapped=no
 else
   cat > conftest.$ac_ext <<EOF
-#line 14439 "configure"
+#line 14441 "configure"
 #include "confdefs.h"
 
 /* Thanks to Mike Haertel and Jim Avera for this test.
@@ -14575,7 +14577,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:14579: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:14581: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_mmap_fixed_mapped=yes
 else
@@ -14599,12 +14601,12 @@ fi
 
 
     echo $ac_n "checking whether we are using the GNU C Library 2.1 or newer""... $ac_c" 1>&6
-echo "configure:14603: checking whether we are using the GNU C Library 2.1 or newer" >&5
+echo "configure:14605: checking whether we are using the GNU C Library 2.1 or newer" >&5
 if eval "test \"`echo '$''{'ac_cv_gnu_library_2_1'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14608 "configure"
+#line 14610 "configure"
 #include "confdefs.h"
 
 #include <features.h>
@@ -14666,17 +14668,17 @@ stdlib.h string.h unistd.h sys/param.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:14670: checking for $ac_hdr" >&5
+echo "configure:14672: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14675 "configure"
+#line 14677 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:14680: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:14682: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -14707,12 +14709,12 @@ getgid getuid mempcpy munmap putenv sete
 strdup strtoul tsearch __argz_count __argz_stringify __argz_next
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:14711: checking for $ac_func" >&5
+echo "configure:14713: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14716 "configure"
+#line 14718 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -14735,7 +14737,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:14739: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14741: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -14776,7 +14778,7 @@ fi
 
 
   echo $ac_n "checking for iconv""... $ac_c" 1>&6
-echo "configure:14780: checking for iconv" >&5
+echo "configure:14782: checking for iconv" >&5
 if eval "test \"`echo '$''{'am_cv_func_iconv'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -14784,7 +14786,7 @@ else
     am_cv_func_iconv="no, consider installing GNU libiconv"
     am_cv_lib_iconv=no
     cat > conftest.$ac_ext <<EOF
-#line 14788 "configure"
+#line 14790 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <iconv.h>
@@ -14794,7 +14796,7 @@ iconv_t cd = iconv_open("","");
        iconv_close(cd);
 ; return 0; }
 EOF
-if { (eval echo configure:14798: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14800: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_func_iconv=yes
 else
@@ -14806,7 +14808,7 @@ rm -f conftest*
       am_save_LIBS="$LIBS"
       LIBS="$LIBS -liconv"
       cat > conftest.$ac_ext <<EOF
-#line 14810 "configure"
+#line 14812 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <iconv.h>
@@ -14816,7 +14818,7 @@ iconv_t cd = iconv_open("","");
          iconv_close(cd);
 ; return 0; }
 EOF
-if { (eval echo configure:14820: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14822: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_lib_iconv=yes
         am_cv_func_iconv=yes
@@ -14837,13 +14839,13 @@ echo "$ac_t""$am_cv_func_iconv" 1>&6
 EOF
 
     echo $ac_n "checking for iconv declaration""... $ac_c" 1>&6
-echo "configure:14841: checking for iconv declaration" >&5
+echo "configure:14843: checking for iconv declaration" >&5
     if eval "test \"`echo '$''{'am_cv_proto_iconv'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
       cat > conftest.$ac_ext <<EOF
-#line 14847 "configure"
+#line 14849 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
@@ -14862,7 +14864,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:14866: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14868: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   am_cv_proto_iconv_arg1=""
 else
@@ -14891,19 +14893,19 @@ EOF
 
    
   echo $ac_n "checking for nl_langinfo and CODESET""... $ac_c" 1>&6
-echo "configure:14895: checking for nl_langinfo and CODESET" >&5
+echo "configure:14897: checking for nl_langinfo and CODESET" >&5
 if eval "test \"`echo '$''{'am_cv_langinfo_codeset'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14900 "configure"
+#line 14902 "configure"
 #include "confdefs.h"
 #include <langinfo.h>
 int main() {
 char* cs = nl_langinfo(CODESET);
 ; return 0; }
 EOF
-if { (eval echo configure:14907: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14909: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_langinfo_codeset=yes
 else
@@ -14926,19 +14928,19 @@ EOF
 
    if test $ac_cv_header_locale_h = yes; then
     echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
-echo "configure:14930: checking for LC_MESSAGES" >&5
+echo "configure:14932: checking for LC_MESSAGES" >&5
 if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14935 "configure"
+#line 14937 "configure"
 #include "confdefs.h"
 #include <locale.h>
 int main() {
 return LC_MESSAGES
 ; return 0; }
 EOF
-if { (eval echo configure:14942: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:14944: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_val_LC_MESSAGES=yes
 else
@@ -14959,7 +14961,7 @@ EOF
     fi
   fi
    echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6
-echo "configure:14963: checking whether NLS is requested" >&5
+echo "configure:14965: checking whether NLS is requested" >&5
         
     
 # Check whether --enable-nls or --disable-nls was given.
@@ -14983,7 +14985,7 @@ fi
 EOF
 
       echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6
-echo "configure:14987: checking whether included gettext is requested" >&5
+echo "configure:14989: checking whether included gettext is requested" >&5
       
 # Check whether --with-included-gettext or --without-included-gettext was given.
 if test "${with_included_gettext+set}" = set; then
@@ -15004,17 +15006,17 @@ fi
 
 	ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for libintl.h""... $ac_c" 1>&6
-echo "configure:15008: checking for libintl.h" >&5
+echo "configure:15010: checking for libintl.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15013 "configure"
+#line 15015 "configure"
 #include "confdefs.h"
 #include <libintl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:15018: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:15020: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -15031,12 +15033,12 @@ fi
 if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   echo $ac_n "checking for GNU gettext in libc""... $ac_c" 1>&6
-echo "configure:15035: checking for GNU gettext in libc" >&5
+echo "configure:15037: checking for GNU gettext in libc" >&5
 if eval "test \"`echo '$''{'gt_cv_func_gnugettext1_libc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15040 "configure"
+#line 15042 "configure"
 #include "confdefs.h"
 #include <libintl.h>
 extern int _nl_msg_cat_cntr;
@@ -15045,7 +15047,7 @@ bindtextdomain ("", "");
 return (int) gettext ("") + _nl_msg_cat_cntr
 ; return 0; }
 EOF
-if { (eval echo configure:15049: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15051: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   gt_cv_func_gnugettext1_libc=yes
 else
@@ -15061,14 +15063,14 @@ echo "$ac_t""$gt_cv_func_gnugettext1_lib
 
 	   if test "$gt_cv_func_gnugettext1_libc" != "yes"; then
 	     echo $ac_n "checking for GNU gettext in libintl""... $ac_c" 1>&6
-echo "configure:15065: checking for GNU gettext in libintl" >&5
+echo "configure:15067: checking for GNU gettext in libintl" >&5
 if eval "test \"`echo '$''{'gt_cv_func_gnugettext1_libintl'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   gt_save_LIBS="$LIBS"
 		LIBS="$LIBS -lintl $LIBICONV"
 		cat > conftest.$ac_ext <<EOF
-#line 15072 "configure"
+#line 15074 "configure"
 #include "confdefs.h"
 #include <libintl.h>
 extern int _nl_msg_cat_cntr;
@@ -15077,7 +15079,7 @@ bindtextdomain ("", "");
 return (int) gettext ("") + _nl_msg_cat_cntr
 ; return 0; }
 EOF
-if { (eval echo configure:15081: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15083: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   gt_cv_func_gnugettext1_libintl=yes
 else
@@ -15110,12 +15112,12 @@ EOF
 	     for ac_func in dcgettext
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:15114: checking for $ac_func" >&5
+echo "configure:15116: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15119 "configure"
+#line 15121 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -15138,7 +15140,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:15142: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15144: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -15168,7 +15170,7 @@ done
 
 set dummy msgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:15172: checking for $ac_word" >&5
+echo "configure:15174: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15202,7 +15204,7 @@ fi
 	     # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:15206: checking for $ac_word" >&5
+echo "configure:15208: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15240,7 +15242,7 @@ fi
 
 set dummy xgettext; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:15244: checking for $ac_word" >&5
+echo "configure:15246: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15294,7 +15296,7 @@ fi
 
 set dummy msgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:15298: checking for $ac_word" >&5
+echo "configure:15300: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15328,7 +15330,7 @@ fi
         # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:15332: checking for $ac_word" >&5
+echo "configure:15334: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15365,7 +15367,7 @@ fi
 
 set dummy xgettext; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:15369: checking for $ac_word" >&5
+echo "configure:15371: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15438,7 +15440,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:15442: checking for $ac_word" >&5
+echo "configure:15444: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_INTLBISON'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15471,7 +15473,7 @@ done
       ac_verc_fail=yes
     else
             echo $ac_n "checking version of bison""... $ac_c" 1>&6
-echo "configure:15475: checking version of bison" >&5
+echo "configure:15477: checking version of bison" >&5
       ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
       case $ac_prog_version in
         '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
@@ -15519,7 +15521,7 @@ echo "configure:15475: checking version 
        LINGUAS=
      else
        echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6
-echo "configure:15523: checking for catalogs to be installed" >&5
+echo "configure:15525: checking for catalogs to be installed" >&5
        NEW_LINGUAS=
        for presentlang in $ALL_LINGUAS; do
          useit=no
@@ -15575,7 +15577,7 @@ use_our_messages=no
 if test "$USE_NLS" = yes ; then
 if test -d $srcdir/po ; then
 echo $ac_n "checking if we should use included message-library""... $ac_c" 1>&6
-echo "configure:15579: checking if we should use included message-library" >&5
+echo "configure:15581: checking if we should use included message-library" >&5
 	
 # Check whether --enable-included-msgs or --disable-included-msgs was given.
 if test "${enable_included_msgs+set}" = set; then
@@ -15630,17 +15632,17 @@ else
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:15634: checking for $ac_hdr" >&5
+echo "configure:15636: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15639 "configure"
+#line 15641 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:15644: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:15646: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -15715,19 +15717,19 @@ bison*)
 	# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
 # for constant arguments.  Useless!
 echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:15719: checking for working alloca.h" >&5
+echo "configure:15721: checking for working alloca.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15724 "configure"
+#line 15726 "configure"
 #include "confdefs.h"
 #include <alloca.h>
 int main() {
 char *p = alloca(2 * sizeof(int));
 ; return 0; }
 EOF
-if { (eval echo configure:15731: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15733: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_header_alloca_h=yes
 else
@@ -15748,12 +15750,12 @@ EOF
 fi
 
 echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:15752: checking for alloca" >&5
+echo "configure:15754: checking for alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15757 "configure"
+#line 15759 "configure"
 #include "confdefs.h"
 
 #ifdef __GNUC__
@@ -15781,7 +15783,7 @@ int main() {
 char *p = (char *) alloca(1);
 ; return 0; }
 EOF
-if { (eval echo configure:15785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_func_alloca_works=yes
 else
@@ -15813,12 +15815,12 @@ EOF
 
 
 echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:15817: checking whether alloca needs Cray hooks" >&5
+echo "configure:15819: checking whether alloca needs Cray hooks" >&5
 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15822 "configure"
+#line 15824 "configure"
 #include "confdefs.h"
 #if defined(CRAY) && ! defined(CRAY2)
 webecray
@@ -15843,12 +15845,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6
 if test $ac_cv_os_cray = yes; then
 for ac_func in _getb67 GETB67 getb67; do
   echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:15847: checking for $ac_func" >&5
+echo "configure:15849: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15852 "configure"
+#line 15854 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -15871,7 +15873,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:15875: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15877: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -15898,7 +15900,7 @@ done
 fi
 
 echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:15902: checking stack direction for C alloca" >&5
+echo "configure:15904: checking stack direction for C alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15906,7 +15908,7 @@ else
   ac_cv_c_stack_direction=0
 else
   cat > conftest.$ac_ext <<EOF
-#line 15910 "configure"
+#line 15912 "configure"
 #include "confdefs.h"
 find_stack_direction ()
 {
@@ -15925,7 +15927,7 @@ main ()
   exit (find_stack_direction() < 0);
 }
 EOF
-if { (eval echo configure:15929: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:15931: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_c_stack_direction=1
 else
@@ -15953,19 +15955,19 @@ fi
 		# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
 # for constant arguments.  Useless!
 echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:15957: checking for working alloca.h" >&5
+echo "configure:15959: checking for working alloca.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15962 "configure"
+#line 15964 "configure"
 #include "confdefs.h"
 #include <alloca.h>
 int main() {
 char *p = alloca(2 * sizeof(int));
 ; return 0; }
 EOF
-if { (eval echo configure:15969: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15971: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_header_alloca_h=yes
 else
@@ -15986,12 +15988,12 @@ EOF
 fi
 
 echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:15990: checking for alloca" >&5
+echo "configure:15992: checking for alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15995 "configure"
+#line 15997 "configure"
 #include "confdefs.h"
 
 #ifdef __GNUC__
@@ -16019,7 +16021,7 @@ int main() {
 char *p = (char *) alloca(1);
 ; return 0; }
 EOF
-if { (eval echo configure:16023: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16025: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_func_alloca_works=yes
 else
@@ -16051,12 +16053,12 @@ EOF
 
 
 echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:16055: checking whether alloca needs Cray hooks" >&5
+echo "configure:16057: checking whether alloca needs Cray hooks" >&5
 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 16060 "configure"
+#line 16062 "configure"
 #include "confdefs.h"
 #if defined(CRAY) && ! defined(CRAY2)
 webecray
@@ -16081,12 +16083,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6
 if test $ac_cv_os_cray = yes; then
 for ac_func in _getb67 GETB67 getb67; do
   echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:16085: checking for $ac_func" >&5
+echo "configure:16087: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 16090 "configure"
+#line 16092 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -16109,7 +16111,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:16113: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16115: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -16136,7 +16138,7 @@ done
 fi
 
 echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:16140: checking stack direction for C alloca" >&5
+echo "configure:16142: checking stack direction for C alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -16144,7 +16146,7 @@ else
   ac_cv_c_stack_direction=0
 else
   cat > conftest.$ac_ext <<EOF
-#line 16148 "configure"
+#line 16150 "configure"
 #include "confdefs.h"
 find_stack_direction ()
 {
@@ -16163,7 +16165,7 @@ main ()
   exit (find_stack_direction() < 0);
 }
 EOF
-if { (eval echo configure:16167: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:16169: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_c_stack_direction=1
 else
@@ -16197,9 +16199,9 @@ esac
 for cf_hdr in iconv.h
 do
 	echo $ac_n "checking for $cf_hdr""... $ac_c" 1>&6
-echo "configure:16201: checking for $cf_hdr" >&5
+echo "configure:16203: checking for $cf_hdr" >&5
 	cat > conftest.$ac_ext <<EOF
-#line 16203 "configure"
+#line 16205 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -16207,7 +16209,7 @@ echo "configure:16201: checking for $cf_
 
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:16211: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:16213: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -16233,13 +16235,13 @@ fi
 done
 
 echo $ac_n "checking for iconv_open() //TRANSLIT extension""... $ac_c" 1>&6
-echo "configure:16237: checking for iconv_open() //TRANSLIT extension" >&5
+echo "configure:16239: checking for iconv_open() //TRANSLIT extension" >&5
 if test "$cross_compiling" = yes; then
   echo "$ac_t""unknown" 1>&6
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 16243 "configure"
+#line 16245 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_ICONV_H
@@ -16256,7 +16258,7 @@ int main() {
 	exit(0);
 }
 EOF
-if { (eval echo configure:16260: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:16262: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cat >> confdefs.h <<\EOF
 #define HAVE_ICONV_OPEN_TRANSLIT 1
@@ -16284,7 +16286,7 @@ if test "$cf_cv_termlib" = pdcurses ; th
 # Uses ac_ vars as temps to allow command line to override cache and checks.
 # --without-x overrides everything else, but does not touch the cache.
 echo $ac_n "checking for X""... $ac_c" 1>&6
-echo "configure:16288: checking for X" >&5
+echo "configure:16290: checking for X" >&5
 
 
 # Check whether --with-x or --without-x was given.
@@ -16347,12 +16349,12 @@ if test "$ac_x_includes" = NO; then
 
   # First, try using that file with no special directory specified.
 cat > conftest.$ac_ext <<EOF
-#line 16351 "configure"
+#line 16353 "configure"
 #include "confdefs.h"
 #include <$x_direct_test_include>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:16356: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:16358: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -16421,14 +16423,14 @@ if test "$ac_x_libraries" = NO; then
   ac_save_LIBS="$LIBS"
   LIBS="-l$x_direct_test_library $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16425 "configure"
+#line 16427 "configure"
 #include "confdefs.h"
 
 int main() {
 ${x_direct_test_function}()
 ; return 0; }
 EOF
-if { (eval echo configure:16432: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16434: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   LIBS="$ac_save_LIBS"
 # We can link X programs with no special library path.
@@ -16528,7 +16530,7 @@ clix*)
 	# FIXME: modify the library lookup in autoconf to
 	# allow _s.a suffix ahead of .a
 	echo $ac_n "checking for open in -lc_s""... $ac_c" 1>&6
-echo "configure:16532: checking for open in -lc_s" >&5
+echo "configure:16534: checking for open in -lc_s" >&5
 ac_lib_var=`echo c_s'_'open | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16536,7 +16538,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16540 "configure"
+#line 16542 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16547,7 +16549,7 @@ int main() {
 open()
 ; return 0; }
 EOF
-if { (eval echo configure:16551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16553: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -16564,7 +16566,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_l
   echo "$ac_t""yes" 1>&6
   LIBS="-lc_s $LIBS"
 	echo $ac_n "checking for gethostname in -lbsd""... $ac_c" 1>&6
-echo "configure:16568: checking for gethostname in -lbsd" >&5
+echo "configure:16570: checking for gethostname in -lbsd" >&5
 ac_lib_var=`echo bsd'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16572,7 +16574,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbsd  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16576 "configure"
+#line 16578 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16583,7 +16585,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:16587: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16589: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -16600,7 +16602,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_l
   echo "$ac_t""yes" 1>&6
   LIBS="-lbsd $LIBS"
 	echo $ac_n "checking for gethostname in -lnsl_s""... $ac_c" 1>&6
-echo "configure:16604: checking for gethostname in -lnsl_s" >&5
+echo "configure:16606: checking for gethostname in -lnsl_s" >&5
 ac_lib_var=`echo nsl_s'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16608,7 +16610,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16612 "configure"
+#line 16614 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16619,7 +16621,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:16623: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16625: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -16636,7 +16638,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_l
   echo "$ac_t""yes" 1>&6
   LIBS="-lnsl_s $LIBS"
 	echo $ac_n "checking for XOpenDisplay in -lX11_s""... $ac_c" 1>&6
-echo "configure:16640: checking for XOpenDisplay in -lX11_s" >&5
+echo "configure:16642: checking for XOpenDisplay in -lX11_s" >&5
 ac_lib_var=`echo X11_s'_'XOpenDisplay | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16644,7 +16646,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lX11_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16648 "configure"
+#line 16650 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16655,7 +16657,7 @@ int main() {
 XOpenDisplay()
 ; return 0; }
 EOF
-if { (eval echo configure:16659: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16661: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -16672,7 +16674,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_l
   echo "$ac_t""yes" 1>&6
   LIBS="-lX11_s $LIBS"
 	echo $ac_n "checking for XtAppInitialize in -lXt_s""... $ac_c" 1>&6
-echo "configure:16676: checking for XtAppInitialize in -lXt_s" >&5
+echo "configure:16678: checking for XtAppInitialize in -lXt_s" >&5
 ac_lib_var=`echo Xt_s'_'XtAppInitialize | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16680,7 +16682,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXt_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16684 "configure"
+#line 16686 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16691,7 +16693,7 @@ int main() {
 XtAppInitialize()
 ; return 0; }
 EOF
-if { (eval echo configure:16695: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16697: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -16732,7 +16734,7 @@ fi
 	;;
 *)
 	echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
-echo "configure:16736: checking for socket in -lsocket" >&5
+echo "configure:16738: checking for socket in -lsocket" >&5
 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16740,7 +16742,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16744 "configure"
+#line 16746 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16751,7 +16753,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:16755: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16757: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -16779,7 +16781,7 @@ else
 fi
 
 	echo $ac_n "checking for gethostname in -lnsl""... $ac_c" 1>&6
-echo "configure:16783: checking for gethostname in -lnsl" >&5
+echo "configure:16785: checking for gethostname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16787,7 +16789,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16791 "configure"
+#line 16793 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16798,7 +16800,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:16802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -16849,17 +16851,17 @@ else
     case "`(uname -sr) 2>/dev/null`" in
     "SunOS 5"*)
       echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
-echo "configure:16853: checking whether -R must be followed by a space" >&5
+echo "configure:16855: checking whether -R must be followed by a space" >&5
       ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
       cat > conftest.$ac_ext <<EOF
-#line 16856 "configure"
+#line 16858 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:16863: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16865: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_R_nospace=yes
 else
@@ -16875,14 +16877,14 @@ rm -f conftest*
       else
 	LIBS="$ac_xsave_LIBS -R $x_libraries"
 	cat > conftest.$ac_ext <<EOF
-#line 16879 "configure"
+#line 16881 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:16886: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16888: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_R_space=yes
 else
@@ -16914,7 +16916,7 @@ rm -f conftest*
     # libraries were built with DECnet support.  And karl@cs.umb.edu says
     # the Alpha needs dnet_stub (dnet does not exist).
     echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
-echo "configure:16918: checking for dnet_ntoa in -ldnet" >&5
+echo "configure:16920: checking for dnet_ntoa in -ldnet" >&5
 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16922,7 +16924,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16926 "configure"
+#line 16928 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16933,7 +16935,7 @@ int main() {
 dnet_ntoa()
 ; return 0; }
 EOF
-if { (eval echo configure:16937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16939: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -16955,7 +16957,7 @@ fi
 
     if test $ac_cv_lib_dnet_dnet_ntoa = no; then
       echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
-echo "configure:16959: checking for dnet_ntoa in -ldnet_stub" >&5
+echo "configure:16961: checking for dnet_ntoa in -ldnet_stub" >&5
 ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -16963,7 +16965,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet_stub  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 16967 "configure"
+#line 16969 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -16974,7 +16976,7 @@ int main() {
 dnet_ntoa()
 ; return 0; }
 EOF
-if { (eval echo configure:16978: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:16980: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17003,12 +17005,12 @@ fi
     # The nsl library prevents programs from opening the X display
     # on Irix 5.2, according to dickey@clark.net.
     echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
-echo "configure:17007: checking for gethostbyname" >&5
+echo "configure:17009: checking for gethostbyname" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 17012 "configure"
+#line 17014 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gethostbyname(); below.  */
@@ -17031,7 +17033,7 @@ gethostbyname();
 
 ; return 0; }
 EOF
-if { (eval echo configure:17035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17037: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_gethostbyname=yes"
 else
@@ -17052,7 +17054,7 @@ fi
 
     if test $ac_cv_func_gethostbyname = no; then
       echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:17056: checking for gethostbyname in -lnsl" >&5
+echo "configure:17058: checking for gethostbyname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17060,7 +17062,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17064 "configure"
+#line 17066 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17071,7 +17073,7 @@ int main() {
 gethostbyname()
 ; return 0; }
 EOF
-if { (eval echo configure:17075: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17077: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17101,12 +17103,12 @@ fi
     # -lsocket must be given before -lnsl if both are needed.
     # We assume that if connect needs -lnsl, so does gethostbyname.
     echo $ac_n "checking for connect""... $ac_c" 1>&6
-echo "configure:17105: checking for connect" >&5
+echo "configure:17107: checking for connect" >&5
 if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 17110 "configure"
+#line 17112 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char connect(); below.  */
@@ -17129,7 +17131,7 @@ connect();
 
 ; return 0; }
 EOF
-if { (eval echo configure:17133: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17135: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_connect=yes"
 else
@@ -17150,7 +17152,7 @@ fi
 
     if test $ac_cv_func_connect = no; then
       echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
-echo "configure:17154: checking for connect in -lsocket" >&5
+echo "configure:17156: checking for connect in -lsocket" >&5
 ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17158,7 +17160,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17162 "configure"
+#line 17164 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17169,7 +17171,7 @@ int main() {
 connect()
 ; return 0; }
 EOF
-if { (eval echo configure:17173: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17175: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17193,12 +17195,12 @@ fi
 
     # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX.
     echo $ac_n "checking for remove""... $ac_c" 1>&6
-echo "configure:17197: checking for remove" >&5
+echo "configure:17199: checking for remove" >&5
 if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 17202 "configure"
+#line 17204 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char remove(); below.  */
@@ -17221,7 +17223,7 @@ remove();
 
 ; return 0; }
 EOF
-if { (eval echo configure:17225: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17227: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_remove=yes"
 else
@@ -17242,7 +17244,7 @@ fi
 
     if test $ac_cv_func_remove = no; then
       echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6
-echo "configure:17246: checking for remove in -lposix" >&5
+echo "configure:17248: checking for remove in -lposix" >&5
 ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17250,7 +17252,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lposix  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17254 "configure"
+#line 17256 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17261,7 +17263,7 @@ int main() {
 remove()
 ; return 0; }
 EOF
-if { (eval echo configure:17265: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17267: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17285,12 +17287,12 @@ fi
 
     # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
     echo $ac_n "checking for shmat""... $ac_c" 1>&6
-echo "configure:17289: checking for shmat" >&5
+echo "configure:17291: checking for shmat" >&5
 if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 17294 "configure"
+#line 17296 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char shmat(); below.  */
@@ -17313,7 +17315,7 @@ shmat();
 
 ; return 0; }
 EOF
-if { (eval echo configure:17317: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17319: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_shmat=yes"
 else
@@ -17334,7 +17336,7 @@ fi
 
     if test $ac_cv_func_shmat = no; then
       echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6
-echo "configure:17338: checking for shmat in -lipc" >&5
+echo "configure:17340: checking for shmat in -lipc" >&5
 ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17342,7 +17344,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lipc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17346 "configure"
+#line 17348 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17353,7 +17355,7 @@ int main() {
 shmat()
 ; return 0; }
 EOF
-if { (eval echo configure:17357: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17359: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17386,7 +17388,7 @@ fi
   # libraries we check for below, so use a different variable.
   #  --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
   echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6
-echo "configure:17390: checking for IceConnectionNumber in -lICE" >&5
+echo "configure:17392: checking for IceConnectionNumber in -lICE" >&5
 ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17394,7 +17396,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lICE $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17398 "configure"
+#line 17400 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17405,7 +17407,7 @@ int main() {
 IceConnectionNumber()
 ; return 0; }
 EOF
-if { (eval echo configure:17409: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17411: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17471,14 +17473,14 @@ fi
 
 if test "$cf_check_cflags" != "$CFLAGS" ; then
 cat > conftest.$ac_ext <<EOF
-#line 17475 "configure"
+#line 17477 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 printf("Hello world");
 ; return 0; }
 EOF
-if { (eval echo configure:17482: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17484: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   :
 else
   echo "configure: failed program was:" >&5
@@ -17496,7 +17498,7 @@ rm -f conftest*
 fi
 
 	echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6
-echo "configure:17500: checking for XOpenDisplay in -lX11" >&5
+echo "configure:17502: checking for XOpenDisplay in -lX11" >&5
 ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17504,7 +17506,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17508 "configure"
+#line 17510 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17515,7 +17517,7 @@ int main() {
 XOpenDisplay()
 ; return 0; }
 EOF
-if { (eval echo configure:17519: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17521: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17536,7 +17538,7 @@ else
 fi
 
 	echo $ac_n "checking for XtAppInitialize in -lXt""... $ac_c" 1>&6
-echo "configure:17540: checking for XtAppInitialize in -lXt" >&5
+echo "configure:17542: checking for XtAppInitialize in -lXt" >&5
 ac_lib_var=`echo Xt'_'XtAppInitialize | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17544,7 +17546,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17548 "configure"
+#line 17550 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17555,7 +17557,7 @@ int main() {
 XtAppInitialize()
 ; return 0; }
 EOF
-if { (eval echo configure:17559: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17561: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17623,14 +17625,14 @@ fi
 
 if test "$cf_check_cflags" != "$CFLAGS" ; then
 cat > conftest.$ac_ext <<EOF
-#line 17627 "configure"
+#line 17629 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 printf("Hello world");
 ; return 0; }
 EOF
-if { (eval echo configure:17634: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17636: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   :
 else
   echo "configure: failed program was:" >&5
@@ -17683,7 +17685,7 @@ fi
 
 
 echo $ac_n "checking for XextCreateExtension in -lXext""... $ac_c" 1>&6
-echo "configure:17687: checking for XextCreateExtension in -lXext" >&5
+echo "configure:17689: checking for XextCreateExtension in -lXext" >&5
 ac_lib_var=`echo Xext'_'XextCreateExtension | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17691,7 +17693,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXext  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17695 "configure"
+#line 17697 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17702,7 +17704,7 @@ int main() {
 XextCreateExtension()
 ; return 0; }
 EOF
-if { (eval echo configure:17706: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17708: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17741,13 +17743,13 @@ do
 		if test $cf_path != default ; then
 			CPPFLAGS="-I$cf_path/include $cf_save"
 			echo $ac_n "checking for $cf_test in $cf_path""... $ac_c" 1>&6
-echo "configure:17745: checking for $cf_test in $cf_path" >&5
+echo "configure:17747: checking for $cf_test in $cf_path" >&5
 		else
 			echo $ac_n "checking for $cf_test""... $ac_c" 1>&6
-echo "configure:17748: checking for $cf_test" >&5
+echo "configure:17750: checking for $cf_test" >&5
 		fi
 		cat > conftest.$ac_ext <<EOF
-#line 17751 "configure"
+#line 17753 "configure"
 #include "confdefs.h"
 
 #include <X11/Intrinsic.h>
@@ -17756,7 +17758,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:17760: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:17762: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -17803,23 +17805,23 @@ do
 			if test $cf_path != default ; then
 				LIBS="-L$cf_path/lib $cf_lib $LIBS"
 				echo $ac_n "checking for $cf_lib in $cf_path""... $ac_c" 1>&6
-echo "configure:17807: checking for $cf_lib in $cf_path" >&5
+echo "configure:17809: checking for $cf_lib in $cf_path" >&5
 			else
 				LIBS="$cf_lib $LIBS"
 				echo $ac_n "checking for $cf_test in $cf_lib""... $ac_c" 1>&6
-echo "configure:17811: checking for $cf_test in $cf_lib" >&5
+echo "configure:17813: checking for $cf_test in $cf_lib" >&5
 			fi
 			cf_SAVE="$LIBS"
 			LIBS="$X_PRE_LIBS $LIBS $X_EXTRA_LIBS"
 			cat > conftest.$ac_ext <<EOF
-#line 17816 "configure"
+#line 17818 "configure"
 #include "confdefs.h"
 
 int main() {
 $cf_test()
 ; return 0; }
 EOF
-if { (eval echo configure:17823: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17825: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -17898,14 +17900,14 @@ fi
 
 if test "$cf_check_cflags" != "$CFLAGS" ; then
 cat > conftest.$ac_ext <<EOF
-#line 17902 "configure"
+#line 17904 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 printf("Hello world");
 ; return 0; }
 EOF
-if { (eval echo configure:17909: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17911: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   :
 else
   echo "configure: failed program was:" >&5
@@ -17923,7 +17925,7 @@ rm -f conftest*
 fi
 
 echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6
-echo "configure:17927: checking for XOpenDisplay in -lX11" >&5
+echo "configure:17929: checking for XOpenDisplay in -lX11" >&5
 ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -17931,7 +17933,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17935 "configure"
+#line 17937 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -17942,7 +17944,7 @@ int main() {
 XOpenDisplay()
 ; return 0; }
 EOF
-if { (eval echo configure:17946: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17948: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -17963,14 +17965,14 @@ else
 fi
 
 echo $ac_n "checking for XCurses library""... $ac_c" 1>&6
-echo "configure:17967: checking for XCurses library" >&5
+echo "configure:17969: checking for XCurses library" >&5
 if eval "test \"`echo '$''{'cf_cv_lib_XCurses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 LIBS="-lXCurses $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 17974 "configure"
+#line 17976 "configure"
 #include "confdefs.h"
 
 #include <xcurses.h>
@@ -17980,7 +17982,7 @@ int main() {
 XCursesExit();
 ; return 0; }
 EOF
-if { (eval echo configure:17984: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:17986: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_lib_XCurses=yes
 else
diff -Nurp tin-1.7.7/configure.in tin-1.7.8/configure.in
--- tin-1.7.7/configure.in	Wed Dec 15 16:56:35 2004
+++ tin-1.7.8/configure.in	Mon Mar 21 13:44:03 2005
@@ -2,10 +2,10 @@ dnl Project   : tin - a Usenet reader
 dnl Module    : configure.in
 dnl Author    : Thomas E. Dickey <dickey@invisible-island.net>
 dnl Created   : 1995-08-24
-dnl Updated   : 2004-12-08
+dnl Updated   : 2005-03-20
 dnl Notes     :
 dnl
-dnl Copyright (c) 1995-2004 Thomas E. Dickey <dickey@invisible-island.net>
+dnl Copyright (c) 1995-2005 Thomas E. Dickey <dickey@invisible-island.net>
 dnl All rights reserved.
 dnl
 dnl Redistribution and use in source and binary forms, with or without
@@ -41,7 +41,7 @@ AC_PREFIX_DEFAULT(/usr/local)
 
 dnl PACKAGE is required for GNU gettext
 PACKAGE=tin
-VERSION=1.7.7
+VERSION=1.7.8
 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
 AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
 AC_SUBST(PACKAGE)
@@ -76,7 +76,7 @@ case "$host_os" in
 esac
 
 ### Native Language Support
-ALL_LINGUAS="de en_GB et fr"
+ALL_LINGUAS="de en_GB et fr tr"
 
 ### Checks for programs
 save_CFLAGS="$CFLAGS"
@@ -943,6 +943,7 @@ AC_CHECK_FUNCS(\
 	strftime \
 	strpbrk \
 	strrstr \
+	strsep \
 	strstr \
 	strtol \
 	tmpfile \
@@ -1069,6 +1070,7 @@ CF_CHECK_DECL(\
 	popen \
 	strchr \
 	strcasestr \
+	strsep \
 )
 
 dnl Check network stuff separately, to limit the effect of inconsistent headers
diff -Nurp tin-1.7.7/doc/CHANGES tin-1.7.8/doc/CHANGES
--- tin-1.7.7/doc/CHANGES	Wed Dec 15 16:47:12 2004
+++ tin-1.7.8/doc/CHANGES	Mon Mar 21 12:06:05 2005
@@ -1,3 +1,45 @@
+-- 1.7.8 release 20050321 "Hellisay" --
+
+U039) Matt Anton <tin@syrius.org>
+      ADD. added missing french translations
+      FIX. fr.po
+
+U038) Sebnem Korkmaz <sebnem_k@hotmail.com>
+      ADD. started turkish translation
+      FIX. tr.po
+
+U037) Toomas Soome <Toomas.Soome@microlink.ee>
+      ADD. updated estonian translation
+      FIX. et.po
+
+U036) Michael Bienia <michael@vorlon.ping.de>
+      ADD. rewrite keymap-rebinding
+      ADD. keymap autoupdate feature
+      FIX. Makefile[.in], extern.h, keymap.h, proto.h, tin.h, feed.c, filter.c
+           global.c, group.c, help.c, inews.c, init.c, keymap.c, lang.c, main.c
+           misc.c, nntplib.c, nrctbl.c, options_menu.c, page.c, pgp.c, post.c
+           prompt.c, read.c, save.c, search.c, select.c, thread.c, version.c
+           tin.1, tin.5
+
+U035) Urs Janssen <urs@tin.org>
+      ADD. basic code for new nntp-command CAPABILITIES
+      ADD. config.guess, config.sub update
+      ADD. GLOBAL_PRINT ('o') to thread-level
+      ADD. EDIT_FILTER ('E') to select- and thread-level
+      ADD. update online 'h'elp
+      ADD. ad configure check and fallback for non ANSI-C strsep() function
+      BUG. typos in the german translation
+      BUG. didn't compile if configured with --disable-printing
+      BUG. description of a few keys in the online help was wrong
+      BUG. out of bounds read in utf8_valid()
+      BUG. missing postinit_regexp() call in batch_mode.
+      FIX. extern.h, keymap.h, nntplib.h, proto.h, tin.h, attrib.c, config.c
+           debug.c, feed.c, filter.c, group.c, help.c, keymap.c, lang.c, main.c
+           memory.c, misc.c, nntplib.c, options_menu.c, page.c, post.c
+           screen.c, select.c, string.c, thread.c, xref.c, de.po, tr.po
+           Makefile, configure.in, autoconf.hin. config.guess, config.sub
+           tin.1, tin.5
+
 -- 1.7.7 release 20041215 "Scalpay" --
 
  026) Michael Bienia <michael@vorlon.ping.de>
diff -Nurp tin-1.7.7/doc/CREDITS tin-1.7.8/doc/CREDITS
--- tin-1.7.7/doc/CREDITS	Mon Nov 15 18:44:21 2004
+++ tin-1.7.8/doc/CREDITS	Tue Mar  8 11:31:56 2005
@@ -1,57 +1,58 @@
 I wish to thank the following people for supplying patches:
 
-David Abbott, Earle Ake, Russ Allbery, Matt Anton, Orbby S. Arka, Joachim
-Astel, Anton Aylward, Mark Ayzenshteyn, Jens Chr. Bachem, George Baltz,
-Dieter Baron, Volker Barthelmann, Kirk Bauer, Paul Bauwens, Dieter Becker,
-Wolfgang Behrens, Fabrice Bellet, Greg Berigan, Enrik Berkhan, Juergen
-Bernau, Dan Berry, Michael Bienia, David Binderman, Andrey Blochintsev,
-Chris Blum, Fokke de Boer, Andreas Borchert, Sebastian Bork, Mark Boucher,
-Robert Brady, Bill Brolik, Herman ten Brugge, Martin Buck, Jeremy Buhler,
-Leila Burrell-Davis, Sean Casey, Peter Castro, Troy Cauble, Andrey A.
-Chernov, Albert Chin-A-Young, Park Chong-Dae, Tan Kwee Chuan, Boleslaw
-Ciesielski, Robert Claeson, Steven Cogswell, Don Costello, Joshua Crawford,
-Bryan Curnutt, Ned Danieley, Lars Dannenberg, Chris Davies, John Davis,
-Borislav Deianov, Thomas E. Dickey, Martin Dickopp, Olaf Dietrich, Herbert
-Martin Dietze, Theo Van Dinter, Ralf Doeblitz, Bryan Dongray, Michael
-Douglass, Nickolay Dudorov, Craig Durland, Bernd Eckenfels, Phil Edge, Kirk
-Edson, Nick Efthymiou, Stefan Elf, Nigel Ellis, L. Scott Emmons, Rob Engle,
-Olle Eriksson, Brent Ermlick, Bernd Ernesti, Ragnar Hojland Espinosa, Jason
-Faultless, Michael Faurot, Werner Fleck, John M. Flinchbaugh, Andy Gabor,
-Christian Garbs, Torsten Gesang, Ruediger Geys, Callum Gibson, Mike
-Glendinning, Igor Goryachev, Philippe Goujard, Dan Greenspan, Dennis
-Grevenstein, Karlo Gross, Carl Hage, Piers Haken, Paul Halsema, Ed Hanway,
-Scott Hauck, Christian Haul, James Hawtin, Per Headland, Arnold Hendriks,
-Daniel Hermans, Jose Herrero, Dave Hill, Tom Hite, Torsten Homeyer, Ulli
-Horlacher, Keith Howell, Tommy Hsieh, Shih-Kun Huang, Steve Hunt, Jeff
-Hurwitt, Jeon Hyoung-Jo, Pieter Immelman, Jarkko Isokungas, Patrick St.
-Jean, Hal Jespersen, Park Sang Jin, Robbin Johnson, Jarkko Jormanainen, Yury
-July, Nelson Kading, Geoffrey Keating, Karsten Keil, Charles S. Kerr, Fritz
-Kleeman, Andreas Kies, Janne Kiviluoto, Tomasz Kloczko, Dwarven Knight,
-Thomas Koenig, Karl-Koenig Koenigsson, Martin Kraemer, Gerald Krause, Thomas
-Kroener, Piotr Kucharski, Florian Kuehnert, Bernd Kuemmerlen, Kris Kugel,
-Stephan Kulow, Manoj Kumar, Dawid Kuroczko, Yuri Kuzmenko, Olivier Lacroix,
-Geoff Lane, Alex Lange, Alain Lasserre, Stanislav Latishko, Hannu Laurila,
-Yen-Ming Lee, Vincent Lefevre, Alexander Lehmann, Marty Leisner, Thomas
-Leitner, Hakan Lennestal, Kevin Lentin, Chua Choon Leong, Chris Lewis,
-Andreas Ley, David-Michael Lincke, Otto Lind, Richard Lloyd, Florian Lohoff,
-Reinhard Luebke, Clifford Luke, Michael Lupp, David MacKenzie, Hugh Mahon,
-Giuseppe De Marco, Scott Marovich, Dmitri A. Martynoff, Kazushi Marukawa,
-Timur Maryin, William McBrine, Geoff McCaughan, Owen Medd, Philipp
-Mergenthaler, Andreas Metzler, Arkadiusz Miskiewicz, Soren Moller, Bruce
-Momjian, Sergio Morales, Michael Morrell, Klaus Mueller, Mike Muise, Udo
-Munk, John R. Myers, Daniel Naber, Torsten Neumann, Dirk Nimmich, James
-Nugen, David E. O'Brien, Michael O'Reilly, Oleg Ohotnikov, Ronald Orr,
-Julien Oster, Guido Ostkamp, Philip Paeps, Jeb Palmer, Neil Parker, Joseph
-Parmelee, Tom Parry, Jim Patterson, Sven Paulus, Walter Pelissero, Cameron
-Perkins, Colin Perkins, Eric Peterson, Tim Pierce, Bill Poitras, Scott W.
-Powers, Wolfgang Prediger, Marc Prud'hommeaux, GianPiero Puccioni, Thomas
-Quinot, Stefan Rapp, Martin Reising, Kyle Rhorer, Ted Richards, Steve
-Robbins, Ollivier Robert, Branden Robinson, Jim Robinson, Thomas Roessler,
-Erik van Roode, Meelis Roos, Stephen Roseman, Roland Rosenfeld, Peter Van
-Rossem, Clifton Royston, Juergen Salk, Rich Salz, Gary Sanders, Nickolay
-Saukh, John Sauter, Christopher Sawtell, Holger Schif, Volker Schmidt, John
-Schmitz, Torsten Schneider, Stefan Scholl, Rainer Scholz, Juergen Schroeder,
-Larry Schwimmer, Randy Scott, Bart Sears, Karl-Olav Serrander, Doug Sewell,
+David Abbott, Earle Ake, Deniz Akkus, Russ Allbery, Matt Anton, Orbby S.
+Arka, Joachim Astel, Anton Aylward, Mark Ayzenshteyn, Jens Chr. Bachem,
+George Baltz, Dieter Baron, Volker Barthelmann, Kirk Bauer, Paul Bauwens,
+Dieter Becker, Wolfgang Behrens, Fabrice Bellet, Greg Berigan, Enrik
+Berkhan, Juergen Bernau, Dan Berry, Michael Bienia, David Binderman, Andrey
+Blochintsev, Chris Blum, Fokke de Boer, Andreas Borchert, Sebastian Bork,
+Mark Boucher, Robert Brady, Bill Brolik, Herman ten Brugge, Martin Buck,
+Jeremy Buhler, Leila Burrell-Davis, Sean Casey, Peter Castro, Troy Cauble,
+Andrey A. Chernov, Albert Chin-A-Young, Park Chong-Dae, Tan Kwee Chuan,
+Boleslaw Ciesielski, Robert Claeson, Steven Cogswell, Don Costello, Joshua
+Crawford, Bryan Curnutt, Ned Danieley, Lars Dannenberg, Chris Davies, John
+Davis, Borislav Deianov, Thomas E. Dickey, Martin Dickopp, Olaf Dietrich,
+Herbert Martin Dietze, Theo Van Dinter, Ralf Doeblitz, Bryan Dongray,
+Michael Douglass, Nickolay Dudorov, Craig Durland, Bernd Eckenfels, Phil
+Edge, Kirk Edson, Nick Efthymiou, Stefan Elf, Nigel Ellis, L. Scott Emmons,
+Rob Engle, Olle Eriksson, Brent Ermlick, Bernd Ernesti, Ragnar Hojland
+Espinosa, Jason Faultless, Michael Faurot, Werner Fleck, John M.
+Flinchbaugh, Andy Gabor, Christian Garbs, Torsten Gesang, Ruediger Geys,
+Callum Gibson, Mike Glendinning, Igor Goryachev, Philippe Goujard, Dan
+Greenspan, Dennis Grevenstein, Karlo Gross, Carl Hage, Piers Haken, Paul
+Halsema, Ed Hanway, Scott Hauck, Christian Haul, James Hawtin, Per Headland,
+Arnold Hendriks, Daniel Hermans, Jose Herrero, Dave Hill, Tom Hite, Torsten
+Homeyer, Ulli Horlacher, Keith Howell, Tommy Hsieh, Shih-Kun Huang, Steve
+Hunt, Jeff Hurwitt, Jeon Hyoung-Jo, Ali Ibraimi, Pieter Immelman, Jarkko
+Isokungas, Patrick St. Jean, Hal Jespersen, Park Sang Jin, Robbin Johnson,
+Jarkko Jormanainen, Yury July, Nelson Kading, Geoffrey Keating, Karsten
+Keil, Charles S. Kerr, Fritz Kleeman, Andreas Kies, Janne Kiviluoto, Tomasz
+Kloczko, Dwarven Knight, Thomas Koenig, Karl-Koenig Koenigsson, Sebnem
+Korkmaz, Martin Kraemer, Gerald Krause, Thomas Kroener, Piotr Kucharski,
+Florian Kuehnert, Bernd Kuemmerlen, Kris Kugel, Stephan Kulow, Manoj Kumar,
+Dawid Kuroczko, Yuri Kuzmenko, Olivier Lacroix, Geoff Lane, Alex Lange,
+Alain Lasserre, Stanislav Latishko, Hannu Laurila, Yen-Ming Lee, Vincent
+Lefevre, Alexander Lehmann, Marty Leisner, Thomas Leitner, Hakan Lennestal,
+Kevin Lentin, Chua Choon Leong, Chris Lewis, Andreas Ley, David-Michael
+Lincke, Otto Lind, Richard Lloyd, Florian Lohoff, Reinhard Luebke, Clifford
+Luke, Michael Lupp, David MacKenzie, Hugh Mahon, Giuseppe De Marco, Scott
+Marovich, Dmitri A. Martynoff, Kazushi Marukawa, Timur Maryin, William
+McBrine, Geoff McCaughan, Owen Medd, Philipp Mergenthaler, Andreas Metzler,
+Arkadiusz Miskiewicz, Soren Moller, Bruce Momjian, Sergio Morales, Michael
+Morrell, Klaus Mueller, Mike Muise, Udo Munk, John R. Myers, Daniel Naber,
+Torsten Neumann, Dirk Nimmich, James Nugen, David E. O'Brien, Michael
+O'Reilly, Oleg Ohotnikov, Ronald Orr, Julien Oster, Guido Ostkamp, Philip
+Paeps, Jeb Palmer, Neil Parker, Joseph Parmelee, Tom Parry, Jim Patterson,
+Sven Paulus, Walter Pelissero, Cameron Perkins, Colin Perkins, Eric
+Peterson, Tim Pierce, Bill Poitras, Scott W. Powers, Wolfgang Prediger, Marc
+Prud'hommeaux, GianPiero Puccioni, Thomas Quinot, Stefan Rapp, Martin
+Reising, Kyle Rhorer, Ted Richards, Steve Robbins, Ollivier Robert, Branden
+Robinson, Jim Robinson, Thomas Roessler, Erik van Roode, Meelis Roos,
+Stephen Roseman, Roland Rosenfeld, Peter Van Rossem, Clifton Royston,
+Juergen Salk, Rich Salz, Gary Sanders, Nickolay Saukh, John Sauter,
+Christopher Sawtell, Holger Schif, Volker Schmidt, John Schmitz, Torsten
+Schneider, Stefan Scholl, Rainer Scholz, Juergen Schroeder, Larry Schwimmer,
+Randy Scott, Bart Sears, Karl-Olav Serrander, Ozge Sevinc, Doug Sewell,
 Philip Shearer, Jungshik Shin, Sergey Shkonda, Andreas Siegert, Mark Smith,
 Toomas Soome, Steve Spearman, Helmut Springer, Cliff Stanford, Steve Starck,
 Jason Steiner, Ralf Stephan, Michael Stenns, Helmrich Streitmatter, Hans
diff -Nurp tin-1.7.7/doc/TODO tin-1.7.8/doc/TODO
--- tin-1.7.7/doc/TODO	Fri Nov 26 19:51:20 2004
+++ tin-1.7.8/doc/TODO	Wed Mar 16 13:28:40 2005
@@ -4,6 +4,30 @@ not read only ,-).
 
 Bugs
 ----
+o  the decription in the online 'h'elp for is dublicated (in
+   all levels) if the "same" key is mapped to the same function twice
+   (e.g: GroupReadBasenote	^J	^M)
+   | Group/thread/article operations
+   | -------------------------------
+   | <CR>      read chosen group
+   | <CR>      read chosen group
+   [20050311 Urs Janssen <urs@tin.org>]
+
+o  can 'V'iew mime-parts with (illegal) encoded filename, e.g:
+   | Content-Type: image/jpeg;
+   |  name="=?iso-8859-1?Q?internationales_Zeichen_f=FCr_Ehe.jpg?="
+   | Content-Disposition: attachment;
+   |  filename="=?iso-8859-1?Q?internationales_Zeichen_f=FCr_Ehe.jpg?="
+   as tin treats the leading '=' as mailbox indicator and complains
+   | Save filename for image/jpeg is a mailbox. Attachment not saved
+   [20050203 Urs Janssen <urs@tin.org>]
+
+o  unexpected multiline responses confuse tin, e.g.:
+   | 240 Article posted =?ISO-8859-1?Q?=3C=3D=3Fiso=2D8859=2D1=3Fq=3F=3F=3D87r7k8na?=
+   |   =?ISO-8859-1?Q?vt=2Efsf=40urs=2Did=2Etest=2Eka=2Enu=3E?=
+   (the servers response should be a single line (INN 2.2))
+   [20050207 Urs Janssen <urs@tin.org>]
+
 o  fast/endless reconecction loop after a "200\n\r400\n\r" greeting,
    see
    <nntp://news.tin.org/Pine.LNX.4.61.0411190338000.24950@avenger.apcoh.org>
@@ -72,7 +96,7 @@ o  rewrite code to use INEWS_PATH instea
    [20021007 Urs Janssen <urs@tin.org>
 
 o  remove built in path of external commands (metamail, ispell, ...)
-   [for ispell $ISPELL could be used to override systempath and progname]
+   [for ispell $ISPELL can be used to override systempath and progname]
 
 o  overview file cacheing code is over-complex
    - cache the original overview info instead of rebuilding it from
@@ -114,9 +138,11 @@ New features
 o  add user defined screen layout at different levels
    [20041025 Urs Janssen <urs@tin.org>]
 
-o  add TLS support
+o  add TLS, NNTPS support
    (see draft-ietf-nntpext-tls-nntp-03.txt;
-   <http://www.gnu.org/software/gnutls/> might be useful)
+    <http://www.gnu.org/software/gnutls/> might be useful;
+    "stunnel -c -d 1119 -r news.example.org:563; tin -g localhost -p 1119"
+    can be used for NNTPS)
    [20031210 Urs Janssen <urs@tin.org>]
 
 o  make 'GNKSA'-parser RFC2822/USEFOR compliant
@@ -144,7 +170,8 @@ o  add bold-italic, bold-underline, ital
 
 o  allow bold, underline, italic, ... as colour substitution for
    monochrome terminals (map green=underline, italic=yellow)
-   (see also <20020416202232.A4575@bloatware.reston01.va.comcast.net>)
+   (see also
+   <nntp://news.tin.org/20020416202232.A4575@bloatware.reston01.va.comcast.net>)
    [20030218 Serge Matveev <sm@cl.spb.ru>]
 
 o  hierarchical 'M'enu, e.g. put all art_marked_*into a 'submenu', ...
@@ -216,13 +243,6 @@ o  add counter to post-processing comman
 o  add key to toggle article and thread sorting preferences on the fly
    (like 'u' for threading)
 
-o  rewrite keymap stuff:
-   Define what key should trigger what action and use function names instead
-   of the old key defines. This allows to add more functionality more easily
-   since you just have to add the new function in the code and to define a
-   key in the keymap file that is bound to this function.
-   [20020305 Dirk Nimmich <nimmich@muenster.de>]
-
 o  check if servers high mark is lower than the one in users newsrc, if so
    issue a warning and allow the luser to reset the highmark in the newsrc
    to the servers 'l'ow or the servers 'h'igh mark or 'i'gnore it.
@@ -303,11 +323,8 @@ o  add feature show_new_newsgroups_since
 
 o  Additions to the thread menu:
      'D'  (cancel article)
-     ']'  quick kill
-     '['  quick auto-select
-     '^A' auto-select via menu
-     '^K' kill via menu
-     'E'  (edit filter)
+     ']'  QuickFilterKill/GLOBAL_QUICK_FILTER_KILL
+     '['  QuickFilterSelect/GLOBAL_QUICK_FILTER_SELECT
      'r'  (reply to) /* not 'R' cause it conflicts with mail_bugreport */
      ''   r should be toggle show all/show only unread
      'f'  (post a followup) (maybe also 'F', '^W', ...)
@@ -317,7 +334,6 @@ o  Additions to the thread menu:
      '='  (mark pattern as hot)
      'Y'  (check for new articles in thread)
      '%'  (toggle rot13 encoding of screen content)
-     'o'  (print)
      'x'  (repost)
      keys to go to previous/next thread
 
@@ -472,6 +488,18 @@ o  suppress hide_uue=2 checking unless f
 
 Internal Changes
 ----------------
+o  read_overview() calls eat_re() which strips the "Re: " out of the
+   subject. the modified subject ist used for batch_mode opperatios (-N/-M)
+   which might not be what ppl. expect and eat_re() is the only function
+   which needs the 'regex' overhead in batch_mode... (see also the note
+   about "Re: "strpping at "Filtering enhancements").
+   [20050225 Urs Janssen <urs@akk.org>]
+
+o  use new_nntp_command() instead of nntp_command() in the rest of the
+   code (where usefull; if we do a global change, rename it to
+   nntp_command()). see check_extensions() for a sample usage.
+   [20050211 Urs Janssen <urs@akk.org>]
+
 o  replace various occurrence of "US-ASCII" by DEFAULT(_MIME)_CHARSET
    and define that to "US-ASCII" (to make 'updates' easier).
    [20040929 Urs Janssen <urs@akk.org>]
@@ -487,20 +515,6 @@ o  get rid of CURR_GROUP, use t_group in
 o  clean up $AUTOSUBSCRIBE code (the NNTP code path is a mess)
    [20030412 Urs Janssen <urs@akk.org>]
 
-o  the various filter keys are named a bit inconsistent, currently we have
-   iKeyGroupQuickAutoSel, iKeyGroupQuickKill, iKeyPageQuickAutoSel,
-   iKeyPageQuickKill and iKeyGroupKill, iKeyGroupAutoSel, iKeyPageAutoKill,
-   iKeyPageAutoSel. in actual fact iKeyPageAutoKill is a misnomer and
-   should be iKeyPageKill, but the whole naming looks a bit odd.
-   the *Quick* keys do add a filter/scoring entry and the others do call
-   the filter/scoring menu. It would be nice if the name would express
-   that. e.g. rename them to something like *QuickFilter{Kill,Select}
-   and *MenuFilter{Kill,Select}. and as the default values for those
-   keys arn't used anywhere else we could drop their scope prefix which
-   would lead us to something like iKeyQuickFilter{Kill,Select} and
-   iKeyMenuFilter{Kill,Select}
-   [20030303 Urs Janssen <urs@akk.org>]
-
 o  in page level Up2 ('k') does the same as PageNextUnreadArt ('N'), but
    Up ('^P') behaves different. shouldn't 'k' be named PageNextUnreadArt2
    here?
@@ -549,8 +563,9 @@ o  close potential security holes:
    - check where my_strncpy() or STRCPY() should be used
      or include OpenBSDs strlcpy(3) (and strlcat(3)) and use it.
    (<ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/>)
-   [Urs Janssen <urs@tin.org> - its4 <http://www.rstcorp.com/its4>
-    and rats <http://www.securesw.com/rats/> can locate potential security
+   [Urs Janssen <urs@tin.org> - its4 <http://www.rstcorp.com/its4>, rats
+    <http://www.securesw.com/rats/> and flawfinder
+    <http://www.dwheeler.com/flawfinder/> can locate potential security
     holes]
 
 o  add a _-_ to the local part of the MSGID on a subject-change
@@ -634,6 +649,8 @@ o  add normalization
 
 Docs/online help
 ----------------
+o  review the turkish translation (tr.po)
+
 o  add installation guide (in html)
 
 o  add cross-compilation hints
@@ -642,7 +659,7 @@ o  better document keymap feature
 
 o  man page always needs work and proof reading
    e.g. 'U', 'V' in pager need better documentation, random organization
-   feature isn't documented at all
+   feature isn't documented at all.
 
 o  tin.defaults could use more documentation in manpage (tin.5)
 
diff -Nurp tin-1.7.7/doc/keymap.sample tin-1.7.8/doc/keymap.sample
--- tin-1.7.7/doc/keymap.sample	Mon Nov 15 18:51:30 2004
+++ tin-1.7.8/doc/keymap.sample	Mon Mar 14 15:46:04 2005
@@ -1,4 +1,4 @@
-# Keymap file V1.0.0 for the TIN newsreader
+# Keymap file V1.0.4 for the TIN newsreader
 #
 # Sample keymap file
 # This file contains the default key mappings
@@ -16,43 +16,41 @@ SearchSubjB			?
 SearchAuthB			A
 SearchBody			B
 SearchRepeat			\
+EditFilter			E
 ToggleHelpDisplay		H
 ToggleInverseVideo		I
 LookupMessage			L
 OptionMenu			M
-Postponed2			O
+Postponed			O	^O
 QuitTin				Q
 DisplayPostHist			W
 FirstPage			^
 SearchAuthF			a
-PageUp3				b
 Help				h
 ToggleInfoLastLine		i
-Down2				j
-Up2				k
+Down				j	^N
+Up				k	^P
 Print				o
 Quit				q
 Version				v
 Post				w
 Pipe				|
+QuickFilterSelect		[
+QuickFilterKill			]
 ScrollUp			<
 ScrollDown			>
-PageUp				^B
-PageDown			^D
-PageDown2			^F
+PageUp				b	^B	^U
+PageDown			^D	^F
 RedrawScr			^L
-Down				^N
-Postponed			^O
-Up				^P
-PageUp2				^U
+MenuFilterSelect		^A
+MenuFilterKill			^K
 
 #####
 
-ConfigSelect			^J
-ConfigSelect2			^M
-ConfigLastPage2			G
+ConfigSelect			^J	^M
+ConfigLastPage			G
 ConfigNoSave			Q
-ConfigFirstPage2		g
+ConfigFirstPage			g
 
 #####
 
@@ -71,11 +69,8 @@ FilterSave			s
 
 #####
 
-GroupAutoSel			^A
 GroupNextUnreadArtOrGrp		TAB
-GroupReadBasenote		^J
-GroupKill			^K
-GroupReadBasenote2		^M
+GroupReadBasenote		^J	^M
 GroupSelThd			*
 GroupDoAutoSel			+
 GroupToggleThdSel		.
@@ -83,19 +78,16 @@ GroupSelThdIfUnreadSelected	;
 GroupSelPattern			=
 GroupReverseSel			@
 GroupCatchupNextUnread		C
-GroupEditFilter			E
 GroupToggleGetartLimit		G
 GroupMarkThdRead		K
 GroupNextUnreadArt		N
 GroupPrevUnreadArt		P
 GroupBugReport			R
-GroupAutoSave		S
+GroupAutoSave			S
 GroupTagParts			T
 GroupUntag			U
 GroupMarkUnselArtRead		X
 GroupMarkThdUnread		Z
-GroupQuickAutoSel		[
-GroupQuickKill			]
 GroupCatchup			c
 GroupToggleSubjDisplay		d
 GroupGoto			g
@@ -113,26 +105,16 @@ GroupUndoSel			~
 
 #####
 
-HelpLastPage2			G
-HelpFirstPage2			g
+HelpLastPage			G
+HelpFirstPage			g
 
 #####
 
-NrctblCreate			c
-NrctblDefault			d
-NrctblAlternative		a
-NrctblQuit			q
-
-#####
-
-PageAutoSel			^A
 PageReplyQuoteHeaders		^E
 PagePGPCheckArticle		^G
 PageToggleHeaders		^H
 PageNextUnread			TAB
-PageNextThd			^J
-PageAutoKill			^K
-PageNextThd2			^M
+PageNextThd			^J	^M
 PageToggleTabs			^T
 PageFollowupQuoteHeaders	^W
 PageToggleTex2iso		"
@@ -144,20 +126,17 @@ PageTopThd			<
 PageBotThd			>
 PageCatchupNextUnread		C
 PageCancel			D
-PageEditFilter			E
 PageFollowup			F
 PageLastPage			G
 PageKillThd			K
 PageNextUnreadArt		N
 PagePrevUnreadArt		P
 PageReply			R
-PageAutoSave		S
+PageAutoSave			S
 PageGroupSel			T
 PageViewUrl			U
 PageViewAttach			V
 PageMarkThdUnread		Z
-PageQuickAutoSel		[
-PageQuickKill			]
 PageToggleHighlight		_
 PageCatchup			c
 PageEditArticle			e
@@ -191,10 +170,8 @@ PostContinue			c
 PostAbort			a
 PostIgnore			i
 PostMail			m
-PostPost2			y
-PostPost3			p
-PostSend			s
-PostSend2			y
+PostPost			p	y
+PostSend			s	y
 PostSupersede			s
 PostPostpone			o
 
@@ -205,8 +182,8 @@ PostponeAll			A
 
 #####
 
-PromptYes			y
-PromptNo			n
+PromptYes			y	Y
+PromptNo			n	N
 
 #####
 
@@ -221,9 +198,8 @@ PProcYes			y
 
 #####
 
-SelectEnterNextUnreadGrp	TAB
-SelectReadGrp			^J
-SelectReadGrp2			^M
+SelectEnterNextUnreadGrp	TAB	n
+SelectReadGrp			^J	^M
 SelectResetNewsrc		^R
 SelectCatchupNextUnread		C
 SelectNextUnreadGrp		N
@@ -232,30 +208,27 @@ SelectSubscribePat		S
 SelectUnsubscribePat		U
 SelectQuitNoWrite		X
 SelectSyncWithActive		Y
-SelectMarkGrpUnread2		Z
 SelectCatchup			c
 SelectToggleDescriptions	d
 SelectGoto			g
 SelectMoveGrp			m
-SelectEnterNextUnreadGrp2	n
 SelectToggleReadDisplay		r
 SelectSubscribe			s
 SelectUnsubscribe		u
 SelectYankActive		y
-SelectMarkGrpUnread		z
+SelectMarkGrpUnread		z	Z
 
 #####
 
 ThreadReadNextArtOrThread	TAB
-ThreadReadArt			^J
-ThreadReadArt2			^M
+ThreadReadArt			^J	^M
 ThreadSelArt			*
 ThreadToggleArtSel		.
 ThreadReverseSel		@
 ThreadCatchupNextUnread		C
 ThreadMarkArtRead		K
 ThreadBugReport			R
-ThreadAutoSave		S
+ThreadAutoSave			S
 ThreadUntag			U
 ThreadMarkThdUnread		Z
 ThreadCatchup			c
diff -Nurp tin-1.7.7/doc/tin.1 tin-1.7.8/doc/tin.1
--- tin-1.7.7/doc/tin.1	Wed Dec 15 16:47:27 2004
+++ tin-1.7.8/doc/tin.1	Wed Mar 16 13:28:53 2005
@@ -3,13 +3,13 @@
 .\" Module    : tin.1
 .\" Author    : I. Lea, U. Janssen
 .\" Created   : 1991-08-23
-.\" Updated   : 2004-12-15
+.\" Updated   : 2005-03-16
 .\" Notes     : use american english; still needs some work, e.g.:
 .\"             - document authorization (.newsauth)
 .\"             - document random organization feature
 .\"
 .\"
-.TH tin 1 "December 15th, 2004" "1.7.7" "A Usenet newsreader"
+.TH tin 1 "March 16th, 2005" "1.7.8" "A Usenet newsreader"
 .\"
 .\"
 .SH NAME
@@ -64,9 +64,9 @@ level.
 On startup \fBtin\fP will show a list of the newsgroups found in
 \fI${TIN_HOMEDIR\-"$HOME"}/.newsrc\fR. An arrow '\->' or highlighted
 bar will point to the first newsgroup. Move to a group by using the
-terminal arrow keys (terminal dependent) or \fBDown2\fP ('\fBj\fP')
-and \fBUp2\fP ('\fBk\fP'). Use PgUp/PgDn (terminal dependent) or
-\fBPageUp2\fP ('\fB^U\fP') (CTRL-U) and \fBPageDown\fP ('\fB^D\fP')
+terminal arrow keys (terminal dependent) or \fBDown\fP ('\fBj\fP')
+and \fBUp\fP ('\fBk\fP'). Use PgUp/PgDn (terminal dependent) or
+\fBPageUp\fP ('\fB^U\fP') (CTRL-U) and \fBPageDown\fP ('\fB^D\fP')
 (CTRL-D) to page up/down. Enter a newsgroup by pressing '\fB<CR>\fP'.
 .PP
 The \fBGroupNextUnreadArtOrGrp\fP ('\fB<TAB>\fP') key enters the next
@@ -408,12 +408,11 @@ within \fBtin\fP.
 	ANSI/vt100	Other Terminals
 Beg. of list/article	\fBHome\fP	\fBFirstPage\fP (\fB^\fP)
 End of list/article	\fBEnd\fP	\fBLastPage\fP (\fB$\fP)
-Page Up	\fBPgUp\fP	\fBPageUp2\fP (\fB^U\fP), \fBPageUp\fP (\fB^B\fP)
-		or \fBPageUp3\fP (\fBb\fP)
-Page Down	\fBPgDn\fP	\fBPageDown\fP (\fB^D\fP), \fBPageDown2\fP (\fB^F\fP)
+Page Up	\fBPgUp\fP	\fBPageUp\fP (\fBu\fP, \fB^U\fP or \fB^B\fP)
+Page Down	\fBPgDn\fP	\fBPageDown\fP (\fB^D\fP or \fB^F\fP)
 		or \fBPageDown3\fP (\fB<SPACE>\fP)
-Line Up	\fBUp arrow\fP	\fBUp2\fP (\fBk\fP) or \fBUp\fP (\fB^P\fP)
-Line Down	\fBDown arrow\fP	\fBDown2\fP (\fBj\fP) or \fBDown\fP (\fB^N\fP)
+Line Up	\fBUp arrow\fP	\fBUp\fP (\fBk\fP or \fB^P\fP)
+Line Down	\fBDown arrow\fP	\fBDown\fP (\fBj\fP or \fB^N\fP)
 .fi
 .RE
 .\"
@@ -477,7 +476,7 @@ Scroll screen up by one line.
 .B ScrollDown '>'
 Scroll screen down by one line.
 .TP
-.B Postponed '^O'
+.B Postponed 'O' '^O'
 Reload postponed article. If your system blocks the \fBPostponed\fP key you
 must quote it by pressing '\fB^V\fP' (CTRL-V) first. The postpone-menu
 offers the following actions: \fBPromptYes\fP ('\fBy\fP') = reload and spawn
@@ -500,9 +499,6 @@ Help screen of commands available on the
 .B ToggleHelpDisplay 'H'
 Toggle the display of help mini menu at the bottom of the screen.
 .TP
-.B Postponed2 'O'
-Reload postponed article. See also ''\fB\-o\fP'' command-line switch.
-.TP
 .B DisplayPostHist 'W'
 List articles posted by user. The date posted, the newsgroup and the
 subject are listed. You can use \fBSearchSubjF\fP ('\fB/\fP'),
@@ -538,10 +534,10 @@ Search for a group by name and descripti
 .B SearchSubjB '?'
 Backward search through the group names and descriptions.
 .TP
-.B SelectReadGrp '^J', SelectReadGrp2 '<CR>'
+.B SelectReadGrp '^J' '<CR>'
 Read current group.
 .TP
-.B SelectEnterNextUnreadGrp '<TAB>', SelectEnterNextUnreadGrp2 'n'
+.B SelectEnterNextUnreadGrp '<TAB>' 'n'
 Enter next group with unread news. Will wrap around to the beginning of the
 group selection list looking for unread groups.
 .TP
@@ -557,6 +553,9 @@ unread group in the group selection list
 Toggle display to show just the group name or the group name and the group
 descriptions.
 .TP
+.B EditFilter 'E'
+Edit the filter file and reload it afterwards.
+.TP
 .B SelectGoto 'g'
 Choose a new group by name. This command can be used to access any group,
 even those not currently yanked in.
@@ -634,7 +633,7 @@ those that are subscribed to in \fI${TIN
 Reread the \fI${TIN_LIBDIR\-NEWSLIBDIR}"/"${TIN_ACTIVEFILE\-active}\fR file
 to see if any new news has arrived since starting \fBtin\fP.
 .TP
-.B SelectMarkGrpUnread 'z', SelectMarkGrpUnread2 'Z'
+.B SelectMarkGrpUnread 'z' 'Z'
 Mark all articles in the current group as unread.
 .\"--------------------------------------------------------------------
 .\"
@@ -643,11 +642,11 @@ Mark all articles in the current group a
 .B 4
 Select article 4.
 .TP
-.B GroupAutoSel '^A'
+.B MenuFilterSelect '^A'
 Auto select article(s) using a menu. Read the section "FILTERING ARTICLES"
 for more information.
 .TP
-.B GroupKill '^K'
+.B MenuFilterKill '^K'
 Kill article(s) using a menu. Read the section "FILTERING ARTICLES" for
 more information.
 .TP
@@ -704,7 +703,7 @@ Pipe current article / thread / auto-sel
 matching pattern / tagged articles into command. See the section "MAILING
 PIPING PRINTING REPOSTING AND SAVING ARTICLES" for more information.
 .TP
-.B GroupQuickAutoSel '['
+.B QuickFilterSelect '['
 Auto select article(s) with a single key [after confirmation]. The defaults
 used for selection are based upon the following four tinrc config variables:
 \fBdefault_filter_select_case\fP, \fBdefault_filter_select_expire\fP,
@@ -713,7 +712,7 @@ Read the section "GLOBAL OPTIONS MENU AN
 a full explanation of these variables and "FILTERING ARTICLES" for more
 information on filtering.
 .TP
-.B GroupQuickKill ']'
+.B QuickFilterKill ']'
 Kill article(s) with a single key [after confirmation]. The defaults used
 for killing are based upon the following four tinrc config variables:
 \fBdefault_filter_kill_case\fP, \fBdefault_filter_kill_expire\fP,
@@ -722,7 +721,7 @@ Read the section "GLOBAL OPTIONS MENU AN
 a full explanation of these variables and "FILTERING ARTICLES" for more
 information on filtering.
 .TP
-.B GroupReadBasenote '^J', GroupReadBasenote2 '<CR>'
+.B GroupReadBasenote '^J' '<CR>'
 Read current article.
 .TP
 .B GroupNextUnreadArtOrGrp '<TAB>'
@@ -751,7 +750,7 @@ with unread news.
 Cycle the display of the author through all the possible options
 for the tinrc variable \fBshow_author\fP.
 .TP
-.B GroupEditFilter 'E'
+.B EditFilter 'E'
 Edit the filter file and reload it afterwards.
 .TP
 .B GroupGoto 'g'
@@ -873,6 +872,14 @@ Mark current thread as unread.
 .B 4
 Select article 4 within thread.
 .TP
+.B MenuFilterSelect '^A'
+Auto select article(s) using a menu. Read the section "FILTERING
+ARTICLES" for more information.
+.TP
+.B MenuFilterKill '^K'
+Kill article(s) using a menu. Read the section "FILTERING ARTICLES"
+for more information.
+.TP
 .B SetRange '#'
 Choose a range of articles to be affected by the next command. See the
 section "RANGES" for more information.
@@ -906,7 +913,7 @@ Pipe current article / thread / auto-sel
 matching pattern / tagged articles into command. See the section "MAILING
 PIPING PRINTING REPOSTING AND SAVING ARTICLES" for more information.
 .TP
-.B ThreadReadArt '^J', ThreadReadArt2 '<CR>'
+.B ThreadReadArt '^J' '<CR>'
 Read current article within thread.
 .TP
 .B ThreadReadNextArtOrThread '<TAB>'
@@ -936,6 +943,9 @@ containing unread news.
 Cycle the display of the author through all the possible options for the
 tinrc variable \fBshow_author\fP.
 .TP
+.B EditFilter 'E'
+Edit the filter file and reload it afterwards.
+.TP
 .B ToggleInfoLastLine 'i'
 Display the subject of the current article in the last line.
 .TP
@@ -953,6 +963,11 @@ Mail current article / thread / auto-sel
 matching pattern / tagged articles to someone. See the section "MAILING
 PIPING PRINTING REPOSTING AND SAVING ARTICLES" for more information.
 .TP
+.B Print 'o'
+Send current article / thread / auto-selected (hot) articles / articles
+matching pattern / tagged articles to printer. See the section "MAILING
+PIPING PRINTING REPOSTING AND SAVING ARTICLES" for more information.
+.TP
 .B Quit 'q'
 Return to previous level.
 .TP
@@ -1001,7 +1016,7 @@ Read the first (base) article in this th
 .B 4
 Read response 4 in this thread.
 .TP
-.B PageAutoSel '^A'
+.B MenuFilterSelect '^A'
 Auto select article(s) using a menu. Read the section "FILTERING ARTICLES"
 for more information.
 .TP
@@ -1017,7 +1032,7 @@ operations on article.
 .B PageToggleHeaders '^H'
 Toggles the display mode (raw including all headers vs. cooked)
 .TP
-.B PageAutoKill '^K'
+.B MenuFilterKill '^K'
 Kill article(s) using a menu. Read the section "FILTERING ARTICLES" for more
 information.
 .TP
@@ -1059,7 +1074,9 @@ Forward search the text of this article.
 Backward search the text of this article.
 .TP
 .B PageSkipIncludedText ':'
-Skip to the end of the quoted text in this article.
+Skip to the end of the quoted text-block in this article. Quoted text
+is everything which matches \fBquote_regex\fP, \fBquote_regex2\fP or
+\fBquote_regex3\fP.
 .TP
 .B PageTopThd '<'
 Goto the first article in the current thread.
@@ -1075,7 +1092,7 @@ Pipe current article / thread / auto-sel
 matching pattern / tagged articles into command. See the section "MAILING
 PIPING PRINTING REPOSTING AND SAVING ARTICLES" for more information.
 .TP
-.B PageQuickAutoSel '['
+.B QuickFilterSelect '['
 Auto select article(s) with a single key. The defaults used for selection
 are set based upon the following four tinrc config variables:
 \fBdefault_filter_select_case\fP, \fBdefault_filter_select_expire\fP,
@@ -1084,7 +1101,7 @@ Read the section "GLOBAL OPTIONS MENU AN
 a full explanation of these variables and "FILTERING ARTICLES" for more
 information on filtering.
 .TP
-.B PageQuickKill ']'
+.B QuickFilterKill ']'
 Kill article(s) with a single key. The defaults used for killing are based
 upon the following four tinrc config variables:
 \fBdefault_filter_kill_case\fP, \fBdefault_filter_kill_expire\fP,
@@ -1093,7 +1110,7 @@ Read the section "GLOBAL OPTIONS MENU AN
 a full explanation of these variables and "FILTERING ARTICLES" for more
 information on filtering.
 .TP
-.B PageNextThd '^J', PageNextThd2 '<CR>'
+.B PageNextThd '^J' '<CR>'
 Goto next base article.
 .TP
 .B PageNextUnread '<TAB>'
@@ -1126,7 +1143,7 @@ the newsgroup 'control' or 'control.canc
 .B PageEditArticle 'e'
 Edit the current article. This is restricted to mailgroups and saved news.
 .TP
-.B PageEditFilter 'E'
+.B EditFilter 'E'
 Edit the filter file and reload it afterwards.
 .TP
 .B PageFollowupQuote 'f'
@@ -1148,10 +1165,6 @@ Display the subject of the current artic
 .B ToggleInverseVideo 'I'
 Toggle inverse video.
 .TP
-.B Up2 'k'
-Mark article as read and move on to next unread article. Behaves identically
-to \fBPageNextUnreadArt\fP ('\fBN\fP').
-.TP
 .B PageKillThd 'K'
 Mark rest of thread as read and move onto the next unread thread.
 .TP
@@ -1266,12 +1279,11 @@ the behavior of \fBtin\fP. The options a
 \fI${TIN_HOMEDIR\-"$HOME"}/.tin/tinrc\fR when you exit \fBtin\fP so don't
 edit the file directly whilst \fBtin\fP is running.
 .PP
-In the options menu use the cursor keys in the usual way to move
-around. Use \fBConfigSelect\fP ('\fB^J\fP') or \fBConfigSelect2\fP
-('\fB<CR>\fP') to 'open' the option you wish to change. You will need to
-enter a new value or use '\fB<SPACE>\fP' to toggle the available
-options. \fBConfigSelect\fP will save the new value, '\fB<ESC>\fP' will
-abort without saving changes.
+In the options menu use the cursor keys in the usual way to move around. Use
+\fBConfigSelect\fP ('\fB^J\fP' or '\fB<CR>\fP') to 'open' the option you
+wish to change. You will need to enter a new value or use '\fB<SPACE>\fP' to
+toggle the available options. \fBConfigSelect\fP will save the new value,
+'\fB<ESC>\fP' will abort without saving changes.
 .PP
 As with the other menus, \fBRedrawScr\fP ('\fB^L\fP') will redraw the
 screen. You can use \fBSearchSubjF\fP ('\fB/\fP'), \fBSearchSubjB\fP
@@ -1740,11 +1752,11 @@ for more details on MBOXO and MBOXRD and
 for more details about MMDF.
 .TP
 .B 'Mark article read' ignores tags (mark_ignore_tags)
-When this is ON, the \fBiKeyGroupMarkThdRead\fP,
-\fBiKeyThreadMarkArtRead\fP functions ('\fBK\fP') mark just the
-current article or thread, ignoring other tagged, unread articles.
-When OFF, the same function presents a menu with choices of the
-current thread or article, all tagged, unread articles, or nothing.
+When this is ON, the \fBGroupMarkThdRead\fP, \fBThreadMarkArtRead\fP
+functions ('\fBK\fP') mark just the current article or thread, ignoring
+other tagged, unread articles.  When OFF, the same function presents a menu
+with choices of the current thread or article, all tagged, unread articles,
+or nothing.
 .TP
 .B Mark saved articles/threads as read (mark_saved_read)
 If ON mark articles that are saved as read. Default is ON.
@@ -2639,7 +2651,7 @@ clicked outside the list of articles.
 In the group selection menu, if the mouse is pointing at a group then:
 .TP 10
 left button
-moves to and selects the group pointed at, just like \fBSelectReadGrp2\fP
+moves to and selects the group pointed at, just like \fBSelectReadGrp\fP
 ('\fB<CR>\fP').
 .TP
 center button
@@ -2651,7 +2663,7 @@ moves to the group pointed at.
 In the article menu, if the mouse is pointing at an article (or thread) then:
 .TP 10
 left button
-reads the article pointed at, just like \fBGroupReadBasenote2\fP
+reads the article pointed at, just like \fBGroupReadBasenote\fP
 ('\fB<CR>\fP'), or the thread, just like \fBGroupListThd\fP ('\fBl\fP').
 .TP
 center button
@@ -2665,7 +2677,7 @@ moves to the article (or thread) pointed
 In the thread menu, if the mouse is pointing at an article then:
 .TP 10
 left button
-reads article pointed at, just like \fBThreadReadArt2\fP ('\fB<CR>\fP').
+reads article pointed at, just like \fBThreadReadArt\fP ('\fB<CR>\fP').
 .TP
 center button
 exits the menu, catching up on the thread if you have
diff -Nurp tin-1.7.7/doc/tin.5 tin-1.7.8/doc/tin.5
--- tin-1.7.7/doc/tin.5	Wed Dec 15 16:47:36 2004
+++ tin-1.7.8/doc/tin.5	Mon Mar 14 15:50:39 2005
@@ -2,10 +2,10 @@
 .\" Module    : tin.5
 .\" Author    : U. Janssen
 .\" Created   : 2000-07-10
-.\" Updated   : 2004-12-15
+.\" Updated   : 2005-03-14
 .\" Notes     : needs a some work
 .\"
-.TH tin 5 "December 15th, 2004" "1.7.7" "A Usenet newsreader"
+.TH tin 5 "March 12th, 2005" "1.7.8" "A Usenet newsreader"
 
 .SH NAME
 tin, rtin \- related files
@@ -18,11 +18,11 @@ newsreader.
 
 .SH FILES
 .\" TODO: mention
-.\" ${TIN_HOMEDIR-"$HOME"}/dead.article
-.\" ${TIN_HOMEDIR-"$HOME"}/dead.articles
-.\" ${TIN_HOMEDIR-"$HOME"}/.article[.$$]
-.\" ${TIN_HOMEDIR-"$HOME"}/.cancel[.$$]
-.\" ${TIN_HOMEDIR-"$HOME"}/.letter[.$$]
+.\" ${TIN_HOMEDIR\-"$HOME"}/dead.article
+.\" ${TIN_HOMEDIR\-"$HOME"}/dead.articles
+.\" ${TIN_HOMEDIR\-"$HOME"}/.article[.$$]
+.\" ${TIN_HOMEDIR\-"$HOME"}/.cancel[.$$]
+.\" ${TIN_HOMEDIR\-"$HOME"}/.letter[.$$]
 .PP
 .IR $MAILCAPS
 .br
@@ -66,7 +66,7 @@ message. If it contains "%t", those two 
 content-type field, including the subtype, if any. If it contains "%{"
 followed by a parameter name and a closing "}", then all those characters
 will be replaced by the value of the named parameter, if any, from the
-Content-Type header. Finally, if the field contains "\\%", those two
+Content\-Type header. Finally, if the field contains "\\%", those two
 characters will be replaced by a single "%" character.
 .\"
 .\" Two special codes can appear in the viewing command for objects of type
@@ -85,16 +85,16 @@ support mail composing agents that suppo
 of mail using external composing agents. As with the view-command, the
 semantics of program execution are operating system dependent. The result of
 the composing program may be data that is not yet suitable for mail
-transport - that is, a Content-Transfer-Encoding may need to be applied to
+transport - that is, a Content\-Transfer\-Encoding may need to be applied to
 the data.
 .TP
 .B composetyped
 The "composetyped" field is similar to the "compose" field, but is to be
-used when the composing program needs to specify the Content-Type header
+used when the composing program needs to specify the Content\-Type header
 field to be applied to the composed data. The "compose" field is simpler,
 and is preferred for use with existing (non-mail-oriented) programs for
 composing data in a given format. The "composetyped" field is necessary when
-the Content-Type information must include auxiliary parameters, and the
+the Content\-Type information must include auxiliary parameters, and the
 composition program must then know enough about mail formats to produce
 output that includes the mail type information.
 .TP
@@ -150,8 +150,8 @@ will be in that form after decoding. In 
 if there is line-oriented data of some type other than text/* or non-line-
 oriented data that is a subtype of text.
 .TP
-.B x11-bitmap
-The "x11-bitmap" field names a file, in X11 bitmap (xbm) format, which
+.B x11\-bitmap
+The "x11\-bitmap" field names a file, in X11 bitmap (xbm) format, which
 points to an appropriate icon to be used to visually denote the presence of
 this kind of data.
 .TP
@@ -178,7 +178,7 @@ image/*;\\
 .in +.3i
 xv \-8 \-geometry +0 '%s';\\
 .br
-description=%{name} %t-Image;\\
+description=%{name} %t\-Image;\\
 .br
 test=test "$DISPLAY" \\
 .br
@@ -387,7 +387,7 @@ active file of user's saved newsgroups, 
 .\" tin uses inns old (pre 2.x) Path convention.
 .\" as with inn >= 2.2.x getting more and more popular
 .\" we should think about checking for the new Paths (/news/etc/)
-.\" ${TIN_LIBDIR-/news/etc"}/attributes
+.\" ${TIN_LIBDIR\-/news/etc"}/attributes
 .IR /etc/tin/attributes
 .br
 .IR ${TIN_HOMEDIR\-"$HOME"}/.tin/attributes
@@ -532,7 +532,7 @@ header and its content.
 .TP
 .B quick_kill_scope
 A comma-separated list of newsgroup patterns (wildmat-style) to which
-groups the filter rule added by \fBGroupQuickKill\fP will be applied.
+groups the filter rule added by \fBQuickFilterKill\fP will be applied.
 If unset the default from the tinrc variable
 \fBdefault_filter_kill_global\fP will be used.
 .TP
@@ -547,7 +547,7 @@ Identical to the tinrc variable \fBdefau
 .TP
 .B quick_select_scope
 A comma-separated list of newsgroup patterns (wildmat-style) to which
-groups the filter rule added by \fBGroupQuickAutoSel\fP will be
+groups the filter rule added by \fBQuickFilterSelect\fP will be
 applied. If unset the default from the tinrc variable
 \fBdefault_filter_select_global\fP will be used.
 .TP
@@ -700,17 +700,20 @@ subj=\\b(cd|[rk]?)?tin(d|pre)?[\-.0\-9]*
 .RE
 .PP
 
+.\"
+.\" TODO: mention THREAD_EDIT_FILTER and SELECT_EDIT_FILTER
 .IR /etc/tin/keymap${${LC_ALL\-"${LC_CTYPE\-"${LC_MESSAGES\-"$LANG"}"}"}:+".${LC_ALL\-"${LC_CTYPE\-"${LC_MESSAGES\-"$LANG"}"}"}"}
 .br
 .IR ${TIN_HOMEDIR\-"$HOME"}/.tin/keymap${${LC_ALL\-"${LC_CTYPE\-"${LC_MESSAGES\-"$LANG"}"}"}:+".${LC_ALL\-"${LC_CTYPE\-"${LC_MESSAGES\-"$LANG"}"}"}"}
 .\" sorry that one got a bit complex ,-)
 .sp
 .RS
-Keymap-file, containing "\fIkeyname\fR \fIvalue\fR" pairs.
-Below is a list of all keynames and their default bindings.
+Keymap-file, containing "\fIkeyname\fR \fIvalue\fR \fI[value]\fR" pairs
+seperated by spaces or tabs.  Below is a list of all rebindable keynames and
+their defaults.
 .sp
 .nf
-.ta \w'GroupSelThdIfUnreadSelected    'u +\w'SPACE'u
+.ta \w'GroupSelThdIfUnreadSelected    'u +\w'SPACE'u +\w'SPACE'u
 \fBPageDown3\fP	SPACE
 \fBShellEscape\fP	!
 \fBSetRange\fP	#
@@ -722,41 +725,41 @@ Below is a list of all keynames and thei
 \fBSearchAuthB\fP	A
 \fBSearchBody\fP	B
 \fBSearchRepeat\fP	\\
+\fBEditFilter\fP   E
 \fBToggleHelpDisplay\fP	H
 \fBToggleInverseVideo\fP	I
 \fBLookupMessage\fP	L
 \fBOptionMenu\fP	M
-\fBPostponed2\fP	O
+\fBPostponed\fP	O	^O
 \fBQuitTin\fP	Q
 \fBDisplayPostHist\fP	W
 \fBFirstPage\fP	^
 \fBSearchAuthF\fP	a
-\fBPageUp3\fP	b
 \fBHelp\fP	h
 \fBToggleInfoLastLine\fP	i
-\fBDown2\fP	j
-\fBUp2\fP	k
+\fBDown\fP	j	^N
+\fBUp\fP	k	^P
 \fBPrint\fP	o
 \fBQuit\fP	q
 \fBVersion\fP	v
 \fBPost\fP	w
+\fBQuickFilterSelect\fP	[
+\fBQuickFilterKill\fP	]
 \fBPipe\fP	|
 \fBScrollUp\fP	<
 \fBScrollDown\fP	>
-\fBPageUp\fP	^B
-\fBPageDown\fP	^D
-\fBPageDown2\fP	^F
+\fBPageUp\fP	b	^B	^U
+\fBPageDown\fP	^D	^F
 \fBRedrawScr\fP	^L
-\fBDown\fP	^N
 \fBPostponed\fP	^O
-\fBUp\fP	^P
-\fBPageUp2\fP	^U
+\fBMenuFilterSelect\fP	^A
+\fBMenuFilterKill\fP	^K
+
 .sp
-\fBConfigSelect\fP	^J
-\fBConfigSelect2\fP	^M
-\fBConfigLastPage2\fP	G
+\fBConfigSelect\fP	^J	^M
+\fBConfigLastPage\fP	G
 \fBConfigNoSave\fP	Q
-\fBConfigFirstPage2\fP	g
+\fBConfigFirstPage\fP	g
 .sp
 \fBFeedTag\fP	T
 \fBFeedArt\fP	a
@@ -769,11 +772,8 @@ Below is a list of all keynames and thei
 \fBFilterEdit\fP	e
 \fBFilterSave\fP	s
 .sp
-\fBGroupAutoSel\fP	^A
 \fBGroupNextUnreadArtOrGrp\fP	TAB
-\fBGroupReadBasenote\fP	^J
-\fBGroupKill\fP	^K
-\fBGroupReadBasenote2\fP	^M
+\fBGroupReadBasenote\fP	^J	^M
 \fBGroupSelThd\fP	*
 \fBGroupDoAutoSel\fP	+
 \fBGroupToggleThdSel\fP	.
@@ -781,7 +781,6 @@ Below is a list of all keynames and thei
 \fBGroupSelPattern\fP	=
 \fBGroupReverseSel\fP	@
 \fBGroupCatchupNextUnread\fP	C
-\fBGroupEditFilter\fP	E
 \fBGroupToggleGetartLimit\fP	G
 \fBGroupMarkThdRead\fP	K
 \fBGroupNextUnreadArt\fP	N
@@ -792,8 +791,6 @@ Below is a list of all keynames and thei
 \fBGroupUntag\fP	U
 \fBGroupMarkUnselArtRead\fP	X
 \fBGroupMarkThdUnread\fP	Z
-\fBGroupQuickAutoSel\fP	[
-\fBGroupQuickKill\fP	]
 \fBGroupCatchup\fP	c
 \fBGroupToggleSubjDisplay\fP	d
 \fBGroupGoto\fP	g
@@ -809,22 +806,14 @@ Below is a list of all keynames and thei
 \fBGroupMarkArtUnread\fP	z
 \fBGroupUndoSel\fP	~
 .sp
-\fBHelpLastPage2\fP	G
-\fBHelpFirstPage2\fP	g
-.sp
-\fBNrctblCreate\fP	c
-\fBNrctblDefault\fP	d
-\fBNrctblAlternative\fP	a
-\fBNrctblQuit\fP	q
+\fBHelpLastPage\fP	G
+\fBHelpFirstPage\fP	g
 .sp
-\fBPageAutoSel\fP	^A
 \fBPageReplyQuoteHeaders\fP	^E
 \fBPagePGPCheckArticle\fP	^G
 \fBPageToggleHeaders\fP	^H
 \fBPageNextUnread\fP	TAB
-\fBPageNextThd\fP	^J
-\fBPageAutoKill\fP	^K
-\fBPageNextThd2\fP	^M
+\fBPageNextThd\fP	^J	^M
 \fBPageToggleTabs\fP	^T
 \fBPageFollowupQuoteHeaders\fP	^W
 \fBPageToggleTex2iso\fP	"
@@ -836,7 +825,6 @@ Below is a list of all keynames and thei
 \fBPageBotThd\fP	>
 \fBPageCatchupNextUnread\fP	C
 \fBPageCancel\fP	D
-\fBPageEditFilter\fP	E
 \fBPageFollowup\fP	F
 \fBPageLastPage\fP	G
 \fBPageKillThd\fP	K
@@ -848,8 +836,6 @@ Below is a list of all keynames and thei
 \fBPageViewUrl\fP	U
 \fBPageViewAttach\fP	V
 \fBPageMarkThdUnread\fP	Z
-\fBPageQuickAutoSel\fP	[
-\fBPageQuickKill\fP	]
 \fBPageToggleHighlight\fP	_
 \fBPageCatchup\fP	c
 \fBPageEditArticle\fP	e
@@ -880,32 +866,25 @@ Below is a list of all keynames and thei
 \fBPostIgnore\fP	i
 \fBPostMail\fP	m
 \fBPostPostpone\fP	o
-\fBPostPost3\fP	p
+\fBPostPost\fP	p	y
 \fBPostSupersede\fP	s
-\fBPostSend\fP	s
-\fBPostSend2\fP	y
-\fBPostPost2\fP	y
+\fBPostSend\fP	s	y
 .sp
 \fBPostponeOverride\fP	Y
 \fBPostponeAll\fP	A
 .sp
-\fBPromptYes\fP	y
-\fBPromptNo\fP	n
+\fBPromptYes\fP	y	Y
+\fBPromptNo\fP	n	N
 .sp
 \fBSaveAppendFile\fP	a
 \fBSaveOverwriteFile\fP	o
 .sp
-\fBPProcExtractZip\fP	E
-\fBPProcListZip\fP	L
-\fBPProcExtractZoo\fP	e
-\fBPProcListZoo\fP	l
-\fBPProcShar\fP	s
-\fBPProcUUDecode\fP	u
 \fBPProcNone\fP	n
+\fBPProcShar\fP	s
+\fBPProcYes\fP	y
 .sp
-\fBSelectEnterNextUnreadGrp\fP	TAB
-\fBSelectReadGrp\fP	^J
-\fBSelectReadGrp2\fP	^M
+\fBSelectEnterNextUnreadGrp\fP	TAB	n
+\fBSelectReadGrp\fP	^J	^M
 \fBSelectResetNewsrc\fP	^R
 \fBSelectSortActive\fP	.
 \fBSelectCatchupNextUnread\fP	C
@@ -915,21 +894,18 @@ Below is a list of all keynames and thei
 \fBSelectUnsubscribePat\fP	U
 \fBSelectQuitNoWrite\fP	X
 \fBSelectSyncWithActive\fP	Y
-\fBSelectMarkGrpUnread2\fP	Z
 \fBSelectCatchup\fP	c
 \fBSelectToggleDescriptions\fP	d
 \fBSelectGoto\fP	g
 \fBSelectMoveGrp\fP	m
-\fBSelectEnterNextUnreadGrp2\fP	n
 \fBSelectToggleReadDisplay\fP	r
 \fBSelectSubscribe\fP	s
 \fBSelectUnsubscribe\fP	u
 \fBSelectYankActive\fP	y
-\fBSelectMarkGrpUnread\fP	z
+\fBSelectMarkGrpUnread\fP	z	Z
 .sp
 \fBThreadReadNextArtOrThread\fP	TAB
-\fBThreadReadArt\fP	^J
-\fBThreadReadArt2\fP	^M
+\fBThreadReadArt\fP	^J	^M
 \fBThreadSelArt\fP	*
 \fBThreadToggleArtSel\fP	.
 \fBThreadReverseSel\fP	@
@@ -1039,7 +1015,7 @@ to keep track of new newsgroups on the s
 .\" tin uses inns old (pre 2.x) Path convention.
 .\" as with inn >= 2.2.x getting more and more popular
 .\" we should think about checking for the new Paths (/news/etc/)
-.\" .IR ${TIN_LIBDIR-"/news/etc"}/tinrc
+.\" .IR ${TIN_LIBDIR\-"/news/etc"}/tinrc
 .IR /etc/tin/tinrc
 .br
 .IR ${TIN_HOMEDIR\-"$HOME"}/.tin/tinrc
@@ -1123,7 +1099,7 @@ Reconnect to server automatically. Defau
 .TP
 .B auto_save
 If ON articles/threads with ''Archive\-name:'' in header will be
-automatically saved with the Archive-name & part/patch no and post
+automatically saved with the Archive\-name & part/patch no and post
 processed if \fBpost_process_type\fP is set to something other than 'No'.
 Default is OFF.
 .TP
@@ -1516,11 +1492,11 @@ for more details about MMDF.
 If ON mark articles that are saved as read. Default is ON.
 .TP
 .B mark_ignore_tags
-When this is ON, the \fBiKeyGroupMarkThdRead\fP,
-\fBiKeyThreadMarkArtRead\fP functions ('\fBK\fP') mark just the
-current article or thread, ignoring other tagged, unread articles.
-When OFF, the same function presents a menu with choices of the
-current thread or article, all tagged, unread articles, or nothing.
+When this is ON, the \fBGroupMarkThdRead\fP, \fBThreadMarkArtRead\fP
+functions ('\fBK\fP') mark just the current article or thread, ignoring
+other tagged, unread articles.  When OFF, the same function presents a menu
+with choices of the current thread or article, all tagged, unread articles,
+or nothing.
 .TP
 .B metamail_prog
 Path, name and options of external
@@ -1635,8 +1611,8 @@ library
 uses to do the normalization. Default is NFKC.
 .TP
 .B pgdn_goto_next
-If ON the Page Down keys will go to the next unread article when pressed at
-the end of a message. Default is ON.
+If ON the \fBPageDown\fP keys will go to the next unread article when
+pressed at the end of a message. Default is ON.
 .TP
 .B pos_first_unread
 If ON put cursor at first unread article in group otherwise at last article.
@@ -1894,10 +1870,10 @@ the default. The following sort types ar
 .RE
 .TP
 .B space_goto_next_unread
-SPACE normally acts as a Page Down key and has no effect at the end of an
-article. If this option is turned ON the SPACE command will go to the next
-unread article when the end of the article is reached (\fBrn\fP (1)-style
-pager).
+SPACE normally acts as a \fBPageDown\fP key and has no effect at the end of
+an article. If this option is turned ON the SPACE command will go to the
+next unread article when the end of the article is reached (\fBrn\fP
+(1)-style pager).
 .TP
 .B spamtrap_warning_addresses
 Set this option to a list of comma-separated strings to be warned if you are
diff -Nurp tin-1.7.7/include/autoconf.hin tin-1.7.8/include/autoconf.hin
--- tin-1.7.7/include/autoconf.hin	Wed Dec  8 23:18:22 2004
+++ tin-1.7.8/include/autoconf.hin	Sun Mar 20 17:58:39 2005
@@ -3,10 +3,10 @@
  *  Module    : autoconf.hin
  *  Author    : Thomas Dickey
  *  Created   : 1995-08-24
- *  Updated   : 2004-09-14
+ *  Updated   : 2005-03-20
  *  Notes     : #include files, #defines & struct's
  *
- * Copyright (c) 1995-2004 Thomas Dickey <dickey@invisible-island.net>
+ * Copyright (c) 1995-2005 Thomas Dickey <dickey@invisible-island.net>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -284,6 +284,7 @@
 #	undef HAVE_STRNCASECMP
 #	undef HAVE_STRPBRK
 #	undef HAVE_STRRSTR
+#	undef HAVE_STRSEP
 #	undef HAVE_STRSTR
 #	undef HAVE_STRTOL
 #	undef HAVE_TCGETATTR
@@ -314,6 +315,7 @@
 #	undef DECL_GETSERVBYNAME
 #	undef DECL_POPEN
 #	undef DECL_STRCASESTR
+#	undef DECL_STRSEP
 #	undef DECL_SYS_ERRLIST
 #	undef DECL_TGETSTR
 #	undef DECL_TGOTO
diff -Nurp tin-1.7.7/include/bool.h tin-1.7.8/include/bool.h
--- tin-1.7.7/include/bool.h	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/include/bool.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-05-16
  *  Notes     :
  *
- * Copyright (c) 1997-2004 Urs Janssen <urs@tin.org>
+ * Copyright (c) 1997-2005 Urs Janssen <urs@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/bugrep.h tin-1.7.8/include/bugrep.h
--- tin-1.7.7/include/bugrep.h	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/include/bugrep.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-09-19
  *  Notes     :
  *
- * Copyright (c) 1997-2004 Urs Janssen <urs@tin.org>
+ * Copyright (c) 1997-2005 Urs Janssen <urs@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/extern.h tin-1.7.8/include/extern.h
--- tin-1.7.7/include/extern.h	Tue Nov 16 14:25:49 2004
+++ tin-1.7.8/include/extern.h	Mon Mar 21 13:28:18 2005
@@ -3,10 +3,10 @@
  *  Module    : extern.h
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-03-20
  *  Notes     :
  *
- * Copyright (c) 1997-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1997-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -45,6 +45,9 @@
 #ifndef RFC2046_H
 #	include <rfc2046.h>
 #endif /* !RFC2046_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 /*
  * The prototypes bracketed by DECL_xxxx ifdef's are used to get moderately
@@ -325,7 +328,6 @@ extern char **news_headers_to_display_ar
 extern char **news_headers_to_not_display_array;
 extern char *OPT_CHAR_list[];
 extern char *OPT_STRING_list[];
-extern char *ch_post_process;
 extern char *nntp_server;
 extern char active_times_file[PATH_LEN];
 extern char bug_addr[LEN];
@@ -385,7 +387,9 @@ extern const char base64_alphabet[64];
 extern constext *content_encodings[];
 extern constext *content_types[];
 extern constext *txt_attrs[];
-extern constext *txt_colors[];
+#ifdef HAVE_COLOR
+	extern constext *txt_colors[];
+#endif /* HAVE_COLOR */
 extern constext *txt_confirm_choices[];
 extern constext *txt_hide_uue_type[];
 extern constext *txt_interactive_mailers[];
@@ -491,12 +495,14 @@ extern constext txt_caughtup[];
 extern constext txt_check_article[];
 extern constext txt_checking_for_news[];
 extern constext txt_checking_new_groups[];
-#ifndef HAVE_LIBUU
+#if !defined(HAVE_LIBUU) && defined(M_UNIX) && defined(HAVE_SUM) && !defined(DONT_HAVE_PIPING)
 	extern constext txt_checksum_of_file[];
-#endif /* !HAVE_LIBUU */
+#endif /* !HAVE_LIBUU && M_UNIX && HAVE SUM && !DONT_HAVE_PIPING */
 extern constext txt_choose_post_process_type[];
-extern constext txt_color_off[];
-extern constext txt_color_on[];
+#ifdef HAVE_COLOR
+	extern constext txt_color_off[];
+	extern constext txt_color_on[];
+#endif /* HAVE_COLOR */
 extern constext txt_command_failed[];
 extern constext txt_confirm_select_on_exit[];
 #ifdef NNTP_ABLE
@@ -692,6 +698,7 @@ extern constext txt_help_filter_text[];
 extern constext txt_help_filter_text_type[];
 extern constext txt_help_filter_time[];
 extern constext txt_help_global_article_range[];
+extern constext txt_help_global_edit_filter[];
 extern constext txt_help_global_esc[];
 extern constext txt_help_global_help[];
 extern constext txt_help_global_last_art[];
@@ -827,7 +834,10 @@ extern constext txt_keymap_invalid_name[
 #ifdef DEBUG
 	extern constext txt_keymap_redef[];
 #endif /* DEBUG */
-extern constext txt_keymap_conflict[];
+#if 0 /* ununsed */
+	extern constext txt_keymap_conflict[];
+#endif /* 0 */
+extern constext txt_keymap_upgraded[];
 extern constext txt_kill_from[];
 extern constext txt_kill_lines[];
 extern constext txt_kill_menu[];
@@ -1053,7 +1063,9 @@ extern constext txt_thread_upper[];
 extern constext txt_thread_com[];
 extern constext txt_thread_marked_as_deselected[];
 extern constext txt_thread_marked_as_selected[];
-extern constext txt_thread_plural[];
+#if 0 /* unused */
+	extern constext txt_thread_plural[];
+#endif /* 0 */
 extern constext txt_thread_range[];
 extern constext txt_thread_singular[];
 extern constext txt_thread_x_of_n[];
@@ -1208,7 +1220,6 @@ extern int cCOLS;
 extern int cLINES;
 extern int curr_line;
 extern int debug;
-extern int i_key_search_last;
 extern int input_context;
 extern int iso2asc_supported;
 extern int last_resp;
@@ -1297,6 +1308,8 @@ extern t_bool batch_mode;
 extern t_bool verbose;
 extern t_bool xref_supported;
 
+extern t_function last_search;
+
 extern t_menu selmenu;
 extern t_menu grpmenu;
 extern t_menu *currmenu;
@@ -1467,7 +1480,9 @@ extern struct opttxt txt_batch_save;
 extern struct opttxt txt_beginner_level;
 extern struct opttxt txt_cache_overview_files;
 extern struct opttxt txt_catchup_read_groups;
-extern struct opttxt txt_color_options;
+#ifdef HAVE_COLOR
+	extern struct opttxt txt_color_options;
+#endif /* HAVE_COLOR */
 extern struct opttxt txt_confirm_choice;
 extern struct opttxt txt_date_format;
 extern struct opttxt txt_display_options;
@@ -1515,8 +1530,10 @@ extern struct opttxt txt_post_process;
 extern struct opttxt txt_post_process_view;
 extern struct opttxt txt_posted_articles_file;
 extern struct opttxt txt_posting_options;
-extern struct opttxt txt_print_header;
-extern struct opttxt txt_printer;
+#ifndef DISABLE_PRINTING  
+	extern struct opttxt txt_print_header;
+	extern struct opttxt txt_printer;
+#endif /* !DISABLE_PRINTING */
 extern struct opttxt txt_process_only_unread;
 extern struct opttxt txt_prompt_followupto;
 extern struct opttxt txt_quote_chars;
diff -Nurp tin-1.7.7/include/keymap.h tin-1.7.8/include/keymap.h
--- tin-1.7.7/include/keymap.h	Tue Nov 16 14:26:34 2004
+++ tin-1.7.8/include/keymap.h	Wed Mar 16 13:36:07 2005
@@ -3,10 +3,10 @@
  *  Module    : keymap.h
  *  Author    : J. Faultless, D. Nimmich
  *  Created   : 1999
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-03-16
  *  Notes     :
  *
- * Copyright (c) 1999-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 1999-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -38,363 +38,373 @@
 #ifndef KEYMAP_H
 #	define KEYMAP_H 1
 
-#	ifndef MENUKEYS_H
-#		include "menukeys.h"
-#	endif /* !MENUKEYS_H */
+/* Revised 9 October 1996 by Branden Robinson in ASCII order
+ *
+ *        Oct   Dec   Hex   Char           Oct   Dec   Hex   Char
+ *        ------------------------------------------------------------
+ *        000   0     00    NUL '\0'       100   64    40    @
+ *        001   1     01    SOH      ^A    101   65    41    A
+ *        002   2     02    STX      ^B    102   66    42    B
+ *        003   3     03    ETX      ^C    103   67    43    C
+ *        004   4     04    EOT      ^D    104   68    44    D
+ *        005   5     05    ENQ      ^E    105   69    45    E
+ *        006   6     06    ACK      ^F    106   70    46    F
+ *        007   7     07    BEL '\a' ^G    107   71    47    G
+ *        010   8     08    BS  '\b' ^H    110   72    48    H
+ *        011   9     09    HT  '\t' ^I    111   73    49    I
+ *        012   10    0A    LF  '\n' ^J    112   74    4A    J
+ *        013   11    0B    VT  '\v' ^K    113   75    4B    K
+ *        014   12    0C    FF  '\f' ^L    114   76    4C    L
+ *        015   13    0D    CR  '\r' ^M    115   77    4D    M
+ *        016   14    0E    SO       ^N    116   78    4E    N
+ *        017   15    0F    SI       ^O    117   79    4F    O
+ *        020   16    10    DLE      ^P    120   80    50    P
+ *        021   17    11    DC1      ^Q    121   81    51    Q
+ *        022   18    12    DC2      ^R    122   82    52    R
+ *        023   19    13    DC3      ^S    123   83    53    S
+ *        024   20    14    DC4      ^T    124   84    54    T
+ *        025   21    15    NAK      ^U    125   85    55    U
+ *        026   22    16    SYN      ^V    126   86    56    V
+ *        027   23    17    ETB      ^W    127   87    57    W
+ *        030   24    18    CAN      ^X    130   88    58    X
+ *        031   25    19    EM       ^Y    131   89    59    Y
+ *        032   26    1A    SUB      ^Z    132   90    5A    Z
+ *        033   27    1B    ESC            133   91    5B    [
+ *        034   28    1C    FS             134   92    5C    \   '\\'
+ *        035   29    1D    GS             135   93    5D    ]
+ *        036   30    1E    RS             136   94    5E    ^
+ *        037   31    1F    US             137   95    5F    _
+ *        040   32    20    SPACE          140   96    60    `
+ *        041   33    21    !              141   97    61    a
+ *        042   34    22    "              142   98    62    b
+ *        043   35    23    #              143   99    63    c
+ *        044   36    24    $              144   100   64    d
+ *        045   37    25    %              145   101   65    e
+ *        046   38    26    &              146   102   66    f
+ *        047   39    27    '              147   103   67    g
+ *        050   40    28    (              150   104   68    h
+ *        051   41    29    )              151   105   69    i
+ *        052   42    2A    *              152   106   6A    j
+ *        053   43    2B    +              153   107   6B    k
+ *        054   44    2C    ,              154   108   6C    l
+ *        055   45    2D    -              155   109   6D    m
+ *        056   46    2E    .              156   110   6E    n
+ *        057   47    2F    /              157   111   6F    o
+ *        060   48    30    0              160   112   70    p
+ *        061   49    31    1              161   113   71    q
+ *        062   50    32    2              162   114   72    r
+ *        063   51    33    3              163   115   73    s
+ *        064   52    34    4              164   116   74    t
+ *        065   53    35    5              165   117   75    u
+ *        066   54    36    6              166   118   76    v
+ *        067   55    37    7              167   119   77    w
+ *        070   56    38    8              170   120   78    x
+ *        071   57    39    9              171   121   79    y
+ *        072   58    3A    :              172   122   7A    z
+ *        073   59    3B    ;              173   123   7B    {
+ *        074   60    3C    <              174   124   7C    |
+ *        075   61    3D    =              175   125   7D    }
+ *        076   62    3E    >              176   126   7E    ~
+ *        077   63    3F    ?              177   127   7F    DEL
+ *
+ * Above chart reprinted from Linux manual page.
+ *
+ * When adding key functionality, be aware of key functions in the "big five"
+ * levels of tin operation: top (group selection), group, thread, article
+ * (pager), and help.  If possible, when adding a key to any of these levels,
+ * check the others to make sure that the key doesn't do something
+ * non-analogous elsewhere.  For instance, having "^R" map to "redraw screen"
+ * at article level and "reset .newsrc" (a drastic and unreversible action)
+ * at top level is a bad idea.
+ *
+ * [make emacs happy: "]
+ */
+
+/*
+ * Maximum chars (including null byte) needed to print a key name
+ * the longest name will probably something like SPACE
+ */
+#define MAXKEYLEN 10
 
 /* TODO: permanently move here from tin.h */
 #define ctrl(c)	((c) & 0x1F)
 #define ESC		27
 
-/*
- * Global keys
- */
-struct k_global {
-	t_keynode tag;							/* Stores name of this keygroup */
-	t_keynode PageUp;						/* ctrl('B') */
-	t_keynode PageDown;					/* ctrl('D') */
-	t_keynode PageDown2;					/* ctrl('F') */
-	t_keynode RedrawScr;					/* ctrl('L') */
-	t_keynode Down;						/* ctrl('N') */
-	t_keynode Postponed;					/* ctrl('O') */
-	t_keynode Up;							/* ctrl('P') */
-	t_keynode PageUp2;					/* ctrl('U') */
-	t_keynode Abort;						/* ESCAPE */
-	t_keynode PageDown3;					/* ' ' */
+/* TODO: get rid of these remaining #define */
+#define iKeyAbort ESC
+#define iKeyQuitTin 'Q'
+#define iKeyQuit 'q'
+
+/* complete list of functions which can be associated with keys */
+enum defined_functions {
+	NOT_ASSIGNED = 0,
+	DIGIT_0,
+	DIGIT_1,
+	DIGIT_2,
+	DIGIT_3,
+	DIGIT_4,
+	DIGIT_5,
+	DIGIT_6,
+	DIGIT_7,
+	DIGIT_8,
+	DIGIT_9,
+	SPECIAL_CATCHUP_LEFT,
+	SPECIAL_MOUSE_TOGGLE,
+	CONFIG_SELECT,
+	CONFIG_NO_SAVE,
+	FEED_ARTICLE,
+	FEED_THREAD,
+	FEED_HOT,
+	FEED_PATTERN,
+	FEED_TAGGED,
+	FEED_KEY_REPOST,
+	FEED_SUPERSEDE,
+	FILTER_EDIT,
+	FILTER_SAVE,
+	GLOBAL_ABORT,
+	GLOBAL_BUGREPORT,
+	GLOBAL_DISPLAY_POST_HISTORY,
+	GLOBAL_EDIT_FILTER,
+	GLOBAL_FIRST_PAGE,
+	GLOBAL_HELP,
+	GLOBAL_LAST_PAGE,
+	GLOBAL_LAST_VIEWED,
+	GLOBAL_LINE_DOWN,
+	GLOBAL_LINE_UP,
+	GLOBAL_LOOKUP_MESSAGEID,
+	GLOBAL_MENU_FILTER_KILL,
+	GLOBAL_MENU_FILTER_SELECT,
+	GLOBAL_OPTION_MENU,
+	GLOBAL_PAGE_DOWN,
+	GLOBAL_PAGE_UP,
+	GLOBAL_PIPE,
+	GLOBAL_POST,
+	GLOBAL_POSTPONED,
+#ifndef DISABLE_PRINTING
+	GLOBAL_PRINT,
+#endif /* !DISABLE_PRINTING */
+	GLOBAL_QUICK_FILTER_KILL,
+	GLOBAL_QUICK_FILTER_SELECT,
+	GLOBAL_QUIT,
+	GLOBAL_QUIT_TIN,
+	GLOBAL_REDRAW_SCREEN,
+	GLOBAL_SCROLL_DOWN,
+	GLOBAL_SCROLL_UP,
+	GLOBAL_SEARCH_BODY,
+	GLOBAL_SEARCH_REPEAT,
+	GLOBAL_SEARCH_AUTHOR_BACKWARD,
+	GLOBAL_SEARCH_AUTHOR_FORWARD,
+	GLOBAL_SEARCH_SUBJECT_BACKWARD,
+	GLOBAL_SEARCH_SUBJECT_FORWARD,
+	GLOBAL_SET_RANGE,
 #ifndef NO_SHELL_ESCAPE
-	t_keynode ShellEscape;				/* '!' */
-#endif /* !NO_SHELL_ESCAPE */
-	t_keynode SetRange;					/* '#' */
-	t_keynode LastPage;					/* '$' */
+	GLOBAL_SHELL_ESCAPE,
+#endif /* NO_SHELL_ESCAPE */
 #ifdef HAVE_COLOR
-	t_keynode ToggleColor;				/* '&' */
+	GLOBAL_TOGGLE_COLOR,
 #endif /* HAVE_COLOR */
-	t_keynode LastViewed;				/* '-' */
-	t_keynode SearchSubjF;				/* '/' */
-	t_keynode Zero;
-	t_keynode One;
-	t_keynode Two;
-	t_keynode Three;
-	t_keynode Four;
-	t_keynode Five;
-	t_keynode Six;
-	t_keynode Seven;
-	t_keynode Eight;
-	t_keynode Nine;
-	t_keynode SearchSubjB;				/* '?' */
-	t_keynode SearchRepeat;				/* '\\' */
-	t_keynode SearchAuthB;				/* 'A' */
-	t_keynode SearchBody;				/* 'B' */
-	t_keynode ToggleHelpDisplay;		/* 'H' */
-	t_keynode ToggleInverseVideo;		/* 'I' */
-	t_keynode LookupMessage;			/* 'L' */
-	t_keynode OptionMenu;				/* 'M' */
-	t_keynode Postponed2;				/* 'O' */
-	t_keynode QuitTin;					/* 'Q' */
-	t_keynode DisplayPostHist;			/* 'W' */
-	t_keynode FirstPage;					/* '^' */
-	t_keynode SearchAuthF;				/* 'a' */
-	t_keynode PageUp3;					/* 'b' */
-	t_keynode Help;						/* 'h' */
-	t_keynode ToggleInfoLastLine;		/* 'i' */
-	t_keynode Down2;						/* 'j' */
-	t_keynode Up2;							/* 'k' */
-#ifndef DISABLE_PRINTING
-	t_keynode Print;						/* 'o' */
-#endif /* !DISABLE_PRINTING */
-	t_keynode Quit;						/* 'q' */
-	t_keynode Version;					/* 'v' */
-	t_keynode Post;						/* 'w' */
-	t_keynode Pipe;						/* '|' */
-	t_keynode ScrollUp;					/* '<' */
-	t_keynode ScrollDown;					/* '>' */
-	t_keynode CatchupLeft;				/* special, for internal use only */
-	t_keynode MouseToggle;				/* special, for internal use only */
-	t_keynode null;						/* End of group */
-};
-
-struct k_config {
-	t_keynode tag;							/* Stores name of this keygroup */
-	t_keynode FirstPage2;
-	t_keynode LastPage2;
-	t_keynode NoSave;
-	t_keynode Select;
-	t_keynode Select2;
-	t_keynode null;
-};
-
-struct k_feed {
-	t_keynode tag;							/* Stores name of this keygroup */
-	t_keynode Art;
-	t_keynode Hot;
-	t_keynode Pat;
-	t_keynode Repost;
-	t_keynode Supersede;
-	t_keynode Tag;
-	t_keynode Thd;
-	t_keynode null;
-};
-
-struct k_filter {
-	t_keynode tag;							/* Stores name of this keygroup */
-	t_keynode Edit;
-	t_keynode Save;
-	t_keynode null;
-};
-
-struct k_group {
-	t_keynode tag;							/* Stores name of this keygroup */
-	t_keynode AutoSel;					/* ctrl('A') */
-	t_keynode NextUnreadArtOrGrp;		/* '\t' */
-	t_keynode ReadBasenote;				/* '\n' */
-	t_keynode Kill;						/* ctrl('K') */
-	t_keynode ReadBasenote2;			/* '\r' */
-	t_keynode SelThd;						/* '*' */
-	t_keynode DoAutoSel;					/* '+' */
-	t_keynode ToggleThdSel;				/* '.' */
-	t_keynode SelThdIfUnreadSelected;	/* ';' */
-	t_keynode SelPattern;				/* '=' */
-	t_keynode ReverseSel;				/* '@' */
-	t_keynode CatchupNextUnread;		/* 'C' */
-	t_keynode EditFilter;				/* 'E' */
-	t_keynode ToggleGetartLimit;		/* 'G' */
-	t_keynode MarkThdRead;				/* 'K' */
-	t_keynode NextUnreadArt;			/* 'N' */
-	t_keynode PrevUnreadArt;			/* 'P' */
-	t_keynode BugReport;					/* 'R' */
-	t_keynode AutoSave;			/* 'S' */
-	t_keynode TagParts;					/* 'T' */
-	t_keynode Untag;						/* 'U' */
-	t_keynode MarkUnselArtRead;		/* 'X' */
-	t_keynode MarkThdUnread;			/* 'Z' */
-	t_keynode QuickAutoSel;				/* '[' */
-	t_keynode QuickKill;					/* ']' */
-	t_keynode Catchup;					/* 'c' */
-	t_keynode ToggleSubjDisplay;		/* 'd' */
-	t_keynode Goto;						/* 'g' */
-	t_keynode ListThd;					/* 'l' */
-	t_keynode Mail;						/* 'm' */
-	t_keynode NextGroup;					/* 'n' */
-	t_keynode PrevGroup;					/* 'p' */
-	t_keynode ToggleReadUnread;		/* 'r' */
-	t_keynode Save;						/* 's' */
-	t_keynode Tag;							/* 't' */
-	t_keynode ToggleThreading;			/* 'u' */
-	t_keynode Repost;						/* 'x' */
-	t_keynode MarkArtUnread;			/* 'z' */
-	t_keynode UndoSel;					/* '~' */
-	t_keynode null;						/* End of group */
-};
-
-struct k_help {
-	t_keynode tag;
-	t_keynode FirstPage2;
-	t_keynode LastPage2;
-	t_keynode null;
-};
-
-struct k_markread {
-	t_keynode tag;
-	t_keynode Tag;
-	t_keynode Cur;
-	t_keynode null;
-};
-
-struct k_nrctbl {
-	t_keynode tag;
-	t_keynode Alternative;
-	t_keynode Create;
-	t_keynode Default;
-	t_keynode Quit;
-	t_keynode null;
-};
-
-struct k_page {
-	t_keynode tag;							/* Stores name of this keygroup */
-	t_keynode AutoSel;					/* ctrl('A') */
-	t_keynode ReplyQuoteHeaders;		/* ctrl('E') */
-#ifdef HAVE_PGP_GPG
-	t_keynode PGPCheckArticle;			/* ctrl('G') */
-#endif /* HAVE_PGP_GPG */
-	t_keynode ToggleHeaders;			/* ctrl('H') */
-	t_keynode NextUnread;				/* '\t' */
-	t_keynode NextThd;					/* '\n' */
-	t_keynode AutoKill;					/* ctrl('K') */
-	t_keynode NextThd2;					/* '\r' */
-	t_keynode ToggleTabs;				/* ctrl('T') */
-	t_keynode FollowupQuoteHeaders;	/* ctrl('W') */
-	t_keynode ToggleTex2iso;			/* '\"' */
-	t_keynode ToggleRot;					/* '%' */
-	t_keynode ToggleUue;					/* '(' */
-	t_keynode Reveal;						/* ')' */
-	t_keynode SkipIncludedText;		/* ':' */
-	t_keynode TopThd;						/* '<' */
-	t_keynode BotThd;						/* '>' */
-	t_keynode CatchupNextUnread;		/* 'C' */
-	t_keynode Cancel;						/* 'D' */
-	t_keynode EditFilter;				/* 'E' */
-	t_keynode Followup;					/* 'F' */
-	t_keynode LastPage2;					/* 'G' */
-	t_keynode KillThd;					/* 'K' */
-	t_keynode NextUnreadArt;			/* 'N' */
-	t_keynode PrevUnreadArt;			/* 'P' */
-	t_keynode Reply;						/* 'R' */
-	t_keynode AutoSave;			/* 'S' */
-	t_keynode GroupSel;					/* 'T' */
-	t_keynode ViewUrl;					/* 'U' */
-	t_keynode ViewAttach;				/* 'V' */
-	t_keynode MarkThdUnread;			/* 'Z' */
-	t_keynode QuickAutoSel;				/* '[' */
-	t_keynode QuickKill;					/* ']' */
-	t_keynode ToggleHighlight;			/* '_' */
-	t_keynode Catchup;					/* 'c' */
-	t_keynode EditArticle;				/* 'e' */
-	t_keynode FollowupQuote;			/* 'f' */
-	t_keynode FirstPage2;				/* 'g' */
-	t_keynode ListThd;					/* 'l' */
-	t_keynode Mail;						/* 'm' */
-	t_keynode NextArt;					/* 'n' */
-	t_keynode PrevArt;					/* 'p' */
-	t_keynode ReplyQuote;				/* 'r' */
-	t_keynode Save;						/* 's' */
-	t_keynode Tag;							/* 't' */
-	t_keynode GotoParent;				/* 'u' */
-	t_keynode Repost;						/* 'x' */
-	t_keynode MarkArtUnread;			/* 'z' */
-	t_keynode null;						/* End of group */
-};
-
-struct k_pgp {
-	t_keynode tag;
-	t_keynode EncSign;
-	t_keynode Encrypt;
-	t_keynode Includekey;
-	t_keynode Sign;
-	t_keynode null;
-};
-
-struct k_post {
-	t_keynode tag;
-	t_keynode Cancel;
-	t_keynode Edit;
+	GLOBAL_TOGGLE_HELP_DISPLAY,
+	GLOBAL_TOGGLE_INFO_LAST_LINE,
+	GLOBAL_TOGGLE_INVERSE_VIDEO,
+	GLOBAL_VERSION,
+	GROUP_AUTOSAVE,
+	GROUP_CATCHUP,
+	GROUP_CATCHUP_NEXT_UNREAD,
+	GROUP_DO_AUTOSELECT,
+	GROUP_GOTO,
+	GROUP_LIST_THREAD,
+	GROUP_MAIL,
+	GROUP_MARK_ARTICLE_UNREAD,
+	GROUP_MARK_THREAD_READ,
+	GROUP_MARK_THREAD_UNREAD,
+	GROUP_MARK_UNSELECTED_ARTICLES_READ,
+	GROUP_NEXT_GROUP,
+	GROUP_NEXT_UNREAD_ARTICLE,
+	GROUP_NEXT_UNREAD_ARTICLE_OR_GROUP,
+	GROUP_PREVIOUS_GROUP,
+	GROUP_PREVIOUS_UNREAD_ARTICLE,
+	GROUP_READ_BASENOTE,
+	GROUP_REPOST,
+	GROUP_REVERSE_SELECTIONS,
+	GROUP_SAVE,
+	GROUP_SELECT_PATTERN,
+	GROUP_SELECT_THREAD,
+	GROUP_SELECT_THREAD_IF_UNREAD_SELECTED,
+	GROUP_TAG,
+	GROUP_TAG_PARTS,
+	GROUP_TOGGLE_GET_ARTICLES_LIMIT,
+	GROUP_TOGGLE_READ_UNREAD,
+	GROUP_TOGGLE_SUBJECT_DISPLAY,
+	GROUP_TOGGLE_SELECT_THREAD,
+	GROUP_TOGGLE_THREADING,
+	GROUP_UNDO_SELECTIONS,
+	GROUP_UNTAG,
+	MARK_READ_CURRENT,
+	MARK_READ_TAGGED,
+	PAGE_AUTOSAVE,
+	PAGE_BOTTOM_THREAD,
+	PAGE_CANCEL,
+	PAGE_CATCHUP,
+	PAGE_CATCHUP_NEXT_UNREAD,
+	PAGE_EDIT_ARTICLE,
+	PAGE_FOLLOWUP,
+	PAGE_FOLLOWUP_QUOTE,
+	PAGE_FOLLOWUP_QUOTE_HEADERS,
+	PAGE_GOTO_PARENT,
+	PAGE_GROUP_SELECT,
+	PAGE_LIST_THREAD,
+	PAGE_MAIL,
+	PAGE_MARK_ARTICLE_UNREAD,
+	PAGE_MARK_THREAD_READ,
+	PAGE_MARK_THREAD_UNREAD,
+	PAGE_NEXT_ARTICLE,
+	PAGE_NEXT_THREAD,
+	PAGE_NEXT_UNREAD,
+	PAGE_NEXT_UNREAD_ARTICLE,
+	PAGE_PAGE_DOWN3,	/* special handling at page.c */
 #ifdef HAVE_PGP_GPG
-	t_keynode PGP;
+	PAGE_PGP_CHECK_ARTICLE,
 #endif /* HAVE_PGP_GPG */
+	PAGE_PREVIOUS_ARTICLE,
+	PAGE_PREVIOUS_UNREAD_ARTICLE,
+	PAGE_REVEAL,
+	PAGE_REPLY,
+	PAGE_REPLY_QUOTE,
+	PAGE_REPLY_QUOTE_HEADERS,
+	PAGE_REPOST,
+	PAGE_SAVE,
+	PAGE_SKIP_INCLUDED_TEXT,
+	PAGE_TAG,
+	PAGE_TOGGLE_HEADERS,
+	PAGE_TOGGLE_HIGHLIGHTING,
+	PAGE_TOGGLE_ROT13,
+	PAGE_TOGGLE_TABS,
+	PAGE_TOGGLE_TEX2ISO,
+	PAGE_TOGGLE_UUE,
+	PAGE_TOP_THREAD,
+	PAGE_VIEW_ATTACHMENTS,
+	PAGE_VIEW_URL,
+	PGP_KEY_ENCRYPT,
+	PGP_KEY_ENCRYPT_SIGN,
+	PGP_INCLUDE_KEY,
+	PGP_KEY_SIGN,
+	POST_ABORT,
+	POST_CANCEL,
+	POST_CONTINUE,
+	POST_EDIT,
+	POST_IGNORE_FUPTO,
 #ifdef HAVE_ISPELL
-	t_keynode Ispell;
+	POST_ISPELL,
 #endif /* HAVE_ISPELL */
-	t_keynode Abort;
-	t_keynode Continue;
-	t_keynode Ignore;
-	t_keynode Mail;
-	t_keynode Post2;
-	t_keynode Post3;
-	t_keynode Postpone;
-	t_keynode Send;
-	t_keynode Send2;
-	t_keynode Supersede;
-	t_keynode null;
-};
-
-struct k_postpone {
-	t_keynode tag;
-	t_keynode All;
-	t_keynode Override;
-	t_keynode null;
-};
-
-struct k_pproc {
-	t_keynode tag;
-	t_keynode No;
-	t_keynode Shar;
-	t_keynode Yes;
-	t_keynode null;
-};
-
-struct k_prompt {
-	t_keynode tag;
-	t_keynode No;
-	t_keynode Yes;
-	t_keynode null;
-};
-
-struct k_save {
-	t_keynode tag;
-	t_keynode AppendFile;
-	t_keynode OverwriteFile;
-	t_keynode null;
-};
-
-struct k_select {
-	t_keynode tag;							/* Stores name of this keygroup */
-	t_keynode EnterNextUnreadGrp;		/* '\t' */
-	t_keynode ReadGrp;					/* '\n' */
-	t_keynode ReadGrp2;					/* '\r' */
-	t_keynode ResetNewsrc;				/* ctrl('R') */
-	t_keynode SortActive;				/* '.' */
-	t_keynode CatchupNextUnread;		/* 'C' */
-	t_keynode NextUnreadGrp;			/* 'N' */
-	t_keynode BugReport;					/* 'R' */
-	t_keynode SubscribePat;				/* 'S' */
-	t_keynode UnsubscribePat;			/* 'U' */
-	t_keynode QuitNoWrite;				/* 'X' */
-	t_keynode SyncWithActive;			/* 'Y' */
-	t_keynode MarkGrpUnread2;			/* 'Z' */
-	t_keynode Catchup;					/* 'c' */
-	t_keynode ToggleDescriptions;		/* 'd' */
-	t_keynode Goto;						/* 'g' */
-	t_keynode MoveGrp;					/* 'm' */
-	t_keynode EnterNextUnreadGrp2;	/* 'n' */
-	t_keynode ToggleReadDisplay;		/* 'r' */
-	t_keynode Subscribe;					/* 's' */
-	t_keynode Unsubscribe;				/* 'u' */
-	t_keynode YankActive;				/* 'y' */
-	t_keynode MarkGrpUnread;			/* 'z' */
-	t_keynode null;						/* End of group */
-};
-
-struct k_thread {
-	t_keynode tag;							/* Stores name of this keygroup */
-	t_keynode ReadNextArtOrThread;	/* '\t' */
-	t_keynode ReadArt;					/* '\n' */
-	t_keynode ReadArt2;					/* '\r' */
-	t_keynode SelArt;						/* '*' */
-	t_keynode ToggleArtSel;				/* '.' */
-	t_keynode ReverseSel;				/* '@' */
-	t_keynode CatchupNextUnread;		/* 'C' */
-	t_keynode MarkArtRead;				/* 'K' */
-	t_keynode BugReport;					/* 'R' */
-	t_keynode AutoSave;			/* 'S' */
-	t_keynode Untag;						/* 'U' */
-	t_keynode MarkThdUnread;			/* 'Z' */
-	t_keynode Catchup;					/* 'c' */
-	t_keynode ToggleSubjDisplay;		/* 'd' */
-	t_keynode Mail;						/* 'm' */
-	t_keynode Save;						/* 's' */
-	t_keynode Tag;							/* 't' */
-	t_keynode MarkArtUnread;			/* 'z' */
-	t_keynode UndoSel;					/* '~' */
-	t_keynode null;						/* End of group */
-};
-
-struct keymap {
-	struct k_global Global;
-	struct k_config Config;
-	struct k_feed Feed;
-	struct k_filter Filter;
-	struct k_group Group;
-	struct k_help Help;
-	struct k_markread MarkRead;
-	struct k_nrctbl Nrctbl;
-	struct k_page Page;
-	struct k_pgp Pgp;
-	struct k_post Post;
-	struct k_postpone Postpone;
-	struct k_pproc PProc;
-	struct k_prompt Prompt;
-	struct k_save Save;
-	struct k_select Select;
-	struct k_thread Thread;
-};
-
+	POST_MAIL,
+#ifdef HAVE_PGP_GPG
+	POST_PGP,
+#endif /* HAVE_PGP_GPG */
+	POST_POSTPONE,
+	POST_SEND,
+	POST_SUPERSEDE,
+	POSTPONE_ALL,
+	POSTPONE_OVERRIDE,
+	POSTPROCESS_NO,
+	POSTPROCESS_SHAR,
+	POSTPROCESS_YES,
+	PROMPT_NO,
+	PROMPT_YES,
+	SAVE_APPEND_FILE,
+	SAVE_OVERWRITE_FILE,
+	SELECT_CATCHUP,
+	SELECT_CATCHUP_NEXT_UNREAD,
+	SELECT_ENTER_GROUP,
+	SELECT_ENTER_NEXT_UNREAD_GROUP,
+	SELECT_GOTO,
+	SELECT_MARK_GROUP_UNREAD,
+	SELECT_MOVE_GROUP,
+	SELECT_NEXT_UNREAD_GROUP,
+	SELECT_RESET_NEWSRC,
+	SELECT_SORT_ACTIVE,
+	SELECT_SUBSCRIBE,
+	SELECT_SUBSCRIBE_PATTERN,
+	SELECT_SYNC_WITH_ACTIVE,
+	SELECT_TOGGLE_DESCRIPTIONS,
+	SELECT_TOGGLE_READ_DISPLAY,
+	SELECT_UNSUBSCRIBE,
+	SELECT_UNSUBSCRIBE_PATTERN,
+	SELECT_QUIT_NO_WRITE,
+	SELECT_YANK_ACTIVE,
+	THREAD_AUTOSAVE,
+	THREAD_CATCHUP,
+	THREAD_CATCHUP_NEXT_UNREAD,
+	THREAD_MAIL,
+	THREAD_MARK_ARTICLE_READ,
+	THREAD_MARK_ARTICLE_UNREAD,
+	THREAD_MARK_THREAD_UNREAD,
+	THREAD_READ_NEXT_ARTICLE_OR_THREAD,
+	THREAD_READ_ARTICLE,
+	THREAD_REVERSE_SELECTIONS,
+	THREAD_SAVE,
+	THREAD_SELECT_ARTICLE,
+	THREAD_TAG,
+	THREAD_TOGGLE_ARTICLE_SELECTION,
+	THREAD_TOGGLE_SUBJECT_DISPLAY,
+	THREAD_UNDO_SELECTIONS,
+	THREAD_UNTAG
+};
+typedef enum defined_functions t_function;
+
+
+struct keynode {
+	char key;
+	t_function function;
+};
+
+
+struct keylist {
+	struct keynode *list;
+	size_t used;
+	size_t max;
+};
+
+
+extern struct keylist feed_post_process_keys;
+extern struct keylist feed_supersede_article_keys;
+extern struct keylist feed_type_keys;
+extern struct keylist filter_keys;
+extern struct keylist group_keys;
+extern struct keylist info_keys;
+extern struct keylist mark_read_keys;
+extern struct keylist option_menu_keys;
+extern struct keylist page_keys;
+#ifdef HAVE_PGP_GPG
+	extern struct keylist pgp_mail_keys;
+	extern struct keylist pgp_news_keys;
+#endif /* HAVE_PGP_GPG */
+extern struct keylist post_cancel_keys;
+extern struct keylist post_continue_keys;
+extern struct keylist post_delete_keys;
+extern struct keylist post_edit_keys;
+extern struct keylist post_edit_ext_keys;
+extern struct keylist post_ignore_fupto_keys;
+extern struct keylist post_mail_fup_keys;
+extern struct keylist post_post_keys;
+extern struct keylist post_postpone_keys;
+extern struct keylist post_send_keys;
+extern struct keylist prompt_keys;
+extern struct keylist save_append_overwrite_keys;
+extern struct keylist select_keys;
+extern struct keylist thread_keys;
+
+
+extern t_function key_to_func (const char key, struct keylist keys);
+extern char func_to_key (t_function func, struct keylist keys);
+extern t_function handle_keypad(
+	t_function (*left_action) (void),
+	t_function (*right_action) (void),
+	t_function (*mouse_action) (
+		t_function (*left_action) (void),
+		t_function (*right_action) (void)),
+	const struct keylist keys);
+extern t_function global_mouse_action(
+	t_function (*left_action) (void),
+	t_function (*right_action) (void));
+extern t_function prompt_slk_response(t_function default_func, struct keylist keys, const char *fmt, ...);
 #endif /* !KEYMAP_H */
diff -Nurp tin-1.7.7/include/menukeys.h tin-1.7.8/include/menukeys.h
--- tin-1.7.7/include/menukeys.h	Tue Nov 16 14:26:45 2004
+++ tin-1.7.8/include/menukeys.h	Thu Jan  1 01:00:00 1970
@@ -1,463 +0,0 @@
-/*
- *  Project   : tin - a Usenet reader
- *  Module    : menukeys.h
- *  Author    : S.Robbins
- *  Created   : 1994-08-15
- *  Updated   : 2004-11-16
- *  Notes     :
- *
- * Copyright (c) 1994-2004 Steve Robbins <stever@cs.mcgill.ca>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote
- *    products derived from this software without specific prior written
- *    permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
- * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-
-#ifndef MENUKEYS_H
-#	define MENUKEYS_H 1
-
-/* Revised 9 October 1996 by Branden Robinson in ASCII order
- *
- *        Oct   Dec   Hex   Char           Oct   Dec   Hex   Char
- *        ------------------------------------------------------------
- *        000   0     00    NUL '\0'       100   64    40    @
- *        001   1     01    SOH      ^A    101   65    41    A
- *        002   2     02    STX      ^B    102   66    42    B
- *        003   3     03    ETX      ^C    103   67    43    C
- *        004   4     04    EOT      ^D    104   68    44    D
- *        005   5     05    ENQ      ^E    105   69    45    E
- *        006   6     06    ACK      ^F    106   70    46    F
- *        007   7     07    BEL '\a' ^G    107   71    47    G
- *        010   8     08    BS  '\b' ^H    110   72    48    H
- *        011   9     09    HT  '\t' ^I    111   73    49    I
- *        012   10    0A    LF  '\n' ^J    112   74    4A    J
- *        013   11    0B    VT  '\v' ^K    113   75    4B    K
- *        014   12    0C    FF  '\f' ^L    114   76    4C    L
- *        015   13    0D    CR  '\r' ^M    115   77    4D    M
- *        016   14    0E    SO       ^N    116   78    4E    N
- *        017   15    0F    SI       ^O    117   79    4F    O
- *        020   16    10    DLE      ^P    120   80    50    P
- *        021   17    11    DC1      ^Q    121   81    51    Q
- *        022   18    12    DC2      ^R    122   82    52    R
- *        023   19    13    DC3      ^S    123   83    53    S
- *        024   20    14    DC4      ^T    124   84    54    T
- *        025   21    15    NAK      ^U    125   85    55    U
- *        026   22    16    SYN      ^V    126   86    56    V
- *        027   23    17    ETB      ^W    127   87    57    W
- *        030   24    18    CAN      ^X    130   88    58    X
- *        031   25    19    EM       ^Y    131   89    59    Y
- *        032   26    1A    SUB      ^Z    132   90    5A    Z
- *        033   27    1B    ESC            133   91    5B    [
- *        034   28    1C    FS             134   92    5C    \   '\\'
- *        035   29    1D    GS             135   93    5D    ]
- *        036   30    1E    RS             136   94    5E    ^
- *        037   31    1F    US             137   95    5F    _
- *        040   32    20    SPACE          140   96    60    `
- *        041   33    21    !              141   97    61    a
- *        042   34    22    "              142   98    62    b
- *        043   35    23    #              143   99    63    c
- *        044   36    24    $              144   100   64    d
- *        045   37    25    %              145   101   65    e
- *        046   38    26    &              146   102   66    f
- *        047   39    27    '              147   103   67    g
- *        050   40    28    (              150   104   68    h
- *        051   41    29    )              151   105   69    i
- *        052   42    2A    *              152   106   6A    j
- *        053   43    2B    +              153   107   6B    k
- *        054   44    2C    ,              154   108   6C    l
- *        055   45    2D    -              155   109   6D    m
- *        056   46    2E    .              156   110   6E    n
- *        057   47    2F    /              157   111   6F    o
- *        060   48    30    0              160   112   70    p
- *        061   49    31    1              161   113   71    q
- *        062   50    32    2              162   114   72    r
- *        063   51    33    3              163   115   73    s
- *        064   52    34    4              164   116   74    t
- *        065   53    35    5              165   117   75    u
- *        066   54    36    6              166   118   76    v
- *        067   55    37    7              167   119   77    w
- *        070   56    38    8              170   120   78    x
- *        071   57    39    9              171   121   79    y
- *        072   58    3A    :              172   122   7A    z
- *        073   59    3B    ;              173   123   7B    {
- *        074   60    3C    <              174   124   7C    |
- *        075   61    3D    =              175   125   7D    }
- *        076   62    3E    >              176   126   7E    ~
- *        077   63    3F    ?              177   127   7F    DEL
- *
- * Above chart reprinted from Linux manual page.
- *
- * When adding key functionality, be aware of key functions in the "big five"
- * levels of tin operation: top (group selection), group, thread, article
- * (pager), and help.  If possible, when adding a key to any of these levels,
- * check the others to make sure that the key doesn't do something
- * non-analogous elsewhere.  For instance, having "^R" map to "redraw screen"
- * at article level and "reset .newsrc" (a drastic and unreversible action)
- * at top level is a bad idea.
- *
- * [make emacs happy: "]
- */
-
-/*
- * Maximum chars (including null byte) needed to print a key name
- * the longest name will probably something like SPACE
- */
-#define MAXKEYLEN 10
-
-/*
- * Global keys
- */
-
-/* Internal use only - Need only be an invalid untypable key value */
-#define iKeyCatchupLeft 0x80	/* These two must be in mutually exclusive menus */
-#define iKeyMouseToggle	0x80
-
-#define iKeyAbort ESC
-#define iKeyPageDown3 ' '
-#ifndef NO_SHELL_ESCAPE
-#	define iKeyShellEscape '!'
-#endif /* !NO_SHELL_ESCAPE */
-#define iKeySetRange '#'
-#define iKeyLastPage '$'
-#define iKeyToggleColor '&'
-#define iKeyLastViewed '-'
-#define iKeySearchRepeat '\\'
-#define iKeySearchSubjF '/'
-#define iKeySearchSubjB '?'
-#define iKeySearchAuthB 'A'
-#define iKeySearchBody 'B'
-#define iKeyToggleHelpDisplay 'H'
-#define iKeyToggleInverseVideo 'I'
-#define iKeyLookupMessage 'L'
-#define iKeyOptionMenu 'M'
-#define iKeyPostponed2 'O'
-#define iKeyQuitTin 'Q'
-#define iKeyDisplayPostHist 'W'
-#define iKeyFirstPage '^'
-#define iKeySearchAuthF 'a'
-#define iKeyPageUp3 'b'
-#define iKeyHelp 'h'
-#define iKeyToggleInfoLastLine 'i'
-#define iKeyDown2 'j'
-#define iKeyUp2 'k'
-#define iKeyPrint 'o'
-#define iKeyQuit 'q'
-#define iKeyVersion 'v'
-#define iKeyPost 'w'
-#define iKeyPipe '|'
-#define iKeyScrollUp '<'
-#define iKeyScrollDown '>'
-#define iKeyPageUp ctrl('B')
-#define iKeyPageDown ctrl('D')
-#define iKeyPageDown2 ctrl('F')
-#define iKeyRedrawScr ctrl('L')
-#define iKeyDown ctrl('N')
-#define iKeyPostponed ctrl('O')
-#define iKeyUp ctrl('P')
-#define iKeyPageUp2 ctrl('U')
-
-/* config.c */
-
-#define iKeyConfigSelect '\n'
-#define iKeyConfigSelect2 '\r'
-#define iKeyConfigLastPage2 'G'
-#define iKeyConfigNoSave 'Q'
-#define iKeyConfigFirstPage2 'g'
-
-/* feed.c */
-
-#define iKeyFeedTag 'T'
-#define iKeyFeedArt 'a'
-#define iKeyFeedHot 'h'
-#define iKeyFeedPat 'p'
-#define iKeyFeedRepost 'r'
-#define iKeyFeedSupersede 's'
-#define iKeyFeedThd 't'
-
-/* filter.c */
-
-#define iKeyFilterEdit 'e'
-#define iKeyFilterSave 's'
-
-/* group.c */
-
-#define iKeyGroupAutoSel ctrl('A')
-#define iKeyGroupNextUnreadArtOrGrp '\t'
-#define iKeyGroupReadBasenote '\n'
-#define iKeyGroupKill ctrl('K')
-#define iKeyGroupReadBasenote2 '\r'
-#define iKeyGroupSelThd '*'
-#define iKeyGroupDoAutoSel '+'
-#define iKeyGroupToggleThdSel '.'
-/* digits 0-9 in use */
-#define iKeyGroupSelThdIfUnreadSelected ';'
-#define iKeyGroupSelPattern '='
-#define iKeyGroupReverseSel '@'
-#define iKeyGroupCatchupNextUnread 'C'
-#define iKeyGroupEditFilter 'E'
-#define iKeyGroupToggleGetartLimit 'G'
-#define iKeyGroupMarkThdRead 'K'
-#define iKeyGroupNextUnreadArt 'N'
-#define iKeyGroupPrevUnreadArt 'P'
-#define iKeyGroupBugReport 'R'
-#define iKeyGroupAutoSave 'S'
-#define iKeyGroupTagParts 'T'
-#define iKeyGroupUntag 'U'
-#define iKeyGroupMarkUnselArtRead 'X'
-#define iKeyGroupMarkThdUnread 'Z'
-#define iKeyGroupQuickAutoSel '['
-#define iKeyGroupQuickKill ']'
-#define iKeyGroupCatchup 'c'
-#define iKeyGroupToggleSubjDisplay 'd'
-#define iKeyGroupGoto 'g'
-#define iKeyGroupListThd 'l'
-#define iKeyGroupMail 'm'
-#define iKeyGroupNextGroup 'n'
-#ifndef DISABLE_PRINTING
-#	define iKeyPrint 'o'
-#endif /* !DISABLE_PRINTING */
-#define iKeyGroupPrevGroup 'p'
-#define iKeyGroupToggleReadUnread 'r'
-#define iKeyGroupSave 's'
-#define iKeyGroupTag 't'
-#define iKeyGroupToggleThreading 'u'
-#define iKeyGroupRepost 'x'
-#define iKeyGroupMarkArtUnread 'z'
-#define iKeyGroupUndoSel '~'
-
-/* help.c */
-
-#define iKeyHelpLastPage2 'G'
-#define iKeyHelpFirstPage2 'g'
-/* all other keys exit help */
-
-/* nrctbl.c */
-
-#define iKeyNrctblCreate 'c'
-#define iKeyNrctblDefault 'd'
-#define iKeyNrctblAlternative 'a'
-#define iKeyNrctblQuit 'q'
-
-/* page.c */
-
-#define iKeyPageAutoSel ctrl('A')
-#define iKeyPageReplyQuoteHeaders ctrl('E')
-#ifdef HAVE_PGP_GPG
-#	define iKeyPagePGPCheckArticle ctrl('G')
-#endif /* HAVE_PGP_GPG */
-#define iKeyPageToggleHeaders ctrl('H')
-#define iKeyPageNextUnread '\t'
-#define iKeyPageNextThd '\n'
-#define iKeyPageAutoKill ctrl('K')
-#define iKeyPageNextThd2 '\r'
-#define iKeyPageToggleTabs ctrl('T')
-#define iKeyPageFollowupQuoteHeaders ctrl('W')
-#define iKeyPageToggleTex2iso '\"'
-#define iKeyPageToggleRot '%'
-#define iKeyPageToggleUue '('
-#define iKeyPageReveal ')'
-/* digits 0-9 in use */
-#define iKeyPageSkipIncludedText ':'
-#define iKeyPageTopThd '<'
-#define iKeyPageBotThd '>'
-#define iKeyPageCatchupNextUnread 'C'
-#define iKeyPageCancel 'D'
-#define iKeyPageEditFilter 'E'
-#define iKeyPageFollowup 'F'
-#define iKeyPageLastPage 'G'
-#define iKeyPageKillThd 'K'
-#define iKeyPageNextUnreadArt 'N'
-#define iKeyPagePrevUnreadArt 'P'
-#define iKeyPageReply 'R'
-#define iKeyPageAutoSave 'S'
-#define iKeyPageGroupSel 'T'
-#define iKeyPageViewUrl 'U'
-#define iKeyPageViewAttach 'V'
-#define iKeyPageMarkThdUnread 'Z'
-#define iKeyPageQuickAutoSel '['		/* Merge with same keys in Group ? */
-#define iKeyPageQuickKill ']'
-#define iKeyPageToggleHighlight '_'
-#define iKeyPageCatchup 'c'
-#define iKeyPageEditArticle 'e'
-#define iKeyPageFollowupQuote 'f'
-#define iKeyPageFirstPage 'g'
-#define iKeyPageListThd 'l'
-#define iKeyPageMail 'm'
-#define iKeyPageNextArt 'n'
-#define iKeyPagePrevArt 'p'
-#define iKeyPageReplyQuote 'r'
-#define iKeyPageSave 's'
-#define iKeyPageTag 't'
-#define iKeyPageGotoParent 'u'
-#define iKeyPageRepost 'x'
-#define iKeyPageMarkArtUnread 'z'
-
-/* pgp.c */
-
-#define iKeyPgpEncSign 'b'
-#define iKeyPgpEncrypt 'e'
-#define iKeyPgpIncludekey 'i'
-#define iKeyPgpSign 's'
-
-/* post.c */
-
-#define iKeyPostCancel 'd'
-#define iKeyPostEdit 'e'
-#ifdef HAVE_PGP_GPG
-#	define iKeyPostPGP 'g'
-#endif /* HAVE_PGP_GPG */
-#ifdef HAVE_ISPELL
-#	define iKeyPostIspell 'i'
-#endif /* HAVE_ISPELL */
-#define iKeyPostContinue 'c'
-#define iKeyPostAbort 'a'
-#define iKeyPostIgnore 'i'
-#define iKeyPostMail 'm'
-#define iKeyPostPost2 'y'
-#define iKeyPostPost3 'p'
-#define iKeyPostSend 's'
-#define iKeyPostSend2 'y'
-#define iKeyPostSupersede 's'
-#define iKeyPostPostpone 'o'
-#define iKeyPostponeOverride 'Y'
-#define iKeyPostponeAll 'A'
-
-/* prompt.c */
-
-#define iKeyPromptYes 'y'
-#define iKeyPromptNo 'n'
-
-/* save.c */
-
-#define iKeySaveAppendFile 'a'
-#define iKeySaveOverwriteFile 'o'
-#define iKeyPProcNo 'n'
-#define iKeyPProcShar 's'
-#define iKeyPProcYes 'y'
-
-/* select.c */
-
-#define iKeySelectEnterNextUnreadGrp '\t'
-#define iKeySelectReadGrp '\n'
-#define iKeySelectReadGrp2 '\r'
-#define iKeySelectResetNewsrc ctrl('R')
-#define iKeySelectSortActive '.'
-#define iKeySelectCatchupNextUnread 'C'
-#define iKeySelectNextUnreadGrp 'N'
-#define iKeySelectBugReport 'R'
-#define iKeySelectSubscribePat 'S'
-#define iKeySelectUnsubscribePat 'U'
-#define iKeySelectQuitNoWrite 'X'
-#define iKeySelectSyncWithActive 'Y'
-#define iKeySelectMarkGrpUnread2 'Z'
-#define iKeySelectCatchup 'c'
-#define iKeySelectToggleDescriptions 'd'
-#define iKeySelectGoto 'g'
-#define iKeySelectMoveGrp 'm'
-#define iKeySelectEnterNextUnreadGrp2 'n'
-#define iKeySelectToggleReadDisplay 'r'
-#define iKeySelectSubscribe 's'
-#define iKeySelectUnsubscribe 'u'
-#define iKeySelectYankActive 'y'
-#define iKeySelectMarkGrpUnread 'z'
-
-/* thread.c */
-
-#define iKeyThreadReadNextArtOrThread '\t'
-#define iKeyThreadReadArt '\n'
-#define iKeyThreadReadArt2 '\r'
-#define iKeyThreadSelArt '*'
-#define iKeyThreadToggleArtSel '.'
-/* digits 0-9 in use */
-#define iKeyThreadReverseSel '@'
-#define iKeyThreadCatchupNextUnread 'C'
-#define iKeyThreadMarkArtRead 'K'
-#define iKeyThreadBugReport 'R'
-#define iKeyThreadAutoSave 'S'
-#define iKeyThreadUntag 'U'
-#define iKeyThreadMarkThdUnread 'Z'
-#define iKeyThreadCatchup 'c'
-#define iKeyThreadToggleSubjDisplay 'd'
-#define iKeyThreadMail 'm'
-#define iKeyThreadSave 's'
-#define iKeyThreadTag 't'
-#define iKeyThreadMarkArtUnread 'z'
-#define iKeyThreadUndoSel '~'
-
-#define iKeyMarkReadTag 't'
-#define iKeyMarkReadCur 'c'
-
-typedef struct kn {
-	const unsigned char defaultkey;	/* The default key definition */
-	unsigned char localkey;				/* The actual key definition */
-	const char *t;						/* Qualifier string in mapping file */
-} t_keynode;
-
-typedef struct mk {
-	t_keynode **keys;			/* valid keys in this menu */
-	char *defaultkeys;		/* all valid default keys in an array of char */
-	char *localkeys;			/* local keys in the same order as defaultkeys */
-} t_menukeys;
-
-typedef struct mkm {
-	/*
-	 * NOTE: If you prepend an entry, make sure you change the reference to
-	 * the first entry in keymap.c:build_keymaps() (menuptr), too.
-	 */
-	t_menukeys config_change;
-	t_menukeys feed_art_thread_regex_tag;
-	t_menukeys feed_post_process_type;
-	t_menukeys feed_supersede_article;
-	t_menukeys filter_quit_edit_save;
-	t_menukeys group_nav;
-	t_menukeys info_nav;
-	t_menukeys mark_read_tagged_current;
-	t_menukeys nrctbl_create;
-	t_menukeys page_nav;
-	t_menukeys pgp_mail;
-	t_menukeys pgp_news;
-	t_menukeys post_cancel;
-	t_menukeys post_cont;
-	t_menukeys post_delete;
-	t_menukeys post_edit;
-	t_menukeys post_edit_ext;
-	t_menukeys post_ignore_fupto;
-	t_menukeys post_mail_fup;
-	t_menukeys post_post;
-	t_menukeys post_postpone;
-	t_menukeys post_send;
-	t_menukeys prompt_yn;
-	t_menukeys save_append_overwrite_quit;
-	t_menukeys select_nav;
-	t_menukeys thread_nav;
-} t_menukeymap;
-
-extern int handle_keypad(int (*left_action) (void), int (*right_action) (void), const t_menukeys *menukeys);
-extern int prompt_slk_response(int ch_default, const t_menukeys *responses, const char *fmt, ...);
-extern int map_to_local(const char key, const t_menukeys *menukeys);
-extern int map_to_default(const char key, const t_menukeys *menukeys);
-extern t_menukeymap menukeymap;
-
-#endif /* !MENUKEYS_H */
diff -Nurp tin-1.7.7/include/newsrc.h tin-1.7.8/include/newsrc.h
--- tin-1.7.7/include/newsrc.h	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/include/newsrc.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-11-18
  *  Notes     : newsrc bit handling
  *
- * Copyright (c) 1997-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1997-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/nntplib.h tin-1.7.8/include/nntplib.h
--- tin-1.7.7/include/nntplib.h	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/include/nntplib.h	Wed Jan 19 11:20:56 2005
@@ -3,10 +3,10 @@
  *  Module    : nntplib.h
  *  Author    : I.Lea
  *  Created   : 1991-04-01
- *  Updated   : 2003-09-19
+ *  Updated   : 2005-01-19
  *  Notes     : nntp.h 1.5.11/1.6 with extensions for tin
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -88,6 +88,7 @@
 #endif /* 0 */
 
 #define	INF_HELP		100	/* Help text on way */
+#define	INF_CAPABILITIES	101	/* Capability list follows */
 #define	INF_AUTH		180	/* Authorization capabilities */
 #define	INF_DEBUG		199	/* Debug output */
 
diff -Nurp tin-1.7.7/include/oldconfig.h tin-1.7.8/include/oldconfig.h
--- tin-1.7.7/include/oldconfig.h	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/include/oldconfig.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2001-07-22
  *  Notes     : #defines to determine different OS capabilites
  *
- * Copyright (c) 1995-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1995-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/policy.h tin-1.7.8/include/policy.h
--- tin-1.7.7/include/policy.h	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/include/policy.h	Sun Jan 30 13:28:59 2005
@@ -6,7 +6,7 @@
  *  Updated   : 2004-01-02
  *  Notes     : #defines and static data for policy configuration
  *
- * Copyright (c) 1999-2004 Ralf Doeblitz <doeblitz@gmx.de>
+ * Copyright (c) 1999-2005 Ralf Doeblitz <doeblitz@gmx.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -205,6 +205,7 @@
  * .dd  former German Democratic Republic, now .de
  * .fx  France, Metropolitan
  * .yd  Democratic Yemen, now .ye
+ * .wg  West Bank and Gaza, now .ps
  * .zr  former Zaire, now .cd
  *
  * user-assigned code elements:
diff -Nurp tin-1.7.7/include/proto.h tin-1.7.8/include/proto.h
--- tin-1.7.7/include/proto.h	Fri Dec 10 17:54:36 2004
+++ tin-1.7.8/include/proto.h	Sun Mar 20 18:02:41 2005
@@ -3,10 +3,10 @@
  *  Module    : proto.h
  *  Author    : Urs Janssen <urs@tin.org>
  *  Created   :
- *  Updated   : 2004-12-08
+ *  Updated   : 2005-03-20
  *  Notes     :
  *
- * Copyright (c) 1997-2004 Urs Janssen <urs@tin.org>
+ * Copyright (c) 1997-2005 Urs Janssen <urs@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -38,6 +38,10 @@
 #ifndef PROTO_H
 #	define PROTO_H 1
 
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
+
 /* This fixes ambiguities on platforms that don't distinguish extern case */
 #ifdef CASE_PROBLEM
 #	define Raw tin_raw
@@ -151,7 +155,7 @@ extern void word_highlight_string(int ro
 /* debug.c */
 #ifdef DEBUG
 	extern void debug_delete_files(void);
-	extern void debug_nntp(const char *func, const char *line);
+	extern void debug_nntp(const char *func, const char *fmt, ...);
 	extern void debug_print_active(void);
 	extern void debug_print_arts(void);
 	extern void debug_print_filters(void);
@@ -245,7 +249,6 @@ extern void joinpath(char *result, const
 /* keymap.c */
 extern char *printascii(char *buf, int ch);
 extern t_bool read_keymap_file(void);
-extern void build_keymaps(void);
 extern void free_keymaps(void);
 
 /* langinfo.c */
@@ -475,7 +478,6 @@ extern t_bool user_posted_messages(void)
 extern void init_postinfo(void);
 extern void quick_post_article(t_bool postponed_only);
 #ifdef USE_CANLOCK
-	extern const char *build_cankey(const char *messageid, const char *secret);
 	extern const char *build_canlock(const char *messageid, const char *secret);
 	extern char *get_secret(void);
 #endif /* USE_CANLOCK */
@@ -484,7 +486,7 @@ extern void quick_post_article(t_bool po
 extern char *prompt_string_default(const char *prompt, char *def, const char *failtext, int history);
 extern char *sized_message(char **result, const char *format, const char *subject);
 extern int prompt_num(int ch, const char *prompt);
-extern int prompt_yn(int line, const char *prompt, t_bool default_answer);
+extern int prompt_yn(const char *prompt, t_bool default_answer);
 extern int prompt_msgid(void);
 extern t_bool prompt_default_string(const char *prompt, char *buf, int buf_len, char *default_prompt, int which_hist);
 extern t_bool prompt_menu_string(int line, const char *prompt, char *var);
@@ -552,12 +554,13 @@ extern void compose_mail_text_plain(cons
 extern int check_start_save_any_news(int function, t_bool catchup);
 extern t_bool create_path(const char *path);
 extern t_bool expand_save_filename(char *outpath, const char *path);
-extern t_bool post_process_files(int proc_type_ch, t_bool auto_delete);
+extern t_bool post_process_files(t_function proc_type_type, t_bool auto_delete);
 extern t_bool save_and_process_art(t_openartinfo *artinfo, struct t_article *artptr, t_bool is_mailbox, const char *inpath, int max, t_bool post_process);
 extern void decode_save_mime(t_openartinfo *art, t_bool postproc);
 extern void print_art_seperator_line(FILE *fp, t_bool is_mailbox);
 
 /* screen.c */
+extern char *fmt_message(const char *fmt, va_list ap);
 extern void center_line(int line, t_bool inverse, const char *str);
 extern void clear_message(void);
 extern void draw_arrow_mark(int line);
@@ -574,7 +577,7 @@ extern void wait_message(unsigned int sd
 
 /* search.c */
 extern int get_search_vectors(int *start, int *end);
-extern int search(int key, int current_art, t_bool forward, t_bool repeat);
+extern int search(t_function func, int current_art, t_bool repeat);
 extern int search_active(t_bool forward, t_bool repeat);
 extern int search_article(t_bool forward, t_bool repeat, int start_line, int lines, t_lineinfo *line, int reveal_ctrl_l_lines, FILE *fp);
 extern int search_config(t_bool forward, t_bool repeat, int current, int last);
@@ -593,7 +596,7 @@ extern void toggle_my_groups(const char 
 extern void msg_write_signature(FILE *fp, t_bool flag, struct t_group *thisgroup);
 
 /* signal.c */
-extern RETSIGTYPE(*sigdisp (int sig, RETSIGTYPE (*func)(SIG_ARGS))) (SIG_ARGS);
+extern RETSIGTYPE(*sigdisp (int signum, RETSIGTYPE (*func)(SIG_ARGS))) (SIG_ARGS);
 extern t_bool set_win_size(int *num_lines, int *num_cols);
 extern void allow_resize(t_bool allow);
 extern void handle_resize(t_bool repaint);
@@ -619,6 +622,9 @@ extern void str_lwr(char *str);
 #if !defined(HAVE_STRCASESTR) || defined(DECL_STRCASESTR)
 	extern const char *strcasestr(const char *haystack, const char *needle);
 #endif /* !HAVE_STRCASESTR || DECL_STRCASESTR */
+#if !defined(HAVE_STRSEP) || defined(DECL_SEP)
+	extern char *strsep(char **stringp, const char *delim);
+#endif /* !HAVE_STRSEP || DECL_STRSEP */
 #ifndef HAVE_STRPBRK
 	extern char *strpbrk(char *str1, char *str2);
 #endif /* !HAVE_STRPBRK */
diff -Nurp tin-1.7.7/include/rfc2046.h tin-1.7.8/include/rfc2046.h
--- tin-1.7.7/include/rfc2046.h	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/include/rfc2046.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-05-06
  *  Notes     : rfc2046 MIME article definitions
  *
- * Copyright (c) 2000-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 2000-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/stpwatch.h tin-1.7.8/include/stpwatch.h
--- tin-1.7.7/include/stpwatch.h	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/include/stpwatch.h	Thu Dec 30 14:40:50 2004
@@ -7,7 +7,7 @@
  *  Notes     : Simple stopwatch routines for timing code using timeb
  *	             or gettimeofday structs
  *
- * Copyright (c) 1993-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1993-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/tcurses.h tin-1.7.8/include/tcurses.h
--- tin-1.7.7/include/tcurses.h	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/include/tcurses.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-07-19
  *  Notes     : curses #include files, #defines & struct's
  *
- * Copyright (c) 1997-2004 Thomas Dickey <dickey@invisible-island.net>
+ * Copyright (c) 1997-2005 Thomas Dickey <dickey@invisible-island.net>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/tin.h tin-1.7.8/include/tin.h
--- tin-1.7.7/include/tin.h	Fri Dec 10 17:48:59 2004
+++ tin-1.7.8/include/tin.h	Mon Mar  7 16:23:23 2005
@@ -3,10 +3,10 @@
  *  Module    : tin.h
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-10-01
+ *  Updated   : 2005-03-07
  *  Notes     : #include files, #defines & struct's
  *
- * Copyright (c) 1997-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1997-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -787,6 +787,7 @@ enum rc_state { RC_IGNORE, RC_CHECK, RC_
 #define POSTPONED_FILE	"postponed.articles"
 #define SUBSCRIPTIONS_FILE	"subscriptions"
 #define NEWSGROUPS_FILE	"newsgroups"
+#define KEYMAP_FILE	"keymap"
 
 
 #ifdef USE_INN_NNTPLIB
@@ -1201,12 +1202,6 @@ enum {
 #define SORT_THREADS_BY_NOTHING			0
 #define SORT_THREADS_BY_SCORE_DESCEND	1
 #define SORT_THREADS_BY_SCORE_ASCEND	2
-
-/*
- * Search keys
- */
-#define SEARCH_SUBJ		1
-#define SEARCH_AUTH		2
 
 /*
  * Different values of strip_bogus - the ways to handle bogus groups
diff -Nurp tin-1.7.7/include/tinrc.h tin-1.7.8/include/tinrc.h
--- tin-1.7.7/include/tinrc.h	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/include/tinrc.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-06-06
  *  Notes     :
  *
- * Copyright (c) 1999-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 1999-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/tnntp.h tin-1.7.8/include/tnntp.h
--- tin-1.7.7/include/tnntp.h	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/include/tnntp.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-09-19
  *  Notes     : #include files, #defines & struct's
  *
- * Copyright (c) 1997-2004 Thomas Dickey <dickey@invisible-island.net>
+ * Copyright (c) 1997-2005 Thomas Dickey <dickey@invisible-island.net>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/trace.h tin-1.7.8/include/trace.h
--- tin-1.7.7/include/trace.h	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/include/trace.h	Thu Dec 30 14:40:50 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2002-11-10
  *  Notes     : Interface of trace.c
  *
- * Copyright (c) 1997-2004 Thomas Dickey <dickey@invisible-island.net>
+ * Copyright (c) 1997-2005 Thomas Dickey <dickey@invisible-island.net>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/include/version.h tin-1.7.8/include/version.h
--- tin-1.7.7/include/version.h	Wed Dec 15 16:56:35 2004
+++ tin-1.7.8/include/version.h	Mon Mar 21 13:44:03 2005
@@ -6,7 +6,7 @@
  *  Updated   : 2004-10-19
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -40,15 +40,15 @@
 
 #	define PRODUCT		"tin"
 #	ifndef TIN_AUTOCONF_H
-#		define VERSION		"1.7.7"
+#		define VERSION		"1.7.8"
 #	endif /* !TIN_AUTOCONF_H */
-#	define RELEASEDATE	"20041215"
-#	define RELEASENAME	"Scalpay"
+#	define RELEASEDATE	"20050321"
+#	define RELEASENAME	"Hellisay"
 /* config-file versions - must by dotted triples */
 #	define TINRC_VERSION	"1.3.7"
 #	define ATTRIBUTES_VERSION	"1.0.3"
 #	define FILTER_VERSION	"1.0.0"
-#	define KEYMAP_VERSION	"1.0.0"
+#	define KEYMAP_VERSION	"1.0.4"
 #	define SERVERCONFIG_VERSION	"1.0.0"
 
 #	ifdef VMS
Binary files tin-1.7.7/po/de.gmo and tin-1.7.8/po/de.gmo differ
diff -Nurp tin-1.7.7/po/de.po tin-1.7.8/po/de.po
--- tin-1.7.7/po/de.po	Wed Dec 15 16:48:24 2004
+++ tin-1.7.8/po/de.po	Mon Mar 21 11:43:03 2005
@@ -6,8 +6,8 @@
 #
 msgid	""
 msgstr	"Project-Id-Version: tin 1.7.7\n"
-	"POT-Creation-Date: 2004-12-15 16:47+0100\n"
-	"PO-Revision-Date: 2003-03-13 04:15+0200\n"
+	"POT-Creation-Date: 2005-03-21 11:42+0100\n"
+	"PO-Revision-Date: 2005-01-29 23:50+0100\n"
 	"Last-Translator: Sven Hartge <oweh@ds9.argh.org>, Kai Bojens "
 	"<kbojens@on-luebeck.de>\n"
 	"Language-Team: German <german-tin@ds9.argh.org>\n"
@@ -16,273 +16,273 @@ msgstr	"Project-Id-Version: tin 1.7.7\n"
 	"Content-Transfer-Encoding: 8bit\n"
 	"Report-Msgid-Bugs-To: \n"
 
-#: src/art.c:1447
+#: src/art.c:1455
 #, c-format
 msgid	"%d Bad overview record (%d fields) '%s'"
 msgstr	"%d Fehlerhafter Overview-Datensatz (%d Felder) '%s'"
 
-#: src/attrib.c:594
+#: src/attrib.c:604
 msgid	"# Do not edit this comment block\n"
 	"#\n"
 msgstr	"# Diesen Kommentarabschnitt nicht verändern\n"
 	"#\n"
 
-#: src/attrib.c:595
+#: src/attrib.c:605
 msgid	"#  scope=STRING (ie. alt.*,!alt.bin*) [mandatory]\n"
-msgstr	"#  scope=STRING  [notwendig]\n"
-	"#    Gültigkeitsbereich, zB. alt.*,!alt.bin*\n"
+msgstr	"#  scope=ZEICHENKETTE  [notwendig]\n"
+	"#    Gültigkeitsbereich, z.B. alt.*,!alt.bin*\n"
 
-#: src/attrib.c:596
+#: src/attrib.c:606
 msgid	"#  maildir=STRING (ie. ~/Mail)\n"
-msgstr	"#  maildir=STRING\n"
-	"#    Verzeichnis der Mailfolder, z.B. ~/Mail\n"
+msgstr	"#  maildir=ZEICHENKETTE\n"
+	"#    Verzeichnis der Mail-Ordner, z.B. ~/Mail\n"
 
-#: src/attrib.c:597
+#: src/attrib.c:607
 msgid	"#  savedir=STRING (ie. ~user/News)\n"
-msgstr	"#  savedir=STRING\n"
+msgstr	"#  savedir=ZEICHENKETTE\n"
 	"#    Verzeichnis zum Speichern, z.B. ~user/News\n"
 
-#: src/attrib.c:598
+#: src/attrib.c:608
 msgid	"#  savefile=STRING (ie. =linux)\n"
-msgstr	"#  savefile=STRING\n"
+msgstr	"#  savefile=ZEICHENKETTE\n"
 	"#    Datei zum Speichern, z.B. =linux\n"
 
-#: src/attrib.c:599
+#: src/attrib.c:609
 msgid	"#  sigfile=STRING (ie. $var/sig)\n"
-msgstr	"#  sigfile=STRING\n"
+msgstr	"#  sigfile=ZEICHENKETTE\n"
 	"#    Signatur, z.B. $var/sig\n"
 
-#: src/attrib.c:600
+#: src/attrib.c:610
 msgid	"#  organization=STRING (if beginning with '/' read from file)\n"
-msgstr	"#  organization=STRING\n"
+msgstr	"#  organization=ZEICHENKETTE\n"
 	"#    Organization-Header; ist das erste Zeichen ein '/', wird der\n"
 	"#    Wert aus dieser Datei gelesen.\n"
 
-#: src/attrib.c:601
+#: src/attrib.c:611
 msgid	"#  followup_to=STRING\n"
-msgstr	"#  followup_to=STRING\n"
+msgstr	"#  followup_to=ZEICHENKETTE\n"
 	"#    Voreinstellung für den Followup-To-Header\n"
 
-#: src/attrib.c:602
+#: src/attrib.c:612
 msgid	"#  mailing_list=STRING (ie. majordomo@example.org)\n"
-msgstr	"#  mailing_list=STRING\n"
+msgstr	"#  mailing_list=ZEICHENKETTE\n"
 	"#    Gruppe ist eine gegatete Mailingliste, z.B. majordomo@example.org\n"
 
-#: src/attrib.c:603
+#: src/attrib.c:613
 msgid	"#  x_headers=STRING (ie. ~/.tin/extra-headers)\n"
-msgstr	"#  x_headers=STRING\n"
+msgstr	"#  x_headers=ZEICHENKETTE\n"
 	"#    Zusätzliche Header, z.B. ~/.tin/extra-headers\n"
 
-#: src/attrib.c:604
+#: src/attrib.c:614
 msgid	"#  x_body=STRING (ie. ~/.tin/extra-body-text)\n"
-msgstr	"#  x_body=STRING\n"
+msgstr	"#  x_body=ZEICHENKETTE\n"
 	"#    Text wird automatisch zu Beginn des Artikels eingefügt,\n"
 	"#    z.B. ~/.tin/extra-body-text\n"
 
-#: src/attrib.c:605
+#: src/attrib.c:615
 msgid	"#  from=STRING (just append wanted From:-line, don't use quotes)\n"
-msgstr	"#  from=STRING\n"
+msgstr	"#  from=ZEICHENKETTE\n"
 	"#    Absender, einfach den gewünschten Wert eintragen,\n"
 	"#    keine Anführungszeichen verwenden\n"
 
-#: src/attrib.c:606
+#: src/attrib.c:616
 msgid	"#  news_quote_format=STRING\n"
-msgstr	"#  news_quote_format=STRING\n"
+msgstr	"#  news_quote_format=ZEICHENKETTE\n"
 	"#    Einleitungszeile, z.B. news_quote_format=In %%M, %%F wrote:\n"
 
-#: src/attrib.c:607
+#: src/attrib.c:617
 msgid	"#  quote_chars=STRING (%%s, %%S for initials)\n"
-msgstr	"#  quote_chars=STRING\n"
+msgstr	"#  quote_chars=ZEICHENKETTE\n"
 	"#    Zeichen für Zitate in Antworten, %%s oder %%S ergibt Autoreninitialien\n"
 
-#: src/attrib.c:608
+#: src/attrib.c:618
 msgid	"#  mime_types_to_save=STRING (eg. image/*,!image/bmp)\n"
-msgstr	"#  mime_types_to_save=STRING\n"
+msgstr	"#  mime_types_to_save=ZEICHENKETTE\n"
 	"#    z.B. image/*,!image/bmp\n"
 
-#: src/attrib.c:610
+#: src/attrib.c:620
 msgid	"#  ispell=STRING\n"
-msgstr	"#  ispell=STRING\n"
+msgstr	"#  ispell=ZEICHENKETTE\n"
 	"#    Aufruf der Rechtschreibprüfung,\n"
 	"#    z.B. ispell -C -ddeutsch -w äöüÄÖÜß@ -Tlatin1\n"
 
-#: src/attrib.c:612
+#: src/attrib.c:622
 msgid	"#  auto_select=ON/OFF\n"
 msgstr	"#  auto_select=ON/OFF\n"
 	"#    Führe GroupMarkUnselArtRead Kommando automatisch beim Betreten\n"
 	"#    der Gruppe aus\n"
 
-#: src/attrib.c:613
+#: src/attrib.c:623
 msgid	"#  auto_save=ON/OFF\n"
 msgstr	"#  auto_save=ON/OFF\n"
 	"#    Artikel mit 'Archive-name:'-Header automatisch in die darin\n"
 	"#    angegebene Datei speichern\n"
 
-#: src/attrib.c:614
+#: src/attrib.c:624
 msgid	"#  batch_save=ON/OFF\n"
 msgstr	"#  batch_save=ON/OFF\n"
-	"#    Im Batch-Modus werden die Article beachtet\n"
+	"#    Im Batch-Modus werden die Artikel beachtet\n"
 
-#: src/attrib.c:615
+#: src/attrib.c:625
 msgid	"#  delete_tmp_files=ON/OFF\n"
 msgstr	"#  delete_tmp_files=ON/OFF\n"
 	"#    Gespeicherte, zur Nachbearbeitung weitergegebene Artikel ohne\n"
 	"#    Nachfrage löschen\n"
 
-#: src/attrib.c:616
+#: src/attrib.c:626
 msgid	"#  show_only_unread=ON/OFF\n"
 msgstr	"#  show_only_unread=ON/OFF\n"
 	"#    nur ungelesene Artikel anzeigen\n"
 
-#: src/attrib.c:617
+#: src/attrib.c:627
 msgid	"#  thread_arts=NUM"
 msgstr	"#  thread_arts=ZAHL\n"
 	"#    Threading nach:"
 
-#: src/attrib.c:624
+#: src/attrib.c:634
 msgid	"#  show_author=NUM\n"
 msgstr	"#  show_author=ZAHL\n"
 	"#    Anzeige des From-Felds\n"
 
-#: src/attrib.c:630
+#: src/attrib.c:640
 msgid	"#  show_info=NUM\n"
 msgstr	"#  show_info=ZAHL\n"
 
-#: src/attrib.c:636
+#: src/attrib.c:646
 msgid	"#  sort_art_type=NUM\n"
 msgstr	"#  sort_art_type=ZAHL\n"
 	"#    Artikel sortieren nach:\n"
 
-#: src/attrib.c:654
+#: src/attrib.c:664
 msgid	"#  sort_threads_type=NUM\n"
 msgstr	"#  sort_threads_type=ZAHL\n"
 	"#    Threads sortieren nach:\n"
 
-#: src/attrib.c:659
+#: src/attrib.c:669
 msgid	"#  post_proc_type=NUM\n"
 msgstr	"#  post_proc_type=ZAHL\n"
 	"#    Nachbearbeitung\n"
 
-#: src/attrib.c:664
+#: src/attrib.c:674
 msgid	"#  quick_kill_scope=STRING (ie. talk.*)\n"
-msgstr	"#  quick_kill_scope=STRING\n"
+msgstr	"#  quick_kill_scope=ZEICHENKETTE\n"
 	"#    Voreinstellung für Gültigkeitsbereich neuer Kill-Einträge,\n"
 	"#    z.B. talk.*\n"
 
-#: src/attrib.c:665
+#: src/attrib.c:675
 msgid	"#  quick_kill_expire=ON/OFF\n"
 msgstr	"#  quick_kill_expire=ON/OFF\n"
 	"#    Kill verfällt automatisch\n"
 
-#: src/attrib.c:666
+#: src/attrib.c:676
 msgid	"#  quick_kill_case=ON/OFF\n"
 msgstr	"#  quick_kill_case=ON/OFF\n"
 	"#    Kill beachtet Gross/Kleinschreibung\n"
 
-#: src/attrib.c:667
+#: src/attrib.c:677
 msgid	"#  quick_kill_header=NUM\n"
 msgstr	"#  quick_kill_header=ZAHL\n"
 	"#    Killen nach:\n"
 
-#: src/attrib.c:668 src/attrib.c:675
+#: src/attrib.c:678 src/attrib.c:685
 msgid	"#    0=subj (case sensitive) 1=subj (ignore case)\n"
 msgstr	"#    0=Subject (Gross/Kleinschreibung beachten), 1=Subject (G/K ignorieren)\n"
 
-#: src/attrib.c:669 src/attrib.c:676
+#: src/attrib.c:679 src/attrib.c:686
 msgid	"#    2=from (case sensitive) 3=from (ignore case)\n"
 msgstr	"#    2=From (G/K beachten), 3=From (G/K ignorieren)\n"
 
-#: src/attrib.c:670 src/attrib.c:677
+#: src/attrib.c:680 src/attrib.c:687
 msgid	"#    4=msgid 5=lines\n"
 msgstr	"#    4=Message-ID, 5=Zeilen\n"
 
-#: src/attrib.c:671
+#: src/attrib.c:681
 msgid	"#  quick_select_scope=STRING\n"
-msgstr	"#  quick_select_scope=STRING\n"
+msgstr	"#  quick_select_scope=ZEICHENKETTE\n"
 	"#    Voreinstellung für Gültigkeitsbereich neuer Auswahlregeln (Hochscoren)\n"
 
-#: src/attrib.c:672
+#: src/attrib.c:682
 msgid	"#  quick_select_expire=ON/OFF\n"
 msgstr	"#  quick_select_expire=ON/OFF\n"
 	"#    Regel verfällt automatisch\n"
 
-#: src/attrib.c:673
+#: src/attrib.c:683
 msgid	"#  quick_select_case=ON/OFF\n"
 msgstr	"#  quick_select_case=ON/OFF\n"
 	"#    Regel beachtet Gross/Kleinschreibung\n"
 
-#: src/attrib.c:674
+#: src/attrib.c:684
 msgid	"#  quick_select_header=NUM\n"
 msgstr	"#  quick_select_header=NUM\n"
 	"#    Auswählen (Hochscoren) nach:\n"
 
-#: src/attrib.c:678
+#: src/attrib.c:688
 msgid	"#  x_comment_to=ON/OFF\n"
 msgstr	"#  x_comment_to=ON/OFF\n"
 	"#    X-Comment-To:-Header einfügen.\n"
 	"#    (Nur sinnvoll in nach Fido Technology Network gegateten Gruppen.)\n"
 
-#: src/attrib.c:679
+#: src/attrib.c:689
 msgid	"#  fcc=STRING (eg. =mailbox)\n"
-msgstr	"#  fcc=STRING\n"
+msgstr	"#  fcc=ZEICHENKETTE\n"
 	"#    Datei in der eine Kopie der Mail abgelegt werden soll,#    z.B: "
 	"=mailbox\n"
 
-#: src/attrib.c:680
+#: src/attrib.c:690
 msgid	"#  tex2iso_conv=ON/OFF\n"
 msgstr	"#  tex2iso_conv=ON/OFF\n"
 	"#    Automatische Umwandlung von TeX-Umlauten\n"
 
-#: src/attrib.c:681
+#: src/attrib.c:691
 msgid	"#  mime_forward=ON/OFF\n"
 msgstr	"#  mime_forward=ON/OFF\n"
 	"#    Weitergeleitete Artikel als MIME-Anhang senden\n"
 
-#: src/attrib.c:683
+#: src/attrib.c:693
 msgid	"#  mm_network_charset=supported_charset"
 msgstr	"#  mm_network_charset=Zeichensatz\n"
 	"#    Erlaubt sind folgende:"
 
-#: src/attrib.c:690
+#: src/attrib.c:700
 msgid	"#  undeclared_charset=STRING (default is US-ASCII)\n"
-msgstr	"#  undeclared_charset=STRING\n"
+msgstr	"#  undeclared_charset=ZEICHENKETTE\n"
 	"#    Voreinstellung ist US-ASCII\n"
 
-#: src/attrib.c:692
+#: src/attrib.c:702
 msgid	"#\n"
 	"# Note that it is best to put general (global scoping)\n"
 msgstr	"#\n"
 	"# Es empfiehlt sich, zuerst allgemein gültige und danach spezielle,\n"
 
-#: src/attrib.c:693
+#: src/attrib.c:703
 msgid	"# entries first followed by group specific entries.\n"
 	"#\n"
 msgstr	"# nur für bestimmte Newsgruppen gültige Einträge aufzuführen.\n"
 	"#\n"
 
-#: src/attrib.c:694
+#: src/attrib.c:704
 msgid	"############################################################################\n"
 	"\n"
 msgstr	"############################################################################\n"
 	"\n"
 
-#: src/attrib.c:700
+#: src/attrib.c:710
 msgid	"# include extra headers\n"
 msgstr	"# Zusätzliche Header einfügen\n"
 
-#: src/attrib.c:708
+#: src/attrib.c:718
 msgid	"# in *sources* set post process type to shar only\n"
 msgstr	"# in *sources* nur Nachbearbeitung mit shar\n"
 
-#: src/attrib.c:712
+#: src/attrib.c:722
 msgid	"# in *binaries* do full post processing, remove tmp files\n"
 msgstr	"# in *binaries* Nachbearbeitung, temporäre Dateien löschen\n"
 
-#: src/attrib.c:713
+#: src/attrib.c:723
 msgid	"# and set Followup-To: poster\n"
 msgstr	"# und Antwort per EMail (Followup-To: poster) anfordern\n"
 
-#: src/cook.c:494
+#: src/cook.c:497
 msgid	"(unknown)"
 msgstr	"(unbekannt)"
 
@@ -327,7 +327,7 @@ msgstr	"Artikel kann nicht gecancelt (ge
 
 #: src/lang.c:52
 msgid	"Article deleted."
-msgstr	"Artikel gelöscht"
+msgstr	"Artikel gelöscht."
 
 #: src/lang.c:53
 #, c-format
@@ -377,7 +377,7 @@ msgstr	"Artikel abgelehnt (abgespeichert
 #: src/lang.c:62
 #, c-format
 msgid	"%s=article, %s=thread, %s=hot, %s=pattern, %s=tagged articles, %s=quit: "
-msgstr	"%s=Artikel %s=Thread %s=hervorgehoben %s=muster %s=markierte %s=beenden: "
+msgstr	"%s=Artikel %s=Thread %s=hervorgehoben %s=Muster %s=markierte %s=beenden: "
 
 #: src/lang.c:63
 msgid	"Article unavailable"
@@ -385,7 +385,7 @@ msgstr	"Artikel nicht verfügbar"
 
 #: src/lang.c:64
 msgid	"Article undeleted."
-msgstr	"Artikellöschen rückgängig gemacht"
+msgstr	"Artikel löschen rückgängig gemacht."
 
 #: src/lang.c:66
 msgid	"articles"
@@ -607,271 +607,271 @@ msgstr	"Prüfe, ob neue Artikel vorhanden
 msgid	"Post-process %s=no, %s=yes, %s=shar, %s=quit: "
 msgstr	"Nachbearbeiten %s=nein, %s=ja, %s=shar, %s=Ende: "
 
-#: src/lang.c:118
+#: src/lang.c:119
 msgid	"ANSI color disabled"
 msgstr	"ANSI Farben ausgeschaltet"
 
-#: src/lang.c:119
+#: src/lang.c:120
 msgid	"ANSI color enabled"
 msgstr	"ANSI Farben eingeschaltet"
 
-#: src/lang.c:120
+#: src/lang.c:122
 #, c-format
 msgid	"Command failed: %s"
 msgstr	"Befehl fehlgeschlagen: %s"
 
-#: src/lang.c:121
+#: src/lang.c:123
 msgid	"Mark not selected articles read?"
 msgstr	"Nicht ausgewählte (hot) Artikel auf gelesen setzen?"
 
-#: src/lang.c:122
+#: src/lang.c:124
 #, c-format
 msgid	"Connecting to %s..."
 msgstr	"Verbinde mit %s..."
 
-#: src/lang.c:123
+#: src/lang.c:125
 msgid	"<CR>"
 msgstr	"<CR>"
 
-#: src/lang.c:124
+#: src/lang.c:126
 msgid	"Creating active file for saved groups...\n"
 msgstr	"Erzeuge die Datei 'active' für gespeicherte Gruppen...\n"
 
-#: src/lang.c:125
+#: src/lang.c:127
 msgid	"Creating newsrc file...\n"
 msgstr	"Erzeuge newsrc Datei...\n"
 
-#: src/lang.c:127 src/lang.c:1140
+#: src/lang.c:129 src/lang.c:1150
 msgid	"Default"
 msgstr	"Voreinstellung"
 
-#: src/lang.c:128
+#: src/lang.c:130
 msgid	"Delete saved files that have been post processed?"
 msgstr	"Löschen der gespeicherten Dateien, die nachbearbeitet wurden?"
 
-#: src/lang.c:129
+#: src/lang.c:131
 msgid	"Deleting temporary files..."
 msgstr	"Lösche temporäre Dateien..."
 
-#: src/lang.c:131
+#: src/lang.c:133
 msgid	"*** End of article ***"
 msgstr	"*** Ende des Artikels ***"
 
-#: src/lang.c:132
+#: src/lang.c:134
 msgid	"*** End of articles ***"
 msgstr	"*** Ende der Artikel ***"
 
-#: src/lang.c:133
+#: src/lang.c:135
 msgid	"*** End of groups ***"
 msgstr	"*** Ende der Gruppen ***"
 
-#: src/lang.c:134
+#: src/lang.c:136
 msgid	"*** End of thread ***"
 msgstr	"*** Ende des Threads ***"
 
-#: src/lang.c:135
+#: src/lang.c:137
 msgid	"Enter limit of articles to get> "
 msgstr	"Anzahl zu holender Artikel> "
 
-#: src/lang.c:136
+#: src/lang.c:138
 msgid	"Enter Message-ID to go to> "
 msgstr	"Message-ID, die Sie suchen> "
 
-#: src/lang.c:137
+#: src/lang.c:139
 msgid	" and enter next unread thread"
 msgstr	" und nächsten ungel. Thread betreten"
 
-#: src/lang.c:138
+#: src/lang.c:140
 msgid	" and enter next unread group"
 msgstr	" und betritt nächste Gruppe"
 
-#: src/lang.c:139
+#: src/lang.c:141
 msgid	"Enter option number> "
 msgstr	"Optionsnummer eingeben> "
 
-#: src/lang.c:140
+#: src/lang.c:142
 #, c-format
 msgid	"Enter range [%s]> "
 msgstr	"Bereich eingeben [%s]> "
 
-#: src/lang.c:141
+#: src/lang.c:143
 msgid	"\n"
 	"Warning: Approved: header used.\n"
 msgstr	"\n"
 	"Warnung: Approved:-Header benutzt.\n"
 
-#: src/lang.c:143
+#: src/lang.c:145
 msgid	"\n"
 	"Error: Bad address in Approved: header.\n"
 msgstr	"\n"
 	"Fehler: Ungültige Adresse im Approved:-Header.\n"
 
-#: src/lang.c:144
+#: src/lang.c:146
 msgid	"\n"
 	"Error: Bad address in From: header.\n"
 msgstr	"\n"
 	"Fehler: Ungültige Adresse im From:-Header.\n"
 
-#: src/lang.c:145
+#: src/lang.c:147
 msgid	"\n"
 	"Error: Bad address in Reply-To: header.\n"
 msgstr	"\n"
 	"Fehler: Ungültige Adresse im Reply-To:-Header.\n"
 
-#: src/lang.c:146
+#: src/lang.c:148
 msgid	"\n"
 	"Error: Bad FQDN in Message-ID: header.\n"
 msgstr	"\n"
-	"Error: Ungültiger FQDN im Message-ID:-Header.\n"
+	"Fehler: Ungültiger FQDN im Message-ID:-Header.\n"
 
-#: src/lang.c:147
+#: src/lang.c:149
 #, c-format
 msgid	"Can't unlock %s"
 msgstr	"Kann Lock auf %s nicht entfernen"
 
-#: src/lang.c:149
+#: src/lang.c:151
 #, c-format
 msgid	"Corrupted file %s"
 msgstr	"Datei %s ist beschädigt"
 
-#: src/lang.c:150
+#: src/lang.c:152
 #, c-format
 msgid	"Couldn't dotlock %s - article not appended!"
 msgstr	"Konnte %s nicht dotlocken - Artikel nicht angehängt!"
 
-#: src/lang.c:151
+#: src/lang.c:153
 #, c-format
 msgid	"Couldn't lock %s - article not appended!"
 msgstr	"Konnte %s nicht locken - Artikel nicht angehängt!"
 
-#: src/lang.c:153
+#: src/lang.c:155
 msgid	"Internal error in GNKSA routine - send bug report.\n"
 msgstr	"Interner Fehler in der GNKSA Routine - Senden Sie einen Fehlerbericht.\n"
 
-#: src/lang.c:154
+#: src/lang.c:156
 msgid	"Left angle bracket missing in route address.\n"
 msgstr	"Linkes Größerzeichen '<' fehlt in Route-Adresse.\n"
 
-#: src/lang.c:155
+#: src/lang.c:157
 msgid	"Left parenthesis missing in old-style address.\n"
 msgstr	"Linke Klammer '(' fehlt in EMail-Adresse (alter Stil).\n"
 
-#: src/lang.c:156
+#: src/lang.c:158
 msgid	"Right parenthesis missing in old-style address.\n"
 msgstr	"Rechte Klammer ')' fehlt in EMail-Adresse (alter Stil).\n"
 
-#: src/lang.c:157
+#: src/lang.c:159
 msgid	"At-sign missing in mail address.\n"
 msgstr	"In der Mailadresse fehlt das '@'.\n"
 
-#: src/lang.c:158
+#: src/lang.c:160
 msgid	"Single component FQDN is not allowed. Add your domain.\n"
 msgstr	"Ein einteiliger FQDN ist nicht erlaubt. Fügen Sie ihre Domain hinzu.\n"
 
-#: src/lang.c:159
+#: src/lang.c:161
 msgid	"Invalid domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Unzulässige Domain. Senden Sie einen Fehlerbericht, wenn es ihre TL-Domain\n"
 	"wirklich gibt. Benutzen sie .invalid für bewusst falsche Adressen.\n"
 
-#: src/lang.c:160
+#: src/lang.c:162
 msgid	"Illegal domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Regelwidrige Domain. Senden Sie einen Fehlerbericht, wenn es ihre TL-Domain\n"
 	"wirklich gibt. Benutzen sie .invalid für bewusst falsche Adressen.\n"
 
-#: src/lang.c:161
+#: src/lang.c:163
 msgid	"Unknown domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Unbekannte Domain. Senden Sie einen Fehlerbericht, wenn es ihre TL-Domain\n"
 	"wirklich gibt. Benutzen sie .invalid für bewusst falsche Adressen.\n"
 
-#: src/lang.c:162
+#: src/lang.c:164
 msgid	"Illegal character in FQDN.\n"
 msgstr	"Ungültiges Zeichen im FQDN.\n"
 
-#: src/lang.c:163
+#: src/lang.c:165
 msgid	"Zero length FQDN component not allowed.\n"
 msgstr	"Der FQDN darf keine leere Komponente enthalten.\n"
 
-#: src/lang.c:164
+#: src/lang.c:166
 msgid	"FQDN component exceeds maximum allowed length (63 chars).\n"
 msgstr	"Eine Komponente des FQDN überschreitet die maximale Länge (63 Zeichen).\n"
 
-#: src/lang.c:165
+#: src/lang.c:167
 msgid	"FQDN component may not start or end with hyphen.\n"
 msgstr	"Komponenten des FQDN dürfen nicht mit einem Bindestrich beginnen.\n"
 
-#: src/lang.c:166
+#: src/lang.c:168
 msgid	"FQDN component may not start with digit.\n"
 msgstr	"Komponenten des FQDN dürfen nicht mit einer Zahl beginnen.\n"
 
-#: src/lang.c:167
+#: src/lang.c:169
 msgid	"Domain literal has impossible numeric value.\n"
 msgstr	"Die IP-Adresse ist nicht gültig.\n"
 
-#: src/lang.c:168
+#: src/lang.c:170
 msgid	"Domain literal is for private use only and not allowed for global use.\n"
 msgstr	"Die IP-Adresse ist ausschließlich für den privaten Gebrauch gedacht.\n"
 
-#: src/lang.c:169
+#: src/lang.c:171
 msgid	"Right bracket missing in domain literal.\n"
 msgstr	"Die rechte Klammer nach der IP-Adresse fehlt.\n"
 
-#: src/lang.c:170
+#: src/lang.c:172
 msgid	"Missing localpart of mail address.\n"
 msgstr	"Fehlender Lokalteil in der Mailadresse.\n"
 
-#: src/lang.c:171
+#: src/lang.c:173
 msgid	"Illegal character in localpart of mail address.\n"
 msgstr	"Ungültiges Zeichen im Lokalteil der Mailadresse.\n"
 
-#: src/lang.c:172
+#: src/lang.c:174
 msgid	"Zero length localpart component not allowed.\n"
 msgstr	"Eine leere Lokalteilkomponente ist nicht erlaubt.\n"
 
-#: src/lang.c:173
+#: src/lang.c:175
 msgid	"Illegal character in realname.\n"
 	"Unquoted words may not contain '!()<>@,;:\\.[]' in route addresses.\n"
 msgstr	"Ungültiges Zeichen im Realname.\n"
 	"Ungeschützte Wörter dürfen kein '!()<>@,;:\\.[]' in der Adresse enthalten.\n"
 
-#: src/lang.c:174
+#: src/lang.c:176
 msgid	"Illegal character in realname.\n"
 	"Quoted words may not contain '()<>\\'.\n"
 msgstr	"Ungültiges Zeichen im Realname.\n"
 	"Geschützte Wörter dürfen kein '()<>\\' enthalten.\n"
 
-#: src/lang.c:175
+#: src/lang.c:177
 msgid	"Illegal character in realname.\n"
 	"Encoded words may not contain '!()<>@,;:\"\\.[]/=' in parameter.\n"
 msgstr	"Ungültiges Zeichen im Realname.\n"
 	"Kodierte Wörter dürfen '!()<>@,;:\"\\.[]/=' nicht enthalten.\n"
 
-#: src/lang.c:176
+#: src/lang.c:178
 msgid	"Bad syntax in encoded word used in realname.\n"
 msgstr	"Falsche Syntax im kodierten Wort, das im Realname enthalten ist.\n"
 
-#: src/lang.c:177
+#: src/lang.c:179
 msgid	"Illegal character in realname.\n"
 	"Unquoted words may not contain '()<>\\' in old-style addresses.\n"
 msgstr	"Ungültiges Zeichen im Realname.\n"
 	"Ungeschützte Wörter dürfen kein '()<>\\' in Adressen enthalten (alter Stil).\n"
 
-#: src/lang.c:178
+#: src/lang.c:180
 msgid	"Illegal character in realname.\n"
 	"Control characters and unencoded 8bit characters > 127 are not allowed.\n"
 msgstr	"Ungültiges Zeichen im Realname.\n"
 	"Kontrollzeichen und unkodierte 8bit Zeichen > 127 sind verboten.\n"
 
-#: src/lang.c:179
+#: src/lang.c:181
 msgid	"\n"
 	"Error: No blank line found after header.\n"
 msgstr	"\n"
 	"Fehler: Keine Leerzeile nach dem Header gefunden.\n"
 
 #. TODO: fixme, US-ASCII is not the only 7bit charset we know about
-#: src/lang.c:181
+#: src/lang.c:183
 msgid	"\n"
 	"Error: Posting contains non-ASCII characters but MM_CHARSET is set to\n"
 	"       US-ASCII  - please change this setting to a suitable value for\n"
@@ -883,7 +883,7 @@ msgstr	"\n"
 	"        passenden  Wert für ihre  Sprache,  indem Sie  M)enü benutzen,\n"
 	"        oder direkt die tinrc ändern.\n"
 
-#: src/lang.c:186
+#: src/lang.c:188
 msgid	"\n"
 	"Error: Posting contains  non-ASCII characters  but the  MIME encoding\n"
 	"       for news  messages  is set  to \"7bit\"  -  please change this\n"
@@ -896,13 +896,13 @@ msgstr	"\n"
 	"        \"8bit\" oder \"quoted-printable\" - Zeichensatzabhängig -  via\n"
 	"         M)enü oder durch editieren der tinrc.\n"
 
-#: src/lang.c:192
+#: src/lang.c:194
 msgid	"\n"
 	"Error: Article starts with blank line instead of header\n"
 msgstr	"\n"
 	"Fehler: Der Artikel beginnt mit einer Leerzeile anstatt des Headers\n"
 
-#: src/lang.c:193
+#: src/lang.c:195
 #, c-format
 msgid	"\n"
 	"Error: Header on line %d does not have a colon after the header name:\n"
@@ -911,21 +911,21 @@ msgstr	"\n"
 	"Fehler: Der Header in Zeile %d enthält kein ':' nach seinem Bezeichner:\n"
 	"%s\n"
 
-#: src/lang.c:194
+#: src/lang.c:196
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is empty.\n"
 msgstr	"\n"
 	"Fehler: Die \"%s:\" Zeile ist leer.\n"
 
-#: src/lang.c:195
+#: src/lang.c:197
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is missing from the article header.\n"
 msgstr	"\n"
 	"Fehler: Die \"%s:\" Zeile fehlt im Artikel Header.\n"
 
-#: src/lang.c:196
+#: src/lang.c:198
 #, c-format
 msgid	"\n"
 	"Error: Header on line %d does not have a space after the colon:\n"
@@ -934,152 +934,152 @@ msgstr	"\n"
 	"Fehler: Der Header in der Zeile %d hat kein Leerzeichen nach dem ':' :\n"
 	"%s\n"
 
-#: src/lang.c:197
+#: src/lang.c:199
 #, c-format
 msgid	"\n"
 	"Error: There are multiple (%d) \"%s:\" lines in the header.\n"
 msgstr	"\n"
 	"Fehler: Es sind mehrere (%d) \"%s:\" Zeilen im Header.\n"
 
-#: src/lang.c:198
+#: src/lang.c:200
 #, c-format
 msgid	"Insecure permissions of %s (%o)"
 msgstr	"Unsichere Zugriffsbeschränkungen auf %s (%o)"
 
-#: src/lang.c:199
+#: src/lang.c:201
 #, c-format
 msgid	"Invalid response to GROUP command, %s"
 msgstr	"Ungültige Antwort auf GROUP-Befehl, %s"
 
-#: src/lang.c:201
+#: src/lang.c:203
 #, c-format
 msgid	"MIME parse error: Unexpected end of %s/%s article"
 msgstr	"MIME-Fehler: Unerwartetes Ende des %s/%s-Artikels"
 
-#: src/lang.c:202
+#: src/lang.c:204
 msgid	"MIME parse error: Start boundary whilst reading headers"
 msgstr	"MIME-Fehler: Anfangsgrenze in Hadern"
 
-#: src/lang.c:203
+#: src/lang.c:205
 msgid	"Can't get a (fully-qualified) domain-name!"
 msgstr	"Kann keinen (vollqualifizierten) Domainnamen finden!"
 
-#: src/lang.c:204
+#: src/lang.c:206
 #, c-format
 msgid	"No permissions to go into %s\n"
 msgstr	"Keine Berechtigung um %s zu betreten\n"
 
-#: src/lang.c:205
+#: src/lang.c:207
 msgid	"\n"
 	"Error: From: line missing.\n"
 msgstr	"\n"
 	"Fehler: Die From: Zeile fehlt.\n"
 
-#: src/lang.c:206
+#: src/lang.c:208
 #, c-format
 msgid	"No read permissions for %s\n"
 msgstr	"Keine Leseberechtigung für %s\n"
 
-#: src/lang.c:207
+#: src/lang.c:209
 #, c-format
 msgid	"File %s does not exist\n"
 msgstr	"Datei %s existiert nicht\n"
 
-#: src/lang.c:208
+#: src/lang.c:210
 #, c-format
 msgid	"No write permissions for %s\n"
 msgstr	"Keine Schreibberechtigung für %s\n"
 
-#: src/lang.c:209
+#: src/lang.c:211
 msgid	"Can't get user information (/etc/passwd missing?)"
 msgstr	"Kann Benutzer-Infos nicht finden (/etc/passwd fehlt?)"
 
-#: src/lang.c:210
+#: src/lang.c:212
 msgid	"errors"
 msgstr	"Fehler"
 
-#: src/lang.c:211
+#: src/lang.c:213
 #, c-format
 msgid	"\n"
 	"Error on line %d: \"Sender:\" header not allowed (it will be added for you)\n"
 msgstr	"\n"
 	"Fehler in Zeile %d: \"Sender:\" Header ist nicht erlaubt (wird hinzugefügt)\n"
 
-#: src/lang.c:212
+#: src/lang.c:214
 #, c-format
 msgid	"Server has non of the groups listed in %s"
 msgstr	"Server führt keine der Gruppen aus %s"
 
-#: src/lang.c:213
+#: src/lang.c:215
 msgid	"error"
 msgstr	"Fehler"
 
-#: src/lang.c:214
+#: src/lang.c:216
 msgid	"Unknown display level"
 msgstr	"Unbekannter Level"
 
-#: src/lang.c:215
+#: src/lang.c:217
 msgid	"<ESC>"
 msgstr	"<ESC>"
 
-#: src/lang.c:216
+#: src/lang.c:218
 msgid	"Exiting..."
 msgstr	"Beenden..."
 
-#: src/lang.c:217
+#: src/lang.c:219
 msgid	"leaving external mail-reader"
 msgstr	"Verlasse externen Mailreader"
 
-#: src/lang.c:218
+#: src/lang.c:220
 #, c-format
 msgid	"Extracting %s..."
 msgstr	"Entpacke %s..."
 
-#: src/lang.c:220
+#: src/lang.c:222
 #, c-format
 msgid	"Error writing %s file. Filesystem full? File reset to previous state."
 msgstr	"Fehler beim Schreiben von %s. Dateisystem voll? Datei zurückgesetzt."
 
-#: src/lang.c:221
+#: src/lang.c:223
 #, c-format
 msgid	"Error making backup of %s file. Filesystem full?"
 msgstr	"Fehler beim Erzeugen der Sicherung von %s. Dateisystem voll?"
 
-#: src/lang.c:222
+#: src/lang.c:224
 #, c-format
 msgid	"Filtering global rules (%d/%d)..."
 msgstr	"Filtern nach den globalen Regeln (%d/%d)..."
 
-#: src/lang.c:223
+#: src/lang.c:225
 msgid	"Rule created by: "
 msgstr	"Regel erstellt von: "
 
-#: src/lang.c:224
+#: src/lang.c:226
 #, c-format
 msgid	"Enter pattern [%s]> "
 msgstr	"Muster eingeben [%s]> "
 
-#: src/lang.c:225
+#: src/lang.c:227
 #, c-format
 msgid	"\n"
 	"You requested followups to your article to go to the following %s:\n"
 msgstr	"\n"
 	"Antworten auf ihre Artikel sollen in folgenden %s erscheinen:\n"
 
-#: src/lang.c:226
+#: src/lang.c:228
 #, c-format
 msgid	"  %s\t Answers will be directed to you by mail.\n"
 msgstr	"  %s\t Antworten erhalten Sie direkt per Mail.\n"
 
-#: src/lang.c:227
+#: src/lang.c:229
 msgid	"-- forwarded message --\n"
 msgstr	"-- weitergeleitete Nachricht --\n"
 
-#: src/lang.c:228
+#: src/lang.c:230
 msgid	"-- end of forwarded message --\n"
 msgstr	"-- Ende der weitergeleiteten Nachricht --\n"
 
-#: src/lang.c:229
+#: src/lang.c:231
 msgid	"# Format:\n"
 	"#   comment=STRING    Optional. Multiple lines allowed. Comments must be "
 	"placed\n"
@@ -1107,32 +1107,32 @@ msgid	"# Format:\n"
 	"#   time=NUM          Optional. time_t value when rule expires\n"
 	"#\n"
 msgstr	"# Format:\n"
-	"#   comment=STRING    Optionaler Kommentar. Es sind mehrere "
+	"#   comment=Z.KETTE   Optionaler Kommentar. Es sind mehrere "
 	"Kommentareinträge\n"
 	"#                     Regel erlaubt. Kommentare müssen ganz am Anfang "
 	"stehen,\n"
 	"#                     sonst werden sie zur nächsten Regel verschoben. '#' "
 	"darf\n"
 	"#                     nicht im Kommentar vorkommen!\n"
-	"#   group=STRING      Liste der Newsgroups (z.B. comp.*,!*sources*) "
+	"#   group=Z.KETTE     Liste der Newsgroups (z.B. comp.*,!*sources*) "
 	"[obligatorisch]\n"
 	"#   case=ZAHL         Groß/Kleinschreibung beim Filtern beachten=0,\n"
 	"#                     ignorieren=1        [obligatorisch]\n"
-	"#   score=ZAHL|STRING Score/Bewertung für diese Regel, entweder eine\n"
+	"#   score=ZAHL|ZKETTE Score/Bewertung für diese Regel, entweder eine\n"
 	"#                     Zahl (z.B. 70) oder eines der beiden Schlüsselwörter\n"
 	"#                     'hot' oder 'kill'\n"
-	"#   subj=STRING       Subject(Betreff). (z.B. How to be a wizard)\n"
-	"#   from=STRING       From(Absender). (z.B. *Craig Shergold*)\n"
-	"#   msgid=STRING      Message-ID (z.B.<123@@ether.net>) kommt in Message-ID-\n"
+	"#   subj=ZEICHENKETTE Subject(Betreff). (z.B. How to be a wizard)\n"
+	"#   from=ZEICHENKETTE From(Absender). (z.B. *Craig Shergold*)\n"
+	"#   msgid=Z.KETTE     Message-ID (z.B.<123@@ether.net>) kommt in Message-ID-\n"
 	"#                     oder References-Zeile vor. - Regel wirkt auf den "
 	"Artikel\n"
 	"#                     mit der M-ID und alle Antworten darauf.\n"
-	"#   msgid_last=STRING Message-ID-Header selbst und letzte Element von "
+	"#   msgid_last=ZKETTE Message-ID-Header selbst und letzte Element von "
 	"References\n"
 	"#                     Regel wirkt auf Posting selbst oder _direkte_ "
 	"Antworten.\n"
-	"#   msgid_only=STRING Message-ID lautet (z.B.<123@@ether.net>).\n"
-	"#   refs_only=STRING  References-Header (z.B.<123@@ether.net>), kein\n"
+	"#   msgid_only=ZKETTE Message-ID lautet (z.B.<123@@ether.net>).\n"
+	"#   refs_only=Z.KETTE References-Header (z.B.<123@@ether.net>), kein\n"
 	"#                     Vergleich mit Message-ID-Header.\n"
 	"#   lines=[<>]?ZAHL   Zeilenanzahl (Lines-Header)\n"
 	"#   gnksa=[<>]?ZAHL   Rückgabewert der Funktion GNKSA parse_from()\n"
@@ -1143,750 +1143,754 @@ msgstr	"# Format:\n"
 	"#                     (Anzahl der Sekunden seit 1970-01-01 00:00:00 UTC)\n"
 	"#\n"
 
-#: src/lang.c:250
+#: src/lang.c:252
 #, c-format
 msgid	"Enter score for rule (default=%d): "
 msgstr	"Bewertung für Regel (Standard=%d): "
 
-#: src/lang.c:251
+#: src/lang.c:253
 #, c-format
 msgid	"Enter the score weight (range 0 < score <= %d)"
 msgstr	"Geben Sie die Höhe der Bewertung an (Bereich 0 < Bewertung <= %d)"
 
 #. SCORE_MAX
-#: src/lang.c:252
+#: src/lang.c:254
 msgid	"Full"
 msgstr	"Voll"
 
-#: src/lang.c:253
+#: src/lang.c:255
 msgid	"Comment (optional)  : "
 msgstr	"Kommentar (optional): "
 
-#: src/lang.c:254
+#: src/lang.c:256
 msgid	"Apply pattern to    : "
 msgstr	"Wende Muster an auf : "
 
-#: src/lang.c:255
+#: src/lang.c:257
 msgid	"From: line (ignore case)      "
 msgstr	"From: Zeile (ignoriere Groß- Kleinschreibung)"
 
-#: src/lang.c:256
+#: src/lang.c:258
 msgid	"From: line (case sensitive)   "
 msgstr	"From: Zeile (Groß- Kleinschreibung beachten) "
 
-#: src/lang.c:258
+#: src/lang.c:260
 #, c-format
 msgid	"%s%s: Unknown host.\n"
 msgstr	"%s%s: Unbekannter Host.\n"
 
-#: src/lang.c:259
+#: src/lang.c:261
 msgid	"global "
 msgstr	"Global "
 
-#: src/lang.c:260
+#: src/lang.c:262
 #, c-format
 msgid	"Please use %.100s instead"
 msgstr	"Bitte %.100s statt dessen benutzen"
 
-#: src/lang.c:261
+#: src/lang.c:263
 #, c-format
 msgid	"%s is bogus"
 msgstr	"%s ist ungültig"
 
-#: src/lang.c:262
+#: src/lang.c:264
 #, c-format
 msgid	"Group %s is moderated. Continue?"
 msgstr	"Gruppe %s ist moderiert. Fortfahren?"
 
-#: src/lang.c:263
+#: src/lang.c:265
 msgid	"groups"
 msgstr	"Gruppen"
 
-#: src/lang.c:264
+#: src/lang.c:266
 #, c-format
 msgid	"Rereading %s..."
 msgstr	"Lese %s..."
 
-#: src/lang.c:265
+#: src/lang.c:267
 msgid	"Top Level Commands"
 msgstr	"Top Level Befehle"
 
-#: src/lang.c:266
+#: src/lang.c:268
 msgid	"Group Selection"
 msgstr	"Gruppen-Auswahl"
 
-#: src/lang.c:267
+#: src/lang.c:269
 msgid	"group"
 msgstr	"Gruppe"
 
-#: src/lang.c:269
+#: src/lang.c:271
 msgid	"One or more lines of comment. <CR> to add a line or proceed if line is empty."
 msgstr	"Kommentarzeile(n). <CR> für nächsten Menüpunkt bzw. Ende der eingeg. Zeile."
 
-#: src/lang.c:270
+#: src/lang.c:272
 msgid	"From: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"From: zum Filter hinzufügen. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:271
+#: src/lang.c:273
 msgid	"Linecount of articles to be filtered. < for less, > for more, = for equal."
 msgstr	"Zeilenzahl der Artikel, die gefiltert werden. < weniger, > mehr, = gleich."
 
-#: src/lang.c:272
+#: src/lang.c:274
 msgid	"Message-ID: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"Message-ID: zum Filter hinzufügen. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:273
+#: src/lang.c:275
 msgid	"Subject: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"Subject: zum Filter hinzufügen. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:274
+#: src/lang.c:276
 msgid	"Enter text pattern to filter if Subject: & From: lines are not what you want."
 msgstr	"Textmuster zum Filtern, wenn Subject: & From: nicht ihren Wünschen entspricht."
 
-#: src/lang.c:275
+#: src/lang.c:277
 msgid	"Select where text pattern should be applied. <SPACE> toggles & <CR> sets."
 msgstr	"Wähle worauf das Textmuster angewendet wird. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:276
+#: src/lang.c:278
 msgid	"Expiration time in days for the entered filter. <SPACE> toggles & <CR> sets."
 msgstr	"Gültigkeitsdauer in Tagen für den Filter. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:277
+#: src/lang.c:279
 msgid	"Apply kill only to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr	"Filterregel gilt für aktuelle/alle Gruppe(n). <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:278
+#: src/lang.c:280
 msgid	"Apply select to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr	"Filterregel gilt für aktuelle/allen Gruppe(n).<SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:279
+#: src/lang.c:281
 msgid	"kill an article via a menu"
 msgstr	"killt einen Artikel mittels eines Menüs"
 
-#: src/lang.c:280
+#: src/lang.c:282
 msgid	"auto-select (hot) an article via a menu"
 msgstr	"Filterregel (hochscoren) für Artikel via Menü erstellen"
 
-#: src/lang.c:281
+#: src/lang.c:283
 msgid	"Browse URLs in article"
 msgstr	"URLs im Artikel mit Browser öffnen"
 
-#: src/lang.c:282
+#: src/lang.c:284
 msgid	"0 - 9\t  display article by number in current thread"
 msgstr	"0 - 9\t  zeigt Artikel nach Nummern sortiert im aktuellen Thread"
 
-#: src/lang.c:283
+#: src/lang.c:285
 msgid	"cancel (delete) or supersede (overwrite) current article"
 msgstr	"cancelt (löscht) oder ersetzt den aktuellen Artikel"
 
-#: src/lang.c:284
+#: src/lang.c:286
 msgid	"edit article (mail-groups only)"
 msgstr	"editiere Artikel (nur bei Mail-Gruppen)"
 
-#: src/lang.c:285
+#: src/lang.c:287
 msgid	"display first article in current thread"
 msgstr	"ersten Artikel im aktuellen Thread anzeigen"
 
-#: src/lang.c:286
+#: src/lang.c:288
 msgid	"display first page of article"
 msgstr	"zeigt erste Seite des Artikels an"
 
-#: src/lang.c:287
+#: src/lang.c:289
 msgid	"post followup to current article"
 msgstr	"aktuellen Artikel beantworten (followup)"
 
-#: src/lang.c:288
+#: src/lang.c:290
 msgid	"post followup (don't copy text) to current article"
 msgstr	"aktuellen Artikel beantworten, ohne Zitieren des Textes"
 
-#: src/lang.c:289
+#: src/lang.c:291
 msgid	"post followup to current article quoting complete headers"
 msgstr	"aktuellen Artikel beantworten, mit Komplettzitat der Header"
 
-#: src/lang.c:290
+#: src/lang.c:292
 msgid	"display last article in current thread"
 msgstr	"letzten Artikel im aktuellen Thread anzeigen"
 
-#: src/lang.c:291
+#: src/lang.c:293
 msgid	"display last page of article"
 msgstr	"letzte Seite des Artikels anzeigen"
 
-#: src/lang.c:292
+#: src/lang.c:294
 msgid	"mark rest of thread as read and advance to next unread"
 msgstr	"markiere Rest des Thread als gelesen, springe zu nächstem ungelesenen"
 
-#: src/lang.c:293
+#: src/lang.c:295
 msgid	"display next article"
 msgstr	"nächsten Artikel anzeigen"
 
-#: src/lang.c:294
+#: src/lang.c:296
 msgid	"display first article in next thread"
 msgstr	"zeigt den ersten Artikel im nächsten Thread an"
 
-#: src/lang.c:295
+#: src/lang.c:297
 msgid	"display next unread article"
 msgstr	"nächsten ungelesenen Artikel anzeigen"
 
-#: src/lang.c:296
+#: src/lang.c:298
 msgid	"go to the article that this one followed up"
 msgstr	"(Bezugs)Artikel anzeigen, den der aktuelle Artikel beantwortet hat"
 
-#: src/lang.c:297
+#: src/lang.c:299
 msgid	"display previous article"
 msgstr	"vorhergehenden Artikel anzeigen"
 
-#: src/lang.c:298
+#: src/lang.c:300
 msgid	"display previous unread article"
 msgstr	"vorhergehenden ungelesenen Artikel anzeigen"
 
-#: src/lang.c:299
+#: src/lang.c:301
 msgid	"quickly kill an article using defaults"
 msgstr	"killt einen Artikel schnell und benutzt dabei die Voreinstellungen"
 
-#: src/lang.c:300
+#: src/lang.c:302
 msgid	"quickly auto-select (hot) an article using defaults"
 msgstr	"markiert (hervorheben) Artikel und benutzt die Voreinstellungen"
 
-#: src/lang.c:301
+#: src/lang.c:303
 msgid	"return to group selection level"
 msgstr	"kehrt zum Gruppenauswahlmenü zurück"
 
-#: src/lang.c:302
+#: src/lang.c:304
 msgid	"reply through mail to author"
 msgstr	"Antwort per Mail an den Autor"
 
-#: src/lang.c:303
+#: src/lang.c:305
 msgid	"reply through mail (don't copy text) to author"
 msgstr	"Antwort per Mail an den Autor (ohne Zitieren des Textes)"
 
-#: src/lang.c:304
+#: src/lang.c:306
 msgid	"reply through mail to author quoting complete headers"
 msgstr	"Antwort per Mail an den Autor, wobei der komplette Header zitiert wird"
 
-#: src/lang.c:305
+#: src/lang.c:307
 msgid	"repost chosen article to another group"
 msgstr	"gewählten Artikel in eine andere Gruppe reposten"
 
-#: src/lang.c:306
+#: src/lang.c:308
 msgid	"search backwards within this article"
 msgstr	"sucht rückwärts innerhalb des Artikels"
 
-#: src/lang.c:307
+#: src/lang.c:309
 msgid	"search forwards within this article"
 msgstr	"sucht vorwärts innerhalb des Artikels"
 
-#: src/lang.c:308
+#: src/lang.c:310
 msgid	"show article in raw-mode (including all headers)"
 msgstr	"Artikel im Rohformat (inklusive aller Header) anzeigen"
 
-#: src/lang.c:309
+#: src/lang.c:311
 msgid	"skip next block of included text"
 msgstr	"überspringt den nächsten Zitatblock"
 
-#: src/lang.c:310
+#: src/lang.c:312
 msgid	"toggle display of sections hidden by a form-feed (^L) on/off"
 msgstr	"schalte Anzeige von durch Form-Feed (^L) versteckten Teilen ein/aus"
 
-#: src/lang.c:311
+#: src/lang.c:313
 msgid	"toggle word highlighting on/off"
 msgstr	"schaltet das Wort-Hervorheben ein/aus"
 
-#: src/lang.c:312
+#: src/lang.c:314
 msgid	"toggle ROT-13 (basic decode) for current article"
 msgstr	"(de)aktiviert ROT-13 Dekodierung für den aktuellen Artikel"
 
-#: src/lang.c:313
+#: src/lang.c:315
 msgid	"toggle tabwidth 4 <-> 8"
 msgstr	"wechsle Tabulatorweite 4 <-> 8"
 
-#: src/lang.c:314
+#: src/lang.c:316
 msgid	"toggle german TeX style decoding for current article"
 msgstr	"(de)aktiviere deutsche TeX-style Dekodierung für aktuellen Artikel"
 
-#: src/lang.c:315
+#: src/lang.c:317
 msgid	"toggle display of uuencoded sections"
 msgstr	"Anzeige von UU-kodierten Teilen umschalten"
 
-#: src/lang.c:316
+#: src/lang.c:318
 msgid	"View/save multimedia attachments"
 msgstr	"Multimedia-Anhänge anzeigen/speichern"
 
-#: src/lang.c:317
+#: src/lang.c:319
 #, c-format
 msgid	"report bug or comment via mail to %s"
 msgstr	"sendet Fehlerbericht oder Kommentar via Mail an %s"
 
-#: src/lang.c:318
+#: src/lang.c:320
 msgid	"choose range of articles to be affected by next command"
 msgstr	"Bereich der Artikel, die vom nächsten Kommando betroffen sind"
 
-#: src/lang.c:319
+#: src/lang.c:321
 msgid	"escape from command prompt"
 msgstr	"Verlassen der Kommandozeile"
 
-#: src/lang.c:320
+#: src/lang.c:322
+msgid	"edit filter file"
+msgstr	"Filter-Datei bearbeiten"
+
+#: src/lang.c:323
 msgid	"get help"
 msgstr	"zeigt die Hilfe"
 
-#: src/lang.c:321
+#: src/lang.c:324
 msgid	"display last article viewed"
 msgstr	"zeigt den zuletzt angezeigten Artikel an"
 
-#: src/lang.c:322
+#: src/lang.c:325
 msgid	"down one line"
 msgstr	"eine Zeile runter"
 
-#: src/lang.c:323
+#: src/lang.c:326
 msgid	"up one line"
 msgstr	"eine Zeile hoch"
 
-#: src/lang.c:324
+#: src/lang.c:327
 msgid	"go to article chosen by Message-ID"
 msgstr	"Artikel mit dieser Message-ID anzeigen"
 
-#: src/lang.c:325
+#: src/lang.c:328
 msgid	"mail article/thread/hot/pattern/tagged articles to someone"
 msgstr	"Artikel/Thread/hervorgeh./markierten Artikel per Mail weiterleiten"
 
-#: src/lang.c:326
+#: src/lang.c:329
 msgid	"menu of configurable options"
 msgstr	"Menü der konfigurierbaren Optionen"
 
-#: src/lang.c:327
+#: src/lang.c:330
 msgid	"down one page"
 msgstr	"eine Seite runter"
 
-#: src/lang.c:328
+#: src/lang.c:331
 msgid	"up one page"
 msgstr	"eine Seite hoch"
 
-#: src/lang.c:329
+#: src/lang.c:332
 msgid	"post (write) article to current group"
 msgstr	"poste (schreibe) Artikel in die aktuelle Gruppe"
 
-#: src/lang.c:330
+#: src/lang.c:333
 msgid	"post postponed articles"
 msgstr	"poste zurückgestellte Artikel"
 
-#: src/lang.c:331
+#: src/lang.c:334
 msgid	"list articles posted by you (from posted file)"
 msgstr	"listet ihre geposteten Artikel auf (aus der 'posted' Datei)"
 
-#: src/lang.c:332
+#: src/lang.c:335
 msgid	"return to previous menu"
 msgstr	"kehrt zum vorherigen Menü zurück"
 
-#: src/lang.c:333
+#: src/lang.c:336
 msgid	"quit tin immediately"
 msgstr	"beendet tin sofort"
 
-#: src/lang.c:334
+#: src/lang.c:337
 msgid	"redraw page"
 msgstr	"Bildschirmdarstellung neu zeichnen"
 
-#: src/lang.c:335
+#: src/lang.c:338
 msgid	"save article/thread/hot/pattern/tagged articles to file"
-msgstr	"speichert Artikel/Thread hervorgehoben/muster/markierten Artikel"
+msgstr	"speichert Artikel/Thread hervorgehoben/Muster/markierten Artikel"
 
-#: src/lang.c:336
+#: src/lang.c:339
 msgid	"save marked articles automatically without user prompts"
 msgstr	"speichert markierte Artikel automatisch ohne Nachfrage"
 
-#: src/lang.c:337
+#: src/lang.c:340
 msgid	"scroll the screen one line down"
 msgstr	"Bildschirm eine Zeile nach oben schieben"
 
-#: src/lang.c:338
+#: src/lang.c:341
 msgid	"scroll the screen one line up"
 msgstr	"Bildschirm eine Zeile nach unten schieben"
 
-#: src/lang.c:339
+#: src/lang.c:342
 msgid	"search for articles by author backwards"
 msgstr	"sucht rückwärts nach Artikeln von Autor"
 
-#: src/lang.c:340
+#: src/lang.c:343
 msgid	"search for articles by author forwards"
 msgstr	"sucht vorwärts nach Artikeln von Autor"
 
-#: src/lang.c:341
+#: src/lang.c:344
 msgid	"search all articles for a given string (this may take some time)"
 msgstr	"sucht in allen Artikel nach vorgegebener Zeichenkette (kann dauern)"
 
 # TODO: formating
-#: src/lang.c:342
+#: src/lang.c:345
 msgid	" \t  (searches are case-insensitive and wrap around to all articles)"
 msgstr	" \t  (Suchen beachten Gross/Kleinschreibung nicht und laufen über den\n"
 	"          letzten Artikel hinaus zum ersten Artikel der Gruppe und von dort\n"
 	"          aus weiter.)"
 
-#: src/lang.c:343
+#: src/lang.c:346
 msgid	"search for articles by Subject line backwards"
 msgstr	"durchsucht Artikel rückwärts nach Subject Zeile"
 
-#: src/lang.c:344
+#: src/lang.c:347
 msgid	"search for articles by Subject line forwards"
 msgstr	"durchsucht Artikel vorwärts nach Subject Zeile"
 
-#: src/lang.c:345
+#: src/lang.c:348
 msgid	"repeat last search"
 msgstr	"letzte Suche wiederholen"
 
-#: src/lang.c:346
+#: src/lang.c:349
 msgid	"tag current article for reposting/mailing/piping/printing/saving"
 msgstr	"markiere Artikel für nochmaliges posten/pipen/drucken/abspeichern"
 
-#: src/lang.c:347
+#: src/lang.c:350
 msgid	"toggle info message in last line (subject/description)"
 msgstr	"Anzeige von Subject/Beschreibung in d. letzten Zeile (de)aktivieren"
 
-#: src/lang.c:348
+#: src/lang.c:351
 msgid	"toggle inverse video"
 msgstr	"(de)aktiviert inverse Darstellung"
 
-#: src/lang.c:349
+#: src/lang.c:352
 msgid	"toggle mini help menu display"
 msgstr	"schaltet das Minihilfemenü ein/aus"
 
-#: src/lang.c:350
+#: src/lang.c:353
 msgid	"cycle the display of authors email address, real name, both or neither"
-msgstr	"Zeigt des Autors EMail Adresse, Realname, beides oder keins an"
+msgstr	"Zeigt des Autors EMail Adresse, Realname, beides oder nichts von beidem an"
 
-#: src/lang.c:351
+#: src/lang.c:354
 msgid	"show version information"
 msgstr	"zeige Versionsinformationen"
 
-#: src/lang.c:352
+#: src/lang.c:355
 msgid	"mark all articles as read and return to group selection menu"
 msgstr	"markiert alle Artikel als gelesen und kehrt zum Gruppenmenü zurück"
 
-#: src/lang.c:353
+#: src/lang.c:356
 msgid	"mark all articles as read and enter next group with unread articles"
 msgstr	"markiere Artikel gelesen; öffne nä. Gruppe mit ungelesenen Artikeln"
 
-#: src/lang.c:354
+#: src/lang.c:357
 msgid	"choose first thread in list"
 msgstr	"Wähle ersten Thread in der Liste"
 
-#: src/lang.c:355
+#: src/lang.c:358
 msgid	"choose last thread in list"
 msgstr	"Wähle letzten Thread in der Liste"
 
-#: src/lang.c:356
+#: src/lang.c:359
 msgid	"list articles within current thread (bring up Thread sub-menu)"
 msgstr	"listet Artikel im aktuellen Thread (öffnet das Thread Untermenü)"
 
-#: src/lang.c:357
+#: src/lang.c:360
 msgid	"mark article as unread"
 msgstr	"markiert Artikel als ungelesen"
 
-#: src/lang.c:358
+#: src/lang.c:361
 msgid	"mark current thread or tagged threads as read"
 msgstr	"markiert den aktuellen Thread oder markierte Artikel als gelesen"
 
-#: src/lang.c:359
+#: src/lang.c:362
 msgid	"mark thread as unread"
 msgstr	"markiert den aktuellen Thread als ungelesen"
 
-#: src/lang.c:360
+#: src/lang.c:363
 msgid	"toggle display of all/selected articles"
 msgstr	"wechselt zwischen der Anzeige aller/markierter (hot) Artikel"
 
-#: src/lang.c:361
+#: src/lang.c:364
 msgid	"display next group"
 msgstr	"zeige nächste Gruppe"
 
-#: src/lang.c:362
+#: src/lang.c:365
 msgid	"display previous group"
 msgstr	"zeige vorhergehende Gruppe"
 
-#: src/lang.c:363
+#: src/lang.c:366
 msgid	"toggle all selections (all articles)"
 msgstr	"Markierung 'hot'/wichtig für alle Artikel umschalten"
 
-#: src/lang.c:364
+#: src/lang.c:367
 msgid	"select group (make \"hot\")"
 msgstr	"Markierung 'hot'/wichtig für Gruppe setzen"
 
-#: src/lang.c:365
+#: src/lang.c:368
 msgid	"select thread"
 msgstr	"Markierung 'hot'/wichtig für Thread setzen"
 
 # TODO: formating
-#: src/lang.c:366
+#: src/lang.c:369
 msgid	"select threads if at least one unread article is selected"
 msgstr	"Markierung 'hot'/wichtig für alle Threads setzen, die schon einen\n"
 	"          ungelesenen Artikel mit Markierung 'hot'/wichtig enthalten."
 
 # TODO: formating
-#: src/lang.c:367
+#: src/lang.c:370
 msgid	"select threads that match user specified pattern"
 msgstr	"Markierung 'hot'/wichtig für alle Threads setzen, die einem\n"
 	"          gewählten Muster entsprechen"
 
-#: src/lang.c:368
+#: src/lang.c:371
 msgid	"tag all parts of current multipart-message in order"
 msgstr	"markiert alle Teile der multipart-Nachrichten in der Reihenfolge"
 
-#: src/lang.c:369
+#: src/lang.c:372
 msgid	"0 - 9\t  choose thread by number"
 msgstr	"0 - 9\t  wählt Thread anhand der Nummer"
 
-#: src/lang.c:370
+#: src/lang.c:373
 msgid	"toggle limit number of articles to get, and reload"
 msgstr	"Anzahl der zu holenden oder wieder zu ladenden Artikel ändern"
 
-#: src/lang.c:371
+#: src/lang.c:374
 msgid	"toggle display of all/unread articles"
 msgstr	"wechselt zwischen der Anzeige aller/ungelesener Artikel"
 
-#: src/lang.c:372
+#: src/lang.c:375
 msgid	"toggle selection of thread"
 msgstr	"Markierung 'hot'/wichtig für Thread setzen/entfernen"
 
-#: src/lang.c:373
+#: src/lang.c:376
 msgid	"cycle through threading options available"
 msgstr	"wechsle durch die verschiedenen Threading-Optionen"
 
-#: src/lang.c:374
+#: src/lang.c:377
 msgid	"undo all selections (all articles)"
 msgstr	"Markierung 'hot'/wichtig für alle Artikel entfernen"
 
-#: src/lang.c:375
+#: src/lang.c:378
 msgid	"untag all tagged threads"
 msgstr	"hebt die Markierung der markierten Artikel auf"
 
-#: src/lang.c:376
+#: src/lang.c:379
 msgid	"mark all articles in group as read"
 msgstr	"markiert alle Artikel der Gruppe als gelesen"
 
-#: src/lang.c:377
+#: src/lang.c:380
 msgid	"mark all articles in group as read and move to next unread group"
 msgstr	"markiert Gruppe als gelesen, springt zur nächsten mit ungel. Artikeln"
 
-#: src/lang.c:378
+#: src/lang.c:381
 msgid	"choose first group in list"
 msgstr	"Wähle erste Gruppe in der Liste"
 
-#: src/lang.c:379
+#: src/lang.c:382
 msgid	"choose group by name"
 msgstr	"Gruppe anhand des Namens auswählen"
 
-#: src/lang.c:380
+#: src/lang.c:383
 msgid	"0 - 9\t  choose group by number"
 msgstr	"0 - 9\t  wählt die Gruppe anhand der Nummer"
 
-#: src/lang.c:381
+#: src/lang.c:384
 msgid	"choose range of groups to be affected by next command"
 msgstr	"Bereich der Gruppen, die vom nächsten Kommando betroffen sind"
 
-#: src/lang.c:382
+#: src/lang.c:385
 msgid	"choose last group in list"
 msgstr	"Wähle letzte Gruppe in der Liste"
 
-#: src/lang.c:383
+#: src/lang.c:386
 msgid	"mark all articles in chosen group unread"
 msgstr	"markiert alle Artikel in der gewählten Gruppe als ungelesen"
 
-#: src/lang.c:384
+#: src/lang.c:387
 msgid	"move chosen group within list"
 msgstr	"bewegt die gewählte Gruppe innerhalb der Liste"
 
-#: src/lang.c:385
+#: src/lang.c:388
 msgid	"choose next group with unread news"
 msgstr	"wählt die nächste Gruppe mit ungelesenen Artikeln"
 
-#: src/lang.c:386 src/lang.c:1187
+#: src/lang.c:389 src/lang.c:1197
 msgid	"quit"
 msgstr	"Beenden"
 
-#: src/lang.c:387
+#: src/lang.c:390
 msgid	"quit without saving configuration changes"
 msgstr	"beenden ohne die Konfigurationsänderungen zu sichern"
 
-#: src/lang.c:388
+#: src/lang.c:391
 msgid	"read chosen group"
 msgstr	"liest ausgewählte Gruppe"
 
-#: src/lang.c:389
+#: src/lang.c:392
 msgid	"reset .newsrc (all available articles in groups marked unread)"
 msgstr	"setzt die .newsrc zurück (alle Artikel als gelesen markiert)"
 
-#: src/lang.c:390
+#: src/lang.c:393
 msgid	"search backwards for a group name"
 msgstr	"sucht rückwärts nach einem Gruppennamen"
 
-#: src/lang.c:391
+#: src/lang.c:394
 msgid	" \t  (all searches are case-insensitive and wrap around)"
 msgstr	" \t  (alle Suchen sind case-insensitive und beginnen am Ende von vorn)"
 
-#: src/lang.c:392
+#: src/lang.c:395
 msgid	"search forwards for a group name"
 msgstr	"suche vorwärts nach einer Gruppe"
 
-#: src/lang.c:393
+#: src/lang.c:396
 msgid	"subscribe to chosen group"
 msgstr	"abonniert ausgewählte Gruppe"
 
-#: src/lang.c:394
+#: src/lang.c:397
 msgid	"subscribe to groups that match pattern"
 msgstr	"abonniere Gruppen, die auf das Muster passen"
 
-#: src/lang.c:395
+#: src/lang.c:398
 msgid	"reread active file to check for any new news"
 msgstr	"lies die Datei 'active' neu ein, um nach neuen Artikeln zu suchen"
 
-#: src/lang.c:396
+#: src/lang.c:399
 msgid	"toggle display of group name only or group name plus description"
 msgstr	"Anzeige der Kurzbeschreibung der Gruppe (de)aktivieren."
 
-#: src/lang.c:397
+#: src/lang.c:400
 msgid	"toggle display to show all/unread subscribed groups"
 msgstr	"wechselt die Anzeige zwischen allen/ungelesenen abonnierten Gruppen"
 
-#: src/lang.c:398
+#: src/lang.c:401
 msgid	"unsubscribe from chosen group"
 msgstr	"bestellt ausgewählte Gruppe ab"
 
-#: src/lang.c:399
+#: src/lang.c:402
 msgid	"unsubscribe from groups that match pattern"
 msgstr	"bestelle Gruppen ab, die auf das Muster passen"
 
-#: src/lang.c:400
+#: src/lang.c:403
 msgid	"sort the list of groups"
 msgstr	"Liste der Gruppen sortieren"
 
-#: src/lang.c:401
+#: src/lang.c:404
 msgid	"toggle display to show all/subscribed groups"
 msgstr	"schaltet um zwischen der Anzeige aller/abonnierten Gruppen"
 
-#: src/lang.c:402
+#: src/lang.c:405
 msgid	"0 - 9\t  choose article by number"
 msgstr	"0 - 9\t  Wähle Artikel anhand der Nummer"
 
-#: src/lang.c:403
+#: src/lang.c:406
 msgid	"mark thread as read and return to group index page"
 msgstr	"markiert den Thread als gelesen und kehrt zum Gruppenindex zurück"
 
-#: src/lang.c:404
+#: src/lang.c:407
 msgid	"mark thread as read and enter next unread thread or group"
 msgstr	"markiert Thread als gelesen; nächster ungelesener Thread/Gruppe"
 
-#: src/lang.c:405
+#: src/lang.c:408
 msgid	"choose first article in list"
 msgstr	"wähle ersten Artikel in der Liste"
 
-#: src/lang.c:406
+#: src/lang.c:409
 msgid	"choose last article in list"
 msgstr	"wähle letzten Artikel in der Liste"
 
-#: src/lang.c:407
+#: src/lang.c:410
 msgid	"mark article or tagged articles as read and move cursor to next unread article"
 msgstr	"markiert Artikel als gelesen geht zum nächsten ungelesenen Artikel"
 
-#: src/lang.c:408
+#: src/lang.c:411
 msgid	"read chosen article"
 msgstr	"zeige gewählten Artikel"
 
-#: src/lang.c:409
+#: src/lang.c:412
 msgid	"Display properties\n"
 	"------------------"
 msgstr	"Darstellungsoptionen\n"
 	"--------------------"
 
-#: src/lang.c:410
+#: src/lang.c:413
 msgid	"Miscellaneous\n"
 	"-------------"
 msgstr	"Verschiedenes\n"
 	"-------------"
 
-#: src/lang.c:411
+#: src/lang.c:414
 msgid	"Moving around\n"
 	"-------------"
 msgstr	"Position ändern\n"
 	"---------------"
 
-#: src/lang.c:412
+#: src/lang.c:415
 msgid	"Group/thread/article operations\n"
 	"-------------------------------"
 msgstr	"Gruppe/Thread/Artikel Kommandos\n"
 	"-------------------------------"
 
-#: src/lang.c:414
+#: src/lang.c:417
 msgid	"Group Level Commands"
 msgstr	"Gruppenlevel Befehle"
 
-#: src/lang.c:415
+#: src/lang.c:418
 msgid	"Kill filter added"
 msgstr	"Killfilter hinzugefügt"
 
-#: src/lang.c:416
+#: src/lang.c:419
 msgid	"Auto-selection filter added"
 msgstr	"Automatischer Auswahlfilter hinzugefügt"
 
-#: src/lang.c:417
+#: src/lang.c:420
 msgid	"All parts tagged"
 msgstr	"Alle Teile markiert"
 
-#: src/lang.c:418
+#: src/lang.c:421
 msgid	"Storing article for later posting"
 msgstr	"Speichert Artikel, um ihn später zu posten"
 
-#: src/lang.c:419
+#: src/lang.c:422
 msgid	"Please enter a valid character"
 msgstr	"Bitte ein gültiges Zeichen eingeben"
 
-#: src/lang.c:420
+#: src/lang.c:423
 #, c-format
 msgid	"Missing part #%d"
 msgstr	"Teil Nummer %d fehlt."
 
-#: src/lang.c:421
+#: src/lang.c:424
 msgid	"*** No postponed articles ***"
 msgstr	"*** Keine zurückgelegten Artikel ***"
 
-#: src/lang.c:422
+#: src/lang.c:425
 msgid	"Not a multi-part message"
 msgstr	"Kein mehrteiliger Artikel"
 
-#: src/lang.c:423
+#: src/lang.c:426
 msgid	"You are not subscribed to this group"
 msgstr	"Sie haben diese Gruppe nicht abonniert"
 
-#: src/lang.c:424
+#: src/lang.c:427
 msgid	"No previous expression"
 msgstr	"Kein vorhergehender Ausdruck"
 
-#: src/lang.c:425
+#: src/lang.c:428
 msgid	"Operation disabled in no-overwrite mode"
 msgstr	"Ausführung nicht möglich im nicht-überschreiben Modus"
 
 #. TODO: replace hardcoded key-name in txt_info_postponed
-#: src/lang.c:427
+#: src/lang.c:430
 #, c-format
 msgid	"%d postponed %s, reuse with ^O...\n"
 msgstr	"%d zurückgelegte %s, hervorholen mit ^O...\n"
 
-#: src/lang.c:428
+#: src/lang.c:431
 msgid	"X-Conversion-Note: multipart/alternative contents have been removed.\n"
 	"  To get the whole article, turn alternative handling OFF in the Option Menu\n"
 msgstr	"X-Conversion-Note: multipart/alternative Inhalt wurde entfernt.\n"
 	"  Um das zu ändern, setzen Sie in der tinrc das alternative_handling auf OFF\n"
 
-#: src/lang.c:430
+#: src/lang.c:433
 #, c-format
 msgid	"Save filename for %s/%s is a mailbox. Attachment not saved"
 msgstr	"Dateiname für %s/%s ist eine Mailbox. Anhang nicht gespeichert"
 
-#: src/lang.c:431
+#: src/lang.c:434
 msgid	"TeX2Iso encoded article"
 msgstr	"TeX2Iso kodierter Artikel"
 
-#: src/lang.c:432
+#: src/lang.c:435
 msgid	"incomplete "
 msgstr	"unvollständige "
 
 #. TODO: replace hardcoded key-names
-#: src/lang.c:434
+#: src/lang.c:437
 #, c-format
 msgid	"\n"
 	"Welcome to %s, a full screen threaded Netnews reader. It can read news "
@@ -1944,129 +1948,138 @@ msgstr	"\n"
 	"Bitte senden Sie Fehlerberichte und Kommentare mittels des 'R' Kommandos an\n"
 	"%s.\n"
 
-#: src/lang.c:450
+#: src/lang.c:453
 #, c-format
 msgid	"Invalid  From: %s  line. Read the INSTALL file again."
 msgstr	"Ungültige From: %s Zeile. Lesen sie  INSTALL nochmal."
 
-#: src/lang.c:451
+#: src/lang.c:454
 #, c-format
 msgid	"Invalid  Sender:-header %s"
 msgstr	"Ungültiger Sender:-Header %s"
 
-#: src/lang.c:452
+#: src/lang.c:455
 msgid	"Inverse video disabled"
 msgstr	"Inverse Bilddarstellung abgestellt"
 
-#: src/lang.c:453
+#: src/lang.c:456
 msgid	"Inverse video enabled"
 msgstr	"Inverse Bilddarstellung eingeschaltet"
 
-#: src/lang.c:455
+#: src/lang.c:458
 #, c-format
 msgid	"Missing definition for %s\n"
 msgstr	"Fehlende Definition für %s\n"
 
-#: src/lang.c:456
+#: src/lang.c:459
 #, c-format
 msgid	"Invalid key definition '%s'\n"
 msgstr	"Ungültige Tastenbelegung '%s'\n"
 
-#: src/lang.c:457
+#: src/lang.c:460
 #, c-format
 msgid	"Invalid keyname '%s'\n"
 msgstr	"Ungültiger Tastenname '%s'\n"
 
-#: src/lang.c:458
+#: src/lang.c:462
 #, c-format
 msgid	"Key '%s' is defined for both %s%s and %s%s\n"
 msgstr	"Taste '%s' ist für %s%s und %s%s definiert\n"
 
-#: src/lang.c:459
+#: src/lang.c:464
+#, c-format
+msgid	"Keymap file was upgraded to version %s\n"
+msgstr	"Keymap-File wurde auf Version %s umgestellt\n"
+
+#: src/lang.c:465
 #, c-format
 msgid	"Kill From:     [%s] (y/n): "
 msgstr	"Filter From:   [%s] (j/n): "
 
-#: src/lang.c:460
+#: src/lang.c:466
 msgid	"Kill Lines: (</>num): "
 msgstr	"Filter Z.:  (</>num): "
 
-#: src/lang.c:461
+#: src/lang.c:467
 msgid	"Kill Article Menu"
 msgstr	"Filter Menü (Kill, Bewertung/Score verringern)"
 
-#: src/lang.c:462
+#: src/lang.c:468
 #, c-format
 msgid	"Kill Msg-Id:   [%s] (f/l/o/n): "
 msgstr	"Filter Msg-Id: [%s] (v/l/n/n): "
 
-#: src/lang.c:463
+#: src/lang.c:469
 msgid	"Kill pattern scope  : "
 msgstr	"Filter nach Muster  : "
 
-#: src/lang.c:464
+#: src/lang.c:470
 #, c-format
 msgid	"Kill Subject:  [%s] (y/n): "
 msgstr	"Filter Subject:[%s] (j/n): "
 
-#: src/lang.c:465
+#: src/lang.c:471
 msgid	"Kill text pattern   : "
 msgstr	"Filter Textmuster   : "
 
-#: src/lang.c:466
+#: src/lang.c:472
 msgid	"Kill time in days   : "
 msgstr	"Filterzeit in Tagen : "
 
-#: src/lang.c:468
+#: src/lang.c:474
 msgid	"Last"
 msgstr	"Letzte"
 
-#: src/lang.c:469
+#: src/lang.c:475
 msgid	"-- Last response --"
 msgstr	"-- Letzte Antwort --"
 
-#: src/lang.c:470
+#: src/lang.c:476
 #, c-format
 msgid	"Lines %s  "
 msgstr	"Zeilen %s "
 
-#: src/lang.c:472
+#: src/lang.c:478
 msgid	"Message-ID: line              "
 msgstr	"Message-ID: Zeile             "
 
-#: src/lang.c:474
+#: src/lang.c:479
+msgid	"Mail"
+msgstr	"Maile"
+
+#: src/lang.c:480
 msgid	"mailbox "
 msgstr	"Mailbox "
 
-#: src/lang.c:475
+#: src/lang.c:481
 #, c-format
 msgid	"Mail article(s) to [%.*s]> "
 msgstr	"Mailt Artikel an [%.*s]> "
 
-#: src/lang.c:476
+#: src/lang.c:482
 #, c-format
 msgid	"Mailing log to %s\n"
 msgstr	"Maile Log-Datei an %s\n"
 
-#: src/lang.c:477
+#: src/lang.c:483
 msgid	"Mail bug report..."
 msgstr	"Maile einen Fehlerbericht..."
 
-#: src/lang.c:478
+#: src/lang.c:484
 #, c-format
 msgid	"Mail BUG REPORT to %s?"
 msgstr	"Fehlerbericht an %s senden?"
 
-#: src/lang.c:479
+#: src/lang.c:485
 msgid	"Mailed"
 msgstr	"Gemailt"
 
-#: src/lang.c:480
+#: src/lang.c:486
 #, c-format
 msgid	"Mailing to %s..."
 msgstr	"Senden der Mail an %s..."
 
-#: src/lang.c:481
+#: src/lang.c:487
 msgid	"# [Mail/Save] active file. Format is like news active file:\n"
 	"#   groupname  max.artnum  min.artnum  /dir\n"
 	"# The 4th field is the basedir (ie. ~/Mail or ~/News)\n"
@@ -2076,283 +2089,283 @@ msgstr	"# [Mail/Speicher] active-Datei. 
 	"# Das 4. Feld ist das Basisverzeichnis (z.B. ~/Mail oder ~/News)\n"
 	"#\n"
 
-#: src/lang.c:484
+#: src/lang.c:490
 #, c-format
 msgid	"%s marked as unread"
 msgstr	"%s als ungelesen markiert"
 
-#: src/lang.c:485
+#: src/lang.c:491
 #, c-format
 msgid	"Marked %d of %d tagged %s as read"
 msgstr	"%d von %d %s als gelesen markiert"
 
-#: src/lang.c:486
+#: src/lang.c:492
 #, c-format
 msgid	"Mark all articles as read%s?"
 msgstr	"Alle Artikel als gelesen markieren%s?"
 
-#: src/lang.c:487
+#: src/lang.c:493
 #, c-format
 msgid	"Mark %s=tagged articles, %s=current article, %s=quit: "
 msgstr	"%s=markierte oder %s=aktuellen Artikel auf gelesen setzen. %s=Abbrechen: "
 
-#: src/lang.c:488
+#: src/lang.c:494
 #, c-format
 msgid	"Mark group %s as read?"
 msgstr	"Die Gruppe %s als gelesen markieren?"
 
-#: src/lang.c:489
+#: src/lang.c:495
 #, c-format
 msgid	"Mark thread as read%s?"
 msgstr	"Den Thread als gelesen markieren%s?"
 
-#: src/lang.c:490
+#: src/lang.c:496
 #, c-format
 msgid	"Mark %s=tagged articles/threads, %s=current thread, %s=quit: "
 msgstr	"%s=markierte oder %s=aktuellen Artikel/Thread auf gelesen setzen. "
 	"%s=Abbrechen: "
 
-#: src/lang.c:491
+#: src/lang.c:497
 #, c-format
 msgid	"Matching %s groups..."
 msgstr	"Übereinstimmende %s Gruppen..."
 
-#: src/lang.c:492 src/lang.c:496
+#: src/lang.c:498 src/lang.c:502
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s=search pattern; %s=kill/select"
 msgstr	"<n>=Wähle n; %s=n. ungel.; %s=Suche; %s=Filter"
 
-#: src/lang.c:493
+#: src/lang.c:499
 #, c-format
 msgid	"%s=author search; %s=catchup; %s=line down; %s=line up; %s=mark read; %s=list "
 	"thread"
 msgstr	"%s=Autorsuche; %s=Catchup; %s=n. unten; %s=n. oben; %s=gelesen; %s=Thread anz."
 
-#: src/lang.c:494
+#: src/lang.c:500
 #, c-format
 msgid	"%s=line up; %s=line down; %s=page up; %s=page down; %s=top; %s=bottom"
 msgstr	"%s=n. oben; %s=n. unten; %s=BildAuf; %s=BildAb; %s=Anfang; %s=letzte Zeile"
 
-#: src/lang.c:495
+#: src/lang.c:501
 #, c-format
 msgid	"%s=search forwards; %s=search backwards; %s=quit"
 msgstr	"%s=Suche vorwärts; %s=Suche rückwärts; %s=Beenden"
 
-#: src/lang.c:497
+#: src/lang.c:503
 #, c-format
 msgid	"%s=author search; %s=body search; %s=catchup; %s=followup; %s=mark read"
 msgstr	"%s=Autorsuche; %s=Su. Inhalt; %s=Catchup; %s=Antw in NG; %s=gelesen"
 
-#: src/lang.c:498
+#: src/lang.c:504
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s,%s=search pattern; %s=catchup"
 msgstr	"<n>=Wähle n; %s=n. ungel.; %s,%s=Suche; %s=Catchup"
 
-#: src/lang.c:499
+#: src/lang.c:505
 #, c-format
 msgid	"%s=line down; %s=line up; %s=help; %s=move; %s=quit; %s=toggle all/unread"
 msgstr	"%s=n. unten; %s=n. oben; %s=Hilfe; %s=verschieben; %s=Ende; %s=Alle/Nur ungel."
 
-#: src/lang.c:500
+#: src/lang.c:506
 #, c-format
 msgid	"%s=subscribe; %s=sub pattern; %s=unsubscribe; %s=unsub pattern; %s=yank in/out"
 msgstr	"%s=Abo; %s=Abo n. Muster; %s=Abbestellen; %s=Abbest. n. Muster; %s=Alle/Nur "
 	"abon."
 
-#: src/lang.c:501
+#: src/lang.c:507
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s=catchup; %s=display toggle"
 msgstr	"<n>=Wähle n; %s=n. ungel.; %s=Catchup; %s=Infozeile"
 
-#: src/lang.c:502
+#: src/lang.c:508
 #, c-format
 msgid	"%s=help; %s=line down; %s=line up; %s=quit; %s=tag; %s=mark unread"
 msgstr	"%s=Hilfe; %s=n. unten; %s=n. oben; %s=Ende; %s=tag; %s=ungelesen"
 
-#: src/lang.c:503
+#: src/lang.c:509
 msgid	"--More--"
 msgstr	"--Mehr--"
 
-#: src/lang.c:504
+#: src/lang.c:510
 #, c-format
 msgid	"Moving %s..."
 msgstr	"Verschiebe %s..."
 
-#: src/lang.c:506
+#: src/lang.c:512
 msgid	", name: "
 msgstr	", Name: "
 
-#: src/lang.c:507
+#: src/lang.c:513
 #, c-format
 msgid	"Goto newsgroup [%s]> "
 msgstr	"Gehe zu Gruppe [%s]> "
 
-#: src/lang.c:508
+#: src/lang.c:514
 msgid	"newsgroups"
 msgstr	"Gruppen"
 
-#: src/lang.c:509
+#: src/lang.c:515
 #, c-format
 msgid	"Position %s in group list (1,2,..,$) [%d]> "
 msgstr	"Position %s in der Gruppenliste (1,2,..,$) [%d]> "
 
-#: src/lang.c:510
+#: src/lang.c:516
 msgid	"newsgroup"
 msgstr	"Gruppe"
 
-#: src/lang.c:511
+#: src/lang.c:517
 msgid	"Try and save newsrc file again?"
 msgstr	"Erneut versuchen, die newsrc-Datei zu schreiben?"
 
-#: src/lang.c:512
+#: src/lang.c:518
 msgid	"Warning: No newsgroups were written to your newsrc file. Save aborted."
-msgstr	"Warnung: Keine Newsgruppen in die newsrc geschrieben. Speicherabbruch"
+msgstr	"Warnung: Keine Newsgruppen in die newsrc geschrieben. Speicherabbruch."
 
-#: src/lang.c:513
+#: src/lang.c:519
 msgid	"newsrc file saved successfully.\n"
 msgstr	"newsrc-Datei erfolgreich geschrieben.\n"
 
-#: src/lang.c:514
+#: src/lang.c:520
 msgid	"-- Next response --"
 msgstr	"-- Nächste Antwort --"
 
-#: src/lang.c:515
+#: src/lang.c:521
 #, c-format
 msgid	"NNTP authorization password not found for %s"
 msgstr	"NNTP Anmeldepasswort für %s nicht gefunden"
 
-#: src/lang.c:516
+#: src/lang.c:522
 msgid	"No  "
 msgstr	"Nein"
 
-#: src/lang.c:517
+#: src/lang.c:523
 msgid	"*** No articles ***"
 msgstr	"*** Keine Artikel ***"
 
-#: src/lang.c:518
+#: src/lang.c:524
 msgid	"No articles have been posted"
 msgstr	"Es wurden keine Artikel gepostet"
 
-#: src/lang.c:519
+#: src/lang.c:525
 msgid	"*** No description ***"
 msgstr	"*** Keine Kurzbeschreibung ***"
 
-#: src/lang.c:520
+#: src/lang.c:526
 msgid	"No filename"
 msgstr	"Kein Dateiname"
 
-#: src/lang.c:521
+#: src/lang.c:527
 msgid	"No group"
 msgstr	"Keine Gruppe"
 
-#: src/lang.c:522
+#: src/lang.c:528
 msgid	"*** No groups ***"
 msgstr	"*** Keine Newsgruppen ***"
 
-#: src/lang.c:523
+#: src/lang.c:529
 msgid	"No more groups to read"
 msgstr	"Keine Gruppen zum Lesen übrig"
 
-#: src/lang.c:524
+#: src/lang.c:530
 msgid	"No last message"
 msgstr	"Keine letzte Nachricht"
 
-#: src/lang.c:525
+#: src/lang.c:531
 msgid	"No mail address"
 msgstr	"Keine EMail-Adresse"
 
-#: src/lang.c:526
+#: src/lang.c:532
 msgid	"No articles marked for saving"
 msgstr	"Keine Artikel zum Speichern markiert"
 
-#: src/lang.c:527
+#: src/lang.c:533
 msgid	"No match"
 msgstr	"Kein Treffer"
 
-#: src/lang.c:528
+#: src/lang.c:534
 msgid	"No more groups"
 msgstr	"Keine Gruppen mehr"
 
-#: src/lang.c:529
+#: src/lang.c:535
 msgid	"No newsgroups"
 msgstr	"Keine Newsgruppen"
 
-#: src/lang.c:530
+#: src/lang.c:536
 msgid	"No next unread article"
 msgstr	"Kein nächster ungelesener Artikel"
 
-#: src/lang.c:531
+#: src/lang.c:537
 msgid	"No previous group"
 msgstr	"Keine vorherige Gruppe"
 
-#: src/lang.c:532
+#: src/lang.c:538
 msgid	"No previous unread article"
 msgstr	"Kein vorheriger ungelesener Artikel"
 
-#: src/lang.c:533
+#: src/lang.c:539
 msgid	"No responses"
 msgstr	"Keine Antworten"
 
-#: src/lang.c:534
+#: src/lang.c:540
 msgid	"No responses to list in current thread"
 msgstr	"Keine Antworten vorhanden im aktuellen Thread"
 
-#: src/lang.c:535
+#: src/lang.c:541
 msgid	"No search string"
 msgstr	"Kein Suchmuster"
 
-#: src/lang.c:536
+#: src/lang.c:542
 msgid	"No subject"
 msgstr	"Kein Subject"
 
-#: src/lang.c:538
+#: src/lang.c:544
 #, c-format
 msgid	"%s: Terminal must have clear to end-of-line (ce)\n"
 msgstr	"%s: Terminal muss Löschen bis zum Ende der Zeile (ce) unterstützen\n"
 
-#: src/lang.c:539
+#: src/lang.c:545
 #, c-format
 msgid	"%s: Terminal must have clear to end-of-screen (cd)\n"
 msgstr	"%s: Terminal muss Löschen bis zum Ende des Schirmes unterstützen (cd)\n"
 
-#: src/lang.c:540
+#: src/lang.c:546
 #, c-format
 msgid	"%s: Terminal must have clearscreen (cl) capability\n"
 msgstr	"%s: Terminal muss Schirmlöschen (cl) unterstützen\n"
 
-#: src/lang.c:541
+#: src/lang.c:547
 #, c-format
 msgid	"%s: Terminal must have cursor motion (cm)\n"
 msgstr	"%s: Terminal muss Cursor-Bewegungen unterstützen (cm)\n"
 
-#: src/lang.c:542
+#: src/lang.c:548
 #, c-format
 msgid	"%s: TERM variable must be set to use screen capabilities\n"
 msgstr	"%s: TERM-Variable muss gesetzt sein, um das Terminal richtig anzusteuern\n"
 
-#: src/lang.c:544
+#: src/lang.c:550
 #, c-format
 msgid	"No viewer found for %s/%s\n"
 msgstr	"Kein Programm für %s/%s gefunden\n"
 
-#: src/lang.c:545
+#: src/lang.c:551
 msgid	"Newsgroup does not exist on this server"
 msgstr	"Newsgruppe existiert nicht auf diesem Server"
 
-#: src/lang.c:546
+#: src/lang.c:552
 #, c-format
 msgid	"Group %s not found in active file"
 msgstr	"Gruppe %s nicht in der Active-Datei gefunden"
 
-#: src/lang.c:547
+#: src/lang.c:553
 msgid	"c)reate it, use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr	"c=erzeuge, a=alternativer Name, d=voreingestellte .newsrc, q=beende tin: "
 
-#: src/lang.c:548
+#: src/lang.c:554
 msgid	"use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr	"a=alternativer Name, d=voreingestellte .newsrc, q=beende tin: "
 
-#: src/lang.c:549
+#: src/lang.c:555
 #, c-format
 msgid	"# NNTP-server -> newsrc translation table and NNTP-server\n"
 	"# shortname list for %s %s\n"
@@ -2379,40 +2392,40 @@ msgstr	"# NNTP-Server -> newsrc Übersetz
 	"#   news.ka.nu    /tmp/nrc-nu      kanu    nu\n"
 	"#\n"
 
-#: src/lang.c:556
+#: src/lang.c:562
 msgid	"Only"
 msgstr	"Nur"
 
-#: src/lang.c:557
+#: src/lang.c:563
 #, c-format
 msgid	"Option not enabled. Recompile with %s."
-msgstr	"Option nicht vorhanden. Neukompilieren mit %s."
+msgstr	"Option nicht vorhanden. Neu kompilieren mit %s."
 
-#: src/lang.c:558
+#: src/lang.c:564
 msgid	"Options Menu"
 msgstr	"Optionsmenü"
 
-#: src/lang.c:561
+#: src/lang.c:567
 #, c-format
 msgid	"Error in regex: %s at pos. %d '%s'"
 msgstr	"Fehler im regulären Ausdruck: %s an Pos. %d '%s'"
 
-#: src/lang.c:562
+#: src/lang.c:568
 #, c-format
 msgid	"Error in regex: pcre internal error %d"
 msgstr	"Fehler im regulären Ausdruck: Interner Fehler %d des pcre"
 
-#: src/lang.c:563
+#: src/lang.c:569
 #, c-format
 msgid	"Error in regex: study - pcre internal error %s"
 msgstr	"Fehler im regulären Ausdruck: pcre interner Fehler %s"
 
-#: src/lang.c:564
+#: src/lang.c:570
 msgid	"Post a followup..."
 msgstr	"Schreibe eine Antwort..."
 
 #. TODO: replace hardcoded key-name in txt_post_error_ask_postpone
-#: src/lang.c:566
+#: src/lang.c:572
 msgid	"An error has occurred while posting the article. If you think that this\n"
 	"error is temporary or otherwise correctable, you can postpone the article\n"
 	"and pick it up again with ^O later.\n"
@@ -2420,274 +2433,274 @@ msgstr	"Ein Fehler trat beim Posten des 
 	"ein temporäres Problem ist, das später nicht mehr vorhanden ist, können Sie\n"
 	"den Artikel zurückstellen und später mit ^O wieder hervorholen.\n"
 
-#: src/lang.c:569
+#: src/lang.c:575
 msgid	"Posted articles history"
 msgstr	"Übersicht der geposteten Artikel"
 
-#: src/lang.c:570
+#: src/lang.c:576
 #, c-format
 msgid	"Post to newsgroup(s) [%s]> "
 msgstr	"In Newsgruppe(n) [%s] posten> "
 
-#: src/lang.c:571
+#: src/lang.c:577
 msgid	"-- post processing started --"
 msgstr	"-- Nachbearbeitung gestartet --"
 
-#: src/lang.c:572
+#: src/lang.c:578
 msgid	"-- post processing completed --"
 msgstr	"-- Nachbearbeitung beendet --"
 
-#: src/lang.c:573
+#: src/lang.c:579
 #, c-format
 msgid	"Post subject [%s]> "
 msgstr	"Wähle Subject [%s]> "
 
-#: src/lang.c:574
+#: src/lang.c:580
 msgid	"# Summary of mailed/posted messages viewable by 'W' command from within tin.\n"
 msgstr	"# Zusammenfassung der gemailten/geposteten Artikel mit 'W' in tin.\n"
 
-#: src/lang.c:575
+#: src/lang.c:581
 msgid	"Posting article..."
 msgstr	"Poste Artikel..."
 
-#: src/lang.c:576
+#: src/lang.c:582
 msgid	"Post postponed articles [%%s]? (%s/%s/%s/%s/%s): "
 msgstr	"Zurückgelegten Artikel [%%s]posten? (%s/%s/%s/%s/%s): "
 
-#: src/lang.c:577
+#: src/lang.c:583
 #, c-format
 msgid	"Hot %s"
 msgstr	"Wichtig/Hot %s"
 
-#: src/lang.c:578
+#: src/lang.c:584
 #, c-format
 msgid	"Tagged %s"
 msgstr	"%s markiert"
 
-#: src/lang.c:579
+#: src/lang.c:585
 #, c-format
 msgid	"Untagged %s"
 msgstr	"%s Markierung entfernt"
 
-#: src/lang.c:580
+#: src/lang.c:586
 msgid	"Processing mail messages marked for deletion."
-msgstr	"Bearbeite zum Löschen markierte EMails"
+msgstr	"Bearbeite zum Löschen markierte EMails."
 
-#: src/lang.c:581
+#: src/lang.c:587
 msgid	"Processing saved articles marked for deletion."
 msgstr	"Bearbeite zum Löschen markierte gespeicherte Artikel."
 
-#: src/lang.c:582
+#: src/lang.c:588
 #, c-format
 msgid	"Accept Followup-To? %s=post, %s=ignore, %s=quit: "
 msgstr	"Followup-To akzeptieren? %s=posten, %s=ignorieren, %s=Ende: "
 
-#: src/lang.c:583
+#: src/lang.c:589
 msgid	"Article unchanged, abort mailing?"
 msgstr	"Mail unverändert, Absenden abbrechen?"
 
-#: src/lang.c:584
+#: src/lang.c:590
 #, c-format
 msgid	"Do you want to see postponed articles (%d)?"
 msgstr	"Wollen Sie die zurückgestellten Artikel sehen (%d)?"
 
-#: src/lang.c:586
+#: src/lang.c:592
 msgid	"Add quick kill filter?"
 msgstr	"Artikel schnell (laut Voreinstellungen) killen?"
 
-#: src/lang.c:587
+#: src/lang.c:593
 msgid	"Add quick selection filter?"
 msgstr	"Filterregel (hochscoren) (laut Voreinstellungen) hinzufügen?"
 
-#: src/lang.c:588
+#: src/lang.c:594
 msgid	"Do you really want to quit?"
 msgstr	"Möchten Sie das Programm wirklich beenden?"
 
-#: src/lang.c:589
+#: src/lang.c:595
 msgid	"%s=edit cancel message, %s=quit, %s=delete (cancel) [%%s]: "
 msgstr	"%s=cancel-Nachricht editieren, %s=Ende, %s=löschen [%%s]: "
 
-#: src/lang.c:590
+#: src/lang.c:596
 msgid	"You have tagged articles in this group - quit anyway?"
 msgstr	"Es befinden sich markierte Artikel in der Gruppe, trotzdem beenden?"
 
-#: src/lang.c:591
+#: src/lang.c:597
 #, c-format
 msgid	"%s=quit, %s=edit, %s=postpone: "
 msgstr	"%s=Ende, %s=bearbeiten, %s=zurücklegen: "
 
-#: src/lang.c:592
+#: src/lang.c:598
 #, c-format
 msgid	"%s=quit %s=edit %s=save kill description: "
 msgstr	"%s=Abbrechen %s=Editieren %s=Kill-Filter speichern: "
 
-#: src/lang.c:593
+#: src/lang.c:599
 #, c-format
 msgid	"%s=quit %s=edit %s=save select description: "
-msgstr	" %s=Abbrechen %s=Editieren %s=Filter (hot) speichern: "
+msgstr	"%s=Abbrechen %s=Editieren %s=Filter (hot) speichern: "
 
-#: src/lang.c:594
+#: src/lang.c:600
 msgid	"Do you really want to quit without saving your configuration?"
 msgstr	"Wirklich ohne Speichern der Konfiguration beenden?"
 
-#: src/lang.c:597
+#: src/lang.c:603
 msgid	"Invalid range - valid are '0-9.$' eg. 1-$"
 msgstr	"Ungültige Bereichsangabe - Gültig wäre '0-9.$' z.B. 1-$"
 
-#: src/lang.c:598
+#: src/lang.c:604
 msgid	"Do you want to abort this operation?"
 msgstr	"Wollen Sie diese Operation abbrechen?"
 
-#: src/lang.c:599
+#: src/lang.c:605
 msgid	"Do you want to exit tin immediately?"
 msgstr	"Wollen Sie tin augenblicklich verlassen?"
 
-#: src/lang.c:600
+#: src/lang.c:606
 msgid	"Read response> "
 msgstr	"Lese Antwort> "
 
-#: src/lang.c:601
+#: src/lang.c:607
 msgid	"Reading ('q' to quit)..."
 msgstr	"Lesen ('q' zum Beenden)..."
 
-#: src/lang.c:602
+#: src/lang.c:608
 #, c-format
 msgid	"Reading %sarticles..."
 msgstr	"Lese %sArtikel..."
 
-#: src/lang.c:603
+#: src/lang.c:609
 #, c-format
 msgid	"Reading %sattributes file...\n"
 msgstr	"Lese %sAttribute-Datei...\n"
 
-#: src/lang.c:604
+#: src/lang.c:610
 #, c-format
 msgid	"Reading %sconfig file...\n"
 msgstr	"Lese %sKonfigurations-Datei...\n"
 
-#: src/lang.c:605
+#: src/lang.c:611
 msgid	"Reading filter file...\n"
 msgstr	"Lese Filter-Datei...\n"
 
-#: src/lang.c:606
+#: src/lang.c:612
 #, c-format
 msgid	"Reading %s groups..."
 msgstr	"Lese %s Gruppen..."
 
-#: src/lang.c:607
+#: src/lang.c:613
 msgid	"Reading input history file...\n"
 msgstr	"Lese Eingabe-History...\n"
 
-#: src/lang.c:608
+#: src/lang.c:614
 msgid	"Reading keymap file...\n"
 msgstr	"Lese Tastaturbelegungen...\n"
 
-#: src/lang.c:609
+#: src/lang.c:615
 msgid	"Reading groups from active file... "
 msgstr	"Lese Gruppen aus dem Active... "
 
-#: src/lang.c:610
+#: src/lang.c:616
 msgid	"Reading groups from newsrc file... "
 msgstr	"Lese Gruppen aus der newsrc-Datei... "
 
-#: src/lang.c:611
+#: src/lang.c:617
 msgid	"Reading newsgroups file... "
 msgstr	"Lese Newsgroups-Datei... "
 
-#: src/lang.c:612
+#: src/lang.c:618
 msgid	"Reading newsrc file..."
 msgstr	"Lese newsrc-Datei..."
 
-#: src/lang.c:614
+#: src/lang.c:620
 #, c-format
 msgid	"(%d:%02d remaining)"
 msgstr	"(noch %d:%02d benötigt)"
 
-#: src/lang.c:616
+#: src/lang.c:622
 #, c-format
 msgid	"Bogus group %s removed."
 msgstr	"Nicht vorhandene Gruppe %s entfernt."
 
-#: src/lang.c:617
+#: src/lang.c:623
 #, c-format
 msgid	"Error: rename %s to %s"
 msgstr	"Fehler: Benenne %s in %s"
 
-#: src/lang.c:618
+#: src/lang.c:624
 msgid	"Reply to author..."
 msgstr	"Mailantwort an Autor..."
 
-#: src/lang.c:619
+#: src/lang.c:625
 msgid	"Repost"
 msgstr	"Reposte"
 
-#: src/lang.c:620
+#: src/lang.c:626
 msgid	"Reposting article..."
 msgstr	"Wiederholtes posten des Artikels..."
 
-#: src/lang.c:621
+#: src/lang.c:627
 #, c-format
 msgid	"Repost article(s) to group(s) [%s]> "
 msgstr	"Wiederholtes posten de(s|r) Artikel(s) in [%s]> "
 
-#: src/lang.c:622
+#: src/lang.c:628
 msgid	"Reset newsrc?"
 msgstr	"newsrc zurücksetzen?"
 
-#: src/lang.c:623
+#: src/lang.c:629
 msgid	"Responses have been directed to the following newsgroups"
 msgstr	"Antworten werden in folgende Gruppen gepostet"
 
-#: src/lang.c:624
+#: src/lang.c:630
 #, c-format
 msgid	"Responses have been directed to poster. %s=mail, %s=post, %s=quit: "
 msgstr	"Antwort per Mail wurde angefordert. %s=Mail, %s=post, %s=beenden: "
 
-#: src/lang.c:625
+#: src/lang.c:631
 #, c-format
 msgid	"RespNo %4d of %4d"
 msgstr	"Antw. %4d von %4d"
 
-#: src/lang.c:626
+#: src/lang.c:632
 msgid	"Press <RETURN> to continue..."
 msgstr	"Drücken sie <RETURN> um fortzufahren..."
 
-#: src/lang.c:628
+#: src/lang.c:634
 #, c-format
 msgid	"Select From    [%s] (y/n): "
 msgstr	"Wähle From     [%s] (j/n): "
 
-#: src/lang.c:629
+#: src/lang.c:635
 msgid	"Select Lines: (</>num): "
 msgstr	"Wähle Zeilen: (</>num): "
 
-#: src/lang.c:630
+#: src/lang.c:636
 msgid	"Auto-select Article Menu"
 msgstr	"Filter Menü (Bewertung/Score erhöhen)"
 
-#: src/lang.c:631
+#: src/lang.c:637
 #, c-format
 msgid	"Select Msg-Id  [%s] (f/l/o/n): "
 msgstr	"Wähle Msg-Id   [%s] (v/l/n/n): "
 
-#: src/lang.c:632
+#: src/lang.c:638
 msgid	"Select pattern scope: "
 msgstr	"Wähle Muster        : "
 
-#: src/lang.c:633
+#: src/lang.c:639
 #, c-format
 msgid	"Select Subject [%s] (y/n): "
 msgstr	"Wähle Subject  [%s] (j/n): "
 
-#: src/lang.c:634
+#: src/lang.c:640
 msgid	"Select text pattern : "
 msgstr	"Wähle Textmuster    : "
 
-#: src/lang.c:635
+#: src/lang.c:641
 msgid	"Select time in days   : "
 msgstr	"Wähle Zeit in Tagen   : "
 
-#: src/lang.c:636
+#: src/lang.c:642
 #, c-format
 msgid	"# %s server configuration file\n"
 	"# This file was automatically saved by %s %s %s (\"%s\")\n"
@@ -2707,222 +2720,222 @@ msgstr	"# %s Server Konfigurationsdatei\
 	"############################################################################\n"
 	"\n"
 
-#: src/lang.c:642
+#: src/lang.c:648
 msgid	"Showing unread groups only"
 msgstr	"Zeige nur Gruppen mit ungelesenen Artikeln"
 
-#: src/lang.c:643
+#: src/lang.c:649
 msgid	"Subject: line (ignore case)   "
 msgstr	"Subject: Z. (Groß-Kl. ign.)                  "
 
-#: src/lang.c:644
+#: src/lang.c:650
 msgid	"Subject: line (case sensitive)"
 msgstr	"Subject: Z. (Groß-Kl. beachten)              "
 
-#: src/lang.c:645
+#: src/lang.c:651
 msgid	"Save"
 msgstr	"Speichern"
 
-#: src/lang.c:646
+#: src/lang.c:652
 #, c-format
 msgid	"Save '%s' (%s/%s)?"
 msgstr	"'%s' (%s/%s) speichern?"
 
-#: src/lang.c:647
+#: src/lang.c:653
 msgid	"Save configuration before continuing?"
 msgstr	"Zuerst Konfiguration speichern und danach fortfahren?"
 
-#: src/lang.c:648
+#: src/lang.c:654
 msgid	"Save filename> "
 msgstr	"Name der zu speichernden Datei> "
 
-#: src/lang.c:649
+#: src/lang.c:655
 msgid	"Saved"
 msgstr	"Gespeichert"
 
-#: src/lang.c:650
+#: src/lang.c:656
 #, c-format
 msgid	"%4d unread (%4d hot) %s in %s\n"
 msgstr	"%4d ungelesene (%4d 'hot') %s in %s\n"
 
-#: src/lang.c:651
+#: src/lang.c:657
 #, c-format
 msgid	"Saved %s...\n"
 msgstr	"%s gespeichert...\n"
 
-#: src/lang.c:652
+#: src/lang.c:658
 msgid	"Nothing was saved"
 msgstr	"Nichts gespeichert"
 
-#: src/lang.c:653
+#: src/lang.c:659
 #, c-format
 msgid	"\n"
 	"%s %d %s from %d %s\n"
 msgstr	"\n"
 	"%s %d %s aus %d %s\n"
 
-#: src/lang.c:654
+#: src/lang.c:660
 #, c-format
 msgid	"-- %s saved to %s%s --"
 msgstr	"-- %s nach %s%s gespeichert --"
 
-#: src/lang.c:655
+#: src/lang.c:661
 #, c-format
 msgid	"-- %s saved to %s - %s --"
 msgstr	"-- %s gespeichert als %s - %s --"
 
-#: src/lang.c:656
+#: src/lang.c:662
 msgid	"Saving..."
 msgstr	"Speichere..."
 
-#: src/lang.c:657
+#: src/lang.c:663
 #, c-format
 msgid	"%s: Screen initialization failed"
 msgstr	"%s: Initialisierung des Bildschirms fehlgeschlagen"
 
-#: src/lang.c:659
+#: src/lang.c:665
 #, c-format
 msgid	"%s: screen is too small\n"
 msgstr	"%s: Anzeige ist zu klein\n"
 
-#: src/lang.c:661
+#: src/lang.c:667
 #, c-format
 msgid	"screen is too small, %s is exiting\n"
 msgstr	"Anzeige zu klein, %s beendet sich\n"
 
-#: src/lang.c:662
+#: src/lang.c:668
 #, c-format
 msgid	"Search backwards [%s]> "
 msgstr	"Suche rückwärts [%s]> "
 
-#: src/lang.c:663
+#: src/lang.c:669
 #, c-format
 msgid	"Search body [%s]> "
 msgstr	"Durchsuche Artikelinhalt [%s]> "
 
-#: src/lang.c:664
+#: src/lang.c:670
 #, c-format
 msgid	"Search forwards [%s]> "
 msgstr	"Suche vorwärts [%s]> "
 
-#: src/lang.c:665
+#: src/lang.c:671
 msgid	"Searching..."
 msgstr	"Suche..."
 
-#: src/lang.c:666
+#: src/lang.c:672
 #, c-format
 msgid	"Searching article %d of %d ('q' to abort)..."
 msgstr	"Suche Artikel %d von %d ('q' zum abbrechen)..."
 
-#: src/lang.c:667
+#: src/lang.c:673
 msgid	"Select article> "
 msgstr	"Wähle Artikel> "
 
-#: src/lang.c:668
+#: src/lang.c:674
 msgid	"Select option number before text or use arrow keys and <CR>. 'q' to quit."
 msgstr	"Wähle Optionsnummer, oder benutze die Cursor Tasten und <CR>. 'q' zum beenden."
 
-#: src/lang.c:669
+#: src/lang.c:675
 msgid	"Select group> "
 msgstr	"Wähle Gruppe> "
 
-#: src/lang.c:670
+#: src/lang.c:676
 #, c-format
 msgid	"Enter selection pattern [%s]> "
 msgstr	"Nenne das Auswahlmuster [%s]> "
 
-#: src/lang.c:671
+#: src/lang.c:677
 msgid	"Select thread > "
 msgstr	"Wähle thread > "
 
-#: src/lang.c:672
+#: src/lang.c:678
 #, c-format
 msgid	"%s %s %s (\"%s\") [%s]: send a DETAILED bug report to %s\n"
-msgstr	"%s %s %s (\"%s\") [%s]: schicken sie einen DETAILIERTEN Fehlerbericht an %s\n"
+msgstr	"%s %s %s (\"%s\") [%s]: schicken sie einen DETAILLIERTEN Fehlerbericht an %s\n"
 
-#: src/lang.c:673
+#: src/lang.c:679
 msgid	"servers active-file"
 msgstr	"Die 'active' Datei des Servers"
 
-#: src/lang.c:674
+#: src/lang.c:680
 msgid	"Cannot move into new newsgroups. Subscribe first..."
 msgstr	"Kann die Newsgruppe nicht öffnen. Sie muss erst abonniert werden..."
 
-#: src/lang.c:675
+#: src/lang.c:681
 msgid	"<SPACE>"
 msgstr	"<LEERT>"
 
-#: src/lang.c:676
+#: src/lang.c:682
 #, c-format
 msgid	"Starting: (%s)"
 msgstr	"Starte: (%s)"
 
-#: src/lang.c:677
+#: src/lang.c:683
 #, c-format
 msgid	"List Thread (%d of %d)"
 msgstr	"Zeige Thread (%d von %d)"
 
-#: src/lang.c:678
+#: src/lang.c:684
 #, c-format
 msgid	"Thread (%.*s)"
 msgstr	"Thread (%.*s)"
 
-#: src/lang.c:679
+#: src/lang.c:685
 msgid	"Enter wildcard subscribe pattern> "
 msgstr	"Wildcardmuster für zu abonnierende Gruppen> "
 
-#: src/lang.c:680
+#: src/lang.c:686
 #, c-format
 msgid	"subscribed to %d groups"
 msgstr	"%d Gruppen sind abonniert"
 
-#: src/lang.c:681
+#: src/lang.c:687
 #, c-format
 msgid	"Subscribed to %s"
 msgstr	"%s wurde abonniert"
 
-#: src/lang.c:682
+#: src/lang.c:688
 msgid	"Subscribing... "
 msgstr	"Abonniere... "
 
-#: src/lang.c:683
+#: src/lang.c:689
 msgid	"Repost or supersede article(s) [%%s]? (%s/%s/%s): "
 msgstr	"Artikel erneut posten oder überschreiben [%%s]? (%s/%s/%s): "
 
-#: src/lang.c:684
+#: src/lang.c:690
 #, c-format
 msgid	"Supersede article(s) to group(s) [%s]> "
 msgstr	"Supersede (überschreibe) Artikel in den Gruppen [%s]> "
 
-#: src/lang.c:685
+#: src/lang.c:691
 msgid	"Superseding article ..."
 msgstr	"Überschreibe Artikel ..."
 
-#: src/lang.c:686
+#: src/lang.c:692
 #, c-format
 msgid	"\n"
 	"Stopped. Type 'fg' to restart %s\n"
 msgstr	"\n"
 	"Angehalten. Geben sie 'fg' ein um %s wieder zu starten\n"
 
-#: src/lang.c:688
+#: src/lang.c:694
 #, c-format
 msgid	"%d days"
 msgstr	"%d Tage"
 
-#: src/lang.c:689
+#: src/lang.c:695
 msgid	"<TAB>"
 msgstr	"<TAB>"
 
-#: src/lang.c:690
+#: src/lang.c:696
 msgid	"TeX "
 msgstr	"TeX "
 
-#: src/lang.c:691
+#: src/lang.c:697
 msgid	"# Default action/prompt strings\n"
 msgstr	"# Voreingestellte Aktion/zeige Zeichenkette\n"
 
-#: src/lang.c:692
+#: src/lang.c:698
 msgid	"# Defaults for quick (1 key) kill & auto-selection filters\n"
 	"# header=NUM  0,1=Subject: 2,3=From: 4=Message-ID: & full References: line\n"
 	"#             5=Message-ID: & last References: entry only\n"
@@ -2938,261 +2951,261 @@ msgstr	"# Voreinstellung für schnellen (
 	"# case=ON/OFF    ON=Filter case sensitive OFF=ignoriere case\n"
 	"# expire=ON/OFF  ON=Verfallen nach default_filter_days OFF=verfällt nie\n"
 
-#: src/lang.c:705
+#: src/lang.c:711
 msgid	"# If ON use print current subject or newsgroup description in the last line\n"
 msgstr	"# Falls ON anzeige des Subject oder des Gruppennamens in der letzten Zeile.\n"
 
-#: src/lang.c:706
+#: src/lang.c:712
 msgid	"# Host & time info used for detecting new groups (don't touch)\n"
 msgstr	"# Host & Zeit Info benutzen um neue Gruppen zu finden (nicht ändern)\n"
 
-#: src/lang.c:707
+#: src/lang.c:713
 msgid	"There is no news\n"
 msgstr	"Es gibt keine neuen Artikel\n"
 
-#: src/lang.c:708
+#: src/lang.c:714
 msgid	"Thread"
 msgstr	"Thread"
 
-#: src/lang.c:709
+#: src/lang.c:715
 msgid	"Thread Level Commands"
 msgstr	"Thread Level Kommandos"
 
-#: src/lang.c:710
+#: src/lang.c:716
 msgid	"Thread deselected"
 msgstr	"Thread nicht mehr ausgewählt"
 
-#: src/lang.c:711
+#: src/lang.c:717
 msgid	"Thread selected"
 msgstr	"Thread ausgewählt"
 
-#: src/lang.c:712
+#: src/lang.c:719
 msgid	"threads"
 msgstr	"Threads"
 
-#: src/lang.c:713
+#: src/lang.c:721
 msgid	"Thread range"
 msgstr	"Thread-Bereich"
 
-#: src/lang.c:714
+#: src/lang.c:722
 msgid	"thread"
 msgstr	"Thread"
 
-#: src/lang.c:715
+#: src/lang.c:723
 #, c-format
 msgid	"Thread %4s of %4s"
 msgstr	"Thread %4s v. %4s"
 
-#: src/lang.c:716
+#: src/lang.c:724
 msgid	"Threading articles..."
 msgstr	"Sortiere Artikel..."
 
-#: src/lang.c:717
+#: src/lang.c:725
 #, c-format
 msgid	"Toggled word highlighting %s"
 msgstr	"Wort-Hervorhebung: %s"
 
-#: src/lang.c:718
+#: src/lang.c:726
 msgid	"Toggled rot13 encoding"
 msgstr	"ROT13-Kodierung (de)aktiviert"
 
-#: src/lang.c:719
+#: src/lang.c:727
 #, c-format
 msgid	"Toggled german TeX encoding %s"
 msgstr	"Deutsche TeX-Dekodierung: %s"
 
-#: src/lang.c:720
+#: src/lang.c:728
 #, c-format
 msgid	"Toggled tab-width to %d"
 msgstr	"Tabulatorweite zu %d gewechselt"
 
-#: src/lang.c:721
+#: src/lang.c:729
 #, c-format
 msgid	"%d Trying to dotlock %s"
 msgstr	"%d Versuche %s zu dotlocken"
 
-#: src/lang.c:722
+#: src/lang.c:730
 #, c-format
 msgid	"%d Trying to lock %s"
 msgstr	"%d Versuche %s zu locken"
 
-#: src/lang.c:723
+#: src/lang.c:731
 msgid	"           h=help\n"
 msgstr	"          h=Hilfe\n"
 
-#: src/lang.c:725
+#: src/lang.c:733
 msgid	"Unlimited"
 msgstr	"Unbegrenzt"
 
-#: src/lang.c:726
+#: src/lang.c:734
 msgid	"Enter wildcard unsubscribe pattern> "
 msgstr	"Wildcardmuster für abzubestellende Gruppen> "
 
-#: src/lang.c:727
+#: src/lang.c:735
 #, c-format
 msgid	"Error decoding %s : %s"
 msgstr	"Fehler beim Dekodieren von %s : %s"
 
-#: src/lang.c:728
+#: src/lang.c:736
 msgid	"No end."
 msgstr	"Kein Ende."
 
-#: src/lang.c:729
+#: src/lang.c:737
 #, c-format
 msgid	"%s successfully decoded."
-msgstr	"%s erfolgreich dekodiert"
+msgstr	"%s erfolgreich dekodiert."
 
-#: src/lang.c:730
+#: src/lang.c:738
 #, c-format
 msgid	"%*s[-- %s/%s, %suuencoded file, %d lines, name: %s --]\n"
 	"\n"
 msgstr	"%*s[-- %s/%s, %suukodierte Datei, %d Zeilen, Name: %s --]\n"
 	"\n"
 
-#: src/lang.c:731
+#: src/lang.c:739
 msgid	"unread "
 msgstr	"ungelesen "
 
-#: src/lang.c:732
+#: src/lang.c:740
 #, c-format
 msgid	"unsubscribed from %d groups"
 msgstr	"%d Gruppen abbestellt"
 
-#: src/lang.c:733
+#: src/lang.c:741
 #, c-format
 msgid	"Unsubscribed from %s"
 msgstr	"%s wurde abbestellt"
 
-#: src/lang.c:734
+#: src/lang.c:742
 msgid	"Unsubscribing... "
 msgstr	"Abbestellen... "
 
-#: src/lang.c:735
+#: src/lang.c:743
 msgid	"Unthreading articles..."
 msgstr	"Aktuelle Sortierung der Artikel aufheben..."
 
-#: src/lang.c:736
+#: src/lang.c:744
 msgid	"Updated"
 msgstr	"Aktualisiert"
 
-#: src/lang.c:737
+#: src/lang.c:745
 msgid	"Updating"
 msgstr	"Aktualisiere"
 
-#: src/lang.c:738
+#: src/lang.c:746
 #, c-format
 msgid	"Opening %s\n"
 msgstr	"Öffne %s\n"
 
-#: src/lang.c:739
+#: src/lang.c:747
 msgid	"No more URL's in this article"
 msgstr	"Keine weiteren URLs im Artikel"
 
-#: src/lang.c:740
+#: src/lang.c:748
 msgid	"Use MIME display program for this message?"
 msgstr	"MIME-Anzeigeprogramm für diese Nachricht benutzen?"
 
-#: src/lang.c:741
+#: src/lang.c:749
 msgid	"  -c       mark all news as read in subscribed newsgroups (batch mode)"
 msgstr	"  -c       Markiere Artikel gelesen in den abonnierten Gruppen (Batch-Modus)"
 
-#: src/lang.c:742
+#: src/lang.c:750
 msgid	"  -Z       return status indicating if any unread news (batch mode)"
 msgstr	"  -Z       Rückgabewert zeigt, ob ungelesene Artikel vorliegen (Batch-Modus)"
 
-#: src/lang.c:743
+#: src/lang.c:751
 msgid	"  -q       don't check for new newsgroups"
 msgstr	"  -q       Überprüfe nicht auf neue Newsgruppen"
 
-#: src/lang.c:744
+#: src/lang.c:752
 msgid	"  -X       don't save any files on quit"
 msgstr	"  -X       Speicher keine Dateien beim Beenden"
 
-#: src/lang.c:745
+#: src/lang.c:753
 msgid	"  -d       don't show newsgroup descriptions"
 msgstr	"  -d       Zeige keine Newsgruppenbeschreibungen"
 
-#: src/lang.c:746
+#: src/lang.c:754
 msgid	"  -G limit get only limit articles/group"
 msgstr	"  -G limit Hole nur 'limit' Artikel pro Newsgruppe"
 
-#: src/lang.c:747
+#: src/lang.c:755
 #, c-format
 msgid	"  -H       help information about %s"
 msgstr	"  -H       Hilfe und Informationen über %s"
 
-#: src/lang.c:748
+#: src/lang.c:756
 msgid	"  -h       this help message"
 msgstr	"  -h       Diese Hilfeseite"
 
-#: src/lang.c:749
+#: src/lang.c:757
 #, c-format
 msgid	"  -I dir   news index file directory [default=%s]"
 msgstr	"  -I Verz. Verzeichnis für Artikel-Index-Datei [Standard=%s]"
 
-#: src/lang.c:750
+#: src/lang.c:758
 msgid	"  -u       update index files (batch mode)"
 msgstr	"  -u       Erneuere Index-Dateien (Batch-Modus)"
 
-#: src/lang.c:751
+#: src/lang.c:759
 #, c-format
 msgid	"  -m dir   mailbox directory [default=%s]"
 msgstr	"  -m Verz. Mailbox-Verzeichnis [Standard=%s]"
 
-#: src/lang.c:752
+#: src/lang.c:760
 #, c-format
 msgid	"\n"
 	"Mail bug reports/comments to %s"
 msgstr	"\n"
 	"Schicken Sie Fehlerberichte/Kommentare an %s"
 
-#: src/lang.c:753
+#: src/lang.c:761
 msgid	"  -N       mail new news to your posts (batch mode)"
 msgstr	"  -N       Maile neue Artikel an sich selbst (Batch-Modus)"
 
-#: src/lang.c:754
+#: src/lang.c:762
 msgid	"  -M user  mail new news to specified user (batch mode)"
 msgstr	"  -M user  Maile neue News-Artikel an 'user' (Batch-Modus)"
 
-#: src/lang.c:755
+#: src/lang.c:763
 #, c-format
 msgid	"  -f file  subscribed to newsgroups file [default=%s]"
 msgstr	"  -f Datei 'Datei' als .newsrc-Datei nutzen [Standard=%s]"
 
-#: src/lang.c:756
+#: src/lang.c:764
 msgid	"  -x       no posting mode"
 msgstr	"  -x       Posten nicht erlaubt Modus"
 
-#: src/lang.c:757
+#: src/lang.c:765
 msgid	"  -w       post an article and exit"
 msgstr	"  -w       Postet einen Artikel und beendet tin"
 
-#: src/lang.c:758
+#: src/lang.c:766
 msgid	"  -o       post all postponed articles and exit"
 msgstr	"  -o       Postet alle zurückgelegten Artikel und beendet tin"
 
-#: src/lang.c:759
+#: src/lang.c:767
 msgid	"  -r       read news remotely from default NNTP server"
 msgstr	"  -r       Lese Artikel vom Standard-NNTP-Server"
 
-#: src/lang.c:760
+#: src/lang.c:768
 msgid	"  -R       read news saved by -S option"
 msgstr	"  -R       Lese Artikel, die durch -S gespeichert wurden"
 
-#: src/lang.c:761
+#: src/lang.c:769
 #, c-format
 msgid	"  -s dir   save news directory [default=%s]"
 msgstr	"  -s Verz. Verzeichnis zum News-Speichern [Standard=%s]"
 
-#: src/lang.c:762
+#: src/lang.c:770
 msgid	"  -S       save new news for later reading (batch mode)"
 msgstr	"  -S       Speichere Artikel für das spätere Lesen (Batch-Modus)"
 
-#: src/lang.c:763
+#: src/lang.c:771
 msgid	"  -z       start if any unread news"
 msgstr	"  -z       Starte, wenn ungelesene Artikel vorliegen"
 
-#: src/lang.c:764
+#: src/lang.c:772
 #, c-format
 msgid	"A Usenet reader.\n"
 	"\n"
@@ -3201,37 +3214,37 @@ msgstr	"Ein Usenet-Client.\n"
 	"\n"
 	"Syntax: %s [Optionen] [Newsgruppe[,...]]"
 
-#: src/lang.c:765
+#: src/lang.c:773
 msgid	"  -v       verbose output for batch mode options"
 msgstr	"  -v       Ausführliche Ausgabe für Batch-Modus-Optionen"
 
-#: src/lang.c:766
+#: src/lang.c:774
 msgid	"  -V       print version & date information"
 msgstr	"  -V       Gebe Versions- und Datumsinformationen aus"
 
-#: src/lang.c:767
+#: src/lang.c:775
 #, c-format
 msgid	"%s only useful without batch mode operations\n"
 msgstr	"%s ist nur sinnvoll ohne Batchmodeoperationen\n"
 
-#: src/lang.c:768
+#: src/lang.c:776
 #, c-format
 msgid	"%s only useful for batch mode operations\n"
 msgstr	"%s ist nur sinnvoll für Batchmodeoperationen\n"
 
-#: src/lang.c:770
+#: src/lang.c:778
 #, c-format
 msgid	"\n"
 	"%s%d out of range (0 - %d). Reset to 0"
 msgstr	"\n"
 	"%s%d ist außerhalb der Grenzen (0 - %d). Zurücksetzen auf 0"
 
-#: src/lang.c:771
+#: src/lang.c:779
 #, c-format
 msgid	"View '%s' (%s/%s)?"
 msgstr	"'%s' (%s/%s) anzeigen?"
 
-#: src/lang.c:773
+#: src/lang.c:781
 #, c-format
 msgid	"\n"
 	"Warning: posting exceeds %d columns. Line %d is the first long one:\n"
@@ -3240,26 +3253,26 @@ msgstr	"\n"
 	"Warnung: Artikel überschreitet %d Spalten. Zeile %d ist die erste lange:\n"
 	"%-100s\n"
 
-#: src/lang.c:774
+#: src/lang.c:782
 msgid	"\n"
 	"Warning: article unchanged after editing\n"
 msgstr	"\n"
 	"Warnung: Artikel wurde im Editor nicht verändert\n"
 
-#: src/lang.c:775
+#: src/lang.c:783
 msgid	"\n"
 	"Warning: \"Subject:\" contains only whitespaces.\n"
 msgstr	"\n"
 	"Warnung: \"Subject:\" enthält nur Leerzeichen.\n"
 
-#: src/lang.c:776
+#: src/lang.c:784
 msgid	"\n"
 	"Warning: \"Subject:\" begins with \"Re: \" but there are no \"References:\".\n"
 msgstr	"\n"
 	"Warnung: \"Subject:\" beginnt mit \"Re: \", aber es gibt keine "
 	"\"References:\".\n"
 
-#: src/lang.c:778
+#: src/lang.c:786
 msgid	"\n"
 	"Warning: Article has \"References:\" but \"Subject:\" does not begin\n"
 	"         with \"Re: \" and does not contain \"(was:\".\n"
@@ -3267,7 +3280,7 @@ msgstr	"\n"
 	"Warnung: Artikel hat \"References:\" aber \"Subject:\" beginnt nicht\n"
 	"         mit \"Re: \" and enthält auch kein \"(was:\".\n"
 
-#: src/lang.c:781
+#: src/lang.c:789
 msgid	"Read carefully!\n"
 	"\n"
 	"  You are about to cancel an article seemingly written by you. This will "
@@ -3287,7 +3300,7 @@ msgstr	"Sorgfältig lesen!\n"
 	"Das ist der Artikel, den sie canceln (löschen) wollen:\n"
 	"\n"
 
-#: src/lang.c:785
+#: src/lang.c:793
 msgid	"\n"
 	"Warning: You are using a non-plain transfer encoding (such as base64 or\n"
 	"         quoted-printable) and an external inews program to submit your\n"
@@ -3299,7 +3312,7 @@ msgstr	"\n"
 	"         Artikel zu übertragen. Falls durch diesen inews eine Signatur\n"
 	"         angehängt wird, so kann diese nicht korrekt kodiert werden.\n"
 
-#: src/lang.c:790
+#: src/lang.c:798
 #, c-format
 msgid	"\n"
 	"\n"
@@ -3312,7 +3325,7 @@ msgstr	"\n"
 	"Einige Einstellungen in Ihrem %s-File haben sich geändert!\n"
 	"Lesen sie \"WHATSNEW\", usw....\n"
 
-#: src/lang.c:792
+#: src/lang.c:800
 #, c-format
 msgid	"\n"
 	"\n"
@@ -3321,10 +3334,10 @@ msgid	"\n"
 msgstr	"\n"
 	"\n"
 	"Sie benutzen jetzt tin %s, eine ältere Version als früher!\n"
-	"Evtl. werden Einstellungen in Ihrem %s-File nicht erkannt\n"
-	"oder ändern sich!\n"
+	"Evtl. werden Einstellungen in Ihrem %s-File\n"
+	"nicht erkannt oder ändern sich!\n"
 
-#: src/lang.c:795
+#: src/lang.c:803
 #, c-format
 msgid	"Warning: tin wrote fewer groups to your\n"
 	"\t%s\n"
@@ -3337,19 +3350,19 @@ msgstr	"Warnung: tin hat weniger Gruppen
 	"währenddessen abbestellt haben, ist ein Fehler aufgetreten und Sie sollten\n"
 	"ihre %s wiederherstellen, bevor Sie tin nochmal starten!\n"
 
-#: src/lang.c:799
+#: src/lang.c:807
 #, c-format
 msgid	"\n"
 	"Warning: Found %d '-- \\n' lines, this may confuse some people.\n"
 msgstr	"\n"
 	"Warnung: Es gibt %d '-- \\n' Zeilen. Das könnte einige Leute verwirren.\n"
 
-#: src/lang.c:800
+#: src/lang.c:808
 #, c-format
 msgid	"Warning: Only %d out of %d articles were saved"
 msgstr	"Warnung: Nur %d von %d Artikeln gespeichert"
 
-#: src/lang.c:801
+#: src/lang.c:809
 #, c-format
 msgid	"\n"
 	"Warning: Your signature  is longer than %d lines.  Since signatures usually "
@@ -3363,48 +3376,48 @@ msgstr	"\n"
 	"         nützlichen Informationen enthalten, sollten sie so kurz wie möglich\n"
 	"         gehalten werden.\n"
 
-#: src/lang.c:805
+#: src/lang.c:813
 #, c-format
 msgid	"Warning: this mail address may contain a spamtrap. %s=continue, %s=abort? "
 msgstr	"Warnung: E-Mailadr. evtl. verfälscht (Spamfalle). %s=weiter, %s=Abbruch? "
 
-#: src/lang.c:806
+#: src/lang.c:814
 msgid	"\n"
 	"Warning: Signatures should start with '-- \\n' not with '--\\n'.\n"
 msgstr	"\n"
 	"Warnung: Signaturen sollten mit '-- \\n' und nicht mit '--\\n' beginnen.\n"
 
-#: src/lang.c:807
+#: src/lang.c:815
 msgid	"Writing attributes file..."
 msgstr	"Schreibe Datei mit den Eigenschaften der Newsgruppen..."
 
-#: src/lang.c:809
+#: src/lang.c:817
 #, c-format
 msgid	"%d Responses"
 msgstr	"%d Antworten"
 
-#: src/lang.c:811
+#: src/lang.c:819
 #, c-format
 msgid	"Added %d %s"
 msgstr	"%d %s hinzugefügt"
 
-#: src/lang.c:812
+#: src/lang.c:820
 msgid	"No unsubscribed groups to show"
 msgstr	"Keine nicht abonnierte Gruppen gefunden"
 
-#: src/lang.c:813
+#: src/lang.c:821
 msgid	"Showing subscribed to groups only"
 msgstr	"Zeige nur abonnierte Gruppen"
 
-#: src/lang.c:814
+#: src/lang.c:822
 msgid	"Yes "
 msgstr	"Ja  "
 
-#: src/lang.c:815
+#: src/lang.c:823
 msgid	"    You have mail\n"
 msgstr	"   Sie haben Mail\n"
 
-#: src/lang.c:820
+#: src/lang.c:828
 #, c-format
 msgid	"\n"
 	"Warning: Posting is in %s and contains characters which are not\n"
@@ -3419,20 +3432,20 @@ msgstr	"\n"
 	"         konfiguriertem MM_NETWORK_CHARSET: %s enthalten sind.\n"
 	"         Diese Zeichen werden durch '?' ersetzt wenn der Artikel\n"
 	"         unverändert gepostet wird. Um das zu vermeiden sollten Sie\n"
-	"         entweder den Artiklen entspechend ändern und diese Zeichen\n"
+	"         entweder den Artikeln entsprechend ändern und diese Zeichen\n"
 	"         entfernen oder MM_NETWORK_CHARSET im M)neu auf einen\n"
 	"         passenderen Wert setzen.\n"
 
-#: src/lang.c:831
+#: src/lang.c:839
 #, c-format
 msgid	"Redefined key %s '%s' -> '%s'\n"
 msgstr	"Neubelegung %s '%s' -> '%s'\n"
 
-#: src/lang.c:832
+#: src/lang.c:840
 msgid	"  -D       debug mode 1=NNTP 2=ALL"
 msgstr	"  -D       Debug-Modus 1=NNTP 2=ALLES"
 
-#: src/lang.c:836
+#: src/lang.c:844
 msgid	"Read carefully!\n"
 	"\n"
 	"  You are about to cancel an article seemingly not written by you.  This "
@@ -3458,11 +3471,11 @@ msgstr	"Sorgfältig lesen!\n"
 	"Dies ist der Artikel, den Sie canceln (löschen) wollen:\n"
 	"\n"
 
-#: src/lang.c:845
+#: src/lang.c:853
 msgid	"toggle color"
 msgstr	"Farben ein/aus"
 
-#: src/lang.c:846
+#: src/lang.c:854
 msgid	"# Changing colors of several screen parts\n"
 	"# Possible values are:\n"
 	"#  -1 = default (white for foreground and black for background)\n"
@@ -3506,352 +3519,352 @@ msgstr	"# Farbeinstellungen\n"
 	"#  15 = hellweiß\n"
 	"\n"
 
-#: src/lang.c:866
+#: src/lang.c:874
 msgid	"  -a       toggle color flag"
 msgstr	"  -a       Farbe ein- oder ausschalten"
 
-#: src/lang.c:870
+#: src/lang.c:878
 msgid	"\n"
 	"Error: Followup-To set to more than one newsgroup!\n"
 msgstr	"\n"
 	"Fehler: Followup-To auf mehr als eine Newsgruppe gesetzt!\n"
 
-#: src/lang.c:871
+#: src/lang.c:879
 #, c-format
 msgid	"\n"
 	"Error: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr	"\n"
 	"Fehler: Crossposting in %d Newsgruppen und kein Followup-To gesetzt!\n"
 
-#: src/lang.c:872
+#: src/lang.c:880
 #, c-format
 msgid	"\n"
 	"Error: \"%s\" is not a valid newsgroup!\n"
 msgstr	"\n"
 	"Fehler: \"%s\" ist keine gültige Newsgruppe!\n"
 
-#: src/lang.c:874
+#: src/lang.c:882
 msgid	"\n"
 	"Warning: Followup-To set to more than one newsgroup!\n"
 msgstr	"\n"
 	"Warnung: Followup-To in mehr als eine Newsgruppe gesetzt!\n"
 
-#: src/lang.c:875
+#: src/lang.c:883
 #, c-format
 msgid	"\n"
 	"Warning: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr	"\n"
 	"Warnung: Crossposting in %d Newsgruppen und kein Followup-To gesetzt!\n"
 
-#: src/lang.c:876
+#: src/lang.c:884
 #, c-format
 msgid	"\n"
 	"Warning: \"%s\" is not in your newsrc, it may be invalid at this site!\n"
 msgstr	"\n"
 	"Warnung: \"%s\" ist nicht in Ihrer newsrc, sie könnte ungültig sein!\n"
 
-#: src/lang.c:877
+#: src/lang.c:885
 #, c-format
 msgid	"\n"
 	"Warning: \"%s\" is not a valid newsgroup at this site!\n"
 msgstr	"\n"
 	"Warnung: \"%s\" ist keine gültige Newsgruppe auf diesem Server!\n"
 
-#: src/lang.c:881
+#: src/lang.c:889
 #, c-format
 msgid	"%d files successfully written from %d articles. %d %s occurred."
-msgstr	"%d Dateien aus %d Artikeln erfolgreich geschrieben. %d %s traten auf"
+msgstr	"%d Dateien aus %d Artikeln erfolgreich geschrieben. %d %s trat(en) auf."
 
-#: src/lang.c:882
+#: src/lang.c:890
 msgid	"Missing parts."
 msgstr	"Teile fehlen."
 
-#: src/lang.c:883
+#: src/lang.c:891
 msgid	"No beginning."
 msgstr	"Kein Anfang."
 
-#: src/lang.c:884
+#: src/lang.c:892
 msgid	"No data."
 msgstr	"Keine Daten."
 
-#: src/lang.c:885
+#: src/lang.c:893
 msgid	"Unknown error."
 msgstr	"Unbekannter Fehler."
 
-#: src/lang.c:887
+#: src/lang.c:896
 #, c-format
 msgid	"\tChecksum of %s (%ld %s)"
 msgstr	"\tPrüfsumme für %s (%ld %s)"
 
-#: src/lang.c:891
+#: src/lang.c:901
 msgid	"Reading mail active file... "
 msgstr	"Lese EMail-Active-Datei... "
 
-#: src/lang.c:892
+#: src/lang.c:902
 msgid	"Reading mailgroups file... "
 msgstr	"Lese Mailgruppen-Datei... "
 
-#: src/lang.c:896
+#: src/lang.c:906
 msgid	"perform PGP operations on article"
 msgstr	"wendet PGP auf den Artikel an"
 
-#: src/lang.c:897
+#: src/lang.c:907
 msgid	"Add key(s) to public keyring?"
 msgstr	"Schlüssel dem Öffentlichen Schlüsselring hinzufügen?"
 
-#: src/lang.c:898
+#: src/lang.c:908
 #, c-format
 msgid	"%s=encrypt, %s=sign, %s=both, %s=quit: "
 msgstr	"%s=verschlüsseln, %s=signieren, %s=beides, %s=Ende: "
 
-#: src/lang.c:899
+#: src/lang.c:909
 #, c-format
 msgid	"%s=sign, %s=sign & include public key, %s=quit: "
 msgstr	"%s=signiere, %s=signiere & füge öffentl. Schlüssel hinzu, %s=Ende: "
 
-#: src/lang.c:900
+#: src/lang.c:910
 #, c-format
 msgid	"PGP has not been set up (can't open %s)"
 msgstr	"PGP Wurde nicht konfiguriert (kann %s nicht öffnen)"
 
-#: src/lang.c:901
+#: src/lang.c:911
 msgid	"Article not signed and no public keys found"
 msgstr	"Artikel ist nicht signiert; keine öffentlichen Schlüssel gefunden"
 
-#: src/lang.c:903
+#: src/lang.c:913
 #, c-format
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone: "
-msgstr	"%s=Ende, %s=bearbeiten, %s=ispell, %s=pgp, %s=Menu, %s=posten, "
+msgstr	"%s=Ende, %s=bearbeiten, %s=ispell, %s=pgp, %s=Menü, %s=posten, "
 	"%s=zurücklegen: "
 
-#: src/lang.c:904
+#: src/lang.c:914
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=send [%%s]: "
 msgstr	"%s=Ende, %s=bearbeiten, %s=ispell, %s=pgp, %s=verschicken [%%s]: "
 
-#: src/lang.c:905
+#: src/lang.c:915
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
-msgstr	"%s=Ende, %s=bearbeiten, %s=ispell, %s=pgp, %s=Menu, %s=posten, %s=zurücklegen "
+msgstr	"%s=Ende, %s=bearbeiten, %s=ispell, %s=pgp, %s=Menü, %s=posten, %s=zurücklegen "
 	"[%%s]: "
 
-#: src/lang.c:907
+#: src/lang.c:917
 #, c-format
 msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone: "
-msgstr	"%s=Ende, %s=bearbeiten, %s=pgp, %s=Menu, %s=posten, %s=zurücklegen: "
+msgstr	"%s=Ende, %s=bearbeiten, %s=pgp, %s=Menü, %s=posten, %s=zurücklegen: "
 
-#: src/lang.c:908
+#: src/lang.c:918
 msgid	"%s=quit, %s=edit, %s=pgp, %s=send [%%s]: "
 msgstr	"%s=Ende, %s=bearbeiten, %s=pgp, %s=verschicken [%%s]: "
 
-#: src/lang.c:909
+#: src/lang.c:919
 msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
-msgstr	"%s=Ende, %s=bearbeiten, %s=pgp, %s=Menu, %s=posten, %s=zurücklegen [%%s]: "
+msgstr	"%s=Ende, %s=bearbeiten, %s=pgp, %s=Menü, %s=posten, %s=zurücklegen [%%s]: "
 
-#: src/lang.c:913
+#: src/lang.c:923
 #, c-format
 msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=Ende, %s=bearbeiten, %s=ispell, %s=Menü, %s=posten, %s=zurücklegen: "
 
-#: src/lang.c:914
+#: src/lang.c:924
 msgid	"%s=quit, %s=edit, %s=ispell, %s=send [%%s]: "
 msgstr	"%s=Ende, %s=bearbeiten, %s=ispell, %s=verschicken [%%s]: "
 
-#: src/lang.c:915
+#: src/lang.c:925
 msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=Ende, %s=bearbeiten, %s=ispell, %s=Menü, %s=post, %s=Zurückl. [%%s]: "
 
-#: src/lang.c:917
+#: src/lang.c:927
 #, c-format
 msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone: "
-msgstr	"%s=Ende, %s=bearbeiten, %s=Menu, %s=posten, %s=zurücklegen: "
+msgstr	"%s=Ende, %s=bearbeiten, %s=Menü, %s=posten, %s=zurücklegen: "
 
-#: src/lang.c:918
+#: src/lang.c:928
 msgid	"%s=quit, %s=edit, %s=send [%%s]: "
 msgstr	"%s=Ende, %s=bearbeiten, %s=verschicken [%%s]: "
 
-#: src/lang.c:919
+#: src/lang.c:929
 msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=Ende, %s=bearbeiten, %s=Menü, %s=posten, %s=zurücklegen [%%s]: "
 
-#: src/lang.c:928
+#: src/lang.c:938
 msgid	"Try cache_overview_files to speed up things.\n"
-msgstr	"Setze cache_overview_files um das lesen zu beschleubigen.\n"
+msgstr	"Setze cache_overview_files um das lesen zu beschleunigen.\n"
 
-#: src/lang.c:929
+#: src/lang.c:939
 msgid	"Tin will use local index files instead.\n"
 msgstr	"Tin wird lokale index files benutzen.\n"
 
-#: src/lang.c:930
+#: src/lang.c:940
 msgid	"Cannot find NNTP server name"
 msgstr	"Kann den Namen des NNTP Servers nicht finden"
 
-#: src/lang.c:931
+#: src/lang.c:941
 #, c-format
 msgid	"Connecting to %s:%d..."
 msgstr	"Verbinde mit %s:%d..."
 
-#: src/lang.c:932
+#: src/lang.c:942
 msgid	"Disconnecting from server...\n"
 msgstr	"Trenne Verbindung zum Server...\n"
 
-#: src/lang.c:933
+#: src/lang.c:943
 #, c-format
 msgid	"Wrong newsgroup name in response of GROUP command, %s for %s"
 msgstr	"Falsche Newsgruppe in Antwort auf GROUP-Befehl, %s statt %s"
 
-#: src/lang.c:934
+#: src/lang.c:944
 #, c-format
 msgid	"Failed to connect to NNTP server %s. Exiting..."
 msgstr	"Konnte nicht zum NNTP Server %s verbinden. Beende..."
 
-#: src/lang.c:935
+#: src/lang.c:945
 msgid	"205  Closing connection"
 msgstr	"205  Schließe Verbindung"
 
-#: src/lang.c:936
+#: src/lang.c:946
 msgid	"Your server does not support the NNTP XOVER or OVER command.\n"
 msgstr	"Ihr Server unterstützt kein NNTP XOVER oder OVER Kommando.\n"
 
-#: src/lang.c:937
+#: src/lang.c:947
 msgid	"Connection to news server has timed out. Reconnect?"
 msgstr	"Die Verbindung zum Newsserver wurde unterbrochen. Wieder verbinden?"
 
-#: src/lang.c:938
+#: src/lang.c:948
 #, c-format
 msgid	"Put the server name in the file %s,\n"
 	"or set the environment variable NNTPSERVER"
 msgstr	"Schreiben Sie den Servernamen in die Datei %s,\n"
 	"oder setzen Sie die Umgebungsvariable NNTPSERVER"
 
-#: src/lang.c:939
+#: src/lang.c:949
 msgid	"  -A       force authentication on connect"
 msgstr	"  -A       Erzwinge Anmeldung bei Verbindung"
 
-#: src/lang.c:940
+#: src/lang.c:950
 #, c-format
 msgid	"  -g serv  read news from NNTP server serv [default=%s]"
 msgstr	"  -g serv  Lese Artikel vom NNTP-Server 'serv' [Standard=%s]"
 
-#: src/lang.c:941
+#: src/lang.c:951
 #, c-format
 msgid	"  -p port  use port as NNTP port [default=%d]"
 msgstr	"  -p port  Benutze 'port' als NNTP-Port [Standard=%d]"
 
-#: src/lang.c:942
+#: src/lang.c:952
 msgid	"  -Q       quick start. Same as -nqd"
 msgstr	"  -Q       Schnellstart. Das Selbe wie -nqd"
 
-#: src/lang.c:943
+#: src/lang.c:953
 msgid	"  -l       use only LIST instead of GROUP (-n) command"
 msgstr	"  -l       Benutze nur das LIST anstelle vom GROUP-Kommando (-n)"
 
-#: src/lang.c:944
+#: src/lang.c:954
 msgid	"  -n       only read subscribed .newsrc groups from NNTP server"
 msgstr	"  -n       Lese nur Gruppen aus der .newsrc-Datei vom NNTP-Server"
 
-#: src/lang.c:946
+#: src/lang.c:956
 #, c-format
 msgid	"%s/tcp: Unknown service.\n"
 msgstr	"%s/tcp: Unbekannter Service.\n"
 
-#: src/lang.c:949
+#: src/lang.c:959
 msgid	"\n"
 	"socket or connect problem\n"
 msgstr	"\n"
 	"Socket oder Verbindungsproblem\n"
 
-#: src/lang.c:951
+#: src/lang.c:961
 #, c-format
 msgid	"\n"
 	"Connection to %s: "
 msgstr	"\n"
 	"Verbindung mit %s: "
 
-#: src/lang.c:952
+#: src/lang.c:962
 msgid	"Giving up...\n"
 msgstr	"Gebe auf...\n"
 
-#: src/lang.c:955
+#: src/lang.c:965
 msgid	"Your server does not have Xref: in its XOVER information.\n"
 	"Tin will try to use XHDR XREF instead (slows down things a bit).\n"
 msgstr	"Ihr Server hat kein Xref: in seiner XOVER-Information.\n"
 	"Tin versucht XHDR XREF zu benutzen (verlangsamt den Prozess etwas).\n"
 
-#: src/lang.c:958
+#: src/lang.c:968
 msgid	"Your server does not have Xref: in its XOVER information.\n"
 msgstr	"Ihr Server hat kein Xref: in seiner XOVER-Information.\n"
 
-#: src/lang.c:961
+#: src/lang.c:971
 #, c-format
 msgid	"Can't open %s. Try %s -r to read news via NNTP.\n"
 msgstr	"Kann %s nicht öffnen. Probieren Sie %s -r um via NNTP zu lesen.\n"
 
-#: src/lang.c:964
+#: src/lang.c:974
 msgid	"  -Q       quick start. Same as -qd"
 msgstr	"  -Q       Schnellstart. Das Selbe wie -qd"
 
-#: src/lang.c:965
+#: src/lang.c:975
 msgid	"  -l       read only active file instead of scanning spool (-n) command"
 msgstr	"  -l       Nur active File lesen ohne den Spool zu durchsuchen (-n) Kommando"
 
-#: src/lang.c:966
+#: src/lang.c:976
 msgid	"  -n       only read subscribed .newsrc groups from spool"
 msgstr	"  -n       Lese nur Gruppen aus der .newsrc-Datei aus dem lokalen Spool"
 
-#: src/lang.c:967
+#: src/lang.c:977
 msgid	"Your server does not have Xref: in its NOV-files.\n"
-msgstr	"Ihr Server hat kein Xref: in seinern NOV-Dateien.\n"
+msgstr	"Ihr Server hat kein Xref: in seinen NOV-Dateien.\n"
 
-#: src/lang.c:971
+#: src/lang.c:981
 msgid	"Posting using external inews failed. Use built in inews instead?"
 msgstr	"Fehler beim Posten mit externem inews, verwende eingebautes?"
 
-#: src/lang.c:972
+#: src/lang.c:982
 msgid	"It worked! Should I always use my built in inews from now on?"
 msgstr	"Das hat funktioniert. In Zukunft immer eingebautes inews verwenden?"
 
-#: src/lang.c:980
+#: src/lang.c:990
 #, c-format
 msgid	"%d %s printed"
 msgstr	"%d %s gedruckt"
 
-#: src/lang.c:981
+#: src/lang.c:991
 msgid	"output article/thread/hot/pattern/tagged articles to printer"
 msgstr	"druckt Artikel/Thread/hervorgehobene/Muster/markierten"
 
-#: src/lang.c:982
+#: src/lang.c:992
 msgid	"Print"
-msgstr	"drucken"
+msgstr	"Drucke"
 
-#: src/lang.c:983
+#: src/lang.c:993
 msgid	"Printing..."
 msgstr	"Drucke..."
 
-#: src/lang.c:987
+#: src/lang.c:997
 msgid	"pipe article/thread/hot/pattern/tagged articles into command"
-msgstr	"pipet Artikel/thread hervorgehoben/muster/markierten Artikel"
+msgstr	"pipet Artikel/thread hervorgehoben/Muster/markierten Artikel"
 
-#: src/lang.c:988
+#: src/lang.c:998
 msgid	"No command"
 msgstr	"Kein Kommando"
 
-#: src/lang.c:989
+#: src/lang.c:999
 msgid	"Pipe"
 msgstr	"Pipe"
 
-#: src/lang.c:990
+#: src/lang.c:1000
 #, c-format
 msgid	"Pipe to command [%.*s]> "
 msgstr	"Pipen in Kommando [%.*s]> "
 
-#: src/lang.c:991
+#: src/lang.c:1001
 msgid	"Piping..."
 msgstr	"Pipen..."
 
-#: src/lang.c:993
+#: src/lang.c:1003
 msgid	"Piping not enabled."
 msgstr	"Pipen nicht aktiviert."
 
-#: src/lang.c:997
+#: src/lang.c:1007
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line has spaces  in it that MUST be removed.\n"
@@ -3864,7 +3877,7 @@ msgstr	"\n"
 	"        vom Inhalt trennt. Benutzen sie ein ',' um mehrere Newsgruppen\n"
 	"        anzugeben\n"
 
-#: src/lang.c:1002
+#: src/lang.c:1012
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is  continued in  the next line.  Since\n"
@@ -3875,7 +3888,7 @@ msgstr	"\n"
 	"        Da diese Zeile keinen leeren Raum enthalten darf, ist dies nicht\n"
 	"        erlaubt. Bitte schreiben Sie alle Newsgruppen in eine Zeile\n"
 
-#: src/lang.c:1007
+#: src/lang.c:1017
 #, c-format
 msgid	"\n"
 	"Warning: The \"%s:\" line is continued in the next line.\n"
@@ -3886,7 +3899,7 @@ msgstr	"\n"
 	"         Da diese Zeile keinen leeren Raum enthalten darf, ist dies nicht\n"
 	"         erlaubt. Bitte schreiben Sie alle Newsgruppen in eine Zeile.\n"
 
-#: src/lang.c:1011
+#: src/lang.c:1021
 #, c-format
 msgid	"\n"
 	"Warning: The \"%s:\" line has spaces in it that SHOULD be removed.\n"
@@ -3894,7 +3907,7 @@ msgstr	"\n"
 	"Warnung: Die \"%s:\" Zeile enthält Leerzeichen die entfernt\n"
 	"         werden sollten.\n"
 
-#: src/lang.c:1016
+#: src/lang.c:1026
 msgid	"\n"
 	"  If your article contains quoted text  please take some time to pare it "
 	"down\n"
@@ -3925,504 +3938,500 @@ msgstr	"\n"
 	"  Artikel nicht sorgfältig formatieren, ist es sehr wahrscheinlich, dass er\n"
 	"  von vielen gar nicht gelesen wird.\n"
 
-#: src/lang.c:1029
+#: src/lang.c:1039
 msgid	"shell escape"
 msgstr	"Ausgang zur Shell"
 
-#: src/lang.c:1030
+#: src/lang.c:1040
 #, c-format
 msgid	"Shell Command (%s)"
 msgstr	"Shellkommando (%s)"
 
-#: src/lang.c:1031
+#: src/lang.c:1041
 #, c-format
 msgid	"Enter shell command [%s]> "
 msgstr	"Geben Sie ein Shellkommando ein [%s]> "
 
-#: src/lang.c:1035
+#: src/lang.c:1045
 #, c-format
 msgid	"%s: Can't get entry for TERM\n"
 msgstr	"%s: Kann den Wert für TERM nicht finden\n"
 
-#: src/lang.c:1039
+#: src/lang.c:1049
 #, c-format
 msgid	"Group %.*s ('q' to quit)..."
-msgstr	"Gruppe %.*s ('q' zum beenden...)"
+msgstr	"Gruppe %.*s ('q' zum beenden)..."
 
-#: src/lang.c:1041
+#: src/lang.c:1051
 #, c-format
 msgid	"Group %.*s..."
 msgstr	"Gruppe %.*s..."
 
-#: src/lang.c:1045
+#: src/lang.c:1055
 msgid	"Server unavailable\n"
 msgstr	"Server nicht erreichbar\n"
 
-#: src/lang.c:1051
+#: src/lang.c:1061
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; "
 	"%s=post"
 msgstr	"%s=Pipe; %s=Mail; %s=Drucken; %s=Ende; %s=Alle/Nur ungel.; %s=Speich.; "
 	"%s=tag; %s=Posten"
 
-#: src/lang.c:1052
+#: src/lang.c:1062
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=Pipe; %s=Mail; %s=Drucken; %s=Ende; %s=Antw. Mail; %s=Speich.; %s=tag; "
 	"%s=Posten"
 
-#: src/lang.c:1054
+#: src/lang.c:1064
 #, c-format
 msgid	"%s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=Mail; %s=Drucken; %s=Ende; %s=Alle/Nur ungel.; %s=Speich.; %s=tag; "
 	"%s=Posten"
 
-#: src/lang.c:1055
+#: src/lang.c:1065
 #, c-format
 msgid	"%s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=Mail; %s=Drucken; %s=Ende; %s=Antw. Mail; %s=Speich.; %s=tag; %s=Posten"
 
-#: src/lang.c:1059
+#: src/lang.c:1069
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=Pipe; %s=Mail; %s=Ende; %s=Alle/Nur ungel.; %s=Speich.; %s=tag; %s=Posten"
 
-#: src/lang.c:1060
+#: src/lang.c:1070
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=Pipe; %s=Mail; %s=Ende; %s=Antw. Mail; %s=Speich.; %s=tag; %s=Posten"
 
-#: src/lang.c:1062
+#: src/lang.c:1072
 #, c-format
 msgid	"%s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=Mail; %s=Ende; %s=Alle/Nur ungel.; %s=Speich.; %s=tag; %s=Posten"
 
-#: src/lang.c:1063
+#: src/lang.c:1073
 #, c-format
 msgid	"%s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=Mail; %s=Ende; %s=Antw. Mail; %s=Speich.; %s=tag; %s=Posten"
 
-#: src/lang.c:1069
+#: src/lang.c:1079
 msgid	"Terminal does not support color"
 msgstr	"Terminal unterstützt keine Farben"
 
-#: src/lang.c:1074
+#: src/lang.c:1084
 #, c-format
 msgid	"Trying %s"
 msgstr	"Versuche %s"
 
-#: src/lang.c:1088 src/lang.c:1113 src/lang.c:1129 src/lang.c:1308 src/refs.c:296
+#: src/lang.c:1098 src/lang.c:1123 src/lang.c:1139 src/lang.c:1318 src/refs.c:296
 msgid	"None"
 msgstr	"Nichts"
 
-#: src/lang.c:1089
+#: src/lang.c:1099
 msgid	"Subject"
 msgstr	"Subject"
 
-#: src/lang.c:1090
+#: src/lang.c:1100
 msgid	"References"
 msgstr	"References"
 
-#: src/lang.c:1091
+#: src/lang.c:1101
 msgid	"Both Subject and References"
 msgstr	"Beides: Subject und References"
 
-#: src/lang.c:1092
+#: src/lang.c:1102
 msgid	"Multipart Subject"
 msgstr	"Mehrteilige Artikel (Subject)"
 
-#: src/lang.c:1104 src/lang.c:1215
+#: src/lang.c:1114 src/lang.c:1225
 msgid	"No"
 msgstr	"Nein"
 
-#: src/lang.c:1105 src/lang.c:1217
+#: src/lang.c:1115 src/lang.c:1227
 msgid	"Yes"
 msgstr	"Ja"
 
-#: src/lang.c:1106
+#: src/lang.c:1116
 msgid	"Hide All"
 msgstr	"Alle ausblenden"
 
-#: src/lang.c:1114
+#: src/lang.c:1124
 msgid	"Address"
 msgstr	"Adresse"
 
-#: src/lang.c:1115
+#: src/lang.c:1125
 msgid	"Full Name"
 msgstr	"Voller Name"
 
-#: src/lang.c:1116
+#: src/lang.c:1126
 msgid	"Address and Name"
 msgstr	"Adresse und Name"
 
-#: src/lang.c:1123
+#: src/lang.c:1133
 msgid	"Max"
 msgstr	"Höchster"
 
-#: src/lang.c:1124
+#: src/lang.c:1134
 msgid	"Sum"
 msgstr	"Summe"
 
-#: src/lang.c:1125
+#: src/lang.c:1135
 msgid	"Average"
 msgstr	"Durchschnitt"
 
-#: src/lang.c:1130
+#: src/lang.c:1140
 msgid	"Lines"
 msgstr	"Zeilen"
 
-#: src/lang.c:1131
+#: src/lang.c:1141
 msgid	"Score"
 msgstr	"Bewertung"
 
-#: src/lang.c:1132
+#: src/lang.c:1142
 msgid	"Lines & Score"
 msgstr	"Zeilen und Bewertung"
 
-#: src/lang.c:1141
+#: src/lang.c:1151
 msgid	"Black"
 msgstr	"Schwarz"
 
-#: src/lang.c:1142
+#: src/lang.c:1152
 msgid	"Red"
 msgstr	"Rot"
 
-#: src/lang.c:1143
+#: src/lang.c:1153
 msgid	"Green"
 msgstr	"Grün"
 
-#: src/lang.c:1144
+#: src/lang.c:1154
 msgid	"Brown"
 msgstr	"Braun"
 
-#: src/lang.c:1145
+#: src/lang.c:1155
 msgid	"Blue"
 msgstr	"Blau"
 
-#: src/lang.c:1146
+#: src/lang.c:1156
 msgid	"Pink"
 msgstr	"Rosa"
 
-#: src/lang.c:1147
+#: src/lang.c:1157
 msgid	"Cyan"
 msgstr	"Cyan"
 
-#: src/lang.c:1148
+#: src/lang.c:1158
 msgid	"White"
 msgstr	"Weiß"
 
-#: src/lang.c:1149
+#: src/lang.c:1159
 msgid	"Gray"
 msgstr	"Grau"
 
-#: src/lang.c:1150
+#: src/lang.c:1160
 msgid	"Light Red"
 msgstr	"Helles Rot"
 
-#: src/lang.c:1151
+#: src/lang.c:1161
 msgid	"Light Green"
 msgstr	"Helles Grün"
 
-#: src/lang.c:1152
+#: src/lang.c:1162
 msgid	"Yellow"
 msgstr	"Gelb"
 
-#: src/lang.c:1153
+#: src/lang.c:1163
 msgid	"Light Blue"
 msgstr	"Helles Blau"
 
-#: src/lang.c:1154
+#: src/lang.c:1164
 msgid	"Light Pink"
 msgstr	"Helles Rosa"
 
-#: src/lang.c:1155
+#: src/lang.c:1165
 msgid	"Light Cyan"
 msgstr	"Helles Cyan"
 
-#: src/lang.c:1156
+#: src/lang.c:1166
 msgid	"Light White"
 msgstr	"Helles Weiß"
 
-#: src/lang.c:1164 src/lang.c:1221 src/lang.c:1235
+#: src/lang.c:1174 src/lang.c:1231 src/lang.c:1245
 msgid	"Nothing"
 msgstr	"Nichts"
 
-#: src/lang.c:1165
+#: src/lang.c:1175
 msgid	"Mark"
 msgstr	"Markierung"
 
-#: src/lang.c:1166
+#: src/lang.c:1176
 msgid	"Space"
 msgstr	"Leerzeichen"
 
-#: src/lang.c:1173
+#: src/lang.c:1183
 msgid	"Normal"
 msgstr	"Normal"
 
-#: src/lang.c:1174
+#: src/lang.c:1184
 msgid	"Best highlighting"
 msgstr	"Beste Hervorhebung"
 
-#: src/lang.c:1175
+#: src/lang.c:1185
 msgid	"Underline"
 msgstr	"Unterstreichen"
 
-#: src/lang.c:1176
+#: src/lang.c:1186
 msgid	"Reverse video"
 msgstr	"Invers"
 
-#: src/lang.c:1177
+#: src/lang.c:1187
 msgid	"Blinking"
 msgstr	"Blinkend"
 
-#: src/lang.c:1178
+#: src/lang.c:1188
 msgid	"Half bright"
 msgstr	"Halbe Helligkeit"
 
-#: src/lang.c:1179
+#: src/lang.c:1189
 msgid	"Bold"
 msgstr	"Fett"
 
-#: src/lang.c:1184
+#: src/lang.c:1194
 msgid	"none"
 msgstr	"Nichts"
 
-#: src/lang.c:1185
+#: src/lang.c:1195
 msgid	"commands"
 msgstr	"Kommandos"
 
-#: src/lang.c:1186
+#: src/lang.c:1196
 msgid	"select"
 msgstr	"X-Befehl"
 
-#: src/lang.c:1188
+#: src/lang.c:1198
 msgid	"commands & quit"
 msgstr	"Kommandos & Ende"
 
-#: src/lang.c:1189
+#: src/lang.c:1199
 msgid	"commands & select"
 msgstr	"Kommandos & X-Befehl"
 
-#: src/lang.c:1190
+#: src/lang.c:1200
 msgid	"quit & select"
 msgstr	"Ende & X-Befehl"
 
-#: src/lang.c:1191
+#: src/lang.c:1201
 msgid	"commands & quit & select"
 msgstr	"Kmndos & Ende & X-Befehl"
 
-#: src/lang.c:1216
+#: src/lang.c:1226
 msgid	"Shell archive"
 msgstr	"Shellarchiv"
 
-#: src/lang.c:1222
+#: src/lang.c:1232
 msgid	"Subject: (descending)"
 msgstr	"Subject: (Absteigend)"
 
-#: src/lang.c:1223
+#: src/lang.c:1233
 msgid	"Subject: (ascending)"
 msgstr	"Subject: (Aufsteigend)"
 
-#: src/lang.c:1224
+#: src/lang.c:1234
 msgid	"From: (descending)"
 msgstr	"From: (Absteigend)"
 
-#: src/lang.c:1225
+#: src/lang.c:1235
 msgid	"From: (ascending)"
 msgstr	"From: (Aufsteigend)"
 
-#: src/lang.c:1226
+#: src/lang.c:1236
 msgid	"Date: (descending)"
 msgstr	"Date: (Absteigend)"
 
-#: src/lang.c:1227
+#: src/lang.c:1237
 msgid	"Date: (ascending)"
 msgstr	"Date: (Aufsteigend)"
 
-#: src/lang.c:1228 src/lang.c:1236
+#: src/lang.c:1238 src/lang.c:1246
 msgid	"Score (descending)"
 msgstr	"Bewertung (Absteigend)"
 
-#: src/lang.c:1229 src/lang.c:1237
+#: src/lang.c:1239 src/lang.c:1247
 msgid	"Score (ascending)"
 msgstr	"Bewertung (Aufsteigend)"
 
-#: src/lang.c:1230
+#: src/lang.c:1240
 msgid	"Lines: (descending)"
 msgstr	"Lines: (Absteigend)"
 
-#: src/lang.c:1231
+#: src/lang.c:1241
 msgid	"Lines: (ascending)"
 msgstr	"Lines: (Aufsteigend)"
 
-#: src/lang.c:1242
+#: src/lang.c:1252
 msgid	"Always Keep"
 msgstr	"Immer behalten"
 
-#: src/lang.c:1243
+#: src/lang.c:1253
 msgid	"Always Remove"
 msgstr	"Immer entfernen"
 
-#: src/lang.c:1244
+#: src/lang.c:1254
 msgid	"Mark with D on selection screen"
 msgstr	"Mit D in der Anzeige markiert"
 
-#: src/lang.c:1249
+#: src/lang.c:1259
 msgid	"Kill only unread arts"
 msgstr	"Killt nur ungelesene Artikel"
 
-#: src/lang.c:1250
+#: src/lang.c:1260
 msgid	"Kill all arts & show with K"
 msgstr	"Killt alle Artikel, markiert mit K"
 
 #. TODO: s/K/art_marked_killed/
-#: src/lang.c:1251
+#: src/lang.c:1261
 msgid	"Kill all arts and never show"
 msgstr	"Killt alle Artikel, zeigt sie nie"
 
-#: src/lang.c:1256
+#: src/lang.c:1266
 msgid	"Nothing special"
 msgstr	"Nichts besonderes"
 
-#: src/lang.c:1257
+#: src/lang.c:1267
 msgid	"Compress quotes"
 msgstr	"Zitatzeichen zusammenfassen"
 
-#: src/lang.c:1258
+#: src/lang.c:1268
 msgid	"Quote signatures"
 msgstr	"Signaturen zitieren"
 
-#: src/lang.c:1259
+#: src/lang.c:1269
 msgid	"Compress quotes, quote sigs"
 msgstr	"Zitatz. kürzen, Signat. zitieren"
 
-#: src/lang.c:1260
+#: src/lang.c:1270
 msgid	"Quote empty lines"
 msgstr	"Leerzeilen zitieren"
 
-#: src/lang.c:1261
+#: src/lang.c:1271
 msgid	"Compress quotes, quote empty lines"
 msgstr	"Zitatz. kürzen, Leerzeilen zit."
 
-#: src/lang.c:1262
+#: src/lang.c:1272
 msgid	"Quote sigs & empty lines"
 msgstr	"Signat. und Leerzeilen zitieren"
 
-#: src/lang.c:1263
+#: src/lang.c:1273
 msgid	"Comp. q., quote sigs & empty lines"
 msgstr	"Zitatz. kürzen, Sign & Leerz. zit."
 
-#: src/lang.c:1301
+#: src/lang.c:1311
 msgid	"no"
 msgstr	"nein"
 
-#: src/lang.c:1302
+#: src/lang.c:1312
 msgid	"with headers"
 msgstr	"mit Header"
 
-#: src/lang.c:1303
+#: src/lang.c:1313
 msgid	"without headers"
 msgstr	"ohne Header"
 
-# TRANSLATION MISSING
-#: src/lang.c:1310 src/lang.c:1316
+#: src/lang.c:1320 src/lang.c:1326
 msgid	"NFKC"
-msgstr	""
+msgstr	"NFKC"
 
-# TRANSLATION MISSING
-#: src/lang.c:1311
+#: src/lang.c:1321
 msgid	"NFKD"
-msgstr	""
+msgstr	"NFKD"
 
-# TRANSLATION MISSING
-#: src/lang.c:1312
+#: src/lang.c:1322
 msgid	"NFC"
-msgstr	""
+msgstr	"NFC"
 
-# TRANSLATION MISSING
-#: src/lang.c:1313
+#: src/lang.c:1323
 msgid	"NFD"
-msgstr	""
+msgstr	"NFD"
 
-#: src/lang.c:1324
+#: src/lang.c:1334
 msgid	"Display Options"
 msgstr	"Darstellungseinstellungen"
 
-#: src/lang.c:1330
+#: src/lang.c:1341
 msgid	"Color Options"
 msgstr	"Farbeinstellungen"
 
-#: src/lang.c:1336
+#: src/lang.c:1348
 msgid	"Article-Limiting Options"
 msgstr	"Artikel-Begrenzungseinstellungen"
 
-#: src/lang.c:1342
+#: src/lang.c:1354
 msgid	"Posting/Mailing Options"
 msgstr	"Versandeinstellungen für Mail und News"
 
-#: src/lang.c:1348
+#: src/lang.c:1360
 msgid	"Saving/Printing Options"
 msgstr	"Speicher- und Druckereinstellungen"
 
-#: src/lang.c:1354
+#: src/lang.c:1366
 msgid	"Expert Options"
 msgstr	"Experteneinstellungen"
 
-#: src/lang.c:1360
+#: src/lang.c:1372
 msgid	"Filtering Options"
 msgstr	"Filtereinstellungen"
 
-#: src/lang.c:1365 src/lang.c:1396 src/lang.c:1402 src/lang.c:1414 src/lang.c:1464
-#: src/lang.c:1470 src/lang.c:1480 src/lang.c:1500 src/lang.c:1575 src/lang.c:1745
-#: src/lang.c:1751 src/lang.c:1757 src/lang.c:1763 src/lang.c:1775 src/lang.c:1782
-#: src/lang.c:1836 src/lang.c:1845 src/lang.c:1851 src/lang.c:1858 src/lang.c:1865
-#: src/lang.c:1872 src/lang.c:1879 src/lang.c:1886 src/lang.c:1893 src/lang.c:1900
-#: src/lang.c:1907 src/lang.c:1914 src/lang.c:1921 src/lang.c:1928 src/lang.c:1935
-#: src/lang.c:1942 src/lang.c:1949 src/lang.c:1956 src/lang.c:1963 src/lang.c:1970
-#: src/lang.c:1977 src/lang.c:1984 src/lang.c:1991 src/lang.c:1998 src/lang.c:2005
-#: src/lang.c:2013 src/lang.c:2029 src/lang.c:2036 src/lang.c:2043 src/lang.c:2050
-#: src/lang.c:2056 src/lang.c:2062 src/lang.c:2079 src/lang.c:2091 src/lang.c:2125
-#: src/lang.c:2178 src/lang.c:2185 src/lang.c:2191 src/lang.c:2216 src/lang.c:2233
-#: src/lang.c:2286 src/lang.c:2322 src/lang.c:2342 src/lang.c:2377 src/lang.c:2387
-#: src/lang.c:2412 src/lang.c:2428 src/lang.c:2447 src/lang.c:2460
+#: src/lang.c:1377 src/lang.c:1408 src/lang.c:1414 src/lang.c:1426 src/lang.c:1476
+#: src/lang.c:1482 src/lang.c:1492 src/lang.c:1512 src/lang.c:1587 src/lang.c:1757
+#: src/lang.c:1763 src/lang.c:1769 src/lang.c:1775 src/lang.c:1787 src/lang.c:1794
+#: src/lang.c:1848 src/lang.c:1857 src/lang.c:1863 src/lang.c:1870 src/lang.c:1877
+#: src/lang.c:1884 src/lang.c:1891 src/lang.c:1898 src/lang.c:1905 src/lang.c:1912
+#: src/lang.c:1919 src/lang.c:1926 src/lang.c:1933 src/lang.c:1940 src/lang.c:1947
+#: src/lang.c:1954 src/lang.c:1961 src/lang.c:1968 src/lang.c:1975 src/lang.c:1982
+#: src/lang.c:1989 src/lang.c:1996 src/lang.c:2003 src/lang.c:2010 src/lang.c:2017
+#: src/lang.c:2025 src/lang.c:2041 src/lang.c:2048 src/lang.c:2055 src/lang.c:2062
+#: src/lang.c:2068 src/lang.c:2074 src/lang.c:2091 src/lang.c:2103 src/lang.c:2137
+#: src/lang.c:2190 src/lang.c:2197 src/lang.c:2203 src/lang.c:2228 src/lang.c:2245
+#: src/lang.c:2298 src/lang.c:2334 src/lang.c:2354 src/lang.c:2389 src/lang.c:2399
+#: src/lang.c:2424 src/lang.c:2440 src/lang.c:2459 src/lang.c:2472
 msgid	"<SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	"<SPACE> schaltet um, <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1366
+#: src/lang.c:1378
 msgid	"Show mini menu & posting etiquette"
 msgstr	"Zeigt Minimenü & Posting etiquette"
 
-#: src/lang.c:1367
+#: src/lang.c:1379
 msgid	"# If ON show a mini menu of useful commands at each level\n"
 	"# and posting etiquette after composing an article\n"
 msgstr	"# Falls ON wird ein kleines Menü mit nützlichen Kommandos in jedem Level\n"
 	"# angezeigt. Nach dem Erstellen eines Artikels wird die etiquette angezeigt\n"
 
-#: src/lang.c:1372
+#: src/lang.c:1384
 msgid	"Show short description for each newsgroup. <SPACE> toggles & <CR> sets."
 msgstr	"Zeige Kurzbeschreibung für Gruppe. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:1373
+#: src/lang.c:1385
 msgid	"Show description of each newsgroup"
 msgstr	"Zeige Beschreibung der Newsgruppen"
 
-#: src/lang.c:1374
+#: src/lang.c:1386
 msgid	"# If ON show group description text after newsgroup name at\n"
 	"# group selection level\n"
 msgstr	"# Falls ON wird die Newsgruppenbeschreibung im Gruppenauswahlmenü\n"
 	"# nach dem Namen angezeigt\n"
 
-#: src/lang.c:1379
+#: src/lang.c:1391
 msgid	"Show Subject & From (author) fields in group menu. <SPACE> toggles & <CR> "
 	"sets."
 msgstr	"Zeigt Subject & From (Autor) Felder im Gruppenmenü. <SPACE> wechselt & <CR> "
 	"setzt."
 
-#: src/lang.c:1380
+#: src/lang.c:1392
 msgid	"In group menu, show author by"
 msgstr	"Im Gruppenmenü, zeige Autor an nach"
 
-#: src/lang.c:1381
+#: src/lang.c:1393
 msgid	"# Part of from field to display\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = none\n"
@@ -4436,31 +4445,31 @@ msgstr	"# Anzeige des 'From:' Felds\n"
 	"# * 2 = Voller Name\n"
 	"#   3 = beides (Adresse und Name)\n"
 
-#: src/lang.c:1390
+#: src/lang.c:1402
 msgid	"Draw -> or highlighted bar for selection. <SPACE> toggles & <CR> sets."
 msgstr	"Zeige -> oder Hervorhebung für Auswahl. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:1391
+#: src/lang.c:1403
 msgid	"Draw -> instead of highlighted bar"
 msgstr	"Zeige -> anstatt einer Markierung"
 
-#: src/lang.c:1392
+#: src/lang.c:1404
 msgid	"# If ON use -> otherwise highlighted bar for selection\n"
 msgstr	"# Falls ON benutze -> andernfalls benutze eine Markierung zur Auswahl\n"
 
-#: src/lang.c:1397
+#: src/lang.c:1409
 msgid	"Use inverse video for page headers"
 msgstr	"Inverse Darstellung für die Header"
 
-#: src/lang.c:1398
+#: src/lang.c:1410
 msgid	"# If ON use inverse video for page headers at different levels\n"
 msgstr	"# Falls ON nutze inverse Darstellung für Header bei verschiedenen Ebenen\n"
 
-#: src/lang.c:1403
+#: src/lang.c:1415
 msgid	"Thread articles by"
 msgstr	"Threade Artikel anhand"
 
-#: src/lang.c:1404
+#: src/lang.c:1416
 msgid	"# Thread articles by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4476,11 +4485,11 @@ msgstr	"# Gruppiere Artikel nach\n"
 	"# * 3 = beides (Subject und References)\n"
 	"#   4 = Mehrteilige Artikel\n"
 
-#: src/lang.c:1415
+#: src/lang.c:1427
 msgid	"Score of a thread"
 msgstr	"Bewertung eines Threads"
 
-#: src/lang.c:1416
+#: src/lang.c:1428
 msgid	"# Thread score\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = max\n"
@@ -4492,15 +4501,15 @@ msgstr	"# Bewertung des Threads\n"
 	"#   1 = Summe\n"
 	"#   2 = Durchschnitt\n"
 
-#: src/lang.c:1424
+#: src/lang.c:1436
 msgid	"Sort articles by Subject, From, Date or Score. <SPACE> toggles & <CR> sets."
 msgstr	"Sortiere Artikel nach Subject, From, Datum oder Bewertung."
 
-#: src/lang.c:1425
+#: src/lang.c:1437
 msgid	"Sort articles by"
 msgstr	"Sortiere Artikel nach"
 
-#: src/lang.c:1426
+#: src/lang.c:1438
 msgid	"# Sort articles by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4528,16 +4537,17 @@ msgstr	"# Sortiere Artikel nach\n"
 	"#   9 = Lines absteigend\n"
 	"#  10 = Lines aufsteigend\n"
 
-#: src/lang.c:1442
+# TRANLSATION TOO LONG
+#: src/lang.c:1454
 msgid	"Sort threads by Nothing or Score. <SPACE> toggles & <CR> sets."
 msgstr	"Threads nach Bewertung (Score) oder nichts ordnen. <SPACE> wechselt & <CR> "
-	"setzt"
+	"setzt."
 
-#: src/lang.c:1443
+#: src/lang.c:1455
 msgid	"Sort threads by"
 msgstr	"Sortiere Threads nach"
 
-#: src/lang.c:1444
+#: src/lang.c:1456
 msgid	"# Sort thread by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4549,43 +4559,43 @@ msgstr	"# Ordne Threads nach\n"
 	"# * 1 = Bewertung absteigend\n"
 	"#   2 = Bewertung aufsteigend\n"
 
-#: src/lang.c:1452
+#: src/lang.c:1464
 msgid	"Put cursor at first/last unread art in groups. <SPACE> toggles & <CR> sets."
 msgstr	"Setze Cursor an ersten/letzten ungel. Artikel. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:1453
+#: src/lang.c:1465
 msgid	"Goto first unread article in group"
 msgstr	"Setze Cursor auf ersten ungel. Art."
 
-#: src/lang.c:1454
+#: src/lang.c:1466
 msgid	"# If ON put cursor at first unread art in group otherwise last art\n"
 msgstr	"# Falls ON setze Cursor auf ersten ungelesenen Art., sonst auf letzten\n"
 
-#: src/lang.c:1458
+#: src/lang.c:1470
 msgid	"Show all articles or only unread articles. <SPACE> toggles & <CR> sets."
 msgstr	"Zeige alle oder nur ungelesene Artikel. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:1459
+#: src/lang.c:1471
 msgid	"Show only unread articles"
 msgstr	"Zeige nur ungelesene Artikel"
 
-#: src/lang.c:1460
+#: src/lang.c:1472
 msgid	"# If ON show only new/unread articles otherwise show all.\n"
 msgstr	"# Falls ON zeige nur neue/ungelesene Artikel, sonst alle.\n"
 
-#: src/lang.c:1465
+#: src/lang.c:1477
 msgid	"Show only groups with unread arts"
 msgstr	"Zeige nur Gruppen mit ungel. Art."
 
-#: src/lang.c:1466
+#: src/lang.c:1478
 msgid	"# If ON show only subscribed to groups that contain unread articles.\n"
 msgstr	"# Falls ON zeige nur abonnierte Gruppen mit ungelesen Artikeln.\n"
 
-#: src/lang.c:1471
+#: src/lang.c:1483
 msgid	"Filter which articles"
 msgstr	"Filter (kill) anwenden auf"
 
-#: src/lang.c:1472
+#: src/lang.c:1484
 msgid	"# Filter which articles\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = only kill unread articles\n"
@@ -4597,198 +4607,198 @@ msgstr	"# Filter (kill) anwenden auf\n"
 	"#   1 = Filtert alle Artikel und markiert sie mit K\n"
 	"#   2 = Filtert alle Artikel und zeigt gekillte niemals an\n"
 
-#: src/lang.c:1481
+#: src/lang.c:1493
 msgid	"Tab goes to next unread article"
 msgstr	"Tab zeigt nächsten ungelesenen Art."
 
-#: src/lang.c:1482
+#: src/lang.c:1494
 msgid	"# If ON the TAB command will go to next unread article at article viewer "
 	"level\n"
 msgstr	"# Falls ON wechselt TAB sofort zum nächsten ungelesenen Artikel\n"
 
-#: src/lang.c:1486
+#: src/lang.c:1498
 msgid	"Scrolling with <SPACE> past the end of an art. jumps to the next unread one."
 msgstr	"Weiterscrollen mit Leertaste am Artikelende wechselt zum nächsten ungel. "
-	"Artikel"
+	"Artikel."
 
-#: src/lang.c:1487
+#: src/lang.c:1499
 msgid	"Space goes to next unread article"
 msgstr	"Leertaste zeigt nächsten unge. Art."
 
-#: src/lang.c:1488
+#: src/lang.c:1500
 msgid	"# If ON the SPACE command will go to next unread article at article viewer\n"
 	"# level when the end of the article is reached (rn-style pager)\n"
 msgstr	"# Falls ON wechselt die Leertaste zum nächsten ungelesenen Artikel, wenn\n"
 	"# das Ende des Artikels erreicht wird (rn-Stil)\n"
 
-#: src/lang.c:1493
+#: src/lang.c:1505
 msgid	"Scrolling with <PGDN>/<DOWN> past the end of an art. jumps to the unread one."
-msgstr	"Weiterscrollen mit BildAb am Artikelende wechselt zum nächsten ungel. Artikel"
+msgstr	"Weiterscrollen mit BildAb am Artikelende wechselt zum nächsten ungel. Artikel."
 
-#: src/lang.c:1494
+#: src/lang.c:1506
 msgid	"PgDn goes to next unread article"
 msgstr	"PgDn zeigt nächst. ungelesenen Art."
 
-#: src/lang.c:1495
+#: src/lang.c:1507
 msgid	"# If ON the PGDN or DOWN command will go to next unread article when\n"
 	"# pressed at end of message\n"
 msgstr	"# Falls ON wechselt Bildrunter oder Cursorrunter zum nächsten ungelesenen\n"
 	"# Artikel, wenn das Artikelende erreicht wurde\n"
 
-#: src/lang.c:1501
+#: src/lang.c:1513
 msgid	"List thread using right arrow key"
 msgstr	"Zeige Thread mit rechter Pfeilt. an"
 
-#: src/lang.c:1502
+#: src/lang.c:1514
 msgid	"# If ON automatically list thread when entering it using right arrow key.\n"
 msgstr	"# Falls ON: Thread beim Betreten mit der rechten Cursortaste automatisch\n"
 	"# anzeigen?\n"
 
-#: src/lang.c:1506
+#: src/lang.c:1518
 msgid	"Enter character to indicate deleted articles. <CR> sets, <ESC> cancels."
 msgstr	"Definiere Zeichen für gelöschte Artikel. <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1507
+#: src/lang.c:1519
 msgid	"Character to show deleted articles"
 msgstr	"Zeichen für gelöschte Artikel"
 
-#: src/lang.c:1508
+#: src/lang.c:1520
 msgid	"# Character used to show that an art was deleted (default 'D')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Zeichen für einen Artikel, der gelöscht wurde (Voreinstellung 'D')\n"
 	"# _ wird in ' ' umgewandelt\n"
 
-#: src/lang.c:1513
+#: src/lang.c:1525
 msgid	"Enter character to indicate articles in a range. <CR> sets, <ESC> cancels."
 msgstr	"Definiere Zeichen, das Artikel im Bereich anzeigt.<CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1514
+#: src/lang.c:1526
 msgid	"Character to show inrange articles"
 msgstr	"Zeichen für Artikel im Bereich"
 
-#: src/lang.c:1515
+#: src/lang.c:1527
 msgid	"# Character used to show that an art is in a range (default '#')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Zeichen für Artikel die im Bereich sind (Voreinstellung '#')\n"
 	"# _ wird in ' ' umgewandelt\n"
 
-#: src/lang.c:1520
+#: src/lang.c:1532
 msgid	"Enter character to indicate that article will return. <CR> sets, <ESC> "
 	"cancels."
 msgstr	"Definiere Zeichen für wiederkehrende Art. <CR> setzt. <ESC> bricht ab."
 
-#: src/lang.c:1521
+#: src/lang.c:1533
 msgid	"Character to show returning arts"
 msgstr	"Zeichen für wiederkehrende Artikel"
 
-#: src/lang.c:1522
+#: src/lang.c:1534
 msgid	"# Character used to show that an art will return (default '-')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Zeichen, dass ein Artikel wiederkommen wird (Voreinstellung '-')\n"
 	"# _ wird in ' ' umgewandelt\n"
 
-#: src/lang.c:1527
+#: src/lang.c:1539
 msgid	"Enter character to indicate selected articles. <CR> sets, <ESC> cancels."
 msgstr	"Zeichen für Artikel mit Markierung wichtig/'hot' <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1528
+#: src/lang.c:1540
 msgid	"Character to show selected articles"
 msgstr	"Zeichen für wichtige Artikel"
 
-#: src/lang.c:1529
+#: src/lang.c:1541
 msgid	"# Character used to show that an art was auto-selected (default '*')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Zeichen für Artikel mit Markierung wichtig/'hot' (Voreinstellung '*')\n"
 	"# _ wird in ' ' umgewandelt\n"
 
-#: src/lang.c:1534
+#: src/lang.c:1546
 msgid	"Enter character to indicate recent articles. <CR> sets, <ESC> cancels."
 msgstr	"Definiere Zeichen für aktuelle Artikel. <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1535
+#: src/lang.c:1547
 msgid	"Character to show recent articles"
 msgstr	"Zeichen für aktuelle Artikel"
 
-#: src/lang.c:1536
+#: src/lang.c:1548
 msgid	"# Character used to show that an art is recent (default 'o')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Zeichen für einen aktuellen Artikel (Voreinstellung ist 'o')\n"
 	"# _ wird in ' ' umgewandelt\n"
 
-#: src/lang.c:1541
+#: src/lang.c:1553
 msgid	"Enter character to indicate unread articles. <CR> sets, <ESC> cancels."
 msgstr	"Zeichen für ungelesene Artikel. <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1542
+#: src/lang.c:1554
 msgid	"Character to show unread articles"
 msgstr	"Zeichen für ungelesene Artikel"
 
-#: src/lang.c:1543
+#: src/lang.c:1555
 msgid	"# Character used to show that an art is unread (default '+')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Zeichen für ungelesene Artikel (Voreinstellung '+')\n"
 	"# _ wird in ' ' umgewandelt\n"
 
-#: src/lang.c:1548
+#: src/lang.c:1560
 msgid	"Enter character to indicate read articles. <CR> sets, <ESC> cancels."
 msgstr	"Zeichen für gelesene Artikel. <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1549
+#: src/lang.c:1561
 msgid	"Character to show read articles"
 msgstr	"Zeichen für gelesene Artikel"
 
-#: src/lang.c:1550
+#: src/lang.c:1562
 msgid	"# Character used to show that an art was read (default ' ')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Zeichen für gelesene Artikel (Voreinstellung ' ')\n"
 	"# _ wird in ' ' umgewandelt\n"
 
-#: src/lang.c:1555
+#: src/lang.c:1567
 msgid	"Enter character to indicate killed articles. <CR> sets, <ESC> cancels."
 msgstr	"Zeichen für gekillte Artikel. <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1556
+#: src/lang.c:1568
 msgid	"Character to show killed articles"
 msgstr	"Zeichen für gekillte Artikel"
 
-#: src/lang.c:1557
+#: src/lang.c:1569
 msgid	"# Character used to show that an art was killed (default 'K')\n"
 	"# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr	"# Zeichen für gekillte Artikel (Voreinstellung 'K')\n"
 	"# _ wird in ' ' umgewandelt, kill_level muss passend gesetzt sein.\n"
 
-#: src/lang.c:1562
+#: src/lang.c:1574
 msgid	"Enter character to indicate read selected articles. <CR> sets, <ESC> cancels."
 msgstr	"Zeichen für gelesene wichtige/'hot' Artikel. <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1563
+#: src/lang.c:1575
 msgid	"Character to show readselected arts"
 msgstr	"Zeichen für gelesene wichtige Art."
 
-#: src/lang.c:1564
+#: src/lang.c:1576
 msgid	"# Character used to show that an art was selected before read (default ':')\n"
 	"# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr	"# Zeichen für bereits gelesene Artikel mit Markierung wichtig/'hot'\n"
 	"# (Voreinstellung ':')\n"
 	"# _ wird in ' ' umgewandelt, kill_level muss passend gesetzt sein.\n"
 
-#: src/lang.c:1569
+#: src/lang.c:1581
 msgid	"Enter maximum length of newsgroup names displayed. <CR> sets."
 msgstr	"Maximale Länge des angezeigten Newsgruppennamens. <CR> setzt."
 
-#: src/lang.c:1570
+#: src/lang.c:1582
 msgid	"Max. length of group names shown"
 msgstr	"Max. Länge angezeigter Gruppennamen"
 
-#: src/lang.c:1571
+#: src/lang.c:1583
 msgid	"# Maximum length of the names of newsgroups displayed\n"
 msgstr	"# Maximale Länge der angezeigten Newsgruppennamen\n"
 
-#: src/lang.c:1576
+#: src/lang.c:1588
 msgid	"Show lines/score in listings"
 msgstr	"Zeige Zeilenz./Bewert. in Übersicht"
 
-#: src/lang.c:1577
+#: src/lang.c:1589
 msgid	"# What informations should be displayed in article/thread listing\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4803,17 +4813,17 @@ msgstr	"# Welche weiteren Informationen 
 	"#   2 = Bewertung\n"
 	"#   3 = Zeilenzahl & Bewertung\n"
 
-#: src/lang.c:1586
+#: src/lang.c:1598
 msgid	"0 = full page scrolling, -1 = show previous last line as first on next page, "
 	"-2 = half page"
 msgstr	"0 = seitenweise, -1 = zeige zusätzlich letzte Zeile der vorigen Seite, -2 = "
 	"halbe Seite"
 
-#: src/lang.c:1587
+#: src/lang.c:1599
 msgid	"Number of lines to scroll in pager"
 msgstr	"Blättere Artikel um ... Zeilen"
 
-#: src/lang.c:1588
+#: src/lang.c:1600
 msgid	"# Number of lines that cursor-up/down will scroll in article pager\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#  -2 = half-page scrolling\n"
@@ -4830,27 +4840,27 @@ msgstr	"# Anzahl der Zeilen, die Cursor-
 	"# * 1 = zeilenweise\n"
 	"#   2 oder mehr = um 2 oder mehr Zeilen\n"
 
-#: src/lang.c:1598
+#: src/lang.c:1610
 msgid	"Display signatures. <SPACE> toggles & <CR> sets."
 msgstr	"Zeige Signaturen an. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:1599
+#: src/lang.c:1611
 msgid	"Display signatures"
 msgstr	"Zeige Signaturen an"
 
-#: src/lang.c:1600
+#: src/lang.c:1612
 msgid	"# If OFF don't show signatures when displaying articles\n"
 msgstr	"# Falls OFF zeige keine Signaturen an\n"
 
-#: src/lang.c:1604
+#: src/lang.c:1616
 msgid	"Display uuencoded data as tagged attachments. <SPACE> toggles & <CR> sets."
 msgstr	"Uu-kodierte Teile als Attachment anzeigen. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:1605
+#: src/lang.c:1617
 msgid	"Display uue data as an attachment"
 msgstr	"Zeige uue-Teile als Attachment"
 
-#: src/lang.c:1606
+#: src/lang.c:1618
 msgid	"# Handling of uuencoded data in the pager\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no, display raw uuencoded data\n"
@@ -4865,29 +4875,29 @@ msgstr	"# Behandlung von uuencodeten Dat
 	"#       ähnlich der von MIME Anhängen\n"
 	"#   2 = Einzeilige Zusammenfassung auch für unvollständige Daten\n"
 
-#: src/lang.c:1616
+#: src/lang.c:1628
 msgid	"Decode German style TeX umlaut codes to ISO. <SPACE> toggles & <CR> sets."
 msgstr	"TeX german.sty Umlautkodierung auswerten. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:1617
+#: src/lang.c:1629
 msgid	"Display \"a as Umlaut-a"
 msgstr	"Wandle TeX-Umlaute automatisch um"
 
-#: src/lang.c:1618
+#: src/lang.c:1630
 msgid	"# If ON decode German style TeX umlaut codes to ISO and\n"
 	"# show \"a as Umlaut-a, etc.\n"
 msgstr	"# Wenn ON dekodiere laut german.sty (TeX) kodierte Umlaute und stelle\n"
 	"# \"a als ä, usw. dar\n"
 
-#: src/lang.c:1623 src/lang.c:1633
+#: src/lang.c:1635 src/lang.c:1645
 msgid	"Space separated list of header fields"
 msgstr	"Durch Leerzeichen getrennte Liste der Header-Felder"
 
-#: src/lang.c:1624
+#: src/lang.c:1636
 msgid	"Display these header fields (or *)"
 msgstr	"Zeige diese Header-Felder (oder *)"
 
-#: src/lang.c:1625
+#: src/lang.c:1637
 msgid	"# Which news headers you wish to see. If you want to see _all_ the headers,\n"
 	"# place an '*' as this value. This is the only way a wildcard can be used.\n"
 	"# If you enter 'X-' as the value, you will see all headers beginning with\n"
@@ -4901,11 +4911,11 @@ msgstr	"# Welche Header wollen Sie sehen
 	"# Leerzeichen getrennte Werte angeben. Wenn Sie hier nichts definieren\n"
 	"# wird diese Option deaktiviert.\n"
 
-#: src/lang.c:1634
+#: src/lang.c:1646
 msgid	"Do not display these header fields"
 msgstr	"Zeige folgende Header nicht an"
 
-#: src/lang.c:1635
+#: src/lang.c:1647
 msgid	"# Same as 'news_headers_to_display' except it denotes the opposite.\n"
 	"# An example of using both options might be if you thought X- headers were\n"
 	"# A Good Thing(tm), but thought Alan and Pape were miscreants...well then "
@@ -4922,27 +4932,27 @@ msgstr	"# Genau das gleiche wie 'news_he
 	"# news_headers_to_not_display=X-Alan X-Pape\n"
 	"# Wenn Sie hier nichts angeben, wird diese Option deaktiviert.\n"
 
-#: src/lang.c:1645
+#: src/lang.c:1657
 msgid	"Do you want to enable automatic handling of multipart/alternative articles?"
 msgstr	"Automatische Bearbeitung von Art. mit multipart/alternative-Teilen aktivieren?"
 
-#: src/lang.c:1646
+#: src/lang.c:1658
 msgid	"Skip multipart/alternative parts"
 msgstr	"Übersp. multipart/alternative-Teile"
 
-#: src/lang.c:1647
+#: src/lang.c:1659
 msgid	"# If ON strip multipart/alternative messages automatically\n"
 msgstr	"# Falls ON entsorge multipart/alternative Teile des Artikels automatisch\n"
 
-#: src/lang.c:1652
+#: src/lang.c:1664
 msgid	"A regex used to decide which lines to show in col_quote."
 msgstr	"Regulärer Ausdruck für Zeilen, die mit col_quote dargestellt werden."
 
-#: src/lang.c:1653
+#: src/lang.c:1665
 msgid	"Regex used to show quoted lines"
 msgstr	"Regulärer Ausd. für zit. Zeilen"
 
-#: src/lang.c:1654
+#: src/lang.c:1666
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted when viewing articles. Quoted lines are shown in col_quote.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4951,15 +4961,15 @@ msgstr	"# Ein regulärer Ausdruck, den ti
 	"# Farbe angezeigt, die in col_quote definiert sind.\n"
 	"# Wenn Sie hier nichts angeben, werden die Voreinstellungen benutzt.\n"
 
-#: src/lang.c:1660
+#: src/lang.c:1672
 msgid	"A regex used to decide which lines to show in col_quote2."
-msgstr	"Regulärer Ausdruck für Zeilen, die mit col_quote2 dargestellt werden"
+msgstr	"Regulärer Ausdruck für Zeilen, die mit col_quote2 dargestellt werden."
 
-#: src/lang.c:1661
+#: src/lang.c:1673
 msgid	"Regex used to show twice quoted l."
 msgstr	"Reg. Ausd. für zweifach zitierte Z."
 
-#: src/lang.c:1662
+#: src/lang.c:1674
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted twice. Twice quoted lines are shown in col_quote2.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4968,15 +4978,15 @@ msgstr	"# Ein regulärer Ausdruck, den ti
 	"# Farbe dargestellt, die in col_quote2 definiert ist.\n"
 	"# Wenn Sie hier nichts eingeben, werden die Voreinstellungen benutzt.\n"
 
-#: src/lang.c:1668
+#: src/lang.c:1680
 msgid	"A regex used to decide which lines to show in col_quote3."
 msgstr	"Regulärer Ausdruck für Zeilen, die mit col_quote3 dargestellt werden."
 
-#: src/lang.c:1669
+#: src/lang.c:1681
 msgid	"Regex used to show >= 3 times q.l."
 msgstr	"Reg. Ausd. für >=3-fach zitierte Z."
 
-#: src/lang.c:1670
+#: src/lang.c:1682
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted >=3 times. >=3 times quoted lines are shown in col_quote3.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4985,15 +4995,15 @@ msgstr	"# Ein regulärer Ausdruck, der en
 	"# dargestellt, die in col_quote3 definiert sind.\n"
 	"# Wenn Sie hier nichts eingeben, werden die Voreinstellungen benutzt.\n"
 
-#: src/lang.c:1677
+#: src/lang.c:1689
 msgid	"A regex used to decide which words to show in col_markslashes."
 msgstr	"Regulärer Ausdruck für Zeilen, die mit col_markslashes dargestellt werden."
 
-#: src/lang.c:1678
+#: src/lang.c:1690
 msgid	"Regex used to highlight /slashes/"
 msgstr	"Reg. für /Schrägst./ Hervorhebungen"
 
-#: src/lang.c:1679
+#: src/lang.c:1691
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '/' are to be shown in col_markslashes.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -5001,15 +5011,15 @@ msgstr	"# Ein regulärer Ausdruck, der en
 	"# zwischen '/' in col_markslashes angezeigt werden.\n"
 	"# Wenn Sie hier nichts eingeben, werden die Voreinstellungen benutzt.\n"
 
-#: src/lang.c:1685
+#: src/lang.c:1697
 msgid	"A regex used to decide which words to show in col_markstars."
 msgstr	"Regulärer Ausdruck für Zeilen, die mit col_markstars dargestellt werden."
 
-#: src/lang.c:1686
+#: src/lang.c:1698
 msgid	"Regex used to highlight *stars*"
 msgstr	"Regu. A. für *Stern* Hervorhebungen"
 
-#: src/lang.c:1687
+#: src/lang.c:1699
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '*' are to be shown in col_markstars.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -5017,15 +5027,15 @@ msgstr	"# Ein regulärer Ausdruck, der en
 	"# zwischen '*' in col_markstars angezeigt werden.\n"
 	"# Wenn Sie hier nichts eingeben, werden die Voreinstellungen benutzt.\n"
 
-#: src/lang.c:1693
+#: src/lang.c:1705
 msgid	"A regex used to decide which words to show in col_markstroke."
 msgstr	"Regulärer Ausdruck für Zeilen, die mit col_markstroke dargestellt werden."
 
-#: src/lang.c:1694
+#: src/lang.c:1706
 msgid	"Regex used to highlight -strokes-"
 msgstr	"Reg. für -Durchstr.- Hervorhebungen"
 
-#: src/lang.c:1695
+#: src/lang.c:1707
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '-' are to be shown in col_markstroke.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -5033,15 +5043,15 @@ msgstr	"# Ein regulärer Ausdruck, der en
 	"# zwischen '-' in col_markstroke angezeigt werden.\n"
 	"# Wenn Sie hier nichts eingeben, werden die Voreinstellungen benutzt.\n"
 
-#: src/lang.c:1701
+#: src/lang.c:1713
 msgid	"A regex used to decide which words to show in col_markdash."
 msgstr	"Regulärer Ausdruck für Zeilen, die mit col_markdash dargestellt werden."
 
-#: src/lang.c:1702
+#: src/lang.c:1714
 msgid	"Regex used to highlight _underline_"
 msgstr	"Reg. für _Unterstr._ Hervorhebungen"
 
-#: src/lang.c:1703
+#: src/lang.c:1715
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '_' are to be shown in col_markdash.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -5049,44 +5059,44 @@ msgstr	"# Ein regulärer Ausdruck, der en
 	"# zwischen '_' in col_markdash angezeigt werden.\n"
 	"# Wenn Sie hier nichts eingeben, werden die Voreinstellungen benutzt.\n"
 
-#: src/lang.c:1709
+#: src/lang.c:1721
 msgid	"A regex used to find Subject prefixes to remove.  Use '|' as separator."
 msgstr	"Reg. Ausd., um Teile im Subjectanfang zu entfernen. '|' trennt die Ausd.."
 
-#: src/lang.c:1710
+#: src/lang.c:1722
 msgid	"Regex with Subject prefixes"
 msgstr	"Reg. Ausd. für den Subjectanfang"
 
-#: src/lang.c:1711
+#: src/lang.c:1723
 msgid	"# A regular expression that tin will use to find Subject prefixes\n"
 	"# which will be removed before showing the header.\n"
 msgstr	"# Ein regulärer Ausdruck, mit dem tin Worte im Anfang des Subjects findet,\n"
 	"# die dann entfernt werden.\n"
 
-#: src/lang.c:1716
+#: src/lang.c:1728
 msgid	"A regex used to find Subject suffixes to remove.  Use '|' as separator."
 msgstr	"Reg. Ausd., um Teile am Subjectanfang zu entfernen. '|' trennt die Ausd.."
 
-#: src/lang.c:1717
+#: src/lang.c:1729
 msgid	"Regex with Subject suffixes"
 msgstr	"Reg. Ausd. für das Subjectende"
 
-#: src/lang.c:1718
+#: src/lang.c:1730
 msgid	"# A regular expression that tin will use to find Subject suffixes\n"
 	"# which will be removed when replying or posting followup.\n"
 msgstr	"# Ein regulärer Ausdruck, der beim Antworten zum Abschneiden von\n"
 	"# unerwünschten Teilen am Ende des Subjects verwendet wird.\n"
 
-#: src/lang.c:1723
+#: src/lang.c:1735
 msgid	"Enter name and options for external MIME viewer, --internal for built-in "
 	"viewer"
 msgstr	"Name und Optionen für ext. MIME-Viewer, --internal für eingebaute Version"
 
-#: src/lang.c:1724
+#: src/lang.c:1736
 msgid	"MIME binary content viewer"
 msgstr	"MIME-Viewer"
 
-#: src/lang.c:1725
+#: src/lang.c:1737
 msgid	"# If --internal automatically use the built in MIME viewer for non-text\n"
 	"# parts of articles.\n"
 	"# Otherwise specify an external viewer program (eg, metamail) or leave blank\n"
@@ -5095,131 +5105,131 @@ msgstr	"# Falls --internal wird der eing
 	"# nicht Text teilen benutzt. Andernfalls das angegebene Programm\n"
 	"# (z.B. metamail). Keine Angabe schaltet die automatische Anzeige aus.\n"
 
-#: src/lang.c:1732
+#: src/lang.c:1744
 msgid	"Confirm before starting non-text viewing program"
 msgstr	"Start des MIME-Viewers bestätigen"
 
-#: src/lang.c:1733
+#: src/lang.c:1745
 msgid	"Ask before using MIME viewer"
 msgstr	"Start des MIME-Viewers bestätigen"
 
-#: src/lang.c:1734
+#: src/lang.c:1746
 msgid	"# If ON tin will ask before using metamail to display MIME messages\n"
 	"# this only happens if metamail_prog is set to something\n"
 msgstr	"# Falls ON fragt tin nach, bevor metamail zum Anzeigen von MIME Artikeln\n"
 	"# benutzt wird. Das passiert nur, wenn auch metamail_prog gesetzt ist.\n"
 
-#: src/lang.c:1739
+#: src/lang.c:1751
 msgid	"Ask to mark groups read when quitting. <SPACE> toggles & <CR> sets."
 msgstr	"Beim Beenden anbieten, alle betretenen Gruppen als gelesen zu markieren?"
 
-#: src/lang.c:1740
+#: src/lang.c:1752
 msgid	"Catchup read groups when quitting"
 msgstr	"Aufholen der Gruppen beim Beenden"
 
-#: src/lang.c:1741
+#: src/lang.c:1753
 msgid	"# If ON ask user if read groups should all be marked read\n"
 msgstr	"# Falls ON: Beim Beenden von tin anbieten, alle betretenen Gruppen\n"
 	"#           als gelesen zu markieren\n"
 
-#: src/lang.c:1746
+#: src/lang.c:1758
 msgid	"Catchup group using left key"
 msgstr	"Catchup der Gruppe mit l. Cursor"
 
-#: src/lang.c:1747
+#: src/lang.c:1759
 msgid	"# If ON catchup group/thread when leaving with the left arrow key.\n"
 msgstr	"# Falls ON: Aufholen (als gelesen markieren) der Gruppe/des Threads\n"
 	"#           beim Verlassen mit der linken Cursortaste\n"
 
-#: src/lang.c:1752
+#: src/lang.c:1764
 msgid	"Catchup thread by using left key"
 msgstr	"Catchup mit der linken Cursort."
 
-#: src/lang.c:1758
+#: src/lang.c:1770
 msgid	"Which actions require confirmation"
 msgstr	"Bestätigung erforderlich für"
 
-#: src/lang.c:1759
+#: src/lang.c:1771
 msgid	"# What should we ask confirmation for.\n"
 msgstr	"# Welche Operationen müssen explizit bestätigt werden.\n"
 	"# Kommandos, die im Manual mit [after confirmation] markiert sind,\n"
 	"# Beenden von tin, markieren aller nicht hochgescorter Artikel als\n"
 	"# gelesen (siehe 'X' Befehl im Manual).\n"
 
-# TRANSLATION MISSING
-#: src/lang.c:1764
+# TRANSLATION TOO LONG
+#: src/lang.c:1776
 msgid	"'Mark article read' ignores tags"
-msgstr	""
+msgstr	"'Artikel gelesen markieren' ignoriert Markierte"
 
-#: src/lang.c:1765
+#: src/lang.c:1777
 msgid	"# If ON the 'Mark article read' function marks only the current article.\n"
-msgstr	"# Falls ON wird mit der Fuktion 'Artikel als gelesen markieren' nur\n"
+msgstr	"# Falls ON wird mit der Funktion 'Artikel als gelesen markieren' nur\n"
 	"# der jeweilige Artikel markiert.\n"
 
-#: src/lang.c:1769
+#: src/lang.c:1781
 msgid	"Program to run to open URL's, <CR> sets, <ESC> cancels."
 msgstr	"Öffne URLs mit ... <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:1770
+#: src/lang.c:1782
 msgid	"Program that opens URL's"
 msgstr	"Öffne URLs mit ..."
 
-#: src/lang.c:1771
+#: src/lang.c:1783
 msgid	"# The program used to open URL's. The actual URL will be appended\n"
 msgstr	"# Programm zum Öffnen von URLs, die jeweilige URL wird hinten angehängt.\n"
 
-#: src/lang.c:1776
+#: src/lang.c:1788
 msgid	"Use mouse in xterm"
 msgstr	"Maus in xterm nutzen"
 
-#: src/lang.c:1777
+#: src/lang.c:1789
 msgid	"# If ON enable mouse key support on xterm terminals\n"
 msgstr	"# Falls ON wird die Maustastenunterstützung für xterm aktiviert\n"
 
-#: src/lang.c:1783
+#: src/lang.c:1795
 msgid	"Use scroll keys on keypad"
 msgstr	"Scrollt. vom Nummernblock nutzen"
 
-#: src/lang.c:1784
+#: src/lang.c:1796
 msgid	"# If ON enable scroll keys on terminals that support it\n"
 msgstr	"# Falls ON werden die Scrolltasten genutzt (Terminalabhängig)\n"
 
-#: src/lang.c:1789
+#: src/lang.c:1801
 msgid	"Enter maximum number of article to get. <CR> sets."
 msgstr	"Maximale Anzahl der zu holenden Artikel eingeben. <CR> setzt."
 
-#: src/lang.c:1790
+#: src/lang.c:1802
 msgid	"Number of articles to get"
 msgstr	"Anzahl der zu holenden Artikel"
 
-#: src/lang.c:1791
+#: src/lang.c:1803
 msgid	"# Number of articles to get (0=no limit), if negative sets maximum number\n"
 	"# of already read articles to be read before first unread one\n"
 msgstr	"# Anzahl der zu holenden Artikel (0=unbegrenzt), falls ein negativer Wert\n"
 	"# angegeben wird, holt tin alle ungelesenen plus die letzten n gelesenen\n"
 	"# Artikel\n"
 
-#: src/lang.c:1796
+#: src/lang.c:1808
 msgid	"Enter number of days article is considered recent. <CR> sets."
 msgstr	"Anzahl der Tage, die ein Artikel als neu eingestuft wird. <CR> setzt."
 
-#: src/lang.c:1797
+#: src/lang.c:1809
 msgid	"Article recentness time limit"
 msgstr	"Artikel Neuheitszeit-Limit"
 
-#: src/lang.c:1798
+#: src/lang.c:1810
 msgid	"# Number of days in which article is considered recent, (0=OFF)\n"
 msgstr	"# Anzahl der Tage, die ein Artikel als neu eingestuft wird, (0=Aus)\n"
 
-#: src/lang.c:1802
+#: src/lang.c:1814
 msgid	"WILDMAT for normal wildcards, REGEX for full regular expression matching."
 msgstr	"WILDMAT für normale Wildcards, REGEX für die Nutzung von regulären Ausdrücken."
 
-#: src/lang.c:1803
+#: src/lang.c:1815
 msgid	"Wildcard matching"
 msgstr	"Wildcardprüfung"
 
-#: src/lang.c:1804
+#: src/lang.c:1816
 msgid	"# Wildcard matching\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = wildmat\n"
@@ -5229,310 +5239,310 @@ msgstr	"# Wildcardprüfung\n"
 	"# * 0 = wildmat\n"
 	"#   1 = Regulärer Ausdruck\n"
 
-#: src/lang.c:1811
+#: src/lang.c:1823
 msgid	"Enter minimal score before an article is marked killed. <CR> sets."
 msgstr	"Artikel mit weniger Bewertung (Score) werden als `gekillt' markiert. <CR> "
 	"setzt."
 
-#: src/lang.c:1812
+#: src/lang.c:1824
 msgid	"Score limit (kill)"
 msgstr	"Bewertungsgrenze (kill)"
 
-#: src/lang.c:1813
+#: src/lang.c:1825
 msgid	"# Score limit before an article is marked killed\n"
 msgstr	"# Jeder Artikel mit einer niedrigeren Bewertung (Score) wird als\n"
 	"# gekillt markiert\n"
 
-#: src/lang.c:1817
+#: src/lang.c:1829
 msgid	"Enter default score to kill articles. <CR> sets."
 msgstr	"Bewertung für gekillte Artikel. <CR> setzt."
 
-#: src/lang.c:1818
+#: src/lang.c:1830
 msgid	"Default score to kill articles"
 msgstr	"Bewertung für gekillte Artikel"
 
-#: src/lang.c:1819
+#: src/lang.c:1831
 msgid	"# Default score to kill articles\n"
 msgstr	"# Bewertung für gekillte Artikel\n"
 
-#: src/lang.c:1823
+#: src/lang.c:1835
 msgid	"Enter minimal score before an article is marked hot. <CR> sets."
 msgstr	"Artikel mit einer höheren Bewertung (Score) werd. als wichtig/hot markiert."
 
-#: src/lang.c:1824
+#: src/lang.c:1836
 msgid	"Score limit (select)"
 msgstr	"Bewertungsgrenze (select)"
 
-#: src/lang.c:1825
+#: src/lang.c:1837
 msgid	"# Score limit before an article is marked hot\n"
 msgstr	"# Artikel mit einer höheren Bewertung (Score) werden als\n"
 	"# wichtig (hot) markiert\n"
 
-#: src/lang.c:1829
+#: src/lang.c:1841
 msgid	"Enter default score to select articles. <CR> sets."
 msgstr	"Bewertung für wichtige Artikel (hot). <CR> setzt."
 
-#: src/lang.c:1830
+#: src/lang.c:1842
 msgid	"Default score to select articles"
 msgstr	"Bewertung für wichtige Artikel"
 
-#: src/lang.c:1831
+#: src/lang.c:1843
 msgid	"# Default score to select articles\n"
 msgstr	"# Bewertung für wichtige Artikel (hot)\n"
 
-#: src/lang.c:1837
+#: src/lang.c:1849
 msgid	"Use slrnface to show ''X-Face:''s"
 msgstr	"''X-Face:''s mit slrnface Anzeigen"
 
-#: src/lang.c:1838
+#: src/lang.c:1850
 msgid	"# If ON using slrnface(1) to interpret the ''X-Face:'' header.\n"
 	"# Only useful when running in an xterm.\n"
 msgstr	"# Falls ON benutze slrnface(1) um ''X-Face:'' anzuzeigen.\n"
 	"# Funktioniert nur wenn tin in einem xterm läuft.\n"
 
-#: src/lang.c:1846
+#: src/lang.c:1858
 msgid	"Use ANSI color"
 msgstr	"Benutze ANSI-Farben"
 
-#: src/lang.c:1847
+#: src/lang.c:1859
 msgid	"# If ON using ANSI-color\n"
 msgstr	"# Falls ON benutze ANSI-Farben\n"
 
-#: src/lang.c:1852
+#: src/lang.c:1864
 msgid	"Standard foreground color"
 msgstr	"Standard Vordergrundfarbe"
 
-#: src/lang.c:1853
+#: src/lang.c:1865
 msgid	"# Standard foreground color\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Standard Vordergrundfarbe\n"
 	"# Voreinstellung: -1 (Standard Farbe)\n"
 
-#: src/lang.c:1859
+#: src/lang.c:1871
 msgid	"Standard background color"
 msgstr	"Standard Hintergrundfarbe"
 
-#: src/lang.c:1860
+#: src/lang.c:1872
 msgid	"# Standard background color\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Standard Hintergrundfarbe\n"
 	"# Voreinstellung: -1 (Standard Farbe)\n"
 
-#: src/lang.c:1866
+#: src/lang.c:1878
 msgid	"Color for inverse text (background)"
 msgstr	"Farbe des inversen Text (Hinterg.)"
 
-#: src/lang.c:1867
+#: src/lang.c:1879
 msgid	"# Color of background for inverse text\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Farbe des Hintergrunds für inversen Text\n"
 	"# Voreinstellung: 4 (blau)\n"
 
-#: src/lang.c:1873
+#: src/lang.c:1885
 msgid	"Color for inverse text (foreground)"
 msgstr	"Farbe des inversen Text (Vordergr.)"
 
-#: src/lang.c:1874
+#: src/lang.c:1886
 msgid	"# Color of foreground for inverse text\n"
 	"# Default: 7 (white)\n"
 msgstr	"# Farbe des Vordergrunds für inversen Text\n"
 	"# Voreinstellung: 7 (weiß)\n"
 
-#: src/lang.c:1880
+#: src/lang.c:1892
 msgid	"Color of text lines"
 msgstr	"Farbe der Textzeilen"
 
-#: src/lang.c:1881
+#: src/lang.c:1893
 msgid	"# Color of text lines\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Farbe der Textzeilen\n"
 	"# Voreinstellung: -1 (Standard Farbe)\n"
 
-#: src/lang.c:1887
+#: src/lang.c:1899
 msgid	"Color of mini help menu"
 msgstr	"Farbe des Minihilfemenü"
 
-#: src/lang.c:1888
+#: src/lang.c:1900
 msgid	"# Color of mini help menu\n"
 	"# Default: 3 (brown)\n"
 msgstr	"# Farbe des Minihilfemenü\n"
 	"# Voreinstellung: 3 (braun)\n"
 
-#: src/lang.c:1894
+#: src/lang.c:1906
 msgid	"Color of help text"
 msgstr	"Farbe des Hilfstext"
 
-#: src/lang.c:1895
+#: src/lang.c:1907
 msgid	"# Color of help pages\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Farbe der Hilfsseiten\n"
 	"# Voreinstellung: -1 (Standard Farbe)\n"
 
-#: src/lang.c:1901
+#: src/lang.c:1913
 msgid	"Color of status messages"
 msgstr	"Farbe der Statusmeldungen"
 
-#: src/lang.c:1902
+#: src/lang.c:1914
 msgid	"# Color of messages in last line\n"
 	"# Default: 6 (cyan)\n"
 msgstr	"# Farbe der letzten Zeile im Artikel\n"
 	"# Voreinstellung: 6 (cyan)\n"
 
-#: src/lang.c:1908
+#: src/lang.c:1920
 msgid	"Color of quoted lines"
 msgstr	"Farbe der zitierten Zeilen"
 
-#: src/lang.c:1909
+#: src/lang.c:1921
 msgid	"# Color of quote-lines\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Farbe der zitierten Zeilen\n"
 	"# Voreinstellung: 2 (grün)\n"
 
-#: src/lang.c:1915
+#: src/lang.c:1927
 msgid	"Color of twice quoted line"
 msgstr	"Farbe von zweifach zitierten Zeilen"
 
-#: src/lang.c:1916
+#: src/lang.c:1928
 msgid	"# Color of twice quoted lines\n"
 	"# Default: 3 (brown)\n"
 msgstr	"# Farbe von zweifach zitierten Zeilen\n"
 	"# Voreinstellung: 3 (braun)\n"
 
-#: src/lang.c:1922
+#: src/lang.c:1934
 msgid	"Color of =>3 times quoted line"
 msgstr	"Farbe von =>3-fach zitierten Zeilen"
 
-#: src/lang.c:1923
+#: src/lang.c:1935
 msgid	"# Color of >=3 times quoted lines\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Farbe von =>3-fach zitierten Zeilen\n"
 	"# Voreinstellung: 4 (blau)\n"
 
-#: src/lang.c:1929
+#: src/lang.c:1941
 msgid	"Color of article header lines"
 msgstr	"Farbe der Artikelheaderzeilen"
 
-#: src/lang.c:1930
+#: src/lang.c:1942
 msgid	"# Color of header-lines\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Farbe der Artikelheaderzeilen\n"
 	"# Voreinstellung: 2 (grün)\n"
 
-#: src/lang.c:1936
+#: src/lang.c:1948
 msgid	"Color of actual news header fields"
 msgstr	"Farbe des angezeigten Headers"
 
-#: src/lang.c:1937
+#: src/lang.c:1949
 msgid	"# Color of actual news header fields\n"
 	"# Default: 9 (light red)\n"
 msgstr	"# Farbe des angezeigten Headers\n"
 	"# Voreinstellung: 9 (hellrot)\n"
 
-#: src/lang.c:1943
+#: src/lang.c:1955
 msgid	"Color of article subject lines"
 msgstr	"Farbe der Subjectzeile"
 
-#: src/lang.c:1944
+#: src/lang.c:1956
 msgid	"# Color of article subject\n"
 	"# Default: 6 (cyan)\n"
 msgstr	"# Farbe der Subjectzeile\n"
 	"# Voreinstellung: 6 (cyan)\n"
 
-#: src/lang.c:1950
+#: src/lang.c:1962
 msgid	"Color of response counter"
 msgstr	"Farbe des Antwortzählers"
 
-#: src/lang.c:1951
+#: src/lang.c:1963
 msgid	"# Color of response counter\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Farbe des Antwortzählers\n"
 	"# Voreinstellung: 2 (grün)\n"
 
-#: src/lang.c:1957
+#: src/lang.c:1969
 msgid	"Color of sender (From:)"
 msgstr	"Farbe des Autors (From:)"
 
-#: src/lang.c:1958
+#: src/lang.c:1970
 msgid	"# Color of sender (From:)\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Farbe des Autors (From:)\n"
 	"# Voreinstellung: 2 (grün)\n"
 
-#: src/lang.c:1964
+#: src/lang.c:1976
 msgid	"Color of help/mail sign"
 msgstr	"Farbe des Hilfe/Mail-Zeichen"
 
-#: src/lang.c:1965
+#: src/lang.c:1977
 msgid	"# Color of Help/Mail-Sign\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Farbe des Hilfe/Mail-Zeichen\n"
 	"# Voreinstellung: 4 (blau)\n"
 
-#: src/lang.c:1971
+#: src/lang.c:1983
 msgid	"Color of signatures"
 msgstr	"Farbe von Signaturen"
 
-#: src/lang.c:1972
+#: src/lang.c:1984
 msgid	"# Color of signature\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Farbe von Signaturen\n"
 	"# Voreinstellung: 4 (blau)\n"
 
-#: src/lang.c:1978
+#: src/lang.c:1990
 msgid	"Color of highlighted URLs"
 msgstr	"Farbe der hervorgehobenen URLs"
 
-#: src/lang.c:1979
+#: src/lang.c:1991
 msgid	"# Color of highlighted URLs\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Farbe der hervorgehobenen URLs\n"
 	"# Voreinstellung: -1 (Standard Farbe)\n"
 
-#: src/lang.c:1985
+#: src/lang.c:1997
 msgid	"Color of highlighting with *stars*"
 msgstr	"Farbe der Hervorhebung *Sterne*"
 
-#: src/lang.c:1986
+#: src/lang.c:1998
 msgid	"# Color of word highlighting with *stars*\n"
 	"# Default: 11 (yellow)\n"
 msgstr	"# Farbe der Hervorhebung durch *Sterne*\n"
 	"# Voreinstellung: 11 (gelb)\n"
 
-#: src/lang.c:1992
+#: src/lang.c:2004
 msgid	"Color of highlighting with _dash_"
 msgstr	"Farbe der Hervorhebung _Striche_"
 
-#: src/lang.c:1993
+#: src/lang.c:2005
 msgid	"# Color of word highlighting with _dash_\n"
 	"# Default: 13 (light pink)\n"
 msgstr	"# Farbe der Hervorhebung durch _Striche_\n"
 	"# Voreinstellung: 13 (hellrosa)\n"
 
-#: src/lang.c:1999
+#: src/lang.c:2011
 msgid	"Color of highlighting with /slash/"
 msgstr	"Farbe der Hervorhebung /Schrägstr./"
 
-#: src/lang.c:2000
+#: src/lang.c:2012
 msgid	"# Color of word highlighting with /slash/\n"
 	"# Default: 14 (light cyan)\n"
 msgstr	"# Farbe der Hervorhebung durch /Schrägstriche/\n"
 	"# Voreinstellung: 11 (hellcyan)\n"
 
-#: src/lang.c:2006
+#: src/lang.c:2018
 msgid	"Color of highlighting with -stroke-"
 msgstr	"Farbe der Hervorhebung -Durchstr.-"
 
-#: src/lang.c:2007
+#: src/lang.c:2019
 msgid	"# Color of word highlighting with -stroke-\n"
 	"# Default: 12 (light blue)\n"
-msgstr	"# Farbe der Hervorhebung duch -Durchstreichen-\n"
+msgstr	"# Farbe der Hervorhebung durch -Durchstreichen-\n"
 	"# Voreinstellung: 12 (hellblau)\n"
 
-#: src/lang.c:2014
+#: src/lang.c:2026
 msgid	"Attr. of highlighting with *stars*"
 msgstr	"Hervorhebungsattribute *Sterne*"
 
-#: src/lang.c:2015
+#: src/lang.c:2027
 msgid	"# Attributes of word highlighting on mono terminals\n"
 	"# Possible values are:\n"
 	"#   0 = Normal\n"
@@ -5558,57 +5568,57 @@ msgstr	"# Attribute der Hervorhebung von
 	"# Hervorhebungsattribut für *Sterne*\n"
 	"# Voreinstellung: 6 (fett)\n"
 
-#: src/lang.c:2030
+#: src/lang.c:2042
 msgid	"Attr. of highlighting with _dash_"
 msgstr	"Hervorhebungsattr. _Unterstriche_"
 
-#: src/lang.c:2031
+#: src/lang.c:2043
 msgid	"# Attribute of word highlighting with _dash_\n"
 	"# Default: 2 (best highlighting)\n"
 msgstr	"# Hervorhebungsattribut für _Unterstriche_\n"
 	"# Voreinstellung: 2 (beste Hervorhebung)\n"
 
-#: src/lang.c:2037
+#: src/lang.c:2049
 msgid	"Attr. of highlighting with /slash/"
 msgstr	"Hervorhebungsattr. /Schrägstriche/"
 
-#: src/lang.c:2038
+#: src/lang.c:2050
 msgid	"# Attribute of word highlighting with /slash/\n"
 	"# Default: 5 (half bright)\n"
 msgstr	"# Hervorhebungsattribut für /Schrägstriche/\n"
 	"# Voreinstellung: 5 (halbe Helligkeit)\n"
 
-#: src/lang.c:2044
+#: src/lang.c:2056
 msgid	"Attr. of highlighting with -stroke-"
 msgstr	"Hervorhebungsattr. -Durchstreich.-"
 
-#: src/lang.c:2045
+#: src/lang.c:2057
 msgid	"# Attribute of word highlighting with -stroke-\n"
 	"# Default: 3 (reverse video)\n"
 msgstr	"# Hervorhebungsattribut für -Durchstreichen-\n"
 	"# Voreinstellung: 3 (Invers)\n"
 
-#: src/lang.c:2051
+#: src/lang.c:2063
 msgid	"URL highlighting in message body"
 msgstr	"URL-Hervorhebung im Artikel"
 
-#: src/lang.c:2052
+#: src/lang.c:2064
 msgid	"# Enable URL highlighting?\n"
 msgstr	"# URL-Hervorhebung aktivieren?\n"
 
-#: src/lang.c:2057
+#: src/lang.c:2069
 msgid	"Word highlighting in message body"
 msgstr	"Wort-Hervorhebung im Artikel"
 
-#: src/lang.c:2058
+#: src/lang.c:2070
 msgid	"# Enable word highlighting?\n"
 msgstr	"# Wort-Hervorhebung aktivieren?\n"
 
-#: src/lang.c:2063
+#: src/lang.c:2075
 msgid	"What to display instead of mark"
 msgstr	"Anstelle der Markierung anzeigen"
 
-#: src/lang.c:2064
+#: src/lang.c:2076
 msgid	"# Should the leading and ending stars and dashes also be displayed,\n"
 	"# even when they are highlighting marks?\n"
 	"# Possible values are (the default is marked with *):\n"
@@ -5622,59 +5632,59 @@ msgstr	"# Sollen die führenden und absch
 	"#   1 = ja, anzeigen\n"
 	"# * 2 = Leerzeichen anstelle darstellen\n"
 
-#: src/lang.c:2073
+#: src/lang.c:2085
 msgid	"Enter column number to wrap article lines to in the pager. <CR> sets."
 msgstr	"Nach wie vielen Zeichen soll im Pager umbrochen werden? <CR> setzt."
 
-#: src/lang.c:2074
+#: src/lang.c:2086
 msgid	"Page line wrap column"
 msgstr	"Zeilen umbrechen nach"
 
-#: src/lang.c:2075
+#: src/lang.c:2087
 msgid	"# Wrap article lines at column\n"
 msgstr	"# In der Artikelanzeige Zeilen umbrechen bei Spalte\n"
 
-#: src/lang.c:2080
+#: src/lang.c:2092
 msgid	"Wrap around threads on next unread"
 msgstr	"Nä.ungel.-kein Abbr. am Listenende?"
 
-#: src/lang.c:2081
+#: src/lang.c:2093
 msgid	"# If ON wrap around threads on searching next unread article\n"
 msgstr	"# Diverse Funktionen in tin wechseln zum \"nächsten\" ungelesenen\n"
 	"# Artikel. Diese Einstellung kontrolliert, ob tin am Ende der\n"
 	"# Artikel/Threadliste abbricht (OFF) oder zum Beginn derselben springt und\n"
 	"# von dort aus den nächsten ungelesenen Artikel sucht. (ON)\n"
 
-#: src/lang.c:2085
+#: src/lang.c:2097
 msgid	"Enter default mail address (and fullname). <CR> sets."
 msgstr	"Standard Mail-Adresse (und Name) eingeben. <CR> setzt."
 
-#: src/lang.c:2086
+#: src/lang.c:2098
 msgid	"Mail address (and fullname)"
 msgstr	"Mailadresse (und Name)"
 
-#: src/lang.c:2087
+#: src/lang.c:2099
 msgid	"# User's mail address (and fullname), if not username@host (fullname)\n"
 msgstr	"# EMail-Adresse und vollständiger Name des Benutzers, wenn sie nicht\n"
 	"# benutzername@host (Vollständiger Name) lautet\n"
 
-#: src/lang.c:2092
+#: src/lang.c:2104
 msgid	"Show empty Followup-To in editor"
 msgstr	"Leeres Fup'2 im Editor anzeigen"
 
-#: src/lang.c:2093
+#: src/lang.c:2105
 msgid	"# If ON show empty Followup-To header when editing an article\n"
 msgstr	"# Wenn ON, zeige leeren Followup-To:-Header im Editor\n"
 
-#: src/lang.c:2097
+#: src/lang.c:2109
 msgid	"Enter path/! command/--none to create your default signature. <CR> sets."
 msgstr	"Setze Pfad/! Kommando/--none um ihre Signatur festzulegen. <CR> setzt."
 
-#: src/lang.c:2098
+#: src/lang.c:2110
 msgid	"Create signature from path/command"
 msgstr	"Erzeuge Signatur aus Pfad/Kommando"
 
-#: src/lang.c:2099
+#: src/lang.c:2111
 msgid	"# Signature path (random sigs)/file to be used when posting/replying\n"
 	"# default_sigfile=file       appends file as signature\n"
 	"# default_sigfile=!command   executes external command to generate a "
@@ -5685,49 +5695,49 @@ msgstr	"# Pfad der Sig (Zufällige Sigs)/
 	"# default_sigfile=!Kommando führt Kommando aus um Sig zu erzeugen\n"
 	"# default_sigfile=--none    hängt keine Signatur an\n"
 
-#: src/lang.c:2106
+#: src/lang.c:2118
 msgid	"Prepend signature with \"-- \" on own line. <SPACE> toggles & <CR> sets."
 msgstr	"Trenne Sig mit \"-- \" in eigener Zeile ab. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2107
+#: src/lang.c:2119
 msgid	"Prepend signature with \"-- \""
 msgstr	"Trenne Sig mit \"-- \" ab"
 
-#: src/lang.c:2108
+#: src/lang.c:2120
 msgid	"# If ON prepend the signature with dashes '\\n-- \\n'\n"
 msgstr	"# Falls ON trenne Signatur mit '\\n-- \\n' ab\n"
 
-#: src/lang.c:2112
+#: src/lang.c:2124
 msgid	"Add signature when reposting articles. <SPACE> toggles & <CR> sets."
 msgstr	"Sig. beim Reposten eines Artikels hinzufügen? <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2113
+#: src/lang.c:2125
 msgid	"Add signature when reposting"
 msgstr	"Signatur beim Reposten anhängen"
 
-#: src/lang.c:2114
+#: src/lang.c:2126
 msgid	"# If ON add signature to reposted articles\n"
 msgstr	"# Falls ON wird die Signatur auch an repostete Artikel angehängt.\n"
 
-#: src/lang.c:2118
+#: src/lang.c:2130
 msgid	"Enter quotation marks, %s or %S for author's initials."
 msgstr	"Zitatzeichen eingeben, %s oder %S für die Initialen des Verfassers."
 
-#: src/lang.c:2119
+#: src/lang.c:2131
 msgid	"Characters used as quote-marks"
 msgstr	"Zitatzeichen"
 
-#: src/lang.c:2120
+#: src/lang.c:2132
 msgid	"# Characters used in quoting to followups and replies.\n"
 	"# '_' is replaced by ' ', %%s, %%S are replaced by author's initials.\n"
 msgstr	"# Zeichen für Zitate in Antworten.\n"
 	"# '_' wird durch ' ' ersetzt. %%s, %%S wird ersetzt durch Autoreninitialen.\n"
 
-#: src/lang.c:2126
+#: src/lang.c:2138
 msgid	"Quoting behavior"
 msgstr	"Zitierverhalten"
 
-#: src/lang.c:2127
+#: src/lang.c:2139
 msgid	"# How quoting should be handled when following up or replying.\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = Nothing special\n"
@@ -5750,15 +5760,15 @@ msgstr	"# Spezielle Optionen beim Zitier
 	"#   7 = Zitatzeichen zusammenziehen & Signaturen zitieren & Leerzeilen "
 	"zitieren\n"
 
-#: src/lang.c:2140 src/lang.c:2148 src/lang.c:2154
+#: src/lang.c:2152 src/lang.c:2160 src/lang.c:2166
 msgid	"%A Addr %D Date %F Addr+Name %G Groupname %M Message-ID %N Name %C First Name"
 msgstr	"%A Adr %D Datum %F Adr+Name %G Gruppenname %M Message-ID %N Name %C Vorname"
 
-#: src/lang.c:2141
+#: src/lang.c:2153
 msgid	"Quote line when following up"
 msgstr	"Einleitungszeile beim Antworten"
 
-#: src/lang.c:2142
+#: src/lang.c:2154
 msgid	"# Format of quote line when mailing/posting/following-up an article\n"
 	"# %%A Address    %%D Date   %%F Addr+Name   %%G Groupname   %%M Message-ID\n"
 	"# %%N Full Name  %%C First Name   %%I Initials\n"
@@ -5766,35 +5776,35 @@ msgstr	"# Format der Einleitungszeile be
 	"# %%A Adresse  %%D Datum  %%F Adr+Name  %%G Gruppenname  %%M Message-ID\n"
 	"# %%N Voller Name  %%C Vorname  %%I Initialen\n"
 
-#: src/lang.c:2149
+#: src/lang.c:2161
 msgid	"Quote line when cross-posting"
 msgstr	"Einleitungszeile beim Crossposten"
 
-#: src/lang.c:2155
+#: src/lang.c:2167
 msgid	"Quote line when mailing"
 msgstr	"Einleitungszeile bei Mailantwort"
 
-#: src/lang.c:2160
+#: src/lang.c:2172
 msgid	"If ON, include User-Agent: header. <SPACE> toggles & <CR> sets."
 msgstr	"Falls ON, füge User-Agent:-Header ein. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2161
+#: src/lang.c:2173
 msgid	"Insert 'User-Agent:'-header"
 msgstr	"Füge 'User-Agent:'-header ein"
 
-#: src/lang.c:2162
+#: src/lang.c:2174
 msgid	"# If ON include advertising User-Agent: header\n"
 msgstr	"# Falls ON füge 'User-Agent: header' ein\n"
 
-#: src/lang.c:2167
+#: src/lang.c:2179
 msgid	"Enter charset name for MIME (e.g. US-ASCII, ISO-8859-1, EUC-KR), <CR> to set."
 msgstr	"Zeichensatz für MIME (z.B. US-ASCII, ISO-8859-1, EUC-KR), <CR> setzt."
 
-#: src/lang.c:2168
+#: src/lang.c:2180
 msgid	"MM_CHARSET"
 msgstr	"MM_CHARSET"
 
-#: src/lang.c:2169
+#: src/lang.c:2181
 msgid	"# Charset supported locally which is also used for MIME header and\n"
 	"# Content-Type header.\n"
 	"# If not set, the value of the environment variable MM_CHARSET is used.\n"
@@ -5811,27 +5821,27 @@ msgstr	"# Der lokale Zeichensatz, der au
 	"# definiert, werden andere Zeichensätze als mm_charset nicht dargestellt\n"
 	"# und die jeweiligen Zeichen durch ein '?' ersetzt.\n"
 
-#: src/lang.c:2179
+#: src/lang.c:2191
 msgid	"MM_NETWORK_CHARSET"
 msgstr	"MM_NETWORK_CHARSET"
 
-#: src/lang.c:2180
+#: src/lang.c:2192
 msgid	"# Charset used for MIME (Content-Type) header in postings.\n"
 msgstr	"# Zeichensatz für den MIME (Content-Type) Header der Artikel.\n"
 
-#: src/lang.c:2186
+#: src/lang.c:2198
 msgid	"Mailbox format"
 msgstr	"Mailbox-Format"
 
-#: src/lang.c:2187
+#: src/lang.c:2199
 msgid	"# Format of the mailbox.\n"
 msgstr	"# Format der Mailbox.\n"
 
-#: src/lang.c:2192
+#: src/lang.c:2204
 msgid	"MIME encoding in news messages"
 msgstr	"MIME-Kodierung in Newsartikeln"
 
-#: src/lang.c:2193
+#: src/lang.c:2205
 msgid	"# MIME encoding (8bit, base64, quoted-printable, 7bit) of the body\n"
 	"# for mails and posts, if necessary. QP is efficient for most European\n"
 	"# character sets (ISO-8859-X) with small fraction of non-US-ASCII chars,\n"
@@ -5845,15 +5855,15 @@ msgstr	"# MIME-Kodierung (8bit, base64, 
 	"# die meisten 8Bit Zeichensätze aus Ostasien, Griechenland und Russland\n"
 	"# ist, da dort gehäuft 8Bit Zeichen vorkommen.\n"
 
-#: src/lang.c:2201 src/lang.c:2222
+#: src/lang.c:2213 src/lang.c:2234
 msgid	"Don't change unless you know what you are doing. <ESC> cancels."
-msgstr	"Nur ändern, wenn Sie genau wissen, was Sie machen. <ESC> bricht ab"
+msgstr	"Nur ändern, wenn Sie genau wissen, was Sie machen. <ESC> bricht ab."
 
-#: src/lang.c:2202
+#: src/lang.c:2214
 msgid	"Use 8bit characters in news headers"
 msgstr	"Benutze 8bit-Zeichen im Newsheader"
 
-#: src/lang.c:2203
+#: src/lang.c:2215
 msgid	"# If ON, 8bit characters in news headers are NOT encoded.\n"
 	"# default is OFF. Thus 8bit characters are encoded by default.\n"
 	"# 8bit chars in header are encoded regardless of the value of this\n"
@@ -5865,27 +5875,27 @@ msgstr	"# Wenn ON werden 8-Bit-Zeichen (
 	"# kodiert, wenn post_mime_encoding nicht auch auf 8bit eingestellt\n"
 	"# ist.\n"
 
-#: src/lang.c:2210
+#: src/lang.c:2222
 msgid	"Auto-view post-processed files <SPACE> toggles, <CR> sets, <ESC> cancels."
-msgstr	"Nachbearbeitete Artikel autom. anz. <SPACE> wechselt, <CR> setzt, <ESC> Ende"
+msgstr	"Nachbearbeitete Artikel autom. anz. <SPACE> wechselt, <CR> setzt, <ESC> Ende."
 
-#: src/lang.c:2211
+#: src/lang.c:2223
 msgid	"View post-processed files"
 msgstr	"Nachbearbeitete Artikel anzeigen"
 
-#: src/lang.c:2212
+#: src/lang.c:2224
 msgid	"# If set, post processed files will be opened in a viewer\n"
 msgstr	"# Wenn ON werden nachbearbeitete Artikel automatisch angezeigt.\n"
 
-#: src/lang.c:2217
+#: src/lang.c:2229
 msgid	"MIME encoding in mail messages"
 msgstr	"MIME-Kodierung für E-Mails"
 
-#: src/lang.c:2223
+#: src/lang.c:2235
 msgid	"Use 8bit characters in mail headers"
 msgstr	"Benutze 8bit Zeichen im Mail Header"
 
-#: src/lang.c:2224
+#: src/lang.c:2236
 msgid	"# If ON, 8bit characters in mail headers are NOT encoded.\n"
 	"# default is OFF. Thus 8bit characters are encoded by default.\n"
 	"# 8bit chars in headers are encoded regardless of the value of this "
@@ -5902,24 +5912,24 @@ msgstr	"# Wenn ON werden 8-Bit-Zeichen (
 	"# E-Mailheadern verbieten, daher sollte diese Einstellung NICHT auf ON\n"
 	"# geändert werden, wenn es keine zwingende Gründe dafür gibt.\n"
 
-#: src/lang.c:2234
+#: src/lang.c:2246
 msgid	"Strip blanks from ends of lines"
 msgstr	"Leerzeichen am Zeilenende entfernen"
 
-#: src/lang.c:2235
+#: src/lang.c:2247
 msgid	"# If ON strip blanks from ends of lines for faster display on slow "
 	"terminals.\n"
 msgstr	"# Falls ON lösche Leerzeichen am Zeilenende; verbessert die Geschwindigkeit\n"
 
-#: src/lang.c:2240
+#: src/lang.c:2252
 msgid	"If ON, use transliteration. <SPACE> toggles & <CR> sets."
 msgstr	"Wenn ON verwende Umschreibungen. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2241
+#: src/lang.c:2253
 msgid	"Transliteration"
 msgstr	"Verwende Umschreibungen"
 
-#: src/lang.c:2242
+#: src/lang.c:2254
 msgid	"# If ON, use //TRANSLIT extension. This means that when a character cannot\n"
 	"# be represented in the in the target character set, it can be approximated\n"
 	"# through one or several similarly looking characters.\n"
@@ -5929,143 +5939,143 @@ msgstr	"# Wenn ON verwende //TRANSLIT Er
 	"# Terminal als EUR umschrieben, ohne //TRANSLIT würde tin ein\n"
 	"# Fragezeichen verwenden.\n"
 
-#: src/lang.c:2249
+#: src/lang.c:2261
 msgid	"Send you a carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr	"Sendet ihnen automatisch eine Kopie. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2250
+#: src/lang.c:2262
 msgid	"Send you a cc automatically"
 msgstr	"Sendet Ihnen ein Cc automatisch"
 
-#: src/lang.c:2251
+#: src/lang.c:2263
 msgid	"# If ON automatically put your name in the Cc: field when mailing an article\n"
 msgstr	"# Falls ON wird Ihr Name in das Cc: Feld beim Mailen des Artikels eingesetzt\n"
 
-#: src/lang.c:2255
+#: src/lang.c:2267
 msgid	"Send you a blind carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr	"Sendet ihnen automatisch eine blinde Kopie. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2256
+#: src/lang.c:2268
 msgid	"Send you a blind cc automatically"
 msgstr	"Sendet Ihnen eine blinde cc autom."
 
-#: src/lang.c:2257
+#: src/lang.c:2269
 msgid	"# If ON automatically put your name in the Bcc: field when mailing an "
 	"article\n"
 msgstr	"# Falls ON wird Ihr Name in das Bcc: Feld beim Mailen des Artikels "
 	"eingesetzt\n"
 
-#: src/lang.c:2261
+#: src/lang.c:2273
 msgid	"Enter address elements about which you want to be warned. <CR> sets."
 msgstr	"Geben Sie den Adressenteil an, vor dem Sie gewarnt werden. <CR> setzt."
 
-#: src/lang.c:2262
+#: src/lang.c:2274
 msgid	"Spamtrap warning address parts"
 msgstr	"Spamfallenwarnung in Adresse"
 
-#: src/lang.c:2263
+#: src/lang.c:2275
 msgid	"# A comma-delimited list of address-parts you want to be warned\n"
 	"# about when trying to reply by email.\n"
 msgstr	"# Eine Komma-separierte Liste von Adressteilen, vor denen gewarnt wird, wenn\n"
 	"# Sie via Mail antworten wollen.\n"
 
-#: src/lang.c:2268
+#: src/lang.c:2280
 msgid	"Enter default number of days a filter entry will be valid. <CR> sets."
 msgstr	"Gültigkeit eines Filtereintrags in Tagen. <CR> setzt."
 
-#: src/lang.c:2269
+#: src/lang.c:2281
 msgid	"No. of days a filter entry is valid"
 msgstr	"Tage, die ein Filter gültig ist"
 
-#: src/lang.c:2270
+#: src/lang.c:2282
 msgid	"# Number of days a short term filter will be active\n"
-msgstr	"# Anzahl der Tage die ein temporaerer Filter aktiv ist\n"
+msgstr	"# Anzahl der Tage die ein temporärer Filter aktiv ist\n"
 
-#: src/lang.c:2274
+#: src/lang.c:2286
 msgid	"Add posted articles to filter. <SPACE> toggles & <CR> sets."
 msgstr	"Gepostete Artikel zum Filter hinzufügen. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2275
+#: src/lang.c:2287
 msgid	"Add posted articles to filter"
 msgstr	"Füge gepostete Artikel zum Filter"
 
-#: src/lang.c:2276
+#: src/lang.c:2288
 msgid	"# If ON add posted articles which start a new thread to filter for\n"
 	"# highlighting follow-ups\n"
-msgstr	"# Falls ON füge gepostete Article die einen neunen Thread einleiten\n"
+msgstr	"# Falls ON füge gepostete Artikel die einen neuen Thread einleiten\n"
 	"# zum Filter hinzu um evtl. Antworten hervorzuheben\n"
 
-#: src/lang.c:2280
+#: src/lang.c:2292
 msgid	"The directory where articles/threads are to be saved in mailbox format."
-msgstr	"Verzeichnis, in dem Artikel/Threads im mailbox-Format gespeichert werden"
+msgstr	"Verzeichnis, in dem Artikel/Threads im mailbox-Format gespeichert werden."
 
-#: src/lang.c:2281
+#: src/lang.c:2293
 msgid	"Mail directory"
 msgstr	"Mail Verzeichnis"
 
-#: src/lang.c:2282
+#: src/lang.c:2294
 msgid	"# (-m) directory where articles/threads are saved in mailbox format\n"
 msgstr	"# (-m) Verzeichnis für im mailbox-Format gespeicherte Artikel/Threads\n"
 
-#: src/lang.c:2287
+#: src/lang.c:2299
 msgid	"Save articles in batch mode (-S)"
 msgstr	"Speicher Artikel im Batchmode (-S)"
 
-#: src/lang.c:2288
+#: src/lang.c:2300
 msgid	"# If ON articles/threads will be saved in batch mode when save -S\n"
 	"# or mail (-M/-N) is specified on the command line\n"
 msgstr	"# Falls ON werden Artikel/Threads im Batchmode gespeichert wenn save -S,\n"
 	"# oder gemailt, wenn -M bzw. -N in der Kommandozeile angegeben wurde\n"
 
-#: src/lang.c:2293
+#: src/lang.c:2305
 msgid	"The directory where you want articles/threads saved."
 msgstr	"Das Verzeichnis, in dem Artikel/Threads gespeichert werden sollen."
 
-#: src/lang.c:2294
+#: src/lang.c:2306
 msgid	"Directory to save arts/threads in"
 msgstr	"Verz. um Art/Threads zu speichern"
 
-#: src/lang.c:2295
+#: src/lang.c:2307
 msgid	"# Directory where articles/threads are saved\n"
 msgstr	"# Verzeichnis in dem Artikel/Threads gespeichert werden\n"
 
-#: src/lang.c:2299
+#: src/lang.c:2311
 msgid	"Auto save article/thread by Archive-name: header. <SPACE> toggles & <CR> sets."
 msgstr	"Autom. sp. von Art/Thread anhand Archive-name:-Header. <SPACE> wechselt & "
 	"<CR> setzt."
 
-#: src/lang.c:2300
+#: src/lang.c:2312
 msgid	"Use Archive-name: header for save"
 msgstr	"Nutze Archive-name: zum Speichern"
 
-#: src/lang.c:2301
+#: src/lang.c:2313
 msgid	"# If ON articles/threads with Archive-name: in mail header will\n"
 	"# be automatically saved with the Archive-name & part/patch no.\n"
 msgstr	"# Falls ON werden Artikel mit gesetztem Archive-name:-Header unter\n"
 	"# diesem abgespeichert\n"
 
-#: src/lang.c:2306
+#: src/lang.c:2318
 msgid	"Mark saved articles/threads as read. <SPACE> toggles, <CR> sets, <ESC> "
 	"cancels."
 msgstr	"Gesp. Art. gelesen markieren. <SPACE> wechselt, <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:2307
+#: src/lang.c:2319
 msgid	"Mark saved articles/threads as read"
 msgstr	"Mark. gesp. Artikel/Threads gelesen"
 
-#: src/lang.c:2308
+#: src/lang.c:2320
 msgid	"# If ON mark articles that are saved as read\n"
 msgstr	"# Falls ON werden gespeicherte Artikel als gelesen markiert\n"
 
-#: src/lang.c:2312
+#: src/lang.c:2324
 msgid	"Do post processing (eg. extract attachments) for saved articles."
-msgstr	"Bearbeite (z.B. unshar) gesp. Art/Threads. <SPACE> wechselt & <CR> setzt."
+msgstr	"Bearbeite (z.B. unshar) gesp. Art/Threads. <SPACE> wechselt, <CR> setzt."
 
-#: src/lang.c:2313
+#: src/lang.c:2325
 msgid	"Post process saved articles"
 msgstr	"Nachbearbeiten gespeichert. Artikel"
 
-#: src/lang.c:2314
+#: src/lang.c:2326
 msgid	"# Perform post processing (saving binary attachments) from saved articles.\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no\n"
@@ -6077,100 +6087,100 @@ msgstr	"# Nachbearbeiten gespeicherter A
 	"#   1 = ja\n"
 	"#   2 = nur Shell Archive (shar) auspacken\n"
 
-#: src/lang.c:2323
+#: src/lang.c:2335
 msgid	"Process only unread articles"
 msgstr	"Bearbeite nur ungelesene Artikel"
 
-#: src/lang.c:2324
+#: src/lang.c:2336
 msgid	"# If ON only save/print/pipe/mail unread articles (tagged articles excepted)\n"
 msgstr	"# Falls ON speichere/drucke/pipe/maile nur ungelesene Artikel\n"
 	"# (markierte Artikel ausgenommen)\n"
 
-#: src/lang.c:2329
+#: src/lang.c:2341
 msgid	"Print all or just part of header. <SPACE> toggles & <CR> sets."
 msgstr	"Drucke alles oder nur Teile des Headers <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2330
+#: src/lang.c:2342
 msgid	"Print all headers when printing"
 msgstr	"Alle Header beim Drucken ausgeben"
 
-#: src/lang.c:2331
+#: src/lang.c:2343
 msgid	"# If ON print all of article header otherwise just the important lines\n"
 msgstr	"# Falls ON drucke alle Header des Artikels aus. Ansonsten nur die "
 	"wichtigsten\n"
 
-#: src/lang.c:2335
+#: src/lang.c:2347
 msgid	"The printer program with options that is to be used to print articles/threads."
 msgstr	"Das Druckprogramm, das zum drucken von Artikeln/Threads benutzt wird."
 
-#: src/lang.c:2336
+#: src/lang.c:2348
 msgid	"Printer program with options"
 msgstr	"Druckprogramm mit Optionen"
 
-#: src/lang.c:2337
+#: src/lang.c:2349
 msgid	"# Print program with parameters used to print articles/threads\n"
 msgstr	"# Druckprogramm mit Optionen zum drucken der Artikel/Threads\n"
 
-#: src/lang.c:2343
+#: src/lang.c:2355
 msgid	"Force redraw after certain commands"
 msgstr	"Anzeigeauffrischung nach Kommandos"
 
-#: src/lang.c:2344
+#: src/lang.c:2356
 msgid	"# If ON a screen redraw will always be done after certain external commands\n"
 msgstr	"# Falls ON wird die Anzeige nach einigen externen Kommandos aufgefrischt\n"
 
-#: src/lang.c:2348
+#: src/lang.c:2360
 msgid	"Start editor with line offset. <SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	"Starte Editor mit Einrückung. <SPACE> wechselt, <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:2349
+#: src/lang.c:2361
 msgid	"Start editor with line offset"
 msgstr	"Starte Editor mit Einrückung"
 
-#: src/lang.c:2350
+#: src/lang.c:2362
 msgid	"# If ON editor will be started with cursor offset into the file\n"
 	"# otherwise the cursor will be positioned at the first line\n"
 msgstr	"# Falls ON wird der Cursor im Editor an die definierte Position gesetzt.\n"
 	"# Anderenfalls wird der Cursor in die erste Zeile gesetzt\n"
 
-#: src/lang.c:2355
+#: src/lang.c:2367
 msgid	"Enter %E for editor, %F for filename, %N for line-number, <CR> to set."
 msgstr	"%E für Editor, %F für Dateiname, %N für Zeilennummer, <CR> setzt."
 
-#: src/lang.c:2356
+#: src/lang.c:2368
 msgid	"Invocation of your editor"
 msgstr	"Aufruf ihres Editors"
 
-#: src/lang.c:2357
+#: src/lang.c:2369
 msgid	"# Format of editor line including parameters\n"
 	"# %%E Editor  %%F Filename  %%N Linenumber\n"
 msgstr	"# Format der Editorzeile mit den Parametern für den Aufruf\n"
 	"# %%E Editor  %%F Dateiname  %%N Zeilennummer\n"
 
-#: src/lang.c:2362
+#: src/lang.c:2374
 msgid	"Enter name and options for external-inews, --internal for internal inews"
 msgstr	"Name und Optionen für ext. inews, --internal für eingebaute Version"
 
-#: src/lang.c:2363
+#: src/lang.c:2375
 msgid	"External inews"
 msgstr	"Externes inews-Programm"
 
-#: src/lang.c:2364
+#: src/lang.c:2376
 msgid	"# If --internal use the built in mini inews for posting via NNTP\n"
 	"# otherwise use an external inews program\n"
 msgstr	"# Falls --internal wird das eingebaute mini inews zum posten via NNTP\n"
-	"# benutzt, sonst wird das hier angegebene Programm mit den angebenen\n"
+	"# benutzt, sonst wird das hier angegebene Programm mit den angegebenen\n"
 	"# Optionen verwendet. z.B. 'inews -h'\n"
 
-#: src/lang.c:2368
+#: src/lang.c:2380
 msgid	"Enter %M for mailer, %S for subject, %T for to, %F for filename, <CR> to set."
 msgstr	"%M für den Mailer, %S für Subject, %T für to, %F für Dateinamen, <CR> setzt."
 
-#: src/lang.c:2369
+#: src/lang.c:2381
 msgid	"Invocation of your mail command"
 msgstr	"Aufruf ihres Mailkommandos"
 
-#: src/lang.c:2370
+#: src/lang.c:2382
 msgid	"# Format of mailer line including parameters\n"
 	"# %%M Mailer  %%S Subject  %%T To  %%F Filename\n"
 	"# ie. to use elm as your mailer:    elm -s \"%%S\" \"%%T\" < %%F\n"
@@ -6180,11 +6190,11 @@ msgstr	"# Format der Mailkommandozeile m
 	"# Ein Beispiel für elm           :  elm -s \"%%S\" \"%%T\" < %%F\n"
 	"# Ein Beispiel für elm interaktiv:  elm -i %%F -s \"%%S\" \"%%T\"\n"
 
-#: src/lang.c:2378
+#: src/lang.c:2390
 msgid	"Use interactive mail reader"
 msgstr	"Benutze interaktives Mailprogramm"
 
-#: src/lang.c:2379
+#: src/lang.c:2391
 msgid	"# Interactive mailreader\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no interactive mailreader\n"
@@ -6197,57 +6207,57 @@ msgstr	"# Interaktives Mailprogramm.\n"
 	"übergeben\n"
 	"#   2 = interaktives Mailprogramm, Mailheader werden als Argumente übergeben\n"
 
-#: src/lang.c:2388
+#: src/lang.c:2400
 msgid	"Remove ~/.article after posting"
 msgstr	"Entferne ~/.article nach dem posten"
 
-#: src/lang.c:2389
+#: src/lang.c:2401
 msgid	"# If ON remove ~/.article after posting.\n"
 msgstr	"# Falls ON entferne ~/.article nach dem posten.\n"
 
-#: src/lang.c:2393
+#: src/lang.c:2405
 msgid	"Filename for all posted articles, <CR> sets, no filename=do not save."
 msgstr	"Dateiname für Kopie geposteter Artikel. <CR> setzt, kein Name=keine Kopie."
 
-#: src/lang.c:2394
+#: src/lang.c:2406
 msgid	"Filename for posted articles"
 msgstr	"Gepostete Artikel speichern in"
 
-#: src/lang.c:2395
+#: src/lang.c:2407
 msgid	"# Filename where to keep all postings (default posted)\n"
 	"# If no filename is set then postings will not be saved\n"
 msgstr	"# Dateiname für die Kopie aller Postings (Voreinstellung posted)\n"
 	"# Ist kein Name angegeben wird keine Kopie gespeichert\n"
 
-#: src/lang.c:2400
+#: src/lang.c:2412
 msgid	"Keep all failed articles in ~/dead.articles. <SPACE> toggles & <CR> sets."
 msgstr	"Behalte alle Fehlschläge in ~/dead.articles. <SPACE> wechselt & <CR> setzt."
 
-#: src/lang.c:2401
+#: src/lang.c:2413
 msgid	"Keep failed arts in ~/dead.articles"
 msgstr	"Halte Fehlschl. in ~/dead.articles"
 
-#: src/lang.c:2402
+#: src/lang.c:2414
 msgid	"# If ON keep all failed postings in ~/dead.articles\n"
 msgstr	"# Falls ON werden Fehlgeschlagene Artikel in ~/dead.articles verwahrt\n"
 
-#: src/lang.c:2406
+#: src/lang.c:2418
 msgid	"Do you want to strip unsubscribed groups from .newsrc"
 msgstr	"Wollen Sie nicht-abonnierte Gruppen aus der .newsrc entfernen?"
 
-#: src/lang.c:2407
+#: src/lang.c:2419
 msgid	"No unsubscribed groups in newsrc"
 msgstr	"Nur abonnierte Gruppen in newsrc"
 
-#: src/lang.c:2408
+#: src/lang.c:2420
 msgid	"# If ON strip unsubscribed groups from newsrc\n"
 msgstr	"# Falls ON entferne nicht-abonnierte Gruppen aus der newsrc\n"
 
-#: src/lang.c:2413
+#: src/lang.c:2425
 msgid	"Remove bogus groups from newsrc"
-msgstr	"Lösche nicht vorhande G. aus newsrc"
+msgstr	"Lösche nicht vorhan. G. aus newsrc"
 
-#: src/lang.c:2414
+#: src/lang.c:2426
 msgid	"# What to do with bogus groups in newsrc file\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = keep\n"
@@ -6259,57 +6269,57 @@ msgstr	"# Was soll mit nicht mehr vorhan
 	"#   1 = entfernen\n"
 	"#   2 = Mit D in der Auswahl markieren.\n"
 
-#: src/lang.c:2422
+#: src/lang.c:2434
 msgid	"Enter number of seconds until active file will be reread. <CR> sets."
 msgstr	"Sekunden, nach denen die active-Datei wieder gelesen wird. <CR> setzt."
 
-#: src/lang.c:2423
+#: src/lang.c:2435
 msgid	"Interval in secs to reread active"
 msgstr	"Active alle ... Sekunden neu lesen"
 
-#: src/lang.c:2424
+#: src/lang.c:2436
 msgid	"# Time interval in seconds between rereading the active file (0=never)\n"
 msgstr	"# Zeitintervall in Sekunden zwischen dem Wiedereinlesen des active (0=nie)\n"
 
-#: src/lang.c:2429
+#: src/lang.c:2441
 msgid	"Reconnect to server automatically"
 msgstr	"Autom. Wiederverbindung zum Server"
 
-#: src/lang.c:2430
+#: src/lang.c:2442
 msgid	"# If ON automatically reconnect to NNTP server if the connection is broken\n"
 msgstr	"# Falls ON wird eine unterbrochene Verbindung zum NNTP Server\n"
 	"# automatisch reaktiviert\n"
 
-#: src/lang.c:2434
+#: src/lang.c:2446
 msgid	"Create local copies of NNTP overview files. <SPACE> toggles & <CR> sets."
 msgstr	"Erzeuge lokale Kopien der NNTP Overview Dateien. <SPACE> wechselt & <CR> "
 	"setzt."
 
-#: src/lang.c:2435
+#: src/lang.c:2447
 msgid	"Cache NNTP overview files locally"
 msgstr	"Speichere NNTP Overview Daten lokal"
 
-#: src/lang.c:2436
+#: src/lang.c:2448
 msgid	"# If ON, create local copies of NNTP overview files.\n"
 msgstr	"# Falls ON, erzeuge lokale Kopien der NNTP Overview Dateien.\n"
 
-#: src/lang.c:2440
+#: src/lang.c:2452
 msgid	"Enter format string. <CR> sets, <ESC> cancels."
 msgstr	"Format-Zeichenkette eingeben. <CR> setzt, <ESC> bricht ab."
 
-#: src/lang.c:2441
+#: src/lang.c:2453
 msgid	"Format string for display of dates"
 msgstr	"Datums Format-Zeichenkette"
 
-#: src/lang.c:2442
+#: src/lang.c:2454
 msgid	"# Format string for date representation\n"
 msgstr	"# Zeichenkette die die Datumsanzeige beschreibt.\n"
 
-#: src/lang.c:2448
+#: src/lang.c:2460
 msgid	"Unicode normalization form"
 msgstr	"Unicode Normalisierungsart"
 
-#: src/lang.c:2449
+#: src/lang.c:2461
 msgid	"# Unicode normalization form\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = None\n"
@@ -6325,22 +6335,20 @@ msgstr	"# Unicode Normalisierungsart\n"
 	"#   3 = NFC\n"
 	"#   4 = NFD\n"
 
-# TRANSLATION MISSING
-#: src/lang.c:2461
+#: src/lang.c:2473
 msgid	"Render BiDi"
-msgstr	""
+msgstr	"BiDi wiedergeben"
 
-# TRANSLATION MISSING
-#: src/lang.c:2462
+#: src/lang.c:2474
 msgid	"# If ON, bi-directional text is rendered by tin\n"
-msgstr	""
+msgstr	"# Falls ON, wird bi-direktionaler Text von tin wiedergeben.\n"
 
-#: src/misc.c:3713
+#: src/misc.c:3721
 #, c-format
 msgid	"Version: %s %s release %s (\"%s\") %s %s\n"
 msgstr	"Version: %s %s Ausgabe %s (\"%s\") %s %s\n"
 
-#: src/misc.c:3716
+#: src/misc.c:3724
 #, c-format
 msgid	"Version: %s %s release %s (\"%s\")\n"
 msgstr	"Version: %s %s Ausgabe %s (\"%s\")\n"
@@ -6349,23 +6357,23 @@ msgstr	"Version: %s %s Ausgabe %s (\"%s\
 msgid	"Unreachable?\n"
 msgstr	"Unerreichbar?\n"
 
-#: src/nntplib.c:823
+#: src/nntplib.c:825
 #, c-format
 msgid	"\n"
 	"Server timed out, trying reconnect # %d\n"
 msgstr	"\n"
 	"Server reagierte nicht, Wiederholung Nummer # %d\n"
 
-#: src/nntplib.c:841
+#: src/nntplib.c:843
 msgid	"Rejoin current group\n"
 msgstr	"Betrete aktuelle Gruppe neu\n"
 
-#: src/nntplib.c:848
+#: src/nntplib.c:850
 #, c-format
 msgid	"Read (%s)\n"
 msgstr	"Lese (%s)\n"
 
-#: src/nntplib.c:850
+#: src/nntplib.c:852
 #, c-format
 msgid	"Resend last command (%s)\n"
 msgstr	"Sende letztes Kommando (%s) neu\n"
@@ -6375,7 +6383,7 @@ msgstr	"Sende letztes Kommando (%s) neu\
 msgid	"couldn't expand %s\n"
 msgstr	"Kann %s nicht expandieren\n"
 
-#: src/post.c:1970
+#: src/post.c:1969
 #, c-format
 msgid	"Posting: %.*s ..."
 msgstr	"Poste: %.*s ..."
@@ -6417,19 +6425,19 @@ msgstr	"Dieser Artikel wurde im 'multipa
 	"Format zu verstehen und einiges von was folgt, kann merkwürdig aussehen.\n"
 	"\n"
 
-#: src/save.c:974
+#: src/save.c:977
 msgid	"bytes"
 msgstr	"Bytes"
 
-#: src/select.c:375
+#: src/select.c:381
 msgid	"unread"
 msgstr	"ungelesen"
 
-#: src/select.c:375
+#: src/select.c:381
 msgid	"all"
 msgstr	"Alle"
 
-#: src/select.c:547 src/select.c:549
+#: src/select.c:551 src/select.c:553
 msgid	" R"
 msgstr	" R"
 
@@ -6442,7 +6450,7 @@ msgstr	"Kann slrnface nicht starten: Umg
 #: src/xface.c:99 src/xface.c:131
 #, c-format
 msgid	"Can't run slrnface: failed to create %s"
-msgstr	"Kann slrnface nicht starten: Anlegen von %s fehlgeschagen"
+msgstr	"Kann slrnface nicht starten: Anlegen von %s fehlgeschlagen"
 
 #: src/xface.c:109
 msgid	"This directory is used to create named pipes for communication between\n"
Binary files tin-1.7.7/po/en_GB.gmo and tin-1.7.8/po/en_GB.gmo differ
diff -Nurp tin-1.7.7/po/en_GB.po tin-1.7.8/po/en_GB.po
--- tin-1.7.7/po/en_GB.po	Wed Dec 15 16:48:25 2004
+++ tin-1.7.8/po/en_GB.po	Mon Mar 21 11:43:05 2005
@@ -3,7 +3,7 @@
 #
 msgid	""
 msgstr	"Project-Id-Version: tin 1.7.7\n"
-	"POT-Creation-Date: 2004-12-15 16:47+0100\n"
+	"POT-Creation-Date: 2005-03-21 11:42+0100\n"
 	"PO-Revision-Date: 2002-11-15 20:10+0000\n"
 	"Last-Translator: Robert Brady <rwb197@zepler.org>\n"
 	"Language-Team: \n"
@@ -12,220 +12,220 @@ msgstr	"Project-Id-Version: tin 1.7.7\n"
 	"Content-Transfer-Encoding: 8bit\n"
 	"Report-Msgid-Bugs-To: \n"
 
-#: src/art.c:1447
+#: src/art.c:1455
 #, c-format
 msgid	"%d Bad overview record (%d fields) '%s'"
 msgstr	""
 
-#: src/attrib.c:594
+#: src/attrib.c:604
 msgid	"# Do not edit this comment block\n"
 	"#\n"
 msgstr	""
 
-#: src/attrib.c:595
+#: src/attrib.c:605
 msgid	"#  scope=STRING (ie. alt.*,!alt.bin*) [mandatory]\n"
 msgstr	""
 
-#: src/attrib.c:596
+#: src/attrib.c:606
 msgid	"#  maildir=STRING (ie. ~/Mail)\n"
 msgstr	""
 
-#: src/attrib.c:597
+#: src/attrib.c:607
 msgid	"#  savedir=STRING (ie. ~user/News)\n"
 msgstr	""
 
-#: src/attrib.c:598
+#: src/attrib.c:608
 msgid	"#  savefile=STRING (ie. =linux)\n"
 msgstr	""
 
-#: src/attrib.c:599
+#: src/attrib.c:609
 msgid	"#  sigfile=STRING (ie. $var/sig)\n"
 msgstr	""
 
-#: src/attrib.c:600
+#: src/attrib.c:610
 msgid	"#  organization=STRING (if beginning with '/' read from file)\n"
 msgstr	""
 
-#: src/attrib.c:601
+#: src/attrib.c:611
 msgid	"#  followup_to=STRING\n"
 msgstr	""
 
-#: src/attrib.c:602
+#: src/attrib.c:612
 msgid	"#  mailing_list=STRING (ie. majordomo@example.org)\n"
 msgstr	""
 
-#: src/attrib.c:603
+#: src/attrib.c:613
 msgid	"#  x_headers=STRING (ie. ~/.tin/extra-headers)\n"
 msgstr	""
 
-#: src/attrib.c:604
+#: src/attrib.c:614
 msgid	"#  x_body=STRING (ie. ~/.tin/extra-body-text)\n"
 msgstr	""
 
-#: src/attrib.c:605
+#: src/attrib.c:615
 msgid	"#  from=STRING (just append wanted From:-line, don't use quotes)\n"
 msgstr	""
 
-#: src/attrib.c:606
+#: src/attrib.c:616
 msgid	"#  news_quote_format=STRING\n"
 msgstr	""
 
-#: src/attrib.c:607
+#: src/attrib.c:617
 msgid	"#  quote_chars=STRING (%%s, %%S for initials)\n"
 msgstr	""
 
-#: src/attrib.c:608
+#: src/attrib.c:618
 msgid	"#  mime_types_to_save=STRING (eg. image/*,!image/bmp)\n"
 msgstr	""
 
-#: src/attrib.c:610
+#: src/attrib.c:620
 msgid	"#  ispell=STRING\n"
 msgstr	""
 
-#: src/attrib.c:612
+#: src/attrib.c:622
 msgid	"#  auto_select=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:613
+#: src/attrib.c:623
 msgid	"#  auto_save=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:614
+#: src/attrib.c:624
 msgid	"#  batch_save=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:615
+#: src/attrib.c:625
 msgid	"#  delete_tmp_files=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:616
+#: src/attrib.c:626
 msgid	"#  show_only_unread=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:617
+#: src/attrib.c:627
 msgid	"#  thread_arts=NUM"
 msgstr	""
 
-#: src/attrib.c:624
+#: src/attrib.c:634
 msgid	"#  show_author=NUM\n"
 msgstr	""
 
-#: src/attrib.c:630
+#: src/attrib.c:640
 msgid	"#  show_info=NUM\n"
 msgstr	""
 
-#: src/attrib.c:636
+#: src/attrib.c:646
 msgid	"#  sort_art_type=NUM\n"
 msgstr	""
 
-#: src/attrib.c:654
+#: src/attrib.c:664
 msgid	"#  sort_threads_type=NUM\n"
 msgstr	""
 
-#: src/attrib.c:659
+#: src/attrib.c:669
 msgid	"#  post_proc_type=NUM\n"
 msgstr	""
 
-#: src/attrib.c:664
+#: src/attrib.c:674
 msgid	"#  quick_kill_scope=STRING (ie. talk.*)\n"
 msgstr	""
 
-#: src/attrib.c:665
+#: src/attrib.c:675
 msgid	"#  quick_kill_expire=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:666
+#: src/attrib.c:676
 msgid	"#  quick_kill_case=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:667
+#: src/attrib.c:677
 msgid	"#  quick_kill_header=NUM\n"
 msgstr	""
 
-#: src/attrib.c:668 src/attrib.c:675
+#: src/attrib.c:678 src/attrib.c:685
 msgid	"#    0=subj (case sensitive) 1=subj (ignore case)\n"
 msgstr	""
 
-#: src/attrib.c:669 src/attrib.c:676
+#: src/attrib.c:679 src/attrib.c:686
 msgid	"#    2=from (case sensitive) 3=from (ignore case)\n"
 msgstr	""
 
-#: src/attrib.c:670 src/attrib.c:677
+#: src/attrib.c:680 src/attrib.c:687
 msgid	"#    4=msgid 5=lines\n"
 msgstr	""
 
-#: src/attrib.c:671
+#: src/attrib.c:681
 msgid	"#  quick_select_scope=STRING\n"
 msgstr	""
 
-#: src/attrib.c:672
+#: src/attrib.c:682
 msgid	"#  quick_select_expire=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:673
+#: src/attrib.c:683
 msgid	"#  quick_select_case=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:674
+#: src/attrib.c:684
 msgid	"#  quick_select_header=NUM\n"
 msgstr	""
 
-#: src/attrib.c:678
+#: src/attrib.c:688
 msgid	"#  x_comment_to=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:679
+#: src/attrib.c:689
 msgid	"#  fcc=STRING (eg. =mailbox)\n"
 msgstr	""
 
-#: src/attrib.c:680
+#: src/attrib.c:690
 msgid	"#  tex2iso_conv=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:681
+#: src/attrib.c:691
 msgid	"#  mime_forward=ON/OFF\n"
 msgstr	""
 
-#: src/attrib.c:683
+#: src/attrib.c:693
 msgid	"#  mm_network_charset=supported_charset"
 msgstr	""
 
-#: src/attrib.c:690
+#: src/attrib.c:700
 msgid	"#  undeclared_charset=STRING (default is US-ASCII)\n"
 msgstr	""
 
-#: src/attrib.c:692
+#: src/attrib.c:702
 msgid	"#\n"
 	"# Note that it is best to put general (global scoping)\n"
 msgstr	""
 
-#: src/attrib.c:693
+#: src/attrib.c:703
 msgid	"# entries first followed by group specific entries.\n"
 	"#\n"
 msgstr	""
 
-#: src/attrib.c:694
+#: src/attrib.c:704
 msgid	"############################################################################\n"
 	"\n"
 msgstr	""
 
-#: src/attrib.c:700
+#: src/attrib.c:710
 msgid	"# include extra headers\n"
 msgstr	""
 
-#: src/attrib.c:708
+#: src/attrib.c:718
 msgid	"# in *sources* set post process type to shar only\n"
 msgstr	""
 
-#: src/attrib.c:712
+#: src/attrib.c:722
 msgid	"# in *binaries* do full post processing, remove tmp files\n"
 msgstr	""
 
-#: src/attrib.c:713
+#: src/attrib.c:723
 msgid	"# and set Followup-To: poster\n"
 msgstr	""
 
-#: src/cook.c:494
+#: src/cook.c:497
 msgid	"(unknown)"
 msgstr	""
 
@@ -545,257 +545,257 @@ msgstr	""
 msgid	"Post-process %s=no, %s=yes, %s=shar, %s=quit: "
 msgstr	""
 
-#: src/lang.c:118
+#: src/lang.c:119
 msgid	"ANSI color disabled"
 msgstr	"ANSI colour disabled"
 
-#: src/lang.c:119
+#: src/lang.c:120
 msgid	"ANSI color enabled"
 msgstr	"ANSI colour enabled"
 
-#: src/lang.c:120
+#: src/lang.c:122
 #, c-format
 msgid	"Command failed: %s"
 msgstr	""
 
-#: src/lang.c:121
+#: src/lang.c:123
 msgid	"Mark not selected articles read?"
 msgstr	""
 
-#: src/lang.c:122
+#: src/lang.c:124
 #, c-format
 msgid	"Connecting to %s..."
 msgstr	""
 
-#: src/lang.c:123
+#: src/lang.c:125
 msgid	"<CR>"
 msgstr	""
 
-#: src/lang.c:124
+#: src/lang.c:126
 msgid	"Creating active file for saved groups...\n"
 msgstr	""
 
-#: src/lang.c:125
+#: src/lang.c:127
 msgid	"Creating newsrc file...\n"
 msgstr	""
 
-#: src/lang.c:127 src/lang.c:1140
+#: src/lang.c:129 src/lang.c:1150
 msgid	"Default"
 msgstr	""
 
-#: src/lang.c:128
+#: src/lang.c:130
 msgid	"Delete saved files that have been post processed?"
 msgstr	""
 
-#: src/lang.c:129
+#: src/lang.c:131
 msgid	"Deleting temporary files..."
 msgstr	""
 
-#: src/lang.c:131
+#: src/lang.c:133
 msgid	"*** End of article ***"
 msgstr	""
 
-#: src/lang.c:132
+#: src/lang.c:134
 msgid	"*** End of articles ***"
 msgstr	""
 
-#: src/lang.c:133
+#: src/lang.c:135
 msgid	"*** End of groups ***"
 msgstr	""
 
-#: src/lang.c:134
+#: src/lang.c:136
 msgid	"*** End of thread ***"
 msgstr	""
 
-#: src/lang.c:135
+#: src/lang.c:137
 msgid	"Enter limit of articles to get> "
 msgstr	""
 
-#: src/lang.c:136
+#: src/lang.c:138
 msgid	"Enter Message-ID to go to> "
 msgstr	""
 
-#: src/lang.c:137
+#: src/lang.c:139
 msgid	" and enter next unread thread"
 msgstr	""
 
-#: src/lang.c:138
+#: src/lang.c:140
 msgid	" and enter next unread group"
 msgstr	""
 
-#: src/lang.c:139
+#: src/lang.c:141
 msgid	"Enter option number> "
 msgstr	""
 
-#: src/lang.c:140
+#: src/lang.c:142
 #, c-format
 msgid	"Enter range [%s]> "
 msgstr	""
 
-#: src/lang.c:141
+#: src/lang.c:143
 msgid	"\n"
 	"Warning: Approved: header used.\n"
 msgstr	""
 
-#: src/lang.c:143
+#: src/lang.c:145
 msgid	"\n"
 	"Error: Bad address in Approved: header.\n"
 msgstr	""
 
-#: src/lang.c:144
+#: src/lang.c:146
 msgid	"\n"
 	"Error: Bad address in From: header.\n"
 msgstr	""
 
-#: src/lang.c:145
+#: src/lang.c:147
 msgid	"\n"
 	"Error: Bad address in Reply-To: header.\n"
 msgstr	""
 
-#: src/lang.c:146
+#: src/lang.c:148
 msgid	"\n"
 	"Error: Bad FQDN in Message-ID: header.\n"
 msgstr	""
 
-#: src/lang.c:147
+#: src/lang.c:149
 #, c-format
 msgid	"Can't unlock %s"
 msgstr	""
 
-#: src/lang.c:149
+#: src/lang.c:151
 #, c-format
 msgid	"Corrupted file %s"
 msgstr	""
 
-#: src/lang.c:150
+#: src/lang.c:152
 #, c-format
 msgid	"Couldn't dotlock %s - article not appended!"
 msgstr	""
 
-#: src/lang.c:151
+#: src/lang.c:153
 #, c-format
 msgid	"Couldn't lock %s - article not appended!"
 msgstr	""
 
-#: src/lang.c:153
+#: src/lang.c:155
 msgid	"Internal error in GNKSA routine - send bug report.\n"
 msgstr	""
 
-#: src/lang.c:154
+#: src/lang.c:156
 msgid	"Left angle bracket missing in route address.\n"
 msgstr	""
 
-#: src/lang.c:155
+#: src/lang.c:157
 msgid	"Left parenthesis missing in old-style address.\n"
 msgstr	""
 
-#: src/lang.c:156
+#: src/lang.c:158
 msgid	"Right parenthesis missing in old-style address.\n"
 msgstr	""
 
-#: src/lang.c:157
+#: src/lang.c:159
 msgid	"At-sign missing in mail address.\n"
 msgstr	""
 
-#: src/lang.c:158
+#: src/lang.c:160
 msgid	"Single component FQDN is not allowed. Add your domain.\n"
 msgstr	""
 
-#: src/lang.c:159
+#: src/lang.c:161
 msgid	"Invalid domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	""
 
-#: src/lang.c:160
+#: src/lang.c:162
 msgid	"Illegal domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	""
 
-#: src/lang.c:161
+#: src/lang.c:163
 msgid	"Unknown domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	""
 
-#: src/lang.c:162
+#: src/lang.c:164
 msgid	"Illegal character in FQDN.\n"
 msgstr	""
 
-#: src/lang.c:163
+#: src/lang.c:165
 msgid	"Zero length FQDN component not allowed.\n"
 msgstr	""
 
-#: src/lang.c:164
+#: src/lang.c:166
 msgid	"FQDN component exceeds maximum allowed length (63 chars).\n"
 msgstr	""
 
-#: src/lang.c:165
+#: src/lang.c:167
 msgid	"FQDN component may not start or end with hyphen.\n"
 msgstr	""
 
-#: src/lang.c:166
+#: src/lang.c:168
 msgid	"FQDN component may not start with digit.\n"
 msgstr	""
 
-#: src/lang.c:167
+#: src/lang.c:169
 msgid	"Domain literal has impossible numeric value.\n"
 msgstr	""
 
-#: src/lang.c:168
+#: src/lang.c:170
 msgid	"Domain literal is for private use only and not allowed for global use.\n"
 msgstr	""
 
-#: src/lang.c:169
+#: src/lang.c:171
 msgid	"Right bracket missing in domain literal.\n"
 msgstr	""
 
-#: src/lang.c:170
+#: src/lang.c:172
 msgid	"Missing localpart of mail address.\n"
 msgstr	""
 
-#: src/lang.c:171
+#: src/lang.c:173
 msgid	"Illegal character in localpart of mail address.\n"
 msgstr	""
 
-#: src/lang.c:172
+#: src/lang.c:174
 msgid	"Zero length localpart component not allowed.\n"
 msgstr	""
 
-#: src/lang.c:173
+#: src/lang.c:175
 msgid	"Illegal character in realname.\n"
 	"Unquoted words may not contain '!()<>@,;:\\.[]' in route addresses.\n"
 msgstr	""
 
-#: src/lang.c:174
+#: src/lang.c:176
 msgid	"Illegal character in realname.\n"
 	"Quoted words may not contain '()<>\\'.\n"
 msgstr	""
 
-#: src/lang.c:175
+#: src/lang.c:177
 msgid	"Illegal character in realname.\n"
 	"Encoded words may not contain '!()<>@,;:\"\\.[]/=' in parameter.\n"
 msgstr	""
 
-#: src/lang.c:176
+#: src/lang.c:178
 msgid	"Bad syntax in encoded word used in realname.\n"
 msgstr	""
 
-#: src/lang.c:177
+#: src/lang.c:179
 msgid	"Illegal character in realname.\n"
 	"Unquoted words may not contain '()<>\\' in old-style addresses.\n"
 msgstr	""
 
-#: src/lang.c:178
+#: src/lang.c:180
 msgid	"Illegal character in realname.\n"
 	"Control characters and unencoded 8bit characters > 127 are not allowed.\n"
 msgstr	""
 
-#: src/lang.c:179
+#: src/lang.c:181
 msgid	"\n"
 	"Error: No blank line found after header.\n"
 msgstr	""
 
 #. TODO: fixme, US-ASCII is not the only 7bit charset we know about
-#: src/lang.c:181
+#: src/lang.c:183
 msgid	"\n"
 	"Error: Posting contains non-ASCII characters but MM_CHARSET is set to\n"
 	"       US-ASCII  - please change this setting to a suitable value for\n"
@@ -803,7 +803,7 @@ msgid	"\n"
 	"       editing tinrc.\n"
 msgstr	""
 
-#: src/lang.c:186
+#: src/lang.c:188
 msgid	"\n"
 	"Error: Posting contains  non-ASCII characters  but the  MIME encoding\n"
 	"       for news  messages  is set  to \"7bit\"  -  please change this\n"
@@ -812,179 +812,179 @@ msgid	"\n"
 	"       using the M)enu of configurable options or by editing tinrc.\n"
 msgstr	""
 
-#: src/lang.c:192
+#: src/lang.c:194
 msgid	"\n"
 	"Error: Article starts with blank line instead of header\n"
 msgstr	""
 
-#: src/lang.c:193
+#: src/lang.c:195
 #, c-format
 msgid	"\n"
 	"Error: Header on line %d does not have a colon after the header name:\n"
 	"%s\n"
 msgstr	""
 
-#: src/lang.c:194
+#: src/lang.c:196
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is empty.\n"
 msgstr	""
 
-#: src/lang.c:195
+#: src/lang.c:197
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is missing from the article header.\n"
 msgstr	""
 
-#: src/lang.c:196
+#: src/lang.c:198
 #, c-format
 msgid	"\n"
 	"Error: Header on line %d does not have a space after the colon:\n"
 	"%s\n"
 msgstr	""
 
-#: src/lang.c:197
+#: src/lang.c:199
 #, c-format
 msgid	"\n"
 	"Error: There are multiple (%d) \"%s:\" lines in the header.\n"
 msgstr	""
 
-#: src/lang.c:198
+#: src/lang.c:200
 #, c-format
 msgid	"Insecure permissions of %s (%o)"
 msgstr	""
 
-#: src/lang.c:199
+#: src/lang.c:201
 #, c-format
 msgid	"Invalid response to GROUP command, %s"
 msgstr	""
 
-#: src/lang.c:201
+#: src/lang.c:203
 #, c-format
 msgid	"MIME parse error: Unexpected end of %s/%s article"
 msgstr	""
 
-#: src/lang.c:202
+#: src/lang.c:204
 msgid	"MIME parse error: Start boundary whilst reading headers"
 msgstr	""
 
-#: src/lang.c:203
+#: src/lang.c:205
 msgid	"Can't get a (fully-qualified) domain-name!"
 msgstr	""
 
-#: src/lang.c:204
+#: src/lang.c:206
 #, c-format
 msgid	"No permissions to go into %s\n"
 msgstr	""
 
-#: src/lang.c:205
+#: src/lang.c:207
 msgid	"\n"
 	"Error: From: line missing.\n"
 msgstr	""
 
-#: src/lang.c:206
+#: src/lang.c:208
 #, c-format
 msgid	"No read permissions for %s\n"
 msgstr	""
 
-#: src/lang.c:207
+#: src/lang.c:209
 #, c-format
 msgid	"File %s does not exist\n"
 msgstr	""
 
-#: src/lang.c:208
+#: src/lang.c:210
 #, c-format
 msgid	"No write permissions for %s\n"
 msgstr	""
 
-#: src/lang.c:209
+#: src/lang.c:211
 msgid	"Can't get user information (/etc/passwd missing?)"
 msgstr	""
 
-#: src/lang.c:210
+#: src/lang.c:212
 msgid	"errors"
 msgstr	""
 
-#: src/lang.c:211
+#: src/lang.c:213
 #, c-format
 msgid	"\n"
 	"Error on line %d: \"Sender:\" header not allowed (it will be added for you)\n"
 msgstr	""
 
-#: src/lang.c:212
+#: src/lang.c:214
 #, c-format
 msgid	"Server has non of the groups listed in %s"
 msgstr	""
 
-#: src/lang.c:213
+#: src/lang.c:215
 msgid	"error"
 msgstr	""
 
-#: src/lang.c:214
+#: src/lang.c:216
 msgid	"Unknown display level"
 msgstr	""
 
-#: src/lang.c:215
+#: src/lang.c:217
 msgid	"<ESC>"
 msgstr	""
 
-#: src/lang.c:216
+#: src/lang.c:218
 msgid	"Exiting..."
 msgstr	""
 
-#: src/lang.c:217
+#: src/lang.c:219
 msgid	"leaving external mail-reader"
 msgstr	""
 
-#: src/lang.c:218
+#: src/lang.c:220
 #, c-format
 msgid	"Extracting %s..."
 msgstr	""
 
-#: src/lang.c:220
+#: src/lang.c:222
 #, c-format
 msgid	"Error writing %s file. Filesystem full? File reset to previous state."
 msgstr	""
 
-#: src/lang.c:221
+#: src/lang.c:223
 #, c-format
 msgid	"Error making backup of %s file. Filesystem full?"
 msgstr	""
 
-#: src/lang.c:222
+#: src/lang.c:224
 #, c-format
 msgid	"Filtering global rules (%d/%d)..."
 msgstr	""
 
-#: src/lang.c:223
+#: src/lang.c:225
 msgid	"Rule created by: "
 msgstr	""
 
-#: src/lang.c:224
+#: src/lang.c:226
 #, c-format
 msgid	"Enter pattern [%s]> "
 msgstr	""
 
-#: src/lang.c:225
+#: src/lang.c:227
 #, c-format
 msgid	"\n"
 	"You requested followups to your article to go to the following %s:\n"
 msgstr	""
 
-#: src/lang.c:226
+#: src/lang.c:228
 #, c-format
 msgid	"  %s\t Answers will be directed to you by mail.\n"
 msgstr	""
 
-#: src/lang.c:227
+#: src/lang.c:229
 msgid	"-- forwarded message --\n"
 msgstr	""
 
-#: src/lang.c:228
+#: src/lang.c:230
 msgid	"-- end of forwarded message --\n"
 msgstr	""
 
-#: src/lang.c:229
+#: src/lang.c:231
 msgid	"# Format:\n"
 	"#   comment=STRING    Optional. Multiple lines allowed. Comments must be "
 	"placed\n"
@@ -1013,738 +1013,742 @@ msgid	"# Format:\n"
 	"#\n"
 msgstr	""
 
-#: src/lang.c:250
+#: src/lang.c:252
 #, c-format
 msgid	"Enter score for rule (default=%d): "
 msgstr	""
 
-#: src/lang.c:251
+#: src/lang.c:253
 #, c-format
 msgid	"Enter the score weight (range 0 < score <= %d)"
 msgstr	""
 
 #. SCORE_MAX
-#: src/lang.c:252
+#: src/lang.c:254
 msgid	"Full"
 msgstr	""
 
-#: src/lang.c:253
+#: src/lang.c:255
 msgid	"Comment (optional)  : "
 msgstr	""
 
-#: src/lang.c:254
+#: src/lang.c:256
 msgid	"Apply pattern to    : "
 msgstr	""
 
-#: src/lang.c:255
+#: src/lang.c:257
 msgid	"From: line (ignore case)      "
 msgstr	""
 
-#: src/lang.c:256
+#: src/lang.c:258
 msgid	"From: line (case sensitive)   "
 msgstr	""
 
-#: src/lang.c:258
+#: src/lang.c:260
 #, c-format
 msgid	"%s%s: Unknown host.\n"
 msgstr	""
 
-#: src/lang.c:259
+#: src/lang.c:261
 msgid	"global "
 msgstr	""
 
-#: src/lang.c:260
+#: src/lang.c:262
 #, c-format
 msgid	"Please use %.100s instead"
 msgstr	""
 
-#: src/lang.c:261
+#: src/lang.c:263
 #, c-format
 msgid	"%s is bogus"
 msgstr	""
 
-#: src/lang.c:262
+#: src/lang.c:264
 #, c-format
 msgid	"Group %s is moderated. Continue?"
 msgstr	""
 
-#: src/lang.c:263
+#: src/lang.c:265
 msgid	"groups"
 msgstr	""
 
-#: src/lang.c:264
+#: src/lang.c:266
 #, c-format
 msgid	"Rereading %s..."
 msgstr	""
 
-#: src/lang.c:265
+#: src/lang.c:267
 msgid	"Top Level Commands"
 msgstr	""
 
-#: src/lang.c:266
+#: src/lang.c:268
 msgid	"Group Selection"
 msgstr	""
 
-#: src/lang.c:267
+#: src/lang.c:269
 msgid	"group"
 msgstr	""
 
-#: src/lang.c:269
+#: src/lang.c:271
 msgid	"One or more lines of comment. <CR> to add a line or proceed if line is empty."
 msgstr	""
 
-#: src/lang.c:270
+#: src/lang.c:272
 msgid	"From: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:271
+#: src/lang.c:273
 msgid	"Linecount of articles to be filtered. < for less, > for more, = for equal."
 msgstr	""
 
-#: src/lang.c:272
+#: src/lang.c:274
 msgid	"Message-ID: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:273
+#: src/lang.c:275
 msgid	"Subject: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:274
+#: src/lang.c:276
 msgid	"Enter text pattern to filter if Subject: & From: lines are not what you want."
 msgstr	""
 
-#: src/lang.c:275
+#: src/lang.c:277
 msgid	"Select where text pattern should be applied. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:276
+#: src/lang.c:278
 msgid	"Expiration time in days for the entered filter. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:277
+#: src/lang.c:279
 msgid	"Apply kill only to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:278
+#: src/lang.c:280
 msgid	"Apply select to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:279
+#: src/lang.c:281
 msgid	"kill an article via a menu"
 msgstr	""
 
-#: src/lang.c:280
+#: src/lang.c:282
 msgid	"auto-select (hot) an article via a menu"
 msgstr	""
 
-#: src/lang.c:281
+#: src/lang.c:283
 msgid	"Browse URLs in article"
 msgstr	""
 
-#: src/lang.c:282
+#: src/lang.c:284
 msgid	"0 - 9\t  display article by number in current thread"
 msgstr	""
 
-#: src/lang.c:283
+#: src/lang.c:285
 msgid	"cancel (delete) or supersede (overwrite) current article"
 msgstr	""
 
-#: src/lang.c:284
+#: src/lang.c:286
 msgid	"edit article (mail-groups only)"
 msgstr	""
 
-#: src/lang.c:285
+#: src/lang.c:287
 msgid	"display first article in current thread"
 msgstr	""
 
-#: src/lang.c:286
+#: src/lang.c:288
 msgid	"display first page of article"
 msgstr	""
 
-#: src/lang.c:287
+#: src/lang.c:289
 msgid	"post followup to current article"
 msgstr	""
 
-#: src/lang.c:288
+#: src/lang.c:290
 msgid	"post followup (don't copy text) to current article"
 msgstr	""
 
-#: src/lang.c:289
+#: src/lang.c:291
 msgid	"post followup to current article quoting complete headers"
 msgstr	""
 
-#: src/lang.c:290
+#: src/lang.c:292
 msgid	"display last article in current thread"
 msgstr	""
 
-#: src/lang.c:291
+#: src/lang.c:293
 msgid	"display last page of article"
 msgstr	""
 
-#: src/lang.c:292
+#: src/lang.c:294
 msgid	"mark rest of thread as read and advance to next unread"
 msgstr	""
 
-#: src/lang.c:293
+#: src/lang.c:295
 msgid	"display next article"
 msgstr	""
 
-#: src/lang.c:294
+#: src/lang.c:296
 msgid	"display first article in next thread"
 msgstr	""
 
-#: src/lang.c:295
+#: src/lang.c:297
 msgid	"display next unread article"
 msgstr	""
 
-#: src/lang.c:296
+#: src/lang.c:298
 msgid	"go to the article that this one followed up"
 msgstr	""
 
-#: src/lang.c:297
+#: src/lang.c:299
 msgid	"display previous article"
 msgstr	""
 
-#: src/lang.c:298
+#: src/lang.c:300
 msgid	"display previous unread article"
 msgstr	""
 
-#: src/lang.c:299
+#: src/lang.c:301
 msgid	"quickly kill an article using defaults"
 msgstr	""
 
-#: src/lang.c:300
+#: src/lang.c:302
 msgid	"quickly auto-select (hot) an article using defaults"
 msgstr	""
 
-#: src/lang.c:301
+#: src/lang.c:303
 msgid	"return to group selection level"
 msgstr	""
 
-#: src/lang.c:302
+#: src/lang.c:304
 msgid	"reply through mail to author"
 msgstr	""
 
-#: src/lang.c:303
+#: src/lang.c:305
 msgid	"reply through mail (don't copy text) to author"
 msgstr	""
 
-#: src/lang.c:304
+#: src/lang.c:306
 msgid	"reply through mail to author quoting complete headers"
 msgstr	""
 
-#: src/lang.c:305
+#: src/lang.c:307
 msgid	"repost chosen article to another group"
 msgstr	""
 
-#: src/lang.c:306
+#: src/lang.c:308
 msgid	"search backwards within this article"
 msgstr	""
 
-#: src/lang.c:307
+#: src/lang.c:309
 msgid	"search forwards within this article"
 msgstr	""
 
-#: src/lang.c:308
+#: src/lang.c:310
 msgid	"show article in raw-mode (including all headers)"
 msgstr	""
 
-#: src/lang.c:309
+#: src/lang.c:311
 msgid	"skip next block of included text"
 msgstr	""
 
-#: src/lang.c:310
+#: src/lang.c:312
 msgid	"toggle display of sections hidden by a form-feed (^L) on/off"
 msgstr	""
 
-#: src/lang.c:311
+#: src/lang.c:313
 msgid	"toggle word highlighting on/off"
 msgstr	""
 
-#: src/lang.c:312
+#: src/lang.c:314
 msgid	"toggle ROT-13 (basic decode) for current article"
 msgstr	""
 
-#: src/lang.c:313
+#: src/lang.c:315
 msgid	"toggle tabwidth 4 <-> 8"
 msgstr	""
 
-#: src/lang.c:314
+#: src/lang.c:316
 msgid	"toggle german TeX style decoding for current article"
 msgstr	""
 
-#: src/lang.c:315
+#: src/lang.c:317
 msgid	"toggle display of uuencoded sections"
 msgstr	""
 
-#: src/lang.c:316
+#: src/lang.c:318
 msgid	"View/save multimedia attachments"
 msgstr	""
 
-#: src/lang.c:317
+#: src/lang.c:319
 #, c-format
 msgid	"report bug or comment via mail to %s"
 msgstr	""
 
-#: src/lang.c:318
+#: src/lang.c:320
 msgid	"choose range of articles to be affected by next command"
 msgstr	""
 
-#: src/lang.c:319
+#: src/lang.c:321
 msgid	"escape from command prompt"
 msgstr	""
 
-#: src/lang.c:320
+#: src/lang.c:322
+msgid	"edit filter file"
+msgstr	""
+
+#: src/lang.c:323
 msgid	"get help"
 msgstr	""
 
-#: src/lang.c:321
+#: src/lang.c:324
 msgid	"display last article viewed"
 msgstr	""
 
-#: src/lang.c:322
+#: src/lang.c:325
 msgid	"down one line"
 msgstr	""
 
-#: src/lang.c:323
+#: src/lang.c:326
 msgid	"up one line"
 msgstr	""
 
-#: src/lang.c:324
+#: src/lang.c:327
 msgid	"go to article chosen by Message-ID"
 msgstr	""
 
-#: src/lang.c:325
+#: src/lang.c:328
 msgid	"mail article/thread/hot/pattern/tagged articles to someone"
 msgstr	""
 
-#: src/lang.c:326
+#: src/lang.c:329
 msgid	"menu of configurable options"
 msgstr	""
 
-#: src/lang.c:327
+#: src/lang.c:330
 msgid	"down one page"
 msgstr	""
 
-#: src/lang.c:328
+#: src/lang.c:331
 msgid	"up one page"
 msgstr	""
 
-#: src/lang.c:329
+#: src/lang.c:332
 msgid	"post (write) article to current group"
 msgstr	""
 
-#: src/lang.c:330
+#: src/lang.c:333
 msgid	"post postponed articles"
 msgstr	""
 
-#: src/lang.c:331
+#: src/lang.c:334
 msgid	"list articles posted by you (from posted file)"
 msgstr	""
 
-#: src/lang.c:332
+#: src/lang.c:335
 msgid	"return to previous menu"
 msgstr	""
 
-#: src/lang.c:333
+#: src/lang.c:336
 msgid	"quit tin immediately"
 msgstr	""
 
-#: src/lang.c:334
+#: src/lang.c:337
 msgid	"redraw page"
 msgstr	""
 
-#: src/lang.c:335
+#: src/lang.c:338
 msgid	"save article/thread/hot/pattern/tagged articles to file"
 msgstr	""
 
-#: src/lang.c:336
+#: src/lang.c:339
 msgid	"save marked articles automatically without user prompts"
 msgstr	""
 
-#: src/lang.c:337
+#: src/lang.c:340
 msgid	"scroll the screen one line down"
 msgstr	""
 
-#: src/lang.c:338
+#: src/lang.c:341
 msgid	"scroll the screen one line up"
 msgstr	""
 
-#: src/lang.c:339
+#: src/lang.c:342
 msgid	"search for articles by author backwards"
 msgstr	""
 
-#: src/lang.c:340
+#: src/lang.c:343
 msgid	"search for articles by author forwards"
 msgstr	""
 
-#: src/lang.c:341
+#: src/lang.c:344
 msgid	"search all articles for a given string (this may take some time)"
 msgstr	""
 
-#: src/lang.c:342
+#: src/lang.c:345
 msgid	" \t  (searches are case-insensitive and wrap around to all articles)"
 msgstr	""
 
-#: src/lang.c:343
+#: src/lang.c:346
 msgid	"search for articles by Subject line backwards"
 msgstr	""
 
-#: src/lang.c:344
+#: src/lang.c:347
 msgid	"search for articles by Subject line forwards"
 msgstr	""
 
-#: src/lang.c:345
+#: src/lang.c:348
 msgid	"repeat last search"
 msgstr	""
 
-#: src/lang.c:346
+#: src/lang.c:349
 msgid	"tag current article for reposting/mailing/piping/printing/saving"
 msgstr	""
 
-#: src/lang.c:347
+#: src/lang.c:350
 msgid	"toggle info message in last line (subject/description)"
 msgstr	""
 
-#: src/lang.c:348
+#: src/lang.c:351
 msgid	"toggle inverse video"
 msgstr	""
 
-#: src/lang.c:349
+#: src/lang.c:352
 msgid	"toggle mini help menu display"
 msgstr	""
 
-#: src/lang.c:350
+#: src/lang.c:353
 msgid	"cycle the display of authors email address, real name, both or neither"
 msgstr	""
 
-#: src/lang.c:351
+#: src/lang.c:354
 msgid	"show version information"
 msgstr	""
 
-#: src/lang.c:352
+#: src/lang.c:355
 msgid	"mark all articles as read and return to group selection menu"
 msgstr	""
 
-#: src/lang.c:353
+#: src/lang.c:356
 msgid	"mark all articles as read and enter next group with unread articles"
 msgstr	""
 
-#: src/lang.c:354
+#: src/lang.c:357
 msgid	"choose first thread in list"
 msgstr	""
 
-#: src/lang.c:355
+#: src/lang.c:358
 msgid	"choose last thread in list"
 msgstr	""
 
-#: src/lang.c:356
+#: src/lang.c:359
 msgid	"list articles within current thread (bring up Thread sub-menu)"
 msgstr	""
 
-#: src/lang.c:357
+#: src/lang.c:360
 msgid	"mark article as unread"
 msgstr	""
 
-#: src/lang.c:358
+#: src/lang.c:361
 msgid	"mark current thread or tagged threads as read"
 msgstr	""
 
-#: src/lang.c:359
+#: src/lang.c:362
 msgid	"mark thread as unread"
 msgstr	""
 
-#: src/lang.c:360
+#: src/lang.c:363
 msgid	"toggle display of all/selected articles"
 msgstr	""
 
-#: src/lang.c:361
+#: src/lang.c:364
 msgid	"display next group"
 msgstr	""
 
-#: src/lang.c:362
+#: src/lang.c:365
 msgid	"display previous group"
 msgstr	""
 
-#: src/lang.c:363
+#: src/lang.c:366
 msgid	"toggle all selections (all articles)"
 msgstr	""
 
-#: src/lang.c:364
+#: src/lang.c:367
 msgid	"select group (make \"hot\")"
 msgstr	""
 
-#: src/lang.c:365
+#: src/lang.c:368
 msgid	"select thread"
 msgstr	""
 
-#: src/lang.c:366
+#: src/lang.c:369
 msgid	"select threads if at least one unread article is selected"
 msgstr	""
 
-#: src/lang.c:367
+#: src/lang.c:370
 msgid	"select threads that match user specified pattern"
 msgstr	""
 
-#: src/lang.c:368
+#: src/lang.c:371
 msgid	"tag all parts of current multipart-message in order"
 msgstr	""
 
-#: src/lang.c:369
+#: src/lang.c:372
 msgid	"0 - 9\t  choose thread by number"
 msgstr	""
 
-#: src/lang.c:370
+#: src/lang.c:373
 msgid	"toggle limit number of articles to get, and reload"
 msgstr	""
 
-#: src/lang.c:371
+#: src/lang.c:374
 msgid	"toggle display of all/unread articles"
 msgstr	""
 
-#: src/lang.c:372
+#: src/lang.c:375
 msgid	"toggle selection of thread"
 msgstr	""
 
-#: src/lang.c:373
+#: src/lang.c:376
 msgid	"cycle through threading options available"
 msgstr	""
 
-#: src/lang.c:374
+#: src/lang.c:377
 msgid	"undo all selections (all articles)"
 msgstr	""
 
-#: src/lang.c:375
+#: src/lang.c:378
 msgid	"untag all tagged threads"
 msgstr	""
 
-#: src/lang.c:376
+#: src/lang.c:379
 msgid	"mark all articles in group as read"
 msgstr	""
 
-#: src/lang.c:377
+#: src/lang.c:380
 msgid	"mark all articles in group as read and move to next unread group"
 msgstr	""
 
-#: src/lang.c:378
+#: src/lang.c:381
 msgid	"choose first group in list"
 msgstr	""
 
-#: src/lang.c:379
+#: src/lang.c:382
 msgid	"choose group by name"
 msgstr	""
 
-#: src/lang.c:380
+#: src/lang.c:383
 msgid	"0 - 9\t  choose group by number"
 msgstr	""
 
-#: src/lang.c:381
+#: src/lang.c:384
 msgid	"choose range of groups to be affected by next command"
 msgstr	""
 
-#: src/lang.c:382
+#: src/lang.c:385
 msgid	"choose last group in list"
 msgstr	""
 
-#: src/lang.c:383
+#: src/lang.c:386
 msgid	"mark all articles in chosen group unread"
 msgstr	""
 
-#: src/lang.c:384
+#: src/lang.c:387
 msgid	"move chosen group within list"
 msgstr	""
 
-#: src/lang.c:385
+#: src/lang.c:388
 msgid	"choose next group with unread news"
 msgstr	""
 
-#: src/lang.c:386 src/lang.c:1187
+#: src/lang.c:389 src/lang.c:1197
 msgid	"quit"
 msgstr	""
 
-#: src/lang.c:387
+#: src/lang.c:390
 msgid	"quit without saving configuration changes"
 msgstr	""
 
-#: src/lang.c:388
+#: src/lang.c:391
 msgid	"read chosen group"
 msgstr	""
 
-#: src/lang.c:389
+#: src/lang.c:392
 msgid	"reset .newsrc (all available articles in groups marked unread)"
 msgstr	""
 
-#: src/lang.c:390
+#: src/lang.c:393
 msgid	"search backwards for a group name"
 msgstr	""
 
-#: src/lang.c:391
+#: src/lang.c:394
 msgid	" \t  (all searches are case-insensitive and wrap around)"
 msgstr	""
 
-#: src/lang.c:392
+#: src/lang.c:395
 msgid	"search forwards for a group name"
 msgstr	""
 
-#: src/lang.c:393
+#: src/lang.c:396
 msgid	"subscribe to chosen group"
 msgstr	""
 
-#: src/lang.c:394
+#: src/lang.c:397
 msgid	"subscribe to groups that match pattern"
 msgstr	""
 
-#: src/lang.c:395
+#: src/lang.c:398
 msgid	"reread active file to check for any new news"
 msgstr	""
 
-#: src/lang.c:396
+#: src/lang.c:399
 msgid	"toggle display of group name only or group name plus description"
 msgstr	""
 
-#: src/lang.c:397
+#: src/lang.c:400
 msgid	"toggle display to show all/unread subscribed groups"
 msgstr	""
 
-#: src/lang.c:398
+#: src/lang.c:401
 msgid	"unsubscribe from chosen group"
 msgstr	""
 
-#: src/lang.c:399
+#: src/lang.c:402
 msgid	"unsubscribe from groups that match pattern"
 msgstr	""
 
-#: src/lang.c:400
+#: src/lang.c:403
 msgid	"sort the list of groups"
 msgstr	""
 
-#: src/lang.c:401
+#: src/lang.c:404
 msgid	"toggle display to show all/subscribed groups"
 msgstr	""
 
-#: src/lang.c:402
+#: src/lang.c:405
 msgid	"0 - 9\t  choose article by number"
 msgstr	""
 
-#: src/lang.c:403
+#: src/lang.c:406
 msgid	"mark thread as read and return to group index page"
 msgstr	""
 
-#: src/lang.c:404
+#: src/lang.c:407
 msgid	"mark thread as read and enter next unread thread or group"
 msgstr	""
 
-#: src/lang.c:405
+#: src/lang.c:408
 msgid	"choose first article in list"
 msgstr	""
 
-#: src/lang.c:406
+#: src/lang.c:409
 msgid	"choose last article in list"
 msgstr	""
 
-#: src/lang.c:407
+#: src/lang.c:410
 msgid	"mark article or tagged articles as read and move cursor to next unread article"
 msgstr	""
 
-#: src/lang.c:408
+#: src/lang.c:411
 msgid	"read chosen article"
 msgstr	""
 
-#: src/lang.c:409
+#: src/lang.c:412
 msgid	"Display properties\n"
 	"------------------"
 msgstr	""
 
-#: src/lang.c:410
+#: src/lang.c:413
 msgid	"Miscellaneous\n"
 	"-------------"
 msgstr	""
 
-#: src/lang.c:411
+#: src/lang.c:414
 msgid	"Moving around\n"
 	"-------------"
 msgstr	""
 
-#: src/lang.c:412
+#: src/lang.c:415
 msgid	"Group/thread/article operations\n"
 	"-------------------------------"
 msgstr	""
 
-#: src/lang.c:414
+#: src/lang.c:417
 msgid	"Group Level Commands"
 msgstr	""
 
-#: src/lang.c:415
+#: src/lang.c:418
 msgid	"Kill filter added"
 msgstr	""
 
-#: src/lang.c:416
+#: src/lang.c:419
 msgid	"Auto-selection filter added"
 msgstr	""
 
-#: src/lang.c:417
+#: src/lang.c:420
 msgid	"All parts tagged"
 msgstr	""
 
-#: src/lang.c:418
+#: src/lang.c:421
 msgid	"Storing article for later posting"
 msgstr	""
 
-#: src/lang.c:419
+#: src/lang.c:422
 msgid	"Please enter a valid character"
 msgstr	""
 
-#: src/lang.c:420
+#: src/lang.c:423
 #, c-format
 msgid	"Missing part #%d"
 msgstr	""
 
-#: src/lang.c:421
+#: src/lang.c:424
 msgid	"*** No postponed articles ***"
 msgstr	""
 
-#: src/lang.c:422
+#: src/lang.c:425
 msgid	"Not a multi-part message"
 msgstr	""
 
-#: src/lang.c:423
+#: src/lang.c:426
 msgid	"You are not subscribed to this group"
 msgstr	""
 
-#: src/lang.c:424
+#: src/lang.c:427
 msgid	"No previous expression"
 msgstr	""
 
-#: src/lang.c:425
+#: src/lang.c:428
 msgid	"Operation disabled in no-overwrite mode"
 msgstr	""
 
 #. TODO: replace hardcoded key-name in txt_info_postponed
-#: src/lang.c:427
+#: src/lang.c:430
 #, c-format
 msgid	"%d postponed %s, reuse with ^O...\n"
 msgstr	""
 
-#: src/lang.c:428
+#: src/lang.c:431
 msgid	"X-Conversion-Note: multipart/alternative contents have been removed.\n"
 	"  To get the whole article, turn alternative handling OFF in the Option Menu\n"
 msgstr	""
 
-#: src/lang.c:430
+#: src/lang.c:433
 #, c-format
 msgid	"Save filename for %s/%s is a mailbox. Attachment not saved"
 msgstr	""
 
-#: src/lang.c:431
+#: src/lang.c:434
 msgid	"TeX2Iso encoded article"
 msgstr	""
 
-#: src/lang.c:432
+#: src/lang.c:435
 msgid	"incomplete "
 msgstr	""
 
 #. TODO: replace hardcoded key-names
-#: src/lang.c:434
+#: src/lang.c:437
 #, c-format
 msgid	"\n"
 	"Welcome to %s, a full screen threaded Netnews reader. It can read news "
@@ -1780,410 +1784,419 @@ msgid	"\n"
 	"Please send bug-reports/comments to %s with the 'R' command.\n"
 msgstr	""
 
-#: src/lang.c:450
+#: src/lang.c:453
 #, c-format
 msgid	"Invalid  From: %s  line. Read the INSTALL file again."
 msgstr	""
 
-#: src/lang.c:451
+#: src/lang.c:454
 #, c-format
 msgid	"Invalid  Sender:-header %s"
 msgstr	""
 
-#: src/lang.c:452
+#: src/lang.c:455
 msgid	"Inverse video disabled"
 msgstr	""
 
-#: src/lang.c:453
+#: src/lang.c:456
 msgid	"Inverse video enabled"
 msgstr	""
 
-#: src/lang.c:455
+#: src/lang.c:458
 #, c-format
 msgid	"Missing definition for %s\n"
 msgstr	""
 
-#: src/lang.c:456
+#: src/lang.c:459
 #, c-format
 msgid	"Invalid key definition '%s'\n"
 msgstr	""
 
-#: src/lang.c:457
+#: src/lang.c:460
 #, c-format
 msgid	"Invalid keyname '%s'\n"
 msgstr	""
 
-#: src/lang.c:458
+#: src/lang.c:462
 #, c-format
 msgid	"Key '%s' is defined for both %s%s and %s%s\n"
 msgstr	""
 
-#: src/lang.c:459
+#: src/lang.c:464
+#, c-format
+msgid	"Keymap file was upgraded to version %s\n"
+msgstr	""
+
+#: src/lang.c:465
 #, c-format
 msgid	"Kill From:     [%s] (y/n): "
 msgstr	""
 
-#: src/lang.c:460
+#: src/lang.c:466
 msgid	"Kill Lines: (</>num): "
 msgstr	""
 
-#: src/lang.c:461
+#: src/lang.c:467
 msgid	"Kill Article Menu"
 msgstr	""
 
-#: src/lang.c:462
+#: src/lang.c:468
 #, c-format
 msgid	"Kill Msg-Id:   [%s] (f/l/o/n): "
 msgstr	""
 
-#: src/lang.c:463
+#: src/lang.c:469
 msgid	"Kill pattern scope  : "
 msgstr	""
 
-#: src/lang.c:464
+#: src/lang.c:470
 #, c-format
 msgid	"Kill Subject:  [%s] (y/n): "
 msgstr	""
 
-#: src/lang.c:465
+#: src/lang.c:471
 msgid	"Kill text pattern   : "
 msgstr	""
 
-#: src/lang.c:466
+#: src/lang.c:472
 msgid	"Kill time in days   : "
 msgstr	""
 
-#: src/lang.c:468
+#: src/lang.c:474
 msgid	"Last"
 msgstr	""
 
-#: src/lang.c:469
+#: src/lang.c:475
 msgid	"-- Last response --"
 msgstr	""
 
-#: src/lang.c:470
+#: src/lang.c:476
 #, c-format
 msgid	"Lines %s  "
 msgstr	""
 
-#: src/lang.c:472
+#: src/lang.c:478
 msgid	"Message-ID: line              "
 msgstr	""
 
-#: src/lang.c:474
+#: src/lang.c:479
+msgid	"Mail"
+msgstr	""
+
+#: src/lang.c:480
 msgid	"mailbox "
 msgstr	""
 
-#: src/lang.c:475
+#: src/lang.c:481
 #, c-format
 msgid	"Mail article(s) to [%.*s]> "
 msgstr	""
 
-#: src/lang.c:476
+#: src/lang.c:482
 #, c-format
 msgid	"Mailing log to %s\n"
 msgstr	""
 
-#: src/lang.c:477
+#: src/lang.c:483
 msgid	"Mail bug report..."
 msgstr	""
 
-#: src/lang.c:478
+#: src/lang.c:484
 #, c-format
 msgid	"Mail BUG REPORT to %s?"
 msgstr	""
 
-#: src/lang.c:479
+#: src/lang.c:485
 msgid	"Mailed"
 msgstr	""
 
-#: src/lang.c:480
+#: src/lang.c:486
 #, c-format
 msgid	"Mailing to %s..."
 msgstr	""
 
-#: src/lang.c:481
+#: src/lang.c:487
 msgid	"# [Mail/Save] active file. Format is like news active file:\n"
 	"#   groupname  max.artnum  min.artnum  /dir\n"
 	"# The 4th field is the basedir (ie. ~/Mail or ~/News)\n"
 	"#\n"
 msgstr	""
 
-#: src/lang.c:484
+#: src/lang.c:490
 #, c-format
 msgid	"%s marked as unread"
 msgstr	""
 
-#: src/lang.c:485
+#: src/lang.c:491
 #, c-format
 msgid	"Marked %d of %d tagged %s as read"
 msgstr	""
 
-#: src/lang.c:486
+#: src/lang.c:492
 #, c-format
 msgid	"Mark all articles as read%s?"
 msgstr	""
 
-#: src/lang.c:487
+#: src/lang.c:493
 #, c-format
 msgid	"Mark %s=tagged articles, %s=current article, %s=quit: "
 msgstr	""
 
-#: src/lang.c:488
+#: src/lang.c:494
 #, c-format
 msgid	"Mark group %s as read?"
 msgstr	""
 
-#: src/lang.c:489
+#: src/lang.c:495
 #, c-format
 msgid	"Mark thread as read%s?"
 msgstr	""
 
-#: src/lang.c:490
+#: src/lang.c:496
 #, c-format
 msgid	"Mark %s=tagged articles/threads, %s=current thread, %s=quit: "
 msgstr	""
 
-#: src/lang.c:491
+#: src/lang.c:497
 #, c-format
 msgid	"Matching %s groups..."
 msgstr	""
 
-#: src/lang.c:492 src/lang.c:496
+#: src/lang.c:498 src/lang.c:502
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s=search pattern; %s=kill/select"
 msgstr	""
 
-#: src/lang.c:493
+#: src/lang.c:499
 #, c-format
 msgid	"%s=author search; %s=catchup; %s=line down; %s=line up; %s=mark read; %s=list "
 	"thread"
 msgstr	""
 
-#: src/lang.c:494
+#: src/lang.c:500
 #, c-format
 msgid	"%s=line up; %s=line down; %s=page up; %s=page down; %s=top; %s=bottom"
 msgstr	""
 
-#: src/lang.c:495
+#: src/lang.c:501
 #, c-format
 msgid	"%s=search forwards; %s=search backwards; %s=quit"
 msgstr	""
 
-#: src/lang.c:497
+#: src/lang.c:503
 #, c-format
 msgid	"%s=author search; %s=body search; %s=catchup; %s=followup; %s=mark read"
 msgstr	""
 
-#: src/lang.c:498
+#: src/lang.c:504
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s,%s=search pattern; %s=catchup"
 msgstr	""
 
-#: src/lang.c:499
+#: src/lang.c:505
 #, c-format
 msgid	"%s=line down; %s=line up; %s=help; %s=move; %s=quit; %s=toggle all/unread"
 msgstr	""
 
-#: src/lang.c:500
+#: src/lang.c:506
 #, c-format
 msgid	"%s=subscribe; %s=sub pattern; %s=unsubscribe; %s=unsub pattern; %s=yank in/out"
 msgstr	""
 
-#: src/lang.c:501
+#: src/lang.c:507
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s=catchup; %s=display toggle"
 msgstr	""
 
-#: src/lang.c:502
+#: src/lang.c:508
 #, c-format
 msgid	"%s=help; %s=line down; %s=line up; %s=quit; %s=tag; %s=mark unread"
 msgstr	""
 
-#: src/lang.c:503
+#: src/lang.c:509
 msgid	"--More--"
 msgstr	""
 
-#: src/lang.c:504
+#: src/lang.c:510
 #, c-format
 msgid	"Moving %s..."
 msgstr	""
 
-#: src/lang.c:506
+#: src/lang.c:512
 msgid	", name: "
 msgstr	""
 
-#: src/lang.c:507
+#: src/lang.c:513
 #, c-format
 msgid	"Goto newsgroup [%s]> "
 msgstr	""
 
-#: src/lang.c:508
+#: src/lang.c:514
 msgid	"newsgroups"
 msgstr	""
 
-#: src/lang.c:509
+#: src/lang.c:515
 #, c-format
 msgid	"Position %s in group list (1,2,..,$) [%d]> "
 msgstr	""
 
-#: src/lang.c:510
+#: src/lang.c:516
 msgid	"newsgroup"
 msgstr	""
 
-#: src/lang.c:511
+#: src/lang.c:517
 msgid	"Try and save newsrc file again?"
 msgstr	""
 
-#: src/lang.c:512
+#: src/lang.c:518
 msgid	"Warning: No newsgroups were written to your newsrc file. Save aborted."
 msgstr	""
 
-#: src/lang.c:513
+#: src/lang.c:519
 msgid	"newsrc file saved successfully.\n"
 msgstr	""
 
-#: src/lang.c:514
+#: src/lang.c:520
 msgid	"-- Next response --"
 msgstr	""
 
-#: src/lang.c:515
+#: src/lang.c:521
 #, c-format
 msgid	"NNTP authorization password not found for %s"
 msgstr	"NNTP authorisation password not found for %s"
 
-#: src/lang.c:516
+#: src/lang.c:522
 msgid	"No  "
 msgstr	""
 
-#: src/lang.c:517
+#: src/lang.c:523
 msgid	"*** No articles ***"
 msgstr	""
 
-#: src/lang.c:518
+#: src/lang.c:524
 msgid	"No articles have been posted"
 msgstr	""
 
-#: src/lang.c:519
+#: src/lang.c:525
 msgid	"*** No description ***"
 msgstr	""
 
-#: src/lang.c:520
+#: src/lang.c:526
 msgid	"No filename"
 msgstr	""
 
-#: src/lang.c:521
+#: src/lang.c:527
 msgid	"No group"
 msgstr	""
 
-#: src/lang.c:522
+#: src/lang.c:528
 msgid	"*** No groups ***"
 msgstr	""
 
-#: src/lang.c:523
+#: src/lang.c:529
 msgid	"No more groups to read"
 msgstr	""
 
-#: src/lang.c:524
+#: src/lang.c:530
 msgid	"No last message"
 msgstr	""
 
-#: src/lang.c:525
+#: src/lang.c:531
 msgid	"No mail address"
 msgstr	""
 
-#: src/lang.c:526
+#: src/lang.c:532
 msgid	"No articles marked for saving"
 msgstr	""
 
-#: src/lang.c:527
+#: src/lang.c:533
 msgid	"No match"
 msgstr	""
 
-#: src/lang.c:528
+#: src/lang.c:534
 msgid	"No more groups"
 msgstr	""
 
-#: src/lang.c:529
+#: src/lang.c:535
 msgid	"No newsgroups"
 msgstr	""
 
-#: src/lang.c:530
+#: src/lang.c:536
 msgid	"No next unread article"
 msgstr	""
 
-#: src/lang.c:531
+#: src/lang.c:537
 msgid	"No previous group"
 msgstr	""
 
-#: src/lang.c:532
+#: src/lang.c:538
 msgid	"No previous unread article"
 msgstr	""
 
-#: src/lang.c:533
+#: src/lang.c:539
 msgid	"No responses"
 msgstr	""
 
-#: src/lang.c:534
+#: src/lang.c:540
 msgid	"No responses to list in current thread"
 msgstr	""
 
-#: src/lang.c:535
+#: src/lang.c:541
 msgid	"No search string"
 msgstr	""
 
-#: src/lang.c:536
+#: src/lang.c:542
 msgid	"No subject"
 msgstr	""
 
-#: src/lang.c:538
+#: src/lang.c:544
 #, c-format
 msgid	"%s: Terminal must have clear to end-of-line (ce)\n"
 msgstr	""
 
-#: src/lang.c:539
+#: src/lang.c:545
 #, c-format
 msgid	"%s: Terminal must have clear to end-of-screen (cd)\n"
 msgstr	""
 
-#: src/lang.c:540
+#: src/lang.c:546
 #, c-format
 msgid	"%s: Terminal must have clearscreen (cl) capability\n"
 msgstr	""
 
-#: src/lang.c:541
+#: src/lang.c:547
 #, c-format
 msgid	"%s: Terminal must have cursor motion (cm)\n"
 msgstr	""
 
-#: src/lang.c:542
+#: src/lang.c:548
 #, c-format
 msgid	"%s: TERM variable must be set to use screen capabilities\n"
 msgstr	""
 
-#: src/lang.c:544
+#: src/lang.c:550
 #, c-format
 msgid	"No viewer found for %s/%s\n"
 msgstr	""
 
-#: src/lang.c:545
+#: src/lang.c:551
 msgid	"Newsgroup does not exist on this server"
 msgstr	""
 
-#: src/lang.c:546
+#: src/lang.c:552
 #, c-format
 msgid	"Group %s not found in active file"
 msgstr	""
 
-#: src/lang.c:547
+#: src/lang.c:553
 msgid	"c)reate it, use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr	""
 
-#: src/lang.c:548
+#: src/lang.c:554
 msgid	"use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr	""
 
-#: src/lang.c:549
+#: src/lang.c:555
 #, c-format
 msgid	"# NNTP-server -> newsrc translation table and NNTP-server\n"
 	"# shortname list for %s %s\n"
@@ -2199,313 +2212,313 @@ msgid	"# NNTP-server -> newsrc translati
 	"#\n"
 msgstr	""
 
-#: src/lang.c:556
+#: src/lang.c:562
 msgid	"Only"
 msgstr	""
 
-#: src/lang.c:557
+#: src/lang.c:563
 #, c-format
 msgid	"Option not enabled. Recompile with %s."
 msgstr	""
 
-#: src/lang.c:558
+#: src/lang.c:564
 msgid	"Options Menu"
 msgstr	""
 
-#: src/lang.c:561
+#: src/lang.c:567
 #, c-format
 msgid	"Error in regex: %s at pos. %d '%s'"
 msgstr	""
 
-#: src/lang.c:562
+#: src/lang.c:568
 #, c-format
 msgid	"Error in regex: pcre internal error %d"
 msgstr	""
 
-#: src/lang.c:563
+#: src/lang.c:569
 #, c-format
 msgid	"Error in regex: study - pcre internal error %s"
 msgstr	""
 
-#: src/lang.c:564
+#: src/lang.c:570
 msgid	"Post a followup..."
 msgstr	""
 
 #. TODO: replace hardcoded key-name in txt_post_error_ask_postpone
-#: src/lang.c:566
+#: src/lang.c:572
 msgid	"An error has occurred while posting the article. If you think that this\n"
 	"error is temporary or otherwise correctable, you can postpone the article\n"
 	"and pick it up again with ^O later.\n"
 msgstr	""
 
-#: src/lang.c:569
+#: src/lang.c:575
 msgid	"Posted articles history"
 msgstr	""
 
-#: src/lang.c:570
+#: src/lang.c:576
 #, c-format
 msgid	"Post to newsgroup(s) [%s]> "
 msgstr	""
 
-#: src/lang.c:571
+#: src/lang.c:577
 msgid	"-- post processing started --"
 msgstr	""
 
-#: src/lang.c:572
+#: src/lang.c:578
 msgid	"-- post processing completed --"
 msgstr	""
 
-#: src/lang.c:573
+#: src/lang.c:579
 #, c-format
 msgid	"Post subject [%s]> "
 msgstr	""
 
-#: src/lang.c:574
+#: src/lang.c:580
 msgid	"# Summary of mailed/posted messages viewable by 'W' command from within tin.\n"
 msgstr	""
 
-#: src/lang.c:575
+#: src/lang.c:581
 msgid	"Posting article..."
 msgstr	""
 
-#: src/lang.c:576
+#: src/lang.c:582
 msgid	"Post postponed articles [%%s]? (%s/%s/%s/%s/%s): "
 msgstr	""
 
-#: src/lang.c:577
+#: src/lang.c:583
 #, c-format
 msgid	"Hot %s"
 msgstr	""
 
-#: src/lang.c:578
+#: src/lang.c:584
 #, c-format
 msgid	"Tagged %s"
 msgstr	""
 
-#: src/lang.c:579
+#: src/lang.c:585
 #, c-format
 msgid	"Untagged %s"
 msgstr	""
 
-#: src/lang.c:580
+#: src/lang.c:586
 msgid	"Processing mail messages marked for deletion."
 msgstr	""
 
-#: src/lang.c:581
+#: src/lang.c:587
 msgid	"Processing saved articles marked for deletion."
 msgstr	""
 
-#: src/lang.c:582
+#: src/lang.c:588
 #, c-format
 msgid	"Accept Followup-To? %s=post, %s=ignore, %s=quit: "
 msgstr	""
 
-#: src/lang.c:583
+#: src/lang.c:589
 msgid	"Article unchanged, abort mailing?"
 msgstr	""
 
-#: src/lang.c:584
+#: src/lang.c:590
 #, c-format
 msgid	"Do you want to see postponed articles (%d)?"
 msgstr	""
 
-#: src/lang.c:586
+#: src/lang.c:592
 msgid	"Add quick kill filter?"
 msgstr	""
 
-#: src/lang.c:587
+#: src/lang.c:593
 msgid	"Add quick selection filter?"
 msgstr	""
 
-#: src/lang.c:588
+#: src/lang.c:594
 msgid	"Do you really want to quit?"
 msgstr	""
 
-#: src/lang.c:589
+#: src/lang.c:595
 msgid	"%s=edit cancel message, %s=quit, %s=delete (cancel) [%%s]: "
 msgstr	""
 
-#: src/lang.c:590
+#: src/lang.c:596
 msgid	"You have tagged articles in this group - quit anyway?"
 msgstr	""
 
-#: src/lang.c:591
+#: src/lang.c:597
 #, c-format
 msgid	"%s=quit, %s=edit, %s=postpone: "
 msgstr	""
 
-#: src/lang.c:592
+#: src/lang.c:598
 #, c-format
 msgid	"%s=quit %s=edit %s=save kill description: "
 msgstr	""
 
-#: src/lang.c:593
+#: src/lang.c:599
 #, c-format
 msgid	"%s=quit %s=edit %s=save select description: "
 msgstr	""
 
-#: src/lang.c:594
+#: src/lang.c:600
 msgid	"Do you really want to quit without saving your configuration?"
 msgstr	""
 
-#: src/lang.c:597
+#: src/lang.c:603
 msgid	"Invalid range - valid are '0-9.$' eg. 1-$"
 msgstr	""
 
-#: src/lang.c:598
+#: src/lang.c:604
 msgid	"Do you want to abort this operation?"
 msgstr	""
 
-#: src/lang.c:599
+#: src/lang.c:605
 msgid	"Do you want to exit tin immediately?"
 msgstr	""
 
-#: src/lang.c:600
+#: src/lang.c:606
 msgid	"Read response> "
 msgstr	""
 
-#: src/lang.c:601
+#: src/lang.c:607
 msgid	"Reading ('q' to quit)..."
 msgstr	""
 
-#: src/lang.c:602
+#: src/lang.c:608
 #, c-format
 msgid	"Reading %sarticles..."
 msgstr	""
 
-#: src/lang.c:603
+#: src/lang.c:609
 #, c-format
 msgid	"Reading %sattributes file...\n"
 msgstr	""
 
-#: src/lang.c:604
+#: src/lang.c:610
 #, c-format
 msgid	"Reading %sconfig file...\n"
 msgstr	""
 
-#: src/lang.c:605
+#: src/lang.c:611
 msgid	"Reading filter file...\n"
 msgstr	""
 
-#: src/lang.c:606
+#: src/lang.c:612
 #, c-format
 msgid	"Reading %s groups..."
 msgstr	""
 
-#: src/lang.c:607
+#: src/lang.c:613
 msgid	"Reading input history file...\n"
 msgstr	""
 
-#: src/lang.c:608
+#: src/lang.c:614
 msgid	"Reading keymap file...\n"
 msgstr	""
 
-#: src/lang.c:609
+#: src/lang.c:615
 msgid	"Reading groups from active file... "
 msgstr	""
 
-#: src/lang.c:610
+#: src/lang.c:616
 msgid	"Reading groups from newsrc file... "
 msgstr	""
 
-#: src/lang.c:611
+#: src/lang.c:617
 msgid	"Reading newsgroups file... "
 msgstr	""
 
-#: src/lang.c:612
+#: src/lang.c:618
 msgid	"Reading newsrc file..."
 msgstr	""
 
-#: src/lang.c:614
+#: src/lang.c:620
 #, c-format
 msgid	"(%d:%02d remaining)"
 msgstr	""
 
-#: src/lang.c:616
+#: src/lang.c:622
 #, c-format
 msgid	"Bogus group %s removed."
 msgstr	""
 
-#: src/lang.c:617
+#: src/lang.c:623
 #, c-format
 msgid	"Error: rename %s to %s"
 msgstr	""
 
-#: src/lang.c:618
+#: src/lang.c:624
 msgid	"Reply to author..."
 msgstr	""
 
-#: src/lang.c:619
+#: src/lang.c:625
 msgid	"Repost"
 msgstr	""
 
-#: src/lang.c:620
+#: src/lang.c:626
 msgid	"Reposting article..."
 msgstr	""
 
-#: src/lang.c:621
+#: src/lang.c:627
 #, c-format
 msgid	"Repost article(s) to group(s) [%s]> "
 msgstr	""
 
-#: src/lang.c:622
+#: src/lang.c:628
 msgid	"Reset newsrc?"
 msgstr	""
 
-#: src/lang.c:623
+#: src/lang.c:629
 msgid	"Responses have been directed to the following newsgroups"
 msgstr	""
 
-#: src/lang.c:624
+#: src/lang.c:630
 #, c-format
 msgid	"Responses have been directed to poster. %s=mail, %s=post, %s=quit: "
 msgstr	""
 
-#: src/lang.c:625
+#: src/lang.c:631
 #, c-format
 msgid	"RespNo %4d of %4d"
 msgstr	""
 
-#: src/lang.c:626
+#: src/lang.c:632
 msgid	"Press <RETURN> to continue..."
 msgstr	""
 
-#: src/lang.c:628
+#: src/lang.c:634
 #, c-format
 msgid	"Select From    [%s] (y/n): "
 msgstr	""
 
-#: src/lang.c:629
+#: src/lang.c:635
 msgid	"Select Lines: (</>num): "
 msgstr	""
 
-#: src/lang.c:630
+#: src/lang.c:636
 msgid	"Auto-select Article Menu"
 msgstr	""
 
-#: src/lang.c:631
+#: src/lang.c:637
 #, c-format
 msgid	"Select Msg-Id  [%s] (f/l/o/n): "
 msgstr	""
 
-#: src/lang.c:632
+#: src/lang.c:638
 msgid	"Select pattern scope: "
 msgstr	""
 
-#: src/lang.c:633
+#: src/lang.c:639
 #, c-format
 msgid	"Select Subject [%s] (y/n): "
 msgstr	""
 
-#: src/lang.c:634
+#: src/lang.c:640
 msgid	"Select text pattern : "
 msgstr	""
 
-#: src/lang.c:635
+#: src/lang.c:641
 msgid	"Select time in days   : "
 msgstr	""
 
-#: src/lang.c:636
+#: src/lang.c:642
 #, c-format
 msgid	"# %s server configuration file\n"
 	"# This file was automatically saved by %s %s %s (\"%s\")\n"
@@ -2517,220 +2530,220 @@ msgid	"# %s server configuration file\n"
 	"\n"
 msgstr	""
 
-#: src/lang.c:642
+#: src/lang.c:648
 msgid	"Showing unread groups only"
 msgstr	""
 
-#: src/lang.c:643
+#: src/lang.c:649
 msgid	"Subject: line (ignore case)   "
 msgstr	""
 
-#: src/lang.c:644
+#: src/lang.c:650
 msgid	"Subject: line (case sensitive)"
 msgstr	""
 
-#: src/lang.c:645
+#: src/lang.c:651
 msgid	"Save"
 msgstr	""
 
-#: src/lang.c:646
+#: src/lang.c:652
 #, c-format
 msgid	"Save '%s' (%s/%s)?"
 msgstr	""
 
-#: src/lang.c:647
+#: src/lang.c:653
 msgid	"Save configuration before continuing?"
 msgstr	""
 
-#: src/lang.c:648
+#: src/lang.c:654
 msgid	"Save filename> "
 msgstr	""
 
-#: src/lang.c:649
+#: src/lang.c:655
 msgid	"Saved"
 msgstr	""
 
-#: src/lang.c:650
+#: src/lang.c:656
 #, c-format
 msgid	"%4d unread (%4d hot) %s in %s\n"
 msgstr	""
 
-#: src/lang.c:651
+#: src/lang.c:657
 #, c-format
 msgid	"Saved %s...\n"
 msgstr	""
 
-#: src/lang.c:652
+#: src/lang.c:658
 msgid	"Nothing was saved"
 msgstr	""
 
-#: src/lang.c:653
+#: src/lang.c:659
 #, c-format
 msgid	"\n"
 	"%s %d %s from %d %s\n"
 msgstr	""
 
-#: src/lang.c:654
+#: src/lang.c:660
 #, c-format
 msgid	"-- %s saved to %s%s --"
 msgstr	""
 
-#: src/lang.c:655
+#: src/lang.c:661
 #, c-format
 msgid	"-- %s saved to %s - %s --"
 msgstr	""
 
-#: src/lang.c:656
+#: src/lang.c:662
 msgid	"Saving..."
 msgstr	""
 
-#: src/lang.c:657
+#: src/lang.c:663
 #, c-format
 msgid	"%s: Screen initialization failed"
 msgstr	"%s: Screen initialisation failed"
 
-#: src/lang.c:659
+#: src/lang.c:665
 #, c-format
 msgid	"%s: screen is too small\n"
 msgstr	""
 
-#: src/lang.c:661
+#: src/lang.c:667
 #, c-format
 msgid	"screen is too small, %s is exiting\n"
 msgstr	""
 
-#: src/lang.c:662
+#: src/lang.c:668
 #, c-format
 msgid	"Search backwards [%s]> "
 msgstr	""
 
-#: src/lang.c:663
+#: src/lang.c:669
 #, c-format
 msgid	"Search body [%s]> "
 msgstr	""
 
-#: src/lang.c:664
+#: src/lang.c:670
 #, c-format
 msgid	"Search forwards [%s]> "
 msgstr	""
 
-#: src/lang.c:665
+#: src/lang.c:671
 msgid	"Searching..."
 msgstr	""
 
-#: src/lang.c:666
+#: src/lang.c:672
 #, c-format
 msgid	"Searching article %d of %d ('q' to abort)..."
 msgstr	""
 
-#: src/lang.c:667
+#: src/lang.c:673
 msgid	"Select article> "
 msgstr	""
 
-#: src/lang.c:668
+#: src/lang.c:674
 msgid	"Select option number before text or use arrow keys and <CR>. 'q' to quit."
 msgstr	""
 
-#: src/lang.c:669
+#: src/lang.c:675
 msgid	"Select group> "
 msgstr	""
 
-#: src/lang.c:670
+#: src/lang.c:676
 #, c-format
 msgid	"Enter selection pattern [%s]> "
 msgstr	""
 
-#: src/lang.c:671
+#: src/lang.c:677
 msgid	"Select thread > "
 msgstr	""
 
-#: src/lang.c:672
+#: src/lang.c:678
 #, c-format
 msgid	"%s %s %s (\"%s\") [%s]: send a DETAILED bug report to %s\n"
 msgstr	""
 
-#: src/lang.c:673
+#: src/lang.c:679
 msgid	"servers active-file"
 msgstr	""
 
-#: src/lang.c:674
+#: src/lang.c:680
 msgid	"Cannot move into new newsgroups. Subscribe first..."
 msgstr	""
 
-#: src/lang.c:675
+#: src/lang.c:681
 msgid	"<SPACE>"
 msgstr	""
 
-#: src/lang.c:676
+#: src/lang.c:682
 #, c-format
 msgid	"Starting: (%s)"
 msgstr	""
 
-#: src/lang.c:677
+#: src/lang.c:683
 #, c-format
 msgid	"List Thread (%d of %d)"
 msgstr	""
 
-#: src/lang.c:678
+#: src/lang.c:684
 #, c-format
 msgid	"Thread (%.*s)"
 msgstr	""
 
-#: src/lang.c:679
+#: src/lang.c:685
 msgid	"Enter wildcard subscribe pattern> "
 msgstr	""
 
-#: src/lang.c:680
+#: src/lang.c:686
 #, c-format
 msgid	"subscribed to %d groups"
 msgstr	""
 
-#: src/lang.c:681
+#: src/lang.c:687
 #, c-format
 msgid	"Subscribed to %s"
 msgstr	""
 
-#: src/lang.c:682
+#: src/lang.c:688
 msgid	"Subscribing... "
 msgstr	""
 
-#: src/lang.c:683
+#: src/lang.c:689
 msgid	"Repost or supersede article(s) [%%s]? (%s/%s/%s): "
 msgstr	""
 
-#: src/lang.c:684
+#: src/lang.c:690
 #, c-format
 msgid	"Supersede article(s) to group(s) [%s]> "
 msgstr	""
 
-#: src/lang.c:685
+#: src/lang.c:691
 msgid	"Superseding article ..."
 msgstr	""
 
-#: src/lang.c:686
+#: src/lang.c:692
 #, c-format
 msgid	"\n"
 	"Stopped. Type 'fg' to restart %s\n"
 msgstr	""
 
-#: src/lang.c:688
+#: src/lang.c:694
 #, c-format
 msgid	"%d days"
 msgstr	""
 
-#: src/lang.c:689
+#: src/lang.c:695
 msgid	"<TAB>"
 msgstr	""
 
-#: src/lang.c:690
+#: src/lang.c:696
 msgid	"TeX "
 msgstr	""
 
-#: src/lang.c:691
+#: src/lang.c:697
 msgid	"# Default action/prompt strings\n"
 msgstr	""
 
-#: src/lang.c:692
+#: src/lang.c:698
 msgid	"# Defaults for quick (1 key) kill & auto-selection filters\n"
 	"# header=NUM  0,1=Subject: 2,3=From: 4=Message-ID: & full References: line\n"
 	"#             5=Message-ID: & last References: entry only\n"
@@ -2740,323 +2753,323 @@ msgid	"# Defaults for quick (1 key) kill
 	"# expire=ON/OFF  ON=limit to default_filter_days OFF=don't ever expire\n"
 msgstr	""
 
-#: src/lang.c:705
+#: src/lang.c:711
 msgid	"# If ON use print current subject or newsgroup description in the last line\n"
 msgstr	""
 
-#: src/lang.c:706
+#: src/lang.c:712
 msgid	"# Host & time info used for detecting new groups (don't touch)\n"
 msgstr	""
 
-#: src/lang.c:707
+#: src/lang.c:713
 msgid	"There is no news\n"
 msgstr	""
 
-#: src/lang.c:708
+#: src/lang.c:714
 msgid	"Thread"
 msgstr	""
 
-#: src/lang.c:709
+#: src/lang.c:715
 msgid	"Thread Level Commands"
 msgstr	""
 
-#: src/lang.c:710
+#: src/lang.c:716
 msgid	"Thread deselected"
 msgstr	""
 
-#: src/lang.c:711
+#: src/lang.c:717
 msgid	"Thread selected"
 msgstr	""
 
-#: src/lang.c:712
+#: src/lang.c:719
 msgid	"threads"
 msgstr	""
 
-#: src/lang.c:713
+#: src/lang.c:721
 msgid	"Thread range"
 msgstr	""
 
-#: src/lang.c:714
+#: src/lang.c:722
 msgid	"thread"
 msgstr	""
 
-#: src/lang.c:715
+#: src/lang.c:723
 #, c-format
 msgid	"Thread %4s of %4s"
 msgstr	""
 
-#: src/lang.c:716
+#: src/lang.c:724
 msgid	"Threading articles..."
 msgstr	""
 
-#: src/lang.c:717
+#: src/lang.c:725
 #, c-format
 msgid	"Toggled word highlighting %s"
 msgstr	""
 
-#: src/lang.c:718
+#: src/lang.c:726
 msgid	"Toggled rot13 encoding"
 msgstr	""
 
-#: src/lang.c:719
+#: src/lang.c:727
 #, c-format
 msgid	"Toggled german TeX encoding %s"
 msgstr	""
 
-#: src/lang.c:720
+#: src/lang.c:728
 #, c-format
 msgid	"Toggled tab-width to %d"
 msgstr	""
 
-#: src/lang.c:721
+#: src/lang.c:729
 #, c-format
 msgid	"%d Trying to dotlock %s"
 msgstr	""
 
-#: src/lang.c:722
+#: src/lang.c:730
 #, c-format
 msgid	"%d Trying to lock %s"
 msgstr	""
 
-#: src/lang.c:723
+#: src/lang.c:731
 msgid	"           h=help\n"
 msgstr	""
 
-#: src/lang.c:725
+#: src/lang.c:733
 msgid	"Unlimited"
 msgstr	""
 
-#: src/lang.c:726
+#: src/lang.c:734
 msgid	"Enter wildcard unsubscribe pattern> "
 msgstr	""
 
-#: src/lang.c:727
+#: src/lang.c:735
 #, c-format
 msgid	"Error decoding %s : %s"
 msgstr	""
 
-#: src/lang.c:728
+#: src/lang.c:736
 msgid	"No end."
 msgstr	""
 
-#: src/lang.c:729
+#: src/lang.c:737
 #, c-format
 msgid	"%s successfully decoded."
 msgstr	""
 
-#: src/lang.c:730
+#: src/lang.c:738
 #, c-format
 msgid	"%*s[-- %s/%s, %suuencoded file, %d lines, name: %s --]\n"
 	"\n"
 msgstr	""
 
-#: src/lang.c:731
+#: src/lang.c:739
 msgid	"unread "
 msgstr	""
 
-#: src/lang.c:732
+#: src/lang.c:740
 #, c-format
 msgid	"unsubscribed from %d groups"
 msgstr	""
 
-#: src/lang.c:733
+#: src/lang.c:741
 #, c-format
 msgid	"Unsubscribed from %s"
 msgstr	""
 
-#: src/lang.c:734
+#: src/lang.c:742
 msgid	"Unsubscribing... "
 msgstr	""
 
-#: src/lang.c:735
+#: src/lang.c:743
 msgid	"Unthreading articles..."
 msgstr	""
 
-#: src/lang.c:736
+#: src/lang.c:744
 msgid	"Updated"
 msgstr	""
 
-#: src/lang.c:737
+#: src/lang.c:745
 msgid	"Updating"
 msgstr	""
 
-#: src/lang.c:738
+#: src/lang.c:746
 #, c-format
 msgid	"Opening %s\n"
 msgstr	""
 
-#: src/lang.c:739
+#: src/lang.c:747
 msgid	"No more URL's in this article"
 msgstr	""
 
-#: src/lang.c:740
+#: src/lang.c:748
 msgid	"Use MIME display program for this message?"
 msgstr	""
 
-#: src/lang.c:741
+#: src/lang.c:749
 msgid	"  -c       mark all news as read in subscribed newsgroups (batch mode)"
 msgstr	""
 
-#: src/lang.c:742
+#: src/lang.c:750
 msgid	"  -Z       return status indicating if any unread news (batch mode)"
 msgstr	""
 
-#: src/lang.c:743
+#: src/lang.c:751
 msgid	"  -q       don't check for new newsgroups"
 msgstr	""
 
-#: src/lang.c:744
+#: src/lang.c:752
 msgid	"  -X       don't save any files on quit"
 msgstr	""
 
-#: src/lang.c:745
+#: src/lang.c:753
 msgid	"  -d       don't show newsgroup descriptions"
 msgstr	""
 
-#: src/lang.c:746
+#: src/lang.c:754
 msgid	"  -G limit get only limit articles/group"
 msgstr	""
 
-#: src/lang.c:747
+#: src/lang.c:755
 #, c-format
 msgid	"  -H       help information about %s"
 msgstr	""
 
-#: src/lang.c:748
+#: src/lang.c:756
 msgid	"  -h       this help message"
 msgstr	""
 
-#: src/lang.c:749
+#: src/lang.c:757
 #, c-format
 msgid	"  -I dir   news index file directory [default=%s]"
 msgstr	""
 
-#: src/lang.c:750
+#: src/lang.c:758
 msgid	"  -u       update index files (batch mode)"
 msgstr	""
 
-#: src/lang.c:751
+#: src/lang.c:759
 #, c-format
 msgid	"  -m dir   mailbox directory [default=%s]"
 msgstr	""
 
-#: src/lang.c:752
+#: src/lang.c:760
 #, c-format
 msgid	"\n"
 	"Mail bug reports/comments to %s"
 msgstr	""
 
-#: src/lang.c:753
+#: src/lang.c:761
 msgid	"  -N       mail new news to your posts (batch mode)"
 msgstr	""
 
-#: src/lang.c:754
+#: src/lang.c:762
 msgid	"  -M user  mail new news to specified user (batch mode)"
 msgstr	""
 
-#: src/lang.c:755
+#: src/lang.c:763
 #, c-format
 msgid	"  -f file  subscribed to newsgroups file [default=%s]"
 msgstr	""
 
-#: src/lang.c:756
+#: src/lang.c:764
 msgid	"  -x       no posting mode"
 msgstr	""
 
-#: src/lang.c:757
+#: src/lang.c:765
 msgid	"  -w       post an article and exit"
 msgstr	""
 
-#: src/lang.c:758
+#: src/lang.c:766
 msgid	"  -o       post all postponed articles and exit"
 msgstr	""
 
-#: src/lang.c:759
+#: src/lang.c:767
 msgid	"  -r       read news remotely from default NNTP server"
 msgstr	""
 
-#: src/lang.c:760
+#: src/lang.c:768
 msgid	"  -R       read news saved by -S option"
 msgstr	""
 
-#: src/lang.c:761
+#: src/lang.c:769
 #, c-format
 msgid	"  -s dir   save news directory [default=%s]"
 msgstr	""
 
-#: src/lang.c:762
+#: src/lang.c:770
 msgid	"  -S       save new news for later reading (batch mode)"
 msgstr	""
 
-#: src/lang.c:763
+#: src/lang.c:771
 msgid	"  -z       start if any unread news"
 msgstr	""
 
-#: src/lang.c:764
+#: src/lang.c:772
 #, c-format
 msgid	"A Usenet reader.\n"
 	"\n"
 	"Usage: %s [options] [newsgroup[,...]]"
 msgstr	""
 
-#: src/lang.c:765
+#: src/lang.c:773
 msgid	"  -v       verbose output for batch mode options"
 msgstr	""
 
-#: src/lang.c:766
+#: src/lang.c:774
 msgid	"  -V       print version & date information"
 msgstr	""
 
-#: src/lang.c:767
+#: src/lang.c:775
 #, c-format
 msgid	"%s only useful without batch mode operations\n"
 msgstr	""
 
-#: src/lang.c:768
+#: src/lang.c:776
 #, c-format
 msgid	"%s only useful for batch mode operations\n"
 msgstr	""
 
-#: src/lang.c:770
+#: src/lang.c:778
 #, c-format
 msgid	"\n"
 	"%s%d out of range (0 - %d). Reset to 0"
 msgstr	""
 
-#: src/lang.c:771
+#: src/lang.c:779
 #, c-format
 msgid	"View '%s' (%s/%s)?"
 msgstr	""
 
-#: src/lang.c:773
+#: src/lang.c:781
 #, c-format
 msgid	"\n"
 	"Warning: posting exceeds %d columns. Line %d is the first long one:\n"
 	"%-100s\n"
 msgstr	""
 
-#: src/lang.c:774
+#: src/lang.c:782
 msgid	"\n"
 	"Warning: article unchanged after editing\n"
 msgstr	""
 
-#: src/lang.c:775
+#: src/lang.c:783
 msgid	"\n"
 	"Warning: \"Subject:\" contains only whitespaces.\n"
 msgstr	""
 
-#: src/lang.c:776
+#: src/lang.c:784
 msgid	"\n"
 	"Warning: \"Subject:\" begins with \"Re: \" but there are no \"References:\".\n"
 msgstr	""
 
-#: src/lang.c:778
+#: src/lang.c:786
 msgid	"\n"
 	"Warning: Article has \"References:\" but \"Subject:\" does not begin\n"
 	"         with \"Re: \" and does not contain \"(was:\".\n"
 msgstr	""
 
-#: src/lang.c:781
+#: src/lang.c:789
 msgid	"Read carefully!\n"
 	"\n"
 	"  You are about to cancel an article seemingly written by you. This will "
@@ -3069,7 +3082,7 @@ msgid	"Read carefully!\n"
 	"\n"
 msgstr	""
 
-#: src/lang.c:785
+#: src/lang.c:793
 msgid	"\n"
 	"Warning: You are using a non-plain transfer encoding (such as base64 or\n"
 	"         quoted-printable) and an external inews program to submit your\n"
@@ -3077,7 +3090,7 @@ msgid	"\n"
 	"         not be encoded properly.\n"
 msgstr	""
 
-#: src/lang.c:790
+#: src/lang.c:798
 #, c-format
 msgid	"\n"
 	"\n"
@@ -3086,7 +3099,7 @@ msgid	"\n"
 	"Read WHATSNEW, etc...\n"
 msgstr	""
 
-#: src/lang.c:792
+#: src/lang.c:800
 #, c-format
 msgid	"\n"
 	"\n"
@@ -3094,7 +3107,7 @@ msgid	"\n"
 	"Some values in your %s file may be ignored, others might have changed!\n"
 msgstr	""
 
-#: src/lang.c:795
+#: src/lang.c:803
 #, c-format
 msgid	"Warning: tin wrote fewer groups to your\n"
 	"\t%s\n"
@@ -3103,18 +3116,18 @@ msgid	"Warning: tin wrote fewer groups t
 	"before you start tin once again!\n"
 msgstr	""
 
-#: src/lang.c:799
+#: src/lang.c:807
 #, c-format
 msgid	"\n"
 	"Warning: Found %d '-- \\n' lines, this may confuse some people.\n"
 msgstr	""
 
-#: src/lang.c:800
+#: src/lang.c:808
 #, c-format
 msgid	"Warning: Only %d out of %d articles were saved"
 msgstr	""
 
-#: src/lang.c:801
+#: src/lang.c:809
 #, c-format
 msgid	"\n"
 	"Warning: Your signature  is longer than %d lines.  Since signatures usually "
@@ -3124,47 +3137,47 @@ msgid	"\n"
 	"         possible.\n"
 msgstr	""
 
-#: src/lang.c:805
+#: src/lang.c:813
 #, c-format
 msgid	"Warning: this mail address may contain a spamtrap. %s=continue, %s=abort? "
 msgstr	""
 
-#: src/lang.c:806
+#: src/lang.c:814
 msgid	"\n"
 	"Warning: Signatures should start with '-- \\n' not with '--\\n'.\n"
 msgstr	""
 
-#: src/lang.c:807
+#: src/lang.c:815
 msgid	"Writing attributes file..."
 msgstr	""
 
-#: src/lang.c:809
+#: src/lang.c:817
 #, c-format
 msgid	"%d Responses"
 msgstr	""
 
-#: src/lang.c:811
+#: src/lang.c:819
 #, c-format
 msgid	"Added %d %s"
 msgstr	""
 
-#: src/lang.c:812
+#: src/lang.c:820
 msgid	"No unsubscribed groups to show"
 msgstr	""
 
-#: src/lang.c:813
+#: src/lang.c:821
 msgid	"Showing subscribed to groups only"
 msgstr	""
 
-#: src/lang.c:814
+#: src/lang.c:822
 msgid	"Yes "
 msgstr	""
 
-#: src/lang.c:815
+#: src/lang.c:823
 msgid	"    You have mail\n"
 msgstr	""
 
-#: src/lang.c:820
+#: src/lang.c:828
 #, c-format
 msgid	"\n"
 	"Warning: Posting is in %s and contains characters which are not\n"
@@ -3176,16 +3189,16 @@ msgid	"\n"
 	"         M)enu option.\n"
 msgstr	""
 
-#: src/lang.c:831
+#: src/lang.c:839
 #, c-format
 msgid	"Redefined key %s '%s' -> '%s'\n"
 msgstr	""
 
-#: src/lang.c:832
+#: src/lang.c:840
 msgid	"  -D       debug mode 1=NNTP 2=ALL"
 msgstr	""
 
-#: src/lang.c:836
+#: src/lang.c:844
 msgid	"Read carefully!\n"
 	"\n"
 	"  You are about to cancel an article seemingly not written by you.  This "
@@ -3201,11 +3214,11 @@ msgid	"Read carefully!\n"
 	"\n"
 msgstr	""
 
-#: src/lang.c:845
+#: src/lang.c:853
 msgid	"toggle color"
 msgstr	"toggle colour"
 
-#: src/lang.c:846
+#: src/lang.c:854
 msgid	"# Changing colors of several screen parts\n"
 	"# Possible values are:\n"
 	"#  -1 = default (white for foreground and black for background)\n"
@@ -3229,339 +3242,339 @@ msgid	"# Changing colors of several scre
 	"\n"
 msgstr	""
 
-#: src/lang.c:866
+#: src/lang.c:874
 msgid	"  -a       toggle color flag"
 msgstr	"  -a       toggle colour flag"
 
-#: src/lang.c:870
+#: src/lang.c:878
 msgid	"\n"
 	"Error: Followup-To set to more than one newsgroup!\n"
 msgstr	""
 
-#: src/lang.c:871
+#: src/lang.c:879
 #, c-format
 msgid	"\n"
 	"Error: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr	""
 
-#: src/lang.c:872
+#: src/lang.c:880
 #, c-format
 msgid	"\n"
 	"Error: \"%s\" is not a valid newsgroup!\n"
 msgstr	""
 
-#: src/lang.c:874
+#: src/lang.c:882
 msgid	"\n"
 	"Warning: Followup-To set to more than one newsgroup!\n"
 msgstr	""
 
-#: src/lang.c:875
+#: src/lang.c:883
 #, c-format
 msgid	"\n"
 	"Warning: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr	""
 
-#: src/lang.c:876
+#: src/lang.c:884
 #, c-format
 msgid	"\n"
 	"Warning: \"%s\" is not in your newsrc, it may be invalid at this site!\n"
 msgstr	""
 
-#: src/lang.c:877
+#: src/lang.c:885
 #, c-format
 msgid	"\n"
 	"Warning: \"%s\" is not a valid newsgroup at this site!\n"
 msgstr	""
 
-#: src/lang.c:881
+#: src/lang.c:889
 #, c-format
 msgid	"%d files successfully written from %d articles. %d %s occurred."
 msgstr	""
 
-#: src/lang.c:882
+#: src/lang.c:890
 msgid	"Missing parts."
 msgstr	""
 
-#: src/lang.c:883
+#: src/lang.c:891
 msgid	"No beginning."
 msgstr	""
 
-#: src/lang.c:884
+#: src/lang.c:892
 msgid	"No data."
 msgstr	""
 
-#: src/lang.c:885
+#: src/lang.c:893
 msgid	"Unknown error."
 msgstr	""
 
-#: src/lang.c:887
+#: src/lang.c:896
 #, c-format
 msgid	"\tChecksum of %s (%ld %s)"
 msgstr	""
 
-#: src/lang.c:891
+#: src/lang.c:901
 msgid	"Reading mail active file... "
 msgstr	""
 
-#: src/lang.c:892
+#: src/lang.c:902
 msgid	"Reading mailgroups file... "
 msgstr	""
 
-#: src/lang.c:896
+#: src/lang.c:906
 msgid	"perform PGP operations on article"
 msgstr	""
 
-#: src/lang.c:897
+#: src/lang.c:907
 msgid	"Add key(s) to public keyring?"
 msgstr	""
 
-#: src/lang.c:898
+#: src/lang.c:908
 #, c-format
 msgid	"%s=encrypt, %s=sign, %s=both, %s=quit: "
 msgstr	""
 
-#: src/lang.c:899
+#: src/lang.c:909
 #, c-format
 msgid	"%s=sign, %s=sign & include public key, %s=quit: "
 msgstr	""
 
-#: src/lang.c:900
+#: src/lang.c:910
 #, c-format
 msgid	"PGP has not been set up (can't open %s)"
 msgstr	""
 
-#: src/lang.c:901
+#: src/lang.c:911
 msgid	"Article not signed and no public keys found"
 msgstr	""
 
-#: src/lang.c:903
+#: src/lang.c:913
 #, c-format
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone: "
 msgstr	""
 
-#: src/lang.c:904
+#: src/lang.c:914
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=send [%%s]: "
 msgstr	""
 
-#: src/lang.c:905
+#: src/lang.c:915
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	""
 
-#: src/lang.c:907
+#: src/lang.c:917
 #, c-format
 msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone: "
 msgstr	""
 
-#: src/lang.c:908
+#: src/lang.c:918
 msgid	"%s=quit, %s=edit, %s=pgp, %s=send [%%s]: "
 msgstr	""
 
-#: src/lang.c:909
+#: src/lang.c:919
 msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	""
 
-#: src/lang.c:913
+#: src/lang.c:923
 #, c-format
 msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone: "
 msgstr	""
 
-#: src/lang.c:914
+#: src/lang.c:924
 msgid	"%s=quit, %s=edit, %s=ispell, %s=send [%%s]: "
 msgstr	""
 
-#: src/lang.c:915
+#: src/lang.c:925
 msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	""
 
-#: src/lang.c:917
+#: src/lang.c:927
 #, c-format
 msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone: "
 msgstr	""
 
-#: src/lang.c:918
+#: src/lang.c:928
 msgid	"%s=quit, %s=edit, %s=send [%%s]: "
 msgstr	""
 
-#: src/lang.c:919
+#: src/lang.c:929
 msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	""
 
-#: src/lang.c:928
+#: src/lang.c:938
 msgid	"Try cache_overview_files to speed up things.\n"
 msgstr	""
 
-#: src/lang.c:929
+#: src/lang.c:939
 msgid	"Tin will use local index files instead.\n"
 msgstr	""
 
-#: src/lang.c:930
+#: src/lang.c:940
 msgid	"Cannot find NNTP server name"
 msgstr	""
 
-#: src/lang.c:931
+#: src/lang.c:941
 #, c-format
 msgid	"Connecting to %s:%d..."
 msgstr	""
 
-#: src/lang.c:932
+#: src/lang.c:942
 msgid	"Disconnecting from server...\n"
 msgstr	""
 
-#: src/lang.c:933
+#: src/lang.c:943
 #, c-format
 msgid	"Wrong newsgroup name in response of GROUP command, %s for %s"
 msgstr	""
 
-#: src/lang.c:934
+#: src/lang.c:944
 #, c-format
 msgid	"Failed to connect to NNTP server %s. Exiting..."
 msgstr	""
 
-#: src/lang.c:935
+#: src/lang.c:945
 msgid	"205  Closing connection"
 msgstr	""
 
-#: src/lang.c:936
+#: src/lang.c:946
 msgid	"Your server does not support the NNTP XOVER or OVER command.\n"
 msgstr	""
 
-#: src/lang.c:937
+#: src/lang.c:947
 msgid	"Connection to news server has timed out. Reconnect?"
 msgstr	""
 
-#: src/lang.c:938
+#: src/lang.c:948
 #, c-format
 msgid	"Put the server name in the file %s,\n"
 	"or set the environment variable NNTPSERVER"
 msgstr	""
 
-#: src/lang.c:939
+#: src/lang.c:949
 msgid	"  -A       force authentication on connect"
 msgstr	""
 
-#: src/lang.c:940
+#: src/lang.c:950
 #, c-format
 msgid	"  -g serv  read news from NNTP server serv [default=%s]"
 msgstr	""
 
-#: src/lang.c:941
+#: src/lang.c:951
 #, c-format
 msgid	"  -p port  use port as NNTP port [default=%d]"
 msgstr	""
 
-#: src/lang.c:942
+#: src/lang.c:952
 msgid	"  -Q       quick start. Same as -nqd"
 msgstr	""
 
-#: src/lang.c:943
+#: src/lang.c:953
 msgid	"  -l       use only LIST instead of GROUP (-n) command"
 msgstr	""
 
-#: src/lang.c:944
+#: src/lang.c:954
 msgid	"  -n       only read subscribed .newsrc groups from NNTP server"
 msgstr	""
 
-#: src/lang.c:946
+#: src/lang.c:956
 #, c-format
 msgid	"%s/tcp: Unknown service.\n"
 msgstr	""
 
-#: src/lang.c:949
+#: src/lang.c:959
 msgid	"\n"
 	"socket or connect problem\n"
 msgstr	""
 
-#: src/lang.c:951
+#: src/lang.c:961
 #, c-format
 msgid	"\n"
 	"Connection to %s: "
 msgstr	""
 
-#: src/lang.c:952
+#: src/lang.c:962
 msgid	"Giving up...\n"
 msgstr	""
 
-#: src/lang.c:955
+#: src/lang.c:965
 msgid	"Your server does not have Xref: in its XOVER information.\n"
 	"Tin will try to use XHDR XREF instead (slows down things a bit).\n"
 msgstr	""
 
-#: src/lang.c:958
+#: src/lang.c:968
 msgid	"Your server does not have Xref: in its XOVER information.\n"
 msgstr	""
 
-#: src/lang.c:961
+#: src/lang.c:971
 #, c-format
 msgid	"Can't open %s. Try %s -r to read news via NNTP.\n"
 msgstr	""
 
-#: src/lang.c:964
+#: src/lang.c:974
 msgid	"  -Q       quick start. Same as -qd"
 msgstr	""
 
-#: src/lang.c:965
+#: src/lang.c:975
 msgid	"  -l       read only active file instead of scanning spool (-n) command"
 msgstr	""
 
-#: src/lang.c:966
+#: src/lang.c:976
 msgid	"  -n       only read subscribed .newsrc groups from spool"
 msgstr	""
 
-#: src/lang.c:967
+#: src/lang.c:977
 msgid	"Your server does not have Xref: in its NOV-files.\n"
 msgstr	""
 
-#: src/lang.c:971
+#: src/lang.c:981
 msgid	"Posting using external inews failed. Use built in inews instead?"
 msgstr	""
 
-#: src/lang.c:972
+#: src/lang.c:982
 msgid	"It worked! Should I always use my built in inews from now on?"
 msgstr	""
 
-#: src/lang.c:980
+#: src/lang.c:990
 #, c-format
 msgid	"%d %s printed"
 msgstr	""
 
-#: src/lang.c:981
+#: src/lang.c:991
 msgid	"output article/thread/hot/pattern/tagged articles to printer"
 msgstr	""
 
-#: src/lang.c:982
+#: src/lang.c:992
 msgid	"Print"
 msgstr	""
 
-#: src/lang.c:983
+#: src/lang.c:993
 msgid	"Printing..."
 msgstr	""
 
-#: src/lang.c:987
+#: src/lang.c:997
 msgid	"pipe article/thread/hot/pattern/tagged articles into command"
 msgstr	""
 
-#: src/lang.c:988
+#: src/lang.c:998
 msgid	"No command"
 msgstr	""
 
-#: src/lang.c:989
+#: src/lang.c:999
 msgid	"Pipe"
 msgstr	""
 
-#: src/lang.c:990
+#: src/lang.c:1000
 #, c-format
 msgid	"Pipe to command [%.*s]> "
 msgstr	""
 
-#: src/lang.c:991
+#: src/lang.c:1001
 msgid	"Piping..."
 msgstr	""
 
-#: src/lang.c:993
+#: src/lang.c:1003
 msgid	"Piping not enabled."
 msgstr	""
 
-#: src/lang.c:997
+#: src/lang.c:1007
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line has spaces  in it that MUST be removed.\n"
@@ -3570,7 +3583,7 @@ msgid	"\n"
 	"       newsgroup names.\n"
 msgstr	""
 
-#: src/lang.c:1002
+#: src/lang.c:1012
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is  continued in  the next line.  Since\n"
@@ -3578,7 +3591,7 @@ msgid	"\n"
 	"       Please write all newsgroups into a single line.\n"
 msgstr	""
 
-#: src/lang.c:1007
+#: src/lang.c:1017
 #, c-format
 msgid	"\n"
 	"Warning: The \"%s:\" line is continued in the next line.\n"
@@ -3586,13 +3599,13 @@ msgid	"\n"
 	"         To avoid trouble please write all newsgroups into a single line.\n"
 msgstr	""
 
-#: src/lang.c:1011
+#: src/lang.c:1021
 #, c-format
 msgid	"\n"
 	"Warning: The \"%s:\" line has spaces in it that SHOULD be removed.\n"
 msgstr	""
 
-#: src/lang.c:1016
+#: src/lang.c:1026
 msgid	"\n"
 	"  If your article contains quoted text  please take some time to pare it "
 	"down\n"
@@ -3613,494 +3626,494 @@ msgid	"\n"
 	"  likely to ignore it completely.  It's a crowded net out there.\n"
 msgstr	""
 
-#: src/lang.c:1029
+#: src/lang.c:1039
 msgid	"shell escape"
 msgstr	""
 
-#: src/lang.c:1030
+#: src/lang.c:1040
 #, c-format
 msgid	"Shell Command (%s)"
 msgstr	""
 
-#: src/lang.c:1031
+#: src/lang.c:1041
 #, c-format
 msgid	"Enter shell command [%s]> "
 msgstr	""
 
-#: src/lang.c:1035
+#: src/lang.c:1045
 #, c-format
 msgid	"%s: Can't get entry for TERM\n"
 msgstr	""
 
-#: src/lang.c:1039
+#: src/lang.c:1049
 #, c-format
 msgid	"Group %.*s ('q' to quit)..."
 msgstr	""
 
-#: src/lang.c:1041
+#: src/lang.c:1051
 #, c-format
 msgid	"Group %.*s..."
 msgstr	""
 
-#: src/lang.c:1045
+#: src/lang.c:1055
 msgid	"Server unavailable\n"
 msgstr	""
 
-#: src/lang.c:1051
+#: src/lang.c:1061
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; "
 	"%s=post"
 msgstr	""
 
-#: src/lang.c:1052
+#: src/lang.c:1062
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	""
 
-#: src/lang.c:1054
+#: src/lang.c:1064
 #, c-format
 msgid	"%s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	""
 
-#: src/lang.c:1055
+#: src/lang.c:1065
 #, c-format
 msgid	"%s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	""
 
-#: src/lang.c:1059
+#: src/lang.c:1069
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	""
 
-#: src/lang.c:1060
+#: src/lang.c:1070
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	""
 
-#: src/lang.c:1062
+#: src/lang.c:1072
 #, c-format
 msgid	"%s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	""
 
-#: src/lang.c:1063
+#: src/lang.c:1073
 #, c-format
 msgid	"%s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	""
 
-#: src/lang.c:1069
+#: src/lang.c:1079
 msgid	"Terminal does not support color"
 msgstr	"Terminal does not support colour"
 
-#: src/lang.c:1074
+#: src/lang.c:1084
 #, c-format
 msgid	"Trying %s"
 msgstr	""
 
-#: src/lang.c:1088 src/lang.c:1113 src/lang.c:1129 src/lang.c:1308 src/refs.c:296
+#: src/lang.c:1098 src/lang.c:1123 src/lang.c:1139 src/lang.c:1318 src/refs.c:296
 msgid	"None"
 msgstr	""
 
-#: src/lang.c:1089
+#: src/lang.c:1099
 msgid	"Subject"
 msgstr	""
 
-#: src/lang.c:1090
+#: src/lang.c:1100
 msgid	"References"
 msgstr	""
 
-#: src/lang.c:1091
+#: src/lang.c:1101
 msgid	"Both Subject and References"
 msgstr	""
 
-#: src/lang.c:1092
+#: src/lang.c:1102
 msgid	"Multipart Subject"
 msgstr	""
 
-#: src/lang.c:1104 src/lang.c:1215
+#: src/lang.c:1114 src/lang.c:1225
 msgid	"No"
 msgstr	""
 
-#: src/lang.c:1105 src/lang.c:1217
+#: src/lang.c:1115 src/lang.c:1227
 msgid	"Yes"
 msgstr	""
 
-#: src/lang.c:1106
+#: src/lang.c:1116
 msgid	"Hide All"
 msgstr	""
 
-#: src/lang.c:1114
+#: src/lang.c:1124
 msgid	"Address"
 msgstr	""
 
-#: src/lang.c:1115
+#: src/lang.c:1125
 msgid	"Full Name"
 msgstr	""
 
-#: src/lang.c:1116
+#: src/lang.c:1126
 msgid	"Address and Name"
 msgstr	""
 
-#: src/lang.c:1123
+#: src/lang.c:1133
 msgid	"Max"
 msgstr	""
 
-#: src/lang.c:1124
+#: src/lang.c:1134
 msgid	"Sum"
 msgstr	""
 
-#: src/lang.c:1125
+#: src/lang.c:1135
 msgid	"Average"
 msgstr	""
 
-#: src/lang.c:1130
+#: src/lang.c:1140
 msgid	"Lines"
 msgstr	""
 
-#: src/lang.c:1131
+#: src/lang.c:1141
 msgid	"Score"
 msgstr	""
 
-#: src/lang.c:1132
+#: src/lang.c:1142
 msgid	"Lines & Score"
 msgstr	""
 
-#: src/lang.c:1141
+#: src/lang.c:1151
 msgid	"Black"
 msgstr	""
 
-#: src/lang.c:1142
+#: src/lang.c:1152
 msgid	"Red"
 msgstr	""
 
-#: src/lang.c:1143
+#: src/lang.c:1153
 msgid	"Green"
 msgstr	""
 
-#: src/lang.c:1144
+#: src/lang.c:1154
 msgid	"Brown"
 msgstr	""
 
-#: src/lang.c:1145
+#: src/lang.c:1155
 msgid	"Blue"
 msgstr	""
 
-#: src/lang.c:1146
+#: src/lang.c:1156
 msgid	"Pink"
 msgstr	""
 
-#: src/lang.c:1147
+#: src/lang.c:1157
 msgid	"Cyan"
 msgstr	""
 
-#: src/lang.c:1148
+#: src/lang.c:1158
 msgid	"White"
 msgstr	""
 
-#: src/lang.c:1149
+#: src/lang.c:1159
 msgid	"Gray"
 msgstr	"Grey"
 
-#: src/lang.c:1150
+#: src/lang.c:1160
 msgid	"Light Red"
 msgstr	""
 
-#: src/lang.c:1151
+#: src/lang.c:1161
 msgid	"Light Green"
 msgstr	""
 
-#: src/lang.c:1152
+#: src/lang.c:1162
 msgid	"Yellow"
 msgstr	""
 
-#: src/lang.c:1153
+#: src/lang.c:1163
 msgid	"Light Blue"
 msgstr	""
 
-#: src/lang.c:1154
+#: src/lang.c:1164
 msgid	"Light Pink"
 msgstr	""
 
-#: src/lang.c:1155
+#: src/lang.c:1165
 msgid	"Light Cyan"
 msgstr	""
 
-#: src/lang.c:1156
+#: src/lang.c:1166
 msgid	"Light White"
 msgstr	""
 
-#: src/lang.c:1164 src/lang.c:1221 src/lang.c:1235
+#: src/lang.c:1174 src/lang.c:1231 src/lang.c:1245
 msgid	"Nothing"
 msgstr	""
 
-#: src/lang.c:1165
+#: src/lang.c:1175
 msgid	"Mark"
 msgstr	""
 
-#: src/lang.c:1166
+#: src/lang.c:1176
 msgid	"Space"
 msgstr	""
 
-#: src/lang.c:1173
+#: src/lang.c:1183
 msgid	"Normal"
 msgstr	""
 
-#: src/lang.c:1174
+#: src/lang.c:1184
 msgid	"Best highlighting"
 msgstr	""
 
-#: src/lang.c:1175
+#: src/lang.c:1185
 msgid	"Underline"
 msgstr	""
 
-#: src/lang.c:1176
+#: src/lang.c:1186
 msgid	"Reverse video"
 msgstr	""
 
-#: src/lang.c:1177
+#: src/lang.c:1187
 msgid	"Blinking"
 msgstr	""
 
-#: src/lang.c:1178
+#: src/lang.c:1188
 msgid	"Half bright"
 msgstr	""
 
-#: src/lang.c:1179
+#: src/lang.c:1189
 msgid	"Bold"
 msgstr	""
 
-#: src/lang.c:1184
+#: src/lang.c:1194
 msgid	"none"
 msgstr	""
 
-#: src/lang.c:1185
+#: src/lang.c:1195
 msgid	"commands"
 msgstr	""
 
-#: src/lang.c:1186
+#: src/lang.c:1196
 msgid	"select"
 msgstr	""
 
-#: src/lang.c:1188
+#: src/lang.c:1198
 msgid	"commands & quit"
 msgstr	""
 
-#: src/lang.c:1189
+#: src/lang.c:1199
 msgid	"commands & select"
 msgstr	""
 
-#: src/lang.c:1190
+#: src/lang.c:1200
 msgid	"quit & select"
 msgstr	""
 
-#: src/lang.c:1191
+#: src/lang.c:1201
 msgid	"commands & quit & select"
 msgstr	""
 
-#: src/lang.c:1216
+#: src/lang.c:1226
 msgid	"Shell archive"
 msgstr	""
 
-#: src/lang.c:1222
+#: src/lang.c:1232
 msgid	"Subject: (descending)"
 msgstr	""
 
-#: src/lang.c:1223
+#: src/lang.c:1233
 msgid	"Subject: (ascending)"
 msgstr	""
 
-#: src/lang.c:1224
+#: src/lang.c:1234
 msgid	"From: (descending)"
 msgstr	""
 
-#: src/lang.c:1225
+#: src/lang.c:1235
 msgid	"From: (ascending)"
 msgstr	""
 
-#: src/lang.c:1226
+#: src/lang.c:1236
 msgid	"Date: (descending)"
 msgstr	""
 
-#: src/lang.c:1227
+#: src/lang.c:1237
 msgid	"Date: (ascending)"
 msgstr	""
 
-#: src/lang.c:1228 src/lang.c:1236
+#: src/lang.c:1238 src/lang.c:1246
 msgid	"Score (descending)"
 msgstr	""
 
-#: src/lang.c:1229 src/lang.c:1237
+#: src/lang.c:1239 src/lang.c:1247
 msgid	"Score (ascending)"
 msgstr	""
 
-#: src/lang.c:1230
+#: src/lang.c:1240
 msgid	"Lines: (descending)"
 msgstr	""
 
-#: src/lang.c:1231
+#: src/lang.c:1241
 msgid	"Lines: (ascending)"
 msgstr	""
 
-#: src/lang.c:1242
+#: src/lang.c:1252
 msgid	"Always Keep"
 msgstr	""
 
-#: src/lang.c:1243
+#: src/lang.c:1253
 msgid	"Always Remove"
 msgstr	""
 
-#: src/lang.c:1244
+#: src/lang.c:1254
 msgid	"Mark with D on selection screen"
 msgstr	""
 
-#: src/lang.c:1249
+#: src/lang.c:1259
 msgid	"Kill only unread arts"
 msgstr	""
 
-#: src/lang.c:1250
+#: src/lang.c:1260
 msgid	"Kill all arts & show with K"
 msgstr	""
 
 #. TODO: s/K/art_marked_killed/
-#: src/lang.c:1251
+#: src/lang.c:1261
 msgid	"Kill all arts and never show"
 msgstr	""
 
-#: src/lang.c:1256
+#: src/lang.c:1266
 msgid	"Nothing special"
 msgstr	""
 
-#: src/lang.c:1257
+#: src/lang.c:1267
 msgid	"Compress quotes"
 msgstr	""
 
-#: src/lang.c:1258
+#: src/lang.c:1268
 msgid	"Quote signatures"
 msgstr	""
 
-#: src/lang.c:1259
+#: src/lang.c:1269
 msgid	"Compress quotes, quote sigs"
 msgstr	""
 
-#: src/lang.c:1260
+#: src/lang.c:1270
 msgid	"Quote empty lines"
 msgstr	""
 
-#: src/lang.c:1261
+#: src/lang.c:1271
 msgid	"Compress quotes, quote empty lines"
 msgstr	""
 
-#: src/lang.c:1262
+#: src/lang.c:1272
 msgid	"Quote sigs & empty lines"
 msgstr	""
 
-#: src/lang.c:1263
+#: src/lang.c:1273
 msgid	"Comp. q., quote sigs & empty lines"
 msgstr	""
 
-#: src/lang.c:1301
+#: src/lang.c:1311
 msgid	"no"
 msgstr	""
 
-#: src/lang.c:1302
+#: src/lang.c:1312
 msgid	"with headers"
 msgstr	""
 
-#: src/lang.c:1303
+#: src/lang.c:1313
 msgid	"without headers"
 msgstr	""
 
-#: src/lang.c:1310 src/lang.c:1316
+#: src/lang.c:1320 src/lang.c:1326
 msgid	"NFKC"
 msgstr	""
 
-#: src/lang.c:1311
+#: src/lang.c:1321
 msgid	"NFKD"
 msgstr	""
 
-#: src/lang.c:1312
+#: src/lang.c:1322
 msgid	"NFC"
 msgstr	""
 
-#: src/lang.c:1313
+#: src/lang.c:1323
 msgid	"NFD"
 msgstr	""
 
-#: src/lang.c:1324
+#: src/lang.c:1334
 msgid	"Display Options"
 msgstr	""
 
-#: src/lang.c:1330
+#: src/lang.c:1341
 msgid	"Color Options"
 msgstr	"Colour Options"
 
-#: src/lang.c:1336
+#: src/lang.c:1348
 msgid	"Article-Limiting Options"
 msgstr	""
 
-#: src/lang.c:1342
+#: src/lang.c:1354
 msgid	"Posting/Mailing Options"
 msgstr	""
 
-#: src/lang.c:1348
+#: src/lang.c:1360
 msgid	"Saving/Printing Options"
 msgstr	""
 
-#: src/lang.c:1354
+#: src/lang.c:1366
 msgid	"Expert Options"
 msgstr	""
 
-#: src/lang.c:1360
+#: src/lang.c:1372
 msgid	"Filtering Options"
 msgstr	""
 
-#: src/lang.c:1365 src/lang.c:1396 src/lang.c:1402 src/lang.c:1414 src/lang.c:1464
-#: src/lang.c:1470 src/lang.c:1480 src/lang.c:1500 src/lang.c:1575 src/lang.c:1745
-#: src/lang.c:1751 src/lang.c:1757 src/lang.c:1763 src/lang.c:1775 src/lang.c:1782
-#: src/lang.c:1836 src/lang.c:1845 src/lang.c:1851 src/lang.c:1858 src/lang.c:1865
-#: src/lang.c:1872 src/lang.c:1879 src/lang.c:1886 src/lang.c:1893 src/lang.c:1900
-#: src/lang.c:1907 src/lang.c:1914 src/lang.c:1921 src/lang.c:1928 src/lang.c:1935
-#: src/lang.c:1942 src/lang.c:1949 src/lang.c:1956 src/lang.c:1963 src/lang.c:1970
-#: src/lang.c:1977 src/lang.c:1984 src/lang.c:1991 src/lang.c:1998 src/lang.c:2005
-#: src/lang.c:2013 src/lang.c:2029 src/lang.c:2036 src/lang.c:2043 src/lang.c:2050
-#: src/lang.c:2056 src/lang.c:2062 src/lang.c:2079 src/lang.c:2091 src/lang.c:2125
-#: src/lang.c:2178 src/lang.c:2185 src/lang.c:2191 src/lang.c:2216 src/lang.c:2233
-#: src/lang.c:2286 src/lang.c:2322 src/lang.c:2342 src/lang.c:2377 src/lang.c:2387
-#: src/lang.c:2412 src/lang.c:2428 src/lang.c:2447 src/lang.c:2460
+#: src/lang.c:1377 src/lang.c:1408 src/lang.c:1414 src/lang.c:1426 src/lang.c:1476
+#: src/lang.c:1482 src/lang.c:1492 src/lang.c:1512 src/lang.c:1587 src/lang.c:1757
+#: src/lang.c:1763 src/lang.c:1769 src/lang.c:1775 src/lang.c:1787 src/lang.c:1794
+#: src/lang.c:1848 src/lang.c:1857 src/lang.c:1863 src/lang.c:1870 src/lang.c:1877
+#: src/lang.c:1884 src/lang.c:1891 src/lang.c:1898 src/lang.c:1905 src/lang.c:1912
+#: src/lang.c:1919 src/lang.c:1926 src/lang.c:1933 src/lang.c:1940 src/lang.c:1947
+#: src/lang.c:1954 src/lang.c:1961 src/lang.c:1968 src/lang.c:1975 src/lang.c:1982
+#: src/lang.c:1989 src/lang.c:1996 src/lang.c:2003 src/lang.c:2010 src/lang.c:2017
+#: src/lang.c:2025 src/lang.c:2041 src/lang.c:2048 src/lang.c:2055 src/lang.c:2062
+#: src/lang.c:2068 src/lang.c:2074 src/lang.c:2091 src/lang.c:2103 src/lang.c:2137
+#: src/lang.c:2190 src/lang.c:2197 src/lang.c:2203 src/lang.c:2228 src/lang.c:2245
+#: src/lang.c:2298 src/lang.c:2334 src/lang.c:2354 src/lang.c:2389 src/lang.c:2399
+#: src/lang.c:2424 src/lang.c:2440 src/lang.c:2459 src/lang.c:2472
 msgid	"<SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1366
+#: src/lang.c:1378
 msgid	"Show mini menu & posting etiquette"
 msgstr	""
 
-#: src/lang.c:1367
+#: src/lang.c:1379
 msgid	"# If ON show a mini menu of useful commands at each level\n"
 	"# and posting etiquette after composing an article\n"
 msgstr	""
 
-#: src/lang.c:1372
+#: src/lang.c:1384
 msgid	"Show short description for each newsgroup. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1373
+#: src/lang.c:1385
 msgid	"Show description of each newsgroup"
 msgstr	""
 
-#: src/lang.c:1374
+#: src/lang.c:1386
 msgid	"# If ON show group description text after newsgroup name at\n"
 	"# group selection level\n"
 msgstr	""
 
-#: src/lang.c:1379
+#: src/lang.c:1391
 msgid	"Show Subject & From (author) fields in group menu. <SPACE> toggles & <CR> "
 	"sets."
 msgstr	""
 
-#: src/lang.c:1380
+#: src/lang.c:1392
 msgid	"In group menu, show author by"
 msgstr	""
 
-#: src/lang.c:1381
+#: src/lang.c:1393
 msgid	"# Part of from field to display\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = none\n"
@@ -4109,31 +4122,31 @@ msgid	"# Part of from field to display\n
 	"#   3 = both\n"
 msgstr	""
 
-#: src/lang.c:1390
+#: src/lang.c:1402
 msgid	"Draw -> or highlighted bar for selection. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1391
+#: src/lang.c:1403
 msgid	"Draw -> instead of highlighted bar"
 msgstr	""
 
-#: src/lang.c:1392
+#: src/lang.c:1404
 msgid	"# If ON use -> otherwise highlighted bar for selection\n"
 msgstr	""
 
-#: src/lang.c:1397
+#: src/lang.c:1409
 msgid	"Use inverse video for page headers"
 msgstr	""
 
-#: src/lang.c:1398
+#: src/lang.c:1410
 msgid	"# If ON use inverse video for page headers at different levels\n"
 msgstr	""
 
-#: src/lang.c:1403
+#: src/lang.c:1415
 msgid	"Thread articles by"
 msgstr	""
 
-#: src/lang.c:1404
+#: src/lang.c:1416
 msgid	"# Thread articles by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4143,11 +4156,11 @@ msgid	"# Thread articles by ...\n"
 	"#   4 = Multipart Subject\n"
 msgstr	""
 
-#: src/lang.c:1415
+#: src/lang.c:1427
 msgid	"Score of a thread"
 msgstr	""
 
-#: src/lang.c:1416
+#: src/lang.c:1428
 msgid	"# Thread score\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = max\n"
@@ -4155,15 +4168,15 @@ msgid	"# Thread score\n"
 	"#   2 = average\n"
 msgstr	""
 
-#: src/lang.c:1424
+#: src/lang.c:1436
 msgid	"Sort articles by Subject, From, Date or Score. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1425
+#: src/lang.c:1437
 msgid	"Sort articles by"
 msgstr	""
 
-#: src/lang.c:1426
+#: src/lang.c:1438
 msgid	"# Sort articles by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4179,15 +4192,15 @@ msgid	"# Sort articles by ...\n"
 	"#  10 = Lines ascending\n"
 msgstr	""
 
-#: src/lang.c:1442
+#: src/lang.c:1454
 msgid	"Sort threads by Nothing or Score. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1443
+#: src/lang.c:1455
 msgid	"Sort threads by"
 msgstr	""
 
-#: src/lang.c:1444
+#: src/lang.c:1456
 msgid	"# Sort thread by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4195,43 +4208,43 @@ msgid	"# Sort thread by ...\n"
 	"#   2 = Score ascending\n"
 msgstr	""
 
-#: src/lang.c:1452
+#: src/lang.c:1464
 msgid	"Put cursor at first/last unread art in groups. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1453
+#: src/lang.c:1465
 msgid	"Goto first unread article in group"
 msgstr	""
 
-#: src/lang.c:1454
+#: src/lang.c:1466
 msgid	"# If ON put cursor at first unread art in group otherwise last art\n"
 msgstr	""
 
-#: src/lang.c:1458
+#: src/lang.c:1470
 msgid	"Show all articles or only unread articles. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1459
+#: src/lang.c:1471
 msgid	"Show only unread articles"
 msgstr	""
 
-#: src/lang.c:1460
+#: src/lang.c:1472
 msgid	"# If ON show only new/unread articles otherwise show all.\n"
 msgstr	""
 
-#: src/lang.c:1465
+#: src/lang.c:1477
 msgid	"Show only groups with unread arts"
 msgstr	""
 
-#: src/lang.c:1466
+#: src/lang.c:1478
 msgid	"# If ON show only subscribed to groups that contain unread articles.\n"
 msgstr	""
 
-#: src/lang.c:1471
+#: src/lang.c:1483
 msgid	"Filter which articles"
 msgstr	""
 
-#: src/lang.c:1472
+#: src/lang.c:1484
 msgid	"# Filter which articles\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = only kill unread articles\n"
@@ -4239,184 +4252,184 @@ msgid	"# Filter which articles\n"
 	"#   2 = kill all articles and never show them\n"
 msgstr	""
 
-#: src/lang.c:1481
+#: src/lang.c:1493
 msgid	"Tab goes to next unread article"
 msgstr	""
 
-#: src/lang.c:1482
+#: src/lang.c:1494
 msgid	"# If ON the TAB command will go to next unread article at article viewer "
 	"level\n"
 msgstr	""
 
-#: src/lang.c:1486
+#: src/lang.c:1498
 msgid	"Scrolling with <SPACE> past the end of an art. jumps to the next unread one."
 msgstr	""
 
-#: src/lang.c:1487
+#: src/lang.c:1499
 msgid	"Space goes to next unread article"
 msgstr	""
 
-#: src/lang.c:1488
+#: src/lang.c:1500
 msgid	"# If ON the SPACE command will go to next unread article at article viewer\n"
 	"# level when the end of the article is reached (rn-style pager)\n"
 msgstr	""
 
-#: src/lang.c:1493
+#: src/lang.c:1505
 msgid	"Scrolling with <PGDN>/<DOWN> past the end of an art. jumps to the unread one."
 msgstr	""
 
-#: src/lang.c:1494
+#: src/lang.c:1506
 msgid	"PgDn goes to next unread article"
 msgstr	""
 
-#: src/lang.c:1495
+#: src/lang.c:1507
 msgid	"# If ON the PGDN or DOWN command will go to next unread article when\n"
 	"# pressed at end of message\n"
 msgstr	""
 
-#: src/lang.c:1501
+#: src/lang.c:1513
 msgid	"List thread using right arrow key"
 msgstr	""
 
-#: src/lang.c:1502
+#: src/lang.c:1514
 msgid	"# If ON automatically list thread when entering it using right arrow key.\n"
 msgstr	""
 
-#: src/lang.c:1506
+#: src/lang.c:1518
 msgid	"Enter character to indicate deleted articles. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1507
+#: src/lang.c:1519
 msgid	"Character to show deleted articles"
 msgstr	""
 
-#: src/lang.c:1508
+#: src/lang.c:1520
 msgid	"# Character used to show that an art was deleted (default 'D')\n"
 	"# _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1513
+#: src/lang.c:1525
 msgid	"Enter character to indicate articles in a range. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1514
+#: src/lang.c:1526
 msgid	"Character to show inrange articles"
 msgstr	""
 
-#: src/lang.c:1515
+#: src/lang.c:1527
 msgid	"# Character used to show that an art is in a range (default '#')\n"
 	"# _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1520
+#: src/lang.c:1532
 msgid	"Enter character to indicate that article will return. <CR> sets, <ESC> "
 	"cancels."
 msgstr	""
 
-#: src/lang.c:1521
+#: src/lang.c:1533
 msgid	"Character to show returning arts"
 msgstr	""
 
-#: src/lang.c:1522
+#: src/lang.c:1534
 msgid	"# Character used to show that an art will return (default '-')\n"
 	"# _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1527
+#: src/lang.c:1539
 msgid	"Enter character to indicate selected articles. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1528
+#: src/lang.c:1540
 msgid	"Character to show selected articles"
 msgstr	""
 
-#: src/lang.c:1529
+#: src/lang.c:1541
 msgid	"# Character used to show that an art was auto-selected (default '*')\n"
 	"# _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1534
+#: src/lang.c:1546
 msgid	"Enter character to indicate recent articles. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1535
+#: src/lang.c:1547
 msgid	"Character to show recent articles"
 msgstr	""
 
-#: src/lang.c:1536
+#: src/lang.c:1548
 msgid	"# Character used to show that an art is recent (default 'o')\n"
 	"# _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1541
+#: src/lang.c:1553
 msgid	"Enter character to indicate unread articles. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1542
+#: src/lang.c:1554
 msgid	"Character to show unread articles"
 msgstr	""
 
-#: src/lang.c:1543
+#: src/lang.c:1555
 msgid	"# Character used to show that an art is unread (default '+')\n"
 	"# _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1548
+#: src/lang.c:1560
 msgid	"Enter character to indicate read articles. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1549
+#: src/lang.c:1561
 msgid	"Character to show read articles"
 msgstr	""
 
-#: src/lang.c:1550
+#: src/lang.c:1562
 msgid	"# Character used to show that an art was read (default ' ')\n"
 	"# _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1555
+#: src/lang.c:1567
 msgid	"Enter character to indicate killed articles. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1556
+#: src/lang.c:1568
 msgid	"Character to show killed articles"
 msgstr	""
 
-#: src/lang.c:1557
+#: src/lang.c:1569
 msgid	"# Character used to show that an art was killed (default 'K')\n"
 	"# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1562
+#: src/lang.c:1574
 msgid	"Enter character to indicate read selected articles. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1563
+#: src/lang.c:1575
 msgid	"Character to show readselected arts"
 msgstr	""
 
-#: src/lang.c:1564
+#: src/lang.c:1576
 msgid	"# Character used to show that an art was selected before read (default ':')\n"
 	"# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr	""
 
-#: src/lang.c:1569
+#: src/lang.c:1581
 msgid	"Enter maximum length of newsgroup names displayed. <CR> sets."
 msgstr	""
 
-#: src/lang.c:1570
+#: src/lang.c:1582
 msgid	"Max. length of group names shown"
 msgstr	""
 
-#: src/lang.c:1571
+#: src/lang.c:1583
 msgid	"# Maximum length of the names of newsgroups displayed\n"
 msgstr	""
 
-#: src/lang.c:1576
+#: src/lang.c:1588
 msgid	"Show lines/score in listings"
 msgstr	""
 
-#: src/lang.c:1577
+#: src/lang.c:1589
 msgid	"# What informations should be displayed in article/thread listing\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4425,16 +4438,16 @@ msgid	"# What informations should be dis
 	"#   3 = lines & score\n"
 msgstr	""
 
-#: src/lang.c:1586
+#: src/lang.c:1598
 msgid	"0 = full page scrolling, -1 = show previous last line as first on next page, "
 	"-2 = half page"
 msgstr	""
 
-#: src/lang.c:1587
+#: src/lang.c:1599
 msgid	"Number of lines to scroll in pager"
 msgstr	""
 
-#: src/lang.c:1588
+#: src/lang.c:1600
 msgid	"# Number of lines that cursor-up/down will scroll in article pager\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#  -2 = half-page scrolling\n"
@@ -4450,27 +4463,27 @@ msgstr	"# Number of lines that cursor-up
 	"# * 1 = line-by-line\n"
 	"#   2 or greater = scroll by 2 or more lines (only in the pager)\n"
 
-#: src/lang.c:1598
+#: src/lang.c:1610
 msgid	"Display signatures. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1599
+#: src/lang.c:1611
 msgid	"Display signatures"
 msgstr	""
 
-#: src/lang.c:1600
+#: src/lang.c:1612
 msgid	"# If OFF don't show signatures when displaying articles\n"
 msgstr	""
 
-#: src/lang.c:1604
+#: src/lang.c:1616
 msgid	"Display uuencoded data as tagged attachments. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1605
+#: src/lang.c:1617
 msgid	"Display uue data as an attachment"
 msgstr	""
 
-#: src/lang.c:1606
+#: src/lang.c:1618
 msgid	"# Handling of uuencoded data in the pager\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no, display raw uuencoded data\n"
@@ -4480,28 +4493,28 @@ msgid	"# Handling of uuencoded data in t
 	"#       be folded into a tag line.\n"
 msgstr	""
 
-#: src/lang.c:1616
+#: src/lang.c:1628
 msgid	"Decode German style TeX umlaut codes to ISO. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1617
+#: src/lang.c:1629
 msgid	"Display \"a as Umlaut-a"
 msgstr	""
 
-#: src/lang.c:1618
+#: src/lang.c:1630
 msgid	"# If ON decode German style TeX umlaut codes to ISO and\n"
 	"# show \"a as Umlaut-a, etc.\n"
 msgstr	""
 
-#: src/lang.c:1623 src/lang.c:1633
+#: src/lang.c:1635 src/lang.c:1645
 msgid	"Space separated list of header fields"
 msgstr	""
 
-#: src/lang.c:1624
+#: src/lang.c:1636
 msgid	"Display these header fields (or *)"
 msgstr	""
 
-#: src/lang.c:1625
+#: src/lang.c:1637
 msgid	"# Which news headers you wish to see. If you want to see _all_ the headers,\n"
 	"# place an '*' as this value. This is the only way a wildcard can be used.\n"
 	"# If you enter 'X-' as the value, you will see all headers beginning with\n"
@@ -4510,11 +4523,11 @@ msgid	"# Which news headers you wish to 
 	"# spaces. Not defining anything turns off this option.\n"
 msgstr	""
 
-#: src/lang.c:1634
+#: src/lang.c:1646
 msgid	"Do not display these header fields"
 msgstr	""
 
-#: src/lang.c:1635
+#: src/lang.c:1647
 msgid	"# Same as 'news_headers_to_display' except it denotes the opposite.\n"
 	"# An example of using both options might be if you thought X- headers were\n"
 	"# A Good Thing(tm), but thought Alan and Pape were miscreants...well then "
@@ -4525,579 +4538,579 @@ msgid	"# Same as 'news_headers_to_displa
 	"# Not defining anything turns off this option.\n"
 msgstr	""
 
-#: src/lang.c:1645
+#: src/lang.c:1657
 msgid	"Do you want to enable automatic handling of multipart/alternative articles?"
 msgstr	""
 
-#: src/lang.c:1646
+#: src/lang.c:1658
 msgid	"Skip multipart/alternative parts"
 msgstr	""
 
-#: src/lang.c:1647
+#: src/lang.c:1659
 msgid	"# If ON strip multipart/alternative messages automatically\n"
 msgstr	""
 
-#: src/lang.c:1652
+#: src/lang.c:1664
 msgid	"A regex used to decide which lines to show in col_quote."
 msgstr	""
 
-#: src/lang.c:1653
+#: src/lang.c:1665
 msgid	"Regex used to show quoted lines"
 msgstr	""
 
-#: src/lang.c:1654
+#: src/lang.c:1666
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted when viewing articles. Quoted lines are shown in col_quote.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
 msgstr	""
 
-#: src/lang.c:1660
+#: src/lang.c:1672
 msgid	"A regex used to decide which lines to show in col_quote2."
 msgstr	""
 
-#: src/lang.c:1661
+#: src/lang.c:1673
 msgid	"Regex used to show twice quoted l."
 msgstr	""
 
-#: src/lang.c:1662
+#: src/lang.c:1674
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted twice. Twice quoted lines are shown in col_quote2.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
 msgstr	""
 
-#: src/lang.c:1668
+#: src/lang.c:1680
 msgid	"A regex used to decide which lines to show in col_quote3."
 msgstr	""
 
-#: src/lang.c:1669
+#: src/lang.c:1681
 msgid	"Regex used to show >= 3 times q.l."
 msgstr	""
 
-#: src/lang.c:1670
+#: src/lang.c:1682
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted >=3 times. >=3 times quoted lines are shown in col_quote3.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
 msgstr	""
 
-#: src/lang.c:1677
+#: src/lang.c:1689
 msgid	"A regex used to decide which words to show in col_markslashes."
 msgstr	""
 
-#: src/lang.c:1678
+#: src/lang.c:1690
 msgid	"Regex used to highlight /slashes/"
 msgstr	""
 
-#: src/lang.c:1679
+#: src/lang.c:1691
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '/' are to be shown in col_markslashes.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
 msgstr	""
 
-#: src/lang.c:1685
+#: src/lang.c:1697
 msgid	"A regex used to decide which words to show in col_markstars."
 msgstr	""
 
-#: src/lang.c:1686
+#: src/lang.c:1698
 msgid	"Regex used to highlight *stars*"
 msgstr	""
 
-#: src/lang.c:1687
+#: src/lang.c:1699
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '*' are to be shown in col_markstars.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
 msgstr	""
 
-#: src/lang.c:1693
+#: src/lang.c:1705
 msgid	"A regex used to decide which words to show in col_markstroke."
 msgstr	""
 
-#: src/lang.c:1694
+#: src/lang.c:1706
 msgid	"Regex used to highlight -strokes-"
 msgstr	""
 
-#: src/lang.c:1695
+#: src/lang.c:1707
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '-' are to be shown in col_markstroke.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
 msgstr	""
 
-#: src/lang.c:1701
+#: src/lang.c:1713
 msgid	"A regex used to decide which words to show in col_markdash."
 msgstr	""
 
-#: src/lang.c:1702
+#: src/lang.c:1714
 msgid	"Regex used to highlight _underline_"
 msgstr	""
 
-#: src/lang.c:1703
+#: src/lang.c:1715
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '_' are to be shown in col_markdash.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
 msgstr	""
 
-#: src/lang.c:1709
+#: src/lang.c:1721
 msgid	"A regex used to find Subject prefixes to remove.  Use '|' as separator."
 msgstr	""
 
-#: src/lang.c:1710
+#: src/lang.c:1722
 msgid	"Regex with Subject prefixes"
 msgstr	""
 
-#: src/lang.c:1711
+#: src/lang.c:1723
 msgid	"# A regular expression that tin will use to find Subject prefixes\n"
 	"# which will be removed before showing the header.\n"
 msgstr	""
 
-#: src/lang.c:1716
+#: src/lang.c:1728
 msgid	"A regex used to find Subject suffixes to remove.  Use '|' as separator."
 msgstr	""
 
-#: src/lang.c:1717
+#: src/lang.c:1729
 msgid	"Regex with Subject suffixes"
 msgstr	""
 
-#: src/lang.c:1718
+#: src/lang.c:1730
 msgid	"# A regular expression that tin will use to find Subject suffixes\n"
 	"# which will be removed when replying or posting followup.\n"
 msgstr	""
 
-#: src/lang.c:1723
+#: src/lang.c:1735
 msgid	"Enter name and options for external MIME viewer, --internal for built-in "
 	"viewer"
 msgstr	""
 
-#: src/lang.c:1724
+#: src/lang.c:1736
 msgid	"MIME binary content viewer"
 msgstr	""
 
-#: src/lang.c:1725
+#: src/lang.c:1737
 msgid	"# If --internal automatically use the built in MIME viewer for non-text\n"
 	"# parts of articles.\n"
 	"# Otherwise specify an external viewer program (eg, metamail) or leave blank\n"
 	"# for no automatic viewing\n"
 msgstr	""
 
-#: src/lang.c:1732
+#: src/lang.c:1744
 msgid	"Confirm before starting non-text viewing program"
 msgstr	""
 
-#: src/lang.c:1733
+#: src/lang.c:1745
 msgid	"Ask before using MIME viewer"
 msgstr	""
 
-#: src/lang.c:1734
+#: src/lang.c:1746
 msgid	"# If ON tin will ask before using metamail to display MIME messages\n"
 	"# this only happens if metamail_prog is set to something\n"
 msgstr	""
 
-#: src/lang.c:1739
+#: src/lang.c:1751
 msgid	"Ask to mark groups read when quitting. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:1740
+#: src/lang.c:1752
 msgid	"Catchup read groups when quitting"
 msgstr	""
 
-#: src/lang.c:1741
+#: src/lang.c:1753
 msgid	"# If ON ask user if read groups should all be marked read\n"
 msgstr	""
 
-#: src/lang.c:1746
+#: src/lang.c:1758
 msgid	"Catchup group using left key"
 msgstr	""
 
-#: src/lang.c:1747
+#: src/lang.c:1759
 msgid	"# If ON catchup group/thread when leaving with the left arrow key.\n"
 msgstr	""
 
-#: src/lang.c:1752
+#: src/lang.c:1764
 msgid	"Catchup thread by using left key"
 msgstr	""
 
-#: src/lang.c:1758
+#: src/lang.c:1770
 msgid	"Which actions require confirmation"
 msgstr	""
 
-#: src/lang.c:1759
+#: src/lang.c:1771
 msgid	"# What should we ask confirmation for.\n"
 msgstr	""
 
-#: src/lang.c:1764
+#: src/lang.c:1776
 msgid	"'Mark article read' ignores tags"
 msgstr	""
 
-#: src/lang.c:1765
+#: src/lang.c:1777
 msgid	"# If ON the 'Mark article read' function marks only the current article.\n"
 msgstr	""
 
-#: src/lang.c:1769
+#: src/lang.c:1781
 msgid	"Program to run to open URL's, <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:1770
+#: src/lang.c:1782
 msgid	"Program that opens URL's"
 msgstr	""
 
-#: src/lang.c:1771
+#: src/lang.c:1783
 msgid	"# The program used to open URL's. The actual URL will be appended\n"
 msgstr	""
 
-#: src/lang.c:1776
+#: src/lang.c:1788
 msgid	"Use mouse in xterm"
 msgstr	""
 
-#: src/lang.c:1777
+#: src/lang.c:1789
 msgid	"# If ON enable mouse key support on xterm terminals\n"
 msgstr	""
 
-#: src/lang.c:1783
+#: src/lang.c:1795
 msgid	"Use scroll keys on keypad"
 msgstr	""
 
-#: src/lang.c:1784
+#: src/lang.c:1796
 msgid	"# If ON enable scroll keys on terminals that support it\n"
 msgstr	""
 
-#: src/lang.c:1789
+#: src/lang.c:1801
 msgid	"Enter maximum number of article to get. <CR> sets."
 msgstr	""
 
-#: src/lang.c:1790
+#: src/lang.c:1802
 msgid	"Number of articles to get"
 msgstr	""
 
-#: src/lang.c:1791
+#: src/lang.c:1803
 msgid	"# Number of articles to get (0=no limit), if negative sets maximum number\n"
 	"# of already read articles to be read before first unread one\n"
 msgstr	""
 
-#: src/lang.c:1796
+#: src/lang.c:1808
 msgid	"Enter number of days article is considered recent. <CR> sets."
 msgstr	""
 
-#: src/lang.c:1797
+#: src/lang.c:1809
 msgid	"Article recentness time limit"
 msgstr	""
 
-#: src/lang.c:1798
+#: src/lang.c:1810
 msgid	"# Number of days in which article is considered recent, (0=OFF)\n"
 msgstr	""
 
-#: src/lang.c:1802
+#: src/lang.c:1814
 msgid	"WILDMAT for normal wildcards, REGEX for full regular expression matching."
 msgstr	""
 
-#: src/lang.c:1803
+#: src/lang.c:1815
 msgid	"Wildcard matching"
 msgstr	""
 
-#: src/lang.c:1804
+#: src/lang.c:1816
 msgid	"# Wildcard matching\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = wildmat\n"
 	"#   1 = regex\n"
 msgstr	""
 
-#: src/lang.c:1811
+#: src/lang.c:1823
 msgid	"Enter minimal score before an article is marked killed. <CR> sets."
 msgstr	""
 
-#: src/lang.c:1812
+#: src/lang.c:1824
 msgid	"Score limit (kill)"
 msgstr	""
 
-#: src/lang.c:1813
+#: src/lang.c:1825
 msgid	"# Score limit before an article is marked killed\n"
 msgstr	""
 
-#: src/lang.c:1817
+#: src/lang.c:1829
 msgid	"Enter default score to kill articles. <CR> sets."
 msgstr	""
 
-#: src/lang.c:1818
+#: src/lang.c:1830
 msgid	"Default score to kill articles"
 msgstr	""
 
-#: src/lang.c:1819
+#: src/lang.c:1831
 msgid	"# Default score to kill articles\n"
 msgstr	""
 
-#: src/lang.c:1823
+#: src/lang.c:1835
 msgid	"Enter minimal score before an article is marked hot. <CR> sets."
 msgstr	""
 
-#: src/lang.c:1824
+#: src/lang.c:1836
 msgid	"Score limit (select)"
 msgstr	""
 
-#: src/lang.c:1825
+#: src/lang.c:1837
 msgid	"# Score limit before an article is marked hot\n"
 msgstr	""
 
-#: src/lang.c:1829
+#: src/lang.c:1841
 msgid	"Enter default score to select articles. <CR> sets."
 msgstr	""
 
-#: src/lang.c:1830
+#: src/lang.c:1842
 msgid	"Default score to select articles"
 msgstr	""
 
-#: src/lang.c:1831
+#: src/lang.c:1843
 msgid	"# Default score to select articles\n"
 msgstr	""
 
-#: src/lang.c:1837
+#: src/lang.c:1849
 msgid	"Use slrnface to show ''X-Face:''s"
 msgstr	""
 
-#: src/lang.c:1838
+#: src/lang.c:1850
 msgid	"# If ON using slrnface(1) to interpret the ''X-Face:'' header.\n"
 	"# Only useful when running in an xterm.\n"
 msgstr	""
 
-#: src/lang.c:1846
+#: src/lang.c:1858
 msgid	"Use ANSI color"
 msgstr	"Use ANSI colour"
 
-#: src/lang.c:1847
+#: src/lang.c:1859
 msgid	"# If ON using ANSI-color\n"
 msgstr	"# If ON using ANSI-colour\n"
 
-#: src/lang.c:1852
+#: src/lang.c:1864
 msgid	"Standard foreground color"
 msgstr	"Standard foreground colour"
 
-#: src/lang.c:1853
+#: src/lang.c:1865
 msgid	"# Standard foreground color\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Standard foreground colour\n"
 	"# Default: -1 (default colour)\n"
 
-#: src/lang.c:1859
+#: src/lang.c:1871
 msgid	"Standard background color"
 msgstr	"Standard background colour"
 
-#: src/lang.c:1860
+#: src/lang.c:1872
 msgid	"# Standard background color\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Standard background colour\n"
 	"# Default: -1 (default colour)\n"
 
-#: src/lang.c:1866
+#: src/lang.c:1878
 msgid	"Color for inverse text (background)"
 msgstr	"Colour for inverse text (bg)"
 
-#: src/lang.c:1867
+#: src/lang.c:1879
 msgid	"# Color of background for inverse text\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Colour of background for inverse text\n"
 	"# Default: 4 (blue)\n"
 
-#: src/lang.c:1873
+#: src/lang.c:1885
 msgid	"Color for inverse text (foreground)"
 msgstr	"Colour for inverse text (fg)"
 
-#: src/lang.c:1874
+#: src/lang.c:1886
 msgid	"# Color of foreground for inverse text\n"
 	"# Default: 7 (white)\n"
 msgstr	"# Colour of foreground for inverse text\n"
 	"# Default: 7 (white)\n"
 
-#: src/lang.c:1880
+#: src/lang.c:1892
 msgid	"Color of text lines"
 msgstr	"Colour of text lines"
 
-#: src/lang.c:1881
+#: src/lang.c:1893
 msgid	"# Color of text lines\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Colour of text lines\n"
 	"# Default: -1 (default colour\n"
 
-#: src/lang.c:1887
+#: src/lang.c:1899
 msgid	"Color of mini help menu"
 msgstr	"Colour of mini help menu"
 
-#: src/lang.c:1888
+#: src/lang.c:1900
 msgid	"# Color of mini help menu\n"
 	"# Default: 3 (brown)\n"
 msgstr	"# Colour of mini help menu\n"
 	"# Default: 3 (brown)\n"
 
-#: src/lang.c:1894
+#: src/lang.c:1906
 msgid	"Color of help text"
 msgstr	"Colour of help text"
 
-#: src/lang.c:1895
+#: src/lang.c:1907
 msgid	"# Color of help pages\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Colour of help pages\n"
 	"# Default: -1 (default colour)\n"
 
-#: src/lang.c:1901
+#: src/lang.c:1913
 msgid	"Color of status messages"
 msgstr	"Colour of status messages"
 
-#: src/lang.c:1902
+#: src/lang.c:1914
 msgid	"# Color of messages in last line\n"
 	"# Default: 6 (cyan)\n"
 msgstr	"# Colour of messages in last line\n"
 	"# Default: 6 (cyan)\n"
 
-#: src/lang.c:1908
+#: src/lang.c:1920
 msgid	"Color of quoted lines"
 msgstr	"Colour of quoted lines"
 
-#: src/lang.c:1909
+#: src/lang.c:1921
 msgid	"# Color of quote-lines\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Colour of quote-lines\n"
 	"# Default: 2 (green)\n"
 
-#: src/lang.c:1915
+#: src/lang.c:1927
 msgid	"Color of twice quoted line"
 msgstr	"Colour of twice quoted line"
 
-#: src/lang.c:1916
+#: src/lang.c:1928
 msgid	"# Color of twice quoted lines\n"
 	"# Default: 3 (brown)\n"
 msgstr	"# Colour of twice quoted lines\n"
 	"# Default: 3 (brown)\n"
 
-#: src/lang.c:1922
+#: src/lang.c:1934
 msgid	"Color of =>3 times quoted line"
 msgstr	"Colour of =>3 times quoted line"
 
-#: src/lang.c:1923
+#: src/lang.c:1935
 msgid	"# Color of >=3 times quoted lines\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Colour of >=3 times quoted lines\n"
 	"# Default: 4 (blue)\n"
 
-#: src/lang.c:1929
+#: src/lang.c:1941
 msgid	"Color of article header lines"
 msgstr	"Colour of article header lines"
 
-#: src/lang.c:1930
+#: src/lang.c:1942
 msgid	"# Color of header-lines\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Colour of header-lines\n"
 	"# Default: 2 (green)\n"
 
-#: src/lang.c:1936
+#: src/lang.c:1948
 msgid	"Color of actual news header fields"
 msgstr	"Colour of actual news header fields"
 
-#: src/lang.c:1937
+#: src/lang.c:1949
 msgid	"# Color of actual news header fields\n"
 	"# Default: 9 (light red)\n"
 msgstr	"# Colour of actual news header fields\n"
 	"# Default: 9 (light red)\n"
 
-#: src/lang.c:1943
+#: src/lang.c:1955
 msgid	"Color of article subject lines"
 msgstr	"Colour of article subject lines"
 
-#: src/lang.c:1944
+#: src/lang.c:1956
 msgid	"# Color of article subject\n"
 	"# Default: 6 (cyan)\n"
 msgstr	"# Colour of article subject\n"
 	"# Default: 6 (cyan)\n"
 
-#: src/lang.c:1950
+#: src/lang.c:1962
 msgid	"Color of response counter"
 msgstr	"Colour of response counter"
 
-#: src/lang.c:1951
+#: src/lang.c:1963
 msgid	"# Color of response counter\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Colour of response counter\n"
 	"# Default: 2 (green)\n"
 
-#: src/lang.c:1957
+#: src/lang.c:1969
 msgid	"Color of sender (From:)"
 msgstr	"Colour of sender (From:)"
 
-#: src/lang.c:1958
+#: src/lang.c:1970
 msgid	"# Color of sender (From:)\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Colour of sender (From:)\n"
 	"# Default: 2 (green)\n"
 
-#: src/lang.c:1964
+#: src/lang.c:1976
 msgid	"Color of help/mail sign"
 msgstr	"Colour of help/mail sign"
 
-#: src/lang.c:1965
+#: src/lang.c:1977
 msgid	"# Color of Help/Mail-Sign\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Colour of Help/Mail-Sign\n"
 	"# Default: 4 (blue)\n"
 
-#: src/lang.c:1971
+#: src/lang.c:1983
 msgid	"Color of signatures"
 msgstr	"Colour of signatures"
 
-#: src/lang.c:1972
+#: src/lang.c:1984
 msgid	"# Color of signature\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Colour of signature\n"
 	"# Default: 4 (blue)\n"
 
-#: src/lang.c:1978
+#: src/lang.c:1990
 msgid	"Color of highlighted URLs"
 msgstr	"Colour of highlighted URLs"
 
-#: src/lang.c:1979
+#: src/lang.c:1991
 msgid	"# Color of highlighted URLs\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Colour of highlighted URLs\n"
 	"# Default: -1 (default colour)\n"
 
-#: src/lang.c:1985
+#: src/lang.c:1997
 msgid	"Color of highlighting with *stars*"
 msgstr	"Colour of highlighting with *stars*"
 
-#: src/lang.c:1986
+#: src/lang.c:1998
 msgid	"# Color of word highlighting with *stars*\n"
 	"# Default: 11 (yellow)\n"
 msgstr	"# Colour of word highlighting with *stars*\n"
 	"# Default: 11 (yellow)\n"
 
-#: src/lang.c:1992
+#: src/lang.c:2004
 msgid	"Color of highlighting with _dash_"
 msgstr	"Colour of highlighting with _dash_"
 
-#: src/lang.c:1993
+#: src/lang.c:2005
 msgid	"# Color of word highlighting with _dash_\n"
 	"# Default: 13 (light pink)\n"
 msgstr	"# Colour of word highlighting with _dash_\n"
 	"# Default: 13 (light pink)\n"
 
-#: src/lang.c:1999
+#: src/lang.c:2011
 msgid	"Color of highlighting with /slash/"
 msgstr	"Colour of highlighting with /slash/"
 
-#: src/lang.c:2000
+#: src/lang.c:2012
 msgid	"# Color of word highlighting with /slash/\n"
 	"# Default: 14 (light cyan)\n"
 msgstr	"# Colour of word highlighting with /slash/\n"
 	"# Default: 14 (light cyan)\n"
 
-#: src/lang.c:2006
+#: src/lang.c:2018
 msgid	"Color of highlighting with -stroke-"
 msgstr	"Colour of highlighting w. -stroke-"
 
-#: src/lang.c:2007
+#: src/lang.c:2019
 msgid	"# Color of word highlighting with -stroke-\n"
 	"# Default: 12 (light blue)\n"
 msgstr	"# Colour of word highlighting with -stroke-\n"
 	"# Default: 12 (light blue)\n"
 
-#: src/lang.c:2014
+#: src/lang.c:2026
 msgid	"Attr. of highlighting with *stars*"
 msgstr	""
 
-#: src/lang.c:2015
+#: src/lang.c:2027
 msgid	"# Attributes of word highlighting on mono terminals\n"
 	"# Possible values are:\n"
 	"#   0 = Normal\n"
@@ -5112,54 +5125,54 @@ msgid	"# Attributes of word highlighting
 	"# Default: 6 (bold)\n"
 msgstr	""
 
-#: src/lang.c:2030
+#: src/lang.c:2042
 msgid	"Attr. of highlighting with _dash_"
 msgstr	""
 
-#: src/lang.c:2031
+#: src/lang.c:2043
 msgid	"# Attribute of word highlighting with _dash_\n"
 	"# Default: 2 (best highlighting)\n"
 msgstr	""
 
-#: src/lang.c:2037
+#: src/lang.c:2049
 msgid	"Attr. of highlighting with /slash/"
 msgstr	""
 
-#: src/lang.c:2038
+#: src/lang.c:2050
 msgid	"# Attribute of word highlighting with /slash/\n"
 	"# Default: 5 (half bright)\n"
 msgstr	""
 
-#: src/lang.c:2044
+#: src/lang.c:2056
 msgid	"Attr. of highlighting with -stroke-"
 msgstr	""
 
-#: src/lang.c:2045
+#: src/lang.c:2057
 msgid	"# Attribute of word highlighting with -stroke-\n"
 	"# Default: 3 (reverse video)\n"
 msgstr	""
 
-#: src/lang.c:2051
+#: src/lang.c:2063
 msgid	"URL highlighting in message body"
 msgstr	""
 
-#: src/lang.c:2052
+#: src/lang.c:2064
 msgid	"# Enable URL highlighting?\n"
 msgstr	""
 
-#: src/lang.c:2057
+#: src/lang.c:2069
 msgid	"Word highlighting in message body"
 msgstr	""
 
-#: src/lang.c:2058
+#: src/lang.c:2070
 msgid	"# Enable word highlighting?\n"
 msgstr	""
 
-#: src/lang.c:2063
+#: src/lang.c:2075
 msgid	"What to display instead of mark"
 msgstr	""
 
-#: src/lang.c:2064
+#: src/lang.c:2076
 msgid	"# Should the leading and ending stars and dashes also be displayed,\n"
 	"# even when they are highlighting marks?\n"
 	"# Possible values are (the default is marked with *):\n"
@@ -5168,55 +5181,55 @@ msgid	"# Should the leading and ending s
 	"# * 2 = print a space instead\n"
 msgstr	""
 
-#: src/lang.c:2073
+#: src/lang.c:2085
 msgid	"Enter column number to wrap article lines to in the pager. <CR> sets."
 msgstr	""
 
-#: src/lang.c:2074
+#: src/lang.c:2086
 msgid	"Page line wrap column"
 msgstr	""
 
-#: src/lang.c:2075
+#: src/lang.c:2087
 msgid	"# Wrap article lines at column\n"
 msgstr	""
 
-#: src/lang.c:2080
+#: src/lang.c:2092
 msgid	"Wrap around threads on next unread"
 msgstr	""
 
-#: src/lang.c:2081
+#: src/lang.c:2093
 msgid	"# If ON wrap around threads on searching next unread article\n"
 msgstr	""
 
-#: src/lang.c:2085
+#: src/lang.c:2097
 msgid	"Enter default mail address (and fullname). <CR> sets."
 msgstr	""
 
-#: src/lang.c:2086
+#: src/lang.c:2098
 msgid	"Mail address (and fullname)"
 msgstr	""
 
-#: src/lang.c:2087
+#: src/lang.c:2099
 msgid	"# User's mail address (and fullname), if not username@host (fullname)\n"
 msgstr	""
 
-#: src/lang.c:2092
+#: src/lang.c:2104
 msgid	"Show empty Followup-To in editor"
 msgstr	""
 
-#: src/lang.c:2093
+#: src/lang.c:2105
 msgid	"# If ON show empty Followup-To header when editing an article\n"
 msgstr	""
 
-#: src/lang.c:2097
+#: src/lang.c:2109
 msgid	"Enter path/! command/--none to create your default signature. <CR> sets."
 msgstr	""
 
-#: src/lang.c:2098
+#: src/lang.c:2110
 msgid	"Create signature from path/command"
 msgstr	""
 
-#: src/lang.c:2099
+#: src/lang.c:2111
 msgid	"# Signature path (random sigs)/file to be used when posting/replying\n"
 	"# default_sigfile=file       appends file as signature\n"
 	"# default_sigfile=!command   executes external command to generate a "
@@ -5224,48 +5237,48 @@ msgid	"# Signature path (random sigs)/fi
 	"# default_sigfile=--none     don't append a signature\n"
 msgstr	""
 
-#: src/lang.c:2106
+#: src/lang.c:2118
 msgid	"Prepend signature with \"-- \" on own line. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2107
+#: src/lang.c:2119
 msgid	"Prepend signature with \"-- \""
 msgstr	""
 
-#: src/lang.c:2108
+#: src/lang.c:2120
 msgid	"# If ON prepend the signature with dashes '\\n-- \\n'\n"
 msgstr	""
 
-#: src/lang.c:2112
+#: src/lang.c:2124
 msgid	"Add signature when reposting articles. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2113
+#: src/lang.c:2125
 msgid	"Add signature when reposting"
 msgstr	""
 
-#: src/lang.c:2114
+#: src/lang.c:2126
 msgid	"# If ON add signature to reposted articles\n"
 msgstr	""
 
-#: src/lang.c:2118
+#: src/lang.c:2130
 msgid	"Enter quotation marks, %s or %S for author's initials."
 msgstr	""
 
-#: src/lang.c:2119
+#: src/lang.c:2131
 msgid	"Characters used as quote-marks"
 msgstr	""
 
-#: src/lang.c:2120
+#: src/lang.c:2132
 msgid	"# Characters used in quoting to followups and replies.\n"
 	"# '_' is replaced by ' ', %%s, %%S are replaced by author's initials.\n"
 msgstr	""
 
-#: src/lang.c:2126
+#: src/lang.c:2138
 msgid	"Quoting behavior"
 msgstr	"Quoting behaviour"
 
-#: src/lang.c:2127
+#: src/lang.c:2139
 msgid	"# How quoting should be handled when following up or replying.\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = Nothing special\n"
@@ -5278,49 +5291,49 @@ msgid	"# How quoting should be handled w
 	"#   7 = Compress quotes, quote signatures, quote empty lines\n"
 msgstr	""
 
-#: src/lang.c:2140 src/lang.c:2148 src/lang.c:2154
+#: src/lang.c:2152 src/lang.c:2160 src/lang.c:2166
 msgid	"%A Addr %D Date %F Addr+Name %G Groupname %M Message-ID %N Name %C First Name"
 msgstr	""
 
-#: src/lang.c:2141
+#: src/lang.c:2153
 msgid	"Quote line when following up"
 msgstr	""
 
-#: src/lang.c:2142
+#: src/lang.c:2154
 msgid	"# Format of quote line when mailing/posting/following-up an article\n"
 	"# %%A Address    %%D Date   %%F Addr+Name   %%G Groupname   %%M Message-ID\n"
 	"# %%N Full Name  %%C First Name   %%I Initials\n"
 msgstr	""
 
-#: src/lang.c:2149
+#: src/lang.c:2161
 msgid	"Quote line when cross-posting"
 msgstr	""
 
-#: src/lang.c:2155
+#: src/lang.c:2167
 msgid	"Quote line when mailing"
 msgstr	""
 
-#: src/lang.c:2160
+#: src/lang.c:2172
 msgid	"If ON, include User-Agent: header. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2161
+#: src/lang.c:2173
 msgid	"Insert 'User-Agent:'-header"
 msgstr	""
 
-#: src/lang.c:2162
+#: src/lang.c:2174
 msgid	"# If ON include advertising User-Agent: header\n"
 msgstr	""
 
-#: src/lang.c:2167
+#: src/lang.c:2179
 msgid	"Enter charset name for MIME (e.g. US-ASCII, ISO-8859-1, EUC-KR), <CR> to set."
 msgstr	""
 
-#: src/lang.c:2168
+#: src/lang.c:2180
 msgid	"MM_CHARSET"
 msgstr	""
 
-#: src/lang.c:2169
+#: src/lang.c:2181
 msgid	"# Charset supported locally which is also used for MIME header and\n"
 	"# Content-Type header.\n"
 	"# If not set, the value of the environment variable MM_CHARSET is used.\n"
@@ -5329,27 +5342,27 @@ msgid	"# Charset supported locally which
 	"# mm_charset is considered not displayable and represented as '?'.\n"
 msgstr	""
 
-#: src/lang.c:2179
+#: src/lang.c:2191
 msgid	"MM_NETWORK_CHARSET"
 msgstr	""
 
-#: src/lang.c:2180
+#: src/lang.c:2192
 msgid	"# Charset used for MIME (Content-Type) header in postings.\n"
 msgstr	""
 
-#: src/lang.c:2186
+#: src/lang.c:2198
 msgid	"Mailbox format"
 msgstr	""
 
-#: src/lang.c:2187
+#: src/lang.c:2199
 msgid	"# Format of the mailbox.\n"
 msgstr	""
 
-#: src/lang.c:2192
+#: src/lang.c:2204
 msgid	"MIME encoding in news messages"
 msgstr	""
 
-#: src/lang.c:2193
+#: src/lang.c:2205
 msgid	"# MIME encoding (8bit, base64, quoted-printable, 7bit) of the body\n"
 	"# for mails and posts, if necessary. QP is efficient for most European\n"
 	"# character sets (ISO-8859-X) with small fraction of non-US-ASCII chars,\n"
@@ -5357,42 +5370,42 @@ msgid	"# MIME encoding (8bit, base64, qu
 	"# Russian charsets with a lot of 8bit characters.\n"
 msgstr	""
 
-#: src/lang.c:2201 src/lang.c:2222
+#: src/lang.c:2213 src/lang.c:2234
 msgid	"Don't change unless you know what you are doing. <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:2202
+#: src/lang.c:2214
 msgid	"Use 8bit characters in news headers"
 msgstr	""
 
-#: src/lang.c:2203
+#: src/lang.c:2215
 msgid	"# If ON, 8bit characters in news headers are NOT encoded.\n"
 	"# default is OFF. Thus 8bit characters are encoded by default.\n"
 	"# 8bit chars in header are encoded regardless of the value of this\n"
 	"# parameter unless post_mime_encoding is 8bit as well.\n"
 msgstr	""
 
-#: src/lang.c:2210
+#: src/lang.c:2222
 msgid	"Auto-view post-processed files <SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:2211
+#: src/lang.c:2223
 msgid	"View post-processed files"
 msgstr	""
 
-#: src/lang.c:2212
+#: src/lang.c:2224
 msgid	"# If set, post processed files will be opened in a viewer\n"
 msgstr	""
 
-#: src/lang.c:2217
+#: src/lang.c:2229
 msgid	"MIME encoding in mail messages"
 msgstr	""
 
-#: src/lang.c:2223
+#: src/lang.c:2235
 msgid	"Use 8bit characters in mail headers"
 msgstr	""
 
-#: src/lang.c:2224
+#: src/lang.c:2236
 msgid	"# If ON, 8bit characters in mail headers are NOT encoded.\n"
 	"# default is OFF. Thus 8bit characters are encoded by default.\n"
 	"# 8bit chars in headers are encoded regardless of the value of this "
@@ -5402,160 +5415,160 @@ msgid	"# If ON, 8bit characters in mail 
 	"# turn it ON unless you have some compelling reason.\n"
 msgstr	""
 
-#: src/lang.c:2234
+#: src/lang.c:2246
 msgid	"Strip blanks from ends of lines"
 msgstr	""
 
-#: src/lang.c:2235
+#: src/lang.c:2247
 msgid	"# If ON strip blanks from ends of lines for faster display on slow "
 	"terminals.\n"
 msgstr	""
 
-#: src/lang.c:2240
+#: src/lang.c:2252
 msgid	"If ON, use transliteration. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2241
+#: src/lang.c:2253
 msgid	"Transliteration"
 msgstr	""
 
-#: src/lang.c:2242
+#: src/lang.c:2254
 msgid	"# If ON, use //TRANSLIT extension. This means that when a character cannot\n"
 	"# be represented in the in the target character set, it can be approximated\n"
 	"# through one or several similarly looking characters.\n"
 msgstr	""
 
-#: src/lang.c:2249
+#: src/lang.c:2261
 msgid	"Send you a carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2250
+#: src/lang.c:2262
 msgid	"Send you a cc automatically"
 msgstr	""
 
-#: src/lang.c:2251
+#: src/lang.c:2263
 msgid	"# If ON automatically put your name in the Cc: field when mailing an article\n"
 msgstr	""
 
-#: src/lang.c:2255
+#: src/lang.c:2267
 msgid	"Send you a blind carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2256
+#: src/lang.c:2268
 msgid	"Send you a blind cc automatically"
 msgstr	""
 
-#: src/lang.c:2257
+#: src/lang.c:2269
 msgid	"# If ON automatically put your name in the Bcc: field when mailing an "
 	"article\n"
 msgstr	""
 
-#: src/lang.c:2261
+#: src/lang.c:2273
 msgid	"Enter address elements about which you want to be warned. <CR> sets."
 msgstr	""
 
-#: src/lang.c:2262
+#: src/lang.c:2274
 msgid	"Spamtrap warning address parts"
 msgstr	""
 
-#: src/lang.c:2263
+#: src/lang.c:2275
 msgid	"# A comma-delimited list of address-parts you want to be warned\n"
 	"# about when trying to reply by email.\n"
 msgstr	""
 
-#: src/lang.c:2268
+#: src/lang.c:2280
 msgid	"Enter default number of days a filter entry will be valid. <CR> sets."
 msgstr	""
 
-#: src/lang.c:2269
+#: src/lang.c:2281
 msgid	"No. of days a filter entry is valid"
 msgstr	""
 
-#: src/lang.c:2270
+#: src/lang.c:2282
 msgid	"# Number of days a short term filter will be active\n"
 msgstr	""
 
-#: src/lang.c:2274
+#: src/lang.c:2286
 msgid	"Add posted articles to filter. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2275
+#: src/lang.c:2287
 msgid	"Add posted articles to filter"
 msgstr	""
 
-#: src/lang.c:2276
+#: src/lang.c:2288
 msgid	"# If ON add posted articles which start a new thread to filter for\n"
 	"# highlighting follow-ups\n"
 msgstr	""
 
-#: src/lang.c:2280
+#: src/lang.c:2292
 msgid	"The directory where articles/threads are to be saved in mailbox format."
 msgstr	""
 
-#: src/lang.c:2281
+#: src/lang.c:2293
 msgid	"Mail directory"
 msgstr	""
 
-#: src/lang.c:2282
+#: src/lang.c:2294
 msgid	"# (-m) directory where articles/threads are saved in mailbox format\n"
 msgstr	""
 
-#: src/lang.c:2287
+#: src/lang.c:2299
 msgid	"Save articles in batch mode (-S)"
 msgstr	""
 
-#: src/lang.c:2288
+#: src/lang.c:2300
 msgid	"# If ON articles/threads will be saved in batch mode when save -S\n"
 	"# or mail (-M/-N) is specified on the command line\n"
 msgstr	""
 
-#: src/lang.c:2293
+#: src/lang.c:2305
 msgid	"The directory where you want articles/threads saved."
 msgstr	""
 
-#: src/lang.c:2294
+#: src/lang.c:2306
 msgid	"Directory to save arts/threads in"
 msgstr	""
 
-#: src/lang.c:2295
+#: src/lang.c:2307
 msgid	"# Directory where articles/threads are saved\n"
 msgstr	""
 
-#: src/lang.c:2299
+#: src/lang.c:2311
 msgid	"Auto save article/thread by Archive-name: header. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2300
+#: src/lang.c:2312
 msgid	"Use Archive-name: header for save"
 msgstr	""
 
-#: src/lang.c:2301
+#: src/lang.c:2313
 msgid	"# If ON articles/threads with Archive-name: in mail header will\n"
 	"# be automatically saved with the Archive-name & part/patch no.\n"
 msgstr	""
 
-#: src/lang.c:2306
+#: src/lang.c:2318
 msgid	"Mark saved articles/threads as read. <SPACE> toggles, <CR> sets, <ESC> "
 	"cancels."
 msgstr	""
 
-#: src/lang.c:2307
+#: src/lang.c:2319
 msgid	"Mark saved articles/threads as read"
 msgstr	""
 
-#: src/lang.c:2308
+#: src/lang.c:2320
 msgid	"# If ON mark articles that are saved as read\n"
 msgstr	""
 
-#: src/lang.c:2312
+#: src/lang.c:2324
 msgid	"Do post processing (eg. extract attachments) for saved articles."
 msgstr	""
 
-#: src/lang.c:2313
+#: src/lang.c:2325
 msgid	"Post process saved articles"
 msgstr	""
 
-#: src/lang.c:2314
+#: src/lang.c:2326
 msgid	"# Perform post processing (saving binary attachments) from saved articles.\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no\n"
@@ -5563,105 +5576,105 @@ msgid	"# Perform post processing (saving
 	"#   2 = yes\n"
 msgstr	""
 
-#: src/lang.c:2323
+#: src/lang.c:2335
 msgid	"Process only unread articles"
 msgstr	""
 
-#: src/lang.c:2324
+#: src/lang.c:2336
 msgid	"# If ON only save/print/pipe/mail unread articles (tagged articles excepted)\n"
 msgstr	""
 
-#: src/lang.c:2329
+#: src/lang.c:2341
 msgid	"Print all or just part of header. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2330
+#: src/lang.c:2342
 msgid	"Print all headers when printing"
 msgstr	""
 
-#: src/lang.c:2331
+#: src/lang.c:2343
 msgid	"# If ON print all of article header otherwise just the important lines\n"
 msgstr	""
 
-#: src/lang.c:2335
+#: src/lang.c:2347
 msgid	"The printer program with options that is to be used to print articles/threads."
 msgstr	""
 
-#: src/lang.c:2336
+#: src/lang.c:2348
 msgid	"Printer program with options"
 msgstr	""
 
-#: src/lang.c:2337
+#: src/lang.c:2349
 msgid	"# Print program with parameters used to print articles/threads\n"
 msgstr	""
 
-#: src/lang.c:2343
+#: src/lang.c:2355
 msgid	"Force redraw after certain commands"
 msgstr	""
 
-#: src/lang.c:2344
+#: src/lang.c:2356
 msgid	"# If ON a screen redraw will always be done after certain external commands\n"
 msgstr	""
 
-#: src/lang.c:2348
+#: src/lang.c:2360
 msgid	"Start editor with line offset. <SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:2349
+#: src/lang.c:2361
 msgid	"Start editor with line offset"
 msgstr	""
 
-#: src/lang.c:2350
+#: src/lang.c:2362
 msgid	"# If ON editor will be started with cursor offset into the file\n"
 	"# otherwise the cursor will be positioned at the first line\n"
 msgstr	""
 
-#: src/lang.c:2355
+#: src/lang.c:2367
 msgid	"Enter %E for editor, %F for filename, %N for line-number, <CR> to set."
 msgstr	""
 
-#: src/lang.c:2356
+#: src/lang.c:2368
 msgid	"Invocation of your editor"
 msgstr	""
 
-#: src/lang.c:2357
+#: src/lang.c:2369
 msgid	"# Format of editor line including parameters\n"
 	"# %%E Editor  %%F Filename  %%N Linenumber\n"
 msgstr	""
 
-#: src/lang.c:2362
+#: src/lang.c:2374
 msgid	"Enter name and options for external-inews, --internal for internal inews"
 msgstr	""
 
-#: src/lang.c:2363
+#: src/lang.c:2375
 msgid	"External inews"
 msgstr	""
 
-#: src/lang.c:2364
+#: src/lang.c:2376
 msgid	"# If --internal use the built in mini inews for posting via NNTP\n"
 	"# otherwise use an external inews program\n"
 msgstr	""
 
-#: src/lang.c:2368
+#: src/lang.c:2380
 msgid	"Enter %M for mailer, %S for subject, %T for to, %F for filename, <CR> to set."
 msgstr	""
 
-#: src/lang.c:2369
+#: src/lang.c:2381
 msgid	"Invocation of your mail command"
 msgstr	""
 
-#: src/lang.c:2370
+#: src/lang.c:2382
 msgid	"# Format of mailer line including parameters\n"
 	"# %%M Mailer  %%S Subject  %%T To  %%F Filename\n"
 	"# ie. to use elm as your mailer:    elm -s \"%%S\" \"%%T\" < %%F\n"
 	"# ie. elm interactive          :    elm -i %%F -s \"%%S\" \"%%T\"\n"
 msgstr	""
 
-#: src/lang.c:2378
+#: src/lang.c:2390
 msgid	"Use interactive mail reader"
 msgstr	""
 
-#: src/lang.c:2379
+#: src/lang.c:2391
 msgid	"# Interactive mailreader\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no interactive mailreader\n"
@@ -5669,56 +5682,56 @@ msgid	"# Interactive mailreader\n"
 	"#   2 = use interactive mailreader without headers in file\n"
 msgstr	""
 
-#: src/lang.c:2388
+#: src/lang.c:2400
 msgid	"Remove ~/.article after posting"
 msgstr	""
 
-#: src/lang.c:2389
+#: src/lang.c:2401
 msgid	"# If ON remove ~/.article after posting.\n"
 msgstr	""
 
-#: src/lang.c:2393
+#: src/lang.c:2405
 msgid	"Filename for all posted articles, <CR> sets, no filename=do not save."
 msgstr	""
 
-#: src/lang.c:2394
+#: src/lang.c:2406
 msgid	"Filename for posted articles"
 msgstr	""
 
-#: src/lang.c:2395
+#: src/lang.c:2407
 msgid	"# Filename where to keep all postings (default posted)\n"
 	"# If no filename is set then postings will not be saved\n"
 msgstr	""
 
-#: src/lang.c:2400
+#: src/lang.c:2412
 msgid	"Keep all failed articles in ~/dead.articles. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2401
+#: src/lang.c:2413
 msgid	"Keep failed arts in ~/dead.articles"
 msgstr	""
 
-#: src/lang.c:2402
+#: src/lang.c:2414
 msgid	"# If ON keep all failed postings in ~/dead.articles\n"
 msgstr	""
 
-#: src/lang.c:2406
+#: src/lang.c:2418
 msgid	"Do you want to strip unsubscribed groups from .newsrc"
 msgstr	""
 
-#: src/lang.c:2407
+#: src/lang.c:2419
 msgid	"No unsubscribed groups in newsrc"
 msgstr	""
 
-#: src/lang.c:2408
+#: src/lang.c:2420
 msgid	"# If ON strip unsubscribed groups from newsrc\n"
 msgstr	""
 
-#: src/lang.c:2413
+#: src/lang.c:2425
 msgid	"Remove bogus groups from newsrc"
 msgstr	""
 
-#: src/lang.c:2414
+#: src/lang.c:2426
 msgid	"# What to do with bogus groups in newsrc file\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = keep\n"
@@ -5726,55 +5739,55 @@ msgid	"# What to do with bogus groups in
 	"#   2 = highlight with D on selection screen\n"
 msgstr	""
 
-#: src/lang.c:2422
+#: src/lang.c:2434
 msgid	"Enter number of seconds until active file will be reread. <CR> sets."
 msgstr	""
 
-#: src/lang.c:2423
+#: src/lang.c:2435
 msgid	"Interval in secs to reread active"
 msgstr	""
 
-#: src/lang.c:2424
+#: src/lang.c:2436
 msgid	"# Time interval in seconds between rereading the active file (0=never)\n"
 msgstr	""
 
-#: src/lang.c:2429
+#: src/lang.c:2441
 msgid	"Reconnect to server automatically"
 msgstr	""
 
-#: src/lang.c:2430
+#: src/lang.c:2442
 msgid	"# If ON automatically reconnect to NNTP server if the connection is broken\n"
 msgstr	""
 
-#: src/lang.c:2434
+#: src/lang.c:2446
 msgid	"Create local copies of NNTP overview files. <SPACE> toggles & <CR> sets."
 msgstr	""
 
-#: src/lang.c:2435
+#: src/lang.c:2447
 msgid	"Cache NNTP overview files locally"
 msgstr	""
 
-#: src/lang.c:2436
+#: src/lang.c:2448
 msgid	"# If ON, create local copies of NNTP overview files.\n"
 msgstr	""
 
-#: src/lang.c:2440
+#: src/lang.c:2452
 msgid	"Enter format string. <CR> sets, <ESC> cancels."
 msgstr	""
 
-#: src/lang.c:2441
+#: src/lang.c:2453
 msgid	"Format string for display of dates"
 msgstr	""
 
-#: src/lang.c:2442
+#: src/lang.c:2454
 msgid	"# Format string for date representation\n"
 msgstr	""
 
-#: src/lang.c:2448
+#: src/lang.c:2460
 msgid	"Unicode normalization form"
 msgstr	"Unicode normalisation form"
 
-#: src/lang.c:2449
+#: src/lang.c:2461
 msgid	"# Unicode normalization form\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = None\n"
@@ -5790,20 +5803,20 @@ msgstr	"# Unicode normalisation form\n"
 	"#   3 = NFC\n"
 	"#   4 = NFD\n"
 
-#: src/lang.c:2461
+#: src/lang.c:2473
 msgid	"Render BiDi"
 msgstr	""
 
-#: src/lang.c:2462
+#: src/lang.c:2474
 msgid	"# If ON, bi-directional text is rendered by tin\n"
 msgstr	""
 
-#: src/misc.c:3713
+#: src/misc.c:3721
 #, c-format
 msgid	"Version: %s %s release %s (\"%s\") %s %s\n"
 msgstr	""
 
-#: src/misc.c:3716
+#: src/misc.c:3724
 #, c-format
 msgid	"Version: %s %s release %s (\"%s\")\n"
 msgstr	""
@@ -5812,22 +5825,22 @@ msgstr	""
 msgid	"Unreachable?\n"
 msgstr	""
 
-#: src/nntplib.c:823
+#: src/nntplib.c:825
 #, c-format
 msgid	"\n"
 	"Server timed out, trying reconnect # %d\n"
 msgstr	""
 
-#: src/nntplib.c:841
+#: src/nntplib.c:843
 msgid	"Rejoin current group\n"
 msgstr	""
 
-#: src/nntplib.c:848
+#: src/nntplib.c:850
 #, c-format
 msgid	"Read (%s)\n"
 msgstr	""
 
-#: src/nntplib.c:850
+#: src/nntplib.c:852
 #, c-format
 msgid	"Resend last command (%s)\n"
 msgstr	""
@@ -5837,7 +5850,7 @@ msgstr	""
 msgid	"couldn't expand %s\n"
 msgstr	""
 
-#: src/post.c:1970
+#: src/post.c:1969
 #, c-format
 msgid	"Posting: %.*s ..."
 msgstr	""
@@ -5876,19 +5889,19 @@ msgid	"This message has been composed in
 	"\n"
 msgstr	""
 
-#: src/save.c:974
+#: src/save.c:977
 msgid	"bytes"
 msgstr	""
 
-#: src/select.c:375
+#: src/select.c:381
 msgid	"unread"
 msgstr	""
 
-#: src/select.c:375
+#: src/select.c:381
 msgid	"all"
 msgstr	""
 
-#: src/select.c:547 src/select.c:549
+#: src/select.c:551 src/select.c:553
 msgid	" R"
 msgstr	""
 
Binary files tin-1.7.7/po/et.gmo and tin-1.7.8/po/et.gmo differ
diff -Nurp tin-1.7.7/po/et.po tin-1.7.8/po/et.po
--- tin-1.7.7/po/et.po	Wed Dec 15 16:48:27 2004
+++ tin-1.7.8/po/et.po	Mon Mar 21 11:43:07 2005
@@ -1,10 +1,10 @@
 # Estonian translations for tin
 # Copyright © 2002 Free Software Foundation, Inc.
-# Toomas Soome <Toomas.Soome@microlink.ee>, 2003.
+# Toomas Soome <Toomas.Soome@microlink.ee>, 2005.
 #
 msgid	""
-msgstr	"Project-Id-Version: tin 1.7.2\n"
-	"POT-Creation-Date: 2004-12-15 16:47+0100\n"
+msgstr	"Project-Id-Version: tin 1.7.7\n"
+	"POT-Creation-Date: 2005-03-21 11:42+0100\n"
 	"PO-Revision-Date: 2003-01-07 18:45+0300\n"
 	"Last-Translator: Toomas Soome <Toomas.Soome@microlink.ee>\n"
 	"Language-Team: Estonian <et@li.org>\n"
@@ -13,226 +13,225 @@ msgstr	"Project-Id-Version: tin 1.7.2\n"
 	"Content-Transfer-Encoding: 8bit\n"
 	"Report-Msgid-Bugs-To: \n"
 
-#: src/art.c:1447
+#: src/art.c:1455
 #, c-format
 msgid	"%d Bad overview record (%d fields) '%s'"
 msgstr	"%d Vigane overview kirje (%d välja) '%s'"
 
-#: src/attrib.c:594
+#: src/attrib.c:604
 msgid	"# Do not edit this comment block\n"
 	"#\n"
 msgstr	"# Ärge seda kommentaari blokki muutke\n"
 	"#\n"
 
-#: src/attrib.c:595
+#: src/attrib.c:605
 msgid	"#  scope=STRING (ie. alt.*,!alt.bin*) [mandatory]\n"
 msgstr	"#  scope=SÕNE (n. alt.*,!alt.bin*) [kohustuslik]\n"
 
-#: src/attrib.c:596
+#: src/attrib.c:606
 msgid	"#  maildir=STRING (ie. ~/Mail)\n"
 msgstr	"#  maildir=SÕNE (n. ~/Mail)\n"
 
-#: src/attrib.c:597
+#: src/attrib.c:607
 msgid	"#  savedir=STRING (ie. ~user/News)\n"
 msgstr	"#  savedir=SÕNE (n. ~user/News)\n"
 
-#: src/attrib.c:598
+#: src/attrib.c:608
 msgid	"#  savefile=STRING (ie. =linux)\n"
 msgstr	"#  savefile=SÕNE (n. =linux)\n"
 
-#: src/attrib.c:599
+#: src/attrib.c:609
 msgid	"#  sigfile=STRING (ie. $var/sig)\n"
 msgstr	"#  sigfile=SÕNE (n. $var/sig)\n"
 
-#: src/attrib.c:600
+#: src/attrib.c:610
 msgid	"#  organization=STRING (if beginning with '/' read from file)\n"
 msgstr	"#  organization=SÕNE (kui algab sümboliga '/', loe failist)\n"
 
-#: src/attrib.c:601
+#: src/attrib.c:611
 msgid	"#  followup_to=STRING\n"
 msgstr	"#  followup_to=SÕNE\n"
 
-#: src/attrib.c:602
+#: src/attrib.c:612
 msgid	"#  mailing_list=STRING (ie. majordomo@example.org)\n"
 msgstr	"#  mailing_list=SÕNE (n. majordomo@example.org)\n"
 
-#: src/attrib.c:603
+#: src/attrib.c:613
 msgid	"#  x_headers=STRING (ie. ~/.tin/extra-headers)\n"
 msgstr	"#  x_headers=SÕNE (n. ~/.tin/extra-headers)\n"
 
-#: src/attrib.c:604
+#: src/attrib.c:614
 msgid	"#  x_body=STRING (ie. ~/.tin/extra-body-text)\n"
 msgstr	"#  x_body=SÕNE (n. ~/.tin/extra-body-text)\n"
 
-#: src/attrib.c:605
+#: src/attrib.c:615
 msgid	"#  from=STRING (just append wanted From:-line, don't use quotes)\n"
 msgstr	"#  from=SÕNE (kirjutage soovitav From: rida, ärge kasutage jutumärke)\n"
 
-#: src/attrib.c:606
+#: src/attrib.c:616
 msgid	"#  news_quote_format=STRING\n"
 msgstr	"#  news_quote_format=SÕNE\n"
 
-#: src/attrib.c:607
+#: src/attrib.c:617
 msgid	"#  quote_chars=STRING (%%s, %%S for initials)\n"
 msgstr	"#  quote_chars=SÕNE (%%s, %%S annavad initsiaalid)\n"
 
-#: src/attrib.c:608
+#: src/attrib.c:618
 msgid	"#  mime_types_to_save=STRING (eg. image/*,!image/bmp)\n"
 msgstr	"#  mime_types_to_save=SÕNE (n. image/*,!image/bmp)\n"
 
-#: src/attrib.c:610
+#: src/attrib.c:620
 msgid	"#  ispell=STRING\n"
 msgstr	"#  ispell=SÕNE\n"
 
-#: src/attrib.c:612
+#: src/attrib.c:622
 msgid	"#  auto_select=ON/OFF\n"
 msgstr	"#  auto_select=ON/OFF\n"
 
-#: src/attrib.c:613
+#: src/attrib.c:623
 msgid	"#  auto_save=ON/OFF\n"
 msgstr	"#  auto_save=ON/OFF\n"
 
-#: src/attrib.c:614
+#: src/attrib.c:624
 msgid	"#  batch_save=ON/OFF\n"
 msgstr	"#  batch_save=ON/OFF\n"
 
-#: src/attrib.c:615
+#: src/attrib.c:625
 msgid	"#  delete_tmp_files=ON/OFF\n"
 msgstr	"#  delete_tmp_files=ON/OFF\n"
 
-#: src/attrib.c:616
+#: src/attrib.c:626
 msgid	"#  show_only_unread=ON/OFF\n"
 msgstr	"#  show_only_unread=ON/OFF\n"
 
-#: src/attrib.c:617
+#: src/attrib.c:627
 msgid	"#  thread_arts=NUM"
 msgstr	"#  thread_arts=NUM"
 
-#: src/attrib.c:624
+#: src/attrib.c:634
 msgid	"#  show_author=NUM\n"
 msgstr	"#  show_author=NUM\n"
 
-#: src/attrib.c:630
+#: src/attrib.c:640
 msgid	"#  show_info=NUM\n"
 msgstr	"#  show_info=NUM\n"
 
-#: src/attrib.c:636
+#: src/attrib.c:646
 msgid	"#  sort_art_type=NUM\n"
 msgstr	"#  sort_art_type=NUM\n"
 
-#: src/attrib.c:654
+#: src/attrib.c:664
 msgid	"#  sort_threads_type=NUM\n"
 msgstr	"#  sort_threads_type=NUM\n"
 
-#: src/attrib.c:659
+#: src/attrib.c:669
 msgid	"#  post_proc_type=NUM\n"
 msgstr	"#  post_proc_type=NUM\n"
 
-#: src/attrib.c:664
+#: src/attrib.c:674
 msgid	"#  quick_kill_scope=STRING (ie. talk.*)\n"
 msgstr	"#  quick_kill_scope=SÕNE (n. talk.*)\n"
 
-#: src/attrib.c:665
+#: src/attrib.c:675
 msgid	"#  quick_kill_expire=ON/OFF\n"
 msgstr	"#  quick_kill_expire=ON/OFF\n"
 
-#: src/attrib.c:666
+#: src/attrib.c:676
 msgid	"#  quick_kill_case=ON/OFF\n"
 msgstr	"#  quick_kill_case=ON/OFF\n"
 
-#: src/attrib.c:667
+#: src/attrib.c:677
 msgid	"#  quick_kill_header=NUM\n"
 msgstr	"#  quick_kill_header=NUM\n"
 
-#: src/attrib.c:668 src/attrib.c:675
+#: src/attrib.c:678 src/attrib.c:685
 msgid	"#    0=subj (case sensitive) 1=subj (ignore case)\n"
 msgstr	"#    0=teema (tõstutundlik) 1=teema (tõstutundetu)\n"
 
-#: src/attrib.c:669 src/attrib.c:676
+#: src/attrib.c:679 src/attrib.c:686
 msgid	"#    2=from (case sensitive) 3=from (ignore case)\n"
 msgstr	"#    2=saatja (tõstutundlik) 3=saatja (tõstutundetu)\n"
 
-#: src/attrib.c:670 src/attrib.c:677
+#: src/attrib.c:680 src/attrib.c:687
 msgid	"#    4=msgid 5=lines\n"
 msgstr	"#    4=msgid 5=read\n"
 
-#: src/attrib.c:671
+#: src/attrib.c:681
 msgid	"#  quick_select_scope=STRING\n"
 msgstr	"#  quick_select_scope=SÕNE\n"
 
-#: src/attrib.c:672
+#: src/attrib.c:682
 msgid	"#  quick_select_expire=ON/OFF\n"
 msgstr	"#  quick_select_expire=ON/OFF\n"
 
-#: src/attrib.c:673
+#: src/attrib.c:683
 msgid	"#  quick_select_case=ON/OFF\n"
 msgstr	"#  quick_select_case=ON/OFF\n"
 
-#: src/attrib.c:674
+#: src/attrib.c:684
 msgid	"#  quick_select_header=NUM\n"
 msgstr	"#  quick_select_header=NUM\n"
 
-#: src/attrib.c:678
+#: src/attrib.c:688
 msgid	"#  x_comment_to=ON/OFF\n"
 msgstr	"#  x_comment_to=ON/OFF\n"
 
-#: src/attrib.c:679
+#: src/attrib.c:689
 msgid	"#  fcc=STRING (eg. =mailbox)\n"
 msgstr	"#  fcc=SÕNE (n. =postkast)\n"
 
 #
-#: src/attrib.c:680
+#: src/attrib.c:690
 msgid	"#  tex2iso_conv=ON/OFF\n"
 msgstr	"#  tex2iso_conv=ON/OFF\n"
 
-# TRANSLATION MISSING
-#: src/attrib.c:681
+#: src/attrib.c:691
 msgid	"#  mime_forward=ON/OFF\n"
-msgstr	""
+msgstr	"#  mime_forward=ON/OFF\n"
 
-#: src/attrib.c:683
+#: src/attrib.c:693
 msgid	"#  mm_network_charset=supported_charset"
 msgstr	"#  mm_network_charset=toetatud_koodileht"
 
-#: src/attrib.c:690
+#: src/attrib.c:700
 msgid	"#  undeclared_charset=STRING (default is US-ASCII)\n"
 msgstr	"#  undeclared_charset=SÕNE (vaikimisi on US-ASCII)\n"
 
-#: src/attrib.c:692
+#: src/attrib.c:702
 msgid	"#\n"
 	"# Note that it is best to put general (global scoping)\n"
 msgstr	"#\n"
 	"# Märkus: parem on kõigepealt kirjeldada üldisemad (globaalse skoobiga)\n"
 
-#: src/attrib.c:693
+#: src/attrib.c:703
 msgid	"# entries first followed by group specific entries.\n"
 	"#\n"
 msgstr	"# ning seejärel konkreetsemad, grupi spetsiifilised, reeglid.\n"
 	"#\n"
 
-#: src/attrib.c:694
+#: src/attrib.c:704
 msgid	"############################################################################\n"
 	"\n"
 msgstr	"############################################################################\n"
 	"\n"
 
-#: src/attrib.c:700
+#: src/attrib.c:710
 msgid	"# include extra headers\n"
 msgstr	"# lisa täiendavaid päiseid\n"
 
-#: src/attrib.c:708
+#: src/attrib.c:718
 msgid	"# in *sources* set post process type to shar only\n"
 msgstr	"# *tekstidel* sea järeltöötlemise tüübiks ainult shar\n"
 
-#: src/attrib.c:712
+#: src/attrib.c:722
 msgid	"# in *binaries* do full post processing, remove tmp files\n"
 msgstr	"# *binaarfailidel* sea täielik järeltöötlemine, kustuta ajutised failid\n"
 
-#: src/attrib.c:713
+#: src/attrib.c:723
 msgid	"# and set Followup-To: poster\n"
 msgstr	"# ja sea Followup-To: postitaja\n"
 
-#: src/cook.c:494
+#: src/cook.c:497
 msgid	"(unknown)"
 msgstr	"(tundmatu)"
 
@@ -557,272 +556,272 @@ msgstr	"Otsin uudiseid..."
 msgid	"Post-process %s=no, %s=yes, %s=shar, %s=quit: "
 msgstr	"Järeltöötle %s=ei, %s=jah, %s=shar, %s=välju: "
 
-#: src/lang.c:118
+#: src/lang.c:119
 msgid	"ANSI color disabled"
 msgstr	"ANSI värvid on keelatud"
 
-#: src/lang.c:119
+#: src/lang.c:120
 msgid	"ANSI color enabled"
 msgstr	"ANSI värvid on lubatud"
 
-#: src/lang.c:120
+#: src/lang.c:122
 #, c-format
 msgid	"Command failed: %s"
 msgstr	"Käsk ebaõnnestus: %s"
 
-#: src/lang.c:121
+#: src/lang.c:123
 msgid	"Mark not selected articles read?"
 msgstr	"Märgin valimata artiklid loetuks?"
 
-#: src/lang.c:122
+#: src/lang.c:124
 #, c-format
 msgid	"Connecting to %s..."
 msgstr	"Loon ühendust serveriga %s..."
 
-#: src/lang.c:123
+#: src/lang.c:125
 msgid	"<CR>"
 msgstr	"<CR>"
 
-#: src/lang.c:124
+#: src/lang.c:126
 msgid	"Creating active file for saved groups...\n"
 msgstr	"Loon salvestatud gruppidele active faili...\n"
 
-#: src/lang.c:125
+#: src/lang.c:127
 msgid	"Creating newsrc file...\n"
 msgstr	"Loon newsrc faili...\n"
 
-#: src/lang.c:127 src/lang.c:1140
+#: src/lang.c:129 src/lang.c:1150
 msgid	"Default"
 msgstr	"Vaikimisi"
 
-#: src/lang.c:128
+#: src/lang.c:130
 msgid	"Delete saved files that have been post processed?"
 msgstr	"Kas kustutada salvestatud ja töödeldud failid?"
 
-#: src/lang.c:129
+#: src/lang.c:131
 msgid	"Deleting temporary files..."
 msgstr	"Kustutan ajutisi faile..."
 
-#: src/lang.c:131
+#: src/lang.c:133
 msgid	"*** End of article ***"
 msgstr	"*** Artiklid on otsas ***"
 
-#: src/lang.c:132
+#: src/lang.c:134
 msgid	"*** End of articles ***"
 msgstr	"*** Artiklid on otsas ***"
 
-#: src/lang.c:133
+#: src/lang.c:135
 msgid	"*** End of groups ***"
 msgstr	"*** Grupid on otsas ***"
 
-#: src/lang.c:134
+#: src/lang.c:136
 msgid	"*** End of thread ***"
 msgstr	"*** Teema on otsas ***"
 
-#: src/lang.c:135
+#: src/lang.c:137
 msgid	"Enter limit of articles to get> "
 msgstr	"Sisestage leatavate artiklite piirang> "
 
-#: src/lang.c:136
+#: src/lang.c:138
 msgid	"Enter Message-ID to go to> "
 msgstr	"Sisestage Message-ID> "
 
-#: src/lang.c:137
+#: src/lang.c:139
 msgid	" and enter next unread thread"
 msgstr	" ja siseneda järgmisse lugemata teemasse"
 
-#: src/lang.c:138
+#: src/lang.c:140
 msgid	" and enter next unread group"
 msgstr	" ja siseneda järgmisse lugemata teemasse"
 
-#: src/lang.c:139
+#: src/lang.c:141
 msgid	"Enter option number> "
 msgstr	"Sisestage omaduse number> "
 
-#: src/lang.c:140
+#: src/lang.c:142
 #, c-format
 msgid	"Enter range [%s]> "
 msgstr	"Sisestage vahemik [%s]> "
 
-#: src/lang.c:141
+#: src/lang.c:143
 msgid	"\n"
 	"Warning: Approved: header used.\n"
 msgstr	"\n"
 	"Hoiatus: Kasutati päiserida Approved:.\n"
 
-#: src/lang.c:143
+#: src/lang.c:145
 msgid	"\n"
 	"Error: Bad address in Approved: header.\n"
 msgstr	"\n"
 	"Viga: Vigane aadress Approved: real.\n"
 
-#: src/lang.c:144
+#: src/lang.c:146
 msgid	"\n"
 	"Error: Bad address in From: header.\n"
 msgstr	"\n"
 	"Viga: Vigane aadress From: real.\n"
 
-#: src/lang.c:145
+#: src/lang.c:147
 msgid	"\n"
 	"Error: Bad address in Reply-To: header.\n"
 msgstr	"\n"
 	"Viga: Vigane aadress Reply-To: real.\n"
 
-#: src/lang.c:146
+#: src/lang.c:148
 msgid	"\n"
 	"Error: Bad FQDN in Message-ID: header.\n"
 msgstr	"\n"
 	"Viga: Vigane FQDN Message-ID: real.\n"
 
-#: src/lang.c:147
+#: src/lang.c:149
 #, c-format
 msgid	"Can't unlock %s"
 msgstr	"%s ei saa lahti lukustada"
 
-#: src/lang.c:149
+#: src/lang.c:151
 #, c-format
 msgid	"Corrupted file %s"
 msgstr	"Vigane fail %s"
 
-#: src/lang.c:150
+#: src/lang.c:152
 #, c-format
 msgid	"Couldn't dotlock %s - article not appended!"
 msgstr	"Ei saa punkt-lukustada %s - artiklit ei lisatud!"
 
-#: src/lang.c:151
+#: src/lang.c:153
 #, c-format
 msgid	"Couldn't lock %s - article not appended!"
 msgstr	"Ei saa lukustada %s - artiklit ei lisatud!"
 
-#: src/lang.c:153
+#: src/lang.c:155
 msgid	"Internal error in GNKSA routine - send bug report.\n"
 msgstr	"Sisemine viga GNKSA protseduuris - saatke vearaport.\n"
 
-#: src/lang.c:154
+#: src/lang.c:156
 msgid	"Left angle bracket missing in route address.\n"
 msgstr	"Aadressis puudub <.\n"
 
-#: src/lang.c:155
+#: src/lang.c:157
 msgid	"Left parenthesis missing in old-style address.\n"
 msgstr	"Vanas stiilis aadressis puudub vasak ümarsulg.\n"
 
-#: src/lang.c:156
+#: src/lang.c:158
 msgid	"Right parenthesis missing in old-style address.\n"
 msgstr	"Vanas stiilis aadressis puudub parem ümarsulg.\n"
 
-#: src/lang.c:157
+#: src/lang.c:159
 msgid	"At-sign missing in mail address.\n"
 msgstr	"Postiaadressis puudub at-märk.\n"
 
-#: src/lang.c:158
+#: src/lang.c:160
 msgid	"Single component FQDN is not allowed. Add your domain.\n"
 msgstr	"Ühekomponendiline FQDN pole lubatud. Lisage oma doomen.\n"
 
-#: src/lang.c:159
+#: src/lang.c:161
 msgid	"Invalid domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Vigane doomen. Saatke vearaport, kui teie doomen on reaalselt olemas.\n"
 	"Kasutage \"vigase\" aadressi kirjutamisel juurmise doomenina .invalid.\n"
 
-#: src/lang.c:160
+#: src/lang.c:162
 msgid	"Illegal domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Vigane doomen. Saatke vearaport, kui teie doomen on reaalselt olemas.\n"
 	"Kasutage \"vigase\" aadressi kirjutamisel juurmise doomenina .invalid.\n"
 
-#: src/lang.c:161
+#: src/lang.c:163
 msgid	"Unknown domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Vigane doomen. Saatke vearaport, kui teie doomen on reaalselt olemas.\n"
 	"Kasutage \"vigase\" aadressi kirjutamisel juurmise doomenina .invalid.\n"
 
-#: src/lang.c:162
+#: src/lang.c:164
 msgid	"Illegal character in FQDN.\n"
 msgstr	"FQDN sisaldab lubamatut sümbolit.\n"
 
-#: src/lang.c:163
+#: src/lang.c:165
 msgid	"Zero length FQDN component not allowed.\n"
 msgstr	"Null pikkusega FQDN komponent ei ole lubatud.\n"
 
-#: src/lang.c:164
+#: src/lang.c:166
 msgid	"FQDN component exceeds maximum allowed length (63 chars).\n"
 msgstr	"FQDN komponendi pikkus ületab maksimaalset lubatut (63 sümbolit).\n"
 
-#: src/lang.c:165
+#: src/lang.c:167
 msgid	"FQDN component may not start or end with hyphen.\n"
 msgstr	"FQDN komponendi alguses ega lõpus ei või olla kriips.\n"
 
-#: src/lang.c:166
+#: src/lang.c:168
 msgid	"FQDN component may not start with digit.\n"
 msgstr	"FQDN komponent ei või alata numbriga.\n"
 
-#: src/lang.c:167
+#: src/lang.c:169
 msgid	"Domain literal has impossible numeric value.\n"
 msgstr	"Doomen sisaldab võimatut numbrilist väärtust.\n"
 
-#: src/lang.c:168
+#: src/lang.c:170
 msgid	"Domain literal is for private use only and not allowed for global use.\n"
 msgstr	"Doomenit on lubatud kasutada ainult privaatvõrgus.\n"
 
-#: src/lang.c:169
+#: src/lang.c:171
 msgid	"Right bracket missing in domain literal.\n"
 msgstr	"Doomenis puudub vasak sulg.\n"
 
-#: src/lang.c:170
+#: src/lang.c:172
 msgid	"Missing localpart of mail address.\n"
 msgstr	"Aadressil puudub lokaalne osa.\n"
 
-#: src/lang.c:171
+#: src/lang.c:173
 msgid	"Illegal character in localpart of mail address.\n"
 msgstr	"Lubamatu sümbol aadressi lokaalses osas.\n"
 
-#: src/lang.c:172
+#: src/lang.c:174
 msgid	"Zero length localpart component not allowed.\n"
 msgstr	"Null pikkusega lokaalne komponent ei ole lubatud.\n"
 
-#: src/lang.c:173
+#: src/lang.c:175
 msgid	"Illegal character in realname.\n"
 	"Unquoted words may not contain '!()<>@,;:\\.[]' in route addresses.\n"
 msgstr	"Pärisnimes on lubamatu sümbol.\n"
 	"Kvootimata sõnad aadressides ei tohi sisaldada '!()<>@,;:\\.[]'.\n"
 
-#: src/lang.c:174
+#: src/lang.c:176
 msgid	"Illegal character in realname.\n"
 	"Quoted words may not contain '()<>\\'.\n"
 msgstr	"Pärisnimes on lubamatu sümbol.\n"
 	"Kvooditud sõnad ei või sisaldada '()<>\\'.\n"
 
-#: src/lang.c:175
+#: src/lang.c:177
 msgid	"Illegal character in realname.\n"
 	"Encoded words may not contain '!()<>@,;:\"\\.[]/=' in parameter.\n"
 msgstr	"Pärisnimes on lubamatu sümbol.\n"
 	"Kodeeritud sõnad parameetris ei või sisaldada '!()<>@,;:\"\\.[]/='.\n"
 
-#: src/lang.c:176
+#: src/lang.c:178
 msgid	"Bad syntax in encoded word used in realname.\n"
 msgstr	"Vigane reaalses nimes kasutatud kodeeritud sõna süntaks.\n"
 
-#: src/lang.c:177
+#: src/lang.c:179
 msgid	"Illegal character in realname.\n"
 	"Unquoted words may not contain '()<>\\' in old-style addresses.\n"
 msgstr	"Pärisnimes on lubamatu sümbol.\n"
 	"Kvootimata sõnad vanas stiilis aadressides ei või sisaldada '()<>\\'.\n"
 
-#: src/lang.c:178
+#: src/lang.c:180
 msgid	"Illegal character in realname.\n"
 	"Control characters and unencoded 8bit characters > 127 are not allowed.\n"
 msgstr	"Pärisnimes on lubamatu sümbol.\n"
 	"Kontrollsümbolid ja kodeerimata 8bit sümbolid väärtusega > 127 ei ole "
 	"lubatud.\n"
 
-#: src/lang.c:179
+#: src/lang.c:181
 msgid	"\n"
 	"Error: No blank line found after header.\n"
 msgstr	"\n"
 	"Viga: peale päiseridu pole tühja rida.\n"
 
 #. TODO: fixme, US-ASCII is not the only 7bit charset we know about
-#: src/lang.c:181
+#: src/lang.c:183
 msgid	"\n"
 	"Error: Posting contains non-ASCII characters but MM_CHARSET is set to\n"
 	"       US-ASCII  - please change this setting to a suitable value for\n"
@@ -833,7 +832,7 @@ msgstr	"\n"
 	"      on US_ASCII - palun seadke MM_CHARSET väärtus oma keelele sobivaks\n"
 	"      kasutades seadete M)enüüd või toimetades tinrc faili.\n"
 
-#: src/lang.c:186
+#: src/lang.c:188
 msgid	"\n"
 	"Error: Posting contains  non-ASCII characters  but the  MIME encoding\n"
 	"       for news  messages  is set  to \"7bit\"  -  please change this\n"
@@ -847,13 +846,13 @@ msgstr	"\n"
 	"      enam levinud.  Muuta saate kasutades seadete M)enüüd või toimetades\n"
 	"      tinrc faili.\n"
 
-#: src/lang.c:192
+#: src/lang.c:194
 msgid	"\n"
 	"Error: Article starts with blank line instead of header\n"
 msgstr	"\n"
 	"Viga: Artikkel algab päise asemel tühja reaga\n"
 
-#: src/lang.c:193
+#: src/lang.c:195
 #, c-format
 msgid	"\n"
 	"Error: Header on line %d does not have a colon after the header name:\n"
@@ -862,21 +861,21 @@ msgstr	"\n"
 	"Viga: Päisereal %d puudub päise nime järel koolon:\n"
 	"%s\n"
 
-#: src/lang.c:194
+#: src/lang.c:196
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is empty.\n"
 msgstr	"\n"
 	"Viga: \"%s:\" rida on tühi.\n"
 
-#: src/lang.c:195
+#: src/lang.c:197
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is missing from the article header.\n"
 msgstr	"\n"
 	"Viga: Artikli päises puudub rida \"%s:\".\n"
 
-#: src/lang.c:196
+#: src/lang.c:198
 #, c-format
 msgid	"\n"
 	"Error: Header on line %d does not have a space after the colon:\n"
@@ -885,155 +884,153 @@ msgstr	"\n"
 	"Viga: Päisel real %d puudub kooloni järel tühik:\n"
 	"%s\n"
 
-#: src/lang.c:197
+#: src/lang.c:199
 #, c-format
 msgid	"\n"
 	"Error: There are multiple (%d) \"%s:\" lines in the header.\n"
 msgstr	"\n"
 	"Viga: Päises on mitu (%d) \"%s:\" rida.\n"
 
-#: src/lang.c:198
+#: src/lang.c:200
 #, c-format
 msgid	"Insecure permissions of %s (%o)"
 msgstr	"Ebaturvalised õigused failil %s (%o)"
 
-#: src/lang.c:199
+#: src/lang.c:201
 #, c-format
 msgid	"Invalid response to GROUP command, %s"
 msgstr	"Vigane vastus GROUP käsule, %s"
 
-#: src/lang.c:201
+#: src/lang.c:203
 #, c-format
 msgid	"MIME parse error: Unexpected end of %s/%s article"
 msgstr	"MIME parsimise viga: Ootamatu artikli %s/%s lõpp"
 
-#: src/lang.c:202
+#: src/lang.c:204
 msgid	"MIME parse error: Start boundary whilst reading headers"
 msgstr	"MIME parsimise viga: Algas eraldaja aga loen alles päiseid"
 
-#: src/lang.c:203
+#: src/lang.c:205
 msgid	"Can't get a (fully-qualified) domain-name!"
 msgstr	"Ei õnnestu saada (täis) doomeninime!"
 
-#: src/lang.c:204
+#: src/lang.c:206
 #, c-format
 msgid	"No permissions to go into %s\n"
 msgstr	"Puuduvad õigused siseneda %s\n"
 
-#: src/lang.c:205
+#: src/lang.c:207
 msgid	"\n"
 	"Error: From: line missing.\n"
 msgstr	"\n"
 	"Viga: From: rida puudub.\n"
 
-#: src/lang.c:206
+#: src/lang.c:208
 #, c-format
 msgid	"No read permissions for %s\n"
 msgstr	"%s lugemiseks pole õiguseid\n"
 
-#: src/lang.c:207
+#: src/lang.c:209
 #, c-format
 msgid	"File %s does not exist\n"
 msgstr	"Faili %s pole\n"
 
-#: src/lang.c:208
+#: src/lang.c:210
 #, c-format
 msgid	"No write permissions for %s\n"
 msgstr	"%s kirjutamiseks pole õiguseid\n"
 
-#: src/lang.c:209
+#: src/lang.c:211
 msgid	"Can't get user information (/etc/passwd missing?)"
 msgstr	"Ei leia kasutate kohta infot (/etc/passwd puudub?)"
 
-#: src/lang.c:210
+#: src/lang.c:212
 msgid	"errors"
 msgstr	"viga"
 
-#: src/lang.c:211
+#: src/lang.c:213
 #, c-format
 msgid	"\n"
 	"Error on line %d: \"Sender:\" header not allowed (it will be added for you)\n"
 msgstr	"\n"
 	"Viga real %d: \"Sender:\" päiserida pole lubatud (see lisatakse teie eest)\n"
 
-#: src/lang.c:212
+#: src/lang.c:214
 #, c-format
 msgid	"Server has non of the groups listed in %s"
 msgstr	"Serveril pole failis %s näidatud gruppe"
 
-#: src/lang.c:213
+#: src/lang.c:215
 msgid	"error"
 msgstr	"viga"
 
-#: src/lang.c:214
+#: src/lang.c:216
 msgid	"Unknown display level"
 msgstr	"Tundmatu ektaani tase"
 
-#: src/lang.c:215
+#: src/lang.c:217
 msgid	"<ESC>"
 msgstr	"<ESC>"
 
-#: src/lang.c:216
+#: src/lang.c:218
 msgid	"Exiting..."
 msgstr	"Lõpetan..."
 
-#: src/lang.c:217
+#: src/lang.c:219
 msgid	"leaving external mail-reader"
 msgstr	"jätan välise kirjade lugeja"
 
-#: src/lang.c:218
+#: src/lang.c:220
 #, c-format
 msgid	"Extracting %s..."
 msgstr	"Loon %s..."
 
-#: src/lang.c:220
+#: src/lang.c:222
 #, c-format
 msgid	"Error writing %s file. Filesystem full? File reset to previous state."
 msgstr	"Viga faili %s kirjutamisel. Failisüsteem on täis? Faili eelmine olek "
 	"taastatud."
 
-#: src/lang.c:221
+#: src/lang.c:223
 #, c-format
 msgid	"Error making backup of %s file. Filesystem full?"
 msgstr	"Failist %s ei õnnestu varukoopiat luua. Failisüsteem on täis?"
 
-#: src/lang.c:222
+#: src/lang.c:224
 #, c-format
 msgid	"Filtering global rules (%d/%d)..."
 msgstr	"Filtreerin globaalseid reegleid (%d/%d)..."
 
-#: src/lang.c:223
+#: src/lang.c:225
 msgid	"Rule created by: "
 msgstr	"Reegli looja: "
 
-#: src/lang.c:224
+#: src/lang.c:226
 #, c-format
 msgid	"Enter pattern [%s]> "
 msgstr	"Sisestage muster [%s]> "
 
-#: src/lang.c:225
+#: src/lang.c:227
 #, c-format
 msgid	"\n"
 	"You requested followups to your article to go to the following %s:\n"
 msgstr	"\n"
 	"Te soovisite vastused artiklile %s:\n"
 
-#: src/lang.c:226
+#: src/lang.c:228
 #, c-format
 msgid	"  %s\t Answers will be directed to you by mail.\n"
 msgstr	"  %s\t Vastused saadetakse teile kirjaga.\n"
 
-# TRANSLATION MISSING
-#: src/lang.c:227
+#: src/lang.c:229
 msgid	"-- forwarded message --\n"
-msgstr	""
+msgstr	"-- edastatud teade --\n"
 
-# TRANSLATION MISSING
-#: src/lang.c:228
+#: src/lang.c:230
 msgid	"-- end of forwarded message --\n"
-msgstr	""
+msgstr	"-- edastatud teate lõpp --\n"
 
-#: src/lang.c:229
+#: src/lang.c:231
 msgid	"# Format:\n"
 	"#   comment=STRING    Optional. Multiple lines allowed. Comments must be "
 	"placed\n"
@@ -1089,746 +1086,748 @@ msgstr	"# Vorming:\n"
 	"#   time=NUMBER       Mittekohustuslik. Reegli aegumine time_t väärtusena\n"
 	"#\n"
 
-#: src/lang.c:250
+#: src/lang.c:252
 #, c-format
 msgid	"Enter score for rule (default=%d): "
 msgstr	"Reegli kaal        (vaikimisi=%d): "
 
-#: src/lang.c:251
+#: src/lang.c:253
 #, c-format
 msgid	"Enter the score weight (range 0 < score <= %d)"
 msgstr	"Sisestage reegli kaal (vahemik on 0 < kaal <= %d)"
 
 #. SCORE_MAX
-#: src/lang.c:252
+#: src/lang.c:254
 msgid	"Full"
 msgstr	"Täis"
 
-#: src/lang.c:253
+#: src/lang.c:255
 msgid	"Comment (optional)  : "
 msgstr	"Kommentaar (vaba)   : "
 
-#: src/lang.c:254
+#: src/lang.c:256
 msgid	"Apply pattern to    : "
 msgstr	"Rakenda mustrit     : "
 
-#: src/lang.c:255
+#: src/lang.c:257
 msgid	"From: line (ignore case)      "
 msgstr	"From: rida (tõstutundetu)   "
 
-#: src/lang.c:256
+#: src/lang.c:258
 msgid	"From: line (case sensitive)   "
 msgstr	"From: rida (tõstutundlik)   "
 
-#: src/lang.c:258
+#: src/lang.c:260
 #, c-format
 msgid	"%s%s: Unknown host.\n"
 msgstr	"%s%s: Tundmatu host.\n"
 
-#: src/lang.c:259
+#: src/lang.c:261
 msgid	"global "
 msgstr	"globaalset "
 
-#: src/lang.c:260
+#: src/lang.c:262
 #, c-format
 msgid	"Please use %.100s instead"
 msgstr	"Kasutage selle asemel palun %.100s"
 
-#: src/lang.c:261
+#: src/lang.c:263
 #, c-format
 msgid	"%s is bogus"
 msgstr	"gruppi %s pole"
 
-#: src/lang.c:262
+#: src/lang.c:264
 #, c-format
 msgid	"Group %s is moderated. Continue?"
 msgstr	"Grupp %s on modereeritav. Jätkan?"
 
-#: src/lang.c:263
+#: src/lang.c:265
 msgid	"groups"
 msgstr	"gruppi"
 
-#: src/lang.c:264
+#: src/lang.c:266
 #, c-format
 msgid	"Rereading %s..."
 msgstr	"Loen %s uuesti..."
 
-#: src/lang.c:265
+#: src/lang.c:267
 msgid	"Top Level Commands"
 msgstr	"Ülemise taseme käsud"
 
-#: src/lang.c:266
+#: src/lang.c:268
 msgid	"Group Selection"
 msgstr	"Grupi valik"
 
-#: src/lang.c:267
+#: src/lang.c:269
 msgid	"group"
 msgstr	"grupp"
 
-#: src/lang.c:269
+#: src/lang.c:271
 msgid	"One or more lines of comment. <CR> to add a line or proceed if line is empty."
 msgstr	"Üks või enam kommentaari rida. <CR> lisamiseks või tühja rea jätkamiseks."
 
-#: src/lang.c:270
+#: src/lang.c:272
 msgid	"From: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"From: rida filtrite faili. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:271
+#: src/lang.c:273
 msgid	"Linecount of articles to be filtered. < for less, > for more, = for equal."
 msgstr	"Filtraaritavate artiklite ridu. < on vähem, > on rohkem, = on võrdne."
 
-#: src/lang.c:272
+#: src/lang.c:274
 msgid	"Message-ID: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"Message-ID: rida filtri faili lisamiseks. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:273
+#: src/lang.c:275
 msgid	"Subject: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"Subject: rida filtri faili lisamiseks. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:274
+#: src/lang.c:276
 msgid	"Enter text pattern to filter if Subject: & From: lines are not what you want."
 msgstr	"Sisestage filtreerimiseks tekstimuster, kui Subject: ja From: ei ole piisav."
 
-#: src/lang.c:275
+#: src/lang.c:277
 msgid	"Select where text pattern should be applied. <SPACE> toggles & <CR> sets."
 msgstr	"Valige, kus tekstimustrit rakendada. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:276
+#: src/lang.c:278
 msgid	"Expiration time in days for the entered filter. <SPACE> toggles & <CR> sets."
 msgstr	"Sisestatud filtri aegumisaeg päevades. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:277
+#: src/lang.c:279
 msgid	"Apply kill only to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr	"Kasuta surmamist jooksval/kõikidel gruppidel. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:278
+#: src/lang.c:280
 msgid	"Apply select to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr	"Kasuta valikut jooksval/kõikidel gruppidel. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:279
+#: src/lang.c:281
 msgid	"kill an article via a menu"
 msgstr	"artiklite surmamise menüü"
 
-#: src/lang.c:280
+#: src/lang.c:282
 msgid	"auto-select (hot) an article via a menu"
 msgstr	"(kuuma) artikli automaatse valiku menüü"
 
-#: src/lang.c:281
+#: src/lang.c:283
 msgid	"Browse URLs in article"
 msgstr	"Brausi artiklis olevaid URLe"
 
-#: src/lang.c:282
+#: src/lang.c:284
 msgid	"0 - 9\t  display article by number in current thread"
 msgstr	"0 - 9\t  näita jooksva teema numbri järgi valitud artiklit"
 
-# TRANSLATION MISSING
-#: src/lang.c:283
+#: src/lang.c:285
 msgid	"cancel (delete) or supersede (overwrite) current article"
-msgstr	""
+msgstr	"katkesta (kustuta) või asenda (kirjuta üle) jooksev artikkel"
 
-#: src/lang.c:284
+#: src/lang.c:286
 msgid	"edit article (mail-groups only)"
 msgstr	"toimeta artiklit (ainult kirjade-grupid)"
 
-#: src/lang.c:285
+#: src/lang.c:287
 msgid	"display first article in current thread"
 msgstr	"näita jooksva teema esimest artiklit"
 
-#: src/lang.c:286
+#: src/lang.c:288
 msgid	"display first page of article"
 msgstr	"näita artikli esimest lehekülge"
 
-#: src/lang.c:287
+#: src/lang.c:289
 msgid	"post followup to current article"
 msgstr	"postita vastus jooksvale artiklile"
 
-#: src/lang.c:288
+#: src/lang.c:290
 msgid	"post followup (don't copy text) to current article"
 msgstr	"postita vastus (kopeeri teksti) jooksvale artiklile"
 
-#: src/lang.c:289
+#: src/lang.c:291
 msgid	"post followup to current article quoting complete headers"
 msgstr	"postita vastus jooksvale artiklile, tsiteerides kõiki päiseid"
 
-#: src/lang.c:290
+#: src/lang.c:292
 msgid	"display last article in current thread"
 msgstr	"näita jooksva teema viimast artiklit"
 
-#: src/lang.c:291
+#: src/lang.c:293
 msgid	"display last page of article"
 msgstr	"näita artikli viimast lehekülge"
 
-#: src/lang.c:292
+#: src/lang.c:294
 msgid	"mark rest of thread as read and advance to next unread"
 msgstr	"märgi teema loetuks ja liigu järgmisele lugemata teemale"
 
-#: src/lang.c:293
+#: src/lang.c:295
 msgid	"display next article"
 msgstr	"näita järgmist artiklit"
 
-#: src/lang.c:294
+#: src/lang.c:296
 msgid	"display first article in next thread"
 msgstr	"näita järgmise teema esimest artiklit"
 
-#: src/lang.c:295
+#: src/lang.c:297
 msgid	"display next unread article"
 msgstr	"näita järgmist lugemata artiklit"
 
-#: src/lang.c:296
+#: src/lang.c:298
 msgid	"go to the article that this one followed up"
 msgstr	"mine artiklile, millele see artikkel järgneb"
 
-#: src/lang.c:297
+#: src/lang.c:299
 msgid	"display previous article"
 msgstr	"näita eelmist artiklit"
 
-#: src/lang.c:298
+#: src/lang.c:300
 msgid	"display previous unread article"
 msgstr	"näita eelmist lugemata artiklit"
 
-#: src/lang.c:299
+#: src/lang.c:301
 msgid	"quickly kill an article using defaults"
 msgstr	"surma kiiresti artikkel, kasutades vaikeväärtusi"
 
-#: src/lang.c:300
+#: src/lang.c:302
 msgid	"quickly auto-select (hot) an article using defaults"
 msgstr	"vali kiiresti vaikeväärtusi kasutades (kuumad) artiklid"
 
-#: src/lang.c:301
+#: src/lang.c:303
 msgid	"return to group selection level"
 msgstr	"tagasi gruppide valikusse"
 
-#: src/lang.c:302
+#: src/lang.c:304
 msgid	"reply through mail to author"
 msgstr	"vasta autorile kirjaga"
 
-#: src/lang.c:303
+#: src/lang.c:305
 msgid	"reply through mail (don't copy text) to author"
 msgstr	"vasta autorile kirjaga (teksti ei kopeerita)"
 
-#: src/lang.c:304
+#: src/lang.c:306
 msgid	"reply through mail to author quoting complete headers"
 msgstr	"vasta autorile kirjaga, tsiteerides kõiki päiseid"
 
-#: src/lang.c:305
+#: src/lang.c:307
 msgid	"repost chosen article to another group"
 msgstr	"postita valitud artikkel teise gruppi"
 
-#: src/lang.c:306
+#: src/lang.c:308
 msgid	"search backwards within this article"
 msgstr	"otsi artiklis tagaspidi"
 
-#: src/lang.c:307
+#: src/lang.c:309
 msgid	"search forwards within this article"
 msgstr	"otsi artiklis edaspidi"
 
-#: src/lang.c:308
+#: src/lang.c:310
 msgid	"show article in raw-mode (including all headers)"
 msgstr	"näita kogu artiklit (koos päistega)"
 
-#: src/lang.c:309
+#: src/lang.c:311
 msgid	"skip next block of included text"
 msgstr	"järgmisele tekstiblokile"
 
-#: src/lang.c:310
+#: src/lang.c:312
 msgid	"toggle display of sections hidden by a form-feed (^L) on/off"
 msgstr	"lülita lehevahetusega (^L) peidetud osade näitamist"
 
-#: src/lang.c:311
+#: src/lang.c:313
 msgid	"toggle word highlighting on/off"
 msgstr	"lülita sõnade märkimine sisse/välja"
 
-#: src/lang.c:312
+#: src/lang.c:314
 msgid	"toggle ROT-13 (basic decode) for current article"
 msgstr	"lülita jooksva artikli ROT-13 (lihtne dekodeering) kodeering"
 
-#: src/lang.c:313
+#: src/lang.c:315
 msgid	"toggle tabwidth 4 <-> 8"
 msgstr	"lülita tabulaatori laius 4 <-> 8"
 
-#: src/lang.c:314
+#: src/lang.c:316
 msgid	"toggle german TeX style decoding for current article"
 msgstr	"lülita jooksva artikli saksa TeX stiilis dekodeerimine"
 
-#: src/lang.c:315
+#: src/lang.c:317
 msgid	"toggle display of uuencoded sections"
 msgstr	"lülita uuenkodeeritud osade näitamine"
 
-#: src/lang.c:316
+#: src/lang.c:318
 msgid	"View/save multimedia attachments"
 msgstr	"Vaata/salvesta multimeedia lisasid"
 
-#: src/lang.c:317
+#: src/lang.c:319
 #, c-format
 msgid	"report bug or comment via mail to %s"
 msgstr	"saatke vearaport või kommentaar aadressile %s"
 
-#: src/lang.c:318
+#: src/lang.c:320
 msgid	"choose range of articles to be affected by next command"
 msgstr	"valige järgmise käsuga töödeldavate artiklite vahemik"
 
-#: src/lang.c:319
+#: src/lang.c:321
 msgid	"escape from command prompt"
 msgstr	"pääs käsuviibalt"
 
-#: src/lang.c:320
+#: src/lang.c:322
+#, fuzzy
+msgid	"edit filter file"
+msgstr	"Loen filtrite faili...\n"
+
+#: src/lang.c:323
 msgid	"get help"
 msgstr	"anna abiinfot"
 
-#: src/lang.c:321
+#: src/lang.c:324
 msgid	"display last article viewed"
 msgstr	"näita viimasena vaadatud artiklit"
 
-#: src/lang.c:322
+#: src/lang.c:325
 msgid	"down one line"
 msgstr	"üks rida alla"
 
-#: src/lang.c:323
+#: src/lang.c:326
 msgid	"up one line"
 msgstr	"üles üks rida"
 
-#: src/lang.c:324
+#: src/lang.c:327
 msgid	"go to article chosen by Message-ID"
 msgstr	"liigu Message-ID poolt määratud artiklile"
 
-#: src/lang.c:325
+#: src/lang.c:328
 msgid	"mail article/thread/hot/pattern/tagged articles to someone"
 msgstr	"saada artikkel/teema/kuum/muster/märgitud kellelegi"
 
-#: src/lang.c:326
+#: src/lang.c:329
 msgid	"menu of configurable options"
 msgstr	"seadete menüü"
 
-#: src/lang.c:327
+#: src/lang.c:330
 msgid	"down one page"
 msgstr	"alla üks lehekülg"
 
-#: src/lang.c:328
+#: src/lang.c:331
 msgid	"up one page"
 msgstr	"üles üks lehekülg"
 
-#: src/lang.c:329
+#: src/lang.c:332
 msgid	"post (write) article to current group"
 msgstr	"postita (kirjuta) artikkel jooksvasse gruppi"
 
-#: src/lang.c:330
+#: src/lang.c:333
 msgid	"post postponed articles"
 msgstr	"postita ootel artiklid"
 
-#: src/lang.c:331
+#: src/lang.c:334
 msgid	"list articles posted by you (from posted file)"
 msgstr	"näita teie poolt postitatud artikleid (failist posted)"
 
-#: src/lang.c:332
+#: src/lang.c:335
 msgid	"return to previous menu"
 msgstr	"tagasi eelmisse menüüsse"
 
-#: src/lang.c:333
+#: src/lang.c:336
 msgid	"quit tin immediately"
 msgstr	"välju viivitamata tinist"
 
-#: src/lang.c:334
+#: src/lang.c:337
 msgid	"redraw page"
 msgstr	"värskenda lehekülge"
 
-#: src/lang.c:335
+#: src/lang.c:338
 msgid	"save article/thread/hot/pattern/tagged articles to file"
 msgstr	"salvesta artikkel/teema/kuum/muster/märgitud faili"
 
-#: src/lang.c:336
+#: src/lang.c:339
 msgid	"save marked articles automatically without user prompts"
 msgstr	"salvesta märgitud artiklid automaatselt, kasutajalt küsimata"
 
-# TRANSLATION MISSING
-#: src/lang.c:337
+#: src/lang.c:340
 msgid	"scroll the screen one line down"
-msgstr	""
+msgstr	"keri ekraani rida alla"
 
-# TRANSLATION MISSING
-#: src/lang.c:338
+#: src/lang.c:341
 msgid	"scroll the screen one line up"
-msgstr	""
+msgstr	"keri ekraani rida üles"
 
-#: src/lang.c:339
+#: src/lang.c:342
 msgid	"search for articles by author backwards"
 msgstr	"otsi artikleid autori järgi tagaspidi"
 
-#: src/lang.c:340
+#: src/lang.c:343
 msgid	"search for articles by author forwards"
 msgstr	"otsi artikleid autori järgi edaspidi"
 
-#: src/lang.c:341
+#: src/lang.c:344
 msgid	"search all articles for a given string (this may take some time)"
 msgstr	"otsi antud teksti artiklitest (see võib võtta aega)"
 
-#: src/lang.c:342
+#: src/lang.c:345
 msgid	" \t  (searches are case-insensitive and wrap around to all articles)"
 msgstr	" \t  (otsing on tõstutundetu ja käib üle kõikide artiklite)"
 
-#: src/lang.c:343
+#: src/lang.c:346
 msgid	"search for articles by Subject line backwards"
 msgstr	"otsi artiklit teema järgi tagaspidi"
 
-#: src/lang.c:344
+#: src/lang.c:347
 msgid	"search for articles by Subject line forwards"
 msgstr	"otsi artiklit teema järgi edaspidi"
 
-#: src/lang.c:345
+#: src/lang.c:348
 msgid	"repeat last search"
 msgstr	"korda eelmist otsingut"
 
-#: src/lang.c:346
+#: src/lang.c:349
 msgid	"tag current article for reposting/mailing/piping/printing/saving"
 msgstr	"märgi jooksev artikkel, et postitada/saata/trükkida/salvestada/torusse"
 
-#: src/lang.c:347
+#: src/lang.c:350
 msgid	"toggle info message in last line (subject/description)"
 msgstr	"lülita viimase rea infoteadet (teema/kirjeldus)"
 
-#: src/lang.c:348
+#: src/lang.c:351
 msgid	"toggle inverse video"
 msgstr	"lülita pööratud video"
 
-#: src/lang.c:349
+#: src/lang.c:352
 msgid	"toggle mini help menu display"
 msgstr	"abiinfo lülita ekraanil miniabi menüüd"
 
-#: src/lang.c:350
+#: src/lang.c:353
 msgid	"cycle the display of authors email address, real name, both or neither"
 msgstr	"vali näitamiseks autori aadress, pärisnimi, mõlemad või mitte midagi"
 
-#: src/lang.c:351
+#: src/lang.c:354
 msgid	"show version information"
 msgstr	"esita info versioonist"
 
-#: src/lang.c:352
+#: src/lang.c:355
 msgid	"mark all articles as read and return to group selection menu"
 msgstr	"märgi artiklid loetuks ja välju gruppide valiku menüüsse"
 
-#: src/lang.c:353
+#: src/lang.c:356
 msgid	"mark all articles as read and enter next group with unread articles"
 msgstr	"märgi artiklid loetuks, sisene järgmisse lugemata artiklitega gruppi"
 
-#: src/lang.c:354
+#: src/lang.c:357
 msgid	"choose first thread in list"
 msgstr	"vali loendist esimene teema"
 
-#: src/lang.c:355
+#: src/lang.c:358
 msgid	"choose last thread in list"
 msgstr	"vali loendist viimane teema"
 
-#: src/lang.c:356
+#: src/lang.c:359
 msgid	"list articles within current thread (bring up Thread sub-menu)"
 msgstr	"artiklite loend jooksvas teemas (esita teema alam-menüü)"
 
-#: src/lang.c:357
+#: src/lang.c:360
 msgid	"mark article as unread"
 msgstr	"märgi artikkel loetuks"
 
-#: src/lang.c:358
+#: src/lang.c:361
 msgid	"mark current thread or tagged threads as read"
 msgstr	"märgi jooksev teema või märgitud teemad loetuks"
 
-#: src/lang.c:359
+#: src/lang.c:362
 msgid	"mark thread as unread"
 msgstr	"märgi teema loetuks"
 
-#: src/lang.c:360
+#: src/lang.c:363
 msgid	"toggle display of all/selected articles"
 msgstr	"lülita ekraanile kõik/valitud artiklid"
 
-#: src/lang.c:361
+#: src/lang.c:364
 msgid	"display next group"
 msgstr	"näita järgmist gruppi"
 
-#: src/lang.c:362
+#: src/lang.c:365
 msgid	"display previous group"
 msgstr	"näita eelmist gruppi"
 
-#: src/lang.c:363
+#: src/lang.c:366
 msgid	"toggle all selections (all articles)"
 msgstr	"lülita kõiki valikuid (kõiki artikleid)"
 
-#: src/lang.c:364
+#: src/lang.c:367
 msgid	"select group (make \"hot\")"
 msgstr	"vali grupp (muuda \"kuumaks\")"
 
-#: src/lang.c:365
+#: src/lang.c:368
 msgid	"select thread"
 msgstr	"vali teema"
 
-#: src/lang.c:366
+#: src/lang.c:369
 msgid	"select threads if at least one unread article is selected"
 msgstr	"vali teemad, kui on valitud vähemalt üks lugemata artikkel"
 
-#: src/lang.c:367
+#: src/lang.c:370
 msgid	"select threads that match user specified pattern"
 msgstr	"vali kasutaja määratud mustrile vastavad teemad"
 
-#: src/lang.c:368
+#: src/lang.c:371
 msgid	"tag all parts of current multipart-message in order"
 msgstr	"märgi jooksva mitmeosalise teate kõik osad"
 
-#: src/lang.c:369
+#: src/lang.c:372
 msgid	"0 - 9\t  choose thread by number"
 msgstr	"0 - 9\t  vali numbri järgi teema"
 
-#: src/lang.c:370
+#: src/lang.c:373
 msgid	"toggle limit number of articles to get, and reload"
 msgstr	"sea laetavate artiklite piirang ja lae uuesti"
 
-#: src/lang.c:371
+#: src/lang.c:374
 msgid	"toggle display of all/unread articles"
 msgstr	"lülita ekraanil kõik/lugemata artiklid"
 
-#: src/lang.c:372
+#: src/lang.c:375
 msgid	"toggle selection of thread"
 msgstr	"lülita teema valikut"
 
-#: src/lang.c:373
+#: src/lang.c:376
 msgid	"cycle through threading options available"
 msgstr	"erinevad teemade käsitlemise võtmed"
 
-#: src/lang.c:374
+#: src/lang.c:377
 msgid	"undo all selections (all articles)"
 msgstr	"ennista kõik valikud (kõik artiklid)"
 
-#: src/lang.c:375
+#: src/lang.c:378
 msgid	"untag all tagged threads"
 msgstr	"eemalda märgistus kõikidelt märgitud teemadelt"
 
-#: src/lang.c:376
+#: src/lang.c:379
 msgid	"mark all articles in group as read"
 msgstr	"märgi valitud grupis kõik artiklid loetuks"
 
-#: src/lang.c:377
+#: src/lang.c:380
 msgid	"mark all articles in group as read and move to next unread group"
 msgstr	"märgi grupis kõik artiklid loetuks ja liigu järgmisele lugemata grupile"
 
-#: src/lang.c:378
+#: src/lang.c:381
 msgid	"choose first group in list"
 msgstr	"vali loetelust esimene grupp"
 
-#: src/lang.c:379
+#: src/lang.c:382
 msgid	"choose group by name"
 msgstr	"vali grupp nime järgi"
 
-#: src/lang.c:380
+#: src/lang.c:383
 msgid	"0 - 9\t  choose group by number"
 msgstr	"0 - 9\t  vali grupp numbri järgi"
 
-#: src/lang.c:381
+#: src/lang.c:384
 msgid	"choose range of groups to be affected by next command"
 msgstr	"järgmise käsuga töödeldavate gruppide vahemik"
 
-#: src/lang.c:382
+#: src/lang.c:385
 msgid	"choose last group in list"
 msgstr	"vali loetelust viimane grupp"
 
-#: src/lang.c:383
+#: src/lang.c:386
 msgid	"mark all articles in chosen group unread"
 msgstr	"märgi valitud grupis kõik artiklid mitte-loetuks"
 
-#: src/lang.c:384
+#: src/lang.c:387
 msgid	"move chosen group within list"
 msgstr	"liiguta valitud gruppi loendis"
 
-#: src/lang.c:385
+#: src/lang.c:388
 msgid	"choose next group with unread news"
 msgstr	"vali järgmine lugemata artiklitega grupp"
 
-#: src/lang.c:386 src/lang.c:1187
+#: src/lang.c:389 src/lang.c:1197
 msgid	"quit"
 msgstr	"välju"
 
-#: src/lang.c:387
+#: src/lang.c:390
 msgid	"quit without saving configuration changes"
 msgstr	"välju muudetud seadeid salvestamata"
 
-#: src/lang.c:388
+#: src/lang.c:391
 msgid	"read chosen group"
 msgstr	"loe valitud gruppi"
 
-#: src/lang.c:389
+#: src/lang.c:392
 msgid	"reset .newsrc (all available articles in groups marked unread)"
 msgstr	".newsrc faili algväärtustamine (kõik artiklid mitte-loetuks)"
 
-#: src/lang.c:390
+#: src/lang.c:393
 msgid	"search backwards for a group name"
 msgstr	"otsi grupi nime tagaspidi"
 
-#: src/lang.c:391
+#: src/lang.c:394
 msgid	" \t  (all searches are case-insensitive and wrap around)"
 msgstr	" \t  (kõik otsingud on tõstutundetud ja vajadusel alustavad algusest)"
 
-#: src/lang.c:392
+#: src/lang.c:395
 msgid	"search forwards for a group name"
 msgstr	"otsi grupi nime edaspidi"
 
-#: src/lang.c:393
+#: src/lang.c:396
 msgid	"subscribe to chosen group"
 msgstr	"telli valitud grupp"
 
-#: src/lang.c:394
+#: src/lang.c:397
 msgid	"subscribe to groups that match pattern"
 msgstr	"telli mustrile vastavaid gruppe"
 
-#: src/lang.c:395
+#: src/lang.c:398
 msgid	"reread active file to check for any new news"
 msgstr	"kontrolli aktiivsete gruppide faili - kas on uusi artikleid"
 
-#: src/lang.c:396
+#: src/lang.c:399
 msgid	"toggle display of group name only or group name plus description"
 msgstr	"vali ekraanil ainult grupi nimi või grupi nimi ja kirjeldus"
 
-#: src/lang.c:397
+#: src/lang.c:400
 msgid	"toggle display to show all/unread subscribed groups"
 msgstr	"vali ekraanile kõik/lugemata tellitud grupid"
 
-#: src/lang.c:398
+#: src/lang.c:401
 msgid	"unsubscribe from chosen group"
 msgstr	"loobu valitud grupist"
 
-#: src/lang.c:399
+#: src/lang.c:402
 msgid	"unsubscribe from groups that match pattern"
 msgstr	"loobu mustrile vastavatest gruppidest"
 
-#: src/lang.c:400
+#: src/lang.c:403
 msgid	"sort the list of groups"
 msgstr	"järjesta gruppide loend"
 
-#: src/lang.c:401
+#: src/lang.c:404
 msgid	"toggle display to show all/subscribed groups"
 msgstr	"näita ekraanil kõiki/tellitud gruppe"
 
-#: src/lang.c:402
+#: src/lang.c:405
 msgid	"0 - 9\t  choose article by number"
 msgstr	"0 - 9\t  vali numbri järgi artikkel"
 
-#: src/lang.c:403
+#: src/lang.c:406
 msgid	"mark thread as read and return to group index page"
 msgstr	"märgi teema loetuks ja välju gruppide indeksi lehele"
 
-#: src/lang.c:404
+#: src/lang.c:407
 msgid	"mark thread as read and enter next unread thread or group"
 msgstr	"märgi teema loetuks ja sisene järgmisse teemasse või gruppi"
 
-#: src/lang.c:405
+#: src/lang.c:408
 msgid	"choose first article in list"
 msgstr	"vali loendis esimene artikkel"
 
-#: src/lang.c:406
+#: src/lang.c:409
 msgid	"choose last article in list"
 msgstr	"vali loendis viimane artikkel"
 
-#: src/lang.c:407
+#: src/lang.c:410
 msgid	"mark article or tagged articles as read and move cursor to next unread article"
 msgstr	"märgi artikkel või märgitud artiklid loetuks, liigu järgm. lugemata artiklile"
 
-#: src/lang.c:408
+#: src/lang.c:411
 msgid	"read chosen article"
 msgstr	"loe valitud artiklit"
 
-#: src/lang.c:409
+#: src/lang.c:412
 msgid	"Display properties\n"
 	"------------------"
 msgstr	"Ekraani omadused\n"
 	"----------------"
 
-#: src/lang.c:410
+#: src/lang.c:413
 msgid	"Miscellaneous\n"
 	"-------------"
 msgstr	"Muud\n"
 	"----"
 
-#: src/lang.c:411
+#: src/lang.c:414
 msgid	"Moving around\n"
 	"-------------"
 msgstr	"Liikumine\n"
 	"---------"
 
-#: src/lang.c:412
+#: src/lang.c:415
 msgid	"Group/thread/article operations\n"
 	"-------------------------------"
 msgstr	"Grupi/teema/artikli operatsioonid\n"
 	"---------------------------------"
 
-#: src/lang.c:414
+#: src/lang.c:417
 msgid	"Group Level Commands"
 msgstr	"Grupitaseme käsud"
 
-#: src/lang.c:415
+#: src/lang.c:418
 msgid	"Kill filter added"
 msgstr	"Surmamise filter lisatud"
 
-#: src/lang.c:416
+#: src/lang.c:419
 msgid	"Auto-selection filter added"
 msgstr	"Automaatse valiku filter lisatud"
 
-#: src/lang.c:417
+#: src/lang.c:420
 msgid	"All parts tagged"
 msgstr	"Kõik osad on märgitud"
 
-#: src/lang.c:418
+#: src/lang.c:421
 msgid	"Storing article for later posting"
 msgstr	"Salvestan artikli hiljem postitamiseks"
 
-#: src/lang.c:419
+#: src/lang.c:422
 msgid	"Please enter a valid character"
 msgstr	"Palun sisestage lubatud sümbol"
 
-#: src/lang.c:420
+#: src/lang.c:423
 #, c-format
 msgid	"Missing part #%d"
 msgstr	"Puudub osa nr: %d"
 
-#: src/lang.c:421
+#: src/lang.c:424
 msgid	"*** No postponed articles ***"
 msgstr	"*** Postitusootel artikleid pole ***"
 
-#: src/lang.c:422
+#: src/lang.c:425
 msgid	"Not a multi-part message"
 msgstr	"Ei ole mitmeosaline teade"
 
-#: src/lang.c:423
+#: src/lang.c:426
 msgid	"You are not subscribed to this group"
 msgstr	"Te pole seda gruppi tellinud"
 
-#: src/lang.c:424
+#: src/lang.c:427
 msgid	"No previous expression"
 msgstr	"Eelmist avaldist pole"
 
-#: src/lang.c:425
+#: src/lang.c:428
 msgid	"Operation disabled in no-overwrite mode"
 msgstr	"Operatsioon on ülekirjutamist keelavas moodis keelatud"
 
 #. TODO: replace hardcoded key-name in txt_info_postponed
-#: src/lang.c:427
+#: src/lang.c:430
 #, c-format
 msgid	"%d postponed %s, reuse with ^O...\n"
 msgstr	"%d ootel %s, kasutamiseks ^O...\n"
 
-#: src/lang.c:428
+#: src/lang.c:431
 msgid	"X-Conversion-Note: multipart/alternative contents have been removed.\n"
 	"  To get the whole article, turn alternative handling OFF in the Option Menu\n"
 msgstr	"X-Conversion-Note: multipart/alternative sisu on eemaldatud.\n"
 	"  Et näha tervet artiklit, lülitage alternatiivide käsitlemine välja\n"
 
-#: src/lang.c:430
+#: src/lang.c:433
 #, c-format
 msgid	"Save filename for %s/%s is a mailbox. Attachment not saved"
 msgstr	"Fail %s/%s salvestamiseks on postkast. Lisa ei salvestatud"
 
-#: src/lang.c:431
+#: src/lang.c:434
 msgid	"TeX2Iso encoded article"
 msgstr	"TeX2Iso kodeeritud artikkel"
 
-#: src/lang.c:432
+#: src/lang.c:435
 msgid	"incomplete "
 msgstr	"mittetäielik "
 
 #. TODO: replace hardcoded key-names
-#: src/lang.c:434
+#: src/lang.c:437
 #, c-format
 msgid	"\n"
 	"Welcome to %s, a full screen threaded Netnews reader. It can read news "
@@ -1886,129 +1885,139 @@ msgstr	"\n"
 	"Lisainfot leiate manualist, README, INSTALL, TODO ja FTP failidest.\n"
 	"Palun saatke vearaportid/kommentaarid 'R' käsuga aadressil %s.\n"
 
-#: src/lang.c:450
+#: src/lang.c:453
 #, c-format
 msgid	"Invalid  From: %s  line. Read the INSTALL file again."
 msgstr	"Vigane From: %s rida. Lugege uuesti faili INSTALL."
 
-#: src/lang.c:451
+#: src/lang.c:454
 #, c-format
 msgid	"Invalid  Sender:-header %s"
 msgstr	"Vigane Sender:-päis %s"
 
-#: src/lang.c:452
+#: src/lang.c:455
 msgid	"Inverse video disabled"
 msgstr	"Pööratud video keelatud"
 
-#: src/lang.c:453
+#: src/lang.c:456
 msgid	"Inverse video enabled"
 msgstr	"Pööratud video lubatud"
 
-#: src/lang.c:455
+#: src/lang.c:458
 #, c-format
 msgid	"Missing definition for %s\n"
 msgstr	"%s definitsioon puudub\n"
 
-#: src/lang.c:456
+#: src/lang.c:459
 #, c-format
 msgid	"Invalid key definition '%s'\n"
 msgstr	"Vigane klahvi definitsioon '%s'\n"
 
-#: src/lang.c:457
+#: src/lang.c:460
 #, c-format
 msgid	"Invalid keyname '%s'\n"
 msgstr	"Vigane klahvi nimi '%s'\n"
 
-#: src/lang.c:458
+#: src/lang.c:462
 #, c-format
 msgid	"Key '%s' is defined for both %s%s and %s%s\n"
 msgstr	"Klahv '%s' on defineeritud nii %s%s, kui ka %s%s jaoks\n"
 
-#: src/lang.c:459
+#: src/lang.c:464
+#, c-format
+msgid	"Keymap file was upgraded to version %s\n"
+msgstr	""
+
+#: src/lang.c:465
 #, c-format
 msgid	"Kill From:     [%s] (y/n): "
 msgstr	"Surmake From:  [%s] (j/e): "
 
-#: src/lang.c:460
+#: src/lang.c:466
 msgid	"Kill Lines: (</>num): "
 msgstr	"Surmake read: (</>num) : "
 
-#: src/lang.c:461
+#: src/lang.c:467
 msgid	"Kill Article Menu"
 msgstr	"Artuklite surmamise menüü"
 
-#: src/lang.c:462
+#: src/lang.c:468
 #, c-format
 msgid	"Kill Msg-Id:   [%s] (f/l/o/n): "
 msgstr	"Surmake Msg-Id:[%s] (f/l/o/n): "
 
-#: src/lang.c:463
+#: src/lang.c:469
 msgid	"Kill pattern scope  : "
 msgstr	"Surmamise mustri ulatus: "
 
-#: src/lang.c:464
+#: src/lang.c:470
 #, c-format
 msgid	"Kill Subject:  [%s] (y/n): "
 msgstr	"Surmake teema: [%s] (j/e): "
 
-#: src/lang.c:465
+#: src/lang.c:471
 msgid	"Kill text pattern   : "
 msgstr	"Surmake tekst mustriga : "
 
-#: src/lang.c:466
+#: src/lang.c:472
 msgid	"Kill time in days   : "
 msgstr	"Surmamise aeg päevades : "
 
-#: src/lang.c:468
+#: src/lang.c:474
 msgid	"Last"
 msgstr	"Viimane"
 
-#: src/lang.c:469
+#: src/lang.c:475
 msgid	"-- Last response --"
 msgstr	"-- Viimane vastus --"
 
-#: src/lang.c:470
+#: src/lang.c:476
 #, c-format
 msgid	"Lines %s  "
 msgstr	"Rida: %s  "
 
-#: src/lang.c:472
+#: src/lang.c:478
 msgid	"Message-ID: line              "
 msgstr	"Message-ID: rida            "
 
-#: src/lang.c:474
+#: src/lang.c:479
+#, fuzzy
+msgid	"Mail"
+msgstr	"Saadetud"
+
+#: src/lang.c:480
 msgid	"mailbox "
 msgstr	"postkasti "
 
-#: src/lang.c:475
+#: src/lang.c:481
 #, c-format
 msgid	"Mail article(s) to [%.*s]> "
 msgstr	"Saada artiklid aadressil [%.*s]> "
 
-#: src/lang.c:476
+#: src/lang.c:482
 #, c-format
 msgid	"Mailing log to %s\n"
 msgstr	"Saadan logi aadressil %s\n"
 
-#: src/lang.c:477
+#: src/lang.c:483
 msgid	"Mail bug report..."
 msgstr	"Saada vearaport..."
 
-#: src/lang.c:478
+#: src/lang.c:484
 #, c-format
 msgid	"Mail BUG REPORT to %s?"
 msgstr	"Saadan VEARAPORTI aadressil %s?"
 
-#: src/lang.c:479
+#: src/lang.c:485
 msgid	"Mailed"
 msgstr	"Saadetud"
 
-#: src/lang.c:480
+#: src/lang.c:486
 #, c-format
 msgid	"Mailing to %s..."
 msgstr	"Saadan aadressil %s..."
 
-#: src/lang.c:481
+#: src/lang.c:487
 msgid	"# [Mail/Save] active file. Format is like news active file:\n"
 	"#   groupname  max.artnum  min.artnum  /dir\n"
 	"# The 4th field is the basedir (ie. ~/Mail or ~/News)\n"
@@ -2018,283 +2027,283 @@ msgstr	"# [Saada/Salvesta] fail \"active
 	"# Neljas väli on baaskataloog (näiteks ~/Mail või ~/News)\n"
 	"#\n"
 
-#: src/lang.c:484
+#: src/lang.c:490
 #, c-format
 msgid	"%s marked as unread"
 msgstr	"%s märgitud loetuks"
 
-#: src/lang.c:485
+#: src/lang.c:491
 #, c-format
 msgid	"Marked %d of %d tagged %s as read"
 msgstr	"Märkisin %d (%d) märgitud %s loetuks"
 
-#: src/lang.c:486
+#: src/lang.c:492
 #, c-format
 msgid	"Mark all articles as read%s?"
 msgstr	"Märgin kõik artiklid loetuks%s?"
 
-#: src/lang.c:487
+#: src/lang.c:493
 #, c-format
 msgid	"Mark %s=tagged articles, %s=current article, %s=quit: "
 msgstr	"Märgi %s=märgitud artiklid, %s=jooksev artikkel, %s=välju: "
 
-#: src/lang.c:488
+#: src/lang.c:494
 #, c-format
 msgid	"Mark group %s as read?"
 msgstr	"Märgin grupi %s loetuks?"
 
-#: src/lang.c:489
+#: src/lang.c:495
 #, c-format
 msgid	"Mark thread as read%s?"
 msgstr	"Märgin teema loetuks%s?"
 
-#: src/lang.c:490
+#: src/lang.c:496
 #, c-format
 msgid	"Mark %s=tagged articles/threads, %s=current thread, %s=quit: "
 msgstr	"Märgi %s=märgitud artiklid/teemad, %s=jooksev teema, %s=välju: "
 
-#: src/lang.c:491
+#: src/lang.c:497
 #, c-format
 msgid	"Matching %s groups..."
 msgstr	"Otsin %s gruppe..."
 
-#: src/lang.c:492 src/lang.c:496
+#: src/lang.c:498 src/lang.c:502
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s=search pattern; %s=kill/select"
 msgstr	"<n>=n jooksvaks grupiks; %s=järgmine lugemata; %s=otsi; %s=surma/vali;"
 
-#: src/lang.c:493
+#: src/lang.c:499
 #, c-format
 msgid	"%s=author search; %s=catchup; %s=line down; %s=line up; %s=mark read; %s=list "
 	"thread"
 msgstr	"%s=autori otsing; %s=loetud; %s=rida alla; %s=rida üles; %s=märgi loetuks; "
 	"%s=teema"
 
-#: src/lang.c:494
+#: src/lang.c:500
 #, c-format
 msgid	"%s=line up; %s=line down; %s=page up; %s=page down; %s=top; %s=bottom"
 msgstr	"%s=rida üles; %s=rida alla; %s=lk. üles; %s=lk. alla; %s=üles; %s=alla"
 
-#: src/lang.c:495
+#: src/lang.c:501
 #, c-format
 msgid	"%s=search forwards; %s=search backwards; %s=quit"
 msgstr	"%s=otsi edaspidi; %s=otsi tagaspidi; %s=välju"
 
-#: src/lang.c:497
+#: src/lang.c:503
 #, c-format
 msgid	"%s=author search; %s=body search; %s=catchup; %s=followup; %s=mark read"
 msgstr	"%s=autori otsing; %s=otsi sisu; %s=loetud; %s=vasta; %s=märgi loetuks"
 
-#: src/lang.c:498
+#: src/lang.c:504
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s,%s=search pattern; %s=catchup"
 msgstr	"<n>=n jooksvaks grupiks; %s=järgmine lugemata; %s,%s=otsi; %s=loetud"
 
-#: src/lang.c:499
+#: src/lang.c:505
 #, c-format
 msgid	"%s=line down; %s=line up; %s=help; %s=move; %s=quit; %s=toggle all/unread"
 msgstr	"%s=rida alla; %s=rida üles; %s=appi; %s=tõsta; %s=välju; %s=kõik/lugemata"
 
-#: src/lang.c:500
+#: src/lang.c:506
 #, c-format
 msgid	"%s=subscribe; %s=sub pattern; %s=unsubscribe; %s=unsub pattern; %s=yank in/out"
 msgstr	"%s=telli; %s=telli muster; %s=loobu; %s=loobu muster; %s=kõik/tellitud"
 
-#: src/lang.c:501
+#: src/lang.c:507
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s=catchup; %s=display toggle"
 msgstr	"<n>=jooksev n; %s=järgmine lugemata; %s=loetud; %s=ekraani lülit"
 
-#: src/lang.c:502
+#: src/lang.c:508
 #, c-format
 msgid	"%s=help; %s=line down; %s=line up; %s=quit; %s=tag; %s=mark unread"
 msgstr	"%s=appi; %s=rida alla; %s=rida üles; %s=välju; %s=märgi; %s=lugemata"
 
-#: src/lang.c:503
+#: src/lang.c:509
 msgid	"--More--"
 msgstr	"--Veel--"
 
-#: src/lang.c:504
+#: src/lang.c:510
 #, c-format
 msgid	"Moving %s..."
 msgstr	"Tõstan %s..."
 
-#: src/lang.c:506
+#: src/lang.c:512
 msgid	", name: "
 msgstr	", nimi: "
 
-#: src/lang.c:507
+#: src/lang.c:513
 #, c-format
 msgid	"Goto newsgroup [%s]> "
 msgstr	"Mine gruppi [%s]> "
 
-#: src/lang.c:508
+#: src/lang.c:514
 msgid	"newsgroups"
 msgstr	"gruppidesse"
 
-#: src/lang.c:509
+#: src/lang.c:515
 #, c-format
 msgid	"Position %s in group list (1,2,..,$) [%d]> "
 msgstr	"Positsioon %s gruppide nimistus (1,2,..,$) [%d]> "
 
-#: src/lang.c:510
+#: src/lang.c:516
 msgid	"newsgroup"
 msgstr	"gruppi"
 
-#: src/lang.c:511
+#: src/lang.c:517
 msgid	"Try and save newsrc file again?"
 msgstr	"Proovin newsrc faili uuesti salvestada?"
 
-#: src/lang.c:512
+#: src/lang.c:518
 msgid	"Warning: No newsgroups were written to your newsrc file. Save aborted."
 msgstr	"Hoiatus: Teie newsrc faili ei salvestatud ühtegi gruppi. Katkestasin "
 	"salvestamise."
 
-#: src/lang.c:513
+#: src/lang.c:519
 msgid	"newsrc file saved successfully.\n"
 msgstr	"newsrc fail on edukalt salvestatud.\n"
 
-#: src/lang.c:514
+#: src/lang.c:520
 msgid	"-- Next response --"
 msgstr	"- Järgmine vastus -"
 
-#: src/lang.c:515
+#: src/lang.c:521
 #, c-format
 msgid	"NNTP authorization password not found for %s"
 msgstr	"Serverile %s vastavat NNTP autoriseerimise parooli pole"
 
-#: src/lang.c:516
+#: src/lang.c:522
 msgid	"No  "
 msgstr	"Ei  "
 
-#: src/lang.c:517
+#: src/lang.c:523
 msgid	"*** No articles ***"
 msgstr	"*** Artikleid pole ***"
 
-#: src/lang.c:518
+#: src/lang.c:524
 msgid	"No articles have been posted"
 msgstr	"Postitatud artikleid pole"
 
-#: src/lang.c:519
+#: src/lang.c:525
 msgid	"*** No description ***"
 msgstr	"*** Kirjeldus puudub ***"
 
-#: src/lang.c:520
+#: src/lang.c:526
 msgid	"No filename"
 msgstr	"Failil pole nime"
 
-#: src/lang.c:521
+#: src/lang.c:527
 msgid	"No group"
 msgstr	"Gruppi pole"
 
-#: src/lang.c:522
+#: src/lang.c:528
 msgid	"*** No groups ***"
 msgstr	"*** Gruppe pole ***"
 
-#: src/lang.c:523
+#: src/lang.c:529
 msgid	"No more groups to read"
 msgstr	"Lugemiseks rohkem gruppe pole"
 
-#: src/lang.c:524
+#: src/lang.c:530
 msgid	"No last message"
 msgstr	"Viimast teadet pole"
 
-#: src/lang.c:525
+#: src/lang.c:531
 msgid	"No mail address"
 msgstr	"E-posti aadressi pole"
 
-#: src/lang.c:526
+#: src/lang.c:532
 msgid	"No articles marked for saving"
 msgstr	"Salvestamiseks märgitud artikleid pole"
 
-#: src/lang.c:527
+#: src/lang.c:533
 msgid	"No match"
 msgstr	"Ei leia"
 
-#: src/lang.c:528
+#: src/lang.c:534
 msgid	"No more groups"
 msgstr	"Rohkem gruppe pole"
 
-#: src/lang.c:529
+#: src/lang.c:535
 msgid	"No newsgroups"
 msgstr	"Gruppe pole"
 
-#: src/lang.c:530
+#: src/lang.c:536
 msgid	"No next unread article"
 msgstr	"Järgmist lugemata artiklit pole"
 
-#: src/lang.c:531
+#: src/lang.c:537
 msgid	"No previous group"
 msgstr	"Eelmist gruppi pole"
 
-#: src/lang.c:532
+#: src/lang.c:538
 msgid	"No previous unread article"
 msgstr	"Eelmist lugemata artiklit pole"
 
-#: src/lang.c:533
+#: src/lang.c:539
 msgid	"No responses"
 msgstr	"Vastuseid pole"
 
-#: src/lang.c:534
+#: src/lang.c:540
 msgid	"No responses to list in current thread"
 msgstr	"Jooksvas teemas pole vastuseid"
 
-#: src/lang.c:535
+#: src/lang.c:541
 msgid	"No search string"
 msgstr	"Otsingusõne puudub"
 
-#: src/lang.c:536
+#: src/lang.c:542
 msgid	"No subject"
 msgstr	"Teema puudub"
 
-#: src/lang.c:538
+#: src/lang.c:544
 #, c-format
 msgid	"%s: Terminal must have clear to end-of-line (ce)\n"
 msgstr	"%s: Terminalil peab olema puhasta realõpuni (ce) omadus\n"
 
-#: src/lang.c:539
+#: src/lang.c:545
 #, c-format
 msgid	"%s: Terminal must have clear to end-of-screen (cd)\n"
 msgstr	"%s: Terminalil peab olema puhasta ekraanilõpuni (cd) omadus\n"
 
-#: src/lang.c:540
+#: src/lang.c:546
 #, c-format
 msgid	"%s: Terminal must have clearscreen (cl) capability\n"
 msgstr	"%s: Terminalil peab olema ekraanipuhastamise (cl) omadus\n"
 
-#: src/lang.c:541
+#: src/lang.c:547
 #, c-format
 msgid	"%s: Terminal must have cursor motion (cm)\n"
 msgstr	"%s: Terminal peab toetama kursori liigutamist (cm)\n"
 
-#: src/lang.c:542
+#: src/lang.c:548
 #, c-format
 msgid	"%s: TERM variable must be set to use screen capabilities\n"
 msgstr	"%s: ekraani omaduste kasutamiseks peab olema seatud keskkonnamuutuja TERM\n"
 
-#: src/lang.c:544
+#: src/lang.c:550
 #, c-format
 msgid	"No viewer found for %s/%s\n"
 msgstr	"%s/%s jaoks puudub vaatur\n"
 
-#: src/lang.c:545
+#: src/lang.c:551
 msgid	"Newsgroup does not exist on this server"
 msgstr	"Gruppi pole sellel serveril"
 
-#: src/lang.c:546
+#: src/lang.c:552
 #, c-format
 msgid	"Group %s not found in active file"
 msgstr	"Gruppi %s pole aktiivsete gruppide failis"
 
-#: src/lang.c:547
+#: src/lang.c:553
 msgid	"c)reate it, use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr	"c=loo fail, a)lternatiivne nimi, d=vaikimisi .newsrc, q=välju: "
 
-#: src/lang.c:548
+#: src/lang.c:554
 msgid	"use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr	"a)lternatiivne nimi, d=vaikimisi .newsrc, q=välju: "
 
-#: src/lang.c:549
+#: src/lang.c:555
 #, c-format
 msgid	"# NNTP-server -> newsrc translation table and NNTP-server\n"
 	"# shortname list for %s %s\n"
@@ -2321,40 +2330,40 @@ msgstr	"# NNTP-server -> newsrc teisendu
 	"#   news.ka.nu    /tmp/nrc-nu      kanu    nu\n"
 	"#\n"
 
-#: src/lang.c:556
+#: src/lang.c:562
 msgid	"Only"
 msgstr	"Ainult"
 
-#: src/lang.c:557
+#: src/lang.c:563
 #, c-format
 msgid	"Option not enabled. Recompile with %s."
 msgstr	"Võti pole lubatud. Kasutage kompileerimisel %s."
 
-#: src/lang.c:558
+#: src/lang.c:564
 msgid	"Options Menu"
 msgstr	"Omaduste menüü"
 
-#: src/lang.c:561
+#: src/lang.c:567
 #, c-format
 msgid	"Error in regex: %s at pos. %d '%s'"
 msgstr	"Viga regulaaravaldises: %s positsioonil %d '%s'"
 
-#: src/lang.c:562
+#: src/lang.c:568
 #, c-format
 msgid	"Error in regex: pcre internal error %d"
 msgstr	"Viga regulaaravaldises: pcre sisemine viga %d"
 
-#: src/lang.c:563
+#: src/lang.c:569
 #, c-format
 msgid	"Error in regex: study - pcre internal error %s"
 msgstr	"Viga regulaaravaldises: uurimiseks - pcre sisemine viga %s"
 
-#: src/lang.c:564
+#: src/lang.c:570
 msgid	"Post a followup..."
 msgstr	"Postita vastus..."
 
 #. TODO: replace hardcoded key-name in txt_post_error_ask_postpone
-#: src/lang.c:566
+#: src/lang.c:572
 msgid	"An error has occurred while posting the article. If you think that this\n"
 	"error is temporary or otherwise correctable, you can postpone the article\n"
 	"and pick it up again with ^O later.\n"
@@ -2362,275 +2371,274 @@ msgstr	"Artikli postitamisel tekkis viga
 	"või muul viisil kõrvaldatav, võite artikli salvestada hiljem postitamiseks\n"
 	"ja ^O käsuga hiljem postitada.\n"
 
-#: src/lang.c:569
+#: src/lang.c:575
 msgid	"Posted articles history"
 msgstr	"Postitatud artiklite ajalugu"
 
-#: src/lang.c:570
+#: src/lang.c:576
 #, c-format
 msgid	"Post to newsgroup(s) [%s]> "
 msgstr	"Postita gruppidesse [%s]> "
 
-#: src/lang.c:571
+#: src/lang.c:577
 msgid	"-- post processing started --"
 msgstr	"-- lõpptöötlus alustas --"
 
-#: src/lang.c:572
+#: src/lang.c:578
 msgid	"-- post processing completed --"
 msgstr	"-- lõpptöötlus lõpetas --"
 
-#: src/lang.c:573
+#: src/lang.c:579
 #, c-format
 msgid	"Post subject [%s]> "
 msgstr	"Postituse teema [%s]> "
 
-#: src/lang.c:574
+#: src/lang.c:580
 msgid	"# Summary of mailed/posted messages viewable by 'W' command from within tin.\n"
 msgstr	"# Kokkuvõtte saadetud/postitatud teadetest saate tinis 'W' käsuga.\n"
 
-#: src/lang.c:575
+#: src/lang.c:581
 msgid	"Posting article..."
 msgstr	"Postitan artiklit..."
 
-#: src/lang.c:576
+#: src/lang.c:582
 msgid	"Post postponed articles [%%s]? (%s/%s/%s/%s/%s): "
 msgstr	"Postitan ootel artiklid [%%s]? (%s/%s/%s/%s/%s): "
 
-#: src/lang.c:577
+#: src/lang.c:583
 #, c-format
 msgid	"Hot %s"
 msgstr	"Kuum %s"
 
-#: src/lang.c:578
+#: src/lang.c:584
 #, c-format
 msgid	"Tagged %s"
 msgstr	"Märgitud %s"
 
-#: src/lang.c:579
+#: src/lang.c:585
 #, c-format
 msgid	"Untagged %s"
 msgstr	"Märkimata %s"
 
-#: src/lang.c:580
+#: src/lang.c:586
 msgid	"Processing mail messages marked for deletion."
 msgstr	"Töötlen kirju, mis on kustutamiseks märgitud."
 
-#: src/lang.c:581
+#: src/lang.c:587
 msgid	"Processing saved articles marked for deletion."
 msgstr	"Töötlen salvestatud ja kustutamiseks märgitud artikleid."
 
-#: src/lang.c:582
+#: src/lang.c:588
 #, c-format
 msgid	"Accept Followup-To? %s=post, %s=ignore, %s=quit: "
 msgstr	"Aktsepteerin Followup-To? %s=postita, %s=ignoreeri, %s=välju: "
 
-#: src/lang.c:583
+#: src/lang.c:589
 msgid	"Article unchanged, abort mailing?"
 msgstr	"Artiklit ei ole muudetud, katkestan saatmise?"
 
-#: src/lang.c:584
+#: src/lang.c:590
 #, c-format
 msgid	"Do you want to see postponed articles (%d)?"
 msgstr	"Kas soovite näha postitamisootel artikleid (%d)?"
 
-#: src/lang.c:586
+#: src/lang.c:592
 msgid	"Add quick kill filter?"
 msgstr	"Lisan kiirsurmamise filtri?"
 
-#: src/lang.c:587
+#: src/lang.c:593
 msgid	"Add quick selection filter?"
 msgstr	"Lisan kiirvaliku filtri?"
 
-#: src/lang.c:588
+#: src/lang.c:594
 msgid	"Do you really want to quit?"
 msgstr	"Kas te tõesti soovite väljuda?"
 
-#: src/lang.c:589
+#: src/lang.c:595
 msgid	"%s=edit cancel message, %s=quit, %s=delete (cancel) [%%s]: "
 msgstr	"%s=toimeta katkestamisteadet, %s=välju, %s=kustuta (katkesta) [%%s]: "
 
-#: src/lang.c:590
+#: src/lang.c:596
 msgid	"You have tagged articles in this group - quit anyway?"
 msgstr	"Teil on siin grupis märgitud artikleid - väljun siiski?"
 
-#: src/lang.c:591
+#: src/lang.c:597
 #, c-format
 msgid	"%s=quit, %s=edit, %s=postpone: "
 msgstr	"%s=välju, %s=toimeta, %s=ootele: "
 
-#: src/lang.c:592
+#: src/lang.c:598
 #, c-format
 msgid	"%s=quit %s=edit %s=save kill description: "
 msgstr	"%s=välju %s=toimeta %s=salvesta surmamise kirjeldus: "
 
-#: src/lang.c:593
+#: src/lang.c:599
 #, c-format
 msgid	"%s=quit %s=edit %s=save select description: "
 msgstr	"%s=välju %s=toimeta %s=salvesta valiku kirjeldus: "
 
-#: src/lang.c:594
+#: src/lang.c:600
 msgid	"Do you really want to quit without saving your configuration?"
 msgstr	"Kas te tõesti soovite seadeid salvestamata väljuda?"
 
-#: src/lang.c:597
+#: src/lang.c:603
 msgid	"Invalid range - valid are '0-9.$' eg. 1-$"
 msgstr	"Vigane vahemik - lubatud on '0-9.$' näiteks 1-$"
 
-#: src/lang.c:598
+#: src/lang.c:604
 msgid	"Do you want to abort this operation?"
 msgstr	"Kas soovite seda operatsiooni katkestada?"
 
-#: src/lang.c:599
+#: src/lang.c:605
 msgid	"Do you want to exit tin immediately?"
 msgstr	"Kas soovite viivitamata tinist väljuda?"
 
-#: src/lang.c:600
+#: src/lang.c:606
 msgid	"Read response> "
 msgstr	"Loen vastust> "
 
-#: src/lang.c:601
+#: src/lang.c:607
 msgid	"Reading ('q' to quit)..."
 msgstr	"Loen ('q' katkestamiseks)..."
 
-#: src/lang.c:602
+#: src/lang.c:608
 #, c-format
 msgid	"Reading %sarticles..."
 msgstr	"Loen %sartikleid..."
 
-#: src/lang.c:603
+#: src/lang.c:609
 #, c-format
 msgid	"Reading %sattributes file...\n"
 msgstr	"Loen %satribuutide faili...\n"
 
-#: src/lang.c:604
+#: src/lang.c:610
 #, c-format
 msgid	"Reading %sconfig file...\n"
 msgstr	"Loen %sseadete faili...\n"
 
-#: src/lang.c:605
+#: src/lang.c:611
 msgid	"Reading filter file...\n"
 msgstr	"Loen filtrite faili...\n"
 
-#: src/lang.c:606
+#: src/lang.c:612
 #, c-format
 msgid	"Reading %s groups..."
 msgstr	"Loen %s gruppe..."
 
-#: src/lang.c:607
+#: src/lang.c:613
 msgid	"Reading input history file...\n"
 msgstr	"Loen sisendi ajalugu...\n"
 
-#: src/lang.c:608
+#: src/lang.c:614
 msgid	"Reading keymap file...\n"
 msgstr	"Loen klahvitabeli faili...\n"
 
-#: src/lang.c:609
+#: src/lang.c:615
 msgid	"Reading groups from active file... "
 msgstr	"Loen aktiivseid gruppe... "
 
-#: src/lang.c:610
+#: src/lang.c:616
 msgid	"Reading groups from newsrc file... "
 msgstr	"Loen gruppe newsrc failist... "
 
-#: src/lang.c:611
+#: src/lang.c:617
 msgid	"Reading newsgroups file... "
 msgstr	"Loen gruppide kirjeldusi... "
 
-#: src/lang.c:612
+#: src/lang.c:618
 msgid	"Reading newsrc file..."
 msgstr	"Loen newsrc faili..."
 
-# TRANSLATION MISSING
-#: src/lang.c:614
+#: src/lang.c:620
 #, c-format
 msgid	"(%d:%02d remaining)"
-msgstr	""
+msgstr	"(%d:%02d järgneb)"
 
-#: src/lang.c:616
+#: src/lang.c:622
 #, c-format
 msgid	"Bogus group %s removed."
 msgstr	"Vigane grupp %s on eemaldatud."
 
-#: src/lang.c:617
+#: src/lang.c:623
 #, c-format
 msgid	"Error: rename %s to %s"
 msgstr	"Viga: %s uus nimi %s"
 
-#: src/lang.c:618
+#: src/lang.c:624
 msgid	"Reply to author..."
 msgstr	"Vastan autorile..."
 
-#: src/lang.c:619
+#: src/lang.c:625
 msgid	"Repost"
 msgstr	"Uuesti postitus"
 
-#: src/lang.c:620
+#: src/lang.c:626
 msgid	"Reposting article..."
 msgstr	"Postitan artikli uuesti..."
 
-#: src/lang.c:621
+#: src/lang.c:627
 #, c-format
 msgid	"Repost article(s) to group(s) [%s]> "
 msgstr	"Postitan artikli(d) gruppi(desse) [%s]> "
 
-#: src/lang.c:622
+#: src/lang.c:628
 msgid	"Reset newsrc?"
 msgstr	"Algväärtustan newsrc?"
 
-#: src/lang.c:623
+#: src/lang.c:629
 msgid	"Responses have been directed to the following newsgroups"
 msgstr	"Vastused edastatakse järgnevatesse gruppidesse"
 
-#: src/lang.c:624
+#: src/lang.c:630
 #, c-format
 msgid	"Responses have been directed to poster. %s=mail, %s=post, %s=quit: "
 msgstr	"Vastused edastatakse postitajale. %s=kirjuta, %s=postita, %s=välju: "
 
-#: src/lang.c:625
+#: src/lang.c:631
 #, c-format
 msgid	"RespNo %4d of %4d"
 msgstr	"Vastus %4d : %4d"
 
-#: src/lang.c:626
+#: src/lang.c:632
 msgid	"Press <RETURN> to continue..."
 msgstr	"Jätkamiseks vajutage <RETURN>..."
 
-#: src/lang.c:628
+#: src/lang.c:634
 #, c-format
 msgid	"Select From    [%s] (y/n): "
 msgstr	"Valige From    [%s] (j/e): "
 
-#: src/lang.c:629
+#: src/lang.c:635
 msgid	"Select Lines: (</>num): "
 msgstr	"Valige read:  (</>num): "
 
-#: src/lang.c:630
+#: src/lang.c:636
 msgid	"Auto-select Article Menu"
 msgstr	"Automaatselt valitavate artiklite menüü"
 
-#: src/lang.c:631
+#: src/lang.c:637
 #, c-format
 msgid	"Select Msg-Id  [%s] (f/l/o/n): "
 msgstr	"Valige Msg-Id  [%s] (f/l/o/n): "
 
-#: src/lang.c:632
+#: src/lang.c:638
 msgid	"Select pattern scope: "
 msgstr	"Valige mustri ulatus: "
 
-#: src/lang.c:633
+#: src/lang.c:639
 #, c-format
 msgid	"Select Subject [%s] (y/n): "
 msgstr	"Valige teema   [%s] (j/e): "
 
-#: src/lang.c:634
+#: src/lang.c:640
 msgid	"Select text pattern : "
 msgstr	"Valige tekstimuster : "
 
-#: src/lang.c:635
+#: src/lang.c:641
 msgid	"Select time in days   : "
 msgstr	"Valige aeg päevades   : "
 
-#: src/lang.c:636
+#: src/lang.c:642
 #, c-format
 msgid	"# %s server configuration file\n"
 	"# This file was automatically saved by %s %s %s (\"%s\")\n"
@@ -2649,223 +2657,222 @@ msgstr	"# %s serveri seadete fail\n"
 	"############################################################################\n"
 	"\n"
 
-#: src/lang.c:642
+#: src/lang.c:648
 msgid	"Showing unread groups only"
 msgstr	"Näitan ainult lugemata gruppe"
 
-#: src/lang.c:643
+#: src/lang.c:649
 msgid	"Subject: line (ignore case)   "
 msgstr	"Subject: rida (tõstutundetu)"
 
-#: src/lang.c:644
+#: src/lang.c:650
 msgid	"Subject: line (case sensitive)"
 msgstr	"Subject: rida (tõstutundlik)"
 
-#: src/lang.c:645
+#: src/lang.c:651
 msgid	"Save"
 msgstr	"Salvesta"
 
-#: src/lang.c:646
+#: src/lang.c:652
 #, c-format
 msgid	"Save '%s' (%s/%s)?"
 msgstr	"Salvestan '%s' (%s/%s)?"
 
-#: src/lang.c:647
+#: src/lang.c:653
 msgid	"Save configuration before continuing?"
 msgstr	"Salvestan seaded enne jätkamist?"
 
-#: src/lang.c:648
+#: src/lang.c:654
 msgid	"Save filename> "
 msgstr	"Fail salvestamiseks> "
 
-#: src/lang.c:649
+#: src/lang.c:655
 msgid	"Saved"
 msgstr	"Salvestatud"
 
-#: src/lang.c:650
+#: src/lang.c:656
 #, c-format
 msgid	"%4d unread (%4d hot) %s in %s\n"
 msgstr	"%4d lugemata (%4d kuuma) %s grupis %s\n"
 
-#: src/lang.c:651
+#: src/lang.c:657
 #, c-format
 msgid	"Saved %s...\n"
 msgstr	"Salvestatud %s...\n"
 
-#: src/lang.c:652
+#: src/lang.c:658
 msgid	"Nothing was saved"
 msgstr	"Midagi ei salvestatud"
 
-#: src/lang.c:653
+#: src/lang.c:659
 #, c-format
 msgid	"\n"
 	"%s %d %s from %d %s\n"
 msgstr	"\n"
 	"%s %d %s %d grupist%s\n"
 
-#: src/lang.c:654
+#: src/lang.c:660
 #, c-format
 msgid	"-- %s saved to %s%s --"
 msgstr	"-- %s salvestati %s%s --"
 
-#: src/lang.c:655
+#: src/lang.c:661
 #, c-format
 msgid	"-- %s saved to %s - %s --"
 msgstr	"-- %s salvestati %s - %s --"
 
-#: src/lang.c:656
+#: src/lang.c:662
 msgid	"Saving..."
 msgstr	"Salvestan..."
 
-#: src/lang.c:657
+#: src/lang.c:663
 #, c-format
 msgid	"%s: Screen initialization failed"
 msgstr	"%s: Ekraani initsialiseerimine ebaõnnestus"
 
-#: src/lang.c:659
+#: src/lang.c:665
 #, c-format
 msgid	"%s: screen is too small\n"
 msgstr	"%s: ekraan on liiga väike\n"
 
-#: src/lang.c:661
+#: src/lang.c:667
 #, c-format
 msgid	"screen is too small, %s is exiting\n"
 msgstr	"ekraan on liiga väike, %s lõpetab töö\n"
 
-#: src/lang.c:662
+#: src/lang.c:668
 #, c-format
 msgid	"Search backwards [%s]> "
 msgstr	"Otsin tagurpidi [%s]> "
 
-#: src/lang.c:663
+#: src/lang.c:669
 #, c-format
 msgid	"Search body [%s]> "
 msgstr	"Otsi kehast [%s]> "
 
-#: src/lang.c:664
+#: src/lang.c:670
 #, c-format
 msgid	"Search forwards [%s]> "
 msgstr	"Otsi edaspidi [%s]> "
 
-#: src/lang.c:665
+#: src/lang.c:671
 msgid	"Searching..."
 msgstr	"Otsin..."
 
-#: src/lang.c:666
+#: src/lang.c:672
 #, c-format
 msgid	"Searching article %d of %d ('q' to abort)..."
 msgstr	"Otsin artiklit %d/%d ('q' katkestamiseks)..."
 
-#: src/lang.c:667
+#: src/lang.c:673
 msgid	"Select article> "
 msgstr	"Valige artikkel> "
 
-#: src/lang.c:668
+#: src/lang.c:674
 msgid	"Select option number before text or use arrow keys and <CR>. 'q' to quit."
 msgstr	"Valige teksti eest omaduse number või kasutage nooli ja <CR>. 'q' väljumiseks."
 
-#: src/lang.c:669
+#: src/lang.c:675
 msgid	"Select group> "
 msgstr	"Valige grupp> "
 
-#: src/lang.c:670
+#: src/lang.c:676
 #, c-format
 msgid	"Enter selection pattern [%s]> "
 msgstr	"Sisestage valiku muster [%s]> "
 
-#: src/lang.c:671
+#: src/lang.c:677
 msgid	"Select thread > "
 msgstr	"Valige teema > "
 
-#: src/lang.c:672
+#: src/lang.c:678
 #, c-format
 msgid	"%s %s %s (\"%s\") [%s]: send a DETAILED bug report to %s\n"
 msgstr	"%s %s %s (\"%s\") [%s]: saatke palun DETAILNE vea raport aadressil %s\n"
 
-#: src/lang.c:673
+#: src/lang.c:679
 msgid	"servers active-file"
 msgstr	"serveri aktiivsete gruppide fail"
 
-#: src/lang.c:674
+#: src/lang.c:680
 msgid	"Cannot move into new newsgroups. Subscribe first..."
 msgstr	"Uutesse gruppidesse ei saa siseneda. Tellige kõigepealt..."
 
-#: src/lang.c:675
+#: src/lang.c:681
 msgid	"<SPACE>"
 msgstr	"<TÜHIK>"
 
-#: src/lang.c:676
+#: src/lang.c:682
 #, c-format
 msgid	"Starting: (%s)"
 msgstr	"Stardin: (%s)"
 
-#: src/lang.c:677
+#: src/lang.c:683
 #, c-format
 msgid	"List Thread (%d of %d)"
 msgstr	"Teemad (%d/%d)"
 
-#: src/lang.c:678
+#: src/lang.c:684
 #, c-format
 msgid	"Thread (%.*s)"
 msgstr	"Teema (%.*s)"
 
-#: src/lang.c:679
+#: src/lang.c:685
 msgid	"Enter wildcard subscribe pattern> "
 msgstr	"Sisestage tellimise muster> "
 
-#: src/lang.c:680
+#: src/lang.c:686
 #, c-format
 msgid	"subscribed to %d groups"
 msgstr	"%d gruppi on tellitud"
 
-#: src/lang.c:681
+#: src/lang.c:687
 #, c-format
 msgid	"Subscribed to %s"
 msgstr	"%s on tellitud"
 
-#: src/lang.c:682
+#: src/lang.c:688
 msgid	"Subscribing... "
 msgstr	"Tellin... "
 
-#: src/lang.c:683
+#: src/lang.c:689
 msgid	"Repost or supersede article(s) [%%s]? (%s/%s/%s): "
 msgstr	"Postitan uuesti või asendan artikli(d) [%%s]? (%s/%s/%s): "
 
-#: src/lang.c:684
+#: src/lang.c:690
 #, c-format
 msgid	"Supersede article(s) to group(s) [%s]> "
 msgstr	"Asendan artikli(d) gruppides [%s]> "
 
-#: src/lang.c:685
+#: src/lang.c:691
 msgid	"Superseding article ..."
 msgstr	"Asendan artikli ..."
 
-#: src/lang.c:686
+#: src/lang.c:692
 #, c-format
 msgid	"\n"
 	"Stopped. Type 'fg' to restart %s\n"
 msgstr	"\n"
 	"Peatatud. %s uuesti käivitamiseks kirjutage palun 'fg'\n"
 
-#: src/lang.c:688
+#: src/lang.c:694
 #, c-format
 msgid	"%d days"
 msgstr	"%d päeva"
 
-#: src/lang.c:689
+#: src/lang.c:695
 msgid	"<TAB>"
 msgstr	"<TAB>"
 
-# TRANSLATION MISSING
-#: src/lang.c:690
+#: src/lang.c:696
 msgid	"TeX "
-msgstr	""
+msgstr	"TeX "
 
-#: src/lang.c:691
+#: src/lang.c:697
 msgid	"# Default action/prompt strings\n"
 msgstr	"# Vaikimisi aktsioonide/viipade sõned\n"
 
-#: src/lang.c:692
+#: src/lang.c:698
 msgid	"# Defaults for quick (1 key) kill & auto-selection filters\n"
 	"# header=NUM  0,1=Subject: 2,3=From: 4=Message-ID: & full References: line\n"
 	"#             5=Message-ID: & last References: entry only\n"
@@ -2882,261 +2889,261 @@ msgstr	"# Vaikeväärtused kiire (1 võtme)
 	"# case=ON/OFF    ON=filter on tõstutundlik OFF=tõstutundetu\n"
 	"# expire=ON/OFF  ON=kehtivusaeg default_filter_days OFF=ei aegu\n"
 
-#: src/lang.c:705
+#: src/lang.c:711
 msgid	"# If ON use print current subject or newsgroup description in the last line\n"
 msgstr	"# Kui on ON, trüki teema või grupikirjeldus viimasele reale\n"
 
-#: src/lang.c:706
+#: src/lang.c:712
 msgid	"# Host & time info used for detecting new groups (don't touch)\n"
 msgstr	"# Masin & aeg - kasutatakse uute gruppide leidmiseks (mitte muuta)\n"
 
-#: src/lang.c:707
+#: src/lang.c:713
 msgid	"There is no news\n"
 msgstr	"Uudiseid pole\n"
 
-#: src/lang.c:708
+#: src/lang.c:714
 msgid	"Thread"
 msgstr	"Teema"
 
-#: src/lang.c:709
+#: src/lang.c:715
 msgid	"Thread Level Commands"
 msgstr	"Teemataseme käsud"
 
-#: src/lang.c:710
+#: src/lang.c:716
 msgid	"Thread deselected"
 msgstr	"Teema pole valitud"
 
-#: src/lang.c:711
+#: src/lang.c:717
 msgid	"Thread selected"
 msgstr	"Teema on valitud"
 
-#: src/lang.c:712
+#: src/lang.c:719
 msgid	"threads"
 msgstr	"teemad"
 
-#: src/lang.c:713
+#: src/lang.c:721
 msgid	"Thread range"
 msgstr	"Teemade vahemik"
 
-#: src/lang.c:714
+#: src/lang.c:722
 msgid	"thread"
 msgstr	"teema"
 
-#: src/lang.c:715
+#: src/lang.c:723
 #, c-format
 msgid	"Thread %4s of %4s"
 msgstr	"Teema %4s : %4s"
 
-#: src/lang.c:716
+#: src/lang.c:724
 msgid	"Threading articles..."
 msgstr	"Järjestan artiklid teemade kaupa..."
 
-#: src/lang.c:717
+#: src/lang.c:725
 #, c-format
 msgid	"Toggled word highlighting %s"
 msgstr	"Sõnade esiletõstmine lülitatud %s"
 
-#: src/lang.c:718
+#: src/lang.c:726
 msgid	"Toggled rot13 encoding"
 msgstr	"Lülitatud rot13 kodeerimine"
 
-#: src/lang.c:719
+#: src/lang.c:727
 #, c-format
 msgid	"Toggled german TeX encoding %s"
 msgstr	"Lülitatud saksa TeX kodeering %s"
 
-#: src/lang.c:720
+#: src/lang.c:728
 #, c-format
 msgid	"Toggled tab-width to %d"
 msgstr	"Lülitatud tab-width väärtus %d"
 
-#: src/lang.c:721
+#: src/lang.c:729
 #, c-format
 msgid	"%d Trying to dotlock %s"
 msgstr	"%d Üritan punkt-lukustada %s"
 
-#: src/lang.c:722
+#: src/lang.c:730
 #, c-format
 msgid	"%d Trying to lock %s"
 msgstr	"%d Üritan lukustada %s"
 
-#: src/lang.c:723
+#: src/lang.c:731
 msgid	"           h=help\n"
 msgstr	"           h=appi\n"
 
-#: src/lang.c:725
+#: src/lang.c:733
 msgid	"Unlimited"
 msgstr	"Piiramata"
 
-#: src/lang.c:726
+#: src/lang.c:734
 msgid	"Enter wildcard unsubscribe pattern> "
 msgstr	"Sisestage loobumise muster> "
 
-#: src/lang.c:727
+#: src/lang.c:735
 #, c-format
 msgid	"Error decoding %s : %s"
 msgstr	"Viga %s dekodeerimisel: %s"
 
-#: src/lang.c:728
+#: src/lang.c:736
 msgid	"No end."
 msgstr	"Lõpp puudub."
 
-#: src/lang.c:729
+#: src/lang.c:737
 #, c-format
 msgid	"%s successfully decoded."
 msgstr	"%s on edukalt dekodeeritud."
 
-#: src/lang.c:730
+#: src/lang.c:738
 #, c-format
 msgid	"%*s[-- %s/%s, %suuencoded file, %d lines, name: %s --]\n"
 	"\n"
 msgstr	"%*s[-- %s/%s, %suuenkodeeritud fail, %d rida, nimi: %s --]\n"
 	"\n"
 
-#: src/lang.c:731
+#: src/lang.c:739
 msgid	"unread "
 msgstr	"lugemata "
 
-#: src/lang.c:732
+#: src/lang.c:740
 #, c-format
 msgid	"unsubscribed from %d groups"
 msgstr	"loobunud %d grupist"
 
-#: src/lang.c:733
+#: src/lang.c:741
 #, c-format
 msgid	"Unsubscribed from %s"
 msgstr	"Loobunud grupist %s"
 
-#: src/lang.c:734
+#: src/lang.c:742
 msgid	"Unsubscribing... "
 msgstr	"Loobun gruppidest... "
 
-#: src/lang.c:735
+#: src/lang.c:743
 msgid	"Unthreading articles..."
 msgstr	"Tükeldan teemad..."
 
-#: src/lang.c:736
+#: src/lang.c:744
 msgid	"Updated"
 msgstr	"Uuendatud"
 
-#: src/lang.c:737
+#: src/lang.c:745
 msgid	"Updating"
 msgstr	"Uuendan"
 
-#: src/lang.c:738
+#: src/lang.c:746
 #, c-format
 msgid	"Opening %s\n"
 msgstr	"Proovin %s\n"
 
-#: src/lang.c:739
+#: src/lang.c:747
 msgid	"No more URL's in this article"
 msgstr	"Selles artiklis pole rohkem URL'e"
 
-#: src/lang.c:740
+#: src/lang.c:748
 msgid	"Use MIME display program for this message?"
 msgstr	"Kasutan selle teate lugemiseks MIME näitamise programmi?"
 
-#: src/lang.c:741
+#: src/lang.c:749
 msgid	"  -c       mark all news as read in subscribed newsgroups (batch mode)"
 msgstr	"  -c       märgi tellitud gruppides kõik artiklid loetuks (pakettmood)"
 
-#: src/lang.c:742
+#: src/lang.c:750
 msgid	"  -Z       return status indicating if any unread news (batch mode)"
 msgstr	"  -Z       tagasta väärtus, mis näitab, kas on lugemata artikleid (pakettmood)"
 
-#: src/lang.c:743
+#: src/lang.c:751
 msgid	"  -q       don't check for new newsgroups"
 msgstr	"  -q       ära otsi uusi gruppe"
 
-#: src/lang.c:744
+#: src/lang.c:752
 msgid	"  -X       don't save any files on quit"
 msgstr	"  -X       töö lõpetamisel ära salvesta ühtegi faili"
 
-#: src/lang.c:745
+#: src/lang.c:753
 msgid	"  -d       don't show newsgroup descriptions"
 msgstr	"  -d       ära näita gruppide kirjeldusi"
 
-#: src/lang.c:746
+#: src/lang.c:754
 msgid	"  -G limit get only limit articles/group"
 msgstr	"  -G num   loe aunult num artiklit/gruppi"
 
-#: src/lang.c:747
+#: src/lang.c:755
 #, c-format
 msgid	"  -H       help information about %s"
 msgstr	"  -H       %s kasutamise abiinfo"
 
-#: src/lang.c:748
+#: src/lang.c:756
 msgid	"  -h       this help message"
 msgstr	"  -h       see abitekst"
 
-#: src/lang.c:749
+#: src/lang.c:757
 #, c-format
 msgid	"  -I dir   news index file directory [default=%s]"
 msgstr	"  -I kat   uudiste indeksfaili kataloog [vaikimisi=%s]"
 
-#: src/lang.c:750
+#: src/lang.c:758
 msgid	"  -u       update index files (batch mode)"
 msgstr	"  -u       värskenda indeksfaile (pakettmood)"
 
-#: src/lang.c:751
+#: src/lang.c:759
 #, c-format
 msgid	"  -m dir   mailbox directory [default=%s]"
 msgstr	"  -m kat   kirjakaustade kataloog [vaikimisi=%s]"
 
-#: src/lang.c:752
+#: src/lang.c:760
 #, c-format
 msgid	"\n"
 	"Mail bug reports/comments to %s"
 msgstr	"\n"
 	"Saatke palun vea raport/kommentaarid aadressil %s"
 
-#: src/lang.c:753
+#: src/lang.c:761
 msgid	"  -N       mail new news to your posts (batch mode)"
 msgstr	"  -N       saada uued vastused teie postitustele (pakettmood)"
 
-#: src/lang.c:754
+#: src/lang.c:762
 msgid	"  -M user  mail new news to specified user (batch mode)"
 msgstr	"  -M kasut saada uued artiklid näidatud kasutajale (pakettmood)"
 
-#: src/lang.c:755
+#: src/lang.c:763
 #, c-format
 msgid	"  -f file  subscribed to newsgroups file [default=%s]"
 msgstr	"  -f fail  tellitud gruppide fail [vaikimisi=%s]"
 
-#: src/lang.c:756
+#: src/lang.c:764
 msgid	"  -x       no posting mode"
 msgstr	"  -x       postitamiseta mood"
 
-#: src/lang.c:757
+#: src/lang.c:765
 msgid	"  -w       post an article and exit"
 msgstr	"  -w       postita artikkel ja lõpeta töö"
 
-#: src/lang.c:758
+#: src/lang.c:766
 msgid	"  -o       post all postponed articles and exit"
 msgstr	"  -o       postita kõik postitamisootel artiklid ja lõpeta töö"
 
-#: src/lang.c:759
+#: src/lang.c:767
 msgid	"  -r       read news remotely from default NNTP server"
 msgstr	"  -r       loe artikleid kasutades vaikimisi NNTP serverit"
 
-#: src/lang.c:760
+#: src/lang.c:768
 msgid	"  -R       read news saved by -S option"
 msgstr	"  -R       loe artikleid, mis on salvestatud -S võtmega"
 
-#: src/lang.c:761
+#: src/lang.c:769
 #, c-format
 msgid	"  -s dir   save news directory [default=%s]"
 msgstr	"  -s kat   artiklite salvestamise kataloog [vaikimisi=%s]"
 
-#: src/lang.c:762
+#: src/lang.c:770
 msgid	"  -S       save new news for later reading (batch mode)"
 msgstr	"  -S       salvesta uued artiklid hilisemaks lugemiseks (pakettmood)"
 
-#: src/lang.c:763
+#: src/lang.c:771
 msgid	"  -z       start if any unread news"
 msgstr	"  -z       alusta tööd, kui on lugemata uudiseid"
 
-#: src/lang.c:764
+#: src/lang.c:772
 #, c-format
 msgid	"A Usenet reader.\n"
 	"\n"
@@ -3145,37 +3152,37 @@ msgstr	"Usenet klient.\n"
 	"\n"
 	"Kasuta: %s [võtmed] [grupp[,...]]"
 
-#: src/lang.c:765
+#: src/lang.c:773
 msgid	"  -v       verbose output for batch mode options"
 msgstr	"  -v       esita pakettmoodi käskudega detailsemat informatsiooni"
 
-#: src/lang.c:766
+#: src/lang.c:774
 msgid	"  -V       print version & date information"
 msgstr	"  -V       esita versiooni ja kuupäeva informatsioon"
 
-#: src/lang.c:767
+#: src/lang.c:775
 #, c-format
 msgid	"%s only useful without batch mode operations\n"
 msgstr	"%s on kasutatav ainult pakettmoodi käskudeta\n"
 
-#: src/lang.c:768
+#: src/lang.c:776
 #, c-format
 msgid	"%s only useful for batch mode operations\n"
 msgstr	"%s on kasutatav ainult pakettmoodi käskudega\n"
 
-#: src/lang.c:770
+#: src/lang.c:778
 #, c-format
 msgid	"\n"
 	"%s%d out of range (0 - %d). Reset to 0"
 msgstr	"\n"
 	"%s%d piiridest väljas (0 - %d). Sean 0"
 
-#: src/lang.c:771
+#: src/lang.c:779
 #, c-format
 msgid	"View '%s' (%s/%s)?"
 msgstr	"Vaatan '%s' (%s/%s)?"
 
-#: src/lang.c:773
+#: src/lang.c:781
 #, c-format
 msgid	"\n"
 	"Warning: posting exceeds %d columns. Line %d is the first long one:\n"
@@ -3184,26 +3191,26 @@ msgstr	"\n"
 	"Hoiatus: postitus ületab %d veergu. Esimene pikk rida on rida %d:\n"
 	"%-100s\n"
 
-#: src/lang.c:774
+#: src/lang.c:782
 msgid	"\n"
 	"Warning: article unchanged after editing\n"
 msgstr	"\n"
 	"Hoiatus: artiklit ei ole toimetamise käigus muudetud\n"
 
-#: src/lang.c:775
+#: src/lang.c:783
 msgid	"\n"
 	"Warning: \"Subject:\" contains only whitespaces.\n"
 msgstr	"\n"
 	"Hoiatus: \"Subject:\" real on ainult tühikud.\n"
 
-#: src/lang.c:776
+#: src/lang.c:784
 msgid	"\n"
 	"Warning: \"Subject:\" begins with \"Re: \" but there are no \"References:\".\n"
 msgstr	"\n"
 	"Hoiatus: \"Subject:\" algab fraasiga \"Re: \", aga \"References:\" välju "
 	"pole.\n"
 
-#: src/lang.c:778
+#: src/lang.c:786
 msgid	"\n"
 	"Warning: Article has \"References:\" but \"Subject:\" does not begin\n"
 	"         with \"Re: \" and does not contain \"(was:\".\n"
@@ -3211,7 +3218,7 @@ msgstr	"\n"
 	"Hoiatus: Artiklis on \"References:\" päis, aga \"Subject:\" ei alga fraasiga\n"
 	"         \"Re: \" ega sisalda \"(was:\".\n"
 
-#: src/lang.c:781
+#: src/lang.c:789
 msgid	"Read carefully!\n"
 	"\n"
 	"  You are about to cancel an article seemingly written by you. This will "
@@ -3231,7 +3238,7 @@ msgstr	"Lugege hoolikalt!\n"
 	"Siin on artikkel, mida te hakkate kustutama:\n"
 	"\n"
 
-#: src/lang.c:785
+#: src/lang.c:793
 msgid	"\n"
 	"Warning: You are using a non-plain transfer encoding (such as base64 or\n"
 	"         quoted-printable) and an external inews program to submit your\n"
@@ -3243,7 +3250,7 @@ msgstr	"\n"
 	"         lisab artiklile signatuuri, siis on võimalik,  et seda ei kodeerita\n"
 	"         korrektselt.\n"
 
-#: src/lang.c:790
+#: src/lang.c:798
 #, c-format
 msgid	"\n"
 	"\n"
@@ -3256,7 +3263,7 @@ msgstr	"\n"
 	"Väärtused failis %s on muutunud!\n"
 	"Palun lugege faile WHATSNEW, jne...\n"
 
-#: src/lang.c:792
+#: src/lang.c:800
 #, c-format
 msgid	"\n"
 	"\n"
@@ -3268,7 +3275,7 @@ msgstr	"\n"
 	"kasutatu!\n"
 	"Mõningaid väärtusi failis %s võidakse ignoreerida, mõningaid võidakse muuta!\n"
 
-#: src/lang.c:795
+#: src/lang.c:803
 #, c-format
 msgid	"Warning: tin wrote fewer groups to your\n"
 	"\t%s\n"
@@ -3281,7 +3288,7 @@ msgstr	"Hoiatus: tin kirjutas vähem grup
 	"grupist%s, tähendab see viga ja te peaksite varundama oma %s\n"
 	"enne, kui te tini uuesti käivitate!\n"
 
-#: src/lang.c:799
+#: src/lang.c:807
 #, c-format
 msgid	"\n"
 	"Warning: Found %d '-- \\n' lines, this may confuse some people.\n"
@@ -3289,12 +3296,12 @@ msgstr	"\n"
 	"Hoiatus: Leidsin %d '-- \\n' rida, mis võib tekitada osades inimestes "
 	"segadust.\n"
 
-#: src/lang.c:800
+#: src/lang.c:808
 #, c-format
 msgid	"Warning: Only %d out of %d articles were saved"
 msgstr	"Hoiatus: Salvestati ainult %d artiklit %d artiklist"
 
-#: src/lang.c:801
+#: src/lang.c:809
 #, c-format
 msgid	"\n"
 	"Warning: Your signature  is longer than %d lines.  Since signatures usually "
@@ -3309,48 +3316,48 @@ msgstr	"\n"
 	"võimalikult\n"
 	"         lühikesed.\n"
 
-#: src/lang.c:805
+#: src/lang.c:813
 #, c-format
 msgid	"Warning: this mail address may contain a spamtrap. %s=continue, %s=abort? "
 msgstr	"Hoiatus: see aadress võib sisaldada rämpsposti lõksu. %s=jätkan, %s=katkestan?"
 
-#: src/lang.c:806
+#: src/lang.c:814
 msgid	"\n"
 	"Warning: Signatures should start with '-- \\n' not with '--\\n'.\n"
 msgstr	"\n"
 	"Hoiatus: Signatuuride alguses peaks olema '-- \\n', mitte '--\\n'.\n"
 
-#: src/lang.c:807
+#: src/lang.c:815
 msgid	"Writing attributes file..."
 msgstr	"Kirjutan atribuutide faili..."
 
-#: src/lang.c:809
+#: src/lang.c:817
 #, c-format
 msgid	"%d Responses"
 msgstr	"%d Vastust"
 
-#: src/lang.c:811
+#: src/lang.c:819
 #, c-format
 msgid	"Added %d %s"
 msgstr	"Lisatud %d %s"
 
-#: src/lang.c:812
+#: src/lang.c:820
 msgid	"No unsubscribed groups to show"
 msgstr	"Tellimata gruppe pole"
 
-#: src/lang.c:813
+#: src/lang.c:821
 msgid	"Showing subscribed to groups only"
 msgstr	"Näitan ainult tellitud gruppe"
 
-#: src/lang.c:814
+#: src/lang.c:822
 msgid	"Yes "
 msgstr	"Jah "
 
-#: src/lang.c:815
+#: src/lang.c:823
 msgid	"    You have mail\n"
 msgstr	"    Teil on kiri\n"
 
-#: src/lang.c:820
+#: src/lang.c:828
 #, c-format
 msgid	"\n"
 	"Warning: Posting is in %s and contains characters which are not\n"
@@ -3369,16 +3376,16 @@ msgstr	"\n"
 	"         MM_NETWORK_CHARSET. Viimast saate teostada kasutades valikut "
 	"M)enüü.\n"
 
-#: src/lang.c:831
+#: src/lang.c:839
 #, c-format
 msgid	"Redefined key %s '%s' -> '%s'\n"
 msgstr	"Klahvi %s uus definitsioon '%s' -> '%s'\n"
 
-#: src/lang.c:832
+#: src/lang.c:840
 msgid	"  -D       debug mode 1=NNTP 2=ALL"
 msgstr	"  -D       silumismood 1=NNTP 2=KÕIK"
 
-#: src/lang.c:836
+#: src/lang.c:844
 msgid	"Read carefully!\n"
 	"\n"
 	"  You are about to cancel an article seemingly not written by you.  This "
@@ -3402,12 +3409,11 @@ msgstr	"Lugege hoolikalt!\n"
 	"Siin on artikkel, mida te asute kustutama:\n"
 	"\n"
 
-#: src/lang.c:845
+#: src/lang.c:853
 msgid	"toggle color"
 msgstr	"lülita värve"
 
-# TRANSLATION MISSING
-#: src/lang.c:846
+#: src/lang.c:854
 msgid	"# Changing colors of several screen parts\n"
 	"# Possible values are:\n"
 	"#  -1 = default (white for foreground and black for background)\n"
@@ -3429,46 +3435,66 @@ msgid	"# Changing colors of several scre
 	"#  14 = light cyan\n"
 	"#  15 = light white\n"
 	"\n"
-msgstr	""
+msgstr	"# Ekraaniosade värvide muutmine\n"
+	"# Võimalikud väärtused on:\n"
+	"#  -1 = vaikimisi (valge esiplaan ja must tagaplaan)\n"
+	"#   0 = must\n"
+	"#   1 = punane\n"
+	"#   2 = roheline\n"
+	"#   3 = pruun\n"
+	"#   4 = sinine\n"
+	"#   5 = roosa\n"
+	"#   6 = lilla\n"
+	"#   7 = valge\n"
+	"# Need on *ainult* esiplaani tarvis:\n"
+	"#   8 = hall\n"
+	"#   9 = helepunane\n"
+	"#  10 = heleroheline\n"
+	"#  11 = kollane\n"
+	"#  12 = helesinine\n"
+	"#  13 = heleroosa\n"
+	"#  14 = helelilla\n"
+	"#  15 = helevalge\n"
+	"\n"
 
-#: src/lang.c:866
+#: src/lang.c:874
 msgid	"  -a       toggle color flag"
 msgstr	"  -a       lülita värvide kasutamist"
 
-#: src/lang.c:870
+#: src/lang.c:878
 msgid	"\n"
 	"Error: Followup-To set to more than one newsgroup!\n"
 msgstr	"\n"
 	"Viga: Followup-To real on rohkem kui üks grupp!\n"
 
-#: src/lang.c:871
+#: src/lang.c:879
 #, c-format
 msgid	"\n"
 	"Error: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr	"\n"
 	"Viga: ristpostitus %d gruppi ja Followup-To rida puudub!\n"
 
-#: src/lang.c:872
+#: src/lang.c:880
 #, c-format
 msgid	"\n"
 	"Error: \"%s\" is not a valid newsgroup!\n"
 msgstr	"\n"
 	"Viga: \"%s\" ei ole lubatud grupp!\n"
 
-#: src/lang.c:874
+#: src/lang.c:882
 msgid	"\n"
 	"Warning: Followup-To set to more than one newsgroup!\n"
 msgstr	"\n"
 	"Hoiatus: Followup-To on seatud rohkem, kui ühele grupile!\n"
 
-#: src/lang.c:875
+#: src/lang.c:883
 #, c-format
 msgid	"\n"
 	"Warning: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr	"\n"
 	"Hoiatus: ristpostitus %d uudisegruppi ja Followup-To rida puudub!\n"
 
-#: src/lang.c:876
+#: src/lang.c:884
 #, c-format
 msgid	"\n"
 	"Warning: \"%s\" is not in your newsrc, it may be invalid at this site!\n"
@@ -3476,308 +3502,308 @@ msgstr	"\n"
 	"Hoiatus: \"%s\" puudub teie newsrc failist, see võib olla selles serveris "
 	"vigane!\n"
 
-#: src/lang.c:877
+#: src/lang.c:885
 #, c-format
 msgid	"\n"
 	"Warning: \"%s\" is not a valid newsgroup at this site!\n"
 msgstr	"\n"
 	"Hoiatus: \"%s\" ei ole selles serveris kehtiv grupp!\n"
 
-#: src/lang.c:881
+#: src/lang.c:889
 #, c-format
 msgid	"%d files successfully written from %d articles. %d %s occurred."
 msgstr	"Edukalt kirjutatud %d faili %d artiklist. Esines %d viga%s."
 
-#: src/lang.c:882
+#: src/lang.c:890
 msgid	"Missing parts."
 msgstr	"Osad puuduvad."
 
-#: src/lang.c:883
+#: src/lang.c:891
 msgid	"No beginning."
 msgstr	"Algus puudub."
 
-#: src/lang.c:884
+#: src/lang.c:892
 msgid	"No data."
 msgstr	"Andmeid pole."
 
-#: src/lang.c:885
+#: src/lang.c:893
 msgid	"Unknown error."
 msgstr	"Tundmatu viga."
 
-#: src/lang.c:887
+#: src/lang.c:896
 #, c-format
 msgid	"\tChecksum of %s (%ld %s)"
 msgstr	"\t%s kontrollsumma (%ld %s)"
 
-#: src/lang.c:891
+#: src/lang.c:901
 msgid	"Reading mail active file... "
 msgstr	"Loen aktiivsete kirjade kausta... "
 
-#: src/lang.c:892
+#: src/lang.c:902
 msgid	"Reading mailgroups file... "
 msgstr	"Loen kirjagruppide faili... "
 
-#: src/lang.c:896
+#: src/lang.c:906
 msgid	"perform PGP operations on article"
 msgstr	"kasuta artiklil PGP operatsioone"
 
-#: src/lang.c:897
+#: src/lang.c:907
 msgid	"Add key(s) to public keyring?"
 msgstr	"Lisan võtmed avalike võtmete hoidlasse?"
 
-#: src/lang.c:898
+#: src/lang.c:908
 #, c-format
 msgid	"%s=encrypt, %s=sign, %s=both, %s=quit: "
 msgstr	"%s=krüpti, %s=allkirjasta, %s=mõlemad, %s=välju: "
 
-#: src/lang.c:899
+#: src/lang.c:909
 #, c-format
 msgid	"%s=sign, %s=sign & include public key, %s=quit: "
 msgstr	"%s=allkirjasta, %s=allkirjasta & lisa avalik võti, %s=välju: "
 
-#: src/lang.c:900
+#: src/lang.c:910
 #, c-format
 msgid	"PGP has not been set up (can't open %s)"
 msgstr	"PGP pole seadistatud (ei saa avada %s)"
 
-#: src/lang.c:901
+#: src/lang.c:911
 msgid	"Article not signed and no public keys found"
 msgstr	"Artikkel pole allkirjastatud ja avalikke võtmeid pole"
 
-#: src/lang.c:903
+#: src/lang.c:913
 #, c-format
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=välju, %s=toimeta, %s=ispell, %s=pgp, %s=menüü, %s=postita, %s=ootele: "
 
-#: src/lang.c:904
+#: src/lang.c:914
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=send [%%s]: "
 msgstr	"%s=välju, %s=toimeta, %s=ispell, %s=pgp, %s=saada [%%s]: "
 
-#: src/lang.c:905
+#: src/lang.c:915
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=välju, %s=toimeta, %s=ispell, %s=pgp, %s=menüü, %s=postita, %s=ootele "
 	"[%%s]: "
 
-#: src/lang.c:907
+#: src/lang.c:917
 #, c-format
 msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=välju, %s=toimeta, %s=pgp, %s=menüü, %s=postita, %s=ootele: "
 
-#: src/lang.c:908
+#: src/lang.c:918
 msgid	"%s=quit, %s=edit, %s=pgp, %s=send [%%s]: "
 msgstr	"%s=välju, %s=toimeta, %s=pgp, %s=saada [%%s]: "
 
-#: src/lang.c:909
+#: src/lang.c:919
 msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=välju, %s=toimeta, %s=pgp, %s=menüü, %s=postita, %s=ootele [%%s]: "
 
-#: src/lang.c:913
+#: src/lang.c:923
 #, c-format
 msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=välju, %s=toimeta, %s=ispell, %s=menüü, %s=postita, %s=ootele: "
 
-#: src/lang.c:914
+#: src/lang.c:924
 msgid	"%s=quit, %s=edit, %s=ispell, %s=send [%%s]: "
 msgstr	"%s=välju, %s=toimeta, %s=ispell, %s=saada [%%s]: "
 
-#: src/lang.c:915
+#: src/lang.c:925
 msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=välju, %s=toimeta, %s=ispell, %s=menüü, %s=postita, %s=ootele [%%s]: "
 
-#: src/lang.c:917
+#: src/lang.c:927
 #, c-format
 msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=välju, %s=toimeta, %s=menüü, %s=postita, %s=ootele: "
 
-#: src/lang.c:918
+#: src/lang.c:928
 msgid	"%s=quit, %s=edit, %s=send [%%s]: "
 msgstr	"%s=välju, %s=toimeta, %s=saada [%%s]: "
 
-#: src/lang.c:919
+#: src/lang.c:929
 msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=välju, %s=toimeta, %s=menüü, %s=postita, %s=ootele [%%s]: "
 
-#: src/lang.c:928
+#: src/lang.c:938
 msgid	"Try cache_overview_files to speed up things.\n"
 msgstr	"Proovige asjade kiirendamiseks cache_overview_files.\n"
 
-#: src/lang.c:929
+#: src/lang.c:939
 msgid	"Tin will use local index files instead.\n"
 msgstr	"Tin kasutab hoopis kohalikke indeksfaile.\n"
 
-#: src/lang.c:930
+#: src/lang.c:940
 msgid	"Cannot find NNTP server name"
 msgstr	"Ei leia NNTP serveri nime"
 
-#: src/lang.c:931
+#: src/lang.c:941
 #, c-format
 msgid	"Connecting to %s:%d..."
 msgstr	"Loon ühendust serveriga %s:%d..."
 
-#: src/lang.c:932
+#: src/lang.c:942
 msgid	"Disconnecting from server...\n"
 msgstr	"Lõpetan ühenduse...\n"
 
-#: src/lang.c:933
+#: src/lang.c:943
 #, c-format
 msgid	"Wrong newsgroup name in response of GROUP command, %s for %s"
 msgstr	"Vigane vastus GROUP käsule, %s grupile %s"
 
-#: src/lang.c:934
+#: src/lang.c:944
 #, c-format
 msgid	"Failed to connect to NNTP server %s. Exiting..."
 msgstr	"NNTP serveriga %s ühenduse loomine ebaõnnestus. Lõpetan..."
 
-#: src/lang.c:935
+#: src/lang.c:945
 msgid	"205  Closing connection"
 msgstr	"205  Sulen ühendust"
 
-#: src/lang.c:936
+#: src/lang.c:946
 msgid	"Your server does not support the NNTP XOVER or OVER command.\n"
 msgstr	"Teie server ei toeta NNTP XOVER või OVER käsku.\n"
 
-#: src/lang.c:937
+#: src/lang.c:947
 msgid	"Connection to news server has timed out. Reconnect?"
 msgstr	"Ühendus uudisegruppide serveriga aegus. ühendun uuesti?"
 
-#: src/lang.c:938
+#: src/lang.c:948
 #, c-format
 msgid	"Put the server name in the file %s,\n"
 	"or set the environment variable NNTPSERVER"
 msgstr	"Kirjutage serveri nimi faili %s,\n"
 	"või seadke keskonnamuutuja NNTPSERVER"
 
-#: src/lang.c:939
+#: src/lang.c:949
 msgid	"  -A       force authentication on connect"
 msgstr	"  -A       sunni ühenduse loomisel autentima"
 
-#: src/lang.c:940
+#: src/lang.c:950
 #, c-format
 msgid	"  -g serv  read news from NNTP server serv [default=%s]"
 msgstr	"  -g serv  loe uudiseid NNTP serverist serv [vaikimisi=%s]"
 
-#: src/lang.c:941
+#: src/lang.c:951
 #, c-format
 msgid	"  -p port  use port as NNTP port [default=%d]"
 msgstr	"  -p port  kasuta NNTP porti [vaikimisi=%d]"
 
-#: src/lang.c:942
+#: src/lang.c:952
 msgid	"  -Q       quick start. Same as -nqd"
 msgstr	"  -Q       kiirstart. Sama kui -nqd"
 
-#: src/lang.c:943
+#: src/lang.c:953
 msgid	"  -l       use only LIST instead of GROUP (-n) command"
 msgstr	"  -l       kasuta LIST käsku GROUP (-n) käsu asemel"
 
-#: src/lang.c:944
+#: src/lang.c:954
 msgid	"  -n       only read subscribed .newsrc groups from NNTP server"
 msgstr	"  -n       loe NNTP serverist ainult tellitud .newsrc grupid"
 
-#: src/lang.c:946
+#: src/lang.c:956
 #, c-format
 msgid	"%s/tcp: Unknown service.\n"
 msgstr	"%s/tcp: Tundmatu teenus.\n"
 
-#: src/lang.c:949
+#: src/lang.c:959
 msgid	"\n"
 	"socket or connect problem\n"
 msgstr	"\n"
 	"Probleem pistikuga või ühendusega\n"
 
-#: src/lang.c:951
+#: src/lang.c:961
 #, c-format
 msgid	"\n"
 	"Connection to %s: "
 msgstr	"\n"
 	"Loon ühendust serveriga %s: "
 
-#: src/lang.c:952
+#: src/lang.c:962
 msgid	"Giving up...\n"
 msgstr	"Annan alla...\n"
 
-#: src/lang.c:955
+#: src/lang.c:965
 msgid	"Your server does not have Xref: in its XOVER information.\n"
 	"Tin will try to use XHDR XREF instead (slows down things a bit).\n"
 msgstr	"Teie server ei paku Xref: päiserida XOVER informatsioonis.\n"
 	"Tin üritab kasutada XHDR XREF selle asemel (võib olla mõnevõrra "
 	"aeganõudvam).\n"
 
-#: src/lang.c:958
+#: src/lang.c:968
 msgid	"Your server does not have Xref: in its XOVER information.\n"
 msgstr	"Teie server ei paku Xref: päiserida XOVER informatsioonis.\n"
 
-#: src/lang.c:961
+#: src/lang.c:971
 #, c-format
 msgid	"Can't open %s. Try %s -r to read news via NNTP.\n"
 msgstr	"%s ei saa avada. Proovige %s -r, et lugeda uudiseid üle NNTP.\n"
 
-#: src/lang.c:964
+#: src/lang.c:974
 msgid	"  -Q       quick start. Same as -qd"
 msgstr	"  -Q       kiirstart. Sama kui -qd"
 
-#: src/lang.c:965
+#: src/lang.c:975
 msgid	"  -l       read only active file instead of scanning spool (-n) command"
 msgstr	"  -l       loe pooli skaneerimise (-n) asemel ainult faili active"
 
-#: src/lang.c:966
+#: src/lang.c:976
 msgid	"  -n       only read subscribed .newsrc groups from spool"
 msgstr	"  -n       loe poolist ainult tellitud .newsrc gruppe"
 
-#: src/lang.c:967
+#: src/lang.c:977
 msgid	"Your server does not have Xref: in its NOV-files.\n"
 msgstr	"Teie server ei paku Xref: päiserida NOV failides.\n"
 
-#: src/lang.c:971
+#: src/lang.c:981
 msgid	"Posting using external inews failed. Use built in inews instead?"
 msgstr	"Välise inews programmiga postitamine ebaõnnestus. Proovin sisemist inewsi?"
 
-#: src/lang.c:972
+#: src/lang.c:982
 msgid	"It worked! Should I always use my built in inews from now on?"
 msgstr	"See töötas! Kas kasutan nüüd alati sisemist inews programmi?"
 
-#: src/lang.c:980
+#: src/lang.c:990
 #, c-format
 msgid	"%d %s printed"
 msgstr	"%d %s trükitud"
 
-#: src/lang.c:981
+#: src/lang.c:991
 msgid	"output article/thread/hot/pattern/tagged articles to printer"
 msgstr	"saada artikkel/teema/kuum/muster/märgitud trükkalile"
 
-#: src/lang.c:982
+#: src/lang.c:992
 msgid	"Print"
 msgstr	"Trüki"
 
-#: src/lang.c:983
+#: src/lang.c:993
 msgid	"Printing..."
 msgstr	"Trükin..."
 
-#: src/lang.c:987
+#: src/lang.c:997
 msgid	"pipe article/thread/hot/pattern/tagged articles into command"
 msgstr	"saada artikkel/teema/kuum/muster/märgitud toruga käsule"
 
-#: src/lang.c:988
+#: src/lang.c:998
 msgid	"No command"
 msgstr	"Käsku pole"
 
-#: src/lang.c:989
+#: src/lang.c:999
 msgid	"Pipe"
 msgstr	"Toru"
 
-#: src/lang.c:990
+#: src/lang.c:1000
 #, c-format
 msgid	"Pipe to command [%.*s]> "
 msgstr	"Toru käsku [%.*s]> "
 
-#: src/lang.c:991
+#: src/lang.c:1001
 msgid	"Piping..."
 msgstr	"Saadan torusse..."
 
-#: src/lang.c:993
+#: src/lang.c:1003
 msgid	"Piping not enabled."
 msgstr	"Toru kasutamine pole lubatud."
 
-#: src/lang.c:997
+#: src/lang.c:1007
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line has spaces  in it that MUST be removed.\n"
@@ -3789,7 +3815,7 @@ msgstr	"\n"
 	"      tühik on see,  mis eraldab koolonit (:)  teistest komponentidest\n"
 	"      real. Gruppide eraldamiseks kasutage palun koma (,).\n"
 
-#: src/lang.c:1002
+#: src/lang.c:1012
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is  continued in  the next line.  Since\n"
@@ -3800,7 +3826,7 @@ msgstr	"\n"
 	"      tühikuid, siis ei ole see lubatud.  Palun kirjutage kõik grupid\n"
 	"      ühele reale.\n"
 
-#: src/lang.c:1007
+#: src/lang.c:1017
 #, c-format
 msgid	"\n"
 	"Warning: The \"%s:\" line is continued in the next line.\n"
@@ -3811,14 +3837,14 @@ msgstr	"\n"
 	"      See on uus omadus ja kõik serverid ei pruugi seda toetada.\n"
 	"      Probleemide vältimiseks, kirjutage palun kõik grupid ühele reale.\n"
 
-#: src/lang.c:1011
+#: src/lang.c:1021
 #, c-format
 msgid	"\n"
 	"Warning: The \"%s:\" line has spaces in it that SHOULD be removed.\n"
 msgstr	"\n"
 	"Hoiatus: Rida \"%s:\" sisaldab tühikuid, mis TULEKS eemaldada.\n"
 
-#: src/lang.c:1016
+#: src/lang.c:1026
 msgid	"\n"
 	"  If your article contains quoted text  please take some time to pare it "
 	"down\n"
@@ -3848,540 +3874,537 @@ msgstr	"\n"
 	"  tega, siis ilmselt enamus lugejaid ignoreerib teid täiesti. Tänapäeval on\n"
 	"  võrgus palju rahvast ja infot!\n"
 
-#: src/lang.c:1029
+#: src/lang.c:1039
 msgid	"shell escape"
 msgstr	"paojada käsureale"
 
-#: src/lang.c:1030
+#: src/lang.c:1040
 #, c-format
 msgid	"Shell Command (%s)"
 msgstr	"Käsurea käsk (%s)"
 
-#: src/lang.c:1031
+#: src/lang.c:1041
 #, c-format
 msgid	"Enter shell command [%s]> "
 msgstr	"Sisestage käsurea käsk [%s]> "
 
-#: src/lang.c:1035
+#: src/lang.c:1045
 #, c-format
 msgid	"%s: Can't get entry for TERM\n"
 msgstr	"%s: Ei saa TERM kirjet\n"
 
-#: src/lang.c:1039
+#: src/lang.c:1049
 #, c-format
 msgid	"Group %.*s ('q' to quit)..."
 msgstr	"Grupp %.*s ('q' lõpetamiseks)... "
 
-#: src/lang.c:1041
+#: src/lang.c:1051
 #, c-format
 msgid	"Group %.*s..."
 msgstr	"Grupp %.*s... "
 
-#: src/lang.c:1045
+#: src/lang.c:1055
 msgid	"Server unavailable\n"
 msgstr	"Server ei vasta\n"
 
-#: src/lang.c:1051
+#: src/lang.c:1061
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; "
 	"%s=post"
 msgstr	"%s=toru; %s=kiri; %s=trüki; %s=välju; %s=kõik/lugem; %s=salv; %s=märgi; "
 	"%s=postita"
 
-#: src/lang.c:1052
+#: src/lang.c:1062
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=toru; %s=kiri; %s=trüki; %s=välju; %s=kirjuta; %s=salv; %s=märgi; "
 	"%s=postita"
 
-#: src/lang.c:1054
+#: src/lang.c:1064
 #, c-format
 msgid	"%s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=kiri; %s=trüki; %s=välju; %s=kõik/lugem; %s=salvesta; %s=märgi; %s=postita"
 
-#: src/lang.c:1055
+#: src/lang.c:1065
 #, c-format
 msgid	"%s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=kiri; %s=trüki; %s=välju; %s=kirjuta; %s=salvesta; %s=märgi; %s=postita"
 
-#: src/lang.c:1059
+#: src/lang.c:1069
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=toru; %s=kiri; %s=välju; %s=kõik/lugemata; %s=salv; %s=märgi; %s=postita"
 
-#: src/lang.c:1060
+#: src/lang.c:1070
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=toru; %s=kiri; %s=välju; %s=kirjuta; %s=salvesta; %s=märgi; %s=postita"
 
-#: src/lang.c:1062
+#: src/lang.c:1072
 #, c-format
 msgid	"%s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=kiri; %s=välju; %s=kõik/lugemata; %s=salvesta; %s=märgi; %s=postita"
 
-#: src/lang.c:1063
+#: src/lang.c:1073
 #, c-format
 msgid	"%s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=kiri; %s=välju; %s=vasta kirjaga; %s=salvesta; %s=märgi; %s=postita"
 
-#: src/lang.c:1069
+#: src/lang.c:1079
 msgid	"Terminal does not support color"
 msgstr	"Terminal ei toeta värve"
 
-#: src/lang.c:1074
+#: src/lang.c:1084
 #, c-format
 msgid	"Trying %s"
 msgstr	"Proovin %s"
 
-#: src/lang.c:1088 src/lang.c:1113 src/lang.c:1129 src/lang.c:1308 src/refs.c:296
+#: src/lang.c:1098 src/lang.c:1123 src/lang.c:1139 src/lang.c:1318 src/refs.c:296
 msgid	"None"
 msgstr	"Pole"
 
-#: src/lang.c:1089
+#: src/lang.c:1099
 msgid	"Subject"
 msgstr	"Teema"
 
-#: src/lang.c:1090
+#: src/lang.c:1100
 msgid	"References"
 msgstr	"Viited"
 
-#: src/lang.c:1091
+#: src/lang.c:1101
 msgid	"Both Subject and References"
 msgstr	"Nii teema kui viited"
 
-#: src/lang.c:1092
+#: src/lang.c:1102
 msgid	"Multipart Subject"
 msgstr	"Mitmeosaliste teema"
 
-#: src/lang.c:1104 src/lang.c:1215
+#: src/lang.c:1114 src/lang.c:1225
 msgid	"No"
 msgstr	"Ei"
 
-#: src/lang.c:1105 src/lang.c:1217
+#: src/lang.c:1115 src/lang.c:1227
 msgid	"Yes"
 msgstr	"Jah"
 
-#: src/lang.c:1106
+#: src/lang.c:1116
 msgid	"Hide All"
 msgstr	"Peida kõik"
 
-#: src/lang.c:1114
+#: src/lang.c:1124
 msgid	"Address"
 msgstr	"Aadress"
 
-#: src/lang.c:1115
+#: src/lang.c:1125
 msgid	"Full Name"
 msgstr	"Täisnimi"
 
-#: src/lang.c:1116
+#: src/lang.c:1126
 msgid	"Address and Name"
 msgstr	"Aadress ja nimi"
 
-#: src/lang.c:1123
+#: src/lang.c:1133
 msgid	"Max"
 msgstr	"Maksimum"
 
-#: src/lang.c:1124
+#: src/lang.c:1134
 msgid	"Sum"
 msgstr	"Summa"
 
-#: src/lang.c:1125
+#: src/lang.c:1135
 msgid	"Average"
 msgstr	"Keskmine"
 
-#: src/lang.c:1130
+#: src/lang.c:1140
 msgid	"Lines"
 msgstr	"Read"
 
-#: src/lang.c:1131
+#: src/lang.c:1141
 msgid	"Score"
 msgstr	"Kaal"
 
-#: src/lang.c:1132
+#: src/lang.c:1142
 msgid	"Lines & Score"
 msgstr	"Read & kaal"
 
-#: src/lang.c:1141
+#: src/lang.c:1151
 msgid	"Black"
 msgstr	"Must"
 
-#: src/lang.c:1142
+#: src/lang.c:1152
 msgid	"Red"
 msgstr	"Punane"
 
-#: src/lang.c:1143
+#: src/lang.c:1153
 msgid	"Green"
 msgstr	"Roheline"
 
-#: src/lang.c:1144
+#: src/lang.c:1154
 msgid	"Brown"
 msgstr	"Pruun"
 
-#: src/lang.c:1145
+#: src/lang.c:1155
 msgid	"Blue"
 msgstr	"Sinine"
 
-#: src/lang.c:1146
+#: src/lang.c:1156
 msgid	"Pink"
 msgstr	"Roosa"
 
-#: src/lang.c:1147
+#: src/lang.c:1157
 msgid	"Cyan"
 msgstr	"Lilla"
 
-#: src/lang.c:1148
+#: src/lang.c:1158
 msgid	"White"
 msgstr	"valge"
 
-#: src/lang.c:1149
+#: src/lang.c:1159
 msgid	"Gray"
 msgstr	"Hall"
 
-#: src/lang.c:1150
+#: src/lang.c:1160
 msgid	"Light Red"
 msgstr	"Helepunane"
 
-#: src/lang.c:1151
+#: src/lang.c:1161
 msgid	"Light Green"
 msgstr	"Heleroheline"
 
-#: src/lang.c:1152
+#: src/lang.c:1162
 msgid	"Yellow"
 msgstr	"Kollane"
 
-#: src/lang.c:1153
+#: src/lang.c:1163
 msgid	"Light Blue"
 msgstr	"Helesinine"
 
-#: src/lang.c:1154
+#: src/lang.c:1164
 msgid	"Light Pink"
 msgstr	"Heleroosa"
 
-#: src/lang.c:1155
+#: src/lang.c:1165
 msgid	"Light Cyan"
 msgstr	"Helelilla"
 
-#: src/lang.c:1156
+#: src/lang.c:1166
 msgid	"Light White"
 msgstr	"Helevalge"
 
-#: src/lang.c:1164 src/lang.c:1221 src/lang.c:1235
+#: src/lang.c:1174 src/lang.c:1231 src/lang.c:1245
 msgid	"Nothing"
 msgstr	"Ei kasuta"
 
-#: src/lang.c:1165
+#: src/lang.c:1175
 msgid	"Mark"
 msgstr	"Märk"
 
-#: src/lang.c:1166
+#: src/lang.c:1176
 msgid	"Space"
 msgstr	"Tühik"
 
-#: src/lang.c:1173
+#: src/lang.c:1183
 msgid	"Normal"
 msgstr	"Tavaline"
 
-#: src/lang.c:1174
+#: src/lang.c:1184
 msgid	"Best highlighting"
 msgstr	"Parim esiletõstmine"
 
-#: src/lang.c:1175
+#: src/lang.c:1185
 msgid	"Underline"
 msgstr	"Allajoonitud"
 
-#: src/lang.c:1176
+#: src/lang.c:1186
 msgid	"Reverse video"
 msgstr	"Pööratud video"
 
-#: src/lang.c:1177
+#: src/lang.c:1187
 msgid	"Blinking"
 msgstr	"Plinkiv"
 
-#: src/lang.c:1178
+#: src/lang.c:1188
 msgid	"Half bright"
 msgstr	"Poolhele"
 
-#: src/lang.c:1179
+#: src/lang.c:1189
 msgid	"Bold"
 msgstr	"Paks"
 
-#: src/lang.c:1184
+#: src/lang.c:1194
 msgid	"none"
 msgstr	"pole"
 
-#: src/lang.c:1185
+#: src/lang.c:1195
 msgid	"commands"
 msgstr	"käsud"
 
-#: src/lang.c:1186
+#: src/lang.c:1196
 msgid	"select"
 msgstr	"valik"
 
-#: src/lang.c:1188
+#: src/lang.c:1198
 msgid	"commands & quit"
 msgstr	"käsud & välju"
 
-#: src/lang.c:1189
+#: src/lang.c:1199
 msgid	"commands & select"
 msgstr	"käsud & valik"
 
-#: src/lang.c:1190
+#: src/lang.c:1200
 msgid	"quit & select"
 msgstr	"välju & valik"
 
-#: src/lang.c:1191
+#: src/lang.c:1201
 msgid	"commands & quit & select"
 msgstr	"käsud & välju & valik"
 
-#: src/lang.c:1216
+#: src/lang.c:1226
 msgid	"Shell archive"
 msgstr	"Shelli arhiiv"
 
-#: src/lang.c:1222
+#: src/lang.c:1232
 msgid	"Subject: (descending)"
 msgstr	"Subject: (kahanevalt)"
 
-#: src/lang.c:1223
+#: src/lang.c:1233
 msgid	"Subject: (ascending)"
 msgstr	"Subject: (kasvavalt)"
 
-#: src/lang.c:1224
+#: src/lang.c:1234
 msgid	"From: (descending)"
 msgstr	"From: (kahanevalt)"
 
-#: src/lang.c:1225
+#: src/lang.c:1235
 msgid	"From: (ascending)"
 msgstr	"From: (kasvavalt)"
 
-#: src/lang.c:1226
+#: src/lang.c:1236
 msgid	"Date: (descending)"
 msgstr	"Date: (kahanevalt)"
 
-#: src/lang.c:1227
+#: src/lang.c:1237
 msgid	"Date: (ascending)"
 msgstr	"Date: (kasvavalt)"
 
-#: src/lang.c:1228 src/lang.c:1236
+#: src/lang.c:1238 src/lang.c:1246
 msgid	"Score (descending)"
 msgstr	"Kaal (kahanevalt)"
 
-#: src/lang.c:1229 src/lang.c:1237
+#: src/lang.c:1239 src/lang.c:1247
 msgid	"Score (ascending)"
 msgstr	"Kaal (kasvavalt)"
 
-#: src/lang.c:1230
+#: src/lang.c:1240
 msgid	"Lines: (descending)"
 msgstr	"Lines: (kahanevalt)"
 
-#: src/lang.c:1231
+#: src/lang.c:1241
 msgid	"Lines: (ascending)"
 msgstr	"Lines: (kasvavalt)"
 
-#: src/lang.c:1242
+#: src/lang.c:1252
 msgid	"Always Keep"
 msgstr	"Hoia alati"
 
-#: src/lang.c:1243
+#: src/lang.c:1253
 msgid	"Always Remove"
 msgstr	"Eemalda alati"
 
-#: src/lang.c:1244
+#: src/lang.c:1254
 msgid	"Mark with D on selection screen"
 msgstr	"Märgi valikuekraanil tähega D"
 
-#: src/lang.c:1249
+#: src/lang.c:1259
 msgid	"Kill only unread arts"
 msgstr	"Surma ainult lugemata artiklid"
 
-#: src/lang.c:1250
+#: src/lang.c:1260
 msgid	"Kill all arts & show with K"
 msgstr	"Surma kõik artiklid & näita K tähega"
 
 #. TODO: s/K/art_marked_killed/
-#: src/lang.c:1251
+#: src/lang.c:1261
 msgid	"Kill all arts and never show"
 msgstr	"Surma kõik artiklid ja ära näita"
 
-#: src/lang.c:1256
+#: src/lang.c:1266
 msgid	"Nothing special"
 msgstr	"Ei midagi erilist"
 
-#: src/lang.c:1257
+#: src/lang.c:1267
 msgid	"Compress quotes"
 msgstr	"Tihenda tsitaadid"
 
-#: src/lang.c:1258
+#: src/lang.c:1268
 msgid	"Quote signatures"
 msgstr	"Tsiteeri allkirju"
 
-#: src/lang.c:1259
+#: src/lang.c:1269
 msgid	"Compress quotes, quote sigs"
 msgstr	"Tihenda tsitaadid, tsiteeri allkirju"
 
-#: src/lang.c:1260
+#: src/lang.c:1270
 msgid	"Quote empty lines"
 msgstr	"Tsiteeri tühje ridu"
 
-#: src/lang.c:1261
+#: src/lang.c:1271
 msgid	"Compress quotes, quote empty lines"
 msgstr	"Tihenda tsitaadid, tsiteeri tühje ridu"
 
-#: src/lang.c:1262
+#: src/lang.c:1272
 msgid	"Quote sigs & empty lines"
 msgstr	"Tsiteeri allkirju ja tühje ridu"
 
-#: src/lang.c:1263
+#: src/lang.c:1273
 msgid	"Comp. q., quote sigs & empty lines"
 msgstr	"Tihenda tsitaate, tsiteeri allkirju ja tühje ridu"
 
-#: src/lang.c:1301
+#: src/lang.c:1311
 msgid	"no"
 msgstr	"ei"
 
-#: src/lang.c:1302
+#: src/lang.c:1312
 msgid	"with headers"
 msgstr	"päistega"
 
-#: src/lang.c:1303
+#: src/lang.c:1313
 msgid	"without headers"
 msgstr	"päisteta"
 
-# TRANSLATION MISSING
-#: src/lang.c:1310 src/lang.c:1316
+#: src/lang.c:1320 src/lang.c:1326
 msgid	"NFKC"
-msgstr	""
+msgstr	"NFKC"
 
-# TRANSLATION MISSING
-#: src/lang.c:1311
+#: src/lang.c:1321
 msgid	"NFKD"
-msgstr	""
+msgstr	"NFKD"
 
-# TRANSLATION MISSING
-#: src/lang.c:1312
+#: src/lang.c:1322
 msgid	"NFC"
-msgstr	""
+msgstr	"NFC"
 
-# TRANSLATION MISSING
-#: src/lang.c:1313
+#: src/lang.c:1323
 msgid	"NFD"
-msgstr	""
+msgstr	"NFD"
 
-#: src/lang.c:1324
+#: src/lang.c:1334
 msgid	"Display Options"
 msgstr	"Ekraani seaded"
 
-#: src/lang.c:1330
+#: src/lang.c:1341
 msgid	"Color Options"
 msgstr	"Värvide seaded"
 
-#: src/lang.c:1336
+#: src/lang.c:1348
 msgid	"Article-Limiting Options"
 msgstr	"Artikli piirangute seaded"
 
-#: src/lang.c:1342
+#: src/lang.c:1354
 msgid	"Posting/Mailing Options"
 msgstr	"Postitamise/saatmise seaded"
 
-#: src/lang.c:1348
+#: src/lang.c:1360
 msgid	"Saving/Printing Options"
 msgstr	"Salvestamise/trükkimise seaded"
 
-#: src/lang.c:1354
+#: src/lang.c:1366
 msgid	"Expert Options"
 msgstr	"Ekspertseaded"
 
-#: src/lang.c:1360
+#: src/lang.c:1372
 msgid	"Filtering Options"
 msgstr	"Filtreerimise seaded"
 
-#: src/lang.c:1365 src/lang.c:1396 src/lang.c:1402 src/lang.c:1414 src/lang.c:1464
-#: src/lang.c:1470 src/lang.c:1480 src/lang.c:1500 src/lang.c:1575 src/lang.c:1745
-#: src/lang.c:1751 src/lang.c:1757 src/lang.c:1763 src/lang.c:1775 src/lang.c:1782
-#: src/lang.c:1836 src/lang.c:1845 src/lang.c:1851 src/lang.c:1858 src/lang.c:1865
-#: src/lang.c:1872 src/lang.c:1879 src/lang.c:1886 src/lang.c:1893 src/lang.c:1900
-#: src/lang.c:1907 src/lang.c:1914 src/lang.c:1921 src/lang.c:1928 src/lang.c:1935
-#: src/lang.c:1942 src/lang.c:1949 src/lang.c:1956 src/lang.c:1963 src/lang.c:1970
-#: src/lang.c:1977 src/lang.c:1984 src/lang.c:1991 src/lang.c:1998 src/lang.c:2005
-#: src/lang.c:2013 src/lang.c:2029 src/lang.c:2036 src/lang.c:2043 src/lang.c:2050
-#: src/lang.c:2056 src/lang.c:2062 src/lang.c:2079 src/lang.c:2091 src/lang.c:2125
-#: src/lang.c:2178 src/lang.c:2185 src/lang.c:2191 src/lang.c:2216 src/lang.c:2233
-#: src/lang.c:2286 src/lang.c:2322 src/lang.c:2342 src/lang.c:2377 src/lang.c:2387
-#: src/lang.c:2412 src/lang.c:2428 src/lang.c:2447 src/lang.c:2460
+#: src/lang.c:1377 src/lang.c:1408 src/lang.c:1414 src/lang.c:1426 src/lang.c:1476
+#: src/lang.c:1482 src/lang.c:1492 src/lang.c:1512 src/lang.c:1587 src/lang.c:1757
+#: src/lang.c:1763 src/lang.c:1769 src/lang.c:1775 src/lang.c:1787 src/lang.c:1794
+#: src/lang.c:1848 src/lang.c:1857 src/lang.c:1863 src/lang.c:1870 src/lang.c:1877
+#: src/lang.c:1884 src/lang.c:1891 src/lang.c:1898 src/lang.c:1905 src/lang.c:1912
+#: src/lang.c:1919 src/lang.c:1926 src/lang.c:1933 src/lang.c:1940 src/lang.c:1947
+#: src/lang.c:1954 src/lang.c:1961 src/lang.c:1968 src/lang.c:1975 src/lang.c:1982
+#: src/lang.c:1989 src/lang.c:1996 src/lang.c:2003 src/lang.c:2010 src/lang.c:2017
+#: src/lang.c:2025 src/lang.c:2041 src/lang.c:2048 src/lang.c:2055 src/lang.c:2062
+#: src/lang.c:2068 src/lang.c:2074 src/lang.c:2091 src/lang.c:2103 src/lang.c:2137
+#: src/lang.c:2190 src/lang.c:2197 src/lang.c:2203 src/lang.c:2228 src/lang.c:2245
+#: src/lang.c:2298 src/lang.c:2334 src/lang.c:2354 src/lang.c:2389 src/lang.c:2399
+#: src/lang.c:2424 src/lang.c:2440 src/lang.c:2459 src/lang.c:2472
 msgid	"<SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	"<TÜHIK> lülitab, <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1366
+#: src/lang.c:1378
 msgid	"Show mini menu & posting etiquette"
 msgstr	"Näita minimenüüd & post. etiketti"
 
-#: src/lang.c:1367
+#: src/lang.c:1379
 msgid	"# If ON show a mini menu of useful commands at each level\n"
 	"# and posting etiquette after composing an article\n"
 msgstr	"# Kui väärtus on ON, näita enimkasutatavate käskude minimenüüd\n"
 	"# ja peale artikli kirjutamist postitamise etiketti.\n"
 
-#: src/lang.c:1372
+#: src/lang.c:1384
 msgid	"Show short description for each newsgroup. <SPACE> toggles & <CR> sets."
 msgstr	"Näita gruppide lühikirjeldusi. <TÜHIK> lülitab ja <CR> seab."
 
-#: src/lang.c:1373
+#: src/lang.c:1385
 msgid	"Show description of each newsgroup"
 msgstr	"Näita iga grupi lühikirjeldust"
 
-#: src/lang.c:1374
+#: src/lang.c:1386
 msgid	"# If ON show group description text after newsgroup name at\n"
 	"# group selection level\n"
 msgstr	"# Kui väärtus on ON, näita gruppide tasemel iga grupi nime\n"
 	"# järel grupi lühikirjeldust\n"
 
-#: src/lang.c:1379
+#: src/lang.c:1391
 msgid	"Show Subject & From (author) fields in group menu. <SPACE> toggles & <CR> "
 	"sets."
 msgstr	"Näita grupimenüüs teema ja From (autor) välju. <TÜHIK> lülitab ja <CR> seab."
 
-#: src/lang.c:1380
+#: src/lang.c:1392
 msgid	"In group menu, show author by"
 msgstr	"Näita grupimenüüs autorit"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1381
-#, fuzzy
+#: src/lang.c:1393
 msgid	"# Part of from field to display\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = none\n"
 	"#   1 = address\n"
 	"# * 2 = full name\n"
 	"#   3 = both\n"
-msgstr	"# Millist saatja nime osa näidata 0) mitte midagi 1) aadress 2) täisnimi\n"
-	"# 3) mõlemad\n"
+msgstr	"# Millist saatja nime osa näidata\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#   0 = mitte midagi\n"
+	"#   1 = aadress\n"
+	"# * 2 = täisnimi\n"
+	"#   3 = mõlemad\n"
 
-#: src/lang.c:1390
+#: src/lang.c:1402
 msgid	"Draw -> or highlighted bar for selection. <SPACE> toggles & <CR> sets."
 msgstr	"Märgi valik -> või heleda ribaga. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:1391
+#: src/lang.c:1403
 msgid	"Draw -> instead of highlighted bar"
 msgstr	"Joonista -> heleda riba asemel"
 
-#: src/lang.c:1392
+#: src/lang.c:1404
 msgid	"# If ON use -> otherwise highlighted bar for selection\n"
 msgstr	"# Kui väärtus on on, kasuta valiku märkimiseks ->, muidu riba\n"
 
-#: src/lang.c:1397
+#: src/lang.c:1409
 msgid	"Use inverse video for page headers"
 msgstr	"Kasuta päistel pööratud videot"
 
-#: src/lang.c:1398
+#: src/lang.c:1410
 msgid	"# If ON use inverse video for page headers at different levels\n"
 msgstr	"# Kui väärtus on ON, kasuta erinevatel tasemetel päiste näitamisel\n"
 	"# pööratud videot\n"
 
-#: src/lang.c:1403
+#: src/lang.c:1415
 msgid	"Thread articles by"
 msgstr	"Artiklite teemadesse jagamine"
 
-# TRANSLATION MISSING
-#: src/lang.c:1404
+#: src/lang.c:1416
 msgid	"# Thread articles by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4389,33 +4412,40 @@ msgid	"# Thread articles by ...\n"
 	"#   2 = References\n"
 	"# * 3 = Both (Subject and References)\n"
 	"#   4 = Multipart Subject\n"
-msgstr	""
+msgstr	"# Artiklite teemadesse jagamine\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#   0 = ei jaga\n"
+	"#   1 = Teema\n"
+	"#   2 = Viited\n"
+	"# * 3 = Mõlemad (Teema ja Viited)\n"
+	"#   4 = Mitmeosaline teema\n"
 
-#: src/lang.c:1415
+#: src/lang.c:1427
 msgid	"Score of a thread"
 msgstr	"Teema kaal"
 
-# TRANSLATION MISSING
-#: src/lang.c:1416
+#: src/lang.c:1428
 msgid	"# Thread score\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = max\n"
 	"#   1 = sum\n"
 	"#   2 = average\n"
-msgstr	""
+msgstr	"# Teema kaal\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"# * 0 = maksimum\n"
+	"#   1 = summa\n"
+	"#   2 = keskmine\n"
 
-#: src/lang.c:1424
+#: src/lang.c:1436
 msgid	"Sort articles by Subject, From, Date or Score. <SPACE> toggles & <CR> sets."
 msgstr	"Järjesta artiklid Subject, From, Date, kaalu järgi. <TÜHIK> lülitab, <CR> "
 	"seab."
 
-#: src/lang.c:1425
+#: src/lang.c:1437
 msgid	"Sort articles by"
 msgstr	"Artiklite järjestus"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1426
-#, fuzzy
+#: src/lang.c:1438
 msgid	"# Sort articles by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4429,269 +4459,280 @@ msgid	"# Sort articles by ...\n"
 	"#   8 = Score ascending\n"
 	"#   9 = Lines descending\n"
 	"#  10 = Lines ascending\n"
-msgstr	"# Artiklite järjestamine 0=(ei järjesta) 1=(Teema kahanev) 2=(Teema kasvav)\n"
-	"# 3=(Saatja kahanev) 4=(Saatja kasvava) 5=(Kuup. kahanev) 6=(Kuup. kasvav)\n"
-	"# 7=(Kaal kahanev) 8=(Kaal kasvav) 9=(Ridu kahanev) 10=(Ridu kasvav).\n"
+msgstr	"# Artiklite järjestamine\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#   0 = ei järjesta\n"
+	"#   1 = Teema kahanev\n"
+	"#   2 = Teema kasvav\n"
+	"#   3 = Saatja kahanev\n"
+	"#   4 = Saatja kasvava\n"
+	"#   5 = Kuupäev kahanev\n"
+	"# * 6 = Kuupäev kasvav\n"
+	"#   7 = Kaal kahanev\n"
+	"#   8 = Kaal kasvav\n"
+	"#   9 = Ridu kahanev\n"
+	"#  10 = Ridu kasvav\n"
 
-#: src/lang.c:1442
+#: src/lang.c:1454
 msgid	"Sort threads by Nothing or Score. <SPACE> toggles & <CR> sets."
 msgstr	"Järjesta teemad mitte millegi või kaalu järgi. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:1443
+#: src/lang.c:1455
 msgid	"Sort threads by"
 msgstr	"Teemade järjestus"
 
-# TRANSLATION MISSING
-#: src/lang.c:1444
+#: src/lang.c:1456
 msgid	"# Sort thread by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
 	"# * 1 = Score descending\n"
 	"#   2 = Score ascending\n"
-msgstr	""
+msgstr	"# Teemade järjestamine\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#   0 = ei järjesta\n"
+	"# * 1 = Skoor kahanev\n"
+	"#   2 = Skoor kasvav\n"
 
-#: src/lang.c:1452
+#: src/lang.c:1464
 msgid	"Put cursor at first/last unread art in groups. <SPACE> toggles & <CR> sets."
 msgstr	"Vii kursor grupis esimesele/viimasele lugemata artiklile. <TÜHIK> lülitab, "
 	"<CR> seab."
 
-#: src/lang.c:1453
+#: src/lang.c:1465
 msgid	"Goto first unread article in group"
 msgstr	"Mine grupis esimesele lugemata art."
 
-#: src/lang.c:1454
+#: src/lang.c:1466
 msgid	"# If ON put cursor at first unread art in group otherwise last art\n"
 msgstr	"# Kui väärtus on ON, vii kursor grupi esimesele lugemata artiklile,\n"
 	"# muidu viimasele\n"
 
-#: src/lang.c:1458
+#: src/lang.c:1470
 msgid	"Show all articles or only unread articles. <SPACE> toggles & <CR> sets."
 msgstr	"Näita kõiki või ainult lugemata artikleid. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:1459
+#: src/lang.c:1471
 msgid	"Show only unread articles"
 msgstr	"Näita ainult lugemata artikleid"
 
-#: src/lang.c:1460
+#: src/lang.c:1472
 msgid	"# If ON show only new/unread articles otherwise show all.\n"
 msgstr	"# Kui väärtus on ON, näita ainult lugemata artikleid, muidu näita kõiki.\n"
 
-#: src/lang.c:1465
+#: src/lang.c:1477
 msgid	"Show only groups with unread arts"
 msgstr	"Ainult lugemata artiklitega grupid"
 
-#: src/lang.c:1466
+#: src/lang.c:1478
 msgid	"# If ON show only subscribed to groups that contain unread articles.\n"
 msgstr	"# Näita ainult neid tellitud gruppe, kus on lugemata artikleid.\n"
 
-#: src/lang.c:1471
+#: src/lang.c:1483
 msgid	"Filter which articles"
 msgstr	"Filtreeri artikleid"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1472
-#, fuzzy
+#: src/lang.c:1484
 msgid	"# Filter which articles\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = only kill unread articles\n"
 	"#   1 = kill all articles and show in threads marked with K\n"
 	"#   2 = kill all articles and never show them\n"
-msgstr	"# 0=(Surma ainult lugemata artiklid)\n"
-	"# 1=(Surma kõik artiklid ja näita teemades märgiga K)\n"
-	"# 2=(Surma kõik artiklid ja ära näita neid).\n"
+msgstr	"# Artikklite filtreerimine\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"# * 0 = Surma ainult lugemata artiklid\n"
+	"#   1 = Surma kõik artiklid ja näita teemades märgiga K\n"
+	"#   2 = Surma kõik artiklid ja ära näita neid\n"
 
-#: src/lang.c:1481
+#: src/lang.c:1493
 msgid	"Tab goes to next unread article"
 msgstr	"Tab viib järgmisele lugemata art."
 
-#: src/lang.c:1482
+#: src/lang.c:1494
 msgid	"# If ON the TAB command will go to next unread article at article viewer "
 	"level\n"
 msgstr	"# Kui väärtus on ON, viib Tab käsk järgmisele lugemata artiklile\n"
 
-#: src/lang.c:1486
+#: src/lang.c:1498
 msgid	"Scrolling with <SPACE> past the end of an art. jumps to the next unread one."
 msgstr	"Tühikuga artikli lõpust edasi kerimine hüppab järgmisele lugemata artiklile."
 
-#: src/lang.c:1487
+#: src/lang.c:1499
 msgid	"Space goes to next unread article"
 msgstr	"Tühik viib järgmisele lugemata art."
 
-#: src/lang.c:1488
+#: src/lang.c:1500
 msgid	"# If ON the SPACE command will go to next unread article at article viewer\n"
 	"# level when the end of the article is reached (rn-style pager)\n"
 msgstr	"# Kui väärtus on ON, viib artikli lõpus tühiku vajutamine\n"
 	"# järgmisele lugemata artiklile (rn stiil)\n"
 
-#: src/lang.c:1493
+#: src/lang.c:1505
 msgid	"Scrolling with <PGDN>/<DOWN> past the end of an art. jumps to the unread one."
 msgstr	"<PGDN>/noolega art. lõpust edasi kerimine hüppab järgmisele lugemata art."
 
-#: src/lang.c:1494
+#: src/lang.c:1506
 msgid	"PgDn goes to next unread article"
 msgstr	"PgDn viib järgmisele lugemata art."
 
-#: src/lang.c:1495
+#: src/lang.c:1507
 msgid	"# If ON the PGDN or DOWN command will go to next unread article when\n"
 	"# pressed at end of message\n"
 msgstr	"# Kui väärtus on ON, viib artikli lõpus PGDN või nool alla vajutamine\n"
 	"# järgmisele artiklile\n"
 
-#: src/lang.c:1501
+#: src/lang.c:1513
 msgid	"List thread using right arrow key"
 msgstr	"Nool paremale näitab teema loendit"
 
-#: src/lang.c:1502
+#: src/lang.c:1514
 msgid	"# If ON automatically list thread when entering it using right arrow key.\n"
 msgstr	"# Kui väärtus on ON, näita nool paremale klahvi vajutamisel teema artikleid.\n"
 
-#: src/lang.c:1506
+#: src/lang.c:1518
 msgid	"Enter character to indicate deleted articles. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage sümbol kustutatud artiklite märkimiseks. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1507
+#: src/lang.c:1519
 msgid	"Character to show deleted articles"
 msgstr	"Kustutatud artiklite marker"
 
-#: src/lang.c:1508
+#: src/lang.c:1520
 msgid	"# Character used to show that an art was deleted (default 'D')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Sümbol, mis tähistab kustutatud artiklit (vaikimisi 'D')\n"
 	"# _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1513
+#: src/lang.c:1525
 msgid	"Enter character to indicate articles in a range. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage sümbol, mis märgib vahemikku kuuluvaid artikleid. <CR> seab, <ESC> "
 	"katkestab."
 
-#: src/lang.c:1514
+#: src/lang.c:1526
 msgid	"Character to show inrange articles"
 msgstr	"Artiklite vahemiku marker"
 
-#: src/lang.c:1515
+#: src/lang.c:1527
 msgid	"# Character used to show that an art is in a range (default '#')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Sümbol, mis märgib vahemikku kuuluvaid artikleid (vaikimisi '#')\n"
 	"# _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1520
+#: src/lang.c:1532
 msgid	"Enter character to indicate that article will return. <CR> sets, <ESC> "
 	"cancels."
 msgstr	"Sisestage tagasituleva artikli marker. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1521
+#: src/lang.c:1533
 msgid	"Character to show returning arts"
 msgstr	"Tagasi tulnud artiklite marker"
 
-#: src/lang.c:1522
+#: src/lang.c:1534
 msgid	"# Character used to show that an art will return (default '-')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Sümbol, mis näitab, et artikkel tuleb tagasi (vaikimisi '-')\n"
 	"# _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1527
+#: src/lang.c:1539
 msgid	"Enter character to indicate selected articles. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage valitud artikleid märkiv sümbol. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1528
+#: src/lang.c:1540
 msgid	"Character to show selected articles"
 msgstr	"Valitud artiklite marker"
 
-#: src/lang.c:1529
+#: src/lang.c:1541
 msgid	"# Character used to show that an art was auto-selected (default '*')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Sümbol, mis näitab, et artikkel on automaatselt valitud (vaikimisi '*')\n"
 	"# _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1534
+#: src/lang.c:1546
 msgid	"Enter character to indicate recent articles. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage värskeid artikleid märkiv sümbol. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1535
+#: src/lang.c:1547
 msgid	"Character to show recent articles"
 msgstr	"Värskete artiklite marker"
 
-#: src/lang.c:1536
+#: src/lang.c:1548
 msgid	"# Character used to show that an art is recent (default 'o')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Sümbol, mis näitab, et artikkel on värske (vaikimisi 'o')\n"
 	"# _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1541
+#: src/lang.c:1553
 msgid	"Enter character to indicate unread articles. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage lugemata artikleid märkiv sümbol. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1542
+#: src/lang.c:1554
 msgid	"Character to show unread articles"
 msgstr	"Lugemata artiklite marker"
 
-#: src/lang.c:1543
+#: src/lang.c:1555
 msgid	"# Character used to show that an art is unread (default '+')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Sümbol, mis näitab, et artikkel on lugemata (vaikimisi '+')\n"
 	"# _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1548
+#: src/lang.c:1560
 msgid	"Enter character to indicate read articles. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage loetud artikleid märkiv sümbol. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1549
+#: src/lang.c:1561
 msgid	"Character to show read articles"
 msgstr	"Loetud artiklite marker"
 
-#: src/lang.c:1550
+#: src/lang.c:1562
 msgid	"# Character used to show that an art was read (default ' ')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Sümbol, mis näitab, et artikkel on loetud (vaikimisi ' ')\n"
 	"# _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1555
+#: src/lang.c:1567
 msgid	"Enter character to indicate killed articles. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage surmatud artikleid märkiv sümbol. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1556
+#: src/lang.c:1568
 msgid	"Character to show killed articles"
 msgstr	"Surmatud artiklite marker"
 
-#: src/lang.c:1557
+#: src/lang.c:1569
 msgid	"# Character used to show that an art was killed (default 'K')\n"
 	"# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr	"# Sümbol, mis näitab, et artikkel on surmatud (vaikimisi 'K')\n"
 	"# _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1562
+#: src/lang.c:1574
 msgid	"Enter character to indicate read selected articles. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage valitud artikleid märkiv sümbol. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1563
+#: src/lang.c:1575
 msgid	"Character to show readselected arts"
 msgstr	"Lugemiseks valitud artiklite marker"
 
-#: src/lang.c:1564
+#: src/lang.c:1576
 msgid	"# Character used to show that an art was selected before read (default ':')\n"
 	"# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr	"# Sümbol, mis näitab, et artikkel on enne lugemist valitud (vaikimisi ':')\n"
 	"# Surmamise tase peab samuti olema määratud, _ asendatakse tühikuga ' '\n"
 
-#: src/lang.c:1569
+#: src/lang.c:1581
 msgid	"Enter maximum length of newsgroup names displayed. <CR> sets."
 msgstr	"Sisestage maksimaalne näidatav grupi nime pikkus. <CR> seab."
 
-#: src/lang.c:1570
+#: src/lang.c:1582
 msgid	"Max. length of group names shown"
 msgstr	"Maksimaalne grupinime pikkus"
 
-#: src/lang.c:1571
+#: src/lang.c:1583
 msgid	"# Maximum length of the names of newsgroups displayed\n"
 msgstr	"# Maksimaalne grupi nime pikkus, mida näidatakse ekraanil\n"
 
-#: src/lang.c:1576
+#: src/lang.c:1588
 msgid	"Show lines/score in listings"
 msgstr	"Näita loendis artikli kaalu/ridu"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1577
-#, fuzzy
+#: src/lang.c:1589
 msgid	"# What informations should be displayed in article/thread listing\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4699,21 +4740,23 @@ msgid	"# What informations should be dis
 	"#   2 = score\n"
 	"#   3 = lines & score\n"
 msgstr	"# Millist informatsiooni tuleks näidata artikli/teema loendis\n"
-	"# 0 = midagi, 1 = ridu, 2 = kaalu, 3 = ridu ja kaalu\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#   0 = mitte midagi\n"
+	"# * 1 = ridu\n"
+	"#   2 = kaalu\n"
+	"#   3 = ridu ja kaalu\n"
 
-#: src/lang.c:1586
+#: src/lang.c:1598
 msgid	"0 = full page scrolling, -1 = show previous last line as first on next page, "
 	"-2 = half page"
 msgstr	"0 = kerida kogu leht, -1 = näita eelmist rida järgmise lehe esimese reana, -2 "
 	"= pool lehte"
 
-#: src/lang.c:1587
+#: src/lang.c:1599
 msgid	"Number of lines to scroll in pager"
 msgstr	"Lehitsejas keritavate ridade arv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1588
-#, fuzzy
+#: src/lang.c:1600
 msgid	"# Number of lines that cursor-up/down will scroll in article pager\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#  -2 = half-page scrolling\n"
@@ -4722,33 +4765,34 @@ msgid	"# Number of lines that cursor-up/
 	"# * 1 = line-by-line\n"
 	"#   2 or greater = scroll by 2 or more lines (only in the pager)\n"
 msgstr	"# Ridade arv, mida lehitseja kerib üles/alla\n"
-	"# nt, 1+ = rida haaval, 0 = leht haaval (tavaline käitumine),\n"
-	"# -1 = ülemine või alumine rida jäetakse järgmisele lehele\n"
-	"# -2 = poole lehe kaupa kerimine\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#  -2 = poole lehe kaupa kerimine\n"
+	"#  -1 = ülemine või alumine rida jäetakse järgmisele lehele\n"
+	"#   0 = leht haaval (tavaline käitumine)\n"
+	"# * 1 = rida haaval\n"
+	"#   2 või suurem = keri 2 või enama rea haaval (ainult lehitsejas)\n"
 
-#: src/lang.c:1598
+#: src/lang.c:1610
 msgid	"Display signatures. <SPACE> toggles & <CR> sets."
 msgstr	"Näita signatuure, <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:1599
+#: src/lang.c:1611
 msgid	"Display signatures"
 msgstr	"Näita signatuure"
 
-#: src/lang.c:1600
+#: src/lang.c:1612
 msgid	"# If OFF don't show signatures when displaying articles\n"
 msgstr	"# Kui väärtus on OFF, ei näita koos artiklitega signatuure\n"
 
-#: src/lang.c:1604
+#: src/lang.c:1616
 msgid	"Display uuencoded data as tagged attachments. <SPACE> toggles & <CR> sets."
 msgstr	"Näita uuenkodeeritud andmeid märgitud lisadena. <TÜHIK> lülitab ja <CR> seab."
 
-#: src/lang.c:1605
+#: src/lang.c:1617
 msgid	"Display uue data as an attachment"
 msgstr	"Näita uuenk. andmeid lisadena"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1606
-#, fuzzy
+#: src/lang.c:1618
 msgid	"# Handling of uuencoded data in the pager\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no, display raw uuencoded data\n"
@@ -4757,37 +4801,38 @@ msgid	"# Handling of uuencoded data in t
 	"#   2 = hide all, as for 1, but any line that looks like uuencoded data will\n"
 	"#       be folded into a tag line.\n"
 msgstr	"# uuenkodeeritud andmete käsitlemine lehitsejas\n"
-	"# 0 = näita puhast uuenkodeeritud andmeid\n"
-	"# 1 = uuenkodeeritud andmed koondatakse üheks märgitud reaks, mis näitab\n"
-	"#     mahtu ja failinime, sarnaselt nagu näidatakse MIME lisandeid\n"
-	"# 2 = nagu 1, aga iga rida, mis tundub olema uuenkodeeritud, esitatakse\n"
-	"#     märgituna.\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"# * 0 = näita puhast uuenkodeeritud andmeid\n"
+	"#   1 = uuenkodeeritud andmed koondatakse üheks märgitud reaks, mis näitab\n"
+	"#       mahtu ja failinime, sarnaselt nagu näidatakse MIME lisandeid\n"
+	"#   2 = nagu 1, aga iga rida, mis tundub olema uuenkodeeritud, esitatakse\n"
+	"#       märgituna.\n"
 
 #
-#: src/lang.c:1616
+#: src/lang.c:1628
 msgid	"Decode German style TeX umlaut codes to ISO. <SPACE> toggles & <CR> sets."
 msgstr	"Dekodeeri saksa TeX esituses tähed ISO koodideks. <TÜHIK> lülitab, <CR> seab."
 
 #
-#: src/lang.c:1617
+#: src/lang.c:1629
 msgid	"Display \"a as Umlaut-a"
 msgstr	"Näita \"a kui Umlaut-a"
 
-#: src/lang.c:1618
+#: src/lang.c:1630
 msgid	"# If ON decode German style TeX umlaut codes to ISO and\n"
 	"# show \"a as Umlaut-a, etc.\n"
 msgstr	"# Kui väärtus on ON, teisenda saksa TeX esituses tähed ISO\n"
 	"# koodideks ja näita \"a nagu Umlaut-a, jne.\n"
 
-#: src/lang.c:1623 src/lang.c:1633
+#: src/lang.c:1635 src/lang.c:1645
 msgid	"Space separated list of header fields"
 msgstr	"Tühikuga eraldatud päised"
 
-#: src/lang.c:1624
+#: src/lang.c:1636
 msgid	"Display these header fields (or *)"
 msgstr	"Näita neid päiseid (või *)"
 
-#: src/lang.c:1625
+#: src/lang.c:1637
 msgid	"# Which news headers you wish to see. If you want to see _all_ the headers,\n"
 	"# place an '*' as this value. This is the only way a wildcard can be used.\n"
 	"# If you enter 'X-' as the value, you will see all headers beginning with\n"
@@ -4802,11 +4847,11 @@ msgstr	"# Milliseid artikli päiseid te s
 	"tühikut.\n"
 	"# Kui te väärtust ei määra, lülitatakse see omadus välja.\n"
 
-#: src/lang.c:1634
+#: src/lang.c:1646
 msgid	"Do not display these header fields"
 msgstr	"Ära näita neid päiseridu"
 
-#: src/lang.c:1635
+#: src/lang.c:1647
 msgid	"# Same as 'news_headers_to_display' except it denotes the opposite.\n"
 	"# An example of using both options might be if you thought X- headers were\n"
 	"# A Good Thing(tm), but thought Alan and Pape were miscreants...well then "
@@ -4824,28 +4869,28 @@ msgstr	"# Sama kui 'news_headers_to_disp
 	"#\n"
 	"# Kui te väärtust ei määra, lülitatakse see omadus välja.\n"
 
-#: src/lang.c:1645
+#: src/lang.c:1657
 msgid	"Do you want to enable automatic handling of multipart/alternative articles?"
 msgstr	"Kas te soovite multipart/alternative artiklite automaatset käsitlemist?"
 
-#: src/lang.c:1646
+#: src/lang.c:1658
 msgid	"Skip multipart/alternative parts"
 msgstr	"Jäta multipart/alternative osad"
 
-#: src/lang.c:1647
+#: src/lang.c:1659
 msgid	"# If ON strip multipart/alternative messages automatically\n"
 msgstr	"# Kui väärtus on ON, loobu automaatselt multipart/alternative teadete "
 	"lisadest\n"
 
-#: src/lang.c:1652
+#: src/lang.c:1664
 msgid	"A regex used to decide which lines to show in col_quote."
 msgstr	"Regulaaravaldis otsustamaks, milliseid ridu tsitaatides näidata."
 
-#: src/lang.c:1653
+#: src/lang.c:1665
 msgid	"Regex used to show quoted lines"
 msgstr	"Tsiteeritud ridade näitamise regex"
 
-#: src/lang.c:1654
+#: src/lang.c:1666
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted when viewing articles. Quoted lines are shown in col_quote.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4853,15 +4898,15 @@ msgstr	"# Regulaaravaldis, mida tin kasu
 	"# milliseid read on tsiteeritud. Tsiteeritud ridu näidatakse col_quote.\n"
 	"# Kui te jätate selle tühjaks, kasutab tin sisseehitatud väärtust.\n"
 
-#: src/lang.c:1660
+#: src/lang.c:1672
 msgid	"A regex used to decide which lines to show in col_quote2."
 msgstr	"Regulaaravaldis otsustamaks, milliseid ridu näidata col_quote2."
 
-#: src/lang.c:1661
+#: src/lang.c:1673
 msgid	"Regex used to show twice quoted l."
 msgstr	"Topelt tsiteeritud ridu näitav reg"
 
-#: src/lang.c:1662
+#: src/lang.c:1674
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted twice. Twice quoted lines are shown in col_quote2.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4870,15 +4915,15 @@ msgstr	"# Regulaaravaldis, mida tin kasu
 	"# näidatakse col_quote2.\n"
 	"# Kui te jätate selle tühjaks, kasutab tin sisseehitatud väärtust.\n"
 
-#: src/lang.c:1668
+#: src/lang.c:1680
 msgid	"A regex used to decide which lines to show in col_quote3."
 msgstr	"Regulaaravaldis otsustamaks, milliseid ridu näidata col_quote3."
 
-#: src/lang.c:1669
+#: src/lang.c:1681
 msgid	"Regex used to show >= 3 times q.l."
 msgstr	">= 3 tsiteeritud ridu näitav reg"
 
-#: src/lang.c:1670
+#: src/lang.c:1682
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted >=3 times. >=3 times quoted lines are shown in col_quote3.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4887,15 +4932,15 @@ msgstr	"# Regulaaravaldis, mida tin kasu
 	"# näidatakse col_quote3.\n"
 	"# Kui te jätate selle tühjaks, kasutab tin sisseehitatud väärtust.\n"
 
-#: src/lang.c:1677
+#: src/lang.c:1689
 msgid	"A regex used to decide which words to show in col_markslashes."
 msgstr	"Regex et otsustada, milliseid sõnu näidata col_markslashes abil."
 
-#: src/lang.c:1678
+#: src/lang.c:1690
 msgid	"Regex used to highlight /slashes/"
 msgstr	"Regex et esile tõsta /kaldkriipse/"
 
-#: src/lang.c:1679
+#: src/lang.c:1691
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '/' are to be shown in col_markslashes.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4903,15 +4948,15 @@ msgstr	"# Regulaaravaldis mida tin kasut
 	"# sõnu näidata col_markslashes abil. Kui jätate selle tühjaks, kasutab\n"
 	"# tin sisse ehitatud vaikeväärtust.\n"
 
-#: src/lang.c:1685
+#: src/lang.c:1697
 msgid	"A regex used to decide which words to show in col_markstars."
 msgstr	"Regex et otsustada, milliseid sõnu näidata col_markstars abil."
 
-#: src/lang.c:1686
+#: src/lang.c:1698
 msgid	"Regex used to highlight *stars*"
 msgstr	"Regex et esile tõsta *tärne*"
 
-#: src/lang.c:1687
+#: src/lang.c:1699
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '*' are to be shown in col_markstars.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4919,15 +4964,15 @@ msgstr	"# Regulaaravaldis mida tin kasut
 	"# sõnu näidata col_markstars abil. Kui jätate selle tühjaks, kasutab\n"
 	"# tin sisse ehitatud vaikeväärtust.\n"
 
-#: src/lang.c:1693
+#: src/lang.c:1705
 msgid	"A regex used to decide which words to show in col_markstroke."
 msgstr	"Regex et otsustada, milliseid sõnu näidata col_markstroke abil."
 
-#: src/lang.c:1694
+#: src/lang.c:1706
 msgid	"Regex used to highlight -strokes-"
 msgstr	"Regex et esile tõsta -kriipse-"
 
-#: src/lang.c:1695
+#: src/lang.c:1707
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '-' are to be shown in col_markstroke.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4935,15 +4980,15 @@ msgstr	"# Regulaaravaldis mida tin kasut
 	"# sõnu näidata col_markstroke abil. Kui jätate selle tühjaks, kasutab\n"
 	"# tin sisse ehitatud vaikeväärtust.\n"
 
-#: src/lang.c:1701
+#: src/lang.c:1713
 msgid	"A regex used to decide which words to show in col_markdash."
 msgstr	"Regex et otsustada, milliseid sõnu näidata col_markdash abil."
 
-#: src/lang.c:1702
+#: src/lang.c:1714
 msgid	"Regex used to highlight _underline_"
 msgstr	"Regex et esile tõsta _alakriipse_"
 
-#: src/lang.c:1703
+#: src/lang.c:1715
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '_' are to be shown in col_markdash.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4951,44 +4996,44 @@ msgstr	"# Regulaaravaldis mida tin kasut
 	"# sõnu näidata col_markdash abil. Kui jätate selle tühjaks, kasutab\n"
 	"# tin sisse ehitatud vaikeväärtust.\n"
 
-#: src/lang.c:1709
+#: src/lang.c:1721
 msgid	"A regex used to find Subject prefixes to remove.  Use '|' as separator."
 msgstr	"Regulaaravaldis eemaldatava teema prefiksi leidmiseks. Eraldajaks on '|'."
 
-#: src/lang.c:1710
+#: src/lang.c:1722
 msgid	"Regex with Subject prefixes"
 msgstr	"Regex teema prefiksi leidmiseks"
 
-#: src/lang.c:1711
+#: src/lang.c:1723
 msgid	"# A regular expression that tin will use to find Subject prefixes\n"
 	"# which will be removed before showing the header.\n"
 msgstr	"# Regulaaravaldis, mida tin kasutab, et leida teema prefiksit, mida\n"
 	"# enne päise näitamist eemaldada.\n"
 
-#: src/lang.c:1716
+#: src/lang.c:1728
 msgid	"A regex used to find Subject suffixes to remove.  Use '|' as separator."
 msgstr	"Regulaaravaldis eemaldatava teema sufiksi leidmiseks. Eraldajaks on '|'."
 
-#: src/lang.c:1717
+#: src/lang.c:1729
 msgid	"Regex with Subject suffixes"
 msgstr	"Regex teema sufiksi leidmiseks"
 
-#: src/lang.c:1718
+#: src/lang.c:1730
 msgid	"# A regular expression that tin will use to find Subject suffixes\n"
 	"# which will be removed when replying or posting followup.\n"
 msgstr	"# Regulaaravaldis, mida tin kasutab teema sufiksi leidmiseks,\n"
 	"# mis eemaldatakse vastuse saatmisel või postitamisel.\n"
 
-#: src/lang.c:1723
+#: src/lang.c:1735
 msgid	"Enter name and options for external MIME viewer, --internal for built-in "
 	"viewer"
 msgstr	"Sisestage välise MIME lehitseja nimi ja võtmed, sisemise valib --internal"
 
-#: src/lang.c:1724
+#: src/lang.c:1736
 msgid	"MIME binary content viewer"
 msgstr	"MIME kahendsisu lehitseja"
 
-#: src/lang.c:1725
+#: src/lang.c:1737
 msgid	"# If --internal automatically use the built in MIME viewer for non-text\n"
 	"# parts of articles.\n"
 	"# Otherwise specify an external viewer program (eg, metamail) or leave blank\n"
@@ -4998,453 +5043,437 @@ msgstr	"# --internal korral kasuta artik
 	"# Muidu määra automaatseks vaatamiseks väline programm (nt. metamail) või\n"
 	"# jäta tühjaks\n"
 
-#: src/lang.c:1732
+#: src/lang.c:1744
 msgid	"Confirm before starting non-text viewing program"
 msgstr	"Küsi enne mitte-tekstiliste osade vaatamist kinnitust"
 
-#: src/lang.c:1733
+#: src/lang.c:1745
 msgid	"Ask before using MIME viewer"
 msgstr	"Küsi MIME lehitseja kasutamise luba"
 
-#: src/lang.c:1734
+#: src/lang.c:1746
 msgid	"# If ON tin will ask before using metamail to display MIME messages\n"
 	"# this only happens if metamail_prog is set to something\n"
 msgstr	"# Kui väärtus on ON, küsi metamaili kasutamise luba\n"
 	"# see juhtub ainult siis, kui metamail_prog on väärtustatud\n"
 
-#: src/lang.c:1739
+#: src/lang.c:1751
 msgid	"Ask to mark groups read when quitting. <SPACE> toggles & <CR> sets."
 msgstr	"Küsi, kas märkida väljumisel grupid loetuks. <TÜHIK> lülitab ja <CR> seab."
 
-#: src/lang.c:1740
+#: src/lang.c:1752
 msgid	"Catchup read groups when quitting"
 msgstr	"Väljumisel märkida grupid loetuks"
 
-#: src/lang.c:1741
+#: src/lang.c:1753
 msgid	"# If ON ask user if read groups should all be marked read\n"
 msgstr	"# Kui väärtus on ON, küsi kasutajalt, kas märkida loetud gruppides kõik\n"
 	"# artiklid loetuks\n"
 
-#: src/lang.c:1746
+#: src/lang.c:1758
 msgid	"Catchup group using left key"
 msgstr	"Nool vasakule märgib grupi loetuks"
 
-#: src/lang.c:1747
+#: src/lang.c:1759
 msgid	"# If ON catchup group/thread when leaving with the left arrow key.\n"
 msgstr	"# Kui väärtus on ON, märgi grupp/teema loetuks, kui sellest väljutakse\n"
 	"# nool vasakule klahviga.\n"
 
-#: src/lang.c:1752
+#: src/lang.c:1764
 msgid	"Catchup thread by using left key"
 msgstr	"Nool vasakule märgib teema loetuks"
 
-#: src/lang.c:1758
+#: src/lang.c:1770
 msgid	"Which actions require confirmation"
 msgstr	"Tegevused mis nõuavad kinnitust"
 
-#: src/lang.c:1759
+#: src/lang.c:1771
 msgid	"# What should we ask confirmation for.\n"
 msgstr	"# Millele me peaksime küsima kinnitust.\n"
 
-#: src/lang.c:1764
+#: src/lang.c:1776
 msgid	"'Mark article read' ignores tags"
 msgstr	"'Märgi art. loetuks' eirab märke"
 
-#: src/lang.c:1765
+#: src/lang.c:1777
 msgid	"# If ON the 'Mark article read' function marks only the current article.\n"
 msgstr	"# Kui väärtus on ON märgib 'Märgi artikkel loetuks' funktsioon ainult\n"
 	"# jooksva artikli.\n"
 
-#: src/lang.c:1769
+#: src/lang.c:1781
 msgid	"Program to run to open URL's, <CR> sets, <ESC> cancels."
 msgstr	"Programm URLide avamiseks, <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:1770
+#: src/lang.c:1782
 msgid	"Program that opens URL's"
 msgstr	"Programm URLide avamiseks"
 
-#: src/lang.c:1771
+#: src/lang.c:1783
 msgid	"# The program used to open URL's. The actual URL will be appended\n"
 msgstr	"# Programm URLide avamiseks. URL lisatakse argumendiks\n"
 
-#: src/lang.c:1776
+#: src/lang.c:1788
 msgid	"Use mouse in xterm"
 msgstr	"Kasuta xterm aknas hiirt"
 
-#: src/lang.c:1777
+#: src/lang.c:1789
 msgid	"# If ON enable mouse key support on xterm terminals\n"
 msgstr	"# Kui väärtus on ON, luba xterm aknas hiire tugi\n"
 
-#: src/lang.c:1783
+#: src/lang.c:1795
 msgid	"Use scroll keys on keypad"
 msgstr	"Kasuta kerimisnuppe"
 
-#: src/lang.c:1784
+#: src/lang.c:1796
 msgid	"# If ON enable scroll keys on terminals that support it\n"
 msgstr	"# Kui väärtus on ON, luba kerimisnuppude kasutamist terminalidel, millel need "
 	"on olemas\n"
 
-#: src/lang.c:1789
+#: src/lang.c:1801
 msgid	"Enter maximum number of article to get. <CR> sets."
 msgstr	"Sisestage suurim laetavate artiklite arv. <CR> seab."
 
-#: src/lang.c:1790
+#: src/lang.c:1802
 msgid	"Number of articles to get"
 msgstr	"Laetavate artiklite arv"
 
-#: src/lang.c:1791
+#: src/lang.c:1803
 msgid	"# Number of articles to get (0=no limit), if negative sets maximum number\n"
 	"# of already read articles to be read before first unread one\n"
 msgstr	"# Laetavate artiklite arv (0=limiit puudub), negatiivne väärtus seab\n"
 	"# maksimaalse arvu loetud artikleid, mida lugeda enne lugemata artiklit\n"
 
-#: src/lang.c:1796
+#: src/lang.c:1808
 msgid	"Enter number of days article is considered recent. <CR> sets."
 msgstr	"Sisestage artikli värskuse kestus. <CR> seab."
 
-#: src/lang.c:1797
+#: src/lang.c:1809
 msgid	"Article recentness time limit"
 msgstr	"Artikli värskuse ajapiir"
 
-#: src/lang.c:1798
+#: src/lang.c:1810
 msgid	"# Number of days in which article is considered recent, (0=OFF)\n"
 msgstr	"# Päevad, mille jooksul loetakse artiklit värskeks, (0=OFF)\n"
 
-#: src/lang.c:1802
+#: src/lang.c:1814
 msgid	"WILDMAT for normal wildcards, REGEX for full regular expression matching."
 msgstr	"WILDMAT tavalistele jokkeritele, REGEX täisregulaaravaldistega otsimisele."
 
-#: src/lang.c:1803
+#: src/lang.c:1815
 msgid	"Wildcard matching"
 msgstr	"Jokkeritega otsimine"
 
-# TRANSLATION MISSING
-#: src/lang.c:1804
+#: src/lang.c:1816
 msgid	"# Wildcard matching\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = wildmat\n"
 	"#   1 = regex\n"
-msgstr	""
+msgstr	"# Jokkeritega otsimine\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"# * 0 = wildmat\n"
+	"#   1 = regex\n"
 
-#: src/lang.c:1811
+#: src/lang.c:1823
 msgid	"Enter minimal score before an article is marked killed. <CR> sets."
 msgstr	"Sisestage minimaalne kaal artikli surmamiseks. <CR> seab."
 
-#: src/lang.c:1812
+#: src/lang.c:1824
 msgid	"Score limit (kill)"
 msgstr	"Kaalu alampiir (surmamine)"
 
-#: src/lang.c:1813
+#: src/lang.c:1825
 msgid	"# Score limit before an article is marked killed\n"
 msgstr	"# Kaalu alampiir, enne kui artikkel märgitakse surmatuks\n"
 
-#: src/lang.c:1817
+#: src/lang.c:1829
 msgid	"Enter default score to kill articles. <CR> sets."
 msgstr	"Sisestage vaikimisi kaal artiklite surmamiseks. <CR> seab."
 
-#: src/lang.c:1818
+#: src/lang.c:1830
 msgid	"Default score to kill articles"
 msgstr	"Artiklite surmamise vaikimisi kaal"
 
-#: src/lang.c:1819
+#: src/lang.c:1831
 msgid	"# Default score to kill articles\n"
 msgstr	"# Vaikimisi kaal artiklite surmamiseks\n"
 
-#: src/lang.c:1823
+#: src/lang.c:1835
 msgid	"Enter minimal score before an article is marked hot. <CR> sets."
 msgstr	"Sisestage minimaalne kaal, enne kui artikkel märgitakse kuumaks. <CR> seab."
 
-#: src/lang.c:1824
+#: src/lang.c:1836
 msgid	"Score limit (select)"
 msgstr	"Kaalu alampiir (valik)"
 
-#: src/lang.c:1825
+#: src/lang.c:1837
 msgid	"# Score limit before an article is marked hot\n"
 msgstr	"# Kaalu alampiir, enne kui artikkel märgitakse muumaks\n"
 
-#: src/lang.c:1829
+#: src/lang.c:1841
 msgid	"Enter default score to select articles. <CR> sets."
 msgstr	"Sisestage vaikimisi kaal artiklite valimiseks. <CR> seab."
 
-#: src/lang.c:1830
+#: src/lang.c:1842
 msgid	"Default score to select articles"
 msgstr	"Vaikimisi kaal artiklite valimiseks"
 
-#: src/lang.c:1831
+#: src/lang.c:1843
 msgid	"# Default score to select articles\n"
 msgstr	"# Vaikimisi kaal artiklite valimiseks\n"
 
-#: src/lang.c:1837
+#: src/lang.c:1849
 msgid	"Use slrnface to show ''X-Face:''s"
 msgstr	"''X-Face:'' näitamiseks slrnface"
 
-#: src/lang.c:1838
+#: src/lang.c:1850
 msgid	"# If ON using slrnface(1) to interpret the ''X-Face:'' header.\n"
 	"# Only useful when running in an xterm.\n"
 msgstr	"# Kui väärtus on ON, kasutan ''X-Face:'' päiste käsitlemiseks slrnface(1).\n"
 	"# Kasulik ainult xterm aknas.\n"
 
-#: src/lang.c:1846
+#: src/lang.c:1858
 msgid	"Use ANSI color"
 msgstr	"Kasuta ANSI värve"
 
-#: src/lang.c:1847
+#: src/lang.c:1859
 msgid	"# If ON using ANSI-color\n"
 msgstr	"# Kui väärtus on ON, kasuta ANSI värve\n"
 
-#: src/lang.c:1852
+#: src/lang.c:1864
 msgid	"Standard foreground color"
 msgstr	"Standardne esiplaani värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1853
-#, fuzzy
+#: src/lang.c:1865
 msgid	"# Standard foreground color\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Standardne esiplaani värv\n"
+	"# Vaikimisi: -1 (vaikimisi värv)\n"
 
-#: src/lang.c:1859
+#: src/lang.c:1871
 msgid	"Standard background color"
 msgstr	"Standardne tagaplaani värv"
 
-# TRANSLATION MISSING
-#: src/lang.c:1860
+#: src/lang.c:1872
 msgid	"# Standard background color\n"
 	"# Default: -1 (default color)\n"
-msgstr	""
+msgstr	"# Standardne tagaplaani värv\n"
+	"# Vaikimisi: -1 (vaikimisi värv)\n"
 
-#: src/lang.c:1866
+#: src/lang.c:1878
 msgid	"Color for inverse text (background)"
 msgstr	"Pööratud teksti värv (tagaplaan)"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1867
-#, fuzzy
+#: src/lang.c:1879
 msgid	"# Color of background for inverse text\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Pööratud teksti tagaplaani värv\n"
+	"# Vaikimisi: 4 (sinine)\n"
 
-#: src/lang.c:1873
+#: src/lang.c:1885
 msgid	"Color for inverse text (foreground)"
 msgstr	"Pööratud teksti värv (esiplaan)"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1874
-#, fuzzy
+#: src/lang.c:1886
 msgid	"# Color of foreground for inverse text\n"
 	"# Default: 7 (white)\n"
 msgstr	"# Pööratud teksti esiplaani värv\n"
+	"# Vaikimisi: 7 (valge)\n"
 
-#: src/lang.c:1880
+#: src/lang.c:1892
 msgid	"Color of text lines"
 msgstr	"Tekstiridade värv"
 
-# TRANSLATION MISSING
-#: src/lang.c:1881
+#: src/lang.c:1893
 msgid	"# Color of text lines\n"
 	"# Default: -1 (default color)\n"
-msgstr	""
+msgstr	"# Tekstiridade värv\n"
+	"# Vaikimisi: -1 (vaikimisi värv)\n"
 
-#: src/lang.c:1887
+#: src/lang.c:1899
 msgid	"Color of mini help menu"
 msgstr	"Miniabiinfo värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1888
-#, fuzzy
+#: src/lang.c:1900
 msgid	"# Color of mini help menu\n"
 	"# Default: 3 (brown)\n"
 msgstr	"# Miniabiinfo värv\n"
+	"# Vaikimisi: 3 (pruun)\n"
 
-#: src/lang.c:1894
+#: src/lang.c:1906
 msgid	"Color of help text"
 msgstr	"Abiinfo värv"
 
-# TRANSLATION MISSING
-#: src/lang.c:1895
+#: src/lang.c:1907
 msgid	"# Color of help pages\n"
 	"# Default: -1 (default color)\n"
-msgstr	""
+msgstr	"# Abiinfo värv\n"
+	"# Vaikimisi: -1 (vaikimisi värv)\n"
 
-#: src/lang.c:1901
+#: src/lang.c:1913
 msgid	"Color of status messages"
 msgstr	"Olekuteadete värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1902
-#, fuzzy
+#: src/lang.c:1914
 msgid	"# Color of messages in last line\n"
 	"# Default: 6 (cyan)\n"
 msgstr	"# Viimasel real olevate teadete värv\n"
+	"# Default: 6 (lilla)\n"
 
-#: src/lang.c:1908
+#: src/lang.c:1920
 msgid	"Color of quoted lines"
 msgstr	"Tsitaadi värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1909
-#, fuzzy
+#: src/lang.c:1921
 msgid	"# Color of quote-lines\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Tsitaadi värv\n"
+	"# Vaikimisi: 2 (roheline)\n"
 
-#: src/lang.c:1915
+#: src/lang.c:1927
 msgid	"Color of twice quoted line"
 msgstr	"Topelt tsiteeritud rea värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1916
-#, fuzzy
+#: src/lang.c:1928
 msgid	"# Color of twice quoted lines\n"
 	"# Default: 3 (brown)\n"
 msgstr	"# Topelt tsiteeritud rea värv\n"
+	"# Vaikimisi: 3 (pruun)\n"
 
-#: src/lang.c:1922
+#: src/lang.c:1934
 msgid	"Color of =>3 times quoted line"
 msgstr	"=>3 korda tsiteeritud rea värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1923
-#, fuzzy
+#: src/lang.c:1935
 msgid	"# Color of >=3 times quoted lines\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# =>3 korda tsiteeritud rea värv\n"
+	"# Vaikimisi: 4 (sinine)\n"
 
-#: src/lang.c:1929
+#: src/lang.c:1941
 msgid	"Color of article header lines"
 msgstr	"Artikli päiseridade värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1930
-#, fuzzy
+#: src/lang.c:1942
 msgid	"# Color of header-lines\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Päiseridade värv\n"
+	"# Vaikimisi: 2 (roheline)\n"
 
-#: src/lang.c:1936
+#: src/lang.c:1948
 msgid	"Color of actual news header fields"
 msgstr	"Artikli tegelike päiseridade värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1937
-#, fuzzy
+#: src/lang.c:1949
 msgid	"# Color of actual news header fields\n"
 	"# Default: 9 (light red)\n"
 msgstr	"# Artikli tegelike päiseridade värv\n"
+	"# Vaikimisi: 9 (helepunane)\n"
 
-#: src/lang.c:1943
+#: src/lang.c:1955
 msgid	"Color of article subject lines"
 msgstr	"Artikli teemarea värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1944
-#, fuzzy
+#: src/lang.c:1956
 msgid	"# Color of article subject\n"
 	"# Default: 6 (cyan)\n"
 msgstr	"# Artikli teema värv\n"
+	"# Vaikimisi: 6 (lilla)\n"
 
-#: src/lang.c:1950
+#: src/lang.c:1962
 msgid	"Color of response counter"
 msgstr	"Vastuste arvu loenduri värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1951
-#, fuzzy
+#: src/lang.c:1963
 msgid	"# Color of response counter\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Vastuste arvu loenduri värv\n"
+	"# Vaikimisi: 2 (roheline)\n"
 
-#: src/lang.c:1957
+#: src/lang.c:1969
 msgid	"Color of sender (From:)"
 msgstr	"Saatja värv (From:)"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1958
-#, fuzzy
+#: src/lang.c:1970
 msgid	"# Color of sender (From:)\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Saatja värv (From:)\n"
+	"# Vaikimisi: 2 (roheline)\n"
 
-#: src/lang.c:1964
+#: src/lang.c:1976
 msgid	"Color of help/mail sign"
 msgstr	"Abiinfo/kirja teate värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1965
-#, fuzzy
+#: src/lang.c:1977
 msgid	"# Color of Help/Mail-Sign\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Abiinfo/kirja teate värv\n"
+	"# Vaikimisi: 4 (sinine)\n"
 
-#: src/lang.c:1971
+#: src/lang.c:1983
 msgid	"Color of signatures"
 msgstr	"Signatuuri värv"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:1972
-#, fuzzy
+#: src/lang.c:1984
 msgid	"# Color of signature\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Signatuuri värv\n"
+	"# Vaikimisi: 4 (sinine)\n"
 
-# TRANSLATION MISSING
-#: src/lang.c:1978
+#: src/lang.c:1990
 msgid	"Color of highlighted URLs"
-msgstr	""
+msgstr	"Esiletõstetud URLide värv"
 
-# TRANSLATION MISSING
-#: src/lang.c:1979
+#: src/lang.c:1991
 msgid	"# Color of highlighted URLs\n"
 	"# Default: -1 (default color)\n"
-msgstr	""
+msgstr	"# Esiletõstetud URLide värv\n"
+	"# Vaikimisi: -1 (vaikimisi värv)\n"
 
-#: src/lang.c:1985
+#: src/lang.c:1997
 msgid	"Color of highlighting with *stars*"
 msgstr	"*tärnidega* esiletõstmise värv"
 
-# TRANSLATION MISSING
-#: src/lang.c:1986
+#: src/lang.c:1998
 msgid	"# Color of word highlighting with *stars*\n"
 	"# Default: 11 (yellow)\n"
-msgstr	""
+msgstr	"# *tärnidega* esiletõstmise värv\n"
+	"# Vaikimisi: 11 (kollane)\n"
 
-#: src/lang.c:1992
+#: src/lang.c:2004
 msgid	"Color of highlighting with _dash_"
 msgstr	"_alakriipsudega_ esiletõstmise värv"
 
-# TRANSLATION MISSING
-#: src/lang.c:1993
+#: src/lang.c:2005
 msgid	"# Color of word highlighting with _dash_\n"
 	"# Default: 13 (light pink)\n"
-msgstr	""
+msgstr	"# _alakriipsudega_ esiletõstmise värv\n"
+	"# Vaikimisi: 13 (heleroosa)\n"
 
-#: src/lang.c:1999
+#: src/lang.c:2011
 msgid	"Color of highlighting with /slash/"
 msgstr	"/Kaldkriipsude/ esiletõstmise värv"
 
-# TRANSLATION MISSING
-#: src/lang.c:2000
+#: src/lang.c:2012
 msgid	"# Color of word highlighting with /slash/\n"
 	"# Default: 14 (light cyan)\n"
-msgstr	""
+msgstr	"# /Kaldkriipsude/ esiletõstmise värv\n"
+	"# Vaikimisi: 14 (helelilla)\n"
 
-#: src/lang.c:2006
+#: src/lang.c:2018
 msgid	"Color of highlighting with -stroke-"
 msgstr	"-Kriipsudega- esiletõstmise värv"
 
-# TRANSLATION MISSING
-#: src/lang.c:2007
+#: src/lang.c:2019
 msgid	"# Color of word highlighting with -stroke-\n"
 	"# Default: 12 (light blue)\n"
-msgstr	""
+msgstr	"# -Kriipsudega- esiletõstmise värv\n"
+	"# Vaikimisi: 12 (helesinine)\n"
 
-#: src/lang.c:2014
+#: src/lang.c:2026
 msgid	"Attr. of highlighting with *stars*"
 msgstr	"*tärnidega* esiletõstmise atribuut"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:2015
-#, fuzzy
+#: src/lang.c:2027
 msgid	"# Attributes of word highlighting on mono terminals\n"
 	"# Possible values are:\n"
 	"#   0 = Normal\n"
@@ -5458,65 +5487,68 @@ msgid	"# Attributes of word highlighting
 	"# Attribute of word highlighting with *stars*\n"
 	"# Default: 6 (bold)\n"
 msgstr	"# Sõnade esiletõstmise atribuut mono terminalidel.\n"
-	"# Artiklites on neli võimalust:\n"
-	"# *tärnid*, /kaldkriipsud/, _alakriipsud_ ja -kriipsud-.\n"
 	"# Võimalikud väärtused on:\n"
-	"# 0 - Tavaline, 1 - Allajoonitud, 2 - Parim esiletõstmine,\n"
-	"# 3 - Pööratud video, 4 - Plinkiv, 5 - Poolhele, 6 - Paks\n"
+	"#   0 - Tavaline\n"
+	"#   1 - Allajoonitud\n"
+	"#   2 - Parim esiletõstmine\n"
+	"#   3 - Pööratud video\n"
+	"#   4 - Plinkiv\n"
+	"#   5 - Poolhele\n"
+	"#   6 - Paks\n"
+	"\n"
+	"# *tärnidega* esiletõstmise atribuut\n"
+	"# Vaikimisi: 6 (paks)\n"
 
-#: src/lang.c:2030
+#: src/lang.c:2042
 msgid	"Attr. of highlighting with _dash_"
 msgstr	"_alakriipsudega_ esiletõstmise atr."
 
-# TRANSLATION MISSING
-#: src/lang.c:2031
+#: src/lang.c:2043
 msgid	"# Attribute of word highlighting with _dash_\n"
 	"# Default: 2 (best highlighting)\n"
-msgstr	""
+msgstr	"# _alakriipsudega_ esiletõstmise atribuut\n"
+	"# Vaikimisi: 2 (parim esiletõstmine)\n"
 
-#: src/lang.c:2037
+#: src/lang.c:2049
 msgid	"Attr. of highlighting with /slash/"
 msgstr	"/Kaldkriipsude/ esiletõstmise atr."
 
-# TRANSLATION MISSING
-#: src/lang.c:2038
+#: src/lang.c:2050
 msgid	"# Attribute of word highlighting with /slash/\n"
 	"# Default: 5 (half bright)\n"
-msgstr	""
+msgstr	"# /Kaldkriipsude/ esiletõstmise atribuut\n"
+	"# Vaikimisi: 5 (poolhele)\n"
 
-#: src/lang.c:2044
+#: src/lang.c:2056
 msgid	"Attr. of highlighting with -stroke-"
 msgstr	"-Kriipsudega- esiletõstmise atr."
 
-# TRANSLATION MISSING
-#: src/lang.c:2045
+#: src/lang.c:2057
 msgid	"# Attribute of word highlighting with -stroke-\n"
 	"# Default: 3 (reverse video)\n"
-msgstr	""
+msgstr	"# Vaikimisi: 3 (pööratud video)\n"
 
-#: src/lang.c:2051
+#: src/lang.c:2063
 msgid	"URL highlighting in message body"
 msgstr	"Teate kehas URL esiletõstmine"
 
-#: src/lang.c:2052
+#: src/lang.c:2064
 msgid	"# Enable URL highlighting?\n"
 msgstr	"# Luba URLide esiletõstmine?\n"
 
-#: src/lang.c:2057
+#: src/lang.c:2069
 msgid	"Word highlighting in message body"
 msgstr	"Sõnade esiletõstmine teate kehas"
 
-#: src/lang.c:2058
+#: src/lang.c:2070
 msgid	"# Enable word highlighting?\n"
 msgstr	"# Lubada sõnade esiletõstmine?\n"
 
-#: src/lang.c:2063
+#: src/lang.c:2075
 msgid	"What to display instead of mark"
 msgstr	"Mida näidata märgi asemel"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:2064
-#, fuzzy
+#: src/lang.c:2076
 msgid	"# Should the leading and ending stars and dashes also be displayed,\n"
 	"# even when they are highlighting marks?\n"
 	"# Possible values are (the default is marked with *):\n"
@@ -5525,57 +5557,60 @@ msgid	"# Should the leading and ending s
 	"# * 2 = print a space instead\n"
 msgstr	"# Kas näidata algavaid ja lõppevaid tärne ja kriipse,\n"
 	"# isegi, kui need on ka esiletõstmise märgid?\n"
-	"# 0 - ei    1 - jah, näita märki    2 - trüki hoopis tühik\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#   0 - ei\n"
+	"#   1 - jah, näita märki\n"
+	"# * 2 - trüki hoopis tühik\n"
 
-#: src/lang.c:2073
+#: src/lang.c:2085
 msgid	"Enter column number to wrap article lines to in the pager. <CR> sets."
 msgstr	"Sisestage veerg, millelt lehitseja hakkab ridu murdma. <CR> seab."
 
-#: src/lang.c:2074
+#: src/lang.c:2086
 msgid	"Page line wrap column"
 msgstr	"Rea murdmise veerg lehitsejas"
 
-#: src/lang.c:2075
+#: src/lang.c:2087
 msgid	"# Wrap article lines at column\n"
 msgstr	"# Murra artikli read antud veerus\n"
 
-#: src/lang.c:2080
+#: src/lang.c:2092
 msgid	"Wrap around threads on next unread"
 msgstr	"Liigu lugemata art-le ümber teemade"
 
-#: src/lang.c:2081
+#: src/lang.c:2093
 msgid	"# If ON wrap around threads on searching next unread article\n"
 msgstr	"# Kui väärtus on ON, liigu lugemata artiklite otsingul ümber teemade\n"
 
-#: src/lang.c:2085
+#: src/lang.c:2097
 msgid	"Enter default mail address (and fullname). <CR> sets."
 msgstr	"Sisestage oma e-posti aadress (ja oma nimi). <CR> seab."
 
-#: src/lang.c:2086
+#: src/lang.c:2098
 msgid	"Mail address (and fullname)"
 msgstr	"E-posti aadress (ja teie nimi)"
 
-#: src/lang.c:2087
+#: src/lang.c:2099
 msgid	"# User's mail address (and fullname), if not username@host (fullname)\n"
 msgstr	"# Kasutaja e-posti aadress (ja nimi), kui ei ole kasutaja@host (nimi)\n"
 
-#: src/lang.c:2092
+#: src/lang.c:2104
 msgid	"Show empty Followup-To in editor"
 msgstr	"Näita toimetis tühja Followup-To"
 
-#: src/lang.c:2093
+#: src/lang.c:2105
 msgid	"# If ON show empty Followup-To header when editing an article\n"
 msgstr	"# Kui väärtus on ON, näita artikli toimetamisel tühja Followup-To rida\n"
 
-#: src/lang.c:2097
+#: src/lang.c:2109
 msgid	"Enter path/! command/--none to create your default signature. <CR> sets."
 msgstr	"Sisestage tee/! käsk/--none, et luua oma vaikimisi signatuur. <CR> seab."
 
-#: src/lang.c:2098
+#: src/lang.c:2110
 msgid	"Create signature from path/command"
 msgstr	"Signatuuri loomiseks tee/käsk"
 
-#: src/lang.c:2099
+#: src/lang.c:2111
 msgid	"# Signature path (random sigs)/file to be used when posting/replying\n"
 	"# default_sigfile=file       appends file as signature\n"
 	"# default_sigfile=!command   executes external command to generate a "
@@ -5586,51 +5621,49 @@ msgstr	"# Postitamisel/vastamisel kasuta
 	"# default_sigfile=!käsk      käivitab käsu, mis genereerib signatuuri\n"
 	"# default_sigfile=--none     ära lisa signatuuri\n"
 
-#: src/lang.c:2106
+#: src/lang.c:2118
 msgid	"Prepend signature with \"-- \" on own line. <SPACE> toggles & <CR> sets."
 msgstr	"Signatuurile eelnevale reale \"-- \". <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2107
+#: src/lang.c:2119
 msgid	"Prepend signature with \"-- \""
 msgstr	"Lisa signatuuri ette \"-- \""
 
-#: src/lang.c:2108
+#: src/lang.c:2120
 msgid	"# If ON prepend the signature with dashes '\\n-- \\n'\n"
 msgstr	"# Kui väärtus on ON, lisa signatuuri ette '\\n-- \\n'\n"
 
-#: src/lang.c:2112
+#: src/lang.c:2124
 msgid	"Add signature when reposting articles. <SPACE> toggles & <CR> sets."
 msgstr	"Lisa artikli uuestipostitamisel signatuur. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2113
+#: src/lang.c:2125
 msgid	"Add signature when reposting"
 msgstr	"Lisa uuestipostitusel signatuur"
 
-#: src/lang.c:2114
+#: src/lang.c:2126
 msgid	"# If ON add signature to reposted articles\n"
 msgstr	"# Kui väärtus on ON, lisa uuestipostitatud artiklile signatuur\n"
 
-#: src/lang.c:2118
+#: src/lang.c:2130
 msgid	"Enter quotation marks, %s or %S for author's initials."
 msgstr	"Sisestage tsitaadimärgid, %s või %S annab autori initsiaalid."
 
-#: src/lang.c:2119
+#: src/lang.c:2131
 msgid	"Characters used as quote-marks"
 msgstr	"Tsiteerimise märgid"
 
-#: src/lang.c:2120
+#: src/lang.c:2132
 msgid	"# Characters used in quoting to followups and replies.\n"
 	"# '_' is replaced by ' ', %%s, %%S are replaced by author's initials.\n"
 msgstr	"# Sümbolid, mida kasutada tsiteerimisel vastustes.\n"
 	"# '_' asendatakse tühikuga ' ', %%s, %%S asendatakse autori initsiaalidega.\n"
 
-#: src/lang.c:2126
+#: src/lang.c:2138
 msgid	"Quoting behavior"
 msgstr	"Käitumine tsiteerimisel"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:2127
-#, fuzzy
+#: src/lang.c:2139
 msgid	"# How quoting should be handled when following up or replying.\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = Nothing special\n"
@@ -5642,24 +5675,25 @@ msgid	"# How quoting should be handled w
 	"#   6 = Quote signatures, quote empty lines\n"
 	"#   7 = Compress quotes, quote signatures, quote empty lines\n"
 msgstr	"# Kuidas käsitleda vastamisel tsitaate.\n"
-	"# 0 = Ei tee midagi erilist\n"
-	"# 1 = Tihenda tsitaadid\n"
-	"# 2 = Tsiteeri allkirju\n"
-	"# 3 = Tihenda tsitaadid, tsiteeri allkirju\n"
-	"# 4 = Tsiteeri tühje ridu\n"
-	"# 5 = Tihenda tsitaadid, tsiteeri tühje ridu\n"
-	"# 6 = Tsiteeri allkirju, tsiteeri tühje ridu\n"
-	"# 7 = Tihenda tsitaadid, tsiteeri allkirju, tsiteeri tühje ridu\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#   0 = Ei tee midagi erilist\n"
+	"#   1 = Tihenda tsitaadid\n"
+	"#   2 = Tsiteeri allkirju\n"
+	"#   3 = Tihenda tsitaadid, tsiteeri allkirju\n"
+	"#   4 = Tsiteeri tühje ridu\n"
+	"# * 5 = Tihenda tsitaadid, tsiteeri tühje ridu\n"
+	"#   6 = Tsiteeri allkirju, tsiteeri tühje ridu\n"
+	"#   7 = Tihenda tsitaadid, tsiteeri allkirju, tsiteeri tühje ridu\n"
 
-#: src/lang.c:2140 src/lang.c:2148 src/lang.c:2154
+#: src/lang.c:2152 src/lang.c:2160 src/lang.c:2166
 msgid	"%A Addr %D Date %F Addr+Name %G Groupname %M Message-ID %N Name %C First Name"
 msgstr	"%A Aadr. %D Kuup. %F Aadr.+Nimi %G Grupp %M Message-ID %N Nimi %C Eesnimi"
 
-#: src/lang.c:2141
+#: src/lang.c:2153
 msgid	"Quote line when following up"
 msgstr	"Tsiteerimise rida vastamisel"
 
-#: src/lang.c:2142
+#: src/lang.c:2154
 msgid	"# Format of quote line when mailing/posting/following-up an article\n"
 	"# %%A Address    %%D Date   %%F Addr+Name   %%G Groupname   %%M Message-ID\n"
 	"# %%N Full Name  %%C First Name   %%I Initials\n"
@@ -5667,35 +5701,35 @@ msgstr	"# Tsiteeriva rea vorming artikli
 	"# %%A Aadress    %%D Kuup   %%F Aadr+Nimi   %%G Grupp   %%M Message-ID\n"
 	"# %%N Täielik nimi  %%C Eesnimi   %%I Initsiaalid\n"
 
-#: src/lang.c:2149
+#: src/lang.c:2161
 msgid	"Quote line when cross-posting"
 msgstr	"Tsiteerimise rida ristpostitusel"
 
-#: src/lang.c:2155
+#: src/lang.c:2167
 msgid	"Quote line when mailing"
 msgstr	"Tsiteerimise rida kirjutamisel"
 
-#: src/lang.c:2160
+#: src/lang.c:2172
 msgid	"If ON, include User-Agent: header. <SPACE> toggles & <CR> sets."
 msgstr	"Kasuta User-Agent: päiserida. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2161
+#: src/lang.c:2173
 msgid	"Insert 'User-Agent:'-header"
 msgstr	"Sisestage 'User-Agent:'-päis"
 
-#: src/lang.c:2162
+#: src/lang.c:2174
 msgid	"# If ON include advertising User-Agent: header\n"
 msgstr	"# Kui väärtus on ON, lisa artikli päisesse User-Agent: rida\n"
 
-#: src/lang.c:2167
+#: src/lang.c:2179
 msgid	"Enter charset name for MIME (e.g. US-ASCII, ISO-8859-1, EUC-KR), <CR> to set."
 msgstr	"Sisestage MIME kooditabeli nimi (n. US-ASCII, ISO-8859-15, EUC-KR), <CR> seab."
 
-#: src/lang.c:2168
+#: src/lang.c:2180
 msgid	"MM_CHARSET"
 msgstr	"MM_CHARSET"
 
-#: src/lang.c:2169
+#: src/lang.c:2181
 msgid	"# Charset supported locally which is also used for MIME header and\n"
 	"# Content-Type header.\n"
 	"# If not set, the value of the environment variable MM_CHARSET is used.\n"
@@ -5711,27 +5745,27 @@ msgstr	"# Lokaalselt toetatud kooditabel
 	"# loetakse mm_charset väärtusest erinev kooditabel mitte-näidatavaks\n"
 	"# ja näitamisel kasutatakse '?'.\n"
 
-#: src/lang.c:2179
+#: src/lang.c:2191
 msgid	"MM_NETWORK_CHARSET"
 msgstr	"MM_NETWORK_CHARSET"
 
-#: src/lang.c:2180
+#: src/lang.c:2192
 msgid	"# Charset used for MIME (Content-Type) header in postings.\n"
 msgstr	"# Postituste MIME (Content-Type) päises kasutatav kooditabel.\n"
 
-#: src/lang.c:2186
+#: src/lang.c:2198
 msgid	"Mailbox format"
 msgstr	"Kirjade kataloog"
 
-#: src/lang.c:2187
+#: src/lang.c:2199
 msgid	"# Format of the mailbox.\n"
 msgstr	"# Kirjade kataloog.\n"
 
-#: src/lang.c:2192
+#: src/lang.c:2204
 msgid	"MIME encoding in news messages"
 msgstr	"Kasuta artiklites MIME kodeerimist"
 
-#: src/lang.c:2193
+#: src/lang.c:2205
 msgid	"# MIME encoding (8bit, base64, quoted-printable, 7bit) of the body\n"
 	"# for mails and posts, if necessary. QP is efficient for most European\n"
 	"# character sets (ISO-8859-X) with small fraction of non-US-ASCII chars,\n"
@@ -5743,15 +5777,15 @@ msgstr	"# Vajadusel kirjade ja artiklite
 	"# Base64 on kasulik enamuse 8 bitistele ida-aasia, kreeka ja vene\n"
 	"# kooditabelitele, kus kasutatakse palju 8 bitiseid sümboleid.\n"
 
-#: src/lang.c:2201 src/lang.c:2222
+#: src/lang.c:2213 src/lang.c:2234
 msgid	"Don't change unless you know what you are doing. <ESC> cancels."
 msgstr	"Ärge muutke, kui te ei tea, mida teete. <ESC> katkestab."
 
-#: src/lang.c:2202
+#: src/lang.c:2214
 msgid	"Use 8bit characters in news headers"
 msgstr	"Kasuta artikli päises 8bit tähti"
 
-#: src/lang.c:2203
+#: src/lang.c:2215
 msgid	"# If ON, 8bit characters in news headers are NOT encoded.\n"
 	"# default is OFF. Thus 8bit characters are encoded by default.\n"
 	"# 8bit chars in header are encoded regardless of the value of this\n"
@@ -5761,28 +5795,28 @@ msgstr	"# Kui väärtus on ON, 8bit sümbol
 	"# 8bit sümbolid päistes kodeeritakse sõltumata selle parameetri väärtusest,\n"
 	"# v.a. juhul, kui post_mime_encoding väärtus on samuti 8bit.\n"
 
-#: src/lang.c:2210
+#: src/lang.c:2222
 msgid	"Auto-view post-processed files <SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	"Vaata töödeldud faile automaatselt <TÜHIK> lülitab, <CR> seab, <ESC> "
 	"katkestab."
 
-#: src/lang.c:2211
+#: src/lang.c:2223
 msgid	"View post-processed files"
 msgstr	"Vaata töödeldud faile"
 
-#: src/lang.c:2212
+#: src/lang.c:2224
 msgid	"# If set, post processed files will be opened in a viewer\n"
 msgstr	"# Kui on seatud, avatakse töödeldud fail vaatamiseks\n"
 
-#: src/lang.c:2217
+#: src/lang.c:2229
 msgid	"MIME encoding in mail messages"
 msgstr	"Kasuta kirjades MIME kodeerimist"
 
-#: src/lang.c:2223
+#: src/lang.c:2235
 msgid	"Use 8bit characters in mail headers"
 msgstr	"Kasuta kirja päises 8bit tähti"
 
-#: src/lang.c:2224
+#: src/lang.c:2236
 msgid	"# If ON, 8bit characters in mail headers are NOT encoded.\n"
 	"# default is OFF. Thus 8bit characters are encoded by default.\n"
 	"# 8bit chars in headers are encoded regardless of the value of this "
@@ -5797,25 +5831,25 @@ msgstr	"# Kui väärtus on ON, 8bit sümbol
 	"# et RFC 2822 keelab 8bit sümbolid kirjade päistes, seega selle\n"
 	"# parameetri väärtus ON ei ole soovitatav kasutada.\n"
 
-#: src/lang.c:2234
+#: src/lang.c:2246
 msgid	"Strip blanks from ends of lines"
 msgstr	"Eemalda tühikud realõppudest"
 
-#: src/lang.c:2235
+#: src/lang.c:2247
 msgid	"# If ON strip blanks from ends of lines for faster display on slow "
 	"terminals.\n"
 msgstr	"# Kui väärtus on ON, eemalda aeglaste terminalise töö kiirendamiseks\n"
 	"# realõppudest tühikud.\n"
 
-#: src/lang.c:2240
+#: src/lang.c:2252
 msgid	"If ON, use transliteration. <SPACE> toggles & <CR> sets."
 msgstr	"Kui väärtus on ON, kasuta transliteratsiooni. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2241
+#: src/lang.c:2253
 msgid	"Transliteration"
 msgstr	"Transliteratsioon"
 
-#: src/lang.c:2242
+#: src/lang.c:2254
 msgid	"# If ON, use //TRANSLIT extension. This means that when a character cannot\n"
 	"# be represented in the in the target character set, it can be approximated\n"
 	"# through one or several similarly looking characters.\n"
@@ -5824,250 +5858,251 @@ msgstr	"# Kui väärtus on ON, kasuta //TR
 	"kasutades\n"
 	"# üht või enamat sarnast sümbolit.\n"
 
-#: src/lang.c:2249
+#: src/lang.c:2261
 msgid	"Send you a carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr	"Saada kasutajale automaatselt koopia. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2250
+#: src/lang.c:2262
 msgid	"Send you a cc automatically"
 msgstr	"Saada automaatselt koopia"
 
-#: src/lang.c:2251
+#: src/lang.c:2263
 msgid	"# If ON automatically put your name in the Cc: field when mailing an article\n"
 msgstr	"# Kui väärtus on ON, pane kasutaja nimi artikli saatmisel automaatselt\n"
 	"# Cc: reale\n"
 
-#: src/lang.c:2255
+#: src/lang.c:2267
 msgid	"Send you a blind carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr	"Saada automaatselt pimekoopia. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2256
+#: src/lang.c:2268
 msgid	"Send you a blind cc automatically"
 msgstr	"Saada automaatselt pimekoopia"
 
-#: src/lang.c:2257
+#: src/lang.c:2269
 msgid	"# If ON automatically put your name in the Bcc: field when mailing an "
 	"article\n"
 msgstr	"# Kui väärtus on ON, pane kasutaja nimi artikli saatmisel automaatselt\n"
 	"# Bcc: väljale\n"
 
-#: src/lang.c:2261
+#: src/lang.c:2273
 msgid	"Enter address elements about which you want to be warned. <CR> sets."
 msgstr	"Sisestage aadressi komponendid, mille eest peaks hoiatama. <CR> seab."
 
-#: src/lang.c:2262
+#: src/lang.c:2274
 msgid	"Spamtrap warning address parts"
 msgstr	"Rämpsposti hoiatus aadressi osadele"
 
-#: src/lang.c:2263
+#: src/lang.c:2275
 msgid	"# A comma-delimited list of address-parts you want to be warned\n"
 	"# about when trying to reply by email.\n"
 msgstr	"# Komaga eraldatud aadresside komponentide loend, mille kasutamisel\n"
 	"# tuleks kasutajat hoiatada.\n"
 
-#: src/lang.c:2268
+#: src/lang.c:2280
 msgid	"Enter default number of days a filter entry will be valid. <CR> sets."
 msgstr	"Sisestage kirje kehtivuse aeg päevades. <CR> seab."
 
-#: src/lang.c:2269
+#: src/lang.c:2281
 msgid	"No. of days a filter entry is valid"
 msgstr	"Filtri kehtivus päevades"
 
-#: src/lang.c:2270
+#: src/lang.c:2282
 msgid	"# Number of days a short term filter will be active\n"
 msgstr	"# lühiajalise filtri kehtivus päevades\n"
 
-#: src/lang.c:2274
+#: src/lang.c:2286
 msgid	"Add posted articles to filter. <SPACE> toggles & <CR> sets."
 msgstr	"Lisage postitatud artikkel filtrisse. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2275
+#: src/lang.c:2287
 msgid	"Add posted articles to filter"
 msgstr	"Lisage postitatud artikkel filtrile"
 
-#: src/lang.c:2276
+#: src/lang.c:2288
 msgid	"# If ON add posted articles which start a new thread to filter for\n"
 	"# highlighting follow-ups\n"
 msgstr	"# Kui väärtus on ON, lisa postitatud artiklid, mis alustavad uut teemat,\n"
 	"# filtrile, mis märgistab vastuseid\n"
 
-#: src/lang.c:2280
+#: src/lang.c:2292
 msgid	"The directory where articles/threads are to be saved in mailbox format."
 msgstr	"Kataloog, kuhu artikleid/teemasid salvestatakse kirjaformaadis."
 
-#: src/lang.c:2281
+#: src/lang.c:2293
 msgid	"Mail directory"
 msgstr	"Kirjade kataloog"
 
-#: src/lang.c:2282
+#: src/lang.c:2294
 msgid	"# (-m) directory where articles/threads are saved in mailbox format\n"
 msgstr	"# (-m) kataloog, kuhu artikleid/teemasid salvestatakse kirjaformaadis\n"
 
-#: src/lang.c:2287
+#: src/lang.c:2299
 msgid	"Save articles in batch mode (-S)"
 msgstr	"Salvesta artiklid pakettmoodis (-S)"
 
-#: src/lang.c:2288
+#: src/lang.c:2300
 msgid	"# If ON articles/threads will be saved in batch mode when save -S\n"
 	"# or mail (-M/-N) is specified on the command line\n"
 msgstr	"# Kui väärtus on ON, artiklid salvestatakse pakettmoodis, kui käsureal\n"
 	"# on kasutatud võtmeid salvestamiseks -S või saatmiseks -M, -N\n"
 
-#: src/lang.c:2293
+#: src/lang.c:2305
 msgid	"The directory where you want articles/threads saved."
 msgstr	"Kataloog, kuhu te soovite artikleid salvestada."
 
-#: src/lang.c:2294
+#: src/lang.c:2306
 msgid	"Directory to save arts/threads in"
 msgstr	"Kataloog artiklite salvestamiseks"
 
-#: src/lang.c:2295
+#: src/lang.c:2307
 msgid	"# Directory where articles/threads are saved\n"
 msgstr	"# Kataloog, kuhu salvestatakse artiklid/teemad\n"
 
-#: src/lang.c:2299
+#: src/lang.c:2311
 msgid	"Auto save article/thread by Archive-name: header. <SPACE> toggles & <CR> sets."
 msgstr	"Salvesta artiklid Archive-name: päiserea järgi. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2300
+#: src/lang.c:2312
 msgid	"Use Archive-name: header for save"
 msgstr	"Kasuta salvestamisel Archive-name:"
 
-#: src/lang.c:2301
+#: src/lang.c:2313
 msgid	"# If ON articles/threads with Archive-name: in mail header will\n"
 	"# be automatically saved with the Archive-name & part/patch no.\n"
 msgstr	"# Kui väärtus on ON, salvestatakse artiklid/teemad, mis omavad päiserida\n"
 	"# Archive-name:, automaatselt selle reaga määratud nime ja osa numbriga.\n"
 
-#: src/lang.c:2306
+#: src/lang.c:2318
 msgid	"Mark saved articles/threads as read. <SPACE> toggles, <CR> sets, <ESC> "
 	"cancels."
 msgstr	"Märgi salvestatud artiklid loetuks. <TÜHIK> lülitab, <CR> seab, <ESC> "
 	"katkestab."
 
-#: src/lang.c:2307
+#: src/lang.c:2319
 msgid	"Mark saved articles/threads as read"
 msgstr	"Märgi salvestatud artiklid loetuks"
 
-#: src/lang.c:2308
+#: src/lang.c:2320
 msgid	"# If ON mark articles that are saved as read\n"
 msgstr	"# Kui väärtus on ON, märgi salvestatud artiklid loetuks\n"
 
-#: src/lang.c:2312
+#: src/lang.c:2324
 msgid	"Do post processing (eg. extract attachments) for saved articles."
 msgstr	"Teosta salvestatud artiklitel järeltöötlemist (nt. lisade eraldamist)."
 
-#: src/lang.c:2313
+#: src/lang.c:2325
 msgid	"Post process saved articles"
 msgstr	"Salvestatud artikl. järeltöötlemine"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:2314
-#, fuzzy
+#: src/lang.c:2326
 msgid	"# Perform post processing (saving binary attachments) from saved articles.\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no\n"
 	"#   1 = extract shell archives (shar) only\n"
 	"#   2 = yes\n"
 msgstr	"# Teosta salvestatud artiklite järeltöötlemist (lisade eraldamine).\n"
-	"# 0=(ei) 1=(jah) 2=(eralda ainult shelli arhiivid (shar))\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"# * 0 = ei\n"
+	"#   1 = jah\n"
+	"#   2 = eralda ainult shelli arhiivid (shar)\n"
 
-#: src/lang.c:2323
+#: src/lang.c:2335
 msgid	"Process only unread articles"
 msgstr	"Töötle ainult lugemata artikleid"
 
-#: src/lang.c:2324
+#: src/lang.c:2336
 msgid	"# If ON only save/print/pipe/mail unread articles (tagged articles excepted)\n"
 msgstr	"# Kui väärtus on ON, salvesta/trüki/torusse/saada lugemata artikleid\n"
 	"# (eeldatakse märgitud artikleid).\n"
 
-#: src/lang.c:2329
+#: src/lang.c:2341
 msgid	"Print all or just part of header. <SPACE> toggles & <CR> sets."
 msgstr	"Trüki kõik või ainult osa päisest. <TÜHIK> lülitab, <CR> seab."
 
-#: src/lang.c:2330
+#: src/lang.c:2342
 msgid	"Print all headers when printing"
 msgstr	"Trükkimisel trüki kõik päised"
 
-#: src/lang.c:2331
+#: src/lang.c:2343
 msgid	"# If ON print all of article header otherwise just the important lines\n"
 msgstr	"# Kui väärtus on ON, trüki kogu artikli päis, muidu ainult tähtsamad read\n"
 
-#: src/lang.c:2335
+#: src/lang.c:2347
 msgid	"The printer program with options that is to be used to print articles/threads."
 msgstr	"Programm koos argumentidega, mida kasutatakse artiklite/teemade trükkimiseks."
 
-#: src/lang.c:2336
+#: src/lang.c:2348
 msgid	"Printer program with options"
 msgstr	"Trükikäsk koos võtmetega"
 
-#: src/lang.c:2337
+#: src/lang.c:2349
 msgid	"# Print program with parameters used to print articles/threads\n"
 msgstr	"# Programm koos argumentidega, mida kasutatakse artiklite/teemade "
 	"trükkimiseks\n"
 
-#: src/lang.c:2343
+#: src/lang.c:2355
 msgid	"Force redraw after certain commands"
 msgstr	"Värskenda ekraani peale käske"
 
-#: src/lang.c:2344
+#: src/lang.c:2356
 msgid	"# If ON a screen redraw will always be done after certain external commands\n"
 msgstr	"# Kui väärtus on ON, värskendatakse alati peale teatud väliseid käske "
 	"ekraani\n"
 
-#: src/lang.c:2348
+#: src/lang.c:2360
 msgid	"Start editor with line offset. <SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	"Käivita tekstitoimeti etteantud real. <TÜHIK> lülitab, <CR> seab, <ESC> "
 	"katkestab."
 
-#: src/lang.c:2349
+#: src/lang.c:2361
 msgid	"Start editor with line offset"
 msgstr	"Käivita tekstitoimeti reanumbril"
 
-#: src/lang.c:2350
+#: src/lang.c:2362
 msgid	"# If ON editor will be started with cursor offset into the file\n"
 	"# otherwise the cursor will be positioned at the first line\n"
 msgstr	"# Kui väärtus on ON, käivitatakse tekstitoimeti kursori paigutamisega\n"
 	"# vastavale reale. Vastasel korral positsioneeritakse kursor esimesele reale\n"
 
-#: src/lang.c:2355
+#: src/lang.c:2367
 msgid	"Enter %E for editor, %F for filename, %N for line-number, <CR> to set."
 msgstr	"Kasutage %E toimeti kohal, %F failinime kohal, %N reanumbrina, <CR> seab."
 
-#: src/lang.c:2356
+#: src/lang.c:2368
 msgid	"Invocation of your editor"
 msgstr	"Teie tekstitoimeti"
 
-#: src/lang.c:2357
+#: src/lang.c:2369
 msgid	"# Format of editor line including parameters\n"
 	"# %%E Editor  %%F Filename  %%N Linenumber\n"
 msgstr	"# Tekstitoimeti rea formaat koos parameetritega\n"
 	"# %%E Toimeti  %%F Failinimi  %%N Reanumber\n"
 
-#: src/lang.c:2362
+#: src/lang.c:2374
 msgid	"Enter name and options for external-inews, --internal for internal inews"
 msgstr	"Sisestage välise inews käsu nimi ja võtmed, sisemise valib --internal"
 
-#: src/lang.c:2363
+#: src/lang.c:2375
 msgid	"External inews"
 msgstr	"Väline inews"
 
-#: src/lang.c:2364
+#: src/lang.c:2376
 msgid	"# If --internal use the built in mini inews for posting via NNTP\n"
 	"# otherwise use an external inews program\n"
 msgstr	"# Kui on --internal, kasuta NNTP postitustel sisseehitatud inews käsku\n"
 	"# muidu kasuta välist inews programmi\n"
 
-#: src/lang.c:2368
+#: src/lang.c:2380
 msgid	"Enter %M for mailer, %S for subject, %T for to, %F for filename, <CR> to set."
 msgstr	"Kasutage %M programmi kohal, %S teema kohal, %T saaja kohal, %F failinime "
 	"kohal, <CR> seab."
 
-#: src/lang.c:2369
+#: src/lang.c:2381
 msgid	"Invocation of your mail command"
 msgstr	"Teie e-posti käsk"
 
-#: src/lang.c:2370
+#: src/lang.c:2382
 msgid	"# Format of mailer line including parameters\n"
 	"# %%M Mailer  %%S Subject  %%T To  %%F Filename\n"
 	"# ie. to use elm as your mailer:    elm -s \"%%S\" \"%%T\" < %%F\n"
@@ -6077,137 +6112,135 @@ msgstr	"# e-posti saatja käsurea formaat
 	"# näiteks. kasutada saatjana elm programmi:    elm -s \"%%S\" \"%%T\" < %%F\n"
 	"# näiteks. elm interaktiivses moodis      :    elm -i %%F -s \"%%S\" \"%%T\"\n"
 
-#: src/lang.c:2378
+#: src/lang.c:2390
 msgid	"Use interactive mail reader"
 msgstr	"Kasuta interaktiivset e-posti"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:2379
-#, fuzzy
+#: src/lang.c:2391
 msgid	"# Interactive mailreader\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no interactive mailreader\n"
 	"#   1 = use interactive mailreader with headers in file\n"
 	"#   2 = use interactive mailreader without headers in file\n"
-msgstr	"# Interaktiivne e-posti programm:\n"
-	"# 0 = interaktiivset e-posti programmi pole\n"
-	"# 1 = kasuta interaktiivset e-posti programmi koos päistega failiga\n"
-	"# 2 = kasuta interaktiivset e-posti programmi koos päisteta failiga\n"
+msgstr	"# Interaktiivne e-posti programm\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"# * 0 = interaktiivset e-posti programmi pole\n"
+	"#   1 = kasuta interaktiivset e-posti programmi koos päistega\n"
+	"#   2 = kasuta interaktiivset e-posti programmi päisteta\n"
 
-#: src/lang.c:2388
+#: src/lang.c:2400
 msgid	"Remove ~/.article after posting"
 msgstr	"Eemalda ~/.article peale postitust"
 
-#: src/lang.c:2389
+#: src/lang.c:2401
 msgid	"# If ON remove ~/.article after posting.\n"
 msgstr	"# Kui väärtus on ON, kustuta  ~/.article peale postitust.\n"
 
-#: src/lang.c:2393
+#: src/lang.c:2405
 msgid	"Filename for all posted articles, <CR> sets, no filename=do not save."
 msgstr	"Failinimi postitatud artiklitele. <CR> seab. Nime puudumisel ei salvestata."
 
-#: src/lang.c:2394
+#: src/lang.c:2406
 msgid	"Filename for posted articles"
 msgstr	"Failinimi postitatud artiklitele"
 
-#: src/lang.c:2395
+#: src/lang.c:2407
 msgid	"# Filename where to keep all postings (default posted)\n"
 	"# If no filename is set then postings will not be saved\n"
 msgstr	"# Failinimi, kus hoida kõiki postitusi (vaikimisi posted)\n"
 	"# Kui nime pole, siis postitusi ei salvestata\n"
 
-#: src/lang.c:2400
+#: src/lang.c:2412
 msgid	"Keep all failed articles in ~/dead.articles. <SPACE> toggles & <CR> sets."
 msgstr	"Hoia ebaõnnestunud postitused failis ~/dead.articles. <TÜHIK> lülitab ja <CR> "
 	"seab."
 
-#: src/lang.c:2401
+#: src/lang.c:2413
 msgid	"Keep failed arts in ~/dead.articles"
 msgstr	"Vigased artiklid ~/dead.articles"
 
-#: src/lang.c:2402
+#: src/lang.c:2414
 msgid	"# If ON keep all failed postings in ~/dead.articles\n"
 msgstr	"# Kui väärtus on ON, hoia ebaõnnestunud postitused failis ~/dead.articles\n"
 
-#: src/lang.c:2406
+#: src/lang.c:2418
 msgid	"Do you want to strip unsubscribed groups from .newsrc"
 msgstr	"Kas te soovite eemaldada tellimata grupid .newsrc failist"
 
-#: src/lang.c:2407
+#: src/lang.c:2419
 msgid	"No unsubscribed groups in newsrc"
 msgstr	"newsrcs ainult tellitud grupid"
 
-#: src/lang.c:2408
+#: src/lang.c:2420
 msgid	"# If ON strip unsubscribed groups from newsrc\n"
 msgstr	"# Kui väärtus on ON, eemalda tellimata grupid newsrc failist\n"
 
-#: src/lang.c:2413
+#: src/lang.c:2425
 msgid	"Remove bogus groups from newsrc"
-msgstr	"Eemalda olematud grupid newsrcst"
+msgstr	"Eemalda olematud grupid newsrc failist"
 
-# TRANSLATION OUTDATED
-#: src/lang.c:2414
-#, fuzzy
+#: src/lang.c:2426
 msgid	"# What to do with bogus groups in newsrc file\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = keep\n"
 	"#   1 = remove\n"
 	"#   2 = highlight with D on selection screen\n"
 msgstr	"# Mida teha olematute gruppidega newsrc failis\n"
-	"# 0 =(Hoia alles) 1=(Eemalda) 2=(Märgi valikuekraanil D lipuga).\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"# * 0 = Hoia alles\n"
+	"#   1 = Eemalda\n"
+	"#   2 = Märgi valikuekraanil lipuga D\n"
 
-#: src/lang.c:2422
+#: src/lang.c:2434
 msgid	"Enter number of seconds until active file will be reread. <CR> sets."
 msgstr	"Sisestage aktiivsete faili lugemise intervall sekundites. <CR> seab."
 
-#: src/lang.c:2423
+#: src/lang.c:2435
 msgid	"Interval in secs to reread active"
 msgstr	"Aktiivsete faili lugemise intervall"
 
-#: src/lang.c:2424
+#: src/lang.c:2436
 msgid	"# Time interval in seconds between rereading the active file (0=never)\n"
 msgstr	"# Aktiivsete faili lugemise intervall (0 = ei loe)\n"
 
-#: src/lang.c:2429
+#: src/lang.c:2441
 msgid	"Reconnect to server automatically"
 msgstr	"Taasta automaatselt NNTP ühendus"
 
-#: src/lang.c:2430
+#: src/lang.c:2442
 msgid	"# If ON automatically reconnect to NNTP server if the connection is broken\n"
 msgstr	"# Kui väärtus on ON, ürita NNTP serveriga ühenduse katkemisel ühendust\n"
 	"# automaatselt taastada\n"
 
-#: src/lang.c:2434
+#: src/lang.c:2446
 msgid	"Create local copies of NNTP overview files. <SPACE> toggles & <CR> sets."
 msgstr	"Loo NNTP overview failidest lokaalne koopia. <TÜHIK> lülitab ja <CR> seab."
 
-#: src/lang.c:2435
+#: src/lang.c:2447
 msgid	"Cache NNTP overview files locally"
 msgstr	"Puhverda NNTP overview lokaalselt"
 
-#: src/lang.c:2436
+#: src/lang.c:2448
 msgid	"# If ON, create local copies of NNTP overview files.\n"
 msgstr	"# Kui väärtus on ON, loo NNTP overview failidest lokaalsed koopiad.\n"
 
-#: src/lang.c:2440
+#: src/lang.c:2452
 msgid	"Enter format string. <CR> sets, <ESC> cancels."
 msgstr	"Sisestage vormingusõne. <CR> seab, <ESC> katkestab."
 
-#: src/lang.c:2441
+#: src/lang.c:2453
 msgid	"Format string for display of dates"
 msgstr	"Kuupäevade esitamise vormingusõne"
 
-#: src/lang.c:2442
+#: src/lang.c:2454
 msgid	"# Format string for date representation\n"
 msgstr	"# Vormingusõne kuupäevade esitamiseks\n"
 
-# TRANSLATION MISSING
-#: src/lang.c:2448
+#: src/lang.c:2460
 msgid	"Unicode normalization form"
-msgstr	""
+msgstr	"Unikoodi normaliseerimise kuju"
 
-# TRANSLATION MISSING
-#: src/lang.c:2449
+#: src/lang.c:2461
 msgid	"# Unicode normalization form\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = None\n"
@@ -6215,24 +6248,28 @@ msgid	"# Unicode normalization form\n"
 	"#   2 = NFKD\n"
 	"#   3 = NFC\n"
 	"#   4 = NFD\n"
-msgstr	""
+msgstr	"# Unikoodi normaliseerimine\n"
+	"# Võimalikud väärtused on (vaikeväärtuse tähis on *):\n"
+	"#   0 = Pole\n"
+	"# * 1 = NFKC\n"
+	"#   2 = NFKD\n"
+	"#   3 = NFC\n"
+	"#   4 = NFD\n"
 
-# TRANSLATION MISSING
-#: src/lang.c:2461
+#: src/lang.c:2473
 msgid	"Render BiDi"
-msgstr	""
+msgstr	"Renderda BiDi"
 
-# TRANSLATION MISSING
-#: src/lang.c:2462
+#: src/lang.c:2474
 msgid	"# If ON, bi-directional text is rendered by tin\n"
-msgstr	""
+msgstr	"# Kui väärtus on ON, renderdab tin mitmesuunalist (BiDi) teksti\n"
 
-#: src/misc.c:3713
+#: src/misc.c:3721
 #, c-format
 msgid	"Version: %s %s release %s (\"%s\") %s %s\n"
 msgstr	"Versioon: %s %s väljalase %s (\"%s\") %s %s\n"
 
-#: src/misc.c:3716
+#: src/misc.c:3724
 #, c-format
 msgid	"Version: %s %s release %s (\"%s\")\n"
 msgstr	"Versioon: %s %s väljalase %s (\"%s\")\n"
@@ -6241,23 +6278,23 @@ msgstr	"Versioon: %s %s väljalase %s (\"
 msgid	"Unreachable?\n"
 msgstr	"Kättesaamatu?\n"
 
-#: src/nntplib.c:823
+#: src/nntplib.c:825
 #, c-format
 msgid	"\n"
 	"Server timed out, trying reconnect # %d\n"
 msgstr	"\n"
 	"Ühendus serveriga aegus, proovin taastada, katse %d\n"
 
-#: src/nntplib.c:841
+#: src/nntplib.c:843
 msgid	"Rejoin current group\n"
 msgstr	"Taasühinen jooksva grupiga\n"
 
-#: src/nntplib.c:848
+#: src/nntplib.c:850
 #, c-format
 msgid	"Read (%s)\n"
 msgstr	"Lugesin (%s)\n"
 
-#: src/nntplib.c:850
+#: src/nntplib.c:852
 #, c-format
 msgid	"Resend last command (%s)\n"
 msgstr	"Saada viimane käsk uuesti (%s)\n"
@@ -6267,7 +6304,7 @@ msgstr	"Saada viimane käsk uuesti (%s)\n
 msgid	"couldn't expand %s\n"
 msgstr	"ei saa laiendada %s\n"
 
-#: src/post.c:1970
+#: src/post.c:1969
 #, c-format
 msgid	"Posting: %.*s ..."
 msgstr	"Postitan: %.*s ..."
@@ -6295,7 +6332,6 @@ msgstr	"muutmata"
 msgid	"[- Unavailable -]"
 msgstr	"[- Pole kasutatav -]"
 
-# TRANSLATION MISSING
 #.
 #. * preamble
 #. * TODO: -> lang.c
@@ -6305,21 +6341,24 @@ msgid	"This message has been composed in
 	"are reading this prefix, your mail reader probably has not yet been modified\n"
 	"to understand the new format, and some of what follows may look strange.\n"
 	"\n"
-msgstr	""
+msgstr	"See teade on koostatud kasutades 'multipart/mixed' MIME vormingut. Kui\n"
+	"te loete seda prefiksit, siis pole teie mailiprogrammi seadistatud seda\n"
+	"vormingut kasutama ja järgnev tekst võib olla kummaline.\n"
+	"\n"
 
-#: src/save.c:974
+#: src/save.c:977
 msgid	"bytes"
 msgstr	"baiti"
 
-#: src/select.c:375
+#: src/select.c:381
 msgid	"unread"
 msgstr	"lugemata"
 
-#: src/select.c:375
+#: src/select.c:381
 msgid	"all"
 msgstr	"kõik"
 
-#: src/select.c:547 src/select.c:549
+#: src/select.c:551 src/select.c:553
 msgid	" R"
 msgstr	" L"
 
@@ -6369,36 +6408,3 @@ msgstr	"Slrnface lõpetas veaga, kood %d.
 #, c-format
 msgid	"Slrnface failed: %s."
 msgstr	"Slrnface ebaõnnestus: %s."
-
-#~ msgid	"# For color-adjust use the following numbers\n"
-#~ 	"#  0-black       1-red         2-green        3-brown\n"
-#~ 	"#  4-blue        5-pink        6-cyan         7-white\n"
-#~ 	"# These are *only* for foreground:\n"
-#~ 	"#  8-gray        9-light red   10-light green  11-yellow\n"
-#~ 	"# 12-light blue  13-light pink  14-light cyan   15-light white\n"
-#~ 	"# A '-1' is interpreted as default (foreground normally is white, and\n"
-#~ 	"# background black)\n"
-#~ 	"\n"
-#~ msgstr	"# Värvide seadmiseks kasutage järgnevaid koode\n"
-#~ 	"#  0-must        1-punane      2-roheline     3-pruun\n"
-#~ 	"#  4-sinine      5-roosa       6-lilla        7-valge\n"
-#~ 	"# Need on *ainult* esiplaani tarvis:\n"
-#~ 	"#  8-hall         9-helepunane 10-heleroheline 11-kollane\n"
-#~ 	"# 12-helesinine  13-heleroosa  14-helelilla    15-helevalge\n"
-#~ 	"# '-1' interpreteeritakse vaikeväärtusena (esiplaan on tavaliselt valge,\n"
-#~ 	"# taust must)\n"
-#~ 	"\n"
-
-#~ msgid	"# Standard-Background-Color\n"
-#~ msgstr	"# Standardne tagaplaani värv\n"
-
-#~ msgid	"# Color of text lines\n"
-#~ msgstr	"# Tekstiridade värv\n"
-
-#~ msgid	"# Color of help pages\n"
-#~ msgstr	"# Abiinfo värv\n"
-
-#~ msgid	"# Color of word highlighting. There are four possibilities\n"
-#~ 	"# in articles: *stars*, /slashes/, _underdashes_ and -strokes-.\n"
-#~ msgstr	"# Sõnade esiletõstmise värv. Artiklites saab kasutada nelja võimalust:\n"
-#~ 	"# *tärnid*, /kaldkriipsud/, _alakriipsud_ ja -kriipsud-.\n"
Binary files tin-1.7.7/po/fr.gmo and tin-1.7.8/po/fr.gmo differ
diff -Nurp tin-1.7.7/po/fr.po tin-1.7.8/po/fr.po
--- tin-1.7.7/po/fr.po	Wed Dec 15 16:48:29 2004
+++ tin-1.7.8/po/fr.po	Mon Mar 21 11:43:09 2005
@@ -3,7 +3,7 @@
 #
 msgid	""
 msgstr	"Project-Id-Version: 1.7.7\n"
-	"POT-Creation-Date: 2004-12-15 16:47+0100\n"
+	"POT-Creation-Date: 2005-03-21 11:42+0100\n"
 	"PO-Revision-Date: 2004-11-17 00:50+0100\n"
 	"Last-Translator: Matt Anton <tin@syrius.org\n"
 	"Language-Team: French <tin@syrius.org>\n"
@@ -12,225 +12,225 @@ msgstr	"Project-Id-Version: 1.7.7\n"
 	"Content-Transfer-Encoding: 8bit\n"
 	"Report-Msgid-Bugs-To: \n"
 
-#: src/art.c:1447
+#: src/art.c:1455
 #, c-format
 msgid	"%d Bad overview record (%d fields) '%s'"
 msgstr	"%d Mauvais overview (%d champs) '%s'"
 
-#: src/attrib.c:594
+#: src/attrib.c:604
 msgid	"# Do not edit this comment block\n"
 	"#\n"
 msgstr	"# Ne pas éditer ce commentaire\n"
 	"#\n"
 
-#: src/attrib.c:595
+#: src/attrib.c:605
 msgid	"#  scope=STRING (ie. alt.*,!alt.bin*) [mandatory]\n"
 msgstr	"#  scope=TERME (pe. alt.*,!alt.bin*) [obligatoire]\n"
 
-#: src/attrib.c:596
+#: src/attrib.c:606
 msgid	"#  maildir=STRING (ie. ~/Mail)\n"
 msgstr	"#  maildir=TERME (pe. ~/Mail)\n"
 
-#: src/attrib.c:597
+#: src/attrib.c:607
 msgid	"#  savedir=STRING (ie. ~user/News)\n"
 msgstr	"#  savedir=TERME (pe. ~user/News)\n"
 
-#: src/attrib.c:598
+#: src/attrib.c:608
 msgid	"#  savefile=STRING (ie. =linux)\n"
 msgstr	"#  savefile=TERME (pe. =linux)\n"
 
-#: src/attrib.c:599
+#: src/attrib.c:609
 msgid	"#  sigfile=STRING (ie. $var/sig)\n"
 msgstr	"#  sigfile=TERME (pe. $var/sig)\n"
 
-#: src/attrib.c:600
+#: src/attrib.c:610
 msgid	"#  organization=STRING (if beginning with '/' read from file)\n"
 msgstr	"#  organization=TERME (si commence par '/' lire dans fichier)\n"
 
-#: src/attrib.c:601
+#: src/attrib.c:611
 msgid	"#  followup_to=STRING\n"
 msgstr	"#  followup_to=TERME\n"
 
-#: src/attrib.c:602
+#: src/attrib.c:612
 msgid	"#  mailing_list=STRING (ie. majordomo@example.org)\n"
 msgstr	"#  mailing_list=TERME (pe. majordomo@example.org)\n"
 
-#: src/attrib.c:603
+#: src/attrib.c:613
 msgid	"#  x_headers=STRING (ie. ~/.tin/extra-headers)\n"
 msgstr	"#  x_headers=TERME (pe. ~/.tin/extra-headers)\n"
 
-#: src/attrib.c:604
+#: src/attrib.c:614
 msgid	"#  x_body=STRING (ie. ~/.tin/extra-body-text)\n"
 msgstr	"#  x_body=TERME (pe. ~/.tin/extra-body-text)\n"
 
-#: src/attrib.c:605
+#: src/attrib.c:615
 msgid	"#  from=STRING (just append wanted From:-line, don't use quotes)\n"
 msgstr	"#  from=TERME (choix du 'From:', ne pas utiliser celui cité)\n"
 
-#: src/attrib.c:606
+#: src/attrib.c:616
 msgid	"#  news_quote_format=STRING\n"
 msgstr	"#  news_quote_format=TERME\n"
 
-#: src/attrib.c:607
+#: src/attrib.c:617
 msgid	"#  quote_chars=STRING (%%s, %%S for initials)\n"
 msgstr	"#  quote_chars=TERME (%%s, %%S pour les initiales)\n"
 
-#: src/attrib.c:608
+#: src/attrib.c:618
 msgid	"#  mime_types_to_save=STRING (eg. image/*,!image/bmp)\n"
 msgstr	"#  mime_types_to_save=TERME (pe. image/*,!image/bmp)\n"
 
-#: src/attrib.c:610
+#: src/attrib.c:620
 msgid	"#  ispell=STRING\n"
 msgstr	"#  ispell=TERME\n"
 
-#: src/attrib.c:612
+#: src/attrib.c:622
 msgid	"#  auto_select=ON/OFF\n"
 msgstr	"#  auto_select=ON/OFF\n"
 
-#: src/attrib.c:613
+#: src/attrib.c:623
 msgid	"#  auto_save=ON/OFF\n"
 msgstr	"#  auto_save=ON/OFF\n"
 
-#: src/attrib.c:614
+#: src/attrib.c:624
 msgid	"#  batch_save=ON/OFF\n"
 msgstr	"#  batch_save=ON/OFF\n"
 
-#: src/attrib.c:615
+#: src/attrib.c:625
 msgid	"#  delete_tmp_files=ON/OFF\n"
 msgstr	"#  delete_tmp_files=ON/OFF\n"
 
-#: src/attrib.c:616
+#: src/attrib.c:626
 msgid	"#  show_only_unread=ON/OFF\n"
 msgstr	"#  show_only_unread=ON/OFF\n"
 
-#: src/attrib.c:617
+#: src/attrib.c:627
 msgid	"#  thread_arts=NUM"
 msgstr	"#  thread_arts=NUM"
 
-#: src/attrib.c:624
+#: src/attrib.c:634
 msgid	"#  show_author=NUM\n"
 msgstr	"#  show_author=NUM\n"
 
-#: src/attrib.c:630
+#: src/attrib.c:640
 msgid	"#  show_info=NUM\n"
 msgstr	"#  show_info=NUM\n"
 
-#: src/attrib.c:636
+#: src/attrib.c:646
 msgid	"#  sort_art_type=NUM\n"
 msgstr	"#  sort_art_type=NUM\n"
 
-#: src/attrib.c:654
+#: src/attrib.c:664
 msgid	"#  sort_threads_type=NUM\n"
 msgstr	"#  sort_threads_type=NUM\n"
 
-#: src/attrib.c:659
+#: src/attrib.c:669
 msgid	"#  post_proc_type=NUM\n"
 msgstr	"#  post_proc_type=NUM\n"
 
-#: src/attrib.c:664
+#: src/attrib.c:674
 msgid	"#  quick_kill_scope=STRING (ie. talk.*)\n"
 msgstr	"#  quick_kill_scope=TERME (pe. talk.*)\n"
 
-#: src/attrib.c:665
+#: src/attrib.c:675
 msgid	"#  quick_kill_expire=ON/OFF\n"
 msgstr	"#  quick_kill_expire=ON/OFF\n"
 
-#: src/attrib.c:666
+#: src/attrib.c:676
 msgid	"#  quick_kill_case=ON/OFF\n"
 msgstr	"#  quick_kill_case=ON/OFF\n"
 
-#: src/attrib.c:667
+#: src/attrib.c:677
 msgid	"#  quick_kill_header=NUM\n"
 msgstr	"#  quick_kill_header=NUM\n"
 
-#: src/attrib.c:668 src/attrib.c:675
+#: src/attrib.c:678 src/attrib.c:685
 msgid	"#    0=subj (case sensitive) 1=subj (ignore case)\n"
 msgstr	"#    0=subject (casse sensible) 1=subject (ignore la casse)\n"
 
-#: src/attrib.c:669 src/attrib.c:676
+#: src/attrib.c:679 src/attrib.c:686
 msgid	"#    2=from (case sensitive) 3=from (ignore case)\n"
 msgstr	"#    2=from (casse sensible) 3=from (ignore la casse)\n"
 
-#: src/attrib.c:670 src/attrib.c:677
+#: src/attrib.c:680 src/attrib.c:687
 msgid	"#    4=msgid 5=lines\n"
 msgstr	"#    4=msgid 5=lines\n"
 
-#: src/attrib.c:671
+#: src/attrib.c:681
 msgid	"#  quick_select_scope=STRING\n"
 msgstr	"#  quick_select_scope=TERME\n"
 
-#: src/attrib.c:672
+#: src/attrib.c:682
 msgid	"#  quick_select_expire=ON/OFF\n"
 msgstr	"#  quick_select_expire=ON/OFF\n"
 
-#: src/attrib.c:673
+#: src/attrib.c:683
 msgid	"#  quick_select_case=ON/OFF\n"
 msgstr	"#  quick_select_case=ON/OFF\n"
 
-#: src/attrib.c:674
+#: src/attrib.c:684
 msgid	"#  quick_select_header=NUM\n"
 msgstr	"#  quick_select_header=NUM\n"
 
-#: src/attrib.c:678
+#: src/attrib.c:688
 msgid	"#  x_comment_to=ON/OFF\n"
 msgstr	"#  x_comment_to=ON/OFF\n"
 
-#: src/attrib.c:679
+#: src/attrib.c:689
 msgid	"#  fcc=STRING (eg. =mailbox)\n"
 msgstr	"#  fcc=TERME (pe. =mailbox)\n"
 
-#: src/attrib.c:680
+#: src/attrib.c:690
 msgid	"#  tex2iso_conv=ON/OFF\n"
 msgstr	"#  tex2iso_conv=ON/OFF\n"
 
-#: src/attrib.c:681
+#: src/attrib.c:691
 msgid	"#  mime_forward=ON/OFF\n"
 msgstr	"#  mime_forward=ON/OFF\n"
 
-#: src/attrib.c:683
+#: src/attrib.c:693
 msgid	"#  mm_network_charset=supported_charset"
 msgstr	"#  mm_network_charset=encodage_supporté"
 
-#: src/attrib.c:690
+#: src/attrib.c:700
 msgid	"#  undeclared_charset=STRING (default is US-ASCII)\n"
 msgstr	"#  undeclared_charset=TERME (défaut est US-ASCII)\n"
 
-#: src/attrib.c:692
+#: src/attrib.c:702
 msgid	"#\n"
 	"# Note that it is best to put general (global scoping)\n"
 msgstr	"#\n"
 	"# Notez que placer les entrées générales (portée globale) en premier\n"
 
-#: src/attrib.c:693
+#: src/attrib.c:703
 msgid	"# entries first followed by group specific entries.\n"
 	"#\n"
 msgstr	"# est préférable, suivies des entrées spécifiques aux groupes.\n"
 	"#\n"
 
-#: src/attrib.c:694
+#: src/attrib.c:704
 msgid	"############################################################################\n"
 	"\n"
 msgstr	"############################################################################\n"
 	"\n"
 
-#: src/attrib.c:700
+#: src/attrib.c:710
 msgid	"# include extra headers\n"
 msgstr	"# inclure des en-têtes supplémentaires\n"
 
-#: src/attrib.c:708
+#: src/attrib.c:718
 msgid	"# in *sources* set post process type to shar only\n"
 msgstr	"# dans *sources* choisir le type shar en post-traitement\n"
 
-#: src/attrib.c:712
+#: src/attrib.c:722
 msgid	"# in *binaries* do full post processing, remove tmp files\n"
 msgstr	"# dans *binaries* faire traitement complet, effaçant les fichiers "
 	"temporaires\n"
 
-#: src/attrib.c:713
+#: src/attrib.c:723
 msgid	"# and set Followup-To: poster\n"
 msgstr	"# et utiliser Followup-To: poster\n"
 
-#: src/cook.c:494
+#: src/cook.c:497
 msgid	"(unknown)"
 msgstr	"(inconnu)"
 
@@ -333,7 +333,7 @@ msgstr	"Article indisponible"
 
 #: src/lang.c:64
 msgid	"Article undeleted."
-msgstr	"Article non effacé"
+msgstr	"Article non effacé."
 
 #: src/lang.c:66
 msgid	"articles"
@@ -446,7 +446,7 @@ msgstr	"Attribut non reconnu : %s"
 #: src/lang.c:90
 #, c-format
 msgid	"Bad command. Type '%s' for help."
-msgstr	"Mauvaise comande. Tapez '%s' pour l'aide."
+msgstr	"Mauvaise commande. Tapez '%s' pour l'aide."
 
 #: src/lang.c:92
 msgid	"Base article"
@@ -555,276 +555,276 @@ msgstr	"Vérification de articles..."
 msgid	"Post-process %s=no, %s=yes, %s=shar, %s=quit: "
 msgstr	"Traiter %s=non, %s=oui, %s=shar, %s=quitter : "
 
-#: src/lang.c:118
+#: src/lang.c:119
 msgid	"ANSI color disabled"
 msgstr	"Couleurs ANSI désactivées"
 
-#: src/lang.c:119
+#: src/lang.c:120
 msgid	"ANSI color enabled"
 msgstr	"Couleurs ANSI activées"
 
-#: src/lang.c:120
+#: src/lang.c:122
 #, c-format
 msgid	"Command failed: %s"
 msgstr	"Échec commande : %s"
 
-#: src/lang.c:121
+#: src/lang.c:123
 msgid	"Mark not selected articles read?"
 msgstr	"Marquer comme lu les articles sélectionnés ?"
 
-#: src/lang.c:122
+#: src/lang.c:124
 #, c-format
 msgid	"Connecting to %s..."
 msgstr	"Connexion à %s..."
 
-#: src/lang.c:123
+#: src/lang.c:125
 msgid	"<CR>"
 msgstr	"<RETOUR>"
 
-#: src/lang.c:124
+#: src/lang.c:126
 msgid	"Creating active file for saved groups...\n"
 msgstr	"Création du fichier active des groupes enregistrés...\n"
 
-#: src/lang.c:125
+#: src/lang.c:127
 msgid	"Creating newsrc file...\n"
 msgstr	"Création du fichier newsrc...\n"
 
-#: src/lang.c:127 src/lang.c:1140
+#: src/lang.c:129 src/lang.c:1150
 msgid	"Default"
 msgstr	"Défaut"
 
-#: src/lang.c:128
+#: src/lang.c:130
 msgid	"Delete saved files that have been post processed?"
 msgstr	"Effacer les fichiers enregistrés qui ont été post-traités ?"
 
-#: src/lang.c:129
+#: src/lang.c:131
 msgid	"Deleting temporary files..."
 msgstr	"Effacement des fichiers temporaires..."
 
-#: src/lang.c:131
+#: src/lang.c:133
 msgid	"*** End of article ***"
 msgstr	"*** Fin de l'article ***"
 
-#: src/lang.c:132
+#: src/lang.c:134
 msgid	"*** End of articles ***"
 msgstr	"*** Fin de la liste ***"
 
-#: src/lang.c:133
+#: src/lang.c:135
 msgid	"*** End of groups ***"
 msgstr	"*** Fin de la liste ***"
 
-#: src/lang.c:134
+#: src/lang.c:136
 msgid	"*** End of thread ***"
 msgstr	"*** Fin du fil ***"
 
-#: src/lang.c:135
+#: src/lang.c:137
 msgid	"Enter limit of articles to get> "
 msgstr	"Entrez le nombre max d'articles à récupérer > "
 
-#: src/lang.c:136
+#: src/lang.c:138
 msgid	"Enter Message-ID to go to> "
 msgstr	"Entrez le Message-ID à voir > "
 
-#: src/lang.c:137
+#: src/lang.c:139
 msgid	" and enter next unread thread"
 msgstr	" et passer au fil non lu suivant"
 
-#: src/lang.c:138
+#: src/lang.c:140
 msgid	" and enter next unread group"
 msgstr	" et entrer dans le groupe suivant non lu"
 
-#: src/lang.c:139
+#: src/lang.c:141
 msgid	"Enter option number> "
 msgstr	"Entrez le numéro de l'option > "
 
-#: src/lang.c:140
+#: src/lang.c:142
 #, c-format
 msgid	"Enter range [%s]> "
 msgstr	"Entrez un champ [%s] > "
 
-#: src/lang.c:141
+#: src/lang.c:143
 msgid	"\n"
 	"Warning: Approved: header used.\n"
 msgstr	"\n"
 	"Attention : en-tête Approved: utilisé.\n"
 
-#: src/lang.c:143
+#: src/lang.c:145
 msgid	"\n"
 	"Error: Bad address in Approved: header.\n"
 msgstr	"\n"
 	"Erreur : Mauvaise adresse dans l'en-tête Approved:.\n"
 
-#: src/lang.c:144
+#: src/lang.c:146
 msgid	"\n"
 	"Error: Bad address in From: header.\n"
 msgstr	"\n"
 	"Erreur : Mauvaise adresse dans l'en-tête From:.\n"
 
-#: src/lang.c:145
+#: src/lang.c:147
 msgid	"\n"
 	"Error: Bad address in Reply-To: header.\n"
 msgstr	"\n"
 	"Erreur : Mauvais adresse dans l'en-ête Reply-To:.\n"
 
-#: src/lang.c:146
+#: src/lang.c:148
 msgid	"\n"
 	"Error: Bad FQDN in Message-ID: header.\n"
 msgstr	"\n"
 	"Erreur : Mauvais FQDN dans l'en-tête Message-ID:.\n"
 
-#: src/lang.c:147
+#: src/lang.c:149
 #, c-format
 msgid	"Can't unlock %s"
 msgstr	"Déverrouillage de %s impossible"
 
-#: src/lang.c:149
+#: src/lang.c:151
 #, c-format
 msgid	"Corrupted file %s"
 msgstr	"Fichier %s corrompu"
 
-#: src/lang.c:150
+#: src/lang.c:152
 #, c-format
 msgid	"Couldn't dotlock %s - article not appended!"
 msgstr	"N'a pu déverrouiler %s - article non ajouté !"
 
-#: src/lang.c:151
+#: src/lang.c:153
 #, c-format
 msgid	"Couldn't lock %s - article not appended!"
 msgstr	"N'a pu verrouiller %s - article non ajouté !"
 
-#: src/lang.c:153
+#: src/lang.c:155
 msgid	"Internal error in GNKSA routine - send bug report.\n"
 msgstr	"Erreur interne dans routine GNKSA - envoi d'un rapport de bug.\n"
 
-#: src/lang.c:154
+#: src/lang.c:156
 msgid	"Left angle bracket missing in route address.\n"
 msgstr	"Accolade gauche manquante dans l'adresse de routage.\n"
 
-#: src/lang.c:155
+#: src/lang.c:157
 msgid	"Left parenthesis missing in old-style address.\n"
 msgstr	"Parenthèse gauche manquante dans l'ancien type d'adresse.\n"
 
-#: src/lang.c:156
+#: src/lang.c:158
 msgid	"Right parenthesis missing in old-style address.\n"
 msgstr	"Parenthèse droite manquante dans l'ancien type d'adresse.\n"
 
-#: src/lang.c:157
+#: src/lang.c:159
 msgid	"At-sign missing in mail address.\n"
 msgstr	"Arobase manquant dans l'adresse email.\n"
 
-#: src/lang.c:158
+#: src/lang.c:160
 msgid	"Single component FQDN is not allowed. Add your domain.\n"
 msgstr	"Composant FQDN unique non autorisé. Ajoutez votre domaine.\n"
 
-#: src/lang.c:159
+#: src/lang.c:161
 msgid	"Invalid domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Domaine invalide. Envoyez un rapport de bug si votre domaine premier existe.\n"
 	"Utilisez .invalid comme domaine premier pour les fausses adresses.\n"
 
-#: src/lang.c:160
+#: src/lang.c:162
 msgid	"Illegal domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Domaine illégal. Envoyez un rapport de bug si votre domaine premier existe.\n"
 	"Utilisez .invalid comme domaine premier pour les fausses adresses.\n"
 
-#: src/lang.c:161
+#: src/lang.c:163
 msgid	"Unknown domain. Send bug report if your top level domain really exists.\n"
 	"Use .invalid as top level domain for munged addresses.\n"
 msgstr	"Domaine inconnu. Envoyez un rapport de bug si votre domaine premier existe.\n"
 	"Utilisez .invalid comme domaine premier pour les fausses adresses.\n"
 
-#: src/lang.c:162
+#: src/lang.c:164
 msgid	"Illegal character in FQDN.\n"
 msgstr	"Caractère illégal dans le FQDN.\n"
 
-#: src/lang.c:163
+#: src/lang.c:165
 msgid	"Zero length FQDN component not allowed.\n"
 msgstr	"Valeur vide dans le FQDN non autorisé.\n"
 
-#: src/lang.c:164
+#: src/lang.c:166
 msgid	"FQDN component exceeds maximum allowed length (63 chars).\n"
 msgstr	"Composant FQDN excède la longueur max autorisée (63 car.).\n"
 
-#: src/lang.c:165
+#: src/lang.c:167
 msgid	"FQDN component may not start or end with hyphen.\n"
 msgstr	"Composant FQDN ne devrait pas commencer ou finir par un tiret.\n"
 
-#: src/lang.c:166
+#: src/lang.c:168
 msgid	"FQDN component may not start with digit.\n"
 msgstr	"Composant FQDN ne devrait pas commencer par un chiffre.\n"
 
-#: src/lang.c:167
+#: src/lang.c:169
 msgid	"Domain literal has impossible numeric value.\n"
 msgstr	"Domaine littéral contient une valeur numérique impossible.\n"
 
-#: src/lang.c:168
+#: src/lang.c:170
 msgid	"Domain literal is for private use only and not allowed for global use.\n"
 msgstr	"Domaine littéral est pour l'usage privé et n'est pas autorisé à l'usage "
 	"global.\n"
 
-#: src/lang.c:169
+#: src/lang.c:171
 msgid	"Right bracket missing in domain literal.\n"
 msgstr	"Parenthèse droite manquante dans le domaine littéral.\n"
 
-#: src/lang.c:170
+#: src/lang.c:172
 msgid	"Missing localpart of mail address.\n"
 msgstr	"Partie locale manquante dans l'adresse email.\n"
 
-#: src/lang.c:171
+#: src/lang.c:173
 msgid	"Illegal character in localpart of mail address.\n"
 msgstr	"Caractère illégal dans la partie locale de l'adresse email.\n"
 
-#: src/lang.c:172
+#: src/lang.c:174
 msgid	"Zero length localpart component not allowed.\n"
 msgstr	"Valeur vide dans composant de partie locale non autorisé.\n"
 
-#: src/lang.c:173
+#: src/lang.c:175
 msgid	"Illegal character in realname.\n"
 	"Unquoted words may not contain '!()<>@,;:\\.[]' in route addresses.\n"
 msgstr	"Caractère illégal dans le nom réel.\n"
 	"Mots non cités ne devraient pas contenir '!()<>@,;:\\.[]' dans l'adresse de "
 	"routage.\n"
 
-#: src/lang.c:174
+#: src/lang.c:176
 msgid	"Illegal character in realname.\n"
 	"Quoted words may not contain '()<>\\'.\n"
 msgstr	"Caractère illégal dans le nom réel.\n"
 	"Mots cités ne devraient pas contenir '()<>\\'.\n"
 
-#: src/lang.c:175
+#: src/lang.c:177
 msgid	"Illegal character in realname.\n"
 	"Encoded words may not contain '!()<>@,;:\"\\.[]/=' in parameter.\n"
 msgstr	"Caractère illégal dans le nom réel.\n"
 	"Mots encodés ne devraient pas contenir '!()<>@,;:\"\\.[]/=' dans le "
 	"paramètre.\n"
 
-#: src/lang.c:176
+#: src/lang.c:178
 msgid	"Bad syntax in encoded word used in realname.\n"
 msgstr	"Mauvaise syntaxe dans le mot encodé utilisé dans le nom réel.\n"
 
-#: src/lang.c:177
+#: src/lang.c:179
 msgid	"Illegal character in realname.\n"
 	"Unquoted words may not contain '()<>\\' in old-style addresses.\n"
 msgstr	"Caractère illégal dans le nom réel.\n"
 	"Mots non cités ne devraient pas contenir '()<>\\' dans les adresses de type "
 	"anciennes.\n"
 
-#: src/lang.c:178
+#: src/lang.c:180
 msgid	"Illegal character in realname.\n"
 	"Control characters and unencoded 8bit characters > 127 are not allowed.\n"
 msgstr	"Caractère illégal dans le nom réel.\n"
 	"Les caractères de contrôle et non encodés en 8bit > 127 ne sont pas "
 	"autorisés.\n"
 
-#: src/lang.c:179
+#: src/lang.c:181
 msgid	"\n"
 	"Error: No blank line found after header.\n"
 msgstr	"\n"
 	"Erreur : Pas de ligne vide trouvée après l'en-tête.\n"
 
 #. TODO: fixme, US-ASCII is not the only 7bit charset we know about
-#: src/lang.c:181
+#: src/lang.c:183
 msgid	"\n"
 	"Error: Posting contains non-ASCII characters but MM_CHARSET is set to\n"
 	"       US-ASCII  - please change this setting to a suitable value for\n"
@@ -836,7 +836,7 @@ msgstr	"\n"
 	"         correcte pour votre langue via le M)enu des options ou via\n"
 	"         l'édition de votre tinrc.\n"
 
-#: src/lang.c:186
+#: src/lang.c:188
 msgid	"\n"
 	"Error: Posting contains  non-ASCII characters  but the  MIME encoding\n"
 	"       for news  messages  is set  to \"7bit\"  -  please change this\n"
@@ -851,13 +851,13 @@ msgstr	"\n"
 	"         changement peut être effectué via le M)enu des options ou via\n"
 	"         l'édition de votre tinrc.\n"
 
-#: src/lang.c:192
+#: src/lang.c:194
 msgid	"\n"
 	"Error: Article starts with blank line instead of header\n"
 msgstr	"\n"
 	"Erreur : L'article débute avec une ligne vide au lieu d'un en-tête\n"
 
-#: src/lang.c:193
+#: src/lang.c:195
 #, c-format
 msgid	"\n"
 	"Error: Header on line %d does not have a colon after the header name:\n"
@@ -867,21 +867,21 @@ msgstr	"\n"
 	":\n"
 	"%s\n"
 
-#: src/lang.c:194
+#: src/lang.c:196
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is empty.\n"
 msgstr	"\n"
 	"Erreur : La ligne \"%s:\" est vide.\n"
 
-#: src/lang.c:195
+#: src/lang.c:197
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is missing from the article header.\n"
 msgstr	"\n"
 	"Erreur : La ligne \"%s:\" est absente de l'en-tête de l'article.\n"
 
-#: src/lang.c:196
+#: src/lang.c:198
 #, c-format
 msgid	"\n"
 	"Error: Header on line %d does not have a space after the colon:\n"
@@ -890,71 +890,71 @@ msgstr	"\n"
 	"Erreur : L'en-tête à la ligne %d n'a pas d'espace après le séparateur :\n"
 	"%s\n"
 
-#: src/lang.c:197
+#: src/lang.c:199
 #, c-format
 msgid	"\n"
 	"Error: There are multiple (%d) \"%s:\" lines in the header.\n"
 msgstr	"\n"
 	"Erreur : Il y a plusieurs lignes (%d) \"%s:\" dans l'en-tête.\n"
 
-#: src/lang.c:198
+#: src/lang.c:200
 #, c-format
 msgid	"Insecure permissions of %s (%o)"
 msgstr	"Permissions de %s non sûres (%o)"
 
-#: src/lang.c:199
+#: src/lang.c:201
 #, c-format
 msgid	"Invalid response to GROUP command, %s"
 msgstr	"Réponse de la commande GROUP invalide, %s"
 
-#: src/lang.c:201
+#: src/lang.c:203
 #, c-format
 msgid	"MIME parse error: Unexpected end of %s/%s article"
 msgstr	"Erreur MIME : Fin inattendue de l'article %s %s"
 
-#: src/lang.c:202
+#: src/lang.c:204
 msgid	"MIME parse error: Start boundary whilst reading headers"
 msgstr	"Erreur MIME : Début de la borne lors de la lecture des en-têtes"
 
-#: src/lang.c:203
+#: src/lang.c:205
 msgid	"Can't get a (fully-qualified) domain-name!"
 msgstr	"Nom de domaine (qualifié) introuvable !"
 
-#: src/lang.c:204
+#: src/lang.c:206
 #, c-format
 msgid	"No permissions to go into %s\n"
 msgstr	"Pas la permission d'aller dans %s\n"
 
-#: src/lang.c:205
+#: src/lang.c:207
 msgid	"\n"
 	"Error: From: line missing.\n"
 msgstr	"\n"
 	"Erreur : En-tête 'From:' manquant.\n"
 
-#: src/lang.c:206
+#: src/lang.c:208
 #, c-format
 msgid	"No read permissions for %s\n"
 msgstr	"Pas la permission de lecture pour %s\n"
 
-#: src/lang.c:207
+#: src/lang.c:209
 #, c-format
 msgid	"File %s does not exist\n"
 msgstr	"Fichier %s inexistant\n"
 
-#: src/lang.c:208
+#: src/lang.c:210
 #, c-format
 msgid	"No write permissions for %s\n"
 msgstr	"Pas la permission d'écrire pour %s\n"
 
-#: src/lang.c:209
+#: src/lang.c:211
 msgid	"Can't get user information (/etc/passwd missing?)"
 msgstr	"Info sur l'utilisateur introuvable (/etc/passwd manquant ?)"
 
-#: src/lang.c:210
+#: src/lang.c:212
 msgid	"errors"
 msgstr	"erreurs"
 
-#: src/lang.c:211
+#: src/lang.c:213
 #, c-format
 msgid	"\n"
 	"Error on line %d: \"Sender:\" header not allowed (it will be added for you)\n"
@@ -962,81 +962,81 @@ msgstr	"\n"
 	"Erreur sur la ligne %d : en-tête \"Sender:\" non autorisé (sera ajouté pour "
 	"vous)\n"
 
-#: src/lang.c:212
+#: src/lang.c:214
 #, c-format
 msgid	"Server has non of the groups listed in %s"
 msgstr	"Le serveur n'a aucun groupe listé dans %s"
 
-#: src/lang.c:213
+#: src/lang.c:215
 msgid	"error"
 msgstr	"erreur"
 
-#: src/lang.c:214
+#: src/lang.c:216
 msgid	"Unknown display level"
 msgstr	"Vue affichée inconnue"
 
-#: src/lang.c:215
+#: src/lang.c:217
 msgid	"<ESC>"
 msgstr	"<ESC>"
 
-#: src/lang.c:216
+#: src/lang.c:218
 msgid	"Exiting..."
 msgstr	"Fermeture..."
 
-#: src/lang.c:217
+#: src/lang.c:219
 msgid	"leaving external mail-reader"
 msgstr	"fermeture du client mail externe"
 
-#: src/lang.c:218
+#: src/lang.c:220
 #, c-format
 msgid	"Extracting %s..."
 msgstr	"Extraction de %s..."
 
-#: src/lang.c:220
+#: src/lang.c:222
 #, c-format
 msgid	"Error writing %s file. Filesystem full? File reset to previous state."
 msgstr	"Écriture du fichier %s échouée. Disque plein ? Fichier non touché."
 
-#: src/lang.c:221
+#: src/lang.c:223
 #, c-format
 msgid	"Error making backup of %s file. Filesystem full?"
 msgstr	"Erreur lors de la sauvegarde du fichier %s. Disque plein ?"
 
-#: src/lang.c:222
+#: src/lang.c:224
 #, c-format
 msgid	"Filtering global rules (%d/%d)..."
 msgstr	"Filtrage selon les règles globales (%d/%d)..."
 
-#: src/lang.c:223
+#: src/lang.c:225
 msgid	"Rule created by: "
 msgstr	"Règle créée par : "
 
-#: src/lang.c:224
+#: src/lang.c:226
 #, c-format
 msgid	"Enter pattern [%s]> "
 msgstr	"Entrez le réglage [%s] > "
 
-#: src/lang.c:225
+#: src/lang.c:227
 #, c-format
 msgid	"\n"
 	"You requested followups to your article to go to the following %s:\n"
 msgstr	"\n"
 	"Vous avez souhaité que les réponses à votre article aillent au %s suivant :\n"
 
-#: src/lang.c:226
+#: src/lang.c:228
 #, c-format
 msgid	"  %s\t Answers will be directed to you by mail.\n"
 msgstr	"  %s\t Les réponses vous seront envoyées par email.\n"
 
-#: src/lang.c:227
+#: src/lang.c:229
 msgid	"-- forwarded message --\n"
 msgstr	"-- message redirigé --\n"
 
-#: src/lang.c:228
+#: src/lang.c:230
 msgid	"-- end of forwarded message --\n"
 msgstr	"-- fin du message redirigé --\n"
 
-#: src/lang.c:229
+#: src/lang.c:231
 msgid	"# Format:\n"
 	"#   comment=STRING    Optional. Multiple lines allowed. Comments must be "
 	"placed\n"
@@ -1096,725 +1096,729 @@ msgstr	"# Format :\n"
 	"règle.\n"
 	"#\n"
 
-#: src/lang.c:250
+#: src/lang.c:252
 #, c-format
 msgid	"Enter score for rule (default=%d): "
 msgstr	"Entrez le score (défaut=%d) : "
 
-#: src/lang.c:251
+#: src/lang.c:253
 #, c-format
 msgid	"Enter the score weight (range 0 < score <= %d)"
 msgstr	"Entrez la valeur du score (0 < score <= %d)"
 
 #. SCORE_MAX
-#: src/lang.c:252
+#: src/lang.c:254
 msgid	"Full"
 msgstr	"Tous"
 
-#: src/lang.c:253
+#: src/lang.c:255
 msgid	"Comment (optional)  : "
 msgstr	"Commentaire (facultatif) : "
 
-#: src/lang.c:254
+#: src/lang.c:256
 msgid	"Apply pattern to    : "
 msgstr	"Appliquer à     : "
 
-#: src/lang.c:255
+#: src/lang.c:257
 msgid	"From: line (ignore case)      "
 msgstr	"l'en-tête 'From:' (ignorer la casse)"
 
-#: src/lang.c:256
+#: src/lang.c:258
 msgid	"From: line (case sensitive)   "
 msgstr	"l'en-tête 'From:' (casse sensible)"
 
-#: src/lang.c:258
+#: src/lang.c:260
 #, c-format
 msgid	"%s%s: Unknown host.\n"
 msgstr	"%s%s : Hôte inconnu.\n"
 
-#: src/lang.c:259
+#: src/lang.c:261
 msgid	"global "
 msgstr	"global "
 
-#: src/lang.c:260
+#: src/lang.c:262
 #, c-format
 msgid	"Please use %.100s instead"
 msgstr	"Utilisez svp %.100s à la place"
 
-#: src/lang.c:261
+#: src/lang.c:263
 #, c-format
 msgid	"%s is bogus"
 msgstr	"%s pose problème"
 
-#: src/lang.c:262
+#: src/lang.c:264
 #, c-format
 msgid	"Group %s is moderated. Continue?"
 msgstr	"Groupe %s modéré. Continuer ?"
 
-#: src/lang.c:263
+#: src/lang.c:265
 msgid	"groups"
 msgstr	"groupes"
 
-#: src/lang.c:264
+#: src/lang.c:266
 #, c-format
 msgid	"Rereading %s..."
 msgstr	"Relecture de %s..."
 
-#: src/lang.c:265
+#: src/lang.c:267
 msgid	"Top Level Commands"
 msgstr	"Commandes niveau supérieur"
 
-#: src/lang.c:266
+#: src/lang.c:268
 msgid	"Group Selection"
 msgstr	"Sélection du groupe"
 
-#: src/lang.c:267
+#: src/lang.c:269
 msgid	"group"
 msgstr	"groupe"
 
-#: src/lang.c:269
+#: src/lang.c:271
 msgid	"One or more lines of comment. <CR> to add a line or proceed if line is empty."
 msgstr	"Inclure un commentaire. <RETOUR> pour ajouter une ligne ou continuer si vide."
 
-#: src/lang.c:270
+#: src/lang.c:272
 msgid	"From: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"Filtrer l'en-tête 'From:'. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:271
+#: src/lang.c:273
 msgid	"Linecount of articles to be filtered. < for less, > for more, = for equal."
 msgstr	"Filtrer selon le nombre de lignes. < pour moins, > pour plus, = pareil."
 
-#: src/lang.c:272
+#: src/lang.c:274
 msgid	"Message-ID: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"Filtrer l'en-tête 'Message-ID'. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:273
+#: src/lang.c:275
 msgid	"Subject: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr	"Filtrer l'en-tête 'Subject'. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:274
+#: src/lang.c:276
 msgid	"Enter text pattern to filter if Subject: & From: lines are not what you want."
-msgstr	"Terme à filtrer si autre que les en-têtes 'Subject:' & 'From:'"
+msgstr	"Terme à filtrer si autre que les en-têtes 'Subject:' & 'From:'."
 
-#: src/lang.c:275
+#: src/lang.c:277
 msgid	"Select where text pattern should be applied. <SPACE> toggles & <CR> sets."
 msgstr	"Sur quel en-tête appliquer ce terme. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:276
+#: src/lang.c:278
 msgid	"Expiration time in days for the entered filter. <SPACE> toggles & <CR> sets."
 msgstr	"Durée (en nombre de jours) du filtre. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:277
+#: src/lang.c:279
 msgid	"Apply kill only to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr	"Filtrer groupe actuel ou tous. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:278
+#: src/lang.c:280
 msgid	"Apply select to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr	"Appliquer règle au groupe actuel ou à tous. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:279
+#: src/lang.c:281
 msgid	"kill an article via a menu"
 msgstr	"filtrer un article via un menu"
 
-#: src/lang.c:280
+#: src/lang.c:282
 msgid	"auto-select (hot) an article via a menu"
 msgstr	"sélection auto. (hot) d'un article via un menu"
 
-#: src/lang.c:281
+#: src/lang.c:283
 msgid	"Browse URLs in article"
 msgstr	"Voir les URLs dans l'article"
 
-#: src/lang.c:282
+#: src/lang.c:284
 msgid	"0 - 9\t  display article by number in current thread"
 msgstr	"0 - 9\t  affiche les articles par numéro du fil actuel"
 
-#: src/lang.c:283
+#: src/lang.c:285
 msgid	"cancel (delete) or supersede (overwrite) current article"
 msgstr	"annuler (effacer) ou remplacer (écraser) l'article actuel"
 
-#: src/lang.c:284
+#: src/lang.c:286
 msgid	"edit article (mail-groups only)"
 msgstr	"éditer l'article (groupes de messagerie uniquement)"
 
-#: src/lang.c:285
+#: src/lang.c:287
 msgid	"display first article in current thread"
 msgstr	"afficher le 1er article du fil actuel"
 
-#: src/lang.c:286
+#: src/lang.c:288
 msgid	"display first page of article"
 msgstr	"afficher la 1ère page de l'article"
 
-#: src/lang.c:287
+#: src/lang.c:289
 msgid	"post followup to current article"
 msgstr	"poster un suivi pour l'article actuel"
 
-#: src/lang.c:288
+#: src/lang.c:290
 msgid	"post followup (don't copy text) to current article"
 msgstr	"poster un suivi (ne pas copier le texte) pour l'article actuel"
 
-#: src/lang.c:289
+#: src/lang.c:291
 msgid	"post followup to current article quoting complete headers"
 msgstr	"poster un suivi pour l'article actuel en citant les en-têtes"
 
-#: src/lang.c:290
+#: src/lang.c:292
 msgid	"display last article in current thread"
 msgstr	"afficher le dernier article du fil actuel"
 
-#: src/lang.c:291
+#: src/lang.c:293
 msgid	"display last page of article"
 msgstr	"afficher la dernière page de l'article"
 
-#: src/lang.c:292
+#: src/lang.c:294
 msgid	"mark rest of thread as read and advance to next unread"
 msgstr	"marquer comme lu le reste du fil et aller au fil non lu suivant"
 
-#: src/lang.c:293
+#: src/lang.c:295
 msgid	"display next article"
 msgstr	"afficher l'article suivant"
 
-#: src/lang.c:294
+#: src/lang.c:296
 msgid	"display first article in next thread"
 msgstr	"afficher le 1er article du fil suivant"
 
-#: src/lang.c:295
+#: src/lang.c:297
 msgid	"display next unread article"
 msgstr	"afficher le prochain article non lu"
 
-#: src/lang.c:296
+#: src/lang.c:298
 msgid	"go to the article that this one followed up"
 msgstr	"aller à l'article parent"
 
-#: src/lang.c:297
+#: src/lang.c:299
 msgid	"display previous article"
 msgstr	"afficher l'article précédent"
 
-#: src/lang.c:298
+#: src/lang.c:300
 msgid	"display previous unread article"
 msgstr	"afficher l'article précédent non lu"
 
-#: src/lang.c:299
+#: src/lang.c:301
 msgid	"quickly kill an article using defaults"
 msgstr	"filtrer rapidement un article en utilisant les défauts"
 
-#: src/lang.c:300
+#: src/lang.c:302
 msgid	"quickly auto-select (hot) an article using defaults"
 msgstr	"sélection auto. (hot) d'un article en utilisant les défauts"
 
-#: src/lang.c:301
+#: src/lang.c:303
 msgid	"return to group selection level"
 msgstr	"retourner à la vue sélection de groupe"
 
-#: src/lang.c:302
+#: src/lang.c:304
 msgid	"reply through mail to author"
 msgstr	"répondre par email à l'auteur"
 
-#: src/lang.c:303
+#: src/lang.c:305
 msgid	"reply through mail (don't copy text) to author"
 msgstr	"répondre (ne pas copier le texte) par email à l'auteur"
 
-#: src/lang.c:304
+#: src/lang.c:306
 msgid	"reply through mail to author quoting complete headers"
 msgstr	"répondre par email à l'auteur en citant les en-têtes"
 
-#: src/lang.c:305
+#: src/lang.c:307
 msgid	"repost chosen article to another group"
 msgstr	"reposter l'article choisi dans un autre groupe"
 
-#: src/lang.c:306
+#: src/lang.c:308
 msgid	"search backwards within this article"
 msgstr	"recherche arrière dans cet article"
 
-#: src/lang.c:307
+#: src/lang.c:309
 msgid	"search forwards within this article"
 msgstr	"recherche avant dans cet article"
 
-#: src/lang.c:308
+#: src/lang.c:310
 msgid	"show article in raw-mode (including all headers)"
 msgstr	"afficher la source des articles (incluant les en-têtes)"
 
-#: src/lang.c:309
+#: src/lang.c:311
 msgid	"skip next block of included text"
 msgstr	"passer au bloc suivant incluant du texte"
 
-#: src/lang.c:310
+#: src/lang.c:312
 msgid	"toggle display of sections hidden by a form-feed (^L) on/off"
 msgstr	"(dés)activer l'affichage des sections masquer par (^L)"
 
-#: src/lang.c:311
+#: src/lang.c:313
 msgid	"toggle word highlighting on/off"
 msgstr	"(dés)activer la surbrillance des mots"
 
-#: src/lang.c:312
+#: src/lang.c:314
 msgid	"toggle ROT-13 (basic decode) for current article"
 msgstr	"(dés)activer ROT-13 (décodage basic) pour l'article actuel"
 
-#: src/lang.c:313
+#: src/lang.c:315
 msgid	"toggle tabwidth 4 <-> 8"
 msgstr	"basculer la taille de tabulation 4 <-> 8"
 
-#: src/lang.c:314
+#: src/lang.c:316
 msgid	"toggle german TeX style decoding for current article"
 msgstr	"(dés)activer le décodage Allemand de type TeX pour l'article actuel"
 
-#: src/lang.c:315
+#: src/lang.c:317
 msgid	"toggle display of uuencoded sections"
 msgstr	"(dés)activer l'affichage des sections uuencodées"
 
-#: src/lang.c:316
+#: src/lang.c:318
 msgid	"View/save multimedia attachments"
 msgstr	"Voir/enregistrer les pj multimédia"
 
-#: src/lang.c:317
+#: src/lang.c:319
 #, c-format
 msgid	"report bug or comment via mail to %s"
 msgstr	"signaler un bug ou envoi d'un commentaires à %s"
 
-#: src/lang.c:318
+#: src/lang.c:320
 msgid	"choose range of articles to be affected by next command"
 msgstr	"choisir les articles qui seront affectés par la commande suivante"
 
-#: src/lang.c:319
+#: src/lang.c:321
 msgid	"escape from command prompt"
 msgstr	"quitter le prompt"
 
-#: src/lang.c:320
+#: src/lang.c:322
+msgid	"edit filter file"
+msgstr	"éditer les filtres"
+
+#: src/lang.c:323
 msgid	"get help"
 msgstr	"voir l'aide"
 
-#: src/lang.c:321
+#: src/lang.c:324
 msgid	"display last article viewed"
 msgstr	"afficher le dernier article lu"
 
-#: src/lang.c:322
+#: src/lang.c:325
 msgid	"down one line"
 msgstr	"descendre d'une ligne"
 
-#: src/lang.c:323
+#: src/lang.c:326
 msgid	"up one line"
 msgstr	"monter d'une ligne"
 
-#: src/lang.c:324
+#: src/lang.c:327
 msgid	"go to article chosen by Message-ID"
 msgstr	"aller à l'article via son Message-ID"
 
-#: src/lang.c:325
+#: src/lang.c:328
 msgid	"mail article/thread/hot/pattern/tagged articles to someone"
 msgstr	"envoyer article/fil/sél./articles marqués à une personne"
 
-#: src/lang.c:326
+#: src/lang.c:329
 msgid	"menu of configurable options"
 msgstr	"menu des options réglables"
 
-#: src/lang.c:327
+#: src/lang.c:330
 msgid	"down one page"
 msgstr	"descendre d'une page"
 
-#: src/lang.c:328
+#: src/lang.c:331
 msgid	"up one page"
 msgstr	"monter d'une page"
 
-#: src/lang.c:329
+#: src/lang.c:332
 msgid	"post (write) article to current group"
 msgstr	"poster (écrire) un article dans le groupe actuel"
 
-#: src/lang.c:330
+#: src/lang.c:333
 msgid	"post postponed articles"
 msgstr	"poster les brouillons"
 
-#: src/lang.c:331
+#: src/lang.c:334
 msgid	"list articles posted by you (from posted file)"
 msgstr	"lister les articles postés par vous (fichier posted)"
 
-#: src/lang.c:332
+#: src/lang.c:335
 msgid	"return to previous menu"
 msgstr	"retourner au menu précédent"
 
-#: src/lang.c:333
+#: src/lang.c:336
 msgid	"quit tin immediately"
 msgstr	"quitter tin immédiatement"
 
-#: src/lang.c:334
+#: src/lang.c:337
 msgid	"redraw page"
 msgstr	"rafraîchir la page"
 
-#: src/lang.c:335
+#: src/lang.c:338
 msgid	"save article/thread/hot/pattern/tagged articles to file"
 msgstr	"enregistrer article/fil/sél./articles marqués dans un fichier"
 
-#: src/lang.c:336
+#: src/lang.c:339
 msgid	"save marked articles automatically without user prompts"
 msgstr	"enregistrement auto. des articles marqués sans demander"
 
-#: src/lang.c:337
+#: src/lang.c:340
 msgid	"scroll the screen one line down"
 msgstr	"défiler une page par une page"
 
-#: src/lang.c:338
+#: src/lang.c:341
 msgid	"scroll the screen one line up"
 msgstr	"remonter une page par une page"
 
-#: src/lang.c:339
+#: src/lang.c:342
 msgid	"search for articles by author backwards"
 msgstr	"recherche arrière d'articles par auteur"
 
-#: src/lang.c:340
+#: src/lang.c:343
 msgid	"search for articles by author forwards"
 msgstr	"recherche avant d'articles par auteur"
 
-#: src/lang.c:341
+#: src/lang.c:344
 msgid	"search all articles for a given string (this may take some time)"
 msgstr	"rechercher partout un terme précis (cela peut prendre du temps)"
 
-#: src/lang.c:342
+#: src/lang.c:345
 msgid	" \t  (searches are case-insensitive and wrap around to all articles)"
 msgstr	" \t  (recherche ignore la casse et se cantonne à tous les articles)"
 
-#: src/lang.c:343
+#: src/lang.c:346
 msgid	"search for articles by Subject line backwards"
 msgstr	"recherche arrière d'articles par Sujet"
 
-#: src/lang.c:344
+#: src/lang.c:347
 msgid	"search for articles by Subject line forwards"
 msgstr	"recherche avant d'articles par Sujet"
 
-#: src/lang.c:345
+#: src/lang.c:348
 msgid	"repeat last search"
 msgstr	"relancer la dernière recherche"
 
-#: src/lang.c:346
+#: src/lang.c:349
 msgid	"tag current article for reposting/mailing/piping/printing/saving"
 msgstr	"marquer article pour repostage/envoi/passer/imprimer/enregistrer"
 
-#: src/lang.c:347
+#: src/lang.c:350
 msgid	"toggle info message in last line (subject/description)"
 msgstr	"afficher ou non les infos dans la dernière ligne (sujet/description)"
 
-#: src/lang.c:348
+#: src/lang.c:351
 msgid	"toggle inverse video"
 msgstr	"afficher ou non la vidéo inversée"
 
-#: src/lang.c:349
+#: src/lang.c:352
 msgid	"toggle mini help menu display"
 msgstr	"afficher ou non le petit menu d'aide"
 
-#: src/lang.c:350
+#: src/lang.c:353
 msgid	"cycle the display of authors email address, real name, both or neither"
 msgstr	"afficher cycliquement l'email des auteurs, nom réel, les deux ou aucun"
 
-#: src/lang.c:351
+#: src/lang.c:354
 msgid	"show version information"
 msgstr	"afficher la version de tin"
 
-#: src/lang.c:352
+#: src/lang.c:355
 msgid	"mark all articles as read and return to group selection menu"
 msgstr	"marquer tous les articles comme lus et retourner au menu groupe"
 
-#: src/lang.c:353
+#: src/lang.c:356
 msgid	"mark all articles as read and enter next group with unread articles"
 msgstr	"tout marquer comme lu et entrer dans le prochain groupe non lu"
 
-#: src/lang.c:354
+#: src/lang.c:357
 msgid	"choose first thread in list"
 msgstr	"choisir le 1er fil de la liste"
 
-#: src/lang.c:355
+#: src/lang.c:358
 msgid	"choose last thread in list"
 msgstr	"choisir le dernier fil de la liste"
 
-#: src/lang.c:356
+#: src/lang.c:359
 msgid	"list articles within current thread (bring up Thread sub-menu)"
 msgstr	"lister les articles du fil actuel (sous-menu fil)"
 
-#: src/lang.c:357
+#: src/lang.c:360
 msgid	"mark article as unread"
 msgstr	"marquer l'article comme non lu"
 
-#: src/lang.c:358
+#: src/lang.c:361
 msgid	"mark current thread or tagged threads as read"
 msgstr	"marquer le fil actuel ou les fils marqués comme lus"
 
-#: src/lang.c:359
+#: src/lang.c:362
 msgid	"mark thread as unread"
 msgstr	"marquer le fil comme non lu"
 
-#: src/lang.c:360
+#: src/lang.c:363
 msgid	"toggle display of all/selected articles"
 msgstr	"(dés)activer la vue de tout article/articles sélectionnés"
 
-#: src/lang.c:361
+#: src/lang.c:364
 msgid	"display next group"
 msgstr	"afficher le groupe suivant"
 
-#: src/lang.c:362
+#: src/lang.c:365
 msgid	"display previous group"
 msgstr	"afficher le groupe précédent"
 
-#: src/lang.c:363
+#: src/lang.c:366
 msgid	"toggle all selections (all articles)"
 msgstr	"(dés)activer toutes les sélections (tout article)"
 
-#: src/lang.c:364
+#: src/lang.c:367
 msgid	"select group (make \"hot\")"
 msgstr	"sélection du groupe (utiliser \"hot\")"
 
-#: src/lang.c:365
+#: src/lang.c:368
 msgid	"select thread"
 msgstr	"sélectionner le fil"
 
-#: src/lang.c:366
+#: src/lang.c:369
 msgid	"select threads if at least one unread article is selected"
 msgstr	"sél. les fils si au moins un article non lu est sélectionné"
 
-#: src/lang.c:367
+#: src/lang.c:370
 msgid	"select threads that match user specified pattern"
 msgstr	"sélectionner les fils qui correspondent au critère choisi"
 
-#: src/lang.c:368
+#: src/lang.c:371
 msgid	"tag all parts of current multipart-message in order"
 msgstr	"marquer dans l'ordre toutes parties du message multiparties"
 
-#: src/lang.c:369
+#: src/lang.c:372
 msgid	"0 - 9\t  choose thread by number"
 msgstr	"0 - 9\t  choisir le fil par numéro"
 
-#: src/lang.c:370
+#: src/lang.c:373
 msgid	"toggle limit number of articles to get, and reload"
 msgstr	"(dés)activer le nombre limite d'article à charger et à recharger"
 
-#: src/lang.c:371
+#: src/lang.c:374
 msgid	"toggle display of all/unread articles"
 msgstr	"(dés)activer l'affichage de tout article/articles non lus"
 
-#: src/lang.c:372
+#: src/lang.c:375
 msgid	"toggle selection of thread"
 msgstr	"(dés)activer sélection du fil"
 
-#: src/lang.c:373
+#: src/lang.c:376
 msgid	"cycle through threading options available"
 msgstr	"voir toutes les options de groupage disponibles"
 
-#: src/lang.c:374
+#: src/lang.c:377
 msgid	"undo all selections (all articles)"
 msgstr	"annuler toutes sélections (tout article)"
 
-#: src/lang.c:375
+#: src/lang.c:378
 msgid	"untag all tagged threads"
 msgstr	"démarquer tout fil marqué"
 
-#: src/lang.c:376
+#: src/lang.c:379
 msgid	"mark all articles in group as read"
 msgstr	"marquer lu tous les articles du groupe"
 
-#: src/lang.c:377
+#: src/lang.c:380
 msgid	"mark all articles in group as read and move to next unread group"
 msgstr	"marquer lu le groupe et aller au groupe non lu suivant"
 
-#: src/lang.c:378
+#: src/lang.c:381
 msgid	"choose first group in list"
 msgstr	"choisir le 1er groupe de la liste"
 
-#: src/lang.c:379
+#: src/lang.c:382
 msgid	"choose group by name"
 msgstr	"choisir le groupe par nom"
 
-#: src/lang.c:380
+#: src/lang.c:383
 msgid	"0 - 9\t  choose group by number"
 msgstr	"0 - 9\t  choisir un groupe par son numéro"
 
-#: src/lang.c:381
+#: src/lang.c:384
 msgid	"choose range of groups to be affected by next command"
 msgstr	"choisir les groupes affectés par la commande suivante"
 
-#: src/lang.c:382
+#: src/lang.c:385
 msgid	"choose last group in list"
 msgstr	"choisir le dernier groupe de la liste"
 
-#: src/lang.c:383
+#: src/lang.c:386
 msgid	"mark all articles in chosen group unread"
 msgstr	"marquer non lu tout article dans le groupe choisi"
 
-#: src/lang.c:384
+#: src/lang.c:387
 msgid	"move chosen group within list"
 msgstr	"déplacer le groupe sélectionné"
 
-#: src/lang.c:385
+#: src/lang.c:388
 msgid	"choose next group with unread news"
 msgstr	"choisir le groupe suivant ayant articles non lus"
 
-#: src/lang.c:386 src/lang.c:1187
+#: src/lang.c:389 src/lang.c:1197
 msgid	"quit"
 msgstr	"quitter"
 
-#: src/lang.c:387
+#: src/lang.c:390
 msgid	"quit without saving configuration changes"
 msgstr	"quitter sans enregistrer les changements"
 
-#: src/lang.c:388
+#: src/lang.c:391
 msgid	"read chosen group"
 msgstr	"lire le groupe choisi"
 
-#: src/lang.c:389
+#: src/lang.c:392
 msgid	"reset .newsrc (all available articles in groups marked unread)"
 msgstr	"réinitialiser .newsrc (tout sera marqué non lu dans les groupes)"
 
-#: src/lang.c:390
+#: src/lang.c:393
 msgid	"search backwards for a group name"
 msgstr	"recherche arrière d'un groupe"
 
-#: src/lang.c:391
+#: src/lang.c:394
 msgid	" \t  (all searches are case-insensitive and wrap around)"
 msgstr	" \t  (les recherches sont sensibles à la casse)"
 
-#: src/lang.c:392
+#: src/lang.c:395
 msgid	"search forwards for a group name"
 msgstr	"recherche avant d'un groupe"
 
-#: src/lang.c:393
+#: src/lang.c:396
 msgid	"subscribe to chosen group"
 msgstr	"s'abonner au groupe sélectionné"
 
-#: src/lang.c:394
+#: src/lang.c:397
 msgid	"subscribe to groups that match pattern"
 msgstr	"abonnement aux groupes correspondant au critère"
 
-#: src/lang.c:395
+#: src/lang.c:398
 msgid	"reread active file to check for any new news"
 msgstr	"vérifier l'existence de nouveaux articles"
 
-#: src/lang.c:396
+#: src/lang.c:399
 msgid	"toggle display of group name only or group name plus description"
 msgstr	"afficher ou non le nom du groupe ou le nom + sa description"
 
-#: src/lang.c:397
+#: src/lang.c:400
 msgid	"toggle display to show all/unread subscribed groups"
 msgstr	"afficher ou non tous les groupes abonnés non lu"
 
-#: src/lang.c:398
+#: src/lang.c:401
 msgid	"unsubscribe from chosen group"
 msgstr	"se désabonner du groupe sélectionné"
 
-#: src/lang.c:399
+#: src/lang.c:402
 msgid	"unsubscribe from groups that match pattern"
 msgstr	"désabonnement aux groupes correspondant au critère"
 
-#: src/lang.c:400
+#: src/lang.c:403
 msgid	"sort the list of groups"
 msgstr	"trier la liste des groupes"
 
-#: src/lang.c:401
+#: src/lang.c:404
 msgid	"toggle display to show all/subscribed groups"
 msgstr	"afficher ou non tous les groupes abonnés"
 
-#: src/lang.c:402
+#: src/lang.c:405
 msgid	"0 - 9\t  choose article by number"
 msgstr	"0 - 9\t  choisir article par numéro"
 
-#: src/lang.c:403
+#: src/lang.c:406
 msgid	"mark thread as read and return to group index page"
 msgstr	"marquer le fil comme lu et revenir à la liste des groupes"
 
-#: src/lang.c:404
+#: src/lang.c:407
 msgid	"mark thread as read and enter next unread thread or group"
 msgstr	"marquer le fil comme lu et aller dans le fil ou groupe non lu suivant"
 
-#: src/lang.c:405
+#: src/lang.c:408
 msgid	"choose first article in list"
 msgstr	"choisir le 1er article dans la liste"
 
-#: src/lang.c:406
+#: src/lang.c:409
 msgid	"choose last article in list"
 msgstr	"choisir le dernier article dans la liste"
 
 # TRANSLATION TOO LONG
-#: src/lang.c:407
+#: src/lang.c:410
 msgid	"mark article or tagged articles as read and move cursor to next unread article"
 msgstr	"marquer l'article ou les articles marqués comme lus et aller au prochain "
 	"article non lu"
 
-#: src/lang.c:408
+#: src/lang.c:411
 msgid	"read chosen article"
 msgstr	"lire l'article choisi"
 
-#: src/lang.c:409
+#: src/lang.c:412
 msgid	"Display properties\n"
 	"------------------"
 msgstr	"Propriétés de l'affichage\n"
 	"-------------------------"
 
-#: src/lang.c:410
+#: src/lang.c:413
 msgid	"Miscellaneous\n"
 	"-------------"
 msgstr	"Divers\n"
 	"------"
 
-#: src/lang.c:411
+#: src/lang.c:414
 msgid	"Moving around\n"
 	"-------------"
 msgstr	"Navigation\n"
 	"----------"
 
-#: src/lang.c:412
+#: src/lang.c:415
 msgid	"Group/thread/article operations\n"
 	"-------------------------------"
 msgstr	"Opérations sur les Groupes / fils / articles\n"
 	"--------------------------------------------"
 
-#: src/lang.c:414
+#: src/lang.c:417
 msgid	"Group Level Commands"
 msgstr	"Commandes du niveau Groupe"
 
-#: src/lang.c:415
+#: src/lang.c:418
 msgid	"Kill filter added"
 msgstr	"Filtre ajouté"
 
-#: src/lang.c:416
+#: src/lang.c:419
 msgid	"Auto-selection filter added"
 msgstr	"Filtre à auto-sélection ajouté"
 
-#: src/lang.c:417
+#: src/lang.c:420
 msgid	"All parts tagged"
 msgstr	"Toutes les parties sont marquées"
 
-#: src/lang.c:418
+#: src/lang.c:421
 msgid	"Storing article for later posting"
 msgstr	"Stockage de l'article afin de le poster plus tard"
 
-#: src/lang.c:419
+#: src/lang.c:422
 msgid	"Please enter a valid character"
 msgstr	"Entrez un caractère valide svp"
 
-#: src/lang.c:420
+#: src/lang.c:423
 #, c-format
 msgid	"Missing part #%d"
 msgstr	"Partie manquante #%d"
 
-#: src/lang.c:421
+#: src/lang.c:424
 msgid	"*** No postponed articles ***"
 msgstr	"*** Aucun brouillon ***"
 
-#: src/lang.c:422
+#: src/lang.c:425
 msgid	"Not a multi-part message"
 msgstr	"N'est pas un message en plusieurs parties"
 
-#: src/lang.c:423
+#: src/lang.c:426
 msgid	"You are not subscribed to this group"
 msgstr	"Vous n'êtes pas abonné à ce groupe"
 
-#: src/lang.c:424
+#: src/lang.c:427
 msgid	"No previous expression"
 msgstr	"Pas d'expression précédente"
 
-#: src/lang.c:425
+#: src/lang.c:428
 msgid	"Operation disabled in no-overwrite mode"
 msgstr	"Opération désactivée en mode lecture"
 
 #. TODO: replace hardcoded key-name in txt_info_postponed
-#: src/lang.c:427
+#: src/lang.c:430
 #, c-format
 msgid	"%d postponed %s, reuse with ^O...\n"
 msgstr	"%d %s brouillon(s), réutilisez-le(s) avec ^O...\n"
 
-#: src/lang.c:428
+#: src/lang.c:431
 msgid	"X-Conversion-Note: multipart/alternative contents have been removed.\n"
 	"  To get the whole article, turn alternative handling OFF in the Option Menu\n"
 msgstr	"X-Conversion-Note : contenus multiparties/alternatifs retirés.\n"
@@ -1822,21 +1826,21 @@ msgstr	"X-Conversion-Note : contenus mul
 	"dans\n"
 	"  le Menu Option.\n"
 
-#: src/lang.c:430
+#: src/lang.c:433
 #, c-format
 msgid	"Save filename for %s/%s is a mailbox. Attachment not saved"
 msgstr	"Enregistrer le fichier sous %s %s est une bàl. PJ non enregistrée"
 
-#: src/lang.c:431
+#: src/lang.c:434
 msgid	"TeX2Iso encoded article"
 msgstr	"Article encodé en TeX2Iso"
 
-#: src/lang.c:432
+#: src/lang.c:435
 msgid	"incomplete "
 msgstr	"incomplet "
 
 #. TODO: replace hardcoded key-names
-#: src/lang.c:434
+#: src/lang.c:437
 #, c-format
 msgid	"\n"
 	"Welcome to %s, a full screen threaded Netnews reader. It can read news "
@@ -1899,129 +1903,138 @@ msgstr	"\n"
 	"Si vous constatez des bogues ou tout autre problème, envoyez s'il vous plaît "
 	"un rapport de bogue/commentaires à %s via la touche 'R'.\n"
 
-#: src/lang.c:450
+#: src/lang.c:453
 #, c-format
 msgid	"Invalid  From: %s  line. Read the INSTALL file again."
 msgstr	"En-tête From: %s invalide. Lisez le fichier INSTALL une 2e fois."
 
-#: src/lang.c:451
+#: src/lang.c:454
 #, c-format
 msgid	"Invalid  Sender:-header %s"
 msgstr	"En-tête Sender: %s invalide"
 
-#: src/lang.c:452
+#: src/lang.c:455
 msgid	"Inverse video disabled"
 msgstr	"Vidéo inversée désactivée"
 
-#: src/lang.c:453
+#: src/lang.c:456
 msgid	"Inverse video enabled"
 msgstr	"Vidéo inversée activée"
 
-#: src/lang.c:455
+#: src/lang.c:458
 #, c-format
 msgid	"Missing definition for %s\n"
 msgstr	"Définition manquante pour %s\n"
 
-#: src/lang.c:456
+#: src/lang.c:459
 #, c-format
 msgid	"Invalid key definition '%s'\n"
 msgstr	"Définition de clé invalide '%s'\n"
 
-#: src/lang.c:457
+#: src/lang.c:460
 #, c-format
 msgid	"Invalid keyname '%s'\n"
 msgstr	"Nom de clé invalide '%s'\n"
 
-#: src/lang.c:458
+#: src/lang.c:462
 #, c-format
 msgid	"Key '%s' is defined for both %s%s and %s%s\n"
 msgstr	"Clé '%s' est définie pour %s%s et %s%s\n"
 
-#: src/lang.c:459
+#: src/lang.c:464
+#, c-format
+msgid	"Keymap file was upgraded to version %s\n"
+msgstr	"Le fichier keymap a été mis à jour en version %s\n"
+
+#: src/lang.c:465
 #, c-format
 msgid	"Kill From:     [%s] (y/n): "
 msgstr	"   De : [%s] (o/n) : "
 
-#: src/lang.c:460
+#: src/lang.c:466
 msgid	"Kill Lines: (</>num): "
 msgstr	"Nombre de lignes (</>num)    : "
 
-#: src/lang.c:461
+#: src/lang.c:467
 msgid	"Kill Article Menu"
 msgstr	"Créer un filtre"
 
-#: src/lang.c:462
+#: src/lang.c:468
 #, c-format
 msgid	"Kill Msg-Id:   [%s] (f/l/o/n): "
 msgstr	"  MID : [%s] (t/d/a/n) : "
 
-#: src/lang.c:463
+#: src/lang.c:469
 msgid	"Kill pattern scope  : "
 msgstr	"Filtre s'appliquant à : "
 
-#: src/lang.c:464
+#: src/lang.c:470
 #, c-format
 msgid	"Kill Subject:  [%s] (y/n): "
 msgstr	"Sujet : [%s] (o/n) : "
 
-#: src/lang.c:465
+#: src/lang.c:471
 msgid	"Kill text pattern   : "
 msgstr	"Texte à filtrer : "
 
-#: src/lang.c:466
+#: src/lang.c:472
 msgid	"Kill time in days   : "
 msgstr	"Durée du filtre              : "
 
-#: src/lang.c:468
+#: src/lang.c:474
 msgid	"Last"
 msgstr	"Dernier"
 
-#: src/lang.c:469
+#: src/lang.c:475
 msgid	"-- Last response --"
 msgstr	"-- Dernière réponse --"
 
-#: src/lang.c:470
+#: src/lang.c:476
 #, c-format
 msgid	"Lines %s  "
 msgstr	"%s lignes "
 
-#: src/lang.c:472
+#: src/lang.c:478
 msgid	"Message-ID: line              "
 msgstr	"l'en-tête 'Message-ID:'"
 
-#: src/lang.c:474
+#: src/lang.c:479
+msgid	"Mail"
+msgstr	"Envoyer"
+
+#: src/lang.c:480
 msgid	"mailbox "
 msgstr	"bàl"
 
-#: src/lang.c:475
+#: src/lang.c:481
 #, c-format
 msgid	"Mail article(s) to [%.*s]> "
 msgstr	"Envoyer article(s) à [%.*s] > "
 
-#: src/lang.c:476
+#: src/lang.c:482
 #, c-format
 msgid	"Mailing log to %s\n"
 msgstr	"Envoi de l'historique à %s\n"
 
-#: src/lang.c:477
+#: src/lang.c:483
 msgid	"Mail bug report..."
 msgstr	"Envoi d'un rapport de bug..."
 
-#: src/lang.c:478
+#: src/lang.c:484
 #, c-format
 msgid	"Mail BUG REPORT to %s?"
 msgstr	"Signaler LE BUG à %s ?"
 
-#: src/lang.c:479
+#: src/lang.c:485
 msgid	"Mailed"
 msgstr	"Envoyé"
 
-#: src/lang.c:480
+#: src/lang.c:486
 #, c-format
 msgid	"Mailing to %s..."
 msgstr	"Envoi à %s..."
 
-#: src/lang.c:481
+#: src/lang.c:487
 msgid	"# [Mail/Save] active file. Format is like news active file:\n"
 	"#   groupname  max.artnum  min.artnum  /dir\n"
 	"# The 4th field is the basedir (ie. ~/Mail or ~/News)\n"
@@ -2032,282 +2045,282 @@ msgstr	"# [Envoyer/Enregistrer] fichier 
 	"# Le 4ème champ est le répertoire racine utilisé\n"
 	"# (p.e. ~/Mail ou ~/News)\n"
 
-#: src/lang.c:484
+#: src/lang.c:490
 #, c-format
 msgid	"%s marked as unread"
 msgstr	"%s marqué comme non lu"
 
-#: src/lang.c:485
+#: src/lang.c:491
 #, c-format
 msgid	"Marked %d of %d tagged %s as read"
 msgstr	"%d marqué(s) sur %d sélectionné(s) %s comme lu(s)"
 
-#: src/lang.c:486
+#: src/lang.c:492
 #, c-format
 msgid	"Mark all articles as read%s?"
 msgstr	"Marquer tous les articles comme lus%s ?"
 
-#: src/lang.c:487
+#: src/lang.c:493
 #, c-format
 msgid	"Mark %s=tagged articles, %s=current article, %s=quit: "
 msgstr	"Marquer %s=art. marqués, %s=article actuel, %s=quitter : "
 
-#: src/lang.c:488
+#: src/lang.c:494
 #, c-format
 msgid	"Mark group %s as read?"
 msgstr	"Marquer le groupe %s comme lu ?"
 
-#: src/lang.c:489
+#: src/lang.c:495
 #, c-format
 msgid	"Mark thread as read%s?"
 msgstr	"Marquer le fil comme lu%s ?"
 
-#: src/lang.c:490
+#: src/lang.c:496
 #, c-format
 msgid	"Mark %s=tagged articles/threads, %s=current thread, %s=quit: "
 msgstr	"Marquer %s=art./fils marqués, %s=fil actuel, %s=quitter : "
 
-#: src/lang.c:491
+#: src/lang.c:497
 #, c-format
 msgid	"Matching %s groups..."
 msgstr	"%s groupes correspondants..."
 
-#: src/lang.c:492 src/lang.c:496
+#: src/lang.c:498 src/lang.c:502
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s=search pattern; %s=kill/select"
 msgstr	"<n>=voir 'n'; %s=non lu suivant; %s=rechercher; %s=filtrer/sél."
 
-#: src/lang.c:493
+#: src/lang.c:499
 #, c-format
 msgid	"%s=author search; %s=catchup; %s=line down; %s=line up; %s=mark read; %s=list "
 	"thread"
 msgstr	"%s=rech. auteur; %s=tout lu; %s=bas; %s=haut; %s=marquer lu; %s=voir fil"
 
-#: src/lang.c:494
+#: src/lang.c:500
 #, c-format
 msgid	"%s=line up; %s=line down; %s=page up; %s=page down; %s=top; %s=bottom"
 msgstr	"%s=haut; %s=bas; %s=haut de page; %s=bas de page; %s=haut; %s=bas"
 
-#: src/lang.c:495
+#: src/lang.c:501
 #, c-format
 msgid	"%s=search forwards; %s=search backwards; %s=quit"
 msgstr	"%s=recherche avant; %s=recherche arrière; %s=quitter"
 
-#: src/lang.c:497
+#: src/lang.c:503
 #, c-format
 msgid	"%s=author search; %s=body search; %s=catchup; %s=followup; %s=mark read"
 msgstr	"%s=rech. auteur; %s=rech. corps; %s=tout marquer lu; %s=suivi; %s=marquer lu"
 
-#: src/lang.c:498
+#: src/lang.c:504
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s,%s=search pattern; %s=catchup"
 msgstr	"<n>=voir 'n'; %s=non lu suivant; %s,%s=rechercher; %s=tout lu"
 
-#: src/lang.c:499
+#: src/lang.c:505
 #, c-format
 msgid	"%s=line down; %s=line up; %s=help; %s=move; %s=quit; %s=toggle all/unread"
 msgstr	"%s=bas; %s=haut; %s=aide; %s=déplacer; %s=quitter; %s=voir lu/non lu"
 
-#: src/lang.c:500
+#: src/lang.c:506
 #, c-format
 msgid	"%s=subscribe; %s=sub pattern; %s=unsubscribe; %s=unsub pattern; %s=yank in/out"
 msgstr	"%s=abonner; %s=sous-critère; %s=désabonner; %s=critère; %s=liste des groupes"
 
-#: src/lang.c:501
+#: src/lang.c:507
 #, c-format
 msgid	"<n>=set current to n; %s=next unread; %s=catchup; %s=display toggle"
 msgstr	"<n>=voir 'n'; %s=non lu suivant; %s=tout lu; %s=basculer l'affichage"
 
-#: src/lang.c:502
+#: src/lang.c:508
 #, c-format
 msgid	"%s=help; %s=line down; %s=line up; %s=quit; %s=tag; %s=mark unread"
 msgstr	"%s=aide; %s=bas; %s=haut; %s=quitter; %s=marquer; %s=marquer non lu"
 
-#: src/lang.c:503
+#: src/lang.c:509
 msgid	"--More--"
 msgstr	"-- Suite --"
 
-#: src/lang.c:504
+#: src/lang.c:510
 #, c-format
 msgid	"Moving %s..."
 msgstr	"Déplacement de %s..."
 
-#: src/lang.c:506
+#: src/lang.c:512
 msgid	", name: "
 msgstr	", nom : "
 
-#: src/lang.c:507
+#: src/lang.c:513
 #, c-format
 msgid	"Goto newsgroup [%s]> "
 msgstr	"Aller dans le groupe [%s]> "
 
-#: src/lang.c:508
+#: src/lang.c:514
 msgid	"newsgroups"
 msgstr	"groupes"
 
-#: src/lang.c:509
+#: src/lang.c:515
 #, c-format
 msgid	"Position %s in group list (1,2,..,$) [%d]> "
 msgstr	"Placer %s dans la liste des groupes (1,2,..,$) [%d]> "
 
-#: src/lang.c:510
+#: src/lang.c:516
 msgid	"newsgroup"
 msgstr	"groupe"
 
-#: src/lang.c:511
+#: src/lang.c:517
 msgid	"Try and save newsrc file again?"
 msgstr	"Encore essayer et enregistrer le newsrc ?"
 
-#: src/lang.c:512
+#: src/lang.c:518
 msgid	"Warning: No newsgroups were written to your newsrc file. Save aborted."
 msgstr	"Attention : Aucuns groupes n'a été écrits dans le newsrc. Enregistrement "
 	"annulé."
 
-#: src/lang.c:513
+#: src/lang.c:519
 msgid	"newsrc file saved successfully.\n"
 msgstr	"le newsrc a été enregistré avec succès.\n"
 
-#: src/lang.c:514
+#: src/lang.c:520
 msgid	"-- Next response --"
 msgstr	"-- Réponse suivante --"
 
-#: src/lang.c:515
+#: src/lang.c:521
 #, c-format
 msgid	"NNTP authorization password not found for %s"
 msgstr	"Mot de passe NNTP introuvable pour %s"
 
-#: src/lang.c:516
+#: src/lang.c:522
 msgid	"No  "
 msgstr	"Non "
 
-#: src/lang.c:517
+#: src/lang.c:523
 msgid	"*** No articles ***"
 msgstr	"*** Aucun article ***"
 
-#: src/lang.c:518
+#: src/lang.c:524
 msgid	"No articles have been posted"
 msgstr	"Aucun article n'a été posté"
 
-#: src/lang.c:519
+#: src/lang.c:525
 msgid	"*** No description ***"
 msgstr	"*** Aucune description ***"
 
-#: src/lang.c:520
+#: src/lang.c:526
 msgid	"No filename"
 msgstr	"Pas de nom de fichier"
 
-#: src/lang.c:521
+#: src/lang.c:527
 msgid	"No group"
 msgstr	"Pas de groupe"
 
-#: src/lang.c:522
+#: src/lang.c:528
 msgid	"*** No groups ***"
 msgstr	"*** Aucun groupe ***"
 
-#: src/lang.c:523
+#: src/lang.c:529
 msgid	"No more groups to read"
 msgstr	"Plus de groupes à lire"
 
-#: src/lang.c:524
+#: src/lang.c:530
 msgid	"No last message"
 msgstr	"Aucun dernier message"
 
-#: src/lang.c:525
+#: src/lang.c:531
 msgid	"No mail address"
 msgstr	"Aucune adresse email"
 
-#: src/lang.c:526
+#: src/lang.c:532
 msgid	"No articles marked for saving"
 msgstr	"Aucun article marqué à enregistrer"
 
-#: src/lang.c:527
+#: src/lang.c:533
 msgid	"No match"
 msgstr	"Aucun résultat"
 
-#: src/lang.c:528
+#: src/lang.c:534
 msgid	"No more groups"
 msgstr	"Plus de groupes"
 
-#: src/lang.c:529
+#: src/lang.c:535
 msgid	"No newsgroups"
 msgstr	"Aucun groupe"
 
-#: src/lang.c:530
+#: src/lang.c:536
 msgid	"No next unread article"
 msgstr	"Aucun article non lu suivant"
 
-#: src/lang.c:531
+#: src/lang.c:537
 msgid	"No previous group"
 msgstr	"Aucun groupe précédent"
 
-#: src/lang.c:532
+#: src/lang.c:538
 msgid	"No previous unread article"
 msgstr	"Aucun article non lu précédent"
 
-#: src/lang.c:533
+#: src/lang.c:539
 msgid	"No responses"
 msgstr	"Aucune réponse"
 
-#: src/lang.c:534
+#: src/lang.c:540
 msgid	"No responses to list in current thread"
 msgstr	"Aucune réponse à afficher dans le fil actuel"
 
-#: src/lang.c:535
+#: src/lang.c:541
 msgid	"No search string"
 msgstr	"Aucun terme à rechercher"
 
-#: src/lang.c:536
+#: src/lang.c:542
 msgid	"No subject"
 msgstr	"Aucun sujet"
 
-#: src/lang.c:538
+#: src/lang.c:544
 #, c-format
 msgid	"%s: Terminal must have clear to end-of-line (ce)\n"
 msgstr	"%s: Terminal doit avoir la fonction clear to end-of-line (ce)\n"
 
-#: src/lang.c:539
+#: src/lang.c:545
 #, c-format
 msgid	"%s: Terminal must have clear to end-of-screen (cd)\n"
 msgstr	"%s: Terminal doit avoir la fonction clear to end-of-screen (cd)\n"
 
-#: src/lang.c:540
+#: src/lang.c:546
 #, c-format
 msgid	"%s: Terminal must have clearscreen (cl) capability\n"
 msgstr	"%s: Terminal doit avoir la fonction clearscreen (cl)\n"
 
-#: src/lang.c:541
+#: src/lang.c:547
 #, c-format
 msgid	"%s: Terminal must have cursor motion (cm)\n"
 msgstr	"%s: Terminal doit avoir la fonction cursor motion (cm)\n"
 
-#: src/lang.c:542
+#: src/lang.c:548
 #, c-format
 msgid	"%s: TERM variable must be set to use screen capabilities\n"
 msgstr	"%s: la variable TERM doit être utilisée pour utiliser les fonctions\n"
 
-#: src/lang.c:544
+#: src/lang.c:550
 #, c-format
 msgid	"No viewer found for %s/%s\n"
 msgstr	"Visualiseur introuvable pour %s/%s\n"
 
-#: src/lang.c:545
+#: src/lang.c:551
 msgid	"Newsgroup does not exist on this server"
 msgstr	"Groupe inexistant sur ce serveur"
 
-#: src/lang.c:546
+#: src/lang.c:552
 #, c-format
 msgid	"Group %s not found in active file"
 msgstr	"Groupe %s introuvable dans le fichier active"
 
-#: src/lang.c:547
+#: src/lang.c:553
 msgid	"c)reate it, use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr	"c)réer, utiliser a)utre nom, utiliser .newsrc par d)éfaut, q)uitter tin : "
 
-#: src/lang.c:548
+#: src/lang.c:554
 msgid	"use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr	"utiliser a)utre nom, utiliser .newsrc par d)éfaut, q)uitter tin : "
 
-#: src/lang.c:549
+#: src/lang.c:555
 #, c-format
 msgid	"# NNTP-server -> newsrc translation table and NNTP-server\n"
 	"# shortname list for %s %s\n"
@@ -2335,40 +2348,40 @@ msgstr	"# Serveur NNTP -> tableau de cor
 	"#   news.ka.nu    /tmp/nrc-nu      kanu    nu\n"
 	"#\n"
 
-#: src/lang.c:556
+#: src/lang.c:562
 msgid	"Only"
 msgstr	"Actuel"
 
-#: src/lang.c:557
+#: src/lang.c:563
 #, c-format
 msgid	"Option not enabled. Recompile with %s."
 msgstr	"Option non activée. Recompilez avec %s."
 
-#: src/lang.c:558
+#: src/lang.c:564
 msgid	"Options Menu"
 msgstr	"Menu Options"
 
-#: src/lang.c:561
+#: src/lang.c:567
 #, c-format
 msgid	"Error in regex: %s at pos. %d '%s'"
 msgstr	"Erreur dans la regex : %s à %d '%s'"
 
-#: src/lang.c:562
+#: src/lang.c:568
 #, c-format
 msgid	"Error in regex: pcre internal error %d"
 msgstr	"Erreur dans la regex : erreur pcre interne %d"
 
-#: src/lang.c:563
+#: src/lang.c:569
 #, c-format
 msgid	"Error in regex: study - pcre internal error %s"
 msgstr	"Erreur dans la regex : study - erreur pcre interne %s"
 
-#: src/lang.c:564
+#: src/lang.c:570
 msgid	"Post a followup..."
 msgstr	"Postage du suivi..."
 
 #. TODO: replace hardcoded key-name in txt_post_error_ask_postpone
-#: src/lang.c:566
+#: src/lang.c:572
 msgid	"An error has occurred while posting the article. If you think that this\n"
 	"error is temporary or otherwise correctable, you can postpone the article\n"
 	"and pick it up again with ^O later.\n"
@@ -2376,275 +2389,275 @@ msgstr	"Une erreur est survenue lors du 
 	"cette erreur est temporaire ou alors corrigeable, vous pouvez enregistrer\n"
 	"l'article comme brouillon et le réutiliser plus tard grâce à la commande ^O.\n"
 
-#: src/lang.c:569
+#: src/lang.c:575
 msgid	"Posted articles history"
 msgstr	"Historique des articles postés"
 
-#: src/lang.c:570
+#: src/lang.c:576
 #, c-format
 msgid	"Post to newsgroup(s) [%s]> "
 msgstr	"Poster dans groupe(s) [%s]> "
 
-#: src/lang.c:571
+#: src/lang.c:577
 msgid	"-- post processing started --"
 msgstr	"-- post-traitement lancé --"
 
-#: src/lang.c:572
+#: src/lang.c:578
 msgid	"-- post processing completed --"
 msgstr	"-- post-traitement terminé --"
 
-#: src/lang.c:573
+#: src/lang.c:579
 #, c-format
 msgid	"Post subject [%s]> "
 msgstr	"Poster le sujet [%s] > "
 
-#: src/lang.c:574
+#: src/lang.c:580
 msgid	"# Summary of mailed/posted messages viewable by 'W' command from within tin.\n"
 msgstr	"# Sommaire des messages envoyés/postés visible par la commande 'W' depuis "
 	"tin.\n"
 
-#: src/lang.c:575
+#: src/lang.c:581
 msgid	"Posting article..."
 msgstr	"Postage de l'article..."
 
-#: src/lang.c:576
+#: src/lang.c:582
 msgid	"Post postponed articles [%%s]? (%s/%s/%s/%s/%s): "
 msgstr	"Poster les brouillons [%%s] ? (%s/%s/%s/%s/%s) : "
 
-#: src/lang.c:577
+#: src/lang.c:583
 #, c-format
 msgid	"Hot %s"
 msgstr	"%s sélectionné"
 
-#: src/lang.c:578
+#: src/lang.c:584
 #, c-format
 msgid	"Tagged %s"
 msgstr	"%s marqué"
 
-#: src/lang.c:579
+#: src/lang.c:585
 #, c-format
 msgid	"Untagged %s"
 msgstr	"%s non marqué"
 
-#: src/lang.c:580
+#: src/lang.c:586
 msgid	"Processing mail messages marked for deletion."
 msgstr	"Traitement des emails enregistrés marqués pour effacement."
 
-#: src/lang.c:581
+#: src/lang.c:587
 msgid	"Processing saved articles marked for deletion."
 msgstr	"Traitement des articles enregistrés marqués pour effacement."
 
-#: src/lang.c:582
+#: src/lang.c:588
 #, c-format
 msgid	"Accept Followup-To? %s=post, %s=ignore, %s=quit: "
 msgstr	"Accepter le Suivi ? %s=poster, %s=ignorer, %s=quitter : "
 
-#: src/lang.c:583
+#: src/lang.c:589
 msgid	"Article unchanged, abort mailing?"
 msgstr	"Article inchangé, annuler l'envoi ?"
 
-#: src/lang.c:584
+#: src/lang.c:590
 #, c-format
 msgid	"Do you want to see postponed articles (%d)?"
 msgstr	"Voulez-vous voir les brouillons (%d) ?"
 
-#: src/lang.c:586
+#: src/lang.c:592
 msgid	"Add quick kill filter?"
 msgstr	"Ajouter rapidement un filtre ?"
 
-#: src/lang.c:587
+#: src/lang.c:593
 msgid	"Add quick selection filter?"
 msgstr	"Ajouter rapidement une règle ?"
 
-#: src/lang.c:588
+#: src/lang.c:594
 msgid	"Do you really want to quit?"
 msgstr	"Voulez-vous réellement quitter ?"
 
-#: src/lang.c:589
+#: src/lang.c:595
 msgid	"%s=edit cancel message, %s=quit, %s=delete (cancel) [%%s]: "
 msgstr	"%s=éditer message d'annulation, %s=quitter, %s=effacer (annuler) [%%s] : "
 
-#: src/lang.c:590
+#: src/lang.c:596
 msgid	"You have tagged articles in this group - quit anyway?"
 msgstr	"Vous avez des articles marqués dans ce groupe - quitter quand même ?"
 
-#: src/lang.c:591
+#: src/lang.c:597
 #, c-format
 msgid	"%s=quit, %s=edit, %s=postpone: "
 msgstr	"%s=quitter, %s=éditer, %s=brouillon : "
 
-#: src/lang.c:592
+#: src/lang.c:598
 #, c-format
 msgid	"%s=quit %s=edit %s=save kill description: "
 msgstr	"%s=quitter, %s=éditer, %s=enregistrer le filtre : "
 
-#: src/lang.c:593
+#: src/lang.c:599
 #, c-format
 msgid	"%s=quit %s=edit %s=save select description: "
 msgstr	"%s=quitter %s=éditer %s=enregistrer la règle : "
 
-#: src/lang.c:594
+#: src/lang.c:600
 msgid	"Do you really want to quit without saving your configuration?"
 msgstr	"Voulez-vous réellement quitter sans enregistrer votre configuration ?"
 
-#: src/lang.c:597
+#: src/lang.c:603
 msgid	"Invalid range - valid are '0-9.$' eg. 1-$"
 msgstr	"Champ invalide - '0-9.$' pe. 1-$ est valide"
 
-#: src/lang.c:598
+#: src/lang.c:604
 msgid	"Do you want to abort this operation?"
 msgstr	"Voulez-vous annuler cette opération ?"
 
-#: src/lang.c:599
+#: src/lang.c:605
 msgid	"Do you want to exit tin immediately?"
 msgstr	"Voulez-vous quitter tin immédiatement ?"
 
-#: src/lang.c:600
+#: src/lang.c:606
 msgid	"Read response> "
 msgstr	"Lire la réponse> "
 
-#: src/lang.c:601
+#: src/lang.c:607
 msgid	"Reading ('q' to quit)..."
 msgstr	"Lecture ('q' pour quitter)..."
 
-#: src/lang.c:602
+#: src/lang.c:608
 #, c-format
 msgid	"Reading %sarticles..."
 msgstr	"Lecture de %sarticles..."
 
-#: src/lang.c:603
+#: src/lang.c:609
 #, c-format
 msgid	"Reading %sattributes file...\n"
 msgstr	"Lecture du fichier %sattributes...\n"
 
-#: src/lang.c:604
+#: src/lang.c:610
 #, c-format
 msgid	"Reading %sconfig file...\n"
 msgstr	"Lecture du fichier %sconfig...\n"
 
-#: src/lang.c:605
+#: src/lang.c:611
 msgid	"Reading filter file...\n"
 msgstr	"Lecture du fichier filter...\n"
 
-#: src/lang.c:606
+#: src/lang.c:612
 #, c-format
 msgid	"Reading %s groups..."
 msgstr	"Lecture de %s groupes..."
 
-#: src/lang.c:607
+#: src/lang.c:613
 msgid	"Reading input history file...\n"
 msgstr	"Lecture du fichier d'historique...\n"
 
-#: src/lang.c:608
+#: src/lang.c:614
 msgid	"Reading keymap file...\n"
 msgstr	"Lecture du fichier keymap...\n"
 
-#: src/lang.c:609
+#: src/lang.c:615
 msgid	"Reading groups from active file... "
 msgstr	"Lecture des groupes depuis le fichier active... "
 
-#: src/lang.c:610
+#: src/lang.c:616
 msgid	"Reading groups from newsrc file... "
 msgstr	"Lecture des groupes depuis le fichier newsrc... "
 
-#: src/lang.c:611
+#: src/lang.c:617
 msgid	"Reading newsgroups file... "
 msgstr	"Lecture du fichier newsgroups... "
 
-#: src/lang.c:612
+#: src/lang.c:618
 msgid	"Reading newsrc file..."
 msgstr	"Lecture du fichier newsrc..."
 
-#: src/lang.c:614
+#: src/lang.c:620
 #, c-format
 msgid	"(%d:%02d remaining)"
 msgstr	"(%d:%02d restant)"
 
-#: src/lang.c:616
+#: src/lang.c:622
 #, c-format
 msgid	"Bogus group %s removed."
 msgstr	"Effacement du groupe corrompu %s."
 
-#: src/lang.c:617
+#: src/lang.c:623
 #, c-format
 msgid	"Error: rename %s to %s"
 msgstr	"Erreur : renommer %s à %s"
 
-#: src/lang.c:618
+#: src/lang.c:624
 msgid	"Reply to author..."
 msgstr	"Répondre à l'auteur..."
 
-#: src/lang.c:619
+#: src/lang.c:625
 msgid	"Repost"
 msgstr	"Reposter"
 
-#: src/lang.c:620
+#: src/lang.c:626
 msgid	"Reposting article..."
 msgstr	"Repostage de l'article..."
 
-#: src/lang.c:621
+#: src/lang.c:627
 #, c-format
 msgid	"Repost article(s) to group(s) [%s]> "
 msgstr	"Reposter article(s) dans groupe(s) [%s]> "
 
-#: src/lang.c:622
+#: src/lang.c:628
 msgid	"Reset newsrc?"
 msgstr	"Réinitialiser newsrc ?"
 
-#: src/lang.c:623
+#: src/lang.c:629
 msgid	"Responses have been directed to the following newsgroups"
 msgstr	"Les réponses ont été redirigées vers les groupes suivants"
 
-#: src/lang.c:624
+#: src/lang.c:630
 #, c-format
 msgid	"Responses have been directed to poster. %s=mail, %s=post, %s=quit: "
 msgstr	"Les réponses ont été redirigées à l'auteur. %s=mail, %s=poster, %s=quitter : "
 
-#: src/lang.c:625
+#: src/lang.c:631
 #, c-format
 msgid	"RespNo %4d of %4d"
 msgstr	"Réponse %4d sur %4d"
 
-#: src/lang.c:626
+#: src/lang.c:632
 msgid	"Press <RETURN> to continue..."
 msgstr	"Appuyez sur <RETOUR> pour continuer..."
 
-#: src/lang.c:628
+#: src/lang.c:634
 #, c-format
 msgid	"Select From    [%s] (y/n): "
 msgstr	"   De : [%s] (o/n) : "
 
-#: src/lang.c:629
+#: src/lang.c:635
 msgid	"Select Lines: (</>num): "
 msgstr	"Nombre de lignes (</>num)    : "
 
-#: src/lang.c:630
+#: src/lang.c:636
 msgid	"Auto-select Article Menu"
 msgstr	"Créer une règle"
 
-#: src/lang.c:631
+#: src/lang.c:637
 #, c-format
 msgid	"Select Msg-Id  [%s] (f/l/o/n): "
 msgstr	"  MID : [%s] (t/d/a/n) : "
 
-#: src/lang.c:632
+#: src/lang.c:638
 msgid	"Select pattern scope: "
 msgstr	"Règle s'appliquant à : "
 
-#: src/lang.c:633
+#: src/lang.c:639
 #, c-format
 msgid	"Select Subject [%s] (y/n): "
 msgstr	"Sujet : [%s] (o/n) : "
 
-#: src/lang.c:634
+#: src/lang.c:640
 msgid	"Select text pattern : "
 msgstr	"Texte ou terme  : "
 
-#: src/lang.c:635
+#: src/lang.c:641
 msgid	"Select time in days   : "
 msgstr	"Durée de la règle            : "
 
-#: src/lang.c:636
+#: src/lang.c:642
 #, c-format
 msgid	"# %s server configuration file\n"
 	"# This file was automatically saved by %s %s %s (\"%s\")\n"
@@ -2662,222 +2675,222 @@ msgstr	"# Fichier de configuration serve
 	"# Enfin, ne touchez pas à ce fichier si vous ne savez pas quoi y faire.\n"
 	"############################################################################\n"
 
-#: src/lang.c:642
+#: src/lang.c:648
 msgid	"Showing unread groups only"
 msgstr	"Afficher uniquement les groupes non lus"
 
-#: src/lang.c:643
+#: src/lang.c:649
 msgid	"Subject: line (ignore case)   "
 msgstr	"l'en-tête 'Subject:' (ignorer la casse)"
 
-#: src/lang.c:644
+#: src/lang.c:650
 msgid	"Subject: line (case sensitive)"
 msgstr	"l'en-tête 'Subject:' (casse sensible)"
 
-#: src/lang.c:645
+#: src/lang.c:651
 msgid	"Save"
 msgstr	"Enregistrer"
 
-#: src/lang.c:646
+#: src/lang.c:652
 #, c-format
 msgid	"Save '%s' (%s/%s)?"
 msgstr	"Enregistrer '%s' (%s/%s) ?"
 
-#: src/lang.c:647
+#: src/lang.c:653
 msgid	"Save configuration before continuing?"
 msgstr	"Enregistrer la configuration avant de continuer ?"
 
-#: src/lang.c:648
+#: src/lang.c:654
 msgid	"Save filename> "
 msgstr	"Enregistrer sous le nom de fichier > "
 
-#: src/lang.c:649
+#: src/lang.c:655
 msgid	"Saved"
 msgstr	"Enregistré"
 
-#: src/lang.c:650
+#: src/lang.c:656
 #, c-format
 msgid	"%4d unread (%4d hot) %s in %s\n"
 msgstr	"%4d non lu (%4d sél.) %s dans %s\n"
 
-#: src/lang.c:651
+#: src/lang.c:657
 #, c-format
 msgid	"Saved %s...\n"
 msgstr	"Enregistrement de %s...\n"
 
-#: src/lang.c:652
+#: src/lang.c:658
 msgid	"Nothing was saved"
 msgstr	"Rien n'a été enregistré"
 
-#: src/lang.c:653
+#: src/lang.c:659
 #, c-format
 msgid	"\n"
 	"%s %d %s from %d %s\n"
 msgstr	"\n"
 	"%s %d %s de %d %s\n"
 
-#: src/lang.c:654
+#: src/lang.c:660
 #, c-format
 msgid	"-- %s saved to %s%s --"
 msgstr	"-- %s enregistré sous %s%s --"
 
-#: src/lang.c:655
+#: src/lang.c:661
 #, c-format
 msgid	"-- %s saved to %s - %s --"
 msgstr	"-- %s enregistré sous %s - %s --"
 
-#: src/lang.c:656
+#: src/lang.c:662
 msgid	"Saving..."
 msgstr	"Enregistrement..."
 
-#: src/lang.c:657
+#: src/lang.c:663
 #, c-format
 msgid	"%s: Screen initialization failed"
 msgstr	"%s : Échec de l'initialisation de l'écran"
 
-#: src/lang.c:659
+#: src/lang.c:665
 #, c-format
 msgid	"%s: screen is too small\n"
 msgstr	"%s : l'écran est trop petit\n"
 
-#: src/lang.c:661
+#: src/lang.c:667
 #, c-format
 msgid	"screen is too small, %s is exiting\n"
 msgstr	"l'écran est trop petit, %s quitte\n"
 
-#: src/lang.c:662
+#: src/lang.c:668
 #, c-format
 msgid	"Search backwards [%s]> "
 msgstr	"Recherche arrière [%s] > "
 
-#: src/lang.c:663
+#: src/lang.c:669
 #, c-format
 msgid	"Search body [%s]> "
 msgstr	"Rechercher dans le corps [%s] > "
 
-#: src/lang.c:664
+#: src/lang.c:670
 #, c-format
 msgid	"Search forwards [%s]> "
 msgstr	"Recherche avant [%s] > "
 
-#: src/lang.c:665
+#: src/lang.c:671
 msgid	"Searching..."
 msgstr	"Recherche..."
 
-#: src/lang.c:666
+#: src/lang.c:672
 #, c-format
 msgid	"Searching article %d of %d ('q' to abort)..."
 msgstr	"Recherche article %d sur %d ('q' pour annuler)..."
 
-#: src/lang.c:667
+#: src/lang.c:673
 msgid	"Select article> "
 msgstr	"Sélectionner l'article > "
 
-#: src/lang.c:668
+#: src/lang.c:674
 msgid	"Select option number before text or use arrow keys and <CR>. 'q' to quit."
 msgstr	"Choisir un numéro ou utiliser les flèches puis <RETOUR>. 'q' pour quitter."
 
-#: src/lang.c:669
+#: src/lang.c:675
 msgid	"Select group> "
 msgstr	"Sélectionner le groupe > "
 
-#: src/lang.c:670
+#: src/lang.c:676
 #, c-format
 msgid	"Enter selection pattern [%s]> "
 msgstr	"Entrez le critère de sélection [%s] > "
 
-#: src/lang.c:671
+#: src/lang.c:677
 msgid	"Select thread > "
 msgstr	"Sélectionner le fil > "
 
-#: src/lang.c:672
+#: src/lang.c:678
 #, c-format
 msgid	"%s %s %s (\"%s\") [%s]: send a DETAILED bug report to %s\n"
 msgstr	"%s %s %s (\"%s\") [%s]: envoi d'un rapport de bug DÉTAILLÉ à %s\n"
 
-#: src/lang.c:673
+#: src/lang.c:679
 msgid	"servers active-file"
 msgstr	"fichier active des serveurs"
 
-#: src/lang.c:674
+#: src/lang.c:680
 msgid	"Cannot move into new newsgroups. Subscribe first..."
 msgstr	"Déplacement dans nouveaux groupes impossible. Abonnez-vous d'abord..."
 
-#: src/lang.c:675
+#: src/lang.c:681
 msgid	"<SPACE>"
 msgstr	"<ESPACE>"
 
-#: src/lang.c:676
+#: src/lang.c:682
 #, c-format
 msgid	"Starting: (%s)"
 msgstr	"Démarrage : (%s)"
 
-#: src/lang.c:677
+#: src/lang.c:683
 #, c-format
 msgid	"List Thread (%d of %d)"
 msgstr	"Visualisation du fil (%d sur %d)"
 
-#: src/lang.c:678
+#: src/lang.c:684
 #, c-format
 msgid	"Thread (%.*s)"
 msgstr	"Fil (%.*s)"
 
-#: src/lang.c:679
+#: src/lang.c:685
 msgid	"Enter wildcard subscribe pattern> "
 msgstr	"Entrer un caractère joker comme critère > "
 
-#: src/lang.c:680
+#: src/lang.c:686
 #, c-format
 msgid	"subscribed to %d groups"
 msgstr	"Abonné à %d groupes"
 
-#: src/lang.c:681
+#: src/lang.c:687
 #, c-format
 msgid	"Subscribed to %s"
 msgstr	"Abonné à %s"
 
-#: src/lang.c:682
+#: src/lang.c:688
 msgid	"Subscribing... "
 msgstr	"Abonnement..."
 
-#: src/lang.c:683
+#: src/lang.c:689
 msgid	"Repost or supersede article(s) [%%s]? (%s/%s/%s): "
 msgstr	"Reposter ou remplacer le(s) article(s) [%%s]? (%s/%s/%s) : "
 
-#: src/lang.c:684
+#: src/lang.c:690
 #, c-format
 msgid	"Supersede article(s) to group(s) [%s]> "
 msgstr	"Remplacer le(s) article(s) du(es) groupe(s) [%s] > "
 
-#: src/lang.c:685
+#: src/lang.c:691
 msgid	"Superseding article ..."
 msgstr	"Remplacement de l'article..."
 
-#: src/lang.c:686
+#: src/lang.c:692
 #, c-format
 msgid	"\n"
 	"Stopped. Type 'fg' to restart %s\n"
 msgstr	"\n"
 	"Arrêté. Tapez 'fg' pour relancer %s\n"
 
-#: src/lang.c:688
+#: src/lang.c:694
 #, c-format
 msgid	"%d days"
 msgstr	"%d jours"
 
-#: src/lang.c:689
+#: src/lang.c:695
 msgid	"<TAB>"
 msgstr	"<TAB>"
 
-#: src/lang.c:690
+#: src/lang.c:696
 msgid	"TeX "
 msgstr	"TeX "
 
-#: src/lang.c:691
+#: src/lang.c:697
 msgid	"# Default action/prompt strings\n"
 msgstr	"# Termes action/prompt par défaut\n"
 
-#: src/lang.c:692
+#: src/lang.c:698
 msgid	"# Defaults for quick (1 key) kill & auto-selection filters\n"
 	"# header=NUM  0,1=Subject: 2,3=From: 4=Message-ID: & full References: line\n"
 	"#             5=Message-ID: & last References: entry only\n"
@@ -2895,267 +2908,267 @@ msgstr	"# Réglages par défaut pour les f
 	"# case=ON/OFF    ON=filtre sensible à la casse OFF=filtre insensible\n"
 	"# expire=ON/OFF  ON=durée d'après default_filter_days OFF=n'expire jamais\n"
 
-#: src/lang.c:705
+#: src/lang.c:711
 msgid	"# If ON use print current subject or newsgroup description in the last line\n"
 msgstr	"# Si ON, affiche le sujet actuel ou la description du groupe dans la "
 	"dernière\n"
 	"# ligne\n"
 
-#: src/lang.c:706
+#: src/lang.c:712
 msgid	"# Host & time info used for detecting new groups (don't touch)\n"
 msgstr	"# Info sur l'hôte & l'heure utilisées pour détecter les nouveaux groupes (ne "
 	"pas toucher)\n"
 
-#: src/lang.c:707
+#: src/lang.c:713
 msgid	"There is no news\n"
 msgstr	"Rien de neuf\n"
 
-#: src/lang.c:708
+#: src/lang.c:714
 msgid	"Thread"
 msgstr	"Fil"
 
-#: src/lang.c:709
+#: src/lang.c:715
 msgid	"Thread Level Commands"
 msgstr	"Commandes pour fil"
 
-#: src/lang.c:710
+#: src/lang.c:716
 msgid	"Thread deselected"
 msgstr	"Fil désélectionné"
 
-#: src/lang.c:711
+#: src/lang.c:717
 msgid	"Thread selected"
 msgstr	"Fil sélectionné"
 
-#: src/lang.c:712
+#: src/lang.c:719
 msgid	"threads"
 msgstr	"fils"
 
-#: src/lang.c:713
+#: src/lang.c:721
 msgid	"Thread range"
 msgstr	"Champ du fil"
 
-#: src/lang.c:714
+#: src/lang.c:722
 msgid	"thread"
 msgstr	"fil"
 
-#: src/lang.c:715
+#: src/lang.c:723
 #, c-format
 msgid	"Thread %4s of %4s"
 msgstr	"    Fil %4s sur %4s"
 
-#: src/lang.c:716
+#: src/lang.c:724
 msgid	"Threading articles..."
 msgstr	"Regroupement des articles..."
 
-#: src/lang.c:717
+#: src/lang.c:725
 #, c-format
 msgid	"Toggled word highlighting %s"
 msgstr	"(Dés)activer surbrillance %s"
 
-#: src/lang.c:718
+#: src/lang.c:726
 msgid	"Toggled rot13 encoding"
 msgstr	"(Dés)activer codage rot13"
 
-#: src/lang.c:719
+#: src/lang.c:727
 #, c-format
 msgid	"Toggled german TeX encoding %s"
 msgstr	"(Dés)activer codage TeX Allemand %s"
 
-#: src/lang.c:720
+#: src/lang.c:728
 #, c-format
 msgid	"Toggled tab-width to %d"
 msgstr	"(Dés)activer largeur de tabulation à %d"
 
-#: src/lang.c:721
+#: src/lang.c:729
 #, c-format
 msgid	"%d Trying to dotlock %s"
 msgstr	"%d essaye de déverrouiller %s"
 
-#: src/lang.c:722
+#: src/lang.c:730
 #, c-format
 msgid	"%d Trying to lock %s"
 msgstr	"%d essaye de verrouiller %s"
 
-#: src/lang.c:723
+#: src/lang.c:731
 msgid	"           h=help\n"
 msgstr	"           h=aide\n"
 
-#: src/lang.c:725
+#: src/lang.c:733
 msgid	"Unlimited"
 msgstr	"Illimitée"
 
-#: src/lang.c:726
+#: src/lang.c:734
 msgid	"Enter wildcard unsubscribe pattern> "
 msgstr	"Terme joker pour se désabonner > "
 
-#: src/lang.c:727
+#: src/lang.c:735
 #, c-format
 msgid	"Error decoding %s : %s"
 msgstr	"Erreur lors du décodage de %s : %s"
 
-#: src/lang.c:728
+#: src/lang.c:736
 msgid	"No end."
 msgstr	"Pas de fin."
 
-#: src/lang.c:729
+#: src/lang.c:737
 #, c-format
 msgid	"%s successfully decoded."
 msgstr	"%s décodé avec succès."
 
-#: src/lang.c:730
+#: src/lang.c:738
 #, c-format
 msgid	"%*s[-- %s/%s, %suuencoded file, %d lines, name: %s --]\n"
 	"\n"
 msgstr	"%*s[-- %s/%s, %sfichier uuencodé, %d lignes, nom : %s --]\n"
 	"\n"
 
-#: src/lang.c:731
+#: src/lang.c:739
 msgid	"unread "
 msgstr	"non lu"
 
-#: src/lang.c:732
+#: src/lang.c:740
 #, c-format
 msgid	"unsubscribed from %d groups"
 msgstr	"désabonné de %d groupes"
 
-#: src/lang.c:733
+#: src/lang.c:741
 #, c-format
 msgid	"Unsubscribed from %s"
 msgstr	"Désabonné de %s"
 
-#: src/lang.c:734
+#: src/lang.c:742
 msgid	"Unsubscribing... "
 msgstr	"Désabonnement..."
 
-#: src/lang.c:735
+#: src/lang.c:743
 msgid	"Unthreading articles..."
 msgstr	"Dégroupement des articles..."
 
-#: src/lang.c:736
+#: src/lang.c:744
 msgid	"Updated"
 msgstr	"Mis à jour"
 
-#: src/lang.c:737
+#: src/lang.c:745
 msgid	"Updating"
 msgstr	"Rafraîchissement"
 
-#: src/lang.c:738
+#: src/lang.c:746
 #, c-format
 msgid	"Opening %s\n"
 msgstr	"Ouverture de %s\n"
 
-#: src/lang.c:739
+#: src/lang.c:747
 msgid	"No more URL's in this article"
 msgstr	"Plus d'URL dans cet article"
 
-#: src/lang.c:740
+#: src/lang.c:748
 msgid	"Use MIME display program for this message?"
 msgstr	"Utiliser le programme d'affichage MIME pour ce message ?"
 
-#: src/lang.c:741
+#: src/lang.c:749
 msgid	"  -c       mark all news as read in subscribed newsgroups (batch mode)"
 msgstr	"  -c       marquer tous les articles lus dans les groupes abonnés (en tâche "
 	"de fond)"
 
-#: src/lang.c:742
+#: src/lang.c:750
 msgid	"  -Z       return status indicating if any unread news (batch mode)"
 msgstr	"  -Z       retourne un statut indiquant s'il y a nouveaux articles (en tâche "
 	"de fond)"
 
-#: src/lang.c:743
+#: src/lang.c:751
 msgid	"  -q       don't check for new newsgroups"
 msgstr	"  -q       ne pas vérifier s'il y a des nouveaux groupes"
 
-#: src/lang.c:744
+#: src/lang.c:752
 msgid	"  -X       don't save any files on quit"
 msgstr	"  -X       ne pas enregistrer de fichiers à la fermeture"
 
-#: src/lang.c:745
+#: src/lang.c:753
 msgid	"  -d       don't show newsgroup descriptions"
 msgstr	"  -d       ne pas afficher les descriptions des groupes"
 
-#: src/lang.c:746
+#: src/lang.c:754
 msgid	"  -G limit get only limit articles/group"
 msgstr	"  -G nombre d'articles par groupe limite"
 
-#: src/lang.c:747
+#: src/lang.c:755
 #, c-format
 msgid	"  -H       help information about %s"
 msgstr	"  -H       aide à propos de %s"
 
-#: src/lang.c:748
+#: src/lang.c:756
 msgid	"  -h       this help message"
 msgstr	"  -h       ce message d'aide"
 
-#: src/lang.c:749
+#: src/lang.c:757
 #, c-format
 msgid	"  -I dir   news index file directory [default=%s]"
 msgstr	"  -I rép.  répertoire du fichier index [défaut=%s]"
 
-#: src/lang.c:750
+#: src/lang.c:758
 msgid	"  -u       update index files (batch mode)"
 msgstr	"  -u       màj des fichiers index (en tâche de fond)"
 
-#: src/lang.c:751
+#: src/lang.c:759
 #, c-format
 msgid	"  -m dir   mailbox directory [default=%s]"
 msgstr	"  -m rép.  répertoire des bàl [défaut=%s]"
 
-#: src/lang.c:752
+#: src/lang.c:760
 #, c-format
 msgid	"\n"
 	"Mail bug reports/comments to %s"
 msgstr	"\n"
 	"Envoyez par mail vos rapports de bugs/suggestions à %s"
 
-#: src/lang.c:753
+#: src/lang.c:761
 msgid	"  -N       mail new news to your posts (batch mode)"
 msgstr	"  -N       envoyer toute réponse à vos articles (en tâche de fond)"
 
-#: src/lang.c:754
+#: src/lang.c:762
 msgid	"  -M user  mail new news to specified user (batch mode)"
 msgstr	"  -M util. envoyer tout nouvel article à une personne (en tâche de fond)"
 
-#: src/lang.c:755
+#: src/lang.c:763
 #, c-format
 msgid	"  -f file  subscribed to newsgroups file [default=%s]"
 msgstr	"  -f fich. abonné au fichier groupes [défaut=%s]"
 
-#: src/lang.c:756
+#: src/lang.c:764
 msgid	"  -x       no posting mode"
 msgstr	"  -x       mode postage OFF"
 
-#: src/lang.c:757
+#: src/lang.c:765
 msgid	"  -w       post an article and exit"
 msgstr	"  -w       poster un article puis quitter"
 
-#: src/lang.c:758
+#: src/lang.c:766
 msgid	"  -o       post all postponed articles and exit"
 msgstr	"  -o       poster tous les brouillons puis quitter"
 
-#: src/lang.c:759
+#: src/lang.c:767
 msgid	"  -r       read news remotely from default NNTP server"
 msgstr	"  -r       lire les articles depuis le serveur NNTP par défaut"
 
-#: src/lang.c:760
+#: src/lang.c:768
 msgid	"  -R       read news saved by -S option"
 msgstr	"  -R       lire les articles enregistrés via l'option -S"
 
-#: src/lang.c:761
+#: src/lang.c:769
 #, c-format
 msgid	"  -s dir   save news directory [default=%s]"
 msgstr	"  -s rép.  répertoire où enregistrer les articles [défaut=%s]"
 
-#: src/lang.c:762
+#: src/lang.c:770
 msgid	"  -S       save new news for later reading (batch mode)"
 msgstr	"  -S       enregistrer tout nouvel article pour lecture différée (en tâche de "
 	"fond)"
 
-#: src/lang.c:763
+#: src/lang.c:771
 msgid	"  -z       start if any unread news"
 msgstr	"  -z       lancer si articles non lus"
 
-#: src/lang.c:764
+#: src/lang.c:772
 #, c-format
 msgid	"A Usenet reader.\n"
 	"\n"
@@ -3163,37 +3176,37 @@ msgid	"A Usenet reader.\n"
 msgstr	"Un lecteur UseNet.\n"
 	"Usage : %s [options] [groupe[,...]]"
 
-#: src/lang.c:765
+#: src/lang.c:773
 msgid	"  -v       verbose output for batch mode options"
 msgstr	"  -v       sortie détaillée pour options en tâche de fond"
 
-#: src/lang.c:766
+#: src/lang.c:774
 msgid	"  -V       print version & date information"
 msgstr	"  -V       afficher infos date & version"
 
-#: src/lang.c:767
+#: src/lang.c:775
 #, c-format
 msgid	"%s only useful without batch mode operations\n"
 msgstr	"%s utile seulement sans opérations en tâche de fond\n"
 
-#: src/lang.c:768
+#: src/lang.c:776
 #, c-format
 msgid	"%s only useful for batch mode operations\n"
 msgstr	"%s utile seulement pour opérations en tâche de fond\n"
 
-#: src/lang.c:770
+#: src/lang.c:778
 #, c-format
 msgid	"\n"
 	"%s%d out of range (0 - %d). Reset to 0"
 msgstr	"\n"
 	"%s%d expiré (0 - %d). Remis à 0"
 
-#: src/lang.c:771
+#: src/lang.c:779
 #, c-format
 msgid	"View '%s' (%s/%s)?"
 msgstr	"Vue '%s' (%s/%s) ?"
 
-#: src/lang.c:773
+#: src/lang.c:781
 #, c-format
 msgid	"\n"
 	"Warning: posting exceeds %d columns. Line %d is the first long one:\n"
@@ -3203,26 +3216,26 @@ msgstr	"\n"
 	":\n"
 	"%-100s\n"
 
-#: src/lang.c:774
+#: src/lang.c:782
 msgid	"\n"
 	"Warning: article unchanged after editing\n"
 msgstr	"\n"
 	"Attention : article inchangé après son édition\n"
 
-#: src/lang.c:775
+#: src/lang.c:783
 msgid	"\n"
 	"Warning: \"Subject:\" contains only whitespaces.\n"
 msgstr	"\n"
 	"Attention : \"Subject:\" contient que des espaces.\n"
 
-#: src/lang.c:776
+#: src/lang.c:784
 msgid	"\n"
 	"Warning: \"Subject:\" begins with \"Re: \" but there are no \"References:\".\n"
 msgstr	"\n"
 	"Attention : \"Subject:\" commence par \"Re: \" mais il n'y a pas de "
 	"\"References:\".\n"
 
-#: src/lang.c:778
+#: src/lang.c:786
 msgid	"\n"
 	"Warning: Article has \"References:\" but \"Subject:\" does not begin\n"
 	"         with \"Re: \" and does not contain \"(was:\".\n"
@@ -3230,7 +3243,7 @@ msgstr	"\n"
 	"Attention : L'article a \"References:\" mais \"Subject:\" ne commence\n"
 	"            avec \"Re: \" et ne contient pas \"(was:\".\n"
 
-#: src/lang.c:781
+#: src/lang.c:789
 msgid	"Read carefully!\n"
 	"\n"
 	"  You are about to cancel an article seemingly written by you. This will "
@@ -3252,7 +3265,7 @@ msgstr	"Lisez ceci attentivement !\n"
 	"Voici l'article que vous vous apprêtez à effacer :\n"
 	"\n"
 
-#: src/lang.c:785
+#: src/lang.c:793
 msgid	"\n"
 	"Warning: You are using a non-plain transfer encoding (such as base64 or\n"
 	"         quoted-printable) and an external inews program to submit your\n"
@@ -3264,7 +3277,7 @@ msgstr	"\n"
 	"            votre article. Si une signature y est ajoutée par cet inews,\n"
 	"            elle ne sera pas encodée correctement.\n"
 
-#: src/lang.c:790
+#: src/lang.c:798
 #, c-format
 msgid	"\n"
 	"\n"
@@ -3277,7 +3290,7 @@ msgstr	"\n"
 	"Certaines valeurs dans votre fichier %s ont changé !\n"
 	"Lisez le fichier WHATSNEW, etc...\n"
 
-#: src/lang.c:792
+#: src/lang.c:800
 #, c-format
 msgid	"\n"
 	"\n"
@@ -3289,7 +3302,7 @@ msgstr	"\n"
 	"Certaines valeurs dans votre fichier %s peuvent être ignorées, d'autres\n"
 	"ont peut-être changées !\n"
 
-#: src/lang.c:795
+#: src/lang.c:803
 #, c-format
 msgid	"Warning: tin wrote fewer groups to your\n"
 	"\t%s\n"
@@ -3302,19 +3315,19 @@ msgstr	"Attention : tin a modifié quelqu
 	"lors de cette session, cela indique une erreur et vous devriez sauvegarder\n"
 	"votre %s avant de relancer tin !\n"
 
-#: src/lang.c:799
+#: src/lang.c:807
 #, c-format
 msgid	"\n"
 	"Warning: Found %d '-- \\n' lines, this may confuse some people.\n"
 msgstr	"\n"
 	"Attention : %d lignes '-- \\n' trouvées, cela peut prêter à confusion.\n"
 
-#: src/lang.c:800
+#: src/lang.c:808
 #, c-format
 msgid	"Warning: Only %d out of %d articles were saved"
 msgstr	"Attention : Seul %d sur %d articles ont été enregistrés"
 
-#: src/lang.c:801
+#: src/lang.c:809
 #, c-format
 msgid	"\n"
 	"Warning: Your signature  is longer than %d lines.  Since signatures usually "
@@ -3329,50 +3342,50 @@ msgstr	"\n"
 	"d'être\n"
 	"            le plus court possible.\n"
 
-#: src/lang.c:805
+#: src/lang.c:813
 #, c-format
 msgid	"Warning: this mail address may contain a spamtrap. %s=continue, %s=abort? "
 msgstr	"Attention : cette email peut contenir un piège à spam. %s=continuer, "
 	"%s=annuler ?"
 
-#: src/lang.c:806
+#: src/lang.c:814
 msgid	"\n"
 	"Warning: Signatures should start with '-- \\n' not with '--\\n'.\n"
 msgstr	"\n"
 	"Attention : Les signatures doivent commencer avec '-- \\n' et non par '-- "
 	"\\n'.\n"
 
-#: src/lang.c:807
+#: src/lang.c:815
 msgid	"Writing attributes file..."
 msgstr	"Écriture du fichier attributes..."
 
-#: src/lang.c:809
+#: src/lang.c:817
 #, c-format
 msgid	"%d Responses"
 msgstr	"%d Réponses"
 
-#: src/lang.c:811
+#: src/lang.c:819
 #, c-format
 msgid	"Added %d %s"
 msgstr	"%d %s ajouté(s)"
 
-#: src/lang.c:812
+#: src/lang.c:820
 msgid	"No unsubscribed groups to show"
 msgstr	"Aucuns groupes non abonnés à afficher"
 
-#: src/lang.c:813
+#: src/lang.c:821
 msgid	"Showing subscribed to groups only"
 msgstr	"Afficher uniquement les groupes abonnés"
 
-#: src/lang.c:814
+#: src/lang.c:822
 msgid	"Yes "
 msgstr	"Oui "
 
-#: src/lang.c:815
+#: src/lang.c:823
 msgid	"    You have mail\n"
 msgstr	"    Nouveau mail\n"
 
-#: src/lang.c:820
+#: src/lang.c:828
 #, c-format
 msgid	"\n"
 	"Warning: Posting is in %s and contains characters which are not\n"
@@ -3391,16 +3404,16 @@ msgstr	"\n"
 	"            problème, ou bien changer la valeur de MM_NETWORK_CHARSET\n"
 	"            via le M)enu.\n"
 
-#: src/lang.c:831
+#: src/lang.c:839
 #, c-format
 msgid	"Redefined key %s '%s' -> '%s'\n"
 msgstr	"Clé %s redéfinie '%s' -> '%s'\n"
 
-#: src/lang.c:832
+#: src/lang.c:840
 msgid	"  -D       debug mode 1=NNTP 2=ALL"
 msgstr	"  -D       mode debug 1=NNTP 2=TOUS"
 
-#: src/lang.c:836
+#: src/lang.c:844
 msgid	"Read carefully!\n"
 	"\n"
 	"  You are about to cancel an article seemingly not written by you.  This "
@@ -3427,11 +3440,11 @@ msgstr	"Lisez ceci attentivement !\n"
 	"Voici l'article que vous vous apprêtez a effacer :\n"
 	"\n"
 
-#: src/lang.c:845
+#: src/lang.c:853
 msgid	"toggle color"
 msgstr	"(dés)activer la couleur"
 
-#: src/lang.c:846
+#: src/lang.c:854
 msgid	"# Changing colors of several screen parts\n"
 	"# Possible values are:\n"
 	"#  -1 = default (white for foreground and black for background)\n"
@@ -3474,44 +3487,44 @@ msgstr	"# Changer la couleur de plusieur
 	"#  15 = blanc gras\n"
 	"\n"
 
-#: src/lang.c:866
+#: src/lang.c:874
 msgid	"  -a       toggle color flag"
 msgstr	"  -a       change la couleur"
 
-#: src/lang.c:870
+#: src/lang.c:878
 msgid	"\n"
 	"Error: Followup-To set to more than one newsgroup!\n"
 msgstr	"\n"
 	"Erreur : Suivi positionné sur plus d'un groupe !\n"
 
-#: src/lang.c:871
+#: src/lang.c:879
 #, c-format
 msgid	"\n"
 	"Error: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr	"\n"
 	"Erreur : multi-postage vers %d groupes et pas de ligne Followup-To !\n"
 
-#: src/lang.c:872
+#: src/lang.c:880
 #, c-format
 msgid	"\n"
 	"Error: \"%s\" is not a valid newsgroup!\n"
 msgstr	"\n"
 	"Erreur : \"%s\" n'est pas un groupe valide !\n"
 
-#: src/lang.c:874
+#: src/lang.c:882
 msgid	"\n"
 	"Warning: Followup-To set to more than one newsgroup!\n"
 msgstr	"\n"
 	"Attention : Suivi positionné sur plus d'un groupe !\n"
 
-#: src/lang.c:875
+#: src/lang.c:883
 #, c-format
 msgid	"\n"
 	"Warning: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr	"\n"
 	"Attention : multi-postage vers %d groupes et aucun suivi !\n"
 
-#: src/lang.c:876
+#: src/lang.c:884
 #, c-format
 msgid	"\n"
 	"Warning: \"%s\" is not in your newsrc, it may be invalid at this site!\n"
@@ -3520,307 +3533,307 @@ msgstr	"\n"
 	"            pas apparaître dans ce groupe !\n"
 	"\n"
 
-#: src/lang.c:877
+#: src/lang.c:885
 #, c-format
 msgid	"\n"
 	"Warning: \"%s\" is not a valid newsgroup at this site!\n"
 msgstr	"\n"
 	"Attention : \"%s\" n'est pas un groupe valide !\n"
 
-#: src/lang.c:881
+#: src/lang.c:889
 #, c-format
 msgid	"%d files successfully written from %d articles. %d %s occurred."
 msgstr	"%d fichiers des %d articles écrits avec succès. %d %s est survenu."
 
-#: src/lang.c:882
+#: src/lang.c:890
 msgid	"Missing parts."
-msgstr	"Parties manquantes"
+msgstr	"Parties manquantes."
 
-#: src/lang.c:883
+#: src/lang.c:891
 msgid	"No beginning."
 msgstr	"Pas de début."
 
-#: src/lang.c:884
+#: src/lang.c:892
 msgid	"No data."
 msgstr	"Pas de données."
 
-#: src/lang.c:885
+#: src/lang.c:893
 msgid	"Unknown error."
 msgstr	"Erreur inconnue."
 
-#: src/lang.c:887
+#: src/lang.c:896
 #, c-format
 msgid	"\tChecksum of %s (%ld %s)"
 msgstr	"\tSomme de contrôle de %s (%ld %s)"
 
-#: src/lang.c:891
+#: src/lang.c:901
 msgid	"Reading mail active file... "
 msgstr	"Lecture du fichier active mail... "
 
-#: src/lang.c:892
+#: src/lang.c:902
 msgid	"Reading mailgroups file... "
 msgstr	"Lecture du fichier mailgroups... "
 
-#: src/lang.c:896
+#: src/lang.c:906
 msgid	"perform PGP operations on article"
 msgstr	"effectuer des opérations PGP sur l'article"
 
-#: src/lang.c:897
+#: src/lang.c:907
 msgid	"Add key(s) to public keyring?"
 msgstr	"Ajouter les clé(s) au cercle public ?"
 
-#: src/lang.c:898
+#: src/lang.c:908
 #, c-format
 msgid	"%s=encrypt, %s=sign, %s=both, %s=quit: "
 msgstr	"%s=encoder, %s=signer, %s=les deux, %s=quitter : "
 
-#: src/lang.c:899
+#: src/lang.c:909
 #, c-format
 msgid	"%s=sign, %s=sign & include public key, %s=quit: "
 msgstr	"%s=signer, %s=sig. & inclure clé publique, %s=quitter : "
 
-#: src/lang.c:900
+#: src/lang.c:910
 #, c-format
 msgid	"PGP has not been set up (can't open %s)"
 msgstr	"PGP n'a pas été configuré (ouverture de %s impossible)"
 
-#: src/lang.c:901
+#: src/lang.c:911
 msgid	"Article not signed and no public keys found"
 msgstr	"Article non signé et pas de clés publiques trouvées"
 
-#: src/lang.c:903
+#: src/lang.c:913
 #, c-format
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=quitter, %s=éditer, %s=ispell, %s=pgp, %s=menu, %s=poster, %s=brouillon : "
 
-#: src/lang.c:904
+#: src/lang.c:914
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=send [%%s]: "
 msgstr	"%s=quitter, %s=éditer, %s=ispell, %s=pgp, %s=envoyer [%%s] : "
 
-#: src/lang.c:905
+#: src/lang.c:915
 msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=quitter, %s=éditer, %s=ispell, %s=pgp, %s=menu, %s=poster, %s=brouillon "
 	"[%%s]: "
 
-#: src/lang.c:907
+#: src/lang.c:917
 #, c-format
 msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=quitter, %s=éditer, %s=pgp, %s=menu, %s=poster, %s=brouillon : "
 
-#: src/lang.c:908
+#: src/lang.c:918
 msgid	"%s=quit, %s=edit, %s=pgp, %s=send [%%s]: "
 msgstr	"%s=quitter, %s=éditer, %s=pgp, %s=envoyer [%%s] : "
 
-#: src/lang.c:909
+#: src/lang.c:919
 msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=quitter, %s=éditer, %s=pgp, %s=menu, %s=poster, %s=brouillon [%%s] : "
 
-#: src/lang.c:913
+#: src/lang.c:923
 #, c-format
 msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=quitter, %s=éditer, %s=ispell, %s=menu, %s=poster, %s=brouillon : "
 
-#: src/lang.c:914
+#: src/lang.c:924
 msgid	"%s=quit, %s=edit, %s=ispell, %s=send [%%s]: "
 msgstr	"%s=quitter, %s=éditer, %s=ispell, %s=envoyer [%%s] : "
 
-#: src/lang.c:915
+#: src/lang.c:925
 msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=quitter, %s=éditer, %s=ispell, %s=menu, %s=poster, %s=brouillon [%%s] : "
 
-#: src/lang.c:917
+#: src/lang.c:927
 #, c-format
 msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone: "
 msgstr	"%s=quitter, %s=éditer, %s=menu, %s=poster, %s=brouillon : "
 
-#: src/lang.c:918
+#: src/lang.c:928
 msgid	"%s=quit, %s=edit, %s=send [%%s]: "
 msgstr	"%s=quitter, %s=éditer, %s=envoyer [%%s] : "
 
-#: src/lang.c:919
+#: src/lang.c:929
 msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr	"%s=quitter, %s=éditer, %s=menu, %s=poster, %s=brouillon [%%s]: "
 
-#: src/lang.c:928
+#: src/lang.c:938
 msgid	"Try cache_overview_files to speed up things.\n"
 msgstr	"Activez 'cache_overview_files' pour accélérer les choses.\n"
 
-#: src/lang.c:929
+#: src/lang.c:939
 msgid	"Tin will use local index files instead.\n"
 msgstr	"Tin utilisera à la place un index local.\n"
 
-#: src/lang.c:930
+#: src/lang.c:940
 msgid	"Cannot find NNTP server name"
 msgstr	"Nom du serveur NNTP introuvable"
 
-#: src/lang.c:931
+#: src/lang.c:941
 #, c-format
 msgid	"Connecting to %s:%d..."
 msgstr	"Connexion à %s:%d..."
 
-#: src/lang.c:932
+#: src/lang.c:942
 msgid	"Disconnecting from server...\n"
 msgstr	"Déconnexion du serveur...\n"
 
-#: src/lang.c:933
+#: src/lang.c:943
 #, c-format
 msgid	"Wrong newsgroup name in response of GROUP command, %s for %s"
 msgstr	"Nom de groupe erroné dans la réponse de la cmd GROUP, %s pour %s"
 
-#: src/lang.c:934
+#: src/lang.c:944
 #, c-format
 msgid	"Failed to connect to NNTP server %s. Exiting..."
 msgstr	"Échec de la connexion au serveur NNTP %s. Fermeture..."
 
-#: src/lang.c:935
+#: src/lang.c:945
 msgid	"205  Closing connection"
 msgstr	"205  Fermeture de la connexion"
 
-#: src/lang.c:936
+#: src/lang.c:946
 msgid	"Your server does not support the NNTP XOVER or OVER command.\n"
 msgstr	"Votre serveur ne supporte pas la commande NNTP XOVER ou OVER.\n"
 
-#: src/lang.c:937
+#: src/lang.c:947
 msgid	"Connection to news server has timed out. Reconnect?"
 msgstr	"Connexion au serveur de nouvelles expirée. Se reconnecter ?"
 
-#: src/lang.c:938
+#: src/lang.c:948
 #, c-format
 msgid	"Put the server name in the file %s,\n"
 	"or set the environment variable NNTPSERVER"
 msgstr	"Mettez le nom du serveur dans le fichier %s,\n"
 	"ou utilisez la variable d'environnement NNTPSERVER"
 
-#: src/lang.c:939
+#: src/lang.c:949
 msgid	"  -A       force authentication on connect"
 msgstr	"  -A       force l'authentication à la connexion"
 
-#: src/lang.c:940
+#: src/lang.c:950
 #, c-format
 msgid	"  -g serv  read news from NNTP server serv [default=%s]"
 msgstr	"  -g serv  lire depuis le serveur NNTP serv [défaut=%s]"
 
-#: src/lang.c:941
+#: src/lang.c:951
 #, c-format
 msgid	"  -p port  use port as NNTP port [default=%d]"
 msgstr	"  -p port  utiliser port comme port NNTP [défaut=%d]"
 
-#: src/lang.c:942
+#: src/lang.c:952
 msgid	"  -Q       quick start. Same as -nqd"
 msgstr	"  -Q       démarrage rapide. Idem que -npd"
 
-#: src/lang.c:943
+#: src/lang.c:953
 msgid	"  -l       use only LIST instead of GROUP (-n) command"
 msgstr	"  -l       utilise seulement LIST plutôt que GROUP (-n)"
 
-#: src/lang.c:944
+#: src/lang.c:954
 msgid	"  -n       only read subscribed .newsrc groups from NNTP server"
 msgstr	"  -n       lire seulement groupes abonnés du .newsrc depuis le serveur NNTP"
 
-#: src/lang.c:946
+#: src/lang.c:956
 #, c-format
 msgid	"%s/tcp: Unknown service.\n"
 msgstr	"%s/tcp : Service inconnu.\n"
 
-#: src/lang.c:949
+#: src/lang.c:959
 msgid	"\n"
 	"socket or connect problem\n"
 msgstr	"\n"
 	"problème de socket ou de connexion\n"
 
-#: src/lang.c:951
+#: src/lang.c:961
 #, c-format
 msgid	"\n"
 	"Connection to %s: "
 msgstr	"\n"
 	"Connexion à %s : "
 
-#: src/lang.c:952
+#: src/lang.c:962
 msgid	"Giving up...\n"
 msgstr	"Abandon...\n"
 
-#: src/lang.c:955
+#: src/lang.c:965
 msgid	"Your server does not have Xref: in its XOVER information.\n"
 	"Tin will try to use XHDR XREF instead (slows down things a bit).\n"
 msgstr	"Votre serveur n'a pas d'Xref: dans son information XOVER.\n"
 	"Tin essayera d'utiliser XHDR XREF à la place (plus lent).\n"
 
-#: src/lang.c:958
+#: src/lang.c:968
 msgid	"Your server does not have Xref: in its XOVER information.\n"
 msgstr	"Votre serveur n'a pas d'Xref: dans son information XOVER.\n"
 
-#: src/lang.c:961
+#: src/lang.c:971
 #, c-format
 msgid	"Can't open %s. Try %s -r to read news via NNTP.\n"
 msgstr	"Ouverture de %s impossible. Essayez %s -r pour lire via NNTP.\n"
 
-#: src/lang.c:964
+#: src/lang.c:974
 msgid	"  -Q       quick start. Same as -qd"
 msgstr	"  -Q       démarrage rapide. Idem que -qd"
 
-#: src/lang.c:965
+#: src/lang.c:975
 msgid	"  -l       read only active file instead of scanning spool (-n) command"
 msgstr	"  -l       lire seulement le fichier active plutôt que le spool (-n)"
 
-#: src/lang.c:966
+#: src/lang.c:976
 msgid	"  -n       only read subscribed .newsrc groups from spool"
 msgstr	"  -n       lire seulement groupes abonnés du .newsrc depuis le spool"
 
-#: src/lang.c:967
+#: src/lang.c:977
 msgid	"Your server does not have Xref: in its NOV-files.\n"
 msgstr	"Votre serveur n'a pas d'Xref: dans ses fichiers NOV.\n"
 
-#: src/lang.c:971
+#: src/lang.c:981
 msgid	"Posting using external inews failed. Use built in inews instead?"
 msgstr	"Le postage avec l'inews externe à échoué. Utiliser l'inews intégré ?"
 
-#: src/lang.c:972
+#: src/lang.c:982
 msgid	"It worked! Should I always use my built in inews from now on?"
 msgstr	"Ca a marché ! Devrais-je toujours utiliser mon inews intégré à présent ?"
 
-#: src/lang.c:980
+#: src/lang.c:990
 #, c-format
 msgid	"%d %s printed"
 msgstr	"%d %s imprimé"
 
-#: src/lang.c:981
+#: src/lang.c:991
 msgid	"output article/thread/hot/pattern/tagged articles to printer"
 msgstr	"envoyer article/fil/sél./articles marqués à l'imprimante"
 
-#: src/lang.c:982
+#: src/lang.c:992
 msgid	"Print"
 msgstr	"Imprimer"
 
-#: src/lang.c:983
+#: src/lang.c:993
 msgid	"Printing..."
 msgstr	"Impression..."
 
-#: src/lang.c:987
+#: src/lang.c:997
 msgid	"pipe article/thread/hot/pattern/tagged articles into command"
 msgstr	"passer article/fil/sél./articles marqués à une commande"
 
-#: src/lang.c:988
+#: src/lang.c:998
 msgid	"No command"
 msgstr	"Aucune commande"
 
-#: src/lang.c:989
+#: src/lang.c:999
 msgid	"Pipe"
 msgstr	"Passer (pipe)"
 
-#: src/lang.c:990
+#: src/lang.c:1000
 #, c-format
 msgid	"Pipe to command [%.*s]> "
 msgstr	"Passer à la commande [%.*s] > "
 
-#: src/lang.c:991
+#: src/lang.c:1001
 msgid	"Piping..."
 msgstr	"Passage..."
 
-#: src/lang.c:993
+#: src/lang.c:1003
 msgid	"Piping not enabled."
 msgstr	"Passage non activé."
 
-#: src/lang.c:997
+#: src/lang.c:1007
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line has spaces  in it that MUST be removed.\n"
@@ -3833,7 +3846,7 @@ msgstr	"\n"
 	"         du contenu. Utilisez une virgule (,) pour séparer de multiples\n"
 	"         noms de groupes.\n"
 
-#: src/lang.c:1002
+#: src/lang.c:1012
 #, c-format
 msgid	"\n"
 	"Error: The \"%s:\" line is  continued in  the next line.  Since\n"
@@ -3844,7 +3857,7 @@ msgstr	"\n"
 	"         Comme la ligne ne contient pas d'espace, ce n'est pas autorisé.\n"
 	"         Inscrivez svp tous les groupes sur une seule ligne.\n"
 
-#: src/lang.c:1007
+#: src/lang.c:1017
 #, c-format
 msgid	"\n"
 	"Warning: The \"%s:\" line is continued in the next line.\n"
@@ -3857,7 +3870,7 @@ msgstr	"\n"
 	"            Pour éviter les problèmes, indiquez tous les groupes sur une\n"
 	"            seule ligne.\n"
 
-#: src/lang.c:1011
+#: src/lang.c:1021
 #, c-format
 msgid	"\n"
 	"Warning: The \"%s:\" line has spaces in it that SHOULD be removed.\n"
@@ -3865,7 +3878,7 @@ msgstr	"\n"
 	"Attention : La ligne \"%s:\" contient un ou des espaces qui DOIVENT\n"
 	"            être enlevés.\n"
 
-#: src/lang.c:1016
+#: src/lang.c:1026
 msgid	"\n"
 	"  If your article contains quoted text  please take some time to pare it "
 	"down\n"
@@ -3899,504 +3912,504 @@ msgstr	"\n"
 	"simples\n"
 	"  règles, pratiquement toutes les personnes ignoreront vos articles.\n"
 
-#: src/lang.c:1029
+#: src/lang.c:1039
 msgid	"shell escape"
 msgstr	"accéder à un shell"
 
-#: src/lang.c:1030
+#: src/lang.c:1040
 #, c-format
 msgid	"Shell Command (%s)"
 msgstr	"Commande shell (%s)"
 
-#: src/lang.c:1031
+#: src/lang.c:1041
 #, c-format
 msgid	"Enter shell command [%s]> "
 msgstr	"Commande shell [%s] > "
 
-#: src/lang.c:1035
+#: src/lang.c:1045
 #, c-format
 msgid	"%s: Can't get entry for TERM\n"
 msgstr	"%s : Entrée pour TERM introuvable\n"
 
-#: src/lang.c:1039
+#: src/lang.c:1049
 #, c-format
 msgid	"Group %.*s ('q' to quit)..."
 msgstr	"Groupe %.*s ('q' pour quitter)..."
 
-#: src/lang.c:1041
+#: src/lang.c:1051
 #, c-format
 msgid	"Group %.*s..."
 msgstr	"Groupe %.*s..."
 
-#: src/lang.c:1045
+#: src/lang.c:1055
 msgid	"Server unavailable\n"
 msgstr	"Service indisponible\n"
 
-#: src/lang.c:1051
+#: src/lang.c:1061
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; "
 	"%s=post"
 msgstr	"%s=pipe; %s=mail; %s=impr.; %s=quitter; %s=voir lu/non lu; %s=enreg.; "
 	"%s=marquer; %s=poster"
 
-#: src/lang.c:1052
+#: src/lang.c:1062
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=pipe; %s=mail; %s=impr.; %s=quitter; %s=répondre; %s=enreg.; %s=marquer; "
 	"%s=poster"
 
-#: src/lang.c:1054
+#: src/lang.c:1064
 #, c-format
 msgid	"%s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=mail; %s=imprimer; %s=quitter; %s=voir lu/non lu; %s=enregistrer; "
 	"%s=marquer; %s=poster"
 
-#: src/lang.c:1055
+#: src/lang.c:1065
 #, c-format
 msgid	"%s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=mail; %s=imprimer; %s=quitter; %s=répondre; %s=enregistrer; %s=marquer; "
 	"%s=poster"
 
-#: src/lang.c:1059
+#: src/lang.c:1069
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=pipe; %s=mail; %s=quitter; %s=voir lu/non lu; %s=enregistrer; %s=marquer; "
 	"%s=poster"
 
-#: src/lang.c:1060
+#: src/lang.c:1070
 #, c-format
 msgid	"%s=pipe; %s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=pipe; %s=mail; %s=quitter; %s=répondre; %s=enregistrer; %s=marquer; "
 	"%s=poster"
 
-#: src/lang.c:1062
+#: src/lang.c:1072
 #, c-format
 msgid	"%s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr	"%s=mail; %s=quitter; %s=voir lu/non lu; %s=enregistrer; %s=marquer; %s=poster"
 
-#: src/lang.c:1063
+#: src/lang.c:1073
 #, c-format
 msgid	"%s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr	"%s=mail; %s=quitter; %s=répondre; %s=enregistrer; %s=marquer; %s=poster"
 
-#: src/lang.c:1069
+#: src/lang.c:1079
 msgid	"Terminal does not support color"
 msgstr	"Le terminal ne supporte pas les couleurs"
 
-#: src/lang.c:1074
+#: src/lang.c:1084
 #, c-format
 msgid	"Trying %s"
 msgstr	"Essai %s"
 
-#: src/lang.c:1088 src/lang.c:1113 src/lang.c:1129 src/lang.c:1308 src/refs.c:296
+#: src/lang.c:1098 src/lang.c:1123 src/lang.c:1139 src/lang.c:1318 src/refs.c:296
 msgid	"None"
 msgstr	"Aucun"
 
-#: src/lang.c:1089
+#: src/lang.c:1099
 msgid	"Subject"
 msgstr	"Sujet"
 
-#: src/lang.c:1090
+#: src/lang.c:1100
 msgid	"References"
 msgstr	"Références"
 
-#: src/lang.c:1091
+#: src/lang.c:1101
 msgid	"Both Subject and References"
-msgstr	"Sujet & Références"
+msgstr	"Sujet et Références"
 
-#: src/lang.c:1092
+#: src/lang.c:1102
 msgid	"Multipart Subject"
 msgstr	"Sujet multiparties"
 
-#: src/lang.c:1104 src/lang.c:1215
+#: src/lang.c:1114 src/lang.c:1225
 msgid	"No"
 msgstr	"Non"
 
-#: src/lang.c:1105 src/lang.c:1217
+#: src/lang.c:1115 src/lang.c:1227
 msgid	"Yes"
 msgstr	"Oui"
 
-#: src/lang.c:1106
+#: src/lang.c:1116
 msgid	"Hide All"
 msgstr	"Tout masquer"
 
-#: src/lang.c:1114
+#: src/lang.c:1124
 msgid	"Address"
 msgstr	"Adresse"
 
-#: src/lang.c:1115
+#: src/lang.c:1125
 msgid	"Full Name"
 msgstr	"Nom complet"
 
-#: src/lang.c:1116
+#: src/lang.c:1126
 msgid	"Address and Name"
 msgstr	"Adresse et Nom"
 
-#: src/lang.c:1123
+#: src/lang.c:1133
 msgid	"Max"
 msgstr	"Max"
 
-#: src/lang.c:1124
+#: src/lang.c:1134
 msgid	"Sum"
 msgstr	"Addition"
 
-#: src/lang.c:1125
+#: src/lang.c:1135
 msgid	"Average"
 msgstr	"Moyenne"
 
-#: src/lang.c:1130
+#: src/lang.c:1140
 msgid	"Lines"
 msgstr	"Lignes"
 
-#: src/lang.c:1131
+#: src/lang.c:1141
 msgid	"Score"
 msgstr	"Score"
 
-#: src/lang.c:1132
+#: src/lang.c:1142
 msgid	"Lines & Score"
 msgstr	"Lignes & Score"
 
-#: src/lang.c:1141
+#: src/lang.c:1151
 msgid	"Black"
 msgstr	"Noir"
 
-#: src/lang.c:1142
+#: src/lang.c:1152
 msgid	"Red"
 msgstr	"Rouge"
 
-#: src/lang.c:1143
+#: src/lang.c:1153
 msgid	"Green"
 msgstr	"Vert"
 
-#: src/lang.c:1144
+#: src/lang.c:1154
 msgid	"Brown"
 msgstr	"Marron"
 
-#: src/lang.c:1145
+#: src/lang.c:1155
 msgid	"Blue"
 msgstr	"Bleu"
 
-#: src/lang.c:1146
+#: src/lang.c:1156
 msgid	"Pink"
 msgstr	"Rose"
 
-#: src/lang.c:1147
+#: src/lang.c:1157
 msgid	"Cyan"
 msgstr	"Cyan"
 
-#: src/lang.c:1148
+#: src/lang.c:1158
 msgid	"White"
 msgstr	"Blanc"
 
-#: src/lang.c:1149
+#: src/lang.c:1159
 msgid	"Gray"
 msgstr	"Gris"
 
-#: src/lang.c:1150
+#: src/lang.c:1160
 msgid	"Light Red"
 msgstr	"Rouge gras"
 
-#: src/lang.c:1151
+#: src/lang.c:1161
 msgid	"Light Green"
 msgstr	"Vert gras"
 
-#: src/lang.c:1152
+#: src/lang.c:1162
 msgid	"Yellow"
 msgstr	"Jaune"
 
-#: src/lang.c:1153
+#: src/lang.c:1163
 msgid	"Light Blue"
 msgstr	"Bleu gras"
 
-#: src/lang.c:1154
+#: src/lang.c:1164
 msgid	"Light Pink"
 msgstr	"Rose gras"
 
-#: src/lang.c:1155
+#: src/lang.c:1165
 msgid	"Light Cyan"
 msgstr	"Cyan gras"
 
-#: src/lang.c:1156
+#: src/lang.c:1166
 msgid	"Light White"
 msgstr	"Blanc gras"
 
-#: src/lang.c:1164 src/lang.c:1221 src/lang.c:1235
+#: src/lang.c:1174 src/lang.c:1231 src/lang.c:1245
 msgid	"Nothing"
 msgstr	"Rien"
 
-#: src/lang.c:1165
+#: src/lang.c:1175
 msgid	"Mark"
 msgstr	"Marque"
 
-#: src/lang.c:1166
+#: src/lang.c:1176
 msgid	"Space"
 msgstr	"Espace"
 
-#: src/lang.c:1173
+#: src/lang.c:1183
 msgid	"Normal"
 msgstr	"Normal"
 
-#: src/lang.c:1174
+#: src/lang.c:1184
 msgid	"Best highlighting"
 msgstr	"Meilleure surbrillance"
 
-#: src/lang.c:1175
+#: src/lang.c:1185
 msgid	"Underline"
 msgstr	"Souligné"
 
-#: src/lang.c:1176
+#: src/lang.c:1186
 msgid	"Reverse video"
 msgstr	"Vidéo inversée"
 
-#: src/lang.c:1177
+#: src/lang.c:1187
 msgid	"Blinking"
 msgstr	"Clignotement"
 
-#: src/lang.c:1178
+#: src/lang.c:1188
 msgid	"Half bright"
 msgstr	"Moins lumineux"
 
-#: src/lang.c:1179
+#: src/lang.c:1189
 msgid	"Bold"
 msgstr	"Gras"
 
-#: src/lang.c:1184
+#: src/lang.c:1194
 msgid	"none"
 msgstr	"aucun"
 
-#: src/lang.c:1185
+#: src/lang.c:1195
 msgid	"commands"
 msgstr	"commandes"
 
-#: src/lang.c:1186
+#: src/lang.c:1196
 msgid	"select"
 msgstr	"sélection"
 
-#: src/lang.c:1188
+#: src/lang.c:1198
 msgid	"commands & quit"
 msgstr	"commandes & quitter"
 
-#: src/lang.c:1189
+#: src/lang.c:1199
 msgid	"commands & select"
 msgstr	"commandes & sélection"
 
-#: src/lang.c:1190
+#: src/lang.c:1200
 msgid	"quit & select"
 msgstr	"quitter & sélection"
 
-#: src/lang.c:1191
+#: src/lang.c:1201
 msgid	"commands & quit & select"
 msgstr	"commandes, quitter & sélection"
 
-#: src/lang.c:1216
+#: src/lang.c:1226
 msgid	"Shell archive"
 msgstr	"Archive shell"
 
-#: src/lang.c:1222
+#: src/lang.c:1232
 msgid	"Subject: (descending)"
 msgstr	"Subject : (descendant)"
 
-#: src/lang.c:1223
+#: src/lang.c:1233
 msgid	"Subject: (ascending)"
 msgstr	"Subject : (ascendant)"
 
-#: src/lang.c:1224
+#: src/lang.c:1234
 msgid	"From: (descending)"
 msgstr	"From: (descendant)"
 
-#: src/lang.c:1225
+#: src/lang.c:1235
 msgid	"From: (ascending)"
 msgstr	"From: (ascendant)"
 
-#: src/lang.c:1226
+#: src/lang.c:1236
 msgid	"Date: (descending)"
 msgstr	"Date: (descendant)"
 
-#: src/lang.c:1227
+#: src/lang.c:1237
 msgid	"Date: (ascending)"
 msgstr	"Date: (ascendant)"
 
-#: src/lang.c:1228 src/lang.c:1236
+#: src/lang.c:1238 src/lang.c:1246
 msgid	"Score (descending)"
 msgstr	"Score (descendant)"
 
-#: src/lang.c:1229 src/lang.c:1237
+#: src/lang.c:1239 src/lang.c:1247
 msgid	"Score (ascending)"
 msgstr	"Score (ascendant)"
 
-#: src/lang.c:1230
+#: src/lang.c:1240
 msgid	"Lines: (descending)"
 msgstr	"Lines: (descendant)"
 
-#: src/lang.c:1231
+#: src/lang.c:1241
 msgid	"Lines: (ascending)"
 msgstr	"Lines: (ascendant)"
 
-#: src/lang.c:1242
+#: src/lang.c:1252
 msgid	"Always Keep"
 msgstr	"Toujours garder"
 
-#: src/lang.c:1243
+#: src/lang.c:1253
 msgid	"Always Remove"
 msgstr	"Toujours effacer"
 
-#: src/lang.c:1244
+#: src/lang.c:1254
 msgid	"Mark with D on selection screen"
 msgstr	"Marquer avec un D dans la vue sélection"
 
-#: src/lang.c:1249
+#: src/lang.c:1259
 msgid	"Kill only unread arts"
 msgstr	"Filtrer uniquement les articles non lus"
 
-#: src/lang.c:1250
+#: src/lang.c:1260
 msgid	"Kill all arts & show with K"
 msgstr	"Filtrer tous les articles & afficher avec un K"
 
 #. TODO: s/K/art_marked_killed/
-#: src/lang.c:1251
+#: src/lang.c:1261
 msgid	"Kill all arts and never show"
 msgstr	"Filtrer tous les articles et ne jamais afficher"
 
-#: src/lang.c:1256
+#: src/lang.c:1266
 msgid	"Nothing special"
 msgstr	"Rien de spécial"
 
-#: src/lang.c:1257
+#: src/lang.c:1267
 msgid	"Compress quotes"
 msgstr	"Citations compressées"
 
-#: src/lang.c:1258
+#: src/lang.c:1268
 msgid	"Quote signatures"
 msgstr	"Citer les signatures"
 
-#: src/lang.c:1259
+#: src/lang.c:1269
 msgid	"Compress quotes, quote sigs"
 msgstr	"Compresser les citations, citer les signatures"
 
-#: src/lang.c:1260
+#: src/lang.c:1270
 msgid	"Quote empty lines"
 msgstr	"Citer les lignes vides"
 
-#: src/lang.c:1261
+#: src/lang.c:1271
 msgid	"Compress quotes, quote empty lines"
 msgstr	"Compresser les citations, citer les lignes vides"
 
-#: src/lang.c:1262
+#: src/lang.c:1272
 msgid	"Quote sigs & empty lines"
 msgstr	"Citer les signatures & les lignes vides"
 
-#: src/lang.c:1263
+#: src/lang.c:1273
 msgid	"Comp. q., quote sigs & empty lines"
 msgstr	"Citations compr., signatures et lignes vides citées"
 
-#: src/lang.c:1301
+#: src/lang.c:1311
 msgid	"no"
 msgstr	"non"
 
-#: src/lang.c:1302
+#: src/lang.c:1312
 msgid	"with headers"
 msgstr	"avec les en-têtes"
 
-#: src/lang.c:1303
+#: src/lang.c:1313
 msgid	"without headers"
 msgstr	"sans les en-têtes"
 
-#: src/lang.c:1310 src/lang.c:1316
+#: src/lang.c:1320 src/lang.c:1326
 msgid	"NFKC"
 msgstr	"NFKC"
 
-#: src/lang.c:1311
+#: src/lang.c:1321
 msgid	"NFKD"
 msgstr	"NFKD"
 
-#: src/lang.c:1312
+#: src/lang.c:1322
 msgid	"NFC"
 msgstr	"NFC"
 
-#: src/lang.c:1313
+#: src/lang.c:1323
 msgid	"NFD"
 msgstr	"NFD"
 
-#: src/lang.c:1324
+#: src/lang.c:1334
 msgid	"Display Options"
 msgstr	"Options d'affichage"
 
-#: src/lang.c:1330
+#: src/lang.c:1341
 msgid	"Color Options"
 msgstr	"Options des couleurs"
 
-#: src/lang.c:1336
+#: src/lang.c:1348
 msgid	"Article-Limiting Options"
 msgstr	"Options des articles"
 
-#: src/lang.c:1342
+#: src/lang.c:1354
 msgid	"Posting/Mailing Options"
 msgstr	"Options de postage/messagerie"
 
-#: src/lang.c:1348
+#: src/lang.c:1360
 msgid	"Saving/Printing Options"
 msgstr	"Options d'enregistrement/d'impression"
 
-#: src/lang.c:1354
+#: src/lang.c:1366
 msgid	"Expert Options"
 msgstr	"Options avancées"
 
-#: src/lang.c:1360
+#: src/lang.c:1372
 msgid	"Filtering Options"
 msgstr	"Options de filtrage"
 
-#: src/lang.c:1365 src/lang.c:1396 src/lang.c:1402 src/lang.c:1414 src/lang.c:1464
-#: src/lang.c:1470 src/lang.c:1480 src/lang.c:1500 src/lang.c:1575 src/lang.c:1745
-#: src/lang.c:1751 src/lang.c:1757 src/lang.c:1763 src/lang.c:1775 src/lang.c:1782
-#: src/lang.c:1836 src/lang.c:1845 src/lang.c:1851 src/lang.c:1858 src/lang.c:1865
-#: src/lang.c:1872 src/lang.c:1879 src/lang.c:1886 src/lang.c:1893 src/lang.c:1900
-#: src/lang.c:1907 src/lang.c:1914 src/lang.c:1921 src/lang.c:1928 src/lang.c:1935
-#: src/lang.c:1942 src/lang.c:1949 src/lang.c:1956 src/lang.c:1963 src/lang.c:1970
-#: src/lang.c:1977 src/lang.c:1984 src/lang.c:1991 src/lang.c:1998 src/lang.c:2005
-#: src/lang.c:2013 src/lang.c:2029 src/lang.c:2036 src/lang.c:2043 src/lang.c:2050
-#: src/lang.c:2056 src/lang.c:2062 src/lang.c:2079 src/lang.c:2091 src/lang.c:2125
-#: src/lang.c:2178 src/lang.c:2185 src/lang.c:2191 src/lang.c:2216 src/lang.c:2233
-#: src/lang.c:2286 src/lang.c:2322 src/lang.c:2342 src/lang.c:2377 src/lang.c:2387
-#: src/lang.c:2412 src/lang.c:2428 src/lang.c:2447 src/lang.c:2460
+#: src/lang.c:1377 src/lang.c:1408 src/lang.c:1414 src/lang.c:1426 src/lang.c:1476
+#: src/lang.c:1482 src/lang.c:1492 src/lang.c:1512 src/lang.c:1587 src/lang.c:1757
+#: src/lang.c:1763 src/lang.c:1769 src/lang.c:1775 src/lang.c:1787 src/lang.c:1794
+#: src/lang.c:1848 src/lang.c:1857 src/lang.c:1863 src/lang.c:1870 src/lang.c:1877
+#: src/lang.c:1884 src/lang.c:1891 src/lang.c:1898 src/lang.c:1905 src/lang.c:1912
+#: src/lang.c:1919 src/lang.c:1926 src/lang.c:1933 src/lang.c:1940 src/lang.c:1947
+#: src/lang.c:1954 src/lang.c:1961 src/lang.c:1968 src/lang.c:1975 src/lang.c:1982
+#: src/lang.c:1989 src/lang.c:1996 src/lang.c:2003 src/lang.c:2010 src/lang.c:2017
+#: src/lang.c:2025 src/lang.c:2041 src/lang.c:2048 src/lang.c:2055 src/lang.c:2062
+#: src/lang.c:2068 src/lang.c:2074 src/lang.c:2091 src/lang.c:2103 src/lang.c:2137
+#: src/lang.c:2190 src/lang.c:2197 src/lang.c:2203 src/lang.c:2228 src/lang.c:2245
+#: src/lang.c:2298 src/lang.c:2334 src/lang.c:2354 src/lang.c:2389 src/lang.c:2399
+#: src/lang.c:2424 src/lang.c:2440 src/lang.c:2459 src/lang.c:2472
 msgid	"<SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr	"<ESPACE> change, <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1366
+#: src/lang.c:1378
 msgid	"Show mini menu & posting etiquette"
 msgstr	"Afficher le menu & l'intitulé du postage"
 
-#: src/lang.c:1367
+#: src/lang.c:1379
 msgid	"# If ON show a mini menu of useful commands at each level\n"
 	"# and posting etiquette after composing an article\n"
 msgstr	"# Si ON, affiche un mini menu des commandes utiles pour chaque\n"
 	"# niveaux et affiche les détails après la composition d'un article\n"
 
-#: src/lang.c:1372
+#: src/lang.c:1384
 msgid	"Show short description for each newsgroup. <SPACE> toggles & <CR> sets."
 msgstr	"Afficher une brève description pour chaque groupe. <ESPACE> change & <RETOUR> "
 	"valide."
 
-#: src/lang.c:1373
+#: src/lang.c:1385
 msgid	"Show description of each newsgroup"
 msgstr	"Voir description de chaque groupe"
 
-#: src/lang.c:1374
+#: src/lang.c:1386
 msgid	"# If ON show group description text after newsgroup name at\n"
 	"# group selection level\n"
 msgstr	"# Si ON, affiche une description du groupe après son nom dans\n"
 	"# la vue de sélection des groupes\n"
 
-#: src/lang.c:1379
+#: src/lang.c:1391
 msgid	"Show Subject & From (author) fields in group menu. <SPACE> toggles & <CR> "
 	"sets."
 msgstr	"Affiche le sujet & l'auteur dans le menu groupe. <ESPACE> change & <RETOUR> "
 	"valide."
 
-#: src/lang.c:1380
+#: src/lang.c:1392
 msgid	"In group menu, show author by"
 msgstr	"Dans vue groupe, voir auteur par"
 
-#: src/lang.c:1381
+#: src/lang.c:1393
 msgid	"# Part of from field to display\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = none\n"
@@ -4410,32 +4423,32 @@ msgstr	"# Partie du champ from à affiche
 	"# * 2 = nom complet\n"
 	"#   3 les deux\n"
 
-#: src/lang.c:1390
+#: src/lang.c:1402
 msgid	"Draw -> or highlighted bar for selection. <SPACE> toggles & <CR> sets."
 msgstr	"Affiche -> ou une barre de sélection. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:1391
+#: src/lang.c:1403
 msgid	"Draw -> instead of highlighted bar"
 msgstr	"Afficher -> plutôt qu'une barre"
 
-#: src/lang.c:1392
+#: src/lang.c:1404
 msgid	"# If ON use -> otherwise highlighted bar for selection\n"
 msgstr	"# Si ON, utilise -> sinon barre en surbrillance pour la sélection\n"
 
-#: src/lang.c:1397
+#: src/lang.c:1409
 msgid	"Use inverse video for page headers"
 msgstr	"Vidéo inversée pour les en-têtes"
 
-#: src/lang.c:1398
+#: src/lang.c:1410
 msgid	"# If ON use inverse video for page headers at different levels\n"
 msgstr	"# Si ON, utilise la vidéo inversée pour les en-têtes dans les différentes\n"
 	"# vues\n"
 
-#: src/lang.c:1403
+#: src/lang.c:1415
 msgid	"Thread articles by"
 msgstr	"Regrouper les articles par"
 
-#: src/lang.c:1404
+#: src/lang.c:1416
 msgid	"# Thread articles by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4448,14 +4461,14 @@ msgstr	"# Regrouper les articles par...\
 	"#   0 = aucun\n"
 	"#   1 = Sujet\n"
 	"#   2 = References\n"
-	"# * 3 = Les deux (Sujet & References)\n"
+	"# * 3 = Les deux (Sujet et References)\n"
 	"#   4 = Sujet multipartie\n"
 
-#: src/lang.c:1415
+#: src/lang.c:1427
 msgid	"Score of a thread"
 msgstr	"Score d'un fil"
 
-#: src/lang.c:1416
+#: src/lang.c:1428
 msgid	"# Thread score\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = max\n"
@@ -4467,15 +4480,15 @@ msgstr	"# Regrouper les scores\n"
 	"#   1 = somme\n"
 	"#   2 = moyenne\n"
 
-#: src/lang.c:1424
+#: src/lang.c:1436
 msgid	"Sort articles by Subject, From, Date or Score. <SPACE> toggles & <CR> sets."
 msgstr	"Trie les articles d'après un en-tête. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:1425
+#: src/lang.c:1437
 msgid	"Sort articles by"
 msgstr	"Trier les articles par"
 
-#: src/lang.c:1426
+#: src/lang.c:1438
 msgid	"# Sort articles by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4503,15 +4516,15 @@ msgstr	"# Trie les article par...\n"
 	"#   9 = Lignes descendant\n"
 	"#  10 = Lignes ascendant)\n"
 
-#: src/lang.c:1442
+#: src/lang.c:1454
 msgid	"Sort threads by Nothing or Score. <SPACE> toggles & <CR> sets."
 msgstr	"Trier les fils par Rien ou Score. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:1443
+#: src/lang.c:1455
 msgid	"Sort threads by"
 msgstr	"Trier les fils par"
 
-#: src/lang.c:1444
+#: src/lang.c:1456
 msgid	"# Sort thread by ...\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4523,44 +4536,44 @@ msgstr	"# Trier les fils par...\n"
 	"# * 1 = Score descendant\n"
 	"#   2 = Score ascendant\n"
 
-#: src/lang.c:1452
+#: src/lang.c:1464
 msgid	"Put cursor at first/last unread art in groups. <SPACE> toggles & <CR> sets."
 msgstr	"Place le curseur sur le 1er article non lu. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:1453
+#: src/lang.c:1465
 msgid	"Goto first unread article in group"
 msgstr	"Aller au 1er article non lu du groupe"
 
-#: src/lang.c:1454
+#: src/lang.c:1466
 msgid	"# If ON put cursor at first unread art in group otherwise last art\n"
 msgstr	"# Si ON, place le curseur sur le 1er article non lu sinon sur le dernier\n"
 
-#: src/lang.c:1458
+#: src/lang.c:1470
 msgid	"Show all articles or only unread articles. <SPACE> toggles & <CR> sets."
 msgstr	"Affiche tous les articles ou seulement ceux non lus. <ESPACE> change & "
 	"<RETOUR> valide."
 
-#: src/lang.c:1459
+#: src/lang.c:1471
 msgid	"Show only unread articles"
 msgstr	"Afficher articles non lus seulement"
 
-#: src/lang.c:1460
+#: src/lang.c:1472
 msgid	"# If ON show only new/unread articles otherwise show all.\n"
 msgstr	"# Si ON, affiche seulement les articles non lus sinon les affiche tous.\n"
 
-#: src/lang.c:1465
+#: src/lang.c:1477
 msgid	"Show only groups with unread arts"
 msgstr	"Voir groupes avec articles non lus"
 
-#: src/lang.c:1466
+#: src/lang.c:1478
 msgid	"# If ON show only subscribed to groups that contain unread articles.\n"
 msgstr	"# Si ON, affiche seulement les groupes ayant des articles non lus.\n"
 
-#: src/lang.c:1471
+#: src/lang.c:1483
 msgid	"Filter which articles"
 msgstr	"Filtrer quel article"
 
-#: src/lang.c:1472
+#: src/lang.c:1484
 msgid	"# Filter which articles\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = only kill unread articles\n"
@@ -4572,200 +4585,200 @@ msgstr	"# Filtrer quels articles\n"
 	"#   1 = filtrer tous les articles et les marquer avec un K dans les fils\n"
 	"#   2 = filtrer tous les articles et ne pas les afficher\n"
 
-#: src/lang.c:1481
+#: src/lang.c:1493
 msgid	"Tab goes to next unread article"
 msgstr	"Tab va au prochain article non lu"
 
-#: src/lang.c:1482
+#: src/lang.c:1494
 msgid	"# If ON the TAB command will go to next unread article at article viewer "
 	"level\n"
 msgstr	"# Si ON, la touche TAB ira au prochain article non lu directement depuis le\n"
 	"# visualiseur d'article\n"
 
-#: src/lang.c:1486
+#: src/lang.c:1498
 msgid	"Scrolling with <SPACE> past the end of an art. jumps to the next unread one."
 msgstr	"Naviguer avec <ESPACE> ira au prochain article non lu."
 
-#: src/lang.c:1487
+#: src/lang.c:1499
 msgid	"Space goes to next unread article"
 msgstr	"Espace va au prochain article non lu"
 
-#: src/lang.c:1488
+#: src/lang.c:1500
 msgid	"# If ON the SPACE command will go to next unread article at article viewer\n"
 	"# level when the end of the article is reached (rn-style pager)\n"
 msgstr	"# Si ON, ESPACE ira au prochain article non lu dans le visualiseur d'article\n"
 	"# lorsque la fin d'un article sera atteinte (pager style rn)\n"
 
-#: src/lang.c:1493
+#: src/lang.c:1505
 msgid	"Scrolling with <PGDN>/<DOWN> past the end of an art. jumps to the unread one."
 msgstr	"Naviguer avec <PGDN>/<BAS> ira au prochain article non lu."
 
-#: src/lang.c:1494
+#: src/lang.c:1506
 msgid	"PgDn goes to next unread article"
 msgstr	"PgDn va au prochain article non lu"
 
-#: src/lang.c:1495
+#: src/lang.c:1507
 msgid	"# If ON the PGDN or DOWN command will go to next unread article when\n"
 	"# pressed at end of message\n"
 msgstr	"# Si ON, les touches PGDN ou BAS iront au prochain article non lu\n"
 	"# lorsque la fin d'un article sera atteinte\n"
 
-#: src/lang.c:1501
+#: src/lang.c:1513
 msgid	"List thread using right arrow key"
 msgstr	"Lister le fil via la flèche droite"
 
-#: src/lang.c:1502
+#: src/lang.c:1514
 msgid	"# If ON automatically list thread when entering it using right arrow key.\n"
 msgstr	"# Si ON, listera automatiquement le fil lors de l'utilisation de la flèche\n"
 	"# droite.\n"
 
-#: src/lang.c:1506
+#: src/lang.c:1518
 msgid	"Enter character to indicate deleted articles. <CR> sets, <ESC> cancels."
 msgstr	"Caractère indiquant les articles effacés. <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1507
+#: src/lang.c:1519
 msgid	"Character to show deleted articles"
 msgstr	"Caractère pour articles effacés"
 
-#: src/lang.c:1508
+#: src/lang.c:1520
 msgid	"# Character used to show that an art was deleted (default 'D')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article a été supprimé (défaut 'D')\n"
 	"# _ est transformé en ' '\n"
 
-#: src/lang.c:1513
+#: src/lang.c:1525
 msgid	"Enter character to indicate articles in a range. <CR> sets, <ESC> cancels."
 msgstr	"Caractère indiquant les articles inclus. <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1514
+#: src/lang.c:1526
 msgid	"Character to show inrange articles"
 msgstr	"Caractère pour articles non inclus"
 
-#: src/lang.c:1515
+#: src/lang.c:1527
 msgid	"# Character used to show that an art is in a range (default '#')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article est inclus (défaut '#')\n"
 	"# _ est transformé en ' '\n"
 
-#: src/lang.c:1520
+#: src/lang.c:1532
 msgid	"Enter character to indicate that article will return. <CR> sets, <ESC> "
 	"cancels."
 msgstr	"Caractère indiquant que l'article sera retourné. <RETOUR> valide, <ESC> "
 	"annule."
 
-#: src/lang.c:1521
+#: src/lang.c:1533
 msgid	"Character to show returning arts"
 msgstr	"Caractère pour articles retournés"
 
-#: src/lang.c:1522
+#: src/lang.c:1534
 msgid	"# Character used to show that an art will return (default '-')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article sera retourné (défaut '#')\n"
 	"# _ est transformé en ' '\n"
 
-#: src/lang.c:1527
+#: src/lang.c:1539
 msgid	"Enter character to indicate selected articles. <CR> sets, <ESC> cancels."
 msgstr	"Caractère indiquant les articles sélectionnés. <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1528
+#: src/lang.c:1540
 msgid	"Character to show selected articles"
 msgstr	"Caractère pour articles sélect."
 
-#: src/lang.c:1529
+#: src/lang.c:1541
 msgid	"# Character used to show that an art was auto-selected (default '*')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article fut sélectionné (defaut '*')\n"
 	"# _est transformé en ' '\n"
 
-#: src/lang.c:1534
+#: src/lang.c:1546
 msgid	"Enter character to indicate recent articles. <CR> sets, <ESC> cancels."
 msgstr	"Caractère indiquant les articles récents. <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1535
+#: src/lang.c:1547
 msgid	"Character to show recent articles"
 msgstr	"Caractère pour articles récents"
 
-#: src/lang.c:1536
+#: src/lang.c:1548
 msgid	"# Character used to show that an art is recent (default 'o')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article est récent (defaut 'o')\n"
 	"# _est transformé en ' '\n"
 
-#: src/lang.c:1541
+#: src/lang.c:1553
 msgid	"Enter character to indicate unread articles. <CR> sets, <ESC> cancels."
 msgstr	"Caractère indiquant les articles non lus. <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1542
+#: src/lang.c:1554
 msgid	"Character to show unread articles"
 msgstr	"Caractère pour articles non lus"
 
-#: src/lang.c:1543
+#: src/lang.c:1555
 msgid	"# Character used to show that an art is unread (default '+')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article est non lu (defaut '+')\n"
 	"# _est transformé en ' '\n"
 
-#: src/lang.c:1548
+#: src/lang.c:1560
 msgid	"Enter character to indicate read articles. <CR> sets, <ESC> cancels."
 msgstr	"Caractère indiquant les articles lus. <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1549
+#: src/lang.c:1561
 msgid	"Character to show read articles"
 msgstr	"Caractère pour articles lus"
 
-#: src/lang.c:1550
+#: src/lang.c:1562
 msgid	"# Character used to show that an art was read (default ' ')\n"
 	"# _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article a été lu (defaut ' ')\n"
 	"# _est transformé en ' '\n"
 
-#: src/lang.c:1555
+#: src/lang.c:1567
 msgid	"Enter character to indicate killed articles. <CR> sets, <ESC> cancels."
 msgstr	"Caractère indiquant les articles filtrés. <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1556
+#: src/lang.c:1568
 msgid	"Character to show killed articles"
 msgstr	"Caractère pour articles filtrés"
 
-#: src/lang.c:1557
+#: src/lang.c:1569
 msgid	"# Character used to show that an art was killed (default 'K')\n"
 	"# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article a été filtré (defaut 'K')\n"
 	"# kill_level doit être choisi en conséquence, _ est transformé en ' '\n"
 
-#: src/lang.c:1562
+#: src/lang.c:1574
 msgid	"Enter character to indicate read selected articles. <CR> sets, <ESC> cancels."
 msgstr	"Caractère indiquant les articles lus et sélectionnés. <RETOUR> valide, <ESC> "
 	"annule."
 
-#: src/lang.c:1563
+#: src/lang.c:1575
 msgid	"Character to show readselected arts"
-msgstr	"Caractère pour articles lus & sélectionnés"
+msgstr	"Caractère pour articles sélectionnés lus"
 
-#: src/lang.c:1564
+#: src/lang.c:1576
 msgid	"# Character used to show that an art was selected before read (default ':')\n"
 	"# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr	"# Caractère utilisé pour indiquer qu'un article était sélectionné avec d'être "
 	"lu (defaut ':')\n"
 	"# kill_level doit être choisi en conséquence, _ est transformé en ' '\n"
 
-#: src/lang.c:1569
+#: src/lang.c:1581
 msgid	"Enter maximum length of newsgroup names displayed. <CR> sets."
 msgstr	"Largeur max. à afficher des noms des groupes. <RETOUR> valide."
 
-#: src/lang.c:1570
+#: src/lang.c:1582
 msgid	"Max. length of group names shown"
 msgstr	"Largeur max. des noms des groupes"
 
-#: src/lang.c:1571
+#: src/lang.c:1583
 msgid	"# Maximum length of the names of newsgroups displayed\n"
 msgstr	"# Largeur maximum à afficher des noms des groupes.\n"
 
-#: src/lang.c:1576
+#: src/lang.c:1588
 msgid	"Show lines/score in listings"
 msgstr	"Afficher dans les différentes vues"
 
-#: src/lang.c:1577
+#: src/lang.c:1589
 msgid	"# What informations should be displayed in article/thread listing\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = nothing\n"
@@ -4779,17 +4792,17 @@ msgstr	"# Quelles informations doivent ê
 	"#   2 = score\n"
 	"#   3 = lignes & score\n"
 
-#: src/lang.c:1586
+#: src/lang.c:1598
 msgid	"0 = full page scrolling, -1 = show previous last line as first on next page, "
 	"-2 = half page"
 msgstr	"0 = défilement page par page, -1 = afficher dernière ligne dans page "
 	"suivante, -2 = demi-page"
 
-#: src/lang.c:1587
+#: src/lang.c:1599
 msgid	"Number of lines to scroll in pager"
 msgstr	"Vitesse de défilement dans le pager"
 
-#: src/lang.c:1588
+#: src/lang.c:1600
 msgid	"# Number of lines that cursor-up/down will scroll in article pager\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#  -2 = half-page scrolling\n"
@@ -4805,29 +4818,29 @@ msgstr	"# Type du défilement lors de la 
 	"# * 1 = ligne par ligne\n"
 	"#   2 ou plus = défiler 2 lignes par 2 ou plus (seulement dans le pager)\n"
 
-#: src/lang.c:1598
+#: src/lang.c:1610
 msgid	"Display signatures. <SPACE> toggles & <CR> sets."
 msgstr	"Affiche les signatures. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:1599
+#: src/lang.c:1611
 msgid	"Display signatures"
 msgstr	"Afficher les signatures"
 
-#: src/lang.c:1600
+#: src/lang.c:1612
 msgid	"# If OFF don't show signatures when displaying articles\n"
 msgstr	"# Si OFF ne pas afficher les signatures lors de la visualisation\n"
 	"# des articles.\n"
 
-#: src/lang.c:1604
+#: src/lang.c:1616
 msgid	"Display uuencoded data as tagged attachments. <SPACE> toggles & <CR> sets."
 msgstr	"Afficher les archives uue comme PJ marquées. <ESPACE> change & <RETOUR> "
 	"valide."
 
-#: src/lang.c:1605
+#: src/lang.c:1617
 msgid	"Display uue data as an attachment"
 msgstr	"Afficher donnée uue comme PJ"
 
-#: src/lang.c:1606
+#: src/lang.c:1618
 msgid	"# Handling of uuencoded data in the pager\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no, display raw uuencoded data\n"
@@ -4845,30 +4858,30 @@ msgstr	"# Prise en charge des données uu
 	"données\n"
 	"#       uuencode sera condensée en une seule ligne.\n"
 
-#: src/lang.c:1616
+#: src/lang.c:1628
 msgid	"Decode German style TeX umlaut codes to ISO. <SPACE> toggles & <CR> sets."
 msgstr	"Décode les umlauts Allemands de type TeX en ISO. <ESPACE> change & <RETOUR> "
 	"valide."
 
-#: src/lang.c:1617
+#: src/lang.c:1629
 msgid	"Display \"a as Umlaut-a"
 msgstr	"Afficher \"a comme Umlaut-a"
 
-#: src/lang.c:1618
+#: src/lang.c:1630
 msgid	"# If ON decode German style TeX umlaut codes to ISO and\n"
 	"# show \"a as Umlaut-a, etc.\n"
 msgstr	"# Si ON, convertit les umlauts Allemands de type TeX en codes ISO\n"
 	"# et affiche \"a comme Umlaut-a, etc.\n"
 
-#: src/lang.c:1623 src/lang.c:1633
+#: src/lang.c:1635 src/lang.c:1645
 msgid	"Space separated list of header fields"
 msgstr	"Liste des en-têtes, séparés par des espaces"
 
-#: src/lang.c:1624
+#: src/lang.c:1636
 msgid	"Display these header fields (or *)"
 msgstr	"Afficher ces en-têtes (ou *)"
 
-#: src/lang.c:1625
+#: src/lang.c:1637
 msgid	"# Which news headers you wish to see. If you want to see _all_ the headers,\n"
 	"# place an '*' as this value. This is the only way a wildcard can be used.\n"
 	"# If you enter 'X-' as the value, you will see all headers beginning with\n"
@@ -4884,11 +4897,11 @@ msgstr	"# Quels en-têtes voulez-vous voi
 	"# en les délimitant avec des espaces. Ne rien définir, désactive cette "
 	"option.\n"
 
-#: src/lang.c:1634
+#: src/lang.c:1646
 msgid	"Do not display these header fields"
 msgstr	"Ne pas afficher ces en-têtes"
 
-#: src/lang.c:1635
+#: src/lang.c:1647
 msgid	"# Same as 'news_headers_to_display' except it denotes the opposite.\n"
 	"# An example of using both options might be if you thought X- headers were\n"
 	"# A Good Thing(tm), but thought Alan and Pape were miscreants...well then "
@@ -4908,29 +4921,29 @@ msgstr	"# Comme l'option 'news_headers_t
 	"# news_headers_to_not_display=X-Alan X-Pape\n"
 	"# Ne rien définir, désactive cette option.\n"
 
-#: src/lang.c:1645
+#: src/lang.c:1657
 msgid	"Do you want to enable automatic handling of multipart/alternative articles?"
 msgstr	"Voulez-vous activer la prise en charge automatique des articles "
 	"multipart/alternative ?"
 
-#: src/lang.c:1646
+#: src/lang.c:1658
 msgid	"Skip multipart/alternative parts"
 msgstr	"Ignorer parties multipart/alter."
 
-#: src/lang.c:1647
+#: src/lang.c:1659
 msgid	"# If ON strip multipart/alternative messages automatically\n"
 msgstr	"# Si ON, enlève automatiquement les messages multipart/alternative\n"
 
-#: src/lang.c:1652
+#: src/lang.c:1664
 msgid	"A regex used to decide which lines to show in col_quote."
 msgstr	"Une expression régulière pour déterminer quelles lignes afficher dans "
 	"col_quote."
 
-#: src/lang.c:1653
+#: src/lang.c:1665
 msgid	"Regex used to show quoted lines"
 msgstr	"Regex pour afficher les citations"
 
-#: src/lang.c:1654
+#: src/lang.c:1666
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted when viewing articles. Quoted lines are shown in col_quote.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4938,16 +4951,16 @@ msgstr	"# Une expression régulière qui p
 	"# Les citations sont affichées dans col_quote. Si vous laissez ce champ\n"
 	"# vide, tin utilisera une valeur incluse par défaut.\n"
 
-#: src/lang.c:1660
+#: src/lang.c:1672
 msgid	"A regex used to decide which lines to show in col_quote2."
 msgstr	"Une expression régulière pour déterminer quelles lignes afficher dans "
 	"col_quote2."
 
-#: src/lang.c:1661
+#: src/lang.c:1673
 msgid	"Regex used to show twice quoted l."
 msgstr	"Regex pour afficher le 2nd niveau"
 
-#: src/lang.c:1662
+#: src/lang.c:1674
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted twice. Twice quoted lines are shown in col_quote2.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4955,16 +4968,16 @@ msgstr	"# Une expression régulière qui p
 	"# second niveau. Ces citations sont affichées dans col_quote2. Si vous\n"
 	"# laissez ce champ vide, tin utilisera une valeur incluse par défaut.\n"
 
-#: src/lang.c:1668
+#: src/lang.c:1680
 msgid	"A regex used to decide which lines to show in col_quote3."
 msgstr	"Une expression régulière pour déterminer quelles lignes afficher dans "
 	"col_quote3."
 
-#: src/lang.c:1669
+#: src/lang.c:1681
 msgid	"Regex used to show >= 3 times q.l."
 msgstr	"Regex pour afficher niveau >= 3"
 
-#: src/lang.c:1670
+#: src/lang.c:1682
 msgid	"# A regular expression that tin will use to decide which lines are\n"
 	"# quoted >=3 times. >=3 times quoted lines are shown in col_quote3.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4974,16 +4987,16 @@ msgstr	"# Une expression régulière qui p
 	"# Si vous laissez ce champ vide, tin utilisera une valeur incluse par "
 	"défaut.\n"
 
-#: src/lang.c:1677
+#: src/lang.c:1689
 msgid	"A regex used to decide which words to show in col_markslashes."
 msgstr	"Une expression régulière pour déterminer quels mots afficher dans "
 	"col_markslashes."
 
-#: src/lang.c:1678
+#: src/lang.c:1690
 msgid	"Regex used to highlight /slashes/"
 msgstr	"Regex pour les mots entre /slash/"
 
-#: src/lang.c:1679
+#: src/lang.c:1691
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '/' are to be shown in col_markslashes.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -4992,16 +5005,16 @@ msgstr	"# Une expression régulière qui p
 	"# Si vous laissez ce champ vide, tin utilisera une valeur incluse par "
 	"défaut.\n"
 
-#: src/lang.c:1685
+#: src/lang.c:1697
 msgid	"A regex used to decide which words to show in col_markstars."
 msgstr	"Une expression régulière pour déterminer quels mots afficher dans "
 	"col_markstars."
 
-#: src/lang.c:1686
+#: src/lang.c:1698
 msgid	"Regex used to highlight *stars*"
 msgstr	"Regex pour les mots entre *astérisques*"
 
-#: src/lang.c:1687
+#: src/lang.c:1699
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '*' are to be shown in col_markstars.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -5010,16 +5023,16 @@ msgstr	"# Une expression régulière qui p
 	"# Si vous laissez ce champ vide, tin utilisera une valeur incluse par "
 	"défaut.\n"
 
-#: src/lang.c:1693
+#: src/lang.c:1705
 msgid	"A regex used to decide which words to show in col_markstroke."
 msgstr	"Une expression régulière pour déterminer quels mots afficher dans "
 	"col_markstroke."
 
-#: src/lang.c:1694
+#: src/lang.c:1706
 msgid	"Regex used to highlight -strokes-"
 msgstr	"Regex pour les mots entre -tirets-"
 
-#: src/lang.c:1695
+#: src/lang.c:1707
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '-' are to be shown in col_markstroke.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -5028,16 +5041,16 @@ msgstr	"# Une expression régulière qui p
 	"# Si vous laissez ce champ vide, tin utilisera une valeur incluse par "
 	"défaut.\n"
 
-#: src/lang.c:1701
+#: src/lang.c:1713
 msgid	"A regex used to decide which words to show in col_markdash."
 msgstr	"Une expression régulière pour déterminer quels mots afficher dans "
 	"col_markdash."
 
-#: src/lang.c:1702
+#: src/lang.c:1714
 msgid	"Regex used to highlight _underline_"
 msgstr	"Regex pour les mots entre _underscore_"
 
-#: src/lang.c:1703
+#: src/lang.c:1715
 msgid	"# A regular expression that tin will use to decide which words\n"
 	"# bounded by '_' are to be shown in col_markdash.\n"
 	"# If you leave this blank, tin will use a built in default.\n"
@@ -5046,47 +5059,47 @@ msgstr	"# Une expression régulière qui p
 	"# Si vous laissez ce champ vide, tin utilisera une valeur incluse par "
 	"défaut.\n"
 
-#: src/lang.c:1709
+#: src/lang.c:1721
 msgid	"A regex used to find Subject prefixes to remove.  Use '|' as separator."
 msgstr	"Une expression régulière pour trouver les préfixes dans le sujet. '|' est un "
 	"séparateur."
 
-#: src/lang.c:1710
+#: src/lang.c:1722
 msgid	"Regex with Subject prefixes"
 msgstr	"Regex pour les préfixes dans le sujet"
 
-#: src/lang.c:1711
+#: src/lang.c:1723
 msgid	"# A regular expression that tin will use to find Subject prefixes\n"
 	"# which will be removed before showing the header.\n"
 msgstr	"# Une expression régulière qui permettra à tin de trouver les préfixes\n"
 	"# dans le sujet et qui seront effacés avant d'afficher l'en-tête.\n"
 
-#: src/lang.c:1716
+#: src/lang.c:1728
 msgid	"A regex used to find Subject suffixes to remove.  Use '|' as separator."
 msgstr	"Une expression régulière pour trouver les suffixes dans le sujet. '|' est un "
 	"séparateur."
 
-#: src/lang.c:1717
+#: src/lang.c:1729
 msgid	"Regex with Subject suffixes"
 msgstr	"Regex pour les suffixes dans le sujet"
 
-#: src/lang.c:1718
+#: src/lang.c:1730
 msgid	"# A regular expression that tin will use to find Subject suffixes\n"
 	"# which will be removed when replying or posting followup.\n"
 msgstr	"# Une expression régulière qui permettra à tin de trouver les suffixes\n"
 	"# dans le sujet et qui seront effacés avant d'afficher l'en-tête.\n"
 
-#: src/lang.c:1723
+#: src/lang.c:1735
 msgid	"Enter name and options for external MIME viewer, --internal for built-in "
 	"viewer"
 msgstr	"Nom et options pour le visualisateur MIME externe, --internal pour celui "
 	"inclus"
 
-#: src/lang.c:1724
+#: src/lang.c:1736
 msgid	"MIME binary content viewer"
 msgstr	"Visualisateur de contenu MIME"
 
-#: src/lang.c:1725
+#: src/lang.c:1737
 msgid	"# If --internal automatically use the built in MIME viewer for non-text\n"
 	"# parts of articles.\n"
 	"# Otherwise specify an external viewer program (eg, metamail) or leave blank\n"
@@ -5096,129 +5109,129 @@ msgstr	"# Utilisation du visualisateur M
 	"# Sinon, spécifiez un logiciel externe (pe. metamail) ou laissez ce champ\n"
 	"# vide pour ne pas activer la prévisualisation automatique.\n"
 
-#: src/lang.c:1732
+#: src/lang.c:1744
 msgid	"Confirm before starting non-text viewing program"
 msgstr	"Confirmation avant le lancement d'un visualisateur externe"
 
-#: src/lang.c:1733
+#: src/lang.c:1745
 msgid	"Ask before using MIME viewer"
 msgstr	"Demander avant d'utiliser le visualisateur"
 
-#: src/lang.c:1734
+#: src/lang.c:1746
 msgid	"# If ON tin will ask before using metamail to display MIME messages\n"
 	"# this only happens if metamail_prog is set to something\n"
 msgstr	"# Si ON, tin demandera avant d'utiliser metamail pour afficher les\n"
 	"# messages MIME\n"
 	"# Cela ne se produit que lorsque 'metamail_prog' contient une valeur\n"
 
-#: src/lang.c:1739
+#: src/lang.c:1751
 msgid	"Ask to mark groups read when quitting. <SPACE> toggles & <CR> sets."
 msgstr	"Marquer lu les groupes à la fermeture ? <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:1740
+#: src/lang.c:1752
 msgid	"Catchup read groups when quitting"
 msgstr	"Marquer lu les groupes à la fermeture"
 
-#: src/lang.c:1741
+#: src/lang.c:1753
 msgid	"# If ON ask user if read groups should all be marked read\n"
 msgstr	"# Si ON, demande à l'utilisateur si les groupes consultés\n"
 	"# doivent être marqués lus\n"
 
-#: src/lang.c:1746
+#: src/lang.c:1758
 msgid	"Catchup group using left key"
 msgstr	"Marquer lu le groupe via la flèche gauche"
 
-#: src/lang.c:1747
+#: src/lang.c:1759
 msgid	"# If ON catchup group/thread when leaving with the left arrow key.\n"
 msgstr	"# Si ON, marque lu avec <- le groupe/fil.\n"
 
-#: src/lang.c:1752
+#: src/lang.c:1764
 msgid	"Catchup thread by using left key"
 msgstr	"Marquer lu le fil via la flèche gauche"
 
-#: src/lang.c:1758
+#: src/lang.c:1770
 msgid	"Which actions require confirmation"
 msgstr	"Quelles actions requièrent confirmation"
 
-#: src/lang.c:1759
+#: src/lang.c:1771
 msgid	"# What should we ask confirmation for.\n"
 msgstr	"# Demande de confirmation pour...\n"
 
-#: src/lang.c:1764
+#: src/lang.c:1776
 msgid	"'Mark article read' ignores tags"
 msgstr	"'Marquer lu l'article' ignore les marques"
 
-#: src/lang.c:1765
+#: src/lang.c:1777
 msgid	"# If ON the 'Mark article read' function marks only the current article.\n"
 msgstr	"# Si ON, la fonction 'Marquer lu l'article' agit uniquement sur l'article\n"
 	"# actuel.\n"
 
-#: src/lang.c:1769
+#: src/lang.c:1781
 msgid	"Program to run to open URL's, <CR> sets, <ESC> cancels."
 msgstr	"Logiciel utilisé pour lancer les URLs, <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:1770
+#: src/lang.c:1782
 msgid	"Program that opens URL's"
 msgstr	"Logiciel lançant les URLs"
 
-#: src/lang.c:1771
+#: src/lang.c:1783
 msgid	"# The program used to open URL's. The actual URL will be appended\n"
 msgstr	"# Commande ou script ouvrant les URLs. L'URL sera ajoutée\n"
 
-#: src/lang.c:1776
+#: src/lang.c:1788
 msgid	"Use mouse in xterm"
 msgstr	"Utiliser la souris dans l'xterm"
 
-#: src/lang.c:1777
+#: src/lang.c:1789
 msgid	"# If ON enable mouse key support on xterm terminals\n"
 msgstr	"# Si ON, active le support de la souris dans xterm\n"
 
-#: src/lang.c:1783
+#: src/lang.c:1795
 msgid	"Use scroll keys on keypad"
 msgstr	"Utiliser les flèches du pavé numérique"
 
-#: src/lang.c:1784
+#: src/lang.c:1796
 msgid	"# If ON enable scroll keys on terminals that support it\n"
 msgstr	"# Si ON, active les flèches de défilement pour les terminaux\n"
 	"# les supportant\n"
 
-#: src/lang.c:1789
+#: src/lang.c:1801
 msgid	"Enter maximum number of article to get. <CR> sets."
 msgstr	"Nombre max d'articles à récupérer. <RETOUR> valide."
 
-#: src/lang.c:1790
+#: src/lang.c:1802
 msgid	"Number of articles to get"
 msgstr	"Nombre d'articles à récupérer"
 
 # AMBIGUOUS
-#: src/lang.c:1791
+#: src/lang.c:1803
 msgid	"# Number of articles to get (0=no limit), if negative sets maximum number\n"
 	"# of already read articles to be read before first unread one\n"
 msgstr	"# Nombre d'articles à récupérer (0=pas de limite); si le nombre est négatif\n"
 	"# détermine le nombre max d'articles déjà lus à relire avant le premier non "
 	"lu\n"
 
-#: src/lang.c:1796
+#: src/lang.c:1808
 msgid	"Enter number of days article is considered recent. <CR> sets."
 msgstr	"Nombre de jours un article est considéré comme récent. <RETOUR> valide."
 
-#: src/lang.c:1797
+#: src/lang.c:1809
 msgid	"Article recentness time limit"
 msgstr	"Durée des articles considérés comme récents"
 
-#: src/lang.c:1798
+#: src/lang.c:1810
 msgid	"# Number of days in which article is considered recent, (0=OFF)\n"
 msgstr	"# Nombre de jours un article est considéré comme récent; (0=OFF)\n"
 
-#: src/lang.c:1802
+#: src/lang.c:1814
 msgid	"WILDMAT for normal wildcards, REGEX for full regular expression matching."
 msgstr	"WILDMAT pour les wildcards normaux, REGEX pour expressions régulières."
 
-#: src/lang.c:1803
+#: src/lang.c:1815
 msgid	"Wildcard matching"
 msgstr	"Concordance wildcard"
 
-#: src/lang.c:1804
+#: src/lang.c:1816
 msgid	"# Wildcard matching\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = wildmat\n"
@@ -5228,307 +5241,307 @@ msgstr	"# Concordances Wildcard\n"
 	"# * 0 = wildmat\n"
 	"#   1 = regex\n"
 
-#: src/lang.c:1811
+#: src/lang.c:1823
 msgid	"Enter minimal score before an article is marked killed. <CR> sets."
 msgstr	"Score minimal avant qu'un article soit filtré. <RETOUR> valide."
 
-#: src/lang.c:1812
+#: src/lang.c:1824
 msgid	"Score limit (kill)"
 msgstr	"Score minimum (filtre)"
 
-#: src/lang.c:1813
+#: src/lang.c:1825
 msgid	"# Score limit before an article is marked killed\n"
 msgstr	"# Score minimal avant qu'un article soit filtré\n"
 
-#: src/lang.c:1817
+#: src/lang.c:1829
 msgid	"Enter default score to kill articles. <CR> sets."
 msgstr	"Score par défaut pour filtrer les articles. <RETOUR> valide."
 
-#: src/lang.c:1818
+#: src/lang.c:1830
 msgid	"Default score to kill articles"
 msgstr	"Score par déf. pour filtrer les articles"
 
-#: src/lang.c:1819
+#: src/lang.c:1831
 msgid	"# Default score to kill articles\n"
 msgstr	"# Score par défaut pour filtrer les articles\n"
 
-#: src/lang.c:1823
+#: src/lang.c:1835
 msgid	"Enter minimal score before an article is marked hot. <CR> sets."
 msgstr	"Score minimal avant qu'un article soit sélectionné. <RETOUR> valide."
 
-#: src/lang.c:1824
+#: src/lang.c:1836
 msgid	"Score limit (select)"
 msgstr	"Score minimum (sélection)"
 
-#: src/lang.c:1825
+#: src/lang.c:1837
 msgid	"# Score limit before an article is marked hot\n"
 msgstr	"# Score minimal avant qu'un article soit sélectionné\n"
 
-#: src/lang.c:1829
+#: src/lang.c:1841
 msgid	"Enter default score to select articles. <CR> sets."
 msgstr	"Score par défaut pour la sélection des articles. <RETOUR> valide."
 
-#: src/lang.c:1830
+#: src/lang.c:1842
 msgid	"Default score to select articles"
 msgstr	"Score par défaut pour sél. les articles"
 
-#: src/lang.c:1831
+#: src/lang.c:1843
 msgid	"# Default score to select articles\n"
 msgstr	"# Score par défaut pour sélectionner les articles\n"
 
-#: src/lang.c:1837
+#: src/lang.c:1849
 msgid	"Use slrnface to show ''X-Face:''s"
 msgstr	"Utiliser slrnface pour afficher les 'X-Face:'"
 
-#: src/lang.c:1838
+#: src/lang.c:1850
 msgid	"# If ON using slrnface(1) to interpret the ''X-Face:'' header.\n"
 	"# Only useful when running in an xterm.\n"
 msgstr	"# Si ON, utiliser slrnface(1) pour interpréter l'en-tête 'X-Face:'\n"
 	"# Seulement utile lors de l'utilisation de tin dans un xterm.\n"
 
-#: src/lang.c:1846
+#: src/lang.c:1858
 msgid	"Use ANSI color"
 msgstr	"Utiliser les couleurs ANSI"
 
-#: src/lang.c:1847
+#: src/lang.c:1859
 msgid	"# If ON using ANSI-color\n"
 msgstr	"# Si ON, utiliser les couleurs ANSI\n"
 
-#: src/lang.c:1852
+#: src/lang.c:1864
 msgid	"Standard foreground color"
 msgstr	"Couleur standard de l'avant-plan"
 
-#: src/lang.c:1853
+#: src/lang.c:1865
 msgid	"# Standard foreground color\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Couleur standard de l'avant-plan\n"
 	"# Défaut : -1 (défaut couleur)\n"
 
-#: src/lang.c:1859
+#: src/lang.c:1871
 msgid	"Standard background color"
 msgstr	"Couleur standard de l'arrière-plan"
 
-#: src/lang.c:1860
+#: src/lang.c:1872
 msgid	"# Standard background color\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Couleur standard de l'arrière-plan\n"
 	"# Défaut : -1 (défaut couleur)\n"
 
-#: src/lang.c:1866
+#: src/lang.c:1878
 msgid	"Color for inverse text (background)"
 msgstr	"Couleur du texte inversé (arrière-plan)"
 
-#: src/lang.c:1867
+#: src/lang.c:1879
 msgid	"# Color of background for inverse text\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Couleur de l'arrière-plan pour le texte inversé\n"
 	"# Défaut : 4 (bleu)\n"
 
-#: src/lang.c:1873
+#: src/lang.c:1885
 msgid	"Color for inverse text (foreground)"
 msgstr	"Couleur du texte inversé (avant-plan)"
 
-#: src/lang.c:1874
+#: src/lang.c:1886
 msgid	"# Color of foreground for inverse text\n"
 	"# Default: 7 (white)\n"
 msgstr	"# Couleur de l'avant-plan du texte inversé\n"
 	"# Défaut : 7 (blanc)\n"
 
-#: src/lang.c:1880
+#: src/lang.c:1892
 msgid	"Color of text lines"
 msgstr	"Couleur du texte"
 
-#: src/lang.c:1881
+#: src/lang.c:1893
 msgid	"# Color of text lines\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Couleur du texte\n"
 	"# Défaut : -1 (défaut couleur)\n"
 
-#: src/lang.c:1887
+#: src/lang.c:1899
 msgid	"Color of mini help menu"
 msgstr	"Couleur du petit menu d'aide"
 
-#: src/lang.c:1888
+#: src/lang.c:1900
 msgid	"# Color of mini help menu\n"
 	"# Default: 3 (brown)\n"
 msgstr	"# Couleur du petit menu d'aide\n"
 	"# Défaut : 3 (marron)\n"
 
-#: src/lang.c:1894
+#: src/lang.c:1906
 msgid	"Color of help text"
 msgstr	"Couleur de l'aide"
 
-#: src/lang.c:1895
+#: src/lang.c:1907
 msgid	"# Color of help pages\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Couleur des pages d'aide\n"
 	"# Défaut : -1 (couleur par défaut)\n"
 
-#: src/lang.c:1901
+#: src/lang.c:1913
 msgid	"Color of status messages"
 msgstr	"Couleur des messages de statut"
 
-#: src/lang.c:1902
+#: src/lang.c:1914
 msgid	"# Color of messages in last line\n"
 	"# Default: 6 (cyan)\n"
 msgstr	"# Couleur des messages de statut\n"
 	"# Défaut : 6 (cyan)\n"
 
-#: src/lang.c:1908
+#: src/lang.c:1920
 msgid	"Color of quoted lines"
 msgstr	"Couleur de citation de 1er niveau"
 
-#: src/lang.c:1909
+#: src/lang.c:1921
 msgid	"# Color of quote-lines\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Couleur de citation de premier niveau\n"
 	"# Défaut : 2 (vert)\n"
 
-#: src/lang.c:1915
+#: src/lang.c:1927
 msgid	"Color of twice quoted line"
 msgstr	"Couleur de citation de 2nd niveau"
 
-#: src/lang.c:1916
+#: src/lang.c:1928
 msgid	"# Color of twice quoted lines\n"
 	"# Default: 3 (brown)\n"
 msgstr	"# Couleur de citation de second niveau\n"
 	"# Défaut : 3 (marron)\n"
 
-#: src/lang.c:1922
+#: src/lang.c:1934
 msgid	"Color of =>3 times quoted line"
 msgstr	"Couleur de citation de 3e niveau ou sup."
 
-#: src/lang.c:1923
+#: src/lang.c:1935
 msgid	"# Color of >=3 times quoted lines\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Couleur de citation de 3e niveau ou supérieur\n"
 	"# Défaut : 4 (bleu)\n"
 
-#: src/lang.c:1929
+#: src/lang.c:1941
 msgid	"Color of article header lines"
 msgstr	"Couleur des en-têtes de l'article"
 
-#: src/lang.c:1930
+#: src/lang.c:1942
 msgid	"# Color of header-lines\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Couleur des en-têtes de l'article\n"
 	"# Défaut : 2 (vert)\n"
 
-#: src/lang.c:1936
+#: src/lang.c:1948
 msgid	"Color of actual news header fields"
 msgstr	"Couleur des champs d'en-tête actuels"
 
-#: src/lang.c:1937
+#: src/lang.c:1949
 msgid	"# Color of actual news header fields\n"
 	"# Default: 9 (light red)\n"
 msgstr	"# Couleur des champs d'en-têtes actuels\n"
 	"# Défaut : 9 (rouge gras)\n"
 
-#: src/lang.c:1943
+#: src/lang.c:1955
 msgid	"Color of article subject lines"
 msgstr	"Couleur du sujet"
 
-#: src/lang.c:1944
+#: src/lang.c:1956
 msgid	"# Color of article subject\n"
 	"# Default: 6 (cyan)\n"
 msgstr	"# Couleur du sujet\n"
 	"# Défaut : 6 (cyan)\n"
 
-#: src/lang.c:1950
+#: src/lang.c:1962
 msgid	"Color of response counter"
 msgstr	"Couleur du compteur de réponse"
 
-#: src/lang.c:1951
+#: src/lang.c:1963
 msgid	"# Color of response counter\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Couleur du compteur de réponse\n"
 	"# Défaut : 2 (vert)\n"
 
-#: src/lang.c:1957
+#: src/lang.c:1969
 msgid	"Color of sender (From:)"
 msgstr	"Couleur de l'expéditeur (From:)"
 
-#: src/lang.c:1958
+#: src/lang.c:1970
 msgid	"# Color of sender (From:)\n"
 	"# Default: 2 (green)\n"
 msgstr	"# Couleur de l'expéditeur (From:)\n"
 	"# Défaut : 2 (vert)\n"
 
-#: src/lang.c:1964
+#: src/lang.c:1976
 msgid	"Color of help/mail sign"
 msgstr	"Couleur de l'aide/signature email"
 
-#: src/lang.c:1965
+#: src/lang.c:1977
 msgid	"# Color of Help/Mail-Sign\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Couleur de l'aide/signature email\n"
 	"# Défaut : 4 (bleu)\n"
 
-#: src/lang.c:1971
+#: src/lang.c:1983
 msgid	"Color of signatures"
 msgstr	"Couleur des signatures"
 
-#: src/lang.c:1972
+#: src/lang.c:1984
 msgid	"# Color of signature\n"
 	"# Default: 4 (blue)\n"
 msgstr	"# Couleur des signatures\n"
 	"# Défaut : 4 (bleu)\n"
 
-#: src/lang.c:1978
+#: src/lang.c:1990
 msgid	"Color of highlighted URLs"
 msgstr	"Couleur des URLs en surbrillance"
 
-#: src/lang.c:1979
+#: src/lang.c:1991
 msgid	"# Color of highlighted URLs\n"
 	"# Default: -1 (default color)\n"
 msgstr	"# Couleur des URLs en surbrillance\n"
 	"# Défaut : -1 (défaut couleur)\n"
 
-#: src/lang.c:1985
+#: src/lang.c:1997
 msgid	"Color of highlighting with *stars*"
 msgstr	"Couleur des mots entre *astérisques*"
 
-#: src/lang.c:1986
+#: src/lang.c:1998
 msgid	"# Color of word highlighting with *stars*\n"
 	"# Default: 11 (yellow)\n"
 msgstr	"# Couleur des mots entre *astérisques*\n"
 	"# Défaut : 11 (jaune)\n"
 
-#: src/lang.c:1992
+#: src/lang.c:2004
 msgid	"Color of highlighting with _dash_"
 msgstr	"Couleur des mots entre _underscore_"
 
-#: src/lang.c:1993
+#: src/lang.c:2005
 msgid	"# Color of word highlighting with _dash_\n"
 	"# Default: 13 (light pink)\n"
 msgstr	"# Couleur des mots entre _underscore_\n"
 	"# Défaut : 13 (rose gras)\n"
 
-#: src/lang.c:1999
+#: src/lang.c:2011
 msgid	"Color of highlighting with /slash/"
 msgstr	"Couleur des mots entre /slash/"
 
-#: src/lang.c:2000
+#: src/lang.c:2012
 msgid	"# Color of word highlighting with /slash/\n"
 	"# Default: 14 (light cyan)\n"
 msgstr	"# Couleur des mots entre /slash/\n"
 	"# Défaut : 14 (cyan gras)\n"
 
-#: src/lang.c:2006
+#: src/lang.c:2018
 msgid	"Color of highlighting with -stroke-"
 msgstr	"Couleur des mots entre -tirets-"
 
-#: src/lang.c:2007
+#: src/lang.c:2019
 msgid	"# Color of word highlighting with -stroke-\n"
 	"# Default: 12 (light blue)\n"
 msgstr	"# Couleur des mots entre -tirets-\n"
 	"# Défaut : 12 (bleu gras)\n"
 
-#: src/lang.c:2014
+#: src/lang.c:2026
 msgid	"Attr. of highlighting with *stars*"
 msgstr	"Style des mots entre *astérisques*"
 
-#: src/lang.c:2015
+#: src/lang.c:2027
 msgid	"# Attributes of word highlighting on mono terminals\n"
 	"# Possible values are:\n"
 	"#   0 = Normal\n"
@@ -5554,57 +5567,57 @@ msgstr	"# Style des mots mis en évidence
 	"# Style des mots entre *astérisques*\n"
 	"# Défaut : 6 (gras)\n"
 
-#: src/lang.c:2030
+#: src/lang.c:2042
 msgid	"Attr. of highlighting with _dash_"
 msgstr	"Style des mots entre _underscore_"
 
-#: src/lang.c:2031
+#: src/lang.c:2043
 msgid	"# Attribute of word highlighting with _dash_\n"
 	"# Default: 2 (best highlighting)\n"
 msgstr	"# Style des mots entre _tirets_\n"
 	"# Défaut : 2 (misé en évidence accrue)\n"
 
-#: src/lang.c:2037
+#: src/lang.c:2049
 msgid	"Attr. of highlighting with /slash/"
 msgstr	"Style des mots entre /slash/"
 
-#: src/lang.c:2038
+#: src/lang.c:2050
 msgid	"# Attribute of word highlighting with /slash/\n"
 	"# Default: 5 (half bright)\n"
 msgstr	"# Style des mots entre /slash/\n"
 	"# Défaut : 5 (contrasté)\n"
 
-#: src/lang.c:2044
+#: src/lang.c:2056
 msgid	"Attr. of highlighting with -stroke-"
 msgstr	"Style des mots entre -tirets-"
 
-#: src/lang.c:2045
+#: src/lang.c:2057
 msgid	"# Attribute of word highlighting with -stroke-\n"
 	"# Default: 3 (reverse video)\n"
 msgstr	"# Style des mots entre -tirets-\n"
 	"# Défaut : 3 (vidéo inversée)\n"
 
-#: src/lang.c:2051
+#: src/lang.c:2063
 msgid	"URL highlighting in message body"
 msgstr	"Mise en évidence des URLs dans les articles"
 
-#: src/lang.c:2052
+#: src/lang.c:2064
 msgid	"# Enable URL highlighting?\n"
 msgstr	"# Mettre en évidence les URLs ?\n"
 
-#: src/lang.c:2057
+#: src/lang.c:2069
 msgid	"Word highlighting in message body"
 msgstr	"Mise en évidence des mots dans les articles"
 
-#: src/lang.c:2058
+#: src/lang.c:2070
 msgid	"# Enable word highlighting?\n"
 msgstr	"# Mettre en évidence les mots ?\n"
 
-#: src/lang.c:2063
+#: src/lang.c:2075
 msgid	"What to display instead of mark"
 msgstr	"Afficher ça plutôt qu'une marque"
 
-#: src/lang.c:2064
+#: src/lang.c:2076
 msgid	"# Should the leading and ending stars and dashes also be displayed,\n"
 	"# even when they are highlighting marks?\n"
 	"# Possible values are (the default is marked with *):\n"
@@ -5618,58 +5631,58 @@ msgstr	"# Est-ce que les astérisques et 
 	"#   1 = oui, afficher la marque\n"
 	"# * 2 = plutôt afficher un espace\n"
 
-#: src/lang.c:2073
+#: src/lang.c:2085
 msgid	"Enter column number to wrap article lines to in the pager. <CR> sets."
 msgstr	"Largeur du pager. <RETOUR> valide."
 
-#: src/lang.c:2074
+#: src/lang.c:2086
 msgid	"Page line wrap column"
 msgstr	"Largeur du pager"
 
-#: src/lang.c:2075
+#: src/lang.c:2087
 msgid	"# Wrap article lines at column\n"
 msgstr	"# Justifier les lignes des articles à la colonne indiquée\n"
 
-#: src/lang.c:2080
+#: src/lang.c:2092
 msgid	"Wrap around threads on next unread"
 msgstr	"Englober les fils pour le non lu suivant"
 
-#: src/lang.c:2081
+#: src/lang.c:2093
 msgid	"# If ON wrap around threads on searching next unread article\n"
 msgstr	"# Si ON, englober les fils lors de la recherche de l'article suivant non lu\n"
 
-#: src/lang.c:2085
+#: src/lang.c:2097
 msgid	"Enter default mail address (and fullname). <CR> sets."
 msgstr	"Adresse mail par défaut (et nom complet). <RETOUR> valide."
 
-#: src/lang.c:2086
+#: src/lang.c:2098
 msgid	"Mail address (and fullname)"
 msgstr	"Adresse mail (et nom complet)"
 
-#: src/lang.c:2087
+#: src/lang.c:2099
 msgid	"# User's mail address (and fullname), if not username@host (fullname)\n"
 msgstr	"# Adresse mail (et nom complet) si ce n'est pas utilisateur@hôte\n"
 	"# (nom complet)\n"
 
-#: src/lang.c:2092
+#: src/lang.c:2104
 msgid	"Show empty Followup-To in editor"
 msgstr	"Inclure en-tête Followup-To dans l'éditeur"
 
-#: src/lang.c:2093
+#: src/lang.c:2105
 msgid	"# If ON show empty Followup-To header when editing an article\n"
 msgstr	"# Si ON, inclure l'en-tête Followup-To lors de la composition\n"
 	"# des articles\n"
 
-#: src/lang.c:2097
+#: src/lang.c:2109
 msgid	"Enter path/! command/--none to create your default signature. <CR> sets."
 msgstr	"Chemin/! commande/--aucune pour la création de votre signature. <RETOUR> "
 	"valide."
 
-#: src/lang.c:2098
+#: src/lang.c:2110
 msgid	"Create signature from path/command"
 msgstr	"Signature depuis fichier/commande"
 
-#: src/lang.c:2099
+#: src/lang.c:2111
 msgid	"# Signature path (random sigs)/file to be used when posting/replying\n"
 	"# default_sigfile=file       appends file as signature\n"
 	"# default_sigfile=!command   executes external command to generate a "
@@ -5680,51 +5693,51 @@ msgstr	"# Fichier de signature à utilise
 	"# default_sigfile=fichier\tutilise le contenu du fichier comme signature\n"
 	"# default_sigfile=!commande\texécute une commande externe comme signature\n"
 
-#: src/lang.c:2106
+#: src/lang.c:2118
 msgid	"Prepend signature with \"-- \" on own line. <SPACE> toggles & <CR> sets."
 msgstr	"Précéder la signature avec \"-- \". <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:2107
+#: src/lang.c:2119
 msgid	"Prepend signature with \"-- \""
 msgstr	"Précéder la signature avec \"-- \""
 
-#: src/lang.c:2108
+#: src/lang.c:2120
 msgid	"# If ON prepend the signature with dashes '\\n-- \\n'\n"
 msgstr	"# Si ON, précéde la signature avec le délimiteur standard\n"
 	"# '\\n-- \\'\n"
 
-#: src/lang.c:2112
+#: src/lang.c:2124
 msgid	"Add signature when reposting articles. <SPACE> toggles & <CR> sets."
 msgstr	"Rajouter la signature lors du repostage. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:2113
+#: src/lang.c:2125
 msgid	"Add signature when reposting"
 msgstr	"Rajouter la signature lors du repostage"
 
-#: src/lang.c:2114
+#: src/lang.c:2126
 msgid	"# If ON add signature to reposted articles\n"
 msgstr	"# Si ON, rajoute la signature aux articles repostés\n"
 
-#: src/lang.c:2118
+#: src/lang.c:2130
 msgid	"Enter quotation marks, %s or %S for author's initials."
 msgstr	"Caractère de citation, %s ou %S  pour les initiales de l'auteur."
 
-#: src/lang.c:2119
+#: src/lang.c:2131
 msgid	"Characters used as quote-marks"
 msgstr	"Caractère de citation"
 
-#: src/lang.c:2120
+#: src/lang.c:2132
 msgid	"# Characters used in quoting to followups and replies.\n"
 	"# '_' is replaced by ' ', %%s, %%S are replaced by author's initials.\n"
 msgstr	"# Caractères utilisés pour les citations.\n"
 	"# '_' est remplacé par ' ', %%s, %%S sont remplacés par les intiales\n"
 	"# de l'auteur auquel vous répondez.\n"
 
-#: src/lang.c:2126
+#: src/lang.c:2138
 msgid	"Quoting behavior"
 msgstr	"Type de citations"
 
-#: src/lang.c:2127
+#: src/lang.c:2139
 msgid	"# How quoting should be handled when following up or replying.\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = Nothing special\n"
@@ -5744,17 +5757,17 @@ msgstr	"# Type de citations lors des rép
 	"#   4 = Citer les lignes vides\n"
 	"# * 5 = Compresser les citations, citer les lignes vides\n"
 	"#   6 = Citer les signatures, citer les lignes vides\n"
-	"#   7 = Citations compr., signatures & lignes vides citées\n"
+	"#   7 = Citations compr., signatures et lignes vides citées\n"
 
-#: src/lang.c:2140 src/lang.c:2148 src/lang.c:2154
+#: src/lang.c:2152 src/lang.c:2160 src/lang.c:2166
 msgid	"%A Addr %D Date %F Addr+Name %G Groupname %M Message-ID %N Name %C First Name"
 msgstr	"%A Adresse %D Date %F Adresse+Nom %G groupe %M Message-ID %N Nom %C Prénom"
 
-#: src/lang.c:2141
+#: src/lang.c:2153
 msgid	"Quote line when following up"
 msgstr	"Citation lors d'un suivi"
 
-#: src/lang.c:2142
+#: src/lang.c:2154
 msgid	"# Format of quote line when mailing/posting/following-up an article\n"
 	"# %%A Address    %%D Date   %%F Addr+Name   %%G Groupname   %%M Message-ID\n"
 	"# %%N Full Name  %%C First Name   %%I Initials\n"
@@ -5762,35 +5775,35 @@ msgstr	"# Format de la citation lors de 
 	"# %%A Adresse\t\t%%D Date\t%%F Adresse+Nom\t%%G groupe\n"
 	"# %%M Message-ID\t%%N Nom complet\t%%C Prénom\t%%I Initiales\n"
 
-#: src/lang.c:2149
+#: src/lang.c:2161
 msgid	"Quote line when cross-posting"
 msgstr	"Citation lors d'un cross-post"
 
-#: src/lang.c:2155
+#: src/lang.c:2167
 msgid	"Quote line when mailing"
 msgstr	"Citation lors d'un envoi par mail"
 
-#: src/lang.c:2160
+#: src/lang.c:2172
 msgid	"If ON, include User-Agent: header. <SPACE> toggles & <CR> sets."
 msgstr	"Si ON, inclus l'en-tête 'User-Agent:'. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:2161
+#: src/lang.c:2173
 msgid	"Insert 'User-Agent:'-header"
 msgstr	"Insérer l'en-tête 'User-Agent'"
 
-#: src/lang.c:2162
+#: src/lang.c:2174
 msgid	"# If ON include advertising User-Agent: header\n"
 msgstr	"# Si ON inclus l'en-tête 'User-Agent:'\n"
 
-#: src/lang.c:2167
+#: src/lang.c:2179
 msgid	"Enter charset name for MIME (e.g. US-ASCII, ISO-8859-1, EUC-KR), <CR> to set."
 msgstr	"Jeu d'encodage pour MIME (p.e. US-ASCII, ISO_8859_1, EUC_KR), <RETOUR> valide."
 
-#: src/lang.c:2168
+#: src/lang.c:2180
 msgid	"MM_CHARSET"
 msgstr	"MM_CHARSET"
 
-#: src/lang.c:2169
+#: src/lang.c:2181
 msgid	"# Charset supported locally which is also used for MIME header and\n"
 	"# Content-Type header.\n"
 	"# If not set, the value of the environment variable MM_CHARSET is used.\n"
@@ -5807,27 +5820,27 @@ msgstr	"# Jeu d'encodage supporté locale
 	"# d'encodage autre que mm_charset est considéré comme non disponible et\n"
 	"# représenté par '?'.\n"
 
-#: src/lang.c:2179
+#: src/lang.c:2191
 msgid	"MM_NETWORK_CHARSET"
 msgstr	"MM_NETWORK_CHARSET"
 
-#: src/lang.c:2180
+#: src/lang.c:2192
 msgid	"# Charset used for MIME (Content-Type) header in postings.\n"
 msgstr	"# Jeu d'encodage utilisé par l'en-tête MIME (Content-Type).\n"
 
-#: src/lang.c:2186
+#: src/lang.c:2198
 msgid	"Mailbox format"
 msgstr	"Format de la boîte à lettres"
 
-#: src/lang.c:2187
+#: src/lang.c:2199
 msgid	"# Format of the mailbox.\n"
 msgstr	"# Format de la boîte à lettres\n"
 
-#: src/lang.c:2192
+#: src/lang.c:2204
 msgid	"MIME encoding in news messages"
 msgstr	"Encodage MIME dans les messages usenet"
 
-#: src/lang.c:2193
+#: src/lang.c:2205
 msgid	"# MIME encoding (8bit, base64, quoted-printable, 7bit) of the body\n"
 	"# for mails and posts, if necessary. QP is efficient for most European\n"
 	"# character sets (ISO-8859-X) with small fraction of non-US-ASCII chars,\n"
@@ -5840,15 +5853,15 @@ msgstr	"# Si nécessaire, encodage MIME (
 	"# pour les jeux d'encodage 8bit Est Asiatique, Grec et Russe, car contenant\n"
 	"# un plus grand nombre de caractères 8bit.\n"
 
-#: src/lang.c:2201 src/lang.c:2222
+#: src/lang.c:2213 src/lang.c:2234
 msgid	"Don't change unless you know what you are doing. <ESC> cancels."
 msgstr	"Ne pas changer sauf si vous savez ce que vous faites. <ESC> annule."
 
-#: src/lang.c:2202
+#: src/lang.c:2214
 msgid	"Use 8bit characters in news headers"
 msgstr	"Caractères 8bit dans les en-têtes usenet"
 
-#: src/lang.c:2203
+#: src/lang.c:2215
 msgid	"# If ON, 8bit characters in news headers are NOT encoded.\n"
 	"# default is OFF. Thus 8bit characters are encoded by default.\n"
 	"# 8bit chars in header are encoded regardless of the value of this\n"
@@ -5859,28 +5872,28 @@ msgstr	"# Si ON, les caractères 8bit dan
 	"# de la valeur de cette option sauf si post_mime_encoding a comme\n"
 	"# valeur 8bit.\n"
 
-#: src/lang.c:2210
+#: src/lang.c:2222
 msgid	"Auto-view post-processed files <SPACE> toggles, <CR> sets, <ESC> cancels."
-msgstr	"Visualiser automatiquement les fichiers traités. <ESPACE> change, "
-	"<RETOUR>valide, <ESC> annule."
+msgstr	"Visualiser automatiquement les fichiers traités. <ESPACE> change, <RETOUR> "
+	"valide, <ESC> annule."
 
-#: src/lang.c:2211
+#: src/lang.c:2223
 msgid	"View post-processed files"
 msgstr	"Voir les fichiers traités"
 
-#: src/lang.c:2212
+#: src/lang.c:2224
 msgid	"# If set, post processed files will be opened in a viewer\n"
 msgstr	"# Si ON, les fichiers traités seront ouverts\n"
 
-#: src/lang.c:2217
+#: src/lang.c:2229
 msgid	"MIME encoding in mail messages"
 msgstr	"Encodage MIME pour les mails"
 
-#: src/lang.c:2223
+#: src/lang.c:2235
 msgid	"Use 8bit characters in mail headers"
 msgstr	"Caractères 8bits dans en-têtes mail"
 
-#: src/lang.c:2224
+#: src/lang.c:2236
 msgid	"# If ON, 8bit characters in mail headers are NOT encoded.\n"
 	"# default is OFF. Thus 8bit characters are encoded by default.\n"
 	"# 8bit chars in headers are encoded regardless of the value of this "
@@ -5898,26 +5911,26 @@ msgstr	"# Si ON, les caractères 8bit dan
 	"# mails donc nous vous conseillons de ne PAS activer cette option sauf si\n"
 	"# vous avez une bonne raison.\n"
 
-#: src/lang.c:2234
+#: src/lang.c:2246
 msgid	"Strip blanks from ends of lines"
 msgstr	"Nettoyer les fins de lignes"
 
-#: src/lang.c:2235
+#: src/lang.c:2247
 msgid	"# If ON strip blanks from ends of lines for faster display on slow "
 	"terminals.\n"
 msgstr	"# Si ON, enlève les blancs présents aux fins de lignes pour un affichage \n"
 	"# plus rapide sur les terminaux lents.\n"
 
-#: src/lang.c:2240
+#: src/lang.c:2252
 msgid	"If ON, use transliteration. <SPACE> toggles & <CR> sets."
 msgstr	"Si ON, utilise 'translit' pour iconv_open(3). <ESPACE> change & <RETOUR> "
 	"valide."
 
-#: src/lang.c:2241
+#: src/lang.c:2253
 msgid	"Transliteration"
 msgstr	"Translitération (conversion)"
 
-#: src/lang.c:2242
+#: src/lang.c:2254
 msgid	"# If ON, use //TRANSLIT extension. This means that when a character cannot\n"
 	"# be represented in the in the target character set, it can be approximated\n"
 	"# through one or several similarly looking characters.\n"
@@ -5925,147 +5938,147 @@ msgstr	"# Si ON, utilise l'extension //T
 	"# caractère n'est pas disponible dans l'encodage choisi, il peut être\n"
 	"# remplacé par un ou plusieurs autres caractères similaires.\n"
 
-#: src/lang.c:2249
+#: src/lang.c:2261
 msgid	"Send you a carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr	"Vous envoie automatiquement une copie (CC). <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:2250
+#: src/lang.c:2262
 msgid	"Send you a cc automatically"
 msgstr	"Envoyer automatiquement une copie"
 
-#: src/lang.c:2251
+#: src/lang.c:2263
 msgid	"# If ON automatically put your name in the Cc: field when mailing an article\n"
 msgstr	"# Si ON, inclus automatiquement votre nom dans le champ Cc: lors d'un envoi "
 	"par mail d'un article.\n"
 
-#: src/lang.c:2255
+#: src/lang.c:2267
 msgid	"Send you a blind carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr	"Vous envoie automatiquement une copie privée (BCC). <ESPACE> change & "
 	"<RETOUR> valide."
 
-#: src/lang.c:2256
+#: src/lang.c:2268
 msgid	"Send you a blind cc automatically"
 msgstr	"Envoi automatique d'une copie privée"
 
-#: src/lang.c:2257
+#: src/lang.c:2269
 msgid	"# If ON automatically put your name in the Bcc: field when mailing an "
 	"article\n"
 msgstr	"# Si ON, inclus automatiquement votre nom dans le champ Bcc: lors d'un envoi "
 	"par mail d'un article.\n"
 
-#: src/lang.c:2261
+#: src/lang.c:2273
 msgid	"Enter address elements about which you want to be warned. <CR> sets."
 msgstr	"Être averti de ces éléments. <RETOUR> valide."
 
-#: src/lang.c:2262
+#: src/lang.c:2274
 msgid	"Spamtrap warning address parts"
 msgstr	"Pièges à spam dans les adresses"
 
-#: src/lang.c:2263
+#: src/lang.c:2275
 msgid	"# A comma-delimited list of address-parts you want to be warned\n"
 	"# about when trying to reply by email.\n"
 msgstr	"# Une liste des parties dans les adresses, délimitées par des virgules,\n"
 	"# que vous souhaitez connaître lors d'une réponse par mail.\n"
 
-#: src/lang.c:2268
+#: src/lang.c:2280
 msgid	"Enter default number of days a filter entry will be valid. <CR> sets."
 msgstr	"Entrer la durée d'un filtre (en nombre de jours). <RETOUR> valide."
 
-#: src/lang.c:2269
+#: src/lang.c:2281
 msgid	"No. of days a filter entry is valid"
 msgstr	"Durée de validité d'un filtre"
 
-#: src/lang.c:2270
+#: src/lang.c:2282
 msgid	"# Number of days a short term filter will be active\n"
 msgstr	"# Durée (en nombre de jours) de validité d'un filtre\n"
 
-#: src/lang.c:2274
+#: src/lang.c:2286
 msgid	"Add posted articles to filter. <SPACE> toggles & <CR> sets."
 msgstr	"Créer un filtre pour les articles postés. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:2275
+#: src/lang.c:2287
 msgid	"Add posted articles to filter"
 msgstr	"Créer un filtre pour les articles postés"
 
-#: src/lang.c:2276
+#: src/lang.c:2288
 msgid	"# If ON add posted articles which start a new thread to filter for\n"
 	"# highlighting follow-ups\n"
 msgstr	"# Si ON, crée un filtre pour les articles débutant un nouveau fil\n"
 	"# afin de mettre en surbrillance les suivis.\n"
 
-#: src/lang.c:2280
+#: src/lang.c:2292
 msgid	"The directory where articles/threads are to be saved in mailbox format."
 msgstr	"Le répertoire où sont enregistrés les articles/fils au format mailbox."
 
-#: src/lang.c:2281
+#: src/lang.c:2293
 msgid	"Mail directory"
 msgstr	"Répertoire mail"
 
-#: src/lang.c:2282
+#: src/lang.c:2294
 msgid	"# (-m) directory where articles/threads are saved in mailbox format\n"
 msgstr	"# (-m) répertoire où sont enregistrés les articles/fils au format mailbox\n"
 
-#: src/lang.c:2287
+#: src/lang.c:2299
 msgid	"Save articles in batch mode (-S)"
 msgstr	"Enregistrer articles en arrière-plan (-S)"
 
-#: src/lang.c:2288
+#: src/lang.c:2300
 msgid	"# If ON articles/threads will be saved in batch mode when save -S\n"
 	"# or mail (-M/-N) is specified on the command line\n"
 msgstr	"# Si ON, les articles/fils seront enregistrés à l'arrière-plan lorsque\n"
 	"# l'option -S ou (-M/-N) pour les mails est spécifiée.\n"
 
-#: src/lang.c:2293
+#: src/lang.c:2305
 msgid	"The directory where you want articles/threads saved."
 msgstr	"Le répertoire où vous voulez enregistrer les articles/fils."
 
-#: src/lang.c:2294
+#: src/lang.c:2306
 msgid	"Directory to save arts/threads in"
 msgstr	"Répertoire où enregistrer les articles/fils"
 
-#: src/lang.c:2295
+#: src/lang.c:2307
 msgid	"# Directory where articles/threads are saved\n"
 msgstr	"# Répertoire où sont enregistrés les articles/fils\n"
 
-#: src/lang.c:2299
+#: src/lang.c:2311
 msgid	"Auto save article/thread by Archive-name: header. <SPACE> toggles & <CR> sets."
 msgstr	"Enregistrement auto. basé sur l'en-tête Archive-name:. <ESPACE> change & "
 	"<RETOUR> valide."
 
-#: src/lang.c:2300
+#: src/lang.c:2312
 msgid	"Use Archive-name: header for save"
 msgstr	"Honorer l'en-tête 'Archive-name:'"
 
-#: src/lang.c:2301
+#: src/lang.c:2313
 msgid	"# If ON articles/threads with Archive-name: in mail header will\n"
 	"# be automatically saved with the Archive-name & part/patch no.\n"
 msgstr	"# Si ON, les articles/fils avec 'Archive-name:' dans l'en-tête\n"
 	"# du mail seront enregistrés automatiquement avec l'Archive-name\n"
 	"# & le numéro de la partie et ou patch.\n"
 
-#: src/lang.c:2306
+#: src/lang.c:2318
 msgid	"Mark saved articles/threads as read. <SPACE> toggles, <CR> sets, <ESC> "
 	"cancels."
-msgstr	"Marquer lu les articles/fils enregistrés. <ESPACE> change, <RETOUR> valide & "
+msgstr	"Marquer lu les articles/fils enregistrés. <ESPACE> change, <RETOUR> valide, "
 	"<ESC> annule."
 
-#: src/lang.c:2307
+#: src/lang.c:2319
 msgid	"Mark saved articles/threads as read"
 msgstr	"Marquer lu les articles/fils enregistrés"
 
-#: src/lang.c:2308
+#: src/lang.c:2320
 msgid	"# If ON mark articles that are saved as read\n"
 msgstr	"# Si ON, marque lu les articles qui sont enregistrés\n"
 
-#: src/lang.c:2312
+#: src/lang.c:2324
 msgid	"Do post processing (eg. extract attachments) for saved articles."
 msgstr	"Post-traiter (p.e. extraire les pj) les articles enregistrés."
 
-#: src/lang.c:2313
+#: src/lang.c:2325
 msgid	"Post process saved articles"
 msgstr	"Post-traiter les articles enregistrés"
 
-#: src/lang.c:2314
+#: src/lang.c:2326
 msgid	"# Perform post processing (saving binary attachments) from saved articles.\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no\n"
@@ -6077,103 +6090,103 @@ msgstr	"# Post-traitement (enregistremen
 	"#   1 = extraire uniquement les *.shar (archives shell)\n"
 	"#   2 = oui\n"
 
-#: src/lang.c:2323
+#: src/lang.c:2335
 msgid	"Process only unread articles"
 msgstr	"Traiter uniquement les articles non lus"
 
-#: src/lang.c:2324
+#: src/lang.c:2336
 msgid	"# If ON only save/print/pipe/mail unread articles (tagged articles excepted)\n"
 msgstr	"# Si ON, enregistre/imprime/pipe/envoi articles non lu (excepté les articles "
 	"marqués)\n"
 
-#: src/lang.c:2329
+#: src/lang.c:2341
 msgid	"Print all or just part of header. <SPACE> toggles & <CR> sets."
 msgstr	"Afficher tout ou une partie des en-têtes. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:2330
+#: src/lang.c:2342
 msgid	"Print all headers when printing"
 msgstr	"Imprimer tous les en-têtes"
 
-#: src/lang.c:2331
+#: src/lang.c:2343
 msgid	"# If ON print all of article header otherwise just the important lines\n"
 msgstr	"# Si ON, imprimer tous les en-têtes, sinon juste les lignes importantes\n"
 
-#: src/lang.c:2335
+#: src/lang.c:2347
 msgid	"The printer program with options that is to be used to print articles/threads."
 msgstr	"Le logiciel d'impression avec options utilisées pour imprimer les "
 	"articles/fils."
 
-#: src/lang.c:2336
+#: src/lang.c:2348
 msgid	"Printer program with options"
 msgstr	"Logiciel d'impression avec options"
 
-#: src/lang.c:2337
+#: src/lang.c:2349
 msgid	"# Print program with parameters used to print articles/threads\n"
 msgstr	"# Logiciel d'impression avec options utilisées por imprimer les "
 	"articles/fils\n"
 
-#: src/lang.c:2343
+#: src/lang.c:2355
 msgid	"Force redraw after certain commands"
 msgstr	"Rafraîchir l'écran après certaines actions"
 
-#: src/lang.c:2344
+#: src/lang.c:2356
 msgid	"# If ON a screen redraw will always be done after certain external commands\n"
 msgstr	"# Si ON, un rafraîchissement de l'écran sera toujours effectué après "
 	"certaines commandes externes\n"
 
-#: src/lang.c:2348
+#: src/lang.c:2360
 msgid	"Start editor with line offset. <SPACE> toggles, <CR> sets, <ESC> cancels."
-msgstr	"Lancer l'éditeur avec une ligne décalée. <ESPACE> change, <RETOUR> valide & "
+msgstr	"Lancer l'éditeur avec une ligne décalée. <ESPACE> change, <RETOUR> valide, "
 	"<ESC> annule."
 
-#: src/lang.c:2349
+#: src/lang.c:2361
 msgid	"Start editor with line offset"
 msgstr	"Lancer l'éditeur avec une ligne décalée"
 
-#: src/lang.c:2350
+#: src/lang.c:2362
 msgid	"# If ON editor will be started with cursor offset into the file\n"
 	"# otherwise the cursor will be positioned at the first line\n"
 msgstr	"# Si ON, l'éditeur sera lancé avec le curseur décalé\n"
 	"# sinon, le curseur sera positionné sur la première ligne\n"
 
-#: src/lang.c:2355
+#: src/lang.c:2367
 msgid	"Enter %E for editor, %F for filename, %N for line-number, <CR> to set."
 msgstr	"%E pour l'éditeur, %F pour le fichier, %N pour la ligne, <RETOUR> valide."
 
-#: src/lang.c:2356
+#: src/lang.c:2368
 msgid	"Invocation of your editor"
 msgstr	"Lancement de votre éditeur"
 
-#: src/lang.c:2357
+#: src/lang.c:2369
 msgid	"# Format of editor line including parameters\n"
 	"# %%E Editor  %%F Filename  %%N Linenumber\n"
 msgstr	"# Format des paramètres pour l'éditeur\n"
 	"# %%E Éditeur  %%F Fichier  %%N N° de ligne\n"
 
-#: src/lang.c:2362
+#: src/lang.c:2374
 msgid	"Enter name and options for external-inews, --internal for internal inews"
 msgstr	"Nom et options pour l'inews externe, --internal pour l'inews interne"
 
-#: src/lang.c:2363
+#: src/lang.c:2375
 msgid	"External inews"
 msgstr	"Inews externe"
 
-#: src/lang.c:2364
+#: src/lang.c:2376
 msgid	"# If --internal use the built in mini inews for posting via NNTP\n"
 	"# otherwise use an external inews program\n"
 msgstr	"# Si '--internal', utilise l'inews allégé intégré pour poster via\n"
 	"# NNTP sinon, utilise un logiciel inews externe\n"
 
-#: src/lang.c:2368
+#: src/lang.c:2380
 msgid	"Enter %M for mailer, %S for subject, %T for to, %F for filename, <CR> to set."
 msgstr	"%M pour le MUA, %S pour le sujet, %T pour 'to:', %F pour Fichier, <RETOUR> "
 	"valide."
 
-#: src/lang.c:2369
+#: src/lang.c:2381
 msgid	"Invocation of your mail command"
 msgstr	"Lancement de votre client mail"
 
-#: src/lang.c:2370
+#: src/lang.c:2382
 msgid	"# Format of mailer line including parameters\n"
 	"# %%M Mailer  %%S Subject  %%T To  %%F Filename\n"
 	"# ie. to use elm as your mailer:    elm -s \"%%S\" \"%%T\" < %%F\n"
@@ -6183,11 +6196,11 @@ msgstr	"# Format des paramètres pour le 
 	"# p.e. pour utiliser elm comme MUA : elm -s \"%%S\" \"%%T\" < %%F\n"
 	"# p.e. pour elm interactif         : elm -i %%F -s \"%%S\" \"%%T\"\n"
 
-#: src/lang.c:2378
+#: src/lang.c:2390
 msgid	"Use interactive mail reader"
 msgstr	"Utiliser un MUA interactif"
 
-#: src/lang.c:2379
+#: src/lang.c:2391
 msgid	"# Interactive mailreader\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = no interactive mailreader\n"
@@ -6199,59 +6212,59 @@ msgstr	"# MUA interactif :\n"
 	"#   1 = utiliser un MUA interactif avec les en-têtes du fichier\n"
 	"#   2 = utiliser un MUA interactif sans les en-têtes du fichier\n"
 
-#: src/lang.c:2388
+#: src/lang.c:2400
 msgid	"Remove ~/.article after posting"
 msgstr	"Effacer ~/.article après le postage"
 
-#: src/lang.c:2389
+#: src/lang.c:2401
 msgid	"# If ON remove ~/.article after posting.\n"
 msgstr	"# Si ON, effacer ~/.article après le postage.\n"
 
-#: src/lang.c:2393
+#: src/lang.c:2405
 msgid	"Filename for all posted articles, <CR> sets, no filename=do not save."
 msgstr	"Fichier pour les articles postés, <RETOUR> valide, pas de fichier = désactive."
 
-#: src/lang.c:2394
+#: src/lang.c:2406
 msgid	"Filename for posted articles"
 msgstr	"Fichier pour les articles postés"
 
-#: src/lang.c:2395
+#: src/lang.c:2407
 msgid	"# Filename where to keep all postings (default posted)\n"
 	"# If no filename is set then postings will not be saved\n"
 msgstr	"# Fichier où enregistrer les articles postés ('posted' par défaut)\n"
 	"# Si aucun fichier n'est indiqué, les articles postés ne seront pas\n"
 	"# enregistrés\n"
 
-#: src/lang.c:2400
+#: src/lang.c:2412
 msgid	"Keep all failed articles in ~/dead.articles. <SPACE> toggles & <CR> sets."
 msgstr	"Garder les articles non postés dans ~/dead.articles. <ESPACE> change & "
 	"<RETOUR> valide."
 
-#: src/lang.c:2401
+#: src/lang.c:2413
 msgid	"Keep failed arts in ~/dead.articles"
 msgstr	"Articles non postés dans ~/dead.articles"
 
-#: src/lang.c:2402
+#: src/lang.c:2414
 msgid	"# If ON keep all failed postings in ~/dead.articles\n"
 msgstr	"# Si ON, garde tous les articles non postés dans ~/dead.articles\n"
 
-#: src/lang.c:2406
+#: src/lang.c:2418
 msgid	"Do you want to strip unsubscribed groups from .newsrc"
 msgstr	"Voulez-vous effacer dans newsrc les groupes auxquels vous vous êtes désabonnés"
 
-#: src/lang.c:2407
+#: src/lang.c:2419
 msgid	"No unsubscribed groups in newsrc"
 msgstr	"Pas de groupes désabonnés dans newsrc"
 
-#: src/lang.c:2408
+#: src/lang.c:2420
 msgid	"# If ON strip unsubscribed groups from newsrc\n"
 msgstr	"# Si ON, efface dans newsrc les groupes auxquels vous vous êtes désabonnés\n"
 
-#: src/lang.c:2413
+#: src/lang.c:2425
 msgid	"Remove bogus groups from newsrc"
 msgstr	"Effacer les groupes corrompus de newsrc"
 
-#: src/lang.c:2414
+#: src/lang.c:2426
 msgid	"# What to do with bogus groups in newsrc file\n"
 	"# Possible values are (the default is marked with *):\n"
 	"# * 0 = keep\n"
@@ -6263,55 +6276,55 @@ msgstr	"# Que faire des groupes corrompu
 	"#   1 = effacer\n"
 	"#   2 = marquer d'un D dans l'écran de sélection\n"
 
-#: src/lang.c:2422
+#: src/lang.c:2434
 msgid	"Enter number of seconds until active file will be reread. <CR> sets."
 msgstr	"Durée avant que le fichier active ne soit relu. <RETOUR> valide."
 
-#: src/lang.c:2423
+#: src/lang.c:2435
 msgid	"Interval in secs to reread active"
 msgstr	"Durée avant relecture du fichier active"
 
-#: src/lang.c:2424
+#: src/lang.c:2436
 msgid	"# Time interval in seconds between rereading the active file (0=never)\n"
 msgstr	"# Durée (en secondes) avant que le fichier active ne soit relu (0=jamais)\n"
 
-#: src/lang.c:2429
+#: src/lang.c:2441
 msgid	"Reconnect to server automatically"
 msgstr	"Reconnexion automatique au serveur"
 
-#: src/lang.c:2430
+#: src/lang.c:2442
 msgid	"# If ON automatically reconnect to NNTP server if the connection is broken\n"
 msgstr	"# Si ON, reconnexion automatique au serveur NNTP si la connexion est rompue\n"
 
-#: src/lang.c:2434
+#: src/lang.c:2446
 msgid	"Create local copies of NNTP overview files. <SPACE> toggles & <CR> sets."
 msgstr	"Créer des copies locales des en-têtes NNTP. <ESPACE> change & <RETOUR> valide."
 
-#: src/lang.c:2435
+#: src/lang.c:2447
 msgid	"Cache NNTP overview files locally"
 msgstr	"Cache local des en-têtes NNTP"
 
-#: src/lang.c:2436
+#: src/lang.c:2448
 msgid	"# If ON, create local copies of NNTP overview files.\n"
 msgstr	"# Si ON, crée une copie locale des en-têtes NNTP.\n"
 
-#: src/lang.c:2440
+#: src/lang.c:2452
 msgid	"Enter format string. <CR> sets, <ESC> cancels."
 msgstr	"Formatage des dates. <RETOUR> valide, <ESC> annule."
 
-#: src/lang.c:2441
+#: src/lang.c:2453
 msgid	"Format string for display of dates"
 msgstr	"Format des dates affichées"
 
-#: src/lang.c:2442
+#: src/lang.c:2454
 msgid	"# Format string for date representation\n"
 msgstr	"# Format des dates affichées\n"
 
-#: src/lang.c:2448
+#: src/lang.c:2460
 msgid	"Unicode normalization form"
 msgstr	"Normalisation d'Unicode"
 
-#: src/lang.c:2449
+#: src/lang.c:2461
 msgid	"# Unicode normalization form\n"
 	"# Possible values are (the default is marked with *):\n"
 	"#   0 = None\n"
@@ -6327,20 +6340,20 @@ msgstr	"# Normalisation d'Unicode\n"
 	"#   3 = NFC\n"
 	"#   4 = NFD\n"
 
-#: src/lang.c:2461
+#: src/lang.c:2473
 msgid	"Render BiDi"
 msgstr	"Rendu BiDi"
 
-#: src/lang.c:2462
+#: src/lang.c:2474
 msgid	"# If ON, bi-directional text is rendered by tin\n"
 msgstr	"# Si ON, le texte bi-directionnel est affiché par tin\n"
 
-#: src/misc.c:3713
+#: src/misc.c:3721
 #, c-format
 msgid	"Version: %s %s release %s (\"%s\") %s %s\n"
 msgstr	"Version : %s %s release %s (\"%s\") %s %s\n"
 
-#: src/misc.c:3716
+#: src/misc.c:3724
 #, c-format
 msgid	"Version: %s %s release %s (\"%s\")\n"
 msgstr	"Version : %s %s release %s (\"%s\")\n"
@@ -6349,23 +6362,23 @@ msgstr	"Version : %s %s release %s (\"%s
 msgid	"Unreachable?\n"
 msgstr	"Inacessible ?\n"
 
-#: src/nntplib.c:823
+#: src/nntplib.c:825
 #, c-format
 msgid	"\n"
 	"Server timed out, trying reconnect # %d\n"
 msgstr	"\n"
 	"Connexion au serveur expirée, reconnexion # %d\n"
 
-#: src/nntplib.c:841
+#: src/nntplib.c:843
 msgid	"Rejoin current group\n"
 msgstr	"Rejoindre le groupe actuel\n"
 
-#: src/nntplib.c:848
+#: src/nntplib.c:850
 #, c-format
 msgid	"Read (%s)\n"
 msgstr	"Lecture (%s)\n"
 
-#: src/nntplib.c:850
+#: src/nntplib.c:852
 #, c-format
 msgid	"Resend last command (%s)\n"
 msgstr	"Réenvoyer la dernière commande (%s)\n"
@@ -6375,7 +6388,7 @@ msgstr	"Réenvoyer la dernière commande (
 msgid	"couldn't expand %s\n"
 msgstr	"impossible de décompacter %s\n"
 
-#: src/post.c:1970
+#: src/post.c:1969
 #, c-format
 msgid	"Posting: %.*s ..."
 msgstr	"Postage : %.*s ..."
@@ -6417,19 +6430,19 @@ msgstr	"Ce message a été composé avec le
 	"ce qui suit peut paraître assez bizarre.\n"
 	"\n"
 
-#: src/save.c:974
+#: src/save.c:977
 msgid	"bytes"
 msgstr	"octets"
 
-#: src/select.c:375
+#: src/select.c:381
 msgid	"unread"
 msgstr	"non lu(s)"
 
-#: src/select.c:375
+#: src/select.c:381
 msgid	"all"
 msgstr	"tout"
 
-#: src/select.c:547 src/select.c:549
+#: src/select.c:551 src/select.c:553
 msgid	" R"
 msgstr	" R"
 
Binary files tin-1.7.7/po/messages and tin-1.7.8/po/messages differ
diff -Nurp tin-1.7.7/po/tin.pot tin-1.7.8/po/tin.pot
--- tin-1.7.7/po/tin.pot	Wed Dec 15 16:48:21 2004
+++ tin-1.7.8/po/tin.pot	Mon Mar 21 11:42:52 2005
@@ -5,7 +5,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2004-12-15 16:47+0100\n"
+"POT-Creation-Date: 2005-03-21 11:42+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -13,225 +13,225 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: ENCODING\n"
 
-#: src/art.c:1447
+#: src/art.c:1455
 #, c-format
 msgid "%d Bad overview record (%d fields) '%s'"
 msgstr ""
 
-#: src/attrib.c:594
+#: src/attrib.c:604
 msgid ""
 "# Do not edit this comment block\n"
 "#\n"
 msgstr ""
 
-#: src/attrib.c:595
+#: src/attrib.c:605
 msgid "#  scope=STRING (ie. alt.*,!alt.bin*) [mandatory]\n"
 msgstr ""
 
-#: src/attrib.c:596
+#: src/attrib.c:606
 msgid "#  maildir=STRING (ie. ~/Mail)\n"
 msgstr ""
 
-#: src/attrib.c:597
+#: src/attrib.c:607
 msgid "#  savedir=STRING (ie. ~user/News)\n"
 msgstr ""
 
-#: src/attrib.c:598
+#: src/attrib.c:608
 msgid "#  savefile=STRING (ie. =linux)\n"
 msgstr ""
 
-#: src/attrib.c:599
+#: src/attrib.c:609
 msgid "#  sigfile=STRING (ie. $var/sig)\n"
 msgstr ""
 
-#: src/attrib.c:600
+#: src/attrib.c:610
 msgid "#  organization=STRING (if beginning with '/' read from file)\n"
 msgstr ""
 
-#: src/attrib.c:601
+#: src/attrib.c:611
 msgid "#  followup_to=STRING\n"
 msgstr ""
 
-#: src/attrib.c:602
+#: src/attrib.c:612
 msgid "#  mailing_list=STRING (ie. majordomo@example.org)\n"
 msgstr ""
 
-#: src/attrib.c:603
+#: src/attrib.c:613
 msgid "#  x_headers=STRING (ie. ~/.tin/extra-headers)\n"
 msgstr ""
 
-#: src/attrib.c:604
+#: src/attrib.c:614
 msgid "#  x_body=STRING (ie. ~/.tin/extra-body-text)\n"
 msgstr ""
 
-#: src/attrib.c:605
+#: src/attrib.c:615
 msgid "#  from=STRING (just append wanted From:-line, don't use quotes)\n"
 msgstr ""
 
-#: src/attrib.c:606
+#: src/attrib.c:616
 msgid "#  news_quote_format=STRING\n"
 msgstr ""
 
-#: src/attrib.c:607
+#: src/attrib.c:617
 msgid "#  quote_chars=STRING (%%s, %%S for initials)\n"
 msgstr ""
 
-#: src/attrib.c:608
+#: src/attrib.c:618
 msgid "#  mime_types_to_save=STRING (eg. image/*,!image/bmp)\n"
 msgstr ""
 
-#: src/attrib.c:610
+#: src/attrib.c:620
 msgid "#  ispell=STRING\n"
 msgstr ""
 
-#: src/attrib.c:612
+#: src/attrib.c:622
 msgid "#  auto_select=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:613
+#: src/attrib.c:623
 msgid "#  auto_save=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:614
+#: src/attrib.c:624
 msgid "#  batch_save=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:615
+#: src/attrib.c:625
 msgid "#  delete_tmp_files=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:616
+#: src/attrib.c:626
 msgid "#  show_only_unread=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:617
+#: src/attrib.c:627
 msgid "#  thread_arts=NUM"
 msgstr ""
 
-#: src/attrib.c:624
+#: src/attrib.c:634
 msgid "#  show_author=NUM\n"
 msgstr ""
 
-#: src/attrib.c:630
+#: src/attrib.c:640
 msgid "#  show_info=NUM\n"
 msgstr ""
 
-#: src/attrib.c:636
+#: src/attrib.c:646
 msgid "#  sort_art_type=NUM\n"
 msgstr ""
 
-#: src/attrib.c:654
+#: src/attrib.c:664
 msgid "#  sort_threads_type=NUM\n"
 msgstr ""
 
-#: src/attrib.c:659
+#: src/attrib.c:669
 msgid "#  post_proc_type=NUM\n"
 msgstr ""
 
-#: src/attrib.c:664
+#: src/attrib.c:674
 msgid "#  quick_kill_scope=STRING (ie. talk.*)\n"
 msgstr ""
 
-#: src/attrib.c:665
+#: src/attrib.c:675
 msgid "#  quick_kill_expire=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:666
+#: src/attrib.c:676
 msgid "#  quick_kill_case=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:667
+#: src/attrib.c:677
 msgid "#  quick_kill_header=NUM\n"
 msgstr ""
 
-#: src/attrib.c:668 src/attrib.c:675
+#: src/attrib.c:678 src/attrib.c:685
 msgid "#    0=subj (case sensitive) 1=subj (ignore case)\n"
 msgstr ""
 
-#: src/attrib.c:669 src/attrib.c:676
+#: src/attrib.c:679 src/attrib.c:686
 msgid "#    2=from (case sensitive) 3=from (ignore case)\n"
 msgstr ""
 
-#: src/attrib.c:670 src/attrib.c:677
+#: src/attrib.c:680 src/attrib.c:687
 msgid "#    4=msgid 5=lines\n"
 msgstr ""
 
-#: src/attrib.c:671
+#: src/attrib.c:681
 msgid "#  quick_select_scope=STRING\n"
 msgstr ""
 
-#: src/attrib.c:672
+#: src/attrib.c:682
 msgid "#  quick_select_expire=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:673
+#: src/attrib.c:683
 msgid "#  quick_select_case=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:674
+#: src/attrib.c:684
 msgid "#  quick_select_header=NUM\n"
 msgstr ""
 
-#: src/attrib.c:678
+#: src/attrib.c:688
 msgid "#  x_comment_to=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:679
+#: src/attrib.c:689
 msgid "#  fcc=STRING (eg. =mailbox)\n"
 msgstr ""
 
-#: src/attrib.c:680
+#: src/attrib.c:690
 msgid "#  tex2iso_conv=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:681
+#: src/attrib.c:691
 msgid "#  mime_forward=ON/OFF\n"
 msgstr ""
 
-#: src/attrib.c:683
+#: src/attrib.c:693
 msgid "#  mm_network_charset=supported_charset"
 msgstr ""
 
-#: src/attrib.c:690
+#: src/attrib.c:700
 msgid "#  undeclared_charset=STRING (default is US-ASCII)\n"
 msgstr ""
 
-#: src/attrib.c:692
+#: src/attrib.c:702
 msgid ""
 "#\n"
 "# Note that it is best to put general (global scoping)\n"
 msgstr ""
 
-#: src/attrib.c:693
+#: src/attrib.c:703
 msgid ""
 "# entries first followed by group specific entries.\n"
 "#\n"
 msgstr ""
 
-#: src/attrib.c:694
+#: src/attrib.c:704
 msgid ""
 "############################################################################"
 "\n"
 "\n"
 msgstr ""
 
-#: src/attrib.c:700
+#: src/attrib.c:710
 msgid "# include extra headers\n"
 msgstr ""
 
-#: src/attrib.c:708
+#: src/attrib.c:718
 msgid "# in *sources* set post process type to shar only\n"
 msgstr ""
 
-#: src/attrib.c:712
+#: src/attrib.c:722
 msgid "# in *binaries* do full post processing, remove tmp files\n"
 msgstr ""
 
-#: src/attrib.c:713
+#: src/attrib.c:723
 msgid "# and set Followup-To: poster\n"
 msgstr ""
 
-#: src/cook.c:494
+#: src/cook.c:497
 msgid "(unknown)"
 msgstr ""
 
@@ -556,272 +556,272 @@ msgstr ""
 msgid "Post-process %s=no, %s=yes, %s=shar, %s=quit: "
 msgstr ""
 
-#: src/lang.c:118
+#: src/lang.c:119
 msgid "ANSI color disabled"
 msgstr ""
 
-#: src/lang.c:119
+#: src/lang.c:120
 msgid "ANSI color enabled"
 msgstr ""
 
-#: src/lang.c:120
+#: src/lang.c:122
 #, c-format
 msgid "Command failed: %s"
 msgstr ""
 
-#: src/lang.c:121
+#: src/lang.c:123
 msgid "Mark not selected articles read?"
 msgstr ""
 
-#: src/lang.c:122
+#: src/lang.c:124
 #, c-format
 msgid "Connecting to %s..."
 msgstr ""
 
-#: src/lang.c:123
+#: src/lang.c:125
 msgid "<CR>"
 msgstr ""
 
-#: src/lang.c:124
+#: src/lang.c:126
 msgid "Creating active file for saved groups...\n"
 msgstr ""
 
-#: src/lang.c:125
+#: src/lang.c:127
 msgid "Creating newsrc file...\n"
 msgstr ""
 
-#: src/lang.c:127 src/lang.c:1140
+#: src/lang.c:129 src/lang.c:1150
 msgid "Default"
 msgstr ""
 
-#: src/lang.c:128
+#: src/lang.c:130
 msgid "Delete saved files that have been post processed?"
 msgstr ""
 
-#: src/lang.c:129
+#: src/lang.c:131
 msgid "Deleting temporary files..."
 msgstr ""
 
-#: src/lang.c:131
+#: src/lang.c:133
 msgid "*** End of article ***"
 msgstr ""
 
-#: src/lang.c:132
+#: src/lang.c:134
 msgid "*** End of articles ***"
 msgstr ""
 
-#: src/lang.c:133
+#: src/lang.c:135
 msgid "*** End of groups ***"
 msgstr ""
 
-#: src/lang.c:134
+#: src/lang.c:136
 msgid "*** End of thread ***"
 msgstr ""
 
-#: src/lang.c:135
+#: src/lang.c:137
 msgid "Enter limit of articles to get> "
 msgstr ""
 
-#: src/lang.c:136
+#: src/lang.c:138
 msgid "Enter Message-ID to go to> "
 msgstr ""
 
-#: src/lang.c:137
+#: src/lang.c:139
 msgid " and enter next unread thread"
 msgstr ""
 
-#: src/lang.c:138
+#: src/lang.c:140
 msgid " and enter next unread group"
 msgstr ""
 
-#: src/lang.c:139
+#: src/lang.c:141
 msgid "Enter option number> "
 msgstr ""
 
-#: src/lang.c:140
+#: src/lang.c:142
 #, c-format
 msgid "Enter range [%s]> "
 msgstr ""
 
-#: src/lang.c:141
+#: src/lang.c:143
 msgid ""
 "\n"
 "Warning: Approved: header used.\n"
 msgstr ""
 
-#: src/lang.c:143
+#: src/lang.c:145
 msgid ""
 "\n"
 "Error: Bad address in Approved: header.\n"
 msgstr ""
 
-#: src/lang.c:144
+#: src/lang.c:146
 msgid ""
 "\n"
 "Error: Bad address in From: header.\n"
 msgstr ""
 
-#: src/lang.c:145
+#: src/lang.c:147
 msgid ""
 "\n"
 "Error: Bad address in Reply-To: header.\n"
 msgstr ""
 
-#: src/lang.c:146
+#: src/lang.c:148
 msgid ""
 "\n"
 "Error: Bad FQDN in Message-ID: header.\n"
 msgstr ""
 
-#: src/lang.c:147
+#: src/lang.c:149
 #, c-format
 msgid "Can't unlock %s"
 msgstr ""
 
-#: src/lang.c:149
+#: src/lang.c:151
 #, c-format
 msgid "Corrupted file %s"
 msgstr ""
 
-#: src/lang.c:150
+#: src/lang.c:152
 #, c-format
 msgid "Couldn't dotlock %s - article not appended!"
 msgstr ""
 
-#: src/lang.c:151
+#: src/lang.c:153
 #, c-format
 msgid "Couldn't lock %s - article not appended!"
 msgstr ""
 
-#: src/lang.c:153
+#: src/lang.c:155
 msgid "Internal error in GNKSA routine - send bug report.\n"
 msgstr ""
 
-#: src/lang.c:154
+#: src/lang.c:156
 msgid "Left angle bracket missing in route address.\n"
 msgstr ""
 
-#: src/lang.c:155
+#: src/lang.c:157
 msgid "Left parenthesis missing in old-style address.\n"
 msgstr ""
 
-#: src/lang.c:156
+#: src/lang.c:158
 msgid "Right parenthesis missing in old-style address.\n"
 msgstr ""
 
-#: src/lang.c:157
+#: src/lang.c:159
 msgid "At-sign missing in mail address.\n"
 msgstr ""
 
-#: src/lang.c:158
+#: src/lang.c:160
 msgid "Single component FQDN is not allowed. Add your domain.\n"
 msgstr ""
 
-#: src/lang.c:159
+#: src/lang.c:161
 msgid ""
 "Invalid domain. Send bug report if your top level domain really exists.\n"
 "Use .invalid as top level domain for munged addresses.\n"
 msgstr ""
 
-#: src/lang.c:160
+#: src/lang.c:162
 msgid ""
 "Illegal domain. Send bug report if your top level domain really exists.\n"
 "Use .invalid as top level domain for munged addresses.\n"
 msgstr ""
 
-#: src/lang.c:161
+#: src/lang.c:163
 msgid ""
 "Unknown domain. Send bug report if your top level domain really exists.\n"
 "Use .invalid as top level domain for munged addresses.\n"
 msgstr ""
 
-#: src/lang.c:162
+#: src/lang.c:164
 msgid "Illegal character in FQDN.\n"
 msgstr ""
 
-#: src/lang.c:163
+#: src/lang.c:165
 msgid "Zero length FQDN component not allowed.\n"
 msgstr ""
 
-#: src/lang.c:164
+#: src/lang.c:166
 msgid "FQDN component exceeds maximum allowed length (63 chars).\n"
 msgstr ""
 
-#: src/lang.c:165
+#: src/lang.c:167
 msgid "FQDN component may not start or end with hyphen.\n"
 msgstr ""
 
-#: src/lang.c:166
+#: src/lang.c:168
 msgid "FQDN component may not start with digit.\n"
 msgstr ""
 
-#: src/lang.c:167
+#: src/lang.c:169
 msgid "Domain literal has impossible numeric value.\n"
 msgstr ""
 
-#: src/lang.c:168
+#: src/lang.c:170
 msgid ""
 "Domain literal is for private use only and not allowed for global use.\n"
 msgstr ""
 
-#: src/lang.c:169
+#: src/lang.c:171
 msgid "Right bracket missing in domain literal.\n"
 msgstr ""
 
-#: src/lang.c:170
+#: src/lang.c:172
 msgid "Missing localpart of mail address.\n"
 msgstr ""
 
-#: src/lang.c:171
+#: src/lang.c:173
 msgid "Illegal character in localpart of mail address.\n"
 msgstr ""
 
-#: src/lang.c:172
+#: src/lang.c:174
 msgid "Zero length localpart component not allowed.\n"
 msgstr ""
 
-#: src/lang.c:173
+#: src/lang.c:175
 msgid ""
 "Illegal character in realname.\n"
 "Unquoted words may not contain '!()<>@,;:\\.[]' in route addresses.\n"
 msgstr ""
 
-#: src/lang.c:174
+#: src/lang.c:176
 msgid ""
 "Illegal character in realname.\n"
 "Quoted words may not contain '()<>\\'.\n"
 msgstr ""
 
-#: src/lang.c:175
+#: src/lang.c:177
 msgid ""
 "Illegal character in realname.\n"
 "Encoded words may not contain '!()<>@,;:\"\\.[]/=' in parameter.\n"
 msgstr ""
 
-#: src/lang.c:176
+#: src/lang.c:178
 msgid "Bad syntax in encoded word used in realname.\n"
 msgstr ""
 
-#: src/lang.c:177
+#: src/lang.c:179
 msgid ""
 "Illegal character in realname.\n"
 "Unquoted words may not contain '()<>\\' in old-style addresses.\n"
 msgstr ""
 
-#: src/lang.c:178
+#: src/lang.c:180
 msgid ""
 "Illegal character in realname.\n"
 "Control characters and unencoded 8bit characters > 127 are not allowed.\n"
 msgstr ""
 
-#: src/lang.c:179
+#: src/lang.c:181
 msgid ""
 "\n"
 "Error: No blank line found after header.\n"
 msgstr ""
 
 #. TODO: fixme, US-ASCII is not the only 7bit charset we know about
-#: src/lang.c:181
+#: src/lang.c:183
 msgid ""
 "\n"
 "Error: Posting contains non-ASCII characters but MM_CHARSET is set to\n"
@@ -830,7 +830,7 @@ msgid ""
 "       editing tinrc.\n"
 msgstr ""
 
-#: src/lang.c:186
+#: src/lang.c:188
 msgid ""
 "\n"
 "Error: Posting contains  non-ASCII characters  but the  MIME encoding\n"
@@ -840,13 +840,13 @@ msgid ""
 "       using the M)enu of configurable options or by editing tinrc.\n"
 msgstr ""
 
-#: src/lang.c:192
+#: src/lang.c:194
 msgid ""
 "\n"
 "Error: Article starts with blank line instead of header\n"
 msgstr ""
 
-#: src/lang.c:193
+#: src/lang.c:195
 #, c-format
 msgid ""
 "\n"
@@ -854,21 +854,21 @@ msgid ""
 "%s\n"
 msgstr ""
 
-#: src/lang.c:194
+#: src/lang.c:196
 #, c-format
 msgid ""
 "\n"
 "Error: The \"%s:\" line is empty.\n"
 msgstr ""
 
-#: src/lang.c:195
+#: src/lang.c:197
 #, c-format
 msgid ""
 "\n"
 "Error: The \"%s:\" line is missing from the article header.\n"
 msgstr ""
 
-#: src/lang.c:196
+#: src/lang.c:198
 #, c-format
 msgid ""
 "\n"
@@ -876,152 +876,152 @@ msgid ""
 "%s\n"
 msgstr ""
 
-#: src/lang.c:197
+#: src/lang.c:199
 #, c-format
 msgid ""
 "\n"
 "Error: There are multiple (%d) \"%s:\" lines in the header.\n"
 msgstr ""
 
-#: src/lang.c:198
+#: src/lang.c:200
 #, c-format
 msgid "Insecure permissions of %s (%o)"
 msgstr ""
 
-#: src/lang.c:199
+#: src/lang.c:201
 #, c-format
 msgid "Invalid response to GROUP command, %s"
 msgstr ""
 
-#: src/lang.c:201
+#: src/lang.c:203
 #, c-format
 msgid "MIME parse error: Unexpected end of %s/%s article"
 msgstr ""
 
-#: src/lang.c:202
+#: src/lang.c:204
 msgid "MIME parse error: Start boundary whilst reading headers"
 msgstr ""
 
-#: src/lang.c:203
+#: src/lang.c:205
 msgid "Can't get a (fully-qualified) domain-name!"
 msgstr ""
 
-#: src/lang.c:204
+#: src/lang.c:206
 #, c-format
 msgid "No permissions to go into %s\n"
 msgstr ""
 
-#: src/lang.c:205
+#: src/lang.c:207
 msgid ""
 "\n"
 "Error: From: line missing.\n"
 msgstr ""
 
-#: src/lang.c:206
+#: src/lang.c:208
 #, c-format
 msgid "No read permissions for %s\n"
 msgstr ""
 
-#: src/lang.c:207
+#: src/lang.c:209
 #, c-format
 msgid "File %s does not exist\n"
 msgstr ""
 
-#: src/lang.c:208
+#: src/lang.c:210
 #, c-format
 msgid "No write permissions for %s\n"
 msgstr ""
 
-#: src/lang.c:209
+#: src/lang.c:211
 msgid "Can't get user information (/etc/passwd missing?)"
 msgstr ""
 
-#: src/lang.c:210
+#: src/lang.c:212
 msgid "errors"
 msgstr ""
 
-#: src/lang.c:211
+#: src/lang.c:213
 #, c-format
 msgid ""
 "\n"
 "Error on line %d: \"Sender:\" header not allowed (it will be added for you)\n"
 msgstr ""
 
-#: src/lang.c:212
+#: src/lang.c:214
 #, c-format
 msgid "Server has non of the groups listed in %s"
 msgstr ""
 
-#: src/lang.c:213
+#: src/lang.c:215
 msgid "error"
 msgstr ""
 
-#: src/lang.c:214
+#: src/lang.c:216
 msgid "Unknown display level"
 msgstr ""
 
-#: src/lang.c:215
+#: src/lang.c:217
 msgid "<ESC>"
 msgstr ""
 
-#: src/lang.c:216
+#: src/lang.c:218
 msgid "Exiting..."
 msgstr ""
 
-#: src/lang.c:217
+#: src/lang.c:219
 msgid "leaving external mail-reader"
 msgstr ""
 
-#: src/lang.c:218
+#: src/lang.c:220
 #, c-format
 msgid "Extracting %s..."
 msgstr ""
 
-#: src/lang.c:220
+#: src/lang.c:222
 #, c-format
 msgid "Error writing %s file. Filesystem full? File reset to previous state."
 msgstr ""
 
-#: src/lang.c:221
+#: src/lang.c:223
 #, c-format
 msgid "Error making backup of %s file. Filesystem full?"
 msgstr ""
 
-#: src/lang.c:222
+#: src/lang.c:224
 #, c-format
 msgid "Filtering global rules (%d/%d)..."
 msgstr ""
 
-#: src/lang.c:223
+#: src/lang.c:225
 msgid "Rule created by: "
 msgstr ""
 
-#: src/lang.c:224
+#: src/lang.c:226
 #, c-format
 msgid "Enter pattern [%s]> "
 msgstr ""
 
-#: src/lang.c:225
+#: src/lang.c:227
 #, c-format
 msgid ""
 "\n"
 "You requested followups to your article to go to the following %s:\n"
 msgstr ""
 
-#: src/lang.c:226
+#: src/lang.c:228
 #, c-format
 msgid "  %s\t Answers will be directed to you by mail.\n"
 msgstr ""
 
-#: src/lang.c:227
+#: src/lang.c:229
 msgid "-- forwarded message --\n"
 msgstr ""
 
-#: src/lang.c:228
+#: src/lang.c:230
 msgid "-- end of forwarded message --\n"
 msgstr ""
 
-#: src/lang.c:229
+#: src/lang.c:231
 msgid ""
 "# Format:\n"
 "#   comment=STRING    Optional. Multiple lines allowed. Comments must be "
@@ -1052,753 +1052,757 @@ msgid ""
 "#\n"
 msgstr ""
 
-#: src/lang.c:250
+#: src/lang.c:252
 #, c-format
 msgid "Enter score for rule (default=%d): "
 msgstr ""
 
-#: src/lang.c:251
+#: src/lang.c:253
 #, c-format
 msgid "Enter the score weight (range 0 < score <= %d)"
 msgstr ""
 
 #. SCORE_MAX
-#: src/lang.c:252
+#: src/lang.c:254
 msgid "Full"
 msgstr ""
 
-#: src/lang.c:253
+#: src/lang.c:255
 msgid "Comment (optional)  : "
 msgstr ""
 
-#: src/lang.c:254
+#: src/lang.c:256
 msgid "Apply pattern to    : "
 msgstr ""
 
-#: src/lang.c:255
+#: src/lang.c:257
 msgid "From: line (ignore case)      "
 msgstr ""
 
-#: src/lang.c:256
+#: src/lang.c:258
 msgid "From: line (case sensitive)   "
 msgstr ""
 
-#: src/lang.c:258
+#: src/lang.c:260
 #, c-format
 msgid "%s%s: Unknown host.\n"
 msgstr ""
 
-#: src/lang.c:259
+#: src/lang.c:261
 msgid "global "
 msgstr ""
 
-#: src/lang.c:260
+#: src/lang.c:262
 #, c-format
 msgid "Please use %.100s instead"
 msgstr ""
 
-#: src/lang.c:261
+#: src/lang.c:263
 #, c-format
 msgid "%s is bogus"
 msgstr ""
 
-#: src/lang.c:262
+#: src/lang.c:264
 #, c-format
 msgid "Group %s is moderated. Continue?"
 msgstr ""
 
-#: src/lang.c:263
+#: src/lang.c:265
 msgid "groups"
 msgstr ""
 
-#: src/lang.c:264
+#: src/lang.c:266
 #, c-format
 msgid "Rereading %s..."
 msgstr ""
 
-#: src/lang.c:265
+#: src/lang.c:267
 msgid "Top Level Commands"
 msgstr ""
 
-#: src/lang.c:266
+#: src/lang.c:268
 msgid "Group Selection"
 msgstr ""
 
-#: src/lang.c:267
+#: src/lang.c:269
 msgid "group"
 msgstr ""
 
-#: src/lang.c:269
+#: src/lang.c:271
 msgid ""
 "One or more lines of comment. <CR> to add a line or proceed if line is empty."
 msgstr ""
 
-#: src/lang.c:270
+#: src/lang.c:272
 msgid "From: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:271
+#: src/lang.c:273
 msgid ""
 "Linecount of articles to be filtered. < for less, > for more, = for equal."
 msgstr ""
 
-#: src/lang.c:272
+#: src/lang.c:274
 msgid "Message-ID: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:273
+#: src/lang.c:275
 msgid "Subject: line to add to filter file. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:274
+#: src/lang.c:276
 msgid ""
 "Enter text pattern to filter if Subject: & From: lines are not what you want."
 msgstr ""
 
-#: src/lang.c:275
+#: src/lang.c:277
 msgid ""
 "Select where text pattern should be applied. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:276
+#: src/lang.c:278
 msgid ""
 "Expiration time in days for the entered filter. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:277
+#: src/lang.c:279
 msgid ""
 "Apply kill only to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:278
+#: src/lang.c:280
 msgid ""
 "Apply select to current group or all groups. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:279
+#: src/lang.c:281
 msgid "kill an article via a menu"
 msgstr ""
 
-#: src/lang.c:280
+#: src/lang.c:282
 msgid "auto-select (hot) an article via a menu"
 msgstr ""
 
-#: src/lang.c:281
+#: src/lang.c:283
 msgid "Browse URLs in article"
 msgstr ""
 
-#: src/lang.c:282
+#: src/lang.c:284
 msgid "0 - 9\t  display article by number in current thread"
 msgstr ""
 
-#: src/lang.c:283
+#: src/lang.c:285
 msgid "cancel (delete) or supersede (overwrite) current article"
 msgstr ""
 
-#: src/lang.c:284
+#: src/lang.c:286
 msgid "edit article (mail-groups only)"
 msgstr ""
 
-#: src/lang.c:285
+#: src/lang.c:287
 msgid "display first article in current thread"
 msgstr ""
 
-#: src/lang.c:286
+#: src/lang.c:288
 msgid "display first page of article"
 msgstr ""
 
-#: src/lang.c:287
+#: src/lang.c:289
 msgid "post followup to current article"
 msgstr ""
 
-#: src/lang.c:288
+#: src/lang.c:290
 msgid "post followup (don't copy text) to current article"
 msgstr ""
 
-#: src/lang.c:289
+#: src/lang.c:291
 msgid "post followup to current article quoting complete headers"
 msgstr ""
 
-#: src/lang.c:290
+#: src/lang.c:292
 msgid "display last article in current thread"
 msgstr ""
 
-#: src/lang.c:291
+#: src/lang.c:293
 msgid "display last page of article"
 msgstr ""
 
-#: src/lang.c:292
+#: src/lang.c:294
 msgid "mark rest of thread as read and advance to next unread"
 msgstr ""
 
-#: src/lang.c:293
+#: src/lang.c:295
 msgid "display next article"
 msgstr ""
 
-#: src/lang.c:294
+#: src/lang.c:296
 msgid "display first article in next thread"
 msgstr ""
 
-#: src/lang.c:295
+#: src/lang.c:297
 msgid "display next unread article"
 msgstr ""
 
-#: src/lang.c:296
+#: src/lang.c:298
 msgid "go to the article that this one followed up"
 msgstr ""
 
-#: src/lang.c:297
+#: src/lang.c:299
 msgid "display previous article"
 msgstr ""
 
-#: src/lang.c:298
+#: src/lang.c:300
 msgid "display previous unread article"
 msgstr ""
 
-#: src/lang.c:299
+#: src/lang.c:301
 msgid "quickly kill an article using defaults"
 msgstr ""
 
-#: src/lang.c:300
+#: src/lang.c:302
 msgid "quickly auto-select (hot) an article using defaults"
 msgstr ""
 
-#: src/lang.c:301
+#: src/lang.c:303
 msgid "return to group selection level"
 msgstr ""
 
-#: src/lang.c:302
+#: src/lang.c:304
 msgid "reply through mail to author"
 msgstr ""
 
-#: src/lang.c:303
+#: src/lang.c:305
 msgid "reply through mail (don't copy text) to author"
 msgstr ""
 
-#: src/lang.c:304
+#: src/lang.c:306
 msgid "reply through mail to author quoting complete headers"
 msgstr ""
 
-#: src/lang.c:305
+#: src/lang.c:307
 msgid "repost chosen article to another group"
 msgstr ""
 
-#: src/lang.c:306
+#: src/lang.c:308
 msgid "search backwards within this article"
 msgstr ""
 
-#: src/lang.c:307
+#: src/lang.c:309
 msgid "search forwards within this article"
 msgstr ""
 
-#: src/lang.c:308
+#: src/lang.c:310
 msgid "show article in raw-mode (including all headers)"
 msgstr ""
 
-#: src/lang.c:309
+#: src/lang.c:311
 msgid "skip next block of included text"
 msgstr ""
 
-#: src/lang.c:310
+#: src/lang.c:312
 msgid "toggle display of sections hidden by a form-feed (^L) on/off"
 msgstr ""
 
-#: src/lang.c:311
+#: src/lang.c:313
 msgid "toggle word highlighting on/off"
 msgstr ""
 
-#: src/lang.c:312
+#: src/lang.c:314
 msgid "toggle ROT-13 (basic decode) for current article"
 msgstr ""
 
-#: src/lang.c:313
+#: src/lang.c:315
 msgid "toggle tabwidth 4 <-> 8"
 msgstr ""
 
-#: src/lang.c:314
+#: src/lang.c:316
 msgid "toggle german TeX style decoding for current article"
 msgstr ""
 
-#: src/lang.c:315
+#: src/lang.c:317
 msgid "toggle display of uuencoded sections"
 msgstr ""
 
-#: src/lang.c:316
+#: src/lang.c:318
 msgid "View/save multimedia attachments"
 msgstr ""
 
-#: src/lang.c:317
+#: src/lang.c:319
 #, c-format
 msgid "report bug or comment via mail to %s"
 msgstr ""
 
-#: src/lang.c:318
+#: src/lang.c:320
 msgid "choose range of articles to be affected by next command"
 msgstr ""
 
-#: src/lang.c:319
+#: src/lang.c:321
 msgid "escape from command prompt"
 msgstr ""
 
-#: src/lang.c:320
+#: src/lang.c:322
+msgid "edit filter file"
+msgstr ""
+
+#: src/lang.c:323
 msgid "get help"
 msgstr ""
 
-#: src/lang.c:321
+#: src/lang.c:324
 msgid "display last article viewed"
 msgstr ""
 
-#: src/lang.c:322
+#: src/lang.c:325
 msgid "down one line"
 msgstr ""
 
-#: src/lang.c:323
+#: src/lang.c:326
 msgid "up one line"
 msgstr ""
 
-#: src/lang.c:324
+#: src/lang.c:327
 msgid "go to article chosen by Message-ID"
 msgstr ""
 
-#: src/lang.c:325
+#: src/lang.c:328
 msgid "mail article/thread/hot/pattern/tagged articles to someone"
 msgstr ""
 
-#: src/lang.c:326
+#: src/lang.c:329
 msgid "menu of configurable options"
 msgstr ""
 
-#: src/lang.c:327
+#: src/lang.c:330
 msgid "down one page"
 msgstr ""
 
-#: src/lang.c:328
+#: src/lang.c:331
 msgid "up one page"
 msgstr ""
 
-#: src/lang.c:329
+#: src/lang.c:332
 msgid "post (write) article to current group"
 msgstr ""
 
-#: src/lang.c:330
+#: src/lang.c:333
 msgid "post postponed articles"
 msgstr ""
 
-#: src/lang.c:331
+#: src/lang.c:334
 msgid "list articles posted by you (from posted file)"
 msgstr ""
 
-#: src/lang.c:332
+#: src/lang.c:335
 msgid "return to previous menu"
 msgstr ""
 
-#: src/lang.c:333
+#: src/lang.c:336
 msgid "quit tin immediately"
 msgstr ""
 
-#: src/lang.c:334
+#: src/lang.c:337
 msgid "redraw page"
 msgstr ""
 
-#: src/lang.c:335
+#: src/lang.c:338
 msgid "save article/thread/hot/pattern/tagged articles to file"
 msgstr ""
 
-#: src/lang.c:336
+#: src/lang.c:339
 msgid "save marked articles automatically without user prompts"
 msgstr ""
 
-#: src/lang.c:337
+#: src/lang.c:340
 msgid "scroll the screen one line down"
 msgstr ""
 
-#: src/lang.c:338
+#: src/lang.c:341
 msgid "scroll the screen one line up"
 msgstr ""
 
-#: src/lang.c:339
+#: src/lang.c:342
 msgid "search for articles by author backwards"
 msgstr ""
 
-#: src/lang.c:340
+#: src/lang.c:343
 msgid "search for articles by author forwards"
 msgstr ""
 
-#: src/lang.c:341
+#: src/lang.c:344
 msgid "search all articles for a given string (this may take some time)"
 msgstr ""
 
-#: src/lang.c:342
+#: src/lang.c:345
 msgid " \t  (searches are case-insensitive and wrap around to all articles)"
 msgstr ""
 
-#: src/lang.c:343
+#: src/lang.c:346
 msgid "search for articles by Subject line backwards"
 msgstr ""
 
-#: src/lang.c:344
+#: src/lang.c:347
 msgid "search for articles by Subject line forwards"
 msgstr ""
 
-#: src/lang.c:345
+#: src/lang.c:348
 msgid "repeat last search"
 msgstr ""
 
-#: src/lang.c:346
+#: src/lang.c:349
 msgid "tag current article for reposting/mailing/piping/printing/saving"
 msgstr ""
 
-#: src/lang.c:347
+#: src/lang.c:350
 msgid "toggle info message in last line (subject/description)"
 msgstr ""
 
-#: src/lang.c:348
+#: src/lang.c:351
 msgid "toggle inverse video"
 msgstr ""
 
-#: src/lang.c:349
+#: src/lang.c:352
 msgid "toggle mini help menu display"
 msgstr ""
 
-#: src/lang.c:350
+#: src/lang.c:353
 msgid "cycle the display of authors email address, real name, both or neither"
 msgstr ""
 
-#: src/lang.c:351
+#: src/lang.c:354
 msgid "show version information"
 msgstr ""
 
-#: src/lang.c:352
+#: src/lang.c:355
 msgid "mark all articles as read and return to group selection menu"
 msgstr ""
 
-#: src/lang.c:353
+#: src/lang.c:356
 msgid "mark all articles as read and enter next group with unread articles"
 msgstr ""
 
-#: src/lang.c:354
+#: src/lang.c:357
 msgid "choose first thread in list"
 msgstr ""
 
-#: src/lang.c:355
+#: src/lang.c:358
 msgid "choose last thread in list"
 msgstr ""
 
-#: src/lang.c:356
+#: src/lang.c:359
 msgid "list articles within current thread (bring up Thread sub-menu)"
 msgstr ""
 
-#: src/lang.c:357
+#: src/lang.c:360
 msgid "mark article as unread"
 msgstr ""
 
-#: src/lang.c:358
+#: src/lang.c:361
 msgid "mark current thread or tagged threads as read"
 msgstr ""
 
-#: src/lang.c:359
+#: src/lang.c:362
 msgid "mark thread as unread"
 msgstr ""
 
-#: src/lang.c:360
+#: src/lang.c:363
 msgid "toggle display of all/selected articles"
 msgstr ""
 
-#: src/lang.c:361
+#: src/lang.c:364
 msgid "display next group"
 msgstr ""
 
-#: src/lang.c:362
+#: src/lang.c:365
 msgid "display previous group"
 msgstr ""
 
-#: src/lang.c:363
+#: src/lang.c:366
 msgid "toggle all selections (all articles)"
 msgstr ""
 
-#: src/lang.c:364
+#: src/lang.c:367
 msgid "select group (make \"hot\")"
 msgstr ""
 
-#: src/lang.c:365
+#: src/lang.c:368
 msgid "select thread"
 msgstr ""
 
-#: src/lang.c:366
+#: src/lang.c:369
 msgid "select threads if at least one unread article is selected"
 msgstr ""
 
-#: src/lang.c:367
+#: src/lang.c:370
 msgid "select threads that match user specified pattern"
 msgstr ""
 
-#: src/lang.c:368
+#: src/lang.c:371
 msgid "tag all parts of current multipart-message in order"
 msgstr ""
 
-#: src/lang.c:369
+#: src/lang.c:372
 msgid "0 - 9\t  choose thread by number"
 msgstr ""
 
-#: src/lang.c:370
+#: src/lang.c:373
 msgid "toggle limit number of articles to get, and reload"
 msgstr ""
 
-#: src/lang.c:371
+#: src/lang.c:374
 msgid "toggle display of all/unread articles"
 msgstr ""
 
-#: src/lang.c:372
+#: src/lang.c:375
 msgid "toggle selection of thread"
 msgstr ""
 
-#: src/lang.c:373
+#: src/lang.c:376
 msgid "cycle through threading options available"
 msgstr ""
 
-#: src/lang.c:374
+#: src/lang.c:377
 msgid "undo all selections (all articles)"
 msgstr ""
 
-#: src/lang.c:375
+#: src/lang.c:378
 msgid "untag all tagged threads"
 msgstr ""
 
-#: src/lang.c:376
+#: src/lang.c:379
 msgid "mark all articles in group as read"
 msgstr ""
 
-#: src/lang.c:377
+#: src/lang.c:380
 msgid "mark all articles in group as read and move to next unread group"
 msgstr ""
 
-#: src/lang.c:378
+#: src/lang.c:381
 msgid "choose first group in list"
 msgstr ""
 
-#: src/lang.c:379
+#: src/lang.c:382
 msgid "choose group by name"
 msgstr ""
 
-#: src/lang.c:380
+#: src/lang.c:383
 msgid "0 - 9\t  choose group by number"
 msgstr ""
 
-#: src/lang.c:381
+#: src/lang.c:384
 msgid "choose range of groups to be affected by next command"
 msgstr ""
 
-#: src/lang.c:382
+#: src/lang.c:385
 msgid "choose last group in list"
 msgstr ""
 
-#: src/lang.c:383
+#: src/lang.c:386
 msgid "mark all articles in chosen group unread"
 msgstr ""
 
-#: src/lang.c:384
+#: src/lang.c:387
 msgid "move chosen group within list"
 msgstr ""
 
-#: src/lang.c:385
+#: src/lang.c:388
 msgid "choose next group with unread news"
 msgstr ""
 
-#: src/lang.c:386 src/lang.c:1187
+#: src/lang.c:389 src/lang.c:1197
 msgid "quit"
 msgstr ""
 
-#: src/lang.c:387
+#: src/lang.c:390
 msgid "quit without saving configuration changes"
 msgstr ""
 
-#: src/lang.c:388
+#: src/lang.c:391
 msgid "read chosen group"
 msgstr ""
 
-#: src/lang.c:389
+#: src/lang.c:392
 msgid "reset .newsrc (all available articles in groups marked unread)"
 msgstr ""
 
-#: src/lang.c:390
+#: src/lang.c:393
 msgid "search backwards for a group name"
 msgstr ""
 
-#: src/lang.c:391
+#: src/lang.c:394
 msgid " \t  (all searches are case-insensitive and wrap around)"
 msgstr ""
 
-#: src/lang.c:392
+#: src/lang.c:395
 msgid "search forwards for a group name"
 msgstr ""
 
-#: src/lang.c:393
+#: src/lang.c:396
 msgid "subscribe to chosen group"
 msgstr ""
 
-#: src/lang.c:394
+#: src/lang.c:397
 msgid "subscribe to groups that match pattern"
 msgstr ""
 
-#: src/lang.c:395
+#: src/lang.c:398
 msgid "reread active file to check for any new news"
 msgstr ""
 
-#: src/lang.c:396
+#: src/lang.c:399
 msgid "toggle display of group name only or group name plus description"
 msgstr ""
 
-#: src/lang.c:397
+#: src/lang.c:400
 msgid "toggle display to show all/unread subscribed groups"
 msgstr ""
 
-#: src/lang.c:398
+#: src/lang.c:401
 msgid "unsubscribe from chosen group"
 msgstr ""
 
-#: src/lang.c:399
+#: src/lang.c:402
 msgid "unsubscribe from groups that match pattern"
 msgstr ""
 
-#: src/lang.c:400
+#: src/lang.c:403
 msgid "sort the list of groups"
 msgstr ""
 
-#: src/lang.c:401
+#: src/lang.c:404
 msgid "toggle display to show all/subscribed groups"
 msgstr ""
 
-#: src/lang.c:402
+#: src/lang.c:405
 msgid "0 - 9\t  choose article by number"
 msgstr ""
 
-#: src/lang.c:403
+#: src/lang.c:406
 msgid "mark thread as read and return to group index page"
 msgstr ""
 
-#: src/lang.c:404
+#: src/lang.c:407
 msgid "mark thread as read and enter next unread thread or group"
 msgstr ""
 
-#: src/lang.c:405
+#: src/lang.c:408
 msgid "choose first article in list"
 msgstr ""
 
-#: src/lang.c:406
+#: src/lang.c:409
 msgid "choose last article in list"
 msgstr ""
 
-#: src/lang.c:407
+#: src/lang.c:410
 msgid ""
 "mark article or tagged articles as read and move cursor to next unread "
 "article"
 msgstr ""
 
-#: src/lang.c:408
+#: src/lang.c:411
 msgid "read chosen article"
 msgstr ""
 
-#: src/lang.c:409
+#: src/lang.c:412
 msgid ""
 "Display properties\n"
 "------------------"
 msgstr ""
 
-#: src/lang.c:410
+#: src/lang.c:413
 msgid ""
 "Miscellaneous\n"
 "-------------"
 msgstr ""
 
-#: src/lang.c:411
+#: src/lang.c:414
 msgid ""
 "Moving around\n"
 "-------------"
 msgstr ""
 
-#: src/lang.c:412
+#: src/lang.c:415
 msgid ""
 "Group/thread/article operations\n"
 "-------------------------------"
 msgstr ""
 
-#: src/lang.c:414
+#: src/lang.c:417
 msgid "Group Level Commands"
 msgstr ""
 
-#: src/lang.c:415
+#: src/lang.c:418
 msgid "Kill filter added"
 msgstr ""
 
-#: src/lang.c:416
+#: src/lang.c:419
 msgid "Auto-selection filter added"
 msgstr ""
 
-#: src/lang.c:417
+#: src/lang.c:420
 msgid "All parts tagged"
 msgstr ""
 
-#: src/lang.c:418
+#: src/lang.c:421
 msgid "Storing article for later posting"
 msgstr ""
 
-#: src/lang.c:419
+#: src/lang.c:422
 msgid "Please enter a valid character"
 msgstr ""
 
-#: src/lang.c:420
+#: src/lang.c:423
 #, c-format
 msgid "Missing part #%d"
 msgstr ""
 
-#: src/lang.c:421
+#: src/lang.c:424
 msgid "*** No postponed articles ***"
 msgstr ""
 
-#: src/lang.c:422
+#: src/lang.c:425
 msgid "Not a multi-part message"
 msgstr ""
 
-#: src/lang.c:423
+#: src/lang.c:426
 msgid "You are not subscribed to this group"
 msgstr ""
 
-#: src/lang.c:424
+#: src/lang.c:427
 msgid "No previous expression"
 msgstr ""
 
-#: src/lang.c:425
+#: src/lang.c:428
 msgid "Operation disabled in no-overwrite mode"
 msgstr ""
 
 #. TODO: replace hardcoded key-name in txt_info_postponed
-#: src/lang.c:427
+#: src/lang.c:430
 #, c-format
 msgid "%d postponed %s, reuse with ^O...\n"
 msgstr ""
 
-#: src/lang.c:428
+#: src/lang.c:431
 msgid ""
 "X-Conversion-Note: multipart/alternative contents have been removed.\n"
 "  To get the whole article, turn alternative handling OFF in the Option "
 "Menu\n"
 msgstr ""
 
-#: src/lang.c:430
+#: src/lang.c:433
 #, c-format
 msgid "Save filename for %s/%s is a mailbox. Attachment not saved"
 msgstr ""
 
-#: src/lang.c:431
+#: src/lang.c:434
 msgid "TeX2Iso encoded article"
 msgstr ""
 
-#: src/lang.c:432
+#: src/lang.c:435
 msgid "incomplete "
 msgstr ""
 
 #. TODO: replace hardcoded key-names
-#: src/lang.c:434
+#: src/lang.c:437
 #, c-format
 msgid ""
 "\n"
@@ -1836,129 +1840,138 @@ msgid ""
 "Please send bug-reports/comments to %s with the 'R' command.\n"
 msgstr ""
 
-#: src/lang.c:450
+#: src/lang.c:453
 #, c-format
 msgid "Invalid  From: %s  line. Read the INSTALL file again."
 msgstr ""
 
-#: src/lang.c:451
+#: src/lang.c:454
 #, c-format
 msgid "Invalid  Sender:-header %s"
 msgstr ""
 
-#: src/lang.c:452
+#: src/lang.c:455
 msgid "Inverse video disabled"
 msgstr ""
 
-#: src/lang.c:453
+#: src/lang.c:456
 msgid "Inverse video enabled"
 msgstr ""
 
-#: src/lang.c:455
+#: src/lang.c:458
 #, c-format
 msgid "Missing definition for %s\n"
 msgstr ""
 
-#: src/lang.c:456
+#: src/lang.c:459
 #, c-format
 msgid "Invalid key definition '%s'\n"
 msgstr ""
 
-#: src/lang.c:457
+#: src/lang.c:460
 #, c-format
 msgid "Invalid keyname '%s'\n"
 msgstr ""
 
-#: src/lang.c:458
+#: src/lang.c:462
 #, c-format
 msgid "Key '%s' is defined for both %s%s and %s%s\n"
 msgstr ""
 
-#: src/lang.c:459
+#: src/lang.c:464
+#, c-format
+msgid "Keymap file was upgraded to version %s\n"
+msgstr ""
+
+#: src/lang.c:465
 #, c-format
 msgid "Kill From:     [%s] (y/n): "
 msgstr ""
 
-#: src/lang.c:460
+#: src/lang.c:466
 msgid "Kill Lines: (</>num): "
 msgstr ""
 
-#: src/lang.c:461
+#: src/lang.c:467
 msgid "Kill Article Menu"
 msgstr ""
 
-#: src/lang.c:462
+#: src/lang.c:468
 #, c-format
 msgid "Kill Msg-Id:   [%s] (f/l/o/n): "
 msgstr ""
 
-#: src/lang.c:463
+#: src/lang.c:469
 msgid "Kill pattern scope  : "
 msgstr ""
 
-#: src/lang.c:464
+#: src/lang.c:470
 #, c-format
 msgid "Kill Subject:  [%s] (y/n): "
 msgstr ""
 
-#: src/lang.c:465
+#: src/lang.c:471
 msgid "Kill text pattern   : "
 msgstr ""
 
-#: src/lang.c:466
+#: src/lang.c:472
 msgid "Kill time in days   : "
 msgstr ""
 
-#: src/lang.c:468
+#: src/lang.c:474
 msgid "Last"
 msgstr ""
 
-#: src/lang.c:469
+#: src/lang.c:475
 msgid "-- Last response --"
 msgstr ""
 
-#: src/lang.c:470
+#: src/lang.c:476
 #, c-format
 msgid "Lines %s  "
 msgstr ""
 
-#: src/lang.c:472
+#: src/lang.c:478
 msgid "Message-ID: line              "
 msgstr ""
 
-#: src/lang.c:474
+#: src/lang.c:479
+msgid "Mail"
+msgstr ""
+
+#: src/lang.c:480
 msgid "mailbox "
 msgstr ""
 
-#: src/lang.c:475
+#: src/lang.c:481
 #, c-format
 msgid "Mail article(s) to [%.*s]> "
 msgstr ""
 
-#: src/lang.c:476
+#: src/lang.c:482
 #, c-format
 msgid "Mailing log to %s\n"
 msgstr ""
 
-#: src/lang.c:477
+#: src/lang.c:483
 msgid "Mail bug report..."
 msgstr ""
 
-#: src/lang.c:478
+#: src/lang.c:484
 #, c-format
 msgid "Mail BUG REPORT to %s?"
 msgstr ""
 
-#: src/lang.c:479
+#: src/lang.c:485
 msgid "Mailed"
 msgstr ""
 
-#: src/lang.c:480
+#: src/lang.c:486
 #, c-format
 msgid "Mailing to %s..."
 msgstr ""
 
-#: src/lang.c:481
+#: src/lang.c:487
 msgid ""
 "# [Mail/Save] active file. Format is like news active file:\n"
 "#   groupname  max.artnum  min.artnum  /dir\n"
@@ -1966,285 +1979,285 @@ msgid ""
 "#\n"
 msgstr ""
 
-#: src/lang.c:484
+#: src/lang.c:490
 #, c-format
 msgid "%s marked as unread"
 msgstr ""
 
-#: src/lang.c:485
+#: src/lang.c:491
 #, c-format
 msgid "Marked %d of %d tagged %s as read"
 msgstr ""
 
-#: src/lang.c:486
+#: src/lang.c:492
 #, c-format
 msgid "Mark all articles as read%s?"
 msgstr ""
 
-#: src/lang.c:487
+#: src/lang.c:493
 #, c-format
 msgid "Mark %s=tagged articles, %s=current article, %s=quit: "
 msgstr ""
 
-#: src/lang.c:488
+#: src/lang.c:494
 #, c-format
 msgid "Mark group %s as read?"
 msgstr ""
 
-#: src/lang.c:489
+#: src/lang.c:495
 #, c-format
 msgid "Mark thread as read%s?"
 msgstr ""
 
-#: src/lang.c:490
+#: src/lang.c:496
 #, c-format
 msgid "Mark %s=tagged articles/threads, %s=current thread, %s=quit: "
 msgstr ""
 
-#: src/lang.c:491
+#: src/lang.c:497
 #, c-format
 msgid "Matching %s groups..."
 msgstr ""
 
-#: src/lang.c:492 src/lang.c:496
+#: src/lang.c:498 src/lang.c:502
 #, c-format
 msgid "<n>=set current to n; %s=next unread; %s=search pattern; %s=kill/select"
 msgstr ""
 
-#: src/lang.c:493
+#: src/lang.c:499
 #, c-format
 msgid ""
 "%s=author search; %s=catchup; %s=line down; %s=line up; %s=mark read; "
 "%s=list thread"
 msgstr ""
 
-#: src/lang.c:494
+#: src/lang.c:500
 #, c-format
 msgid "%s=line up; %s=line down; %s=page up; %s=page down; %s=top; %s=bottom"
 msgstr ""
 
-#: src/lang.c:495
+#: src/lang.c:501
 #, c-format
 msgid "%s=search forwards; %s=search backwards; %s=quit"
 msgstr ""
 
-#: src/lang.c:497
+#: src/lang.c:503
 #, c-format
 msgid "%s=author search; %s=body search; %s=catchup; %s=followup; %s=mark read"
 msgstr ""
 
-#: src/lang.c:498
+#: src/lang.c:504
 #, c-format
 msgid "<n>=set current to n; %s=next unread; %s,%s=search pattern; %s=catchup"
 msgstr ""
 
-#: src/lang.c:499
+#: src/lang.c:505
 #, c-format
 msgid ""
 "%s=line down; %s=line up; %s=help; %s=move; %s=quit; %s=toggle all/unread"
 msgstr ""
 
-#: src/lang.c:500
+#: src/lang.c:506
 #, c-format
 msgid ""
 "%s=subscribe; %s=sub pattern; %s=unsubscribe; %s=unsub pattern; %s=yank "
 "in/out"
 msgstr ""
 
-#: src/lang.c:501
+#: src/lang.c:507
 #, c-format
 msgid "<n>=set current to n; %s=next unread; %s=catchup; %s=display toggle"
 msgstr ""
 
-#: src/lang.c:502
+#: src/lang.c:508
 #, c-format
 msgid "%s=help; %s=line down; %s=line up; %s=quit; %s=tag; %s=mark unread"
 msgstr ""
 
-#: src/lang.c:503
+#: src/lang.c:509
 msgid "--More--"
 msgstr ""
 
-#: src/lang.c:504
+#: src/lang.c:510
 #, c-format
 msgid "Moving %s..."
 msgstr ""
 
-#: src/lang.c:506
+#: src/lang.c:512
 msgid ", name: "
 msgstr ""
 
-#: src/lang.c:507
+#: src/lang.c:513
 #, c-format
 msgid "Goto newsgroup [%s]> "
 msgstr ""
 
-#: src/lang.c:508
+#: src/lang.c:514
 msgid "newsgroups"
 msgstr ""
 
-#: src/lang.c:509
+#: src/lang.c:515
 #, c-format
 msgid "Position %s in group list (1,2,..,$) [%d]> "
 msgstr ""
 
-#: src/lang.c:510
+#: src/lang.c:516
 msgid "newsgroup"
 msgstr ""
 
-#: src/lang.c:511
+#: src/lang.c:517
 msgid "Try and save newsrc file again?"
 msgstr ""
 
-#: src/lang.c:512
+#: src/lang.c:518
 msgid "Warning: No newsgroups were written to your newsrc file. Save aborted."
 msgstr ""
 
-#: src/lang.c:513
+#: src/lang.c:519
 msgid "newsrc file saved successfully.\n"
 msgstr ""
 
-#: src/lang.c:514
+#: src/lang.c:520
 msgid "-- Next response --"
 msgstr ""
 
-#: src/lang.c:515
+#: src/lang.c:521
 #, c-format
 msgid "NNTP authorization password not found for %s"
 msgstr ""
 
-#: src/lang.c:516
+#: src/lang.c:522
 msgid "No  "
 msgstr ""
 
-#: src/lang.c:517
+#: src/lang.c:523
 msgid "*** No articles ***"
 msgstr ""
 
-#: src/lang.c:518
+#: src/lang.c:524
 msgid "No articles have been posted"
 msgstr ""
 
-#: src/lang.c:519
+#: src/lang.c:525
 msgid "*** No description ***"
 msgstr ""
 
-#: src/lang.c:520
+#: src/lang.c:526
 msgid "No filename"
 msgstr ""
 
-#: src/lang.c:521
+#: src/lang.c:527
 msgid "No group"
 msgstr ""
 
-#: src/lang.c:522
+#: src/lang.c:528
 msgid "*** No groups ***"
 msgstr ""
 
-#: src/lang.c:523
+#: src/lang.c:529
 msgid "No more groups to read"
 msgstr ""
 
-#: src/lang.c:524
+#: src/lang.c:530
 msgid "No last message"
 msgstr ""
 
-#: src/lang.c:525
+#: src/lang.c:531
 msgid "No mail address"
 msgstr ""
 
-#: src/lang.c:526
+#: src/lang.c:532
 msgid "No articles marked for saving"
 msgstr ""
 
-#: src/lang.c:527
+#: src/lang.c:533
 msgid "No match"
 msgstr ""
 
-#: src/lang.c:528
+#: src/lang.c:534
 msgid "No more groups"
 msgstr ""
 
-#: src/lang.c:529
+#: src/lang.c:535
 msgid "No newsgroups"
 msgstr ""
 
-#: src/lang.c:530
+#: src/lang.c:536
 msgid "No next unread article"
 msgstr ""
 
-#: src/lang.c:531
+#: src/lang.c:537
 msgid "No previous group"
 msgstr ""
 
-#: src/lang.c:532
+#: src/lang.c:538
 msgid "No previous unread article"
 msgstr ""
 
-#: src/lang.c:533
+#: src/lang.c:539
 msgid "No responses"
 msgstr ""
 
-#: src/lang.c:534
+#: src/lang.c:540
 msgid "No responses to list in current thread"
 msgstr ""
 
-#: src/lang.c:535
+#: src/lang.c:541
 msgid "No search string"
 msgstr ""
 
-#: src/lang.c:536
+#: src/lang.c:542
 msgid "No subject"
 msgstr ""
 
-#: src/lang.c:538
+#: src/lang.c:544
 #, c-format
 msgid "%s: Terminal must have clear to end-of-line (ce)\n"
 msgstr ""
 
-#: src/lang.c:539
+#: src/lang.c:545
 #, c-format
 msgid "%s: Terminal must have clear to end-of-screen (cd)\n"
 msgstr ""
 
-#: src/lang.c:540
+#: src/lang.c:546
 #, c-format
 msgid "%s: Terminal must have clearscreen (cl) capability\n"
 msgstr ""
 
-#: src/lang.c:541
+#: src/lang.c:547
 #, c-format
 msgid "%s: Terminal must have cursor motion (cm)\n"
 msgstr ""
 
-#: src/lang.c:542
+#: src/lang.c:548
 #, c-format
 msgid "%s: TERM variable must be set to use screen capabilities\n"
 msgstr ""
 
-#: src/lang.c:544
+#: src/lang.c:550
 #, c-format
 msgid "No viewer found for %s/%s\n"
 msgstr ""
 
-#: src/lang.c:545
+#: src/lang.c:551
 msgid "Newsgroup does not exist on this server"
 msgstr ""
 
-#: src/lang.c:546
+#: src/lang.c:552
 #, c-format
 msgid "Group %s not found in active file"
 msgstr ""
 
-#: src/lang.c:547
+#: src/lang.c:553
 msgid "c)reate it, use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr ""
 
-#: src/lang.c:548
+#: src/lang.c:554
 msgid "use a)lternative name, use d)efault .newsrc, q)uit tin: "
 msgstr ""
 
-#: src/lang.c:549
+#: src/lang.c:555
 #, c-format
 msgid ""
 "# NNTP-server -> newsrc translation table and NNTP-server\n"
@@ -2261,316 +2274,316 @@ msgid ""
 "#\n"
 msgstr ""
 
-#: src/lang.c:556
+#: src/lang.c:562
 msgid "Only"
 msgstr ""
 
-#: src/lang.c:557
+#: src/lang.c:563
 #, c-format
 msgid "Option not enabled. Recompile with %s."
 msgstr ""
 
-#: src/lang.c:558
+#: src/lang.c:564
 msgid "Options Menu"
 msgstr ""
 
-#: src/lang.c:561
+#: src/lang.c:567
 #, c-format
 msgid "Error in regex: %s at pos. %d '%s'"
 msgstr ""
 
-#: src/lang.c:562
+#: src/lang.c:568
 #, c-format
 msgid "Error in regex: pcre internal error %d"
 msgstr ""
 
-#: src/lang.c:563
+#: src/lang.c:569
 #, c-format
 msgid "Error in regex: study - pcre internal error %s"
 msgstr ""
 
-#: src/lang.c:564
+#: src/lang.c:570
 msgid "Post a followup..."
 msgstr ""
 
 #. TODO: replace hardcoded key-name in txt_post_error_ask_postpone
-#: src/lang.c:566
+#: src/lang.c:572
 msgid ""
 "An error has occurred while posting the article. If you think that this\n"
 "error is temporary or otherwise correctable, you can postpone the article\n"
 "and pick it up again with ^O later.\n"
 msgstr ""
 
-#: src/lang.c:569
+#: src/lang.c:575
 msgid "Posted articles history"
 msgstr ""
 
-#: src/lang.c:570
+#: src/lang.c:576
 #, c-format
 msgid "Post to newsgroup(s) [%s]> "
 msgstr ""
 
-#: src/lang.c:571
+#: src/lang.c:577
 msgid "-- post processing started --"
 msgstr ""
 
-#: src/lang.c:572
+#: src/lang.c:578
 msgid "-- post processing completed --"
 msgstr ""
 
-#: src/lang.c:573
+#: src/lang.c:579
 #, c-format
 msgid "Post subject [%s]> "
 msgstr ""
 
-#: src/lang.c:574
+#: src/lang.c:580
 msgid ""
 "# Summary of mailed/posted messages viewable by 'W' command from within "
 "tin.\n"
 msgstr ""
 
-#: src/lang.c:575
+#: src/lang.c:581
 msgid "Posting article..."
 msgstr ""
 
-#: src/lang.c:576
+#: src/lang.c:582
 msgid "Post postponed articles [%%s]? (%s/%s/%s/%s/%s): "
 msgstr ""
 
-#: src/lang.c:577
+#: src/lang.c:583
 #, c-format
 msgid "Hot %s"
 msgstr ""
 
-#: src/lang.c:578
+#: src/lang.c:584
 #, c-format
 msgid "Tagged %s"
 msgstr ""
 
-#: src/lang.c:579
+#: src/lang.c:585
 #, c-format
 msgid "Untagged %s"
 msgstr ""
 
-#: src/lang.c:580
+#: src/lang.c:586
 msgid "Processing mail messages marked for deletion."
 msgstr ""
 
-#: src/lang.c:581
+#: src/lang.c:587
 msgid "Processing saved articles marked for deletion."
 msgstr ""
 
-#: src/lang.c:582
+#: src/lang.c:588
 #, c-format
 msgid "Accept Followup-To? %s=post, %s=ignore, %s=quit: "
 msgstr ""
 
-#: src/lang.c:583
+#: src/lang.c:589
 msgid "Article unchanged, abort mailing?"
 msgstr ""
 
-#: src/lang.c:584
+#: src/lang.c:590
 #, c-format
 msgid "Do you want to see postponed articles (%d)?"
 msgstr ""
 
-#: src/lang.c:586
+#: src/lang.c:592
 msgid "Add quick kill filter?"
 msgstr ""
 
-#: src/lang.c:587
+#: src/lang.c:593
 msgid "Add quick selection filter?"
 msgstr ""
 
-#: src/lang.c:588
+#: src/lang.c:594
 msgid "Do you really want to quit?"
 msgstr ""
 
-#: src/lang.c:589
+#: src/lang.c:595
 msgid "%s=edit cancel message, %s=quit, %s=delete (cancel) [%%s]: "
 msgstr ""
 
-#: src/lang.c:590
+#: src/lang.c:596
 msgid "You have tagged articles in this group - quit anyway?"
 msgstr ""
 
-#: src/lang.c:591
+#: src/lang.c:597
 #, c-format
 msgid "%s=quit, %s=edit, %s=postpone: "
 msgstr ""
 
-#: src/lang.c:592
+#: src/lang.c:598
 #, c-format
 msgid "%s=quit %s=edit %s=save kill description: "
 msgstr ""
 
-#: src/lang.c:593
+#: src/lang.c:599
 #, c-format
 msgid "%s=quit %s=edit %s=save select description: "
 msgstr ""
 
-#: src/lang.c:594
+#: src/lang.c:600
 msgid "Do you really want to quit without saving your configuration?"
 msgstr ""
 
-#: src/lang.c:597
+#: src/lang.c:603
 msgid "Invalid range - valid are '0-9.$' eg. 1-$"
 msgstr ""
 
-#: src/lang.c:598
+#: src/lang.c:604
 msgid "Do you want to abort this operation?"
 msgstr ""
 
-#: src/lang.c:599
+#: src/lang.c:605
 msgid "Do you want to exit tin immediately?"
 msgstr ""
 
-#: src/lang.c:600
+#: src/lang.c:606
 msgid "Read response> "
 msgstr ""
 
-#: src/lang.c:601
+#: src/lang.c:607
 msgid "Reading ('q' to quit)..."
 msgstr ""
 
-#: src/lang.c:602
+#: src/lang.c:608
 #, c-format
 msgid "Reading %sarticles..."
 msgstr ""
 
-#: src/lang.c:603
+#: src/lang.c:609
 #, c-format
 msgid "Reading %sattributes file...\n"
 msgstr ""
 
-#: src/lang.c:604
+#: src/lang.c:610
 #, c-format
 msgid "Reading %sconfig file...\n"
 msgstr ""
 
-#: src/lang.c:605
+#: src/lang.c:611
 msgid "Reading filter file...\n"
 msgstr ""
 
-#: src/lang.c:606
+#: src/lang.c:612
 #, c-format
 msgid "Reading %s groups..."
 msgstr ""
 
-#: src/lang.c:607
+#: src/lang.c:613
 msgid "Reading input history file...\n"
 msgstr ""
 
-#: src/lang.c:608
+#: src/lang.c:614
 msgid "Reading keymap file...\n"
 msgstr ""
 
-#: src/lang.c:609
+#: src/lang.c:615
 msgid "Reading groups from active file... "
 msgstr ""
 
-#: src/lang.c:610
+#: src/lang.c:616
 msgid "Reading groups from newsrc file... "
 msgstr ""
 
-#: src/lang.c:611
+#: src/lang.c:617
 msgid "Reading newsgroups file... "
 msgstr ""
 
-#: src/lang.c:612
+#: src/lang.c:618
 msgid "Reading newsrc file..."
 msgstr ""
 
-#: src/lang.c:614
+#: src/lang.c:620
 #, c-format
 msgid "(%d:%02d remaining)"
 msgstr ""
 
-#: src/lang.c:616
+#: src/lang.c:622
 #, c-format
 msgid "Bogus group %s removed."
 msgstr ""
 
-#: src/lang.c:617
+#: src/lang.c:623
 #, c-format
 msgid "Error: rename %s to %s"
 msgstr ""
 
-#: src/lang.c:618
+#: src/lang.c:624
 msgid "Reply to author..."
 msgstr ""
 
-#: src/lang.c:619
+#: src/lang.c:625
 msgid "Repost"
 msgstr ""
 
-#: src/lang.c:620
+#: src/lang.c:626
 msgid "Reposting article..."
 msgstr ""
 
-#: src/lang.c:621
+#: src/lang.c:627
 #, c-format
 msgid "Repost article(s) to group(s) [%s]> "
 msgstr ""
 
-#: src/lang.c:622
+#: src/lang.c:628
 msgid "Reset newsrc?"
 msgstr ""
 
-#: src/lang.c:623
+#: src/lang.c:629
 msgid "Responses have been directed to the following newsgroups"
 msgstr ""
 
-#: src/lang.c:624
+#: src/lang.c:630
 #, c-format
 msgid "Responses have been directed to poster. %s=mail, %s=post, %s=quit: "
 msgstr ""
 
-#: src/lang.c:625
+#: src/lang.c:631
 #, c-format
 msgid "RespNo %4d of %4d"
 msgstr ""
 
-#: src/lang.c:626
+#: src/lang.c:632
 msgid "Press <RETURN> to continue..."
 msgstr ""
 
-#: src/lang.c:628
+#: src/lang.c:634
 #, c-format
 msgid "Select From    [%s] (y/n): "
 msgstr ""
 
-#: src/lang.c:629
+#: src/lang.c:635
 msgid "Select Lines: (</>num): "
 msgstr ""
 
-#: src/lang.c:630
+#: src/lang.c:636
 msgid "Auto-select Article Menu"
 msgstr ""
 
-#: src/lang.c:631
+#: src/lang.c:637
 #, c-format
 msgid "Select Msg-Id  [%s] (f/l/o/n): "
 msgstr ""
 
-#: src/lang.c:632
+#: src/lang.c:638
 msgid "Select pattern scope: "
 msgstr ""
 
-#: src/lang.c:633
+#: src/lang.c:639
 #, c-format
 msgid "Select Subject [%s] (y/n): "
 msgstr ""
 
-#: src/lang.c:634
+#: src/lang.c:640
 msgid "Select text pattern : "
 msgstr ""
 
-#: src/lang.c:635
+#: src/lang.c:641
 msgid "Select time in days   : "
 msgstr ""
 
-#: src/lang.c:636
+#: src/lang.c:642
 #, c-format
 msgid ""
 "# %s server configuration file\n"
@@ -2584,223 +2597,223 @@ msgid ""
 "\n"
 msgstr ""
 
-#: src/lang.c:642
+#: src/lang.c:648
 msgid "Showing unread groups only"
 msgstr ""
 
-#: src/lang.c:643
+#: src/lang.c:649
 msgid "Subject: line (ignore case)   "
 msgstr ""
 
-#: src/lang.c:644
+#: src/lang.c:650
 msgid "Subject: line (case sensitive)"
 msgstr ""
 
-#: src/lang.c:645
+#: src/lang.c:651
 msgid "Save"
 msgstr ""
 
-#: src/lang.c:646
+#: src/lang.c:652
 #, c-format
 msgid "Save '%s' (%s/%s)?"
 msgstr ""
 
-#: src/lang.c:647
+#: src/lang.c:653
 msgid "Save configuration before continuing?"
 msgstr ""
 
-#: src/lang.c:648
+#: src/lang.c:654
 msgid "Save filename> "
 msgstr ""
 
-#: src/lang.c:649
+#: src/lang.c:655
 msgid "Saved"
 msgstr ""
 
-#: src/lang.c:650
+#: src/lang.c:656
 #, c-format
 msgid "%4d unread (%4d hot) %s in %s\n"
 msgstr ""
 
-#: src/lang.c:651
+#: src/lang.c:657
 #, c-format
 msgid "Saved %s...\n"
 msgstr ""
 
-#: src/lang.c:652
+#: src/lang.c:658
 msgid "Nothing was saved"
 msgstr ""
 
-#: src/lang.c:653
+#: src/lang.c:659
 #, c-format
 msgid ""
 "\n"
 "%s %d %s from %d %s\n"
 msgstr ""
 
-#: src/lang.c:654
+#: src/lang.c:660
 #, c-format
 msgid "-- %s saved to %s%s --"
 msgstr ""
 
-#: src/lang.c:655
+#: src/lang.c:661
 #, c-format
 msgid "-- %s saved to %s - %s --"
 msgstr ""
 
-#: src/lang.c:656
+#: src/lang.c:662
 msgid "Saving..."
 msgstr ""
 
-#: src/lang.c:657
+#: src/lang.c:663
 #, c-format
 msgid "%s: Screen initialization failed"
 msgstr ""
 
-#: src/lang.c:659
+#: src/lang.c:665
 #, c-format
 msgid "%s: screen is too small\n"
 msgstr ""
 
-#: src/lang.c:661
+#: src/lang.c:667
 #, c-format
 msgid "screen is too small, %s is exiting\n"
 msgstr ""
 
-#: src/lang.c:662
+#: src/lang.c:668
 #, c-format
 msgid "Search backwards [%s]> "
 msgstr ""
 
-#: src/lang.c:663
+#: src/lang.c:669
 #, c-format
 msgid "Search body [%s]> "
 msgstr ""
 
-#: src/lang.c:664
+#: src/lang.c:670
 #, c-format
 msgid "Search forwards [%s]> "
 msgstr ""
 
-#: src/lang.c:665
+#: src/lang.c:671
 msgid "Searching..."
 msgstr ""
 
-#: src/lang.c:666
+#: src/lang.c:672
 #, c-format
 msgid "Searching article %d of %d ('q' to abort)..."
 msgstr ""
 
-#: src/lang.c:667
+#: src/lang.c:673
 msgid "Select article> "
 msgstr ""
 
-#: src/lang.c:668
+#: src/lang.c:674
 msgid ""
 "Select option number before text or use arrow keys and <CR>. 'q' to quit."
 msgstr ""
 
-#: src/lang.c:669
+#: src/lang.c:675
 msgid "Select group> "
 msgstr ""
 
-#: src/lang.c:670
+#: src/lang.c:676
 #, c-format
 msgid "Enter selection pattern [%s]> "
 msgstr ""
 
-#: src/lang.c:671
+#: src/lang.c:677
 msgid "Select thread > "
 msgstr ""
 
-#: src/lang.c:672
+#: src/lang.c:678
 #, c-format
 msgid "%s %s %s (\"%s\") [%s]: send a DETAILED bug report to %s\n"
 msgstr ""
 
-#: src/lang.c:673
+#: src/lang.c:679
 msgid "servers active-file"
 msgstr ""
 
-#: src/lang.c:674
+#: src/lang.c:680
 msgid "Cannot move into new newsgroups. Subscribe first..."
 msgstr ""
 
-#: src/lang.c:675
+#: src/lang.c:681
 msgid "<SPACE>"
 msgstr ""
 
-#: src/lang.c:676
+#: src/lang.c:682
 #, c-format
 msgid "Starting: (%s)"
 msgstr ""
 
-#: src/lang.c:677
+#: src/lang.c:683
 #, c-format
 msgid "List Thread (%d of %d)"
 msgstr ""
 
-#: src/lang.c:678
+#: src/lang.c:684
 #, c-format
 msgid "Thread (%.*s)"
 msgstr ""
 
-#: src/lang.c:679
+#: src/lang.c:685
 msgid "Enter wildcard subscribe pattern> "
 msgstr ""
 
-#: src/lang.c:680
+#: src/lang.c:686
 #, c-format
 msgid "subscribed to %d groups"
 msgstr ""
 
-#: src/lang.c:681
+#: src/lang.c:687
 #, c-format
 msgid "Subscribed to %s"
 msgstr ""
 
-#: src/lang.c:682
+#: src/lang.c:688
 msgid "Subscribing... "
 msgstr ""
 
-#: src/lang.c:683
+#: src/lang.c:689
 msgid "Repost or supersede article(s) [%%s]? (%s/%s/%s): "
 msgstr ""
 
-#: src/lang.c:684
+#: src/lang.c:690
 #, c-format
 msgid "Supersede article(s) to group(s) [%s]> "
 msgstr ""
 
-#: src/lang.c:685
+#: src/lang.c:691
 msgid "Superseding article ..."
 msgstr ""
 
-#: src/lang.c:686
+#: src/lang.c:692
 #, c-format
 msgid ""
 "\n"
 "Stopped. Type 'fg' to restart %s\n"
 msgstr ""
 
-#: src/lang.c:688
+#: src/lang.c:694
 #, c-format
 msgid "%d days"
 msgstr ""
 
-#: src/lang.c:689
+#: src/lang.c:695
 msgid "<TAB>"
 msgstr ""
 
-#: src/lang.c:690
+#: src/lang.c:696
 msgid "TeX "
 msgstr ""
 
-#: src/lang.c:691
+#: src/lang.c:697
 msgid "# Default action/prompt strings\n"
 msgstr ""
 
-#: src/lang.c:692
+#: src/lang.c:698
 msgid ""
 "# Defaults for quick (1 key) kill & auto-selection filters\n"
 "# header=NUM  0,1=Subject: 2,3=From: 4=Message-ID: & full References: line\n"
@@ -2811,262 +2824,262 @@ msgid ""
 "# expire=ON/OFF  ON=limit to default_filter_days OFF=don't ever expire\n"
 msgstr ""
 
-#: src/lang.c:705
+#: src/lang.c:711
 msgid ""
 "# If ON use print current subject or newsgroup description in the last line\n"
 msgstr ""
 
-#: src/lang.c:706
+#: src/lang.c:712
 msgid "# Host & time info used for detecting new groups (don't touch)\n"
 msgstr ""
 
-#: src/lang.c:707
+#: src/lang.c:713
 msgid "There is no news\n"
 msgstr ""
 
-#: src/lang.c:708
+#: src/lang.c:714
 msgid "Thread"
 msgstr ""
 
-#: src/lang.c:709
+#: src/lang.c:715
 msgid "Thread Level Commands"
 msgstr ""
 
-#: src/lang.c:710
+#: src/lang.c:716
 msgid "Thread deselected"
 msgstr ""
 
-#: src/lang.c:711
+#: src/lang.c:717
 msgid "Thread selected"
 msgstr ""
 
-#: src/lang.c:712
+#: src/lang.c:719
 msgid "threads"
 msgstr ""
 
-#: src/lang.c:713
+#: src/lang.c:721
 msgid "Thread range"
 msgstr ""
 
-#: src/lang.c:714
+#: src/lang.c:722
 msgid "thread"
 msgstr ""
 
-#: src/lang.c:715
+#: src/lang.c:723
 #, c-format
 msgid "Thread %4s of %4s"
 msgstr ""
 
-#: src/lang.c:716
+#: src/lang.c:724
 msgid "Threading articles..."
 msgstr ""
 
-#: src/lang.c:717
+#: src/lang.c:725
 #, c-format
 msgid "Toggled word highlighting %s"
 msgstr ""
 
-#: src/lang.c:718
+#: src/lang.c:726
 msgid "Toggled rot13 encoding"
 msgstr ""
 
-#: src/lang.c:719
+#: src/lang.c:727
 #, c-format
 msgid "Toggled german TeX encoding %s"
 msgstr ""
 
-#: src/lang.c:720
+#: src/lang.c:728
 #, c-format
 msgid "Toggled tab-width to %d"
 msgstr ""
 
-#: src/lang.c:721
+#: src/lang.c:729
 #, c-format
 msgid "%d Trying to dotlock %s"
 msgstr ""
 
-#: src/lang.c:722
+#: src/lang.c:730
 #, c-format
 msgid "%d Trying to lock %s"
 msgstr ""
 
-#: src/lang.c:723
+#: src/lang.c:731
 msgid "           h=help\n"
 msgstr ""
 
-#: src/lang.c:725
+#: src/lang.c:733
 msgid "Unlimited"
 msgstr ""
 
-#: src/lang.c:726
+#: src/lang.c:734
 msgid "Enter wildcard unsubscribe pattern> "
 msgstr ""
 
-#: src/lang.c:727
+#: src/lang.c:735
 #, c-format
 msgid "Error decoding %s : %s"
 msgstr ""
 
-#: src/lang.c:728
+#: src/lang.c:736
 msgid "No end."
 msgstr ""
 
-#: src/lang.c:729
+#: src/lang.c:737
 #, c-format
 msgid "%s successfully decoded."
 msgstr ""
 
-#: src/lang.c:730
+#: src/lang.c:738
 #, c-format
 msgid ""
 "%*s[-- %s/%s, %suuencoded file, %d lines, name: %s --]\n"
 "\n"
 msgstr ""
 
-#: src/lang.c:731
+#: src/lang.c:739
 msgid "unread "
 msgstr ""
 
-#: src/lang.c:732
+#: src/lang.c:740
 #, c-format
 msgid "unsubscribed from %d groups"
 msgstr ""
 
-#: src/lang.c:733
+#: src/lang.c:741
 #, c-format
 msgid "Unsubscribed from %s"
 msgstr ""
 
-#: src/lang.c:734
+#: src/lang.c:742
 msgid "Unsubscribing... "
 msgstr ""
 
-#: src/lang.c:735
+#: src/lang.c:743
 msgid "Unthreading articles..."
 msgstr ""
 
-#: src/lang.c:736
+#: src/lang.c:744
 msgid "Updated"
 msgstr ""
 
-#: src/lang.c:737
+#: src/lang.c:745
 msgid "Updating"
 msgstr ""
 
-#: src/lang.c:738
+#: src/lang.c:746
 #, c-format
 msgid "Opening %s\n"
 msgstr ""
 
-#: src/lang.c:739
+#: src/lang.c:747
 msgid "No more URL's in this article"
 msgstr ""
 
-#: src/lang.c:740
+#: src/lang.c:748
 msgid "Use MIME display program for this message?"
 msgstr ""
 
-#: src/lang.c:741
+#: src/lang.c:749
 msgid "  -c       mark all news as read in subscribed newsgroups (batch mode)"
 msgstr ""
 
-#: src/lang.c:742
+#: src/lang.c:750
 msgid "  -Z       return status indicating if any unread news (batch mode)"
 msgstr ""
 
-#: src/lang.c:743
+#: src/lang.c:751
 msgid "  -q       don't check for new newsgroups"
 msgstr ""
 
-#: src/lang.c:744
+#: src/lang.c:752
 msgid "  -X       don't save any files on quit"
 msgstr ""
 
-#: src/lang.c:745
+#: src/lang.c:753
 msgid "  -d       don't show newsgroup descriptions"
 msgstr ""
 
-#: src/lang.c:746
+#: src/lang.c:754
 msgid "  -G limit get only limit articles/group"
 msgstr ""
 
-#: src/lang.c:747
+#: src/lang.c:755
 #, c-format
 msgid "  -H       help information about %s"
 msgstr ""
 
-#: src/lang.c:748
+#: src/lang.c:756
 msgid "  -h       this help message"
 msgstr ""
 
-#: src/lang.c:749
+#: src/lang.c:757
 #, c-format
 msgid "  -I dir   news index file directory [default=%s]"
 msgstr ""
 
-#: src/lang.c:750
+#: src/lang.c:758
 msgid "  -u       update index files (batch mode)"
 msgstr ""
 
-#: src/lang.c:751
+#: src/lang.c:759
 #, c-format
 msgid "  -m dir   mailbox directory [default=%s]"
 msgstr ""
 
-#: src/lang.c:752
+#: src/lang.c:760
 #, c-format
 msgid ""
 "\n"
 "Mail bug reports/comments to %s"
 msgstr ""
 
-#: src/lang.c:753
+#: src/lang.c:761
 msgid "  -N       mail new news to your posts (batch mode)"
 msgstr ""
 
-#: src/lang.c:754
+#: src/lang.c:762
 msgid "  -M user  mail new news to specified user (batch mode)"
 msgstr ""
 
-#: src/lang.c:755
+#: src/lang.c:763
 #, c-format
 msgid "  -f file  subscribed to newsgroups file [default=%s]"
 msgstr ""
 
-#: src/lang.c:756
+#: src/lang.c:764
 msgid "  -x       no posting mode"
 msgstr ""
 
-#: src/lang.c:757
+#: src/lang.c:765
 msgid "  -w       post an article and exit"
 msgstr ""
 
-#: src/lang.c:758
+#: src/lang.c:766
 msgid "  -o       post all postponed articles and exit"
 msgstr ""
 
-#: src/lang.c:759
+#: src/lang.c:767
 msgid "  -r       read news remotely from default NNTP server"
 msgstr ""
 
-#: src/lang.c:760
+#: src/lang.c:768
 msgid "  -R       read news saved by -S option"
 msgstr ""
 
-#: src/lang.c:761
+#: src/lang.c:769
 #, c-format
 msgid "  -s dir   save news directory [default=%s]"
 msgstr ""
 
-#: src/lang.c:762
+#: src/lang.c:770
 msgid "  -S       save new news for later reading (batch mode)"
 msgstr ""
 
-#: src/lang.c:763
+#: src/lang.c:771
 msgid "  -z       start if any unread news"
 msgstr ""
 
-#: src/lang.c:764
+#: src/lang.c:772
 #, c-format
 msgid ""
 "A Usenet reader.\n"
@@ -3074,37 +3087,37 @@ msgid ""
 "Usage: %s [options] [newsgroup[,...]]"
 msgstr ""
 
-#: src/lang.c:765
+#: src/lang.c:773
 msgid "  -v       verbose output for batch mode options"
 msgstr ""
 
-#: src/lang.c:766
+#: src/lang.c:774
 msgid "  -V       print version & date information"
 msgstr ""
 
-#: src/lang.c:767
+#: src/lang.c:775
 #, c-format
 msgid "%s only useful without batch mode operations\n"
 msgstr ""
 
-#: src/lang.c:768
+#: src/lang.c:776
 #, c-format
 msgid "%s only useful for batch mode operations\n"
 msgstr ""
 
-#: src/lang.c:770
+#: src/lang.c:778
 #, c-format
 msgid ""
 "\n"
 "%s%d out of range (0 - %d). Reset to 0"
 msgstr ""
 
-#: src/lang.c:771
+#: src/lang.c:779
 #, c-format
 msgid "View '%s' (%s/%s)?"
 msgstr ""
 
-#: src/lang.c:773
+#: src/lang.c:781
 #, c-format
 msgid ""
 "\n"
@@ -3112,33 +3125,33 @@ msgid ""
 "%-100s\n"
 msgstr ""
 
-#: src/lang.c:774
+#: src/lang.c:782
 msgid ""
 "\n"
 "Warning: article unchanged after editing\n"
 msgstr ""
 
-#: src/lang.c:775
+#: src/lang.c:783
 msgid ""
 "\n"
 "Warning: \"Subject:\" contains only whitespaces.\n"
 msgstr ""
 
-#: src/lang.c:776
+#: src/lang.c:784
 msgid ""
 "\n"
 "Warning: \"Subject:\" begins with \"Re: \" but there are no "
 "\"References:\".\n"
 msgstr ""
 
-#: src/lang.c:778
+#: src/lang.c:786
 msgid ""
 "\n"
 "Warning: Article has \"References:\" but \"Subject:\" does not begin\n"
 "         with \"Re: \" and does not contain \"(was:\".\n"
 msgstr ""
 
-#: src/lang.c:781
+#: src/lang.c:789
 msgid ""
 "Read carefully!\n"
 "\n"
@@ -3152,7 +3165,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: src/lang.c:785
+#: src/lang.c:793
 msgid ""
 "\n"
 "Warning: You are using a non-plain transfer encoding (such as base64 or\n"
@@ -3161,7 +3174,7 @@ msgid ""
 "         not be encoded properly.\n"
 msgstr ""
 
-#: src/lang.c:790
+#: src/lang.c:798
 #, c-format
 msgid ""
 "\n"
@@ -3171,7 +3184,7 @@ msgid ""
 "Read WHATSNEW, etc...\n"
 msgstr ""
 
-#: src/lang.c:792
+#: src/lang.c:800
 #, c-format
 msgid ""
 "\n"
@@ -3180,7 +3193,7 @@ msgid ""
 "Some values in your %s file may be ignored, others might have changed!\n"
 msgstr ""
 
-#: src/lang.c:795
+#: src/lang.c:803
 #, c-format
 msgid ""
 "Warning: tin wrote fewer groups to your\n"
@@ -3190,19 +3203,19 @@ msgid ""
 "before you start tin once again!\n"
 msgstr ""
 
-#: src/lang.c:799
+#: src/lang.c:807
 #, c-format
 msgid ""
 "\n"
 "Warning: Found %d '-- \\n' lines, this may confuse some people.\n"
 msgstr ""
 
-#: src/lang.c:800
+#: src/lang.c:808
 #, c-format
 msgid "Warning: Only %d out of %d articles were saved"
 msgstr ""
 
-#: src/lang.c:801
+#: src/lang.c:809
 #, c-format
 msgid ""
 "\n"
@@ -3213,49 +3226,49 @@ msgid ""
 "         possible.\n"
 msgstr ""
 
-#: src/lang.c:805
+#: src/lang.c:813
 #, c-format
 msgid ""
 "Warning: this mail address may contain a spamtrap. %s=continue, %s=abort? "
 msgstr ""
 
-#: src/lang.c:806
+#: src/lang.c:814
 msgid ""
 "\n"
 "Warning: Signatures should start with '-- \\n' not with '--\\n'.\n"
 msgstr ""
 
-#: src/lang.c:807
+#: src/lang.c:815
 msgid "Writing attributes file..."
 msgstr ""
 
-#: src/lang.c:809
+#: src/lang.c:817
 #, c-format
 msgid "%d Responses"
 msgstr ""
 
-#: src/lang.c:811
+#: src/lang.c:819
 #, c-format
 msgid "Added %d %s"
 msgstr ""
 
-#: src/lang.c:812
+#: src/lang.c:820
 msgid "No unsubscribed groups to show"
 msgstr ""
 
-#: src/lang.c:813
+#: src/lang.c:821
 msgid "Showing subscribed to groups only"
 msgstr ""
 
-#: src/lang.c:814
+#: src/lang.c:822
 msgid "Yes "
 msgstr ""
 
-#: src/lang.c:815
+#: src/lang.c:823
 msgid "    You have mail\n"
 msgstr ""
 
-#: src/lang.c:820
+#: src/lang.c:828
 #, c-format
 msgid ""
 "\n"
@@ -3268,16 +3281,16 @@ msgid ""
 "         M)enu option.\n"
 msgstr ""
 
-#: src/lang.c:831
+#: src/lang.c:839
 #, c-format
 msgid "Redefined key %s '%s' -> '%s'\n"
 msgstr ""
 
-#: src/lang.c:832
+#: src/lang.c:840
 msgid "  -D       debug mode 1=NNTP 2=ALL"
 msgstr ""
 
-#: src/lang.c:836
+#: src/lang.c:844
 msgid ""
 "Read carefully!\n"
 "\n"
@@ -3294,11 +3307,11 @@ msgid ""
 "\n"
 msgstr ""
 
-#: src/lang.c:845
+#: src/lang.c:853
 msgid "toggle color"
 msgstr ""
 
-#: src/lang.c:846
+#: src/lang.c:854
 msgid ""
 "# Changing colors of several screen parts\n"
 "# Possible values are:\n"
@@ -3323,351 +3336,351 @@ msgid ""
 "\n"
 msgstr ""
 
-#: src/lang.c:866
+#: src/lang.c:874
 msgid "  -a       toggle color flag"
 msgstr ""
 
-#: src/lang.c:870
+#: src/lang.c:878
 msgid ""
 "\n"
 "Error: Followup-To set to more than one newsgroup!\n"
 msgstr ""
 
-#: src/lang.c:871
+#: src/lang.c:879
 #, c-format
 msgid ""
 "\n"
 "Error: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr ""
 
-#: src/lang.c:872
+#: src/lang.c:880
 #, c-format
 msgid ""
 "\n"
 "Error: \"%s\" is not a valid newsgroup!\n"
 msgstr ""
 
-#: src/lang.c:874
+#: src/lang.c:882
 msgid ""
 "\n"
 "Warning: Followup-To set to more than one newsgroup!\n"
 msgstr ""
 
-#: src/lang.c:875
+#: src/lang.c:883
 #, c-format
 msgid ""
 "\n"
 "Warning: cross-posting to %d newsgroups and no Followup-To line!\n"
 msgstr ""
 
-#: src/lang.c:876
+#: src/lang.c:884
 #, c-format
 msgid ""
 "\n"
 "Warning: \"%s\" is not in your newsrc, it may be invalid at this site!\n"
 msgstr ""
 
-#: src/lang.c:877
+#: src/lang.c:885
 #, c-format
 msgid ""
 "\n"
 "Warning: \"%s\" is not a valid newsgroup at this site!\n"
 msgstr ""
 
-#: src/lang.c:881
+#: src/lang.c:889
 #, c-format
 msgid "%d files successfully written from %d articles. %d %s occurred."
 msgstr ""
 
-#: src/lang.c:882
+#: src/lang.c:890
 msgid "Missing parts."
 msgstr ""
 
-#: src/lang.c:883
+#: src/lang.c:891
 msgid "No beginning."
 msgstr ""
 
-#: src/lang.c:884
+#: src/lang.c:892
 msgid "No data."
 msgstr ""
 
-#: src/lang.c:885
+#: src/lang.c:893
 msgid "Unknown error."
 msgstr ""
 
-#: src/lang.c:887
+#: src/lang.c:896
 #, c-format
 msgid "\tChecksum of %s (%ld %s)"
 msgstr ""
 
-#: src/lang.c:891
+#: src/lang.c:901
 msgid "Reading mail active file... "
 msgstr ""
 
-#: src/lang.c:892
+#: src/lang.c:902
 msgid "Reading mailgroups file... "
 msgstr ""
 
-#: src/lang.c:896
+#: src/lang.c:906
 msgid "perform PGP operations on article"
 msgstr ""
 
-#: src/lang.c:897
+#: src/lang.c:907
 msgid "Add key(s) to public keyring?"
 msgstr ""
 
-#: src/lang.c:898
+#: src/lang.c:908
 #, c-format
 msgid "%s=encrypt, %s=sign, %s=both, %s=quit: "
 msgstr ""
 
-#: src/lang.c:899
+#: src/lang.c:909
 #, c-format
 msgid "%s=sign, %s=sign & include public key, %s=quit: "
 msgstr ""
 
-#: src/lang.c:900
+#: src/lang.c:910
 #, c-format
 msgid "PGP has not been set up (can't open %s)"
 msgstr ""
 
-#: src/lang.c:901
+#: src/lang.c:911
 msgid "Article not signed and no public keys found"
 msgstr ""
 
-#: src/lang.c:903
+#: src/lang.c:913
 #, c-format
 msgid "%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone: "
 msgstr ""
 
-#: src/lang.c:904
+#: src/lang.c:914
 msgid "%s=quit, %s=edit, %s=ispell, %s=pgp, %s=send [%%s]: "
 msgstr ""
 
-#: src/lang.c:905
+#: src/lang.c:915
 msgid ""
 "%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr ""
 
-#: src/lang.c:907
+#: src/lang.c:917
 #, c-format
 msgid "%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone: "
 msgstr ""
 
-#: src/lang.c:908
+#: src/lang.c:918
 msgid "%s=quit, %s=edit, %s=pgp, %s=send [%%s]: "
 msgstr ""
 
-#: src/lang.c:909
+#: src/lang.c:919
 msgid "%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr ""
 
-#: src/lang.c:913
+#: src/lang.c:923
 #, c-format
 msgid "%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone: "
 msgstr ""
 
-#: src/lang.c:914
+#: src/lang.c:924
 msgid "%s=quit, %s=edit, %s=ispell, %s=send [%%s]: "
 msgstr ""
 
-#: src/lang.c:915
+#: src/lang.c:925
 msgid "%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr ""
 
-#: src/lang.c:917
+#: src/lang.c:927
 #, c-format
 msgid "%s=quit, %s=edit, %s=menu, %s=post, %s=postpone: "
 msgstr ""
 
-#: src/lang.c:918
+#: src/lang.c:928
 msgid "%s=quit, %s=edit, %s=send [%%s]: "
 msgstr ""
 
-#: src/lang.c:919
+#: src/lang.c:929
 msgid "%s=quit, %s=edit, %s=menu, %s=post, %s=postpone [%%s]: "
 msgstr ""
 
-#: src/lang.c:928
+#: src/lang.c:938
 msgid "Try cache_overview_files to speed up things.\n"
 msgstr ""
 
-#: src/lang.c:929
+#: src/lang.c:939
 msgid "Tin will use local index files instead.\n"
 msgstr ""
 
-#: src/lang.c:930
+#: src/lang.c:940
 msgid "Cannot find NNTP server name"
 msgstr ""
 
-#: src/lang.c:931
+#: src/lang.c:941
 #, c-format
 msgid "Connecting to %s:%d..."
 msgstr ""
 
-#: src/lang.c:932
+#: src/lang.c:942
 msgid "Disconnecting from server...\n"
 msgstr ""
 
-#: src/lang.c:933
+#: src/lang.c:943
 #, c-format
 msgid "Wrong newsgroup name in response of GROUP command, %s for %s"
 msgstr ""
 
-#: src/lang.c:934
+#: src/lang.c:944
 #, c-format
 msgid "Failed to connect to NNTP server %s. Exiting..."
 msgstr ""
 
-#: src/lang.c:935
+#: src/lang.c:945
 msgid "205  Closing connection"
 msgstr ""
 
-#: src/lang.c:936
+#: src/lang.c:946
 msgid "Your server does not support the NNTP XOVER or OVER command.\n"
 msgstr ""
 
-#: src/lang.c:937
+#: src/lang.c:947
 msgid "Connection to news server has timed out. Reconnect?"
 msgstr ""
 
-#: src/lang.c:938
+#: src/lang.c:948
 #, c-format
 msgid ""
 "Put the server name in the file %s,\n"
 "or set the environment variable NNTPSERVER"
 msgstr ""
 
-#: src/lang.c:939
+#: src/lang.c:949
 msgid "  -A       force authentication on connect"
 msgstr ""
 
-#: src/lang.c:940
+#: src/lang.c:950
 #, c-format
 msgid "  -g serv  read news from NNTP server serv [default=%s]"
 msgstr ""
 
-#: src/lang.c:941
+#: src/lang.c:951
 #, c-format
 msgid "  -p port  use port as NNTP port [default=%d]"
 msgstr ""
 
-#: src/lang.c:942
+#: src/lang.c:952
 msgid "  -Q       quick start. Same as -nqd"
 msgstr ""
 
-#: src/lang.c:943
+#: src/lang.c:953
 msgid "  -l       use only LIST instead of GROUP (-n) command"
 msgstr ""
 
-#: src/lang.c:944
+#: src/lang.c:954
 msgid "  -n       only read subscribed .newsrc groups from NNTP server"
 msgstr ""
 
-#: src/lang.c:946
+#: src/lang.c:956
 #, c-format
 msgid "%s/tcp: Unknown service.\n"
 msgstr ""
 
-#: src/lang.c:949
+#: src/lang.c:959
 msgid ""
 "\n"
 "socket or connect problem\n"
 msgstr ""
 
-#: src/lang.c:951
+#: src/lang.c:961
 #, c-format
 msgid ""
 "\n"
 "Connection to %s: "
 msgstr ""
 
-#: src/lang.c:952
+#: src/lang.c:962
 msgid "Giving up...\n"
 msgstr ""
 
-#: src/lang.c:955
+#: src/lang.c:965
 msgid ""
 "Your server does not have Xref: in its XOVER information.\n"
 "Tin will try to use XHDR XREF instead (slows down things a bit).\n"
 msgstr ""
 
-#: src/lang.c:958
+#: src/lang.c:968
 msgid "Your server does not have Xref: in its XOVER information.\n"
 msgstr ""
 
-#: src/lang.c:961
+#: src/lang.c:971
 #, c-format
 msgid "Can't open %s. Try %s -r to read news via NNTP.\n"
 msgstr ""
 
-#: src/lang.c:964
+#: src/lang.c:974
 msgid "  -Q       quick start. Same as -qd"
 msgstr ""
 
-#: src/lang.c:965
+#: src/lang.c:975
 msgid "  -l       read only active file instead of scanning spool (-n) command"
 msgstr ""
 
-#: src/lang.c:966
+#: src/lang.c:976
 msgid "  -n       only read subscribed .newsrc groups from spool"
 msgstr ""
 
-#: src/lang.c:967
+#: src/lang.c:977
 msgid "Your server does not have Xref: in its NOV-files.\n"
 msgstr ""
 
-#: src/lang.c:971
+#: src/lang.c:981
 msgid "Posting using external inews failed. Use built in inews instead?"
 msgstr ""
 
-#: src/lang.c:972
+#: src/lang.c:982
 msgid "It worked! Should I always use my built in inews from now on?"
 msgstr ""
 
-#: src/lang.c:980
+#: src/lang.c:990
 #, c-format
 msgid "%d %s printed"
 msgstr ""
 
-#: src/lang.c:981
+#: src/lang.c:991
 msgid "output article/thread/hot/pattern/tagged articles to printer"
 msgstr ""
 
-#: src/lang.c:982
+#: src/lang.c:992
 msgid "Print"
 msgstr ""
 
-#: src/lang.c:983
+#: src/lang.c:993
 msgid "Printing..."
 msgstr ""
 
-#: src/lang.c:987
+#: src/lang.c:997
 msgid "pipe article/thread/hot/pattern/tagged articles into command"
 msgstr ""
 
-#: src/lang.c:988
+#: src/lang.c:998
 msgid "No command"
 msgstr ""
 
-#: src/lang.c:989
+#: src/lang.c:999
 msgid "Pipe"
 msgstr ""
 
-#: src/lang.c:990
+#: src/lang.c:1000
 #, c-format
 msgid "Pipe to command [%.*s]> "
 msgstr ""
 
-#: src/lang.c:991
+#: src/lang.c:1001
 msgid "Piping..."
 msgstr ""
 
-#: src/lang.c:993
+#: src/lang.c:1003
 msgid "Piping not enabled."
 msgstr ""
 
-#: src/lang.c:997
+#: src/lang.c:1007
 #, c-format
 msgid ""
 "\n"
@@ -3677,7 +3690,7 @@ msgid ""
 "       newsgroup names.\n"
 msgstr ""
 
-#: src/lang.c:1002
+#: src/lang.c:1012
 #, c-format
 msgid ""
 "\n"
@@ -3686,7 +3699,7 @@ msgid ""
 "       Please write all newsgroups into a single line.\n"
 msgstr ""
 
-#: src/lang.c:1007
+#: src/lang.c:1017
 #, c-format
 msgid ""
 "\n"
@@ -3695,14 +3708,14 @@ msgid ""
 "         To avoid trouble please write all newsgroups into a single line.\n"
 msgstr ""
 
-#: src/lang.c:1011
+#: src/lang.c:1021
 #, c-format
 msgid ""
 "\n"
 "Warning: The \"%s:\" line has spaces in it that SHOULD be removed.\n"
 msgstr ""
 
-#: src/lang.c:1016
+#: src/lang.c:1026
 msgid ""
 "\n"
 "  If your article contains quoted text  please take some time to pare it "
@@ -3724,505 +3737,505 @@ msgid ""
 "  likely to ignore it completely.  It's a crowded net out there.\n"
 msgstr ""
 
-#: src/lang.c:1029
+#: src/lang.c:1039
 msgid "shell escape"
 msgstr ""
 
-#: src/lang.c:1030
+#: src/lang.c:1040
 #, c-format
 msgid "Shell Command (%s)"
 msgstr ""
 
-#: src/lang.c:1031
+#: src/lang.c:1041
 #, c-format
 msgid "Enter shell command [%s]> "
 msgstr ""
 
-#: src/lang.c:1035
+#: src/lang.c:1045
 #, c-format
 msgid "%s: Can't get entry for TERM\n"
 msgstr ""
 
-#: src/lang.c:1039
+#: src/lang.c:1049
 #, c-format
 msgid "Group %.*s ('q' to quit)..."
 msgstr ""
 
-#: src/lang.c:1041
+#: src/lang.c:1051
 #, c-format
 msgid "Group %.*s..."
 msgstr ""
 
-#: src/lang.c:1045
+#: src/lang.c:1055
 msgid "Server unavailable\n"
 msgstr ""
 
-#: src/lang.c:1051
+#: src/lang.c:1061
 #, c-format
 msgid ""
 "%s=pipe; %s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; "
 "%s=post"
 msgstr ""
 
-#: src/lang.c:1052
+#: src/lang.c:1062
 #, c-format
 msgid ""
 "%s=pipe; %s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr ""
 
-#: src/lang.c:1054
+#: src/lang.c:1064
 #, c-format
 msgid ""
 "%s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr ""
 
-#: src/lang.c:1055
+#: src/lang.c:1065
 #, c-format
 msgid "%s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr ""
 
-#: src/lang.c:1059
+#: src/lang.c:1069
 #, c-format
 msgid ""
 "%s=pipe; %s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr ""
 
-#: src/lang.c:1060
+#: src/lang.c:1070
 #, c-format
 msgid "%s=pipe; %s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr ""
 
-#: src/lang.c:1062
+#: src/lang.c:1072
 #, c-format
 msgid "%s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
 msgstr ""
 
-#: src/lang.c:1063
+#: src/lang.c:1073
 #, c-format
 msgid "%s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
 msgstr ""
 
-#: src/lang.c:1069
+#: src/lang.c:1079
 msgid "Terminal does not support color"
 msgstr ""
 
-#: src/lang.c:1074
+#: src/lang.c:1084
 #, c-format
 msgid "Trying %s"
 msgstr ""
 
-#: src/lang.c:1088 src/lang.c:1113 src/lang.c:1129 src/lang.c:1308
+#: src/lang.c:1098 src/lang.c:1123 src/lang.c:1139 src/lang.c:1318
 #: src/refs.c:296
 msgid "None"
 msgstr ""
 
-#: src/lang.c:1089
+#: src/lang.c:1099
 msgid "Subject"
 msgstr ""
 
-#: src/lang.c:1090
+#: src/lang.c:1100
 msgid "References"
 msgstr ""
 
-#: src/lang.c:1091
+#: src/lang.c:1101
 msgid "Both Subject and References"
 msgstr ""
 
-#: src/lang.c:1092
+#: src/lang.c:1102
 msgid "Multipart Subject"
 msgstr ""
 
-#: src/lang.c:1104 src/lang.c:1215
+#: src/lang.c:1114 src/lang.c:1225
 msgid "No"
 msgstr ""
 
-#: src/lang.c:1105 src/lang.c:1217
+#: src/lang.c:1115 src/lang.c:1227
 msgid "Yes"
 msgstr ""
 
-#: src/lang.c:1106
+#: src/lang.c:1116
 msgid "Hide All"
 msgstr ""
 
-#: src/lang.c:1114
+#: src/lang.c:1124
 msgid "Address"
 msgstr ""
 
-#: src/lang.c:1115
+#: src/lang.c:1125
 msgid "Full Name"
 msgstr ""
 
-#: src/lang.c:1116
+#: src/lang.c:1126
 msgid "Address and Name"
 msgstr ""
 
-#: src/lang.c:1123
+#: src/lang.c:1133
 msgid "Max"
 msgstr ""
 
-#: src/lang.c:1124
+#: src/lang.c:1134
 msgid "Sum"
 msgstr ""
 
-#: src/lang.c:1125
+#: src/lang.c:1135
 msgid "Average"
 msgstr ""
 
-#: src/lang.c:1130
+#: src/lang.c:1140
 msgid "Lines"
 msgstr ""
 
-#: src/lang.c:1131
+#: src/lang.c:1141
 msgid "Score"
 msgstr ""
 
-#: src/lang.c:1132
+#: src/lang.c:1142
 msgid "Lines & Score"
 msgstr ""
 
-#: src/lang.c:1141
+#: src/lang.c:1151
 msgid "Black"
 msgstr ""
 
-#: src/lang.c:1142
+#: src/lang.c:1152
 msgid "Red"
 msgstr ""
 
-#: src/lang.c:1143
+#: src/lang.c:1153
 msgid "Green"
 msgstr ""
 
-#: src/lang.c:1144
+#: src/lang.c:1154
 msgid "Brown"
 msgstr ""
 
-#: src/lang.c:1145
+#: src/lang.c:1155
 msgid "Blue"
 msgstr ""
 
-#: src/lang.c:1146
+#: src/lang.c:1156
 msgid "Pink"
 msgstr ""
 
-#: src/lang.c:1147
+#: src/lang.c:1157
 msgid "Cyan"
 msgstr ""
 
-#: src/lang.c:1148
+#: src/lang.c:1158
 msgid "White"
 msgstr ""
 
-#: src/lang.c:1149
+#: src/lang.c:1159
 msgid "Gray"
 msgstr ""
 
-#: src/lang.c:1150
+#: src/lang.c:1160
 msgid "Light Red"
 msgstr ""
 
-#: src/lang.c:1151
+#: src/lang.c:1161
 msgid "Light Green"
 msgstr ""
 
-#: src/lang.c:1152
+#: src/lang.c:1162
 msgid "Yellow"
 msgstr ""
 
-#: src/lang.c:1153
+#: src/lang.c:1163
 msgid "Light Blue"
 msgstr ""
 
-#: src/lang.c:1154
+#: src/lang.c:1164
 msgid "Light Pink"
 msgstr ""
 
-#: src/lang.c:1155
+#: src/lang.c:1165
 msgid "Light Cyan"
 msgstr ""
 
-#: src/lang.c:1156
+#: src/lang.c:1166
 msgid "Light White"
 msgstr ""
 
-#: src/lang.c:1164 src/lang.c:1221 src/lang.c:1235
+#: src/lang.c:1174 src/lang.c:1231 src/lang.c:1245
 msgid "Nothing"
 msgstr ""
 
-#: src/lang.c:1165
+#: src/lang.c:1175
 msgid "Mark"
 msgstr ""
 
-#: src/lang.c:1166
+#: src/lang.c:1176
 msgid "Space"
 msgstr ""
 
-#: src/lang.c:1173
+#: src/lang.c:1183
 msgid "Normal"
 msgstr ""
 
-#: src/lang.c:1174
+#: src/lang.c:1184
 msgid "Best highlighting"
 msgstr ""
 
-#: src/lang.c:1175
+#: src/lang.c:1185
 msgid "Underline"
 msgstr ""
 
-#: src/lang.c:1176
+#: src/lang.c:1186
 msgid "Reverse video"
 msgstr ""
 
-#: src/lang.c:1177
+#: src/lang.c:1187
 msgid "Blinking"
 msgstr ""
 
-#: src/lang.c:1178
+#: src/lang.c:1188
 msgid "Half bright"
 msgstr ""
 
-#: src/lang.c:1179
+#: src/lang.c:1189
 msgid "Bold"
 msgstr ""
 
-#: src/lang.c:1184
+#: src/lang.c:1194
 msgid "none"
 msgstr ""
 
-#: src/lang.c:1185
+#: src/lang.c:1195
 msgid "commands"
 msgstr ""
 
-#: src/lang.c:1186
+#: src/lang.c:1196
 msgid "select"
 msgstr ""
 
-#: src/lang.c:1188
+#: src/lang.c:1198
 msgid "commands & quit"
 msgstr ""
 
-#: src/lang.c:1189
+#: src/lang.c:1199
 msgid "commands & select"
 msgstr ""
 
-#: src/lang.c:1190
+#: src/lang.c:1200
 msgid "quit & select"
 msgstr ""
 
-#: src/lang.c:1191
+#: src/lang.c:1201
 msgid "commands & quit & select"
 msgstr ""
 
-#: src/lang.c:1216
+#: src/lang.c:1226
 msgid "Shell archive"
 msgstr ""
 
-#: src/lang.c:1222
+#: src/lang.c:1232
 msgid "Subject: (descending)"
 msgstr ""
 
-#: src/lang.c:1223
+#: src/lang.c:1233
 msgid "Subject: (ascending)"
 msgstr ""
 
-#: src/lang.c:1224
+#: src/lang.c:1234
 msgid "From: (descending)"
 msgstr ""
 
-#: src/lang.c:1225
+#: src/lang.c:1235
 msgid "From: (ascending)"
 msgstr ""
 
-#: src/lang.c:1226
+#: src/lang.c:1236
 msgid "Date: (descending)"
 msgstr ""
 
-#: src/lang.c:1227
+#: src/lang.c:1237
 msgid "Date: (ascending)"
 msgstr ""
 
-#: src/lang.c:1228 src/lang.c:1236
+#: src/lang.c:1238 src/lang.c:1246
 msgid "Score (descending)"
 msgstr ""
 
-#: src/lang.c:1229 src/lang.c:1237
+#: src/lang.c:1239 src/lang.c:1247
 msgid "Score (ascending)"
 msgstr ""
 
-#: src/lang.c:1230
+#: src/lang.c:1240
 msgid "Lines: (descending)"
 msgstr ""
 
-#: src/lang.c:1231
+#: src/lang.c:1241
 msgid "Lines: (ascending)"
 msgstr ""
 
-#: src/lang.c:1242
+#: src/lang.c:1252
 msgid "Always Keep"
 msgstr ""
 
-#: src/lang.c:1243
+#: src/lang.c:1253
 msgid "Always Remove"
 msgstr ""
 
-#: src/lang.c:1244
+#: src/lang.c:1254
 msgid "Mark with D on selection screen"
 msgstr ""
 
-#: src/lang.c:1249
+#: src/lang.c:1259
 msgid "Kill only unread arts"
 msgstr ""
 
-#: src/lang.c:1250
+#: src/lang.c:1260
 msgid "Kill all arts & show with K"
 msgstr ""
 
 #. TODO: s/K/art_marked_killed/
-#: src/lang.c:1251
+#: src/lang.c:1261
 msgid "Kill all arts and never show"
 msgstr ""
 
-#: src/lang.c:1256
+#: src/lang.c:1266
 msgid "Nothing special"
 msgstr ""
 
-#: src/lang.c:1257
+#: src/lang.c:1267
 msgid "Compress quotes"
 msgstr ""
 
-#: src/lang.c:1258
+#: src/lang.c:1268
 msgid "Quote signatures"
 msgstr ""
 
-#: src/lang.c:1259
+#: src/lang.c:1269
 msgid "Compress quotes, quote sigs"
 msgstr ""
 
-#: src/lang.c:1260
+#: src/lang.c:1270
 msgid "Quote empty lines"
 msgstr ""
 
-#: src/lang.c:1261
+#: src/lang.c:1271
 msgid "Compress quotes, quote empty lines"
 msgstr ""
 
-#: src/lang.c:1262
+#: src/lang.c:1272
 msgid "Quote sigs & empty lines"
 msgstr ""
 
-#: src/lang.c:1263
+#: src/lang.c:1273
 msgid "Comp. q., quote sigs & empty lines"
 msgstr ""
 
-#: src/lang.c:1301
+#: src/lang.c:1311
 msgid "no"
 msgstr ""
 
-#: src/lang.c:1302
+#: src/lang.c:1312
 msgid "with headers"
 msgstr ""
 
-#: src/lang.c:1303
+#: src/lang.c:1313
 msgid "without headers"
 msgstr ""
 
-#: src/lang.c:1310 src/lang.c:1316
+#: src/lang.c:1320 src/lang.c:1326
 msgid "NFKC"
 msgstr ""
 
-#: src/lang.c:1311
+#: src/lang.c:1321
 msgid "NFKD"
 msgstr ""
 
-#: src/lang.c:1312
+#: src/lang.c:1322
 msgid "NFC"
 msgstr ""
 
-#: src/lang.c:1313
+#: src/lang.c:1323
 msgid "NFD"
 msgstr ""
 
-#: src/lang.c:1324
+#: src/lang.c:1334
 msgid "Display Options"
 msgstr ""
 
-#: src/lang.c:1330
+#: src/lang.c:1341
 msgid "Color Options"
 msgstr ""
 
-#: src/lang.c:1336
+#: src/lang.c:1348
 msgid "Article-Limiting Options"
 msgstr ""
 
-#: src/lang.c:1342
+#: src/lang.c:1354
 msgid "Posting/Mailing Options"
 msgstr ""
 
-#: src/lang.c:1348
+#: src/lang.c:1360
 msgid "Saving/Printing Options"
 msgstr ""
 
-#: src/lang.c:1354
+#: src/lang.c:1366
 msgid "Expert Options"
 msgstr ""
 
-#: src/lang.c:1360
+#: src/lang.c:1372
 msgid "Filtering Options"
 msgstr ""
 
-#: src/lang.c:1365 src/lang.c:1396 src/lang.c:1402 src/lang.c:1414
-#: src/lang.c:1464 src/lang.c:1470 src/lang.c:1480 src/lang.c:1500
-#: src/lang.c:1575 src/lang.c:1745 src/lang.c:1751 src/lang.c:1757
-#: src/lang.c:1763 src/lang.c:1775 src/lang.c:1782 src/lang.c:1836
-#: src/lang.c:1845 src/lang.c:1851 src/lang.c:1858 src/lang.c:1865
-#: src/lang.c:1872 src/lang.c:1879 src/lang.c:1886 src/lang.c:1893
-#: src/lang.c:1900 src/lang.c:1907 src/lang.c:1914 src/lang.c:1921
-#: src/lang.c:1928 src/lang.c:1935 src/lang.c:1942 src/lang.c:1949
-#: src/lang.c:1956 src/lang.c:1963 src/lang.c:1970 src/lang.c:1977
-#: src/lang.c:1984 src/lang.c:1991 src/lang.c:1998 src/lang.c:2005
-#: src/lang.c:2013 src/lang.c:2029 src/lang.c:2036 src/lang.c:2043
-#: src/lang.c:2050 src/lang.c:2056 src/lang.c:2062 src/lang.c:2079
-#: src/lang.c:2091 src/lang.c:2125 src/lang.c:2178 src/lang.c:2185
-#: src/lang.c:2191 src/lang.c:2216 src/lang.c:2233 src/lang.c:2286
-#: src/lang.c:2322 src/lang.c:2342 src/lang.c:2377 src/lang.c:2387
-#: src/lang.c:2412 src/lang.c:2428 src/lang.c:2447 src/lang.c:2460
+#: src/lang.c:1377 src/lang.c:1408 src/lang.c:1414 src/lang.c:1426
+#: src/lang.c:1476 src/lang.c:1482 src/lang.c:1492 src/lang.c:1512
+#: src/lang.c:1587 src/lang.c:1757 src/lang.c:1763 src/lang.c:1769
+#: src/lang.c:1775 src/lang.c:1787 src/lang.c:1794 src/lang.c:1848
+#: src/lang.c:1857 src/lang.c:1863 src/lang.c:1870 src/lang.c:1877
+#: src/lang.c:1884 src/lang.c:1891 src/lang.c:1898 src/lang.c:1905
+#: src/lang.c:1912 src/lang.c:1919 src/lang.c:1926 src/lang.c:1933
+#: src/lang.c:1940 src/lang.c:1947 src/lang.c:1954 src/lang.c:1961
+#: src/lang.c:1968 src/lang.c:1975 src/lang.c:1982 src/lang.c:1989
+#: src/lang.c:1996 src/lang.c:2003 src/lang.c:2010 src/lang.c:2017
+#: src/lang.c:2025 src/lang.c:2041 src/lang.c:2048 src/lang.c:2055
+#: src/lang.c:2062 src/lang.c:2068 src/lang.c:2074 src/lang.c:2091
+#: src/lang.c:2103 src/lang.c:2137 src/lang.c:2190 src/lang.c:2197
+#: src/lang.c:2203 src/lang.c:2228 src/lang.c:2245 src/lang.c:2298
+#: src/lang.c:2334 src/lang.c:2354 src/lang.c:2389 src/lang.c:2399
+#: src/lang.c:2424 src/lang.c:2440 src/lang.c:2459 src/lang.c:2472
 msgid "<SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1366
+#: src/lang.c:1378
 msgid "Show mini menu & posting etiquette"
 msgstr ""
 
-#: src/lang.c:1367
+#: src/lang.c:1379
 msgid ""
 "# If ON show a mini menu of useful commands at each level\n"
 "# and posting etiquette after composing an article\n"
 msgstr ""
 
-#: src/lang.c:1372
+#: src/lang.c:1384
 msgid "Show short description for each newsgroup. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1373
+#: src/lang.c:1385
 msgid "Show description of each newsgroup"
 msgstr ""
 
-#: src/lang.c:1374
+#: src/lang.c:1386
 msgid ""
 "# If ON show group description text after newsgroup name at\n"
 "# group selection level\n"
 msgstr ""
 
-#: src/lang.c:1379
+#: src/lang.c:1391
 msgid ""
 "Show Subject & From (author) fields in group menu. <SPACE> toggles & <CR> "
 "sets."
 msgstr ""
 
-#: src/lang.c:1380
+#: src/lang.c:1392
 msgid "In group menu, show author by"
 msgstr ""
 
-#: src/lang.c:1381
+#: src/lang.c:1393
 msgid ""
 "# Part of from field to display\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4232,31 +4245,31 @@ msgid ""
 "#   3 = both\n"
 msgstr ""
 
-#: src/lang.c:1390
+#: src/lang.c:1402
 msgid "Draw -> or highlighted bar for selection. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1391
+#: src/lang.c:1403
 msgid "Draw -> instead of highlighted bar"
 msgstr ""
 
-#: src/lang.c:1392
+#: src/lang.c:1404
 msgid "# If ON use -> otherwise highlighted bar for selection\n"
 msgstr ""
 
-#: src/lang.c:1397
+#: src/lang.c:1409
 msgid "Use inverse video for page headers"
 msgstr ""
 
-#: src/lang.c:1398
+#: src/lang.c:1410
 msgid "# If ON use inverse video for page headers at different levels\n"
 msgstr ""
 
-#: src/lang.c:1403
+#: src/lang.c:1415
 msgid "Thread articles by"
 msgstr ""
 
-#: src/lang.c:1404
+#: src/lang.c:1416
 msgid ""
 "# Thread articles by ...\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4267,11 +4280,11 @@ msgid ""
 "#   4 = Multipart Subject\n"
 msgstr ""
 
-#: src/lang.c:1415
+#: src/lang.c:1427
 msgid "Score of a thread"
 msgstr ""
 
-#: src/lang.c:1416
+#: src/lang.c:1428
 msgid ""
 "# Thread score\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4280,16 +4293,16 @@ msgid ""
 "#   2 = average\n"
 msgstr ""
 
-#: src/lang.c:1424
+#: src/lang.c:1436
 msgid ""
 "Sort articles by Subject, From, Date or Score. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1425
+#: src/lang.c:1437
 msgid "Sort articles by"
 msgstr ""
 
-#: src/lang.c:1426
+#: src/lang.c:1438
 msgid ""
 "# Sort articles by ...\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4306,15 +4319,15 @@ msgid ""
 "#  10 = Lines ascending\n"
 msgstr ""
 
-#: src/lang.c:1442
+#: src/lang.c:1454
 msgid "Sort threads by Nothing or Score. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1443
+#: src/lang.c:1455
 msgid "Sort threads by"
 msgstr ""
 
-#: src/lang.c:1444
+#: src/lang.c:1456
 msgid ""
 "# Sort thread by ...\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4323,44 +4336,44 @@ msgid ""
 "#   2 = Score ascending\n"
 msgstr ""
 
-#: src/lang.c:1452
+#: src/lang.c:1464
 msgid ""
 "Put cursor at first/last unread art in groups. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1453
+#: src/lang.c:1465
 msgid "Goto first unread article in group"
 msgstr ""
 
-#: src/lang.c:1454
+#: src/lang.c:1466
 msgid "# If ON put cursor at first unread art in group otherwise last art\n"
 msgstr ""
 
-#: src/lang.c:1458
+#: src/lang.c:1470
 msgid "Show all articles or only unread articles. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1459
+#: src/lang.c:1471
 msgid "Show only unread articles"
 msgstr ""
 
-#: src/lang.c:1460
+#: src/lang.c:1472
 msgid "# If ON show only new/unread articles otherwise show all.\n"
 msgstr ""
 
-#: src/lang.c:1465
+#: src/lang.c:1477
 msgid "Show only groups with unread arts"
 msgstr ""
 
-#: src/lang.c:1466
+#: src/lang.c:1478
 msgid "# If ON show only subscribed to groups that contain unread articles.\n"
 msgstr ""
 
-#: src/lang.c:1471
+#: src/lang.c:1483
 msgid "Filter which articles"
 msgstr ""
 
-#: src/lang.c:1472
+#: src/lang.c:1484
 msgid ""
 "# Filter which articles\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4369,203 +4382,203 @@ msgid ""
 "#   2 = kill all articles and never show them\n"
 msgstr ""
 
-#: src/lang.c:1481
+#: src/lang.c:1493
 msgid "Tab goes to next unread article"
 msgstr ""
 
-#: src/lang.c:1482
+#: src/lang.c:1494
 msgid ""
 "# If ON the TAB command will go to next unread article at article viewer "
 "level\n"
 msgstr ""
 
-#: src/lang.c:1486
+#: src/lang.c:1498
 msgid ""
 "Scrolling with <SPACE> past the end of an art. jumps to the next unread one."
 msgstr ""
 
-#: src/lang.c:1487
+#: src/lang.c:1499
 msgid "Space goes to next unread article"
 msgstr ""
 
-#: src/lang.c:1488
+#: src/lang.c:1500
 msgid ""
 "# If ON the SPACE command will go to next unread article at article viewer\n"
 "# level when the end of the article is reached (rn-style pager)\n"
 msgstr ""
 
-#: src/lang.c:1493
+#: src/lang.c:1505
 msgid ""
 "Scrolling with <PGDN>/<DOWN> past the end of an art. jumps to the unread one."
 msgstr ""
 
-#: src/lang.c:1494
+#: src/lang.c:1506
 msgid "PgDn goes to next unread article"
 msgstr ""
 
-#: src/lang.c:1495
+#: src/lang.c:1507
 msgid ""
 "# If ON the PGDN or DOWN command will go to next unread article when\n"
 "# pressed at end of message\n"
 msgstr ""
 
-#: src/lang.c:1501
+#: src/lang.c:1513
 msgid "List thread using right arrow key"
 msgstr ""
 
-#: src/lang.c:1502
+#: src/lang.c:1514
 msgid ""
 "# If ON automatically list thread when entering it using right arrow key.\n"
 msgstr ""
 
-#: src/lang.c:1506
+#: src/lang.c:1518
 msgid "Enter character to indicate deleted articles. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1507
+#: src/lang.c:1519
 msgid "Character to show deleted articles"
 msgstr ""
 
-#: src/lang.c:1508
+#: src/lang.c:1520
 msgid ""
 "# Character used to show that an art was deleted (default 'D')\n"
 "# _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1513
+#: src/lang.c:1525
 msgid ""
 "Enter character to indicate articles in a range. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1514
+#: src/lang.c:1526
 msgid "Character to show inrange articles"
 msgstr ""
 
-#: src/lang.c:1515
+#: src/lang.c:1527
 msgid ""
 "# Character used to show that an art is in a range (default '#')\n"
 "# _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1520
+#: src/lang.c:1532
 msgid ""
 "Enter character to indicate that article will return. <CR> sets, <ESC> "
 "cancels."
 msgstr ""
 
-#: src/lang.c:1521
+#: src/lang.c:1533
 msgid "Character to show returning arts"
 msgstr ""
 
-#: src/lang.c:1522
+#: src/lang.c:1534
 msgid ""
 "# Character used to show that an art will return (default '-')\n"
 "# _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1527
+#: src/lang.c:1539
 msgid ""
 "Enter character to indicate selected articles. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1528
+#: src/lang.c:1540
 msgid "Character to show selected articles"
 msgstr ""
 
-#: src/lang.c:1529
+#: src/lang.c:1541
 msgid ""
 "# Character used to show that an art was auto-selected (default '*')\n"
 "# _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1534
+#: src/lang.c:1546
 msgid "Enter character to indicate recent articles. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1535
+#: src/lang.c:1547
 msgid "Character to show recent articles"
 msgstr ""
 
-#: src/lang.c:1536
+#: src/lang.c:1548
 msgid ""
 "# Character used to show that an art is recent (default 'o')\n"
 "# _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1541
+#: src/lang.c:1553
 msgid "Enter character to indicate unread articles. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1542
+#: src/lang.c:1554
 msgid "Character to show unread articles"
 msgstr ""
 
-#: src/lang.c:1543
+#: src/lang.c:1555
 msgid ""
 "# Character used to show that an art is unread (default '+')\n"
 "# _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1548
+#: src/lang.c:1560
 msgid "Enter character to indicate read articles. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1549
+#: src/lang.c:1561
 msgid "Character to show read articles"
 msgstr ""
 
-#: src/lang.c:1550
+#: src/lang.c:1562
 msgid ""
 "# Character used to show that an art was read (default ' ')\n"
 "# _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1555
+#: src/lang.c:1567
 msgid "Enter character to indicate killed articles. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1556
+#: src/lang.c:1568
 msgid "Character to show killed articles"
 msgstr ""
 
-#: src/lang.c:1557
+#: src/lang.c:1569
 msgid ""
 "# Character used to show that an art was killed (default 'K')\n"
 "# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1562
+#: src/lang.c:1574
 msgid ""
 "Enter character to indicate read selected articles. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1563
+#: src/lang.c:1575
 msgid "Character to show readselected arts"
 msgstr ""
 
-#: src/lang.c:1564
+#: src/lang.c:1576
 msgid ""
 "# Character used to show that an art was selected before read (default ':')\n"
 "# kill_level must be set accordingly, _ is turned into ' '\n"
 msgstr ""
 
-#: src/lang.c:1569
+#: src/lang.c:1581
 msgid "Enter maximum length of newsgroup names displayed. <CR> sets."
 msgstr ""
 
-#: src/lang.c:1570
+#: src/lang.c:1582
 msgid "Max. length of group names shown"
 msgstr ""
 
-#: src/lang.c:1571
+#: src/lang.c:1583
 msgid "# Maximum length of the names of newsgroups displayed\n"
 msgstr ""
 
-#: src/lang.c:1576
+#: src/lang.c:1588
 msgid "Show lines/score in listings"
 msgstr ""
 
-#: src/lang.c:1577
+#: src/lang.c:1589
 msgid ""
 "# What informations should be displayed in article/thread listing\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4575,17 +4588,17 @@ msgid ""
 "#   3 = lines & score\n"
 msgstr ""
 
-#: src/lang.c:1586
+#: src/lang.c:1598
 msgid ""
 "0 = full page scrolling, -1 = show previous last line as first on next page, "
 "-2 = half page"
 msgstr ""
 
-#: src/lang.c:1587
+#: src/lang.c:1599
 msgid "Number of lines to scroll in pager"
 msgstr ""
 
-#: src/lang.c:1588
+#: src/lang.c:1600
 msgid ""
 "# Number of lines that cursor-up/down will scroll in article pager\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4596,28 +4609,28 @@ msgid ""
 "#   2 or greater = scroll by 2 or more lines (only in the pager)\n"
 msgstr ""
 
-#: src/lang.c:1598
+#: src/lang.c:1610
 msgid "Display signatures. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1599
+#: src/lang.c:1611
 msgid "Display signatures"
 msgstr ""
 
-#: src/lang.c:1600
+#: src/lang.c:1612
 msgid "# If OFF don't show signatures when displaying articles\n"
 msgstr ""
 
-#: src/lang.c:1604
+#: src/lang.c:1616
 msgid ""
 "Display uuencoded data as tagged attachments. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1605
+#: src/lang.c:1617
 msgid "Display uue data as an attachment"
 msgstr ""
 
-#: src/lang.c:1606
+#: src/lang.c:1618
 msgid ""
 "# Handling of uuencoded data in the pager\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4629,30 +4642,30 @@ msgid ""
 "#       be folded into a tag line.\n"
 msgstr ""
 
-#: src/lang.c:1616
+#: src/lang.c:1628
 msgid ""
 "Decode German style TeX umlaut codes to ISO. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1617
+#: src/lang.c:1629
 msgid "Display \"a as Umlaut-a"
 msgstr ""
 
-#: src/lang.c:1618
+#: src/lang.c:1630
 msgid ""
 "# If ON decode German style TeX umlaut codes to ISO and\n"
 "# show \"a as Umlaut-a, etc.\n"
 msgstr ""
 
-#: src/lang.c:1623 src/lang.c:1633
+#: src/lang.c:1635 src/lang.c:1645
 msgid "Space separated list of header fields"
 msgstr ""
 
-#: src/lang.c:1624
+#: src/lang.c:1636
 msgid "Display these header fields (or *)"
 msgstr ""
 
-#: src/lang.c:1625
+#: src/lang.c:1637
 msgid ""
 "# Which news headers you wish to see. If you want to see _all_ the headers,\n"
 "# place an '*' as this value. This is the only way a wildcard can be used.\n"
@@ -4662,11 +4675,11 @@ msgid ""
 "# spaces. Not defining anything turns off this option.\n"
 msgstr ""
 
-#: src/lang.c:1634
+#: src/lang.c:1646
 msgid "Do not display these header fields"
 msgstr ""
 
-#: src/lang.c:1635
+#: src/lang.c:1647
 msgid ""
 "# Same as 'news_headers_to_display' except it denotes the opposite.\n"
 "# An example of using both options might be if you thought X- headers were\n"
@@ -4678,163 +4691,163 @@ msgid ""
 "# Not defining anything turns off this option.\n"
 msgstr ""
 
-#: src/lang.c:1645
+#: src/lang.c:1657
 msgid ""
 "Do you want to enable automatic handling of multipart/alternative articles?"
 msgstr ""
 
-#: src/lang.c:1646
+#: src/lang.c:1658
 msgid "Skip multipart/alternative parts"
 msgstr ""
 
-#: src/lang.c:1647
+#: src/lang.c:1659
 msgid "# If ON strip multipart/alternative messages automatically\n"
 msgstr ""
 
-#: src/lang.c:1652
+#: src/lang.c:1664
 msgid "A regex used to decide which lines to show in col_quote."
 msgstr ""
 
-#: src/lang.c:1653
+#: src/lang.c:1665
 msgid "Regex used to show quoted lines"
 msgstr ""
 
-#: src/lang.c:1654
+#: src/lang.c:1666
 msgid ""
 "# A regular expression that tin will use to decide which lines are\n"
 "# quoted when viewing articles. Quoted lines are shown in col_quote.\n"
 "# If you leave this blank, tin will use a built in default.\n"
 msgstr ""
 
-#: src/lang.c:1660
+#: src/lang.c:1672
 msgid "A regex used to decide which lines to show in col_quote2."
 msgstr ""
 
-#: src/lang.c:1661
+#: src/lang.c:1673
 msgid "Regex used to show twice quoted l."
 msgstr ""
 
-#: src/lang.c:1662
+#: src/lang.c:1674
 msgid ""
 "# A regular expression that tin will use to decide which lines are\n"
 "# quoted twice. Twice quoted lines are shown in col_quote2.\n"
 "# If you leave this blank, tin will use a built in default.\n"
 msgstr ""
 
-#: src/lang.c:1668
+#: src/lang.c:1680
 msgid "A regex used to decide which lines to show in col_quote3."
 msgstr ""
 
-#: src/lang.c:1669
+#: src/lang.c:1681
 msgid "Regex used to show >= 3 times q.l."
 msgstr ""
 
-#: src/lang.c:1670
+#: src/lang.c:1682
 msgid ""
 "# A regular expression that tin will use to decide which lines are\n"
 "# quoted >=3 times. >=3 times quoted lines are shown in col_quote3.\n"
 "# If you leave this blank, tin will use a built in default.\n"
 msgstr ""
 
-#: src/lang.c:1677
+#: src/lang.c:1689
 msgid "A regex used to decide which words to show in col_markslashes."
 msgstr ""
 
-#: src/lang.c:1678
+#: src/lang.c:1690
 msgid "Regex used to highlight /slashes/"
 msgstr ""
 
-#: src/lang.c:1679
+#: src/lang.c:1691
 msgid ""
 "# A regular expression that tin will use to decide which words\n"
 "# bounded by '/' are to be shown in col_markslashes.\n"
 "# If you leave this blank, tin will use a built in default.\n"
 msgstr ""
 
-#: src/lang.c:1685
+#: src/lang.c:1697
 msgid "A regex used to decide which words to show in col_markstars."
 msgstr ""
 
-#: src/lang.c:1686
+#: src/lang.c:1698
 msgid "Regex used to highlight *stars*"
 msgstr ""
 
-#: src/lang.c:1687
+#: src/lang.c:1699
 msgid ""
 "# A regular expression that tin will use to decide which words\n"
 "# bounded by '*' are to be shown in col_markstars.\n"
 "# If you leave this blank, tin will use a built in default.\n"
 msgstr ""
 
-#: src/lang.c:1693
+#: src/lang.c:1705
 msgid "A regex used to decide which words to show in col_markstroke."
 msgstr ""
 
-#: src/lang.c:1694
+#: src/lang.c:1706
 msgid "Regex used to highlight -strokes-"
 msgstr ""
 
-#: src/lang.c:1695
+#: src/lang.c:1707
 msgid ""
 "# A regular expression that tin will use to decide which words\n"
 "# bounded by '-' are to be shown in col_markstroke.\n"
 "# If you leave this blank, tin will use a built in default.\n"
 msgstr ""
 
-#: src/lang.c:1701
+#: src/lang.c:1713
 msgid "A regex used to decide which words to show in col_markdash."
 msgstr ""
 
-#: src/lang.c:1702
+#: src/lang.c:1714
 msgid "Regex used to highlight _underline_"
 msgstr ""
 
-#: src/lang.c:1703
+#: src/lang.c:1715
 msgid ""
 "# A regular expression that tin will use to decide which words\n"
 "# bounded by '_' are to be shown in col_markdash.\n"
 "# If you leave this blank, tin will use a built in default.\n"
 msgstr ""
 
-#: src/lang.c:1709
+#: src/lang.c:1721
 msgid "A regex used to find Subject prefixes to remove.  Use '|' as separator."
 msgstr ""
 
-#: src/lang.c:1710
+#: src/lang.c:1722
 msgid "Regex with Subject prefixes"
 msgstr ""
 
-#: src/lang.c:1711
+#: src/lang.c:1723
 msgid ""
 "# A regular expression that tin will use to find Subject prefixes\n"
 "# which will be removed before showing the header.\n"
 msgstr ""
 
-#: src/lang.c:1716
+#: src/lang.c:1728
 msgid "A regex used to find Subject suffixes to remove.  Use '|' as separator."
 msgstr ""
 
-#: src/lang.c:1717
+#: src/lang.c:1729
 msgid "Regex with Subject suffixes"
 msgstr ""
 
-#: src/lang.c:1718
+#: src/lang.c:1730
 msgid ""
 "# A regular expression that tin will use to find Subject suffixes\n"
 "# which will be removed when replying or posting followup.\n"
 msgstr ""
 
-#: src/lang.c:1723
+#: src/lang.c:1735
 msgid ""
 "Enter name and options for external MIME viewer, --internal for built-in "
 "viewer"
 msgstr ""
 
-#: src/lang.c:1724
+#: src/lang.c:1736
 msgid "MIME binary content viewer"
 msgstr ""
 
-#: src/lang.c:1725
+#: src/lang.c:1737
 msgid ""
 "# If --internal automatically use the built in MIME viewer for non-text\n"
 "# parts of articles.\n"
@@ -4843,125 +4856,125 @@ msgid ""
 "# for no automatic viewing\n"
 msgstr ""
 
-#: src/lang.c:1732
+#: src/lang.c:1744
 msgid "Confirm before starting non-text viewing program"
 msgstr ""
 
-#: src/lang.c:1733
+#: src/lang.c:1745
 msgid "Ask before using MIME viewer"
 msgstr ""
 
-#: src/lang.c:1734
+#: src/lang.c:1746
 msgid ""
 "# If ON tin will ask before using metamail to display MIME messages\n"
 "# this only happens if metamail_prog is set to something\n"
 msgstr ""
 
-#: src/lang.c:1739
+#: src/lang.c:1751
 msgid "Ask to mark groups read when quitting. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:1740
+#: src/lang.c:1752
 msgid "Catchup read groups when quitting"
 msgstr ""
 
-#: src/lang.c:1741
+#: src/lang.c:1753
 msgid "# If ON ask user if read groups should all be marked read\n"
 msgstr ""
 
-#: src/lang.c:1746
+#: src/lang.c:1758
 msgid "Catchup group using left key"
 msgstr ""
 
-#: src/lang.c:1747
+#: src/lang.c:1759
 msgid "# If ON catchup group/thread when leaving with the left arrow key.\n"
 msgstr ""
 
-#: src/lang.c:1752
+#: src/lang.c:1764
 msgid "Catchup thread by using left key"
 msgstr ""
 
-#: src/lang.c:1758
+#: src/lang.c:1770
 msgid "Which actions require confirmation"
 msgstr ""
 
-#: src/lang.c:1759
+#: src/lang.c:1771
 msgid "# What should we ask confirmation for.\n"
 msgstr ""
 
-#: src/lang.c:1764
+#: src/lang.c:1776
 msgid "'Mark article read' ignores tags"
 msgstr ""
 
-#: src/lang.c:1765
+#: src/lang.c:1777
 msgid ""
 "# If ON the 'Mark article read' function marks only the current article.\n"
 msgstr ""
 
-#: src/lang.c:1769
+#: src/lang.c:1781
 msgid "Program to run to open URL's, <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:1770
+#: src/lang.c:1782
 msgid "Program that opens URL's"
 msgstr ""
 
-#: src/lang.c:1771
+#: src/lang.c:1783
 msgid "# The program used to open URL's. The actual URL will be appended\n"
 msgstr ""
 
-#: src/lang.c:1776
+#: src/lang.c:1788
 msgid "Use mouse in xterm"
 msgstr ""
 
-#: src/lang.c:1777
+#: src/lang.c:1789
 msgid "# If ON enable mouse key support on xterm terminals\n"
 msgstr ""
 
-#: src/lang.c:1783
+#: src/lang.c:1795
 msgid "Use scroll keys on keypad"
 msgstr ""
 
-#: src/lang.c:1784
+#: src/lang.c:1796
 msgid "# If ON enable scroll keys on terminals that support it\n"
 msgstr ""
 
-#: src/lang.c:1789
+#: src/lang.c:1801
 msgid "Enter maximum number of article to get. <CR> sets."
 msgstr ""
 
-#: src/lang.c:1790
+#: src/lang.c:1802
 msgid "Number of articles to get"
 msgstr ""
 
-#: src/lang.c:1791
+#: src/lang.c:1803
 msgid ""
 "# Number of articles to get (0=no limit), if negative sets maximum number\n"
 "# of already read articles to be read before first unread one\n"
 msgstr ""
 
-#: src/lang.c:1796
+#: src/lang.c:1808
 msgid "Enter number of days article is considered recent. <CR> sets."
 msgstr ""
 
-#: src/lang.c:1797
+#: src/lang.c:1809
 msgid "Article recentness time limit"
 msgstr ""
 
-#: src/lang.c:1798
+#: src/lang.c:1810
 msgid "# Number of days in which article is considered recent, (0=OFF)\n"
 msgstr ""
 
-#: src/lang.c:1802
+#: src/lang.c:1814
 msgid ""
 "WILDMAT for normal wildcards, REGEX for full regular expression matching."
 msgstr ""
 
-#: src/lang.c:1803
+#: src/lang.c:1815
 msgid "Wildcard matching"
 msgstr ""
 
-#: src/lang.c:1804
+#: src/lang.c:1816
 msgid ""
 "# Wildcard matching\n"
 "# Possible values are (the default is marked with *):\n"
@@ -4969,307 +4982,307 @@ msgid ""
 "#   1 = regex\n"
 msgstr ""
 
-#: src/lang.c:1811
+#: src/lang.c:1823
 msgid "Enter minimal score before an article is marked killed. <CR> sets."
 msgstr ""
 
-#: src/lang.c:1812
+#: src/lang.c:1824
 msgid "Score limit (kill)"
 msgstr ""
 
-#: src/lang.c:1813
+#: src/lang.c:1825
 msgid "# Score limit before an article is marked killed\n"
 msgstr ""
 
-#: src/lang.c:1817
+#: src/lang.c:1829
 msgid "Enter default score to kill articles. <CR> sets."
 msgstr ""
 
-#: src/lang.c:1818
+#: src/lang.c:1830
 msgid "Default score to kill articles"
 msgstr ""
 
-#: src/lang.c:1819
+#: src/lang.c:1831
 msgid "# Default score to kill articles\n"
 msgstr ""
 
-#: src/lang.c:1823
+#: src/lang.c:1835
 msgid "Enter minimal score before an article is marked hot. <CR> sets."
 msgstr ""
 
-#: src/lang.c:1824
+#: src/lang.c:1836
 msgid "Score limit (select)"
 msgstr ""
 
-#: src/lang.c:1825
+#: src/lang.c:1837
 msgid "# Score limit before an article is marked hot\n"
 msgstr ""
 
-#: src/lang.c:1829
+#: src/lang.c:1841
 msgid "Enter default score to select articles. <CR> sets."
 msgstr ""
 
-#: src/lang.c:1830
+#: src/lang.c:1842
 msgid "Default score to select articles"
 msgstr ""
 
-#: src/lang.c:1831
+#: src/lang.c:1843
 msgid "# Default score to select articles\n"
 msgstr ""
 
-#: src/lang.c:1837
+#: src/lang.c:1849
 msgid "Use slrnface to show ''X-Face:''s"
 msgstr ""
 
-#: src/lang.c:1838
+#: src/lang.c:1850
 msgid ""
 "# If ON using slrnface(1) to interpret the ''X-Face:'' header.\n"
 "# Only useful when running in an xterm.\n"
 msgstr ""
 
-#: src/lang.c:1846
+#: src/lang.c:1858
 msgid "Use ANSI color"
 msgstr ""
 
-#: src/lang.c:1847
+#: src/lang.c:1859
 msgid "# If ON using ANSI-color\n"
 msgstr ""
 
-#: src/lang.c:1852
+#: src/lang.c:1864
 msgid "Standard foreground color"
 msgstr ""
 
-#: src/lang.c:1853
+#: src/lang.c:1865
 msgid ""
 "# Standard foreground color\n"
 "# Default: -1 (default color)\n"
 msgstr ""
 
-#: src/lang.c:1859
+#: src/lang.c:1871
 msgid "Standard background color"
 msgstr ""
 
-#: src/lang.c:1860
+#: src/lang.c:1872
 msgid ""
 "# Standard background color\n"
 "# Default: -1 (default color)\n"
 msgstr ""
 
-#: src/lang.c:1866
+#: src/lang.c:1878
 msgid "Color for inverse text (background)"
 msgstr ""
 
-#: src/lang.c:1867
+#: src/lang.c:1879
 msgid ""
 "# Color of background for inverse text\n"
 "# Default: 4 (blue)\n"
 msgstr ""
 
-#: src/lang.c:1873
+#: src/lang.c:1885
 msgid "Color for inverse text (foreground)"
 msgstr ""
 
-#: src/lang.c:1874
+#: src/lang.c:1886
 msgid ""
 "# Color of foreground for inverse text\n"
 "# Default: 7 (white)\n"
 msgstr ""
 
-#: src/lang.c:1880
+#: src/lang.c:1892
 msgid "Color of text lines"
 msgstr ""
 
-#: src/lang.c:1881
+#: src/lang.c:1893
 msgid ""
 "# Color of text lines\n"
 "# Default: -1 (default color)\n"
 msgstr ""
 
-#: src/lang.c:1887
+#: src/lang.c:1899
 msgid "Color of mini help menu"
 msgstr ""
 
-#: src/lang.c:1888
+#: src/lang.c:1900
 msgid ""
 "# Color of mini help menu\n"
 "# Default: 3 (brown)\n"
 msgstr ""
 
-#: src/lang.c:1894
+#: src/lang.c:1906
 msgid "Color of help text"
 msgstr ""
 
-#: src/lang.c:1895
+#: src/lang.c:1907
 msgid ""
 "# Color of help pages\n"
 "# Default: -1 (default color)\n"
 msgstr ""
 
-#: src/lang.c:1901
+#: src/lang.c:1913
 msgid "Color of status messages"
 msgstr ""
 
-#: src/lang.c:1902
+#: src/lang.c:1914
 msgid ""
 "# Color of messages in last line\n"
 "# Default: 6 (cyan)\n"
 msgstr ""
 
-#: src/lang.c:1908
+#: src/lang.c:1920
 msgid "Color of quoted lines"
 msgstr ""
 
-#: src/lang.c:1909
+#: src/lang.c:1921
 msgid ""
 "# Color of quote-lines\n"
 "# Default: 2 (green)\n"
 msgstr ""
 
-#: src/lang.c:1915
+#: src/lang.c:1927
 msgid "Color of twice quoted line"
 msgstr ""
 
-#: src/lang.c:1916
+#: src/lang.c:1928
 msgid ""
 "# Color of twice quoted lines\n"
 "# Default: 3 (brown)\n"
 msgstr ""
 
-#: src/lang.c:1922
+#: src/lang.c:1934
 msgid "Color of =>3 times quoted line"
 msgstr ""
 
-#: src/lang.c:1923
+#: src/lang.c:1935
 msgid ""
 "# Color of >=3 times quoted lines\n"
 "# Default: 4 (blue)\n"
 msgstr ""
 
-#: src/lang.c:1929
+#: src/lang.c:1941
 msgid "Color of article header lines"
 msgstr ""
 
-#: src/lang.c:1930
+#: src/lang.c:1942
 msgid ""
 "# Color of header-lines\n"
 "# Default: 2 (green)\n"
 msgstr ""
 
-#: src/lang.c:1936
+#: src/lang.c:1948
 msgid "Color of actual news header fields"
 msgstr ""
 
-#: src/lang.c:1937
+#: src/lang.c:1949
 msgid ""
 "# Color of actual news header fields\n"
 "# Default: 9 (light red)\n"
 msgstr ""
 
-#: src/lang.c:1943
+#: src/lang.c:1955
 msgid "Color of article subject lines"
 msgstr ""
 
-#: src/lang.c:1944
+#: src/lang.c:1956
 msgid ""
 "# Color of article subject\n"
 "# Default: 6 (cyan)\n"
 msgstr ""
 
-#: src/lang.c:1950
+#: src/lang.c:1962
 msgid "Color of response counter"
 msgstr ""
 
-#: src/lang.c:1951
+#: src/lang.c:1963
 msgid ""
 "# Color of response counter\n"
 "# Default: 2 (green)\n"
 msgstr ""
 
-#: src/lang.c:1957
+#: src/lang.c:1969
 msgid "Color of sender (From:)"
 msgstr ""
 
-#: src/lang.c:1958
+#: src/lang.c:1970
 msgid ""
 "# Color of sender (From:)\n"
 "# Default: 2 (green)\n"
 msgstr ""
 
-#: src/lang.c:1964
+#: src/lang.c:1976
 msgid "Color of help/mail sign"
 msgstr ""
 
-#: src/lang.c:1965
+#: src/lang.c:1977
 msgid ""
 "# Color of Help/Mail-Sign\n"
 "# Default: 4 (blue)\n"
 msgstr ""
 
-#: src/lang.c:1971
+#: src/lang.c:1983
 msgid "Color of signatures"
 msgstr ""
 
-#: src/lang.c:1972
+#: src/lang.c:1984
 msgid ""
 "# Color of signature\n"
 "# Default: 4 (blue)\n"
 msgstr ""
 
-#: src/lang.c:1978
+#: src/lang.c:1990
 msgid "Color of highlighted URLs"
 msgstr ""
 
-#: src/lang.c:1979
+#: src/lang.c:1991
 msgid ""
 "# Color of highlighted URLs\n"
 "# Default: -1 (default color)\n"
 msgstr ""
 
-#: src/lang.c:1985
+#: src/lang.c:1997
 msgid "Color of highlighting with *stars*"
 msgstr ""
 
-#: src/lang.c:1986
+#: src/lang.c:1998
 msgid ""
 "# Color of word highlighting with *stars*\n"
 "# Default: 11 (yellow)\n"
 msgstr ""
 
-#: src/lang.c:1992
+#: src/lang.c:2004
 msgid "Color of highlighting with _dash_"
 msgstr ""
 
-#: src/lang.c:1993
+#: src/lang.c:2005
 msgid ""
 "# Color of word highlighting with _dash_\n"
 "# Default: 13 (light pink)\n"
 msgstr ""
 
-#: src/lang.c:1999
+#: src/lang.c:2011
 msgid "Color of highlighting with /slash/"
 msgstr ""
 
-#: src/lang.c:2000
+#: src/lang.c:2012
 msgid ""
 "# Color of word highlighting with /slash/\n"
 "# Default: 14 (light cyan)\n"
 msgstr ""
 
-#: src/lang.c:2006
+#: src/lang.c:2018
 msgid "Color of highlighting with -stroke-"
 msgstr ""
 
-#: src/lang.c:2007
+#: src/lang.c:2019
 msgid ""
 "# Color of word highlighting with -stroke-\n"
 "# Default: 12 (light blue)\n"
 msgstr ""
 
-#: src/lang.c:2014
+#: src/lang.c:2026
 msgid "Attr. of highlighting with *stars*"
 msgstr ""
 
-#: src/lang.c:2015
+#: src/lang.c:2027
 msgid ""
 "# Attributes of word highlighting on mono terminals\n"
 "# Possible values are:\n"
@@ -5285,57 +5298,57 @@ msgid ""
 "# Default: 6 (bold)\n"
 msgstr ""
 
-#: src/lang.c:2030
+#: src/lang.c:2042
 msgid "Attr. of highlighting with _dash_"
 msgstr ""
 
-#: src/lang.c:2031
+#: src/lang.c:2043
 msgid ""
 "# Attribute of word highlighting with _dash_\n"
 "# Default: 2 (best highlighting)\n"
 msgstr ""
 
-#: src/lang.c:2037
+#: src/lang.c:2049
 msgid "Attr. of highlighting with /slash/"
 msgstr ""
 
-#: src/lang.c:2038
+#: src/lang.c:2050
 msgid ""
 "# Attribute of word highlighting with /slash/\n"
 "# Default: 5 (half bright)\n"
 msgstr ""
 
-#: src/lang.c:2044
+#: src/lang.c:2056
 msgid "Attr. of highlighting with -stroke-"
 msgstr ""
 
-#: src/lang.c:2045
+#: src/lang.c:2057
 msgid ""
 "# Attribute of word highlighting with -stroke-\n"
 "# Default: 3 (reverse video)\n"
 msgstr ""
 
-#: src/lang.c:2051
+#: src/lang.c:2063
 msgid "URL highlighting in message body"
 msgstr ""
 
-#: src/lang.c:2052
+#: src/lang.c:2064
 msgid "# Enable URL highlighting?\n"
 msgstr ""
 
-#: src/lang.c:2057
+#: src/lang.c:2069
 msgid "Word highlighting in message body"
 msgstr ""
 
-#: src/lang.c:2058
+#: src/lang.c:2070
 msgid "# Enable word highlighting?\n"
 msgstr ""
 
-#: src/lang.c:2063
+#: src/lang.c:2075
 msgid "What to display instead of mark"
 msgstr ""
 
-#: src/lang.c:2064
+#: src/lang.c:2076
 msgid ""
 "# Should the leading and ending stars and dashes also be displayed,\n"
 "# even when they are highlighting marks?\n"
@@ -5345,56 +5358,56 @@ msgid ""
 "# * 2 = print a space instead\n"
 msgstr ""
 
-#: src/lang.c:2073
+#: src/lang.c:2085
 msgid "Enter column number to wrap article lines to in the pager. <CR> sets."
 msgstr ""
 
-#: src/lang.c:2074
+#: src/lang.c:2086
 msgid "Page line wrap column"
 msgstr ""
 
-#: src/lang.c:2075
+#: src/lang.c:2087
 msgid "# Wrap article lines at column\n"
 msgstr ""
 
-#: src/lang.c:2080
+#: src/lang.c:2092
 msgid "Wrap around threads on next unread"
 msgstr ""
 
-#: src/lang.c:2081
+#: src/lang.c:2093
 msgid "# If ON wrap around threads on searching next unread article\n"
 msgstr ""
 
-#: src/lang.c:2085
+#: src/lang.c:2097
 msgid "Enter default mail address (and fullname). <CR> sets."
 msgstr ""
 
-#: src/lang.c:2086
+#: src/lang.c:2098
 msgid "Mail address (and fullname)"
 msgstr ""
 
-#: src/lang.c:2087
+#: src/lang.c:2099
 msgid "# User's mail address (and fullname), if not username@host (fullname)\n"
 msgstr ""
 
-#: src/lang.c:2092
+#: src/lang.c:2104
 msgid "Show empty Followup-To in editor"
 msgstr ""
 
-#: src/lang.c:2093
+#: src/lang.c:2105
 msgid "# If ON show empty Followup-To header when editing an article\n"
 msgstr ""
 
-#: src/lang.c:2097
+#: src/lang.c:2109
 msgid ""
 "Enter path/! command/--none to create your default signature. <CR> sets."
 msgstr ""
 
-#: src/lang.c:2098
+#: src/lang.c:2110
 msgid "Create signature from path/command"
 msgstr ""
 
-#: src/lang.c:2099
+#: src/lang.c:2111
 msgid ""
 "# Signature path (random sigs)/file to be used when posting/replying\n"
 "# default_sigfile=file       appends file as signature\n"
@@ -5403,50 +5416,50 @@ msgid ""
 "# default_sigfile=--none     don't append a signature\n"
 msgstr ""
 
-#: src/lang.c:2106
+#: src/lang.c:2118
 msgid ""
 "Prepend signature with \"-- \" on own line. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2107
+#: src/lang.c:2119
 msgid "Prepend signature with \"-- \""
 msgstr ""
 
-#: src/lang.c:2108
+#: src/lang.c:2120
 msgid "# If ON prepend the signature with dashes '\\n-- \\n'\n"
 msgstr ""
 
-#: src/lang.c:2112
+#: src/lang.c:2124
 msgid "Add signature when reposting articles. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2113
+#: src/lang.c:2125
 msgid "Add signature when reposting"
 msgstr ""
 
-#: src/lang.c:2114
+#: src/lang.c:2126
 msgid "# If ON add signature to reposted articles\n"
 msgstr ""
 
-#: src/lang.c:2118
+#: src/lang.c:2130
 msgid "Enter quotation marks, %s or %S for author's initials."
 msgstr ""
 
-#: src/lang.c:2119
+#: src/lang.c:2131
 msgid "Characters used as quote-marks"
 msgstr ""
 
-#: src/lang.c:2120
+#: src/lang.c:2132
 msgid ""
 "# Characters used in quoting to followups and replies.\n"
 "# '_' is replaced by ' ', %%s, %%S are replaced by author's initials.\n"
 msgstr ""
 
-#: src/lang.c:2126
+#: src/lang.c:2138
 msgid "Quoting behavior"
 msgstr ""
 
-#: src/lang.c:2127
+#: src/lang.c:2139
 msgid ""
 "# How quoting should be handled when following up or replying.\n"
 "# Possible values are (the default is marked with *):\n"
@@ -5460,52 +5473,52 @@ msgid ""
 "#   7 = Compress quotes, quote signatures, quote empty lines\n"
 msgstr ""
 
-#: src/lang.c:2140 src/lang.c:2148 src/lang.c:2154
+#: src/lang.c:2152 src/lang.c:2160 src/lang.c:2166
 msgid ""
 "%A Addr %D Date %F Addr+Name %G Groupname %M Message-ID %N Name %C First Name"
 msgstr ""
 
-#: src/lang.c:2141
+#: src/lang.c:2153
 msgid "Quote line when following up"
 msgstr ""
 
-#: src/lang.c:2142
+#: src/lang.c:2154
 msgid ""
 "# Format of quote line when mailing/posting/following-up an article\n"
 "# %%A Address    %%D Date   %%F Addr+Name   %%G Groupname   %%M Message-ID\n"
 "# %%N Full Name  %%C First Name   %%I Initials\n"
 msgstr ""
 
-#: src/lang.c:2149
+#: src/lang.c:2161
 msgid "Quote line when cross-posting"
 msgstr ""
 
-#: src/lang.c:2155
+#: src/lang.c:2167
 msgid "Quote line when mailing"
 msgstr ""
 
-#: src/lang.c:2160
+#: src/lang.c:2172
 msgid "If ON, include User-Agent: header. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2161
+#: src/lang.c:2173
 msgid "Insert 'User-Agent:'-header"
 msgstr ""
 
-#: src/lang.c:2162
+#: src/lang.c:2174
 msgid "# If ON include advertising User-Agent: header\n"
 msgstr ""
 
-#: src/lang.c:2167
+#: src/lang.c:2179
 msgid ""
 "Enter charset name for MIME (e.g. US-ASCII, ISO-8859-1, EUC-KR), <CR> to set."
 msgstr ""
 
-#: src/lang.c:2168
+#: src/lang.c:2180
 msgid "MM_CHARSET"
 msgstr ""
 
-#: src/lang.c:2169
+#: src/lang.c:2181
 msgid ""
 "# Charset supported locally which is also used for MIME header and\n"
 "# Content-Type header.\n"
@@ -5515,27 +5528,27 @@ msgid ""
 "# mm_charset is considered not displayable and represented as '?'.\n"
 msgstr ""
 
-#: src/lang.c:2179
+#: src/lang.c:2191
 msgid "MM_NETWORK_CHARSET"
 msgstr ""
 
-#: src/lang.c:2180
+#: src/lang.c:2192
 msgid "# Charset used for MIME (Content-Type) header in postings.\n"
 msgstr ""
 
-#: src/lang.c:2186
+#: src/lang.c:2198
 msgid "Mailbox format"
 msgstr ""
 
-#: src/lang.c:2187
+#: src/lang.c:2199
 msgid "# Format of the mailbox.\n"
 msgstr ""
 
-#: src/lang.c:2192
+#: src/lang.c:2204
 msgid "MIME encoding in news messages"
 msgstr ""
 
-#: src/lang.c:2193
+#: src/lang.c:2205
 msgid ""
 "# MIME encoding (8bit, base64, quoted-printable, 7bit) of the body\n"
 "# for mails and posts, if necessary. QP is efficient for most European\n"
@@ -5544,15 +5557,15 @@ msgid ""
 "# Russian charsets with a lot of 8bit characters.\n"
 msgstr ""
 
-#: src/lang.c:2201 src/lang.c:2222
+#: src/lang.c:2213 src/lang.c:2234
 msgid "Don't change unless you know what you are doing. <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:2202
+#: src/lang.c:2214
 msgid "Use 8bit characters in news headers"
 msgstr ""
 
-#: src/lang.c:2203
+#: src/lang.c:2215
 msgid ""
 "# If ON, 8bit characters in news headers are NOT encoded.\n"
 "# default is OFF. Thus 8bit characters are encoded by default.\n"
@@ -5560,28 +5573,28 @@ msgid ""
 "# parameter unless post_mime_encoding is 8bit as well.\n"
 msgstr ""
 
-#: src/lang.c:2210
+#: src/lang.c:2222
 msgid ""
 "Auto-view post-processed files <SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:2211
+#: src/lang.c:2223
 msgid "View post-processed files"
 msgstr ""
 
-#: src/lang.c:2212
+#: src/lang.c:2224
 msgid "# If set, post processed files will be opened in a viewer\n"
 msgstr ""
 
-#: src/lang.c:2217
+#: src/lang.c:2229
 msgid "MIME encoding in mail messages"
 msgstr ""
 
-#: src/lang.c:2223
+#: src/lang.c:2235
 msgid "Use 8bit characters in mail headers"
 msgstr ""
 
-#: src/lang.c:2224
+#: src/lang.c:2236
 msgid ""
 "# If ON, 8bit characters in mail headers are NOT encoded.\n"
 "# default is OFF. Thus 8bit characters are encoded by default.\n"
@@ -5592,173 +5605,173 @@ msgid ""
 "# turn it ON unless you have some compelling reason.\n"
 msgstr ""
 
-#: src/lang.c:2234
+#: src/lang.c:2246
 msgid "Strip blanks from ends of lines"
 msgstr ""
 
-#: src/lang.c:2235
+#: src/lang.c:2247
 msgid ""
 "# If ON strip blanks from ends of lines for faster display on slow "
 "terminals.\n"
 msgstr ""
 
-#: src/lang.c:2240
+#: src/lang.c:2252
 msgid "If ON, use transliteration. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2241
+#: src/lang.c:2253
 msgid "Transliteration"
 msgstr ""
 
-#: src/lang.c:2242
+#: src/lang.c:2254
 msgid ""
 "# If ON, use //TRANSLIT extension. This means that when a character cannot\n"
 "# be represented in the in the target character set, it can be approximated\n"
 "# through one or several similarly looking characters.\n"
 msgstr ""
 
-#: src/lang.c:2249
+#: src/lang.c:2261
 msgid "Send you a carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2250
+#: src/lang.c:2262
 msgid "Send you a cc automatically"
 msgstr ""
 
-#: src/lang.c:2251
+#: src/lang.c:2263
 msgid ""
 "# If ON automatically put your name in the Cc: field when mailing an "
 "article\n"
 msgstr ""
 
-#: src/lang.c:2255
+#: src/lang.c:2267
 msgid ""
 "Send you a blind carbon copy automatically. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2256
+#: src/lang.c:2268
 msgid "Send you a blind cc automatically"
 msgstr ""
 
-#: src/lang.c:2257
+#: src/lang.c:2269
 msgid ""
 "# If ON automatically put your name in the Bcc: field when mailing an "
 "article\n"
 msgstr ""
 
-#: src/lang.c:2261
+#: src/lang.c:2273
 msgid "Enter address elements about which you want to be warned. <CR> sets."
 msgstr ""
 
-#: src/lang.c:2262
+#: src/lang.c:2274
 msgid "Spamtrap warning address parts"
 msgstr ""
 
-#: src/lang.c:2263
+#: src/lang.c:2275
 msgid ""
 "# A comma-delimited list of address-parts you want to be warned\n"
 "# about when trying to reply by email.\n"
 msgstr ""
 
-#: src/lang.c:2268
+#: src/lang.c:2280
 msgid "Enter default number of days a filter entry will be valid. <CR> sets."
 msgstr ""
 
-#: src/lang.c:2269
+#: src/lang.c:2281
 msgid "No. of days a filter entry is valid"
 msgstr ""
 
-#: src/lang.c:2270
+#: src/lang.c:2282
 msgid "# Number of days a short term filter will be active\n"
 msgstr ""
 
-#: src/lang.c:2274
+#: src/lang.c:2286
 msgid "Add posted articles to filter. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2275
+#: src/lang.c:2287
 msgid "Add posted articles to filter"
 msgstr ""
 
-#: src/lang.c:2276
+#: src/lang.c:2288
 msgid ""
 "# If ON add posted articles which start a new thread to filter for\n"
 "# highlighting follow-ups\n"
 msgstr ""
 
-#: src/lang.c:2280
+#: src/lang.c:2292
 msgid "The directory where articles/threads are to be saved in mailbox format."
 msgstr ""
 
-#: src/lang.c:2281
+#: src/lang.c:2293
 msgid "Mail directory"
 msgstr ""
 
-#: src/lang.c:2282
+#: src/lang.c:2294
 msgid "# (-m) directory where articles/threads are saved in mailbox format\n"
 msgstr ""
 
-#: src/lang.c:2287
+#: src/lang.c:2299
 msgid "Save articles in batch mode (-S)"
 msgstr ""
 
-#: src/lang.c:2288
+#: src/lang.c:2300
 msgid ""
 "# If ON articles/threads will be saved in batch mode when save -S\n"
 "# or mail (-M/-N) is specified on the command line\n"
 msgstr ""
 
-#: src/lang.c:2293
+#: src/lang.c:2305
 msgid "The directory where you want articles/threads saved."
 msgstr ""
 
-#: src/lang.c:2294
+#: src/lang.c:2306
 msgid "Directory to save arts/threads in"
 msgstr ""
 
-#: src/lang.c:2295
+#: src/lang.c:2307
 msgid "# Directory where articles/threads are saved\n"
 msgstr ""
 
-#: src/lang.c:2299
+#: src/lang.c:2311
 msgid ""
 "Auto save article/thread by Archive-name: header. <SPACE> toggles & <CR> "
 "sets."
 msgstr ""
 
-#: src/lang.c:2300
+#: src/lang.c:2312
 msgid "Use Archive-name: header for save"
 msgstr ""
 
-#: src/lang.c:2301
+#: src/lang.c:2313
 msgid ""
 "# If ON articles/threads with Archive-name: in mail header will\n"
 "# be automatically saved with the Archive-name & part/patch no.\n"
 msgstr ""
 
-#: src/lang.c:2306
+#: src/lang.c:2318
 msgid ""
 "Mark saved articles/threads as read. <SPACE> toggles, <CR> sets, <ESC> "
 "cancels."
 msgstr ""
 
-#: src/lang.c:2307
+#: src/lang.c:2319
 msgid "Mark saved articles/threads as read"
 msgstr ""
 
-#: src/lang.c:2308
+#: src/lang.c:2320
 msgid "# If ON mark articles that are saved as read\n"
 msgstr ""
 
-#: src/lang.c:2312
+#: src/lang.c:2324
 msgid "Do post processing (eg. extract attachments) for saved articles."
 msgstr ""
 
-#: src/lang.c:2313
+#: src/lang.c:2325
 msgid "Post process saved articles"
 msgstr ""
 
-#: src/lang.c:2314
+#: src/lang.c:2326
 msgid ""
 "# Perform post processing (saving binary attachments) from saved articles.\n"
 "# Possible values are (the default is marked with *):\n"
@@ -5767,106 +5780,106 @@ msgid ""
 "#   2 = yes\n"
 msgstr ""
 
-#: src/lang.c:2323
+#: src/lang.c:2335
 msgid "Process only unread articles"
 msgstr ""
 
-#: src/lang.c:2324
+#: src/lang.c:2336
 msgid ""
 "# If ON only save/print/pipe/mail unread articles (tagged articles "
 "excepted)\n"
 msgstr ""
 
-#: src/lang.c:2329
+#: src/lang.c:2341
 msgid "Print all or just part of header. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2330
+#: src/lang.c:2342
 msgid "Print all headers when printing"
 msgstr ""
 
-#: src/lang.c:2331
+#: src/lang.c:2343
 msgid ""
 "# If ON print all of article header otherwise just the important lines\n"
 msgstr ""
 
-#: src/lang.c:2335
+#: src/lang.c:2347
 msgid ""
 "The printer program with options that is to be used to print "
 "articles/threads."
 msgstr ""
 
-#: src/lang.c:2336
+#: src/lang.c:2348
 msgid "Printer program with options"
 msgstr ""
 
-#: src/lang.c:2337
+#: src/lang.c:2349
 msgid "# Print program with parameters used to print articles/threads\n"
 msgstr ""
 
-#: src/lang.c:2343
+#: src/lang.c:2355
 msgid "Force redraw after certain commands"
 msgstr ""
 
-#: src/lang.c:2344
+#: src/lang.c:2356
 msgid ""
 "# If ON a screen redraw will always be done after certain external commands\n"
 msgstr ""
 
-#: src/lang.c:2348
+#: src/lang.c:2360
 msgid ""
 "Start editor with line offset. <SPACE> toggles, <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:2349
+#: src/lang.c:2361
 msgid "Start editor with line offset"
 msgstr ""
 
-#: src/lang.c:2350
+#: src/lang.c:2362
 msgid ""
 "# If ON editor will be started with cursor offset into the file\n"
 "# otherwise the cursor will be positioned at the first line\n"
 msgstr ""
 
-#: src/lang.c:2355
+#: src/lang.c:2367
 msgid "Enter %E for editor, %F for filename, %N for line-number, <CR> to set."
 msgstr ""
 
-#: src/lang.c:2356
+#: src/lang.c:2368
 msgid "Invocation of your editor"
 msgstr ""
 
-#: src/lang.c:2357
+#: src/lang.c:2369
 msgid ""
 "# Format of editor line including parameters\n"
 "# %%E Editor  %%F Filename  %%N Linenumber\n"
 msgstr ""
 
-#: src/lang.c:2362
+#: src/lang.c:2374
 msgid ""
 "Enter name and options for external-inews, --internal for internal inews"
 msgstr ""
 
-#: src/lang.c:2363
+#: src/lang.c:2375
 msgid "External inews"
 msgstr ""
 
-#: src/lang.c:2364
+#: src/lang.c:2376
 msgid ""
 "# If --internal use the built in mini inews for posting via NNTP\n"
 "# otherwise use an external inews program\n"
 msgstr ""
 
-#: src/lang.c:2368
+#: src/lang.c:2380
 msgid ""
 "Enter %M for mailer, %S for subject, %T for to, %F for filename, <CR> to set."
 msgstr ""
 
-#: src/lang.c:2369
+#: src/lang.c:2381
 msgid "Invocation of your mail command"
 msgstr ""
 
-#: src/lang.c:2370
+#: src/lang.c:2382
 msgid ""
 "# Format of mailer line including parameters\n"
 "# %%M Mailer  %%S Subject  %%T To  %%F Filename\n"
@@ -5874,11 +5887,11 @@ msgid ""
 "# ie. elm interactive          :    elm -i %%F -s \"%%S\" \"%%T\"\n"
 msgstr ""
 
-#: src/lang.c:2378
+#: src/lang.c:2390
 msgid "Use interactive mail reader"
 msgstr ""
 
-#: src/lang.c:2379
+#: src/lang.c:2391
 msgid ""
 "# Interactive mailreader\n"
 "# Possible values are (the default is marked with *):\n"
@@ -5887,58 +5900,58 @@ msgid ""
 "#   2 = use interactive mailreader without headers in file\n"
 msgstr ""
 
-#: src/lang.c:2388
+#: src/lang.c:2400
 msgid "Remove ~/.article after posting"
 msgstr ""
 
-#: src/lang.c:2389
+#: src/lang.c:2401
 msgid "# If ON remove ~/.article after posting.\n"
 msgstr ""
 
-#: src/lang.c:2393
+#: src/lang.c:2405
 msgid "Filename for all posted articles, <CR> sets, no filename=do not save."
 msgstr ""
 
-#: src/lang.c:2394
+#: src/lang.c:2406
 msgid "Filename for posted articles"
 msgstr ""
 
-#: src/lang.c:2395
+#: src/lang.c:2407
 msgid ""
 "# Filename where to keep all postings (default posted)\n"
 "# If no filename is set then postings will not be saved\n"
 msgstr ""
 
-#: src/lang.c:2400
+#: src/lang.c:2412
 msgid ""
 "Keep all failed articles in ~/dead.articles. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2401
+#: src/lang.c:2413
 msgid "Keep failed arts in ~/dead.articles"
 msgstr ""
 
-#: src/lang.c:2402
+#: src/lang.c:2414
 msgid "# If ON keep all failed postings in ~/dead.articles\n"
 msgstr ""
 
-#: src/lang.c:2406
+#: src/lang.c:2418
 msgid "Do you want to strip unsubscribed groups from .newsrc"
 msgstr ""
 
-#: src/lang.c:2407
+#: src/lang.c:2419
 msgid "No unsubscribed groups in newsrc"
 msgstr ""
 
-#: src/lang.c:2408
+#: src/lang.c:2420
 msgid "# If ON strip unsubscribed groups from newsrc\n"
 msgstr ""
 
-#: src/lang.c:2413
+#: src/lang.c:2425
 msgid "Remove bogus groups from newsrc"
 msgstr ""
 
-#: src/lang.c:2414
+#: src/lang.c:2426
 msgid ""
 "# What to do with bogus groups in newsrc file\n"
 "# Possible values are (the default is marked with *):\n"
@@ -5947,58 +5960,58 @@ msgid ""
 "#   2 = highlight with D on selection screen\n"
 msgstr ""
 
-#: src/lang.c:2422
+#: src/lang.c:2434
 msgid "Enter number of seconds until active file will be reread. <CR> sets."
 msgstr ""
 
-#: src/lang.c:2423
+#: src/lang.c:2435
 msgid "Interval in secs to reread active"
 msgstr ""
 
-#: src/lang.c:2424
+#: src/lang.c:2436
 msgid ""
 "# Time interval in seconds between rereading the active file (0=never)\n"
 msgstr ""
 
-#: src/lang.c:2429
+#: src/lang.c:2441
 msgid "Reconnect to server automatically"
 msgstr ""
 
-#: src/lang.c:2430
+#: src/lang.c:2442
 msgid ""
 "# If ON automatically reconnect to NNTP server if the connection is broken\n"
 msgstr ""
 
-#: src/lang.c:2434
+#: src/lang.c:2446
 msgid ""
 "Create local copies of NNTP overview files. <SPACE> toggles & <CR> sets."
 msgstr ""
 
-#: src/lang.c:2435
+#: src/lang.c:2447
 msgid "Cache NNTP overview files locally"
 msgstr ""
 
-#: src/lang.c:2436
+#: src/lang.c:2448
 msgid "# If ON, create local copies of NNTP overview files.\n"
 msgstr ""
 
-#: src/lang.c:2440
+#: src/lang.c:2452
 msgid "Enter format string. <CR> sets, <ESC> cancels."
 msgstr ""
 
-#: src/lang.c:2441
+#: src/lang.c:2453
 msgid "Format string for display of dates"
 msgstr ""
 
-#: src/lang.c:2442
+#: src/lang.c:2454
 msgid "# Format string for date representation\n"
 msgstr ""
 
-#: src/lang.c:2448
+#: src/lang.c:2460
 msgid "Unicode normalization form"
 msgstr ""
 
-#: src/lang.c:2449
+#: src/lang.c:2461
 msgid ""
 "# Unicode normalization form\n"
 "# Possible values are (the default is marked with *):\n"
@@ -6009,20 +6022,20 @@ msgid ""
 "#   4 = NFD\n"
 msgstr ""
 
-#: src/lang.c:2461
+#: src/lang.c:2473
 msgid "Render BiDi"
 msgstr ""
 
-#: src/lang.c:2462
+#: src/lang.c:2474
 msgid "# If ON, bi-directional text is rendered by tin\n"
 msgstr ""
 
-#: src/misc.c:3713
+#: src/misc.c:3721
 #, c-format
 msgid "Version: %s %s release %s (\"%s\") %s %s\n"
 msgstr ""
 
-#: src/misc.c:3716
+#: src/misc.c:3724
 #, c-format
 msgid "Version: %s %s release %s (\"%s\")\n"
 msgstr ""
@@ -6031,23 +6044,23 @@ msgstr ""
 msgid "Unreachable?\n"
 msgstr ""
 
-#: src/nntplib.c:823
+#: src/nntplib.c:825
 #, c-format
 msgid ""
 "\n"
 "Server timed out, trying reconnect # %d\n"
 msgstr ""
 
-#: src/nntplib.c:841
+#: src/nntplib.c:843
 msgid "Rejoin current group\n"
 msgstr ""
 
-#: src/nntplib.c:848
+#: src/nntplib.c:850
 #, c-format
 msgid "Read (%s)\n"
 msgstr ""
 
-#: src/nntplib.c:850
+#: src/nntplib.c:852
 #, c-format
 msgid "Resend last command (%s)\n"
 msgstr ""
@@ -6057,7 +6070,7 @@ msgstr ""
 msgid "couldn't expand %s\n"
 msgstr ""
 
-#: src/post.c:1970
+#: src/post.c:1969
 #, c-format
 msgid "Posting: %.*s ..."
 msgstr ""
@@ -6098,19 +6111,19 @@ msgid ""
 "\n"
 msgstr ""
 
-#: src/save.c:974
+#: src/save.c:977
 msgid "bytes"
 msgstr ""
 
-#: src/select.c:375
+#: src/select.c:381
 msgid "unread"
 msgstr ""
 
-#: src/select.c:375
+#: src/select.c:381
 msgid "all"
 msgstr ""
 
-#: src/select.c:547 src/select.c:549
+#: src/select.c:551 src/select.c:553
 msgid " R"
 msgstr ""
 
Binary files tin-1.7.7/po/tr.gmo and tin-1.7.8/po/tr.gmo differ
diff -Nurp tin-1.7.7/po/tr.po tin-1.7.8/po/tr.po
--- tin-1.7.7/po/tr.po	Thu Jan  1 01:00:00 1970
+++ tin-1.7.8/po/tr.po	Mon Mar 21 11:43:11 2005
@@ -0,0 +1,7179 @@
+# Turkish translations for tin
+# Copyright (C) 2005 Free Software Foundation, Inc.
+# Þebnem Korkmaz <sebnem_k@hotmail.com>, 2005.
+# Ali Ibraimi <liloib@yahoo.com>, 2005.
+# Özge Sevinç <ozge_se@yahoo.com>, 2005.
+#
+msgid	""
+msgstr	"Project-Id-Version: tin 1.7.7\n"
+	"POT-Creation-Date: 2005-03-21 11:42+0100\n"
+	"PO-Revision-Date: 2005-03-06 09:25+0200\n"
+	"Last-Translator: Þebnem Korkmaz <sebnem_k@hotmail.com>\n"
+	"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
+	"MIME-Version: 1.0\n"
+	"Content-Type: text/plain; charset=ISO-8859-9\n"
+	"Content-Transfer-Encoding: 8bit\n"
+	"Report-Msgid-Bugs-To: \n"
+
+#: src/art.c:1455
+#, c-format
+msgid	"%d Bad overview record (%d fields) '%s'"
+msgstr	""
+
+#: src/attrib.c:604
+msgid	"# Do not edit this comment block\n"
+	"#\n"
+msgstr	"# Bu açýklama bloðunu düzenlemeyin\n"
+	"#\n"
+
+#: src/attrib.c:605
+msgid	"#  scope=STRING (ie. alt.*,!alt.bin*) [mandatory]\n"
+msgstr	"#  scope=DÝZGE (kapsam, örn. alt.*,!alt.bin*) [zorunlu]\n"
+
+#: src/attrib.c:606
+msgid	"#  maildir=STRING (ie. ~/Mail)\n"
+msgstr	"#  maildir=DÝZGE (posta dizini, örn. ~/Mail)\n"
+
+#: src/attrib.c:607
+msgid	"#  savedir=STRING (ie. ~user/News)\n"
+msgstr	"#  savedir=DÝZGE (saklama dizini, örn. ~user/News)\n"
+
+#: src/attrib.c:608
+msgid	"#  savefile=STRING (ie. =linux)\n"
+msgstr	"#  savefile=DÝZGE (saklama dosyasý, örn. =linux)\n"
+
+#: src/attrib.c:609
+msgid	"#  sigfile=STRING (ie. $var/sig)\n"
+msgstr	"#  sigfile=DÝZGE (imza dosyasý, örn. $var/sig)\n"
+
+#: src/attrib.c:610
+msgid	"#  organization=STRING (if beginning with '/' read from file)\n"
+msgstr	"#  organization=DÝZGE (kurum; eðer / ile baþlýyor ise, dosyadan okunur)\n"
+
+#: src/attrib.c:611
+msgid	"#  followup_to=STRING\n"
+msgstr	"#  followup_to=DÝZGE (cevap yönlendirmesi)\n"
+
+#: src/attrib.c:612
+msgid	"#  mailing_list=STRING (ie. majordomo@example.org)\n"
+msgstr	"#  mailing_list=DÝZGE (posta listesi, örn. majordomo@example.org)\n"
+
+#: src/attrib.c:613
+msgid	"#  x_headers=STRING (ie. ~/.tin/extra-headers)\n"
+msgstr	"#  x_headers=DÝZGE (ekstra baþlýk dosyasý, örn. ~/.tin/extra-headers)\n"
+
+#: src/attrib.c:614
+msgid	"#  x_body=STRING (ie. ~/.tin/extra-body-text)\n"
+msgstr	"#  x_body=DÝZGE (extra gövde dosyasý, örn. ~/.tin/extra-body-text)\n"
+
+#: src/attrib.c:615
+msgid	"#  from=STRING (just append wanted From:-line, don't use quotes)\n"
+msgstr	""
+
+#: src/attrib.c:616
+#, fuzzy
+msgid	"#  news_quote_format=STRING\n"
+msgstr	"#  news_quote_format=DÝZGE\n"
+
+#: src/attrib.c:617
+msgid	"#  quote_chars=STRING (%%s, %%S for initials)\n"
+msgstr	""
+
+#: src/attrib.c:618
+msgid	"#  mime_types_to_save=STRING (eg. image/*,!image/bmp)\n"
+msgstr	""
+
+#: src/attrib.c:620
+#, fuzzy
+msgid	"#  ispell=STRING\n"
+msgstr	"#  ispell=DÝZGE\n"
+
+#: src/attrib.c:622
+#, fuzzy
+msgid	"#  auto_select=ON/OFF\n"
+msgstr	"#  auto_select=ON/OFF\n"
+
+#: src/attrib.c:623
+#, fuzzy
+msgid	"#  auto_save=ON/OFF\n"
+msgstr	"#  auto_save=ON/OFF\n"
+
+#: src/attrib.c:624
+#, fuzzy
+msgid	"#  batch_save=ON/OFF\n"
+msgstr	"#  batch_save=ON/OFF\n"
+
+#: src/attrib.c:625
+#, fuzzy
+msgid	"#  delete_tmp_files=ON/OFF\n"
+msgstr	"#  delete_tmp_files=ON/OFF\n"
+
+#: src/attrib.c:626
+#, fuzzy
+msgid	"#  show_only_unread=ON/OFF\n"
+msgstr	"#  show_only_unread=ON/OFF\n"
+
+#: src/attrib.c:627
+#, fuzzy
+msgid	"#  thread_arts=NUM"
+msgstr	"#  thread_arts=NUM"
+
+#: src/attrib.c:634
+#, fuzzy
+msgid	"#  show_author=NUM\n"
+msgstr	"#  show_author=NUM\n"
+
+#: src/attrib.c:640
+#, fuzzy
+msgid	"#  show_info=NUM\n"
+msgstr	"#  show_info=NUM\n"
+
+#: src/attrib.c:646
+#, fuzzy
+msgid	"#  sort_art_type=NUM\n"
+msgstr	"#  sort_art_type=NUM\n"
+
+#: src/attrib.c:664
+#, fuzzy
+msgid	"#  sort_threads_type=NUM\n"
+msgstr	"#  sort_threads_type=NUM\n"
+
+#: src/attrib.c:669
+#, fuzzy
+msgid	"#  post_proc_type=NUM\n"
+msgstr	"#  post_proc_type=NUM\n"
+
+#: src/attrib.c:674
+msgid	"#  quick_kill_scope=STRING (ie. talk.*)\n"
+msgstr	""
+
+#: src/attrib.c:675
+#, fuzzy
+msgid	"#  quick_kill_expire=ON/OFF\n"
+msgstr	"#  quick_kill_expire=ON/OFF\n"
+
+#: src/attrib.c:676
+#, fuzzy
+msgid	"#  quick_kill_case=ON/OFF\n"
+msgstr	"#  quick_kill_case=ON/OFF\n"
+
+#: src/attrib.c:677
+#, fuzzy
+msgid	"#  quick_kill_header=NUM\n"
+msgstr	"#  quick_kill_header=NUM\n"
+
+#: src/attrib.c:678 src/attrib.c:685
+msgid	"#    0=subj (case sensitive) 1=subj (ignore case)\n"
+msgstr	""
+
+#: src/attrib.c:679 src/attrib.c:686
+msgid	"#    2=from (case sensitive) 3=from (ignore case)\n"
+msgstr	""
+
+#: src/attrib.c:680 src/attrib.c:687
+msgid	"#    4=msgid 5=lines\n"
+msgstr	""
+
+#: src/attrib.c:681
+#, fuzzy
+msgid	"#  quick_select_scope=STRING\n"
+msgstr	"#  quick_select_scope=DÝZGE\n"
+
+#: src/attrib.c:682
+#, fuzzy
+msgid	"#  quick_select_expire=ON/OFF\n"
+msgstr	"#  quick_select_expire=ON/OFF\n"
+
+#: src/attrib.c:683
+#, fuzzy
+msgid	"#  quick_select_case=ON/OFF\n"
+msgstr	"#  quick_select_case=ON/OFF\n"
+
+#: src/attrib.c:684
+#, fuzzy
+msgid	"#  quick_select_header=NUM\n"
+msgstr	"#  quick_select_header=NUM\n"
+
+#: src/attrib.c:688
+#, fuzzy
+msgid	"#  x_comment_to=ON/OFF\n"
+msgstr	"#  x_comment_to=ON/OFF\n"
+
+#: src/attrib.c:689
+msgid	"#  fcc=STRING (eg. =mailbox)\n"
+msgstr	""
+
+#: src/attrib.c:690
+#, fuzzy
+msgid	"#  tex2iso_conv=ON/OFF\n"
+msgstr	"#  tex2iso_conv=ON/OFF\n"
+
+#: src/attrib.c:691
+#, fuzzy
+msgid	"#  mime_forward=ON/OFF\n"
+msgstr	"#  mime_forward=ON/OFF\n"
+
+#: src/attrib.c:693
+msgid	"#  mm_network_charset=supported_charset"
+msgstr	""
+
+#: src/attrib.c:700
+msgid	"#  undeclared_charset=STRING (default is US-ASCII)\n"
+msgstr	""
+
+#: src/attrib.c:702
+#, fuzzy
+msgid	"#\n"
+	"# Note that it is best to put general (global scoping)\n"
+msgstr	"#\n"
+	"# Genel(küresel) kaplamýn en iyi olduðunu not ediniz.\n"
+
+#: src/attrib.c:703
+#, fuzzy
+msgid	"# entries first followed by group specific entries.\n"
+	"#\n"
+msgstr	"# Öncelikle özgül grup girdileri tarafýndan takip edilen girdiler\n"
+	"#\n"
+
+#: src/attrib.c:704
+msgid	"############################################################################\n"
+	"\n"
+msgstr	"############################################################################\n"
+	"\n"
+
+#: src/attrib.c:710
+msgid	"# include extra headers\n"
+msgstr	"# extra baþlýklarý içerir\n"
+
+#: src/attrib.c:718
+msgid	"# in *sources* set post process type to shar only\n"
+msgstr	""
+
+#: src/attrib.c:722
+#, fuzzy
+msgid	"# in *binaries* do full post processing, remove tmp files\n"
+msgstr	"# ikilik dosyalarda iþletim sonrasýný tam yapýn, tmp dosyalarýný kaldýrýn.\n"
+
+#: src/attrib.c:723
+msgid	"# and set Followup-To: poster\n"
+msgstr	""
+
+#: src/cook.c:497
+msgid	"(unknown)"
+msgstr	"(bilinmiyor)"
+
+#.
+#. * TODO: add to the right rule, give better explanation, -> lang.c
+#.
+#: src/filter.c:600 src/filter.c:608
+msgid	"Removed from the previous rule: "
+msgstr	"Önceki kuraldan kaldýrýldý: "
+
+#: src/lang.c:42
+#, fuzzy
+msgid	"1 Response"
+msgstr	"1 Yanýt"
+
+#: src/lang.c:46
+#, fuzzy, c-format
+msgid	"\n"
+	"%s contains no newsgroups. Exiting."
+msgstr	"\n"
+	"%s haber gruplarýný içermez. Çýkýyor."
+
+#: src/lang.c:47
+msgid	"all "
+msgstr	"tümü"
+
+#: src/lang.c:48
+msgid	"All groups"
+msgstr	"Tüm gruplar"
+
+#: src/lang.c:49
+#, fuzzy, c-format
+msgid	"File %s exists. %s=append, %s=overwrite, %s=quit: "
+msgstr	"%s dosyasý var. %s=ekle, %s=üstüne yazý., %s=çýk: "
+
+#: src/lang.c:50
+msgid	"Article cancelled (deleted)."
+msgstr	"Makale iptal edildi (silinmiþ)."
+
+#: src/lang.c:51
+msgid	"Article cannot be cancelled (deleted)."
+msgstr	"Makale iptal edilemedi (silinemedi)."
+
+#: src/lang.c:52
+msgid	"Article deleted."
+msgstr	"Makale silindi."
+
+#: src/lang.c:53
+#, fuzzy, c-format
+msgid	"\n"
+	"Your article:\n"
+	"  \"%s\"\n"
+	"will be posted to the following %s:\n"
+msgstr	"\n"
+	"Makaleniz:\n"
+	"  \"%s\"\n"
+	"buna gönderilecektir %s:\n"
+
+#: src/lang.c:54
+msgid	"Article not posted!"
+msgstr	"Makale gönderilmedi!"
+
+#: src/lang.c:55
+msgid	"Article not saved"
+msgstr	"Makale kaydedilmedi"
+
+#: src/lang.c:56
+#, fuzzy
+msgid	"Article Level Commands"
+msgstr	"Makale Düzey Komutlarý"
+
+#: src/lang.c:57
+msgid	"Article has no parent"
+msgstr	"Makalenin üstü yok"
+
+#: src/lang.c:58
+#, fuzzy
+msgid	"Parent article has been killed"
+msgstr	"Ana makale öldürüldü"
+
+#: src/lang.c:59
+#, fuzzy
+msgid	"Parent article is unavailable"
+msgstr	"Ana makale kullanlamýyor."
+
+#: src/lang.c:60
+#, c-format
+msgid	"Article posted: %s"
+msgstr	"Makale gönderildi: %s"
+
+#: src/lang.c:61
+#, c-format
+msgid	"Article rejected (saved to %s)"
+msgstr	"Makale reddedildi (%s dosyasýna kaydedildi)"
+
+#: src/lang.c:62
+#, fuzzy, c-format
+msgid	"%s=article, %s=thread, %s=hot, %s=pattern, %s=tagged articles, %s=quit: "
+msgstr	"%s=makale, %s=parçacýk, %s=otomatik, %s=kalýp, %s=imlenmiþ makaleler, %s=çýk: "
+
+#: src/lang.c:63
+#, fuzzy
+msgid	"Article unavailable"
+msgstr	"Makale kullanýlamýyor."
+
+#: src/lang.c:64
+msgid	"Article undeleted."
+msgstr	"Makale silinmeden geri alýndý."
+
+#: src/lang.c:66
+msgid	"articles"
+msgstr	"makaleler"
+
+#: src/lang.c:67
+#, fuzzy
+msgid	"This is a repost of the following article:"
+msgstr	"Bu dosyanýn yeniden gönderimi dieðildir:"
+
+#: src/lang.c:68
+msgid	"article"
+msgstr	"makale"
+
+#: src/lang.c:69
+msgid	"Article"
+msgstr	"Makale"
+
+#: src/lang.c:70
+#, c-format
+msgid	"-- %d %s mailed --"
+msgstr	"-- %d %s postalandý --"
+
+#: src/lang.c:71
+#, c-format
+msgid	" at %s"
+msgstr	" %s de"
+
+#: src/lang.c:72
+#, fuzzy, c-format
+msgid	"%*s[-- %s/%s, encoding %s%s%s, %d lines%s%s --]\n"
+msgstr	"%*s[-- %s/%s, kodluyor %s%s%s, %d satýr%s%s --]\n"
+
+#: src/lang.c:73
+#, fuzzy
+msgid	", charset: "
+msgstr	", charset: "
+
+#: src/lang.c:74
+#, c-format
+msgid	"%*s[-- Description: %s --]\n"
+msgstr	"%*s[-- Taným: %s --]\n"
+
+#: src/lang.c:75
+#, c-format
+msgid	"%d Authentication failed"
+msgstr	"%d Kimlik denetimi baþarýsýz"
+
+#: src/lang.c:76
+#, fuzzy
+msgid	"Server expects authentication.\n"
+msgstr	"Sunucu doðrulama bekliyor.\n"
+
+#: src/lang.c:77
+msgid	"    Please enter password: "
+msgstr	"    Lütfen parola girin: "
+
+#: src/lang.c:78
+msgid	"    Please enter username: "
+msgstr	"    Lütfen kullanýcý adý girin: "
+
+#: src/lang.c:79
+#, fuzzy, c-format
+msgid	"Author search backwards [%s]> "
+msgstr	"Yazar geriye doðru arýyor[%s]> "
+
+#: src/lang.c:80
+#, fuzzy, c-format
+msgid	"Author search forwards [%s]> "
+msgstr	"Yazar ileriye doðru arýyor [%s]> "
+
+#: src/lang.c:81
+#, fuzzy, c-format
+msgid	"Authorized for user: %s\n"
+msgstr	"Kullanýcý için yetkilendirlmiþ: %s\n"
+
+#: src/lang.c:82
+#, c-format
+msgid	"Authorization failed for user: %s\n"
+msgstr	"Kullanýcý için yetkilendirme baþarýsýz: %s\n"
+
+#: src/lang.c:83
+#, fuzzy, c-format
+msgid	"\n"
+	"Autosubscribed to %s"
+msgstr	"\n"
+	"Otomatik abone %s"
+
+#: src/lang.c:84
+#, fuzzy
+msgid	"Autosubscribing groups...\n"
+msgstr	"Gruplar otomatik abone ediliyor...\n"
+
+#: src/lang.c:85
+#, c-format
+msgid	"Autoselecting articles (use '%s' to see all unread) ..."
+msgstr	"Makaleler otomatik seçiliyor (tüm okunmamýþlarý görmek için '%s' kullanýn) ..."
+
+#: src/lang.c:87
+#, c-format
+msgid	"Active file corrupt - %s"
+msgstr	"Aktif dosya bozuk - %s"
+
+#: src/lang.c:88
+#, fuzzy, c-format
+msgid	"Article to be posted resulted in errors/warnings. %s=quit, %s=Menu, %s=edit: "
+msgstr	"Gönderilecek dosyada hatalar/uyarýlar çýktý. %s=çýk, %s=Menü, %s=düzelt: "
+
+#: src/lang.c:89
+#, c-format
+msgid	"Unrecognized attribute: %s"
+msgstr	"Tanýnmayan öznitelik: %s"
+
+#: src/lang.c:90
+#, c-format
+msgid	"Bad command. Type '%s' for help."
+msgstr	"Bozuk komut. Yardým için '%s' yazýn."
+
+#: src/lang.c:92
+#, fuzzy
+msgid	"Base article"
+msgstr	"Temel makale"
+
+#: src/lang.c:93
+#, fuzzy
+msgid	"Base article range"
+msgstr	"Temel makale aralýðý"
+
+#: src/lang.c:94
+#, fuzzy, c-format
+msgid	"%s: Updating of index files not supported\n"
+msgstr	"%s: Desteklenmeyen dizin dosyalarý güncelleniyor\n"
+
+#: src/lang.c:95
+msgid	"*** Beginning of article ***"
+msgstr	"*** Makalenin baþý ***"
+
+#: src/lang.c:97
+#, fuzzy
+msgid	"Cancel (delete) or supersede (overwrite) article [%%s]? (%s/%s/%s): "
+msgstr	"Dosyayý Ýptal et(sil) veya dosyanýn yerini al(üstüne yaz)[%%s]? (%s/%s/%s): "
+
+#: src/lang.c:98
+msgid	"Cancelling article..."
+msgstr	"Makale iptal ediliyor..."
+
+#: src/lang.c:100
+#, fuzzy, c-format
+msgid	"Cannot create %s"
+msgstr	"Yaratýlmaýyor %s"
+
+#: src/lang.c:101
+#, fuzzy, c-format
+msgid	"Can't find base article %d"
+msgstr	"Temel makale bulunamýyor %d"
+
+#: src/lang.c:102
+#, fuzzy, c-format
+msgid	"Can't open %s"
+msgstr	"Açýlamýyor %s"
+
+#: src/lang.c:103
+#, fuzzy, c-format
+msgid	"Couldn't open %s for saving"
+msgstr	"Kaydetmek için %s açýlmadý"
+
+#: src/lang.c:104
+msgid	"*** Posting not allowed ***"
+msgstr	"*** Gönderim izni yok ***"
+
+#: src/lang.c:105
+#, c-format
+msgid	"Posting is not allowed to %s"
+msgstr	"%s için gönderim izni yok"
+
+#: src/lang.c:106
+#, fuzzy, c-format
+msgid	"Can't retrieve %s"
+msgstr	"Alýnamýyor %s"
+
+#: src/lang.c:107
+#, c-format
+msgid	"%s is a directory"
+msgstr	"%s bir dizindir"
+
+#: src/lang.c:108
+#, fuzzy
+msgid	"Catchup"
+msgstr	"Catchup"
+
+#: src/lang.c:109
+#, fuzzy, c-format
+msgid	"Catchup %s..."
+msgstr	"Catchup %s..."
+
+#: src/lang.c:110
+msgid	"Catchup all groups entered during this session?"
+msgstr	""
+
+#: src/lang.c:111
+#, fuzzy
+msgid	"You have tagged articles in this group - catchup anyway?"
+msgstr	"Bu makalede imlenmiþ makaleler var - catchup anyway?"
+
+#: src/lang.c:112
+#, c-format
+msgid	"%s %d %s in %lu seconds\n"
+msgstr	"%4$lu saniyede %1$s %2$d %3$s\n"
+
+#: src/lang.c:113
+#, fuzzy
+msgid	"Caughtup"
+msgstr	"Caughtup"
+
+#: src/lang.c:114
+#, fuzzy
+msgid	"Check Prepared Article"
+msgstr	"Hazýr Makaleyi Denetle"
+
+#: src/lang.c:115
+#, fuzzy
+msgid	"Checking for new groups... "
+msgstr	"Yeni gruplar denetleniyor... "
+
+#: src/lang.c:116
+#, fuzzy
+msgid	"Checking for news..."
+msgstr	"Haberler denetleniyor..."
+
+#: src/lang.c:117
+#, fuzzy, c-format
+msgid	"Post-process %s=no, %s=yes, %s=shar, %s=quit: "
+msgstr	"Son-iþlem %s=hayýr, %s=evet, %s=ortak, %s=çýk: "
+
+#: src/lang.c:119
+#, fuzzy
+msgid	"ANSI color disabled"
+msgstr	"ANSI renk geçersiz"
+
+#: src/lang.c:120
+#, fuzzy
+msgid	"ANSI color enabled"
+msgstr	"ANSI renk geçerli"
+
+#: src/lang.c:122
+#, c-format
+msgid	"Command failed: %s"
+msgstr	"Komut baþarýsýz: %s"
+
+#: src/lang.c:123
+msgid	"Mark not selected articles read?"
+msgstr	""
+
+#: src/lang.c:124
+#, fuzzy, c-format
+msgid	"Connecting to %s..."
+msgstr	"Baðlanýyor %s..."
+
+#: src/lang.c:125
+msgid	"<CR>"
+msgstr	"<CR>"
+
+#: src/lang.c:126
+#, fuzzy
+msgid	"Creating active file for saved groups...\n"
+msgstr	"Kaydedilen kümeler için aktif dosya oluþturuyor...\n"
+
+#: src/lang.c:127
+#, fuzzy
+msgid	"Creating newsrc file...\n"
+msgstr	"Newsrc dosyasý oluþturuluyor...\n"
+
+#: src/lang.c:129 src/lang.c:1150
+msgid	"Default"
+msgstr	"Öntanýmlý"
+
+#: src/lang.c:130
+#, fuzzy
+msgid	"Delete saved files that have been post processed?"
+msgstr	"Son iþlenen kaydedilmiþ dosyalarý sil?"
+
+#: src/lang.c:131
+msgid	"Deleting temporary files..."
+msgstr	"Geçici dosyalar siliniyor..."
+
+#: src/lang.c:133
+msgid	"*** End of article ***"
+msgstr	"*** Makalenin sonu ***"
+
+#: src/lang.c:134
+msgid	"*** End of articles ***"
+msgstr	"*** Makalelerin sonu ***"
+
+#: src/lang.c:135
+#, fuzzy
+msgid	"*** End of groups ***"
+msgstr	"*** Kümelerin sonu ***"
+
+#: src/lang.c:136
+#, fuzzy
+msgid	"*** End of thread ***"
+msgstr	"*** Parçacýklarýn sonu ***"
+
+#: src/lang.c:137
+#, fuzzy
+msgid	"Enter limit of articles to get> "
+msgstr	"Alýnacak makalelerin limitini girin> "
+
+#: src/lang.c:138
+#, fuzzy
+msgid	"Enter Message-ID to go to> "
+msgstr	"Gitmek için kimlik mesajýný girin> "
+
+#: src/lang.c:139
+#, fuzzy
+msgid	" and enter next unread thread"
+msgstr	" ve sonraki okuma parçacýðýný yazýn"
+
+#: src/lang.c:140
+#, fuzzy
+msgid	" and enter next unread group"
+msgstr	" ve sonraki okuma kümesini yazýn"
+
+#: src/lang.c:141
+#, fuzzy
+msgid	"Enter option number> "
+msgstr	"Seçenek numarasýný yazýn> "
+
+#: src/lang.c:142
+#, fuzzy, c-format
+msgid	"Enter range [%s]> "
+msgstr	"Aralýðý yazýn [%s]> "
+
+#: src/lang.c:143
+#, fuzzy
+msgid	"\n"
+	"Warning: Approved: header used.\n"
+msgstr	"\n"
+	"Uyarý: Onaylandý: baþlýk kullanýldý.\n"
+
+#: src/lang.c:145
+#, fuzzy
+msgid	"\n"
+	"Error: Bad address in Approved: header.\n"
+msgstr	"\n"
+	"Hata: Onaylananda bozuk adres: baþlýk.\n"
+
+#: src/lang.c:146
+#, fuzzy
+msgid	"\n"
+	"Error: Bad address in From: header.\n"
+msgstr	"\n"
+	"Hata: Gönderende bozuk adres: baþlýk.\n"
+
+#: src/lang.c:147
+#, fuzzy
+msgid	"\n"
+	"Error: Bad address in Reply-To: header.\n"
+msgstr	"\n"
+	"Hata: Yanýtta bozuk adres: baþlýk\n"
+
+#: src/lang.c:148
+#, fuzzy
+msgid	"\n"
+	"Error: Bad FQDN in Message-ID: header.\n"
+msgstr	"\n"
+	"Hata: Kimilk mesajýnda bozuk FQDN: baþlýk.\n"
+
+#: src/lang.c:149
+#, fuzzy, c-format
+msgid	"Can't unlock %s"
+msgstr	"Açýlamýyor %s"
+
+#: src/lang.c:151
+#, fuzzy, c-format
+msgid	"Corrupted file %s"
+msgstr	"Virüslü dosya %s"
+
+#: src/lang.c:152
+#, fuzzy, c-format
+msgid	"Couldn't dotlock %s - article not appended!"
+msgstr	"Açýlamadý %s - makale eklenmedi!"
+
+#: src/lang.c:153
+#, fuzzy, c-format
+msgid	"Couldn't lock %s - article not appended!"
+msgstr	"Kapatýlamadý %s - makale eklenmedi!"
+
+#: src/lang.c:155
+msgid	"Internal error in GNKSA routine - send bug report.\n"
+msgstr	"GNKSA yordamýnda iç hata - hata raporu gönder.\n"
+
+#: src/lang.c:156
+#, fuzzy
+msgid	"Left angle bracket missing in route address.\n"
+msgstr	"Yordam adresinde sol açýlý ayraç eksik.\n"
+
+#: src/lang.c:157
+msgid	"Left parenthesis missing in old-style address.\n"
+msgstr	"Eski-biçemli adreste sol ayraç eksik.\n"
+
+#: src/lang.c:158
+msgid	"Right parenthesis missing in old-style address.\n"
+msgstr	"Eski-biçemli adreste sað ayraç eksik.\n"
+
+#: src/lang.c:159
+msgid	"At-sign missing in mail address.\n"
+msgstr	"Posta adresinde @ iþareti eksik.\n"
+
+#: src/lang.c:160
+#, fuzzy
+msgid	"Single component FQDN is not allowed. Add your domain.\n"
+msgstr	"FQDN tekli bileþenine izin verilmedi. Taným kümesi ekleyin.\n"
+
+#: src/lang.c:161
+#, fuzzy
+msgid	"Invalid domain. Send bug report if your top level domain really exists.\n"
+	"Use .invalid as top level domain for munged addresses.\n"
+msgstr	"Geçersiz etki alaný. Üst düzey etki alaný varsa hata raporu gönderin.\n"
+	"Kullan . munged adresler için geçersiz üst düzey etki alaný.\n"
+
+#: src/lang.c:162
+#, fuzzy
+msgid	"Illegal domain. Send bug report if your top level domain really exists.\n"
+	"Use .invalid as top level domain for munged addresses.\n"
+msgstr	"Kuraldýþý etki alaný. Üst düzey etki alaný varsa hata raporu gönderin.\n"
+	"Kuulan . munged adresler için geçersiz üst düzey etki alaný.\n"
+
+#: src/lang.c:163
+#, fuzzy
+msgid	"Unknown domain. Send bug report if your top level domain really exists.\n"
+	"Use .invalid as top level domain for munged addresses.\n"
+msgstr	"Bilinmeyen etki alaný. Üst düzey etki alalný varsa hata raporu gönderin.\n"
+	"Kullan. munged adresler geçersiz üst düzey etki alaný.\n"
+
+#: src/lang.c:164
+msgid	"Illegal character in FQDN.\n"
+msgstr	"FQDN'de kuraldýþý karakter.\n"
+
+#: src/lang.c:165
+#, fuzzy
+msgid	"Zero length FQDN component not allowed.\n"
+msgstr	"Sýfýr unzunluklu FQDN bileþenine izin verilmedi.\n"
+
+#: src/lang.c:166
+#, fuzzy
+msgid	"FQDN component exceeds maximum allowed length (63 chars).\n"
+msgstr	"FQDN bileþeni izin verilen maximum uzunluðu aþýyor.(63 kar.).\n"
+
+#: src/lang.c:167
+#, fuzzy
+msgid	"FQDN component may not start or end with hyphen.\n"
+msgstr	"FQDN bileþeni tire ile baþlamayabilir veya bitmeyebilir.\n"
+
+#: src/lang.c:168
+#, fuzzy
+msgid	"FQDN component may not start with digit.\n"
+msgstr	"FQDN bileþeni basamak ile baþlamayabilir.\n"
+
+#: src/lang.c:169
+#, fuzzy
+msgid	"Domain literal has impossible numeric value.\n"
+msgstr	"Deðiþmez etki alaný imkansýz sayýsal deðere sahip.\n"
+
+#: src/lang.c:170
+#, fuzzy
+msgid	"Domain literal is for private use only and not allowed for global use.\n"
+msgstr	"Deðiþmez etki alaný sadece özel kullaným içindir ve küresel kullanýma izin "
+	"verilmez.\n"
+
+#: src/lang.c:171
+#, fuzzy
+msgid	"Right bracket missing in domain literal.\n"
+msgstr	"Deðiþmez etki alanýnda sað köþeli ayraç eksik.\n"
+
+#: src/lang.c:172
+msgid	"Missing localpart of mail address.\n"
+msgstr	"Posta adresinin yerel kýsmý eksik.\n"
+
+#: src/lang.c:173
+msgid	"Illegal character in localpart of mail address.\n"
+msgstr	"Posta adresinin yerel kýsmýnda kuraldýþý karakter.\n"
+
+#: src/lang.c:174
+#, fuzzy
+msgid	"Zero length localpart component not allowed.\n"
+msgstr	"Sýfýr uzunluklu yerel kýsým bileþenine izin verilmedi.\n"
+
+#: src/lang.c:175
+#, fuzzy
+msgid	"Illegal character in realname.\n"
+	"Unquoted words may not contain '!()<>@,;:\\.[]' in route addresses.\n"
+msgstr	"Gerçek isimde kuraldýþý karakter.\n"
+	"Ýmlenmemiþ sözcükler yordam adreslerinde '!()<>@,;:\\.[]' içermeyebilir.\n"
+
+#: src/lang.c:176
+#, fuzzy
+msgid	"Illegal character in realname.\n"
+	"Quoted words may not contain '()<>\\'.\n"
+msgstr	"Gerçek isimde kuraldýþý karakter.\n"
+	"Ýmlenmil sözcükler '()<>\\' içermeyebilir.\n"
+
+#: src/lang.c:177
+#, fuzzy
+msgid	"Illegal character in realname.\n"
+	"Encoded words may not contain '!()<>@,;:\"\\.[]/=' in parameter.\n"
+msgstr	"Gerçek isimde kuraldýþý karakter.\n"
+	"Kodlanmýþ sözcükler parametrelerde '!()<>@,;:\"\\.[]/= içermeyebilir.\n"
+
+#: src/lang.c:178
+#, fuzzy
+msgid	"Bad syntax in encoded word used in realname.\n"
+msgstr	"Gerçek isimde kullanýlan kodlanmýþ sözkükte bozuk sözdizimi.\n"
+
+#: src/lang.c:179
+#, fuzzy
+msgid	"Illegal character in realname.\n"
+	"Unquoted words may not contain '()<>\\' in old-style addresses.\n"
+msgstr	"Gerçek isimde kuraldýþý karakter.\n"
+	"Ýmlenmemiþ sözcükler eski-biçemli adreslerde '()<>\\' içermeyebilir.\n"
+
+#: src/lang.c:180
+#, fuzzy
+msgid	"Illegal character in realname.\n"
+	"Control characters and unencoded 8bit characters > 127 are not allowed.\n"
+msgstr	"Gerçek isimde kuraldýþý karakter. Denetim karakterlerine ve kodlanmamýþ 8bit "
+	"karakterlerine > 127 izin verilmedi.\n"
+
+#: src/lang.c:181
+#, fuzzy
+msgid	"\n"
+	"Error: No blank line found after header.\n"
+msgstr	"\n"
+	"Hata: Baþlýktan sonra boþ satýr bulunamadý.\n"
+
+#. TODO: fixme, US-ASCII is not the only 7bit charset we know about
+#: src/lang.c:183
+#, fuzzy
+msgid	"\n"
+	"Error: Posting contains non-ASCII characters but MM_CHARSET is set to\n"
+	"       US-ASCII  - please change this setting to a suitable value for\n"
+	"       your language  using the  M)enu of configurable  options or by\n"
+	"       editing tinrc.\n"
+msgstr	"\n"
+	"Hata: Gönderim ASCII olmayan karakterler içeriyor ama MM_CHARSET ayarlandý.\n"
+	" US-ASCII - lütfen bu ayarlarý uygun deðerlere dönüþtürün\n"
+	" diliniz için yapýlandýrabilen seçenekler M)enüsünü kullanarak ya da\n"
+	" tinric düzenleyerek.\n"
+
+#: src/lang.c:188
+#, fuzzy
+msgid	"\n"
+	"Error: Posting contains  non-ASCII characters  but the  MIME encoding\n"
+	"       for news  messages  is set  to \"7bit\"  -  please change this\n"
+	"       setting to \"8bit\" or \"quoted-printable\" depending  on what\n"
+	"       is more common  in your part  of the world.  This can  be done\n"
+	"       using the M)enu of configurable options or by editing tinrc.\n"
+msgstr	"\n"
+	"Hata: Gönderim ASCIII olmayan karakterler içeriyor ama MIME kodlanýyor\n"
+	" haber iletileri için  \"7bit\" ayarlandý - lütfen deðiþtirin\n"
+	" ayarlarý \"8bit\" ya da  \"quoted-printable\" baðlý olarak\n"
+	" yaþadýðýnýz bölgede daha yaygýn olana. Bu yapýlabilir\n"
+	" yapýlandýrabilen seçenekler  M)enüsü kullanýlarak veya tinrc düzenlenerek.\n"
+
+#: src/lang.c:194
+#, fuzzy
+msgid	"\n"
+	"Error: Article starts with blank line instead of header\n"
+msgstr	"\n"
+	"Hata: Makale baþlýk yerine boþ satýrla baþlýyor\n"
+
+#: src/lang.c:195
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: Header on line %d does not have a colon after the header name:\n"
+	"%s\n"
+msgstr	"\n"
+	"Hata: Satýrdaki baþlýkta %d baþlýk isminden sonra iki nokta yok:\n"
+	"%s\n"
+
+#: src/lang.c:196
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: The \"%s:\" line is empty.\n"
+msgstr	"\n"
+	"Hata: \"%s:\"satýrý boþ.\n"
+
+#: src/lang.c:197
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: The \"%s:\" line is missing from the article header.\n"
+msgstr	"\n"
+	"Hata: Makale baþlýðýnda \"%s:\" satýrý eksik.\n"
+
+#: src/lang.c:198
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: Header on line %d does not have a space after the colon:\n"
+	"%s\n"
+msgstr	"\n"
+	"Hata: %d satýrýndaki baþlýkta iki noktadan sonra boþluk yok:\n"
+	"%s\n"
+
+#: src/lang.c:199
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: There are multiple (%d) \"%s:\" lines in the header.\n"
+msgstr	"\n"
+	"Hata: Baþlýkta (%d) \"%s:\" çoklu satýlrarý var.\n"
+
+#: src/lang.c:200
+#, fuzzy, c-format
+msgid	"Insecure permissions of %s (%o)"
+msgstr	"Güvenli olmayan yetkiler %s (%o)"
+
+#: src/lang.c:201
+#, fuzzy, c-format
+msgid	"Invalid response to GROUP command, %s"
+msgstr	"KÜME komutuna geçersiz yanýt.%s"
+
+#: src/lang.c:203
+#, fuzzy, c-format
+msgid	"MIME parse error: Unexpected end of %s/%s article"
+msgstr	"MIME ayrýþtýrma hatasý: Makale %s/%s için beklenmeyen son"
+
+#: src/lang.c:204
+#, fuzzy
+msgid	"MIME parse error: Start boundary whilst reading headers"
+msgstr	"MIME ayrýþtýrma hatasý: Baþlýklarý okurken baþlatma sýnýrý"
+
+#: src/lang.c:205
+#, fuzzy
+msgid	"Can't get a (fully-qualified) domain-name!"
+msgstr	"(Tam niletelendirilmiþ) etki alaný adý alýnamadý!"
+
+#: src/lang.c:206
+#, fuzzy, c-format
+msgid	"No permissions to go into %s\n"
+msgstr	"%s için gidiþ yetkisi yok\n"
+
+#: src/lang.c:207
+#, fuzzy
+msgid	"\n"
+	"Error: From: line missing.\n"
+msgstr	"\n"
+	"Hata: Baþlangýç:satýr eksik.\n"
+
+#: src/lang.c:208
+#, fuzzy, c-format
+msgid	"No read permissions for %s\n"
+msgstr	"%s için okuma yetkisi yok\n"
+
+#: src/lang.c:209
+#, fuzzy, c-format
+msgid	"File %s does not exist\n"
+msgstr	"%s dosyasý yok\n"
+
+#: src/lang.c:210
+#, fuzzy, c-format
+msgid	"No write permissions for %s\n"
+msgstr	"%s için yazma yetkisi yok\n"
+
+#: src/lang.c:211
+#, fuzzy
+msgid	"Can't get user information (/etc/passwd missing?)"
+msgstr	"Kullanýcý bilgisi alýnamýyor(/etc/passwd kayýp?)"
+
+#: src/lang.c:212
+#, fuzzy
+msgid	"errors"
+msgstr	"hatalar"
+
+#: src/lang.c:213
+#, fuzzy, c-format
+msgid	"\n"
+	"Error on line %d: \"Sender:\" header not allowed (it will be added for you)\n"
+msgstr	"\n"
+	"%d satýrýnda hata \"Sender:\" baþlýk için izin verilmedi (sizin için "
+	"eklenecek)\n"
+
+#: src/lang.c:214
+#, fuzzy, c-format
+msgid	"Server has non of the groups listed in %s"
+msgstr	"Sunucuda %s'de listelenen gruplarýn hiçbiri yok"
+
+#: src/lang.c:215
+#, fuzzy
+msgid	"error"
+msgstr	"hata"
+
+#: src/lang.c:216
+#, fuzzy
+msgid	"Unknown display level"
+msgstr	"Bilinmeyen gösterim düzeyi"
+
+#: src/lang.c:217
+#, fuzzy
+msgid	"<ESC>"
+msgstr	"<ESC>"
+
+#: src/lang.c:218
+#, fuzzy
+msgid	"Exiting..."
+msgstr	"Çýkýyor..."
+
+#: src/lang.c:219
+#, fuzzy
+msgid	"leaving external mail-reader"
+msgstr	"Dýþ posta-okuyucuyu býrakýyor"
+
+#: src/lang.c:220
+#, fuzzy, c-format
+msgid	"Extracting %s..."
+msgstr	"Ayýklýyor %s..."
+
+#: src/lang.c:222
+#, fuzzy, c-format
+msgid	"Error writing %s file. Filesystem full? File reset to previous state."
+msgstr	"%s dosyasýný yazarken hata. Dosya sistemi dolu? Dosya önceki durumuna "
+	"dönüþtürüldü."
+
+#: src/lang.c:223
+#, fuzzy, c-format
+msgid	"Error making backup of %s file. Filesystem full?"
+msgstr	"%s dosyasýný yedeklemede hata. Dosya sistemi dolu?"
+
+#: src/lang.c:224
+#, fuzzy, c-format
+msgid	"Filtering global rules (%d/%d)..."
+msgstr	"Genel kurallar süzgeçleniyor (%d/%d)..."
+
+#: src/lang.c:225
+#, fuzzy
+msgid	"Rule created by: "
+msgstr	"Kural oluþturuldu: "
+
+#: src/lang.c:226
+#, fuzzy, c-format
+msgid	"Enter pattern [%s]> "
+msgstr	"Örüntüyü girin [%s]> "
+
+#: src/lang.c:227
+#, fuzzy, c-format
+msgid	"\n"
+	"You requested followups to your article to go to the following %s:\n"
+msgstr	"\n"
+	"Gitmek için makalenize takip-et istediniz %s:\n"
+
+#: src/lang.c:228
+#, fuzzy, c-format
+msgid	"  %s\t Answers will be directed to you by mail.\n"
+msgstr	"  %s\t Cevaplarý postayla yönlendirilecek.\n"
+
+#: src/lang.c:229
+msgid	"-- forwarded message --\n"
+msgstr	""
+
+#: src/lang.c:230
+msgid	"-- end of forwarded message --\n"
+msgstr	""
+
+#: src/lang.c:231
+#, fuzzy
+msgid	"# Format:\n"
+	"#   comment=STRING    Optional. Multiple lines allowed. Comments must be "
+	"placed\n"
+	"#                     at the beginning of a rule, or they will be moved to "
+	"the\n"
+	"#                     next rule. '#' is not a valid keyword for a comment!\n"
+	"#   group=STRING      Mandatory. Newsgroups list (e.g. comp.*,!*sources*).\n"
+	"#   case=NUM          Mandatory. Compare=0 / ignore=1 case when filtering.\n"
+	"#   score=NUM|STRING  Mandatory. Score to give. Either:\n"
+	"#     score=NUM         A number (e.g. 70). Or:\n"
+	"#     score=STRING      One of the two keywords: 'hot' or 'kill'.\n"
+	"#   subj=STRING       Optional. Subject: line (e.g. How to be a wizard).\n"
+	"#   from=STRING       Optional. From: line (e.g. *Craig Shergold*).\n"
+	"#   msgid=STRING      Optional. Message-ID: line (e.g. <123@ether.net>) with\n"
+	"#                     full references.\n"
+	"#   msgid_last=STRING Optional. Like above, but with last reference only.\n"
+	"#   msgid_only=STRING Optional. Like above, but without references.\n"
+	"#   refs_only=STRING  Optional. References: line (e.g. <123@ether.net>) "
+	"without\n"
+	"#                     Message-ID:\n"
+	"#   lines=[<>]?NUM    Optional. Lines: line. '<' or '>' are optional.\n"
+	"#   gnksa=[<>]?NUM    Optional. GNKSA parse_from() return code. '<' or '>' "
+	"opt.\n"
+	"#   xref=PATTERN      Optional. Kill pattern (e.g. alt.flame*)\n"
+	"#   time=NUM          Optional. time_t value when rule expires\n"
+	"#\n"
+msgstr	"# Format:\n"
+	"#   comment=STRING Seçmeli. Çoklu satýrlara izin verildi. Komutlar eklenmeli\n"
+	"#                    kural baþýna, ya da taþýnacak\n"
+	"#                    sonraki kurala.'#' komut için geçerli bir anahtar sözcük "
+	"deðildir!\n"
+	"#   group=STRING     Zorunlu. Haber grubu listesi (örn.comp.*,!*sources*).\n"
+	"#   case=NUM          Zorunlu. Karþýlaþtýr=0 / yoksay=1 durumu süzgeçlerken.\n"
+	"#   score=NUM|STRING  Zorunlu.Verilecek skor. Her ikisi:\n"
+	"#     score=NUM        Bir Sayý (örn. 70), Ya da:\n"
+	"#     score=STRING     Ýki anahtar sözcükten biri: 'hot' ya da 'kill'.\n"
+	"#   subj=STRING       Seçmeli. Konu: satýr (örn. Nasýl sihirbaz olunur)..\n"
+	"#   from=STRING       Seçmeli. Gönderen. satýr  (örn. *Craig Shergold*).\n"
+	"#   msgid=STRING      Seçmeli. Ýleti-kimliði : satýr (örn. <123@ether.net>) "
+	"ile\n"
+	"#                     tam referanslar.\n"
+	"#   msgid_last=STRING Seçmeli. Yukarýdaki gibi, ama sadece ilk referansla.\n"
+	"#   msgid_only=STRING Seçmeli. Yukarýdeki gibi, ama referans olmadan.\n"
+	"#                    Ýleti-kimliði:\n"
+	"#   lines=[<>]?NUM    Seçmeli. Satýrlar: satýr '<' or '>' seçmelidir.\n"
+	"#   gnksa=[<>]?NUM    Seçmeli. GNKSA dönüþ kodundan() ayrýþtýrýlýyor.'<' or "
+	"'>' opt.\n"
+	"#   xref=PATTERN     Seçmeli.Ölü örüntü (örn. alt.flame*)\n"
+	"#   time=NUM          Seçmeli.Kural bitince time_t deðeri\n"
+	"#\n"
+
+#: src/lang.c:252
+#, fuzzy, c-format
+msgid	"Enter score for rule (default=%d): "
+msgstr	"Kural için skoru yazýn (varsayýlan=%d): "
+
+#: src/lang.c:253
+#, fuzzy, c-format
+msgid	"Enter the score weight (range 0 < score <= %d)"
+msgstr	"Skor aðýrlýðýný yazýn (aralýk 0 < skor <= %d)"
+
+#. SCORE_MAX
+#: src/lang.c:254
+#, fuzzy
+msgid	"Full"
+msgstr	"Tam"
+
+#: src/lang.c:255
+#, fuzzy
+msgid	"Comment (optional)  : "
+msgstr	"Komut (seçmeli)   : "
+
+#: src/lang.c:256
+#, fuzzy
+msgid	"Apply pattern to    : "
+msgstr	"Örüntüyü uygula   : "
+
+#: src/lang.c:257
+#, fuzzy
+msgid	"From: line (ignore case)      "
+msgstr	"Gönderen: satýr (büyük/küçük harfleri yoksay) "
+
+#: src/lang.c:258
+#, fuzzy
+msgid	"From: line (case sensitive)   "
+msgstr	"Gönderen: satýr (büyük/küçük harfe duyarlý)   "
+
+#: src/lang.c:260
+#, fuzzy, c-format
+msgid	"%s%s: Unknown host.\n"
+msgstr	"%s%s: Bilinmeyen ana sunucu.\n"
+
+#: src/lang.c:261
+#, fuzzy
+msgid	"global "
+msgstr	"küresel "
+
+#: src/lang.c:262
+#, fuzzy, c-format
+msgid	"Please use %.100s instead"
+msgstr	"Lütfen % kullanýn.100s yerine"
+
+#: src/lang.c:263
+#, c-format
+msgid	"%s is bogus"
+msgstr	"%s sahte"
+
+#: src/lang.c:264
+#, fuzzy, c-format
+msgid	"Group %s is moderated. Continue?"
+msgstr	"Küme %s ayarlandý. Devam?"
+
+#: src/lang.c:265
+#, fuzzy
+msgid	"groups"
+msgstr	"kümeler"
+
+#: src/lang.c:266
+#, c-format
+msgid	"Rereading %s..."
+msgstr	"%s tekrar okunuyor..."
+
+#: src/lang.c:267
+#, fuzzy
+msgid	"Top Level Commands"
+msgstr	"Üst Düzey Komutlar"
+
+#: src/lang.c:268
+#, fuzzy
+msgid	"Group Selection"
+msgstr	"Küme Seçimi"
+
+#: src/lang.c:269
+#, fuzzy
+msgid	"group"
+msgstr	"küme"
+
+#: src/lang.c:271
+#, fuzzy
+msgid	"One or more lines of comment. <CR> to add a line or proceed if line is empty."
+msgstr	"Komutun bir veya birden çok satýrý. Satýr boþsa satýr eklemek veya devam "
+	"etmek için <CR>."
+
+#: src/lang.c:272
+#, fuzzy
+msgid	"From: line to add to filter file. <SPACE> toggles & <CR> sets."
+msgstr	"Gönderen: Süzgeç dosyaya eklenecek satýr.<SPACE> deðiþtirir & <CR> ayarlar."
+
+#: src/lang.c:273
+#, fuzzy
+msgid	"Linecount of articles to be filtered. < for less, > for more, = for equal."
+msgstr	"Süzgeçlenecek makalelerin satýr sayýsý. < az , > çok , =eþit."
+
+#: src/lang.c:274
+#, fuzzy
+msgid	"Message-ID: line to add to filter file. <SPACE> toggles & <CR> sets."
+msgstr	"Ýleti-kimliði: Dosya süzgeçlemek için eklenecek satýr. <SPACE> deðiþtirir & "
+	"<CR> ayarlar."
+
+#: src/lang.c:275
+#, fuzzy
+msgid	"Subject: line to add to filter file. <SPACE> toggles & <CR> sets."
+msgstr	"Konu: Dosya süzgeçlemek için eklenecek satýr. <SPACE> deðiþtirir & <CR> "
+	"ayarlar."
+
+#: src/lang.c:276
+#, fuzzy
+msgid	"Enter text pattern to filter if Subject: & From: lines are not what you want."
+msgstr	"Süzgeçlemek için metin örüntüsünü girin eðer Konu: & Gönderen: istediðiniz "
+	"satýrlar deðilse."
+
+#: src/lang.c:277
+#, fuzzy
+msgid	"Select where text pattern should be applied. <SPACE> toggles & <CR> sets."
+msgstr	"Metin örüntüsünün nereye uygulanacaðýný seçin. <SPACE> deðiþtirir & <CR> "
+	"ayarlar."
+
+#: src/lang.c:278
+#, fuzzy
+msgid	"Expiration time in days for the entered filter. <SPACE> toggles & <CR> sets."
+msgstr	"Yazýlan süzgeç için gün olarak kullaným süresi bitimi.<SPACE> deðiþtirir & "
+	"<CR> ayarlar."
+
+#: src/lang.c:279
+#, fuzzy
+msgid	"Apply kill only to current group or all groups. <SPACE> toggles & <CR> sets."
+msgstr	"Sadece mevcut küme veya bütün kümeler için kill uygulayýn. <SPACE> deðiþtirir "
+	"& <CR>ayarlar."
+
+#: src/lang.c:280
+#, fuzzy
+msgid	"Apply select to current group or all groups. <SPACE> toggles & <CR> sets."
+msgstr	"Mevcut küme veya bütün kümeler için seç uygulayýn <SPACE> deðiþtirir & "
+	"<CR>ayarlar."
+
+#: src/lang.c:281
+#, fuzzy
+msgid	"kill an article via a menu"
+msgstr	"makaleyi menü aracýlýðýyla öldür"
+
+#: src/lang.c:282
+#, fuzzy
+msgid	"auto-select (hot) an article via a menu"
+msgstr	"makaleyi menü aracýlýyla otomatik-seç (hot)"
+
+#: src/lang.c:283
+#, fuzzy
+msgid	"Browse URLs in article"
+msgstr	"Makaledeki URL'lara gözat"
+
+#: src/lang.c:284
+#, fuzzy
+msgid	"0 - 9\t  display article by number in current thread"
+msgstr	"0 - 9\t  makaleyi mevcut parçacýktaki sayýyla görüntüle"
+
+#: src/lang.c:285
+msgid	"cancel (delete) or supersede (overwrite) current article"
+msgstr	""
+
+#: src/lang.c:286
+#, fuzzy
+msgid	"edit article (mail-groups only)"
+msgstr	"makaleyi düzenle (sadece posta-gruplarý)"
+
+#: src/lang.c:287
+#, fuzzy
+msgid	"display first article in current thread"
+msgstr	"mevcut parçacýktaki makaleyi ilk görüntüle"
+
+#: src/lang.c:288
+#, fuzzy
+msgid	"display first page of article"
+msgstr	"makalenin ilk sayfasýný görüntüle"
+
+#: src/lang.c:289
+#, fuzzy
+msgid	"post followup to current article"
+msgstr	"mevcut makale için takip-et gönder"
+
+#: src/lang.c:290
+#, fuzzy
+msgid	"post followup (don't copy text) to current article"
+msgstr	"mevcut makale için takip-et gönder (metni kopyalama)"
+
+#: src/lang.c:291
+#, fuzzy
+msgid	"post followup to current article quoting complete headers"
+msgstr	"tam baþlýklarý imleyen mevcut makale için takip-et gönder"
+
+#: src/lang.c:292
+#, fuzzy
+msgid	"display last article in current thread"
+msgstr	"mevcut parçacýktaki son makaleyi görüntüle"
+
+#: src/lang.c:293
+#, fuzzy
+msgid	"display last page of article"
+msgstr	"makalenin son sayfasný görüntüle"
+
+#: src/lang.c:294
+#, fuzzy
+msgid	"mark rest of thread as read and advance to next unread"
+msgstr	"parçacýðýn kalanýný okunmuþ olarak iþaretle ve sonraki okunmamýþa geç"
+
+#: src/lang.c:295
+#, fuzzy
+msgid	"display next article"
+msgstr	"sonraki makaleyi görüntüle"
+
+#: src/lang.c:296
+#, fuzzy
+msgid	"display first article in next thread"
+msgstr	"sonraki baþlýktaki ilk makaleyi görüntüle"
+
+#: src/lang.c:297
+#, fuzzy
+msgid	"display next unread article"
+msgstr	"sonraki okunmamýþ makaleyi görüntüle"
+
+#: src/lang.c:298
+#, fuzzy
+msgid	"go to the article that this one followed up"
+msgstr	"bunu takip eden makaleye git"
+
+#: src/lang.c:299
+#, fuzzy
+msgid	"display previous article"
+msgstr	"önceki makaleyi görüntüle"
+
+#: src/lang.c:300
+#, fuzzy
+msgid	"display previous unread article"
+msgstr	"önceki okunmamýþ makaleyi görüntüle"
+
+#: src/lang.c:301
+#, fuzzy
+msgid	"quickly kill an article using defaults"
+msgstr	"varsayýlanlarý kullanarak makaleyi hemen öldür"
+
+#: src/lang.c:302
+#, fuzzy
+msgid	"quickly auto-select (hot) an article using defaults"
+msgstr	"varsayýlanlarý kullanarak makaleyi hemen otomatik-seç(hot)"
+
+#: src/lang.c:303
+#, fuzzy
+msgid	"return to group selection level"
+msgstr	"küme seçme düzeyine dön"
+
+#: src/lang.c:304
+#, fuzzy
+msgid	"reply through mail to author"
+msgstr	"yazara posta aracýlýðyla yanýt ver"
+
+#: src/lang.c:305
+#, fuzzy
+msgid	"reply through mail (don't copy text) to author"
+msgstr	"yazara posta aracýlýyla yanýt ver (metni kopyalama)"
+
+#: src/lang.c:306
+#, fuzzy
+msgid	"reply through mail to author quoting complete headers"
+msgstr	"tam baþlýklarý imleyerek yazara posta aracýlýðýyla yanýt ver"
+
+#: src/lang.c:307
+#, fuzzy
+msgid	"repost chosen article to another group"
+msgstr	"seçilen makaleyi baþka bir kümeye yeniden gönder"
+
+#: src/lang.c:308
+#, fuzzy
+msgid	"search backwards within this article"
+msgstr	"bu makalede geriye doðru ara"
+
+#: src/lang.c:309
+#, fuzzy
+msgid	"search forwards within this article"
+msgstr	"bu makalede ileriye doðru ara"
+
+#: src/lang.c:310
+#, fuzzy
+msgid	"show article in raw-mode (including all headers)"
+msgstr	"makaleyi ham-kipte göster (bütün baþlýklar dahil)"
+
+#: src/lang.c:311
+#, fuzzy
+msgid	"skip next block of included text"
+msgstr	"ekli dosyanýn sonraki öbeðine atla"
+
+#: src/lang.c:312
+#, fuzzy
+msgid	"toggle display of sections hidden by a form-feed (^L) on/off"
+msgstr	"(^L)açýk/kapalý form-besleme tarafýndan gizlenen bölümlerin gösterimini "
+	"deðiþtir"
+
+#: src/lang.c:313
+#, fuzzy
+msgid	"toggle word highlighting on/off"
+msgstr	"açýk/kapalý vurgulayan sözcüðü deðiþtir"
+
+#: src/lang.c:314
+#, fuzzy
+msgid	"toggle ROT-13 (basic decode) for current article"
+msgstr	"mevcut makale için ROT-13 (temel kod çözücü) deðiþtir"
+
+#: src/lang.c:315
+#, fuzzy
+msgid	"toggle tabwidth 4 <-> 8"
+msgstr	"sekme aralýðýný deðiþtir 4 <-> 8"
+
+#: src/lang.c:316
+#, fuzzy
+msgid	"toggle german TeX style decoding for current article"
+msgstr	"german TeX kod biçemi mevcut makale için deðiþtir"
+
+#: src/lang.c:317
+#, fuzzy
+msgid	"toggle display of uuencoded sections"
+msgstr	"metinsele kodlanmýþ bölümlerin gösterimini deðiþtir"
+
+#: src/lang.c:318
+#, fuzzy
+msgid	"View/save multimedia attachments"
+msgstr	"çoklu-ortam eklerini Görüntüle/kaydet"
+
+#: src/lang.c:319
+#, fuzzy, c-format
+msgid	"report bug or comment via mail to %s"
+msgstr	"hata veya komutu posta aracýlýðýyla bildirin %s"
+
+#: src/lang.c:320
+#, fuzzy
+msgid	"choose range of articles to be affected by next command"
+msgstr	"sonraki komuttan etkilenen makalelerin aralýðýný seç"
+
+#: src/lang.c:321
+#, fuzzy
+msgid	"escape from command prompt"
+msgstr	"komut isteminden çýk"
+
+#: src/lang.c:322
+#, fuzzy
+msgid	"edit filter file"
+msgstr	"Süz dosyasý okunuyor...\n"
+
+#: src/lang.c:323
+#, fuzzy
+msgid	"get help"
+msgstr	"yardým al"
+
+#: src/lang.c:324
+#, fuzzy
+msgid	"display last article viewed"
+msgstr	"görüntülenen son makaleyi göster"
+
+#: src/lang.c:325
+#, fuzzy
+msgid	"down one line"
+msgstr	"bir satýr aþaðý"
+
+#: src/lang.c:326
+#, fuzzy
+msgid	"up one line"
+msgstr	"bir satýr aþaðý"
+
+#: src/lang.c:327
+#, fuzzy
+msgid	"go to article chosen by Message-ID"
+msgstr	"Ýleti-kimliði tarafýndn seçilen makaleye git"
+
+#: src/lang.c:328
+#, fuzzy
+msgid	"mail article/thread/hot/pattern/tagged articles to someone"
+msgstr	"makale/parçacýk/hot/örüntü/etiketlenmiþ makaleleri postala"
+
+#: src/lang.c:329
+#, fuzzy
+msgid	"menu of configurable options"
+msgstr	"yapýlandýrabilir seçenekler menüsü"
+
+#: src/lang.c:330
+#, fuzzy
+msgid	"down one page"
+msgstr	"bir sayfa alta"
+
+#: src/lang.c:331
+#, fuzzy
+msgid	"up one page"
+msgstr	"bir sayfa yukarýya"
+
+#: src/lang.c:332
+#, fuzzy
+msgid	"post (write) article to current group"
+msgstr	"makaleyi mevcut kümeye gönder(yaz)"
+
+#: src/lang.c:333
+#, fuzzy
+msgid	"post postponed articles"
+msgstr	"ertelenmiþ makaleleri postala"
+
+#: src/lang.c:334
+#, fuzzy
+msgid	"list articles posted by you (from posted file)"
+msgstr	"(postalanmýþ dosyadan) tarafýnýzdan postalanan makaleleri listele"
+
+#: src/lang.c:335
+#, fuzzy
+msgid	"return to previous menu"
+msgstr	"önceki menüye dön"
+
+#: src/lang.c:336
+#, fuzzy
+msgid	"quit tin immediately"
+msgstr	"tin'den hemen çýk"
+
+#: src/lang.c:337
+#, fuzzy
+msgid	"redraw page"
+msgstr	"sayfayý yeniden çiz"
+
+#: src/lang.c:338
+#, fuzzy
+msgid	"save article/thread/hot/pattern/tagged articles to file"
+msgstr	"makale/parçacýk/hot/örüntü/etiketlenmiþ makaleleri dosyaya kaydet"
+
+#: src/lang.c:339
+#, fuzzy
+msgid	"save marked articles automatically without user prompts"
+msgstr	"iþaretlenmiþ makaleleri kullanýcý istemi olmadan otomatik kaydet"
+
+#: src/lang.c:340
+msgid	"scroll the screen one line down"
+msgstr	""
+
+#: src/lang.c:341
+msgid	"scroll the screen one line up"
+msgstr	""
+
+#: src/lang.c:342
+#, fuzzy
+msgid	"search for articles by author backwards"
+msgstr	"makaleleri yazara göre geriye doðru ara"
+
+#: src/lang.c:343
+#, fuzzy
+msgid	"search for articles by author forwards"
+msgstr	"makaleleri yazara göre ileriye doðru ara"
+
+#: src/lang.c:344
+#, fuzzy
+msgid	"search all articles for a given string (this may take some time)"
+msgstr	"bütün makaleleri verilen dizgi için ara (bu uzun sürebilir)"
+
+#: src/lang.c:345
+#, fuzzy
+msgid	" \t  (searches are case-insensitive and wrap around to all articles)"
+msgstr	" \t  (arayýcýlar büyük/küçük harfe duyarlýdýr ve bütün makaleleri çevreler)"
+
+#: src/lang.c:346
+#, fuzzy
+msgid	"search for articles by Subject line backwards"
+msgstr	"makaleleri Konu satýrýna göre geriye doðru ara"
+
+#: src/lang.c:347
+#, fuzzy
+msgid	"search for articles by Subject line forwards"
+msgstr	"makaleleri Konuya göre ileriye doðru ara"
+
+#: src/lang.c:348
+#, fuzzy
+msgid	"repeat last search"
+msgstr	"son aramayý tekrarla"
+
+#: src/lang.c:349
+#, fuzzy
+msgid	"tag current article for reposting/mailing/piping/printing/saving"
+msgstr	"mevcut makaleyi yeniden gönderme/postalama/kanal/yazdýrma/kaydetme için "
+	"etiketle"
+
+#: src/lang.c:350
+#, fuzzy
+msgid	"toggle info message in last line (subject/description)"
+msgstr	"son satýrdaki bilgi iletisini deðiþtir (konu/taným)"
+
+#: src/lang.c:351
+#, fuzzy
+msgid	"toggle inverse video"
+msgstr	"ters video'yu deðiþtir"
+
+#: src/lang.c:352
+#, fuzzy
+msgid	"toggle mini help menu display"
+msgstr	"mini yardým menüsü görünümünü deðiþtir"
+
+#: src/lang.c:353
+#, fuzzy
+msgid	"cycle the display of authors email address, real name, both or neither"
+msgstr	"yazarlarýn e-posta adreslerinin, gerçek isimlerinin, ikisinin veya hiçbirinin "
+	"görünümünü çevir"
+
+#: src/lang.c:354
+#, fuzzy
+msgid	"show version information"
+msgstr	"sürüm bilgisini göster"
+
+#: src/lang.c:355
+#, fuzzy
+msgid	"mark all articles as read and return to group selection menu"
+msgstr	"bürtümn makaleleri okunmuþ olarak iþaretle ve küme seçme menüsüne geri dön"
+
+#: src/lang.c:356
+#, fuzzy
+msgid	"mark all articles as read and enter next group with unread articles"
+msgstr	"bütün makaleleri okunmuþ olarak iþaretle ve okunmamýþ makalelerin bulunduðu "
+	"sonraki kümeye gir"
+
+#: src/lang.c:357
+#, fuzzy
+msgid	"choose first thread in list"
+msgstr	"listedeki ilk parçacýðý seç"
+
+#: src/lang.c:358
+#, fuzzy
+msgid	"choose last thread in list"
+msgstr	"listedeki son parçacýðý seç"
+
+#: src/lang.c:359
+#, fuzzy
+msgid	"list articles within current thread (bring up Thread sub-menu)"
+msgstr	"mevcut parçacýk kapsamýndaki makaleleri seç ( Parçacýk alt-menüsünü aç)"
+
+#: src/lang.c:360
+#, fuzzy
+msgid	"mark article as unread"
+msgstr	"makaleyi okunmamýþ olarak iþaretle"
+
+#: src/lang.c:361
+#, fuzzy
+msgid	"mark current thread or tagged threads as read"
+msgstr	"mevcut parçacýðý veya etiketlenmiþ parçacýklarý okunmuþ olarak iþaretle "
+
+#: src/lang.c:362
+#, fuzzy
+msgid	"mark thread as unread"
+msgstr	"parçacýðý okunmamýþ olarak iþaretle"
+
+#: src/lang.c:363
+#, fuzzy
+msgid	"toggle display of all/selected articles"
+msgstr	"Bütün/seçilen makalelerin görünümünü deðiþtir"
+
+#: src/lang.c:364
+#, fuzzy
+msgid	"display next group"
+msgstr	"sonraki kümeyi görüntüle"
+
+#: src/lang.c:365
+#, fuzzy
+msgid	"display previous group"
+msgstr	"önceki kümeyi görüntüle"
+
+#: src/lang.c:366
+#, fuzzy
+msgid	"toggle all selections (all articles)"
+msgstr	"bütün seçimleri (bütün makaleleri) deðiþtir"
+
+#: src/lang.c:367
+#, fuzzy
+msgid	"select group (make \"hot\")"
+msgstr	"küme seç (yap \"hot\")"
+
+#: src/lang.c:368
+#, fuzzy
+msgid	"select thread"
+msgstr	"parçacýk seç"
+
+#: src/lang.c:369
+#, fuzzy
+msgid	"select threads if at least one unread article is selected"
+msgstr	"en az bir okunmamýþ makale seçilmiþse parçacýk seç)"
+
+#: src/lang.c:370
+#, fuzzy
+msgid	"select threads that match user specified pattern"
+msgstr	"kullanýcý tanýmlý kalýba uyan baþlýklarý seç"
+
+#: src/lang.c:371
+#, fuzzy
+msgid	"tag all parts of current multipart-message in order"
+msgstr	"mevcut çok-bölümlü iletinin bütün bölümlerini sýrayla etiketle"
+
+#: src/lang.c:372
+#, fuzzy
+msgid	"0 - 9\t  choose thread by number"
+msgstr	"0 - 9\t  sayýya göre parçacýk seç"
+
+#: src/lang.c:373
+#, fuzzy
+msgid	"toggle limit number of articles to get, and reload"
+msgstr	"alýnacak ve yeniden yüklenecek makalelerin sýnýr sayýsýný deðiþtir."
+
+#: src/lang.c:374
+#, fuzzy
+msgid	"toggle display of all/unread articles"
+msgstr	"bütün/okunmamýþ makalelerin görünümünü deðiþtir"
+
+#: src/lang.c:375
+#, fuzzy
+msgid	"toggle selection of thread"
+msgstr	"parçacýk seçimini deðiþtir"
+
+#: src/lang.c:376
+#, fuzzy
+msgid	"cycle through threading options available"
+msgstr	"kullanýlabilir parçacýk seçenekleriyle çevir"
+
+#: src/lang.c:377
+#, fuzzy
+msgid	"undo all selections (all articles)"
+msgstr	"bütün seçimleri (bütün makaleleri) geri al"
+
+#: src/lang.c:378
+#, fuzzy
+msgid	"untag all tagged threads"
+msgstr	"etiketlenmiþ bütün parçacýklarýn etiketini kaldýr"
+
+#: src/lang.c:379
+#, fuzzy
+msgid	"mark all articles in group as read"
+msgstr	"kümedeki bütün makaleleri okunmuþ olarak iþaretle"
+
+#: src/lang.c:380
+#, fuzzy
+msgid	"mark all articles in group as read and move to next unread group"
+msgstr	"kümedeki bütün makaleleri okumuþ olarak iþaretle ve sonraki okunmamýþ kümeye "
+	"geç"
+
+#: src/lang.c:381
+#, fuzzy
+msgid	"choose first group in list"
+msgstr	"listedeki ilk kümeyi seç"
+
+#: src/lang.c:382
+#, fuzzy
+msgid	"choose group by name"
+msgstr	"Ýsme göre küme seç"
+
+#: src/lang.c:383
+#, fuzzy
+msgid	"0 - 9\t  choose group by number"
+msgstr	"0 - 9\t  sayýya göre küme seç"
+
+#: src/lang.c:384
+#, fuzzy
+msgid	"choose range of groups to be affected by next command"
+msgstr	"sonraki komuttan etkilenecek olan kümelerin aralýðýný seç"
+
+#: src/lang.c:385
+#, fuzzy
+msgid	"choose last group in list"
+msgstr	"listedeki son kümeyi seç"
+
+#: src/lang.c:386
+#, fuzzy
+msgid	"mark all articles in chosen group unread"
+msgstr	"seçilen kümedeki bütün makaleleri okunmamýþ olarak iþaretle"
+
+#: src/lang.c:387
+#, fuzzy
+msgid	"move chosen group within list"
+msgstr	"Listede seçilen kümeye git"
+
+#: src/lang.c:388
+#, fuzzy
+msgid	"choose next group with unread news"
+msgstr	"okunmamýþ haberlerde sonraki kümeyi seç"
+
+#: src/lang.c:389 src/lang.c:1197
+#, fuzzy
+msgid	"quit"
+msgstr	"çýk"
+
+#: src/lang.c:390
+#, fuzzy
+msgid	"quit without saving configuration changes"
+msgstr	"yapýlandýrabilir deðiþiklikleri kaydetmeden çýk"
+
+#: src/lang.c:391
+#, fuzzy
+msgid	"read chosen group"
+msgstr	"seçilen kümeyi oku"
+
+#: src/lang.c:392
+#, fuzzy
+msgid	"reset .newsrc (all available articles in groups marked unread)"
+msgstr	"reset .newsrc (kümelerdeki bütün kullanýlabilir makaleler okunmamýþ olarak "
+	"iþaretlendi)"
+
+#: src/lang.c:393
+#, fuzzy
+msgid	"search backwards for a group name"
+msgstr	"geriye doðru küme ismi ara"
+
+#: src/lang.c:394
+#, fuzzy
+msgid	" \t  (all searches are case-insensitive and wrap around)"
+msgstr	" \t  (bütün arayýcýlar büyük/küçük harfe duyarlýdýr ve çevreler)"
+
+#: src/lang.c:395
+#, fuzzy
+msgid	"search forwards for a group name"
+msgstr	"ileriye doðru küme ismi ara"
+
+#: src/lang.c:396
+#, fuzzy
+msgid	"subscribe to chosen group"
+msgstr	"seçilen kümeye abone ol"
+
+#: src/lang.c:397
+#, fuzzy
+msgid	"subscribe to groups that match pattern"
+msgstr	"örüntüye uyan kümelere abone ol"
+
+#: src/lang.c:398
+#, fuzzy
+msgid	"reread active file to check for any new news"
+msgstr	"aktif dosyayý yeni haberleri onaylamak için yeniden oku"
+
+#: src/lang.c:399
+#, fuzzy
+msgid	"toggle display of group name only or group name plus description"
+msgstr	"sadece küme ismini veya küme ismi ve taným görünümünü deðiþtir"
+
+#: src/lang.c:400
+#, fuzzy
+msgid	"toggle display to show all/unread subscribed groups"
+msgstr	"bütün7okunmamýþ abone olmayan kümeleri göstermek için görünümü deðiþtir"
+
+#: src/lang.c:401
+#, fuzzy
+msgid	"unsubscribe from chosen group"
+msgstr	"seçilen küme için abonelikten çýk"
+
+#: src/lang.c:402
+#, fuzzy
+msgid	"unsubscribe from groups that match pattern"
+msgstr	"örüntüye uyan bütün kümeler için abonelikten çýk"
+
+#: src/lang.c:403
+#, fuzzy
+msgid	"sort the list of groups"
+msgstr	"küme listelerini sýrala"
+
+#: src/lang.c:404
+#, fuzzy
+msgid	"toggle display to show all/subscribed groups"
+msgstr	"bütün/abone olmayan kümeleri göstermek için görünümü deðiþtir"
+
+#: src/lang.c:405
+#, fuzzy
+msgid	"0 - 9\t  choose article by number"
+msgstr	"0 - 9\t  sayýya göre makale seç"
+
+#: src/lang.c:406
+#, fuzzy
+msgid	"mark thread as read and return to group index page"
+msgstr	"parçacýðý okunmuþ olarak iþaretle ve küme dizin sayfasýna geri dön"
+
+#: src/lang.c:407
+#, fuzzy
+msgid	"mark thread as read and enter next unread thread or group"
+msgstr	"parçacýðý okunmuþ olarak iþaretle ve sonraki okunmamýþ parçacýða veya kümeye "
+	"gir"
+
+#: src/lang.c:408
+#, fuzzy
+msgid	"choose first article in list"
+msgstr	"listedeki ilk makaleyi seç"
+
+#: src/lang.c:409
+#, fuzzy
+msgid	"choose last article in list"
+msgstr	"listedeki son makaleyi seç"
+
+#: src/lang.c:410
+#, fuzzy
+msgid	"mark article or tagged articles as read and move cursor to next unread article"
+msgstr	"makaleyi veya etiketlenen makaleleri okunmuþ olarak iþaretle ve imleçi "
+	"sonraki okunmamýþ makaleye taþý"
+
+#: src/lang.c:411
+#, fuzzy
+msgid	"read chosen article"
+msgstr	"seçilen makaleyi oku"
+
+#: src/lang.c:412
+#, fuzzy
+msgid	"Display properties\n"
+	"------------------"
+msgstr	"Özellikleri görüntüle\n"
+	"---------------------"
+
+#: src/lang.c:413
+#, fuzzy
+msgid	"Miscellaneous\n"
+	"-------------"
+msgstr	"Diðer\n"
+	"-----"
+
+#: src/lang.c:414
+#, fuzzy
+msgid	"Moving around\n"
+	"-------------"
+msgstr	"Etrafýna taþý\n"
+	"-------------"
+
+#: src/lang.c:415
+#, fuzzy
+msgid	"Group/thread/article operations\n"
+	"-------------------------------"
+msgstr	"Küme/parçacýk/makale iþlemleri\n"
+	"-------------------------------"
+
+#: src/lang.c:417
+#, fuzzy
+msgid	"Group Level Commands"
+msgstr	"Küme Düzey Komutlarý"
+
+#: src/lang.c:418
+#, fuzzy
+msgid	"Kill filter added"
+msgstr	"Eklendikten sonra öldür"
+
+#: src/lang.c:419
+#, fuzzy
+msgid	"Auto-selection filter added"
+msgstr	"Eklendikten sonra otomatik-seç"
+
+#: src/lang.c:420
+#, fuzzy
+msgid	"All parts tagged"
+msgstr	"Bütün bölümler etiketlendi"
+
+#: src/lang.c:421
+#, fuzzy
+msgid	"Storing article for later posting"
+msgstr	"Makale daha sonra postlama için yükleniyor"
+
+#: src/lang.c:422
+#, fuzzy
+msgid	"Please enter a valid character"
+msgstr	"Lütfen geçerli bir karakter yazýn"
+
+#: src/lang.c:423
+#, fuzzy, c-format
+msgid	"Missing part #%d"
+msgstr	"Eksik bölüm #%d"
+
+#: src/lang.c:424
+#, fuzzy
+msgid	"*** No postponed articles ***"
+msgstr	"*** Ertelenmiþ makale yok ***"
+
+#: src/lang.c:425
+#, fuzzy
+msgid	"Not a multi-part message"
+msgstr	"Çok-bölümlü ileti deðil"
+
+#: src/lang.c:426
+#, fuzzy
+msgid	"You are not subscribed to this group"
+msgstr	"Bu kümeye abone deðilsiniz"
+
+#: src/lang.c:427
+#, fuzzy
+msgid	"No previous expression"
+msgstr	"Önceki ifade yok"
+
+#: src/lang.c:428
+#, fuzzy
+msgid	"Operation disabled in no-overwrite mode"
+msgstr	"Üstüne yazýlmayan kipte iþlem geçersiz"
+
+#. TODO: replace hardcoded key-name in txt_info_postponed
+#: src/lang.c:430
+#, fuzzy, c-format
+msgid	"%d postponed %s, reuse with ^O...\n"
+msgstr	"%d ertelendi %s, tekrar kullan ^O...\n"
+
+#: src/lang.c:431
+#, fuzzy
+msgid	"X-Conversion-Note: multipart/alternative contents have been removed.\n"
+	"  To get the whole article, turn alternative handling OFF in the Option Menu\n"
+msgstr	"X-Çevirim Notu: çok-bölümlü/alternatif içerikler kaldýrýldý.\n"
+	"  Bütün makaleyi almak için, Seçenekler Menüsündeki alternatif kotarmayý\n"
+	"  OFF durumuna getirin\n"
+
+#: src/lang.c:433
+#, fuzzy, c-format
+msgid	"Save filename for %s/%s is a mailbox. Attachment not saved"
+msgstr	"Dosya adýný %s/%s için kaydet bir posta kutusudur. Ek kaydedilmedi"
+
+#: src/lang.c:434
+#, fuzzy
+msgid	"TeX2Iso encoded article"
+msgstr	"TeX2Iso makaleyi kodladý"
+
+#: src/lang.c:435
+#, fuzzy
+msgid	"incomplete "
+msgstr	"tamamlanmadý "
+
+#. TODO: replace hardcoded key-names
+#: src/lang.c:437
+#, fuzzy, c-format
+msgid	"\n"
+	"Welcome to %s, a full screen threaded Netnews reader. It can read news "
+	"locally\n"
+	"(ie. <spool>/news) or remotely (-r option)  from a NNTP (Network News "
+	"Transport\n"
+	"Protocol) server. -h lists the available command line options.\n"
+	"\n"
+	"%s  has four newsreading levels, the newsgroup selection page, the group "
+	"index\n"
+	"page, the thread listing page and the article viewer. Help is available at "
+	"each\n"
+	"level by pressing the 'h' command.\n"
+	"\n"
+	"Move up/down by using the terminal arrow keys or 'j' and 'k'.  Use PgUp/PgDn "
+	"or\n"
+	"Ctrl-U and Ctrl-D to page up/down. Enter a newsgroup by pressing RETURN/TAB.\n"
+	"\n"
+	"Articles, threads, tagged articles or articles matching a pattern can be "
+	"mailed\n"
+	"('m' command), printed ('o' command), saved ('s' command), piped ('|' "
+	"command).\n"
+	"Use  the 'w' command  to post a  news article,  the 'f'/'F' commands  to post "
+	"a\n"
+	"follow-up to  an existing  news article  and the 'r'/'R' commands  to reply "
+	"via\n"
+	"mail to an  existing news article author.  The 'M' command allows the "
+	"operation\n"
+	"of %s to be configured via a menu.\n"
+	"\n"
+	"For more information read the manual page, README, INSTALL, TODO and FTP "
+	"files.\n"
+	"Please send bug-reports/comments to %s with the 'R' command.\n"
+msgstr	"\n"
+	"Hoþgeldiniz %s, tam ekran Netnews okuyucu kullandý. Haberleri yerel olarak\n"
+	"(örn. <spool>/news) veya uzaktan (-r seçeneði) NNTP ((Network News Transport\n"
+	"Protocol) sunucusundan okuyabilir. -h kullanýlabilir komut satýrý "
+	"seçeneklerini listeler.\n"
+	"\n"
+	"%s dört haber okuma düzeyine sahiptir, haber grubu seçme sayfasý, grup dizin\n"
+	"sayfasý, kullaným listeleyen sayfa ve makale görüntüleyici. Yardým her\n"
+	"düzeyde 'h' komutuna basýlarak kullanýlabilir.\n"
+	"\n"
+	" 'j' ve 'k' uçbirim yön tuþlarýný kullanarak aþaðý/yukarý taþýyýn. Sayfayý "
+	"aþaðý/yukarý taþýmak için PgUp/PgDn ya da\n"
+	"Ctrl-U ve Ctrl-D kullanýn. Haber grubuna RETURN/TAB'a basarak girin.\n"
+	"\n"
+	"Makaleler, parçacýklar, etiketlenmiþ makaleler veya bir örüntüye uyan "
+	"makaleler postalanabilir\n"
+	"('m' komutu), yazdýr ('o' komutu), kaydet ('s' komutu), kanal ('I' komutu).\n"
+	"Bir haber makalesini postalamak için 'w' komutunu, var olan bir haber "
+	"makalesini takip-et için 'f'/'F' komutunu\n"
+	" ve var olan bir haber makalesi yazarýna posta yoluyla yanýt için 'r'/'R'\n"
+	" komutunu kullanýn. 'M' komutu menü aracýlýðýyla yapýlandýrýlacak %s için\n"
+	" iþleme izin verir.\n"
+	"\n"
+	"Daha fazla bilgi çin el ile sayfasýný, README, INSTALL, TODO ve FTP "
+	"dosyalarýný okuyun.\n"
+	"Hata-raporlarýný ve önerileri 'R' komutu ile %s'e gönderin.\n"
+
+#: src/lang.c:453
+#, fuzzy, c-format
+msgid	"Invalid  From: %s  line. Read the INSTALL file again."
+msgstr	"Geçersiz Gönderen: %s satýrý. INSTALL dosyasýný yeniden okuyun."
+
+#: src/lang.c:454
+#, fuzzy, c-format
+msgid	"Invalid  Sender:-header %s"
+msgstr	"Geçersiz Gönderen: -baþlýk %s"
+
+#: src/lang.c:455
+#, fuzzy
+msgid	"Inverse video disabled"
+msgstr	"Ters video geçersiz"
+
+#: src/lang.c:456
+#, fuzzy
+msgid	"Inverse video enabled"
+msgstr	"Ters video geçerli"
+
+#: src/lang.c:458
+#, fuzzy, c-format
+msgid	"Missing definition for %s\n"
+msgstr	"Taným eksik %s\n"
+
+#: src/lang.c:459
+#, fuzzy, c-format
+msgid	"Invalid key definition '%s'\n"
+msgstr	"Geçersiz tuþ tanýmý '%s'\n"
+
+#: src/lang.c:460
+#, fuzzy, c-format
+msgid	"Invalid keyname '%s'\n"
+msgstr	"Geçersiz anahtar sözcük '%s'\n"
+
+#: src/lang.c:462
+#, fuzzy, c-format
+msgid	"Key '%s' is defined for both %s%s and %s%s\n"
+msgstr	"'%s' tuþu %s%s ve %s%s için tanýmlandý\n"
+
+#: src/lang.c:464
+#, c-format
+msgid	"Keymap file was upgraded to version %s\n"
+msgstr	""
+
+#: src/lang.c:465
+#, fuzzy, c-format
+msgid	"Kill From:     [%s] (y/n): "
+msgstr	"Göndereni yok et:     [%s] (y/n): "
+
+#: src/lang.c:466
+#, fuzzy
+msgid	"Kill Lines: (</>num): "
+msgstr	"Satýrlarý yok et:(</>num): "
+
+#: src/lang.c:467
+#, fuzzy
+msgid	"Kill Article Menu"
+msgstr	"Makale menüsünü yok et"
+
+#: src/lang.c:468
+#, fuzzy, c-format
+msgid	"Kill Msg-Id:   [%s] (f/l/o/n): "
+msgstr	"Ýleti-Kimliðini yko et:   [%s] (f/l/o/n): "
+
+#: src/lang.c:469
+#, fuzzy
+msgid	"Kill pattern scope  : "
+msgstr	"Örüntü kapsamýný yok et: "
+
+#: src/lang.c:470
+#, fuzzy, c-format
+msgid	"Kill Subject:  [%s] (y/n): "
+msgstr	"Konuyu yok et: [%s] (y/n): "
+
+#: src/lang.c:471
+#, fuzzy
+msgid	"Kill text pattern   : "
+msgstr	"Metin örüntüsünü yok et : "
+
+#: src/lang.c:472
+#, fuzzy
+msgid	"Kill time in days   : "
+msgstr	"Zamaný gün olarak yok et: "
+
+#: src/lang.c:474
+#, fuzzy
+msgid	"Last"
+msgstr	"Son"
+
+#: src/lang.c:475
+#, fuzzy
+msgid	"-- Last response --"
+msgstr	"-- Son yanýt --"
+
+#: src/lang.c:476
+#, fuzzy, c-format
+msgid	"Lines %s  "
+msgstr	"Satýrlar %s "
+
+#: src/lang.c:478
+#, fuzzy
+msgid	"Message-ID: line              "
+msgstr	"Ýleti-Kimliði: satýr             "
+
+#: src/lang.c:479
+#, fuzzy
+msgid	"Mail"
+msgstr	"Postalandý"
+
+#: src/lang.c:480
+#, fuzzy
+msgid	"mailbox "
+msgstr	"posta kutusu "
+
+#: src/lang.c:481
+#, fuzzy, c-format
+msgid	"Mail article(s) to [%.*s]> "
+msgstr	"Makaleleri postala [%.*s]> "
+
+#: src/lang.c:482
+#, fuzzy, c-format
+msgid	"Mailing log to %s\n"
+msgstr	"Günlüðü postalýyor %s\n"
+
+#: src/lang.c:483
+#, fuzzy
+msgid	"Mail bug report..."
+msgstr	"Hata raporu postala..."
+
+#: src/lang.c:484
+#, fuzzy, c-format
+msgid	"Mail BUG REPORT to %s?"
+msgstr	"HATA RAPORUNU postala %s?"
+
+#: src/lang.c:485
+#, fuzzy
+msgid	"Mailed"
+msgstr	"Postalandý"
+
+#: src/lang.c:486
+#, fuzzy, c-format
+msgid	"Mailing to %s..."
+msgstr	"Postalanýyor %s..."
+
+#: src/lang.c:487
+#, fuzzy
+msgid	"# [Mail/Save] active file. Format is like news active file:\n"
+	"#   groupname  max.artnum  min.artnum  /dir\n"
+	"# The 4th field is the basedir (ie. ~/Mail or ~/News)\n"
+	"#\n"
+msgstr	"# (Mail/Save) aktif dosya. Format haber aktif dosyasyla ayný:\n"
+	"# grup ismi  max.artnum  min.artnum  /dir\n"
+	"# 4. alan basedir(örn.~/Mail or ~/News)\n"
+	"#\n"
+
+#: src/lang.c:490
+#, fuzzy, c-format
+msgid	"%s marked as unread"
+msgstr	"%s okunmamýþ olarak iþaretlendi"
+
+#: src/lang.c:491
+#, fuzzy, c-format
+msgid	"Marked %d of %d tagged %s as read"
+msgstr	"%d içerisinde %d iþaretlendi %s okunmuþ olarak etiketlendi"
+
+#: src/lang.c:492
+#, fuzzy, c-format
+msgid	"Mark all articles as read%s?"
+msgstr	"Bütün makaleleri okunmuþ olarak iþaretle%s?"
+
+#: src/lang.c:493
+#, fuzzy, c-format
+msgid	"Mark %s=tagged articles, %s=current article, %s=quit: "
+msgstr	"Ýþaretle %s=etiketlenen makaleler, %s=mevcut makale, %s=çýk: "
+
+#: src/lang.c:494
+#, fuzzy, c-format
+msgid	"Mark group %s as read?"
+msgstr	"Küme %s 'i okunmuþ olarak iþaretle?"
+
+#: src/lang.c:495
+#, fuzzy, c-format
+msgid	"Mark thread as read%s?"
+msgstr	"Parçacýk %s 'i okunmuþ olarak iþaretle?"
+
+#: src/lang.c:496
+#, fuzzy, c-format
+msgid	"Mark %s=tagged articles/threads, %s=current thread, %s=quit: "
+msgstr	"Ýþaretle %s=etiketlenen makale7parçacýklar, %s= mevcut parçacýk, %s=çýk: "
+
+#: src/lang.c:497
+#, fuzzy, c-format
+msgid	"Matching %s groups..."
+msgstr	"%s kümelerini eþleþtiriyor..."
+
+#: src/lang.c:498 src/lang.c:502
+#, fuzzy, c-format
+msgid	"<n>=set current to n; %s=next unread; %s=search pattern; %s=kill/select"
+msgstr	"<n>=muvcut n için ayarlandý; %s=sonraki okunmayan; %s=arama örüntüsü; %s=yok "
+	"et/seç"
+
+#: src/lang.c:499
+#, fuzzy, c-format
+msgid	"%s=author search; %s=catchup; %s=line down; %s=line up; %s=mark read; %s=list "
+	"thread"
+msgstr	"%s=yazar aramasý; %s=catchup; %s=alt satýr; %s=üst satýr; %s= okunmuþ "
+	"iþaretle; %s=parçacýk listele"
+
+#: src/lang.c:500
+#, fuzzy, c-format
+msgid	"%s=line up; %s=line down; %s=page up; %s=page down; %s=top; %s=bottom"
+msgstr	"%s=üst satýr; %s=alt satýr; %s=üst sayfa; %s= alt sayfa; %s=üst; %s=alt"
+
+#: src/lang.c:501
+#, fuzzy, c-format
+msgid	"%s=search forwards; %s=search backwards; %s=quit"
+msgstr	"%s=ileriye doðru ara; %s=geriye doðru ara; %s=çýk"
+
+#: src/lang.c:503
+#, fuzzy, c-format
+msgid	"%s=author search; %s=body search; %s=catchup; %s=followup; %s=mark read"
+msgstr	"%s=yazar aramasý; %s=gövde aramasý; %s=catchup; %s=takip-et; %s=okumuþ olarak "
+	"iþaretle"
+
+#: src/lang.c:504
+#, fuzzy, c-format
+msgid	"<n>=set current to n; %s=next unread; %s,%s=search pattern; %s=catchup"
+msgstr	"<n>=mevcut n için ayarlandý; %s=sonraki okunmayan; %s,%s=arama örgüsü; "
+	"%s=catchup"
+
+#: src/lang.c:505
+#, fuzzy, c-format
+msgid	"%s=line down; %s=line up; %s=help; %s=move; %s=quit; %s=toggle all/unread"
+msgstr	"%s=alt satýr; %s=üst satýr; %s=yardým; %s=taþý; %s=çýk; %s=bütün/okunmamýþ "
+	"deðiþtir"
+
+#: src/lang.c:506
+#, fuzzy, c-format
+msgid	"%s=subscribe; %s=sub pattern; %s=unsubscribe; %s=unsub pattern; %s=yank in/out"
+msgstr	"%s=abone ol; %s=alt örüntü; %s=abonelikten çýk; %s=alt olmayan örüntü; "
+	"%s=yank in/out"
+
+#: src/lang.c:507
+#, fuzzy, c-format
+msgid	"<n>=set current to n; %s=next unread; %s=catchup; %s=display toggle"
+msgstr	"<n>= muvcut n için ayarlandý; %s=sonraki okunmayan; %s=catchup; %s=deðiþimi "
+	"görüntüle"
+
+#: src/lang.c:508
+#, fuzzy, c-format
+msgid	"%s=help; %s=line down; %s=line up; %s=quit; %s=tag; %s=mark unread"
+msgstr	"%s=yardým; %s=alt satýr; %s=üst satýr; %s=quit; %s=etiketle; %s=okunmamýþ "
+	"olarak iþaretle"
+
+#: src/lang.c:509
+#, fuzzy
+msgid	"--More--"
+msgstr	"--Tümü--"
+
+#: src/lang.c:510
+#, fuzzy, c-format
+msgid	"Moving %s..."
+msgstr	"Taþýnan %s..."
+
+#: src/lang.c:512
+#, fuzzy
+msgid	", name: "
+msgstr	", isim: "
+
+#: src/lang.c:513
+#, fuzzy, c-format
+msgid	"Goto newsgroup [%s]> "
+msgstr	"Haber grubuna gidin [%s]> "
+
+#: src/lang.c:514
+#, fuzzy
+msgid	"newsgroups"
+msgstr	"haber gruplarý"
+
+#: src/lang.c:515
+#, fuzzy, c-format
+msgid	"Position %s in group list (1,2,..,$) [%d]> "
+msgstr	"Grup listesinde %s konumlayýn (1,2,..,$) [%d]> "
+
+#: src/lang.c:516
+#, fuzzy
+msgid	"newsgroup"
+msgstr	"haber gruplarý"
+
+#: src/lang.c:517
+#, fuzzy
+msgid	"Try and save newsrc file again?"
+msgstr	"Newsrc dosyasýný kaydetmeyi tekrar dene?"
+
+#: src/lang.c:518
+#, fuzzy
+msgid	"Warning: No newsgroups were written to your newsrc file. Save aborted."
+msgstr	"Uyarý: Newsrc dosyanýza herhangi bir haber grubu yazýlmadý. Kaydetme "
+	"durduruldu."
+
+#: src/lang.c:519
+#, fuzzy
+msgid	"newsrc file saved successfully.\n"
+msgstr	"newsrc dosyasý baþarýyla kaydedildi.\n"
+
+#: src/lang.c:520
+#, fuzzy
+msgid	"-- Next response --"
+msgstr	"-- Sonraki yanýt --"
+
+#: src/lang.c:521
+#, fuzzy, c-format
+msgid	"NNTP authorization password not found for %s"
+msgstr	"NNTP yetki þifresi %s için bulunamadý"
+
+#: src/lang.c:522
+#, fuzzy
+msgid	"No  "
+msgstr	"Hayýr"
+
+#: src/lang.c:523
+#, fuzzy
+msgid	"*** No articles ***"
+msgstr	"*** Makale yok ***"
+
+#: src/lang.c:524
+#, fuzzy
+msgid	"No articles have been posted"
+msgstr	"Hiçbir makale gönderilmedi"
+
+#: src/lang.c:525
+#, fuzzy
+msgid	"*** No description ***"
+msgstr	"*** Taným yok ***"
+
+#: src/lang.c:526
+#, fuzzy
+msgid	"No filename"
+msgstr	"Dosya adý yok"
+
+#: src/lang.c:527
+#, fuzzy
+msgid	"No group"
+msgstr	"Küme yok"
+
+#: src/lang.c:528
+#, fuzzy
+msgid	"*** No groups ***"
+msgstr	"*** Kümeler yok ***"
+
+#: src/lang.c:529
+#, fuzzy
+msgid	"No more groups to read"
+msgstr	"Okunacak küme kalmadý"
+
+#: src/lang.c:530
+#, fuzzy
+msgid	"No last message"
+msgstr	"Son ileti yok"
+
+#: src/lang.c:531
+#, fuzzy
+msgid	"No mail address"
+msgstr	"Posta adresi yok"
+
+#: src/lang.c:532
+#, fuzzy
+msgid	"No articles marked for saving"
+msgstr	"Kaydetmek için hiçbir makale iþaretlenmedi"
+
+#: src/lang.c:533
+#, fuzzy
+msgid	"No match"
+msgstr	"Eþ yok"
+
+#: src/lang.c:534
+#, fuzzy
+msgid	"No more groups"
+msgstr	"Baþka küme yok"
+
+#: src/lang.c:535
+#, fuzzy
+msgid	"No newsgroups"
+msgstr	"Haber gruplarý yok"
+
+#: src/lang.c:536
+#, fuzzy
+msgid	"No next unread article"
+msgstr	"Sonraki okunmamýþ makale yok"
+
+#: src/lang.c:537
+#, fuzzy
+msgid	"No previous group"
+msgstr	"Önceki küme yok"
+
+#: src/lang.c:538
+#, fuzzy
+msgid	"No previous unread article"
+msgstr	"Önceki okunmamýþ makale yok"
+
+#: src/lang.c:539
+#, fuzzy
+msgid	"No responses"
+msgstr	"Yanýt yok"
+
+#: src/lang.c:540
+#, fuzzy
+msgid	"No responses to list in current thread"
+msgstr	"Mevcut parçacýkta listelemek için hiç yanýt yok"
+
+#: src/lang.c:541
+#, fuzzy
+msgid	"No search string"
+msgstr	"Arama dizgisi yok"
+
+#: src/lang.c:542
+#, fuzzy
+msgid	"No subject"
+msgstr	"Konu yok"
+
+#: src/lang.c:544
+#, fuzzy, c-format
+msgid	"%s: Terminal must have clear to end-of-line (ce)\n"
+msgstr	"%s: Uçbirim satýr sonuna kadar boþ olmak zorunda (ce)\n"
+
+#: src/lang.c:545
+#, fuzzy, c-format
+msgid	"%s: Terminal must have clear to end-of-screen (cd)\n"
+msgstr	"%s: Uçbirim ekran sonuna kadar boþ olmak zorunda (cd)\n"
+
+#: src/lang.c:546
+#, fuzzy, c-format
+msgid	"%s: Terminal must have clearscreen (cl) capability\n"
+msgstr	"%s: Uçbirimin ekran temizleme (cl) yeteneði olmalý\n"
+
+#: src/lang.c:547
+#, fuzzy, c-format
+msgid	"%s: Terminal must have cursor motion (cm)\n"
+msgstr	"%s: Uçbirimin imleç hareketi olmalý (cm)\n"
+
+#: src/lang.c:548
+#, fuzzy, c-format
+msgid	"%s: TERM variable must be set to use screen capabilities\n"
+msgstr	"%s: TERM deðiþkeni ekran yetenekleri kullanýlacak þekilde ayarlanmalý\n"
+
+#: src/lang.c:550
+#, fuzzy, c-format
+msgid	"No viewer found for %s/%s\n"
+msgstr	"%s/%s için görüntüleyici yok\n"
+
+#: src/lang.c:551
+#, fuzzy
+msgid	"Newsgroup does not exist on this server"
+msgstr	"Bu sunucuda haber grubu yok"
+
+#: src/lang.c:552
+#, fuzzy, c-format
+msgid	"Group %s not found in active file"
+msgstr	"Küme %s aktif dosyada bulunamadý"
+
+#: src/lang.c:553
+#, fuzzy
+msgid	"c)reate it, use a)lternative name, use d)efault .newsrc, q)uit tin: "
+msgstr	"c)yarat, a)lternatif isim kullan, d)varsayýlaný kullan, mewsrc, q)tin'den "
+	"çýk: "
+
+#: src/lang.c:554
+#, fuzzy
+msgid	"use a)lternative name, use d)efault .newsrc, q)uit tin: "
+msgstr	"a)lternatif isim kullan, d)varsayýlaný kullan, newsrc, q)tin'den çýk: "
+
+#: src/lang.c:555
+#, fuzzy, c-format
+msgid	"# NNTP-server -> newsrc translation table and NNTP-server\n"
+	"# shortname list for %s %s\n"
+	"#\n"
+	"# the format of this file is\n"
+	"#   <FQDN of NNTP-server> <newsrc file> <shortname> ...\n"
+	"#\n"
+	"# if <newsrc file> is given without path, $HOME is assumed as its location\n"
+	"#\n"
+	"# examples:\n"
+	"#   news.tin.org  .newsrc-tin.org  tinorg\n"
+	"#   news.ka.nu    /tmp/nrc-nu      kanu    nu\n"
+	"#\n"
+msgstr	"# NNTP-sunucu -> newsrc çeviri dosyasý ile NNTP-sunucu\n"
+	"#   %s %s için kýsaltma listesi#\n"
+	"# bu dosyanýn biçimi\n"
+	"#  <FQDN of NNTP-server> <newsrc file> <shortname> ...\n"
+	"#\n"
+	"# eðer <newsrc file> yol gösterilmeden verildiyse, $HOME onun yeri "
+	"varsayýlýr\n"
+	"#\n"
+	"# örnekler:\n"
+	"#   news.tin.org  .newsrc-tin.org  tinorg\n"
+	"#   news.ka.nu    /tmp/nrc-nu      kanu    nu\n"
+	"#\n"
+
+#: src/lang.c:562
+#, fuzzy
+msgid	"Only"
+msgstr	"Sadece"
+
+#: src/lang.c:563
+#, fuzzy, c-format
+msgid	"Option not enabled. Recompile with %s."
+msgstr	"Seçenek etkin kýlýnmadý. Yeniden derle %s."
+
+#: src/lang.c:564
+#, fuzzy
+msgid	"Options Menu"
+msgstr	"Seçenekler menüsü"
+
+#: src/lang.c:567
+#, fuzzy, c-format
+msgid	"Error in regex: %s at pos. %d '%s'"
+msgstr	"Regex'de hata: poda %s. %d '%s'"
+
+#: src/lang.c:568
+#, fuzzy, c-format
+msgid	"Error in regex: pcre internal error %d"
+msgstr	"Regex'de hata: pcre iç hata %d"
+
+#: src/lang.c:569
+#, fuzzy, c-format
+msgid	"Error in regex: study - pcre internal error %s"
+msgstr	"Regex'de hata: incele - pcre iç hata %s"
+
+#: src/lang.c:570
+#, fuzzy
+msgid	"Post a followup..."
+msgstr	"Takip edici gönder..."
+
+#. TODO: replace hardcoded key-name in txt_post_error_ask_postpone
+#: src/lang.c:572
+#, fuzzy
+msgid	"An error has occurred while posting the article. If you think that this\n"
+	"error is temporary or otherwise correctable, you can postpone the article\n"
+	"and pick it up again with ^O later.\n"
+msgstr	"Makaleyi gönderirken hata oluþtu. Bu makalenin düzeltibeleceðini "
+	"düþünüyorsanýz, makaleyi erteleyebilir ve tekrar ^O komutunu kulanarak "
+	"ulaþabilirsiniz.\n"
+
+#: src/lang.c:575
+#, fuzzy
+msgid	"Posted articles history"
+msgstr	"Gönderilmiþ makalelerin geçmiþi"
+
+#: src/lang.c:576
+#, fuzzy, c-format
+msgid	"Post to newsgroup(s) [%s]> "
+msgstr	"habergrup(lar)a gönder [%s]> "
+
+#: src/lang.c:577
+#, fuzzy
+msgid	"-- post processing started --"
+msgstr	"-- gönderme iþlemi baþlatýldý --"
+
+#: src/lang.c:578
+#, fuzzy
+msgid	"-- post processing completed --"
+msgstr	"-- gönderme iþlemi tamamlandý --"
+
+#: src/lang.c:579
+#, fuzzy, c-format
+msgid	"Post subject [%s]> "
+msgstr	"Konuyu gönder (%s)> "
+
+#: src/lang.c:580
+#, fuzzy
+msgid	"# Summary of mailed/posted messages viewable by 'W' command from within tin.\n"
+msgstr	"# 'W' komutundan görünebilir postalanmýþ/gönderilmiþ iletilerin özeti.\n"
+
+#: src/lang.c:581
+#, fuzzy
+msgid	"Posting article..."
+msgstr	"Makale gönderiliyor..."
+
+#: src/lang.c:582
+#, fuzzy
+msgid	"Post postponed articles [%%s]? (%s/%s/%s/%s/%s): "
+msgstr	"Ertelenmiþ makaleleri gönder [%%s]? (%s/%s/%s/%s/%s): "
+
+#: src/lang.c:583
+#, fuzzy, c-format
+msgid	"Hot %s"
+msgstr	"Hot %s"
+
+#: src/lang.c:584
+#, fuzzy, c-format
+msgid	"Tagged %s"
+msgstr	"%s imlenmiþ"
+
+#: src/lang.c:585
+#, fuzzy, c-format
+msgid	"Untagged %s"
+msgstr	"%s imlenmemiþ"
+
+#: src/lang.c:586
+#, fuzzy
+msgid	"Processing mail messages marked for deletion."
+msgstr	"Silinmek için iþaretlenen iletilerin iþletilmesi."
+
+#: src/lang.c:587
+#, fuzzy
+msgid	"Processing saved articles marked for deletion."
+msgstr	"Silinmek için iþaretlenen kaydedilmiþ makalelerin iþletilmesi."
+
+#: src/lang.c:588
+#, fuzzy, c-format
+msgid	"Accept Followup-To? %s=post, %s=ignore, %s=quit: "
+msgstr	"Takip edilsin? %s=gönder, %s=yoksay, %s=terk et: "
+
+#: src/lang.c:589
+#, fuzzy
+msgid	"Article unchanged, abort mailing?"
+msgstr	"Makale deðiþtirilmesini, posta iptal edilsin mi?"
+
+#: src/lang.c:590
+#, fuzzy, c-format
+msgid	"Do you want to see postponed articles (%d)?"
+msgstr	"Ertelediðiniz makaleleri görmek ister misiniz (%d)?"
+
+#: src/lang.c:592
+#, fuzzy
+msgid	"Add quick kill filter?"
+msgstr	"Öldürücü hýzlý süzü eklensin mi?"
+
+#: src/lang.c:593
+#, fuzzy
+msgid	"Add quick selection filter?"
+msgstr	"Hýzlý seçenek süzü eklensin mi?"
+
+#: src/lang.c:594
+#, fuzzy
+msgid	"Do you really want to quit?"
+msgstr	"Terketmek istediðinizden emin misiniz?"
+
+#: src/lang.c:595
+#, fuzzy
+msgid	"%s=edit cancel message, %s=quit, %s=delete (cancel) [%%s]: "
+msgstr	"%s=düzenle iletiyi iptal et, %s=terk et, %s=sil (iptal) [%%s]: "
+
+#: src/lang.c:596
+#, fuzzy
+msgid	"You have tagged articles in this group - quit anyway?"
+msgstr	"Bu gruptaki makaleleri imlediniz-yine de terk edilsin mi?"
+
+#: src/lang.c:597
+#, fuzzy, c-format
+msgid	"%s=quit, %s=edit, %s=postpone: "
+msgstr	"%s=terk et, %s=düzenle, %s=ertele: "
+
+#: src/lang.c:598
+#, fuzzy, c-format
+msgid	"%s=quit %s=edit %s=save kill description: "
+msgstr	"%s=terk et %s=düzenle %s=kaydet tanýmý öldür: "
+
+#: src/lang.c:599
+#, fuzzy, c-format
+msgid	"%s=quit %s=edit %s=save select description: "
+msgstr	"%s=terk et %s=düzenle %s=kaydet tanýmý seç: "
+
+#: src/lang.c:600
+#, fuzzy
+msgid	"Do you really want to quit without saving your configuration?"
+msgstr	"Yapýlandýrmalarý kaydetmeden terk etmek istediðinizden emin misiniz?"
+
+#: src/lang.c:603
+#, fuzzy
+msgid	"Invalid range - valid are '0-9.$' eg. 1-$"
+msgstr	"Geçersiz aralýklar- '0-9.$' eg. 1-$ geçerlidir"
+
+#: src/lang.c:604
+#, fuzzy
+msgid	"Do you want to abort this operation?"
+msgstr	"Ýþlem durdurulsun mu?"
+
+#: src/lang.c:605
+#, fuzzy
+msgid	"Do you want to exit tin immediately?"
+msgstr	"tin'den hemen çýkmak istediðinizden emin misisniz?"
+
+#: src/lang.c:606
+#, fuzzy
+msgid	"Read response> "
+msgstr	"Yanýtý oku> "
+
+#: src/lang.c:607
+#, fuzzy
+msgid	"Reading ('q' to quit)..."
+msgstr	"('q' iptal) okunuyor..."
+
+#: src/lang.c:608
+#, fuzzy, c-format
+msgid	"Reading %sarticles..."
+msgstr	"Makaleler %sokunuyor..."
+
+#: src/lang.c:609
+#, fuzzy, c-format
+msgid	"Reading %sattributes file...\n"
+msgstr	"%sÖznitelik dosyasý okunuyor...\n"
+
+#: src/lang.c:610
+#, fuzzy, c-format
+msgid	"Reading %sconfig file...\n"
+msgstr	"%sYapýlandýrma dosyasý okunuyor\n"
+
+#: src/lang.c:611
+#, fuzzy
+msgid	"Reading filter file...\n"
+msgstr	"Süz dosyasý okunuyor...\n"
+
+#: src/lang.c:612
+#, fuzzy, c-format
+msgid	"Reading %s groups..."
+msgstr	"%s gruplar okunuyor..."
+
+#: src/lang.c:613
+#, fuzzy
+msgid	"Reading input history file...\n"
+msgstr	"Giriþ tarihçe dosyasý okunuyor...\n"
+
+#: src/lang.c:614
+#, fuzzy
+msgid	"Reading keymap file...\n"
+msgstr	"anahtarharita dosyasý okunuyor...\n"
+
+#: src/lang.c:615
+#, fuzzy
+msgid	"Reading groups from active file... "
+msgstr	"Gruplar yürürlükteki dosyadan okunuyor... "
+
+#: src/lang.c:616
+#, fuzzy
+msgid	"Reading groups from newsrc file... "
+msgstr	"Gruplar haberkaynak dosyasýndan okunuyor... "
+
+#: src/lang.c:617
+#, fuzzy
+msgid	"Reading newsgroups file... "
+msgstr	"Habergruplar dosyasý okunuyor... "
+
+#: src/lang.c:618
+#, fuzzy
+msgid	"Reading newsrc file..."
+msgstr	"Haberkaynak dosyasý okunuyor..."
+
+#: src/lang.c:620
+#, c-format
+msgid	"(%d:%02d remaining)"
+msgstr	""
+
+#: src/lang.c:622
+#, fuzzy, c-format
+msgid	"Bogus group %s removed."
+msgstr	"Bogus grubu %s kaldýrýldý."
+
+#: src/lang.c:623
+#, fuzzy, c-format
+msgid	"Error: rename %s to %s"
+msgstr	"Hata:%s'den %s'ye yeniden adlandýr"
+
+#: src/lang.c:624
+#, fuzzy
+msgid	"Reply to author..."
+msgstr	"Yetkiliye yanýt gönderiyor..."
+
+#: src/lang.c:625
+#, fuzzy
+msgid	"Repost"
+msgstr	"Yeniden gönder"
+
+#: src/lang.c:626
+#, fuzzy
+msgid	"Reposting article..."
+msgstr	"Makale yeniden gönderiliyor..."
+
+#: src/lang.c:627
+#, fuzzy, c-format
+msgid	"Repost article(s) to group(s) [%s]> "
+msgstr	"Makale(ler)i grup(lar)a gönder (%s)> "
+
+#: src/lang.c:628
+#, fuzzy
+msgid	"Reset newsrc?"
+msgstr	"Haberkaynak sýfýrlansýn mý?"
+
+#: src/lang.c:629
+#, fuzzy
+msgid	"Responses have been directed to the following newsgroups"
+msgstr	"Yanýtlar sonraki habergruplara yönlendirildi"
+
+#: src/lang.c:630
+#, fuzzy, c-format
+msgid	"Responses have been directed to poster. %s=mail, %s=post, %s=quit: "
+msgstr	"Yanýtlar göndericiye yönlendirildi. %s=postala, %s=gönder, %s=iptal: "
+
+#: src/lang.c:631
+#, fuzzy, c-format
+msgid	"RespNo %4d of %4d"
+msgstr	"YanýtNo %4d of %4d"
+
+#: src/lang.c:632
+#, fuzzy
+msgid	"Press <RETURN> to continue..."
+msgstr	"Devam etmek için <DÖNÜÞ> bas..."
+
+#: src/lang.c:634
+#, c-format
+msgid	"Select From    [%s] (y/n): "
+msgstr	""
+
+#: src/lang.c:635
+#, fuzzy
+msgid	"Select Lines: (</>num): "
+msgstr	"Satýrlarý seç: (</>num): "
+
+#: src/lang.c:636
+#, fuzzy
+msgid	"Auto-select Article Menu"
+msgstr	"Otomatik Seçme Makale Menüsü"
+
+#: src/lang.c:637
+#, fuzzy, c-format
+msgid	"Select Msg-Id  [%s] (f/l/o/n): "
+msgstr	"Ýleti-kimliði seçiniz [%s] (f/l/o/n): "
+
+#: src/lang.c:638
+#, fuzzy
+msgid	"Select pattern scope: "
+msgstr	"Örüntü alanýný seç: "
+
+#: src/lang.c:639
+#, fuzzy, c-format
+msgid	"Select Subject [%s] (y/n): "
+msgstr	"Konuyu seç [%s] (y/n): "
+
+#: src/lang.c:640
+#, fuzzy
+msgid	"Select text pattern : "
+msgstr	"Alan metnini seç : "
+
+#: src/lang.c:641
+#, fuzzy
+msgid	"Select time in days   : "
+msgstr	"Günlük olarak zamaný seç: "
+
+#: src/lang.c:642
+#, fuzzy, c-format
+msgid	"# %s server configuration file\n"
+	"# This file was automatically saved by %s %s %s (\"%s\")\n"
+	"#\n"
+	"# Do not edit while %s is running, since all your changes to this file\n"
+	"# will be overwritten when you leave %s.\n"
+	"# Do not edit at all if you don't know what you do.\n"
+	"############################################################################\n"
+	"\n"
+msgstr	"# %ssunucu yapýlandýrma dosyasý\n"
+	"# Bu dosya otomatik olarak kaydedildi %s %s %s (\"%s\")\n"
+	"#\n"
+	"# %s çalýþýrken deðiþtirmeyiniz, çünkü her deðiþikler\n"
+	"# terk ettiðinde yeniden yazýlacak %s.\n"
+	"# Ne yapmak gerektiðinizi bilmiyorsanýz lütfen deðiþtirmeyiniz.\n"
+
+#: src/lang.c:648
+#, fuzzy
+msgid	"Showing unread groups only"
+msgstr	"Sadece okunmamýþ gruplar görünüyor"
+
+#: src/lang.c:649
+#, fuzzy
+msgid	"Subject: line (ignore case)   "
+msgstr	"Konu: satýr (büyük küçük harf durumunu yoksay)"
+
+#: src/lang.c:650
+#, fuzzy
+msgid	"Subject: line (case sensitive)"
+msgstr	"Konu: satýr (büyük-küçük duyarlý)"
+
+#: src/lang.c:651
+#, fuzzy
+msgid	"Save"
+msgstr	"Kaydet"
+
+#: src/lang.c:652
+#, fuzzy, c-format
+msgid	"Save '%s' (%s/%s)?"
+msgstr	"Kaydedilsin mi '%s' (%s/%s)?"
+
+#: src/lang.c:653
+#, fuzzy
+msgid	"Save configuration before continuing?"
+msgstr	"Devam etmeden düzenlemeleri kaydet?"
+
+#: src/lang.c:654
+#, fuzzy
+msgid	"Save filename> "
+msgstr	"Dosyaadý kaydet> "
+
+#: src/lang.c:655
+#, fuzzy
+msgid	"Saved"
+msgstr	"Kaydedildi"
+
+#: src/lang.c:656
+#, fuzzy, c-format
+msgid	"%4d unread (%4d hot) %s in %s\n"
+msgstr	"%4d okunmamýþ (%4d hot) %s in %s\n"
+
+#: src/lang.c:657
+#, fuzzy, c-format
+msgid	"Saved %s...\n"
+msgstr	"Kaydedildi %s...\n"
+
+#: src/lang.c:658
+#, fuzzy
+msgid	"Nothing was saved"
+msgstr	"Hiçbirþey kaydedilmedi"
+
+#: src/lang.c:659
+#, fuzzy, c-format
+msgid	"\n"
+	"%s %d %s from %d %s\n"
+msgstr	"\n"
+	"%s %d %s 'dan %d %s\n"
+
+#: src/lang.c:660
+#, fuzzy, c-format
+msgid	"-- %s saved to %s%s --"
+msgstr	"-- %s kaydedildi %s%s --"
+
+#: src/lang.c:661
+#, fuzzy, c-format
+msgid	"-- %s saved to %s - %s --"
+msgstr	"-- %s kaydedildi %s - %s --"
+
+#: src/lang.c:662
+#, fuzzy
+msgid	"Saving..."
+msgstr	"Kaydediliyor..."
+
+#: src/lang.c:663
+#, fuzzy, c-format
+msgid	"%s: Screen initialization failed"
+msgstr	"%s: Ekran baþlatma baþarýsýz"
+
+#: src/lang.c:665
+#, fuzzy, c-format
+msgid	"%s: screen is too small\n"
+msgstr	"%s: ekran çok küçük\n"
+
+#: src/lang.c:667
+#, fuzzy, c-format
+msgid	"screen is too small, %s is exiting\n"
+msgstr	"ekran çok küçük, %s çýkýyor\n"
+
+#: src/lang.c:668
+#, fuzzy, c-format
+msgid	"Search backwards [%s]> "
+msgstr	"Geri ara [%s]> "
+
+#: src/lang.c:669
+#, fuzzy, c-format
+msgid	"Search body [%s]> "
+msgstr	"Gövdeyi ara [%s]> "
+
+#: src/lang.c:670
+#, fuzzy, c-format
+msgid	"Search forwards [%s]> "
+msgstr	"Ýleri ara [%s]> "
+
+#: src/lang.c:671
+#, fuzzy
+msgid	"Searching..."
+msgstr	"Arýyor..."
+
+#: src/lang.c:672
+#, fuzzy, c-format
+msgid	"Searching article %d of %d ('q' to abort)..."
+msgstr	"Makale aranýyor %d of %d ('q' durdur)..."
+
+#: src/lang.c:673
+#, fuzzy
+msgid	"Select article> "
+msgstr	"Makale seç> "
+
+#: src/lang.c:674
+#, fuzzy
+msgid	"Select option number before text or use arrow keys and <CR>. 'q' to quit."
+msgstr	"Metin ve ok tuþu kullanmadan seçenek ve <CR>düðmelerini basýnýz. terk etmek "
+	"için 'q'."
+
+#: src/lang.c:675
+#, fuzzy
+msgid	"Select group> "
+msgstr	"Grup seç> "
+
+#: src/lang.c:676
+#, fuzzy, c-format
+msgid	"Enter selection pattern [%s]> "
+msgstr	"Seçme örüntüsünü girin [%s]> "
+
+#: src/lang.c:677
+#, fuzzy
+msgid	"Select thread > "
+msgstr	"En küçük yürütme birimlerini seç > "
+
+#: src/lang.c:678
+#, fuzzy, c-format
+msgid	"%s %s %s (\"%s\") [%s]: send a DETAILED bug report to %s\n"
+msgstr	"%s %s %s (\"%s\") [%s]: DETAYLI hata raporu gönder %s\n"
+
+#: src/lang.c:679
+#, fuzzy
+msgid	"servers active-file"
+msgstr	"Sunucular etkindosyasý"
+
+#: src/lang.c:680
+#, fuzzy
+msgid	"Cannot move into new newsgroups. Subscribe first..."
+msgstr	"Habergruplara giriþ yapýlamýyor. Önce abone ol..."
+
+#: src/lang.c:681
+#, fuzzy
+msgid	"<SPACE>"
+msgstr	"<ARALIK>"
+
+#: src/lang.c:682
+#, fuzzy, c-format
+msgid	"Starting: (%s)"
+msgstr	"Baþlatma: (%s)"
+
+#: src/lang.c:683
+#, fuzzy, c-format
+msgid	"List Thread (%d of %d)"
+msgstr	"En küçük yürütme birimlerini listele (%d of %d)"
+
+#: src/lang.c:684
+#, fuzzy, c-format
+msgid	"Thread (%.*s)"
+msgstr	"En küçük yürütme birimi (%.*s)"
+
+#: src/lang.c:685
+#, fuzzy
+msgid	"Enter wildcard subscribe pattern> "
+msgstr	"Joker abone alanýna giriniz> "
+
+#: src/lang.c:686
+#, fuzzy, c-format
+msgid	"subscribed to %d groups"
+msgstr	"%d gruplara abone olundu"
+
+#: src/lang.c:687
+#, fuzzy, c-format
+msgid	"Subscribed to %s"
+msgstr	"Abone olundu %s"
+
+#: src/lang.c:688
+#, fuzzy
+msgid	"Subscribing... "
+msgstr	"Abone olunuyor... "
+
+#: src/lang.c:689
+#, fuzzy
+msgid	"Repost or supersede article(s) [%%s]? (%s/%s/%s): "
+msgstr	"Makale(ler)i yeniden gönder yada deðiþtir (s) [%%s]? (%s/%s/%s): "
+
+#: src/lang.c:690
+#, fuzzy, c-format
+msgid	"Supersede article(s) to group(s) [%s]> "
+msgstr	"Makale(ler)i Grup(lar)a yerini al [%s]> "
+
+#: src/lang.c:691
+#, fuzzy
+msgid	"Superseding article ..."
+msgstr	"Makaleyi deðiþtiriyor..."
+
+#: src/lang.c:692
+#, fuzzy, c-format
+msgid	"\n"
+	"Stopped. Type 'fg' to restart %s\n"
+msgstr	"\n"
+	"Durduruldu. Yeniden baþlatmak için 'fg' yaz %s\n"
+
+#: src/lang.c:694
+#, fuzzy, c-format
+msgid	"%d days"
+msgstr	"%d günler"
+
+#: src/lang.c:695
+#, fuzzy
+msgid	"<TAB>"
+msgstr	"<SEKME>"
+
+#: src/lang.c:696
+msgid	"TeX "
+msgstr	""
+
+#: src/lang.c:697
+#, fuzzy
+msgid	"# Default action/prompt strings\n"
+msgstr	"# Varsayýlan iþlem/komut dizgileri\n"
+
+#: src/lang.c:698
+#, fuzzy
+msgid	"# Defaults for quick (1 key) kill & auto-selection filters\n"
+	"# header=NUM  0,1=Subject: 2,3=From: 4=Message-ID: & full References: line\n"
+	"#             5=Message-ID: & last References: entry only\n"
+	"#             6=Message-ID: entry only 7=Lines:\n"
+	"# global=ON/OFF  ON=apply to all groups OFF=apply to current group\n"
+	"# case=ON/OFF    ON=filter case sensitive OFF=ignore case\n"
+	"# expire=ON/OFF  ON=limit to default_filter_days OFF=don't ever expire\n"
+msgstr	"# Varsayýlanlarý (1 tuþ) kill & otomatik seçme süzleri\n"
+	"# baþlýk=NUM  0,1=Konu: 2,3=dan: 4=Ýleti kimliði: & tam referanslar: satýr\n"
+	"#             5=Ýleti Kimliði: & son referanslar: sadece giriþ\n"
+	"#             6=Ýleti Kimliði: sadece giriþ 7=Satýrlar:\n"
+	"# global=ON/OFF  ON=bütün gruplara uygula OFF=mevcut gruba uygula\n"
+	"# case=ON/OFF    ON=filter case sensitive OFF=ignore case\n"
+	"# expire=ON/OFF  ON=limit to default_filter_days OFF=don't ever expire\n"
+
+#: src/lang.c:711
+#, fuzzy
+msgid	"# If ON use print current subject or newsgroup description in the last line\n"
+msgstr	"# ON durumdaysa mevcut konu yada son satýrdaki habergrup tanýmý için yazýcýyý "
+	"kullanýnýz\n"
+
+#: src/lang.c:712
+#, fuzzy
+msgid	"# Host & time info used for detecting new groups (don't touch)\n"
+msgstr	"# Yeni gruplarý algýlamak için ana sunucu& zaman bilgileri kullanýnýz "
+	"(dokunmayýnýz)\n"
+
+#: src/lang.c:713
+#, fuzzy
+msgid	"There is no news\n"
+msgstr	"Hiçbir haber yok\n"
+
+#: src/lang.c:714
+#, fuzzy
+msgid	"Thread"
+msgstr	"En küçük yürütme birimi"
+
+#: src/lang.c:715
+#, fuzzy
+msgid	"Thread Level Commands"
+msgstr	"En Küçük Yürütme Birim Komut Düzeyi"
+
+#: src/lang.c:716
+#, fuzzy
+msgid	"Thread deselected"
+msgstr	"En küçük yürütme birimin seçimi iptal edildi"
+
+#: src/lang.c:717
+#, fuzzy
+msgid	"Thread selected"
+msgstr	"En küçük yürütme birimi seçildi"
+
+#: src/lang.c:719
+#, fuzzy
+msgid	"threads"
+msgstr	"en küçük yürütme birimleri"
+
+#: src/lang.c:721
+#, fuzzy
+msgid	"Thread range"
+msgstr	"en küçük yürütme birimi aralýðý"
+
+#: src/lang.c:722
+#, fuzzy
+msgid	"thread"
+msgstr	"en küçük yürütme birimi"
+
+#: src/lang.c:723
+#, fuzzy, c-format
+msgid	"Thread %4s of %4s"
+msgstr	"En küçük yürütme birimi %4s of %4s"
+
+#: src/lang.c:724
+#, fuzzy
+msgid	"Threading articles..."
+msgstr	"Makaleler baðlanýyor..."
+
+#: src/lang.c:725
+#, fuzzy, c-format
+msgid	"Toggled word highlighting %s"
+msgstr	"Geçiþ kelime belirtiliyor %s"
+
+#: src/lang.c:726
+#, fuzzy
+msgid	"Toggled rot13 encoding"
+msgstr	"Geçiþ rot13 kodlanýyor"
+
+#: src/lang.c:727
+#, fuzzy, c-format
+msgid	"Toggled german TeX encoding %s"
+msgstr	"Geçiþ almanca TeX kodlanýyor %s"
+
+#: src/lang.c:728
+#, fuzzy, c-format
+msgid	"Toggled tab-width to %d"
+msgstr	"Geçiþ sekme geniþliði %d"
+
+#: src/lang.c:729
+#, fuzzy, c-format
+msgid	"%d Trying to dotlock %s"
+msgstr	"%d kilitlemeye deniyor %s"
+
+#: src/lang.c:730
+#, fuzzy, c-format
+msgid	"%d Trying to lock %s"
+msgstr	"%d kilitlemeye çalýþýyor %s"
+
+#: src/lang.c:731
+#, fuzzy
+msgid	"           h=help\n"
+msgstr	"         h=yardým\n"
+
+#: src/lang.c:733
+#, fuzzy
+msgid	"Unlimited"
+msgstr	"Sýnýrsýz"
+
+#: src/lang.c:734
+#, fuzzy
+msgid	"Enter wildcard unsubscribe pattern> "
+msgstr	"Abone iptal joker alanýna giriniz> "
+
+#: src/lang.c:735
+#, fuzzy, c-format
+msgid	"Error decoding %s : %s"
+msgstr	"Hata kod çözülmesi %s: %s"
+
+#: src/lang.c:736
+#, fuzzy
+msgid	"No end."
+msgstr	"Sonu yok."
+
+#: src/lang.c:737
+#, fuzzy, c-format
+msgid	"%s successfully decoded."
+msgstr	"%s kod baþarýyla çözüldü."
+
+#: src/lang.c:738
+#, fuzzy, c-format
+msgid	"%*s[-- %s/%s, %suuencoded file, %d lines, name: %s --]\n"
+	"\n"
+msgstr	"%*s[-- %s/%s, %s metinsele kodlama dosyasý, %d satýr, ad: %s --]\n"
+	"\n"
+
+#: src/lang.c:739
+#, fuzzy
+msgid	"unread "
+msgstr	"okunmamýþ "
+
+#: src/lang.c:740
+#, fuzzy, c-format
+msgid	"unsubscribed from %d groups"
+msgstr	"%d gruptan abonelik iptal edildi"
+
+#: src/lang.c:741
+#, fuzzy, c-format
+msgid	"Unsubscribed from %s"
+msgstr	"abonelik iptal edildi %s"
+
+#: src/lang.c:742
+#, fuzzy
+msgid	"Unsubscribing... "
+msgstr	"Abonelik iptal oluyor... "
+
+#: src/lang.c:743
+#, fuzzy
+msgid	"Unthreading articles..."
+msgstr	"Makalelerin baðlantýsý sonlanýyor..."
+
+#: src/lang.c:744
+#, fuzzy
+msgid	"Updated"
+msgstr	"Güncelendi"
+
+#: src/lang.c:745
+#, fuzzy
+msgid	"Updating"
+msgstr	"Güncellenme"
+
+#: src/lang.c:746
+#, fuzzy, c-format
+msgid	"Opening %s\n"
+msgstr	"Açýlma %s\n"
+
+#: src/lang.c:747
+#, fuzzy
+msgid	"No more URL's in this article"
+msgstr	"Makalede Birörnek Kaynak Bulucu yok"
+
+#: src/lang.c:748
+#, fuzzy
+msgid	"Use MIME display program for this message?"
+msgstr	"Bu ileti için MIME(Çok Amaçlý Internet Posta Uzantýlarý) ekran programý "
+	"kullan?"
+
+#: src/lang.c:749
+#, fuzzy
+msgid	"  -c       mark all news as read in subscribed newsgroups (batch mode)"
+msgstr	"  -c       abone edilmiþ habergruplara bütün haberleri okunmuþ olarak "
+	"iþaretleyiniz (toplu mod)"
+
+#: src/lang.c:750
+#, fuzzy
+msgid	"  -Z       return status indicating if any unread news (batch mode)"
+msgstr	"  -Z       Okunmamýþ haber varsa geri statüsüne gelir (toplu mod)"
+
+#: src/lang.c:751
+#, fuzzy
+msgid	"  -q       don't check for new newsgroups"
+msgstr	"  -q       yeni habergruplarý için deneme"
+
+#: src/lang.c:752
+#, fuzzy
+msgid	"  -X       don't save any files on quit"
+msgstr	"  -X       çýkýþta hiçbir dosya kaydetme"
+
+#: src/lang.c:753
+#, fuzzy
+msgid	"  -d       don't show newsgroup descriptions"
+msgstr	"  -d       habergrubu tanýmlarý gösterme"
+
+#: src/lang.c:754
+#, fuzzy
+msgid	"  -G limit get only limit articles/group"
+msgstr	"  -G limit sadece makale/grup sýnýrý elde et"
+
+#: src/lang.c:755
+#, fuzzy, c-format
+msgid	"  -H       help information about %s"
+msgstr	"  -H       yardým bilgisi %s"
+
+#: src/lang.c:756
+#, fuzzy
+msgid	"  -h       this help message"
+msgstr	"  -h       ileti yardýmý"
+
+#: src/lang.c:757
+#, fuzzy, c-format
+msgid	"  -I dir   news index file directory [default=%s]"
+msgstr	"  -I dir   haber dizin dosyasý [varsayýlant=%s]"
+
+#: src/lang.c:758
+#, fuzzy
+msgid	"  -u       update index files (batch mode)"
+msgstr	"  -u       guncelleme dizin dosyasý (toplu modu)"
+
+#: src/lang.c:759
+#, fuzzy, c-format
+msgid	"  -m dir   mailbox directory [default=%s]"
+msgstr	"  -m dir   posta kutusu dizini [varsayýlan=%s]"
+
+#: src/lang.c:760
+#, fuzzy, c-format
+msgid	"\n"
+	"Mail bug reports/comments to %s"
+msgstr	"\n"
+	"posta hata raporu/açýklama %s"
+
+#: src/lang.c:761
+#, fuzzy
+msgid	"  -N       mail new news to your posts (batch mode)"
+msgstr	"  -N       Gönderilenlere yeni haber gönder (toplu mod)"
+
+#: src/lang.c:762
+#, fuzzy
+msgid	"  -M user  mail new news to specified user (batch mode)"
+msgstr	"  -M kulanýcýsý  özel kulanýcýya yeni haber göder (toplu mod)"
+
+#: src/lang.c:763
+#, fuzzy, c-format
+msgid	"  -f file  subscribed to newsgroups file [default=%s]"
+msgstr	"  -f dosyasý  habergruplar dosyasýna abone olundu (varsayýlan=%s)"
+
+#: src/lang.c:764
+#, fuzzy
+msgid	"  -x       no posting mode"
+msgstr	"  -x       iþlem modu yok"
+
+#: src/lang.c:765
+#, fuzzy
+msgid	"  -w       post an article and exit"
+msgstr	"  -w       makale gönder ve çýk"
+
+#: src/lang.c:766
+#, fuzzy
+msgid	"  -o       post all postponed articles and exit"
+msgstr	"  -o       ertelenmiþ bütün makaleleri gönder ve çýk"
+
+#: src/lang.c:767
+#, fuzzy
+msgid	"  -r       read news remotely from default NNTP server"
+msgstr	"  -r       varsayýlan NTTP sunucusundan haberleri uzaktan oku"
+
+#: src/lang.c:768
+#, fuzzy
+msgid	"  -R       read news saved by -S option"
+msgstr	"  -R       -S seçeneði basarak kaydedilen haberleri oku"
+
+#: src/lang.c:769
+#, fuzzy, c-format
+msgid	"  -s dir   save news directory [default=%s]"
+msgstr	"  -s dir   haber dizinini kaydet (varsayýlan=%s)"
+
+#: src/lang.c:770
+#, fuzzy
+msgid	"  -S       save new news for later reading (batch mode)"
+msgstr	"  -S       daha sonra okumak üzere yeni haberleri kaydet (toplu mod)"
+
+#: src/lang.c:771
+#, fuzzy
+msgid	"  -z       start if any unread news"
+msgstr	"  -z       okunmamýþ haber varsa baþla"
+
+#: src/lang.c:772
+#, fuzzy, c-format
+msgid	"A Usenet reader.\n"
+	"\n"
+	"Usage: %s [options] [newsgroup[,...]]"
+msgstr	"Usenet okuyucusu.\n"
+	"\n"
+	"Kullaným: %s [seçenekler] [habergrubu[,...]]"
+
+#: src/lang.c:773
+#, fuzzy
+msgid	"  -v       verbose output for batch mode options"
+msgstr	"  -v       toplu kip seçenekleri için gereksiz çýkýþ"
+
+#: src/lang.c:774
+#, fuzzy
+msgid	"  -V       print version & date information"
+msgstr	"  -V       Sürüm & tarih bilgilerini yazdýr"
+
+#: src/lang.c:775
+#, fuzzy, c-format
+msgid	"%s only useful without batch mode operations\n"
+msgstr	"%s sadece toplu kip seçenekleri yoksa kullanýþlý\n"
+
+#: src/lang.c:776
+#, fuzzy, c-format
+msgid	"%s only useful for batch mode operations\n"
+msgstr	"%s sadece toplu kip seçenekleri varsa kullanýþlý\n"
+
+#: src/lang.c:778
+#, fuzzy, c-format
+msgid	"\n"
+	"%s%d out of range (0 - %d). Reset to 0"
+msgstr	"\n"
+	"%s%d erimin dýþýnda (0 - %d), Sýfýrla"
+
+#: src/lang.c:779
+#, fuzzy, c-format
+msgid	"View '%s' (%s/%s)?"
+msgstr	"Göster '%s' (%s/%s)?"
+
+#: src/lang.c:781
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: posting exceeds %d columns. Line %d is the first long one:\n"
+	"%-100s\n"
+msgstr	"\n"
+	"Uyarý: gönderme %d sütunlarýný geçiyor. %d en uzun ilk satýr:\n"
+	"%-100s\n"
+
+#: src/lang.c:782
+#, fuzzy
+msgid	"\n"
+	"Warning: article unchanged after editing\n"
+msgstr	"\n"
+	"Uyarý: makale düzenlendikten sonra deðiþtirildi\n"
+
+#: src/lang.c:783
+#, fuzzy
+msgid	"\n"
+	"Warning: \"Subject:\" contains only whitespaces.\n"
+msgstr	"\n"
+	"Uyarý: \"Konu:\" sadece beyazboþluklar var.\n"
+
+#: src/lang.c:784
+#, fuzzy
+msgid	"\n"
+	"Warning: \"Subject:\" begins with \"Re: \" but there are no \"References:\".\n"
+msgstr	"\n"
+	"Uyarý: \"Konu:\" ,  \"Re: \" ile baþlar ama \"Referanslar:\" yok.\n"
+
+#: src/lang.c:786
+#, fuzzy
+msgid	"\n"
+	"Warning: Article has \"References:\" but \"Subject:\" does not begin\n"
+	"         with \"Re: \" and does not contain \"(was:\".\n"
+msgstr	"\n"
+	"Uyarý: Makalede \"Referanslar:\"  var \"Konu:\"    \"Re: \" ile\n"
+	"       baþlmýyor ve \"(was:\" yok.\n"
+
+#: src/lang.c:789
+#, fuzzy
+msgid	"Read carefully!\n"
+	"\n"
+	"  You are about to cancel an article seemingly written by you. This will "
+	"wipe\n"
+	"  the article from most  news servers  throughout the world,  but there is "
+	"no\n"
+	"  guarantee that it will work.\n"
+	"\n"
+	"This is the article you are about to cancel:\n"
+	"\n"
+msgstr	"Dikkatle oku!\n"
+	"\n"
+	" Tarafýnýzdan yazýlan bir makaleyi iptal etmek üzeresiniz. Bu, makaleyi "
+	"dünyadaki\n"
+	" birçok haber sunucusundan silecektir, ama çalýþacaðýnýn da bir garantisi "
+	"yok.\n"
+	"\n"
+	"Ýptal etmek üzere olduðunuz makale bu:\n"
+	"\n"
+
+#: src/lang.c:793
+#, fuzzy
+msgid	"\n"
+	"Warning: You are using a non-plain transfer encoding (such as base64 or\n"
+	"         quoted-printable) and an external inews program to submit your\n"
+	"         article. If a signature is appended by that inews program it will\n"
+	"         not be encoded properly.\n"
+msgstr	"\n"
+	"Uyarý: Makalenizi sunmak için düz olmayan bir transfer kodlamasý (base64 ya "
+	"da\n"
+	"          imlenen-yazýlabilir gibi) ve dýþ inews programý kullanýyorsunuz. "
+	"Eðer o\n"
+	"          inews programý tarafýndan bir imza iliþtirildiyse, uygun þekilde "
+	"kodlanamaz.\n"
+
+#: src/lang.c:798
+#, fuzzy, c-format
+msgid	"\n"
+	"\n"
+	"You are upgrading to tin %s from an earlier version.\n"
+	"Some values in your %s file have changed!\n"
+	"Read WHATSNEW, etc...\n"
+msgstr	"\n"
+	"\n"
+	"Daha önceki bir sürümden tin %s 'e güncelliyorsunuz.\n"
+	"%s dosyanýzdaki bazi deðerler deðiþtirilmiþtir!\n"
+	"Oku WHATSNEW, vb...\n"
+
+#: src/lang.c:800
+#, fuzzy, c-format
+msgid	"\n"
+	"\n"
+	"You are downgrading to tin %s from a more recent version!\n"
+	"Some values in your %s file may be ignored, others might have changed!\n"
+msgstr	"\n"
+	"\n"
+	"Yeni bir sürümden tin %s 'e alçaltýyorsunuz!\n"
+	"%s dosyanýdaki bazý deðerler yoksayýlabiri, diðerleri deðiþtirilebilir!\n"
+
+#: src/lang.c:803
+#, fuzzy, c-format
+msgid	"Warning: tin wrote fewer groups to your\n"
+	"\t%s\n"
+	"than it read at startup. If you didn't unsubscribe from %ld %s during\n"
+	"this session this indicates an error and you should backup your %s\n"
+	"before you start tin once again!\n"
+msgstr	"Uyarý: tin baþlangýçta okuduðundan\n"
+	"\t%s\n"
+	"daha az küme yazdý. Bu oturum sýrasýnda %ld %s 'den aboneliðinizi "
+	"almadýysanýz\n"
+	"bu bir hata gösterir ve tini tekrar baþlatmadan %s'i\n"
+	"yedeklemeniz gerekmektedir!\n"
+
+#: src/lang.c:807
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: Found %d '-- \\n' lines, this may confuse some people.\n"
+msgstr	"\n"
+	"Uyarý: Bulundu %d '-- \\n' satýrlar, bazý insanlarýn kafasý karýþabilir.\n"
+
+#: src/lang.c:808
+#, fuzzy, c-format
+msgid	"Warning: Only %d out of %d articles were saved"
+msgstr	"Uyarý: Sadece %d 'de %d makale kaydedildi"
+
+#: src/lang.c:809
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: Your signature  is longer than %d lines.  Since signatures usually "
+	"do\n"
+	"         not  transport any  useful information,  they should be as  short "
+	"as\n"
+	"         possible.\n"
+msgstr	"\n"
+	"Uyarý: Ýmzanýz %d satýrlarýndan daha uzun. Ýmzalar genellikle\n"
+	"         iþe yarar bilgi aktarmadýklarý için, olabildikleri kadar kýsa\n"
+	"        olmalýlar.\n"
+
+#: src/lang.c:813
+#, fuzzy, c-format
+msgid	"Warning: this mail address may contain a spamtrap. %s=continue, %s=abort? "
+msgstr	"Uyarý: bu posta adresinde mesaj yaðanaðý tuzaðý olabilir. %s=devam. "
+	"%s=durdur? "
+
+#: src/lang.c:814
+#, fuzzy
+msgid	"\n"
+	"Warning: Signatures should start with '-- \\n' not with '--\\n'.\n"
+msgstr	"\n"
+	"Uyarý: Ýmzalar '-- \\n' ile baþlamalý '--\\n' ile deðil.\n"
+
+#: src/lang.c:815
+#, fuzzy
+msgid	"Writing attributes file..."
+msgstr	"Öznitelikler dosylasýný yazýyor..."
+
+#: src/lang.c:817
+#, fuzzy, c-format
+msgid	"%d Responses"
+msgstr	"%d Yanýtlar"
+
+#: src/lang.c:819
+#, fuzzy, c-format
+msgid	"Added %d %s"
+msgstr	"Eklendi %d %s"
+
+#: src/lang.c:820
+#, fuzzy
+msgid	"No unsubscribed groups to show"
+msgstr	"Gösterilecek abonelikten çýkmýþ küme yok"
+
+#: src/lang.c:821
+#, fuzzy
+msgid	"Showing subscribed to groups only"
+msgstr	"Sadece abone kümeleri göster"
+
+#: src/lang.c:822
+#, fuzzy
+msgid	"Yes "
+msgstr	"Evet"
+
+#: src/lang.c:823
+#, fuzzy
+msgid	"    You have mail\n"
+msgstr	"     Postanýz var\n"
+
+#: src/lang.c:828
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: Posting is in %s and contains characters which are not\n"
+	"         in your selected MM_NETWORK_CHARSET: %s.\n"
+	"         These characters will be replaced by '?' if you post this\n"
+	"         article unchanged. To avoid garbling your article please either\n"
+	"         edit it and remove those characters or change the setting of\n"
+	"         MM_NETWORK_CHARSET to a suitable value for your posting via the\n"
+	"         M)enu option.\n"
+msgstr	"\n"
+	"Uyarý: Gönderim %s 'de ve seçtiðiniz\n"
+	"     MM_NETWORK_CHARSETte olmayan karakterler içeriyor: %s.\n"
+	"     Bu makaleyi deðiþtirmeden gönderirseniz bu karakterler '?' ile\n"
+	"    deðiþtirilecektir. Makalenizi karamþýklaþtýrmamak için\n"
+	"    düzenleyip karakterleri silin ya da  MM_NETWORK_CHARSET\n"
+	"    ayarlarýný M)enü seçeneði ile yollamak için daha uygun bir þekilde\n"
+	"    deðiþtirin.\n"
+
+#: src/lang.c:839
+#, fuzzy, c-format
+msgid	"Redefined key %s '%s' -> '%s'\n"
+msgstr	"Yeniden tanýmlanan tuþ %s '%s' -> '%s'\n"
+
+#: src/lang.c:840
+#, fuzzy
+msgid	"  -D       debug mode 1=NNTP 2=ALL"
+msgstr	"  -D       hata ayýklma kipi 1=NNTP 2=HEPSÝ"
+
+#: src/lang.c:844
+#, fuzzy
+msgid	"Read carefully!\n"
+	"\n"
+	"  You are about to cancel an article seemingly not written by you.  This "
+	"will\n"
+	"  wipe the article from lots of news servers throughout the world;\n"
+	"  Usenet's majority  considers this  rather inappropriate,  to say the "
+	"least.\n"
+	"  Only press 'd'  if you are  absolutely positive  that you are ready to "
+	"take\n"
+	"  the rap.\n"
+	"\n"
+	"This is the article you are about to cancel:\n"
+	"\n"
+msgstr	"Dikkatle okuyun!\n"
+	"\n"
+	" Tarafýnýzdan yazýlmýþ olmayan bir makaleyi iptal etmek üzeresiniz. Bu\n"
+	" dünyadaki birçok sunucudan bu makaleyi silecektir;\n"
+	" en azýndan Usenet'in çoðunluðu bunu uygunsuz bulmaktadýr.\n"
+	" Bu eleþtiriyi almaya hazýr olduðunuzdan kesinlikle eminseniz\n"
+	" sadece 'd' ye basýn.\n"
+	"\n"
+	"Ýptal etmek üzere olduðunuz makale bu:\n"
+	"\n"
+
+#: src/lang.c:853
+#, fuzzy
+msgid	"toggle color"
+msgstr	"renk deðiþtir"
+
+#: src/lang.c:854
+msgid	"# Changing colors of several screen parts\n"
+	"# Possible values are:\n"
+	"#  -1 = default (white for foreground and black for background)\n"
+	"#   0 = black\n"
+	"#   1 = red\n"
+	"#   2 = green\n"
+	"#   3 = brown\n"
+	"#   4 = blue\n"
+	"#   5 = pink\n"
+	"#   6 = cyan\n"
+	"#   7 = white\n"
+	"# These are *only* for foreground:\n"
+	"#   8 = gray\n"
+	"#   9 = light red\n"
+	"#  10 = light green\n"
+	"#  11 = yellow\n"
+	"#  12 = light blue\n"
+	"#  13 = light pink\n"
+	"#  14 = light cyan\n"
+	"#  15 = light white\n"
+	"\n"
+msgstr	""
+
+#: src/lang.c:874
+#, fuzzy
+msgid	"  -a       toggle color flag"
+msgstr	"  -a       renk bayraðýný deðiþtir"
+
+#: src/lang.c:878
+#, fuzzy
+msgid	"\n"
+	"Error: Followup-To set to more than one newsgroup!\n"
+msgstr	"\n"
+	"Hata: Birden fazla haber grubu için Takip-Et ayarlandý!\n"
+
+#: src/lang.c:879
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: cross-posting to %d newsgroups and no Followup-To line!\n"
+msgstr	"\n"
+	"Hata: %d haber gruubuna çapraz gönderiyor ve Takip-Et satýrý yok!\n"
+
+#: src/lang.c:880
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: \"%s\" is not a valid newsgroup!\n"
+msgstr	"\n"
+	"Hata: \"%s\" geçerli bir haber grubu deðil!\n"
+
+#: src/lang.c:882
+#, fuzzy
+msgid	"\n"
+	"Warning: Followup-To set to more than one newsgroup!\n"
+msgstr	"\n"
+	"Uyarý: Birden fazla haber grubu için Takip-Et ayarlandý!\n"
+
+#: src/lang.c:883
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: cross-posting to %d newsgroups and no Followup-To line!\n"
+msgstr	"\n"
+	"Hata: %d haber gruubuna çapraz gönderiyor ve Takip-Et satýrý yok!\n"
+
+#: src/lang.c:884
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: \"%s\" is not in your newsrc, it may be invalid at this site!\n"
+msgstr	"\n"
+	"Uyarý:  \"%s\" sizin newsrc'niz deðil, bu sitede geçersiz olabilir!\n"
+
+#: src/lang.c:885
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: \"%s\" is not a valid newsgroup at this site!\n"
+msgstr	"\n"
+	"Uyaý:  \"%s\" bu sitede geçerli bir newsrc deðil!\n"
+
+#: src/lang.c:889
+#, fuzzy, c-format
+msgid	"%d files successfully written from %d articles. %d %s occurred."
+msgstr	"%d dosyalarý %d makalelerinden baþarýyla yazýldý. %d%s meydana geldi."
+
+#: src/lang.c:890
+#, fuzzy
+msgid	"Missing parts."
+msgstr	"Bazý yerler eksik."
+
+#: src/lang.c:891
+#, fuzzy
+msgid	"No beginning."
+msgstr	"Baþlangýç yok."
+
+#: src/lang.c:892
+#, fuzzy
+msgid	"No data."
+msgstr	"Veri yok."
+
+#: src/lang.c:893
+#, fuzzy
+msgid	"Unknown error."
+msgstr	"Bilinmeyen hata."
+
+#: src/lang.c:896
+#, fuzzy, c-format
+msgid	"\tChecksum of %s (%ld %s)"
+msgstr	"\tSaðlama toplamý %s (%ld %s)"
+
+#: src/lang.c:901
+#, fuzzy
+msgid	"Reading mail active file... "
+msgstr	"Posta aktif dosyasý okunuyor... "
+
+#: src/lang.c:902
+#, fuzzy
+msgid	"Reading mailgroups file... "
+msgstr	"Postagruplarý dosyasý okunuyor... "
+
+#: src/lang.c:906
+#, fuzzy
+msgid	"perform PGP operations on article"
+msgstr	"makalede PGP iþlemi gerçekleþtir"
+
+#: src/lang.c:907
+#, fuzzy
+msgid	"Add key(s) to public keyring?"
+msgstr	"Genel tuþhalkasýna tuþ(lar) ekle?"
+
+#: src/lang.c:908
+#, fuzzy, c-format
+msgid	"%s=encrypt, %s=sign, %s=both, %s=quit: "
+msgstr	"%s=þifrele, %s=imzala. %s=ikisi de, %s=çýk: "
+
+#: src/lang.c:909
+#, fuzzy, c-format
+msgid	"%s=sign, %s=sign & include public key, %s=quit: "
+msgstr	"%s=iþaretle, %s=imzala & genel tuþ dahil et, %s=çýk: "
+
+#: src/lang.c:910
+#, fuzzy, c-format
+msgid	"PGP has not been set up (can't open %s)"
+msgstr	"PGP ayarlanmadý (açýlamýyor %s)"
+
+#: src/lang.c:911
+#, fuzzy
+msgid	"Article not signed and no public keys found"
+msgstr	"Makale  imzalanmadý ve genel tuþlar bulunamadý"
+
+#: src/lang.c:913
+#, fuzzy, c-format
+msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone: "
+msgstr	"%s=çýk, %s=düzenle, %s=ispell, %s=pgp, %s=menü, %s=yolla, %s=ertele: "
+
+#: src/lang.c:914
+#, fuzzy
+msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=send [%%s]: "
+msgstr	"%s=çýk, %s=düzenle, %s=ispell, %s=pgp, %s=gönder [%%s]: "
+
+#: src/lang.c:915
+#, fuzzy
+msgid	"%s=quit, %s=edit, %s=ispell, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
+msgstr	"%s=çýk, %s=düzenle, %s=ispell, %s=pgp, %s=menü, %s=yolla, %s=ertele [%%s]: "
+
+#: src/lang.c:917
+#, fuzzy, c-format
+msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone: "
+msgstr	"%s=çýk, %s=düzenle, %s=pgp, %s=menü, %s=yolla, %s=ertele: "
+
+#: src/lang.c:918
+#, fuzzy
+msgid	"%s=quit, %s=edit, %s=pgp, %s=send [%%s]: "
+msgstr	"%s=çýk, %s=düzenle, %s=pgp, %s=gönder [%%s]: "
+
+#: src/lang.c:919
+#, fuzzy
+msgid	"%s=quit, %s=edit, %s=pgp, %s=menu, %s=post, %s=postpone [%%s]: "
+msgstr	"%s=çýk, %s=düzenle, %s=pgp, %s=menü, %s=yolla, %s=ertele [%%]: "
+
+#: src/lang.c:923
+#, fuzzy, c-format
+msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone: "
+msgstr	"%s=çýk, %s=düzenle, %s=ispell, %s=menü, %s=yolla, %s=ertele: "
+
+#: src/lang.c:924
+#, fuzzy
+msgid	"%s=quit, %s=edit, %s=ispell, %s=send [%%s]: "
+msgstr	"%s=çýk, %s=düzenle, %s=ispell, %s=yolla [%%s]: "
+
+#: src/lang.c:925
+#, fuzzy
+msgid	"%s=quit, %s=edit, %s=ispell, %s=menu, %s=post, %s=postpone [%%s]: "
+msgstr	"%s=çýk, %s=düzenle, %s=ispell, %s=menü, %s=yolla, %s=ertele [%%s]: "
+
+#: src/lang.c:927
+#, fuzzy, c-format
+msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone: "
+msgstr	"%s=çýk, %s=düzenle, %s=menü, %s=post, %s=ertele: "
+
+#: src/lang.c:928
+#, fuzzy
+msgid	"%s=quit, %s=edit, %s=send [%%s]: "
+msgstr	"%s=çýk, %s=düzenle, %s=gönder [%%s]: "
+
+#: src/lang.c:929
+#, fuzzy
+msgid	"%s=quit, %s=edit, %s=menu, %s=post, %s=postpone [%%s]: "
+msgstr	"%s=çýk, %s=düzenle, %s=menü, %s=yolla, %s=ertele [%%s]: "
+
+#: src/lang.c:938
+#, fuzzy
+msgid	"Try cache_overview_files to speed up things.\n"
+msgstr	"Hýzlandýrmak için önbellek_giriþ_dosyalarýný deneyin.\n"
+
+#: src/lang.c:939
+#, fuzzy
+msgid	"Tin will use local index files instead.\n"
+msgstr	"Tin yerel dizin dosyalarýný kullanacak.\n"
+
+#: src/lang.c:940
+#, fuzzy
+msgid	"Cannot find NNTP server name"
+msgstr	"NNTP sunucu ismi bulunamadý"
+
+#: src/lang.c:941
+#, fuzzy, c-format
+msgid	"Connecting to %s:%d..."
+msgstr	"Baðlanýyor %s:%d..."
+
+#: src/lang.c:942
+#, fuzzy
+msgid	"Disconnecting from server...\n"
+msgstr	"Sunucu baðlantýsý kesildi...\n"
+
+#: src/lang.c:943
+#, fuzzy, c-format
+msgid	"Wrong newsgroup name in response of GROUP command, %s for %s"
+msgstr	"GRUP komut yanýtýnda yanlýþ haber grubu ismi. %s e %s"
+
+#: src/lang.c:944
+#, fuzzy, c-format
+msgid	"Failed to connect to NNTP server %s. Exiting..."
+msgstr	"NNTP sunucusuna baðlantý baþarýsýz %s. Çýkýyor..."
+
+#: src/lang.c:945
+#, fuzzy
+msgid	"205  Closing connection"
+msgstr	"205  Baðlantý kesiliyor"
+
+#: src/lang.c:946
+#, fuzzy
+msgid	"Your server does not support the NNTP XOVER or OVER command.\n"
+msgstr	"Sunucunuz NNTP XOVER ya da OVER komutunu desteklemiyor.\n"
+
+#: src/lang.c:947
+#, fuzzy
+msgid	"Connection to news server has timed out. Reconnect?"
+msgstr	"Haber sunucusu baðlantý süreniz doldu. Tekrar baðlan?"
+
+#: src/lang.c:948
+#, fuzzy, c-format
+msgid	"Put the server name in the file %s,\n"
+	"or set the environment variable NNTPSERVER"
+msgstr	"%s dosyasýna sunucu ismini girin,\n"
+	"ya da çevre deðiþkeni NNTPSERVERi ayarlayýn"
+
+#: src/lang.c:949
+#, fuzzy
+msgid	"  -A       force authentication on connect"
+msgstr	"  -A       baðlantýda doðrulamayý zorla"
+
+#: src/lang.c:950
+#, fuzzy, c-format
+msgid	"  -g serv  read news from NNTP server serv [default=%s]"
+msgstr	"  -g serv  NNTP sunucusundan haberleri oku serv [default=%s]"
+
+#: src/lang.c:951
+#, fuzzy, c-format
+msgid	"  -p port  use port as NNTP port [default=%d]"
+msgstr	"  -p port  baðlantý noktasýný NNTP gibi kullan port [default=%d]"
+
+#: src/lang.c:952
+#, fuzzy
+msgid	"  -Q       quick start. Same as -nqd"
+msgstr	"  -Q       hýzlý baþlat. -nqd ile ayný"
+
+#: src/lang.c:953
+#, fuzzy
+msgid	"  -l       use only LIST instead of GROUP (-n) command"
+msgstr	"  -l       GROUP (-n) komutu yerine sadece LIST i kullan"
+
+#: src/lang.c:954
+#, fuzzy
+msgid	"  -n       only read subscribed .newsrc groups from NNTP server"
+msgstr	"  -n       NNTP sunucusundan sadece abone newsrc gruplarýný oku"
+
+#: src/lang.c:956
+#, fuzzy, c-format
+msgid	"%s/tcp: Unknown service.\n"
+msgstr	"%s/tcp: Bilinmeyen servis.\n"
+
+#: src/lang.c:959
+#, fuzzy
+msgid	"\n"
+	"socket or connect problem\n"
+msgstr	"\n"
+	"socket ya da baðlantý hatasý\n"
+
+#: src/lang.c:961
+#, fuzzy, c-format
+msgid	"\n"
+	"Connection to %s: "
+msgstr	"\n"
+	"Baðlanýyor %s: "
+
+#: src/lang.c:962
+#, fuzzy
+msgid	"Giving up...\n"
+msgstr	"Pes ediliyor...\n"
+
+#: src/lang.c:965
+#, fuzzy
+msgid	"Your server does not have Xref: in its XOVER information.\n"
+	"Tin will try to use XHDR XREF instead (slows down things a bit).\n"
+msgstr	"Sunucunuzun XOVER bilgisinde Xref: yok.\n"
+	"Tin XHDR XREF kullanmayý deneyecek (biraz yavaþlatýr).\n"
+
+#: src/lang.c:968
+#, fuzzy
+msgid	"Your server does not have Xref: in its XOVER information.\n"
+msgstr	"Sunucunuzun XOVER bilgisinde Xref: yok.\n"
+
+#: src/lang.c:971
+#, fuzzy, c-format
+msgid	"Can't open %s. Try %s -r to read news via NNTP.\n"
+msgstr	"%s Açýlamýyor. NNTP aracýlýðýyla haber okumak için %s -r deneyin.\n"
+
+#: src/lang.c:974
+#, fuzzy
+msgid	"  -Q       quick start. Same as -qd"
+msgstr	"  -Q       hýzlý baþlat. -qd ile ayný"
+
+#: src/lang.c:975
+#, fuzzy
+msgid	"  -l       read only active file instead of scanning spool (-n) command"
+msgstr	"  -l       bekletme komutunu taramak yerine sadece aktif dosyayý okuyun"
+
+#: src/lang.c:976
+#, fuzzy
+msgid	"  -n       only read subscribed .newsrc groups from spool"
+msgstr	"  -n       'bekletme'den sadece abone newsrc gruplarý okuyun"
+
+#: src/lang.c:977
+#, fuzzy
+msgid	"Your server does not have Xref: in its NOV-files.\n"
+msgstr	"Sunucunuzun NOV-dosyalarýnda Xref:yok.\n"
+
+#: src/lang.c:981
+#, fuzzy
+msgid	"Posting using external inews failed. Use built in inews instead?"
+msgstr	"Dýþ inews kullanýlarak gönderme baþarýsýz. Yerine yerleþik inews kullanýlsýn "
+	"mý?"
+
+#: src/lang.c:982
+#, fuzzy
+msgid	"It worked! Should I always use my built in inews from now on?"
+msgstr	"Ýþe yaradý! Bundan sonra hep yerleþik inewslerimi mi kullanmalýyým?"
+
+#: src/lang.c:990
+#, fuzzy, c-format
+msgid	"%d %s printed"
+msgstr	"%d %s yazdýrýldý"
+
+#: src/lang.c:991
+#, fuzzy
+msgid	"output article/thread/hot/pattern/tagged articles to printer"
+msgstr	"çýkýþ makalesi/parçacýk/hot/örüntü/imlenmiþ makaleleri yazýcýya gönder"
+
+#: src/lang.c:992
+#, fuzzy
+msgid	"Print"
+msgstr	"Yazdýr"
+
+#: src/lang.c:993
+#, fuzzy
+msgid	"Printing..."
+msgstr	"Yazdýrýlýyor..."
+
+#: src/lang.c:997
+#, fuzzy
+msgid	"pipe article/thread/hot/pattern/tagged articles into command"
+msgstr	"kanal makale/parçacýk/hot/örüntü/imlenmiþ makaleleri komuta al"
+
+#: src/lang.c:998
+#, fuzzy
+msgid	"No command"
+msgstr	"Komut yok"
+
+#: src/lang.c:999
+#, fuzzy
+msgid	"Pipe"
+msgstr	"Kanal"
+
+#: src/lang.c:1000
+#, fuzzy, c-format
+msgid	"Pipe to command [%.*s]> "
+msgstr	"Komut kanalý [%.*s]> "
+
+#: src/lang.c:1001
+#, fuzzy
+msgid	"Piping..."
+msgstr	"Yöneltiliyor..."
+
+#: src/lang.c:1003
+#, fuzzy
+msgid	"Piping not enabled."
+msgstr	"Yöneltme gerçekleþtirilemedi."
+
+#: src/lang.c:1007
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: The \"%s:\" line has spaces  in it that MUST be removed.\n"
+	"       The only allowable  space is the one  separating the colon (:)\n"
+	"       from  the  contents.  Use a  comma  (,)  to separate  multiple\n"
+	"       newsgroup names.\n"
+msgstr	"\n"
+	"Hata: \"%s:\" satýrýnda çýkarýlmasý gereken boþluklar var.\n"
+	"      Ýzin verilebilir tek boþluk iki noktayý(:) içerikten  ayýran\n"
+	"      boþluktur. Çoklu habergrubu isimlerini ayýrmak için\n"
+	"      virgül (,) kullanýn.\n"
+
+#: src/lang.c:1012
+#, fuzzy, c-format
+msgid	"\n"
+	"Error: The \"%s:\" line is  continued in  the next line.  Since\n"
+	"       the line  may not  contain  whitespace,  this is  not allowed.\n"
+	"       Please write all newsgroups into a single line.\n"
+msgstr	"\n"
+	"Hata: \"%s:\" satýrý bir sonraki satýrda devam ediyor. Satýrda\n"
+	"       beyazboþluk kullanýlamayacaðý için, buna izin verilmiyor.\n"
+	"       Lütfen bütün haber gruplarýný tek bir satýra yazýn.\n"
+
+#: src/lang.c:1017
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: The \"%s:\" line is continued in the next line.\n"
+	"         This is a very new feature and may not be accepted by all servers.\n"
+	"         To avoid trouble please write all newsgroups into a single line.\n"
+msgstr	"\n"
+	"Uyarý: \"%s:\" satýrý bir sonraki satýrda devam ediyor.\n"
+	"        Bu çok yeni bir öznitelik ve tüm sunucular tarafýndan kabul "
+	"edilmeyebilir.\n"
+	"        Herhangi bir sorunla karþýlaþmamak için bütün haber gruplarýný tek "
+	"bir satýra yazýn.\n"
+
+#: src/lang.c:1021
+#, fuzzy, c-format
+msgid	"\n"
+	"Warning: The \"%s:\" line has spaces in it that SHOULD be removed.\n"
+msgstr	"\n"
+	"Uyarý: \"%s:\" satýrýnda SÝLÝNMESÝ GEREKEN boþluklar var.\n"
+
+#: src/lang.c:1026
+#, fuzzy
+msgid	"\n"
+	"  If your article contains quoted text  please take some time to pare it "
+	"down\n"
+	"  to just the  key points to which you are  responding,  or people will "
+	"think\n"
+	"  you are a dweeb!  Many people have the habit of skipping any article  "
+	"whose\n"
+	"  first page is largely  quoted material.  Format your article to fit in "
+	"less\n"
+	"  then 80 chars,  since that's the conventional size  (72 is a good choice "
+	"as\n"
+	"  it allows quoting without exceeding the limit).  If your lines are too "
+	"long\n"
+	"  they'll wrap  around  ugly and  people won't  read what you  write.  If "
+	"you\n"
+	"  aren't  careful  and considerate  in  formatting  your posting, people  "
+	"are\n"
+	"  likely to ignore it completely.  It's a crowded net out there.\n"
+msgstr	"\n"
+	"  Makaleniz imlenmiþ metin içeriyorsa, karþýlýk verdiðiniz çözümleri\n"
+	" uygun hale getirmek için metni kýsaltýn, yoksa insanlar sizin bir ahmak "
+	"olduðunuzu\n"
+	" düþünür. Birçok insan ilk sayfasýnda uzunca bir imlenmiþ metin gördükleri "
+	"makaleleri\n"
+	" atlýyor. Makalenizi geleneksel olan 80 karakterden az tutacak þekilde "
+	"biçimlendirin\n"
+	" (72 sýnýrý aþmadan imlemeye izin verdiði için iyi bir seçim).  Satýrlarýnýz "
+	"fazla uzunsa\n"
+	" çirkin görünürler ve insanlar yazdýklarýnýzý okumazlar. Göndereceklerinizi "
+	"biçimlendirmede\n"
+	" dikkatli ve özenli olmazsanýz, insanlar onu tamamen yoksayarlar. Net oldukça "
+	"kalabalýk bir yer.\n"
+
+#: src/lang.c:1039
+#, fuzzy
+msgid	"shell escape"
+msgstr	"kabuk çýkýþý"
+
+#: src/lang.c:1040
+#, fuzzy, c-format
+msgid	"Shell Command (%s)"
+msgstr	"Kabuk Komutu (%s)"
+
+#: src/lang.c:1041
+#, fuzzy, c-format
+msgid	"Enter shell command [%s]> "
+msgstr	"Kabuk komutunu girin [%s]> "
+
+#: src/lang.c:1045
+#, fuzzy, c-format
+msgid	"%s: Can't get entry for TERM\n"
+msgstr	"%s: TERM için girdi alýnamýyor\n"
+
+#: src/lang.c:1049
+#, fuzzy, c-format
+msgid	"Group %.*s ('q' to quit)..."
+msgstr	"Grup %.*s (çýkmak için 'q')..."
+
+#: src/lang.c:1051
+#, fuzzy, c-format
+msgid	"Group %.*s..."
+msgstr	"Grup %.*s..."
+
+#: src/lang.c:1055
+#, fuzzy
+msgid	"Server unavailable\n"
+msgstr	"Sunucu kullanýlamýyor\n"
+
+#: src/lang.c:1061
+#, fuzzy, c-format
+msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; "
+	"%s=post"
+msgstr	"%s=kanal, %s=posta; %s=yazdýr, %s=çýk, %s=hepsini deðiþtir/okunmayanlar; "
+	"%s=kaydet; %s=etiketle; %s=yolla"
+
+#: src/lang.c:1062
+#, fuzzy, c-format
+msgid	"%s=pipe; %s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
+msgstr	"%s=kanal; %s=posta; %s=yazdýr; %s=çýk; %s=cevap yaz; %s=kaydet; %s=etiketle; "
+	"%s=yolla"
+
+#: src/lang.c:1064
+#, fuzzy, c-format
+msgid	"%s=mail; %s=print; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
+msgstr	"%s=posta; %s=yazdýr; %s=çýk; %s=hepsini deðiþtir/okunmayanlar; %s=kaydet; "
+	"%s=etiketle; %s=yolla"
+
+#: src/lang.c:1065
+#, fuzzy, c-format
+msgid	"%s=mail; %s=print; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
+msgstr	"%s=posta; %s=yazdýr; %s=çýk; %s=cevap yaz; %s=kaydet; %s=etiketle; %s=yolla"
+
+#: src/lang.c:1069
+#, fuzzy, c-format
+msgid	"%s=pipe; %s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
+msgstr	"%s=kanal; %s=posta; %s=çýk; %s=hepsini deðiþtir/okunmayanlar; %s=kaydet; "
+	"%s=etiketle; %s=yolla"
+
+#: src/lang.c:1070
+#, fuzzy, c-format
+msgid	"%s=pipe; %s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
+msgstr	"%s=kanal; %s=posta; %s=çýk; %s=cevap yaz; %s=kaydet; %s=etiketle; %s=yolla"
+
+#: src/lang.c:1072
+#, fuzzy, c-format
+msgid	"%s=mail; %s=quit; %s=toggle all/unread; %s=save; %s=tag; %s=post"
+msgstr	"%s=posta; %s=çýk; %s=hepsini deðiþtir/okunmayanlar; %s=kaydet; %s=etiketle; "
+	"%s=yolla"
+
+#: src/lang.c:1073
+#, fuzzy, c-format
+msgid	"%s=mail; %s=quit; %s=reply mail; %s=save; %s=tag; %s=post"
+msgstr	"%s=posta; %s=çýk; %s=cevap yaz; %s=kaydet; %s=etiketle; %s=yolla"
+
+#: src/lang.c:1079
+#, fuzzy
+msgid	"Terminal does not support color"
+msgstr	"Uçbirim renk desteklemiyor"
+
+#: src/lang.c:1084
+#, fuzzy, c-format
+msgid	"Trying %s"
+msgstr	"%s deneniyor"
+
+#: src/lang.c:1098 src/lang.c:1123 src/lang.c:1139 src/lang.c:1318 src/refs.c:296
+#, fuzzy
+msgid	"None"
+msgstr	"Hiçbiri"
+
+#: src/lang.c:1099
+#, fuzzy
+msgid	"Subject"
+msgstr	"Konu"
+
+#: src/lang.c:1100
+#, fuzzy
+msgid	"References"
+msgstr	"Kaynaklar"
+
+#: src/lang.c:1101
+#, fuzzy
+msgid	"Both Subject and References"
+msgstr	"Konu ve Kaynaklar"
+
+#: src/lang.c:1102
+#, fuzzy
+msgid	"Multipart Subject"
+msgstr	"Çoklu Konu"
+
+#: src/lang.c:1114 src/lang.c:1225
+#, fuzzy
+msgid	"No"
+msgstr	"Hayýr"
+
+#: src/lang.c:1115 src/lang.c:1227
+#, fuzzy
+msgid	"Yes"
+msgstr	"Evet"
+
+#: src/lang.c:1116
+#, fuzzy
+msgid	"Hide All"
+msgstr	"Tümünü Sakla"
+
+#: src/lang.c:1124
+#, fuzzy
+msgid	"Address"
+msgstr	"Adres"
+
+#: src/lang.c:1125
+#, fuzzy
+msgid	"Full Name"
+msgstr	"Tüm Ýsim"
+
+#: src/lang.c:1126
+#, fuzzy
+msgid	"Address and Name"
+msgstr	"Adres ve Ýsim"
+
+#: src/lang.c:1133
+#, fuzzy
+msgid	"Max"
+msgstr	"En Çok"
+
+#: src/lang.c:1134
+#, fuzzy
+msgid	"Sum"
+msgstr	"Toplam"
+
+#: src/lang.c:1135
+#, fuzzy
+msgid	"Average"
+msgstr	"Ortalama"
+
+#: src/lang.c:1140
+#, fuzzy
+msgid	"Lines"
+msgstr	"Çizgiler"
+
+#: src/lang.c:1141
+#, fuzzy
+msgid	"Score"
+msgstr	"Skorlar"
+
+#: src/lang.c:1142
+#, fuzzy
+msgid	"Lines & Score"
+msgstr	"Satýrlar & Skorlar"
+
+#: src/lang.c:1151
+#, fuzzy
+msgid	"Black"
+msgstr	"Siyah"
+
+#: src/lang.c:1152
+#, fuzzy
+msgid	"Red"
+msgstr	"Kýrmýzý"
+
+#: src/lang.c:1153
+#, fuzzy
+msgid	"Green"
+msgstr	"Yeþil"
+
+#: src/lang.c:1154
+#, fuzzy
+msgid	"Brown"
+msgstr	"Kahverengi"
+
+#: src/lang.c:1155
+#, fuzzy
+msgid	"Blue"
+msgstr	"Mavi"
+
+#: src/lang.c:1156
+#, fuzzy
+msgid	"Pink"
+msgstr	"Pembe"
+
+#: src/lang.c:1157
+#, fuzzy
+msgid	"Cyan"
+msgstr	"Camgöbeði"
+
+#: src/lang.c:1158
+#, fuzzy
+msgid	"White"
+msgstr	"Beyaz"
+
+#: src/lang.c:1159
+#, fuzzy
+msgid	"Gray"
+msgstr	"Gri"
+
+#: src/lang.c:1160
+#, fuzzy
+msgid	"Light Red"
+msgstr	"Açýk Kýrmýzý"
+
+#: src/lang.c:1161
+#, fuzzy
+msgid	"Light Green"
+msgstr	"Açýk Yeþil"
+
+#: src/lang.c:1162
+#, fuzzy
+msgid	"Yellow"
+msgstr	"Sarý"
+
+#: src/lang.c:1163
+#, fuzzy
+msgid	"Light Blue"
+msgstr	"Açýk Mavi"
+
+#: src/lang.c:1164
+#, fuzzy
+msgid	"Light Pink"
+msgstr	"Açýk Pembe"
+
+#: src/lang.c:1165
+#, fuzzy
+msgid	"Light Cyan"
+msgstr	"Açýk Camgöbeði"
+
+#: src/lang.c:1166
+#, fuzzy
+msgid	"Light White"
+msgstr	"Açýk Beyaz"
+
+#: src/lang.c:1174 src/lang.c:1231 src/lang.c:1245
+#, fuzzy
+msgid	"Nothing"
+msgstr	"Hiçbirþey"
+
+#: src/lang.c:1175
+#, fuzzy
+msgid	"Mark"
+msgstr	"Ýþaretle"
+
+#: src/lang.c:1176
+#, fuzzy
+msgid	"Space"
+msgstr	"Boþluk"
+
+#: src/lang.c:1183
+#, fuzzy
+msgid	"Normal"
+msgstr	"Normal"
+
+#: src/lang.c:1184
+#, fuzzy
+msgid	"Best highlighting"
+msgstr	"En iyi vurgulama"
+
+#: src/lang.c:1185
+#, fuzzy
+msgid	"Underline"
+msgstr	"Alt çizgi"
+
+#: src/lang.c:1186
+#, fuzzy
+msgid	"Reverse video"
+msgstr	"Tes görüntü"
+
+#: src/lang.c:1187
+#, fuzzy
+msgid	"Blinking"
+msgstr	"Yanýp sönme"
+
+#: src/lang.c:1188
+#, fuzzy
+msgid	"Half bright"
+msgstr	"Yarý parlak"
+
+#: src/lang.c:1189
+#, fuzzy
+msgid	"Bold"
+msgstr	"Kalýn"
+
+#: src/lang.c:1194
+#, fuzzy
+msgid	"none"
+msgstr	"hiçbiri"
+
+#: src/lang.c:1195
+#, fuzzy
+msgid	"commands"
+msgstr	"komutlar"
+
+#: src/lang.c:1196
+#, fuzzy
+msgid	"select"
+msgstr	"seç"
+
+#: src/lang.c:1198
+#, fuzzy
+msgid	"commands & quit"
+msgstr	"komutlar & çýk"
+
+#: src/lang.c:1199
+#, fuzzy
+msgid	"commands & select"
+msgstr	"komutlar & seç"
+
+#: src/lang.c:1200
+#, fuzzy
+msgid	"quit & select"
+msgstr	"çýk & seç"
+
+#: src/lang.c:1201
+#, fuzzy
+msgid	"commands & quit & select"
+msgstr	"komutlar & çýk & seç"
+
+#: src/lang.c:1226
+#, fuzzy
+msgid	"Shell archive"
+msgstr	"kabuk arþivi"
+
+#: src/lang.c:1232
+#, fuzzy
+msgid	"Subject: (descending)"
+msgstr	"Konu: (alçalan)"
+
+#: src/lang.c:1233
+#, fuzzy
+msgid	"Subject: (ascending)"
+msgstr	"Konu: (yükselen)"
+
+#: src/lang.c:1234
+#, fuzzy
+msgid	"From: (descending)"
+msgstr	"Gönderen: (alçalan)"
+
+#: src/lang.c:1235
+#, fuzzy
+msgid	"From: (ascending)"
+msgstr	"Gönderen: (yükselen)"
+
+#: src/lang.c:1236
+#, fuzzy
+msgid	"Date: (descending)"
+msgstr	"Tarih: (alçalan)"
+
+#: src/lang.c:1237
+#, fuzzy
+msgid	"Date: (ascending)"
+msgstr	"Tarih: (yükselen)"
+
+#: src/lang.c:1238 src/lang.c:1246
+#, fuzzy
+msgid	"Score (descending)"
+msgstr	"Skor: (alçalan)"
+
+#: src/lang.c:1239 src/lang.c:1247
+#, fuzzy
+msgid	"Score (ascending)"
+msgstr	"Skor: (yükselen)"
+
+#: src/lang.c:1240
+#, fuzzy
+msgid	"Lines: (descending)"
+msgstr	"Satýrlar: (alçalan)"
+
+#: src/lang.c:1241
+#, fuzzy
+msgid	"Lines: (ascending)"
+msgstr	"Satýrlar: (yükselen)"
+
+#: src/lang.c:1252
+#, fuzzy
+msgid	"Always Keep"
+msgstr	"Hep Sakla"
+
+#: src/lang.c:1253
+#, fuzzy
+msgid	"Always Remove"
+msgstr	"Hep Kaldýr"
+
+#: src/lang.c:1254
+#, fuzzy
+msgid	"Mark with D on selection screen"
+msgstr	"Seçenek ekranýnda D ile iþaretle"
+
+#: src/lang.c:1259
+#, fuzzy
+msgid	"Kill only unread arts"
+msgstr	"Sadece okunmayan makaleleri yok et"
+
+#: src/lang.c:1260
+#, fuzzy
+msgid	"Kill all arts & show with K"
+msgstr	"Tüm makaleleri yok et & K ile göster"
+
+#  TODO: s/K/art_marked_killed/
+#. TODO: s/K/art_marked_killed/
+#: src/lang.c:1261
+#, fuzzy
+msgid	"Kill all arts and never show"
+msgstr	"Tüm makaleleri yok et ve asla gösterme"
+
+#: src/lang.c:1266
+#, fuzzy
+msgid	"Nothing special"
+msgstr	"Özel birþey yok"
+
+#: src/lang.c:1267
+#, fuzzy
+msgid	"Compress quotes"
+msgstr	"Ýmleri sýkýþtýr"
+
+#: src/lang.c:1268
+#, fuzzy
+msgid	"Quote signatures"
+msgstr	"Ýmzalarý imle"
+
+#: src/lang.c:1269
+#, fuzzy
+msgid	"Compress quotes, quote sigs"
+msgstr	"Ýmleri sýkýþtýr, imzalarý imle"
+
+#: src/lang.c:1270
+#, fuzzy
+msgid	"Quote empty lines"
+msgstr	"Boþ satýrlarý imle"
+
+#: src/lang.c:1271
+#, fuzzy
+msgid	"Compress quotes, quote empty lines"
+msgstr	"Ýmleri sýkýþtýr, boþ satýrlarý imle"
+
+#: src/lang.c:1272
+#, fuzzy
+msgid	"Quote sigs & empty lines"
+msgstr	"Ýmzalarý & boþ satýrlarý imle"
+
+#: src/lang.c:1273
+#, fuzzy
+msgid	"Comp. q., quote sigs & empty lines"
+msgstr	"Ýmleri sýkýþtýr, imzalarý & boþ satýrlarý imle"
+
+#: src/lang.c:1311
+#, fuzzy
+msgid	"no"
+msgstr	"hiçbiri"
+
+#: src/lang.c:1312
+#, fuzzy
+msgid	"with headers"
+msgstr	"en küçük yürütme birimleri"
+
+#: src/lang.c:1313
+msgid	"without headers"
+msgstr	""
+
+#: src/lang.c:1320 src/lang.c:1326
+msgid	"NFKC"
+msgstr	""
+
+#: src/lang.c:1321
+msgid	"NFKD"
+msgstr	""
+
+#: src/lang.c:1322
+msgid	"NFC"
+msgstr	""
+
+#: src/lang.c:1323
+msgid	"NFD"
+msgstr	""
+
+#: src/lang.c:1334
+#, fuzzy
+msgid	"Display Options"
+msgstr	"Seçenekleri Göster"
+
+#: src/lang.c:1341
+#, fuzzy
+msgid	"Color Options"
+msgstr	"Renk Seçenekleri"
+
+#: src/lang.c:1348
+#, fuzzy
+msgid	"Article-Limiting Options"
+msgstr	"Makale-Sýnýrlandýrma Seçenekleri"
+
+#: src/lang.c:1354
+#, fuzzy
+msgid	"Posting/Mailing Options"
+msgstr	"Yollama/Postalama Seçenekleri"
+
+#: src/lang.c:1360
+#, fuzzy
+msgid	"Saving/Printing Options"
+msgstr	"Kaydetme/Yazdýrma Seçenekleri"
+
+#: src/lang.c:1366
+#, fuzzy
+msgid	"Expert Options"
+msgstr	"Uzman Seçenekleri"
+
+#: src/lang.c:1372
+#, fuzzy
+msgid	"Filtering Options"
+msgstr	"Süzgeçleme Seçenekleri"
+
+#: src/lang.c:1377 src/lang.c:1408 src/lang.c:1414 src/lang.c:1426 src/lang.c:1476
+#: src/lang.c:1482 src/lang.c:1492 src/lang.c:1512 src/lang.c:1587 src/lang.c:1757
+#: src/lang.c:1763 src/lang.c:1769 src/lang.c:1775 src/lang.c:1787 src/lang.c:1794
+#: src/lang.c:1848 src/lang.c:1857 src/lang.c:1863 src/lang.c:1870 src/lang.c:1877
+#: src/lang.c:1884 src/lang.c:1891 src/lang.c:1898 src/lang.c:1905 src/lang.c:1912
+#: src/lang.c:1919 src/lang.c:1926 src/lang.c:1933 src/lang.c:1940 src/lang.c:1947
+#: src/lang.c:1954 src/lang.c:1961 src/lang.c:1968 src/lang.c:1975 src/lang.c:1982
+#: src/lang.c:1989 src/lang.c:1996 src/lang.c:2003 src/lang.c:2010 src/lang.c:2017
+#: src/lang.c:2025 src/lang.c:2041 src/lang.c:2048 src/lang.c:2055 src/lang.c:2062
+#: src/lang.c:2068 src/lang.c:2074 src/lang.c:2091 src/lang.c:2103 src/lang.c:2137
+#: src/lang.c:2190 src/lang.c:2197 src/lang.c:2203 src/lang.c:2228 src/lang.c:2245
+#: src/lang.c:2298 src/lang.c:2334 src/lang.c:2354 src/lang.c:2389 src/lang.c:2399
+#: src/lang.c:2424 src/lang.c:2440 src/lang.c:2459 src/lang.c:2472
+#, fuzzy
+msgid	"<SPACE> toggles, <CR> sets, <ESC> cancels."
+msgstr	"<SPACE> deðiþtirir, <CR> ayarlar, <ESC> iptal eder."
+
+#: src/lang.c:1378
+#, fuzzy
+msgid	"Show mini menu & posting etiquette"
+msgstr	"Mini menüyü & yollama etiketini göster"
+
+#: src/lang.c:1379
+#, fuzzy
+msgid	"# If ON show a mini menu of useful commands at each level\n"
+	"# and posting etiquette after composing an article\n"
+msgstr	"# ON durumundaysa makale oluþturduktan sonra tüm düzeylerde kullanýþlý "
+	"komutlarýn\n"
+	"# mini menüsünü ve yollama etiketini göster.\n"
+
+#: src/lang.c:1384
+#, fuzzy
+msgid	"Show short description for each newsgroup. <SPACE> toggles & <CR> sets."
+msgstr	"Her haber grubu için kýsa açýklama göster. <SPACE> deðiþtirir & <CR> ayarlar."
+
+#: src/lang.c:1385
+#, fuzzy
+msgid	"Show description of each newsgroup"
+msgstr	"Her haber grubu için açýklama göster"
+
+#: src/lang.c:1386
+#, fuzzy
+msgid	"# If ON show group description text after newsgroup name at\n"
+	"# group selection level\n"
+msgstr	"# ON durumundaysa grup seçim düzeyindeki haber grubu isiminden sonraki\n"
+	"# grup açýklama metnini göster.\n"
+
+#: src/lang.c:1391
+#, fuzzy
+msgid	"Show Subject & From (author) fields in group menu. <SPACE> toggles & <CR> "
+	"sets."
+msgstr	"Grup menüsünde Konu & Gönderen (yazar) alanlarýný göster. <SPACE> deðiþtirir "
+	"& <CR> ayarlar."
+
+#: src/lang.c:1392
+#, fuzzy
+msgid	"In group menu, show author by"
+msgstr	"Grup menüsünde yazarý þuna göre göster"
+
+#: src/lang.c:1393
+#, fuzzy
+msgid	"# Part of from field to display\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#   0 = none\n"
+	"#   1 = address\n"
+	"# * 2 = full name\n"
+	"#   3 = both\n"
+msgstr	"# Gösterilecek gönderen alan kýsýmlarý 0)hiç 1)adres 2) tüm isim 3) hepsi\n"
+
+#: src/lang.c:1402
+#, fuzzy
+msgid	"Draw -> or highlighted bar for selection. <SPACE> toggles & <CR> sets."
+msgstr	"Çiz -> ya da seçim için vurgulanmýþ çubuk. <SPACE> deðiþtirir & <CR> ayarlar."
+
+#: src/lang.c:1403
+#, fuzzy
+msgid	"Draw -> instead of highlighted bar"
+msgstr	"Çiz -> vurgulanmýþ çubuk yerine"
+
+#: src/lang.c:1404
+#, fuzzy
+msgid	"# If ON use -> otherwise highlighted bar for selection\n"
+msgstr	"# ON durumundaysa -> deðilse seçim için vurgulanmýþ çubuk\n"
+
+#: src/lang.c:1409
+#, fuzzy
+msgid	"Use inverse video for page headers"
+msgstr	"Sayfa baþlýklarý için ters görüntü kullan"
+
+#: src/lang.c:1410
+#, fuzzy
+msgid	"# If ON use inverse video for page headers at different levels\n"
+msgstr	"# ON durumundaysa farklý düzeyde sayfa baþlýklarý için ters görüntü kullan\n"
+
+#: src/lang.c:1415
+#, fuzzy
+msgid	"Thread articles by"
+msgstr	"Makaleleri belirle"
+
+#: src/lang.c:1416
+msgid	"# Thread articles by ...\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#   0 = nothing\n"
+	"#   1 = Subject\n"
+	"#   2 = References\n"
+	"# * 3 = Both (Subject and References)\n"
+	"#   4 = Multipart Subject\n"
+msgstr	""
+
+#: src/lang.c:1427
+#, fuzzy
+msgid	"Score of a thread"
+msgstr	"Bir iþ parçacýðýnýn skoru"
+
+#: src/lang.c:1428
+msgid	"# Thread score\n"
+	"# Possible values are (the default is marked with *):\n"
+	"# * 0 = max\n"
+	"#   1 = sum\n"
+	"#   2 = average\n"
+msgstr	""
+
+#: src/lang.c:1436
+#, fuzzy
+msgid	"Sort articles by Subject, From, Date or Score. <SPACE> toggles & <CR> sets."
+msgstr	"Makaleleri Konu,Gönderen,Tarih ya da Skora göre sýrala. <SPACE> deðiþtirir & "
+	"<CR> ayarlar."
+
+#: src/lang.c:1437
+#, fuzzy
+msgid	"Sort articles by"
+msgstr	"Makaleleri sýrala"
+
+#: src/lang.c:1438
+#, fuzzy
+msgid	"# Sort articles by ...\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#   0 = nothing\n"
+	"#   1 = Subject descending\n"
+	"#   2 = Subject ascending\n"
+	"#   3 = From descending\n"
+	"#   4 = From ascending\n"
+	"#   5 = Date descending\n"
+	"# * 6 = Date ascending\n"
+	"#   7 = Score descending\n"
+	"#   8 = Score ascending\n"
+	"#   9 = Lines descending\n"
+	"#  10 = Lines ascending\n"
+msgstr	"# Makaleleri sýrala 0=(hiçbirþey) 1=(Konu azalmasý) 2=(Konu yükselmesi)\n"
+	"# 3=(Gönderen azalmasý) 4=(Gönderen yükselmesi) 5=(Tarih azalmasý) 6=(Tarih "
+	"yükselmesi)\n"
+	"# 7=(Skor azalmasý) 8=(Skor yükselmesi) 9=(Satýrlar azalmasý) 10=(Satýrlar "
+	"yükselmesi).\n"
+
+#: src/lang.c:1454
+#, fuzzy
+msgid	"Sort threads by Nothing or Score. <SPACE> toggles & <CR> sets."
+msgstr	"Ýþ parçacýklarýný Hiçbirþeye ya da skora göre sýrala. <SPACE> deðiþtirir & "
+	"<CR> ayarlar."
+
+#: src/lang.c:1455
+#, fuzzy
+msgid	"Sort threads by"
+msgstr	"Ýþ parçacýklarýný sýrala"
+
+#: src/lang.c:1456
+msgid	"# Sort thread by ...\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#   0 = nothing\n"
+	"# * 1 = Score descending\n"
+	"#   2 = Score ascending\n"
+msgstr	""
+
+#: src/lang.c:1464
+#, fuzzy
+msgid	"Put cursor at first/last unread art in groups. <SPACE> toggles & <CR> sets."
+msgstr	"Ýmleci gruplardaki ilk/son okunmamýþ makalelere koyun. <SPACE> deðiþtirir & "
+	"<CR> ayarlar."
+
+#: src/lang.c:1465
+#, fuzzy
+msgid	"Goto first unread article in group"
+msgstr	"Gruptaki ilk okunmamýþ makaleye git"
+
+#: src/lang.c:1466
+#, fuzzy
+msgid	"# If ON put cursor at first unread art in group otherwise last art\n"
+msgstr	"# ON durumundaysa imleci ilk okunmamýþ makeleye, deðilse son makeleye koy.\n"
+
+#: src/lang.c:1470
+#, fuzzy
+msgid	"Show all articles or only unread articles. <SPACE> toggles & <CR> sets."
+msgstr	"Tüm makaleleri ya da sadece okunmayan makaleleri göster.<SPACE> deðiþtirir & "
+	"<CR> ayarlar."
+
+#: src/lang.c:1471
+#, fuzzy
+msgid	"Show only unread articles"
+msgstr	"Sadece okunmayan makaleleri göster"
+
+#: src/lang.c:1472
+#, fuzzy
+msgid	"# If ON show only new/unread articles otherwise show all.\n"
+msgstr	"# ON durumundaysa sadece yeni/okunmamýþ makaleleri, deðilse hepsini göster.\n"
+
+#: src/lang.c:1477
+#, fuzzy
+msgid	"Show only groups with unread arts"
+msgstr	"Sadece okunmamýþ makale olan gruplarý göster"
+
+#: src/lang.c:1478
+#, fuzzy
+msgid	"# If ON show only subscribed to groups that contain unread articles.\n"
+msgstr	"# ON durumundaysa sadece abone olunup okunmamýþ makaler içerem gruplarý "
+	"göster.\n"
+
+#: src/lang.c:1483
+#, fuzzy
+msgid	"Filter which articles"
+msgstr	"Hangi makaleleri filtrele"
+
+#: src/lang.c:1484
+#, fuzzy
+msgid	"# Filter which articles\n"
+	"# Possible values are (the default is marked with *):\n"
+	"# * 0 = only kill unread articles\n"
+	"#   1 = kill all articles and show in threads marked with K\n"
+	"#   2 = kill all articles and never show them\n"
+msgstr	"# 0=(Sadece okunmamýþ makaleleri yok et)\n"
+	"# 1=(Tüm makalerleri yok et ve K ile iþaretlenmiþ parçaýk olarak göster)\n"
+	"# 2=(Tüm makaleleri yok et ve bir daha gösterme].\n"
+
+#: src/lang.c:1493
+#, fuzzy
+msgid	"Tab goes to next unread article"
+msgstr	"Sekme sonraki okunmamýþ makaleye gider"
+
+#: src/lang.c:1494
+#, fuzzy
+msgid	"# If ON the TAB command will go to next unread article at article viewer "
+	"level\n"
+msgstr	"# ON durumundaysa TAB komutu makale görüntüleyici düzeyinde sonraki okunmamýþ "
+	"makaleye gider\n"
+
+#: src/lang.c:1498
+#, fuzzy
+msgid	"Scrolling with <SPACE> past the end of an art. jumps to the next unread one."
+msgstr	"Bir makalenin sonundan sonra <SPACE> ile kaydýrma bir sonraki okunmamýþ "
+	"makaleye atlar."
+
+#: src/lang.c:1499
+#, fuzzy
+msgid	"Space goes to next unread article"
+msgstr	"Boþluk sonraki okunmamýþ makaleye gider"
+
+#: src/lang.c:1500
+#, fuzzy
+msgid	"# If ON the SPACE command will go to next unread article at article viewer\n"
+	"# level when the end of the article is reached (rn-style pager)\n"
+msgstr	"# ON durumundaysa makalenin sonuna gelindiðinde SPACE komutu makale "
+	"görüntüleyici # düzeyinde sonraki okunmamýþ makaleye gider\n"
+
+#: src/lang.c:1505
+#, fuzzy
+msgid	"Scrolling with <PGDN>/<DOWN> past the end of an art. jumps to the unread one."
+msgstr	"Makalenin sonundan sonra <PGDN>/<DOWN> ile kaydýrma bir sonraki makaleye "
+	"atlar."
+
+#: src/lang.c:1506
+#, fuzzy
+msgid	"PgDn goes to next unread article"
+msgstr	"PgDn sonraki okunmamýþ makaleye gider"
+
+#: src/lang.c:1507
+#, fuzzy
+msgid	"# If ON the PGDN or DOWN command will go to next unread article when\n"
+	"# pressed at end of message\n"
+msgstr	"# ON durumundaysa PGDN ya da DOWN komutu iletinin sonunda\n"
+	"# basýldýðýnda sonraki okunmamýþ makaleye gider\n"
+
+#: src/lang.c:1513
+#, fuzzy
+msgid	"List thread using right arrow key"
+msgstr	"Sað ok tuþuna basarak parçacýklarý listele"
+
+#: src/lang.c:1514
+#, fuzzy
+msgid	"# If ON automatically list thread when entering it using right arrow key.\n"
+msgstr	"# ON durumundaysa parçacýklarý sað ok tuþunu kullanarak girerken otomatik "
+	"olarak listele.\n"
+
+#: src/lang.c:1518
+#, fuzzy
+msgid	"Enter character to indicate deleted articles. <CR> sets, <ESC> cancels."
+msgstr	"Silinmiþ makaleleri göstermek için karakter giriniz. <CR> ayarlar, <ESC> "
+	"iptal eder."
+
+#: src/lang.c:1519
+#, fuzzy
+msgid	"Character to show deleted articles"
+msgstr	"Silinmiþ makaleleri gösterecek olan karakter"
+
+#: src/lang.c:1520
+#, fuzzy
+msgid	"# Character used to show that an art was deleted (default 'D')\n"
+	"# _ is turned into ' '\n"
+msgstr	"# Makalenin silindiðini göstermek için kullanýlan karakter (varsayýlan 'D')\n"
+	"#_ þuna dönüþür ' '\n"
+
+#: src/lang.c:1525
+#, fuzzy
+msgid	"Enter character to indicate articles in a range. <CR> sets, <ESC> cancels."
+msgstr	"Sýralanmýþ makaleleri imlemek için karakter girin. <CR> ayarlar, <ESC> iptal "
+	"eder."
+
+#: src/lang.c:1526
+#, fuzzy
+msgid	"Character to show inrange articles"
+msgstr	"Sýralanmýþ makaleleri gösterecek olan karakter"
+
+#: src/lang.c:1527
+#, fuzzy
+msgid	"# Character used to show that an art is in a range (default '#')\n"
+	"# _ is turned into ' '\n"
+msgstr	"# Bir makalenin sýralanmýþ olduðunu göstermek için kullanýlan karakter "
+	"(varsayýlan '#')\n"
+	"# _ þuna dönüþür ' '\n"
+
+#: src/lang.c:1532
+#, fuzzy
+msgid	"Enter character to indicate that article will return. <CR> sets, <ESC> "
+	"cancels."
+msgstr	"Makalenin döneceðini göstermek için karakter girin. <CR> ayarlar, <ESC> iptal "
+	"eder."
+
+#: src/lang.c:1533
+#, fuzzy
+msgid	"Character to show returning arts"
+msgstr	"Dönen makaleleri gösterecek olan karakter"
+
+#: src/lang.c:1534
+#, fuzzy
+msgid	"# Character used to show that an art will return (default '-')\n"
+	"# _ is turned into ' '\n"
+msgstr	"# Bir makalenin döneceðini göstermek için kullanýlan karakter (varsayýlan "
+	"'-')\n"
+	"# _ þuna dönüþür ' '\n"
+
+#: src/lang.c:1539
+#, fuzzy
+msgid	"Enter character to indicate selected articles. <CR> sets, <ESC> cancels."
+msgstr	"Seçilen makaleleri imlemek için karakter girin. <CR> ayarlar, <ESC> iptal "
+	"eder."
+
+#: src/lang.c:1540
+#, fuzzy
+msgid	"Character to show selected articles"
+msgstr	"Seçilen makaleleri gösterecek olan karakter"
+
+#: src/lang.c:1541
+#, fuzzy
+msgid	"# Character used to show that an art was auto-selected (default '*')\n"
+	"# _ is turned into ' '\n"
+msgstr	"# Bir makalenin otomatik seçildiðini göstermek için kullanýlan karakter "
+	"(varsayýlan '*')\n"
+	"# _ þuna dönüþür ' '\n"
+
+#: src/lang.c:1546
+#, fuzzy
+msgid	"Enter character to indicate recent articles. <CR> sets, <ESC> cancels."
+msgstr	"Son makaleleri imlemek için karakter girin. <CR> ayarlar, <ESC> iptal eder."
+
+#: src/lang.c:1547
+#, fuzzy
+msgid	"Character to show recent articles"
+msgstr	"Son makaleleri gösterecek olan karakter"
+
+#: src/lang.c:1548
+#, fuzzy
+msgid	"# Character used to show that an art is recent (default 'o')\n"
+	"# _ is turned into ' '\n"
+msgstr	"# Bir makalenin son olduðunu göstermek için kullanýlan karakter (varsayýlan "
+	"'o')\n"
+	"# _ þuna dönüþür ' '\n"
+
+#: src/lang.c:1553
+#, fuzzy
+msgid	"Enter character to indicate unread articles. <CR> sets, <ESC> cancels."
+msgstr	"Okunmamýþ makaleleri imlemek için karakter girin. <CR> ayarlar, <ESC> iptal "
+	"eder."
+
+#: src/lang.c:1554
+#, fuzzy
+msgid	"Character to show unread articles"
+msgstr	"Okunmamýþ makaleleri gösterecek olan karakter"
+
+#: src/lang.c:1555
+#, fuzzy
+msgid	"# Character used to show that an art is unread (default '+')\n"
+	"# _ is turned into ' '\n"
+msgstr	"# Bir makalenin okunmadýðýný göstermek için kullanýlan karakter (varsayýlan "
+	"'+')\n"
+	"# _ þuna dönüþür ' '\n"
+
+#: src/lang.c:1560
+#, fuzzy
+msgid	"Enter character to indicate read articles. <CR> sets, <ESC> cancels."
+msgstr	"Okunan makaleleri imlemek için karakter girin. <CR> yarlar, <ESC> iptal eder."
+
+#: src/lang.c:1561
+#, fuzzy
+msgid	"Character to show read articles"
+msgstr	"Okunmamýþ makaleleri gösterecek olan karakter"
+
+#: src/lang.c:1562
+#, fuzzy
+msgid	"# Character used to show that an art was read (default ' ')\n"
+	"# _ is turned into ' '\n"
+msgstr	"# Bir makalenin okunduðunu göstermek için kullanýlan karakter (varsayýlan ' "
+	"')\n"
+	"# _ þuna dönüþür ' '\n"
+
+#: src/lang.c:1567
+#, fuzzy
+msgid	"Enter character to indicate killed articles. <CR> sets, <ESC> cancels."
+msgstr	"Yok olan makaleleri imlemek için karakter girin. <CR> ayarlar, <ESC> iptal "
+	"eder."
+
+#: src/lang.c:1568
+#, fuzzy
+msgid	"Character to show killed articles"
+msgstr	"Yok olan makaleleri gösterecen karakter"
+
+#: src/lang.c:1569
+#, fuzzy
+msgid	"# Character used to show that an art was killed (default 'K')\n"
+	"# kill_level must be set accordingly, _ is turned into ' '\n"
+msgstr	"# Bir makalenin yok olduðunu göstermek için kullanýlan karakter (varsayýlan "
+	"'K')\n"
+	"# yok olma düzeyi ona göre ayarlanmalýdýr, _ þuna dönüþür ' '\n"
+
+#: src/lang.c:1574
+#, fuzzy
+msgid	"Enter character to indicate read selected articles. <CR> sets, <ESC> cancels."
+msgstr	"Okunmuþ-seçilmiþ makaleleri imlemek için karakter girin. <CR> ayarlar, <ESC> "
+	"iptal eder."
+
+#: src/lang.c:1575
+#, fuzzy
+msgid	"Character to show readselected arts"
+msgstr	"Okunmuþ-seçilmiþ makaleleri gösteren karakter"
+
+#: src/lang.c:1576
+#, fuzzy
+msgid	"# Character used to show that an art was selected before read (default ':')\n"
+	"# kill_level must be set accordingly, _ is turned into ' '\n"
+msgstr	"# Bir makalenin okunmadan seçildiðini göstermek için kullanýlan karakter "
+	"(varsayýlan ':')\n"
+	"# yok olma düzeyi ona göre ayarlanmalýdýr, _ þuna dönüþür ' '\n"
+
+#: src/lang.c:1581
+#, fuzzy
+msgid	"Enter maximum length of newsgroup names displayed. <CR> sets."
+msgstr	"Görünen haber gruplarýnýn en fazla uzunluðunu girin. <CR> ayarlar."
+
+#: src/lang.c:1582
+#, fuzzy
+msgid	"Max. length of group names shown"
+msgstr	"Gösterilen grup isimlerinin en fazla uzunluðu"
+
+#: src/lang.c:1583
+#, fuzzy
+msgid	"# Maximum length of the names of newsgroups displayed\n"
+msgstr	"# Görünen haber gryplarýnýn isimlerinin en fazla uzunluðu\n"
+
+#: src/lang.c:1588
+#, fuzzy
+msgid	"Show lines/score in listings"
+msgstr	"Listelerdeki satýrlarý/skoru göster"
+
+#: src/lang.c:1589
+#, fuzzy
+msgid	"# What informations should be displayed in article/thread listing\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#   0 = nothing\n"
+	"# * 1 = lines\n"
+	"#   2 = score\n"
+	"#   3 = lines & score\n"
+msgstr	"# Makale/parçacýk listelerinde hangi bilgiler gösterilmeli\n"
+	"# 0 = hiçbir þey, 1 = satýrlar, 2 = skor, 3 = satýrlar & skor\n"
+
+#: src/lang.c:1598
+#, fuzzy
+msgid	"0 = full page scrolling, -1 = show previous last line as first on next page, "
+	"-2 = half page"
+msgstr	"0 = tüm sayfa kaydýrýmý, -1 = önceki son satýrý bir sonraki sayfanýn ilk "
+	"satýrýnda göster, -2 = yarým sayfa"
+
+#: src/lang.c:1599
+#, fuzzy
+msgid	"Number of lines to scroll in pager"
+msgstr	"Sayfalayýcýda kaydýrýlan satýr sayýsý"
+
+#: src/lang.c:1600
+msgid	"# Number of lines that cursor-up/down will scroll in article pager\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#  -2 = half-page scrolling\n"
+	"#  -1 = the top/bottom line is carried over onto the next page\n"
+	"#   0 = page-by-page (traditional behavior)\n"
+	"# * 1 = line-by-line\n"
+	"#   2 or greater = scroll by 2 or more lines (only in the pager)\n"
+msgstr	""
+
+#: src/lang.c:1610
+msgid	"Display signatures. <SPACE> toggles & <CR> sets."
+msgstr	""
+
+#: src/lang.c:1611
+#, fuzzy
+msgid	"Display signatures"
+msgstr	"Seçenekleri Göster"
+
+#: src/lang.c:1612
+msgid	"# If OFF don't show signatures when displaying articles\n"
+msgstr	""
+
+#: src/lang.c:1616
+msgid	"Display uuencoded data as tagged attachments. <SPACE> toggles & <CR> sets."
+msgstr	""
+
+#: src/lang.c:1617
+msgid	"Display uue data as an attachment"
+msgstr	""
+
+#: src/lang.c:1618
+msgid	"# Handling of uuencoded data in the pager\n"
+	"# Possible values are (the default is marked with *):\n"
+	"# * 0 = no, display raw uuencoded data\n"
+	"#   1 = yes, uuencoded data will be condensed to a single tag line showing\n"
+	"#       size and filename, similar to how MIME attachments are displayed\n"
+	"#   2 = hide all, as for 1, but any line that looks like uuencoded data will\n"
+	"#       be folded into a tag line.\n"
+msgstr	""
+
+#: src/lang.c:1628
+msgid	"Decode German style TeX umlaut codes to ISO. <SPACE> toggles & <CR> sets."
+msgstr	""
+
+#: src/lang.c:1629
+msgid	"Display \"a as Umlaut-a"
+msgstr	""
+
+#: src/lang.c:1630
+msgid	"# If ON decode German style TeX umlaut codes to ISO and\n"
+	"# show \"a as Umlaut-a, etc.\n"
+msgstr	""
+
+#: src/lang.c:1635 src/lang.c:1645
+msgid	"Space separated list of header fields"
+msgstr	""
+
+#: src/lang.c:1636
+msgid	"Display these header fields (or *)"
+msgstr	""
+
+#: src/lang.c:1637
+msgid	"# Which news headers you wish to see. If you want to see _all_ the headers,\n"
+	"# place an '*' as this value. This is the only way a wildcard can be used.\n"
+	"# If you enter 'X-' as the value, you will see all headers beginning with\n"
+	"# 'X-' (like X-Alan or X-Pape). You can list more than one by delimiting "
+	"with\n"
+	"# spaces. Not defining anything turns off this option.\n"
+msgstr	""
+
+#: src/lang.c:1646
+#, fuzzy
+msgid	"Do not display these header fields"
+msgstr	"Aktüel habver baþlýlarý alanýnýn rengi"
+
+#: src/lang.c:1647
+msgid	"# Same as 'news_headers_to_display' except it denotes the opposite.\n"
+	"# An example of using both options might be if you thought X- headers were\n"
+	"# A Good Thing(tm), but thought Alan and Pape were miscreants...well then "
+	"you\n"
+	"# would do something like this:\n"
+	"# news_headers_to_display=X-\n"
+	"# news_headers_to_not_display=X-Alan X-Pape\n"
+	"# Not defining anything turns off this option.\n"
+msgstr	""
+
+#: src/lang.c:1657
+msgid	"Do you want to enable automatic handling of multipart/alternative articles?"
+msgstr	""
+
+#: src/lang.c:1658
+msgid	"Skip multipart/alternative parts"
+msgstr	""
+
+#: src/lang.c:1659
+msgid	"# If ON strip multipart/alternative messages automatically\n"
+msgstr	""
+
+#: src/lang.c:1664
+msgid	"A regex used to decide which lines to show in col_quote."
+msgstr	""
+
+#: src/lang.c:1665
+msgid	"Regex used to show quoted lines"
+msgstr	""
+
+#: src/lang.c:1666
+msgid	"# A regular expression that tin will use to decide which lines are\n"
+	"# quoted when viewing articles. Quoted lines are shown in col_quote.\n"
+	"# If you leave this blank, tin will use a built in default.\n"
+msgstr	""
+
+#: src/lang.c:1672
+msgid	"A regex used to decide which lines to show in col_quote2."
+msgstr	""
+
+#: src/lang.c:1673
+msgid	"Regex used to show twice quoted l."
+msgstr	""
+
+#: src/lang.c:1674
+msgid	"# A regular expression that tin will use to decide which lines are\n"
+	"# quoted twice. Twice quoted lines are shown in col_quote2.\n"
+	"# If you leave this blank, tin will use a built in default.\n"
+msgstr	""
+
+#: src/lang.c:1680
+msgid	"A regex used to decide which lines to show in col_quote3."
+msgstr	""
+
+#: src/lang.c:1681
+msgid	"Regex used to show >= 3 times q.l."
+msgstr	""
+
+#: src/lang.c:1682
+msgid	"# A regular expression that tin will use to decide which lines are\n"
+	"# quoted >=3 times. >=3 times quoted lines are shown in col_quote3.\n"
+	"# If you leave this blank, tin will use a built in default.\n"
+msgstr	""
+
+#: src/lang.c:1689
+msgid	"A regex used to decide which words to show in col_markslashes."
+msgstr	""
+
+#: src/lang.c:1690
+msgid	"Regex used to highlight /slashes/"
+msgstr	""
+
+#: src/lang.c:1691
+msgid	"# A regular expression that tin will use to decide which words\n"
+	"# bounded by '/' are to be shown in col_markslashes.\n"
+	"# If you leave this blank, tin will use a built in default.\n"
+msgstr	""
+
+#: src/lang.c:1697
+msgid	"A regex used to decide which words to show in col_markstars."
+msgstr	""
+
+#: src/lang.c:1698
+msgid	"Regex used to highlight *stars*"
+msgstr	""
+
+#: src/lang.c:1699
+msgid	"# A regular expression that tin will use to decide which words\n"
+	"# bounded by '*' are to be shown in col_markstars.\n"
+	"# If you leave this blank, tin will use a built in default.\n"
+msgstr	""
+
+#: src/lang.c:1705
+msgid	"A regex used to decide which words to show in col_markstroke."
+msgstr	""
+
+#: src/lang.c:1706
+#, fuzzy
+msgid	"Regex used to highlight -strokes-"
+msgstr	"-vuruþ- ile vurgulama rengi"
+
+#: src/lang.c:1707
+msgid	"# A regular expression that tin will use to decide which words\n"
+	"# bounded by '-' are to be shown in col_markstroke.\n"
+	"# If you leave this blank, tin will use a built in default.\n"
+msgstr	""
+
+#: src/lang.c:1713
+msgid	"A regex used to decide which words to show in col_markdash."
+msgstr	""
+
+#: src/lang.c:1714
+msgid	"Regex used to highlight _underline_"
+msgstr	""
+
+#: src/lang.c:1715
+msgid	"# A regular expression that tin will use to decide which words\n"
+	"# bounded by '_' are to be shown in col_markdash.\n"
+	"# If you leave this blank, tin will use a built in default.\n"
+msgstr	""
+
+#: src/lang.c:1721
+msgid	"A regex used to find Subject prefixes to remove.  Use '|' as separator."
+msgstr	""
+
+#: src/lang.c:1722
+msgid	"Regex with Subject prefixes"
+msgstr	""
+
+#: src/lang.c:1723
+msgid	"# A regular expression that tin will use to find Subject prefixes\n"
+	"# which will be removed before showing the header.\n"
+msgstr	""
+
+#: src/lang.c:1728
+msgid	"A regex used to find Subject suffixes to remove.  Use '|' as separator."
+msgstr	""
+
+#: src/lang.c:1729
+msgid	"Regex with Subject suffixes"
+msgstr	""
+
+#: src/lang.c:1730
+msgid	"# A regular expression that tin will use to find Subject suffixes\n"
+	"# which will be removed when replying or posting followup.\n"
+msgstr	""
+
+#: src/lang.c:1735
+msgid	"Enter name and options for external MIME viewer, --internal for built-in "
+	"viewer"
+msgstr	""
+
+#: src/lang.c:1736
+msgid	"MIME binary content viewer"
+msgstr	""
+
+#: src/lang.c:1737
+msgid	"# If --internal automatically use the built in MIME viewer for non-text\n"
+	"# parts of articles.\n"
+	"# Otherwise specify an external viewer program (eg, metamail) or leave blank\n"
+	"# for no automatic viewing\n"
+msgstr	""
+
+#: src/lang.c:1744
+msgid	"Confirm before starting non-text viewing program"
+msgstr	""
+
+#: src/lang.c:1745
+msgid	"Ask before using MIME viewer"
+msgstr	""
+
+#: src/lang.c:1746
+msgid	"# If ON tin will ask before using metamail to display MIME messages\n"
+	"# this only happens if metamail_prog is set to something\n"
+msgstr	""
+
+#: src/lang.c:1751
+msgid	"Ask to mark groups read when quitting. <SPACE> toggles & <CR> sets."
+msgstr	""
+
+#: src/lang.c:1752
+msgid	"Catchup read groups when quitting"
+msgstr	""
+
+#: src/lang.c:1753
+msgid	"# If ON ask user if read groups should all be marked read\n"
+msgstr	""
+
+#: src/lang.c:1758
+msgid	"Catchup group using left key"
+msgstr	""
+
+#: src/lang.c:1759
+msgid	"# If ON catchup group/thread when leaving with the left arrow key.\n"
+msgstr	""
+
+#: src/lang.c:1764
+msgid	"Catchup thread by using left key"
+msgstr	""
+
+#: src/lang.c:1770
+msgid	"Which actions require confirmation"
+msgstr	""
+
+#: src/lang.c:1771
+msgid	"# What should we ask confirmation for.\n"
+msgstr	""
+
+#: src/lang.c:1776
+#, fuzzy
+msgid	"'Mark article read' ignores tags"
+msgstr	"makaleyi okunmamýþ olarak iþaretle"
+
+#: src/lang.c:1777
+#, fuzzy
+msgid	"# If ON the 'Mark article read' function marks only the current article.\n"
+msgstr	"# ON durumundaysa 'makaleyi okunmuþ olarak iþaretle'"
+
+#: src/lang.c:1781
+#, fuzzy
+msgid	"Program to run to open URL's, <CR> sets, <ESC> cancels."
+msgstr	"URL açmak için çalýþtýrýlan program, <CR> ayarlar, <ESC> iptal eder."
+
+#: src/lang.c:1782
+#, fuzzy
+msgid	"Program that opens URL's"
+msgstr	"URL açan program"
+
+#: src/lang.c:1783
+#, fuzzy
+msgid	"# The program used to open URL's. The actual URL will be appended\n"
+msgstr	"# Program URL açýyordu. Aktüel URL'ler sona eklenecek\n"
+
+#: src/lang.c:1788
+#, fuzzy
+msgid	"Use mouse in xterm"
+msgstr	"xterm2de fare kullan"
+
+#: src/lang.c:1789
+#, fuzzy
+msgid	"# If ON enable mouse key support on xterm terminals\n"
+msgstr	"# ON durumundaysa xtrem uçbirimlerini destekleyen fare tuþunu etkinleþtir.\n"
+
+#: src/lang.c:1795
+#, fuzzy
+msgid	"Use scroll keys on keypad"
+msgstr	"Klavye üzerinde kaydýrma tuþlarýný kullan"
+
+#: src/lang.c:1796
+#, fuzzy
+msgid	"# If ON enable scroll keys on terminals that support it\n"
+msgstr	"# ON durumunduysa uçbirimler tarafýndan desteklenen kaydýrma tuþlarýný "
+	"etkinleþtir\n"
+
+#: src/lang.c:1801
+#, fuzzy
+msgid	"Enter maximum number of article to get. <CR> sets."
+msgstr	"Alýnacak makalenin max. sayýsýný yazýn. <CR> ayarlar."
+
+#: src/lang.c:1802
+#, fuzzy
+msgid	"Number of articles to get"
+msgstr	"Alýnacak makale sayýsý"
+
+#: src/lang.c:1803
+#, fuzzy
+msgid	"# Number of articles to get (0=no limit), if negative sets maximum number\n"
+	"# of already read articles to be read before first unread one\n"
+msgstr	"# Alýnacak makale sayýsý (0= sýnýrsýz), eðer negatif max.sayýyý ayarlarsa\n"
+
+#: src/lang.c:1808
+#, fuzzy
+msgid	"Enter number of days article is considered recent. <CR> sets."
+msgstr	"Makalenin yeni sayýlacaðý gün sayýsýný yazýn. <CR> ayarlar."
+
+#: src/lang.c:1809
+#, fuzzy
+msgid	"Article recentness time limit"
+msgstr	"Makalenin yenilik zaman sýnýrý"
+
+#: src/lang.c:1810
+#, fuzzy
+msgid	"# Number of days in which article is considered recent, (0=OFF)\n"
+msgstr	"# Makalenin yeni sayýldýðý gün sayýsý, (0=OFF)\n"
+
+#: src/lang.c:1814
+#, fuzzy
+msgid	"WILDMAT for normal wildcards, REGEX for full regular expression matching."
+msgstr	"WILDMAT normal jokerler, REGEX tam düzenli varsayým eþleþtirmeleri  içindir."
+
+#: src/lang.c:1815
+#, fuzzy
+msgid	"Wildcard matching"
+msgstr	"Joker eþleþtiriyor"
+
+#: src/lang.c:1816
+msgid	"# Wildcard matching\n"
+	"# Possible values are (the default is marked with *):\n"
+	"# * 0 = wildmat\n"
+	"#   1 = regex\n"
+msgstr	""
+
+#: src/lang.c:1823
+#, fuzzy
+msgid	"Enter minimal score before an article is marked killed. <CR> sets."
+msgstr	"Makale yok et olarak iþaretlenmeden önce minimal skoru yazýn.<CR> ayarlar."
+
+#: src/lang.c:1824
+#, fuzzy
+msgid	"Score limit (kill)"
+msgstr	"Sýnýrý skorla (yok et)"
+
+#: src/lang.c:1825
+#, fuzzy
+msgid	"# Score limit before an article is marked killed\n"
+msgstr	"# Makale yok et olarak iþaretlendiðinde sýnýrý skorla\n"
+
+#: src/lang.c:1829
+#, fuzzy
+msgid	"Enter default score to kill articles. <CR> sets."
+msgstr	"Makaleleri yok etmke için varsayýlan skoru yazýn. <CR> ayarlar."
+
+#: src/lang.c:1830
+#, fuzzy
+msgid	"Default score to kill articles"
+msgstr	"Makaleleri yok etmke için skoru varsay"
+
+#: src/lang.c:1831
+#, fuzzy
+msgid	"# Default score to kill articles\n"
+msgstr	"# Makaleleri yok etmke için skoru varsay\n"
+
+#: src/lang.c:1835
+#, fuzzy
+msgid	"Enter minimal score before an article is marked hot. <CR> sets."
+msgstr	"Makale 'hot' olarak iþaretlenmeden önce minimum skoru yazýn.<CR> ayarlar."
+
+#: src/lang.c:1836
+#, fuzzy
+msgid	"Score limit (select)"
+msgstr	"Sýnýrý skorla (seç)"
+
+#: src/lang.c:1837
+#, fuzzy
+msgid	"# Score limit before an article is marked hot\n"
+msgstr	"# Makale 'hot! olarak iþaretlenmeden önce sýnýrý skorlayýn\n"
+
+#: src/lang.c:1841
+#, fuzzy
+msgid	"Enter default score to select articles. <CR> sets."
+msgstr	"Makaleleri seçmek için varsayýlan skoru yazýn.<CR> ayarlar."
+
+#: src/lang.c:1842
+#, fuzzy
+msgid	"Default score to select articles"
+msgstr	"Makaleleri seçmek için varsayýlan deðer"
+
+#: src/lang.c:1843
+#, fuzzy
+msgid	"# Default score to select articles\n"
+msgstr	"# Makaleleri seçmek için varsayýlan deðer\n"
+
+#: src/lang.c:1849
+#, fuzzy
+msgid	"Use slrnface to show ''X-Face:''s"
+msgstr	"''X-Face:''s göstermek için slmface kullan"
+
+#: src/lang.c:1850
+#, fuzzy
+msgid	"# If ON using slrnface(1) to interpret the ''X-Face:'' header.\n"
+	"# Only useful when running in an xterm.\n"
+msgstr	"# ON durmunduysa ''X-Face:'' baþlýðýný yorumlamak için slrnface(1) "
+	"kullanýlýyor.\n"
+	"# sadece xterm çalýþýtýrýlýrken yararlý.\n"
+
+#: src/lang.c:1858
+#, fuzzy
+msgid	"Use ANSI color"
+msgstr	"ANSI renk geçerli"
+
+#: src/lang.c:1859
+#, fuzzy
+msgid	"# If ON using ANSI-color\n"
+msgstr	"# On durumundaysa ANSI-renk kullanýlýyor\n"
+
+#: src/lang.c:1864
+#, fuzzy
+msgid	"Standard foreground color"
+msgstr	"Standart önplan rengi"
+
+#: src/lang.c:1865
+#, fuzzy
+msgid	"# Standard foreground color\n"
+	"# Default: -1 (default color)\n"
+msgstr	"# Standart önplan rengi\n"
+
+#: src/lang.c:1871
+#, fuzzy
+msgid	"Standard background color"
+msgstr	"Standart arkaplan rengi"
+
+#: src/lang.c:1872
+#, fuzzy
+msgid	"# Standard background color\n"
+	"# Default: -1 (default color)\n"
+msgstr	"# Standart arkaplan rengi\n"
+
+#: src/lang.c:1878
+#, fuzzy
+msgid	"Color for inverse text (background)"
+msgstr	"Çapraz metnin arkaplan rengi"
+
+#: src/lang.c:1879
+#, fuzzy
+msgid	"# Color of background for inverse text\n"
+	"# Default: 4 (blue)\n"
+msgstr	"# Çapraz metnin arkaplan rengi\n"
+
+#: src/lang.c:1885
+#, fuzzy
+msgid	"Color for inverse text (foreground)"
+msgstr	"Çapraz metnin önplan rengi"
+
+#: src/lang.c:1886
+#, fuzzy
+msgid	"# Color of foreground for inverse text\n"
+	"# Default: 7 (white)\n"
+msgstr	"# Çapraz metnin önplan rengi\n"
+
+#: src/lang.c:1892
+#, fuzzy
+msgid	"Color of text lines"
+msgstr	"Metin satýrlarýnýn rengi"
+
+#: src/lang.c:1893
+#, fuzzy
+msgid	"# Color of text lines\n"
+	"# Default: -1 (default color)\n"
+msgstr	"# Color of text lines\n"
+
+#: src/lang.c:1899
+#, fuzzy
+msgid	"Color of mini help menu"
+msgstr	"Mini yardým menüsünün rengi"
+
+#: src/lang.c:1900
+#, fuzzy
+msgid	"# Color of mini help menu\n"
+	"# Default: 3 (brown)\n"
+msgstr	"# Mini yardým menüsünün rengi\n"
+
+#: src/lang.c:1906
+#, fuzzy
+msgid	"Color of help text"
+msgstr	"Yardým sayfalarýnýn rengi"
+
+#: src/lang.c:1907
+msgid	"# Color of help pages\n"
+	"# Default: -1 (default color)\n"
+msgstr	""
+
+#: src/lang.c:1913
+#, fuzzy
+msgid	"Color of status messages"
+msgstr	"Durum iletilerinin rengi"
+
+#: src/lang.c:1914
+#, fuzzy
+msgid	"# Color of messages in last line\n"
+	"# Default: 6 (cyan)\n"
+msgstr	"# Son satýrdaki iletilerin rengi\n"
+
+#: src/lang.c:1920
+#, fuzzy
+msgid	"Color of quoted lines"
+msgstr	"Ýmlenmiþ-satýr rengi"
+
+#: src/lang.c:1921
+#, fuzzy
+msgid	"# Color of quote-lines\n"
+	"# Default: 2 (green)\n"
+msgstr	"# Ýmlenmiþ-satýr rengi\n"
+
+#: src/lang.c:1927
+#, fuzzy
+msgid	"Color of twice quoted line"
+msgstr	"Çift imlenen satýrlarýn rengi"
+
+#: src/lang.c:1928
+#, fuzzy
+msgid	"# Color of twice quoted lines\n"
+	"# Default: 3 (brown)\n"
+msgstr	"# Çift imlenen satýrlarýn rengi\n"
+
+#: src/lang.c:1934
+#, fuzzy
+msgid	"Color of =>3 times quoted line"
+msgstr	"Ýmlenmiþ satýrda =>3 kat rengi"
+
+#: src/lang.c:1935
+#, fuzzy
+msgid	"# Color of >=3 times quoted lines\n"
+	"# Default: 4 (blue)\n"
+msgstr	"# Ýmlenmiþ satýrlarda >=3 kat rengi\n"
+
+#: src/lang.c:1941
+#, fuzzy
+msgid	"Color of article header lines"
+msgstr	"Makale baþlýk satýrlarýnýn rengi"
+
+#: src/lang.c:1942
+#, fuzzy
+msgid	"# Color of header-lines\n"
+	"# Default: 2 (green)\n"
+msgstr	"# Baþlýk-satýrlarýnýn rengi\n"
+
+#: src/lang.c:1948
+#, fuzzy
+msgid	"Color of actual news header fields"
+msgstr	"Aktüel habver baþlýlarý alanýnýn rengi"
+
+#: src/lang.c:1949
+#, fuzzy
+msgid	"# Color of actual news header fields\n"
+	"# Default: 9 (light red)\n"
+msgstr	"# Aktüel haber baþlýklarý alanýnýn rengi\n"
+
+#: src/lang.c:1955
+#, fuzzy
+msgid	"Color of article subject lines"
+msgstr	"Makale konu satýrlarýnýn rengi"
+
+#: src/lang.c:1956
+#, fuzzy
+msgid	"# Color of article subject\n"
+	"# Default: 6 (cyan)\n"
+msgstr	"# Makale konusunun rengi\n"
+
+#: src/lang.c:1962
+#, fuzzy
+msgid	"Color of response counter"
+msgstr	"Yanýt sayacý rengi"
+
+#: src/lang.c:1963
+#, fuzzy
+msgid	"# Color of response counter\n"
+	"# Default: 2 (green)\n"
+msgstr	"# Yanýt sayacý rengi\n"
+
+#: src/lang.c:1969
+#, fuzzy
+msgid	"Color of sender (From:)"
+msgstr	"Gönderen (-den:) rengi"
+
+#: src/lang.c:1970
+#, fuzzy
+msgid	"# Color of sender (From:)\n"
+	"# Default: 2 (green)\n"
+msgstr	"# Gönderen (-den:) rengi\n"
+
+#: src/lang.c:1976
+#, fuzzy
+msgid	"Color of help/mail sign"
+msgstr	"yardým/posta iþareti rengi"
+
+#: src/lang.c:1977
+#, fuzzy
+msgid	"# Color of Help/Mail-Sign\n"
+	"# Default: 4 (blue)\n"
+msgstr	"# Yardým/Posta Ýþareti rengi\n"
+
+#: src/lang.c:1983
+#, fuzzy
+msgid	"Color of signatures"
+msgstr	"Ýmza rengi"
+
+#: src/lang.c:1984
+#, fuzzy
+msgid	"# Color of signature\n"
+	"# Default: 4 (blue)\n"
+msgstr	"# Ýmza rengi\n"
+
+#: src/lang.c:1990
+#, fuzzy
+msgid	"Color of highlighted URLs"
+msgstr	"*yýldýz* ile vurgulama rengi"
+
+#: src/lang.c:1991
+msgid	"# Color of highlighted URLs\n"
+	"# Default: -1 (default color)\n"
+msgstr	""
+
+#: src/lang.c:1997
+#, fuzzy
+msgid	"Color of highlighting with *stars*"
+msgstr	"*yýldýz* ile vurgulama rengi"
+
+#: src/lang.c:1998
+#, fuzzy
+msgid	"# Color of word highlighting with *stars*\n"
+	"# Default: 11 (yellow)\n"
+msgstr	"# *yýldýz* ile vurgulama rengi\n"
+
+#: src/lang.c:2004
+#, fuzzy
+msgid	"Color of highlighting with _dash_"
+msgstr	"_kesik çizgi_ ile vurgulama rengi"
+
+#: src/lang.c:2005
+#, fuzzy
+msgid	"# Color of word highlighting with _dash_\n"
+	"# Default: 13 (light pink)\n"
+msgstr	"# _kesik çizgi_ ile vurgulama rengi\n"
+
+#: src/lang.c:2011
+#, fuzzy
+msgid	"Color of highlighting with /slash/"
+msgstr	"/bölü/ ile vurgulama rengi"
+
+#: src/lang.c:2012
+#, fuzzy
+msgid	"# Color of word highlighting with /slash/\n"
+	"# Default: 14 (light cyan)\n"
+msgstr	"# /bölü/ ile vurgulama rengi\n"
+
+#: src/lang.c:2018
+#, fuzzy
+msgid	"Color of highlighting with -stroke-"
+msgstr	"-vuruþ- ile vurgulama rengi"
+
+#: src/lang.c:2019
+#, fuzzy
+msgid	"# Color of word highlighting with -stroke-\n"
+	"# Default: 12 (light blue)\n"
+msgstr	"# -vuruþ- ile vurgulama rengi\n"
+
+#: src/lang.c:2026
+#, fuzzy
+msgid	"Attr. of highlighting with *stars*"
+msgstr	"*yýldýz*  ile vurgulama özniteliði"
+
+#: src/lang.c:2027
+#, fuzzy
+msgid	"# Attributes of word highlighting on mono terminals\n"
+	"# Possible values are:\n"
+	"#   0 = Normal\n"
+	"#   1 = Underline\n"
+	"#   2 = Best highlighting\n"
+	"#   3 = Reverse video\n"
+	"#   4 = Blinking\n"
+	"#   5 = Half bright\n"
+	"#   6 = Bold\n"
+	"\n"
+	"# Attribute of word highlighting with *stars*\n"
+	"# Default: 6 (bold)\n"
+msgstr	"# Tekli uçbirimlerde sözcük vurgulama özniteliði.\n"
+	"# Makalelerde dört olanak vardýr:\n"
+	"# *yýldýz*, /bölü/, _kesik çizgi_ and -vuruþ-.\n"
+	"Olasý deðerler\n"
+	"# 0 - Normal, 1 - Altýný çiz, 2 - En iyi vurgulama,\n"
+	"# 3 - Video ters çevir, 4 - Yanýp sönen, 5 - Yaý parlak, 6 - Koyu\n"
+
+#: src/lang.c:2042
+#, fuzzy
+msgid	"Attr. of highlighting with _dash_"
+msgstr	"_vuruþ_  ile vurgulama özniteliði"
+
+#: src/lang.c:2043
+msgid	"# Attribute of word highlighting with _dash_\n"
+	"# Default: 2 (best highlighting)\n"
+msgstr	""
+
+#: src/lang.c:2049
+#, fuzzy
+msgid	"Attr. of highlighting with /slash/"
+msgstr	"/bölü/ ile vurgulama özniteliði"
+
+#: src/lang.c:2050
+#, fuzzy
+msgid	"# Attribute of word highlighting with /slash/\n"
+	"# Default: 5 (half bright)\n"
+msgstr	"# /bölü/ ile vurgulama özniteliði\n"
+
+#: src/lang.c:2056
+#, fuzzy
+msgid	"Attr. of highlighting with -stroke-"
+msgstr	"-kesik çizgi- ile vurgulama özniteliði"
+
+#: src/lang.c:2057
+#, fuzzy
+msgid	"# Attribute of word highlighting with -stroke-\n"
+	"# Default: 3 (reverse video)\n"
+msgstr	"# -kesik çizgi- ile vurgulama özniteliði\n"
+
+#: src/lang.c:2063
+#, fuzzy
+msgid	"URL highlighting in message body"
+msgstr	"Ýleti gövdesinde vurgulana sözcük"
+
+#: src/lang.c:2064
+#, fuzzy
+msgid	"# Enable URL highlighting?\n"
+msgstr	"# Sözcük vurgulamayý etkinlþetir?\n"
+
+#: src/lang.c:2069
+#, fuzzy
+msgid	"Word highlighting in message body"
+msgstr	"Ýleti gövdesinde vurgulana sözcük"
+
+#: src/lang.c:2070
+#, fuzzy
+msgid	"# Enable word highlighting?\n"
+msgstr	"# Sözcük vurgulamayý etkinlþetir?\n"
+
+#: src/lang.c:2075
+#, fuzzy
+msgid	"What to display instead of mark"
+msgstr	"Ýþaretin yerine ne gösterilmeli?"
+
+#: src/lang.c:2076
+#, fuzzy
+msgid	"# Should the leading and ending stars and dashes also be displayed,\n"
+	"# even when they are highlighting marks?\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#   0 = no\n"
+	"#   1 = yes, display mark\n"
+	"# * 2 = print a space instead\n"
+msgstr	"#iþaretleri vurgulasalar bile?\"#baþtaki ve sondaki yýldýzlar ve kesik "
+	"çizgiler görüntülenmelidir\n"
+	"# 0 - hayýr    1 - evet, iþareti görüntüle    2 - boþluk býrak\n"
+
+#: src/lang.c:2085
+#, fuzzy
+msgid	"Enter column number to wrap article lines to in the pager. <CR> sets."
+msgstr	"Sayfalayýcýdaki makale satýrlarýný çevrelemek için sütun mumarasýný yazýn. "
+	"<CR> ayarlar."
+
+#: src/lang.c:2086
+#, fuzzy
+msgid	"Page line wrap column"
+msgstr	"Sayfa satýrý sütunu çevreliyor"
+
+#: src/lang.c:2087
+#, fuzzy
+msgid	"# Wrap article lines at column\n"
+msgstr	"# Sütundaki makale satýrlarýný çevrele\n"
+
+#: src/lang.c:2092
+#, fuzzy
+msgid	"Wrap around threads on next unread"
+msgstr	"Sonraki okunmayanda parçacýklarý çevrele"
+
+#: src/lang.c:2093
+#, fuzzy
+msgid	"# If ON wrap around threads on searching next unread article\n"
+msgstr	"# ON durumunduysa sonraki okunmayan makaleyi aramak için parçacýklarý "
+	"çevrele\n"
+
+#: src/lang.c:2097
+#, fuzzy
+msgid	"Enter default mail address (and fullname). <CR> sets."
+msgstr	"Varsayýlan posta adresini (ve tüm ismi) yaz, <CR> ayarlar."
+
+#: src/lang.c:2098
+#, fuzzy
+msgid	"Mail address (and fullname)"
+msgstr	"Posta adresi (ile tüm isim)"
+
+#: src/lang.c:2099
+#, fuzzy
+msgid	"# User's mail address (and fullname), if not username@host (fullname)\n"
+msgstr	"# Kullanýcýnýn posta adresi (ile tüm ismi), deðilse kullanýcýadý@anasistem "
+	"(tüm isim)\n"
+
+#: src/lang.c:2104
+msgid	"Show empty Followup-To in editor"
+msgstr	""
+
+#: src/lang.c:2105
+msgid	"# If ON show empty Followup-To header when editing an article\n"
+msgstr	""
+
+#: src/lang.c:2109
+msgid	"Enter path/! command/--none to create your default signature. <CR> sets."
+msgstr	""
+
+#: src/lang.c:2110
+msgid	"Create signature from path/command"
+msgstr	""
+
+#: src/lang.c:2111
+msgid	"# Signature path (random sigs)/file to be used when posting/replying\n"
+	"# default_sigfile=file       appends file as signature\n"
+	"# default_sigfile=!command   executes external command to generate a "
+	"signature\n"
+	"# default_sigfile=--none     don't append a signature\n"
+msgstr	""
+
+#: src/lang.c:2118
+msgid	"Prepend signature with \"-- \" on own line. <SPACE> toggles & <CR> sets."
+msgstr	""
+
+#: src/lang.c:2119
+msgid	"Prepend signature with \"-- \""
+msgstr	""
+
+#: src/lang.c:2120
+msgid	"# If ON prepend the signature with dashes '\\n-- \\n'\n"
+msgstr	""
+
+#: src/lang.c:2124
+msgid	"Add signature when reposting articles. <SPACE> toggles & <CR> sets."
+msgstr	""
+
+#: src/lang.c:2125
+msgid	"Add signature when reposting"
+msgstr	""
+
+#: src/lang.c:2126
+msgid	"# If ON add signature to reposted articles\n"
+msgstr	""
+
+#: src/lang.c:2130
+msgid	"Enter quotation marks, %s or %S for author's initials."
+msgstr	""
+
+#: src/lang.c:2131
+msgid	"Characters used as quote-marks"
+msgstr	""
+
+#: src/lang.c:2132
+#, fuzzy
+msgid	"# Characters used in quoting to followups and replies.\n"
+	"# '_' is replaced by ' ', %%s, %%S are replaced by author's initials.\n"
+msgstr	"# Sonrakine geçerken ve cevaplarda kulanýlan karakterlerin gösterimi.\n"
+	"# '_'  deðiþtirilir ' ', %%s, %%S yazar baþlýðý deðiþtirilir.\n"
+
+#: src/lang.c:2138
+#, fuzzy
+msgid	"Quoting behavior"
+msgstr	"Davranýþ göstermesi"
+
+#: src/lang.c:2139
+#, fuzzy
+msgid	"# How quoting should be handled when following up or replying.\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#   0 = Nothing special\n"
+	"#   1 = Compress quotes\n"
+	"#   2 = Quote signatures\n"
+	"#   3 = Compress quotes, quote signatures\n"
+	"#   4 = Quote empty lines\n"
+	"# * 5 = Compress quotes, quote empty lines\n"
+	"#   6 = Quote signatures, quote empty lines\n"
+	"#   7 = Compress quotes, quote signatures, quote empty lines\n"
+msgstr	"Diðerine geçerken yada cevap verirken görünüm nasýl olmalý.\n"
+	"# 0 = Normal\n"
+	"# 1 = Görünümleri sýkýþtýr\n"
+	"# 2 = Ýmzayý göster\n"
+	"# 3 = Görünümleri þýkýþtýr, imzalarý göster\n"
+	"# 4 = Boþ satýrlarý göster\n"
+	"# 5 = Görünümleri sýkýþtýr, boþ satýrlarý göster\n"
+	"# 6 = Ýmzalarý göster, boþ satýrlarý göster\n"
+	"# 7 = Görünümleri göster, imzalarý göster, boþ satýrlarý göster\n"
+
+#: src/lang.c:2152 src/lang.c:2160 src/lang.c:2166
+#, fuzzy
+msgid	"%A Addr %D Date %F Addr+Name %G Groupname %M Message-ID %N Name %C First Name"
+msgstr	"%A Adres %D Tarih %F Adres+Ad %G Grupadý %M Ýleti-Kimliði %N Ad %C Ýlk Ad"
+
+#: src/lang.c:2153
+#, fuzzy
+msgid	"Quote line when following up"
+msgstr	"Sonrakine geçerken satýr göster"
+
+#: src/lang.c:2154
+#, fuzzy
+msgid	"# Format of quote line when mailing/posting/following-up an article\n"
+	"# %%A Address    %%D Date   %%F Addr+Name   %%G Groupname   %%M Message-ID\n"
+	"# %%N Full Name  %%C First Name   %%I Initials\n"
+msgstr	"# Bir makaleyi postalarken/gönderirken/diðerine geçerken görünüm satýrý "
+	"biçimleyiniz\n"
+	"# %%A Adres   %%D Tarih   %%F Adres+Ad   %%G Grupadý   %%M Ýleti-Kimliði\n"
+	"# %%N Tam Ad  %%C Ýlk Adýnýz   %%I Adýn baþ harfleri\n"
+
+#: src/lang.c:2161
+#, fuzzy
+msgid	"Quote line when cross-posting"
+msgstr	"Çapraz gönderirken satýrý göster"
+
+#: src/lang.c:2167
+#, fuzzy
+msgid	"Quote line when mailing"
+msgstr	"posta gönderirken satýrý göster"
+
+#: src/lang.c:2172
+#, fuzzy
+msgid	"If ON, include User-Agent: header. <SPACE> toggles & <CR> sets."
+msgstr	"ON durumdaysa, Kullanýcý-Etken baþlýðý ekleyiniz.  <SPACE> toggles & <CR> "
+	"sets."
+
+#: src/lang.c:2173
+#, fuzzy
+msgid	"Insert 'User-Agent:'-header"
+msgstr	"'User-Agent:'-baþlýk ekleyiniz"
+
+#: src/lang.c:2174
+#, fuzzy
+msgid	"# If ON include advertising User-Agent: header\n"
+msgstr	"# ON durumdaysa User-Agent ilanýný ekleyiniz: baþlýk\n"
+
+#: src/lang.c:2179
+#, fuzzy
+msgid	"Enter charset name for MIME (e.g. US-ASCII, ISO-8859-1, EUC-KR), <CR> to set."
+msgstr	"(US-ASCII, ISO-8859-1, EUC-KR) Çok Amaçlý Internet Posta Uzantýlarý için "
+	"karakterküme ismini giriniz."
+
+#: src/lang.c:2180
+msgid	"MM_CHARSET"
+msgstr	""
+
+#: src/lang.c:2181
+#, fuzzy
+msgid	"# Charset supported locally which is also used for MIME header and\n"
+	"# Content-Type header.\n"
+	"# If not set, the value of the environment variable MM_CHARSET is used.\n"
+	"# Set to US-ASCII or compile time default if neither of them is defined.\n"
+	"# If MIME_STRICT_CHARSET is defined at compile-time, charset other than\n"
+	"# mm_charset is considered not displayable and represented as '?'.\n"
+msgstr	"# Karakterkümesi Çok Amaçlý Internet Posta Uzantýlarý baþlýklarý için de "
+	"yerel olarak desteklenmemktedir\n"
+	"# Ýçerik-Tür baþlýðý.\n"
+	"# Kurulmamýþsa, çevre deðerli MM_KARAKTERKÜMESÝ kullanýlýr.\n"
+	"# US-ASCII kümesi yada varsayýlan zamanýnýn tanýmý yoksa derleyiniz.\n"
+	"# Çok Amaçlý Internet Posta Uzantýlarý_STICT_KARAKTERKÜMESÝ doðru zamanda "
+	"tanýmlanmýþsa, diðer karakterkümesi\n"
+	"# mm_karakterkümesi görünemez ve gösteremez '?'.\n"
+
+#: src/lang.c:2191
+#, fuzzy
+msgid	"MM_NETWORK_CHARSET"
+msgstr	"MM_AÐ_KARAKTERKÜMESÝ"
+
+#: src/lang.c:2192
+#, fuzzy
+msgid	"# Charset used for MIME (Content-Type) header in postings.\n"
+msgstr	"# Çok Amaçlý Internet Posta Uzantýlarýn (içerik-tür) posta baþlýklarý için "
+	"kulanýlan karakter kümesi\n"
+
+#: src/lang.c:2198
+#, fuzzy
+msgid	"Mailbox format"
+msgstr	"posta kutusu"
+
+#: src/lang.c:2199
+#, fuzzy
+msgid	"# Format of the mailbox.\n"
+msgstr	"# Posta kutusunun biçimi.\n"
+
+#: src/lang.c:2204
+#, fuzzy
+msgid	"MIME encoding in news messages"
+msgstr	"Yeni mesajlarda Çok Amaçlý Internet Posta Uzantýlarý kodla"
+
+#: src/lang.c:2205
+#, fuzzy
+msgid	"# MIME encoding (8bit, base64, quoted-printable, 7bit) of the body\n"
+	"# for mails and posts, if necessary. QP is efficient for most European\n"
+	"# character sets (ISO-8859-X) with small fraction of non-US-ASCII chars,\n"
+	"# while Base64 is more efficient for most 8bit East Asian, Greek, and\n"
+	"# Russian charsets with a lot of 8bit characters.\n"
+msgstr	"# Çok Amaçlý Internet Posta Uzantýlarý kodlayýcý (8bit, base64, "
+	"quoted-printable, 7bit)\n"
+	"# e-postalar için, gerektiðinde. QP European için yüksek verimlidir\n"
+	"# Karakter kümesi (ISO-8859-X) küçük iþaretli kesir US-ASCII karakterler\n"
+	"# Base64 8bit Doðu Asya ve Yunancadan daha yüksek verimlidir\n"
+	"# Rusça karakter kümesinin 8bit karakterler.\n"
+
+#: src/lang.c:2213 src/lang.c:2234
+#, fuzzy
+msgid	"Don't change unless you know what you are doing. <ESC> cancels."
+msgstr	"Ne yaptýðýný bilmiyorsan deðiþtirme. <ESC> iptal eder."
+
+#: src/lang.c:2214
+#, fuzzy
+msgid	"Use 8bit characters in news headers"
+msgstr	"Yeni baþlýklarda 8bit karakter kullan."
+
+#: src/lang.c:2215
+#, fuzzy
+msgid	"# If ON, 8bit characters in news headers are NOT encoded.\n"
+	"# default is OFF. Thus 8bit characters are encoded by default.\n"
+	"# 8bit chars in header are encoded regardless of the value of this\n"
+	"# parameter unless post_mime_encoding is 8bit as well.\n"
+msgstr	"# ON durumdaysa, 8bit karakterler yeni baþlýklarda kodlanmaz.\n"
+	"# varsayýlan OFF durumdaysa 8bit karakterler kodlanýr 8bit baþlýklardaki\n"
+	"# karakterlerin deðeri bakýlmadan kodlanýr\n"
+	"# Çok Amaçlý Internet Posta Uzantýlarý kodlamasý 8bit ise\n"
+
+#: src/lang.c:2222
+#, fuzzy
+msgid	"Auto-view post-processed files <SPACE> toggles, <CR> sets, <ESC> cancels."
+msgstr	"Soniþemci dosyalarý otomatik olarak göster <SPACE> toggles, <CR> sets, <ESC> "
+	"cancels."
+
+#: src/lang.c:2223
+#, fuzzy
+msgid	"View post-processed files"
+msgstr	"Soniþlemci dosyalarý göster"
+
+#: src/lang.c:2224
+#, fuzzy
+msgid	"# If set, post processed files will be opened in a viewer\n"
+msgstr	"# Kurulmuþsa, soniþlemci dosyalar görünüleyicide açýlacak\n"
+
+#: src/lang.c:2229
+#, fuzzy
+msgid	"MIME encoding in mail messages"
+msgstr	"Çok Amaçlý Internet Posta Uzantýlarý posta iletilerinde kodla"
+
+#: src/lang.c:2235
+#, fuzzy
+msgid	"Use 8bit characters in mail headers"
+msgstr	"Posta baþlýklarýnda 8bit karakter kullan"
+
+#: src/lang.c:2236
+#, fuzzy
+msgid	"# If ON, 8bit characters in mail headers are NOT encoded.\n"
+	"# default is OFF. Thus 8bit characters are encoded by default.\n"
+	"# 8bit chars in headers are encoded regardless of the value of this "
+	"parameter\n"
+	"# unless mail_mime_encoding is 8bit as well. Note that RFC 2822\n"
+	"# prohibits 8bit characters in mail headers so that you are advised NOT to\n"
+	"# turn it ON unless you have some compelling reason.\n"
+msgstr	"# ON durumdaysa, 8bit karakterler posta baþlýklarýnda kodlanmaz\n"
+	"# 8bit baþlýklardaki karakterler parametrelerin deðeri bakýlmadan kodlanýr\n"
+	"# Çok Amaçlý Internet Posta Uzantýlarý kodlamasý 8bit deðilse. Dikkat ! RFC "
+	"2822\n"
+	"# posta baþlýklarýnda 8bit karakterleri yasaksa iptal önerilir HAYIR -e\n"
+	"# Çok önemli neden yoksa ON durumuna getir\n"
+
+#: src/lang.c:2246
+#, fuzzy
+msgid	"Strip blanks from ends of lines"
+msgstr	"Satýr sonu boþlarý yok et"
+
+#: src/lang.c:2247
+#, fuzzy
+msgid	"# If ON strip blanks from ends of lines for faster display on slow "
+	"terminals.\n"
+msgstr	"# ON durumdaysa yavaþ uçbirimde daha hýzlý görüntü için boþlarý yok et.\n"
+
+#: src/lang.c:2252
+#, fuzzy
+msgid	"If ON, use transliteration. <SPACE> toggles & <CR> sets."
+msgstr	"ON durumdaysa damga çevirisi kullan.  <SPACE> toggles & <CR> sets."
+
+#: src/lang.c:2253
+#, fuzzy
+msgid	"Transliteration"
+msgstr	"Damga çevirisi"
+
+#: src/lang.c:2254
+#, fuzzy
+msgid	"# If ON, use //TRANSLIT extension. This means that when a character cannot\n"
+	"# be represented in the in the target character set, it can be approximated\n"
+	"# through one or several similarly looking characters.\n"
+msgstr	"# ON durumdaysa, //DAMGAÇEVÝRÝSÝ uzantýsý kullan. Karakterin yapamadýðýný\n"
+	"# daha büyük damga kümesi, yaklaþýk deðer verilebilir\n"
+	"# Bir veya daha fazla ayný karakter\n"
+
+#: src/lang.c:2261
+#, fuzzy
+msgid	"Send you a carbon copy automatically. <SPACE> toggles & <CR> sets."
+msgstr	"Mektup kopyasý otomatik olarak kendine gönder. <SPACE> toggles & <CR> sets."
+
+#: src/lang.c:2262
+#, fuzzy
+msgid	"Send you a cc automatically"
+msgstr	"Mektup kopyasý otomatik olarak kendine gönder."
+
+#: src/lang.c:2263
+#, fuzzy
+msgid	"# If ON automatically put your name in the Cc: field when mailing an article\n"
+msgstr	"# ON durumdaysa otomatic olarak ismini mektup kopyasýna koy: Makaleyi "
+	"gönderirken alan yarat\n"
+
+#: src/lang.c:2267
+#, fuzzy
+msgid	"Send you a blind carbon copy automatically. <SPACE> toggles & <CR> sets."
+msgstr	"Gizli mektup kopyasý otomatik olarak kendine gönder."
+
+#: src/lang.c:2268
+#, fuzzy
+msgid	"Send you a blind cc automatically"
+msgstr	"Gizli mektup kopyasý otomatik olarak kendine gönder"
+
+#: src/lang.c:2269
+#, fuzzy
+msgid	"# If ON automatically put your name in the Bcc: field when mailing an "
+	"article\n"
+msgstr	"# ON durumdaysa otomatic olarak ismini görünmeyen mektup kopyasýna koy: "
+	"Makaleyi gönderirken alan yarat\n"
+
+#: src/lang.c:2273
+#, fuzzy
+msgid	"Enter address elements about which you want to be warned. <CR> sets."
+msgstr	"uyarýlmak istediðin adres öðelerine gir <CR> sets."
+
+#: src/lang.c:2274
+#, fuzzy
+msgid	"Spamtrap warning address parts"
+msgstr	"isteneyen e-mail posta uyarýsý"
+
+#: src/lang.c:2275
+#, fuzzy
+msgid	"# A comma-delimited list of address-parts you want to be warned\n"
+	"# about when trying to reply by email.\n"
+msgstr	"# Uyarýlmak isiyorsan virgülle-sýnýrlanmýþ address-kýsýmlarýn listesini "
+	"göster\n"
+	"# e-posta ile cevap yazmak istediðin zaman\n"
+
+#: src/lang.c:2280
+#, fuzzy
+msgid	"Enter default number of days a filter entry will be valid. <CR> sets."
+msgstr	"Süz giriþin geçerli olacaðý varsayýlan günler sayýsýna gir <CR> sets."
+
+#: src/lang.c:2281
+#, fuzzy
+msgid	"No. of days a filter entry is valid"
+msgstr	"Süz girdisinin geçerli günler sayýsý"
+
+#: src/lang.c:2282
+#, fuzzy
+msgid	"# Number of days a short term filter will be active\n"
+msgstr	"# Kýsa sürecek süzün aktif olacaðý günler sayýsý\n"
+
+#: src/lang.c:2286
+msgid	"Add posted articles to filter. <SPACE> toggles & <CR> sets."
+msgstr	""
+
+#: src/lang.c:2287
+#, fuzzy
+msgid	"Add posted articles to filter"
+msgstr	"Gönderilen makaleleri süzgece ekle"
+
+#: src/lang.c:2288
+#, fuzzy
+msgid	"# If ON add posted articles which start a new thread to filter for\n"
+	"# highlighting follow-ups\n"
+msgstr	"# ON durumduysa gönderilmiþ makaleleri ekle# highlighting follow-ups\n"
+
+#: src/lang.c:2292
+#, fuzzy
+msgid	"The directory where articles/threads are to be saved in mailbox format."
+msgstr	"makaleler/iç parçacýklarýn posta kutusu olarak kaydedilecek dizin."
+
+#: src/lang.c:2293
+#, fuzzy
+msgid	"Mail directory"
+msgstr	"Posta dizini"
+
+#: src/lang.c:2294
+#, fuzzy
+msgid	"# (-m) directory where articles/threads are saved in mailbox format\n"
+msgstr	"# makaleler/iç parçacýklarýn posta kutusu olarak kaydetmek istediðin dizin\n"
+
+#: src/lang.c:2299
+#, fuzzy
+msgid	"Save articles in batch mode (-S)"
+msgstr	"Makaleleri toplu moda kaydet (-S)"
+
+#: src/lang.c:2300
+#, fuzzy
+msgid	"# If ON articles/threads will be saved in batch mode when save -S\n"
+	"# or mail (-M/-N) is specified on the command line\n"
+msgstr	"# ON durumdaysa kaydeti bastýðýn zaman makaleler/iç parçacýklar\n"
+	"# toplu mode olarak kaydedilir\n"
+
+#: src/lang.c:2305
+#, fuzzy
+msgid	"The directory where you want articles/threads saved."
+msgstr	"makeleleri7iç parçacýklarýný kaydetmek istediðin dizin."
+
+#: src/lang.c:2306
+#, fuzzy
+msgid	"Directory to save arts/threads in"
+msgstr	"iç parçacýklarýn kaydedildiði dizin"
+
+#: src/lang.c:2307
+#, fuzzy
+msgid	"# Directory where articles/threads are saved\n"
+msgstr	"# Kaydedilmiþ makalelerin/iç parçacýklarýn olduðu dizin\n"
+
+#: src/lang.c:2311
+#, fuzzy
+msgid	"Auto save article/thread by Archive-name: header. <SPACE> toggles & <CR> sets."
+msgstr	"Arçivadý olarak makaleleri/iç parçacýklarý otomatik olarak kaydet: header. "
+	"<SPACE> toggles & <CR> sets."
+
+#: src/lang.c:2312
+#, fuzzy
+msgid	"Use Archive-name: header for save"
+msgstr	"Arþiv ismi kullan: baþlýk kaydetme"
+
+#: src/lang.c:2313
+#, fuzzy
+msgid	"# If ON articles/threads with Archive-name: in mail header will\n"
+	"# be automatically saved with the Archive-name & part/patch no.\n"
+msgstr	"# ON durumdaysa Arþiv ismi ile makaleleri/iç parçacýklarý: posta baþlýðý "
+	"will\n"
+	"# Arþiv ismi &\n"
+
+#: src/lang.c:2318
+#, fuzzy
+msgid	"Mark saved articles/threads as read. <SPACE> toggles, <CR> sets, <ESC> "
+	"cancels."
+msgstr	"Kaydedilmiþ makaleleri /iç parçacýklarý okunmuþ olarak iþaretle. <ARALIK> "
+	"büyük küçük harf, <CR> kümeler, <ESC> iptal et."
+
+#: src/lang.c:2319
+#, fuzzy
+msgid	"Mark saved articles/threads as read"
+msgstr	"Kaydedilmiþ makaleleri /iç parçacýklarý okunmuþ olarak iþaretle"
+
+#: src/lang.c:2320
+#, fuzzy
+msgid	"# If ON mark articles that are saved as read\n"
+msgstr	"# ON durumdaysa kaydedilmiþ makaleleri okunmuþ olarak iþaretle\n"
+
+#: src/lang.c:2324
+#, fuzzy
+msgid	"Do post processing (eg. extract attachments) for saved articles."
+msgstr	"Kaydedilmiþ makaleler için iþlem gönder (örn. ekleri çýkart) for saved "
+	"articles."
+
+#: src/lang.c:2325
+#, fuzzy
+msgid	"Post process saved articles"
+msgstr	"Kaydedilmiþ makaleleri gönder"
+
+#: src/lang.c:2326
+#, fuzzy
+msgid	"# Perform post processing (saving binary attachments) from saved articles.\n"
+	"# Possible values are (the default is marked with *):\n"
+	"# * 0 = no\n"
+	"#   1 = extract shell archives (shar) only\n"
+	"#   2 = yes\n"
+msgstr	"# Kaydedilmiþ makaleler gönderme iþlemini bitir.\n"
+	"# 0=(evet) 1=(hayýr) 2=(kabuk arþivleri bul (shar) only)\n"
+
+#: src/lang.c:2335
+#, fuzzy
+msgid	"Process only unread articles"
+msgstr	"Sadece okunmayan makaleleri iþle"
+
+#: src/lang.c:2336
+#, fuzzy
+msgid	"# If ON only save/print/pipe/mail unread articles (tagged articles excepted)\n"
+msgstr	"# ON durumundaysa okunmamýþ makaleleri sadece kaydet/yazdýr/ilet/postala "
+	"(imlenmiþ makaleler hariç tutulur)\n"
+
+#: src/lang.c:2341
+#, fuzzy
+msgid	"Print all or just part of header. <SPACE> toggles & <CR> sets."
+msgstr	"Baþlýðýn tümünü ya da bir kýsmýný yazdýr.  <SPACE> deðiþtirir & <CR> ayarlar."
+
+#: src/lang.c:2342
+#, fuzzy
+msgid	"Print all headers when printing"
+msgstr	"Yazdýrýrken tüm baþlýklarý yazdýr"
+
+#: src/lang.c:2343
+#, fuzzy
+msgid	"# If ON print all of article header otherwise just the important lines\n"
+msgstr	"# On durumundaysa makale baþlýðýnýn tümünü deðilse sadece önemli olanlarý "
+	"yazdýr\n"
+
+#: src/lang.c:2347
+#, fuzzy
+msgid	"The printer program with options that is to be used to print articles/threads."
+msgstr	"Makaleleri/parçacýklarý yazdýrmak için kullanýlacak seçenekli yazýcý programý."
+
+#: src/lang.c:2348
+#, fuzzy
+msgid	"Printer program with options"
+msgstr	"Seçenekli yazýcý programý"
+
+#: src/lang.c:2349
+#, fuzzy
+msgid	"# Print program with parameters used to print articles/threads\n"
+msgstr	"# Makaleleri/iþ parçacýklarý yazdýrmak için parameterli yazýcý program "
+	"kullan\n"
+
+#: src/lang.c:2355
+#, fuzzy
+msgid	"Force redraw after certain commands"
+msgstr	"Kesin komutlardan sonra ekrandaki çizimin yenilenmesini güçlendir"
+
+#: src/lang.c:2356
+#, fuzzy
+msgid	"# If ON a screen redraw will always be done after certain external commands\n"
+msgstr	"# ON durumdaysa ekrandaki çizimin yenilenmesi bazý dýþ komutlardan sonra "
+	"tamamlanacak\n"
+
+#: src/lang.c:2360
+#, fuzzy
+msgid	"Start editor with line offset. <SPACE> toggles, <CR> sets, <ESC> cancels."
+msgstr	"Satýr kaydýrarak düzenleciyi baþlat. <ARALIK> büyük küçük harf, <CR> kümeler, "
+	"<ESC> iptal et."
+
+#: src/lang.c:2361
+#, fuzzy
+msgid	"Start editor with line offset"
+msgstr	"Düzenleyiciyi satýr konumu ile baþlat"
+
+#: src/lang.c:2362
+#, fuzzy
+msgid	"# If ON editor will be started with cursor offset into the file\n"
+	"# otherwise the cursor will be positioned at the first line\n"
+msgstr	"# ON düzenleyicir dosyadaki imleç kaydýrýcýlarda açýlacak\n"
+	"# aksi takdirde imleç ilk satýrda yer alacak\n"
+
+#: src/lang.c:2367
+#, fuzzy
+msgid	"Enter %E for editor, %F for filename, %N for line-number, <CR> to set."
+msgstr	"Düzenleyici için %E, dosya adý için %F, satýr numarasý için %N, kümelemek "
+	"için <CR> yazýn."
+
+#: src/lang.c:2368
+#, fuzzy
+msgid	"Invocation of your editor"
+msgstr	"Düzenleyicinizin yürütülmesi"
+
+#: src/lang.c:2369
+#, fuzzy
+msgid	"# Format of editor line including parameters\n"
+	"# %%E Editor  %%F Filename  %%N Linenumber\n"
+msgstr	"# Parametrelerle birlikte düzenleyici satýrý biçimi\n"
+	"# %%E Düzenleyici  %%F Dosya adý  %%N Satýr numarasý\n"
+
+#: src/lang.c:2374
+#, fuzzy
+msgid	"Enter name and options for external-inews, --internal for internal inews"
+msgstr	"Dýþ inew programlarý için isim ve seçenekleri, --iç inew programlarý için "
+	"içseli girin"
+
+#: src/lang.c:2375
+#, fuzzy
+msgid	"External inews"
+msgstr	"Dýþ inew programlarý"
+
+#: src/lang.c:2376
+#, fuzzy
+msgid	"# If --internal use the built in mini inews for posting via NNTP\n"
+	"# otherwise use an external inews program\n"
+msgstr	"# Eðer --içsel ise NNTP yoluyla gönderim için yerleþik mini inew "
+	"programlarýný kullanýn\n"
+	"#deðilse bir dýþ inew programý kullanýn\n"
+
+#: src/lang.c:2380
+#, fuzzy
+msgid	"Enter %M for mailer, %S for subject, %T for to, %F for filename, <CR> to set."
+msgstr	"Posta gönderici için %M, konu için %S, gönderilen için %T, dosya adý için %F, "
+	"kümelemek için <CR> yazýn."
+
+#: src/lang.c:2381
+#, fuzzy
+msgid	"Invocation of your mail command"
+msgstr	"Posta komutunuzun yürütülmesi"
+
+#: src/lang.c:2382
+#, fuzzy
+msgid	"# Format of mailer line including parameters\n"
+	"# %%M Mailer  %%S Subject  %%T To  %%F Filename\n"
+	"# ie. to use elm as your mailer:    elm -s \"%%S\" \"%%T\" < %%F\n"
+	"# ie. elm interactive          :    elm -i %%F -s \"%%S\" \"%%T\"\n"
+msgstr	"# Parametrelerle birlikte gönderici satýrý biçimi\n"
+	"# %%M Gönderici  %%S Konu  %%T Gönderilen  %%F Dosya adý\n"
+	"# ie. elmi göndericiniz olarak kullanmak için:    elm -s \"%%S\" \"%%T\" < "
+	"%%F\n"
+	"# ie. elm etkileþimli            :    elm -i %%F -s \"%%S\" \"%%T\"\n"
+
+#: src/lang.c:2390
+#, fuzzy
+msgid	"Use interactive mail reader"
+msgstr	"Etkileþimli posta okuyucu kullan"
+
+#: src/lang.c:2391
+msgid	"# Interactive mailreader\n"
+	"# Possible values are (the default is marked with *):\n"
+	"# * 0 = no interactive mailreader\n"
+	"#   1 = use interactive mailreader with headers in file\n"
+	"#   2 = use interactive mailreader without headers in file\n"
+msgstr	""
+
+#: src/lang.c:2400
+#, fuzzy
+msgid	"Remove ~/.article after posting"
+msgstr	"Kaldýr ~/.article sonra makale"
+
+#: src/lang.c:2401
+#, fuzzy
+msgid	"# If ON remove ~/.article after posting.\n"
+msgstr	"# ON durumundaysa kaldýr  ~/.gönderimden sonra makale.\n"
+
+#: src/lang.c:2405
+#, fuzzy
+msgid	"Filename for all posted articles, <CR> sets, no filename=do not save."
+msgstr	"Tüm gönderilen makaleler için dosya adý, <CR> ayarlar, dosya adý "
+	"yok=kaydetmeyin."
+
+#: src/lang.c:2406
+#, fuzzy
+msgid	"Filename for posted articles"
+msgstr	"Gönderilen makaleler için dosya adý"
+
+#: src/lang.c:2407
+#, fuzzy
+msgid	"# Filename where to keep all postings (default posted)\n"
+	"# If no filename is set then postings will not be saved\n"
+msgstr	"# Postalarýn tutunacak dosyaadý (gönderilmiþ varsayýlan)\n"
+	"# Dosyaadý yoksa hiçbir posta kaydedilmeyecek\n"
+
+#: src/lang.c:2412
+#, fuzzy
+msgid	"Keep all failed articles in ~/dead.articles. <SPACE> toggles & <CR> sets."
+msgstr	"Baþarýsýz makaleleri tut ~/ölü.makale. <Aralýk> büyük küçük harf & <CR> "
+	"kümeleri."
+
+#: src/lang.c:2413
+#, fuzzy
+msgid	"Keep failed arts in ~/dead.articles"
+msgstr	"Baþarýsýz makaleleri tut ~/ölü.makale"
+
+#: src/lang.c:2414
+#, fuzzy
+msgid	"# If ON keep all failed postings in ~/dead.articles\n"
+msgstr	"# If ON gönderilemeyen bütün postalarý tut ~/ölü.makale\n"
+
+#: src/lang.c:2418
+#, fuzzy
+msgid	"Do you want to strip unsubscribed groups from .newsrc"
+msgstr	"Abone olmayan gruplarý çýkart .newsrc"
+
+#: src/lang.c:2419
+#, fuzzy
+msgid	"No unsubscribed groups in newsrc"
+msgstr	"Abone olmayan grup yok newsrc"
+
+#: src/lang.c:2420
+#, fuzzy
+msgid	"# If ON strip unsubscribed groups from newsrc\n"
+msgstr	"# If ON abone olmamýþ gruplarý çýkart newsrc\n"
+
+#: src/lang.c:2425
+#, fuzzy
+msgid	"Remove bogus groups from newsrc"
+msgstr	"Bogus gruplarý kaldýr newsrc"
+
+#: src/lang.c:2426
+#, fuzzy
+msgid	"# What to do with bogus groups in newsrc file\n"
+	"# Possible values are (the default is marked with *):\n"
+	"# * 0 = keep\n"
+	"#   1 = remove\n"
+	"#   2 = highlight with D on selection screen\n"
+msgstr	"# newsrc dosyasýnda olan bogus gruplara ne yapýlsýn\n"
+	"# 0=(Koru) 1=(Kaldýr) 2=(Highlight with D on selection screen).\n"
+
+#: src/lang.c:2434
+#, fuzzy
+msgid	"Enter number of seconds until active file will be reread. <CR> sets."
+msgstr	"Aktif dosya tekrar okunana kadar saniye miktarýný girin. <CR> ayarlar."
+
+#: src/lang.c:2435
+#, fuzzy
+msgid	"Interval in secs to reread active"
+msgstr	"yeniden etkin kýlma saniye aralýðý"
+
+#: src/lang.c:2436
+#, fuzzy
+msgid	"# Time interval in seconds between rereading the active file (0=never)\n"
+msgstr	"# Aktif dosyalar okunurken saniyeler süren zaman aralýðý (0=asla)\n"
+
+#: src/lang.c:2441
+#, fuzzy
+msgid	"Reconnect to server automatically"
+msgstr	"Sunucuya otomatik olarak baðlan"
+
+#: src/lang.c:2442
+#, fuzzy
+msgid	"# If ON automatically reconnect to NNTP server if the connection is broken\n"
+msgstr	"# ON konumunda ise baðlantý kesilirse NNTP sunucusuna otomatik olarak tekrar "
+	"baðlan\n"
+
+#: src/lang.c:2446
+#, fuzzy
+msgid	"Create local copies of NNTP overview files. <SPACE> toggles & <CR> sets."
+msgstr	"NNTP giriþ sayfalarýnýn yerel kopyalarýný yarat. <SPACE> deðiþtirir & <CR> "
+	"ayarlar."
+
+#: src/lang.c:2447
+#, fuzzy
+msgid	"Cache NNTP overview files locally"
+msgstr	"Að Haberleri Aktarma Protokolü önbelleði yerel olarak giriþ dosyalarý"
+
+#: src/lang.c:2448
+#, fuzzy
+msgid	"# If ON, create local copies of NNTP overview files.\n"
+msgstr	"# On durumundaysa, NNTP giriþ dosyalarýnýn yerel kopyalarýný yarat.\n"
+
+#: src/lang.c:2452
+#, fuzzy
+msgid	"Enter format string. <CR> sets, <ESC> cancels."
+msgstr	"Okunan makaleleri imlemek için karakter girin. <CR> yarlar, <ESC> iptal eder."
+
+#: src/lang.c:2453
+msgid	"Format string for display of dates"
+msgstr	""
+
+#: src/lang.c:2454
+msgid	"# Format string for date representation\n"
+msgstr	""
+
+#: src/lang.c:2460
+msgid	"Unicode normalization form"
+msgstr	""
+
+#: src/lang.c:2461
+msgid	"# Unicode normalization form\n"
+	"# Possible values are (the default is marked with *):\n"
+	"#   0 = None\n"
+	"# * 1 = NFKC\n"
+	"#   2 = NFKD\n"
+	"#   3 = NFC\n"
+	"#   4 = NFD\n"
+msgstr	""
+
+#: src/lang.c:2473
+msgid	"Render BiDi"
+msgstr	""
+
+#: src/lang.c:2474
+msgid	"# If ON, bi-directional text is rendered by tin\n"
+msgstr	""
+
+#: src/misc.c:3721
+#, fuzzy, c-format
+msgid	"Version: %s %s release %s (\"%s\") %s %s\n"
+msgstr	"Sürüm: %s %s serbest býrak %s (\"%s\") %s %s\n"
+
+#: src/misc.c:3724
+#, fuzzy, c-format
+msgid	"Version: %s %s release %s (\"%s\")\n"
+msgstr	"Sürüm: %s %s serbest býrak %s (\"%s\")\n"
+
+#: src/newsrc.c:432
+#, fuzzy
+msgid	"Unreachable?\n"
+msgstr	"Ulaþýlamaz?\n"
+
+#: src/nntplib.c:825
+#, fuzzy, c-format
+msgid	"\n"
+	"Server timed out, trying reconnect # %d\n"
+msgstr	"\n"
+	"Sunucu süresi doldu, tekrar baðlanmaya çalýþýyor # %d\n"
+
+#: src/nntplib.c:843
+#, fuzzy
+msgid	"Rejoin current group\n"
+msgstr	"Þu anki gruba tekrar katýl\n"
+
+#: src/nntplib.c:850
+#, fuzzy, c-format
+msgid	"Read (%s)\n"
+msgstr	"Oku (%s)\n"
+
+#: src/nntplib.c:852
+#, fuzzy, c-format
+msgid	"Resend last command (%s)\n"
+msgstr	"Son komutu tekrr yolla (%s)\n"
+
+#: src/nrctbl.c:172
+#, c-format
+msgid	"couldn't expand %s\n"
+msgstr	"%s geniþletilemedi\n"
+
+#: src/post.c:1969
+#, fuzzy, c-format
+msgid	"Posting: %.*s ..."
+msgstr	"Gönderiliyor: %.*s ..."
+
+#. fp
+#. Check if okay to read
+#: src/read.c:214
+msgid	"Aborting read, please wait..."
+msgstr	"Okuma durduruluyor, lütfen bekleyin..."
+
+#: src/read.c:361
+msgid	"Aborted read\n"
+msgstr	"Okuma durduruldu\n"
+
+#: src/read.c:417
+#, fuzzy
+msgid	"Draining\n"
+msgstr	"Akaçlanma\n"
+
+#. Don't hash the initial '<'
+#: src/refs.c:251
+#, fuzzy
+msgid	"unchanged"
+msgstr	"deðiþtirilmedi"
+
+#: src/refs.c:609
+#, fuzzy
+msgid	"[- Unavailable -]"
+msgstr	"[- Kullanýlamýyor -]"
+
+#.
+#. * preamble
+#. * TODO: -> lang.c
+#.
+#: src/rfc2047.c:1203
+msgid	"This message has been composed in the 'multipart/mixed' MIME-format. If you\n"
+	"are reading this prefix, your mail reader probably has not yet been modified\n"
+	"to understand the new format, and some of what follows may look strange.\n"
+	"\n"
+msgstr	""
+
+#: src/save.c:977
+msgid	"bytes"
+msgstr	"bayt"
+
+#: src/select.c:381
+msgid	"unread"
+msgstr	"okunmamýþ"
+
+#: src/select.c:381
+msgid	"all"
+msgstr	"Hepsi"
+
+#: src/select.c:551 src/select.c:553
+msgid	" R"
+msgstr	" R"
+
+#  TODO: use tin global 'homedir' instead? or even rcdir?
+#. TODO: use tin global 'homedir' instead? or even rcdir?
+#: src/xface.c:91
+#, c-format
+msgid	"Can't run slrnface: Environment variable %s not found."
+msgstr	"Slrnface çalýþtýrýlamýyor: Çevre deðiþkeni %s bulunamadý."
+
+#: src/xface.c:99 src/xface.c:131
+#, fuzzy, c-format
+msgid	"Can't run slrnface: failed to create %s"
+msgstr	"Slrnface çalýþtýrýlamýyor: yaratým baþarýsýz %s"
+
+#: src/xface.c:109
+#, fuzzy
+msgid	"This directory is used to create named pipes for communication between\n"
+	"slrnface and its parent process. It should normally be empty because\n"
+	"the pipe is deleted right after it has been opened by both processes.\n"
+	"\n"
+	"File names generated by slrnface have the form \"hostname.pid\". It is\n"
+	"probably an error if they linger here longer than a fraction of a second.\n"
+	"\n"
+	"However, if the directory is mounted from an NFS server, you might see\n"
+	"special files created by your NFS server while slrnface is running.\n"
+	"Do not try to remove them.\n"
+msgstr	"Bu dizin slrnface ve ana iþlem arasýndaki iletiþimi saðlayan adý konmuþ\n"
+	" kanallarý yaratmak için kullanýlmaktadýr. Normalde boþ olmalý çünkü\n"
+	" kanal her iki iþlem tarafýndan açýldýktan hemen sonra silinir.\n"
+	"\n"
+	"Slrnface tarafýndan oluþturulan dosya isimleri þu biçimdedir: hostname.pid\". "
+	"Bu\n"
+	" muhtemelen saniyenin onda birinden bile fazla kalýnca oluþan bir hatadýr.\n"
+	"\n"
+	"Ancak dizin eðer NFS sunucusundan kurulduysa, slrnface çalýþýrken\n"
+	"NFS sunucunuzun yarattýðý özel dosyalari görebilirsiniz.\n"
+	"Kaldýrmaya çalýþmayýnýz.\n"
+
+#: src/xface.c:123
+#, fuzzy
+msgid	"Can't run slrnface: couldn't construct fifo name."
+msgstr	"Slrnface çalýþtýrýlamýyor: fifo isim oluþturulamadý."
+
+#: src/xface.c:162
+#, fuzzy, c-format
+msgid	"Slrnface abnormally exited, code %d."
+msgstr	"Slrnface beklenmedik þekilde sonlandýrýldý, kod %d."
+
+#: src/xface.c:206
+#, fuzzy, c-format
+msgid	"Slrnface failed: %s."
+msgstr	"Slrnface baþarýsýz: %s."
diff -Nurp tin-1.7.7/src/Makefile.in tin-1.7.8/src/Makefile.in
--- tin-1.7.7/src/Makefile.in	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/Makefile.in	Tue Feb  1 11:23:36 2005
@@ -1,9 +1,9 @@
 # Source Makefile for tin
 # - for configuration options read the ../doc/INSTALL file.
 #
-# Updated: 2004-10-19
+# Updated: 2005-01-30
 #
-# Copyright (c) 1995-2004 Thomas E. Dickey <dickey@invisible-island.net>
+# Copyright (c) 1995-2005 Thomas E. Dickey <dickey@invisible-island.net>
 # All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
@@ -120,7 +120,6 @@ HFILES	= \
 	$(INCDIR)/bugrep.h \
 	$(INCDIR)/extern.h \
 	$(INCDIR)/keymap.h \
-	$(INCDIR)/menukeys.h \
 	$(INCDIR)/newsrc.h \
 	$(INCDIR)/nntplib.h \
 	$(INCDIR)/plp_snprintf.h \
@@ -500,32 +499,31 @@ $(OBJDIR)/debug$o :		$(SRCDIR)/debug.c $
 				$(INCDIR)/newsrc.h
 $(OBJDIR)/envarg$o :		$(SRCDIR)/envarg.c $(TIN_DEP)
 $(OBJDIR)/feed$o :		$(SRCDIR)/feed.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/rfc2046.h
 $(OBJDIR)/filter$o :		$(SRCDIR)/filter.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/version.h
 $(OBJDIR)/getline$o :		$(SRCDIR)/getline.c $(TIN_DEP)
 $(OBJDIR)/global$o :		$(SRCDIR)/global.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/group$o :		$(SRCDIR)/group.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/hashstr$o :		$(SRCDIR)/hashstr.c $(TIN_DEP)
 $(OBJDIR)/header$o :		$(SRCDIR)/header.c $(TIN_DEP) \
 				$(INCDIR)/tnntp.h
 $(OBJDIR)/help$o :		$(SRCDIR)/help.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/inews$o :		$(SRCDIR)/inews.c $(TIN_DEP) \
 				$(INCDIR)/tnntp.h
 $(OBJDIR)/init$o :		$(SRCDIR)/init.c $(TIN_DEP) \
 				$(INCDIR)/bugrep.h \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/tnntp.h \
 				$(INCDIR)/version.h
 $(OBJDIR)/joinpath$o :		$(SRCDIR)/joinpath.c $(TIN_DEP)
 $(OBJDIR)/keymap$o :		$(SRCDIR)/keymap.c $(TIN_DEP) \
 				$(INCDIR)/keymap.h \
-				$(INCDIR)/menukeys.h \
 				$(INCDIR)/version.h
 $(OBJDIR)/lang$o :		$(SRCDIR)/lang.c $(TIN_DEP)
 $(OBJDIR)/langinfo$o :		$(SRCDIR)/langinfo.c $(TIN_DEP)
@@ -548,27 +546,27 @@ $(OBJDIR)/newsrc$o :		$(SRCDIR)/newsrc.c
 $(OBJDIR)/nntplib$o :		$(SRCDIR)/nntplib.c $(TIN_DEP) \
 				$(INCDIR)/tnntp.h
 $(OBJDIR)/nrctbl$o :		$(SRCDIR)/nrctbl.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/version.h
 $(OBJDIR)/options_menu$o :	$(SRCDIR)/options_menu.c $(TIN_DEP) \
 				tincfg.h \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/page$o :		$(SRCDIR)/page.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/rfc2046.h
 $(OBJDIR)/parsdate$o :		$(OBJDIR)/parsdate.y $(TIN_DEP)
 $(OBJDIR)/pgp$o :		$(SRCDIR)/pgp.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/plp_snprintf$o :	$(SRCDIR)/plp_snprintf.c $(TIN_DEP) \
 				$(INCDIR)/plp_snprintf.h
 $(OBJDIR)/post$o :		$(SRCDIR)/post.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/rfc2046.h \
 				$(INCDIR)/version.h
 $(OBJDIR)/prompt$o :		$(SRCDIR)/prompt.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/read$o :		$(SRCDIR)/read.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/tnntp.h
 $(OBJDIR)/refs$o :		$(SRCDIR)/refs.c $(TIN_DEP)
 $(OBJDIR)/regex$o :		$(SRCDIR)/regex.c $(TIN_DEP)
@@ -580,13 +578,13 @@ $(OBJDIR)/rfc2046$o :		$(SRCDIR)/rfc2046
 $(OBJDIR)/rfc2047$o :		$(SRCDIR)/rfc2047.c $(TIN_DEP) \
 				$(INCDIR)/rfc2046.h
 $(OBJDIR)/save$o :		$(SRCDIR)/save.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/rfc2046.h
 $(OBJDIR)/screen$o :		$(SRCDIR)/screen.c $(TIN_DEP)
 $(OBJDIR)/search$o :		$(SRCDIR)/search.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/select$o :		$(SRCDIR)/select.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/sigfile$o :		$(SRCDIR)/sigfile.c $(TIN_DEP)
 $(OBJDIR)/signal$o :		$(SRCDIR)/signal.c $(TIN_DEP) \
 				$(INCDIR)/version.h
@@ -596,9 +594,9 @@ $(OBJDIR)/tags$o :		$(SRCDIR)/tags.c $(T
 $(OBJDIR)/tcurses$o :		$(SRCDIR)/tcurses.c $(TIN_DEP)
 $(OBJDIR)/tmpfile$o :		$(SRCDIR)/tmpfile.c $(TIN_DEP)
 $(OBJDIR)/thread$o :		$(SRCDIR)/thread.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h
+				$(INCDIR)/keymap.h
 $(OBJDIR)/version$o :		$(SRCDIR)/version.c $(TIN_DEP) \
-				$(INCDIR)/menukeys.h \
+				$(INCDIR)/keymap.h \
 				$(INCDIR)/version.h
 $(OBJDIR)/wildmat$o :		$(SRCDIR)/wildmat.c $(TIN_DEP)
 $(OBJDIR)/xface$o :		$(SRCDIR)/xface.c $(TIN_DEP)
diff -Nurp tin-1.7.7/src/active.c tin-1.7.8/src/active.c
--- tin-1.7.7/src/active.c	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/src/active.c	Thu Dec 30 14:33:10 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-06-30
  *  Notes     :
  *
- * Copyright (c) 1992-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1992-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/art.c tin-1.7.8/src/art.c
--- tin-1.7.7/src/art.c	Thu Dec  2 18:12:33 2004
+++ tin-1.7.8/src/art.c	Fri Feb 25 11:44:07 2005
@@ -6,7 +6,7 @@
  *  Updated   : 2004-08-16
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -1385,6 +1385,14 @@ read_overview(
 		for (count = 1; (ptr = tin_strtok(NULL, "\t")) != NULL; count++) {
 			switch (count) {
 				case 1:		/* Subject */
+					/*
+					 * TODO: As eat_re() is also called in batch_mode we need
+					 *       to init (all) regexes (but do not use the others).
+					 *       Calling eat_re() isn't very wise at all as we use
+					 *       the modified subject for -N/-M batch opperations
+					 *       so ppl. can't tell from the subject if the posting
+					 *       was a reply or not.
+					 */
 					art->subject = hash_str(eat_re(eat_tab(convert_to_printable(rfc1522_decode(ptr))), FALSE));
 					break;
 
diff -Nurp tin-1.7.7/src/attrib.c tin-1.7.8/src/attrib.c
--- tin-1.7.7/src/attrib.c	Fri Dec 10 17:50:55 2004
+++ tin-1.7.8/src/attrib.c	Tue Mar 15 22:26:50 2005
@@ -3,10 +3,10 @@
  *  Module    : attrib.c
  *  Author    : I. Lea
  *  Created   : 1993-12-01
- *  Updated   : 2004-03-14
+ *  Updated   : 2005-03-15
  *  Notes     : Group attribute routines
  *
- * Copyright (c) 1993-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1993-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -172,10 +172,6 @@ set_default_attributes(
 }
 
 
-/*
- * Load global & local attributes into active[].attribute
- */
-
 #define MATCH_BOOLEAN(pattern, type) \
 	if (match_boolean(line, pattern, &flag)) { \
 		num = (flag != FALSE); \
@@ -203,6 +199,14 @@ set_default_attributes(
 			break; \
 		}
 #endif /* CHARSET_CONVERSION */
+#if !defined(CHARSET_CONVERSION) || !defined(HAVE_ISPELL)
+#	define SKIP_ITEM(pattern) \
+		if (!strncmp(line, pattern, strlen(pattern))) { \
+			found = TRUE; \
+			break; \
+		}
+#endif /* !CHARSET_CONVERSION || !HAVE_ISPELL */
+
 
 /*
  * (re)read global/local attributes file
@@ -287,6 +291,8 @@ read_attributes_file(
 				case 'i':
 #ifdef HAVE_ISPELL
 					MATCH_STRING("ispell=", ATTRIB_ISPELL);
+#else
+					SKIP_ITEM("ispell=");
 #endif /* HAVE_ISPELL */
 					break;
 
@@ -296,7 +302,9 @@ read_attributes_file(
 					MATCH_BOOLEAN("mime_forward=", ATTRIB_MIME_FORWARD);
 					MATCH_STRING("mime_types_to_save=", ATTRIB_MIME_TYPES_TO_SAVE);
 #ifdef CHARSET_CONVERSION
-					MATCH_LIST("mm_network_charset=", ATTRIB_MM_NETWORK_CHARSET,txt_mime_charsets, NUM_MIME_CHARSETS);
+					MATCH_LIST("mm_network_charset=", ATTRIB_MM_NETWORK_CHARSET, txt_mime_charsets, NUM_MIME_CHARSETS);
+#else
+					SKIP_ITEM("mm_network_charset=");
 #endif /* CHARSET_CONVERSION */
 					break;
 
@@ -352,6 +360,8 @@ read_attributes_file(
 				case 'u':
 #ifdef CHARSET_CONVERSION
 					MATCH_STRING("undeclared_charset=", ATTRIB_UNDECLARED_CHARSET);
+#else
+					SKIP_ITEM("undeclared_charset=");
 #endif /* CHARSET_CONVERSION */
 					break;
 
diff -Nurp tin-1.7.7/src/auth.c tin-1.7.8/src/auth.c
--- tin-1.7.7/src/auth.c	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/src/auth.c	Thu Dec 30 14:33:10 2004
@@ -7,7 +7,7 @@
  *  Notes     : Routines to authenticate to a news server via NNTP.
  *              DON'T USE get_respcode() THROUGHOUT THIS CODE.
  *
- * Copyright (c) 1997-2004 Dirk Nimmich <nimmich@muenster.de>
+ * Copyright (c) 1997-2005 Dirk Nimmich <nimmich@muenster.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/charset.c tin-1.7.8/src/charset.c
--- tin-1.7.7/src/charset.c	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/src/charset.c	Thu Dec 30 14:33:10 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-07-21
  *  Notes     : ISO to ascii charset conversion routines
  *
- * Copyright (c) 1993-2004 Markus Kuhn <mgk25@cl.cam.ac.uk>
+ * Copyright (c) 1993-2005 Markus Kuhn <mgk25@cl.cam.ac.uk>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/color.c tin-1.7.8/src/color.c
--- tin-1.7.7/src/color.c	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/src/color.c	Thu Dec 30 14:33:10 2004
@@ -11,7 +11,7 @@
  *  Notes     : This are the basic function for ansi-color
  *              and word highlighting
  *
- * Copyright (c) 1995-2004 Roland Rosenfeld <roland@spinnaker.rhein.de>
+ * Copyright (c) 1995-2005 Roland Rosenfeld <roland@spinnaker.rhein.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/config.c tin-1.7.8/src/config.c
--- tin-1.7.7/src/config.c	Mon Nov 15 18:44:24 2004
+++ tin-1.7.8/src/config.c	Tue Feb 15 18:18:55 2005
@@ -3,10 +3,10 @@
  *  Module    : config.c
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2004-10-26
+ *  Updated   : 2005-02-15
  *  Notes     : Configuration file routines
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -1514,10 +1514,11 @@ match_string(
 	size_t patlen = strlen(pat);
 
 	if (STRNCMPEQ(line, pat, patlen) && (strlen(line) > patlen /* + 1 */)) {
-		strncpy(dst, &line[patlen], dstlen);
-		if ((ptr = strrchr(dst, '\n')) != NULL)
-			*ptr = '\0';
-
+		if (dst != NULL && dstlen >= 1) {
+			strncpy(dst, &line[patlen], dstlen);
+			if ((ptr = strrchr(dst, '\n')) != NULL)
+				*ptr = '\0';
+		}
 		return TRUE;
 	}
 	return FALSE;
@@ -1809,7 +1810,6 @@ read_server_config(
 	char file[PATH_LEN];
 	char newnews_info[LEN];
 	char serverdir[PATH_LEN];
-	char version[LEN];
 	int upgrade = RC_CHECK;
 
 #ifdef NNTP_ABLE
@@ -1830,7 +1830,7 @@ read_server_config(
 			continue;
 
 		if (match_string(line, "last_newnews=", newnews_info, sizeof(newnews_info))) {
-			int tmp_len = strlen(nntp_server) + strlen(newnews_info) + 2;
+			size_t tmp_len = strlen(nntp_server) + strlen(newnews_info) + 2;
 			char *tmp_info = my_malloc(tmp_len);
 
 			snprintf(tmp_info, tmp_len, "%s %s", nntp_server, newnews_info);
@@ -1838,7 +1838,7 @@ read_server_config(
 			free(tmp_info);
 			continue;
 		}
-		if (match_string(line, "version=", version, sizeof(version))) {
+		if (match_string(line, "version=", NULL, 0)) {
 			if (RC_CHECK != upgrade)
 				/* ignore duplicate version lines; last match counts */
 				continue;
diff -Nurp tin-1.7.7/src/cook.c tin-1.7.8/src/cook.c
--- tin-1.7.7/src/cook.c	Wed Dec  1 11:48:37 2004
+++ tin-1.7.8/src/cook.c	Tue Feb  1 17:17:20 2005
@@ -6,7 +6,7 @@
  *  Updated   : 2004-11-04
  *  Notes     : Split from page.c
  *
- * Copyright (c) 2000-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 2000-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -438,6 +438,9 @@ process_text_body_part(
 		/*
 		 * Detect and process uuencoded sections
 		 * Look for the start or the end of a uuencoded section
+		 *
+		 * TODO: look for a tailing size line after end (non standard
+		 *       extension)?
 		 */
 		if (pcre_exec(uubegin_regex.re, uubegin_regex.extra, line, len, 0, 0, offsets, size_offsets) != PCRE_ERROR_NOMATCH) {
 			in_uue = TRUE;
diff -Nurp tin-1.7.7/src/debug.c tin-1.7.8/src/debug.c
--- tin-1.7.7/src/debug.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/debug.c	Fri Feb 11 16:54:54 2005
@@ -3,10 +3,10 @@
  *  Module    : debug.c
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2003-12-11
+ *  Updated   : 2005-02-11
  *  Notes     : debug routines
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -94,21 +94,29 @@ debug_delete_files(
 void
 debug_nntp(
 	const char *func,
-	const char *line)
+	const char *fmt,
+	...)
 {
-	char file[PATH_LEN];
 	FILE *fp;
+	char *buf;
+	char file[PATH_LEN];
+	va_list ap;
 
 	if (!debug)
 		return;
 
+	va_start(ap, fmt);
+	buf = fmt_message(fmt, ap);
+
 	joinpath(file, TMPDIR, "NNTP");
 
 	if ((fp = fopen(file, "a+")) != NULL) {
-		fprintf(fp,"%s: %s\n", func, line);
+		fprintf(fp,"%s: %s\n", func, buf);
 		fchmod(fileno(fp), (S_IRUGO|S_IWUGO));
 		fclose(fp);
 	}
+	free(buf);
+	va_end(ap);
 }
 
 
diff -Nurp tin-1.7.7/src/envarg.c tin-1.7.8/src/envarg.c
--- tin-1.7.7/src/envarg.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/envarg.c	Thu Dec 30 14:33:10 2004
@@ -6,7 +6,7 @@
  *  Updated   : 1993-03-10
  *  Notes     : Adds default options from environment to command line
  *
- * Copyright (c) 1991-2004 Bill Davidson
+ * Copyright (c) 1991-2005 Bill Davidson
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/feed.c tin-1.7.8/src/feed.c
--- tin-1.7.7/src/feed.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/feed.c	Thu Feb 17 15:20:05 2005
@@ -3,10 +3,10 @@
  *  Module    : feed.c
  *  Author    : I. Lea
  *  Created   : 1991-08-31
- *  Updated   : 2004-03-14
+ *  Updated   : 2005-02-12
  *  Notes     : provides same interface to mail,pipe,print,save & repost commands
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -45,20 +45,20 @@
 #	endif /* !TCURSES_H */
 #endif /* DEBUG */
 
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 #ifndef RFC2046_H
 #	include "rfc2046.h"
 #endif /* !RFC2046_H */
 
 
-static char proc_ch;					/* Post-processing type when saving */
 static t_bool confirm;					/* only used for FEED_MAIL */
 static t_bool is_mailbox = FALSE;
 static t_bool redraw_screen = FALSE;
 static t_bool supersede = FALSE;		/* for reposting only */
+static t_function pproc_func;			/* Post-processing type when saving */
 #ifndef DONT_HAVE_PIPING
 	static FILE *pipe_fp = (FILE *) 0;
 #endif /* !DONT_HAVE_PIPING */
@@ -74,10 +74,10 @@ struct t_counters {
  * Local prototypes
  */
 static char *get_save_filename(struct t_group *group, int function, char *filename, int filelen, int respnum);
-static int get_feed_key(int function, int level, struct t_group *group, struct t_art_stat *thread, int respnum);
-static int get_post_proc_type(void);
 static t_bool feed_article(int art, int function, struct t_counters *counter, t_bool use_current, const char *data, struct t_group *group);
-static void print_save_summary(char type, int fed);
+static t_function get_feed_key(int function, int level, struct t_group *group, struct t_art_stat *thread, int respnum);
+static t_function get_post_proc_type(void);
+static void print_save_summary(t_function type, int fed);
 #ifndef DISABLE_PRINTING
 	static t_bool print_file(const char *command, int respnum, t_openartinfo *artinfo);
 #endif /* !DISABLE_PRINTING */
@@ -156,44 +156,57 @@ get_save_filename(
 
 /*
  * Find out what post-processing to perform.
- * This is not used when saving to mailboxes (we don't postprocess mailboxen)
+ * This is not used when saving to mailboxes (we don't postprocess mailboxes)
  * Also not used when using the auto-save feature because a default value is
  * taken from the group attributes
- * Return a post_proc_char or 0 if aborting the save process
+ * Returns POSTPROCESS_{NO,SHAR,YES} or GLOBAL_ABORT if aborting the save process
  */
-static int
+static t_function
 get_post_proc_type(
 	void)
 {
-	char ch;
 	char keyno[MAXKEYLEN], keyyes[MAXKEYLEN], keyquit[MAXKEYLEN];
 	char keyshar[MAXKEYLEN];
+	t_function default_func, func;
 
-	ch = (char) prompt_slk_response(ch_post_process[curr_group->attribute->post_proc_type],
-				&menukeymap.feed_post_process_type,
-				_(txt_choose_post_process_type),
-				printascii(keyno, map_to_local(iKeyPProcNo, &menukeymap.feed_post_process_type)),
-				printascii(keyyes, map_to_local(iKeyPProcYes, &menukeymap.feed_post_process_type)),
-				printascii(keyshar, map_to_local(iKeyPProcShar, &menukeymap.feed_post_process_type)),
-				printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.feed_post_process_type)));
+	switch (curr_group->attribute->post_proc_type) {
+		case POST_PROC_YES:
+			default_func = POSTPROCESS_YES;
+			break;
+
+		case POST_PROC_SHAR:
+			default_func = POSTPROCESS_SHAR;
+			break;
+
+		case POST_PROC_NO:
+		default:
+			default_func = POSTPROCESS_NO;
+			break;
+	}
+
+	func = prompt_slk_response(default_func, feed_post_process_keys, _(txt_choose_post_process_type),
+				printascii(keyno, func_to_key(POSTPROCESS_NO, feed_post_process_keys)),
+				printascii(keyyes, func_to_key(POSTPROCESS_YES, feed_post_process_keys)),
+				printascii(keyshar, func_to_key(POSTPROCESS_SHAR, feed_post_process_keys)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, feed_post_process_keys)));
 
-	if (ch == iKeyQuit || ch == iKeyAbort) {			/* exit */
+	if (func == GLOBAL_QUIT || func == GLOBAL_ABORT) {			/* exit */
 		clear_message();
-		return 0;
+		return GLOBAL_ABORT;
 	}
-	return ch;
+	return func;
 }
 
 
 /*
- * Return the key mapping for what we are intending to process or 0 if save
- * process is being aborted
+ * Return the key mapping for what we are intending to process or
+ * GLOBAL_ABORT if save process is being aborted
  * Key can be (current) article, (current) thread, tagged articles,
  * hot articles, or articles matching a pattern
  * This is automatic in the various auto-save cases, in other
  * cases this is prompted for based on a chosen default
  */
-static int
+static t_function
 get_feed_key(
 	int function,
 	int level,
@@ -202,7 +215,7 @@ get_feed_key(
 	int respnum)
 {
 	constext *prompt;
-	int ch, ch_default;
+	t_function default_func, func;
 
 	switch (function) {
 		case FEED_MAIL:
@@ -243,11 +256,11 @@ get_feed_key(
 	 * Try and work out what default the user wants
 	 * thread->total = # arts in thread
 	 */
-	ch_default = (num_of_tagged_arts ? iKeyFeedTag :
-					(arts_selected() ? iKeyFeedHot :
-					((level == GROUP_LEVEL && thread->total > 1) ? iKeyFeedThd :
-					(thread->selected_total ? iKeyFeedHot :
-					iKeyFeedArt))));
+	default_func = (num_of_tagged_arts ? FEED_TAGGED :
+					(arts_selected() ? FEED_HOT :
+					((level == GROUP_LEVEL && thread->total > 1) ? FEED_THREAD :
+					(thread->selected_total ? FEED_HOT :
+					FEED_ARTICLE))));
 
 	/*
 	 * Don't bother querying when:
@@ -256,46 +269,48 @@ get_feed_key(
 	 */
 	if ((function == FEED_AUTOSAVE && (num_of_tagged_arts || arts_selected())) ||
 			(group->attribute->auto_save && arts[respnum].archive))
-		ch = ch_default;
+		func = default_func;
 	else {
 		char buf[LEN];
 		char keyart[MAXKEYLEN], keythread[MAXKEYLEN], keyhot[MAXKEYLEN];
 		char keypat[MAXKEYLEN], keytag[MAXKEYLEN], keyquit[MAXKEYLEN];
 
 		snprintf(buf, sizeof(buf), _(txt_art_thread_regex_tag),
-			printascii(keyart, map_to_local(iKeyFeedArt, &menukeymap.feed_art_thread_regex_tag)),
-			printascii(keythread, map_to_local(iKeyFeedThd, &menukeymap.feed_art_thread_regex_tag)),
-			printascii(keyhot, map_to_local(iKeyFeedHot, &menukeymap.feed_art_thread_regex_tag)),
-			printascii(keypat, map_to_local(iKeyFeedPat, &menukeymap.feed_art_thread_regex_tag)),
-			printascii(keytag, map_to_local(iKeyFeedTag, &menukeymap.feed_art_thread_regex_tag)),
-			printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.feed_art_thread_regex_tag)));
-
-		ch = prompt_slk_response(ch_default, &menukeymap.feed_art_thread_regex_tag, "%s %s", _(prompt), buf);
-	}
+			printascii(keyart, func_to_key(FEED_ARTICLE, feed_type_keys)),
+			printascii(keythread, func_to_key(FEED_THREAD, feed_type_keys)),
+			printascii(keyhot, func_to_key(FEED_HOT, feed_type_keys)),
+			printascii(keypat, func_to_key(FEED_PATTERN, feed_type_keys)),
+			printascii(keytag, func_to_key(FEED_TAGGED, feed_type_keys)),
+			printascii(keyquit, func_to_key(GLOBAL_QUIT, feed_type_keys)));
 
-	switch (ch) {
-		case iKeyQuit:
-		case iKeyAbort:
-			clear_message();
-			return 0;
+		func = prompt_slk_response(default_func, feed_type_keys, "%s %s", _(prompt), buf);
+	}
 
-		case iKeyFeedPat:
+	switch (func) {
+		case FEED_PATTERN:
 			{
 				char *tmp = fmt_string(_(txt_feed_pattern), tinrc.default_pattern);
 
 				if (!(prompt_string_default(tmp, tinrc.default_pattern, _(txt_no_match), HIST_REGEX_PATTERN))) {
 					free(tmp);
-					return 0;
+					return GLOBAL_ABORT;
 				}
 				free(tmp);
 			}
 			break;
 
+		case GLOBAL_QUIT:
+		case GLOBAL_ABORT:
+			clear_message();
+			return GLOBAL_ABORT;
+			/* NOT REACHED */
+			break;
+
 		default:
 			break;
 	}
 
-	return ch;
+	return func;
 }
 
 
@@ -306,7 +321,7 @@ get_feed_key(
  */
 static void
 print_save_summary(
-	char type,
+	t_function type,
 	int fed)
 {
 	const char *first, *last;
@@ -317,20 +332,20 @@ print_save_summary(
 		wait_message(2, _(txt_warn_not_all_arts_saved), fed, num_save);
 
 	switch (type) {
-		case iKeyFeedHot:
+		case FEED_HOT:
 			snprintf(what, sizeof(what), _(txt_prefix_hot), PLURAL(fed, txt_article));
 			break;
 
-		case iKeyFeedTag:
+		case FEED_TAGGED:
 			snprintf(what, sizeof(what), _(txt_prefix_tagged), PLURAL(fed, txt_article));
 			break;
 
-		case iKeyFeedThd:
+		case FEED_THREAD:
 			STRCPY(what, _(txt_thread_upper));
 			break;
 
-		case iKeyFeedArt:
-		case iKeyFeedPat:
+		case FEED_ARTICLE:
+		case FEED_PATTERN:
 		default:
 			snprintf(what, sizeof(what), "%s", PLURAL(fed, txt_article));
 			break;
@@ -448,7 +463,7 @@ feed_article(
 
 		case FEED_SAVE:
 		case FEED_AUTOSAVE:
-			ok = save_and_process_art(openartptr, &arts[art], is_mailbox, data /*filename*/, counter->max, (proc_ch != iKeyPProcNo));
+			ok = save_and_process_art(openartptr, &arts[art], is_mailbox, data /*filename*/, counter->max, (pproc_func != POSTPROCESS_NO));
 			break;
 
 		case FEED_REPOST:
@@ -509,7 +524,6 @@ feed_articles(
 	char outpath[PATH_LEN];
 	char *prompt;
 	int art;
-	int feed_type;
 	int i;
 	int saved_curr_line = -1;
 	int thread_base;
@@ -518,6 +532,7 @@ feed_articles(
 	t_bool use_current = FALSE;
 	t_bool ret1 = FALSE;
 	t_bool post_processed_ok = FALSE;
+	t_function feed_type;
 
 #ifdef DONT_HAVE_PIPING
 	if (function == FEED_PIPE) {
@@ -538,7 +553,7 @@ feed_articles(
 	thread_base = which_thread(respnum);
 	stat_thread(thread_base, &sbuf);
 
-	if ((feed_type = get_feed_key(function, level, group, &sbuf, respnum)) == 0)
+	if ((feed_type = get_feed_key(function, level, group, &sbuf, respnum)) == GLOBAL_ABORT)
 		return;
 
 	/*
@@ -602,13 +617,26 @@ feed_articles(
 				if (get_save_filename(group, function, savefile, sizeof(savefile), respnum) == NULL)
 					return;
 
-				proc_ch = ch_post_process[curr_group->attribute->post_proc_type];
+				switch (curr_group->attribute->post_proc_type) {
+					case POST_PROC_YES:
+						pproc_func = POSTPROCESS_YES;
+						break;
+
+					case POST_PROC_SHAR:
+						pproc_func = POSTPROCESS_SHAR;
+						break;
+
+					case POST_PROC_NO:
+					default:
+						pproc_func = POSTPROCESS_NO;
+						break;
+				}
 
 				/* We don't postprocess mailboxen */
 				if ((is_mailbox = expand_save_filename(outpath, savefile)) == TRUE)
-					proc_ch = iKeyPProcNo;
+					pproc_func = POSTPROCESS_NO;
 				else {
-					if (function != FEED_AUTOSAVE && (proc_ch = get_post_proc_type()) == 0)
+					if (function != FEED_AUTOSAVE && (pproc_func = get_post_proc_type()) == GLOBAL_ABORT)
 						return;
 				}
 				if (!create_path(outpath))
@@ -628,28 +656,28 @@ feed_articles(
 				if (strstr(from_name, arts[respnum].from)) {
 #endif /* !FORGERY */
 					char *smsg;
-					char option;
 					char buf[LEN];
 					char keyrepost[MAXKEYLEN], keysupersede[MAXKEYLEN];
 					char keyquit[MAXKEYLEN];
+					t_function func;
 
 					/* repost or supersede? */
 					snprintf(buf, sizeof(buf), _(txt_supersede_article),
-							printascii(keyrepost, map_to_local(iKeyFeedRepost, &menukeymap.feed_supersede_article)),
-							printascii(keysupersede, map_to_local(iKeyFeedSupersede, &menukeymap.feed_supersede_article)),
-							printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.feed_supersede_article)));
-					option = (char) prompt_slk_response(iKeyFeedSupersede,
-										&menukeymap.feed_supersede_article, "%s",
-										sized_message(&smsg, buf, arts[respnum].subject));
+							printascii(keyrepost, func_to_key(FEED_KEY_REPOST, feed_supersede_article_keys)),
+							printascii(keysupersede, func_to_key(FEED_SUPERSEDE, feed_supersede_article_keys)),
+							printascii(keyquit, func_to_key(GLOBAL_QUIT, feed_supersede_article_keys)));
+					func = prompt_slk_response(FEED_SUPERSEDE,
+								feed_supersede_article_keys, "%s",
+								sized_message(&smsg, buf, arts[respnum].subject));
 					free(smsg);
 
-					switch (option) {
-						case iKeyFeedSupersede:
+					switch (func) {
+						case FEED_SUPERSEDE:
 							tmp = fmt_string(_(txt_supersede_group), tinrc.default_repost_group);
 							supersede = TRUE;
 							break;
 
-						case iKeyFeedRepost:
+						case FEED_REPOST:
 							tmp = fmt_string(_(txt_repost_group), tinrc.default_repost_group);
 							supersede = FALSE;
 							break;
@@ -683,7 +711,7 @@ feed_articles(
 	 * Performance hack - If we feed a single art from the pager then we can
 	 * re-use the currently open article
 	 */
-	if (level == PAGE_LEVEL && feed_type == iKeyFeedArt) {
+	if (level == PAGE_LEVEL && feed_type == FEED_ARTICLE) {
 		saved_curr_line = curr_line;		/* Save where we were in pager */
 		use_current = TRUE;
 	}
@@ -693,13 +721,13 @@ feed_articles(
 	 * The general idea is to feed_article() for every article to be processed
 	 */
 	switch (feed_type) {
-		case iKeyFeedArt:		/* article */
+		case FEED_ARTICLE:		/* article */
 			counter.max = 1;
 			if (!feed_article(respnum, function, &counter, use_current, outpath, group))
 				handle_SIGPIPE();
 			break;
 
-		case iKeyFeedThd:		/* thread */
+		case FEED_THREAD:		/* thread */
 			/* Get accurate count first */
 			for_each_art_in_thread(art, which_thread(respnum)) {
 				if (!(tinrc.process_only_unread && arts[art].status == ART_READ))
@@ -715,7 +743,7 @@ feed_articles(
 			}
 			break;
 
-		case iKeyFeedTag:		/* tagged articles */
+		case FEED_TAGGED:		/* tagged articles */
 			counter.max = num_of_tagged_arts;
 			for (i = 1; i <= num_of_tagged_arts; i++) {
 				for_each_art(art) {
@@ -730,16 +758,16 @@ feed_articles(
 			untag_all_articles();	/* TODO: this will untag even on partial failure */
 			break;
 
-		case iKeyFeedHot:		/* hot (auto-selected) articles */
-		case iKeyFeedPat:		/* pattern matched articles */
+		case FEED_HOT:		/* hot (auto-selected) articles */
+		case FEED_PATTERN:	/* pattern matched articles */
 			{
 				struct regex_cache cache = { NULL, NULL };
 
-				if ((feed_type == iKeyFeedPat) && tinrc.wildcard && !(compile_regex(tinrc.default_pattern, &cache, PCRE_CASELESS)))
+				if ((feed_type == FEED_PATTERN) && tinrc.wildcard && !(compile_regex(tinrc.default_pattern, &cache, PCRE_CASELESS)))
 					break;
 
 				for_each_art(art) {
-					if (feed_type == iKeyFeedPat) {
+					if (feed_type == FEED_PATTERN) {
 						if (!match_regex(arts[art].subject, tinrc.default_pattern, &cache, TRUE))
 							continue;
 					} else if (!arts[art].selected)
@@ -767,7 +795,7 @@ feed_articles(
 
 					/* Keep going - don't abort on errors */
 					if (feed_article(art, function, &counter, use_current, outpath, group)) {
-						if (feed_type == iKeyFeedHot)
+						if (feed_type == FEED_HOT)
 							arts[art].selected = FALSE;
 					} else
 						handle_SIGPIPE();
@@ -777,7 +805,7 @@ feed_articles(
 
 		default:			/* Should never get here */
 			break;
-	} /* switch (ch) */
+	} /* switch (feed_type) */
 
 	/*
 	 * Invoke post-processing if needed
@@ -810,18 +838,18 @@ got_sig_pipe_while_piping:
 			}
 
 			print_save_summary(feed_type, counter.total);
-			if (proc_ch != iKeyPProcNo) {
+			if (pproc_func != POSTPROCESS_NO) {
 				t_bool delete_post_proc = FALSE;
 
 				if (curr_group->attribute->delete_tmp_files)
 					delete_post_proc = TRUE;
 				else {
 					if (function != FEED_AUTOSAVE) {
-						if (prompt_yn(cLINES, _(txt_delete_processed_files), TRUE) == 1)
+						if (prompt_yn(_(txt_delete_processed_files), TRUE) == 1)
 							delete_post_proc = TRUE;
 					}
 				}
-				post_processed_ok = post_process_files(proc_ch, delete_post_proc);
+				post_processed_ok = post_process_files(pproc_func, delete_post_proc);
 			}
 			free_save_array();		/* NB: This is where num_save etc.. gets purged */
 			break;
diff -Nurp tin-1.7.7/src/filter.c tin-1.7.8/src/filter.c
--- tin-1.7.7/src/filter.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/filter.c	Sat Feb 12 15:00:56 2005
@@ -3,10 +3,10 @@
  *  Module    : filter.c
  *  Author    : I. Lea
  *  Created   : 1992-12-28
- *  Updated   : 2004-09-04
+ *  Updated   : 2005-02-12
  *  Notes     : Filter articles. Kill & auto selection are supported.
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -44,9 +44,9 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 
 #define IS_READ(i)	(arts[i].status == ART_READ)
@@ -1003,8 +1003,8 @@ filter_menu(
 	char text_time[PATH_LEN];
 	char double_time[PATH_LEN];
 	char quat_time[PATH_LEN];
-	char ch_default = iKeyFilterSave;
-	int ch, i, len;
+	t_function func, default_func = FILTER_SAVE;
+	int i, len;
 	struct t_filter_rule rule;
 	t_bool proceed;
 	t_bool ret;
@@ -1032,9 +1032,9 @@ filter_menu(
 	/*
 	 * setup correct text for user selected menu
 	 */
-	(void) printascii(keyedit, map_to_local(iKeyFilterEdit, &menukeymap.filter_quit_edit_save));
-	(void) printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.filter_quit_edit_save));
-	(void) printascii(keysave, map_to_local(iKeyFilterSave, &menukeymap.filter_quit_edit_save));
+	printascii(keyedit, func_to_key(FILTER_EDIT, filter_keys));
+	printascii(keyquit, func_to_key(GLOBAL_QUIT, filter_keys));
+	printascii(keysave, func_to_key(FILTER_SAVE, filter_keys));
 
 	if (type == FILTER_KILL) {
 		ptr_filter_from = _(txt_kill_from);
@@ -1063,7 +1063,7 @@ filter_menu(
 	ptr_filter_comment = _(txt_filter_comment);
 	ptr_filter_groupname = group->name;
 
-	len = cCOLS - 30;
+	len = cCOLS - 33;
 
 	snprintf(text_time, sizeof(text_time), _(txt_time_default_days), tinrc.filter_days);
 	fmt_filter_menu_prompt(text_subj, sizeof(text_subj), ptr_filter_subj, len, art->subject);
@@ -1358,13 +1358,11 @@ filter_menu(
 	}
 
 	forever {
-		ch = prompt_slk_response(ch_default,
-				&menukeymap.filter_quit_edit_save,
-				ptr_filter_quit_edit_save,
-				keyquit, keyedit, keysave);
-		switch (ch) {
+		func = prompt_slk_response(default_func, filter_keys,
+				ptr_filter_quit_edit_save, keyquit, keyedit, keysave);
+		switch (func) {
 
-		case iKeyFilterEdit:
+		case FILTER_EDIT:
 			add_filter_rule(group, art, &rule, FALSE); /* save the rule */
 			rule.comment = free_filter_comment(rule.comment);
 			if (!invoke_editor(filter_file, FILTER_FILE_OFFSET))
@@ -1375,14 +1373,14 @@ filter_menu(
 			/* keep lint quiet: */
 			/* FALLTHROUGH */
 
-		case iKeyQuit:
-		case iKeyAbort:
+		case GLOBAL_QUIT:
+		case GLOBAL_ABORT:
 			rule.comment = free_filter_comment(rule.comment);
 			return FALSE;
 			/* keep lint quiet: */
 			/* FALLTHROUGH */
 
-		case iKeyFilterSave:
+		case FILTER_SAVE:
 			/*
 			 * Add the filter rule and save it to the filter file
 			 */
@@ -1450,9 +1448,9 @@ quick_filter(
 
 	/* create an auto-comment. */
 	if (type == FILTER_KILL)
-		snprintf(txt, sizeof(txt), "%s%s%c%s%s%s", _(txt_filter_rule_created), "'", iKeyGroupQuickKill, "' (", _(txt_help_article_quick_kill), ").");
+		snprintf(txt, sizeof(txt), "%s%s%c%s%s%s", _(txt_filter_rule_created), "'", ']', "' (", _(txt_help_article_quick_kill), ").");
 	else
-		snprintf(txt, sizeof(txt), "%s%s%c%s%s%s", _(txt_filter_rule_created), "'", iKeyGroupQuickAutoSel, "' (", _(txt_help_article_quick_select), ").");
+		snprintf(txt, sizeof(txt), "%s%s%c%s%s%s", _(txt_filter_rule_created), "'", '[', "' (", _(txt_help_article_quick_select), ").");
 	rule.comment = add_filter_comment(NULL, txt);
 
 	rule.text[0] = '\0';
diff -Nurp tin-1.7.7/src/global.c tin-1.7.8/src/global.c
--- tin-1.7.7/src/global.c	Tue Nov 16 14:27:09 2004
+++ tin-1.7.8/src/global.c	Tue Feb  1 11:24:10 2005
@@ -3,10 +3,10 @@
  *  Module    : global.c
  *  Author    : Jason Faultless <jason@altarstone.com>
  *  Created   : 1999-12-12
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-01-30
  *  Notes     : Generic nagivation and key handling routines
  *
- * Copyright (c) 1999-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 1999-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,14 +41,13 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 /*
  * Local prototypes
  */
-static int mouse_action(int ch, int (*left_action) (void), int (*right_action) (void));
 #ifdef USE_CURSES
 	static void do_scroll(int jump);
 #endif /* USE_CURSES */
@@ -318,11 +317,10 @@ do_scroll(
  * Handle mouse clicks. We simply map the event to a return
  * keymap code that will drop through to call the correct function
  */
-static int
-mouse_action(
-	int ch,
-	int (*left_action) (void),		/* Typically catchup type event */
-	int (*right_action) (void))		/* Typically read next etc.. */
+t_function
+global_mouse_action(
+	t_function (*left_action) (void),
+	t_function (*right_action) (void))
 {
 	int INDEX_BOTTOM = INDEX_TOP + NOTESLINES;
 
@@ -330,7 +328,7 @@ mouse_action(
 		case MOUSE_BUTTON_1:
 		case MOUSE_BUTTON_3:
 			if (xrow < INDEX_TOP || xrow >= INDEX_BOTTOM)
-				return iKeyPageDown;
+				return GLOBAL_PAGE_DOWN;
 
 			erase_arrow();
 			currmenu->curr = xrow - INDEX_TOP + currmenu->first;
@@ -342,24 +340,28 @@ mouse_action(
 
 		case MOUSE_BUTTON_2:
 			if (xrow < INDEX_TOP || xrow >= INDEX_BOTTOM)
-				return iKeyPageUp;
+				return GLOBAL_PAGE_UP;
 
 			return left_action();
 
 		default:
 			break;
 	}
-	return ch;			/* Pass through */
+	return NOT_ASSIGNED;
 }
 
 
-int
+t_function
 handle_keypad(
-	int (*left_action) (void),
-	int (*right_action) (void),
-	const t_menukeys *menukeys)
+	t_function (*left_action) (void),
+	t_function (*right_action) (void),
+	t_function (*mouse_action) (
+		t_function (*left_action) (void),
+		t_function (*right_action) (void)),
+	const struct keylist keys)
 {
 	int ch = ReadCh();
+	t_function func = NOT_ASSIGNED;
 
 	switch (ch) {
 		case ESC:	/* common arrow keys */
@@ -368,40 +370,40 @@ handle_keypad(
 #	endif /* HAVE_KEY_PREFIX */
 			switch (get_arrow_key(ch)) {
 				case KEYMAP_UP:
-					ch = iKeyUp;
+					func = GLOBAL_LINE_UP;
 					break;
 
 				case KEYMAP_DOWN:
-					ch = iKeyDown;
+					func = GLOBAL_LINE_DOWN;
 					break;
 
 				case KEYMAP_LEFT:
-					ch = left_action();
+					func = left_action();
 					break;
 
 				case KEYMAP_RIGHT:
-					ch = right_action();
+					func = right_action();
 					break;
 
 				case KEYMAP_PAGE_UP:
-					ch = iKeyPageUp;
+					func = GLOBAL_PAGE_UP;
 					break;
 
 				case KEYMAP_PAGE_DOWN:
-					ch = iKeyPageDown;
+					func = GLOBAL_PAGE_DOWN;
 					break;
 
 				case KEYMAP_HOME:
-					ch = iKeyFirstPage;
+					func = GLOBAL_FIRST_PAGE;
 					break;
 
 				case KEYMAP_END:
-					ch = iKeyLastPage;
+					func = GLOBAL_LAST_PAGE;
 					break;
 
 				case KEYMAP_MOUSE:
-					ch = mouse_action(ch, left_action, right_action);
-					break;
+					if (mouse_action)
+						func = mouse_action(left_action, right_action);
 
 				default:
 					break;
@@ -409,10 +411,10 @@ handle_keypad(
 			break;
 
 		default:
-			ch = map_to_default(ch, menukeys);
+			func = key_to_func(ch, keys);
 			break;
 	}
-	return ch;
+	return func;
 }
 
 
diff -Nurp tin-1.7.7/src/group.c tin-1.7.8/src/group.c
--- tin-1.7.7/src/group.c	Tue Nov 16 14:27:17 2004
+++ tin-1.7.8/src/group.c	Mon Mar 14 14:32:32 2005
@@ -3,10 +3,10 @@
  *  Module    : group.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-03-14
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,9 +41,9 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 /*
  * Globally accessible pointer to currently active group
@@ -56,14 +56,14 @@ struct t_group *curr_group;
 /*
  * Local prototypes
  */
-static int do_search(int type, t_bool forward, t_bool repeat);
+static int do_search(t_function func, t_bool repeat);
 static int enter_pager(int art, t_bool ignore_unavail);
 static int enter_thread(int depth, t_pagerinfo *page);
-static int group_catchup(int ch);
-static int group_left(void);
-static int group_right(void);
+static int group_catchup(t_function func);
 static int prompt_getart_limit(void);
 static int tab_pressed(void);
+static t_function group_left(void);
+static t_function group_right(void);
 static void build_sline(int i);
 static void build_multipart_header(char *dest, int maxlen, const char *src, int cmplen, int have, int total);
 static void draw_subject_arrow(void);
@@ -80,6 +80,9 @@ static void update_group_page(void);
  */
 t_menu grpmenu = { 0, 0, 0, show_group_page, draw_subject_arrow, build_sline };
 
+/* TODO: find a better solution */
+static int ret_code = 0;		/* Set to < 0 when it is time to leave the group level */
+
 static void
 show_tagged_lines(
 	void)
@@ -93,32 +96,34 @@ show_tagged_lines(
 }
 
 
-static int
+static t_function
 group_left(
 	void)
 {
 	if (tinrc.group_catchup_on_exit)
-		return iKeyCatchupLeft;		/* ie, not via 'c' or 'C' */
+		return SPECIAL_CATCHUP_LEFT;		/* ie, not via 'c' or 'C' */
 	else
-		return iKeyQuit;
+		return GLOBAL_QUIT;
 }
 
 
-static int
+static t_function
 group_right(
 	void)
 {
 	if (grpmenu.curr >= 0 && HAS_FOLLOWUPS(grpmenu.curr)) {
 		if (tinrc.auto_list_thread)
-			return iKeyGroupListThd;
+			return GROUP_LIST_THREAD;
 		else {
 			int n = next_unread((int) base[grpmenu.curr]);
 
-			if (n >= 0 && grpmenu.curr == which_thread(n))
-				return enter_pager(n, TRUE);
+			if (n >= 0 && grpmenu.curr == which_thread(n)) {
+				ret_code = enter_pager(n, TRUE);
+				return GLOBAL_ABORT;	/* TODO: should we return something else? */
+			}
 		}
 	}
-	return iKeyGroupReadBasenote;
+	return GROUP_READ_BASENOTE;
 }
 
 
@@ -136,17 +141,16 @@ group_page(
 	struct t_group *group)
 {
 	char key[MAXKEYLEN];
-	int ch = 0;
 	int i, n, ii;
 	int old_top = 0;
-	int ret_code = 0;			/* Set to < 0 when it is time to leave this menu */
 	int thread_depth;	/* Starting depth in threads we enter */
 	long old_artnum = 0L;
 	struct t_art_stat sbuf;
 	t_bool flag;
 	t_bool range_active = FALSE;		/* Set if a range is defined */
 	t_bool xflag = FALSE;	/* 'X'-flag */
-	t_bool repeat_search = FALSE;
+	t_bool repeat_search;
+	t_function func;
 
 	/*
 	 * Set the group attributes
@@ -177,7 +181,7 @@ group_page(
 	clear_note_area();
 
 	if (group->attribute->auto_select) {
-		error_message(_(txt_autoselecting_articles), printascii(key, map_to_local(iKeyGroupMarkUnselArtRead, &menukeymap.group_nav)));
+		error_message(_(txt_autoselecting_articles), printascii(key, func_to_key(GROUP_MARK_UNSELECTED_ARTICLES_READ, group_keys)));
 		do_auto_select_arts();						/* 'X' command */
 		xflag = TRUE;
 	}
@@ -188,39 +192,48 @@ group_page(
 	debug_print_bitmap(group, NULL);
 #	endif /* DEBUG_NEWSRC */
 
+	/* reset ret_code */
+	ret_code = 0;
 	while (ret_code >= 0) {
 		set_xclick_on();
-		if ((ch = handle_keypad(group_left, group_right, &menukeymap.group_nav)) == iKeySearchRepeat) {
-			ch = i_key_search_last;
+		if ((func = handle_keypad(group_left, group_right, global_mouse_action, group_keys)) == GLOBAL_SEARCH_REPEAT) {
+			func = last_search;
 			repeat_search = TRUE;
 		} else
 			repeat_search = FALSE;
 
-		switch (ch) {
-			case iKeyAbort:		/* Abort */
+		switch (func) {
+			case GLOBAL_ABORT:
 				break;
 
-			case '1': case '2': case '3': case '4': case '5':
-			case '6': case '7': case '8': case '9':
+			case DIGIT_1:
+			case DIGIT_2:
+			case DIGIT_3:
+			case DIGIT_4:
+			case DIGIT_5:
+			case DIGIT_6:
+			case DIGIT_7:
+			case DIGIT_8:
+			case DIGIT_9:
 				if (grpmenu.max)
-					prompt_item_num(ch, _(txt_select_thread));
+					prompt_item_num(func_to_key(func, group_keys), _(txt_select_thread));
 				break;
 
 #	ifndef NO_SHELL_ESCAPE
-			case iKeyShellEscape:
+			case GLOBAL_SHELL_ESCAPE:
 				do_shell_escape();
 				break;
 #	endif /* !NO_SHELL_ESCAPE */
 
-			case iKeyFirstPage: /* show first page of threads */
+			case GLOBAL_FIRST_PAGE:		/* show first page of threads */
 				top_of_list();
 				break;
 
-			case iKeyLastPage:	/* show last page of threads */
+			case GLOBAL_LAST_PAGE:		/* show last page of threads */
 				end_of_list();
 				break;
 
-			case iKeyLastViewed:	/* go to last viewed article */
+			case GLOBAL_LAST_VIEWED:	/* go to last viewed article */
 				/*
 				 * If the last art is no longer in a thread then we can't display it
 				 */
@@ -230,58 +243,54 @@ group_page(
 					ret_code = enter_pager(this_resp, FALSE);
 				break;
 
-			case iKeyPipe:		/* pipe article/thread/tagged arts to command */
+			case GLOBAL_PIPE:		/* pipe article/thread/tagged arts to command */
 				if (grpmenu.curr >= 0)
 					feed_articles(FEED_PIPE, GROUP_LEVEL, group, (int) base[grpmenu.curr]);
 				break;
 
-			case iKeyGroupMail:	/* mail article to somebody */
+			case GROUP_MAIL:	/* mail article to somebody */
 				if (grpmenu.curr >= 0)
 					feed_articles(FEED_MAIL, GROUP_LEVEL, group, (int) base[grpmenu.curr]);
 				break;
 
 #ifndef DISABLE_PRINTING
-			case iKeyPrint:	/* output art/thread/tagged arts to printer */
+			case GLOBAL_PRINT:	/* output art/thread/tagged arts to printer */
 				if (grpmenu.curr >= 0)
 					feed_articles(FEED_PRINT, GROUP_LEVEL, group, (int) base[grpmenu.curr]);
 				break;
 #endif /* !DISABLE_PRINTING */
 
-			case iKeyGroupRepost:	/* repost current article */
+			case GROUP_REPOST:	/* repost current article */
 				if (grpmenu.curr >= 0)
 					feed_articles(FEED_REPOST, GROUP_LEVEL, group, (int) base[grpmenu.curr]);
 				break;
 
-			case iKeyGroupSave:	/* save articles with prompting */
+			case GROUP_SAVE:	/* save articles with prompting */
 				if (grpmenu.curr >= 0)
 					feed_articles(FEED_SAVE, GROUP_LEVEL, group, (int) base[grpmenu.curr]);
 				break;
 
-			case iKeyGroupAutoSave:	/* Auto-save articles without prompting */
+			case GROUP_AUTOSAVE:	/* Auto-save articles without prompting */
 				if (grpmenu.curr >= 0)
 					feed_articles(FEED_AUTOSAVE, GROUP_LEVEL, group, (int) base[grpmenu.curr]);
 				break;
 
-			case iKeySetRange:	/* set range */
+			case GLOBAL_SET_RANGE:	/* set range */
 				if (set_range(GROUP_LEVEL, 1, grpmenu.max, grpmenu.curr + 1)) {
 					range_active = TRUE;
 					show_group_page();
 				}
 				break;
 
-			case iKeySearchAuthF:	/* author forward/backward search */
-			case iKeySearchAuthB:
-				if ((thread_depth = do_search(SEARCH_AUTH, (ch == iKeySearchAuthF), repeat_search)) != 0)
-					ret_code = enter_thread(thread_depth, NULL);
-				break;
-
-			case iKeySearchSubjF:	/* subject forward/backward search */
-			case iKeySearchSubjB:
-				if ((thread_depth = do_search(SEARCH_SUBJ, (ch == iKeySearchSubjF), repeat_search)) != 0)
+			case GLOBAL_SEARCH_AUTHOR_FORWARD:
+			case GLOBAL_SEARCH_AUTHOR_BACKWARD:
+			case GLOBAL_SEARCH_SUBJECT_FORWARD:
+			case GLOBAL_SEARCH_SUBJECT_BACKWARD:
+				if ((thread_depth = do_search(func, repeat_search)) != 0)
 					ret_code = enter_thread(thread_depth, NULL);
 				break;
 
-			case iKeySearchBody:	/* search article body */
+			case GLOBAL_SEARCH_BODY:	/* search article body */
 				if (grpmenu.curr >= 0) {
 					if ((n = search_body(group, (int) base[grpmenu.curr], repeat_search)) != -1)
 						ret_code = enter_pager(n, FALSE);
@@ -289,26 +298,23 @@ group_page(
 					info_message(_(txt_no_arts));
 				break;
 
-			case iKeyGroupReadBasenote:
-			case iKeyGroupReadBasenote2:	/* read current basenote */
+			case GROUP_READ_BASENOTE:	/* read current basenote */
 				if (grpmenu.curr >= 0)
 					ret_code = enter_pager((int) base[grpmenu.curr], FALSE /*TRUE*/);
 				else
 					info_message(_(txt_no_arts));
 				break;
 
-			case iKeyGroupNextUnreadArtOrGrp:	/* goto next unread article/group */
+			case GROUP_NEXT_UNREAD_ARTICLE_OR_GROUP:	/* goto next unread article/group */
 				ret_code = tab_pressed();
 				break;
 
-			case iKeyPageDown:		/* page down */
-			case iKeyPageDown2:
-			case iKeyPageDown3:
+			case GLOBAL_PAGE_DOWN:
 				page_down();
 				break;
 
-			case iKeyGroupAutoSel:		/* auto-select article menu */
-			case iKeyGroupKill:		/* kill article menu */
+			case GLOBAL_MENU_FILTER_SELECT:		/* auto-select article menu */
+			case GLOBAL_MENU_FILTER_KILL:		/* kill article menu */
 				if (grpmenu.curr < 0) {
 					info_message(_(txt_no_arts));
 					break;
@@ -316,7 +322,7 @@ group_page(
 				old_top = top_art;
 				n = (int) base[grpmenu.curr];
 				old_artnum = arts[n].artnum;
-				if (filter_menu((ch == iKeyGroupKill) ? FILTER_KILL : FILTER_SELECT, group, &arts[n])) {
+				if (filter_menu((func == GLOBAL_MENU_FILTER_KILL) ? FILTER_KILL : FILTER_SELECT, group, &arts[n])) {
 					if (filter_articles(group)) {
 						make_threads(group, FALSE);
 						grpmenu.curr = find_new_pos(old_top, old_artnum, grpmenu.curr);
@@ -325,7 +331,7 @@ group_page(
 				show_group_page();
 				break;
 
-			case iKeyGroupEditFilter:
+			case GLOBAL_EDIT_FILTER:
 				if (!invoke_editor(filter_file, FILTER_FILE_OFFSET))
 					break;
 				unfilter_articles();
@@ -337,18 +343,18 @@ group_page(
 				show_group_page();
 				break;
 
-			case iKeyGroupQuickAutoSel:		/* quickly auto-select article */
-			case iKeyGroupQuickKill:		/* quickly kill article */
+			case GLOBAL_QUICK_FILTER_SELECT:		/* quickly auto-select article */
+			case GLOBAL_QUICK_FILTER_KILL:			/* quickly kill article */
 				if (grpmenu.curr < 0) {
 					info_message(_(txt_no_arts));
 					break;
 				}
-				if ((!TINRC_CONFIRM_ACTION) || prompt_yn(cLINES, (ch == iKeyGroupQuickKill) ? _(txt_quick_filter_kill) : _(txt_quick_filter_select), TRUE) == 1) {
+				if ((!TINRC_CONFIRM_ACTION) || prompt_yn((func == GLOBAL_QUICK_FILTER_KILL) ? _(txt_quick_filter_kill) : _(txt_quick_filter_select), TRUE) == 1) {
 					old_top = top_art;
 					n = (int) base[grpmenu.curr]; /* should this depend on show_only_unread? */
 					old_artnum = arts[n].artnum;
-					if (quick_filter((ch == iKeyGroupQuickKill) ? FILTER_KILL : FILTER_SELECT, group, &arts[n])) {
-						info_message((ch == iKeyGroupQuickKill) ? _(txt_info_add_kill) : _(txt_info_add_select));
+					if (quick_filter((func == GLOBAL_QUICK_FILTER_KILL) ? FILTER_KILL : FILTER_SELECT, group, &arts[n])) {
+						info_message((func == GLOBAL_QUICK_FILTER_KILL) ? _(txt_info_add_kill) : _(txt_info_add_select));
 						if (filter_articles(group)) {
 							make_threads(group, FALSE);
 							/* TODO: position is wrong after quick killing a thread */
@@ -359,49 +365,45 @@ group_page(
 				}
 				break;
 
-			case iKeyRedrawScr:	/* redraw screen */
+			case GLOBAL_REDRAW_SCREEN:
 				my_retouch();
 				set_xclick_off();
 				show_group_page();
 				break;
 
-			case iKeyDown:		/* line down */
-			case iKeyDown2:
+			case GLOBAL_LINE_DOWN:
 				move_down();
 				break;
 
-			case iKeyUp:		/* line up */
-			case iKeyUp2:
+			case GLOBAL_LINE_UP:
 				move_up();
 				break;
 
-			case iKeyPageUp:		/* page up */
-			case iKeyPageUp2:
-			case iKeyPageUp3:
+			case GLOBAL_PAGE_UP:
 				page_up();
 				break;
 
-			case iKeyScrollDown:
+			case GLOBAL_SCROLL_DOWN:
 				scroll_down();
 				break;
 
-			case iKeyScrollUp:
+			case GLOBAL_SCROLL_UP:
 				scroll_up();
 				break;
 
-			case iKeyCatchupLeft:
-			case iKeyGroupCatchup:
-			case iKeyGroupCatchupNextUnread:
-				ret_code = group_catchup(ch);
+			case SPECIAL_CATCHUP_LEFT:
+			case GROUP_CATCHUP:
+			case GROUP_CATCHUP_NEXT_UNREAD:
+				ret_code = group_catchup(func);
 				break;
 
-			case iKeyGroupToggleSubjDisplay:	/* toggle display of subject & subj/author */
+			case GROUP_TOGGLE_SUBJECT_DISPLAY:	/* toggle display of subject & subj/author */
 				if (++curr_group->attribute->show_author > SHOW_FROM_BOTH)
 					curr_group->attribute->show_author = SHOW_FROM_NONE;
 				show_group_page();
 				break;
 
-			case iKeyGroupGoto:	/* choose a new group by name */
+			case GROUP_GOTO:	/* choose a new group by name */
 				n = choose_new_group();
 				if (n >= 0 && n != selmenu.curr) {
 					selmenu.curr = n;
@@ -409,24 +411,24 @@ group_page(
 				}
 				break;
 
-			case iKeyHelp:					/* help */
+			case GLOBAL_HELP:
 				show_help_page(GROUP_LEVEL, _(txt_index_page_com));
 				show_group_page();
 				break;
 
-			case iKeyToggleHelpDisplay:		/* toggle mini help menu */
+			case GLOBAL_TOGGLE_HELP_DISPLAY:		/* toggle mini help menu */
 				toggle_mini_help(GROUP_LEVEL);
 				show_group_page();
 				break;
 
-			case iKeyToggleInverseVideo:	/* toggle inverse video */
+			case GLOBAL_TOGGLE_INVERSE_VIDEO:		/* toggle inverse video */
 				toggle_inverse_video();
 				show_group_page();
 				show_inverse_video_status();
 				break;
 
 #	ifdef HAVE_COLOR
-			case iKeyToggleColor:
+			case GLOBAL_TOGGLE_COLOR:
 				if (toggle_color()) {
 					show_group_page();
 					show_color_status();
@@ -434,22 +436,22 @@ group_page(
 				break;
 #	endif /* HAVE_COLOR */
 
-			case iKeyGroupMarkThdRead:	/* mark current thread/range/tagged threads as read */
+			case GROUP_MARK_THREAD_READ:			/* mark current thread/range/tagged threads as read */
 				mark_thd_read(group, range_active);
 				if (range_active)
 					range_active = FALSE; /* Range has gone now */
 				break;
 
-			case iKeyGroupListThd:				/* list articles within current thread */
+			case GROUP_LIST_THREAD:				/* list articles within current thread */
 				ret_code = enter_thread(0, NULL);	/* Enter thread at the top */
 				break;
 
-			case iKeyLookupMessage:
+			case GLOBAL_LOOKUP_MESSAGEID:
 				if ((i = prompt_msgid()) != ART_UNAVAILABLE)
 					ret_code = enter_pager(i, FALSE);
 				break;
 
-			case iKeyOptionMenu:	/* option menu */
+			case GLOBAL_OPTION_MENU:			/* option menu */
 				if (grpmenu.max > 0) {
 					old_top = top_art;
 					old_artnum = arts[(int) base[grpmenu.curr]].artnum;
@@ -461,12 +463,12 @@ group_page(
 				show_group_page();
 				break;
 
-			case iKeyGroupNextGroup:	/* goto next group */
+			case GROUP_NEXT_GROUP:			/* goto next group */
 				clear_message();
 				if (selmenu.curr + 1 >= selmenu.max)
 					info_message(_(txt_no_more_groups));
 				else {
-					if (xflag && TINRC_CONFIRM_SELECT && (prompt_yn(cLINES, _(txt_confirm_select_on_exit), FALSE) != 1)) {
+					if (xflag && TINRC_CONFIRM_SELECT && (prompt_yn(_(txt_confirm_select_on_exit), FALSE) != 1)) {
 						undo_auto_select_arts();
 						xflag = FALSE;
 					}
@@ -475,7 +477,7 @@ group_page(
 				}
 				break;
 
-			case iKeyGroupNextUnreadArt:	/* goto next unread article */
+			case GROUP_NEXT_UNREAD_ARTICLE:	/* goto next unread article */
 				if (grpmenu.curr < 0) {
 					info_message(_(txt_no_next_unread_art));
 					break;
@@ -486,7 +488,7 @@ group_page(
 					ret_code = enter_pager(n, FALSE);
 				break;
 
-			case iKeyGroupPrevUnreadArt:	/* go to previous unread article */
+			case GROUP_PREVIOUS_UNREAD_ARTICLE:	/* go to previous unread article */
 				if (grpmenu.curr < 0) {
 					info_message(_(txt_no_prev_unread_art));
 					break;
@@ -498,7 +500,7 @@ group_page(
 					ret_code = enter_pager(n, FALSE);
 				break;
 
-			case iKeyGroupPrevGroup:	/* previous group */
+			case GROUP_PREVIOUS_GROUP:	/* previous group */
 				clear_message();
 				for (i = selmenu.curr - 1; i >= 0; i--) {
 					if (UNREAD_GROUP(i))
@@ -507,7 +509,7 @@ group_page(
 				if (i < 0)
 					info_message(_(txt_no_prev_group));
 				else {
-					if (xflag && TINRC_CONFIRM_SELECT && (prompt_yn(cLINES, _(txt_confirm_select_on_exit), FALSE) != 1)) {
+					if (xflag && TINRC_CONFIRM_SELECT && (prompt_yn(_(txt_confirm_select_on_exit), FALSE) != 1)) {
 						undo_auto_select_arts();
 						xflag = FALSE;
 					}
@@ -516,41 +518,41 @@ group_page(
 				}
 				break;
 
-			case iKeyQuit:	/* return to group selection page */
-				if (num_of_tagged_arts && prompt_yn(cLINES, _(txt_quit_despite_tags), TRUE) != 1)
+			case GLOBAL_QUIT:	/* return to group selection page */
+				if (num_of_tagged_arts && prompt_yn(_(txt_quit_despite_tags), TRUE) != 1)
 					break;
-				if (xflag && TINRC_CONFIRM_SELECT && (prompt_yn(cLINES, _(txt_confirm_select_on_exit), FALSE) != 1)) {
+				if (xflag && TINRC_CONFIRM_SELECT && (prompt_yn(_(txt_confirm_select_on_exit), FALSE) != 1)) {
 					undo_auto_select_arts();
 					xflag = FALSE;
 				}
 				ret_code = GRP_EXIT;
 				break;
 
-			case iKeyQuitTin:		/* quit */
-				if (num_of_tagged_arts && prompt_yn(cLINES, _(txt_quit_despite_tags), TRUE) != 1)
+			case GLOBAL_QUIT_TIN:		/* quit */
+				if (num_of_tagged_arts && prompt_yn(_(txt_quit_despite_tags), TRUE) != 1)
 					break;
-				if (xflag && TINRC_CONFIRM_SELECT && (prompt_yn(cLINES, _(txt_confirm_select_on_exit), FALSE) != 1)) {
+				if (xflag && TINRC_CONFIRM_SELECT && (prompt_yn(_(txt_confirm_select_on_exit), FALSE) != 1)) {
 					undo_auto_select_arts();
 					xflag = FALSE;
 				}
 				ret_code = GRP_QUIT;
 				break;
 
-			case iKeyGroupToggleReadUnread:
+			case GROUP_TOGGLE_READ_UNREAD:
 				toggle_read_unread(FALSE);
 				show_group_page();
 				break;
 
-			case iKeyGroupToggleGetartLimit:
+			case GROUP_TOGGLE_GET_ARTICLES_LIMIT:
 				tinrc.getart_limit = prompt_getart_limit();
 				ret_code = GRP_NEXTUNREAD;
 				break;
 
-			case iKeyGroupBugReport:
+			case GLOBAL_BUGREPORT:
 				bug_report();
 				break;
 
-			case iKeyGroupTagParts: /* tag all in order */
+			case GROUP_TAG_PARTS: /* tag all in order */
 				if (0 <= grpmenu.curr) {
 					if (tag_multipart(grpmenu.curr) != 0) {
 						/*
@@ -572,7 +574,7 @@ group_page(
 				}
 				break;
 
-			case iKeyGroupTag:	/* tag/untag threads for mailing/piping/printing/saving */
+			case GROUP_TAG:		/* tag/untag threads for mailing/piping/printing/saving */
 				if (grpmenu.curr >= 0) {
 					t_bool tagged = TRUE;
 
@@ -634,7 +636,7 @@ group_page(
 				}
 				break;
 
-			case iKeyGroupToggleThreading:	/* Cycle through the threading types */
+			case GROUP_TOGGLE_THREADING:		/* Cycle through the threading types */
 				group->attribute->thread_arts = (group->attribute->thread_arts + 1) % (THREAD_MAX + 1);
 				if (grpmenu.curr >= 0) {
 					i = base[grpmenu.curr];								/* Save a copy of current thread */
@@ -646,24 +648,23 @@ group_page(
 				show_group_page();
 				break;
 
-			case iKeyGroupUntag:	/* untag all articles */
+			case GROUP_UNTAG:	/* untag all articles */
 				if (grpmenu.curr >= 0) {
 					if (untag_all_articles())
 						update_group_page();
 				}
 				break;
 
-			case iKeyVersion:
+			case GLOBAL_VERSION:
 				info_message(cvers);
 				break;
 
-			case iKeyPost:	/* post an article */
+			case GLOBAL_POST:	/* post an article */
 				if (post_article(group->name))
 					show_group_page();
 				break;
 
-			case iKeyPostponed:
-			case iKeyPostponed2:	/* post postponed article */
+			case GLOBAL_POSTPONED:	/* post postponed article */
 				if (can_post) {
 					if (pickup_postponed_articles(FALSE, FALSE))
 						show_group_page();
@@ -671,12 +672,12 @@ group_page(
 					info_message(_(txt_cannot_post));
 				break;
 
-			case iKeyDisplayPostHist:	/* display messages posted by user */
+			case GLOBAL_DISPLAY_POST_HISTORY:	/* display messages posted by user */
 				if (user_posted_messages())
 					show_group_page();
 				break;
 
-			case iKeyGroupMarkArtUnread:	/* mark base article of thread unread */
+			case GROUP_MARK_ARTICLE_UNREAD:		/* mark base article of thread unread */
 				if (grpmenu.curr < 0)
 					info_message(_(txt_no_arts));
 				else {
@@ -710,7 +711,7 @@ group_page(
 				}
 				break;
 
-			case iKeyGroupMarkThdUnread:	/* mark whole thread as unread */
+			case GROUP_MARK_THREAD_UNREAD:		/* mark whole thread as unread */
 				if (grpmenu.curr < 0)
 					info_message(_(txt_no_arts));
 				else {
@@ -742,15 +743,15 @@ group_page(
 				}
 				break;
 
-			case iKeyGroupSelThd:	/* mark thread as selected */
-			case iKeyGroupToggleThdSel:	/* toggle thread */
+			case GROUP_SELECT_THREAD:	/* mark thread as selected */
+			case GROUP_TOGGLE_SELECT_THREAD:	/* toggle thread */
 				if (grpmenu.curr < 0) {
 					info_message(_(txt_no_arts));
 					break;
 				}
 
 				flag = TRUE;
-				if (ch == iKeyGroupToggleThdSel) {
+				if (func == GROUP_TOGGLE_SELECT_THREAD) {
 					stat_thread(grpmenu.curr, &sbuf);
 					if (sbuf.selected_unread == sbuf.unread)
 						flag = FALSE;
@@ -779,21 +780,21 @@ group_page(
 				draw_subject_arrow();
 				break;
 
-			case iKeyGroupReverseSel:	/* reverse selections */
+			case GROUP_REVERSE_SELECTIONS:	/* reverse selections */
 				for_each_art(i)
 					arts[i].selected = bool_not(arts[i].selected);
 				update_group_page();
 				show_group_title(TRUE);
 				break;
 
-			case iKeyGroupUndoSel:	/* undo selections */
+			case GROUP_UNDO_SELECTIONS:	/* undo selections */
 				undo_selections();
 				xflag = FALSE;
 				show_group_title(TRUE);
 				update_group_page();
 				break;
 
-			case iKeyGroupSelPattern:	/* select matching patterns */
+			case GROUP_SELECT_PATTERN:	/* select matching patterns */
 				{
 					char pat[128];
 					char *prompt;
@@ -838,7 +839,7 @@ group_page(
 					break;
 				}
 
-			case iKeyGroupSelThdIfUnreadSelected:	/* select all unread arts in thread hot if 1 is hot */
+			case GROUP_SELECT_THREAD_IF_UNREAD_SELECTED:	/* select all unread arts in thread hot if 1 is hot */
 				for (n = 0; n < grpmenu.max; n++) {
 					stat_thread(n, &sbuf);
 					if (!sbuf.selected_unread || sbuf.selected_unread == sbuf.unread)
@@ -850,7 +851,7 @@ group_page(
 				show_group_title(TRUE);
 				break;
 
-			case iKeyGroupMarkUnselArtRead:	/* mark read all unselected arts */
+			case GROUP_MARK_UNSELECTED_ARTICLES_READ:	/* mark read all unselected arts */
 				if (!xflag) {
 					do_auto_select_arts();
 					xflag = TRUE;
@@ -860,7 +861,7 @@ group_page(
 				}
 				break;
 
-			case iKeyGroupDoAutoSel:		/* perform auto-selection on group */
+			case GROUP_DO_AUTOSELECT:		/* perform auto-selection on group */
 				for (n = 0; n < grpmenu.max; n++) {
 					for_each_art_in_thread(i, n)
 						arts[i].selected = TRUE;
@@ -869,13 +870,13 @@ group_page(
 				show_group_title(TRUE);
 				break;
 
-			case iKeyToggleInfoLastLine:
+			case GLOBAL_TOGGLE_INFO_LAST_LINE:
 				tinrc.info_in_last_line = bool_not(tinrc.info_in_last_line);
 				show_group_page();
 				break;
 
 			default:
-				info_message(_(txt_bad_command), printascii(key, map_to_local(iKeyHelp, &menukeymap.group_nav)));
+				info_message(_(txt_bad_command), printascii(key, func_to_key(GLOBAL_HELP, group_keys)));
 				break;
 		} /* switch(ch) */
 	} /* ret_code >= 0 */
@@ -1430,8 +1431,7 @@ show_group_title(
  */
 static int
 do_search(
-	int type,
-	t_bool forward,
+	t_function func,
 	t_bool repeat)
 {
 	int start, n;
@@ -1442,9 +1442,10 @@ do_search(
 	/*
 	 * Not intuitive to search current thread in fwd search
 	 */
-	start = (forward && grpmenu.curr < grpmenu.max - 1) ? prev_response((int) base[grpmenu.curr + 1]) : (int) base[grpmenu.curr];
+	start = ((func == GLOBAL_SEARCH_SUBJECT_FORWARD || func == GLOBAL_SEARCH_AUTHOR_FORWARD)
+		&& grpmenu.curr < grpmenu.max - 1) ? prev_response((int) base[grpmenu.curr + 1]) : (int) base[grpmenu.curr];
 
-	if ((n = search(type, start, forward, repeat)) != -1) {
+	if ((n = search(func, start, repeat)) != -1) {
 		grpmenu.curr = which_thread(n);
 
 		/*
@@ -1568,31 +1569,31 @@ tab_pressed(
  */
 static int
 group_catchup(
-	int ch)
+	t_function func)
 {
 	char buf[LEN];
 	int pyn = 1;
 
-	if (num_of_tagged_arts && prompt_yn(cLINES, _(txt_catchup_despite_tags), TRUE) != 1)
+	if (num_of_tagged_arts && prompt_yn(_(txt_catchup_despite_tags), TRUE) != 1)
 		return 0;
 
-	snprintf(buf, sizeof(buf), _(txt_mark_arts_read), (ch == iKeyGroupCatchupNextUnread) ? _(txt_enter_next_unread_group) : "");
+	snprintf(buf, sizeof(buf), _(txt_mark_arts_read), (func == GROUP_CATCHUP_NEXT_UNREAD) ? _(txt_enter_next_unread_group) : "");
 
-	if (!curr_group->newsrc.num_unread || (!TINRC_CONFIRM_ACTION) || (pyn = prompt_yn(cLINES, buf, TRUE)) == 1)
+	if (!curr_group->newsrc.num_unread || (!TINRC_CONFIRM_ACTION) || (pyn = prompt_yn(buf, TRUE)) == 1)
 		grp_mark_read(curr_group, arts);
 
-	switch (ch) {
-		case iKeyGroupCatchup:				/* 'c' */
+	switch (func) {
+		case GROUP_CATCHUP:				/* 'c' */
 			if (pyn == 1)
 				return GRP_NEXT;
 			break;
 
-		case iKeyGroupCatchupNextUnread:	/* 'C' */
+		case GROUP_CATCHUP_NEXT_UNREAD:			/* 'C' */
 			if (pyn == 1)
 				return GRP_NEXTUNREAD;
 			break;
 
-		case iKeyCatchupLeft:				/* <- group catchup on exit */
+		case SPECIAL_CATCHUP_LEFT:				/* <- group catchup on exit */
 			switch (pyn) {
 				case -1:					/* ESCAPE - do nothing */
 					break;
@@ -1644,7 +1645,7 @@ mark_thd_read(
 	t_bool range_active)
 {
 	char keytagged[MAXKEYLEN], keycurrent[MAXKEYLEN], keyquit[MAXKEYLEN];
-	int ch = iKeyMarkReadCur;
+	t_function func = MARK_READ_CURRENT;
 	int n, cnt = 0;
 	int tmp_num_of_tagged_arts = num_of_tagged_arts;
 
@@ -1655,20 +1656,19 @@ mark_thd_read(
 
 	/* Don't prompt if there's an active range or if prompting is turned off */
 	if (!range_active && !tinrc.mark_ignore_tags && got_tagged_unread_arts()) {
-		ch = prompt_slk_response(iKeyMarkReadTag,
-				&menukeymap.mark_read_tagged_current,
+		func = prompt_slk_response(MARK_READ_TAGGED, mark_read_keys,
 				_(txt_mark_thread_read_tagged_current),
-				printascii(keytagged, map_to_local(iKeyMarkReadTag, &menukeymap.mark_read_tagged_current)),
-				printascii(keycurrent, map_to_local(iKeyMarkReadCur, &menukeymap.mark_read_tagged_current)),
-				printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.mark_read_tagged_current)));
+				printascii(keytagged, func_to_key(MARK_READ_TAGGED, mark_read_keys)),
+				printascii(keycurrent, func_to_key(MARK_READ_CURRENT, mark_read_keys)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, mark_read_keys)));
 	}
 
-	switch (ch) {
-		case iKeyMarkReadTag: /* mark tagged unread articles/threads as read */
+	switch (func) {
+		case MARK_READ_TAGGED: /* mark tagged unread articles/threads as read */
 			cnt = mark_tagged_read(group);
 			break;
 
-		case iKeyMarkReadCur: /* mark current thread/range as read */
+		case MARK_READ_CURRENT: /* mark current thread/range as read */
 			/*
 			 * If a range is active, use it.
 			 */
@@ -1688,8 +1688,9 @@ mark_thd_read(
 				thd_mark_read(group, base[grpmenu.curr]);
 			break;
 
-		case iKeyQuit: /* cancel operation */
-		case iKeyAbort:
+		case GLOBAL_QUIT: /* cancel operation */
+		case GLOBAL_ABORT:
+		default:
 			return;
 			/* NOTREACHED */
 			break;
@@ -1703,7 +1704,7 @@ mark_thd_read(
 	/*
 	 * Refresh current line or, if necessary, whole group page
 	 */
-	if (range_active || ch == iKeyMarkReadTag)
+	if (range_active || func == MARK_READ_TAGGED)
 		show_group_page();
 	else
 		build_sline(grpmenu.curr);
@@ -1725,6 +1726,6 @@ mark_thd_read(
 
 	move_to_item(n);
 
-	if (ch == iKeyMarkReadTag)
+	if (func == MARK_READ_TAGGED)
 		info_message(_(txt_marked_tagged_arts_as_read), cnt, tmp_num_of_tagged_arts, PLURAL(tmp_num_of_tagged_arts, txt_article));
 }
diff -Nurp tin-1.7.7/src/hashstr.c tin-1.7.8/src/hashstr.c
--- tin-1.7.7/src/hashstr.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/hashstr.c	Thu Dec 30 14:33:10 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-09-19
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
 
  * All rights reserved.
  *
diff -Nurp tin-1.7.7/src/header.c tin-1.7.8/src/header.c
--- tin-1.7.7/src/header.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/header.c	Thu Dec 30 14:33:10 2004
@@ -5,7 +5,7 @@
  *  Created   : 1997-03-10
  *  Updated   : 2003-09-19
  *
- * Copyright (c) 1997-2004 Urs Janssen <urs@tin.org>
+ * Copyright (c) 1997-2005 Urs Janssen <urs@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/help.c tin-1.7.8/src/help.c
--- tin-1.7.7/src/help.c	Tue Nov 16 14:27:27 2004
+++ tin-1.7.8/src/help.c	Wed Mar 16 13:40:40 2005
@@ -3,10 +3,10 @@
  *  Module    : help.c
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-03-16
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,407 +41,399 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 
 typedef struct thp {
 	constext *helptext;
-	char key;
+	t_function func;
 } t_help_page;
 
 /*
  * local prototypes
  */
-static void make_help_page(FILE *fp, const t_help_page *helppage, const t_menukeys *menukeys);
+static void make_help_page(FILE *fp, const t_help_page *helppage, const struct keylist keys);
 
 
 static constext txt_help_empty_line[] = "";
 
 static t_help_page select_help_page[] = {
-	{ txt_help_title_navi, 0 },
-	{ txt_help_global_page_down, iKeyPageDown },
-	{ txt_help_global_page_down, iKeyPageDown2 },
-	{ txt_help_global_page_down, iKeyPageDown3 },
-	{ txt_help_global_page_up, iKeyPageUp2 },
-	{ txt_help_global_page_up, iKeyPageUp },
-	{ txt_help_global_page_up, iKeyPageUp3 },
-	{ txt_help_global_line_down, iKeyDown2 },
-	{ txt_help_global_line_down, iKeyDown },
-	{ txt_help_global_line_up, iKeyUp2 },
-	{ txt_help_global_line_up, iKeyUp },
-	{ txt_help_global_scroll_down, iKeyScrollDown },
-	{ txt_help_global_scroll_up, iKeyScrollUp },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_select_first_group, iKeyFirstPage },
-	{ txt_help_select_last_group, iKeyLastPage },
-	{ txt_help_select_group_by_num, 0 },
-	{ txt_help_select_goto_group, iKeySelectGoto },
-	{ txt_help_select_next_unread_group, iKeySelectNextUnreadGrp },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_select_search_group_forwards, iKeySearchSubjF },
-	{ txt_help_select_search_group_backwards, iKeySearchSubjB },
-	{ txt_help_select_search_group_comment, 0 },
-	{ txt_help_global_search_repeat, iKeySearchRepeat },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_disp, 0 },
-	{ txt_help_select_toggle_read_groups, iKeySelectToggleReadDisplay },
-	{ txt_help_global_toggle_info_line, iKeyToggleInfoLastLine },
-	{ txt_help_select_toggle_descriptions, iKeySelectToggleDescriptions },
-	{ txt_help_global_toggle_inverse_video, iKeyToggleInverseVideo },
+	{ txt_help_title_navi, NOT_ASSIGNED },
+	{ txt_help_global_page_down, GLOBAL_PAGE_DOWN },
+	{ txt_help_global_page_up, GLOBAL_PAGE_UP },
+	{ txt_help_global_line_down, GLOBAL_LINE_DOWN },
+	{ txt_help_global_line_up, GLOBAL_LINE_UP },
+	{ txt_help_global_scroll_down, GLOBAL_SCROLL_DOWN },
+	{ txt_help_global_scroll_up, GLOBAL_SCROLL_UP },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_select_first_group, GLOBAL_FIRST_PAGE },
+	{ txt_help_select_last_group, GLOBAL_LAST_PAGE },
+	{ txt_help_select_group_by_num, NOT_ASSIGNED },
+	{ txt_help_select_goto_group, SELECT_GOTO },
+	{ txt_help_select_next_unread_group, SELECT_NEXT_UNREAD_GROUP },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_select_search_group_forwards, GLOBAL_SEARCH_SUBJECT_FORWARD },
+	{ txt_help_select_search_group_backwards, GLOBAL_SEARCH_SUBJECT_BACKWARD },
+	{ txt_help_select_search_group_comment, NOT_ASSIGNED },
+	{ txt_help_global_search_repeat, GLOBAL_SEARCH_REPEAT },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_disp, NOT_ASSIGNED },
+	{ txt_help_select_toggle_read_groups, SELECT_TOGGLE_READ_DISPLAY },
+	{ txt_help_global_toggle_info_line, GLOBAL_TOGGLE_INFO_LAST_LINE },
+	{ txt_help_select_toggle_descriptions, SELECT_TOGGLE_DESCRIPTIONS },
+	{ txt_help_global_toggle_inverse_video, GLOBAL_TOGGLE_INVERSE_VIDEO },
 #ifdef HAVE_COLOR
-	{ txt_help_global_toggle_color, iKeyToggleColor },
+	{ txt_help_global_toggle_color, GLOBAL_TOGGLE_COLOR },
 #endif /* HAVE_COLOR */
-	{ txt_help_empty_line, 0 },
-	{ txt_help_select_sort_active, iKeySelectSortActive },
-	{ txt_help_select_yank_active, iKeySelectYankActive },
-	{ txt_help_select_sync_with_active, iKeySelectSyncWithActive },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_ops, 0 },
-	{ txt_help_select_read_group, iKeySelectReadGrp },
-	{ txt_help_select_next_unread_group, iKeySelectEnterNextUnreadGrp2 },
-	{ txt_help_select_next_unread_group, iKeySelectEnterNextUnreadGrp },
-	{ txt_help_global_post, iKeyPost },
-	{ txt_help_global_post_postponed, iKeyPostponed2 },
-	{ txt_help_global_post_postponed, iKeyPostponed },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_select_group_range, iKeySetRange },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_select_catchup, iKeySelectCatchup },
-	{ txt_help_select_catchup_next_unread, iKeySelectCatchupNextUnread },
-	{ txt_help_select_mark_group_unread, iKeySelectMarkGrpUnread },
-	{ txt_help_select_mark_group_unread, iKeySelectMarkGrpUnread2 },
-	{ txt_help_select_subscribe, iKeySelectSubscribe },
-	{ txt_help_select_unsubscribe, iKeySelectUnsubscribe },
-	{ txt_help_select_subscribe_pattern, iKeySelectSubscribePat },
-	{ txt_help_select_unsubscribe_pattern, iKeySelectUnsubscribePat },
-	{ txt_help_select_move_group, iKeySelectMoveGrp },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_misc, 0 },
-	{ txt_help_select_quit, iKeyQuit },
-	{ txt_help_global_quit_tin, iKeyQuitTin },
-	{ txt_help_select_quit_no_write, iKeySelectQuitNoWrite },
-	{ txt_help_global_help, iKeyHelp },
-	{ txt_help_global_toggle_mini_help, iKeyToggleHelpDisplay },
-	{ txt_help_global_option_menu, iKeyOptionMenu },
-	{ txt_help_global_esc, iKeyAbort },
-	{ txt_help_global_redraw_screen, iKeyRedrawScr },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_select_sort_active, SELECT_SORT_ACTIVE },
+	{ txt_help_select_yank_active, SELECT_YANK_ACTIVE },
+	{ txt_help_select_sync_with_active, SELECT_SYNC_WITH_ACTIVE },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_ops, NOT_ASSIGNED },
+	{ txt_help_select_read_group, SELECT_ENTER_GROUP },
+	{ txt_help_select_next_unread_group, SELECT_ENTER_NEXT_UNREAD_GROUP },
+#ifndef NO_POSTING
+	{ txt_help_global_post, GLOBAL_POST },
+	{ txt_help_global_post_postponed, GLOBAL_POSTPONED },
+#endif /* NO_POSTING */
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_select_group_range, GLOBAL_SET_RANGE },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_select_catchup, SELECT_CATCHUP },
+	{ txt_help_select_catchup_next_unread, SELECT_CATCHUP_NEXT_UNREAD },
+	{ txt_help_select_mark_group_unread, SELECT_MARK_GROUP_UNREAD },
+	{ txt_help_select_subscribe, SELECT_SUBSCRIBE },
+	{ txt_help_select_unsubscribe, SELECT_UNSUBSCRIBE },
+	{ txt_help_select_subscribe_pattern, SELECT_SUBSCRIBE_PATTERN },
+	{ txt_help_select_unsubscribe_pattern, SELECT_UNSUBSCRIBE_PATTERN },
+	{ txt_help_select_move_group, SELECT_MOVE_GROUP },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_edit_filter, GLOBAL_EDIT_FILTER},
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_misc, NOT_ASSIGNED },
+	{ txt_help_select_quit, GLOBAL_QUIT },
+	{ txt_help_global_quit_tin, GLOBAL_QUIT_TIN },
+	{ txt_help_select_quit_no_write, SELECT_QUIT_NO_WRITE },
+	{ txt_help_global_help, GLOBAL_HELP },
+	{ txt_help_global_toggle_mini_help, GLOBAL_TOGGLE_HELP_DISPLAY },
+	{ txt_help_global_option_menu, GLOBAL_OPTION_MENU },
+	{ txt_help_global_esc, GLOBAL_ABORT },
+	{ txt_help_global_redraw_screen, GLOBAL_REDRAW_SCREEN },
 #ifndef NO_SHELL_ESCAPE
-	{ txt_help_global_shell_escape, iKeyShellEscape },
+	{ txt_help_global_shell_escape, GLOBAL_SHELL_ESCAPE },
 #endif /* !NO_SHELL_ESCAPE */
-	{ txt_help_global_posting_history, iKeyDisplayPostHist },
-	{ txt_help_select_reset_newsrc, iKeySelectResetNewsrc },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_version, iKeyVersion },
-	{ txt_help_bug_report, iKeySelectBugReport },
-	{ NULL, 0 }
+	{ txt_help_global_posting_history, GLOBAL_DISPLAY_POST_HISTORY },
+	{ txt_help_select_reset_newsrc, SELECT_RESET_NEWSRC },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_version, GLOBAL_VERSION },
+	{ txt_help_bug_report, GLOBAL_BUGREPORT },
+	{ NULL, NOT_ASSIGNED }
 };
 
 static t_help_page group_help_page[] = {
-	{ txt_help_title_navi, 0 },
-	{ txt_help_global_page_down, iKeyPageDown },
-	{ txt_help_global_page_down, iKeyPageDown2 },
-	{ txt_help_global_page_down, iKeyPageDown3 },
-	{ txt_help_global_page_up, iKeyPageUp2 },
-	{ txt_help_global_page_up, iKeyPageUp },
-	{ txt_help_global_page_up, iKeyPageUp3 },
-	{ txt_help_global_line_down, iKeyDown2 },
-	{ txt_help_global_line_down, iKeyDown },
-	{ txt_help_global_line_up, iKeyUp2 },
-	{ txt_help_global_line_up, iKeyUp },
-	{ txt_help_global_scroll_down, iKeyScrollDown },
-	{ txt_help_global_scroll_up, iKeyScrollUp },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_group_first_thread, iKeyFirstPage },
-	{ txt_help_group_last_thread, iKeyLastPage },
-	{ txt_help_group_thread_by_num, 0 },
-	{ txt_help_select_goto_group, iKeyGroupGoto },
-	{ txt_help_group_next, iKeyGroupNextGroup },
-	{ txt_help_group_prev, iKeyGroupPrevGroup },
-	{ txt_help_article_next_unread, iKeyGroupNextUnreadArt },
-	{ txt_help_article_prev_unread, iKeyGroupPrevUnreadArt },
-	{ txt_help_global_last_art, iKeyLastViewed },
-	{ txt_help_global_lookup_art, iKeyLookupMessage },
-	{ txt_help_group_list_thread, iKeyGroupListThd },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_search_subj_forwards, iKeySearchSubjF },
-	{ txt_help_global_search_subj_backwards, iKeySearchSubjB },
-	{ txt_help_global_search_auth_forwards, iKeySearchAuthF },
-	{ txt_help_global_search_auth_backwards, iKeySearchAuthB },
-	{ txt_help_global_search_body, iKeySearchBody },
-	{ txt_help_global_search_body_comment, 0 },
-	{ txt_help_global_search_repeat, iKeySearchRepeat },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_disp, 0 },
-	{ txt_help_group_toggle_read_articles, iKeyGroupToggleReadUnread },
-	{ txt_help_global_toggle_info_line, iKeyToggleInfoLastLine },
-	{ txt_help_global_toggle_subj_display, iKeyGroupToggleSubjDisplay },
-	{ txt_help_global_toggle_inverse_video, iKeyToggleInverseVideo },
+	{ txt_help_title_navi, NOT_ASSIGNED },
+	{ txt_help_global_page_down, GLOBAL_PAGE_DOWN },
+	{ txt_help_global_page_up, GLOBAL_PAGE_UP },
+	{ txt_help_global_line_down, GLOBAL_LINE_DOWN },
+	{ txt_help_global_line_up, GLOBAL_LINE_UP },
+	{ txt_help_global_scroll_down, GLOBAL_SCROLL_DOWN },
+	{ txt_help_global_scroll_up, GLOBAL_SCROLL_UP },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_group_first_thread, GLOBAL_FIRST_PAGE },
+	{ txt_help_group_last_thread, GLOBAL_LAST_PAGE },
+	{ txt_help_group_thread_by_num, NOT_ASSIGNED },
+	{ txt_help_select_goto_group, GROUP_GOTO },
+	{ txt_help_group_next, GROUP_NEXT_GROUP },
+	{ txt_help_group_prev, GROUP_PREVIOUS_GROUP },
+	{ txt_help_article_next_unread, GROUP_NEXT_UNREAD_ARTICLE },
+	{ txt_help_article_prev_unread, GROUP_PREVIOUS_UNREAD_ARTICLE },
+	{ txt_help_global_last_art, GLOBAL_LAST_VIEWED },
+	{ txt_help_global_lookup_art, GLOBAL_LOOKUP_MESSAGEID },
+	{ txt_help_group_list_thread, GROUP_LIST_THREAD },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_search_subj_forwards, GLOBAL_SEARCH_SUBJECT_FORWARD },
+	{ txt_help_global_search_subj_backwards, GLOBAL_SEARCH_SUBJECT_BACKWARD },
+	{ txt_help_global_search_auth_forwards, GLOBAL_SEARCH_AUTHOR_FORWARD },
+	{ txt_help_global_search_auth_backwards, GLOBAL_SEARCH_AUTHOR_BACKWARD },
+	{ txt_help_global_search_body, GLOBAL_SEARCH_BODY },
+	{ txt_help_global_search_body_comment, NOT_ASSIGNED },
+	{ txt_help_global_search_repeat, GLOBAL_SEARCH_REPEAT },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_disp, NOT_ASSIGNED },
+	{ txt_help_group_toggle_read_articles, GROUP_TOGGLE_READ_UNREAD },
+	{ txt_help_global_toggle_info_line, GLOBAL_TOGGLE_INFO_LAST_LINE },
+	{ txt_help_select_toggle_descriptions, SELECT_TOGGLE_DESCRIPTIONS },
+	{ txt_help_global_toggle_inverse_video, GLOBAL_TOGGLE_INVERSE_VIDEO },
 #ifdef HAVE_COLOR
-	{ txt_help_global_toggle_color, iKeyToggleColor },
+	{ txt_help_global_toggle_color, GLOBAL_TOGGLE_COLOR },
 #endif /* HAVE_COLOR */
-	{ txt_help_empty_line, 0 },
-	{ txt_help_group_toggle_threading, iKeyGroupToggleThreading },
-	{ txt_help_group_mark_unsel_art_read, iKeyGroupMarkUnselArtRead },
-	{ txt_help_group_toggle_getart_limit, iKeyGroupToggleGetartLimit },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_ops, 0 },
-	{ txt_help_thread_read_article, iKeyGroupReadBasenote },
-	{ txt_help_article_next_unread, iKeyGroupNextUnreadArtOrGrp },
-	{ txt_help_global_post, iKeyPost },
-	{ txt_help_global_post_postponed, iKeyPostponed2 },
-	{ txt_help_global_post_postponed, iKeyPostponed },
-	{ txt_help_article_repost, iKeyGroupRepost },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_article_range, iKeySetRange },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_mail, iKeyGroupMail },
-	{ txt_help_global_save, iKeyGroupSave },
-	{ txt_help_global_auto_save, iKeyGroupAutoSave },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_toggle_subj_display, GROUP_TOGGLE_SUBJECT_DISPLAY},
+	{ txt_help_group_toggle_threading, GROUP_TOGGLE_THREADING },
+	{ txt_help_group_mark_unsel_art_read, GROUP_MARK_UNSELECTED_ARTICLES_READ },
+	{ txt_help_group_toggle_getart_limit, GROUP_TOGGLE_GET_ARTICLES_LIMIT },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_ops, NOT_ASSIGNED },
+	{ txt_help_thread_read_article, GROUP_READ_BASENOTE },
+	{ txt_help_article_next_unread, GROUP_NEXT_UNREAD_ARTICLE_OR_GROUP },
+#ifndef NO_POSTING
+	{ txt_help_global_post, GLOBAL_POST },
+	{ txt_help_global_post_postponed, GLOBAL_POSTPONED },
+	{ txt_help_article_repost, GROUP_REPOST },
+#endif /* NO_POSTING */
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_article_range, GLOBAL_SET_RANGE },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_mail, GROUP_MAIL },
+	{ txt_help_global_save, GROUP_SAVE },
+	{ txt_help_global_auto_save, GROUP_AUTOSAVE },
 #ifndef DONT_HAVE_PIPING
-	{ txt_help_global_pipe, iKeyPipe },
+	{ txt_help_global_pipe, GLOBAL_PIPE },
 #endif /* !DONT_HAVE_PIPING */
 #ifndef DISABLE_PRINTING
-	{ txt_help_global_print, iKeyPrint },
+	{ txt_help_global_print, GLOBAL_PRINT },
 #endif /* !DISABLE_PRINTING */
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_tag, iKeyGroupTag },
-	{ txt_help_group_tag_parts, iKeyGroupTagParts },
-	{ txt_help_group_untag_thread, iKeyGroupUntag },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_group_mark_thread_read, iKeyGroupMarkThdRead },
-	{ txt_help_group_catchup, iKeyGroupCatchup },
-	{ txt_help_group_catchup_next, iKeyGroupCatchupNextUnread },
-	{ txt_help_group_mark_article_unread, iKeyGroupMarkArtUnread },
-	{ txt_help_group_mark_thread_unread, iKeyGroupMarkThdUnread },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_group_select_all, iKeyGroupDoAutoSel },
-	{ txt_help_group_select_thread, iKeyGroupSelThd },
-	{ txt_help_group_select_thread_pattern, iKeyGroupSelPattern },
-	{ txt_help_group_select_thread_if_unread_selected, iKeyGroupSelThdIfUnreadSelected },
-	{ txt_help_group_toggle_thread_selection, iKeyGroupToggleThdSel },
-	{ txt_help_group_reverse_thread_selection, iKeyGroupReverseSel },
-	{ txt_help_group_undo_thread_selection, iKeyGroupUndoSel },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_article_autoselect, iKeyGroupAutoSel },
-	{ txt_help_article_autokill, iKeyGroupKill },
-	{ txt_help_article_quick_select, iKeyGroupQuickAutoSel },
-	{ txt_help_article_quick_kill, iKeyGroupQuickKill },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_misc, 0 },
-	{ txt_help_global_previous_menu, iKeyQuit },
-	{ txt_help_global_quit_tin, iKeyQuitTin },
-	{ txt_help_global_help, iKeyHelp },
-	{ txt_help_global_toggle_mini_help, iKeyToggleHelpDisplay },
-	{ txt_help_global_option_menu, iKeyOptionMenu },
-	{ txt_help_global_esc, iKeyAbort },
-	{ txt_help_global_redraw_screen, iKeyRedrawScr },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_tag, GROUP_TAG },
+	{ txt_help_group_tag_parts, GROUP_TAG_PARTS },
+	{ txt_help_group_untag_thread, GROUP_UNTAG },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_group_mark_thread_read, GROUP_MARK_THREAD_READ },
+	{ txt_help_group_catchup, GROUP_CATCHUP },
+	{ txt_help_group_catchup_next, GROUP_CATCHUP_NEXT_UNREAD },
+	{ txt_help_group_mark_article_unread, GROUP_MARK_ARTICLE_UNREAD },
+	{ txt_help_group_mark_thread_unread, GROUP_MARK_THREAD_UNREAD },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_group_select_all, GROUP_DO_AUTOSELECT },
+	{ txt_help_group_select_thread, GROUP_SELECT_THREAD },
+	{ txt_help_group_select_thread_pattern, GROUP_SELECT_PATTERN },
+	{ txt_help_group_select_thread_if_unread_selected, GROUP_SELECT_THREAD_IF_UNREAD_SELECTED },
+	{ txt_help_group_toggle_thread_selection, GROUP_TOGGLE_SELECT_THREAD },
+	{ txt_help_group_reverse_thread_selection, GROUP_REVERSE_SELECTIONS },
+	{ txt_help_group_undo_thread_selection, GROUP_UNDO_SELECTIONS },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_article_autoselect, GLOBAL_MENU_FILTER_SELECT },
+	{ txt_help_article_autokill, GLOBAL_MENU_FILTER_KILL },
+	{ txt_help_article_quick_select, GLOBAL_QUICK_FILTER_SELECT },
+	{ txt_help_article_quick_kill, GLOBAL_QUICK_FILTER_KILL },
+	{ txt_help_global_edit_filter, GLOBAL_EDIT_FILTER},
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_misc, NOT_ASSIGNED },
+	{ txt_help_global_previous_menu, GLOBAL_QUIT },
+	{ txt_help_global_quit_tin, GLOBAL_QUIT_TIN },
+	{ txt_help_global_help, GLOBAL_HELP },
+	{ txt_help_global_toggle_mini_help, GLOBAL_TOGGLE_HELP_DISPLAY },
+	{ txt_help_global_option_menu, GLOBAL_OPTION_MENU },
+	{ txt_help_global_esc, GLOBAL_ABORT },
+	{ txt_help_global_redraw_screen, GLOBAL_REDRAW_SCREEN },
 #ifndef NO_SHELL_ESCAPE
-	{ txt_help_global_shell_escape, iKeyShellEscape },
+	{ txt_help_global_shell_escape, GLOBAL_SHELL_ESCAPE },
 #endif /* !NO_SHELL_ESCAPE */
-	{ txt_help_global_posting_history, iKeyDisplayPostHist },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_version, iKeyVersion },
-	{ txt_help_bug_report, iKeyGroupBugReport },
-	{ NULL, 0 }
+	{ txt_help_global_posting_history, GLOBAL_DISPLAY_POST_HISTORY },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_version, GLOBAL_VERSION },
+	{ txt_help_bug_report, GLOBAL_BUGREPORT },
+	{ NULL, NOT_ASSIGNED }
 };
 
 static t_help_page thread_help_page[] = {
-	{ txt_help_title_navi, 0 },
-	{ txt_help_global_page_down, iKeyPageDown },
-	{ txt_help_global_page_down, iKeyPageDown2 },
-	{ txt_help_global_page_down, iKeyPageDown3 },
-	{ txt_help_global_page_up, iKeyPageUp2 },
-	{ txt_help_global_page_up, iKeyPageUp },
-	{ txt_help_global_page_up, iKeyPageUp3 },
-	{ txt_help_global_line_down, iKeyDown2 },
-	{ txt_help_global_line_down, iKeyDown },
-	{ txt_help_global_line_up, iKeyUp2 },
-	{ txt_help_global_line_up, iKeyUp },
-	{ txt_help_global_scroll_down, iKeyScrollDown },
-	{ txt_help_global_scroll_up, iKeyScrollUp },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_thread_first_article, iKeyFirstPage },
-	{ txt_help_thread_last_article, iKeyLastPage },
-	{ txt_help_thread_article_by_num, 0 },
-	{ txt_help_global_last_art, iKeyLastViewed },
-	{ txt_help_global_lookup_art, iKeyLookupMessage },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_search_subj_forwards, iKeySearchSubjF },
-	{ txt_help_global_search_subj_backwards, iKeySearchSubjB },
-	{ txt_help_global_search_auth_forwards, iKeySearchAuthF },
-	{ txt_help_global_search_auth_backwards, iKeySearchAuthB },
-	{ txt_help_global_search_body, iKeySearchBody },
-	{ txt_help_global_search_body_comment, 0 },
-	{ txt_help_global_search_repeat, iKeySearchRepeat },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_disp, 0 },
-	{ txt_help_global_toggle_info_line, iKeyToggleInfoLastLine },
-	{ txt_help_global_toggle_subj_display, iKeyThreadToggleSubjDisplay },
-	{ txt_help_global_toggle_inverse_video, iKeyToggleInverseVideo },
+	{ txt_help_title_navi, NOT_ASSIGNED },
+	{ txt_help_global_page_down, GLOBAL_PAGE_DOWN },
+	{ txt_help_global_page_up, GLOBAL_PAGE_UP },
+	{ txt_help_global_line_down, GLOBAL_LINE_DOWN },
+	{ txt_help_global_line_up, GLOBAL_LINE_UP },
+	{ txt_help_global_scroll_down, GLOBAL_SCROLL_DOWN },
+	{ txt_help_global_scroll_up, GLOBAL_SCROLL_UP },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_thread_first_article, GLOBAL_FIRST_PAGE },
+	{ txt_help_thread_last_article, GLOBAL_LAST_PAGE },
+	{ txt_help_thread_article_by_num, NOT_ASSIGNED },
+	{ txt_help_global_last_art, GLOBAL_LAST_VIEWED },
+	{ txt_help_global_lookup_art, GLOBAL_LOOKUP_MESSAGEID },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_search_subj_forwards, GLOBAL_SEARCH_SUBJECT_FORWARD },
+	{ txt_help_global_search_subj_backwards, GLOBAL_SEARCH_SUBJECT_BACKWARD },
+	{ txt_help_global_search_auth_forwards, GLOBAL_SEARCH_AUTHOR_FORWARD },
+	{ txt_help_global_search_auth_backwards, GLOBAL_SEARCH_AUTHOR_BACKWARD },
+	{ txt_help_global_search_body, GLOBAL_SEARCH_BODY },
+	{ txt_help_global_search_body_comment, NOT_ASSIGNED },
+	{ txt_help_global_search_repeat, GLOBAL_SEARCH_REPEAT },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_disp, NOT_ASSIGNED },
+	{ txt_help_global_toggle_info_line, GLOBAL_TOGGLE_INFO_LAST_LINE },
+	{ txt_help_global_toggle_subj_display, THREAD_TOGGLE_SUBJECT_DISPLAY},
+	{ txt_help_global_toggle_inverse_video, GLOBAL_TOGGLE_INVERSE_VIDEO },
 #ifdef HAVE_COLOR
-	{ txt_help_global_toggle_color, iKeyToggleColor },
+	{ txt_help_global_toggle_color, GLOBAL_TOGGLE_COLOR },
 #endif /* HAVE_COLOR */
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_ops, 0 },
-	{ txt_help_thread_read_article, iKeyThreadReadArt },
-	{ txt_help_article_next_unread, iKeyThreadReadNextArtOrThread },
-	{ txt_help_global_post, iKeyPost },
-	{ txt_help_global_post_postponed, iKeyPostponed2 },
-	{ txt_help_global_post_postponed, iKeyPostponed },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_article_range, iKeySetRange },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_mail, iKeyThreadMail },
-	{ txt_help_global_save, iKeyThreadSave },
-	{ txt_help_global_auto_save, iKeyThreadAutoSave },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_tag, iKeyThreadTag },
-	{ txt_help_group_untag_thread, iKeyThreadUntag },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_thread_mark_article_read, iKeyThreadMarkArtRead },
-	{ txt_help_thread_catchup, iKeyThreadCatchup },
-	{ txt_help_thread_catchup_next_unread, iKeyThreadCatchupNextUnread },
-	{ txt_help_group_mark_article_unread, iKeyGroupMarkArtUnread },
-	{ txt_help_group_mark_thread_unread, iKeyGroupMarkThdUnread },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_group_select_thread, iKeyThreadSelArt },
-	{ txt_help_group_toggle_thread_selection, iKeyThreadToggleArtSel },
-	{ txt_help_group_reverse_thread_selection, iKeyThreadReverseSel },
-	{ txt_help_group_undo_thread_selection, iKeyThreadUndoSel },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_misc, 0 },
-	{ txt_help_global_previous_menu, iKeyQuit },
-	{ txt_help_global_quit_tin, iKeyQuitTin },
-	{ txt_help_global_help, iKeyHelp },
-	{ txt_help_global_toggle_mini_help, iKeyToggleHelpDisplay },
-	{ txt_help_global_option_menu, iKeyOptionMenu },
-	{ txt_help_global_esc, iKeyAbort },
-	{ txt_help_global_redraw_screen, iKeyRedrawScr },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_ops, NOT_ASSIGNED },
+	{ txt_help_thread_read_article, THREAD_READ_ARTICLE },
+	{ txt_help_article_next_unread, THREAD_READ_NEXT_ARTICLE_OR_THREAD },
+#ifndef NO_POSTING
+	{ txt_help_global_post, GLOBAL_POST },
+	{ txt_help_global_post_postponed, GLOBAL_POSTPONED },
+#endif /* NO_POSTING */
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_article_range, GLOBAL_SET_RANGE },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_mail, THREAD_MAIL },
+	{ txt_help_global_save, THREAD_SAVE },
+	{ txt_help_global_auto_save, THREAD_AUTOSAVE },
+#ifndef DONT_HAVE_PIPING
+	{ txt_help_global_pipe, GLOBAL_PIPE },
+#endif /* !DONT_HAVE_PIPING */
+#ifndef DISABLE_PRINTING
+	{ txt_help_global_print, GLOBAL_PRINT },
+#endif /* !DISABLE_PRINTING */
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_tag, THREAD_TAG },
+	{ txt_help_group_untag_thread, THREAD_UNTAG },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_thread_mark_article_read, THREAD_MARK_ARTICLE_READ },
+	{ txt_help_thread_catchup, THREAD_CATCHUP },
+	{ txt_help_thread_catchup_next_unread, THREAD_CATCHUP_NEXT_UNREAD },
+	{ txt_help_group_mark_article_unread, GROUP_MARK_ARTICLE_UNREAD },
+	{ txt_help_group_mark_thread_unread, GROUP_MARK_THREAD_UNREAD },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_group_select_thread, THREAD_SELECT_ARTICLE },
+	{ txt_help_group_toggle_thread_selection, THREAD_TOGGLE_ARTICLE_SELECTION },
+	{ txt_help_group_reverse_thread_selection, THREAD_REVERSE_SELECTIONS },
+	{ txt_help_group_undo_thread_selection, THREAD_UNDO_SELECTIONS },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_article_autoselect, GLOBAL_MENU_FILTER_SELECT },
+	{ txt_help_article_autokill, GLOBAL_MENU_FILTER_KILL },
+	{ txt_help_global_edit_filter, GLOBAL_EDIT_FILTER },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_misc, NOT_ASSIGNED },
+	{ txt_help_global_previous_menu, GLOBAL_QUIT },
+	{ txt_help_global_quit_tin, GLOBAL_QUIT_TIN },
+	{ txt_help_global_help, GLOBAL_HELP },
+	{ txt_help_global_toggle_mini_help, GLOBAL_TOGGLE_HELP_DISPLAY },
+	{ txt_help_global_option_menu, GLOBAL_OPTION_MENU },
+	{ txt_help_global_esc, GLOBAL_ABORT },
+	{ txt_help_global_redraw_screen, GLOBAL_REDRAW_SCREEN },
 #ifndef NO_SHELL_ESCAPE
-	{ txt_help_global_shell_escape, iKeyShellEscape },
+	{ txt_help_global_shell_escape, GLOBAL_SHELL_ESCAPE },
 #endif /* !NO_SHELL_ESCAPE */
-	{ txt_help_global_posting_history, iKeyDisplayPostHist },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_version, iKeyVersion },
-	{ txt_help_bug_report, iKeyThreadBugReport },
-	{ NULL, 0 }
+	{ txt_help_global_posting_history, GLOBAL_DISPLAY_POST_HISTORY },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_version, GLOBAL_VERSION },
+	{ txt_help_bug_report, GLOBAL_BUGREPORT },
+	{ NULL, NOT_ASSIGNED }
 };
 
 static t_help_page page_help_page[] = {
-	{ txt_help_title_navi, 0 },
-	{ txt_help_global_page_down, iKeyPageDown },
-	{ txt_help_global_page_down, iKeyPageDown2 },
-	{ txt_help_global_page_down, iKeyPageDown3 },
-	{ txt_help_global_page_up, iKeyPageUp2 },
-	{ txt_help_global_page_up, iKeyPageUp },
-	{ txt_help_global_page_up, iKeyPageUp3 },
-	{ txt_help_global_line_down, iKeyDown2 },
-	{ txt_help_global_line_down, iKeyDown },
-	{ txt_help_global_line_up, iKeyUp2 },
-	{ txt_help_global_line_up, iKeyUp },
-	{ txt_help_article_first_page, iKeyFirstPage },
-	{ txt_help_article_last_page, iKeyLastPage },
-	{ txt_help_article_first_page, iKeyPageFirstPage },
-	{ txt_help_article_last_page, iKeyPageLastPage },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_article_by_num, 0 },
-	{ txt_help_article_next_thread, iKeyPageNextThd },
-	{ txt_help_article_next_unread, iKeyPageNextUnread },
-	{ txt_help_article_next, iKeyPageNextArt },
-	{ txt_help_article_next_unread, iKeyPageNextUnreadArt },
-	{ txt_help_article_prev, iKeyPagePrevArt },
-	{ txt_help_article_prev_unread, iKeyPagePrevUnreadArt },
-	{ txt_help_article_first_in_thread, iKeyPageTopThd },
-	{ txt_help_article_last_in_thread, iKeyPageBotThd },
-	{ txt_help_global_last_art, iKeyLastViewed },
-	{ txt_help_group_list_thread, iKeyPageListThd },
-	{ txt_help_article_parent, iKeyPageGotoParent },
-	{ txt_help_global_lookup_art, iKeyLookupMessage },
-	{ txt_help_article_quit_to_select_level, iKeyPageGroupSel },
-	{ txt_help_article_skip_quote, iKeyPageSkipIncludedText },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_article_search_forwards, iKeySearchSubjF },
-	{ txt_help_article_search_backwards, iKeySearchSubjB },
-	{ txt_help_global_search_auth_forwards, iKeySearchAuthF },
-	{ txt_help_global_search_auth_backwards, iKeySearchAuthB },
-	{ txt_help_global_search_body, iKeySearchBody },
-	{ txt_help_global_search_body_comment, 0 },
-	{ txt_help_global_search_repeat, iKeySearchRepeat },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_disp, 0 },
-	{ txt_help_global_toggle_info_line, iKeyToggleInfoLastLine },
-	{ txt_help_article_toggle_rot13, iKeyPageToggleRot },
-	{ txt_help_global_toggle_inverse_video, iKeyToggleInverseVideo },
-	{ txt_help_article_show_raw, iKeyPageToggleHeaders },
+	{ txt_help_title_navi, NOT_ASSIGNED },
+	{ txt_help_global_page_down, GLOBAL_PAGE_DOWN },
+	{ txt_help_global_page_down, PAGE_PAGE_DOWN3 },
+	{ txt_help_global_page_up, GLOBAL_PAGE_UP },
+	{ txt_help_global_line_down, GLOBAL_LINE_DOWN },
+	{ txt_help_global_line_up, GLOBAL_LINE_UP },
+	{ txt_help_article_first_page, GLOBAL_FIRST_PAGE },
+	{ txt_help_article_last_page, GLOBAL_LAST_PAGE },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_article_by_num, NOT_ASSIGNED },
+	{ txt_help_article_next_thread, PAGE_NEXT_THREAD },
+	{ txt_help_article_next_unread, PAGE_NEXT_UNREAD },
+	{ txt_help_article_next, PAGE_NEXT_ARTICLE },
+	{ txt_help_article_next_unread, PAGE_NEXT_UNREAD_ARTICLE },
+	{ txt_help_article_prev, PAGE_PREVIOUS_ARTICLE },
+	{ txt_help_article_prev_unread, PAGE_PREVIOUS_UNREAD_ARTICLE },
+	{ txt_help_article_first_in_thread, PAGE_TOP_THREAD },
+	{ txt_help_article_last_in_thread, PAGE_BOTTOM_THREAD },
+	{ txt_help_global_last_art, GLOBAL_LAST_VIEWED },
+	{ txt_help_group_list_thread, PAGE_LIST_THREAD },
+	{ txt_help_article_parent, PAGE_GOTO_PARENT },
+	{ txt_help_global_lookup_art, GLOBAL_LOOKUP_MESSAGEID },
+	{ txt_help_article_quit_to_select_level, PAGE_GROUP_SELECT },
+	{ txt_help_article_skip_quote, PAGE_SKIP_INCLUDED_TEXT },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_article_search_forwards, GLOBAL_SEARCH_SUBJECT_FORWARD },
+	{ txt_help_article_search_backwards, GLOBAL_SEARCH_SUBJECT_BACKWARD },
+	{ txt_help_global_search_auth_forwards, GLOBAL_SEARCH_AUTHOR_FORWARD },
+	{ txt_help_global_search_auth_backwards, GLOBAL_SEARCH_AUTHOR_BACKWARD },
+	{ txt_help_global_search_body, GLOBAL_SEARCH_BODY },
+	{ txt_help_global_search_body_comment, NOT_ASSIGNED },
+	{ txt_help_global_search_repeat, GLOBAL_SEARCH_REPEAT },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_disp, NOT_ASSIGNED },
+	{ txt_help_global_toggle_info_line, GLOBAL_TOGGLE_INFO_LAST_LINE },
+	{ txt_help_article_toggle_rot13, PAGE_TOGGLE_ROT13 },
+	{ txt_help_global_toggle_inverse_video, GLOBAL_TOGGLE_INVERSE_VIDEO },
+	{ txt_help_article_show_raw, PAGE_TOGGLE_HEADERS },
 #ifdef HAVE_COLOR
-	{ txt_help_global_toggle_color, iKeyToggleColor },
+	{ txt_help_global_toggle_color, GLOBAL_TOGGLE_COLOR },
 #endif /* HAVE_COLOR */
-	{ txt_help_article_toggle_highlight, iKeyPageToggleHighlight },
-	{ txt_help_article_toggle_tex2iso, iKeyPageToggleTex2iso },
-	{ txt_help_article_toggle_tabwidth, iKeyPageToggleTabs },
-	{ txt_help_article_toggle_uue, iKeyPageToggleUue },
-	{ txt_help_article_toggle_formfeed, iKeyPageReveal },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_ops, 0 },
-	{ txt_help_global_post, iKeyPost },
-	{ txt_help_global_post_postponed, iKeyPostponed2 },
-	{ txt_help_global_post_postponed, iKeyPostponed },
-	{ txt_help_article_followup, iKeyPageFollowupQuote },
-	{ txt_help_article_followup_no_quote, iKeyPageFollowup },
-	{ txt_help_article_followup_with_header, iKeyPageFollowupQuoteHeaders },
-	{ txt_help_article_repost, iKeyPageRepost },
-	{ txt_help_article_reply, iKeyPageReplyQuote },
-	{ txt_help_article_reply_no_quote, iKeyPageReply },
-	{ txt_help_article_reply_with_header, iKeyPageReplyQuoteHeaders },
-	{ txt_help_article_edit, iKeyPageEditArticle },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_mail, iKeyPageMail },
-	{ txt_help_global_save, iKeyPageSave },
-	{ txt_help_global_auto_save, iKeyPageAutoSave },
+	{ txt_help_article_toggle_highlight, PAGE_TOGGLE_HIGHLIGHTING },
+	{ txt_help_article_toggle_tex2iso, PAGE_TOGGLE_TEX2ISO },
+	{ txt_help_article_toggle_tabwidth, PAGE_TOGGLE_TABS },
+	{ txt_help_article_toggle_uue, PAGE_TOGGLE_UUE },
+	{ txt_help_article_toggle_formfeed, PAGE_REVEAL },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_ops, NOT_ASSIGNED },
+#ifndef NO_POSTING
+	{ txt_help_global_post, GLOBAL_POST },
+	{ txt_help_global_post_postponed, GLOBAL_POSTPONED },
+	{ txt_help_article_followup, PAGE_FOLLOWUP_QUOTE },
+	{ txt_help_article_followup_no_quote, PAGE_FOLLOWUP },
+	{ txt_help_article_followup_with_header, PAGE_FOLLOWUP_QUOTE_HEADERS },
+	{ txt_help_article_repost, PAGE_REPOST },
+	{ txt_help_article_cancel, PAGE_CANCEL },
+#endif /* NO_POSTING */
+	{ txt_help_article_reply, PAGE_REPLY_QUOTE },
+	{ txt_help_article_reply_no_quote, PAGE_REPLY },
+	{ txt_help_article_reply_with_header, PAGE_REPLY_QUOTE_HEADERS },
+	{ txt_help_article_edit, PAGE_EDIT_ARTICLE },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_mail, PAGE_MAIL },
+	{ txt_help_global_save, PAGE_SAVE },
+	{ txt_help_global_auto_save, PAGE_AUTOSAVE },
 #ifndef DONT_HAVE_PIPING
-	{ txt_help_global_pipe, iKeyPipe },
+	{ txt_help_global_pipe, GLOBAL_PIPE },
 #endif /* !DONT_HAVE_PIPING */
 #ifndef DISABLE_PRINTING
-	{ txt_help_global_print, iKeyPrint },
+	{ txt_help_global_print, GLOBAL_PRINT },
 #endif /* !DISABLE_PRINTING */
-	{ txt_help_article_view_attachments, iKeyPageViewAttach },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_tag, iKeyPageTag },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_article_mark_thread_read, iKeyPageKillThd },
-	{ txt_help_thread_catchup, iKeyPageCatchup },
-	{ txt_help_thread_catchup_next_unread, iKeyPageCatchupNextUnread },
-	{ txt_help_group_mark_article_unread, iKeyGroupMarkArtUnread },
-	{ txt_help_group_mark_thread_unread, iKeyGroupMarkThdUnread },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_article_autoselect, iKeyPageAutoSel },
-	{ txt_help_article_autokill, iKeyPageAutoKill },
-	{ txt_help_article_quick_select, iKeyPageQuickAutoSel },
-	{ txt_help_article_quick_kill, iKeyPageQuickKill },
-	{ txt_help_article_cancel, iKeyPageCancel },
-	{ txt_help_empty_line, 0 },
-	{ txt_help_title_misc, 0 },
-	{ txt_help_article_browse_urls, iKeyPageViewUrl },
-	{ txt_help_global_previous_menu, iKeyQuit },
-	{ txt_help_global_quit_tin, iKeyQuitTin },
-	{ txt_help_global_help, iKeyHelp },
-	{ txt_help_global_toggle_mini_help, iKeyToggleHelpDisplay },
-	{ txt_help_global_option_menu, iKeyOptionMenu },
-	{ txt_help_global_esc, iKeyAbort },
-	{ txt_help_global_redraw_screen, iKeyRedrawScr },
+	{ txt_help_article_view_attachments, PAGE_VIEW_ATTACHMENTS },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_tag, PAGE_TAG },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_article_mark_thread_read, PAGE_MARK_THREAD_READ },
+	{ txt_help_thread_catchup, PAGE_CATCHUP },
+	{ txt_help_thread_catchup_next_unread, PAGE_CATCHUP_NEXT_UNREAD },
+	{ txt_help_group_mark_article_unread, GROUP_MARK_ARTICLE_UNREAD },
+	{ txt_help_group_mark_thread_unread, GROUP_MARK_THREAD_UNREAD },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_article_autoselect, GLOBAL_MENU_FILTER_SELECT },
+	{ txt_help_article_autokill, GLOBAL_MENU_FILTER_KILL },
+	{ txt_help_article_quick_select, GLOBAL_QUICK_FILTER_SELECT },
+	{ txt_help_article_quick_kill, GLOBAL_QUICK_FILTER_KILL },
+	{ txt_help_global_edit_filter, GLOBAL_EDIT_FILTER },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_title_misc, NOT_ASSIGNED },
+	{ txt_help_article_browse_urls, PAGE_VIEW_URL },
+	{ txt_help_global_previous_menu, GLOBAL_QUIT },
+	{ txt_help_global_quit_tin, GLOBAL_QUIT_TIN },
+	{ txt_help_global_help, GLOBAL_HELP },
+	{ txt_help_global_toggle_mini_help, GLOBAL_TOGGLE_HELP_DISPLAY },
+	{ txt_help_global_option_menu, GLOBAL_OPTION_MENU },
+	{ txt_help_global_esc, GLOBAL_ABORT },
+	{ txt_help_global_redraw_screen, GLOBAL_REDRAW_SCREEN },
 #ifndef NO_SHELL_ESCAPE
-	{ txt_help_global_shell_escape, iKeyShellEscape },
+	{ txt_help_global_shell_escape, GLOBAL_SHELL_ESCAPE },
 #endif /* !NO_SHELL_ESCAPE */
-	{ txt_help_global_posting_history, iKeyDisplayPostHist },
+	{ txt_help_global_posting_history, GLOBAL_DISPLAY_POST_HISTORY },
 #ifdef HAVE_PGP_GPG
-	{ txt_help_empty_line, 0 },
-	{ txt_help_article_pgp, iKeyPagePGPCheckArticle },
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_article_pgp, PAGE_PGP_CHECK_ARTICLE },
 #endif /* HAVE_PGP_GPG */
-	{ txt_help_empty_line, 0 },
-	{ txt_help_global_version, iKeyVersion },
-	{ NULL, 0 }
+	{ txt_help_empty_line, NOT_ASSIGNED },
+	{ txt_help_global_version, GLOBAL_VERSION },
+	{ NULL, NOT_ASSIGNED }
 };
 
 
@@ -449,7 +441,7 @@ static void
 make_help_page(
 	FILE *fp,
 	const t_help_page *helppage,
-	const t_menukeys *menukeys)
+	const struct keylist keys)
 {
 	char *buf;
 	char key[MAXKEYLEN];
@@ -465,22 +457,33 @@ make_help_page(
 		return;
 
 	while (helppage->helptext) {
-		/*
-		 * as expand_ctrl_chars() may has shrinked buf
-		 * make sure buf is large enough to contain the helpline
-		 */
-		buf = my_realloc(buf, LEN);
+		if (helppage->func == NOT_ASSIGNED) {
+			/*
+			 * as expand_ctrl_chars() may has shrinked buf
+			 * make sure buf is large enough to contain the helpline
+			 */
+			buf = my_realloc(buf, LEN);
 
-		if (helppage->key == 0) {
 			if (!strlen(helppage->helptext))	/* avoid empty string translations */
 				snprintf(buf, LEN, "%s", helppage->helptext);
 			else
 				snprintf(buf, LEN, "%s", _(helppage->helptext));
-		} else
-			snprintf(buf, LEN, "%s\t  %s", printascii(key, map_to_local(helppage->key, menukeys)), _(helppage->helptext));
-		buf[LEN - 1] = '\0';
-		expand_ctrl_chars(&buf, &length, 8);
-		fprintf(fp, "%s", buf);
+			buf[LEN - 1] = '\0';
+			expand_ctrl_chars(&buf, &length, 8);
+			fprintf(fp, "%s", buf);
+		} else {
+			size_t i;
+
+			for (i = 0; i < keys.used; i++) {
+				if (keys.list[i].function == helppage->func) {
+					buf = my_realloc(buf, LEN);
+					snprintf(buf, LEN, "%s\t  %s", printascii(key, keys.list[i].key), _(helppage->helptext));
+					buf[LEN - 1] = '\0';
+					expand_ctrl_chars(&buf, &length, 8);
+					fprintf(fp, "%s", buf);
+				}
+			}
+		}
 		helppage++;
 	}
 
@@ -500,19 +503,19 @@ show_help_page(
 
 	switch (level) {
 		case SELECT_LEVEL:
-			make_help_page(fp, select_help_page, &menukeymap.select_nav);
+			make_help_page(fp, select_help_page, select_keys);
 			break;
 
 		case GROUP_LEVEL:
-			make_help_page(fp, group_help_page, &menukeymap.group_nav);
+			make_help_page(fp, group_help_page, group_keys);
 			break;
 
 		case THREAD_LEVEL:
-			make_help_page(fp, thread_help_page, &menukeymap.thread_nav);
+			make_help_page(fp, thread_help_page, thread_keys);
 			break;
 
 		case PAGE_LEVEL:
-			make_help_page(fp, page_help_page, &menukeymap.page_nav);
+			make_help_page(fp, page_help_page, page_keys);
 			break;
 
 		case INFO_PAGER:
@@ -550,116 +553,116 @@ show_mini_help(
 	switch (level) {
 		case SELECT_LEVEL:
 			snprintf(buf, bufs, _(txt_mini_select_1),
-				printascii(key[0], map_to_local(iKeySelectEnterNextUnreadGrp, &menukeymap.select_nav)),
-				printascii(key[1], map_to_local(iKeySelectGoto, &menukeymap.select_nav)),
-				printascii(key[2], map_to_local(iKeySearchSubjF, &menukeymap.select_nav)),
-				printascii(key[3], map_to_local(iKeySelectCatchup, &menukeymap.select_nav)));
+				printascii(key[0], func_to_key(SELECT_ENTER_NEXT_UNREAD_GROUP, select_keys)),
+				printascii(key[1], func_to_key(SELECT_GOTO, select_keys)),
+				printascii(key[2], func_to_key(GLOBAL_SEARCH_SUBJECT_FORWARD, select_keys)),
+				printascii(key[3], func_to_key(SELECT_CATCHUP, select_keys)));
 			center_line(line, FALSE, buf);
 			snprintf(buf, bufs, _(txt_mini_select_2),
-				printascii(key[0], map_to_local(iKeyDown2, &menukeymap.select_nav)),
-				printascii(key[1], map_to_local(iKeyUp2, &menukeymap.select_nav)),
-				printascii(key[2], map_to_local(iKeyHelp, &menukeymap.select_nav)),
-				printascii(key[3], map_to_local(iKeySelectMoveGrp, &menukeymap.select_nav)),
-				printascii(key[4], map_to_local(iKeyQuit, &menukeymap.select_nav)),
-				printascii(key[5], map_to_local(iKeySelectToggleReadDisplay, &menukeymap.select_nav)));
+				printascii(key[0], func_to_key(GLOBAL_LINE_DOWN, select_keys)),
+				printascii(key[1], func_to_key(GLOBAL_LINE_UP, select_keys)),
+				printascii(key[2], func_to_key(GLOBAL_HELP, select_keys)),
+				printascii(key[3], func_to_key(SELECT_MOVE_GROUP, select_keys)),
+				printascii(key[4], func_to_key(GLOBAL_QUIT, select_keys)),
+				printascii(key[5], func_to_key(SELECT_TOGGLE_READ_DISPLAY, select_keys)));
 			center_line(line + 1, FALSE, buf);
 			snprintf(buf, bufs, _(txt_mini_select_3),
-				printascii(key[0], map_to_local(iKeySelectSubscribe, &menukeymap.select_nav)),
-				printascii(key[1], map_to_local(iKeySelectSubscribePat, &menukeymap.select_nav)),
-				printascii(key[2], map_to_local(iKeySelectUnsubscribe, &menukeymap.select_nav)),
-				printascii(key[3], map_to_local(iKeySelectUnsubscribePat, &menukeymap.select_nav)),
-				printascii(key[4], map_to_local(iKeySelectYankActive, &menukeymap.select_nav)));
+				printascii(key[0], func_to_key(SELECT_SUBSCRIBE, select_keys)),
+				printascii(key[1], func_to_key(SELECT_SUBSCRIBE_PATTERN, select_keys)),
+				printascii(key[2], func_to_key(SELECT_UNSUBSCRIBE, select_keys)),
+				printascii(key[3], func_to_key(SELECT_UNSUBSCRIBE_PATTERN, select_keys)),
+				printascii(key[4], func_to_key(SELECT_YANK_ACTIVE, select_keys)));
 			center_line(line + 2, FALSE, buf);
 			break;
 
 		case GROUP_LEVEL:
 			snprintf(buf, bufs, _(txt_mini_group_1),
-				printascii(key[0], map_to_local(iKeyGroupNextUnreadArtOrGrp, &menukeymap.group_nav)),
-				printascii(key[1], map_to_local(iKeySearchSubjF, &menukeymap.group_nav)),
-				printascii(key[2], map_to_local(iKeyGroupKill, &menukeymap.group_nav)));
+				printascii(key[0], func_to_key(GROUP_NEXT_UNREAD_ARTICLE_OR_GROUP, group_keys)),
+				printascii(key[1], func_to_key(GLOBAL_SEARCH_SUBJECT_FORWARD, group_keys)),
+				printascii(key[2], func_to_key(GLOBAL_MENU_FILTER_KILL, group_keys)));
 			center_line(line, FALSE, buf);
 			snprintf(buf, bufs, _(txt_mini_group_2),
-				printascii(key[0], map_to_local(iKeySearchAuthF, &menukeymap.group_nav)),
-				printascii(key[1], map_to_local(iKeyGroupCatchup, &menukeymap.group_nav)),
-				printascii(key[2], map_to_local(iKeyDown2, &menukeymap.group_nav)),
-				printascii(key[3], map_to_local(iKeyUp2, &menukeymap.group_nav)),
-				printascii(key[4], map_to_local(iKeyGroupMarkThdRead, &menukeymap.group_nav)),
-				printascii(key[5], map_to_local(iKeyGroupListThd, &menukeymap.group_nav)));
+				printascii(key[0], func_to_key(GLOBAL_SEARCH_AUTHOR_FORWARD, group_keys)),
+				printascii(key[1], func_to_key(GROUP_CATCHUP, group_keys)),
+				printascii(key[2], func_to_key(GLOBAL_LINE_DOWN, group_keys)),
+				printascii(key[3], func_to_key(GLOBAL_LINE_UP, group_keys)),
+				printascii(key[4], func_to_key(GROUP_MARK_THREAD_READ, group_keys)),
+				printascii(key[5], func_to_key(GROUP_LIST_THREAD, group_keys)));
 			center_line(line + 1, FALSE, buf);
 			snprintf(buf, bufs, _(txt_mini_group_3),
 #ifndef DONT_HAVE_PIPING
-				printascii(key[0], map_to_local(iKeyPipe, &menukeymap.group_nav)),
+				printascii(key[0], func_to_key(GLOBAL_PIPE, group_keys)),
 #endif /* !DONT_HAVE_PIPING */
-				printascii(key[1], map_to_local(iKeyGroupMail, &menukeymap.group_nav)),
+				printascii(key[1], func_to_key(GROUP_MAIL, group_keys)),
 #ifndef DISABLE_PRINTING
-				printascii(key[2], map_to_local(iKeyPrint, &menukeymap.group_nav)),
+				printascii(key[2], func_to_key(GLOBAL_PRINT, group_keys)),
 #endif /* !DISABLE_PRINTING */
-				printascii(key[3], map_to_local(iKeyQuit, &menukeymap.group_nav)),
-				printascii(key[4], map_to_local(iKeyGroupToggleReadUnread, &menukeymap.group_nav)),
-				printascii(key[5], map_to_local(iKeyGroupSave, &menukeymap.group_nav)),
-				printascii(key[6], map_to_local(iKeyGroupTag, &menukeymap.group_nav)),
-				printascii(key[7], map_to_local(iKeyPost, &menukeymap.group_nav)));
+				printascii(key[3], func_to_key(GLOBAL_QUIT, group_keys)),
+				printascii(key[4], func_to_key(GROUP_TOGGLE_READ_UNREAD, group_keys)),
+				printascii(key[5], func_to_key(GROUP_SAVE, group_keys)),
+				printascii(key[6], func_to_key(GROUP_TAG, group_keys)),
+				printascii(key[7], func_to_key(GLOBAL_POST, group_keys)));
 			center_line(line + 2, FALSE, buf);
 			break;
 
 		case THREAD_LEVEL:
 			snprintf(buf, bufs, _(txt_mini_thread_1),
-				printascii(key[0], map_to_local(iKeyThreadReadNextArtOrThread, &menukeymap.thread_nav)),
-				printascii(key[1], map_to_local(iKeyThreadCatchup, &menukeymap.thread_nav)),
-				printascii(key[2], map_to_local(iKeyThreadToggleSubjDisplay, &menukeymap.thread_nav)));
+				printascii(key[0], func_to_key(THREAD_READ_NEXT_ARTICLE_OR_THREAD, thread_keys)),
+				printascii(key[1], func_to_key(THREAD_CATCHUP, thread_keys)),
+				printascii(key[2], func_to_key(THREAD_TOGGLE_SUBJECT_DISPLAY, thread_keys)));
 			center_line(line, FALSE, buf);
 			snprintf(buf, bufs, _(txt_mini_thread_2),
-				printascii(key[0], map_to_local(iKeyHelp, &menukeymap.thread_nav)),
-				printascii(key[1], map_to_local(iKeyDown2, &menukeymap.thread_nav)),
-				printascii(key[2], map_to_local(iKeyUp2, &menukeymap.thread_nav)),
-				printascii(key[3], map_to_local(iKeyQuit, &menukeymap.thread_nav)),
-				printascii(key[4], map_to_local(iKeyThreadTag, &menukeymap.thread_nav)),
-				printascii(key[5], map_to_local(iKeyThreadMarkArtUnread, &menukeymap.thread_nav)));
+				printascii(key[0], func_to_key(GLOBAL_HELP, thread_keys)),
+				printascii(key[1], func_to_key(GLOBAL_LINE_DOWN, thread_keys)),
+				printascii(key[2], func_to_key(GLOBAL_LINE_UP, thread_keys)),
+				printascii(key[3], func_to_key(GLOBAL_QUIT, thread_keys)),
+				printascii(key[4], func_to_key(THREAD_TAG, thread_keys)),
+				printascii(key[5], func_to_key(THREAD_MARK_ARTICLE_UNREAD, thread_keys)));
 			center_line(line + 1, FALSE, buf);
 			break;
 
 		case PAGE_LEVEL:
 			snprintf(buf, bufs, _(txt_mini_page_1),
-				printascii(key[0], map_to_local(iKeyPageNextUnread, &menukeymap.page_nav)),
-				printascii(key[1], map_to_local(iKeySearchSubjF, &menukeymap.page_nav)),
-				printascii(key[2], map_to_local(iKeyPageAutoKill, &menukeymap.page_nav)));
+				printascii(key[0], func_to_key(PAGE_NEXT_UNREAD, page_keys)),
+				printascii(key[1], func_to_key(GLOBAL_SEARCH_SUBJECT_FORWARD, page_keys)),
+				printascii(key[2], func_to_key(GLOBAL_MENU_FILTER_KILL, page_keys)));
 			center_line(line, FALSE, buf);
 			snprintf(buf, bufs, _(txt_mini_page_2),
-				printascii(key[0], map_to_local(iKeySearchAuthF, &menukeymap.page_nav)),
-				printascii(key[1], map_to_local(iKeySearchBody, &menukeymap.page_nav)),
-				printascii(key[2], map_to_local(iKeyPageCatchup, &menukeymap.page_nav)),
-				printascii(key[3], map_to_local(iKeyPageFollowupQuote, &menukeymap.page_nav)),
-				printascii(key[4], map_to_local(iKeyPageKillThd, &menukeymap.page_nav)));
+				printascii(key[0], func_to_key(GLOBAL_SEARCH_AUTHOR_FORWARD, page_keys)),
+				printascii(key[1], func_to_key(GLOBAL_SEARCH_BODY, page_keys)),
+				printascii(key[2], func_to_key(PAGE_CATCHUP, page_keys)),
+				printascii(key[3], func_to_key(PAGE_FOLLOWUP_QUOTE, page_keys)),
+				printascii(key[4], func_to_key(PAGE_MARK_THREAD_READ, page_keys)));
 			center_line(line + 1, FALSE, buf);
 			snprintf(buf, bufs, _(txt_mini_page_3),
 #ifndef DONT_HAVE_PIPING
-				printascii(key[0], map_to_local(iKeyPipe, &menukeymap.page_nav)),
+				printascii(key[0], func_to_key(GLOBAL_PIPE, page_keys)),
 #endif /* !DONT_HAVE_PIPING */
-				printascii(key[1], map_to_local(iKeyPageMail, &menukeymap.page_nav)),
+				printascii(key[1], func_to_key(PAGE_MAIL, page_keys)),
 #ifndef DISABLE_PRINTING
-				printascii(key[2], map_to_local(iKeyPrint, &menukeymap.page_nav)),
+				printascii(key[2], func_to_key(GLOBAL_PRINT, page_keys)),
 #endif /* !DISABLE_PRINTING */
-				printascii(key[3], map_to_local(iKeyQuit, &menukeymap.page_nav)),
-				printascii(key[4], map_to_local(iKeyPageReplyQuote, &menukeymap.page_nav)),
-				printascii(key[5], map_to_local(iKeyPageSave, &menukeymap.page_nav)),
-				printascii(key[6], map_to_local(iKeyPageTag, &menukeymap.page_nav)),
-				printascii(key[7], map_to_local(iKeyPost, &menukeymap.page_nav)));
+				printascii(key[3], func_to_key(GLOBAL_QUIT, page_keys)),
+				printascii(key[4], func_to_key(PAGE_REPLY_QUOTE, page_keys)),
+				printascii(key[5], func_to_key(PAGE_SAVE, page_keys)),
+				printascii(key[6], func_to_key(PAGE_TAG, page_keys)),
+				printascii(key[7], func_to_key(GLOBAL_POST, page_keys)));
 			center_line(line + 2, FALSE, buf);
 			break;
 
 		case INFO_PAGER:
 			snprintf(buf, bufs, _(txt_mini_info_1),
-				printascii(key[0], map_to_local(iKeyUp, &menukeymap.info_nav)),
-				printascii(key[1], map_to_local(iKeyDown, &menukeymap.info_nav)),
-				printascii(key[2], map_to_local(iKeyPageUp, &menukeymap.info_nav)),
-				printascii(key[3], map_to_local(iKeyPageDown, &menukeymap.info_nav)),
-				printascii(key[4], map_to_local(iKeyFirstPage, &menukeymap.info_nav)),
-				printascii(key[5], map_to_local(iKeyLastPage, &menukeymap.info_nav)));
+				printascii(key[0], func_to_key(GLOBAL_LINE_UP, info_keys)),
+				printascii(key[1], func_to_key(GLOBAL_LINE_DOWN, info_keys)),
+				printascii(key[2], func_to_key(GLOBAL_PAGE_UP, info_keys)),
+				printascii(key[3], func_to_key(GLOBAL_PAGE_DOWN, info_keys)),
+				printascii(key[4], func_to_key(GLOBAL_FIRST_PAGE, info_keys)),
+				printascii(key[5], func_to_key(GLOBAL_LAST_PAGE, info_keys)));
 			center_line(line, FALSE, buf);
 			snprintf(buf, bufs, _(txt_mini_info_2),
-				printascii(key[0], map_to_local(iKeySearchSubjF, &menukeymap.info_nav)),
-				printascii(key[1], map_to_local(iKeySearchSubjB, &menukeymap.info_nav)),
-				printascii(key[2], map_to_local(iKeyQuit, &menukeymap.info_nav)));
+				printascii(key[0], func_to_key(GLOBAL_SEARCH_SUBJECT_FORWARD, info_keys)),
+				printascii(key[1], func_to_key(GLOBAL_SEARCH_SUBJECT_BACKWARD, info_keys)),
+				printascii(key[2], func_to_key(GLOBAL_QUIT, info_keys)));
 			center_line(line + 1, FALSE, buf);
 			break;
 
diff -Nurp tin-1.7.7/src/inews.c tin-1.7.8/src/inews.c
--- tin-1.7.7/src/inews.c	Thu Dec  2 18:16:03 2004
+++ tin-1.7.8/src/inews.c	Wed Feb 16 20:53:39 2005
@@ -3,10 +3,10 @@
  *  Module    : inews.c
  *  Author    : I. Lea
  *  Created   : 1992-03-17
- *  Updated   : 2003-10-12
+ *  Updated   : 2005-02-12
  *  Notes     : NNTP built in version of inews
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -83,6 +83,8 @@
 
 /*
  * Submit an article using the NNTP POST command
+ *
+ * TODO: remove mailheaders (To, Cc, Bcc, ...)?
  */
 #ifdef NNTP_INEWS
 static t_bool
@@ -428,10 +430,10 @@ submit_news_file(
 
 #ifdef NNTP_INEWS
 			if (!ret_code && read_news_via_nntp && !read_saved_news && 0 != strcasecmp(tinrc.inews_prog, INTERNAL_CMD)) {
-				if (prompt_yn(cLINES, _(txt_post_via_builtin_inews), TRUE)) {
+				if (prompt_yn(_(txt_post_via_builtin_inews), TRUE)) {
 					ret_code = submit_inews(name, group, a_message_id);
 					if (ret_code) {
-						if (prompt_yn(cLINES, _(txt_post_via_builtin_inews_only), TRUE) == 1)
+						if (prompt_yn(_(txt_post_via_builtin_inews_only), TRUE) == 1)
 							strcpy(tinrc.inews_prog, INTERNAL_CMD);
 					}
 				}
diff -Nurp tin-1.7.7/src/init.c tin-1.7.8/src/init.c
--- tin-1.7.7/src/init.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/init.c	Tue Mar 15 01:15:21 2005
@@ -3,10 +3,10 @@
  *  Module    : init.c
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2004-09-08
+ *  Updated   : 2005-01-30
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -44,9 +44,9 @@
 #ifndef included_trace_h
 #	include "trace.h"
 #endif /* !included_trace_h */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 #ifndef VERSION_H
 #	include "version.h"
 #endif /* !VERSION_H */
@@ -124,9 +124,9 @@ char userid[PATH_LEN];
 	char rcdir_asfile[PATH_LEN];	/* rcdir expressed as dev:[dir]tin.dir, for stat() */
 #endif /* VMS */
 
+t_function last_search;	/* for repeated search */
 int hist_last[HIST_MAXNUM + 1];
 int hist_pos[HIST_MAXNUM + 1];
-int i_key_search_last;			/* for repeated search */
 int iso2asc_supported;			/* Convert ISO-Latin1 to Ascii */
 int num_headers_to_display;		/* num headers to display -- swp */
 int num_headers_to_not_display;		/* num headers to not display -- swp */
@@ -275,7 +275,7 @@ struct t_config tinrc = {
 	FILTER_SUBJ_CASE_SENSITIVE,		/* default_filter_kill_header */
 	FILTER_SUBJ_CASE_SENSITIVE,		/* default_filter_select_header */
 	0,		/* default_move_group */
-	iKeySaveAppendFile,		/* default_save_mode */
+	'a',		/* default_save_mode */
 	0,		/* getart_limit */
 	2,		/* recent_time */
 	32,		/* groupname_max_length */
@@ -656,11 +656,6 @@ init_selfinfo(
 	subscriptions_file[0] = '\0';
 
 	/*
-	 * Setup default keymaps
-	 */
-	build_keymaps();
-
-	/*
 	 * read the global site config file to override some default
 	 * values given at compile time
 	 */
@@ -996,6 +991,6 @@ utf8_pcre(
 	(void) pcre_config(PCRE_CONFIG_UTF8, &i);
 #	endif /* PCRE_MAJOR && PCRE_MAJOR >= $*/
 
-	return (i ? TRUE: FALSE);
+	return (i ? TRUE : FALSE);
 }
 #endif /* MULTIBYTE_ABLE && !NO_LOCALE */
diff -Nurp tin-1.7.7/src/joinpath.c tin-1.7.8/src/joinpath.c
--- tin-1.7.7/src/joinpath.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/joinpath.c	Thu Dec 30 14:33:10 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-09-19
  *  Notes     :
  *
- * Copyright (c) 1997-2004 Thomas Dickey <dickey@invisible-island.net>
+ * Copyright (c) 1997-2005 Thomas Dickey <dickey@invisible-island.net>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/keymap.c tin-1.7.8/src/keymap.c
--- tin-1.7.7/src/keymap.c	Tue Nov 16 14:27:36 2004
+++ tin-1.7.8/src/keymap.c	Mon Mar 21 01:23:11 2005
@@ -3,10 +3,10 @@
  *  Module    : keymap.c
  *  Author    : D. Nimmich, J. Faultless
  *  Created   : 2000-05-25
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-03-15
  *  Notes     : This file contains key mapping routines and variables.
  *
- * Copyright (c) 2000-2004 Dirk Nimmich <nimmich@muenster.de>
+ * Copyright (c) 2000-2005 Dirk Nimmich <nimmich@muenster.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -40,768 +40,150 @@
 #ifndef KEYMAP_H
 #	include "keymap.h"
 #endif /* !KEYMAP_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
 #ifndef VERSION_H
 #	include "version.h"
 #endif /* !VERSION_H */
 
-static size_t keymapsize(t_keynode *ptr[]);
-static t_bool check_duplicates(t_keynode *keyptr1, t_keynode *keyptr2);
-static t_bool processkey(t_keynode *keyptr, char *kname, char key);
-
-char *ch_post_process;
-
-static struct keymap Key = {
-	{	/* Global keys */
-		{ 0, 0, "" },
-		{ iKeyPageUp, iKeyPageUp, "PageUp" },
-		{ iKeyPageDown, iKeyPageDown, "PageDown" },
-		{ iKeyPageDown2, iKeyPageDown2, "PageDown2" },
-		{ iKeyRedrawScr, iKeyRedrawScr, "RedrawScr" },
-		{ iKeyDown, iKeyDown, "Down" },
-		{ iKeyPostponed, iKeyPostponed, "Postponed" },
-		{ iKeyUp, iKeyUp, "Up" },
-		{ iKeyPageUp2, iKeyPageUp2, "PageUp2" },
-		{ iKeyAbort, iKeyAbort, "" },			/* Was "Abort", but we don't allow rebinding the <ESC> key */
-		{ iKeyPageDown3, iKeyPageDown3, "PageDown3" },
-#ifndef NO_SHELL_ESCAPE
-		{ iKeyShellEscape, iKeyShellEscape, "ShellEscape" },
-#endif /* !NO_SHELL_ESCAPE */
-		{ iKeySetRange, iKeySetRange, "SetRange" },
-		{ iKeyLastPage, iKeyLastPage, "LastPage" },
-#ifdef HAVE_COLOR
-		{ iKeyToggleColor, iKeyToggleColor, "ToggleColor" },
-#endif /* HAVE_COLOR */
-		{ iKeyLastViewed, iKeyLastViewed, "LastViewed" },
-		{ iKeySearchSubjF, iKeySearchSubjF, "SearchSubjF" },
-		{ '0', '0', "" },	/* We don't allow redefinition of digits */
-		{ '1', '1', "" },
-		{ '2', '2', "" },
-		{ '3', '3', "" },
-		{ '4', '4', "" },
-		{ '5', '5', "" },
-		{ '6', '6', "" },
-		{ '7', '7', "" },
-		{ '8', '8', "" },
-		{ '9', '9', "" },
-		{ iKeySearchSubjB, iKeySearchSubjB, "SearchSubjB" },
-		{ iKeySearchRepeat, iKeySearchRepeat, "SearchRepeat" },
-		{ iKeySearchAuthB, iKeySearchAuthB, "SearchAuthB" },
-		{ iKeySearchBody, iKeySearchBody, "SearchBody" },
-		{ iKeyToggleHelpDisplay, iKeyToggleHelpDisplay, "ToggleHelpDisplay" },
-		{ iKeyToggleInverseVideo, iKeyToggleInverseVideo, "ToggleInverseVideo" },
-		{ iKeyLookupMessage, iKeyLookupMessage, "LookupMessage" },
-		{ iKeyOptionMenu, iKeyOptionMenu, "OptionMenu" },
-		{ iKeyPostponed2, iKeyPostponed2, "Postponed2" },
-		{ iKeyQuitTin, iKeyQuitTin, "QuitTin" },
-		{ iKeyDisplayPostHist, iKeyDisplayPostHist, "DisplayPostHist" },
-		{ iKeyFirstPage, iKeyFirstPage, "FirstPage" },
-		{ iKeySearchAuthF, iKeySearchAuthF, "SearchAuthF" },
-		{ iKeyPageUp3, iKeyPageUp3, "PageUp3" },
-		{ iKeyHelp, iKeyHelp, "Help" },
-		{ iKeyToggleInfoLastLine, iKeyToggleInfoLastLine, "ToggleInfoLastLine" },
-		{ iKeyDown2, iKeyDown2, "Down2" },
-		{ iKeyUp2, iKeyUp2, "Up2" },
-#ifndef DISABLE_PRINTING
-		{ iKeyPrint, iKeyPrint, "Print" },
-#endif /* !DISABLE_PRINTING */
-		{ iKeyQuit, iKeyQuit, "Quit" },
-		{ iKeyVersion, iKeyVersion, "Version" },
-		{ iKeyPost, iKeyPost, "Post" },
-		{ iKeyPipe, iKeyPipe, "Pipe" },
-		{ iKeyScrollUp, iKeyScrollUp, "ScrollUp" },
-		{ iKeyScrollDown, iKeyScrollDown, "ScrollDown" },
-		/*
-		 * The following two are "internal" keys that don't have a real
-		 * mapping.
-		 */
-		{ iKeyCatchupLeft, iKeyCatchupLeft, "" },
-		{ iKeyMouseToggle, iKeyMouseToggle, "" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Config" },
-		{ iKeyConfigFirstPage2, iKeyConfigFirstPage2, "FirstPage2" },
-		{ iKeyConfigLastPage2, iKeyConfigLastPage2, "LastPage2" },
-		{ iKeyConfigNoSave, iKeyConfigNoSave, "NoSave" },
-		{ iKeyConfigSelect, iKeyConfigSelect, "Select" },
-		{ iKeyConfigSelect2, iKeyConfigSelect2, "Select2" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Feed" },
-		{ iKeyFeedArt, iKeyFeedArt, "Art" },
-		{ iKeyFeedHot, iKeyFeedHot, "Hot" },
-		{ iKeyFeedPat, iKeyFeedPat, "Pat" },
-		{ iKeyFeedRepost, iKeyFeedRepost, "Repost" },
-		{ iKeyFeedSupersede, iKeyFeedSupersede, "Supersede" },
-		{ iKeyFeedTag, iKeyFeedTag, "Tag" },
-		{ iKeyFeedThd, iKeyFeedThd, "Thd" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Filter" },
-		{ iKeyFilterEdit, iKeyFilterEdit, "Edit" },
-		{ iKeyFilterSave, iKeyFilterSave, "Save" },
-		{ 0, 0, NULL }
-	},
-	{	/* Group keys */
-		{ 0, 0, "Group" },
-		{ iKeyGroupAutoSel, iKeyGroupAutoSel, "AutoSel" },
-		{ iKeyGroupNextUnreadArtOrGrp, iKeyGroupNextUnreadArtOrGrp, "NextUnreadArtOrGrp" },
-		{ iKeyGroupReadBasenote, iKeyGroupReadBasenote, "ReadBasenote" },
-		{ iKeyGroupKill, iKeyGroupKill, "Kill" },
-		{ iKeyGroupReadBasenote2, iKeyGroupReadBasenote2, "ReadBasenote2" },
-		{ iKeyGroupSelThd, iKeyGroupSelThd, "SelThd" },
-		{ iKeyGroupDoAutoSel, iKeyGroupDoAutoSel, "DoAutoSel" },
-		{ iKeyGroupToggleThdSel, iKeyGroupToggleThdSel, "ToggleThdSel" },
-		{ iKeyGroupSelThdIfUnreadSelected, iKeyGroupSelThdIfUnreadSelected, "SelThdIfUnreadSelected" },
-		{ iKeyGroupSelPattern, iKeyGroupSelPattern, "SelPattern" },
-		{ iKeyGroupReverseSel, iKeyGroupReverseSel, "ReverseSel" },
-		{ iKeyGroupCatchupNextUnread, iKeyGroupCatchupNextUnread, "CatchupNextUnread" },
-		{ iKeyGroupEditFilter, iKeyGroupEditFilter, "EditFilter" },
-		{ iKeyGroupToggleGetartLimit, iKeyGroupToggleGetartLimit, "ToggleGetartLimit" },
-		{ iKeyGroupMarkThdRead, iKeyGroupMarkThdRead, "MarkThdRead" },
-		{ iKeyGroupNextUnreadArt, iKeyGroupNextUnreadArt, "NextUnreadArt" },
-		{ iKeyGroupPrevUnreadArt, iKeyGroupPrevUnreadArt, "PrevUnreadArt" },
-		{ iKeyGroupBugReport, iKeyGroupBugReport, "BugReport" },
-		{ iKeyGroupAutoSave, iKeyGroupAutoSave, "AutoSave" },
-		{ iKeyGroupTagParts, iKeyGroupTagParts, "TagParts" },
-		{ iKeyGroupUntag, iKeyGroupUntag, "Untag" },
-		{ iKeyGroupMarkUnselArtRead, iKeyGroupMarkUnselArtRead, "MarkUnselArtRead" },
-		{ iKeyGroupMarkThdUnread, iKeyGroupMarkThdUnread, "MarkThdUnread" },
-		{ iKeyGroupQuickAutoSel, iKeyGroupQuickAutoSel, "QuickAutoSel" },
-		{ iKeyGroupQuickKill, iKeyGroupQuickKill, "QuickKill" },
-		{ iKeyGroupCatchup, iKeyGroupCatchup, "Catchup" },
-		{ iKeyGroupToggleSubjDisplay, iKeyGroupToggleSubjDisplay, "ToggleSubjDisplay" },
-		{ iKeyGroupGoto, iKeyGroupGoto, "Goto" },
-		{ iKeyGroupListThd, iKeyGroupListThd, "ListThd" },
-		{ iKeyGroupMail, iKeyGroupMail, "Mail" },
-		{ iKeyGroupNextGroup, iKeyGroupNextGroup, "NextGroup" },
-		{ iKeyGroupPrevGroup, iKeyGroupPrevGroup, "PrevGroup" },
-		{ iKeyGroupToggleReadUnread, iKeyGroupToggleReadUnread, "ToggleReadUnread" },
-		{ iKeyGroupSave, iKeyGroupSave, "Save" },
-		{ iKeyGroupTag, iKeyGroupTag, "Tag" },
-		{ iKeyGroupToggleThreading, iKeyGroupToggleThreading, "ToggleThreading" },
-		{ iKeyGroupRepost, iKeyGroupRepost, "Repost" },
-		{ iKeyGroupMarkArtUnread, iKeyGroupMarkArtUnread, "MarkArtUnread" },
-		{ iKeyGroupUndoSel, iKeyGroupUndoSel, "UndoSel" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Help" },
-		{ iKeyHelpFirstPage2, iKeyHelpFirstPage2, "FirstPage2" },
-		{ iKeyHelpLastPage2, iKeyHelpLastPage2, "LastPage2" },
-		{ 0, 0, NULL }
-	},
-	{
-	{ 0, 0, "MarkRead" },
-		{ iKeyMarkReadTag, iKeyMarkReadTag, "Tag" },
-		{ iKeyMarkReadCur, iKeyMarkReadCur, "Cur" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Nrctbl" },
-		{ iKeyNrctblAlternative, iKeyNrctblAlternative, "Alternative" },
-		{ iKeyNrctblCreate, iKeyNrctblCreate, "Create" },
-		{ iKeyNrctblDefault, iKeyNrctblDefault, "Default" },
-		{ iKeyNrctblQuit, iKeyNrctblQuit, "Quit" },
-		{ 0, 0, NULL }
-	},
-	{	/* Page keys */
-		{ 0, 0, "Page" },
-		{ iKeyPageAutoSel, iKeyPageAutoSel, "AutoSel" },
-		{ iKeyPageReplyQuoteHeaders, iKeyPageReplyQuoteHeaders, "ReplyQuoteHeaders" },
-#ifdef HAVE_PGP_GPG
-		{ iKeyPagePGPCheckArticle, iKeyPagePGPCheckArticle, "PGPCheckArticle" },
-#endif /* HAVE_PGP_GPG */
-		{ iKeyPageToggleHeaders, iKeyPageToggleHeaders, "ToggleHeaders" },
-		{ iKeyPageNextUnread, iKeyPageNextUnread, "NextUnread" },
-		{ iKeyPageNextThd, iKeyPageNextThd, "NextThd" },
-		{ iKeyPageAutoKill, iKeyPageAutoKill, "AutoKill" },
-		{ iKeyPageNextThd2, iKeyPageNextThd2, "NextThd2" },
-		{ iKeyPageToggleTabs, iKeyPageToggleTabs, "ToggleTabs" },
-		{ iKeyPageFollowupQuoteHeaders, iKeyPageFollowupQuoteHeaders, "FollowupQuoteHeaders" },
-		{ iKeyPageToggleTex2iso, iKeyPageToggleTex2iso, "ToggleTex2iso" },
-		{ iKeyPageToggleRot, iKeyPageToggleRot, "ToggleRot" },
-		{ iKeyPageToggleUue, iKeyPageToggleUue, "ToggleUue" },
-		{ iKeyPageReveal, iKeyPageReveal, "Reveal" },
-		{ iKeyPageSkipIncludedText, iKeyPageSkipIncludedText, "SkipIncludedText" },
-		{ iKeyPageTopThd, iKeyPageTopThd, "TopThd" },
-		{ iKeyPageBotThd, iKeyPageBotThd, "BotThd" },
-		{ iKeyPageCatchupNextUnread, iKeyPageCatchupNextUnread, "CatchupNextUnread" },
-		{ iKeyPageCancel, iKeyPageCancel, "Cancel" },
-		{ iKeyPageEditFilter, iKeyPageEditFilter, "EditFilter" },
-		{ iKeyPageFollowup, iKeyPageFollowup, "Followup" },
-		{ iKeyPageLastPage, iKeyPageLastPage, "LastPage" },
-		{ iKeyPageKillThd, iKeyPageKillThd, "KillThd" },
-		{ iKeyPageNextUnreadArt, iKeyPageNextUnreadArt, "NextUnreadArt" },
-		{ iKeyPagePrevUnreadArt, iKeyPagePrevUnreadArt, "PrevUnreadArt" },
-		{ iKeyPageReply, iKeyPageReply, "Reply" },
-		{ iKeyPageAutoSave, iKeyPageAutoSave, "AutoSave" },
-		{ iKeyPageGroupSel, iKeyPageGroupSel, "GroupSel" },
-		{ iKeyPageViewUrl, iKeyPageViewUrl, "ViewUrl" },
-		{ iKeyPageViewAttach, iKeyPageViewAttach, "ViewAttach" },
-		{ iKeyPageMarkThdUnread, iKeyPageMarkThdUnread, "MarkThdUnread" },
-		{ iKeyPageQuickAutoSel, iKeyPageQuickAutoSel, "QuickAutoSel" },
-		{ iKeyPageQuickKill, iKeyPageQuickKill, "QuickKill" },
-		{ iKeyPageToggleHighlight, iKeyPageToggleHighlight, "ToggleHighlight" },
-		{ iKeyPageCatchup, iKeyPageCatchup, "Catchup" },
-		{ iKeyPageEditArticle, iKeyPageEditArticle, "EditArticle" },
-		{ iKeyPageFollowupQuote, iKeyPageFollowupQuote, "FollowupQuote" },
-		{ iKeyPageFirstPage, iKeyPageFirstPage, "FirstPage" },
-		{ iKeyPageListThd, iKeyPageListThd, "ListThd" },
-		{ iKeyPageMail, iKeyPageMail, "Mail" },
-		{ iKeyPageNextArt, iKeyPageNextArt, "NextArt" },
-		{ iKeyPagePrevArt, iKeyPagePrevArt, "PrevArt" },
-		{ iKeyPageReplyQuote, iKeyPageReplyQuote, "ReplyQuote" },
-		{ iKeyPageSave, iKeyPageSave, "Save" },
-		{ iKeyPageTag, iKeyPageTag, "Tag" },
-		{ iKeyPageGotoParent, iKeyPageGotoParent, "GotoParent" },
-		{ iKeyPageRepost, iKeyPageRepost, "Repost" },
-		{ iKeyPageMarkArtUnread, iKeyPageMarkArtUnread, "MarkArtUnread" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Pgp" },
-		{ iKeyPgpEncSign, iKeyPgpEncSign, "EncSign" },
-		{ iKeyPgpEncrypt, iKeyPgpEncrypt, "Encrypt" },
-		{ iKeyPgpIncludekey, iKeyPgpIncludekey, "Includekey" },
-		{ iKeyPgpSign, iKeyPgpSign, "Sign" },
-		{ 0, 0, NULL }
-	},
-	{ /* Post keys */
-		{ 0, 0, "Post" },
-		{ iKeyPostCancel, iKeyPostCancel, "Cancel" },
-		{ iKeyPostEdit, iKeyPostEdit, "Edit" },
-#ifdef HAVE_PGP_GPG
-		{ iKeyPostPGP, iKeyPostPGP, "PGP" },
-#endif /* HAVE_PGP_GPG */
-#ifdef HAVE_ISPELL
-		{ iKeyPostIspell, iKeyPostIspell, "Ispell" },
-#endif /* HAVE_ISPELL */
-		{ iKeyPostAbort, iKeyPostAbort, "Abort" },
-		{ iKeyPostContinue, iKeyPostContinue, "Continue" },
-		{ iKeyPostIgnore, iKeyPostIgnore, "Ignore" },
-		{ iKeyPostMail, iKeyPostMail, "Mail" },
-		{ iKeyPostPost2, iKeyPostPost2, "Post2" },
-		{ iKeyPostPost3, iKeyPostPost3, "Post3" },
-		{ iKeyPostPostpone, iKeyPostPostpone, "Postpone" },
-		{ iKeyPostSend, iKeyPostSend, "Send" },
-		{ iKeyPostSend2, iKeyPostSend2, "Send2" },
-		{ iKeyPostSupersede, iKeyPostSupersede, "Supersede" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Postpone" },
-		{ iKeyPostponeAll, iKeyPostponeAll, "All" },
-		{ iKeyPostponeOverride, iKeyPostponeOverride, "Override" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "PProc" },
-		{ iKeyPProcNo, iKeyPProcNo, "No" },
-		{ iKeyPProcShar, iKeyPProcShar, "Shar" },
-		{ iKeyPProcYes, iKeyPProcYes, "Yes" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Prompt" },
-		{ iKeyPromptNo, iKeyPromptNo, "No" },
-		{ iKeyPromptYes, iKeyPromptYes, "Yes" },
-		{ 0, 0, NULL }
-	},
-	{
-		{ 0, 0, "Save" },
-		{ iKeySaveAppendFile, iKeySaveAppendFile, "AppendFile" },
-		{ iKeySaveOverwriteFile, iKeySaveOverwriteFile, "OverwriteFile" },
-		{ 0, 0, NULL }
-	},
-	{	/* Select keys */
-		{ 0, 0, "Select" },
-		{ iKeySelectEnterNextUnreadGrp, iKeySelectEnterNextUnreadGrp, "EnterNextUnreadGrp" },
-		{ iKeySelectReadGrp, iKeySelectReadGrp, "ReadGrp" },
-		{ iKeySelectReadGrp2, iKeySelectReadGrp2, "ReadGrp2" },
-		{ iKeySelectResetNewsrc, iKeySelectResetNewsrc, "ResetNewsrc" },
-		{ iKeySelectSortActive, iKeySelectSortActive, "SortActive" },
-		{ iKeySelectCatchupNextUnread, iKeySelectCatchupNextUnread, "CatchupNextUnread" },
-		{ iKeySelectNextUnreadGrp, iKeySelectNextUnreadGrp, "NextUnreadGrp" },
-		{ iKeySelectBugReport, iKeySelectBugReport, "BugReport" },
-		{ iKeySelectSubscribePat, iKeySelectSubscribePat, "SubscribePat" },
-		{ iKeySelectUnsubscribePat, iKeySelectUnsubscribePat, "UnsubscribePat" },
-		{ iKeySelectQuitNoWrite, iKeySelectQuitNoWrite, "QuitNoWrite" },
-		{ iKeySelectSyncWithActive, iKeySelectSyncWithActive, "SyncWithActive" },
-		{ iKeySelectMarkGrpUnread2, iKeySelectMarkGrpUnread2, "MarkGrpUnread2" },
-		{ iKeySelectCatchup, iKeySelectCatchup, "Catchup" },
-		{ iKeySelectToggleDescriptions, iKeySelectToggleDescriptions, "ToggleDescriptions" },
-		{ iKeySelectGoto, iKeySelectGoto, "Goto" },
-		{ iKeySelectMoveGrp, iKeySelectMoveGrp, "MoveGrp" },
-		{ iKeySelectEnterNextUnreadGrp2, iKeySelectEnterNextUnreadGrp2, "EnterNextUnreadGrp2" },
-		{ iKeySelectToggleReadDisplay, iKeySelectToggleReadDisplay, "ToggleReadDisplay" },
-		{ iKeySelectSubscribe, iKeySelectSubscribe, "Subscribe" },
-		{ iKeySelectUnsubscribe, iKeySelectUnsubscribe, "Unsubscribe" },
-		{ iKeySelectYankActive, iKeySelectYankActive, "YankActive" },
-		{ iKeySelectMarkGrpUnread, iKeySelectMarkGrpUnread, "MarkGrpUnread" },
-		{ 0, 0, NULL }
-	},
-	{	/* Thread keys */
-		{ 0, 0, "Thread" },
-		{ iKeyThreadReadNextArtOrThread, iKeyThreadReadNextArtOrThread, "ReadNextArtOrThread" },
-		{ iKeyThreadReadArt, iKeyThreadReadArt, "ReadArt" },
-		{ iKeyThreadReadArt2, iKeyThreadReadArt2, "ReadArt2" },
-		{ iKeyThreadSelArt, iKeyThreadSelArt, "SelArt" },
-		{ iKeyThreadToggleArtSel, iKeyThreadToggleArtSel, "ToggleArtSel" },
-		{ iKeyThreadReverseSel, iKeyThreadReverseSel, "ReverseSel" },
-		{ iKeyThreadCatchupNextUnread, iKeyThreadCatchupNextUnread, "CatchupNextUnread" },
-		{ iKeyThreadMarkArtRead, iKeyThreadMarkArtRead, "MarkArtRead" },
-		{ iKeyThreadBugReport, iKeyThreadBugReport, "BugReport" },
-		{ iKeyThreadAutoSave, iKeyThreadAutoSave, "AutoSave" },
-		{ iKeyThreadUntag, iKeyThreadUntag, "Untag" },
-		{ iKeyThreadMarkThdUnread, iKeyThreadMarkThdUnread, "MarkThdUnread" },
-		{ iKeyThreadCatchup, iKeyThreadCatchup, "Catchup" },
-		{ iKeyThreadToggleSubjDisplay, iKeyThreadToggleSubjDisplay, "ToggleSubjDisplay" },
-		{ iKeyThreadMail, iKeyThreadMail, "Mail" },
-		{ iKeyThreadSave, iKeyThreadSave, "Save" },
-		{ iKeyThreadTag, iKeyThreadTag, "Tag" },
-		{ iKeyThreadMarkArtUnread, iKeyThreadMarkArtUnread, "MarkArtUnread" },
-		{ iKeyThreadUndoSel, iKeyThreadUndoSel, "UndoSel" },
-		{ 0, 0, NULL }
-	}
-};
-
-/* NULL terminated list of pointers to the start of all the keygroups */
-static t_keynode *keygroups[] = {
-	&Key.Global.tag,		/* It is important that global be 1st for duplicate checking */
-	&Key.Config.tag,
-	&Key.Feed.tag,
-	&Key.Filter.tag,
-	&Key.Group.tag,
-	&Key.Help.tag,
-	&Key.Nrctbl.tag,
-	&Key.Page.tag,
-	&Key.Pgp.tag,
-	&Key.Post.tag,
-	&Key.Postpone.tag,
-	&Key.PProc.tag,
-	&Key.Prompt.tag,
-	&Key.Save.tag,
-	&Key.Select.tag,
-	&Key.Thread.tag,
-	NULL
-};
-
-/* Keymaps for various menus and screens */
-
-static t_keynode *keys_config_change[] = {
-	&Key.Global.Quit, &Key.Config.NoSave, &Key.Global.Up, &Key.Global.Up2,
-	&Key.Global.Down, &Key.Global.Down2, &Key.Global.FirstPage,
-	&Key.Config.FirstPage2, &Key.Global.LastPage, &Key.Config.LastPage2,
-	&Key.Global.PageUp, &Key.Global.PageUp2, &Key.Global.PageUp3,
-	&Key.Global.PageDown, &Key.Global.PageDown2, &Key.Global.PageDown3,
-	&Key.Global.SearchSubjF, &Key.Global.SearchSubjB, &Key.Global.SearchRepeat, &Key.Config.Select,
-	&Key.Config.Select2, &Key.Global.RedrawScr, &Key.Global.One,
-	&Key.Global.Two, &Key.Global.Three, &Key.Global.Four, &Key.Global.Five,
-	&Key.Global.Six, &Key.Global.Seven, &Key.Global.Eight, &Key.Global.Nine,
-	&Key.Global.ScrollUp, &Key.Global.ScrollDown, NULL };
-
-static t_keynode *keys_feed_art_thread_regex_tag[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Feed.Art, &Key.Feed.Hot,
-	&Key.Feed.Thd, &Key.Feed.Tag, &Key.Feed.Pat, NULL };
-
 /*
- * WARNING!
- *
- * Don't change the order of these items if you are not fully aware of the
- * side effects! The order from PProc.None onwards corresponds to the
- * enumeration of the post processing types defined in tin.h (POST_PROC_*
- * #defines) which is also used as the index stored in the post_process_type
- * tinrc variable.
- *
- * If you want to add keys that are not used to start any post processing
- * action, insert it before &Key.PProc.None. Change the index of
- * &menukeymap.feed_post_process_type.defaultkeys[] at the end of
- * build_keymaps() so that it always points to the key for no post
- * processing.
- *
- * If you want to add keys that are used for post processing, put them at
- * the end (before the NULL entry).
- *
- * If you want to delete a post processing key and add a new one, have in
- * mind that this will probably confuse users who are upgrading from an
- * older tin because the new action replaces the old one.
+ * local prototypes
  */
-static t_keynode *keys_feed_post_process_type[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.PProc.No, &Key.PProc.Shar,
-	&Key.PProc.Yes,
-	NULL };
-
-static t_keynode *keys_feed_supersede_article[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Feed.Repost, &Key.Feed.Supersede,
-	NULL };
-
-static t_keynode *keys_filter_quit_edit_save[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Filter.Edit, &Key.Filter.Save,
-	NULL };
-
-static t_keynode *keys_group_nav[] = {
-	&Key.Global.Abort, &Key.Global.One, &Key.Global.Two, &Key.Global.Three,
-	&Key.Global.Four, &Key.Global.Five, &Key.Global.Six, &Key.Global.Seven,
-	&Key.Global.Eight, &Key.Global.Nine,
-#ifndef NO_SHELL_ESCAPE
-	&Key.Global.ShellEscape,
-#endif /* !NO_SHELL_ESCAPE */
-	&Key.Global.FirstPage, &Key.Global.LastPage, &Key.Global.LastViewed,
-	&Key.Global.Pipe, &Key.Group.Mail,
-#ifndef DISABLE_PRINTING
-	&Key.Global.Print,
-#endif /* !DISABLE_PRINTING */
-	&Key.Group.Repost, &Key.Group.Save, &Key.Group.AutoSave,
-	&Key.Global.SetRange, &Key.Global.SearchAuthF, &Key.Global.SearchAuthB,
-	&Key.Global.SearchSubjF, &Key.Global.SearchSubjB, &Key.Global.SearchRepeat, &Key.Global.SearchBody,
-	&Key.Group.ReadBasenote, &Key.Group.ReadBasenote2,
-	&Key.Group.NextUnreadArtOrGrp, &Key.Global.PageDown, &Key.Global.PageDown2,
-	&Key.Global.PageDown3, &Key.Group.AutoSel, &Key.Group.Kill,
-	&Key.Group.EditFilter, &Key.Group.QuickAutoSel, &Key.Group.QuickKill,
-	&Key.Global.RedrawScr, &Key.Global.Down, &Key.Global.Down2,
-	&Key.Global.Up, &Key.Global.Up2, &Key.Global.PageUp, &Key.Global.PageUp2,
-	&Key.Global.PageUp3, &Key.Global.CatchupLeft, &Key.Group.Catchup,
-	&Key.Group.CatchupNextUnread, &Key.Group.ToggleSubjDisplay,
-	&Key.Group.Goto, &Key.Global.Help, &Key.Global.ToggleHelpDisplay,
-	&Key.Global.ToggleInverseVideo,
-#ifdef HAVE_COLOR
-	&Key.Global.ToggleColor,
-#endif /* HAVE_COLOR */
-	&Key.Group.MarkThdRead, &Key.Group.ListThd, &Key.Global.LookupMessage,
-	&Key.Global.OptionMenu, &Key.Group.NextGroup, &Key.Group.NextUnreadArt,
-	&Key.Group.PrevUnreadArt, &Key.Group.PrevGroup, &Key.Global.Quit,
-	&Key.Global.QuitTin, &Key.Group.ToggleReadUnread,
-	&Key.Group.ToggleGetartLimit, &Key.Group.BugReport, &Key.Group.TagParts,
-	&Key.Group.Tag, &Key.Group.ToggleThreading, &Key.Group.Untag,
-	&Key.Global.Version, &Key.Global.Post, &Key.Global.Postponed,
-	&Key.Global.Postponed2, &Key.Global.DisplayPostHist,
-	&Key.Group.MarkArtUnread, &Key.Group.MarkThdUnread, &Key.Group.SelThd,
-	&Key.Group.ToggleThdSel, &Key.Group.ReverseSel, &Key.Group.UndoSel,
-	&Key.Group.SelPattern, &Key.Group.SelThdIfUnreadSelected,
-	&Key.Group.MarkUnselArtRead, &Key.Group.DoAutoSel,
-	&Key.Global.ToggleInfoLastLine, &Key.Global.ScrollUp, &Key.Global.ScrollDown, NULL };
-
-static t_keynode *keys_info_nav[] = {
-	&Key.Global.Abort, &Key.Global.MouseToggle, &Key.Global.Up,
-	&Key.Global.Up2, &Key.Global.Down, &Key.Global.Down2, &Key.Global.PageDown,
-	&Key.Global.PageDown2, &Key.Global.PageDown3, &Key.Global.PageUp,
-	&Key.Global.PageUp2, &Key.Global.PageUp3, &Key.Global.FirstPage,
-	&Key.Help.FirstPage2, &Key.Global.LastPage, &Key.Help.LastPage2,
-	&Key.Global.ToggleHelpDisplay, &Key.Global.SearchSubjF,
-	&Key.Global.SearchSubjB, &Key.Global.SearchRepeat, &Key.Global.Quit, NULL };
-
-static t_keynode *keys_mark_read_tagged_current[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.MarkRead.Tag,
-	&Key.MarkRead.Cur, NULL };
-
-static t_keynode *keys_nrctbl_create[] = {
-	&Key.Global.Abort, &Key.Nrctbl.Quit, &Key.Nrctbl.Alternative,
-	&Key.Nrctbl.Create, &Key.Nrctbl.Default, NULL };
-
-static t_keynode *keys_page_nav[] = {
-	&Key.Global.Abort, &Key.Global.Zero, &Key.Global.One, &Key.Global.Two,
-	&Key.Global.Three, &Key.Global.Four, &Key.Global.Five, &Key.Global.Six,
-	&Key.Global.Seven, &Key.Global.Eight, &Key.Global.Nine,
-#ifndef NO_SHELL_ESCAPE
-	&Key.Global.ShellEscape,
-#endif /* !NO_SHELL_ESCAPE */
-	&Key.Global.MouseToggle, &Key.Global.PageUp, &Key.Global.PageUp2,
-	&Key.Global.PageUp3, &Key.Global.PageDown, &Key.Global.PageDown2,
-	&Key.Global.PageDown3, &Key.Page.NextUnread, &Key.Global.FirstPage,
-	&Key.Page.FirstPage2, &Key.Global.LastPage, &Key.Page.LastPage2,
-	&Key.Global.Up, &Key.Global.Up2, &Key.Global.Down, &Key.Global.Down2,
-	&Key.Global.LastViewed, &Key.Global.LookupMessage, &Key.Page.GotoParent,
-	&Key.Global.Pipe, &Key.Page.Mail,
-#ifndef DISABLE_PRINTING
-	&Key.Global.Print,
-#endif /* !DISABLE_PRINTING */
-	&Key.Page.Repost, &Key.Page.Save, &Key.Page.AutoSave,
-	&Key.Global.SearchAuthF, &Key.Global.SearchAuthB, &Key.Global.SearchSubjF,
-	&Key.Global.SearchSubjB, &Key.Global.SearchRepeat, &Key.Global.SearchBody,
-	&Key.Page.TopThd, &Key.Page.BotThd, &Key.Page.NextThd, &Key.Page.NextThd2,
-#ifdef HAVE_PGP_GPG
-	&Key.Page.PGPCheckArticle,
-#endif /* HAVE_PGP_GPG */
-	&Key.Page.ToggleHeaders, &Key.Page.ToggleTex2iso, &Key.Page.ToggleTabs,
-	&Key.Page.ToggleUue, &Key.Page.Reveal, &Key.Page.QuickAutoSel,
-	&Key.Page.QuickKill, &Key.Page.AutoSel, &Key.Page.AutoKill,
-	&Key.Page.EditFilter, &Key.Global.RedrawScr, &Key.Page.ToggleRot,
-	&Key.Page.Catchup, &Key.Page.CatchupNextUnread, &Key.Page.MarkThdUnread,
-	&Key.Page.Cancel, &Key.Page.EditArticle, &Key.Page.FollowupQuote,
-	&Key.Page.FollowupQuoteHeaders, &Key.Page.Followup, &Key.Global.Help,
-	&Key.Global.ToggleHelpDisplay, &Key.Global.Quit,
-	&Key.Global.ToggleInverseVideo,
-#ifdef HAVE_COLOR
-	&Key.Global.ToggleColor,
-#endif /* HAVE_COLOR */
-	&Key.Page.ListThd, &Key.Global.OptionMenu, &Key.Page.NextArt,
-	&Key.Page.KillThd, &Key.Page.NextUnreadArt, &Key.Page.PrevArt,
-	&Key.Page.PrevUnreadArt, &Key.Global.QuitTin, &Key.Page.ReplyQuote,
-	&Key.Page.ReplyQuoteHeaders, &Key.Page.Reply, &Key.Page.Tag,
-	&Key.Page.GroupSel, &Key.Global.Version, &Key.Global.Post,
-	&Key.Global.Postponed, &Key.Global.Postponed2, &Key.Global.DisplayPostHist,
-	&Key.Page.MarkArtUnread, &Key.Page.SkipIncludedText,
-	&Key.Global.ToggleInfoLastLine,
-	&Key.Page.ToggleHighlight,
-	&Key.Page.ViewAttach, &Key.Page.ViewUrl, NULL };
-
-static t_keynode *keys_pgp_mail[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Pgp.EncSign, &Key.Pgp.Encrypt,
-	&Key.Pgp.Sign, NULL };
-
-static t_keynode *keys_pgp_news[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Pgp.Includekey, &Key.Pgp.Sign,
-	NULL };
-
-static t_keynode *keys_post_cancel[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Post.Cancel, &Key.Post.Edit,
-	NULL };
-
-static t_keynode *keys_post_cont[] = {
-	&Key.Global.Abort, &Key.Post.Abort, &Key.Post.Continue, NULL };
-
-static t_keynode *keys_post_delete[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Post.Cancel, &Key.Post.Supersede,
-	NULL };
-
-static t_keynode *keys_post_edit[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Post.Edit, &Key.Post.Postpone,
-	NULL };
-
-static t_keynode *keys_post_edit_ext[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Post.Edit,
-	&Key.Global.OptionMenu, NULL };
-
-static t_keynode *keys_post_ignore_fupto[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Post.Ignore, &Key.Global.Post,
-	&Key.Post.Post2, &Key.Post.Post3, NULL };
-
-static t_keynode *keys_post_mail_fup[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Global.Post, &Key.Post.Post2,
-	&Key.Post.Post3, &Key.Post.Mail, NULL };
-
-static t_keynode *keys_post_post[] = {
-	&Key.Global.Abort, &Key.Global.Quit,
-#ifdef HAVE_PGP_GPG
-	&Key.Post.PGP,
-#endif /* HAVE_PGP_GPG */
-#ifdef HAVE_ISPELL
-	&Key.Post.Ispell,
-#endif /* HAVE_ISPELL */
-	&Key.Post.Edit, &Key.Global.Post, &Key.Post.Post2, &Key.Post.Post3,
-	&Key.Global.OptionMenu,
-	&Key.Post.Postpone, NULL };
-
-static t_keynode *keys_post_postpone[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Prompt.Yes,
-	&Key.Postpone.All, &Key.Postpone.Override, &Key.Prompt.No, NULL };
-
-static t_keynode *keys_post_send[] = {
-	&Key.Global.Abort, &Key.Global.Quit,
+static void add_default_key(struct keylist *keys, char key, t_function func);
+static void add_global_keys(struct keylist *keys);
+static void free_keylist(struct keylist *keys);
+static void upgrade_keymap_file(char *old);
+static void setup_default_keys(void);
+static t_bool add_key(struct keylist *keys, char key, t_function func, t_bool overwrite);
+static t_bool process_keymap_file(void);
+static t_bool process_keys(t_function func, const char *keys, struct keylist *kl);
+static t_bool process_mapping(char *keyname, char *keys);
+
+struct keylist feed_post_process_keys = { NULL, 0, 0 };
+struct keylist feed_supersede_article_keys = { NULL, 0, 0 };
+struct keylist feed_type_keys = { NULL, 0, 0 };
+struct keylist filter_keys = { NULL, 0, 0 };
+struct keylist group_keys = { NULL, 0, 0 };
+struct keylist info_keys = { NULL, 0, 0 };
+struct keylist mark_read_keys = { NULL, 0, 0 };
+struct keylist option_menu_keys = { NULL, 0, 0 };
+struct keylist page_keys = { NULL, 0, 0 };
 #ifdef HAVE_PGP_GPG
-	&Key.Post.PGP,
+	struct keylist pgp_mail_keys = { NULL, 0, 0 };
+	struct keylist pgp_news_keys = { NULL, 0, 0 };
 #endif /* HAVE_PGP_GPG */
-#ifdef HAVE_ISPELL
-	&Key.Post.Ispell,
-#endif /* HAVE_ISPELL */
-	&Key.Post.Edit, &Key.Post.Send, &Key.Post.Send2, NULL };
-
-static t_keynode *keys_prompt_yn[] = {
-	&Key.Global.Abort, &Key.Prompt.Yes, &Key.Prompt.No, NULL };
-
-static t_keynode *keys_save_append_overwrite_quit[] = {
-	&Key.Global.Abort, &Key.Global.Quit, &Key.Save.AppendFile,
-	&Key.Save.OverwriteFile, NULL };
-
-static t_keynode *keys_select_nav[] = {
-	&Key.Global.Abort, &Key.Global.One, &Key.Global.Two, &Key.Global.Three,
-	&Key.Global.Four, &Key.Global.Five, &Key.Global.Six, &Key.Global.Seven,
-	&Key.Global.Eight, &Key.Global.Nine,
-#ifndef NO_SHELL_ESCAPE
-	&Key.Global.ShellEscape,
-#endif /* !NO_SHELL_ESCAPE */
-	&Key.Global.FirstPage, &Key.Global.LastPage, &Key.Global.PageUp,
-	&Key.Global.PageUp2, &Key.Global.PageUp3, &Key.Global.PageDown,
-	&Key.Global.PageDown2, &Key.Global.PageDown3, &Key.Global.Up,
-	&Key.Global.Up2, &Key.Global.Down, &Key.Global.Down2, &Key.Global.SetRange,
-	&Key.Global.SearchSubjF, &Key.Global.SearchSubjB, &Key.Global.SearchRepeat,
-	&Key.Select.ReadGrp, &Key.Select.ReadGrp2, &Key.Select.EnterNextUnreadGrp,
-	&Key.Select.EnterNextUnreadGrp2, &Key.Global.RedrawScr,
-	&Key.Select.ResetNewsrc, &Key.Select.SortActive, &Key.Select.Catchup,
-	&Key.Select.CatchupNextUnread, &Key.Select.ToggleDescriptions,
-	&Key.Select.Goto, &Key.Global.Help, &Key.Global.ToggleHelpDisplay,
-	&Key.Global.ToggleInverseVideo,
-#ifdef HAVE_COLOR
-	&Key.Global.ToggleColor,
-#endif /* HAVE_COLOR */
-	&Key.Global.ToggleInfoLastLine, &Key.Select.MoveGrp,
-	&Key.Global.OptionMenu, &Key.Select.NextUnreadGrp, &Key.Global.Quit,
-	&Key.Global.QuitTin, &Key.Select.QuitNoWrite,
-	&Key.Select.ToggleReadDisplay, &Key.Select.BugReport,
-	&Key.Select.Subscribe, &Key.Select.SubscribePat, &Key.Select.Unsubscribe,
-	&Key.Select.UnsubscribePat, &Key.Global.Version, &Key.Global.Post,
-	&Key.Global.Postponed, &Key.Global.Postponed2, &Key.Global.DisplayPostHist,
-	&Key.Select.YankActive, &Key.Select.SyncWithActive,
-	&Key.Select.MarkGrpUnread, &Key.Select.MarkGrpUnread2,
-	&Key.Global.ScrollUp, &Key.Global.ScrollDown, NULL };
-
-static t_keynode *keys_thread_nav[] = {
-	&Key.Global.Abort, &Key.Global.One, &Key.Global.Two, &Key.Global.Three,
-	&Key.Global.Four, &Key.Global.Five, &Key.Global.Six, &Key.Global.Seven,
-	&Key.Global.Eight, &Key.Global.Nine,
-#ifndef NO_SHELL_ESCAPE
-	&Key.Global.ShellEscape,
-#endif /* !NO_SHELL_ESCAPE */
-	&Key.Global.FirstPage, &Key.Global.LastPage, &Key.Global.LastViewed,
-	&Key.Global.SetRange, &Key.Global.Pipe, &Key.Thread.Mail,
-	&Key.Thread.Save, &Key.Thread.AutoSave, &Key.Thread.ReadArt,
-	&Key.Thread.ReadArt2, &Key.Thread.ReadNextArtOrThread, &Key.Global.Post,
-	&Key.Global.RedrawScr, &Key.Global.Down, &Key.Global.Down2,
-	&Key.Global.Up, &Key.Global.Up2, &Key.Global.PageUp, &Key.Global.PageUp2,
-	&Key.Global.PageUp3, &Key.Global.PageDown, &Key.Global.PageDown2,
-	&Key.Global.PageDown3, &Key.Global.CatchupLeft, &Key.Thread.Catchup,
-	&Key.Thread.CatchupNextUnread, &Key.Thread.MarkArtRead,
-	&Key.Thread.ToggleSubjDisplay, &Key.Global.Help,
-	&Key.Global.LookupMessage, &Key.Global.SearchBody,
-	&Key.Global.SearchSubjF, &Key.Global.SearchSubjB, &Key.Global.SearchRepeat,
-	&Key.Global.SearchAuthF, &Key.Global.SearchAuthB,
-	&Key.Global.ToggleHelpDisplay, &Key.Global.ToggleInverseVideo,
-#ifdef HAVE_COLOR
-	&Key.Global.ToggleColor,
-#endif /* HAVE_COLOR */
-	&Key.Global.OptionMenu,
-	&Key.Global.Quit, &Key.Global.QuitTin, &Key.Thread.Tag,
-	&Key.Thread.BugReport, &Key.Thread.Untag, &Key.Global.Version,
-	&Key.Thread.MarkArtUnread, &Key.Thread.MarkThdUnread, &Key.Thread.SelArt,
-	&Key.Thread.ToggleArtSel, &Key.Thread.ReverseSel, &Key.Thread.UndoSel,
-	&Key.Global.Postponed, &Key.Global.Postponed2, &Key.Global.DisplayPostHist,
-	&Key.Global.ToggleInfoLastLine, &Key.Global.ScrollUp, &Key.Global.ScrollDown, NULL };
-
-t_menukeymap menukeymap = {
-	{ keys_config_change, NULL, NULL },
-	{ keys_feed_art_thread_regex_tag, NULL, NULL },
-	{ keys_feed_post_process_type, NULL, NULL },
-	{ keys_feed_supersede_article, NULL, NULL },
-	{ keys_filter_quit_edit_save, NULL, NULL },
-	{ keys_group_nav, NULL, NULL },
-	{ keys_info_nav, NULL, NULL },
-	{ keys_mark_read_tagged_current, NULL, NULL },
-	{ keys_nrctbl_create, NULL, NULL },
-	{ keys_page_nav, NULL, NULL },
-	{ keys_pgp_mail, NULL, NULL },
-	{ keys_pgp_news, NULL, NULL },
-	{ keys_post_cancel, NULL, NULL },
-	{ keys_post_cont, NULL, NULL },
-	{ keys_post_delete, NULL, NULL },
-	{ keys_post_edit, NULL, NULL },
-	{ keys_post_edit_ext, NULL, NULL },
-	{ keys_post_ignore_fupto, NULL, NULL },
-	{ keys_post_mail_fup, NULL, NULL },
-	{ keys_post_post, NULL, NULL },
-	{ keys_post_postpone, NULL, NULL },
-	{ keys_post_send, NULL, NULL },
-	{ keys_prompt_yn, NULL, NULL },
-	{ keys_save_append_overwrite_quit, NULL, NULL },
-	{ keys_select_nav, NULL, NULL },
-	{ keys_thread_nav, NULL, NULL }
-};
+struct keylist post_cancel_keys = { NULL, 0, 0 };
+struct keylist post_continue_keys = { NULL, 0, 0 };
+struct keylist post_delete_keys = { NULL, 0, 0 };
+struct keylist post_edit_keys = { NULL, 0, 0 };
+struct keylist post_edit_ext_keys = { NULL, 0, 0 };
+struct keylist post_ignore_fupto_keys = { NULL, 0, 0 };
+struct keylist post_mail_fup_keys = { NULL, 0, 0 };
+struct keylist post_post_keys = { NULL, 0, 0 };
+struct keylist post_postpone_keys = { NULL, 0, 0 };
+struct keylist post_send_keys = { NULL, 0, 0 };
+struct keylist prompt_keys = { NULL, 0, 0 };
+struct keylist save_append_overwrite_keys = { NULL, 0, 0 };
+struct keylist select_keys = { NULL, 0, 0 };
+struct keylist thread_keys = { NULL, 0, 0 };
 
 
 /*
- * Return the number of keys in a menu
+ * lookup the associated function to the specified key
  */
-static size_t
-keymapsize(
-	t_keynode *ptr[])
+t_function
+key_to_func(
+	const char key,
+	const struct keylist keys)
 {
-	size_t i = 0;
+	size_t i;
 
-	if (!ptr)
-		return i;
-
-	while (*ptr) {
-		i++;
-		ptr++;
+	for (i = 0; i < keys.used; i++) {
+		if (keys.list[i].key == key)
+			return keys.list[i].function;
 	}
-	return i;
+
+	return NOT_ASSIGNED;
 }
 
 
 /*
- * Compile keymaps for faster access and conversion
+ * lookup the associated key to the specified function
  */
-void
-build_keymaps(
-	void)
+char
+func_to_key(
+	t_function func,
+	const struct keylist keys)
 {
-	char *dkey, *lkey;
-	int cnt = sizeof(menukeymap) / sizeof(t_menukeys);
-	size_t size;
-	t_keynode *keyptr;
-	t_menukeys *menuptr = &menukeymap.config_change;
-
-	while (cnt--) {
-		size = keymapsize(menuptr->keys);
-		if (menuptr->defaultkeys)
-			menuptr->defaultkeys = my_realloc(menuptr->defaultkeys, size + 1);
-		else
-			menuptr->defaultkeys = my_malloc(size + 1);
-		if (menuptr->localkeys)
-			menuptr->localkeys = my_realloc(menuptr->localkeys, size + 1);
-		else
-			menuptr->localkeys = my_malloc(size + 1);
-		dkey = menuptr->defaultkeys;
-		lkey = menuptr->localkeys;
-		dkey[size] = '\0';
-		lkey[size] = '\0';
-		while (size--) {
-			keyptr = menuptr->keys[size];
-			dkey[size] = keyptr->defaultkey;
-			lkey[size] = keyptr->localkey;
-		}
-		menuptr++;
+	size_t i;
+
+	for (i = 0; i < keys.used; i++) {
+		if (keys.list[i].function == func)
+			return keys.list[i].key;
 	}
-	ch_post_process = &menukeymap.feed_post_process_type.defaultkeys[2];
+
+	return '?';
 }
 
 
 /*
- * convert a local key to the internal (default) mapping
+ * adds a key to a keylist
+ * returns TRUE if the key was succesfully added else FALSE
  */
-int
-map_to_default(
-	const char key,
-	const t_menukeys *menukeys)
+static t_bool
+add_key(
+	struct keylist *keys,
+	char key,
+	t_function func,
+	t_bool overwrite)
 {
-	char *ptr = strchr(menukeys->localkeys, key);
+	size_t i;
+	struct keynode *entry = NULL;
+
+	/* is a function already associated with this key */
+	for (i = 0; i < keys->used; i++) {
+		if (keys->list[i].key == key)
+			entry = &keys->list[i];
+	}
 
-	if (ptr)
-		return menukeys->defaultkeys[ptr - menukeys->localkeys];
+	if (entry != NULL) {
+		if (overwrite) {
+			entry->function = func;
+			return TRUE;
+		} else
+			return FALSE;
+	} else {
+		/* add a new entry */
+		if (keys->used >= keys->max) {
+			if (keys->list == NULL) {
+				keys->max = 1;
+				keys->list = my_malloc(keys->max * sizeof(struct keynode));
+			} else {
+				keys->max++;
+				keys->list = my_realloc(keys->list, keys->max * sizeof(struct keynode));
+			}
+		}
+		keys->list[keys->used].key = key;
+		keys->list[keys->used].function = func;
+		keys->used++;
 
-	return 0;
+		return TRUE;
+	}
 }
 
 
-/*
- * convert an internal (default) key to a local one
- */
-int
-map_to_local(
-	const char key,
-	const t_menukeys *menukeys)
+static void
+add_default_key(
+	struct keylist *keys,
+	char key,
+	t_function func)
 {
-	char *ptr = strchr(menukeys->defaultkeys, key);
+	add_key(keys, key, func, FALSE);
+}
 
-	if (ptr)
-		return menukeys->localkeys[ptr - menukeys->defaultkeys];
 
-	return 0;
+static void
+free_keylist(struct keylist *keys) {
+	FreeAndNull(keys->list);
+	keys->used = keys->max = 0;
 }
 
 
@@ -812,14 +194,33 @@ void
 free_keymaps(
 	void)
 {
-	int cnt = sizeof(menukeymap) / sizeof(t_menukeys);
-	t_menukeys *menuptr = &menukeymap.config_change;
-
-	while (cnt--) {
-		FreeIfNeeded(menuptr->localkeys);
-		FreeIfNeeded(menuptr->defaultkeys);
-		menuptr++;
-	}
+	free_keylist(&select_keys);
+	free_keylist(&group_keys);
+	free_keylist(&thread_keys);
+	free_keylist(&option_menu_keys);
+	free_keylist(&page_keys);
+	free_keylist(&info_keys);
+	free_keylist(&post_send_keys);
+	free_keylist(&post_edit_keys);
+	free_keylist(&post_edit_ext_keys);
+	free_keylist(&post_post_keys);
+	free_keylist(&post_postpone_keys);
+	free_keylist(&post_mail_fup_keys);
+	free_keylist(&post_ignore_fupto_keys);
+	free_keylist(&post_continue_keys);
+	free_keylist(&post_delete_keys);
+	free_keylist(&post_cancel_keys);
+	free_keylist(&filter_keys);
+	free_keylist(&mark_read_keys);
+#ifdef HAVE_PGP_GPG
+	free_keylist(&pgp_mail_keys);
+	free_keylist(&pgp_news_keys);
+#endif /* HAVE_PGP_GPG */
+	free_keylist(&save_append_overwrite_keys);
+	free_keylist(&feed_type_keys);
+	free_keylist(&feed_post_process_keys);
+	free_keylist(&feed_supersede_article_keys);
+	free_keylist(&prompt_keys);
 }
 
 
@@ -855,80 +256,31 @@ printascii(
 
 
 /*
- * Find any key clashes between groups keyptr1 and keyptr2. This is just an
- * ascending brute force search. We need a pointer to the tag node in order
- * to report errors correctly, the pointers start 1 above this on the first
- * key definition. If we are checking against the same keygroup, then ptr2
- * starts at (ptr1+1) else the algorithm doesn't work!
+ * read the keymap file
+ * returns TRUE if the keymap file was read without an error else FALSE
  */
-static t_bool
-check_duplicates(
-	t_keynode *keyptr1,
-	t_keynode *keyptr2)
+t_bool
+read_keymap_file(
+	void)
 {
-	char buf[10];
-	t_keynode *ptr1, *ptr2;
-
-	for (ptr1 = keyptr1 + 1; ptr1->localkey != '\0'; ++ptr1) {
-		for (ptr2 = (keyptr1 == keyptr2) ? ptr1 + 1 : keyptr2 + 1; ptr2->localkey != '\0'; ++ptr2) {
-			if (ptr1->localkey == ptr2->localkey) {
-				wait_message(0, _(txt_keymap_conflict), printascii(buf, ptr1->localkey), keyptr1->t, ptr1->t, keyptr2->t, ptr2->t);
-				return FALSE;
-			}
-		}
-	}
-	return TRUE;
-}
+	t_bool ret;
 
+	ret = process_keymap_file();
+	setup_default_keys();
 
-/*
- * Try and lookup a key description. If found, make the assignment
- */
-static t_bool
-processkey(
-	t_keynode *keyptr,		/* Where in map to start search */
-	char *kname,				/* Keyname we're searching for */
-	char key)					/* Key to assign to keyname if found */
-{
-	char buf[LEN];
-	int i;
-#ifdef DEBUG
-	char was[10], is[10];
-#endif /* DEBUG */
-
-	strcpy(buf, keyptr->t);	/* Preload the groupname for speed */
-	keyptr++;						/* Advance to 1st key */
-	i = strlen(buf);
-
-	for (; keyptr->t != NULL; ++keyptr) {
-		strcpy(buf + i, keyptr->t);
-
-		if (strcasecmp(kname, buf) == 0) {
-#ifdef DEBUG
-			fprintf(stderr, _(txt_keymap_redef), buf, printascii(was, keyptr->localkey), printascii(is, key));
-#endif /* DEBUG */
-			keyptr->localkey = key;
-			return TRUE;
-		}
-	}
-
-	return FALSE;
+	return ret;
 }
 
 
 #define KEYSEPS		" \t\n"
-/* TODO: -> tin.h */
-#define KEYMAP_FILE	"keymap"
 t_bool
-read_keymap_file(
+process_keymap_file(
 	void)
 {
 	FILE *fp = (FILE *) 0;
 	char *line, *keydef, *kname;
 	char *map, *ptr;
 	char buf[LEN], buff[NAME_LEN + 1];
-	char key;
-	int i;
 	int upgrade = RC_CHECK;
 	t_bool ret = TRUE;
 
@@ -971,29 +323,79 @@ read_keymap_file(
 
 	map = my_strdup(buf); /* remember keymap-name */
 
+	/* check if keymap file is uptodate */
+	while ((line = fgets(buf, sizeof(buf), fp)) != NULL) {
+		if (line[0] == '#' && upgrade == RC_CHECK) {
+			if ((upgrade = check_upgrade(line, "# Keymap file V", KEYMAP_VERSION)) == RC_UPGRADE) {
+				fclose(fp);
+				upgrade_keymap_file(map);
+				upgrade = RC_IGNORE;
+				fp = fopen(map, "r");
+			}
+			break;
+		}
+	}
+
 	while ((line = fgets(buf, sizeof(buf), fp)) != NULL) {
 		/*
 		 * Ignore blank and comment lines
 		 */
-		if (line[0] == '#' || line[0] == '\n') {
-			if (upgrade == RC_CHECK)
-				upgrade = check_upgrade(line, "# Keymap file V", KEYMAP_VERSION);
-
+		if (line[0] == '#' || line[0] == '\n')
 			continue;
-		}
 
-		kname = strtok(line, KEYSEPS);
-		keydef = strtok(NULL, KEYSEPS);
+		if ((kname = strsep(&line, KEYSEPS)) != NULL) {
+			keydef = str_trim(line);
+			/*
+			 * Warn about basic syntax errors
+			 */
+			if (keydef == NULL || !strlen(keydef)) {
+				wait_message(0, _(txt_keymap_missing_key), kname);
+				ret = FALSE;
+				continue;
+			}
+		} else
+			continue;
 
 		/*
-		 * Warn about basic syntax errors
+		 * TODO: useful? shared keymaps (NFS-Home) may differ
+		 * depending on the OS (i.e. on tin has color the other has not)
 		 */
-		if (keydef == NULL) {
-			wait_message(0, _(txt_keymap_missing_key), kname);
+		if (!process_mapping(kname, keydef)) {
+			wait_message(0, _(txt_keymap_invalid_name), kname);
+			prompt_continue();
 			ret = FALSE;
 			continue;
 		}
 
+	}
+	fclose(fp);
+	if (upgrade != RC_IGNORE)
+		upgrade_prompt_quit(upgrade, map);
+
+	free(map);
+	return ret;
+}
+
+
+/*
+ * associate the keys with the internal function and add them to the keylist
+ * returns TRUE if all keys could be recognized else FALSE
+ */
+static t_bool
+process_keys(
+	t_function func,
+	const char *keys,
+	struct keylist *kl)
+{
+	char *keydef, *tmp;
+	char key;
+	t_bool error, ret = TRUE;
+
+	tmp = my_strdup(keys);		/* don't change "keys" */
+	keydef = strtok(tmp, KEYSEPS);
+
+	while (keydef != NULL) {
+		error = FALSE;
 		/*
 		 * Parse the key sequence into 'key'
 		 * Special sequences are:
@@ -1001,17 +403,8 @@ read_keymap_file(
 		 * TAB -> ^I
 		 * SPACE -> ' '
 		 */
-		if (strlen(keydef) > 1)
+		if (strlen(keydef) > 1) {
 			switch (keydef[0]) {
-				case '^':
-					if (!(isupper((int)(unsigned char) keydef[1]))) {
-						wait_message(0, _(txt_keymap_invalid_key), keydef);
-						ret = FALSE;
-						continue;
-					}
-					key = ctrl(keydef[1]);
-					break;
-
 				case 'S':		/* Only test 1st char - crude but effective */
 					key = ' ';
 					break;
@@ -1020,53 +413,2130 @@ read_keymap_file(
 					key = ctrl('I');
 					break;
 
+				case '^':
+					if (isupper((int)(unsigned char) keydef[1])) {
+						key = ctrl(keydef[1]);
+						break;
+					}
+					/* FALLTHROUGH */
 				default:
 					wait_message(0, _(txt_keymap_invalid_key), keydef);
 					ret = FALSE;
-					continue;
+					error = TRUE;
+					break;
+			}
+		} else {
+			if (isdigit(key = keydef[0])) {
+				wait_message(0, _(txt_keymap_invalid_key), keydef);
+				ret = FALSE;
+				error = TRUE;
 			}
-		else
-			key = keydef[0];
-
-		/*
-		 * Try and locate the tagline in each keygroup
-		 */
-		for (i = 0; keygroups[i] != NULL; ++i) {
-			if (processkey(keygroups[i], kname, key))
-				break;
 		}
 
-		/*
-		 * TODO: useful? shared keymaps (NFS-Home) may differ
-		 * depending on the OS (i.e. on tin has color the other has not)
-		 */
-		if (keygroups[i] == NULL) {
-			wait_message(0, _(txt_keymap_invalid_name), kname);
-			ret = FALSE;
-			continue;
-		}
+		if (!error)
+			add_key(kl, key, func, TRUE);
 
+		keydef = strtok(NULL, KEYSEPS);
 	}
+	free(tmp);
 
-	/*
-	 * Check for duplicates in each keygroup and vs. the global group
-	 */
-	for (i = 0; keygroups[i] != NULL; ++i) {
-		if (!(check_duplicates(keygroups[i], keygroups[i])))
-			ret = FALSE;
-		if (i != 0 && !(check_duplicates(keygroups[i], keygroups[0])))
-			ret = FALSE;
-	}
+	return ret;
+}
 
-	fclose(fp);
-	/* TODO: do something usefull */
-	/*
-	if (upgrade != RC_IGNORE) {
-		upgrade_prompt_quit(upgrade, map);
-	}
-	*/
-	free(map);
 
-	build_keymaps();
-	return ret;
+/*
+ * map a keyname to the internal function name and assign the keys
+ * returns TRUE if a mapping was found else FALSE
+ */
+static t_bool
+process_mapping(
+	char *keyname,				/* Keyname we're searching for */
+	char *keys)				/* Key to assign to keyname if found */
+{
+	switch (keyname[0]) {
+		case 'C':
+			if (strcmp(keyname, "ConfigFirstPage") == 0) {
+				process_keys(GLOBAL_FIRST_PAGE, keys, &option_menu_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ConfigLastPage") == 0) {
+				process_keys(GLOBAL_LAST_PAGE, keys, &option_menu_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ConfigNoSave") == 0) {
+				process_keys(CONFIG_NO_SAVE, keys, &option_menu_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ConfigSelect") == 0) {
+				process_keys(CONFIG_SELECT, keys, &option_menu_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'D':
+			if (strcmp(keyname, "DisplayPostHist") == 0) {
+				process_keys(GLOBAL_DISPLAY_POST_HISTORY, keys, &group_keys);
+				process_keys(GLOBAL_DISPLAY_POST_HISTORY, keys, &page_keys);
+				process_keys(GLOBAL_DISPLAY_POST_HISTORY, keys, &select_keys);
+				process_keys(GLOBAL_DISPLAY_POST_HISTORY, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "Down") == 0) {
+				process_keys(GLOBAL_LINE_DOWN, keys, &group_keys);
+				process_keys(GLOBAL_LINE_DOWN, keys, &info_keys);
+				process_keys(GLOBAL_LINE_DOWN, keys, &option_menu_keys);
+				process_keys(GLOBAL_LINE_DOWN, keys, &page_keys);
+				process_keys(GLOBAL_LINE_DOWN, keys, &select_keys);
+				process_keys(GLOBAL_LINE_DOWN, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'E':
+			if (strcmp(keyname, "EditFilter") == 0) {
+				process_keys(GLOBAL_EDIT_FILTER, keys, &group_keys);
+				process_keys(GLOBAL_EDIT_FILTER, keys, &page_keys);
+				process_keys(GLOBAL_EDIT_FILTER, keys, &select_keys);
+				process_keys(GLOBAL_EDIT_FILTER, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'F':
+			if (strcmp(keyname, "FeedArt") == 0) {
+				process_keys(FEED_ARTICLE, keys, &feed_type_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FeedHot") == 0) {
+				process_keys(FEED_HOT, keys, &feed_type_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FeedPat") == 0) {
+				process_keys(FEED_PATTERN, keys, &feed_type_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FeedRepost") == 0) {
+				process_keys(FEED_KEY_REPOST, keys, &feed_supersede_article_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FeedSupersede") == 0) {
+				process_keys(FEED_SUPERSEDE, keys, &feed_supersede_article_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FeedTag") == 0) {
+				process_keys(FEED_TAGGED, keys, &feed_type_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FeedThd") == 0) {
+				process_keys(FEED_THREAD, keys, &feed_type_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FilterEdit") == 0) {
+				process_keys(FILTER_EDIT, keys, &filter_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FilterSave") == 0) {
+				process_keys(FILTER_SAVE, keys, &filter_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "FirstPage") == 0) {
+				process_keys(GLOBAL_FIRST_PAGE, keys, &group_keys);
+				process_keys(GLOBAL_FIRST_PAGE, keys, &info_keys);
+				process_keys(GLOBAL_FIRST_PAGE, keys, &option_menu_keys);
+				process_keys(GLOBAL_FIRST_PAGE, keys, &page_keys);
+				process_keys(GLOBAL_FIRST_PAGE, keys, &select_keys);
+				process_keys(GLOBAL_FIRST_PAGE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'G':
+			if (strcmp(keyname, "GroupAutoSave") == 0) {
+				process_keys(GROUP_AUTOSAVE, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupBugReport") == 0) {
+				process_keys(GLOBAL_BUGREPORT, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupCatchup") == 0) {
+				process_keys(GROUP_CATCHUP, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupCatchupNextUnread") == 0) {
+				process_keys(GROUP_CATCHUP_NEXT_UNREAD, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupDoAutoSel") == 0) {
+				process_keys(GROUP_DO_AUTOSELECT, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupGoto") == 0) {
+				process_keys(GROUP_GOTO, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupListThd") == 0) {
+				process_keys(GROUP_LIST_THREAD, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupMail") == 0) {
+				process_keys(GROUP_MAIL, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupMarkThdRead") == 0) {
+				process_keys(GROUP_MARK_THREAD_READ, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupMarkArtUnread") == 0) {
+				process_keys(GROUP_MARK_ARTICLE_UNREAD, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupMarkThdUnread") == 0) {
+				process_keys(GROUP_MARK_THREAD_UNREAD, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupMarkUnselArtRead") == 0) {
+				process_keys(GROUP_MARK_UNSELECTED_ARTICLES_READ, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupNextGroup") == 0) {
+				process_keys(GROUP_NEXT_GROUP, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupNextUnreadArt") == 0) {
+				process_keys(GROUP_NEXT_UNREAD_ARTICLE, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupNextUnreadArtOrGrp") == 0) {
+				process_keys(GROUP_NEXT_UNREAD_ARTICLE_OR_GROUP, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupPrevGroup") == 0) {
+				process_keys(GROUP_PREVIOUS_GROUP, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupPrevUnreadArt") == 0) {
+				process_keys(GROUP_PREVIOUS_UNREAD_ARTICLE, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupReadBasenote") == 0) {
+				process_keys(GROUP_READ_BASENOTE, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupRepost") == 0) {
+				process_keys(GROUP_REPOST, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupReverseSel") == 0) {
+				process_keys(GROUP_REVERSE_SELECTIONS, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupSave") == 0) {
+				process_keys(GROUP_SAVE, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupSelPattern") == 0) {
+				process_keys(GROUP_SELECT_PATTERN, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupSelThd") == 0) {
+				process_keys(GROUP_SELECT_THREAD, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupSelThdIfUnreadSelected") == 0) {
+				process_keys(GROUP_SELECT_THREAD_IF_UNREAD_SELECTED, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupTag") == 0) {
+				process_keys(GROUP_TAG, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupTagParts") == 0) {
+				process_keys(GROUP_TAG_PARTS, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupToggleGetartLimit") == 0) {
+				process_keys(GROUP_TOGGLE_GET_ARTICLES_LIMIT, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupToggleReadUnread") == 0) {
+				process_keys(GROUP_TOGGLE_READ_UNREAD, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupToggleSubjDisplay") == 0) {
+				process_keys(GROUP_TOGGLE_SUBJECT_DISPLAY, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupToggleThdSel") == 0) {
+				process_keys(GROUP_TOGGLE_SELECT_THREAD, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupToggleThreading") == 0) {
+				process_keys(GROUP_TOGGLE_THREADING, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupUndoSel") == 0) {
+				process_keys(GROUP_UNDO_SELECTIONS, keys, &group_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "GroupUntag") == 0) {
+				process_keys(GROUP_UNTAG, keys, &group_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'H':
+			if (strcmp(keyname, "Help") == 0) {
+				process_keys(GLOBAL_HELP, keys, &group_keys);
+				process_keys(GLOBAL_HELP, keys, &page_keys);
+				process_keys(GLOBAL_HELP, keys, &select_keys);
+				process_keys(GLOBAL_HELP, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "HelpFirstPage") == 0) {
+				process_keys(GLOBAL_FIRST_PAGE, keys, &info_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "HelpLastPage") == 0) {
+				process_keys(GLOBAL_LAST_PAGE, keys, &info_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'L':
+			if (strcmp(keyname, "LastPage") == 0) {
+				process_keys(GLOBAL_LAST_PAGE, keys, &group_keys);
+				process_keys(GLOBAL_LAST_PAGE, keys, &info_keys);
+				process_keys(GLOBAL_LAST_PAGE, keys, &option_menu_keys);
+				process_keys(GLOBAL_LAST_PAGE, keys, &page_keys);
+				process_keys(GLOBAL_LAST_PAGE, keys, &select_keys);
+				process_keys(GLOBAL_LAST_PAGE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "LastViewed") == 0) {
+				process_keys(GLOBAL_LAST_VIEWED, keys, &group_keys);
+				process_keys(GLOBAL_LAST_VIEWED, keys, &page_keys);
+				process_keys(GLOBAL_LAST_VIEWED, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "LookupMessage") == 0) {
+				process_keys(GLOBAL_LOOKUP_MESSAGEID, keys, &group_keys);
+				process_keys(GLOBAL_LOOKUP_MESSAGEID, keys, &page_keys);
+				process_keys(GLOBAL_LOOKUP_MESSAGEID, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'M':
+			if (strcmp(keyname, "MarkReadCur") == 0) {
+				process_keys(MARK_READ_CURRENT, keys, &mark_read_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "MarkReadTag") == 0) {
+				process_keys(MARK_READ_TAGGED, keys, &mark_read_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "MenuFilterKill") == 0) {
+				process_keys(GLOBAL_MENU_FILTER_KILL, keys, &group_keys);
+				process_keys(GLOBAL_MENU_FILTER_KILL, keys, &page_keys);
+				process_keys(GLOBAL_MENU_FILTER_KILL, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "MenuFilterSelect") == 0) {
+				process_keys(GLOBAL_MENU_FILTER_SELECT, keys, &group_keys);
+				process_keys(GLOBAL_MENU_FILTER_SELECT, keys, &page_keys);
+				process_keys(GLOBAL_MENU_FILTER_SELECT, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'O':
+			if (strcmp(keyname, "OptionMenu") == 0) {
+				process_keys(GLOBAL_OPTION_MENU, keys, &group_keys);
+				process_keys(GLOBAL_OPTION_MENU, keys, &page_keys);
+				process_keys(GLOBAL_OPTION_MENU, keys, &post_edit_ext_keys);
+				process_keys(GLOBAL_OPTION_MENU, keys, &post_post_keys);
+				process_keys(GLOBAL_OPTION_MENU, keys, &select_keys);
+				process_keys(GLOBAL_OPTION_MENU, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'P':
+			if (strcmp(keyname, "PageAutoSave") == 0) {
+				process_keys(PAGE_AUTOSAVE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageBotThd") == 0) {
+				process_keys(PAGE_BOTTOM_THREAD, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageCancel") == 0) {
+				process_keys(PAGE_CANCEL, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageCatchup") == 0) {
+				process_keys(PAGE_CATCHUP, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageCatchupNextUnread") == 0) {
+				process_keys(PAGE_CATCHUP_NEXT_UNREAD, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageDown") == 0) {
+				process_keys(GLOBAL_PAGE_DOWN, keys, &group_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &info_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &option_menu_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &page_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &select_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageDown3") == 0) {
+				process_keys(GLOBAL_PAGE_DOWN, keys, &group_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &info_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &option_menu_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &select_keys);
+				process_keys(GLOBAL_PAGE_DOWN, keys, &thread_keys);
+				process_keys(PAGE_PAGE_DOWN3, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageEditArticle") == 0) {
+				process_keys(PAGE_EDIT_ARTICLE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageFirstPage") == 0) {
+				process_keys(GLOBAL_FIRST_PAGE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageFollowup") == 0) {
+				process_keys(PAGE_FOLLOWUP, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageFollowupQuote") == 0) {
+				process_keys(PAGE_FOLLOWUP_QUOTE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageFollowupQuoteHeaders") == 0) {
+				process_keys(PAGE_FOLLOWUP_QUOTE_HEADERS, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageGotoParent") == 0) {
+				process_keys(PAGE_GOTO_PARENT, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageGroupSel") == 0) {
+				process_keys(PAGE_GROUP_SELECT, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageLastPage") == 0) {
+				process_keys(GLOBAL_LAST_PAGE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageListThd") == 0) {
+				process_keys(PAGE_LIST_THREAD, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageKillThd") == 0) {
+				process_keys(PAGE_MARK_THREAD_READ, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageMail") == 0) {
+				process_keys(PAGE_MAIL, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageMarkArtUnread") == 0) {
+				process_keys(PAGE_MARK_ARTICLE_UNREAD, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageMarkThdUnread") == 0) {
+				process_keys(PAGE_MARK_THREAD_UNREAD, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageNextArt") == 0) {
+				process_keys(PAGE_NEXT_ARTICLE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageNextThd") == 0) {
+				process_keys(PAGE_NEXT_THREAD, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageNextUnread") == 0) {
+				process_keys(PAGE_NEXT_UNREAD, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageNextUnreadArt") == 0) {
+				process_keys(PAGE_NEXT_UNREAD_ARTICLE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PagePGPCheckArticle") == 0) {
+#ifdef HAVE_PGP_GPG
+				process_keys(PAGE_PGP_CHECK_ARTICLE, keys, &page_keys);
+#endif /* HAVE_PGP_GPG */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PagePrevArt") == 0) {
+				process_keys(PAGE_PREVIOUS_ARTICLE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PagePrevUnreadArt") == 0) {
+				process_keys(PAGE_PREVIOUS_UNREAD_ARTICLE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageReply") == 0) {
+				process_keys(PAGE_REPLY, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageReplyQuote") == 0) {
+				process_keys(PAGE_REPLY_QUOTE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageReplyQuoteHeaders") == 0) {
+				process_keys(PAGE_REPLY_QUOTE_HEADERS, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageRepost") == 0) {
+				process_keys(PAGE_REPOST, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageReveal") == 0) {
+				process_keys(PAGE_REVEAL, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageSave") == 0) {
+				process_keys(PAGE_SAVE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageSkipIncludedText") == 0) {
+				process_keys(PAGE_SKIP_INCLUDED_TEXT, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageTag") == 0) {
+				process_keys(PAGE_TAG, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageTopThd") == 0) {
+				process_keys(PAGE_TOP_THREAD, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageToggleHeaders") == 0) {
+				process_keys(PAGE_TOGGLE_HEADERS, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageToggleHighlight") == 0) {
+				process_keys(PAGE_TOGGLE_HIGHLIGHTING, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageToggleRot") == 0) {
+				process_keys(PAGE_TOGGLE_ROT13, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageToggleTabs") == 0) {
+				process_keys(PAGE_TOGGLE_TABS, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageToggleTex2iso") == 0) {
+				process_keys(PAGE_TOGGLE_TEX2ISO, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageToggleUue") == 0) {
+				process_keys(PAGE_TOGGLE_UUE, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageUp") == 0) {
+				process_keys(GLOBAL_PAGE_UP, keys, &group_keys);
+				process_keys(GLOBAL_PAGE_UP, keys, &info_keys);
+				process_keys(GLOBAL_PAGE_UP, keys, &option_menu_keys);
+				process_keys(GLOBAL_PAGE_UP, keys, &page_keys);
+				process_keys(GLOBAL_PAGE_UP, keys, &select_keys);
+				process_keys(GLOBAL_PAGE_UP, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageViewAttach") == 0) {
+				process_keys(PAGE_VIEW_ATTACHMENTS, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PageViewUrl") == 0) {
+				process_keys(PAGE_VIEW_URL, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PgpEncrypt") == 0) {
+#ifdef HAVE_PGP_GPG
+				process_keys(PGP_KEY_ENCRYPT, keys, &pgp_mail_keys);
+#endif /* HAVE_PGP_GPG */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PgpEncSign") == 0) {
+#ifdef HAVE_PGP_GPG
+				process_keys(PGP_KEY_ENCRYPT_SIGN, keys, &pgp_mail_keys);
+#endif /* HAVE_PGP_GPG */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PgpIncludekey") == 0) {
+#ifdef HAVE_PGP_GPG
+				process_keys(PGP_INCLUDE_KEY, keys, &pgp_news_keys);
+#endif /* HAVE_PGP_GPG */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PgpSign") == 0) {
+#ifdef HAVE_PGP_GPG
+				process_keys(PGP_KEY_SIGN, keys, &pgp_news_keys);
+				process_keys(PGP_KEY_SIGN, keys, &pgp_mail_keys);
+#endif /* HAVE_PGP_GPG */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "Pipe") == 0) {
+				process_keys(GLOBAL_PIPE, keys, &group_keys);
+				process_keys(GLOBAL_PIPE, keys, &page_keys);
+				process_keys(GLOBAL_PIPE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "Post") == 0) {
+				process_keys(GLOBAL_POST, keys, &group_keys);
+				process_keys(GLOBAL_POST, keys, &page_keys);
+				process_keys(GLOBAL_POST, keys, &post_ignore_fupto_keys);
+				process_keys(GLOBAL_POST, keys, &post_mail_fup_keys);
+				process_keys(GLOBAL_POST, keys, &post_post_keys);
+				process_keys(GLOBAL_POST, keys, &select_keys);
+				process_keys(GLOBAL_POST, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostAbort") == 0) {
+				process_keys(POST_ABORT, keys, &post_continue_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostCancel") == 0) {
+				process_keys(POST_CANCEL, keys, &post_cancel_keys);
+				process_keys(POST_CANCEL, keys, &post_delete_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostContinue") == 0) {
+				process_keys(POST_CONTINUE, keys, &post_continue_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostEdit") == 0) {
+				process_keys(POST_CANCEL, keys, &post_cancel_keys);
+				process_keys(POST_EDIT, keys, &post_edit_keys);
+				process_keys(POST_EDIT, keys, &post_edit_ext_keys);
+				process_keys(POST_EDIT, keys, &post_post_keys);
+				process_keys(POST_EDIT, keys, &post_send_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostIgnore") == 0) {
+				process_keys(POST_IGNORE_FUPTO, keys, &post_ignore_fupto_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostIspell") == 0) {
+#ifdef HAVE_ISPELL
+				process_keys(POST_ISPELL, keys, &post_post_keys);
+				process_keys(POST_ISPELL, keys, &post_send_keys);
+#endif /* HAVE_ISPELL */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostMail") == 0) {
+				process_keys(POST_MAIL, keys, &post_mail_fup_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostPGP") == 0) {
+#ifdef HAVE_PGP_GPG
+				process_keys(POST_PGP, keys, &post_post_keys);
+				process_keys(POST_PGP, keys, &post_send_keys);
+#endif /* HAVE_PGP_GPG */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostponeAll") == 0) {
+				process_keys(POSTPONE_ALL, keys, &post_postpone_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "Postponed") == 0) {
+				process_keys(GLOBAL_POSTPONED, keys, &group_keys);
+				process_keys(GLOBAL_POSTPONED, keys, &page_keys);
+				process_keys(GLOBAL_POSTPONED, keys, &select_keys);
+				process_keys(GLOBAL_POSTPONED, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostponeOverride") == 0) {
+				process_keys(POSTPONE_OVERRIDE, keys, &post_postpone_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostPost") == 0) {
+				process_keys(GLOBAL_POST, keys, &post_ignore_fupto_keys);
+				process_keys(GLOBAL_POST, keys, &post_mail_fup_keys);
+				process_keys(GLOBAL_POST, keys, &post_post_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostPostpone") == 0) {
+				process_keys(POST_POSTPONE, keys, &post_edit_keys);
+				process_keys(POST_POSTPONE, keys, &post_post_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostSend") == 0) {
+				process_keys(POST_SEND, keys, &post_send_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PostSupersede") == 0) {
+				process_keys(POST_SUPERSEDE, keys, &post_delete_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PProcNo") == 0) {
+				process_keys(POSTPROCESS_NO, keys, &feed_post_process_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PProcShar") == 0) {
+				process_keys(POSTPROCESS_SHAR, keys, &feed_post_process_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PProcYes") == 0) {
+				process_keys(POSTPROCESS_YES, keys, &feed_post_process_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "Print") == 0) {
+#ifndef DISABLE_PRINTING
+				process_keys(GLOBAL_PRINT, keys, &group_keys);
+				process_keys(GLOBAL_PRINT, keys, &page_keys);
+				process_keys(GLOBAL_PRINT, keys, &thread_keys);
+#endif /* !DISABLE_PRINTING */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PromptNo") == 0) {
+				process_keys(PROMPT_NO, keys, &post_postpone_keys);
+				process_keys(PROMPT_NO, keys, &prompt_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "PromptYes") == 0) {
+				process_keys(PROMPT_YES, keys, &post_postpone_keys);
+				process_keys(PROMPT_YES, keys, &prompt_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'Q':
+			if (strcmp(keyname, "QuickFilterKill") == 0) {
+				process_keys(GLOBAL_QUICK_FILTER_KILL, keys, &group_keys);
+				process_keys(GLOBAL_QUICK_FILTER_KILL, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "QuickFilterSelect") == 0) {
+				process_keys(GLOBAL_QUICK_FILTER_SELECT, keys, &group_keys);
+				process_keys(GLOBAL_QUICK_FILTER_SELECT, keys, &page_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "Quit") == 0) {
+				process_keys(GLOBAL_QUIT, keys, &feed_post_process_keys);
+				process_keys(GLOBAL_QUIT, keys, &feed_supersede_article_keys);
+				process_keys(GLOBAL_QUIT, keys, &feed_type_keys);
+				process_keys(GLOBAL_QUIT, keys, &filter_keys);
+				process_keys(GLOBAL_QUIT, keys, &group_keys);
+				process_keys(GLOBAL_QUIT, keys, &info_keys);
+				process_keys(GLOBAL_QUIT, keys, &mark_read_keys);
+				process_keys(GLOBAL_QUIT, keys, &option_menu_keys);
+				process_keys(GLOBAL_QUIT, keys, &page_keys);
+#ifdef HAVE_PGP_GPG
+				process_keys(GLOBAL_QUIT, keys, &pgp_mail_keys);
+				process_keys(GLOBAL_QUIT, keys, &pgp_news_keys);
+#endif /* HAVE_PGP_GPG */
+				process_keys(GLOBAL_QUIT, keys, &post_cancel_keys);
+				process_keys(GLOBAL_QUIT, keys, &post_delete_keys);
+				process_keys(GLOBAL_QUIT, keys, &post_edit_keys);
+				process_keys(GLOBAL_QUIT, keys, &post_edit_ext_keys);
+				process_keys(GLOBAL_QUIT, keys, &post_ignore_fupto_keys);
+				process_keys(GLOBAL_QUIT, keys, &post_mail_fup_keys);
+				process_keys(GLOBAL_QUIT, keys, &post_post_keys);
+				process_keys(GLOBAL_QUIT, keys, &post_postpone_keys);
+				process_keys(GLOBAL_QUIT, keys, &post_send_keys);
+				process_keys(GLOBAL_QUIT, keys, &prompt_keys);
+				process_keys(GLOBAL_QUIT, keys, &save_append_overwrite_keys);
+				process_keys(GLOBAL_QUIT, keys, &select_keys);
+				process_keys(GLOBAL_QUIT, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "QuitTin") == 0) {
+				process_keys(GLOBAL_QUIT_TIN, keys, &group_keys);
+				process_keys(GLOBAL_QUIT_TIN, keys, &page_keys);
+				process_keys(GLOBAL_QUIT_TIN, keys, &select_keys);
+				process_keys(GLOBAL_QUIT_TIN, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'R':
+			if (strcmp(keyname, "RedrawScr") == 0) {
+				process_keys(GLOBAL_REDRAW_SCREEN, keys, &group_keys);
+				process_keys(GLOBAL_REDRAW_SCREEN, keys, &option_menu_keys);
+				process_keys(GLOBAL_REDRAW_SCREEN, keys, &page_keys);
+				process_keys(GLOBAL_REDRAW_SCREEN, keys, &select_keys);
+				process_keys(GLOBAL_REDRAW_SCREEN, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'S':
+			if (strcmp(keyname, "SaveAppendFile") == 0) {
+				process_keys(SAVE_APPEND_FILE, keys, &save_append_overwrite_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SaveOverwriteFile") == 0) {
+				process_keys(SAVE_OVERWRITE_FILE, keys, &save_append_overwrite_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ScrollDown") == 0) {
+				process_keys(GLOBAL_SCROLL_DOWN, keys, &group_keys);
+				process_keys(GLOBAL_SCROLL_DOWN, keys, &option_menu_keys);
+				process_keys(GLOBAL_SCROLL_DOWN, keys, &select_keys);
+				process_keys(GLOBAL_SCROLL_DOWN, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ScrollUp") == 0) {
+				process_keys(GLOBAL_SCROLL_UP, keys, &group_keys);
+				process_keys(GLOBAL_SCROLL_UP, keys, &option_menu_keys);
+				process_keys(GLOBAL_SCROLL_UP, keys, &select_keys);
+				process_keys(GLOBAL_SCROLL_UP, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SearchAuthB") == 0) {
+				process_keys(GLOBAL_SEARCH_AUTHOR_BACKWARD, keys, &group_keys);
+				process_keys(GLOBAL_SEARCH_AUTHOR_BACKWARD, keys, &page_keys);
+				process_keys(GLOBAL_SEARCH_AUTHOR_BACKWARD, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SearchAuthF") == 0) {
+				process_keys(GLOBAL_SEARCH_AUTHOR_FORWARD, keys, &group_keys);
+				process_keys(GLOBAL_SEARCH_AUTHOR_FORWARD, keys, &page_keys);
+				process_keys(GLOBAL_SEARCH_AUTHOR_FORWARD, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SearchBody") == 0) {
+				process_keys(GLOBAL_SEARCH_BODY, keys, &group_keys);
+				process_keys(GLOBAL_SEARCH_BODY, keys, &page_keys);
+				process_keys(GLOBAL_SEARCH_BODY, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SearchRepeat") == 0) {
+				process_keys(GLOBAL_SEARCH_REPEAT, keys, &group_keys);
+				process_keys(GLOBAL_SEARCH_REPEAT, keys, &info_keys);
+				process_keys(GLOBAL_SEARCH_REPEAT, keys, &option_menu_keys);
+				process_keys(GLOBAL_SEARCH_REPEAT, keys, &page_keys);
+				process_keys(GLOBAL_SEARCH_REPEAT, keys, &select_keys);
+				process_keys(GLOBAL_SEARCH_REPEAT, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SearchSubjB") == 0) {
+				process_keys(GLOBAL_SEARCH_SUBJECT_BACKWARD, keys, &group_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_BACKWARD, keys, &info_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_BACKWARD, keys, &option_menu_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_BACKWARD, keys, &page_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_BACKWARD, keys, &select_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_BACKWARD, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SearchSubjF") == 0) {
+				process_keys(GLOBAL_SEARCH_SUBJECT_FORWARD, keys, &group_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_FORWARD, keys, &info_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_FORWARD, keys, &option_menu_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_FORWARD, keys, &page_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_FORWARD, keys, &select_keys);
+				process_keys(GLOBAL_SEARCH_SUBJECT_FORWARD, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectBugReport") == 0) {
+				process_keys(GLOBAL_BUGREPORT, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectCatchup") == 0) {
+				process_keys(SELECT_CATCHUP, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectCatchupNextUnread") == 0) {
+				process_keys(SELECT_CATCHUP_NEXT_UNREAD, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectEnterNextUnreadGrp") == 0) {
+				process_keys(SELECT_ENTER_NEXT_UNREAD_GROUP, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectGoto") == 0) {
+				process_keys(SELECT_GOTO, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectMarkGrpUnread") == 0) {
+				process_keys(SELECT_MARK_GROUP_UNREAD, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectMoveGrp") == 0) {
+				process_keys(SELECT_MOVE_GROUP, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectNextUnreadGrp") == 0) {
+				process_keys(SELECT_NEXT_UNREAD_GROUP, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectQuitNoWrite") == 0) {
+				process_keys(SELECT_QUIT_NO_WRITE, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectReadGrp") == 0) {
+				process_keys(SELECT_ENTER_GROUP, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectResetNewsrc") == 0) {
+				process_keys(SELECT_RESET_NEWSRC, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectSortActive") == 0) {
+				process_keys(SELECT_SORT_ACTIVE, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectSubscribe") == 0) {
+				process_keys(SELECT_SUBSCRIBE, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectSubscribePat") == 0) {
+				process_keys(SELECT_SUBSCRIBE_PATTERN, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectSyncWithActive") == 0) {
+				process_keys(SELECT_SYNC_WITH_ACTIVE, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectToggleDescriptions") == 0) {
+				process_keys(SELECT_TOGGLE_DESCRIPTIONS, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectToggleReadDisplay") == 0) {
+				process_keys(SELECT_TOGGLE_READ_DISPLAY, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectUnsubscribe") == 0) {
+				process_keys(SELECT_UNSUBSCRIBE, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectUnsubscribePat") == 0) {
+				process_keys(SELECT_UNSUBSCRIBE_PATTERN, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SelectYankActive") == 0) {
+				process_keys(SELECT_YANK_ACTIVE, keys, &select_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "SetRange") == 0) {
+				process_keys(GLOBAL_SET_RANGE, keys, &group_keys);
+				process_keys(GLOBAL_SET_RANGE, keys, &select_keys);
+				process_keys(GLOBAL_SET_RANGE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ShellEscape") == 0) {
+#ifndef NO_SHELL_ESCAPE
+				process_keys(GLOBAL_SHELL_ESCAPE, keys, &group_keys);
+				process_keys(GLOBAL_SHELL_ESCAPE, keys, &page_keys);
+				process_keys(GLOBAL_SHELL_ESCAPE, keys, &select_keys);
+				process_keys(GLOBAL_SHELL_ESCAPE, keys, &thread_keys);
+#endif /* !NO_SHELL_ESCAPE */
+
+				return TRUE;
+			}
+			break;
+
+		case 'T':
+			if (strcmp(keyname, "ThreadAutoSave") == 0) {
+				process_keys(THREAD_AUTOSAVE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadBugReport") == 0) {
+				process_keys(GLOBAL_BUGREPORT, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadCatchup") == 0) {
+				process_keys(THREAD_CATCHUP, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadCatchupNextUnread") == 0) {
+				process_keys(THREAD_CATCHUP_NEXT_UNREAD, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadMail") == 0) {
+				process_keys(THREAD_MAIL, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadMarkArtRead") == 0) {
+				process_keys(THREAD_MARK_ARTICLE_READ, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadMarkArtUnread") == 0) {
+				process_keys(THREAD_MARK_ARTICLE_UNREAD, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadMarkThdUnread") == 0) {
+				process_keys(THREAD_MARK_THREAD_UNREAD, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadReadArt") == 0) {
+				process_keys(THREAD_READ_ARTICLE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadReadNextArtOrThread") == 0) {
+				process_keys(THREAD_READ_NEXT_ARTICLE_OR_THREAD, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadReverseSel") == 0) {
+				process_keys(THREAD_REVERSE_SELECTIONS, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadSave") == 0) {
+				process_keys(THREAD_SAVE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadSelArt") == 0) {
+				process_keys(THREAD_SELECT_ARTICLE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadTag") == 0) {
+				process_keys(THREAD_TAG, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadToggleArtSel") == 0) {
+				process_keys(THREAD_TOGGLE_ARTICLE_SELECTION, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadToggleSubjDisplay") == 0) {
+				process_keys(THREAD_TOGGLE_SUBJECT_DISPLAY, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadUndoSel") == 0) {
+				process_keys(THREAD_UNDO_SELECTIONS, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ThreadUntag") == 0) {
+				process_keys(THREAD_UNTAG, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ToggleColor") == 0) {
+#ifdef HAVE_COLOR
+				process_keys(GLOBAL_TOGGLE_COLOR, keys, &group_keys);
+				process_keys(GLOBAL_TOGGLE_COLOR, keys, &page_keys);
+				process_keys(GLOBAL_TOGGLE_COLOR, keys, &select_keys);
+				process_keys(GLOBAL_TOGGLE_COLOR, keys, &thread_keys);
+#endif /* HAVE_COLOR */
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ToggleHelpDisplay") == 0) {
+				process_keys(GLOBAL_TOGGLE_HELP_DISPLAY, keys, &group_keys);
+				process_keys(GLOBAL_TOGGLE_HELP_DISPLAY, keys, &info_keys);
+				process_keys(GLOBAL_TOGGLE_HELP_DISPLAY, keys, &page_keys);
+				process_keys(GLOBAL_TOGGLE_HELP_DISPLAY, keys, &select_keys);
+				process_keys(GLOBAL_TOGGLE_HELP_DISPLAY, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ToggleInfoLastLine") == 0) {
+				process_keys(GLOBAL_TOGGLE_INFO_LAST_LINE, keys, &group_keys);
+				process_keys(GLOBAL_TOGGLE_INFO_LAST_LINE, keys, &page_keys);
+				process_keys(GLOBAL_TOGGLE_INFO_LAST_LINE, keys, &select_keys);
+				process_keys(GLOBAL_TOGGLE_INFO_LAST_LINE, keys, &thread_keys);
+
+				return TRUE;
+			}
+			if (strcmp(keyname, "ToggleInverseVideo") == 0) {
+				process_keys(GLOBAL_TOGGLE_INVERSE_VIDEO, keys, &group_keys);
+				process_keys(GLOBAL_TOGGLE_INVERSE_VIDEO, keys, &page_keys);
+				process_keys(GLOBAL_TOGGLE_INVERSE_VIDEO, keys, &select_keys);
+				process_keys(GLOBAL_TOGGLE_INVERSE_VIDEO, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'U':
+			if (strcmp(keyname, "Up") == 0) {
+				process_keys(GLOBAL_LINE_UP, keys, &group_keys);
+				process_keys(GLOBAL_LINE_UP, keys, &info_keys);
+				process_keys(GLOBAL_LINE_UP, keys, &option_menu_keys);
+				process_keys(GLOBAL_LINE_UP, keys, &page_keys);
+				process_keys(GLOBAL_LINE_UP, keys, &select_keys);
+				process_keys(GLOBAL_LINE_UP, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		case 'V':
+			if (strcmp(keyname, "Version") == 0) {
+				process_keys(GLOBAL_VERSION, keys, &group_keys);
+				process_keys(GLOBAL_VERSION, keys, &page_keys);
+				process_keys(GLOBAL_VERSION, keys, &select_keys);
+				process_keys(GLOBAL_VERSION, keys, &thread_keys);
+
+				return TRUE;
+			}
+			break;
+
+		default:
+			break;
+	}
+
+	return FALSE;
+}
+
+
+/*
+ * upgrades the keymap file to the current version
+ */
+static void
+upgrade_keymap_file(
+	char *old)
+{
+	FILE *oldfp = (FILE *) 0, *newfp = (FILE *) 0;
+	char *line, *backup;
+	const char *keyname, *keydef;
+	char new[NAME_LEN + 1], buf[LEN];
+	char *config_select[2] = { NULL, NULL };
+	char *edit_filter[2] = { NULL, NULL };
+	char *down[2] = { NULL, NULL };
+	char *groupreadbasenote[2] = { NULL, NULL };
+	char *menu_filter_kill[3] = { NULL, NULL, NULL };
+	char *menu_filter_select[3] = { NULL, NULL, NULL };
+	char *pagedown[2] = { NULL, NULL };
+	char *pagenextthd[2] = { NULL, NULL };
+	char *pageup[3] = { NULL, NULL, NULL };
+	char *postponed[2] = { NULL, NULL };
+	char *postpost[3] = { NULL, NULL, NULL };
+	char *postsend[2] = { NULL, NULL };
+	char *quick_filter_kill[2] = { NULL, NULL };
+	char *quick_filter_select[2] = { NULL, NULL };
+	char *selectentergroup[2] = { NULL, NULL };
+	char *selectmarkgrpunread[2] = { NULL, NULL };
+	char *selectreadgrp[2] = { NULL, NULL };
+	char *threadreadart[2] = { NULL, NULL };
+	char *up[2] = { NULL, NULL };
+
+	if ((oldfp = fopen(old, "r")) == NULL)
+		return;
+
+	snprintf(new, sizeof(new), "%s.%d", old, (int) process_id);
+	if ((newfp = fopen(new, "w")) == NULL) {
+		fclose(oldfp);
+		return;
+	}
+	fprintf(newfp, "# Keymap file V%s for the TIN newsreader\n", KEYMAP_VERSION);
+
+	forever {
+		line = fgets(buf, sizeof(buf), oldfp);
+
+		if (line == NULL || line[0] == '\n') {
+			/*
+			 * we are at the end of a block or file
+			 * write out the merged lines (if available)
+			 */
+			if (config_select[0] || config_select[1]) {
+				fprintf(newfp, "ConfigSelect\t\t");
+				if (config_select[0])
+					fprintf(newfp, "\t%s", config_select[0]);
+				if (config_select[1])
+					fprintf(newfp, "\t%s", config_select[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(config_select[0]);
+				FreeAndNull(config_select[1]);
+			}
+			if (down[0] || down[1]) {
+				fprintf(newfp, "Down\t\t\t");
+				if (down[0])
+					fprintf(newfp, "\t%s", down[0]);
+				if (down[1])
+					fprintf(newfp, "\t%s", down[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(down[0]);
+				FreeAndNull(down[1]);
+			}
+			if (groupreadbasenote[0] || groupreadbasenote[1]) {
+				fprintf(newfp, "GroupReadBasenote\t");
+				if (groupreadbasenote[0])
+					fprintf(newfp, "\t%s", groupreadbasenote[0]);
+				if (groupreadbasenote[1])
+					fprintf(newfp, "\t%s", groupreadbasenote[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(groupreadbasenote[0]);
+				FreeAndNull(groupreadbasenote[1]);
+			}
+			if (pagedown[0] || pagedown[1]) {
+				fprintf(newfp, "PageDown\t\t");
+				if (pagedown[0])
+					fprintf(newfp, "\t%s", pagedown[0]);
+				if (pagedown[1])
+					fprintf(newfp, "\t%s", pagedown[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(pagedown[0]);
+				FreeAndNull(pagedown[1]);
+			}
+			if (pagenextthd[0] || pagenextthd[1]) {
+				fprintf(newfp, "PageNextThd\t\t");
+				if (pagenextthd[0])
+					fprintf(newfp, "\t%s", pagenextthd[0]);
+				if (pagenextthd[1])
+					fprintf(newfp, "\t%s", pagenextthd[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(pagenextthd[0]);
+				FreeAndNull(pagenextthd[1]);
+			}
+			if (pageup[0] || pageup[1] || pageup[2]) {
+				fprintf(newfp, "PageUp\t\t\t");
+				if (pageup[0])
+					fprintf(newfp, "\t%s", pageup[0]);
+				if (pageup[1])
+					fprintf(newfp, "\t%s", pageup[1]);
+				if (pageup[2])
+					fprintf(newfp, "\t%s", pageup[2]);
+				fprintf(newfp, "\n");
+				FreeAndNull(pageup[0]);
+				FreeAndNull(pageup[1]);
+				FreeAndNull(pageup[2]);
+			}
+			if (postponed[0] || postponed[1]) {
+				fprintf(newfp, "Postponed\t\t");
+				if (postponed[0])
+					fprintf(newfp, "\t%s", postponed[0]);
+				if (postponed[1])
+					fprintf(newfp, "\t%s", postponed[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(postponed[0]);
+				FreeAndNull(postponed[1]);
+			}
+			if (postpost[0] || postpost[1] || postpost[2]) {
+				fprintf(newfp, "PostPost\t\t");
+				if (postpost[0])
+					fprintf(newfp, "\t%s", postpost[0]);
+				if (postpost[1])
+					fprintf(newfp, "\t%s", postpost[1]);
+				if (postpost[2])
+					fprintf(newfp, "\t%s", postpost[2]);
+				fprintf(newfp, "\n");
+				FreeAndNull(postpost[0]);
+				FreeAndNull(postpost[1]);
+				FreeAndNull(postpost[2]);
+			}
+			if (postsend[0] || postsend[1]) {
+				fprintf(newfp, "PostSend\t\t");
+				if (postsend[0])
+					fprintf(newfp, "\t%s", postsend[0]);
+				if (postsend[1])
+					fprintf(newfp, "\t%s", postsend[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(postsend[0]);
+				FreeAndNull(postsend[1]);
+			}
+			if (selectentergroup[0] || selectentergroup[1]) {
+				fprintf(newfp, "SelectEnterNextUnreadGrp");
+				if (selectentergroup[0])
+					fprintf(newfp, "\t%s", selectentergroup[0]);
+				if (selectentergroup[1])
+					fprintf(newfp, "\t%s", selectentergroup[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(selectentergroup[0]);
+				FreeAndNull(selectentergroup[1]);
+			}
+			if (selectmarkgrpunread[0] || selectmarkgrpunread[1]) {
+				fprintf(newfp, "SelectMarkGrpUnread\t");
+				if (selectmarkgrpunread[0])
+					fprintf(newfp, "\t%s", selectmarkgrpunread[0]);
+				if (selectmarkgrpunread[1])
+					fprintf(newfp, "\t%s", selectmarkgrpunread[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(selectmarkgrpunread[0]);
+				FreeAndNull(selectmarkgrpunread[1]);
+			}
+			if (selectreadgrp[0] || selectreadgrp[1]) {
+				fprintf(newfp, "SelectReadGrp\t\t");
+				if (selectreadgrp[0])
+					fprintf(newfp, "\t%s", selectreadgrp[0]);
+				if (selectreadgrp[1])
+					fprintf(newfp, "\t%s", selectreadgrp[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(selectreadgrp[0]);
+				FreeAndNull(selectreadgrp[1]);
+			}
+			if (threadreadart[0] || threadreadart[1]) {
+				fprintf(newfp, "ThreadReadArt\t\t");
+				if (threadreadart[0])
+					fprintf(newfp, "\t%s", threadreadart[0]);
+				if (threadreadart[1])
+					fprintf(newfp, "\t%s", threadreadart[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(threadreadart[0]);
+				FreeAndNull(threadreadart[1]);
+			}
+			if (up[0] || up[1]) {
+				fprintf(newfp, "Up\t\t\t");
+				if (up[0])
+					fprintf(newfp, "\t%s", up[0]);
+				if (up[1])
+					fprintf(newfp, "\t%s", up[1]);
+				fprintf(newfp, "\n");
+				FreeAndNull(up[0]);
+				FreeAndNull(up[1]);
+			}
+			if (line == NULL)
+				break;	/* jump out of the while loop */
+			else {
+				fprintf(newfp, "\n");
+				continue;
+			}
+		}
+
+		if (line[0] == '#') {
+			if (strncmp(line, "# Keymap file V", strlen("# Keymap file V")) != 0)
+				fprintf(newfp, "%s", line);
+			continue;
+		}
+
+		backup = my_strdup(line);
+
+		if ((keyname = strsep(&line, KEYSEPS)) == NULL) {
+			free(backup);
+			continue;
+		}
+		if ((keydef = str_trim(line)) == NULL)
+			keydef = "";
+
+		switch (keyname[0]) {
+			case 'C':
+				if (strcmp(keyname, "ConfigFirstPage2") == 0)
+					fprintf(newfp, "ConfigFirstPage\t\t\t%s\n", keydef);
+				else if (strcmp(keyname, "ConfigLastPage2") == 0)
+					fprintf(newfp, "ConfigLastPage\t\t\t%s\n", keydef);
+				else if (strcmp(keyname, "ConfigSelect") == 0)
+					config_select[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "ConfigSelect2") == 0)
+					config_select[1] = my_strdup(keydef);
+				else
+					fprintf(newfp, "%s", backup);
+				break;
+
+			case 'D':
+				if (strcmp(keyname, "Down") == 0)
+					down[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "Down2") == 0)
+					down[1] = my_strdup(keydef);
+				else
+					fprintf(newfp, "%s", backup);
+				break;
+
+			case 'G':
+				if (strcmp(keyname, "GroupAutoSel") == 0)
+					menu_filter_select[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "GroupQuickAutoSel") == 0)
+					quick_filter_select[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "GroupQuickKill") == 0)
+					quick_filter_kill[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "GroupKill") == 0)
+					menu_filter_kill[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "GroupReadBasenote") == 0)
+					groupreadbasenote[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "GroupReadBasenote2") == 0)
+					groupreadbasenote[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "GroupEditFilter") == 0)
+					edit_filter[0] = my_strdup(keydef);
+				else
+					fprintf(newfp, "%s", backup);
+				break;
+
+			case 'H':
+				if (strcmp(keyname, "HelpFirstPage2") == 0)
+					fprintf(newfp, "HelpFirstPage\t\t\t%s\n", keydef);
+				else if (strcmp(keyname, "HelpLastPage2") == 0)
+					fprintf(newfp, "HelpLastPage\t\t\t%s\n", keydef);
+				else
+					fprintf(newfp, "%s", backup);
+				break;
+
+			case 'N':
+				/* Nrc* got removed */
+				if (strcmp(keyname, "NrctblCreate") == 0)
+					;
+				else if (strcmp(keyname, "NrctblDefault") == 0)
+					;
+				else if (strcmp(keyname, "NrctblAlternative") == 0)
+					;
+				else if (strcmp(keyname, "NrctblQuit") == 0)
+					;
+				else
+					fprintf(newfp, "%s", backup);
+				break;
+
+			case 'P':
+				if (strcmp(keyname, "PageAutoSel") == 0)
+					menu_filter_select[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageQuickAutoSel") == 0)
+					quick_filter_select[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageQuickKill") == 0)
+					quick_filter_kill[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageAutoKill") == 0)
+					menu_filter_kill[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageDown") == 0)
+					pagedown[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageDown2") == 0)
+					pagedown[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageEditFilter") == 0)
+					edit_filter[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageNextThd") == 0)
+					pagenextthd[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageNextThd2") == 0)
+					pagenextthd[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageUp") == 0)
+					pageup[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageUp2") == 0)
+					pageup[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PageUp3") == 0)
+					pageup[2] = my_strdup(keydef);
+				else if (strcmp(keyname, "Postponed") == 0)
+					postponed[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "Postponed2") == 0)
+					postponed[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PostPost") == 0)
+					postpost[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "PostPost2") == 0)
+					postpost[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PostPost3") == 0)
+					postpost[2] = my_strdup(keydef);
+				else if (strcmp(keyname, "PostSend") == 0)
+					postsend[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "PostSend2") == 0)
+					postsend[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "PromptNo") == 0 || strcmp(keyname, "PromptYes") == 0) {
+					if (strlen(keydef) == 1 && islower(keydef[0]))
+						fprintf(newfp, "%s\t\t\t%c\t%c\n", keyname, keydef[0], toupper(keydef[0]));
+					else
+						fprintf(newfp, "%s", backup);
+				} else
+					fprintf(newfp, "%s", backup);
+				break;
+
+			case 'S':
+				if (strcmp(keyname, "SelectEditFilter") == 0)
+					;
+				else if (strcmp(keyname, "SelectEnterNextUnreadGrp") == 0)
+					selectentergroup[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "SelectEnterNextUnreadGrp2") == 0)
+					selectentergroup[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "SelectMarkGrpUnread") == 0)
+					selectmarkgrpunread[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "SelectMarkGrpUnread2") == 0)
+					selectmarkgrpunread[1] = my_strdup(keydef);
+				else if (strcmp(keyname, "SelectReadGrp") == 0)
+					selectreadgrp[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "SelectReadGrp2") == 0)
+					selectreadgrp[1] = my_strdup(keydef);
+				else
+					fprintf(newfp, "%s", backup);
+				break;
+
+			case 'T':
+				if (strcmp(keyname, "ThreadEditFilter") == 0)
+					;
+				else if (strcmp(keyname, "ThreadAutoSel") == 0)
+					menu_filter_select[2] = my_strdup(keydef);
+				else if (strcmp(keyname, "ThreadKill") == 0)
+					menu_filter_kill[2] = my_strdup(keydef);
+				else if (strcmp(keyname, "ThreadReadArt") == 0)
+					threadreadart[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "ThreadReadArt2") == 0)
+					threadreadart[1] = my_strdup(keydef);
+				else
+					fprintf(newfp, "%s", backup);
+				break;
+
+			case 'U':
+				if (strcmp(keyname, "Up") == 0)
+					up[0] = my_strdup(keydef);
+				else if (strcmp(keyname, "Up2") == 0)
+					up[1] = my_strdup(keydef);
+				else
+					fprintf(newfp, "%s", backup);
+				break;
+			default:
+				fprintf(newfp, "%s", backup);
+		}
+		free(backup);
+	}
+	fprintf(newfp, "\n#####\n");
+	/* joined/renamed keys from different sections */
+	if (edit_filter[0] || edit_filter[1]) {
+		fprintf(newfp, "EditFilter\t");
+		if (edit_filter[0])
+			fprintf(newfp, "\t%s", edit_filter[0]);
+		if (edit_filter[1] && edit_filter[0] && strcmp(edit_filter[0], edit_filter[1]))
+			fprintf(newfp, "\t%s", edit_filter[1]);
+		fprintf(newfp, "\n");
+		FreeAndNull(edit_filter[0]);
+		FreeAndNull(edit_filter[1]);
+	}
+	if (menu_filter_kill[0] || menu_filter_kill[1] || menu_filter_kill[2]) {
+		fprintf(newfp, "MenuFilterKill\t");
+		if (menu_filter_kill[0] && menu_filter_kill[1] && !strcmp(menu_filter_kill[0], menu_filter_kill[1]))
+			FreeAndNull(menu_filter_kill[1]);
+		if (menu_filter_kill[0] && menu_filter_kill[2] && !strcmp(menu_filter_kill[0], menu_filter_kill[2]))
+			FreeAndNull(menu_filter_kill[2]);
+		if (menu_filter_kill[1] && menu_filter_kill[2] && !strcmp(menu_filter_kill[1], menu_filter_kill[2]))
+			FreeAndNull(menu_filter_kill[2]);
+		if (menu_filter_kill[0])
+			fprintf(newfp, "\t%s", menu_filter_kill[0]);
+		if (menu_filter_kill[1])
+			fprintf(newfp, "\t%s", menu_filter_kill[1]);
+		if (menu_filter_kill[2])
+			fprintf(newfp, "\t%s", menu_filter_kill[2]);
+		fprintf(newfp, "\n");
+		FreeAndNull(menu_filter_kill[0]);
+		FreeAndNull(menu_filter_kill[1]);
+		FreeAndNull(menu_filter_kill[2]);
+	}
+	if (menu_filter_select[0] || menu_filter_select[1] || menu_filter_select[2]) {
+		fprintf(newfp, "MenuFilterSelect\t");
+		if (menu_filter_select[0] && menu_filter_select[1] && !strcmp(menu_filter_select[0], menu_filter_select[1]))
+			FreeAndNull(menu_filter_select[1]);
+		if (menu_filter_select[0] && menu_filter_select[2] && !strcmp(menu_filter_select[0], menu_filter_select[2]))
+			FreeAndNull(menu_filter_select[2]);
+		if (menu_filter_select[1] && menu_filter_select[2] && !strcmp(menu_filter_select[1], menu_filter_select[2]))
+			FreeAndNull(menu_filter_select[2]);
+		if (menu_filter_select[0])
+			fprintf(newfp, "\t%s", menu_filter_select[0]);
+		if (menu_filter_select[1])
+			fprintf(newfp, "\t%s", menu_filter_select[1]);
+		if (menu_filter_select[2])
+			fprintf(newfp, "\t%s", menu_filter_select[2]);
+		fprintf(newfp, "\n");
+		FreeAndNull(menu_filter_select[0]);
+		FreeAndNull(menu_filter_select[1]);
+		FreeAndNull(menu_filter_select[2]);
+	}
+	if (quick_filter_kill[0] || quick_filter_kill[1]) {
+		fprintf(newfp, "QuickFilterKill\t");
+		if (quick_filter_kill[0])
+			fprintf(newfp, "\t%s", quick_filter_kill[0]);
+		if (quick_filter_kill[1] && quick_filter_kill[0] && strcmp(quick_filter_kill[0], quick_filter_kill[1]))
+			fprintf(newfp, "\t%s", quick_filter_kill[1]);
+		fprintf(newfp, "\n");
+		FreeAndNull(quick_filter_kill[0]);
+		FreeAndNull(quick_filter_kill[1]);
+	}
+	if (quick_filter_select[0] || quick_filter_select[1]) {
+		fprintf(newfp, "QuickFilterSelect\t");
+		if (quick_filter_select[0])
+			fprintf(newfp, "\t%s", quick_filter_select[0]);
+		if (quick_filter_select[1] && quick_filter_select[0] && strcmp(quick_filter_select[0], quick_filter_select[1]))
+			fprintf(newfp, "\t%s", quick_filter_select[1]);
+		fprintf(newfp, "\n");
+		FreeAndNull(quick_filter_select[0]);
+		FreeAndNull(quick_filter_select[1]);
+	}
+	fclose(oldfp);
+	fclose(newfp);
+	rename(new, old);
+	wait_message(0, _(txt_keymap_upgraded), KEYMAP_VERSION);
+	prompt_continue();
+
+	return;
+}
+
+
+/*
+ * add the default key bindings for still free keys
+ */
+static void
+setup_default_keys(
+	void)
+{
+	/* select level */
+	add_global_keys(&select_keys);
+	add_default_key(&select_keys, ctrl('J'), SELECT_ENTER_GROUP);
+	add_default_key(&select_keys, ctrl('M'), SELECT_ENTER_GROUP);
+	add_default_key(&select_keys, ctrl('R'), SELECT_RESET_NEWSRC);
+	add_default_key(&select_keys, 'c', SELECT_CATCHUP);
+	add_default_key(&select_keys, 'd', SELECT_TOGGLE_DESCRIPTIONS);
+	add_default_key(&select_keys, 'g', SELECT_GOTO);
+	add_default_key(&select_keys, 'm', SELECT_MOVE_GROUP);
+	add_default_key(&select_keys, 'n', SELECT_ENTER_NEXT_UNREAD_GROUP);
+	add_default_key(&select_keys, 'r', SELECT_TOGGLE_READ_DISPLAY);
+	add_default_key(&select_keys, 's', SELECT_SUBSCRIBE);
+	add_default_key(&select_keys, 'u', SELECT_UNSUBSCRIBE);
+	add_default_key(&select_keys, 'y', SELECT_YANK_ACTIVE);
+	add_default_key(&select_keys, 'z', SELECT_MARK_GROUP_UNREAD);
+	add_default_key(&select_keys, 'C', SELECT_CATCHUP_NEXT_UNREAD);
+	add_default_key(&select_keys, 'E', GLOBAL_EDIT_FILTER);
+	add_default_key(&select_keys, 'N', SELECT_NEXT_UNREAD_GROUP);
+	add_default_key(&select_keys, 'S', SELECT_SUBSCRIBE_PATTERN);
+	add_default_key(&select_keys, 'U', SELECT_UNSUBSCRIBE_PATTERN);
+	add_default_key(&select_keys, 'X', SELECT_QUIT_NO_WRITE);
+	add_default_key(&select_keys, 'Y', SELECT_SYNC_WITH_ACTIVE);
+	add_default_key(&select_keys, 'Z', SELECT_MARK_GROUP_UNREAD);
+	add_default_key(&select_keys, ' ', GLOBAL_PAGE_DOWN);
+	add_default_key(&select_keys, '.', SELECT_SORT_ACTIVE);
+	add_default_key(&select_keys, '\t', SELECT_ENTER_NEXT_UNREAD_GROUP);
+
+	/* group level */
+	add_global_keys(&group_keys);
+	add_default_key(&group_keys, ctrl('A'), GLOBAL_MENU_FILTER_SELECT);
+	add_default_key(&group_keys, ctrl('J'), GROUP_READ_BASENOTE);
+	add_default_key(&group_keys, ctrl('K'), GLOBAL_MENU_FILTER_KILL);
+	add_default_key(&group_keys, ctrl('M'), GROUP_READ_BASENOTE);
+	add_default_key(&group_keys, 'a', GLOBAL_SEARCH_AUTHOR_FORWARD);
+	add_default_key(&group_keys, 'c', GROUP_CATCHUP);
+	add_default_key(&group_keys, 'd', GROUP_TOGGLE_SUBJECT_DISPLAY);
+	add_default_key(&group_keys, 'g', GROUP_GOTO);
+	add_default_key(&group_keys, 'l', GROUP_LIST_THREAD);
+	add_default_key(&group_keys, 'm', GROUP_MAIL);
+	add_default_key(&group_keys, 'n', GROUP_NEXT_GROUP);
+#ifndef DISABLE_PRINTING
+	add_default_key(&group_keys, 'o', GLOBAL_PRINT);
+#endif /* !DISABLE_PRINTING */
+	add_default_key(&group_keys, 'p', GROUP_PREVIOUS_GROUP);
+	add_default_key(&group_keys, 'r', GROUP_TOGGLE_READ_UNREAD);
+	add_default_key(&group_keys, 's', GROUP_SAVE);
+	add_default_key(&group_keys, 't', GROUP_TAG);
+	add_default_key(&group_keys, 'u', GROUP_TOGGLE_THREADING);
+	add_default_key(&group_keys, 'x', GROUP_REPOST);
+	add_default_key(&group_keys, 'z', GROUP_MARK_ARTICLE_UNREAD);
+	add_default_key(&group_keys, 'A', GLOBAL_SEARCH_AUTHOR_BACKWARD);
+	add_default_key(&group_keys, 'B', GLOBAL_SEARCH_BODY);
+	add_default_key(&group_keys, 'C', GROUP_CATCHUP_NEXT_UNREAD);
+	add_default_key(&group_keys, 'E', GLOBAL_EDIT_FILTER);
+	add_default_key(&group_keys, 'G', GROUP_TOGGLE_GET_ARTICLES_LIMIT);
+	add_default_key(&group_keys, 'K', GROUP_MARK_THREAD_READ);
+	add_default_key(&group_keys, 'L', GLOBAL_LOOKUP_MESSAGEID);
+	add_default_key(&group_keys, 'N', GROUP_NEXT_UNREAD_ARTICLE);
+	add_default_key(&group_keys, 'P', GROUP_PREVIOUS_UNREAD_ARTICLE);
+	add_default_key(&group_keys, 'S', GROUP_AUTOSAVE);
+	add_default_key(&group_keys, 'T', GROUP_TAG_PARTS);
+	add_default_key(&group_keys, 'U', GROUP_UNTAG);
+	add_default_key(&group_keys, 'X', GROUP_MARK_UNSELECTED_ARTICLES_READ);
+	add_default_key(&group_keys, 'Z', GROUP_MARK_THREAD_UNREAD);
+	add_default_key(&group_keys, '\t', GROUP_NEXT_UNREAD_ARTICLE_OR_GROUP);
+	add_default_key(&group_keys, ' ', GLOBAL_PAGE_DOWN);
+	add_default_key(&group_keys, '-', GLOBAL_LAST_VIEWED);
+	add_default_key(&group_keys, '|', GLOBAL_PIPE);
+	add_default_key(&group_keys, '[', GLOBAL_QUICK_FILTER_SELECT);
+	add_default_key(&group_keys, ']', GLOBAL_QUICK_FILTER_KILL);
+	add_default_key(&group_keys, '*', GROUP_SELECT_THREAD);
+	add_default_key(&group_keys, '.', GROUP_TOGGLE_SELECT_THREAD);
+	add_default_key(&group_keys, '@', GROUP_REVERSE_SELECTIONS);
+	add_default_key(&group_keys, '~', GROUP_UNDO_SELECTIONS);
+	add_default_key(&group_keys, '=', GROUP_SELECT_PATTERN);
+	add_default_key(&group_keys, ';', GROUP_SELECT_THREAD_IF_UNREAD_SELECTED);
+	add_default_key(&group_keys, '+', GROUP_DO_AUTOSELECT);
+
+	/* thread keys */
+	add_global_keys(&thread_keys);
+	add_default_key(&thread_keys, ctrl('A'), GLOBAL_MENU_FILTER_SELECT);
+	add_default_key(&thread_keys, ctrl('K'), GLOBAL_MENU_FILTER_KILL);
+	add_default_key(&thread_keys, ctrl('J'), THREAD_READ_ARTICLE);
+	add_default_key(&thread_keys, ctrl('M'), THREAD_READ_ARTICLE);
+	add_default_key(&thread_keys, 'a', GLOBAL_SEARCH_AUTHOR_FORWARD);
+	add_default_key(&thread_keys, 'c', THREAD_CATCHUP);
+	add_default_key(&thread_keys, 'd', THREAD_TOGGLE_SUBJECT_DISPLAY);
+	add_default_key(&thread_keys, 'm', THREAD_MAIL);
+#ifndef DISABLE_PRINTING
+	add_default_key(&thread_keys, 'o', GLOBAL_PRINT);
+#endif /* !DISABLE_PRINTING */
+	add_default_key(&thread_keys, 's', THREAD_SAVE);
+	add_default_key(&thread_keys, 't', THREAD_TAG);
+	add_default_key(&thread_keys, 'z', THREAD_MARK_ARTICLE_UNREAD);
+	add_default_key(&thread_keys, 'A', GLOBAL_SEARCH_AUTHOR_BACKWARD);
+	add_default_key(&thread_keys, 'B', GLOBAL_SEARCH_BODY);
+	add_default_key(&thread_keys, 'C', THREAD_CATCHUP_NEXT_UNREAD);
+	add_default_key(&thread_keys, 'E', GLOBAL_EDIT_FILTER);
+	add_default_key(&thread_keys, 'K', THREAD_MARK_ARTICLE_READ);
+	add_default_key(&thread_keys, 'L', GLOBAL_LOOKUP_MESSAGEID);
+	add_default_key(&thread_keys, 'S', THREAD_AUTOSAVE);
+	add_default_key(&thread_keys, 'U', THREAD_UNTAG);
+	add_default_key(&thread_keys, 'Z', THREAD_MARK_THREAD_UNREAD);
+	add_default_key(&thread_keys, '\t', THREAD_READ_NEXT_ARTICLE_OR_THREAD);
+	add_default_key(&thread_keys, ' ', GLOBAL_PAGE_DOWN);
+	add_default_key(&thread_keys, '-', GLOBAL_LAST_VIEWED);
+	add_default_key(&thread_keys, '|', GLOBAL_PIPE);
+	add_default_key(&thread_keys, '*', THREAD_SELECT_ARTICLE);
+	add_default_key(&thread_keys, '.', THREAD_TOGGLE_ARTICLE_SELECTION);
+	add_default_key(&thread_keys, '@', THREAD_REVERSE_SELECTIONS);
+	add_default_key(&thread_keys, '~', THREAD_UNDO_SELECTIONS);
+
+	/* page level */
+	add_global_keys(&page_keys);
+	add_default_key(&page_keys, ctrl('A'), GLOBAL_MENU_FILTER_SELECT);
+	add_default_key(&page_keys, ctrl('E'), PAGE_REPLY_QUOTE_HEADERS);
+#ifdef HAVE_PGP_GPG
+	add_default_key(&page_keys, ctrl('G'), PAGE_PGP_CHECK_ARTICLE);
+#endif /* HAVE_PGP_GPG */
+	add_default_key(&page_keys, ctrl('H'), PAGE_TOGGLE_HEADERS);
+	add_default_key(&page_keys, ctrl('J'), PAGE_NEXT_THREAD);
+	add_default_key(&page_keys, ctrl('K'), GLOBAL_MENU_FILTER_KILL);
+	add_default_key(&page_keys, ctrl('M'), PAGE_NEXT_THREAD);
+	add_default_key(&page_keys, ctrl('T'), PAGE_TOGGLE_TABS);
+	add_default_key(&page_keys, ctrl('W'), PAGE_FOLLOWUP_QUOTE_HEADERS);
+	add_default_key(&page_keys, 'a', GLOBAL_SEARCH_AUTHOR_FORWARD);
+	add_default_key(&page_keys, 'c', PAGE_CATCHUP);
+	add_default_key(&page_keys, 'e', PAGE_EDIT_ARTICLE);
+	add_default_key(&page_keys, 'f', PAGE_FOLLOWUP_QUOTE);
+	add_default_key(&page_keys, 'g', GLOBAL_FIRST_PAGE);
+	add_default_key(&page_keys, 'l', PAGE_LIST_THREAD);
+	add_default_key(&page_keys, 'm', PAGE_MAIL);
+	add_default_key(&page_keys, 'n', PAGE_NEXT_ARTICLE);
+#ifndef DISABLE_PRINTING
+	add_default_key(&page_keys, 'o', GLOBAL_PRINT);
+#endif /* !DISABLE_PRINTING */
+	add_default_key(&page_keys, 'p', PAGE_PREVIOUS_ARTICLE);
+	add_default_key(&page_keys, 'r', PAGE_REPLY_QUOTE);
+	add_default_key(&page_keys, 's', PAGE_SAVE);
+	add_default_key(&page_keys, 't', PAGE_TAG);
+	add_default_key(&page_keys, 'u', PAGE_GOTO_PARENT);
+	add_default_key(&page_keys, 'x', PAGE_REPOST);
+	add_default_key(&page_keys, 'z', PAGE_MARK_ARTICLE_UNREAD);
+	add_default_key(&page_keys, 'A', GLOBAL_SEARCH_AUTHOR_BACKWARD);
+	add_default_key(&page_keys, 'B', GLOBAL_SEARCH_BODY);
+	add_default_key(&page_keys, 'C', PAGE_CATCHUP_NEXT_UNREAD);
+	add_default_key(&page_keys, 'D', PAGE_CANCEL);
+	add_default_key(&page_keys, 'E', GLOBAL_EDIT_FILTER);
+	add_default_key(&page_keys, 'F', PAGE_FOLLOWUP);
+	add_default_key(&page_keys, 'G', GLOBAL_LAST_PAGE);
+	add_default_key(&page_keys, 'K', PAGE_MARK_THREAD_READ);
+	add_default_key(&page_keys, 'L', GLOBAL_LOOKUP_MESSAGEID);
+	add_default_key(&page_keys, 'N', PAGE_NEXT_UNREAD_ARTICLE);
+	add_default_key(&page_keys, 'P', PAGE_PREVIOUS_UNREAD_ARTICLE);
+	add_default_key(&page_keys, 'R', PAGE_REPLY);
+	add_default_key(&page_keys, 'S', PAGE_AUTOSAVE);
+	add_default_key(&page_keys, 'T', PAGE_GROUP_SELECT);
+	add_default_key(&page_keys, 'U', PAGE_VIEW_URL);
+	add_default_key(&page_keys, 'V', PAGE_VIEW_ATTACHMENTS);
+	add_default_key(&page_keys, 'Z', PAGE_MARK_THREAD_UNREAD);
+	add_default_key(&page_keys, '\t', PAGE_NEXT_UNREAD);
+	add_default_key(&page_keys, ' ', PAGE_PAGE_DOWN3);
+	add_default_key(&page_keys, '-', GLOBAL_LAST_VIEWED);
+	add_default_key(&page_keys, '|', GLOBAL_PIPE);
+	add_default_key(&page_keys, '<', PAGE_TOP_THREAD);
+	add_default_key(&page_keys, '>', PAGE_BOTTOM_THREAD);
+	add_default_key(&page_keys, '"', PAGE_TOGGLE_TEX2ISO);
+	add_default_key(&page_keys, '(', PAGE_TOGGLE_UUE);
+	add_default_key(&page_keys, ')', PAGE_REVEAL);
+	add_default_key(&page_keys, '[', GLOBAL_QUICK_FILTER_SELECT);
+	add_default_key(&page_keys, ']', GLOBAL_QUICK_FILTER_KILL);
+	add_default_key(&page_keys, '%', PAGE_TOGGLE_ROT13);
+	add_default_key(&page_keys, ':', PAGE_SKIP_INCLUDED_TEXT);
+	add_default_key(&page_keys, '_', PAGE_TOGGLE_HIGHLIGHTING);
+
+	/* info pager */
+	add_default_key(&info_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&info_keys, ctrl('B'), GLOBAL_PAGE_UP);
+	add_default_key(&info_keys, ctrl('D'), GLOBAL_PAGE_DOWN);
+	add_default_key(&info_keys, ctrl('F'), GLOBAL_PAGE_DOWN);
+	add_default_key(&info_keys, ctrl('N'), GLOBAL_LINE_DOWN);
+	add_default_key(&info_keys, ctrl('P'), GLOBAL_LINE_UP);
+	add_default_key(&info_keys, ctrl('U'), GLOBAL_PAGE_UP);
+	add_default_key(&info_keys, 'b', GLOBAL_PAGE_UP);
+	add_default_key(&info_keys, 'g', GLOBAL_FIRST_PAGE);
+	add_default_key(&info_keys, 'j', GLOBAL_LINE_DOWN);
+	add_default_key(&info_keys, 'k', GLOBAL_LINE_UP);
+	add_default_key(&info_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&info_keys, 'G', GLOBAL_LAST_PAGE);
+	add_default_key(&info_keys, 'H', GLOBAL_TOGGLE_HELP_DISPLAY);
+	add_default_key(&info_keys, ' ', GLOBAL_PAGE_DOWN);
+	add_default_key(&info_keys, '^', GLOBAL_FIRST_PAGE);
+	add_default_key(&info_keys, '$', GLOBAL_LAST_PAGE);
+	add_default_key(&info_keys, '/', GLOBAL_SEARCH_SUBJECT_FORWARD);
+	add_default_key(&info_keys, '?', GLOBAL_SEARCH_SUBJECT_BACKWARD);
+	add_default_key(&info_keys, '\\', GLOBAL_SEARCH_REPEAT);
+
+	/* options menu */
+	add_default_key(&option_menu_keys, ctrl('B'), GLOBAL_PAGE_UP);
+	add_default_key(&option_menu_keys, ctrl('D'), GLOBAL_PAGE_DOWN);
+	add_default_key(&option_menu_keys, ctrl('F'), GLOBAL_PAGE_DOWN);
+	add_default_key(&option_menu_keys, ctrl('J'), CONFIG_SELECT);
+	add_default_key(&option_menu_keys, ctrl('L'), GLOBAL_REDRAW_SCREEN);
+	add_default_key(&option_menu_keys, ctrl('M'), CONFIG_SELECT);
+	add_default_key(&option_menu_keys, ctrl('N'), GLOBAL_LINE_DOWN);
+	add_default_key(&option_menu_keys, ctrl('P'), GLOBAL_LINE_UP);
+	add_default_key(&option_menu_keys, ctrl('U'), GLOBAL_PAGE_UP);
+	add_default_key(&option_menu_keys, 'b', GLOBAL_PAGE_UP);
+	add_default_key(&option_menu_keys, 'g', GLOBAL_FIRST_PAGE);
+	add_default_key(&option_menu_keys, 'j', GLOBAL_LINE_DOWN);
+	add_default_key(&option_menu_keys, 'k', GLOBAL_LINE_UP);
+	add_default_key(&option_menu_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&option_menu_keys, 'G', GLOBAL_LAST_PAGE);
+	add_default_key(&option_menu_keys, 'Q', CONFIG_NO_SAVE);
+	add_default_key(&option_menu_keys, '^', GLOBAL_FIRST_PAGE);
+	add_default_key(&option_menu_keys, '$', GLOBAL_LAST_PAGE);
+	add_default_key(&option_menu_keys, ' ', GLOBAL_PAGE_DOWN);
+	add_default_key(&option_menu_keys, '>', GLOBAL_SCROLL_DOWN);
+	add_default_key(&option_menu_keys, '<', GLOBAL_SCROLL_UP);
+	add_default_key(&option_menu_keys, '/', GLOBAL_SEARCH_SUBJECT_FORWARD);
+	add_default_key(&option_menu_keys, '?', GLOBAL_SEARCH_SUBJECT_BACKWARD);
+	add_default_key(&option_menu_keys, '\\', GLOBAL_SEARCH_REPEAT);
+
+	/* prompt keys */
+	add_default_key(&prompt_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&prompt_keys, 'n', PROMPT_NO);
+	add_default_key(&prompt_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&prompt_keys, 'y', PROMPT_YES);
+	add_default_key(&prompt_keys, 'N', PROMPT_NO);
+	add_default_key(&prompt_keys, 'Y', PROMPT_YES);
+
+	/* post keys */
+	add_default_key(&post_send_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_send_keys, 'e', POST_EDIT);
+#ifdef HAVE_PGP_GPG
+	add_default_key(&post_send_keys, 'g', POST_PGP);
+#endif /* HAVE_PGP_GPG */
+#ifdef HAVE_ISPELL
+	add_default_key(&post_send_keys, 'i', POST_ISPELL);
+#endif /* HAVE_ISPELL */
+	add_default_key(&post_send_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&post_send_keys, 's', POST_SEND);
+
+	add_default_key(&post_edit_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_edit_keys, 'e', POST_EDIT);
+	add_default_key(&post_edit_keys, 'o', POST_POSTPONE);
+
+	add_default_key(&post_edit_ext_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_edit_ext_keys, 'e', POST_EDIT);
+	add_default_key(&post_edit_ext_keys, 'M', GLOBAL_OPTION_MENU);
+
+	add_default_key(&post_post_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_post_keys, 'e', POST_EDIT);
+#ifdef HAVE_PGP_GPG
+	add_default_key(&post_post_keys, 'g', POST_PGP);
+#endif /* HAVE_PGP_GPG */
+#ifdef HAVE_ISPELL
+	add_default_key(&post_post_keys, 'i', POST_ISPELL);
+#endif /* HAVE_ISPELL */
+	add_default_key(&post_post_keys, 'o', POST_POSTPONE);
+	add_default_key(&post_post_keys, 'p', GLOBAL_POST);
+	add_default_key(&post_post_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&post_post_keys, 'M', GLOBAL_OPTION_MENU);
+
+	add_default_key(&post_postpone_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_postpone_keys, 'n', PROMPT_NO);
+	add_default_key(&post_postpone_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&post_postpone_keys, 'y', PROMPT_YES);
+	add_default_key(&post_postpone_keys, 'A', POSTPONE_ALL);
+	add_default_key(&post_postpone_keys, 'Y', POSTPONE_OVERRIDE);
+
+	add_default_key(&post_mail_fup_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_mail_fup_keys, 'm', POST_MAIL);
+	add_default_key(&post_mail_fup_keys, 'p', GLOBAL_POST);
+	add_default_key(&post_mail_fup_keys, 'q', GLOBAL_QUIT);
+
+	add_default_key(&post_ignore_fupto_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_ignore_fupto_keys, 'i', POST_IGNORE_FUPTO);
+	add_default_key(&post_ignore_fupto_keys, 'p', GLOBAL_POST);
+	add_default_key(&post_ignore_fupto_keys, 'q', GLOBAL_QUIT);
+
+	add_default_key(&post_continue_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_continue_keys, 'a', POST_ABORT);
+	add_default_key(&post_continue_keys, 'c', POST_CONTINUE);
+	add_default_key(&post_continue_keys, 'q', GLOBAL_QUIT);
+
+	add_default_key(&post_delete_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_delete_keys, 'd', POST_CANCEL);
+	add_default_key(&post_delete_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&post_delete_keys, 's', POST_SUPERSEDE);
+
+	add_default_key(&post_cancel_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&post_cancel_keys, 'e', POST_EDIT);
+	add_default_key(&post_cancel_keys, 'd', POST_CANCEL);
+	add_default_key(&post_cancel_keys, 'q', GLOBAL_QUIT);
+
+	/* feed keys */
+	add_default_key(&feed_post_process_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&feed_post_process_keys, 'n', POSTPROCESS_NO);
+	add_default_key(&feed_post_process_keys, 's', POSTPROCESS_SHAR);
+	add_default_key(&feed_post_process_keys, 'y', POSTPROCESS_YES);
+	add_default_key(&feed_post_process_keys, 'q', GLOBAL_QUIT);
+
+	add_default_key(&feed_type_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&feed_type_keys, 'a', FEED_ARTICLE);
+	add_default_key(&feed_type_keys, 'h', FEED_HOT);
+	add_default_key(&feed_type_keys, 'p', FEED_PATTERN);
+	add_default_key(&feed_type_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&feed_type_keys, 't', FEED_THREAD);
+	add_default_key(&feed_type_keys, 'T', FEED_TAGGED);
+
+	add_default_key(&feed_supersede_article_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&feed_supersede_article_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&feed_supersede_article_keys, 'r', FEED_KEY_REPOST);
+	add_default_key(&feed_supersede_article_keys, 's', FEED_SUPERSEDE);
+
+	/* filter keys */
+	add_default_key(&filter_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&filter_keys, 'e', FILTER_EDIT);
+	add_default_key(&filter_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&filter_keys, 's', FILTER_SAVE);
+
+	/* mark read */
+	add_default_key(&mark_read_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&mark_read_keys, 'c', MARK_READ_CURRENT);
+	add_default_key(&mark_read_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&mark_read_keys, 't', MARK_READ_TAGGED);
+
+#ifdef HAVE_PGP_GPG
+	/* pgp mail */
+	add_default_key(&pgp_mail_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&pgp_mail_keys, 'b', PGP_KEY_ENCRYPT_SIGN);
+	add_default_key(&pgp_mail_keys, 'e', PGP_KEY_ENCRYPT);
+	add_default_key(&pgp_mail_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&pgp_mail_keys, 's', PGP_KEY_SIGN);
+
+	/* pgp news */
+	add_default_key(&pgp_news_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&pgp_news_keys, 'b', PGP_KEY_ENCRYPT_SIGN);
+	add_default_key(&pgp_news_keys, 'e', PGP_KEY_ENCRYPT);
+	add_default_key(&pgp_news_keys, 'i', PGP_INCLUDE_KEY);
+	add_default_key(&pgp_news_keys, 'q', GLOBAL_QUIT);
+	add_default_key(&pgp_news_keys, 's', PGP_KEY_SIGN);
+#endif /* HAVE_PGP_GPG */
+
+	/* save */
+	add_default_key(&save_append_overwrite_keys, ESC, GLOBAL_ABORT);
+	add_default_key(&save_append_overwrite_keys, 'a', SAVE_APPEND_FILE);
+	add_default_key(&save_append_overwrite_keys, 'o', SAVE_OVERWRITE_FILE);
+	add_default_key(&save_append_overwrite_keys, 'q', GLOBAL_QUIT);
+}
+
+
+/*
+ * used to add the common keys of SELECT_LEVEL, GROUP_LEVEL, THREAD_LEVEL
+ * and PAGE_LEVEL
+ */
+static void
+add_global_keys(
+	struct keylist *keys)
+{
+	add_default_key(keys, ESC, GLOBAL_ABORT);
+	add_default_key(keys, '0', DIGIT_0);
+	add_default_key(keys, '1', DIGIT_1);
+	add_default_key(keys, '2', DIGIT_2);
+	add_default_key(keys, '3', DIGIT_3);
+	add_default_key(keys, '4', DIGIT_4);
+	add_default_key(keys, '5', DIGIT_5);
+	add_default_key(keys, '6', DIGIT_6);
+	add_default_key(keys, '7', DIGIT_7);
+	add_default_key(keys, '8', DIGIT_8);
+	add_default_key(keys, '9', DIGIT_9);
+	add_default_key(keys, ctrl('B'), GLOBAL_PAGE_UP);
+	add_default_key(keys, ctrl('D'), GLOBAL_PAGE_DOWN);
+	add_default_key(keys, ctrl('F'), GLOBAL_PAGE_DOWN);
+	add_default_key(keys, ctrl('L'), GLOBAL_REDRAW_SCREEN);
+	add_default_key(keys, ctrl('N'), GLOBAL_LINE_DOWN);
+	add_default_key(keys, ctrl('O'), GLOBAL_POSTPONED);
+	add_default_key(keys, ctrl('P'), GLOBAL_LINE_UP);
+	add_default_key(keys, ctrl('U'), GLOBAL_PAGE_UP);
+	add_default_key(keys, 'b', GLOBAL_PAGE_UP);
+	add_default_key(keys, 'h', GLOBAL_HELP);
+	add_default_key(keys, 'i', GLOBAL_TOGGLE_INFO_LAST_LINE);
+	add_default_key(keys, 'j', GLOBAL_LINE_DOWN);
+	add_default_key(keys, 'k', GLOBAL_LINE_UP);
+	add_default_key(keys, 'q', GLOBAL_QUIT);
+	add_default_key(keys, 'v', GLOBAL_VERSION);
+	add_default_key(keys, 'w', GLOBAL_POST);
+	add_default_key(keys, 'H', GLOBAL_TOGGLE_HELP_DISPLAY);
+	add_default_key(keys, 'I', GLOBAL_TOGGLE_INVERSE_VIDEO);
+	add_default_key(keys, 'M', GLOBAL_OPTION_MENU);
+	add_default_key(keys, 'O', GLOBAL_POSTPONED);
+	add_default_key(keys, 'Q', GLOBAL_QUIT_TIN);
+	add_default_key(keys, 'R', GLOBAL_BUGREPORT);
+	add_default_key(keys, 'W', GLOBAL_DISPLAY_POST_HISTORY);
+	add_default_key(keys, '^', GLOBAL_FIRST_PAGE);
+	add_default_key(keys, '$', GLOBAL_LAST_PAGE);
+	add_default_key(keys, '>', GLOBAL_SCROLL_DOWN);
+	add_default_key(keys, '<', GLOBAL_SCROLL_UP);
+	add_default_key(keys, '/', GLOBAL_SEARCH_SUBJECT_FORWARD);
+	add_default_key(keys, '?', GLOBAL_SEARCH_SUBJECT_BACKWARD);
+	add_default_key(keys, '\\', GLOBAL_SEARCH_REPEAT);
+	add_default_key(keys, '#', GLOBAL_SET_RANGE);
+#ifndef NO_SHELL_ESCAPE
+	add_default_key(keys, '!', GLOBAL_SHELL_ESCAPE);
+#endif /* NO_SHELL_ESCAPE */
+#ifdef HAVE_COLOR
+	add_default_key(keys, '&', GLOBAL_TOGGLE_COLOR);
+#endif /* HAVE COLOR */
 }
diff -Nurp tin-1.7.7/src/lang.c tin-1.7.8/src/lang.c
--- tin-1.7.7/src/lang.c	Tue Nov 16 14:27:48 2004
+++ tin-1.7.8/src/lang.c	Mon Mar 21 13:37:30 2005
@@ -3,10 +3,10 @@
  *  Module    : lang.c
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-03-20
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -115,8 +115,10 @@ constext txt_check_article[] = N_("Check
 constext txt_checking_new_groups[] = N_("Checking for new groups... ");
 constext txt_checking_for_news[] = N_("Checking for news...");
 constext txt_choose_post_process_type[] = N_("Post-process %s=no, %s=yes, %s=shar, %s=quit: ");
-constext txt_color_off[] = N_("ANSI color disabled");
-constext txt_color_on[] = N_("ANSI color enabled");
+#ifdef HAVE_COLOR
+	constext txt_color_off[] = N_("ANSI color disabled");
+	constext txt_color_on[] = N_("ANSI color enabled");
+#endif /* HAVE_COLOR */
 constext txt_command_failed[] = N_("Command failed: %s");
 constext txt_confirm_select_on_exit[] = N_("Mark not selected articles read?");
 constext txt_connecting[] = N_("Connecting to %s...");
@@ -317,6 +319,7 @@ constext txt_help_article_view_attachmen
 constext txt_help_bug[] = N_("report bug or comment via mail to %s");
 constext txt_help_global_article_range[] = N_("choose range of articles to be affected by next command");
 constext txt_help_global_esc[] = N_("escape from command prompt");
+constext txt_help_global_edit_filter[] = N_("edit filter file");
 constext txt_help_global_help[] = N_("get help");
 constext txt_help_global_last_art[] = N_("display last article viewed");
 constext txt_help_global_line_down[] = N_("down one line");
@@ -455,7 +458,10 @@ constext txt_inverse_on[] = N_("Inverse 
 constext txt_keymap_missing_key[] = N_("Missing definition for %s\n");
 constext txt_keymap_invalid_key[] = N_("Invalid key definition '%s'\n");
 constext txt_keymap_invalid_name[] = N_("Invalid keyname '%s'\n");
-constext txt_keymap_conflict[] = N_("Key '%s' is defined for both %s%s and %s%s\n");
+#if 0 /* unused */
+	constext txt_keymap_conflict[] = N_("Key '%s' is defined for both %s%s and %s%s\n");
+#endif /* 0 */
+constext txt_keymap_upgraded[] = N_("Keymap file was upgraded to version %s\n");
 constext txt_kill_from[] = N_("Kill From:     [%s] (y/n): ");
 constext txt_kill_lines[] = N_("Kill Lines: (</>num): ");
 constext txt_kill_menu[] = N_("Kill Article Menu");
@@ -470,7 +476,7 @@ constext txt_last_resp[] = N_("-- Last r
 constext txt_lines[] = N_("Lines %s  ");
 
 constext txt_msgid_line_only[] = N_("Message-ID: line              ");
-constext txt_mail[] = "Mail";
+constext txt_mail[] = N_("Mail");
 constext txt_mailbox[] = N_("mailbox ");
 constext txt_mail_art_to[] = N_("Mail article(s) to [%.*s]> ");
 constext txt_mail_log_to[] = N_("Mailing log to %s\n");
@@ -709,7 +715,9 @@ constext txt_thread_upper[] = N_("Thread
 constext txt_thread_com[] = N_("Thread Level Commands");
 constext txt_thread_marked_as_deselected[] = N_("Thread deselected");
 constext txt_thread_marked_as_selected[] = N_("Thread selected");
-constext txt_thread_plural[] = N_("threads");
+#if 0 /* unused */
+	constext txt_thread_plural[] = N_("threads");
+#endif /* 0 */
 constext txt_thread_range[] = N_("Thread range");
 constext txt_thread_singular[] = N_("thread");
 constext txt_thread_x_of_n[] = N_("Thread %4s of %4s");
@@ -884,7 +892,9 @@ Warning: Posting is in %s and contains c
 	constext txt_libuu_error_no_data[] = N_("No data.");
 	constext txt_libuu_error_unknown[] = N_("Unknown error.");
 #else
-	constext txt_checksum_of_file[] = N_("\tChecksum of %s (%ld %s)");
+#	if defined(M_UNIX) && defined(HAVE_SUM) && !defined(DONT_HAVE_PIPING)
+		constext txt_checksum_of_file[] = N_("\tChecksum of %s (%ld %s)");
+#	endif /* M_UNIX && HAVE_SUM && !DONT_HAVE_PIPING */
 #endif /* HAVE_LIBUU */
 
 #ifdef HAVE_MH_MAIL_HANDLING
@@ -921,7 +931,7 @@ Warning: Posting is in %s and contains c
 #endif /* HAVE_PGP_GPG */
 
 #ifdef M_UNIX
-	constext txt_copyright_notice[] = "%s (c) Copyright 1991-2004 Iain Lea.";
+	constext txt_copyright_notice[] = "%s (c) Copyright 1991-2005 Iain Lea.";
 #endif /* M_UNIX */
 
 #ifdef NNTP_ABLE
@@ -973,7 +983,7 @@ Tin will try to use XHDR XREF instead (s
 #endif /* NNTP_INEWS */
 
 #ifdef VMS
-	constext txt_copyright_notice[] = "%s (c) Copyright 1991-2004 Iain Lea & Tod McQuillin & other.";
+	constext txt_copyright_notice[] = "%s (c) Copyright 1991-2005 Iain Lea & Tod McQuillin & other.";
 #endif /* VMS */
 
 #ifndef DISABLE_PRINTING
@@ -1325,11 +1335,13 @@ struct opttxt txt_display_options = {
 	NULL
 };
 
+#ifdef HAVE_COLOR
 struct opttxt txt_color_options = {
 	NULL,
 	N_("Color Options"),
 	NULL
 };
+#endif /* HAVE_COLOR */
 
 struct opttxt txt_getart_limit_options = {
 	NULL,
diff -Nurp tin-1.7.7/src/list.c tin-1.7.8/src/list.c
--- tin-1.7.7/src/list.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/list.c	Thu Dec 30 14:33:10 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2002-05-13
  *  Notes     : Low level functions handling the active[] list and its group_hash index
  *
- * Copyright (c) 1993-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1993-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/lock.c tin-1.7.8/src/lock.c
--- tin-1.7.7/src/lock.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/lock.c	Thu Dec 30 14:33:10 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-05-16
  *  Notes     :
  *
- * Copyright (c) 1998-2004 Urs Janssen <urs@tin.org>
+ * Copyright (c) 1998-2005 Urs Janssen <urs@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/mail.c tin-1.7.8/src/mail.c
--- tin-1.7.7/src/mail.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/mail.c	Thu Dec 30 14:33:10 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-03-23
  *  Notes     : Mail handling routines for creating pseudo newsgroups
  *
- * Copyright (c) 1992-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1992-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/main.c tin-1.7.8/src/main.c
--- tin-1.7.7/src/main.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/main.c	Sat Mar 12 01:52:57 2005
@@ -3,10 +3,10 @@
  *  Module    : main.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-07-14
+ *  Updated   : 2005-03-12
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -209,19 +209,20 @@ main(
 	}
 #endif /* DEBUG_NEWSRC */
 
+	/*
+	 * avoid empty regexp, we also need to do this in batch_mode
+	 * as read_overview() calls eat_re() which uses a regexp to
+	 * modify the subject *sigh*
+	 */
+	postinit_regexp();
+
 	if (!(batch_mode || post_postponed_and_exit)) {
 		/*
 		 * Read user specific keybindings and input history
 		 */
 		wait_message(0, _(txt_reading_keymap_file));
-		if (!read_keymap_file())
-			prompt_continue();
+		read_keymap_file();
 		read_input_history_file();
-
-		/*
-		 * avoid empty regexp
-		 */
-		postinit_regexp();
 
 		/*
 		 * Load the mail & news active files into active[]
diff -Nurp tin-1.7.7/src/makecfg.c tin-1.7.8/src/makecfg.c
--- tin-1.7.7/src/makecfg.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/makecfg.c	Thu Dec 30 14:33:11 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-06-03
  *  Notes     : #defines and structs for config.c
  *
- * Copyright (c) 1997-2004 Thomas E. Dickey <dickey@invisible-island.net>
+ * Copyright (c) 1997-2005 Thomas E. Dickey <dickey@invisible-island.net>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/memory.c tin-1.7.8/src/memory.c
--- tin-1.7.7/src/memory.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/memory.c	Fri Feb 25 11:47:12 2005
@@ -3,10 +3,10 @@
  *  Module    : memory.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2003-10-12
+ *  Updated   : 2005-02-25
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -43,15 +43,15 @@
 #endif /* !RFC2046_H */
 
 /*
- * Dynamic arrays maximum & current sizes
+ * Dynamic arrays maximum (initialized in init_alloc()) & current sizes
  * num_* values are one past top of used part of array
  */
-int max_active = 0;
+int max_active;
 int num_active = -1;
-int max_newnews = 0;
+int max_newnews;
 int num_newnews = 0;
-int max_art = 0;
-int max_save = 0;
+int max_art;
+int max_save;
 int num_save = 0;
 
 /*
@@ -204,40 +204,40 @@ free_all_arrays(
 	free_active_arrays();
 	free_global_arrays();
 
-	if (!batch_mode) {
 #ifdef HAVE_COLOR
-		FreeIfNeeded(quote_regex.re);
-		FreeIfNeeded(quote_regex.extra);
-		FreeIfNeeded(quote_regex2.re);
-		FreeIfNeeded(quote_regex2.extra);
-		FreeIfNeeded(quote_regex3.re);
-		FreeIfNeeded(quote_regex3.extra);
+	FreeIfNeeded(quote_regex.re);
+	FreeIfNeeded(quote_regex.extra);
+	FreeIfNeeded(quote_regex2.re);
+	FreeIfNeeded(quote_regex2.extra);
+	FreeIfNeeded(quote_regex3.re);
+	FreeIfNeeded(quote_regex3.extra);
 #endif /* HAVE_COLOR */
-		FreeIfNeeded(slashes_regex.re);
-		FreeIfNeeded(slashes_regex.extra);
-		FreeIfNeeded(stars_regex.re);
-		FreeIfNeeded(stars_regex.extra);
-		FreeIfNeeded(strokes_regex.re);
-		FreeIfNeeded(strokes_regex.extra);
-		FreeIfNeeded(underscores_regex.re);
-		FreeIfNeeded(underscores_regex.extra);
-		FreeIfNeeded(strip_re_regex.re);
-		FreeIfNeeded(strip_re_regex.extra);
-		FreeIfNeeded(strip_was_regex.re);
-		FreeIfNeeded(strip_was_regex.extra);
-		FreeIfNeeded(uubegin_regex.re);
-		FreeIfNeeded(uubegin_regex.extra);
-		FreeIfNeeded(uubody_regex.re);
-		FreeIfNeeded(uubody_regex.extra);
-		FreeIfNeeded(url_regex.re);
-		FreeIfNeeded(url_regex.extra);
-		FreeIfNeeded(mail_regex.re);
-		FreeIfNeeded(mail_regex.extra);
-		FreeIfNeeded(news_regex.re);
-		FreeIfNeeded(news_regex.extra);
-		FreeIfNeeded(shar_regex.re);
-		FreeIfNeeded(shar_regex.extra);
+	FreeIfNeeded(slashes_regex.re);
+	FreeIfNeeded(slashes_regex.extra);
+	FreeIfNeeded(stars_regex.re);
+	FreeIfNeeded(stars_regex.extra);
+	FreeIfNeeded(strokes_regex.re);
+	FreeIfNeeded(strokes_regex.extra);
+	FreeIfNeeded(underscores_regex.re);
+	FreeIfNeeded(underscores_regex.extra);
+	FreeIfNeeded(strip_re_regex.re);
+	FreeIfNeeded(strip_re_regex.extra);
+	FreeIfNeeded(strip_was_regex.re);
+	FreeIfNeeded(strip_was_regex.extra);
+	FreeIfNeeded(uubegin_regex.re);
+	FreeIfNeeded(uubegin_regex.extra);
+	FreeIfNeeded(uubody_regex.re);
+	FreeIfNeeded(uubody_regex.extra);
+	FreeIfNeeded(url_regex.re);
+	FreeIfNeeded(url_regex.extra);
+	FreeIfNeeded(mail_regex.re);
+	FreeIfNeeded(mail_regex.extra);
+	FreeIfNeeded(news_regex.re);
+	FreeIfNeeded(news_regex.extra);
+	FreeIfNeeded(shar_regex.re);
+	FreeIfNeeded(shar_regex.extra);
 
+	if (!batch_mode) {
 		free_keymaps();
 		free_input_history();
 	}
diff -Nurp tin-1.7.7/src/mimetypes.c tin-1.7.8/src/mimetypes.c
--- tin-1.7.7/src/mimetypes.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/mimetypes.c	Thu Dec 30 14:33:11 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-08-26
  *  Notes     : mime.types handling
  *
- * Copyright (c) 2000-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 2000-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/misc.c tin-1.7.8/src/misc.c
--- tin-1.7.7/src/misc.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/misc.c	Sat Feb 12 14:22:22 2005
@@ -3,10 +3,10 @@
  *  Module    : misc.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-09-14
+ *  Updated   : 2005-02-12
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -554,7 +554,7 @@ tin_done(
 			group = &active[my_group[i]];
 			if (group->read_during_session) {
 				if (ask) {
-					if (prompt_yn(cLINES, _(txt_catchup_all_read_groups), FALSE) == 1) {
+					if (prompt_yn(_(txt_catchup_all_read_groups), FALSE) == 1) {
 						ask = FALSE;
 						tinrc.thread_articles = THREAD_NONE;	/* speeds up index loading */
 					} else
@@ -571,7 +571,8 @@ tin_done(
 	 * chance to try again
 	 */
 	if (!no_write) {
-		forever {
+		i = 3; /* max retries */
+		while (i--) {
 			if (((wrote_newsrc_lines = write_newsrc()) >= 0L) && (wrote_newsrc_lines >= read_newsrc_lines)) {
 				if (!batch_mode || verbose)
 					my_fputs(_(txt_newsrc_saved), stdout);
@@ -590,7 +591,7 @@ tin_done(
 			}
 
 			if (!batch_mode) {
-				if (!prompt_yn(cLINES, _(txt_newsrc_again), TRUE))
+				if (prompt_yn(_(txt_newsrc_again), TRUE) <= 0)
 					break;
 			}
 		}
@@ -3577,86 +3578,93 @@ utf8_valid(
 			numc++;
 		} while ((d <<= 1) & 0x80);	/* get sequence length */
 
-		d = *c;
-		e = *(c + 1);
-
-		switch (numc) {
-			case 2:
-				/* out of range or sequences which would also fit into 1 byte */
-				if (d < 0xc2 || d > 0xdf)
-					illegal = TRUE;
-				break;
+		d = 1;
+		while (d < numc) {
+			if (*(c + d) == '\0' || *(c + d) == '\n')
+				illegal = TRUE;
+			d--;
+		}
 
-			case 3:
-				f = *(c + 2);
-				/* out of range or sequences which would also fit into 2 bytes */
-				if (d < 0xe0 || d > 0xef || (d == 0xe0 && e < 0xa0))
-					illegal = TRUE;
-				/* U+D800 ... U+DFFF */
-				if (d == 0xed && e > 0x9f)
-					illegal = TRUE;
-				/* U+FDD0 ... U+FDEF */
-				if (d == 0xef && e == 0xb7 && (f >= 0x90 && f <= 0xaf))
-					illegal = TRUE;
-				/* U+FFFE, U+FFFF */
-				if (d == 0xef && e == 0xbf && (f == 0xbe || f == 0xbf))
-					illegal = TRUE;
-				break;
+		if (!illegal) {
+			d = *c;
+			e = *(c + 1);
 
-			case 4:
-				f = *(c + 2);
-				g = *(c + 3);
-				/* out of range or sequences which would also fit into 3 bytes */
-				if (d < 0xf0 || d > 0xf7 || (d == 0xf0 && e < 0x90))
-					illegal = TRUE;
-				/* largest current used sequence */
-				if ((d == 0xf4 && e > 0x8f) || d > 0xf4)
-					illegal = TRUE;
-				/* Unicode 3.1 noncharacters */
-				/* U+1FFFE, U+1FFFF, U+2FFFE, U+2FFFF, U+3FFFE, U+3FFFF; (Unicode 3.1) */
-				if (d == 0xf0 && (e == 0x9f || e == 0xaf || e == 0xbf) && f == 0xbf && (g == 0xbe || g == 0xbf))
-					illegal = TRUE;
-				/* Unicode 3.1 noncharacters */
-				/* U+4FFFE, U+4FFFF, U+5FFFE, U+5FFFF, U+6FFFE, U+6FFFF, U+7FFFE, U+7FFFF */
-				/* U+8FFFE, U+8FFFF, U+9FFFE, U+9FFFF, U+AFFFE, U+AFFFF, U+BFFFE, U+BFFFF */
-				/* U+CFFFE, U+CFFFF, U+DFFFE, U+DFFFF, U+EFFFE, U+EFFFF, U+FFFFE, U+FFFFF */
-				if ((d == 0xf1 || d == 0xf2 || d == 0xf3) && (e == 0x8f || e == 0x9f || e == 0xaf || e == 0xbf) && f == 0xbf && (g == 0xbe || g == 0xbf))
-					illegal = TRUE;
-				/* Unicode 3.1 noncharacters */
-				/* U+10FFFE, U+10FFFF */
-				if (d == 0xf4 && e == 0x8f && f == 0xbf && (g == 0xbe || g == 0xbf))
-					illegal = TRUE;
-				break;
+			switch (numc) {
+				case 2:
+					/* out of range or sequences which would also fit into 1 byte */
+					if (d < 0xc2 || d > 0xdf)
+						illegal = TRUE;
+					break;
+
+				case 3:
+					f = *(c + 2);
+					/* out of range or sequences which would also fit into 2 bytes */
+					if (d < 0xe0 || d > 0xef || (d == 0xe0 && e < 0xa0))
+						illegal = TRUE;
+					/* U+D800 ... U+DFFF */
+					if (d == 0xed && e > 0x9f)
+						illegal = TRUE;
+					/* U+FDD0 ... U+FDEF */
+					if (d == 0xef && e == 0xb7 && (f >= 0x90 && f <= 0xaf))
+						illegal = TRUE;
+					/* U+FFFE, U+FFFF */
+					if (d == 0xef && e == 0xbf && (f == 0xbe || f == 0xbf))
+						illegal = TRUE;
+					break;
+
+				case 4:
+					f = *(c + 2);
+					g = *(c + 3);
+					/* out of range or sequences which would also fit into 3 bytes */
+					if (d < 0xf0 || d > 0xf7 || (d == 0xf0 && e < 0x90))
+						illegal = TRUE;
+					/* largest current used sequence */
+					if ((d == 0xf4 && e > 0x8f) || d > 0xf4)
+						illegal = TRUE;
+					/* Unicode 3.1 noncharacters */
+					/* U+1FFFE, U+1FFFF, U+2FFFE, U+2FFFF, U+3FFFE, U+3FFFF; (Unicode 3.1) */
+					if (d == 0xf0 && (e == 0x9f || e == 0xaf || e == 0xbf) && f == 0xbf && (g == 0xbe || g == 0xbf))
+						illegal = TRUE;
+					/* Unicode 3.1 noncharacters */
+					/* U+4FFFE, U+4FFFF, U+5FFFE, U+5FFFF, U+6FFFE, U+6FFFF, U+7FFFE, U+7FFFF */
+					/* U+8FFFE, U+8FFFF, U+9FFFE, U+9FFFF, U+AFFFE, U+AFFFF, U+BFFFE, U+BFFFF */
+					/* U+CFFFE, U+CFFFF, U+DFFFE, U+DFFFF, U+EFFFE, U+EFFFF, U+FFFFE, U+FFFFF */
+					if ((d == 0xf1 || d == 0xf2 || d == 0xf3) && (e == 0x8f || e == 0x9f || e == 0xaf || e == 0xbf) && f == 0xbf && (g == 0xbe || g == 0xbf))
+						illegal = TRUE;
+					/* Unicode 3.1 noncharacters */
+					/* U+10FFFE, U+10FFFF */
+					if (d == 0xf4 && e == 0x8f && f == 0xbf && (g == 0xbe || g == 0xbf))
+						illegal = TRUE;
+					break;
 
 #	if 0	/* currently not used, see also check above */
-			case 5:
-				/* out of range or sequences which would also fit into 4 bytes */
-				if (d < 0xf8 || d > 0xfb || (d == 0xf8 && e < 0x88))
-					illegal = TRUE;
-				break;
+				case 5:
+					/* out of range or sequences which would also fit into 4 bytes */
+					if (d < 0xf8 || d > 0xfb || (d == 0xf8 && e < 0x88))
+						illegal = TRUE;
+					break;
 
-			case 6:
-				/* out of range or sequences which would also fit into 5 bytes */
-				if (d < 0xfc || d > 0xfd || (d == 0xfc && e < 0x84))
-					illegal = TRUE;
-				break;
+				case 6:
+					/* out of range or sequences which would also fit into 5 bytes */
+					if (d < 0xfc || d > 0xfd || (d == 0xfc && e < 0x84))
+						illegal = TRUE;
+					break;
 #	endif /* 0 */
 
-			default:
-				/*
-				 * with the check for plain US-ASCII above all other sequence
-				 * length are illegal.
-				 */
-				illegal = TRUE;
-				break;
-		}
-
-		if (!illegal) {
-			for (d = 1; d < numc; d++) {
-				e = *(c + d);
-				if (e < 0x80 || e > 0xbf || *(c + d) == '\0' || *(c + d) == '\n')
+				default:
+					/*
+					 * with the check for plain US-ASCII above all other sequence
+					 * length are illegal.
+					 */
 					illegal = TRUE;
+					break;
 			}
+		}
+
+		for (d = 1; d < numc && !illegal; d++) {
+			e = *(c + d);
+			if (e < 0x80 || e > 0xbf || e == '\0' || e == '\n')
+				illegal = TRUE;
 		}
 
 		if (!illegal)
diff -Nurp tin-1.7.7/src/my_tmpfile.c tin-1.7.8/src/my_tmpfile.c
--- tin-1.7.7/src/my_tmpfile.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/my_tmpfile.c	Thu Dec 30 14:33:11 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-06-30
  *  Notes     :
  *
- * Copyright (c) 2001-2004 Urs Janssen <urs@tin.org>
+ * Copyright (c) 2001-2005 Urs Janssen <urs@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/newsrc.c tin-1.7.8/src/newsrc.c
--- tin-1.7.7/src/newsrc.c	Tue Nov 16 14:28:40 2004
+++ tin-1.7.8/src/newsrc.c	Thu Dec 30 14:33:11 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-11-16
  *  Notes     : ArtCount = (ArtMax - ArtMin) + 1  [could have holes]
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/nntplib.c tin-1.7.8/src/nntplib.c
--- tin-1.7.7/src/nntplib.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/nntplib.c	Mon Feb 14 11:16:30 2005
@@ -3,7 +3,7 @@
  *  Module    : nntplib.c
  *  Author    : S. Barber & I. Lea
  *  Created   : 1991-01-12
- *  Updated   : 2004-03-13
+ *  Updated   : 2005-02-12
  *  Notes     : NNTP client routines taken from clientlib.c 1.5.11 (1991-02-10)
  *  Copyright : (c) Copyright 1991-99 by Stan Barber & Iain Lea
  *              Permission is hereby granted to copy, reproduce, redistribute
@@ -51,7 +51,8 @@ static TCP *nntp_wr_fp = NULL;
 	static constext *xhdr_cmd = NULL;
 	static constext *xhdr_cmds = "XHDR";
 #	endif /* 0 */
-	static t_bool have_list_extensions = FALSE;
+	enum extension_type { NO, LIST_EXTENSIONS, CAPABILITIES };
+	static int have_list_extensions = NO;
 	/* Set so we don't reconnect just to QUIT */
 	static t_bool quitting = FALSE;
 #endif /* NNTP_ABLE */
@@ -60,6 +61,7 @@ static TCP *nntp_wr_fp = NULL;
  * local prototypes
  */
 #ifdef NNTP_ABLE
+	static int new_nntp_command(const char *command, int success, char *message, size_t mlen);
 	static int reconnect(int retry);
 	static int server_init(char *machine, const char *cservice, int port, char *text, size_t mlen);
 	static void check_extensions(void);
@@ -826,7 +828,7 @@ reconnect(
 	 * Exit tin if the user says no to reconnect. The exit code stops tin from trying
 	 * to disconnect again - the connection is already dead
 	 */
-	if (!tinrc.auto_reconnect && prompt_yn(cLINES, _(txt_reconnect_to_news_server), TRUE) != 1)
+	if (!tinrc.auto_reconnect && prompt_yn(_(txt_reconnect_to_news_server), TRUE) != 1)
 		tin_done(NNTP_ERROR_EXIT);		/* user said no to reconnect */
 
 	clear_message();
@@ -952,14 +954,9 @@ close_server(
 
 #ifdef NNTP_ABLE
 /*
- * Try and use LIST EXTENSIONS here. Get this list before issuing
- * other NNTP commands because the correct methods may be
- * mentioned in the list of extensions.
- * Possible extensions include:
- * - HDR & LIST HEADERS
- * - OVER [MSGID] & LIST OVERVIEW.FMT
- * - LISTGROUP
- * - STARTTLS
+ * Try and use CAPABILITIES/LIST EXTENSIONS here. Get this list before
+ * issuing other NNTP commands because the correct methods may be mentioned
+ * in the list of extensions.
  *
  * Sets up: have_list_extensions, xover_cmd, (xhdr_cmd)
  */
@@ -967,52 +964,112 @@ static void
 check_extensions(
 	void)
 {
-	FILE *fp;
 	char *ptr;
 	int i;
+#	if 0 /* "CAPABILITIES" will replace "LIST EXTENSIONS" */
+	FILE *fp;
 
-	if ((fp = nntp_command("LIST EXTENSIONS", OK_EXTENSIONS, NULL, 0)) == NULL)
-		return;
-
-	have_list_extensions = TRUE;
+	if ((fp = nntp_command("CAPABILITIES", INF_CAPABILITIES, NULL, 0)) != NULL) {
+		int cap_version = -1;
 
-	while ((ptr = tin_fgets(fp, FALSE)) != NULL) {
-		/*
-		 * Check for (X)OVER
-		 * XOVER should not be listed in EXTENSIONS (but sometimes is)
-		 * checking for it if OVER is not found does no harm.
-		 */
-		if (!xover_cmd) {
-			for (i = 1; i >= 0; i--) {
-				if (strcmp(ptr, &xover_cmds[i]) == 0) {
-					xover_cmd = &xover_cmds[i];
-					break;
-				}
+		have_list_extensions = CAPABILITIES;
+		while ((ptr = tin_fgets(fp, FALSE)) != NULL) {
+#		ifdef DEBUG
+			debug_nntp("<<<", ptr);
+#		endif /* DEBUG */
+			/* look for version number */
+			if (cap_version == -1 && have_list_extensions == CAPABILITIES) {
+				if (!strncasecmp(ptr, "VERSION", 7))
+					cap_version = atoi(ptr + 8);
 			}
-		}
+			/* we currently only support CAPABILITIES VERSION 2 */
+			if (cap_version == 2) {
+				/*
+				 * Check for (X)OVER
+				 * XOVER should not be listed in CAPABILITIES
+				 * but checking for it if OVER is not found does no harm.
+				 */
+				if (!xover_cmd) {
+					for (i = 1; i >= 0; i--) {
+						if (strcasecmp(ptr, &xover_cmds[i]) == 0) {
+							xover_cmd = &xover_cmds[i];
+							break;
+						}
+					}
+				}
 #		if 0 /* currently not used */
-		/*
-		 * Check for (X)HDR
-		 * XHDR should not be listed in EXTENSIONS (but sometimes is)
-		 * checking for it if HDR is not found does no harm.
-		 */
-		if (!xhdr_cmd) {
-			for (i = 1; i >= 0; i--) {
-				if (strcmp(ptr, &xhdr_cmds[i]) == 0) {
-					xhdr_cmd = &xhdr_cmds[i];
-					break;
+				/*
+				 * Check for (X)HDR
+				 * XHDR should not be listed in EXTENSIONS (but sometimes is)
+				 * checking for it if HDR is not found does no harm.
+				 */
+				if (!xhdr_cmd) {
+					for (i = 1; i >= 0; i--) {
+						if (strcasecmp(ptr, &xhdr_cmds[i]) == 0) {
+							xhdr_cmd = &xhdr_cmds[i];
+							break;
+						}
+					}
 				}
-			}
-		}
 #		endif /* 0 */
-		 /*
-		  * additional checks for
-		  * - LISTGROUP
-		  * - LIST OVERVIEW.FMT
-		  * - LIST HEADERS
-		  * go here whenever they are needed
-		  */
+				/*
+				 * LIST, READER, SASL, STARTTLS, STREAMING, AUTHINFO, IHAVE
+				 * IMPLEMENTATION, (MODE-READER)
+				 */
+			} else
+				have_list_extensions = NO;
+		}
 	}
+#	endif /* 0 */
+
+#	if 1
+	/*
+	 * "LIST EXTENSIONS" is somewhat troublesome as there are a lot
+	 * of broken implementations out there and it is a multiline response
+	 */
+	if (have_list_extensions == NO) {
+		char buf[NNTP_STRLEN];
+
+		buf[0] = '\0';
+		i = new_nntp_command("LIST EXTENSIONS", OK_EXTENSIONS, buf, sizeof(buf));
+		switch (i) {
+			case OK_EXTENSIONS:	/* as defined draft-ietf-nntpext-base-24.txt */
+				have_list_extensions = LIST_EXTENSIONS;
+				/* FALLTHROUGH */
+			case 205:	/* M$ Exchange 5.5 */
+			case 215:	/* Netscape-Collabra/3.52 && NetWare-News-Server/5.1*/
+				while ((ptr = tin_fgets(FAKE_NNTP_FP, FALSE)) != NULL) {
+					if (have_list_extensions == LIST_EXTENSIONS) {
+#		ifdef DEBUG
+						debug_nntp("<<<", ptr);
+#		endif /* DEBUG */
+						/*
+						 * some servers (e.g. Hamster 1.3) have leading spaces in the
+						 * extension list
+						 */
+						str_trim(ptr);
+						/*
+						 * Check for (X)OVER
+						 * XOVER should not be listed in EXTENSIONS (but sometimes is)
+						 * checking for it if OVER is not found does no harm.
+						 */
+						if (!xover_cmd) {
+							for (i = 1; i >= 0; i--) {
+								if (strcasecmp(ptr, &xover_cmds[i]) == 0) {
+									xover_cmd = &xover_cmds[i];
+									break;
+								}
+							}
+						}
+					}
+				}
+				break;
+
+			default:
+				break;
+			}
+		}
+#	endif /* 1 */
 	return;
 }
 #endif /* NNTP_ABLE */
@@ -1119,9 +1176,16 @@ nntp_open(
 	}
 
 	/*
-	 * Switch INN into NNRP mode with 'mode reader'
+	 * Find out which NNTP extensions are available
+	 * TODO: The authentication method required may be mentioned in the list of
+	 *       extensions. (For details about authentication methods, see
+	 *       draft-newman-nntpext-auth-01.txt).
 	 */
+	check_extensions();
 
+	/*
+	 * Switch INN into NNRP mode with 'mode reader'
+	 */
 #	ifdef DEBUG
 	debug_nntp("nntp_open", "mode reader");
 #	endif /* DEBUG */
@@ -1170,14 +1234,6 @@ nntp_open(
 	}
 
 	/*
-	 * Find out which NNTP extensions are available
-	 * TODO: The authentication method required may be mentioned in the list of
-	 *       extensions. (For details about authentication methods, see
-	 *       draft-newman-nntpext-auth-01.txt).
-	 */
-	check_extensions();
-
-	/*
 	 * If the user wants us to authenticate on connection startup, do it now.
 	 * Some news servers return "201 no posting" first, but after successful
 	 * authentication you get a "200 posting allowed". To find out if we are
@@ -1261,7 +1317,7 @@ nntp_open(
 	 * (successor of XOVER as of latest NNTP Draft (Jan 2002)
 	 * We have to check that we _don't_ get an ERR_COMMAND
 	 */
-	if (!have_list_extensions) {
+	if (have_list_extensions == NO) {
 		for (i = 0; i < 2; i++) {
 			if (!nntp_command(&xover_cmds[i], ERR_COMMAND, NULL, 0)) {
 				xover_cmd = &xover_cmds[i];
@@ -1506,5 +1562,40 @@ DEBUG_IO((stderr, "nntp_command(%s)\n", 
 	debug_nntp(command, "OK");
 #	endif /* DEBUG */
 	return FAKE_NNTP_FP;
+}
+
+
+/*
+ * same as above, but with a slightly more usefull returncode.
+ * TODO: use it instead of nntp_command in the rest of the code
+ *       (wherever it is more usefull).
+ */
+static int
+new_nntp_command(
+	const char *command,
+	int success,
+	char *message,
+	size_t mlen)
+{
+	int respcode = 0;
+
+DEBUG_IO((stderr, "nntp_command(%s)\n", command));
+#	ifdef DEBUG
+	debug_nntp("nntp command", command);
+#	endif /* DEBUG */
+	put_server(command);
+
+	if (!bool_equal(dangerous_signal_exit, TRUE)) {
+		if ((respcode = get_respcode(message, mlen)) != success) {
+#	ifdef DEBUG
+			debug_nntp(command, "NOT_OK - Expected: %d, got: %d", success, respcode);
+#	endif /* DEBUG */
+			return respcode;
+		}
+	}
+#	ifdef DEBUG
+	debug_nntp(command, "OK");
+#	endif /* DEBUG */
+	return respcode;
 }
 #endif /* NNTP_ABLE */
diff -Nurp tin-1.7.7/src/nrctbl.c tin-1.7.8/src/nrctbl.c
--- tin-1.7.7/src/nrctbl.c	Mon Nov 15 18:44:25 2004
+++ tin-1.7.8/src/nrctbl.c	Wed Feb  2 23:19:51 2005
@@ -3,13 +3,13 @@
  *  Module    : nrctbl.c
  *  Author    : Sven Paulus <sven@tin.org>
  *  Created   : 1996-10-06
- *  Updated   : 2003-01-18
+ *  Updated   : 2005-02-02
  *  Notes     : This module does the NNTP server name lookup in
  *              ~/.tin/newsrctable and returns the real hostname
  *              and the name of the newsrc file for a given
  *              alias of the server.
  *
- * Copyright (c) 1996-2004 Sven Paulus <sven@tin.org>
+ * Copyright (c) 1996-2005 Sven Paulus <sven@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -47,9 +47,9 @@
 #ifndef VERSION_H
 #	include "version.h"
 #endif /* !VERSION_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 /*
  * local prototypes
@@ -204,37 +204,37 @@ get_newsrcname(
 				}
 			}
 			if (error) {
-				char ch;
-				char default_ch = map_to_local(iKeyNrctblAlternative, &menukeymap.nrctbl_create);
+				char ch, default_ch = 'a';
 
 				do {
 					/* very ugly code, but curses is not initialized yet */
 					if (error >= 2) {
-						default_ch = map_to_local(iKeyNrctblCreate, &menukeymap.nrctbl_create);
+						default_ch = 'c';
 						printf("%s%c\b", _(txt_nrctbl_create), default_ch);
 					} else
 						printf("%s%c\b", _(txt_nrctbl_default), default_ch);
 
 					if ((ch = (char) ReadCh()) == '\r' || ch == '\n')
 						ch = default_ch;
-				} while (!strchr(menukeymap.nrctbl_create.localkeys, ch));
+				} while (ch != ESC && ch != 'a' && ch != 'c' && ch != 'd' && ch != 'q');
 				printf("%c\n", ch);
 
-				switch (map_to_default(ch, &menukeymap.nrctbl_create)) {
-					case iKeyNrctblCreate:
+				/* NOTE: these keys can not be remapped */
+				switch (ch) {
+					case 'c':
 						/* FIXME this doesn't check if we could create the file */
 						return TRUE;
 
-					case iKeyNrctblDefault:
+					case 'd':
 						joinpath(newsrc_name, homedir, ".newsrc");
 						return TRUE;
 
-					case iKeyNrctblAlternative:
+					case 'a':
 						snprintf(name_found, sizeof(name_found), ".newsrc-%s", nntpserver_name);
 						joinpath(newsrc_name, homedir, name_found);
 						return TRUE;
 
-					case iKeyNrctblQuit:
+					case 'q':
 						exit(EXIT_SUCCESS);
 						/* keep lint quiet: */
 						/* FALLTHROUGH */
diff -Nurp tin-1.7.7/src/options_menu.c tin-1.7.8/src/options_menu.c
--- tin-1.7.7/src/options_menu.c	Tue Nov 16 14:27:59 2004
+++ tin-1.7.8/src/options_menu.c	Sun Mar 20 17:27:57 2005
@@ -3,10 +3,10 @@
  *  Module    : options_menu.c
  *  Author    : Michael Bienia <michael@vorlon.ping.de>
  *  Created   : 2004-09-05
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-03-20
  *  Notes     : Split from config.c
  *
- * Copyright (c) 2004 Michael Bienia <michael@vorlon.ping.de>
+ * Copyright (c) 2004-2005 Michael Bienia <michael@vorlon.ping.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -44,9 +44,9 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 #define option_lines_per_page (cLINES - INDEX_TOP - 3)
 
@@ -64,6 +64,8 @@ static enum option_enum set_option_num(i
 static int get_option_num(enum option_enum option);
 static t_bool option_is_title(enum option_enum option);
 static t_bool option_on_page(enum option_enum option);
+static t_function option_left(void);
+static t_function option_right(void);
 static void highlight_option(enum option_enum option);
 static void print_any_option(enum option_enum the_option);
 static void redraw_screen(enum option_enum option);
@@ -668,6 +670,22 @@ check_score_defaults(
 }
 
 
+static t_function
+option_left(
+	void)
+{
+	return GLOBAL_QUIT;
+}
+
+
+static t_function
+option_right(
+	void)
+{
+	return CONFIG_SELECT;
+}
+
+
 /*
  * options menu so that the user can dynamically change parameters
  *
@@ -681,10 +699,10 @@ change_config_file(
 	struct t_group *group)
 {
 	enum option_enum option, old_option;
-	int ch = 1;
 	int ret_code = NO_FILTERING;
 	int mime_encoding = MIME_ENCODING_7BIT;
 	t_bool change_option = FALSE;
+	t_function func;
 
 	signal_context = cConfig;
 
@@ -694,74 +712,27 @@ change_config_file(
 
 	redraw_screen(option);
 	forever {
-		ch = ReadCh();
-
-		/*
-		 * convert arrow key codes to "normal" codes
-		 */
-		switch (ch) {
-			case ESC:	/* common arrow keys */
-#	ifdef HAVE_KEY_PREFIX
-			case KEY_PREFIX:
-#	endif /* HAVE_KEY_PREFIX */
-				switch (get_arrow_key(ch)) {
-					case KEYMAP_UP:
-						ch = map_to_local(iKeyUp, &menukeymap.config_change);
-						break;
-
-					case KEYMAP_DOWN:
-						ch = map_to_local(iKeyDown, &menukeymap.config_change);
-						break;
-
-					case KEYMAP_HOME:
-						ch = map_to_local(iKeyFirstPage, &menukeymap.config_change);
-						break;
-
-					case KEYMAP_END:
-						ch = map_to_local(iKeyLastPage, &menukeymap.config_change);
-						break;
-
-					case KEYMAP_PAGE_UP:
-						ch = map_to_local(iKeyPageUp, &menukeymap.config_change);
-						break;
-
-					case KEYMAP_PAGE_DOWN:
-						ch = map_to_local(iKeyPageDown, &menukeymap.config_change);
-						break;
-
-					default:
-						break;
-				} /* switch (get_arrow_key()) */
-				break;
-
-			default:
-				break;
-		}	/* switch (ch) */
-
-		switch (map_to_default(ch, &menukeymap.config_change)) {
-			case iKeyQuit:
+		switch ((func = handle_keypad(option_left, option_right, NULL, option_menu_keys))) {
+			case GLOBAL_QUIT:
 				write_config_file(local_config_file);
 				/* FALLTHROUGH */
-			case iKeyConfigNoSave:
+			case CONFIG_NO_SAVE:
 				clear_note_area();
 				return ret_code;
 
-			case iKeyUp:
-			case iKeyUp2:
+			case GLOBAL_LINE_UP:
 				unhighlight_option(option);
 				option = move_cursor(option, FALSE);
 				highlight_option(option);
 				break;
 
-			case iKeyDown:
-			case iKeyDown2:
+			case GLOBAL_LINE_DOWN:
 				unhighlight_option(option);
 				option = move_cursor(option, TRUE);
 				highlight_option(option);
 				break;
 
-			case iKeyFirstPage:
-			case iKeyConfigFirstPage2:
+			case GLOBAL_FIRST_PAGE:
 				unhighlight_option(option);
 				option = 1;
 				first_option_on_screen = 0;
@@ -770,8 +741,7 @@ change_config_file(
 				/* highlight_option(option); is already done by redraw_screen() */
 				break;
 
-			case iKeyLastPage:
-			case iKeyConfigLastPage2:
+			case GLOBAL_LAST_PAGE:
 				unhighlight_option(option);
 				option = LAST_OPT;
 				last_option_on_screen = LAST_OPT;
@@ -780,9 +750,7 @@ change_config_file(
 				/* highlight_option(option); is already done by redraw_screen() */
 				break;
 
-			case iKeyPageUp:
-			case iKeyPageUp2:
-			case iKeyPageUp3:
+			case GLOBAL_PAGE_UP:
 				unhighlight_option(option);
 				if (option != first_option_on_screen &&	!(option_is_title(first_option_on_screen) && option == next_option(first_option_on_screen, FALSE))) {
 					option = first_option_on_screen;
@@ -812,9 +780,7 @@ change_config_file(
 				/* highlight_option(option); is already done by redraw_screen() */
 				break;
 
-			case iKeyPageDown:
-			case iKeyPageDown2:
-			case iKeyPageDown3:
+			case GLOBAL_PAGE_DOWN:
 				unhighlight_option(option);
 				if (option == LAST_OPT) {
 					/* wrap around */
@@ -850,18 +816,25 @@ change_config_file(
 				/* highlight_option(option); is already done by redraw_screen() */
 				break;
 
-			case iKeyScrollUp:
+			case GLOBAL_SCROLL_UP:
 				option = opt_scroll_up(option);
 				break;
 
-			case iKeyScrollDown:
+			case GLOBAL_SCROLL_DOWN:
 				option = opt_scroll_down(option);
 				break;
 
-			case '1': case '2': case '3': case '4': case '5':
-			case '6': case '7': case '8': case '9':
+			case DIGIT_1:
+			case DIGIT_2:
+			case DIGIT_3:
+			case DIGIT_4:
+			case DIGIT_5:
+			case DIGIT_6:
+			case DIGIT_7:
+			case DIGIT_8:
+			case DIGIT_9:
 				unhighlight_option(option);
-				option = set_option_num(prompt_num(ch, _(txt_enter_option_num)));
+				option = set_option_num(prompt_num(func_to_key(func, option_menu_keys), _(txt_enter_option_num)));
 				if (!option_on_page(option)) {
 					first_option_on_screen = option;
 					set_last_option_on_screen(option);
@@ -870,14 +843,14 @@ change_config_file(
 					highlight_option(option);
 				break;
 
-			case iKeySearchSubjF:
-			case iKeySearchSubjB:
-			case iKeySearchRepeat:
-				if (ch == iKeySearchRepeat && i_key_search_last != iKeySearchSubjF && i_key_search_last != iKeySearchSubjB)
+			case GLOBAL_SEARCH_SUBJECT_FORWARD:
+			case GLOBAL_SEARCH_SUBJECT_BACKWARD:
+			case GLOBAL_SEARCH_REPEAT:
+				if (func == GLOBAL_SEARCH_REPEAT && last_search != GLOBAL_SEARCH_SUBJECT_FORWARD && last_search != GLOBAL_SEARCH_SUBJECT_BACKWARD)
 					break;
 
 				old_option = option;
-				option = search_config((ch == iKeySearchSubjF), (ch == iKeySearchRepeat), option, LAST_OPT);
+				option = search_config((func == GLOBAL_SEARCH_SUBJECT_FORWARD), (func == GLOBAL_SEARCH_REPEAT), option, LAST_OPT);
 				if (option != old_option) {
 					unhighlight_option(old_option);
 					if (!option_on_page(option)) {
@@ -889,12 +862,11 @@ change_config_file(
 				}
 				break;
 
-			case iKeyConfigSelect:
-			case iKeyConfigSelect2:
+			case CONFIG_SELECT:
 				change_option = TRUE;
 				break;
 
-			case iKeyRedrawScr:	/* redraw screen */
+			case GLOBAL_REDRAW_SCREEN:
 				set_last_option_on_screen(first_option_on_screen);
 				redraw_screen(option);
 				break;
@@ -927,7 +899,9 @@ change_config_file(
 						case OPT_PGDN_GOTO_NEXT:
 						case OPT_POS_FIRST_UNREAD:
 						case OPT_POST_PROCESS_VIEW:
+#ifndef DISABLE_PRINTING
 						case OPT_PRINT_HEADER:
+#endif /*! DISABLE_PRINTING */
 						case OPT_PROCESS_ONLY_UNREAD:
 						case OPT_PROMPT_FOLLOWUPTO:
 						case OPT_SHOW_ONLY_UNREAD_GROUPS:
diff -Nurp tin-1.7.7/src/page.c tin-1.7.8/src/page.c
--- tin-1.7.7/src/page.c	Wed Dec  1 16:21:53 2004
+++ tin-1.7.8/src/page.c	Mon Mar 14 14:37:00 2005
@@ -3,10 +3,10 @@
  *  Module    : page.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-10-17
+ *  Updated   : 2005-03-14
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,9 +41,9 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 #ifndef RFC2046_H
 #	include "rfc2046.h"
 #endif /* !RFC2046_H */
@@ -97,12 +97,14 @@ static t_bool reveal_ctrl_l;	/* set when
 /*
  * Local prototypes
  */
-static int handle_pager_keypad(t_menukeys *menukeys);
 static int load_article(int new_respnum, struct t_group *group);
 static int prompt_response(int ch, int curr_respnum);
 static int scroll_page(int dir);
 static t_bool deactivate_next_ctrl_l(void);
 static t_bool activate_last_ctrl_l(void);
+static t_function page_left(void);
+static t_function page_right(void);
+static t_function page_mouse_action(t_function (*left_action) (void), t_function (*right_action) (void));
 static void draw_page_header(const char *group);
 static void preprocess_info_message(FILE *info_fh);
 static void print_message_page(FILE *file, t_lineinfo *messageline, size_t messagelines, size_t base_line, size_t begin, size_t end, int help_level);
@@ -177,85 +179,52 @@ scroll_page(
 /*
  * Map keypad codes to standard keyboard characters
  */
-static int
-handle_pager_keypad(
-	t_menukeys *menukeys)
+static t_function
+page_left(
+	void)
 {
-	int ch = ReadCh();
-
-	switch (ch) {
-		case ESC:
-#	ifdef HAVE_KEY_PREFIX
-		case KEY_PREFIX:
-#	endif /* HAVE_KEY_PREFIX */
-			switch (get_arrow_key(ch)) {
-				case KEYMAP_UP:
-					ch = iKeyUp;
-					break;
-
-				case KEYMAP_DOWN:
-					ch = iKeyDown;
-					break;
-
-				case KEYMAP_LEFT:
-					ch = iKeyQuit;
-					break;
+	return GLOBAL_QUIT;
+}
 
-				case KEYMAP_RIGHT:
-					ch = iKeyPageNextUnread;
-					break;
 
-				case KEYMAP_PAGE_UP:
-					ch = iKeyPageUp;
-					break;
-
-				case KEYMAP_PAGE_DOWN:
-					ch = iKeyPageDown;
-					break;
+static t_function
+page_right(
+	void)
+{
+	return PAGE_NEXT_UNREAD;
+}
 
-				case KEYMAP_HOME:
-					ch = iKeyFirstPage;
-					break;
 
-				case KEYMAP_END:
-					ch = iKeyLastPage;
-					break;
+static t_function
+page_mouse_action(
+	t_function (*left_action) (void),
+	t_function (*right_action) (void))
+{
+	t_function func = NOT_ASSIGNED;
 
-				case KEYMAP_MOUSE:
-					switch (xmouse) {
-						case MOUSE_BUTTON_1:
-							if (xrow < PAGE_HEADER || xrow >= cLINES - 1)
-								ch = iKeyPageDown;
-							else
-								ch = iKeyPageNextUnread;
-							break;
-
-						case MOUSE_BUTTON_2:
-							if (xrow < PAGE_HEADER || xrow >= cLINES - 1)
-								ch = iKeyPageUp;
-							else
-								ch = iKeyQuit;
-							break;
-
-						case MOUSE_BUTTON_3:
-							ch = iKeyMouseToggle;
-							break;
+	switch (xmouse) {
+		case MOUSE_BUTTON_1:
+			if (xrow < PAGE_HEADER || xrow >= cLINES - 1)
+				func = GLOBAL_PAGE_DOWN;
+			else
+				func = right_action();
+			break;
 
-						default:
-							break;
-					}
-					break;
+		case MOUSE_BUTTON_2:
+			if (xrow < PAGE_HEADER || xrow >= cLINES - 1)
+				func = GLOBAL_PAGE_UP;
+			else
+				func = left_action();
+			break;
 
-				default:
-					break;
-			}
+		case MOUSE_BUTTON_3:
+			func = SPECIAL_MOUSE_TOGGLE;
 			break;
 
 		default:
-			ch = map_to_default(ch, menukeys);
 			break;
 	}
-	return ch;
+	return func;
 }
 
 
@@ -335,12 +304,13 @@ show_page(
 {
 	char buf[LEN];
 	char key[MAXKEYLEN];
-	int ch, i, n = 0;
+	int i, n = 0;
 	int filter_state = NO_FILTERING;
 	int old_sort_art_type = tinrc.sort_article_type;
 	int art_type = GROUP_TYPE_NEWS;
 	t_bool mouse_click_on = TRUE;
 	t_bool repeat_search;
+	t_function func;
 
 	filtered_articles = FALSE;	/* used in thread level */
 
@@ -363,22 +333,30 @@ show_page(
 	resize_article(TRUE, &pgart);
 
 	forever {
-		if ((ch = handle_pager_keypad(&menukeymap.page_nav)) == iKeySearchRepeat) {
-			ch = i_key_search_last;
+		if ((func = handle_keypad(page_left, page_right, page_mouse_action, page_keys)) == GLOBAL_SEARCH_REPEAT) {
+			func = last_search;
 			repeat_search = TRUE;
 		} else
 			repeat_search = FALSE;
 
-		switch (ch) {
-			case iKeyAbort:       /* Abort */
+		switch (func) {
+			case GLOBAL_ABORT:       /* Abort */
 				break;
 
-			case '0': case '1': case '2': case '3': case '4': case '5':
-			case '6': case '7': case '8': case '9':
+			case DIGIT_0:
+			case DIGIT_1:
+			case DIGIT_2:
+			case DIGIT_3:
+			case DIGIT_4:
+			case DIGIT_5:
+			case DIGIT_6:
+			case DIGIT_7:
+			case DIGIT_8:
+			case DIGIT_9:
 				if (!HAS_FOLLOWUPS(which_thread(this_resp)))
 					info_message(_(txt_no_responses));
 				else {
-					if ((n = prompt_response(ch, this_resp)) != -1) {
+					if ((n = prompt_response(func_to_key(func, page_keys), this_resp)) != -1) {
 						XFACE_CLEAR();
 						if ((i = load_article(n, group)) < 0)
 							return i;
@@ -387,14 +365,14 @@ show_page(
 				break;
 
 #ifndef NO_SHELL_ESCAPE
-			case iKeyShellEscape:
+			case GLOBAL_SHELL_ESCAPE:
 				XFACE_CLEAR();
 				shell_escape();
 				draw_page(group->name, 0);
 				break;
 #endif /* !NO_SHELL_ESCAPE */
 
-			case iKeyMouseToggle:
+			case SPECIAL_MOUSE_TOGGLE:
 				if (mouse_click_on)
 					set_xclick_off();
 				else
@@ -402,9 +380,7 @@ show_page(
 				mouse_click_on = bool_not(mouse_click_on);
 				break;
 
-			case iKeyPageUp:		/* page up */
-			case iKeyPageUp2:
-			case iKeyPageUp3:
+			case GLOBAL_PAGE_UP:
 				if (activate_last_ctrl_l())
 					draw_page(group->name, 0);
 				else {
@@ -417,32 +393,33 @@ show_page(
 				}
 				break;
 
-			case iKeyPageDown:		/* page down or next response */
-			case iKeyPageDown2:
-			case iKeyPageDown3:
-			case iKeyPageNextUnread:
-				if (!((ch == iKeyPageNextUnread) && tinrc.tab_goto_next_unread) && deactivate_next_ctrl_l())
+			case GLOBAL_PAGE_DOWN:		/* page down or next response */
+			case PAGE_NEXT_UNREAD:
+			case PAGE_PAGE_DOWN3:
+				if (!((func == PAGE_NEXT_UNREAD) && tinrc.tab_goto_next_unread) && deactivate_next_ctrl_l())
 					draw_page(group->name, 0);
 				else {
 					if (curr_line + ARTLINES >= artlines) {	/* End is already on screen */
-						switch (ch) {
-							case iKeyPageNextUnread:	/* <TAB> */
+						switch (func) {
+							case PAGE_NEXT_UNREAD:	/* <TAB> */
 								goto page_goto_next_unread;
 
-							case iKeyPageDown:
-							case iKeyPageDown2:
+							case GLOBAL_PAGE_DOWN:
 								if (tinrc.pgdn_goto_next)
 									goto page_goto_next_unread;
 								break;
 
-							case iKeyPageDown3:			/* <SPACE> */
+							case PAGE_PAGE_DOWN3:			/* <SPACE> */
 								if (tinrc.space_goto_next_unread)
 									goto page_goto_next_unread;
 								break;
+
+							default:		/* to keep gcc quiet */
+								break;
 						}
 						info_message(_(txt_end_of_art));
 					} else {
-						if ((ch == iKeyPageNextUnread) && tinrc.tab_goto_next_unread)
+						if ((func == PAGE_NEXT_UNREAD) && tinrc.tab_goto_next_unread)
 							goto page_goto_next_unread;
 
 						curr_line += (tinrc.scroll_lines == -2) ? ARTLINES / 2 : ARTLINES;
@@ -462,8 +439,7 @@ page_goto_next_unread:
 					return i;
 				break;
 
-			case iKeyFirstPage:		/* beginning of article */
-			case iKeyPageFirstPage:
+			case GLOBAL_FIRST_PAGE:		/* beginning of article */
 				if (reveal_ctrl_l_lines > -1 || curr_line != 0) {
 					reveal_ctrl_l_lines = -1;
 					curr_line = 0;
@@ -471,8 +447,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyLastPage:		/* end of article */
-			case iKeyPageLastPage:
+			case GLOBAL_LAST_PAGE:		/* end of article */
 				if (reveal_ctrl_l_lines < artlines - 1 || curr_line + ARTLINES != artlines) {
 					reveal_ctrl_l_lines = artlines - 1;
 					/* Display a full last page for neatness */
@@ -481,8 +456,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyUp:		/* line up */
-			case iKeyUp2:
+			case GLOBAL_LINE_UP:
 				if (activate_last_ctrl_l())
 					draw_page(group->name, 0);
 				else {
@@ -497,8 +471,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyDown:		/* line down */
-			case iKeyDown2:
+			case GLOBAL_LINE_DOWN:
 				if (deactivate_next_ctrl_l())
 					draw_page(group->name, 0);
 				else {
@@ -513,7 +486,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyLastViewed:	/* show last viewed article */
+			case GLOBAL_LAST_VIEWED:	/* show last viewed article */
 				if (last_resp < 0 || (which_thread(last_resp) == -1)) {
 					info_message(_(txt_no_last_message));
 					break;
@@ -524,7 +497,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyLookupMessage:			/* Goto article by Message-ID */
+			case GLOBAL_LOOKUP_MESSAGEID:			/* Goto article by Message-ID */
 				if ((n = prompt_msgid()) != ART_UNAVAILABLE) {
 					if ((i = load_article(n, group)) < 0) {
 						XFACE_CLEAR();
@@ -533,7 +506,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyPageGotoParent:		/* Goto parent of this article */
+			case PAGE_GOTO_PARENT:		/* Goto parent of this article */
 			{
 				struct t_msgid *parent = arts[this_resp].refptr->parent;
 
@@ -560,39 +533,39 @@ page_goto_next_unread:
 				break;
 			}
 
-			case iKeyPipe:		/* pipe article/thread/tagged arts to command */
+			case GLOBAL_PIPE:		/* pipe article/thread/tagged arts to command */
 				XFACE_SUPPRESS();
 				feed_articles(FEED_PIPE, PAGE_LEVEL, group, this_resp);
 				XFACE_SHOW();
 				break;
 
-			case iKeyPageMail:	/* mail article/thread/tagged articles to somebody */
+			case PAGE_MAIL:	/* mail article/thread/tagged articles to somebody */
 				XFACE_SUPPRESS();
 				feed_articles(FEED_MAIL, PAGE_LEVEL, group, this_resp);
 				XFACE_SHOW();
 				break;
 
 #ifndef DISABLE_PRINTING
-			case iKeyPrint:	/* output art/thread/tagged arts to printer */
+			case GLOBAL_PRINT:	/* output art/thread/tagged arts to printer */
 				XFACE_SUPPRESS();
 				feed_articles(FEED_PRINT, PAGE_LEVEL, group, this_resp);
 				XFACE_SHOW();
 				break;
 #endif /* !DISABLE_PRINTING */
 
-			case iKeyPageRepost:	/* repost current article */
+			case PAGE_REPOST:	/* repost current article */
 				XFACE_SUPPRESS();
 				feed_articles(FEED_REPOST, PAGE_LEVEL, group, this_resp);
 				XFACE_SHOW();
 				break;
 
-			case iKeyPageSave:	/* save article/thread/tagged articles */
+			case PAGE_SAVE:	/* save article/thread/tagged articles */
 				XFACE_SUPPRESS();
 				feed_articles(FEED_SAVE, PAGE_LEVEL, group, this_resp);
 				XFACE_SHOW();
 				break;
 
-			case iKeyPageAutoSave:	/* Auto-save articles without prompting */
+			case PAGE_AUTOSAVE:	/* Auto-save articles without prompting */
 				if (grpmenu.curr >= 0) {
 					XFACE_SUPPRESS();
 					feed_articles(FEED_AUTOSAVE, PAGE_LEVEL, group, (int) base[grpmenu.curr]);
@@ -600,19 +573,19 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeySearchSubjF:	/* search in article */
-			case iKeySearchSubjB:
-				if ((i = search_article((ch == iKeySearchSubjF), repeat_search, search_line, artlines, artline, reveal_ctrl_l_lines, note_fp)) == -1)
+			case GLOBAL_SEARCH_SUBJECT_FORWARD:	/* search in article */
+			case GLOBAL_SEARCH_SUBJECT_BACKWARD:
+				if ((i = search_article((func == GLOBAL_SEARCH_SUBJECT_FORWARD), repeat_search, search_line, artlines, artline, reveal_ctrl_l_lines, note_fp)) == -1)
 					break;
 
-				if (ch == iKeySearchSubjB && !reveal_ctrl_l) {
+				if (func == GLOBAL_SEARCH_SUBJECT_BACKWARD && !reveal_ctrl_l) {
 					reveal_ctrl_l_lines = curr_line + ARTLINES - 1;
 					draw_page(group->name, 0);
 				}
 				process_search(&curr_line, artlines, ARTLINES, PAGE_LEVEL);
 				break;
 
-			case iKeySearchBody:	/* article body search */
+			case GLOBAL_SEARCH_BODY:	/* article body search */
 				if ((n = search_body(group, this_resp, repeat_search)) != -1) {
 					this_resp = n;			/* Stop load_article() changing context again */
 					if ((i = load_article(n, group)) < 0) {
@@ -623,7 +596,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyPageTopThd:	/* first article in current thread */
+			case PAGE_TOP_THREAD:	/* first article in current thread */
 				if (arts[this_resp].prev >= 0) {
 					if ((n = which_thread(this_resp)) >= 0 && base[n] != this_resp) {
 						assert(n < grpmenu.max);
@@ -635,7 +608,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyPageBotThd:	/* last article in current thread */
+			case PAGE_BOTTOM_THREAD:	/* last article in current thread */
 				for (i = this_resp; i >= 0; i = arts[i].thread)
 					n = i;
 
@@ -647,8 +620,7 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyPageNextThd:
-			case iKeyPageNextThd2:	/* start of next thread */
+			case PAGE_NEXT_THREAD:	/* start of next thread */
 				XFACE_CLEAR();
 				if ((n = next_thread(this_resp)) == -1)
 					return (which_thread(this_resp));
@@ -657,7 +629,7 @@ page_goto_next_unread:
 				break;
 
 #ifdef HAVE_PGP_GPG
-			case iKeyPagePGPCheckArticle:
+			case PAGE_PGP_CHECK_ARTICLE:
 				XFACE_SUPPRESS();
 				if (pgp_check_article(&pgart))
 					draw_page(group->name, 0);
@@ -665,12 +637,12 @@ page_goto_next_unread:
 				break;
 #endif /* HAVE_PGP_GPG */
 
-			case iKeyPageToggleHeaders:	/* toggle display of whole 'raw' article */
+			case PAGE_TOGGLE_HEADERS:	/* toggle display of whole 'raw' article */
 				XFACE_CLEAR();
 				toggle_raw(group);
 				break;
 
-			case iKeyPageToggleTex2iso:		/* toggle german TeX to ISO latin1 style conversion */
+			case PAGE_TOGGLE_TEX2ISO:		/* toggle german TeX to ISO latin1 style conversion */
 				if (((group->attribute->tex2iso_conv) = !(group->attribute->tex2iso_conv)))
 					pgart.tex2iso = is_art_tex_encoded(pgart.raw);
 				else
@@ -681,14 +653,14 @@ page_goto_next_unread:
 				info_message(_(txt_toggled_tex2iso), txt_onoff[group->attribute->tex2iso_conv != FALSE ? 1 : 0]);
 				break;
 
-			case iKeyPageToggleTabs:		/* toggle tab stops 8 vs 4 */
+			case PAGE_TOGGLE_TABS:		/* toggle tab stops 8 vs 4 */
 				tabwidth = (tabwidth == 8) ? 4 : 8;
 				resize_article(TRUE, &pgart);	/* Also recooks it.. */
 				draw_page(group->name, 0);
 				info_message(_(txt_toggled_tabwidth), tabwidth);
 				break;
 
-			case iKeyPageToggleUue:			/* toggle display of uuencoded sections */
+			case PAGE_TOGGLE_UUE:			/* toggle display of uuencoded sections */
 				hide_uue = (hide_uue + 1) % (UUE_ALL + 1);
 				resize_article(TRUE, &pgart);	/* Also recooks it.. */
 				/*
@@ -701,7 +673,7 @@ page_goto_next_unread:
 				/* TODO: info_message()? */
 				break;
 
-			case iKeyPageReveal:			/* toggle hiding after ^L */
+			case PAGE_REVEAL:			/* toggle hiding after ^L */
 				reveal_ctrl_l = bool_not(reveal_ctrl_l);
 				if (!reveal_ctrl_l) {	/* switched back to active ^L's */
 					reveal_ctrl_l_lines = -1;
@@ -712,25 +684,25 @@ page_goto_next_unread:
 				/* TODO: info_message()? */
 				break;
 
-			case iKeyPageQuickAutoSel:	/* quickly auto-select article */
-			case iKeyPageQuickKill:		/* quickly kill article */
-				if ((filtered_articles = quick_filter((ch == iKeyPageQuickKill) ? FILTER_KILL : FILTER_SELECT, group, &arts[this_resp])))
+			case GLOBAL_QUICK_FILTER_SELECT:	/* quickly auto-select article */
+			case GLOBAL_QUICK_FILTER_KILL:		/* quickly kill article */
+				if ((filtered_articles = quick_filter((func == GLOBAL_QUICK_FILTER_KILL) ? FILTER_KILL : FILTER_SELECT, group, &arts[this_resp])))
 					goto return_to_index;
 
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyPageAutoSel:		/* auto-select article menu */
-			case iKeyPageAutoKill:		/* kill article menu */
+			case GLOBAL_MENU_FILTER_SELECT:		/* auto-select article menu */
+			case GLOBAL_MENU_FILTER_KILL:			/* kill article menu */
 				XFACE_CLEAR();
-				if (filter_menu((ch == iKeyPageAutoKill) ? FILTER_KILL : FILTER_SELECT, group, &arts[this_resp])) {
+				if (filter_menu((func == GLOBAL_MENU_FILTER_KILL) ? FILTER_KILL : FILTER_SELECT, group, &arts[this_resp])) {
 					if ((filtered_articles = filter_articles(group)))
 						goto return_to_index;
 				}
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyPageEditFilter:
+			case GLOBAL_EDIT_FILTER:
 				XFACE_CLEAR();
 				if (!invoke_editor(filter_file, FILTER_FILE_OFFSET))
 					break;
@@ -741,20 +713,20 @@ page_goto_next_unread:
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyRedrawScr:		/* redraw current page of article */
+			case GLOBAL_REDRAW_SCREEN:		/* redraw current page of article */
 				my_retouch();
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyPageToggleRot:	/* toggle rot-13 mode */
+			case PAGE_TOGGLE_ROT13:	/* toggle rot-13 mode */
 				rotate = rotate ? 0 : 13;
 				draw_page(group->name, 0);
 				info_message(_(txt_toggled_rot13));
 				break;
 
-			case iKeySearchAuthF:	/* author search forward */
-			case iKeySearchAuthB:	/* author search backward */
-				if ((n = search(SEARCH_AUTH, this_resp, (ch == iKeySearchAuthF), repeat_search)) < 0)
+			case GLOBAL_SEARCH_AUTHOR_FORWARD:	/* author search forward */
+			case GLOBAL_SEARCH_AUTHOR_BACKWARD:	/* author search backward */
+				if ((n = search(func, this_resp, repeat_search)) < 0)
 					break;
 				if ((i = load_article(n, group)) < 0) {
 					XFACE_CLEAR();
@@ -762,17 +734,17 @@ page_goto_next_unread:
 				}
 				break;
 
-			case iKeyPageCatchup:			/* catchup - mark read, goto next */
-			case iKeyPageCatchupNextUnread:	/* goto next unread */
-				snprintf(buf, sizeof(buf), _(txt_mark_thread_read), (ch == iKeyPageCatchupNextUnread) ? _(txt_enter_next_thread) : "");
-				if ((!TINRC_CONFIRM_ACTION) || prompt_yn(cLINES, buf, TRUE) == 1) {
+			case PAGE_CATCHUP:			/* catchup - mark read, goto next */
+			case PAGE_CATCHUP_NEXT_UNREAD:	/* goto next unread */
+				snprintf(buf, sizeof(buf), _(txt_mark_thread_read), (func == PAGE_CATCHUP_NEXT_UNREAD) ? _(txt_enter_next_thread) : "");
+				if ((!TINRC_CONFIRM_ACTION) || prompt_yn(buf, TRUE) == 1) {
 					thd_mark_read(group, base[which_thread(this_resp)]);
 					XFACE_CLEAR();
-					return (ch == iKeyPageCatchupNextUnread) ? GRP_NEXTUNREAD : GRP_NEXT;
+					return (func == PAGE_CATCHUP_NEXT_UNREAD) ? GRP_NEXTUNREAD : GRP_NEXT;
 				}
 				break;
 
-			case iKeyPageMarkThdUnread:
+			case PAGE_MARK_THREAD_UNREAD:
 				thd_mark_unread(group, base[which_thread(this_resp)]);
 				/*
 				 * FIXME: replace txt_thread by txt_article_upper
@@ -781,7 +753,7 @@ page_goto_next_unread:
 				info_message(_(txt_marked_as_unread), _(txt_thread_upper));
 				break;
 
-			case iKeyPageCancel:			/* cancel an article */
+			case PAGE_CANCEL:			/* cancel an article */
 				if (can_post || art_type != GROUP_TYPE_NEWS) {
 					XFACE_SUPPRESS();
 					if (cancel_article(group, &arts[this_resp], this_resp))
@@ -791,39 +763,39 @@ page_goto_next_unread:
 					info_message(_(txt_cannot_post));
 				break;
 
-			case iKeyPageEditArticle:		/* edit an article (mailgroup only) */
+			case PAGE_EDIT_ARTICLE:		/* edit an article (mailgroup only) */
 				XFACE_SUPPRESS();
 				if (art_edit(group, &arts[this_resp]))
 					draw_page(group->name, 0);
 				XFACE_SHOW();
 				break;
 
-			case iKeyPageFollowupQuote:		/* post a followup to this article */
-			case iKeyPageFollowupQuoteHeaders:
-			case iKeyPageFollowup:
+			case PAGE_FOLLOWUP_QUOTE:		/* post a followup to this article */
+			case PAGE_FOLLOWUP_QUOTE_HEADERS:
+			case PAGE_FOLLOWUP:
 				if (!can_post && art_type == GROUP_TYPE_NEWS) {
 					info_message(_(txt_cannot_post));
 					break;
 				}
 				XFACE_CLEAR();
 				(void) post_response(group->name, this_resp,
-				  (ch == iKeyPageFollowupQuote || ch == iKeyPageFollowupQuoteHeaders) ? TRUE : FALSE,
-				  ch == iKeyPageFollowupQuoteHeaders ? TRUE : FALSE, show_all_headers);
+				  (func == PAGE_FOLLOWUP_QUOTE || func == PAGE_FOLLOWUP_QUOTE_HEADERS) ? TRUE : FALSE,
+				  func == PAGE_FOLLOWUP_QUOTE_HEADERS ? TRUE : FALSE, show_all_headers);
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyHelp:	/* help */
+			case GLOBAL_HELP:	/* help */
 				XFACE_CLEAR();
 				show_help_page(PAGE_LEVEL, _(txt_art_pager_com));
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyToggleHelpDisplay:	/* toggle mini help menu */
+			case GLOBAL_TOGGLE_HELP_DISPLAY:	/* toggle mini help menu */
 				toggle_mini_help(PAGE_LEVEL);
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyQuit:	/* return to index page */
+			case GLOBAL_QUIT:	/* return to index page */
 return_to_index:
 				XFACE_CLEAR();
 				if (filter_state == NO_FILTERING && tinrc.sort_article_type != old_sort_art_type)
@@ -843,14 +815,14 @@ return_to_index:
 				}
 				return i;
 
-			case iKeyToggleInverseVideo:	/* toggle inverse video */
+			case GLOBAL_TOGGLE_INVERSE_VIDEO:	/* toggle inverse video */
 				toggle_inverse_video();
 				draw_page(group->name, 0);
 				show_inverse_video_status();
 				break;
 
 #ifdef HAVE_COLOR
-			case iKeyToggleColor:		/* toggle color */
+			case GLOBAL_TOGGLE_COLOR:		/* toggle color */
 				if (toggle_color()) {
 					draw_page(group->name, 0);
 					show_color_status();
@@ -858,19 +830,19 @@ return_to_index:
 				break;
 #endif /* HAVE_COLOR */
 
-			case iKeyPageListThd:	/* -> thread page that this article is in */
+			case PAGE_LIST_THREAD:	/* -> thread page that this article is in */
 				XFACE_CLEAR();
 				fixup_thread(this_resp, FALSE);
 				return GRP_GOTOTHREAD;
 
-			case iKeyOptionMenu:	/* option menu */
+			case GLOBAL_OPTION_MENU:	/* option menu */
 				XFACE_CLEAR();
 				if (change_config_file(group) == FILTERING)
 					filter_state = FILTERING;
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyPageNextArt:	/* skip to next article */
+			case PAGE_NEXT_ARTICLE:	/* skip to next article */
 				XFACE_CLEAR();
 				if ((n = next_response(this_resp)) == -1)
 					return (which_thread(this_resp));
@@ -879,7 +851,7 @@ return_to_index:
 					return i;
 				break;
 
-			case iKeyPageKillThd:	/* mark rest of thread as read */
+			case PAGE_MARK_THREAD_READ:	/* mark rest of thread as read */
 				thd_mark_read(group, this_resp);
 				if ((n = next_unread(next_response(this_resp))) == -1)
 					goto return_to_index;
@@ -889,10 +861,10 @@ return_to_index:
 				}
 				break;
 
-			case iKeyPageNextUnreadArt:	/* next unread article */
+			case PAGE_NEXT_UNREAD_ARTICLE:	/* next unread article */
 				goto page_goto_next_unread;
 
-			case iKeyPagePrevArt:	/* previous article */
+			case PAGE_PREVIOUS_ARTICLE:	/* previous article */
 				XFACE_CLEAR();
 				if ((n = prev_response(this_resp)) == -1)
 					return this_resp;
@@ -901,7 +873,7 @@ return_to_index:
 					return i;
 				break;
 
-			case iKeyPagePrevUnreadArt:	/* previous unread article */
+			case PAGE_PREVIOUS_UNREAD_ARTICLE:	/* previous unread article */
 				if ((n = prev_unread(prev_response(this_resp))) == -1)
 					info_message(_(txt_no_prev_unread_art));
 				else {
@@ -912,23 +884,23 @@ return_to_index:
 				}
 				break;
 
-			case iKeyQuitTin:	/* quit */
+			case GLOBAL_QUIT_TIN:	/* quit */
 				XFACE_CLEAR();
 				return GRP_QUIT;
 
-			case iKeyPageReplyQuote:	/* reply to author through mail */
-			case iKeyPageReplyQuoteHeaders:
-			case iKeyPageReply:
+			case PAGE_REPLY_QUOTE:	/* reply to author through mail */
+			case PAGE_REPLY_QUOTE_HEADERS:
+			case PAGE_REPLY:
 				XFACE_CLEAR();
-				mail_to_author(group->name, this_resp, (ch == iKeyPageReplyQuote || ch == iKeyPageReplyQuoteHeaders) ? TRUE : FALSE, ch == iKeyPageReplyQuoteHeaders ? TRUE : FALSE, show_all_headers);
+				mail_to_author(group->name, this_resp, (func == PAGE_REPLY_QUOTE || func == PAGE_REPLY_QUOTE_HEADERS) ? TRUE : FALSE, func == PAGE_REPLY_QUOTE_HEADERS ? TRUE : FALSE, show_all_headers);
 				draw_page(group->name, 0);
 				break;
 
-			case iKeyPageTag:	/* tag/untag article for saving */
+			case PAGE_TAG:	/* tag/untag article for saving */
 				tag_article(this_resp);
 				break;
 
-			case iKeyPageGroupSel:	/* return to group selection page */
+			case PAGE_GROUP_SELECT:	/* return to group selection page */
 				if (filter_state == FILTERING) {
 					filter_articles(group);
 					make_threads(group, FALSE);
@@ -936,19 +908,18 @@ return_to_index:
 				XFACE_CLEAR();
 				return GRP_RETSELECT;
 
-			case iKeyVersion:
+			case GLOBAL_VERSION:
 				info_message(cvers);
 				break;
 
-			case iKeyPost:	/* post a basenote */
+			case GLOBAL_POST:	/* post a basenote */
 				XFACE_SUPPRESS();
 				if (post_article(group->name))
 					draw_page(group->name, 0);
 				XFACE_SHOW();
 				break;
 
-			case iKeyPostponed:
-			case iKeyPostponed2:	/* post postponed article */
+			case GLOBAL_POSTPONED:	/* post postponed article */
 				if (can_post || art_type != GROUP_TYPE_NEWS) {
 					XFACE_SUPPRESS();
 					if (pickup_postponed_articles(FALSE, FALSE))
@@ -958,19 +929,19 @@ return_to_index:
 					info_message(_(txt_cannot_post));
 				break;
 
-			case iKeyDisplayPostHist:	/* display messages posted by user */
+			case GLOBAL_DISPLAY_POST_HISTORY:	/* display messages posted by user */
 				XFACE_SUPPRESS();
 				if (user_posted_messages())
 					draw_page(group->name, 0);
 				XFACE_SHOW();
 				break;
 
-			case iKeyPageMarkArtUnread:	/* mark article as unread(to return) */
+			case PAGE_MARK_ARTICLE_UNREAD:	/* mark article as unread(to return) */
 				art_mark(group, &arts[this_resp], ART_WILL_RETURN);
 				info_message(_(txt_marked_as_unread), _(txt_article_upper));
 				break;
 
-			case iKeyPageSkipIncludedText:	/* skip included text */
+			case PAGE_SKIP_INCLUDED_TEXT:	/* skip included text */
 				for (i = curr_line; i < artlines; i++) {
 					if (!(artline[i].flags & (C_QUOTE1 | C_QUOTE2 | C_QUOTE3)))
 						break;
@@ -982,24 +953,24 @@ return_to_index:
 				}
 				break;
 
-			case iKeyToggleInfoLastLine: /* this is _not_ correct, we do not toggle status here */
+			case GLOBAL_TOGGLE_INFO_LAST_LINE: /* this is _not_ correct, we do not toggle status here */
 				info_message("%s", arts[this_resp].subject);
 				break;
 
-			case iKeyPageToggleHighlight:
+			case PAGE_TOGGLE_HIGHLIGHTING:
 				word_highlight = bool_not(word_highlight);
 				draw_page(group->name, 0);
 				info_message(_(txt_toggled_high), txt_onoff[word_highlight != FALSE ? 1 : 0]);
 				break;
 
-			case iKeyPageViewAttach:
+			case PAGE_VIEW_ATTACHMENTS:
 				XFACE_SUPPRESS();
 				decode_save_mime(&pgart, FALSE);
 				draw_page(group->name, 0);
 				XFACE_SHOW();
 				break;
 
-			case iKeyPageViewUrl:
+			case PAGE_VIEW_URL:
 				if (!show_all_headers) { /* cooked mode? */
 					XFACE_SUPPRESS();
 					resize_article(FALSE, &pgart); /* umbreak long lines */
@@ -1011,7 +982,7 @@ return_to_index:
 				break;
 
 			default:
-				info_message(_(txt_bad_command), printascii(key, map_to_local(iKeyHelp, &menukeymap.page_nav)));
+				info_message(_(txt_bad_command), printascii(key, func_to_key(GLOBAL_HELP, page_keys)));
 		}
 	}
 	/* NOTREACHED */
@@ -1796,7 +1767,7 @@ load_article(
 		return 0;
 
 	if (tinrc.ask_for_metamail) {
-		if (prompt_yn(cLINES, _(txt_use_mime), TRUE) != 1)
+		if (prompt_yn(_(txt_use_mime), TRUE) != 1)
 			return 0;
 	}
 
@@ -2080,8 +2051,8 @@ info_pager(
 	const char *title,
 	t_bool wrap_at_ends)
 {
-	int ch;
 	int offset;
+	t_function func;
 
 	search_line = 0;
 	reset_srch_offsets();
@@ -2093,12 +2064,11 @@ info_pager(
 	display_info_page(0);
 
 	forever {
-		switch (ch = handle_pager_keypad(&menukeymap.info_nav)) {
-			case ESC:	/* common arrow keys */
+		switch (func = handle_keypad(page_left, page_right, page_mouse_action, info_keys)) {
+			case GLOBAL_ABORT:	/* common arrow keys */
 				break;
 
-			case iKeyUp:				/* line up */
-			case iKeyUp2:
+			case GLOBAL_LINE_UP:
 				if (num_info_lines <= NOTESLINES) {
 					info_message(_(txt_begin_of_art));
 					break;
@@ -2117,8 +2087,7 @@ info_pager(
 				display_info_page(offset);
 				break;
 
-			case iKeyDown:				/* line down */
-			case iKeyDown2:
+			case GLOBAL_LINE_DOWN:
 				if (num_info_lines <= NOTESLINES) {
 					info_message(_(txt_end_of_art));
 					break;
@@ -2137,9 +2106,7 @@ info_pager(
 				display_info_page(offset);
 				break;
 
-			case iKeyPageDown:			/* page down */
-			case iKeyPageDown2:
-			case iKeyPageDown3:
+			case GLOBAL_PAGE_DOWN:
 				if (num_info_lines <= NOTESLINES) {
 					info_message(_(txt_end_of_art));
 					break;
@@ -2157,9 +2124,7 @@ info_pager(
 				display_info_page(0);
 				break;
 
-			case iKeyPageUp:			/* page up */
-			case iKeyPageUp2:
-			case iKeyPageUp3:
+			case GLOBAL_PAGE_UP:
 				if (num_info_lines <= NOTESLINES) {
 					info_message(_(txt_begin_of_art));
 					break;
@@ -2177,16 +2142,14 @@ info_pager(
 				display_info_page(0);
 				break;
 
-			case iKeyFirstPage:			/* Home */
-			case iKeyHelpFirstPage2:
+			case GLOBAL_FIRST_PAGE:
 				if (curr_info_line) {
 					curr_info_line = 0;
 					display_info_page(0);
 				}
 				break;
 
-			case iKeyLastPage:			/* End */
-			case iKeyHelpLastPage2:
+			case GLOBAL_LAST_PAGE:
 				if (curr_info_line + NOTESLINES != num_info_lines) {
 					/* Display a full last page for neatness */
 					curr_info_line = num_info_lines - NOTESLINES;
@@ -2194,24 +2157,24 @@ info_pager(
 				}
 				break;
 
-			case iKeyToggleHelpDisplay:
+			case GLOBAL_TOGGLE_HELP_DISPLAY:
 				toggle_mini_help(INFO_PAGER);
 				display_info_page(0);
 				break;
 
-			case iKeySearchSubjF:
-			case iKeySearchSubjB:
-			case iKeySearchRepeat:
-				if (ch == iKeySearchRepeat && i_key_search_last != iKeySearchSubjF && i_key_search_last != iKeySearchSubjB)
+			case GLOBAL_SEARCH_SUBJECT_FORWARD:
+			case GLOBAL_SEARCH_SUBJECT_BACKWARD:
+			case GLOBAL_SEARCH_REPEAT:
+				if (func == GLOBAL_SEARCH_REPEAT && last_search != GLOBAL_SEARCH_SUBJECT_FORWARD && last_search != GLOBAL_SEARCH_SUBJECT_BACKWARD)
 					break;
 
-				if ((search_article((ch == iKeySearchSubjF), (ch == iKeySearchRepeat), search_line, num_info_lines, infoline, num_info_lines - 1, info_file)) == -1)
+				if ((search_article((func == GLOBAL_SEARCH_SUBJECT_FORWARD), (func == GLOBAL_SEARCH_REPEAT), search_line, num_info_lines, infoline, num_info_lines - 1, info_file)) == -1)
 					break;
 
 				process_search(&curr_info_line, num_info_lines, NOTESLINES, INFO_PAGER);
 				break;
 
-			case iKeyQuit:	/* quit */
+			case GLOBAL_QUIT:	/* quit */
 				ClearScreen();
 				return;
 
diff -Nurp tin-1.7.7/src/pgp.c tin-1.7.8/src/pgp.c
--- tin-1.7.7/src/pgp.c	Wed Dec  1 16:01:28 2004
+++ tin-1.7.8/src/pgp.c	Sat Feb 12 14:23:18 2005
@@ -3,10 +3,10 @@
  *  Module    : pgp.c
  *  Author    : Steven J. Madsen
  *  Created   : 1995-05-12
- *  Updated   : 2004-12-01
+ *  Updated   : 2005-02-12
  *  Notes     : PGP support
  *
- * Copyright (c) 1995-2004 Steven J. Madsen <steve@erinet.com>
+ * Copyright (c) 1995-2005 Steven J. Madsen <steve@erinet.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -43,9 +43,9 @@
 #	ifndef TCURSES_H
 #		include "tcurses.h"
 #	endif /* !TCURSES_H */
-#	ifndef MENUKEYS_H
-#		include "menukeys.h"
-#	endif /* !MENUKEYS_H */
+#	ifndef KEYMAP_H
+#		include "keymap.h"
+#	endif /* !KEYMAP_H */
 
 
 /*
@@ -332,25 +332,24 @@ invoke_pgp_mail(
 	const char *nam,
 	char *mail_to)
 {
-	char ch, ch_default = iKeyPgpSign;
 	char keyboth[MAXKEYLEN], keyencrypt[MAXKEYLEN], keyquit[MAXKEYLEN];
 	char keysign[MAXKEYLEN];
+	t_function func, default_func = PGP_SIGN;
 
 	if (!pgp_available())
 		return;
 
-	ch = prompt_slk_response(ch_default, &menukeymap.pgp_mail,
-			_(txt_pgp_mail),
-			printascii(keyencrypt, map_to_local(iKeyPgpEncrypt, &menukeymap.pgp_mail)),
-			printascii(keysign, map_to_local(iKeyPgpSign, &menukeymap.pgp_mail)),
-			printascii(keyboth, map_to_local(iKeyPgpEncSign, &menukeymap.pgp_mail)),
-			printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.pgp_mail)));
-	switch (ch) {
-		case iKeyAbort:
-		case iKeyQuit:
+	func = prompt_slk_response(default_func, pgp_mail_keys, _(txt_pgp_mail),
+			printascii(keyencrypt, func_to_key(PGP_KEY_ENCRYPT, pgp_mail_keys)),
+			printascii(keysign, func_to_key(PGP_KEY_SIGN, pgp_mail_keys)),
+			printascii(keyboth, func_to_key(PGP_KEY_ENCRYPT_SIGN, pgp_mail_keys)),
+			printascii(keyquit, func_to_key(GLOBAL_QUIT, pgp_mail_keys)));
+	switch (func) {
+		case GLOBAL_ABORT:
+		case GLOBAL_QUIT:
 			break;
 
-		case iKeyPgpSign:
+		case PGP_KEY_SIGN:
 #ifdef HAVE_PGPK
 			ClearScreen();
 			MoveCursor(cLINES - 7, 0);
@@ -358,7 +357,7 @@ invoke_pgp_mail(
 			do_pgp(PGP_SIGN, nam, NULL);
 			break;
 
-		case iKeyPgpEncSign:
+		case PGP_KEY_ENCRYPT_SIGN:
 #ifdef HAVE_PGPK
 			ClearScreen();
 			MoveCursor(cLINES - 7, 0);
@@ -366,7 +365,7 @@ invoke_pgp_mail(
 			do_pgp(PGP_SIGN | PGP_ENCRYPT, nam, mail_to);
 			break;
 
-		case iKeyPgpEncrypt:
+		case PGP_KEY_ENCRYPT:
 			do_pgp(PGP_ENCRYPT, nam, mail_to);
 			break;
 
@@ -380,23 +379,22 @@ void
 invoke_pgp_news(
 	char *artfile)
 {
-	char ch, ch_default = iKeyPgpSign;
 	char keyinclude[MAXKEYLEN], keyquit[MAXKEYLEN], keysign[MAXKEYLEN];
+	t_function func, default_func = PGP_SIGN;
 
 	if (!pgp_available())
 		return;
 
-	ch = prompt_slk_response(ch_default, &menukeymap.pgp_news,
-				_(txt_pgp_news),
-				printascii(keysign, map_to_local(iKeyPgpSign, &menukeymap.pgp_news)),
-				printascii(keyinclude, map_to_local(iKeyPgpIncludekey, &menukeymap.pgp_news)),
-				printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.pgp_news)));
-	switch (ch) {
-		case iKeyAbort:
-		case iKeyQuit:
+	func = prompt_slk_response(default_func, pgp_news_keys, _(txt_pgp_news),
+				printascii(keysign, func_to_key(PGP_KEY_SIGN, pgp_news_keys)),
+				printascii(keyinclude, func_to_key(PGP_INCLUDE_KEY, pgp_news_keys)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, pgp_news_keys)));
+	switch (func) {
+		case GLOBAL_ABORT:
+		case GLOBAL_QUIT:
 			break;
 
-		case iKeyPgpSign:
+		case PGP_KEY_SIGN:
 #ifdef HAVE_PGPK
 			info_message(" ");
 			MoveCursor(cLINES - 7, 0);
@@ -405,7 +403,7 @@ invoke_pgp_news(
 			do_pgp(PGP_SIGN, artfile, NULL);
 			break;
 
-		case iKeyPgpIncludekey:
+		case PGP_INCLUDE_KEY:
 #ifdef HAVE_PGPK
 			info_message(" ");
 			MoveCursor(cLINES - 7, 0);
@@ -473,7 +471,7 @@ pgp_check_article(
 	}
 
 	if (pgp_key) {
-		if (prompt_yn(cLINES, _(txt_pgp_add), FALSE) == 1) {
+		if (prompt_yn(_(txt_pgp_add), FALSE) == 1) {
 			Raw(FALSE);
 
 			sh_format(cmd, sizeof(cmd), ADD_KEY, PGPNAME, pgpopts, artfile);
diff -Nurp tin-1.7.7/src/post.c tin-1.7.8/src/post.c
--- tin-1.7.7/src/post.c	Fri Dec 10 17:42:51 2004
+++ tin-1.7.8/src/post.c	Fri Mar  4 14:54:39 2005
@@ -3,10 +3,10 @@
  *  Module    : post.c
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2004-09-19
+ *  Updated   : 2005-03-04
  *  Notes     : mail/post/replyto/followup/repost & cancel articles
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,9 +41,9 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 #ifndef RFC2046_H
 #	include "rfc2046.h"
 #endif /* !RFC2046_H */
@@ -134,15 +134,13 @@ static struct msg_header {
 static FILE *create_mail_headers(char *filename, const char *suffix, const char *to, const char *subject, struct t_header *extra_hdrs);
 static char **split_address_list(const char *addresses, unsigned int *cnt);
 static char *backup_article_name(const char *the_article);
-static char prompt_rejected(void);
-static char prompt_to_send(const char *subject);
 static int add_mail_quote(FILE *fp, int respnum);
 static int check_article_to_be_posted(const char *the_article, int art_type, struct t_group **group, t_bool art_unchanged);
-static unsigned int get_recipients(struct t_header *hdr, char *buf, size_t buflen);
-static int mail_loop(const char *filename, char ch, char *subject, const char *groupname, const char *prompt, FILE *articlefp);
+static int mail_loop(const char *filename, t_function func, char *subject, const char *groupname, const char *prompt, FILE *articlefp);
 static int msg_add_x_body(FILE *fp_out, const char *body);
 static int msg_write_headers(FILE *fp);
-static int post_loop(int type, struct t_group *psGrp, char ch, const char *posting_msg, int art_type, int offset);
+static int post_loop(int type, struct t_group *group, t_function func, const char *posting_msg, int art_type, int offset);
+static unsigned int get_recipients(struct t_header *hdr, char *buf, size_t buflen);
 static size_t skip_id(const char *id);
 static struct t_group *check_moderated(const char *groups, int *art_type, const char *failmsg);
 static t_bool address_in_list(const char *addresses, const char *address);
@@ -155,8 +153,10 @@ static t_bool fetch_postponed_article(co
 static t_bool insert_from_header(const char *infile);
 static t_bool is_crosspost(const char *xref);
 static t_bool must_include(const char *id);
-static t_bool repair_article(char *result, struct t_group *group);
+static t_bool repair_article(t_function *result, struct t_group *group);
 static t_bool submit_mail_file(const char *file, struct t_group *group, FILE *articlefp, t_bool include_text);
+static t_function prompt_rejected(void);
+static t_function prompt_to_send(const char *subject);
 static void add_headers(const char *infile, const char *a_message_id);
 static void appendid(char **where, const char **what);
 static void find_reply_to_addr(char *from_addr, t_bool parse, struct t_header *hdr);
@@ -178,14 +178,16 @@ static void update_posted_info_file(cons
 	static const char *build_messageid(void);
 	static char *radix32(unsigned long int num);
 #endif /* EVIL_INSIDE */
+#ifdef USE_CANLOCK
+	static const char *build_cankey(const char *messageid, const char *secret);
+#endif /* USE_CANLOCK */
 
 
-static char
+static t_function
 prompt_to_send(
 	const char *subject)
 {
 	char *smsg;
-	char option;
 	char buf[LEN];
 	char keyedit[MAXKEYLEN];
 	char keyquit[MAXKEYLEN];
@@ -196,26 +198,27 @@ prompt_to_send(
 #ifdef HAVE_PGP_GPG
 	char keypgp[MAXKEYLEN];
 #endif /* HAVE_PGP_GPG */
+	t_function func;
 
 	snprintf(buf, sizeof(buf), _(txt_quit_edit_send),
-					printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_send)),
-					printascii(keyedit, map_to_local(iKeyPostEdit, &menukeymap.post_send)),
+					printascii(keyquit, func_to_key(GLOBAL_QUIT, post_send_keys)),
+					printascii(keyedit, func_to_key(POST_EDIT, post_send_keys)),
 #ifdef HAVE_ISPELL
-					printascii(keyispell, map_to_local(iKeyPostIspell, &menukeymap.post_send)),
+					printascii(keyispell, func_to_key(POST_ISPELL, post_send_keys)),
 #endif /* HAVE_ISPELL */
 #ifdef HAVE_PGP_GPG
-					printascii(keypgp, map_to_local(iKeyPostPGP, &menukeymap.post_send)),
+					printascii(keypgp, func_to_key(POST_PGP, post_send_keys)),
 #endif /* HAVE_PGP_GPG */
-					printascii(keysend, map_to_local(iKeyPostSend, &menukeymap.post_send)));
+					printascii(keysend, func_to_key(POST_SEND, post_send_keys)));
 
-	option = prompt_slk_response(iKeyPostSend, &menukeymap.post_send, "%s",
+	func = prompt_slk_response(POST_SEND, post_send_keys, "%s",
 				sized_message(&smsg, buf, subject));
 	free(smsg);
-	return option;
+	return func;
 }
 
 
-static char
+static t_function
 prompt_rejected(
 	void)
 {
@@ -228,11 +231,11 @@ prompt_rejected(
 	my_fflush(stderr);
 	Raw(TRUE);
 
-	return prompt_slk_response(iKeyPostEdit, &menukeymap.post_edit,
+	return prompt_slk_response(POST_EDIT, post_edit_keys,
 				_(txt_quit_edit_postpone),
-				printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_edit)),
-				printascii(keyedit, map_to_local(iKeyPostEdit, &menukeymap.post_edit)),
-				printascii(keypostpone, map_to_local(iKeyPostPostpone, &menukeymap.post_edit)));
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, post_edit_keys)),
+				printascii(keyedit, func_to_key(POST_EDIT, post_edit_keys)),
+				printascii(keypostpone, func_to_key(POST_POSTPONE, post_edit_keys)));
 }
 
 
@@ -267,23 +270,22 @@ init_postinfo(
  */
 static t_bool
 repair_article(
-	char *result,
+	t_function *result,
 	struct t_group *group)
 {
 	char keyedit[MAXKEYLEN], keymenu[MAXKEYLEN], keyquit[MAXKEYLEN];
-	int ch;
+	t_function func;
 
-	ch = prompt_slk_response(iKeyPostEdit, &menukeymap.post_edit_ext,
-				_(txt_bad_article),
-				printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_edit_ext)),
-				printascii(keymenu, map_to_local(iKeyOptionMenu, &menukeymap.post_edit_ext)),
-				printascii(keyedit, map_to_local(iKeyPostEdit, &menukeymap.post_edit_ext)));
+	func = prompt_slk_response(POST_EDIT, post_edit_ext_keys, _(txt_bad_article),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, post_edit_ext_keys)),
+				printascii(keymenu, func_to_key(GLOBAL_OPTION_MENU, post_edit_ext_keys)),
+				printascii(keyedit, func_to_key(POST_EDIT, post_edit_ext_keys)));
 
-	*result = ch;
-	if (ch == iKeyPostEdit) {
+	*result = func;
+	if (func == POST_EDIT) {
 		if (invoke_editor(article, start_line_offset))
 			return TRUE;
-	} else if (ch == iKeyOptionMenu) {
+	} else if (func == GLOBAL_OPTION_MENU) {
 		(void) change_config_file(group); /*OD:*/
 		return TRUE;
 	}
@@ -1446,7 +1448,7 @@ static int
 post_loop(
 	int type,				/* type of posting */
 	struct t_group *group,
-	char ch,				/* default prompt char */
+	t_function func,
 	const char *posting_msg,/* displayed just prior to article submission */
 	int art_type,			/* news, mail etc. */
 	int offset)				/* editor start offset */
@@ -1463,8 +1465,8 @@ post_loop(
 	forever {
 post_article_loop:
 		art_unchanged = FALSE;
-		switch (ch) {
-			case iKeyPostEdit:
+		switch (func) {
+			case POST_EDIT:
 				/*
 				 * This was VERY different in repost_article Code existed to
 				 * recheck subject and restart editor, but is not enabled
@@ -1487,15 +1489,15 @@ post_article_loop:
 				if (file_size(article) > 0L) {
 					if (artchanged == file_mtime(article))
 						art_unchanged = TRUE;
-					while ((i = check_article_to_be_posted(article, art_type, &group, art_unchanged)) == 1 && repair_article(&ch, group))
+					while ((i = check_article_to_be_posted(article, art_type, &group, art_unchanged)) == 1 && repair_article(&func, group))
 						;
-					if (ch == iKeyPostEdit || ch == iKeyOptionMenu)
+					if (func == POST_EDIT || func == GLOBAL_OPTION_MENU)
 						break;
 				}
 				/* FALLTHROUGH */
 
-			case iKeyQuit:
-			case iKeyAbort:
+			case GLOBAL_QUIT:
+			case GLOBAL_ABORT:
 				if (tinrc.unlink_article) {
 #if 0 /* usefull? */
 					if (tinrc.keep_dead_articles)
@@ -1506,28 +1508,26 @@ post_article_loop:
 				clear_message();
 				return ret_code;
 
-			case iKeyOptionMenu:
+			case GLOBAL_OPTION_MENU:
 				(void) change_config_file(group);
-				while ((i = check_article_to_be_posted(article, art_type, &group, art_unchanged) == 1) && repair_article(&ch, group))
+				while ((i = check_article_to_be_posted(article, art_type, &group, art_unchanged) == 1) && repair_article(&func, group))
 					;
 				break;
 
 #ifdef HAVE_ISPELL
-			case iKeyPostIspell:
+			case POST_ISPELL:
 				invoke_ispell(article, group);
 				ret_code = POSTED_REDRAW; /* not all versions did this */
 				break;
 #endif /* HAVE_ISPELL */
 
 #ifdef HAVE_PGP_GPG
-			case iKeyPostPGP:
+			case POST_PGP:
 				invoke_pgp_news(article);
 				break;
 #endif /* HAVE_PGP_GPG */
 
-			case iKeyPost:
-			case iKeyPostPost2:
-			case iKeyPostPost3:
+			case GLOBAL_POST:
 				wait_message(0, posting_msg);
 				backup_article(article);
 
@@ -1545,13 +1545,12 @@ post_article_loop:
 					wait_message(2, _(txt_art_posted), *a_message_id ? a_message_id : "");
 					goto post_article_done;
 				} else {
-					if ((ch = prompt_rejected()) == iKeyPostPostpone)
+					if ((func = prompt_rejected()) == POST_POSTPONE)
 						/* reuse clean copy which didn't get modified by submit_news_file() */
 						postpone_article(backup_article_name(article));
-					else if (ch == iKeyPostEdit) {
+					else if (func == POST_EDIT) {
 						/* replace modified article with clean backup */
 						rename_file(backup_article_name(article), article);
-						ch = iKeyPostEdit;
 						goto post_article_loop;
 					} else {
 						unlink(backup_article_name(article));
@@ -1563,7 +1562,7 @@ post_article_loop:
 				return ret_code;
 				}
 
-			case iKeyPostPostpone:
+			case POST_POSTPONE:
 				postpone_article(article);
 				goto post_article_postponed;
 
@@ -1581,19 +1580,19 @@ post_article_loop:
 			char keypgp[MAXKEYLEN];
 #endif /* HAVE_PGP_GPG */
 
-			ch = prompt_slk_response((i ? iKeyPostEdit : art_unchanged ? iKeyPostPostpone : iKeyPostPost3),
-					&menukeymap.post_post, _(txt_quit_edit_post),
-					printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_post)),
-					printascii(keyedit, map_to_local(iKeyPostEdit, &menukeymap.post_post)),
+			func = prompt_slk_response((i ? POST_EDIT : art_unchanged ? POST_POSTPONE : GLOBAL_POST),
+					post_post_keys, _(txt_quit_edit_post),
+					printascii(keyquit, func_to_key(GLOBAL_QUIT, post_post_keys)),
+					printascii(keyedit, func_to_key(POST_EDIT, post_post_keys)),
 #ifdef HAVE_ISPELL
-					printascii(keyispell, map_to_local(iKeyPostIspell, &menukeymap.post_post)),
+					printascii(keyispell, func_to_key(POST_ISPELL, post_post_keys)),
 #endif /* HAVE_ISPELL */
 #ifdef HAVE_PGP_GPG
-					printascii(keypgp, map_to_local(iKeyPostPGP, &menukeymap.post_post)),
+					printascii(keypgp, func_to_key(POST_PGP, post_post_keys)),
 #endif /* HAVE_PGP_GPG */
-					printascii(keymenu, map_to_local(iKeyOptionMenu, &menukeymap.post_post)),
-					printascii(keypost, map_to_local(iKeyPostPost3, &menukeymap.post_post)),
-					printascii(keypostpone, map_to_local(iKeyPostPostpone, &menukeymap.post_post)));
+					printascii(keymenu, func_to_key(GLOBAL_OPTION_MENU, post_post_keys)),
+					printascii(keypost, func_to_key(GLOBAL_POST, post_post_keys)),
+					printascii(keypostpone, func_to_key(POST_POSTPONE, post_post_keys)));
 		} else {
 			char *smsg;
 			char buf[LEN];
@@ -1608,21 +1607,21 @@ post_article_loop:
 #endif /* HAVE_PGP_GPG */
 
 			snprintf(buf, sizeof(buf), _(txt_quit_edit_xpost),
-							printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_post)),
-							printascii(keyedit, map_to_local(iKeyPostEdit, &menukeymap.post_post)),
+					printascii(keyquit, func_to_key(GLOBAL_QUIT, post_post_keys)),
+					printascii(keyedit, func_to_key(POST_EDIT, post_post_keys)),
 #ifdef HAVE_ISPELL
-							printascii(keyispell, map_to_local(iKeyPostIspell, &menukeymap.post_post)),
+					printascii(keyispell, func_to_key(POST_ISPELL, post_post_keys)),
 #endif /* HAVE_ISPELL */
 #ifdef HAVE_PGP_GPG
-							printascii(keypgp, map_to_local(iKeyPostPGP, &menukeymap.post_post)),
+					printascii(keypgp, func_to_key(POST_PGP, post_post_keys)),
 #endif /* HAVE_PGP_GPG */
-							printascii(keymenu, map_to_local(iKeyOptionMenu, &menukeymap.post_post)),
-							printascii(keypost, map_to_local(iKeyPostPost3, &menukeymap.post_post)),
-							printascii(keypostpone, map_to_local(iKeyPostPostpone, &menukeymap.post_post)));
+					printascii(keymenu, func_to_key(GLOBAL_OPTION_MENU, post_post_keys)),
+					printascii(keypost, func_to_key(GLOBAL_POST, post_post_keys)),
+					printascii(keypostpone, func_to_key(POST_POSTPONE, post_post_keys)));
 
 			/* Superfluous force_command stuff not used in current code */
-			ch = ( /* force_command ? ch_default : */ prompt_slk_response(ch,
-						&menukeymap.post_post, "%s", sized_message(&smsg, buf,
+			func = ( /* force_command ? ch_default : */ prompt_slk_response(func,
+						post_post_keys, "%s", sized_message(&smsg, buf,
 						"" /* TODO: was note_h.subj */ )));
 			free(smsg);
 		}
@@ -1789,7 +1788,7 @@ check_moderated(
 
 		if (group->moderated == 'm') {
 			char *prompt = fmt_string(_(txt_group_is_moderated), groupname);
-			if (prompt_yn(cLINES, prompt, TRUE) != 1) {
+			if (prompt_yn(prompt, TRUE) != 1) {
 /*				Raw(FALSE); */
 				error_message(failmsg);
 				free(prompt);
@@ -1941,7 +1940,7 @@ quick_post_article(
 	if (!create_normal_article_headers(group, tinrc.default_post_newsgroups, art_type))
 		return;
 
-	post_loop(POST_QUICK, group, iKeyPostEdit, _(txt_posting), art_type, start_line_offset);
+	post_loop(POST_QUICK, group, POST_EDIT, _(txt_posting), art_type, start_line_offset);
 }
 
 
@@ -1968,7 +1967,7 @@ post_postponed_article(
 		*p = '\0';
 
 	snprintf(buf, sizeof(buf), _("Posting: %.*s ..."), cCOLS - 14, subject); /* TODO: -> lang.c, use strunc() */
-	post_loop(POST_POSTPONED, group_find(ng), (ask ? iKeyPostEdit : iKeyPostPost3), buf, GROUP_TYPE_NEWS, 0);
+	post_loop(POST_POSTPONED, group_find(ng), (ask ? POST_EDIT : GLOBAL_POST), buf, GROUP_TYPE_NEWS, 0);
 	free(ng);
 	return;
 }
@@ -2110,12 +2109,12 @@ pickup_postponed_articles(
 	t_bool ask,
 	t_bool all)
 {
-	char ch = 0;
 	char newsgroups[HEADER_LEN];
 	char subject[HEADER_LEN];
 	char question[HEADER_LEN];
 	int count = count_postponed_articles();
 	int i;
+	t_function func;
 
 	if (!count) {
 		if (!ask)
@@ -2125,7 +2124,7 @@ pickup_postponed_articles(
 
 	snprintf(question, sizeof(question), _(txt_prompt_see_postponed), count);
 
-	if (ask && prompt_yn(cLINES, question, TRUE) != 1)
+	if (ask && prompt_yn(question, TRUE) != 1)
 		return FALSE;
 
 	for (i = 0; i < count; i++) {
@@ -2139,40 +2138,43 @@ pickup_postponed_articles(
 			char keyquit[MAXKEYLEN], keyyes[MAXKEYLEN];
 
 			snprintf(buf, sizeof(buf), _(txt_postpone_repost),
-							printascii(keyyes, map_to_local(iKeyPromptYes, &menukeymap.post_postpone)),
-							printascii(keyoverride, map_to_local(iKeyPostponeOverride, &menukeymap.post_postpone)),
-							printascii(keyall, map_to_local(iKeyPostponeAll, &menukeymap.post_postpone)),
-							printascii(keyno, map_to_local(iKeyPromptNo, &menukeymap.post_postpone)),
-							printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_postpone)));
+					printascii(keyyes, func_to_key(PROMPT_YES, post_postpone_keys)),
+					printascii(keyoverride, func_to_key(POSTPONE_OVERRIDE, post_postpone_keys)),
+					printascii(keyall, func_to_key(POSTPONE_ALL, post_postpone_keys)),
+					printascii(keyno, func_to_key(PROMPT_NO, post_postpone_keys)),
+					printascii(keyquit, func_to_key(GLOBAL_QUIT, post_postpone_keys)));
 
-			ch = prompt_slk_response(iKeyPromptYes, &menukeymap.post_postpone,
+			func = prompt_slk_response(PROMPT_YES, post_postpone_keys,
 					"%s", sized_message(&smsg, buf, subject));
 			free(smsg);
 
-			if (ch == iKeyPostponeAll)
+			if (func == POSTPONE_ALL)
 				all = TRUE;
 		}
 
 		/* No else here since all changes in previous if */
 		if (all)
-			ch = iKeyPostponeOverride;
+			func = POSTPONE_OVERRIDE;
 
-		switch (ch) {
-			case iKeyPromptYes:
-			case iKeyPostponeOverride:
-				post_postponed_article(ch == iKeyPromptYes, subject, newsgroups);
+		switch (func) {
+			case PROMPT_YES:
+			case POSTPONE_OVERRIDE:
+				post_postponed_article(func == PROMPT_YES, subject, newsgroups);
 				Raw(TRUE);
 				break;
 
-			case iKeyPromptNo:
-			case iKeyQuit:
-			case iKeyAbort:
+			case PROMPT_NO:
+			case GLOBAL_QUIT:
+			case GLOBAL_ABORT:
 				if (!append_mail(article, userid, postponed_articles_file)) {
 					/* TODO: : error -message */
 				}
 				unlink(article);
-				if (ch != iKeyPromptNo)
+				if (func != PROMPT_NO)
 					return TRUE;
+
+			default:
+				break;
 		}
 	}
 	return TRUE;
@@ -2212,7 +2214,7 @@ post_article(
 	if (!create_normal_article_headers(group, groupname, art_type))
 		return redraw_screen;
 
-	return (post_loop(POST_NORMAL, group, iKeyPostEdit, _(txt_posting), art_type, start_line_offset) != POSTED_NONE);
+	return (post_loop(POST_NORMAL, group, POST_EDIT, _(txt_posting), art_type, start_line_offset) != POSTED_NONE);
 }
 
 
@@ -2444,7 +2446,7 @@ post_response(
 	t_bool raw_data)
 {
 	FILE *fp;
-	char ch, *ptr;
+	char *ptr;
 	char bigbuf[HEADER_LEN];
 	char buf[HEADER_LEN];
 	char from_name[HEADER_LEN];
@@ -2457,6 +2459,7 @@ post_response(
 #ifdef FORGERY
 	char line[HEADER_LEN];
 #endif /* FORGERY */
+	t_function func;
 
 	msg_init_headers();
 	wait_message(0, _(txt_post_a_followup));
@@ -2472,24 +2475,24 @@ post_response(
 		char keymail[MAXKEYLEN], keypost[MAXKEYLEN], keyquit[MAXKEYLEN];
 
 /*		clear_message(); */
-		ch = prompt_slk_response(iKeyPageMail, &menukeymap.post_mail_fup,
-				_(txt_resp_to_poster),
-				printascii(keymail, map_to_local(iKeyPostMail, &menukeymap.post_mail_fup)),
-				printascii(keypost, map_to_local(iKeyPostPost3, &menukeymap.post_mail_fup)),
-				printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_mail_fup)));
-		switch (ch) {
-			case iKeyPost:
-			case iKeyPostPost2:
-			case iKeyPostPost3:
+		func = prompt_slk_response(PAGE_MAIL, post_mail_fup_keys, _(txt_resp_to_poster),
+				printascii(keymail, func_to_key(POST_MAIL, post_mail_fup_keys)),
+				printascii(keypost, func_to_key(GLOBAL_POST, post_mail_fup_keys)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, post_mail_fup_keys)));
+		switch (func) {
+			case GLOBAL_POST:
 				use_followup_to = FALSE;
 				break;
 
-			case iKeyQuit:
-			case iKeyAbort:
+			case GLOBAL_QUIT:
+			case GLOBAL_ABORT:
 				return ret_code;
 
-			default:
+			case POST_MAIL:
 				return mail_to_author(groupname, respnum, copy_text, with_headers, FALSE);
+
+			default:
+				break;
 		}
 	} else if (note_h.followup && strcmp(note_h.followup, groupname) != 0
 			&& strcmp(note_h.followup, note_h.newsgroups) != 0) {
@@ -2523,23 +2526,21 @@ post_response(
 		}
 		my_flush();
 
-		ch = prompt_slk_response(iKeyPostPost3, &menukeymap.post_ignore_fupto,
-					_(txt_prompt_fup_ignore),
-					printascii(keypost, map_to_local(iKeyPostPost3, &menukeymap.post_ignore_fupto)),
-					printascii(keyignore, map_to_local(iKeyPostIgnore, &menukeymap.post_ignore_fupto)),
-					printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_ignore_fupto)));
-		switch (ch) {
-			case iKeyQuit:
-			case iKeyAbort:
+		func = prompt_slk_response(GLOBAL_POST, post_ignore_fupto_keys,
+				_(txt_prompt_fup_ignore),
+				printascii(keypost, func_to_key(GLOBAL_POST, post_ignore_fupto_keys)),
+				printascii(keyignore, func_to_key(POST_IGNORE_FUPTO, post_ignore_fupto_keys)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, post_ignore_fupto_keys)));
+		switch (func) {
+			case GLOBAL_QUIT:
+			case GLOBAL_ABORT:
 				return ret_code;
 
-			case iKeyPostIgnore:
+			case POST_IGNORE_FUPTO:
 				use_followup_to = FALSE;
 				break;
 
-			case iKeyPost:
-			case iKeyPostPost2:
-			case iKeyPostPost3:
+			case GLOBAL_POST:
 			default:
 				break;
 		}
@@ -2688,7 +2689,7 @@ post_response(
 	if (raw_data)	/* we've been in raw mode, reenter it */
 		toggle_raw(group);
 
-	return (post_loop(POST_RESPONSE, group, iKeyPostEdit, _(txt_posting), art_type, start_line_offset));
+	return (post_loop(POST_RESPONSE, group, POST_EDIT, _(txt_posting), art_type, start_line_offset));
 }
 
 
@@ -2798,7 +2799,7 @@ create_mail_headers(
 static int
 mail_loop(
 	const char *filename,		/* Temp. filename being used */
-	char ch,					/* default prompt char */
+	t_function func,		/* default function */
 	char *subject,
 	const char *groupname,		/* Newsgroup we are posting from */
 	const char *prompt,			/* If set, used for final query before posting */
@@ -2818,15 +2819,15 @@ mail_loop(
 		group = group_find(groupname);
 
 	forever {
-		switch (ch) {
-			case iKeyPostEdit:
+		switch (func) {
+			case POST_EDIT:
 				artchanged = file_mtime(filename);
 
 				if (!(invoke_editor(filename, start_line_offset)))
 					return ret;
 
 				ret = POSTED_REDRAW;
-				if (((artchanged == file_mtime(filename)) && (prompt_yn(cLINES, _(txt_prompt_unchanged_mail), TRUE) > 0)) || (file_size(filename) <= 0L)) {
+				if (((artchanged == file_mtime(filename)) && (prompt_yn(_(txt_prompt_unchanged_mail), TRUE) > 0)) || (file_size(filename) <= 0L)) {
 					clear_message();
 					return ret;
 				}
@@ -2850,14 +2851,14 @@ mail_loop(
 				break;
 
 #ifdef HAVE_ISPELL
-			case iKeyPostIspell:
+			case POST_ISPELL:
 				invoke_ispell(filename, group);
 /*				ret = POSTED_REDRAW; TODO: is this needed, not that REDRAW does not imply OK */
 				break;
 #endif /* HAVE_ISPELL */
 
 #ifdef HAVE_PGP_GPG
-			case iKeyPostPGP:
+			case POST_PGP:
 				if (!(fp = fopen(filename, "r"))) { /* Oops */
 					clear_message();
 					return ret;
@@ -2871,19 +2872,18 @@ mail_loop(
 				break;
 #endif /* HAVE_PGP_GPG */
 
-			case iKeyQuit:
-			case iKeyAbort:
+			case GLOBAL_QUIT:
+			case GLOBAL_ABORT:
 				clear_message();
 				return ret;
 
-			case iKeyPostSend:
-			case iKeyPostSend2:
+			case POST_SEND:
 				{
 					t_bool confirm = TRUE;
 
 					if (prompt) {
 						clear_message();
-						if (prompt_yn(cLINES, prompt, FALSE) != 1)
+						if (prompt_yn(prompt, FALSE) != 1)
 							confirm = FALSE;
 					}
 
@@ -2892,14 +2892,14 @@ mail_loop(
 						return POSTED_OK;
 					}
 				}
-			return ret;
-			/* NOTREACHED */
-			break;
+				return ret;
+				/* NOTREACHED */
+				break;
 
 			default:
 				break;
 		}
-		ch = prompt_to_send(subject);
+		func = prompt_to_send(subject);
 	}
 
 	/* NOTREACHED */
@@ -2944,12 +2944,12 @@ mail_to_someone(
 	const struct t_group *group)
 {
 	FILE *fp;
-	char ch = iKeyPostSend;
 	char nam[HEADER_LEN];
 	char subject[HEADER_LEN];
 	int ret_code = POSTED_NONE;
 	struct t_header note_h = artinfo->hdr;
 	t_bool mime_forward = group->attribute->mime_forward;
+	t_function func = POST_SEND;
 
 	clear_message();
 	snprintf(subject, sizeof(subject), "(fwd) %s\n", note_h.subj);
@@ -2987,8 +2987,8 @@ mail_to_someone(
 			ret_code = POSTED_OK;
 	} else {
 		if (confirm_to_mail)
-			ch = prompt_to_send(subject);
-		ret_code = mail_loop(nam, ch, subject, group ? group->name : NULL, NULL, mime_forward ? artinfo->raw : NULL);
+			func = prompt_to_send(subject);
+		ret_code = mail_loop(nam, func, subject, group ? group->name : NULL, NULL, mime_forward ? artinfo->raw : NULL);
 	}
 
 	if (tinrc.unlink_article)
@@ -3069,7 +3069,7 @@ mail_bug_report(
 			ret_code = TRUE;
 	} else {
 		snprintf(tmesg, sizeof(tmesg), _(txt_mail_bug_report_confirm), bug_addr);
-		ret_code = mail_loop(nam, iKeyPostEdit, subject, NULL, tmesg, NULL) ? TRUE : FALSE;
+		ret_code = mail_loop(nam, POST_EDIT, subject, NULL, tmesg, NULL) ? TRUE : FALSE;
 	}
 
 	unlink(nam);
@@ -3100,20 +3100,20 @@ mail_to_author(
 	spamtrap_found = check_for_spamtrap(from_addr);
 
 	if (spamtrap_found) {
-		char ch;
 		char keyabort[MAXKEYLEN], keycont[MAXKEYLEN];
+		t_function func;
 
-		ch = prompt_slk_response(iKeyPostContinue, &menukeymap.post_cont,
+		func = prompt_slk_response(POST_CONTINUE, post_continue_keys,
 				_(txt_warn_suspicious_mail),
-				printascii(keycont, map_to_local(iKeyPostContinue, &menukeymap.post_cont)),
-				printascii(keyabort, map_to_local(iKeyPostAbort, &menukeymap.post_cont)));
-		switch (ch) {
-			case iKeyPostAbort:
-			case iKeyAbort:
+				printascii(keycont, func_to_key(POST_CONTINUE, post_continue_keys)),
+				printascii(keyabort, func_to_key(POST_ABORT, post_continue_keys)));
+		switch (func) {
+			case POST_ABORT:
+			case GLOBAL_ABORT:
 				clear_message();
 				return ret_code;
 
-			case iKeyPostContinue:
+			case POST_CONTINUE:
 				break;
 
 			/* the user wants to continue anyway, so we do nothing special here */
@@ -3197,7 +3197,7 @@ mail_to_author(
 			if (invoke_cmd(buf))
 				ret_code = POSTED_OK;
 		} else
-			ret_code = mail_loop(nam, iKeyPostEdit, subject, group, NULL, NULL);
+			ret_code = mail_loop(nam, POST_EDIT, subject, group, NULL, NULL);
 
 		/*
 		 * If interactive_mailer!=NONE and the user changed the subject in his
@@ -3266,9 +3266,6 @@ cancel_article(
 	int respnum)
 {
 	FILE *fp;
-	char ch, ch_default = iKeyPostCancel;
-	char option = iKeyPostCancel;
-	char option_default = iKeyPostCancel;
 	char buf[HEADER_LEN];
 	char cancel[HEADER_LEN];
 	char from_name[HEADER_LEN];
@@ -3284,6 +3281,8 @@ cancel_article(
 	int oldraw;
 	struct t_header note_h = pgart.hdr, hdr;
 	t_bool redraw_screen = FALSE;
+	t_function func = POST_CANCEL;
+	t_function default_func = POST_CANCEL;
 
 	msg_init_headers();
 
@@ -3319,19 +3318,19 @@ cancel_article(
 		char keycancel[MAXKEYLEN], keyquit[MAXKEYLEN], keysupersede[MAXKEYLEN];
 
 		snprintf(buff, sizeof(buff), _(txt_cancel_article),
-					printascii(keycancel, map_to_local(iKeyPostCancel, &menukeymap.post_delete)),
-					printascii(keysupersede, map_to_local(iKeyPostSupersede, &menukeymap.post_delete)),
-					printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_delete)));
+				printascii(keycancel, func_to_key(POST_CANCEL, post_delete_keys)),
+				printascii(keysupersede, func_to_key(POST_SUPERSEDE, post_delete_keys)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, post_delete_keys)));
 
-		option = prompt_slk_response(option_default, &menukeymap.post_delete,
+		func = prompt_slk_response(default_func, post_delete_keys,
 						"%s", sized_message(&smsg, buff, art->subject));
 		free(smsg);
 
-		switch (option) {
-			case iKeyPostCancel:
+		switch (func) {
+			case POST_CANCEL:
 				break;
 
-			case iKeyPostSupersede:
+			case POST_SUPERSEDE:
 				repost_article(note_h.newsgroups, respnum, TRUE, &pgart);
 				return TRUE; /* force screen redraw */
 
@@ -3462,16 +3461,16 @@ cancel_article(
 			char keycancel[MAXKEYLEN], keyedit[MAXKEYLEN], keyquit[MAXKEYLEN];
 
 			snprintf(buff, sizeof(buff), _(txt_quit_cancel),
-						printascii(keyedit, map_to_local(iKeyPostEdit, &menukeymap.post_cancel)),
-						printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_cancel)),
-						printascii(keycancel, map_to_local(iKeyPostCancel, &menukeymap.post_cancel)));
+					printascii(keyedit, func_to_key(POST_EDIT, post_cancel_keys)),
+					printascii(keyquit, func_to_key(GLOBAL_QUIT, post_cancel_keys)),
+					printascii(keycancel, func_to_key(POST_CANCEL, post_cancel_keys)));
 
-			ch = prompt_slk_response(ch_default, &menukeymap.post_cancel, "%s", sized_message(&smsg, buff, note_h.subj));
+			func = prompt_slk_response(default_func, post_cancel_keys, "%s", sized_message(&smsg, buff, note_h.subj));
 			free(smsg);
 		}
 
-		switch (ch) {
-			case iKeyPostEdit:
+		switch (func) {
+			case POST_EDIT:
 				invoke_editor(cancel, start_line_offset);
 				if (!(fp = fopen(cancel, "r"))) {
 					/* Oops */
@@ -3483,12 +3482,12 @@ cancel_article(
 				fclose(fp);
 				break;
 
-			case iKeyPostCancel:
+			case POST_CANCEL:
 				wait_message(1, _(txt_cancelling_art));
 				if (submit_news_file(cancel, group, a_message_id)) {
 					info_message(_(txt_art_cancel));
 					if (hdr.subj)
-						update_posted_info_file(group->name, iKeyPostCancel, hdr.subj, a_message_id);
+						update_posted_info_file(group->name, 'd', hdr.subj, a_message_id);
 					else
 						error_message(_(txt_error_header_line_missing), "Subject");
 					unlink(cancel);
@@ -3496,8 +3495,8 @@ cancel_article(
 				}
 				break;
 
-			case iKeyQuit:
-			case iKeyAbort:
+			case GLOBAL_QUIT:
+			case GLOBAL_ABORT:
 				unlink(cancel);
 				clear_message();
 				return redraw_screen;
@@ -3533,8 +3532,6 @@ repost_article(
 	t_openartinfo *artinfo)
 {
 	FILE *fp;
-	char ch;
-	char ch_default = iKeyPostPost3;
 	char buf[HEADER_LEN];
 	char from_name[HEADER_LEN];
 	char full_name[128];
@@ -3547,6 +3544,7 @@ repost_article(
 #	ifdef FORGERY
 	char line[HEADER_LEN];
 #	endif /* FORGERY */
+	t_function func, default_func = GLOBAL_POST;
 
 	msg_init_headers();
 
@@ -3690,11 +3688,11 @@ repost_article(
 	 * After leaving the editor it should be iKeyPostPost3
 	 */
 	if (Superseding) {
-		ch_default = iKeyPostEdit;
+		default_func = POST_EDIT;
 		force_command = TRUE;
 	}
 
-	ch = ch_default;
+	func = default_func;
 	if (!force_command) {
 		char *smsg;
 		char buff[LEN];
@@ -3709,23 +3707,23 @@ repost_article(
 #endif /* HAVE_PGP_GPG */
 
 		snprintf(buff, sizeof(buff), _(txt_quit_edit_xpost),
-						printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.post_post)),
-						printascii(keyedit, map_to_local(iKeyPostEdit, &menukeymap.post_post)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, post_post_keys)),
+				printascii(keyedit, func_to_key(POST_EDIT, post_post_keys)),
 #ifdef HAVE_ISPELL
-						printascii(keyispell, map_to_local(iKeyPostIspell, &menukeymap.post_post)),
+				printascii(keyispell, func_to_key(POST_ISPELL, post_post_keys)),
 #endif /* HAVE_ISPELL */
 #ifdef HAVE_PGP_GPG
-						printascii(keypgp, map_to_local(iKeyPostPGP, &menukeymap.post_post)),
+				printascii(keypgp, func_to_key(POST_PGP, post_post_keys)),
 #endif /* HAVE_PGP_GPG */
-						printascii(keymenu, map_to_local(iKeyOptionMenu, &menukeymap.post_post)),
-						printascii(keypost, map_to_local(iKeyPostPost3, &menukeymap.post_post)),
-						printascii(keypostpone, map_to_local(iKeyPostPostpone, &menukeymap.post_post)));
+				printascii(keymenu, func_to_key(GLOBAL_OPTION_MENU, post_post_keys)),
+				printascii(keypost, func_to_key(GLOBAL_POST, post_post_keys)),
+				printascii(keypostpone, func_to_key(POST_POSTPONE, post_post_keys)));
 
-		ch = prompt_slk_response(ch_default, &menukeymap.post_post,
+		func = prompt_slk_response(default_func, post_post_keys,
 			"%s", sized_message(&smsg, buff, note_h.subj));
 		free(smsg);
 	}
-	return (post_loop(POST_REPOST, group, ch, (Superseding ? _(txt_superseding_art) : _(txt_repost_an_article)), art_type, start_line_offset));
+	return (post_loop(POST_REPOST, group, func, (Superseding ? _(txt_superseding_art) : _(txt_repost_an_article)), art_type, start_line_offset));
 }
 
 
@@ -4618,7 +4616,7 @@ build_canlock(
  * build_cankey(messageid, secret)
  * returns *(cancel-key) or NULL
  */
-const char *
+static const char *
 build_cankey(
 	const char *messageid,
 	const char *secret)
@@ -4658,10 +4656,12 @@ get_secret(
 	cancel_secret[0] = '\0';
 	joinpath(path_secret, homedir, SECRET_FILE);
 	if ((fp_secret = fopen(path_secret, "r")) == NULL) {
-		/* TODO: prompt for secret manually here? silently ignore? */
+#	ifdef DEBUG
+		/* TODO: prompt for secret manually here? */
 		my_fprintf(stderr, _(txt_cannot_open), path_secret);
 		my_fflush(stderr);
 		sleep(2);
+#	endif /* DEBUG */
 		return NULL;
 	} else {
 		(void) fread(cancel_secret, HEADER_LEN - 1, 1, fp_secret);
diff -Nurp tin-1.7.7/src/prompt.c tin-1.7.8/src/prompt.c
--- tin-1.7.7/src/prompt.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/prompt.c	Sat Feb 12 14:23:40 2005
@@ -3,10 +3,10 @@
  *  Module    : prompt.c
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2004-09-19
+ *  Updated   : 2005-02-12
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,9 +41,9 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 static char *prompt_slk_message;	/* prompt message for prompt_slk_redraw */
 
@@ -153,36 +153,38 @@ prompt_menu_string(
 
 /*
  * prompt_yn
- * prompt user for 'y'es or 'n'o decision. "prompt" will be displayed in line
- * "line" giving the default answer "default_answer".
- * TODO: 'line' is constant - can we remove it ?
+ * prompt user for 'y'es or 'n'o decision. "prompt" will be displayed in the
+ * last line giving the default answer "default_answer".
  * The function returns 1 if the user decided "yes", -1 if the user wanted
- * to escape, or 0 for any other key or decision.
+ * to escape, or 0 for any other decision.
  */
 int
 prompt_yn(
-	int line,
 	const char *prompt,
 	t_bool default_answer)
 {
 	char *keyprompt;
 	char keyno[MAXKEYLEN], keyyes[MAXKEYLEN];
-	int ch = 'y', prompt_ch = 'y'; /* why not iKeyPromptYes? */
+	char yes, no, prompt_ch;
+	int ch;
 	size_t maxlen;
-	t_bool yn_loop = TRUE;
+	t_function func;
 
 /*	fflush(stdin); */		/* Prevent finger trouble from making important decisions */
 
-	(void) printascii(keyyes, (default_answer ? toupper(map_to_local(iKeyPromptYes, &menukeymap.prompt_yn)) : map_to_local(iKeyPromptYes, &menukeymap.prompt_yn)));
-	(void) printascii(keyno, (!default_answer ? toupper(map_to_local(iKeyPromptNo, &menukeymap.prompt_yn)) : map_to_local(iKeyPromptNo, &menukeymap.prompt_yn)));
+	yes = func_to_key(PROMPT_YES, prompt_keys);
+	no = func_to_key(PROMPT_NO, prompt_keys);
+
+	printascii(keyyes, (default_answer ? toupper(yes) : yes));
+	printascii(keyno, (!default_answer ? toupper(no) : no));
 	maxlen = MAX(strlen(keyyes), strlen(keyno));
 
-	while (yn_loop) {
-		prompt_ch = map_to_local((default_answer ? iKeyPromptYes : iKeyPromptNo), &menukeymap.prompt_yn);
+	do {
+		prompt_ch = (default_answer ? yes : no);
 		keyprompt = (default_answer ? keyyes : keyno);
 
 		if (!cmd_line) {
-			MoveCursor(line, 0);
+			MoveCursor(cLINES, 0);
 			CleartoEOLN();
 		}
 		my_printf("%s (%s/%s) %-*s", prompt, keyyes, keyno, (int) maxlen, keyprompt);
@@ -190,13 +192,11 @@ prompt_yn(
 			cursoron();
 		my_flush();
 		if (!cmd_line)
-			MoveCursor(line, (int) strlen(prompt) + strlen(keyyes) + strlen(keyno) + 5);
+			MoveCursor(cLINES, (int) strlen(prompt) + strlen(keyyes) + strlen(keyno) + 5);
 
 		if (((ch = (char) ReadCh()) == '\n') || (ch == '\r'))
 			ch = prompt_ch;
 
-		yn_loop = FALSE; /* normal case: leave loop */
-
 		switch (ch) {
 			case ESC:	/* (ESC) common arrow keys */
 #	ifdef HAVE_KEY_PREFIX
@@ -206,11 +206,11 @@ prompt_yn(
 					case KEYMAP_UP:
 					case KEYMAP_DOWN:
 						default_answer = bool_not(default_answer);
-						yn_loop = TRUE; /* don't leave loop */
+						ch = '\0';	/* set to a not bindable key to not leave the loop yet */
 						break;
 
 					case KEYMAP_LEFT:
-						ch = iKeyAbort;
+						ch = ESC;
 						break;
 
 					case KEYMAP_RIGHT:
@@ -225,19 +225,14 @@ prompt_yn(
 			default:
 				break;
 		}
-	}
+		func = key_to_func(ch, prompt_keys);
+	} while (func == NOT_ASSIGNED);
 
 	if (!cmd_line) {
-		if (line == cLINES)
-			clear_message();
-		else {
-			MoveCursor(line, (int) strlen(prompt));
-			my_fputc(((ch == iKeyAbort) ? prompt_ch : ch), stdout);
-		}
-		cursoroff();
+		clear_message();
 		my_flush();
 	}
-	return (tolower((unsigned char) map_to_default(ch, &menukeymap.prompt_yn)) == tolower((unsigned char)iKeyPromptYes)) ? 1 : (ch == iKeyAbort) ? -1 : 0;
+	return (func == PROMPT_YES) ? 1 : (func == GLOBAL_ABORT) ? -1 : 0;
 }
 
 
@@ -612,24 +607,24 @@ sized_message(
  * Implement the Single-Letter-Key mini menus at the bottom of the screen
  * eg, Press a)ppend, o)verwrite, q)uit :
  */
-int
+t_function
 prompt_slk_response(
-	int ch_default,
-	const t_menukeys /* char */ *responses,
+	t_function default_func,
+	const struct keylist keys,
 	const char *fmt,
 	...)
 {
 	va_list ap;
 	char ch;
 	char buf[LEN];
+	t_function func;
 
 	va_start(ap, fmt);
 	vsnprintf(buf, sizeof(buf), fmt, ap);
 	va_end(ap);
 
 	prompt_slk_message = my_malloc(strlen(buf) + 2);
-	ch_default = map_to_local(ch_default, responses);
-	snprintf(prompt_slk_message, strlen(buf) + 2, "%s%c", buf, ch_default);
+	snprintf(prompt_slk_message, strlen(buf) + 2, "%s%c", buf, func_to_key(default_func, keys));
 
 	input_context = cPromptSLK;
 
@@ -637,7 +632,9 @@ prompt_slk_response(
 		prompt_slk_redraw();		/* draw the prompt */
 
 		if ((ch = ReadCh()) == '\r' || ch == '\n')
-			ch = ch_default;
+			func = default_func;
+		else
+			func = key_to_func(ch, keys);
 
 		/*
 		 * TODO: ignore special-keys which are represented as a
@@ -663,14 +660,13 @@ prompt_slk_response(
 			}
 		}
 #endif /* 0 */
-
-	} while (!strchr(responses->localkeys, ch));
+	} while (func == NOT_ASSIGNED);
 
 	input_context = cNone;
 	FreeAndNull(prompt_slk_message);
 
 	clear_message();
-	return map_to_default(ch, responses);
+	return func;
 }
 
 
diff -Nurp tin-1.7.7/src/read.c tin-1.7.8/src/read.c
--- tin-1.7.7/src/read.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/read.c	Sat Feb 12 14:23:50 2005
@@ -3,9 +3,9 @@
  *  Module    : read.c
  *  Author    : Jason Faultless <jason@altarstone.com>
  *  Created   : 1997-04-10
- *  Updated   : 2003-09-19
+ *  Updated   : 2005-02-12
  *
- * Copyright (c) 1997-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 1997-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -40,9 +40,9 @@
 #ifndef TNNTP_H
 #	include "tnntp.h"
 #endif /* !TNNTP_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 
 /*
@@ -149,12 +149,12 @@ wait_for_input(
 				}
 
 				if (ch == iKeyQuit || ch == 'z' || ch == iKeyAbort) {
-					if (prompt_yn(cLINES, _(txt_read_abort), FALSE) == 1)
+					if (prompt_yn(_(txt_read_abort), FALSE) == 1)
 						return TRUE;
 				}
 
 				if (ch == iKeyQuitTin) {
-					if (prompt_yn(cLINES, _(txt_read_exit), FALSE) == 1)
+					if (prompt_yn(_(txt_read_exit), FALSE) == 1)
 						tin_done(EXIT_SUCCESS);
 				}
 
diff -Nurp tin-1.7.7/src/refs.c tin-1.7.8/src/refs.c
--- tin-1.7.7/src/refs.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/refs.c	Thu Dec 30 14:33:11 2004
@@ -8,7 +8,7 @@
  *  Credits   : Richard Hodson <richard@macgyver.tele2.co.uk>
  *              hash_msgid, free_msgid
  *
- * Copyright (c) 1996-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 1996-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/regex.c tin-1.7.8/src/regex.c
--- tin-1.7.7/src/regex.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/regex.c	Thu Dec 30 14:33:11 2004
@@ -7,7 +7,7 @@
  *  Notes     : Regular expression subroutines
  *  Credits   :
  *
- * Copyright (c) 1997-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 1997-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/rfc1524.c tin-1.7.8/src/rfc1524.c
--- tin-1.7.7/src/rfc1524.c	Wed Dec  1 16:18:18 2004
+++ tin-1.7.8/src/rfc1524.c	Thu Dec 30 14:33:11 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-11-28
  *  Notes     : mailcap parsing as defined in RFC 1524
  *
- * Copyright (c) 2000-2004 Urs Janssen <urs@tin.org>, Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 2000-2005 Urs Janssen <urs@tin.org>, Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/rfc2045.c tin-1.7.8/src/rfc2045.c
--- tin-1.7.7/src/rfc2045.c	Wed Dec  1 11:50:17 2004
+++ tin-1.7.8/src/rfc2045.c	Thu Dec 30 14:33:11 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-11-04
  *  Notes     : RFC 2045/2047 encoding
  *
- * Copyright (c) 1995-2004 Chris Blum <chris@resolution.de>
+ * Copyright (c) 1995-2005 Chris Blum <chris@resolution.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/rfc2046.c tin-1.7.8/src/rfc2046.c
--- tin-1.7.7/src/rfc2046.c	Wed Dec  1 16:19:37 2004
+++ tin-1.7.8/src/rfc2046.c	Thu Dec 30 14:33:11 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-07-07
  *  Notes     : RFC 2046 MIME article parsing
  *
- * Copyright (c) 2000-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 2000-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/rfc2047.c tin-1.7.8/src/rfc2047.c
--- tin-1.7.7/src/rfc2047.c	Wed Dec  1 16:16:44 2004
+++ tin-1.7.8/src/rfc2047.c	Tue Mar 15 01:06:33 2005
@@ -6,7 +6,7 @@
  *  Updated   : 2004-11-26
  *  Notes     : MIME header encoding/decoding stuff
  *
- * Copyright (c) 1995-2004 Chris Blum <chris@resolution.de>
+ * Copyright (c) 1995-2005 Chris Blum <chris@resolution.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -72,7 +72,7 @@ static int base64_rank_table_built;
 static t_bool quoteflag;
 
 /* fixed prefix and default part for tin-generated MIME boundaries */
-static const char MIME_BOUNDARY_PREFIX[]       = "=_tin=_";
+static const char MIME_BOUNDARY_PREFIX[] = "=_tin=_";
 static const char MIME_BOUNDARY_DEFAULT_PART[] = "====____====____====____";
 /* required size of a buffer containing a MIME boundary, including the final '\0' */
 enum {
diff -Nurp tin-1.7.7/src/save.c tin-1.7.8/src/save.c
--- tin-1.7.7/src/save.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/save.c	Sat Feb 12 14:24:01 2005
@@ -3,10 +3,10 @@
  *  Module    : save.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-06-22
+ *  Updated   : 2005-02-12
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,9 +41,9 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 #ifndef RFC2046_H
 /* #	include "rfc2046.h" */
 #endif /* !RFC2046_H */
@@ -346,8 +346,8 @@ open_save_filename(
 	FILE *fp;
 	char keyappend[MAXKEYLEN], keyoverwrite[MAXKEYLEN], keyquit[MAXKEYLEN];
 	char mode[3];
-	int ch;
 	struct stat st;
+	t_function func;
 
 	strcpy(mode, "a+");
 
@@ -364,27 +364,30 @@ open_save_filename(
 		}
 /* TODO: will this get called every art? Should only be done once/batch */
 /* TODO: or add an option for defaulting on all future queries */
-		ch = prompt_slk_response(tinrc.default_save_mode,
-				&menukeymap.save_append_overwrite_quit,
+		func = prompt_slk_response((tinrc.default_save_mode == 'a' ? SAVE_APPEND_FILE : SAVE_OVERWRITE_FILE),
+				save_append_overwrite_keys,
 				_(txt_append_overwrite_quit), path,
-				printascii(keyappend, map_to_local(iKeySaveAppendFile, &menukeymap.save_append_overwrite_quit)),
-				printascii(keyoverwrite, map_to_local(iKeySaveOverwriteFile, &menukeymap.save_append_overwrite_quit)),
-				printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.save_append_overwrite_quit)));
+				printascii(keyappend, func_to_key(SAVE_APPEND_FILE, save_append_overwrite_keys)),
+				printascii(keyoverwrite, func_to_key(SAVE_OVERWRITE_FILE, save_append_overwrite_keys)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, save_append_overwrite_keys)));
 
-		switch (ch) {
-			case iKeySaveOverwriteFile:
+		switch (func) {
+			case SAVE_OVERWRITE_FILE:
 				strcpy(mode, "w");
 				break;
 
-			case iKeyAbort:
-			case iKeyQuit:
+			case GLOBAL_ABORT:
+			case GLOBAL_QUIT:
 				wait_message(1, _(txt_art_not_saved));
 				return NULL;
 
-			default:	/* iKeySaveAppendFile */
+			default:	/* SAVE_APPEND_FILE */
 				break;
 		}
-		tinrc.default_save_mode = ch;
+		if (func == SAVE_OVERWRITE_FILE)
+			tinrc.default_save_mode = 'o';
+		else
+			tinrc.default_save_mode = 'a';
 	}
 
 	if ((fp = fopen(path, mode)) == NULL) {
@@ -648,7 +651,7 @@ expand_save_filename(
  */
 t_bool
 post_process_files(
-	int proc_type_ch,
+	t_function proc_type_func,
 	t_bool auto_delete)
 {
 	if (num_save < 1)
@@ -660,13 +663,13 @@ post_process_files(
 #endif /* USE_CURSES */
 	my_printf("%s%s", _(txt_post_processing), cCRLF);
 
-	switch (proc_type_ch) {
-		case iKeyPProcShar:
+	switch (proc_type_func) {
+		case POSTPROCESS_SHAR:
 			post_process_sh();
 			break;
 
 		/* This is the default, eg, with AUTOSAVE */
-		case iKeyPProcYes:
+		case POSTPROCESS_YES:
 		default:
 			post_process_uud();
 			break;
@@ -1287,7 +1290,7 @@ decode_save_one(
 		}
 	} else {
 		snprintf(buf, sizeof(buf), _(txt_view_attachment), savepath, content_types[part->type], part->subtype);
-		if ((i = prompt_yn(cLINES, buf, TRUE)) == 1)
+		if ((i = prompt_yn(buf, TRUE)) == 1)
 			start_viewer(part, savepath);
 		else if (i == -1) {	/* Skip rest of attachments */
 			unlink(savepath);
@@ -1304,7 +1307,7 @@ decode_save_one(
 	}
 	if (!postproc) {
 		snprintf(buf, sizeof(buf), _(txt_save_attachment), savepath, content_types[part->type], part->subtype);
-		if ((i = prompt_yn(cLINES, buf, FALSE)) != 1) {
+		if ((i = prompt_yn(buf, FALSE)) != 1) {
 			unlink(savepath);
 			if (i == -1)	/* Skip rest of attachments */
 				return FALSE;
diff -Nurp tin-1.7.7/src/screen.c tin-1.7.8/src/screen.c
--- tin-1.7.7/src/screen.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/screen.c	Fri Feb 11 16:54:46 2005
@@ -3,10 +3,10 @@
  *  Module    : screen.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-09-19
+ *  Updated   : 2005-02-11
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -46,11 +46,6 @@
 	struct t_screen *screen;
 #endif /* !USE_CURSES */
 
-/*
- * Local prototypes
- */
-static char *fmt_message(const char *fmt, va_list ap);
-
 
 /*
  * Move the cursor to the lower-left of the screen, where it won't be annoying
@@ -69,7 +64,7 @@ stow_cursor(
  * returns a pointer to an allocated buffer with the formated message
  * must be freed if not needed anymore
  */
-static char *
+char *
 fmt_message(
 	const char *fmt,
 	va_list ap)
diff -Nurp tin-1.7.7/src/search.c tin-1.7.8/src/search.c
--- tin-1.7.7/src/search.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/search.c	Mon Mar  7 16:23:52 2005
@@ -3,10 +3,10 @@
  *  Module    : search.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-10-17
+ *  Updated   : 2005-03-07
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -38,9 +38,9 @@
 #ifndef TIN_H
 #	include "tin.h"
 #endif /* !TIN_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 /*
  * local prototypes
@@ -98,9 +98,9 @@ get_search_pattern(
 
 		/* HIST_BODY_SEARCH doesn't exist, hence i_key_search_last is set directly in search_body() */
 		if (which_hist == HIST_AUTHOR_SEARCH)
-			i_key_search_last = *forward ? iKeySearchAuthF : iKeySearchAuthB;
+			last_search = *forward ? GLOBAL_SEARCH_AUTHOR_FORWARD : GLOBAL_SEARCH_AUTHOR_BACKWARD;
 		else
-			i_key_search_last = *forward ? iKeySearchSubjF : iKeySearchSubjB;
+			last_search = *forward ? GLOBAL_SEARCH_SUBJECT_FORWARD : GLOBAL_SEARCH_SUBJECT_BACKWARD;
 	}
 
 	wait_message(0, _(txt_searching));
@@ -475,22 +475,29 @@ search_group(
  */
 int
 search(
-	int key,
+	t_function func,
 	int current_art,
-	t_bool forward,
 	t_bool repeat)
 {
 	char *buf = NULL;
 	int (*search_func) (int i, char *searchbuff) = author_search;
+	t_bool forward;
 
-	switch (key) {
-		case SEARCH_SUBJ:
+	if (func == GLOBAL_SEARCH_SUBJECT_FORWARD || func == GLOBAL_SEARCH_AUTHOR_FORWARD)
+		forward = TRUE;
+	else
+		forward = FALSE;
+
+	switch (func) {
+		case GLOBAL_SEARCH_SUBJECT_FORWARD:
+		case GLOBAL_SEARCH_SUBJECT_BACKWARD:
 			if (!(buf = get_search_pattern(&forward, repeat, _(txt_search_forwards), _(txt_search_backwards), tinrc.default_search_subject, HIST_SUBJECT_SEARCH)))
 				return -1;
 			search_func = subject_search;
 			break;
 
-		case SEARCH_AUTH:
+		case GLOBAL_SEARCH_AUTHOR_FORWARD:
+		case GLOBAL_SEARCH_AUTHOR_BACKWARD:
 		default:
 			if (!(buf = get_search_pattern(&forward, repeat, _(txt_author_search_forwards), _(txt_author_search_backwards), tinrc.default_search_author, HIST_AUTHOR_SEARCH)))
 				return -1;
@@ -641,7 +648,7 @@ search_body(
 			HIST_ART_SEARCH
 	))) return -1;
 
-	i_key_search_last = iKeySearchBody;	/* store last search type for repeated search */
+	last_search = GLOBAL_SEARCH_BODY;	/* store last search type for repeated search */
 	total_cnt = curr_cnt = 0;			/* Reset global counter of articles done */
 
 	/*
diff -Nurp tin-1.7.7/src/select.c tin-1.7.8/src/select.c
--- tin-1.7.7/src/select.c	Tue Nov 16 14:28:11 2004
+++ tin-1.7.8/src/select.c	Mon Mar 14 14:09:42 2005
@@ -3,10 +3,10 @@
  *  Module    : select.c
  *  Author    : I. Lea & R. Skrenta
  *  Created   : 1991-04-01
- *  Updated   : 2004-11-16
+ *  Updated   : 2005-03-14
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>, Rich Skrenta <skrenta@pbm.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,18 +41,18 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 /*
  * Local prototypes
  */
+static t_function select_left(void);
+static t_function select_right(void);
 static int active_comp(t_comptype p1, t_comptype p2);
 static int reposition_group(struct t_group *group, int default_num);
 static int save_restore_curr_group(t_bool saving);
-static int select_left(void);
-static int select_right(void);
 static t_bool pos_next_unread_group(t_bool redraw);
 static t_bool yanked_out = TRUE;
 static void build_gline(int i);
@@ -79,19 +79,19 @@ t_menu selmenu = { 1, 0, 0, show_selecti
 static int groupname_len;	/* max. group name length */
 
 
-static int
+static t_function
 select_left(
 	void)
 {
-	return iKeyQuit;
+	return GLOBAL_QUIT;
 }
 
 
-static int
+static t_function
 select_right(
 	void)
 {
-	return iKeySelectReadGrp;
+	return SELECT_ENTER_GROUP;
 }
 
 
@@ -102,7 +102,8 @@ selection_page(
 {
 	char buf[LEN];
 	char key[MAXKEYLEN];
-	int i, n, ch;
+	int i, n;
+	t_function func;
 
 	selmenu.curr = start_groupnum;
 
@@ -133,67 +134,68 @@ selection_page(
 
 		set_xclick_on();
 
-		switch ((ch = handle_keypad(select_left, select_right, &menukeymap.select_nav))) {
-			case iKeyAbort:		/* Abort */
+		switch ((func = handle_keypad(select_left, select_right, global_mouse_action, select_keys))) {
+			case GLOBAL_ABORT:		/* Abort */
 				break;
 
-			case '1': case '2': case '3': case '4': case '5':
-			case '6': case '7': case '8': case '9':
+			case DIGIT_1:
+			case DIGIT_2:
+			case DIGIT_3:
+			case DIGIT_4:
+			case DIGIT_5:
+			case DIGIT_6:
+			case DIGIT_7:
+			case DIGIT_8:
+			case DIGIT_9:
 				if (selmenu.max)
-					prompt_item_num(ch, _(txt_select_group));
+					prompt_item_num(func_to_key(func, select_keys), _(txt_select_group));
 				else
 					info_message(_(txt_no_groups));
 				break;
 
 #ifndef NO_SHELL_ESCAPE
-			case iKeyShellEscape:
+			case GLOBAL_SHELL_ESCAPE:
 				do_shell_escape();
 				break;
 #endif /* !NO_SHELL_ESCAPE */
 
-			case iKeyFirstPage:	/* show first page of groups */
+			case GLOBAL_FIRST_PAGE:		/* show first page of groups */
 				top_of_list();
 				break;
 
-			case iKeyLastPage:	/* show last page of groups */
+			case GLOBAL_LAST_PAGE:		/* show last page of groups */
 				end_of_list();
 				break;
 
-			case iKeyPageUp:		/* page up */
-			case iKeyPageUp2:
-			case iKeyPageUp3:
+			case GLOBAL_PAGE_UP:
 				page_up();
 				break;
 
-			case iKeyPageDown:		/* page down */
-			case iKeyPageDown2:
-			case iKeyPageDown3:
+			case GLOBAL_PAGE_DOWN:
 				page_down();
 				break;
 
-			case iKeyUp:		/* line up */
-			case iKeyUp2:
+			case GLOBAL_LINE_UP:
 				move_up();
 				break;
 
-			case iKeyDown:		/* line down */
-			case iKeyDown2:
+			case GLOBAL_LINE_DOWN:
 				move_down();
 				break;
 
-			case iKeyScrollDown:
+			case GLOBAL_SCROLL_DOWN:
 				scroll_down();
 				break;
 
-			case iKeyScrollUp:
+			case GLOBAL_SCROLL_UP:
 				scroll_up();
 				break;
 
-			case iKeySelectSortActive:	/* Sort active groups */
+			case SELECT_SORT_ACTIVE:	/* sort active groups */
 				sort_active_file();
 				break;
 
-			case iKeySetRange:	/* set range */
+			case GLOBAL_SET_RANGE:
 				if (selmenu.max) {
 					if (set_range(SELECT_LEVEL, 1, selmenu.max, selmenu.curr + 1))
 						show_selection_page();
@@ -201,42 +203,40 @@ selection_page(
 					info_message(_(txt_no_groups));
 				break;
 
-			case iKeySearchSubjF:	/* search forward */
-			case iKeySearchSubjB:	/* search backward */
-			case iKeySearchRepeat:
-				if (ch == iKeySearchRepeat && i_key_search_last != iKeySearchSubjF && i_key_search_last != iKeySearchSubjB)
-					info_message(_(txt_bad_command), printascii(key, map_to_local(iKeyHelp, &menukeymap.select_nav)));
+			case GLOBAL_SEARCH_SUBJECT_FORWARD:
+			case GLOBAL_SEARCH_SUBJECT_BACKWARD:
+			case GLOBAL_SEARCH_REPEAT:
+				if (func == GLOBAL_SEARCH_REPEAT && last_search != GLOBAL_SEARCH_SUBJECT_FORWARD && last_search != GLOBAL_SEARCH_SUBJECT_BACKWARD)
+					info_message(_(txt_bad_command), printascii(key, key_to_func(GLOBAL_HELP, select_keys)));
 				else {
-					if ((i = search_active((ch == iKeySearchSubjF), (ch == iKeySearchRepeat))) != -1) {
+					if ((i = search_active((func == GLOBAL_SEARCH_SUBJECT_FORWARD), (func == GLOBAL_SEARCH_REPEAT))) != -1) {
 						move_to_item(i);
 						clear_message();
 					}
 				}
 				break;
 
-			case iKeySelectReadGrp:	/* go into group */
-			case iKeySelectReadGrp2:
+			case SELECT_ENTER_GROUP:		/* go into group */
 				select_read_group();
 				break;
 
-			case iKeySelectEnterNextUnreadGrp:	/* enter next group containing unread articles */
-			case iKeySelectEnterNextUnreadGrp2:
+			case SELECT_ENTER_NEXT_UNREAD_GROUP:	/* enter next group containing unread articles */
 				if (pos_next_unread_group(FALSE))
 					read_groups();
 				break;							/* Nothing more to do at the moment */
 
-			case iKeyRedrawScr:		/* redraw */
+			case GLOBAL_REDRAW_SCREEN:
 				my_retouch();					/* TODO: not done elsewhere, maybe should be in show_selection_page */
 				set_xclick_off();
 				show_selection_page();
 				break;
 
-			case iKeySelectResetNewsrc:	/* reset .newsrc */
+			case SELECT_RESET_NEWSRC:		/* reset .newsrc */
 				if (no_write) {
 					info_message(_(txt_info_no_write));
 					break;
 				}
-				if (prompt_yn(cLINES, _(txt_reset_newsrc), FALSE) == 1) {
+				if (prompt_yn(_(txt_reset_newsrc), FALSE) == 1) {
 					reset_newsrc();
 					sync_active_file();
 					selmenu.curr = 0;
@@ -244,22 +244,28 @@ selection_page(
 				}
 				break;
 
-			case iKeySelectCatchup:	/* catchup - mark all articles as read */
-			case iKeySelectCatchupNextUnread:	/* and goto next unread group */
+			case SELECT_CATCHUP:			/* catchup - mark all articles as read */
+			case SELECT_CATCHUP_NEXT_UNREAD:	/* and goto next unread group */
 				if (selmenu.max)
-					catchup_group(&CURR_GROUP, (ch == iKeySelectCatchupNextUnread));
+					catchup_group(&CURR_GROUP, (func == SELECT_CATCHUP_NEXT_UNREAD));
 				else
 					info_message(_(txt_no_groups));
 				break;
 
-			case iKeySelectToggleDescriptions:	/* toggle newsgroup descriptions */
+			case GLOBAL_EDIT_FILTER:
+				if (!invoke_editor(filter_file, FILTER_FILE_OFFSET))
+					break;
+				(void) read_filter_file(filter_file);
+				break;
+
+			case SELECT_TOGGLE_DESCRIPTIONS:	/* toggle newsgroup descriptions */
 				show_description = bool_not(show_description);
 				if (show_description)
 					read_descriptions(TRUE);
 				show_selection_page();
 				break;
 
-			case iKeySelectGoto:			/* prompt for a new group name */
+			case SELECT_GOTO:			/* prompt for a new group name */
 				{
 					int oldmax = selmenu.max;
 
@@ -275,24 +281,24 @@ selection_page(
 				}
 				break;
 
-			case iKeyHelp:					/* help */
+			case GLOBAL_HELP:
 				show_help_page(SELECT_LEVEL, _(txt_group_select_com));
 				show_selection_page();
 				break;
 
-			case iKeyToggleHelpDisplay:		/* toggle mini help menu */
+			case GLOBAL_TOGGLE_HELP_DISPLAY:	/* toggle mini help menu */
 				toggle_mini_help(SELECT_LEVEL);
 				show_selection_page();
 				break;
 
-			case iKeyToggleInverseVideo:	/* toggle inverse video */
+			case GLOBAL_TOGGLE_INVERSE_VIDEO:
 				toggle_inverse_video();
 				show_selection_page();
 				show_inverse_video_status();
 				break;
 
 #ifdef HAVE_COLOR
-			case iKeyToggleColor:			/* toggle color */
+			case GLOBAL_TOGGLE_COLOR:
 				if (toggle_color()) {
 					show_selection_page();
 					show_color_status();
@@ -300,12 +306,12 @@ selection_page(
 				break;
 #endif /* HAVE_COLOR */
 
-			case iKeyToggleInfoLastLine:	/* display group description */
+			case GLOBAL_TOGGLE_INFO_LAST_LINE:	/* display group description */
 				tinrc.info_in_last_line = bool_not(tinrc.info_in_last_line);
 				show_selection_page();
 				break;
 
-			case iKeySelectMoveGrp:	/* reposition group within group list */
+			case SELECT_MOVE_GROUP:			/* reposition group within group list */
 				/* TODO: move all this to reposition_group() */
 				if (!selmenu.max) {
 					info_message(_(txt_no_groups));
@@ -337,31 +343,31 @@ selection_page(
 				}
 				break;
 
-			case iKeyOptionMenu:	/* option menu */
+			case GLOBAL_OPTION_MENU:
 				(void) change_config_file(NULL);
 				read_attributes_files();
 				show_selection_page();
 				break;
 
-			case iKeySelectNextUnreadGrp:	/* goto next unread group */
+			case SELECT_NEXT_UNREAD_GROUP:		/* goto next unread group */
 				pos_next_unread_group(TRUE);
 				break;
 
-			case iKeyQuit:	/* quit */
+			case GLOBAL_QUIT:			/* quit */
 				select_done();
 				break;
 
-			case iKeyQuitTin:	/* quit, no ask */
+			case GLOBAL_QUIT_TIN:			/* quit, no ask */
 				select_quit();
 				break;
 
-			case iKeySelectQuitNoWrite:	/* quit, but don't save configuration */
-				if (prompt_yn(cLINES, _(txt_quit_no_write), TRUE) == 1)
+			case SELECT_QUIT_NO_WRITE:		/* quit, but don't save configuration */
+				if (prompt_yn(_(txt_quit_no_write), TRUE) == 1)
 					tin_done(EXIT_SUCCESS);
 				show_selection_page();
 				break;
 
-			case iKeySelectToggleReadDisplay:
+			case SELECT_TOGGLE_READ_DISPLAY:
 				/*
 				 * If in tinrc.show_only_unread_groups mode toggle all
 				 * subscribed to groups and only groups that contain unread
@@ -380,11 +386,11 @@ selection_page(
 					info_message(_(txt_show_unread));
 				break;
 
-			case iKeySelectBugReport:
+			case GLOBAL_BUGREPORT:
 				bug_report();
 				break;
 
-			case iKeySelectSubscribe:	/* subscribe to current group */
+			case SELECT_SUBSCRIBE:			/* subscribe to current group */
 				if (!selmenu.max) {
 					info_message(_(txt_no_groups));
 					break;
@@ -401,7 +407,7 @@ selection_page(
 				}
 				break;
 
-			case iKeySelectSubscribePat:	/* subscribe to groups matching pattern */
+			case SELECT_SUBSCRIBE_PATTERN:		/* subscribe to groups matching pattern */
 				if (no_write) {
 					info_message(_(txt_info_no_write));
 					break;
@@ -409,7 +415,7 @@ selection_page(
 				subscribe_pattern(_(txt_subscribe_pattern), _(txt_subscribing), _(txt_subscribed_num_groups), TRUE);
 				break;
 
-			case iKeySelectUnsubscribe:	/* unsubscribe to current group */
+			case SELECT_UNSUBSCRIBE:		/* unsubscribe to current group */
 				if (!selmenu.max) {
 					info_message(_(txt_no_groups));
 					break;
@@ -436,7 +442,7 @@ selection_page(
 				}
 				break;
 
-			case iKeySelectUnsubscribePat:	/* unsubscribe to groups matching pattern */
+			case SELECT_UNSUBSCRIBE_PATTERN:	/* unsubscribe to groups matching pattern */
 				if (no_write) {
 					info_message(_(txt_info_no_write));
 					break;
@@ -445,11 +451,11 @@ selection_page(
 								_(txt_unsubscribing), _(txt_unsubscribed_num_groups), FALSE);
 				break;
 
-			case iKeyVersion:	/* show tin version */
+			case GLOBAL_VERSION:			/* show tin version */
 				info_message(cvers);
 				break;
 
-			case iKeyPost:	/* post a basenote */
+			case GLOBAL_POST:			/* post a basenote */
 				if (!selmenu.max) {
 					snprintf(buf, sizeof(buf), _(txt_post_newsgroups), tinrc.default_post_newsgroups);
 					if (!prompt_string_default(buf, tinrc.default_post_newsgroups, _(txt_no_newsgroups), HIST_POST_NEWSGROUPS))
@@ -484,8 +490,7 @@ selection_page(
 					show_selection_page();
 				break;
 
-			case iKeyPostponed:
-			case iKeyPostponed2:	/* post postponed article */
+			case GLOBAL_POSTPONED:			/* post postponed article */
 				if (can_post) {
 					if (pickup_postponed_articles(FALSE, FALSE))
 						show_selection_page();
@@ -493,23 +498,22 @@ selection_page(
 					info_message(_(txt_cannot_post));
 				break;
 
-			case iKeyDisplayPostHist:	/* display messages posted by user */
+			case GLOBAL_DISPLAY_POST_HISTORY:	/* display messages posted by user */
 				if (user_posted_messages())
 					show_selection_page();
 				break;
 
-			case iKeySelectYankActive:	/* yank in/out rest of groups from active */
+			case SELECT_YANK_ACTIVE:		/* yank in/out rest of groups from active */
 				yank_active_file();
 				break;
 
-			case iKeySelectSyncWithActive:	/* Re-read active file to see if any new news */
+			case SELECT_SYNC_WITH_ACTIVE:		/* Re-read active file to see if any new news */
 				sync_active_file();
 				if (!yanked_out)
 					yank_active_file();			/* yank out if yanked in */
 				break;
 
-			case iKeySelectMarkGrpUnread:
-			case iKeySelectMarkGrpUnread2:	/* mark group unread */
+			case SELECT_MARK_GROUP_UNREAD:
 				if (!selmenu.max) {
 					info_message(_(txt_no_groups));
 					break;
@@ -527,7 +531,7 @@ selection_page(
 				break;
 
 			default:
-				info_message(_(txt_bad_command), printascii(key, map_to_local(iKeyHelp, &menukeymap.select_nav)));
+				info_message(_(txt_bad_command), printascii(key, func_to_key(GLOBAL_HELP, select_keys)));
 		}
 	}
 }
@@ -957,7 +961,7 @@ catchup_group(
 {
 	char *smsg = NULL;
 
-	if ((!TINRC_CONFIRM_ACTION) || prompt_yn(cLINES, sized_message(&smsg, _(txt_mark_group_read), group->name), TRUE) == 1) {
+	if ((!TINRC_CONFIRM_ACTION) || prompt_yn(sized_message(&smsg, _(txt_mark_group_read), group->name), TRUE) == 1) {
 		grp_mark_read(group, NULL);
 		mark_screen(selmenu.curr, 9, "     ");
 
@@ -1227,9 +1231,9 @@ static void
 select_done(
 	void)
 {
-	if (!TINRC_CONFIRM_TO_QUIT || prompt_yn(cLINES, _(txt_quit), TRUE) == 1)
+	if (!TINRC_CONFIRM_TO_QUIT || prompt_yn(_(txt_quit), TRUE) == 1)
 		select_quit();
-	if (!no_write && prompt_yn(cLINES, _(txt_save_config), TRUE) == 1) {
+	if (!no_write && prompt_yn(_(txt_save_config), TRUE) == 1) {
 		write_config_file(local_config_file);
 		write_newsrc();
 	}
diff -Nurp tin-1.7.7/src/sigfile.c tin-1.7.8/src/sigfile.c
--- tin-1.7.7/src/sigfile.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/sigfile.c	Thu Dec 30 14:33:12 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2003-09-19
  *  Notes     : Generate random signature for posting/mailing etc.
  *
- * Copyright (c) 1992-2004 Mike Gleason
+ * Copyright (c) 1992-2005 Mike Gleason
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/signal.c tin-1.7.8/src/signal.c
--- tin-1.7.7/src/signal.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/signal.c	Thu Dec 30 14:33:12 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-03-14
  *  Notes     : signal handlers for different modes and window resizing
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/strftime.c tin-1.7.8/src/strftime.c
--- tin-1.7.7/src/strftime.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/strftime.c	Thu Dec 30 14:33:12 2004
@@ -12,7 +12,7 @@
  *              tm = localtime(&secs);
  *              num = strftime(buf, sizeof(buf), "%a %d-%m-%y %H:%M:%S", tm);
  *
- * Copyright (c) 1991-2004 Arnold Robbins <arnold@skeeve.com>
+ * Copyright (c) 1991-2005 Arnold Robbins <arnold@skeeve.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/string.c tin-1.7.8/src/string.c
--- tin-1.7.7/src/string.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/string.c	Mon Mar 21 01:19:09 2005
@@ -3,10 +3,10 @@
  *  Module    : string.c
  *  Author    : Urs Janssen <urs@tin.org>
  *  Created   : 1997-01-20
- *  Updated   : 2004-09-19
+ *  Updated   : 2005-03-30
  *  Notes     :
  *
- * Copyright (c) 1997-2004 Urs Janssen <urs@tin.org>
+ * Copyright (c) 1997-2005 Urs Janssen <urs@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -448,6 +448,28 @@ strncasecmp(
 }
 #endif /* !HAVE_STRNCASECMP */
 
+#ifndef HAVE_STRSEP
+/*
+ * strsep() is not mandatory in ANSI-C
+ */
+char *strsep(
+	char **stringp,
+	const char *delim)
+{
+	char *s = *stringp;
+	char *p;
+
+	if (!s)
+		return NULL;
+
+	if ((p = strpbrk(s, delim)) != NULL)
+		*p++ = '\0';
+
+	*stringp = p;
+	return s;
+}
+#endif /* !HAVE_STRSEP */
+
 
 /*
  * str_trim - leading and trailing whitespace
@@ -465,6 +487,9 @@ str_trim(
 	char *rp;		/* reading string pointer */
 	char *wp;		/* writing string pointer */
 	char *ls;		/* last space */
+
+	if (string == NULL)
+		return NULL;
 
 	for (rp = wp = ls = string; isspace((int) *rp); rp++)		/* Skip leading space */
 		;
diff -Nurp tin-1.7.7/src/tags.c tin-1.7.8/src/tags.c
--- tin-1.7.7/src/tags.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/tags.c	Thu Dec 30 14:33:12 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-03-14
  *  Notes     : Split out from other modules
  *
- * Copyright (c) 1999-2004 Jason Faultless <jason@altarstone.com>
+ * Copyright (c) 1999-2005 Jason Faultless <jason@altarstone.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/tcurses.c tin-1.7.8/src/tcurses.c
--- tin-1.7.7/src/tcurses.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/tcurses.c	Thu Dec 30 14:33:12 2004
@@ -7,7 +7,7 @@
  *  Notes     : This is a set of wrapper functions adapting the termcap
  *	             interface of tin to use SVr4 curses (e.g., ncurses).
  *
- * Copyright (c) 1997-2004 Thomas Dickey <dickey@invisible-island.net>
+ * Copyright (c) 1997-2005 Thomas Dickey <dickey@invisible-island.net>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/thread.c tin-1.7.8/src/thread.c
--- tin-1.7.7/src/thread.c	Wed Dec  1 16:14:43 2004
+++ tin-1.7.8/src/thread.c	Mon Mar 14 18:32:18 2005
@@ -3,10 +3,10 @@
  *  Module    : thread.c
  *  Author    : I. Lea
  *  Created   : 1991-04-01
- *  Updated   : 2004-12-01
+ *  Updated   : 2005-03-14
  *  Notes     :
  *
- * Copyright (c) 1991-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1991-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,9 +41,9 @@
 #ifndef TCURSES_H
 #	include "tcurses.h"
 #endif /* !TCURSES_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 #define EXPIRED(a) ((a)->article == ART_UNAVAILABLE || arts[(a)->article].thread == ART_EXPIRED)
 
@@ -57,12 +57,12 @@ t_bool show_subject;
 static char get_art_mark(struct t_article *art);
 static int enter_pager(int art, t_bool ignore_unavail, int level);
 static int mark_art_read(struct t_group *group);
-static int thread_catchup(int ch);
-static int thread_left(void);
-static int thread_right(void);
+static int thread_catchup(t_function func);
 static int thread_tab_pressed(void);
 static t_bool find_unexpired(struct t_msgid *ptr);
 static t_bool has_sibling(struct t_msgid *ptr);
+static t_function thread_left(void);
+static t_function thread_right(void);
 static void build_tline(int l, struct t_article *art);
 static void draw_thread_arrow(void);
 static void draw_thread_item(int item);
@@ -78,6 +78,8 @@ static void update_thread_page(void);
  */
 static t_menu thdmenu = {0, 0, 0, show_thread_page, draw_thread_arrow, draw_thread_item };
 
+/* TODO: find a better solution */
+static int ret_code = 0;		/* Set to < 0 when it is time to leave this menu */
 
 /*
  * returns the mark which should be used for this article
@@ -355,22 +357,22 @@ draw_thread_item(
 }
 
 
-static int
+static t_function
 thread_left(
 	void)
 {
 	if (tinrc.thread_catchup_on_exit)
-		return iKeyCatchupLeft;			/* ie, not via 'c' or 'C' */
+		return SPECIAL_CATCHUP_LEFT;			/* ie, not via 'c' or 'C' */
 	else
-		return iKeyQuit;
+		return GLOBAL_QUIT;
 }
 
 
-static int
+static t_function
 thread_right(
 	void)
 {
-	return iKeyThreadReadArt;
+	return THREAD_READ_ARTICLE;
 }
 
 
@@ -397,10 +399,9 @@ thread_page(
 {
 	char key[MAXKEYLEN];
 	char mark[] = { '\0', '\0' };
-	int ret_code = 0;			/* Set to < 0 when it is time to leave this menu */
-	int ch;
 	int i, n;
 	t_bool repeat_search;
+	t_function func;
 
 	thread_respnum = respnum;		/* Bodge to make this variable global */
 
@@ -452,41 +453,50 @@ thread_page(
 	/* Now we know where the cursor is, actually put something on the screen */
 	show_thread_page();
 
+	/* reset ret_code */
+	ret_code = 0;
 	while (ret_code >= 0) {
 		set_xclick_on();
-		if ((ch = handle_keypad(thread_left, thread_right, &menukeymap.thread_nav)) == iKeySearchRepeat) {
-			ch = i_key_search_last;
+		if ((func = handle_keypad(thread_left, thread_right, global_mouse_action, thread_keys)) == GLOBAL_SEARCH_REPEAT) {
+			func = last_search;
 			repeat_search = TRUE;
 		} else
 			repeat_search = FALSE;
 
-		switch (ch) {
-			case iKeyAbort:			/* Abort */
+		switch (func) {
+			case GLOBAL_ABORT:			/* Abort */
 				break;
 
-			case '1': case '2': case '3': case '4': case '5':
-			case '6': case '7': case '8': case '9':
+			case DIGIT_1:
+			case DIGIT_2:
+			case DIGIT_3:
+			case DIGIT_4:
+			case DIGIT_5:
+			case DIGIT_6:
+			case DIGIT_7:
+			case DIGIT_8:
+			case DIGIT_9:
 				if (thdmenu.max == 1)
 					info_message(_(txt_no_responses));
 				else
-					prompt_item_num(ch, _(txt_select_art));
+					prompt_item_num(func_to_key(func, thread_keys), _(txt_select_art));
 				break;
 
 #ifndef NO_SHELL_ESCAPE
-			case iKeyShellEscape:
+			case GLOBAL_SHELL_ESCAPE:
 				do_shell_escape();
 				break;
 #endif /* !NO_SHELL_ESCAPE */
 
-			case iKeyFirstPage:	/* show first page of articles */
+			case GLOBAL_FIRST_PAGE:		/* show first page of articles */
 				top_of_list();
 				break;
 
-			case iKeyLastPage:	/* show last page of articles */
+			case GLOBAL_LAST_PAGE:		/* show last page of articles */
 				end_of_list();
 				break;
 
-			case iKeyLastViewed:	/* show last viewed article */
+			case GLOBAL_LAST_VIEWED:	/* show last viewed article */
 				if (this_resp < 0 || (which_thread(this_resp) == -1)) {
 					info_message(_(txt_no_last_message));
 					break;
@@ -494,36 +504,46 @@ thread_page(
 				ret_code = enter_pager(this_resp, FALSE, THREAD_LEVEL);
 				break;
 
-			case iKeySetRange:	/* set range */
+			case GLOBAL_SET_RANGE:		/* set range */
 				if (set_range(THREAD_LEVEL, 1, thdmenu.max, thdmenu.curr + 1))
 					show_thread_page();
 				break;
 
-			case iKeyPipe:			/* pipe article to command */
+			case GLOBAL_PIPE:			/* pipe article(s) to command */
 				if (thread_basenote >= 0)
 					feed_articles(FEED_PIPE, THREAD_LEVEL, group, find_response(thread_basenote, thdmenu.curr));
 				break;
 
-			case iKeyThreadMail:	/* mail article to somebody */
+#ifndef DISABLE_PRINTING
+			case GLOBAL_PRINT:			/* print article(s) */
+				if (thread_basenote >= 0)
+					feed_articles(FEED_PRINT, THREAD_LEVEL, group, find_response(thread_basenote, thdmenu.curr));
+				break;
+#endif /* !DISABLE_PRINTING */
+
+			case THREAD_MAIL:	/* mail article(s) to somebody */
 				if (thread_basenote >= 0)
 					feed_articles(FEED_MAIL, THREAD_LEVEL, group, find_response(thread_basenote, thdmenu.curr));
 				break;
 
-			case iKeyThreadSave:	/* save articles with prompting */
+			case THREAD_SAVE:	/* save articles with prompting */
 				if (thread_basenote >= 0)
 					feed_articles(FEED_SAVE, THREAD_LEVEL, group, find_response(thread_basenote, thdmenu.curr));
 				break;
 
-			case iKeyThreadAutoSave:	/* Auto-save articles without prompting */
+			case THREAD_AUTOSAVE:	/* Auto-save articles without prompting */
 				if (thread_basenote >= 0)
 					feed_articles(FEED_AUTOSAVE, THREAD_LEVEL, group, (int) base[grpmenu.curr]);
 				break;
 
-#if 0 /* FIXME: crsr-position after kill */
-			case iKeyThreadAutoSel:
-			case iKeyThreadAutoKill:
+			case GLOBAL_MENU_FILTER_SELECT:
+			case GLOBAL_MENU_FILTER_KILL:
+				/*
+				 * FIXME: a filter which kills all remaining messages in a thread
+				 *        is 'troublesome'
+				 */
 				n = find_response(thread_basenote, thdmenu.curr);
-				filter_menu((ch == iKeyThreadAutoKill) ? FILTER_KILL : FILTER_SELECT, group, &arts[n]);
+				filter_menu((func == GLOBAL_MENU_FILTER_KILL) ? FILTER_KILL : FILTER_SELECT, group, &arts[n]);
 				if (filter_articles(group)) {
 					make_threads(group, FALSE);
 					if ((n = next_unread(n)) == -1) {
@@ -534,69 +554,77 @@ thread_page(
 				}
 				show_thread_page();
 				break;
-#endif /* 0 */
 
-			case iKeyThreadReadArt:
-			case iKeyThreadReadArt2:	/* read current article within thread */
+			case GLOBAL_EDIT_FILTER:
+				if (!invoke_editor(filter_file, FILTER_FILE_OFFSET))
+					break;
+				unfilter_articles();
+				(void) read_filter_file(filter_file);
+				if (filter_articles(group)) {
+					make_threads(group, FALSE);
+					if ((n = next_unread(n)) == -1) {
+						ret_code = GRP_EXIT;
+						break;
+					}
+					fixup_thread(n, TRUE);
+				}
+				show_thread_page();
+				break;
+
+			case THREAD_READ_ARTICLE:	/* read current article within thread */
 				ret_code = enter_pager(find_response(thread_basenote, thdmenu.curr), FALSE, THREAD_LEVEL);
 				break;
 
-			case iKeyThreadReadNextArtOrThread:
+			case THREAD_READ_NEXT_ARTICLE_OR_THREAD:
 				ret_code = thread_tab_pressed();
 				break;
 
-			case iKeyPost:	/* post a basenote */
+			case GLOBAL_POST:		/* post a basenote */
 				if (post_article(group->name))
 					show_thread_page();
 				break;
 
-			case iKeyRedrawScr:		/* redraw screen */
+			case GLOBAL_REDRAW_SCREEN:	/* redraw screen */
 				my_retouch();
 				set_xclick_off();
 				show_thread_page();
 				break;
 
-			case iKeyDown:		/* line down */
-			case iKeyDown2:
+			case GLOBAL_LINE_DOWN:
 				move_down();
 				break;
 
-			case iKeyUp:
-			case iKeyUp2:		/* line up */
+			case GLOBAL_LINE_UP:
 				move_up();
 				break;
 
-			case iKeyPageUp:		/* page up */
-			case iKeyPageUp2:
-			case iKeyPageUp3:
+			case GLOBAL_PAGE_UP:
 				page_up();
 				break;
 
-			case iKeyPageDown:		/* page down */
-			case iKeyPageDown2:
-			case iKeyPageDown3:
+			case GLOBAL_PAGE_DOWN:
 				page_down();
 				break;
 
-			case iKeyScrollDown:
+			case GLOBAL_SCROLL_DOWN:
 				scroll_down();
 				break;
 
-			case iKeyScrollUp:
+			case GLOBAL_SCROLL_UP:
 				scroll_up();
 				break;
 
-			case iKeyCatchupLeft:				/* come here when exiting thread via <- */
-			case iKeyThreadCatchup:				/* catchup thread, move to next one */
-			case iKeyThreadCatchupNextUnread:	/* -> next with unread arts */
-				ret_code = thread_catchup(ch);
+			case SPECIAL_CATCHUP_LEFT:				/* come here when exiting thread via <- */
+			case THREAD_CATCHUP:				/* catchup thread, move to next one */
+			case THREAD_CATCHUP_NEXT_UNREAD:	/* -> next with unread arts */
+				ret_code = thread_catchup(func);
 				break;
 
-			case iKeyThreadMarkArtRead: /* mark article as read */
+			case THREAD_MARK_ARTICLE_READ: /* mark article as read */
 				ret_code = mark_art_read(group);
 				break;
 
-			case iKeyThreadToggleSubjDisplay:	/* toggle display of subject & subj/author */
+			case THREAD_TOGGLE_SUBJECT_DISPLAY:	/* toggle display of subject & subj/author */
 				if (show_subject) {
 					if (++curr_group->attribute->show_author > SHOW_FROM_BOTH)
 						curr_group->attribute->show_author = SHOW_FROM_NONE;
@@ -604,7 +632,7 @@ thread_page(
 				}
 				break;
 
-			case iKeyOptionMenu:
+			case GLOBAL_OPTION_MENU:
 				change_config_file(group);
 				n = find_response(thread_basenote, thdmenu.curr);
 				if (which_thread(n) == -1) /* We have lost the thread */
@@ -616,55 +644,44 @@ thread_page(
 				}
 				break;
 
-			case iKeyHelp:					/* help */
+			case GLOBAL_HELP:					/* help */
 				show_help_page(THREAD_LEVEL, _(txt_thread_com));
 				show_thread_page();
 				break;
 
-			/* TODO: assign a new key here */
-			case iKeyGroupKill:
-				n = find_response(thread_basenote, thdmenu.curr);
-				filter_menu(FILTER_KILL, group, &arts[n]);
-				show_thread_page();
-				break;
-
-			case iKeyLookupMessage:
+			case GLOBAL_LOOKUP_MESSAGEID:
 				if ((n = prompt_msgid()) != ART_UNAVAILABLE)
 					ret_code = enter_pager(n, FALSE, THREAD_LEVEL);
 				break;
 
-			case iKeySearchBody:			/* search article body */
+			case GLOBAL_SEARCH_BODY:			/* search article body */
 				if ((n = search_body(group, find_response(thread_basenote, thdmenu.curr), repeat_search)) != -1) {
 					fixup_thread(n, FALSE);
 					ret_code = enter_pager(n, FALSE, THREAD_LEVEL);
 				}
 				break;
 
-			case iKeySearchSubjF:			/* subject search */
-			case iKeySearchSubjB:
-				if ((n = search(SEARCH_SUBJ, find_response(thread_basenote, thdmenu.curr), (ch == iKeySearchSubjF), repeat_search)) != -1)
-					fixup_thread(n, TRUE);
-				break;
-
-			case iKeySearchAuthF:			/* author search */
-			case iKeySearchAuthB:
-				if ((n = search(SEARCH_AUTH, find_response(thread_basenote, thdmenu.curr), (ch == iKeySearchAuthF), repeat_search)) != -1)
+			case GLOBAL_SEARCH_AUTHOR_FORWARD:			/* author search */
+			case GLOBAL_SEARCH_AUTHOR_BACKWARD:
+			case GLOBAL_SEARCH_SUBJECT_FORWARD:			/* subject search */
+			case GLOBAL_SEARCH_SUBJECT_BACKWARD:
+				if ((n = search(func, find_response(thread_basenote, thdmenu.curr), repeat_search)) != -1)
 					fixup_thread(n, TRUE);
 				break;
 
-			case iKeyToggleHelpDisplay:		/* toggle mini help menu */
+			case GLOBAL_TOGGLE_HELP_DISPLAY:		/* toggle mini help menu */
 				toggle_mini_help(THREAD_LEVEL);
 				show_thread_page();
 				break;
 
-			case iKeyToggleInverseVideo:	/* toggle inverse video */
+			case GLOBAL_TOGGLE_INVERSE_VIDEO:	/* toggle inverse video */
 				toggle_inverse_video();
 				show_thread_page();
 				show_inverse_video_status();
 				break;
 
 #ifdef HAVE_COLOR
-			case iKeyToggleColor:		/* toggle color */
+			case GLOBAL_TOGGLE_COLOR:		/* toggle color */
 				if (toggle_color()) {
 					show_thread_page();
 					show_color_status();
@@ -672,15 +689,15 @@ thread_page(
 				break;
 #endif /* HAVE_COLOR */
 
-			case iKeyQuit:				/* return to previous level */
+			case GLOBAL_QUIT:			/* return to previous level */
 				ret_code = GRP_EXIT;
 				break;
 
-			case iKeyQuitTin:			/* quit */
+			case GLOBAL_QUIT_TIN:			/* quit */
 				ret_code = GRP_QUIT;
 				break;
 
-			case iKeyThreadTag:			/* tag/untag article */
+			case THREAD_TAG:			/* tag/untag article */
 				/* Find index of current article */
 				if ((n = find_response(thread_basenote, thdmenu.curr)) < 0)
 					break;
@@ -702,20 +719,20 @@ thread_page(
 				}
 				break;
 
-			case iKeyThreadBugReport:
+			case GLOBAL_BUGREPORT:
 				bug_report();
 				break;
 
-			case iKeyThreadUntag:			/* untag all articles */
+			case THREAD_UNTAG:			/* untag all articles */
 				if (grpmenu.curr >= 0 && untag_all_articles())
 					update_thread_page();
 				break;
 
-			case iKeyVersion:			/* version */
+			case GLOBAL_VERSION:			/* version */
 				info_message(cvers);
 				break;
 
-			case iKeyThreadMarkArtUnread:		/* mark article as unread */
+			case THREAD_MARK_ARTICLE_UNREAD:	/* mark article as unread */
 				n = find_response(thread_basenote, thdmenu.curr);
 				art_mark(group, &arts[n], ART_WILL_RETURN);
 				mark[0] = get_art_mark(&arts[n]);
@@ -724,17 +741,17 @@ thread_page(
 				info_message(_(txt_marked_as_unread), _(txt_article_upper));
 				break;
 
-			case iKeyThreadMarkThdUnread:		/* mark thread as unread */
+			case THREAD_MARK_THREAD_UNREAD:		/* mark thread as unread */
 				thd_mark_unread(group, base[thread_basenote]);
 				update_thread_page();
 				info_message(_(txt_marked_as_unread), _(txt_thread_upper));
 				break;
 
-			case iKeyThreadSelArt:		/* mark article as selected */
-			case iKeyThreadToggleArtSel:		/* toggle article as selected */
+			case THREAD_SELECT_ARTICLE:		/* mark article as selected */
+			case THREAD_TOGGLE_ARTICLE_SELECTION:		/* toggle article as selected */
 				if ((n = find_response(thread_basenote, thdmenu.curr)) < 0)
 					break;
-				arts[n].selected = (!(ch == iKeyThreadToggleArtSel && arts[n].selected));	/* TODO: optimise? */
+				arts[n].selected = (!(func == THREAD_TOGGLE_ARTICLE_SELECTION && arts[n].selected));	/* TODO: optimise? */
 /*				update_thread_page(); */
 				mark[0] = get_art_mark(&arts[n]);
 				mark_screen(thdmenu.curr, MARK_OFFSET, mark);
@@ -744,20 +761,19 @@ thread_page(
 					draw_thread_arrow();
 				break;
 
-			case iKeyThreadReverseSel:		/* reverse selections */
+			case THREAD_REVERSE_SELECTIONS:		/* reverse selections */
 				for_each_art_in_thread(i, thread_basenote)
 					arts[i].selected = bool_not(arts[i].selected);
 				update_thread_page();
 				break;
 
-			case iKeyThreadUndoSel:		/* undo selections */
+			case THREAD_UNDO_SELECTIONS:		/* undo selections */
 				for_each_art_in_thread(i, thread_basenote)
 					arts[i].selected = FALSE;
 				update_thread_page();
 				break;
 
-			case iKeyPostponed:
-			case iKeyPostponed2:		/* post postponed article */
+			case GLOBAL_POSTPONED:		/* post postponed article */
 				if (can_post) {
 					if (pickup_postponed_articles(FALSE, FALSE))
 						show_thread_page();
@@ -765,18 +781,18 @@ thread_page(
 					info_message(_(txt_cannot_post));
 				break;
 
-			case iKeyDisplayPostHist:	/* display messages posted by user */
+			case GLOBAL_DISPLAY_POST_HISTORY:	/* display messages posted by user */
 				if (user_posted_messages())
 					show_thread_page();
 				break;
 
-			case iKeyToggleInfoLastLine:		/* display subject in last line */
+			case GLOBAL_TOGGLE_INFO_LAST_LINE:		/* display subject in last line */
 				tinrc.info_in_last_line = bool_not(tinrc.info_in_last_line);
 				show_thread_page();
 				break;
 
 			default:
-				info_message(_(txt_bad_command), printascii(key, map_to_local(iKeyHelp, &menukeymap.thread_nav)));
+				info_message(_(txt_bad_command), printascii(key, key_to_func(GLOBAL_HELP, thread_keys)));
 		}
 	} /* ret_code >= 0 */
 
@@ -1342,7 +1358,7 @@ make_prefix(
  */
 static int
 thread_catchup(
-	int ch)
+	t_function func)
 {
 	char buf[LEN];
 	int i, n;
@@ -1356,23 +1372,23 @@ thread_catchup(
 	}
 
 	if (i != -1) {				/* still unread arts in this thread */
-		snprintf(buf, sizeof(buf), _(txt_mark_thread_read), (ch == iKeyThreadCatchupNextUnread) ? _(txt_enter_next_thread) : "");
-		if ((!TINRC_CONFIRM_ACTION) || (pyn = prompt_yn(cLINES, buf, TRUE)) == 1)
+		snprintf(buf, sizeof(buf), _(txt_mark_thread_read), (func == THREAD_CATCHUP_NEXT_UNREAD) ? _(txt_enter_next_thread) : "");
+		if ((!TINRC_CONFIRM_ACTION) || (pyn = prompt_yn(buf, TRUE)) == 1)
 			thd_mark_read(curr_group, base[thread_basenote]);
 	}
 
-	switch (ch) {
-		case iKeyThreadCatchup:				/* 'c' */
+	switch (func) {
+		case THREAD_CATCHUP:				/* 'c' */
 			if (pyn == 1)
 				return GRP_NEXT;
 			break;
 
-		case iKeyThreadCatchupNextUnread:	/* 'C' */
+		case THREAD_CATCHUP_NEXT_UNREAD:	/* 'C' */
 			if (pyn == 1)
 				return GRP_NEXTUNREAD;
 			break;
 
-		case iKeyCatchupLeft:			/* <- thread catchup on exit */
+		case SPECIAL_CATCHUP_LEFT:			/* <- thread catchup on exit */
 			switch (pyn) {
 				case -1:				/* ESC from prompt, stay in group */
 					break;
@@ -1504,27 +1520,27 @@ mark_art_read(
 	struct t_group *group)
 {
 	char keytagged[MAXKEYLEN], keycurrent[MAXKEYLEN], keyquit[MAXKEYLEN];
-	int ch = iKeyMarkReadCur;
 	int n = -1, cnt = 0;
 	int tmp_num_of_tagged_arts = num_of_tagged_arts;
+	t_function func = MARK_READ_CURRENT;
 
 	if (!tinrc.mark_ignore_tags && got_tagged_unread_arts()) {
-		ch = prompt_slk_response(iKeyMarkReadTag,
-				&menukeymap.mark_read_tagged_current,
+		func = prompt_slk_response(MARK_READ_TAGGED,
+				mark_read_keys,
 				_(txt_mark_art_read_tagged_current),
-				printascii(keytagged, map_to_local(iKeyMarkReadTag, &menukeymap.mark_read_tagged_current)),
-				printascii(keycurrent, map_to_local(iKeyMarkReadCur, &menukeymap.mark_read_tagged_current)),
-				printascii(keyquit, map_to_local(iKeyQuit, &menukeymap.mark_read_tagged_current)));
+				printascii(keytagged, func_to_key(MARK_READ_TAGGED, mark_read_keys)),
+				printascii(keycurrent, func_to_key(MARK_READ_CURRENT, mark_read_keys)),
+				printascii(keyquit, func_to_key(GLOBAL_QUIT, mark_read_keys)));
 	}
 
-	switch (ch) {
-		case iKeyMarkReadTag: /* mark tagged unread articles as read */
+	switch (func) {
+		case MARK_READ_TAGGED: /* mark tagged unread articles as read */
 			cnt = mark_tagged_read(group);
 			show_thread_page();
 			n = find_response(thread_basenote, thdmenu.curr);
 			break;
 
-		case iKeyMarkReadCur: /* mark current article as read */
+		case MARK_READ_CURRENT: /* mark current article as read */
 			n = find_response(thread_basenote, thdmenu.curr);
 			if ((arts[n].status == ART_UNREAD) || (arts[n].status == ART_WILL_RETURN)) {
 				char mark[] = { '\0', '\0' };
@@ -1535,8 +1551,9 @@ mark_art_read(
 			}
 			break;
 
-		case iKeyQuit: /* cancel operation */
-		case iKeyAbort:
+		case GLOBAL_QUIT: /* cancel operation */
+		case GLOBAL_ABORT:
+		default:
 			return 0;
 			/* NOTREACHED */
 			break;
@@ -1547,7 +1564,7 @@ mark_art_read(
 	else
 		fixup_thread(n, TRUE);	/* We may be in the next thread now */
 
-	if (ch == iKeyMarkReadTag)
+	if (func == MARK_READ_TAGGED)
 		info_message(_(txt_marked_tagged_arts_as_read), cnt, tmp_num_of_tagged_arts, PLURAL(tmp_num_of_tagged_arts, txt_article));
 
 	return 0;
diff -Nurp tin-1.7.7/src/tincfg.tbl tin-1.7.8/src/tincfg.tbl
--- tin-1.7.7/src/tincfg.tbl	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/tincfg.tbl	Thu Dec 30 14:33:54 2004
@@ -5,7 +5,7 @@
 ;   Updated   : 2004-06-06
 ;   Notes     : #defines and structs for config.c
 ;
-; Copyright (c) 1996-2004 Thomas E. Dickey <dickey@invisible-island.net>
+; Copyright (c) 1996-2005 Thomas E. Dickey <dickey@invisible-island.net>
 ; All rights reserved.
 ;
 ; Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/trace.c tin-1.7.8/src/trace.c
--- tin-1.7.7/src/trace.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/trace.c	Thu Dec 30 14:33:12 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2001-07-22
  *  Notes     : debugging support via TRACE macro.
  *
- * Copyright (c) 1997-2004 Thomas Dickey <dickey@invisible-island.net>
+ * Copyright (c) 1997-2005 Thomas Dickey <dickey@invisible-island.net>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/version.c tin-1.7.8/src/version.c
--- tin-1.7.7/src/version.c	Fri Dec 10 18:04:53 2004
+++ tin-1.7.8/src/version.c	Thu Mar 10 16:58:42 2005
@@ -3,10 +3,10 @@
  *  Module    : version.c
  *  Author    : U. Janssen
  *  Created   : 2003-05-11
- *  Updated   : 2004-12-10
+ *  Updated   : 2005-01-30
  *  Notes     :
  *
- * Copyright (c) 2003-2004 Urs Janssen <urs@tin.org>
+ * Copyright (c) 2003-2005 Urs Janssen <urs@tin.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -41,9 +41,9 @@
 #ifndef VERSION_H
 #	include "version.h"
 #endif /* !VERSION_H */
-#ifndef MENUKEYS_H
-#	include "menukeys.h"
-#endif /* !MENUKEYS_H */
+#ifndef KEYMAP_H
+#	include "keymap.h"
+#endif /* !KEYMAP_H */
 
 /*
  * line     is the entire line we should check
@@ -126,11 +126,15 @@ upgrade_prompt_quit(
 	}
 
 	error_message(_(txt_return_key));
-	/* TODO: document, use something unbuffered here */
+
+	/*
+	 * TODO: document, use something unbuffered here
+	 * NOTE: these keys can not be remapped
+	 */
 	switch (getchar()) {
-		case iKeyQuit:
-		case iKeyQuitTin:
-		case iKeyAbort:
+		case 'q':
+		case 'Q':
+		case ESC:
 			giveup();
 			/* NOTREACHED */
 			break;
diff -Nurp tin-1.7.7/src/xface.c tin-1.7.8/src/xface.c
--- tin-1.7.7/src/xface.c	Mon Nov 15 18:44:26 2004
+++ tin-1.7.8/src/xface.c	Thu Dec 30 14:33:12 2004
@@ -6,7 +6,7 @@
  *  Updated   : 2004-07-27
  *  Notes     :
  *
- * Copyright (c) 2003-2004 Joshua Crawford <mortarn@softhome.net> & Drazen Kacar <dave@willfork.com>
+ * Copyright (c) 2003-2005 Joshua Crawford <mortarn@softhome.net> & Drazen Kacar <dave@willfork.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff -Nurp tin-1.7.7/src/xref.c tin-1.7.8/src/xref.c
--- tin-1.7.7/src/xref.c	Wed Dec  1 15:47:48 2004
+++ tin-1.7.8/src/xref.c	Fri Feb 11 02:26:25 2005
@@ -3,10 +3,10 @@
  *  Module    : xref.c
  *  Author    : I. Lea & H. Brugge
  *  Created   : 1993-07-01
- *  Updated   : 2004-08-31
+ *  Updated   : 2005-02-11
  *  Notes     :
  *
- * Copyright (c) 1993-2004 Iain Lea <iain@bricbrac.de>
+ * Copyright (c) 1993-2005 Iain Lea <iain@bricbrac.de>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -90,14 +90,11 @@ overview_xref_support(
 
 	if ((fp = open_overview_fmt_fp()) != NULL) {
 		while ((ptr = tin_fgets(fp, FALSE)) != NULL) {
-
-			if (STRNCASECMPEQ(ptr, "Xref:full", 9)) {
+#if defined(DEBUG) && defined(NNTP_ABLE)
+			debug_nntp("<<<", ptr);
+#endif /* DEBUG && NNTP_ABLE */
+			if (!supported && STRNCASECMPEQ(ptr, "Xref:full", 9))
 				supported = TRUE;
-#ifdef NNTP_ABLE
-				drain_buffer(fp);
-#endif /* NNTP_ABLE */
-				break;
-			}
 		}
 		TIN_FCLOSE(fp);
 		/*
diff -Nurp tin-1.7.7/tin.spec tin-1.7.8/tin.spec
--- tin-1.7.7/tin.spec	Mon Nov 15 18:44:21 2004
+++ tin-1.7.8/tin.spec	Wed Dec 15 17:03:01 2004
@@ -1,6 +1,6 @@
 Name: tin
 Summary: tin - an easy-to-use USENET news reader
-Version: 1.7.7
+Version: 1.7.8
 Release: 1
 Copyright: BSD
 Group: Applications/News
diff -Nurp tin-1.7.7/tools/tinews.pl tin-1.7.8/tools/tinews.pl
--- tin-1.7.7/tools/tinews.pl	Mon Nov 15 18:44:23 2004
+++ tin-1.7.8/tools/tinews.pl	Thu Feb 17 15:45:03 2005
@@ -4,7 +4,7 @@
 # signs the article and posts it.
 #
 #
-# Copyright (c) 2002-2004 Urs Janssen <urs@tin.org>,
+# Copyright (c) 2002-2005 Urs Janssen <urs@tin.org>,
 #                         Marc Brockschmidt <marc@marcbrockschmidt.de>
 #
 # Redistribution and use in source and binary forms, with or without
@@ -33,6 +33,8 @@
 #
 #
 # TODO: - FIXME add debug mode which doesn't delete tmp-files and is verbose
+#         (e.g. warns about missing mime-headers if body contains 8bit
+#          chars)
 #       - add pgp6 support
 #       - check for ~/.newsauth (and ~/.nntpauth?) and use username/password
 #         if found
