Dired buffer adlarının tam yolu içermesini nasıl sağlayabilirim?


9

Sıklıkla diredaynı ada sahip klasörler için de dahil olmak üzere birçok arabellek açık. Bazen bu yanlış olanı değiştirmeme neden oluyor, bu yüzden bunu düzeltmenin bir yolunu arıyorum.

Şu anda, birden çok aynı adlı klasör açıksa dired, arabellek listem şuna benzer:

foo
foo<2>
bar
foo<3>
bar<2>

Ben tam olarak hangi klasöre geçiş yaptığımı görebilmeniz için tam adı (veya bir kısmını) arabellek adına dahil etmek istiyorum. Bunu böyle yapmayı tercih ederim:

foo</full/path/to/foo>
foo</another/path>

ve bunun gibi. Ayrıca örneğin yerleşmek olabilir:

/full/path/to/foo
/another/path/foo

ancak öncekini tercih ederim, çünkü önce istediğim arabelleği önce klasör adına ve tam yola ikinci olarak bulmak daha kolay olacaktır. Bu nasıl yapılabilir?

Yanıtlar:


8

Bu davranışı uniquifyaşağıdaki ayarlarla kullanabilirsiniz:

(require 'uniquify)
(setq uniquify-buffer-name-style 'post-forward-angle-brackets
      uniquify-min-dir-content 999)

Ancak uniquify'ın yalnızca yönlendirilmiş arabelleklerde değil, küresel olarak çalıştığını unutmayın.


Harika, teşekkürler! Bir cevabı kabul etmeden önce tam yol veren bir çözüm olup olmadığını bekleyeceğim ve göreceğim.
Scott Weldon

1
Bu konuda uniquify-min-dir-contentsize yardımcı olması gereken bir not ekledim . Bununla birlikte, bunun küresel bir ayar olduğunu unutmayın: sadece yönlendirilmiş tamponlar için değil, tüm tamponlar için geçerlidir!
kırmızı biber

5

.Emacs dosyamda Dired arabellekleri için tam yolları şu şekilde ayarladım:

(add-hook 'dired-after-readin-hook
      (lambda ()
        ;; Set name of dired buffers to absolute directory name.
        ;; Use `generate-new-buffer-name' for vc-directory
        ;; which creates duplicate buffers.
        (rename-buffer (generate-new-buffer-name dired-directory))))
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.