| | 83 | # Paths to search for WordNet dictionary files |
| | 84 | WNDB_LOCAL_PATHS = [ |
| | 85 | '/usr/local/WordNet-3.0/dict', # Default install |
| | 86 | '/usr/WordNet-3.0/dict', # Default with --prefix=/usr |
| | 87 | '/usr/local/share/WordNet', # FreeBSD |
| | 88 | './dict', # Extracted locally |
| | 89 | ] |
| | 90 | |
| | 91 | # URL to the latest database file archive |
| | 92 | WNDB_TARBALL_URL = URI.parse( 'http://wordnet.princeton.edu/3.0/WordNet-3.0.tar.gz' ) |
| | 93 | |
| 111 | | default = nil |
| 112 | | wndirs = Pathname.glob( Pathname.getwd + 'WordNet-*' ) |
| 113 | | localdict = Pathname.getwd + 'dict' |
| 114 | | if !wndirs.empty? |
| 115 | | default = wndirs.first + 'dict' |
| 116 | | elsif localdict.exist? |
| 117 | | default = localdict |
| 118 | | else |
| 119 | | default = '/usr/local/WordNet-3.0/dict' |
| 120 | | end |
| 121 | | |
| 122 | | message "Where can I find the WordNet data files?\n" |
| 123 | | datadir = prompt_with_default( "Data directory", default ) |
| 124 | | datadir = Pathname.new( datadir ) |
| 125 | | |
| 126 | | abort( "Directory '#{datadir}' does not exist" ) unless datadir.exist? |
| 127 | | abort( "'#{datadir}' is not a directory" ) unless datadir.directory? |
| | 123 | datadir = find_data_files() |
| | 369 | |
| | 370 | ### Find the path to the WordNet dict directory with the files we're |
| | 371 | ### going to parse in it. |
| | 372 | def find_data_files |
| | 373 | datadir = WNDB_LOCAL_PATHS.collect {|pn| Pathname.new(pn) }.find {|pn| pn.exist? } |
| | 374 | |
| | 375 | unless datadir |
| | 376 | message "Where can I find the WordNet data files?\n" |
| | 377 | answer = prompt_with_default( "Data directory", WNDB_LOCAL_PATHS.first ) |
| | 378 | datadir = Pathname.new( answer ) |
| | 379 | end |
| | 380 | |
| | 381 | abort( "Directory '#{datadir}' does not exist" ) unless datadir.exist? |
| | 382 | abort( "'#{datadir}' is not a directory" ) unless datadir.directory? |
| | 383 | |
| | 384 | return datadir |
| | 385 | end |
| | 386 | |