Benutzerdefinierte .desktop-Datei - Name wird in Unity Dash unter Ubuntu 13.04 nicht angezeigt

10

Ich habe mehrere .desktop-Dateien, über die ich von 12.10 Ubuntu migriert habe. Die Anwendungen, auf die sie zeigen, funktionieren einwandfrei, und das Bild wird im Bindestrich angezeigt, wenn ich nach ihnen suche ... aber unter den Bildern befindet sich kein Text, wenn sie im Bindestrich angezeigt werden. Es ist nur das Bild. Alle anderen Anwendungen, die entweder standardmäßig oder über das Software Center installiert wurden, werden problemlos angezeigt.

Hier ist ein Beispiel für ein .desktop, das ich erstellt habe:

[Desktop Entry]
Version=1.0
Name=Sublime Text 2
GenericName=Text Editor
Comment=Awesome Text Editor
Exec=/home/wes/Sublime\ Text\ 2/sublime_text
Icon=/home/wes/Sublime Text 2/Icon/128x128/sublime_text.png
Terminal=false
Type=Application

Folgendes meine ich:

Kein Text für benutzerdefinierten .desktop-Starter

Bearbeiten: Dies ist nur ein Beispiel für 2 oder 3 .desktop-Dateien, die ich in der Vergangenheit erstellt habe und die wie erwartet in 12.10 funktionierten, aber allen scheint der Anwendungsname in 13.04 zu fehlen (nur im Bindestrich). Ich glaube nicht, dass es die Symbolgröße ist, da ich verschiedene Größen ausprobiert habe (32x32, 64x64, 128x128 usw.).

Wir s
quelle
Versuchen Sie, die Bildgröße auf 64 x 64 zu verringern, und fügen Sie auch einen Categories=Eintrag hinzu. Ich nehme an Categories=GTK;Development;IDE;? Abmelden-Anmelden, um die Änderungen zu sehen.
NickTux
@NikTh Ja, ich habe das alles versucht und aus irgendeinem Grund will es einfach nicht funktionieren. Es ist auch wichtig zu beachten, dass dies nur eine davon ist ... Ich habe 2 oder 3 weitere benutzerdefinierte .desktop-Dateien, die alle so im Bindestrich angezeigt werden, einige haben größere Symbole, einige sind kleiner als 64x64. Ich denke, es ist ein viel dunkleres Thema.
Wes

Antworten:

9

Ich bin gerade auf dasselbe Problem gestoßen wie Sie. Ich habe mit einer Reihe von Einstellungen in meinen .desktop-Dateien herumgespielt, um zu versuchen, den Namen im Unity-Launcher anzuzeigen, da ich die .desktop-Dateien in ~ / Desktop erstellt und sie dann nach ~ / .local / share / verschoben habe Anwendungen

Alles, was ich tun musste, damit der Unity-Anwendungsstarter die Namen anzeigt, war, sich von Ubuntu abzumelden und wieder anzumelden. Ziemlich lahm, ich weiß, aber es hat funktioniert.

Zumindest zeigt dies, dass in meinem Fall (und wahrscheinlich auch in Ihrem) die .desktop-Dateien nicht irgendwie falsch waren. In meinem Fall hat das Programm zur Überprüfung der Desktop-Datei schließlich keine Fehler aufgelistet. In Unity gab es wahrscheinlich einen Namenscache, der gelöscht werden musste. Es wäre befriedigender zu wissen, wie man das macht, ohne sich abzumelden, aber diese Problemumgehung ist für mich vorerst gut genug. Hoffe, diese Beobachtung hilft jemand anderem!

Michael Percy
quelle
1
Ja, das war auch meine Erfahrung. Ich hätte schwören können, dass ich mich während meiner Erkundung dieses Problems neu angemeldet hatte und es nicht funktionierte. Dann, eines Tages, nachdem ich das Problem aufgegeben hatte, ging die Stromversorgung in meinem Haus aus, und beim Neustart wurden die Desktop-Einträge in Unity einwandfrei angezeigt.
Wes
Funktioniert bei mir auch in XFCE.
Nikolay Prokopyev
3

Suchen Sie in Dash nach alacarte, um das Hauptmenü zu öffnen :

A la carte

Im Hauptmenü für die Anwendung suchen , die nicht Namen in haben Dash . Wenn Sie es gefunden haben, klicken Sie auf Eigenschaften und geben Sie ihm einen Namen (in Ihrem Fall Sublime Text 2-Anwendung, in meinem Fall Ask Ubuntu-Webanwendung):

Geben Sie hier die Bildbeschreibung ein

Radu Rădeanu
quelle
1
Danke für die Eingabe, aber das beantwortet meine Frage überhaupt nicht. Ich bin mir bewusst, dass es Schnittstellen zum Erstellen von benutzerdefinierten Startern gibt, aber meine Frage lautet "Warum wird in meiner benutzerdefinierten .desktop-Datei der Name der Anwendung nicht angezeigt?".
Wes
1
@Wes Aus diesem Grund. Suchen Sie einfach Ihre Anwendung im Hauptmenü und Sie werden sehen, dass sie keinen Namen hat. Ich habe die gleiche Situation experimentiert.
Radu Rădeanu
Insbesondere ist das Problem ein leerer Wert in den Zeilen Nameoder Name[your-locale]. Ich bin gerade in GNOME darauf gestoßen, wo der Application Finder ein gleichwertiges Bearbeitungsverfahren wie oben ermöglicht.
underscore_d
3

Sie können Ihre .desktopDateien mit validieren desktop-file-validate *.desktopund dann ausführen, wenn keine Fehler vorliegen (es wird Ihnen mitgeteilt, was sudo update-desktop-databasebehoben werden muss ), um die Datenbank des Systems tatsächlich zu aktualisieren.

Sam Wilson
quelle
1
Funktioniert bei mir in XFCE nicht.
Nikolay Prokopyev
0

Was für mich funktioniert hat, ist ein Neustart von Cinnamon (wenn Sie Linux Mint haben) durch Drücken ALT+F2und Schreiben von "r". Es gibt sicherlich ein ähnliches Verfahren, um Unity neu zu starten.

Dadurch wird der Menü-Cache aktualisiert, ohne dass Sie sich abmelden und wieder anmelden müssen.

maxgalbu
quelle
0

Ich habe dieses Problem auf eine ziemlich einfache Weise gelöst, die für die meisten anderen hier wahrscheinlich nicht gilt. Aus irgendeinem Grund enthielt meine .desktop-Datei die Zeile NoDisplay=truemit einem ziemlich vorhersehbaren Ergebnis. Nachdem ich diese Zeile entfernt und neu angemeldet hatte, wurde die App wie erhofft in der Dash-Suche angezeigt.

Tsbertalan
quelle