GUI'siz Thunar'da amblemleri nasıl ayarlarım?


9

Bir komut dosyası kullanarak Thunar'daki bir dosyaya amblemler eklemek istiyorum, ancak bu konuda herhangi bir belge bulamıyorum.

Bunu yapmak mümkün mü? Ve eğer öyleyse, nasıl?

Burada aynı soru soruldu , ancak ~/.cache/Thunar/metafile.tdbsistemimde olmayan bir dosyadan bahsediyorlar . Bence bu soru ve cevap eski.


Var olmadığından emin misin? ~/.cachebildiğiniz gizli bir dosyadır ..
Seth

~/.cache/Thunar/bile yok. Thunar'daki bir dosyaya amblem ekledikten sonra bile. Yüklü Thunar 1.6.3 sürümü var.
Remco Haszing

Yanıtlar:


13

Thunar, 1.6 sürümünden beri, meta verileri depolamak için gvfs-metadata daemon uygulamasını kullanmaya başladı. Meta veriler depolanır ~/.local/share/gvfs-metadata, ancak dosyalardan okuyamazsınız (sanırım bazı ikili formatlarda saklanır ). Meta verileri okumak için şu gvfs-infokomutu kullanırsınız :

gvfs-info -a metadata:: /some/location  

Hangi meta verilerini yazdıracaksınız /some/location.

Meta verileri değiştirmek istiyorsanız şu gvfs-set-attributekomutu kullanabilirsiniz :

gvfs-set-attribute /some/location -t stringv metadata::mdtype value  

/some/locationmeta verilerini düzenlemek istediğiniz dosya / klasörün konumudur -t stringv, komutun dize girdisini beklemesini söyler, mdtypedeğiştirmek istediğiniz meta veri türünü ayarlar (örneğin emblems) ve meta veri olarak new valueayarlar . Örneğin: valuemdtype

gvfs-set-attribute Downloads -t stringv metadata::emblems emblem-default  

DownloadsKlasöre defaultamblemi verir .

noneAmblemi kaldırmak için değeri olarak ayarlayın . Değişiklikleri görmek için dosya yöneticisini yeniden başlatmanız gerekecek.


Bir kerede birden fazla klasörün / dosyanın amblemini değiştirmenize izin veren küçük bir komut dosyası yazdım:

run() {    
cd # make sure we're in the home directory
echo 'What emblem do you want to apply?'
read emblem

if ! [ -z $emblem ]; then
    for i in $@
    do
        echo 'Changing stuff...'
        $(gvfs-set-attribute $i -t stringv metadata::emblems $emblem)
    done
    echo 'Done!'
else
    echo 'Emblem must be specified! Exiting...'
    exit  
fi
}

init() {

if [[ -z $@  ]]; then
    echo "No arguments provided"
else   
    run $@
fi
}

init $@  

Kaynaklar:


@RemcoHaszing Lütfen düzenlediğim yanıtı kontrol et, bir hata yaptım ve şimdi düzelttim.
Seth

Bilmek istedim, çünkü Dropbox klasörlerimin durumunu göstermek için amblemleri ayarlayan bir komut dosyası yazmak istedim. Yeni eklenen amblemleri görmek ve daha sonra güncellenen cevabınızda bunu okumak için Thunar'ı yeniden başlatmam gerektiğini öğrendim. Thunar'ın bir şekilde çalışırken bu değişiklikleri alıp alamayacağını biliyor musunuz?
Remco Haszing

@RemcoHaszing Hayır, bu gerçekten mümkün değil AFAIK. Thunar, değişiklikler için sürekli anket yapmak zorunda kalacaktı ve bu çok fazla kaynak gerektirecekti. Thunar'ın çalışan tüm örneklerini kapatmak ve tam olarak ne yapmaya çalıştığınıza bağlı olarak Dropbox klasörlerinizde yeni bir örnek açmak için komut dosyasını düzenleyebilirim.
Seth

Çok güzel bir senaryo ve komut. Bu dosyalar ve dizinler üzerinde mükemmel çalışır. Ancak, Dropbox klasörüm kendi bölümüdür / dev / sda2 ancak ~ / Dropbox'a bağlanır. ~ / Dropbox için amblemi ayarlamayı denedim ama işe yaramadı. Herhangi bir fikir? Thank you
jbrock

@jbrock Dosya yöneticisini yeniden başlattınız mı? Değişiklikler yeniden başlatılıncaya kadar etkili olmaz. Eğer bu çözülmezse korkarım bilmiyorum. Yeni bir soru sormayı deneyebilirsiniz. Yardım etmek isterim, ancak şu anda bu özel sorunu test edecek kaynaklardan yoksundur. Afedersiniz!
Seth
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.