ある日突然、会社PCのユーザープロファイルが破損してしまって辛い目に遭ったので記録を残しておきます。
何が起きたか
だいたい以下検索結果の上位に出てくる感じのこと。
Users/temp - Google 検索
ググったところ、レジストリをいじると治るよ、とのことだったので試してみる。
が、新しくユーザープロファイルが作られるだけだったので、壁紙からデスクトップのショートカットアイコンやファイルの関連付けまでリセットされてしまった。
VSCodeも、インストールしていたプラグインやキーバインドが全部消えてしまった。
消えたようで消えていなかった
実は旧ユーザーのフォルダに設定値 (が記録されたファイル) は残っていた。
主要な設定ファイル
主な設定 (settings.json) とキーバインド設定 (keybindings.json) のファイルは以下のフォルダにあった。
C:\Users\{旧ユーザー名}\AppData\Roaming\Code\User\
この2個のファイルは新ユーザーのフォルダにそのままコピーしておいておく。
C:\Users\{新ユーザー名}\AppData\Roaming\Code\User\
プラグイン
コピーで済めばよかったのだが、どこになんのファイルがあるのかわからなかったため再インストールすることにした。
しかし、どんなプラグインを入れていたかなんて細かく覚えていない。
先述のフォルダを漁っていると、怪しいファイルがあった。
C:\Users\{旧ユーザー名}\AppData\Roaming\Code\CachedExtensions\user
中身はJSONだったので、とりあえず整形 (素のVSCodeでできる) して別ファイルに一時保存。
そして一気にGrep! (コマンドプロンプト使いこなせない)
User@Host MINGW64 ~/Desktop
$ cat Untitled-1.json | grep displayName
"displayName": "CharacterCount",
"displayName": "Markdown Preview Mermaid Support",
"displayName": "Doxygen Documentation Generator",
"displayName": "SVG Viewer",
(以下略)
ということで、だいたい入っていたプラグインが特定できました。
Grepで引っかかった行の前後を見れば作成者も特定できるので、これを手がかりに後は手作業でインストール……。
なんかもっといい方法もありそうだけど、これ以上は調べるのに時間がかかりそうだったので諦めました。