1" Vim script to clean the ll.xxxxx.add files of commented out entries
2" Author:	Antonio Colombo, Bram Moolenaar
3" Last Update:	2008 Jun 3
4
5" Time in seconds after last time an ll.xxxxx.add file was updated
6" Default is one second.
7" If you invoke this script often set it to something bigger, e.g. 60 * 60
8" (one hour)
9if !exists("g:spell_clean_limit")
10  let g:spell_clean_limit = 1
11endif
12
13" Loop over all the runtime/spell/*.add files.
14" Delete all comment lines, except the ones starting with ##.
15for s:fname in split(globpath(&rtp, "spell/*.add"), "\n")
16  if filewritable(s:fname) && localtime() - getftime(s:fname) > g:spell_clean_limit
17    if exists('*fnameescape')
18      let s:f = fnameescape(s:fname)
19    else
20      let s:f = escape(s:fname, ' \|<')
21    endif
22    silent exe "tab split " . s:f
23    echo "Processing" s:f
24    silent! g/^#[^#]/d
25    silent update
26    close
27    unlet s:f
28  endif
29endfor
30unlet s:fname
31
32echo "Done"
33