class library: Spawner - don't access PriorityQueue-array
[supercollider.git] / editors / scvim / README
blob0bc5de680809e065dd3a1e2d102a131d10addf1b
1 SCVIM
2   created by Alex Norman, it is in its early stages, use at your own risk
3   this is SCVIM-git
4   the webpage is here: http://www.x37v.info/projects/scvim/
5   if you have improvements/suggestions email alex at x37v dot info
6 ________________________________________________________________________________
8 REQUIREMENTS:
9 - vim
10 - supercollider (sclang)
11 - ruby
12 - cmake
14 OPTIONAL:
15 - gvim or MacVim
16 ________________________________________________________________________________
18 INSTALLATION STEPS:
20 Note:  If you installed SuperCollider from source and didn't disable scvim when
21 running cmake, scvim should already be installed.
23 If you'd like to install scvim directly, without using the whole SuperCollider
24 install process you can do:
26 cmake . && sudo make install
28 You will have to enter your password in order to finalize the installation.
30 some people prefer to use a build directory [though scvim doesn't actually
31 build anything, but cmake does create some output files] to do that, from the
32 scvim directory, type:
34 mkdir build && cd build
35 cmake .. && sudo make install
37 Now you should be ready to use scvim, e.g. by running "scvim" or "scvim -g" from
38 a command prompt.
39 ________________________________________________________________________________
41 OPTIONAL EXTRA INSTALLATION STEPS:
43 * If you want to be able to read supercollider files with syntax highlighting,
44    have the ability to start the language and have the keybindings you've set
45    up during a normal vim editing session [without launching as 'scvim'] then
46    source your scvimrc file in your ~/.vimrc
47    for example, if you have a ~/.scvimrc file you could put this line in your ~/.vimrc
48    so ~/.scvimrc
50 * I put this in my ~/.sclang.sc so that each time I start sclang I have updated
51    Object completion and highlighting, as well as Object Definition Lookup:
52    //set up the scvim stuff
53    SCVim.updateCaches;
54    You'll probably want to execute this at least once after an install of
55    supercollider to get the most up-to-date Object info
57 * sclang's working directory defaults to /tmp on linux and
58    /Applications/SuperCollider on mac when using scvim. If you want to
59    set it to something else you can set the bash environment variable
60    SCLANG_RUNDIR
62 * I've put the colorscheme that I use in the "extra" folder.  This makes
63    strings, symbols and chars variations on the same color but all look
64    different.  Feel free to use/modify it to your liking.
65 ________________________________________________________________________________
67 USAGE:
69 defaults (most work in both command and insert mode):
71 :SClangStart starts/restarts the interpreter in an xterm
72   (if you want to recompile the supercollider library just type :SClangStart and you'll
73    kill the current interpreter, start up a new one and have a recompiled library)
74 :SClangKill
75    kills the xterm/interpreter
76 (exiting vim also kills the interpreter)
78 F5 sends a whole block (looks for the outermost parens and sends that data)
79 F6 sends a single line (the line the cursor is currently on)
80 F7 calls TempoClock.default.clear;
81 F8 calls s.freeAll;
82 F12 calls thisProcess.stop; (i.e. the same as cmd-. on Mac)
84 in visual mode F5 and F6 both send the whole visual block
86 use :SChelp to get to SC help topics, or use K on a word (in command mode)
87    (this has tab completion)
88 use :SCdef to see the class definitions for an object, or use ^k (in command or normal mode)
89    on a word (this also has tab completion)
91 These key bindings can all be changed through editing your scvimrc file.
92 ________________________________________________________________________________
94 HELP DOCS:
96 scvim uses preprocessed versions of the help files (converted to plain-text),
97 and to update these help files from the main files you can run the following
98 line in sclang:
100   SCVim.updateHelpCache;
103 TROUBLE SHOOTING:
105 If you cannot find the scvim executable, make sure that "/usr/local/bin" is in
106 your PATH, this is where scvim is installed by default.
108 If you get errors about _FileWrite (like the error printed below) when you run
109 SCVim.updateHelpCache or SCVim.updateCaches it is likely that you don't have
110 write permissions for your scvim_cache_dir.
111 This directory is normally: ~/.scvim/
112 You can verify that by executing: SCVIM.scvim_cache_dir
113 Most often the solution is to do this: sudo chown -R <yourusername> ~/.scvim/
115 ERROR: Primitive '_FileWrite' failed.
116 Failed.
117 RECEIVER:
118 Instance of File { (B7837DD0, gc=40, fmt=00, flg=00, set=01)
119  instance variables [1]
120  fileptr : nil
122 ________________________________________________________________________________
124 THANKS:
126 Dan Stowell for his help:
127    converting the SuperCollider code into a class, improving the README, getting scvim
128    into the SuperCollider svn, etc.
129 John Yates for providing the indent functionality [which I have changed slightly] and
130    help with the help file processor
131 Andrzej Kopec for work on removing html from help
132 Renick Bell for testing out the install process and providing notes.