次のシナリオを考えます -
端末エミュレータの
lein repl
( repl-y ) セッションから:(def reply-out *out*)
次に、Emacs のnrepl.elセッションから:
(def nrepl-out *out*)
両方の変数は、異なるターゲットで動作するため、異なる値になります。
しかし今、Emacs で実行すると:
(binding [*out* reply-out] (println :foo))
値は、必要に応じて/期待どおりに端末エミュレータではなく Emacs に出力されます。逆も通用しない。
あるreplから別のreplに値を出力する方法は?
更新: Llinux ボックスで Emacs 24 を使用し、xterm と gnome-terminal でテストしました。各オブジェクトのprintln
メソッドも使用してみました。PrintWriter