EMACS-vim Kullanıyor musunuz?

Başlatan freeman, 23 Kasım 2014 - 22:38:31

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

freeman

Birkaç aydır EMACS kullanıyorum. Daha doğrusu kullanmaya çalışıyorum. Fakat insanı gerçekten yoruyor. 15 yıl önceki, EMACS 'ın tüm özellikleri muhteşemmiş. Ama günümüzde? Özellikle yazılım geliştirirken, gerçekten kullanmak gerekli mi, bilemiyorum.
Mesela; kodu derlemek için M-x compile deyip, sonra gcc ile derlemek ve sonrasında M-x shell deyip programı çalıştırmak insanı cidden yoruyor. Ha derseniz ki ELisp ile bu işlemi otomatikleştir, ama bu da daha sonradan bazı sıkıntılara yol açıyor. Büyük bir kaosa doğru gidiyor şu an .emacs dosyam.


QtCreator, Eclipse, Netbeans, Intellij, PyCharm, Code::Block gibi IDE ler varken, EMACS 'ın ne faydası olabilir?
Sizlerin bu konudaki fikirlerini merak ediyorum. 


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 23 Kasım 2014 - 22:39:37


Hele bir de yeni bir eklenti yüklemek isterseniz, gerçekten sabırlı olmalı ve yapacak başka bir işinizin olmaması gerekiyor. :D
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

ulupınar

Alıntı yapılan: xFoxMulder - 23 Kasım 2014 - 22:38:31
Birkaç aydır EMACS kullanıyorum. Daha doğrusu kullanmaya çalışıyorum. Fakat insanı gerçekten yoruyor. 15 yıl önceki, EMACS 'ın tüm özellikleri muhteşemmiş. Ama günümüzde? Özellikle yazılım geliştirirken, gerçekten kullanmak gerekli mi, bilemiyorum.
Mesela; kodu derlemek için M-x compile deyip, sonra gcc ile derlemek ve sonrasında M-x shell deyip programı çalıştırmak insanı cidden yoruyor. Ha derseniz ki ELisp ile bu işlemi otomatikleştir, ama bu da daha sonradan bazı sıkıntılara yol açıyor. Büyük bir kaosa doğru gidiyor şu an .emacs dosyam.


QtCreator, Eclipse, Netbeans, Intellij, PyCharm, Code::Block gibi IDE ler varken, EMACS 'ın ne faydası olabilir?
Sizlerin bu konudaki fikirlerini merak ediyorum. 


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 23 Kasım 2014 - 22:39:37


Hele bir de yeni bir eklenti yüklemek isterseniz, gerçekten sabırlı olmalı ve yapacak başka bir işinizin olmaması gerekiyor. :D

Sanırım amaç terminal penceresinden ayrılmadan kod yazmak yani yazılım geliştirmek olunca bu bir zorunluluk oluyor.

freeman

#2
Peki neden terminalden ayrılmamamız gerektiğini düşünüyoruz?
IDE 'ler zaten herşeyi kendileri yapıyorlar.
(Sistem, çekirdek programlama için vim uygundur ama)


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 23 Kasım 2014 - 22:50:46

Şu an StackOverflow 'da ilgili başlıkları okuyorum. Millet EMACS/VIM çok güçlü kabul ediyor ama yine de IDE leri öneriyorlar. :D
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

tlg

Geliştirme ortamları zaman kaybını azaltma, otomatik kod tamamlama, otomatik kod oluşturma, kod yazarken basit hataları yakalayabilme, daha verimli çalışması için öneriler sunma, hata ayıklama yardımcıları gibi özellikleriyle avantaj sağlarlar. Bunlar önemli şeylerdir.
Ancak vim, emacs gibi geliştirme ortamlarına gelince bu gibi şeyleri elle yapmak zor gelebiliyor. Açıkcası ben vim tercih etmekteyim ve yeni yeni öğreniyorum, çünkü bunlarla uğraşmak ilgimi çekiyor. Tabi bu kişisel bir tercihtir.
Birde bu işi profesyonel açıdan düşünürsek IDE'ler önemli bir araca dönüşür. Özellikle büyük çaplı projelerde vim ile uğraşmak yerine daha gelişmiş programlar tercih edilebilir.

7hr33l3t73r

Kendim de sahsen severek vim kullanmaktayim ve yapilandirirsaniz vim gercekten guzel bir editor.
dc -e '[q]sa[ln0=aln256%Pln256/snlbx]sb207356256404211981204295703670388snlbxq'
https://www.getgnu.org/gnulinux/gnulinux-ipuclari/nasil-akillica-soru-sorulur.html

ulupınar

Alıntı yapılan: xFoxMulder - 23 Kasım 2014 - 22:46:16
Peki neden terminalden ayrılmamamız gerektiğini düşünüyoruz?
IDE 'ler zaten herşeyi kendileri yapıyorlar.
(Sistem, çekirdek programlama için vim uygundur ama)

Editörlerde çoğunlukla kopyala yapıştır türü işlemler yapıldığı için tavsiye edilmiyor sanırım.

furkankalkan

Buna verilebilecek en iyi cevap sanırım şu:
Lover
twitter.com/furkan_kalkan1

freeman

Özelilkle EMACS/vim kullanan arkadaşlar nedenlerini söylerse çok güzel olur. :D
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

freeman

Konuyu bir kez yukarıya çıkartalım. Özellikle Emacs kullanan arkadaşları bulmam lazım. :D
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

jaschar

Alıntı yapılan: SkynetX - 09 Ağustos 2015 - 18:39:01
Konuyu bir kez yukarıya çıkartalım. Özellikle Emacs kullanan arkadaşları bulmam lazım. :D
emacs degil de vim kullaniyorum son 1 yildir. rahatim. geditmis atommus, alisamiyor insan.
projectdisco - state of art android distribution .

freeman

Alıntı yapılan: droidzadeAlıntı yapılan: SkynetX - 09 Ağustos 2015 - 18:39:01Konuyu bir kez yukarıya çıkartalım. Özellikle Emacs kullanan arkadaşları bulmam lazım. emacs degil de vim kullaniyorum son 1 yildir. rahatim. geditmis atommus, alisamiyor insan.
Ben de Linux kullanmaya geçtikten sonra 1 yıl civarı Vim kullanmıştım. Sonra merakten bir deneyeyim diye Emacs 'e bakayım dedim. O günden sonra Vim 'de çok basit geliyor bana. :D
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

oasln


Ben de bir süredir (decade oldu sanırım) sadece vim kullanıyorum. Nedenlerini bir kaç screencast ile açıklayayım. Temel özelliklerinin yanında özellikle yazılım geliştirirken en çok kullandığım yanları:



  • Semantic kod tamamlama: YouCompleteme ile vim siz yazarken kodunuzu tamamlayabilir, basit bir python örneği:





  • syntastic sizi tüm programlama dilleri için eğer uygulamanızda bir syntax error varsa aynı anda uyarır. Hatta kodlama stilinde yaptığınız hataları bile gösterebilir:





  • emmet jquery seçicileri benzeri çok kolay bir syntax ile çok hızlı html kodu üretmenizi sağlar. Örneğin bir sayfa ve navigasyon yapımı:




  • ctrlp ile dosyalar arası çok hızlı geçis yapabilirsiniz:




  • gitgutter ile her daim eklenen, değiştirilen ve çıkarılan satırları sol sutunda görebilirsiniz.





  • fugutive vim'e tam bir git entegrasyonu sağlar. commit ve diff işlemleri atayacağınız bir tuşa bakar, size sadece commit mesajını yazmak kalır. Örnek bir :Gdiff görüntüsü:




  • easymotion ile ekranda istediğiniz yere zıplayabilirsiniz. Örneğin cursor en üstte olmasına rağmen libzrary yaza0 yere zıplamak istersem tek yapmam gereken ,,w;v Bu da istediğiniz yere gitmeyi inanılmaz hızlı hale getirir:





  • Bunların yanında daha bir çok işi çok kolay hale getiren eklenti kullanıyorum. Bazıları: airline (powerline gibi viml ile yazılmış status ve tabbar), nerdtree (dosya sistemi görüntüleyici), eregex (perl uyumlu düzenli ifadeler), vim-gnupg (gpg ile şifrelenmiş dosya oluşturup düzenlemek bu kadar kolay olmamıştı), conque (entegre terminal)...


    En sevdiğim vim eklentisi ise: vimwiki. Vim içerisinde yerel dosya sisteminize kayıtlı bir viki oluşturmanızı sağlıyor. Sayfalar arası link oluşturmak geçmek çok basit. Üstelik sadece bir komutla vikinizi bootstrap destekli static web sitesine de dönüştürebilirsiniz. Bir wiki sayfamdan görüntü:




Bunun yanında zsh + prezto ve i3 başlı başına kod yazmayı çok hızlandıran bir IDE deneyimi yaratıyor. Siz de artık bırakın o hantal, işe yaramaz IDE ve editörleri vim'e geçin, bir daha arkanıza dönüp bakmazsınız :)
--

betseg

i3 xterm açıyor. Nasıl değiştirebilirim? :)

oasln

Alıntı yapılan: betseg - 11 Ağustos 2015 - 16:26:24
i3 xterm açıyor. Nasıl değiştirebilirim? :)

~/.i3/config dosyasina $mod+Return tuşuna bastığınızda istediğiniz terminali atayabilirsiniz. Örneğin benimki


bindsym $mod+Return exec urxvt
--

freeman

@oasln;
Hocam 1-7 arası özelliklerin hepsi Emacs 'de de var. 8. özellik ise Emacs kısmında OrgMode ile yapılıyor. Ki sanmıyorum VimWiki 'nin OrgMode ile yarışabileceğini.
OrgMode bir;
- Not alma aracı,
- Kolayca statik web sayfası oluşturma,yayınlama aracı (gerektiği yerde css/javascript ile istediğiniz gibi müdahele edebilirsiniz.)
(Statik bir blog oluşturup, cms olarak Emacs+OrgMode kullanın.)
- Excel gibi bir 'spreadsheet' (ki tablo yönetimi gerçekten muazzam.)
- Planlama/proje yönetim aracı
- HTML, PDF, veya başka bir formata kolayca dönüşüm
- Org belgesi içine herhangi bir dilde yazılan kodların, otomatik olarak çalıştırılması ve çıktırılarının yine Org belgesi içine eklenmesi
- Org belgesi içerisinde LaTeX ifadelerinin gömülebilmesi,
- ve daha neler neler(gerçekten sayamıyorum. :))
Şurada kısaca özellikleri tanıtılıyor.  (Özellikle 'With your mobile phone' kısmı dikkate değer.)
Şurada da özellikler uygulamalı gösteriliyor.


* Emacs 'in tamponlar arası geçişi, tamponları yönetimi Vim 'den çok çok daha kolay ve daha verimli.
* Emacs içerisinden shell/term açarak, komut satırı işlemlerimi Emacs 'den ayrılmadan yapmak vazgeçilmeyecek bir özellik(Özellikle Windows sistemde olmazsa olmaz).


Ek olarak, Vim 'in Emacs ile asla yarışamayacağı bir özellik var: dired-mode. 
Vim tarafından NerdTree, Explorer gibi bir iki eklenti denedim ama hiçbiri dired-mode kadar esnek ve yetenekli gelmedi bana. Kısaca;
https://www.youtube.com/watch?v=7jZdul2fC94

dired-mode ile beraber 'bookmarks' özelliği birleşince nirvanaya ulaşıyor insan. 


Ha bu arada unutmadan, let the begin the flame wars.
:)
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

oasln

Alıntı yapılan: SkynetX - 11 Ağustos 2015 - 20:08:15
Ha bu arada unutmadan, let the begin the flame wars.
:)

vim ile emacs arasındaki bu tip tartışmaları hep anlamsız bulmuşumdur. Hiç kuşkusuz iki editör de kullanıcısının elinde çok güçlü araçlara dönüşebilir.
--

freeman

Linux kullanan programcılara Emacs ya da Vim öğrenmelerini kesinlikle tavsiye ediyorum. Öğrenmesi biraz zaman alır ama fazlasıyla geri dönüş sağlar( özellikle de emacs :P ). 
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

heartsmagic

Vim'in en bariz üstünlüğü şu bence, bir sistemin başına geçtiniz, uçbirimi açıverdiniz:

emacs: command not found

Hehe. vim ile sanırım bu yaşanmaz, hemen her sistemde bulunur.

Ha, kurmaya kurulur tabi:

api -s emacs | grep Inst | wc -l                                                                                    
Alıntı Yap93   

Ancak, olay özelleştirmesiydi, kodlama yaparken kullanlan şeyleri dersek o konu beni zaten aşar. Herkes sevdiği düzenleyiciyi kullansın derim :) Zira şimdi biri gelir, nano varken vim'e ne gerek var diyebilir değil mi :D

                                                 
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

betseg

cat << "EOF" >> dosya   varken nano bile gereksiz :P

freeman

Alıntı yapılan: heartsmagicVim'in en bariz üstünlüğü şu bence, bir sistemin başına geçtiniz, uçbirimi açıverdiniz:

Kod: [Seç]emacs: command not found
Hehe. vim ile sanırım bu yaşanmaz, hemen her sistemde bulunur.

Ha, kurmaya kurulur tabi:

Kod: [Seç]api -s emacs | grep Inst | wc -l                                                                                    
Alıntı93   
Ancak, olay özelleştirmesiydi, kodlama yaparken kullanlan şeyleri dersek o konu beni zaten aşar. Herkes sevdiği düzenleyiciyi kullansın derim Zira şimdi biri gelir, nano varken vim'e ne gerek var diyebilir değil mi

                                                 
Vim 'in tek üstünlüğü bu olabilir(yoksa Vi mi?) ama sistem yöneticisi olmadığım için benim için fark etmiyor. :D 
En son  5 ay önce Linux kurdum, beraberinde de  Emacs. 
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

heartsmagic

Tek üstünlüğü o değil tabi. Herkesin bildiği üzere bu ve benzeri tartışmalar asla sona ermez. Vim-Emacs, Gnome-KDE, dpkg-rpm, X dağıtımı-Y dağıtımı vs. Gördüğümüz gibi herkes kendi düzenleyicisinden memnun ve onu savunmakta. Emacs'ın gücü zaten ortada, bunu kimse inkar edemez. Fakat kullanım durumuna ve alanlarına göre ikisinin de artıları var kendisine göre. Vim'in hızına asla yetişemez sanırım Emacs örneğin, ayrıca muhtemelen öğrenme süresi de daha uzundur. Fakat, ben bunları saydıkça sen karşıma başka artılarla gelirsin. Sonra ben başka şeyler sayarım, sen yine başka şeyler söylersin. "X savaşı" denen şey zaten böyle bir şey :)
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

freeman

Alıntı yapılan: heartsmagicTek üstünlüğü o değil tabi. Herkesin bildiği üzere bu ve benzeri tartışmalar asla sona ermez. Vim-Emacs, Gnome-KDE, dpkg-rpm, X dağıtımı-Y dağıtımı vs. Gördüğümüz gibi herkes kendi düzenleyicisinden memnun ve onu savunmakta. Emacs'ın gücü zaten ortada, bunu kimse inkar edemez. Fakat kullanım durumuna ve alanlarına göre ikisinin de artıları var kendisine göre. Vim'in hızına asla yetişemez sanırım Emacs örneğin, ayrıca muhtemelen öğrenme süresi de daha uzundur. Fakat, ben bunları saydıkça sen karşıma başka artılarla gelirsin. Sonra ben başka şeyler sayarım, sen yine başka şeyler söylersin. "X savaşı" denen şey zaten böyle bir şey
emacsserver ile Emacs en az Vim kadar hızlı açılabiliyor. :)
Aslında burada tartışmayı devam ettirme sebebim, ister Vim ister Emacs olsun biraz da olsa ilgilerini çekmek insanların, gençlerin.  Programcı adam gerçekten de gedit yerine Vim/Emacs kullanmalı. Bu editörleri öğrenirken bilgisayar/programlama/Linux hakkında bir sürü şey öğreniyorsun. 

Zor öğrenme kısmında hem fikirim. Halen daha Emacs 'in iç dinamiklerini tam olarak anlayamadım. :-[
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

heartsmagic

Emacs öyle hızlanıyor, Vim böyle X desteğine kavuşuyor :) Kısacası iki düzenleyici de eksiklerini bir şekilde kapatıyor. Konuyu dürtme amacının da farkındayım, çaktırmadan destek olmak istiyorum zaten :)
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

betseg

fortune'dan bu çıktı:
Alıntı YapEmacs, n.:

A slow-moving parody of a text editor.
ehe ehe

Not: AUR'dan bazı eklemeler ndirdim, hangisinde olduğunu bilmiyorum. Bunlar var bende:
$ pacman -Qqs fortune
fortune-mod
fortune-mod-archlinux
fortune-mod-kernelnewbies
fortune-mod-sherlock
fortune-mod-starwars
fortune-mod-thebigbangtheory
fortune-mod-thenewsroom
fortune-mod-vimtips

Sh4oTT

Vim eklentilerini kurmama yardımcı olabilecek birisi varmı? @oasln gösterdiği eklentilerden daha 1. sini (YouCompleteme) zar zor kurdum oda çalışmıyor :D Bu konuda türkçe döküman varsa atarmısınız?