{
    "mode": "man",
    "parameter": "rtin",
    "section": "1",
    "url": "https://www.chedong.com/phpMan.php/man/rtin/1/json",
    "generated": "2026-08-31T09:54:00Z",
    "synopsis": "tin  [[-h|-H|-V] |  [[-a]  [-dlnq|-Q]  [-ACkrTzxX]]  [[-R|-S]  -s  Newsdir]  [-cuvZ] [-4|-6]\n[-o|-w|-N|-M address] [-D debuglevel] [-G articlelimit] [-f newsrcfile] [-g server[:port]]\n[-m Maildir] [-p port] [-t timeout] [-I indexdir] [newsgroup[,...]]]",
    "sections": {
        "NAME": {
            "content": "tin, rtin - Usenet newsreader\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "tin  [[-h|-H|-V] |  [[-a]  [-dlnq|-Q]  [-ACkrTzxX]]  [[-R|-S]  -s  Newsdir]  [-cuvZ] [-4|-6]\n[-o|-w|-N|-M address] [-D debuglevel] [-G articlelimit] [-f newsrcfile] [-g server[:port]]\n[-m Maildir] [-p port] [-t timeout] [-I indexdir] [newsgroup[,...]]]\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "tin is a full-screen easy  to  use  Usenet  newsreader.  It  can  read  news  locally  (e.g.,\n/var/spool/news) or remotely (rtin or tin -r option) via an NNTP (Network News Transport Pro‐\ntocol,  RFC3977) or NNTPS (RFC8143) server. It will automatically utilize NOV newsoverview(5)\nstyle index files if available locally or via the NNTP [X]OVER command (RFC2980, RFC3977).\n\ntin has four separate levels of operation: Selection level, Group level, Thread level and Ar‐\nticle level. Use the Help ('h') command to view a list of the commands available at a partic‐\nular level.\n\nOn startup tin will show a list of the newsgroups found  in  ${TINHOMEDIR:-\"$HOME\"}/.newsrc.\nAn  arrow '->' or highlighted bar will point to the first newsgroup. Move to a group by using\nthe terminal arrow keys (terminal dependent) or Down ('j') and Up ('k'). Use PgUp/PgDn  (ter‐\nminal  dependent) or PageUp ('^U') (CTRL-U) and PageDown ('^D') (CTRL-D) to page up/down. En‐\nter a newsgroup by pressing '<CR>'.\n\nThe GroupNextUnreadArtOrGrp ('<TAB>') key enters the next newsgroup with unread articles.\n",
            "subsections": []
        },
        "EXIT STATUS": {
            "content": "0           Successful program execution. No unread news available in batch mode.\n\n1           Usage, syntax, configuration file or network error.\n\n2           Unread news available (batch mode (''-Z'') only).\n\n3           NNTP error.\n",
            "subsections": []
        },
        "OPTIONS": {
            "content": "",
            "subsections": [
                {
                    "name": "-4",
                    "content": "with IPv6 support.\n",
                    "flag": "-4"
                },
                {
                    "name": "-6",
                    "content": "with IPv6 support.\n",
                    "flag": "-6"
                },
                {
                    "name": "-a",
                    "content": "",
                    "flag": "-a"
                },
                {
                    "name": "-A",
                    "content": "",
                    "flag": "-A"
                },
                {
                    "name": "-c",
                    "content": "file specified by the ''-f'' option and mark all articles as read.\n",
                    "flag": "-c"
                },
                {
                    "name": "-C",
                    "content": "outsecs, '-t'' and the \"SECURITY\" and \"BUGS\" section.\n",
                    "flag": "-C"
                },
                {
                    "name": "-d",
                    "content": "mode).\n",
                    "flag": "-d"
                },
                {
                    "name": "-D _",
                    "content": "Enter  debug-level (1 = NNTP, 2 = filter, 4 = newsrc, 8 = threading, 16 = memory,\n32 = attributes, 64 = misc, 128 = remove existing debug files).   For  NNTP-level\n''-v''  controls the verbosity of the output.  Depending on the debug-level vari‐\nous files may be written to $TMPDIR and/or on screen output  may  be  given.  See\nalso the \"SECURITY\" section!\n",
                    "flag": "-D"
                },
                {
                    "name": "-f _",
                    "content": "DIR:-\"$HOME\"}/.newsrc.\n",
                    "flag": "-f"
                },
                {
                    "name": "-g _",
                    "content": "Use the server[:port] and newsrc specified in  ${TINHOMEDIR:-\"$HOME\"}/.tin/news‐\nrctable. Only available when reading via NNTP.\n",
                    "flag": "-g"
                },
                {
                    "name": "-G _",
                    "content": "Limit the number of articles/group to retrieve from the server.  If article-limit\nis  >  0 not more than the last article-limit articles/group are fetched from the\nserver. If article-limit is < 0 tin will start fetching articles from your  first\nunread minus absolute value of article-limit. Default is 0, which means no limit.\n",
                    "flag": "-G"
                },
                {
                    "name": "-h",
                    "content": "",
                    "flag": "-h"
                },
                {
                    "name": "-H",
                    "content": "",
                    "flag": "-H"
                },
                {
                    "name": "-I _",
                    "content": "DIR:-\"${TINHOMEDIR:-\"$HOME\"}/.tin\"}/.news.  This option has no effect if tin re‐\ntrieves its index files via NNTP and cacheoverviewfiles is turned off.\n",
                    "flag": "-I"
                },
                {
                    "name": "-k",
                    "content": "checking. This option implies ''-T''. See also the \"SECURITY\" section.\n",
                    "flag": "-k"
                },
                {
                    "name": "-l",
                    "content": "TIVEFILE:-active} file. If reading via NNTP this is done with  the  LIST  command\n(RFC3977).  This  might  result in incorrect article counts but is usually faster\nthan the default which is to read  the  ${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVE‐\nFILE:-active} file (either directly or via LIST) and then check the article count\nvia  NNTP  GROUP  command  (RFC3977) ''-ln''. If reading via NNTP and LIST COUNTS\n(RFC6048) is available that is used instead as it  gives  more  accurate  article\ncounts.\n",
                    "flag": "-l"
                },
                {
                    "name": "-m _",
                    "content": "",
                    "flag": "-m"
                },
                {
                    "name": "-M _",
                    "content": "read section \"AUTOMATIC MAILING AND SAVING NEW NEWS\".\n",
                    "flag": "-M"
                },
                {
                    "name": "-n",
                    "content": "file  that  are subscribed to in the user's ${TINHOMEDIR:-\"$HOME\"}/.newsrc. This\nallows a noticeable speedup when connecting via a slow line, but tin may  not  be\nable detect which groups are moderated. See also ''-l''.\n",
                    "flag": "-n"
                },
                {
                    "name": "-N",
                    "content": "section \"AUTOMATIC MAILING AND SAVING NEW NEWS\".\n",
                    "flag": "-N"
                },
                {
                    "name": "-o",
                    "content": "it should be used with ''-n'' if possible.\n",
                    "flag": "-o"
                },
                {
                    "name": "-p _",
                    "content": "''-T'').  This  also  overrides  the  environment variable $NNTPPORT if set. Only\navailable when reading via NNTP.\n",
                    "flag": "-p"
                },
                {
                    "name": "-q",
                    "content": "",
                    "flag": "-q"
                },
                {
                    "name": "-Q",
                    "content": "''-dnq''. See also the ''-C'' and ''-G'' command-line options.\n",
                    "flag": "-Q"
                },
                {
                    "name": "-r",
                    "content": "variable $NNTPSERVER or contained in the file /etc/news/server.\n",
                    "flag": "-r"
                },
                {
                    "name": "-R           -S",
                    "content": "",
                    "flag": "-S"
                },
                {
                    "name": "-s _",
                    "content": "",
                    "flag": "-s"
                },
                {
                    "name": "-S           -R",
                    "content": "read section \"AUTOMATIC MAILING AND SAVING NEW NEWS\".\n",
                    "flag": "-R"
                },
                {
                    "name": "-t _",
                    "content": "imum is 16383.\n",
                    "flag": "-t"
                },
                {
                    "name": "-T",
                    "content": "PORT if set. Only available when reading via NNTP.\n",
                    "flag": "-T"
                },
                {
                    "name": "-u",
                    "content": "file specified by the ''-f'' option. This option is disabled if tin retrieves its\nindex files via an NNTP server and cacheoverviewfiles is turned off.\n",
                    "flag": "-u"
                },
                {
                    "name": "-v           -c -D -M -N -S -u -Z",
                    "content": "tions. Can be used multiple times to increase verbosity.\n",
                    "flag": "-Z"
                },
                {
                    "name": "-V",
                    "content": "",
                    "flag": "-V"
                },
                {
                    "name": "-w           -d",
                    "content": "for this to be really quick, it should be used with ''-n'' if possible.\n",
                    "flag": "-d"
                },
                {
                    "name": "-x",
                    "content": "",
                    "flag": "-x"
                },
                {
                    "name": "-X",
                    "content": "DIR:-\"$HOME\"}/.tin  will  not be overwritten but may be created if they don't ex‐\nist.\n",
                    "flag": "-X"
                },
                {
                    "name": "-z",
                    "content": "tion cursor at first group with unread news. Useful for putting in login file.\n",
                    "flag": "-z"
                },
                {
                    "name": "-Z           -v",
                    "content": "option  is  specified  the number of unread articles in each group is printed. An\nexit code 0 indicates no news, 1 that an error occurred  and  2  that  new/unread\nnews exists. Useful for writing scripts.\n\ntin  can also dynamically change its options by the OptionMenu ('M') command. Any changes are\nwritten to ${TINHOMEDIR:-\"$HOME\"}/.tin/tinrc. For more information see section  \"GLOBAL  OP‐\nTIONS MENU AND TINRC CONFIGURABLE VARIABLES\" and tin(5).\n\nA list of groups can be specified after the other command-line options. This can be useful if\nyou  wish  to  yank in or subscribe to a hand-picked subset of the active newsgroups. See the\nsection \"NEWSGROUP LISTS & WILDCARDS\" for the types of pattern that tin understands.\n\nIf you specify a single group-name, or a wildcard that matches a single group, then you  will\nautomatically  enter that group. Otherwise the normal group selection screen will appear, but\nwith all the matching groups present too, as though you had yanked just those groups in.\n\nWith the ''-w'' flag a given group-name is used as default group to post to. If more than one\ngroup or a wildcard is specified only the first  group  respectively  the  first  group  that\nmatches is used.\n\nOnce  you use SelectYankActive ('y') to yank in all active groups, or SelectToggleReadDisplay\n('r') to toggle the read/unread status, then the command-line groups will be  gone.  You  can\nuse   SelectSyncWithActive  ('Y')  to  reread  the  ${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVE‐\nFILE:-active} file and get them back.\n\nNB: With the ''-n'' flag, only unsubscribed  groups  in  the  ${TINHOMEDIR:-\"$HOME\"}/.newsrc\nfile  (or  the  newsrc-file  given  by  the  ''-f''  command-line  switch  or via ${TINHOME‐\nDIR:-\"$HOME\"}/.tin/newsrctable) can be matched.\n\nCommand-line options have higher priority than attributes and tinrc options.  Thus,  command-\nline option takes precedence over configured values.\n",
                    "flag": "-v"
                }
            ]
        },
        "USAGE": {
            "content": "NEWS ADMINISTRATION\nMaintaining  Netnews  on  large  networks of machines can be a pretty time consuming job as I\ndiscovered when I was given the job of maintaining our news system and news users.\n\nA user starting tin for the first time can be automatically subscribed to  a  list  of  news‐\ngroups  that  are deemed appropriate by the news administrator. The subscriptions file should\nbe created in your news lib  directory  (i.e.,  ${TINLIBDIR:-NEWSLIBDIR}/subscriptions)  and\nshould  be  world readable. If you read news via NNTP, then your news server must support the\nLIST SUBSCRIPTIONS command. It is part of the NNTP List Extensions (RFC6048) and  all  modern\nservers should understand it.\n\nSCREEN FORMAT\ntin has four separate levels of operation: Selection level, Group level, Thread level and Ar‐\nticle level.\n\nAt  the  Selection  level  the  title displays (the name of the news server (with a \"[T]\"- or\n\"[k]\"-suffix if reading via NNTPS (insecurely)) and) the number of  subscribed  groups  (con‐\ntaining  new  unread articles). The newsgroups are displayed in the middle of the screen usu‐\nally with the number of unread articles displayed on the  same line in front, but it  can  be\ncustomized via selectformat.\n\n->M    1     2  comp.security.announce  Announcements from the CERT abou\nM    2     1  news.admin.announce     Announcements for news adminstra\n3    22  news.software.misc      News-related software other than\n4  1475  news.software.nntp      The Network News Transfer Protoc\nX    5   124  news.software.readers   Discussion of software used to r\n\nThere may also be a character prefixing the line. An explanation follows:\n\nu         This  group  is unsubscribed. To see only your subscribed groups use the SelectTog‐\ngleReadDisplay ('r') or SelectYankActive ('y') toggle keys.\n\nM         This is a moderated group. Any posts you make will have to be approved by the group\nadministrator before it will be made public. tin will ask for  confirmation  before\nyou post to a moderated group.\n\nN         This  is  a new newsgroup which has been created since you last used tin. New news‐\ngroups are not subscribed to by default (However, see the $AUTOSUBSCRIBE / $AUTOUN‐\nSUBSCRIBE environment variables).  Subscribe to it in the normal way  if  you  wish\nthe  group  to  continue  to appear in your Selection Menu. Simply ignore new news‐\ngroups and they will be gone the next time you start tin. You will have to yank  in\nall the groups to find them in a later session.\n\nD         This  group  no  longer exists. If you no longer wish to see this group then unsub‐\nscribe from it in the normal way. This flag  will  only  appear  if  you  have  set\nstripbogus to \"ask\" in the Options Menu.\n\nX         You  may  no longer make posts to this group. Often a group will be superseded by a\nmore appropriately named one.\n\n=         This group has been renamed and you may no longer post to it. If you do,  then  you\nwill  receive  an error from your news server telling you the correct group to post\nto.\n\nAt the Group level the title contains the name of  the  group,  the  number  of  conversation\nthreads, the abbreviated threading method (threadarticles), the limit of articles to get (if\nset;  getartlimit), the total number of (unread) articles (artmarkedread or artmarkedun‐\nread), the number of hot articles artmarkedselected, the number of read  hot  articles  (if\nany;  artmarkedreadselected),  the  number  of recent articles (artmarkedrecent) and the\nnumber of killed articles (artmarkedkilled). I.e.:\n\nalt.sources (5B -50/23+ 0* 3o 0K)\n\nThe characters after the numbers are depending to  the  configuration  and  if  your  are  in\nshowonlyunreadarts  mode  or  not. Some numbers could be missing if the specific option is\nnot enabled. It might also contain an 'M', 'X' or '='  (see  above;  doesn't  work  with  the\n''-n''  command-line  switch!) if the group is moderated, set to no posting or postings to it\nget redirected.\n\nIf a thread has unread articles it is marked with artmarkedunread in  front  of  the  total\nnumber  of articles in the thread. If there are recent articles within the thread it might be\nmarked with artmarkedrecent in front of the total number of articles in the thread  —  this\nis controlled by the recenttime option. If a thread has hot articles in it (see also section\n\"FILTERING  ARTICLES\")  it's  marked with artmarkedselected in front of the total number of\narticles in the thread. The display can be customized via groupformat.\n\nde.admin.net-abuse.announce (11B 13+ 1* 1o 0K) M\n\n->   1   +   3  108 bincancels in de.talk.sex        Christopher Lueg <l\n2   +       69 EMP/ECP gecancelt. xynx. BI= 10  Henning Weede <hwee\n3   o       93 EMP gecancelt. SouthBeach/Palms  Henning Weede <hwee\n4   *      368 <1997-11-12> Fremdcancel-FAQ     Thomas Roessler <ro\n\nAt the Thread level the screen usually (depends on the  threading  method  used)  looks  like\nthis, but can be customized via threadformat:\n\n->   1      [   7]  What is this funny tree in the thr  Robert F. Simmig\n2      [  12]  +->                                 Sephan Wagner <s\n3      [ 230]  | `->Tin thread-level (was: What is Bob Johnson <bob\n4      [  22]  `->tin threading menu               Brian Richardson\n\n\nAt the Article level the page header has the following format:\n\nSun, 28 Dec 1997 21:21:01   de.admin.news.groups      Thread   20 of 86\nLines 50   Re: EINSPRUCH zu RESULT:de.comm.mobil.ALL   Article  47 of 59\nUrs Janssen <urs@akk.org>        at Arbeitskreis Kultur und Kommunikati\n\narticle-body\n\nThe  look  of  the Selection, Group and Thread level can be customized. See the section \"CUS‐\nTOMIZING THE SCREEN FORMAT\".\n\nCOMMON MOVING KEYS\nThis table shows the common keys used for moving around all levels within tin.\nANSI/vt100   Other Terminals\nBeg. of list/article  Home         FirstPage (^)\nEnd of list/article   End          LastPage ($)\nPage Up               PgUp         PageUp (u, ^U or ^B)\nPage Down             PgDn         PageDown (^D or ^F or <SPACE>)\nLine Up               Up arrow     Up (k or ^P)\nLine Down             Down arrow   Down (j or ^N)\n\nCOMMON EDITING COMMANDS\nAn emacs(1) style editing package allows the easy editing of input strings.  A  history  list\nallows  the  easy  reuse  of previously entered strings.  In addition to the cursor keys, the\nfollowing commands are available when editing a string:\n\n^A, ^E    move to beginning or end of line, respectively.\n\n^F, ^B    non-destructive move forward or back one location, respectively.\n\n^D        delete the character currently under the cursor, or send EOF if  no  characters  in\nthe buffer.\n\n^H, <DEL> delete character left of the cursor.\n\n^K        delete from cursor to end of line.\n\n^P, ^N    move through history, previous and next, respectively.\n\n^L, ^R    redraw the current line.\n\n<CR>      places  line  on  history  list  if  non-blank,  appends newline and returns to the\ncaller.\n\n<ESC>     aborts the present editing operation.\n\nGLOBAL COMMANDS\nThe following commands are available at all 4 menu levels and always have the same effect.\n",
            "subsections": [
                {
                    "name": "ShellEscape '!'",
                    "content": "Shell escape. ShellEscape by itself will launch a shell, ShellEscape <command> will\nrun an external <command>. This facility may have been disabled by the  System  Ad‐\nministrator.\n"
                },
                {
                    "name": "ToggleColor '&'",
                    "content": "Toggle use of ANSI color.\n"
                },
                {
                    "name": "RedrawScr '^L'",
                    "content": "Redraw the current screen.\n"
                },
                {
                    "name": "ScrollUp '<'",
                    "content": "Scroll screen up by one line.\n"
                },
                {
                    "name": "ScrollDown '>'",
                    "content": "Scroll screen down by one line.\n"
                },
                {
                    "name": "Postponed 'O' '^O'",
                    "content": "Reload postponed article. If your system blocks the Postponed key you must quote it\nby  pressing  '^V'  (CTRL-V) first. The postpone-menu offers the following actions:\nPromptYes ('y') = reload and spawn editor; PostponeOverride ('Y')  =  post  article\n(without spawning editor); PostponeAll ('A') = post all postponed articles (without\nspawning  editor);  PromptNo ('n') = skip this article; Quit ('q') = quit postponed\nmenu. Currently there is no 'simple' way to delete a  postponed  article  from  the\npostponed-file,  you  have to use the following command sequence instead: reload it\nwith Postponed, enter editor with PromptYes, quit editor, discard posting with Quit\n('^O''y''q'). See also ''-o'' command-line switch.\n\nHelp 'h'  Help screen of commands available on the current  menu.  You  can  use  SearchSubjF\n('/'),  SearchSubjB  ('?')  and  SearchRepeat  ('\\') to search on this screen. Quit\n('q') returns to the menu.\n"
                },
                {
                    "name": "ToggleHelpDisplay 'H'",
                    "content": "Toggle the display of help mini menu at the bottom of the screen and  posting  eti‐\nquette after composing an article (beginnerlevel).\n"
                },
                {
                    "name": "DisplayPostHist 'W'",
                    "content": "List  articles  posted  by user. The date posted, the newsgroup and the subject are\nlisted. See the section \"POSTING HISTORY LISTING\" for more information.\n"
                },
                {
                    "name": "Version 'v'",
                    "content": "Print tin version information.\n\nNEWSGROUP SELECTION COMMANDS\n4         Select group 4.\n"
                },
                {
                    "name": "SelectResetNewsrc '^R'",
                    "content": "Reset ${TINHOMEDIR:-\"$HOME\"}/.newsrc file. This will destroy all records of  which\narticles have been read, so use this carefully.\n"
                },
                {
                    "name": "SetRange '#'",
                    "content": "Choose  a  range  of  articles  to be affected by the next command. See the section\n\"RANGES\" for more information.\n"
                },
                {
                    "name": "SelectSortActive '.'",
                    "content": "Sort the list of newsgroups.\n"
                },
                {
                    "name": "SearchRepeat '\\'",
                    "content": "Repeat the previous search.\n"
                },
                {
                    "name": "SearchSubjF '/'",
                    "content": "Search for a group by name and description (if displayed).\n"
                },
                {
                    "name": "SearchSubjB '?'",
                    "content": "Backward search through the group names and descriptions.\n"
                },
                {
                    "name": "SelectReadGrp '^J' '<CR>'",
                    "content": "Read current group.\n"
                },
                {
                    "name": "SelectEnterNextUnreadGrp '<TAB>' 'n'",
                    "content": "Enter next group with unread news. Will wrap around to the beginning of  the  group\nselection list looking for unread groups.\n"
                },
                {
                    "name": "Catchup 'c'",
                    "content": "Make  current  group as all read [after confirmation] and move to the next group in\nthe group selection list.\n"
                },
                {
                    "name": "CatchupNextUnread 'C'",
                    "content": "Mark current group as all read [after confirmation] and enter the next unread group\nin the group selection list.\n"
                },
                {
                    "name": "SelectToggleDescriptions 'd'",
                    "content": "Toggle display to show just the group name or the group name and the group descrip‐\ntions.\n"
                },
                {
                    "name": "EditFilter 'E'",
                    "content": "Edit the filter file and reload it afterwards.\n"
                },
                {
                    "name": "SelectGoto 'g'",
                    "content": "Choose a new group by name. This command can be used  to  access  any  group,  even\nthose not currently yanked in.\n"
                },
                {
                    "name": "ToggleInfoLastLine 'i'",
                    "content": "Toggle  the  display  of the description of the current newsgroup in the last line.\nThis will not be available if tin was started with the ''-d'' option.\n"
                },
                {
                    "name": "ToggleInverseVideo 'I'",
                    "content": "Toggle inverse video.\n"
                },
                {
                    "name": "ConnectionInfo 'J'",
                    "content": "Show details about current connection.\n"
                },
                {
                    "name": "LookupMessage 'L'",
                    "content": "Look up article by ''Message-ID:''. If none of the groups  listed  in  the  ''News‐\ngroups:''-header  of  the referenced article is available, just the contents of the\n''Newsgroups:''-header will be displayed in the last line.  At this level this com‐\nmand only works if reading via NNTP and the server supports [X]HDR  (RFC2980,  RFC‐\n3977) or XPAT (RFC2980).\n"
                },
                {
                    "name": "SelectMoveGrp 'm'",
                    "content": "Move  the  current group within the group selection list. By entering '1' the group\nwill become the first displayed group in the list, by entering '8' the eighth group\nin the list etc. By entering '$' the group will be the last group displayed.\n"
                },
                {
                    "name": "OptionMenu 'M'",
                    "content": "User configurable options menu (for more information see  section  \"GLOBAL  OPTIONS\nMENU AND TINRC CONFIGURABLE VARIABLES\").\n"
                },
                {
                    "name": "SelectNextUnreadGrp 'N'",
                    "content": "Positions the cursor on the next group with unread articles in it.\n\nQuit 'q'  Quit tin — ask the user to confirm if confirmchoice is set accordingly.\n"
                },
                {
                    "name": "QuitTin 'Q'",
                    "content": "Quit tin — don't ask the user to confirm.\n"
                },
                {
                    "name": "SelectToggleReadDisplay 'r'",
                    "content": "Toggle  display of all subscribed to groups and just those groups containing unread\narticles. Command has no effect if groups were specified on the  command-line  when\ntin was started.\n"
                },
                {
                    "name": "BugReport 'R'",
                    "content": "Mail a bug report or comment to <tin-bugs@tin.org>. This is the best way of getting\nbugs fixed and features added/changed.\n"
                },
                {
                    "name": "SelectSubscribe 's'",
                    "content": "Subscribe to current group.\n"
                },
                {
                    "name": "SelectSubscribePat 'S'",
                    "content": "Subscribe  to  groups  matching  user specified pattern. See the section \"NEWSGROUP\nLISTS & WILDCARDS\" for the types of pattern that tin understands.\n"
                },
                {
                    "name": "SelectUnsubscribe 'u'",
                    "content": "Unsubscribe to current group. This  can  be  used  to  remove  bogus  groups.   See\nstripbogus in the \"GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES\" section.\n"
                },
                {
                    "name": "SelectUnsubscribePat 'U'",
                    "content": "Unsubscribe  to  groups matching user specified pattern. See the section \"NEWSGROUP\nLISTS & WILDCARDS\" for the types of pattern that tin understands.\n\nPost 'w'  Post an article to current group. If posting fails for some reason, you'll get  the\nchance  to  PostEdit  ('e') the article again, PostPostpone ('o') it for later pro‐\ncessing (see also ''-o'' command-line switch) or discard it via Quit ('q').\n"
                },
                {
                    "name": "SelectQuitNoWrite 'X'",
                    "content": "Quit tin without saving any changes to the configuration.\n"
                },
                {
                    "name": "SelectYankActive 'y'",
                    "content": "Yanks in all groups. Toggles the displayed groups between all  the  groups  in  the\n${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVEFILE:-active}  file and just those that are\nsubscribed to in ${TINHOMEDIR:-\"$HOME\"}/.newsrc.\n"
                },
                {
                    "name": "SelectSyncWithActive 'Y'",
                    "content": "Reread the ${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVEFILE:-active} file to see if any\nnew news has arrived since starting tin.\n"
                },
                {
                    "name": "SelectMarkGrpUnread 'z' 'Z'",
                    "content": "Mark all articles in the current group as unread.\n\nGROUP INDEX COMMANDS\nAll searches in this level are limited to unread articles if in  showonlyunreadarts  mode.\nGroupToggleReadUnread ('r') can be use toggle the setting right before/after the search.\n\n4         Select article 4.\n"
                },
                {
                    "name": "MenuFilterSelect '^A'",
                    "content": "Auto select article(s) using a menu. Read the section \"FILTERING ARTICLES\" for more\ninformation.\n"
                },
                {
                    "name": "MenuFilterKill '^K'",
                    "content": "Kill article(s) using a menu. Read the section \"FILTERING ARTICLES\" for more infor‐\nmation.\n"
                },
                {
                    "name": "MarkFeedRead '^X'",
                    "content": "Mark  current article, thread, range, auto-selected (hot) articles, articles match‐\ning pattern or tagged articles as read. A prompt asks which type should be marked.\n"
                },
                {
                    "name": "MarkFeedUnread '^W'",
                    "content": "Mark current article, thread, range, auto-selected (hot) articles, articles  match‐\ning  pattern  or  tagged  articles  as  unread.  A prompt asks which type should be\nmarked.\n"
                },
                {
                    "name": "SetRange '#'",
                    "content": "Choose a range of articles to be affected by the  next  command.  See  the  section\n\"RANGES\" for more information.\n"
                },
                {
                    "name": "LastViewed '-'",
                    "content": "Re-enter the last message that was viewed.\n"
                },
                {
                    "name": "SearchRepeat '\\'",
                    "content": "Repeat the previous search.\n"
                },
                {
                    "name": "SearchSubjF '/'",
                    "content": "Search forward for specified subject.\n"
                },
                {
                    "name": "SearchSubjB '?'",
                    "content": "Search backwards for specified subject.\n\nGroupSelThd '*'\nSelect current thread for later processing.\n"
                },
                {
                    "name": "GroupDoAutoSel '+'",
                    "content": "Selects  all threads in current group. It is a shortcut for calling GroupSelPattern\nwith a pattern of ''*''.\n"
                },
                {
                    "name": "GroupToggleThdSel '.'",
                    "content": "Toggle selection of current thread. If at least one unread article, (but not  every\nunread  article) in the current thread is selected, then all unread articles become\nselected.\n"
                },
                {
                    "name": "GroupSelThdIfUnreadSelected ';'",
                    "content": "For each thread in current group, if it at least one unread  article  is  selected,\nall  unread  articles  become selected. This is useful for auto-selection on author\nwhere reader wants to see entire thread.\n"
                },
                {
                    "name": "GroupSelPattern '='",
                    "content": "Prompts for a pattern with which to match on. All threads whose subjects match  the\npattern will be marked selected. A pattern of ''*'' will match all subjects. Enter‐\ning just '<CR>' will re-use the last pattern that was entered.\n"
                },
                {
                    "name": "GroupReverseSel '@'",
                    "content": "Reverse all selections on all articles.\n"
                },
                {
                    "name": "GroupUndoSel '~'",
                    "content": "Undo  all selections on all articles. It clears the toggle effect of GroupMarkUnse‐\nlArtRead ('X') command. Thus after first doing  a  GroupMarkUnselArtRead,  one  can\nthen  do GroupUndoSel to reset articles. Thus, one can iteratively whittle down un‐\ninteresting threads.\n\nPipe '|'  Pipe current article / thread / auto-selected (hot) articles  /  articles  matching\npattern  /  tagged  articles into command. See the section \"MAILING PIPING PRINTING\nREPOSTING AND SAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "QuickFilterSelect '['",
                    "content": "Auto select article(s) with a single key [after confirmation].  The  defaults  used\nfor  selection  are  based  upon  the  following  four  tinrc config variables: de‐\nfaultfilterselectcase,     defaultfilterselectexpire,      defaultfilterse‐\nlectglobal  and  defaultfilterselectheader.   Read  the section \"GLOBAL OPTIONS\nMENU AND TINRC CONFIGURABLE VARIABLES\" for a full explanation  of  these  variables\nand \"FILTERING ARTICLES\" for more information on filtering.\n"
                },
                {
                    "name": "QuickFilterKill ']'",
                    "content": "Kill  article(s)  with  a  single  key  [after confirmation]. The defaults used for\nkilling are based upon the following  four  tinrc  config  variables:  defaultfil‐\nterkillcase,   defaultfilterkillexpire,   defaultfilterkillglobal  and  de‐\nfaultfilterkillheader.  Read the section \"GLOBAL OPTIONS MENU AND TINRC  CONFIG‐\nURABLE  VARIABLES\"  for  a full explanation of these variables and \"FILTERING ARTI‐\nCLES\" for more information on filtering.\n"
                },
                {
                    "name": "GroupReadBasenote '^J' '<CR>'",
                    "content": "Read current article.\n"
                },
                {
                    "name": "GroupNextUnreadArtOrGrp '<TAB>'",
                    "content": "View next unread article or group.\n"
                },
                {
                    "name": "SearchAuthF 'a'",
                    "content": "Author forward search. This searches for articles with a specific ''From:'' line.\n"
                },
                {
                    "name": "SearchAuthB 'A'",
                    "content": "Author backward search. Otherwise, see SearchAuthF ('a') above.\n"
                },
                {
                    "name": "SearchBody 'B'",
                    "content": "Search the body of all articles in group (can be slow). You can  abort  the  search\nusing Quit ('q').\n"
                },
                {
                    "name": "Catchup 'c'",
                    "content": "Mark  all  articles as read [after confirmation] then return to the group selection\nlist. Move cursor to next group.\n"
                },
                {
                    "name": "CatchupNextUnread 'C'",
                    "content": "Mark all articles as read [after confirmation] and enter the next group with unread\nnews.\n"
                },
                {
                    "name": "GroupToggleSubjDisplay 'd'",
                    "content": "Cycle the display of the author through all the  possible  options  for  the  tinrc\nvariable showauthor.\n"
                },
                {
                    "name": "GroupCancel 'D'",
                    "content": "Cancel  (delete)  or  supersede  (overwrite) the current article. It must have been\nposted by the same user. The cancel message can be seen in the newsgroup  'control'\nor 'control.cancel'.\n"
                },
                {
                    "name": "EditFilter 'E'",
                    "content": "Edit the filter file and reload it afterwards.\n"
                },
                {
                    "name": "GroupGoto 'g'",
                    "content": "Choose  a  new  group  by  name. This command can be used to access any group, even\nthose not currently yanked in.\n"
                },
                {
                    "name": "GroupToggleGetartLimit 'G'",
                    "content": "Toggle article/group limit.\n"
                },
                {
                    "name": "ToggleInfoLastLine 'i'",
                    "content": "Display the subject of the first article in the current thread in the last line.\n"
                },
                {
                    "name": "ToggleInverseVideo 'I'",
                    "content": "Toggle inverse video.\n"
                },
                {
                    "name": "ConnectionInfo 'J'",
                    "content": "Show details about current connection.\n"
                },
                {
                    "name": "GroupMarkThdRead 'K'",
                    "content": "Mark article/thread as read and move onto the  next  unread  article/thread.  If  a\nrange  of  articles/threads is set, the range will be marked as read instead of the\ncurrent article/thread. When tagged articles/threads are present, a prompt asks how\nto proceed.\n"
                },
                {
                    "name": "GroupListThd 'l'",
                    "content": "Open the thread under the current cursor position.\n"
                },
                {
                    "name": "LookupMessage 'L'",
                    "content": "Look up article by ''Message-ID:''.\n"
                },
                {
                    "name": "GroupMail 'm'",
                    "content": "Mail current article / thread / auto-selected (hot) articles  /  articles  matching\npattern  / tagged articles to someone. See the section \"MAILING PIPING PRINTING RE‐\nPOSTING AND SAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "OptionMenu 'M'",
                    "content": "User configurable options menu (for more information see  section  \"GLOBAL  OPTIONS\nMENU AND TINRC CONFIGURABLE VARIABLES\").\n"
                },
                {
                    "name": "GroupNextGroup 'n'",
                    "content": "Go to next group.\n"
                },
                {
                    "name": "GroupNextUnreadArt 'N'",
                    "content": "Go to the next unread article.\n\nPrint 'o' Send  current  article  / thread / auto-selected (hot) articles / articles matching\npattern / tagged articles to printer. See the section \"MAILING PIPING PRINTING  RE‐\nPOSTING AND SAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "GroupPrevGroup 'p'",
                    "content": "Go to previous group.\n"
                },
                {
                    "name": "GroupPrevUnreadArt 'P'",
                    "content": "Go to previous unread article.\n\nQuit 'q'  Return to previous level.\n"
                },
                {
                    "name": "QuitTin 'Q'",
                    "content": "Quit tin — don't ask the user to confirm.\n"
                },
                {
                    "name": "GroupToggleReadUnread 'r'",
                    "content": "Toggle the display between all articles and unread articles.\n"
                },
                {
                    "name": "BugReport 'R'",
                    "content": "Mail a bug report or comment to <tin-bugs@tin.org>. This is the best way of getting\nbugs fixed and features added/changed.\n"
                },
                {
                    "name": "GroupSave 's'",
                    "content": "Save  current  article  / thread / auto-selected (hot) articles / articles matching\npattern / tagged articles. See the section \"MAILING PIPING PRINTING  REPOSTING  AND\nSAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "GroupAutoSave 'S'",
                    "content": "Save marked articles automatically without further prompting.\n"
                },
                {
                    "name": "GroupTag 't'",
                    "content": "Toggle  tag-status  of  current article / thread for GroupMail ('m') / Pipe ('|') /\nPrint ('o') / GroupSave ('s') / GroupRepost ('x').\n"
                },
                {
                    "name": "GroupTagParts 'T'",
                    "content": "Automatically tag/untag all the parts of the current multi-part message in order.\n"
                },
                {
                    "name": "GroupToggleThreading 'u'",
                    "content": "Cycle the threading mode through no threading, threading by subject,  threading  by\nreferences, threading on both subject and references, group multipart articles into\na thread (''Subject:'' based).\n"
                },
                {
                    "name": "GroupUntag 'U'",
                    "content": "Untag all articles that were tagged.\n\nPost 'w'  Post  an article to the current group. If posting fails for some reason, you'll get\nthe chance to edit the article again via PostEdit ('e'), postpone it for later pro‐\ncessing via PostPostpone ('o') (see also ''-o'' command-line switch) or discard  it\nvia Quit ('q').\n"
                },
                {
                    "name": "GroupRepost 'x'",
                    "content": "Repost an already posted article / thread / auto-selected (hot) articles / articles\nmatching  pattern  /  tagged articles to another newsgroup(s). Useful for reposting\nfrom global to local newsgroups. Do not use this to crosspost your own articles.\n"
                },
                {
                    "name": "GroupMarkUnselArtRead 'X'",
                    "content": "Mark all unread articles that have not been selected as read, redraw screen to  re‐\nflect  changes and put index at the first thread to begin reading.  Pressing Group‐\nMarkUnselArtRead ('X') again will toggle  back  to  the  way  it  was  before.  See\nGroupUndoSel  ('~')  command for clearing the toggle effect, leaving the group will\nalso clear the toggle effect and make the changes permanent.\n"
                },
                {
                    "name": "MarkArtUnread 'z'",
                    "content": "Mark current article as unread.\n"
                },
                {
                    "name": "MarkThdUnread 'Z'",
                    "content": "Mark current thread as unread. If a range of threads is  set,  the  range  will  be\nmarked  as unread instead of the current thread. When tagged threads are present, a\nprompt asks how to proceed.\n\nTHREAD LISTING COMMANDS\n4         Select article 4 within thread.\n"
                },
                {
                    "name": "MenuFilterSelect '^A'",
                    "content": "Auto select article(s) using a menu. Read the section \"FILTERING ARTICLES\" for more\ninformation.\n"
                },
                {
                    "name": "MenuFilterKill '^K'",
                    "content": "Kill article(s) using a menu. Read the section \"FILTERING ARTICLES\" for more infor‐\nmation.\n"
                },
                {
                    "name": "MarkFeedRead '^X'",
                    "content": "Mark current article, thread, range, auto-selected (hot) articles, articles  match‐\ning pattern or tagged articles as read. A prompt asks which type should be marked.\n"
                },
                {
                    "name": "MarkFeedUnread '^W'",
                    "content": "Mark  current article, thread, range, auto-selected (hot) articles, articles match‐\ning pattern or tagged articles as unread.  A  prompt  asks  which  type  should  be\nmarked.\n"
                },
                {
                    "name": "SetRange '#'",
                    "content": "Choose  a  range  of  articles  to be affected by the next command. See the section\n\"RANGES\" for more information.\n"
                },
                {
                    "name": "LastViewed '-'",
                    "content": "Re-enter the last message that was viewed.\n"
                },
                {
                    "name": "SearchRepeat '\\'",
                    "content": "Repeat the previous search.\n"
                },
                {
                    "name": "SearchSubjF '/'",
                    "content": "Search forward for specified subject.\n"
                },
                {
                    "name": "SearchSubjB '?'",
                    "content": "Search backwards for specified subject.\n\nThreadSelArt '*'\nSelect current thread for later processing.\n"
                },
                {
                    "name": "ThreadToggleArtSel '.'",
                    "content": "Toggle selection of current article.\n"
                },
                {
                    "name": "ThreadReverseSel '@'",
                    "content": "Reverse article selections.\n"
                },
                {
                    "name": "ThreadUndoSel '~'",
                    "content": "Undo all selections on current thread.\n\nPipe '|'  Pipe current article / thread / auto-selected (hot) articles  /  articles  matching\npattern  /  tagged  articles into command. See the section \"MAILING PIPING PRINTING\nREPOSTING AND SAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "ThreadReadArt '^J' '<CR>'",
                    "content": "Read current article within thread.\n"
                },
                {
                    "name": "ThreadReadNextArtOrThread '<TAB>'",
                    "content": "View next unread article within thread.\n"
                },
                {
                    "name": "SearchAuthF 'a'",
                    "content": "Author forward search. This searches for articles with a specific  ''From:''  line.\nThe  search  will wrap over into the next thread if nothing is found in the current\none.\n"
                },
                {
                    "name": "SearchAuthB 'A'",
                    "content": "Author backward search. Otherwise, see SearchAuthF ('a') above.\n"
                },
                {
                    "name": "SearchBody 'B'",
                    "content": "Search the body of all articles in group (can be slow). You can  abort  the  search\nusing Quit ('q').\n"
                },
                {
                    "name": "Catchup 'c'",
                    "content": "Mark  thread as read [after confirmation] and return to the group index page.  Move\ncursor to next thread.\n"
                },
                {
                    "name": "CatchupNextUnread 'C'",
                    "content": "Mark thread as read [after confirmation] and enter the next thread  containing  un‐\nread news.\n"
                },
                {
                    "name": "ThreadToggleSubjDisplay 'd'",
                    "content": "Cycle  the  display  of  the  author through all the possible options for the tinrc\nvariable showauthor.\n"
                },
                {
                    "name": "ThreadCancel 'D'",
                    "content": "Cancel (delete) or supersede (overwrite) the current article.  It  must  have  been\nposted  by the same user. The cancel message can be seen in the newsgroup 'control'\nor 'control.cancel'.\n"
                },
                {
                    "name": "EditFilter 'E'",
                    "content": "Edit the filter file and reload it afterwards.\n"
                },
                {
                    "name": "ThreadFollowupQuote 'f'",
                    "content": "Post a followup to the current article with a copy of the article included.\n"
                },
                {
                    "name": "ThreadFollowup 'F'",
                    "content": "Post a followup to the current article without a copy of the article included.\n"
                },
                {
                    "name": "ToggleInfoLastLine 'i'",
                    "content": "Display the subject of the current article in the last line.\n"
                },
                {
                    "name": "ToggleInverseVideo 'I'",
                    "content": "Toggle inverse video.\n"
                },
                {
                    "name": "ConnectionInfo 'J'",
                    "content": "Show details about current connection.\n"
                },
                {
                    "name": "ThreadMarkArtRead 'K'",
                    "content": "Mark article as read and move onto the next unread article. If a range of  articles\nis  set,  the  range  will  be  marked as read instead of the current article. When\ntagged articles are present, a prompt asks how to proceed.\n"
                },
                {
                    "name": "LookupMessage 'L'",
                    "content": "Look up article by ''Message-ID:''.\n"
                },
                {
                    "name": "ThreadMail 'm'",
                    "content": "Mail current article / thread / auto-selected (hot) articles  /  articles  matching\npattern  / tagged articles to someone. See the section \"MAILING PIPING PRINTING RE‐\nPOSTING AND SAVING ARTICLES\" for more information.\n\nPrint 'o' Send current article / thread / auto-selected (hot) articles  /  articles  matching\npattern  / tagged articles to printer. See the section \"MAILING PIPING PRINTING RE‐\nPOSTING AND SAVING ARTICLES\" for more information.\n\nQuit 'q'  Return to previous level.\n"
                },
                {
                    "name": "QuitTin 'Q'",
                    "content": "Quit tin — don't ask the user to confirm.\n"
                },
                {
                    "name": "BugReport 'R'",
                    "content": "Mail a bug report or comment to <tin-bugs@tin.org>. This is the best way of getting\nbugs fixed and features added/changed.\n"
                },
                {
                    "name": "ThreadSave 's'",
                    "content": "Save current article / thread / auto-selected (hot) articles  /  articles  matching\npattern  /  tagged articles. See the section \"MAILING PIPING PRINTING REPOSTING AND\nSAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "ThreadAutoSave 'S'",
                    "content": "Save marked articles automatically without further prompting.\n"
                },
                {
                    "name": "ThreadTag 't'",
                    "content": "Toggle tag status of current article for mailing, piping, printing, saving  or  re‐\nposting.\n"
                },
                {
                    "name": "ThreadTagParts 'T'",
                    "content": "Automatically tag/untag all the parts of the current multi-part message in order.\n"
                },
                {
                    "name": "ThreadUntag 'U'",
                    "content": "Untag all tagged threads.\n\nPost 'w'  Post  an article to the current group. If posting fails for some reason, you'll get\nthe chance to edit the article again via PostEdit ('e'), postpone it for later pro‐\ncessing via PostPostpone ('o') (see also ''-o'' command-line switch) or discard  it\nvia Quit ('q').\n"
                },
                {
                    "name": "MarkArtUnread 'z'",
                    "content": "Mark  current article in thread as unread. If a range of articles is set, the range\nwill be marked as unread instead of the current article. When tagged  articles  are\npresent, a prompt asks how to proceed.\n"
                },
                {
                    "name": "MarkThdUnread 'Z'",
                    "content": "Mark all articles in thread as unread.\n\nARTICLE VIEWER COMMANDS\n0         Read the first (base) article in this thread.\n\n4         Read response 4 in this thread.\n"
                },
                {
                    "name": "MenuFilterSelect '^A'",
                    "content": "Auto select article(s) using a menu. Read the section \"FILTERING ARTICLES\" for more\ninformation.\n"
                },
                {
                    "name": "PageReplyQuoteHeaders '^E'",
                    "content": "Reply  through mail to the author of the current article with a copy of the article\nwith all headers included.\n"
                },
                {
                    "name": "PagePGPCheckArticle '^G'",
                    "content": "Perform pgp(1) / gpg(1) operations on article. This expects  inline  pgp  (RFC4880)\nand not MIME pgp (RFC3156).\n"
                },
                {
                    "name": "PageToggleRaw '^H'",
                    "content": "Toggles the display mode (raw including all headers vs. cooked).\n"
                },
                {
                    "name": "MenuFilterKill '^K'",
                    "content": "Kill article(s) using a menu. Read the section \"FILTERING ARTICLES\" for more infor‐\nmation.\n"
                },
                {
                    "name": "PageToggleTabs '^T'",
                    "content": "Toggle the TAB width between 4 and 8 characters.\n"
                },
                {
                    "name": "PageFollowupQuoteHeaders '^W'",
                    "content": "Post  a followup to the current article with a copy of the article with all headers\nincluded.\n"
                },
                {
                    "name": "PageToggleTex2iso '\"'",
                    "content": "Toggle TeX to ISO decoding for current article. The default behavior is taken  from\nthe tex2isoconv variable in the tinrc file.\n\nPageToggleAllHeaders '*'\nToggles the display of all headers vs. headers in newsheaderstodisplay.\n"
                },
                {
                    "name": "PageToggleRot '%'",
                    "content": "Toggle ROT-13 decoding for this article.\n"
                },
                {
                    "name": "PageToggleUue '('",
                    "content": "Toggle  the  display  of uuencoded sections. The default behavior is taken from the\nhideuue variable in the tinrc file.\n"
                },
                {
                    "name": "PageReveal ')'",
                    "content": "The form feed character (^L) is often used to hide 'spoilers' that the  reader  may\nnot initially wish to see when viewing an article. Any text after a formfeed is not\ndisplayed. This key-press acts like a reveal key and turns the hidden text back on.\nScrolling down will also reveal the text, scrolling up will hide it again.\n"
                },
                {
                    "name": "LastViewed '-'",
                    "content": "Re-enter the last message that was viewed.\n"
                },
                {
                    "name": "SearchRepeat '\\'",
                    "content": "Repeat the previous search.\n"
                },
                {
                    "name": "SearchSubjF '/'",
                    "content": "Forward search the text of this article.\n"
                },
                {
                    "name": "SearchSubjB '?'",
                    "content": "Backward search the text of this article.\n"
                },
                {
                    "name": "PageSkipIncludedText ':'",
                    "content": "Skip  to  the  end  of  the  next quoted text-block in this article. Quoted text is\neverything which matches quoteregex, quoteregex2 or quoteregex3.\n"
                },
                {
                    "name": "PageTopThd '<'",
                    "content": "Go to the first article in the current thread.\n"
                },
                {
                    "name": "PageBotThd '>'",
                    "content": "Go to the last article in the current thread.\n"
                },
                {
                    "name": "PageToggleHighlight '_'",
                    "content": "Toggle word highlighting on/off.\n\nPipe '|'  Pipe current article / thread / auto-selected (hot) articles  /  articles  matching\npattern  /  tagged  articles into command. See the section \"MAILING PIPING PRINTING\nREPOSTING AND SAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "QuickFilterSelect '['",
                    "content": "Auto select article(s) with a single key. The defaults used for selection  are  set\nbased  upon  the following four tinrc config variables: defaultfilterselectcase,\ndefaultfilterselectexpire, defaultfilterselectglobal  and  defaultfilterse‐\nlectheader Read the section \"GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES\"\nfor  a full explanation of these variables and \"FILTERING ARTICLES\" for more infor‐\nmation on filtering.\n"
                },
                {
                    "name": "QuickFilterKill ']'",
                    "content": "Kill article(s) with a single key. The defaults used for killing are based upon the\nfollowing  four  tinrc  config  variables:  defaultfilterkillcase,  defaultfil‐\nterkillexpire,  defaultfilterkillglobal  and defaultfilterkillheader.  Read\nthe section \"GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES\" for a  full  ex‐\nplanation  of these variables and \"FILTERING ARTICLES\" for more information on fil‐\ntering.\n"
                },
                {
                    "name": "PageNextThd '^J' '<CR>'",
                    "content": "Go to next base article.\n"
                },
                {
                    "name": "PageNextUnread '<TAB>'",
                    "content": "Go to next unread article. If the tinrc variable gotonextunread  doesn't  contain\nPageNextUnread, then this key will first page through the current article.\n"
                },
                {
                    "name": "SearchAuthF 'a'",
                    "content": "Author forward search.\n"
                },
                {
                    "name": "SearchAuthB 'A'",
                    "content": "Author backward search.\n"
                },
                {
                    "name": "SearchBody 'B'",
                    "content": "Search  the  body  of all articles in group (can be slow). You can abort the search\nusing Quit ('q').\n"
                },
                {
                    "name": "Catchup 'c'",
                    "content": "Mark the current thread as read [after confirmation] and  return  to  the  previous\nmenu. Move cursor to next item.\n"
                },
                {
                    "name": "CatchupNextUnread 'C'",
                    "content": "Mark the rest of the current thread as read [after confirmation] and enter the next\nthread with unread articles.\n"
                },
                {
                    "name": "PageCancel 'D'",
                    "content": "Cancel  (delete)  or  supersede  (overwrite) the current article. It must have been\nposted by the same user. The cancel message can be seen in the newsgroup  'control'\nor 'control.cancel'.\n"
                },
                {
                    "name": "PageEditArticle 'e'",
                    "content": "Edit the current article. This is restricted to mailgroups and saved news.\n"
                },
                {
                    "name": "EditFilter 'E'",
                    "content": "Edit the filter file and reload it afterwards.\n"
                },
                {
                    "name": "PageFollowupQuote 'f'",
                    "content": "Post a followup to the current article with a copy of the article included.\n"
                },
                {
                    "name": "PageFollowup 'F'",
                    "content": "Post a followup to the current article without including a copy of the article.\n"
                },
                {
                    "name": "PageFirstPage 'g'",
                    "content": "Go to the start of the article.\n"
                },
                {
                    "name": "PageLastPage 'G'",
                    "content": "Go to the end of the article.\n"
                },
                {
                    "name": "ToggleInfoLastLine 'i'",
                    "content": "Display the subject of the current article in the last line.\n"
                },
                {
                    "name": "ToggleInverseVideo 'I'",
                    "content": "Toggle inverse video.\n"
                },
                {
                    "name": "ConnectionInfo 'J'",
                    "content": "Show details about current connection.\n"
                },
                {
                    "name": "PageKillThd 'K'",
                    "content": "Mark rest of thread as read and move onto the next unread thread.\n"
                },
                {
                    "name": "PageListThd 'l'",
                    "content": "Show the thread menu that the current article is a part of.\n"
                },
                {
                    "name": "LookupMessage 'L'",
                    "content": "Look up article by ''Message-ID:''.\n"
                },
                {
                    "name": "PageMail 'm'",
                    "content": "Mail  current  article  / thread / auto-selected (hot) articles / articles matching\npattern / tagged articles to someone. See the section \"MAILING PIPING PRINTING  RE‐\nPOSTING AND SAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "OptionMenu 'M'",
                    "content": "User  configurable  options  menu (for more information see section \"GLOBAL OPTIONS\nMENU AND TINRC CONFIGURABLE VARIABLES\").\n"
                },
                {
                    "name": "PageNextArt 'n'",
                    "content": "Go to the next article.\n"
                },
                {
                    "name": "PageNextUnreadArt 'N'",
                    "content": "Go to the next unread article.\n\nPrint 'o' Send current article / thread / auto-selected (hot) articles  /  articles  matching\npattern  / tagged articles to printer. See the section \"MAILING PIPING PRINTING RE‐\nPOSTING AND SAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "PagePrevArt 'p'",
                    "content": "Go to the previous article.\n"
                },
                {
                    "name": "PagePrevUnreadArt 'P'",
                    "content": "Go to the previous unread article.\n\nQuit 'q'  Return to the previous level.\n"
                },
                {
                    "name": "QuitTin 'Q'",
                    "content": "Quit tin — don't ask the user to confirm.\n"
                },
                {
                    "name": "PageReplyQuote 'r'",
                    "content": "Reply through mail to the author of the current article with a copy of the  article\nincluded.\n"
                },
                {
                    "name": "PageReply 'R'",
                    "content": "Reply through mail to the author of the current article without including the orig‐\ninal article.\n"
                },
                {
                    "name": "PageSave 's'",
                    "content": "Save  current  article  / thread / auto-selected (hot) articles / articles matching\npattern / tagged articles. See the section \"MAILING PIPING PRINTING  REPOSTING  AND\nSAVING ARTICLES\" for more information.\n"
                },
                {
                    "name": "PageAutoSave 'S'",
                    "content": "Save marked articles automatically without further prompting.\n"
                },
                {
                    "name": "PageTag 't'",
                    "content": "Toggle  tag  status of current article for mailing, piping, printing, saving or re‐\nposting.\n"
                },
                {
                    "name": "PageGroupSel 'T'",
                    "content": "Return to group selection level.\n"
                },
                {
                    "name": "PageGotoParent 'u'",
                    "content": "Go to parent article.\n"
                },
                {
                    "name": "PageViewUrl 'U'",
                    "content": "Display a list of URLs in the current article. See the section  \"URL  LISTING\"  for\nmore information.\n"
                },
                {
                    "name": "PageViewAttach 'V'",
                    "content": "Display  a  list of attachments of the current article. See the section \"ATTACHMENT\nLISTING\" for more information.\n\nPost 'w'  Post an article to the current group. If posting fails for some reason, you'll  get\nthe chance to edit the article again via PostEdit ('e'), postpone it for later pro‐\ncessing  via PostPostpone ('o') (see also ''-o'' command-line switch) or discard it\nvia Quit ('q').\n"
                },
                {
                    "name": "PageRepost 'x'",
                    "content": "Repost an already posted article / thread / auto-selected (hot) articles / articles\nmatching pattern / tagged articles to another newsgroup(s).  Useful  for  reposting\nfrom global to local newsgroups. Do not use this to crosspost your own articles.\n"
                },
                {
                    "name": "MarkArtUnread 'z'",
                    "content": "Mark article as unread.\n"
                },
                {
                    "name": "MarkThdUnread 'Z'",
                    "content": "Mark the current thread as unread.\n\nURL LISTING\nPageViewUrl  ('U')  displays a list of URLs in the current article. Besides the common moving\nkeys, the following commands are available:\n\nUrlSelect '^J' '<CR>'\nThe current URL will be prompted and opened using the urlhandler.  '<ESC>'  or\nno input will skip the URL.\n\nSearchSubjF '/'\nURL forward search.\n\nSearchSubjB '?'\nURL backward search.\n\nSearchRepeat '\\'\nRepeat the previous search.\n\nShellEscape '!'\nShell escape.\n\nToggleInfoLastLine 'i'\nToggle the display of the current URL in the last line.\n\nHelp 'h'  Help screen of commands available.\n\nToggleHelpDisplay 'H'\nToggle  the  display  of help mini menu at the bottom of the screen and posting\netiquette after composing an article (beginnerlevel).\n\nATTACHMENT LISTING\nPageViewAttach ('V') displays a list of attachments of the current article. Besides the  com‐\nmon moving keys, the following commands are available:\n\nAttachPipe 'p'\nPipe attachment into command.\n\nAttachSave 's'\nSave current attachment / tagged attachments to disk.\n\nAttachSelect '^J' '<CR>'\nView attachment.\n\nAttachTag 't'\nTag one or more attachments for saving.\n\nAttachTagPattern '='\nPrompts  for a pattern to match. All attachments whose name/description or con‐\ntent type/transfer encoding match the pattern will be tagged.\n\nAttachToggleTagged '@'\nReverse tagging of all attachments.\n\nAttachUntag 'U'\nUntag all tagged attachments.\n\nSearchSubjF '/'\nAttachment forward search.\n\nSearchSubjB '?'\nAttachment backward search.\n\nSearchRepeat '\\'\nRepeat the previous search.\n\nGlobalPipe '|'\nPipe attachment into command. Uses the raw attachment, no decoding is done.\n\nShellEscape '!'\nShell escape.\n\nToggleInfoLastLine 'i'\nToggle the display of the name/description of the  current  attachment  in  the\nlast line.\n\nHelp 'h'  Help screen of commands available.\n\nToggleHelpDisplay 'H'\nToggle  the  display  of help mini menu at the bottom of the screen and posting\netiquette after composing an article (beginnerlevel).\n\nPOSTING HISTORY LISTING\nDisplayPostHist ('W') displays a list of all previous posted articles stored  in  ${TINHOME‐\nDIR:-\"$HOME\"}/.tin/posted.  The  following  information  is  shown:  a  time stamp in \"dd-mm-\nyy\"-format, a single letter indicating the action which  initiated  the  message,  the  group\nnames (eventually shortened, see also abbreviategroupname) or a mail address the message was\nsent  to  and  the subject of the message. Besides the common moving keys, the following com‐\nmands are available:\n\nPostedArticlesSelect '^J' '<CR>'\nThe article with the current ''Message-ID:'' will be opened if available.  Note\nthat this requires that the ''Message-ID:'' of  the  article  was  recorded  in\n${TINHOMEDIR:-\"$HOME\"}/.tin/posted which may not always be the case.  If using\nNNTP  and  the  internal  inews (inewsprog set to \"--internal\") and either the\nserver proposes a ''Message-ID:'' during the POST (RFC3977) command or  tin  is\nbuilt to generate ''Message-ID:'' this should be the case. With an external in‐\news (and reading from local spool) it is not.\n\nSearchSubjF '/'\nURL forward search.\n\nSearchSubjB '?'\nURL backward search.\n\nSearchRepeat '\\'\nRepeat the previous search.\n\nShellEscape '!'\nShell escape.\n\nToggleInfoLastLine 'i'\nToggle the display of the current ''Message-ID:'' in the last line.\n\nHelp 'h'  Help screen of commands available.\n\nToggleHelpDisplay 'H'\nToggle  the  display  of help mini menu at the bottom of the screen and posting\netiquette after composing an article (beginnerlevel).\n"
                },
                {
                    "name": "GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES",
                    "content": "At startup, tin reads in the configuration files (see also tin(5)).  They contain a  list  of\nvariables  that can be used to configure the way tin works. If it exists, the global configu‐\nration file, /etc/tin/tinrc is read. After that, the user's own configuration  file  is  read\nfrom  ${TINHOMEDIR:-\"$HOME\"}/.tin/tinrc.  The global file is useful for distributing system-\nwide defaults to new users who have no private tinrc yet.\n\nThe variables are user configurable by editing  ${TINHOMEDIR:-\"$HOME\"}/.tin/tinrc  directly.\nMost of them can also be set in the GLOBAL OPTIONS MENU which is accessed by pressing Option‐\nMenu  ('M')  at  all levels. It allows the user to customize the behavior of tin. The options\nare saved to the file ${TINHOMEDIR:-\"$HOME\"}/.tin/tinrc when you exit tin so don't edit  the\nfile directly whilst tin is running.\n\nIn  the  options  menu  use the cursor keys in the usual way to move around. Use ConfigSelect\n('^J' or '<CR>') to 'open' the option you wish to change. You will need to enter a new  value\nor  use  '<SPACE>'  to  toggle  the  available options. ConfigSelect will save the new value,\n'<ESC>' will abort without saving changes.\n\nAs with the other menus, RedrawScr ('^L') will redraw the screen.  You  can  use  SearchSubjF\n('/'),  SearchSubjB  ('?')  and  SearchRepeat ('\\') to search for a specific option. Use Quit\n('q') to exit the option menu and keep your changes. Use QuitTin ('Q') to exit without  keep‐\ning your changes.\n\nThe  options menu provides access to the attributes menu for the current group by the Config‐\nToggleAttrib ('<TAB>') command. Pressing ConfigToggleAttrib again toggles back to the options\nmenu. For more information see section \"ATTRIBUTES MENU AND GROUP ATTRIBUTES\".\n\nThe ConfigScopeMenu ('S') command brings up the scopes menu. For more information see section\n\"SCOPES MENU\".\n\nHere is a full list of all the available variables. The name in braces is  the  name  of  the\ncorresponding setting in ${TINHOMEDIR:-\"$HOME\"}/.tin/tinrc.\n"
                },
                {
                    "name": "Abbreviate long newsgroup names (abbreviate_groupname)",
                    "content": "If ON abbreviate long newsgroup names at group selection level and article level (if nec‐\nessary)  like  this: news.software.readers -> n.software.readers -> n.s.readers -> n.s.r.\nDefault is OFF.\n"
                },
                {
                    "name": "Add posted articles to filter (add_posted_to_filter)",
                    "content": "If ON add posted articles which start a new thread to filter for highlighting follow-ups.\nDefault is ON.\n"
                },
                {
                    "name": "Insert 'User-Agent:'-header (advertising)",
                    "content": "Turn ON advertising in header (''User-Agent:''). Default is ON.\n"
                },
                {
                    "name": "Skip multipart/alternative parts (alternative_handling)",
                    "content": "If ON strip multipart/alternative messages automatically. Default is ON.\n"
                },
                {
                    "name": "Character to show deleted articles (art_marked_deleted)",
                    "content": "The character used to show that an article was deleted. Default is 'D'.\n"
                },
                {
                    "name": "Character to show inrange articles (art_marked_inrange)",
                    "content": "The character used to show that an article is in a range. Default is '#'.\n"
                },
                {
                    "name": "Character to show returning arts (art_marked_return)",
                    "content": "The character used to show that an article will return as  an  unread  article  when  the\ngroup is next entered. Default is '-'.\n"
                },
                {
                    "name": "Character to show selected articles (art_marked_selected)",
                    "content": "The  character  used  to  show that an article/thread is auto-selected (hot).  Default is\n'*'.\n"
                },
                {
                    "name": "Character to show recent articles (art_marked_recent)",
                    "content": "The character used to show that an article/thread is recent (not older than X days).  See\nalso recenttime. Default is 'o'.\n"
                },
                {
                    "name": "Character to show unread articles (art_marked_unread)",
                    "content": "The character used to show that an article has not been read.  Default is '+'.\n"
                },
                {
                    "name": "Character to show read articles (art_marked_read)",
                    "content": "The character used to show that an article was read. Default is ' '.\n"
                },
                {
                    "name": "Character to show killed articles (art_marked_killed)",
                    "content": "The  character  used to show that an article was killed. Default is 'K'.  killlevel must\nbe set accordingly.\n"
                },
                {
                    "name": "Character to show read selected arts (art_marked_read_selected)",
                    "content": "The character used to show that an article was hot before it was read.  Default  is  ':'.\nkilllevel must be set accordingly.\n"
                },
                {
                    "name": "Ask before using MIME viewer (ask_for_metamail)",
                    "content": "If  ON  tin will ask before using a MIME viewer (metamailprog) to display MIME messages.\nThis only occurs if a MIME viewer is set. Default is OFF.\n"
                },
                {
                    "name": "Format string for the Attachment level (attachment_format)",
                    "content": "Format string tin uses for Attachment level representation. See the section  \"CUSTOMIZING\nTHE SCREEN FORMAT\".  Default is \"%t%s%e%c%d\".\n"
                },
                {
                    "name": "Send you a cc and/or bcc automatically (auto_cc_bcc)",
                    "content": "Automatically put your name in the ''Cc:'' and/or ''Bcc:'' field when mailing an article.\nDefault is No.\n"
                },
                {
                    "name": "List thread using right arrow key (auto_list_thread)",
                    "content": "If ON automatically list thread when entering it using right arrow key.  Default is ON.\n"
                },
                {
                    "name": "Reconnect to server automatically (auto_reconnect)",
                    "content": "Default is OFF.\n"
                },
                {
                    "name": "Save articles in batch mode (batch_save)",
                    "content": "If  set  ON  articles/threads  will be saved in batch mode when save ''-S'' or mail ''-M,\n-N'' is specified on the command line. Default is ON.\n"
                },
                {
                    "name": "Show mini menu & posting etiquette (beginner_level)",
                    "content": "If set ON a mini menu of the most useful commands will be displayed at the bottom of  the\nscreen  for  each level. Also a short posting etiquette will be displayed after composing\nan article. Default is ON.\n"
                },
                {
                    "name": "Cache NNTP overview files locally (cache_overview_files)",
                    "content": "If ON, create local copies of NNTP overview files. This can be used to considerably speed\nup accessing large groups when using a slow connection.  See also \"INDEX FILES\".  Default\nis OFF.\n"
                },
                {
                    "name": "Hash algorithm for cancel-locks (cancel_lock_algo)",
                    "content": "Use this hash algorithm for cancel-locks. Only available when built with cancel-lock sup‐\nport.  none  disables the generation of cancel-locks. Valid values are none, sha1, sha256\nand sha512.  Default is sha1.\n"
                },
                {
                    "name": "Catchup read groups when quitting (catchup_read_groups)",
                    "content": "If set ON the user is asked when quitting if all groups read during the  current  session\nshould be marked read. Default is OFF.\n"
                },
                {
                    "name": "Standard background color (col_back)",
                    "content": "Standard background color\n"
                },
                {
                    "name": "Color of quoted text from external sources (col_extquote)",
                    "content": "Color of quoted text from external sources\n"
                },
                {
                    "name": "Color of sender (From:) (col_from)",
                    "content": "Color of sender (From:)\n"
                },
                {
                    "name": "Color of article header lines (col_head)",
                    "content": "Color of header-lines\n"
                },
                {
                    "name": "Color of help text (col_help)",
                    "content": "Color of help pages\n"
                },
                {
                    "name": "Color for inverse text (background) (col_invers_bg)",
                    "content": "Color of background for inverse text\n"
                },
                {
                    "name": "Color for inverse text (foreground) (col_invers_fg)",
                    "content": "Color of foreground for inverse text\n"
                },
                {
                    "name": "Color of status messages (col_message)",
                    "content": "Color of status messages in last line\n"
                },
                {
                    "name": "Color of highlighting with _dash_ (col_markdash)",
                    "content": "Color of words emphasized like this. See also wordhdisplaymarks and wordhighlight.\n"
                },
                {
                    "name": "Color of highlighting with /slash/ (col_markslash)",
                    "content": "Color of words emphasized like /this/. See also wordhdisplaymarks and wordhighlight.\n\nColor of highlighting with *stars* (colmarkstar)\nColor of words emphasized like *this*. See also wordhdisplaymarks and wordhighlight.\n"
                },
                {
                    "name": "Color of highlighting with -stroke- (col_markstroke)",
                    "content": "Color of words emphasized like -this-. See also wordhdisplaymarks and wordhighlight.\n"
                },
                {
                    "name": "Color of mini help menu (col_minihelp)",
                    "content": "Color of mini help menu\n"
                },
                {
                    "name": "Color of actual news header fields (col_newsheaders)",
                    "content": "Color of actual news header fields\n"
                },
                {
                    "name": "Standard foreground color (col_normal)",
                    "content": "Standard foreground color\n"
                },
                {
                    "name": "Color of quoted lines (col_quote)",
                    "content": "Color of quoted lines\n"
                },
                {
                    "name": "Color of twice quoted line (col_quote2)",
                    "content": "Color of twice quoted lines\n"
                },
                {
                    "name": "Color of =>3 times quoted line (col_quote3)",
                    "content": "Color of >=3 times quoted lines\n"
                },
                {
                    "name": "Color of response counter (col_response)",
                    "content": "Color  of  response  counter. This is the text that says \"Response x of y\" in the article\nviewer.\n"
                },
                {
                    "name": "Color of signatures (col_signature)",
                    "content": "Color of signatures\n"
                },
                {
                    "name": "Color of negative score (col_score_neg)",
                    "content": "Color of negative score\n"
                },
                {
                    "name": "Color of positive score (col_score_pos)",
                    "content": "Color of positive score\n"
                },
                {
                    "name": "Color of urls highlight (col_urls)",
                    "content": "Color of urls highlight\n"
                },
                {
                    "name": "Color of verbatim blocks (col_verbatim)",
                    "content": "Color of verbatim blocks\n"
                },
                {
                    "name": "Color of article subject lines (col_subject)",
                    "content": "Color of article subject\n"
                },
                {
                    "name": "Color of text lines (col_text)",
                    "content": "Color of text-lines\n"
                },
                {
                    "name": "Color of help/mail sign (col_title)",
                    "content": "Color of help/mail sign\n"
                },
                {
                    "name": "Which actions require confirmation (confirm_choice)",
                    "content": "Ask for manual confirmation to protect the user.\n\n•  commands Ask for confirmation before  executing  certain  dangerous  commands  (e.g.,\nCatchup  ('c')).  Commands  that  this affects are marked in this manual with '[after\nconfirmation]'. Default is commands & quit.\n\n•  quit You'll be asked to confirm that you wish to exit tin when you use the Quit ('q')\ncommand.\n\n•  select Ask for confirmation before marking  all  not  selected  (with  GroupMarkUnse‐\nlArtRead ('X') command) articles as read.\n"
                },
                {
                    "name": "Format string for display of dates (date_format)",
                    "content": "Format string tin uses for date representation. A description of the different format op‐\ntions can be found at strftime(3).  tin uses strftime(3) when available and supports most\nformat options in his fallback code.  Default is \"%a, %d %b %Y %H:%M:%S\".\n"
                },
                {
                    "name": "(default_art_search)",
                    "content": ""
                },
                {
                    "name": "(default_author_search)",
                    "content": ""
                },
                {
                    "name": "(default_config_search)",
                    "content": "The last article/author/config option that was searched for.\n"
                },
                {
                    "name": "(default_filter_days)",
                    "content": "Default is 28.\n"
                },
                {
                    "name": "(default_filter_kill_case)",
                    "content": "Default  for  quick  (1  key) kill filter case.  ON = filter case sensitive, OFF = ignore\ncase. Default is OFF.\n"
                },
                {
                    "name": "(default_filter_kill_expire)",
                    "content": "Default for quick (1 key) kill filter expire.  ON = limit to defaultfilterdays,  OFF  =\ndon't ever expire. Default is OFF.\n"
                },
                {
                    "name": "(default_filter_kill_global)",
                    "content": "Default  for quick (1 key) kill filter global.  ON=apply to all groups, OFF=apply to cur‐\nrent group. Default is ON.\n"
                },
                {
                    "name": "(default_filter_kill_header)",
                    "content": "Default for quick (1 key) kill filter header.\n\n0  ''Subject:'' (case sensitive)\n\n1  ''Subject:'' (ignore case)\n\n2  ''From:'' (case sensitive)\n\n3  ''From:'' (ignore case)\n\n4  ''Message-ID:'' & full ''References:'' line\n\n5  ''Message-ID:'' & last ''References:'' entry only\n\n6  ''Message-ID:'' entry only\n\n7  ''Lines:''\n"
                },
                {
                    "name": "(default_filter_select_case)",
                    "content": "Default for quick (1 key) auto-selection filter case. ON=filter case  sensitive,  OFF=ig‐\nnore case. Default is OFF.\n"
                },
                {
                    "name": "(default_filter_select_expire)",
                    "content": "Default  for  quick  (1  key)  auto-selection  filter expire.  ON = limit to defaultfil‐\nterdays, OFF = don't ever expire.  Default is OFF.\n"
                },
                {
                    "name": "(default_filter_select_global)",
                    "content": "Default for quick (1 key) auto-selection filter global.  ON=apply to all groups,  OFF=ap‐\nply to current group. Default is ON.\n"
                },
                {
                    "name": "(default_filter_select_header)",
                    "content": "Default for quick (1 key) auto-selection filter header.\n\n0  ''Subject:'' (case sensitive)\n\n1  ''Subject:'' (ignore case)\n\n2  ''From:'' (case sensitive)\n\n3  ''From:'' (ignore case)\n\n4  ''Message-ID:'' & full ''References:'' line\n\n5  ''Message-ID:'' & last ''References:'' entry only\n\n6  ''Message-ID:'' entry only\n\n7  ''Lines:''\n"
                },
                {
                    "name": "(default_goto_group)",
                    "content": ""
                },
                {
                    "name": "(default_group_search)",
                    "content": ""
                },
                {
                    "name": "(default_mail_address)",
                    "content": ""
                },
                {
                    "name": "(default_move_group)",
                    "content": ""
                },
                {
                    "name": "(default_pattern)",
                    "content": ""
                },
                {
                    "name": "(default_pipe_command)",
                    "content": ""
                },
                {
                    "name": "(default_post_newsgroups)",
                    "content": ""
                },
                {
                    "name": "(default_post_subject)",
                    "content": ""
                },
                {
                    "name": "(default_range_group)",
                    "content": ""
                },
                {
                    "name": "(default_range_select)",
                    "content": ""
                },
                {
                    "name": "(default_range_thread)",
                    "content": ""
                },
                {
                    "name": "(default_repost_group)",
                    "content": ""
                },
                {
                    "name": "(default_save_file)",
                    "content": ""
                },
                {
                    "name": "(default_save_mode)",
                    "content": ""
                },
                {
                    "name": "(default_select_pattern)",
                    "content": ""
                },
                {
                    "name": "(default_shell_command)",
                    "content": ""
                },
                {
                    "name": "(default_subject_search)",
                    "content": ""
                },
                {
                    "name": "Draw -> instead of highlighted bar (draw_arrow)",
                    "content": "Allows  groups/articles to be selected by an arrow '->' if set ON or by a highlighted bar\nif set OFF. Default is OFF.\n"
                },
                {
                    "name": "Invocation of your editor (editor_format)",
                    "content": "The format string used to create the editor start command with  parameters.   Default  is\n'%E  +%N  %F'  with %E=Editor, %N=Linenumber and %F=Filename (e.g., /bin/vi +7 .article).\nSee also $VISUAL and $EDITOR under \"ENVIRONMENT\".\n"
                },
                {
                    "name": "Detection of external quotes (extquote_handling)",
                    "content": "If ON quotes from external sources will be detected. Default is OFF.\n"
                },
                {
                    "name": "Regex used to show external quotes (extquote_regex)",
                    "content": "A regular expression that will be applied when reading articles. All matching  lines  are\nshown in colextquote. If extquoteregex is blank, then tin uses a built-in default.\n"
                },
                {
                    "name": "Force redraw after certain commands (force_screen_redraw)",
                    "content": "Specifies  whether a screen redraw should always be done after certain external commands.\nDefault is OFF.\n"
                },
                {
                    "name": "Number of articles to get (getart_limit)",
                    "content": "If getartlimit is > 0 not more than the last  getartlimit  articles/group  are  fetched\nfrom  the server. If getartlimit is < 0 tin will start fetching articles from your first\nunread minus absolute value of getartlimit. Default is 0, which means no limit.\n"
                },
                {
                    "name": "Catchup group using left key (group_catchup_on_exit)",
                    "content": "If ON catchup group when leaving with the left arrow key. Default is ON.\n"
                },
                {
                    "name": "Format string for the Group level (group_format)",
                    "content": "Format string tin uses for Group level representation. See the section  \"CUSTOMIZING  THE\nSCREEN FORMAT\". Default is \"%n %m %R %L  %s  %F\".\n"
                },
                {
                    "name": "Go to the next unread article with (goto_next_unread)",
                    "content": "Which  keys tin should accept to jump to the next unread article.  Possible is any combi‐\nnation of PageDown and PageNextUnread.  When PageDown is set tin jumps to the next  arti‐\ncle  at  the  end of the current one. When PageNextUnread is set tin jumps immediately to\nthe next article when PageNextUnread ('<TAB>') is pressed. Default is PageNextUnread.\n"
                },
                {
                    "name": "Display uue data as an attachment (hide_uue)",
                    "content": "If set to 'No' then raw uuencoded data is displayed. If set to  'Yes'  then  sections  of\nuuencoded  data  will be shown with a single tag line showing the size and filename (much\nthe same as a MIME attachment).  If set to 'Hide all' then any line that looks like uuen‐\ncoded data will be folded into a tag line. This is useful when uuencoded  data  is  split\nacross  more than one article but can also lead to false positives. This setting can also\nbe toggled in the article viewer.  Default is 'No'.\n"
                },
                {
                    "name": "External inews (inews_prog)",
                    "content": "Path, name and options of external inews(1).  If you are reading  via  NNTP  the  default\nvalue  is  \"--internal\"  (use built-in NNTP inews), else it is \"inews -h\". The article is\npassed to inewsprog on STDIN via '< article'.\n"
                },
                {
                    "name": "(info_in_last_line)",
                    "content": "If ON, show current group description or article subject in the last  line  (not  in  the\npager  and global menu) — ToggleInfoLastLine ('i') toggles setting. This facility is use‐\nful as the full width of the screen is available to display  long  subjects.  Default  is\nOFF.\n"
                },
                {
                    "name": "Use interactive mail reader (interactive_mailer)",
                    "content": "Interactive mailreader: if greater than 0 your mailreader will be invoked earlier for re‐\nply so you can use more of its features (e.g. MIME, pgp, ...). 1 means include headers, 2\nmeans don't include headers (old usemailreaderi=ON option). 0 turns off usage. This op‐\ntion has to suit mailerformat. Default is 0.\n"
                },
                {
                    "name": "Use inverse video for page headers (inverse_okay)",
                    "content": "If ON use inverse video for page headers and URL highlighting.  Default is ON.\n"
                },
                {
                    "name": "Keep failed arts in ~/dead.articles (keep_dead_articles)",
                    "content": "If  ON  keep all failed postings in ${TINHOMEDIR:-\"$HOME\"}/dead.articles besides keeping\nthe last failed posting in ${TINHOMEDIR:-\"$HOME\"}/dead.article. Default is ON.\n"
                },
                {
                    "name": "Filter which articles (kill_level)",
                    "content": "This option controls the processing and display of articles that are killed.  There are 3\noptions:\n\n0  Kill only unread arts is the 'traditional' behavior of tin. Only unread articles  are\nkilled  once  only by marking them read. As filtering only happens on unread articles\nwith killlevel set to 0, artmarkedkilled  and  artmarkedreadselected  are  only\nshown once. When you reenter the group the mark will be gone.\n\n1  Kill  all  arts  &  show  with K will process all articles in the group and therefore\nthere is a processing overhead when using this option. Killed articles  are  threaded\nas normal but they will be marked with artmarkedkilled.\n\n2  Kill  all  arts  and  never show will process all articles in the group and therefore\nthere is a processing overhead when using this option. Killed  articles  simply  does\nnot get displayed at all.\nDefault is 0 (Kill only unread arts).\n"
                },
                {
                    "name": "Use 8bit characters in mail headers (mail_8bit_header)",
                    "content": "Allows  8bit  characters unencoded in the header of mail message. Default is OFF. Turning\nit ON is effective only if mailmimeencoding is also set to 8bit. Leaving it OFF is safe\nfor most users and compliant to Internet Mail Standard (RFC5322 and RFC2047). Default  is\nOFF.\n"
                },
                {
                    "name": "Mail address (mail_address)",
                    "content": "User's mail address (and full name), if not username@host. This is used when creating ar‐\nticles, sending mail and when pgp(1) / gpg(1) signing (RFC4880).\n"
                },
                {
                    "name": "MIME encoding in mail messages (mail_mime_encoding)",
                    "content": "MIME  encoding of the body in mail message, if necessary (8bit, base64, quoted-printable,\n7bit). Default is quoted-printable.\n"
                },
                {
                    "name": "Quote line when mailing (mail_quote_format)",
                    "content": "Format of quote line when  replying  (via  mail)  to  an  article  (%A=Address,  %D=Date,\n%F=Fullname+Address,  %G=Groupname,  %M=Message-ID,  %N=Fullname,  %C=Firstname,  %I=Ini‐\ntials). Default is \"In article %M you wrote:\"\n"
                },
                {
                    "name": "Format of the mailbox (mailbox_format)",
                    "content": "Select one of the following mailbox-formats: MBOXO (default, except on  SCO),  MBOXRD  or\nMMDF  (default  on SCO). See mbox(5) and RFC4155 for more details on MBOXO and MBOXRD and\nmmdf(5) for more details about MMDF.\n"
                },
                {
                    "name": "Mail directory (maildir)",
                    "content": "The directory where articles/threads are to be saved in mbox(5) format. This  feature  is\nmainly  for  use  with  the  mutt(1)  mail  program.  It  allows  the  user to save arti‐\ncles/threads/groups simply by giving  '='  as  the  filename  to  save  to.   Default  is\n${TINHOMEDIR:-\"$HOME\"}/Mail.\n"
                },
                {
                    "name": "Invocation of your mail command (mailer_format)",
                    "content": "The  format  string  used  to  create the mailer command with parameters that is used for\nmailing articles to other people. Default is '%M \"%T\" < %F'  (e.g.,  /bin/mail  \"iain\"  <\n~/.article). The flexible format allows other mailers with different command line parame‐\nters to be used such as\nsendmail -oem -t < %F\nmutt -s \"%S\" -- \"%T\" < %F\nmutt -H %F\nclaws-mail --compose \"mailto:%T?subject=%S&insert=%F\"\ninteractivemailer must be set adequate. The following substitutions are supported:\n%F              filename\n%M              defaultmailer\n%S              subject-field\n%T              to-filed\n%U              username\n%%              %\n"
                },
                {
                    "name": "'Mark as (un)read' ignores tags (mark_ignore_tags)",
                    "content": "When this is ON, the GroupMarkThdRead ('K'), ThreadMarkArtRead ('K'), MarkThdUnread ('Z')\nat  Group  level  and MarkArtUnread ('z') at Thread level functions mark just the current\narticle or thread, ignoring other tagged, (un)read articles. When OFF, the same  function\npresents  a  menu with choices of the current thread or article, all tagged, unread arti‐\ncles, or nothing.\n"
                },
                {
                    "name": "Mark saved articles/threads as read (mark_saved_read)",
                    "content": "If ON mark articles that are saved as read. Default is ON.\n"
                },
                {
                    "name": "Viewer program for MIME articles (metamail_prog)",
                    "content": "Path, name and options of external metamail(1) program used to view non-textual parts  of\narticles.   To use the built-in viewer, set to --internal. This is the default value when\nmetamail(1) is not installed. Leave it blank if you don't want any automatic  viewing  of\nnon-textual  attachments. The PageViewAttach ('V') command can always be used to manually\nview any attachments. See also askformetamail.\n"
                },
                {
                    "name": "MM_CHARSET (mm_charset)",
                    "content": "Charset supported locally, which is also used for  MIME  header  (charset  parameter  and\ncharset name in header encoding) in mail and news postings. If MIMESTRICTCHARSET is de‐\nfined  at compile time, text in charset other than the value of this parameter is consid‐\nered not displayable and represented as '?'. Otherwise, all character sets  are  regarded\nas  compatible  with  the display. If it's not set, the value of the environment variable\n$MMCHARSET is used. US-ASCII or compile-time default is used in case neither of them  is\ndefined.  If  your  system  supports iconv(3), this option is disabled and you should use\nmmnetworkcharset instead.\n"
                },
                {
                    "name": "MM_NETWORK_CHARSET (mm_network_charset)",
                    "content": "Charset used for posting and  MIME  headers;  replaces  mmcharset.   Conversion  between\nmmnetworkcharset  and  local  charset  (determined  via  nllanginfo(3))  is  done  via\niconv(3), if this function is not available on your system this option  is  disabled  and\nyou have to use mmcharset instead. mmnetworkcharset is limited to one of the following\ncharsets:\nUS-ASCII,  ISO-8859-{1,2,3,4,5,7,9,10,13,14,15,16},  KOI8-{R,U,RU}  EUC-{CN,JP,KR,TW},\nISO-2022-{CN,CN-EXT,JP,JP-1,JP-2}, Big5, UTF-8\nNot all values might work on your system, see iconvopen(3) for more details. If it's not\nset, the value of the environment variable $MMCHARSET is used. US-ASCII or  compile-time\ndefault is used in case neither of them is defined.\n"
                },
                {
                    "name": "Attribute of highlighting with _dash_ (mono_markdash)",
                    "content": "Character  attribute  of  words emphasized like this. It depends on your terminal which\nattributes are usable. See also wordhdisplaymarks and wordhighlight.\n"
                },
                {
                    "name": "Attribute of highlighting with /slash/ (mono_markslash)",
                    "content": "Character attribute of words emphasized like /this/. It depends on  your  terminal  which\nattributes are usable. See also wordhdisplaymarks and wordhighlight.\n\nAttribute of highlighting with *stars* (monomarkstar)\nCharacter  attribute  of  words emphasized like *this*. It depends on your terminal which\nattributes are usable. See also wordhdisplaymarks and wordhighlight.\n"
                },
                {
                    "name": "Attribute of highlighting with -stroke- (mono_markstroke)",
                    "content": "Character attribute of words emphasized like -this-. It depends on  your  terminal  which\nattributes are usable. See also wordhdisplaymarks and wordhighlight.\n"
                },
                {
                    "name": "(newnews)",
                    "content": "These  are  internal  timers  used by tin to keep track of new newsgroups.  Do not change\nthem unless you understand what they are for.\n\nDisplay these header fields (or *) (newsheaderstodisplay)\nWhich news headers you wish to see. If you want to see all the headers, place an '*' as\nthis value. This is the only way a wildcard can be used.  If you enter 'X-' as the value,\nyou will see all headers beginning with 'X-' (like X-Alan or X-Pape). You can  list  more\nthan one by delimiting with spaces. Not defining anything turns off this option.\n"
                },
                {
                    "name": "Do not display these header fields (news_headers_to_not_display)",
                    "content": "Same  as newsheaderstodisplay except it denotes the opposite. An example of using both\noptions might be if you thought 'X-' headers were A Good Thing(tm), but thought Alan  and\nPape  were miscreants... well then you would do something like this: newsheaderstodis‐\nplay=X- newsheaderstonotdisplay=X-Alan X-Pape Not defining anything  turns  off  this\noption.\n"
                },
                {
                    "name": "Quote line when following up (news_quote_format)",
                    "content": "Format  of quote line when posting/following up an article (%A=Address, %D=Date, %F=Full‐\nname+Address, %G=Groupname, %M=Message-ID, %N=Fullname, %C=Firstname,  %I=Initials).  De‐\nfault is \"%F wrote:\".\n"
                },
                {
                    "name": "NNTP read timeout in seconds (nntp_read_timeout_secs)",
                    "content": "Time  in seconds to wait for a response from the server. Default is 120.  Setting this to\n0 means no timeout. As if you use the \"-C\" option in conjunction with  a  low  value  for\nnntpreadtimeoutsecs  may  result in a timeout (and disconnect in batch mode) when con‐\nnecting to large servers or entering large groups, because the timer is set when the com‐\nmand is sent to the server and that needs some time to compress the large  response,  the\nvalue should not be set too small.\n"
                },
                {
                    "name": "Unicode normalization form (normalization_form)",
                    "content": "The  normalization  form  tin should use to normalize unicode input.  The possible values\nare:\n\n0  None: no normalization\n\n1  NFKC: Compatibility Decomposition, followed by Canonical Composition\n\n2  NFKD: Compatibility Decomposition\n\n3  NFC: Canonical Decomposition, followed by Canonical Composition\n\n4  NFD: Canonical Decomposition\n\n5  NFKCCF: Compatibility Decomposition, followed  by  Canonical  Composition  and  Case\nFolding\nSome  normalization modes are only available if they are supported by the library tin uses to\ndo the normalization. NFC should be used if possible.\n"
                },
                {
                    "name": "Format string for the display of mime header at Article level (page_mime_format)",
                    "content": "Format string tin uses for mime header at Page level. See the  section  \"CUSTOMIZING  THE\nSCREEN FORMAT\".  Default is \"[-- %T%S%*n%z%*l%!c%!d%*e --]\".\n"
                },
                {
                    "name": "Format string for the display of uue header at Article level (page_uue_format)",
                    "content": "Format  string  tin  uses  for uue header at Page level. See the section \"CUSTOMIZING THE\nSCREEN FORMAT\".  Default is \"[-- %T%S%*n%I%!d%*e --]\".\n"
                },
                {
                    "name": "Go to first unread article in group (pos_first_unread)",
                    "content": "If ON put cursor at first unread article in group otherwise at last article.  Default  is\nON.\n"
                },
                {
                    "name": "Use 8bit characters in news headers (post_8bit_header)",
                    "content": "Allows  8bit  characters unencoded in the header of a news article, if set this also dis‐\nables the generation of MIME-headers when they are usually required. Default is OFF. Only\nenacted if postmimeencoding is also set to 8bit. In a number of local hierarchies where\n8bit characters are used, using unencoded (raw) 8bit characters in header  is  acceptable\nand  sometimes  even  recommended so that you need to check the convention adopted in the\nlocal hierarchy of your interest to determine what to do with this  and  postmimeencod‐\ning.\n"
                },
                {
                    "name": "MIME encoding in news messages (post_mime_encoding)",
                    "content": "MIME encoding of the body in news message, if necessary. (8bit, base64, quoted-printable,\n7bit). Default is 8bit, which leads to no encoding.  base64 and quoted-printable are usu‐\nally undesired on usenet.\n"
                },
                {
                    "name": "View post-processed files (post_process_view)",
                    "content": "If  ON,  then tin will start an appropriate viewer program to display any files that were\npost processed and uudecoded. The program is determined using the  mailcap(5)  file.  De‐\nfault is ON.\n"
                },
                {
                    "name": "Post process saved articles (post_process_type)",
                    "content": "This  specifies  whether to perform post processing on saved articles.  Because the shell\narchive may contain commands you may not want to be executed, be careful when  extracting\nshell archives.  The following values are allowed:\n\n0  No (default), no post processing is done.\n\n1  Shell archives, unpacking of multi-part shar(1) files only.\n\n2  Yes, binary attachments and data will be decoded and saved.\n"
                },
                {
                    "name": "Filename to be used for storing posted articles (posted_articles_file)",
                    "content": "Keep posted articles in given file. If the given filename does not contain any expandable\nstrings  it  will  be  prefixed with ${TINHOMEDIR:-\"$HOME\"}/Mail/. If no filename is set\nthen postings will not be saved. See the section \"MAILING PIPING PRINTING  REPOSTING  AND\nSAVING  ARTICLES\" for more information about the various expansion characters. Default is\n'posted'.\n"
                },
                {
                    "name": "Print all headers when printing (print_header)",
                    "content": "If ON, then the full article header is sent to the printer.  Otherwise  only  the  ''Sub‐\nject:'' and ''From:'' fields are output. Default is OFF.\n"
                },
                {
                    "name": "Printer program with options (printer)",
                    "content": "The  printer  program  with options that is to be used to print articles.  The default is\nlpr(1) for BSD machines and lp(1) for SysV machines. Printing from tin may have been dis‐\nabled by the System Administrator.\n"
                },
                {
                    "name": "Process only unread articles (process_only_unread)",
                    "content": "If ON only save/print/pipe/mail unread articles (tagged articles excepted).   Default  is\nOFF.\n"
                },
                {
                    "name": "Show empty Followup-To in editor (prompt_followupto)",
                    "content": "If ON show empty ''Followup-To:'' header when editing an article. Default is OFF.\n"
                },
                {
                    "name": "Characters used as quote-marks (quote_chars)",
                    "content": "The  character  used  in quoting included text to article followups and mail replies. The\n'' character represents a blank character and is replaced with ' ' when read, %I is  re‐\nplaced by author's initials. Default is '>'.\n"
                },
                {
                    "name": "Quoting behavior (quote_style)",
                    "content": "How  articles  should be quoted when following up or replying to them. There are a number\nof things that can be done: empty lines can be  quoted,  signatures  can  be  quoted  and\nquotechars  can  be compressed when quoting multiple times (for example, '> > >' will be\nturned into '>>>'). The default is to compress quotes, and to quote empty lines.\nWhen you are viewing an article in raw mode ('^H'), and follow up or  reply  to  it,  the\nsignature  will  be quoted even if it would otherwise not be.  If showsignatures is off,\nthen the signature will never be quoted.\n"
                },
                {
                    "name": "Regex used to show quoted lines (quote_regex)",
                    "content": "A regular expression that will be applied when reading articles. All matching  lines  are\nshown in colquote. If quoteregex is blank, then tin uses a built-in default.\n"
                },
                {
                    "name": "Regex used to show twice quoted l. (quote_regex2)",
                    "content": "A  regular  expression that will be applied when reading articles. All matching lines are\nshown in colquote2. If quoteregex2 is blank, then tin uses a built-in default.\n"
                },
                {
                    "name": "Regex used to show >= 3 times q.l. (quote_regex3)",
                    "content": "A regular expression that will be applied when reading articles. All matching  lines  are\nshown in colquote3. If quoteregex3 is blank, then tin uses a built-in default.\n"
                },
                {
                    "name": "Article recentness time limit (recent_time)",
                    "content": "If  set to 0, this feature is deactivated, otherwise it means the number of days. Default\nis 2.\n"
                },
                {
                    "name": "Render BiDi (render_bidi)",
                    "content": "If ON tin does the rendering of bi-directional text. If OFF tin leaves the  rendering  of\nbi-directional text to the terminal. Default is OFF.\n"
                },
                {
                    "name": "Interval in seconds to reread active (reread_active_file_secs)",
                    "content": "The  news ${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVEFILE:-active} file is reread at regular\nintervals to show if any new news has arrived. Default is 1200. Setting this  to  0  will\ndisable this feature.\n"
                },
                {
                    "name": "Directory to save arts/threads in (savedir)",
                    "content": "Directory where articles/threads are saved. Default is ${TINHOMEDIR:-\"$HOME\"}/News.\n"
                },
                {
                    "name": "Score limit (kill) (score_limit_kill)",
                    "content": "If  the  score  of  an  article  is  below or equal this value the article gets marked as\nkilled.\n"
                },
                {
                    "name": "Score limit (select) (score_limit_select)",
                    "content": "If the score of an article is above or equal this value the article gets marked as hot.\n"
                },
                {
                    "name": "Default score to kill articles (score_kill)",
                    "content": "Score of an article which should be killed, this must be <= scorelimitkill.\n"
                },
                {
                    "name": "Default score to select articles (score_select)",
                    "content": "Score of an article which should be marked hot, this must be >= scorelimitselect.\n"
                },
                {
                    "name": "Number of lines to scroll in pager (scroll_lines)",
                    "content": "The number of lines that will be scrolled up/down in the article pager when using cursor-\nup/down. The default is 1 (line-by-line). Set to 0 to get  traditional  tin  page-by-page\nscrolling.  Set  to -1 to get page-by-page scrolling where the top/bottom line is carried\nover onto the next page.  This setting supersedes showlastlineprevpage=ON. Set to  -2\nto get half-page scrolling. This setting supersedes fullpagescroll=OFF.\n"
                },
                {
                    "name": "Format string for the Selection level (select_format)",
                    "content": "Format  string  tin uses for Selection level representation. See the section \"CUSTOMIZING\nTHE SCREEN FORMAT\". Default is \"%f %n %U  %G  %d\".\n"
                },
                {
                    "name": "In group and thread level, show author by (show_author)",
                    "content": "Which information about the author should be shown. Default is 2, authors full name.\n\n0  None, only the ''Subject:'' line will be displayed.\n\n1  Address, ''Subject:'' line & the address part of the ''From:'' line are displayed.\n\n2  Full Name, ''Subject:'' line & the authors full name part of the ''From:''  line  are\ndisplayed (default).\n\n3  Address and Name, ''Subject:'' line & all of the ''From:'' line are displayed.\n"
                },
                {
                    "name": "Show description of each newsgroup (show_description)",
                    "content": "If  ON  show  a  short group description text after newsgroup name at the group selection\nlevel. The ''-d'' command-line flag will override the setting and turn descriptions  off.\nThe  text  used  is  taken from the ${TINLIBDIR:-NEWSLIBDIR}/newsgroups file and if sup‐\nported (requires  tin  to  be  built  with  mh-mail-handling  support)  from  ${TINHOME‐\nDIR:-\"$HOME\"}/.tin/mailgroups for mailgroups. Default is ON.\n"
                },
                {
                    "name": "Function for sorting articles (sort_function)",
                    "content": "Function used for sorting articles. Default is 0.\n\n0  Use qsort(3) for sorting.\n\n1  Use  heapsort(3)  for sorting. This might be faster in large groups with long threads\n(somewhat presorted data).\n"
                },
                {
                    "name": "Show help/mail sign in level titles (show_help_mail_sign)",
                    "content": "Allows you to select whether tin shows a help indication, a new mail indication, both, or\nneither in the various level titles.  Default is 3.\n\n0  Don't show help or mail sign.\n\n1  Show only help sign.\n\n2  Show only mail sign if new mail, show only the mail sign, and only if  new  mail  has\narrived.\n\n3  Show  mail if new mail else help s., show mail sign if new mail has arrived otherwise\nshow help sign.\n"
                },
                {
                    "name": "Show only unread articles (show_only_unread_arts)",
                    "content": "If ON show only new/unread articles otherwise show all articles.  Default is ON.\n"
                },
                {
                    "name": "Show only groups with unread arts (show_only_unread_groups)",
                    "content": "If ON show only subscribed groups that contain unread articles. Default is OFF.\n"
                },
                {
                    "name": "Display signatures (show_signatures)",
                    "content": "If OFF don't show signatures when displaying articles. Default is ON.\n"
                },
                {
                    "name": "Display score (show_art_score)",
                    "content": "If ON show article score in the lower left corner when displaying articles.   Default  is\nOFF. See also colscoreneg and colscorepos.\n"
                },
                {
                    "name": "Prepend signature with '\\n-- \\n' (sigdashes)",
                    "content": "If ON prepend the signature with sigdashes. Default is ON.\n"
                },
                {
                    "name": "Create signature from path/command (sigfile)",
                    "content": "The path that specifies the signature file to use when posting, following up to or reply‐\ning  to an article. If the path is a directory then the signature will be randomly gener‐\nated from files that are in the specified directory. If the path starts with a ! the pro‐\ngram the path points to will be executed to generate a signature. In order  to  pass  the\ngroup  name to the program, %G can be specified. This will be replaced by the name of the\ncurrent  newsgroup.  --none  will  suppress  any  signature.   Default   is   ${TINHOME‐\nDIR:-\"$HOME\"}/.Sig.\n"
                },
                {
                    "name": "Add signature when reposting (signature_repost)",
                    "content": "If ON add signature to reposted articles. Default is ON.\n"
                },
                {
                    "name": "Regex used to highlight /slashes/ (slashes_regex)",
                    "content": "A  regular  expression that will be applied when reading articles. All matching words are\nshown in colmarkslash or monomarkslash. If slashesregex is  blank,  then  tin  uses  a\nbuilt-in default.\n"
                },
                {
                    "name": "Sort articles by (sort_article_type)",
                    "content": "This  specifies how articles should be sorted. Sort by ascending Date (6) is the default.\nThe following sort types are allowed:\n\n0  Nothing, don't sort articles.\n\n1  Subject: (descending), sort articles by ''Subject:'' field descending.\n\n2  Subject: (ascending), sort articles by ''Subject:'' field ascending.\n\n3  From: (descending), sort articles by ''From:'' field descending.\n\n4  From: (ascending), sort articles by ''From:'' field ascending.\n\n5  Date: (descending), sort articles by ''Date:'' field descending.\n\n6  Date: (ascending), sort articles by ''Date:'' field ascending (default).\n\n7  Score (descending), sort articles by filtering score descending.\n\n8  Score (ascending), sort articles by filtering score ascending.\n\n9  Lines: (descending), sort articles by ''Lines:'' field descending.\n\n10 Lines: (ascending), sort articles by ''Lines:'' field ascending.\n"
                },
                {
                    "name": "Sort threads by (sort_threads_type)",
                    "content": "This specifies how threads will be sorted. Sort by descending Score (1) is  the  default.\nThe following sort types are allowed:\n\n0  Nothing, don't sort threads.\n\n1  Score (descending), sort threads by filtering score descending (default).\n\n2  Score (ascending), sort threads by filtering score ascending.\n\n3  Last posting date (descending), sort threads by date of last posting descending.\n\n4  Last posting date (ascending), sort threads by date of last posting ascending.\n"
                },
                {
                    "name": "Spamtrap warning address parts (spamtrap_warning_addresses)",
                    "content": "Set  this option to a list of comma-separated strings to be warned if you are replying to\nan article by mail where the e-mail address contains one of these strings.  The  matching\nis case-insensitive. Example:\n\nspam,delete,remove\n\nRegex used to highlight *stars* (starsregex)\nA  regular  expression that will be applied when reading articles. All matching words are\nshown in colmarkstar or monomarkstar. If starsregex is blank, then tin uses a built-in\ndefault.\n"
                },
                {
                    "name": "Strip blanks of end of lines (strip_blanks)",
                    "content": "Strips the blanks from the end of each line therefore speeding up the display when  read‐\ning on a slow terminal or via modem. Default is ON.\n"
                },
                {
                    "name": "Remove bogus groups from newsrc (strip_bogus)",
                    "content": "Bogus  groups  are  groups  that are present in your ${TINHOMEDIR:-\"$HOME\"}/.newsrc file\nthat no longer exist on the news server. There are 3 options. 0 means do nothing & always\nkeep bogus groups.  1 means bogus groups will be permanently removed. 2 means that  bogus\ngroups  will  appear on the Group Selection Menu, prefixed with a 'D'. This allows you to\nunsubscribe from them as and when you wish. Default is 0 (Always Keep).\n"
                },
                {
                    "name": "No unsubscribed groups in newsrc (strip_newsrc)",
                    "content": "If ON, then unsubscribed  groups  will  be  permanently  removed  from  your  ${TINHOME‐\nDIR:-\"$HOME\"}/.newsrc file. Default is OFF.\n"
                },
                {
                    "name": "Regex with Subject prefixes (strip_re_regex)",
                    "content": "A regular expression to find Subject prefixes like \"Re:\" to remove.  If stripreregex is\nblank, then tin(1) uses a built-in default.\n"
                },
                {
                    "name": "Regex with Subject suffixes (strip_was_regex)",
                    "content": "A regular expression to find Subject suffixes like \"(was:\" to remove.  If stripwasregex\nis blank, then tin(1) uses a built-in default.\n"
                },
                {
                    "name": "Regex used to highlight -strokes- (strokes_regex)",
                    "content": "A  regular  expression that will be applied when reading articles. All matching words are\nshown in colmarkstroke or monomarkstroke.  If strokesregex is blank, then tin  uses  a\nbuilt-in default.\n"
                },
                {
                    "name": "Wrap around threads on next unread (wrap_on_next_unread)",
                    "content": "If  enabled  a  search  for the next unread article will wrap around all articles to find\nalso previous unread articles. If disabled the search stops at  the  end  of  the  thread\nlist. Default is ON.\n"
                },
                {
                    "name": "Display \"a as Umlaut-a (tex2iso_conv)",
                    "content": "If ON, show \"a as Umlaut-a, etc. Default is OFF. This behavior can also be toggled in the\narticle viewer via PageToggleTex2iso ('\"').\n"
                },
                {
                    "name": "Thread articles by (thread_articles)",
                    "content": "Defines  which  threading method to use. It's possible to set the threading type on a per\ngroup basis by setting the group attribute variable threadarts to 0  –  4  in  the  file\n${TINHOMEDIR:-\"$HOME\"}/.tin/attributes.  (See  also \"GROUP ATTRIBUTES\".)  The default is\nBoth Subject and References.  The choices are:\n\n0  None, don't thread.\n\n1  Subject, thread on ''Subject:'' only.\n\n2  References, thread on ''References:'' only.\n\n3  Both Subject and References, thread on ''References:'' then ''Subject:'' (default).\n\n4  Multipart Subject, thread multipart articles on ''Subject:''.\n\n5  Percentage Match, thread base upon a partial character match on ''Subject:''.\n"
                },
                {
                    "name": "Catchup thread by using left key (thread_catchup_on_exit)",
                    "content": "If ON catchup group/thread when leaving with the left arrow key. Default is ON.\n"
                },
                {
                    "name": "Format string for the Thread level (thread_format)",
                    "content": "Format string tin uses for Thread level representation. See the section \"CUSTOMIZING  THE\nSCREEN FORMAT\". Default is \"%n %m  [%L]  %T  %F\".\n"
                },
                {
                    "name": "Matchingness of a thread (thread_perc)",
                    "content": "How  closely  the  subjects  must match for two threads to be considered part of the same\nthread. This is a percentage and the default if 75%.\n"
                },
                {
                    "name": "Score of a thread (thread_score)",
                    "content": "How the total score of a thread is computed. Default is 0,  the  maximum  score  in  this\nthread.\n\n0  Max, the maximum score in this thread.\n\n1  Sum, the sum of all scores in this thread.\n\n2  Average, the average score in this thread.\n"
                },
                {
                    "name": "CA certificate file (tls_ca_cert_file)",
                    "content": "The   name   of file containing all trusted CA certificates used for NNTPS (RFC8143) con‐\nnections. If left  empty  the system default will be used.\n"
                },
                {
                    "name": "Transliteration (translit)",
                    "content": "If ON append //TRANSLIT to the first argument of iconvopen(3) to enable transliteration.\nThis means that when a character cannot be represented in the target  character  set,  it\ncan be approximated through one or several similarly looking characters. On systems where\nthis extension doesn't exist, this option is disabled. Default is OFF.\n"
                },
                {
                    "name": "How to treat blank lines (trim_article_body)",
                    "content": "Allows  you  to  select how tin treats blank lines in article bodies.  Default is 0. This\noption does not affect lines within verbatim blocks.\n\n0  Don't trim article body, do nothing.\n\n1  Skip leading blank lines.\n\n2  Skip trailing blank lines.\n\n3  Skip leading and trailing blank l., skip leading and trailing blank lines.\n\n4  Compact multiple between text, replace multiple blank lines between text blocks  with\none blank line.\n\n5  Compact multiple and skip leading, 4 + 1\n\n6  Compact multiple and skip trailing, 4 + 2\n\n7  Compact mltpl., skip lead. & trai., 4 + 3\n"
                },
                {
                    "name": "Suppress soft hyphens (suppress_soft_hyphens)",
                    "content": "If  ON remove soft hyphens in non verbatim blocks of articles in UTF-8 when they are dis‐\nplayed in a UTF-8 locale. The character SOFT HYPHEN (U+00AD) is an invisible format char‐\nacter that merely indicates a preferred intraword line break position. However, some ter‐\nminal emulators display a space or a hyphen, for example, in the place of  the  soft  hy‐\nphen. This setting can be used to improve the display of those articles. Default is OFF.\n"
                },
                {
                    "name": "Regex used to highlight _underline_ (underscores_regex)",
                    "content": "A  regular  expression that will be applied when reading articles. All matching words are\nshown in colmarkdash or monomarkdash. If underscoresregex is blank, then  tin  uses  a\nbuilt-in default.\n"
                },
                {
                    "name": "Remove ~/.article after posting (unlink_article)",
                    "content": "If ON remove ~/.article after posting. Default is ON.\n"
                },
                {
                    "name": "Program that opens URLs (url_handler)",
                    "content": "The  program that will be run when launching URLs in the article viewer using PageViewUrl\n('U'). The actual URL will be appended.  Default is urlhandler.pl.\n"
                },
                {
                    "name": "URL highlighting in message body (url_highlight)",
                    "content": "Enable highlighting URLs in message body. Default is ON.\n"
                },
                {
                    "name": "Use ANSI color (use_color)",
                    "content": "If enabled tin uses ANSI-colors. Default is OFF.\n"
                },
                {
                    "name": "Use scroll keys on keypad (use_keypad)",
                    "content": "Default is OFF.\n"
                },
                {
                    "name": "Use mouse in xterm (use_mouse)",
                    "content": "Allows the mouse button support in an xterm(1x) to be enabled/disabled.  Default is OFF.\n"
                },
                {
                    "name": "Use slrnface to show ''X-Face:''s (use_slrnface)",
                    "content": "If enabled tin uses slrnface(1) to interpret the ''X-Face:'' header. For this  option  to\nhave  any  effect,  tin  must  be running in an xterm(1x) and slrnface(1) must be in your\n$PATH. Default is OFF.\n"
                },
                {
                    "name": "Use UTF-8 graphics (utf8_graphics)",
                    "content": "If ON use UTF-8 characters for indicator  ('->'),  thread/attachment  tree  and  ellipsis\n('...'). Default is OFF.\n"
                },
                {
                    "name": "Regex for begin of a verbatim block (verbatim_begin_regex)",
                    "content": "A regular expression that tin will use to find the begin of a verbatim block.\n"
                },
                {
                    "name": "Regex for end of a verbatim block (verbatim_end_regex)",
                    "content": "A regular expression that tin will use to find the end of a verbatim block.\n"
                },
                {
                    "name": "Detection of verbatim blocks (verbatim_handling)",
                    "content": "If ON verbatim blocks will be detected. Default is ON.\n"
                },
                {
                    "name": "Wildcard matching (wildcard)",
                    "content": "Allows  you  to  select how tin matches strings. The default is 0 and uses the wildmat(3)\nnotation, which is how this has traditionally been handled.  Setting this to 1 allows you\nto use perl(1) compatible regular expressions pcre(3) or pcre2(3) (see also perlre(1) and\npcrepattern(3) or pcre2pattern(3)).  You will probably want to update your filter file if\nyou use this regularly.  NB: Newsgroup names will always be matched using the  wildmat(3)\nnotation.\n"
                },
                {
                    "name": "What to display instead of mark (word_h_display_marks)",
                    "content": "Should  the leading and ending stars, slashes, strokes and dashes also be displayed, even\nwhen they are highlighting marks?\n\n0  no\n\n1  yes, display mark\n\n2  print a space instead\n"
                },
                {
                    "name": "Word highlighting in message body (word_highlight)",
                    "content": "Enable  word  highlighting.  See  wordhdisplaymarks  for  the  options  available.  If\nusecolor  is  enabled  the colors specified in colmarkdash, colmarkslash, colmarkstar\nand colmarkstroke are used for word highlighting else the character attributes specified\nin monomarkdash, monomarkslash, monomarkstar and monomarkstroke are used. Default  is\nON.\n"
                },
                {
                    "name": "Page line wrap column (wrap_column)",
                    "content": "Sets  the  column  at which a displayed article body should be wrapped.  If this value is\nequal to 0, it defaults to the current screen width.  If this value is greater than  your\ncurrent  screen width the part off-screen is not displayed. Thus setting this option to a\nlarge value can be used to disable wrapping. If this value is negative the wrap margin is\nthe current screen width plus the given value (as long as the result is  still  positive,\notherwise  it  will fall back to the current screen width). Default is 0, wrapping at the\ncurrent screen width.\n"
                },
                {
                    "name": "Quote line when crossposting (xpost_quote_format)",
                    "content": "Format is the same as for newsquoteformat, this is used when answering to a  crosspost‐\ning to several groups with no ''Followup-To:'' set.\n\nATTRIBUTES MENU AND GROUP ATTRIBUTES\ntin  allows  certain  attributes to be set on a per group basis. If it exists, the global at‐\ntributes file, ${TINLIBDIR:-NEWSLIBDIR}/attributes is read. After that, the user's  own  at‐\ntributes file ${TINHOMEDIR:-\"$HOME\"}/.tin/attributes is read.  The global attributes file is\nuseful for distributing system-wide defaults to new users who have no private attributes file\nyet.\n\nNote  that the scope=<grouplist> line has to be specified before the attributes are specified\nfor that list. All attributes are set to a reasonable default so you only have to specify the\nattribute that you want to change (e.g., savedir). All toggle attributes are set by  specify‐\ning  ON/OFF. Otherwise, these function exactly the same as their global equivalents. For more\ndetails see tin(5).\n\nAttributes can also be changed from the attributes menu which can be accessed  by  ConfigTog‐\ngleAttrib  ('<TAB>')  from  the  options menu or ScopeSelect ('^J' or '<CR>') from the scopes\nmenu.  The attributes menu looks and behaves very similar to  the  options  menu.  The  title\nshows  the current scope. Attributes set in the current scope are marked with '+' to the left\nof the attributes number.\n\nBesides the keys for moving around and changing values known from the options  menu  the  at‐\ntributes  menu  provides  the  following command: ConfigResetAttrib ('r') which resets an at‐\ntribute to a default value.\n\nSCOPES MENU\nThe scopes menu (accessible from the options  menu  with  ConfigScopeMenu  ('S'))  shows  all\nscopes  read  from  the  global and local attributes file.  Scopes from the global attributes\nfile are marked with '!' to the left of the scope number. Delete/rename/move are not possible\nwith those scopes.\n\nIn addition to the common moving keys the following commands are available: ScopeSelect ('^J'\nor '<CR>') enter the attributes menu for the  current  scope,  ScopeEditAttributesFile  ('E')\nedit  the local attributes file, ScopeAdd ('a') add a new scope, ScopeDelete ('d') delete the\ncurrent scope, ScopeMove ('m') move the current scope to a new  position,  ScopeRename  ('r')\nrename the current scope. ToggleHelpDisplay ('H') toggles the help mini menu at the bottom of\nthe screen and posting etiquette after composing an article (beginnerlevel).\n\nFILTERING ARTICLES\nWhen  there  is  a subject or an author which you are either very interested in, or find com‐\npletely uninteresting, you can easily instruct tin to auto-select or auto-kill articles  that\nmatch  rules that you specify. This can be anything from the name of the author to the number\nof lines in an article.\n\nWhen tin starts up the user's kill-file ${TINHOMEDIR:-\"$HOME\"}/.tin/filter (see also tin(5))\nis read. Each time a newsgroup is entered the rules are applied and articles  killed  or  se‐\nlected when they meet certain criteria.\n\nThe  degree  to  which  rules  are applied depend on the killlevel tinrc setting. By default\nkilled articles will only be marked read. Adjust killlevel for more  aggressive  processing.\nArticles that match an auto-selection rule are marked with a ''*''.\n\nFiltering  rules  can be manually entered into ${TINHOMEDIR:-\"$HOME\"}/.tin/filter (but don't\ndo this whilst running tin else you will lose your changes) or by  using  an  on-screen  menu\nwithin tin.\n\nThe  filtering capabilities of tin have been significantly enhanced over previous versions to\ninclude scoring and better pattern matching. It is recommended that you read the file filter‐\ning in the tin documentation directory. This file can also be read online at\n<http://www.tin.org/filtering.txt>.\n\nThe on-screen filtering menu is accessed by pressing MenuFilterKill ('^K')  or  MenuFilterSe‐\nlect  ('^A') at the Group and Article levels. It allows the user to kill or select an article\nthat matches the current ''Subject:'' line, ''From:'' line or a string entered by  the  user.\nThe  user  entered string can be applied to the ''Subject:'' or ''From:'' line of an article.\nThe filter can be limited to the current newsgroup or it can apply to  all  newsgroups.  Once\nentered the user can abort the command and not save the new filter, edit the full filter file\nor save filter.\n\nPOSTING ARTICLES\ntin  allows  posting  of  articles,  follow-up to already posted articles and replying direct\nthrough mail to the author of an article.\n\nUse the Post ('w') command to post an article to a newsgroup.  After entering the  post  sub‐\nject the default editor (i.e., vi(1)) or the editor specified by the $VISUAL or $EDITOR envi‐\nronment variable will be started and the article can be entered. To crosspost articles simply\nadd  a  comma  and the name of the newsgroup(s) to the end of the ''Newsgroups:'' line at the\nbeginning of the article. After saving and exiting the editor you are asked if  you  wish  to\na)bort  posting  the  article,  e)dit the article again or p)ost the article to the specified\nnewsgroup(s).\n\nUse the DisplayPostHist ('W') command to display a history of the articles you  have  posted.\nThe  date the article was posted, which newsgroups the article was posted to and the articles\nsubject line are displayed. See the section \"POSTING HISTORY LISTING\" for more information.\n\nUse the PageFollowupQuote ('f'), PageFollowup ('F') or PageFollowupQuoteHeaders  ('^W')  com‐\nmand  to post a follow-up article to an already posted article. The PageFollowupQuote command\nwill copy the text of the original article into the editor. The PageFollowupQuoteHeaders com‐\nmand will copy the text and all headers of the original article into the editor. The  editing\nprocedure is the same as when posting an article with the Post ('w') command.\n\nUse  the PageReplyQuote ('r'), PageReply ('R') or PageReplyQuoteHeaders ('^E') command to re‐\nply direct through mail to the author of an already posted article. The  PageReplyQuote  com‐\nmand  will  copy  the text of the original article into the editor. The PageReplyQuoteHeaders\ncommand will copy the text and all headers of the original article into the editor. The edit‐\ning procedure is the same as when posting an article with the Post ('w') command. After  sav‐\ning  and  exiting  the  editor  you  are  asked  if you wish to abort sending the article via\nPostAbort ('a'), edit the article again via PostEdit ('e') or send the article to the  author\nvia PostSend ('s').\n\nCUSTOMIZING THE ARTICLE QUOTE STRING\nWhen  posting  a  followup  to  an article or replying direct to the author of an article via\nemail the text of the article can be quoted. The beginning of the quoted text can contain in‐\nformation about the quoted article (e.g., Name and the Message-ID of the article).  To  allow\nfor  different  situations  certain  information  from  the article can be used in the quoted\nstring. The following variables are expanded if found in the tinrc variables  mailquotefor‐\nmat, newsquoteformat or xpostquoteformat:\n%A  Address (Email)\n%D  Date (uses dateformat)\n%F  Full address (%N <%A>)\n%G  Groupname\n%M  Message-ID\n%N  Fullname of author\n%C  Firstname of author\n%I  Initials of author\ne.g.,\nmailquoteformat=On %D in %G you wrote:\nnewsquoteformat=In %M, %F wrote:\nwould expand to:\nOn 21 Sep 1993 09:45:51 -0400 in alt.sources you wrote:\nIn <abcINN123@example.org>, Joe Bar <joe@example.org> wrote:\nThe  quoted text section of an article is marked by a preceding quote string at the beginning\nof each quoted line. The default quote string is set to '>'. The default can be  changed  by\nsetting  the  tinrc  variable quotechars to ones own preference. (Note that '' underline is\nused to represent a space).\n"
                },
                {
                    "name": "MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES",
                    "content": "The command interface to GroupMail, PageMail, PostMail or ThreadMail ('m'), Pipe ('|'), Print\n('o'), PageRepost or GroupRepost  ('x')  and  GroupSave,  PageSave  or  ThreadSave  ('s'  and\nGroupAutoSave, PageAutoSave or ThreadAutoSave 'S') articles is the same for ease of use.\n\nAuto-saving with *AutoSave ('S') is a special case and operates only on marked articles. They\nwill processed without any further prompting according to the default save parameters defined\nin tinrc or by any attributes set for the current group.\n\nOtherwise,  the  initial  prompt  will ask you to select which article, thread, hot (auto-se‐\nlected), regular expression pattern, tagged articles you wish to mail, pipe etc.\n\nTagged articles must have already been tagged with a *Tag ('t') command. All tagged  articles\ncan be untagged by a *Untag ('U') untag command.\n\nIf  a regular expression pattern is selected you are asked to enter a pattern (e.g., to match\nall articles subject lines containing 'net News' you enter \"net  News\").  Any  articles  that\nmatch  the entered expression will be mailed, piped etc. See also the wildcard tinrc variable\nfor advanced pattern matching options.\n\nVarious expansion characters are recognized when entering the directory and file to save  to.\nEnvironment  variables  (prefixed  with  '$')  and  user home directories (prefixed by '~' or\n'~username') can be specified.  Environment variables can themselves  contain  other  special\ncharacters.\n\nTo  save  articles  to a mailbox enter '=<mailbox name>' when asked for the save filename. If\nyou enter just '=' then articles will be saved to a mailbox with  the  name  of  the  current\nnewsgroup (eg, alt.sources).  See maildir.\n\nTo  save  in  savedir/<news.group.name>/<filename>  format enter '+<filename>'.  See savedir.\nLike '+' %G is expanded to the current news.group.name but without savedir  prefixed.  %P  is\nexpanded to the news.group.name with all '.' replaced by '/'.\n\nIf  saving  multiple  files  at once the filename (if not referring to a mailbox) will be ex‐\ntended by \".num\" where \"num\" is at least 3 digit number counting up from 1. Environment vari‐\nables are allowed within a filename (e.g., $SOURCES/dir/filename).\n\nWhen saving articles you can specify whether the saved files should be post processed. A  de‐\nfault process type can be set via postprocesstype.\n\nAUTOMATIC MAILING AND SAVING NEW NEWS\ntin  allows new/unread news articles to be mailed (''-M'' and ''-N'' option) or saved (''-S''\noption) in batch mode for later reading. Useful when going on holiday and you don't  want  to\nreturn  and  find  that  expire  has removed a whole load of unread articles. Best to run via\ncron(8) everyday while away, after which you will be mailed a report of which  articles  were\nmailed/saved  from  which  newsgroups and the total number of articles mailed/saved. Articles\nare saved in a private news structure under your savedir directory  (default  is  ${TINHOME‐\nDIR:-\"$HOME\"}/News).  Be careful of using this option if you read a lot of groups because you\ncould overflow your file system.\n\nWhen using ''-S'' together with a given directory to save to (''-s'' option), the same direc‐\ntory must be specified when reading the articles by ''-R''.\n\nIf  you only want to save some of your groups use the batchsave tinrc variable. Set to ON or\nOFF in tinrc to enable/disable saving of all groups and then use the batchsave attribute  to\nfine  tune which groups you want to have saved. For example, if you want to save most of your\ngroups, then set batchsave to ON in tinrc and selectively turn off the ones you  don't  want\nusing attributes.\n"
                },
                {
                    "name": "tin -M iain -c -f newsrc.mail",
                    "content": "(mail  any unread articles in newsgroups specified in file newsrc.mail to\nthe local user iain and mark them as read)\n"
                },
                {
                    "name": "tin -S -c -f newsrc.save",
                    "content": "(save any unread articles in newsgroups specified in file newsrc.save and\nmark them as read)\n\ntin -R              (read any articles saved by tin -S)\n\nRANGES\nA range is simply a group of items marked using the SetRange ('#') key. Certain tin  commands\nwill  operate  on  a range if one exists rather than just the current item. A range is an ex‐\npression of the form <min>–<max>, e.g. 10–15 will highlight items 10 through 15 on  the  cur‐\nrent  screen.  Other than absolute numeric positions, '.' can be used in place of the current\ncursor position and '$' can be used to mean the highest number available. Entering '0' at the\nprompt undoes the previously entered range selection. Currently the only commands that under‐\nstand ranges are GroupMarkThdRead ('K'), MarkArtUnread ('z') and MarkThdUnread ('Z').\n"
                },
                {
                    "name": "NEWSGROUP LISTS & WILDCARDS",
                    "content": "Several places in tin allow you to specify a list of newsgroups. These  include  command-line\ngroups, (un)subscribe groups, the AUTO[UN]SUBSCRIBE mechanism. The scope= attributes file tag\nand  the  filter file group= tag also use the same syntax. tin interprets this variable simi‐\nlarly to rn(1).  It contains a list of patterns, separated by commas  and  possibly  prefixed\nwith exclamation points. An exclamation point negates the meaning of a match on this pattern,\nand  can  be  used to cancel certain matches. See wildmat(3) for details about the understood\npatterns. Some examples:\n\nalt.config,news.*,!news.test\n\nMatches alt.config and everything in the 'news' hierarchy except news.test\n\nSee the explanation for the $AUTOSUBSCRIBE and $AUTOUNSUBSCRIBE variables for  further  exam‐\nples.\n\nSIGNATURES\ntin  will  recognize  a signature in either ${TINHOMEDIR:-\"$HOME\"}/.signature or ${TINHOME‐\nDIR:-\"$HOME\"}/.Sig.  If ${TINHOMEDIR:-\"$HOME\"}/.signature exists, then the signature will be\npulled into the editor for mail commands only. A signature in ${TINHOMEDIR:-\"$HOME\"}/.signa‐\nture will not be pulled into the editor for posting commands since inews(1) will  append  the\nsignature itself.\n\nA  signature  in ${TINHOMEDIR:-\"$HOME\"}/.Sig will be pulled into the editor for both posting\nand mailing commands.\n\nThe following is an example of a .Sig file:\nNAMES  Joe Bar <joe@example.org>\nSNAIL  Musterweg 12, 99999 Notreal, Germany\n\ntin also has the capability to generate random signatures on a per newsgroup basis if so  de‐\nsired.  The way to accomplish this is to specify the default signature or the group attribute\nsigfile as a directory. If for example the sigfile path is /usr/iain/.sigs and .sigs is a di‐\nrectory then tin will select a random signature from any file that is in the directory  .sigs\n(note:  one signature per numbered file). A random signature can also consist of a fixed part\nsignature that can contain your name, address etc. followed by the random sig. The fixed part\nof the random sig is read from the file $HOME/.sigfixed.\n\nCUSTOMIZING THE SCREEN FORMAT\nThe look of the Selection, Group and Thread level can be customized via format strings. These\nformat strings define the content and the position of each element on the  screen.  Variables\nare used within the format strings as placeholders. The following variables are available:\n\n%D    date\n%F    from, name and/or address\n%G    newsgroup name\n%I    initials\n%L    line count\n%M    message-id\n%R    number of responses in thread\n%S    score\n%T    thread tree\n%U    unread count\n%d    newsgroup description\n%f    newsgroup flag\n%m    article marks\n%n    current group/thread/article number\n%s    subject\n%%    %\n\nNot all variables can be used in each level. The following table provides an overview:\n\nselectformat groupformat threadformat\n%D                      X            X\n%F                      X            X\n%G        X\n%I                      X            X\n%L                      X            X\n%M                      X            X\n%R                      X\n%S                      X            X\n%T                                   X\n%U        X\n%d        X\n%f        X\n%m                      X            X\n%n        X             X            X\n%s                      X\n%%        X             X            X\n\nDefaults for the format strings:\n\nselectformat: \"%f %n %U  %G  %d\"\ngroupformat:  \"%n %m %R %L  %s  %F\"\nthreadformat: \"%n %m  [%L]  %T  %F\"\n\nshowdescription  controls whether the newsgroup description is shown or not. The description\ncan also be toggled with SelectToggleDescriptions ('d').\n\nThe information displayed with '%F' depends on the value of showauthor.  GroupToggleSubjDis‐\nplay resp.  ThreadToggleSubjDisplay ('d') switches through all available options.\n\nFor  date  representation  '%D'  uses dateformat. It is possible to specify a different date\nformat in round brackets (e.g. '%(%d %b %y %H:%M)D'). See dateformat for more details.\n\nThe length of each item (except '%%') can be defined with a positive number  after  the  '%'.\nThe following example displays the score in the thread level 10 characters wide: '%10S'.\n\nIf  the newsgroup name is displayed together with the newsgroup description, the width of the\nnewsgroup name can  be  controlled  via  an  optional  comma  separated  second  value  (e.g.\n'%60,20G').  It  is  valid  to  omit  the first value (e.g. ('%,20G')). If no second value is\ngiven, tin uses a default value of 32.\n\nSome variables do have a default width which may lead to truncation.   Truncation  for  vari‐\nables which contain only numbers happens by dividing the value with a sufficient power of ten\nand  adding  a  SI  suffix to the result, that is the variable holds a value of 54321 and the\nwidth for the variable is 4 the result will be \"54 k\". If that's undesired you have to  spec‐\nify a larger width manually, e.g. '%6n'. Here is an overview of the defaults:\n\nVariable  width\n%I         3\n%L         4\n%M        10\n%R         3\n%S         6\n%U         5\n%n         4\n\nIf  no  length  is given for '%D', the length is determined by the format string for the date\nand the date of the current day. If the date format string contains weekdays or months  names\nit  may  happen  that the date is longer than determined in the first pass. In this case, the\ndate is truncated before display. This occurs, for example, if the current month is  May  and\nthe  article  to  which  the date is displayed was posted in December. In such cases it might\nuseful to determine the maximum length manually and specify the length in the format string.\n\nIn case the format string contains '%G' and '%d' and no length are given, tin determines  the\nlongest newsgroup name and uses this length for '%G'. The remaining space will used for '%d'.\n\nWhen  the  format  string  contains  the specifier '%F' and '%s' resp. '%T' and no length are\ngiven, '%F' will use one third and '%s' resp. '%T' will use two third of the available space.\n\nIn addition, a minimum screen width can be defined for each item (except '%%'). In this case,\nthe item will only be displayed when the screen is wider than specified. This comes in  handy\nto  not  overload  a small screen but have maximum information on a large screen. The minimum\nscreen width has to be specified by a positive number preceded by an '>'.  In  the  following\nexample tin will display the score only if the screen is wider than 100 characters: '%>100S'.\n\nIf  both  the length and the minimum screen width should be specified for an item, the length\nmust be the first parameter and the minimum screen width must be the second one. The  follow‐\ning  example  displays  the  score with a length of 10 characters only if the screen is wider\nthan 100 characters: '%10>100S'.\n\nThe look of the Attachment level and the mime and uue header at Page level can be  customized\ntoo via format strings.  The following variables are available:\n\n%C    Charset\n%c    Like %C but with description\n%D    Line count\n%d    Like %D but with description\n%E    Content encoding\n%e    Like %E but with description\n%I    Complete/incomplete UUE part indicator\n%L    Language\n%l    Like %L but with description\n%N    Name\n%n    Like %N but with description\n%S    Content subtype\n%s    Like %S but with description\n%T    Content type\n%t    Like %T but with description\n%Z    Size in bytes\n%z    Like %Z but with description\n%%    %\n\nNot all items can be used in each variable. The following table provides an overview:\n"
                },
                {
                    "name": "attachment_format page_mime_format  page_uue_format",
                    "content": "%C   X                 X\n%c   X                 X\n%D   X                 X                X\n%d   X                 X                X\n%E   X                 X                X\n%e   X                 X                X\n%I                                      X\n%L   X                 X\n%l   X                 X\n%N                     X                X\n%n                     X                X\n%S   X                 X                X\n%s   X                 X                X\n%T   X                 X                X\n%t   X                 X                X\n%Z   X                 X                X\n%z   X                 X                X\n%%   X                 X                X\n\nBy  default,  the  string is not truncated. If it exceeds the screen width, it is wrapped. If\nthe % sign is followed by an exclamation mark ('!') for uppercase  letters,  the  element  is\nomitted  if  there  is not enough space. If the % sign is followed by an asterisk ('*') for a\nlowercase letter, the description is omitted if there is not enough space. If the %  sign  is\nfollowed  by  an  exclamation  mark  ('!') for a lowercase letter, the description is omitted\nfirst and then the content. The shortening is always from right to left, first  the  descrip‐\ntion  is omitted and when no more description is displayed, the content is omitted. If %T and\n%S follow each other directly a '/' will be inserted in between. %Z will always have one dec‐\nimal point and may have a one letter bi-suffix.\n\nDefaults for the format strings:\n\nattachmentformat:           \"%T%S%E%C%d\"\npagemimeformat:            \"[-- %T%S%*n%z%*l%!c%!d%*e --]\"\npageuueformat:             \"[-- %T%S%*n%I%!d%*e --]\"\n\nTIPS AND TRICKS\ntin can be pretty much be navigated by using the four cursor keys.  The left arrow  key  goes\nup  a  level,  the right arrow key goes down a level, the up arrow key goes up a line and the\ndown arrow key goes down a line.\n\nThe following newsgroups provide useful information concerning news software:\n—news.software.readers (info. about news user agents tin, rn, nn, slrn etc.)\n—news.software.nntp (info. about NNTP)\n—news.answers (Frequently Asked Questions (FAQ) about many different themes)\n\nMany prompts within tin offer a default choice that the cursor is positioned on. By  pressing\n'<CR>' the default value is taken.  Most prompts can be aborted by pressing '<ESC>'.\n\nWhen tin is run in an xterm(1x) it will resize itself each time the xterm(1x) is resized.\n\ntin  will reread the ${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVEFILE:-active} file at set inter‐\nvals (rereadactivefilesecs) to show any newly arrived news.\n\nIf you find large number of new newsgroups cluttering up  your  screen,  pressing  SelectTog‐\ngleReadDisplay ('r') will make them go away.\n\nXTERM BUTTONS\nIf  the  environment  variable $TERM is set to xterm(1x), then button pressing can be used to\nselect groups and articles. In this discussion, the buttons are assumed to be  assigned  con‐\nventionally (i.e., Button1 is the left button).\n\nIn general (i.e., for the group, thread and article menus),\n\nButton1 (left)\nenters next (lower) level if you click on an article, otherwise pages down.\n\nButton2 (center)\nreturns  to  the previous (upper) level if you click on an article, otherwise pages\nup.\n\nButton3 (right)\npositions on the article line under mouse cursor, or pages down if  you've  clicked\noutside the list of articles.\n\nIn the group selection menu, if the mouse is pointing at a group then:\n\nleft button\nmoves to and selects the group pointed at, just like SelectReadGrp ('<CR>').\n\ncenter button\nquits the program, just like Quit ('q').\n\nright button\nmoves to the group pointed at.\n\nIn the article menu, if the mouse is pointing at an article (or thread) then:\n\nleft button\nreads  the article pointed at, just like GroupReadBasenote ('<CR>'), or the thread,\njust like GroupListThd ('l').\n\ncenter button\nexits the menu, catching up on the group if you have groupcatchuponexit  set  in\nyour configuration, just like Quit ('q').\n\nright button\nmoves to the article (or thread) pointed at.\n\nIn the thread menu, if the mouse is pointing at an article then:\n\nleft button\nreads article pointed at, just like ThreadReadArt ('<CR>').\n\ncenter button\nexits the menu, catching up on the thread if you have threadcatchuponexit set in\nyour configuration, just like Quit ('q').\n\nright button\nmoves to the article pointed at.\n\nIn  other  menus  and areas button pressing reverts back to usual cut and paste of xterm(1x),\nbut after one click of any button.\n\nINDEX FILES\nIf your news server supports NOV index files (see newsoverview(5), most modern  installations\nwill) and you have a fast connection to your news server then this section can be ignored.\n\nIf  your  news  server  doesn't support NOV index files or you have a very slow connection to\nyour news server then tin can cache the index for each newsgroup if  cacheoverviewfiles  is\nset  to ON.  Note that this cache can use up large amounts of disk space if you read a lot of\ngroups and/or high traffic groups.\n\nEach user creates/updates his/her own  index  files  that  are  stored  in  ${TININDEXNEWS‐\nDIR:-\"${TINHOMEDIR:-\"$HOME\"}/.tin\"}/.news/. If you are reading via NNTP then the news server\nname  will be appended to keep the indexes for different servers separate. If you are reading\noff the local spool and local overview files already exist then turning on caching will  have\nno  effect. Likewise unless you see significant delays entering a group when reading via NNTP\nthen turning on caching will have little or no effect.\n\nEntering a group the first time tends to be slow because the index file must  be  built  from\nscratch.  To  alleviate  the  slowness start tin to create all index files for the groups you\nsubscribe to with tin -u -v and go for a coffee. Subsequent readings of  a  group  will  only\nneed  to  do incremental updating of the index file and will be much faster as only new arti‐\ncles will need to be cached.\n\nAs indexing might take some time you may want to run tin from the system batcher cron(8) with\nthe ''-u'' option:\n\n30 6 * * * /usr/local/bin/tin -u\n\nIf you are low on local disk space you should consider to  manually  purge  cached  data  for\ngroups you are not reading anymore with something like:\n\nfind ${TININDEXNEWSDIR:-\"${TINHOMEDIR:-\"$HOME\"}/.tin\"}/.news* \\\n-type f -name \"[0-9]*.[0-9]\" -atime +28 | xargs rm -f\n"
                }
            ]
        },
        "FILES": {
            "content": "For a detailed description see tin(5).\n\n$MAILCAPS\n~/.mailcap\n/etc/mailcap\n/usr/etc/mailcap\n/usr/local/etc/mailcap\n/etc/mail/mailcap\n\n/etc/news/server\n\n${TINHOMEDIR:-\"$HOME\"}/.cancelsecret\n\n${TINHOMEDIR:-\"$HOME\"}/.mime.types\n/etc/mime.types\n/etc/tin/mime.types\n\n${TINHOMEDIR:-\"$HOME\"}/.newsauth\n\n${TINHOMEDIR:-\"$HOME\"}/.newsrc\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/$NNTPSERVER${NNTPPORT:+\":$NNTPPORT\"}/.oldnewsrc\n\n${TINHOMEDIR:-\"$HOME\"}/.signature\n${TINHOMEDIR:-\"$HOME\"}/.Sig\n\n${TINHOMEDIR:-\"$HOME\"}/.sigfixed\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/.inputhistory\n\n${TININDEXMAILDIR:-\"${TINHOMEDIR:-\"$HOME\"}/.tin\"}/.mail/\n\n${TININDEXNEWSDIR:-\"${TINHOMEDIR:-\"$HOME\"}/.tin\"}/.news${NNTPSERVER:+\"-$NNTPSERVER\"}/\n\n${TININDEXSAVEDIR:-\"${TINHOMEDIR:-\"$HOME\"}/.tin\"}/.save/\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/active.mail\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/active.save\n\n/etc/tin/attributes\n${TINHOMEDIR:-\"$HOME\"}/.tin/attributes\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/filter\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/keymap${${LCALL:-\"${LCMESSAGES:-\"${LCCTYPE:-\"$LANG\"}\"}\"}:+\".${LCALL:-\"${LCMESSAGES:-\"${LCCTYPE:-\"$LANG\"}\"}\"}\"}\n/etc/tin/keymap${${LCALL:-\"${LCMESSAGES:-\"${LCCTYPE:-\"$LANG\"}\"}\"}:+\".${LCALL:-\"${LCMESSAGES:-\"${LCCTYPE:-\"$LANG\"}\"}\"}\"}\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/mailgroups\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/newsrctable\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/posted\n\n${TINHOMEDIR:-\"$HOME\"}/Mail/posted\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/postponed.articles\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/$NNTPSERVER${NNTPPORT:+\":$NNTPPORT\"}/newsgroups\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/$NNTPSERVER${NNTPPORT:+\":$NNTPPORT\"}/serverrc\n\n${TINHOMEDIR:-\"$HOME\"}/.tin/$NNTPSERVER${NNTPPORT:+\":$NNTPPORT\"}/msglog\n\n/etc/tin/tinrc\n${TINHOMEDIR:-\"$HOME\"}/.tin/tinrc\n\n/etc/tin/tin.defaults\n\n/usr/local/share/locale/${LCMESSAGES}/LCMESSAGES/tin.mo\n\n${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVEFILE:-active}\n\n${TINLIBDIR:-NEWSLIBDIR}/active.times\n\n${TINLIBDIR:-NEWSLIBDIR}/newsgroups\n\n${TINLIBDIR:-NEWSLIBDIR}/organization\n\n${TINLIBDIR:-NEWSLIBDIR}/overview.fmt\n\n${TINLIBDIR:-NEWSLIBDIR}/subscriptions\n",
            "subsections": []
        },
        "ENVIRONMENT": {
            "content": "TINRC  Define  this  variable  if you want to specify command-line options that tin should be\nstarted with to save typing them each time it is started. The contents of the environ‐\nment variable are added to the front of the command-line options before it  is  parsed\ntherefore allowing an option specified on the command-line to override the same option\nspecified in the environment.\n\nTINHOMEDIR\nDefine  this  variable  if  you do not want the .tin directory in $HOME/. E.g., if you\nwant all tin's private files in /tmp/.tin you would set $TINHOMEDIR to /tmp.\n\nTININDEXNEWSDIR\nDefine  this  variable  if  you  do  not  want  the  .news  directory  in  ${TINHOME‐\nDIR:-\"$HOME\"}/.tin/.  E.g.,  if  you want all tin's news index files in /tmp/.news you\nwould set $TININDEXNEWSDIR to /tmp.\n\nTININDEXMAILDIR\nDefine  this  variable  if  you  do  not  want  the  .mail  directory  in  ${TINHOME‐\nDIR:-\"$HOME\"}/.tin/.  E.g.,  if  you want all tin's mail index files in /tmp/.mail you\nwould set $TININDEXMAILDIR to /tmp.\n\nTININDEXSAVEDIR\nDefine  this  variable  if  you  do  not  want  the  .save  directory  in  ${TINHOME‐\nDIR:-\"$HOME\"}/.tin/.  E.g.,  if  you want all tin's save index files in /tmp/.save you\nwould set $TININDEXSAVEDIR to /tmp.\n\nTINLIBDIR\nDefine this variable if you want to override the NEWSLIBDIR  path  that  was  compiled\ninto the tin binary, default is /usr/lib/news.  If tin is running in NNTP mode setting\nthis variable has no effect.\n\nTINSPOOLDIR\nDefine  this variable if you want to override the SPOOLDIR path that was compiled into\nthe tin binary, default is /var/spool/news.  If tin is running in  NNTP  mode  setting\nthis variable has no effect.\n\nTINNOVROOTDIR\nDefine  this  variable  if  you want to override the NOVROOTDIR path that was compiled\ninto the tin binary, default is SPOOLDIR (see above). If tin is running in  NNTP  mode\nsetting this variable has no effect.\n\nTINNOVFILENAME\nDefine  this variable if you want to override the OVERVIEWFILE filename that was com‐\npiled into the tin binary, default is .overview. If tin is running in NNTP  mode  set‐\nting this variable has no effect.\n\nTINACTIVEFILE\nDefine  this variable if you want to override the NEWSLIBDIR/active path that was com‐\npiled into the tin binary. If tin is running in NNTP mode setting this variable has no\neffect. If $TINLIBDIR is set it is prepended to $TINACTIVEFILE.\n\nNNTPSERVER\nThe default NNTP server to remotely read news from. This variable only needs to be set\nif the ''-r'' command-line option is specified and the file /etc/news/server does  not\nexist. The ''-g'' command line option overrides $NNTPSERVER.\n\nNNTPPORT\nThe  NNTP  TCP-port  to read news from. This variable only needs to be set if the TCP-\nport is not 119 (the default). The ''-p'' and ''-T'' command-line options do  override\n$NNTPPORT.\n\nDISTRIBUTION\nSet the article header field ''Distribution:'' to the contents of the variable instead\nof the system default.\n\nISO2ASC\nSet  the  ISO  to ASCII charset decoding table character to use in decoding an article\ntext. Values can range from -1 to 6.\n\n-1     no conversion\n\n0      universal table for many languages\n\n1      single-spacing universal table\n\n2      table for Danish, Dutch, German, Norwegian and Swedish\n\n3      table for Danish, Finnish, Norwegian and Swedish using the  appropriate  ISO  646\nvariant\n\n4      table with RFC1345 codes in brackets\n\n5      table for printers that allow overstriking with backspace\n\n6      table for IBM PC character set (code page 437)\n\nORGANIZATION\nSet the article header field ''Organization:'' to the contents of the variable instead\nof  the  system  default. If it points to a readable file a random line from that file\nwill be used. If reading news on an Apollo DomainOS machine the  environment  variable\n$NEWSORG has to be used instead of $ORGANIZATION.\n",
            "subsections": [
                {
                    "name": "NEWSORG (DomainOS)",
                    "content": "DomainOS specific, same as $ORGANIZATION on other OSs (see above).\n\nREPLYTO\nSet  the  article  header  field  ''Reply-To:'' to the return address specified by the\nvariable. This is useful if you wish to receive replies at a different address.\n\nNAME   Overrides the full name given in the gecos-field in  /etc/passwd,  see  also  mailad‐\ndress.\n\nREALNAME\nSame as $NAME.\n\nHOME   Pathname of the user's home directory. See environ(5) for more info.\n\nMAILER This variable has precedence over the default mailer that is used in all mailing oper‐\nations within tin.\n\nMAIL   Full path to the user's mailbox.\n\nVISUAL This variable has precedence over the default editor (i.e., vi(1)) that is used in all\nediting  operations  within tin (e.g., posting, replying, follow-ups, ...). Evaluation\norder is ${VISUAL:-\"${EDITOR:-vi}\"}. See environ(5) for more info.\n\nEDITOR If $VISUAL is unset, then this variable is looked up for a default editor. If  $EDITOR\nand  $VISUAL are both unset, tin uses the systems default editor (i.e.  vi(1) on UNIX-\nsystems). See environ(5) for more info.\n\nAUTOSUBSCRIBE\nA new group is checked against the list of patterns; if it matches, tin subscribes the\nuser to the group without further query.  See the section  \"NEWSGROUP  LISTS  &  WILD‐\nCARDS\" for an explanation of the valid syntax. For example, setting\n\nAUTOSUBSCRIBE=comp.os.unix.*,talk.*,!talk.politics.*\n\nwill automatically subscribe the user to all new groups in the comp.os.unix hierarchy,\nand  all  talk  groups  other  than talk.politics groups (which will be queried for as\nusual). Of course this does not work if tin is started with  the  ''-X''  command-line\nswitch.\n\nAUTOUNSUBSCRIBE\nIs  handled  like the $AUTOSUBSCRIBE variable, but groups matching the list are unsub‐\nscribed from without further query. For example, setting\n\nAUTOUNSUBSCRIBE=alt.flame.*,u*,!uk.*\n\nwill automatically unsubscribe the user from all new alt.flame groups and  all  groups\nstarting with u (university groups) other than UK groups (which will be queried for as\nusual).\n\nTMPDIR A pathname of a directory made available for tin to create temporary files.\n\nMAILCAPS\nThis  variable  can  be used to override the default path search for mailcap(5) files.\nSee also tin(5).\n\nNOMETAMAIL\nSet this variable to disable the use of metamail(1) or a replacement (e.g. metamutt).\n\nMMCHARSET\nMIME character set used if not configured via the tinrc variable mmcharset.\n\nISPELL Set this variable to point to ispell(1) or a replacement and its cmd-line options.\n\nPGPOPTS\nDefine any additional options that you wish to pass to your pgp(1) or gpg(1) program.\n\nPGPPATH\nOverride the name of the pgp(1) directory in $HOME that holds your keys etc..\n\nGNUPGHOME\nOverride the name of the gpg(1) directory in $HOME that holds your keys etc..\n\nLCCTYPE\nThis variable determines the locale(5) category for character handling functions. Usu‐\nally it determines the character classes for pattern matching character classification\nand case conversion. Currently this is  not  true  for  tin  (which  temporary  unsets\n$LCCTYPE  right before any match is done to avoid confusion).  Its value should be of\nthe form language[territory][.codeset][@modifier]. See environ(5) for  more  informa‐\ntion.\n\nLCMESSAGES\nFormats  of  informative and diagnostic messages and interactive responses.  Its value\nshould be of the form  language[territory][.codeset][@modifier].  See  locale(5)  and\nenviron(5) for more information.\n\nLCTIME\nDate  and  time  formats.  Its value should be of the form language[territory][.code‐\nset][@modifier]. See locale(5) and environ(5) for more information.\n\nLCALL This variable overrides the value of the $LANG variable and any other  $LC  variable.\nIts  value  should  be  of  the form language[territory][.codeset]. See locale(5) and\nenviron(5) for more information.\n\nLANG   This variable determines the locale(5) category for any category not specifically  se‐\nlected  with  a  variable  starting  with  $LC.  Its value should be of the form lan‐\nguage[territory][.codeset]. See environ(5) for more information.\n\nLANGUAGE\nThis variable defines a priority list for translations. Whenever a translation is  not\navailable  in  the  language  selected via $LCALL or $LANG the next language from the\nlist is tried. Its value should  be  of  the  form  language:language[:language].  See\nenviron(5) for more information.\n\nCOLUMNS\nA  decimal integer > 0 used to indicate the user's preferred width in column positions\nfor the terminal screen or window. If this variable is unset or null, the  implementa‐\ntion  determines  the  number of columns, appropriate for the terminal or window. When\n$COLUMNS is set, any terminal-width information implied by $TERM will  be  overridden.\nUsers  and  portable applications should not set $COLUMNS unless they wish to override\nthe system selection and produce output unrelated to the terminal characteristics.\n\nLINES  A decimal integer > 0 used to indicate the user's preferred number of lines on a  page\nor the vertical screen or window size in lines. A line in this case is a vertical mea‐\nsure  large enough to hold the tallest character in the character set being displayed.\nIf this variable is unset or null, the implementation determines the number of  lines,\nappropriate for the terminal or window. When $LINES is set, any terminal-height infor‐\nmation implied by $TERM will be overridden. Users and portable applications should not\nset $LINES unless they wish to override the system selection.\n\nTERM   The  type  of  terminal  in  use. This is used when looking up termcap sequences.  See\nenviron(5) for more information.\n\nDISPLAY\nDisplay name, pointing to the X server; required for xface.\n\nWINDOWID\nUsed for determining terminal's X window id; required for xface. Should be set by  the\nterminal emulator.\n\nSHELL  The pathname of the user's login shell. Used to set defaultshellcommand.\n\nXDGRUNTIMEDIR\nThe pathname of the user's dir to put non-essential run time files into.\n"
                }
            ]
        },
        "SIGNALS": {
            "content": "tin handles a couple of signals:\n\nSIGHUP Terminate gracefully.\n\nSIGTERM\nTerminate gracefully.\n\nSIGUSR1\nTerminate gracefully but do not restore terminal (tty).\n\nSIGUSR2\nWrite out ${TINHOMEDIR:-\"$HOME\"}/.newsrc-file.\n",
            "subsections": []
        },
        "SECURITY": {
            "content": "If  tin  is  started  in debug mode (''-D n'') it will create world readable files in $TMPDIR\nwhich may contain sensitive data like the users NNTP password in cleartext (if  running  ver‐\nbose).  On  multiuser-systems $TMPDIR should be set to a safe location before starting tin in\n(verbose) debug mode (e.g. TMPDIR=$HOME tin -vD 1).\n\nUsing the ''-k'' option to skip certificate verification makes the session  insecure  as  the\nserver's certificate is not checked; avoid this option whenever possible.\n\nIf the server does not initially require authentication but supports compression and compres‐\nsion  is  requested, tin will exit when authentication is required later on. Using the ''-A''\ncommand line option in conjunction with ''-C'' circumvents this behavior.\n",
            "subsections": []
        },
        "CONFORMING TO": {
            "content": "tin does conform to the Base Definitions volume of IEEE Std 1003.1-2008, Section 12,  Utility\nConventions (Utility Argument Syntax, Utility Syntax Guidelines).\n",
            "subsections": []
        },
        "NOTES": {
            "content": "Regular  expression support is provided by the PCRE library package pcre(3) or pcre2(3) which\nis open source software, written by Philip Hazel, and copyright © by the University  of  Cam‐\nbridge, England.\n<https://www.pcre.org/>\n",
            "subsections": []
        },
        "BUGS": {
            "content": "CNews NNTPd, noffle(1) (<= V1.0-pre5) and NewsCache (<= V1.1.91) can't handle pipelined GROUP\ncommands (RFC3977).  If you run into trouble with any of the mentioned historical servers de‐\nfine DISABLEPIPELINING in include/autoconf.h and recompile.\n\nUsing the ''-C'' (COMPRESS) flag with INN nnrpd versions between 2.6.1 and 2.7.1 (both incl.)\nmay  cause  tin to hang and later timeout when posting. This has been fixed in INN nnrpd ver‐\nsion 2.7.2. As a workaround simply don't use ''-C''.\n\nBefore mailing a bug-report to <tin-bugs@tin.org> please check if you are  using  the  latest\n(stable)  release,  and  if  not,  please upgrade first! Have a look at the doc/TODO file for\nknown bugs. If you still think you've found a bug, please use the  BugReport  ('R')  function\nand  write  in English. Please do NOT enclose a core-file in your bug-report until we request\nit.\n",
            "subsections": []
        },
        "HISTORY": {
            "content": "tin is based on the tass(1) newsreader that was developed  by  Rich  Skrenta  and  posted  to\nalt.sources  in  March 1991; its first version was released on August 23rd 1991.  tass(1) it‐\nself was heavily influenced by notesfiles a public domain UNIX version of PLATO Notes, devel‐\noped at the University of Illinois by Ray Essick and Rob  Kolstad  in  1982.  For  a  version\noverview see\n<http://www.tin.org/history.html>.\n",
            "subsections": []
        },
        "CREDITS": {
            "content": "Rich Skrenta\nauthor of tass(1) v3.2 which this newsreader used as its base.\n\nBill Davidsen\nauthor of envarg.c environment variable reading routine.\n\nMike Gleason\nauthor of sigfile.c random signature generation routines.\n\nMarkus Kuhn <Markus.Kuhn@cl.cam.ac.uk>\nauthor of langinfo.c, charset.c and iso2asc.txt ISO-8859-1 documentation.\n\nArnold Robbins\nauthor of strftime.c date formatting routine.\n\nRich Salz\nauthor of wildmat.c pattern matching and parsdate.y date parsing routines.\n\nDave Taylor\nauthor of curses.c from the elm(1) mailreader.\n\nChris Thewalt\nauthor of getline.c emacs(1) style editing routine.\n\nSteven Madsen\nfor adding pgp(1) (Pretty Good Privacy) support.\n\nPhilip Hazel <ph10@cam.ac.uk>\nfor pcre(3), pcre2(3) (Perl-compatible regular expression library).\n\nMark Martinec <mark.martinec@ijs.si>\nfor snprintf(3) and vsnprintf(3) fallbacks.\n",
            "subsections": []
        },
        "AUTHOR": {
            "content": "Iain Lea <iain@bricbrac.de>\n",
            "subsections": []
        },
        "MAINTAINER": {
            "content": "Urs Janssen <urs@tin.org>\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "elm(1),   emacs(1),   gpg(1),  inews(1),  ispell(1),  lp(1),  lpr(1),  metamail(1),  mutt(1),\nnoffle(1), perl(1), perlre(1), pgp(1), rn(1),  sendmail(1),  shar(1),  slrnface(1),  tass(1),\nunshar(1),    uudecode(1),    vi(1),   xterm(1x),   heapsort(3),   iconv(3),   iconvopen(3),\nnllanginfo(3), pcre(3), pcre2(3), pcrepattern(3),  pcre2pattern(3),  qsort(3),  snprintf(3),\nstrftime(3),  vsnprintf(3),  wildmat(3), environ(5), locale(5), mailcap(5), mbox(5), mmdf(5),\nnewsoverview(5), tin(5), cron(8), RFC1345, RFC1524, RFC2045, RFC2046, RFC2047, RFC2048,  RFC‐\n2231,  RFC2980,  RFC3156, RFC3977, RFC4155, RFC4643, RFC4880, RFC5322, RFC5536, RFC5537, RFC‐\n6048, RFC8054, RFC8143\n\n2.6.4                                    December 24th, 2023                                  tin(1)",
            "subsections": []
        }
    },
    "summary": "tin, rtin - Usenet newsreader",
    "flags": [
        {
            "flag": "-4",
            "long": null,
            "arg": null,
            "description": "with IPv6 support."
        },
        {
            "flag": "-6",
            "long": null,
            "arg": null,
            "description": "with IPv6 support."
        },
        {
            "flag": "-a",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-A",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-c",
            "long": null,
            "arg": null,
            "description": "file specified by the ''-f'' option and mark all articles as read."
        },
        {
            "flag": "-C",
            "long": null,
            "arg": null,
            "description": "outsecs, '-t'' and the \"SECURITY\" and \"BUGS\" section."
        },
        {
            "flag": "-d",
            "long": null,
            "arg": null,
            "description": "mode)."
        },
        {
            "flag": "-D",
            "long": null,
            "arg": null,
            "description": "Enter debug-level (1 = NNTP, 2 = filter, 4 = newsrc, 8 = threading, 16 = memory, 32 = attributes, 64 = misc, 128 = remove existing debug files). For NNTP-level ''-v'' controls the verbosity of the output. Depending on the debug-level vari‐ ous files may be written to $TMPDIR and/or on screen output may be given. See also the \"SECURITY\" section!"
        },
        {
            "flag": "-f",
            "long": null,
            "arg": null,
            "description": "DIR:-\"$HOME\"}/.newsrc."
        },
        {
            "flag": "-g",
            "long": null,
            "arg": null,
            "description": "Use the server[:port] and newsrc specified in ${TINHOMEDIR:-\"$HOME\"}/.tin/news‐ rctable. Only available when reading via NNTP."
        },
        {
            "flag": "-G",
            "long": null,
            "arg": null,
            "description": "Limit the number of articles/group to retrieve from the server. If article-limit is > 0 not more than the last article-limit articles/group are fetched from the server. If article-limit is < 0 tin will start fetching articles from your first unread minus absolute value of article-limit. Default is 0, which means no limit."
        },
        {
            "flag": "-h",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-H",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-I",
            "long": null,
            "arg": null,
            "description": "DIR:-\"${TINHOMEDIR:-\"$HOME\"}/.tin\"}/.news. This option has no effect if tin re‐ trieves its index files via NNTP and cacheoverviewfiles is turned off."
        },
        {
            "flag": "-k",
            "long": null,
            "arg": null,
            "description": "checking. This option implies ''-T''. See also the \"SECURITY\" section."
        },
        {
            "flag": "-l",
            "long": null,
            "arg": null,
            "description": "TIVEFILE:-active} file. If reading via NNTP this is done with the LIST command (RFC3977). This might result in incorrect article counts but is usually faster than the default which is to read the ${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVE‐ FILE:-active} file (either directly or via LIST) and then check the article count via NNTP GROUP command (RFC3977) ''-ln''. If reading via NNTP and LIST COUNTS (RFC6048) is available that is used instead as it gives more accurate article counts."
        },
        {
            "flag": "-m",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-M",
            "long": null,
            "arg": null,
            "description": "read section \"AUTOMATIC MAILING AND SAVING NEW NEWS\"."
        },
        {
            "flag": "-n",
            "long": null,
            "arg": null,
            "description": "file that are subscribed to in the user's ${TINHOMEDIR:-\"$HOME\"}/.newsrc. This allows a noticeable speedup when connecting via a slow line, but tin may not be able detect which groups are moderated. See also ''-l''."
        },
        {
            "flag": "-N",
            "long": null,
            "arg": null,
            "description": "section \"AUTOMATIC MAILING AND SAVING NEW NEWS\"."
        },
        {
            "flag": "-o",
            "long": null,
            "arg": null,
            "description": "it should be used with ''-n'' if possible."
        },
        {
            "flag": "-p",
            "long": null,
            "arg": null,
            "description": "''-T''). This also overrides the environment variable $NNTPPORT if set. Only available when reading via NNTP."
        },
        {
            "flag": "-q",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-Q",
            "long": null,
            "arg": null,
            "description": "''-dnq''. See also the ''-C'' and ''-G'' command-line options."
        },
        {
            "flag": "-r",
            "long": null,
            "arg": null,
            "description": "variable $NNTPSERVER or contained in the file /etc/news/server."
        },
        {
            "flag": "-S",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-s",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-R",
            "long": null,
            "arg": null,
            "description": "read section \"AUTOMATIC MAILING AND SAVING NEW NEWS\"."
        },
        {
            "flag": "-t",
            "long": null,
            "arg": null,
            "description": "imum is 16383."
        },
        {
            "flag": "-T",
            "long": null,
            "arg": null,
            "description": "PORT if set. Only available when reading via NNTP."
        },
        {
            "flag": "-u",
            "long": null,
            "arg": null,
            "description": "file specified by the ''-f'' option. This option is disabled if tin retrieves its index files via an NNTP server and cacheoverviewfiles is turned off."
        },
        {
            "flag": "-Z",
            "long": null,
            "arg": null,
            "description": "tions. Can be used multiple times to increase verbosity."
        },
        {
            "flag": "-V",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-d",
            "long": null,
            "arg": null,
            "description": "for this to be really quick, it should be used with ''-n'' if possible."
        },
        {
            "flag": "-x",
            "long": null,
            "arg": null,
            "description": ""
        },
        {
            "flag": "-X",
            "long": null,
            "arg": null,
            "description": "DIR:-\"$HOME\"}/.tin will not be overwritten but may be created if they don't ex‐ ist."
        },
        {
            "flag": "-z",
            "long": null,
            "arg": null,
            "description": "tion cursor at first group with unread news. Useful for putting in login file."
        },
        {
            "flag": "-v",
            "long": null,
            "arg": null,
            "description": "option is specified the number of unread articles in each group is printed. An exit code 0 indicates no news, 1 that an error occurred and 2 that new/unread news exists. Useful for writing scripts. tin can also dynamically change its options by the OptionMenu ('M') command. Any changes are written to ${TINHOMEDIR:-\"$HOME\"}/.tin/tinrc. For more information see section \"GLOBAL OP‐ TIONS MENU AND TINRC CONFIGURABLE VARIABLES\" and tin(5). A list of groups can be specified after the other command-line options. This can be useful if you wish to yank in or subscribe to a hand-picked subset of the active newsgroups. See the section \"NEWSGROUP LISTS & WILDCARDS\" for the types of pattern that tin understands. If you specify a single group-name, or a wildcard that matches a single group, then you will automatically enter that group. Otherwise the normal group selection screen will appear, but with all the matching groups present too, as though you had yanked just those groups in. With the ''-w'' flag a given group-name is used as default group to post to. If more than one group or a wildcard is specified only the first group respectively the first group that matches is used. Once you use SelectYankActive ('y') to yank in all active groups, or SelectToggleReadDisplay ('r') to toggle the read/unread status, then the command-line groups will be gone. You can use SelectSyncWithActive ('Y') to reread the ${TINLIBDIR:-NEWSLIBDIR}\"/\"${TINACTIVE‐ FILE:-active} file and get them back. NB: With the ''-n'' flag, only unsubscribed groups in the ${TINHOMEDIR:-\"$HOME\"}/.newsrc file (or the newsrc-file given by the ''-f'' command-line switch or via ${TINHOME‐ DIR:-\"$HOME\"}/.tin/newsrctable) can be matched. Command-line options have higher priority than attributes and tinrc options. Thus, command- line option takes precedence over configured values."
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "elm",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/elm/1/json"
        },
        {
            "name": "emacs",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/emacs/1/json"
        },
        {
            "name": "gpg",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/gpg/1/json"
        },
        {
            "name": "inews",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/inews/1/json"
        },
        {
            "name": "ispell",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/ispell/1/json"
        },
        {
            "name": "lp",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/lp/1/json"
        },
        {
            "name": "lpr",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/lpr/1/json"
        },
        {
            "name": "metamail",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/metamail/1/json"
        },
        {
            "name": "mutt",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/mutt/1/json"
        },
        {
            "name": "noffle",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/noffle/1/json"
        },
        {
            "name": "perl",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/perl/1/json"
        },
        {
            "name": "perlre",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/perlre/1/json"
        },
        {
            "name": "pgp",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/pgp/1/json"
        },
        {
            "name": "rn",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/rn/1/json"
        },
        {
            "name": "sendmail",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/sendmail/1/json"
        },
        {
            "name": "shar",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/shar/1/json"
        },
        {
            "name": "slrnface",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/slrnface/1/json"
        },
        {
            "name": "tass",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/tass/1/json"
        },
        {
            "name": "unshar",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/unshar/1/json"
        },
        {
            "name": "uudecode",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/uudecode/1/json"
        },
        {
            "name": "vi",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/vi/1/json"
        },
        {
            "name": "xterm",
            "section": "1x",
            "url": "https://www.chedong.com/phpMan.php/man/xterm/1x/json"
        },
        {
            "name": "heapsort",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/heapsort/3/json"
        },
        {
            "name": "iconv",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/iconv/3/json"
        },
        {
            "name": "iconvopen",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/iconvopen/3/json"
        },
        {
            "name": "nllanginfo",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/nllanginfo/3/json"
        },
        {
            "name": "pcre",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/pcre/3/json"
        },
        {
            "name": "pcre2",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/pcre2/3/json"
        },
        {
            "name": "pcrepattern",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/pcrepattern/3/json"
        },
        {
            "name": "pcre2pattern",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/pcre2pattern/3/json"
        },
        {
            "name": "qsort",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/qsort/3/json"
        },
        {
            "name": "snprintf",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/snprintf/3/json"
        },
        {
            "name": "strftime",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/strftime/3/json"
        },
        {
            "name": "vsnprintf",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/vsnprintf/3/json"
        },
        {
            "name": "wildmat",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/wildmat/3/json"
        },
        {
            "name": "environ",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/environ/5/json"
        },
        {
            "name": "locale",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/locale/5/json"
        },
        {
            "name": "mailcap",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/mailcap/5/json"
        },
        {
            "name": "mbox",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/mbox/5/json"
        },
        {
            "name": "mmdf",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/mmdf/5/json"
        },
        {
            "name": "newsoverview",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/newsoverview/5/json"
        },
        {
            "name": "tin",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/tin/5/json"
        },
        {
            "name": "cron",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/cron/8/json"
        }
    ]
}