diff options
| author | Mike McQuaid | 2014-09-20 14:33:59 +0100 |
|---|---|---|
| committer | Mike McQuaid | 2014-09-24 15:22:51 -0700 |
| commit | af8a9ff502107fd02f6911bf7c1ab72889add666 (patch) | |
| tree | 4eee3f95c63a2e7e24412b111d28ff47b3cef1cf /Library/Homebrew/cmd | |
| parent | ce6d76ed1c02d06f1eec41e21289b79b94bbdcc0 (diff) | |
| download | brew-af8a9ff502107fd02f6911bf7c1ab72889add666.tar.bz2 | |
brew-aspell-dictionaries: make a developer command
Diffstat (limited to 'Library/Homebrew/cmd')
| -rwxr-xr-x | Library/Homebrew/cmd/aspell-dictionaries.rb | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Library/Homebrew/cmd/aspell-dictionaries.rb b/Library/Homebrew/cmd/aspell-dictionaries.rb new file mode 100755 index 000000000..82f25fec7 --- /dev/null +++ b/Library/Homebrew/cmd/aspell-dictionaries.rb @@ -0,0 +1,40 @@ +require 'open-uri' +require 'resource' +require 'formula' + +module Homebrew + def aspell_dictionaries + dict_url = "http://ftpmirror.gnu.org/aspell/dict" + dict_mirror = "http://ftp.gnu.org/gnu/aspell/dict" + languages = {} + + open("#{dict_url}/0index.html") do |content| + content.each_line do |line| + break if %r{^</table} === line + next unless /^<tr><td><a/ === line + + fields = line.split('"') + lang, path = fields[1], fields[3] + lang.gsub!("-", "_") + languages[lang] = path + end + end + + languages.inject([]) do |resources, (lang, path)| + r = Resource.new(lang) + r.owner = Formulary.factory("aspell") + r.url "#{dict_url}/#{path}" + r.mirror "#{dict_mirror}/#{path}" + resources << r + end.each(&:fetch).each do |r| + puts <<-EOS + resource "#{r.name}" do + url "#{r.url}" + mirror "#{r.mirrors.first}" + sha1 "#{r.cached_download.sha1}" + end + + EOS + end + end +end |
