Nedávno jsem poprvné commitoval rozšíření pro Django (a pro FOSS obecně). Bylo mi řečeno, že musím doplnit dokumentaci a testy. To mě přivedlo k tomuto modulu a proto jsem se rozhodl, že ho víc prozkoumám (pozn: prozkoumám == prolítnu okem dokumentaci a zjistím, jak ho používat mimo Django ;) ). Modul doctest nabízí snadnou cestu pro vytváření jednoduchých testů…
Chápu, zní to jako prasárna. Pythoní interpret jako shell. Ale funguje to. A dokonce líp, než kterýkoliv jiný shell, jaký jsem kdy měl (dobře no, zkusil jsem jen Bash a ZSH a díky me přirozené lamosti jsem do nich nikdy nepronikl). Příkazem ipython -p sh se nám spustí interpreter v shellovém režimu. Ten se oproti klasickému liší v několika drobnostech…
Jednou z příjemných vlastností Pythoního interpreta je jeho interaktivní režim. Používal jsem ho pro získání nápovědy o modulech a testování kódu. Pak jsem objevil modul readline a rlcompleter a na nějakou dobu byl spokojený. Než jsem objevil IPython. IPython rozšiřuje původní prostředí o řadu vylepšení. Na první pohled zaujme…
Během pročítání Pythoního manuálu jsem narazil na modul readline, následně na rlcompleter a odtud už byl jen kousek k hledání, jak nastavit tab-completion při spuštění interpreta v interaktivním režimu. Jako bonus jsem našel automatické ukládání historie příkazů. Skript .pythonrc.py /---pre import atexit, os, readline, rlcompleter historyPath = os.path.expanduser(„~/.pyhistory“) def save_history(historyPath=historyPath): import readline readline.write_history_file(historyPath) if os.path.exists