開源arrow-up-right的 DB client — DBeaverarrow-up-right 在 Mac 上會直接使用系統語言設定來選擇介面語言,因此如果系統語言設定成繁體中文(台灣)的話,介面會變成 Chinese — 簡體中文 🤦 非常不直覺而且在 Settings 裡沒地方可以 override 掉這個設定。
誰知道某個英文術語會被翻譯成什麼平行宇宙的中文。
唯一設定語言的方法,是用 command line 來啟動 DBeaver,並加上 arrow-up-right-nl en參數arrow-up-right:
-nl en
但如果每次要用 DBeaver 都要從 command line 啟動很麻煩,如何才能從 GUI 啟動 DBeaver.app 都預設用英文呢?
後來找到的做法是去 patch DBeaver.app。
DBeaver.app
首先在 DBeaver.app/Contents/MacOS 底下新增一個叫 dbeaver-en(DBeaver.app/Contents/MacOS/dbeaver-en) 的檔案,加入以下內容:
DBeaver.app/Contents/MacOS
dbeaver-en
DBeaver.app/Contents/MacOS/dbeaver-en
新增檔案
然後執行 chmod +x DBeaver.app/Contents/MacOS/dbeaver-en。
chmod +x DBeaver.app/Contents/MacOS/dbeaver-en
再來,修改 DBeaver.app/Contents/Info.plist,把 <key>CFBundleExecutable</key> 底下的 <string>dbeaver</string> 改成 <string>dbeaver-en</string>。
DBeaver.app/Contents/Info.plist
<key>CFBundleExecutable</key>
<string>dbeaver</string>
<string>dbeaver-en</string>
最後,為了清掉系統對 Info.plist 的 cache,必須用 Finder 把 DBeaver.app從 /Application 搬到其他地方,再搬回來。
Info.plist
/Application
完成之後,從 Launcher 或其他地方打開 DBeaver.app,介面就會是英文的了。
好!
Last updated 2 years ago
/Applications/DBeaver.app/Contents/MacOS/dbeaver -nl en
touch dbeaver-en
#!/usr/bin/env bash"$(dirname "$0")/dbeaver" -nl en