README.csupport (8325B)
1 README for c.vim (Version 5.1) / March 05 2008 2 3 * DESCRIPTION 4 * INSTALLATION 5 * RELEASE NOTES 6 * FILES 7 * ADDITIONAL TIPS 8 * CREDITS 9 10 ======================================================================================= 11 DESCRIPTION 12 ======================================================================================= 13 C/C++-IDE for Vim/gVim. It is written to considerably speed up writing code in 14 a consistent style. This is done by inserting complete statements, idioms, 15 code snippets, templates, and comments. Syntax checking, compiling, running a 16 program, running indent or code checkers can be done with a keystroke. There 17 are many additional hints and options which can improve speed and comfort when 18 writing C/C++. See the help file csupport.txt for more information. 19 20 ======================================================================================= 21 INSTALLATION 22 ======================================================================================= 23 The subdirectories in the zip archive cvim.zip mirror the directory structure 24 which is needed below the local installation directory $HOME/.vim/ for LINUX/UNIX 25 ($VIM/vimfiles/ for Windows; find the value of $VIM with ":echo $VIM" from inside Vim). 26 27 (0) Save the template files in '$HOME/.vim/c-support/templates/Templates' if 28 you have changed any of them. 29 30 (1) Copy the zip archive cvim.zip to $HOME/.vim and run 31 32 unzip cvim.zip 33 34 If you have already an older version of cvim and you have modified the template 35 files you may want to save your templates first or copy the files from the 36 archive by hand. 37 38 (2) Loading of plugin files must be enabled. If not use 39 40 :filetype plugin on 41 42 This is the minimal content of the file '$HOME/.vimrc'. Create one if there 43 is none. 44 45 (3) Set at least some personal details in the file '$HOME/.vim/c-support/templates/Templates' 46 (file '$VIM\/c-support/templates/Templates' under Windows). 47 Here is the minimal personalization (my settings as an example, of course): 48 49 |AUTHOR| = Dr. Fritz Mehner 50 |AUTHORREF| = mn 51 |EMAIL| = mehner@fh-swf.de 52 |COMPANY| = FH Südwestfalen, Iserlohn 53 |COPYRIGHT| = Copyright (c) |YEAR|, |AUTHOR| 54 55 (Read more about the template system in the plugin documentation) 56 57 (4) Consider additional settings in the file '$HOME/.vimrc'. 58 The files customization.vimrc and customization.gvimrc are replacements or 59 extensions for your .vimrc and .gvimrc ( _vimrc and _gvimrc under Windows). 60 You may want to use parts of them. The files are documented. 61 62 There are a lot of features and options which can be used and influenced: 63 64 * use of template files and tags 65 * surround marked blocks with statements 66 * using and managing personal code snippets 67 * generate/remove multiline comments 68 * picking up prototypes 69 * C/C++ dictionaries for keyword completion 70 * (re)moving the root menu 71 72 Restart gVim/Vim generate the help tags 73 74 :helptags ~/.vim/doc 75 76 and look at csupport help with 77 78 :help csupport 79 80 or use the 'help' entry in the root menu of this plug-in. 81 82 +-----------------------------------------------+ 83 | +-------------------------------------------+ | 84 | | ** PLEASE READ THE DOCUMENTATION ** | | 85 | | Actions differ for different modes! | | 86 | +-------------------------------------------+ | 87 +-----------------------------------------------+ 88 89 Any problems ? See the TROUBLESHOOTING section at the end of the help file 90 'doc/csupport.txt'. 91 92 ======================================================================================= 93 RELEASE NOTES FOR VERSION 5.1 94 ======================================================================================= 95 + Definition and implementation of classes have now different templates and menu entries. 96 + Accessor methods (get/set) can be generated. 97 + New templates: everything other than language keywords comes from a template 98 (and is user changeable). 99 100 101 OLDER RELEASE NOTES : see file 'ChangeLog' 102 ======================================================================================= 103 104 ======================================================================================= 105 FILES 106 ======================================================================================= 107 108 README.csupport This file. 109 110 doc/csupport.txt The help file for the local on-line help. 111 112 ftplugin/c.vim A file type plug-in. Define hotkeys, creates a local 113 dictionary for each C/C++ file. 114 115 plugin/c.vim The C/C++ plug-in for GVIM. 116 117 c-support/scripts/wrapper.sh The wrapper script for the use of an xterm. 118 c-support/templates/* C-style and C++-style template files (see csupport.txt). 119 120 121 c-support/wordlists/c-c++-keywords.list All C and C++ keywords (already in word.list). 122 c-support/wordlists/k+r.list K&R-Book: Words from the table of content. 123 They appear frequently in comments. 124 c-support/wordlists/stl_index.list STL: method and type names. 125 126 127 ----------------------- ------------------------------------------------------------- 128 The following files and extensions are for convenience only. 129 c.vim will work without them. 130 ------------------------------------------------------------- 131 c-support/doc/c-hotkeys.pdf Hotkey reference card. 132 c-support/doc/ChangeLog The change log. 133 134 rc/customization.ctags Additional settings I use in .ctags to enable navigation 135 through makefiles ans qmake files with the plug-in taglist.vim. 136 137 rc/costumization.gvimrc Additional settings I use in .gvimrc : 138 hot keys, mouse settings, ... 139 The file is commented. Append it to your .gvimrc if you like. 140 141 rc/costumization.indent.pro Additional settings I use in .indent.pro : 142 See the indent manual. 143 144 rc/costumization.vimrc Additional settings I use in .vimrc : incremental search, 145 tabstop, hot keys, font, use of dictionaries, ... 146 The file is commented. Append it to your .vimrc if you like. 147 148 ======================================================================================= 149 ADDITIONAL TIPS 150 ======================================================================================= 151 152 (1) gVim. Toggle 'insert mode' <--> 'normal mode' with the right mouse button 153 (see mapping in file costumization.gvimrc). 154 155 (2) gVim. Use tear off menus. 156 157 (3) Try 'Focus under mouse' as window behavior (No mouse click when the mouse pointer 158 is back from the menu entry). 159 160 (4) Use Emulate3Buttons "on" (X11) even for a 3-button mouse. Pressing left and right 161 button at the same time without moving your fingers is faster then moving a finger 162 to the middle button (often a wheel). 163 164 ======================================================================================= 165 CREDITS 166 ======================================================================================= 167 168 Some ideas are taken from the following documents: 169 170 1. Recommended C Style and Coding Standards (Indian Hill Style Guide) 171 www.doc.ic.ac.uk/lab/secondyear/cstyle/cstyle.html 172 2. Programming in C++, Ellemtel Telecommunication Systems Laboratories 173 www.it.bton.ac.uk/burks/burks/language/cpp/cppstyle/ellhome.htm 174 3. C++ Coding Standard, Todd Hoff 175 www.possibility.com/Cpp/CppCodingStandard.html 176 177 The splint error format is taken from the file splint.vim (Vim standard distribution). 178 179 ------------------ 180 181 ... finally 182 183 Johann Wolfgang von Goethe (1749-1832), the greatest of the German poets, 184 about LINUX, Vim/gVim and other great tools (Ok, almost.) : 185 186 Ein Mann, der recht zu wirken denkt, Who on efficient work is bent, 187 Muß auf das beste Werkzeug halten. Must choose the fittest instrument. 188 189 Faust, Teil 1, Vorspiel auf dem Theater Faust, Part 1, Prologue for the Theatre 190 191 =======================================================================================