From 9f48338291e38b9f9da6727c59315f98e542f90d Mon Sep 17 00:00:00 2001
From: Peter Kessen
Date: Thu, 24 Nov 2016 19:04:42 +0100
Subject: [PATCH 1/2] Corrected docs for modify command
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
added short form ´mod´ and added switch ´-f´
---
docs/reference/cli.rst | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/docs/reference/cli.rst b/docs/reference/cli.rst
index b2683cd86..34e5f0471 100644
--- a/docs/reference/cli.rst
+++ b/docs/reference/cli.rst
@@ -227,7 +227,8 @@ modify
``````
::
- beet modify [-MWay] QUERY [FIELD=VALUE...] [FIELD!...]
+ beet modify [-MWay] [-f FORMAT] QUERY [FIELD=VALUE...] [FIELD!...]
+ beet mod [-MWay] [-f FORMAT] QUERY [FIELD=VALUE...] [FIELD!...]
Change the metadata for items or albums in the database.
From 488225d837984c4fa3b7e9134ff57949af200417 Mon Sep 17 00:00:00 2001
From: Peter Kessen
Date: Thu, 24 Nov 2016 19:41:31 +0100
Subject: [PATCH 2/2] Added documentation and FAQ for selective modify
---
docs/faq.rst | 55 ++++++++++++++++++++++++++++++++++++++++++
docs/reference/cli.rst | 7 ++++--
2 files changed, 60 insertions(+), 2 deletions(-)
diff --git a/docs/faq.rst b/docs/faq.rst
index e36b589bb..db1a00e59 100644
--- a/docs/faq.rst
+++ b/docs/faq.rst
@@ -225,6 +225,61 @@ If you've already moved your music *outside* of beets, you have a few options:
- Resort to manually modifying the SQLite database (not recommended).
+.. _modify-selected:
+
+…modify a couple of songs without difficult query?
+--------------------------------------------------
+
+If you want to modify some items in your library but do not want to spend much time
+on a query matching all but not more than those songs, you can create a simple query
+and select the items afterwards.
+
+Let's say you want to tag all your songs of the album "Conspiracy of One" with some
+self-defined field but you do not like the intro. With
+``beet modify -w mysongs=true Conspiracy of one`` will print::
+
+ Modifying 14 items.
+ The Offspring - Conspiracy of One - Intro
+ mysongs: true
+ The Offspring - Conspiracy of One - Come Out Swinging
+ mysongs: true
+ The Offspring - Conspiracy of One - Original Prankster
+ mysongs: true
+ The Offspring - Conspiracy of One - Want You Bad
+ mysongs: true
+ The Offspring - Conspiracy of One - Million Miles Away
+ mysongs: true
+ The Offspring - Conspiracy of One - Dammit, I Changed Again
+ mysongs: true
+ The Offspring - Conspiracy of One - Living \in Chaos
+ mysongs: true
+ The Offspring - Conspiracy of One - Special Delivery
+ mysongs: true
+ The Offspring - Conspiracy of One - One Fine Day
+ mysongs: true
+ The Offspring - Conspiracy of One - All Along
+ mysongs: true
+ The Offspring - Conspiracy of One - Denial, Revisited
+ mysongs: true
+ The Offspring - Conspiracy of One - Vultures
+ mysongs: true
+ The Offspring - Conspiracy of One - Conspiracy of One
+ mysongs: true
+ The Offspring - Conspiracy of One - Huck It
+ mysongs: true
+ Really modify, move and write tags? (Yes/no/select)
+
+If you hit ``s`` beet will ask you for each item in the list whether
+you want to apply changes::
+
+ The Offspring - Conspiracy of One - All Along
+ mysongs: true
+ Really modify, move and write tags? (yes/no)
+
+If you now say ``y`` to all items but for Intro you will modify all
+songs in the list but Intro.
+
+
Why does beets…
===============
diff --git a/docs/reference/cli.rst b/docs/reference/cli.rst
index 34e5f0471..f558deb8c 100644
--- a/docs/reference/cli.rst
+++ b/docs/reference/cli.rst
@@ -243,8 +243,11 @@ individual tracks. Items will automatically be moved around when necessary if
they're in your library directory, but you can disable that with ``-M``. Tags
will be written to the files according to the settings you have for imports,
but these can be overridden with ``-w`` (write tags, the default) and ``-W``
-(don't write tags). Finally, this command politely asks for your permission
-before making any changes, but you can skip that prompt with the ``-y`` switch.
+(don't write tags). Finally, this command politely prints a list of all
+affected items in the library and asks for your permission before making any
+changes. You can then select if you want to abort the change with n, confirm
+with y or you can select items to apply the changes with s (see
+:ref:`modify-selected`). But you can skip that prompt with the ``-y`` switch.
.. _move-cmd: