home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / Tools / lynx-2.4 / userdefs.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-06-28  |  27.9 KB  |  750 lines

  1. /*
  2.  * Lynx - Hypertext navigation system
  3.  *
  4.  *   (c) Copyright 1992, 1993, 1994 University of Kansas
  5.  */
  6.  
  7. /*******************************************************************
  8.  * There are three sections to this document
  9.  *  Section 1.  Things you MUST change or verify
  10.  *    Section 1a)  VMS specific things
  11.  *    Section 1b)  UNIX specific things
  12.  *    Section 1c)  ALL Platforms
  13.  *
  14.  *  Section 2.  Things you should probably check!
  15.  *
  16.  *  Section 3.  Things you should only change after you have a good
  17.  *              understanding of the program!
  18.  *
  19.  */
  20.  
  21. #ifndef USERDEFS_H
  22. #define USERDEFS_H
  23.  
  24. /*******************************************************************
  25.  * Things you must change
  26.  *  Section 1. 
  27.  */
  28.  
  29. /*******************************************************************
  30.  * Things you must change  VMS specific
  31.  *  Section 1a). 
  32.  */
  33. #ifdef VMS
  34. /**************************
  35.  * TEMP_SPACE is where Lynx temporary cache files will be placed.
  36.  * Temporary files are removed automatically as long as nothing
  37.  * goes terribly wrong :)
  38.  */
  39. #define TEMP_SPACE "sys$scratch:"
  40.  
  41. /**************************
  42.  * LYNX_CFG_FILE is the location and name of the default lynx
  43.  * global configuration file.  It is sought and processed at
  44.  * startup of Lynx, followed by a seek and processing of a
  45.  * personal RC file (.lynxrc in the user's HOME directory,
  46.  * created if the user saves values in the 'o'ptions menu).
  47.  * You also can define the location and name of the global
  48.  * configuration file via a VMS logical, "LYNX_CFG", which
  49.  * will override the "LYNX_CFG_FILE" definition here.  SYS$LOGIN
  50.  * can be used as the device in either or both definitions if
  51.  * you want lynx.cfg treated as a personal configuration file.
  52.  * The -cfg command line switch will override these definitions.
  53.  *
  54.  * Note that any SUFFIX or VIEWER mappings in the configuration
  55.  * files will be overidden by any suffix or viewer mappings
  56.  * that are established as defaults in src/HTInit.c.
  57.  */
  58. #define LYNX_CFG_FILE "Lynx_Dir:lynx.cfg"
  59.  
  60. /**************************
  61.  * The EXTENSION_MAP file allows you to map file suffix's to 
  62.  * mime types.
  63.  * These global and personal files override anything in
  64.  * lynx.cfg or src/HTInit.c
  65.  */
  66. #define GLOBAL_EXTENSION_MAP "Lynx_Dir:mime.types"
  67. #define PERSONAL_EXTENSION_MAP "mime.types"
  68.  
  69. /**************************
  70.  * The MAILCAP file allows you to map file MIME types to 
  71.  * external viewers.
  72.  * These global and personal files override anything in
  73.  * lynx.cfg or src/HTInit.c
  74.  */ 
  75. #define GLOBAL_MAILCAP "Lynx_Dir:mailcap"
  76. #define PERSONAL_MAILCAP ".mailcap"
  77.  
  78. /**************************
  79.  * This define will be used for a default in src/HTInit.c.
  80.  * Make it the full path and name of the xloadimage command.
  81.  * Put 'echo' or something like it here if you don't have it.
  82.  * It can be anything that will handle GIF, TIFF and other
  83.  * popular image formats (xv does).
  84.  * You must also have a "%s" for the filename
  85.  */
  86. #define XLOADIMAGE_COMMAND "xv %s"
  87.  
  88. /**************************
  89.  * The full path and name of the standard VMS "mail" command.
  90.  *
  91.  * The mail command will be spawned as a subprocess of lynx
  92.  * and used to send replies and error messages.
  93.  * SYSTEM_MAIL must be able to accept a subject line through
  94.  * the use of the /subject="SUBJECT" option.
  95.  * If your mailer uses another syntax, some hacking of
  96.  * the "mailmsg.c" and "reply_by_mail.c" files may be required.
  97.  */
  98. #define SYSTEM_MAIL "mail"
  99.  
  100. /*************************
  101.  * below is the argument for a sprintf command that will
  102.  * add "in%""ADDRESS""" to the internet mail address given by the user.
  103.  * It is structured for PMDF's in%"INTERNET_ADDRESS"
  104.  * scheme.   The %s is replaced with the address given by the user.
  105.  */
  106. #define MAIL_ADRS "\"in%%\"\"%s\"\"\""
  107.  
  108. /*************************
  109.  * The foreign command for the ANU-NEWS client (presumably "NEWS").
  110.  * which serves as a transparent vector for posting to newsgroups
  111.  * from Lynx via the ANU-NEWS client's server.  The account running
  112.  * Lynx must have access to the ANU-NEWS client, which in turn must
  113.  * have posting privileges (the news server could also be ANU-NEWS,
  114.  * or any other server to which the ANU-NEWS client has access).
  115.  *
  116.  * The ANU-NEWS software for VMS is available from ftp.cc.ukans.edu.
  117.  *
  118.  * Define INEWS as "none" if you do not have access to an ANU-NEWS
  119.  * client with a server for posting to newsgroups from Lynx.
  120.  */
  121. #define INEWS "NEWS"
  122.  
  123. /*********************************
  124.  * If USE_FIXED_RECORDS is set to TRUE, Lynx_Dir:FIXED512.COM will be
  125.  * executed automatically to convert 'd'ownloaded binary files to
  126.  * FIXED 512 record format before saving them permanently to disk or
  127.  * acting on a DOWNLOADER option.  Read the header of FIXED512.COM for
  128.  * more information.  If set to FALSE, the headers of such files will
  129.  * indicate that they are Stream_LF with Implied Carriage Control, which
  130.  * is incorrect, and can cause downloading software to get confused and
  131.  * unhappy.  You can leave it FALSE here, so that you can optionally
  132.  * keep it FALSE or make it TRUE at run time in lynx.cfg.
  133.  */
  134. #define USE_FIXED_RECORDS    FALSE    /* convert binaries to FIXED 512 */
  135.  
  136. /*******************************************************************
  137.  * Things you must change  UNIX specific
  138.  *  Section 1b). 
  139.  */
  140. #else     /* UNIX */
  141.  
  142. /**************************
  143.  * LYNX_CFG_FILE is the location and name of the default lynx
  144.  * global configuration file.  It is sought and processed at
  145.  * startup of Lynx, followed by a seek and processing of a
  146.  * personal RC file (.lynxrc in the user's HOME directory,
  147.  * created if the user saves values in the 'o'ptions menu).
  148.  * You also can define the location and name of the global
  149.  * configuration file via an environment variable, "LYNX_CFG",
  150.  * which will override the "LYNX_CFG_FILE" definition here.
  151.  * You can use '~' in either or both definitions if you want
  152.  * lynx.cfg treated as a personal configuration file.  The
  153.  * -cfg command line switch will override these definitions.
  154.  *
  155.  * Note that any SUFFIX or VIEWER mappings in the configuration
  156.  * files will be overidden by any suffix or viewer mappings
  157.  * that are established as defaults in src/HTInit.c.
  158.  */
  159. #define LYNX_CFG_FILE "/usr/local/lib/lynx.cfg"
  160.  
  161. /**************************
  162.  * The EXTENSION_MAP file allows you to map file suffix's to 
  163.  * mime types.
  164.  * These global and personal files override anything in
  165.  * lynx.cfg or src/HTInit.c
  166.  */
  167. #define GLOBAL_EXTENSION_MAP "/usr/lib/X11/Mosaic/mime.types"
  168. #define PERSONAL_EXTENSION_MAP ".mime.types"
  169.  
  170. /**************************
  171.  * The MAILCAP file allows you to map file MIME types to 
  172.  * external viewers.
  173.  * These global and personal files override anything in
  174.  * lynx.cfg or src/HTInit.c
  175.  */
  176. #define GLOBAL_MAILCAP "/usr/lib/scomail/mailcap"
  177. #define PERSONAL_MAILCAP ".mailcap"
  178.  
  179. /*********************
  180.  * LOCAL_DOMAIN is used to determine if a user is local
  181.  * to your campus or organization
  182.  */
  183. #define LOCAL_DOMAIN "sco.COM"        /* CHANGE THIS! */
  184.  
  185. /**************************
  186.  * the full path and name of the telnet command
  187.  */
  188. #define TELNET_COMMAND "/usr/bin/telnet"
  189.  
  190. /**************************
  191.  * the full path and name of the tn3270 command
  192.  */
  193. #define TN3270_COMMAND "tn3270"
  194.  
  195. /**************************
  196.  * the full path and name of the rlogin command
  197.  */
  198. #define RLOGIN_COMMAND "/usr/bin/rlogin"
  199.  
  200. /*************************
  201.  * This define will be used for a default in src/HTInit.c.
  202.  * Make it the full path and name of the xloadimage command.
  203.  * Put 'echo' or something like it here if you don't have it.
  204.  * It can be anything that will handle GIF, TIFF and other
  205.  * popular image formats (xv does).
  206.  * You must also have a "%s" for the filename; "&" for
  207.  * background is optional
  208.  */
  209. #define XLOADIMAGE_COMMAND "xv %s &"
  210.  
  211. /*************************
  212.  * The full path and name of the inews program
  213.  *
  214.  * A "mini" inews has been included in the utils directory.
  215.  *
  216.  * set empty or to "none" if you don't have or want it.
  217.  */
  218. #define INEWS "inews"
  219.  
  220. /**************************
  221.  * For UNIX systems this should be sendmail
  222.  * sendmail should be in /usr/lib 
  223.  *
  224.  * You definitely want sendmail, not mail or elm or something else,
  225.  * except in the case where MMDF is your mail agent.
  226.  * For MMDF you should use submit (SCO)
  227.  */
  228. #ifdef MMDF
  229. #define SYSTEM_MAIL "/usr/mmdf/bin/submit" 
  230. #else
  231. #define SYSTEM_MAIL "/usr/lib/sendmail" 
  232. #endif /* MMDF */
  233.  
  234. /**************************
  235.  * A place to put temporary files, it's almost always "/tmp/" on
  236.  * UNIX systems
  237.  */
  238. #define TEMP_SPACE "/tmp/"
  239.  
  240. #endif /* VMS OR UNIX */
  241.  
  242. /*************************************************************
  243.  *  Section 1c)   Every platform must change or verify these
  244.  *
  245.  */
  246.  
  247. /*****************************
  248.  * STARTFILE is the default file if none is specified on the command line 
  249.  * 
  250.  * note: STARTFILE must be a URL.  See the Lynx online help for more
  251.  *       information on URL's
  252.  */
  253. #define STARTFILE "http://localhost/usr/skunk/lib/lynx/about_lynx.html"
  254. /* #define STARTFILE "http://www.w3.org/default.html" */
  255. /* #define STARTFILE "http://kufacts.cc.ukans.edu/cwis/kufacts_start.html" */
  256.  
  257. /*****************************
  258.  *
  259.  * HELPFILE must be defined as a URL and must have a 
  260.  * complete local path name if local 
  261.  * (file://localhost/DIRECTORY/FILENAME
  262.  *  replace DIRECTORY with the current directory path and
  263.  *  FILENAME with the name of the file.
  264.  *  file://localhost/dua#/DIRECTORY/FILENAME on VMS systems.)
  265.  * the default HELPFILE is:
  266.  * http://kufacts.cc.ukans.edu/lynx_help/lynx_help_main.html
  267.  * This file will be updated as needed.
  268.  */
  269. #define HELPFILE "http://localhost/usr/skunk/lib/lynx/lynx_help/lynx_help_main.html"
  270.  
  271. /*****************************
  272.  * JUMPFILE is the local file checked for shortcut URL's when the
  273.  * user presses the 'J' (JUMP) key.  The user will be prompted for
  274.  * a shortcut entry (analogously to 'g'oto), and can enter one
  275.  * or use '?' for a list of the shortcuts with associated links to
  276.  * their actual URL's.  See the sample jumps files in the samples
  277.  * subdirectory.  Make sure your jumps file includes a '?' shortcut
  278.  * for a file://localhost URL to itself:
  279.  *
  280.  * <dt>?<dd><a href="file://localhost/path/jumps.html">This Shortcut List</a>
  281.  *
  282.  * If not defined here or in lynx.cfg, the JUMP command will invoke
  283.  * the NO_JUMPFILE statusline message.
  284.  *
  285.  * On VMS, use Unix SHELL syntax (including a lead slash) to define it.
  286.  *
  287.  * Do not include "file://localhost" in the definition.
  288.  */
  289. /* #define JUMPFILE "/Lynx_Dir/jumps.html" */
  290.  
  291. /*****************************
  292.  * DEFAULT_INDEX_FILE is the default file retrieved when the
  293.  * user presses the 'I' key when viewing any document.
  294.  * An index to your CWIS can be placed here or a document containing
  295.  * pointers to lots of interesting places on the web.
  296.  */
  297. #define DEFAULT_INDEX_FILE "http://www.w3.org/default.html"
  298.  
  299. /********************************
  300. * The DEFAULT_CACHE_SIZE specifies the number of WWW documents to be
  301. * cached in memory at one time.
  302. *
  303. * This so-called cache size (actually, number) may be modified with the
  304. * command line argument -cache=NUMBER
  305. *
  306. * On Unix, and VMS not compiled with VAXC, whenever the number is exceeded
  307. * the oldest document will be removed from memory.
  308. *
  309. * On VMS compiled with VAXC, the DEFAULT_VIRTUAL_MEMORY_SIZE specifies the
  310. * amount (bytes) of virtual memory that can be allocated and not yet be freed
  311. * before previous documents are removed from memory.  If the values for both
  312. * the DEFAULT_CACHE_SIZE and DEFAULT_VIRTUAL_MEMORY_SIZE are exceeded, then
  313. * documents will be freed until one or the other is no longer exceeded.  The
  314. * minimum allowed value for the DEFAULT_CACHE_SIZE is 2, for the current
  315. * document and at least one to fetch, and there is no absolute maximum number
  316. * of cached documents.  They will continue to be cached until the value of
  317. * DEFAULT_VIRTUAL_MEMORY_SIZE is exceeded, at which point the oldest one(s)
  318. * will be "deleted" (freed from memory) until the DEFAULT_VIRTUAL_MEMORY_SIZE
  319. * no longer is exceeded, or the number of documents has been reduced to that
  320. * specified by DEFAULT_CACHE_SIZE.
  321. *
  322. * The Unix and VMS but not VAXC implementations use the C library malloc's
  323. * and calloc's for memory allocation, and procedures for taking the actual
  324. * amount of cache into account still need to be developed.  They use only
  325. * the DEFAULT_CACHE_SIZE value, and that specifies the absolute maximum
  326. * number of documents to cache (rather than the maximum number only if
  327. * DEFAULT_VIRTUAL_MEMORY_SIZE has been exceeded, as with VAXC/VAX).
  328. */
  329. #define DEFAULT_CACHE_SIZE 10
  330.  
  331. #if defined(VMS) && defined(VAXC) && !defined(__DECC)
  332. #define DEFAULT_VIRTUAL_MEMORY_SIZE 512000
  333. #endif /* VMS && VAXC && !__DECC */
  334.  
  335. /*****************************
  336.  * PREFERRED_LANGUAGE is the language in MIME notation (e.g., "en",
  337.  * "fr") which will be indicated by Lynx in its Accept-Language headers
  338.  * as the preferred language.  If available, the document will be
  339.  * transmitted in that language.  This definition can be overriden via
  340.  * lynx.cfg.  Users also can change it via the 'o'ptions menu and save
  341.  * that preference in their RC file.
  342.  */
  343. #define PREFERRED_LANGUAGE "en"
  344.  
  345. /****************************************************************
  346.  *   Section 2.   Things that you probably want to change or review
  347.  *
  348.  */
  349.  
  350. /*****************************
  351.  * Enter the name of your anonymous account if you have one
  352.  * as ANONYMOUS_USER.  UNIX systems will use a cuserid
  353.  * or get_login call to determine if the current user is
  354.  * the ANONYMOUS_USER.
  355.  *
  356.  * VMS systems cannot use this feature, so they must specify
  357.  * anonymous accounts using the "-anonymous" command line option.
  358.  *
  359.  * Other systems may use the "-anonymous" option for multiple
  360.  * accounts or precautionary reasons as well.
  361.  *
  362.  * It is very important to have this correctly defined if you 
  363.  * have an anonymous account.  If you do not you will be putting 
  364.  * yourself at GREAT security risk!
  365.  *
  366.  * Later on in this file you can specify privileges for the
  367.  * anonymous account.
  368.  */
  369. #define ANONYMOUS_USER "nouser" 
  370.  
  371. /******************************
  372.  * SHOW_CURSOR controls whether or not the cursor is hidden
  373.  * or appears over the link.  This is just the default, it
  374.  * can be turned on with the -show_cursor command line option.
  375.  * Showing the cursor is handy if you have really stupid terminals
  376.  * that can't do bold and reverse video at the same time or at all.
  377.  */
  378. #define SHOW_CURSOR FALSE
  379.  
  380. /******************************
  381.  * BOXVERT and BOXHORI control the layout of popup menus.  Set to 0 if your
  382.  * curses supports line-drawing characters, set to '*' or any other character
  383.  * to not use line-drawing (e.g., '|' for vertical and '-' for horizontal).
  384.  */
  385. #define BOXVERT '*'
  386. /* #define BOXVERT 0 */
  387. #define BOXHORI '*'
  388. /* #define BOXHORI 0 */
  389.  
  390. /*******************************
  391.  * set to FALSE if you don't want users of your anonymous account
  392.  * who are calling from inside your local domain 
  393.  * to be able to telnet back out
  394.  */
  395. #define CAN_ANONYMOUS_INSIDE_DOMAIN_TELNET      TRUE  
  396.  
  397. /*******************************
  398.  * set to FALSE if you don't want users of your anonymous
  399.  * account who are calling from outside your
  400.  * local domain to be able to telnet back out
  401.  */
  402. #define CAN_ANONYMOUS_OUTSIDE_DOMAIN_TELNET      TRUE 
  403.  
  404. /*******************************
  405.  * set to FALSE if you don't want users of your anonymous account
  406.  * who are calling from inside your local domain
  407.  * to be able to read news
  408.  */
  409. #define CAN_ANONYMOUS_INSIDE_DOMAIN_READ_NEWS     TRUE
  410.  
  411. /*******************************
  412.  * set to FALSE if you don't want users of your anonymous
  413.  * account who are calling from outside your
  414.  * local domain to be able to read news
  415.  */
  416. #define CAN_ANONYMOUS_OUTSIDE_DOMAIN_READ_NEWS    FALSE
  417.  
  418. /*******************************
  419.  * set to FALSE if you don't want users of your anonymous
  420.  * account to be able to print
  421.  */
  422. #define CAN_ANONYMOUS_PRINT           FALSE
  423.  
  424. /*******************************
  425.  * set to FALSE if you don't want users of your anonymous
  426.  * account to be able to mail
  427.  */
  428. #define CAN_ANONYMOUS_MAIL           TRUE
  429.  
  430. /*******************************
  431.  * set to FALSE if you don't want users of your anonymous
  432.  * account to be able to goto random URL's. (The 'g' command)
  433.  */
  434. #define CAN_ANONYMOUS_GOTO        TRUE
  435.  
  436. /*******************************
  437.  * set to FALSE if you don't want users of your anonymous
  438.  * account to be able to jump to URL's (The 'J' command)
  439.  * via the shortcut entries in your JUMPFILE.
  440.  */
  441. #define CAN_ANONYMOUS_JUMP        TRUE
  442.  
  443. /*******************************
  444.  * set to FALSE if you don't want to recall the previous shortcut
  445.  * when using the 'J'ump command (if TRUE, will recall as it does
  446.  * for the 'g'oto command)
  447.  */
  448. #define JUMPBUFFER      TRUE  
  449.  
  450. /*******************************
  451.  * set to FALSE if you don't want users of your anonymous
  452.  * account who are calling from inside your local domain
  453.  * to be able to use ftp
  454.  */
  455. #define CAN_ANONYMOUS_INSIDE_DOMAIN_FTP      TRUE  
  456.  
  457. /*******************************
  458.  * set to FALSE if you don't want users of your anonymous
  459.  * account who are calling from outside your local domain
  460.  * to be able to use ftp
  461.  */
  462. #define CAN_ANONYMOUS_OUTSIDE_DOMAIN_FTP      TRUE 
  463.  
  464. /*******************************
  465.  * set to FALSE if you don't want users of your anonymous
  466.  * account who are calling from inside your local domain 
  467.  * to be able to use rlogin
  468.  */
  469. #define CAN_ANONYMOUS_INSIDE_DOMAIN_RLOGIN      TRUE  
  470.  
  471. /*******************************
  472.  * set to FALSE if you don't want users of your anonymous
  473.  * account who are calling from outside your local domain
  474.  * to be able to use rlogin
  475.  */
  476. #define CAN_ANONYMOUS_OUTSIDE_DOMAIN_RLOGIN      TRUE 
  477.  
  478. /*******************************
  479.  * Execution links/scripts configuration.
  480.  *
  481.  * Execution links and scripts allow you to run
  482.  * local programs by activating links within Lynx.
  483.  *
  484.  * An execution link is of the form:
  485.  *
  486.  *     lynxexec:<COMMAND>
  487.  * or:
  488.  *     lynxexec://<COMMAND>
  489.  *
  490.  * where <COMMAND> is a command that Lynx will
  491.  * run when the link is activated.
  492.  * The double-slash should be included if the
  493.  * command begins with an '@', as for executing
  494.  * VMS command files.  Otherwise, the double-
  495.  * slash can be omitted.
  496.  *
  497.  * Execution scripts take the form of a standard
  498.  * URL.  Extension mapping or MIME typing is used
  499.  * to decide if the file is a script and should be
  500.  * executed.  The current extensions are:
  501.  * .csh, .ksh, and .sh on UNIX systems and .com on
  502.  * VMS systems.  Any time a file of this type is
  503.  * accessed Lynx will look at the user's options
  504.  * settings to decide if the script can be executed.
  505.  * Current options include: Only exec files that
  506.  * reside on the local machine and are referenced
  507.  * with a "file://localhost" URL, All execution
  508.  * off, and all execution on.
  509.  *
  510.  * The following definitions will add execution
  511.  * capabilities to Lynx.  You may define none, one
  512.  * or both.
  513.  *
  514.  * I strongly recommend that you define neither one
  515.  * of these since execution links/scripts can represent
  516.  * very serious security risk to your system and its
  517.  * users.  If you do define these I suggest that
  518.  * you only allow users to execute files/scripts
  519.  * that reside on your local machine. 
  520.  *
  521.  * YOU HAVE BEEN WARNED!
  522.  *
  523.  * Note: if you are enabling execution scripts you should
  524.  * also see src/HTInit.c to verify/change the execution
  525.  * script extensions and/or commands.
  526.  */
  527. /* #define EXEC_LINKS  */ 
  528. /* #define EXEC_SCRIPTS  */ 
  529.  
  530.  
  531. #if defined(EXEC_LINKS) || defined(EXEC_SCRIPTS)
  532.  
  533. /**********
  534.  * if ALLOW_USERS_TO_CHANGE_EXEC_WITHIN_OPTIONS 
  535.  * is defined then the user will be able to change
  536.  * the execution status within the options screen.
  537.  */
  538. /* #define ALLOW_USERS_TO_CHANGE_EXEC_WITHIN_OPTIONS */
  539.  
  540. /**********
  541.  * if NEVER_ALLOW_REMOTE_EXEC is defined then local execution 
  542.  * of scripts or lynxexec: URL's will only be implemented from
  543.  * HTML files that were accessed via a "file://localhost/" URL,
  544.  * and the options menu for "L)ocal executions links" will only
  545.  * allow toggling between "ALWAYS OFF" and "FOR LOCAL FILES ONLY".
  546.  */
  547. /* #define NEVER_ALLOW_REMOTE_EXEC */
  548.  
  549. /*****************************
  550.  * These are for executable shell scripts and links.
  551.  * Set to FALSE unless you really know what you're
  552.  * doing.
  553.  *
  554.  * This only applies if you are compiling with EXEC_LINKS or
  555.  * EXEC_SCRIPTS defined.
  556.  *
  557.  * The first two settings:
  558.  * LOCAL_EXECUTION_LINKS_ALWAYS_ON 
  559.  * LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE
  560.  * specify the DEFAULT setting of the users execution link
  561.  * options, but the user may still change those options.
  562.  * If you do not wish the user to be able to change the
  563.  * execution link settings you may wish to use the commandline option:
  564.  *    -restrictions=exec_frozen
  565.  *
  566.  * LOCAL_EXECUTION_LINKS_ALWAYS_ON will be FALSE
  567.  * if NEVER_ALLOW_REMOTE_EXEC has been defined.
  568.  *
  569.  * if LOCAL_EXECUTION_LINKS_ALWAYS_OFF_FOR_ANONYMOUS is 
  570.  * true all execution links will be disabled when the
  571.  * -anonymous command line option is used.  Anonymous
  572.  * users are not allowed to change the execution options
  573.  * from within the Lynx options menu so you might be able
  574.  * to use this option to enable execution links and set
  575.  * LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE to TRUE to
  576.  * give anonymous execution link capability without compromising
  577.  * your system (see comments about TRUSTED_EXEC rules in
  578.  * lynx.cfg for more information).
  579.  *
  580.  */
  581. #define LOCAL_EXECUTION_LINKS_ALWAYS_ON          FALSE
  582. #define LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE  FALSE
  583. #define LOCAL_EXECUTION_LINKS_ALWAYS_OFF_FOR_ANONYMOUS FALSE
  584.  
  585. #endif /*  defined(EXEC_LINKS) || defined(EXEC_SCRIPTS) */
  586.  
  587. /*********************************
  588.  *  MAIL_SYSTEM_ERROR_LOGGING will send a message to the owner of 
  589.  *  the information if there is one, every time
  590.  *  that a document cannot be accessed!
  591.  *
  592.  *  NOTE: This can generate A LOT of mail, be warned.
  593.  */
  594. #define MAIL_SYSTEM_ERROR_LOGGING   FALSE  /*mail a message for every error?*/
  595.  
  596. /*********************************
  597.  * If CHECKMAIL is set to TRUE, the user will be informed (via a statusline
  598.  * message) about the existence of any unread mail at startup of Lynx, and
  599.  * will get statusline messages if subsequent new mail arrives.  If a jumps
  600.  * file with a lynxexec URL for invoking mail is available, or your html
  601.  * pages include an mail launch file URL, the user thereby can access mail
  602.  * and read the messages.  The checks and statusline reports will not be
  603.  * performed if Lynx has been invoked with the -restrictions=mail switch.
  604.  *
  605.  *  VMS USERS !!!
  606.  * New mail is normally broadcast as it arrives, via "unsolicitied screen
  607.  * broadcasts", which can be "wiped" from the Lynx display via the Ctrl-W
  608.  * command.  You may prefer to disable the broadcasts and use CHECKMAIL
  609.  * instead (e.g., in a public account which will be used by people who
  610.  * are ignorant about VMS).
  611.  */
  612. #define CHECKMAIL    FALSE    /* report unread and new mail messages */
  613.  
  614. /*********************************
  615.  * VI_KEYS can be turned on by the user in the options
  616.  * screen or the .lynxrc file.  This is just the default.
  617.  */
  618. #define VI_KEYS_ALWAYS_ON           FALSE /* familiar h,j,k, & l */
  619.  
  620. /*********************************
  621.  * EMACS_KEYS can be turned on by the user in the options
  622.  * screen or the .lynxrc file.  This is just the default.
  623.  */
  624. #define EMACS_KEYS_ALWAYS_ON           FALSE /* familiar ^N, ^P, ^F, ^B */
  625.  
  626. /*********************************
  627.  * DEFAULT_KEYPAD_MODE specifies whether by default the user
  628.  * has numbers that work like arrows or else numbered links
  629.  * DEFAULT KEYPAD MODE may be set to 
  630.  *    LINKS_ARE_NUMBERED  or
  631.  *    NUMBERS_AS_ARROWS
  632.  */
  633. #define DEFAULT_KEYPAD_MODE           NUMBERS_AS_ARROWS
  634.  
  635. /********************************
  636.  * The default search.
  637.  * This is a default that can be overridden by the user!
  638.  */
  639. #define CASE_SENSITIVE_ALWAYS_ON    FALSE /* case sensitive user search */
  640.  
  641. /********************************
  642.  * If NO_DOT_FILES is TRUE, the user will not be allowed to specify files
  643.  * beginning with a dot in reply to output filename prompts.
  644.  *
  645.  * On VMS, it also will stop inclusion of files beginning with a dot
  646.  * (e.g., file:/localhost/device/directory/.lynxrc) in the directory
  647.  * browser's listings (they are never included on Unix).
  648.  */
  649. #define NO_DOT_FILES    FALSE  /* disallow writing of dot files */
  650.  
  651.  
  652. /****************************************************************
  653.  *   Section 3.   Things that you should not change until you
  654.  *            have a good knowledge of the program
  655.  */
  656.  
  657. #define LYNX_NAME "Lynx"
  658. #define LYNX_VERSION "2-4"
  659. #ifndef MAXINT
  660. #define MAXINT 2147483647
  661. #endif /* !MAXINT */
  662.  
  663. /* text strings for certain actions */
  664. /* changing these text strings is a way to customize 
  665.  * your environment to better suit your tastes
  666.  */
  667. #define QUIT "Are you sure you want to quit? [Y] "
  668. #define HELP \
  669.  "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
  670. #define MOREHELP \
  671.  "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
  672. #define MORE "-- press space for next page --"
  673. #define FORM_LINK_TEXT_MESSAGE \
  674.  "(Text entry field) Enter text. Use UP or DOWN arrows or tab to move off."
  675. #define FORM_LINK_PASSWORD_MESSAGE \
  676.  "(Password entry field) Enter text. Use UP or DOWN arrows or tab to move off."
  677. #define FORM_LINK_CHECKBOX_MESSAGE \
  678.  "(Checkbox Field)   Use right-arrow or <return> to toggle."
  679. #define FORM_LINK_SUBMIT_MESSAGE \
  680.  "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
  681. #define FORM_LINK_RESET_MESSAGE \
  682.  "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
  683. #define FORM_LINK_OPTION_LIST_MESSAGE \
  684.  "(Option list) Hit return and use arrow keys and return to select option."
  685. #define NORMAL_LINK_MESSAGE \
  686.  "(NORMAL LINK)   Use right-arrow or <return> to activate."
  687. #define LINK_NOT_FOUND "The resource requested is not available at this time."
  688. #define WWW_WAIT_MESSAGE "Getting %s"
  689. #define ADVANCED_URL_MESSAGE "URL: %s"
  690. #define WWW_FAIL_MESSAGE "Unable to access WWW file!!!"
  691. #define WWW_INDEX_MESSAGE "This is a searchable index.  Use %s to search."
  692. #define WWW_INDEX_MORE_MESSAGE \
  693.  "--More--  This is a searchable index.  Use %s to search."
  694. #define BAD_LINK_NUM_ENTERED "You have entered an invalid link number."
  695. #define SOURCE_HELP \
  696.  "Currently viewing document source.  Press '\\' to return to rendered version."
  697. #define NOVICE_LINE_ONE \
  698.  "  Arrow keys: Up and Down to move. Right to follow a link; Left to go back.  \n"
  699. #define NOVICE_LINE_TWO \
  700.  " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
  701. #define NOVICE_LINE_TWO_A \
  702.  "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
  703. #define NOVICE_LINE_TWO_B \
  704.  "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
  705. #define NOVICE_LINE_TWO_C \
  706.  "  O)ther cmds  C)omment  History: <delete>  Bookmarks: V)iew, A)dd, R)emove  \n"
  707. #define FORM_NOVICELINE_ONE \
  708.  "            Enter text into the field by typing on the keyboard              "
  709. #define FORM_NOVICELINE_TWO \
  710. "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
  711. #define RETURN_TO_LYNX "Press <return> to return to Lynx."
  712. #define NO_JUMPFILE "No jump file is currently available."
  713.  
  714. #ifdef DIRED_SUPPORT
  715. #define DIRED_NOVICELINE \
  716.  "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
  717. #endif /* DIRED_SUPPORT */
  718.  
  719. #define MAXBASE 100       /* max length of base directory */
  720. #define MAXHIGHLIGHT 160 /* max length of highlighted text */
  721. #define MAXTARGET 130    /* max length of target string */
  722. #define LINESIZE 1024    /* max length of line to read from file*/
  723. #define MAXFNAME 1280    /* max filename length DDD/FILENAME.EXT */
  724. #define MAXCOMMAND MAXFNAME /* max length of command should be the same */
  725. #define MAXHIST  512    /* number of links we remember in history */
  726. #define MAXLINKS 256    /* max links on one screen */
  727.    /* traversal lookup table file, don't worry about it for now */
  728. #define TRAVERSE_FILE "/homea/local/lynx2-4/traverse.file"
  729. #define TRAVERSE_ERRORS "/homea/local/lynx2-4/traverse.errors"
  730. #define TRAVERSE_FOUND_FILE "/homea/local/lynx2-4/traverse.found"
  731.  
  732. #ifndef VMS
  733. /* Check these paths on Unix. */
  734. #define    COMPRESS_PATH    "/usr/ucb/compress"
  735. #define    UNCOMPRESS_PATH    "/usr/ucb/uncompress"
  736. #define    ZCAT_PATH    "/usr/local/bin/zcat"
  737. #define    GZIP_PATH    "/usr/local/bin/gzip"
  738. #define    ZIP_PATH    "/usr/local/bin/zip"
  739. #define    UNZIP_PATH    "/usr/local/bin/unzip"
  740. #define    INSTALL_PATH    "/bin/install"
  741. #define    MKDIR_PATH    "/bin/mkdir"
  742. #define    MV_PATH        "/bin/mv"
  743. #define    RM_PATH        "/bin/rm"
  744. #define    TAR_PATH    "/bin/tar"
  745. #define    TOUCH_PATH    "/bin/touch"
  746. #define COPY_PATH    "/bin/cp"
  747. #endif /* !VMS */
  748.  
  749. #endif /* USERDEFS_H */
  750.