class NvimConf::Writers::Documentation::Settings
Public Class Methods
new(managers, io)
click to toggle source
# File lib/nvim_conf/writers/documentation/settings.rb, line 5 def initialize(managers, io) @managers = managers @io = io end
Public Instance Methods
aggregate_writes()
click to toggle source
# File lib/nvim_conf/writers/documentation/settings.rb, line 10 def aggregate_writes return if @managers.empty? @io.write( Utils::MarkdownFormatter.format_title( "Settings", level: 2 ) ) write_settings_groups(all_settings.group_by(&:operation)) end
Private Instance Methods
all_settings()
click to toggle source
# File lib/nvim_conf/writers/documentation/settings.rb, line 58 def all_settings @managers.map(&:settings).flatten end
operator(setting)
click to toggle source
# File lib/nvim_conf/writers/documentation/settings.rb, line 47 def operator(setting) %i[set unset].include?(setting.operation) ? " => " : " += " end
transformed_value(setting, value)
click to toggle source
# File lib/nvim_conf/writers/documentation/settings.rb, line 51 def transformed_value(setting, value) return value.join(", ") if value.is_a?(Array) return value unless value.nil? setting.operation == :set end
write_settings_groups(groups)
click to toggle source
# File lib/nvim_conf/writers/documentation/settings.rb, line 25 def write_settings_groups(groups) groups.each do |operation, settings| @io.write_separator @io.write( Utils::MarkdownFormatter.format_title( operation.capitalize, level: 3 ) ) settings.each do |setting| @io.write( [ "- #{setting.key}", transformed_value(setting, setting.value) ].join(operator(setting)) + "\n" ) end end end