Im vorherigen Post ging es darum, wie man Emacs zur Entwicklung mit Clojure einrichtet, wobei der Emacs minor-mode CIDER installiert wurde. CIDER erlaubt einem die Nutzung einer Clojure-REPL in Emacs. Bei fehlerhaften Eingaben zeigt CIDER einen Stacktrace in einem Buffer namens *cider-error* an. Standardmäßig blendet CIDER den Buffer in einem zweiten Window ein und selektiert diesen. Der Fokus liegt somit nicht mehr auf der REPL. Insbesondere wenn man Clojure lernt, passieren Eingabefehler in der REPL häufig, wobei der Stacktrace eher uninteressant ist. Der Fokuswechsel ist hier eher störend. Hat man bereits zwei Windows in Emacs geöffnet, wird der Buffer im zweiten Window durch den CIDER-Error-Buffer ersetzt, was die Sache nicht angenehmer macht. Das Verhalten lässt sich jedoch leicht durch eine Anpassung der Datei ~/.emacs ändern.

Möchte man lediglich die Selektion des Error-Buffers unterbinden, diesen aber trotzdem einblenden lassen, fügt man die folgende Zeile hinzu:

(setq cider-auto-select-error-buffer nil)

Der Fokus bleibt dann weiterhin auf dem Window mit der REPL.

Möchte man hingegen den Error-Buffer gar nicht einblenden lassen, so gibt man die folgende Zeile ein:

(setq cider-show-error-buffer 'except-in-repl)

Anzumerken ist, dass bei der zweiten Lösung, trotzdem der Error-Buffer erzeugt und auch aktualisert wird. Der Nutzer hat also weiterhin die Möglichkeit sich den Stacktrace anzeigen zu lassen, indem er den Error-Buffer explizit auswählt.

Näheres zu den hier verwendeten sowie weiteren Einstellungen für den Error-Buffer lassen sich in der Dokumentation von CIDER nachlesen.