Я не верю, что есть стандарт для уровня спецификации, который вы хотите, и, вероятно, не должно быть. Руководство по интерфейсу пользователя Apple является наиболее полным. Что касается выбора контента (в отличие от элементов управления или дискретных объектов данных), они говорят:
Двойной щелчок чаще всего используется в качестве ярлыка для других действий, таких как… для выбора слова. Тройной щелчок выбирает следующую логическую единицу, как определено приложением. В текстовом редакторе при трехкратном щелчке слова выбирается абзац, содержащий слово…. Двойной щелчок внутри слова выделяет слово. Выбор должен обеспечивать «умное» поведение; например, если пользователь удаляет выбранное слово, пробел после слова также должен быть удален ... В некоторых контекстах - например, на языке программирования - может быть целесообразно разрешить пользователям выбирать как левую, так и правую скобки (или скобки или скобки) в паре, а также все символы между ними, дважды щелкнув любой из них. »(p115-116)
Apple довольно точно определяет, какие символы входят в слово, а какие нет.
Microsoft Руководство по взаимодействию с пользователем в Windows скажем:
Для некоторых типов выбираемых объектов каждый щелчок увеличивает эффект щелчка. Например, одиночный щелчок в текстовом поле устанавливает местоположение ввода, двойной щелчок выбирает слово, а тройной щелчок выбирает предложение или абзац. (P430)
Руководство по дизайну Java Swing Look & Feel скажем:
Двойной щелчок (двойной щелчок мышью в быстрой последовательности без перемещения мыши) используется для выбора более крупных единиц (например, для выбора слова в текстовом поле)…. Тройной щелчок (нажатие кнопки мыши три раза подряд без перемещения мыши) используется для выбора даже более крупных единиц (например, для выделения всей строки в текстовом поле)…. Тройной щелчок в строке текста отменяет выбор любого существующего выделения и выделяет строку.
Руководство по взаимодействию с человеком в Gnome мало что говорит о том, что должен делать двойной и тройной щелчок.
Это дает вам свободу выбора того, что лучше для ваших пользователей. Двойное и тройное нажатие - это быстрые комбинации, поэтому их поведение должно быть направлено на максимальную эффективность. Подумайте, почему пользователь выбирает что-то и разрабатывает, чтобы сделать это проще и быстрее.
Например, очевидно, что логическое обоснование включения пробела при двойном щелчке слова состоит в том, что пользователи обычно выбирают слово, чтобы скопировать или вставить его в другую позицию в тексте. Это подразумевает, что вы автоматически включаете конечный пробел, чтобы пользователю не приходилось вручную удалять оставшееся дополнительное пространство в источнике и добавлять пробел в конце раздела.
Аналогичным образом, если пользователи выбирают строку кода или абзаца, чтобы скопировать или переместить ее куда-то еще, то вы, вероятно, захотите включить символы новой строки, чтобы у пользователя не осталось пустой строки в источнике и вынудили добавить вручную новая строка в месте назначения (при условии, что они не хотят брать строку / абзац и объединять ее с другой строкой / абзацем.
Если выбор сделан для чего-то другого, кроме копирования и перемещения текста в предложениях, тогда это может не применяться, и вам не обязательно включать конечные пробелы или переводы строки. Вот почему не должно быть стандарта.
Альтернативой является то, что Apple называет «Интеллектуальное вырезание и вставка» (см. Рекомендации по интерфейсу пользователя), или «Умное вырезание и вставка» в Microsoft Word, где пробелы, новые строки и другие настройки алгоритмически определяются при вырезании, копировании, вставке и удаление, а не при выборе.