Je voudrais pouvoir voir l'emplacement du répertoire parent du fichier actuel, indépendamment du nom du tampon actuel.
mode-line
directories
deuxième planète
la source
la source
Réponses:
Vous pouvez configurer le format de ligne de mode comme vous le souhaitez. Si vous souhaitez afficher le répertoire parent avec le nom du tampon (qui est généralement le nom du fichier, pour un tampon qui visite un fichier), modifiez
mode-line-buffer-identification
; sinon, ajoutez une entrée àmode-line-format
. Il n'y a pas de construction intégrée pour le «répertoire parent du fichier actuel», vous devrez donc le créer vous-même , par exemple avec:eval
. Voici un exemple qui ajoute le nom du répertoire après le nom du tampon et ne fait rien dans les tampons qui ne visitent pas les fichiers (y compris Dired); vous voudrez peut-être l'affiner avec le formatage.Une autre méthode serait de définir une variable contenant le texte souhaité
find-file-hooks
. Je montre également comment vous pouvez définir des propriétés avec la:propertize
construction.Si ce que vous vouliez vraiment, c'était d'avoir le nom du répertoire au cas où vous auriez plusieurs fichiers avec le même nom dans différents répertoires, Emacs l'a intégré, avec la bibliothèque uniquify . Lorsqu'il y aurait plusieurs tampons avec le même nom, cette bibliothèque fait ressembler le nom du tampon à
file.ext<foo>
etfile.ext<bar>
au lieu defile.ext
etfile.ext<2>
. Vous pouvez affiner le format en personnalisantuniquify-buffer-name-style
.la source
Je suppose que vous voulez dire que vous voulez voir le répertoire au lieu du nom du tampon.
Ou si vous voulez que votre répertoire personnel soit abrégé en
~/
(au lieu d'un nom de fichier absolu, à partir de la racine), alors:Ou si vous ne voulez que le nom du répertoire parent, en tant que nom de composant de répertoire unique, alors:
Ou si vous souhaitez conserver également le nom du tampon, comme le suppose @Malabarba, alors:
Le fait est que vous avez juste besoin d'utiliser la valeur de
default-directory
(éventuellement simplifiée à partir d'un nom absolu, si vous le souhaitez) dansmode-line-buffer-identification
. Vous pouvez définir cette variable uniquement sur le nom du répertoire, ou vous pouvez la définir sur une valeur qui conserve également le nom du tampon.Si ce que vous demandez est tout ce que vous voulez, il est simple de configurer la ligne de mode pour inclure le
default-directory
, mais vous voulez qu'elle apparaisse. Pas besoin de charger plusieurs bibliothèques pour cela (c'est ce quismart-mode-line
fait).la source
Vous installez utilisez smart-mode-line . Il est configuré pour afficher le chemin du fichier dans la ligne de mode, chaque fois que cela est pertinent.
Installez-le, puis allumez-le avec
(sml/setup)
.Il possède également de nombreuses fonctionnalités pour rendre cet affichage plus concis. Par exemple, «~ / .emacs.d /» est remplacé par «: ED:» (et vous pouvez configurer d'autres remplacements).
la source