Pythonを用いてVimを拡張してみよう
翻訳校正:村上雅章・野崎裕子
テキストエディタVimはPythonのスクリプティングもサポートしている。Pythonを使ってVimに独自の機能を追加する方法をご紹介する。
あなたがテキストエディタVimを使っているならば、あらかじめ用意されているその機能の多さと便利さについては既にご存知のことだろう。そして、このエディタに独自の機能を追加しようとしたものの、Vimscript言語の難解さに嫌気が差したことがある人にとっては、VimがPythonのスクリプティングを内部でサポートするようになったということは良いニュースだろう。
以下のコマンドは、あなたの使用しているVimのバージョンが-pythonフラグを指定してコンパイルされたものである場合にのみ動作する。バージョン7.0以降のバイナリ版であればデフォルトでこのフラグが指定されているものの、それよりも古いバージョンでは指定されていない可能性がある。あなたの使用しているVimにPythonがサポートされているかどうかは、以下のコマンドを入力してみれば判る。
:python print "hi"
ステータスバーに「hi」と表示されていれば、OKだ。
ちょっとしたPythonプログラムをその場で使いたいという場合にはPythonコマンドをいつでも用いることができるものの、上記の例からも判るように、その標準出力先はドキュメントではなくステータスバー上となっている。
より複雑なPythonコードを使用するには、コードを関数として組み込んでしまうのが良いだろう。そのための方法にはいくつかあるが、PythonブロックをVimscript関数に組み込むか、Python関数を呼び出すマップもしくはマクロを使用するかのいずれかとなっている。ここでは前者の方法を説明しよう。
ウェブページをダウンロードし、カレントウィンドウに挿入するために、urllibとBeautifulSoupライブラリを用いる関数を記述することにしたい。BeautifulSoupについてあまり知らないという読者の方は、Pythonによるウェブサイトのスクレーピングについて説明しているこのコラムを読んでみてもらいたい。
- 5人の推薦記事
- 0人がクリップ
-
ソーシャルブックマーク(-)
- トラックバック(0)
- ホワイトペーパー
- 企画特集
- 話題のタグ
SQLite対応アプリのデータベースファイルを閲覧する
グーグル、「Google Buzz」を発表--Gmailのソーシャル機能を強化
「H.264」ストリーミングのロイヤリティ無料期間が延長
マイクロソフト、「Office 2010」のRC版をリリース
DBのパフォーマンスに困ってませんか?
Xbox Live インディーズゲーム開発の軌跡
新しい視点のレンタルサーバが誕生!
仮想化をダメにするストレージの実態
経営統合後の事業損益構造の見える化を実現
アプリケーション仮想化 3つの課題
御社はまだフリーの転送サービスですか?
通販サイトのアクセス集中からの危機を救う
レガシーアプリケーションの稼働どうしてる?
仮想環境のバックアップは難しいのか
アンケートから見るセキュリティ対策の実態
事例 VMwareでデータセンターをクラウド化
身近な業務をCRMが変革!
利用者の理想を追求した最新レンタルサーバ