diff options
Diffstat (limited to '.vim/c-support/doc')
-rw-r--r-- | .vim/c-support/doc/ChangeLog | 398 | ||||
-rw-r--r-- | .vim/c-support/doc/c-hotkeys.pdf | bin | 0 -> 40430 bytes | |||
-rw-r--r-- | .vim/c-support/doc/c-hotkeys.tex | 366 |
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 Binary files differnew file mode 100644 index 0000000..2ac88bc --- /dev/null +++ b/.vim/c-support/doc/c-hotkeys.pdf 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} |