René Nyffenegger's collection of things on the web
René Nyffenegger on Oracle - Most wanted - Feedback -
 

Features in VIM

Various features can be enabled (or disabled) when VIM is compiled. These can be specified in feature.h;
see ":help +feature-list"
FEAT_TAG_ANYWHITE: Allow any white space to seperate the fields in a tags file. If not defined, only tabulaters are allowed.
FEAT_OSFILETYPE and DFLT_OFT
FEAT_XIM, USE_XIM, FEAT_HANGULIN, FEAT_XFONTSET, FEAT_MBYTE_IME: ???

FEAT_SMALL

FEAT_WINDOWSMultiple Windows and status line
FEAT_CMDHISTCommand line history
FEAT_JUMPLISTJumplist (ctrl-o and ctrl-i)
FEAT_CMDWIN???
FEAT_VISUALVisual mode  
FEAT_VISUAL_EXTRAExtra visual (block operations)
MSWIN_FIND_REPLACEFind replace dialogFEAT_GUI_MSWIN
FEAT_CMDWIN requires FEAT_VERTSPLIT and FEAT_CMDHIST.
If MSWIN_FIND_REPLACE is defined, MSWIN_FR_BUFSIZE must be defined as well.

FEAT_NORMAL

FEAT_LISTCMDSBuffer list and argument list: :buffer, :bnext, :bdel, :argdelete, etc
FEAT_VERTSPLITVertically split windows
FEAT_FOLDINGFolding lines
FEAT_DIGRAPHSDigraphs according to RFC 1345. ctrl-k
FEAT_LOCALMAPMappings and abbreviations local to buffer
FEAT_INS_EXPANDctrl-n, ctrl-p, ctrl-x
FEAT_CMDL_COMPLCompletion of mappings and abbreviations in cmdline mode
VIM_BACKTICKInternal backtick expansion
FEAT_TEXTOBJText objects: vaw das
FEAT_VIRTUALEDITVirtual edit
FEAT_VREPLACEgR gr
FEAT_CMDL_INFOshowcmd and ruler options
FEAT_LINEBREAKshowbreak, breakat, linebreak options
FEAT_EX_EXTRA:retab, :right, :left, :center, :normal
FEAT_SEARCH_EXTRAhlsearch and incsearch options
FEAT_QUICKFIXQuickfix commands
FEAT_SEARCHPATHgf and <cfile>
FEAT_FIND_ID[I :search ^W^I :checkpath etc
FEAT_PATH_EXTRAup/downwards searching in path and tags
FEAT_TAG_BINSCan use binary search for the tags file.
FEAT_TAG_OLDSTATICOld style static tags
FEAT_EVAL:let, :if etc
FEAT_USR_CMDSAllows the user to define his own commands
FEAT_PRINTER:hardcopy
FEAT_POSTSCRIPT???
FEAT_MODIFY_FNAMEFile name modifiers: %:p:h
FEAT_AUTOCMD:autocmdFEAT_WINDOWS, FEAT_AUTOCMD
FEAT_DIFFdiff functionality
FEAT_TITLEtitle, icon, statusline, rulerformat, titlestring, iconstring options. %O in statusline. line2byte() and byte2line(). 
FEAT_STL_OPTFEAT_CMDL_INFO
FEAT_BYTEOFF 
FEAT_WILDIGNwildignore, backupskip optionsUNIX
FEAT_WILDMENUFEAT_WINDOWS
VIMINFO_FILEReading and writing the viminfo file. 
VIMINFO_FILE2Reading and writing the viminfo file. 
FEAT_SYN_HLSyntax highlighting.should have +autocmd and +eval. PROTO
FEAT_LISPPROTO
FEAT_CINDENTPROTO
FEAT_COMMENTSComments 
FEAT_CRYPTEncryptionPROTO
FEAT_SESSION:mksessionFEAT_WINDOWS, FEAT_VERTSPLIT
FEAT_MULTILANGMultilanguage support (:menutrans, :language, etc) 
FEAT_GETTEXTFEAT_MULTILANG, HAVE_GETTEXT, HAVE_LOCALE_H, X_LOCALE
FEAT_SCROLLBINDSynchronizing split Windows 
FEAT_MENU:menu 
FEAT_TEAROFFFEAT_GUI_W32
FEAT_TOOLBARFEAT_MENU, FEAT_GUI_GTK or FEAT_GUI_MSWIN or FEAT_GUI_MOTIF or FEAT_GUI_ATHENA, HAVE_XPM, or FEAT_GUI_PYTHON
FEAT_BROWSE:browseFEAT_GUI_MSWIN or FEAT_GUI_MOTIF or FEAT_GUI_ATHENA
BROWSE_CURRBUF 
FEAT_CON_DIALOG???
FEAT_GUI_DIALG????
FEAT_GUI_TEXTDIALOG????
FEAT_MOUSE_XTERM!AMIGA, !OS2, !MACOS
FEAT_MOUSE_GPMHAVE_GPM
FEAT_MOUSE_TTY????
FEAT_CLIPBOARDFEAT_VISUAL
FEAT_XCLIPBOARDUNIX or VMS or WANT_X11 or HAVE_X11
FEAT_TERMRESPONSEFEAT_MOUSE, HAVE_TGETENT
FEAT_MOUSESHAPE????
MCH_CURSOR_SHAPE????
FEAT_VERTSPLIT bedingt FEAT_WINDOWS
Instead of FEAT_DIGRAPHS, OLD_DIGRAPHS may be specified.
FEAT_FIND_ID requires FEAT_SEARCHPATH.
EBCDIC must not be defined if FEAT_TAG_BINS is defined.
FEAT_POSTSCRIPT only if MSWIN and MSWINPS defined or FEAT_EVAL defined.
VIMINFO_FILE's value is the path and file of viminfo file.
VIMINFO_FILE2's value is the path and file of alternate user's viminfo file.???

FEAT_BIG

FEAT_LANGMAPOnly useful if keyboard is in special language mode (for example greek)
FEAT_KEYMAPMap typed keys in insert mode for a special language
FEAT_RIGHTLEFTRight to left typing/editing support.
FEAT_FKMAPFarsi keymap support
FEAT_ARABICArabic keymap and shaping support
FEAT_EMACS_TAGSEmacs style TAGS file
FEAT_CSCOPECscope support
FEAT_MBYTEHAVE_GTK2, FEAT_ARABIC, !WIN16, SIZEOF_INT>4, !EBCDIC
FEAT_MOUSE_NET!AMIGA, !OS2, !MACOS
FEAT_MOUSE_DEC!AMIGA, !OS2, !MACOS
DOS_MOUSEMSDOS or WIN3264
FEAT_MOUSE_PTERM__QNX__, !AMIGA, !OS, !MACOS
FEAT_SIGNS:sign 
FEAT_SIGNS_ICONS 
FEAT_FKMAP requires FEAT_RIGHTLEFT.
FEAT_ARABIC requires FEAT_RIGHTLEFT and FEAT_MBYTE.
FEAT_SCOPE only if UNIX is defined.

Misc

FEAT_WRITEBACKUP 
FEAT_XTERM_SAVE 
STARTUPTIME 
MEM_PROFILE 
VIMRC_FILEName of .vimrc 
EXRC_FILEName of .exrc 
GVIMRC_FILEName of .gvimrc file 
VIEW_FILEName of the default :mkview file 
SESSION_FILEName of the default :mksession file 
USR_VIMRC_FILE 
USR_VIMRC_FILE2 
USR_VIMRC_FILE3 
EVIM_FILEName of evim.vim file 
USR_EXRC_FILE 
USR_EXRC_FILE2 
USR_GVIMRC_FILE 
USR_GVIMRC_FILE2 
USR_GVIMRC_FILE3 
SYS_GVIMRC_FILESystem wide .gvimrc file 
DFLT_HELPFILEName of Helpfile 
FILETYPE_FILE 
FTPLUGIN_FILE 
INDENT_FILE 
FTOFF_FILE 
FTPLUGOF_FILE 
INDOFF_FILE 
SYS_MENU_FILEMenu file 
SYS_OPTWIN_FILEName of default optwin.vim file 
SYNTAX_FNAMEName of syntax file where %s is syntax name 
RUNTIME_DIRNAMEDirectory of the runtime files 
RUNTIME_GLOBALGlobal runtime directory 
MODIFIED_BY 
USE_SYSTEM 
USE_XSMP 
USE_XSMP_INTERACT 
FEAT_DNDDrag'n'dropFEAT_CLIPBOARD, FEAT_GUI_GTK
FEAT_CLIENTSERVERWIN32, FEAT_XCLIPBOARD, FEAT_EVAL