4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Windows Terminal の設定(settings.json)を複数の PC で共有する方法 (OneDrive の場合)

Last updated at Posted at 2020-05-21

5/19 に GA となった Windows Terminal 1.0 の設定は
%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
に保存されています。

複数の Windows PC を持っていると共有させるのが面倒、ということで settings.json を共有する方法です。

仕組み

  • ファイル同期ツール
  • シンボリックリンク

この二つを利用します。今回、ファイル同期ツールには OneDrive を利用していますが、Dropbox でも box でもできるでしょう。

論よりコード (OneDrive の場合)

現状の settings.json を OneDrive フォルダにコピーします。一般ユーザ権限の cmd で OK です。

一般ユーザcmd
copy %LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json %OneDriveConsumer%

その後、Windows Terminal で参照されている settings.json を削除した後に mklink でシンボリックリンクを作ります。管理者権限 cmd で実行します。

管理者cmd
del /F %LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
mklink %LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json %OneDriveConsumer%\settings.json

※ 最初の delmklink が失敗するのを避けるためです。本当に消しちゃっていいかは確認してください。
%OneDriveConsumer% 環境変数の展開時に空白文字が入っている場合 (例えばユーザ名に空白が入ってる等) は、適宜ダブルクォーテーションを付けたりしてください。

解説

シンボリックリンクを使うことで本体を別のところに移動しています。Linux 等の OS ではよくやる技ですね。
Windows Terminal は素直に %LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json を参照してくれるので実現できています。

注意

settings.json は更新されたタイミングでファイル同期ツールによって同期されます。要するに上書きされちゃう恐れがあるので、更新する PC は1つの方がいいかもしれませんね。

あとがき

settings.json の設定自体は Windows Terminal 1.0 のカスタマイズで役に立った情報源 (2020年5月) をご覧ください。

ところで %OneDriveConsumer% 環境変数で 自分の OneDrive 管理下のパスが参照できるとは思わなかったです。(OneDriveの環境変数を活用する)便利。

settings.json は %OneDriveConsumer%\AppData\Roaming\WindowsTerminal\settings.json とかに置くのが正解なのかな?

EoT

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?