最適化 #615 » plugin.patch
| core/miquire_plugin.rb | ||
|---|---|---|
|
def get_spec(path)
|
||
|
type_strict path => String
|
||
|
plugin_dir = FileTest.directory?(path) ? path : File.dirname(path)
|
||
|
spec_filename = File.join(plugin_dir, "spec")
|
||
|
spec_filename = File.join(plugin_dir, ".mikutter_plugin")
|
||
|
deprecated_spec = false;
|
||
|
unless FileTest.exist? spec_filename
|
||
|
spec_filename = File.join(plugin_dir, "spec")
|
||
|
deprecated_spec = true
|
||
|
end
|
||
|
if FileTest.exist? spec_filename
|
||
|
spec = YAML.load_file(spec_filename).symbolize
|
||
|
spec[:path] = plugin_dir
|
||
|
spec[:kind] = get_kind(path)
|
||
|
spec
|
||
|
elsif FileTest.exist? path
|
||
|
{ slug: File.basename(path, ".rb").to_sym,
|
||
|
spec = { slug: File.basename(path, ".rb").to_sym,
|
||
|
kind: get_kind(path),
|
||
|
path: plugin_dir } end end
|
||
|
path: plugin_dir } end
|
||
|
spec[:deprecated_spec] = deprecated_spec
|
||
|
spec
|
||
|
end
|
||
|
def get_spec_by_slug(slug)
|
||
|
type_strict slug => Symbol
|
||
| ... | ... | |
|
::Plugin.create(spec[:slug].to_sym) do
|
||
|
self.spec = spec end
|
||
|
Kernel.load File.join(spec[:path], "#{spec[:slug]}.rb")
|
||
|
if spec[:deprecated_spec]
|
||
|
title = "#{spec[:slug]}: spec file is deprecated."
|
||
|
Plugin.call(:modify_activity,
|
||
|
{ plugin: spec[:slug],
|
||
|
kind: "warning",
|
||
|
title: title,
|
||
|
date: Time.now,
|
||
|
description: "#{title}\nUse .mikutter_plugin instead."}) end
|
||
|
true end
|
||
|
end
|
||
|
end
|
||
| core/plugin/activity/activity.rb | ||
|---|---|---|
|
defactivity "dm", _("ダイレクトメッセージ")
|
||
|
defactivity "system", _("システムメッセージ")
|
||
|
defactivity "error", _("エラー")
|
||
|
defactivity "warning", _("警告")
|
||
|
end
|
||