Mostrando bits de permissão de arquivo no modeline?

Mostrando bits de permissão de arquivo no modeline?

Eu me peguei alternando entre o Emacs e um shell várias vezes hoje, apenas para verificar as permissões do arquivo antes de salvar o arquivo que abri no Emacs.

Escusado será dizer que isto não é o ideal e oferece amplas oportunidades de melhoria.

Eu gostaria que a modeline mostrasse os bits de permissão, mais ou menos;

-:--- .netrc 0600 .... further modeline stuff ....

O mais próximo que vi de atingir esse objetivo foino blog emacs-fu, mas gostaria de uma solução mais genérica do que apenas verificar se o arquivo é somente leitura.

Como eu conseguiria isso?

Responder1

Eu brinquei um pouco e fiz isso funcionar para mim:

;; New variable to contain buffer file permission format construct.
(defvar my-mode-line-buffer-permissions
  '(:eval (when (buffer-file-name) (format " %04o" (file-modes (buffer-file-name))))))
;; The variable must be marked as "risky" (see C-h v mode-line-format)
(put 'my-mode-line-buffer-permissions 'risky-local-variable t)
;; And finally add it right after the file name:
(setq-default
 mode-line-buffer-identification
 (append mode-line-buffer-identification (list 'my-mode-line-buffer-permissions)))

Minha linha de modo agora diz:

-uu-:---F1  .emacs       0644   Top L1     (Emacs-Lisp)--------------

informação relacionada