annotate runtime/doc/if_mzsch.txt @ 625:81fe2ccc1207 v7.0179

updated for version 7.0179
author vimboss
date Thu, 12 Jan 2006 23:22:24 +0000
parents 2463194c8cdd
children 0f9f4761ad9c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
625
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
1 *if_mzsch.txt* For Vim version 7.0aa. Last change: 2006 Jan 05
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
2
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
3
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
4 VIM REFERENCE MANUAL by Sergey Khorev
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
5
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
6
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
7 The MzScheme Interface to Vim *mzscheme* *MzScheme*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
8
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
9 1. Commands |mzscheme-commands|
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
10 2. Examples |mzscheme-examples|
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
11 3. Threads |mzscheme-threads|
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
12 4. The Vim access procedures |mzscheme-vim|
625
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
13 5. Dynamic loading |mzscheme-dynamic|
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
15 {Vi does not have any of these commands}
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
16
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
17 The MzScheme interface is available only if Vim was compiled with the
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
18 |+mzscheme| feature.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
19
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
20 Based on the work of Brent Fulgham.
128
8def260d486d updated for version 7.0044
vimboss
parents: 26
diff changeset
21 Dynamic loading added by Sergey Khorev
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
22
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
23 For downloading MzScheme and other info:
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
24 http://www.plt-scheme.org/software/mzscheme/
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
25
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
26 ==============================================================================
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
27 1. Commands *mzscheme-commands*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
28
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
29 *:mzscheme* *:mz*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
30 :[range]mz[scheme] {stmt}
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
31 Execute MzScheme statement {stmt}. {not in Vi}
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
32
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
33 :[range]mz[scheme] << {endmarker}
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
34 {script}
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
35 {endmarker}
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
36 Execute inlined MzScheme script {script}.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
37 Note: This command doesn't work if the MzScheme
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
38 feature wasn't compiled in. To avoid errors, see
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
39 |script-here|.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
40
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
41 *:mzfile* *:mzf*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
42 :[range]mzf[ile] {file} Execute the MzScheme script in {file}. {not in Vi}
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
43 All statements are executed in the namespace of the
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
44 buffer that was current during :mzfile start.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
45 If you want to access other namespaces, use
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
46 'parameterize'.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
47
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
48 All of these commands do essentially the same thing - they execute a piece of
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
49 MzScheme code, with the "current range" set to the given line
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
50 range.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
51
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
52 In the case of :mzscheme, the code to execute is in the command-line.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
53 In the case of :mzfile, the code to execute is the contents of the given file.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
54
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
55 Each buffer has its own MzScheme namespace. Global namespace is bound to
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
56 the `global-namespace' value from the 'vimext' module.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
57 MzScheme interface defines exception exn:vim, derived from exn.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
58 It is raised for various Vim errors.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
59
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
60 During compilation, the MzScheme interface will remember the current MzScheme
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
61 collection path. If you want to specify additional paths use the
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
62 'current-library-collection-paths' parameter. E.g., to cons the user-local
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
63 MzScheme collection path: >
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
64 :mz << EOF
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
65 (current-library-collection-paths
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
66 (cons
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
67 (build-path (find-system-path 'addon-dir) (version) "collects")
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
68 (current-library-collection-paths)))
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
69 EOF
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
70 <
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
71
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
72 All functionality is provided through module vimext.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
73
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
74 The exn:vim is available without explicit import.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
75
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
76 To avoid clashes with MzScheme, consider using prefix when requiring module,
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
77 e.g.: >
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
78 :mzscheme (require (prefix vim- vimext))
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
79 <
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
80 All the examples below assume this naming scheme. Note that you need to do
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
81 this again for every buffer.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
82
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
83 The auto-instantiation can be achieved with autocommands, e.g. you can put
26
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
84 something like this in your .vimrc (EOFs should not have indentation): >
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
85 function s:MzRequire()
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
86 if has("mzscheme")
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
87 :mz << EOF
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
88 (require (prefix vim- vimext))
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
89 (let ((buf (vim-get-buff-by-name (vim-eval "expand(\"<afile>\")"))))
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
90 (when (and buf (not (eq? buf (vim-curr-buff))))
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
91 (parameterize ((current-namespace (vim-get-buff-namespace buf)))
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
92 (namespace-attach-module vim-global-namespace 'vimext)
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
93 (namespace-require '(prefix vim vimext)))))
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
94 EOF
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
95 endif
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
96 endfunction
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
97
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
98 function s:MzStartup()
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
99 if has("mzscheme")
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
100 au BufNew,BufNewFile,BufAdd,BufReadPre * :call s:MzRequire()
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
101 :mz << EOF
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
102 (current-library-collection-paths
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
103 (cons
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
104 (build-path (find-system-path 'addon-dir) (version) "collects")
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
105 (current-library-collection-paths)))
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
106 EOF
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
107 endif
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
108 endfunction
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
109
404aac550f35 updated for version 7.0017
vimboss
parents: 14
diff changeset
110 call s:MzStartup()
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
111 <
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
112
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
113 The global namespace just instantiated this module with the prefix "vimext:".
273
2463194c8cdd updated for version 7.0073
vimboss
parents: 128
diff changeset
114 *mzscheme-sandbox*
2463194c8cdd updated for version 7.0073
vimboss
parents: 128
diff changeset
115 When executed in the |sandbox|, access to some filesystem and Vim interface
2463194c8cdd updated for version 7.0073
vimboss
parents: 128
diff changeset
116 procedures is restricted.
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
117
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
118 ==============================================================================
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
119 2. Examples *mzscheme-examples*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
120 >
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
121 :mzscheme (display "Hello")
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
122 :mzscheme (vim-set-buff-line 10 "This is line #10")
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
123 <
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
124 Inline script usage: >
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
125 function! <SID>SetFirstLine()
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
126 :mz << EOF
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
127 (display "!!!")
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
128 (vim-set-buff-line 1 "This is line #1")
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
129 (vim-beep)
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
130 EOF
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
131 endfunction
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
132
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
133 nmap <F9> :call <SID>SetFirstLine() <CR>
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
134 <
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
135 File execution: >
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
136 :mzfile supascript.scm
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
137 <
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
138 Accessing the current buffer namespace from an MzScheme program running in
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
139 another buffer within |:mzfile|-executed script : >
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
140 ; Move to the window below
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
141 (vim-command "wincmd j")
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
142 ; execute in the context of buffer, to which window belongs
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
143 ; assume that buffer has 'textstring' defined
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
144 (parameterize ((current-namespace
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
145 (vim-get-buff-namespace (vim-curr-buff))))
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
146 (eval '(vim-set-buff-line 1 textstring)))
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
147 <
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
148
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
149 ==============================================================================
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
150 3. Threads *mzscheme-threads*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
151
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
152 The MzScheme interface supports threads. They are independent from OS threads,
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
153 thus scheduling is required. The option 'mzquantum' determines how often
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
154 Vim should poll for available MzScheme threads.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
155 NOTE
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
156 Thread scheduling in the console version of Vim is less reliable than in the
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
157 GUI version.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
158
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
159 ==============================================================================
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
160 5. VIM Functions *mzscheme-vim*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
161
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
162 *mzscheme-vimext*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
163 The 'vimext' module provides access to procedures defined in the MzScheme
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
164 interface.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
165
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
166 Common
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
167 ------
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
168 (command {command-string}) Perform the vim ":Ex" style command.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
169 (eval {expr-string}) Evaluate the vim command string.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
170 NOTE clashes with MzScheme eval
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
171 (range-start) Start/End of the range passed with
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
172 (range-end) the Scheme command.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
173 (beep) beep
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
174 (get-option {option-name} [buffer-or-window]) Get Vim option value (either
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
175 local or global, see set-option).
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
176 (set-option {string} [buffer-or-window])
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
177 Set a Vim option. String must have option
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
178 setting form (like optname=optval, or
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
179 optname+=optval, etc.) When called with
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
180 {buffer} or {window} the local option will
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
181 be set. The symbol 'global can be passed
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
182 as {buffer-or-window}. Then |:setglobal|
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
183 will be used.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
184 global-namespace The MzScheme main namespace.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
185
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
186 Buffers *mzscheme-buffer*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
187 -------
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
188 (buff? {object}) Is object a buffer?
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
189 (buff-valid? {object}) Is object a valid buffer? (i.e.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
190 corresponds to the real Vim buffer)
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
191 (get-buff-line {linenr} [buffer])
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
192 Get line from a buffer.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
193 (set-buff-line {linenr} {string} [buffer])
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
194 Set a line in a buffer. If {string} is #f,
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
195 the line gets deleted. The [buffer]
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
196 argument is optional. If omitted, the
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
197 current buffer will be used.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
198 (get-buff-line-list {start} {end} [buffer])
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
199 Get a list of lines in a buffer. {Start}
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
200 and {end} are 1-based. {Start} is
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
201 inclusive, {end} - exclusive.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
202 (set-buff-line-list {start} {end} {string-list} [buffer])
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
203 Set a list of lines in a buffer. If
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
204 string-list is #f or null, the lines get
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
205 deleted. If a list is shorter than
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
206 {end}-{start} the remaining lines will
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
207 be deleted.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
208 (get-buff-name [buffer]) Get a buffer's text name.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
209 (get-buff-num [buffer]) Get a buffer's number.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
210 (get-buff-size [buffer]) Get buffer line count.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
211 (insert-buff-line-list {linenr} {string/string-list} [buffer])
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
212 Insert a list of lines into a buffer after
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
213 {linenr}. If {linenr} is 0, lines will be
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
214 inserted at start.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
215 (curr-buff) Get the current buffer. Use procedures
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
216 from `vimcmd' module to change it.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
217 (buff-count) Get count of total buffers in the editor.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
218 (get-next-buff [buffer]) Get next buffer.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
219 (get-prev-buff [buffer]) Get previous buffer. Return #f when there
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
220 are no more buffers.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
221 (open-buff {filename}) Open a new buffer (for file "name")
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
222 (get-buff-by-name {buffername}) Get a buffer by its filename or #f
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
223 if there is no such buffer.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
224 (get-buff-by-num {buffernum}) Get a buffer by its number (return #f if
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
225 there is no buffer with this number).
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
226 (get-buff-namespace [buffer]) Get buffer namespace.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
227
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
228 Windows *mzscheme-window*
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
229 ------
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
230 (win? {object}) Is object a window?
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
231 (win-valid? {object}) Is object a valid window (i.e. corresponds
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
232 to the real Vim window)?
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
233 (curr-win) Get the current window.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
234 (win-count) Get count of windows.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
235 (get-win-num [window]) Get window number.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
236 (get-win-by-num {windownum}) Get window by its number.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
237 (get-win-buffer [window]) Get the buffer for a given window.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
238 (get-win-height [window])
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
239 (set-win-height {height} [window]) Get/Set height of window.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
240 (get-win-width [window])
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
241 (set-win-width {width} [window])Get/Set width of window.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
242 (get-win-list [buffer]) Get list of windows for a buffer.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
243 (get-cursor [window]) Get cursor position in a window as
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
244 a pair (linenr . column).
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
245 (set-cursor (line . col) [window]) Set cursor position.
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
246
625
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
247 ==============================================================================
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
248 5. Dynamic loading *mzscheme-dynamic*
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
249
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
250 On MS-Windows the MzScheme libraries can be loaded dynamically. The |:version|
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
251 output then includes |+mzscheme/dyn|.
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
252
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
253 This means that Vim will search for the MzScheme DLL files only when needed.
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
254 When you don't use the MzScheme interface you don't need them, thus you can
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
255 use Vim without these DLL files.
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
256
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
257 To use the MzScheme interface the MzScheme DLLs must be in your search path.
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
258 In a console window type "path" to see what directories are used.
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
259
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
260 The names of the DLLs must match the MzScheme version Vim was compiled with.
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
261 For MzScheme version 209 they will be "libmzsch209_000.dll" and
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
262 "libmzgc209_000.dll". To know for sure edit "gvim.exe" and search for
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
263 "libmzsch\d\d\d_\d\d\d\.dll\c".
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 273
diff changeset
264
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
265 ======================================================================
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
266 vim:tw=78:ts=8:sts=4:ft=help:norl: