Вот сверхлегкая маленькая функция, которую вы можете вызвать, чтобы автоматически переименовать термин, на котором вы находитесь, и затем начать новый термин:
(defun new-ansi-term ()
(interactive)
(if (string= "*ansi-term*" (buffer-name))
(rename-uniquely))
(ansi-term "/bin/bash"))
Затем, чтобы связать это в течение одного семестра, я обнаружил, что это работает:
(defvar ansi-term-after-hook nil)
(add-hook 'ansi-term-after-hook
'(lambda ()
(define-key term-raw-map (kbd "C-t") 'new-ansi-term)))
(defadvice ansi-term (after ansi-term-after-advice (org))
(run-hooks 'ansi-term-after-hook))
(ad-activate 'ansi-term)
Если затем вы также связываете новый-ansi-термин с Ct обычным способом, вы обнаружите, что когда вы не смотрите на ANS-термин, Ct будет фокусировать буфер ANS-термина, а затем, если вы ищите анси-термин, Ct переименует его в какое-то уникальное имя, а затем откроет новый анси-термин для вас. Это очень хорошо работает в сочетании с панелью вкладок, которая покажет вам все ваши открытые анси-термины чуть выше первой строки буфера. Легко переключаться между ними; -)