diff --git a/picard/file.py b/picard/file.py index bb607cac8..b68f62923 100644 --- a/picard/file.py +++ b/picard/file.py @@ -257,7 +257,7 @@ class File(QtCore.QObject, Item): filename = unaccent(filename) filename = replace_non_ascii(filename) # replace incompatible characters - if settings["windows_compatible_filenames"] or sys.platform == "win32": + if settings["windows_compatibility"] or sys.platform == "win32": filename = replace_win32_incompat(filename) # remove null characters filename = filename.replace("\x00", "") @@ -280,9 +280,9 @@ class File(QtCore.QObject, Item): new_filename = self._script_to_filename(format, metadata, settings) if not settings['move_files']: new_filename = os.path.basename(new_filename) - new_filename = make_short_filename(new_dirname, new_filename) + new_filename = make_short_filename(new_dirname, new_filename, settings['windows_compatibility']) # win32 compatibility fixes - if settings['windows_compatible_filenames'] or sys.platform == 'win32': + if settings['windows_compatibility'] or sys.platform == 'win32': new_filename = new_filename.replace('./', '_/').replace('.\\', '_\\') # replace . at the beginning of file and directory names new_filename = new_filename.replace('/.', '/_').replace('\\.', '\\_') @@ -321,7 +321,7 @@ class File(QtCore.QObject, Item): filename = image_filename else: filename = os.path.join(dirname, image_filename) - if settings['windows_compatible_filenames'] or sys.platform == 'win32': + if settings['windows_compatibility'] or sys.platform == 'win32': filename = filename.replace('./', '_/').replace('.\\', '_\\') return encode_filename(filename) diff --git a/picard/ui/options/renaming.py b/picard/ui/options/renaming.py index 4f2cbd774..73829eedd 100644 --- a/picard/ui/options/renaming.py +++ b/picard/ui/options/renaming.py @@ -37,7 +37,7 @@ class RenamingOptionsPage(OptionsPage): ACTIVE = True options = [ - BoolOption("setting", "windows_compatible_filenames", True), + BoolOption("setting", "windows_compatibility", True), BoolOption("setting", "ascii_filenames", False), BoolOption("setting", "rename_files", False), TextOption("setting", "file_naming_format", "$if2(%albumartist%,%artist%)/%album%/$if($gt(%totaldiscs%,1),%discnumber%-,)$num(%tracknumber%,2)$if(%compilation%, %artist% -,) %title%"), @@ -54,7 +54,7 @@ class RenamingOptionsPage(OptionsPage): self.ui.setupUi(self) self.ui.ascii_filenames.clicked.connect(self.update_examples) - self.ui.windows_compatible_filenames.clicked.connect(self.update_examples) + self.ui.windows_compatibility.clicked.connect(self.update_examples) self.ui.rename_files.clicked.connect(self.update_examples) self.ui.move_files.clicked.connect(self.update_examples) self.ui.move_files_to.editingFinished.connect(self.update_examples) @@ -64,7 +64,7 @@ class RenamingOptionsPage(OptionsPage): self.ui.rename_files.stateChanged.connect(self.ui.file_naming_format_default.setEnabled) if not sys.platform == "win32": - self.ui.rename_files.stateChanged.connect(self.ui.windows_compatible_filenames.setEnabled) + self.ui.rename_files.stateChanged.connect(self.ui.windows_compatibility.setEnabled) self.ui.move_files.stateChanged.connect(self.ui.delete_empty_dirs.setEnabled) self.ui.move_files.stateChanged.connect(self.ui.move_files_to.setEnabled) @@ -82,7 +82,7 @@ class RenamingOptionsPage(OptionsPage): def _example_to_filename(self, file): settings = { - 'windows_compatible_filenames': self.ui.windows_compatible_filenames.isChecked(), + 'windows_compatibility': self.ui.windows_compatibility.isChecked(), 'ascii_filenames': self.ui.ascii_filenames.isChecked(), 'rename_files': self.ui.rename_files.isChecked(), 'move_files': self.ui.move_files.isChecked(), @@ -113,10 +113,10 @@ class RenamingOptionsPage(OptionsPage): def load(self): if sys.platform == "win32": - self.ui.windows_compatible_filenames.setChecked(True) - self.ui.windows_compatible_filenames.setEnabled(False) + self.ui.windows_compatibility.setChecked(True) + self.ui.windows_compatibility.setEnabled(False) else: - self.ui.windows_compatible_filenames.setChecked(self.config.setting["windows_compatible_filenames"]) + self.ui.windows_compatibility.setChecked(self.config.setting["windows_compatibility"]) self.ui.rename_files.setChecked(self.config.setting["rename_files"]) self.ui.move_files.setChecked(self.config.setting["move_files"]) self.ui.ascii_filenames.setChecked(self.config.setting["ascii_filenames"]) @@ -144,7 +144,7 @@ class RenamingOptionsPage(OptionsPage): raise OptionsCheckError("", _("The file naming format must not be empty.")) def save(self): - self.config.setting["windows_compatible_filenames"] = self.ui.windows_compatible_filenames.isChecked() + self.config.setting["windows_compatibility"] = self.ui.windows_compatibility.isChecked() self.config.setting["ascii_filenames"] = self.ui.ascii_filenames.isChecked() self.config.setting["rename_files"] = self.ui.rename_files.isChecked() self.config.setting["file_naming_format"] = unicode(self.ui.file_naming_format.toPlainText()) diff --git a/ui/options_renaming.ui b/ui/options_renaming.ui index 44d6cc5d2..8e05f07ec 100644 --- a/ui/options_renaming.ui +++ b/ui/options_renaming.ui @@ -35,9 +35,9 @@ - + - Replace Windows-incompatible characters + Windows compatibility