Automaticamente renomeia o novo buffer no modo de termo

3

No Emacs, vamos criar um buffer em term-mode com M-x term . O buffer resultante é denominado *terminal* . Se alguém quiser criar outro buffer também no modo de termo, um normalmente faz M-x term novamente. No entanto, isso simplesmente retorna ao primeiro buffer. Portanto, é necessário (1) renomear o primeiro buffer com M-x rename-uniquely , esse buffer agora sendo denominado *terminal*<2> e (2) criar o segundo buffer com M-x term , esse buffer sendo denominado *terminal* .

Haverá uma maneira de criar outro buffer no modo de termo sem renomear os primeiros, para que o novo buffer seja nomeado automaticamente *terminal<i+1>* onde i é o número de buffers já existentes no modo de termo ?

ps: comecei a ler a introdução para programar no Emacs Lisp, para escrever no meu .emacs minha própria função sobrecarregando M-x term , mas eu sinto que qualquer ajuda será muito necessária!

    
por tflutre 31.01.2015 / 19:27

1 resposta

1

Exemplo com vários termos

(defun my-run-term ()
    (interactive)
    (require 'multi-term)
    (command-execute 'multi-term)
    (setq-default truncate-lines nil)
    (if (not (boundp 'term-number))
        (defvar term-number 1 "term index in the current emacs session") )
    (rename-buffer (concat "Term " (int-to-string term-number)))
    (setq term-number (+ 1 term-number)))
(global-set-key (kbd "C-S-t") 'my-run-term) ;; mappe sur C-T
    
por 24.02.2015 / 14:18

Tags