Рубрика «MacOS»

Каждый день я делал одно и то же: открывал Spotlight, чтобы найти файл или запустить программу, а потом лез в браузер, открывал вкладку с ИИ и вставлял туда вопрос. Два разных места для одного действия — «мне нужно что-то быстро». Захотелось, чтобы это была одна строка: нажал клавишу, напечатал — и если это файл, он открывается, а если вопрос, отвечает нейросеть.

Так появилась Lumi — бесплатная программа с открытым кодом для macOS и Windows. Сделал я её не один, а вместе с ИИ-ассистентом Claude Code: о том, как это было, — в конце статьи.

Что умеет

Одна клавиша на всё. Строка открывается по ⌥ Ё на Mac и Alt+ЁЧитать полностью »

Когда у тебя одновременно работают три-четыре сессии Claude Code и Codex, половина времени уходит на переключение окон: кто закончил, кто ждёт ответа, кто завис. Я сделал маленькое приложение для macOS, которое показывает всех агентов прямо в чёлке MacBook, светится, когда кто-то ждёт, и превращает каждую сессию в человечка в пиксельном офисе. Рассказываю, как оно устроено: хуки Claude Code, чтение журналов Codex без API, офис на SpriteKit, свечение на Core Animation за 0,5% процессора и честная статистика без единого счётчика в приложении.

Зачем

Читать полностью »

На Mac с диском 256–512 ГБ место заканчивается регулярно. Обычный путь известен: открыть анализатор диска, найти самое большое, перетащить на внешний SSD и удалить оригинал. Если разобраться, что при этом ломается, окажется, что ломается много чего, и чаще всего тихо.

Ниже — грабли, которые я собрал, пока писал инструмент для такого переноса, и как их обойти. Всё это пригодится и при переносе руками.

«Скопировалось» ещё не значит «скопировалось правильно»

Finder и cpЧитать полностью »

Мышь на 1000 Гц, экран MacBook Pro на 120 Гц. Я записал одно и то же движение тремя способами сразу. Системный CGEventTap увидел 843,5 события в секунду. NSEvent.mouseMoved в окне обычного Cocoa-приложения получил 118,5, по одному на кадр экрана. GCMouse из GameController отдал 843,6 и в моём прогоне ни о каких разрешениях не спросил. Ниже подробности, 17 строк кода на Swift, рекордер целиком и список того, чего я не проверял.

Всё снято на одной мыши, одном маке и одной версии macOS, по одному прогону на условие.

Откуда вопрос

Читать полностью »

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

Читать полностью »

• Как я оживил LaserJet 1320 и Color LaserJet CP1025 на macOS 27 — разбор по логам CUPS
• “Filter failed” и «legacy USB class driver»: анатомия двух поломок печати на M1

Дано:
macOS 27 на M1, два древних принтера HP, одно и то же сообщение «ПО принтера несовместимо с этим устройством». Выглядит как один диагноз — «драйверов под ARM нет, покупай новый принтер». На деле это две совершенно разные поломки: одна лечится одной командой, вторая не лечится вообще и требует замены драйвера на open‑source. Ниже — разбор по логам CUPS, file, nm и strings, с рабочими решениями для обоих случаев.

Исходные данные

MacBook Air M1, macOS 27.0 (build 26A428). Два USB‑принтера:

Читать полностью »

Новая Siri с Apple Intelligence не работает на системе с русским языком. Не «работает хуже» — её просто нет в настройках. То же самое у поляков, чехов, греков, венгров, израильтян и ещё полутора десятков языков, которые Apple пока не поддерживает.

Я полез разбираться, где именно проходит эта граница, и выяснилось кое-что интересное: macOS проверяет язык системы ровно один раз — при загрузке. Дальше ей всё равно.

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

Читать полностью »

Я играю в Counter‑Strike 2 на MacBook Pro 14 с M3 Pro. Кадров хватает, 100 с лишним в секунду, а прицел всё равно ощущается ватным: мелкие доводки то недолетают, то перелетают. Сначала я грешил на ускорение указателя, потом на лимит кадров, потом на саму игру. Не помогало ничего, и в какой‑то момент я просто записал, как события мыши доходят до приложения.

Замер

Две ленты с одного и того же движения мыши, снятые одновременно:

  • системный тап (CGEventTap) с аппаратными метками времени, то есть то, что на самом деле шлёт мышь;

  • поток NSEvent в окне обычного Cocoa‑приложения, то есть то, что macOS отдаёт программе.

  • Читать полностью »

Мы с женой хотели вместе поиграть в Split Fiction на PS5. Но с английским у нас обоих не очень: понимать диалоги на слух трудно, а хочется следить за историей и слышать реплики на понятном нам языке.

Так появилась идея: пусть MacBook читает игровые субтитры по-русски, пока мы играем на телевизоре. С этого и начался проект.

К телевизору уже была подключена карта видеозахвата с HDMI-входом, HDMI-выходом и USB. Оставалось получить картинку на MacBook, вырезать нижнюю треть экрана, распознать текст и прочитать его вслух. Главное — не повторять одну реплику всё время, пока она висит на экране.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js