Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/vim73/doc/acp.txt
diff options
context:
space:
mode:
Diffstat (limited to 'vim73/doc/acp.txt')
-rw-r--r--vim73/doc/acp.txt512
1 files changed, 512 insertions, 0 deletions
diff --git a/vim73/doc/acp.txt b/vim73/doc/acp.txt
new file mode 100644
index 0000000..324c88b
--- /dev/null
+++ b/vim73/doc/acp.txt
@@ -0,0 +1,512 @@
+*acp.txt* Automatically opens popup menu for completions.
+
+ Copyright (c) 2007-2009 Takeshi NISHIDA
+
+AutoComplPop *autocomplpop* *acp*
+
+INTRODUCTION |acp-introduction|
+INSTALLATION |acp-installation|
+USAGE |acp-usage|
+COMMANDS |acp-commands|
+OPTIONS |acp-options|
+SPECIAL THANKS |acp-thanks|
+CHANGELOG |acp-changelog|
+ABOUT |acp-about|
+
+
+==============================================================================
+INTRODUCTION *acp-introduction*
+
+With this plugin, your vim comes to automatically opens popup menu for
+completions when you enter characters or move the cursor in Insert mode. It
+won't prevent you continuing entering characters.
+
+
+==============================================================================
+INSTALLATION *acp-installation*
+
+Put all files into your runtime directory. If you have the zip file, extract
+it to your runtime directory.
+
+You should place the files as follows:
+>
+ <your runtime directory>/plugin/acp.vim
+ <your runtime directory>/doc/acp.txt
+ ...
+<
+If you disgust to jumble up this plugin and other plugins in your runtime
+directory, put the files into new directory and just add the directory path to
+'runtimepath'. It's easy to uninstall the plugin.
+
+And then update your help tags files to enable fuzzyfinder help. See
+|add-local-help| for details.
+
+
+==============================================================================
+USAGE *acp-usage*
+
+Once this plugin is installed, auto-popup is enabled at startup by default.
+
+Which completion method is used depends on the text before the cursor. The
+default behavior is as follows:
+
+ kind filetype text before the cursor ~
+ Keyword * two keyword characters
+ Filename * a filename character + a path separator
+ + 0 or more filename character
+ Omni ruby ".", "::" or non-word character + ":"
+ (|+ruby| required.)
+ Omni python "." (|+python| required.)
+ Omni xml "<", "</" or ("<" + non-">" characters + " ")
+ Omni html/xhtml "<", "</" or ("<" + non-">" characters + " ")
+ Omni css (":", ";", "{", "^", "@", or "!")
+ + 0 or 1 space
+
+Also, you can make user-defined completion and snipMate's trigger completion
+(|acp-snipMate|) auto-popup if the options are set.
+
+These behavior are customizable.
+
+ *acp-snipMate*
+snipMate's Trigger Completion ~
+
+snipMate's trigger completion enables you to complete a snippet trigger
+provided by snipMate plugin
+(http://www.vim.org/scripts/script.php?script_id=2540) and expand it.
+
+
+To enable auto-popup for this completion, add following function to
+plugin/snipMate.vim:
+>
+ fun! GetSnipsInCurrentScope()
+ let snips = {}
+ for scope in [bufnr('%')] + split(&ft, '\.') + ['_']
+ call extend(snips, get(s:snippets, scope, {}), 'keep')
+ call extend(snips, get(s:multi_snips, scope, {}), 'keep')
+ endfor
+ return snips
+ endf
+<
+And set |g:acp_behaviorSnipmateLength| option to 1.
+
+There is the restriction on this auto-popup, that the word before cursor must
+consist only of uppercase characters.
+
+ *acp-perl-omni*
+Perl Omni-Completion ~
+
+AutoComplPop supports perl-completion.vim
+(http://www.vim.org/scripts/script.php?script_id=2852).
+
+To enable auto-popup for this completion, set |g:acp_behaviorPerlOmniLength|
+option to 0 or more.
+
+
+==============================================================================
+COMMANDS *acp-commands*
+
+ *:AcpEnable*
+:AcpEnable
+ enables auto-popup.
+
+ *:AcpDisable*
+:AcpDisable
+ disables auto-popup.
+
+ *:AcpLock*
+:AcpLock
+ suspends auto-popup temporarily.
+
+ For the purpose of avoiding interruption to another script, it is
+ recommended to insert this command and |:AcpUnlock| than |:AcpDisable|
+ and |:AcpEnable| .
+
+ *:AcpUnlock*
+:AcpUnlock
+ resumes auto-popup suspended by |:AcpLock| .
+
+
+==============================================================================
+OPTIONS *acp-options*
+
+ *g:acp_enableAtStartup* >
+ let g:acp_enableAtStartup = 1
+<
+ If non-zero, auto-popup is enabled at startup.
+
+ *g:acp_mappingDriven* >
+ let g:acp_mappingDriven = 0
+<
+ If non-zero, auto-popup is triggered by key mappings instead of
+ |CursorMovedI| event. This is useful to avoid auto-popup by moving
+ cursor in Insert mode.
+
+ *g:acp_ignorecaseOption* >
+ let g:acp_ignorecaseOption = 1
+<
+ Value set to 'ignorecase' temporarily when auto-popup.
+
+ *g:acp_completeOption* >
+ let g:acp_completeOption = '.,w,b,k'
+<
+ Value set to 'complete' temporarily when auto-popup.
+
+ *g:acp_completeoptPreview* >
+ let g:acp_completeoptPreview = 0
+<
+ If non-zero, "preview" is added to 'completeopt' when auto-popup.
+
+ *g:acp_behaviorUserDefinedFunction* >
+ let g:acp_behaviorUserDefinedFunction = ''
+<
+ |g:acp_behavior-completefunc| for user-defined completion. If empty,
+ this completion will be never attempted.
+
+ *g:acp_behaviorUserDefinedMeets* >
+ let g:acp_behaviorUserDefinedMeets = ''
+<
+ |g:acp_behavior-meets| for user-defined completion. If empty, this
+ completion will be never attempted.
+
+ *g:acp_behaviorSnipmateLength* >
+ let g:acp_behaviorSnipmateLength = -1
+<
+ Pattern before the cursor, which are needed to attempt
+ snipMate-trigger completion.
+
+ *g:acp_behaviorKeywordCommand* >
+ let g:acp_behaviorKeywordCommand = "\<C-n>"
+<
+ Command for keyword completion. This option is usually set "\<C-n>" or
+ "\<C-p>".
+
+ *g:acp_behaviorKeywordLength* >
+ let g:acp_behaviorKeywordLength = 2
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt keyword completion. If negative value, this completion will be
+ never attempted.
+
+ *g:acp_behaviorKeywordIgnores* >
+ let g:acp_behaviorKeywordIgnores = []
+<
+ List of string. If a word before the cursor matches to the front part
+ of one of them, keyword completion won't be attempted.
+
+ E.g., when there are too many keywords beginning with "get" for the
+ completion and auto-popup by entering "g", "ge", or "get" causes
+ response degradation, set ["get"] to this option and avoid it.
+
+ *g:acp_behaviorFileLength* >
+ let g:acp_behaviorFileLength = 0
+<
+ Length of filename characters before the cursor, which are needed to
+ attempt filename completion. If negative value, this completion will
+ be never attempted.
+
+ *g:acp_behaviorRubyOmniMethodLength* >
+ let g:acp_behaviorRubyOmniMethodLength = 0
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt ruby omni-completion for methods. If negative value, this
+ completion will be never attempted.
+
+ *g:acp_behaviorRubyOmniSymbolLength* >
+ let g:acp_behaviorRubyOmniSymbolLength = 1
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt ruby omni-completion for symbols. If negative value, this
+ completion will be never attempted.
+
+ *g:acp_behaviorPythonOmniLength* >
+ let g:acp_behaviorPythonOmniLength = 0
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt python omni-completion. If negative value, this completion
+ will be never attempted.
+
+ *g:acp_behaviorPerlOmniLength* >
+ let g:acp_behaviorPerlOmniLength = -1
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt perl omni-completion. If negative value, this completion will
+ be never attempted.
+
+ See also: |acp-perl-omni|
+
+ *g:acp_behaviorXmlOmniLength* >
+ let g:acp_behaviorXmlOmniLength = 0
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt XML omni-completion. If negative value, this completion will
+ be never attempted.
+
+ *g:acp_behaviorHtmlOmniLength* >
+ let g:acp_behaviorHtmlOmniLength = 0
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt HTML omni-completion. If negative value, this completion will
+ be never attempted.
+
+ *g:acp_behaviorCssOmniPropertyLength* >
+ let g:acp_behaviorCssOmniPropertyLength = 1
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt CSS omni-completion for properties. If negative value, this
+ completion will be never attempted.
+
+ *g:acp_behaviorCssOmniValueLength* >
+ let g:acp_behaviorCssOmniValueLength = 0
+<
+ Length of keyword characters before the cursor, which are needed to
+ attempt CSS omni-completion for values. If negative value, this
+ completion will be never attempted.
+
+ *g:acp_behavior* >
+ let g:acp_behavior = {}
+<
+ This option is for advanced users. This setting overrides other
+ behavior options. This is a |Dictionary|. Each key corresponds to a
+ filetype. '*' is default. Each value is a list. These are attempted in
+ sequence until completion item is found. Each element is a
+ |Dictionary| which has following items:
+
+ "command": *g:acp_behavior-command*
+ Command to be fed to open popup menu for completions.
+
+ "completefunc": *g:acp_behavior-completefunc*
+ 'completefunc' will be set to this user-provided function during the
+ completion. Only makes sense when "command" is "<C-x><C-u>".
+
+ "meets": *g:acp_behavior-meets*
+ Name of the function which dicides whether or not to attempt this
+ completion. It will be attempted if this function returns non-zero.
+ This function takes a text before the cursor.
+
+ "onPopupClose": *g:acp_behavior-onPopupClose*
+ Name of the function which is called when popup menu for this
+ completion is closed. Following completions will be suppressed if
+ this function returns zero.
+
+ "repeat": *g:acp_behavior-repeat*
+ If non-zero, the last completion is automatically repeated.
+
+
+==============================================================================
+SPECIAL THANKS *acp-thanks*
+
+- Daniel Schierbeck
+- Ingo Karkat
+
+
+==============================================================================
+CHANGELOG *acp-changelog*
+
+2.14.1
+ - Changed the way of auto-popup for avoiding an issue about filename
+ completion.
+ - Fixed a bug that popup menu was opened twice when auto-popup was done.
+
+2.14
+ - Added the support for perl-completion.vim.
+
+2.13
+ - Changed to sort snipMate's triggers.
+ - Fixed a bug that a wasted character was inserted after snipMate's trigger
+ completion.
+
+2.12.1
+ - Changed to avoid a strange behavior with Microsoft IME.
+
+2.12
+ - Added g:acp_behaviorKeywordIgnores option.
+ - Added g:acp_behaviorUserDefinedMeets option and removed
+ g:acp_behaviorUserDefinedPattern.
+ - Changed to do auto-popup only when a buffer is modified.
+ - Changed the structure of g:acp_behavior option.
+ - Changed to reflect a change of behavior options (named g:acp_behavior*)
+ any time it is done.
+ - Fixed a bug that completions after omni completions or snipMate's trigger
+ completion were never attempted when no candidate for the former
+ completions was found.
+
+2.11.1
+ - Fixed a bug that a snipMate's trigger could not be expanded when it was
+ completed.
+
+2.11
+ - Implemented experimental feature which is snipMate's trigger completion.
+
+2.10
+ - Improved the response by changing not to attempt any completion when
+ keyword characters are entered after a word which has been found that it
+ has no completion candidate at the last attempt of completions.
+ - Improved the response by changing to close popup menu when <BS> was
+ pressed and the text before the cursor would not match with the pattern of
+ current behavior.
+
+2.9
+ - Changed default behavior to support XML omni completion.
+ - Changed default value of g:acp_behaviorKeywordCommand option.
+ The option with "\<C-p>" cause a problem which inserts a match without
+ <CR> when 'dictionary' has been set and keyword completion is done.
+ - Changed to show error message when incompatible with a installed vim.
+
+2.8.1
+ - Fixed a bug which inserted a selected match to the next line when
+ auto-wrapping (enabled with 'formatoptions') was performed.
+
+2.8
+ - Added g:acp_behaviorUserDefinedFunction option and
+ g:acp_behaviorUserDefinedPattern option for users who want to make custom
+ completion auto-popup.
+ - Fixed a bug that setting 'spell' on a new buffer made typing go crazy.
+
+2.7
+ - Changed naming conventions for filenames, functions, commands, and options
+ and thus renamed them.
+ - Added g:acp_behaviorKeywordCommand option. If you prefer the previous
+ behavior for keyword completion, set this option "\<C-n>".
+ - Changed default value of g:acp_ignorecaseOption option.
+
+ The following were done by Ingo Karkat:
+
+ - ENH: Added support for setting a user-provided 'completefunc' during the
+ completion, configurable via g:acp_behavior.
+ - BUG: When the configured completion is <C-p> or <C-x><C-p>, the command to
+ restore the original text (in on_popup_post()) must be reverted, too.
+ - BUG: When using a custom completion function (<C-x><C-u>) that also uses
+ an s:...() function name, the s:GetSidPrefix() function dynamically
+ determines the wrong SID. Now calling s:DetermineSidPrefix() once during
+ sourcing and caching the value in s:SID.
+ - BUG: Should not use custom defined <C-X><C-...> completion mappings. Now
+ consistently using unmapped completion commands everywhere. (Beforehand,
+ s:PopupFeeder.feed() used mappings via feedkeys(..., 'm'), but
+ s:PopupFeeder.on_popup_post() did not due to its invocation via
+ :map-expr.)
+
+2.6:
+ - Improved the behavior of omni completion for HTML/XHTML.
+
+2.5:
+ - Added some options to customize behavior easily:
+ g:AutoComplPop_BehaviorKeywordLength
+ g:AutoComplPop_BehaviorFileLength
+ g:AutoComplPop_BehaviorRubyOmniMethodLength
+ g:AutoComplPop_BehaviorRubyOmniSymbolLength
+ g:AutoComplPop_BehaviorPythonOmniLength
+ g:AutoComplPop_BehaviorHtmlOmniLength
+ g:AutoComplPop_BehaviorCssOmniPropertyLength
+ g:AutoComplPop_BehaviorCssOmniValueLength
+
+2.4:
+ - Added g:AutoComplPop_MappingDriven option.
+
+2.3.1:
+ - Changed to set 'lazyredraw' while a popup menu is visible to avoid
+ flickering.
+ - Changed a behavior for CSS.
+ - Added support for GetLatestVimScripts.
+
+2.3:
+ - Added a behavior for Python to support omni completion.
+ - Added a behavior for CSS to support omni completion.
+
+2.2:
+ - Changed not to work when 'paste' option is set.
+ - Fixed AutoComplPopEnable command and AutoComplPopDisable command to
+ map/unmap "i" and "R".
+
+2.1:
+ - Fixed the problem caused by "." command in Normal mode.
+ - Changed to map "i" and "R" to feed completion command after starting
+ Insert mode.
+ - Avoided the problem caused by Windows IME.
+
+2.0:
+ - Changed to use CursorMovedI event to feed a completion command instead of
+ key mapping. Now the auto-popup is triggered by moving the cursor.
+ - Changed to feed completion command after starting Insert mode.
+ - Removed g:AutoComplPop_MapList option.
+
+1.7:
+ - Added behaviors for HTML/XHTML. Now supports the omni completion for
+ HTML/XHTML.
+ - Changed not to show expressions for CTRL-R =.
+ - Changed not to set 'nolazyredraw' while a popup menu is visible.
+
+1.6.1:
+ - Changed not to trigger the filename completion by a text which has
+ multi-byte characters.
+
+1.6:
+ - Redesigned g:AutoComplPop_Behavior option.
+ - Changed default value of g:AutoComplPop_CompleteOption option.
+ - Changed default value of g:AutoComplPop_MapList option.
+
+1.5:
+ - Implemented continuous-completion for the filename completion. And added
+ new option to g:AutoComplPop_Behavior.
+
+1.4:
+ - Fixed the bug that the auto-popup was not suspended in fuzzyfinder.
+ - Fixed the bug that an error has occurred with Ruby-omni-completion unless
+ Ruby interface.
+
+1.3:
+ - Supported Ruby-omni-completion by default.
+ - Supported filename completion by default.
+ - Added g:AutoComplPop_Behavior option.
+ - Added g:AutoComplPop_CompleteoptPreview option.
+ - Removed g:AutoComplPop_MinLength option.
+ - Removed g:AutoComplPop_MaxLength option.
+ - Removed g:AutoComplPop_PopupCmd option.
+
+1.2:
+ - Fixed bugs related to 'completeopt'.
+
+1.1:
+ - Added g:AutoComplPop_IgnoreCaseOption option.
+ - Added g:AutoComplPop_NotEnableAtStartup option.
+ - Removed g:AutoComplPop_LoadAndEnable option.
+1.0:
+ - g:AutoComplPop_LoadAndEnable option for a startup activation is added.
+ - AutoComplPopLock command and AutoComplPopUnlock command are added to
+ suspend and resume.
+ - 'completeopt' and 'complete' options are changed temporarily while
+ completing by this script.
+
+0.4:
+ - The first match are selected when the popup menu is Opened. You can insert
+ the first match with CTRL-Y.
+
+0.3:
+ - Fixed the problem that the original text is not restored if 'longest' is
+ not set in 'completeopt'. Now the plugin works whether or not 'longest' is
+ set in 'completeopt', and also 'menuone'.
+
+0.2:
+ - When completion matches are not found, insert CTRL-E to stop completion.
+ - Clear the echo area.
+ - Fixed the problem in case of dividing words by symbols, popup menu is
+ not opened.
+
+0.1:
+ - First release.
+
+
+==============================================================================
+ABOUT *acp-about* *acp-contact* *acp-author*
+
+Author: Takeshi NISHIDA <ns9tks@DELETE-ME.gmail.com>
+Licence: MIT Licence
+URL: http://www.vim.org/scripts/script.php?script_id=1879
+ http://bitbucket.org/ns9tks/vim-autocomplpop/
+
+Bugs/Issues/Suggestions/Improvements ~
+
+Please submit to http://bitbucket.org/ns9tks/vim-autocomplpop/issues/ .
+
+==============================================================================
+ vim:tw=78:ts=8:ft=help:norl:
+