<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>onjin.net &#187; python</title>
	<atom:link href="http://onjin.net/blog/category/python/feed/" rel="self" type="application/rss+xml" />
	<link>http://onjin.net/blog</link>
	<description>Takie, tu i tam</description>
	<lastBuildDate>Fri, 27 Apr 2012 09:34:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>vim + vundle plugin manager + programming</title>
		<link>http://onjin.net/blog/2012/03/14/vim-vundle-plugin-manager-programming/</link>
		<comments>http://onjin.net/blog/2012/03/14/vim-vundle-plugin-manager-programming/#comments</comments>
		<pubDate>Wed, 14 Mar 2012 21:50:36 +0000</pubDate>
		<dc:creator>Marek</dc:creator>
				<category><![CDATA[onjin]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://onjin.net/blog/?p=198</guid>
		<description><![CDATA[<a href="http://onjin.net/blog/2012/03/14/vim-vundle-plugin-manager-programming/" title="vim + vundle plugin manager + programming"></a>Kilku znajomych chciało zacząć używać vim&#8217;a. Ale konfigurowanie go na starcie, dobieranie pluginów, instalowanie ich, gdy się jeszcze nic nie wie tylko chce się spróbować zazwyczaj powodowało przełożenie tej próby na &#8216;kiedy indziej&#8217;. Niedawno poznałem i zacząłem używać plugin manager&#8217;a &#8230;<p class="read-more"><a href="http://onjin.net/blog/2012/03/14/vim-vundle-plugin-manager-programming/">Czytaj więcej &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://onjin.net/blog/2012/03/14/vim-vundle-plugin-manager-programming/" title="vim + vundle plugin manager + programming"></a><p>Kilku znajomych chciało zacząć używać vim&#8217;a. Ale konfigurowanie go na starcie, dobieranie pluginów, instalowanie ich, gdy się jeszcze nic nie wie tylko chce się spróbować zazwyczaj powodowało przełożenie tej próby na &#8216;kiedy indziej&#8217;.</p>
<p>Niedawno poznałem i zacząłem używać plugin manager&#8217;a <a href="https://github.com/gmarik/vundle">vundle</a> i sam potrzebowałem szybko przenieść konfigurację na drugi komputer i na laptopa. Zazwyczaj używałem dropbox&#8217;a i podlinkowanego pliku .vimrc oraz całego katalogu .vim ze wszystkimi pluginami.</p>
<p>Jednak używając plugin managera, którego konfiguracja znajduje się w .vimrc pozwala teraz posługiwać się jedynie plikiem .vimrc. Zgodnie z programistyczną zasadą &#8216;jak masz coś zrobić więcej niż 2 razy, napisz program&#8217; powstał mały skrypt + podstawowy .vimrc pozwalający szybko uruchomić vim&#8217;a skonfigurowanego pod programowanie w ciągu kilku minut.</p>
<p><a href="https://github.com/onjin/vim-startup">https://github.com/onjin/vim-startup</a></p>
<p>Jak na razie przydało się mi i kilku innym osobom <img src='http://onjin.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  . Plik .vimrc jest oczywiście przykładowy i jak już sobie poużywasz vim&#8217;a i zdecydujesz się go poznać lepiej wtedy po kolei skonfigurujesz go pod siebie.</p>
]]></content:encoded>
			<wfw:commentRss>http://onjin.net/blog/2012/03/14/vim-vundle-plugin-manager-programming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grooveshark currentSong.txt + gajim status</title>
		<link>http://onjin.net/blog/2011/03/19/grooveshark-currentsong-txt-gajim-status/</link>
		<comments>http://onjin.net/blog/2011/03/19/grooveshark-currentsong-txt-gajim-status/#comments</comments>
		<pubDate>Sat, 19 Mar 2011 12:03:04 +0000</pubDate>
		<dc:creator>Marek</dc:creator>
				<category><![CDATA[desktop]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[muzyka]]></category>
		<category><![CDATA[narzędzia]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://onjin.net/blog/?p=189</guid>
		<description><![CDATA[<a href="http://onjin.net/blog/2011/03/19/grooveshark-currentsong-txt-gajim-status/" title="Grooveshark currentSong.txt + gajim status"></a>Przy okazji szukania API do grooveshark&#8217;a odkryłem plik currentSong.txt, który jest tworzony przez Grooveshark Desktop. Kilka minut z vim&#8217;em i mamy skrypt napisany w python&#8217;ie, który odczytuje w/w plik i wrzuca informację o aktualnie odtwarzanym utworze jako status wybranego konta &#8230;<p class="read-more"><a href="http://onjin.net/blog/2011/03/19/grooveshark-currentsong-txt-gajim-status/">Czytaj więcej &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://onjin.net/blog/2011/03/19/grooveshark-currentsong-txt-gajim-status/" title="Grooveshark currentSong.txt + gajim status"></a><p>Przy okazji szukania API do <a href="http://grooveshark.com">grooveshark&#8217;a</a> odkryłem plik <b>currentSong.txt</b>, który jest tworzony przez <em>Grooveshark Desktop</em>.</p>
<p>Kilka minut z vim&#8217;em i mamy skrypt napisany w python&#8217;ie, który odczytuje w/w plik i wrzuca informację o aktualnie odtwarzanym utworze jako status wybranego konta w <a href="http://gajim.org">gajim&#8217;a</a>.</p>
<p>Skrypt umożliwia także uruchomienie go w trybie monitorowania w/w pliku (wymana <b>pyinotify</b>). Wtedy nasz status będzie zmieniany w chwili (chwilę potem <img src='http://onjin.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) zmiany utworu w Grooveshark Desktop.</p>
<p>Całość można dowolnie używać/modyfikować, a pobrać można z serwiu <a href="http://github.com">github.com</a>:</p>
<ul>
<li><a href="https://github.com/onjin/grooveshark2gajim">https://github.com/onjin/grooveshark2gajim</a></li>
<li><a href="http://onjin.github.com/grooveshark2gajim/">http://onjin.github.com/grooveshark2gajim/</a></li>
</ul>
<p>Do działania wystarczy nam plik <a href="https://github.com/onjin/grooveshark2gajim/raw/master/grov2gajim.py">grov2gajim.py</a>. Umieszczamy go gdzieś na dysku i możemy używać.</p>
<div style="display: none"><a href="http://www.atotaldetox.com/thc-marijuana-detox-kits/"><b>thc/marijuana detox kits</b></a>.</div>
]]></content:encoded>
			<wfw:commentRss>http://onjin.net/blog/2011/03/19/grooveshark-currentsong-txt-gajim-status/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>best vim plugins</title>
		<link>http://onjin.net/blog/2010/07/29/best-vim-plugins/</link>
		<comments>http://onjin.net/blog/2010/07/29/best-vim-plugins/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 19:34:19 +0000</pubDate>
		<dc:creator>Marek</dc:creator>
				<category><![CDATA[narzędzia]]></category>
		<category><![CDATA[programowanie]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://onjin.net/blog/?p=158</guid>
		<description><![CDATA[<a href="http://onjin.net/blog/2010/07/29/best-vim-plugins/" title="best vim plugins"></a>Dziś robiłem porządki w ~/.vim/ . Aktualizacje do nowych wersji pluginów, wyrzucanie nieużywanych, porządki w ~/.vimrc. W trakcie tej pracy powstała lista pluginów, dzięki którym miło mi się pracuje vimball Plugin zajmujący się pluginami dostarczanymi w paczkach .vba i pozwalający &#8230;<p class="read-more"><a href="http://onjin.net/blog/2010/07/29/best-vim-plugins/">Czytaj więcej &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://onjin.net/blog/2010/07/29/best-vim-plugins/" title="best vim plugins"></a><p>Dziś robiłem porządki w ~/.vim/ . Aktualizacje do nowych wersji pluginów, wyrzucanie nieużywanych, porządki w ~/.vimrc. W trakcie tej pracy powstała lista pluginów, dzięki którym miło mi się pracuje</p>
<h3>vimball</h3>
<p>Plugin zajmujący się pluginami dostarczanymi w paczkach .vba i pozwalający też takie paczki tworzyć, w praktyce potrzeby mi by instalować paczki .vba<br/><br />
&nbsp;&raquo; <a href="http://www.vim.org/scripts/script.php?script_id=1502">vimball</a><br/><br/></p>
<h3>snippetsEmu</h3>
<p>Emuluje zachowanie snippetów z TextMate. Na przykład w pliku sometest.py wpisujesz &#8216;for&lt;tab&gt;&#8217;, uzupełniasz brakujące miejsca poruszając się klawiszem &lt;tab&gt; i otrzymujesz pełną pętle. Inne użyteczne snippety dla pythona to: <strong>prop</strong> &#8211; property, <strong>get</strong> &#8211; def get_.., <strong>set</strong> &#8211; def set_.., <strong>def</strong> &#8211; def .., <strong>cm</strong> &#8211; classmethod, <strong>cl</strong> &#8211; class .. oraz <strong>ifn, ifmain, sb, sbu, sbl1, trye, tryf, tryef, unittest</strong>.</p>
<p>Domyślnie dostarczone są 32 zestawy snippetów dla wielu języków programowania, opisu oraz frameworków (django, rails, symfony).<br/><br />
&nbsp;&raquo; <a href="http://www.vim.org/scripts/script.php?script_id=1318">snippetsEmu</a><br/><br/></p>
<h3>neocomplcache</h3>
<p>System tzw &#8216;dopełniania&#8217; (podpowiadania) i to właśnie robi. Dopełnia nazwy metod, funkcji, atrybuty html, nazwy plików, itp. Trzeba po prostu zobaczyć i używać.<br/><br />
&nbsp;&raquo; <a href="http://www.vim.org/scripts/script.php?script_id=2620">neocomplcache</a><br/><br/></p>
<h3>project</h3>
<p>Bardzo prosty i skuteczny system pozwalający w bocznym oknie przeglądać wybrane lub wszystkie pliki z jednego lub wielu projektów. Każdy projekt ma zdefiniowany katalog, dzięki czemu otwarcie pliku z projektu (wciskamy &#8216;enter&#8217; bedąc &#8216;nad&#8217; plikiem) nastąpi równocześnie z przejściem do katalogu projektu. W ten sposób pliki projektu jak np &#8216;tags&#8217; (ctags) zostaną poprawnie wczytane.<br/><br />
&nbsp;&raquo; <a href="http://www.vim.org/scripts/script.php?script_id=69">project</a><br/><br/></p>
<h3>simple pairs</h3>
<p>Proste dopełnianie dla &#8222;, &#8216;, {, (, [ . Wpisanie znaku otwierającego powoduje automatyczne dopisanie znaku zamykającego. W przypadku {, (, [ gdy sami wpiszemy znak zamykający, nie zostanie on zdublowany. Kursor po prostu przesunie się dalej. Dla &#8222;, &#8216; zostanie jednak stworzona kolejna para. Krótkie i skuteczne.<br/><br />
&nbsp;&raquo; <a href="http://www.vim.org/scripts/script.php?script_id=2339">simple pairs</a><br/></p>
<h3>vcscommand</h3>
<p>Plugin pozwalający wykonywać komendy dla CVS, SVN, SVK, git, bzr, and hg przy pomocy vim&#8217;a. Jeden zestaw komend bez względy na system kontroli wersji.<br/><br />
&nbsp;&raquo; <a href="http://www.vim.org/scripts/script.php?script_id=90">vcscommand</a><br/></p>
<p>Niewiele tego, ale te pluginy, git (post/pre hooki), bash + zestaw skryptów wystarcza mi do pracy <img src='http://onjin.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://onjin.net/blog/2010/07/29/best-vim-plugins/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>ftpmount v1.2.0</title>
		<link>http://onjin.net/blog/2009/06/25/ftpmount-v120/</link>
		<comments>http://onjin.net/blog/2009/06/25/ftpmount-v120/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 11:44:36 +0000</pubDate>
		<dc:creator>Marek</dc:creator>
				<category><![CDATA[develop]]></category>
		<category><![CDATA[ftpmount]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://onjin.net/index.php/2009/06/25/ftpmount-v120/</guid>
		<description><![CDATA[<a href="http://onjin.net/blog/2009/06/25/ftpmount-v120/" title="ftpmount v1.2.0"></a>sprawdź najnowszą wersję ftpmount Kilka poprawek do ftpmount: poprawiony przykładowy .ftpmountrc &#8211; w .ini komentrze to &#8216;;&#8217; a nie &#8216;#&#8217; tryb &#8216;verbose&#8217; (-v) pokazuje teraz jakie parametry zostały przekazane do curlftpfs do README dodałem informację, że &#8216;curlftpfs&#8217; jest potrzebny do &#8230;<p class="read-more"><a href="http://onjin.net/blog/2009/06/25/ftpmount-v120/">Czytaj więcej &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://onjin.net/blog/2009/06/25/ftpmount-v120/" title="ftpmount v1.2.0"></a><div style="text-align: center; border-bottom: solid 1px gray; background: orange">sprawdź najnowszą wersję <a href="http://onjin.net/index.php/category/ftpmount">ftpmount</a></div>
<p>Kilka poprawek do ftpmount:</p>
<ul>
<li>poprawiony przykładowy .ftpmountrc &#8211; w .ini komentrze to &#8216;;&#8217; a nie &#8216;#&#8217; <img src='http://onjin.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>tryb &#8216;verbose&#8217; (-v) pokazuje teraz jakie parametry zostały przekazane do curlftpfs</li>
<li>do README dodałem informację, że &#8216;curlftpfs&#8217; jest potrzebny do działania skryptu</li>
</ul>
<p>Wersje <a href="http://github.com/onjin/ftpmount/downloads">do pobrania</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://onjin.net/blog/2009/06/25/ftpmount-v120/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>git pre-commit hook &#8211; symfony / php</title>
		<link>http://onjin.net/blog/2009/05/11/git-pre-commit-hook-symfony-php/</link>
		<comments>http://onjin.net/blog/2009/05/11/git-pre-commit-hook-symfony-php/#comments</comments>
		<pubDate>Mon, 11 May 2009 09:25:43 +0000</pubDate>
		<dc:creator>Marek</dc:creator>
				<category><![CDATA[git]]></category>
		<category><![CDATA[narzędzia]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://onjin.net/index.php/2009/05/11/git-pre-commit-hook-symfony-php/</guid>
		<description><![CDATA[<a href="http://onjin.net/blog/2009/05/11/git-pre-commit-hook-symfony-php/" title="git pre-commit hook - symfony / php"></a>Mam jeszcze tą nieprzyjemnośc pracy z PHP (w tym przypadku z symfony framework) i aby była przyjemniejsza dodałem sobie hook na pre-commit do git&#8217;a. * http://dl.getdropbox.com/u/185133/git/pre-commit by zadziałało przerywanie commit&#8217;a gdy &#8216;symfony unit-test&#8216; się nie udadzą, potrzebna jest łatka na &#8230;<p class="read-more"><a href="http://onjin.net/blog/2009/05/11/git-pre-commit-hook-symfony-php/">Czytaj więcej &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://onjin.net/blog/2009/05/11/git-pre-commit-hook-symfony-php/" title="git pre-commit hook - symfony / php"></a><p>Mam jeszcze tą nieprzyjemnośc pracy z PHP (w tym przypadku z symfony framework) i aby była przyjemniejsza dodałem sobie hook na <strong>pre-commit</strong> do git&#8217;a.<br />
 * <a href="http://dl.getdropbox.com/u/185133/git/pre-commit">http://dl.getdropbox.com/u/185133/git/pre-commit</a></p>
<p>by zadziałało przerywanie commit&#8217;a gdy &#8216;<em>symfony unit-test</em>&#8216; się nie udadzą, potrzebna jest łatka na symfony (przynajmniej na moją wersję 1.0.17)<br />
 * <a href="http://dl.getdropbox.com/u/185133/git/symfony_return_code.diff">http://dl.getdropbox.com/u/185133/git/symfony_return_code.diff</a></p>
<p>Hook zakłada, że commit jest robiony w katalogu projektu (tak mam najczęsciej) i znajduje sie w nim plik &#8216;symfony&#8217;</p>
<p>btw: hook wymaga pythona.</p>
]]></content:encoded>
			<wfw:commentRss>http://onjin.net/blog/2009/05/11/git-pre-commit-hook-symfony-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>home.pl &amp; django &#8211; pierwsza potyczka</title>
		<link>http://onjin.net/blog/2009/02/26/homepl-django-pierwsza-potyczka/</link>
		<comments>http://onjin.net/blog/2009/02/26/homepl-django-pierwsza-potyczka/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 20:59:38 +0000</pubDate>
		<dc:creator>Marek</dc:creator>
				<category><![CDATA[hosting]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://onjin.net/index.php/2009/02/26/homepl-django-pierwsza-potyczka/</guid>
		<description><![CDATA[<a href="http://onjin.net/blog/2009/02/26/homepl-django-pierwsza-potyczka/" title="home.pl &amp; django - pierwsza potyczka "></a>home.pl obsługuje pythona jako cgi (pliki .py) więc tego będziemy się trzymać. Instalację wykonamy w katalogu /py instalacja django hardcoded ale działa wrzucamy to do /py i ruchamiamy poprzez www (plik install.py) nasz projekt Lokalnie wołamy i wrzucamy katalog pytest &#8230;<p class="read-more"><a href="http://onjin.net/blog/2009/02/26/homepl-django-pierwsza-potyczka/">Czytaj więcej &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://onjin.net/blog/2009/02/26/homepl-django-pierwsza-potyczka/" title="home.pl &amp; django - pierwsza potyczka "></a><p><em>home.pl</em> obsługuje <strong>pythona</strong> jako <strong>cgi</strong> (pliki .py) więc tego będziemy się trzymać. Instalację wykonamy w katalogu <strong>/py</strong></p>
<h4>instalacja django</h4>
<p>hardcoded ale działa <img src='http://onjin.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  wrzucamy to do /py i ruchamiamy poprzez www (plik install.py)</p>
<pre class="brush: python; title: ; notranslate">
#!/usr/bin/env python
import os

os.system(&quot;wget http://www.djangoproject.com/download/1.0.2/tarball/&quot;)
os.system(&quot;tar zxf Django-1.0.2-final.tar.gz&quot;)
os.system(&quot;rm Django-1.0.2-final.tar.gz&quot;)
os.system(&quot;mv Django-1.0.2-final tmp&quot;)
os.system(&quot;mv tmp/django django&quot;)
</pre>
<h4>nasz projekt</h4>
<p>Lokalnie wołamy</p>
<pre class="brush: bash; title: ; notranslate">
django-admin.py startproject pytest
</pre>
<p>i wrzucamy katalog <em>pytest</em> przez ftp na home do katalogu /py .</p>
<h4>dispatch.py</h4>
<pre class="brush: python; title: ; notranslate">
#!/usr/bin/env python

import os, sys
import django.core.handlers.wsgi

def run_with_cgi(application):

    environ                      = dict(os.environ.items())
    environ['wsgi.input']        = sys.stdin
    environ['wsgi.errors']       = sys.stderr
    environ['wsgi.version']      = (1,0)
    environ['wsgi.multithread']  = False
    environ['wsgi.multiprocess'] = True
    environ['wsgi.run_once']     = True

    if environ.get('HTTPS','off') in ('on','1'):
        environ['wsgi.url_scheme'] = 'https'
    else:
        environ['wsgi.url_scheme'] = 'http'

    headers_set  = []
    headers_sent = []

    def write(data):
        if not headers_set:
             raise AssertionError(&quot;write() before start_response()&quot;)

        elif not headers_sent:
             # Before the first output, send the stored headers
             status, response_headers = headers_sent[:] = headers_set
             sys.stdout.write('Status: %s\\r\\n' % status)
             for header in response_headers:
                 sys.stdout.write('%s: %s\\r\\n' % header)
             sys.stdout.write('\\r\\n')

        sys.stdout.write(data)
        sys.stdout.flush()

    def start_response(status,response_headers,exc_info=None):
        if exc_info:
            try:
                if headers_sent:
                    # Re-raise original exception if headers sent
                    raise exc_info[0], exc_info[1], exc_info[2]
            finally:
                exc_info = None     # avoid dangling circular ref
        elif headers_set:
            raise AssertionError(&quot;Headers already set!&quot;)

        headers_set[:] = [status,response_headers]
        return write

    result = application(environ, start_response)
    try:
        for data in result:
            if data:    # don't send headers until body appears
                write(data)
        if not headers_sent:
            write('')   # send headers now if body was empty
    finally:
        if hasattr(result,'close'):
            result.close()

# Change this to the directory above your site code.
sys.path.append(&quot;/py&quot;)
# Change mysite to the name of your site package
os.environ['DJANGO_SETTINGS_MODULE'] = 'pytest.settings'

run_with_cgi(django.core.handlers.wsgi.WSGIHandler())
</pre>
<p>i odpalamy to by www <img src='http://onjin.net/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  na razie tyle &#8230;</p>
<p>Dokładam paczkę z plikami do testu:</p>
<ul>
<li><a href="http://onjin.net/files/py.zip">py.zip</a></li>
</ul>
<p>unzip py.zip; ftp na home.pl; open http://server.home.pl/py/dispatch.py/admin</p>
<p><a href="http://www.megiteam.pl/refk/onjin/"><br />
 <img src="http://www.megiteam.pl/site_media/banery/python/banerm1.jpg"   title="MegiTeam - mówimy Twoim językiem"  alt="MegiTeam - mówimy Twoim językiem"><br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://onjin.net/blog/2009/02/26/homepl-django-pierwsza-potyczka/feed/</wfw:commentRss>
		<slash:comments>40</slash:comments>
		</item>
	</channel>
</rss>

