Find file
Fetching contributors…
Cannot retrieve contributors at this time
102 lines (71 sloc) 2.88 KB
Example: >
let form = vimform#New()
let = "Test Form"
let form.fields = [
\ ['Name'],
\ ['Address', {'join': "\n"}],
\ ['Planet', {'value': 'Earth'}],
\ ['Phone', {'validate': '%s =~ ''^[0-9()+-]*$''',
\ 'message': 'Must be a phone number'}],
\ ['E-Mail', {'validate': '%s =~ ''^\([a-zA-Z.]\+@[a-zA-Z]\+\.[a-zA-Z.]\+\)\?$''',
\ 'message': 'Must be an e-mail'}],
\ ['Private', {'value': 0, 'type': 'checkbox'}],
\ ['Business', {'value': 1, 'type': 'checkbox'}],
\ ]
function! form.Do_Submit() dict "{{{3
echom "Test: ".
for [field, value] in items(self.values)
echom "Field" field value
call form.Split()
This will create a form, which looks like this: >
<<&Submit>> <<&Cancel>>
Planet: Earth
Private: [ ]
Business: [X]
Check out further examples on:
The following field types are currently supported:
- text fields
- check boxes
- single choice/drop-down lists
The following key maps can be used to navigate through forms:
<c-cr> "Press" a button. If the cursor, is not over a button,
the form will be submitted, i.e. the Do_Submit() method
is called.
<c-w>c Abandon/close/cancel the form.
<f5> Redraw the form.
<tab> Jump to the next field (this will also save the current
field's value so that it doesn't get lost when redrawing
a form)
<s-tab> Jump to the previous field
<c-space> Invoke the completion menu if a completion function is
defined for the current field.
`[LETTER] Accelerator keys are prefixed with an ampersand (&).
Those letters are defined as |mark|s. Jump to a button
with |`|.
<cr> If the cursor is located over a checkbox, toggle that
check box. If the cursor is over a drop-down list, open the
i Switch to insert mode.
<c-n> <c-p> <c-y> <c-e>
Navigate drop-down lists. See also |ins-completion|.
In order to install the vba, open the vba file in VIM and type: >
:so %
See :help vimball for details.
Also available via git:
License: GPLv3 or later
Install: See
See for related plugins.