Module: Flumtter
- Defined in:
- lib/flumtter/version.rb,
lib/flumtter/app/core/cli.rb,
lib/flumtter/app/core/core.rb,
lib/flumtter/app/core/util.rb,
lib/flumtter/app/core/toast.rb,
lib/flumtter/app/core/client.rb,
lib/flumtter/app/core/curses.rb,
lib/flumtter/app/plugins/cli.rb,
lib/flumtter/app/plugins/pry.rb,
lib/flumtter/app/core/command.rb,
lib/flumtter/app/core/plugins.rb,
lib/flumtter/app/plugins/load.rb,
lib/flumtter/app/plugins/tmux.rb,
lib/flumtter/app/core/keyboard.rb,
lib/flumtter/app/core/terminal.rb,
lib/flumtter/app/plugins/toast.rb,
lib/flumtter/app/core/command/dm.rb,
lib/flumtter/app/plugins/commands.rb,
lib/flumtter/app/plugins/timeline.rb,
lib/flumtter/app/core/command/user.rb,
lib/flumtter/app/core/windows/base.rb,
lib/flumtter/app/core/windows/list.rb,
lib/flumtter/app/core/command/tweet.rb,
lib/flumtter/app/core/windows/popup.rb,
lib/flumtter/app/core/windows/tweet.rb,
lib/flumtter/app/core/windows/dialog.rb,
lib/flumtter/app/core/windows/dmbase.rb,
lib/flumtter/app/plugins/timeline/dm.rb,
lib/flumtter/app/core/windows/mention.rb,
lib/flumtter/app/plugins/timeline/fav.rb,
lib/flumtter/app/core/account_selector.rb,
lib/flumtter/app/core/command/userlist.rb,
lib/flumtter/app/core/windows/favorite.rb,
lib/flumtter/app/core/windows/follower.rb,
lib/flumtter/app/core/windows/userbase.rb,
lib/flumtter/app/plugins/commands/list.rb,
lib/flumtter/app/plugins/commands/user.rb,
lib/flumtter/app/plugins/timeline/base.rb,
lib/flumtter/app/core/windows/following.rb,
lib/flumtter/app/core/windows/tweetbase.rb,
lib/flumtter/app/plugins/commands/reply.rb,
lib/flumtter/app/plugins/plugin_manager.rb,
lib/flumtter/app/plugins/timeline/event.rb,
lib/flumtter/app/plugins/timeline/tweet.rb,
lib/flumtter/app/core/windows/buf_window.rb,
lib/flumtter/app/plugins/commands/delete.rb,
lib/flumtter/app/plugins/commands/mention.rb,
lib/flumtter/app/plugins/commands/retweet.rb,
lib/flumtter/app/plugins/commands/utility.rb,
lib/flumtter/app/core/windows/conversation.rb,
lib/flumtter/app/core/windows/dynamic_view.rb,
lib/flumtter/app/plugins/commands/favorite.rb,
lib/flumtter/app/plugins/commands/new_tweet.rb,
lib/flumtter/app/plugins/commands/unfavorite.rb,
lib/flumtter/app/plugins/commands/conversation.rb,
lib/flumtter/app/plugins/commands/directmessage.rb,
lib/flumtter/app/plugins/timeline/deleted_tweet.rb,
lib/flumtter/app/plugins/commands/change_profile.rb,
lib/flumtter/app/plugins/commands/directmessages.rb,
lib/flumtter/app/plugins/commands/account_changer.rb
Defined Under Namespace
Modules: Plugins, TimeLine, Util, Window
Classes: Account, AccountSelector, Cli, Client, Command, ExecutedError, Keyboard, NoContentError, Terminal, Toast, UnSupportError
Constant Summary
collapse
- VERSION =
"5.9.2"
- StartTime =
Time.now
- SourcePath =
File.expand_path('../../', __FILE__)
- UserPath =
File.expand_path('~/.flumtter')
- Logger =
Logger.new(UserPath.join('flumtter.log'))
- Config =
Marshal.load(File.read(data_path)) rescue {}
- TITLE =
"Flumtter"
Class Method Summary
collapse
Class Method Details
.callback(event, object = nil) ⇒ Object
58
59
60
|
# File 'lib/flumtter/app/core/core.rb', line 58
def callback(event,object=nil)
@events[event].each{|blk|blk.call(object)}
end
|
.load_plugin(source, path, file = nil) ⇒ Object
37
38
39
40
41
42
43
|
# File 'lib/flumtter/app/core/core.rb', line 37
def load_plugin(source, path, file=nil)
path = file.nil? ? source.join(path, '*.rb') : source.join(path, file)
Dir.glob(path).each do |plugin|
logger.debug("Load: #{plugin}")
require plugin
end
end
|
.logger ⇒ Object
33
34
35
|
# File 'lib/flumtter/app/core/core.rb', line 33
def logger
Logger
end
|
.on_event(event, &blk) ⇒ Object
54
55
56
|
# File 'lib/flumtter/app/core/core.rb', line 54
def on_event(event,&blk)
@events[event] << blk
end
|
.sarastire(*args) ⇒ Object
45
46
47
|
# File 'lib/flumtter/app/core/core.rb', line 45
def sarastire(*args)
load_plugin(SourcePath, *args)
end
|
.sarastire_user(*args) ⇒ Object
49
50
51
|
# File 'lib/flumtter/app/core/core.rb', line 49
def sarastire_user(*args)
load_plugin(UserPath, *args)
end
|
.start ⇒ Object
76
77
78
79
80
81
82
83
84
85
86
87
|
# File 'lib/flumtter/app/core/core.rb', line 76
def start
options = Initializer.optparse
Setting.merge!(options)
Client.new AccountSelector.select(options)
rescue Interrupt
rescue Exception => ex
logger.fatal(<<~EOS)
#{ex.backtrace.shift}: #{ex.message} (#{ex.class})
#{ex.backtrace.join("\n")}
EOS
raise ex
end
|