iOS用のVim (Vi IMproved)がApp Storeで配信開始!
2016/05/12
価値ある情報をユーザー視点で発信するブログ
2016/05/12
何と、iOS用のVimがApp Storeで配信開始されています!
iPhone / iPad両対応のユニバーサルアプリケーション。
とりあえず、iPadで動かしてみましたが、確かにVimです(続きは[Read More]から)
Vim (Version 1.0.0) | ||
カテゴリ: | 仕事効率化 | |
価格: | 無料 | |
デベロッパ名: | Applidium | |
リリース日: | 2012/01/18 | |
対応デバイス: | 全機種 | |
現Ver.の平均評価: | (無し / 0件の評価) | |
通算の平均評価: | (無し / 0件の評価) | |
Game Center: | 非対応 |
もくじ
いくつかの制約事項があるとのことです。
Applidium — Vim |
iOSのキーボードからは、Tab、Esc, Ctrl, Meta(Alt)などたくさんのキーが欠けています。
Vim for iOSでは、キーボードアクセサリにこれらのキーを追加するアプローチを取るのでなく、標準のキーボードだけで使えるように考えてあるそうです。
Escキーが無いとインサートモードから抜けることができませんが、デフォルトでは「\(バックスラッシュ)」キーにEscが割り当てられています。
1本指でのタップとドラッグは、マウスのクリックとドラッグに相当。
2本指での水平、垂直ドラッグは、マウスホイールイベントを生成。
外付けキーボード対応待望論というものが当然出てきますが、iOS SDKの範疇ではCtrl、Esc、Shift、Option、CommandなどのModifierキー、カーソルキー、ファンクションキーの押下を判定できません。
オープンソースなので、対応版のforkを作って、iOS Developer Programに加入した開発者、ないしは開発者からAd-Hocビルドを配布された人の間で使うというぐらいしかできませんね。
$HOMEディレクトリ(Vim.appのsandbox内のDocumentsディレクトリ)がiTunesファイル共有から見えるようになっているので、そこでファイルの出し入れができます。
起動時に$HOME/.vimrcを読み込みます。
$HOMEは、コマンドモードで以下を実行してみると分かります。
:echo $HOME
.vimrcの中身を書いて、
:w .vimrc
で保存。次回の起動時からその内容が読み込まれます。
.vimrcには、今のところ以下のように書いています。
syntax on
set number
set list
map! €
map! £
map! ¥
map! ?
map! \ ?
€(ユーロ)と£(ポンド)にカーソルの上下。
¥にCtrl+N。
?にEsc。
\(バックスラッシュ)に?を割り当てていますが、反映されませんね。このままだと?が入力できないので思案中。
カーソルの上下があると「:」の後に上下でコマンドのヒストリがたどれます。
Ctrl+Nがあると、Dynamic Abbrevが使えます。例えば、「hoge hage」と打った後にスペースを空けてhと打ち、Ctrl+Nすると意味が分かると思います。
補完候補はカーソルの上下、ここでは€(ユーロ)と£(ポンド)ですが、それで選択できます。
このデフォルトのキー割当は、「Vim.app/vimrc」で設定されていますが、これをコメントアウトしても、.vimrcで上書きしてもまだ有効です。どうすりゃいいんでしょう。
Vimにファイラーがあったよなーとつぶやいていると、神計算機アプリCalqum2作者 @cocopon さんが「:e .」であると教えてくれました。
Calqum
カテゴリ: ユーティリティ
価格: ¥170
@hitoriblog Vimのファイラの件、解決しました? ":e ." とディレクトリを指定すれば、標準付属のNetrwが使えますです
— cocopon (@cocopon) January 20, 2012
「j」、「k」でカーソルを上下。「Enter」でディレクトリ下降、「-」で上昇のはずですが、「Enter」の方が効きません。
しょうがないので、下る場合は「o」を使い、ウインドウ分割。「:only」で他のウインドウを閉じるというやり方でディレクトリ探索してみました。
「:only」は一度入力すれば、あとは「:」、£(ポンド)でヒストリから呼び出せますね。
「Enter」が効くようになる設定方法はあるんでしょうか?
:e /
これでルートディレクトリが見えてしまいます。「o」でディレクトリを降り、「:only」でほかのウインドウを閉じる。この繰り返しです。
ディレクトリでなく、ファイルだった場合は「o」でそのファイルを開きます。
Vim早見表
カテゴリ: ビジネス
価格: ¥85
公式ページにあった制約事項の通り、VimのDocuments以外はリードオンリーです。
Vimにプラグインを追加しましょう。
追加できるんです!
次なるステップのためにFavEx.vimというプラグインをインストールします。
FavEx.vim : お気に入りファイル、お気に入りディレクトリ管理 — 名無しのvim使い |
プラグインは$VIMRUNTIMEを起点としてインストールします。
Vim for iOSの$VIMRUNTIMEとはどこのことでしょう?
以下で分かる通り、「/var/mobile/Applications/xxxxxx/Vim.app/runtime/」です。
:echo $VIMRUNTIME
$VIMRUNTIMEにプラグイン関連のファイルを設置するためにはiPhone Explorer、現iExplorerが必要です。
iExplorer – Formerly iPhone Explorer, is an iPhone browser for Mac and PC |
iExplorerは、Mac/PCとUSBケーブルで接続されたiPhone/iPadへ、ファイルの受送信が可能なアプリケーションです。
通常は不可能な、アプリケーションバンドル内へのファイルの設置、ファイルの取得、ないしは削除が可能です。
iExplorerでVimのディレクトリを探します。そして、「Vim.app/runtime/plugin/」へfavex.vimを設置。「Vim.app/runtime/」へfavlistを設置。
そしてVimを再起動すればインストール完了。
ニワカなのでそうしていますが、emacsにおけるload-pathの設定のようなことができるのであれば、そうしてください。
どっちみちiTunesファイル共有で所定のディレクトリにファイルを設置するのは難儀なことなので、iExplorerを使った方が確実かと思いますが。
2012.01.23追記: 「Documents/.vim/plugin」への設置でもいいかもしれませんね。favlistは、「Documents/.vim/」への設置になるでしょうか。こちらであればバージョンアップ時にも消えないでしょう。この場合であれば、vim.appというディレクトリをMac/PC上で作り、その中にpluginディレクトリとプラグインを内包、一度iTunesファイル共有で転送した後でvim.appを.vimにリネームするという方法が取れ、iExplorerは不要かもしれません。既に.vimディレクトリがあれば、まずそれをPC/Macに転送する手順が必要かもしれません。Macの場合はそのままだとFinderで不可視になりますから、コピーする前にvim.appなどにリネームするべきでしょう。
プラグインに限らず、Vim.app/vimrcなどアプリケーションバンドルの中のファイルは、アップデートがあった場合に(加えた変更が)消え失せると思いますので、それを前提とした運用をしてください。
sandbox外のファイルが開けるなら、ぜひGoodReaderのDocumentsディレクトリを探したいところ。
GoodReader for iPhone
カテゴリ: 仕事効率化
価格: ¥450
GoodReader for iPad
カテゴリ: 仕事効率化
価格: ¥450
なぜなら、GoodReaderはファイル転送クライアントとして高性能である上、Open Inにも対応しており、他アプリケーションからファイル受け取りをすることも可能で、なおかつzipファイルの解凍などにも対応していますから、GoodReaderのDocumentsディレクトリは一大ファイルハーレムとなるからです。
Dropboxクライアントなどはファイルをデータベース化しているので外からいじるのが難しいですが、GoodReaderはDocumentsディレクトリの中にファイルがそのまま置かれているのも魅力。
:e /var/mobile/Applications/
これで各アプリケーションのsandboxの一覧が見えます。この中にGoodReaderのディレクトリがあるはずですが、各sandboxは無意味な文字の羅列でどれがどれやら分かりません。
:e /var/mobile/Applications/**/GoodReader
このように、各アプリケーションのsandboxがあるパスをアスタリスク二つのワイルドカードにし、続けてGoodReader.appないしはGoodReaderIpad.appがあることを想定して「GoodReader」と続けてTabキーを押します。
ちなみに、Tabキーは外付けキーボードからしか押せないはずですので、このときだけでもつないでおきます。
適当なキーにTabをmapしても「^I」というコントロールコマンドが入力されるばかりかと思います(ニワカなのでよく分かってない)。
すると、しばらくのハングアップが続いた後に、アスタリスク二つの部分が実際のsandboxの名前として補完され、以下のような感じで補完が完了すると思います。
/var/mobile/Applications/xxxxxx/GoodReaderiPad.app/
僕はかなりインストールするアプリケーションの数を絞っているにもかかわらず、それでも結構時間がかかるので、アプリケーションをたくさん入れている人は、この手法を断念した方がいいかもしれません。
この状態でenterを押すと、GoodReaderのアプリケーションバンドルの中が表示されます。ここから「-」で階層を一つのぼり、さらに「j」、「k」で上下してDocumentsディレクトリで「o」で、やっと目的のGoodReaderのDocumentsディレクトリに到達します。
まず「c」でカレントディレクトリを移動してから、ここで以下のコマンドを実行すれば、FavExにGoodReaderのDocumentsディレクトリがブックマークされます。
:FDirectory
ブックマークからの呼び出しは、以下を実行。
:FExplore
ちなみに、ファイルを開いているときに以下で、ファイルのブックマークです。
:FFile
sandboxのパスは、確かアップデートのたびに変わったかと思いますので、GoodReaderのアップデートの後、ブックマークから移動できなくなったらこの手順を繰り返してください。
▼GoodReaderのDocumentsディレクトリにあるJavaScriptファイルをVim for iOSで開いた例。この後、:onlyしてウインドウ分割を解除、さらにソフトウェアキーボードをしまうと全画面表示になります。指2本ドラッグでスクロール。
繰り返しになりますが、VimのDocumentsディレクトリ以外の場所のファイルはリードオンリーなので、編集はできても、その場には保存できません。
以下のようにすることで、VimのDocumentsディレクトリに開いているファイルを保存できます。VimのDocumentsディレクトリに保存したファイルをiTunesファイル共有、iExplorer、つまり母艦経由以外の手段で外に持ち出す方法は今のところ無いと思います。
iPhone/iPad単体で使っている間は一方通行というわけですね。
:w $HOME/hoge.txt
ただ、どこにあるファイルでも、特にここまでの手順でブックマークに登録したGoodReaderのDocumentsディレクトリに置いたファイルなどは、すぐにVimで開いてシンタックスハイライティングを効かせてほぼ全画面でファイル閲覧でき、「/keyword」と「n」「N」で検索できますから、それだけでも便利かと思います。
すごいですね、Vim for iOS。シンタックスハイライティングに対応してるのは貴重です。
しかし、Ctrlが使えないと何かと不便ですし、Open Inや外部ストレージに対応していないと、制約が大きい。
やはりその辺りの発展に期待したいところですね。
日本語は当然のごとく入力できませんし、表示もできないようです。UTF-8で処理されているようですが、フォントがCourier決めうちになっているっぽいですね。
表示さえどうにかなってしまえば、skk.vimで日本語入力まで持っていけるかもしれないですね。
@h_east さんが日本語表示に成功されました!
iOS Vimで日本語表示できた。文字コードutf-8のファイルhogeをiTunesで転送してVim起動。
— ぷりケツお献立メコン川 (@h_east) January 26, 2012
:e hoge
:set guifont=Osaka-Mono
:set enc=utf-8
でいけました。 #vim pic.twitter.com/koDLz2aa
さっきのiOS Vim、guifont要らんね。実質encの設定だけでおk。
— ぷりケツお献立メコン川 (@h_east) January 26, 2012
set enc=utf-8
iOS Vimで日本語ヘルプ出来た!!
— ぷりケツお献立メコン川 (@h_east) January 26, 2012
iTunesのファイル共有使っただけで特殊なアプリとかつかってないです。 #vim pic.twitter.com/Q2jT3vBi
:set enc=utf-8
でOKとのことです。こいつは楽しくなってきました。
@grandeforesta さんからの情報。当然といえは当然ですが、オープンソースとのことです。
ナイスなforkを期待。
話題になってたiOS用のVimのソース公開されてるじゃない。しかもそのままにビルドできたよ。https://t.co/Z9N93Tma pic.twitter.com/v2ZNLiHq
— Yusuke (@grandeforesta) January 20, 2012
Objective-Cなソースは。gui_ios.mだけ(?)みたい < Vim for iOS
— Yusuke (@grandeforesta) January 20, 2012
Vim
カテゴリ: 仕事効率化
価格: 無料
Vim早見表
カテゴリ: ビジネス
価格: ¥85
最新型iPhone 4/4S用バックライト付きケース一体型キーボードが約半額に! | ひとりぶろぐ |