Enter для переноса строки, Shift+Enter для отправки сообщения в чате

Кстати: думаю, что в macOS для отправки сообщения должна работать комбинация Cmd+Enter, если настроена Shift+Enter.

2 лайка

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

Ctrl/Command+Enter — это стандарт для отправки (сообщений в чате, писем и т. д.). Попробуйте оба варианта привязки клавиш в Discord, Slack, Gmail, Google Chat, Thunderbird и большинстве других программ.

Редактирование: Command+Enter также работает для постов в Discourse.

1 лайк

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

Это ужасный пользовательский опыт, если Shift+Enter создаёт перенос строки, а Cmd+Enter отправляет форму — эти комбинации очень легко перепутать, и мы возвращаемся к ненадёжному поведению, которое точно не является «наименее неожиданным».

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

Объединение «Enter» и «Shift+Enter» для создания переноса строки, а затем использование «Cmd+Enter» для отправки — по моему мнению, ужасная идея.

Да, именно это указано в запросе на слияние, на который я ссылался выше.

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

2 лайка

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

Мне кажется, настройка по умолчанию звучит хорошо, но я бы не стал делать отправку по Shift+Enter опцией, потому что это всё равно что разрешить использовать ESC для отправки вместо предотвращения отправки. Это может сформировать у некоторых пользователей неправильную мышечную память.

Это как ESC для выхода или Ctrl+K для поиска — официального стандарта нет, но так давно поступают во многих программах, что пользователи этого ожидают. Как вы сами отметили выше: «Это кажется довольно стандартной настройкой во всех популярных чатах — от Telegram до Element, то есть разрешать «Cmd+Enter для отправки, Enter для новой строки»».

Если у людей выработается мышечная память, что Shift+Enter отправляет сообщения, то они столкнутся с неприятными сюрпризами, когда узнают, что происходит в других программах.

Я не пользуюсь двумя упомянутыми вами программами, но Slack, Google Chat, Skype, Apple Messages и большинство других используют Enter для отправки и Shift+Enter для создания новой строки. Когда Enter не отправляет (Gmail, посты в Discourse и т. д.), отправка происходит по Ctrl/Cmd+Enter.

Опция отключения отправки по Enter имеет смысл, но я считаю, что использование Shift+Enter для отправки создаст проблемы для тех, кто выберет эту настройку, не осознав, что это приведёт к ещё одной проблеме с мышечной памятью.

Я только что объединил это, что копирует поведение Telegram:

Дайте знать, как у вас получится.

7 лайков

Как это должно работать на iPad

Неважно, использую иконку. Это нормально.

Эта тема была автоматически закрыта через 30 дней после последнего ответа. Новые ответы больше не принимаются.