Vim içinden Python kodu çalıştırmak
Kitabı yavaÅŸ yavaÅŸ okumaya baÅŸladım. Örnekleri daha önce C kodlarını yazdığım Vim ile baÅŸladım, fakat C’deki gibi F9′a basınca derlemiyor(yorumlamıyor). Vim içinde Python için bir çok destek mevcut, bunları okumak için
1 | :help python |
yazmanız yeterlidir. Burada bir çok örnek verilmiÅŸ de zaten(çok ayrıntılı ÅŸeyler mevcut ileriki zamanlarda tekrar gözden geçirmem gerekecek). Ben bunların bir çoÄŸunu denedim ama hiç biri istediÄŸim gibi olmadı. :pyfile komutu var fakat bu da sadece çıktının son satırını gösteriyor. :!terminal -e ‘python %’ denedim fakat bu da terminalı açtıktan sonra hemen kapatıyordu.
Arch forumlarını biraz gezindim ve en sonunda birinin kullandığı komutu gördüm, çok basit fakat istediÄŸim gibiydi. Vim içerisinden Python’u çalıştırıyor, ve kullandığım dosyayı yorumluyor. Komut ise ÅŸu :
1 | :!python % |
Burada % bizim dosyamız olur. Ben bunu daha da kolaylaÅŸtırmak için, .vimrc‘ye ÅŸu ibareyi ekledim
1 | map <F8> :!python % <enter> |
Evet hepsi bu kadar, artık F8 basınca anında vim içinde dosyam yorumlanıyor. Hata varsa düzeltiyorum yoksa yazmaya devam ediyorum. Vim ile daha çok şey öğreneceğiz gibi.
Ekleme: myavuzselim enter tuşuna çare buldu, onu da yukarıda ekledim teşekkürler
Etiketler: ipucu, Programlama, python, vim
Haziran 5, 2007
Yorumlar(14)
Son Yorumlar
Etiketler (r:30)
Tavsiyeler (r:5)
Merhaba,
Ipucu icin tesekkurler. Fakat enter’a bizim basmamiz gerekiyor, bunu duzeltmek icin attigim ilk sey tuttu:
map :!python %
Aslinda tus basina bir dil biraz israf gibi duruyor, soyle birsey yapsak o da dosyamizda shebang line gerektiriyor:
map :!chmod x % && ./%
Uzantisina gore dosya calistiracak bir script yazmak gerek.
Onceki yorum html’ye kurban gitti. Komutun sonuna <enter> ekleyince enter’a otomatik basiliyor demek istiyordum.
Evet bunu bende düşündüm, daha güzel oldu şimdi
Son halini deÄŸiÅŸtirdim kodda ÅŸu ÅŸekilde olacak:
@Yavuzselim şöyle bir ÅŸey var benim kullandığım, bu vimrc’de ekli:
oraya *.py eklersen kaydettiğin an çalıştırabilir hale geliyor. Birde her dilin ayrı özellikleri var, ben c için şu ayarları yapmıştım
Burada sadece derliyor, çalıştırmak için yine ayır bir terminal açıyorum. Python zaten doğrudan çalışıyor benim bildiğim kadarıyla, yeni başladığım için henüz bilgilerim tam oturmadı.
Evet bu da olabilir. Ben onceki mesajimda soyle birsey kastetmistim (dogru sekilde formatlayabilecek miyim bilmiyorum, keske onizleme olsaydi):
Neyse, en iyisi link vereim
http://herhangibiri.blogspot.com/2007/06/vim-ile-dosya-calistirmaca.html
Yavuzselim anladım demek istediğiniz, güzel bir fikir, fakat sadece yorumlanabilen, betik dilleri için güzel olur, onun haricinde C gibi programlarda sorun çıkmaz mı sence ? Çünkü burada derlendikten sonra çıkıyor çalıştırabilir dosya.
(Önizleme eklentisini kurdum,
içindeki herşey de tanımlanıyor)
Mutlaka olur. Mesela program birden fazla compile-unit’den olusuyorsa calismaz. Ama basit C denemeleri yapmak icin kullanilabilir.
Anladım, genel olarak düşünürsek o zaman güzel bir ÅŸey evet. Ben diÄŸer diller ile pek haşır neÅŸir olmadığım için pek ihtiyacını hisetmedim. C’de ise
Evet pydiction’ı da ekledikten sonra .vimrc dosyamdaki map’in son halini ÅŸu ÅŸekle getirdim:
Heh, biraz tembellik gibi oluyor ama güzel oldu.
Merhaba Heartsmagic arkadaşımızın dediğini yapamadım ben windows üzerinde çalışıyorum ViM ile bu yüzden belki kullanamadim misal !clear kısmı nedir windows üzerinde geçerli mi?
Windows’ta cls komutuyla aynı iÅŸi mi görüyor yardımcı olan olursa minnettar olurum..
Clear terminal çıktılarını temizler, sayfanın başından çıktı verilmesini saÄŸlar, sanırım cls ile aynı iÅŸi görüyor. Ancak windows üzerinde çalışan vim’in windows konsoluna ulaÅŸma imkânı nedir bilmiyorum.
map :w :!cls :!python %
bu şekilde windows xp de kullanıyor.
benim xp yapamadığım otomatik kod tamamlama. bunu bilen birileri var mı?
yukarki açıklama yanlış olmuÅŸ. “küçüktür enter büyüktür ” çıkmamış” düzeltirseniz sevinirim.