FileNic - Lösung für das Problem der Zerlegung koreanischer Dateinamen auf macOS
(github.com/0126kjw)Ich habe ein Tool entwickelt, das das Kompatibilitätsproblem koreanischer Dateinamen zwischen macOS und Windows löst, das viele macOS-Nutzer sicher schon einmal erlebt haben.
Problemsituation
Bei koreanischen Dateinamen, die unter macOS erstellt wurden, tritt unter Windows ein Fehler auf, bei dem die Zeichen in ihre Bestandteile zerlegt werden und der Name beschädigt erscheint.
Bisher wurden dafür Methoden wie die Verwendung von Automator zusammen mit convmv genutzt, doch die Ersteinrichtung war schwierig und insgesamt ziemlich umständlich.
Lösung
- Als Menüleisten-App umgesetzt und daher bei Bedarf sofort nutzbar
- Dateien einfach per Drag-and-Drop auf das Symbol ziehen, die Konvertierung erfolgt automatisch
- Keine zusätzlichen Einstellungen oder Terminal-Arbeit erforderlich
Tech-Stack
- Menüleisten-App auf Basis von SwiftUI
- Reine Swift-Implementierung für eine schlanke Laufzeitumgebung
- Keine externen Abhängigkeiten
Datenschutz
- Alle Dateinamen-Konvertierungen werden ausschließlich auf dem lokalen Computer des Nutzers verarbeitet
- Es gibt keinerlei Kommunikation mit externen Servern, daher besteht kein Risiko, dass Dateiinformationen nach außen gelangen
- Weder der Inhalt noch die Metadaten der Dateien werden verändert; es wird ausschließlich der Dateiname konvertiert
[Link]
GitHub: https://github.com/0126kjw/FileNic
Hallo, ich lese hier normalerweise nur still mit, habe mich aber zum ersten Mal angemeldet, um das hier mit euch zu teilen.
Im Arbeitsalltag habe ich mehrfach die Rückmeldung bekommen, dass Dateinamen in per E-Mail ausgetauschten Dateien beschädigt angezeigt werden.
Deshalb wollte ich das auf möglichst einfache Weise lösen und teile hier mein kleines Tool, das ich ursprünglich für den Eigengebrauch gebaut habe.
Ich freue mich auf eure Meinungen und euer Feedback!
17 Kommentare
Hallo! Ich hinterlasse einen Kommentar mit guten Neuigkeitenhaha
Ab sofort können Sie die App über den App Store herunterladen!
https://apple.co/3E7rWid
Vielen Dankhaha
Mit Stand vom 15. Januar sind die App-Signierung und die Verifizierungsverfahren abgeschlossen, sodass die App nun ohne Sicherheitsprobleme ausgeführt werden kann! 🎉
Außerdem soll in v1.0.5 eine Funktion zur Ordnerkonvertierung hinzukommen. Es wurden Funktionen und Einstellungen ergänzt, damit sich auch untergeordnete Dateien in einem Ordner auf einmal konvertieren lassen, und kleinere Bugs wurden ebenfalls behoben — wir freuen uns über euer Interesse🙏
Zusätzlich werde ich mich bemühen, künftig auch die Verteilung über HomeBrew und den App Store zu unterstützen.
Vielen Dank an alle, die Feedback gegeben haben 😊
Warum werden Jamos getrennt, und warum behebt Apple dieses Problem nicht? Das würde mich interessieren.
Außerdem betreffen die Unterschiede bei den Unicode-Normalisierungsverfahren Nutzer vieler verschiedener Sprachen. Soweit ich weiß, haben insbesondere Nutzer von Sprachen wie Deutsch, Französisch und Spanisch, die diakritische Zeichen verwenden, mit ähnlichen Problemen zu kämpfen.
Dass Apple und Microsoft jeweils an unterschiedlichen Normalisierungsverfahren festhalten, dürfte vermutlich an verschiedenen technischen Einschränkungen liegen, etwa an der Kompatibilität mit bestehenden Systemen und der Abwärtskompatibilität. Um dieses Problem systematisch zu lösen, wären grundlegende Änderungen in beiden Betriebssystemen erforderlich; da dies große Auswirkungen auf bestehende Systeme haben könnte, scheint eine Lösung schwierig zu sein.
Dieses Problem entsteht durch die unterschiedlichen Unicode-Normalisierungsverfahren, die macOS und Windows verwenden.
Unicode bietet zwei wesentliche Methoden, um koreanische Zeichen zu speichern:
Windows verwendet NFC und speichert „annyeong“ als ein vollständig zusammengesetztes Zeichen, während macOS NFD verwendet und „ieung“, „a“, „nieun“, „nieun“, „yeo“, „ieung“ jeweils getrennt speichert. Durch diesen Unterschied in der Speicherung erscheinen Dateien, die unter macOS erstellt wurden, unter Windows mit zerlegten Zeichen.
FileNic unterstützt eine einfache Umwandlung dieses Unterschieds, sodass die Dateinamen in beiden Betriebssystemen korrekt angezeigt werden.
Für alle, die viel mit anderen Plattformen teilen, dürfte das nützlich sein.
Sind Sie vielleicht als Entwickler registriert? Wenn Sie verteilen, archivieren Sie in Xcode und exportieren das Archiv im Format
Direct Distribution; dann wird die Notarisierung über das Apple-Developer-Portal durchgeführt. Dadurch werden die Berechtigungen ähnlich wie bei der Verteilung über den App Store verifiziert, sodass die App sofort ausgeführt werden kann. Wenn Sie dieses Dokument als Referenz nutzen, dürfte die Verteilung und Ausführung der App leichter fallen: https://developer.apple.com/documentation/Security/…Hallo! Vielen Dank für die hilfreichen Informationen. Für eine reibungslose Bereitstellung wurden die Signatur- und Zertifizierungsverfahren abgeschlossen, sodass Sie die Anwendung nun bequem ohne Ausführungsfehler oder Sicherheitsprobleme verwenden können. Vielen Dank.
Ich habe im Oktober 2020 bereits einmal dieselbe Funktion erstellt und teile sie daher hier.
Bitte beim ersten Start
controlgedrückt halten und auf „Öffnen“ klicken.Ich habe Contact auch sehr gerne genutzt! Danke für den Kommentar, haha
Ich nutze Contact sehr gern, haha. Es ist auch jetzt noch in meiner Menüleiste.
Ich erinnere mich noch, dass Dropbox dieses Problem schon in den ganz frühen Tagen des Cloud-Speichers fast perfekt gelöst hat – das fand ich wirklich beeindruckend :)
Vielen Dank! Wie Sie gesagt haben, gab es also schon einen Präzedenzfall bei Dropbox. Dadurch habe ich wertvolle Einblicke gewonnen. Ich hoffe, dass für koreanische Nutzer auf OS-Ebene standardmäßig NFC-Unicode-Normalisierung unterstützt wird. So sehr, dass solche Tools gar nicht mehr nötig sind. :)
Wenn man es ausführt, erscheint nicht „Nicht verifizierter Entwickler …“, sondern von Anfang an „Die Anwendung kann nicht ausgeführt werden“, und es lässt sich daher auch nicht im Bereich „Sicherheit“ bestätigen. (Mac 15.2(24C101))
Die App-Signierung und der Authentifizierungsprozess sind abgeschlossen, sodass Sie sie nun bequem ohne Ausführungsfehler oder Sicherheitsprobleme verwenden können. Nochmals vielen Dank für Ihr Feedback.
Vielen Dank, dass Sie das Problem geteilt haben! Bei der Prüfung habe ich festgestellt, dass das Deployment-Ziel auf 15.1 gesetzt war. Da ich das Tool allein genutzt habe, hatte ich das leider übersehen T_T. Ich werde es so anpassen, dass alle Versionen ab macOS 13.0 unterstützt werden, und die Release-Datei entsprechend aktualisieren! Vielen Dank für das Feedback.
Wenn ich in den App Store gehe, wird nichts angezeigt. Ist das der richtige Link?!
Im App Store erscheint die Meldung: „Die gesuchte Seite ist nicht vorhanden!“