出先でのサーバ管理・プログラミングが楽々❣
~VoiceOver対応のiOS用ターミナルアプリ2つをご紹介~


日ごろからプログラミング・サーバ管理などをしていると、出先でエラー処理・設定変更等が必要になることがあるかと思います。

そんな時、以前のLUCAはJump Desktopなどのリモートデスクトップを使って自宅PCに接続 → ターミナルを起動 → サーバにSSH接続する という少し面倒な段階を踏んでアクセスしていたんですが、先日VoiceOverでも操作しやすいiOS用のターミナルアプリが2つもリリースされていることを知りました。

そこで今回の記事では、早速LUCAが試してみたVoiceOver対応のiOS用ターミナルアプリをまとめてご紹介したいと思います。

⚙ 記事中のレビューには一部LUCAの個人的な感想・見解が含まれているかと思いますが、ご容赦ください。


座ってスマホを操作するヒヨコのイラスト

前提: 「iOS用ターミナルアプリ」って何?

詳しいアプリの紹介に入る前に、まずは「ターミナルアプリって何?」や、「iOS用のターミナルってどういうこと?」という方向けに、概要をご説明していきます。既にご存じの方、アプリの詳細から読みたいという方は次項以降の内容をご覧ください。

概要

そもそも「ターミナル」とはコマンドラインインタフェースを提供するソフトウェアのことで、コンピュータ・サーバ・ネットワークを操作・管理したり、プログラミングをするために用いられているものです。ターミナルアプリとはそんなターミナルの指示を送信するためのアプリケーションのことで、Windows Terminalなどがよく知られています。

今回ご紹介するのはそんなターミナルをスマートホンで利用できるようにしたもので、アプリによってローカルディレクトリを操作できるもの、SSH接続に特化したものなど、様々な機能・デザインのターミナルアプリがリリースされています。

AppStoreでは多数のターミナルアプリが提供されていますが、大部分がVoiceOver非対応です。記事中でご紹介しているもの以外をダウンロードされる際はご注意ください。


できること

一言で「iOS用ターミナルアプリ」と言っても使える機能はアプリによって大きく異なります。基本的な機能については下記の通りですが、詳しくは各アプリの紹介文をご参照ください。

ローカルディレクトリの管理(SSH専用アプリは除く)
iOS端末は実はLinuxと同様のファイルシステムを採用しているため、権限を必要としない「~/Documents/」以下のディレクトリについてはアクセス・変更することができます。
サーバの管理
レンタルサーバ・VPSなどにSSH接続し、通常通り管理・操作することができます。
プログラミング
サーバにSSH接続した後は勿論、アプリによってはPythonなどのプログラミング言語がデフォルトで搭載されていることもあり、そのような場合にはローカル環境でちょっとしたプログラムを作成・編集することもできてしまいます。
他アプリからのコピー・ペースト等
ほかのアプリでコピーした文字列等は、そのままターミナルアプリでペーストすることができるようになっています。また、一部のアプリではコピー履歴・定型文挿入・フィンガープリント/キー保存機能などが搭載されていることもあり、入力しやすいような工夫がされています。

できないこと

非常に便利なiOS用ターミナルですが、パソコンとは違い対応していない機能も多数あります。

大部分のローカルディレクトリへのアクセス
本来ルート権限がなくてもアクセスできるはずの「/var/mobile/」以下のディレクトリですが、残念ながらアプリ側からアクセスできる階層は「~/Documents/」以下のもののみとなっています。
※なお、iOS端末を脱獄し、ルート権限を与えた場合には「Filza」などの専用アプリで全階層を操作することができるようになります。
ローカルディレクトリ上のApt/Yum操作(アプリにより異なります)
Pipについては対応しているアプリも多いのですが、Apt/Yumについては基本的に制限されているようです。追加機能等をインストール・管理したい場合は、自分のサーバにSSH接続して利用する必要がありそうです。
GUIアプリの利用
使用上GUIアプリの表示は難しいようで、使えない・制限されることが多いようです。
※例: 「Nano Editor」は起動・使用することはできますが、メニューボタンなどのGUIが一切表示されません。

iOS用ターミナルアプリの基本については以上です。事項から、VoiceOverに対応したもの2つについてご紹介していきたいと思います。


無料アプリ「a-Shell」のご紹介

1つ目にご紹介するのは、無料とは思えないほど多機能でありながら、VoiceOverユーザのことまで考えて開発されているターミナルアプリ「a-Shell」です。まずは基本情報からどうぞ。

アプリ名・AppStoreリンク
「a-Shell」
開発者
Nicolas Holzschuch
価格
無料
特徴
iOSデバイスのローカルディレクトリを操作可能
デフォルトでPython/Pip/Lua/Perl/JavaScript/C/C++がインストールされている数少ないアプリ
その他、TeX/nslookup/ping/whois/ifconfigなど数多くのユーティリティに対応
iPad版では複数のウィンドウを同時に操作可能

続いて、a-Shellの長所と短所について解説します。

a-Shellの長所

ローカル環境でプログラミングができる
a-Shellの一番の長所は、上記でも説明した通り幅広いプログラミング言語が標準搭載されているところです。
例えばLUCAがよく使っているPythonについては比較的新しい3.11.0が搭載されている他、Pythonライブラリのインストールに必要なPipも制限なく利用できるので、サーバを中継する必要もなくスマホだけで開発することができます。
VoiceOverの対応度が非常に高い
WindowsやMacのターミナルと同様に出力結果が自動的に且つ順序良く読み上げられる他、キーボード入力時のフィードバックについても比較的早いので、VoiceOverユーザでもストレスなく操作することができます。
※入力した文字をローターアクションで読み返す、カーソルボタンで移動した先の文字を読ませるという機能については残念ながら、次にご紹介する「Prompt」と同様非対応となっています。
無料で使える
一番ありがたいのは、これだけの機能を全て無料で使えるという点です。
機能を抑えて容量を減らしたライト版もリリースされてはいますが、どちらも無料でダウンロードすることができます。

a-Shellの短所

アプリそのものの容量が大きい
たくさんのプログラミング言語・アプリ・ユーティリティが標準搭載されているということは、アプリ本体の容量が膨らんでしまうということになります。
またPip等を利用して追加機能をインストールしていく度にアプリのサイズが大きくなっていってしまいますので、デバイスの容量が小さい方はご注意ください。
日本語の入出力がやや苦手
入力中のひらがなが変換する前に勝手に確定されてしまう、日本語の出力内容が不思議なところで改行されてしまうなど、日本語の入出力に関する不具合が時々発生するようです。
ターミナルから日本語を打つ機会が多いという方にとっては、次項でご紹介するPromptの方が向いているかもしれません。

以上、a-Shellの特徴についてご紹介しました。

総評とすると日本語の入出力以外はほぼ100点で、特にプログラミング目的で利用される場合にはとてもお勧めです。


a-shellのスクリーンショット。「pip freeze」でインストール済ライブラリの一覧を表示しているところです。

有料アプリ「Prompt」のご紹介

続いてご紹介するのは、SSL接続に特化した有料のターミナルアプリ「Prompt」です。こちらも基本情報からご覧ください。

アプリ名・AppStoreリンク
「Prompt 2」
開発者
Panic, Inc.
価格
¥2,200
特徴
SSH・SCPなど、外部のサーバに接続するためだけのターミナルアプリ
複数の接続設定を保存し、ワンクリックで接続可能

Promptの長所

複数サーバの使い分けが便利
複数サーバのログイン情報を保存し、ワンクリックでログインすることができます。
個人用・仕事用・ウェブサイト用など多数のサーバを管理されている方にはお勧めです。
日本語の入出力が得意
先にご紹介したa-Shellと比べて日本語の入出力が得意です。
LUCAが試してみた限り、長文でも正しく変換・表示されているようでした。
設定項目が豊富
アプリトップ画面からアクセスできる設定画面では、デザイン・セキュリティ・クリップボード履歴・認証カギ(フィンガープリント)・キーボード・接続方法など、数多くの項目をカスタマイズすることができます。

Promptの短所

VoiceOverとの相性がいまいち
キーボード入力時のフィードバックが遅く打ち間違えをしやすい他、出力結果が表示される度にそれまでの読み上げが遮られてしまうので、VoiceOverユーザにとっては少し使いづらいかもしれません。
とは言っても出力結果はa-Shellと同様、後から確認することもできますので、アクセシビリティが特別低いということはありません。
ローカルディレクトリにアクセスすることができない
サーバ接続に特化したアプリなので、ローカル環境には一切対応していません。
ローカルでプログラム開発をしたいという方には向いていないかもしれません。
何より値段が高い
定額制のターミナルと比較するとそれほど高価ではありませんが、それほど多機能という訳ではないのに¥2,200するのは少し高いような気がします。

以上、Promptのご紹介でした。

ローカル環境に対応していない、VoiceOverとの相性があまり良くないという欠点はありますが、複数のサーバを使い分けている方にとっては便利なアプリなのではないでしょうか。


まとめ

さて、今回の記事ではiOS端末でサーバ管理・プログラミングができる、ターミナルアプリの概要と、VoiceOver対応のアプリ2種類についてご紹介しました。

少し難し目の内容だったかもしれませんが、パソコンがなくても自由にターミナルを利用することができて非常に便利なので、ぜひお試しください。


*本ページの記載内容に誤りがあれば、メール、TwitterのDMなどでお知らせください。


メールお問い合わせ
Twitter: @naokiluca
↑ホームに戻る