Emacs (bufor wyświetlacza) w ramkach na bieżącym pulpicie

3

Podczas korzystania z polecenia emacs, które używa display-buffer(np. Po błędzie z trybu kompilacji, wywołania list-buffersitp.), Jeśli bufor jest otwarty w innej ramce, nie otwiera się w oknie w bieżącej ramce, nawet jeśli ramka jest nie na bieżącym pulpicie (dla kontekstu, zwykle używam dwóch ramek emacs, jedna widoczna na wszystkich komputerach, a jedna tylko na jednym destopie).

Widzę w dokumentacji display-buffer, że wymaga opcjonalnego argumentu FRAMEi wydaje się, że wartość visiblezrobiłaby to, co chcę, ale ponieważ nie dzwonię display-bufferbezpośrednio, nie jestem pewien, jak ustawić ten argument. Jakieś pomysły?

brjaga
źródło
Naprawdę nie jest to odpowiedź, ponieważ moje próby zrobienia tego nie przyniosły rezultatu, ale ogólnie myślę, że chciałbyś doradzić (display-buffer)i zmienić swoje argumenty tak, aby jedynym specyfikatorem ramki była wartość (current-frame); zmiana argumentu RAMKI myślę jednak, że nie wystarczy, aby uzyskać pożądany efekt, ponieważ argument AKCJA bierze listę, której cdrs członków są listami, w których można określić listę ramek do wyboru - zhakowałem ją jakiś czas, ale bez powodzenia, więc wszystko, co mogę powiedzieć, to „powodzenia!”
Aaron Miller,

Odpowiedzi:

0

W przypadku starszych wersji Emacsa możesz wypróbować opcję dostosowywania display-buffer-reuse-frames.

W przypadku najnowszych wydań Emacsa, tj. Jeśli C-h v display-buffer-alistpokazuje, że istnieje, możesz spróbować dostosować tę (dość złożoną) zmienną.

Drew
źródło