shikhalev.org

Рубрикатор

Последние записи

ТехнологииПрограммированиеСофт

2021.09.12 • Иван Шихалев

xbash

Скриншот командной строки с xbash

Давно собирался и таки стартанул пет-проект — https://github.com/shikhalev/xbash.

Навеяно gitsh, который я когда-то активно использовал, но у него были проблемы с русской локалью, новыми версиями Git и так далее. При этом, на мой взгляд, gitsh сильно переусложнен, да и использование Ruby, при всей моей любви к этому языку, тут лишнее. Посему я решил сделать что-то подобное, но попроще, на чистом bash, и более универсальное.

Что делает?

Итак, что этот скрипт (набор скриптов) делает?

  1. Позволяет использовать субкоманды того же git, как непосредственные команды. Помимо git, так же можно коротким образом вводить субкоманды cargo1.

  2. Отображает в приглашении командной строки репозиторий, ветку, путь внутри репозитория и значок статуса (звездочка разных цветов на данный момент). Кроме того, вместо имени локального пользователя показывается e-mail пользователя, под которым идет запись в репозиторий2.

  3. Другие системы управления версиями, сборки и управления зависимостями могут быть добавлены просто и единообразно. Для Mer­cu­ri­al и Ruby­gems планирую сделать, как только руки дойдут.

Стадия разработки пока самая ранняя (хотя я уже пользуюсь и отлаживаю «наживую»), поэтому инсталлятора нет, есть инструкция по ус­та­нов­ке в фай­ле README.md.

  1. Если кто не знает, cargo — это система сборки и управления зависимостями языка Rust. 

  2. Для меня отображение именно пользователя репозитория, а не ло­каль­но­го, довольно существенно, поскольку на дан­ный момент я работаю из до­ма и у ме­ня имеются как личные, так и рабочие проекты, которые нужно вести под раз­ны­ми аккаунтами. 


Читать далее »

Linuxbashcargogitxbashкомандная строкапрограммированиепроекты

Нет комментариев   Добавить комментарий

ФотоОбработкаТехнологииСофтБёрдвотчинг

2021.07.17 • Иван Шихалев

Как я ставлю геометки к фотографиям

Получение трека

Скриншот Locus Map

Фотокамера у меня недорогая, и GPS в ней, конечно, нет. Зато есть в телефоне. Поэтому треки я записываю приложением Locus Map Free (не Pro) — большую часть его возможностей (даже бесплатной версии) я не использую, но треки пи­шет хорошо, меня устраивает. И, кста­ти, весьма скромно использует батарею.

Перед выходом, сразу после проверки заряда во всех устройствах и места на флешке, крайне желательно убедиться, что время на телефоне и в ка­ме­ре — одинаковое. Конечно, при пешем передвижении минутная разница не так существенна, но однажды у меня камера отстала на пять минут, и результаты были для меня несколько внезапны.

Что еще важно для записи трека: дать приложению нужные разрешения для всех режимов — не хо­дить же с постоянно включенным экраном, на котором оно распахнуто. То есть, доступ к мес­то­по­ло­же­нию должен быть «Разрешить в лю­бом режиме», и «Кон­т­роль активности» — «Нет ограничений», при ре­ко­мен­до­ван­ном «Умном режиме» нормального трека получить не удас­т­ся. Что хо­ро­шо — Locus Map проверяет эти разрешения и выдает подсказку, если они не ус­та­нов­ле­ны, не ис­клю­че­но, что именно отсутствие такой подсказки и не позволило мне подружиться с другими приложениями для записи треков.

Трек пишется в GPX-файл, и это хорошо, поскольку данный формат понимают если не все, то очень многие программы, с ко­то­ры­ми нужно взаимодействовать. Я его отправляю прямо из при­ло­же­ния кнопкой шаринга «», из предлагаемых вариантов выбирая KDE Con­nect — архиполезная вещь, хоть и глюч­ная (впрочем, каким путем передать файл на компьютер — непринципиально).


Читать далее »

DarktableEXIFGPSGPSBabelGPXGPXLabHOWTOKDE ConnectLocus Mapexiftoolгеометкигеотегикарты

Нет комментариев   Добавить комментарий

ТехнологииWebПрограммированиеО себе

2021.07.09 • Иван Шихалев

Отчет о рефакторинге

Скриншот с официального сайта Jekyll
Скриншот с официального сайта Jekyll

Итак, я таки отрефакторил и обновил данный сайт. Почему нельзя было сразу делать правильно? Ну, в основном потому, что я впервые имел дело с Jekyll, изрядно подзабыл (а что-то и не знал) базовые приемы верстки… И так далее, и тому подобное.

Вторая (в моем случае) причина — это то, что, как это часто бывает, представление о желаемом результате уточнялось и формировалось в процессе достижения результата просто работающего. Соответственно, решение «исторически сложилось», если вы понимаете, о чем я. Любой проект ставит разработчика перед выбором: или бесконечное (и потому бесплодное) делание «как надо», или движение к идеалу через неидеальные, зато рабочие, варианты, которые, впрочем, без регулярного рефакторинга быстро становятся неулучшаемым и иногда не совсем рабочим болотом.

Но на самом деле этот пост не только, и не столько о рефакторинге как таковом, сколько о технической стороне этого сайта в целом. Благо, сразу после выкатки первого варианта я так технический пост и не написал, желая сначала получше разобраться. Вот, сейчас и пишу о том, с чем разобрался, и о процессе этого разбирательства.


Читать далее »

CSSFont AwesomeGitHubGoogle FontsGoogle MapsHTMLJavaScriptJekyllLiquidPNGSASSSCSSSVGaspect-ratiodisplayflexgridkramdownmarkdownshikhalev.orgstickyблогивеб-шрифтыверсткаграблииконкимедиа-селекторыпробелырефакторингсайтыстатическая генерацияшрифты

Нет комментариев   Добавить комментарий

О себеТехнологииWeb

2021.06.03 • Иван Шихалев

Планирую рефакторинг

Ну, что ж. Общее представление, как должен выглядеть этот сайт у меня сложилось (внешне — примерно как и сейчас). Есть большое желание привести в порядок внутреннее устройство и исправить ряд недочетов, видимых снаружи.

Самое время попросить фидбек: ежели кто видит недочеты, неудобства, баги какие-то… или имеет конструктивные предложения — welcome комментировать, здесь или в соцсетях.

Я в принципе в курсе о проблемах на мобильных, но детали не помешают.

Еще могут быть косяки на старых браузерах… Вот только новая версия скорее всего с ними будет еще менее совместима — думаю на grid’ах сверстать. Кто-то сейчас пользуется старыми браузерами? И если пользуется, то обращает ли внимание на верстку вообще?

Нужно ли что-то менять в рубрикации? Адреса контента от нее не зависят, так что могу себе позволить…

Визуальный дизайн тоже можно попинать, желательно с конкретикой.

shikhalev.orgверсткасайты

Нет комментариев   Добавить комментарий

ТехнологииСофтДыбр

2021.04.29 • Иван Шихалев

Проблема интеграции Firefox с Plasma Desktop

Недавно начал наблюдать пренеприятную штуку: при закрытии одновременно нескольких вкладок Firefox начинает тормозить и жрать память, как не в себя. Уже на десятке-другом вкладок тормоза становятся заметы, а сотня-другая просто отправляет систему в нокдаун на несколько минут. Именно при закрытии, в процессе работы никаких проблем со множеством открытых вкладок у меня так и не возникло.

Я уже было начал задумываться о переходе на Chromium, но заметил, что тормозить начинает не только Firefox, но и графическое окружение DE, то есть KDE Plasma… Итог — отключение расширения Plasma Integration спасло ситуацию. Что там такое между ними происходит, я не очень понимаю.

Надо бы, конечно, поразбираться и написать им баг-репорт, но пока руки не доходят.

PS. При этом я понятия не имею, что вообще это расширение делает. Уведомления в трей Firefox пересылает и без него.

DEFirefoxKDELinuxбраузеринтеграцияокружение рабочего стола

Нет комментариев   Добавить комментарий

ЖизньОбществоПолитикаТехнологииСофт

2021.04.08 • Иван Шихалев

Ричард Столлман как отражатель мировой революции

График подписавших письма за и против Столлмана
График подписавших письма за и против Столлмана на момент написания этого поста

Сообщается, что GNOME Foundation, KDE e.v, Tor Project, the EFF, OBS Foundation, Red Hat, SUSE, Mozilla и X.org Foundation опубликовали заявление, в котором выразили благодарность всем, кто принял участие в проведённой ими кампании по травле 68-лет­не­го человека с синдромом Аспергера, которая довела бы боль­шин­с­т­во других людей до самоубийства. В заявлении также выражается благодарность всем принявшим участие в рас­прос­т­ра­не­нии культуры отмены, кампании по травле и самосуде.

(первоапрельская шутка)1

Происходящее сейчас с Ричардом Столлманом и Фондом свободного ПО (Free Software Foundation — далее FSF) не слишком заметно людям, далеким от этого самого свободного ПО, точнее далеким от его разработки, поскольку пользуются им на данный момент так или иначе почти все. И те перемены, которые сейчас происходят, или хотят произойти, коснутся так или иначе почти всех. О серьезности ситуации позволю себе процитировать себя же2:

Можно возразить, что уж кто-кто, а FSF свободу ПО ущемлять не будет, но не всё так просто. Во-первых, где гарантия, что вместо фанатичных, но всё же вменяемых, гиков к руководству фондом не придут какие-нибудь упоротые и не забабахают неприемлемую для зависимых проектов, а главное — несовместимую с приемлемыми, новую лицензию? Во-вторых, где гарантия, что по глупости, или злому умыслу, FSF внезапно не случится банкротом, и его «интеллектуальная собственность» не пойдет с молотка?

И вот теперь мы наблюдаем смену руководства Фонда СПО (это уже кроме собственно Столлмана): сначала ушел исполнительный директор John Sullivan3, затем заместитель директора John Hsieh и технический директор Ruben Rodriguez4. Каким будет новое руководство, какие цели оно будет ставить, и во что превратится Фонд, имеющий возможность единым махом сменить лицензии на весь софт проекта GNU, — все это сейчас неизвестно. Понятно, что ничто не вечно под луной, но тут мы наблюдаем не естественную эволюцию, а переворот (если не рейдерский захват, о чем далее), и с преемственностью политики Фонда могут быть проблемы.

Ниже я попробую описать ситуацию достаточно подробно для тех, кому аббревиатуры RMS, FSF и GNU ничего не говорят.


Читать далее »

FSFFree SoftwareGNURMSРичард Столлманморальная паникановая этикасвободное ПО

4 комментария   Добавить комментарий

ТехнологииСофт

2021.03.24 • Иван Шихалев

Ввод «типографских» символов с клавиатуры (ed. 2021)

Раскладка клавиатуры с третьим и четвертым уровнями

Оригинал этого поста в «Технобложике» оказался самым популярным материалом — на него заходят и заходят из поисковиков, ссылаются на форумах и так далее. Поэтому к его переносу я подошел максимально ответственно, перепроверив все рекомендации в современных дистрибутивах и внеся дополнения. Таким образом, этот пост получил некоторую добавочную ценность к оригиналу. Особенно совершенно новый раздел о том, как можно добавить свои собственные символы в раскладку.

На эту тему в интернетах написано немало. Я лишь хочу в этом посте собрать и обобщить некоторую часть информации, чтобы рекомендовать друзьям – новичкам в Linux. Итак, этот пост для тех, кто работает с текстом в Linux, дабы они поняли свое счастье.

Вообще говоря, ввод каких бы то ни было символов с клавиатуры можно организовать разными путями, некоторые из которых (например, определение собственной раскладки) доступны и в оффтопичной системе от MS. Однако, удобных способов существенно меньше. Собственно, я буду говорить о двух, простых как в использовании, так и в настройке: «третий уровень» и Compose Key.


Читать далее »

GNOMEKDELinuxXfceклавиатурасимволы

Нет комментариев   Добавить комментарий

ТехнологииПрограммированиеRust

2021.03.16 • Иван Шихалев

Небольшой подводный камень в Rust

Обнаружил тут некоторый подводный камень в стандартной библиотеке Rust. Багом это назвать, конечно, нельзя, просто такой момент, где можно по собственной невнимательности наступить на грабли и не сразу это заметить, что нехарактерно для Rust.

Опасность подстерегает нас, когда мы читаем данные из файла посредством std::​fs::​File.read()1, не используя при этом std::io::BufReader2, а самостоятельно выделяя блок памяти и читая в него.

Подводный камень тут вот в чем, цитирую документацию:

if n is 0, then it can indicate one of two scenarios:

  • This reader has reached its “end of file” and will likely no longer be able to produce bytes. Note that this does not mean that the reader will always no longer be able to produce bytes.
  • The buffer specified was 0 bytes in length.

Подчеркивание мое. Итак, если мы передаем методу read() буфер нулевой длины, то результат будет ровно тот же самый, что и если мы достигли конца файла, т.е. Ok(0).


Читать далее »

грабли

Нет комментариев   Добавить комментарий

О себеТехнологии

2021.03.15 • Иван Шихалев

Допинал комментарии

В общих чертах настроил систему комментариев, можно пользоваться.

Работает это все через Staticman, что означает коммит комментариев в репозиторий на GitHub с последующим рендерингом на стороне Pages… Ну, то есть, небыстро это работает. От отправки комментария до его появления на странице может пройти пара минут. Подгрузка комментариев на уже открытой странице тоже есть, но функционирует не всегда… В общем, иногда лучше подождать и понажимать F5.

С другой стороны — есть время подумать, а чятики никто и не обещал.

Принципиальных изменений в этой части, пожалуй, не будет, а вот отрефакторить бы не мешало. Хотя бы чтоб не краснея написать об этом технический пост.

upd: Редактирования комментариев, конечно, нет (потому что нет никаких логинов и регистраций), имейте в виду.

upd2:1 Обнаружился невезучий спам-бот, который спокойно прошел капчу, но не заметил автозаполнения скрытого поля посредством JS…

  1. 2021.03.29 

shikhalev.orgкомментариисайты

Нет комментариев   Добавить комментарий

О себеЖизньТехнологии

2021.03.10 • Иван Шихалев

И махнул рукой... ©

Настоящим постом объявляю сайт shikhalev.org действующим!

Пока перенос со старых площадок не завершен, но уже как-то дублированием заниматься не хочется. Собственно, из ЖЖ я перенес все, что планировал, а вот с Технобложика еще есть, чего утащить… Но новые посты будут появляться уже здесь. И они скоро будут.

Чего не будет: поскольку я использую бесплатные возможности хоститься, не будет фотографий, по крайней мере, в количествах. Не будет мелких записей с актуальностью в один день, поскольку для них имеются социальные сети.

Система комментариев здесь рабочая, но пока не отлажена — могут быть косяки, особенно в части капчи… Ну, на персональной страничке можно и на проде поотлаживать. Вообще, какие-то вещи будут в ближайшее время дорабатываться и меняться, но, очень надеюсь, не будут меняться адреса страниц, т.е. уже можно ссылаться.

Поехали!

shikhalev.orgблогисайты

Нет комментариев   Добавить комментарий