Sha256: 048f6cd2a8ef66a7f245ada3ee2c84981d84d6b849d3b6fbe8c72d43fef5d96d

Contents?: true

Size: 707 Bytes

Versions: 6

Compression:

Stored size: 707 Bytes

Contents

require 'safe_yaml'

class ConfigManager

	def initialize
		SafeYAML::OPTIONS[:default_mode] = :safe
		SafeYAML::OPTIONS[:deserialize_symbols] = true

		@conf_path = "#{Dir.home}/.gito.yml"
		@default_config = {"editor": "subl"}
	end

	def write_editor(new_editor)
		current_config = get
		current_config[:editor] = new_editor
		write(current_config)
	end

	def write(config)
		new_config = config.to_yaml
		File.open(@conf_path, 'w') { |file| file.write(new_config)}
	end

	def get
		if File.exists? (@conf_path)
			file = File.open(@conf_path, "rb")
			contents = file.read
			config = YAML.load(contents, :safe => true)
		else
			write @default_config
			config = @default_config
		end
		config
	end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
gito-0.4.9 lib/gito/config_manager.rb
gito-0.4.8 lib/gito/config_manager.rb
gito-0.4.7 lib/gito/config_manager.rb
gito-0.4.6 lib/gito/config_manager.rb
gito-0.4.5 lib/gito/config_manager.rb
gito-0.4.4 lib/gito/config_manager.rb