Annotation of coherent/d/usr/bin/elvis/doc/cflags.doc, revision 1.1.1.1

1.1       root        1: 
                      2:      Elvis 1.4                     CFLAGS                       Page 9-1
                      3: 
                      4: 
                      5: E9.  CFLAGSF
                      6: 
                      7:         Elvis  uses  many  preprocessor  symbols to control compilation.
                      8:      Some of  these  control  the  sizes  of  buffers  and  such.    The
                      9:      "-DNO_XXXX" options remove small sets of related features.  
                     10: 
                     11:         Most  Elvis  users  will  probably  want  to  keep  all features
                     12:      available.  Minix-PC users, though, will  have  to  sacrifice  some
                     13:      sets because  otherwise  Elvis  would be too bulky to compile.  The
                     14:      "asld" phase of the compiler craps out.  
                     15: 
                     16:      -DM_SYSV, -DTOS, -DCOHERENT 
                     17:             These flags tell the compiler that Elvis is  being  compiled
                     18:             for  System-V  UNIX,  Atari  TOS, or Coherent, respectively.
                     19:             For other systems, the config.h file can generally figure it 
                     20:             out automatically.  
                     21: 
                     22:      -DDATE=4string5 
                     23:             DATE should be defined to be  a  string  constant.    It  is
                     24:             printed  by  the :version command as the compilation date of
                     25:             the program.  
                     26: 
                     27:             It is only used in cmd1.c, and even there you may  leave  it
                     28:             undefined without causing an urp.  
                     29: 
                     30:      -DNBUFS=4number5 
                     31:             Elvis  keeps  most  of your text in a temporary file; only a
                     32:             small amount is actually stored in RAM.   This  flag  allows
                     33:             you  to  control  how  much of the file can be in RAM at any
                     34:             time.  The default is 5 blocks.  (See  the  -DBLKSIZE  flag,
                     35:             below.) 
                     36: 
                     37:             More  RAM  allows  global changes to happen a little faster.
                     38:             If you're just making many small changes in one section of a 
                     39:             file, though, extra RAM won't help much.  
                     40: 
                     41:      -DBLKSIZE=4number5 
                     42:             This  controls  the  size  of   blocks   that   Elvis   uses
                     43:             internally.   The  value  of BLKSIZE must be a power of two.
                     44:             The default value is 1024, which allows you to edit files up 
                     45:             to almost 512K bytes long.  Every time you  double  BLKSIZE,
                     46:             you quadruple the size of a text file that Elvis can handle, 
                     47:             but you also cause the temporary file to grow faster.  
                     48: 
                     49:      -DTMPDIR=4string5 
                     50:             This sets the default value of the "directory" option, which 
                     51:             specifies where  the  temporary  files  should  reside.  The
                     52:             value of TMPDIR must be a string,  so  be  sure  your  value
                     53:             includes the quote characters on each end.  
                     54: 
                     55:      -DEXRC=4str5, -DHMEXRC=4str5, -DSYSEXRC=4str5, -DEXINIT=4str5 
                     56:             This  lets  you  control  the  names  of  the initialization
                     57:             files.  Their values must be strings, so  be  careful  about
                     58:             quoting.  
                     59: 
                     60: 
                     61: 
                     62: 
                     63: 
                     64: 
                     65: 
                     66: 
                     67: 
                     68:      Elvis 1.4                     CFLAGS                       Page 9-2
                     69: 
                     70: 
                     71:             EXRC  is  the name of the initialization file in the current
                     72:             directory.  Its default value is ".exrc" on UNIX systems  --
                     73:             the same  as  the  real  vi.    For other systems, check the
                     74:             config.h file.  
                     75: 
                     76:             HMEXRC is the name of the initialization file in  your  home
                     77:             directory.  By  default, it is the same as EXRC.  Elvis will
                     78:             automatically prepend the name of  your  home  directory  to
                     79:             HMEXRC at run time, so don't give a full path name.  
                     80: 
                     81:             SYSEXRC  is  the  name of a system-wide initialization file.
                     82:             It has no default value; if you don't define a value for it, 
                     83:             then the code that supports  SYSEXRC  just  isn't  compiled.
                     84:             The value of SYSEXRC should be a full pathname, in quotes.  
                     85: 
                     86:             EXINIT  is  the  name  of  an  environment variable that can
                     87:             contain initialization commands.   Normally,  its  value  is
                     88:             "EXINIT".  
                     89: 
                     90:      -DKEYWORDPRG=4string5 
                     91:             This  flag  determines the default value of the "keywordprg"
                     92:             option.  Its value must be a string,  so  be  careful  about
                     93:             quoting.   The default value of this flag is "ref", which is
                     94:             a C reference program.  
                     95: 
                     96:      -DCC_COMMAND=4string5 -DMAKE_COMMAND=4string5 -DERRLIST=4string5 
                     97:             These control the  names  of  the  C  compiler,  the  "make"
                     98:             utility, and  the error output file, respectively.  They are
                     99:             only used if -DNO_ERRLIST is not given.  
                    100: 
                    101:      -DMAXMAPS=4number5 
                    102:             This controls the capacity of the key map table.  
                    103: 
                    104:      -DMAXRCLEN=4number5 
                    105:             This determines how large a .exrc file can be  (measured  in
                    106:             bytes).  The  default  is  1000 bytes.  If you increase this
                    107:             value significantly, then you may  need  to  allocate  extra
                    108:             memory for  the  stack.    See  the  "CHMEM"  setting in the
                    109:             Makefile.  
                    110: 
                    111:      -DSHELL=4string5 
                    112:             This is the default value of the "shell" option,  and  hence
                    113:             the default  shell  used  from  within  Elvis.    This  only
                    114:             controls the  default;  the  value  you  give  here  may  be
                    115:             overridden  at  run-time  by setting an environment variable
                    116:             named SHELL (or COMSPEC for MS-DOS).  Its value  must  be  a
                    117:             string constant, so be careful about quoting.  
                    118: 
                    119:      -DTAGS=4string5 
                    120:             This  sets the name of the "tags" file, which is used by the
                    121:             :tag command.  Its value must be a string  constant,  so  be
                    122:             careful about quoting.  
                    123: 
                    124:      -DCS_IBMPC 
                    125:             The  digraph  table  and flipcase option will normally start
                    126:             out empty.  However, if you add -DCS_IBMPC or -DCS_LATIN1 to 
                    127:             your CFLAGS, then they will start  out  filled  with  values
                    128:             that are appropriate for the IBM PC character set or the ISO 
                    129: 
                    130: 
                    131: 
                    132: 
                    133: 
                    134:      Elvis 1.4                     CFLAGS                       Page 9-3
                    135: 
                    136: 
                    137:             Latin-1 character set, respectively.  
                    138: 
                    139:      -DDEBUG 
                    140:             This  adds  the  ":debug" and ":validate" commands, and also
                    141:             adds many internal consistency checks.    It  increases  the
                    142:             size of the ".text" segment by about 5K.  
                    143: 
                    144:      -DCRUNCH 
                    145:             This  flag  removes some non-critical code, so that Elvis is
                    146:             smaller.  For example,  it  removes  a  short-cut  from  the
                    147:             regexp package,  so  that  text  searches are slower.  Also,
                    148:             screen updates are not as efficient.  A  couple  of  obscure
                    149:             features are disabled by this, too.  
                    150: 
                    151:      -DNO_MKEXRC 
                    152:             This  removes  the  ":mkexrc" command, so you have to create
                    153:             any .exrc files manually.  The size  of  the  .text  segment
                    154:             will be reduced by about 600 bytes.  
                    155: 
                    156:      -DNO_CHARATTR 
                    157:             Permanently disables  the charattr option.  This reduces the
                    158:             size of your ".text" segment by about 850 bytes.  
                    159: 
                    160:      -DNO_RECYCLE 
                    161:             Normally, Elvis will recycle space (from the tmp file) which 
                    162:             contains totally obsolete text.   This  flag  disables  this
                    163:             recycling.   Without recycling, the ".text" segment is about
                    164:             1K smaller than it would otherwise  be,  but  the  tmp  file
                    165:             grows much  faster.  If you have a lot of free space on your
                    166:             harddisk, but Elvis is too bulky to run with recycling, then 
                    167:             try it without recycling.  
                    168: 
                    169:             When using a version of Elvis that has  been  compiled  with
                    170:             -DNO_RECYCLE,  you  should  be  careful to avoid making many
                    171:             small changes to a file because each individual change  will
                    172:             cause the  tmp  file  to  grow  by at least 1k.  Hitting "x"
                    173:             thirty times counts as  thirty  changes,  but  typing  "30x"
                    174:             counts as  one  change.   Also, you should occasionally do a
                    175:             ":w" followed by a ":e" to start with a fresh tmp file.  
                    176: 
                    177:      -DNO_SENTENCE 
                    178:             Leaves out the "(" and ")" visual mode commands.  Also,  the
                    179:             "[[",  "]]",  "{", and "}" commands will not recognize *roff
                    180:             macros.  The sections and paragraphs options go away.   This
                    181:             saves about 650 bytes in the ".text" segment.  
                    182: 
                    183:      -DNO_CHARSEARCH 
                    184:             Leaves   out  the  visual  commands  which  locate  a  given
                    185:             character in the current line: "f", "t", "F", "T",  ","  and
                    186:             ";".  This saves about 900 bytes.  
                    187: 
                    188:      -DNO_EXTENSIONS 
                    189:             Leaves out the "K" and "#" visual commands.  Also, the arrow 
                    190:             keys will  no  longer work in input mode.  (Other extensions
                    191:             are  either  inherent  in  the  design  of  elvis,  or   are
                    192:             controlled  by  more  specific  flags, or are too tiny to be
                    193:             worth removing.) This saves about 250 bytes.  
                    194: 
                    195: 
                    196: 
                    197: 
                    198: 
                    199: 
                    200:      Elvis 1.4                     CFLAGS                       Page 9-4
                    201: 
                    202: 
                    203:      -DNO_MAGIC 
                    204:             Permanently  disables  the  "magic"  option,  so  that  most
                    205:             meta-characters   in   a   regular   expression   are  *NOT*
                    206:             recognized.  This saves about 3k of  space  in  the  ".text"
                    207:             segment,  because the complex regular expression code can be
                    208:             replaced by much simpler code.  
                    209: 
                    210:      -DNO_SHOWMODE 
                    211:             Permanently disables the "showmode" option, saving about 250 
                    212:             bytes.  
                    213: 
                    214:      -DNO_CURSORSHAPE 
                    215:             Normally, Elvis tries to adjust the shape of the cursor as a 
                    216:             reminder of which mode you're in.  The -DNO_CURSORSHAPE flag 
                    217:             disables this, saving about 150 bytes.  
                    218: 
                    219:      -DNO_DIGRAPH 
                    220:             To allow  entry  of  non-ASCII  characters,  Elvis  supports
                    221:             digraphs.  A digraph is a single (non-ASCII) character which 
                    222:             is   entered   as   a   combination  of  two  other  (ASCII)
                    223:             characters.   If  you  don't   need   to   input   non-ASCII
                    224:             characters,  or  if  your  keyboard supports a better way of
                    225:             entering non-ASCII characters,  then  you  can  disable  the
                    226:             digraph code and save about 450 bytes.  
                    227: 
                    228:      -DNO_ERRLIST 
                    229:             Elvis   adds  a  ":errlist"  command,  which  is  useful  to
                    230:             programmers.  If  you  don't  need  this  feature,  you  can
                    231:             disable it  via the -DNO_ERRLIST flag.  This will reduce the
                    232:             .text segment by about 900 bytes, and the  .bss  segment  by
                    233:             about 300 bytes.  
                    234: 
                    235:      -DNO_ABBR 
                    236:             The -DNO_ABBR flag disables the ":abbr" command, and reduces 
                    237:             the size of Elvis by about 600 bytes.  
                    238: 
                    239:      -DNO_OPTCOLS 
                    240:             When  Elvis  displays  the  current options settings via the
                    241:             ":set"  command,  the  options  are  normally  sorted   into
                    242:             columns.   The  -DNO_OPTCOLS  flag  causes the options to be
                    243:             sorted across  the  rows,  which  is  much  simpler.     The
                    244:             -DNO_OPTCOLS flag will reduce the size of your .text segment 
                    245:             by about 500 bytes.  
                    246: 
                    247:      -DNO_MODELINE 
                    248:             This removes all support for modelines.  
                    249: 
                    250: 
                    251: 
                    252: 
                    253: 
                    254: 
                    255: 
                    256: 
                    257: 
                    258: 
                    259: 
                    260: 
                    261: 
                    262: 
                    263: 
                    264: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.