diff --git a/res/localization/new_translation.loc b/res/localization/new_translation.loc new file mode 100644 index 00000000..a9399c41 --- /dev/null +++ b/res/localization/new_translation.loc @@ -0,0 +1,389 @@ +# This file should be saved as UTF-8, no-BOM + +######################## HOW TO ADD A NEW TRANSLATION ########################### +# 1. Rename this file as 'rufus.loc' and save it in the same directory where you have the Rufus executable. +# 2. Start Rufus, and check the log a line starting with 'LCID' (eg. LCID 0x1809). +# 3. Edit the 'l' line below and: +# - set the IETF language tag (in quotes) for your language, eg: "en-US", "fr-FR", "zh-CN" +# See http://en.wikipedia.org/wiki/IETF_language_tag as well as the table on page 9 of +# http://download.microsoft.com/download/9/5/E/95EF66AF-9026-4BB0-A41D-A4F81802D92C/%5BMS-LCID%5D.pdf +# - set the name under which you want your language to appear in the (future) language selection menu. +# As this is the name users will see, it should be in your language (eg. "正體字" rather than "Chinese") +# - replace "0x1234" with the LCID code you got in step 2. You should also look at the table on page 9 of +# the PDF above to add all the LCID codes your translation should cover. Separate these codes with a comma. +# 4. Translate the messages that appear below into your language. The 'g' lines indicate the group a translated +# element belongs to. You shouldn't have to modify them. +# 5. (Re)launch Rufus. If a 'rufus.loc' file is found in the current directory, it will be used over the one +# embedded in the application. Since there is only one translation in this file, it will be used by default +# 6. Repeat steps 4 & 5 until you're happy with that translated elements. Note that you MUST restart Rufus every +# time you change your .loc file as there is no reload option. +# 7. Once you are satisfied with your translation, you should pick up the official rufus.loc from: +# https://github.com/pbatard/rufus/raw/master/res/localization/rufus.loc +# You should then add your translation at the end of it, and confirm that it is still picked as the default +# for your system You can also force the use of a translation by passing the option -l when starting Rufus. +# For instance, to have the "zz_ZZ" translation below apply, you could use either one of: +# rufus.exe -l zz-ZZ +# rufus.exe -l 0x1234 +# rufus.exe -l 0xabcd +# 8. If you need to resize a control or a dialog to fid the translated text, use the 'm' (Move) or 's' (reSize) +# options. For an example of how these commands work, see how they are use in the French translation at: +# https://github.com/pbatard/rufus/blob/master/res/localization/rufus.loc +# +# Tips: +# - Please make sure that you edit the language include *your* name in MSG_176. It will be displayed in the +# About dialog and I want to give you credit for your work! +# - Use Alt-R in Rufus to delete the registry keys on exit, which will reset the update check policy. This +# will allow you to see your translation for the initial prompt about application updates. +# - I strongly recommend installing and using DbgView to check for translation errors, as you will get more +# information about how Rufus initallly parses the translation file plus reports of any issue found (with +# the line number). Download DbgView from: http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx +# - As shown below, you can break a long message over multiple lines, as long as these fragments begin and end +# with a double quote ("). Also be careful to keep the special symbols such as %d, %s, \\b, \", \n. Time +# permitting, I'll try to provide examples of the output that these lines generate. +# - A more comprehensive guide WILL be available at https://github.com/pbatard/rufus/wiki/Localization +# This early set of instructions is provided only for impatient translators! ;) + +################################################################################ +l "zz-ZZ" "Your Language" 0x1234, 0xabcd +# See http://download.microsoft.com/download/9/5/E/95EF66AF-9026-4BB0-A41D-A4F81802D92C/%5BMS-LCID%5D.pdf +# for the LCID (0x####) codes you should use + +# Main dialog +g IDD_DIALOG +t IDS_DEVICE_TXT "Device" +t IDS_PARTITION_TYPE_TXT "Partition scheme and target system type" +t IDS_FILESYSTEM_TXT "File system" +t IDS_CLUSTERSIZE_TXT "Cluster size" +t IDS_LABEL_TXT "New volume label" +t IDS_FORMAT_OPTIONS_GRP "Format Options " +t IDC_BADBLOCKS "Check device for bad blocks:" +t IDC_QUICKFORMAT "Quick format" +t IDC_BOOT "Create a bootable disk using:" +t IDC_SET_ICON "Create extended label and icon files" +t IDC_ABOUT "About..." +t IDCANCEL "Close" +t IDC_START "Start" +t IDS_ADVANCED_OPTIONS_GRP "Advanced Options" +t IDC_ENABLE_FIXED_DISKS "List non removable or unpartitioned USB disks" +t IDC_EXTRA_PARTITION "Add fixes for old BIOSes (extra partition, align, etc.)" +t IDC_RUFUS_MBR "Use Rufus MBR with BIOS ID:" + +# About dialog +g IDD_ABOUTBOX +t IDD_ABOUTBOX "About Rufus" +t IDC_ABOUT_LICENSE "License" +t IDC_ABOUT_UPDATES "Updates" + +# About -> License dialog +g IDD_LICENSE +t IDD_LICENSE "Rufus License" + +# Notifications. You can trigger one of these by using Alt-R and re-launching Rufus +g IDD_NOTIFICATION +t IDC_MORE_INFO "More information" +t IDYES "Yes" +t IDNO "No" + +# Log dialog +g IDD_LOG +t IDC_LOG_CLEAR "Clear Log" +t IDC_LOG_SAVE "Save Log" +t IDCANCEL "Close Log" + +# About -> Updates +g IDD_UPDATE_POLICY +t IDD_UPDATE_POLICY "Update policy and settings" +t IDS_UPDATE_SETTINGS_GRP "Settings" +t IDS_UPDATE_FREQUENCY_TXT "Check for updates:" +t IDS_INCLUDE_BETAS_TXT "Include beta versions:" +t IDC_CHECK_NOW "Check Now" +t IDCANCEL "Close" + +# Dialog that appears when a new version is available +# I will provide a way to trigger this dialog in future versions +g IDD_NEW_VERSION +t IDD_NEW_VERSION "Check For Updates - Rufus" +t IDS_NEW_VERSION_AVAIL_TXT "A newer version is available. Please download the latest version!" +t IDC_WEBSITE " Click here to go to the website" +t IDS_NEW_VERSION_NOTES_GRP "Release Notes" +t IDS_NEW_VERSION_DOWNLOAD_GRP "Download" +t IDC_DOWNLOAD "Download" +t IDCANCEL "Close" + +# Dialog that appears when scanning/extracting ISO files +g IDD_ISO_EXTRACT +t IDD_ISO_EXTRACT "Copying ISO files..." +t IDC_ISO_FILENAME "Opening ISO image - please wait..." +t IDC_ISO_ABORT "Cancel" + +# Messages used throughout the application +g IDD_MESSAGES +t MSG_001 "Other instance detected" +t MSG_002 "Another Rufus application is running.\n" + "Please close the first application before running another one." +t MSG_003 "WARNING: ALL DATA ON DEVICE '%s' WILL BE DESTROYED.\n" + "To continue with this operation, click OK. To quit click CANCEL." +t MSG_004 "Rufus update policy" +t MSG_005 "Do you want to allow Rufus to check for application updates online?" +# Must be the same as IDD_DIALOG:IDCANCEL (i.e. "Close" - I know it's confusing) +t MSG_006 "Close" +t MSG_007 "Cancel" +t MSG_008 "Yes" +t MSG_009 "No" +t MSG_010 "Bad blocks found" +t MSG_011 "Check completed: %u bad block(s) found\n" + " %d read error(s)\n %d write error(s)\n %d corruption error(s)\n" +# The following will contain the formatted message above as well as the name of the bad blocks logfile +t MSG_012 "%s\nA more detailed report can be found in:\n%s" +t MSG_013 "Disabled" +t MSG_014 "Daily" +t MSG_015 "Weekly" +t MSG_016 "Monthly" +t MSG_017 "Custom" +t MSG_018 "Your version: %d.%d.%d (Build %d)" +t MSG_019 "Latest version: %d.%d.%d (Build %d)" +# *Short* size names. These can be used as suffixes +t MSG_020 "bytes" +t MSG_021 "KB" +t MSG_022 "MB" +t MSG_023 "GB" +t MSG_024 "TB" +t MSG_025 "PB" +# *Long* size names, as they are displayed for the cluster size in the MS format dialog. +t MSG_026 "bytes" # Yes, this is a repeat from MSG_020 +t MSG_027 "kilobytes" +t MSG_028 "megabytes" +t MSG_029 "Default" +# The following gets appended to the file system, cluster size, etc. +t MSG_030 "%s (Default)" +t MSG_031 "%s partition scheme for BIOS computer" +t MSG_032 "%s partition scheme for UEFI computer" +t MSG_033 "%s partition scheme for BIOS or UEFI computers" +# Number of bad block check passes (singular for 1 pass, plural for 2 or more passes) +t MSG_034 "%d Pass" +t MSG_035 "%d Passes" +t MSG_036 "ISO Image" +t MSG_037 "Application" +t MSG_038 "Abort" +t MSG_039 "Launch" +t MSG_040 "Download" +t MSG_041 "Operation cancelled by the user" +t MSG_042 "Error" +t MSG_043 "Error: %s" +t MSG_044 "File download" +t MSG_045 "USB Storage Device (Generic)" +t MSG_046 "%s (Disk %d)" +t MSG_047 "%s (%c:)" +t MSG_048 "Rufus - Flushing buffers" +t MSG_049 "Rufus - Cancellation" + +# Error messages +t MSG_050 "Success." +t MSG_051 "Undetermined error while formatting." +t MSG_052 "Cannot use the selected file system for this media." +t MSG_053 "Access to the device is denied." +t MSG_054 "Media is write protected." +t MSG_055 "The device is in use by another process. " + "Please close any other process that may be accessing the device." +t MSG_056 "Quick format is not available for this device." +t MSG_057 "The volume label is invalid." +t MSG_058 "The device handle is invalid." +t MSG_059 "The selected cluster size is not valid for this device." +t MSG_060 "The volume size is invalid." +t MSG_061 "Please insert a media in drive." +t MSG_062 "An unsupported command was received." +t MSG_063 "Memory allocation error." +t MSG_064 "Read error." +t MSG_065 "Write error." +t MSG_066 "Installation failure" +t MSG_067 "Could not open media. It may be in use by another process. " + "Please re-plug the media and try again." +t MSG_068 "Error while partitioning drive." +t MSG_069 "Could not copy files to target drive." +t MSG_070 "Cancelled by user." +t MSG_071 "Unable to create formatting thread." +t MSG_072 "Bad blocks check didn't complete." +t MSG_073 "ISO image scan failure." +t MSG_074 "ISO image extraction failure." +t MSG_075 "Unable to remount volume." +t MSG_076 "Unable to patch/setup files for boot." +t MSG_077 "Unable to assign a drive letter." +t MSG_078 "Can't mount GUID volume." + +t MSG_080 "Rufus detected that Windows is still flushing its internal buffers onto the USB device.\n\n" + "Depending on the speed of your USB device, this operation may take a long time to complete, " + "especially for large files.\n\nWe recommend that you let Windows finish, to avoid corruption. " + "But if you grow tired of waiting, you can just unplug the device..." +t MSG_081 "Unsupported ISO" +t MSG_082 "This version of Rufus only supports bootable ISOs based on bootmgr/WinPE, isolinux or EFI.\n" + "This ISO doesn't appear to use either..." +t MSG_083 "Replace %s?" +t MSG_084 "This ISO image seems to use an obsolete version of '%s'.\n" + "Boot menus may not display properly because of this.\n\n" + "A newer version can be downloaded by Rufus to fix this issue:\n" + "- Choose 'Yes' to connect to the internet and download the file\n" + "- Choose 'No' to leave the existing ISO file unmodified\n" + "If you don't know what to do, you should select 'Yes'.\n\n" + "Note: The new file will be downloaded in the current directory and once a " + "'%s' exists there, it will be reused automatically." +t MSG_085 "Downloading %s" +t MSG_086 "No ISO image selected" +# The content between the quotes below (\"Create a bootable disk\") should match +# the beginning of the IDC_BOOT text +t MSG_087 "Please click on the disc button to select a bootable ISO, " + "or uncheck the \"Create a bootable disk...\" checkbox." +t MSG_088 "ISO too big" +t MSG_089 "This ISO image is too big for the selected target." +t MSG_090 "Unsupported ISO" +t MSG_091 "When using UEFI Target Type, only EFI bootable ISO images are supported. " + "Please select an EFI bootable ISO or set the Target Type to BIOS." +t MSG_092 "Unsupported filesystem" +t MSG_093 "When using UEFI Target Type, only FAT/FAT32 is supported. " + "Please select FAT/FAT32 as the File system or set the Target Type to BIOS." +t MSG_094 "Non UEFI compatible ISO" +t MSG_095 "This ISO image contains a file larger than 4 GB and cannot be used to create an EFI bootable USB.\n" + "This is a limitation of UEFI/FAT32, not Rufus." +t MSG_096 "Only FAT/FAT32 is supported for this type of ISO. Please select FAT/FAT32 as the File system." +t MSG_097 "Only 'bootmgr' or 'WinPE' based ISO images can currently be used with NTFS." +t MSG_098 "FAT/FAT32 can only be used for isolinux based ISO images or when the Target Type is UEFI." +t MSG_099 "Filesystem limitation" +t MSG_100 "This iso image contains a file larger than 4GB file, which is more than the " + "maximum size allowed for a FAT or FAT32 file system." +t MSG_101 "Missing WIM support" +t MSG_102 "Your platform cannot extract files from WIM archives. WIM extraction " + "is required to create EFI bootable Windows 7 and Windows Vista USB drives. You can fix that " + "by installing a recent version of 7-Zip.\nDo you want to visit the 7-zip download page?" +t MSG_103 "Download %s?" +t MSG_104 "Syslinux v5.0 or later requires a '%s' file to be installed.\n" + "Because this file is more than 100 KB in size, and always present on Syslinux v5+ ISO images, " + "it is not embedded in Rufus.\n\nRufus can download the missing file for you:\n" + "- Select 'Yes' to connect to the internet and download the file\n" + "- Select 'No' if you want to manually copy this file on the drive later\n\n" + "Note: The file will be downloaded in the current directory and once a " + "'%s' exists there, it will be reused automatically.\n" +t MSG_105 "Cancelling may leave the device in an UNUSABLE state.\n" + "If you are sure you want to cancel, click YES. Otherwise, click NO." +t MSG_106 "Please select folder" +t MSG_107 "All files" +t MSG_108 "Rufus log" +t MSG_109 "0x%02X (Disk %d)" + +# Tootips +# Partition Scheme and Target Type +t MSG_150 "Usually the safest choice. If you have an UEFI computer and want to install " + "an OS in EFI mode however, you should select one of the options below" +t MSG_151 "Use this if you want to install an OS in EFI mode, but need to access " + "the USB content from Windows XP" +t MSG_152 "The preferred option to install an OS in EFI mode and when " + "USB access is not required for Windows XP" +t MSG_153 "Test pattern: 0x%02X" +t MSG_154 "Test pattern: 0x%02X, 0x%02X" +t MSG_155 "Test pattern: 0x%02X, 0x%02X, 0x%02X" +t MSG_156 "Test pattern: 0x%02X, 0x%02X, 0x%02X, 0x%02X" +t MSG_157 "Sets the target filesystem" +t MSG_158 "Minimum size that a block of data will occupy in the filesystem" +t MSG_159 "Use this field to set the drive label\nInternational characters are accepted" +t MSG_160 "Toggle advanced options" +t MSG_161 "Check the device for bad blocks using a test pattern" +t MSG_162 "Uncheck this box to use the \"slow\" format method" +t MSG_163 "Check this box to make the USB drive bootable" +t MSG_164 "Method that will be used to make the drive bootable" +t MSG_165 "Click to select an ISO..." +t MSG_166 "Check this box to allow the display of international labels " + "and set a device icon (creates an autorun.inf)" +t MSG_167 "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID" +t MSG_168 "Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n" + "This should only be necessary if you install Windows XP and have more than one disk" +t MSG_169 "Create an extra hidden partition and try to align partitions boundaries.\n" + "This can improve boot detection for older BIOSes" +t MSG_170 "Enable detection for disks not normally detected by Rufus. USE AT YOUR OWN RISKS!!!" +t MSG_171 "Start the formatting operation.\nThis will DESTROY any data on the target!" +t MSG_172 "Licensing information and credits" +t MSG_173 "Click to select..." +# The following will appear in the about dialog +t MSG_174 "Rufus - The Reliable USB Formatting Utility" +t MSG_175 "Version %d.%d.%d (Build %d)" +t MSG_176 "English translation: Pete Batard" +t MSG_177 "Report bugs or request enhancements at:" +t MSG_178 "Additional Copyrights:" +t MSG_179 "Update Policy:" +t MSG_180 "If you choose to allow this program to check for application updates, " + "you agree that the following information may be collected on our server(s):" +t MSG_181 "Your operating system's architecture and version" +t MSG_182 "The version of the application you use" +t MSG_183 "Your IP address" +t MSG_184 "For the purpose of generating private usage statistics, we may keep the information collected, " + "\\b for at most a year\\b0 . However, we will not willingly disclose any of this individual data to third parties." +t MSG_185 "Update Process:" +t MSG_186 "Rufus does not install or run background services, therefore update checks are performed only when the main application is running.\\line\n" + "Internet access is of course required when checking for updates." + +# Status messages - these messages will appear on the status bar +t MSG_201 "Cancelling - Please wait..." +t MSG_202 "Scanning ISO image..." +t MSG_203 "Failed to scan ISO image" +# Parameter: the name of an obsolete Syslinux .c32 module. eg: "Obsolete vesamenu.c32 detected" +t MSG_204 "Obsolete %s detected" +# Display the name of the ISO selected. eg: "Using ISO: en_win7_x64_sp1.iso" +t MSG_205 "Using ISO: %s" +# Typically "Missing ldlinux.c32 file" +t MSG_206 "Missing %s file" +# Same message, once for singular and plural ("1 device found", "2 devices found") +t MSG_208 "%d device found" +t MSG_209 "%d devices found" +t MSG_210 "DONE." +t MSG_211 "Cancelled." +t MSG_212 "FAILED." +# Used when a new update has been downloaded and lauched +t MSG_213 "Launching new application..." +t MSG_214 "Failed to launch new application" +# Open/Save file +t MSG_215 "Opened %s" +t MSG_216 "Saved %s" +# Formatting status (make sure you use a double % to print the percent sign) +t MSG_217 "Formatting: %0.1f%% completed" +t MSG_218 "Creating file system: Task %d/%d completed" +t MSG_219 "NTFS Fixup: %d%% completed" +t MSG_221 "Setting Label (This may take while)..." +# Parameter: the file system. eg. "Formatting (NTFS)..." +t MSG_222 "Formatting (%s)..." +t MSG_223 "NTFS Fixup (Checkdisk)..." +t MSG_224 "Clearing MBR/PBR/GPT structures..." +t MSG_225 "Requesting disk access..." +t MSG_226 "Analyzing existing boot records..." +t MSG_227 "Closing existing volume..." +t MSG_228 "Writing master boot record..." +t MSG_229 "Writing partition boot record..." +t MSG_230 "Copying DOS files..." +t MSG_231 "Copying ISO files..." +t MSG_232 "Win7 EFI boot setup (this may take a while)..." +t MSG_233 "Finalizing, please wait..." +# Takes the Syslinux version as paramete. eg. "Installing Syslinux v5..." +t MSG_234 "Installing Syslinux v%d..." +# Bad blocks status. eg: "Bad Blocks: PASS 1/2 - 12.34% (0/0/1 errors)" +t MSG_235 "Bad Blocks: PASS %d/%d - %0.2f%% (%d/%d/%d errors)" +t MSG_236 "Bad Blocks: Testing with random pattern" +t MSG_237 "Bad Blocks: Testing with pattern 0x%02X" +# eg. "Partitioning (MBR)..." +t MSG_238 "Partitioning (%s)..." +t MSG_239 "Deleting partitions..." +t MSG_240 "Downloading %s: Connecting..." +t MSG_241 "Downloading: %0.1f%%" +t MSG_242 "Failed to download file." +t MSG_243 "Checking for Rufus updates..." +t MSG_244 "Updates: Unable to connect to the internet" +t MSG_245 "Updates: Unable to acces version data" +t MSG_246 "A new version of Rufus is available!" +t MSG_247 "No new version of Rufus was found" +t MSG_248 "Application registry keys successfully deleted" +t MSG_249 "Failed to delete application registry keys" +# eg. "Fixed disk detection enabled" "ISO size check disabled" +t MSG_250 "%s enabled" +t MSG_251 "%s disabled" +t MSG_252 "Size checks" +t MSG_253 "Fixed disks detection" +t MSG_254 "Force large FAT32 formatting" +t MSG_255 "NoDriveTypeAutorun will be deleted on exit" +t MSG_256 "Fake drive detection" +t MSG_257 "Joliet support" +t MSG_258 "Rock Ridge support" diff --git a/res/localization/rufus.loc b/res/localization/rufus.loc index fb1edfa8..a27d6202 100644 --- a/res/localization/rufus.loc +++ b/res/localization/rufus.loc @@ -1,7 +1,7 @@ # This file should be saved as UTF-8, no-BOM ################################################################################ -l "en_US" "English (US)" 0x0409, 0x0809, 0x0c09, 0x1009, 0x1409, 0x1809, 0x1c09, 0x2009, 0x2409, 0x2809, 0x2c09, 0x3009, 0x3409, 0x3809, 0x3c09, 0x4009, 0x4409, 0x4809 +l "en-US" "English (US)" 0x0409, 0x0809, 0x0c09, 0x1009, 0x1409, 0x1809, 0x1c09, 0x2009, 0x2409, 0x2809, 0x2c09, 0x3009, 0x3409, 0x3809, 0x3c09, 0x4009, 0x4409, 0x4809 g IDD_MESSAGES t MSG_001 "Other instance detected" t MSG_002 "Another Rufus application is running.\n" @@ -273,7 +273,7 @@ t MSG_257 "Joliet support" t MSG_258 "Rock Ridge support" ################################################################################ -l "fr_FR" "French" 0x040c, 0x080c, 0x0c0c, 0x100c, 0x140c, 0x180c, 0x1c0c, 0x200c, 0x240c, 0x280c, 0x2c0c, 0x300c, 0x340c, 0x380c, 0xe40c +l "fr-FR" "Français" 0x040c, 0x080c, 0x0c0c, 0x100c, 0x140c, 0x180c, 0x1c0c, 0x200c, 0x240c, 0x280c, 0x2c0c, 0x300c, 0x340c, 0x380c, 0xe40c g IDD_DIALOG t IDS_DEVICE_TXT "Periphérique" t IDS_PARTITION_TYPE_TXT "Type de partition et système de destination" @@ -303,11 +303,12 @@ s IDC_DISK_ID -2,0 g IDD_ABOUTBOX t IDD_ABOUTBOX "A propos de Rufus" -t IDC_ABOUT_LICENSE "License" +t IDC_ABOUT_LICENSE "Licence" t IDC_ABOUT_UPDATES "Mises à jour" g IDD_LICENSE -t IDD_LICENSE "License Rufus" +t IDD_LICENSE "Licence Rufus" +t IDOK "Fermer" g IDD_NOTIFICATION t IDC_MORE_INFO "Plus d'info..." @@ -345,7 +346,7 @@ t IDS_NEW_VERSION_AVAIL_TXT "Une nouvelle version est disponible. Veuillez tél t IDC_WEBSITE "Cliquez ici pour aller sur le site de Rufus" t IDS_NEW_VERSION_NOTES_GRP "Notes relatives à cette version" t IDS_NEW_VERSION_DOWNLOAD_GRP "Téléchargement" -t IDC_DOWNLOAD ""Télécharger"" +t IDC_DOWNLOAD "Télécharger" t IDCANCEL "Fermer" g IDD_ISO_EXTRACT @@ -526,7 +527,7 @@ t MSG_168 "Camoufle le premier disque USB démarrable (généralement 0x80) sous "Changez cette option si vous installez Windows XP avec plus d’un disque dur" t MSG_169 "Créé une petite partition supplémentaire et essaye d’aligner les partitions.\n" "Peut améliorer la détection USB pour les vieux BIOS" -t MSG_170 "Active la détection de disque non normalement listés par Rufus. UTILISEZ A VOS PROPRES RISQUES !!! " +t MSG_170 "Active la détection de disque non normalement listés par Rufus. UTILISEZ A VOS PROPRES RISQUES !!! " t MSG_171 "Lance le formatage. DETRUIT toutes les données existantes sur la cible !" t MSG_172 "Licence d’utilisation et remerciements" t MSG_173 "Cliquez pour sélectionner..." @@ -608,7 +609,7 @@ t MSG_257 "Support Joliet" t MSG_258 "Support Rock Ridge" ################################################################################ -l "zh_CN" "Chinese (Traditional)" 0x0404, 0x0804, 0x0c04, 0x1004, 0x1404 +l "zh-CN" "正體字" 0x0404, 0x0804, 0x0c04, 0x1004, 0x1404 g IDD_DIALOG t IDS_DEVICE_TXT "设备" t IDS_PARTITION_TYPE_TXT "分区计划和目标系统类型" diff --git a/src/license.h b/src/license.h index ce3b475c..43da88f1 100644 --- a/src/license.h +++ b/src/license.h @@ -24,12 +24,13 @@ const char* about_blurb_format = "\\line\n" "Copyright © 2011-2013 Pete Batard / Akeo\\line\n" RUFUS_URL "\\line\n" -"%s\\line\n" +"\\fs6 \\line\n" +"\\fs18%s\\line\n" "\\line\n" "%s\\line\n" "https://github.com/pbatard/rufus/issues\\line\n" "\\line\n" -"{\\b\\fs18 %s}}"; +"{\\b %s}}"; const char* additional_copyrights = "{\\rtf1\\ansi\n" diff --git a/src/localization.c b/src/localization.c index d4aa9ea6..0beacf2a 100644 --- a/src/localization.c +++ b/src/localization.c @@ -131,6 +131,7 @@ void init_localization(void) { void exit_localization(void) { free_dialog_list(); free_locale_list(); + safe_free(loc_filename); } /* diff --git a/src/msapi_utf8.h b/src/msapi_utf8.h index 4a0d1ea9..6224fcf6 100644 --- a/src/msapi_utf8.h +++ b/src/msapi_utf8.h @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include diff --git a/src/rufus.c b/src/rufus.c index 09c597cb..5975b063 100644 --- a/src/rufus.c +++ b/src/rufus.c @@ -1874,8 +1874,8 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine #endif { const char* old_wait_option = "/W"; - int i, opt, option_index = 0, argc = 0, si = 0; - BOOL attached_console = FALSE; + int i, opt, option_index = 0, argc = 0, si = 0, lcid = GetUserDefaultLCID(); + BOOL attached_console = FALSE, external_loc_file = FALSE; BYTE* loc_data; DWORD loc_size, Size; char tmp_path[MAX_PATH], loc_file[MAX_PATH] = "", *locale_name = NULL; @@ -1931,8 +1931,11 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine } break; case 'l': - // TODO: accept a locale code such as 0x409 - locale_name = optarg; + if (isdigitU(optarg[0])) { + lcid = (int)strtol(optarg, NULL, 0); + } else { + locale_name = optarg; + } break; case 'w': wait_for_mutex = atoi(optarg); @@ -1971,11 +1974,12 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine } } else { safe_sprintf(loc_file, sizeof(loc_file), "%s\\rufus.loc", app_dir); + external_loc_file = TRUE; uprintf("using external loc file '%s'", loc_file); } if ( (!get_supported_locales(loc_file)) - || ((selected_locale = ((locale_name == NULL)?get_locale_from_lcid(GetUserDefaultLCID()):get_locale_from_name(locale_name))) == NULL) ) { + || ((selected_locale = ((locale_name == NULL)?get_locale_from_lcid(lcid):get_locale_from_name(locale_name))) == NULL) ) { uprintf("FATAL: Could not access locale!\n"); MessageBoxU(NULL, "The locale data is missing. This application will now exit.", "Fatal error", MB_ICONSTOP); @@ -2101,7 +2105,7 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine } out: - if (loc_file[0] != 0) + if ((!external_loc_file) && (loc_file[0] != 0)) DeleteFileU(loc_file); DestroyAllTooltips(); exit_localization(); diff --git a/src/rufus.rc b/src/rufus.rc index 3b1579c3..c4cd9b33 100644 --- a/src/rufus.rc +++ b/src/rufus.rc @@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL IDD_DIALOG DIALOGEX 12, 12, 206, 329 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_APPWINDOW -CAPTION "Rufus v1.4.0.282" +CAPTION "Rufus v1.4.0.283" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "Start",IDC_START,94,291,50,14 @@ -67,21 +67,21 @@ BEGIN COMBOBOX IDC_DISK_ID,119,246,73,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP CONTROL "Add fixes for old BIOSes (extra partition, align, etc.)",IDC_EXTRA_PARTITION, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,235,181,10 - CONTROL "List fixed (non-flash) or unpartitioned USB disks",IDC_ENABLE_FIXED_DISKS, + CONTROL "List non removable or unpartitioned USB disks",IDC_ENABLE_FIXED_DISKS, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,222,181,10 END -IDD_ABOUTBOX DIALOGEX 0, 0, 287, 201 +IDD_ABOUTBOX DIALOGEX 0, 0, 287, 204 STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "About Rufus" FONT 8, "MS Shell Dlg", 400, 0, 0x0 BEGIN - ICON IDI_ICON,IDC_ABOUT_ICON,11,8,20,20 - DEFPUSHBUTTON "OK",IDOK,231,181,50,14,WS_GROUP - PUSHBUTTON "License",IDC_ABOUT_LICENSE,46,181,50,14,WS_GROUP - CONTROL "",IDC_ABOUT_COPYRIGHTS,"RichEdit20W",WS_VSCROLL | 0x804,46,101,235,74,WS_EX_STATICEDGE - CONTROL "",IDC_ABOUT_BLURB,"RichEdit20W",WS_TABSTOP | 0x884,46,7,235,93 - PUSHBUTTON "Updates",IDC_ABOUT_UPDATES,100,181,50,14,NOT WS_VISIBLE | WS_GROUP + ICON IDI_ICON,IDC_ABOUT_ICON,11,8,21,20 + DEFPUSHBUTTON "OK",IDOK,231,183,50,14,WS_GROUP + PUSHBUTTON "License",IDC_ABOUT_LICENSE,46,183,50,14,WS_GROUP + CONTROL "",IDC_ABOUT_COPYRIGHTS,"RichEdit20W",ES_MULTILINE | ES_READONLY | WS_VSCROLL,46,103,235,74,WS_EX_STATICEDGE + CONTROL "",IDC_ABOUT_BLURB,"RichEdit20W",ES_MULTILINE | ES_AUTOHSCROLL | ES_READONLY | WS_TABSTOP,46,7,235,95 + PUSHBUTTON "Updates",IDC_ABOUT_UPDATES,100,183,50,14,NOT WS_VISIBLE | WS_GROUP END IDD_ISO_EXTRACT DIALOGEX 0, 0, 262, 66 @@ -284,8 +284,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,4,0,282 - PRODUCTVERSION 1,4,0,282 + FILEVERSION 1,4,0,283 + PRODUCTVERSION 1,4,0,283 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -302,13 +302,13 @@ BEGIN BEGIN VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)" VALUE "FileDescription", "Rufus" - VALUE "FileVersion", "1.4.0.282" + VALUE "FileVersion", "1.4.0.283" VALUE "InternalName", "Rufus" VALUE "LegalCopyright", "© 2011-2013 Pete Batard (GPL v3)" VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html" VALUE "OriginalFilename", "rufus.exe" VALUE "ProductName", "Rufus" - VALUE "ProductVersion", "1.4.0.282" + VALUE "ProductVersion", "1.4.0.283" END END BLOCK "VarFileInfo"