惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
AI
AI
博客园 - 三生石上(FineUI控件)
腾讯CDC
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Y
Y Combinator Blog
大猫的无限游戏
大猫的无限游戏
H
Hackread – Cybersecurity News, Data Breaches, AI and More
雷峰网
雷峰网
NISL@THU
NISL@THU
S
Schneier on Security
T
Threatpost
T
Tenable Blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
IT之家
IT之家
宝玉的分享
宝玉的分享
T
Tailwind CSS Blog
C
Cybersecurity and Infrastructure Security Agency CISA
P
Privacy & Cybersecurity Law Blog
I
Intezer
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
T
Threat Research - Cisco Blogs
SecWiki News
SecWiki News
AWS News Blog
AWS News Blog
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
P
Proofpoint News Feed
V
V2EX
Recorded Future
Recorded Future
Microsoft Security Blog
Microsoft Security Blog
S
Secure Thoughts
Google DeepMind News
Google DeepMind News
MongoDB | Blog
MongoDB | Blog
Apple Machine Learning Research
Apple Machine Learning Research
Project Zero
Project Zero
PCI Perspectives
PCI Perspectives
G
GRAHAM CLULEY
Help Net Security
Help Net Security
Cloudbric
Cloudbric
Recent Announcements
Recent Announcements
V
Visual Studio Blog
Hacker News: Ask HN
Hacker News: Ask HN
N
News and Events Feed by Topic
C
CERT Recently Published Vulnerability Notes
The Cloudflare Blog
Forbes - Security
Forbes - Security
C
Cisco Blogs
O
OpenAI News
www.infosecurity-magazine.com
www.infosecurity-magazine.com

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
Скульптурные кейкапы: зачем клавише своя геометрия
Ergohaven · 2026-04-29 · via Все публикации подряд на Хабре

Скульптурные кейкапы: зачем клавише своя геометрия

Уровень сложностиПростой

Время на прочтение7 мин

Охват и читатели360

Кейс

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

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

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

Скульптурные кейкапы на эргономичных клавиатурах

Скульптурные кейкапы на эргономичных клавиатурах

Обычные профили

Начать стоит с важной оговорки: на эргономичную сплит-клавиатуру вполне можно поставить обычные кейкапы. DSA, XDA, MBK, Choc-совместимые профили — всё это может нормально работать, если подходит к свитчам и устраивает по ощущениям. Для многих пользователей этого достаточно, и в этом нет никакой проблемы.

Скульптурные кейкапы не появляются потому, что «обычные плохие». Они появляются там, где универсального профиля уже мало.

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

Sculpt и XDA кейкапы

Sculpt и XDA кейкапы

Скульптурные профили

Наш профиль — не единственный пример такого подхода. В мире эргономичных клавиатур уже есть разные скульптурные и контурные профили: CLP, DES, Swell и другие. У них разная высота, разная «агрессивность» формы, разные материалы и разные исходные задачи, но общая мысль похожа: кейкап не обязан быть одинаковой крышкой для всех позиций.

DES кейкапы

DES кейкапы

Для DIY-сообщества это довольно естественная идея. Если люди проектируют корпуса под свои руки, разводят собственные платы и настраивают раскладки под привычки, то рано или поздно вопрос доходит до поверхности клавиш. Что именно нажимает палец? Как он находит центр? Как выглядит переход между рядами? Насколько удобно работать большим пальцем?

CLP кейкапы

CLP кейкапы

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

Кейкап — это часть клавиатуры, а не украшение

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

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

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

Что значит «multi-axis» на практике

Если совсем коротко, речь о профиле, где форма клавиши задаётся сразу по нескольким направлениям. Важна не только высота ряда, но и то, как каждая клавиша повернута, наклонена и как устроена её верхняя поверхность.

На практике это несколько параметров:

- height — насколько клавиша поднята относительно соседних;
- pitch — наклон вперёд или назад;
- yaw — разворот клавиши влево или вправо;
- face tilt — локальный наклон верхней площадки;

Звучит как набор мелочей, но именно из таких мелочей складывается ощущение от набора. Если одна клавиша чуть выше, другая чуть развёрнута, а третья имеет другой наклон верхней площадки, палец воспринимает не набор одинаковых деталей, а цельный рельеф.

multi-axis параметры

multi-axis параметры

Зачем каждой клавише своя форма

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

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

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

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

Почему скульптурные кейкапы часто делают без легенд

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

Пользователь может менять слои, переносить символы, использовать не-QWERTY раскладки, назначать модификаторы на большие пальцы. В какой-то момент надпись на клавише становится скорее ограничением, чем подсказкой. Особенно если одна и та же физическая клавиша в разных слоях делает разные вещи.

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

Индексные клавиши, текстура и маркировка

Индексные клавиши — те самые физические ориентиры, по которым рука понимает, что она на месте. На обычных клавиатурах эту роль часто выполняют маленькие выступы на F и J. В скульптурном профиле таких подсказок может быть больше, потому что сама поверхность сложнее.

Текстура тоже важна. Гладкая клавиша и слегка фактурная клавиша ощущаются по-разному, особенно если печатать долго. Здесь не хочется уходить в громкие обещания вроде «так удобнее всем». Скорее речь о предсказуемом ощущении: палец должен понимать поверхность и не теряться на ней.

Отдельная практическая деталь — внутренняя маркировка. Клавиши не взаимозаменяемы как набор одинаковых blank-кейкапов. Если у каждой позиции своя геометрия, важно не перепутать детали при сборке, проверке и упаковке. Маркировка рядов и клавиш помогает держать это под контролем.

Внутренняя маркировка рядов и клавиш

Внутренняя маркировка рядов и клавиш

От красивой формы к детали, которую можно напечатать

С кейкапами есть забавный момент: на экране почти любая форма выглядит убедительно. В CAD всё чисто, поверхности идеальные, углы аккуратные, ничего не деформируется, посадка на свитч всегда идеальна.

В реальности начинаются вопросы.

Как расположить деталь при печати? Где ставить поддержки, чтобы не испортить видимую поверхность? Как сохранить стабильную посадку на MX-совместимый свитч? Что будет после промывки и засветки? Насколько повторяемыми будут детали из партии в партию? Как не превратить постобработку каждого кейкапа в отдельный ручной подвиг?

В текущей версии кейкапы печатаются на SLA из ABS-Like смолы. Такой подход выбран не ради красивой аббревиатуры, а потому что у профиля много мелкой геометрии, плавных переходов и поверхностей, где качество печати сразу заметно.

SLA помогает получить более аккуратную поверхность и лучше контролировать детали по сравнению со многими FDM-сценариями. При этом материал и технология не отменяют калибровку: посадка на свитч, постобработка и повторяемость всё равно требуют внимания.

SLA печать кейкапов

SLA печать кейкапов

Зачем нужно было создавать генератор?

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

Поэтому для создания кейкапов используется open-source параметрический генератор.

Это не только наш внутренний производственный скрипт, спрятанный за готовым набором кейкапов. Код лежит на GitHub, его можно запустить, изменить параметры и сгенерировать кейкапы под свою клавиатуру: другой корпус, другой кластер больших пальцев, другую высоту, другой наклон или просто сделать свой экспериментальный профиль.

Вместо набора отдельных моделей появляется система параметров. Можно менять высоты, углы, наклоны, поведение кластера под большие пальцы, геометрию посадки и получать согласованный результат. Можно сгенерировать один тестовый кейкап, половину клавиатуры или весь набор. Можно экспортировать STL для печати и STEP для дальнейшей CAD-работы.

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

Конечно, это не магическая кнопка «сделать идеально». Печать, посадка на свитч, допуски и постобработка всё равно требуют проверки. Но для DIY-сообщества это гораздо полезнее, чем просто показать красивый готовый результат: можно посмотреть, как форма устроена изнутри, и изменить её под себя.

Генератор параметрических кейкапов Sculpt

Генератор параметрических кейкапов Sculpt

Что получилось

Важно честно сказать: скульптурные кейкапы не являются универсальным ответом для всех клавиатур и всех пользователей. Это не «новые кейкапы, после которых старые больше не нужны». Обычные профили остаются нормальным выбором.

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

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

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

Готовый набор кейкапов Sculpt

Готовый набор кейкапов Sculpt

Короткий вывод

Скульптурные кейкапы — это не про «сделать клавиатуру необычной». Это про более внимательное отношение к поверхности, с которой рука взаимодействует каждый день.

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

Наш набор — один из вариантов такого подхода: профиль без легенд с вогнутой поверхностью, разной геометрией клавиш, отдельным кластером больших пальцев, SLA-производством и открытым параметрическим генератором, который помогает всё это поддерживать, развивать и адаптировать под свои клавиатуры.

Если совсем коротко: кейкап перестаёт быть крышкой и становится частью формы клавиатуры.

Ссылки

- Open-source генератор Sculpt кейкапов на GitHub
- CLP кейкапы
- DES кейкапы
- Swell кейкапы