키보드로 VScode에서 흔히 볼 수 있는git 조작(tig처럼)

15639 단어 GitVS Codetech
나는 평소에 VScode+Neovim을 이용하여 확장한다.
https://zenn.dev/bun913/articles/02785aed0ba50e
나 자신은 위조vimmer이지만'vim의 효율적인 버튼 귀속, 빠른 업무 추진'이라는 정신은 매우 좋다고 생각한다.
이번에는 키보드만 사용하면 내가 자주 사용하는git를 조작할 수 있도록 단축키를 설정해 보았다(매일 개선 중)

VS코드의 Git기는 매우 편리하다


VScode의 사이드바에 설정된git의 기능은 매우 편리하지 않습니까?
편집된 파일과 새로 추가된 파일의 차이를 볼 수 있어 매우 편리하다.
git add에서 스테이풀링을 하거나 스테이풀링에서 복원하는 것도 마우스 조작으로 간단하게 할 수 있다.

또한 제출 정보를 입력하여 신속하게 제출할 수 있습니다.

키보드로 이 부근의 조작을 하려고 키보드 설정을 바꾸었다.

keybinding.json


tig처럼git작업을 할 수 있도록 아래 버튼 연결을 설정해 봤습니다.
[
  // Git管理
  // サイドバーのgitボタンクリックの動作
  {
    "key": "shift+cmd+g",
    "command": "workbench.view.scm"
  },
  // spaceでエディターにdiffを開きつつカーソルは残したまま
  {
    "key": "space",
    "command": "list.selectAndPreserveFocus",
    "when": "sideBarFocus && activeViewlet == 'workbench.view.scm'"
  },
  // uでステージング
  {
    "key": "u",
    "command": "git.stage",
    "when": "sideBarFocus && activeViewlet == 'workbench.view.scm'"
  },
  // shift + c でコミットメッセージの入力へ
  {
    "key": "shift+c",
    "command": "git.commitStaged",
    "when": "sideBarFocus && activeViewlet == 'workbench.view.scm'"
  },
  // shfit + p でプッシュ
  {
    "key": "shift+p",
    "command": "git.push",
    "when": "sideBarFocus && activeViewlet == 'workbench.view.scm'"
  },
  // shift+u でステージングを戻す
  {
    "key": "shift+u",
    "command": "git.unstage",
    "when": "sideBarFocus && activeViewlet == 'workbench.view.scm'"
  }
]

데모


이렇게 되면 기본적으로 항상 키보드로 조작하면 이렇게 된다.
※ 네오비엠 확장을 사용해 위아래 커서 이동은 화살표 키가 아닌 hjkl로
  • 미리 보기 및 바인딩
  • 자세히 보고 싶을 때 Enter 등으로 스크롤
  • 아니면 스테이풀러
  • 디버그된 파일

  • 시위행진은 생략하고 git의 Push 장소를 설정하면 shift+p도 git push가 가능하다.


    파일의 조작도vim처럼 y와 p키로 할 수 있다.
  • 파일을 cmd+0으로 열기
  • j 또는 k를 통해 커서를 이동
  • v 분할 열기

  • 분할하지 않고 l 열기
  • y를 통해 파일 또는 디렉토리 복사
  • p로 붙이기
  • shift + y 상대 경로 복제

  •   // サイドバーのファイラーへ移動
      {
        "key": "cmd+0",
        "command": "workbench.view.explorer"
      },
      {
        "key": "alt+cmd+[Semicolon]",
        "command": "workbench.action.terminal.new"
      },
      // 新規ファイル作成
      {
        "key": "shift+cmd+n",
        "command": "explorer.newFile"
      },
      // 新規フォルダ作成
      {
        "key": "shift+cmd+m",
        "command": "explorer.newFolder"
      },
      // dでファイルを削除
      {
        "key": "d",
        "command": "deleteFile",
        "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus"
      },
      {
        "key": "alt+cmd+backspace",
        "command": "-deleteFile",
        "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus"
      },
      // rでファイルのリネーム
      {
        "key": "r",
        "command": "renameFile",
        "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"
      },
      {
        "key": "enter",
        "command": "-renameFile",
        "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"
      },
      // vで分割して開く
      {
        "key": "v",
        "command": "explorer.openToSide",
        "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"
      },
      // ファイルのコピー
      {
        "key": "y",
        "command": "filesExplorer.copy",
        "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"
      },
      // ファイルのペースト
      {
        "key": "p",
        "command": "filesExplorer.paste",
        "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"
      },
      // shift+y で相対パスをコピー
      {
        "key": "shift+y",
        "command": "copyRelativeFilePath",
        "when": "!editorFocus"
      },
      {
        "key": "shift+alt+cmd+c",
        "command": "-copyRelativeFilePath",
        "when": "!editorFocus"
      },
    
    

    좋은 웹페이지 즐겨찾기