Как использовать консоль python Rhythmbox

Установка cifs-utils с помощью команды

sudo apt-get install cifs-utils

сделала трюк для меня. Существовала зависимость для файла «keyutils», который автоматически устанавливался одновременно. Я не устанавливал дополнительные smbnetfs, как предложил другой пользователь, поэтому этот файл может и не понадобиться.

13
задан 4 September 2010 в 18:42

33 ответа

Как и любой объект Python, вы можете узнать об этом много, используя метод dir (). Это даст вам хорошее место для начала.

  Вы можете получить доступ к главному окну через переменную 'shell': & lt; rb.Shell object в 0x9e9675c (RBShell at 0x987b018) & gt;  & GT; & GT; & GT;  dir (rb.Shell) ['__class__', '__cmp__', '__copy__', '__deepcopy__', '__delattr__', '__dict__', '__doc__', '__format__', '__gdoc__', '__getattribute__', '__gobject_init__'  , '__grefcount__', '__gtype__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '  «connect_after», «connect_object», «connect_object_after», «disconnect», «disconnect_by_func», «do_notify»,  , 'emit', 'emit_stop_by_name', 'freeze_notify', 'get_data', 'get_party_mode', 'get_player', 'get_playlist_manager', 'get_properties', 'get_property', 'get_source_by_entry_type', 'get_ui_manager', 'guess_source_for_uri', '  handler_block ',' handler_block_by_func ',' handler_disconnect ',' handler_is_connected ',' handler_unblock ',' handler_unblock_by_func ',' load_uri ',' notebook_set_page ',' notify ',' notify_custom ',' present ',' props ',' register_entry_type_for_sourc  e ',' remove_from_queue ',' remove_widget ',' set_data ',' set_properties ',' set_property ',' stop_emission ',' thaw_notify ',' toggle_visibility ',' weak_ref ']  

Вы можете затем использовать dir () любые интересные свойства, например «get_player».

Еще одно хорошее место для поиска - если вы видите атрибут __doc__ для объекта.

  & GT; & GT; & GT;  print rb.Shell .__ doc__ Объект RBShell Сигналы из RBShell: изменение видимости (gboolean) видимости (gboolean, gboolean) - & gt;  gboolean create-song-info (RBSongInfo, gboolean) removeable-media-scan-finished () notify-playing-entry (gboolean) notify-custom (guint, gchararray, gchararray, GdkPixbuf, gboolean) Свойства из RBShell: no-registration -  & GT;  gboolean: no-registration Зарегистрировать или не зарегистрировать no-update - & gt;  gboolean: no-update Независимо от того, обновлять ли библиотеку сухой режим - & gt;  gboolean: dry-run Независимо от того, является ли это файлом rhythmdb с сухим пробегом - & gt;  gchararray: rhythmdb-file Файл RhythmDB для использования плейлистов-файла - & gt;  gchararray: playlists-file Файл плейлистов для использования selected-source - & gt;  RBSource: выбранный источник Источник, который в настоящее время выбран db - & gt;  RhythmDB: RhythmDB RhythmDB объект ui-manager - & gt;  GtkUIManager: GtkUIManager Объектный буфер обмена GtkUIManager - & gt;  RBShellClipboard: RBShellClipboard RBShellClipboard object playlist-manager - & gt;  RBPlaylistManager: RBPlaylistManager RBPlaylistManager object removeable-media-manager - & gt;  RBRemovableMediaManager: RBRemovableMediaManager RBRemovableMediaManager object shell-player - & gt;  RBShellPlayer: Окно объекта RBShellPlayer RBShellPlayer - & gt;  GtkWindow: GtkWindow GtkWindow object prefs - & gt;  RBShellPreferences: RBShellPreferences RBShellPreferences object queue-source - & gt;  RBPlayQueueSource: источник-источник очереди источник-источник - & gt;  RBLibrarySource: библиотека-источник. Источник-источник источника источника - & gt;  RBSourceListModel: sourcelist-model RBSourcelistModel sourcelist - & gt;  RBSourceList: sourcelist RBSourcelist source-header - & gt;  RBSourceHeader: виджет заголовка заголовка RBSourceHeader visibility - & gt;  gboolean: видимость Текущая видимость окна Сигналы из GObject: notify (GParam)  
6
ответ дан 10 August 2018 в 10:51

Руководство по написанию плагинов Rhythmbox содержит несколько примеров команд, которые вы можете использовать в консоли Python для управления воспроизведением и модификацией Rhythmbox:

  • Play / Pause shell.props.shell_player.playpause ()
  • Stop shell.props.shell_player.stop ()
  • Следующий трек shell .props.shell_player.do_next ()
  • Добавить песню в очередь воспроизведения shell.add_to_queue ("file: //awsome_song.ogg")
  • Отобразить визуализацию import gst goom = gst.element_factory_make ("goom") sink = gst.element_factory_make ("ximagesink") color = gst.element_factory_make ("ffmpegcolorspace") b = gst.Bin () b .add (goom, color, sink) b.add_pad (gst.GhostPad ("sink", goom.get_pad ("sink"))) goom.link (цвет) colour.link (раковина) shell.get_player (). .player.add_tee (b)
8
ответ дан 13 August 2018 в 17:26
  • 1
    Это полезно, и на самом деле я нашел это ранее, однако то, что я ищу, - это то, как на самом деле использовать консоль. Это как обычная консоль python; введите команду и нажмите enter? Если это так, то моя нарушена. Когда я набираю команду и нажимаю enter, она просто делает новую строку, не выполняя строку кода. Пока я знаю, что это сломано, я могу найти помощь, чтобы исправить это; Я просто хотел удостовериться, что я не делал ничего глупого (и не мог найти никакого документального использования!) – TJ Ellis 4 September 2010 в 21:28
  • 2
    Это действительно звучит как что-то сломано. В rhythmbox-0.12.8-0ubuntu7 без включения других плагинов консоль работает точно так же, как обычная консоль Python, например. введите print & quot; hello world & quot; , а затем нажмите Enter. Я не вижу, чтобы эта проблема сообщалась где-нибудь еще, поэтому вы можете рассмотреть возможность открытия новой ошибки в трекере Rhythmbox . – ændrük 5 September 2010 в 00:30
  • 3
    Спасибо! теперь, когда я знаю, что это сломано, я буду больше окунуться и подать отчет об ошибке. – TJ Ellis 5 September 2010 в 16:43
  • 4
    Обратите внимание, что, по крайней мере, с Ubuntu Trusty tahr 14.04, rhythmbox включает в себя python 3.4.0. Итак, команда 'print & quot; hello world & quot;' является синтаксической ошибкой;) Вместо этого используйте новую функцию печати Python 3: «print (« hello world »)» – nealmcb 7 June 2014 в 01:16
  • 5
    Обратите внимание, что некоторые из этих примеров больше не работают в Trusty. См. Некоторые подсказки о том, что делать, а не shell.add_to_queue () здесь - хотя это выглядит намного сложнее, к сожалению: mail.gnome.org/archives/rhythmbox-devel/2011-April/… – nealmcb 1 March 2015 в 02:12

Как и любой объект Python, вы можете узнать об этом много, используя метод dir (). Это даст вам хорошее место для начала.

  Вы можете получить доступ к главному окну через переменную 'shell': & lt; rb.Shell object в 0x9e9675c (RBShell at 0x987b018) & gt;  & GT; & GT; & GT;  dir (rb.Shell) ['__class__', '__cmp__', '__copy__', '__deepcopy__', '__delattr__', '__dict__', '__doc__', '__format__', '__gdoc__', '__getattribute__', '__gobject_init__'  , '__grefcount__', '__gtype__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '  «connect_after», «connect_object», «connect_object_after», «disconnect», «disconnect_by_func», «do_notify»,  , 'emit', 'emit_stop_by_name', 'freeze_notify', 'get_data', 'get_party_mode', 'get_player', 'get_playlist_manager', 'get_properties', 'get_property', 'get_source_by_entry_type', 'get_ui_manager', 'guess_source_for_uri', '  handler_block ',' handler_block_by_func ',' handler_disconnect ',' handler_is_connected ',' handler_unblock ',' handler_unblock_by_func ',' load_uri ',' notebook_set_page ',' notify ',' notify_custom ',' present ',' props ',' register_entry_type_for_sourc  e ',' remove_from_queue ',' remove_widget ',' set_data ',' set_properties ',' set_property ',' stop_emission ',' thaw_notify ',' toggle_visibility ',' weak_ref ']  

Вы можете затем использовать dir () любые интересные свойства, например «get_player».

Еще одно хорошее место для поиска - если вы видите атрибут __doc__ для объекта.

  & GT; & GT; & GT;  print rb.Shell .__ doc__ Объект RBShell Сигналы из RBShell: изменение видимости (gboolean) видимости (gboolean, gboolean) - & gt;  gboolean create-song-info (RBSongInfo, gboolean) removeable-media-scan-finished () notify-playing-entry (gboolean) notify-custom (guint, gchararray, gchararray, GdkPixbuf, gboolean) Свойства из RBShell: no-registration -  & GT;  gboolean: no-registration Зарегистрировать или не зарегистрировать no-update - & gt;  gboolean: no-update Независимо от того, обновлять ли библиотеку сухой режим - & gt;  gboolean: dry-run Независимо от того, является ли это файлом rhythmdb с сухим пробегом - & gt;  gchararray: rhythmdb-file Файл RhythmDB для использования плейлистов-файла - & gt;  gchararray: playlists-file Файл плейлистов для использования selected-source - & gt;  RBSource: выбранный источник Источник, который в настоящее время выбран db - & gt;  RhythmDB: RhythmDB RhythmDB объект ui-manager - & gt;  GtkUIManager: GtkUIManager Объектный буфер обмена GtkUIManager - & gt;  RBShellClipboard: RBShellClipboard RBShellClipboard object playlist-manager - & gt;  RBPlaylistManager: RBPlaylistManager RBPlaylistManager object removeable-media-manager - & gt;  RBRemovableMediaManager: RBRemovableMediaManager RBRemovableMediaManager object shell-player - & gt;  RBShellPlayer: Окно объекта RBShellPlayer RBShellPlayer - & gt;  GtkWindow: GtkWindow GtkWindow object prefs - & gt;  RBShellPreferences: RBShellPreferences RBShellPreferences object queue-source - & gt;  RBPlayQueueSource: источник-источник очереди источник-источник - & gt;  RBLibrarySource: библиотека-источник. Источник-источник источника источника - & gt;  RBSourceListModel: sourcelist-model RBSourcelistModel sourcelist - & gt;  RBSourceList: sourcelist RBSourcelist source-header - & gt;  RBSourceHeader: виджет заголовка заголовка RBSourceHeader visibility - & gt;  gboolean: видимость Текущая видимость окна Сигналы из GObject: notify (GParam)  
6
ответ дан 13 August 2018 в 17:26
  • 1
    это удобно, если я могу заставить консоль gorram работать вообще! как бы то ни было, если я напечатаю, например, dir (rb.Shell) и нажмите enter, он просто добавляет разрыв строки и ничего не делает ... Работала ли ваша оболочка OOB? У меня установлена ​​установка rhythmbox по умолчанию на Ubuntu 10.04 .... Я не могу придумать ничего из того, что я изменил, что сломает оболочку. Моя обычная консоль python (за пределами rb) работает просто отлично ... – TJ Ellis 5 September 2010 в 00:32
  • 2
    Хм, да, моя оболочка отлично работает без изменений. – brousch 1 October 2010 в 00:24

Другие вопросы по тегам:

Похожие вопросы: