Titan Pocket で Termux を使う

# Termux いろいろ

ひさしぶりにキーボード付きのAndroid([Titan Pocket](https://www.unihertz.com/products/titan-pocket))を購入したので外出したときにも遊べるように [Termux](https://termux.com/) 入れた

![Titan-Pocket.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/142746/482ba681-3820-c4f1-0d20-022220cc2991.jpeg)

![Titan-Pocket2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/142746/685a10e0-c55a-29a8-a267-b94138e23ec0.jpeg)

## インストール

Google Play でもインストールできるが最新版は F-Droid で配布になったようなのでそちらでインストールする
[https://f-droid.org/packages/com.termux/](https://f-droid.org/packages/com.termux/)

## 最新化

パッケージなど最新化しておく

```
$ pkg upgrade
```

## 操作面

Titan Pocket のキーボードはいろいろ足りないものもあるがボリュームボタンとの組み合わせでなんとかなる(覚えないと…)
[https://wiki.termux.com/wiki/Touch\_Keyboard](https://wiki.termux.com/wiki/Touch_Keyboard)

Titan Pocket でよく使いそうなものを表にしておく(Ctrl+Cとか普通のUNIXターミナルで使うものは覚えてるので…^^;)

| ショートカットキー | 動作 |
| --- | --- |
| Ctrl+A | カーソルを行の最初に移動 |
| Ctrl+E | カードルを行の最後に移動 |
| Ctrl+K | カーソルから最終行までを削除 |
| Ctrl+U | 行の最初からカーソルまでを削除 |
| Volume Up+E | エスケープキー |
| Volume Up+T | タブキー |
| Volume Up+W | 上カーソルキー |
| Volume Up+A | 左カーソルキー |
| Volume Up+S | 下カーソルキー |
| Volume Up+D | 右カーソルキー |
| Volume Up+L | &#x7C; (パイプ) |
| Volume Up+H | ~ (チルダ) |
| Volume Q | エクストラキーの表示オン/オフ |

とくに最後のやつは上のキーを覚えてしまえば必要なくなるので消しておけば画面が広く使える
エスケープキーはvimとかでよく使うので以下の修正でAndroidの戻るボタンが使えるようになる
ついでに画面をフルスクリーンになるようにしておく

```
vi .termux/termux.properties
----
back-key=escape ← コメントを外す
fullscreen = true ← 追加する
```

ここではたと気がついた…\$と\`(バッククォート)が入力できない(/_;)
調べてみたけど有効な回避策は見つからない
しかたがないのでエクストラキーに追加する

```
vi .termux/termux.properties
----
extra-keys = [[{key: '$'},{key: '`'}, TAB, DOWN, UP, LEFT, RIGHT]]
```

以下のコマンドで反映

```
 $ termux-reload-settings
```

## 設定いろいろ

### ■ ストレージアクセス

そのままだと専用の領域しかアクセスできないのでAndroidとファイルのやり取りなどをするために以下のコマンドでストレージアクセスを可能にしておく

```
$ termux-setup-storage
```

SDカードを指している場合にはSDカードへのアクセスを許可するためのダイアログが出てくるので許可しておく
実行すると$HOME(~/)の下に`storage`というディレクトリが作成される

```
ls storage
dcim downloads external-1 movies music pictures shared
```

なにかと作業するのはSDカードになると思うので `~/work` をSDカードに作成してリンクを貼っておく

```
$ mkdir storage/external-1/work
$ ln -s storage/external-1/work .
```

### ■ SSHサーバ

自宅などではsshで接続して作業したほうが効率がいいのでSSHサーバを動かす
公式の手順を参考にOpenSSHをインストールする  
[https://wiki.termux.com/wiki/Remote\_Access](https://wiki.termux.com/wiki/Remote_Access)

```
$ pkg install openssh
```

まずはパスワード認証でログインできるように `/data/data/com.termux/files/usr/etc/ssh/sshd_config` を書き換ようと思ったが以下のようにすでにデフォルトで書いてあった

```
PrintMotd yes
PasswordAuthentication yes
Subsystem sftp /data/data/com.termux/files/usr/libexec/sftp-server
```

自分のユーザーにパスワードを設定する

```
$ passwd
```

sshdを起動する

```
$ sshd
```

PCから以下のようなコマンドで接続(ユーザー名はなんでもいいらしい)

```
ssh <AndroidのIPアドレス> -p 8022
```

パスワード認証は嫌なので鍵認証に変更する
`~/.ssh/authorized_keys` に自分のSSHキーの公開鍵を書いておく

あとは`/data/data/com.termux/files/usr/etc/ssh/sshd_config`を以下のように書き換える  
ついでにポート番号もデフォルトから変更しておく

```
PrintMotd yes
PasswordAuthentication no
Subsystem sftp /data/data/com.termux/files/usr/libexec/sftp-server
Port <1024以上の任意のポート番号>
```

SSH再起動

```
$ pkill sshd
$ sshd
```

### ■ git

なにはなくともgitコマンドは必要

```
$ pkg install git
```

### ■ vim
vimも必要

```
$ pkg install vim
```

### ■ tcshやら普段の環境設定

普段はtcsh使ってるのでシェルを変更

```
$ pkg install tcsh
$ chsh
Changing the login shell
Enter the new value, or press ENTER for the default
        Login Shell [bash]: tcsh
```

.cshrc は普段つかってるUNIXマシンから持ってくる…

PATHに`/data/data/com.termux/files/usr/bin`を追加する