在 JSP 中使用 VJDE


Java 代码提示
在HTML或者JSP编辑中,我们可以使用ctrl-x ctrl-o来使用 VIM7自带的 HTML 代码提示, Javascript,css 文件编辑.
在编辑JSP的过程中,我们使用ctrl-x ctrl-u来完成代码提示. 当所处的位置不是Java 代码时,VJDE使用VIM7的HTML,JavaScript,CSS 提示来完成工作.
在编辑Java的代码的位置,则使用与 上面提到的一样的代码提示来完成工作.
同样,VJDE支持session,request,response,page,application这些内置的JSP变量.当然,为了使用这些功能,在创建工程的时候,请将 servletapi.jar 或者 j2ee.jar 添加到你的g:vjde_lib_path中.
或者,在编辑java 文件前,请使用命令:let g:vjde_lib_path=g:vjde_lib_path.';d:/tomcat/common/lib/servlet-api.jar'
然后,开始编辑.在编辑session.后,我们使用命令ctrl-x ctrl-u,可得如下图:

关于Java 代码提示,我就不再一一叙述了.

TagLib 代码提示
下面,我们要讨论的是 TagLib 的代码提示. 目前,VJDE已经内置的支持STL的代码提示工作.它使用了VIM7的XML代码提示功能来完成这项任务.
比如说,我们希望使用JSTL 中的 core ,就是通常简称为c 的这一系列,我们先使用命令:XMLns stl_c c,这表示说,我们将使用 strl_c ,在编辑的时候,会写成 c:xx 这样的形式.
然后我们输入如下代码:



<%
session.getAttribute("");
%>


		
然后,使用ctrl-x ctrl-u,可见下图:

我们选择了forEach 后,输入空格,再次使用ctrl-x ctrl-u,可见下图:


如果我们希望使用sql对应的标签库,只需要简单的使用:XMLns stl_sql sql,对代码:



<%
session.getAttribute("");
%>




然后,使用ctrl-x ctrl-u,可见下图:


提示,
目前,内置可用的是stl_c,stl_sql,stl_x,stl_fmt
当然了,我们的JSP是不能编译过的,taglib 的引用还没有定义呢.^_^


自定义 TagLib 代码提示
当然,不是每一个人都是使用 JSTL的,我们更多的时候,使用了自己或者其它的标签库,这怎么办呢?
VJDE提供了一个方法,方便你将 tld 定义转换成一个 xmldata的定义.需要这个命令帮忙:
:VjdeTld2Data <tld file> <data name >
比如,要生成 JSTL 的 core 的标签库数据,我使用了如下的命令:
:VjdeTld2Data e:/downloads/jstl/c.tld stl_c
于是,我就生成了一个名为 stl_c 的xmldata 文件,其位置在$VIM/vimfiles/autoload/xml/stl_c.vim
使用的时候,我们使用
:XMLns stl_c c
表示,我们要使用数据 stl_c ,就是我们生成的数据,并且指出,当Namespace 为 c 的时候,我们才使用此数据.
提示,即形如 <c:的标签.


日常编辑 (二) 主目录 代码模板