class NvimConf::Writers::Documentation::Plugins

Public Class Methods

new(managers, io) click to toggle source
# File lib/nvim_conf/writers/documentation/plugins.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/plugins.rb, line 10
def aggregate_writes
  return if @managers.empty?

  @io.write(
    Utils::MarkdownFormatter.format_title(
      "Plugins",
      level: 2
    )
  )

  write_plugins
end

Private Instance Methods

plugin_url(name) click to toggle source
# File lib/nvim_conf/writers/documentation/plugins.rb, line 48
def plugin_url(name)
  "https://github.com/#{name}"
end
write_plugins() click to toggle source
# File lib/nvim_conf/writers/documentation/plugins.rb, line 25
def write_plugins
  @managers.each do |manager|
    @io.write(
      Utils::MarkdownFormatter.format_title(
        manager.name.capitalize,
        level: 3
      )
    )

    manager.plugins.each do |plugin|
      @io.write(
        Utils::MarkdownFormatter.collapisible(
          plugin.name,
          plugin_url(plugin.name)
        )
      )
      @io.write("\n")
    end

    @io.write_separator
  end
end