web-dev-qa-db-ja.com

.desktopファイルにない場合、ランチャーアイテムのローカライズされたインターフェイス名はどこで定義されますか?

ランチャーの命名

-ほとんどの場合...
interface-ランチャーの名前は、ほとんどの場合、(最初の)行で定義されます。

Name=

対応する.desktopファイルの:

enter image description here

-.desktopファイルからのローカライズされた命名
localizedネーミングでは、一部のアプリケーション(Thunderbirdなど)は、言語固有の名前を持つ広範なリストを使用します。

enter image description here


-しかし、.desktopファイルで定義されていない場合、ローカライズされた名前はどこに定義されていますか?
ただし、アイコンの名前が異なる場合がありますが、名前は.desktopfileのどこにもありません。

enter image description here

この名前は.desktopファイルとどこに関連していますか?

環境

数年前、私は QLE Quicklist editor を書きました。そのバージョンでは、国際インターフェイス名が使用されていました。今はGtk+で書き直していますが、ローカライズされたランチャー名を表示する信頼できる方法を見つける必要があります。

注意

間違いなく、この質問は this one に関連していますが、正確にはだまされていません。ローカライズされた名前を自分で取得するために、情報の保存場所を知りたいのですが。


編集

証明として、Scermafdrukという名前のローカライズされたgnome-screenshot.desktopのコンテンツ(翻訳済み:Screenshot)。ファイルに文字列「Scermafdruk」の痕跡はありません...

[AU]

[Desktop Entry]
Name=Screenshot
Comment=Save images of your screen or individual windows
Keywords=snapshot;capture;print;
Exec=gnome-screenshot --interactive
Terminal=false
Type=Application
Icon=applets-screenshooter
StartupNotify=true
Categories=GTK;GNOME;Utility;
NotShowIn=KDE;
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-utils
X-GNOME-Bugzilla-Component=screenshot
Actions=Screen;Window;Area
X-Ubuntu-Gettext-Domain=gnome-screenshot

[Desktop Action Screen]
Name=Take a Screenshot of the Whole Screen
Exec=gnome-screenshot
OnlyShowIn=Unity;

[Desktop Action Window]
Name=Take a Screenshot of the Current Window
Exec=gnome-screenshot -w
OnlyShowIn=Unity;

[Desktop Action Area]
Name=Take a Screenshot of a Selected Area
Exec=gnome-screenshot -a
OnlyShowIn=Unity;
4
Jacob Vlijm

テスト中に気付いたように、このような動作の原因となるエントリは次のとおりです。

X-Ubuntu-Gettext-Domain=gnome-screenshot

https://wiki.ubuntu.com/UbuntuDevelopment/Internationalisation/Packaging から:

デスクトップエントリ

デスクトップエントリ (.desktopファイル)の翻訳も削除され、言語パックに含まれます。

他のディストリビューションが行うこととは異なり(現在のOpenSUSEを除く)、翻訳は.desktopファイル自体(静的な翻訳)ではなく、アプリケーションの同じ.moファイルにあることが期待されます。 。これらをLaunchpadで翻訳し、言語パックで出荷できるようにするために、Ubuntu翻訳者が編集および更新できるようにします。

ランタイムのロードは、 patch glib および kdelibs へのパッチによって行われ、X-Ubuntu-Gettext-Domainを認識します 追加キー すべてのUbuntu .desktopファイルに追加し、それらを読み込むときにgettextサポートを追加します。 .desktopファイルに既に翻訳が含まれている場合、これらの静的な翻訳が優先されることに注意してください。

X-Ubuntu-Gettext-Domain =キーの追加は、パッケージのビルド時に、パッケージビルドシステムで自動的に、または(めったに)パッチで行われます。

つまり、Ubuntuのglibおよびkdelibのパッチを適用したバージョンは、他の方法で翻訳が利用できない場合、実行時にgettextサポートを追加するためにX-Ubuntu-Gettext-Domainキーを使用します。デスクトップファイル、アプリケーションの.moファイルから取得される翻訳。

また、これはX-Ubuntu-Gettext-DomainキーのサポートがUbuntu固有の実装であり、X-Ubuntu-Gettext-Domainを使用するデスクトップファイルは、同じパッチバージョンのglib/kdelib

1
kos