기간 모드에서 새 버퍼의 이름을 자동으로 바꿉니다.

기간 모드에서 새 버퍼의 이름을 자동으로 바꿉니다.

Emacs에서는 버퍼를 생성합니다.용어 패턴그리고 M-x term. 결과 버퍼의 이름은 입니다 *terminal*. 이는 기간 모드에서 다른 버퍼를 생성하려는 경우 일반적으로 다시 수행됩니다 M-x term. 그러나 이는 첫 번째 버퍼만 반환합니다. 따라서 (1) 를 사용하여 M-x rename-uniquely현재 이름이 지정된 첫 번째 버퍼의 이름을 바꾸고 (2) 현재 이름이 인 을 *terminal*<2>사용하여 두 번째 버퍼를 생성해야 합니다 .M-x term*terminal*

기존 버퍼 수가 텀 모드인 경우 새 버퍼의 이름이 자동으로 지정되도록 첫 번째 버퍼의 이름을 바꾸지 않고 텀 모드에서 다른 버퍼를 생성할 수 있는 방법이 있습니까 *terminal<i+1>*?i

ps: 읽기 시작했어요소개하다Emacs Lisp에서 프로그래밍하여 .emacs에 내 자신의 함수 오버로드를 작성했지만 M-x term도움이 절실히 필요합니다!

답변1

다항식 예

(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

관련 정보