Posts

Cron i zc.lockfile

Musiałem dzisiaj napisać skrypt, który odpalał się co minutę poprzez crona i mogło się zdarzyć, że będzie wykonywał się trochę dłużej niż jedna minuta. Dlatego też, trzeba było wymyślić jakiś mechanizm, który by mnie uchronił przed odpaleniem skryptu kolejny raz, gdy ten jeszcze się nie wykonał. Z pomocą przyszedł mi moduł zc.lockfile . Instalujesz go normalnie poprzez pipa: pip install zc.lockfile Jak działa zc.lockfile? Krótki opis: The zc.lockfile package provides a basic portable implementation of interprocess locks using lock files. The purpose if not specifically to lock files, but to simply provide locks with an implementation based on file-locking primitives. Of course, these locks could be used to mediate access to  other  files. For example, the ZODB file storage implementation uses file locks to mediate access to file-storage database files. The database files and lock file files are separate files. Ja go użyłem w następujący sposób, w skrypcie zdefiniowałem odpo

Powerline-bash, vim-powerline - zmiany

Image
Powerline-shell W listopadzie napisałem posta na temat powerline-bash . Warto wiedzieć, że repo zmieniło nazwę i jest teraz dostępne pod adresem powerline-shell . Całą dyskusję na temat zmiany nazwy można zobaczyć tutaj . Powerline Drugą dość ciekawą informacją jest to, iż prace na rozwojem vim-powerline zostały porzucone. Ale nie bój się! Plugin jest nadal dostępny, nie mniej jednak polecam przesiadkę na powerline . Oferuje to samo co vim-powerline, dodatkowo ma możliwość podpięcia również pod konsolę oraz co jest oczywiste będzie dalej rozwijany. Poniżej zamieszczam dwa screeny z obu skryptów. Najlepiej samemu przetestować i wybrać ten który najbardziej się spodoba. Osobiście korzystam z powerline-shell w konsoli, a z powerline w vimie. Jakoś powerline-shell jest dla mnie bardziej przejrzysty ;) powerline powerline-shell

Vim cheat sheet

Image
Jakiś czas temu natknąłem się w necie na dwie dość ciekawe ściągawki do vima. Warto by się z nimi zapoznać lub mieć niedaleko siebie podczas pracy. Kilka razy już mi się przydały. Tak się zastanawiam czy sobie jakiegoś własnego cheat sheet nie zrobić w formie plakatu i walnąć za monitorem ;). Klik w obrazek po więcej.

Submoduły na github.com

Image
Submoduły Submoduły, czyli co zrobić, żeby np. na githubie w jednym repo umieścić inne repozytoria, aby wyglądało to tak jak poniżej, a nie tak jak na przykład tutaj . Do czego się w ogóle przydają submoduły i dlaczego powinieneś je stosować? Wyobraź sobie, że tworzysz swoje repozytorium, które do poprawnej pracy wymaga innych, konkretnych repozytoriów gita. I tutaj z pomocą przychodzą submoduły. Dzięki nim twoje repozytorium będzie posiadało informacje o tym, gdzie dany submoduł się znajduje (jego adres) oraz jego ostatnie commit ID. Dzięki takiemu zabiegowi, inni developerzy, którzy sklonują twoje repo (które wykorzystuje inne repozytoria), nie będą musieli się martwić, czy wszystko będzie działało tak jak powinno. Unikniesz przez to czasami dziwnych błędów. Np. ktoś dociągnie zbyt stare repozytorium lub zbyt nowe, albo całkowicie inną gałąź, niż tą które wykorzystuje twoje repo ;) Osobiście póki co, użyłem submodułów w moim repo dotfiles . Dodawanie submodułów Załóż

Zen Coding w vimie

Zdarza się, że muszę zajrzeć do szablonu z H a T ee M e L em i coś na szybko dorobić, zmienić czy wyrzucić. I tutaj przychodzi z pomocą  Zen Coding . Nie będę się o tym mocno rozpisywał, ponieważ w necie jest już mnóstwo postów/artykułów na ten temat. Zamiast tego obejrzyj sobie to sześciominutowe video: Okej, spodobało Ci się? Chcesz mieć to samo w vimie? Proszę bardzo, najpierw musisz zainstalować zencoding-vim : cd ~/.vim/bundle git clone https://github.com/mattn/zencoding-vim.git Zakładam oczywiście, że korzystasz z vim-pathogen (pisałem o tym tutaj ). I to tyle, nic więcej nie musisz konfigurować. Pod tym linkiem znajdziesz prosty tutorial pochodzący z tego repo z githuba. Natomiast tutaj są opisane selectory i aliasy. Jak chcesz już teraz zobaczyć, czy spodoba cię się Zen Coding to tutaj jest proste demo . Oczywiście, nie zawsze jest to jakoś mega wydajne, czasami lepiej skopiować podobny szablon i zmienić parę rzeczy, mimo to warto się z nim zaznajomić, ponieważ oszc

Skrypt instalacyjny dla dotfiles

Postanowiłem dodać skrypt instalacyjny dla mojego repo dotfiles . Ustawiłem cztery opcje instalowania: wszystkie pliki tylko vim tylko bash tylko czcionki # instalacja wszystkich plików ./install.sh # (-f, --force) # tylko vim ./install.sh vim # tylko bash ./install.sh bash # tylko czcionki ./install.sh fonts O vima i acka musisz już sam zadbać. To samo się tyczy jeżeli chcesz używać jako colorscheme solarized (dark) w gnome-terminal. Ale wszystko opisałem w pliku README.md , więc nie masz czym się martwić.

Kilka przydatnych aliasów (bash)

Image
Aliasy Codziennie korzystam z dobrodziejstw konsoli. Wpisuję komendy, zapamiętuję, wpisuję nowe, zapamiętuję nowe, itd. Jeśli korzystam z jakiejś komendy dość często robię sobie z niej alias i wrzucam do pliku .bash_aliases  w katalogu użytkownika. Przedstawię aliasy z których korzystam na co dzień i które znacznie ułatwiają mi pracę. Aliasy będę przedstawiał najpierw w formie kodu, później krótki opis i na końcu obrazek jeżeli będzie to konieczne. Uwaga, zaczynam. Katalogi/pliki alias lr='ls -R | grep ":$" | sed -e '\''s/:$//'\'' -e '\''s/[^-][^\/]*\//--/g'\'' -e '\''s/^/ /'\'' -e '\''s/-/|/'\''' W przyjemny dla oka sposób, wyświetla strukturę katalogów (rekurencyjnie). alias ..='cd ..' alias ...='cd ../..' alias ....='cd ../../..' alias .....='cd ../../../..' alias ......='cd ../../../../..' Zamiast wpisywać &q