Как изменить символы-разделители выделения слов в Windows 7?

Как изменить символы-разделители выделения слов в Windows 7?

Когда в Windows 7 я дважды щелкаю по тексту aaa.bbb, выделяется либо один из них aaa, либо bbb другой, но не оба сразу, поэтому выделяется только эта часть текста, а не вся строка aaa.bbb.

Другой пример: двойной щелчок в любом месте формы aaa_bbbвыделяет все слово, то есть символ _не работает как разделитель.

Есть ли способ изменить или добавить в Windows разделители, которые считаются разделителями слов?

решение1

В Windows нет единого механизма для обработки выделения текста. При выдаче двойного щелчка программе она получает это событие и обрабатывает его, используя собственную логику и код. Поэтому вы получите разное поведение от разных программ. Результаты будут, например, разными в Notepad, Wordpad, Word и т. д. Даже в Office будут различия в поведении и параметрах между Word и Excel и т. д.

Вам нужно будет построить механизм, который перехватывает двойной щелчок и делает свой собственный трюк. Хорошим инструментом будет AutoHotkey с помощью которого можно написать скрипт, преобразующий двойной щелчок в серию операций над активной программой.

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

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

Скрипт AutoHotkey, который вы напишете, будет выполнять следующие действия:

  • Перехват двойного щелчка с сохранением целевого окна и координат XY щелчка
  • Отправьте простой щелчок по этим координатам
  • Отправьте Shift+ Home, чтобы выбрать все символы слева
  • Отправьте Ctrl+ C, чтобы скопировать символы и узнать количество символов L, которые нужно выбрать слева
  • Отправить еще один простой щелчок по этим координатам
  • Отправьте Shift+ End, чтобы выбрать все символы справа
  • Отправьте Ctrl+ C, чтобы скопировать символы и узнать количество символов R, чтобы выбрать справа
  • Отправить еще раз простой щелчок по этим координатам
  • Отправить L раз Leftстрелку
  • Отправьте L+R раз Shift+, Rightчтобы сделать выбор
  • Сделанный.

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

решение2

Я понимаю ваш вопрос. Я не думаю, что вы можете изменить то, что Word считает единицей слова. Однако, если вы хотите более последовательного поведения, вы можете перейти в Параметры -> Дополнительно и снять второй флажок «При выборе автоматически выбирать целое слово».

Связанный контент