Ubuntu'daki metin editörleri arasındaki karşılaştırma: Vim vs. Emacs vs. Nano [kapalı]


Yanıtlar:


54

Nano, kullanımı ve öğrenmesi en kolay olanıdır. Birçok insan Vim ve Emacs'a yemin edecek ama Nano çok iyi bir metin editörü. Nano bir yapılandırma dosyasını düzenlemek için iyidir, ancak programlayacaksanız Vim veya Emacs kullanarak daha iyi olursunuz. Nano vurgulamayı destekler. Ancak bu çok özneldir.

Bir sebepten dolayı herkes en sevdiği editörlere sahip olacak. En sevdiğin birini bul ve kullan.


18
"Kullanımı kolay" ve "öğrenmesi kolay" arasında önemli bir fark vardır. Genel olarak, Vim ve Emacs gibi güçlü editörler, onları nasıl kullanacağınızı öğrendikten sonra, daha basit bir editörden daha kolaydır. Dolayısıyla bu, yatırımın geri dönüşü meselesidir. Daha güçlü bir editör öğrenmeye yatırım yapma zamanını haklı çıkarmak için yeterli miktarda metin düzenleme yapacak mısınız?
Jeromy Anglim

1
micro-editor.github.io kullanıcı dostu için daha iyi bir alternatif olabilir. Sadece Ubuntu için paketlenmiş olsaydı ..
anatoly techtonik

57

Vim'i seviyorum. Her yönden çok güçlü ve etkili ve mükemmel. Ancak, çoğu zaman sadece gedit kullanıyorum, çünkü Vim kadar güçlü ve etkili değilim.


5
Eğer gedit daha "güçlü ve etkili" iseniz nasıl vim "her şekilde mükemmel" diyebilirsiniz?
Bala Clark

39
Kendi kişisel zayıf yönlerim Vim'in mükemmelliğini hiçbir şekilde azaltmıyor.
DLH

30
Üzümlü gazozun tatlılığını tercih eden biri tarafından tattığında iyi bir şarap daha az iyi midir?
DLH

11
2001: Bir Uzay Odyssey Transformers'ın hızlı bir şekilde ilerlemesini tercih eden biri tarafından izlenirse daha az sanatsal bir şaheser midir?
DLH

7
Siz bay / bayan, günümü gün yaptım!
Paul Hänsch

18

Vim, gömülü aygıtlarınız dahil, neredeyse tüm Linux sistemlerinde bulunabilir. Aynı zamanda çok güçlüdür (nasıl kullanılacağını öğrendikten sonra).


Vim'in bir başka avantajı da taşınabilir olmasıdır.
pablofiumara

17

Basit cevap ...

Nano basit bir metin editörüdür.

Emacs programlama özelliklerine sahip tam teşekküllü bir metin editörüdür. Bu, öğrenmesi genellikle daha kolaydır ancak yine de kafa karıştırıcıdır. Bunun nedeni, gelişmiş özelliklerin crtl + e (satır sonuna kadar) gibi tuş kombinasyonları olmasıdır.

Vim Emacs gibidir, sadece çok farklı bir girdi biçimi kullanır. Vim, her bir tuşun farklı bir modda farklı bir şey anlamına geldiği anlamlıdır.

Temel olarak, Nano normal kullanıcılar içindir. Emacs ve Vim programcılar içindir. Seçimini yap (Bu yazı lol için Vim vs Emacs tarafını almıyorum)


Özetle!
andol

5
+1, ancak, "Emacs ve Vim programcılar içindir" ?? LaTeX belgeleri yazmak için her zaman emacs kullanıyorum.
steabert

1
@steabert Sure, Emacs ve Vim, LaTex gibi diğer durumlar için kullanışlıdır. Ancak, andol'un düşüncesi ölmekte: vim ve emac'lerin gücü, "düzenli ifade arama ve değiştirme" veya kişiselleştirilmiş işlevlerin / makroların faydalı olduğu durumlarda, bunları tekrar tekrar kullanmaktan geliyor. Örneğin, bir kitap editörü göremiyorum, örneğin "devasa" nın tüm oluşumlarını "titanik" ile değiştiriyor.
Mike Williamson,

3
LaTeX'i belge üretmek için yazarsanız, aslında hala bir programcısınız, Sadece genel olarak algılanan bir şekilde değilsiniz.
thenaglecode

13

Kullanılması gereken bir diğer iyi şey de Ubuntu paket yöneticisinde veya geany.org'da bulunan Geany'dir. Gerçekten iyi özelliklere sahip ve yerleşik terminal penceresi gerçekten çok hoş. Çoğu programlama projesi için kullanıyorum. Ben de VIM kullanıyorum, çoğunlukla sunucuya girdiğimde. Yerleşik Gedit hızlı düzenlemeler ve yapılandırma dosyaları için kullanışlıdır.


1
Bu kesinlikle benim favori kodum / metin editörüm. Neredeyse bütün programlarım için kullanıyorum.
Tommy Brunn

1
+1 Çok doğru olmak için. Geany, birçok dosya üzerinde çalışırken kod için bulduğum en iyi editör. VIM'de aynı işlevselliği elde edebileceğinizi biliyorum, ancak Geany kadar gezinmek kolay değil. Her şey için VIM kullanıyorum.
Richard Holloway

10

Gedit öneririm. Programlama kodu için HTML / CSS'den PHP'ye kadar her şeyi okumasını ve düzenlemesini kolaylaştıran renk kodlaması vardır. Emacs bunu yapabilir, ancak nasıl kurulacağını ve kullanılacağını öğrenmek biraz çaba harcar. Gedit, ilk denemenizde hiçbir dokümantasyon gerekmeden kullanılabilir.


1
Şimdi oldukça karmaşık projeleri kodlamak için Gedit kullanıyorum. Başlangıçta basittir, ancak işlevsellik eklemenize izin veren birçok eklentiye sahiptir. Örnek olarak bir proje tarayıcısına sahip bir sol panele, Dosyalarda Bul yardımcı programına ve bir python sözdizimi analizcisine sahibim. Sağ panelde bir sınıf tarayıcım ve belgelerim var. Metin alanında 3 kelime tamamlama sistemine (snippet'ler dahil) ve bir grup yardımcıya (yorum / yorum blokları gibi) sahibim. Peki, fikri anladın. Oldukça karmaşık bir editör olarak büyüyebilir.
Javier Rivera

1
BTW: Bu yazının bir "comunnity wiki" olduğunu fark ettim. Yorum yapmak yerine orijinal cevabı değiştirmeli miyim?
Javier Rivera

@Javier Sınıf tarayıcınız için ne kullanıyorsunuz? Henüz kurulumu basit bir eklenti bulamadım.
Bala Clark

@Bala: Class Browser 0.3, depolarda gedit-class-browser olarak bulabilirsiniz.
Javier Rivera

8

Bunun "erkekçe" bir terminal metin editörü olmadığını biliyorum, fakat gedit güzel. Gedit görünümleri yapabilir ve biraz TextMate gibi hissedebilirsiniz. Bu makale biraz eski ama yine de size temel fikir verecek ... http://rubymm.blogspot.com/2007/08/make-gedit-behave-roughly-like-textmate.html


Ben başka bir serseri hayranıyım. Hafif, çok sayıda faydalı uzantıya sahip ve ayrıca şu anda ve Mac & Windows için kullanılabilen çapraz platformdur.
Bala Clark

Depodan eklentiler ekleyerek ve bunları etkinleştirerek, gedit gerçekten çok güçlü bir editör olur.
apoorv020

6

Gedit basit ve hafiftir, evet, ancak Geany'ye göre gerçek bir avantajı var mı? Kod katlama vb. Geany'nin sıradan yerleşik özelliklerini yakalamak için bir sürü eklenti kurmanız gerekiyor.

Geany eklentileri, sürüm kontrolü entegrasyonu, isteğe bağlı ve müdahaleci olmayan proje yönetimi, işlev tanımları ve bildirimleri arasında vb. Atlama gibi ekstralar sunacaktır. varsayılanlar da oldukça iyi. Gedit bir Python yorumlayıcısını paketleyebilir, ancak Geany tüm sanal bir terminali bir araya getirir.

Geany Ubuntu ile gelmiyor, ancak depolardan temin edilebiliyor, küçük (10 MB) + hızlı ve tam güçlü IDE'lerle rekabet edebilecek kadar özellik sunuyor; daha az çan ve ıslık, ancak gerçek metin düzenleme için daha iyi destek.


5

Vim'in öğrenmesi zaman alır, ancak zamanınız ne kadar olursa olsun (sadece ne zaman vurulacak anahtar değil, aynı zamanda metne bu şekilde bakmaya alışmak), nasıl yazacağınızı durdurabilirsiniz ve gerçekten odaklanabilirsiniz. üzerinde neyi yazın. Normal metin editörlerinin kullanması çok zor olacak kadar doğal hale gelir.

gvimÖğrenmeye başlamadan önce beğendiğiniz bir tema kullanın ve seçin, onu daha keyifli bir deneyim haline getirebilir. Sonunda kendinizi e-postalarınızı vim içinde oluştururken bulacaksınız!

(On parmak dokunuşlu yazarak vim öğrenmeyi çok daha kolay hale getirir, böylece gtypistdokunmadan önce zaten rahat değilseniz, vim denemeden önce bir veya iki saat harcamak isteyebilirsiniz )


2
Renk temasını kastediyorsanız, yeni başlayanlara iki tane seçmenizi öneririm: biri normal mod için ve diğeri de ekleme modu için. Bunlardan hangisinin içinde olduğunuzu kolayca söyleyebilmenizi sağlar. Bu, örneğin, autocmd InsertEnter * colorscheme <scheme-name>ve autocomand InsertLeave * colorscheme <scheme-name>.
frabjous

Çoğu programcı bir IDE kullanır. vi veya emacs veya nano genellikle uzak dosyaları terminal penceresinde açmak için kullanılır. GEdit - Ctrl + S içerisindeki bir dosyayı kaydetme vi - Esc, Colon, w dizininde bir dosyayı kaydedin. Şimdi hangisi daha hızlı? Ve ben 60wpm ile bir dokunmatik daktilo duyuyorum.
RuntimeException 20:16

4

Emacs oldukça iyi. Sözdizimi vurgulama ve uzantıları destekler

ve gömülü Lisp (elisp) lehçesiyle genişletilebilir. Ayrıca birçok istatistiksel program için modlar, tex için destek, takvim, mail okuma araçları, tetris ve hatta bir psikiyatr var. Emacs (veya Vim, ancak istatistikler için daha az iyidir) hem çapraz platform olduğundan hem de dünyadaki hemen hemen her programlama dilini desteklediğinden öğrenmeye değerdir.


2

Vim'i severim çünkü kodlamanın bir video oyunu gibi görünmesini sağlar. Öğrenme eğrisine değer. Neden daha fazla uygulama vim gibi davranmıyor?

Firefox için vimperator eklentisini deneyin .


4
:) krom için vimperator veya vimium için 1
ters

1
Ayrıca vimperator'dan ayrılan pentadactyl eklentisini deneyebilirsiniz.
apoorv020

1

Nano ve Emacs hakkında hiçbir şey bilmiyorum, ancak Vim'i neredeyse hiç durmadan yapılandırabilir ve genişletebilirsiniz ve çoğu platformda kullanılabilir. Olumsuz tarafı, daha dik bir öğrenme eğrisine sahip bir texteditor düşünemiyorum.

Oh, Ubuntu'nun varsayılan metin editörü Gedit'i de unutma. Dahili bir çok özelliği vardır ve eklentiler aracılığıyla genişletilebilir (deneyin sudo apt-get install gedit-plugins)


1

Geddit'i birleşik tercihler ve eklentilerle kullanıyorum. Yeni bir makinede, ilk iki tercih sekmesindeki tüm kutuları işaretliyorum, sekmeleri 4 boşluk kullanacak şekilde ayarlayın.

Snippet eklentisini bir rocker olarak buldum. Size vi veya emacs'in bütün gücünü vermez, ancak neredeyse var ve gnome'daki diğer herhangi bir uygulama ile aynı tuş takımlarını kullanıyor, en azından IMO daha "anlaşılabilir".



1

Tercihim gEdit. TextMate seviyesine yükselmek istiyorsanız, bunu şu şekilde yapabilirsiniz:

sudo apt-get install gedit gedit-plugins
cd ~/Downloads
git clone http://github.com/gmate/gmate.git
cd gmate
sh ./install.sh

Oh ve ihtiyacınız olan harika özellikleri etkinleştirmek için eklentileri kontrol edin.


1

Yazdığım diller için nano'yu tam bir kişiselleştirme yüküyle kullanıyorum. İstediğim kadar çok özelliğe sahip basit bir UI alıyorum.


2
Lütfen bu özelleştirmeleri nasıl ve nerede bulduğunuzu açıklamayı düşünün. Nasıl kurulacağına dair talimatları dahil et. Ayrıca nano'nun kullanımıyla ilgili genel talimatlar da faydalı olacaktır. OP'nin bu yazılıma aşina olmadığını ve diğer okuyucuların da olmayabilir.
Anthony,

1

Ben hepsinden kaçmayı tercih ederim .

Kuşkusuz vim denemek için hiç zaman harcamamıştım ama diğer ikisi ile uğraşmam

Gedit hafiftir, ancak sekmeli sayfaları vurgulayan sözdizimi vurgulama ve sözcük / ayraç tamamlama gibi istediğiniz tüm kullanışlı özelliklere sahiptir.

İşte kendi sitelerinden bazı ekran görüntüleri:

geditScreenshot

Emacs kullanmak gerçekten korkunç buluyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.