🤳

Androidスマホでコードを書く環境を用意するin2023夏

2023/07/29に公開

概要

通勤のときなどにちょっとコードを書いて試したいなと思って試行錯誤した結果、TermuxからGitHub Codespacesに接続するのが一番だという結論に至りました。そのやり方を書きます。

GitHub Codespacesを用意する

費用

無料枠が大きいので、とりあえず作ってみてもお金はかかりません。(2023夏時点)
接続時間が長かったりストレージの使用量が大きかったりするとお金がかかります。

手順

GitHubにログインしたあと、右上の方にある+マークなどからCodespaceを作成できます。

リポジトリを選択すればすぐにCodespaceを作成できます。リポジトリはないけれどとりあえず作りたいという場合は、「blank」と入力すれば、github/codespaces-blankというものが選択できるので、それで良いです。残りの選択肢はデフォルトのままでOKです。

スマホにTermuxをインストールする

  1. PlayストアにあるTermuxは古くて更新が止まっているので、まずF-Droidをスマホにインストールします。
  2. F-droidからTermuxを検索してインストールします。
  3. Termuxを起動して、pkg upgradeします。途中に表示される選択肢はデフォルトのままEnterでも問題ありません。

TermuxからCodespaceに接続する準備

  1. Gitをインストールします。
    pkg install git
  2. GitHub CLIをインストールします。
    pkg install gh
  3. GitHubにログインします。
    gh auth login
    選択肢がいくつか表示されるのでお好きなものを選択してください。私はGitHub.com HTTPS Login with a web browser を選択しました。
  4. opensshをインストールします。
    pkg install openssh
  5. Codespaceにsshするときにエラーになってしまうので、もう一度GitHubにログインします。
    gh auth refresh -h github.com -s codespace
  6. 接続してみます。
    gh cs ssh
    接続先のCodespaceを選択すれば接続完了です!

Codespaceでコードを書くための環境を整える

デフォルトのままだとLanguageServerが使えなかったりして、コードを書くのがなかなか大変なので、私はmattnさんのvim-lsp-settingsをインストールしました。一応私の手順を書きます。

  1. まずはvim-plugをインストールします。InstallationのUnixに書いてあるcurlコマンドをコピペするだけです。
  2. cdだけ打ってEnterしてhomeに移動して、vim .vimrcしてファイルを新規作成します。ファイルの中身は以下のようにします。
.vimrc
call plug#begin()
call plug#end()
  1. vim-lsp-settingsのInstallationに書いてある内容を、先ほど作った.vimrcに書きます。call plug#begin()とcall plug#end()の間に書きます。私はAuto-completeのPlugも併せて書きました。
.vimrc
call plug#begin()
Plug 'prabirshrestha/vim-lsp'
Plug 'mattn/vim-lsp-settings'
Plug 'prabirshrestha/asyncomplete.vim'
Plug 'prabirshrestha/asyncomplete-lsp.vim'
call plug#end()
  1. vimを起動して、:PlugInstallを実行します。
  2. 以上で準備完了です。あとはvimでファイルを開いたときに:LspInstallServerするように促されますのでその通りに実行すれば、LanguageServerが動くようになります。

Discussion