이 기사에서는 vscode의 커서 작업에 대해 설명합니다. 이 기사에서는 우리와 가장 밀접하게 관련된 커서 작업만 다루므로 시작해 보겠습니다.
우리의 목표는 단 하나, 슬로건을 외치자: 비단처럼 매끄러운 개발! 기사에 있는 예제의 대부분은 Mac 버전을 기반으로 합니다. 왜냐하면 저는 Mac이기 때문입니다. 하지만 Win 버전에 대해 걱정할 필요는 없습니다. 구성을 깨고 싶다면 명심하세요. Command는 Ctrl 키입니다. .
우리는 커서를 작동하기 위해 매일 화살표 키를 사용합니다. 실제로 cmd 키를 눌러 이동하는 등 일상적인 근육 기억 속에서 무의식적으로 많은 기술을 사용합니다. 줄의 첫 번째 줄. 끝이지만 요약하기 어려운, 나뭇잎에 가려진 느낌. 획기적인 점을 알려 드리겠습니다. 세분성입니다. 일상적으로 사용하는 경우 왼쪽 및 오른쪽 화살표 키에는 문자가 하나만 있습니다. 즉, 단어나 문장의 끝을 생각하면 이 문장이 실제로 초점을 맞추는 데 매우 번거로울 것입니다. ; 그렇다면 커서 세분성은 어떻게 작동합니까? [추천 학습: "vscode 튜토리얼"]
가로 방향
화살표 키와 결합
Graininess | mac | win |
---|---|---|
단어 | 옵션 | ctrl |
line | cmd | 그냥 home/end를 사용하세요 |
코드 블록 | cmd + Shift + | Ctrl + Shift + |
세로 방향
세분성 | mac | win |
---|---|---|
기사 시작/끝 | Cmd + 위쪽 및 아래쪽 화살표 키 | Ctrl + Home/End 키 |
현재 코드 줄을 위/아래로 이동 | Option + 위쪽 및 아래쪽 화살표 키 |
참고: [현재 줄 위/아래로 이동]은 커서 작업이 아니라 코드 블록 작업입니다. (커서 작업은 화살표로 직접 수행할 수 있기 때문입니다.) 키), 여기에 배치하는 것이 매우 적합합니다. 가로 방향과 일치할 수 있습니다. line-cmd word-option; 세로 document-cmd line-option
기타 커서 작업
의미 | mac | win |
---|---|---|
커서 처리 실행 취소 | Cmd + U | Ctrl + U |
Extension: [선택] 작업에는 [shift]만 추가하면 됩니다. [삭제] 작업 세분성은 커서 작업과 동일하며 반대 방향에서는 fn
만 추가하면 됩니다(예: 커서 삭제) 해당 줄에 커서 앞의 모든 내용은 [cmd
+delete
]이고 커서 뒤의 내용은 [cmd
+fn입니다.
+delete
])fn
即可(如删除所在行光标前所有内容为【cmd
+delete
】而光标后内容则为【cmd
+fn
+delete
】)
针对单词的光标移动
想把光标直接移动到整个单词,也就是 function 的前面或后面,你只需按下 Option(Windows 上是 Ctrl 键)和左方向键。
光标移动到行首或者行末
按住 Cmd + 左方向键(Windows 上是 Home 键),就可以把光标移动到了这行的第一列
移动到文档的第一行或者最后一行
按下 Cmd 和上下方向键即可(Windows 上是 Ctrl + Home/End 键)
代码块的移动
Cmd + Shift + (Windows 上是 Ctrl + Shift + ),就可以在这对花括号之间跳转。
当前行上/下移
其他光标操作
撤销光标处理
至此,我们已经了解了单光标的移动,选中(其实就是移动加上shift
键),删除(选中加delete
커서 동작의 예
단어에 대한 커서 이동
단어 전체로 커서를 직접 이동하고 싶다면, 즉 , 기능 전후에 Option(Windows에서는 Ctrl 키)과 왼쪽 화살표 키만 누르면 됩니다.커서를 줄의 시작이나 끝으로 이동하세요Cmd + 왼쪽 화살표 키(Windows의 경우 Home 키)를 길게 누르면 커서를 줄의 첫 번째 열로 이동할 수 있습니다
첫 번째 또는 마지막으로 이동 문서의 줄 | Cmd와 위쪽 및 아래쪽 화살표 키를 누르세요(Windows에서는 Ctrl + Home/End 키) | |
---|---|---|
코드 블록 이동 | Cmd + Shift +(Windows에서는 Ctrl + Shift +)를 사용할 수 있습니다. 이 중괄호 쌍 사이를 이동하세요. | |
현재 줄을 위/아래로 이동 | ||
기타 커서 작업 |
지금까지 단일 커서의 움직임을 이해했습니다. Shift code> 키), 삭제(삭제
선택 및 추가) 및 기타 작업을 동시에 수행해야 하는 경우에는 어떻게 해야 할까요? 현재 우리는 커서 작업, 다중 커서 작업의 고급 사용에 접근해야 합니다. 이 주제에 있어서 중요한 점은 실제로 필요한 위치에 여러 개의 커서를 생성하는 방법입니다. 생성 후에는 단일 커서와 작업이 일치하기 때문입니다.
키보드의 "Option"(Windows에서는 Alt)을 누른 다음 새 커서를 만들려는 위치를 클릭하세요. | ||
---|---|---|
효율성 작업 |
Fn
와 반대 방향이 사용됩니다. 예를 들어 삭제된 줄에서 커서 앞의 내용은 [cmd
+delete
]이고 커서 뒤의 내용은 [cmd
+fn
code>+delete
])이 시점에서 우리는 커서 작업을 위한 vscode 자체의 기본 디자인 개념을 이해했습니다. 맞춤형 단축키
fn
即可(如删除所在行光标前所有内容为【cmd
+delete
】而光标后内容则为【cmd
+fn
+delete
】)
到此,我们就了解了 vscode 本身对光标操作的基本设计理念啦。
但如果我们用不惯呢?vscode 自然也不会这么死板,它是支持为行为、也就是我们所说的命令自定义快捷键的,这里说之前困惑过我的一点,就是我们说的创建光标、移动等等对应 vscode 而言其实就是一条内嵌的命令,理解了这个,才好进行自定义,我当初没理解所以一直在想的问题是:我该怎么去翻译我要做的事情。
三步走:找到定义keyboard Shorycut
的地方,找到对应的操作,为操作绑定快捷键。
Eg:为【选择括号内所有内容】的操作绑定Cmd + Shift + ]
快捷键为例
找到定义keyboard Shorycut的地方
找到对应的操作
为操作绑定快捷键
双击-》按下需要绑定的快捷键-》回车确定(按错的话别回车就可以了)
这里多说一句,快捷键其本质就是行为和特定按键【在特定场景下】的绑定,在 vscode 中通过 JSON 进行描述,我们可以通过执行>Open Keyboard Shortcuts(JSON)
进行查看,如果我们需要实现一个高级的快捷键,就会需要这些知识了。
属性 | 含义 | 备注 |
---|---|---|
Command | 命令值 | |
When | 在什么情况下这个快捷键绑定能够生效 | |
Key | 快捷键 |
其中的when
的定义注意点比较多,所有取值可以查看文档
而对于高级写法,VS Code 还支持几个基础的操作符。这样我们就能够书写相对复杂的条件语句了。
!
取反。比如我们希望当光标不在编辑器里时,绑定一个快捷键,那么我们可以使用 !editorFocus,使用 !进行取反。==
等于。when 条件值除了是 boolean 以外,也可以是字符串。比如 resourceExtname
对应的是打开的文件的后缀名,如果我们想给 js 文件绑定一个快捷键,我们可以用 resourceExtname == .js
。&&
And 操作符。我们可以将多个条件值组合使用,比如我希望当光标在编辑器里且编辑器里正在编辑的是 js 文件,那么我可以用 editorFocus && resourceExtname == .js
。=~
正则表达式。还是使用上面的例子,如果我要检测文件后缀是不是 js,我也可以写成 resourceExtname =~ /js/
하지만 익숙하지 않다면 어떨까요? 당연히 vscode는 그렇게 엄격하지 않습니다. 이것은 우리가 명령이라고 부르는 동작에 대한 사용자 정의 단축키를 지원합니다. 여기에 앞서 제가 혼란스럽게 했던 점, 즉 우리가 커서 생성, 이동 등이라고 부르는 것이 vscode에 해당합니다. 사실, 이것은 내장된 명령입니다. 이것을 이해한 후에야 사용자 정의할 수 있습니다. 처음에는 이해하지 못했기 때문에 제가 계속 생각한 질문은 '내가 원하는 것을 어떻게 번역해야 하는가'였습니다. 키보드 Shorycut
이 정의된 위치를 찾아 해당 작업을 찾은 다음 해당 작업에 단축키를 바인딩합니다. Cmd + Shift + ]
단축키를 바인딩합니다. 예를 들어
키보드 Shorycut이 정의된 위치를 찾으세요
찾기 해당 작업🎜🎜 🎜🎜🎜🎜는 Operation 바인딩 단축키🎜🎜🎜더블클릭 - "바인딩이 필요한 단축키를 누르세요 -" Enter로 확인 (잘못된 키를 눌렀다면 그냥 Enter를 누르지 마세요)🎜🎜하나 더 여기서 말하는 단축키의 본질은 동작과 특이성입니다. [특정 시나리오에서] 키 바인딩은 vscode에서 JSON을 통해 설명됩니다.>Open Keyboard Shortcuts(JSON)
를 실행하면 볼 수 있습니다. >. 고급 단축키를 구현해야 하는 경우 이 지식이 필요합니다. 🎜🎜🎜언제
에 대한 정의는 더 많은 주의가 필요합니다. 모든 값은 Documentation🎜🎜🎜 고급 작성을 위해 VS Code는 여러 기본 연산자도 지원합니다. 이런 방식으로 우리는 상대적으로 복잡한 조건문을 작성할 수 있습니다. 🎜!
부정. 예를 들어 커서가 편집기에 없을 때 단축키를 바인딩하려면 !editorFocus를 사용하고 ! 부정합니다. 🎜==
는 다음과 같습니다. 부울인 것 외에도 when 조건 값은 문자열일 수도 있습니다. 예를 들어 resourceExtname
은 열린 파일의 접미사에 해당합니다. js 파일에 단축키를 바인딩하려면 resourceExtname == .js
를 사용할 수 있습니다. 🎜&&
그리고 연산자. 예를 들어, 커서를 편집기에 두고 편집기가 js 파일을 편집하는 경우 editorFocus && ResourceExtname == .js
를 사용할 수 있습니다. 🎜=~
정규 표현식. 그래도 위의 예를 사용해 파일 접미사가 js인지 감지하고 싶다면 resourceExtname =~ /js/
로 작성하고 정규식을 통해 판단할 수도 있습니다. 🎜🎜🎜🎜Summary🎜🎜🎜 이제 커서 작업과 관련된 공유는 끝났습니다. vscode에 대한 이해에 있어서 만능은 아니지만 프로그래밍 자체가 지루하다는 생각이 항상 듭니다. 이런 탐구는 여전히 필요하다. 행복한 사람은 절벽과 끝없는 배움을 갖고 태어난다. 그때 공부하고 쓴 에세이로 이번 나눔을 마치겠다. 사람은 겉으로만 게으른 게 아니라 천성적으로 게으르다. 생각에 게으른 것은 단지 그들을 만날 때 구덩이를 채우는 데 익숙하기 때문입니다. 부지런히 생각하고 생각하는 것은 거의 불가피합니다.总 결국 군주님들께 도움이 되었으면 하는 바램으로 마지막에 요약하겠습니다. 세분화된 크기 이동, 여러 단축키, 사용자 정의를 바인딩해야 함, Shift 키의 작동이 가능합니다. 🎜🎜VSCode에 대한 자세한 내용을 보려면 🎜vscode 기본 튜토리얼🎜을 방문하세요! 🎜🎜위 내용은 실크처럼 매끄러운 개발을 위해서는 일부 vscode 커서 작업을 이해하는 것이 좋습니다!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!