]> git.sesse.net Git - vlc/blobdiff - src/libvlc.h
* modules/gui/wxwindows/interface.cpp: do not use a checkbox control for the bookmark...
[vlc] / src / libvlc.h
index 906084c70139a1cab5be13c97dbd4f3dc4a67c8c..53c1336c6027c2bc812c6a74d48c6819641bb546 100644 (file)
@@ -86,16 +86,6 @@ static char *ppsz_language_text[] =
     "show all the available options, including those that most users should " \
     "never touch.")
 
-#define INTF_PATH_TEXT N_("Interface default search path")
-#define INTF_PATH_LONGTEXT N_( \
-    "This option allows you to set the default path that the interface will " \
-    "open when looking for a file.")
-
-#define PLUGIN_PATH_TEXT N_("Modules search path")
-#define PLUGIN_PATH_LONGTEXT N_( \
-    "This option allows you to specify an additional path for VLC to look " \
-    "for its modules.")
-
 #define AOUT_CAT_LONGTEXT N_( \
     "These options allow you to modify the behavior of the audio " \
     "subsystem, and to add audio filters which can be used for " \
@@ -325,6 +315,9 @@ static char *ppsz_align_descriptions[] =
 #define STOP_TIME_TEXT N_("Input stop time (seconds)")
 #define STOP_TIME_LONGTEXT N_("Input stop time (seconds)")
 
+#define INPUT_SLAVE_TEXT N_("Input slave (experimental)")
+#define INPUT_SLAVE_LONGTEXT N_("Input slave (experimental)")
+
 #define BOOKMARKS_TEXT N_("Bookmarks list for a stream")
 #define BOOKMARKS_LONGTEXT N_("You can specify a list of bookmarks for a stream in " \
     "the form \"{name=bookmark-name,time=optional-time-offset," \
@@ -550,6 +543,11 @@ static char *ppsz_align_descriptions[] =
     "When this is active, VLC will keep playing the current playlist item " \
     "over and over again.")
 
+#define PAS_TEXT N_("Play and stop")
+#define PAS_LONGTEXT N_( \
+    "Stop the playlist after each played playlistitem." \
+    "Does advance the playlistindex.")
+
 #define MISC_CAT_LONGTEXT N_( \
     "These options allow you to select default modules. Leave these " \
     "alone unless you really know what you are doing." )
@@ -581,10 +579,24 @@ static char *ppsz_align_descriptions[] =
     "priorities. You can use it to tune VLC priority against other " \
     "programs, or against other VLC instances.")
 
-#define MINIMIZE_THREADS_TXT N_("Minimize number of threads")
-#define MINIMIZE_THREADS_LONGTXT N_( \
+#define MINIMIZE_THREADS_TEXT N_("Minimize number of threads")
+#define MINIMIZE_THREADS_LONGTEXT N_( \
      "This option minimizes the number of threads needed to run VLC")
 
+#define PLUGIN_PATH_TEXT N_("Modules search path")
+#define PLUGIN_PATH_LONGTEXT N_( \
+    "This option allows you to specify an additional path for VLC to look " \
+    "for its modules.")
+
+#define PLUGINS_CACHE_TEXT N_("Use a plugins cache")
+#define PLUGINS_CACHE_LONGTEXT N_( \
+    "This option allows you to use a plugins cache which will greatly " \
+    "improve the start time of VLC.")
+
+#define DAEMON_TEXT N_("Run as daemon process")
+#define DAEMON_LONGTEXT N_( \
+     "Runs VLC as a background daemon process.")
+
 #define ONEINSTANCE_TEXT N_("Allow only one running instance")
 #define ONEINSTANCE_LONGTEXT N_( \
     "Allowing only one running instance of VLC can sometimes be useful, " \
@@ -710,18 +722,26 @@ static char *ppsz_align_descriptions[] =
 #define HISTORY_FORWARD_TEXT N_("Go forward in browsing history")
 #define HISTORY_FORWARD_LONGTEXT N_("Select the key to go forward (to the next media item) in the browsing history.")
 
-#define PLAYLIST_USAGE N_("\nPlaylist items:" \
-    "\n  *.mpg, *.vob                   plain MPEG-1/2 files" \
-    "\n  [dvd://][device][@raw_device][@[title][,[chapter][,angle]]]" \
-    "\n                                 DVD device" \
-    "\n  [vcd://][device][@{S|T|E|P}[number]]" \
-    "\n                                 VCD device" \
-    "\n  [cdda://][device][@[T][track-number]]" \
-    "\n                                 Audio CD device" \
-    "\n  udpstream:[[<source address>]@[<bind address>][:<bind port>]]" \
-    "\n                                 UDP stream sent by a streaming server" \
-    "\n  vlc:pause                      pause execution of " \
-    "playlist items" \
+#define AUDIO_TRACK_KEY_TEXT N_("Cycle audio track")
+#define AUDIO_TRACK_KEY_LONGTEXT N_("Cycle through the available audio tracks(languages)")
+#define SUBTITLE_TRACK_KEY_TEXT N_("Cycle subtitle track")
+#define SUBTITLE_TRACK_KEY_LONGTEXT N_("Cycle through the available subtitle tracks")
+
+#define PLAYLIST_USAGE N_( \
+    "\nPlaylist MRL syntax:" \
+    "\n  URL[@[title][:chapter][-[title][:chapter]]] [:option=value]" \
+    "\nURL syntax:" \
+    "\n  [file://]filename              plain media file" \
+    "\n  http://ip:port/file            HTTP URL" \
+    "\n  ftp://ip:port/file             FTP URL" \
+    "\n  mms://ip:port/file             MMS URL" \
+    "\n  screen://                      Screen capture" \
+    "\n  [dvd://][device][@raw_device]  DVD device" \
+    "\n  [vcd://][device]               VCD device" \
+    "\n  [cdda://][device]              Audio CD device" \
+    "\n  udp:[[<source address>]@[<bind address>][:<bind port>]]" \
+    "\n                                 UDP stream sent by a streaming server"\
+    "\n  vlc:pause                      pause execution of playlist items" \
     "\n  vlc:quit                       quit VLC" \
     "\n")
 
@@ -762,10 +782,6 @@ vlc_module_begin();
     add_bool( "color", 0, NULL, COLOR_TEXT, COLOR_LONGTEXT, VLC_TRUE );
     add_bool( "advanced", 0, NULL, ADVANCED_TEXT,
                             ADVANCED_LONGTEXT, VLC_FALSE );
-    add_directory( "search-path", NULL, NULL, INTF_PATH_TEXT,
-                            INTF_PATH_LONGTEXT, VLC_TRUE );
-    add_directory( "plugin-path", NULL, NULL,
-                PLUGIN_PATH_TEXT, PLUGIN_PATH_LONGTEXT, VLC_TRUE );
 
     /* Audio options */
     add_category_hint( N_("Audio"), AOUT_CAT_LONGTEXT , VLC_FALSE );
@@ -861,6 +877,9 @@ vlc_module_begin();
                  START_TIME_TEXT, START_TIME_LONGTEXT, VLC_TRUE );
     add_integer( "stop-time", 0, NULL,
                  STOP_TIME_TEXT, STOP_TIME_LONGTEXT, VLC_TRUE );
+    add_string( "input-slave", NULL, NULL,
+                 INPUT_SLAVE_TEXT, INPUT_SLAVE_LONGTEXT, VLC_TRUE );
+
     add_string( "bookmarks", NULL, NULL,
                  BOOKMARKS_TEXT, BOOKMARKS_LONGTEXT, VLC_TRUE );
 
@@ -947,138 +966,267 @@ vlc_module_begin();
         change_short('L');
     add_bool( "repeat", 0, NULL, REPEAT_TEXT, REPEAT_LONGTEXT, VLC_TRUE );
         change_short('R');
+    add_bool( "play-and-stop", 0, NULL, PAS_TEXT, PAS_LONGTEXT, VLC_TRUE );
 
     /* Misc options */
     add_category_hint( N_("Miscellaneous"), MISC_CAT_LONGTEXT, VLC_TRUE );
-    add_module( "memcpy", "memcpy", NULL, NULL, MEMCPY_TEXT, MEMCPY_LONGTEXT, VLC_TRUE );
-    add_module( "access", "access", NULL, NULL, ACCESS_TEXT, ACCESS_LONGTEXT, VLC_TRUE );
-    add_module( "demux", "demux", NULL, NULL, DEMUX_TEXT, DEMUX_LONGTEXT, VLC_TRUE );
-
-    add_bool( "minimize-threads", 0, NULL, MINIMIZE_THREADS_TXT, MINIMIZE_THREADS_LONGTXT, VLC_TRUE );
+    add_module( "memcpy", "memcpy", NULL, NULL, MEMCPY_TEXT,
+                MEMCPY_LONGTEXT, VLC_TRUE );
+    add_module( "access", "access", NULL, NULL, ACCESS_TEXT,
+                ACCESS_LONGTEXT, VLC_TRUE );
+    add_module( "demux", "demux", NULL, NULL, DEMUX_TEXT,
+                DEMUX_LONGTEXT, VLC_TRUE );
+    add_bool( "minimize-threads", 0, NULL, MINIMIZE_THREADS_TEXT,
+              MINIMIZE_THREADS_LONGTEXT, VLC_TRUE );
+    add_bool( "plugins-cache", 0, NULL, PLUGINS_CACHE_TEXT,
+              PLUGINS_CACHE_LONGTEXT, VLC_TRUE );
+    add_directory( "plugin-path", NULL, NULL, PLUGIN_PATH_TEXT,
+                   PLUGIN_PATH_LONGTEXT, VLC_TRUE );
+
+#if !defined(WIN32)
+    add_bool( "daemon", 0, NULL, DAEMON_TEXT, DAEMON_LONGTEXT, VLC_TRUE );
+        change_short('d');
+#endif
 
 #if !defined(SYS_DARWIN) && !defined(SYS_BEOS) && defined(PTHREAD_COND_T_IN_PTHREAD_H)
-    add_bool( "rt-priority", 0, NULL, RT_PRIORITY_TEXT, RT_PRIORITY_LONGTEXT, VLC_TRUE );
+    add_bool( "rt-priority", 0, NULL, RT_PRIORITY_TEXT,
+              RT_PRIORITY_LONGTEXT, VLC_TRUE );
 #endif
 
 #if !defined(SYS_BEOS) && defined(PTHREAD_COND_T_IN_PTHREAD_H)
-    add_integer( "rt-offset", 0, NULL, RT_OFFSET_TEXT, RT_OFFSET_LONGTEXT, VLC_TRUE );
+    add_integer( "rt-offset", 0, NULL, RT_OFFSET_TEXT,
+                 RT_OFFSET_LONGTEXT, VLC_TRUE );
 #endif
 
 #if defined(WIN32)
-    add_bool( "one-instance", 0, NULL, ONEINSTANCE_TEXT, ONEINSTANCE_LONGTEXT, VLC_TRUE );
-    add_bool( "high-priority", 0, NULL, HPRIORITY_TEXT, HPRIORITY_LONGTEXT, VLC_TRUE );
-    add_bool( "fast-mutex", 0, NULL, FAST_MUTEX_TEXT, FAST_MUTEX_LONGTEXT, VLC_TRUE );
-    add_integer( "win9x-cv-method", 1, NULL, WIN9X_CV_TEXT, WIN9X_CV_LONGTEXT, VLC_TRUE );
+    add_bool( "one-instance", 0, NULL, ONEINSTANCE_TEXT,
+              ONEINSTANCE_LONGTEXT, VLC_TRUE );
+    add_bool( "high-priority", 0, NULL, HPRIORITY_TEXT,
+              HPRIORITY_LONGTEXT, VLC_TRUE );
+    add_bool( "fast-mutex", 0, NULL, FAST_MUTEX_TEXT,
+              FAST_MUTEX_LONGTEXT, VLC_TRUE );
+    add_integer( "win9x-cv-method", 1, NULL, WIN9X_CV_TEXT,
+                  WIN9X_CV_LONGTEXT, VLC_TRUE );
 #endif
 
     /* Hotkey options*/
     add_category_hint( N_("Hot keys"), HOTKEY_CAT_LONGTEXT , VLC_FALSE );
+
 #if defined(SYS_DARWIN)
-    add_key( "key-fullscreen", KEY_MODIFIER_COMMAND|'f', NULL, FULLSCREEN_KEY_TEXT, FULLSCREEN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-play-pause", KEY_MODIFIER_COMMAND|'p', NULL, PLAY_PAUSE_KEY_TEXT, PLAY_PAUSE_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-pause", 0, NULL, PAUSE_KEY_TEXT, PAUSE_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play", 0, NULL, PLAY_KEY_TEXT, PLAY_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-faster", KEY_MODIFIER_COMMAND|'=', NULL, FASTER_KEY_TEXT, FASTER_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-slower", KEY_MODIFIER_COMMAND|'-', NULL, SLOWER_KEY_TEXT, SLOWER_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-next", KEY_MODIFIER_COMMAND|KEY_RIGHT, NULL, NEXT_KEY_TEXT, NEXT_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-prev", KEY_MODIFIER_COMMAND|KEY_LEFT, NULL, PREV_KEY_TEXT, PREV_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-stop", KEY_MODIFIER_COMMAND|'.', NULL, STOP_KEY_TEXT, STOP_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-position", 't', NULL, POSITION_KEY_TEXT, POSITION_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump-10sec", KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|KEY_LEFT, NULL, JB10SEC_KEY_TEXT, JB10SEC_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+10sec", KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|KEY_RIGHT, NULL, JF10SEC_KEY_TEXT, JF10SEC_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump-1min", KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_LEFT, NULL, JB1MIN_KEY_TEXT, JB1MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+1min", KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_RIGHT, NULL, JF1MIN_KEY_TEXT, JF1MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump-5min", KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_MODIFIER_ALT|KEY_LEFT, NULL, JB5MIN_KEY_TEXT, JB5MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+5min", KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_MODIFIER_ALT|KEY_RIGHT, NULL, JF5MIN_KEY_TEXT, JF5MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-activate", KEY_ENTER, NULL, NAV_ACTIVATE_KEY_TEXT, NAV_ACTIVATE_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-up", KEY_UP, NULL, NAV_UP_KEY_TEXT, NAV_UP_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-down", KEY_DOWN, NULL, NAV_DOWN_KEY_TEXT, NAV_DOWN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-left", KEY_LEFT, NULL, NAV_LEFT_KEY_TEXT, NAV_LEFT_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-right", KEY_RIGHT, NULL, NAV_RIGHT_KEY_TEXT, NAV_RIGHT_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-quit", KEY_MODIFIER_COMMAND|'q', NULL, QUIT_KEY_TEXT, QUIT_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-vol-up", KEY_MODIFIER_COMMAND|KEY_UP, NULL, VOL_UP_KEY_TEXT, VOL_UP_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-vol-down", KEY_MODIFIER_COMMAND|KEY_DOWN, NULL, VOL_DOWN_KEY_TEXT, VOL_DOWN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-vol-mute", KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|'m', NULL, VOL_MUTE_KEY_TEXT, VOL_MUTE_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-subdelay-up", KEY_MODIFIER_COMMAND|'j', NULL,
-             SUBDELAY_UP_KEY_TEXT, SUBDELAY_UP_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-subdelay-down", KEY_MODIFIER_COMMAND|'h', NULL,
-             SUBDELAY_DOWN_KEY_TEXT, SUBDELAY_DOWN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-set-bookmark1", KEY_MODIFIER_COMMAND|KEY_F1, NULL, SET_BOOKMARK1_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark2", KEY_MODIFIER_COMMAND|KEY_F2, NULL, SET_BOOKMARK2_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark3", KEY_MODIFIER_COMMAND|KEY_F3, NULL, SET_BOOKMARK3_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark4", KEY_MODIFIER_COMMAND|KEY_F4, NULL, SET_BOOKMARK4_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark5", KEY_MODIFIER_COMMAND|KEY_F5, NULL, SET_BOOKMARK5_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark6", KEY_MODIFIER_COMMAND|KEY_F6, NULL, SET_BOOKMARK6_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark7", KEY_MODIFIER_COMMAND|KEY_F7, NULL, SET_BOOKMARK7_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark8", KEY_MODIFIER_COMMAND|KEY_F8, NULL, SET_BOOKMARK8_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark9", KEY_UNSET, NULL, SET_BOOKMARK9_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark10", KEY_UNSET, NULL, SET_BOOKMARK10_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark1", KEY_F1, NULL, PLAY_BOOKMARK1_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark2", KEY_F2, NULL, PLAY_BOOKMARK2_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark3", KEY_F3, NULL, PLAY_BOOKMARK3_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark4", KEY_F4, NULL, PLAY_BOOKMARK4_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark5", KEY_F5, NULL, PLAY_BOOKMARK5_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark6", KEY_F6, NULL, PLAY_BOOKMARK6_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark7", KEY_F7, NULL, PLAY_BOOKMARK7_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark8", KEY_F8, NULL, PLAY_BOOKMARK8_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark9", KEY_UNSET, NULL, PLAY_BOOKMARK9_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark10", KEY_UNSET, NULL, PLAY_BOOKMARK10_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-history-back", KEY_MODIFIER_COMMAND|'[', NULL, HISTORY_BACK_TEXT, HISTORY_BACK_LONGTEXT, VLC_TRUE );
-    add_key( "key-history-forward", KEY_MODIFIER_COMMAND|']', NULL, HISTORY_FORWARD_TEXT, HISTORY_FORWARD_LONGTEXT, VLC_TRUE );
+#   define KEY_FULLSCREEN         KEY_MODIFIER_COMMAND|'f'
+#   define KEY_PLAY_PAUSE         KEY_MODIFIER_COMMAND|'p'
+#   define KEY_PAUSE              KEY_UNSET
+#   define KEY_PLAY               KEY_UNSET
+#   define KEY_FASTER             KEY_MODIFIER_COMMAND|'='
+#   define KEY_SLOWER             KEY_MODIFIER_COMMAND|'-'
+#   define KEY_NEXT               KEY_MODIFIER_COMMAND|KEY_RIGHT
+#   define KEY_PREV               KEY_MODIFIER_COMMAND|KEY_LEFT
+#   define KEY_STOP               KEY_MODIFIER_COMMAND|'.'
+#   define KEY_POSITION           't'
+#   define KEY_JUMP_M10SEC        KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|KEY_LEFT
+#   define KEY_JUMP_P10SEC        KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|KEY_RIGHT
+#   define KEY_JUMP_M1MIN         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_LEFT
+#   define KEY_JUMP_P1MIN         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_RIGHT
+#   define KEY_JUMP_M5MIN         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_MODIFIER_ALT|KEY_LEFT
+#   define KEY_JUMP_P5MIN         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_MODIFIER_ALT|KEY_RIGHT
+#   define KEY_NAV_ACTIVATE       KEY_ENTER
+#   define KEY_NAV_UP             KEY_UP
+#   define KEY_NAV_DOWN           KEY_DOWN
+#   define KEY_NAV_LEFT           KEY_LEFT
+#   define KEY_NAV_RIGHT          KEY_RIGHT
+#   define KEY_QUIT               KEY_MODIFIER_COMMAND|'q'
+#   define KEY_VOL_UP             KEY_MODIFIER_COMMAND|KEY_UP
+#   define KEY_VOL_DOWN           KEY_MODIFIER_COMMAND|KEY_DOWN
+#   define KEY_VOL_MUTE           KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|'m'
+#   define KEY_SUBDELAY_UP        KEY_MODIFIER_COMMAND|'k'
+#   define KEY_SUBDELAY_DOWN      KEY_MODIFIER_COMMAND|'j'
+#   define KEY_AUDIO_TRACK        'l'
+#   define KEY_SUBTITLE_TRACK     's'
+
+#   define KEY_SET_BOOKMARK1      KEY_MODIFIER_COMMAND|KEY_F1
+#   define KEY_SET_BOOKMARK2      KEY_MODIFIER_COMMAND|KEY_F2
+#   define KEY_SET_BOOKMARK3      KEY_MODIFIER_COMMAND|KEY_F3
+#   define KEY_SET_BOOKMARK4      KEY_MODIFIER_COMMAND|KEY_F4
+#   define KEY_SET_BOOKMARK5      KEY_MODIFIER_COMMAND|KEY_F5
+#   define KEY_SET_BOOKMARK6      KEY_MODIFIER_COMMAND|KEY_F6
+#   define KEY_SET_BOOKMARK7      KEY_MODIFIER_COMMAND|KEY_F7
+#   define KEY_SET_BOOKMARK8      KEY_MODIFIER_COMMAND|KEY_F8
+#   define KEY_SET_BOOKMARK9      KEY_UNSET
+#   define KEY_SET_BOOKMARK10     KEY_UNSET
+#   define KEY_PLAY_BOOKMARK1     KEY_F1
+#   define KEY_PLAY_BOOKMARK2     KEY_F2
+#   define KEY_PLAY_BOOKMARK3     KEY_F3
+#   define KEY_PLAY_BOOKMARK4     KEY_F4
+#   define KEY_PLAY_BOOKMARK5     KEY_F5
+#   define KEY_PLAY_BOOKMARK6     KEY_F6
+#   define KEY_PLAY_BOOKMARK7     KEY_F7
+#   define KEY_PLAY_BOOKMARK8     KEY_F8
+#   define KEY_PLAY_BOOKMARK9     KEY_UNSET
+#   define KEY_PLAY_BOOKMARK10    KEY_UNSET
+#   define KEY_HISTORY_BACK       KEY_MODIFIER_COMMAND|'['
+#   define KEY_HISTORY_FORWARD    KEY_MODIFIER_COMMAND|']'
+
 #else
-    add_key( "key-fullscreen", 'f', NULL, FULLSCREEN_KEY_TEXT, FULLSCREEN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-play-pause", KEY_SPACE, NULL, PLAY_PAUSE_KEY_TEXT, PLAY_PAUSE_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-pause", 0, NULL, PAUSE_KEY_TEXT, PAUSE_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play", 0, NULL, PLAY_KEY_TEXT, PLAY_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-faster", '+', NULL, FASTER_KEY_TEXT, FASTER_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-slower", '-', NULL, SLOWER_KEY_TEXT, SLOWER_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-next", 'n', NULL, NEXT_KEY_TEXT, NEXT_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-prev", 'p', NULL, PREV_KEY_TEXT, PREV_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-stop", 's', NULL, STOP_KEY_TEXT, STOP_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-position", 't', NULL, POSITION_KEY_TEXT, POSITION_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump-10sec", KEY_MODIFIER_ALT|KEY_LEFT, NULL, JB10SEC_KEY_TEXT, JB10SEC_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+10sec", KEY_MODIFIER_ALT|KEY_RIGHT, NULL, JF10SEC_KEY_TEXT, JF10SEC_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump-1min", KEY_MODIFIER_CTRL|KEY_LEFT, NULL, JB1MIN_KEY_TEXT, JB1MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+1min", KEY_MODIFIER_CTRL|KEY_RIGHT, NULL, JF1MIN_KEY_TEXT, JF1MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump-5min", KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|KEY_LEFT, NULL, JB5MIN_KEY_TEXT, JB5MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+5min", KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|KEY_RIGHT, NULL, JF5MIN_KEY_TEXT, JF5MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-activate", KEY_ENTER, NULL, NAV_ACTIVATE_KEY_TEXT, NAV_ACTIVATE_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-up", KEY_UP, NULL, NAV_UP_KEY_TEXT, NAV_UP_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-down", KEY_DOWN, NULL, NAV_DOWN_KEY_TEXT, NAV_DOWN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-left", KEY_LEFT, NULL, NAV_LEFT_KEY_TEXT, NAV_LEFT_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-nav-right", KEY_RIGHT, NULL, NAV_RIGHT_KEY_TEXT, NAV_RIGHT_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-quit", KEY_MODIFIER_CTRL|'q', NULL, QUIT_KEY_TEXT, QUIT_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-vol-up", 'a', NULL, VOL_UP_KEY_TEXT, VOL_UP_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-vol-down", 'z', NULL, VOL_DOWN_KEY_TEXT, VOL_DOWN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-vol-mute", 'm', NULL, VOL_MUTE_KEY_TEXT, VOL_MUTE_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-subdelay-up", KEY_MODIFIER_COMMAND|'h', NULL,
-             SUBDELAY_UP_KEY_TEXT, SUBDELAY_UP_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-subdelay-down", KEY_MODIFIER_COMMAND|'j', NULL,
-             SUBDELAY_DOWN_KEY_TEXT, SUBDELAY_DOWN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-set-bookmark1", KEY_MODIFIER_CTRL|KEY_F1, NULL, SET_BOOKMARK1_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark2", KEY_MODIFIER_CTRL|KEY_F2, NULL, SET_BOOKMARK2_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark3", KEY_MODIFIER_CTRL|KEY_F3, NULL, SET_BOOKMARK3_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark4", KEY_MODIFIER_CTRL|KEY_F4, NULL, SET_BOOKMARK4_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark5", KEY_MODIFIER_CTRL|KEY_F5, NULL, SET_BOOKMARK5_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark6", KEY_MODIFIER_CTRL|KEY_F6, NULL, SET_BOOKMARK6_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark7", KEY_MODIFIER_CTRL|KEY_F7, NULL, SET_BOOKMARK7_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark8", KEY_MODIFIER_CTRL|KEY_F8, NULL, SET_BOOKMARK8_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark9", KEY_MODIFIER_CTRL|KEY_F9, NULL, SET_BOOKMARK9_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-set-bookmark10", KEY_MODIFIER_CTRL|KEY_F10, NULL, SET_BOOKMARK10_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark1", KEY_F1, NULL, PLAY_BOOKMARK1_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark2", KEY_F2, NULL, PLAY_BOOKMARK2_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark3", KEY_F3, NULL, PLAY_BOOKMARK3_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark4", KEY_F4, NULL, PLAY_BOOKMARK4_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark5", KEY_F5, NULL, PLAY_BOOKMARK5_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark6", KEY_F6, NULL, PLAY_BOOKMARK6_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark7", KEY_F7, NULL, PLAY_BOOKMARK7_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark8", KEY_F8, NULL, PLAY_BOOKMARK8_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark9", KEY_F9, NULL, PLAY_BOOKMARK9_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-play-bookmark10", KEY_F10, NULL, PLAY_BOOKMARK10_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-history-back", KEY_MODIFIER_CTRL|'[', NULL, HISTORY_BACK_TEXT, HISTORY_BACK_LONGTEXT, VLC_TRUE );
-    add_key( "key-history-forward", KEY_MODIFIER_CTRL|']', NULL, HISTORY_FORWARD_TEXT, HISTORY_FORWARD_LONGTEXT, VLC_TRUE );
+#   define KEY_FULLSCREEN         'f'
+#   define KEY_PLAY_PAUSE         KEY_SPACE
+#   define KEY_PAUSE              KEY_UNSET
+#   define KEY_PLAY               KEY_UNSET
+#   define KEY_FASTER             '+'
+#   define KEY_SLOWER             '-'
+#   define KEY_NEXT               'n'
+#   define KEY_PREV               'p'
+#   define KEY_STOP               's'
+#   define KEY_POSITION           't'
+#   define KEY_JUMP_M10SEC        KEY_MODIFIER_ALT|KEY_LEFT
+#   define KEY_JUMP_P10SEC        KEY_MODIFIER_ALT|KEY_RIGHT
+#   define KEY_JUMP_M1MIN         KEY_MODIFIER_CTRL|KEY_LEFT
+#   define KEY_JUMP_P1MIN         KEY_MODIFIER_CTRL|KEY_RIGHT
+#   define KEY_JUMP_M5MIN         KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|KEY_LEFT
+#   define KEY_JUMP_P5MIN         KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|KEY_RIGHT
+#   define KEY_NAV_ACTIVATE       KEY_ENTER
+#   define KEY_NAV_UP             KEY_UP
+#   define KEY_NAV_DOWN           KEY_DOWN
+#   define KEY_NAV_LEFT           KEY_LEFT
+#   define KEY_NAV_RIGHT          KEY_RIGHT
+#   define KEY_QUIT               KEY_MODIFIER_CTRL|'q'
+#   define KEY_VOL_UP             KEY_MODIFIER_CTRL|KEY_UP
+#   define KEY_VOL_DOWN           KEY_MODIFIER_CTRL|KEY_DOWN
+#   define KEY_VOL_MUTE           'm'
+#   define KEY_SUBDELAY_UP        KEY_MODIFIER_COMMAND|'h'
+#   define KEY_SUBDELAY_DOWN      KEY_MODIFIER_COMMAND|'j'
+#   define KEY_AUDIO_TRACK        'l'
+#   define KEY_SUBTITLE_TRACK     'k'
+
+#   define KEY_SET_BOOKMARK1      KEY_MODIFIER_CTRL|KEY_F1
+#   define KEY_SET_BOOKMARK2      KEY_MODIFIER_CTRL|KEY_F2
+#   define KEY_SET_BOOKMARK3      KEY_MODIFIER_CTRL|KEY_F3
+#   define KEY_SET_BOOKMARK4      KEY_MODIFIER_CTRL|KEY_F4
+#   define KEY_SET_BOOKMARK5      KEY_MODIFIER_CTRL|KEY_F5
+#   define KEY_SET_BOOKMARK6      KEY_MODIFIER_CTRL|KEY_F6
+#   define KEY_SET_BOOKMARK7      KEY_MODIFIER_CTRL|KEY_F7
+#   define KEY_SET_BOOKMARK8      KEY_MODIFIER_CTRL|KEY_F8
+#   define KEY_SET_BOOKMARK9      KEY_MODIFIER_CTRL|KEY_F9
+#   define KEY_SET_BOOKMARK10     KEY_MODIFIER_CTRL|KEY_F10
+#   define KEY_PLAY_BOOKMARK1     KEY_F1
+#   define KEY_PLAY_BOOKMARK2     KEY_F2
+#   define KEY_PLAY_BOOKMARK3     KEY_F3
+#   define KEY_PLAY_BOOKMARK4     KEY_F4
+#   define KEY_PLAY_BOOKMARK5     KEY_F5
+#   define KEY_PLAY_BOOKMARK6     KEY_F6
+#   define KEY_PLAY_BOOKMARK7     KEY_F7
+#   define KEY_PLAY_BOOKMARK8     KEY_F8
+#   define KEY_PLAY_BOOKMARK9     KEY_F9
+#   define KEY_PLAY_BOOKMARK10    KEY_F10
+#   define KEY_HISTORY_BACK       KEY_MODIFIER_CTRL|'['
+#   define KEY_HISTORY_FORWARD    KEY_MODIFIER_CTRL|']'
 #endif
 
+    add_key( "key-fullscreen", KEY_FULLSCREEN, NULL, FULLSCREEN_KEY_TEXT,
+             FULLSCREEN_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-play-pause", KEY_PLAY_PAUSE, NULL, PLAY_PAUSE_KEY_TEXT,
+             PLAY_PAUSE_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-pause", KEY_PAUSE, NULL, PAUSE_KEY_TEXT,
+             PAUSE_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play", KEY_PLAY, NULL, PLAY_KEY_TEXT,
+             PLAY_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-faster", KEY_FASTER, NULL, FASTER_KEY_TEXT,
+             FASTER_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-slower", KEY_SLOWER, NULL, SLOWER_KEY_TEXT,
+             SLOWER_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-next", KEY_NEXT, NULL, NEXT_KEY_TEXT,
+             NEXT_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-prev", KEY_PREV, NULL, PREV_KEY_TEXT,
+             PREV_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-stop", KEY_STOP, NULL, STOP_KEY_TEXT,
+             STOP_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-position", KEY_POSITION, NULL, POSITION_KEY_TEXT,
+             POSITION_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-jump-10sec", KEY_JUMP_M10SEC, NULL, JB10SEC_KEY_TEXT,
+             JB10SEC_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump+10sec", KEY_JUMP_P10SEC, NULL, JF10SEC_KEY_TEXT,
+             JF10SEC_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump-1min", KEY_JUMP_M1MIN, NULL, JB1MIN_KEY_TEXT,
+             JB1MIN_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump+1min", KEY_JUMP_P1MIN, NULL, JF1MIN_KEY_TEXT,
+             JF1MIN_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump-5min", KEY_JUMP_M5MIN, NULL, JB5MIN_KEY_TEXT,
+             JB5MIN_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump+5min", KEY_JUMP_P5MIN, NULL, JF5MIN_KEY_TEXT,
+             JF5MIN_KEY_LONGTEXT, VLC_FALSE );
+
+    add_key( "key-nav-activate", KEY_NAV_ACTIVATE, NULL, NAV_ACTIVATE_KEY_TEXT,
+             NAV_ACTIVATE_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-nav-up", KEY_NAV_UP, NULL, NAV_UP_KEY_TEXT,
+             NAV_UP_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-nav-down", KEY_NAV_DOWN, NULL, NAV_DOWN_KEY_TEXT,
+             NAV_DOWN_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-nav-left", KEY_NAV_LEFT, NULL, NAV_LEFT_KEY_TEXT,
+             NAV_LEFT_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-nav-right", KEY_NAV_RIGHT, NULL, NAV_RIGHT_KEY_TEXT,
+             NAV_RIGHT_KEY_LONGTEXT, VLC_TRUE );
+
+    add_key( "key-quit", KEY_QUIT, NULL, QUIT_KEY_TEXT,
+             QUIT_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-vol-up", KEY_VOL_UP, NULL, VOL_UP_KEY_TEXT,
+             VOL_UP_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-vol-down", KEY_VOL_DOWN, NULL, VOL_DOWN_KEY_TEXT,
+             VOL_DOWN_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-vol-mute", KEY_VOL_MUTE, NULL, VOL_MUTE_KEY_TEXT,
+             VOL_MUTE_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-subdelay-up", KEY_SUBDELAY_UP, NULL,
+             SUBDELAY_UP_KEY_TEXT, SUBDELAY_UP_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-subdelay-down", KEY_SUBDELAY_DOWN, NULL,
+             SUBDELAY_DOWN_KEY_TEXT, SUBDELAY_DOWN_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-audio-track", KEY_AUDIO_TRACK, NULL, AUDIO_TRACK_KEY_TEXT,
+             AUDIO_TRACK_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-subtitle-track", KEY_SUBTITLE_TRACK, NULL,
+             SUBTITLE_TRACK_KEY_TEXT, SUBTITLE_TRACK_KEY_LONGTEXT, VLC_FALSE );
+
+    add_key( "key-set-bookmark1", KEY_SET_BOOKMARK1, NULL,
+             SET_BOOKMARK1_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark2", KEY_SET_BOOKMARK2, NULL,
+             SET_BOOKMARK2_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark3", KEY_SET_BOOKMARK3, NULL,
+             SET_BOOKMARK3_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark4", KEY_SET_BOOKMARK4, NULL,
+             SET_BOOKMARK4_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark5", KEY_SET_BOOKMARK5, NULL,
+             SET_BOOKMARK5_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark6", KEY_SET_BOOKMARK6, NULL,
+             SET_BOOKMARK6_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark7", KEY_SET_BOOKMARK7, NULL,
+             SET_BOOKMARK7_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark8", KEY_SET_BOOKMARK8, NULL,
+             SET_BOOKMARK8_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark9", KEY_SET_BOOKMARK9, NULL,
+             SET_BOOKMARK9_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-set-bookmark10", KEY_SET_BOOKMARK10, NULL,
+             SET_BOOKMARK10_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark1", KEY_PLAY_BOOKMARK1, NULL,
+             PLAY_BOOKMARK1_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark2", KEY_PLAY_BOOKMARK2, NULL,
+             PLAY_BOOKMARK2_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark3", KEY_PLAY_BOOKMARK3, NULL,
+             PLAY_BOOKMARK3_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark4", KEY_PLAY_BOOKMARK4, NULL,
+             PLAY_BOOKMARK4_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark5", KEY_PLAY_BOOKMARK5, NULL,
+             PLAY_BOOKMARK5_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark6", KEY_PLAY_BOOKMARK6, NULL,
+             PLAY_BOOKMARK6_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark7", KEY_PLAY_BOOKMARK7, NULL,
+             PLAY_BOOKMARK7_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark8", KEY_PLAY_BOOKMARK8, NULL,
+             PLAY_BOOKMARK8_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark9", KEY_PLAY_BOOKMARK9, NULL,
+             PLAY_BOOKMARK9_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-play-bookmark10", KEY_PLAY_BOOKMARK10, NULL,
+             PLAY_BOOKMARK10_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-history-back", KEY_HISTORY_BACK, NULL, HISTORY_BACK_TEXT,
+             HISTORY_BACK_LONGTEXT, VLC_TRUE );
+    add_key( "key-history-forward", KEY_HISTORY_FORWARD, NULL,
+             HISTORY_FORWARD_TEXT, HISTORY_FORWARD_LONGTEXT, VLC_TRUE );
+
     /* Usage (mainly useful for cmd line stuff) */
     add_usage_hint( PLAYLIST_USAGE );
 
@@ -1102,6 +1250,8 @@ static module_config_t p_help_config[] =
       N_("reset the current config to the default values") },
     { CONFIG_ITEM_STRING, NULL, "config", '\0',
       N_("use alternate config file") },
+    { CONFIG_ITEM_BOOL, NULL, "reset-plugins-cache", '\0',
+      N_("resets the current plugins cache") },
     { CONFIG_ITEM_BOOL, NULL, "version", '\0',
       N_("print version information") },
     { CONFIG_HINT_END, NULL, NULL, '\0', NULL }
@@ -1138,6 +1288,8 @@ static struct hotkey p_hotkeys[] =
     { "key-vol-mute", ACTIONID_VOL_MUTE, 0 },
     { "key-subdelay-down", ACTIONID_SUBDELAY_DOWN, 0 },
     { "key-subdelay-up", ACTIONID_SUBDELAY_UP, 0 },
+    { "key-audio-track", ACTIONID_AUDIO_TRACK, 0},
+    { "key-subtitle-track", ACTIONID_SUBTITLE_TRACK, 0},
     { "key-nav-activate", ACTIONID_NAV_ACTIVATE, 0 },
     { "key-nav-up", ACTIONID_NAV_UP, 0 },
     { "key-nav-down", ACTIONID_NAV_DOWN, 0 },
@@ -1167,3 +1319,4 @@ static struct hotkey p_hotkeys[] =
     { "key-history-forward", ACTIONID_HISTORY_FORWARD, 0},
     { NULL, 0, 0 }
 };
+