VSCodeの拡張機能 REST Clinet をもっと便利に使う

下記公式に書いてありますがREST Clientで変数を利用する書き方

github.com

変数に値を保持して利用する

普通に変数にURLを保持しておいて使い回す。

@baseUrl = http://127.0.0.1:5000/api

###
{{baseUrl}}/values 

APIの戻り値を保持して利用する

loginの戻り値がJSONで内部にTokenがある場合。 loginという名前でAPIを定義しておいてauthTokenという変数にレスポンスのTokenを保持する。 loginのリクエストを送信した時点でauthToken変数が有効になる。

@baseUrl = http://127.0.0.1:5000/api

###
# @name login
POST {{baseUrl}}/login HTTP/1.1
content-type: application/json

{
    "loginId":"loginId",
    "password":"pass",
}
###
@authToken = {{login.response.body.$.token}}

APIの戻り値を保持して利用する

先ほど取得した変数を使用する。

GET {{baseUrl}}/authorized_method HTTP/1.1
content-type: application/json
Authorization: Bearer {{authToken}} 

nvimでCコーディング

Ctags と vim-clang で定義へ移動

ctagsをインストール
$ sudo apt-get install ctags
deinファイルにvim-tagsを追加

~/.vim/rc/nvim/dein.toml

[[plugins]]]
repo = 'szw/vim-tags'
ctagsのパスを追加
$ which ctags
/usr/bin/ctags
initVimに追記

~/.config/nvim/init.vim

let g:vim_tags_project_tags_command = "/usr/bin/ctags -R {OPTIONS} {DIRECTORY} 2>/dev/null"
let g:vim_tags_gems_tags_command = "/usr/bin/ctags -R {OPTIONS} `bundle show --paths` 2>/dev/null"

vim-clang でコード補完

deinファイルにvim-clangを追加

~/.vim/rc/nvim/dein.toml

[[plugins]]]
repo = 'justmao945/vim-clang'

Chromebook Linux(Crostini)でVSCodeのターミナル起動エラーを回避する

ChromebookLinuxアプリを使用していて、外部にターミナルを表示する処理があった場合にCrostiniではターミナルが表示できないためエラーになってしまいます。
回避するためにKonsoleのインストールとxtermのシンボリックリンクに設定しておきました。

$ sudo apt-get install konsole
$ sudo ln -s /usr/bin/konsole /usr/bin/xterm

VSCodeC++デバッグをしている時に外部ターミナルが開かれるのですが、そのときにエラーになっていたのを回避できました。

Chromebook Linux(Crostini)に最新版NeoVimをインストールする

※ 下記はamd64についての内容です。

NeoVim最新版のダウンロードと配置
$ curl -OL https://github.com/neovim/neovim/releases/download/nightly/nvim-linux64.tar.gz
$ tar zxf nvim-linux64.tar.gz
$ sudo mv ./nvim-linux64/bin/nvim /usr/local/bin/
$ sudo -p /usr/share
$ sudo cp -r ./nvim-linux64/share/* /usr/share/

下記のファイルに追記 ~/. bashrc

...

export VIMRUNTIME=/usr/share/nvim/runtime 

ターミナルを再起動してNeoVimを起動

$ nvim

Ubuntu 18.10 で Microsoft Azure Storage Explorer を使う

Ubuntu 18.10 で Microsoft Azure Storage Explorer をインストールすると問題なく起動するのですが、いざAzureのアカウントを追加すると、「Waiting for authenication...」の表示が出て先に進めません。

Azure Account を追加しようとします。 f:id:AXON_K:20181114221644p:plain しかしアカウントの認証が終わって下記のダイアログが出た状態で先に進みません。 f:id:AXON_K:20181114221702p:plain 海外でもこの問題は話題になっているようですが、解決していないようです。

とりあえずは下記の「Use a connection string」でStorage単位で追加ができますので、それで使用しています。解決を待ちましょう。

「Use a connection string」と「Use a storage account name and key」は正常に追加が完了することを確認しました。

f:id:AXON_K:20181114221713p:plain Azure PotalのStorageのアクセス キーから「Use a connection string」の場合は接続文字列、「Use a storage account name and key」の場合はストレージアカウント名とキーを使用します。

Chromebookで0001docomoの自動ログインを使って快適ライフ

docomoで定額通信などの契約をしているとWi-Fi接続が無料でついてきますが、実際スマートフォンで利用していると勝手に電波の弱いWi-Fiに接続して通信ができなくなるなどストレスが多いです。 せっかくなのでスマホでは接続しないようにしてChromebookに設定することにしました。

契約の確認

最近のスマホは設定しなくてもSIM認証で自動的に接続されているはずですので、契約の有無はわかると思いますが、接続ができていない場合は契約の確認をしておいてください。 www.nttdocomo.co.jp

iPhoneAndroidWi-Fi切断

iPhoneAndroidの接続をWi-Fi設定から0001docomoを探して、自動接続をしない設定にします。iPhoneの場合は右の(!)マークから自動接続のチェックを外します。※初回はSIM認証を切断した直後は下記の重複ログイン扱いになり接続できない可能性があります。その場合は切断後しばらくしてから設定してみてください。

ChromebookWi-Fi設定

ChromebookWi-Fi設定から「0001docomo」を選択して下記の内容を設定します。
Wi-Fi設定の確認は下記を参考にしてください。

nttdocomo.support-menu.jp

EAP方式
PEAP
EAPフェーズ2認証
MSCHAPv2
サーバーのCA証明書
既定
ID
docomoの設定
パスワード
docomoの設定
署名ID
なし

スマホとは違ってChromebookは落ち着いた場所に座って使うので、開いたときに自動的にWi-Fiにつながっているのは快適です。

ChromeOSのLinux(Crostini)で日本語入力(自動起動対応)

ChromeOSのLinuxで日本語入力は、Crostiniの性質上、起動時に設定を読み込ませる方法が見つからなく、手動でFcitxを開始していましたが、ようやく自動起動の方法が見つかりました。

※ 下記の手順はamd64です。現時点でarm64のインストールパッケージは無いようです。

フォント

日本語フォントはインストールしておいてください

例として「源ノ角ゴシック Code JP」を入れます。

$ curl -OL https://github.com/adobe-fonts/source-han-code-jp/archive/2.011R.tar.gz
$ tar zxf 2.011R.tar.gz
$ sudo cp ./source-han-code-jp-2.011R/OTF/* /usr/local/share/fonts
$ sudo fc-cache -fv

MozcのインストールとFcitxの設定

fcitx-mozcをインストール
$ sudo apt-get install fcitx-mozc

ChromeOSのメニューにFcitxアイコンが追加されているのでタップして起動。これをしておかないと次のInput Methodに表示されません。

f:id:AXON_K:20181018083217p:plain

Input Method設定
$ fcitx-configtool

左下の「+」で追加 f:id:AXON_K:20181018082308p:plain 「Only Show Current Language」のチェックを外してJapaneseのMozcを選択 f:id:AXON_K:20181018082318p:plain Input MethodにMozcが追加されているのを確認して設定完了 f:id:AXON_K:20181018082322p:plain

日本語入力ができるようになりました。 f:id:AXON_K:20181018083444p:plain

FcitxをLinux(Crostini)の起動時に開始する

下記のファイルに環境変数の設定を追加します。

/etc/systemd/user/cros-garcon.service.d/cros-garcon-override.conf

Environment="GTK_IM_MODULE=fcitx"
Environment="QT_IM_MODULE=fcitx"
Environment="XMODIFIERS=@im=fcitx"
下記のファイルに自動起動の設定を用意します。

~/.sommelierrc

/usr/bin/fcitx-autostart
一度ログアウトしてログインし直してください。