
Windows 7에서 텍스트를 두 번 클릭하면 aaa.bbb
둘 중 하나가 aaa
선택 bbb
되지만 둘 다 선택되지는 않으므로 선택한 텍스트는 전체 문자열이 아닌 해당 부분만 됩니다 aaa.bbb
.
또 다른 예로, 양식의 아무 곳이나 두 번 클릭하면 aaa_bbb
전체 단어가 선택됩니다. 즉, 문자는 _
구분 기호로 작동하지 않습니다.
Windows에서 단어 구분 기호로 간주되는 구분 기호를 변경하거나 추가하는 방법이 있습니까?
답변1
Windows에는 텍스트 선택을 처리하기 위한 통일된 메커니즘이 없습니다. 프로그램을 두 번 클릭하면 해당 이벤트를 수신하고 자체 논리와 코드를 사용하여 처리합니다. 따라서 다른 프로그램에서 다른 동작을 얻게 됩니다. 예를 들어 메모장, 워드패드, Word 등에서는 결과가 다릅니다. Office 내에서도 Word와 Excel 등의 동작과 옵션에 차이가 있습니다.
더블클릭을 가로채고 자체적인 트릭을 수행하는 메커니즘을 구축해야 합니다. 좋은 도구는 다음과 같습니다 오토핫키 이를 사용하면 두 번 클릭을 활성 프로그램에 대한 일련의 작업으로 변환하는 스크립트를 작성할 수 있습니다.
모든 프로그램에 적용되지는 않을 수 있는 사용자 인터페이스에 대한 특정 가정을 해야 하며, 프로그램에서 데이터를 추출하기 위한 메커니즘이 필요합니다. 나에게 유일한 보편적인 메커니즘은 클립보드입니다. 기록 목록을 부분 데이터로 채우게 되므로 클립보드 기록을 관리하는 모든 제품과 충돌하게 됩니다.
대상 프로그램이 커서 이동 및 문자 선택에 대한 일반적인 규칙을 따른다고 가정해야 합니다.
여러분이 작성할 AutoHotkey 스크립트는 다음을 수행합니다:
- 대상 창과 클릭의 XY 좌표를 기억하면서 두 번 클릭을 차단합니다.
- 간단한 클릭만으로 해당 좌표로 전송
- Shift+를 보내 Home왼쪽에 있는 모든 문자를 선택합니다.
- Ctrl+를 보내서 C문자를 복사하고 왼쪽에서 선택할 문자 수 L을 알아보세요.
- 이 좌표로 또 다른 간단한 클릭을 보냅니다.
- 오른쪽에 있는 모든 문자를 선택하려면 Shift+를 보냅니다 .End
- Ctrl+를 보내서 C문자를 복사하고 오른쪽에서 선택할 문자 R의 수를 알아보세요.
- 간단한 클릭만으로 해당 좌표로 다시 전송
- Left화살 을 L번 보내세요
- 선택을 수행하려면 L+R 번 Shift+ 를 보냅니다.Right
- 완료.
대상 프로그램이 키를 처리할 시간을 허용하려면 키를 발급한 후 몇 밀리초의 대기 시간을 추가해야 합니다.
답변2
귀하의 질문을 이해합니다. Word가 단어 단위로 생각하는 것을 변경할 수는 없다고 생각합니다. 그러나 보다 일관된 동작을 원할 경우 옵션 -> 고급으로 이동하여 두 번째 항목인 "선택 시 자동으로 전체 단어 선택"을 선택 취소할 수 있습니다.