Module: Vnehm
- Defined in:
- lib/vnehm.rb,
lib/vnehm/os.rb,
lib/vnehm/ui.rb,
lib/vnehm/cfg.rb,
lib/vnehm/menu.rb,
lib/vnehm/track.rb,
lib/vnehm/client.rb,
lib/vnehm/command.rb,
lib/vnehm/version.rb,
lib/vnehm/playlist.rb,
lib/vnehm/applescript.rb,
lib/vnehm/path_manager.rb,
lib/vnehm/option_parser.rb,
lib/vnehm/token_manager.rb,
lib/vnehm/track_manager.rb,
lib/vnehm/command_manager.rb,
lib/vnehm/playlist_manager.rb,
lib/vnehm/commands/dl_command.rb,
lib/vnehm/tracks_view_command.rb,
lib/vnehm/commands/get_command.rb,
lib/vnehm/commands/help_command.rb,
lib/vnehm/commands/list_command.rb,
lib/vnehm/commands/search_command.rb,
lib/vnehm/commands/version_command.rb,
lib/vnehm/commands/configure_command.rb
Defined Under Namespace
Modules: AppleScript, Cfg, Client, CommandManager, OS, PathManager, PlaylistManager, TokenManager, UI
Classes: Command, ConfigureCommand, DlCommand, GetCommand, HelpCommand, ListCommand, OptionParser, Playlist, SearchCommand, Track, TrackManager, TracksViewCommand, VersionCommand, VnehmExit
Constant Summary
collapse
- HELP =
"\#{'vnehm'.green} - \u044D\u0442\u043E \u043A\u043E\u043D\u0441\u043E\u043B\u044C\u043D\u0430\u044F \u0443\u0442\u0438\u043B\u0438\u0442\u0430, \u043A\u043E\u0442\u043E\u0440\u0430\u044F \u0441\u043A\u0430\u0447\u0438\u0432\u0430\u0435\u0442 (\u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u044F\u0435\u0442 \u0432 \u0412\u0430\u0448\u0443 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0443 iTunes) \u0430\u0443\u0434\u0438\u043E\u0437\u0430\u043F\u0438\u0441\u0438 \u0438\u0437 \u0412\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u0435\n\n\#{'\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u044B:'.yellow}\n \#{'get'.green} \u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0442\u0440\u0435\u043A\u043E\u0432 \u0438\u0437 VK \u0432 \u0412\u0430\u0448\u0443 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0443 iTunes\n \#{'dl'.green} \u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0412\u0430\u0448\u0438\u0445 \u0430\u0443\u0434\u0438\u043E\u0437\u0430\u043F\u0438\u0441\u0435\u0439 \u0438\u0437 VK\n \#{'configure'.green} \u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F\n \#{'help'.green} \u041F\u043E\u043A\u0430\u0437 \u0441\u043F\u0440\u0430\u0432\u043A\u0438 \u0434\u043B\u044F \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0439 \u043A\u043E\u043C\u0430\u043D\u0434\u044B\n \#{'list'.green} \u0412\u044B\u0432\u043E\u0434 \u0441\u043F\u0438\u0441\u043A\u0430 \u0412\u0430\u0448\u0438\u0445 \u0430\u0443\u0434\u0438\u043E\u0437\u0430\u043F\u0438\u0441\u0435\u0439 \u0438\u0437 VK \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0445 \u0442\u0440\u0435\u043A\u043E\u0432\n \#{'search'.green} \u041F\u043E\u0438\u0441\u043A, \u0432\u044B\u0432\u043E\u0434 \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0445 \u0430\u0443\u0434\u0438\u043E\u0437\u0430\u043F\u0438\u0441\u0435\u0439 \u043F\u043E \u0437\u0430\u043F\u0440\u043E\u0441\u0443\n \#{'version'.green} \u0412\u044B\u0432\u043E\u0434 \u0432\u0435\u0440\u0441\u0438\u0438 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F\n\n\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 \#{'vnehm help \u041A\u041E\u041C\u0410\u041D\u0414\u0410'.yellow}, \u0447\u0442\u043E\u0431\u044B \u0443\u0437\u043D\u0430\u0442\u044C \u043F\u043E\u0434\u0440\u043E\u0431\u043D\u0435\u0435 \u043E\u0431 \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0439 \u043A\u043E\u043C\u0430\u043D\u0434\u0435\n\n\u041A\u043E\u043C\u0430\u043D\u0434\u044B \u0438 \u0430\u0440\u0433\u0443\u043C\u0435\u043D\u0442\u044B (\u043D\u043E \u041D\u0415 \u043E\u043F\u0446\u0438\u0438) \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u0441\u043E\u043A\u0440\u0430\u0449\u0435\u043D\u044B, \u043D\u0430\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u043E\u043D\u0438 \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u043E\u0434\u043D\u043E\u0437\u043D\u0430\u0447\u043D\u044B\n\u041D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, \#{'vnehm g'.magenta} \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0441\u043E\u043A\u0440\u0430\u0449\u0435\u043D\u0438\u0435\u043C \u0434\u043B\u044F \#{'vnehm get'.magenta}\n"
- VERSION =
'1.1.2'.freeze
Class Method Summary
collapse
Class Method Details
.init ⇒ Object
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# File 'lib/vnehm.rb', line 52
def init
UI.say 'Прежде чем использовать vnehm, Вам нужно его настроить:'
Cfg.create unless Cfg.exist?
PathManager.set_dl_path
UI.newline
if OS.mac?
PlaylistManager.set_playlist
UI.newline
end
UI.say 'Теперь Вам нужно авторизоваться'
UI.say 'Для этого следуйте инструкциям ниже:'
TokenManager.authorize
UI.newline
UI.success "Теперь вы можете использовать vnehm!"
UI.newline
UI.sleep
end
|
.initialized? ⇒ Boolean
74
75
76
|
# File 'lib/vnehm.rb', line 74
def initialized?
Cfg.exist?
end
|
.start(args) ⇒ Object
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
# File 'lib/vnehm.rb', line 15
def self.start(args)
begin
init unless initialized?
if args.empty?
UI.say HELP
UI.term
end
CommandManager.run(args)
rescue StandardError, Timeout::Error => ex
Vnehm::UI.term "Ошибка во время исполнения ... (#{ex.class})\n #{ex}"
rescue Interrupt
rescue VnehmExit
end
end
|