Ich benutze den folgenden Code, um Ansi-Term zu öffnen. Ich habe dieses here gefunden.Emacs und Ansi-Term: Elisp durchlaufen eine Liste von Puffern
(require 'term)
(defun visit-ansi-term()
"If the current buffer is:
1) a running ansi-term named *ansi-term*, rename it.
2) a stopped ansi-term, kill it and create a new one.
3) a non ansi-term, go to an already running ansi-term
or start a new one while killing a defunt one"
(interactive)
(let ((is-term (string= "term-mode" major-mode))
(is-running (term-check-proc (buffer-name)))
(term-cmd "/usr/local/bin/bash")
(anon-term (get-buffer "*ansi-term*")))
(if is-term
(if is-running
(if (string= "*ansi-term*" (buffer-name))
(call-interactively 'rename-buffer)
(if anon-term
(switch-to-buffer "*ansi-term*")
(ansi-term term-cmd)))
(kill-buffer (buffer-name))
(ansi-term term-cmd))
(if anon-term
(if (term-check-proc "*ansi-term*")
(switch-to-buffer "*ansi-term*")
(kill-buffer "*ansi-term*")
(ansi-term term-cmd))
(ansi-term term-cmd)))))
(global-set-key (kbd "<f2>") 'visit-ansi-term)
Jetzt mag ich dies ändern, so dass nach einem Puffer es erinnert seinen Namen umbenennen und wenn ich eine Tastenkombination über die umbenannte Puffer Liste iterieren.
also, wenn ich [F2] drücke und es findet, dass ansi-term läuft, fragt es mich, ob ich es umbenennen möchte. Ich benenne es um, um zu sagen, BUILD. Ich hätte gerne eine Funktion und binde an Say [F3], um die Liste der geöffneten Ansi-Begriffe zu durchlaufen.
Ich bin ein ELISP Analphabet. Ich wäre froh, wenn jemand darauf hingewiesen hätte, was mir dabei helfen könnte.
Danke.
@Tery Jackson: Danke, genau das, was ich suchte. – asp5
@Tery Jackson: Hallo, Als ich das erste Mal versuchte, habe ich es mit nur 2 Begriffen versucht, was gut funktioniert ... aber mit mehreren Begriffen wie diesem:. * ein weiterer 20 Begriff: char run * andere 20 Begriff: char run * einige 19 Begriff: char führen diese Schleifen nur 2 der kürzlich geöffneten Puffer ... Wie entferne ich diese Einschränkung? Vielen Dank. – asp5
@ asp5 Fixed .... –