Любимият ми текстови редактор е Geany. Той е много минималистично IDE което поддържа огромен набор от езициshell, php, python, Cetc. Има си автоматично довършване и същевременно е адски пъргаво. Липсват му някоя и друга приятна възможност но и към момента за мен е повече от напълно достатъчен. Започнах да online курса Python Programming на SoftUniда си освежа познанията и да ги надградя тъй като не съм следил адекватно какво се случва с python 3. Лекторите от курса препоръчват PyCharm като IDE за pyton програмиране, но на мен далеч не ми е по вкуса, естествено си използвам Geany за упражненията.

По време на лекциите болезнено усетих 2 липси

  1. python autocomplete-а издиша от към документация на функции и методи
  2. няма валидация за pep8 стандарта

Хубавото е че Geany е достатъчно гъвкав от към конфигурация и може лесно да бъде допълван от към липсващи такива. Нека да добавим python документация към нашето IDE:

  • дърпаме си следният скрипт някъде в нашият PATH например /usr/bin като не забравяме да го направим изпълним
  • редактираме файла ~/.config/geany/filedefs/filetypes.python като в частта settings добавяме следният ред context_action_cmd=pydocw %s. Ако съществува само добавяме името на бинарката от предишната стъпка. Рестартираме Geany ако е пуснат.
  • Вече имаме context-action който ще ви извади информация за функцията. Аз си добавих shortcut за да ми е по удобно като не ми е ясно някоя функционалност. Лич мен този подход много ми допада защото много ме дразни netbeans подхода.

До тук добре. След това много ми се прииска да имам валидация на кода който пишадали го пиша според общо приетите стандарти или пиша някакви грозотии. В общи линии намерих отново туториалче как се случват нещата но то е малко остарялоGeany си има всичко вградено в себе си само трябва да му се инсталира pep8 пакета. В Debian apt-get install pep8 върши работа в останалите дистрота сами трябва да откриете как се случва магията. В менюто Build вторият бутон (поне при мен) е Lint след кликването му ще откриете колко грозен код сте сътворили 😀

Screenshot from 2016-01-11 20-42-21

Това е общи линии как да накарате вашият Geany да работи по добре с Python и същевременно да продължи да бъде бърз без да кара процесора ви да иска да си тегли куршума.

malmon е един изключително интересен нов проекткато цяло е замислен за защита на хостинги сървъри от зловреден софтуер на него, създаден от моя приятел и linux guru ShadowX. Да поясня какво точно се има на предвиднищо не пречи да си метнете на кои хостинг едно приятно c99 шелче да речем и ако е не достъчно добре настроена файловата система нищо не пречи на злия хахор да докопа шел достъп. Като цяло идеята на malmon е точно така да следи качването на такива приятни мизерии и да ги премества в карантинна директория различна от document root-a. Принципа на които работи е доста приятенследи за създадени нови фаилове в папка която е настроен да гледа софтуера и при наличие на някои фаил кото съвпада с определени сигнатури го препраща към вечните ловни полета. Нещо като антивирусен софтуер 😉 Скрипта е написан на python което го прави лек, бърз и гъвкав. За да следи за създадени нови файлове използва относително новия механизъм на ядрото inotify. Въпреки че все още скрипта не е официално стабилна версия от 3 дни не съм имал проблеми на един порядъчно натоварен сървърединия от сайтовете там е в топ 100 на tyxo 😉

Мога да продължа да наливам сухи статистики и обяснения на дълбоко как работи кода, но няма да го направя. По скоро ще ви призова да го сваляте тествате и ако имате предложения да пишете на автора 😉 Ако видите бъгове пак му пишете хора сме грешим и е добре да се подкрепяме. Наздраве!