class DictCache::Cache
Public Class Methods
clear()
click to toggle source
# File lib/dict_cache/cache.rb, line 15 def clear `rm -rf #{cache_folder}/*` end
date_cache(date=nil)
click to toggle source
# File lib/dict_cache/cache.rb, line 4 def date_cache(date=nil) @date = date file = [cache_folder, cache_file].join('/') if File.exist? file puts File.read(file) else warn "No cache at date: #{@date}" exit 1 end end
with_cache() { || ... }
click to toggle source
# File lib/dict_cache/cache.rb, line 19 def with_cache folder = cache_folder tty_file = [folder, tty_buffer].join('/') $stdout = File.new(tty_file, 'w') yield $stdout.flush $stdout = STDOUT translate_text = File.read(tty_file) puts translate_text file = [folder, cache_file].join('/') File.open(file, 'a') { |f| f.puts translate_text + "\n" } end
Private Class Methods
cache_file()
click to toggle source
# File lib/dict_cache/cache.rb, line 40 def cache_file @date ||= Time.now.localtime.strftime("%Y-%m-%d") @date + '.txt' end
cache_folder()
click to toggle source
# File lib/dict_cache/cache.rb, line 34 def cache_folder folder = File.expand_path('~/.dict_cache') Dir.mkdir(folder) unless File.directory?(folder) folder end
tty_buffer()
click to toggle source
# File lib/dict_cache/cache.rb, line 45 def tty_buffer '.tty' end