home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Spezial / SPEZIAL2_97.zip / SPEZIAL2_97.iso / ANWEND / EDITOR / NVI179B / NVI179B.ZIP / FAQ next >
Text File  |  1996-10-14  |  8KB  |  161 lines

  1. @(#)FAQ    8.13 (Berkeley) 10/14/96
  2.  
  3. Q: How can I get vi to display my character set?
  4. A: Vi uses the C library routine isprint(3) to determine if a character
  5.    is printable, or should be displayed as an octal or hexadecimal value
  6.    on the screen.  Generally, if vi is displaying printable characters
  7.    in octal/hexadecimal forms, your environment is not configured correctly.
  8.    Try looking at the man pages that allow you to configure your locale.
  9.    For example, to configure an ISO 8859-1 locale under Solaris using csh,
  10.    you would do:
  11.  
  12.     setenv LANG C
  13.     setenv LC_CTYPE iso_8859_1
  14.  
  15.    Other LC_CTYPE systems/values that I'm told work:
  16.  
  17.    System    Value
  18.    ======    =====
  19.    FreeBSD    lt_LN.ISO_8859-1
  20.    HP-UX  9.X    american.iso88591
  21.    HP-UX 10.X    en_US.iso88591
  22.    SunOS  4.X    iso_8859_1
  23.    SunOS  5.X    iso_8859_1
  24.  
  25.    If there's no other solution, you can use the print and noprint edit
  26.    options of vi to specify that a specific character is printable or not
  27.    printable.
  28.     
  29. Q: My map won't work!
  30. A: One thing that you should immediately check if a vi map doesn't work
  31.    is if depends on the final cursor position after a P or p command.
  32.    Historic vi's were inconsistent as to the final position of the cursor,
  33.    and, to make matter worse, the final cursor position also depended on
  34.    whether the put text came from a named or unnamed buffer!  Vi follows
  35.    the POSIX 1003.2 standard on this one, and makes this consistent, always
  36.    placing the cursor on the first character.
  37.  
  38. Q: I'm using ksh or csh as my vi edit option shell value, and file
  39.    expansions don't work right!
  40. A: The problem may be in your ksh or csh startup files, e.g., .cshrc.  Vi
  41.    executes the shell to do name expansion, and the shell generally reads
  42.    its startup files.  If the startup files are not correctly configured
  43.    for non-interactive use, e.g., they always echo a prompt to the screen,
  44.    vi will be unable to parse the output and things will not work
  45.    correctly.
  46.  
  47. Q: How does the iclower edit option differ from the ignorecase (i.e. ic)
  48.    edit option?
  49. A: The difference is that the ignorecase edit option always ignores the
  50.    case of letters in the Regular Expression (RE), and the iclower edit
  51.    option only ignores the case if there are no upper-case letters in the
  52.    RE.  If any upper-case letters appear in the Regular Expression, then
  53.    it will be treated case-sensitively, as if the ignorecase edit option
  54.    was not set.
  55.  
  56. Q: When I edit binary files, vi appends a <newline> to the last line!
  57. A: This is historic practice for vi, and further, it's required by the
  58.    POSIX 1003.2 standard.  My intent is to provide a command line and/or
  59.    edit option to turn this behavior off when I switch to version 2.0 of
  60.    the Berkeley DB package.
  61.  
  62. Q: My cursor keys don't work when I'm in text input mode!
  63. A: A common problem over slow links is that the set of characters sent by
  64.    the cursor keys don't arrive close enough together for vi to understand
  65.    that they are a single keystroke, and not separate keystrokes.  Try
  66.    increasing the value of the escapetime edit option, which will cause
  67.    vi to wait longer before deciding that the <escape> character that
  68.    starts cursor key sequences doesn't have any characters following it.
  69.  
  70. Q: When I edit some files, vi seems to hang forever, and I have to kill it.
  71. A: Vi uses flock(2) and fcntl(2) to do file locking.  When it attempts to
  72.    acquired a lock for a file on an NFS mounted filesystem, it can hang
  73.    for a very long (perhaps infinite) period of time.  Turning off the
  74.    "lock" edit option will keep vi from attempting to acquire any locks
  75.    on the files you edit.
  76.  
  77. Q: When I compile vi I get lots of warnings about pointer assignments
  78.    being incompatible!
  79. A: Vi is partially written to support wide characters.  When this code
  80.    interfaces with the code that doesn't yet support wide characters,
  81.    the pointer types clash.  This will hopefully be fixed in the near
  82.    future, but I've been saying that for awhile, now.
  83.  
  84. Q: I get jumpy scrolling behavior in the screen!
  85. A: This is almost certainly a problem with the system's terminfo or
  86.    termcap information for your terminal.  If the terminfo/termcap entry
  87.    doesn't have the settable scrolling region capabilities, or the more
  88.    powerful scrolling commands, these behaviors can result.  Historic
  89.    implementations of vi, and some of the vi clones, don't suffer from
  90.    this problem because they wrote their own screen support instead of
  91.    using the curses library.
  92.  
  93.    The solution is to find a good terminfo or termcap entry for your
  94.    terminal, which will fix the problem for all of the applications on
  95.    your system, not just vi.  Eric Raymond maintains the freely
  96.    redistributable termcap/terminfo entries.  They can be downloaded
  97.    from http://www.ccil.org/~esr/ncurses.html, or you can contact him
  98.    at esr@snark.thyrsus.com.
  99.  
  100. Q: The entire screen repaints on every keystroke!
  101. A: Your system's curses implementation is broken.  You should use the
  102.    curses implementation provided with vi or a curses replacement such
  103.    as ncurses.  Eric Raymond is one of the maintainers of the freely
  104.    redistributable ncurses package.  You can download ncurses from
  105.    http://www.ccil.org/~esr/ncurses.html, or you can contact him at
  106.    esr@snark.thyrsus.com.
  107.  
  108. Q: When I use vi on a Sun console (terminal type sun-34) the screen
  109.    is occasionally trashed, usually when exiting vi!
  110. A: The Sun console can't handle the 'al' capability of the termcap
  111.    entry (the il1 capability of terminfo entries).  If you delete that
  112.    entry from your terminfo/termcap information everything should work
  113.    correctly.
  114.  
  115. Q: I don't have a version of ctags (or I have ctags, but it doesn't tag
  116.    nearly enough things)!
  117. A: There's a version of ctags available on the 4.4BSD-Lite distributions,
  118.    as well as the FreeBSD, NetBSD, Linux and GNU distributions.  Or, you
  119.    might want to try Exuberant Ctags:
  120.  
  121.     Title:        Exuberant Ctags
  122.     Version:    1.3
  123.     Entered-date:    16JUN96
  124.     Description:
  125.         A better ctags which generates tags for all possible tag types:
  126.         macro definitions, enumerated values (values inside enum{...}),
  127.         function and method definitions, enum/struct/union tags, external
  128.         function prototypes (optional), typedefs, and variable
  129.         declarations. It is far less easily fooled by code containing #if
  130.         preprocessor conditional constructs, using a conditional path
  131.         selection algorithm to resolve complicated choices, and a
  132.         fall-back algorithm when this one fails. Can also be used to print
  133.         out a list of selected objects found in source files.
  134.     Keywords:    ctags, tags, exuberant
  135.     Author:        darren@sirsi.com (Darren Hiebert)
  136.             darren@hiwaay.net (Darren Hiebert)
  137.     Maintained-by:    darren@sirsi.com (Darren Hiebert)
  138.             darren@hiwaay.net (Darren Hiebert)
  139.     Primary-site:    sunsite.unc.edu /pub/Linux/devel/lang/c
  140.             27kB ctags-1.3.tar.gz
  141.     Alternate-site:    ftp.halcyon.com /local/gvr
  142.             27kB ctags-1.3.tar.gz
  143.     Original-site:
  144.     Platforms:    UNIX, MSDOS, WindowsNT, Windows95, OS/2, Amiga
  145.     Copying-policy:    Public domain
  146.  
  147. Q: When I update a file I already have open, and use :e to reread it, I
  148.    get nul's for the rest of the file!
  149. A: Your system's implementation of mmap(2) has a bug; you will have to
  150.    exit vi and re-execute it.
  151.  
  152. Q: Where can I get cscope?
  153. A: Cscope is available on UNIXWare System V Release 4.0 variants such as
  154.    Sun Solaris 2.x (/opt/SUNWspro/bin) and UNIXWare System V Release 4.1.
  155.  
  156.    You can buy version 13.3 source with an unrestricted license for $400
  157.    from AT&T Software Solutions by calling +1-800-462-8146.  Binary
  158.    redistribution of cscope is an additional $1500, one-time flat fee.
  159.  
  160.    For more information, see http://www.unipress.com/att/new/cscope.html.
  161.