রিদম্বক্স অজগর কনসোল কীভাবে ব্যবহার করবেন


13

হতে পারে এটি সুস্পষ্ট এবং আমি এটি মিস করছি, অথবা হতে পারে যে কেউ ইতিমধ্যে একটি দুর্দান্ত গাইড লিখেছেন এবং আমার (প্রযোজনীয় বিস্ময়কর) গুগলিং এটি চালু করতে ব্যর্থ হচ্ছে, তবে কীভাবে ডার্ক পাইথন কনসোলটি পাব তা আমার জীবন নির্ধারণ করতে পারি না cannot rhythmbox করতে না কিছু!

আমি এটি প্লাগইন মেনু থেকে সক্ষম করেছি এবং তারপরে এটি সরঞ্জাম-> পাইথন কনসোল ব্যবহার করে খুলি open

এটি মুদ্রণ

You can access the main window through the 'shell' variable :
<rb.Shell object at 0xa6cdd24 (RBShell at 0xa14e000)>
>>> 

তবে প্রম্পটে আমি টাইপ করে যা কিছু হয় না ! আমি চেষ্টা করেছি, চেষ্টা helpকরেছি, চেষ্টা exit()করেছি print "hello world", কিছুই করে না!

এই সমস্ত জিনিস স্বাভাবিক পাইথন কনসোলে অবশ্যই কাজ করে। এখানে শয়তান কী পার্থক্য তা আমার কোনও ধারণা নেই! আমার কি হিট এন্ট্রি ছাড়া অন্য কিছু করার কথা?


আমি টার্মিনাল থেকে কেবল "রিদম্বক্স-ক্লায়েন্ট -h" জানতাম। এই প্লাগইনটি সম্পর্কে সচেতন করার জন্য +1।
রোজন

উত্তর:


8

Rhythmbox প্লাগইন লিখন গাইড কমান্ড আপনি নিয়ন্ত্রণ প্লেব্যাক করার পাইথন কনসোলে ব্যবহার এবং Rhythmbox পরিবর্তন করতে পারেন বিভিন্ন উদাহরণ রয়েছে:

  • খেলার বিরতি

    shell.props.shell_player.playpause()
  • স্টপ

    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")
    colour = gst.element_factory_make ("ffmpegcolorspace")
    b = gst.Bin()
    b.add (goom, colour, sink)
    b.add_pad(gst.GhostPad("sink", goom.get_pad("sink")))
    goom.link(colour)
    colour.link(sink)
    shell.get_player().props.player.add_tee(b)

এটি সহায়ক, এবং আসলে আমি এটি আগে খুঁজে পেয়েছি, তবে আমি যা খুঁজছি তা হল আসলে কীভাবে কনসোলটি ব্যবহার করতে হয়। এটি কি নিয়মিত পাইথন কনসোলের মতো; একটি কমান্ড টাইপ করুন এবং এন্টার চাপুন? যদি তাই হয়, তবে আমার নষ্ট হয়ে গেছে। আমি যখন একটি কমান্ড টাইপ করি এবং এন্টার টিপুন, কোডের লাইনটি কার্যকর না করে এটি একটি নতুন লাইন তৈরি করে। যতক্ষণ আমি জানি এটি ভেঙে গেছে ততক্ষণ আমি এটিকে সংশোধন করতে সহায়তা চাইতে পারি; আমি কেবল এটি নিশ্চিত করতে চেয়েছিলাম যে আমি বোবা কিছু করছি না (এবং এটির কোনও নথিভুক্ত ব্যবহার খুঁজে পাইনি!)
টিজে এলিস

যে সত্যিই শব্দ কিছু ভাঙ্গা আছে। অন্য কোনও প্লাগইন সক্ষম না করে রিদম্বক্স -১.০২.৮-২ubuntu7 এ কনসোলটি নিয়মিত পাইথন কনসোলের মতো কাজ করে, যেমন টাইপ করুন print "hello world"এবং তারপরে এন্টার টিপুন। আমি এখনও অন্য কোথাও এই সমস্যাটির প্রতিবেদন দেখতে পাচ্ছি না, তাই আপনি রিদম্বক্স বাগ ট্র্যাকারে একটি নতুন বাগ খোলার বিষয়টি বিবেচনা করতে পারেন ।
ündrük

1
ধন্যবাদ! এখন যেহেতু আমি জানি এটি ভেঙে গেছে, আমি আরও কিছুটা ঘুরে দেখব এবং একটি বাগ রিপোর্ট ফাইল করব।
টিজে এলিস

নোট করুন যে কমপক্ষে উবুন্টু ট্রাস্টি হিসাবে 14.04, রিদম্বক্সটি অজগরকে 3.4.0 এ এম্বেড করে। সুতরাং 'প্রিন্ট "হ্যালো ওয়ার্ল্ড" কমান্ডটি একটি সিনট্যাক্স ত্রুটি;) পরিবর্তে, নতুন পাইথন 3 মুদ্রণ ফাংশনটি ব্যবহার করুন:' মুদ্রণ ("হ্যালো ওয়ার্ল্ড") '
নিউম্যাকবি

মনে রাখবেন যে এর মধ্যে কয়েকটি উদাহরণ এখন আর ট্রাস্টিতে কাজ করে না। এখানে শেল.এডিডি_টো_কিউ () এর পরিবর্তে কী করতে হবে তার কয়েকটি ইঙ্গিতগুলি দেখুন - যদিও এটি আরও জটিল দেখাচ্ছে, দুর্ভাগ্যক্রমে:
mail.gnome.org/archives/rhythmbox-devel/2011-

6

যে কোনও পাইথন অবজেক্টের মতো, আপনি এটির উপর dir () পদ্ধতি ব্যবহার করে এটি সম্পর্কে অনেক কিছু জানতে পারেন। এটি আপনাকে শুরু করার জন্য একটি ভাল জায়গা দেবে।

You can access the main window through the 'shell' variable :
<rb.Shell object at 0x9e9675c (RBShell at 0x987b018)>
>>> 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__',
'__subclasshook__', 'add_to_queue', 'add_uri', 'add_widget', 'append_source',
'chain', 'connect', '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_source', 'remove_from_queue', 'remove_widget',
'set_data', 'set_properties', 'set_property', 'stop_emission', 'thaw_notify',
'toggle_visibility', 'weak_ref']

তারপরে আপনি সম্ভবত 'get_player' এর মতো আকর্ষণীয়-বৈশিষ্ট্যযুক্ত কোনও বৈশিষ্ট্য, সজ্জা করতে পারেন।

দেখার জন্য আরেকটি ভাল জায়গা হ'ল যদি আপনি অবজেক্টে একটি __ ডক__ বৈশিষ্ট্য দেখেন।

>>> print rb.Shell.__doc__
Object RBShell

Signals from RBShell:
  visibility-changed (gboolean)
  visibility-changing (gboolean, gboolean) -> gboolean
  create-song-info (RBSongInfo, gboolean)
  removable-media-scan-finished ()
  notify-playing-entry (gboolean)
  notify-custom (guint, gchararray, gchararray, GdkPixbuf, gboolean)

Properties from RBShell:
  no-registration -> gboolean: no-registration
    Whether or not to register
  no-update -> gboolean: no-update
    Whether or not to update the library
  dry-run -> gboolean: dry-run
    Whether or not this is a dry run
  rhythmdb-file -> gchararray: rhythmdb-file
    The RhythmDB file to use
  playlists-file -> gchararray: playlists-file
    The playlists file to use
  selected-source -> RBSource: selected-source
    Source which is currently selected
  db -> RhythmDB: RhythmDB
    RhythmDB object
  ui-manager -> GtkUIManager: GtkUIManager
    GtkUIManager object
  clipboard -> RBShellClipboard: RBShellClipboard
    RBShellClipboard object
  playlist-manager -> RBPlaylistManager: RBPlaylistManager
    RBPlaylistManager object
  removable-media-manager -> RBRemovableMediaManager: RBRemovableMediaManager
    RBRemovableMediaManager object
  shell-player -> RBShellPlayer: RBShellPlayer
    RBShellPlayer object
  window -> GtkWindow: GtkWindow
    GtkWindow object
  prefs -> RBShellPreferences: RBShellPreferences
    RBShellPreferences object
  queue-source -> RBPlayQueueSource: queue-source
    Queue source
  library-source -> RBLibrarySource: library-source
    Library source
  sourcelist-model -> RBSourceListModel: sourcelist-model
    RBSourcelistModel
  sourcelist -> RBSourceList: sourcelist
    RBSourcelist
  source-header -> RBSourceHeader: source header widget
    RBSourceHeader
  visibility -> gboolean: visibility
    Current window visibility

Signals from GObject:
  notify (GParam)

এটি সহজ, যদি আমি গুররাম কনসোলটি আদৌ কাজ করতে পারি! যেমনটি, যেমন আমি টাইপ করি, উদাহরণস্বরূপ, dir(rb.Shell)এবং এন্টার টিপুন, এটি কেবল একটি লাইন ব্রেক যোগ করে এবং কিছুই করে না ... আপনার শেলটি ওওবি কাজ করে? আমার উবুন্টু 10.04-এ ডিফল্ট রিদম্বক্স ইনস্টলস আছে .... আমি এমন কোনও কিছুই ভাবতে পারি না যা আমি পরিবর্তন করেছি যা শেলটি ভেঙে দেবে। আমার নিয়মিত পাইথন কনসোল (আরবি বাইরে) ঠিকঠাক কাজ করে ...
টিজে এলিস

এইচএম, হ্যাঁ, আমার শেল কোনও পরিবর্তন ছাড়াই সূক্ষ্মভাবে কাজ করে।
বিরক্তি

3

পবিত্র বাজে কথা, আমি সমস্যাটি কী হয়েছিল তা কেবল (2.5 বছর পরে) জানতে পেরেছি - কোন কারণে নিম্লক চালু বা বন্ধ রয়েছে তার উপর নির্ভর করে দুটি ভিন্ন কী ইভেন্টগুলিতে আমার "প্রবেশ" কী মানচিত্রগুলি রয়েছে। যখন নিমলক চালু থাকে, তখন এটি ফিরে আসে KP_ENTERএবং যখন নিমলক বন্ধ থাকে তখন ফিরে আসে Return। আমার সর্বদা নিমলক থাকে, কারণ আমি কীপ্যাডের সাথে সংখ্যাগুলি প্রবেশ করা পছন্দ করি।

দুর্ভাগ্যক্রমে, রিদম্বক্সে পাইথন কনসোলটি কেবল Returnএকটি কমান্ড চালানোর জন্য স্বীকৃতি দেয় — KP_ENTERইভেন্টটি কেবল একটি লাইন বিরতিতে প্রবেশ করে ...

তবে সহজ ফিক্স, কনসোলটি ব্যবহার করার সময় কেবল নিমলক বন্ধ করুন। আমি কয়েকটি অন্যান্য অ্যাপ্লিকেশনগুলিতে (সাধারণত গেমস) এই সমস্যার মধ্যে পড়েছি, তাই আমি আরও দীর্ঘমেয়াদী একটি সমাধান সমাধান করতে যাচ্ছি (সম্ভবত উভয়কে Returnকোনওভাবে মানচিত্রে বাধ্য করা ) ...


1
অন্য কারও যদি সমস্যা হয় তবে আমি একটি দীর্ঘমেয়াদী সমাধান খুঁজে পেয়েছি: xmodmap -pke > ~/.Xmodmap একটি কাস্টম বিন্যাস তৈরি করতে, তারপরে ফাইলটির শেষে একটি লাইন যুক্ত করুন এবং এই সেশনের জন্য নতুন কাস্টম বিন্যাস সক্ষম করতে keysym KP_Enter = Return চালান xmodmap ~/.Xmodmap। ভবিষ্যতের জন্য এটি অটোরান করতে, নিম্নলিখিতগুলিতে যুক্ত করুন ~/.xinitrc:if [ -f $HOME/.Xmodmap ]; then /usr/bin/xmodmap $HOME/.Xmodmap fi
টিজে এলিস

অভিশাপ মন্তব্য এবং তাদের লাইন ব্রেক অভাব! ifবিবৃতি যোগ করা .xinitrcচাহিদা পর লাইন ব্রেক আছে thenআগে fi
টিজে এলিস

আপনি returnনমলকের কীটির পরিবর্তে কীটি ব্যবহার করবেন না enter?
টিমো

আমি নামপ্যাডের একটি নয়, মূল "এন্টার" কী ব্যবহার করছিলাম; কিছু কারণে নামল অন / অফ থাকার কারণে এটির জন্যও একটি পার্থক্য রয়েছে।
টিজে এলিস

CentOS 6.7 তবে অ্যানাকোন্ডা অজগর দিয়ে, নম্বরপ্যাডে এন্টার কীটি মূল কীবোর্ডের এন্টার কী থেকে কিছুটা আলাদা প্রভাব ফেলেছিল। নুমলকের কোনও প্রভাব নেই। মূল কীবোর্ড এন্টারটি '>>>' প্রম্পটটি ফিরিয়ে আনবে, তবে নম্বরপ্যাড এন্টারটি একটি ফাঁকা লাইন ফিরে আসবে।
rjt
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.