(atualização) aqui está uma solução com uma variável de arquivo local:
nos seus arquivos:
;; -*- preferred-buffer-name: "purtsl"; -*-
em .emacs:
(defun change-buffer-name ()
(if (boundp 'preferred-buffer-name)
(rename-buffer preferred-buffer-name)))
(add-hook 'find-file-hook 'change-buffer-name t)
você pode ter que personalizar valores de variáveis locais seguras e / ou ativar variáveis locais , dependendo de quantos projetos você tem, considerações de segurança e como é chato para você responder a pergunta de segurança ..
e aqui está uma abordagem diferente. ele verifica o nome do diretório que o contém e depois muda o nome do buffer para / WS:
(defun find-file-custom (filename)
"open filename and set buffer name to <project>/WS"
(interactive "F")
(find-file filename)
(rename-buffer (concat "<" (file-name-nondirectory
(directory-file-name
(file-name-directory (buffer-file-name)))) ">/WS")))