Το GNOME στο οποίο βασίζεται και το Ubuntu, ανά πάσα ώρα και στιγμή
διατηρεί τη λίστα των πιο πρόσφατων αρχείων (recent files) που έχουν
χρησιμοποιηθεί. Αυτή η λίστα είναι διαθέσιμη είτε στον File Manager
(nautilus) είτε σε τρίτες εφαρμογές όπως για παράδειγμα ο φοβερός
keystroke launcher kupfer
ώστε με δυο clicks να έχουμε στην άμεση διάθεσή μας τα πιο πρόσφατα
αρχεία μας. Δεν λείπουν πάντως οι φορές που μερικά αρχεία δεν θέλουμε να
τα "θυμάται" το GNOME αλλά προτιμούμε να μην εμφανίζονται στην σχετική
λίστα.
Για να το καταφέρουμε αυτό θα χρειαστούμε μια μικρή επεξεργασία XML αρχείων από το shell του Linux. Πρώτα από όλα, τα πρόσφατα αρχεία καταγράφονται στην τοποθεσία $HOME/.local/share/recently-used.xbel που είναι όντως ένα XML αρχείο. Εκεί για κάθε έγγραφο καταγράφεται η τοποθεσία του σε ένα attribute ονόματι href. Επειδή δεν μπορούμε να απαγορεύσουμε την καταγραφή του συστήματος για τα πρόσφατα αρχεία, το μόνο που μπορούμε να κάνουμε είναι μια εκκαθάριση (clean) τους, σύμφωνα με κάποια κριτήρια, κατά τακτά χρονικά διαστήματα. Είχαμε παλαιότερα αναφερθεί στο φανταστικό πρόγραμμα xmlstarlet που βοηθάει στην επεξεργασία XML από command-line. Έτσι και τώρα, προκειμένου να σβήσουμε (delete) τις εγγραφές των πρόσφατων αρχείων που ανήκουν σε έναν συγκεκριμένο κατάλογο (πχ private) δεν έχουμε παρά να εκδώσουμε την εντολή:
xmlstarlet ed -N bookmark="http://www.freedesktop.org/standards/desktop-bookmarks" -d "//bookmark[contains(@href, 'private/')]" $HOME/.local/share/recently-used.xbel > $HOME/.local/share/recently-used.xbel.bck ; mv $HOME/.local/share/recently-used.xbel.bck $HOME/.local/share/recently-used.xbel
To παραπάνω script μπορούμε να το εντάξουμε στα auto-startup scripts του Ubuntu.
Για να το καταφέρουμε αυτό θα χρειαστούμε μια μικρή επεξεργασία XML αρχείων από το shell του Linux. Πρώτα από όλα, τα πρόσφατα αρχεία καταγράφονται στην τοποθεσία $HOME/.local/share/recently-used.xbel που είναι όντως ένα XML αρχείο. Εκεί για κάθε έγγραφο καταγράφεται η τοποθεσία του σε ένα attribute ονόματι href. Επειδή δεν μπορούμε να απαγορεύσουμε την καταγραφή του συστήματος για τα πρόσφατα αρχεία, το μόνο που μπορούμε να κάνουμε είναι μια εκκαθάριση (clean) τους, σύμφωνα με κάποια κριτήρια, κατά τακτά χρονικά διαστήματα. Είχαμε παλαιότερα αναφερθεί στο φανταστικό πρόγραμμα xmlstarlet που βοηθάει στην επεξεργασία XML από command-line. Έτσι και τώρα, προκειμένου να σβήσουμε (delete) τις εγγραφές των πρόσφατων αρχείων που ανήκουν σε έναν συγκεκριμένο κατάλογο (πχ private) δεν έχουμε παρά να εκδώσουμε την εντολή:
xmlstarlet ed -N bookmark="http://www.freedesktop.org/standards/desktop-bookmarks" -d "//bookmark[contains(@href, 'private/')]" $HOME/.local/share/recently-used.xbel > $HOME/.local/share/recently-used.xbel.bck ; mv $HOME/.local/share/recently-used.xbel.bck $HOME/.local/share/recently-used.xbel
To παραπάνω script μπορούμε να το εντάξουμε στα auto-startup scripts του Ubuntu.
No comments:
Post a Comment