"Fossies" - the Fresh Open Source Software Archive

Member "tin-2.4.1/include/tinrc.h" (12 Oct 2016, 17326 Bytes) of package /linux/misc/tin-2.4.1.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "tinrc.h" see the Fossies "Dox" file reference documentation and the latest Fossies "Diffs" side-by-side code changes report: 2.4.0_vs_2.4.1.

    1 /*
    2  *  Project   : tin - a Usenet reader
    3  *  Module    : tinrc.h
    4  *  Author    : Jason Faultless <jason@altarstone.com>
    5  *  Created   : 1999-04-13
    6  *  Updated   : 2016-04-17
    7  *  Notes     :
    8  *
    9  * Copyright (c) 1999-2017 Jason Faultless <jason@altarstone.com>
   10  * All rights reserved.
   11  *
   12  * Redistribution and use in source and binary forms, with or without
   13  * modification, are permitted provided that the following conditions
   14  * are met:
   15  * 1. Redistributions of source code must retain the above copyright
   16  *    notice, this list of conditions and the following disclaimer.
   17  * 2. Redistributions in binary form must reproduce the above copyright
   18  *    notice, this list of conditions and the following disclaimer in the
   19  *    documentation and/or other materials provided with the distribution.
   20  * 3. The name of the author may not be used to endorse or promote
   21  *    products derived from this software without specific prior written
   22  *    permission.
   23  *
   24  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
   25  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
   26  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   27  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
   28  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   29  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
   30  * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   31  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
   32  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
   33  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
   34  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   35  */
   36 
   37 
   38 /*
   39  * These are the tin defaults read from the tinrc file
   40  * If you change this, ensure you change the initial values in init.c
   41  *
   42  * FIXME: most default_* could/should be stored in the .inputhistory
   43  *        and could be nuked if tin comes with a prefilled .inputhistory
   44  *        which is installed automatically if no .inputhistory is found.
   45  *
   46  * TODO:  sort in a useful order (also needs reordering in init.c)
   47  */
   48 
   49 #ifndef TINRC_H
   50 #   define TINRC_H 1
   51 
   52 struct t_config {
   53     /*
   54      * Chars used to show article status
   55      */
   56     char art_marked_deleted;
   57     char art_marked_inrange;    /* misnomer, as it's also used for other ranges */
   58     char art_marked_return;
   59     char art_marked_selected;
   60     char art_marked_recent;
   61     char art_marked_unread;
   62     char art_marked_read;
   63     char art_marked_killed;
   64     char art_marked_read_selected;
   65     char editor_format[PATH_LEN];       /* editor + parameters  %E +%N %F */
   66     char default_goto_group[HEADER_LEN];        /* default for the 'g' command */
   67     char default_mail_address[HEADER_LEN];
   68     char mailer_format[PATH_LEN];       /* mailer + parameters  %M %S %T %F */
   69 #   ifndef DONT_HAVE_PIPING
   70         char default_pipe_command[LEN];
   71 #   endif /* DONT_HAVE_PIPING */
   72     char default_post_newsgroups[HEADER_LEN];   /* default newsgroups to post to */
   73     char default_post_subject[LEN]; /* default subject when posting */
   74 #   ifndef DISABLE_PRINTING
   75         char printer[LEN];                  /* printer program specified from tinrc */
   76 #   endif /* !DISABLE_PRINTING */
   77     char default_range_group[LEN];
   78     char default_range_select[LEN];
   79     char default_range_thread[LEN];
   80     char default_pattern[LEN];
   81     char default_repost_group[LEN];     /* default group to repost to */
   82     char default_save_file[PATH_LEN];
   83     char default_search_art[LEN];       /* default when searching in article */
   84     char default_search_author[HEADER_LEN]; /* default when searching for author */
   85     char default_search_config[LEN];    /* default when searching config menu */
   86     char default_search_group[HEADER_LEN];      /* default when searching select screen */
   87     char default_search_subject[LEN];   /* default when searching by subject */
   88     char default_select_pattern[LEN];
   89     char default_shell_command[LEN];
   90     char mail_quote_format[LEN];
   91     char maildir[PATH_LEN];             /* mailbox dir where = saves are stored */
   92     int mailbox_format;                 /* format of the mailbox (mboxo, mboxrd, mmdf, ...) */
   93     char mail_address[HEADER_LEN];              /* user's mail address */
   94     char metamail_prog[PATH_LEN];               /* name of MIME message viewer */
   95 #   ifndef CHARSET_CONVERSION
   96         char mm_charset[LEN];               /* MIME charset */
   97 #   else
   98         int mm_network_charset;             /* MIME charset */
   99 #   endif /* !CHARSET_CONVERSION */
  100     char mm_local_charset[LEN];     /* display charset, not a rc/Menu-option anymore -> should be moved elsewhere */
  101 #   ifdef HAVE_ICONV_OPEN_TRANSLIT
  102         t_bool translit;                        /* use //TRANSLIT */
  103 #   endif /* HAVE_ICONV_OPEN_TRANSLIT */
  104     char news_headers_to_display[LEN];  /* which headers to display */
  105     char news_headers_to_not_display[LEN];  /* which headers to not display */
  106     char news_quote_format[LEN];
  107     char quote_chars[LEN];          /* quote chars for posting/mails ": " (size matches prefixbuf in copy_body() */
  108 #   ifdef HAVE_COLOR
  109         char quote_regex[LEN];              /* regex used to determine quoted lines */
  110         char quote_regex2[LEN];             /* regex used to determine twice quoted lines */
  111         char quote_regex3[LEN];             /* regex used to determine >=3 times quoted lines */
  112         char extquote_regex[LEN];           /* regex used to determine quoted lines from external sources */
  113 #   endif /* HAVE_COLOR */
  114     char slashes_regex[LEN];            /* regex used to highlight /slashes/ */
  115     char stars_regex[LEN];              /* regex used to highlight *stars* */
  116     char underscores_regex[LEN];            /* regex used to highlight _underscores_ */
  117     char strokes_regex[LEN];            /* regex used to highlight -strokes- */
  118     char sigfile[PATH_LEN];
  119     char strip_re_regex[LEN];           /* regex used to find and remove 'Re:'-like strings */
  120     char strip_was_regex[LEN];          /* regex used to find and remove '(was:.*'-like strings */
  121     char verbatim_begin_regex[LEN];         /* regex used to find the begin of a verbatim block */
  122     char verbatim_end_regex[LEN];           /* regex used to find the end of a verbatim block */
  123     char savedir[PATH_LEN];             /* directory to save articles to */
  124     char spamtrap_warning_addresses[LEN];
  125     char url_handler[LEN];              /* Helper app for opening URL's */
  126     char xpost_quote_format[LEN];
  127     int filter_days;                    /* num of days an article filter can be active */
  128     int default_filter_kill_header;
  129     int default_filter_select_header;
  130     int default_move_group;
  131     int default_save_mode;              /* Append/Overwrite existing file when saving */
  132     int getart_limit;                   /* number of article to get */
  133     int recent_time;                /* Time limit when article is "fresh" */
  134     int goto_next_unread;               /* jump to next unread article with SPACE|PGDN|TAB */
  135     int hide_uue;                       /* treatment of uuencoded data in pager */
  136     int kill_level;                     /* Define how killed articles are shown */
  137     int mail_mime_encoding;
  138     int post_mime_encoding;
  139     int post_process_type;              /* type of post processing to be performed */
  140     int reread_active_file_secs;        /* reread active file interval in seconds */
  141     int scroll_lines;                   /* # lines to scroll by in pager */
  142     int show_author;                    /* show_author value from 'M' menu in tinrc */
  143     int sort_article_type;              /* method used to sort arts[] */
  144     int sort_threads_type;              /* method used to sort base[] */
  145 #   ifdef USE_HEAPSORT
  146         int sort_function;              /* index into sort_function[] */
  147 #   endif /* USE_HEAPSORT */
  148     int strip_bogus;
  149     int thread_articles;                /* threading system for viewing articles */
  150     int thread_perc;                /* how close the match needs to be for THREAD_PERC to recognize two articles as the same thread */
  151     int thread_score;               /* how the score for threads is computed */
  152     int wildcard;                       /* 0=wildmat, 1=regex */
  153     int score_limit_kill;                   /* score limit to kill articles */
  154     int score_limit_select;                 /* score limit to select articles */
  155     int score_kill;                     /* default score for "kill" filter rules */
  156     int score_select;                   /* default score for "hot" filter rules */
  157     int trim_article_body;              /* remove unnecessary blank lines */
  158 #   ifdef HAVE_COLOR
  159         int col_back;                       /* standard background color */
  160         int col_from;                       /* color of sender (From:) */
  161         int col_head;                       /* color of headerlines */
  162         int col_help;                       /* color of help pages */
  163         int col_invers_bg;                  /* color of inverse text (background) */
  164         int col_invers_fg;                  /* color of inverse text (foreground) */
  165         int col_minihelp;                   /* color of mini help menu */
  166         int col_normal;                     /* standard foreground color */
  167         int col_markdash;                   /* text highlighting with _underdashes_ */
  168         int col_markstar;                   /* text highlighting with *stars* */
  169         int col_markslash;                  /* text highlighting with /slashes/ */
  170         int col_markstroke;                 /* text highlighting with -strokes- */
  171         int col_message;                    /* color of message lines at bottom */
  172         int col_newsheaders;                /* color of actual news header fields */
  173         int col_quote;                      /* color of quotelines */
  174         int col_quote2;                     /* color of twice quoted lines */
  175         int col_quote3;                     /* color of >=3 times quoted lines */
  176         int col_extquote;                   /* color of quoted external text */
  177         int col_response;                   /* color of respone counter */
  178         int col_signature;                  /* color of signature */
  179         int col_urls;                       /* color of urls highlight */
  180         int col_verbatim;                   /* color of verbatim blocks */
  181         int col_subject;                    /* color of article subject */
  182         int col_text;                       /* color of textlines */
  183         int col_title;                      /* color of Help/Mail-Sign */
  184 #   endif /* HAVE_COLOR */
  185     int word_h_display_marks;           /* display * or _ when highlighting or space or nothing */
  186     int mono_markdash;              /* attribute for text highlighting with _underdashes_ */
  187     int mono_markstar;              /* attribute for text highlighting with *stars* */
  188     int mono_markslash;             /* attribute for text highlighting with /slashes/ */
  189     int mono_markstroke;                /* attribute for text highlighting with -strokes- */
  190     t_bool word_highlight;              /* like word_highlight but stored in tinrc */
  191     t_bool url_highlight;               /* highlight urls in text bodies */
  192     int wrap_column;                /* screen column to wrap of text messages */
  193 #   ifdef HAVE_COLOR
  194         t_bool use_color;                   /* like use_color but stored in tinrc */
  195 #   endif /* HAVE_COLOR */
  196     t_bool abbreviate_groupname;        /* abbreviate groupnames like n.s.readers */
  197     t_bool add_posted_to_filter;
  198     t_bool advertising;
  199     t_bool alternative_handling;
  200     int auto_cc_bcc;                    /* add your name to cc/bcc automatically */
  201     t_bool auto_list_thread;            /* list thread when entering it using right arrow */
  202     t_bool auto_reconnect;              /* automatically reconnect to news server */
  203     t_bool auto_save;                   /* save thread with name from Archive-name: field */
  204     t_bool batch_save;                  /* save arts if -M/-S command line switch specified */
  205     t_bool beginner_level;              /* beginner level (shows mini help a la elm) */
  206     t_bool cache_overview_files;        /* create local index files for NNTP overview files */
  207     t_bool catchup_read_groups;         /* ask if read groups are to be marked read */
  208     int confirm_choice;             /* what has to be confirmed */
  209     t_bool draw_arrow;                  /* draw -> or highlighted bar */
  210     t_bool force_screen_redraw;         /* force screen redraw after external (shell) commands */
  211     t_bool group_catchup_on_exit;       /* catchup group with left arrow key or not */
  212     t_bool info_in_last_line;
  213     t_bool inverse_okay;
  214     t_bool keep_dead_articles;          /* keep all dead articles in dead.articles */
  215     char posted_articles_file[LEN];     /* if set, file in which to keep posted articles */
  216     t_bool mail_8bit_header;            /* allow 8bit chars. in header of mail message */
  217     t_bool mark_ignore_tags;            /* Ignore tags for GROUP_MARK_THREAD_READ/THREAD_MARK_ARTICLE_READ */
  218     t_bool mark_saved_read;             /* mark saved article/thread as read */
  219     t_bool pos_first_unread;            /* position cursor at first/last unread article */
  220     t_bool post_8bit_header;            /* allow 8bit chars. in header when posting to newsgroup */
  221     t_bool post_process_view;           /* set TRUE to invoke mailcap viewer app */
  222 #   ifndef DISABLE_PRINTING
  223         t_bool print_header;                /* print all of mail header or just Subject: & From lines */
  224 #   endif /* !DISABLE_PRINTING */
  225     t_bool process_only_unread;         /* save/print//mail/pipe unread/all articles */
  226     t_bool prompt_followupto;           /* display empty Followup-To header in editor */
  227     int quote_style;                    /* quoting behaviour */
  228     t_bool show_description;
  229     t_bool show_only_unread_arts;       /* show only new/unread arts or all arts */
  230     t_bool show_only_unread_groups;     /* set TRUE to see only subscribed groups with new news */
  231     t_bool show_signatures;             /* show signatures when displaying articles */
  232     t_bool sigdashes;                   /* set TRUE to prepend every signature with dashes */
  233     t_bool signature_repost;            /* set TRUE to add signature when reposting articles */
  234     t_bool start_editor_offset;
  235 #ifndef USE_CURSES
  236         t_bool strip_blanks;
  237 #endif /* !USE_CURSES */
  238     t_bool strip_newsrc;
  239     t_bool tex2iso_conv;            /* convert "a to Umlaut-a */
  240     t_bool thread_catchup_on_exit;      /* catchup thread with left arrow key or not */
  241     t_bool unlink_article;
  242 #if defined(MULTIBYTE_ABLE) && !defined(NO_LOCALE)
  243         t_bool utf8_graphics;               /* use utf-8 characters for line drawing */
  244 #endif /* MULTIBYTE_ABLE && !NO_LOCALE */
  245     t_bool verbatim_handling;           /* Detection of verbatim blocks */
  246 #   ifdef HAVE_COLOR
  247         t_bool extquote_handling;       /* Detection of quoted text from external sources */
  248 #   endif /* HAVE_COLOR */
  249     char inews_prog[PATH_LEN];
  250     int interactive_mailer;         /* invoke user's mailreader */
  251     t_bool use_mouse;                   /* enables/disables mouse support under xterm */
  252 #   ifdef HAVE_KEYPAD
  253         t_bool use_keypad;
  254 #   endif /* HAVE_KEYPAD */
  255     t_bool wrap_on_next_unread;     /* Wrap around threads when searching next unread article */
  256     t_bool ask_for_metamail;            /* enables/disables the viewer query if a MIME message is going to be displayed */
  257     t_bool default_filter_kill_case;
  258     t_bool default_filter_kill_expire;
  259     t_bool default_filter_kill_global;
  260     t_bool default_filter_select_case;
  261     t_bool default_filter_select_expire;
  262 #   ifdef XFACE_ABLE
  263         t_bool use_slrnface;            /* Use the slrnface programme to display 'X-Face:'s */
  264 #   endif /* XFACE_ABLE */
  265     t_bool default_filter_select_global;
  266     char select_format[LEN];        /* format string for the selection level */
  267     char group_format[LEN];         /* format string for the group level */
  268     char thread_format[LEN];        /* format string for the thread level */
  269     char date_format[LEN];          /* format string for the date display in the page header */
  270 #   ifdef HAVE_UNICODE_NORMALIZATION
  271         int normalization_form;
  272 #   endif /* HAVE_UNICODE_NORMALIZATION */
  273 #   if defined(HAVE_LIBICUUC) && defined(MULTIBYTE_ABLE) && defined(HAVE_UNICODE_UBIDI_H) && !defined(NO_LOCALE)
  274         t_bool render_bidi;
  275 #   endif /* HAVE_LIBICUUC && MULTIBYTE_ABLE && HAVE_UNICODE_UBIDI_H && !NO_LOCALE */
  276 #   ifdef CHARSET_CONVERSION
  277         int attrib_mm_network_charset;
  278         char attrib_undeclared_charset[LEN];
  279 #   endif /* !CHARSET_CONVERSION */
  280     char attrib_editor_format[PATH_LEN];
  281     char attrib_fcc[PATH_LEN];
  282     char attrib_maildir[PATH_LEN];
  283     char attrib_from[HEADER_LEN];
  284     char attrib_mailing_list[HEADER_LEN];
  285     char attrib_organization[LEN];
  286     char attrib_followup_to[LEN];
  287     char attrib_mime_types_to_save[LEN];
  288     char attrib_news_headers_to_display[LEN];
  289     char attrib_news_headers_to_not_display[LEN];
  290     char attrib_news_quote_format[LEN];
  291     char attrib_quote_chars[LEN];
  292     char attrib_sigfile[PATH_LEN];
  293     char attrib_savedir[PATH_LEN];
  294     char attrib_savefile[PATH_LEN];
  295     char attrib_x_body[LEN];
  296     char attrib_x_headers[HEADER_LEN];
  297 #   ifdef HAVE_ISPELL
  298         char attrib_ispell[PATH_LEN];
  299 #   endif /* HAVE_ISPELL */
  300     char attrib_quick_kill_scope[LEN];
  301     char attrib_quick_select_scope[LEN];
  302     char attrib_group_format[LEN];
  303     char attrib_thread_format[LEN];
  304     char attrib_date_format[LEN];
  305     int attrib_trim_article_body;
  306     int attrib_auto_cc_bcc;
  307     int attrib_quick_kill_header;
  308     int attrib_quick_select_header;
  309     int attrib_mail_mime_encoding;
  310 #if defined(HAVE_ALARM) && defined(SIGALRM)
  311         /*
  312          * # seconds after which a read from the NNTP will timeout
  313          * NB: This is different from the NNTP server timing us out due to inactivity
  314          */
  315         int nntp_read_timeout_secs;
  316 #endif /* HAVE_ALARM && SIGALRM */
  317     int attrib_post_mime_encoding;
  318     int attrib_post_process_type;
  319     int attrib_show_author;
  320     int attrib_sort_article_type;
  321     int attrib_sort_threads_type;
  322     int attrib_thread_articles;
  323     int attrib_thread_perc;
  324     t_bool attrib_add_posted_to_filter;
  325     t_bool attrib_advertising;
  326     t_bool attrib_alternative_handling;
  327     t_bool attrib_auto_list_thread;
  328     t_bool attrib_auto_select;
  329     t_bool attrib_auto_save;
  330     t_bool attrib_batch_save;
  331     t_bool attrib_delete_tmp_files;
  332     t_bool attrib_group_catchup_on_exit;
  333     t_bool attrib_mail_8bit_header;
  334     t_bool attrib_mime_forward;
  335     t_bool attrib_mark_ignore_tags;
  336     t_bool attrib_mark_saved_read;
  337     t_bool attrib_pos_first_unread;
  338     t_bool attrib_post_8bit_header;
  339     t_bool attrib_post_process_view;
  340 #   ifndef DISABLE_PRINTING
  341         t_bool attrib_print_header;
  342 #   endif /* !DISABLE_PRINTING */
  343     t_bool attrib_process_only_unread;
  344     t_bool attrib_prompt_followupto;
  345     t_bool attrib_show_only_unread_arts;
  346     t_bool attrib_show_signatures;
  347     t_bool attrib_sigdashes;
  348     t_bool attrib_signature_repost;
  349     t_bool attrib_start_editor_offset;
  350     t_bool attrib_tex2iso_conv;
  351     t_bool attrib_thread_catchup_on_exit;
  352     t_bool attrib_verbatim_handling;
  353 #   ifdef HAVE_COLOR
  354         t_bool attrib_extquote_handling;
  355 #   endif /* HAVE_COLOR */
  356     t_bool attrib_x_comment_to;
  357     t_bool attrib_wrap_on_next_unread;
  358     t_bool attrib_ask_for_metamail;
  359     t_bool attrib_quick_kill_case;
  360     t_bool attrib_quick_kill_expire;
  361     t_bool attrib_quick_select_case;
  362     t_bool attrib_quick_select_expire;
  363 };
  364 
  365 #endif /* !TINRC_H */