lib/textbringer/plugin.rb in textbringer-0.2.1 vs lib/textbringer/plugin.rb in textbringer-0.2.2

- old
+ new

@@ -1,21 +1,26 @@ # frozen_string_literal: true module Textbringer module Plugin + class << self + attr_accessor :directory + end + + @directory = File.expand_path("~/.textbringer/plugins") + def self.load_plugins - files = Gem.find_files("textbringer_plugin.rb") - files.group_by { |file| + files = Gem.find_files("textbringer_plugin.rb").group_by { |file| file.slice(/([^\/]+)-[\w.]+\/lib\/textbringer_plugin\.rb\z/, 1) }.map { |gem, versions| versions.sort_by { |version| v = version.slice(/[^\/]+-([\w.]+)\/lib\/textbringer_plugin\.rb\z/, 1) Gem::Version.create(v) }.last - }.each do |file| + } + Dir.glob(File.join(directory, "*/**/textbringer_plugin.rb")) + files.each do |file| load(file) end end end end -