Class: Pindo::Funlog
- Inherits:
-
Object
- Object
- Pindo::Funlog
- Defined in:
- lib/pindo/base/funlog.rb
Defined Under Namespace
Modules: Mixin
Singleton collapse
Singleton collapse
- .error(*args) ⇒ Object
- .fancyinfo_error(*args) ⇒ Object
-
.fancyinfo_start(*args) ⇒ Object
类方法委托,简化调用方式 使用 Funlog.info(“消息”) 代替 Funlog.instance.info(“消息”).
- .fancyinfo_success(*args) ⇒ Object
- .fancyinfo_update(*args) ⇒ Object
- .info(*args) ⇒ Object
-
.reload_instance ⇒ Config
The current config instance creating one if needed.
- .warning(*args) ⇒ Object
Instance Method Summary collapse
- #create_spinner(info_key: nil) ⇒ Object
-
#error(*args) ⇒ Object
输出静态错误信息(不使用spinner,对应 fancyinfo_error).
- #fancyinfo_error(*args) ⇒ Object
- #fancyinfo_start(*args) ⇒ Object
- #fancyinfo_success(*args) ⇒ Object
- #fancyinfo_update(*args) ⇒ Object
-
#info(*args) ⇒ Object
输出静态成功信息(不使用spinner,对应 fancyinfo_success).
- #spinner_log_handle ⇒ Object
-
#warning(*args) ⇒ Object
输出静态警告信息(不使用spinner).
Class Attribute Details
.instance ⇒ Object
83 84 85 |
# File 'lib/pindo/base/funlog.rb', line 83 def self.instance @instance ||= new end |
Class Method Details
.error(*args) ⇒ Object
124 125 126 |
# File 'lib/pindo/base/funlog.rb', line 124 def error(*args) instance.error(*args) end |
.fancyinfo_error(*args) ⇒ Object
112 113 114 |
# File 'lib/pindo/base/funlog.rb', line 112 def (*args) instance.(*args) end |
.fancyinfo_start(*args) ⇒ Object
类方法委托,简化调用方式使用 Funlog.info(“消息”) 代替 Funlog.instance.info(“消息”)
100 101 102 |
# File 'lib/pindo/base/funlog.rb', line 100 def (*args) instance.(*args) end |
.fancyinfo_success(*args) ⇒ Object
108 109 110 |
# File 'lib/pindo/base/funlog.rb', line 108 def (*args) instance.(*args) end |
.fancyinfo_update(*args) ⇒ Object
104 105 106 |
# File 'lib/pindo/base/funlog.rb', line 104 def (*args) instance.(*args) end |
.info(*args) ⇒ Object
116 117 118 |
# File 'lib/pindo/base/funlog.rb', line 116 def info(*args) instance.info(*args) end |
.reload_instance ⇒ Config
Returns the current config instance creating one if needed.
79 80 81 |
# File 'lib/pindo/base/funlog.rb', line 79 def self.reload_instance @instance = new end |
.warning(*args) ⇒ Object
120 121 122 |
# File 'lib/pindo/base/funlog.rb', line 120 def warning(*args) instance.warning(*args) end |
Instance Method Details
#create_spinner(info_key: nil) ⇒ Object
8 9 10 11 12 |
# File 'lib/pindo/base/funlog.rb', line 8 def create_spinner(info_key:nil) # spinner = TTY::Spinner.new("[:spinner] :#{info_key}", format: :dots_2, error_mark: "❌", success_mark: "✅") spinner = TTY::Spinner.new("[:spinner] :#{info_key}", format: :dots_2, error_mark: "❌") spinner end |
#error(*args) ⇒ Object
输出静态错误信息(不使用spinner,对应 fancyinfo_error)
68 69 70 71 |
# File 'lib/pindo/base/funlog.rb', line 68 def error(*args) = args.join(" ") puts "\e[31m ✗ #{message}\e[0m" end |
#fancyinfo_error(*args) ⇒ Object
45 46 47 48 49 50 |
# File 'lib/pindo/base/funlog.rb', line 45 def (*args) = args.join(" ") spinner_log_handle.update(title:) spinner_log_handle.error @spinner_log =nil end |
#fancyinfo_start(*args) ⇒ Object
23 24 25 26 27 28 |
# File 'lib/pindo/base/funlog.rb', line 23 def (*args) = args.join(" ") spinner_log_handle.update(title:) spinner_log_handle.auto_spin @spinner_log end |
#fancyinfo_success(*args) ⇒ Object
38 39 40 41 42 43 |
# File 'lib/pindo/base/funlog.rb', line 38 def (*args) = args.join(" ") spinner_log_handle.update(title:) spinner_log_handle.success @spinner_log =nil end |
#fancyinfo_update(*args) ⇒ Object
31 32 33 34 35 36 |
# File 'lib/pindo/base/funlog.rb', line 31 def (*args) = args.join(" ") spinner_log_handle.update(title:) spinner_log_handle.spin @spinner_log end |
#info(*args) ⇒ Object
输出静态成功信息(不使用spinner,对应 fancyinfo_success)
54 55 56 57 |
# File 'lib/pindo/base/funlog.rb', line 54 def info(*args) = args.join(" ") puts " ✓ #{message}" end |
#spinner_log_handle ⇒ Object
14 15 16 17 18 19 |
# File 'lib/pindo/base/funlog.rb', line 14 def spinner_log_handle if @spinner_log.nil? @spinner_log = create_spinner(info_key:"title") end @spinner_log end |
#warning(*args) ⇒ Object
输出静态警告信息(不使用spinner)
61 62 63 64 |
# File 'lib/pindo/base/funlog.rb', line 61 def warning(*args) = args.join(" ") puts "\e[33m ⚠ #{message}\e[0m" end |