summaryrefslogtreecommitdiffstats
path: root/.vim/c-support/doc
diff options
context:
space:
mode:
Diffstat (limited to '.vim/c-support/doc')
-rw-r--r--.vim/c-support/doc/ChangeLog398
-rw-r--r--.vim/c-support/doc/c-hotkeys.pdfbin0 -> 40430 bytes
-rw-r--r--.vim/c-support/doc/c-hotkeys.tex366
3 files changed, 764 insertions, 0 deletions
diff --git a/.vim/c-support/doc/ChangeLog b/.vim/c-support/doc/ChangeLog
new file mode 100644
index 0000000..25176da
--- /dev/null
+++ b/.vim/c-support/doc/ChangeLog
@@ -0,0 +1,398 @@
+================================================================================
+ RELEASE NOTES FOR VERSION 5.9
+================================================================================
++ Two additional hotkeys (+ ex commands) for preprocessor statements.
++ Compile-link-run: improved error detection.
++ Menu Run: hardcopy can print any buffer.
++ Several minor improvements and bugfixes.
+
+================================================================================
+ RELEASE NOTES FOR VERSION 5.8
+================================================================================
++ Hotkeys are shown in the menus.
++ File browser for code snippets and templates choosable (2 global variables).
++ Two new hotkeys: include file description (implementation, header).
++ New menu item: namespace alias
++ Bugfix: wrapper script for use of a xterm could not handle parameters containing blanks.
++ Several minor improvements.
+
+================================================================================
+ RELEASE NOTES FOR VERSION 5.7
+================================================================================
++ 4 new hotkeys : insert file section comments (C/C++/H), special comments,
+ keyword comments.
++ Adjusting end-of-line comment adjustment improved.
+
+================================================================================
+ RELEASE NOTES FOR VERSION 5.6
+================================================================================
++ Jump targets (templates) and mapping Ctrl-j can be switched off.
++ Yet unused jump targets will be highlighted after a file is opened.
++ Statements menu: else block (key mapping \se).
++ Handling of <SPLIT> improved (templates).
++ Minor improvements.
+
+================================================================================
+ RELEASE NOTES FOR VERSION 5.5
+================================================================================
++ Additional plugin-tags (jump targets in templates): <+text+>, <-text->.
++ Additional mapping Ctrl-j : jump to these new targets.
++ Template-file: additional macro |STYLE| and IF-ENDIF-construct to easily
+ choose between sets of templates.
++ Additional mapping: auto-complete classical C comment (also multi-line).
++ Additional mapping: auto-complete open block starting with {<CR> .
++ Visual mode for date and time insertion (menu 'Comments').
++ Visual mode for tags (submenu 'Comments->tags (plugin)').
++ Bugfix: hotkey \ica not working
++ Bugfix: hotkey Shift-F2 for the alternate-plugin disappeared.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.4
+=======================================================================================
++ New hotkey \+co inserts ' cout << << endl;'
++ New menu item C++-menu: 'cout' replaces 'cout variable' and 'cout string'.
++ Hotkey \c/ removed ( \cc does the same).
++ Bugfix: after an unsuccessful compilation screen sometimes garbled.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.3
+=======================================================================================
++ Insertions work properly when folding is used.
++ Menu items Idioms->for(...) : type declaration for loop variable possible (tab completion).
++ Specification of command line arguments (Run->cmd. line arg.): filename completion active.
++ New main menu item 'show manual' (hotkey \hm): read manual for word under cursor.
++ One hotkey renamed: \h -> \hp (help plugin)
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.2.1
+=======================================================================================
++ Bugfix: stray characters whith three dialogs
++ Bugfix: Missing parameter in 2 internal function calls
++ Menu items 'Snippets->edit local/global templates' start an file browser (convenience).
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.2
+=======================================================================================
++ Superfluous control characters for mode switching (menus, hotkeys) removed. Caused beeps.
++ Template files (local/global) can be opened from the snippet menu.
++ Three new preprocessor statements.
++ v-mode for RTTI-entries.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.1
+=======================================================================================
++ Definition and implementation of classes have now different templates and menu entries.
++ Accessor methods (get/set) can be generated.
++ New templates: everything other than language keywords comes from a template
+ (and is user changeable).
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.0.5
+=======================================================================================
++ Bugfix: on a few systems doubling of path components in the run command (F9).
+ Skip this upgrade if you do not have this problem.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.0.4
+=======================================================================================
++ Format for the macros |DATE|, |TIME|, and |YEAR| can be defined by the user.
++ Help text improved.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.0.3
+=======================================================================================
++ Code snippets can now be used in the console mode (Vim without GUI).
++ Bugfix: Possible conflict with 'indent' removed when inserting templates.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.0.2
+=======================================================================================
++ Bugfix: Prototype picker did not alway delete no longer used prototypes.
++ Bugfix: Prototype picker removed template specializations from parameter lists.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.0.1
+=======================================================================================
++ Bugfix: autocmd setting can influence autocmd settings of OTHER plugins.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 5.0
+=======================================================================================
++ Completely new template system. Now every menu item is user definable.
++ Changes to allow a system-wide installation.
++ A few hotkeys added and renamed.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.6.1
+=======================================================================================
++ New global variable to control the filetype of *.h header files (default is now 'cpp').
++ Bugfix: properly resetting 'compiler' after using make, splint, and CodeCheck.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.6
+=======================================================================================
++ New insert mode mappings (comments, statements, preprocessing, idioms, C++).
++ Some mappings renamed (easier to remember).
++ New tag (basename of a file reduced to characters allowed in names).
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.5
+=======================================================================================
++ New menu item and hotkey for the (re)alignement of end-of-line comments.
++ Hotkey \cn removed. Only one menu item for end-of-line comments left.
++ Changed hotkeys: \ce -> \cl and \cl -> \cs .
++ Three new tags (giving the basename of a file) for writing template files.
++ Prototype picker handles template methods.
++ Bugfix: splint works now under Windows.
++ Minor improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.4
+=======================================================================================
++ Plugin directories rearranged.
++ main- and for-idiom have a visual mode now.
++ Four new commands (command line) to control the comment style.
++ Comment style (C/C++) can automatically follow the filetype.
++ Bugfix: empty new file after removing the header template can't be closed.
++ Bugfix : Tools entry missing when root menu not shown from the start.
++ Minor improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.3
+=======================================================================================
++ CodeCheck (TM) integrated (source code analysing tool).
++ New key mappings for preprocessor statements.
++ New preprocessor menu.
++ Bugfix: indent under Windows.
++ Minor improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.2.1
+=======================================================================================
++ Bugfix: change needed for some menu names after patch 7.0.054 .
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.2
+=======================================================================================
++ Setting the starting column for trailing comments improved.
++ Small bug in block uncommenting fixed.
++ Mac OS X : circumvent a Vim bug which caused a crash when loading plugin version 4.1.
++ File syntax/c.vim removed (but see help in csupport.txt).
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.1
+=======================================================================================
++ A complete switch statement can be made from a list of labels.
++ Additional cases can be made from a list of labels.
++ Small bug in line end commenting fixed.
++ Some minor improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 4.0
+=======================================================================================
+
++ Kernighan & Ritchie style for block statements can be enabled.
++ Changes to make it compatible with Vim 7.
++ Set C/C++ file type for source files which should not be preprocessed (*.i, *.ii).
++ Some minor improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.11
+=======================================================================================
+
++ Hotkeys and an accompanying reference card added.
++ Preparation for syntax based folding.
++ Some minor improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.10
+=======================================================================================
+
++ Remove "#if 0 ... #endif" from the inside.
++ Change C comments to C++ comments and vice versa.
++ try..catch / catch / catch(...) now can be set surround a marked area.
++ Prototype picking improved (for C++).
++ A hardcopy shows the localized date and time in the header line.
++ New help menu entry in the main menu of this plugin (shows the plugin documentation).
++ Switch between corresponding source and header files with <S-F2> if the plugin a.vim
+ is present.
++ Plugin can be used with autocompletion for (, [, and { .
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.9.1
+=======================================================================================
+
++ Doubling of file header for new c- and h-files under Windows fixed (Thanks to
+ Fabricio C A Oliveira).
++ Tiny bug in the file open idioms fixed.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.9
+=======================================================================================
+
++ Formatter 'indent' integrated.
++ Bugfix in the automatic header insertion.
++ Assert idiom added.
++ #if 0 ... #endif statement for blocking out code added.
++ Minor stylistic improvements in some idioms.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.8.2
+=======================================================================================
+
++ Screen update problem solved: color inversion under FC4 (Thanks to Bernie Barton).
++ RTTI menu : additional v-mode.
++ Statement menu and C++ menu rearranged.
++ Include guard : name generation improved.
++ File header templates will be included for additional file extensions (cp, cxx, c++, ...).
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.8.1
+=======================================================================================
+
++ More C++ output manipulators, manipulator insertion more intuitive.
++ Output into buffer: cursor goes to top of file.
++ Makefile template improved (code snippet).
++ Some internal improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.8
+=======================================================================================
+
++ Windows support. Most features are now available under Windows.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.7.2
+=======================================================================================
+
++ Run buffer through splint (A tool for statically checking C programs; see
+ http://www.splint.org). An error window will be opened; quickfix commands can be used.
++ Set buffer related command line arguments for splint.
++ Line end comments start in a fixed column (can be set from the menu).
++ Spaces in path names and file names are now possible.
++ Template files and snippet files are no longer kept in the list of alternate files.
++ Some minor improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.7.1
+=======================================================================================
+
++ Bug fixed (command line arguments not passed to the executable).
++ File extension for executables can be set.
++ Minor improvements.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.7
+=======================================================================================
+
++ Running a program:
+ (1) Run program from the gVim command line.
+ (2) Run program and direct the output into a window with name "C-Output".
+ This buffer and its content will disappear when closing the window.
+ The buffer is reused when still open.
+ (3) Run program in an xterm (adjustable).
++ Command line arguments are now buffer related (each buffer can have its own arguments).
++ Code snippets can be protected from being indented during insertion.
++ Picked up prototypes will be deleted after insertion.
++ A code snippet with the file name extension "ni" or "noindent" will not be
+ indented on insertion.
++ for- and calloc-/malloc-idioms improved.
++ Bug fixed (word list handling).
+
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.6
+=======================================================================================
+
++ Installation simplified.
++ for-loop-idiom asks for control variable, initial value, ...
++ malloc-idiom asks for pointer variable and size.
++ Toggling the comment style works correct again.
++ Empty error windows will be closed.
++ Prototype picker removes trailing parts of the function body if marked.
++ The dialog windows (GUI) have been replaced by more flexible command line inputs.
++ The undocumented and unnecessary hot key F12 has been removed.
++ Extension to ctags + taglist shows makefile targets and qmake targets.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.5
+=======================================================================================
+
++ Aligned line end comments for consecutive lines.
++ Improved prototype picker removes comments.
++ Picked up prototypes can be shown.
++ Uncomment more than one block at once.
++ 3 new idioms.
++ Help file improved .
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.4
+=======================================================================================
+
++ Two new global variables: C_Dictionary_File, C_MenuHeader .
++ The preprocessor statements #if... and the function idiom include marked
+ lines when invoked in visual mode.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.3
+=======================================================================================
+
++ The C/C++ root menu can be disabled.
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.2
+=======================================================================================
+
++ Only one C/C++ entry in the gVim root menu.
++ All hotkeys are only defined for C/C++ files (file type plugin added).
++ The following constructs are now read as templates from files:
+ class, class using new,
+ template class, template class using new,
+ error class
++ Install script added.
++ Customization improved.
++ Documentation improved (help file added).
++ Bug fix (template file handling)
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.1
+=======================================================================================
+
++ When the comment style "C" is active the menu entry "Comments.code->comment"
+ turns a marked region in one multiline C-comment.
++ The menu entry "Comments.comment->code" turns marked multiline C-comment
+ back into code.
++ A marked region can be surrounded by a for-, if, if-else, while-, do-while-statement
+ (with indentation).
++ The menu entry "Snippets.make prototype" makes a C- or C++-prototype from
+ the current line or marked region and puts it in an internal buffer.
++ The menu entry "Snippets.add prototype" also makes a C- or C++-prototype from
+ the current line or a marked region and adds it to the internal buffer.
++ The menu entry "Snippets.put prototype" inserts all gathered prototypes
+ below the current line.
++ Tag substitution rewritten (Some characters in a substitution text for a tag
+ prevented the tag from being substituted).
+
+=======================================================================================
+ RELEASE NOTES FOR VERSION 3.0
+=======================================================================================
+
++ C-style comments AND C++-style comments are supported now.
++ The menu entry 'Comments->Comment style ..' switches the styles (toggle).
++ Block comments are now read as templates or skeletons from files:
+ Frame Block, Function Description, Method Description,
+ Class Description, H+file header, C/C++-file header
++ These templates can contain tags like |FILENAME|, |AUTHOR| etc. which are replaced
+ after reading (KDevelop templates can be used without any change).
++ indentation: multiline inserts and code snippets will be indented after insertion.
++ Most menu entries are now also active in normal mode.
++ new menu items:
+ includes for the C99 header,
+ includes for the standard C++ header,
+ includes for the C++ version of the Standard C Library header,
+ multiline C comment
+ vim modeline
++ Reading the templates is done in one function which can be called in an autocmd.
++ Code cleanup: register z no longer used. Most function calls are silent now.
+
+
diff --git a/.vim/c-support/doc/c-hotkeys.pdf b/.vim/c-support/doc/c-hotkeys.pdf
new file mode 100644
index 0000000..2ac88bc
--- /dev/null
+++ b/.vim/c-support/doc/c-hotkeys.pdf
Binary files differ
diff --git a/.vim/c-support/doc/c-hotkeys.tex b/.vim/c-support/doc/c-hotkeys.tex
new file mode 100644
index 0000000..d8dc844
--- /dev/null
+++ b/.vim/c-support/doc/c-hotkeys.tex
@@ -0,0 +1,366 @@
+%%=====================================================================================
+%%
+%% File: c-hotkeys.tex
+%%
+%% Description: c-support.vim : Key mappings for Vim without GUI.
+%%
+%%
+%% Author: Dr.-Ing. Fritz Mehner
+%% Email: mehner@fh-swf.de
+%% Copyright: Copyright (C) 2006-2010 Dr.-Ing. Fritz Mehner (mehner@fh-swf.de)
+%% Version: 1.0
+%% Created: 10.11.2006
+%% Revision: $Id: c-hotkeys.tex,v 1.33 2010/02/05 13:21:43 mehner Exp $
+%%
+%% Notes:
+%%
+%%=====================================================================================
+
+\documentclass[oneside,11pt,landscape,DIV16]{scrartcl}
+
+\usepackage[english]{babel}
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{times}
+\usepackage{lastpage}
+\usepackage{multicol}
+\usepackage{setspace}
+
+\setlength\parindent{0pt}
+
+\newcommand{\Pluginversion}{5.10}
+\newcommand{\ReleaseDate}{ February 2010}
+
+%%----------------------------------------------------------------------
+%% luximono : Type1-font
+%% Makes keyword stand out by using semibold letters.
+%%----------------------------------------------------------------------
+\usepackage[scaled]{luximono}
+
+%%----------------------------------------------------------------------
+%% fancyhdr
+%%----------------------------------------------------------------------
+\usepackage{fancyhdr}
+\pagestyle{fancyplain}
+\fancyfoot[L]{\small \ReleaseDate}
+\fancyfoot[C]{c-support.vim}
+\fancyfoot[R]{\small \textbf{Page \thepage{} / \pageref{LastPage}}}
+\renewcommand{\headrulewidth}{0.0pt}
+
+%%----------------------------------------------------------------------
+%% hyperref
+%%----------------------------------------------------------------------
+\usepackage[ps2pdf]{hyperref}
+\hypersetup{pdfauthor={Dr.-Ing. Fritz Mehner, FH Südwestfalen, Iserlohn, Germany}}
+\hypersetup{pdfkeywords={Vim, C/C++}}
+\hypersetup{pdfsubject={Vim-plugin, c-support.vim, hot keys}}
+\hypersetup{pdftitle={Vim-plugin, c-support.vim, hot keys}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% START OF DOCUMENT
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{document}%
+
+\begin{multicols}{3}
+%
+%%======================================================================
+%% title
+%%======================================================================
+\begin{center}
+\textbf{\textsc{\small{Vim-Plugin}}}\\
+\textbf{\LARGE{c-support.vim}}\\
+\textbf{\textsc{\small{Version \Pluginversion}}}\\
+\textbf{\textsc{\Huge{Hot keys}}}\\
+Key mappings for Vim with and without GUI.\\
+Plugin: http://vim.sourceforge.net\\
+\vspace{3.0mm}
+{\normalsize (i)} insert mode, {\normalsize (n)} normal mode, {\normalsize (v)} visual mode\\
+\vspace{5.0mm}
+%
+%%======================================================================
+%% table, left part
+%%======================================================================
+%%~~~~~ TABULAR : begin ~~~~~~~~~~
+\begin{tabular}[]{|p{10mm}|p{60mm}|}
+%
+\hline
+\multicolumn{2}{|r|}{\textsl{\textbf{C}omments}} \\
+\hline \verb'\cl' & end-of-line comment \hfill (n,v,i)\\
+\hline \verb'\cj' & adjust end-of-line comment \hfill (n,v,i)\\
+\hline \verb'\cs' & set end-of-line comment column \hfill (n) \\
+\hline \verb'\c*' & code $\Rightarrow$ comment \verb'/* */' \hfill (n,v) \\
+\hline \verb'\cc' & code $\Rightarrow$ comment \verb'//' \hfill (n,v) \\
+\hline \verb'\co' & comment $\Rightarrow$ code \hfill (n,v) \\
+
+\hline \verb'\cfr' & frame comment \hfill (n,i)\\
+\hline \verb'\cfu' & function comment \hfill (n,i)\\
+\hline \verb'\cme' & method description \hfill (n,i)\\
+\hline \verb'\ccl' & class description \hfill (n,i)\\
+\hline \verb'\cfdi'& file description (implementation) \hfill (n,i)\\
+\hline \verb'\cfdh'& file description (header) \hfill (n,i)\\
+
+\hline \verb'\ccs'& C/C++--file sections\hspace{3mm}\footnotesize{(tab compl.)} \hfill \normalsize{(n,i)}\\
+\hline \verb'\chs'& H--file sections\hspace{10mm}\footnotesize{(tab compl.)} \hfill \normalsize{(n,i)}\\
+\hline \verb'\ckc'& keyword comment\hspace{5mm}\footnotesize{(tab compl.)} \hfill \normalsize{(n,i)}\\
+\hline \verb'\csc'& special comment\hspace{7,5mm}\footnotesize{(tab compl.)} \hfill \normalsize{(n,i)}\\
+
+\hline \verb'\cd' & date \hfill (n,v,i)\\
+\hline \verb'\ct' & date \& time \hfill (n,v,i)\\
+\hline
+\end{tabular}\\
+%%~~~~~ TABULAR : end ~~~~~~~~~~
+%
+%%======================================================================
+%% table, middle part
+%%======================================================================
+%
+%%~~~~~ TABULAR : begin ~~~~~~~~~~
+\begin{tabular}[]{|p{15mm}|p{55mm}|}
+%%----------------------------------------------------------------------
+%% menu statements
+%%----------------------------------------------------------------------
+\hline
+\multicolumn{2}{|r|}{\textsl{\textbf{S}tatements}} \\
+\hline \verb'\sd' & \verb'do { } while' \hfill (n,v,i)\\
+\hline \verb'\sf' & \verb'for' \hfill (n,i)\\
+\hline \verb'\sfo' & \verb'for { }' \hfill (n,v,i)\\
+\hline \verb'\si' & \verb'if' \hfill (n,i)\\
+\hline \verb'\sif' & \verb'if { }' \hfill (n,v,i)\\
+\hline \verb'\sie' & \verb'if else' \hfill (n,v,i)\\
+\hline \verb'\sife'& \verb'if { } else { }' \hfill (n,v,i)\\
+\hline \verb'\se' & \verb'else { }' \hfill (n,v,i)\\
+\hline \verb'\sw' & \verb'while' \hfill (n,i)\\
+\hline \verb'\swh' & \verb'while { }' \hfill (n,v,i)\\
+\hline \verb'\ss' & \verb'switch' \hfill (n,v,i)\\
+\hline \verb'\sc' & \verb'case' \hfill (n,i)\\
+\hline \verb'\s{ \sb' & \verb'{ }' \hfill (n,v,i)\\
+\hline
+%%----------------------------------------------------------------------
+%% preprocessor menu
+%%----------------------------------------------------------------------
+\hline
+\multicolumn{2}{|r|}{\textsl{\textbf{P}reprocessor}} \\
+\hline \verb'\ps' & choose a Std. Lib. include \hfill (n,i)\\
+\hline \verb'\pc' & choose a C99 include \hfill (n,i)\\
+\hline \verb'\p<' & \verb$#include<...>$ \hfill (n,i)\\
+\hline \verb'\p"' & \verb$#include"..."$ \hfill (n,i)\\
+\hline \verb'\pd' & \verb'#define' \hfill (n,i)\\
+\hline \verb'\pu' & \verb'#undef' \hfill (n,i)\\
+\hline \verb'\pie' & \verb'#if #else #endif' \hfill (n,v,i)\\
+\hline \verb'\pid' & \verb'#ifdef #else #endif' \hfill (n,v,i)\\
+\hline \verb'\pin' & \verb'#ifndef #else #endif' \hfill (n,v,i)\\
+\hline \verb'\pind' & \verb'#ifndef #def #endif' \hfill (n,v,i)\\
+\hline \verb'\pi0' & \verb'#if 0 #endif' \hfill (n,v,i)\\
+\hline \verb'\pr0' & remove \verb'#if 0 #endif' \hfill (n,i)\\
+\hline \verb'\pe' & \verb'#error ' \hfill (n,i)\\
+\hline \verb'\pl' & \verb'#line ' \hfill (n,i)\\
+\hline \verb'\pp' & \verb'#pragma' \hfill (n,i)\\
+\hline
+\end{tabular} \\
+%%~~~~~ TABULAR : end ~~~~~~~~~~
+
+%%======================================================================
+%% table, right part
+%%======================================================================
+%
+%%~~~~~ TABULAR : begin ~~~~~~~~~~
+\begin{tabular}[]{|p{11mm}|p{60mm}|}
+%%----------------------------------------------------------------------
+%% snippet menu
+%%----------------------------------------------------------------------
+\hline
+\multicolumn{2}{|r|}{\textsl{S\textbf{n}ippet}} \\
+\hline \verb'\nr' & read code snippet \hfill (n,i)\\
+\hline \verb'\nw' & write code snippet \hfill (n,v,i)\\
+\hline \verb'\ne' & edit code snippet \hfill (n,i)\\
+\hline \verb'\np' & pick up prototype \hfill (n,v,i)\\
+\hline \verb'\ni' & insert prototype(s) \hfill (n,i)\\
+\hline \verb'\nc' & clear prototype(s) \hfill (n,i)\\
+\hline \verb'\ns' & show prototype(s) \hfill (n,i)\\
+%
+\hline \verb'\ntl' & edit local templates \hfill (n,i)\\
+\hline \verb'\ntg' & edit global templates \hfill (n,i)\\
+\hline \verb'\ntr' & reread the templates \hfill (n,i)\\
+\hline \verb'\nts' & change templates style \hfill (n,i)\\
+\hline
+%%----------------------------------------------------------------------
+%% idioms menu
+%%----------------------------------------------------------------------
+\hline
+\multicolumn{2}{|r|}{\textsl{\textbf{I}dioms}} \\
+\hline \verb'\if' & function \hfill (n,v,i)\\
+\hline \verb'\isf' & static function \hfill (n,v,i)\\
+\hline \verb'\im' & \verb'main()' \hfill (n,v,i)\\
+\hline \verb'\i0' & \verb'for( x=0; x<n; x+=1 )' \hfill (n,v,i)\\
+\hline \verb'\in' & \verb'for( x=n-1; x>=0; x-=1 )' \hfill (n,v,i)\\
+\hline \verb'\ie' & \verb'enum' + \verb'typedef' \hfill (n,v,i)\\
+\hline \verb'\is' & \verb'struct' + \verb'typedef' \hfill (n,v,i)\\
+\hline \verb'\iu' & \verb'union' + \verb'typedef' \hfill (n,v,i)\\
+\hline \verb'\ip' & \verb'printf()' \hfill (n,i)\\
+\hline \verb'\isc' & \verb'scanf()' \hfill (n,i)\\
+\hline \verb'\ica' & \verb'p=calloc()' \hfill (n,i)\\
+\hline \verb'\ima' & \verb'p=malloc()' \hfill (n,i)\\
+\hline \verb'\isi' & \verb'sizeof()' \hfill (n,v,i)\\
+\hline \verb'\ias' & \verb'assert()' \hfill (n,v,i)\\
+\hline \verb'\ii' & open input file \hfill (n,v,i)\\
+\hline \verb'\io' & open output file \hfill (n,v,i)\\
+\hline
+\end{tabular}\\
+%
+%%======================================================================
+%% table, right part
+%%======================================================================
+%
+%%~~~~~ TABULAR : begin ~~~~~~~~~~
+\begin{tabular}[]{|p{12mm}|p{62mm}|}
+%%----------------------------------------------------------------------
+%% C++ menu
+%%----------------------------------------------------------------------
+\hline
+\multicolumn{2}{|r|}{\textsl{C\textbf{+}+}} \\
+\hline \verb'\+co' & \verb'cout << << endl; ' \hfill (n,i)\\
+\hline \verb'\+c' & class \hfill (n,i)\\
+\hline \verb'\+ps' & \verb$#include<...> STL$ \hfill (n,i)\\
+\hline \verb'\+pc' & \verb$#include<c..> C$ \hfill (n,i)\\
+\hline \verb'\+cn' & class (using \verb'new') \hfill (n,i)\\
+\hline \verb'\+ci' & class implementation \hfill (n,i)\\
+\hline \verb'\+cni' & class (using \verb'new') implementation \hfill (n,i)\\
+\hline \verb'\+mi' & method implementation \hfill (n,i)\\
+\hline \verb'\+ai' & accessor implementation \hfill (n,i)\\
+\hline \verb'\+tc' & template class \hfill (n,i)\\
+\hline \verb'\+tcn' & template class (using \verb'new') \hfill (n,i)\\
+\hline \verb'\+tci' & template class implementation \hfill (n,i)\\
+\hline \verb'\+tcni'& template class (using \verb'new') impl. \hfill (n,i)\\
+\hline \verb'\+tmi' & template method implementation \hfill (n,i)\\
+\hline \verb'\+tai' & template accessor implementation \hfill (n,i)\\
+\hline \verb'\+tf' & template function \hfill (n,i)\\
+\hline \verb'\+ec' & error class \hfill (n,i)\\
+\hline \verb'\+tr' & \verb'try' \dots \verb'catch' \hfill (n,v,i)\\
+\hline \verb'\+ca' & \verb'catch' \hfill (n,v,i)\\
+\hline \verb'\+c.' & \verb'catch(...)' \hfill (n,v,i)\\
+\hline
+%%----------------------------------------------------------------------
+%% run menu
+%%----------------------------------------------------------------------
+\hline
+\multicolumn{2}{|r|}{\textsl{\textbf{R}un}} \\
+\hline \verb'\rc' & save and compile \hfill (n,i)\\
+\hline \verb'\rl' & link \hfill (n,i)\\
+\hline \verb'\rr' & run \hfill (n,i)\\
+\hline \verb'\ra' & set comand line arguments \hfill (n,i)\\
+\hline \verb'\rm' & run \texttt{make} \hfill (n,i)\\
+\hline \verb'\rg' & cmd.\ line arg.\ for \texttt{make} \hfill (n,i)\\
+%
+\hline \verb'\rp' & run \texttt{splint}$^1$ \hfill (n,i)\\
+\hline \verb'\ri' & cmd.\ line arg.\ for \texttt{splint} \hfill (n,i)\\
+%
+\hline \verb'\rk' & run \texttt{CodeCheck}$^2$ \hfill (n,i)\\
+\hline \verb'\re' & cmd.\ line arg.\ for \texttt{CodeCheck} \hfill (n,i)\\
+%
+\hline \verb'\rd' & run \texttt{indent} \hfill (n,i)\\
+\hline \verb'\rh' & hardcopy buffer \hfill (n,i,v)\\
+\hline \verb'\rs' & show plugin settings \hfill (n,i)\\
+\hline \verb'\rx' & set xterm size \hfill (n,i, only Unix \& GUI)\\
+\hline \verb'\ro' & change output destination \hfill (n,i)\\
+\hline
+\end{tabular}
+%
+%%----------------------------------------------------------------------
+%% load / unload menu entry
+%%----------------------------------------------------------------------
+\begin{tabular}[]{|p{12mm}|p{52mm}|}
+\hline
+%\multicolumn{2}{|r|}{\textsl{Menu(s)}}\\
+%%----------------------------------------------------------------------
+%% show plugin help
+%%----------------------------------------------------------------------
+%\hline
+\multicolumn{2}{|r|}{\textsl{\textbf{H}elp and Menus}}\\
+\hline \verb'\hm' & show manual \hfill (n,i)\\
+\hline \verb'\hp' & help (c-support) \hfill (n,i)\\
+\hline \verb'\lcs' & load Menus\hfill \scriptsize{(n \& GUI only)}\\
+\hline \verb'\ucs' & unload Menus\hfill \scriptsize{(n \& GUI only)}\\
+\hline
+\end{tabular}
+%%~~~~~ TABULAR : end ~~~~~~~~~~
+%
+%
+\begin{minipage}[b]{66mm}%
+\vspace{10mm}
+%
+\begin{flushleft}
+%
+\textit{Ex commands:}
+\begin{description}
+%
+\item [CFileSection]
+C/C++--file sections (same as \verb'\ccs')
+%
+\item [HFileSection]
+H--file sections (same as \verb'\chs')
+%
+\item [KeywordComment]
+keyword comment (same as \verb'\ckc')
+%
+\item [SpecialComment]
+special comment (same as \verb'\csc')
+%
+\item [IncludeStdLibrary]
+standard library includes (same as \verb'\ps')
+%
+\item [IncludeC99Library]
+C99 includes (same as \verb'\pc')
+%
+\item [IncludeCppLibrary]
+STL includes (same as \verb'\+ps')
+%
+\item [IncludeCppCLibrary]
+C includes (same as \verb'\+pc')
+%
+\item [CStyle]
+C99 include (same as \verb'\nts')
+%
+\end{description}
+%
+Use tab expansion to show the items to choose from.
+%
+\end{flushleft}
+%
+\end{minipage}\\
+%
+\begin{minipage}[b]{64mm}%
+\scriptsize{%
+\vspace{10mm}
+\hrulefill\\
+$^1$ {www.splint.org}\\
+$^2$ \textbf{CodeCheck}$^{TM}$ is a product of Abraxas Software, Inc.
+}%
+\end{minipage}\\
+%
+\begin{minipage}[b]{64mm}%
+
+\setlength{\fboxsep}{.25mm}
+%%----------------------------------------------------------------------
+%% Additional Mappings
+%%----------------------------------------------------------------------
+\begin{spacing}{1.2}
+\begin{tabular}[]{|p{12mm}|p{56mm}|}
+\hline
+\multicolumn{2}{|r|}{\textsl{Additional Mappings}}\\
+\hline
+\hline \textbf{typing} & \textbf{expansion}\\
+\hline \verb'/*' & \verb'/* */' \hfill (i)\\
+\hline \verb'/*' & \verb'/* '\fbox{\small{(multiline) marked text}}\verb' */' \hfill (v)\\
+\hline \verb'/*<CR>' & \verb'/*'\hfill (i)\newline\verb' * |'\newline\verb' */'\\
+\hline \verb'{<CR>' & \verb'{'\hfill (i)\newline\verb' |'\newline\verb'}' \\
+\hline \verb'{<CR>' & \verb'{'\hfill (v)\newline\verb' '\fbox{\small{(multiline) marked text}}\newline\verb'}'\\
+\hline
+\end{tabular}
+\end{spacing}
+%%~~~~~ TABULAR : end ~~~~~~~~~~
+%
+\end{minipage}%
+%
+\end{center}
+\end{multicols}
+\end{document}