Hi
Ich benutze nun vim schon sehr lange, allerdings biser nur um c zu programmieren.
Nun habe ich mich ein wenig in python eingearbeitet, und wollte mir das mal anschauen. Zu meinen Fragen:
- kann im python scripts in vim in einer neuen shell ausführen oder geht das nur im gleichen fenster
- gibt es für python was, dass so sexy ist wie den ex befehl :make? Damit "vim" das ganze kompiliert (den compiler aufruft) der dann (falls welche auftauchen) direkt zum fehler hüpft?
vim
- birkenfeld
- Python-Forum Veteran
- Beiträge: 1603
- Registriert: Montag 20. März 2006, 15:29
- Wohnort: Die aufstrebende Universitätsstadt bei München
Wo willst du in Python kompilieren?
(Gut, du kannst .py zu .pyc kompilieren, aber dabei findest du nur Syntaxfehler.)
(Gut, du kannst .py zu .pyc kompilieren, aber dabei findest du nur Syntaxfehler.)
-
- Python-Forum Veteran
- Beiträge: 1209
- Registriert: Montag 29. September 2003, 17:18
- Wohnort: Purkersdorf (bei Wien [Austria])
Hi!
Ich hab gerade in meiner .vimrc folgendes gefunden (Alzheimer lässt grüssen. Kann mich nicht erinnern das mal dort reingeschrieben zu haben. Verwende es natürlich auch nie Oh Mann ...):
Ich muss sagen, dass ich beim Programmieren, egal in welcher Sprache, immer mit 2 bzw. 3 Fensterchen arbeite. Eines für vim, eines zum Kompilieren bzw. ausführen, eines für den interaktiven Modus (wenn die Sprache sowas hat).
Gruß, mawe
Ich hab gerade in meiner .vimrc folgendes gefunden (Alzheimer lässt grüssen. Kann mich nicht erinnern das mal dort reingeschrieben zu haben. Verwende es natürlich auch nie Oh Mann ...):
Code: Alles auswählen
" save code, run python, show output in preview windo
function! Python_eval_vsplit() range
let src = tempname()
let dst = tempname()
execute ": " . a:firstline . "," . a:lastline . "w " . src
execute ":silent ! python " . src . " > " . dst . " 2>&1 "
execute ":pclose!"
execute ":redraw!"
execute ":vsplit"
execute "normal \<C-W>l"
execute ":e! " . dst
execute ":set pvw"
execute "normal \<C-W>h"
endfunction
vmap <silent> <F7> :call Python_eval_vsplit()<cr>
nmap <silent> <F7> mzggVG<F7>`z
imap <silent> <F7> <ESC><F7>a
map <silent> <S-F7> <C-W>l:bw<cr>
imap <silent> <S-F7> <ESC><S-F7>a
Gruß, mawe
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ich beantworte zwar im Moment keine Fragen dazu, aber wenn mir was einfällt, schreib ich auf [wiki]Python-Programmieren mit Vim[/wiki] etwas dazu. Dort ist auf jeden Fall schon mal der [F5]-Befehl, der aber natürlich nicht besonders kompliziert ist. Aber was anderes brauche ich in der Regel nicht.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Ich verwende meistens das ein wenig umständlichere
Code: Alles auswählen
:! python /pfad/zum/skript.py
nun ja...
ich werde wohl auch auf :pyf file verzeichten und das ganze in ner neuen shell ausführen, da vim so oder so nicht an die entsprechende fehlerstelle springt
evt. warte ich bis mal wer etwas für python in viom implementiert das :make nahekommt =) *faul*
geht ja auch mit 2 shells, nur hasse ichs immer 100 fenster offen zu haben
ich werde wohl auch auf :pyf file verzeichten und das ganze in ner neuen shell ausführen, da vim so oder so nicht an die entsprechende fehlerstelle springt
evt. warte ich bis mal wer etwas für python in viom implementiert das :make nahekommt =) *faul*
geht ja auch mit 2 shells, nur hasse ichs immer 100 fenster offen zu haben
Sinn und Unsinn meiner Worte kommt nie von ungefähr. Das nämlich bin ich, nicht mehr.
-
- Python-Forum Veteran
- Beiträge: 1209
- Registriert: Montag 29. September 2003, 17:18
- Wohnort: Purkersdorf (bei Wien [Austria])
Nur für den Fall dass du dir das Snippet von mir nicht genau angesehen hast:gorba hat geschrieben:evt. warte ich bis mal wer etwas für python in viom implementiert das :make nahekommt
Wenn du F7 drückst, splittet vim das Fenster auf, ins neue kommt die Ausgabe des Scripts dass gerade im Buffer ist, oder eine Fehlermeldung. Ich finde das ist ein halbwegs brauchbarer make-Ersatz.
Jo hab ich mir angeschaut. Denke auch das dies eine gute Notlösung ist!
Warum hast du das ganze nicht auf F12 gemappt? =) die taste wär noch frei
Warum hast du das ganze nicht auf F12 gemappt? =) die taste wär noch frei
Sinn und Unsinn meiner Worte kommt nie von ungefähr. Das nämlich bin ich, nicht mehr.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Das anzupassen sollte nun wirklich eine Kleinigkeit seingorba hat geschrieben:Warum hast du das ganze nicht auf F12 gemappt? =) die taste wär noch frei
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Nicht bei mir. F12 ist Ejectgorba hat geschrieben:Jo hab ich mir angeschaut. Denke auch das dies eine gute Notlösung ist!
Warum hast du das ganze nicht auf F12 gemappt? =) die taste wär noch frei
TUFKAB – the user formerly known as blackbird
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Zu warty Zeiten konnte man eingelegte CDs nicht auswerfen wenn sie gemounted waren. Deswegen hab ich F12 zu umount und eject gemappt. So nach dem MacOS X Vorbild Und jetzt bin ichs schon gewohnt und nutz das nach wie vor.Joghurt hat geschrieben:Programmierst du wirklich so entsetzlichen Code, dass du einen Schleudersitz brauchst?blackbird hat geschrieben:Nicht bei mir. F12 ist Eject
TUFKAB – the user formerly known as blackbird
haha nice =)
Jo hab mir neulich K darauf gemappt. Also manpage für das Wort unter dem cursor. Allerdings bin ich mir bewusst geworden, dass ich nicht schneller bin mit F12 anstatt von K. Evt. im insert mode aber ansonsten...
=)
Jo hab mir neulich K darauf gemappt. Also manpage für das Wort unter dem cursor. Allerdings bin ich mir bewusst geworden, dass ich nicht schneller bin mit F12 anstatt von K. Evt. im insert mode aber ansonsten...
=)
Sinn und Unsinn meiner Worte kommt nie von ungefähr. Das nämlich bin ich, nicht mehr.