これは、SathiyaMoorthy によって書かれたゲスト投稿です。 03
この記事は、進行中の Vi / Vim のヒントとテクニック シリーズの一部です。プログラマーは、コーディング中に次のような多くの反復タスクを実行する場合があります。
- ファイル ヘッダーの追加
- 関数/フレーム コメントの追加
- デフォルトのコード スニペットを含む
- 構文チェックの実行
- 関数に関するドキュメントを読む
- コード ブロックをコメントに、またはその逆に変換する
Perl サポート Vim プラグイン – Perl-IDE は、上記のすべてを行う最も簡単な方法を提供し、多くの時間とキーストロークを節約します。11
このプラグインは Fritz Mehner によって作成されました。彼はプラグインの目的を次のように説明しています。「メニューとホット キーを使用して Perl スクリプトを作成および実行する」.
この記事では、3 つの簡単な手順でプラグインをインストールする方法と、プラグインの 7 つの強力な機能について説明します。
Perl サポート Vim プラグインをインストールする 3 つの手順
33
ステップ 1:Perl サポート Vim プラグインをダウンロード
vim.org Web サイトからプラグインをダウンロードします。
$ cd /usr/src $ wget http://www.vim.org/scripts/download_script.php?src_id=9701
ステップ 2:Perl サポート Vim プラグインをインストールする
$ mkdir ~/.vim $ cd ~/.vim $ unzip /usr/src/perl-support.zip
ステップ 3:~/.vimrc でプラグインを有効にする
~/.vimrc に次の行を追加して、Vim エディターのプラグインを有効にします。
$ vim ~/.vimrc filetype plugin on
48
Perl サポート Vim プラグインの 7 つの強力な機能
50
機能 1:*.pl ファイルに自動ヘッダーを追加
拡張子が .pl のファイルを開くと、以下に示すようなヘッダー付きのファイルが開きます。これにより、挿入モードの [説明] フィールドにもカーソルが置かれます。
$ vim myprogram.pl #!/usr/bin/perl #=================================================== # # FILE: myprogram.pl # # USAGE: ./myprogram.pl # # DESCRIPTION: # # OPTIONS: --- # REQUIREMENTS: --- # BUGS: --- # NOTES: --- # AUTHOR: Dr. Fritz Mehner (mn), [email protected] # COMPANY: FH Südwestfalen, Iserlohn # VERSION: 1.0 # CREATED: 12/23/2008 03:47:07 PM # REVISION: --- #=================================================== use strict; use warnings;
63
AUTHOR と COMPANY のデフォルト値を変更するには、~/.vim/perl-support/templates/Templates のデフォルト値を変更してください
$ vim ~/.vim/perl-support/templates/Templates |AUTHOR| = SathiyaMoorthy |AUTHORREF| = sm |EMAIL| = [email protected] |COMPANY| = mycompany
79
新しい perl ファイルを作成すると、以下に示すように、AUTHOR と COMPANY の変更された値が表示されます。
$ vim myprogram.pl #!/usr/bin/perl #=================================================== # # FILE: myprogram.pl # # USAGE: ./myprogram.pl # # DESCRIPTION: # # OPTIONS: --- # REQUIREMENTS: --- # BUGS: --- # NOTES: --- # AUTHOR: SathiyaMoorthy (sm), [email protected] # COMPANY: mycompany # VERSION: 1.0 # CREATED: 12/23/2008 04:09:23 PM # REVISION: --- #=================================================== use strict; use warnings;
83
注: カスタム フィールドをヘッダーに追加するには、~/.vim/perl-support/templates/file-description.template ファイルを変更し、独自のカスタム フィールドを追加します。
機能 2:\isu を使用した Perl サブルーチンの追加
サブルーチンを作成するには、通常モードで \isu と入力します。これにより、サブルーチン名の入力が求められ (下の図 1 に示すように)、デフォルトの関数内容でサブルーチンが挿入されます (下の図 2 に示すように)。90
101
116
機能 3:\cfu を使用して関数ヘッダーを挿入する
関数ヘッダーを挿入するには、通常モードで \cfu と入力します。これにより、以下に示すようにコメントが追加されます。
図 3:Perl コードへの関数コメントの挿入機能 4:\cfr を使用してフレーム コメントを追加する
フレーム コメントを追加するには、通常モードで \cfr と入力します。これにより、次の書式設定されたコメントが表示されます。
図 4:フレーム コメントを Perl コードに挿入する機能 5:ファイルを保存し、\rr を使用してすぐに実行
通常モードで \rr と入力すると、ファイルが保存され、すぐに実行されます。
機能 6:\cc を使用してコード ブロックにコメントを付ける
コード ブロック全体をコメントに変更するには、ビジュアル モードでコードを選択し、\cc と入力します。
機能 7:\nr を使用して、定義済みのコード スニペットを Perl コードに挿入します
プラグインには、コードに挿入できる定義済みのコード スニペットがいくつか付属しています。以下は、プラグインに付属するデフォルトのコード スニペットです。
$ ls ~/.vim/perl-support/codesnippets/ dot.SmallProf print-data-structure-with-Dumper.pl free-software-comment print-hash.pl inside-out-class.pl print-hash-sorted.pl module-interface.pl process-all-files-in-a-directory-recursively.pl new.pl slurp-file.pl pod-template-application.pl SmallProf-variables.pl pod-template-module.pl
123
たとえば、ハッシュ値を出力する関数を作成する場合は、既存のコード スニペットから再利用できます。以下は、print-hash.pl の定義済みコード スニペットの内容です。
$ cat ~/.vim/perl-support/codesnippets/print-hash.pl #---------------------------------------------------------------------- # subroutine : print_hash #---------------------------------------------------------------------- sub print_hash { my $hashref = shift; # 1. parameter : hash reference print "\n"; while ( my ( $key, $value ) = each %$hashref ) { print "'$key'\t=>\t'$value'\n"; } # ----- end while ----- } # ---------- end of subroutine print_hash_sorted ----------
133
これを作業中の perl プログラムに挿入するには、vim 内の通常モードから \nr と入力します。これにより、「read snippet /home/rnatarajan/.vim/perl-support/codesnippets/」というプロンプトが表示され、print-hash と入力します。最後に pl を入力して Enter キーを押すと、~/.vim/perl-support/codesnippets/print-hash.pl の内容が作業ファイルに自動的に挿入されます。142
注: 独自のコード スニペットを定義して、~/.vim/perl-support/codesnippets/ の下に配置できます。また、既存のコードから独自のコード スニペットを作成することもできます。コード スニペットとして作成する必要があるコードの部分を選択し、\nw を押して、それにファイル名を付けます。次回からは、\nr とファイル名を入力して、カスタム コード スニペットを取得してください。
155
PerlSupport Vim プラグインには多くの強力な機能があります。詳細については、ドキュメントを参照してください。ドキュメントは、システムの次の場所にあります。
- README :~/.vim/README.perlsupport
- PDF :~/.vim/perl-support/doc/perl-hot-keys.pdf
- オンラインの perl サポート vim プラグイン ドキュメント
165
推奨読書
Vim 101 ハック、Ramesh Natarajan 著 .私はコマンドライン中毒です。だから当然、私は Vi と Vim エディターの大ファンです。数年前、Linux で多くの C コードを書いていたとき、利用可能な Vim エディターのヒントとコツをすべて読んでいました。私の Vim エディターの経験に基づいて、Vim エディターで高速かつ生産的になるさまざまな高度な Vim 機能に関する 101 の実用的な例を含む Vim 101 Hacks eBook を作成しました。数年間 Vi および Vim エディタを使用しており、この本をまだ読んでいない場合でも、ぜひこの本を読んでください。 Vim エディターの機能に驚かれることでしょう。