Как стать автором
Обновить
76
0
Храбров Дмитрий @DeXPeriX

Программист

Отправить сообщение

Jackett + Synology Download Station

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров8.5K

Есть желание добавить в Synology Download Station возможность искать по 613 торрент трекерам? Хочется видеть, какие именно торренты будут загружены? Хочется чтобы оно работало и в мобильном приложении?

Тогда прошу под кат!
Всего голосов 7: ↑6 и ↓1+5
Комментарии14

Миниатюрное десктопное GUI приложение на PHP — 2 МБ хватит для всех

Время на прочтение6 мин
Количество просмотров17K

Я часто заморачиваюсь на тему минимизации размера своих GUI приложений. Прошлая моя статья была про Nuklear. Но сейчас захотелось более современных технологий. Чтоб HTML5, CSS3 и PHP. Чтоб приложение ни от чего не зависело, т.е. построено по принципу "всё включено". И чтоб конечный размер приложения не превысил 2 МБ. Получится ли?

В Linux я часто пользуюсь утилитой df. Мне её очень не хватает в Windows, а искать аналоги лень. Так что было сделано волевое решение сделать свою, на РНР 5, с бутстрапом и JQuery.

Читать далее
Всего голосов 25: ↑24 и ↓1+31
Комментарии58

Nuklear+ — миниатюрный кроссплатформенный GUI

Время на прочтение6 мин
Количество просмотров19K

Nuklear+ (читается как "Nuklear cross", значит "кроссплатформенный Nuklear") — это надстройка над GUI библиотекой Nuklear, которая позволяет абстрагироваться от драйвера вывода и взаимодействия с операционной системой. Нужно написать один простой код, а он потом уже сможет скомпилироваться под все поддерживаемые платформы.


Я уже писал на хабре статью "Nuklear — идеальный GUI для микро-проектов?". Тогда задача была простой — сделать маленькую кроссплатформенную утилиту с GUI, которая будет примерно одинаково выглядеть в Windows и Linux. Но с тех самых пор меня не отпускал вопрос, а можно ли на Nuklear сделать что-то более-менее сложное? Можно ли целиком на нём сделать какой-нибудь реальный проект, которым будут пользоваться?

Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии7

Продвинутый Jekyll

Время на прочтение10 мин
Количество просмотров51K

Jekyll — генератор статических сайтов. Это означает, что на вход ему даётся какая-либо информация, а на выходе получается набор HTML-страничек. Всё отлично когда сайт простой или даже одностраничный. Но что насчёт более сложных сайтов? Справится ли Jekyll? Будет ли удобно?


Данная публикация — попытка обобщить знания, полученные при создании нескольких веб-сайтов. Поэтому оставляю ссылки и на рабочие примеры, и на их полные исходники на GitHub. Уровень материала идёт от простого к сложному.

Читать дальше →
Всего голосов 30: ↑28 и ↓2+26
Комментарии19

Читаем tar за 26 строк ANSI C кода

Время на прочтение5 мин
Количество просмотров20K

Архиваторы — это страшно! Огромные и ужасные алгоритмы, которые обычному человеку никогда в жизни не понять! Rar, zip, gzip, tar — современные стандарты де-факто, а значит крайне сложные и навороченные штуки, которые и пытаться понять не стоит. Ну, tar выглядит попроще, может там всё не так сложно? Смотрим git с исходниками. Видим десятки файлов, многие на десятки килобайт. Мда. Видимо, тупик.


__________________|      |____________________________________________
     ,--.    ,--.          ,--.   ,--.
    |oo  | _  \  `.       | oo | |  oo|
o  o|~~  |(_) /   ;       | ~~ | |  ~~|o  o  o  o  o  o  o  o  o  o  o
    |/\/\|   '._,'        |/\/\| |/\/\|
__________________        ____________________________________________
                  |      |dwb

На самом деле всё не так сложно. В документации было описано, что tar — просто способ записи нескольких файлов на ленту. Т.е. всё должно быть просто. По факту — набор вспомогательной информации для каждого файла и непосредственно его содержимое. Именно понимание этого факта и позволило сделать читатель tar-файлов в 26 строк.

Читать дальше →
Всего голосов 63: ↑57 и ↓6+51
Комментарии34

Nuklear — идеальный GUI для микро-проектов?

Время на прочтение7 мин
Количество просмотров66K

Nuklear — это библиотека для создания immediate mode пользовательских интерфейсов. Библиотека не имеет никаких зависимостей (только C89! только хардкор!), но и не умеет создавать окна операционной системы или выполнять реальный рендеринг. Nuklear — встраиваемая библиотека, которая предоставляет удобные интерфейсы для отрисовки средствами реализованного приложения. Есть примеры на WinAPI, X11, SDL, Allegro, GLFW, OpenGL, DirectX. Родителем концепции была библиотека ImGUI.


Чем прекрасна именно Nuklear? Она имеет небольшой размер (порядка 15 тысяч строк кода), полностью содержится в одном заголовочном файле, создавалась с упором на портативность и простоту использования. Лицензия Public Domain.

Читать дальше →
Всего голосов 109: ↑107 и ↓2+105
Комментарии80

Что ещё можно делать на e-ink книге с Android

Время на прочтение4 мин
Количество просмотров106K
Как-то просидев очередные сутки за компьютером я понял, что не могу дальше работать, т.к. болят глаза. Обычно мне хватает несколько дней отдыха и я снова в строю. Но эти несколько дней надо прожить почти без компьютера и не пялиться в мобильный телефон.

Но отказаться от компьютерной техники в целом не получается, зависимость требует новую дозу! Тут и могут помочь устройства с E-ink экраном — от них глаза не болят. Уже год, как использую Nook Simple Touch. На нём сразу установлен Android 2.1 с кучкой самописанных программ от Barnes & Noble. После рутирования получается хоть и старенький, но полнофункциональный и полный андроид. В качестве примера дальше будет использоваться Nook, однако по аналогии можно сделать аналогичные действия на любой другой книге с Android. Итак, что же можно эффективно делать на читалке, какие именно приложения оказались наиболее полезными?
Читать дальше →
Всего голосов 50: ↑42 и ↓8+34
Комментарии77

QtCreator: Qt кросс-компиляция из linux 64 в linux 32, win32, win64 и Mac OS X; upx, usb, dmg, etc

Время на прочтение14 мин
Количество просмотров81K


Библиотека Qt позволяет делать действительно кроссплатформенные приложения. Единожды написанный код можно откомпилировать под многие операционные системы. Но проблема именно в слове «компилировать», т.к. подразумевается, что необходимо перезагрузиться под целевую систему, иметь в ней настроенную среду разработки, установленный и настроенный зоопарк библиотек. Спасает кросс-компиляция — компиляция, производящая исполняемый код для платформы, отличной от той, на которой исполняется.
Читать дальше →
Всего голосов 59: ↑57 и ↓2+55
Комментарии24

Vim и переключение раскладки клавиатуры

Время на прочтение2 мин
Количество просмотров25K
Все команды Vim нужно вводить на английском языке. Если основной текст вводится на каком-либо другом языке, то это представляет из себя проблему, т.к. нужно часто переключать раскладку. Одно из решений представлено тут, однако оно заставляет привыкать к новой горячей клавише для переключения раскладки. Так же существует множество платформенно-зависимых решений с вызовом тех или иных утилит. Целью плагина vim-xkbswitch является предоставить единое поведение для многих операционных систем и языков.
Читать дальше →
Всего голосов 24: ↑23 и ↓1+22
Комментарии17

Vim в Windows и переключение раскладки клавиатуры

Время на прочтение2 мин
Количество просмотров9.3K
UPD: Это «историческая» версия топика. Новое решение проблемы смотреть здесь.

Проблема русской раскладки в Vim поднималась много раз. Одно из решений можно увидеть здесь, однако оно заставляет привыкать к новой горячей клавише для переключения раскладки. Также существует множество решений с вызовом системной утилиты для смены раскладки, но под Windows подобной утилиты не нашел, так что пришлось реализовать её самостоятельно.
Читать дальше →
Всего голосов 11: ↑7 и ↓4+3
Комментарии9

Асинхронная загрузка изображений в скрытом iframe: подводные камни

Время на прочтение3 мин
Количество просмотров7.8K
Недавно пришлось делать загрузчик фотографий на сервер. Поскольку опыт использования сторонних скриптов уже был, а время на их доработку часто было больше времени на разработку скрипта с нуля, то было принято решение сделать загрузчик самостоятельно.

При обращению к гуглу выдаёт много статей по загрузке файлов через iframe. Алгоритм в общем сводится к:
1) Создаём скрытый фрейм (обычно просто обнуляется ширина и высота через HTML и CSS свойства)
2) Устанавливаем action формы в имя фрейма.
3) Отправляем файл. Радуемся.

Для удобства использования отдельная кнопка «Начать загрузку» не создавалась, а был повешен обработчик onChange для файлового input'a.

Читать дальше →
Всего голосов 45: ↑36 и ↓9+27
Комментарии32

Информация

В рейтинге
Не участвует
Откуда
Brno, Jihomoravsky Kraj, Чехия
Дата рождения
Зарегистрирован
Активность