Тред: команда Figma рассказала про «баг с горячими клавишами», который оказался наследием раскладки 1997 года Статьи редакции
Всё началось с обычной жалобы пользователя на проблемы с сочетанием Shift+2.
Команда Figma в треде в Twitter рассказала про баг в работе горячих клавиш в редакторе. Компания объяснила его происхождение историей создания клавиатур.
В ноябре 2019 года один из пользователей Figma пожаловался, что сочетание клавиш Shift+2 для масштабирования объекта работает только при нажатии цифр над клавиатурой — но не при нажатии «двойки» в цифровом блоке справа.
Ошибка возникала только на Windows и появилась ещё в 1977 году.
В то время IBM была производителем компьютеров №1 и пыталась завоевать растущий рынок небольших ПК. До этого большинство компьютеров IBM выглядели так:
В 1977 году компания выпустила небольшой IBM System/34 для малого бизнеса — с клавиатурой под названием 5251.
System/34 была относительно дорогой машиной: её цена достигала шестизначных сумм. В то время клавиши со стрелками были не так важны в компьютерах, поэтому они находились слева, а цифровая клавиатура — справа.
В 1980 году IBM выпустила ещё один маленький компьютер — System/23 или Datamaster. Эту модель можно было осторожно поднимать и переносить, хотя весила она 45 килограмм. System/23 был намного дешевле своего предшественника и стоил $9000.
В новом компьютере была та же раскладка клавиатуры, что и в IBM 5251, но с новым дизайном и пружинными переключателями.
Figma указывает, что этот компьютер не пользовался большой популярностью у пользователей, в отличие от следующей модели — IBM 5150, выпущенной в 1981 году. Её также называли IBM PC.
IBM PC разрабатывался в ускоренном режиме, поэтому дизайнеры взяли клавиатуру от Datamaster и поменяли функции некоторых клавиш. Левый блок был заменен функциональными клавишами, а клавиши со стрелками были перенесены вправо.
К тому времени необходимость клавиш со стрелками возросла: они нужны были для навигации по электронным таблицам и меню. Но из-за ограничений раскладки клавиатуры 5251 стрелкам пришлось делить место с цифровым блоком. Поэтому инженеры создали клавишу, которая позволяет переключаться между стрелками и цифрами — Num Lock.
Это было не очень удобно: например, при работе с таблицами нужно было вводить число, переходить к другой ячейке и вводить новое. Пользователям приходилось нажимать Num Lock снова и снова, чтобы переключиться между режимами.
При этом у Num Lock не было индикатора.
Поэтому инженеры придумали быстрое решение для пользователей: удерживая Shift и нажимая стрелку/цифровую клавишу, можно было быстро изменить режим ввода.
«На этом этапе вы уже должны понимать, откуда взялся баг Figma», — пишет команда.
В конце 1980-х годов IBM поменяла раскладку клавиатуры в ответ на жалобы пользователей на множество проблем с 5150. В результате появилось то, что называют God’s keyboard — IBM Model M с расширенной 100-клавишной раскладкой, которая распространена и сейчас.
В новой раскладке клавиши со стрелками отделили от цифровой клавиатуры. Однако с их объединения прошло пять лет, пользователи уже привыкли к Num Lock — эту функцию нужно было сохранить, как и сочетание с Shift для ускоренного переключения режимов.
Поэтому в Figma сочетание Shift+2 на обычной клавиатуре работает как функция «Увеличить выделенный объект», но нажатие Shift+2 на цифровой клавиатуре интерпретируется как «↓».
Компьютеры Mac никогда не сталкивались с такой проблемой: первый Mac вообще не имел ни цифровой клавиатуры, ни клавиш со стрелками, чтобы стимулировать разработчиков создавать программы, ориентированные на мышь.
Клавиатура Mac получила стрелки в 1987 году — они сразу были расположены в отдельной секции, поэтому клавиша Num Lock так и не понадобилась.
Когда пользователь сообщил Figma о баге, «браузеры предоставили достаточно информации», чтобы понять и исправить ошибку. Хотя это никогда и не было ошибкой — это просто старое, едва задокументированное соглашение, заключила компания.
Офигенная история! Пришёл по слову Figma, но ушёл с совершенно другим
К утру доберешься к статье "Каннибализм" в википедии, как я.
И правда работает. Вроде уже с прошлого века за компами сижу, а только сейчас узнал. (Или успешно забыл давным давно.)
Если честно представление не имел что к чему. Правда очень интересная статья.
ещё Alt+цифры
ты вероятно не сидел за той первой клавиатурой, она только с xt-шками шла
Alt+цифрами пользовался ещё давно. Но раскладка Бирмана удобней
для меня это тоже сильное открытие
вроде того, что в Android свайп по пробелу - легко перемещает курсор по набираемому тексту
PS: кто знает аналогичный трюк для iOS для быстрого перемещения курсора по тексту, расскажите
На iPhone при вводе текста сильное нажатие на пробел даёт возможность рулить курсором по тексту, а-ля трекпад =)
зря они убили это в форс-тапе по всей клаве, ыроды это было так удобно
Теперь надо нажимать не сильно, а просто подержать подольше палец на пробеле. Всё на месте)
раньше форс возможен был с любой кнопки, а не только на пробеле
Да, это верно. Однако говорить, что функция была удалена полностью, не совсем верно :)
Я и не говорил такого
У меня язык переключает
у меня сильное нажатие открывает переключение раскладок
просто легкое касание пробела и туда-сюда - перемещает курсор по набранному тексту
Android 9
Пользователь: Почему у вас ни хрена нормально не работает shift+2???
Figma: Однажды, в далёком 1977 году, когда компьютеры и деревья были большими...
На картинке не IBM System/34, а ее консоль (собственно 5251). Сама машина ощутимо крупнее.
Сделали бы возможность CMD+1 для масштабирования и т.д. Это более эрогономично для руки чем шифт. Назначить через настройки тоже нельзя такую комбинацию.
У вас, как всегда, очень интересная статья. 🙂👍
Это еще какая ошибка, Figma навесила свой shortcut на существующий shortcut и при этом не протестировала как следует (кейсы с клавишами на цифровой клавиатуре явно не были покрыты).
Хмм, а я никогда не воспринимал кнопки в цифровой клавиатуре и кнопки с цифрами в верхнем ряду клавиатуры как одинаковые.
Чтобы найти это старое сочетание клавишь, нужно очень слабо разбираться в компьютерах)
А причем тут 1997?
Комментарий недоступен
Сраный сайт, опять айфон греется при просмотре.
Спасибо за биткоин
Не баг, а фитча
фигма
Зачем вообще в современных клавиатурах до сих пор ставят намлок, когда рядом есть полноценные стрелки?
Например затем, что на отдельном блоке со стрелками нет диагональных направлений, а на блоке с цифрами есть ). Вдруг юзер захочет в первую Цивилизацию поиграть... %)
Там ведь PgUp PgDn Home End которые дублируются рядом в паре сантиметров.
Обратная совместимость.
Доброй ночи, было приятно почитать
Познавательно. Спасибо.
Не только у Figma. Еще у некоторых программ встречал такое "сво-во" и всегда возмущался "ну что за хрень!", оказывается вот оно что...
Прикольная история. Спасибо!
Комментарий удален модератором
Комментарий удален модератором
Комментарий удален модератором
Комментарий удален модератором
Комментарий удален модератором
Комментарий удален модератором
У меня TKL(
Я вот недавно сидел и думал, как буду объяснять детям, что это за странный предмет на кнопке "Сохранить". Теперь всерьез задумался как буду объяснять что такое нумлок...
Хороший материал, действительно познавательно, спасибо!
Ну да, Scroll Lock наверно я единственный использую по назначению :-)