====== Creating PHP function list file ====== Since new functions could be added to PHP, or old function parameters changed, you may want to create your own function reference list to use with omni-completion in Vim. - download the multi html documentation file from php.net - unarchive the file - inside the html folder, run this: for i in `ls -1| grep "^function\."`; do grep -A4 Description $i >> funcs; done - open the 'funcs' file in vim - run :g/Description/normal! 5J - to remove html tags, run :%s/<[^>]*>//g - remove the 'Description' and leading spaces, run :%s/^\s*Description\s*//g - to create the dictionary, run :%s/^\([^[:space:]]\+\) \([^[:space:]]\+\) ( \(.*\)/\\ '\2(': '\3) returns \1',/g - remove all non-dictionary lines, run :%s/^[^\\]*\n//g - FIXME add the other necessary items, such as removing dollar signs and correct the ending parenthesis issue on some lines; then show how to finish the file and what to name it and where to put it; I'm doing the following in a new window and then executing it on the func file :g/Description/normal! 5J :%s/<[^>]*>//g :%s/^\s*Description\s*//g :%s/^\([^[:space:]]\+\) \([^[:space:]]\+\) (\(.*\)/\\ '\2(': '\3) returns \1',/g :%s/^[^\\]*//g :%s/^\n//g :%s/))/)/g :%s/' /'/g :sort :sort u (we still need to fix a few bugs and clean up & and " values, maybe fixing open ['s too) it looks like the file should be called php.vim, and placed in ~/.vim/after/ftplugin/