mirror of
https://github.com/doublecmd/doublecmd.git
synced 2026-06-21 09:58:13 +00:00
1220 lines
58 KiB
ObjectPascal
1220 lines
58 KiB
ObjectPascal
{
|
|
Double Commander
|
|
-------------------------------------------------------------------------
|
|
Localization core unit
|
|
|
|
Copyright (C) 2007-2022 Alexander Koblov (alexx2000@mail.ru)
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 2 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
}
|
|
|
|
unit uLng;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
uses
|
|
LResources;
|
|
resourcestring
|
|
// File operations.
|
|
rsMsgNotDelete = 'Can not delete file %s';
|
|
rsMsgCannotDeleteDirectory = 'Cannot delete directory %s';
|
|
rsMsgCannotOverwriteDirectory = 'Cannot overwrite directory "%s" with non-directory "%s"';
|
|
rsMsgCannotCopySpecialFile = 'Cannot copy special file %s';
|
|
rsMsgErrCannotMoveDirectory = 'Cannot move directory %s';
|
|
rsMsgErrDirExists = 'Directory %s exists!';
|
|
rsMsgErrRename = 'Cannot rename file %s to %s';
|
|
rsMsgErrCannotMoveFile = 'Cannot move file %s';
|
|
rsMsgErrCannotCopyFile = 'Cannot copy file %s to %s';
|
|
rsMsgFileExistsOverwrite = 'Overwrite:';
|
|
rsMsgFileExistsWithFile = 'With file:';
|
|
rsMsgFileExistsFileInfo = '%s bytes, %s';
|
|
rsMsgFileExistsRwrt = 'File %s exists, overwrite?';
|
|
rsMsgFileChangedSave = 'File %s changed, save?';
|
|
rsMsgReplaceThisText = 'Do you want to replace this text?';
|
|
rsMsgCancelOperation = 'Are you sure that you want to cancel this operation?';
|
|
rsMsgFileReloadWarning = 'Are you sure you want to reload the current file and lose the changes?';
|
|
rsMsgFolderExistsRwrt = 'Folder %s exists, merge?';
|
|
rsMsgFileReadOnly = 'File %s is marked as read-only/hidden/system. Delete it?';
|
|
rsMsgNewFile = 'New file';
|
|
rsMsgDelFlDr = 'Delete %d selected files/directories?';
|
|
rsMsgDelSel = 'Delete selected "%s"?';
|
|
rsMsgTestArchive = 'Do you want to test selected archives?';
|
|
rsMsgVerifyChecksum = 'Do you want to verify selected checksums?';
|
|
rsMsgObjectNotExists = 'Object does not exist!';
|
|
// 12.05.2009 - another message, when deleting to trash
|
|
rsMsgDelFlDrT = 'Delete %d selected files/directories into trash can?';
|
|
rsMsgDelSelT = 'Delete selected "%s" into trash can?';
|
|
rsMsgDelToTrashForce = 'Can not delete "%s" to trash! Delete directly?';
|
|
rsMsgFileNotFound = 'File "%s" not found.';
|
|
// ---
|
|
rsMsgVerify = 'VERIFICATION:';
|
|
rsMsgVerifyWrong = 'The target file is corrupted, checksum mismatch!';
|
|
// ---
|
|
rsMsgWipeFlDr = 'Wipe %d selected files/directories?';
|
|
rsMsgWipeSel = 'Wipe selected "%s"?';
|
|
rsMsgCpFlDr = 'Copy %d selected files/directories?';
|
|
rsMsgCpSel = 'Copy selected "%s"?';
|
|
rsMsgRenFlDr = 'Rename/move %d selected files/directories?';
|
|
rsMsgRenSel = 'Rename/move selected "%s"?';
|
|
rsMsgErrForceDir = 'Can not create directory %s!';
|
|
rsMsgSelectedInfo = 'Selected: %s of %s, files: %d of %d, folders: %d of %d';
|
|
rsMsgCloseLockedTab = 'This tab (%s) is locked! Close anyway?';
|
|
rsMsgTabForOpeningInNewTab = 'This tab (%s) is locked! Open directory in another tab?';
|
|
rsSpaceMsg = 'Files: %d, Dirs: %d, Size: %s (%s bytes)';
|
|
rsSelectDir = 'Select a directory';
|
|
rsMarkPlus = 'Select mask';
|
|
rsMarkMinus = 'Unselect mask';
|
|
rsMaskInput = 'Input mask:';
|
|
rsMsgPopUpHotDelete = '&Delete %s';
|
|
rsMsgDiskNotAvail = 'Disk is not available';
|
|
rsMsgChDirFailed = 'Change current directory to "%s" failed!';
|
|
rsMsgNoFreeSpaceCont = 'No enough free space on target drive, Continue?';
|
|
rsMsgNoFreeSpaceRetry = 'No enough free space on target drive, Retry?';
|
|
rsMsgSetVolumeLabel = 'Set volume label';
|
|
rsMsgVolumeLabel = 'Volume label:';
|
|
rsMsgRestartForApplyChanges = 'Please, restart Double Commander in order to apply changes';
|
|
rsMsgEnterName = 'Enter name:';
|
|
rsMsgEnterFileExt = 'Enter file extension:';
|
|
rsMsgDefaultCustomActionName = 'Custom action';
|
|
rsMsgSelectExecutableFile = 'Select executable file for';
|
|
rsMsgWithActionWith = 'with';
|
|
rsMsgFollowSymlink = 'Follow symlink "%s"?';
|
|
rsMsgFileSizeTooBig = 'The file size of "%s" is too big for destination file system!';
|
|
rsMsgCloseAllInActiveTabs = 'Remove all inactive tabs?';
|
|
rsMsgErrRegExpSyntax = 'Syntax error in regular expression!';
|
|
rsMsgNoFilesSelected = 'No files selected.';
|
|
rsMsgTooManyFilesSelected = 'Too many files selected.';
|
|
rsMsgInvalidSelection = 'Invalid selection.';
|
|
rsMsgNotImplemented = 'Not implemented.';
|
|
rsMsgInvalidFilename = 'Invalid filename';
|
|
rsMsgInvalidPath = 'Invalid path';
|
|
rsMsgInvalidPathLong = 'Path %s contains forbidden characters.';
|
|
rsMsgSelectOnlyCheckSumFiles = 'Please select only checksum files!';
|
|
rsMsgPresetAlreadyExists = 'Preset "%s" already exists. Overwrite?';
|
|
rsMsgPresetConfigDelete = 'Are you sure you want to delete preset "%s"?';
|
|
rsMsgVolumeSizeEnter = 'Please enter the volume size:';
|
|
rsFilterAnyFiles = 'Any files';
|
|
rsFilterDCToolTipFiles = 'DC Tooltip files';
|
|
rsFilterToolbarFiles = 'DC Toolbar files';
|
|
rsFilterXmlConfigFiles = '.xml Config files';
|
|
rsFilterTCToolbarFiles = 'TC Toolbar files';
|
|
rsFilterExecutableFiles = 'Executables files';
|
|
rsFilterIniConfigFiles = '.ini Config files';
|
|
rsFilterLegacyTabFiles = 'Legacy DC .tab files';
|
|
rsFilterDirectoryHotListFiles = 'Directory Hotlist files';
|
|
rsFilterArchiverConfigFiles = 'Archiver config files';
|
|
rsFilterPluginFiles = 'Plugin files';
|
|
rsFilterLibraries = 'Library files';
|
|
rsFilterProgramsLibraries = 'Programs and Libraries';
|
|
|
|
// Archiver section.
|
|
rsMsgArchiverCustomParams = 'Additional parameters for archiver command-line:';
|
|
rsOptArchiverArchiver = 'Select archiver executable';
|
|
rsOptArchiverConfirmDelete = 'Are you sure you want to delete: "%s"?';
|
|
rsOptArchiverImportFile = 'Select the file to import archiver configuration(s)';
|
|
rsOptArchiverWhereToSave = 'Enter location and filename where to save archiver configuration';
|
|
rsOptArchiverDefaultExportFilename = 'Exported Archiver Configuration';
|
|
rsOptArchiverImportCaption = 'Import archiver configuration';
|
|
rsOptArchiverImportPrompt = 'Select the one(s) you want to import';
|
|
rsOptArchiverImportDone = 'Importation of %d elements from file "%s" completed.';
|
|
rsOptArchiverExportCaption = 'Export archiver configuration';
|
|
rsOptArchiverExportPrompt = 'Select the one(s) you want to export';
|
|
rsOptArchiverExportDone = 'Exportation of %d elements to file "%s" completed.';
|
|
rsOptArchiverProgramL = 'Archive Program (long name)';
|
|
rsOptArchiverProgramS = 'Archive Program (short name)';
|
|
rsOptArchiverArchiveL = 'Archive File (long name)';
|
|
rsOptArchiverArchiveS = 'Archive file (short name)';
|
|
rsOptArchiverFileListL = 'Filelist (long names)';
|
|
rsOptArchiverFileListS = 'Filelist (short names)';
|
|
rsOptArchiverSingleFProcess = 'Single filename to process';
|
|
rsOptArchiverErrorLevel = 'errorlevel';
|
|
rsOptArchiverChangeEncoding = 'Change Archiver Listing Encoding';
|
|
rsOptArchiverTargetSubDir = 'Target subdirecory';
|
|
rsOptArchiverAdditonalCmd = 'Mode dependent, additional command';
|
|
rsOptArchiverAddOnlyNotEmpty = 'Add if it is non-empty';
|
|
rsOptArchiverQuoteWithSpace = 'Quote names with spaces';
|
|
rsOptArchiverQuoteAll = 'Quote all names';
|
|
rsOptArchiverJustName = 'Use name only, without path';
|
|
rsOptArchiverJustPath = 'Use path only, without name';
|
|
rsOptArchiverUseAnsi = 'Use ANSI encoding';
|
|
rsOptArchiverUseUTF8 = 'Use UTF8 encoding';
|
|
rsOptArchiveConfigureSaveToChange = 'To change current editing archive configuration, either APPLY or DELETE current editing one';
|
|
|
|
// Font
|
|
rsFontUsageMain = 'Main &Font';
|
|
rsFontUsageEditor = '&Editor Font';
|
|
rsFontUsageViewer = '&Viewer Font';
|
|
rsFontUsageViewerBook = 'Viewer&Book Font';
|
|
rsFontUsageLog = '&Log Font';
|
|
rsFontUsageConsole = '&Console Font';
|
|
rsFontUsagePathEdit = 'Path Font';
|
|
rsFontUsageFunctionButtons = 'Function Buttons Font';
|
|
rsFontUsageSearchResults = 'Search Results Font';
|
|
rsFontUsageTreeViewMenu = 'Tree View Menu Font';
|
|
rsFontUsageStatusBar = 'Status Bar Font';
|
|
|
|
// Tooltip section
|
|
rsOptTooltipConfigureSaveToChange = 'To change file type tooltip configuration, either APPLY or DELETE current editing one';
|
|
rsOptToolTipsFileTypeName = 'Tooltip file type name';
|
|
rsToolTipModeList = 'Combine DC and system tooltip, DC first (legacy);Combine DC and system tooltip, system first;Show DC tooltip when possible and system when not;Show DC tooltip only;Show system tooltip only';
|
|
rsToolTipHideTimeOutList = 'System default;1 sec;2 sec;3 sec;5 sec;10 sec;30 sec;1 min;Never hide';
|
|
rsOptAddingToolTipFileType = 'Adding new tooltip file type';
|
|
rsOptRenamingToolTipFileType = 'Renaming tooltip file type';
|
|
rsOptToolTipFileType = 'Tooltip file type name:';
|
|
rsOptToolTipFileTypeDefaultExportFilename = 'Exported tooltip file type configuration';
|
|
rsOptToolTipFileTypeWhereToSave = 'Enter location and filename where to save tooltip file type configuration';
|
|
rsOptToolTipFileTypeAlreadyExists = '"%s" already exists!';
|
|
rsOptToolTipFileTypeConfirmDelete = 'Are you sure you want to delete: "%s"?';
|
|
rsOptToolTipFileTypeImportCaption = 'Import tooltip file type configuration';
|
|
rsOptToolTipFileTypeImportPrompt = 'Select the one(s) you want to import';
|
|
rsOptToolTipFileTypeImportFile = 'Select the file to import tooltip file type configuration(s)';
|
|
rsOptToolTipFileTypeImportDone = 'Importation of %d elements from file "%s" completed.';
|
|
rsOptToolTipFileTypeExportPrompt = 'Select the one(s) you want to export';
|
|
rsOptToolTipFileTypeExportCaption = 'Export tooltip file type configuration';
|
|
rsOptToolTipFileTypeExportDone = 'Exportation of %d elements to file "%s" completed.';
|
|
|
|
rsMsgMasterPassword = 'Master Password';
|
|
rsMsgMasterPasswordEnter = 'Please enter the master password:';
|
|
rsMsgWrongPasswordTryAgain = 'Wrong password!'#13'Please try again!';
|
|
rsMsgPasswordEnter = 'Please enter the password:';
|
|
rsMsgPasswordVerify = 'Please re-enter the password for verification:';
|
|
rsMsgPasswordDiff = 'Passwords are different!';
|
|
rsMsgUserName = 'User name:';
|
|
rsMsgPassword = 'Password:';
|
|
rsMsgAccount = 'Account:';
|
|
rsMsgUserNameFirewall = 'User name (Firewall):';
|
|
rsMsgPasswordFirewall = 'Password (Firewall):';
|
|
rsMsgTargetDir = 'Target path:';
|
|
rsMsgURL = 'URL:';
|
|
rsMsgLoadingFileList = 'Loading file list...';
|
|
rsMsgNoFiles = 'No files';
|
|
rsMsgErrSetAttribute = 'Can not set attributes for "%s"';
|
|
rsMsgErrSetDateTime = 'Can not set date/time for "%s"';
|
|
rsMsgErrSetOwnership = 'Can not set owner/group for "%s"';
|
|
rsMsgErrSetPermissions = 'Can not set permissions for "%s"';
|
|
rsMsgErrSetXattribute = 'Can not set extended attributes for "%s"';
|
|
rsMsgErrDateNotSupported = 'Date %s is not supported';
|
|
rsMsgErrSaveFile = 'Cannot save file';
|
|
rsMsgErrCanNotConnect = 'Can not connect to server: "%s"';
|
|
rsMsgErrSaveAssociation = 'Can not save association!';
|
|
rsMsgFileOperationsActive = 'File operations active';
|
|
rsMsgFileOperationsActiveLong = 'Some file operations have not yet finished. Closing Double Commander may result in data loss.';
|
|
rsMsgConfirmQuit = 'Are you sure you want to quit?';
|
|
rsMsgCanNotCopyMoveItSelf = 'You can not copy/move a file "%s" to itself!';
|
|
rsMsgTabRenameCaption = 'Rename tab';
|
|
rsMsgTabRenamePrompt = 'New tab name:';
|
|
rsMsgInvalidPlugin = 'This is not a valid plugin!';
|
|
rsMsgInvalidPluginArchitecture = 'This plugin is built for Double Commander for %s.%sIt can not work with Double Commander for %s!';
|
|
rsMsgErrCreateFileDirectoryExists = 'There already exists a directory named "%s".';
|
|
rsMsgDeletePartiallyCopied = 'Delete the partially copied file ?';
|
|
rsMsgInvalidCommandLine = 'Error in command line';
|
|
rsMsgCofirmUserParam = 'Confirmation of parameter';
|
|
rsMsgAskQuoteOrNot = 'Do you want to enclose between quotes?';
|
|
rsMsgInvalidQuoting = 'Invalid quoting';
|
|
rsMsgErrorInContextMenuCommand = 'Error in context menu command';
|
|
rsMsgErrorLoadingConfiguration = 'Error when loading configuration';
|
|
rsMsgInvalidFormatOfConfigurationFile = 'Invalid format of configuration file';
|
|
rsDefaultSuffixDroppedText = '_DroppedText';
|
|
rsDefaultSuffixDroppedTextRichtextFilename = '_DroppedRichtext';
|
|
rsDefaultSuffixDroppedTextHTMLFilename = '_DroppedHTMLtext';
|
|
rsDefaultSuffixDroppedTextUnicodeUTF16Filename = '_DroppedUnicodeUTF16text';
|
|
rsDefaultSuffixDroppedTextUnicodeUTF8Filename = '_DroppedUnicodeUTF8text';
|
|
rsDefaultSuffixDroppedTextSimpleFilename = '_DroppedSimpleText';
|
|
rsDragAndDropTextFormat = 'Rich Text Format;HTML Format;Unicode Format;Simple Text Format';
|
|
rsCaptionForAskingFilename = 'Enter filename, with extension, for dropped text';
|
|
rsMsgPromptAskingFilename = 'Filename for dropped text:';
|
|
rsCaptionForTextFormatToImport = 'Text format to import';
|
|
rsMsgForTextFormatToImport = 'Select the text format to import';
|
|
rsMsgUserDidNotSetExtension = '<NO EXT>';
|
|
rsMsgUserDidNotSetName = '<NO NAME>';
|
|
rsMsgCommandNotFound = 'Command not found! (%s)';
|
|
rsMsgProblemExecutingCommand = 'Problem executing command (%s)';
|
|
rsMsgCopyBackward = 'The file %s has changed. Do you want to copy it backward?';
|
|
rsMsgCouldNotCopyBackward = 'Could not copy backward - do you want to keep the changed file?';
|
|
rsMsgFilePathOverMaxPath = 'The target name length (%d) is more than %d characters!' + #13 + '%s' + #13 + 'Most programs will not be able to access a file/directory with such a long name!';
|
|
rsExtsClosedBracketNoFound = '"]" not found in line %s';
|
|
rsExtsCommandWithNoExt = 'No extension defined before command "%s". It will be ignored.';
|
|
rsMsgTerminalDisabled = 'Built-in terminal window disabled. Do you want to enable it?';
|
|
|
|
//Hot Dir related
|
|
rsMsgHotDirWhatToDelete = 'Do you want to delete all elements inside the sub-menu [%s]?'+#$0A+'Answering NO will delete only menu delimiters but will keep element inside sub-menu.';
|
|
rsMsgHotDirAddThisDirectory = 'Add current dir: ';
|
|
rsMsgHotDirAddSelectedDirectory = 'Add selected dir: ';
|
|
rsMsgHotDirReAddSelectedDirectory = 'Re-Add selected dir: ';
|
|
rsMsgHotDirReAddThisDirectory = 'Re-Add current dir: ';
|
|
rsMsgHotDirAddSelectedDirectories = 'Add %d selected dirs';
|
|
rsMsgHotDirConfigHotlist = 'Configuration of Directory Hotlist';
|
|
rsMsgHotDirDeleteAllEntries = 'Are you sure you want to remove all entries of your Directory Hotlist? (There is no "undo" to this action!)';
|
|
rsMsgHotDirName = 'Hotdir name';
|
|
rsMsgHotDirPath = 'Hotdir path';
|
|
rsMsgHotDirJustPath = '&Path:';
|
|
rsMsgHotDirTarget = 'Hotdir target';
|
|
rsMsgHotDirSubMenuName = 'Submenu name';
|
|
rsMsgHotDirSimpleName = '&Name:';
|
|
rsMsgHotDirSimpleSeparator = '(separator)';
|
|
rsMsgHotDirSimpleMenu = 'Menu &name:';
|
|
rsMsgHotDirSimpleEndOfMenu = '(end of sub menu)';
|
|
rsMsgHotDirSimpleCommand = 'Command:';
|
|
rsMsgHotDirCommandName = 'Do command';
|
|
rsMsgHotDirCommandSample = 'cm_somthing';
|
|
rsMsgHotDirDemoName = 'This is hot dir named ';
|
|
rsMsgHotDirDemoPath = 'This will change active frame to the following path:';
|
|
rsMsgHotDirDemoCommand = 'This will execute the following command:';
|
|
rsMsgHotDirDemoTarget = 'And inactive frame would change to the following path:';
|
|
rsMsgHotDirLocateHotlistFile = 'Locate ".hotlist" file to import';
|
|
rsMsgHotDirWhereToSave = 'Enter location and filename where to save a Directory Hotlist file';
|
|
rsMsgHotDirRestoreWhat = 'Enter location and filename of Directory Hotlist to restore';
|
|
rsMsgHotDirImportall = 'Import all!';
|
|
rsMsgHotDirImportSel = 'Import selected';
|
|
rsMsgHotDirImportHotlist = 'Import Directory Hotlist - Select the entries you want to import';
|
|
rsMsgHotDirExportall = 'Export all!';
|
|
rsMsgHotDirExportSel = 'Export selected';
|
|
rsMsgHotDirExportHotlist = 'Export Directory Hotlist - Select the entries you want to export';
|
|
rsMsgHotDirNbNewEntries = 'Number of new entries: %d';
|
|
rsMsgHotDirTotalExported = 'Total entries exported: ';
|
|
rsMsgHotDirErrorExporting = 'Error exporting entries...';
|
|
rsMsgHotDirNothingToExport = 'Nothing selected to export!';
|
|
rsMsgHotDirTipSpecialDirBut = 'Some functions to select appropriate path relative, absolute, windows special folders, etc.';
|
|
rsMsgHotDirTipOrderPath = 'Determine if you want the active frame to be sorted in a specified order after changing directory';
|
|
rsMsgHotDirTipOrderTarget = 'Determine if you want the not active frame to be sorted in a specified order after changing directory';
|
|
rsMsgHotDirTotalBackuped = 'Total entries saved: %d'+#$0A+#$0A+'Backup filename: %s';
|
|
rsMsgHotDirErrorBackuping = 'Error backuping entries...';
|
|
rsHotDirWarningAbortRestoreBackup = 'Warning! When restoring a .hotlist backup file, this will erase existing list to replace by the imported one.'+#$0A+#$0A+
|
|
'Are you sure you want to proceed?';
|
|
rsHotDirForceSortingOrderChoices = 'none;Name, a-z;Name, z-a;Ext, a-z;Ext, z-a;Size 9-0;Size 0-9;Date 9-0;Date 0-9';
|
|
|
|
//Special dir related
|
|
rsMsgSpecialDirUseDC = 'Use Double Commander special path...';
|
|
rsMsgSpecialDirUseTC = 'Use Windows special folder (TC)...';
|
|
rsMsgSpecialDirUseOther = 'Use other Windows special folder...';
|
|
rsMsgSpecialDirEnvVar = 'Use environment variable...';
|
|
rsMsgSpecialDirMkDCRel = 'Make relative to Double Commander special path...';
|
|
rsMsgSpecialDirMkTCTel = 'Make relative to Windows special folder (TC)...';
|
|
rsMsgSpecialDirMkWnRel = 'Make relative to other Windows special folder...';
|
|
rsMsgSpecialDirMkEnvRel = 'Make relative to environment variable...';
|
|
rsMsgSpecialDirMkAbso = 'Make path absolute';
|
|
rsMsgSpecialDirAddActi = 'Add path from active frame';
|
|
rsMsgSpecialDirAddNonActi = 'Add path from inactive frame';
|
|
rsMsgSpecialDirBrowsSel = 'Browse and use selected path';
|
|
|
|
rsMsgSpecialDir = 'Special Dirs';
|
|
rsMsgSpecialDirGotoDC = 'Go to Double Commander special path...';
|
|
rsMsgSpecialDirGotoTC = 'Go to Windows special folder (TC)...';
|
|
rsMsgSpecialDirGotoOther = 'Go to other Windows special folder...';
|
|
rsMsgSpecialDirGotoEnvVar = 'Go to environment variable...';
|
|
rsMsgSpecialDirUseHotDir = 'Use hotdir path';
|
|
rsMsgSpecialDirMakeRelToHotDir = 'Make relative to hotdir path';
|
|
|
|
//Favorite Tabs related
|
|
rsMsgFavoriteTabsEnterName = 'Enter a name for this new Favorite Tabs entry:';
|
|
rsMsgFavoriteTabsEnterNameTitle = 'Saving a new Favorite Tabs entry';
|
|
rsMsgFavoriteTabsSubMenuName = 'Submenu name';
|
|
rsMsgFavoriteTabsImportSubMenuName = 'Legacy tabs imported';
|
|
rsMsgFavoriteTabsDragHereEntry = 'Drag here other entries';
|
|
rsMsgFavortieTabsSaveOverExisting = 'Save current tabs over existing Favorite Tabs entry';
|
|
rsOptFavoriteTabsWhereToAddInList = 'Add at beginning;Add at the end;Alphabetical sort';
|
|
rsMsgFavoriteTabsThisWillLoadFavTabs = 'This will load the Favorite Tabs: "%s"';
|
|
rsMsgFavoriteTabsDeleteAllEntries = 'Are you sure you want to remove all entries of your Favorite Tabs? (There is no "undo" to this action!)';
|
|
rsTitleRenameFavTabs = 'Rename Favorite Tabs';
|
|
rsMsgRenameFavTabs = 'Enter new friendly name for this Favorite Tabs';
|
|
rsTitleRenameFavTabsMenu = 'Rename Favorite Tabs sub-menu';
|
|
rsMsgRenameFavTabsMenu = 'Enter new name for this menu';
|
|
rsMsgFavoriteTabsImportedSuccessfully = 'Number of file(s) imported successfully: %d on %d';
|
|
rsMsgFavoriteTabsExportedSuccessfully = 'Number of Favorite Tabs exported successfully: %d on %d';
|
|
rsMsgFavoriteTabsModifiedNoImport = 'Last Favorite Tabs modification have been saved yet. Do you want to save them prior to continue?';
|
|
rsMsgFavoriteTabsSimpleMode = 'Keep saving dir history with Favorite Tabs:';
|
|
rsMsgFavoriteTabsExtraMode = 'Default extra setting for save dir history for new Favorite Tabs:';
|
|
rsTabsActionOnDoubleClickChoices = 'Do nothing;Close tab;Access Favorite Tabs;Tabs popup menu';
|
|
rsFavTabsPanelSideSelection = 'Left;Right;Active;Inactive;Both;None';
|
|
rsFavTabsSaveDirHistory = 'No;Yes';
|
|
rsMsgFavoriteTabsImportTitle = 'Select .tab file(s) to import (could be more than one at the time!)';
|
|
|
|
//Total Commander related message
|
|
rsMsgLocateTCExecutable = 'Locate TC executable file (totalcmd.exe or totalcmd64.exe)';
|
|
rsMsgLocateTCConfiguation = 'Locate TC configuration file (wincmd.ini)';
|
|
rsDefaultImportedTCToolbarHint = 'Imported TC toolbar';
|
|
rsDefaultImportedDCToolbarHint = 'Imported DC toolbar';
|
|
rsFilenameExportedTCBarPrefix = 'Exported_from_DC';
|
|
rsNoEquivalentInternalCommand = 'No internal equivalent command';
|
|
|
|
// Locked by another process
|
|
rsMsgProcessId = 'PID: %d';
|
|
rsMsgApplicationName = 'Description: %s';
|
|
rsMsgExecutablePath = 'Executable: %s';
|
|
rsMsgOpenInAnotherProgram = 'The action cannot be completed because the file is open in another program:';
|
|
rsMsgTerminateProcess = 'WARNING: Terminating a process can cause undesired results including loss of data and system instability.' + #32 +
|
|
'The process will not be given the chance to save its state or data before it is terminated. Are you sure you want to terminate the process?';
|
|
|
|
// for context menu
|
|
rsMnuActions = 'Actions';
|
|
rsMnuOpen = 'Open';
|
|
rsMnuView = 'View';
|
|
rsMnuEdit = 'Edit';
|
|
rsMnuOpenWith = 'Open with';
|
|
rsMnuOpenWithOther = 'Other...';
|
|
rsMenuMacOsServices = 'Services';
|
|
rsMenuMacOsShare = 'Share...';
|
|
rsMnuMount = 'Mount';
|
|
rsMnuUmount = 'Unmount';
|
|
rsMnuNoMedia = 'No media available';
|
|
rsMnuEject = 'Eject';
|
|
rsMnuSortBy = 'Sort by';
|
|
rsMnuNew = 'New';
|
|
rsMnuRestore = 'Restore';
|
|
rsMnuPackHere = 'Pack here...';
|
|
rsMnuExtractHere = 'Extract here...';
|
|
// for main menu
|
|
rsMnuCreateShortcut = 'Create Shortcut...';
|
|
rsMnuMapNetworkDrive = 'Map Network Drive...';
|
|
rsMnuDisconnectNetworkDrive = 'Disconnect Network Drive...';
|
|
// for content plugins menu
|
|
rsMnuContentDefault = '<Default>';
|
|
rsMnuContentOctal = 'Octal';
|
|
// wcx module messages
|
|
rsMsgSelLocNextVol = 'Please select location of next volume';
|
|
rsMsgNextVolUnpack = 'Next volume will be unpacked';
|
|
// wcx module errors messages
|
|
rsMsgErrEndArchive = 'No more files in archive';
|
|
rsMsgErrNoMemory = 'Not enough memory';
|
|
rsMsgErrBadData = 'Data is bad';
|
|
rsMsgErrBadArchive = 'CRC error in archive data';
|
|
rsMsgErrUnknownFormat = 'Archive format unknown';
|
|
rsMsgErrEOpen = 'Cannot open existing file';
|
|
rsMsgErrECreate = 'Cannot create file';
|
|
rsMsgErrEClose = 'Error closing file';
|
|
rsMsgErrERead = 'Error reading from file';
|
|
rsMsgErrEWrite = 'Error writing to file';
|
|
rsMsgErrSmallBuf = 'Buffer too small';
|
|
rsMsgErrEAborted = 'Function aborted by user';
|
|
rsMsgErrNoFiles = 'No files found';
|
|
rsMsgErrTooManyFiles = 'Too many files to pack';
|
|
rsMsgErrNotSupported = 'Function not supported!';
|
|
rsMsgErrInvalidLink = 'Invalid link';
|
|
// Vfs
|
|
rsVfsNetwork = 'Network';
|
|
rsVfsRecycleBin = 'Recycle Bin';
|
|
|
|
// Buttons.
|
|
rsDlgButtonOK = '&OK';
|
|
rsDlgButtonNo = '&No';
|
|
rsDlgButtonYes = '&Yes';
|
|
rsDlgButtonCancel = '&Cancel';
|
|
rsDlgButtonNone = 'Non&e';
|
|
rsDlgButtonAppend = 'A&ppend';
|
|
rsDlgButtonResume = '&Resume';
|
|
rsDlgButtonRename = 'R&ename';
|
|
rsDlgButtonCopyInto = '&Merge';
|
|
rsDlgButtonCopyIntoAll = 'Mer&ge All';
|
|
rsDlgButtonOverwrite = '&Overwrite';
|
|
rsDlgButtonOverwriteAll = 'Overwrite &All';
|
|
rsDlgButtonOverwriteOlder = 'Overwrite All Ol&der';
|
|
rsDlgButtonOverwriteSmaller = 'Overwrite All S&maller';
|
|
rsDlgButtonOverwriteLarger = 'Overwrite All &Larger';
|
|
rsDlgButtonAutoRenameSource = 'A&uto-rename source files';
|
|
rsDlgButtonAutoRenameTarget = 'Auto-rename tar&get files';
|
|
rsDlgButtonSkip = '&Skip';
|
|
rsDlgButtonSkipAll = 'S&kip All';
|
|
rsDlgButtonIgnore = 'Ig&nore';
|
|
rsDlgButtonIgnoreAll = 'I&gnore All';
|
|
rsDlgButtonAll = 'A&ll';
|
|
rsDlgButtonRetry = 'Re&try';
|
|
rsDlgButtonAbort = 'Ab&ort';
|
|
rsDlgButtonOther = 'Ot&her';
|
|
rsDlgButtonRetryAdmin = 'As Ad&ministrator';
|
|
rsDlgButtonUnlock = '&Unlock';
|
|
rsDlgButtonCompare = 'Compare &by content';
|
|
|
|
rsDlgButtonContinue = '&Continue';
|
|
rsDlgButtonExitProgram = 'E&xit program';
|
|
|
|
// Log file
|
|
rsMsgLogSuccess = 'Done: ';
|
|
rsMsgLogError = 'Error: ';
|
|
rsMsgLogInfo = 'Info: ';
|
|
rsMsgLogCopy = 'Copy file %s';
|
|
rsMsgLogMove = 'Move file %s';
|
|
rsMsgLogDelete = 'Delete file %s';
|
|
rsMsgLogWipe = 'Wipe file %s';
|
|
rsMsgLogLink = 'Create link %s';
|
|
rsMsgLogSymLink = 'Create symlink %s';
|
|
rsMsgLogMkDir = 'Create directory %s';
|
|
rsMsgLogRmDir = 'Remove directory %s';
|
|
rsMsgLogWipeDir = 'Wipe directory %s';
|
|
rsMsgLogPack = 'Pack to file %s';
|
|
rsMsgLogExtract = 'Extract file %s';
|
|
rsMsgLogTest = 'Test file integrity %s';
|
|
rsMsgLogExtCmdLaunch = 'Launch external';
|
|
rsMsgLogExtCmdResult = 'Result external';
|
|
rsMsgLogProgramStart = 'Program start';
|
|
rsMsgLogProgramShutdown = 'Program shutdown';
|
|
rsMsgExitStatusCode = 'Exit status:';
|
|
|
|
rsSearchResult = 'Search result';
|
|
rsShowHelpFor = '&Show help for %s';
|
|
rsClipboardContainsInvalidToolbarData = 'Clipboard doesn''t contain any valid toolbar data.';
|
|
|
|
//Panel Color Configuration
|
|
rsMsgPanelPreview = 'Below is a preview. You may move cursor and select files to get immediately an actual look and feel of the various settings.';
|
|
|
|
// File operations dialog
|
|
rsDlgCp = 'Copy file(s)';
|
|
rsDlgMv = 'Move file(s)';
|
|
rsDlgOpPause = 'Pau&se';
|
|
rsDlgOpStart = '&Start';
|
|
rsDlgQueue = 'Queue';
|
|
rsDlgSpeed = 'Speed %s/s';
|
|
rsDlgSpeedTime = 'Speed %s/s, time remaining %s';
|
|
|
|
// File operations
|
|
rsFileOpDirectoryExistsOptions = 'Ask;Merge;Skip';
|
|
rsFileOpFileExistsOptions = 'Ask;Overwrite;Overwrite Older;Skip';
|
|
rsFileOpCopyMoveFileExistsOptions = 'Ask;Overwrite;Skip';
|
|
rsFileOpSetPropertyErrorOptions = 'Ask;Don''t set anymore;Ignore errors';
|
|
|
|
// Viewer
|
|
rsViewAboutText = 'Internal Viewer of Double Commander.';
|
|
rsViewNotFound = '%s not found!';
|
|
rsViewEncoding = 'Encoding';
|
|
rsViewNewSize = 'New Size';
|
|
rsViewImageType = 'Image Type';
|
|
rsViewBadQuality = 'Bad Quality';
|
|
rsViewPaintToolsList = 'Pen;Rect;Ellipse';
|
|
|
|
// Editor
|
|
rsEditGotoLineTitle = 'Goto Line';
|
|
rsEditGotoLineQuery = 'Goto line:';
|
|
rsEditAboutText = 'Internal Editor of Double Commander.';
|
|
// Editor Highlighters
|
|
rsSynLangPlainText = 'Plain text';
|
|
rsSynDefaultText = 'Default text';
|
|
|
|
// Columns in file panel
|
|
rsColName = 'Name';
|
|
rsColExt = 'Ext';
|
|
rsColSize = 'Size';
|
|
rsColDate = 'Date';
|
|
rsColAttr = 'Attr';
|
|
|
|
// Filter status in file panel
|
|
rsFilterStatus = 'FILTER';
|
|
rsSearchStatus = 'SEARCH';
|
|
|
|
// Cancel operations in file panel
|
|
rsCancelFilter = 'Cancel Quick Filter';
|
|
rsCancelOperation = 'Cancel Current Operation';
|
|
|
|
// File function names
|
|
rsFuncName = 'Name';
|
|
rsFuncExt = 'Extension';
|
|
rsFuncSize = 'Size';
|
|
rsFuncAttr = 'Attributes';
|
|
rsFuncPath = 'Path';
|
|
rsFuncGroup = 'Group';
|
|
rsFuncOwner = 'Owner';
|
|
rsFuncMTime = 'Modification date/time';
|
|
rsFuncCTime = 'Creation date/time';
|
|
rsFuncATime = 'Access date/time';
|
|
rsFuncHTime = 'Change date/time';
|
|
rsFuncLinkTo = 'Link to';
|
|
rsFuncNameNoExt = 'Name without extension';
|
|
rsFuncType = 'Type';
|
|
rsFuncComment = 'Comment';
|
|
rsFuncCompressedSize = 'Compressed size';
|
|
rsFuncTrashOrigPath = 'Original path';
|
|
|
|
// Tools
|
|
rsToolViewer = 'Viewer';
|
|
rsToolEditor = 'Editor';
|
|
rsToolDiffer = 'Differ';
|
|
rsToolTerminal = 'Terminal';
|
|
rsToolErrorOpeningViewer = 'Error opening viewer';
|
|
rsToolErrorOpeningEditor = 'Error opening editor';
|
|
rsToolErrorOpeningDiffer = 'Error opening differ';
|
|
rsToolErrorOpeningTerminal = 'Error opening terminal';
|
|
// Configure custom columns dialog
|
|
rsConfColDelete = 'Delete';
|
|
rsConfColCaption = 'Caption';
|
|
rsConfColWidth = 'Width';
|
|
rsConfColAlign = 'Align';
|
|
rsConfColFieldCont = 'Field contents';
|
|
rsConfColMove='Move';
|
|
rsConfCustHeader='Customize column';
|
|
// Open with dialog
|
|
rsOpenWithMultimedia = 'Multimedia';
|
|
rsOpenWithDevelopment = 'Development';
|
|
rsOpenWithEducation = 'Education';
|
|
rsOpenWithGames = 'Games';
|
|
rsOpenWithGraphics = 'Graphics';
|
|
rsOpenWithNetwork = 'Network';
|
|
rsOpenWithOffice = 'Office';
|
|
rsOpenWithScience = 'Science';
|
|
rsOpenWithSettings = 'Settings';
|
|
rsOpenWithSystem = 'System';
|
|
rsOpenWithUtility = 'Accessories';
|
|
rsOpenWithOther = 'Other';
|
|
// File properties dialog
|
|
rsPropsFolder = 'Directory';
|
|
rsPropsFile = 'File';
|
|
rsPropsSpChrDev = 'Special character device';
|
|
rsPropsSpBlkDev = 'Special block device';
|
|
rsPropsNmdPipe = 'Named pipe';
|
|
rsPropsSymLink = 'Symbolic link';
|
|
rsPropsSocket = 'Socket';
|
|
rsPropsUnknownType = 'Unknown type';
|
|
rsPropsMultipleTypes = 'Multiple types';
|
|
rsPropsContains = 'Files: %d, folders: %d';
|
|
rsPropsErrChMod = 'Can not change access rights for "%s"';
|
|
rsPropsErrChOwn = 'Can not change owner for "%s"';
|
|
// Compare by content Dialog
|
|
rsDiffMatches = ' Matches: ';
|
|
rsDiffModifies = ' Modifies: ';
|
|
rsDiffAdds = ' Adds: ';
|
|
rsDiffDeletes = ' Deletes: ';
|
|
rsDiffComparing = 'Comparing...';
|
|
rsDiffFilesIdentical = 'The two files are identical!';
|
|
rsDiffTextIdentical = 'The text is identical, but the following options are used:';
|
|
rsDiffTextIdenticalNotMatch = 'The text is identical, but the files do not match!'+#$0A+'The following differences were found:';
|
|
rsDiffTextDifferenceEncoding = 'Encoding';
|
|
rsDiffTextDifferenceLineEnding = 'Line-endings';
|
|
// Find files dialog
|
|
rsFindSearchFiles = 'Find files';
|
|
rsFindDefineTemplate = 'Define template';
|
|
rsFindScanning = 'Scanning';
|
|
rsFindScanned = 'Scanned: %d';
|
|
rsFindFound = 'Found: %d';
|
|
rsFindTimeOfScan = 'Time of scan: ';
|
|
rsFindWhereBeg = 'Begin at';
|
|
rsFindDirNoEx = 'Directory %s does not exist!';
|
|
rsFindDepthAll = 'all (unlimited depth)';
|
|
rsFindDepthCurDir = 'current dir only';
|
|
rsFindDepth = '%s level(s)';
|
|
rsFindSaveTemplateCaption = 'Save search template';
|
|
rsFindSaveTemplateTitle = 'Template name:';
|
|
rsSearchTemplateUnnamed = '<unnamed template>';
|
|
rsListOfFindfilesWindows = 'List of "Find files" windows';
|
|
rsSelectYouFindFilesWindow = 'Select your window';
|
|
rsNoFindFilesWindowYet = 'Sorry, no "Find files" window yet...';
|
|
rsNoOtherFindFilesWindowToClose = 'Sorry, no other "Find files" window to close and free from memory...';
|
|
rsNewSearchClearFilterOptions = 'Keep;Clear;Prompt';
|
|
rsClearFiltersOrNot = 'Do you want to clear filters for this new search?';
|
|
rsSearchWithDSXPluginInProgress = 'A file search using DSX plugin is already in progress.'+#$0A+'We need that one to be completed before to launch a new one.';
|
|
rsSearchWithWDXPluginInProgress = 'A file search using WDX plugin is already in progress.'+#$0A+'We need that one to be completed before to launch a new one.';
|
|
rsPluginSearchFieldNotFound = 'Field "%s" not found!';
|
|
rsPluginSearchPluginNotFound = 'Plugin "%s" not found!';
|
|
rsPluginSearchUnitNotFoundForField = 'Unit "%s" not found for field "%s" !';
|
|
rsPluginSearchContainsNotCase = 'contains';
|
|
rsPluginSearchNotContainsNotCase = '!contains';
|
|
rsPluginSearchContainsCaseSenstive = 'contains(case)';
|
|
rsPluginSearchNotContainsCaseSenstive = '!contains(case)';
|
|
rsPluginSearchEqualNotCase = '=';
|
|
rsPluginSearchNotEqualNotCase = '!=';
|
|
rsPluginSearchEqualCaseSensitive = '=(case)';
|
|
rsPluginSearchNotEquaCaseSensitive = '!=(case)';
|
|
rsPluginSearchRegExpr = 'regexp';
|
|
rsPluginSearchNotRegExpr = '!regexp';
|
|
|
|
rsTimeUnitSecond = 'Second(s)';
|
|
rsTimeUnitMinute = 'Minute(s)';
|
|
rsTimeUnitHour = 'Hour(s)';
|
|
rsTimeUnitDay = 'Day(s)';
|
|
rsTimeUnitWeek = 'Week(s)';
|
|
rsTimeUnitMonth = 'Month(s)';
|
|
rsTimeUnitYear = 'Year(s)';
|
|
rsSizeUnitBytes = 'Bytes';
|
|
rsSizeUnitKBytes = 'Kilobytes';
|
|
rsSizeUnitMBytes = 'Megabytes';
|
|
rsSizeUnitGBytes = 'Gigabytes';
|
|
rsSizeUnitTBytes = 'Terabytes';
|
|
rsLegacyOperationByteSuffixLetter = 'B'; //Must be 1 character. Respecting legacy, letter added to following single letters for size when not empty.
|
|
rsLegacyDisplaySizeSingleLetterKilo = 'K'; //Must be 1 character. By legacy before 2018-11 it was a 'K'. If for a language a different letter was better, it's now changeable in language file.
|
|
rsLegacyDisplaySizeSingleLetterMega = 'M'; //Must be 1 character. By legacy before 2018-11 it was a 'M'. If for a language a different letter was better, it's now changeable in language file.
|
|
rsLegacyDisplaySizeSingleLetterGiga = 'G'; //Must be 1 character. By legacy before 2018-11 it was a 'G'. If for a language a different letter was better, it's now changeable in language file.
|
|
rsLegacyDisplaySizeSingleLetterTera = 'T'; //Must be 1 character. By legacy it was not present before 2018-11. It's also now changeable in language file.
|
|
rsDefaultPersonalizedAbbrevByte = 'B';
|
|
rsDefaultPersonalizedAbbrevKilo = 'KB';
|
|
rsDefaultPersonalizedAbbrevMega = 'MB';
|
|
rsDefaultPersonalizedAbbrevGiga = 'GB';
|
|
rsDefaultPersonalizedAbbrevTera = 'TB';
|
|
rsAbbrevDisplayDir = '<DIR>';
|
|
rsAbbrevDisplayLink = '<LNK>';
|
|
rsOptPersonalizedFileSizeFormat = 'Personalized float;Personalized byte;Personalized kilobyte;Personalized megabyte;Personalized gigabyte;Personalized terabyte';
|
|
rsOptFileSizeFloat = 'float';
|
|
rsFreeMsg = '%s of %s free';
|
|
rsFreeMsgShort = '%s free';
|
|
|
|
// Other
|
|
rsCopyNameTemplate = 'Copy (%d) %s';
|
|
// Symlink dialog
|
|
rsSymErrCreate = 'Error creating symlink.';
|
|
// Hardlink dialog
|
|
rsHardErrCreate = 'Error creating hardlink.';
|
|
// Splitter dialog
|
|
rsSplitSelDir = 'Select directory:';
|
|
rsSplitErrFileSize = 'Incorrect file size format!';
|
|
rsSplitErrDirectory = 'Unable to create target directory!';
|
|
rsSplitErrSplitFile = 'Unable to split the file!';
|
|
rsSplitMsgManyParts = 'The number of parts is more than 100! Continue?';
|
|
rsSplitPreDefinedSizes = 'Automatic;1457664B - 3.5" High Density 1.44M;1213952B - 5.25" High Density 1.2M;730112B - 3.5" Double Density 720K;362496B - 5.25" Double Density 360K;98078KB - ZIP 100MB;650MB - CD 650MB;700MB - CD 700MB;4482MB - DVD+R';
|
|
|
|
// Select duplicate files dialog
|
|
rsSelectDuplicateMethod = 'Newest;Oldest;Largest;Smallest;First in group;Last in group';
|
|
|
|
// Multi-Rename Tool dialog
|
|
rsMulRenLastPreset = '[The last used]';
|
|
rsMulRenWarningDuplicate = 'Warning, duplicate names!';
|
|
rsMulRenAutoRename = 'Do auto-rename to "name (1).ext", "name (2).ext" etc.?';
|
|
rsMulRenWrongLinesNumber = 'File contains wrong number of lines: %d, should be %d!';
|
|
rsMulRenFileNameStyleList = 'No change;UPPERCASE;lowercase;First char uppercase;' +
|
|
'First Char Of Every Word Uppercase;';
|
|
rsMulRenLaunchBehaviorOptions = 'Last masks under [Last One] preset;Last preset;New fresh masks';
|
|
rsMulRenSaveModifiedPreset = '"%s" preset has been modified.'+#$0A+'Do you want to save it now?';
|
|
rsMulRenSortingPresets = 'Sorting presets';
|
|
rsMulRenDefineVariableName = 'Define variable name';
|
|
rsMulRenDefineVariableValue = 'Define variable value';
|
|
rsMulRenEnterNameForVar = 'Enter variable name';
|
|
rsMulRenEnterValueForVar = 'Enter value for variable "%s"';
|
|
rsMulRenExitModifiedPresetOptions = 'Ignore, just save as the [Last One];Prompt user to confirm if we save it;Save automatically';
|
|
rsMulRenDefaultPresetName = 'Preset name';
|
|
rsMulRenPromptForSavedPresetName = 'Save preset as';
|
|
rsMulRenPromptNewPresetName = 'Enter new preset name';
|
|
rsMulRenPromptNewNameExists = 'Preset name already exists. Overwrite?';
|
|
rsMulRenLogStart = 'Multi-Rename Tool';
|
|
|
|
rsMulRenMaskName = 'Name';
|
|
rsMulRenMaskCharAtPosX = 'Character at position x';
|
|
rsMulRenMaskCharAtPosXtoY = 'Characters from position x to y';
|
|
rsMulRenMaskFullName = 'Complete filename with path and extension';
|
|
rsMulRenMaskFullNameCharAtPosXtoY = 'Complete filename, char from pos x to y';
|
|
rsMulRenMaskParent = 'Parent folder(s)';
|
|
rsMulRenMaskExtension = 'Extension';
|
|
rsMulRenMaskCounter = 'Counter';
|
|
rsMulRenMaskGUID = 'GUID';
|
|
rsMulRenMaskVarOnTheFly = 'Variable on the fly';
|
|
rsMulRenMaskYear2Digits = 'Year (2 digits)';
|
|
rsMulRenMaskYear4Digits = 'Year (4 digits)';
|
|
rsMulRenMaskMonth = 'Month';
|
|
rsMulRenMaskMonth2Digits = 'Month (2 digits)';
|
|
rsMulRenMaskMonthAbrev = 'Month name (short, e.g., "jan")';
|
|
rsMulRenMaskMonthComplete = 'Month name (long, e.g., "january")';
|
|
rsMulRenMaskDay = 'Day';
|
|
rsMulRenMaskDay2Digits = 'Day (2 digits)';
|
|
rsMulRenMaskDOWAbrev = 'Day of the week (short, e.g., "mon")';
|
|
rsMulRenMaskDOWComplete = 'Day of the week (long, e.g., "monday")';
|
|
rsMulRenMaskCompleteDate = 'Complete date';
|
|
rsMulRenMaskHour = 'Hour';
|
|
rsMulRenMaskHour2Digits = 'Hour (2 digits)';
|
|
rsMulRenMaskMin = 'Minute';
|
|
rsMulRenMaskMin2Digits = 'Minute (2 digits)';
|
|
rsMulRenMaskSec = 'Second';
|
|
rsMulRenMaskSec2Digits = 'Second (2 digits)';
|
|
rsMulRenMaskCompleteTime = 'Complete time';
|
|
|
|
rsMulRenFilename = 'Name';
|
|
rsMulRenExtension = 'Extension';
|
|
rsMulRenCounter = 'Counter';
|
|
rsMulRenDate = 'Date';
|
|
rsMulRenTime = 'Time';
|
|
rsMulRenPlugins = 'Plugins';
|
|
|
|
// CheckSumCalcVerify dialog
|
|
rsCheckSumVerifyTitle = 'Verify checksum';
|
|
rsCheckSumVerifyText = 'Enter checksum and select algorithm:';
|
|
// CheckSumVerify dialog
|
|
rsCheckSumVerifyGeneral = 'General:';
|
|
rsCheckSumVerifyTotal = 'Total:';
|
|
rsCheckSumVerifySuccess = 'Success:';
|
|
rsCheckSumVerifyMissing = 'Missing:';
|
|
rsCheckSumVerifyBroken = 'Broken:';
|
|
rsCheckSumVerifyReadError = 'Read error:';
|
|
// Drive status
|
|
rsDriveNoMedia = '<no media>';
|
|
rsDriveNoLabel = '<no label>';
|
|
|
|
// Edit
|
|
rsEditNewFile = 'new.txt';
|
|
rsEditNewOpen = 'Open file';
|
|
rsEditNewFileName = 'Filename:';
|
|
|
|
// Edit search
|
|
rsEditSearchCaption = 'Search';
|
|
rsEditSearchReplace ='Replace';
|
|
rsEditSearchFrw = '&Forward';
|
|
rsEditSearchBack = '&Backward';
|
|
rsZeroReplacement = 'No replacement took place.';
|
|
rsXReplacements = 'Number of replacement: %d';
|
|
|
|
// Options editors
|
|
rsOptionsEditorArchivers = 'Archivers';
|
|
rsOptionsEditorAutoRefresh = 'Auto refresh';
|
|
rsOptionsEditorBehavior = 'Behaviors';
|
|
rsOptionsEditorColors = 'Colors';
|
|
rsOptionsEditorBriefView = 'Brief';
|
|
rsOptionsEditorColumnsView = 'Columns';
|
|
rsOptionsEditorCustomColumns = 'Custom columns';
|
|
rsOptionsEditorConfiguration = 'Configuration';
|
|
rsOptionsEditorDragAndDrop = 'Drag & drop';
|
|
rsOptionsEditorDrivesListButton = 'Drives list button';
|
|
rsOptionsEditorFileOperations = 'File operations';
|
|
rsOptionsEditorFilePanels = 'File panels';
|
|
rsOptionsEditorFileTypes = 'File types';
|
|
rsOptionsEditorFileNewFileTypes = 'New';
|
|
rsOptionsEditorFilesViews = 'Files views';
|
|
rsOptionsEditorFilesViewsComplement = 'Files views extra';
|
|
rsOptionsEditorFolderTabs = 'Folder tabs';
|
|
rsOptionsEditorFolderTabsExtra = 'Folder tabs extra';
|
|
rsOptionsEditorFonts = 'Fonts';
|
|
rsOptionsEditorHighlighters = 'Highlighters';
|
|
rsOptionsEditorHotKeys = 'Hot keys';
|
|
rsOptionsEditorIcons = 'Icons';
|
|
rsOptionsEditorIgnoreList = 'Ignore list';
|
|
rsOptionsEditorKeyboard = 'Keys';
|
|
rsOptionsEditorLanguage = 'Language';
|
|
rsOptionsEditorLayout = 'Layout';
|
|
rsOptionsEditorLog = 'Log';
|
|
rsOptionsEditorMiscellaneous = 'Miscellaneous';
|
|
rsOptionsEditorMouse = 'Mouse';
|
|
rsOptionsEditorPlugins = 'Plugins';
|
|
rsOptionsEditorQuickSearch = 'Quick search/filter';
|
|
rsOptionsEditorTerminal = 'Terminal';
|
|
rsOptionsEditorToolbar = 'Toolbar';
|
|
rsOptionsEditorToolbarExtra = 'Toolbar Extra';
|
|
rsOptionsEditorToolbarMiddle = 'Toolbar Middle';
|
|
rsOptionsEditorTools = 'Tools';
|
|
rsOptionsEditorTooltips = 'Tooltips';
|
|
rsOptionsEditorFileAssoc = 'File associations';
|
|
rsOptionsEditorFileAssicExtra = 'File associations extra';
|
|
rsOptionsEditorDirectoryHotlist = 'Directory Hotlist';
|
|
rsOptionsEditorDirectoryHotlistExtra = 'Directory Hotlist Extra';
|
|
rsOptionsEditorFavoriteTabs = 'Favorite Tabs';
|
|
rsOptionsEditorOptionsChanged = 'Options have changed in "%s"'+#$0A+#$0A+'Do you want to save modifications?';
|
|
rsOptionsEditorFileSearch = 'File search';
|
|
rsOptionsEditorMultiRename = 'Multi-Rename Tool';
|
|
//-------------------------------
|
|
rsOptConfigSortOrder = 'Classic, legacy order;Alphabetic order (but language still first)';
|
|
rsOptConfigTreeState = 'Full expand;Full collapse';
|
|
rsOptDifferFramePosition = 'Active frame panel on left, inactive on right (legacy);Left frame panel on left, right on right';
|
|
//-------------------------------
|
|
rsDarkMode = 'Dark mode';
|
|
rsDarkModeOptions = 'Auto;Enabled;Disabled';
|
|
//-------------------------------
|
|
rsDriveFreeSpaceIndicator = 'Drive Free Space Indicator';
|
|
//-------------------------------
|
|
rsOptEnterExt = 'Enter extension';
|
|
rsOptAssocPluginWith = 'Associate plugin "%s" with:';
|
|
rsOptMouseSelectionButton = 'Left button;Right button;';
|
|
rsOptAutoSizeColumn = 'First;Last;';
|
|
rsOptTabsPosition = 'Top;Bottom;';
|
|
rsOptArchiveTypeName = 'Archive type name:';
|
|
//-------------------------------
|
|
// Hotkeys
|
|
rsOptHotkeysAddDeleteShortcutLong =
|
|
'Shortcut %s for cm_Delete will be registered, so it can be used to reverse this setting.';
|
|
rsOptHotkeysAddShortcutButton = 'Add shortcut';
|
|
rsOptHotkeysCannotSetShortcut = 'Cannot set shortcut';
|
|
rsOptHotkeysChangeShortcut = 'Change shortcut';
|
|
rsOptHotkeysDeleteTrashCanOverrides =
|
|
'Shortcut %s for cm_Delete has a parameter that overrides this setting. Do you want to change this parameter to use the global setting?';
|
|
rsOptHotkeysDeleteTrashCanParameterExists =
|
|
'Shortcut %s for cm_Delete needs to have a parameter changed to match shortcut %s. Do you want to change it?';
|
|
rsOptHotkeysSetDeleteShortcut = 'Set shortcut to delete file';
|
|
rsOptHotkeysShortcutForDeleteAlreadyAssigned =
|
|
'For this setting to work with shortcut %s, shortcut %s must be assigned to cm_Delete but it is already assigned to %s. Do you want to change it?';
|
|
rsOptHotkeysShortcutForDeleteIsSequence =
|
|
'Shortcut %s for cm_Delete is a sequence shortcut for which a hotkey with reversed Shift cannot be assigned. This setting might not work.';
|
|
rsOptHotkeysCommand = 'Command';
|
|
rsOptHotkeysDescription = 'Description';
|
|
rsOptHotkeysFixParameter = 'Fix parameter';
|
|
rsOptHotkeysHotkeys = 'Hotkeys';
|
|
rsOptHotkeysHotkey = 'Hotkey';
|
|
rsOptHotkeysNoHotkey = '<none>';
|
|
rsOptHotkeysParameters = 'Parameters';
|
|
rsOptHotkeysShortCutUsed = 'Shortcut in use';
|
|
rsOptHotkeysShortCutUsedText1 = 'Shortcut %s is already used.';
|
|
rsOptHotkeysShortCutUsedText2 = 'Change it to %s?';
|
|
rsOptHotkeysUsedBy = 'used for %s in %s';
|
|
rsOptHotkeysUsedWithDifferentParams = 'used for this command but with different parameters';
|
|
rsOptHotkeysAddHotkey = 'Add hotkey for %s';
|
|
rsOptHotkeysEditHotkey = 'Edit hotkey for %s';
|
|
rsHotkeyCategoryMain = 'Main';
|
|
rsHotkeyCategoryViewer = 'Viewer';
|
|
rsHotkeyCategoryEditor = 'Editor';
|
|
rsHotkeyCategoryFindFiles = 'Find files';
|
|
rsHotkeyCategoryDiffer = 'Differ';
|
|
rsHotkeyCategoryCopyMoveDialog = 'Copy/Move Dialog';
|
|
rsHotkeyCategorySyncDirs = 'Synchronize Directories';
|
|
rsHotkeyCategoryEditCommentDialog = 'Edit Comment Dialog';
|
|
rsHotkeyCategoryMultiRename = 'Multi-Rename Tool';
|
|
rsHotkeySortOrder = 'By command name;By shortcut key (grouped);By shortcut key (one per row)';
|
|
rsHotKeyNoSCEnter='No shortcut with "ENTER"';
|
|
rsHotKeyFileSaveModified = '"%s" setup has been modified.'+#$0A+'Do you want to save it now?';
|
|
rsHotKeyFileNewName = 'New name';
|
|
rsHotKeyFileInputNewName = 'Input your new name';
|
|
rsHotKeyFileAlreadyExists = 'A setup with that name already exists.'+#$0A+'Do you want to overwrite it?';
|
|
rsHotKeyFileCopyOf = 'Copy of %s';
|
|
rsHotKeyFileConfirmErasure = 'Are you sure you want to erase setup "%s"?';
|
|
rsHotKeyFileMustKeepOne = 'You must keep at least one shortcut file.';
|
|
rsHotKeyFileConfirmDefault = 'Are you sure you want to restore default?';
|
|
|
|
rsCmdCategoryListInOrder='All;Active Panel;Left Panel;Right Panel;File Operations;Configuration;Network;Miscellaneous;Parallel Port;Print;Mark;Security;Clipboard;FTP;Navigation;Help;Window;Command Line;Tools;View;User;Tabs;Sorting;Log';
|
|
rsCmdKindOfSort='Legacy sorted;A-Z sorted';
|
|
rsMsgThisIsNowInClipboard = '"%s" is now in the clipboard';
|
|
rsSimpleWordAll = 'All';
|
|
rsSimpleWordCommand = 'Command';
|
|
rsSimpleWordCategory = 'Category';
|
|
rsSimpleWordFilename = 'Filename';
|
|
rsSimpleWordParameter = 'Param';
|
|
rsSimpleWordWorkDir = 'WorkDir';
|
|
rsSimpleWordResult = 'Result';
|
|
rsSimpleWordColumnSingular = 'Column';
|
|
rsSimpleWordLetter = 'Letter';
|
|
rsSimpleWordTrue = 'True';
|
|
rsSimpleWordFalse = 'False';
|
|
rsSimpleWordError = 'Error';
|
|
rsSimpleWordSuccessExcla = 'Success!';
|
|
rsSimpleWordFailedExcla = 'Failed!';
|
|
rsSimpleWordVariable = 'Variable';
|
|
|
|
// Plugins
|
|
rsOptPluginsActive = 'Active';
|
|
rsOptPluginsName = 'Name';
|
|
rsOptPluginsRegisteredFor = 'Registered for';
|
|
rsOptPluginsFileName = 'File name';
|
|
rsOptPluginsDescription = 'Description';
|
|
rsOptPluginAlreadyAssigned = 'Plugin %s is already assigned for the following extensions:';
|
|
rsOptPluginEnable = 'E&nable';
|
|
rsOptPluginDisable = 'D&isable';
|
|
rsOptPluginShowByPlugin = 'By Plugin';
|
|
rsOptPluginShowByExtension = 'By extension';
|
|
rsOptPluginsSelectLuaLibrary = 'Select Lua library file';
|
|
rsOptPluginSortOnlyWhenByExtension = 'Sorting WCX plugins is only possible when showing plugins by extension!';
|
|
rsPluginFilenameStyleList = 'With complete absolute path;Path relative to %COMMANDER_PATH%;Relative to the following';
|
|
//-------------------------------
|
|
rsOptSortMethod = 'Alphabetical, considering accents;Alphabetical with special characters sort;Natural sorting: alphabetical and numbers;Natural with special characters sort';
|
|
rsOptSortCaseSens = 'not case sensitive;according to locale settings (aAbBcC);first upper then lower case (ABCabc)';
|
|
rsOptSortFolderMode = 'sort by name and show first;sort like files and show first;sort like files';
|
|
rsOptNewFilesPosition = 'at the top of the file list;after directories (if directories are sorted before files);at sorted position;at the bottom of the file list';
|
|
rsOptUpdatedFilesPosition = 'don''t change position;use the same setting as for new files;to sorted position';
|
|
rsOptFileOperationsProgressKind = 'separate window;minimized separate window;operations panel';
|
|
rsOptTypeOfDuplicatedRename = 'DC legacy - Copy (x) filename.ext;Windows - filename (x).ext;Other - filename(x).ext';
|
|
// Keyboard
|
|
rsOptLetters = 'None;Command Line;Quick Search;Quick Filter';
|
|
// Directory hotlist
|
|
rsOptAddFromMainPanel = 'Add at &beginning;Add at the end;Smart add';
|
|
//File Associations
|
|
rsMsgTitleExtNotInFileType = 'Extension of selected file is not in any recognized file types';
|
|
rsMsgSekectFileType = 'Select to which file type to add extension "%s"';
|
|
rsMsgCreateANewFileType = '< Create a new file type "%s files" >';
|
|
rsMsgEnterNewFileTypeName = 'Enter name of new file type to create for extension "%s"';
|
|
rsMsgEnterCustomAction = 'Enter custom action name:';
|
|
rsSimpleWordFiles = 'files';
|
|
rsViewWithInternalViewer = 'with internal viewer';
|
|
rsEditWithInternalEditor = 'with internal editor';
|
|
rsViewWithExternalViewer = 'with external viewer';
|
|
rsEditWithExternalEditor = 'with external editor';
|
|
rsExecuteViaShell = 'Execute via shell';
|
|
rsExecuteViaTerminalClose = 'Execute via terminal and close';
|
|
rsExecuteViaTerminalStayOpen = 'Execute via terminal and stay open';
|
|
rsConfigurationFileAssociation = 'Configure file association';
|
|
//Variables
|
|
rsConfirmExecution = 'Confirming command line and parameters';
|
|
rsVarHelpWith = 'Help with "%" variables';
|
|
rsVarOtherExamples = 'Other example of what''s possible';
|
|
|
|
rsVarOnlyFilename = 'Only filename';
|
|
rsVarPath = 'Path, without ending delimiter';
|
|
rsVarLastDirOfPath = 'Last directory of file''s path';
|
|
rsVarFullPath = 'Complete filename (path+filename)';
|
|
rsVarFilenameNoExt = 'Just filename, no extension';
|
|
rsVarOnlyExtension = 'Only file extension';
|
|
rsVarRelativePathAndFilename = 'Filename with relative path';
|
|
rsVarCurrentPath = 'Path of panel';
|
|
rsVarLastDirCurrentPath = 'Last directory of panel''s path';
|
|
rsVarListFilename = 'Temporary filename of list of filenames';
|
|
rsVarListFullFilename = 'Temporary filename of list of complete filenames (path+filename)';
|
|
rsVarListRelativeFilename = 'Temporary filename of list of filenames with relative path';
|
|
rsVarListInUTF8 = 'Filenames in list in UTF-8';
|
|
rsVarListInUTF16 = 'Filenames in list in UTF-16 with BOM';
|
|
rsVarListInUTF8Quoted = 'Filenames in list in UTF-8, inside double quotes';
|
|
rsVarListInUTF16Quoted = 'Filenames in list in UTF-16 with BOM, inside double quotes';
|
|
|
|
rsVarSourcePanel = 'Active panel (source)';
|
|
rsVarTargetPanel = 'Inactive panel (target)';
|
|
rsVarLeftPanel = 'Left panel';
|
|
rsVarRightPanel = 'Right panel';
|
|
rsVarBothPanelLeftToRight = 'Both panels, from left to right';
|
|
rsVarBothPanelActiveToInactive = 'Both panels, from active to inactive';
|
|
|
|
rsVarShowCommandPrior = 'Show command prior execute';
|
|
rsVarPercentSign = 'Return the percent sign';
|
|
rsVarPercentChangeToPound = 'From here to the end of the line, the percent-variable indicator is the "#" sign';
|
|
rsVarPoundChangeToPercent = 'From here to the end of the line, the percent-variable indicator is back the "%" sign';
|
|
rsVarWillNotBeQuoted = 'Filenames will not be quoted from here';
|
|
rsVarWillBeQuoted = 'Filenames will be quoted from here (default)';
|
|
rsVarWillNotHaveEndingDelimiter = 'Paths will not have ending delimiter (default)';
|
|
rsVarWillHaveEndingDelimiter = 'Paths will have ending delimiter';
|
|
rsVarWillNotDoInTerminal = 'Command will be done in terminal, closed at the end';
|
|
rsVarWillDoInTerminal = 'Command will be done in terminal, remaining opened at the end';
|
|
rsVarSimpleMessage = '%[Simple message]';
|
|
rsVarSimpleShowMessage = 'Will show a simple message';
|
|
rsVarPromptUserForParam = '%[Prompt user for param;Default value proposed]';
|
|
rsVarInputParam = 'Will request request user to enter a parameter with a default suggested value';
|
|
rsVarPrependElement = 'Prepend each name with "-a " or what you want';
|
|
rsVarEncloseElement = 'Enclose each name in brackets or what you want';
|
|
rsVarSecondElementRightPanel = 'Full path of second selected file in right panel';
|
|
|
|
// Quick Search/Filter
|
|
rsOptSearchItems = '&Files;Di&rectories;Files a&nd Directories';
|
|
rsOptSearchCase = '&Sensitive;&Insensitive';
|
|
rsOptSearchOpt = '&Hide filter panel when not focused;Keep saving setting modifications for next session';
|
|
|
|
// Toolbar
|
|
rsOptToolbarButtonType = 'S&eparator;Inte&rnal command;E&xternal command;Men&u';
|
|
rsImportToolbarProblem = 'Cannot find reference to default bar file';
|
|
rsMsgToolbarSaved = 'Saved!'+#$0A+'Toolbar filename: %s';
|
|
rsMsgTCToolbarWhereToSave = 'Enter location and filename where to save a TC Toolbar file';
|
|
rsMsgDCToolbarWhereToSave = 'Enter location and filename where to save a DC Toolbar file';
|
|
rsMsgToolbarRestoreWhat = 'Enter location and filename of Toolbar to restore';
|
|
rsMsgToolbarLocateTCToolbarFile = 'Locate ".BAR" file to import';
|
|
rsMsgToolbarLocateDCToolbarFile = 'Locate ".toolbar" file to import';
|
|
rsMsgTCToolbarNotFound = 'Error! Cannot find the desired wanted TC toolbar output folder:'+#$0A+'%s';
|
|
rsMsgTCConfigNotFound = 'Error! Cannot find the TC configuration file:'+#$0A+'%s';
|
|
rsMsgTCExecutableNotFound = 'Error! Cannot find the TC configuration executable:'+#$0A+'%s';
|
|
rsMsgTCisRunning = 'Error! TC is still running but it should be closed for this operation.'+#$0A+'Close it and press OK or press CANCEL to abort.';
|
|
rsMsgAllDCIntCmds = 'All Double Commander internal commands';
|
|
|
|
//Columns Menu
|
|
rsMenuConfigureCustomColumns= 'Configure custom columns';
|
|
rsMenuConfigureEnterCustomColumnName = 'Enter new custom columns name';
|
|
rsMenuConfigureColumnsSaveToChange = 'To change current editing colmuns view, either SAVE, COPY or DELETE current editing one';
|
|
rsMenuConfigureColumnsAlreadyExists = 'A columns view with that name already exists.';
|
|
|
|
// Operation states.
|
|
rsOperNotStarted = 'Not started';
|
|
rsOperStarting = 'Starting';
|
|
rsOperRunning = 'Running';
|
|
rsOperPausing = 'Pausing';
|
|
rsOperPaused = 'Paused';
|
|
rsOperWaitingForFeedback = 'Waiting for user response';
|
|
rsOperWaitingForConnection = 'Waiting for access to file source';
|
|
rsOperStopping = 'Stopping';
|
|
rsOperStopped = 'Stopped';
|
|
rsOperFinished = 'Finished';
|
|
rsOperAborted = 'Aborted';
|
|
|
|
// Operations descriptions.
|
|
rsOperCalculatingCheckSum = 'Calculating checksum';
|
|
rsOperCalculatingCheckSumIn = 'Calculating checksum in "%s"';
|
|
rsOperCalculatingCheckSumOf = 'Calculating checksum of "%s"';
|
|
rsOperCalculatingStatictics = 'Calculating';
|
|
rsOperCalculatingStatisticsIn = 'Calculating "%s"';
|
|
rsOperCombining = 'Joining';
|
|
rsOperCombiningFromTo = 'Joining files in "%s" to "%s"';
|
|
rsOperCopying = 'Copying';
|
|
rsOperCopyingFromTo = 'Copying from "%s" to "%s"';
|
|
rsOperCopyingSomethingTo = 'Copying "%s" to "%s"';
|
|
rsOperCreatingDirectory = 'Creating directory';
|
|
rsOperCreatingSomeDirectory = 'Creating directory "%s"';
|
|
rsOperDeleting = 'Deleting';
|
|
rsOperDeletingIn = 'Deleting in "%s"';
|
|
rsOperDeletingSomething = 'Deleting "%s"';
|
|
rsOperExecuting = 'Executing';
|
|
rsOperExecutingSomething = 'Executing "%s"';
|
|
rsOperExtracting = 'Extracting';
|
|
rsOperExtractingFromTo = 'Extracting from "%s" to "%s"';
|
|
rsOperListing = 'Listing';
|
|
rsOperListingIn = 'Listing "%s"';
|
|
rsOperMoving = 'Moving';
|
|
rsOperMovingFromTo = 'Moving from "%s" to "%s"';
|
|
rsOperMovingSomethingTo = 'Moving "%s" to "%s"';
|
|
rsOperPacking = 'Packing';
|
|
rsOperPackingFromTo = 'Packing from "%s" to "%s"';
|
|
rsOperPackingSomethingTo = 'Packing "%s" to "%s"';
|
|
rsOperSettingProperty = 'Setting property';
|
|
rsOperSettingPropertyIn = 'Setting property in "%s"';
|
|
rsOperSettingPropertyOf = 'Setting property of "%s"';
|
|
rsOperSplitting = 'Splitting';
|
|
rsOperSplittingFromTo = 'Splitting "%s" to "%s"';
|
|
rsOperTesting = 'Testing';
|
|
rsOperTestingSomething = 'Testing "%s"';
|
|
rsOperTestingIn = 'Testing in "%s"';
|
|
rsOperVerifyingCheckSum = 'Verifying checksum';
|
|
rsOperVerifyingCheckSumIn = 'Verifying checksum in "%s"';
|
|
rsOperVerifyingCheckSumOf = 'Verifying checksum of "%s"';
|
|
rsOperWiping = 'Wiping';
|
|
rsOperWipingIn = 'Wiping in "%s"';
|
|
rsOperWipingSomething = 'Wiping "%s"';
|
|
rsOperWorking = 'Working'; // Generic description for unknown operation
|
|
|
|
//TreeViewMenu
|
|
rsOptionsEditorTreeViewMenu = 'Tree View Menu';
|
|
rsOptionsEditorTreeViewMenuColors = 'Tree View Menu Colors';
|
|
rsStrPreviewSearchingLetters = 'OU';
|
|
rsStrPreviewJustPreview = 'Just preview';
|
|
rsStrPreviewWordWithSearched1 = 'Fabulous';
|
|
rsStrPreviewWordWithSearched2 = 'Marvelous';
|
|
rsStrPreviewWordWithSearched3 = 'Tremendous';
|
|
rsStrPreviewSideNote = 'Side note';
|
|
rsStrPreviewOthers = 'Others';
|
|
rsStrPreviewWordWithoutSearched1 = 'Flat';
|
|
rsStrPreviewWordWithoutSearched2 = 'Limited';
|
|
rsStrPreviewWordWithoutSearched3 = 'Simple';
|
|
rsMsgUnexpectedUsageTreeViewMenu = 'ERROR: Unexpected Tree View Menu usage!';
|
|
rsStrTVMChooseHotDirectory = 'Choose your directory from Hot Directory:';
|
|
rsStrTVMChooseFavoriteTabs = 'Choose you Favorite Tabs:';
|
|
rsStrTVMChooseDirHistory = 'Choose your directory from Dir History';
|
|
rsStrTVMChooseViewHistory = 'Choose your directory from File View History';
|
|
rsStrTVMChooseFromToolbar = 'Choose your action from Maintool bar';
|
|
rsStrTVMChooseFromMainMenu = 'Choose your action from Main Menu';
|
|
rsStrTVMChooseFromCmdLineHistory = 'Choose your command from Command Line History';
|
|
rsStrTVMChooseYourFileOrDir = 'Choose your file or your directory';
|
|
|
|
//Split/Combine operation special message
|
|
rsMsgBadCRC32 = 'Bad CRC32 for resulting file:'+#$0A+'"%s"'+#$0A+#$0A+'Do you want to keep the resulting corrupted file anyway?';
|
|
rsMsgProvideThisFile = 'Please, make this file available. Retry?';
|
|
rsMsgIncorrectFilelength = 'Incorrect resulting filelength for file : "%s"';
|
|
rsMSgUndeterminedNumberOfFile = 'Undetermined';
|
|
rsMsgInsertNextDisk = 'Please insert next disk or something similar.'+#$0A+#$0A+'It is to allow writing this file:'+#$0A+'"%s"'+#$0A+''+#$0A+'Number of bytes still to write: %d';
|
|
msgTryToLocateCRCFile = 'This file cannot be found and could help to validate final combination of files:'+#$0A+'%s'+#$0A+#$0A+'Could you make it available and press "OK" when ready,'+#$0A+'or press "CANCEL" to continue without it?';
|
|
|
|
rsMsgInvalidHexNumber = 'Invalid hexadecimal number: "%s"';
|
|
|
|
//LUA and script related messages
|
|
rsMsgScriptCantFindLibrary = 'ERROR: Problem loading Lua library file "%s"';
|
|
rsMsgWantToConfigureLibraryLocation = 'Do you want to configure Lua library location?';
|
|
|
|
// Unhandled error.
|
|
rsUnhandledExceptionMessage =
|
|
'Please report this error to the bug tracker with a description '
|
|
+ 'of what you were doing and the following file:%s'
|
|
+ 'Press %s to continue or %s to abort the program.';
|
|
|
|
function GetLanguageName(const poFileName : String) : String;
|
|
procedure lngLoadLng(const sFileName:String);
|
|
procedure DoLoadLng;
|
|
|
|
implementation
|
|
|
|
uses
|
|
Forms, Classes, SysUtils, StrUtils, GetText, Translations, uGlobs, uGlobsPaths,
|
|
uTranslator, uDebug, DCClassesUtf8, DCOSUtils, DCStrUtils, StreamEx;
|
|
|
|
function GetLanguageName(const poFileName: String): String;
|
|
var
|
|
sLine: String;
|
|
S, F, Index : Integer;
|
|
Stream: TFileStreamEx;
|
|
Reader: TStreamReader;
|
|
begin
|
|
try
|
|
Stream:= TFileStreamEx.Create(poFileName, fmOpenRead or fmShareDenyNone);
|
|
try
|
|
Index:= 0;
|
|
Reader:= TStreamReader.Create(Stream, BUFFER_SIZE, True);
|
|
repeat
|
|
sLine:= Reader.ReadLine;
|
|
S:= Pos('X-Native-Language', sLine);
|
|
if S > 0 then
|
|
begin
|
|
S:= Pos(':', sLine, S + 17) + 2;
|
|
F:= Pos('\n', sLine, S) - 1;
|
|
Result:= Copy(sLine, S, (F - S) + 1);
|
|
Exit;
|
|
end;
|
|
Inc(Index);
|
|
until (Reader.Eof or (Index > 256));
|
|
finally
|
|
Reader.Free;
|
|
end;
|
|
except
|
|
// Ignore
|
|
end;
|
|
Result:= 'Unknown';
|
|
end;
|
|
|
|
procedure TranslateLCL(poFileName: String);
|
|
const
|
|
BidiModeMap: array[Boolean] of TBiDiMode = (bdLeftToRight,
|
|
{$IF DEFINED(LCLWIN32)}
|
|
bdRightToLeftNoAlign // see http://bugs.freepascal.org/view.php?id=28483
|
|
{$ELSE}
|
|
bdRightToLeft
|
|
{$ENDIF}
|
|
);
|
|
var
|
|
Lang: String = '';
|
|
FallbackLang: string = '';
|
|
UserLang, LCLLngDir: String;
|
|
begin
|
|
LCLLngDir:= gpLngDir + 'lcl' + PathDelim;
|
|
if NumCountChars('.', poFileName) >= 2 then
|
|
begin
|
|
UserLang:= ExtractDelimited(2, poFileName, ['.']);
|
|
Application.BidiMode:= BidiModeMap[Application.IsRTLLang(UserLang)];
|
|
poFileName:= LCLLngDir + Format('lclstrconsts.%s.po', [UserLang]);
|
|
if not mbFileExists(poFileName) then
|
|
begin
|
|
GetLanguageIDs(Lang, FallbackLang);
|
|
poFileName:= LCLLngDir + Format('lclstrconsts.%s.po', [Lang]);
|
|
if not mbFileExists(poFileName) then
|
|
poFileName:= LCLLngDir + Format('lclstrconsts.%s.po', [FallbackLang]);
|
|
end;
|
|
if mbFileExists(poFileName) then
|
|
Translations.TranslateUnitResourceStrings('LCLStrConsts', poFileName);
|
|
end;
|
|
end;
|
|
|
|
procedure lngLoadLng(const sFileName: String);
|
|
const
|
|
DEFAULT_PO = 'doublecmd.pot';
|
|
var
|
|
Lang: String = '';
|
|
FallbackLang: String = '';
|
|
begin
|
|
// Default english interface
|
|
if StrBegins(sFileName, 'doublecmd.po') then
|
|
begin
|
|
gPOFileName := DEFAULT_PO;
|
|
Exit;
|
|
end;
|
|
gPOFileName := sFileName;
|
|
if not mbFileExists(gpLngDir + gPOFileName) then
|
|
begin
|
|
gPOFileName := 'doublecmd.%s.po';
|
|
GetLanguageIDs(Lang, FallbackLang);
|
|
gPOFileName := Format(gPOFileName,[FallbackLang]);
|
|
end;
|
|
if not mbFileExists(gpLngDir + gPOFileName) then
|
|
begin
|
|
gPOFileName := Format(gPOFileName,[Lang]);
|
|
end;
|
|
if not mbFileExists(gpLngDir + gPOFileName) then
|
|
gPOFileName := DEFAULT_PO
|
|
else begin
|
|
DCDebug('Loading lng file: ' + gpLngDir + gPOFileName);
|
|
LRSTranslator := TTranslator.Create(gpLngDir + gPOFileName);
|
|
Translations.TranslateResourceStrings(TTranslator(LRSTranslator).POFile);
|
|
TranslateLCL(gPOFileName);
|
|
end;
|
|
end;
|
|
|
|
procedure DoLoadLng;
|
|
begin
|
|
lngLoadLng(gPOFileName);
|
|
end;
|
|
|
|
finalization
|
|
FreeAndNil(LRSTranslator);
|
|
|
|
end.
|