switch-buffer transformer breaks ivy-switch-view
bymoz089 opened this issue · 2 comments
With ivy
it is possible to store the current window layout, by using ivy-push-view
.
After you have done that, it is possible to switch to previous stored layouts with ivy-switch-buffer
.
Since the stored window layout has no real buffer associated, it is not possible to use constructs like (with-current-buffer (get-buffer candidate) ...
. Those constructs will fail with an error message.
This means all with-current-buffer
calls need to be guarded and only be used, when the name of the buffer points to a valid buffer.
Hi, are you using the default value of ivy-rich-display-transformers-list
? There's :predicate (lambda (cand) (get-buffer cand))
of the default value, which should ignore window layout candidates. I tested on my emacs, and everything seems fine. Can you provide some reproduce steps?
Thanks for the hint, and please excuse the false bug report..
I copied the ivy-swith-buffer
transformer a long time ago to make adjustments to :width
. It seems I missed the :predicate
update later on.