Чтобы подготовить файлы Mac для Windows, сохраняйте смысловые символы Юникода, но приведите каждое имя в соответствие с правилами Windows касательно зарезервированных символов, имен и окончаний. Затем проверьте наличие визуально одинаковых имен и протестируйте копирование в реальное место назначения. В Юникоде существует несколько способов кодирования визуально идентичного текста; в Finder нет средств управления, гарантирующих выбор определенной формы нормализации, поэтому не стоит полагать, что переименование в Finder приведет ее к стандарту.

Что делает имя файла в Юникоде переносимым?

Юникод позволяет визуально эквивалентному тексту иметь разные базовые последовательности символов. Например, «é» может быть закодирована как один составной символ или как «e» с последующим комбинируемым диакритическим знаком. Юникод называет такие последовательности канонически эквивалентными и определяет формы NFC и NFD как стандартные способы их нормализации. Формы совместимости, такие как NFKC, могут изменять различия, важные в некоторых контекстах, поэтому не применяйте их к именам без разбора. Unicode Standard Annex #15: Unicode Normalization Forms

В APFS macOS сохраняет нормализацию имени файла на диске, при этом считая варианты нормализации эквивалентными при поиске, согласно документации Apple по APFS. Такое поведение файловой системы не означает, что в Finder есть пользовательская настройка для преобразования имен в NFC, или что каждое приложение, метод передачи или целевая система Windows обработают каждое имя абсолютно одинаково. Apple File System Guide: Frequently Asked Questions

Windows поддерживает имена в Юникоде, но правила именования запрещают такие символы, как < > : " / \ | ? * и управляющие символы. Также зарезервированы имена устройств, включая CON, NUL и COM1; добавление расширения не делает зарезервированное имя допустимым. Имен, оканчивающихся на пробел или точку, также следует избегать. Naming Files, Paths, and Namespaces

Подготовка файлов в Finder

  1. Создайте рабочую копию. Поместите файлы, которые планируете передать, в отдельную папку. Это даст возможность проверить и переименовать их, не изменяя оригиналы. Если имена привязаны к ссылкам, скриптам или записям приложений, проверьте эти связи перед внесением изменений.

  2. Проверьте полные имена. В Finder выберите Finder > Настройки > Дополнения и включите параметр Показывать все расширения имен файлов. Это поможет увидеть суффикс и сохранить его. Apple предупреждает, что изменение расширения может привести к тому, что файл перестанет открываться в привычном приложении. Show or hide filename extensions on Mac

  3. Упростите части, несовместимые с Windows. Замените зарезервированные знаки препинания дефисом или подчеркиванием, удалите замыкающие пробелы и точки и избегайте имен, совпадающих с именами устройств Windows, например CON.txt. Сохраняйте смысловые символы Юникода — буквы с диакритикой и нелатинские алфавиты категорически не запрещены в Windows. Для максимальной совместимости со старыми или неизвестными инструментами используйте простые буквы и цифры, если такой компромисс допустим.

Чтобы переименовать один объект, выберите его в Finder и нажмите Return. Для пакетного переименования выберите объекты, нажмите клавишу Control и щелкните кнопкой мыши, выберите Переименовать, затем используйте параметры Finder Заменить текст, Добавить текст или Формат. Эти элементы управления изменяют текст имени или добавляют нумерацию; Apple не документирует их как средства нормализации Юникода. Проверьте каждое полученное имя, особенно расширение, а также имена, которые могут стать дубликатами. Rename files, folders, and disks on Mac

Будьте осторожны с нормализацией

Если получатель или рабочий процесс явно требует NFC, один лишь Finder не предоставляет задокументированной команды или флажка для нормализации имен файлов. Используйте надежную утилиту для работы с именами файлов с поддержкой Юникода, которая явно предлагает нормализацию NFC, или уточните у владельца принимающей системы, какой формат поддерживается. Перед применением преобразования сохраните рабочую копию и проверьте наличие конфликтов: два разных исходных имени после нормализации могут стать абсолютно одинаковыми. Не выбирайте форму NFKC только потому, что она звучит более исчерпывающей; Юникод отмечает, что эквивалентность совместимости может нарушить значимые различия.

Если конкретных требований к нормализации нет, не переименовывайте каждое имя файла с диакритическими знаками или неанглийскими символами только ради того, чтобы сделать его «безопасным для Юникода». Сохраняйте исходное написание, удаляйте недопустимые для Windows формы и не полагайтесь исключительно на визуальное сходство для различения двух имен. APFS может воспринимать варианты нормализации как эквивалентные в одной папке, в то время как другой инструмент или целевая система могут вести себя иначе; нормализация Юникода объясняет эквивалентность, но не гарантирует одинакового поведения во всех файловых системах и инструментах передачи.

Проверьте саму передачу

Перед переносом большой коллекции скопируйте небольшую выборку на целевой компьютер под управлением Windows, общий сетевой ресурс или съемный диск. Убедитесь, что файлы доходят, открываются и сохраняют различимые имена. Тестирование на реальном маршруте важно, поскольку файловые системы назначения и программное обеспечение для передачи могут налагать собственные ограничения; Microsoft отмечает, что ограничения на длину имен файлов и путей зависят от файловой системы и формата пути. Если имя вызывает ошибку, сократите его или замените проблемный символ, затем повторите проверку копирования. Сохраняйте исходные файлы до тех пор, пока получатель не подтвердит, что переданный набор данных пригоден к использованию.

Для стандартной передачи действует простое практическое правило: сохраняйте читаемый Юникод, соблюдайте явные ограничения именования Windows, сохраняйте расширения и проверяйте фактическое место назначения. Выполняйте нормализацию только тогда, когда принимающий рабочий процесс требует определенной формы и у вас есть инструмент с документированной поддержкой этой операции.

Источники