Linux und Specialfolder

Gerade beim Kompilieren einer lteren, noch mit RB programmierten Datenbankkonvertierung, die Ordner wie Desktop usw. benutzt, bemerkt, dass die Xojo-Funktion ‘Specialfolder’ bei mir (Xojo 2015r2.1) in den neueren Versionen von Ubuntu 14.10/15.04 und Linux Mint 17.1 die deutschsprachigen Begriffe fr Schreibtisch (Desktop), Bilder (Pictures), Musik (Music) sowie Dokumente (Documents) nicht mehr richtig bersetzt. Kann das jemand besttigen?

Meines Erachtens hat das mal richtig funktioniert. Ich habe aber weder ltere (RB) Versionen am Laufen noch aktuell genug Zeit eine solche wieder zu installieren.

Bei mir (Xojo 2015r1) funktioniert das Benutzen von SpecialFolder.Documents auch nicht so richtig.

Ich muss SpecialFolder.UserHome.Child(“Dokumente”) verwenden.

ein simpler Test ergibt Verwirrendes

Window.Open

[code]dim f as FolderItem = SpecialFolder.Documents
MsgBox f.NativePath

if f <> nil and f.Exists Then
MsgBox “SpecialFolder.Documents exists”
else
MsgBox “SpecialFolder.Documents not exists”
end if[/code]

die erste msgbox erscheint mit dem Inhalt “/home/username/Documents”

die zweite msgbox sagt dann “SpecialFolder.Documents not exists”

Das sieht …verstndlich.
Xojo sieht Ihre SpecialFolder.Documents und schafft eine FolderItem mit dem nativePath von “/ home / username / Documents”

Die FolderItem ist nicht nil…you knnte solch einen Ordner selbst erstellen whlen.
Aber es ist der falsche Weg fr Dokumente auf Linux, daher spielt es keine .exists

Jeff, the problem is the automatic translation in Linux (.config/user-dirs.dirs)

that means you would have to do a translation for each language ?

if german then SpecialFolder.UserHome.Child(“Dokumente”)
if english then SpecialFolder.UserHome.Child(“Documents”)…

[quote]# This file is written by xdg-user-dirs-update

If you want to change or add directories, just edit the line you’re

interested in. All local changes will be retained on the next run

Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped

homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an

absolute path. No other format is supported.

XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_TEMPLATES_DIR="$HOME/Vorlagen"
XDG_PUBLICSHARE_DIR="$HOME/ffentlich"
XDG_DOCUMENTS_DIR="$HOME/Dokumente"
XDG_MUSIC_DIR="$HOME/Musik"
XDG_PICTURES_DIR="$HOME/Bilder"
XDG_VIDEOS_DIR="$HOME/Videos"[/quote]

[quote]Jeff, the problem is the automatic translation in Linux (.config/user-dirs.dirs)
that means you would have to do a translation for each language ?[/quote]

or Xojo… :wink:
we expect Specialfolder.documents to work…
wir erwarten Specialfolder.documents zu arbeiten …

a workaround is to read it from user-dirs.dirs

https://www.dropbox.com/s/gwlastweldg0ej5/SpecialFoldersLinux.zip?dl=1

Im “Informations”-Fenster zum Dokumente-Ordner steht ganz oben “Dokumente”, aber in “Name & Suffix” steht die englische Bezeichnung “Documents”. Wenn man die unsichtbaren Dateien darstellen lt (Beispielsweise mit dem TinkerTool"), dann kann man im Dokumente-Ordner eine Datei namens “.localized” sehen, was darauf hinweist, da der eigentliche Name des Dokumente-Ordners “Documents.localized” lauten mte. Versucht es mal mit dieser Bezeichnung im Folderitem.

In Linux braucht man kein TinkerTool zum Anzeigen von versteckten Dateien, da genügt STRG+H.
Im Dokumente Ordner gibt es auch keine Datei namens “.localized”
Meinst du vielleicht OSX?