Безопасное сочетание клавиш для активации функции стиля завершения кода в браузерах Mac OS X - PullRequest
1 голос
/ 09 февраля 2009

Я создаю некоторую функциональность расширения текста в стиле завершения кода для текстовых областей и входных данных в веб-приложении. Я пытаюсь найти безопасное сочетание клавиш для вызова предложений о завершении для браузеров, работающих на Mac OS X.

Я исключил некоторых потенциальных кандидатов:

  • Команда + Пробел - активирует поле поиска Spotlight
  • Управление + Пробел - активирует контекстное меню в Firefox
  • Esc - отменяет любые фоновые запросы XMLHttp в Firefox

То есть Опция + Пробел . Я знаю, что это может конфликтовать с такими инструментами, как Ubiquity , но мы не ожидаем, что наша аудитория будет использовать.

Есть ли какие-либо конфликты, которые я мог пропустить с Option + Space? Или у вас есть идея для сочетания клавиш и почему?

Ответы [ 5 ]

1 голос
/ 09 февраля 2009

Многие приложения Mac OS X используют Опцию + Esc для завершения кода или подсказок кода.

0 голосов
/ 24 февраля 2009

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

0 голосов
/ 09 февраля 2009

Я переназначил команду Spotlight на Command + Shift + Space . Это легко сделать через Prefferences.App

0 голосов
/ 09 февраля 2009

Какой-то ярлык вкладки звучит как лучший и наиболее интуитивно понятный подход - пользователи должны использовать рабочий процесс 'type-tab-type-tab' - возможно, объединить его с модификатором, если он только желает быть необязательным. *

0 голосов
/ 09 февраля 2009

Насколько я помню, Visual Studio и TextMate используют tab для завершения кода. В Visual Studio всплывающее меню intellisense появляется, когда вы начинаете печатать, а вкладка выступает в качестве подтверждения выбора.

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

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

EDIT: Вы говорите, что вкладки необходимы для переключения полей в веб-интерфейсе, но вы можете попытаться перехватить событие клавиатуры в текстовом поле и проверить, начали ли они вводить макрос. Если они есть, выполните автозаполнение и проглотите ключ, вернув false; если нет, просто дайте команде всплыть.

...