Skip to content
Vim plugins (syntax, indent and more) for Abb Rapid
Vim script
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.



Have a look at tl:dr to get a very quick overview over the most important options provided by Rapid for Vim. For more details see the help file.

Rapid for Vim (7.4 or later) is a collection of Vim scripts to help programing ABB industrial robots.

It provides

  • syntax highlighting,
  • auto indention,
  • concealing of structure values (e.g. MoveJ * v2500...),
  • mappings and settings to navigate through code in a backup folder structure and
  • mappings to insert a body of a new PROC, FUNC, TRAP et al based on user defined templates or hopefully sane defaults.

Most of this is optional, though some things are default on. Have a look in the rapid-options section in the help for more details.

Note: Keep your files to be edited in one folder or in a regular robot backup folder structure. Rapid for Vim modifies 'path' by default accordingly.


Extract the most recent release and copy the folders /doc, /ftdetect, /ftplugin, /indent and /syntax into your ~/.vim/ or %USERPROFILE%\vimfiles\ directory. Overwrite rapid.* files from older installation.

To fully use these plugins put >

filetype plugin indent on
syntax on

in your .vimrc

You may have to run >

:helptags ~/.vim/doc/

or >

:helptags ~/vimfiles/doc/

to use the help within Vim after installation. >

:help rapid

Or just open the file .../doc/rapid.txt

Content description


You may use all these independently from one another. Just don't mix versions of different releases. Some features may work better when all files are loaded.


Help file. This should help you to use these plugins to your best advantage. You may want to look into the help prior to installation.
Requires >

:helptags ~/.vim/doc


Detects Rapid files based on their file name and content. Rapid files are checked for the presence of a MODULE line or any %%% HEADER. In case of an empty file you need to :set filetype=rapid manually.
.../ftdetect/rapid.vim also corrects mixed line endings (unix/dos-mix to unix) in *.cfg files if |g:rapidAutoCorrCfgLineEnd| is set to 1.
Requires >

:filetype on


Sets various vim options and provides key mappings and concealing. It supports commentary vimscript #3695 and matchit vimscript #39. All key mappings are optional.
Requires >

:filetype plugin on


Sets indent related vim options. Sets indention to 2 spaces by default, optional.
Requires >

:filetype indent on


Does make life more colorful. Unfortunately some features of the other files may work better with syntax on. This should not stop you from trying syntax off if you like.
Requires >

:syntax on


Q: Why so many options?
A: I try not to interfere with user settings to much. So I made most of the settings that get changed optional.

Q: I'm here to feed my kids, not to read. Do you have a quick suggestion on rapid settings for my |.vimrc|?
A: Yes: >

let g:rapidMoveAroundKeyMap=1 " [[, ]], [] and ][ jumps around PROC/FUNC..
" let g:rapidMoveAroundKeyMap=2 " adds also textobjects af, aF and if
let g:rapidGoDefinitionKeyMap=1 " gd shows the declaration of curr. word
let g:rapidListDefKeyMap=1 " <leader>f shows all PROC/FUNC.. in curr. file
let g:rapidListUsageKeyMap=1 " <leader>u shows all appearance of curr. word
let g:rapidAutoFormKeyMap=1 " <leader>n inserts a body for a new PROC etc
let g:rapidConcealStructsKeyMap=1 " <F2>/<F3> to conceal/show struct values
let g:rapidShowError=1 " shows some syntax errors
let g:rapidRhsQuickfix=1 " open quickfix window on the right hand side
let g:qf_window_bottom=0 " if qf.vim exists and you use g:rapidRhsQuickfix
let g:rapidAutoCorrCfgLineEnd=1 " auto correct \*.cfg line terminator
" if you use colorscheme tortus use:
" let g:rapidNoHighLink=1 " even more colors
" don't forget
" filetype plugin indent on

Self promotion

If you like this plugin please rate it on If you don't but you think it could be useful if this or that would be different, don't hesitate to email me or even better open an issue. With a little luck and good timing you may find me on irc:// as KnoP in case you have any questions.

You can’t perform that action at this time.