Class: Traduki::Config
- Inherits:
-
Object
- Object
- Traduki::Config
- Defined in:
- lib/traduki/config.rb
Instance Attribute Summary collapse
-
#langdir ⇒ Object
readonly
Returns the value of attribute langdir.
-
#languages ⇒ Object
readonly
Returns the value of attribute languages.
-
#workdir ⇒ Object
Returns the value of attribute workdir.
Instance Method Summary collapse
- #create_config ⇒ Object
- #create_internal_config ⇒ Object
- #generate_config ⇒ Object
-
#initialize(path = Dir.pwd) ⇒ Config
constructor
attr_reader :flat.
- #load_config ⇒ Object
- #load_config_file ⇒ Object
Constructor Details
#initialize(path = Dir.pwd) ⇒ Config
attr_reader :flat
12 13 14 15 16 |
# File 'lib/traduki/config.rb', line 12 def initialize(path = Dir.pwd) @workdir = path.path Dir.chdir @workdir load_config end |
Instance Attribute Details
#langdir ⇒ Object (readonly)
Returns the value of attribute langdir.
8 9 10 |
# File 'lib/traduki/config.rb', line 8 def langdir @langdir end |
#languages ⇒ Object (readonly)
Returns the value of attribute languages.
9 10 11 |
# File 'lib/traduki/config.rb', line 9 def languages @languages end |
#workdir ⇒ Object
Returns the value of attribute workdir.
7 8 9 |
# File 'lib/traduki/config.rb', line 7 def workdir @workdir end |
Instance Method Details
#create_config ⇒ Object
36 37 38 39 40 |
# File 'lib/traduki/config.rb', line 36 def create_config File.open(@workdir + '/traduki.yml', 'w') do |f| f.write YAML.dump generate_config end end |
#create_internal_config ⇒ Object
42 43 44 45 |
# File 'lib/traduki/config.rb', line 42 def create_internal_config # File.open(@langdir + '/traduki.json', 'w') { |f| f.write "// Please DON'T edit this file.\n" } File.open(@langdir + '/traduki.json', 'w') { |f| f.write JSON.dump generate_config } end |
#generate_config ⇒ Object
47 48 49 50 51 52 53 |
# File 'lib/traduki/config.rb', line 47 def generate_config { # 'flat' => @flat, 'languages' => @languages, 'path' => @relative_path } end |
#load_config ⇒ Object
26 27 28 29 30 31 32 33 34 |
# File 'lib/traduki/config.rb', line 26 def load_config load_config_file # @flat = @config['flat'] # @flat = false if @config['flat'].nil? @languages = @config['languages'] || %w[en_US zh_CN] @relative_path = @config['path'] || 'Languages' @langdir = (@workdir + "/#{@relative_path}/").path end |
#load_config_file ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/traduki/config.rb', line 18 def load_config_file begin @config = YAML.load_file(@workdir + '/traduki.yml') || {} rescue Errno::ENOENT @config = {} end end |