Velocityで設定している関数の定義

Velocityは独自の関数を設定出来、aipo内にも多くの関数が使われています。それらは/aipo/war/src/main/webapp/WEB-INF/templates/vm/GlobalMacros.vm内で定義されています。

例えば#AUIprintbuttonという関数がどのように定義されるのか知りたいときはGlobalMacros.vmを開き、eclipseのショートカットキーのcontrol+Hを押して検索窓を開きます。AUIprintbuttonと入力すれば検索結果が出て来るので、ダブルクリックすると定義されているコードまでジャンプすることが出来ます。
今回の例では次の定義が出て来ます。

#macro(AUIprintbutton $jslink)
<a href="javascript:void(0);" onclick="javascript:window.open('$!utils.escapeXML($jslink)');void(0);" title="$l10n.SCHEDULE_OPEN_PRINT_VIEW" class="auiButton pl5 pr5">
<span><i class="icon-print"></i></span>
</a>
#end

/#macroから始まり#endの部分までが関数定義となっています。$jslinkという変数を引数とし、クリックすると指定したURLのwindowが開くことやクラスの定義について分かるかと思います。