14 Октября 2020
8439

Как раскрываются секреты )1

Сели с малой дочей на кухне, играть в морской бой. Разрисовали поле, расставили корабли. Заходит супруга, проходит к холодильнику позади меня. Краем взгляда отмечаю, что доча ей подмигивает. Супруга уходит и кричит из комнаты: «-Доченька, принеси маме пульт от телевизора, оставила на кухне». Пока они в комнате анализируют данные разведки, я быстро перерисовываю поле. Малая возвращается и с энтузиазмом начинает «лупить» по вертикали «А» из всех орудий. Логично, у меня ведь там, до перерисовки, размещались два трудноуловимых однопалубника. Пока она бьет в пустоту, я методично громлю весь ее флот. Полными непонимания глазами смотрит на мое «новое-честное» поле и, на вхолостую пробитую А1-А10….Начинаю громко смеяться: «-Что, поняла, что папу нехорошо пытаться обмануть?»…Доча открыла рот и, по выражению лица, было видно, что пытается осмыслить происходящее…наконец восклицает: «-Так вы с мамой, что, сговори-и-ились?!?»…(оп-паньки, неожиданный вывод!)))... Многозначительно смеюсь дальше….«-Ах так!!! А мама вчера курила!!!... на балконе и на улице!!!»…. В общем, супруга в этот вечер тоже узнала, что меня обманывать нехорошо. Всем - добра и честности в семье!)))

9849

Кругом одни евреи )))1

Не мое. Со слов друга.

Жил у него в свое время в кабинете крыс. Изя. Великой интеллигентности было существо. Как то приперся их криминалист, Арон Израйлевич, когда узнал, что Изю зовут Изей задал вопрос

- Михаил, как ви таки можите, называть животное человечьим именем?

- Да вот как то так вышло, плохого от него нет, только тащит все к себе в шкаф, прямо как наш бывший старшина.

Израйлевич подумал. подумал, погладил некошерное существо, и потом приходя всегда делился с Изей то сушкой, то сухариком с изюмом.

А после того, как Изя притащил из своей заначки и положил перед ним спертую у кого то сигарету, глядя на крыса сказал

- Вот в глазах его прямо таки вся боль еврейского народа, когда ему приходится делиться...

174

Собираем кастомную механическую клавиатуру, часть 3: Прошивка

Собираем кастомную механическую клавиатуру, часть 2: Практика

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


Так что же такое QMK – это ПО с открытым исходным кодом для создания прошивок для клавиатур, которые ее поддерживают. Ну скажем это примерно тоже самое что купить телефон на Android и иметь возможно поставить на него различные LineageOS или CyanogenMod, а также самому дорабатывать данные прошивки.


Начнем, пожалуй с простого – откроем онлайн конфигуратор по ссылке https://config.qmk.fm/ и выбираем в списке PCB нашу YD60MQ/16led

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


Клавиши, которые вы можете установить через конфигуратор:

Разберем некоторые возможности на примере моей конфигурации. На нулевом слое у нас нет ничего не обычного, разве что MO (1) и MO (2). Это значит, что при нажатии на эту кнопку клавиатура переходит на слой 1 и 2 соответственно, ну то есть вполне понятный всем FN при отпускании кнопки мы снова вернемся на нулевой слой.

На первом слое у нас стоит управление громкостью и плеером на курсорных клавишах и вот только сейчас заметил, что повесил на две кнопки Play который является в тоже время и Pause, ну это первоначальные наброски, всегда можно переделать, треугольных стрелочках листание треков в плеере. На левой кнопке клавиатуры у нас можно сделать скриншот, открыть калькулятор, мой компьютер и управление колесиком мыши чтобы не тянуться за мышкой, когда читаешь длиннопосты на пикабу. Куда интереснее что такое C_S_T и TG. C_S_T я не совсем верно понял, при нажатии на F1 у нас будет F1, но если клавишу слегка удержать то сработает CTRL+SHIFT, когда я прописывал этот конфиг то думал что сработает CTRL+SHIFT+F1, но ошибся. Конечно, можно сначала зажать допустим F2, а потом нажать F1 и тогда получится то, что требуется, но зачем такие сложности? К сожалению, онлайн конфигуратор не позволяет сделать то, что я хотел, но полноценный QMK это позволяет и я напишу о том, как это сделать чуть ниже. Кнопки TG полностью переключают всю раскладку на указанный слой, то есть слой меняется ‘на всегда’, пока пользователь не переключит ее через TG на другой слой. Очень важно разместить на клавиатуре кнопку ‘RESET’, она нужна чтобы перевести клавиатуру в режим прошивки.

На третьем слое исключительно кнопки управлением подсветки.

На четвертом слое у меня тоже самое что на нулевом, но часть клавиш заменена на нампад. Почему-то если я устанавливал привычный MO, то он не срабатывал, и я не мог переключиться на нулевой слой обратно, так что поставил вместо него TO, не совсем понимаю, чем они отличаются. Если кто-то знает, то напишите в комментариях.

Ну и пятый слой так же повторяет первый, но часть клавиш заменены на управление мышкой, а вдруг она откажет? Управлять кстати вполне удобно, но в контру, наверное, особо не поиграешь.

Онлайн конфигуратор имеет и другие функции, например смена местами CTRL и CAPS LOCK и подобное, но в сравнении с полноценным QMK они всё же малы.

Итак, все что хотелось из того, что позволяет онлайн конфигуратор мы накрутили, скачиваем теперь JSON файл, он нам понадобится в дальнейшем. Жмем кнопку “Cкомпилировать”, ждем пока в космосе прокрутится картошка, после чего жмем кнопку “Прошивка” и сохраняем hex файл прошивки. Теперь скачиваем QMK Toolbox – программу для заливки прошивки на клавиатуру. Выбираем в ней наш hex файл, переводим клавиатуру в режим прошивки (стандартное расположение кнопки RESET обычно пишут в документации к PCB, у YD60MQ по умолчания она прописана на FN+ESC), выведется желтая надпись о том, что устройство подключено. Жмем кнопку FLASH, две секунды и можно пользоваться клавиатурой.

QMK – расширенные возможности


Онлайн конфигуратор имеет крайне урезанный функционал относительно полноценного QMK. Для того чтобы им воспользоваться, нам нужно его установить. Инструкция по установке для разных платформ описана в официальной документации, в качестве примера приведу установка для WINDOWS, так как я сижу именно на нем.

Для начала нам нужно установить MSYS, но после установки не запускать msys2.exe, а запустить mingw64.exe (либо mingw32.exe).

Вводим последователь три команды:

pacman --needed --noconfirm --disable-download-timeout -S git mingw-w64-x86_64-toolchain mingw-w64-x86_64-python3-pip

python3 -m pip install qmk

qmk setup

После этого QMK будет установлен, у меня он работал после этого криво (при компиляции файлов прошивки возникали ошибки с тарабарщиной), но после команды “qmk doctor” всё встало на свои места.

Чтобы не делать двойную работу конвертируем скачанный ранее наш .json файл с помощью команды “qmk json2c наш_файл.json -o keymap.c”. Вводим команду “qmk new-keymap” после чего вводим название нашей PCB, в моем случае “yd60mq” и название для нашей раскладки, в моём случае это будет например “dsio”. Скидываем сгенерированный нами файл keymap.c по пути "C:\Users\%ИМЯ ПОЛЬЗОВАТЕЛЯ%\qmk_firmware\keyboards\yd60mq\keymaps\dsio" с заменой. Теперь приступим к его редактированию, при открытии он будет выглядеть примерно так:

Для лучшей читаемости лучше его немного отформатировать, для примера так:

Что же мы тут можем сделать. Для начала, например с помощью такой незамысловатой конструкции мы можем повесить вызов CTRL+ALT+DEL:

Ранее я писал о том, что немного спутал задачу команды C_S_T, так давайте же исправим её. Для начала исправим наши C_S_T(KC_F1) на просто KC_F1, с остальными так же. И напишем небольшой макрос:

Итак, с помощью данного макроса у нас при нажатии на F1 (и другие F клавиши) и ESC будет срабатывать непосредственно F1 и ESC. Но если клавишу чуть удержать, то сработает CTRL+SHIFT+F1 и CTRL+SHIFT+ESC (вызов диспетчера задач) соответственно. Таким же образом я добавил блок (на скриншоте обведет красным) который при небольшом удержании знака точки в русской раскладки добавлял к ней SHIFT, превращая её в запятую.

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

Вставляем эти клавиши на нашу раскладку:

Прописываем сам макрос:

Этот макрос правда имеет недостаток, если в системе в данный момент выбрана русская раскладка, то соответственно пусть к программе будет введен на русском языке и программа не запустится. Сам же результат работы макроса можно увидеть на этом видео:

Так же редактированию можно подвергать и другие файлы, например в yd60mq.c парой каталогов выше изменив строчку “writePin(F4, !led_state.caps_lock);” на “writePin(F4, led_state.caps_lock);” можно добиться того чтобы лампочка CAPS LOCK горела когда он находится не в активном состоянии, а напротив в неактивном.


Так как у меня на PCB находится 16 rgb светодиодов, но существует так же версия этой платы на 12 светодиодов. То не лишним будет в файле rules.mk изменить строчку “DEFAULT_FOLDER = yd60mq/12led” на “DEFAULT_FOLDER = yd60mq/16led”.


Итак, после всех тех веселых вещей что мы реализовали, надо бы как-то теперь это всё скомпилировать. Делается это просто, выполняем команду, содержащую название нашей платы и раскладки:


qmk compile -kb yd60mq -km dsio


Если всё хорошо, то мы увидим множество [OK]. Если же где, то мы допустили ошибку, то компилятор нам намекнет, где нам её искать и соответственно hex файл на выходе мы не получим.

Прошивка данным hex файлом идёт через QMK Toolbox и полностью аналогична прошивке hex файлом полученным из онлайн конфигуратора.


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


Я сам его изучал буквально 1-2 вечера, так что знаю пока крайне мало, возможно чуть позже продолжу его изучение и напишу еще один пост. Если кто-то знает хорошую русскоязычную документацию, буду благодарен за ссылку.

Показать полностью 19 1
120

Когда не ясно, идешь ли ко дну или летишь в небо...

В южноафриканском заповеднике — парке Крюгера — туристам удалось снять разношерстную встречу диких обитателей саванны: на кадры видеозаписи попала стая гиеновидных собак, пятнистые гиены, бегемот и импалы (африканские антилопы средней величины).

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


Пришедшие гиены отобрали эту импалу у голодной стаи собак.


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


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


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


Источник


P. S. Скорее всего, бегемот съест мужественную антилопу...

Бегемоты - мясоеды. Международная группа ученых подтвердила, что гиппопотамы иногда едят плоть. Раньше эти животные считались травоядными.

Отсюда

Показать полностью
265

Везунчик

Работал я работу. Первое время все хорошо, график 2 на 2. И тут мой напарник увольняется, за две недели, как положено. Но никого не нашли. Начальство естественно просит поработать за него, пока они ищут замену. Окей, ладно - ебашил почти без выходных, один-два раза в неделю мне давали отдохнуть, прийти в себя - и снова ебашить. Платили за подработки исправно, грех жаловаться. И вот мне находят нового напарника - я уж обрадовался. Но он сука поработал неделю и забухал. Угадайте, кто будет ебашить днями напролет? Спустя пару недель находят нового напарника - этот и недели не продержался - не хотел работать, и естественно, получил поджопник. И так далее - ни один мой напарник больше двух месяцев не проработал - а их было человек 7-8. От бесконечных подработок рожа уставшая, грустная, заебанная. Увидел в один день ее в отражении и решил - пошло оно нахуй, увольняюсь. Написал заявление, в конце нашли сразу двух ребят на мое место - я их обучил, со мной рассчитались. И все - свобода!! Год спустя встретил одного из этих двух на улице:
- Ну чё, как работа?
- Да так, потихоньку.
- А напарник твой старый как, не ушел?
- По прежнему со мной, вместе фигачим.
- Ебать, ты везунчик)

64

Автоледи

Пишу первый раз , поделиться эмоциями, так сказать.
Тёплым осенним деньком я поехала получить маникюр домой к своей знакомой.
Во дворе заняла одно из трёх возможных парковочных мест и отправилась на процедуру. На часах было 15.00
Мы немного заболтались, помимо этого разрядился телефон и я поторопилась домой. В 18.00 выйдя из подъезда я обнаружила, что моя и соседняя машины подперты неким фольцвагеном. Телефон сел, в ГАИ позвонить не могу , домофон у знакомой не работает. Постучать по колёсам не мой вариант, поэтому я просто включила громко музыку и решила посигналить. Я была уверена , что в данной 9тиэтажке все друг друга знают и как-то отреагируют
Первым, после 2х песен радио "Искатель" повозмущаться вышел мужик в кожаной куртке, который "Уже лег спать , а ты тут с музлом"+ перегар.
Параллельно я остановила машину во дворе и попросила позвонить в гаи, на что услышала "А, это Леночки машина, я сейчас ей наберу"
Кожаная куртка продолжала стучать в окно моей машины и утверждать , что здесь нельзя парковаться не жителям дома. Никакого знака, листочка с информацией или просьбой я не увидела , на что было сказано "Во, заборчик видишь? Нам поставили. Это наш дом, парковаться нельзя"
Потом он начал орать и за меня вступился молодой крепкий парень. Оценив обстановку я решила, что Леночка скоро выйдет , заступник молодец, но игра не стоит свеч и сказала, что все хорошо.
Минут через 20(но мне показалось вечность, так как кожаная куртка стучал в окно каждые 5 секунд) Леночка вышла . Сказала, что тут парковаться нельзя и она ничего не нарушает. Леночке около 50 , худая, бледная, и , видимо, одинокая.
Я сказала, что я бы с радостью вызвала сотрудников и они решили проблему, но сел телефон, на что Леночка ехидно улыбнулась и сказала "Вызывайте "
Я попросила ценить свое и мое время, сказала, что я врач, но Леночке было все равно " А мне что, я дома" Я пошла до тротуара , где попросила у первой встречной набрать 112 и соединить с ГАИ. Там я кратко объяснила ситуацию , на что услышала "После ДТП приедут, ждите"
Вернувшись к машине эти слова я передала Леночке и кожаной куртке. Он каждые три минуты считал своим долгом спросить где гаи, потом предложил мне позвать "братков", я сказала, что на провокации не поведусь.
Если не описывать дальше минут 40 ожидания и диалоги с кожаной курткой - я пошла до ларька за кофе, еще раз стрельнула телефон, написала в вк друзьям ( несколько людей на это просьбу откащали) позвонила ГАИ - сказали скоро будут. Подошла обратно , а машины тётеньки нет и она на лавочке улыбается.
На часах было 19.35. Я уточнила почему она убрала машину "Соседу выехать"
Я решила ждать ГАИ , так как за 1.5 часа пропустила все, что могла. Телефон,кстати, все это время стоял в зарядке и даже не включался.


Я села в машину и начала реветь ! Я редко плачу, но я не поняла какого полового органа какая-то неизвестная мне женщина решила запереть меня на полтора часа , а потом с царского плеча дать вольную. Как? Что ей сделали люди. Человек сидел полтора часа и смотрел как я сижу и жду . Меня накрыло волной . Приехали знакомые, сказали уезжать так как ни регистратора, ни камер, ни фото и она отъехала. Ни разу в жизни не мстила, но сегодня хотела заказать ей бетонный блок, чтобы она никогда оттуда не выехала.
Вот так. Выговорилась.
Мораль такова: осеннее обострение - штука тяжёлая. Берегите себя и своих близких.

Показать полностью
Мои подписки
Подписывайтесь на интересные вам теги, сообщества, авторов, волны постов — и читайте свои любимые темы в этой ленте.
Чтобы добавить подписку, нужно авторизоваться.

Отличная работа, все прочитано! Выберите