From 4f5faeccaccc6d9189a91cf863d9da4ff5f77b2a Mon Sep 17 00:00:00 2001 From: Pedro Silva Date: Wed, 15 May 2013 13:41:54 +0100 Subject: [PATCH] Append plugin template fields to 'beet fields' output with -p, --plugins --- beets/ui/commands.py | 9 +++++++++ docs/reference/cli.rst | 4 +++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/beets/ui/commands.py b/beets/ui/commands.py index 0e1a3e298..75fdd5d23 100644 --- a/beets/ui/commands.py +++ b/beets/ui/commands.py @@ -91,11 +91,20 @@ def _showdiff(field, oldval, newval): fields_cmd = ui.Subcommand('fields', help='show fields available for queries and format strings') +fields_cmd.parser.add_option('-p', '--plugins', dest='plugins', + action='store_true', + help='show available plugin fields as well') + def fields_func(lib, opts, args): print("Available item fields:") print(" " + "\n ".join([key for key in library.ITEM_KEYS])) print("\nAvailable album fields:") print(" " + "\n ".join([key for key in library.ALBUM_KEYS])) + if opts.plugins: + print("\nAvailable plugin fields:") + for plugin in plugins.find_plugins(): + fields = plugin.template_fields.iteritems() + print(" " + "\n ".join([key for (key, value) in fields])) fields_cmd.func = fields_func default_commands.append(fields_cmd) diff --git a/docs/reference/cli.rst b/docs/reference/cli.rst index 575c92968..a5e0438ab 100644 --- a/docs/reference/cli.rst +++ b/docs/reference/cli.rst @@ -250,11 +250,13 @@ fields `````` :: - beet fields + beet fields [-p] Show the item and album metadata fields available for use in :doc:`query` and :doc:`pathformat`. +The ``-p`` (``--plugins``) option shows available plugin fields in +addition to the standard ones. Global Flags ------------