ソースを参照

added 'auto-save periodically' option (see #165)

Gildas 7 年 前
コミット
92cdcf3820

+ 433 - 425
_locales/en/messages.json

@@ -1,426 +1,434 @@
-{
-    "extensionDescription": {
-        "message": "Save a complete page into a single HTML file",
-        "description": "Description of the extension."
-    },
-    "menuSavePage": {
-        "message": "Save page with SingleFile",
-        "description": "Menu entry: 'Save page with SingleFile'"
-    },
-    "menuSelectProfile": {
-        "message": "Select the default profile",
-        "description": "Menu entry: 'Select the default profile'"
-    },
-    "menuUpdateRule": {
-        "message": "Select the profile of the current rule",
-        "description": "Menu entry: 'Select the profile of the current rule'"
-    },
-    "menuCreateDomainRule": {
-        "message": "Select the profile of the current domain",
-        "description": "Menu entry: 'Select the profile of the current domain'"
-    },
-    "menuSaveSelection": {
-        "message": "Save selection",
-        "description": "Menu entry: 'Save selection'"
-    },
-    "menuSaveFrame": {
-        "message": "Save frame",
-        "description": "Menu entry: 'Save frame'"
-    },
-    "menuSaveTabs": {
-        "message": "Save tabs",
-        "description": "Menu entry (SingleFile button only): 'Save tabs'"
-    },
-    "menuSaveSelectedTabs": {
-        "message": "Save selected tabs",
-        "description": "Menu entry: 'Save selected tabs'"
-    },
-    "menuSaveUnpinnedTabs": {
-        "message": "Save unpinned tabs",
-        "description": "Menu entry: 'Save unpinned tabs'"
-    },
-    "menuSaveAllTabs": {
-        "message": "Save all tabs",
-        "description": "Menu entry: 'Save all tabs'"
-    },
-    "menuAutoSave": {
-        "message": "Auto-save",
-        "description": "Menu entry: 'Auto-save'"
-    },
-    "menuAutoSaveDisabled": {
-        "message": "Disabled",
-        "description": "Menu entry: 'Auto-save' > Disabled'"
-    },
-    "menuAutoSaveTab": {
-        "message": "Auto-save this tab",
-        "description": "Menu entry: 'Auto-save' > Auto-save this tab'"
-    },
-    "menuAutoSaveUnpinnedTabs": {
-        "message": "Auto-save unpinned tabs",
-        "description": "Menu entry: 'Auto-save' > Auto-save unpinned tabs'"
-    },
-    "menuAutoSaveAllTabs": {
-        "message": "Auto-save all tabs",
-        "description": "Menu entry: 'Auto-save' > Auto-save all tabs'"
-    },
-    "buttonDefaultTooltip": {
-        "message": "Save page with SingleFile",
-        "description": "Button title: 'Save page with SingleFile'"
-    },
-    "buttonInitializingTooltip": {
-        "message": "Initializing SingleFile",
-        "description": "Button title during initialization: 'Initializing SingleFile (x/2)'"
-    },
-    "buttonInitializingBadge": {
-        "message": "•••",
-        "description": "Badge label during initialization: '•••'"
-    },
-    "buttonSaveProgressTooltip": {
-        "message": "Save progress: ",
-        "description": "Button title during save: 'Save progress: xx%'"
-    },
-    "buttonOKBadge": {
-        "message": "OK",
-        "description": "Badge label: 'OK'"
-    },
-    "buttonErrorBadge": {
-        "message": "ERR",
-        "description": "Badge label for unexpected errors"
-    },
-    "buttonAutoSaveActiveTooltip": {
-        "message": "Auto-save active",
-        "description": "Button title: 'Auto-save active'"
-    },
-    "buttonAutoSaveActiveBadge": {
-        "message": "[A]",
-        "description": "Badge label when auto-save is active"
-    },
-    "optionsTitle": {
-        "message": "Options",
-        "description": "Options page title"
-    },
-    "optionsUserInterfaceSubTitle": {
-        "message": "User interface",
-        "description": "Options sub-title: 'User interface'"
-    },
-    "optionAddMenuEntry": {
-        "message": "add entry in the context menu of the webpage",
-        "description": "Options page label: 'add entry in the context menu of the webpage'"
-    },
-    "optionDisplayShadow": {
-        "message": "overlay a shadow on the page during processing",
-        "description": "Options page label: 'overlay a shadow on the page during processing'"
-    },
-    "optionDisplayInfobar": {
-        "message": "display an infobar when viewing a saved page",
-        "description": "Options page label: 'display an infobar when viewing a saved page'"
-    },
-    "optionInfobarTemplate": {
-        "message": "template of the infobar content",
-        "description": "Options page label: 'template of the infobar content'"
-    },
-    "optionConfirmInfobar": {
-        "message": "open a prompt dialog to edit the infobar content",
-        "description": "Options page label: 'open a prompt dialog to edit the infobar content'"
-    },
-    "optionsFileNameSubTitle": {
-        "message": "File name",
-        "description": "Options sub-title: 'File name'"
-    },
-    "optionFilenameTemplate": {
-        "message": "template",
-        "description": "Options page label: 'template'"
-    },
-    "optionConfirmFilename": {
-        "message": "open the \"Save as\" dialog to confirm the file name",
-        "description": "Options page label: 'open the \"Save as\" dialog to confirm the file name'"
-    },
-    "optionFilenameConflictAction": {
-        "message": "file name conflict resolution",
-        "description": "Options page label: 'filename conflict resolution'"
-    },
-    "optionFilenameConflictActionUniquify": {
-        "message": "create a unique name",
-        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
-    },
-    "optionFilenameConflictActionOverwrite": {
-        "message": "overwrite the existing file",
-        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
-    },
-    "optionFilenameConflictActionPrompt": {
-        "message": "prompt for a name",
-        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
-    },
-    "optionsHTMLContentSubTitle": {
-        "message": "HTML content",
-        "description": "Options sub-title: 'HTML content'"
-    },
-    "optionCompressHTML": {
-        "message": "compress HTML content",
-        "description": "Options page label: 'compress HTML content'"
-    },
-    "optionRemoveImports": {
-        "message": "remove HTML imports",
-        "description": "Options page label: 'remove HTML imports'"
-    },
-    "optionRemoveFrames": {
-        "message": "remove frames",
-        "description": "Options page label: 'remove frames'"
-    },
-    "optionRemoveHiddenElements": {
-        "message": "remove hidden elements",
-        "description": "Options page label: 'remove hidden elements'"
-    },
-    "optionsImagesSubTitle": {
-        "message": "Images",
-        "description": "Options sub-title: 'Images'"
-    },
-    "optionGroupDuplicateImages": {
-        "message": "group duplicate images together",
-        "description": "Options page label: 'group duplicate images together'"
-    },
-    "optionLoadDeferredImages": {
-        "message": "save deferred images",
-        "description": "Options page label: 'save deferred images'"
-    },
-    "optionLoadDeferredImagesMaxIdleTime": {
-        "message": "maximum idle time (ms)",
-        "description": "Options page label: 'maximum idle time (ms)'"
-    },
-    "optionRemoveAlternativeImages": {
-        "message": "remove images for alternative screen resolutions",
-        "description": "Options page label: 'remove images for alternative screen resolutions'"
-    },
-    "optionsFontsSubTitle": {
-        "message": "Fonts",
-        "description": "Options sub-title: 'Fonts'"
-    },
-    "optionRemoveUnusedFonts": {
-        "message": "remove unused fonts",
-        "description": "Options page label: 'remove unused fonts'"
-    },
-    "optionRemoveAlternativeFonts": {
-        "message": "remove alternative fonts",
-        "description": "Options page label: 'remove alternative fonts'"
-    },
-    "optionsStylesheetsSubTitle": {
-        "message": "Stylesheets",
-        "description": "Options sub-title: 'Stylesheets'"
-    },
-    "optionCompressCSS": {
-        "message": "compress CSS content",
-        "description": "Options page label: 'compress CSS content'"
-    },
-    "optionRemoveUnusedStyles": {
-        "message": "remove unused styles",
-        "description": "Options page label: 'remove unused styles'"
-    },
-    "optionRemoveAlternativeMedias": {
-        "message": "remove stylesheets for alternative devices to screens",
-        "description": "Options page label: 'remove stylesheets for alternative devices to screens'"
-    },
-    "optionsOtherResourcesSubTitle": {
-        "message": "Other resources",
-        "description": "Options sub-title: 'Other resources'"
-    },
-    "optionRemoveScripts": {
-        "message": "remove scripts",
-        "description": "Options page label: 'remove scripts'"
-    },
-    "optionRemoveVideo": {
-        "message": "remove video sources",
-        "description": "Options page label: 'remove video sources'"
-    },
-    "optionRemoveAudio": {
-        "message": "remove audio sources",
-        "description": "Options page label: 'remove audio sources'"
-    },
-    "optionsAutoSaveSubTitle": {
-        "message": "Auto-save",
-        "description": "Options sub-title: 'Auto-save'"
-    },
-    "optionsAutoSettingsSubTitle": {
-        "message": "Auto-settings rules",
-        "description": "Options sub-title: 'Auto-settings rules'"
-    },
-    "optionsDeleteDisplayedRulesConfirm": {
-        "message": "Confirm the deletion of all displayed rules",
-        "description": "Popup text 'Confirm the deletion of all displayed rules'"
-    },
-    "optionsDeleteRulesTooltip": {
-        "message": "Delete all displayed rules",
-        "description": "Popup text 'Delete all displayed rules'"
-    },
-    "optionsAutoSettingsUrl": {
-        "message": "URL",
-        "description": "Options label in the Auto-settings rules: 'URL'"
-    },
-    "optionsAutoSettingsUrlPlaceholder": {
-        "message": "Type a complete or partial URL (e.g. example.com)",
-        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
-    },
-    "optionsAutoSettingsProfile": {
-        "message": "Profile",
-        "description": "Options label in the Auto-settings rules: 'Profile'"
-    },
-    "optionsAutoSettingsAutoSaveProfile": {
-        "message": "Auto-save profile",
-        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
-    },
-    "optionsAutoSettingsShowAllProfiles": {
-        "message": "display all profiles",
-        "description": "Options label in the Auto-settings rules: 'display all profiles'"
-    },
-    "optionsAutoSettingsShowAutoSaveProfile": {
-        "message": "display 'Auto-save profile' column",
-        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
-    },
-    "optionsUpdateRuleTooltip": {
-        "message": "Update the rule",
-        "description": "Popup text 'Update the rule' in the options page"
-    },
-    "optionsDeleteRuleTooltip": {
-        "message": "Delete the rule",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsAddRuleTooltip": {
-        "message": "Add the rule",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsValidateChangesTooltip": {
-        "message": "Validate changes",
-        "description": "Popup text 'Validate changes' in the options page"
-    },
-    "optionsDeleteRuleConfirm": {
-        "message": "Confirm the deletion of the selected rule",
-        "description": "Popup text 'Confirm the deletion of the selected rule' in the options page"
-    },
-    "optionAutoSaveLoadOrUnload": {
-        "message": "auto-save after page load or on page unload",
-        "description": "auto-save after page load or on page unload"
-    },
-    "optionAutoSaveLoad": {
-        "message": "auto-save after page load",
-        "description": "Options page label: 'auto-save after page load'"
-    },
-    "optionAutoSaveUnload": {
-        "message": "auto-save on page unload",
-        "description": "Options page label: 'auto-save on page unload'"
-    },
-    "optionAutoSaveDelay": {
-        "message": "auto-save waiting delay after page load (sec.)",
-        "description": "Options page label: 'auto-save waiting delay after page load (sec.)'"
-    },
-    "optionsMiscSubTitle": {
-        "message": "Misc.",
-        "description": "Options sub-title: 'Misc.'"
-    },
-    "optionBackgroundSave": {
-        "message": "save pages in background",
-        "description": "Options page label: 'save pages in background'"
-    },
-    "optionDisplayStats": {
-        "message": "display stats in the console after processing",
-        "description": "Options page label: 'display stats in the console after processing'"
-    },
-    "optionSetMaxResourceSize": {
-        "message": "set a maximum size for embedded resources",
-        "description": "Options page label: 'set a maximum size for embedded resources'"
-    },
-    "optionMaxResourceSize": {
-        "message": "maximum size (MB)",
-        "description": "Options page label: 'maximum size (MB)'"
-    },
-    "optionSaveRawPage": {
-        "message": "save raw page",
-        "description": "Options page label: 'save raw page'"
-    },
-    "optionsHelpLink": {
-        "message": "help",
-        "description": "Options help link"
-    },
-    "optionsResetButton": {
-        "message": "Reset",
-        "description": "Options button: 'Reset'"
-    },
-    "optionsResetTooltip": {
-        "message": "Reset all options to their default values",
-        "description": "Options 'Reset' button tooltip"
-    },
-    "optionsResetConfirm": {
-        "message": "Confirm the reset of all options or the current profile",
-        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
-    },
-    "optionsResetAllButton": {
-        "message": "Reset all options",
-        "description": "Options confirm button: 'Reset all options'"
-    },
-    "optionsResetCurrentButton": {
-        "message": "Reset the current profile",
-        "description": "Options confirm button: 'Reset current profile'"
-    },
-    "optionsOKButton": {
-        "message": "OK",
-        "description": "Options confirm button: 'OK'"
-    },
-    "optionsCancelButton": {
-        "message": "Cancel",
-        "description": "Options confirm button: 'Cancel'"
-    },
-    "optionsExportButton": {
-        "message": "Export",
-        "description": "Options button: 'Export'"
-    },
-    "optionsImportButton": {
-        "message": "Import",
-        "description": "Options button: 'Import'"
-    },
-    "logPanelDeferredImages": {
-        "message": "Deferred images",
-        "description": "Label 'Deferred images' in the log panel"
-    },
-    "logPanelFrameContents": {
-        "message": "Frame contents",
-        "description": "Label 'Frame contents' in the log panel"
-    },
-    "logPanelStep": {
-        "message": "Step",
-        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
-    },
-    "logPanelWidth": {
-        "message": "120",
-        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
-    },
-    "profileDefaultSettings": {
-        "message": "Default settings",
-        "description": "Label 'Default settings' of the default settings in the options page"
-    },
-    "profileDisabled": {
-        "message": "Disabled",
-        "description": "Label 'Disabled' of the disabled profile name in the options page"
-    },
-    "profileAddButtonTooltip": {
-        "message": "Add a new profile",
-        "description": "Tooltip 'Add a new profile' in the options page"
-    },
-    "profileRenameButtonTooltip": {
-        "message": "Rename the profile",
-        "description": "Tooltip 'Rename the profile' in the options page"
-    },
-    "profileDeleteButtonTooltip": {
-        "message": "Delete the profile",
-        "description": "Tooltip 'Delete the profile' in the options page"
-    },
-    "profileAddPrompt": {
-        "message": "Enter a name for this new profile",
-        "description": "Popup text 'Enter a name for this new profile' in the options page"
-    },
-    "profileDeleteConfirm": {
-        "message": "Confirm the deletion of the selected profile",
-        "description": "Popup text 'Confirm the deletion of the selected profile' in the options page"
-    },
-    "profileRenamePrompt": {
-        "message": "Enter a new name for the selected profile",
-        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
-    }
+{
+    "extensionDescription": {
+        "message": "Save a complete page into a single HTML file",
+        "description": "Description of the extension."
+    },
+    "menuSavePage": {
+        "message": "Save page with SingleFile",
+        "description": "Menu entry: 'Save page with SingleFile'"
+    },
+    "menuSelectProfile": {
+        "message": "Select the default profile",
+        "description": "Menu entry: 'Select the default profile'"
+    },
+    "menuUpdateRule": {
+        "message": "Select the profile of the current rule",
+        "description": "Menu entry: 'Select the profile of the current rule'"
+    },
+    "menuCreateDomainRule": {
+        "message": "Select the profile of the current domain",
+        "description": "Menu entry: 'Select the profile of the current domain'"
+    },
+    "menuSaveSelection": {
+        "message": "Save selection",
+        "description": "Menu entry: 'Save selection'"
+    },
+    "menuSaveFrame": {
+        "message": "Save frame",
+        "description": "Menu entry: 'Save frame'"
+    },
+    "menuSaveTabs": {
+        "message": "Save tabs",
+        "description": "Menu entry (SingleFile button only): 'Save tabs'"
+    },
+    "menuSaveSelectedTabs": {
+        "message": "Save selected tabs",
+        "description": "Menu entry: 'Save selected tabs'"
+    },
+    "menuSaveUnpinnedTabs": {
+        "message": "Save unpinned tabs",
+        "description": "Menu entry: 'Save unpinned tabs'"
+    },
+    "menuSaveAllTabs": {
+        "message": "Save all tabs",
+        "description": "Menu entry: 'Save all tabs'"
+    },
+    "menuAutoSave": {
+        "message": "Auto-save",
+        "description": "Menu entry: 'Auto-save'"
+    },
+    "menuAutoSaveDisabled": {
+        "message": "Disabled",
+        "description": "Menu entry: 'Auto-save' > Disabled'"
+    },
+    "menuAutoSaveTab": {
+        "message": "Auto-save this tab",
+        "description": "Menu entry: 'Auto-save' > Auto-save this tab'"
+    },
+    "menuAutoSaveUnpinnedTabs": {
+        "message": "Auto-save unpinned tabs",
+        "description": "Menu entry: 'Auto-save' > Auto-save unpinned tabs'"
+    },
+    "menuAutoSaveAllTabs": {
+        "message": "Auto-save all tabs",
+        "description": "Menu entry: 'Auto-save' > Auto-save all tabs'"
+    },
+    "buttonDefaultTooltip": {
+        "message": "Save page with SingleFile",
+        "description": "Button title: 'Save page with SingleFile'"
+    },
+    "buttonInitializingTooltip": {
+        "message": "Initializing SingleFile",
+        "description": "Button title during initialization: 'Initializing SingleFile (x/2)'"
+    },
+    "buttonInitializingBadge": {
+        "message": "•••",
+        "description": "Badge label during initialization: '•••'"
+    },
+    "buttonSaveProgressTooltip": {
+        "message": "Save progress: ",
+        "description": "Button title during save: 'Save progress: xx%'"
+    },
+    "buttonOKBadge": {
+        "message": "OK",
+        "description": "Badge label: 'OK'"
+    },
+    "buttonErrorBadge": {
+        "message": "ERR",
+        "description": "Badge label for unexpected errors"
+    },
+    "buttonAutoSaveActiveTooltip": {
+        "message": "Auto-save active",
+        "description": "Button title: 'Auto-save active'"
+    },
+    "buttonAutoSaveActiveBadge": {
+        "message": "[A]",
+        "description": "Badge label when auto-save is active"
+    },
+    "optionsTitle": {
+        "message": "Options",
+        "description": "Options page title"
+    },
+    "optionsUserInterfaceSubTitle": {
+        "message": "User interface",
+        "description": "Options sub-title: 'User interface'"
+    },
+    "optionAddMenuEntry": {
+        "message": "add entry in the context menu of the webpage",
+        "description": "Options page label: 'add entry in the context menu of the webpage'"
+    },
+    "optionDisplayShadow": {
+        "message": "overlay a shadow on the page during processing",
+        "description": "Options page label: 'overlay a shadow on the page during processing'"
+    },
+    "optionDisplayInfobar": {
+        "message": "display an infobar when viewing a saved page",
+        "description": "Options page label: 'display an infobar when viewing a saved page'"
+    },
+    "optionInfobarTemplate": {
+        "message": "template of the infobar content",
+        "description": "Options page label: 'template of the infobar content'"
+    },
+    "optionConfirmInfobar": {
+        "message": "open a prompt dialog to edit the infobar content",
+        "description": "Options page label: 'open a prompt dialog to edit the infobar content'"
+    },
+    "optionsFileNameSubTitle": {
+        "message": "File name",
+        "description": "Options sub-title: 'File name'"
+    },
+    "optionFilenameTemplate": {
+        "message": "template",
+        "description": "Options page label: 'template'"
+    },
+    "optionConfirmFilename": {
+        "message": "open the \"Save as\" dialog to confirm the file name",
+        "description": "Options page label: 'open the \"Save as\" dialog to confirm the file name'"
+    },
+    "optionFilenameConflictAction": {
+        "message": "file name conflict resolution",
+        "description": "Options page label: 'filename conflict resolution'"
+    },
+    "optionFilenameConflictActionUniquify": {
+        "message": "create a unique name",
+        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
+    },
+    "optionFilenameConflictActionOverwrite": {
+        "message": "overwrite the existing file",
+        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
+    },
+    "optionFilenameConflictActionPrompt": {
+        "message": "prompt for a name",
+        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
+    },
+    "optionsHTMLContentSubTitle": {
+        "message": "HTML content",
+        "description": "Options sub-title: 'HTML content'"
+    },
+    "optionCompressHTML": {
+        "message": "compress HTML content",
+        "description": "Options page label: 'compress HTML content'"
+    },
+    "optionRemoveImports": {
+        "message": "remove HTML imports",
+        "description": "Options page label: 'remove HTML imports'"
+    },
+    "optionRemoveFrames": {
+        "message": "remove frames",
+        "description": "Options page label: 'remove frames'"
+    },
+    "optionRemoveHiddenElements": {
+        "message": "remove hidden elements",
+        "description": "Options page label: 'remove hidden elements'"
+    },
+    "optionsImagesSubTitle": {
+        "message": "Images",
+        "description": "Options sub-title: 'Images'"
+    },
+    "optionGroupDuplicateImages": {
+        "message": "group duplicate images together",
+        "description": "Options page label: 'group duplicate images together'"
+    },
+    "optionLoadDeferredImages": {
+        "message": "save deferred images",
+        "description": "Options page label: 'save deferred images'"
+    },
+    "optionLoadDeferredImagesMaxIdleTime": {
+        "message": "maximum idle time (ms)",
+        "description": "Options page label: 'maximum idle time (ms)'"
+    },
+    "optionRemoveAlternativeImages": {
+        "message": "remove images for alternative screen resolutions",
+        "description": "Options page label: 'remove images for alternative screen resolutions'"
+    },
+    "optionsFontsSubTitle": {
+        "message": "Fonts",
+        "description": "Options sub-title: 'Fonts'"
+    },
+    "optionRemoveUnusedFonts": {
+        "message": "remove unused fonts",
+        "description": "Options page label: 'remove unused fonts'"
+    },
+    "optionRemoveAlternativeFonts": {
+        "message": "remove alternative fonts",
+        "description": "Options page label: 'remove alternative fonts'"
+    },
+    "optionsStylesheetsSubTitle": {
+        "message": "Stylesheets",
+        "description": "Options sub-title: 'Stylesheets'"
+    },
+    "optionCompressCSS": {
+        "message": "compress CSS content",
+        "description": "Options page label: 'compress CSS content'"
+    },
+    "optionRemoveUnusedStyles": {
+        "message": "remove unused styles",
+        "description": "Options page label: 'remove unused styles'"
+    },
+    "optionRemoveAlternativeMedias": {
+        "message": "remove stylesheets for alternative devices to screens",
+        "description": "Options page label: 'remove stylesheets for alternative devices to screens'"
+    },
+    "optionsOtherResourcesSubTitle": {
+        "message": "Other resources",
+        "description": "Options sub-title: 'Other resources'"
+    },
+    "optionRemoveScripts": {
+        "message": "remove scripts",
+        "description": "Options page label: 'remove scripts'"
+    },
+    "optionRemoveVideo": {
+        "message": "remove video sources",
+        "description": "Options page label: 'remove video sources'"
+    },
+    "optionRemoveAudio": {
+        "message": "remove audio sources",
+        "description": "Options page label: 'remove audio sources'"
+    },
+    "optionsAutoSaveSubTitle": {
+        "message": "Auto-save",
+        "description": "Options sub-title: 'Auto-save'"
+    },
+    "optionsAutoSettingsSubTitle": {
+        "message": "Auto-settings rules",
+        "description": "Options sub-title: 'Auto-settings rules'"
+    },
+    "optionsDeleteDisplayedRulesConfirm": {
+        "message": "Confirm the deletion of all displayed rules",
+        "description": "Popup text 'Confirm the deletion of all displayed rules'"
+    },
+    "optionsDeleteRulesTooltip": {
+        "message": "Delete all displayed rules",
+        "description": "Popup text 'Delete all displayed rules'"
+    },
+    "optionsAutoSettingsUrl": {
+        "message": "URL",
+        "description": "Options label in the Auto-settings rules: 'URL'"
+    },
+    "optionsAutoSettingsUrlPlaceholder": {
+        "message": "Type a complete or partial URL (e.g. example.com)",
+        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
+    },
+    "optionsAutoSettingsProfile": {
+        "message": "Profile",
+        "description": "Options label in the Auto-settings rules: 'Profile'"
+    },
+    "optionsAutoSettingsAutoSaveProfile": {
+        "message": "Auto-save profile",
+        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
+    },
+    "optionsAutoSettingsShowAllProfiles": {
+        "message": "display all profiles",
+        "description": "Options label in the Auto-settings rules: 'display all profiles'"
+    },
+    "optionsAutoSettingsShowAutoSaveProfile": {
+        "message": "display 'Auto-save profile' column",
+        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
+    },
+    "optionsUpdateRuleTooltip": {
+        "message": "Update the rule",
+        "description": "Popup text 'Update the rule' in the options page"
+    },
+    "optionsDeleteRuleTooltip": {
+        "message": "Delete the rule",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsAddRuleTooltip": {
+        "message": "Add the rule",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsValidateChangesTooltip": {
+        "message": "Validate changes",
+        "description": "Popup text 'Validate changes' in the options page"
+    },
+    "optionsDeleteRuleConfirm": {
+        "message": "Confirm the deletion of the selected rule",
+        "description": "Popup text 'Confirm the deletion of the selected rule' in the options page"
+    },
+    "optionAutoSaveLoadOrUnload": {
+        "message": "auto-save after page load or on page unload",
+        "description": "auto-save after page load or on page unload"
+    },
+    "optionAutoSaveLoad": {
+        "message": "auto-save after page load",
+        "description": "Options page label: 'auto-save after page load'"
+    },
+    "optionAutoSaveUnload": {
+        "message": "auto-save on page unload",
+        "description": "Options page label: 'auto-save on page unload'"
+    },
+    "optionAutoSaveDelay": {
+        "message": "auto-save waiting delay after page load (sec.)",
+        "description": "Options page label: 'auto-save waiting delay after page load (sec.)'"
+    },
+    "optionAutoSaveRepeat": {
+        "message": "auto-save periodically",
+        "description": "Options page label: 'auto-save periodically'"
+    },
+    "optionAutoSaveRepeatDelay": {
+        "message": "period (sec.)",
+        "description": "Options page label: 'period (sec.)'"
+    },
+    "optionsMiscSubTitle": {
+        "message": "Misc.",
+        "description": "Options sub-title: 'Misc.'"
+    },
+    "optionBackgroundSave": {
+        "message": "save pages in background",
+        "description": "Options page label: 'save pages in background'"
+    },
+    "optionDisplayStats": {
+        "message": "display stats in the console after processing",
+        "description": "Options page label: 'display stats in the console after processing'"
+    },
+    "optionSetMaxResourceSize": {
+        "message": "set a maximum size for embedded resources",
+        "description": "Options page label: 'set a maximum size for embedded resources'"
+    },
+    "optionMaxResourceSize": {
+        "message": "maximum size (MB)",
+        "description": "Options page label: 'maximum size (MB)'"
+    },
+    "optionSaveRawPage": {
+        "message": "save raw page",
+        "description": "Options page label: 'save raw page'"
+    },
+    "optionsHelpLink": {
+        "message": "help",
+        "description": "Options help link"
+    },
+    "optionsResetButton": {
+        "message": "Reset",
+        "description": "Options button: 'Reset'"
+    },
+    "optionsResetTooltip": {
+        "message": "Reset all options to their default values",
+        "description": "Options 'Reset' button tooltip"
+    },
+    "optionsResetConfirm": {
+        "message": "Confirm the reset of all options or the current profile",
+        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
+    },
+    "optionsResetAllButton": {
+        "message": "Reset all options",
+        "description": "Options confirm button: 'Reset all options'"
+    },
+    "optionsResetCurrentButton": {
+        "message": "Reset the current profile",
+        "description": "Options confirm button: 'Reset current profile'"
+    },
+    "optionsOKButton": {
+        "message": "OK",
+        "description": "Options confirm button: 'OK'"
+    },
+    "optionsCancelButton": {
+        "message": "Cancel",
+        "description": "Options confirm button: 'Cancel'"
+    },
+    "optionsExportButton": {
+        "message": "Export",
+        "description": "Options button: 'Export'"
+    },
+    "optionsImportButton": {
+        "message": "Import",
+        "description": "Options button: 'Import'"
+    },
+    "logPanelDeferredImages": {
+        "message": "Deferred images",
+        "description": "Label 'Deferred images' in the log panel"
+    },
+    "logPanelFrameContents": {
+        "message": "Frame contents",
+        "description": "Label 'Frame contents' in the log panel"
+    },
+    "logPanelStep": {
+        "message": "Step",
+        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
+    },
+    "logPanelWidth": {
+        "message": "120",
+        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
+    },
+    "profileDefaultSettings": {
+        "message": "Default settings",
+        "description": "Label 'Default settings' of the default settings in the options page"
+    },
+    "profileDisabled": {
+        "message": "Disabled",
+        "description": "Label 'Disabled' of the disabled profile name in the options page"
+    },
+    "profileAddButtonTooltip": {
+        "message": "Add a new profile",
+        "description": "Tooltip 'Add a new profile' in the options page"
+    },
+    "profileRenameButtonTooltip": {
+        "message": "Rename the profile",
+        "description": "Tooltip 'Rename the profile' in the options page"
+    },
+    "profileDeleteButtonTooltip": {
+        "message": "Delete the profile",
+        "description": "Tooltip 'Delete the profile' in the options page"
+    },
+    "profileAddPrompt": {
+        "message": "Enter a name for this new profile",
+        "description": "Popup text 'Enter a name for this new profile' in the options page"
+    },
+    "profileDeleteConfirm": {
+        "message": "Confirm the deletion of the selected profile",
+        "description": "Popup text 'Confirm the deletion of the selected profile' in the options page"
+    },
+    "profileRenamePrompt": {
+        "message": "Enter a new name for the selected profile",
+        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
+    }
 }

+ 433 - 425
_locales/fr/messages.json

@@ -1,426 +1,434 @@
-{
-    "extensionDescription": {
-        "message": "Sauvegardez une page complète dans un simple fichier HTML",
-        "description": "Description of the extension."
-    },
-    "menuSavePage": {
-        "message": "Sauver la page avec SingleFile",
-        "description": "Menu entry: 'Save page with SingleFile'"
-    },
-    "menuSelectProfile": {
-        "message": "Sélectionner le profil par défaut",
-        "description": "Menu entry: 'Select the default profile'"
-    },
-    "menuUpdateRule": {
-        "message": "Sélectionner le profil de la règle courante",
-        "description": "Menu entry: 'Select the profile of the current rule'"
-    },
-    "menuCreateDomainRule": {
-        "message": "Sélectionner le profil du domaine courant",
-        "description": "Menu entry: 'Select the profile of the current domain'"
-    },
-    "menuSaveTabs": {
-        "message": "Sauver les onglets",
-        "description": "Menu entry (SingleFile button only): 'Save tabs'"
-    },
-    "menuSaveSelection": {
-        "message": "Sauver la sélection",
-        "description": "Menu entry: 'Save selection'"
-    },
-    "menuSaveFrame": {
-        "message": "Sauver le cadre",
-        "description": "Menu entry: 'Save frame'"
-    },
-    "menuSaveSelectedTabs": {
-        "message": "Sauver les onglets sélectionnés",
-        "description": "Menu entry: 'Save selected tabs'"
-    },
-    "menuSaveUnpinnedTabs": {
-        "message": "Sauver les onglets non épinglés",
-        "description": "Menu entry: 'Save unpinned tabs'"
-    },
-    "menuSaveAllTabs": {
-        "message": "Sauver tous les onglets",
-        "description": "Menu entry: 'Save all tabs'"
-    },
-    "menuAutoSave": {
-        "message": "Auto-sauvegarde",
-        "description": "Menu entry: 'Auto-save'"
-    },
-    "menuAutoSaveDisabled": {
-        "message": "Désactivée",
-        "description": "Menu entry: 'Auto-save' > Disabled'"
-    },
-    "menuAutoSaveTab": {
-        "message": "Auto-sauvegarder cet onglet",
-        "description": "Menu entry: 'Auto-save' > Auto-save this tab'"
-    },
-    "menuAutoSaveUnpinnedTabs": {
-        "message": "Auto-sauvegarder les onglets non épinglés",
-        "description": "Menu entry: 'Auto-save' > Auto-save unpinned tabs'"
-    },
-    "menuAutoSaveAllTabs": {
-        "message": "Auto-sauvegarder tous les onglets",
-        "description": "Menu entry: 'Auto-save' > Auto-save all tabs'"
-    },
-    "buttonDefaultTooltip": {
-        "message": "Sauver la page avec SingleFile",
-        "description": "Button title: 'Save page with SingleFile'"
-    },
-    "buttonInitializingTooltip": {
-        "message": "Initialisation de SingleFile",
-        "description": "Button title during initialization: 'Initializing SingleFile (x/2)'"
-    },
-    "buttonInitializingBadge": {
-        "message": "•••",
-        "description": "Badge label during initialization: '•••'"
-    },
-    "buttonSaveProgressTooltip": {
-        "message": "Progression de la sauvegarde : ",
-        "description": "Button title during save: 'Save progress: xx%'"
-    },
-    "buttonOKBadge": {
-        "message": "OK",
-        "description": "Badge label: 'OK'"
-    },
-    "buttonErrorBadge": {
-        "message": "ERR",
-        "description": "Badge label for unexpected errors"
-    },
-    "buttonAutoSaveActiveTooltip": {
-        "message": "Auto-sauvegarde active",
-        "description": "Button title: 'Auto-save active'"
-    },
-    "buttonAutoSaveActiveBadge": {
-        "message": "[A]",
-        "description": "Badge label when auto-save is active"
-    },
-    "optionsTitle": {
-        "message": "Options",
-        "description": "Options page title"
-    },
-    "optionsUserInterfaceSubTitle": {
-        "message": "Interface utilisateur",
-        "description": "Options sub-title: 'User interface'"
-    },
-    "optionAddMenuEntry": {
-        "message": "ajouter une entrée dans le menu contextuel de la page web",
-        "description": "Options page label: 'add entry in the context menu of the webpage'"
-    },
-    "optionDisplayShadow": {
-        "message": "assombrir la page pendant la sauvegarde",
-        "description": "Options page label: 'overlay a shadow on the page during processing'"
-    },
-    "optionDisplayInfobar": {
-        "message": "afficher une barre d'information quand une sauvegarde est affichée",
-        "description": "Options page label: 'display an infobar when viewing a saved page'"
-    },
-    "optionInfobarTemplate": {
-        "message": "modèle du contenu de la barre d'information",
-        "description": "Options page label: 'template of the infobar content'"
-    },
-    "optionConfirmInfobar": {
-        "message": "ouvrir une boite de dialogue pour éditer le contenu de la barre d'information",
-        "description": "Options page label: 'open a prompt dialog to edit the infobar content'"
-    },
-    "optionsFileNameSubTitle": {
-        "message": "Nom de fichier",
-        "description": "Options sub-title: 'File name'"
-    },
-    "optionFilenameTemplate": {
-        "message": "modèle",
-        "description": "Options page label: 'template'"
-    },
-    "optionConfirmFilename": {
-        "message": "ouvrir la boite de dialogue \"Sauver sous\" pour confimer le nom de fichier",
-        "description": "Options page label: 'open the \"Save as\" dialog to confirm the file name'"
-    },
-    "optionFilenameConflictAction": {
-        "message": "résolution de conflit de noms",
-        "description": "Options page label: 'filename conflict resolution'"
-    },
-    "optionFilenameConflictActionUniquify": {
-        "message": "créer un nom unique",
-        "description": "Value for 'filename conflict resolution' option: 'create a unique filename'"
-    },
-    "optionFilenameConflictActionOverwrite": {
-        "message": "écraser le fichier existant",
-        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
-    },
-    "optionFilenameConflictActionPrompt": {
-        "message": "demander un nom de fichier",
-        "description": "Value for 'filename conflict resolution' option: 'prompt for a filename'"
-    },
-    "optionsHTMLContentSubTitle": {
-        "message": "Contenu HTML",
-        "description": "Options sub-title: 'HTML content'"
-    },
-    "optionCompressHTML": {
-        "message": "compresser le contenu HTML",
-        "description": "Options page label: 'compress HTML content'"
-    },
-    "optionRemoveImports": {
-        "message": "supprimer les imports HTML",
-        "description": "Options page label: 'remove HTML imports'"
-    },
-    "optionRemoveFrames": {
-        "message": "supprimer les cadres",
-        "description": "Options page label: 'remove frames'"
-    },
-    "optionRemoveHiddenElements": {
-        "message": "supprimer les élements cachés",
-        "description": "Options page label: 'remove hidden elements'"
-    },
-    "optionsImagesSubTitle": {
-        "message": "Images",
-        "description": "Options sub-title: 'Images'"
-    },
-    "optionGroupDuplicateImages": {
-        "message": "regrouper les images dupliquées",
-        "description": "Options page label: 'group duplicate images together'"
-    },
-    "optionLoadDeferredImages": {
-        "message": "sauver les images chargées de manière différées",
-        "description": "Options page label: 'save deferred images'"
-    },
-    "optionLoadDeferredImagesMaxIdleTime": {
-        "message": "temps d'inactivité maximal (ms)",
-        "description": "Options page label: 'maximum idle time (ms)'"
-    },
-    "optionRemoveAlternativeImages": {
-        "message": "supprimer les images pour des résolutions d'écran alternatives",
-        "description": "Options page label: 'remove images for alternative screen resolutions'"
-    },
-    "optionsFontsSubTitle": {
-        "message": "Polices de caractère",
-        "description": "Options sub-title: 'Fonts'"
-    },
-    "optionRemoveUnusedFonts": {
-        "message": "supprimer les polices de caractère inutilisées",
-        "description": "Options page label: 'remove unused fonts'"
-    },
-    "optionRemoveAlternativeFonts": {
-        "message": "supprimer les polices de caractère alternatives",
-        "description": "Options page label: 'remove alternative fonts'"
-    },
-    "optionsStylesheetsSubTitle": {
-        "message": "Feuilles de style",
-        "description": "Options sub-title: 'Stylesheets'"
-    },
-    "optionCompressCSS": {
-        "message": "compresser le contenu CSS",
-        "description": "Options page label: 'compress CSS content'"
-    },
-    "optionRemoveUnusedStyles": {
-        "message": "supprimer les styles inutilisés",
-        "description": "Options page label: 'remove unused styles'"
-    },
-    "optionRemoveAlternativeMedias": {
-        "message": "supprimer les feuilles de styles pour les appareils autres que des écrans",
-        "description": "Options page label: 'remove stylesheets for alternative devices to screens'"
-    },
-    "optionsOtherResourcesSubTitle": {
-        "message": "Autres ressources",
-        "description": "Options sub-title: 'Other resources'"
-    },
-    "optionRemoveScripts": {
-        "message": "supprimer les scripts",
-        "description": "Options page label: 'remove scripts'"
-    },
-    "optionRemoveVideo": {
-        "message": "supprimer les sources video",
-        "description": "Options page label: 'remove video sources'"
-    },
-    "optionRemoveAudio": {
-        "message": "supprimer les sources audio",
-        "description": "Options page label: 'remove audio sources'"
-    },
-    "optionsAutoSaveSubTitle": {
-        "message": "Auto-sauvegarde",
-        "description": "Options sub-title: 'Auto-save'"
-    },
-    "optionsAutoSettingsSubTitle": {
-        "message": "Règles d'auto-configuration",
-        "description": "Options sub-title: 'Auto-settings rules'"
-    },
-    "optionsDeleteDisplayedRulesConfirm": {
-        "message": "Confirmez la suppression de toutes les règles affichées",
-        "description": "Popup text 'Confirm deletion of all displayed rules'"
-    },
-    "optionsDeleteRulesTooltip": {
-        "message": "Supprimer toutes les règles affichées",
-        "description": "Popup text 'Delete all displayed rules'"
-    },
-    "optionsAutoSettingsUrl": {
-        "message": "URL",
-        "description": "Options label in the auto-settings rules: 'URL'"
-    },
-    "optionsAutoSettingsUrlPlaceholder": {
-        "message": "Entrer une URL complète ou partielle (e.g. example.com)",
-        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
-    },
-    "optionsAutoSettingsProfile": {
-        "message": "Profil",
-        "description": "Options label in the auto-settings rules: 'Profile'"
-    },
-    "optionsAutoSettingsAutoSaveProfile": {
-        "message": "Profil auto-sauvegarde",
-        "description": "Options label in the auto-settings rules: 'Auto-save profile'"
-    },
-    "optionsAutoSettingsShowAllProfiles": {
-        "message": "afficher tous les profils",
-        "description": "Options label in the Auto-settings rules: 'display all profiles'"
-    },
-    "optionsAutoSettingsShowAutoSaveProfile": {
-        "message": "afficher la colonne 'Profil auto-sauvegarde'",
-        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
-    },
-    "optionsUpdateRuleTooltip": {
-        "message": "Mettre à jour la règle",
-        "description": "Popup text 'Update the rule' in the options page"
-    },
-    "optionsDeleteRuleTooltip": {
-        "message": "Supprimer la règle",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsAddRuleTooltip": {
-        "message": "Ajouter la règle",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsValidateChangesTooltip": {
-        "message": "Valider les changements",
-        "description": "Popup text 'Valider les changements' in the options page"
-    },
-    "optionsDeleteRuleConfirm": {
-        "message": "Confimer la suppression de la règle selectionnée",
-        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
-    },
-    "optionAutoSaveLoadOrUnload": {
-        "message": "auto-sauvegarder après le chargement de la page ou au déchargement",
-        "description": "auto-save after page load or on page unload"
-    },
-    "optionAutoSaveLoad": {
-        "message": "auto-sauvegarder après le chargement de la page",
-        "description": "Options page label: 'auto-save after page load'"
-    },
-    "optionAutoSaveUnload": {
-        "message": "auto-sauvegarder au déchargement de la page",
-        "description": "Options page label: 'auto-save on page unload'"
-    },
-    "optionAutoSaveDelay": {
-        "message": "délai d'attente après le chargement de la page (sec.)",
-        "description": "Options page label: 'auto-save waiting delay after page load (sec.)'"
-    },
-    "optionsMiscSubTitle": {
-        "message": "Divers",
-        "description": "Options sub-title: 'Misc.'"
-    },
-    "optionBackgroundSave": {
-        "message": "sauvegarder la page en tâche de fond",
-        "description": "Options page label: 'save pages in background'"
-    },
-    "optionDisplayStats": {
-        "message": "afficher les statistiques dans la console après la sauvegarde",
-        "description": "Options page label: 'display stats in the console after processing'"
-    },
-    "optionSetMaxResourceSize": {
-        "message": "définir une taille maximale pour les ressources embarquées",
-        "description": "Options page label: 'set a maximum size for embedded resources'"
-    },
-    "optionMaxResourceSize": {
-        "message": "taille maximale (Mo)",
-        "description": "Options page label: 'maximum size (MB)'"
-    },
-    "optionSaveRawPage": {
-        "message": "sauvegarder la page brute",
-        "description": "Options page label: 'save raw page'"
-    },
-    "optionsHelpLink": {
-        "message": "aide (anglais)",
-        "description": "Options help link"
-    },
-    "optionsResetButton": {
-        "message": "Remise à zéro",
-        "description": "Options button: 'Reset'"
-    },
-    "optionsResetTooltip": {
-        "message": "Remettre toutes les options à leur valeur par défaut",
-        "description": "Options 'Reset' button tooltip"
-    },
-    "optionsResetConfirm": {
-        "message": "Confirmer la remise à zéro de toutes les options ou la remise à zéro du profil courant",
-        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
-    },
-    "optionsResetAllButton": {
-        "message": "Remettre à zéro toutes les options",
-        "description": "Options confirm button: 'Reset all options'"
-    },
-    "optionsResetCurrentButton": {
-        "message": "Remettre à zéro le profil courant",
-        "description": "Options confirm button: 'Reset current profile'"
-    },
-    "optionsOKButton": {
-        "message": "OK",
-        "description": "Options confirm button: 'OK'"
-    },
-    "optionsCancelButton": {
-        "message": "Annuler",
-        "description": "Options confirm button: 'Cancel'"
-    },
-    "optionsExportButton": {
-        "message": "Exporter",
-        "description": "Options button: 'Export'"
-    },
-    "optionsImportButton": {
-        "message": "Importer",
-        "description": "Options button: 'Import'"
-    },
-    "logPanelDeferredImages": {
-        "message": "Images différées",
-        "description": "Label 'Deferred images' in the log panel"
-    },
-    "logPanelFrameContents": {
-        "message": "Contenus des cadres",
-        "description": "Label 'Frame contents' in the log panel"
-    },
-    "logPanelStep": {
-        "message": "Étape",
-        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
-    },
-    "logPanelWidth": {
-        "message": "140",
-        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
-    },
-    "profileDefaultSettings": {
-        "message": "Configuration par défaut",
-        "description": "Label 'Default settings' of the default settings in the options page"
-    },
-    "profileDisabled": {
-        "message": "Désactivé",
-        "description": "Label 'Disabled' of the disabled profile name in the options page"
-    },
-    "profileAddButtonTooltip": {
-        "message": "Ajouter un nouveau profil",
-        "description": "Tooltip 'Add a new profile' in the options page"
-    },
-    "profileRenameButtonTooltip": {
-        "message": "Renommer le profil",
-        "description": "Tooltip 'Rename the profile' in the options page"
-    },
-    "profileDeleteButtonTooltip": {
-        "message": "Supprimer le profil",
-        "description": "Tooltip 'Delete the profile' in the options page"
-    },
-    "profileAddPrompt": {
-        "message": "Saisissez un nom pour ce nouveau profil",
-        "description": "Popup text 'Enter a name for this new profile' in the options page"
-    },
-    "profileDeleteConfirm": {
-        "message": "Confirmez la suppression du profil selectionné",
-        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
-    },
-    "profileRenamePrompt": {
-        "message": "Saisissez un nouveau nom pour le profil sélectionné",
-        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
-    }
+{
+    "extensionDescription": {
+        "message": "Sauvegardez une page complète dans un simple fichier HTML",
+        "description": "Description of the extension."
+    },
+    "menuSavePage": {
+        "message": "Sauver la page avec SingleFile",
+        "description": "Menu entry: 'Save page with SingleFile'"
+    },
+    "menuSelectProfile": {
+        "message": "Sélectionner le profil par défaut",
+        "description": "Menu entry: 'Select the default profile'"
+    },
+    "menuUpdateRule": {
+        "message": "Sélectionner le profil de la règle courante",
+        "description": "Menu entry: 'Select the profile of the current rule'"
+    },
+    "menuCreateDomainRule": {
+        "message": "Sélectionner le profil du domaine courant",
+        "description": "Menu entry: 'Select the profile of the current domain'"
+    },
+    "menuSaveTabs": {
+        "message": "Sauver les onglets",
+        "description": "Menu entry (SingleFile button only): 'Save tabs'"
+    },
+    "menuSaveSelection": {
+        "message": "Sauver la sélection",
+        "description": "Menu entry: 'Save selection'"
+    },
+    "menuSaveFrame": {
+        "message": "Sauver le cadre",
+        "description": "Menu entry: 'Save frame'"
+    },
+    "menuSaveSelectedTabs": {
+        "message": "Sauver les onglets sélectionnés",
+        "description": "Menu entry: 'Save selected tabs'"
+    },
+    "menuSaveUnpinnedTabs": {
+        "message": "Sauver les onglets non épinglés",
+        "description": "Menu entry: 'Save unpinned tabs'"
+    },
+    "menuSaveAllTabs": {
+        "message": "Sauver tous les onglets",
+        "description": "Menu entry: 'Save all tabs'"
+    },
+    "menuAutoSave": {
+        "message": "Auto-sauvegarde",
+        "description": "Menu entry: 'Auto-save'"
+    },
+    "menuAutoSaveDisabled": {
+        "message": "Désactivée",
+        "description": "Menu entry: 'Auto-save' > Disabled'"
+    },
+    "menuAutoSaveTab": {
+        "message": "Auto-sauvegarder cet onglet",
+        "description": "Menu entry: 'Auto-save' > Auto-save this tab'"
+    },
+    "menuAutoSaveUnpinnedTabs": {
+        "message": "Auto-sauvegarder les onglets non épinglés",
+        "description": "Menu entry: 'Auto-save' > Auto-save unpinned tabs'"
+    },
+    "menuAutoSaveAllTabs": {
+        "message": "Auto-sauvegarder tous les onglets",
+        "description": "Menu entry: 'Auto-save' > Auto-save all tabs'"
+    },
+    "buttonDefaultTooltip": {
+        "message": "Sauver la page avec SingleFile",
+        "description": "Button title: 'Save page with SingleFile'"
+    },
+    "buttonInitializingTooltip": {
+        "message": "Initialisation de SingleFile",
+        "description": "Button title during initialization: 'Initializing SingleFile (x/2)'"
+    },
+    "buttonInitializingBadge": {
+        "message": "•••",
+        "description": "Badge label during initialization: '•••'"
+    },
+    "buttonSaveProgressTooltip": {
+        "message": "Progression de la sauvegarde : ",
+        "description": "Button title during save: 'Save progress: xx%'"
+    },
+    "buttonOKBadge": {
+        "message": "OK",
+        "description": "Badge label: 'OK'"
+    },
+    "buttonErrorBadge": {
+        "message": "ERR",
+        "description": "Badge label for unexpected errors"
+    },
+    "buttonAutoSaveActiveTooltip": {
+        "message": "Auto-sauvegarde active",
+        "description": "Button title: 'Auto-save active'"
+    },
+    "buttonAutoSaveActiveBadge": {
+        "message": "[A]",
+        "description": "Badge label when auto-save is active"
+    },
+    "optionsTitle": {
+        "message": "Options",
+        "description": "Options page title"
+    },
+    "optionsUserInterfaceSubTitle": {
+        "message": "Interface utilisateur",
+        "description": "Options sub-title: 'User interface'"
+    },
+    "optionAddMenuEntry": {
+        "message": "ajouter une entrée dans le menu contextuel de la page web",
+        "description": "Options page label: 'add entry in the context menu of the webpage'"
+    },
+    "optionDisplayShadow": {
+        "message": "assombrir la page pendant la sauvegarde",
+        "description": "Options page label: 'overlay a shadow on the page during processing'"
+    },
+    "optionDisplayInfobar": {
+        "message": "afficher une barre d'information quand une sauvegarde est affichée",
+        "description": "Options page label: 'display an infobar when viewing a saved page'"
+    },
+    "optionInfobarTemplate": {
+        "message": "modèle du contenu de la barre d'information",
+        "description": "Options page label: 'template of the infobar content'"
+    },
+    "optionConfirmInfobar": {
+        "message": "ouvrir une boite de dialogue pour éditer le contenu de la barre d'information",
+        "description": "Options page label: 'open a prompt dialog to edit the infobar content'"
+    },
+    "optionsFileNameSubTitle": {
+        "message": "Nom de fichier",
+        "description": "Options sub-title: 'File name'"
+    },
+    "optionFilenameTemplate": {
+        "message": "modèle",
+        "description": "Options page label: 'template'"
+    },
+    "optionConfirmFilename": {
+        "message": "ouvrir la boite de dialogue \"Sauver sous\" pour confimer le nom de fichier",
+        "description": "Options page label: 'open the \"Save as\" dialog to confirm the file name'"
+    },
+    "optionFilenameConflictAction": {
+        "message": "résolution de conflit de noms",
+        "description": "Options page label: 'filename conflict resolution'"
+    },
+    "optionFilenameConflictActionUniquify": {
+        "message": "créer un nom unique",
+        "description": "Value for 'filename conflict resolution' option: 'create a unique filename'"
+    },
+    "optionFilenameConflictActionOverwrite": {
+        "message": "écraser le fichier existant",
+        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
+    },
+    "optionFilenameConflictActionPrompt": {
+        "message": "demander un nom de fichier",
+        "description": "Value for 'filename conflict resolution' option: 'prompt for a filename'"
+    },
+    "optionsHTMLContentSubTitle": {
+        "message": "Contenu HTML",
+        "description": "Options sub-title: 'HTML content'"
+    },
+    "optionCompressHTML": {
+        "message": "compresser le contenu HTML",
+        "description": "Options page label: 'compress HTML content'"
+    },
+    "optionRemoveImports": {
+        "message": "supprimer les imports HTML",
+        "description": "Options page label: 'remove HTML imports'"
+    },
+    "optionRemoveFrames": {
+        "message": "supprimer les cadres",
+        "description": "Options page label: 'remove frames'"
+    },
+    "optionRemoveHiddenElements": {
+        "message": "supprimer les élements cachés",
+        "description": "Options page label: 'remove hidden elements'"
+    },
+    "optionsImagesSubTitle": {
+        "message": "Images",
+        "description": "Options sub-title: 'Images'"
+    },
+    "optionGroupDuplicateImages": {
+        "message": "regrouper les images dupliquées",
+        "description": "Options page label: 'group duplicate images together'"
+    },
+    "optionLoadDeferredImages": {
+        "message": "sauver les images chargées de manière différées",
+        "description": "Options page label: 'save deferred images'"
+    },
+    "optionLoadDeferredImagesMaxIdleTime": {
+        "message": "temps d'inactivité maximal (ms)",
+        "description": "Options page label: 'maximum idle time (ms)'"
+    },
+    "optionRemoveAlternativeImages": {
+        "message": "supprimer les images pour des résolutions d'écran alternatives",
+        "description": "Options page label: 'remove images for alternative screen resolutions'"
+    },
+    "optionsFontsSubTitle": {
+        "message": "Polices de caractère",
+        "description": "Options sub-title: 'Fonts'"
+    },
+    "optionRemoveUnusedFonts": {
+        "message": "supprimer les polices de caractère inutilisées",
+        "description": "Options page label: 'remove unused fonts'"
+    },
+    "optionRemoveAlternativeFonts": {
+        "message": "supprimer les polices de caractère alternatives",
+        "description": "Options page label: 'remove alternative fonts'"
+    },
+    "optionsStylesheetsSubTitle": {
+        "message": "Feuilles de style",
+        "description": "Options sub-title: 'Stylesheets'"
+    },
+    "optionCompressCSS": {
+        "message": "compresser le contenu CSS",
+        "description": "Options page label: 'compress CSS content'"
+    },
+    "optionRemoveUnusedStyles": {
+        "message": "supprimer les styles inutilisés",
+        "description": "Options page label: 'remove unused styles'"
+    },
+    "optionRemoveAlternativeMedias": {
+        "message": "supprimer les feuilles de styles pour les appareils autres que des écrans",
+        "description": "Options page label: 'remove stylesheets for alternative devices to screens'"
+    },
+    "optionsOtherResourcesSubTitle": {
+        "message": "Autres ressources",
+        "description": "Options sub-title: 'Other resources'"
+    },
+    "optionRemoveScripts": {
+        "message": "supprimer les scripts",
+        "description": "Options page label: 'remove scripts'"
+    },
+    "optionRemoveVideo": {
+        "message": "supprimer les sources video",
+        "description": "Options page label: 'remove video sources'"
+    },
+    "optionRemoveAudio": {
+        "message": "supprimer les sources audio",
+        "description": "Options page label: 'remove audio sources'"
+    },
+    "optionsAutoSaveSubTitle": {
+        "message": "Auto-sauvegarde",
+        "description": "Options sub-title: 'Auto-save'"
+    },
+    "optionsAutoSettingsSubTitle": {
+        "message": "Règles d'auto-configuration",
+        "description": "Options sub-title: 'Auto-settings rules'"
+    },
+    "optionsDeleteDisplayedRulesConfirm": {
+        "message": "Confirmez la suppression de toutes les règles affichées",
+        "description": "Popup text 'Confirm deletion of all displayed rules'"
+    },
+    "optionsDeleteRulesTooltip": {
+        "message": "Supprimer toutes les règles affichées",
+        "description": "Popup text 'Delete all displayed rules'"
+    },
+    "optionsAutoSettingsUrl": {
+        "message": "URL",
+        "description": "Options label in the auto-settings rules: 'URL'"
+    },
+    "optionsAutoSettingsUrlPlaceholder": {
+        "message": "Entrer une URL complète ou partielle (e.g. example.com)",
+        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
+    },
+    "optionsAutoSettingsProfile": {
+        "message": "Profil",
+        "description": "Options label in the auto-settings rules: 'Profile'"
+    },
+    "optionsAutoSettingsAutoSaveProfile": {
+        "message": "Profil auto-sauvegarde",
+        "description": "Options label in the auto-settings rules: 'Auto-save profile'"
+    },
+    "optionsAutoSettingsShowAllProfiles": {
+        "message": "afficher tous les profils",
+        "description": "Options label in the Auto-settings rules: 'display all profiles'"
+    },
+    "optionsAutoSettingsShowAutoSaveProfile": {
+        "message": "afficher la colonne 'Profil auto-sauvegarde'",
+        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
+    },
+    "optionsUpdateRuleTooltip": {
+        "message": "Mettre à jour la règle",
+        "description": "Popup text 'Update the rule' in the options page"
+    },
+    "optionsDeleteRuleTooltip": {
+        "message": "Supprimer la règle",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsAddRuleTooltip": {
+        "message": "Ajouter la règle",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsValidateChangesTooltip": {
+        "message": "Valider les changements",
+        "description": "Popup text 'Valider les changements' in the options page"
+    },
+    "optionsDeleteRuleConfirm": {
+        "message": "Confimer la suppression de la règle selectionnée",
+        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
+    },
+    "optionAutoSaveLoadOrUnload": {
+        "message": "auto-sauvegarder après le chargement de la page ou au déchargement",
+        "description": "auto-save after page load or on page unload"
+    },
+    "optionAutoSaveLoad": {
+        "message": "auto-sauvegarder après le chargement de la page",
+        "description": "Options page label: 'auto-save after page load'"
+    },
+    "optionAutoSaveUnload": {
+        "message": "auto-sauvegarder au déchargement de la page",
+        "description": "Options page label: 'auto-save on page unload'"
+    },
+    "optionAutoSaveDelay": {
+        "message": "délai d'attente après le chargement de la page (sec.)",
+        "description": "Options page label: 'auto-save waiting delay after page load (sec.)'"
+    },
+    "optionAutoSaveRepeat": {
+        "message": "auto-sauvegarder périodiquement",
+        "description": "Options page label: 'auto-save periodically'"
+    },
+    "optionAutoSaveRepeatDelay": {
+        "message": "période (s)",
+        "description": "Options page label: 'period (sec.)'"
+    },
+    "optionsMiscSubTitle": {
+        "message": "Divers",
+        "description": "Options sub-title: 'Misc.'"
+    },
+    "optionBackgroundSave": {
+        "message": "sauvegarder la page en tâche de fond",
+        "description": "Options page label: 'save pages in background'"
+    },
+    "optionDisplayStats": {
+        "message": "afficher les statistiques dans la console après la sauvegarde",
+        "description": "Options page label: 'display stats in the console after processing'"
+    },
+    "optionSetMaxResourceSize": {
+        "message": "définir une taille maximale pour les ressources embarquées",
+        "description": "Options page label: 'set a maximum size for embedded resources'"
+    },
+    "optionMaxResourceSize": {
+        "message": "taille maximale (Mo)",
+        "description": "Options page label: 'maximum size (MB)'"
+    },
+    "optionSaveRawPage": {
+        "message": "sauvegarder la page brute",
+        "description": "Options page label: 'save raw page'"
+    },
+    "optionsHelpLink": {
+        "message": "aide (anglais)",
+        "description": "Options help link"
+    },
+    "optionsResetButton": {
+        "message": "Remise à zéro",
+        "description": "Options button: 'Reset'"
+    },
+    "optionsResetTooltip": {
+        "message": "Remettre toutes les options à leur valeur par défaut",
+        "description": "Options 'Reset' button tooltip"
+    },
+    "optionsResetConfirm": {
+        "message": "Confirmer la remise à zéro de toutes les options ou la remise à zéro du profil courant",
+        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
+    },
+    "optionsResetAllButton": {
+        "message": "Remettre à zéro toutes les options",
+        "description": "Options confirm button: 'Reset all options'"
+    },
+    "optionsResetCurrentButton": {
+        "message": "Remettre à zéro le profil courant",
+        "description": "Options confirm button: 'Reset current profile'"
+    },
+    "optionsOKButton": {
+        "message": "OK",
+        "description": "Options confirm button: 'OK'"
+    },
+    "optionsCancelButton": {
+        "message": "Annuler",
+        "description": "Options confirm button: 'Cancel'"
+    },
+    "optionsExportButton": {
+        "message": "Exporter",
+        "description": "Options button: 'Export'"
+    },
+    "optionsImportButton": {
+        "message": "Importer",
+        "description": "Options button: 'Import'"
+    },
+    "logPanelDeferredImages": {
+        "message": "Images différées",
+        "description": "Label 'Deferred images' in the log panel"
+    },
+    "logPanelFrameContents": {
+        "message": "Contenus des cadres",
+        "description": "Label 'Frame contents' in the log panel"
+    },
+    "logPanelStep": {
+        "message": "Étape",
+        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
+    },
+    "logPanelWidth": {
+        "message": "140",
+        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
+    },
+    "profileDefaultSettings": {
+        "message": "Configuration par défaut",
+        "description": "Label 'Default settings' of the default settings in the options page"
+    },
+    "profileDisabled": {
+        "message": "Désactivé",
+        "description": "Label 'Disabled' of the disabled profile name in the options page"
+    },
+    "profileAddButtonTooltip": {
+        "message": "Ajouter un nouveau profil",
+        "description": "Tooltip 'Add a new profile' in the options page"
+    },
+    "profileRenameButtonTooltip": {
+        "message": "Renommer le profil",
+        "description": "Tooltip 'Rename the profile' in the options page"
+    },
+    "profileDeleteButtonTooltip": {
+        "message": "Supprimer le profil",
+        "description": "Tooltip 'Delete the profile' in the options page"
+    },
+    "profileAddPrompt": {
+        "message": "Saisissez un nom pour ce nouveau profil",
+        "description": "Popup text 'Enter a name for this new profile' in the options page"
+    },
+    "profileDeleteConfirm": {
+        "message": "Confirmez la suppression du profil selectionné",
+        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
+    },
+    "profileRenamePrompt": {
+        "message": "Saisissez un nouveau nom pour le profil sélectionné",
+        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
+    }
 }

+ 433 - 425
_locales/ja/messages.json

@@ -1,426 +1,434 @@
-{
-    "extensionDescription": {
-        "message": "完全なページを単一の HTML ファイルに保存する",
-        "description": "拡張機能の説明。"
-    },
-    "menuSavePage": {
-        "message": "SingleFile でページを保存",
-        "description": "メニュー項目: 'SingleFile でページを保存'"
-    },
-    "menuSelectProfile": {
-        "message": "規定(default)のプロファイルを選択",
-        "description": "Menu entry: 'Select the default profile'"
-    },
-    "menuUpdateRule": {
-        "message": "現在のルールのプロファイルを選択",
-        "description": "Menu entry: 'Select the profile of the current rule'"
-    },
-    "menuCreateDomainRule": {
-        "message": "現在のドメインのプロファイルを選択",
-        "description": "Menu entry: 'Select the profile of the current domain'"
-    },
-    "menuSaveTabs": {
-        "message": "タブを保存",
-        "description": "Menu entry (SingleFile button only): 'Save tabs'"
-    },
-    "menuSaveSelection": {
-        "message": "選択を保存",
-        "description": "メニュー項目: '選択を保存'"
-    },
-    "menuSaveFrame": {
-        "message": "フレームを保存",
-        "description": "メニュー項目: 'フレームを保存'"
-    },
-    "menuSaveSelectedTabs": {
-        "message": "選択したタブを保存",
-        "description": "メニュー項目: '選択したタブを保存'"
-    },
-    "menuSaveUnpinnedTabs": {
-        "message": "固定解除されたタブを保存する",
-        "description": "メニュー項目: '固定解除されたタブを保存する'"
-    },
-    "menuSaveAllTabs": {
-        "message": "すべてのタブを保存",
-        "description": "メニュー項目: 'すべてのタブを保存'"
-    },
-    "menuAutoSave": {
-        "message": "自動保存",
-        "description": "メニュー項目: '自動保存'"
-    },
-    "menuAutoSaveDisabled": {
-        "message": "無効",
-        "description": "メニュー項目: '自動保存' > 無効'"
-    },
-    "menuAutoSaveTab": {
-        "message": "このタブを自動保存する",
-        "description": "メニュー項目: '自動保存' > このタブを自動保存する'"
-    },
-    "menuAutoSaveUnpinnedTabs": {
-        "message": "固定解除されたタブの自動保存",
-        "description": "メニュー項目: '自動保存' > 固定解除されたタブの自動保存'"
-    },
-    "menuAutoSaveAllTabs": {
-        "message": "すべてのタブを自動的に保存する",
-        "description": "メニュー項目: '自動保存' > すべてのタブを自動的に保存する'"
-    },
-    "buttonDefaultTooltip": {
-        "message": "SingleFile でページを保存",
-        "description": "ボタンのタイトル: 'SingleFile でページを保存'"
-    },
-    "buttonInitializingTooltip": {
-        "message": "SingleFile の初期化",
-        "description": "初期化中のボタンのタイトル: 'SingleFile の初期化 (x/2)'"
-    },
-    "buttonInitializingBadge": {
-        "message": "•••",
-        "description": "初期化中のバッジラベル: '•••'"
-    },
-    "buttonSaveProgressTooltip": {
-        "message": "進行状況を保存: ",
-        "description": "保存中のボタンのタイトル: '進行状況を保存: xx%'"
-    },
-    "buttonOKBadge": {
-        "message": "OK",
-        "description": "バッジラベル: 'OK'"
-    },
-    "buttonErrorBadge": {
-        "message": "エラー",
-        "description": "予期しないエラーのバッジラベル"
-    },
-    "buttonAutoSaveActiveTooltip": {
-        "message": "有効な自動保存",
-        "description": "ボタンのタイトル: '有効な自動保存'"
-    },
-    "buttonAutoSaveActiveBadge": {
-        "message": "[A]",
-        "description": "自動保存が有効な場合のバッジラベル"
-    },
-    "optionsTitle": {
-        "message": "オプション(設定)",
-        "description": "オプションのページタイトル"
-    },
-    "optionsUserInterfaceSubTitle": {
-        "message": "ユーザーインターフェイス(表示)",
-        "description": "オプションのサブタイトル: 'ユーザーインターフェイス(表示)'"
-    },
-    "optionAddMenuEntry": {
-        "message": "ウェブページのコンテキストメニューにエントリを追加する",
-        "description": "オプションのページラベル: 'ウェブページのコンテキストメニューにエントリを追加する'"
-    },
-    "optionDisplayShadow": {
-        "message": "処理中のページに影を重ねる",
-        "description": "オプションのページラベル: '処理中のページに影を重ねる'"
-    },
-    "optionDisplayInfobar": {
-        "message": "保存したページを表示するときに情報バーを表示する",
-        "description": "オプションのページラベル: '保存したページを表示するときに情報バーを表示する'"
-    },
-    "optionInfobarTemplate": {
-        "message": "infobar コンテンツのテンプレート",
-        "description": "オプションのページラベル: 'infobar コンテンツのテンプレート'"
-    },
-    "optionConfirmInfobar": {
-        "message": "infobar のコンテンツを編集するためのプロンプトダイアログを開く",
-        "description": "オプションのページラベル: 'infobar のコンテンツを編集するためのプロンプトダイアログを開く'"
-    },
-    "optionsFileNameSubTitle": {
-        "message": "ファイル名",
-        "description": "オプションのサブタイトル: 'ファイル名'"
-    },
-    "optionFilenameTemplate": {
-        "message": "保存時の定形書式",
-        "description": "オプションのページラベル: '保存時の定形書式'"
-    },
-    "optionConfirmFilename": {
-        "message": "を開く(として保存する:ファイル名を確認するためのダイアログ)",
-        "description": "オプションのページラベル: 'を開く(として保存する:ファイル名を確認するためのダイアログ)'"
-    },
-    "optionFilenameConflictAction": {
-        "message": "ファイル名の競合を解決する",
-        "description": "Options page label: 'filename conflict resolution'"
-    },
-    "optionFilenameConflictActionUniquify": {
-        "message": "独自の名前を作成する",
-        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
-    },
-    "optionFilenameConflictActionOverwrite": {
-        "message": "既存のファイルを上書きする",
-        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
-    },
-    "optionFilenameConflictActionPrompt": {
-        "message": "名前を求めるプロンプト",
-        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
-    },
-    "optionsHTMLContentSubTitle": {
-        "message": "HTML コンテンツ",
-        "description": "オプションのサブタイトル: 'HTML コンテンツ'"
-    },
-    "optionCompressHTML": {
-        "message": "HTML コンテンツを圧縮する",
-        "description": "オプションのページラベル: 'HTML コンテンツを圧縮する'"
-    },
-    "optionRemoveImports": {
-        "message": "取り込んだ HTML を削除する",
-        "description": "オプションのページラベル: '取り込んだ HTML を削除する'"
-    },
-    "optionRemoveFrames": {
-        "message": "フレームを削除する",
-        "description": "オプションのページラベル: 'フレームを削除する'"
-    },
-    "optionRemoveHiddenElements": {
-        "message": "隠された要素を削除する",
-        "description": "オプションのページラベル: '隠された要素を削除する'"
-    },
-    "optionsImagesSubTitle": {
-        "message": "画像",
-        "description": "オプションのサブタイトル: '画像'"
-    },
-    "optionGroupDuplicateImages": {
-        "message": "オプション重複画像のグループ化",
-        "description": "Options page label: 'group duplicate images together'"
-    },
-    "optionLoadDeferredImages": {
-        "message": "遅延画像を保存する",
-        "description": "オプションのページラベル: '遅延画像を保存する'"
-    },
-    "optionLoadDeferredImagesMaxIdleTime": {
-        "message": "最大アイドル時間(秒)",
-        "description": "Options page label: 'maximum idle time (ms)'"
-    },
-    "optionRemoveAlternativeImages": {
-        "message": "代替画面解像度用の画像を削除します",
-        "description": "オプションのページラベル: '代替画面解像度用の画像を削除します'"
-    },
-    "optionsFontsSubTitle": {
-        "message": "フォント",
-        "description": "Options sub-title: 'Fonts'"
-    },
-    "optionRemoveUnusedFonts": {
-        "message": "未使用のフォントを削除する",
-        "description": "Options page label: 'remove unused fonts'"
-    },
-    "optionRemoveAlternativeFonts": {
-        "message": "代替フォントを削除する",
-        "description": "Options page label: 'remove alternative fonts'"
-    },
-    "optionsStylesheetsSubTitle": {
-        "message": "スタイルシート",
-        "description": "オプションのサブタイトル: 'スタイルシート'"
-    },
-    "optionCompressCSS": {
-        "message": "CSS コンテンツを圧縮する",
-        "description": "オプションのページラベル: 'CSS コンテンツを圧縮する'"
-    },
-    "optionRemoveUnusedStyles": {
-        "message": "未使用のスタイルを削除する",
-        "description": "Options page label: 'remove unused styles'"
-    },
-    "optionRemoveAlternativeMedias": {
-        "message": "代替デバイス用のスタイルシートを画面に表示しない",
-        "description": "オプションのページラベル: '代替デバイス用のスタイルシートを画面に表示しない'"
-    },
-    "optionsOtherResourcesSubTitle": {
-        "message": "その他の要素",
-        "description": "オプションのサブタイトル: 'その他の要素'"
-    },
-    "optionRemoveScripts": {
-        "message": "スクリプトを削除する",
-        "description": "オプションのページラベル: 'スクリプトを削除する'"
-    },
-    "optionRemoveVideo": {
-        "message": "ビデオソースを削除する",
-        "description": "オプションのページラベル: 'ビデオソースを削除する'"
-    },
-    "optionRemoveAudio": {
-        "message": "オーディオソースを削除する",
-        "description": "オプションのページラベル: 'オーディオソースを削除する'"
-    },
-    "optionsAutoSaveSubTitle": {
-        "message": "自動保存",
-        "description": "オプションのサブタイトル: '自動保存'"
-    },
-    "optionsAutoSettingsSubTitle": {
-        "message": "自動設定のルール",
-        "description": "Options sub-title: 'Auto-settings rules'"
-    },
-    "optionsDeleteDisplayedRulesConfirm": {
-        "message": "表示されているすべてのルールの削除を確認します",
-        "description": "Popup text 'Confirm deletion of all displayed rules'"
-    },
-    "optionsDeleteRulesTooltip": {
-        "message": "表示されているすべてのルールを削除する",
-        "description": "Popup text 'Delete all displayed rules'"
-    },
-    "optionsAutoSettingsUrl": {
-        "message": "URL",
-        "description": "Options label in the auto-settings rules: 'URL'"
-    },
-    "optionsAutoSettingsUrlPlaceholder": {
-        "message": "完全または部分的な URL を入力します (例 example.com)",
-        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
-    },
-    "optionsAutoSettingsProfile": {
-        "message": "プロファイル",
-        "description": "Options label in the Auto-settings rules: 'Profile'"
-    },
-    "optionsAutoSettingsAutoSaveProfile": {
-        "message": "プロファイルの自動保存",
-        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
-    },
-    "optionsAutoSettingsShowAllProfiles": {
-        "message": "すべてのプロファイルを表示します",
-        "description": "Options label in the Auto-settings rules: 'display all profiles'"
-    },
-    "optionsAutoSettingsShowAutoSaveProfile": {
-        "message": "「プロファイルの自動保存」列を表示する",
-        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
-    },
-    "optionsUpdateRuleTooltip": {
-        "message": "ルールを更新する",
-        "description": "Popup text 'Update the rule' in the options page"
-    },
-    "optionsDeleteRuleTooltip": {
-        "message": "ルールを削除する",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsAddRuleTooltip": {
-        "message": "ルールを追加する",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsValidateChangesTooltip": {
-        "message": "変更内容を検証します",
-        "description": "Popup text 'Validate changes' in the options page"
-    },
-    "optionsDeleteRuleConfirm": {
-        "message": "選択したルールの削除を確認する",
-        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
-    },
-    "optionAutoSaveLoadOrUnload": {
-        "message": "ページの読み込み後またはページの非読み込み時に自動保存",
-        "description": "ページの読み込み後またはページの非読み込み時に自動保存"
-    },
-    "optionAutoSaveLoad": {
-        "message": "ページ読み込み後の自動保存",
-        "description": "オプションのページラベル: 'ページ読み込み後の自動保存'"
-    },
-    "optionAutoSaveUnload": {
-        "message": "ページの非読み込み時に自動保存",
-        "description": "オプションのページラベル: 'ページの非読み込み時に自動保存'"
-    },
-    "optionAutoSaveDelay": {
-        "message": "ページ読み込み後の自動保存待ち時間(秒)",
-        "description": "オプションのページラベル: 'ページ読み込み後の自動保存待ち時間(秒)'"
-    },
-    "optionsMiscSubTitle": {
-        "message": "その他",
-        "description": "オプションのサブタイトル: 'その他'"
-    },
-    "optionBackgroundSave": {
-        "message": "バックグラウンドでページを保存する",
-        "description": "オプションのページラベル: 'バックグラウンドでページを保存する'"
-    },
-    "optionDisplayStats": {
-        "message": "処理後、コンソールに統計情報を表示する",
-        "description": "オプションのページラベル: '処理後、コンソールに統計情報を表示する'"
-    },
-    "optionSetMaxResourceSize": {
-        "message": "埋め込み要素の最大サイズを設定する",
-        "description": "オプションのページラベル: '埋め込み要素の最大サイズを設定する'"
-    },
-    "optionMaxResourceSize": {
-        "message": "最大サイズ(MB)",
-        "description": "オプションのページラベル: '最大サイズ(MB)'"
-    },
-    "optionSaveRawPage": {
-        "message": "生のページを保存",
-        "description": "オプションのページラベル: '生のページを保存'"
-    },
-    "optionsHelpLink": {
-        "message": "ヘルプ",
-        "description": "オプションの「ヘルプ」リンク"
-    },
-    "optionsResetButton": {
-        "message": "リセット",
-        "description": "オプションボタン: 'リセット'"
-    },
-    "optionsResetTooltip": {
-        "message": "すべてのオプションを規定値にリセットする",
-        "description": "オプション 'リセット'ボタンのツールチップ"
-    },
-    "optionsResetConfirm": {
-        "message": "すべてのオプションまたは現在のプロファイルのリセットを確認します",
-        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
-    },
-    "optionsResetAllButton": {
-        "message": "すべてのオプションをリセットする",
-        "description": "Options confirm button: 'Reset all options'"
-    },
-    "optionsResetCurrentButton": {
-        "message": "現在のプロファイルをリセットする",
-        "description": "Options confirm button: 'Reset current profile'"
-    },
-    "optionsOKButton": {
-        "message": "OK",
-        "description": "Options confirm button: 'OK'"
-    },
-    "optionsCancelButton": {
-        "message": "キャンセル",
-        "description": "Options confirm button: 'Cancel'"
-    },
-    "optionsExportButton": {
-        "message": "エクスポート",
-        "description": "Options button: 'Export'"
-    },
-    "optionsImportButton": {
-        "message": "インポート",
-        "description": "Options button: 'Import'"
-    },
-    "logPanelDeferredImages": {
-        "message": "遅延画像",
-        "description": "Label 'Deferred images' in the log panel"
-    },
-    "logPanelFrameContents": {
-        "message": "フレームの内容",
-        "description": "Label 'Frame contents' in the log panel"
-    },
-    "logPanelStep": {
-        "message": "ステップ",
-        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
-    },
-    "logPanelWidth": {
-        "message": "110",
-        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
-    },
-    "profileDefaultSettings": {
-        "message": "デフォルトの設定",
-        "description": "Label 'Default settings' of the default settings in the options page"
-    },
-    "profileDisabled": {
-        "message": "無効",
-        "description": "Label 'Disabled' of the disabled profile name in the options page"
-    },
-    "profileAddButtonTooltip": {
-        "message": "新しいプロファイルを追加します",
-        "description": "Tooltip 'Add a new profile' in the options page"
-    },
-    "profileRenameButtonTooltip": {
-        "message": "プロファイルの名前を変更する",
-        "description": "Tooltip 'Rename the profile' in the options page"
-    },
-    "profileDeleteButtonTooltip": {
-        "message": "プロファイルを削除する",
-        "description": "Tooltip 'Delete the profile' in the options page"
-    },
-    "profileAddPrompt": {
-        "message": "この新しいプロファイルの名前を入力します。",
-        "description": "Popup text 'Enter a name for this new profile' in the options page"
-    },
-    "profileDeleteConfirm": {
-        "message": "選択したプロファイルの削除を確認する",
-        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
-    },
-    "profileRenamePrompt": {
-        "message": "選択したプロファイルの新しい名前を入力します。",
-        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
-    }
+{
+    "extensionDescription": {
+        "message": "完全なページを単一の HTML ファイルに保存する",
+        "description": "拡張機能の説明。"
+    },
+    "menuSavePage": {
+        "message": "SingleFile でページを保存",
+        "description": "メニュー項目: 'SingleFile でページを保存'"
+    },
+    "menuSelectProfile": {
+        "message": "規定(default)のプロファイルを選択",
+        "description": "Menu entry: 'Select the default profile'"
+    },
+    "menuUpdateRule": {
+        "message": "現在のルールのプロファイルを選択",
+        "description": "Menu entry: 'Select the profile of the current rule'"
+    },
+    "menuCreateDomainRule": {
+        "message": "現在のドメインのプロファイルを選択",
+        "description": "Menu entry: 'Select the profile of the current domain'"
+    },
+    "menuSaveTabs": {
+        "message": "タブを保存",
+        "description": "Menu entry (SingleFile button only): 'Save tabs'"
+    },
+    "menuSaveSelection": {
+        "message": "選択を保存",
+        "description": "メニュー項目: '選択を保存'"
+    },
+    "menuSaveFrame": {
+        "message": "フレームを保存",
+        "description": "メニュー項目: 'フレームを保存'"
+    },
+    "menuSaveSelectedTabs": {
+        "message": "選択したタブを保存",
+        "description": "メニュー項目: '選択したタブを保存'"
+    },
+    "menuSaveUnpinnedTabs": {
+        "message": "固定解除されたタブを保存する",
+        "description": "メニュー項目: '固定解除されたタブを保存する'"
+    },
+    "menuSaveAllTabs": {
+        "message": "すべてのタブを保存",
+        "description": "メニュー項目: 'すべてのタブを保存'"
+    },
+    "menuAutoSave": {
+        "message": "自動保存",
+        "description": "メニュー項目: '自動保存'"
+    },
+    "menuAutoSaveDisabled": {
+        "message": "無効",
+        "description": "メニュー項目: '自動保存' > 無効'"
+    },
+    "menuAutoSaveTab": {
+        "message": "このタブを自動保存する",
+        "description": "メニュー項目: '自動保存' > このタブを自動保存する'"
+    },
+    "menuAutoSaveUnpinnedTabs": {
+        "message": "固定解除されたタブの自動保存",
+        "description": "メニュー項目: '自動保存' > 固定解除されたタブの自動保存'"
+    },
+    "menuAutoSaveAllTabs": {
+        "message": "すべてのタブを自動的に保存する",
+        "description": "メニュー項目: '自動保存' > すべてのタブを自動的に保存する'"
+    },
+    "buttonDefaultTooltip": {
+        "message": "SingleFile でページを保存",
+        "description": "ボタンのタイトル: 'SingleFile でページを保存'"
+    },
+    "buttonInitializingTooltip": {
+        "message": "SingleFile の初期化",
+        "description": "初期化中のボタンのタイトル: 'SingleFile の初期化 (x/2)'"
+    },
+    "buttonInitializingBadge": {
+        "message": "•••",
+        "description": "初期化中のバッジラベル: '•••'"
+    },
+    "buttonSaveProgressTooltip": {
+        "message": "進行状況を保存: ",
+        "description": "保存中のボタンのタイトル: '進行状況を保存: xx%'"
+    },
+    "buttonOKBadge": {
+        "message": "OK",
+        "description": "バッジラベル: 'OK'"
+    },
+    "buttonErrorBadge": {
+        "message": "エラー",
+        "description": "予期しないエラーのバッジラベル"
+    },
+    "buttonAutoSaveActiveTooltip": {
+        "message": "有効な自動保存",
+        "description": "ボタンのタイトル: '有効な自動保存'"
+    },
+    "buttonAutoSaveActiveBadge": {
+        "message": "[A]",
+        "description": "自動保存が有効な場合のバッジラベル"
+    },
+    "optionsTitle": {
+        "message": "オプション(設定)",
+        "description": "オプションのページタイトル"
+    },
+    "optionsUserInterfaceSubTitle": {
+        "message": "ユーザーインターフェイス(表示)",
+        "description": "オプションのサブタイトル: 'ユーザーインターフェイス(表示)'"
+    },
+    "optionAddMenuEntry": {
+        "message": "ウェブページのコンテキストメニューにエントリを追加する",
+        "description": "オプションのページラベル: 'ウェブページのコンテキストメニューにエントリを追加する'"
+    },
+    "optionDisplayShadow": {
+        "message": "処理中のページに影を重ねる",
+        "description": "オプションのページラベル: '処理中のページに影を重ねる'"
+    },
+    "optionDisplayInfobar": {
+        "message": "保存したページを表示するときに情報バーを表示する",
+        "description": "オプションのページラベル: '保存したページを表示するときに情報バーを表示する'"
+    },
+    "optionInfobarTemplate": {
+        "message": "infobar コンテンツのテンプレート",
+        "description": "オプションのページラベル: 'infobar コンテンツのテンプレート'"
+    },
+    "optionConfirmInfobar": {
+        "message": "infobar のコンテンツを編集するためのプロンプトダイアログを開く",
+        "description": "オプションのページラベル: 'infobar のコンテンツを編集するためのプロンプトダイアログを開く'"
+    },
+    "optionsFileNameSubTitle": {
+        "message": "ファイル名",
+        "description": "オプションのサブタイトル: 'ファイル名'"
+    },
+    "optionFilenameTemplate": {
+        "message": "保存時の定形書式",
+        "description": "オプションのページラベル: '保存時の定形書式'"
+    },
+    "optionConfirmFilename": {
+        "message": "を開く(として保存する:ファイル名を確認するためのダイアログ)",
+        "description": "オプションのページラベル: 'を開く(として保存する:ファイル名を確認するためのダイアログ)'"
+    },
+    "optionFilenameConflictAction": {
+        "message": "ファイル名の競合を解決する",
+        "description": "Options page label: 'filename conflict resolution'"
+    },
+    "optionFilenameConflictActionUniquify": {
+        "message": "独自の名前を作成する",
+        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
+    },
+    "optionFilenameConflictActionOverwrite": {
+        "message": "既存のファイルを上書きする",
+        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
+    },
+    "optionFilenameConflictActionPrompt": {
+        "message": "名前を求めるプロンプト",
+        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
+    },
+    "optionsHTMLContentSubTitle": {
+        "message": "HTML コンテンツ",
+        "description": "オプションのサブタイトル: 'HTML コンテンツ'"
+    },
+    "optionCompressHTML": {
+        "message": "HTML コンテンツを圧縮する",
+        "description": "オプションのページラベル: 'HTML コンテンツを圧縮する'"
+    },
+    "optionRemoveImports": {
+        "message": "取り込んだ HTML を削除する",
+        "description": "オプションのページラベル: '取り込んだ HTML を削除する'"
+    },
+    "optionRemoveFrames": {
+        "message": "フレームを削除する",
+        "description": "オプションのページラベル: 'フレームを削除する'"
+    },
+    "optionRemoveHiddenElements": {
+        "message": "隠された要素を削除する",
+        "description": "オプションのページラベル: '隠された要素を削除する'"
+    },
+    "optionsImagesSubTitle": {
+        "message": "画像",
+        "description": "オプションのサブタイトル: '画像'"
+    },
+    "optionGroupDuplicateImages": {
+        "message": "オプション重複画像のグループ化",
+        "description": "Options page label: 'group duplicate images together'"
+    },
+    "optionLoadDeferredImages": {
+        "message": "遅延画像を保存する",
+        "description": "オプションのページラベル: '遅延画像を保存する'"
+    },
+    "optionLoadDeferredImagesMaxIdleTime": {
+        "message": "最大アイドル時間(秒)",
+        "description": "Options page label: 'maximum idle time (ms)'"
+    },
+    "optionRemoveAlternativeImages": {
+        "message": "代替画面解像度用の画像を削除します",
+        "description": "オプションのページラベル: '代替画面解像度用の画像を削除します'"
+    },
+    "optionsFontsSubTitle": {
+        "message": "フォント",
+        "description": "Options sub-title: 'Fonts'"
+    },
+    "optionRemoveUnusedFonts": {
+        "message": "未使用のフォントを削除する",
+        "description": "Options page label: 'remove unused fonts'"
+    },
+    "optionRemoveAlternativeFonts": {
+        "message": "代替フォントを削除する",
+        "description": "Options page label: 'remove alternative fonts'"
+    },
+    "optionsStylesheetsSubTitle": {
+        "message": "スタイルシート",
+        "description": "オプションのサブタイトル: 'スタイルシート'"
+    },
+    "optionCompressCSS": {
+        "message": "CSS コンテンツを圧縮する",
+        "description": "オプションのページラベル: 'CSS コンテンツを圧縮する'"
+    },
+    "optionRemoveUnusedStyles": {
+        "message": "未使用のスタイルを削除する",
+        "description": "Options page label: 'remove unused styles'"
+    },
+    "optionRemoveAlternativeMedias": {
+        "message": "代替デバイス用のスタイルシートを画面に表示しない",
+        "description": "オプションのページラベル: '代替デバイス用のスタイルシートを画面に表示しない'"
+    },
+    "optionsOtherResourcesSubTitle": {
+        "message": "その他の要素",
+        "description": "オプションのサブタイトル: 'その他の要素'"
+    },
+    "optionRemoveScripts": {
+        "message": "スクリプトを削除する",
+        "description": "オプションのページラベル: 'スクリプトを削除する'"
+    },
+    "optionRemoveVideo": {
+        "message": "ビデオソースを削除する",
+        "description": "オプションのページラベル: 'ビデオソースを削除する'"
+    },
+    "optionRemoveAudio": {
+        "message": "オーディオソースを削除する",
+        "description": "オプションのページラベル: 'オーディオソースを削除する'"
+    },
+    "optionsAutoSaveSubTitle": {
+        "message": "自動保存",
+        "description": "オプションのサブタイトル: '自動保存'"
+    },
+    "optionsAutoSettingsSubTitle": {
+        "message": "自動設定のルール",
+        "description": "Options sub-title: 'Auto-settings rules'"
+    },
+    "optionsDeleteDisplayedRulesConfirm": {
+        "message": "表示されているすべてのルールの削除を確認します",
+        "description": "Popup text 'Confirm deletion of all displayed rules'"
+    },
+    "optionsDeleteRulesTooltip": {
+        "message": "表示されているすべてのルールを削除する",
+        "description": "Popup text 'Delete all displayed rules'"
+    },
+    "optionsAutoSettingsUrl": {
+        "message": "URL",
+        "description": "Options label in the auto-settings rules: 'URL'"
+    },
+    "optionsAutoSettingsUrlPlaceholder": {
+        "message": "完全または部分的な URL を入力します (例 example.com)",
+        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
+    },
+    "optionsAutoSettingsProfile": {
+        "message": "プロファイル",
+        "description": "Options label in the Auto-settings rules: 'Profile'"
+    },
+    "optionsAutoSettingsAutoSaveProfile": {
+        "message": "プロファイルの自動保存",
+        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
+    },
+    "optionsAutoSettingsShowAllProfiles": {
+        "message": "すべてのプロファイルを表示します",
+        "description": "Options label in the Auto-settings rules: 'display all profiles'"
+    },
+    "optionsAutoSettingsShowAutoSaveProfile": {
+        "message": "「プロファイルの自動保存」列を表示する",
+        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
+    },
+    "optionsUpdateRuleTooltip": {
+        "message": "ルールを更新する",
+        "description": "Popup text 'Update the rule' in the options page"
+    },
+    "optionsDeleteRuleTooltip": {
+        "message": "ルールを削除する",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsAddRuleTooltip": {
+        "message": "ルールを追加する",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsValidateChangesTooltip": {
+        "message": "変更内容を検証します",
+        "description": "Popup text 'Validate changes' in the options page"
+    },
+    "optionsDeleteRuleConfirm": {
+        "message": "選択したルールの削除を確認する",
+        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
+    },
+    "optionAutoSaveLoadOrUnload": {
+        "message": "ページの読み込み後またはページの非読み込み時に自動保存",
+        "description": "ページの読み込み後またはページの非読み込み時に自動保存"
+    },
+    "optionAutoSaveLoad": {
+        "message": "ページ読み込み後の自動保存",
+        "description": "オプションのページラベル: 'ページ読み込み後の自動保存'"
+    },
+    "optionAutoSaveUnload": {
+        "message": "ページの非読み込み時に自動保存",
+        "description": "オプションのページラベル: 'ページの非読み込み時に自動保存'"
+    },
+    "optionAutoSaveDelay": {
+        "message": "ページ読み込み後の自動保存待ち時間(秒)",
+        "description": "オプションのページラベル: 'ページ読み込み後の自動保存待ち時間(秒)'"
+    },
+    "optionAutoSaveRepeat": {
+        "message": "auto-save periodically",
+        "description": "Options page label: 'auto-save periodically'"
+    },
+    "optionAutoSaveRepeatDelay": {
+        "message": "period (sec.)",
+        "description": "Options page label: 'period (sec.)'"
+    },
+    "optionsMiscSubTitle": {
+        "message": "その他",
+        "description": "オプションのサブタイトル: 'その他'"
+    },
+    "optionBackgroundSave": {
+        "message": "バックグラウンドでページを保存する",
+        "description": "オプションのページラベル: 'バックグラウンドでページを保存する'"
+    },
+    "optionDisplayStats": {
+        "message": "処理後、コンソールに統計情報を表示する",
+        "description": "オプションのページラベル: '処理後、コンソールに統計情報を表示する'"
+    },
+    "optionSetMaxResourceSize": {
+        "message": "埋め込み要素の最大サイズを設定する",
+        "description": "オプションのページラベル: '埋め込み要素の最大サイズを設定する'"
+    },
+    "optionMaxResourceSize": {
+        "message": "最大サイズ(MB)",
+        "description": "オプションのページラベル: '最大サイズ(MB)'"
+    },
+    "optionSaveRawPage": {
+        "message": "生のページを保存",
+        "description": "オプションのページラベル: '生のページを保存'"
+    },
+    "optionsHelpLink": {
+        "message": "ヘルプ",
+        "description": "オプションの「ヘルプ」リンク"
+    },
+    "optionsResetButton": {
+        "message": "リセット",
+        "description": "オプションボタン: 'リセット'"
+    },
+    "optionsResetTooltip": {
+        "message": "すべてのオプションを規定値にリセットする",
+        "description": "オプション 'リセット'ボタンのツールチップ"
+    },
+    "optionsResetConfirm": {
+        "message": "すべてのオプションまたは現在のプロファイルのリセットを確認します",
+        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
+    },
+    "optionsResetAllButton": {
+        "message": "すべてのオプションをリセットする",
+        "description": "Options confirm button: 'Reset all options'"
+    },
+    "optionsResetCurrentButton": {
+        "message": "現在のプロファイルをリセットする",
+        "description": "Options confirm button: 'Reset current profile'"
+    },
+    "optionsOKButton": {
+        "message": "OK",
+        "description": "Options confirm button: 'OK'"
+    },
+    "optionsCancelButton": {
+        "message": "キャンセル",
+        "description": "Options confirm button: 'Cancel'"
+    },
+    "optionsExportButton": {
+        "message": "エクスポート",
+        "description": "Options button: 'Export'"
+    },
+    "optionsImportButton": {
+        "message": "インポート",
+        "description": "Options button: 'Import'"
+    },
+    "logPanelDeferredImages": {
+        "message": "遅延画像",
+        "description": "Label 'Deferred images' in the log panel"
+    },
+    "logPanelFrameContents": {
+        "message": "フレームの内容",
+        "description": "Label 'Frame contents' in the log panel"
+    },
+    "logPanelStep": {
+        "message": "ステップ",
+        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
+    },
+    "logPanelWidth": {
+        "message": "110",
+        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
+    },
+    "profileDefaultSettings": {
+        "message": "デフォルトの設定",
+        "description": "Label 'Default settings' of the default settings in the options page"
+    },
+    "profileDisabled": {
+        "message": "無効",
+        "description": "Label 'Disabled' of the disabled profile name in the options page"
+    },
+    "profileAddButtonTooltip": {
+        "message": "新しいプロファイルを追加します",
+        "description": "Tooltip 'Add a new profile' in the options page"
+    },
+    "profileRenameButtonTooltip": {
+        "message": "プロファイルの名前を変更する",
+        "description": "Tooltip 'Rename the profile' in the options page"
+    },
+    "profileDeleteButtonTooltip": {
+        "message": "プロファイルを削除する",
+        "description": "Tooltip 'Delete the profile' in the options page"
+    },
+    "profileAddPrompt": {
+        "message": "この新しいプロファイルの名前を入力します。",
+        "description": "Popup text 'Enter a name for this new profile' in the options page"
+    },
+    "profileDeleteConfirm": {
+        "message": "選択したプロファイルの削除を確認する",
+        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
+    },
+    "profileRenamePrompt": {
+        "message": "選択したプロファイルの新しい名前を入力します。",
+        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
+    }
 }

+ 433 - 425
_locales/pl/messages.json

@@ -1,426 +1,434 @@
-{
-    "extensionDescription": {
-        "message": "Zapisuj kompletną stronę w pojedynczym pliku HTML.",
-        "description": "Description of the extension."
-    },
-    "menuSavePage": {
-        "message": "Zapisz stronę z SingleFile",
-        "description": "Menu entry: 'Save page with SingleFile'"
-    },
-    "menuSelectProfile": {
-        "message": "Wybierz profil domyślny",
-        "description": "Menu entry: 'Select the default profile'"
-    },
-    "menuUpdateRule": {
-        "message": "Wybierz profil bieżącej reguły",
-        "description": "Menu entry: 'Select the profile of the current rule'"
-    },
-    "menuCreateDomainRule": {
-        "message": "Wybierz profil bieżącej domeny",
-        "description": "Menu entry: 'Select the profile of the current domain'"
-    },
-    "menuSaveSelection": {
-        "message": "Zapisz wybór",
-        "description": "Menu entry: 'Save selection'"
-    },
-    "menuSaveFrame": {
-        "message": "Zapisz ramkę",
-        "description": "Menu entry: 'Save frame'"
-    },
-    "menuSaveTabs": {
-        "message": "Zapisz karty",
-        "description": "Menu entry (SingleFile button only): 'Save tabs'"
-    },
-    "menuSaveSelectedTabs": {
-        "message": "Zapisz wybrane karty",
-        "description": "Menu entry: 'Save selected tabs'"
-    },
-    "menuSaveUnpinnedTabs": {
-        "message": "Zapisz odpięte karty",
-        "description": "Menu entry: 'Save unpinned tabs'"
-    },
-    "menuSaveAllTabs": {
-        "message": "Zapisz wszystkie karty",
-        "description": "Menu entry: 'Save all tabs'"
-    },
-    "menuAutoSave": {
-        "message": "Automatyczny zapis",
-        "description": "Menu entry: 'Auto-save'"
-    },
-    "menuAutoSaveDisabled": {
-        "message": "Wyłączony",
-        "description": "Menu entry: 'Auto-save' > Disabled'"
-    },
-    "menuAutoSaveTab": {
-        "message": "Automatycznie zapisz tę kartę",
-        "description": "Menu entry: 'Auto-save' > Auto-save this tab'"
-    },
-    "menuAutoSaveUnpinnedTabs": {
-        "message": "Automatycznie zapisz odpięte karty",
-        "description": "Menu entry: 'Auto-save' > Auto-save unpinned tabs'"
-    },
-    "menuAutoSaveAllTabs": {
-        "message": "Automatycznie zapisz wszystkie karty",
-        "description": "Menu entry: 'Auto-save' > Auto-save all tabs'"
-    },
-    "buttonDefaultTooltip": {
-        "message": "Zapisz stronę z SingleFile",
-        "description": "Button title: 'Save page with SingleFile'"
-    },
-    "buttonInitializingTooltip": {
-        "message": "Inicjowanie SingleFile",
-        "description": "Button title during initialization: 'Initializing SingleFile (x/2)'"
-    },
-    "buttonInitializingBadge": {
-        "message": "•••",
-        "description": "Badge label during initialization: '•••'"
-    },
-    "buttonSaveProgressTooltip": {
-        "message": "Postęp zapisywania: ",
-        "description": "Button title during save: 'Save progress: xx%'"
-    },
-    "buttonOKBadge": {
-        "message": "OK",
-        "description": "Badge label: 'OK'"
-    },
-    "buttonErrorBadge": {
-        "message": "ERR",
-        "description": "Badge label for unexpected errors"
-    },
-    "buttonAutoSaveActiveTooltip": {
-        "message": "Automatyczny zapis aktywny",
-        "description": "Button title: 'Auto-save active'"
-    },
-    "buttonAutoSaveActiveBadge": {
-        "message": "[A]",
-        "description": "Badge label when auto-save is active"
-    },
-    "optionsTitle": {
-        "message": "Opcje",
-        "description": "Options page title"
-    },
-    "optionsUserInterfaceSubTitle": {
-        "message": "Interfejs użytkownika",
-        "description": "Options sub-title: 'User interface'"
-    },
-    "optionAddMenuEntry": {
-        "message": "dodawaj wpis w menu kontekstowym strony",
-        "description": "Options page label: 'add entry in the context menu of the webpage'"
-    },
-    "optionDisplayShadow": {
-        "message": "nakładaj cień na stronę podczas przetwarzania",
-        "description": "Options page label: 'overlay a shadow on the page during processing'"
-    },
-    "optionDisplayInfobar": {
-        "message": "wyświetlaj pasek informacyjny podczas przeglądania zapisanej strony",
-        "description": "Options page label: 'display an infobar when viewing a saved page'"
-    },
-    "optionInfobarTemplate": {
-        "message": "szablon zawartości paska informacyjnego",
-        "description": "Options page label: 'template of the infobar content'"
-    },
-    "optionConfirmInfobar": {
-        "message": "otwieraj okno dialogowe z monitem, aby edytować zawartość paska informacyjnego",
-        "description": "Options page label: 'open a prompt dialog to edit the infobar content'"
-    },
-    "optionsFileNameSubTitle": {
-        "message": "Nazwa pliku",
-        "description": "Options sub-title: 'File name'"
-    },
-    "optionFilenameTemplate": {
-        "message": "szablon",
-        "description": "Options page label: 'template'"
-    },
-    "optionConfirmFilename": {
-        "message": "otwieraj okno \"Zapisz jako\", aby potwierdzić nazwę pliku",
-        "description": "Options page label: 'open the \"Save as\" dialog to confirm the file name'"
-    },
-    "optionFilenameConflictAction": {
-        "message": "rozwiązywanie konfliktu nazwy pliku",
-        "description": "Options page label: 'filename conflict resolution'"
-    },
-    "optionFilenameConflictActionUniquify": {
-        "message": "stwórz unikalną nazwę pliku",
-        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
-    },
-    "optionFilenameConflictActionOverwrite": {
-        "message": "nadpisz istniejący plik",
-        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
-    },
-    "optionFilenameConflictActionPrompt": {
-        "message": "zapytaj o nazwę",
-        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
-    },
-    "optionsHTMLContentSubTitle": {
-        "message": "Zawartość HTML",
-        "description": "Options sub-title: 'HTML content'"
-    },
-    "optionCompressHTML": {
-        "message": "kompresuj zawartość HTML",
-        "description": "Options page label: 'compress HTML content'"
-    },
-    "optionRemoveImports": {
-        "message": "usuwaj importy HTML",
-        "description": "Options page label: 'remove HTML imports'"
-    },
-    "optionRemoveFrames": {
-        "message": "usuwaj ramki",
-        "description": "Options page label: 'remove frames'"
-    },
-    "optionRemoveHiddenElements": {
-        "message": "usuwaj ukryte elementy",
-        "description": "Options page label: 'remove hidden elements'"
-    },
-    "optionsImagesSubTitle": {
-        "message": "Obrazy",
-        "description": "Options sub-title: 'Images'"
-    },
-    "optionGroupDuplicateImages": {
-        "message": "grupuj zduplikowane obrazy razem",
-        "description": "Options page label: 'group duplicate images together'"
-    },
-    "optionLoadDeferredImages": {
-        "message": "zapisuj odroczone obrazy",
-        "description": "Options page label: 'save deferred images'"
-    },
-    "optionLoadDeferredImagesMaxIdleTime": {
-        "message": "maksymalny czas bezczynności (ms)",
-        "description": "Options page label: 'maximum idle time (ms)'"
-    },
-    "optionRemoveAlternativeImages": {
-        "message": "usuwaj obrazy dla alternatywnych rozdzielczości ekranu",
-        "description": "Options page label: 'remove images for alternative screen resolutions'"
-    },
-    "optionsFontsSubTitle": {
-        "message": "Czcionki",
-        "description": "Options sub-title: 'Fonts'"
-    },
-    "optionRemoveUnusedFonts": {
-        "message": "usuwaj nieużywane czcionki",
-        "description": "Options page label: 'remove unused fonts'"
-    },
-    "optionRemoveAlternativeFonts": {
-        "message": "usuwaj alternatywne czcionki",
-        "description": "Options page label: 'remove alternative fonts'"
-    },
-    "optionsStylesheetsSubTitle": {
-        "message": "Arkusze stylów",
-        "description": "Options sub-title: 'Stylesheets'"
-    },
-    "optionCompressCSS": {
-        "message": "kompresuj zawartość CSS",
-        "description": "Options page label: 'compress CSS content'"
-    },
-    "optionRemoveUnusedStyles": {
-        "message": "usuwaj nieużywane style",
-        "description": "Options page label: 'remove unused styles'"
-    },
-    "optionRemoveAlternativeMedias": {
-        "message": "usuwaj arkusze stylów dla urządzeń innych niż ekrany",
-        "description": "Options page label: 'remove stylesheets for alternative devices to screens'"
-    },
-    "optionsOtherResourcesSubTitle": {
-        "message": "Inne zasoby",
-        "description": "Options sub-title: 'Other resources'"
-    },
-    "optionRemoveScripts": {
-        "message": "usuwaj skrypty",
-        "description": "Options page label: 'remove scripts'"
-    },
-    "optionRemoveVideo": {
-        "message": "usuwaj źródła wideo",
-        "description": "Options page label: 'remove video sources'"
-    },
-    "optionRemoveAudio": {
-        "message": "usuwaj źródła audio",
-        "description": "Options page label: 'remove audio sources'"
-    },
-    "optionsAutoSaveSubTitle": {
-        "message": "Automatyczny zapis",
-        "description": "Options sub-title: 'Auto-save'"
-    },
-    "optionsAutoSettingsSubTitle": {
-        "message": "Reguły automatycznej konfiguracji",
-        "description": "Options sub-title: 'Auto-settings rules'"
-    },
-    "optionsDeleteDisplayedRulesConfirm": {
-        "message": "Potwierdź usunięcie wszystkich wyświetlanych reguł",
-        "description": "Popup text 'Confirm deletion of all displayed rules'"
-    },
-    "optionsDeleteRulesTooltip": {
-        "message": "Usuń wszystkie wyświetlane reguły",
-        "description": "Popup text 'Delete all displayed rules'"
-    },
-    "optionsAutoSettingsUrl": {
-        "message": "Adres URL",
-        "description": "Options label in the Auto-settings rules: 'URL'"
-    },
-    "optionsAutoSettingsUrlPlaceholder": {
-        "message": "Wpisz cały lub częściowy adres URL (np. example.com)",
-        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
-    },
-    "optionsAutoSettingsProfile": {
-        "message": "Profil",
-        "description": "Options label in the Auto-settings rules: 'Profile'"
-    },
-    "optionsAutoSettingsAutoSaveProfile": {
-        "message": "Automatyczny zapis profilu",
-        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
-    },
-    "optionsAutoSettingsShowAllProfiles": {
-        "message": "wyświetlaj wszystkie profile",
-        "description": "Options label in the Auto-settings rules: 'display all profiles'"
-    },
-    "optionsAutoSettingsShowAutoSaveProfile": {
-        "message": "wyświetlaj kolumnę 'Automatyczny zapis profilu'",
-        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
-    },
-    "optionsUpdateRuleTooltip": {
-        "message": "Uaktualnij regułę",
-        "description": "Popup text 'Update the rule' in the options page"
-    },
-    "optionsDeleteRuleTooltip": {
-        "message": "Usuń regułę",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsAddRuleTooltip": {
-        "message": "Dodaj regułę",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsValidateChangesTooltip": {
-        "message": "Zatwierdź zmiany",
-        "description": "Popup text 'Validate changes' in the options page"
-    },
-    "optionsDeleteRuleConfirm": {
-        "message": "Potwierdź usunięcie wybranej reguły",
-        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
-    },
-    "optionAutoSaveLoadOrUnload": {
-        "message": "automatycznie zapisuj po załadowaniu lub przy wyładowaniu strony",
-        "description": "auto-save after page load or on page unload"
-    },
-    "optionAutoSaveLoad": {
-        "message": "automatycznie zapisuj po załadowaniu strony",
-        "description": "Options page label: 'auto-save after page load'"
-    },
-    "optionAutoSaveUnload": {
-        "message": "automatycznie zapisuj przy wyładowaniu strony",
-        "description": "Options page label: 'auto-save on page unload'"
-    },
-    "optionAutoSaveDelay": {
-        "message": "opóźnienie oczekiwania automatycznego zapisywania po załadowaniu strony (s.)",
-        "description": "Options page label: 'auto-save waiting delay after page load (sec.)'"
-    },
-    "optionsMiscSubTitle": {
-        "message": "Różne",
-        "description": "Options sub-title: 'Misc.'"
-    },
-    "optionBackgroundSave": {
-        "message": "zapisuj strony w tle",
-        "description": "Options page label: 'save pages in background'"
-    },
-    "optionDisplayStats": {
-        "message": "wyświetlaj statystyki w konsoli po przetworzeniu",
-        "description": "Options page label: 'display stats in the console after processing'"
-    },
-    "optionSetMaxResourceSize": {
-        "message": "ustaw maksymalny rozmiar dla zasobów osadzonych",
-        "description": "Options page label: 'set a maximum size for embedded resources'"
-    },
-    "optionMaxResourceSize": {
-        "message": "maksymalny rozmiar (MB)",
-        "description": "Options page label: 'maximum size (MB)'"
-    },
-    "optionSaveRawPage": {
-        "message": "zapisuj surową stronę",
-        "description": "Options page label: 'save raw page'"
-    },
-    "optionsHelpLink": {
-        "message": "pomoc (w języku angielskim)",
-        "description": "Options help link"
-    },
-    "optionsResetButton": {
-        "message": "Resetuj",
-        "description": "Options button: 'Reset'"
-    },
-    "optionsResetTooltip": {
-        "message": "Zresetuj wszystkie opcje do ich wartości domyślnych",
-        "description": "Options 'Reset' button tooltip"
-    },
-    "optionsResetConfirm": {
-        "message": "Potwierdź zresetowanie wszystkich opcji lub bieżącego profilu",
-        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
-    },
-    "optionsResetAllButton": {
-        "message": "Zresetuj wszystkie opcje",
-        "description": "Options confirm button: 'Reset all options'"
-    },
-    "optionsResetCurrentButton": {
-        "message": "Zresetuj bieżący profil",
-        "description": "Options confirm button: 'Reset current profile'"
-    },
-    "optionsOKButton": {
-        "message": "OK",
-        "description": "Options confirm button: 'OK'"
-    },
-    "optionsCancelButton": {
-        "message": "Anuluj",
-        "description": "Options confirm button: 'Cancel'"
-    },
-    "optionsExportButton": {
-        "message": "Eksportuj",
-        "description": "Options button: 'Export'"
-    },
-    "optionsImportButton": {
-        "message": "Importuj",
-        "description": "Options button: 'Import'"
-    },
-    "logPanelDeferredImages": {
-        "message": "Odroczone obrazy",
-        "description": "Label 'Deferred images' in the log panel"
-    },
-    "logPanelFrameContents": {
-        "message": "Zawartość ramki",
-        "description": "Label 'Frame contents' in the log panel"
-    },
-    "logPanelStep": {
-        "message": "Krok",
-        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
-    },
-    "logPanelWidth": {
-        "message": "130",
-        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
-    },
-    "profileDefaultSettings": {
-        "message": "Ustawienia domyślne",
-        "description": "Label 'Default settings' of the default settings in the options page"
-    },
-    "profileDisabled": {
-        "message": "Wyłączony",
-        "description": "Label 'Disabled' of the disabled profile name in the options page"
-    },
-    "profileAddButtonTooltip": {
-        "message": "Dodaj nowy profil",
-        "description": "Tooltip 'Add a new profile' in the options page"
-    },
-    "profileRenameButtonTooltip": {
-        "message": "Zmień nazwę profilu",
-        "description": "Tooltip 'Rename the profile' in the options page"
-    },
-    "profileDeleteButtonTooltip": {
-        "message": "Usuń profil",
-        "description": "Tooltip 'Delete the profile' in the options page"
-    },
-    "profileAddPrompt": {
-        "message": "Wpisz nazwę tego nowego profilu",
-        "description": "Popup text 'Enter a name for this new profile' in the options page"
-    },
-    "profileDeleteConfirm": {
-        "message": "Potwierdź usunięcie wybranego profilu",
-        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
-    },
-    "profileRenamePrompt": {
-        "message": "Wpisz nową nazwę wybranego profilu",
-        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
-    }
+{
+    "extensionDescription": {
+        "message": "Zapisuj kompletną stronę w pojedynczym pliku HTML.",
+        "description": "Description of the extension."
+    },
+    "menuSavePage": {
+        "message": "Zapisz stronę z SingleFile",
+        "description": "Menu entry: 'Save page with SingleFile'"
+    },
+    "menuSelectProfile": {
+        "message": "Wybierz profil domyślny",
+        "description": "Menu entry: 'Select the default profile'"
+    },
+    "menuUpdateRule": {
+        "message": "Wybierz profil bieżącej reguły",
+        "description": "Menu entry: 'Select the profile of the current rule'"
+    },
+    "menuCreateDomainRule": {
+        "message": "Wybierz profil bieżącej domeny",
+        "description": "Menu entry: 'Select the profile of the current domain'"
+    },
+    "menuSaveSelection": {
+        "message": "Zapisz wybór",
+        "description": "Menu entry: 'Save selection'"
+    },
+    "menuSaveFrame": {
+        "message": "Zapisz ramkę",
+        "description": "Menu entry: 'Save frame'"
+    },
+    "menuSaveTabs": {
+        "message": "Zapisz karty",
+        "description": "Menu entry (SingleFile button only): 'Save tabs'"
+    },
+    "menuSaveSelectedTabs": {
+        "message": "Zapisz wybrane karty",
+        "description": "Menu entry: 'Save selected tabs'"
+    },
+    "menuSaveUnpinnedTabs": {
+        "message": "Zapisz odpięte karty",
+        "description": "Menu entry: 'Save unpinned tabs'"
+    },
+    "menuSaveAllTabs": {
+        "message": "Zapisz wszystkie karty",
+        "description": "Menu entry: 'Save all tabs'"
+    },
+    "menuAutoSave": {
+        "message": "Automatyczny zapis",
+        "description": "Menu entry: 'Auto-save'"
+    },
+    "menuAutoSaveDisabled": {
+        "message": "Wyłączony",
+        "description": "Menu entry: 'Auto-save' > Disabled'"
+    },
+    "menuAutoSaveTab": {
+        "message": "Automatycznie zapisz tę kartę",
+        "description": "Menu entry: 'Auto-save' > Auto-save this tab'"
+    },
+    "menuAutoSaveUnpinnedTabs": {
+        "message": "Automatycznie zapisz odpięte karty",
+        "description": "Menu entry: 'Auto-save' > Auto-save unpinned tabs'"
+    },
+    "menuAutoSaveAllTabs": {
+        "message": "Automatycznie zapisz wszystkie karty",
+        "description": "Menu entry: 'Auto-save' > Auto-save all tabs'"
+    },
+    "buttonDefaultTooltip": {
+        "message": "Zapisz stronę z SingleFile",
+        "description": "Button title: 'Save page with SingleFile'"
+    },
+    "buttonInitializingTooltip": {
+        "message": "Inicjowanie SingleFile",
+        "description": "Button title during initialization: 'Initializing SingleFile (x/2)'"
+    },
+    "buttonInitializingBadge": {
+        "message": "•••",
+        "description": "Badge label during initialization: '•••'"
+    },
+    "buttonSaveProgressTooltip": {
+        "message": "Postęp zapisywania: ",
+        "description": "Button title during save: 'Save progress: xx%'"
+    },
+    "buttonOKBadge": {
+        "message": "OK",
+        "description": "Badge label: 'OK'"
+    },
+    "buttonErrorBadge": {
+        "message": "ERR",
+        "description": "Badge label for unexpected errors"
+    },
+    "buttonAutoSaveActiveTooltip": {
+        "message": "Automatyczny zapis aktywny",
+        "description": "Button title: 'Auto-save active'"
+    },
+    "buttonAutoSaveActiveBadge": {
+        "message": "[A]",
+        "description": "Badge label when auto-save is active"
+    },
+    "optionsTitle": {
+        "message": "Opcje",
+        "description": "Options page title"
+    },
+    "optionsUserInterfaceSubTitle": {
+        "message": "Interfejs użytkownika",
+        "description": "Options sub-title: 'User interface'"
+    },
+    "optionAddMenuEntry": {
+        "message": "dodawaj wpis w menu kontekstowym strony",
+        "description": "Options page label: 'add entry in the context menu of the webpage'"
+    },
+    "optionDisplayShadow": {
+        "message": "nakładaj cień na stronę podczas przetwarzania",
+        "description": "Options page label: 'overlay a shadow on the page during processing'"
+    },
+    "optionDisplayInfobar": {
+        "message": "wyświetlaj pasek informacyjny podczas przeglądania zapisanej strony",
+        "description": "Options page label: 'display an infobar when viewing a saved page'"
+    },
+    "optionInfobarTemplate": {
+        "message": "szablon zawartości paska informacyjnego",
+        "description": "Options page label: 'template of the infobar content'"
+    },
+    "optionConfirmInfobar": {
+        "message": "otwieraj okno dialogowe z monitem, aby edytować zawartość paska informacyjnego",
+        "description": "Options page label: 'open a prompt dialog to edit the infobar content'"
+    },
+    "optionsFileNameSubTitle": {
+        "message": "Nazwa pliku",
+        "description": "Options sub-title: 'File name'"
+    },
+    "optionFilenameTemplate": {
+        "message": "szablon",
+        "description": "Options page label: 'template'"
+    },
+    "optionConfirmFilename": {
+        "message": "otwieraj okno \"Zapisz jako\", aby potwierdzić nazwę pliku",
+        "description": "Options page label: 'open the \"Save as\" dialog to confirm the file name'"
+    },
+    "optionFilenameConflictAction": {
+        "message": "rozwiązywanie konfliktu nazwy pliku",
+        "description": "Options page label: 'filename conflict resolution'"
+    },
+    "optionFilenameConflictActionUniquify": {
+        "message": "stwórz unikalną nazwę pliku",
+        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
+    },
+    "optionFilenameConflictActionOverwrite": {
+        "message": "nadpisz istniejący plik",
+        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
+    },
+    "optionFilenameConflictActionPrompt": {
+        "message": "zapytaj o nazwę",
+        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
+    },
+    "optionsHTMLContentSubTitle": {
+        "message": "Zawartość HTML",
+        "description": "Options sub-title: 'HTML content'"
+    },
+    "optionCompressHTML": {
+        "message": "kompresuj zawartość HTML",
+        "description": "Options page label: 'compress HTML content'"
+    },
+    "optionRemoveImports": {
+        "message": "usuwaj importy HTML",
+        "description": "Options page label: 'remove HTML imports'"
+    },
+    "optionRemoveFrames": {
+        "message": "usuwaj ramki",
+        "description": "Options page label: 'remove frames'"
+    },
+    "optionRemoveHiddenElements": {
+        "message": "usuwaj ukryte elementy",
+        "description": "Options page label: 'remove hidden elements'"
+    },
+    "optionsImagesSubTitle": {
+        "message": "Obrazy",
+        "description": "Options sub-title: 'Images'"
+    },
+    "optionGroupDuplicateImages": {
+        "message": "grupuj zduplikowane obrazy razem",
+        "description": "Options page label: 'group duplicate images together'"
+    },
+    "optionLoadDeferredImages": {
+        "message": "zapisuj odroczone obrazy",
+        "description": "Options page label: 'save deferred images'"
+    },
+    "optionLoadDeferredImagesMaxIdleTime": {
+        "message": "maksymalny czas bezczynności (ms)",
+        "description": "Options page label: 'maximum idle time (ms)'"
+    },
+    "optionRemoveAlternativeImages": {
+        "message": "usuwaj obrazy dla alternatywnych rozdzielczości ekranu",
+        "description": "Options page label: 'remove images for alternative screen resolutions'"
+    },
+    "optionsFontsSubTitle": {
+        "message": "Czcionki",
+        "description": "Options sub-title: 'Fonts'"
+    },
+    "optionRemoveUnusedFonts": {
+        "message": "usuwaj nieużywane czcionki",
+        "description": "Options page label: 'remove unused fonts'"
+    },
+    "optionRemoveAlternativeFonts": {
+        "message": "usuwaj alternatywne czcionki",
+        "description": "Options page label: 'remove alternative fonts'"
+    },
+    "optionsStylesheetsSubTitle": {
+        "message": "Arkusze stylów",
+        "description": "Options sub-title: 'Stylesheets'"
+    },
+    "optionCompressCSS": {
+        "message": "kompresuj zawartość CSS",
+        "description": "Options page label: 'compress CSS content'"
+    },
+    "optionRemoveUnusedStyles": {
+        "message": "usuwaj nieużywane style",
+        "description": "Options page label: 'remove unused styles'"
+    },
+    "optionRemoveAlternativeMedias": {
+        "message": "usuwaj arkusze stylów dla urządzeń innych niż ekrany",
+        "description": "Options page label: 'remove stylesheets for alternative devices to screens'"
+    },
+    "optionsOtherResourcesSubTitle": {
+        "message": "Inne zasoby",
+        "description": "Options sub-title: 'Other resources'"
+    },
+    "optionRemoveScripts": {
+        "message": "usuwaj skrypty",
+        "description": "Options page label: 'remove scripts'"
+    },
+    "optionRemoveVideo": {
+        "message": "usuwaj źródła wideo",
+        "description": "Options page label: 'remove video sources'"
+    },
+    "optionRemoveAudio": {
+        "message": "usuwaj źródła audio",
+        "description": "Options page label: 'remove audio sources'"
+    },
+    "optionsAutoSaveSubTitle": {
+        "message": "Automatyczny zapis",
+        "description": "Options sub-title: 'Auto-save'"
+    },
+    "optionsAutoSettingsSubTitle": {
+        "message": "Reguły automatycznej konfiguracji",
+        "description": "Options sub-title: 'Auto-settings rules'"
+    },
+    "optionsDeleteDisplayedRulesConfirm": {
+        "message": "Potwierdź usunięcie wszystkich wyświetlanych reguł",
+        "description": "Popup text 'Confirm deletion of all displayed rules'"
+    },
+    "optionsDeleteRulesTooltip": {
+        "message": "Usuń wszystkie wyświetlane reguły",
+        "description": "Popup text 'Delete all displayed rules'"
+    },
+    "optionsAutoSettingsUrl": {
+        "message": "Adres URL",
+        "description": "Options label in the Auto-settings rules: 'URL'"
+    },
+    "optionsAutoSettingsUrlPlaceholder": {
+        "message": "Wpisz cały lub częściowy adres URL (np. example.com)",
+        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
+    },
+    "optionsAutoSettingsProfile": {
+        "message": "Profil",
+        "description": "Options label in the Auto-settings rules: 'Profile'"
+    },
+    "optionsAutoSettingsAutoSaveProfile": {
+        "message": "Automatyczny zapis profilu",
+        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
+    },
+    "optionsAutoSettingsShowAllProfiles": {
+        "message": "wyświetlaj wszystkie profile",
+        "description": "Options label in the Auto-settings rules: 'display all profiles'"
+    },
+    "optionsAutoSettingsShowAutoSaveProfile": {
+        "message": "wyświetlaj kolumnę 'Automatyczny zapis profilu'",
+        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
+    },
+    "optionsUpdateRuleTooltip": {
+        "message": "Uaktualnij regułę",
+        "description": "Popup text 'Update the rule' in the options page"
+    },
+    "optionsDeleteRuleTooltip": {
+        "message": "Usuń regułę",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsAddRuleTooltip": {
+        "message": "Dodaj regułę",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsValidateChangesTooltip": {
+        "message": "Zatwierdź zmiany",
+        "description": "Popup text 'Validate changes' in the options page"
+    },
+    "optionsDeleteRuleConfirm": {
+        "message": "Potwierdź usunięcie wybranej reguły",
+        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
+    },
+    "optionAutoSaveLoadOrUnload": {
+        "message": "automatycznie zapisuj po załadowaniu lub przy wyładowaniu strony",
+        "description": "auto-save after page load or on page unload"
+    },
+    "optionAutoSaveLoad": {
+        "message": "automatycznie zapisuj po załadowaniu strony",
+        "description": "Options page label: 'auto-save after page load'"
+    },
+    "optionAutoSaveUnload": {
+        "message": "automatycznie zapisuj przy wyładowaniu strony",
+        "description": "Options page label: 'auto-save on page unload'"
+    },
+    "optionAutoSaveDelay": {
+        "message": "opóźnienie oczekiwania automatycznego zapisywania po załadowaniu strony (s.)",
+        "description": "Options page label: 'auto-save waiting delay after page load (sec.)'"
+    },
+    "optionAutoSaveRepeat": {
+        "message": "auto-save periodically",
+        "description": "Options page label: 'auto-save periodically'"
+    },
+    "optionAutoSaveRepeatDelay": {
+        "message": "period (sec.)",
+        "description": "Options page label: 'period (sec.)'"
+    },
+    "optionsMiscSubTitle": {
+        "message": "Różne",
+        "description": "Options sub-title: 'Misc.'"
+    },
+    "optionBackgroundSave": {
+        "message": "zapisuj strony w tle",
+        "description": "Options page label: 'save pages in background'"
+    },
+    "optionDisplayStats": {
+        "message": "wyświetlaj statystyki w konsoli po przetworzeniu",
+        "description": "Options page label: 'display stats in the console after processing'"
+    },
+    "optionSetMaxResourceSize": {
+        "message": "ustaw maksymalny rozmiar dla zasobów osadzonych",
+        "description": "Options page label: 'set a maximum size for embedded resources'"
+    },
+    "optionMaxResourceSize": {
+        "message": "maksymalny rozmiar (MB)",
+        "description": "Options page label: 'maximum size (MB)'"
+    },
+    "optionSaveRawPage": {
+        "message": "zapisuj surową stronę",
+        "description": "Options page label: 'save raw page'"
+    },
+    "optionsHelpLink": {
+        "message": "pomoc (w języku angielskim)",
+        "description": "Options help link"
+    },
+    "optionsResetButton": {
+        "message": "Resetuj",
+        "description": "Options button: 'Reset'"
+    },
+    "optionsResetTooltip": {
+        "message": "Zresetuj wszystkie opcje do ich wartości domyślnych",
+        "description": "Options 'Reset' button tooltip"
+    },
+    "optionsResetConfirm": {
+        "message": "Potwierdź zresetowanie wszystkich opcji lub bieżącego profilu",
+        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
+    },
+    "optionsResetAllButton": {
+        "message": "Zresetuj wszystkie opcje",
+        "description": "Options confirm button: 'Reset all options'"
+    },
+    "optionsResetCurrentButton": {
+        "message": "Zresetuj bieżący profil",
+        "description": "Options confirm button: 'Reset current profile'"
+    },
+    "optionsOKButton": {
+        "message": "OK",
+        "description": "Options confirm button: 'OK'"
+    },
+    "optionsCancelButton": {
+        "message": "Anuluj",
+        "description": "Options confirm button: 'Cancel'"
+    },
+    "optionsExportButton": {
+        "message": "Eksportuj",
+        "description": "Options button: 'Export'"
+    },
+    "optionsImportButton": {
+        "message": "Importuj",
+        "description": "Options button: 'Import'"
+    },
+    "logPanelDeferredImages": {
+        "message": "Odroczone obrazy",
+        "description": "Label 'Deferred images' in the log panel"
+    },
+    "logPanelFrameContents": {
+        "message": "Zawartość ramki",
+        "description": "Label 'Frame contents' in the log panel"
+    },
+    "logPanelStep": {
+        "message": "Krok",
+        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
+    },
+    "logPanelWidth": {
+        "message": "130",
+        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
+    },
+    "profileDefaultSettings": {
+        "message": "Ustawienia domyślne",
+        "description": "Label 'Default settings' of the default settings in the options page"
+    },
+    "profileDisabled": {
+        "message": "Wyłączony",
+        "description": "Label 'Disabled' of the disabled profile name in the options page"
+    },
+    "profileAddButtonTooltip": {
+        "message": "Dodaj nowy profil",
+        "description": "Tooltip 'Add a new profile' in the options page"
+    },
+    "profileRenameButtonTooltip": {
+        "message": "Zmień nazwę profilu",
+        "description": "Tooltip 'Rename the profile' in the options page"
+    },
+    "profileDeleteButtonTooltip": {
+        "message": "Usuń profil",
+        "description": "Tooltip 'Delete the profile' in the options page"
+    },
+    "profileAddPrompt": {
+        "message": "Wpisz nazwę tego nowego profilu",
+        "description": "Popup text 'Enter a name for this new profile' in the options page"
+    },
+    "profileDeleteConfirm": {
+        "message": "Potwierdź usunięcie wybranego profilu",
+        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
+    },
+    "profileRenamePrompt": {
+        "message": "Wpisz nową nazwę wybranego profilu",
+        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
+    }
 }

+ 434 - 426
_locales/ru/messages.json

@@ -1,426 +1,434 @@
-{
-    "extensionDescription": {
-        "message": "Сохранить полную страницу в одном HTML-файле",
-        "description": "Description of the extension."
-    },
-    "menuSavePage": {
-        "message": "Сохранить страницу с помощью SingleFile",
-        "description": "Menu entry: 'Save page with SingleFile'"
-    },
-    "menuSelectProfile": {
-        "message": "Выберите профиль по умолчанию",
-        "description": "Menu entry: 'Select the default profile'"
-    },
-    "menuUpdateRule": {
-        "message": "Выберите профиль текущего правила",
-        "description": "Menu entry: 'Select the profile of the current rule'"
-    },
-    "menuCreateDomainRule": {
-        "message": "Выберите профиль текущего домена",
-        "description": "Menu entry: 'Select the profile of the current domain'"
-    },
-    "menuSaveSelection": {
-        "message": "Сохранить выделенное",
-        "description": "Menu entry: 'Save selection'"
-    },
-    "menuSaveFrame": {
-        "message": "Сохранить фрейм",
-        "description": "Menu entry: 'Save frame'"
-    },
-    "menuSaveTabs": {
-        "message": "Сохранить вкладки",
-        "description": "Menu entry (SingleFile button only): 'Save tabs'"
-    },
-    "menuSaveSelectedTabs": {
-        "message": "Сохранить выбранные вкладки",
-        "description": "Menu entry: 'Save selected tabs'"
-    },
-    "menuSaveUnpinnedTabs": {
-        "message": "Сохранить незакрепленные вкладки",
-        "description": "Menu entry: 'Save unpinned tabs'"
-    },
-    "menuSaveAllTabs": {
-        "message": "Сохранить все вкладки",
-        "description": "Menu entry: 'Save all tabs'"
-    },
-    "menuAutoSave": {
-        "message": "Автосохранение",
-        "description": "Menu entry: 'Auto-save'"
-    },
-    "menuAutoSaveDisabled": {
-        "message": "Отключено",
-        "description": "Menu entry: 'Auto-save' > Disabled'"
-    },
-    "menuAutoSaveTab": {
-        "message": "Автосохранение этой вкладки",
-        "description": "Menu entry: 'Auto-save' > Auto-save this tab'"
-    },
-    "menuAutoSaveUnpinnedTabs": {
-        "message": "Автосохранение незакрепленных вкладок",
-        "description": "Menu entry: 'Auto-save' > Auto-save unpinned tabs'"
-    },
-    "menuAutoSaveAllTabs": {
-        "message": "Автосохранение всех вкладок",
-        "description": "Menu entry: 'Auto-save' > Auto-save all tabs'"
-    },
-    "buttonDefaultTooltip": {
-        "message": "Сохранить страницу с помощью SingleFile",
-        "description": "Button title: 'Save page with SingleFile'"
-    },
-    "buttonInitializingTooltip": {
-        "message": "Инициализация SingleFile",
-        "description": "Button title during initialization: 'Initializing SingleFile (x/2)'"
-    },
-    "buttonInitializingBadge": {
-        "message": "•••",
-        "description": "Badge label during initialization: '•••'"
-    },
-    "buttonSaveProgressTooltip": {
-        "message": "Прогресс сохранения: ",
-        "description": "Button title during save: 'Save progress: xx%'"
-    },
-    "buttonOKBadge": {
-        "message": "OK",
-        "description": "Badge label: 'OK'"
-    },
-    "buttonErrorBadge": {
-        "message": "ERR",
-        "description": "Badge label for unexpected errors"
-    },
-    "buttonAutoSaveActiveTooltip": {
-        "message": "Автосохранение активно",
-        "description": "Button title: 'Auto-save active'"
-    },
-    "buttonAutoSaveActiveBadge": {
-        "message": "[A]",
-        "description": "Badge label when auto-save is active"
-    },
-    "optionsTitle": {
-        "message": "Параметры",
-        "description": "Options page title"
-    },
-    "optionsUserInterfaceSubTitle": {
-        "message": "Пользовательский интерфейс",
-        "description": "Options sub-title: 'User interface'"
-    },
-    "optionAddMenuEntry": {
-        "message": "добавить пункт в контекстное меню веб-страницы",
-        "description": "Options page label: 'add entry in the context menu of the webpage'"
-    },
-    "optionDisplayShadow": {
-        "message": "накладывать тень на страницу во время обработки",
-        "description": "Options page label: 'overlay a shadow on the page during processing'"
-    },
-    "optionDisplayInfobar": {
-        "message": "отображать информационную панель при просмотре сохраненной страницы",
-        "description": "Options page label: 'display an infobar when viewing a saved page'"
-    },
-    "optionInfobarTemplate": {
-        "message": "шаблон содержимого информационной панели",
-        "description": "Options page label: 'template of the infobar content'"
-    },
-    "optionConfirmInfobar": {
-        "message": "открывать диалоговое окно для редактирования содержимого информационной панели",
-        "description": "Options page label: 'open a prompt dialog to edit the infobar content'"
-    },
-    "optionsFileNameSubTitle": {
-        "message": "Имя файла",
-        "description": "Options sub-title: 'File name'"
-    },
-    "optionFilenameTemplate": {
-        "message": "шаблон",
-        "description": "Options page label: 'template'"
-    },
-    "optionConfirmFilename": {
-        "message": "открывать диалоговое окно \"Сохранить как\" для подтверждения имени файла",
-        "description": "Options page label: 'open the \"Save as\" dialog to confirm the file name'"
-    },
-    "optionFilenameConflictAction": {
-        "message": "разрешение конфликтов имен файлов",
-        "description": "Options page label: 'filename conflict resolution'"
-    },
-    "optionFilenameConflictActionUniquify": {
-        "message": "создать уникальное имя",
-        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
-    },
-    "optionFilenameConflictActionOverwrite": {
-        "message": "перезаписать существующий файл",
-        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
-    },
-    "optionFilenameConflictActionPrompt": {
-        "message": "запросить имя",
-        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
-    },
-    "optionsHTMLContentSubTitle": {
-        "message": "HTML-контент",
-        "description": "Options sub-title: 'HTML content'"
-    },
-    "optionCompressHTML": {
-        "message": "сжать HTML-контент",
-        "description": "Options page label: 'compress HTML content'"
-    },
-    "optionRemoveImports": {
-        "message": "удалить HTML-импорт",
-        "description": "Options page label: 'remove HTML imports'"
-    },
-    "optionRemoveFrames": {
-        "message": "удалить фреймы",
-        "description": "Options page label: 'remove frames'"
-    },
-    "optionRemoveHiddenElements": {
-        "message": "удалить скрытые элементы",
-        "description": "Options page label: 'remove hidden elements'"
-    },
-    "optionsImagesSubTitle": {
-        "message": "Изображения",
-        "description": "Options sub-title: 'Images'"
-    },
-    "optionGroupDuplicateImages": {
-        "message": "группировать дубликаты изображений",
-        "description": "Options page label: 'group duplicate images together'"
-    },
-    "optionLoadDeferredImages": {
-        "message": "сохранить отложенные изображения",
-        "description": "Options page label: 'save deferred images'"
-    },
-    "optionLoadDeferredImagesMaxIdleTime": {
-        "message": "максимальное время простоя (мс)",
-        "description": "Options page label: 'maximum idle time (ms)'"
-    },
-    "optionRemoveAlternativeImages": {
-        "message": "удалить изображения для альтернативных разрешений экрана",
-        "description": "Options page label: 'remove images for alternative screen resolutions'"
-    },
-    "optionsFontsSubTitle": {
-        "message": "Шрифты",
-        "description": "Options sub-title: 'Fonts'"
-    },
-    "optionRemoveUnusedFonts": {
-        "message": "удалить неиспользуемые шрифты",
-        "description": "Options page label: 'remove unused fonts'"
-    },
-    "optionRemoveAlternativeFonts": {
-        "message": "удалить альтернативные шрифты",
-        "description": "Options page label: 'remove alternative fonts'"
-    },
-    "optionsStylesheetsSubTitle": {
-        "message": "Таблицы стилей",
-        "description": "Options sub-title: 'Stylesheets'"
-    },
-    "optionCompressCSS": {
-        "message": "сжать содержимое CSS",
-        "description": "Options page label: 'compress CSS content'"
-    },
-    "optionRemoveUnusedStyles": {
-        "message": "удалить неиспользуемые стили",
-        "description": "Options page label: 'remove unused styles'"
-    },
-    "optionRemoveAlternativeMedias": {
-        "message": "удалить таблицы стилей для экранов альтернативных устройств",
-        "description": "Options page label: 'remove stylesheets for alternative devices to screens'"
-    },
-    "optionsOtherResourcesSubTitle": {
-        "message": "Другие ресурсы",
-        "description": "Options sub-title: 'Other resources'"
-    },
-    "optionRemoveScripts": {
-        "message": "удалить скрипты",
-        "description": "Options page label: 'remove scripts'"
-    },
-    "optionRemoveVideo": {
-        "message": "удалить источники видео",
-        "description": "Options page label: 'remove video sources'"
-    },
-    "optionRemoveAudio": {
-        "message": "удалить источники аудио",
-        "description": "Options page label: 'remove audio sources'"
-    },
-    "optionsAutoSaveSubTitle": {
-        "message": "Автосохранение",
-        "description": "Options sub-title: 'Auto-save'"
-    },
-    "optionsAutoSettingsSubTitle": {
-        "message": "Правила автонастройки",
-        "description": "Options sub-title: 'Auto-settings rules'"
-    },
-    "optionsDeleteDisplayedRulesConfirm": {
-        "message": "Подтвердите удаление всех отображаемых правил",
-        "description": "Popup text 'Confirm deletion of all displayed rules'"
-    },
-    "optionsDeleteRulesTooltip": {
-        "message": "Удалить все отображаемые правила",
-        "description": "Popup text 'Delete all displayed rules'"
-    },
-    "optionsAutoSettingsUrl": {
-        "message": "URL",
-        "description": "Options label in the auto-settings rules: 'URL'"
-    },
-    "optionsAutoSettingsUrlPlaceholder": {
-        "message": "Введите полный или частичный URL (т.к. example.com)",
-        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
-    },
-    "optionsAutoSettingsProfile": {
-        "message": "Профиль",
-        "description": "Options label in the Auto-settings rules: 'Profile'"
-    },
-    "optionsAutoSettingsAutoSaveProfile": {
-        "message": "Профиль автосохранения",
-        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
-    },
-    "optionsAutoSettingsShowAllProfiles": {
-        "message": "показать все профили",
-        "description": "Options label in the Auto-settings rules: 'display all profiles'"
-    },
-    "optionsAutoSettingsShowAutoSaveProfile": {
-        "message": "отобразить столбец 'Профиль автосохранения'",
-        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
-    },
-    "optionsUpdateRuleTooltip": {
-        "message": "Обновить правило",
-        "description": "Popup text 'Update the rule' in the options page"
-    },
-    "optionsDeleteRuleTooltip": {
-        "message": "Удалить правило",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsAddRuleTooltip": {
-        "message": "Добавить правило",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsValidateChangesTooltip": {
-        "message": "Подтвердить изменения",
-        "description": "Popup text 'Validate changes' in the options page"
-    },
-    "optionsDeleteRuleConfirm": {
-        "message": "Подтвердите удаление выбранного правила",
-        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
-    },
-    "optionAutoSaveLoadOrUnload": {
-        "message": "автосохранение после загрузки или выгрузки страницы",
-        "description": "auto-save after page load or on page unload"
-    },
-    "optionAutoSaveLoad": {
-        "message": "автосохранение после загрузки страницы",
-        "description": "Options page label: 'auto-save after page load'"
-    },
-    "optionAutoSaveUnload": {
-        "message": "автосохранение после выгрузки страницы",
-        "description": "Options page label: 'auto-save on page unload'"
-    },
-    "optionAutoSaveDelay": {
-        "message": "задержка автосохранения после загрузки страницы (сек.)",
-        "description": "Options page label: 'auto-save waiting delay after page load (sec.)'"
-    },
-    "optionsMiscSubTitle": {
-        "message": "Разное",
-        "description": "Options sub-title: 'Misc.'"
-    },
-    "optionBackgroundSave": {
-        "message": "сохранять страницы в фоновом режиме",
-        "description": "Options page label: 'save pages in background'"
-    },
-    "optionDisplayStats": {
-        "message": "отображать статистику в консоли после обработки",
-        "description": "Options page label: 'display stats in the console after processing'"
-    },
-    "optionSetMaxResourceSize": {
-        "message": "установить максимальный размер для встроенных ресурсов",
-        "description": "Options page label: 'set a maximum size for embedded resources'"
-    },
-    "optionMaxResourceSize": {
-        "message": "максимальный размер (МБ)",
-        "description": "Options page label: 'maximum size (MB)'"
-    },
-    "optionSaveRawPage": {
-        "message": "сохранить исходную страницу",
-        "description": "Options page label: 'save raw page'"
-    },
-    "optionsHelpLink": {
-        "message": "помощь",
-        "description": "Options help link"
-    },
-    "optionsResetButton": {
-        "message": "Сброс",
-        "description": "Options button: 'Reset'"
-    },
-    "optionsResetTooltip": {
-        "message": "Сбросить все параметры к значениям по умолчанию",
-        "description": "Options 'Reset' button tooltip"
-    },
-    "optionsResetConfirm": {
-        "message": "Подтвердите сброс всех параметров или текущего профиля",
-        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
-    },
-    "optionsResetAllButton": {
-        "message": "Сбросить все параметры",
-        "description": "Options confirm button: 'Reset all options'"
-    },
-    "optionsResetCurrentButton": {
-        "message": "Сбросить текущий профиль",
-        "description": "Options confirm button: 'Reset current profile'"
-    },
-    "optionsOKButton": {
-        "message": "OK",
-        "description": "Options confirm button: 'OK'"
-    },
-    "optionsCancelButton": {
-        "message": "Отмена",
-        "description": "Options confirm button: 'Cancel'"
-    },
-    "optionsExportButton": {
-        "message": "Экспорт",
-        "description": "Options button: 'Export'"
-    },
-    "optionsImportButton": {
-        "message": "Импорт",
-        "description": "Options button: 'Import'"
-    },
-    "logPanelDeferredImages": {
-        "message": "Отложенные изображения",
-        "description": "Label 'Deferred images' in the log panel"
-    },
-    "logPanelFrameContents": {
-        "message": "Контент фреймов",
-        "description": "Label 'Frame contents' in the log panel"
-    },
-    "logPanelStep": {
-        "message": "Шаг",
-        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
-    },
-    "logPanelWidth": {
-        "message": "120",
-        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
-    },
-    "profileDefaultSettings": {
-        "message": "Настройки по умолчанию",
-        "description": "Label 'Default settings' of the default settings in the options page"
-    },
-    "profileDisabled": {
-        "message": "Отключено",
-        "description": "Label 'Disabled' of the disabled profile name in the options page"
-    },
-    "profileAddButtonTooltip": {
-        "message": "Добавить профиль",
-        "description": "Tooltip 'Add a new profile' in the options page"
-    },
-    "profileRenameButtonTooltip": {
-        "message": "Переименовать профиль",
-        "description": "Tooltip 'Rename the profile' in the options page"
-    },
-    "profileDeleteButtonTooltip": {
-        "message": "Удалить профиль",
-        "description": "Tooltip 'Delete the profile' in the options page"
-    },
-    "profileAddPrompt": {
-        "message": "Введите имя для этого профиля",
-        "description": "Popup text 'Enter a name for this new profile' in the options page"
-    },
-    "profileDeleteConfirm": {
-        "message": "Подтвердите удаление выбранного профиля",
-        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
-    },
-    "profileRenamePrompt": {
-        "message": "Введите новое имя для выбранного профиля",
-        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
-    }
-}
+{
+    "extensionDescription": {
+        "message": "Сохранить полную страницу в одном HTML-файле",
+        "description": "Description of the extension."
+    },
+    "menuSavePage": {
+        "message": "Сохранить страницу с помощью SingleFile",
+        "description": "Menu entry: 'Save page with SingleFile'"
+    },
+    "menuSelectProfile": {
+        "message": "Выберите профиль по умолчанию",
+        "description": "Menu entry: 'Select the default profile'"
+    },
+    "menuUpdateRule": {
+        "message": "Выберите профиль текущего правила",
+        "description": "Menu entry: 'Select the profile of the current rule'"
+    },
+    "menuCreateDomainRule": {
+        "message": "Выберите профиль текущего домена",
+        "description": "Menu entry: 'Select the profile of the current domain'"
+    },
+    "menuSaveSelection": {
+        "message": "Сохранить выделенное",
+        "description": "Menu entry: 'Save selection'"
+    },
+    "menuSaveFrame": {
+        "message": "Сохранить фрейм",
+        "description": "Menu entry: 'Save frame'"
+    },
+    "menuSaveTabs": {
+        "message": "Сохранить вкладки",
+        "description": "Menu entry (SingleFile button only): 'Save tabs'"
+    },
+    "menuSaveSelectedTabs": {
+        "message": "Сохранить выбранные вкладки",
+        "description": "Menu entry: 'Save selected tabs'"
+    },
+    "menuSaveUnpinnedTabs": {
+        "message": "Сохранить незакрепленные вкладки",
+        "description": "Menu entry: 'Save unpinned tabs'"
+    },
+    "menuSaveAllTabs": {
+        "message": "Сохранить все вкладки",
+        "description": "Menu entry: 'Save all tabs'"
+    },
+    "menuAutoSave": {
+        "message": "Автосохранение",
+        "description": "Menu entry: 'Auto-save'"
+    },
+    "menuAutoSaveDisabled": {
+        "message": "Отключено",
+        "description": "Menu entry: 'Auto-save' > Disabled'"
+    },
+    "menuAutoSaveTab": {
+        "message": "Автосохранение этой вкладки",
+        "description": "Menu entry: 'Auto-save' > Auto-save this tab'"
+    },
+    "menuAutoSaveUnpinnedTabs": {
+        "message": "Автосохранение незакрепленных вкладок",
+        "description": "Menu entry: 'Auto-save' > Auto-save unpinned tabs'"
+    },
+    "menuAutoSaveAllTabs": {
+        "message": "Автосохранение всех вкладок",
+        "description": "Menu entry: 'Auto-save' > Auto-save all tabs'"
+    },
+    "buttonDefaultTooltip": {
+        "message": "Сохранить страницу с помощью SingleFile",
+        "description": "Button title: 'Save page with SingleFile'"
+    },
+    "buttonInitializingTooltip": {
+        "message": "Инициализация SingleFile",
+        "description": "Button title during initialization: 'Initializing SingleFile (x/2)'"
+    },
+    "buttonInitializingBadge": {
+        "message": "•••",
+        "description": "Badge label during initialization: '•••'"
+    },
+    "buttonSaveProgressTooltip": {
+        "message": "Прогресс сохранения: ",
+        "description": "Button title during save: 'Save progress: xx%'"
+    },
+    "buttonOKBadge": {
+        "message": "OK",
+        "description": "Badge label: 'OK'"
+    },
+    "buttonErrorBadge": {
+        "message": "ERR",
+        "description": "Badge label for unexpected errors"
+    },
+    "buttonAutoSaveActiveTooltip": {
+        "message": "Автосохранение активно",
+        "description": "Button title: 'Auto-save active'"
+    },
+    "buttonAutoSaveActiveBadge": {
+        "message": "[A]",
+        "description": "Badge label when auto-save is active"
+    },
+    "optionsTitle": {
+        "message": "Параметры",
+        "description": "Options page title"
+    },
+    "optionsUserInterfaceSubTitle": {
+        "message": "Пользовательский интерфейс",
+        "description": "Options sub-title: 'User interface'"
+    },
+    "optionAddMenuEntry": {
+        "message": "добавить пункт в контекстное меню веб-страницы",
+        "description": "Options page label: 'add entry in the context menu of the webpage'"
+    },
+    "optionDisplayShadow": {
+        "message": "накладывать тень на страницу во время обработки",
+        "description": "Options page label: 'overlay a shadow on the page during processing'"
+    },
+    "optionDisplayInfobar": {
+        "message": "отображать информационную панель при просмотре сохраненной страницы",
+        "description": "Options page label: 'display an infobar when viewing a saved page'"
+    },
+    "optionInfobarTemplate": {
+        "message": "шаблон содержимого информационной панели",
+        "description": "Options page label: 'template of the infobar content'"
+    },
+    "optionConfirmInfobar": {
+        "message": "открывать диалоговое окно для редактирования содержимого информационной панели",
+        "description": "Options page label: 'open a prompt dialog to edit the infobar content'"
+    },
+    "optionsFileNameSubTitle": {
+        "message": "Имя файла",
+        "description": "Options sub-title: 'File name'"
+    },
+    "optionFilenameTemplate": {
+        "message": "шаблон",
+        "description": "Options page label: 'template'"
+    },
+    "optionConfirmFilename": {
+        "message": "открывать диалоговое окно \"Сохранить как\" для подтверждения имени файла",
+        "description": "Options page label: 'open the \"Save as\" dialog to confirm the file name'"
+    },
+    "optionFilenameConflictAction": {
+        "message": "разрешение конфликтов имен файлов",
+        "description": "Options page label: 'filename conflict resolution'"
+    },
+    "optionFilenameConflictActionUniquify": {
+        "message": "создать уникальное имя",
+        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
+    },
+    "optionFilenameConflictActionOverwrite": {
+        "message": "перезаписать существующий файл",
+        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
+    },
+    "optionFilenameConflictActionPrompt": {
+        "message": "запросить имя",
+        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
+    },
+    "optionsHTMLContentSubTitle": {
+        "message": "HTML-контент",
+        "description": "Options sub-title: 'HTML content'"
+    },
+    "optionCompressHTML": {
+        "message": "сжать HTML-контент",
+        "description": "Options page label: 'compress HTML content'"
+    },
+    "optionRemoveImports": {
+        "message": "удалить HTML-импорт",
+        "description": "Options page label: 'remove HTML imports'"
+    },
+    "optionRemoveFrames": {
+        "message": "удалить фреймы",
+        "description": "Options page label: 'remove frames'"
+    },
+    "optionRemoveHiddenElements": {
+        "message": "удалить скрытые элементы",
+        "description": "Options page label: 'remove hidden elements'"
+    },
+    "optionsImagesSubTitle": {
+        "message": "Изображения",
+        "description": "Options sub-title: 'Images'"
+    },
+    "optionGroupDuplicateImages": {
+        "message": "группировать дубликаты изображений",
+        "description": "Options page label: 'group duplicate images together'"
+    },
+    "optionLoadDeferredImages": {
+        "message": "сохранить отложенные изображения",
+        "description": "Options page label: 'save deferred images'"
+    },
+    "optionLoadDeferredImagesMaxIdleTime": {
+        "message": "максимальное время простоя (мс)",
+        "description": "Options page label: 'maximum idle time (ms)'"
+    },
+    "optionRemoveAlternativeImages": {
+        "message": "удалить изображения для альтернативных разрешений экрана",
+        "description": "Options page label: 'remove images for alternative screen resolutions'"
+    },
+    "optionsFontsSubTitle": {
+        "message": "Шрифты",
+        "description": "Options sub-title: 'Fonts'"
+    },
+    "optionRemoveUnusedFonts": {
+        "message": "удалить неиспользуемые шрифты",
+        "description": "Options page label: 'remove unused fonts'"
+    },
+    "optionRemoveAlternativeFonts": {
+        "message": "удалить альтернативные шрифты",
+        "description": "Options page label: 'remove alternative fonts'"
+    },
+    "optionsStylesheetsSubTitle": {
+        "message": "Таблицы стилей",
+        "description": "Options sub-title: 'Stylesheets'"
+    },
+    "optionCompressCSS": {
+        "message": "сжать содержимое CSS",
+        "description": "Options page label: 'compress CSS content'"
+    },
+    "optionRemoveUnusedStyles": {
+        "message": "удалить неиспользуемые стили",
+        "description": "Options page label: 'remove unused styles'"
+    },
+    "optionRemoveAlternativeMedias": {
+        "message": "удалить таблицы стилей для экранов альтернативных устройств",
+        "description": "Options page label: 'remove stylesheets for alternative devices to screens'"
+    },
+    "optionsOtherResourcesSubTitle": {
+        "message": "Другие ресурсы",
+        "description": "Options sub-title: 'Other resources'"
+    },
+    "optionRemoveScripts": {
+        "message": "удалить скрипты",
+        "description": "Options page label: 'remove scripts'"
+    },
+    "optionRemoveVideo": {
+        "message": "удалить источники видео",
+        "description": "Options page label: 'remove video sources'"
+    },
+    "optionRemoveAudio": {
+        "message": "удалить источники аудио",
+        "description": "Options page label: 'remove audio sources'"
+    },
+    "optionsAutoSaveSubTitle": {
+        "message": "Автосохранение",
+        "description": "Options sub-title: 'Auto-save'"
+    },
+    "optionsAutoSettingsSubTitle": {
+        "message": "Правила автонастройки",
+        "description": "Options sub-title: 'Auto-settings rules'"
+    },
+    "optionsDeleteDisplayedRulesConfirm": {
+        "message": "Подтвердите удаление всех отображаемых правил",
+        "description": "Popup text 'Confirm deletion of all displayed rules'"
+    },
+    "optionsDeleteRulesTooltip": {
+        "message": "Удалить все отображаемые правила",
+        "description": "Popup text 'Delete all displayed rules'"
+    },
+    "optionsAutoSettingsUrl": {
+        "message": "URL",
+        "description": "Options label in the auto-settings rules: 'URL'"
+    },
+    "optionsAutoSettingsUrlPlaceholder": {
+        "message": "Введите полный или частичный URL (т.к. example.com)",
+        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
+    },
+    "optionsAutoSettingsProfile": {
+        "message": "Профиль",
+        "description": "Options label in the Auto-settings rules: 'Profile'"
+    },
+    "optionsAutoSettingsAutoSaveProfile": {
+        "message": "Профиль автосохранения",
+        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
+    },
+    "optionsAutoSettingsShowAllProfiles": {
+        "message": "показать все профили",
+        "description": "Options label in the Auto-settings rules: 'display all profiles'"
+    },
+    "optionsAutoSettingsShowAutoSaveProfile": {
+        "message": "отобразить столбец 'Профиль автосохранения'",
+        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
+    },
+    "optionsUpdateRuleTooltip": {
+        "message": "Обновить правило",
+        "description": "Popup text 'Update the rule' in the options page"
+    },
+    "optionsDeleteRuleTooltip": {
+        "message": "Удалить правило",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsAddRuleTooltip": {
+        "message": "Добавить правило",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsValidateChangesTooltip": {
+        "message": "Подтвердить изменения",
+        "description": "Popup text 'Validate changes' in the options page"
+    },
+    "optionsDeleteRuleConfirm": {
+        "message": "Подтвердите удаление выбранного правила",
+        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
+    },
+    "optionAutoSaveLoadOrUnload": {
+        "message": "автосохранение после загрузки или выгрузки страницы",
+        "description": "auto-save after page load or on page unload"
+    },
+    "optionAutoSaveLoad": {
+        "message": "автосохранение после загрузки страницы",
+        "description": "Options page label: 'auto-save after page load'"
+    },
+    "optionAutoSaveUnload": {
+        "message": "автосохранение после выгрузки страницы",
+        "description": "Options page label: 'auto-save on page unload'"
+    },
+    "optionAutoSaveDelay": {
+        "message": "задержка автосохранения после загрузки страницы (сек.)",
+        "description": "Options page label: 'auto-save waiting delay after page load (sec.)'"
+    },
+    "optionAutoSaveRepeat": {
+        "message": "auto-save periodically",
+        "description": "Options page label: 'auto-save periodically'"
+    },
+    "optionAutoSaveRepeatDelay": {
+        "message": "period (sec.)",
+        "description": "Options page label: 'period (sec.)'"
+    },
+    "optionsMiscSubTitle": {
+        "message": "Разное",
+        "description": "Options sub-title: 'Misc.'"
+    },
+    "optionBackgroundSave": {
+        "message": "сохранять страницы в фоновом режиме",
+        "description": "Options page label: 'save pages in background'"
+    },
+    "optionDisplayStats": {
+        "message": "отображать статистику в консоли после обработки",
+        "description": "Options page label: 'display stats in the console after processing'"
+    },
+    "optionSetMaxResourceSize": {
+        "message": "установить максимальный размер для встроенных ресурсов",
+        "description": "Options page label: 'set a maximum size for embedded resources'"
+    },
+    "optionMaxResourceSize": {
+        "message": "максимальный размер (МБ)",
+        "description": "Options page label: 'maximum size (MB)'"
+    },
+    "optionSaveRawPage": {
+        "message": "сохранить исходную страницу",
+        "description": "Options page label: 'save raw page'"
+    },
+    "optionsHelpLink": {
+        "message": "помощь",
+        "description": "Options help link"
+    },
+    "optionsResetButton": {
+        "message": "Сброс",
+        "description": "Options button: 'Reset'"
+    },
+    "optionsResetTooltip": {
+        "message": "Сбросить все параметры к значениям по умолчанию",
+        "description": "Options 'Reset' button tooltip"
+    },
+    "optionsResetConfirm": {
+        "message": "Подтвердите сброс всех параметров или текущего профиля",
+        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
+    },
+    "optionsResetAllButton": {
+        "message": "Сбросить все параметры",
+        "description": "Options confirm button: 'Reset all options'"
+    },
+    "optionsResetCurrentButton": {
+        "message": "Сбросить текущий профиль",
+        "description": "Options confirm button: 'Reset current profile'"
+    },
+    "optionsOKButton": {
+        "message": "OK",
+        "description": "Options confirm button: 'OK'"
+    },
+    "optionsCancelButton": {
+        "message": "Отмена",
+        "description": "Options confirm button: 'Cancel'"
+    },
+    "optionsExportButton": {
+        "message": "Экспорт",
+        "description": "Options button: 'Export'"
+    },
+    "optionsImportButton": {
+        "message": "Импорт",
+        "description": "Options button: 'Import'"
+    },
+    "logPanelDeferredImages": {
+        "message": "Отложенные изображения",
+        "description": "Label 'Deferred images' in the log panel"
+    },
+    "logPanelFrameContents": {
+        "message": "Контент фреймов",
+        "description": "Label 'Frame contents' in the log panel"
+    },
+    "logPanelStep": {
+        "message": "Шаг",
+        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
+    },
+    "logPanelWidth": {
+        "message": "120",
+        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
+    },
+    "profileDefaultSettings": {
+        "message": "Настройки по умолчанию",
+        "description": "Label 'Default settings' of the default settings in the options page"
+    },
+    "profileDisabled": {
+        "message": "Отключено",
+        "description": "Label 'Disabled' of the disabled profile name in the options page"
+    },
+    "profileAddButtonTooltip": {
+        "message": "Добавить профиль",
+        "description": "Tooltip 'Add a new profile' in the options page"
+    },
+    "profileRenameButtonTooltip": {
+        "message": "Переименовать профиль",
+        "description": "Tooltip 'Rename the profile' in the options page"
+    },
+    "profileDeleteButtonTooltip": {
+        "message": "Удалить профиль",
+        "description": "Tooltip 'Delete the profile' in the options page"
+    },
+    "profileAddPrompt": {
+        "message": "Введите имя для этого профиля",
+        "description": "Popup text 'Enter a name for this new profile' in the options page"
+    },
+    "profileDeleteConfirm": {
+        "message": "Подтвердите удаление выбранного профиля",
+        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
+    },
+    "profileRenamePrompt": {
+        "message": "Введите новое имя для выбранного профиля",
+        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
+    }
+}

+ 436 - 428
_locales/zh_CN/messages.json

@@ -1,429 +1,437 @@
-{
-    "extensionDescription": {
-        "message": "将完整的页面保存到一个 HTML 文件中",
-        "description": "扩展描述。"
-    },
-    "menuSavePage": {
-        "message": "使用 SingleFile 保存页面",
-        "description": "菜单项: '使用 SingleFile 保存页面'"
-    },
-    "menuSelectProfile": {
-        "message": "选择默认配置文件",
-        "description": "Menu entry: 'Select the default profile'"
-    },
-    "menuUpdateRule": {
-        "message": "选择当前规则的配置",
-        "description": "Menu entry: 'Select the profile of the current rule'"
-    },
-    "menuCreateDomainRule": {
-        "message": "选择当前域名的配置",
-        "description": "Menu entry: 'Select the profile of the current domain'"
-    },
-    "menuSaveSelection": {
-        "message": "保存选中部分",
-        "description": "菜单项: '保存选中部分'"
-    },
-    "menuSaveFrame": {
-        "message": "保存框架",
-        "description": "菜单项: '保存框架'"
-    },
-    "menuSaveTabs": {
-        "message": "保存标签页",
-        "description": "Menu entry (SingleFile button only): 'Save tabs'"
-    },
-    "menuSaveSelectedTabs": {
-        "message": "保存选中标签页",
-        "description": "菜单项: '保存选中标签页'"
-    },
-    "menuSaveUnpinnedTabs": {
-        "message": "保存非固定标签页",
-        "description": "菜单项: '保存非固定标签页'"
-    },
-    "menuSaveAllTabs": {
-        "message": "保存所有标签页",
-        "description": "菜单项: '保存所有标签页'"
-    },
-    "menuAutoSave": {
-        "message": "自动保存",
-        "description": "菜单项: '自动保存'"
-    },
-    "menuAutoSaveDisabled": {
-        "message": "禁用",
-        "description": "菜单项: '自动保存' > '禁用'"
-    },
-    "menuAutoSaveTab": {
-        "message": "自动保存此标签页",
-        "description": "菜单项: '自动保存' > '自动保存此标签页'"
-    },
-    "menuAutoSaveUnpinnedTabs": {
-        "message": "自动保存非固定标签页",
-        "description": "菜单项: '自动保存' > '自动保存非固定标签页'"
-    },
-    "menuAutoSaveAllTabs": {
-        "message": "自动保存所有标签页",
-        "description": "菜单项: '自动保存' > '自动保存所有标签页'"
-    },
-    "buttonDefaultTooltip": {
-        "message": "使用 SingleFile 保存页面",
-        "description": "按钮标题: '使用 SingleFile 保存页面'"
-    },
-    "buttonInitializingTooltip": {
-        "message": "正在初始化 SingleFile",
-        "description": "保存时候的按钮标题: '正在初始化 SingleFile (x/2)'"
-    },
-    "buttonInitializingBadge": {
-        "message": "•••",
-        "description": "初始化时候的徽标标签: '•••'"
-    },
-    "buttonSaveProgressTooltip": {
-        "message": "保存进度:",
-        "description": "保存时候的按钮标题: '保存进度:xx%'"
-    },
-    "buttonOKBadge": {
-        "message": "确定",
-        "description": "徽标标签: 'OK'"
-    },
-    "buttonErrorBadge": {
-        "message": "错误",
-        "description": "出现意外错误时候的徽标标签"
-    },
-    "buttonAutoSaveActiveTooltip": {
-        "message": "自动保存动作",
-        "description": "按钮标题: '自动保存动作'"
-    },
-    "buttonAutoSaveActiveBadge": {
-        "message": "[自动]",
-        "description": "自动保存激活时候的徽标标签"
-    },
-    "optionsTitle": {
-        "message": "选项",
-        "description": "选项页标题"
-    },
-    "optionsUserInterfaceSubTitle": {
-        "message": "用户界面",
-        "description": "选项页副标题: '用户界面'"
-    },
-    "optionAddMenuEntry": {
-        "message": "添加菜单项到页面的右键菜单",
-        "description": "选项页标签: '添加菜单项到页面的右键菜单'"
-    },
-    "optionDisplayShadow": {
-        "message": "处理过程中以阴影遮盖页面",
-        "description": "选项页标签: '处理过程中以阴影遮盖页面'"
-    },
-    "optionDisplayInfobar": {
-        "message": "查看一个已保存的页面时显示信息栏",
-        "description": "选项页标签: '查看一个已保存的页面时显示信息栏'"
-    },
-    "optionInfobarTemplate": {
-        "message": "信息栏内容模板",
-        "description": "选项页标签: '信息栏内容模板'"
-    },
-    "optionConfirmInfobar": {
-        "message": "打开一个提示窗口以编辑信息栏内容",
-        "description": "选项页标签: '打开一个提示窗口以编辑信息栏内容'"
-    },
-    "optionsFileNameSubTitle": {
-        "message": "文件名",
-        "description": "选项页副标题: '文件名'"
-    },
-    "optionFilenameTemplate": {
-        "message": "模板",
-        "description": "选项页标签: '模板'"
-    },
-    "optionConfirmFilename": {
-        "message": "打开“另存为”对话框以确认文件名",
-        "description": "选项页标签: '打开“另存为”对话框以确认文件名'"
-    },
-    "optionFilenameConflictAction": {
-        "message": "文件名冲突解决",
-        "description": "Options page label: 'filename conflict resolution'"
-    },
-    "optionFilenameConflictActionUniquify": {
-        "message": "创建为不冲突的名称",
-        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
-    },
-    "optionFilenameConflictActionOverwrite": {
-        "message": "覆盖现有的文件",
-        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
-    },
-    "optionFilenameConflictActionPrompt": {
-        "message": "询问新名称",
-        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
-    },
-    "optionsHTMLContentSubTitle": {
-        "message": "HTML 内容",
-        "description": "选项页副标题: 'HTML 内容'"
-    },
-    "optionCompressHTML": {
-        "message": "压缩 HTML 内容",
-        "description": "选项页标签: '压缩 HTML 内容'"
-    },
-    "optionRemoveImports": {
-        "message": "移除 HTML 导入",
-        "description": "选项页标签: '移除 HTML 导入'"
-    },
-    "optionRemoveFrames": {
-        "message": "移除框架",
-        "description": "选项页标签: '移除框架'"
-    },
-    "optionRemoveHiddenElements": {
-        "message": "移除隐藏元素",
-        "description": "选项页标签: '移除隐藏元素'"
-    },
-    "optionsImagesSubTitle": {
-        "message": "图像",
-        "description": "选项页副标题: '图像'"
-    },
-    "optionGroupDuplicateImages": {
-        "message": "重复图像合并",
-        "description": "选项页标签: '重复图像合并'"
-    },
-    "optionLoadDeferredImages": {
-        "message": "保存延迟加载的图像",
-        "description": "选项页标签: '保存延迟加载的图像'"
-    },
-    "optionLoadDeferredImagesMaxIdleTime": {
-        "message": "最长空闲时间(毫秒)",
-        "description": "Options page label: 'maximum idle time (ms)'"
-    },
-    "optionRemoveAlternativeImages": {
-        "message": "移除备用分辨率的图像",
-        "description": "选项页标签: '移除备用分辨率的图像'"
-    },
-    "optionsFontsSubTitle": {
-        "message": "字体",
-        "description": "Options sub-title: 'Fonts'"
-    },
-    "optionRemoveUnusedFonts": {
-        "message": "移除未使用的字体",
-        "description": "Options page label: 'remove unused fonts'"
-    },
-    "optionRemoveAlternativeFonts": {
-        "message": "移除备用的字体",
-        "description": "Options page label: 'remove alternative fonts'"
-    },
-    "optionsStylesheetsSubTitle": {
-        "message": "样式表",
-        "description": "选项页副标题: '样式表'"
-    },
-    "optionCompressCSS": {
-        "message": "压缩 CSS 内容",
-        "description": "选项页标签: '压缩 CSS 内容'"
-    },
-    "optionRemoveUnusedStyles": {
-        "message": "移除未使用的样式",
-        "description": "选项页标签: '移除未使用的样式'"
-    },
-    "optionRemoveAlternativeMedias": {
-        "message": "移除其他设备分辨率的样式表",
-        "description": "选项页标签: '移除其他设备分辨率的样式表'"
-    },
-    "optionsOtherResourcesSubTitle": {
-        "message": "其他资源",
-        "description": "选项页副标题: '其他资源'"
-    },
-    "optionRemoveScripts": {
-        "message": "移除脚本",
-        "description": "选项页标签: '移除脚本'"
-    },
-    "optionRemoveVideo": {
-        "message": "移除视频嵌入",
-        "description": "选项页标签: '移除视频嵌入'"
-    },
-    "optionRemoveAudio": {
-        "message": "移除音频嵌入",
-        "description": "选项页标签: '移除音频嵌入'"
-    },
-    "optionsAutoSaveSubTitle": {
-        "message": "自动保存",
-        "description": "选项页副标题: '自动保存'"
-    },
-    "optionsDeleteDisplayedRulesConfirm": {
-        "message": "确认移除所有已显示规则",
-        "description": "Popup text 'Confirm deletion of all displayed rules'"
-    },
-    "optionsDeleteRulesTooltip": {
-        "message": "移除所有已显示规则",
-        "description": "Popup text 'Delete all displayed rules'"
-    },
-    "optionsAutoSettingsSubTitle": {
-        "message": "自动设置",
-        "description": "Options sub-title: 'Auto-settings rules'"
-    },
-    "optionsAutoSettingsUrl": {
-        "message": "URL",
-        "description": "Options label in the auto-settings rules: 'URL'"
-    },
-    "optionsAutoSettingsUrlPlaceholder": {
-        "message": "输入部分或完整 URL(如 example.com)",
-        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
-    },
-    "optionsAutoSettingsProfile": {
-        "message": "配置文件",
-        "description": "Options label in the Auto-settings rules: 'Profile'"
-    },
-    "optionsAutoSettingsAutoSaveProfile": {
-        "message": "自动保存配置文件",
-        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
-    },
-    "optionsAutoSettingsShowAllProfiles": {
-        "message": "显示所有配置文件",
-        "description": "Options label in the Auto-settings rules: 'display all profiles'"
-    },
-    "optionsAutoSettingsShowAutoSaveProfile": {
-        "message": "显示“自动保存配置文件”",
-        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
-    },
-    "optionsUpdateRuleTooltip": {
-        "message": "更新规则",
-        "description": "Popup text 'Update the rule' in the options page"
-    },
-    "optionsDeleteRuleTooltip": {
-        "message": "删除规则",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsAddRuleTooltip": {
-        "message": "添加规则",
-        "description": "Popup text 'Delete the rule' in the options page"
-    },
-    "optionsValidateChangesTooltip": {
-        "message": "验证更改",
-        "description": "Popup text 'Validate changes' in the options page"
-    },
-    "optionsDeleteRuleConfirm": {
-        "message": "确认删除所选规则",
-        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
-    },
-    "optionAutoSaveLoadOrUnload": {
-        "message": "页面加载或页面卸载后自动保存",
-        "description": "页面加载或页面卸载后自动保存"
-    },
-    "optionAutoSaveLoad": {
-        "message": "页面加载后自动保存",
-        "description": "选项页标签: '页面加载后自动保存'"
-    },
-    "optionAutoSaveUnload": {
-        "message": "页面卸载时自动保存",
-        "description": "选项页标签: '页面卸载时自动保存'"
-    },
-    "optionAutoSaveDelay": {
-        "message": "页面加载后自动保存的延时(秒)",
-        "description": "选项页标签: '页面加载后自动保存的延时(秒)'"
-    },
-    "optionsMiscSubTitle": {
-        "message": "其他",
-        "description": "选项页副标题: '其他'"
-    },
-    "optionBackgroundSave": {
-        "message": "在后台保存页面",
-        "description": "选项页标签: '在后台保存页面'"
-    },
-    "optionDisplayStats": {
-        "message": "处理后在控制台消息中显示统计",
-        "description": "选项页标签: '处理后在控制台消息中显示统计'"
-    },
-    "optionSetMaxResourceSize": {
-        "message": "设定嵌入的资源的最大体积",
-        "description": "选项页标签: '设定嵌入的资源的最大体积'"
-    },
-    "optionMaxResourceSize": {
-        "message": "最大体积(MB)",
-        "description": "选项页标签: '最大体积(MB)'"
-    },
-    "optionSaveRawPage": {
-        "message": "保存原始页面",
-        "description": "选项页标签: '保存原始页面'"
-    },
-    "optionsHelpLink": {
-        "message": "帮助",
-        "description": "选项页帮助链接"
-    },
-    "optionsResetButton": {
-        "message": "重置",
-        "description": "选项按钮: '重置'"
-    },
-    "optionsResetTooltip": {
-        "message": "重置所有选项为默认值",
-        "description": "选项按钮'重置'的提示"
-    },
-    "optionsResetConfirm": {
-        "message": "确认重置所有选项或当前配置",
-        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
-    },
-    "optionsResetAllButton": {
-        "message": "重置所有选项",
-        "description": "Options confirm button: 'Reset all options'"
-    },
-    "optionsResetCurrentButton": {
-        "message": "重置当前配置",
-        "description": "Options confirm button: 'Reset current profile'"
-    },
-    "optionsOKButton": {
-        "message": "确定",
-        "description": "Options confirm button: 'OK'"
-    },
-    "optionsCancelButton": {
-        "message": "取消",
-        "description": "Options confirm button: 'Cancel'"
-    },
-    "optionsExportButton": {
-        "message": "导出",
-        "description": "Options button: 'Export'"
-    },
-    "optionsImportButton": {
-        "message": "导入",
-        "description": "Options button: 'Import'"
-    },
-    "logPanelDeferredImages": {
-        "message": "延迟加载的图像",
-        "description": "Label 'Deferred images' in the log panel"
-    },
-    "logPanelFrameContents": {
-        "message": "框架内容",
-        "description": "Label 'Frame contents' in the log panel"
-    },
-    "logPanelStep": {
-        "message": "步骤",
-        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
-    },
-    "logPanelWidth": {
-        "message": "115",
-        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
-    },
-    "profileDefaultSettings": {
-        "message": "默认设置",
-        "description": "Label 'Default settings' of the default settings in the options page"
-    },
-    "profileDisabled": {
-        "message": "禁用",
-        "description": "Label 'Disabled' of the disabled profile name in the options page"
-    },
-    "profileAddButtonTooltip": {
-        "message": "添加一个新配置文件",
-        "description": "Tooltip 'Add a new profile' in the options page"
-    },
-    "profileRenameButtonTooltip": {
-        "message": "重命名配置文件",
-        "description": "Tooltip 'Rename the profile' in the options page"
-    },
-    "profileDeleteButtonTooltip": {
-        "message": "移除配置文件",
-        "description": "Tooltip 'Delete the profile' in the options page"
-    },
-    "profileAddPrompt": {
-        "message": "为新配置文件输入名字",
-        "description": "Popup text 'Enter a name for this new profile' in the options page"
-    },
-    "profileDeleteConfirm": {
-        "message": "确认移除所选配置文件",
-        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
-    },
-    "profileRenamePrompt": {
-        "message": "为所选配置文件输入新名字",
-        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
-    },
-    "__WET_LOCALE__": {
-        "message": "zh-cn"
-    }
+{
+    "extensionDescription": {
+        "message": "将完整的页面保存到一个 HTML 文件中",
+        "description": "扩展描述。"
+    },
+    "menuSavePage": {
+        "message": "使用 SingleFile 保存页面",
+        "description": "菜单项: '使用 SingleFile 保存页面'"
+    },
+    "menuSelectProfile": {
+        "message": "选择默认配置文件",
+        "description": "Menu entry: 'Select the default profile'"
+    },
+    "menuUpdateRule": {
+        "message": "选择当前规则的配置",
+        "description": "Menu entry: 'Select the profile of the current rule'"
+    },
+    "menuCreateDomainRule": {
+        "message": "选择当前域名的配置",
+        "description": "Menu entry: 'Select the profile of the current domain'"
+    },
+    "menuSaveSelection": {
+        "message": "保存选中部分",
+        "description": "菜单项: '保存选中部分'"
+    },
+    "menuSaveFrame": {
+        "message": "保存框架",
+        "description": "菜单项: '保存框架'"
+    },
+    "menuSaveTabs": {
+        "message": "保存标签页",
+        "description": "Menu entry (SingleFile button only): 'Save tabs'"
+    },
+    "menuSaveSelectedTabs": {
+        "message": "保存选中标签页",
+        "description": "菜单项: '保存选中标签页'"
+    },
+    "menuSaveUnpinnedTabs": {
+        "message": "保存非固定标签页",
+        "description": "菜单项: '保存非固定标签页'"
+    },
+    "menuSaveAllTabs": {
+        "message": "保存所有标签页",
+        "description": "菜单项: '保存所有标签页'"
+    },
+    "menuAutoSave": {
+        "message": "自动保存",
+        "description": "菜单项: '自动保存'"
+    },
+    "menuAutoSaveDisabled": {
+        "message": "禁用",
+        "description": "菜单项: '自动保存' > '禁用'"
+    },
+    "menuAutoSaveTab": {
+        "message": "自动保存此标签页",
+        "description": "菜单项: '自动保存' > '自动保存此标签页'"
+    },
+    "menuAutoSaveUnpinnedTabs": {
+        "message": "自动保存非固定标签页",
+        "description": "菜单项: '自动保存' > '自动保存非固定标签页'"
+    },
+    "menuAutoSaveAllTabs": {
+        "message": "自动保存所有标签页",
+        "description": "菜单项: '自动保存' > '自动保存所有标签页'"
+    },
+    "buttonDefaultTooltip": {
+        "message": "使用 SingleFile 保存页面",
+        "description": "按钮标题: '使用 SingleFile 保存页面'"
+    },
+    "buttonInitializingTooltip": {
+        "message": "正在初始化 SingleFile",
+        "description": "保存时候的按钮标题: '正在初始化 SingleFile (x/2)'"
+    },
+    "buttonInitializingBadge": {
+        "message": "•••",
+        "description": "初始化时候的徽标标签: '•••'"
+    },
+    "buttonSaveProgressTooltip": {
+        "message": "保存进度:",
+        "description": "保存时候的按钮标题: '保存进度:xx%'"
+    },
+    "buttonOKBadge": {
+        "message": "确定",
+        "description": "徽标标签: 'OK'"
+    },
+    "buttonErrorBadge": {
+        "message": "错误",
+        "description": "出现意外错误时候的徽标标签"
+    },
+    "buttonAutoSaveActiveTooltip": {
+        "message": "自动保存动作",
+        "description": "按钮标题: '自动保存动作'"
+    },
+    "buttonAutoSaveActiveBadge": {
+        "message": "[自动]",
+        "description": "自动保存激活时候的徽标标签"
+    },
+    "optionsTitle": {
+        "message": "选项",
+        "description": "选项页标题"
+    },
+    "optionsUserInterfaceSubTitle": {
+        "message": "用户界面",
+        "description": "选项页副标题: '用户界面'"
+    },
+    "optionAddMenuEntry": {
+        "message": "添加菜单项到页面的右键菜单",
+        "description": "选项页标签: '添加菜单项到页面的右键菜单'"
+    },
+    "optionDisplayShadow": {
+        "message": "处理过程中以阴影遮盖页面",
+        "description": "选项页标签: '处理过程中以阴影遮盖页面'"
+    },
+    "optionDisplayInfobar": {
+        "message": "查看一个已保存的页面时显示信息栏",
+        "description": "选项页标签: '查看一个已保存的页面时显示信息栏'"
+    },
+    "optionInfobarTemplate": {
+        "message": "信息栏内容模板",
+        "description": "选项页标签: '信息栏内容模板'"
+    },
+    "optionConfirmInfobar": {
+        "message": "打开一个提示窗口以编辑信息栏内容",
+        "description": "选项页标签: '打开一个提示窗口以编辑信息栏内容'"
+    },
+    "optionsFileNameSubTitle": {
+        "message": "文件名",
+        "description": "选项页副标题: '文件名'"
+    },
+    "optionFilenameTemplate": {
+        "message": "模板",
+        "description": "选项页标签: '模板'"
+    },
+    "optionConfirmFilename": {
+        "message": "打开“另存为”对话框以确认文件名",
+        "description": "选项页标签: '打开“另存为”对话框以确认文件名'"
+    },
+    "optionFilenameConflictAction": {
+        "message": "文件名冲突解决",
+        "description": "Options page label: 'filename conflict resolution'"
+    },
+    "optionFilenameConflictActionUniquify": {
+        "message": "创建为不冲突的名称",
+        "description": "Value for 'filename conflict resolution' option: 'create a unique name'"
+    },
+    "optionFilenameConflictActionOverwrite": {
+        "message": "覆盖现有的文件",
+        "description": "Value for 'filename conflict resolution' option: 'overwrite the existing file'"
+    },
+    "optionFilenameConflictActionPrompt": {
+        "message": "询问新名称",
+        "description": "Value for 'name conflict resolution' option: 'prompt for a name'"
+    },
+    "optionsHTMLContentSubTitle": {
+        "message": "HTML 内容",
+        "description": "选项页副标题: 'HTML 内容'"
+    },
+    "optionCompressHTML": {
+        "message": "压缩 HTML 内容",
+        "description": "选项页标签: '压缩 HTML 内容'"
+    },
+    "optionRemoveImports": {
+        "message": "移除 HTML 导入",
+        "description": "选项页标签: '移除 HTML 导入'"
+    },
+    "optionRemoveFrames": {
+        "message": "移除框架",
+        "description": "选项页标签: '移除框架'"
+    },
+    "optionRemoveHiddenElements": {
+        "message": "移除隐藏元素",
+        "description": "选项页标签: '移除隐藏元素'"
+    },
+    "optionsImagesSubTitle": {
+        "message": "图像",
+        "description": "选项页副标题: '图像'"
+    },
+    "optionGroupDuplicateImages": {
+        "message": "重复图像合并",
+        "description": "选项页标签: '重复图像合并'"
+    },
+    "optionLoadDeferredImages": {
+        "message": "保存延迟加载的图像",
+        "description": "选项页标签: '保存延迟加载的图像'"
+    },
+    "optionLoadDeferredImagesMaxIdleTime": {
+        "message": "最长空闲时间(毫秒)",
+        "description": "Options page label: 'maximum idle time (ms)'"
+    },
+    "optionRemoveAlternativeImages": {
+        "message": "移除备用分辨率的图像",
+        "description": "选项页标签: '移除备用分辨率的图像'"
+    },
+    "optionsFontsSubTitle": {
+        "message": "字体",
+        "description": "Options sub-title: 'Fonts'"
+    },
+    "optionRemoveUnusedFonts": {
+        "message": "移除未使用的字体",
+        "description": "Options page label: 'remove unused fonts'"
+    },
+    "optionRemoveAlternativeFonts": {
+        "message": "移除备用的字体",
+        "description": "Options page label: 'remove alternative fonts'"
+    },
+    "optionsStylesheetsSubTitle": {
+        "message": "样式表",
+        "description": "选项页副标题: '样式表'"
+    },
+    "optionCompressCSS": {
+        "message": "压缩 CSS 内容",
+        "description": "选项页标签: '压缩 CSS 内容'"
+    },
+    "optionRemoveUnusedStyles": {
+        "message": "移除未使用的样式",
+        "description": "选项页标签: '移除未使用的样式'"
+    },
+    "optionRemoveAlternativeMedias": {
+        "message": "移除其他设备分辨率的样式表",
+        "description": "选项页标签: '移除其他设备分辨率的样式表'"
+    },
+    "optionsOtherResourcesSubTitle": {
+        "message": "其他资源",
+        "description": "选项页副标题: '其他资源'"
+    },
+    "optionRemoveScripts": {
+        "message": "移除脚本",
+        "description": "选项页标签: '移除脚本'"
+    },
+    "optionRemoveVideo": {
+        "message": "移除视频嵌入",
+        "description": "选项页标签: '移除视频嵌入'"
+    },
+    "optionRemoveAudio": {
+        "message": "移除音频嵌入",
+        "description": "选项页标签: '移除音频嵌入'"
+    },
+    "optionsAutoSaveSubTitle": {
+        "message": "自动保存",
+        "description": "选项页副标题: '自动保存'"
+    },
+    "optionsDeleteDisplayedRulesConfirm": {
+        "message": "确认移除所有已显示规则",
+        "description": "Popup text 'Confirm deletion of all displayed rules'"
+    },
+    "optionsDeleteRulesTooltip": {
+        "message": "移除所有已显示规则",
+        "description": "Popup text 'Delete all displayed rules'"
+    },
+    "optionsAutoSettingsSubTitle": {
+        "message": "自动设置",
+        "description": "Options sub-title: 'Auto-settings rules'"
+    },
+    "optionsAutoSettingsUrl": {
+        "message": "URL",
+        "description": "Options label in the auto-settings rules: 'URL'"
+    },
+    "optionsAutoSettingsUrlPlaceholder": {
+        "message": "输入部分或完整 URL(如 example.com)",
+        "description": "Placeholder in the Auto-settings rules: 'Type a complete or partial URL (e.g. example.com)'"
+    },
+    "optionsAutoSettingsProfile": {
+        "message": "配置文件",
+        "description": "Options label in the Auto-settings rules: 'Profile'"
+    },
+    "optionsAutoSettingsAutoSaveProfile": {
+        "message": "自动保存配置文件",
+        "description": "Options label in the Auto-settings rules: 'Auto-save profile'"
+    },
+    "optionsAutoSettingsShowAllProfiles": {
+        "message": "显示所有配置文件",
+        "description": "Options label in the Auto-settings rules: 'display all profiles'"
+    },
+    "optionsAutoSettingsShowAutoSaveProfile": {
+        "message": "显示“自动保存配置文件”",
+        "description": "Options label in the Auto-settings rules: 'display 'Auto-save profile' column'"
+    },
+    "optionsUpdateRuleTooltip": {
+        "message": "更新规则",
+        "description": "Popup text 'Update the rule' in the options page"
+    },
+    "optionsDeleteRuleTooltip": {
+        "message": "删除规则",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsAddRuleTooltip": {
+        "message": "添加规则",
+        "description": "Popup text 'Delete the rule' in the options page"
+    },
+    "optionsValidateChangesTooltip": {
+        "message": "验证更改",
+        "description": "Popup text 'Validate changes' in the options page"
+    },
+    "optionsDeleteRuleConfirm": {
+        "message": "确认删除所选规则",
+        "description": "Popup text 'Confirm deletion of the selected rule' in the options page"
+    },
+    "optionAutoSaveLoadOrUnload": {
+        "message": "页面加载或页面卸载后自动保存",
+        "description": "页面加载或页面卸载后自动保存"
+    },
+    "optionAutoSaveLoad": {
+        "message": "页面加载后自动保存",
+        "description": "选项页标签: '页面加载后自动保存'"
+    },
+    "optionAutoSaveUnload": {
+        "message": "页面卸载时自动保存",
+        "description": "选项页标签: '页面卸载时自动保存'"
+    },
+    "optionAutoSaveDelay": {
+        "message": "页面加载后自动保存的延时(秒)",
+        "description": "选项页标签: '页面加载后自动保存的延时(秒)'"
+    },
+    "optionAutoSaveRepeat": {
+        "message": "auto-save periodically",
+        "description": "Options page label: 'auto-save periodically'"
+    },
+    "optionAutoSaveRepeatDelay": {
+        "message": "period (sec.)",
+        "description": "Options page label: 'period (sec.)'"
+    },
+    "optionsMiscSubTitle": {
+        "message": "其他",
+        "description": "选项页副标题: '其他'"
+    },
+    "optionBackgroundSave": {
+        "message": "在后台保存页面",
+        "description": "选项页标签: '在后台保存页面'"
+    },
+    "optionDisplayStats": {
+        "message": "处理后在控制台消息中显示统计",
+        "description": "选项页标签: '处理后在控制台消息中显示统计'"
+    },
+    "optionSetMaxResourceSize": {
+        "message": "设定嵌入的资源的最大体积",
+        "description": "选项页标签: '设定嵌入的资源的最大体积'"
+    },
+    "optionMaxResourceSize": {
+        "message": "最大体积(MB)",
+        "description": "选项页标签: '最大体积(MB)'"
+    },
+    "optionSaveRawPage": {
+        "message": "保存原始页面",
+        "description": "选项页标签: '保存原始页面'"
+    },
+    "optionsHelpLink": {
+        "message": "帮助",
+        "description": "选项页帮助链接"
+    },
+    "optionsResetButton": {
+        "message": "重置",
+        "description": "选项按钮: '重置'"
+    },
+    "optionsResetTooltip": {
+        "message": "重置所有选项为默认值",
+        "description": "选项按钮'重置'的提示"
+    },
+    "optionsResetConfirm": {
+        "message": "确认重置所有选项或当前配置",
+        "description": "Popup text 'Confirm the reset of all options or the current profile' in the options page"
+    },
+    "optionsResetAllButton": {
+        "message": "重置所有选项",
+        "description": "Options confirm button: 'Reset all options'"
+    },
+    "optionsResetCurrentButton": {
+        "message": "重置当前配置",
+        "description": "Options confirm button: 'Reset current profile'"
+    },
+    "optionsOKButton": {
+        "message": "确定",
+        "description": "Options confirm button: 'OK'"
+    },
+    "optionsCancelButton": {
+        "message": "取消",
+        "description": "Options confirm button: 'Cancel'"
+    },
+    "optionsExportButton": {
+        "message": "导出",
+        "description": "Options button: 'Export'"
+    },
+    "optionsImportButton": {
+        "message": "导入",
+        "description": "Options button: 'Import'"
+    },
+    "logPanelDeferredImages": {
+        "message": "延迟加载的图像",
+        "description": "Label 'Deferred images' in the log panel"
+    },
+    "logPanelFrameContents": {
+        "message": "框架内容",
+        "description": "Label 'Frame contents' in the log panel"
+    },
+    "logPanelStep": {
+        "message": "步骤",
+        "description": "Label 'Step' (for 'Step x / 4') in the log panel"
+    },
+    "logPanelWidth": {
+        "message": "115",
+        "description": "Width of the log panel in pixels, it should be adjusted for the longest label beginning with 'log' (e.g. 'logPanelDeferredImages')"
+    },
+    "profileDefaultSettings": {
+        "message": "默认设置",
+        "description": "Label 'Default settings' of the default settings in the options page"
+    },
+    "profileDisabled": {
+        "message": "禁用",
+        "description": "Label 'Disabled' of the disabled profile name in the options page"
+    },
+    "profileAddButtonTooltip": {
+        "message": "添加一个新配置文件",
+        "description": "Tooltip 'Add a new profile' in the options page"
+    },
+    "profileRenameButtonTooltip": {
+        "message": "重命名配置文件",
+        "description": "Tooltip 'Rename the profile' in the options page"
+    },
+    "profileDeleteButtonTooltip": {
+        "message": "移除配置文件",
+        "description": "Tooltip 'Delete the profile' in the options page"
+    },
+    "profileAddPrompt": {
+        "message": "为新配置文件输入名字",
+        "description": "Popup text 'Enter a name for this new profile' in the options page"
+    },
+    "profileDeleteConfirm": {
+        "message": "确认移除所选配置文件",
+        "description": "Popup text 'Confirm deletion of the selected profile' in the options page"
+    },
+    "profileRenamePrompt": {
+        "message": "为所选配置文件输入新名字",
+        "description": "Popup text 'Enter a new name for the selected profile' in the options page"
+    },
+    "__WET_LOCALE__": {
+        "message": "zh-cn"
+    }
 }

+ 2 - 0
extension/core/bg/data/config.js

@@ -55,6 +55,8 @@ singlefile.config = (() => {
 		autoSaveLoad: false,
 		autoSaveUnload: false,
 		autoSaveLoadOrUnload: true,
+		autoSaveRepeat: false,
+		autoSaveRepeatDelay: 10,
 		removeAlternativeFonts: true,
 		removeAlternativeMedias: true,
 		removeAlternativeImages: true,

+ 10 - 5
extension/core/content/content-bootstrap.js

@@ -28,21 +28,26 @@ this.singlefile.bootstrap = this.singlefile.bootstrap || (async () => {
 		autoSaveEnabled = message.autoSaveEnabled;
 		refresh();
 	});
-	browser.runtime.onMessage.addListener(message => {
+	browser.runtime.onMessage.addListener(message => onMessage(message));
+	browser.runtime.sendMessage({ loadURL: true });
+	return {};
+
+	async function onMessage(message) {
 		if (message.autoSavePage) {
 			autoSavingPage = false;
 			singlefile.pageAutoSaved = false;
 			options = message.options;
-			autoSavePage();
+			await autoSavePage();
+			if (options.autoSaveRepeat) {
+				setTimeout(() => onMessage(message), options.autoSaveRepeatDelay * 1000);
+			}
 		}
 		if (message.initAutoSave) {
 			options = message.options;
 			autoSaveEnabled = message.autoSaveEnabled;
 			refresh();
 		}
-	});
-	browser.runtime.sendMessage({ loadURL: true });
-	return {};
+	}
 
 	async function autoSavePage() {
 		if ((!autoSavingPage || autoSaveTimeout) && !singlefile.pageAutoSaved) {

+ 12 - 0
extension/ui/bg/ui-options.js

@@ -53,6 +53,8 @@
 	const autoSaveLoadLabel = document.getElementById("autoSaveLoadLabel");
 	const autoSaveUnloadLabel = document.getElementById("autoSaveUnloadLabel");
 	const autoSaveLoadOrUnloadLabel = document.getElementById("autoSaveLoadOrUnloadLabel");
+	const autoSaveRepeatLabel = document.getElementById("autoSaveRepeatLabel");
+	const autoSaveRepeatDelayLabel = document.getElementById("autoSaveRepeatDelayLabel");
 	const removeAlternativeFontsLabel = document.getElementById("removeAlternativeFontsLabel");
 	const removeAlternativeImagesLabel = document.getElementById("removeAlternativeImagesLabel");
 	const removeAlternativeMediasLabel = document.getElementById("removeAlternativeMediasLabel");
@@ -111,6 +113,8 @@
 	const autoSaveLoadInput = document.getElementById("autoSaveLoadInput");
 	const autoSaveUnloadInput = document.getElementById("autoSaveUnloadInput");
 	const autoSaveLoadOrUnloadInput = document.getElementById("autoSaveLoadOrUnloadInput");
+	const autoSaveRepeatInput = document.getElementById("autoSaveRepeatInput");
+	const autoSaveRepeatDelayInput = document.getElementById("autoSaveRepeatDelayInput");
 	const removeAlternativeFontsInput = document.getElementById("removeAlternativeFontsInput");
 	const removeAlternativeImagesInput = document.getElementById("removeAlternativeImagesInput");
 	const removeAlternativeMediasInput = document.getElementById("removeAlternativeMediasInput");
@@ -352,6 +356,8 @@
 	autoSaveLoadLabel.textContent = browser.i18n.getMessage("optionAutoSaveLoad");
 	autoSaveUnloadLabel.textContent = browser.i18n.getMessage("optionAutoSaveUnload");
 	autoSaveLoadOrUnloadLabel.textContent = browser.i18n.getMessage("optionAutoSaveLoadOrUnload");
+	autoSaveRepeatLabel.textContent = browser.i18n.getMessage("optionAutoSaveRepeat");
+	autoSaveRepeatDelayLabel.textContent = browser.i18n.getMessage("optionAutoSaveRepeatDelay");
 	removeAlternativeFontsLabel.textContent = browser.i18n.getMessage("optionRemoveAlternativeFonts");
 	removeAlternativeImagesLabel.textContent = browser.i18n.getMessage("optionRemoveAlternativeImages");
 	removeAlternativeMediasLabel.textContent = browser.i18n.getMessage("optionRemoveAlternativeMedias");
@@ -511,6 +517,10 @@
 		autoSaveUnloadInput.checked = !profileOptions.autoSaveLoadOrUnload && profileOptions.autoSaveUnload;
 		autoSaveLoadInput.disabled = profileOptions.autoSaveLoadOrUnload;
 		autoSaveUnloadInput.disabled = profileOptions.autoSaveLoadOrUnload;
+		autoSaveRepeatInput.checked = profileOptions.autoSaveRepeat;
+		autoSaveRepeatInput.disabled = !profileOptions.autoSaveLoadOrUnload && !profileOptions.autoSaveLoad;
+		autoSaveRepeatDelayInput.value = profileOptions.autoSaveRepeatDelay;
+		autoSaveRepeatDelayInput.disabled = !profileOptions.autoSaveRepeat;
 		removeAlternativeFontsInput.checked = profileOptions.removeAlternativeFonts;
 		removeAlternativeImagesInput.checked = profileOptions.removeAlternativeImages;
 		groupDuplicateImagesInput.checked = profileOptions.groupDuplicateImages;
@@ -563,6 +573,8 @@
 				autoSaveLoad: autoSaveLoadInput.checked,
 				autoSaveUnload: autoSaveUnloadInput.checked,
 				autoSaveLoadOrUnload: autoSaveLoadOrUnloadInput.checked,
+				autoSaveRepeat: autoSaveRepeatInput.checked,
+				autoSaveRepeatDelay: Math.max(autoSaveRepeatDelayInput.value, 1),
 				removeAlternativeFonts: removeAlternativeFontsInput.checked,
 				removeAlternativeImages: removeAlternativeImagesInput.checked,
 				removeAlternativeMedias: removeAlternativeMediasInput.checked,

+ 12 - 0
extension/ui/pages/help.html

@@ -340,6 +340,18 @@
 							unload" or "auto-save on page load" is checked.
 						</p>
 					</li>
+
+					<li>
+						<span class="option">Option: auto-save periodically</span>
+						<p>Check this option to auto-save pages periodically after load.</p>
+					</li>
+					
+					<li>
+						<span class="option">Option: period (sec.)</span>
+						<p>Specify the amount of time in seconds to wait before each page saving when the "uto-save periodically" is checked.
+						</p>
+					</li>
+
 				</ul>
 				<p>Misc.</p>
 				<ul>

+ 8 - 0
extension/ui/pages/options.html

@@ -160,6 +160,14 @@
 				<label for="autoSaveDelayInput" id="autoSaveDelayLabel"></label>
 				<input type="number" id="autoSaveDelayInput" min="0">
 			</div>
+			<div class="option">
+				<label for="autoSaveRepeatInput" id="autoSaveRepeatLabel"></label>
+				<input type="checkbox" id="autoSaveRepeatInput">
+			</div>
+			<div class="option second-level">
+				<label for="autoSaveRepeatDelayInput" id="autoSaveRepeatDelayLabel"></label>
+				<input type="number" id="autoSaveRepeatDelayInput" min="1">
+			</div>
 		</details>
 		<details>
 			<summary id="miscLabel"></summary>