Di emacs, lebih sering daripada yang saya suka, saya berakhir dengan 4 jendela atau lebih.
Saya akan menggunakan contoh itu:
+--------|-----------+
| | |
| 1 | 2 |
| | |
+--------+-----------+
| 3 | 4 |
| +-----------+
| | 5 |
+--------+-----------+
Banyak fungsi yang dapat melakukan aksi other-window
(biasanya jendela yang sama ditunjukkan oleh C-x o
). Bermanfaat secara khusus scroll-other-window
. Namun, ketika 4 atau lebih windows dibuka, other window
tidak mungkin menjadi yang saya inginkan.
Apakah ada cara mudah untuk mengatur agar tidak other-window
mengubah tata letak jendela / buffer? Tentu saja, itu bisa dilakukan menggunakan banyak C-x 4 b
dan C-b
tetapi saya tidak ingin mengubah tata letak. Sebagai contoh:
- jika mengedit di jendela 4 pada gambar di atas, apakah ada cara mudah untuk mengatur
C-M-v
untuk menggulir jendela 1 ? - Atau sederhananya, misalkan fokus pada pada jendela 3 , bagaimana mengatur
other-window
untuk menunjuk ke jendela 2 ?
M-1 M-2 ..
memilih jendela nomor 1, 2 menggunakanwindow-number
paketDari ulasan singkat tentang sumbernya
other-window
sepertinya itu tergantung pada jendela yang dikembalikan olehnext-window
, yang didefinisikan dalam c. Sayangnyascroll-other-window
juga didefinisikan dalam c, dan mungkin panggilan next-window dari sana. Saya pikir tidak mudah untuk menimpanya.Namun,
switch-to-buffer-other-window
tampaknya digunakanpop-to-buffer
, sehingga Anda mungkin beruntung di sana.sumber
Tidak ada cara mudah untuk memanipulasi daftar jendela, sehingga hasilnya dikembalikan oleh
other-window
lebih atau kurang diperbaiki. Ini bukan hal yang buruk, karena memungkinkan konsistensi ketika menavigasi windows. Mengenai dua skenario yang Anda gambarkan, dengan beberapa elisp atau makro Anda dapat menyesuaikan alur kerja Anda.Anda dapat menggunakan potongan sederhana seperti di bawah ini untuk menggunakan
other-window
jumlah waktu yang tepat, gulir ke bawah dan kembali ke jendela asli.Anda bisa memberikan argumen awalan untuk menentukan jendela mana yang akan digulir. Seperti yang dapat Anda simpulkan, ia menggunakan mekanisme inbuilt
other-window
untuk melompatiarg
jumlah jendela sebelum menggulir. Thesave-selected-window
Memastikan fokus akan kembali ke jendela asli. Dokumentasiother-window
dapat memberikan informasi lebih lanjut tentang memodifikasi cuplikan ini agar sesuai dengan perilaku Anda.Sekali lagi gunakan
prefix-arg
seperti padaC-3 C-x o
saat memanggilother-window
. Jumlah aktual untuk memberikan akan bervariasi tergantung pada urutan mana Anda membaginya, dan tidak akan berubah selama Anda tidak membuat jendela baru. Sebagai alternatif, Anda dapat menggunakan paket kenyamanan sepertiwindow-number
atauace-window
dari MELPA untuk beralih jendela yang dipilih dengan cepat.sumber
<f7> n
untuk menggulir jendela ke-n. Buat binding satu kunci sementara dengan makro keyboard.