Difference between revisions of "Foobar2000:Commandline Guide"

From Hydrogenaudio Knowledgebase
Jump to: navigation, search
(More Advanced Help)
(12 intermediate revisions by 6 users not shown)
Line 1: Line 1:
==Verbage from "foobar2000.exe /?"==
+
{{fb2k}}
  
===Basic Help===
+
=== General information ===
 +
Some features of foobar2000 can be accessed through a simple command line interface.
  
Available switches:
+
Each command line parameter is either parsed as a command (starting with a slash), or as the name of a file/folder that the user wishes to open or add to a playlist (the behaviour depends on other command line switches and setting under "Preferences > [[Foobar2000:Preferences:Shell_Integration|Shell Integration]]"). Arguments containing spaces can be escaped using double quotes, e.g. »<tt>foobar2000.exe "01 First Track.mp3"</tt>« or »<tt>foobar2000.exe "/command:Play or pause"</tt>« or »<tt>foobar2000.exe /command:"Play or pause"</tt>«.
/add, /play, /pause, /playpause, /prev, /next, /rand, /stop, /exit, /show, /hide, /config
+
/command:<menu command>, /playlist_command: <context menu command>,
+
/playing_command:<context menu command>
+
  
===More Advanced Help===
+
The set of available command line commands can be extended using additional components.
  
'''Useage:'''
+
=== Basic commands ===
 +
This is what »<tt>foobar2000.exe /?</tt>« shows as of version 1.1 &ndash; most of the commands are self-explanatory:
 +
  Available switches:
 +
    /add <list-of-files> - appends the specified files to the current playlist instead of replacing the playlist content and playing them immediately
 +
    /immediate - bypasses the "please wait" dialog when adding files
 +
    /play, /pause, /playpause, /prev, /next, /rand, /stop - playback controls
 +
    /exit - exits foobar2000
 +
    /show, /hide - shows or hides the main foobar2000 window
 +
    /config - opens the Preferences dialog
 +
    /command:<menu command> - invokes the specified main menu command
 +
    /playlist_command:<context menu command> - invokes the specified context menu command on current playlist selection
 +
    /playing_command:<context menu command> - invokes the specified context menu command on currently played track
 +
    /context_command:<context menu command> <files> - invokes the specified context menu command on the specified files
  
/tag:help - displays this message
+
===== Clarifications =====
 +
'''<tt>/add</tt>'''<br>
 +
&nbsp;&nbsp;Changes the default behaviour of "opening" (replace active playlist and start playback) files and directories found on the command line.
  
/tag:<command1>[;<command2>;<command3>...] <file1> [<file2> <file3>...]
+
'''<tt>/immediate</tt>'''<br>
 +
&nbsp;&nbsp;&nbsp;&nbsp;foobar2000 always sorts incoming files using the pattern configured under "Preferences > [[Foobar2000:Preferences:Shell_Integration|Shell Integration]]". Because there is a possibility that more files belonging to the same batch will be passed to the program, adding the items really to a playlist is postponed until no new file is received for a short while, because only with the full set of incoming files they can be correctly sorted. Use this option to disable this behaviour for the currently added items.
  
 +
'''<tt>/command:<...></tt>''' and '''<tt>/xxx_command:<...></tt>'''<br>
 +
&nbsp;&nbsp;&nbsp;&nbsp;The command names can be derived e.g. from the "Preferences > [[Foobar2000:Preferences:General:Keyboard_Shortcuts|Keyboard Shortcuts]]" dialog: look in the sub-section ''[main]'' for main menu commands (e.g. <tt>/command:Console</tt>) or ''[context]'' for the other types (e.g. <tt>/playing_command:Properties</tt>). Use only the final command name; do not specify the name of the parent menu or any other part of the menu path/group. (Note: this limits the usage of these commands in some cases; look into the [[Foobar2000:Components_0.9/Run_Commands_(foo_runcmd)|foo_runcmd]] component if you need more functionality.)
  
'''Commands:'''
 
  
<NAME>=<VALUE>
+
=== Extensions ===
* Sets <NAME> field to <VALUE>, e.g. "/tag:title=test <file>".
+
Known components which provide additional command line functionality:
* You can erase particular field by specifying empty value, e.g. "/tag:comment= <file>".
+
* [[Foobar2000:Components/Masstagger_(foo_masstag)|Masstagger (foo_masstag)]] &ndash; <tt>/tag:xxx</tt> commands for tag modifications.
* You can also specify multiple values by separating them with \ character, e.g. "/tag:artist=name1\name2 <file>".
+
* [[Foobar2000:Components_0.9/Run_Commands_(foo_runcmd)|Run Commands (foo_runcmd)]] &ndash; Family of <tt>/runcmd=...</tt> commands for advanced execution of main/context menu commands.
  
AUTOTRACKNUMBER
 
* Sets TRACKNUMBER field of multiple files according to their order in commandline.
 
* E.g. "/tag:AUTOTRACKNUMBER <file1> <file2> <file3>" will assign TRACKNUMBER=1 to <file1>, 2 to <file2> and 3 to <file3>.
 
  
FORMAT:<FIELD>:<SPEC>
 
* Formats <FIELD> using <SPEC>; see title formatting manual for more info how to use it.
 
* E.g. "/tag:FORMAT:COMMENT:"%ARTIST% - %TITLE%" <file>".
 
  
GUESS:<PATTERN>:<SPEC>
+
[[Category:foobar2000 Guides|Commandline Guide]]
* Guesses field values using <PATTERN>, according to <SPEC>.
+
* To perform "guess values from filename" action, use "/tag:GUESS:<PATTERN>:%_FILENAME% <file>".
+
* E.g. "/tag:GUESS:"%TRACKNUMBER%. %TITLE%":%_FILENAME% <file>".
+
 
+
==Examples==
+
 
+
Please add
+

Revision as of 10:20, 24 October 2011

Foobar2000_Logo.png

General information

Some features of foobar2000 can be accessed through a simple command line interface.

Each command line parameter is either parsed as a command (starting with a slash), or as the name of a file/folder that the user wishes to open or add to a playlist (the behaviour depends on other command line switches and setting under "Preferences > Shell Integration"). Arguments containing spaces can be escaped using double quotes, e.g. »foobar2000.exe "01 First Track.mp3"« or »foobar2000.exe "/command:Play or pause"« or »foobar2000.exe /command:"Play or pause"«.

The set of available command line commands can be extended using additional components.

Basic commands

This is what »foobar2000.exe /?« shows as of version 1.1 – most of the commands are self-explanatory:

 Available switches:
   /add <list-of-files> - appends the specified files to the current playlist instead of replacing the playlist content and playing them immediately
   /immediate - bypasses the "please wait" dialog when adding files
   /play, /pause, /playpause, /prev, /next, /rand, /stop - playback controls
   /exit - exits foobar2000
   /show, /hide - shows or hides the main foobar2000 window
   /config - opens the Preferences dialog
   /command:<menu command> - invokes the specified main menu command
   /playlist_command:<context menu command> - invokes the specified context menu command on current playlist selection
   /playing_command:<context menu command> - invokes the specified context menu command on currently played track
   /context_command:<context menu command> <files> - invokes the specified context menu command on the specified files
Clarifications

/add
  Changes the default behaviour of "opening" (replace active playlist and start playback) files and directories found on the command line.

/immediate
    foobar2000 always sorts incoming files using the pattern configured under "Preferences > Shell Integration". Because there is a possibility that more files belonging to the same batch will be passed to the program, adding the items really to a playlist is postponed until no new file is received for a short while, because only with the full set of incoming files they can be correctly sorted. Use this option to disable this behaviour for the currently added items.

/command:<...> and /xxx_command:<...>
    The command names can be derived e.g. from the "Preferences > Keyboard Shortcuts" dialog: look in the sub-section [main] for main menu commands (e.g. /command:Console) or [context] for the other types (e.g. /playing_command:Properties). Use only the final command name; do not specify the name of the parent menu or any other part of the menu path/group. (Note: this limits the usage of these commands in some cases; look into the foo_runcmd component if you need more functionality.)


Extensions

Known components which provide additional command line functionality: