# 開発日記-2024-07-19 / Hacke Sheet用のVS Codeコードスニペットを作成したり

## Hacke Sheet用のVS Codeコードスニペットを作成する

以下のファイルを作成すると、`control` + `space` で入力補完を表示できる。

```json:.vscode/hackersheet.code-snippet
{
  "link-card": {
    "prefix": "::link-card",
    "body": "::link-card[$TM_SELECTED_TEXT$1]",
    "description": "Markdown extension for link card embeds on Hacker Sheet."
  },
  "youtube": {
    "prefix": "::youtube",
    "body": "::youtube[$TM_SELECTED_TEXT$1]",
    "description": "Markdown extension for YouTube video embeds on Hacker Sheet."
  },
  "x-post": {
    "prefix": "::x-post",
    "body": "::x-post[$TM_SELECTED_TEXT$1]",
    "description": "Markdown extension for X post embeds on Hacker Sheet."
  },
  "kifu-to": {
    "prefix": ":kifu-to",
    "body": ":kifu-to[$TM_SELECTED_TEXT$1]",
    "description": "Markdown extension for linking shogi game moves on Hacker Sheet."
  }
}
```

- `$TM_SELECTED_TEXT`はスニペット挿入前の選択中のテキストを表す変数
- `$1`はスニペット挿入後のカーソルの位置を表す変数

選択範囲の文字列をスニペットで囲むようにするためには以下のようなショートカットを定義する必要がある。

```json:keybindings.json
[
  {
    "key": "cmd+k 1",
    "command": "editor.action.insertSnippet",
    "when": "editorTextFocus"
  }
]
```

これで `command` + `k` → `1` でスニペット選択の入力補完が開く。

### スニペット作成の参考記事

::link-card[https://zenn.dev/yhsi/articles/80c8a030c2761d]

## anyenvをアンインストールする

::link-card[https://anyenv.github.io/]

::link-card[https://zenn.dev/ryuu/scraps/860650b469c3bd]

Zennのスクラップを参考にアンインストールしていく。

1. アンインストール

   ```sh:Terminal
   brew uninstall anyenv
   ```

2. ファイルの削除  
   ファイルが残っていたので削除しておく。

   ```sh:Terminal
   rm -rf ~/.anyenv
   rm -rf ~/.config/anyenv
   ```

3. `~/.zshrc` から `eval "$(anyenv init -)"` を削除。
