Priemonės darbui su Python ir Django

Iš anksto įspėju, kad čia aprašytos priemonės toli gražu nėra skirtos pradedantiesiems programuotojams.

Naujame darbe pradėjęs programuoti Python skyriau šiek tiek laiko darbo priemonių paruošimui ir nusprendžiau pasidalint savo naudojamo arsenalo sąrašu su visais. Jei trumpai, pagrindinės darbo priemonės kurias naudoju yra šios: Xterm, screen, zsh, vim, ctags, mercurial, DreamPie, virtualenv, buildout, Sphinx, pylint, django-debug-toolbar, South, ipdb.

Štai kaip viskas atrodo bendroje visumoje:

Priemonės darbui su Python

Priemonės darbui su Python

Visų šių programų konfigūraciniai failai guli viešai prieinamoje vietoje:

http://bitbucket.org/sirex/home/src/

XTerm yra paprastas, gan greitas (kur kas greitesnis už gnome-terminal ir šiek tiek lėtesnis už rxvt) ir labai lankstus terminalo emuliatorius.

screen yra virtualus terminalų multiplexeris, suteikiantis viename terminalo lange naudoti kelias terminalo sesijas. Be šios savybės screen turi dar daug visokių įdomių funkcijų, tokių kaip virtualūs terminalų langai ir jų dalinimas, kopijavimas iš terminalo išvesties, terminalo išvesties saugojimas, virtualių terminalų sesijos atskyrimas ir t.t. Išmokus juo naudotis, praktikoje tikrai praverčia.

zsh – tiesiog gera komandinės eilutės sąsaja (shell). Naudoju jį todėl, kad jis tiesiog yra tobulas ir turi viską, ko gali prireikti. Plačiau: http://grml.org/zsh/zsh-lovers.html

Ko gero daugiausia zsh man patinka todėl, kad paspaudus TAB, praktiškai visada gausi tai ko reikia… Taip, zsh taip pat supranta ir djanogo-admin.py sub-komandas.

vim

Tikriausiai visi ir taip žino, kas yra Vim. Jei nežinot, tai Vim yra vadinamas „programmers editor“ (programuotojų teksto redaktorius). Vim yra vienas populiariausių programuotojų tekstų redaktorius visame pasaulyje.

Naudoju šiuos Vim įskiepius: BuffExplorer, LargeFile, snipMate, surround, ZenCoding, PyFlakes, delimitMate. Visą kitą Vim’as turi pagal nutylėjimą, sintaksės spalvinimas, galimybė atitraukti Python blokus nuo krašto, omnicompletion funkcija ir pan. Naudojant ctags galima šokinėti per visas Python funkcijas ir klases esančias bet kuriame projekto faile. snipMate turi ne tik python iškarpas, bet ir django.

snipMate