" Author: Eric Van Dewoestine " " Description: {{{ " see http://eclim.org/vim/java/ant/doc.html " " License: " " Copyright (C) 2005 - 2014 Eric Van Dewoestine " " This program is free software: you can redistribute it and/or modify " it under the terms of the GNU General Public License as published by " the Free Software Foundation, either version 3 of the License, or " (at your option) any later version. " " This program is distributed in the hope that it will be useful, " but WITHOUT ANY WARRANTY; without even the implied warranty of " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the " GNU General Public License for more details. " " You should have received a copy of the GNU General Public License " along with this program. If not, see . " " }}} " Global Varables {{{ if !exists("g:EclimAntDocDefaultUrl") let g:EclimAntDocDefaultUrl = \ 'http://www.google.com/search?btnI=1&q=allintitle%3A+task+%7C+type+site%3Aant.apache.org' endif if !exists("g:EclimAntUserDocs") let g:EclimAntUserDocs = {} endif " }}} " Script Varables {{{ let s:targets = 'http://ant.apache.org/manual/targets.html' let s:using = 'http://ant.apache.org/manual/using.html#s' let s:conditions = 'http://ant.apache.org/manual/Tasks/conditions.html#' let s:mappers = 'http://ant.apache.org/manual/Types/mapper.html' let s:paths = 'http://ant.apache.org/manual/using.html#path' let s:types = \ 'http://ant.apache.org/manual/Types/.html' let s:selectors = \ 'http://ant.apache.org/manual/Types/selectors.html#select' let s:contrib_1 = \ 'http://ant-contrib.sourceforge.net/tasks/tasks/.html' let s:contrib_2 = \ 'http://ant-contrib.sourceforge.net/tasks/tasks/_task.html' let s:element_docs = { \ 'project' : s:using, \ 'target' : s:targets, \ 'and' : s:conditions, \ 'checksum' : s:conditions, \ 'checs' : s:conditions, \ 'contains' : s:conditions, \ 'equals' : s:conditions, \ 'filesmatch' : s:conditions, \ 'http' : s:conditions, \ 'isfalse' : s:conditions, \ 'isfileselected' : s:conditions, \ 'isreference' : s:conditions, \ 'isset' : s:conditions, \ 'istrue' : s:conditions, \ 'length' : s:conditions, \ 'not' : s:conditions, \ 'or' : s:conditions, \ 'os' : s:conditions, \ 'socket' : s:conditions, \ 'compositemapper' : s:mappers, \ 'filtermapper' : s:mappers, \ 'flattenmapper' : s:mappers, \ 'globmapper' : s:mappers, \ 'identitymapper' : s:mappers, \ 'mergemapper' : s:mappers, \ 'packagemapper' : s:mappers, \ 'regexmapper' : s:mappers, \ 'antlib' : s:types, \ 'description' : s:types, \ 'dirset' : s:types, \ 'filelist' : s:types, \ 'fileset' : s:types, \ 'filterchain' : s:types, \ 'filterset' : s:types, \ 'mapper' : s:types, \ 'patternset' : s:types, \ 'permissions' : s:types, \ 'propertyset' : s:types, \ 'redirector' : s:types, \ 'regexp' : s:types, \ 'xmlcatalog' : s:types, \ 'zipfileset' : s:types, \ 'classpath' : s:paths, \ 'path' : s:paths, \ 'containsregexp' : s:selectors, \ 'date' : s:selectors, \ 'depend' : s:selectors, \ 'depth' : s:selectors, \ 'different' : s:selectors, \ 'filename' : s:selectors, \ 'majority' : s:selectors, \ 'modified' : s:selectors, \ 'none' : s:selectors, \ 'present' : s:selectors, \ 'selector' : s:selectors, \ 'size' : s:selectors, \ 'type' : s:selectors, \ 'for' : s:contrib_1, \ 'foreach' : s:contrib_1, \ 'if' : s:contrib_1, \ 'outofdate' : s:contrib_1, \ 'runtarget' : s:contrib_1, \ 'switch' : s:contrib_1, \ 'throw' : s:contrib_1, \ 'timestampselector' : s:contrib_1, \ 'trycatch' : s:contrib_1, \ 'osfamily' : s:contrib_1, \ 'shellscript' : s:contrib_1, \ 'propertycopy' : s:contrib_1, \ 'propertyselector' : s:contrib_1, \ 'pathoffileset' : s:contrib_1, \ 'propertyregex' : s:contrib_1, \ 'sortlist' : s:contrib_1, \ 'urlencode' : s:contrib_1, \ 'forget' : s:contrib_1, \ 'compilewithwalls' : s:contrib_1, \ 'inifile' : s:contrib_1, \ 'verifydesign' : s:contrib_1, \ 'antcallback' : s:contrib_2, \ 'antfetch' : s:contrib_2, \ 'assert' : s:contrib_2, \ 'post' : s:contrib_2, \ 'stopwatch' : s:contrib_2, \ 'match' : s:contrib_2, \ 'variable' : s:contrib_2, \ 'limit' : s:contrib_2, \ 'antclipse' : s:contrib_2 \ } " }}} function! eclim#java#ant#doc#FindDoc(element) " {{{ " Open the url to the documentation for the supplied element name or if not " provided, the element name under the cursor. let element = a:element if element == '' let col = eclim#util#GetCurrentElementColumn() if getline('.')[col - 2] !~ '<\|\/' " not on an element return endif let element = expand('') endif let element = tolower(element) if has_key(s:element_docs, element) let url = s:element_docs[element] elseif has_key(g:EclimAntUserDocs, element) let url = g:EclimAntUserDocs[element] else let url = g:EclimAntDocDefaultUrl endif "let url = escape(url, '&%#') "let url = escape(url, '%#') let url = substitute(url, '', element, 'g') call eclim#web#OpenUrl(url) endfunction " }}} " vim:ft=vim:fdm=marker