Pertanyaan Menggunakan Vim / Gvim dengan beberapa jendela GUI


Apakah mungkin untuk memiliki 2 atau lebih (G) vim windows untuk sesi yang sama, atau setidaknya berbagi beberapa buffer. Di sini, "window" mengacu pada jendela Gnome (atau KDE, atau Windows dll.), Bukan jendela VIM.

Saya menggunakan dua monitor dengan xinerama dan ingin membuka dua jendela GUI terpisah daripada memiliki satu yang besar yang membentang beberapa layar.


24
2018-01-18 13:21


asal


sudahkah Anda mencoba: sp <filename> atau: vsp <filename>? Ini adalah perintah pemecahan jendela vim dan mereka hebat. Berikut beberapa dokumentasi - Tom Stephens
@Tom Stephens: dan itu membantu .. bagaimana caranya? OP ingin memposisikan vim-windows dari ONE vim instance di monitornya. OP tidak ingin satu contoh vim menyebar ke semua monitor. - akira
Ini penting; editor seharusnya tidak benar-benar melakukan manajemen jendela itu sendiri. - Sam Watkins


Jawaban:


Saat ini gVim tidak dapat memiliki jendela 'toplevel' terpisah untuk proses / sesi yang sama. Ada TODO item untuk mengimplementasikan sistem komunikasi antar-proses antara beberapa contoh Vim untuk membuatnya berperilaku seolah-olah proses yang terpisah disatukan. (Lihat :help todo dan cari "top-level".)


18
2018-01-18 18:53



7 tahun kemudian, Vim8, ini masih dalam daftar agenda. - Al.G.
Donasi untuk amal Vim dan dapatkan suara, lalu pilih fitur: vim.org/sponsor/index.php - Heptite


Lihatlah layar GNU yang digunakan bersama dengan Vim.

Jendela pertama, mulai layar gnu dan vim

xterm
screen -S edit
vim

Jendela kedua, hubungkan ke sesi layar:

xterm
screen -x edit

Sangat berguna di atas desktop xinerama besar, beberapa layar virtual, atau sesi VNC. Satu sesi Vim, dengan banyak tab, adalah semua yang Anda butuhkan.

- Tom


3
2017-12-11 02:31



Poin untuk tutorial cepat dan singkat, meskipun saya akan menyebut ini hanya sedikit berguna, karena saya tidak dapat mengedit buffer yang berbeda dari sesi yang sama dengan cara ini. - Atilla Filiz
menariknya ini adalah titik di mana layar menang di atas tmux, - di tmux menempel ke sesi yang sama dari klien yang berbeda berarti Anda hanya melihat hal-hal yang dicerminkan di kedua instance ... Saya mempertimbangkan beberapa kombinasi tidak suci dari keduanya tetapi belum cukup tahu apa yang ingin saya lakukan! - Jonny Leeds


Sudah lama sejak Anda mengajukan pertanyaan Anda dan banyak hal telah membaik. Nvidia memiliki dukungan driver yang jauh lebih baik untuk banyak monitor di Linux.
Saya sekarang sudah berhenti menggunakan Gvim sejak saya pindah ke KDE: Sekarang saya menggunakan vim-qt. Ini memungkinkan Anda untuk membuka beberapa contoh, jika Anda tidak ingin menggunakan vim di terminal.

edit: My setup


2
2017-11-12 10:06



Saya mencoba sekarang, bagaimana cara menggunakan beberapa contoh ini? Terlihat seperti gvim biasa dengan wajah yang sedikit berbeda dengan saya. - Atilla Filiz
Anda dapat memulai dua contoh vim-qt sehingga Anda dapat memiliki satu jendela untuk masing-masing layar dan alt-tab antara mereka, atau menetapkan hotkey ke setiap jendela. Vim-qt ditulis untuk qt, jadi lingkungan desktop berbasis qt seperti KDE dapat memanfaatkan windows lebih baik. Itu berarti Anda harus memiliki beberapa jendela grafis yang berbeda terbuka dan bahwa jendela vim grafis Anda dapat menjadi layar penuh. Yang tidak mungkin dengan gvim biasa. - jollyroger
Terima kasih telah meluangkan waktu tetapi ini bukan yang saya inginkan. Saya ingin mengakses buffer yang sama dari dua jendela GUI yang terpisah. Dan ini tidak mungkin karena pembagian buffer masih dalam daftar tugas vim (lihat jawaban yang diterima). - Atilla Filiz


Anda dapat memiliki banyak vi (m) sesi yang Anda inginkan dengan menggunakan jendela terminal terpisah untuk masing-masing.

Seperti tidak memiliki mereka span di, saya berasumsi Anda menempatkan mereka ke layar penuh dan kemudian memperluas kedua monitor saat diatur untuk memperpanjang desktop. Jangan memaksimalkannya dan secara manual menyesuaikan ukuran jendela terminal atau gvim.

Jika saya kehilangan tanda coba, cobalah untuk menguraikan lebih lanjut.

Apa yang Anda maksud dengan jendela vim?

edit: Here's a pic of my screen with 4 vim instances running

Semoga Heptite memukulnya, karena aku agak kalah dengan yang satu ini.


1
2018-01-18 14:17



Itulah yang saya lakukan sekarang, secara manual mengubah ukuran mereka untuk menjangkau dua monitor dan kemudian: vsplit tetapi terlihat jelek dan kadang-kadang saya ingin melihat beberapa buffer pada desktop virtual yang berbeda, atau menutup satu monitor dengan yang lain. Yang saya inginkan adalah menggunakan dua terminal differnet dan masih mengakses buffer yang sama dari keduanya. - Atilla Filiz
Saya mengerti sekarang. Senang melihat Heptite menjawabnya untuk Anda. - Dan M.