# Kullanıcı Eylemleri

Eylemci ile Kullanıcı Eylemleri oluşturabilir, yapılandırabilir ve onları yönetebilirsiniz. Kimi genel eylemleri yapılandırmak için Yapılandırıcı kullanılabilir. Kullanıcı Eylemleri ile dosyalar üzerinde eylemler gerçekleştirebilir ve &krusader;’ın içsel işlevlerine doğrudan yer tutucular kullanarak parametrelerle erişebilirsiniz. Eylemler, &plasma;’nın eylem sistemine sorunsuzca tümleşirler; bu, standart “Araç Çubuğunu Düzenle” ve “Kısayolları Düzenle” iletişim kutularının kullanıcı eylemlerini göstereceği anlamına gelir. Kullanıcı Eylemleri, `~/.local/share/krusader/useractions.xml` veya `krusader/useraction.xml` konumlarında depolanırlar. Bu konumları öğrenmek için `qtpaths --paths GenericDataLocation` komutu kullanılabilir. Belgelendirmede birkaç örnek içerilmektedir. Kullanıcı eylemlerini düzenlemek, içe aktarmak, dışa aktarmak için Eylemci kullanılabilir. Öntanımlı Kullanıcı Eylemleri, `/usr/share/krusader/useraction-examples.xml` konumunda depolanırlar. Kullanıcı Eylemleri, normal bir KAction’un çalıştığı her yerde çalışır. Eylemleri menü çubuğuna koymak bile olanaklıdır; ancak bunun için `krusaderui.rc` dosyasının düzenlenmesi gerekir. Birkaç örneği aşağıda bulabilirsiniz:

- Kullanıcı Eylemleri Menüsü

- Kullanıcı Menüsü

- Eylemler Araç Çubuğu

- Sağ Tık Menüleri

- vb.

Eylem kodu yazmak ile haşır neşirseniz &krusader;’ın Kullanıcı Eylemleri aracını pek güçlü ve özelleştirilebilir olarak bulacaksınız.

Birkaç kullanıcı eylemi öntanımlı olarak sağlanır. Yazdığınız kullanıcı eylemlerini lütfen topluluk için yükleyin; böylece tüm &krusader; topluluğu bunlardan yararlanabilir. Çok teşekkürler!

## Eylemci

Eylemci

Temel olarak Kullanıcı Eylemleri, dış programları değişken parametrelerle çalıştırmak için bir yöntemdir. Örneğin, etkin paneldeki tüm seçili ögeleri, xmms’nin geçerli örneğinde kuyruğa sokmak için `xmms `--enqueue %aList("Selected")%`` komutunu kullanabilirsiniz. Ek olarak, parametreler gerektiren &krusader; içsel özelliklerine de sınırlı erişim bulunur. Örneğin, `%aPanelSize("80")%`, etkin panelin genişliğini &krusader; ana penceresinin yüzde seksenine ayarlar. Yer tutucuların parametreleri başka yer tutucular da içerebileceğinden, betik yazımı olanaklıdır.

Kullanıcı Eylemlerini Yönetmek

Yapılandırıcı’yı açın ve Kullanıcı Eylemleri Eylemci’yi Başlat yolunu izleyin. Buradan; yeni kullanıcı eylemleri ekleyebilir/içe aktarabilir ve var olanları düzenleyebilir, kaldırabilir ve dışa aktarabilirsiniz.

- Eylem Ekle: Yeni bir eylem eklerseniz istediğiniz tüm parametreleri ve özellikleri girebileceğiniz boş bir giriş maskesi açılır. Uygula düğmesine bastığınızda eylem eklenir. Sonrasında, adını soldaki listede görebilirsiniz.

- Kullanıcı Eylemlerini Düzenlemek: Soldaki kullanıcı eylemini seçin. Daha sonra özelliklerini düzenlemek istiyorsanız onu açın. Değişiklikler yalnızca Uygula düğmesine bastığınızda etkili olacaktır.

- Kullanıcı Eylemlerini Kaldırmak: Soldan kullanıcı eylemini seçin ve düğmesine basın.

- Kullanıcı Eylemi İçe Aktarmak: Bazı eylemleri içe aktarırsanız bunlar otomatik olarak listenize eklenecektir. Ad çakışmaları varsa (adların benzersiz olması gerekir; çünkü bunlar &plasma; eylem sisteminin kimliğidir), bunları çözmeniz istenir. Bunun için soldaki listede yalnızca çakışmaların olduğu eylemler gösterilecektir. Artık onlara yeni adlar verebilir veya kaldırabilirsiniz.

- Eylemi Dışa Aktar: Bir kullanıcı eylemini dışa aktarıyorsanız onu depolamak için bir dosya adı belirtmeniz gerekir. Dosya yoksa oluşturulacaktır. Dosya hâlihazırda kullanıcı eylemleri içeriyorsa dışa aktardığınız eylem bu dosyaya eklenecektir.

Tanımladığınız tüm işlemler artık kullanıcı menüsünde ve kısayolları değiştirmek ve araç çubuğunu yönetmek için kullanılan &plasma; iletişim kutularında gösterilecektir. Ayrıca, geçerli öge için kullanılabilen tüm işlemler sağ tık menüsünde de görünecektir.

Temel Özellikler

Tanımlayıcı, Başlık ve Komut Satırı her zaman zorunludur; diğer özelliklerin tümü isteğe bağlıdır.

- Tanımlayıcı: Kullanıcı eyleminin benzersiz bir adı, &plasma; eylem sistemi içinde tanımlamak için kullanılır.

- Simge düğmesi: Kullanıcı eyleminiz için olan simgeyi belirtir.

- Kategori: Kategoriler, daha iyi bir genel görünüm için kullanılırlar. Bunlar, Kullanıcı Eylemleri menüsünde alt menü ögeleri olarak görünürler.

- Başlık: Menülerde veya iletişim kutularında görüntülenen adı belirtir.

- Araç ipucu: Kullanıcı eyleminiz için bir araç ipucu; fareyle üzerine geldiğinizde görüntülenir.

- Açıklama: Kullanıcı eyleminin ne yaptığına dair bir açıklamayı belirtir. Bu ayrıca, kullanıcı eyleminizin üzerindeyken &Shift; F1 yaptığınızda görünen Bu Nedir? sisteminde de görünür.

- Komut: Yürütülecek olan komutu belirtir. Ekle düğmesini kullanarak bir yer tutucu ekleyebilirsiniz.

- Çalışma dizini: Komutun yürütüleceği komutun içinde bulunacağı çalışma klasörünü belirtir.

- Yürütme kipi:

  - Normal: Normal yürütme kipi

  - Uçbirimde çalıştır: Komutu uçbirimde çalıştırır.

  - Gömülü uçbirim öykünücüsünde çalıştır: Komutu gömülü uçbirimde çalıştırır.

  - Çıktıyı biriktir: Yürütülen programın çıktısını bir grafik arayüz pencerede toplar.

  - Standart hatayı ayrı tut: Çıktıyı biriktir seçeneği etkinken kullanıldığında, stdout ve stderr ayrı ayrı toplanır.

- Komutun kabul ettikleri:

  - Yalnızca yerel dosyalar (&URL; yok): Yer tutucuya yalnızca yerel adresleri döndürmesi gerektiğini söyler.

  - &URL;’ler (uzak ve yerel): Yer tutucuya, &URL;’ler döndürmesi gerektiğini söyler.

- Öntanımlı kısayol: Kullanıcı eylemi için öntanımlı bir kısayol yapılandırır.

- Etkin: İşaretlenirse kullanıcı eylemi, Kullanıcı Menüsü’nde gösterilir; aksi takdirde gizli tutulur.

Komut satırı sözdizimi

Temel olarak, komut satırına yazdığınız her şey yürütülür (eğer ls -l yazarsanız ls -l yürütülür). &krusader;’dan bir karakter dizisi alma olanağınız vardır; panelin var olan durumunu temsil eder. Bu, yer tutucular kullanılarak yapılır. Yer tutucu, yüzde işaretiyle (“%”) başlar ve ardından bir panel göstergesi gelir (aktif için “a”, diğeri için “o”, sol panel için “l” ve sağ panel için “r”. Yer tutucunun çalışmak için bir panele gereksinimi yoksa bunu bir alt çizgiyle (“_”) belirtmeniz gerekir. Daha sonra bazı parametreleri tırnak içine alabilen yer tutucunun adı gelir (aşağıdaki listeye bakın). Son olarak yine yüzde işareti gelir.

Bu kulağa çok karmaşık geliyor, o yüzden bir örnek yapalım: “%aList("Selected")%”, etkin paneldeki seçili tüm ögelerin listesiyle değiştirilir. Yani “xmms --enqueue %aList("All", " ", "", "*.mp3")%” gibi bir komut, geçerli paneldeki tüm .mp3’lerin tek bir boşlukla ayrılmış bir listesiyle xmms’yi çalıştıracaktır.

Şu anda, bu yer tutucular gerçeklenmiştir:

- `Path` — panel yoluyla değiştirilir

  1. Parametre (isteğe bağlı): Kendiliğinden kaçış boşlukları · Öntanımlı: Evet

- `Count` — <ilk parametrenin> sayısıyla değiştirilir

  1. Parametre: Hangi ögeler: Ya All ya Selected ya Files ya da Dirs

- `Filter` — panelin süzgeç maskesiyle değiştirilir

- `Current` — geçerli ögeyle değiştirilir

  1. Parametre (isteğe bağlı): Geçerli yolu atla · Öntanımlı: Hayır

  2. Parametre (isteğe bağlı): Kendiliğinden kaçış boşlukları · Öntanımlı: Evet

- `List` — <tüm ilk parametrelerin listesiyle değiştirilir>

  1. Parametre: Hangi ögeler: Ya All ya Selected ya Files ya da Dirs

  2. Parametre (isteğe bağlı): Ögeler arasındaki ayırıcı · Öntanımlı:

  3. Parametre (isteğe bağlı): Geçerli yolu atla · Öntanımlı: Hayır

  4. Parametre (isteğe bağlı): Süzgeç maskesi (Selected dışındaki tümü için)· Öntanımlı: *

  5. Parametre (isteğe bağlı): Kendiliğinden kaçış boşlukları · Öntanımlı: Evet

- `Select` — paneldeki seçimi manipüle eder

  1. Parametre: Süzgeç maskesi

  2. Parametre (isteğe bağlı): Hangi şekilde manipüle edileceği; ya Set ya Add ya da Remove · Öntanımlı: Set

- `Goto` — panelin yolunu <ilk parametreye> değiştirir

  1. Parametre: Bir göreceli veya mutlak yol veya bir &URL;

  2. Parametre (isteğe bağlı): Konumu yeni bir sekmede aç· Öntanımlı: Hayır

- `Ask` — kullanıcıdan az biraz metin ister ve yanıtla değiştirilir

  1. Parametre: Soru

  2. Parametre (isteğe bağlı): Öntanımlı yanıt

  3. Parametre (isteğe bağlı): Soru kutusu için alt yazı

- `Clipboard` — panoyu manipüle eder

  1. Parametre: Panoya gitmesi gereken metin (burada %aCurrent% kullanmak isteyebilirsiniz)

  2. Parametre (isteğe bağlı): Bu ayırıcıyla metni, panonun geçerli içeriğine iliştirin

- `Copy` — dosya kopyalar; yerel, tez yedekler için yararlıdır

  1. Parametre: Neyin kopyalanması gerektiği

  2. Parametre: Nereye kopyalanması gerektiği

- `Sync` — verilen bir profille Eşzamanlayıcı bileşenini açar

  1. Parametre: Eşzamanlayıcı için bir profil

- `NewSearch` — arama penceresini belirli bir profille açar

  1. Parametre: Arama modülü için bir profil

- `Profile` — verilen bir profili yükler

  1. Parametre: Bir panel profili

- `Each` — komut satırını bir listeye böler; bu komutlar bir birinin ardına yürütülür

  1. Parametre: Bir liste ögesi (tümü, tüm dosyalar, tüm dizinler, tüm seçili)

- `Move` — kaynaktan hedefe kopyalar

  1. Parametre: Bir kaynak

  2. Parametre: Bir hedef konum

- `PanelSize` — iki panel arasındaki oranı değiştirir

  1. Parametre (isteğe bağlı): Bir tamsayı değer; yani, 80, etkin panelin &krusader;’ın genişliğinin (dikey kipteyken yükseklik) yüzde seksenini kullanmasını sağlar; parametreyi boş bırakmak yüzde ellisi anlamına gelir.

- `Ask` — yürütmeyi iptal eder

  1. Parametre (isteğe bağlı): İptal sorusu için bir dizi

- `ListFile` — bir ögeler listesi içeren bir geçici dosyanın adıyla/yoluyla değiştirilir

  1. Parametre: Yol veya dosya adı

- `ColSort` — belirli bir panelin sütunundaki sıralamayı ayarlar

  1. Parametre: Sütun: Name, Ext, Type, Size, Modified, Perms, rwx, Owner veya Group arasından biri olabilir.

  2. Parametre: Sıralama sekansı: Toggle, Asc veya Desc arasından biri olabilir.

- `View` — görünüm kipini ayarlar

  1. Parametre: Görünüm kipi: Ya generic ya text ya da hex

  2. Parametre: Pencere kipi: Ya tab ya da window

Yer tutucu eklemek için grafik arayüz tabanlı bir yardımcı sağlanmıştır. Path, Current ve List bünyesindeki boşluklar öntanımlı olarak kendiliğinden kaçış karakteriyle işlenir. Bilmeniz gereken bir önemli nokta daha var: &krusader;’ın içsel işlevleriyle etkileşim kuran tüm yer tutucular genişletme zamanında (yani yer tutucular değiştirildiğinde doğrudan) çağrılır. Dış programlar ise yürütme zamanında (yani tüm yer tutucular değiştirildikten sonra) çağrılır.

Gelişmiş Özellikler

Burada komutunuzun nerede görüneceğini (sağ tıklama menüsü için) yapılandırabilirsiniz. Ayrıca, yürütülecek komutu değiştirebilir ve ayrı olarak onaylayabilirsiniz. Komutun hangi kullanıcı altında yürütüleceğini de belirleyebilirsiniz.

- Eylemin bir protokol, yol, &MIME; türü veya dosya adı için geçerli olup olmadığını yapılandırır.

- Yürütmeden önce komut satırının ayarlanması sağlanır.

- Yürütme için farklı bir kullanıcı belirleyin (bu, &krusader;’ın içsel işlevlerinde herhangi bir etkiye neden olmaz).