27 ポイント 投稿者 0126kjw 2025-01-08 | 17件のコメント | WhatsAppで共有

macOSユーザーなら一度は経験したことがあるであろう、Windowsとの韓国語ファイル名の互換性問題を解決するツールを作りました。

問題の状況

macOSで作成した韓国語ファイル名が、Windowsで文字分解されて崩れてしまう現象が発生します。
従来はこれを解決するために、convmvを使ったAutomator活用などの方法がありましたが、初期設定が難しいなど不便な点が多くありました。

解決方法

  • メニューバー常駐アプリとして実装し、必要なときにすぐ使える
  • ファイルをアイコンにドラッグ&ドロップすると自動で変換完了
  • 別途設定やターミナル作業は不要

技術スタック

  • SwiftUIベースのメニューバーアプリ
  • 純粋なSwift実装による軽量な実行環境
  • 外部依存性なし

プライバシー保護

  • すべてのファイル名変換はユーザーのローカルコンピュータ上でのみ処理されます
  • 外部サーバーとの通信が一切ないため、ファイル情報が外部に流出するリスクはありません
  • ファイルの内容やメタデータは一切変更されず、純粋にファイル名だけを変換します

[リンク]

GitHub: https://github.com/0126kjw/FileNic


こんにちは。普段は見るだけでしたが、皆さんに共有したくて初めて登録して投稿してみました。

仕事でメールを通じてファイルをやり取りするとき、ファイル名が文字化けして見えるというフィードバックを何度も受けました。

これをできるだけ手軽な方法で解決しようと思い、個人的に作って使っていたものを共有します。

皆さんのご意見やフィードバックをお願いします!

17件のコメント

 
0126kjw 2025-01-25

こんにちは!うれしいお知らせがあり、コメントします(笑)

これでApp Storeからダウンロードしていただけます!

https://apple.co/3E7rWid

ありがとうございます(笑)

 
0126kjw 2025-01-15

1月15日付でアプリの署名および認証手続きが完了し、これからはセキュリティ上の問題なくアプリを実行できるようになりました! 🎉
また、v1.0.5ではフォルダ変換機能が追加される予定です。フォルダ内の下位ファイルまでまとめて変換できるよう、機能と設定を追加し、細かなバグも修正しましたので、ぜひご期待ください🙏
さらに、HomeBrew および AppStore を通じた配布も、今後対応できるよう努めてまいります。
フィードバックをくださった多くの皆さま、本当にありがとうございます 😊

 
wedding 2025-01-12

なぜ文字が分解されるのでしょうか。そして、なぜAppleはこの問題を解決しないのでしょうか。気になります。

 
0126kjw 2025-01-15

また、Unicode正規化方式の違いは、さまざまな言語のユーザーにも影響を与えています。特に発音区別符号(diacritics)を使うドイツ語、フランス語、スペイン語などのユーザーも、同様の問題を抱えていると認識しています。

AppleとMicrosoftがそれぞれ異なる正規化方式を維持しているのは、おそらく既存システムとの互換性や後方互換性など、さまざまな技術的制約によるものだと考えられます。この問題を体系的に解決するには、両OSの根本的な変更が必要ですが、それは既存システムに大きな影響を及ぼす可能性があるため、解決は難しいように思われます。

 
0126kjw 2025-01-15

この問題は、macOSとWindowsが採用しているUnicode正規化方式の違いによって発生します。

Unicodeでは、ハングルを保存する主な方式として次の2つが提供されています。

  • NFC (Normalization Form Canonical Composition): 字母をまとめて1つの完成文字として保存
  • NFD (Normalization Form Canonical Decomposition): 字母を分離して個別に保存

WindowsはNFC方式を使用し、「アンニョン」を1つの完成文字として保存する一方、macOSはNFD方式を使用して、各字母を分離して保存します。この保存方式の違いにより、macOSで作成したファイルをWindowsで開くと、字母が分離して見える現象が発生します。

FileNicはこの違いをユーザーが簡単に変換できる方法を提供し、どちらのOSでも正しく表示されるようにします。

 
godrm 2025-01-10

他のプラットフォームと共有することが多い方には必要そうですね。
ところで、開発者登録はされていますか? 配布する際に Xcode でアーカイブし、そのアーカイブを Direct Distribution 形式で export すると、Apple 開発者ポータルを通じて notarizing してくれます。そうすると App Store 配布のように権限を認証してくれるので、そのまま実行できます。このドキュメントを参考にすると、アプリの配布と実行がスムーズになりそうです https://developer.apple.com/documentation/Security/…

 
0126kjw 2025-01-15

こんにちは!有益な情報をありがとうございます。円滑な配布のために署名および認証手続きが完了しており、現在は実行エラーやセキュリティ上の問題なく安心してご利用いただけるよう対応されています。ありがとうございます。

 
findnamo 2025-01-09

2020年10月に同じ機能のものを作ったことがあるので、共有します。

初回実行時は、control を押しながら「開く」をクリックしてください。

 
0126kjw 2025-01-15

私もコンタクトをとてもよく利用していました!コメントありがとうございます(笑)

 
dukjin 2025-01-10

Contactをよく使っています(笑)。今も私のメニューバーにあります。

 
draupnir 2025-01-08

クラウドストレージのかなり初期に、Dropboxがこうした問題をほぼ完璧に解決していて、印象的だった記憶があります :)

 
0126kjw 2025-01-08

ありがとうございます!おっしゃるとおり、Dropbox にはそうした先例があったのですね。そのおかげで良いインサイトを得られました。ハングル利用者のために、OS レベルで NFC Unicode 正規化がデフォルトでサポートされるといいなと思います。こうしたツールが不要になるくらいに。 :)

 
cogurrl 2025-01-08

実行すると、「未確認の開発元…」ではなく、起動時から「アプリケーションを開けません」と表示され、セキュリティセクションでも確認できません。 (Mac 15.2(24C101))

 
0126kjw 2025-01-15

アプリの署名および認証手続きが完了し、これで実行エラーやセキュリティ上の問題なく安心してご利用いただけるよう対応しました。改めてフィードバックをお寄せいただき、ありがとうございます。

 
0126kjw 2025-01-08

問題を共有していただきありがとうございます! 確認してみたところ、デプロイターゲットが15.1に設定されている問題を見つけました。一人で使っていたものだったので、そこまで気が回っていませんでした……。macOS 13.0以上をすべてサポートできるように変更したうえで、releaseファイルも修正しておきます! フィードバックありがとうございます

 
princox 2026-03-08

App Storeにアクセスしても何も表示されないのですが、正常なリンクでしょうか?!

 
princox 2026-03-08

App Store内で「お探しのページはありません」と表示されます!