Apa fitur tambahan yang ditawarkan gVim dan / atau MacVim dibandingkan dengan Vim di dalam emulator terminal?

23

Saya belajar Vim dengan menonton screencasts. Dan saya bertanya-tanya, mengapa banyak orang menggunakan gVim atau MacVim?

Dari apa yang saya lihat, versi GUI Vim hanya memiliki fitur tambahan yang melibatkan penggunaan mouse. Tetapi bukankah ini bertentangan dengan "filsafat Vim"?

Adakah yang bisa menjelaskan fitur tambahan apa yang ditawarkan versi GUI Vim versus Vim berbasis terminal?

Aaron Shen
sumber
Gui vim memungkinkan lebih dari 256 warna, serta pemformatan teks lainnya, sehingga mungkin menjadi draw. Saya pribadi tidak dapat melihat mengapa orang lebih suka gui vim, karena saya menemukan terminal vim lebih nyaman. Tapi itu menurut saya.
EvergreenTree

Jawaban:

27

Beberapa fitur yang hanya akan berfungsi dengan gVim:

  • Dukungan warna 24-bit di luar kotak (untuk mendapatkan jumlah warna yang sama dalam terminal vim, Anda harus mencoba sedikit lebih keras, lihat ini dan ini ). Untuk huruf miring benar, hal yang sama juga berlaku (lihat ini dan ini ). Perhatikan bahwa Anda harus menggunakan font yang mendukung huruf miring asli.
  • Beberapa fitur grafis yang lebih canggih, seperti "garis goyah" untuk pemeriksaan ejaan, bentuk kursor yang lebih fleksibel, dll. Terminal hanya dapat melakukan "blok karakter monospasi".
  • Mengaktifkan dukungan mouse , jika tidak dibiarkan sendiri (termasuk drag-and-drop untuk file). Terminal Vim juga dapat menangani mouse dengan cukup baik, tetapi tidak drag-and-drop.
  • Menawarkan sistem menu yang bagus dan dapat disesuaikan , di mana setiap opsi memiliki perintah Vim yang sesuai terdaftar.
  • gVim dapat menawarkan Anda scrollbar yang menggulir buffer Vim (dan bukan scrollback Terminal).
  • Anda dapat memiliki "balon" sembul (alias. "Tooltips").
  • Memiliki dukungan font terintegrasi .
  • Beberapa keybindings bekerja di luar kotak dengan gVim seperti CTRL+ Space, Meta+ e... sementara mereka membutuhkan lebih banyak penyesuaian terminal dalam kasus lain.

Kedua, bahkan jika Anda lebih suka menggunakan Vim, menginstal versi GUI dapat menawarkan lebih banyak fitur waktu kompilasi daripada versi tanpa, setidaknya di beberapa distro (seperti clipboarddan clientserverdukungan pada sistem berbasis Debian di vim-noxvs vim-gnome).

Juga, di bawah Windows, jendela gVim dapat diubah ukurannya lebih mudah daripada jendela konsol Vim.

Hal- hal yang tidak dilakukan gVim :

  • gVim bukan emulator terminal (penuh), jadi memulai program eksternal yang menggunakan banyak fitur terminal tidak akan bekerja dengan baik. Misalnya, coba gunakan :!vim,, :!muttatau :!irssidari gVim, atau menekan Ksatu kata (yang, secara default, membuka halaman manual untuk kata itu). Lihat juga ini .
muru
sumber
1
Vm biasa juga lebih nyaman jika Anda akan sering menggunakan SSH, karena dapat diletakkan di bawah tmux atau layar dan tidak memerlukan dukungan X11 di kedua ujungnya.
Kevin
sebenarnya, gvim memiliki terminal yang disertakan sejak salah satu dari 8.0 patch selanjutnya. Jadi Anda dapat memulai terminal dan harus dapat menjalankan program interaktif di dalamnya.
Christian Brabandt
1
Menu tentu saja lebih bagus dan lebih terintegrasi dalam GUI vim, tetapi mereka memang ada dan dapat digunakan dalam konsol vim. Seseorang harus sumber menu.vimdan kemudian kemungkinan menggunakan set wildmenudan :emenu <Tab>menavigasi dengan cara yang menyerupai ... well, menu.
brhfl
@ brhfl saya akan mengatakan "nyaris tidak dapat digunakan".
muru
@ChristianBrabandt komunitas wiki! Silakan edit di. :)
muru
4

Saya hanya bisa berbicara tentang gVim. Selain perbedaan mendasar, saya menemukan bahwa menggunakan gVim banyak membantu saya di awal untuk mempelajari perintah dasar (misalnya satu cara menyalin teks yang dipilih ke clipboard dengan "+ y) dengan membaca setiap pintasan yang ditampilkan pada menu. Mungkin saja terdengar konyol, tetapi Anda benar-benar harus meluangkan waktu melintasi menu dan tidak hanya mengklik item, tetapi untuk benar-benar menguji jalan pintas yang ditunjukkannya.

Javier Scappini
sumber
4

Sebagian dari kita terjebak di tanah Windows, sehingga opsi terminal kurang nyaman.

Di Windows Explorer Anda dapat mengklik kanan file dan langsung membukanya dengan gVim. Itu jauh lebih mudah dan lebih cepat daripada membuka terminal (cygwin atau apa pun), menavigasi ke direktori, dan vimming file.

(Pada PC pekerjaan saya, bash gVim dan MinGW menutupi sebagian besar kebutuhan pengeditan saya)

roblogic
sumber
Ini juga berfungsi untuk dunia Linux. Jika Anda ingin membuka file dalam vim langsung dari nautilus, gvim tersedia sementara vim tidak.
kuldeep.kamboj
@ kuldeep.kamboj Ini hanyalah masalah mengkonfigurasi Nautilis; Anda dapat menggunakan xterm -e vim %atau semacamnya ...
Martin Tournoij
1
Itulah mengapa saya telah gVimmenginstal. Font terminal Windows membuat mata Anda berdarah.
Shahbaz
1

Untuk menambahkan hal yang sepele: Saat menggunakan gvim, daftar jendela Desktop saya menunjukkan simbol Vim yang bagus daripada simbol Xterm, yang membuatnya lebih mudah untuk beralih ke editor jika banyak xterms terbuka.

PhilippFrank
sumber
2
Anda dapat mengubah ikon jendela dengan xseticon:-)
Martin Tournoij
1

Satu poin penting bagi saya yang terus membuat saya menggunakan ayat MacVim hanya terminal + vi adalah kecepatan. Saya memiliki semua jenis plugin vim dan petunjuk bahasa dan checker sintaks yang secara mengejutkan menutup terminal vi, sementara bin yang dikompilasi dari MacVim menangani semua gula sintaksis dengan baik.

Dan Shumaker
sumber
0

Mengubah bentuk kursor tergantung pada mode (mis. Normal vs Sisipkan) berfungsi sangat baik dengan gVim. Ini seharusnya bekerja ketika menggunakan vim dalam program terminal seperti Konsole, tetapi saya belum pernah melihatnya bekerja.

John Schmitt
sumber
Saya tidak cenderung menggunakan emulator terminal yang sangat bagus di Linux, tetapi saya dapat mengonfirmasi bahwa itu bekerja dengan sangat baik di mintty / cygwin dan iTerm2 di Mac.
brhfl