Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/vim73/plugin/acp.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim73/plugin/acp.vim')
-rw-r--r--vim73/plugin/acp.vim170
1 files changed, 170 insertions, 0 deletions
diff --git a/vim73/plugin/acp.vim b/vim73/plugin/acp.vim
new file mode 100644
index 0000000..0c01a31
--- /dev/null
+++ b/vim73/plugin/acp.vim
@@ -0,0 +1,170 @@
+"=============================================================================
+" Copyright (c) 2007-2009 Takeshi NISHIDA
+"
+" GetLatestVimScripts: 1879 1 :AutoInstall: AutoComplPop
+"=============================================================================
+" LOAD GUARD {{{1
+
+if exists('g:loaded_acp')
+ finish
+elseif v:version < 702
+ echoerr 'AutoComplPop does not support this version of vim (' . v:version . ').'
+ finish
+endif
+let g:loaded_acp = 1
+
+" }}}1
+"=============================================================================
+" FUNCTION: {{{1
+
+"
+function s:defineOption(name, default)
+ if !exists(a:name)
+ let {a:name} = a:default
+ endif
+endfunction
+
+"
+function s:makeDefaultBehavior()
+ let behavs = {
+ \ '*' : [],
+ \ 'ruby' : [],
+ \ 'python' : [],
+ \ 'perl' : [],
+ \ 'xml' : [],
+ \ 'html' : [],
+ \ 'xhtml' : [],
+ \ 'css' : [],
+ \ }
+ "---------------------------------------------------------------------------
+ if !empty(g:acp_behaviorUserDefinedFunction) &&
+ \ !empty(g:acp_behaviorUserDefinedMeets)
+ for key in keys(behavs)
+ call add(behavs[key], {
+ \ 'command' : "\<C-x>\<C-u>",
+ \ 'completefunc' : g:acp_behaviorUserDefinedFunction,
+ \ 'meets' : g:acp_behaviorUserDefinedMeets,
+ \ 'repeat' : 0,
+ \ })
+ endfor
+ endif
+ "---------------------------------------------------------------------------
+ for key in keys(behavs)
+ call add(behavs[key], {
+ \ 'command' : "\<C-x>\<C-u>",
+ \ 'completefunc' : 'acp#completeSnipmate',
+ \ 'meets' : 'acp#meetsForSnipmate',
+ \ 'onPopupClose' : 'acp#onPopupCloseSnipmate',
+ \ 'repeat' : 0,
+ \ })
+ endfor
+ "---------------------------------------------------------------------------
+ for key in keys(behavs)
+ call add(behavs[key], {
+ \ 'command' : g:acp_behaviorKeywordCommand,
+ \ 'meets' : 'acp#meetsForKeyword',
+ \ 'repeat' : 0,
+ \ })
+ endfor
+ "---------------------------------------------------------------------------
+ for key in keys(behavs)
+ call add(behavs[key], {
+ \ 'command' : "\<C-x>\<C-f>",
+ \ 'meets' : 'acp#meetsForFile',
+ \ 'repeat' : 1,
+ \ })
+ endfor
+ "---------------------------------------------------------------------------
+ call add(behavs.ruby, {
+ \ 'command' : "\<C-x>\<C-o>",
+ \ 'meets' : 'acp#meetsForRubyOmni',
+ \ 'repeat' : 0,
+ \ })
+ "---------------------------------------------------------------------------
+ call add(behavs.python, {
+ \ 'command' : "\<C-x>\<C-o>",
+ \ 'meets' : 'acp#meetsForPythonOmni',
+ \ 'repeat' : 0,
+ \ })
+ "---------------------------------------------------------------------------
+ call add(behavs.perl, {
+ \ 'command' : "\<C-x>\<C-o>",
+ \ 'meets' : 'acp#meetsForPerlOmni',
+ \ 'repeat' : 0,
+ \ })
+ "---------------------------------------------------------------------------
+ call add(behavs.xml, {
+ \ 'command' : "\<C-x>\<C-o>",
+ \ 'meets' : 'acp#meetsForXmlOmni',
+ \ 'repeat' : 1,
+ \ })
+ "---------------------------------------------------------------------------
+ call add(behavs.html, {
+ \ 'command' : "\<C-x>\<C-o>",
+ \ 'meets' : 'acp#meetsForHtmlOmni',
+ \ 'repeat' : 1,
+ \ })
+ "---------------------------------------------------------------------------
+ call add(behavs.xhtml, {
+ \ 'command' : "\<C-x>\<C-o>",
+ \ 'meets' : 'acp#meetsForHtmlOmni',
+ \ 'repeat' : 1,
+ \ })
+ "---------------------------------------------------------------------------
+ call add(behavs.css, {
+ \ 'command' : "\<C-x>\<C-o>",
+ \ 'meets' : 'acp#meetsForCssOmni',
+ \ 'repeat' : 0,
+ \ })
+ "---------------------------------------------------------------------------
+ return behavs
+endfunction
+
+" }}}1
+"=============================================================================
+" INITIALIZATION {{{1
+
+"-----------------------------------------------------------------------------
+call s:defineOption('g:acp_enableAtStartup', 1)
+call s:defineOption('g:acp_mappingDriven', 0)
+call s:defineOption('g:acp_ignorecaseOption', 1)
+call s:defineOption('g:acp_completeOption', '.,w,b,k')
+call s:defineOption('g:acp_completeoptPreview', 0)
+call s:defineOption('g:acp_behaviorUserDefinedFunction', '')
+call s:defineOption('g:acp_behaviorUserDefinedMeets', '')
+call s:defineOption('g:acp_behaviorSnipmateLength', -1)
+call s:defineOption('g:acp_behaviorKeywordCommand', "\<C-n>")
+call s:defineOption('g:acp_behaviorKeywordLength', 2)
+call s:defineOption('g:acp_behaviorKeywordIgnores', [])
+call s:defineOption('g:acp_behaviorFileLength', 0)
+call s:defineOption('g:acp_behaviorRubyOmniMethodLength', 0)
+call s:defineOption('g:acp_behaviorRubyOmniSymbolLength', 1)
+call s:defineOption('g:acp_behaviorPythonOmniLength', 0)
+call s:defineOption('g:acp_behaviorPerlOmniLength', -1)
+call s:defineOption('g:acp_behaviorXmlOmniLength', 0)
+call s:defineOption('g:acp_behaviorHtmlOmniLength', 0)
+call s:defineOption('g:acp_behaviorCssOmniPropertyLength', 1)
+call s:defineOption('g:acp_behaviorCssOmniValueLength', 0)
+call s:defineOption('g:acp_behavior', {})
+"-----------------------------------------------------------------------------
+call extend(g:acp_behavior, s:makeDefaultBehavior(), 'keep')
+"-----------------------------------------------------------------------------
+command! -bar -narg=0 AcpEnable call acp#enable()
+command! -bar -narg=0 AcpDisable call acp#disable()
+command! -bar -narg=0 AcpLock call acp#lock()
+command! -bar -narg=0 AcpUnlock call acp#unlock()
+"-----------------------------------------------------------------------------
+" legacy commands
+command! -bar -narg=0 AutoComplPopEnable AcpEnable
+command! -bar -narg=0 AutoComplPopDisable AcpDisable
+command! -bar -narg=0 AutoComplPopLock AcpLock
+command! -bar -narg=0 AutoComplPopUnlock AcpUnlock
+"-----------------------------------------------------------------------------
+if g:acp_enableAtStartup
+ AcpEnable
+endif
+"-----------------------------------------------------------------------------
+
+" }}}1
+"=============================================================================
+" vim: set fdm=marker: