स्विच खिड़की विभाजन अभिविन्यास, सबसे तेज़ तरीका है


16

कहते हैं कि आपके पास दो बफ़र्स खुले हैं जैसे:

------------------------------------
            |                      |
  buffer 1  |        buffer 2      |       
            |                      |
------------------------------------

बफ़र्स को स्विच करने का सबसे तेज़ तरीका क्या है ताकि आपको यह मिल जाए:

------------------------------------
           buffer 1                |
                                   |
------------------------------------
            buffer 2               |
                                   |
------------------------------------

stackoverflow.com/a/10546694 । ट्रांज़ोज़-फ़्रेम लाइब्रेरी। अस्वीकरण - यह कोशिश नहीं की है।
फहीम मीठा

इस विषय पर एक विकी पेज है: emacswiki.org/emacs/ToggleWindowSplit
क्रिस मार्टिन

Emacs.stackexchange.com/q/5371 देखें ; transpose-frameMELPA पर विशेष रूप से एक उत्तर का उल्लेख है।
टीओटॉन

जवाबों:


15

यहाँ एक अवहेलना है कि तुम क्या देख रहे हो जाएगा:

(defun toggle-window-split ()
  (interactive)
  (if (= (count-windows) 2)
      (let* ((this-win-buffer (window-buffer))
             (next-win-buffer (window-buffer (next-window)))
             (this-win-edges (window-edges (selected-window)))
             (next-win-edges (window-edges (next-window)))
             (this-win-2nd (not (and (<= (car this-win-edges)
                                         (car next-win-edges))
                                     (<= (cadr this-win-edges)
                                         (cadr next-win-edges)))))
             (splitter
              (if (= (car this-win-edges)
                     (car (window-edges (next-window))))
                  'split-window-horizontally
                'split-window-vertically)))
        (delete-other-windows)
        (let ((first-win (selected-window)))
          (funcall splitter)
          (if this-win-2nd (other-window 1))
          (set-window-buffer (selected-window) this-win-buffer)
          (set-window-buffer (next-window) next-win-buffer)
          (select-window first-win)
          (if this-win-2nd (other-window 1))))))

(बेशर्मी से मैग्नेर्स .emacs.d से कॉपी )

इसके अलावा यदि आप इसे फिर से कहते हैं, तो यह आपकी खिड़कियों को मूल ऊर्ध्वाधर अभिविन्यास में फिर से विभाजित करेगा।


यह अच्छा होगा यदि यह दो खिड़कियों के सापेक्ष आकार के संबंध को संरक्षित कर सकता है। मैं अक्सर तल पर एक असमान "छोटी" खिड़की रखता हूं, और जब आगे और पीछे स्विच होता है, तो यह इस सापेक्ष आकार को संरक्षित करने में मददगार होगा। हालांकि एक संकीर्ण ऊर्ध्वाधर खिड़की शायद कम उपयोगी है।
b4hand 16

1
मैं आपको यह नहीं बता सकता कि मैं इसका कितनी बार उपयोग करता हूं। इतना मददगार।
एडगर अरौटियूनियन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.