Bestandsnaam kopiëren

Donderdag had ik mijn laatste obstakel voor het aangenaam functioneren van xfce - ik zal wat verder nog aantonen dat er nog een probleem mee is - kunnen oplossen. Maar er zijn toch nog een paar kleinere probleempjes, de meeste ook te situeren bij thunar. Eigenlijk spijtig van de sidebar van nautilus, en pcmanfm vindt ik net minder aangenaam werken. Dus we gaan maar beginnen prutsen :P

Als eerste heb ik ontdekt dat orage mooi kan instellen zodat als ik de orage klok gebruik, ik terug een kalender heb zoals onder GNOME, maar dan zonder locaties, maar dat is niet belangrijk. Je kan de instellingen en hoe het er dan uitziet zien in de screenshot beneden.

Verder heb ik thunar een beetje getweakt. Als eerste heb ik een probleempje bij het openen van meerdere video bestanden. Indien die van een verschillend formaat zijn, dan zal hij de verschillende bestanden afzonderlijk openen, wat niet zo handig is. Maar Thunar heeft een heel handig systeem om zelf zaken toe te voegen aan het menu, namelijk "Custom Actions". Daarmee kan je dus een extra menu-item toevoegen aan bepaalde soorten bestanden, waarbij je de mogelijkheid hebt om die bestanden te specificeren op basis van algemeen type en kenmerken in de naam. Dus kon ik dit oplossen door zelf een optie toe te voegen om bestanden geforceerd samen te openen met bv SMPlayer, door simpelweg het commando smplayer "%F" als commando in te geven.

Een tweede tweak heeft te maken met het kopiëren van bestandsnamen. Als je een bestand kopieert dat kopieer je een URL, en die worden niet omgezet als je ze als tekst plakt, zoals bij GNOME 2 gebeurde. Daarom kreeg ik plots het idee om een extra optie toe te voegen die het mogelijk maakt om de bestandsnaam te kopiëren. Daarvoor heb ik eerste gecontroleerd of %F effectief de bestandsnamen doorgaf, en dat bleek zo te zijn. En na wat opzoekwerk vond ik deze site die me kennis liet maken met xclip, wat ik ook installeerde. Het laat simpel toe vanuit een commando zaken toe te voegen aan het clipboard. Dus met het volgende commando was mijn probleem opgelost:
echo "%F" | xclip -selection clipboard

En zoals beloofd kom ik nog even terug op het probleem met de huidige oplossing voor het bookmark probleem van Thunar. Het is zo dat als ik een extra bookmark toevoeg, en de gvfs bookmarks zijn niet gemount, dat die verwijderd worden. Dit zal ik straks oplossen door straks de code aan te passen zodat de gewone bookmarks wordt gescheiden van de gvfs bookmarks, en daarna terug samenvoegt, maar de gvfs bookmarks worden daarbij gehaald uit een afzonderlijk bestand, waardoor ik dergelijke bookmarks dus handmatig zal moeten toeveoegen, maar zo loop ik ten minste geen risico op verlies van bookmarks. De code zal ik dan hier wel posten.

04/12/2011, 22:51:
Zoals beloofd kom ik nu af met de code. Ik heb ook even gekeken of het een optie zou zijn om de gvfs backups te genereren uit het bookmarks bestand van Gigolo, maar toen bedacht ik me dat dit enkel de plaatsen betreft, de volgorde niet klopt, en ik meer in Gigolo zet dan ik nu eigenlijk in mijn bookmarks wil, en tegelijkertijd minder, want voor mijn virtuele server heb ik er twee. Dus ik heb die piste terug laten vallen.

Ik heb in de code de nodige beveiliging gestoken voor fouten, zodat zaken die normaal verdwijnen toch nog "gered" kunnen worden. Ook heb ik er een afzonderlijk script van gemaakt die in de achtergrond wordt gestart, zodat thunar niet hoed te wachten. Dit is dan de code van thunar:

#!/bin/sh
/usr/bin/thunar-backups &
exec Thunar "$@"

En thunar-backups:

#!/bin/sh
sed -i 's/^sftp:\/\/\(.*\)@\(.*\)\/\(.*\)$/file:\/\/\/home\/kevin\/.gvfs\/sftp%20for%20\1%20on%20\2\/\3/' .gtk-bookmarks-gvfs
fgrep -v 'file://' "$HOME/.gtk-bookmarks" > "$HOME/.gtk-bookmarks-backup"
fgrep 'file://' "$HOME/.gtk-bookmarks" | fgrep -v '/.gvfs/' > "$HOME/.gtk-bookmarks-file"
cat "$HOME/.gtk-bookmarks-file" "$HOME/.gtk-bookmarks-gvfs" > "$HOME/.gtk-bookmarks"

Zo hoef ik nieuwe backups niet handmatig om te zetten naar het mountpunt, maar kan ik ook gewoon de URL toevoegen, wat het zeer war vermindert :P En de screenshot is nu ook toegevoegd.