x2c 0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +103 -0
- data/x2c/config.rb +59 -0
- data/x2c/core/args.rb +36 -0
- data/x2c/core/client.rb +61 -0
- data/x2c/core/collection.rb +136 -0
- data/x2c/core/configure.rb +43 -0
- data/x2c/core/meta.rb +77 -0
- data/x2c/core/prompt.rb +59 -0
- data/x2c/core/resulteval.rb +133 -0
- data/x2c/doc.rb +243 -0
- data/x2c/doc/Array/cdesc-Array.yaml +21 -0
- data/x2c/doc/Array/format-i.yaml +10 -0
- data/x2c/doc/Array/inspect-i.yaml +10 -0
- data/x2c/doc/Array/to_s-i.yaml +10 -0
- data/x2c/doc/Fixnum/cdesc-Fixnum.yaml +20 -0
- data/x2c/doc/Fixnum/hour-i.yaml +12 -0
- data/x2c/doc/Fixnum/min-i.yaml +12 -0
- data/x2c/doc/Fixnum/sec-i.yaml +12 -0
- data/x2c/doc/Hash/cdesc-Hash.yaml +21 -0
- data/x2c/doc/Hash/format-i.yaml +10 -0
- data/x2c/doc/Hash/inspect-i.yaml +10 -0
- data/x2c/doc/Hash/to_s-i.yaml +10 -0
- data/x2c/doc/Help/cdesc-Help.yaml +30 -0
- data/x2c/doc/Help/help-c.yaml +10 -0
- data/x2c/doc/Help/help_hacks-c.yaml +10 -0
- data/x2c/doc/Help/ignore-c.yaml +10 -0
- data/x2c/doc/Help/irb_help-c.yaml +10 -0
- data/x2c/doc/Help/match%3f-c.yaml +10 -0
- data/x2c/doc/Help/trace_help-c.yaml +10 -0
- data/x2c/doc/IRB/ExtendCommandBundle/cdesc-ExtendCommandBundle.yaml +15 -0
- data/x2c/doc/IRB/Prompt/%5b%5d-i.yaml +10 -0
- data/x2c/doc/IRB/Prompt/cdesc-Prompt.yaml +36 -0
- data/x2c/doc/IRB/Prompt/config-i.yaml +10 -0
- data/x2c/doc/IRB/Prompt/main%3d-i.yaml +12 -0
- data/x2c/doc/IRB/Prompt/new-c.yaml +10 -0
- data/x2c/doc/IRB/Prompt/pop-i.yaml +10 -0
- data/x2c/doc/IRB/Prompt/push-i.yaml +10 -0
- data/x2c/doc/IRB/Prompt/set-i.yaml +11 -0
- data/x2c/doc/IRB/Prompt/start-i.yaml +10 -0
- data/x2c/doc/IRB/cdesc-IRB.yaml +15 -0
- data/x2c/doc/Kernel/cdesc-Kernel.yaml +16 -0
- data/x2c/doc/Kernel/xmms-i.yaml +12 -0
- data/x2c/doc/NilClass/cdesc-NilClass.yaml +16 -0
- data/x2c/doc/NilClass/inspect-i.yaml +10 -0
- data/x2c/doc/Object/cdesc-Object.yaml +18 -0
- data/x2c/doc/Object/format-i.yaml +10 -0
- data/x2c/doc/Object/to_d-i.yaml +12 -0
- data/x2c/doc/Prompting/activate-i.yaml +12 -0
- data/x2c/doc/Prompting/back-i.yaml +12 -0
- data/x2c/doc/Prompting/cdesc-Prompting.yaml +45 -0
- data/x2c/doc/Prompting/gointo-i.yaml +12 -0
- data/x2c/doc/Prompting/inspect-i.yaml +12 -0
- data/x2c/doc/Prompting/intersect-i.yaml +12 -0
- data/x2c/doc/Prompting/last%3d-i.yaml +12 -0
- data/x2c/doc/Prompting/last-i.yaml +12 -0
- data/x2c/doc/Prompting/lost-i.yaml +12 -0
- data/x2c/doc/Prompting/makelast-i.yaml +12 -0
- data/x2c/doc/Prompting/pop-i.yaml +12 -0
- data/x2c/doc/Prompting/push-i.yaml +12 -0
- data/x2c/doc/Prompting/stack-i.yaml +12 -0
- data/x2c/doc/Prompting/to_s-i.yaml +12 -0
- data/x2c/doc/Prompting/union-i.yaml +12 -0
- data/x2c/doc/String/cdesc-String.yaml +18 -0
- data/x2c/doc/String/format-i.yaml +10 -0
- data/x2c/doc/String/inspect-i.yaml +10 -0
- data/x2c/doc/Xmms/Browse/%5b%5d-i.yaml +12 -0
- data/x2c/doc/Xmms/Browse/cd-i.yaml +17 -0
- data/x2c/doc/Xmms/Browse/cdesc-Browse.yaml +34 -0
- data/x2c/doc/Xmms/Browse/dirs-i.yaml +12 -0
- data/x2c/doc/Xmms/Browse/files-i.yaml +12 -0
- data/x2c/doc/Xmms/Browse/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Browse/get-i.yaml +12 -0
- data/x2c/doc/Xmms/Browse/list-i.yaml +12 -0
- data/x2c/doc/Xmms/Browse/mlib_add-i.yaml +12 -0
- data/x2c/doc/Xmms/Browse/open-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Chains/cdesc-Chains.yaml +39 -0
- data/x2c/doc/Xmms/Client/Chains/info-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Chains/remove-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Chains/song-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Config/cdesc-Config.yaml +18 -0
- data/x2c/doc/Xmms/Client/Config/config-i.yaml +18 -0
- data/x2c/doc/Xmms/Client/Daemon/cdesc-Daemon.yaml +27 -0
- data/x2c/doc/Xmms/Client/Daemon/connect-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/Daemon/dead_daemon-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Daemon/post_daemon-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Daemon/pre_daemon-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Daemon/start_daemon-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/IPlayback/cdesc-IPlayback.yaml +22 -0
- data/x2c/doc/Xmms/Client/IPlayback/pause-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/IPlayback/play-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/IPlayback/skip-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/ListNames/cdesc-ListNames.yaml +20 -0
- data/x2c/doc/Xmms/Client/ListNames/setup_list-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/ListNames/setup_lists-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Mlib/browse-i.yaml +14 -0
- data/x2c/doc/Xmms/Client/Mlib/cdesc-Mlib.yaml +20 -0
- data/x2c/doc/Xmms/Client/Mlib/rehash-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Remember/cdesc-Remember.yaml +25 -0
- data/x2c/doc/Xmms/Client/Remember/gointo-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Remember/inspect-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/Remember/push-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Remember/to_s-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/Search/cdesc-Search.yaml +17 -0
- data/x2c/doc/Xmms/Client/Shortcut/cdesc-Shortcut.yaml +22 -0
- data/x2c/doc/Xmms/Client/Shortcut/now-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Shortcut/seek-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Shortcut/volume-i.yaml +14 -0
- data/x2c/doc/Xmms/Client/Vote/cdesc-Vote.yaml +24 -0
- data/x2c/doc/Xmms/Client/Vote/rating-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Vote/remove_rating%21-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Vote/undo_voting-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/Vote/vote-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/__connect-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/async_start-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/bindata_add-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/bindata_retrieve-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/c-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/cdesc-Client.yaml +169 -0
- data/x2c/doc/Xmms/Client/coll_find-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/coll_get-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/coll_idlist_from_playlist_file-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/coll_list-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/coll_query_ids-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/coll_query_info-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/coll_remove-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/coll_rename-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/coll_save-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/configure-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/configval_get-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/configval_list-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/configval_register-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/configval_set-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/connect-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/continue-i.yaml +11 -0
- data/x2c/doc/Xmms/Client/format-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/handled_connect-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/help-i.yaml +16 -0
- data/x2c/doc/Xmms/Client/main-c.yaml +12 -0
- data/x2c/doc/Xmms/Client/main_stats-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/medialib_add_entry-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/medialib_entry_property_remove-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/medialib_entry_property_set-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/medialib_entry_remove-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/medialib_get_id-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/medialib_get_info-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/medialib_path_import-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/medialib_rehash-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/medialib_select-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/new-c.yaml +12 -0
- data/x2c/doc/Xmms/Client/on_disconnect-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/playback_pause-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_seek_ms-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_seek_ms_rel-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_seek_samples-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_seek_samples_rel-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_start-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_stop-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_tickle-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_volume_get-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playback_volume_set-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playbacklist-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/playlist-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playlist_list-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playlist_set_next-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/playlist_set_next_rel-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/plugin_list-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/post_connect-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/pre_connect-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/quit-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/setup-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/showprompt-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/shutdown-i.yaml +12 -0
- data/x2c/doc/Xmms/Client/welcome-i.yaml +10 -0
- data/x2c/doc/Xmms/Client/xform_media_browse-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/%26-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/%5b%5d%3d-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/%5b%5d-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/%7c-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/%7e-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Attributes/add-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Attributes/cdesc-Attributes.yaml +25 -0
- data/x2c/doc/Xmms/Collection/Attributes/field-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Attributes/field_string-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Attributes/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Chains/cdesc-Chains.yaml +39 -0
- data/x2c/doc/Xmms/Collection/Chains/list-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Chains/load-c.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Chains/load_form_file-c.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Chains/play-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Chains/playlist-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Chains/save-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/FormQuery/cdesc-FormQuery.yaml +22 -0
- data/x2c/doc/Xmms/Collection/FormQuery/method_missing-i.yaml +14 -0
- data/x2c/doc/Xmms/Collection/Info/cdesc-Info.yaml +32 -0
- data/x2c/doc/Xmms/Collection/Info/info-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Info/inspect-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Operands/cdesc-Operands.yaml +18 -0
- data/x2c/doc/Xmms/Collection/Operands/empty%3f-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Query/%3c%3d-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Query/%3e%3d-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Query/%7e-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Query/_-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Query/cdesc-Query.yaml +32 -0
- data/x2c/doc/Xmms/Collection/Query/exist%3f-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/Query/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Query/has-i.yaml +13 -0
- data/x2c/doc/Xmms/Collection/Query/new-c.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Vote/acceptable-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Vote/awesome-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Vote/cdesc-Vote.yaml +32 -0
- data/x2c/doc/Xmms/Collection/Vote/good-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Vote/nice-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Vote/notsucking-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/Vote/unvoted-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/and-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/attribute-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/cdesc-Collection.yaml +140 -0
- data/x2c/doc/Xmms/Collection/complement-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/default-c.yaml +12 -0
- data/x2c/doc/Xmms/Collection/format-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/idlis-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/idlist%3d-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/intersect-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/load-c.yaml +10 -0
- data/x2c/doc/Xmms/Collection/new-c.yaml +10 -0
- data/x2c/doc/Xmms/Collection/new_constructor-c.yaml +12 -0
- data/x2c/doc/Xmms/Collection/new_list-c.yaml +12 -0
- data/x2c/doc/Xmms/Collection/new_pshuffle-c.yaml +12 -0
- data/x2c/doc/Xmms/Collection/new_selection-c.yaml +12 -0
- data/x2c/doc/Xmms/Collection/not-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/operand-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/or-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/parent-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/pshuffle-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/queue-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/tree_inject-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/tree_walk-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/typ-i.yaml +10 -0
- data/x2c/doc/Xmms/Collection/union-i.yaml +12 -0
- data/x2c/doc/Xmms/Collection/universe-c.yaml +12 -0
- data/x2c/doc/Xmms/Config/%5b%5d%3d-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/%5b%5d-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/cdesc-Config.yaml +47 -0
- data/x2c/doc/Xmms/Config/configs-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/join-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/keys-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/method_missing-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/methods-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/new-c.yaml +10 -0
- data/x2c/doc/Xmms/Config/parent-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/respond_to%3f-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/subs-i.yaml +10 -0
- data/x2c/doc/Xmms/Config/subtrees-i.yaml +10 -0
- data/x2c/doc/Xmms/Duration/cdesc-Duration.yaml +25 -0
- data/x2c/doc/Xmms/Duration/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Duration/new-c.yaml +10 -0
- data/x2c/doc/Xmms/Duration/to_s-i.yaml +10 -0
- data/x2c/doc/Xmms/Format/cdesc-Format.yaml +22 -0
- data/x2c/doc/Xmms/Format/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Format/inspect-i.yaml +10 -0
- data/x2c/doc/Xmms/Format/to_s-i.yaml +10 -0
- data/x2c/doc/Xmms/Info/cdesc-Info.yaml +32 -0
- data/x2c/doc/Xmms/Info/count-i.yaml +12 -0
- data/x2c/doc/Xmms/Info/format-i.yaml +12 -0
- data/x2c/doc/Xmms/Info/inspect-i.yaml +10 -0
- data/x2c/doc/Xmms/Info/method_missing-i.yaml +10 -0
- data/x2c/doc/Xmms/Info/new-c.yaml +10 -0
- data/x2c/doc/Xmms/Info/search-i.yaml +12 -0
- data/x2c/doc/Xmms/Info/to_s-i.yaml +10 -0
- data/x2c/doc/Xmms/Media/cdesc-Media.yaml +31 -0
- data/x2c/doc/Xmms/Media/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Media/media-i.yaml +12 -0
- data/x2c/doc/Xmms/Media/mlib_add-i.yaml +12 -0
- data/x2c/doc/Xmms/Media/new-c.yaml +10 -0
- data/x2c/doc/Xmms/Media/parent-i.yaml +12 -0
- data/x2c/doc/Xmms/Options/%5b%5d%3d-c.yaml +10 -0
- data/x2c/doc/Xmms/Options/%5b%5d-c.yaml +10 -0
- data/x2c/doc/Xmms/Options/cdesc-Options.yaml +24 -0
- data/x2c/doc/Xmms/Options/get_argv-c.yaml +10 -0
- data/x2c/doc/Xmms/Options/help-c.yaml +10 -0
- data/x2c/doc/Xmms/Options/opts-c.yaml +10 -0
- data/x2c/doc/Xmms/Playlist/Chains/cdesc-Chains.yaml +18 -0
- data/x2c/doc/Xmms/Playlist/Chains/play-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/Shortcut/add-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/Shortcut/cdesc-Shortcut.yaml +24 -0
- data/x2c/doc/Xmms/Playlist/Shortcut/insert-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/Shortcut/move-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/Shortcut/remove_entries-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/add_collection-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/add_entry-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/cdesc-Playlist.yaml +56 -0
- data/x2c/doc/Xmms/Playlist/clear-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/collection-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/current_pos-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/entries-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Playlist/insert_entry-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/load-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/name-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/new-c.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/playlist_move_entry-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/radd-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/remove-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/remove_entry-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/shuffle-i.yaml +12 -0
- data/x2c/doc/Xmms/Playlist/sort-i.yaml +12 -0
- data/x2c/doc/Xmms/PropDict/Mlib/cdesc-Mlib.yaml +30 -0
- data/x2c/doc/Xmms/PropDict/Mlib/method_missing-i.yaml +10 -0
- data/x2c/doc/Xmms/PropDict/Mlib/methods-i.yaml +10 -0
- data/x2c/doc/Xmms/PropDict/Mlib/rehash-i.yaml +12 -0
- data/x2c/doc/Xmms/PropDict/Mlib/remove%21-i.yaml +12 -0
- data/x2c/doc/Xmms/PropDict/Mlib/respond_to%3f-i.yaml +10 -0
- data/x2c/doc/Xmms/PropDict/cdesc-PropDict.yaml +27 -0
- data/x2c/doc/Xmms/PropDict/format-i.yaml +10 -0
- data/x2c/doc/Xmms/PropDict/id-i.yaml +10 -0
- data/x2c/doc/Xmms/PropDict/inspect-i.yaml +10 -0
- data/x2c/doc/Xmms/PropDict/to_h-i.yaml +10 -0
- data/x2c/doc/Xmms/PropDict/to_s-i.yaml +10 -0
- data/x2c/doc/Xmms/Remember/cdesc-Remember.yaml +18 -0
- data/x2c/doc/Xmms/Result/cdesc-Result.yaml +20 -0
- data/x2c/doc/Xmms/Result/val-i.yaml +12 -0
- data/x2c/doc/Xmms/Song/cdesc-Song.yaml +29 -0
- data/x2c/doc/Xmms/Song/format-c.yaml +12 -0
- data/x2c/doc/Xmms/Song/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Song/info-i.yaml +10 -0
- data/x2c/doc/Xmms/Song/new-c.yaml +10 -0
- data/x2c/doc/Xmms/Songlist/Chains/cdesc-Chains.yaml +29 -0
- data/x2c/doc/Xmms/Songlist/Chains/idlist-i.yaml +12 -0
- data/x2c/doc/Xmms/Songlist/Chains/queue-i.yaml +12 -0
- data/x2c/doc/Xmms/Songlist/cdesc-Songlist.yaml +37 -0
- data/x2c/doc/Xmms/Songlist/collection-i.yaml +10 -0
- data/x2c/doc/Xmms/Songlist/format-i.yaml +10 -0
- data/x2c/doc/Xmms/Songlist/format_hash-i.yaml +10 -0
- data/x2c/doc/Xmms/Songlist/info_hash-i.yaml +10 -0
- data/x2c/doc/Xmms/Songlist/new-c.yaml +10 -0
- data/x2c/doc/Xmms/Songlist/songs-i.yaml +12 -0
- data/x2c/doc/Xmms/Songlist/to_s-i.yaml +10 -0
- data/x2c/doc/Xmms/cdesc-Xmms.yaml +18 -0
- data/x2c/doc/Xmms/save_call-c.yaml +12 -0
- data/x2c/doc/created.rid +1 -0
- data/x2c/plug/async.rb +50 -0
- data/x2c/plug/chains.rb +148 -0
- data/x2c/plug/config.rb +90 -0
- data/x2c/plug/daemon.rb +72 -0
- data/x2c/plug/format.rb +251 -0
- data/x2c/plug/help.rb +240 -0
- data/x2c/plug/info.rb +86 -0
- data/x2c/plug/iplayback.rb +49 -0
- data/x2c/plug/listnames.rb +43 -0
- data/x2c/plug/mlib.rb +128 -0
- data/x2c/plug/query.rb +51 -0
- data/x2c/plug/remember.rb +124 -0
- data/x2c/plug/shortcuts.rb +108 -0
- data/x2c/plug/tutorial.rb +134 -0
- data/x2c/plug/vote.rb +77 -0
- data/x2c/x2c +36 -0
- data/x2c/x2c.rb +16 -0
- metadata +453 -0
data/x2c/core/prompt.rb
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Copyright by Daniel Waeber, see the LICENSE file for details
|
|
2
|
+
|
|
3
|
+
require 'irb'
|
|
4
|
+
# Simple wrapper arround IRB
|
|
5
|
+
# It will create a IRB Workspace with a new main object
|
|
6
|
+
# and create a Irb Object with itself as workspace
|
|
7
|
+
#
|
|
8
|
+
# You can start the irb-prompt and set, push or pop main object afterwords
|
|
9
|
+
begin
|
|
10
|
+
require 'irb/completion'
|
|
11
|
+
rescue LoadError
|
|
12
|
+
puts "!! can't lod irb/completion, so you won't have completion"
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class IRB::Prompt < IRB::WorkSpace
|
|
17
|
+
def initialize(main, opts=Hash.new)
|
|
18
|
+
super(main)
|
|
19
|
+
|
|
20
|
+
IRB.setup(nil)
|
|
21
|
+
@stack = Array.new
|
|
22
|
+
@prompt = IRB::Irb.new(self)
|
|
23
|
+
@context = @prompt.context
|
|
24
|
+
config(opts)
|
|
25
|
+
end
|
|
26
|
+
def config(opts)
|
|
27
|
+
opts.each_pair do |k,v|
|
|
28
|
+
@context.send((k.to_s+'=').to_sym, v)
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
def [] sym
|
|
32
|
+
@context.send(sym)
|
|
33
|
+
end
|
|
34
|
+
def push(obj)
|
|
35
|
+
@stack.push @main
|
|
36
|
+
set(obj)
|
|
37
|
+
end
|
|
38
|
+
def pop
|
|
39
|
+
set(@stack.pop())
|
|
40
|
+
end
|
|
41
|
+
def set(obj)
|
|
42
|
+
@binding = obj.send(:eval, "binding")
|
|
43
|
+
@main = obj
|
|
44
|
+
end
|
|
45
|
+
attr_reader :prompt, :context
|
|
46
|
+
alias :get :main
|
|
47
|
+
alias :main= :set
|
|
48
|
+
def start(opts=Hash.new)
|
|
49
|
+
IRB.conf[:MAIN_CONTEXT] = @context
|
|
50
|
+
trap 'INT' do
|
|
51
|
+
@prompt.signal_handle()
|
|
52
|
+
exit 130 # exit on unhandled
|
|
53
|
+
end
|
|
54
|
+
catch :IRB_EXIT do
|
|
55
|
+
@prompt.eval_input()
|
|
56
|
+
puts
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
# Copyright by Daniel Waeber, see the LICENSE file for details
|
|
2
|
+
|
|
3
|
+
# this module impements lazy evaluate of Xmms::Resualt,
|
|
4
|
+
# but wait.value it will be automatically evaluate on demand
|
|
5
|
+
#
|
|
6
|
+
# forthermor this module intrdouces new classes Song and Songlist,
|
|
7
|
+
# which are used instead of interger song-ids and id-arrays
|
|
8
|
+
#
|
|
9
|
+
# all integer array results will be converted to Songlists
|
|
10
|
+
require 'core/meta.rb'
|
|
11
|
+
|
|
12
|
+
module Xmms
|
|
13
|
+
class Result
|
|
14
|
+
# wait.value, but also get numeric arrays as idlist
|
|
15
|
+
def val
|
|
16
|
+
return @val if @val
|
|
17
|
+
res = self.wait.value
|
|
18
|
+
@val = res.is_a?(Array) && !res.empty? && res.all?{|e| e.is_a?(Numeric)} &&
|
|
19
|
+
Songlist.new(res) || res
|
|
20
|
+
end
|
|
21
|
+
alias_forward :to_i, :val
|
|
22
|
+
dynamic_forward :val
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# Show Ids as Songlist instead of Array for easy formating and access
|
|
26
|
+
class Songlist
|
|
27
|
+
attr_reader :ids
|
|
28
|
+
alias_method :val, :ids
|
|
29
|
+
def initialize ids
|
|
30
|
+
ids = ids.ids if ids.is_a? Songlist
|
|
31
|
+
@ids = ids
|
|
32
|
+
end
|
|
33
|
+
# retuns ids as songs
|
|
34
|
+
def songs
|
|
35
|
+
@ids.map{|id| Song.new id}
|
|
36
|
+
end
|
|
37
|
+
def collection
|
|
38
|
+
c = Collection.new(Collection::TYPE_IDLIST)
|
|
39
|
+
c.idlist = @ids; c
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
dynamic_forward :songs
|
|
43
|
+
dynamic_forward :collection
|
|
44
|
+
end
|
|
45
|
+
# Show Id as Song instead of Num for easy formating and access
|
|
46
|
+
class Song
|
|
47
|
+
attr_reader :id
|
|
48
|
+
alias_method :val, :id
|
|
49
|
+
alias_method :to_i, :id
|
|
50
|
+
def initialize id
|
|
51
|
+
@id = id.to_i
|
|
52
|
+
end
|
|
53
|
+
def info
|
|
54
|
+
xmms.medialib_get_info(@id)
|
|
55
|
+
end
|
|
56
|
+
dynamic_forward :id
|
|
57
|
+
dynamic_forward :info
|
|
58
|
+
end
|
|
59
|
+
class PropDict
|
|
60
|
+
def id; self[:id] end
|
|
61
|
+
def to_h
|
|
62
|
+
tmp = Hash.new
|
|
63
|
+
self.each_pair do |s,k,v|
|
|
64
|
+
tmp[k]=(tmp[k]||{}).merge({s,v})
|
|
65
|
+
end; tmp
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
class Playlist
|
|
69
|
+
# get the responding collection
|
|
70
|
+
def collection
|
|
71
|
+
@col ||= xmms.coll_get(self.name, Collection::NS_PLAYLISTS).val
|
|
72
|
+
@col.name = self.name; @col
|
|
73
|
+
end
|
|
74
|
+
alias_forward :parent, :collection
|
|
75
|
+
dynamic_forward :entries
|
|
76
|
+
dynamic_forward :parent
|
|
77
|
+
end
|
|
78
|
+
# used to represent durations, you can use
|
|
79
|
+
# "1:30".to_d, 1.30.to_d 90.to_d, 1.min+30.sec ...
|
|
80
|
+
class Duration
|
|
81
|
+
class ::Object
|
|
82
|
+
# tryes to convert object to a duration in ms
|
|
83
|
+
def to_d
|
|
84
|
+
Duration.new(self)
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
class ::Fixnum
|
|
88
|
+
# returns fixnum as hour in ms
|
|
89
|
+
def hour
|
|
90
|
+
Duration.new(self * 3600_000)
|
|
91
|
+
end
|
|
92
|
+
# returns fixnum as min in ms
|
|
93
|
+
def min
|
|
94
|
+
Duration.new(self * 60_000)
|
|
95
|
+
end
|
|
96
|
+
# returns fixnum as sec in ms
|
|
97
|
+
def sec
|
|
98
|
+
Duration.new(self * 1_000)
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
attr_accessor :val
|
|
102
|
+
def to_s
|
|
103
|
+
val.to_s
|
|
104
|
+
end
|
|
105
|
+
def initialize num
|
|
106
|
+
case num
|
|
107
|
+
when Fixnum
|
|
108
|
+
num *= 1000 if num < 1000
|
|
109
|
+
@val = num
|
|
110
|
+
when Duration
|
|
111
|
+
@val = num.val
|
|
112
|
+
when Float
|
|
113
|
+
@val = num.to_i*60_000 + (num%1.0 * 100_000).to_i
|
|
114
|
+
when String
|
|
115
|
+
raise ArgumentError, "malformed time string" unless num =~ /^((\d?\d:)?(\d?\d):)?(\d\d)$/
|
|
116
|
+
@val = $2.to_i*3600_000 + $3.to_i*60_000 + $4.to_i*1_000
|
|
117
|
+
else
|
|
118
|
+
catch(:throw) do
|
|
119
|
+
begin
|
|
120
|
+
if num.to_i.zero?
|
|
121
|
+
initialize(num.to_i)
|
|
122
|
+
else
|
|
123
|
+
initialize(num.to_s)
|
|
124
|
+
end
|
|
125
|
+
rescue
|
|
126
|
+
throw :throw
|
|
127
|
+
end
|
|
128
|
+
end || raise(ArgumentError, "can't convert #{num.class} to Duration", caller)
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
dynamic_forward :val
|
|
132
|
+
end
|
|
133
|
+
end
|
data/x2c/doc.rb
ADDED
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
require 'xmmsclient'
|
|
2
|
+
|
|
3
|
+
module Xmms
|
|
4
|
+
class Client
|
|
5
|
+
def connect(path)
|
|
6
|
+
end
|
|
7
|
+
def on_disconnect
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
# exit the client
|
|
11
|
+
def quit
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# start playback
|
|
15
|
+
def playback_start
|
|
16
|
+
end
|
|
17
|
+
# pause playback
|
|
18
|
+
def playback_pause
|
|
19
|
+
end
|
|
20
|
+
# stop playback
|
|
21
|
+
def playback_stop
|
|
22
|
+
end
|
|
23
|
+
# goes to next song
|
|
24
|
+
def playback_tickle
|
|
25
|
+
end
|
|
26
|
+
# go to a time specific time
|
|
27
|
+
def playback_seek_ms(ms)
|
|
28
|
+
end
|
|
29
|
+
# seek relative
|
|
30
|
+
def playback_seek_ms_rel(ms)
|
|
31
|
+
end
|
|
32
|
+
# go to a specific sample
|
|
33
|
+
def playback_seek_samples(samples)
|
|
34
|
+
end
|
|
35
|
+
# jump samples forward
|
|
36
|
+
def playback_seek_samples_rel(samples)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# set the volume on a channel
|
|
40
|
+
def playback_volume_set(channel, volume)
|
|
41
|
+
end
|
|
42
|
+
# return the volume
|
|
43
|
+
def playback_volume_get
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
# set the song played next
|
|
47
|
+
def playlist_set_next(pos)
|
|
48
|
+
end
|
|
49
|
+
# set the song played next, but relative
|
|
50
|
+
def playlist_set_next_rel(pos)
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
# list all playlists
|
|
55
|
+
def playlist_list
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
# get a named playist, or the active one by default
|
|
59
|
+
def playlist(name="_active")
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# get a collection out of a namespace
|
|
63
|
+
def coll_get(name, ns)
|
|
64
|
+
end
|
|
65
|
+
# list all collections in namespace
|
|
66
|
+
def coll_list(ns)
|
|
67
|
+
end
|
|
68
|
+
# save a collection
|
|
69
|
+
def coll_save(coll, name, ns)
|
|
70
|
+
end
|
|
71
|
+
# remove a collections
|
|
72
|
+
def coll_remove(name, ns)
|
|
73
|
+
end
|
|
74
|
+
# find a collection with id in it
|
|
75
|
+
def coll_find(id, ns)
|
|
76
|
+
end
|
|
77
|
+
# rename a collection
|
|
78
|
+
def coll_rename(old, new, ns)
|
|
79
|
+
end
|
|
80
|
+
# query ids form collection
|
|
81
|
+
def coll_query_ids(coll, order, start, len)
|
|
82
|
+
end
|
|
83
|
+
# query info of songs in collection
|
|
84
|
+
def coll_query_info(coll, fetch, order, start, len)
|
|
85
|
+
end
|
|
86
|
+
# load a collection form a playlist file
|
|
87
|
+
def coll_idlist_from_playlist_file(path)
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
def medialib_select(query)
|
|
91
|
+
end
|
|
92
|
+
def medialib_add_entry(url)
|
|
93
|
+
end
|
|
94
|
+
def medialib_get_id(url)
|
|
95
|
+
end
|
|
96
|
+
def medialib_get_info(id)
|
|
97
|
+
end
|
|
98
|
+
def medialib_entry_property_set(id, key, value, *source)
|
|
99
|
+
end
|
|
100
|
+
def medialib_entry_property_remove(id, key, *source)
|
|
101
|
+
end
|
|
102
|
+
def medialib_entry_remove(id)
|
|
103
|
+
end
|
|
104
|
+
def medialib_path_import(path)
|
|
105
|
+
end
|
|
106
|
+
def medialib_rehash(id)
|
|
107
|
+
end
|
|
108
|
+
def xform_media_browse(url)
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
# list plugins
|
|
112
|
+
def plugin_list
|
|
113
|
+
end
|
|
114
|
+
# get info about deamon
|
|
115
|
+
def main_stats
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
# list config values of deamon
|
|
119
|
+
def configval_list
|
|
120
|
+
end
|
|
121
|
+
# get a config value
|
|
122
|
+
def configval_get(key)
|
|
123
|
+
end
|
|
124
|
+
# change a config value
|
|
125
|
+
def configval_set(key, value)
|
|
126
|
+
end
|
|
127
|
+
# create a new config value
|
|
128
|
+
def configval_register(key, default_value)
|
|
129
|
+
end
|
|
130
|
+
def bindata_add(str)
|
|
131
|
+
end
|
|
132
|
+
def bindata_retrieve(hash)
|
|
133
|
+
end
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
class Playlist
|
|
137
|
+
# create a new playlist with client xc
|
|
138
|
+
def self.new
|
|
139
|
+
end
|
|
140
|
+
# get name of playlist
|
|
141
|
+
def name
|
|
142
|
+
end
|
|
143
|
+
# get position of current song
|
|
144
|
+
def current_pos
|
|
145
|
+
end
|
|
146
|
+
# return ids of playlist
|
|
147
|
+
def entries
|
|
148
|
+
end
|
|
149
|
+
# add an id
|
|
150
|
+
def add_entry(arg)
|
|
151
|
+
end
|
|
152
|
+
# recursivley add a path
|
|
153
|
+
def radd(path)
|
|
154
|
+
end
|
|
155
|
+
# insert an entry at pos
|
|
156
|
+
def insert_entry(pos, arg)
|
|
157
|
+
end
|
|
158
|
+
# remove an entry at pos
|
|
159
|
+
def remove_entry(pos)
|
|
160
|
+
end
|
|
161
|
+
# move a entry
|
|
162
|
+
def playlist_move_entry(current_pos, new_pos)
|
|
163
|
+
end
|
|
164
|
+
# shuffle the list
|
|
165
|
+
def shuffle
|
|
166
|
+
end
|
|
167
|
+
# clear the list
|
|
168
|
+
def clear
|
|
169
|
+
end
|
|
170
|
+
# sort using the array of fields
|
|
171
|
+
def sort(properties)
|
|
172
|
+
end
|
|
173
|
+
# load a playlist
|
|
174
|
+
def load
|
|
175
|
+
end
|
|
176
|
+
# remove intreas
|
|
177
|
+
def remove
|
|
178
|
+
end
|
|
179
|
+
# add a collection to playlist
|
|
180
|
+
def add_collection(coll , order)
|
|
181
|
+
end
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
class Collection
|
|
186
|
+
def self.new(type)
|
|
187
|
+
end
|
|
188
|
+
# return the whole mlib
|
|
189
|
+
def self.universe
|
|
190
|
+
end
|
|
191
|
+
def typ
|
|
192
|
+
end
|
|
193
|
+
def operand
|
|
194
|
+
end
|
|
195
|
+
# idlist of collection
|
|
196
|
+
def idlis
|
|
197
|
+
end
|
|
198
|
+
# set idlist of collection
|
|
199
|
+
def idlist=(ids)
|
|
200
|
+
end
|
|
201
|
+
def attribute
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
# create a new Collection unifieing self and other
|
|
205
|
+
def union(other)
|
|
206
|
+
end
|
|
207
|
+
# create a new Collection intersecting self and other
|
|
208
|
+
def intersect(other)
|
|
209
|
+
end
|
|
210
|
+
# create a new Collection, the complement of the current
|
|
211
|
+
def complement
|
|
212
|
+
end
|
|
213
|
+
# same as union
|
|
214
|
+
def or(other)
|
|
215
|
+
end
|
|
216
|
+
# same as intersect
|
|
217
|
+
def and(other)
|
|
218
|
+
end
|
|
219
|
+
# same as complement
|
|
220
|
+
def not
|
|
221
|
+
end
|
|
222
|
+
# same as union
|
|
223
|
+
def |(other)
|
|
224
|
+
end
|
|
225
|
+
# same as intersect
|
|
226
|
+
def &(other)
|
|
227
|
+
end
|
|
228
|
+
# same as complement
|
|
229
|
+
def ~
|
|
230
|
+
end
|
|
231
|
+
|
|
232
|
+
# attributes for a collection
|
|
233
|
+
class Attributes
|
|
234
|
+
end
|
|
235
|
+
# opperands, ig other Collections for an Collection
|
|
236
|
+
class Operands
|
|
237
|
+
end
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
# message form the xmms deamon
|
|
241
|
+
class Result
|
|
242
|
+
end
|
|
243
|
+
end if nil
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
--- !ruby/object:RI::ClassDescription
|
|
2
|
+
attributes: []
|
|
3
|
+
|
|
4
|
+
class_methods: []
|
|
5
|
+
|
|
6
|
+
comment:
|
|
7
|
+
constants: []
|
|
8
|
+
|
|
9
|
+
full_name: Array
|
|
10
|
+
includes:
|
|
11
|
+
- !ruby/object:RI::IncludedModule
|
|
12
|
+
name: Format
|
|
13
|
+
instance_methods:
|
|
14
|
+
- !ruby/object:RI::MethodSummary
|
|
15
|
+
name: format
|
|
16
|
+
- !ruby/object:RI::MethodSummary
|
|
17
|
+
name: inspect
|
|
18
|
+
- !ruby/object:RI::MethodSummary
|
|
19
|
+
name: to_s
|
|
20
|
+
name: Array
|
|
21
|
+
superclass: Object
|