{"id":14270,"url":"\/distributions\/14270\/click?bit=1&hash=a51bb85a950ab21cdf691932d23b81e76bd428323f3fda8d1e62b0843a9e5699","title":"\u041b\u044b\u0436\u0438, \u043c\u0443\u0437\u044b\u043a\u0430 \u0438 \u0410\u043b\u044c\u0444\u0430-\u0411\u0430\u043d\u043a \u2014 \u043d\u0430 \u043e\u0434\u043d\u043e\u0439 \u0433\u043e\u0440\u0435","buttonText":"\u041d\u0430 \u043a\u0430\u043a\u043e\u0439?","imageUuid":"f84aced9-2f9d-5a50-9157-8e37d6ce1060"}

Тред: команда Figma рассказала про «баг с горячими клавишами», который оказался наследием раскладки 1997 года Статьи редакции

Всё началось с обычной жалобы пользователя на проблемы с сочетанием Shift+2.

Команда Figma в треде в Twitter рассказала про баг в работе горячих клавиш в редакторе. Компания объяснила его происхождение историей создания клавиатур.

В ноябре 2019 года один из пользователей Figma пожаловался, что сочетание клавиш Shift+2 для масштабирования объекта работает только при нажатии цифр над клавиатурой — но не при нажатии «двойки» в цифровом блоке справа.

In short, pressing Shift+2 using one key worked, but pressing Shift+2 using the numeric keypad key didn’t.

Curiously, the bug only happened on Windows, and not on a Mac. https://t.co/nOyE4hmwM9

Ошибка возникала только на Windows и появилась ещё в 1977 году.

В то время IBM была производителем компьютеров №1 и пыталась завоевать растущий рынок небольших ПК. До этого большинство компьютеров IBM выглядели так:

В 1977 году компания выпустила небольшой IBM System/34 для малого бизнеса — с клавиатурой под названием 5251.

IBM System/34

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

Клавиатура IBM 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 не было индикатора.

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

Figma

Поэтому инженеры придумали быстрое решение для пользователей: удерживая 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 о баге, «браузеры предоставили достаточно информации», чтобы понять и исправить ошибку. Хотя это никогда и не было ошибкой — это просто старое, едва задокументированное соглашение, заключила компания.

0
41 комментарий
Написать комментарий...
Alex Ayer

Офигенная история! Пришёл по слову Figma, но ушёл с совершенно другим

Ответить
Развернуть ветку
Delta Spex

К утру доберешься к статье "Каннибализм" в википедии, как я.

Ответить
Развернуть ветку
Escape
Ответить
Развернуть ветку
Злой Полушубок
Ответить
Развернуть ветку
Gre Li

И правда работает. Вроде уже с прошлого века за компами сижу, а только сейчас узнал. (Или успешно забыл давным давно.)

Ответить
Развернуть ветку
Илья Попов

Если честно представление не имел что к чему. Правда очень интересная статья.

Ответить
Развернуть ветку
Bulat Ziganshin

ещё Alt+цифры

ты вероятно не сидел за той первой клавиатурой, она только с xt-шками шла

Ответить
Развернуть ветку
Gre Li

Alt+цифрами пользовался ещё давно. Но раскладка Бирмана удобней

Ответить
Развернуть ветку
Сергей Токарев

для меня это тоже сильное открытие

вроде того, что в Android свайп по пробелу - легко перемещает курсор по набираемому тексту

PS: кто знает аналогичный трюк для iOS для быстрого перемещения курсора по тексту, расскажите

Ответить
Развернуть ветку
Mikhail Pasichniuk

На iPhone при вводе текста сильное нажатие на пробел даёт возможность рулить курсором по тексту, а-ля трекпад =)

Ответить
Развернуть ветку
Nikolay Kapustin

зря они убили это в форс-тапе по всей клаве, ыроды это было так удобно

Ответить
Развернуть ветку
Timofey

Теперь надо нажимать не сильно, а просто подержать подольше палец на пробеле. Всё на месте)

Ответить
Развернуть ветку
Nikolay Kapustin

раньше форс возможен был с любой кнопки, а не только на пробеле

Ответить
Развернуть ветку
Timofey

Да, это верно. Однако говорить, что функция была удалена полностью, не совсем верно :)

Ответить
Развернуть ветку
Nikolay Kapustin

 Я и не говорил такого

Ответить
Развернуть ветку
Денис

У меня язык переключает

Ответить
Развернуть ветку
Сергей Токарев

у меня сильное нажатие открывает переключение раскладок
просто  легкое касание пробела и туда-сюда - перемещает курсор по набранному тексту

Android 9

Ответить
Развернуть ветку
Vladimir Ponomarev

Пользователь: Почему у вас ни хрена нормально не работает shift+2???

Figma: Однажды, в далёком 1977 году, когда компьютеры и деревья были большими...

Ответить
Развернуть ветку
Alexander Portnov

На картинке не IBM System/34, а ее консоль (собственно 5251). Сама машина ощутимо крупнее. 

Ответить
Развернуть ветку
Фёдор Зима

Сделали бы возможность CMD+1 для масштабирования и т.д. Это более эрогономично для руки чем шифт. Назначить через настройки тоже нельзя такую комбинацию. 

Ответить
Развернуть ветку
Илья Попов

У вас, как всегда, очень интересная статья. 🙂👍

Ответить
Развернуть ветку
Labeling
Хотя это никогда и не было ошибкой — это просто старое, едва задокументированное соглашение, заключила компания.

Это еще какая ошибка, Figma навесила свой shortcut на существующий shortcut и при этом не протестировала как следует (кейсы с клавишами на цифровой клавиатуре явно не были покрыты).

Ответить
Развернуть ветку
Максим Малыгин

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

Ответить
Развернуть ветку
Sergey Bespalov

А причем тут 1997?

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Хороший

Сраный сайт, опять айфон греется при просмотре.

Ответить
Развернуть ветку
Дмитрий Щербаков

Спасибо за биткоин

Ответить
Развернуть ветку
Артурас Лапинскас

Не баг, а фитча

Ответить
Развернуть ветку
Роман Романов

фигма

Ответить
Развернуть ветку
Руслан

Зачем вообще в современных клавиатурах до сих пор ставят намлок, когда рядом есть полноценные стрелки?

Ответить
Развернуть ветку
sagrer128 .

Например затем, что на отдельном блоке со стрелками нет диагональных направлений, а на блоке с цифрами есть ). Вдруг юзер захочет в первую Цивилизацию поиграть... %)

Ответить
Развернуть ветку
Руслан

Там ведь PgUp PgDn Home End которые дублируются рядом в паре сантиметров. 

Ответить
Развернуть ветку
Алексей Дородный

Обратная совместимость.

Ответить
Развернуть ветку
Deny Smile

Доброй ночи, было приятно почитать

Ответить
Развернуть ветку
Zloy Sniper

Познавательно. Спасибо.

Ответить
Развернуть ветку
Ленин-гриб

Не только у Figma. Еще у некоторых программ встречал такое "сво-во" и всегда возмущался "ну что за хрень!", оказывается вот оно что... 

Ответить
Развернуть ветку
Владимир Максимушкин

Прикольная история. Спасибо!

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку

Комментарий удален модератором

Развернуть ветку

Комментарий удален модератором

Развернуть ветку

Комментарий удален модератором

Развернуть ветку

Комментарий удален модератором

Развернуть ветку

Комментарий удален модератором

Развернуть ветку
vadim negru

У меня TKL( 

Ответить
Развернуть ветку
Konstantin Loban

Я вот недавно сидел и думал, как буду объяснять детям, что это за странный предмет на кнопке "Сохранить". Теперь всерьез задумался как буду объяснять что такое нумлок...

Ответить
Развернуть ветку
Николаевна

Хороший материал, действительно познавательно, спасибо! 

Ответить
Развернуть ветку
Bear☭GRiZZLY☭Xi

Ну да, Scroll Lock наверно я единственный использую по назначению :-)

Ответить
Развернуть ветку
38 комментариев
Раскрывать всегда