]> git.sesse.net Git - vlc/blobdiff - src/libvlc.h
Add Czech translation. Many thaks to Miroslav Oujesky
[vlc] / src / libvlc.h
index 3d3b6c3de3c58c32d563bc8074e00feaabe36637..b2c3abeb7f97a04767a3c12a9cf364e5fbebad08 100644 (file)
 #include "vlc_keys.h"
 
 static char *ppsz_language[] =
-{ "auto", "en", "en_GB", "ca", "da", "de", "es", "fr", "it", "ja",
-"ka","ko", "nl", "oc", "pt_BR", "ro", "ru", "tr", "zh_CN", "zh_TW" };
+{ "auto", "en", "en_GB", "ca", "cs", "da", "de", "es", "fr", "gl", "he", "hu",
+  "it", "ja", "ka", "ko", "nl", "oc", "pt_BR", "ro", "ru", "sv", "tr",
+  "zh_CN", "zh_TW" };
 
 static char *ppsz_language_text[] =
 { N_("Auto"), N_("American English"), N_("British English"),
-N_("Catalan"), N_("Danish"), N_("German"), N_("Spanish"), N_("French"),
-N_("Italian"), N_("Japanese"),N_("Georgian"), N_("Korean"),
-N_("Dutch"), N_("Occitan"), N_("Brazilian Portuguese"), N_("Romanian"),
-N_("Russian"), N_("Turkish"), N_("Simplified Chinese"),
-N_("Chinese Traditional") };
+N_("Catalan"), N_("Czech"), N_("Danish"), N_("German"), N_("Spanish"),
+N_("French"), N_("Galician"), N_("Hebrew"), N_("Hungarian"),N_("Italian"),
+N_("Japanese"),N_("Georgian"), N_("Korean"), N_("Dutch"), N_("Occitan"),
+N_("Brazilian Portuguese"), N_("Romanian"), N_("Russian"), N_("Swedish"),
+N_("Turkish"), N_("Simplified Chinese"), N_("Chinese Traditional") };
 
 static char *ppsz_snap_formats[] =
 { "png", "jpg" };
@@ -321,6 +322,16 @@ static char *ppsz_align_descriptions[] =
     "aspect, or a float value (1.25, 1.3333, etc.) expressing pixel " \
     "squareness.")
 
+#define CUSTOM_CROP_RATIOS_TEXT N_("Custom crop ratios list")
+#define CUSTOM_CROP_RATIOS_LONGTEXT N_( \
+    "Comma seperated list of crop ratios which will be added in the " \
+    "interface's crop ratios list.")
+
+#define CUSTOM_ASPECT_RATIOS_TEXT N_("Custom aspect ratios list")
+#define CUSTOM_ASPECT_RATIOS_LONGTEXT N_( \
+    "Comma seperated list of aspect ratios which will be added in the " \
+    "interface's aspect ratio list.")
+
 #define HDTV_FIX_TEXT N_("Fix HDTV height")
 #define HDTV_FIX_LONGTEXT N_( \
     "This allows proper handling of HDTV-1080 video format " \
@@ -334,6 +345,7 @@ static char *ppsz_align_descriptions[] =
     "pixels (1:1). If you have a 16:9 screen, you might need to change this " \
     "to 4:3 in order to keep proportions.")
 
+/// \bug [String] Remove "this option"
 #define SKIP_FRAMES_TEXT N_("Skip frames")
 #define SKIP_FRAMES_LONGTEXT N_( \
     "This option enables framedropping on MPEG2 stream. Framedropping " \
@@ -447,16 +459,16 @@ static char *ppsz_clock_descriptions[] =
     "Stream ID of the subtitle track to use.")
 
 #define INPUT_REPEAT_TEXT N_("Input repetitions")
-#define INPUT_REPEAT_LONGTEXT N_("Number of time the same input will be " \
-                                 "repeated")
+#define INPUT_REPEAT_LONGTEXT N_( \
+    "Number of time the same input will be repeated")
 
 #define START_TIME_TEXT N_("Start time")
-#define START_TIME_LONGTEXT N_("The stream will start at this position " \
-             "(in seconds)." )
+#define START_TIME_LONGTEXT N_( \
+    "The stream will start at this position (in seconds)." )
 
 #define STOP_TIME_TEXT N_("Stop time")
-#define STOP_TIME_LONGTEXT N_("The stream will stop at this position " \
-             "(in seconds)." )
+#define STOP_TIME_LONGTEXT N_( \
+    "The stream will stop at this position (in seconds)." )
 
 #define INPUT_LIST_TEXT N_("Input list")
 #define INPUT_LIST_LONGTEXT N_( \
@@ -470,8 +482,8 @@ static char *ppsz_clock_descriptions[] =
     "are supported. Use a '#' separated list of inputs.")
 
 #define BOOKMARKS_TEXT N_("Bookmarks list for a stream")
-#define BOOKMARKS_LONGTEXT N_( "You can manually give a list of "  \
-    "bookmarks for a stream in " \
+#define BOOKMARKS_LONGTEXT N_( \
+    "You can manually give a list of bookmarks for a stream in " \
     "the form \"{name=bookmark-name,time=optional-time-offset," \
     "bytes=optional-byte-offset},{...}\"")
 
@@ -497,19 +509,24 @@ static char *ppsz_clock_descriptions[] =
     "VLC can display messages on the video. This is called OSD (On Screen " \
     "Display).")
 
+#define TEXTRENDERER_TEXT N_("Text rendering module")
+#define TEXTRENDERER_LONGTEXT N_( \
+    "VLC normally uses Freetype for rendering, but this allows you to use svg for instance.")
+
+/// \bug typo arbitraty
 #define SUB_FILTER_TEXT N_("Subpictures filter module")
 #define SUB_FILTER_LONGTEXT N_( \
-    "This addds so-called \"subpicture filters\". These filters overlay " \
+    "This adds so-called \"subpicture filters\". These filters overlay " \
     "some images or text over the video (like a logo, arbitraty text...)." )
 
 #define SUB_AUTO_TEXT N_("Autodetect subtitle files")
-#define SUB_AUTO_LONGTEXT \
-    N_("Automatically detect a subtitle file, if no subtitle filename is " \
+#define SUB_AUTO_LONGTEXT N_( \
+    "Automatically detect a subtitle file, if no subtitle filename is " \
     "specified (based on the filename of the movie).")
 
 #define SUB_FUZZY_TEXT N_("Subtitle autodetection fuzziness")
-#define SUB_FUZZY_LONGTEXT \
-    N_("This determines how fuzzy subtitle and movie filename matching " \
+#define SUB_FUZZY_LONGTEXT N_( \
+    "This determines how fuzzy subtitle and movie filename matching " \
     "will be. Options are:\n" \
     "0 = no subtitles autodetected\n" \
     "1 = any subtitle file\n" \
@@ -518,13 +535,13 @@ static char *ppsz_clock_descriptions[] =
     "4 = subtitle file matching the movie name exactly")
 
 #define SUB_PATH_TEXT N_("Subtitle autodetection paths")
-#define SUB_PATH_LONGTEXT \
-    N_("Look for a subtitle file in those paths too, if your subtitle " \
+#define SUB_PATH_LONGTEXT N_( \
+    "Look for a subtitle file in those paths too, if your subtitle " \
     "file was not found in the current directory.")
 
 #define SUB_FILE_TEXT N_("Use subtitle file")
-#define SUB_FILE_LONGTEXT \
-    N_("Load this subtitle file. To be used when autodetect cannot detect " \
+#define SUB_FILE_LONGTEXT N_( \
+    "Load this subtitle file. To be used when autodetect cannot detect " \
     "your subtitle file.")
 
 #define DVD_DEV_TEXT N_("DVD device")
@@ -563,7 +580,7 @@ static char *ppsz_clock_descriptions[] =
 
 #define IPV4_TEXT N_("Force IPv4")
 #define IPV4_LONGTEXT N_( \
-    " IPv4 will be used by default for all connections.")
+    "IPv4 will be used by default for all connections.")
 
 #define TIMEOUT_TEXT N_("TCP connection timeout")
 #define TIMEOUT_LONGTEXT N_( \
@@ -575,12 +592,12 @@ static char *ppsz_clock_descriptions[] =
     "address:port. It will be used for all TCP connections" )
 
 #define SOCKS_USER_TEXT N_("SOCKS user name")
-#define SOCKS_USER_LONGTEXT N_("User name to be used for connection to " \
-    "the SOCKS proxy." )
+#define SOCKS_USER_LONGTEXT N_( \
+    "User name to be used for connection to the SOCKS proxy." )
 
 #define SOCKS_PASS_TEXT N_("SOCKS password")
-#define SOCKS_PASS_LONGTEXT N_("Password to be used for connection to "\
-    "the SOCKS proxy." )
+#define SOCKS_PASS_LONGTEXT N_( \
+    "Password to be used for connection to the SOCKS proxy." )
 
 #define META_TITLE_TEXT N_("Title metadata")
 #define META_TITLE_LONGTEXT N_( \
@@ -649,7 +666,7 @@ static char *ppsz_clock_descriptions[] =
 
 #define SOUT_ALL_TEXT N_("Enable streaming of all ES")
 #define SOUT_ALL_LONGTEXT N_( \
-    "Stream all ES (video, audio and subtitles)")
+    "Stream all elementary streams (video, audio and subtitles)")
 
 #define SOUT_DISPLAY_TEXT N_("Display while streaming")
 #define SOUT_DISPLAY_LONGTEXT N_( \
@@ -690,12 +707,14 @@ static char *ppsz_clock_descriptions[] =
     "This is a legacy entry to let you configure access output modules")
 
 #define ANN_SAPCTRL_TEXT N_("Control SAP flow")
-#define ANN_SAPCTRL_LONGTEXT N_("If this option is enabled, the flow on " \
+#define ANN_SAPCTRL_LONGTEXT N_( \
+    "If this option is enabled, the flow on " \
     "the SAP multicast address will be controlled. This is needed if you " \
     "want to make announcements on the MBone." )
 
 #define ANN_SAPINTV_TEXT N_("SAP announcement interval")
-#define ANN_SAPINTV_LONGTEXT N_("When the SAP flow control is disabled, " \
+#define ANN_SAPINTV_LONGTEXT N_( \
+    "When the SAP flow control is disabled, " \
     "this lets you set the fixed interval between SAP announcements." )
 
 
@@ -795,7 +814,7 @@ static char *ppsz_clock_descriptions[] =
 
 #define VLM_CONF_TEXT N_("VLM configuration file")
 #define VLM_CONF_LONGTEXT N_( \
-    "Read a VLM configuration file as son as it is started." )
+    "Read a VLM configuration file as soon as VLM is started." )
 
 #define PLUGINS_CACHE_TEXT N_("Use a plugins cache")
 #define PLUGINS_CACHE_LONGTEXT N_( \
@@ -810,19 +829,30 @@ static char *ppsz_clock_descriptions[] =
      "Runs VLC as a background daemon process.")
 
 #define FILE_LOG_TEXT N_( "Log to file" )
-#define FILE_LOG_LONGTEXT N_( "Log all VLC messages to a text file." )
+#define FILE_LOG_LONGTEXT N_( \
+    "Log all VLC messages to a text file." )
 
 #define SYSLOG_TEXT N_( "Log to syslog" )
-#define SYSLOG_LONGTEXT N_( "Log all VLC messages to syslog (UNIX systems)." )
+#define SYSLOG_LONGTEXT N_( \
+    "Log all VLC messages to syslog (UNIX systems)." )
 
 #define ONEINSTANCE_TEXT N_("Allow only one running instance")
 #define ONEINSTANCE_LONGTEXT N_( \
     "Allowing only one running instance of VLC can sometimes be useful, " \
-    "for instance if you associated VLC with some media types and you " \
+    "for example if you associated VLC with some media types and you " \
     "don't want a new instance of VLC to be opened each time you " \
     "double-click on a file in the explorer. This option will allow you " \
     "to play the file with the already running instance or enqueue it.")
 
+#define STARTEDFROMFILE_TEXT N_("VLC is started from file association")
+#define STARTEDFROMFILE_LONGTEXT N_( \
+    "Tell VLC that it is being launched due to a file association in the OS" )
+
+#define ONEINSTANCEWHENSTARTEDFROMFILE_TEXT N_( \
+    "Allow only on running instance when started from file")
+#define ONEINSTANCEWHENSTARTEDFROMFILE_LONGTEXT N_( \
+    "Allow only on running instance when started from file")
+
 #define HPRIORITY_TEXT N_("Increase the priority of the process")
 #define HPRIORITY_LONGTEXT N_( \
     "Increasing the priority of the process will very likely improve your " \
@@ -1052,6 +1082,32 @@ static char *ppsz_clock_descriptions[] =
 #define RECORD_KEY_TEXT N_("Record")
 #define RECORD_KEY_LONGTEXT N_("Record access filter start/stop.")
 
+#define ZOOM_KEY_TEXT N_("Zoom")
+#define ZOOM_KEY_LONGTEXT N_("Zoom")
+
+#define UNZOOM_KEY_TEXT N_("Un-Zoom")
+#define UNZOOM_KEY_LONGTEXT N_("Un-Zoom")
+
+#define CROP_TOP_KEY_TEXT N_("Crop one pixel from the top of the video")
+#define CROP_TOP_KEY_LONGTEXT N_("Crop one pixel from the top of the video")
+#define UNCROP_TOP_KEY_TEXT N_("Uncrop one pixel from the top of the video")
+#define UNCROP_TOP_KEY_LONGTEXT N_("Uncrop one pixel from the top of the video")
+
+#define CROP_LEFT_KEY_TEXT N_("Crop one pixel from the left of the video")
+#define CROP_LEFT_KEY_LONGTEXT N_("Crop one pixel from the left of the video")
+#define UNCROP_LEFT_KEY_TEXT N_("Uncrop one pixel from the left of the video")
+#define UNCROP_LEFT_KEY_LONGTEXT N_("Uncrop one pixel from the left of the video")
+
+#define CROP_BOTTOM_KEY_TEXT N_("Crop one pixel from the bottom of the video")
+#define CROP_BOTTOM_KEY_LONGTEXT N_("Crop one pixel from the bottom of the video")
+#define UNCROP_BOTTOM_KEY_TEXT N_("Uncrop one pixel from the bottom of the video")
+#define UNCROP_BOTTOM_KEY_LONGTEXT N_("Uncrop one pixel from the bottom of the video")
+
+#define CROP_RIGHT_KEY_TEXT N_("Crop one pixel from the right of the video")
+#define CROP_RIGHT_KEY_LONGTEXT N_("Crop one pixel from the right of the video")
+#define UNCROP_RIGHT_KEY_TEXT N_("Uncrop one pixel from the right of the video")
+#define UNCROP_RIGHT_KEY_LONGTEXT N_("Uncrop one pixel from the right of the video")
+
 
 #define VLC_USAGE N_( \
     "Usage: %s [options] [stream] ..." \
@@ -1152,7 +1208,7 @@ vlc_module_begin();
     add_bool( "drop-late-frames", 1, NULL, DROP_LATE_FRAMES_TEXT,
               DROP_LATE_FRAMES_LONGTEXT, VLC_TRUE );
     /* Used in vout_synchro */
-    add_bool( "skip-frames", 0, NULL, SKIP_FRAMES_TEXT,
+    add_bool( "skip-frames", 1, NULL, SKIP_FRAMES_TEXT,
               SKIP_FRAMES_LONGTEXT, VLC_TRUE );
     add_bool( "quiet-synchro", 0, NULL, QUIET_SYNCHRO_TEXT,
               QUIET_SYNCHRO_LONGTEXT, VLC_TRUE );
@@ -1179,10 +1235,14 @@ vlc_module_begin();
     add_integer( "video-x", -1, NULL, VIDEOX_TEXT, VIDEOX_LONGTEXT, VLC_TRUE );
     add_integer( "video-y", -1, NULL, VIDEOY_TEXT, VIDEOY_LONGTEXT, VLC_TRUE );
     add_string( "crop", NULL, NULL, CROP_TEXT, CROP_LONGTEXT, VLC_FALSE );
+    add_string( "custom-crop-ratios", NULL, NULL, CUSTOM_CROP_RATIOS_TEXT,
+                CUSTOM_CROP_RATIOS_LONGTEXT, VLC_FALSE );
     add_string( "aspect-ratio", NULL, NULL,
                 ASPECT_RATIO_TEXT, ASPECT_RATIO_LONGTEXT, VLC_FALSE );
     add_string( "monitor-par", NULL, NULL,
                 MASPECT_RATIO_TEXT, MASPECT_RATIO_LONGTEXT, VLC_TRUE );
+    add_string( "custom-aspect-ratios", NULL, NULL, CUSTOM_ASPECT_RATIOS_TEXT,
+                CUSTOM_ASPECT_RATIOS_LONGTEXT, VLC_FALSE );
     add_bool( "hdtv-fix", 1, NULL, HDTV_FIX_TEXT, HDTV_FIX_LONGTEXT, VLC_TRUE );
     add_bool( "video-deco", 1, NULL, VIDEO_DECO_TEXT,
               VIDEO_DECO_LONGTEXT, VLC_TRUE );
@@ -1213,6 +1273,8 @@ vlc_module_begin();
 
     add_bool( "spu", 1, NULL, SPU_TEXT, SPU_LONGTEXT, VLC_TRUE );
     add_bool( "osd", 1, NULL, OSD_TEXT, OSD_LONGTEXT, VLC_FALSE );
+    add_module( "text-renderer", "text renderer", NULL, NULL, TEXTRENDERER_TEXT,
+                TEXTRENDERER_LONGTEXT, VLC_TRUE );
 
     set_section( N_("Subtitles") , NULL );
     add_file( "sub-file", NULL, NULL, SUB_FILE_TEXT,
@@ -1276,7 +1338,7 @@ vlc_module_begin();
     add_string( "bookmarks", NULL, NULL,
                  BOOKMARKS_TEXT, BOOKMARKS_LONGTEXT, VLC_TRUE );
 
-    set_section( N_( "Default devices") , NULL )
+    set_section( N_( "Default devices") , NULL );
 
     add_file( "dvd", NULL, NULL, DVD_DEV_TEXT, DVD_DEV_LONGTEXT,
               VLC_FALSE );
@@ -1297,7 +1359,7 @@ vlc_module_begin();
     add_integer( "ipv4-timeout", 5 * 1000, NULL, TIMEOUT_TEXT,
                  TIMEOUT_LONGTEXT, VLC_TRUE );
 
-    set_section( N_( "Socks proxy") , NULL )
+    set_section( N_( "Socks proxy") , NULL );
     add_string( "socks", NULL, NULL,
                  SOCKS_SERVER_TEXT, SOCKS_SERVER_LONGTEXT, VLC_TRUE );
     add_string( "socks-user", NULL, NULL,
@@ -1306,7 +1368,7 @@ vlc_module_begin();
                  SOCKS_PASS_TEXT, SOCKS_PASS_LONGTEXT, VLC_TRUE );
 
 
-    set_section( N_("Metadata" ) , NULL )
+    set_section( N_("Metadata" ) , NULL );
     add_string( "meta-title", NULL, NULL, META_TITLE_TEXT,
                 META_TITLE_LONGTEXT, VLC_TRUE );
     add_string( "meta-author", NULL, NULL, META_AUTHOR_TEXT,
@@ -1454,6 +1516,11 @@ vlc_module_begin();
 #if defined(WIN32)
     add_bool( "one-instance", 0, NULL, ONEINSTANCE_TEXT,
               ONEINSTANCE_LONGTEXT, VLC_TRUE );
+    add_bool( "started-from-file", 0, NULL, STARTEDFROMFILE_TEXT,
+              STARTEDFROMFILE_LONGTEXT, VLC_TRUE );
+    add_bool( "one-instance-when-started-from-file", 1, NULL,
+              ONEINSTANCEWHENSTARTEDFROMFILE_TEXT,
+              ONEINSTANCEWHENSTARTEDFROMFILE_LONGTEXT, VLC_TRUE );
     add_bool( "playlist-enqueue", 0, NULL, PLAYLISTENQUEUE_TEXT,
               PLAYLISTENQUEUE_LONGTEXT, VLC_TRUE );
     add_bool( "high-priority", 0, NULL, HPRIORITY_TEXT,
@@ -1488,10 +1555,6 @@ vlc_module_begin();
 /* Interface options */
     set_category( CAT_INTERFACE );
     set_subcategory( SUBCAT_INTERFACE_GENERAL );
-        add_module_list_cat( "extraintf", SUBCAT_INTERFACE_GENERAL,
-                         NULL, NULL, EXTRAINTF_TEXT,
-                         EXTRAINTF_LONGTEXT, VLC_FALSE );
-
     add_integer( "verbose", 0, NULL, VERBOSE_TEXT, VERBOSE_LONGTEXT,
                  VLC_FALSE );
         change_short('v');
@@ -1510,9 +1573,12 @@ vlc_module_begin();
                VLC_TRUE );
 #endif
 
+#if defined (WIN32) || defined (__APPLE__)
     add_string( "language", "auto", NULL, LANGUAGE_TEXT, LANGUAGE_LONGTEXT,
                 VLC_FALSE );
         change_string_list( ppsz_language, ppsz_language_text, 0 );
+#endif
+
     add_bool( "color", 0, NULL, COLOR_TEXT, COLOR_LONGTEXT, VLC_TRUE );
     add_bool( "advanced", 0, NULL, ADVANCED_TEXT, ADVANCED_LONGTEXT,
                     VLC_FALSE );
@@ -1523,9 +1589,13 @@ vlc_module_begin();
     add_bool ( "stats", VLC_TRUE, NULL, STATS_TEXT, STATS_LONGTEXT, VLC_TRUE );
 
     set_subcategory( SUBCAT_INTERFACE_MAIN );
-    add_module_cat( "intf", SUBCAT_INTERFACE_GENERAL, NULL, NULL, INTF_TEXT,
+    add_module_cat( "intf", SUBCAT_INTERFACE_MAIN, NULL, NULL, INTF_TEXT,
                 INTF_LONGTEXT, VLC_FALSE );
         change_short('I');
+    add_module_list_cat( "extraintf", SUBCAT_INTERFACE_MAIN,
+                         NULL, NULL, EXTRAINTF_TEXT,
+                         EXTRAINTF_LONGTEXT, VLC_FALSE );
+
 
     set_subcategory( SUBCAT_INTERFACE_CONTROL );
     add_module_list_cat( "control", SUBCAT_INTERFACE_CONTROL, NULL, NULL,
@@ -1608,6 +1678,17 @@ vlc_module_begin();
 #   define KEY_CHAPTER_PREV       KEY_MODIFIER_CTRL|'u'
 #   define KEY_CHAPTER_NEXT       KEY_MODIFIER_CTRL|'d'
 #   define KEY_SNAPSHOT           KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|'s'
+#   define KEY_ZOOM               'z'
+#   define KEY_UNZOOM             KEY_MODIFIER_SHIFT|'z'
+
+#   define KEY_CROP_TOP           KEY_MODIFIER_ALT|'i'
+#   define KEY_UNCROP_TOP         KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'i'
+#   define KEY_CROP_LEFT          KEY_MODIFIER_ALT|'j'
+#   define KEY_UNCROP_LEFT        KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'j'
+#   define KEY_CROP_BOTTOM        KEY_MODIFIER_ALT|'k'
+#   define KEY_UNCROP_BOTTOM      KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'k'
+#   define KEY_CROP_RIGHT         KEY_MODIFIER_ALT|'l'
+#   define KEY_UNCROP_RIGHT       KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'l'
 
 #   define KEY_SET_BOOKMARK1      KEY_MODIFIER_COMMAND|KEY_F1
 #   define KEY_SET_BOOKMARK2      KEY_MODIFIER_COMMAND|KEY_F2
@@ -1675,10 +1756,21 @@ vlc_module_begin();
 #   define KEY_INTF_HIDE          'I'
 #   define KEY_DISC_MENU          KEY_MODIFIER_CTRL|'m'
 #   define KEY_TITLE_PREV         KEY_MODIFIER_CTRL|'p'
-#   define KEY_TITLE_NEXT         KEY_MODIFIER_CTRL|'n'
+#   define KEY_TITLE_NEXT         KEY_MODIFIER_CTRL|'f'
 #   define KEY_CHAPTER_PREV       KEY_MODIFIER_CTRL|'u'
 #   define KEY_CHAPTER_NEXT       KEY_MODIFIER_CTRL|'d'
 #   define KEY_SNAPSHOT           KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|'s'
+#   define KEY_ZOOM               'z'
+#   define KEY_UNZOOM             KEY_MODIFIER_SHIFT|'z'
+
+#   define KEY_CROP_TOP           KEY_MODIFIER_ALT|'i'
+#   define KEY_UNCROP_TOP         KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'i'
+#   define KEY_CROP_LEFT          KEY_MODIFIER_ALT|'j'
+#   define KEY_UNCROP_LEFT        KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'j'
+#   define KEY_CROP_BOTTOM        KEY_MODIFIER_ALT|'k'
+#   define KEY_UNCROP_BOTTOM      KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'k'
+#   define KEY_CROP_RIGHT         KEY_MODIFIER_ALT|'l'
+#   define KEY_UNCROP_RIGHT       KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'l'
 
 #   define KEY_SET_BOOKMARK1      KEY_MODIFIER_CTRL|KEY_F1
 #   define KEY_SET_BOOKMARK2      KEY_MODIFIER_CTRL|KEY_F2
@@ -1800,6 +1892,27 @@ vlc_module_begin();
              HISTORY_FORWARD_TEXT, HISTORY_FORWARD_LONGTEXT, VLC_TRUE );
     add_key( "key-record", KEY_RECORD, NULL,
              RECORD_KEY_TEXT, RECORD_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-zoom", KEY_ZOOM, NULL,
+             ZOOM_KEY_TEXT, ZOOM_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-unzoom", KEY_UNZOOM, NULL,
+             UNZOOM_KEY_TEXT, UNZOOM_KEY_LONGTEXT, VLC_TRUE );
+
+    add_key( "key-crop-top", KEY_CROP_TOP, NULL,
+             CROP_TOP_KEY_TEXT, CROP_TOP_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-uncrop-top", KEY_UNCROP_TOP, NULL,
+             UNCROP_TOP_KEY_TEXT, UNCROP_TOP_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-crop-left", KEY_CROP_LEFT, NULL,
+             CROP_LEFT_KEY_TEXT, CROP_LEFT_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-uncrop-left", KEY_UNCROP_LEFT, NULL,
+             UNCROP_LEFT_KEY_TEXT, UNCROP_LEFT_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-crop-bottom", KEY_CROP_BOTTOM, NULL,
+             CROP_BOTTOM_KEY_TEXT, CROP_BOTTOM_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-uncrop-bottom", KEY_UNCROP_BOTTOM, NULL,
+             UNCROP_BOTTOM_KEY_TEXT, UNCROP_BOTTOM_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-crop-right", KEY_CROP_RIGHT, NULL,
+             CROP_RIGHT_KEY_TEXT, CROP_RIGHT_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-uncrop-right", KEY_UNCROP_RIGHT, NULL,
+             UNCROP_RIGHT_KEY_TEXT, UNCROP_RIGHT_KEY_LONGTEXT, VLC_TRUE );
 
     set_section ( N_("Jump sizes" ), NULL );
     add_integer( "extrashort-jump-size", 3, NULL, JIEXTRASHORT_TEXT,
@@ -1889,7 +2002,7 @@ static module_config_t p_help_config[] =
     { CONFIG_ITEM_BOOL, NULL, "help", 'h',
       N_("print help for VLC (can be combined with --advanced)") },
     { CONFIG_ITEM_BOOL, NULL, "longhelp", 'H',
-      N_("print help for VLC and all it's modules (can be combined with --advanced)") },
+      N_("print help for VLC and all its modules (can be combined with --advanced)") },
     { CONFIG_ITEM_BOOL, NULL, "advanced", '\0',
       N_("print help for the advanced options") },
     { CONFIG_ITEM_BOOL, NULL, "help-verbose", '\0',
@@ -1954,6 +2067,16 @@ static struct hotkey p_hotkeys[] =
     { "key-intf-show", ACTIONID_INTF_SHOW, 0, 0, 0, 0 },
     { "key-intf-hide", ACTIONID_INTF_HIDE, 0, 0, 0, 0 },
     { "key-snapshot", ACTIONID_SNAPSHOT, 0, 0, 0, 0 },
+    { "key-zoom", ACTIONID_ZOOM, 0, 0, 0, 0 },
+    { "key-unzoom", ACTIONID_UNZOOM, 0, 0, 0, 0 },
+    { "key-crop-top", ACTIONID_CROP_TOP, 0, 0, 0, 0 },
+    { "key-uncrop-top", ACTIONID_UNCROP_TOP, 0, 0, 0, 0 },
+    { "key-crop-left", ACTIONID_CROP_LEFT, 0, 0, 0, 0 },
+    { "key-uncrop-left", ACTIONID_UNCROP_LEFT, 0, 0, 0, 0 },
+    { "key-crop-bottom", ACTIONID_CROP_BOTTOM, 0, 0, 0, 0 },
+    { "key-uncrop-bottom", ACTIONID_UNCROP_BOTTOM, 0, 0, 0, 0 },
+    { "key-crop-right", ACTIONID_CROP_RIGHT, 0, 0, 0, 0 },
+    { "key-uncrop-right", ACTIONID_UNCROP_RIGHT, 0, 0, 0, 0 },
     { "key-nav-activate", ACTIONID_NAV_ACTIVATE, 0, 0, 0, 0 },
     { "key-nav-up", ACTIONID_NAV_UP, 0, 0, 0, 0 },
     { "key-nav-down", ACTIONID_NAV_DOWN, 0, 0, 0, 0 },