-*autocmd.txt* For Vim version 8.0. Last change: 2018 Jan 31
+*autocmd.txt* For Vim version 8.0. Last change: 2018 Feb 09
VIM REFERENCE MANUAL by Bram Moolenaar
features, such as editing compressed files (see |gzip-example|). The usual
place to put autocommands is in your .vimrc or .exrc file.
- *E203* *E204* *E143* *E855* *E937*
+ *E203* *E204* *E143* *E855* *E937* *E952*
WARNING: Using autocommands is very powerful, and may lead to unexpected side
effects. Be careful not to destroy your text.
- It's a good idea to do some testing on an expendable copy of a file first.
-*eval.txt* For Vim version 8.0. Last change: 2018 Jan 28
+*eval.txt* For Vim version 8.0. Last change: 2018 Feb 09
VIM REFERENCE MANUAL by Bram Moolenaar
< Matches added by |matchaddpos()| are returned by
|getmatches()| with an entry "pos1", "pos2", etc., with the
value a list like the {pos} item.
- These matches cannot be set via |setmatches()|, however they
- can still be deleted by |clearmatches()|.
matcharg({nr}) *matcharg()*
Selects the {nr} match item, as set with a |:match|,
-*filetype.txt* For Vim version 8.0. Last change: 2017 Dec 05
+*filetype.txt* For Vim version 8.0. Last change: 2018 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
The :Man command allows you to turn Vim into a manpager (that syntax highlights
manpages and follows linked manpages on hitting CTRL-]).
-Tested on:
-
- - Linux
- - Mac OS
- - FreeBSD
- - OpenBSD
- - Cygwin
- - Win 10 under Bash
-
-Untested:
-
- - Amiga OS
- - BeOS
- - OS/2
-
-If man sets the $MAN_PN environment variable, like man-db, the most common
-implementation on Linux, then the "env MAN_PN=1 " part below should NOT be
-set, that is, the "env MAN_PN=1" should be omitted! Otherwise, the Vim
-manpager does not correctly recognize manpages whose title contains a capital
-letter. See the discussion on
-
- https://groups.google.com/forum/#!topic/vim_dev/pWZmt_7GkxI
-
For bash,zsh,ksh or dash, add to the config file (.bashrc,.zshrc, ...)
- export MANPAGER="env MAN_PN=1 vim -M +MANPAGER -"
+ export MANPAGER="vim -M +MANPAGER -"
For (t)csh, add to the config file
- setenv MANPAGER "env MAN_PN=1 vim -M +MANPAGER -"
+ setenv MANPAGER "vim -M +MANPAGER -"
For fish, add to the config file
- set -x MANPAGER "env MAN_PN=1 vim -M +MANPAGER -"
-
-On OpenBSD:
-
- export MANPAGER="env MAN_PN=1 vim -M +MANPAGER"
-
-If you experience still issues on manpages whose titles do not contain capital
-letters, then try adding MANPATH=${MANPATH} after MAN_PN=1. If your manpages do
-not show up localized, then try adding, LANGUAGE=${LANG} after MAN_PN=1. See
-
- https://github.com/vim/vim/issues/1002
-
+ set -x MANPAGER "vim -M +MANPAGER -"
PDF *ft-pdf-plugin*
setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8
To disable this behaviour, set the following variable in your vimrc: >
-
+
let g:python_recommended_style = 0
-*if_pyth.txt* For Vim version 8.0. Last change: 2018 Jan 28
+*if_pyth.txt* For Vim version 8.0. Last change: 2018 Jan 30
VIM REFERENCE MANUAL by Paul Moore
python support: >
if has('python_compiled')
echo 'compiled with Python 2.x support'
- if has('python_dynamic
- echo 'Python 2.x dynamically loaded
+ if has('python_dynamic')
+ echo 'Python 2.x dynamically loaded'
endif
endif
if has('python3_compiled')
echo 'compiled with Python 3.x support'
- if has('python3_dynamic
- echo 'Python 3.x dynamically loaded
+ if has('python3_dynamic')
+ echo 'Python 3.x dynamically loaded'
endif
endif
-*message.txt* For Vim version 8.0. Last change: 2017 Oct 14
+*message.txt* For Vim version 8.0. Last change: 2018 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
LIST OF MESSAGES
*E222* *E228* *E232* *E256* *E293* *E298* *E304* *E317*
*E318* *E356* *E438* *E439* *E440* *E316* *E320* *E322*
- *E323* *E341* *E473* *E570* *E685* >
+ *E323* *E341* *E473* *E570* *E685* *E950* >
Add to read buffer
makemap: Illegal mode
Cannot create BalloonEval with both message and callback
Internal error
Internal error: {function}
fatal error in cs_manage_matches
+ Invalid count for del_bytes(): {N}
This is an internal error. If you can reproduce it, please send in a bug
report. |bugs|
-*options.txt* For Vim version 8.0. Last change: 2017 Dec 21
+*options.txt* For Vim version 8.0. Last change: 2018 Feb 03
VIM REFERENCE MANUAL by Bram Moolenaar
-*pattern.txt* For Vim version 8.0. Last change: 2017 Jun 05
+*pattern.txt* For Vim version 8.0. Last change: 2018 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
becomes invalid. Vim doesn't automatically update the matches.
Similar to moving the cursor for "\%#" |/\%#|.
- */\%l* */\%>l* */\%<l*
+ */\%l* */\%>l* */\%<l* *E951*
\%23l Matches in a specific line.
\%<23l Matches above a specific line (lower line number).
\%>23l Matches below a specific line (higher line number).
-*quickref.txt* For Vim version 8.0. Last change: 2017 Nov 21
+*quickref.txt* For Vim version 8.0. Last change: 2018 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar
-*starting.txt* For Vim version 8.0. Last change: 2018 Jan 27
+*starting.txt* For Vim version 8.0. Last change: 2018 Feb 09
VIM REFERENCE MANUAL by Bram Moolenaar
When Vim starts, the 'compatible' option is on. This will be used when Vim
starts its initializations. But as soon as:
- a user vimrc file is found, or
-- a vimrc file in the current directory, or
+- a vimrc file in the current directoryis found, or
- the "VIMINIT" environment variable is set, or
- the "-N" command line argument is given, or
- the "--clean" command line argument is given, or
- even when no vimrc file exists.
- the |defaults.vim| script is loaded, or
-- gvimrc file was found,
-then it will be set to 'nocompatible'.
+- a gvimrc file was found,
+then the option will be set to 'nocompatible'.
Note that this does NOT happen when a system-wide vimrc file was found.
-*syntax.txt* For Vim version 8.0. Last change: 2018 Jan 27
+*syntax.txt* For Vim version 8.0. Last change: 2018 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar
SCHEME *scheme.vim* *ft-scheme-syntax*
-By default only R5RS keywords are highlighted and properly indented.
+By default only R7RS keywords are highlighted and properly indented.
-MzScheme-specific stuff will be used if b:is_mzscheme or g:is_mzscheme
-variables are defined.
-
-Also scheme.vim supports keywords of the Chicken Scheme->C compiler. Define
-b:is_chicken or g:is_chicken, if you need them.
+scheme.vim also supports extensions of the CHICKEN Scheme->C compiler.
+Define b:is_chicken or g:is_chicken, if you need them.
SDL *sdl.vim* *ft-sdl-syntax*
'pvh' options.txt /*'pvh'*
'pvw' options.txt /*'pvw'*
'pythondll' options.txt /*'pythondll'*
+'pythonhome' options.txt /*'pythonhome'*
'pythonthreedll' options.txt /*'pythonthreedll'*
+'pythonthreehome' options.txt /*'pythonthreehome'*
'pyx' options.txt /*'pyx'*
'pyxversion' options.txt /*'pyxversion'*
'qe' options.txt /*'qe'*
CmdUndefined autocmd.txt /*CmdUndefined*
Cmdline cmdline.txt /*Cmdline*
Cmdline-mode cmdline.txt /*Cmdline-mode*
+CmdlineChanged autocmd.txt /*CmdlineChanged*
CmdlineEnter autocmd.txt /*CmdlineEnter*
CmdlineLeave autocmd.txt /*CmdlineLeave*
CmdwinEnter autocmd.txt /*CmdwinEnter*
Dictionary eval.txt /*Dictionary*
Dictionary-function eval.txt /*Dictionary-function*
Digraphs digraph.txt /*Digraphs*
+DirChanged autocmd.txt /*DirChanged*
E motion.txt /*E*
E10 message.txt /*E10*
E100 diff.txt /*E100*
E948 terminal.txt /*E948*
E949 editing.txt /*E949*
E95 message.txt /*E95*
+E950 message.txt /*E950*
+E951 pattern.txt /*E951*
+E952 autocmd.txt /*E952*
E96 diff.txt /*E96*
E97 diff.txt /*E97*
E98 diff.txt /*E98*
-*todo.txt* For Vim version 8.0. Last change: 2018 Jan 28
+*todo.txt* For Vim version 8.0. Last change: 2018 Feb 09
VIM REFERENCE MANUAL by Bram Moolenaar
with the expected screenshot. Set t_Co to 256.
+channel:
+- get_job_options() isn't clear about what causes an error, often just returns
+ "invalid argument".
- Add a separate timeout for opening a socket. Currently it's fixed at 50
msec, which is too small for a remote connection. (tverniquet, #2130)
- Try out background make plugin:
Another one: echom matchstr(" sdfsfsf\n sfdsdfsdf",'[^\n]*')
(2017 May 15, #1252)
+Use vim_clear() in more places, instead of vim_free() and assigning NULL.
+
Include a few color schemes, based on popularity:
http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
http://vimawesome.com/?q=tag:color-scheme
Reproducible:
invalid memory access in regexp with zero-width.
reproduced by Dominique, 2017 Dec 23
- heap-use-after-free in win_equal_rec (#2467)
- au* 0 vs¡
- ar0
- arga
- al
- al
-Patch to fix using freed memory. (Christian Brabandt, 2018 Jan 6, #2467)
-
-Patch for nsis runtime files. (Ken Takata, 2018 Jan 25)
-
-Patch for scheme runtime files (new version) (Evan Hanson, 2018 Jan 26)
-
-Patch to turn tests into new style. (Yegappan, 2017 Dec 29, #2509)
-
-Patch to fix crash in rubyf. (W, #2512) fixes #2511
-
-Updates for Debian runtime files. (James McCoy, 2018 Jan 7)
-
-Crash when calling term_start() with empty command on windows. (Wang Shidong,
-2018 Dec 27, #2501)
-
-Patch to improve DirectX rendering. (Ken Takata, 2018 Jan 18, #2560 fixes
-#2401)
-
-Endless loop invovlving gui_mch_stop_blink(). (zdohnal, 2018 Jan 11)
-
-Patch to add 'pythonhome' and 'pythonthreehome' options. (Kazuki Sakamoto,
-2016 Nov 21, #1266)
"silent! try" doesn't restore emsg_silent when an exception is thrown.
(Ben Reilly, 2018 Jan 5, #2531) Possible solution by Christian Brabandt, 2018
Jan 6.
-Patch to fix ex mode buffering output. (Brian M. Carlson, 2018 Jan 8, #2537)
-
-Patch for config.vim syntax file. (James McCoy, 2018 Jan 28, maintainer didn't
-respond).
-
-Patch to add support for clojure script filetype detection. (David Burgin,
-2018 Jan 20, #257)
-
-Patch to implement the DirChanged autocmd event. (Andy Massimino, 2018 Jan 9,
-replaces #888)
-
-Patch to fix not adding a slash after :find completion. (Genki Sky, 2018 Jan
-10)
-
-Patch for man.vim, fix for Mac. (SungHyun Nam, 2018 Jan 8, #2488)
-Update Jan 10.
-
-Patch to fix illegal memory access in del_bytes(). (Christian Brabandt, 2018
-Jan 2, #2466)
-
-Recursive use of alist_add() (Christian Brabandt, 2018 Jan 6, #2472)
-
-patch 1218 breaks etags. (zdohnal, 2018 Jan 5)
+Mode message isn't updated on vertical split. (Alexei Averchenko, 2018 Feb 2,
+#2611)
Errors found with random data:
heap-buffer-overflow in alist_add (#2472)
- heap-buffer-overflow in del_bytes (#2466)
Compiler warnings (geeknik, 2017 Oct 26):
- signed integer overflow in do_sub() (#2249)
- signed integer overflow in get_address() (#2248)
- signed integer overflow in getdecchrs() (#2254)
-- signed integer overflow in nfa_regatom() (#2251)
- patch by Christian Brabandt, 2018 Jan 8
- undefined left shift in get_string_tv() (#2250)
-Patch to fix CursorIM highlighting on Windows. (Ken Takata, 2018 Jan 18)
-
Cursor in wrong screen line with WinBar. (#2362)
Fix by Christian Brabandt (2018 Jan 2)
20, #2481)
Also see #2352, want better control over balloon, perhaps set the position.
-Patch to make installer faster. (Ken Takata, 2018 Jan 3, #2522)
-
Patch to support hunspell. (Matej Cepl, Jan 2018, #2500)
+Patch to include hunspell support. (Matej Cepl, 2017 Dec 26, #845)
+Doesn't work on Windows yet.
Cursor in status line after search. (#2530)
Patch for minimum width of completion popup menu. (Christian Brabandt, 2018
Jan 3, #2314)
-When using :packadd files under "later" are not used, which is inconsistent
-with packages under "start". (xtal8, #1994)
+Patch to redraw instead of scroll for terminal window. (Ken Takata, #2010)
-Patch to make D&D work between 32 bit app and 64 bit Vim. (Ken Takata, #2504)
+Patch to add "user_data" to completion items. (Ben Jackson, 2018 Feb 1, #2608,
+closes #2508)
-Patch to fix invalid return value with backwards searchpair. (Daniel Hahler,
-2018 Jan 15, #2552)
+Patch to add TextChangedP, text changed while popup menu is visible. (Prabir
+Shrestha, 2018 Jan 28, test added by Christian Brabandt)
+
+When using :packadd files under "later" are not used, which is inconsistent
+with packages under "start". (xtal8, #1994)
Column number is wrong whsn using 'linebreak' and 'wrap'. (Keith Smiley, 2018
Jan 15, #2555)
-Patch to remove redundant "if". (Dominique Pelle, 2018 Jan 14)
+Patch to add getjumplist(). (Yegappan Lakshmanan, 2018 Feb 2, #2609)
Serbian translations. (Peseic, 2018 Jan 17)
+Patch for problem with restoring screen on Windows. (Nobuhiro Takasaki, 2015
+Sep 10) Update 2018 Jan 4 #2575
+Alternate change by Ken Takata.
+
Check argument of systemlist(). (Pavlov)
Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
#2546)
-Patch to fix illegal memory access. (Christian Brabandt, 2018 Jan 6, #2523)
-
When 'inchsearch' and 'hlsearch' are set /\v highlights everything.
Also see #2337
a deadlock if the reading side is waiting for the write to finish. (Nate
Bosch, 2018 Jan 13, #2548)
+User dictionary ~/.vim/spell/lang.utf-8.add not used for spell checking until a
+word is re-added to it. (Matej Cepl, 2018 Feb 6)
+
Problem with mouse scroll in tmux. (fcying, #2419) Might be caused by patch
-8.0.1309.
+8.0.1309. Removing "held_button = MOUSE_RELEASE;" helps. (2018 Feb 5)
+
+Patch for 24 bit color support in MS-Windows console, using vcon. (Nobuhiro
+Takasaki, Ken Takata, 2017 Oct 1, #2060).
-Des setting 'cursorline' cause syntax highlighting to slow down? Perhaps is
+Does setting 'cursorline' cause syntax highlighting to slow down? Perhaps is
mess up the cache? (Mike Lee Williams, 2018 Jan 27, #2539)
Fold at end of the buffer behaves inconsistently. (James McCoy, 2017 Oct 9)
directory (Paulo Marcel Coelho Arabic, 2017 Oct 30, #2266)
Also see #1689.
-Patch for 24 bit color support in MS-Windows console, using vcon. (Nobuhiro
-Takasaki, Ken Takata, 2017 Oct 1, #2060).
-
ml_get error when using a Python. (Yggdroot, 2017 Jun 1, #1737)
Lemonboy can reproduce (2017 Jun 5)
When 'virtualedit' is "all" and 'cursorcolumn' is set, the wrong column may be
-highlighted. (van-debugger, 2018 Jan 23, #2576)
+highlighted. (van-de-bugger, 2018 Jan 23, #2576)
Patch to add winlayout() function. (Yegappan Lakshmanan, 2018 Jan 4)
matchit hasn't been maintained for a long time. #955.
+Patch to add variable name after "scope add". (Eddie Lebow, 2018 Feb 7, #2620)
+Maybe not needed?
+
Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
MS-Windows: buffer completion doesn't work when using backslash (or slash)
Now on github: #1856. Updated Oct 2017
Got permission to include this under the Vim license.
-Patch to include hunspell support. (Matej Cepl, 2017 Dec 26, #845)
-Doesn't work on Windows yet.
-
Refactored HTML indent file. (Michael Lee, #1821)
Test_writefile_fails_conversion failure on Solaris because if different iconv
When using --remote-tab on MS-Windows 'encoding' hasn't been initialized yet,
the file name ends up encoded wrong. (Raul Coronado, 2015 Dec 21)
-Patch for problem with restoring screen on Windows. (Nobuhiro Takasaki, 2015
-Sep 10) Update 2018 Jan 4 #2575
-Alternate change by Ken Takata.
-
Example in editing.txt uses $HOME with the expectation that it ends in a
slash. For me it does, but perhaps not for everybody. Add a function that
inserts a slash when needed? pathconcat(dir, path) (Thilo Six, 2015 Aug 12)
Patch to add a "literal" argument to bufnr(). (Olaf Dabrunz, 2015 Aug 4)
-Cannot execute the shell when it's in a directory with a space.
-Issue #459.
-
When a session file is created and there are "nofile" buffers, these are not
filled. Need to trigger BufReadCmd autocommands. Also handle deleting the
initial empty buffer better. (ZyX, 2015 March 8)
Error - When an error happens
NormalEnter - Entering Normal mode
ReplaceEnter - Entering Replace mode
- CmdEnter - Entering Cmdline mode (with type of cmdline to allow
- different mapping)
VisualEnter - Entering Visual mode
*Leave - Leaving a mode (in pair with the above *Enter)
VimLeaveCheck - Before Vim decides to exit, so that it can be cancelled
--- /dev/null
+" CHICKEN-specific Vim customizations
+" Last Change: 2018-01-06
+" Author: Evan Hanson <evhan@foldling.org>
+" Maintainer: Evan Hanson <evhan@foldling.org>
+" URL: https://foldling.org/vim/ftplugin/chicken.vim
+" Notes: These are supplemental settings, to be loaded after the core
+" Scheme ftplugin file (ftplugin/scheme.vim). Enable it by setting
+" b:is_chicken=1 and filetype=scheme.
+
+if !exists('b:did_scheme_ftplugin')
+ finish
+endif
+
+setl keywordprg=chicken-doc
+
+setl lispwords+=and-let*
+setl lispwords+=begin-for-syntax
+setl lispwords+=compiler-typecase
+setl lispwords+=condition-case
+setl lispwords+=define-compiler-syntax
+setl lispwords+=define-constant
+setl lispwords+=define-external
+setl lispwords+=define-for-syntax
+setl lispwords+=define-inline
+setl lispwords+=define-record
+setl lispwords+=define-record-printer
+setl lispwords+=define-specialization
+setl lispwords+=define-syntax-rule
+setl lispwords+=eval-when
+setl lispwords+=fluid-let
+setl lispwords+=handle-exceptions
+setl lispwords+=let-compiler-syntax
+setl lispwords+=let-optionals
+setl lispwords+=let-optionals*
+setl lispwords+=letrec-values
+setl lispwords+=match
+setl lispwords+=match-lambda
+setl lispwords+=match-lambda*
+setl lispwords+=match-let
+setl lispwords+=match-let*
+setl lispwords+=module
+setl lispwords+=receive
+setl lispwords+=select
+setl lispwords+=set!-values
+
+let b:undo_ftplugin = b:undo_ftplugin . ' keywordprg<'
+
+if exists('g:loaded_matchit') && !exists('b:match_words')
+ let b:match_words = '#>:<#'
+ let b:undo_ftplugin = b:undo_ftplugin . ' | unlet! b:match_words'
+endif
" Vim filetype plugin file (GUI menu, folding and completion)
" Language: Debian Changelog
-" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+" Maintainer: Debian Vim Maintainers
" Former Maintainers: Michael Piefel <piefel@informatik.hu-berlin.de>
" Stefano Zacchiroli <zack@debian.org>
-" Last Change: 2014-01-31
+" Last Change: 2018-01-06
" License: Vim License
-" URL: http://hg.debian.org/hg/pkg-vim/vim/file/unstable/runtime/ftplugin/debchangelog.vim
+" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/ftplugin/debchangelog.vim
" Bug completion requires apt-listbugs installed for Debian packages or
" python-launchpadlib installed for Ubuntu packages
" Vim filetype plugin file (GUI menu and folding)
" Language: Debian control files
-" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+" Maintainer: Debian Vim Maintainers
" Former Maintainer: Pierre Habouzit <madcoder@debian.org>
-" Last Change: 2008-03-08
-" URL: http://hg.debian.org/hg/pkg-vim/vim/raw-file/tip/runtime/ftplugin/debcontrol.vim
+" Last Change: 2018-01-06
+" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/ftplugin/debcontrol.vim
" Do these settings once per buffer
if exists("b:did_ftplugin")
-" Vim filetype plugin
-" Language: Scheme
-" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
-" URL: http://sites.google.com/site/khorser/opensource/vim
-" Original author: Dorai Sitaram <ds26@gte.com>
-" Original URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
-" Last Change: Oct 23, 2013
-
-" Only do this when not done yet for this buffer
-if exists("b:did_ftplugin")
+" Vim filetype plugin file
+" Language: Scheme (R7RS)
+" Last Change: 2018-01-20
+" Author: Evan Hanson <evhan@foldling.org>
+" Maintainer: Evan Hanson <evhan@foldling.org>
+" Previous Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
+" URL: https://foldling.org/vim/ftplugin/scheme.vim
+
+if exists('b:did_ftplugin')
finish
endif
-" Don't load another plugin for this buffer
-let b:did_ftplugin = 1
+let s:cpo = &cpo
+set cpo&vim
-" Copy-paste from ftplugin/lisp.vim
-setl comments=:;
-setl define=^\\s*(def\\k*
-setl formatoptions-=t
-setl iskeyword+=+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
setl lisp
+setl comments=:;;;;,:;;;,:;;,:;,sr:#\|,ex:\|#
setl commentstring=;%s
+setl define=^\\s*(def\\k*
+setl iskeyword=33,35-39,42-43,45-58,60-90,94,95,97-122,126
-setl comments^=:;;;,:;;,sr:#\|,mb:\|,ex:\|#
+let b:undo_ftplugin = 'setl lisp< comments< commentstring< define< iskeyword<'
-" Scheme-specific settings
-if exists("b:is_mzscheme") || exists("is_mzscheme")
- " improve indenting
- setl iskeyword+=#,%,^
- setl lispwords+=module,parameterize,let-values,let*-values,letrec-values
- setl lispwords+=define-values,opt-lambda,case-lambda,syntax-rules,with-syntax,syntax-case
- setl lispwords+=define-signature,unit,unit/sig,compund-unit/sig,define-values/invoke-unit/sig
-endif
+setl lispwords=begin
+setl lispwords+=case
+setl lispwords+=case-lambda
+setl lispwords+=cond
+setl lispwords+=cond-expand
+setl lispwords+=define
+setl lispwords+=define-record-type
+setl lispwords+=define-syntax
+setl lispwords+=define-values
+setl lispwords+=do
+setl lispwords+=guard
+setl lispwords+=import
+setl lispwords+=lambda
+setl lispwords+=let
+setl lispwords+=let*
+setl lispwords+=let*-values
+setl lispwords+=let-syntax
+setl lispwords+=let-values
+setl lispwords+=letrec
+setl lispwords+=letrec*
+setl lispwords+=letrec-syntax
+setl lispwords+=parameterize
+setl lispwords+=set!
+setl lispwords+=syntax-rules
+setl lispwords+=unless
+setl lispwords+=when
+
+let b:undo_ftplugin = b:undo_ftplugin . ' lispwords<'
-if exists("b:is_chicken") || exists("is_chicken")
- " improve indenting
- setl iskeyword+=#,%,^
- setl lispwords+=let-optionals,let-optionals*,declare
- setl lispwords+=let-values,let*-values,letrec-values
- setl lispwords+=define-values,opt-lambda,case-lambda,syntax-rules,with-syntax,syntax-case
- setl lispwords+=cond-expand,and-let*,foreign-lambda,foreign-lambda*
+let b:did_scheme_ftplugin = 1
+
+if exists('b:is_chicken') || exists('g:is_chicken')
+ exe 'ru! ftplugin/chicken.vim'
endif
-let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lispwords< lisp< commentstring<"
+unlet b:did_scheme_ftplugin
+let b:did_ftplugin = 1
+let &cpo = s:cpo
+unlet s:cpo
" Vim indent file
-" Language: Scheme
-" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
-" Last Change: 2005 Jun 24
+" Language: Scheme
+" Last Change: 2018 Jan 31
+" Maintainer: Evan Hanson <evhan@foldling.org>
+" Previous Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
+" URL: https://foldling.org/vim/indent/scheme.vim
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
finish
endif
+" Use the Lisp indenting
runtime! indent/lisp.vim
" Vim plugin for using Vim as manpager.
" Maintainer: Enno Nagel <ennonagel+vim@gmail.com>
-" Last Change: 2017 November 07
+" Last Change: 2018 Feb 04
-" $MAN_PN is supposed to be set by MANPAGER, see ":help manpager.vim".
-if empty($MAN_PN)
- finish
-endif
+command! -nargs=0 MANPAGER call s:ManPager() | delcommand MANPAGER
-command! -nargs=0 MANPAGER call s:MANPAGER() | delcommand MANPAGER
-
-function! s:MANPAGER()
- let page_pattern = '\v\w[-_.:0-9A-Za-z]*'
- let sec_pattern = '\v\w+%(\+\w+)*'
- let pagesec_pattern = '\v(' . page_pattern . ')\((' . sec_pattern . ')\)'
-
- if $MAN_PN is '1'
- let manpage = tolower(matchstr( getline(nextnonblank(1)), '^' . pagesec_pattern ))
- else
- let manpage = expand($MAN_PN)
+function! s:ManPager()
+ set nocompatible
+ if exists('+viminfofile')
+ set viminfofile=NONE
endif
+ set noswapfile
- let page_sec = matchlist(manpage, '^' . pagesec_pattern . '$')
+ setlocal ft=man
+ runtime ftplugin/man.vim
+ setlocal buftype=nofile bufhidden=hide iskeyword+=: modifiable
- bwipe!
+ " Emulate 'col -b'
+ silent keepj keepp %s/\v(.)\b\ze\1?//ge
+
+ " Remove empty lines above the header
+ call cursor(1, 1)
+ let n = search(".*(.*)", "c")
+ if n > 1
+ exe "1," . n-1 . "d"
+ endif
+ setlocal nomodified readonly
- setlocal filetype=man
- exe 'Man' page_sec[2] page_sec[1]
+ syntax on
endfunction
--- /dev/null
+" Vim syntax file
+" Language: Scheme (CHICKEN)
+" Last Change: 2018 Jan 31
+" Author: Evan Hanson <evhan@foldling.org>
+" Maintainer: Evan Hanson <evhan@foldling.org>
+" URL: https://foldling.org/vim/syntax/chicken.vim
+" Notes: This is supplemental syntax, to be loaded after the core Scheme
+" syntax file (syntax/scheme.vim). Enable it by setting b:is_chicken=1
+" and filetype=scheme.
+
+" Only to be used on top of the Scheme syntax.
+if !exists('b:did_scheme_syntax')
+ finish
+endif
+
+" Lighten parentheses.
+hi def link schemeParentheses Comment
+
+" foo#bar
+syn match schemeExtraSyntax /[^ #'`\t\n()\[\]"|;]\+#[^ '`\t\n()\[\]"|;]\+/
+
+" ##foo#bar
+syn match schemeExtraSyntax /##[^ '`\t\n()\[\]"|;]\+/
+
+" Heredocs.
+syn region schemeString start=/#<[<#]\s*\z(.*\)/ end=/^\z1$/
+
+" Keywords.
+syn match schemeKeyword /#[!:][a-zA-Z0-9!$%&*+-./:<=>?@^_~#]\+/
+syn match schemeKeyword /[a-zA-Z0-9!$%&*+-./:<=>?@^_~#]\+:\>/
+
+" C/C++ syntax.
+let s:c = globpath(&rtp, 'syntax/cpp.vim', 0, 1)
+if len(s:c)
+ exe 'syn include @c ' s:c[0]
+ syn region c matchgroup=schemeComment start=/#>/ end=/<#/ contains=@c
+endif
+
+syn keyword schemeSyntax define-record
+
+syn keyword schemeLibrarySyntax declare
+syn keyword schemeLibrarySyntax module
+syn keyword schemeLibrarySyntax reexport
+syn keyword schemeLibrarySyntax require-library
+
+syn keyword schemeTypeSyntax -->
+syn keyword schemeTypeSyntax ->
+syn keyword schemeTypeSyntax :
+syn keyword schemeTypeSyntax assume
+syn keyword schemeTypeSyntax compiler-typecase
+syn keyword schemeTypeSyntax define-specialization
+syn keyword schemeTypeSyntax define-type
+syn keyword schemeTypeSyntax the
+
+syn keyword schemeExtraSyntax and-let*
+syn keyword schemeExtraSyntax match
+syn keyword schemeExtraSyntax match-lambda
+syn keyword schemeExtraSyntax match-lambda*
+
+syn keyword schemeSpecialSyntax define-compiler-syntax
+syn keyword schemeSpecialSyntax define-constant
+syn keyword schemeSpecialSyntax define-external
+syn keyword schemeSpecialSyntax define-inline
+syn keyword schemeSpecialSyntax foreign-code
+syn keyword schemeSpecialSyntax foreign-declare
+syn keyword schemeSpecialSyntax foreign-lambda
+syn keyword schemeSpecialSyntax foreign-lambda*
+syn keyword schemeSpecialSyntax foreign-primitive
+syn keyword schemeSpecialSyntax foreign-safe-lambda
+syn keyword schemeSpecialSyntax foreign-safe-lambda*
+syn keyword schemeSpecialSyntax foreign-value
+
+syn keyword schemeSyntaxSyntax begin-for-syntax
+syn keyword schemeSyntaxSyntax define-for-syntax
+syn keyword schemeSyntaxSyntax er-macro-transformer
+syn keyword schemeSyntaxSyntax ir-macro-transformer
+syn keyword schemeSyntaxSyntax require-library-for-syntax
" Vim syntax file
" Language: configure.in script: M4 with sh
-" Maintainer: Christian Hammesr <ch@lathspell.westend.com>
-" Last Change: 2015 Jan 14
+" Former Maintainer: Christian Hammesr <ch@lathspell.westend.com>
+" Last Change: 2018 Feb 03
" (patch from Yngve Inntjore Levinsen to detect AC_MSG)
" (patch from Khym Chanur to add @Spell)
+" (patch from James McCoy to fix paren matching)
" Well, I actually even do not know much about m4. This explains why there
" is probably very much missing here, yet !
syn region configstring start=+\z(["'`]\)+ skip=+\\\z1+ end=+\z1+ contains=@Spell
" Anything inside AC_MSG_TYPE([...]) and AC_MSG_TYPE(...) is a string.
-syn region configstring matchgroup=configfunction start="AC_MSG_[A-Z]*\ze(\[" matchgroup=configdelimiter end="\])" contains=configdelimiter,@Spell
-syn region configstring matchgroup=configfunction start="AC_MSG_[A-Z]*\ze([^[]" matchgroup=configdelimiter end=")" contains=configdelimiter,@Spell
+syn region configmsg matchgroup=configfunction start="AC_MSG_[A-Z]*\ze(\[" matchgroup=configdelimiter end="\])" contains=configdelimiter,@Spell
+syn region configmsg matchgroup=configfunction start="AC_MSG_[A-Z]*\ze([^[]" matchgroup=configdelimiter end=")" contains=configdelimiter,@Spell
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link configkeyword Keyword
hi def link configspecial Special
hi def link configstring String
+hi def link configmsg String
let b:current_syntax = "config"
" Vim syntax file
" Language: CUDA (NVIDIA Compute Unified Device Architecture)
" Maintainer: Timothy B. Terriberry <tterribe@users.sourceforge.net>
-" Last Change: 2007 Oct 13
+" Last Change: 2018 Feb 06
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
-" Read the C syntax to start with
-runtime! syntax/c.vim
+" Read the C++ syntax to start with
+runtime! syntax/cpp.vim
" CUDA extentions
syn keyword cudaStorageClass __device__ __global__ __host__
" Vim syntax file
" Language: Debian changelog files
-" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+" Maintainer: Debian Vim Maintainers
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
" Wichert Akkerman <wakkerma@debian.org>
-" Last Change: 2017 Apr 23
-" URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debchangelog.vim
+" Last Change: 2018 Jan 06
+" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debchangelog.vim
" Standard syntax initialization
if exists("b:current_syntax")
syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ "
exe 'syn match debchangelogFirstKV contained "; \('.s:urgency.'\|'.s:binNMU.'\)"'
exe 'syn match debchangelogOtherKV contained ", \('.s:urgency.'\|'.s:binNMU.'\)"'
-syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|%(wheezy|jessie)%(-backports%(-sloppy)=|-security)=|stretch%(-backports|-security)=|%(devel|precise|trusty|vivid|wily|xenial|yakkety|zesty|artful)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
+syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|%(wheezy|jessie)%(-backports%(-sloppy)=|-security)=|stretch%(-backports|-security)=|%(devel|precise|trusty|vivid|wily|xenial|yakkety|zesty|artful|bionic)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
syn match debchangelogVersion contained "(.\{-})"
syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*"
syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*"
" Vim syntax file
" Language: Debian control files
-" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+" Maintainer: Debian Vim Maintainers
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
" Wichert Akkerman <wakkerma@debian.org>
-" Last Change: 2017 Nov 04
-" URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debcontrol.vim
+" Last Change: 2018 Jan 06
+" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcontrol.vim
" Standard syntax initialization
if exists("b:current_syntax")
\, 'devel', 'doc', 'editors', 'education', 'electronics', 'embedded'
\, 'fonts', 'games', 'gnome', 'gnustep', 'gnu-r', 'golang', 'graphics'
\, 'hamradio', 'haskell', 'httpd', 'interpreters', 'introspection'
- \, 'java', 'javascript', 'kde', 'kernel', 'libs', 'libdevel', 'lisp'
+ \, 'java\%(script\)\=', 'kde', 'kernel', 'libs', 'libdevel', 'lisp'
\, 'localization', 'mail', 'math', 'metapackages', 'misc', 'net'
\, 'news', 'ocaml', 'oldlibs', 'otherosfs', 'perl', 'php', 'python'
\, 'ruby', 'rust', 'science', 'shells', 'sound', 'text', 'tex'
syn case ignore
-" List of all legal keys, in order, from deb-src-control(5)
-" Source fields
-syn match debcontrolKey contained "^\%(Source\|Maintainer\|Uploaders\|Standards-Version\|Description\|Homepage\|Bugs\|Rules-Requires-Root\): *"
-syn match debcontrolKey contained "^\%(XS-\)\=Vcs-\%(Arch\|Bzr\|Cvs\|Darcs\|Git\|Hg\|Mtn\|Svn\|Browser\): *"
-syn match debcontrolKey contained "^\%(Origin\|Section\|Priority\): *"
-syn match debcontrolKey contained "^Build-\%(Depends\|Conflicts\)\%(-Arch\|-Indep\)\=: *"
-
-" Binary fields
-syn match debcontrolKey contained "^\%(Package\%(-Type\)\=\|Architecture\|Build-Profiles\): *"
-syn match debcontrolKey contained "^\%(\%(Build-\)\=Essential\|Multi-Arch\|Tag\): *"
-syn match debcontrolKey contained "^\%(\%(Pre-\)\=Depends\|Recommends\|Suggests\|Breaks\|Enhances\|Replaces\|Conflicts\|Provides\|Built-Using\): *"
-syn match debcontrolKey contained "^\%(Subarchitecture\|Kernel-Version\|Installer-Menu-Item\): *"
-
-" User-defined fields
-syn match debcontrolKey contained "^X[SBC]\{0,3\}\%(-Private\)\=-[-a-zA-Z0-9]\+: *"
-
-syn match debcontrolDeprecatedKey contained "^\%(\%(XS-\)\=DM-Upload-Allowed\): *"
+" Handle all fields from deb-src-control(5)
" Fields for which we do strict syntax checking
-syn region debcontrolStrictField start="^Architecture" end="$" contains=debcontrolKey,debcontrolArchitecture,debcontrolSpace oneline
-syn region debcontrolStrictField start="^Multi-Arch" end="$" contains=debcontrolKey,debcontrolMultiArch oneline
-syn region debcontrolStrictField start="^\%(Package\|Source\)" end="$" contains=debcontrolKey,debcontrolName oneline
-syn region debcontrolStrictField start="^Priority" end="$" contains=debcontrolKey,debcontrolPriority oneline
-syn region debcontrolStrictField start="^Section" end="$" contains=debcontrolKey,debcontrolSection oneline
-syn region debcontrolStrictField start="^\%(XC-\)\=Package-Type" end="$" contains=debcontrolKey,debcontrolPackageType oneline
-syn region debcontrolStrictField start="^Homepage" end="$" contains=debcontrolKey,debcontrolHTTPUrl oneline keepend
-syn region debcontrolStrictField start="^\%(XS-\)\=Vcs-\%(Browser\|Arch\|Bzr\|Darcs\|Hg\)" end="$" contains=debcontrolKey,debcontrolHTTPUrl oneline keepend
-syn region debcontrolStrictField start="^\%(XS-\)\=Vcs-Svn" end="$" contains=debcontrolKey,debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend
-syn region debcontrolStrictField start="^\%(XS-\)\=Vcs-Cvs" end="$" contains=debcontrolKey,debcontrolVcsCvs oneline keepend
-syn region debcontrolStrictField start="^\%(XS-\)\=Vcs-Git" end="$" contains=debcontrolKey,debcontrolVcsGit oneline keepend
-syn region debcontrolStrictField start="^\%(XS-\)\=DM-Upload-Allowed" end="$" contains=debcontrolDeprecatedKey,debcontrolDmUpload oneline
-syn region debcontrolStrictField start="^Rules-Requires-Root" end="$" contains=debcontrolKey,debcontrolR3 oneline
-syn region debcontrolStrictField start="^\%(Build-\)\=Essential" end="$" contains=debcontrolKey,debcontrolYesNo oneline
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^Architecture: *" end="$" contains=debcontrolArchitecture,debcontrolSpace oneline
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^Multi-Arch: *" end="$" contains=debcontrolMultiArch oneline
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(Package\|Source\): *" end="$" contains=debcontrolName oneline
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^Priority: *" end="$" contains=debcontrolPriority oneline
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^Section: *" end="$" contains=debcontrolSection oneline
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XC-\)\=Package-Type: *" end="$" contains=debcontrolPackageType oneline
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^Homepage: *" end="$" contains=debcontrolHTTPUrl oneline keepend
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-\%(Browser\|Arch\|Bzr\|Darcs\|Hg\): *" end="$" contains=debcontrolHTTPUrl oneline keepend
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Svn: *" end="$" contains=debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Cvs: *" end="$" contains=debcontrolVcsCvs oneline keepend
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Git: *" end="$" contains=debcontrolVcsGit oneline keepend
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^Rules-Requires-Root: *" end="$" contains=debcontrolR3 oneline
+syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(Build-\)\=Essential: *" end="$" contains=debcontrolYesNo oneline
+
+syn region debcontrolStrictField matchgroup=debcontrolDeprecatedKey start="^\%(XS-\)\=DM-Upload-Allowed: *" end="$" contains=debcontrolDmUpload oneline
" Catch-all for the other legal fields
-syn region debcontrolField start="^\%(\%(XSBC-Original-\)\=Maintainer\|Standards-Version\|Bugs\|Origin\|X[SB]-Python-Version\|\%(XS-\)\=Vcs-Mtn\|\%(XS-\)\=Testsuite\|Build-Profiles\|Tag\|Subarchitecture\|Kernel-Version\|Installer-Menu-Item\):" end="$" contains=debcontrolKey,debcontrolVariable,debcontrolEmail oneline
-syn region debcontrolMultiField start="^\%(Build-\%(Conflicts\|Depends\)\%(-Arch\|-Indep\)\=\|\%(Pre-\)\=Depends\|Recommends\|Suggests\|Breaks\|Enhances\|Replaces\|Conflicts\|Provides\|Built-Using\|Uploaders\|X[SBC]\{0,3\}\%(Private-\)\=-[-a-zA-Z0-9]\+\):" skip="^[ \t]" end="^$"me=s-1 end="^[^ \t#]"me=s-1 contains=debcontrolKey,debcontrolEmail,debcontrolVariable,debcontrolComment
-syn region debcontrolMultiFieldSpell start="^\%(Description\):" skip="^[ \t]" end="^$"me=s-1 end="^[^ \t#]"me=s-1 contains=debcontrolKey,debcontrolEmail,debcontrolVariable,debcontrolComment,@Spell
+syn region debcontrolField matchgroup=debcontrolKey start="^\%(\%(XSBC-Original-\)\=Maintainer\|Standards-Version\|Bugs\|Origin\|X[SB]-Python-Version\|\%(XS-\)\=Vcs-Mtn\|\%(XS-\)\=Testsuite\%(-Triggers\)\=\|Build-Profiles\|Tag\|Subarchitecture\|Kernel-Version\|Installer-Menu-Item\): " end="$" contains=debcontrolVariable,debcontrolEmail oneline
+syn region debcontrolMultiField matchgroup=debcontrolKey start="^\%(Build-\%(Conflicts\|Depends\)\%(-Arch\|-Indep\)\=\|\%(Pre-\)\=Depends\|Recommends\|Suggests\|Breaks\|Enhances\|Replaces\|Conflicts\|Provides\|Built-Using\|Uploaders\|X[SBC]\{0,3\}\%(Private-\)\=-[-a-zA-Z0-9]\+\): *" skip="^[ \t]" end="^$"me=s-1 end="^[^ \t#]"me=s-1 contains=debcontrolEmail,debcontrolVariable,debcontrolComment
+syn region debcontrolMultiFieldSpell matchgroup=debcontrolKey start="^Description: *" skip="^[ \t]" end="^$"me=s-1 end="^[^ \t#]"me=s-1 contains=debcontrolEmail,debcontrolVariable,debcontrolComment,@Spell
" Associate our matches and regions with pretty colours
hi def link debcontrolKey Keyword
" Vim syntax file
" Language: Debian sources.list
-" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
+" Maintainer: Debian Vim Maintainers
" Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
-" Last Change: 2017 Oct 28
-" URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debsources.vim
+" Last Change: 2018 Jan 06
+" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim
" Standard syntax initialization
if exists("b:current_syntax")
" Vim syntax file
-" Language: Scheme (R5RS + some R6RS extras)
-" Last Change: 2016 May 23
-" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
-" Original author: Dirk van Deun <dirk@igwe.vub.ac.be>
-
-" This script incorrectly recognizes some junk input as numerals:
-" parsing the complete system of Scheme numerals using the pattern
-" language is practically impossible: I did a lax approximation.
-
-" MzScheme extensions can be activated with setting is_mzscheme variable
-
-" Suggestions and bug reports are solicited by the author.
-
-" Initializing:
-
-" quit when a syntax file was already loaded
-if exists("b:current_syntax")
+" Language: Scheme (R7RS)
+" Last Change: 2018-01-06
+" Author: Evan Hanson <evhan@foldling.org>
+" Maintainer: Evan Hanson <evhan@foldling.org>
+" Previous Author: Dirk van Deun <dirk@igwe.vub.ac.be>
+" Previous Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
+" URL: https://foldling.org/vim/syntax/scheme.vim
+
+if exists('b:current_syntax')
finish
endif
-let s:cpo_save = &cpo
+let s:cpo = &cpo
set cpo&vim
-syn case ignore
-
-" Fascist highlighting: everything that doesn't fit the rules is an error...
-
-syn match schemeError ![^ \t()\[\]";]*!
-syn match schemeError ")"
-
-" Quoted and backquoted stuff
-
-syn region schemeQuoted matchgroup=Delimiter start="['`]" end=![ \t()\[\]";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-
-syn region schemeQuoted matchgroup=Delimiter start="['`](" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-syn region schemeQuoted matchgroup=Delimiter start="['`]#(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-
-syn region schemeStrucRestricted matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-syn region schemeStrucRestricted matchgroup=Delimiter start="#(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-
-" Popular Scheme extension:
-" using [] as well as ()
-syn region schemeStrucRestricted matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-syn region schemeStrucRestricted matchgroup=Delimiter start="#\[" matchgroup=Delimiter end="\]" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-
-syn region schemeUnquote matchgroup=Delimiter start="," end=![ \t\[\]()";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-syn region schemeUnquote matchgroup=Delimiter start=",@" end=![ \t\[\]()";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-
-syn region schemeUnquote matchgroup=Delimiter start=",(" end=")" contains=ALL
-syn region schemeUnquote matchgroup=Delimiter start=",@(" end=")" contains=ALL
-
-syn region schemeUnquote matchgroup=Delimiter start=",#(" end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-syn region schemeUnquote matchgroup=Delimiter start=",@#(" end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-
-syn region schemeUnquote matchgroup=Delimiter start=",\[" end="\]" contains=ALL
-syn region schemeUnquote matchgroup=Delimiter start=",@\[" end="\]" contains=ALL
-
-syn region schemeUnquote matchgroup=Delimiter start=",#\[" end="\]" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-syn region schemeUnquote matchgroup=Delimiter start=",@#\[" end="\]" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
-
-" R5RS Scheme Functions and Syntax:
-
-setlocal iskeyword=33,35-39,42-58,60-90,94,95,97-122,126,_
-
-syn keyword schemeSyntax lambda and or if cond case define let let* letrec
-syn keyword schemeSyntax begin do delay set! else =>
-syn keyword schemeSyntax quote quasiquote unquote unquote-splicing
-syn keyword schemeSyntax define-syntax let-syntax letrec-syntax syntax-rules
-" R6RS
-syn keyword schemeSyntax define-record-type fields protocol
-
-syn keyword schemeFunc not boolean? eq? eqv? equal? pair? cons car cdr set-car!
-syn keyword schemeFunc set-cdr! caar cadr cdar cddr caaar caadr cadar caddr
-syn keyword schemeFunc cdaar cdadr cddar cdddr caaaar caaadr caadar caaddr
-syn keyword schemeFunc cadaar cadadr caddar cadddr cdaaar cdaadr cdadar cdaddr
-syn keyword schemeFunc cddaar cddadr cdddar cddddr null? list? list length
-syn keyword schemeFunc append reverse list-ref memq memv member assq assv assoc
-syn keyword schemeFunc symbol? symbol->string string->symbol number? complex?
-syn keyword schemeFunc real? rational? integer? exact? inexact? = < > <= >=
-syn keyword schemeFunc zero? positive? negative? odd? even? max min + * - / abs
-syn keyword schemeFunc quotient remainder modulo gcd lcm numerator denominator
-syn keyword schemeFunc floor ceiling truncate round rationalize exp log sin cos
-syn keyword schemeFunc tan asin acos atan sqrt expt make-rectangular make-polar
-syn keyword schemeFunc real-part imag-part magnitude angle exact->inexact
-syn keyword schemeFunc inexact->exact number->string string->number char=?
-syn keyword schemeFunc char-ci=? char<? char-ci<? char>? char-ci>? char<=?
-syn keyword schemeFunc char-ci<=? char>=? char-ci>=? char-alphabetic? char?
-syn keyword schemeFunc char-numeric? char-whitespace? char-upper-case?
-syn keyword schemeFunc char-lower-case?
-syn keyword schemeFunc char->integer integer->char char-upcase char-downcase
-syn keyword schemeFunc string? make-string string string-length string-ref
-syn keyword schemeFunc string-set! string=? string-ci=? string<? string-ci<?
-syn keyword schemeFunc string>? string-ci>? string<=? string-ci<=? string>=?
-syn keyword schemeFunc string-ci>=? substring string-append vector? make-vector
-syn keyword schemeFunc vector vector-length vector-ref vector-set! procedure?
-syn keyword schemeFunc apply map for-each call-with-current-continuation
-syn keyword schemeFunc call-with-input-file call-with-output-file input-port?
-syn keyword schemeFunc output-port? current-input-port current-output-port
-syn keyword schemeFunc open-input-file open-output-file close-input-port
-syn keyword schemeFunc close-output-port eof-object? read read-char peek-char
-syn keyword schemeFunc write display newline write-char call/cc
-syn keyword schemeFunc list-tail string->list list->string string-copy
-syn keyword schemeFunc string-fill! vector->list list->vector vector-fill!
-syn keyword schemeFunc force with-input-from-file with-output-to-file
-syn keyword schemeFunc char-ready? load transcript-on transcript-off eval
-syn keyword schemeFunc dynamic-wind port? values call-with-values
-syn keyword schemeFunc scheme-report-environment null-environment
-syn keyword schemeFunc interaction-environment
-" R6RS
-syn keyword schemeFunc make-eq-hashtable make-eqv-hashtable make-hashtable
-syn keyword schemeFunc hashtable? hashtable-size hashtable-ref hashtable-set!
-syn keyword schemeFunc hashtable-delete! hashtable-contains? hashtable-update!
-syn keyword schemeFunc hashtable-copy hashtable-clear! hashtable-keys
-syn keyword schemeFunc hashtable-entries hashtable-equivalence-function hashtable-hash-function
-syn keyword schemeFunc hashtable-mutable? equal-hash string-hash string-ci-hash symbol-hash
-syn keyword schemeFunc find for-all exists filter partition fold-left fold-right
-syn keyword schemeFunc remp remove remv remq memp assp cons*
-
-" ... so that a single + or -, inside a quoted context, would not be
-" interpreted as a number (outside such contexts, it's a schemeFunc)
-
-syn match schemeDelimiter !\.[ \t\[\]()";]!me=e-1
-syn match schemeDelimiter !\.$!
-" ... and a single dot is not a number but a delimiter
-
-" This keeps all other stuff unhighlighted, except *stuff* and <stuff>:
-
-syn match schemeOther ,[a-z!$%&*/:<=>?^_~+@#%-][-a-z!$%&*/:<=>?^_~0-9+.@#%]*,
-syn match schemeError ,[a-z!$%&*/:<=>?^_~+@#%-][-a-z!$%&*/:<=>?^_~0-9+.@#%]*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t\[\]()";]\+[^ \t\[\]()";]*,
-
-syn match schemeOther "\.\.\."
-syn match schemeError !\.\.\.[^ \t\[\]()";]\+!
-" ... a special identifier
-
-syn match schemeConstant ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]\+\*[ \t\[\]()";],me=e-1
-syn match schemeConstant ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]\+\*$,
-syn match schemeError ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t\[\]()";]\+[^ \t\[\]()";]*,
+syn match schemeParentheses "[^ '`\t\n()\[\]";]\+"
+syn match schemeParentheses "[)\]]"
-syn match schemeConstant ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[ \t\[\]()";],me=e-1
-syn match schemeConstant ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>$,
-syn match schemeError ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[^-a-z!$%&*/:<=>?^_~0-9+.@ \t\[\]()";]\+[^ \t\[\]()";]*,
+syn match schemeIdentifier /[^ '`\t\n()\[\]"|;][^ '`\t\n()\[\]"|;]*/
-" Non-quoted lists, and strings:
+syn region schemeQuote matchgroup=schemeData start=/'[`']*/ end=/[ \t\n()\[\]";]/me=e-1
+syn region schemeQuote matchgroup=schemeData start=/'['`]*"/ skip=/\\[\\"]/ end=/"/
+syn region schemeQuote matchgroup=schemeData start=/'['`]*|/ skip=/\\[\\|]/ end=/|/
+syn region schemeQuote matchgroup=schemeData start=/'['`]*#\?(/ end=/)/ contains=ALLBUT,schemeQuasiquote,schemeQuasiquoteForm,schemeUnquote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster
-syn region schemeStruc matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALL
-syn region schemeStruc matchgroup=Delimiter start="#(" matchgroup=Delimiter end=")" contains=ALL
+syn region schemeQuasiquote matchgroup=schemeData start=/`['`]*/ end=/[ \t\n()\[\]";]/me=e-1
+syn region schemeQuasiquote matchgroup=schemeData start=/`['`]*#\?(/ end=/)/ contains=ALLBUT,schemeQuote,schemeQuoteForm,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster
-syn region schemeStruc matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=ALL
-syn region schemeStruc matchgroup=Delimiter start="#\[" matchgroup=Delimiter end="\]" contains=ALL
+syn region schemeUnquote matchgroup=schemeParentheses start=/,/ end=/[ `'\t\n\[\]()";]/me=e-1 contained contains=ALLBUT,schemeDatumCommentForm,@schemeImportCluster
+syn region schemeUnquote matchgroup=schemeParentheses start=/,@/ end=/[ `'\t\n\[\]()";]/me=e-1 contained contains=ALLBUT,schemeDatumCommentForm,@schemeImportCluster
+syn region schemeUnquote matchgroup=schemeParentheses start=/,(/ end=/)/ contained contains=ALLBUT,schemeDatumCommentForm,@schemeImportCluster
+syn region schemeUnquote matchgroup=schemeParentheses start=/,@(/ end=/)/ contained contains=ALLBUT,schemeDatumCommentForm,@schemeImportCluster
-" Simple literals:
-syn region schemeString start=+\%(\\\)\@<!"+ skip=+\\[\\"]+ end=+"+ contains=@Spell
+syn region schemeQuoteForm matchgroup=schemeData start=/(/ end=/)/ contained contains=ALLBUT,schemeQuasiquote,schemeQuasiquoteForm,schemeUnquote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster
+syn region schemeQuasiquoteForm matchgroup=schemeData start=/(/ end=/)/ contained contains=ALLBUT,schemeQuote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster
-" Comments:
+syn region schemeString start=/\(\\\)\@<!"/ skip=/\\[\\"]/ end=/"/
+syn region schemeSymbol start=/\(\\\)\@<!|/ skip=/\\[\\|]/ end=/|/
-syn match schemeComment ";.*$" contains=@Spell
+syn match schemeNumber /\(#[dbeio]\)*[+\-]*\([0-9]\+\|inf.0\|nan.0\)\(\/\|\.\)\?[0-9+\-@\ilns]*\>/
+syn match schemeNumber /#x[+\-]*[0-9a-fA-F]\+\>/
+syn match schemeBoolean /#t\(rue\)\?/
+syn match schemeBoolean /#f\(alse\)\?/
-" Writing out the complete description of Scheme numerals without
-" using variables is a day's work for a trained secretary...
+syn match schemeCharacter /#\\.[^ `'\t\n\[\]()]*/
+syn match schemeCharacter /#\\x[0-9a-fA-F]\+/
-syn match schemeOther ![+-][ \t\[\]()";]!me=e-1
-syn match schemeOther ![+-]$!
-"
-" This is a useful lax approximation:
-syn match schemeNumber "[-#+.]\=[0-9][-#+/0-9a-f@i.boxesfdl]*"
-syn match schemeError ![-#+0-9.][-#+/0-9a-f@i.boxesfdl]*[^-#+/0-9a-f@i.boxesfdl \t\[\]()";][^ \t\[\]()";]*!
+syn match schemeComment /;.*$/
-syn match schemeBoolean "#[tf]"
-syn match schemeError !#[tf][^ \t\[\]()";]\+!
+syn region schemeMultilineComment start=/#|/ end=/|#/ contains=schemeMultilineComment
-syn match schemeCharacter "#\\"
-syn match schemeCharacter "#\\."
-syn match schemeError !#\\.[^ \t\[\]()";]\+!
-syn match schemeCharacter "#\\space"
-syn match schemeError !#\\space[^ \t\[\]()";]\+!
-syn match schemeCharacter "#\\newline"
-syn match schemeError !#\\newline[^ \t\[\]()";]\+!
+syn region schemeForm matchgroup=schemeParentheses start="(" end=")" contains=ALLBUT,schemeUnquote,schemeDatumCommentForm,@schemeImportCluster
+syn region schemeForm matchgroup=schemeParentheses start="\[" end="\]" contains=ALLBUT,schemeUnquote,schemeDatumCommentForm,@schemeImportCluster
-" R6RS
-syn match schemeCharacter "#\\x[0-9a-fA-F]\+"
+syn region schemeVector matchgroup=schemeData start="#(" end=")" contains=ALLBUT,schemeQuasiquote,schemeQuasiquoteForm,schemeUnquote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster
+syn region schemeVector matchgroup=schemeData start="#[fsu]\d\+(" end=")" contains=schemeNumber,schemeComment,schemeDatumComment
-
-if exists("b:is_mzscheme") || exists("is_mzscheme")
- " MzScheme extensions
- " multiline comment
- syn region schemeComment start="#|" end="|#" contains=@Spell
-
- " #%xxx are the special MzScheme identifiers
- syn match schemeOther "#%[-a-z!$%&*/:<=>?^_~0-9+.@#%]\+"
- " anything limited by |'s is identifier
- syn match schemeOther "|[^|]\+|"
-
- syn match schemeCharacter "#\\\%(return\|tab\)"
-
- " Modules require stmt
- syn keyword schemeExtSyntax module require dynamic-require lib prefix all-except prefix-all-except rename
- " modules provide stmt
- syn keyword schemeExtSyntax provide struct all-from all-from-except all-defined all-defined-except
- " Other from MzScheme
- syn keyword schemeExtSyntax with-handlers when unless instantiate define-struct case-lambda syntax-case
- syn keyword schemeExtSyntax free-identifier=? bound-identifier=? module-identifier=? syntax-object->datum
- syn keyword schemeExtSyntax datum->syntax-object
- syn keyword schemeExtSyntax let-values let*-values letrec-values set!-values fluid-let parameterize begin0
- syn keyword schemeExtSyntax error raise opt-lambda define-values unit unit/sig define-signature
- syn keyword schemeExtSyntax invoke-unit/sig define-values/invoke-unit/sig compound-unit/sig import export
- syn keyword schemeExtSyntax link syntax quasisyntax unsyntax with-syntax
-
- syn keyword schemeExtFunc format system-type current-extension-compiler current-extension-linker
- syn keyword schemeExtFunc use-standard-linker use-standard-compiler
- syn keyword schemeExtFunc find-executable-path append-object-suffix append-extension-suffix
- syn keyword schemeExtFunc current-library-collection-paths current-extension-compiler-flags make-parameter
- syn keyword schemeExtFunc current-directory build-path normalize-path current-extension-linker-flags
- syn keyword schemeExtFunc file-exists? directory-exists? delete-directory/files delete-directory delete-file
- syn keyword schemeExtFunc system compile-file system-library-subpath getenv putenv current-standard-link-libraries
- syn keyword schemeExtFunc remove* file-size find-files fold-files directory-list shell-execute split-path
- syn keyword schemeExtFunc current-error-port process/ports process printf fprintf open-input-string open-output-string
- syn keyword schemeExtFunc get-output-string
- " exceptions
- syn keyword schemeExtFunc exn exn:application:arity exn:application:continuation exn:application:fprintf:mismatch
- syn keyword schemeExtFunc exn:application:mismatch exn:application:type exn:application:mismatch exn:break exn:i/o:filesystem exn:i/o:port
- syn keyword schemeExtFunc exn:i/o:port:closed exn:i/o:tcp exn:i/o:udp exn:misc exn:misc:application exn:misc:unsupported exn:module exn:read
- syn keyword schemeExtFunc exn:read:non-char exn:special-comment exn:syntax exn:thread exn:user exn:variable exn:application:mismatch
- syn keyword schemeExtFunc exn? exn:application:arity? exn:application:continuation? exn:application:fprintf:mismatch? exn:application:mismatch?
- syn keyword schemeExtFunc exn:application:type? exn:application:mismatch? exn:break? exn:i/o:filesystem? exn:i/o:port? exn:i/o:port:closed?
- syn keyword schemeExtFunc exn:i/o:tcp? exn:i/o:udp? exn:misc? exn:misc:application? exn:misc:unsupported? exn:module? exn:read? exn:read:non-char?
- syn keyword schemeExtFunc exn:special-comment? exn:syntax? exn:thread? exn:user? exn:variable? exn:application:mismatch?
- " Command-line parsing
- syn keyword schemeExtFunc command-line current-command-line-arguments once-any help-labels multi once-each
-
- " syntax quoting, unquoting and quasiquotation
- syn region schemeUnquote matchgroup=Delimiter start="#," end=![ \t\[\]()";]!me=e-1 contains=ALL
- syn region schemeUnquote matchgroup=Delimiter start="#,@" end=![ \t\[\]()";]!me=e-1 contains=ALL
- syn region schemeUnquote matchgroup=Delimiter start="#,(" end=")" contains=ALL
- syn region schemeUnquote matchgroup=Delimiter start="#,@(" end=")" contains=ALL
- syn region schemeUnquote matchgroup=Delimiter start="#,\[" end="\]" contains=ALL
- syn region schemeUnquote matchgroup=Delimiter start="#,@\[" end="\]" contains=ALL
- syn region schemeQuoted matchgroup=Delimiter start="#['`]" end=![ \t()\[\]";]!me=e-1 contains=ALL
- syn region schemeQuoted matchgroup=Delimiter start="#['`](" matchgroup=Delimiter end=")" contains=ALL
-
- " Identifiers are very liberal in MzScheme/Racket
- syn match schemeOther ![^()[\]{}",'`;#|\\ ]\+!
-
- " Language setting
- syn match schemeLang "#lang [-+_/A-Za-z0-9]\+\>"
-
- " Various number forms
- syn match schemeNumber "[-+]\=[0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\>"
- syn match schemeNumber "[-+]\=\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\>"
- syn match schemeNumber "[-+]\=[0-9]\+/[0-9]\+\>"
- syn match schemeNumber "\([-+]\=\([0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\|\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\|[0-9]\+/[0-9]\+\)\)\=[-+]\([0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\|\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\|[0-9]\+/[0-9]\+\)\=i\>"
+if exists('g:is_chicken') || exists('b:is_chicken')
+ syn region schemeImport matchgroup=schemeImport start="\(([ \t\n]*\)\@<=\(import\|import-syntax\|use\|require-extension\)\(-for-syntax\)\?\>" end=")"me=e-1 contained contains=schemeImportForm,schemeIdentifier,schemeComment,schemeDatumComment
+else
+ syn region schemeImport matchgroup=schemeImport start="\(([ \t\n]*\)\@<=\(import\)\>" end=")"me=e-1 contained contains=schemeImportForm,schemeIdentifier,schemeComment,schemeDatumComment
endif
-
-if exists("b:is_chicken") || exists("is_chicken")
- " multiline comment
- syntax region schemeMultilineComment start=/#|/ end=/|#/ contains=@Spell,schemeMultilineComment
-
- syn match schemeOther "##[-a-z!$%&*/:<=>?^_~0-9+.@#%]\+"
- syn match schemeExtSyntax "#:[-a-z!$%&*/:<=>?^_~0-9+.@#%]\+"
-
- syn keyword schemeExtSyntax unit uses declare hide foreign-declare foreign-parse foreign-parse/spec
- syn keyword schemeExtSyntax foreign-lambda foreign-lambda* define-external define-macro load-library
- syn keyword schemeExtSyntax let-values let*-values letrec-values ->string require-extension
- syn keyword schemeExtSyntax let-optionals let-optionals* define-foreign-variable define-record
- syn keyword schemeExtSyntax pointer tag-pointer tagged-pointer? define-foreign-type
- syn keyword schemeExtSyntax require require-for-syntax cond-expand and-let* receive argc+argv
- syn keyword schemeExtSyntax fixnum? fx= fx> fx< fx>= fx<= fxmin fxmax
- syn keyword schemeExtFunc ##core#inline ##sys#error ##sys#update-errno
-
- " here-string
- syn region schemeString start=+#<<\s*\z(.*\)+ end=+^\z1$+ contains=@Spell
-
- if filereadable(expand("<sfile>:p:h")."/cpp.vim")
- unlet! b:current_syntax
- syn include @ChickenC <sfile>:p:h/cpp.vim
- syn region ChickenC matchgroup=schemeOther start=+(\@<=foreign-declare "+ end=+")\@=+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeComment start=+foreign-declare\s*#<<\z(.*\)$+hs=s+15 end=+^\z1$+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeOther start=+(\@<=foreign-parse "+ end=+")\@=+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeComment start=+foreign-parse\s*#<<\z(.*\)$+hs=s+13 end=+^\z1$+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeOther start=+(\@<=foreign-parse/spec "+ end=+")\@=+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeComment start=+foreign-parse/spec\s*#<<\z(.*\)$+hs=s+18 end=+^\z1$+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeComment start=+#>+ end=+<#+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeComment start=+#>?+ end=+<#+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeComment start=+#>!+ end=+<#+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeComment start=+#>\$+ end=+<#+ contains=@ChickenC
- syn region ChickenC matchgroup=schemeComment start=+#>%+ end=+<#+ contains=@ChickenC
- endif
-
- " suggested by Alex Queiroz
- syn match schemeExtSyntax "#![-a-z!$%&*/:<=>?^_~0-9+.@#%]\+"
- syn region schemeString start=+#<#\s*\z(.*\)+ end=+^\z1$+ contains=@Spell
+syn match schemeImportKeyword "\(([ \t\n]*\)\@<=\(except\|only\|prefix\|rename\|srfi\)\>"
+syn region schemeImportForm matchgroup=schemeParentheses start="(" end=")" contained contains=schemeIdentifier,schemeComment,schemeDatumComment,@schemeImportCluster
+syn cluster schemeImportCluster contains=schemeImportForm,schemeImportKeyword
+
+syn region schemeDatumComment matchgroup=schemeDatumComment start=/#;[ \t\n`']*/ end=/[ \t\n()\[\]";]/me=e-1
+syn region schemeDatumComment matchgroup=schemeDatumComment start=/#;[ \t\n`']*"/ skip=/\\[\\"]/ end=/"/
+syn region schemeDatumComment matchgroup=schemeDatumComment start=/#;[ \t\n`']*|/ skip=/\\[\\|]/ end=/|/
+syn region schemeDatumComment matchgroup=schemeDatumComment start=/#;[ \t\n`']*\(#\([usf]\d\+\)\?\)\?(/ end=/)/ contains=schemeDatumCommentForm
+syn region schemeDatumCommentForm start="(" end=")" contained contains=schemeDatumCommentForm
+
+syn cluster schemeSyntaxCluster contains=schemeFunction,schemeKeyword,schemeSyntax,schemeExtraSyntax,schemeLibrarySyntax,schemeSyntaxSyntax
+
+syn keyword schemeLibrarySyntax define-library
+syn keyword schemeLibrarySyntax export
+syn keyword schemeLibrarySyntax include
+syn keyword schemeLibrarySyntax include-ci
+syn keyword schemeLibrarySyntax include-library-declarations
+syn keyword schemeLibrarySyntax library
+syn keyword schemeLibrarySyntax cond-expand
+
+syn keyword schemeSyntaxSyntax define-syntax
+syn keyword schemeSyntaxSyntax let-syntax
+syn keyword schemeSyntaxSyntax letrec-syntax
+syn keyword schemeSyntaxSyntax syntax-rules
+
+syn keyword schemeSyntax =>
+syn keyword schemeSyntax and
+syn keyword schemeSyntax begin
+syn keyword schemeSyntax case
+syn keyword schemeSyntax case-lambda
+syn keyword schemeSyntax cond
+syn keyword schemeSyntax define
+syn keyword schemeSyntax define-record-type
+syn keyword schemeSyntax define-values
+syn keyword schemeSyntax delay
+syn keyword schemeSyntax delay-force
+syn keyword schemeSyntax do
+syn keyword schemeSyntax else
+syn keyword schemeSyntax guard
+syn keyword schemeSyntax if
+syn keyword schemeSyntax lambda
+syn keyword schemeSyntax let
+syn keyword schemeSyntax let*
+syn keyword schemeSyntax let*-values
+syn keyword schemeSyntax let-values
+syn keyword schemeSyntax letrec
+syn keyword schemeSyntax letrec*
+syn keyword schemeSyntax or
+syn keyword schemeSyntax parameterize
+syn keyword schemeSyntax quasiquote
+syn keyword schemeSyntax quote
+syn keyword schemeSyntax set!
+syn keyword schemeSyntax unless
+syn keyword schemeSyntax unquote
+syn keyword schemeSyntax unquote-splicing
+syn keyword schemeSyntax when
+
+syn keyword schemeFunction *
+syn keyword schemeFunction +
+syn keyword schemeFunction -
+syn keyword schemeFunction /
+syn keyword schemeFunction <
+syn keyword schemeFunction <=
+syn keyword schemeFunction =
+syn keyword schemeFunction >
+syn keyword schemeFunction >=
+syn keyword schemeFunction abs
+syn keyword schemeFunction acos
+syn keyword schemeFunction acos
+syn keyword schemeFunction angle
+syn keyword schemeFunction append
+syn keyword schemeFunction apply
+syn keyword schemeFunction asin
+syn keyword schemeFunction assoc
+syn keyword schemeFunction assq
+syn keyword schemeFunction assv
+syn keyword schemeFunction atan
+syn keyword schemeFunction binary-port?
+syn keyword schemeFunction boolean=?
+syn keyword schemeFunction boolean?
+syn keyword schemeFunction bytevector
+syn keyword schemeFunction bytevector-append
+syn keyword schemeFunction bytevector-append
+syn keyword schemeFunction bytevector-copy
+syn keyword schemeFunction bytevector-copy!
+syn keyword schemeFunction bytevector-length
+syn keyword schemeFunction bytevector-u8-ref
+syn keyword schemeFunction bytevector-u8-set!
+syn keyword schemeFunction bytevector?
+syn keyword schemeFunction caaaar
+syn keyword schemeFunction caaadr
+syn keyword schemeFunction caaar
+syn keyword schemeFunction caadar
+syn keyword schemeFunction caaddr
+syn keyword schemeFunction caadr
+syn keyword schemeFunction caar
+syn keyword schemeFunction cadaar
+syn keyword schemeFunction cadadr
+syn keyword schemeFunction cadar
+syn keyword schemeFunction caddar
+syn keyword schemeFunction cadddr
+syn keyword schemeFunction caddr
+syn keyword schemeFunction cadr
+syn keyword schemeFunction call-with-current-continuation
+syn keyword schemeFunction call-with-input-file
+syn keyword schemeFunction call-with-output-file
+syn keyword schemeFunction call-with-port
+syn keyword schemeFunction call-with-values
+syn keyword schemeFunction call/cc
+syn keyword schemeFunction car
+syn keyword schemeFunction cdaaar
+syn keyword schemeFunction cdaadr
+syn keyword schemeFunction cdaar
+syn keyword schemeFunction cdadar
+syn keyword schemeFunction cdaddr
+syn keyword schemeFunction cdadr
+syn keyword schemeFunction cdar
+syn keyword schemeFunction cddaar
+syn keyword schemeFunction cddadr
+syn keyword schemeFunction cddar
+syn keyword schemeFunction cdddar
+syn keyword schemeFunction cddddr
+syn keyword schemeFunction cdddr
+syn keyword schemeFunction cddr
+syn keyword schemeFunction cdr
+syn keyword schemeFunction ceiling
+syn keyword schemeFunction char->integer
+syn keyword schemeFunction char-alphabetic?
+syn keyword schemeFunction char-ci<=?
+syn keyword schemeFunction char-ci<?
+syn keyword schemeFunction char-ci=?
+syn keyword schemeFunction char-ci>=?
+syn keyword schemeFunction char-ci>?
+syn keyword schemeFunction char-downcase
+syn keyword schemeFunction char-foldcase
+syn keyword schemeFunction char-lower-case?
+syn keyword schemeFunction char-numeric?
+syn keyword schemeFunction char-ready?
+syn keyword schemeFunction char-upcase
+syn keyword schemeFunction char-upper-case?
+syn keyword schemeFunction char-whitespace?
+syn keyword schemeFunction char<=?
+syn keyword schemeFunction char<?
+syn keyword schemeFunction char=?
+syn keyword schemeFunction char>=?
+syn keyword schemeFunction char>?
+syn keyword schemeFunction char?
+syn keyword schemeFunction close-input-port
+syn keyword schemeFunction close-output-port
+syn keyword schemeFunction close-port
+syn keyword schemeFunction command-line
+syn keyword schemeFunction complex?
+syn keyword schemeFunction cons
+syn keyword schemeFunction cos
+syn keyword schemeFunction current-error-port
+syn keyword schemeFunction current-input-port
+syn keyword schemeFunction current-jiffy
+syn keyword schemeFunction current-output-port
+syn keyword schemeFunction current-second
+syn keyword schemeFunction delete-file
+syn keyword schemeFunction denominator
+syn keyword schemeFunction digit-value
+syn keyword schemeFunction display
+syn keyword schemeFunction dynamic-wind
+syn keyword schemeFunction emergency-exit
+syn keyword schemeFunction environment
+syn keyword schemeFunction eof-object
+syn keyword schemeFunction eof-object?
+syn keyword schemeFunction eq?
+syn keyword schemeFunction equal?
+syn keyword schemeFunction eqv?
+syn keyword schemeFunction error
+syn keyword schemeFunction error-object-irritants
+syn keyword schemeFunction error-object-message
+syn keyword schemeFunction error-object?
+syn keyword schemeFunction eval
+syn keyword schemeFunction even?
+syn keyword schemeFunction exact
+syn keyword schemeFunction exact->inexact
+syn keyword schemeFunction exact-integer-sqrt
+syn keyword schemeFunction exact-integer?
+syn keyword schemeFunction exact?
+syn keyword schemeFunction exit
+syn keyword schemeFunction exp
+syn keyword schemeFunction expt
+syn keyword schemeFunction features
+syn keyword schemeFunction file-error?
+syn keyword schemeFunction file-exists?
+syn keyword schemeFunction finite?
+syn keyword schemeFunction floor
+syn keyword schemeFunction floor-quotient
+syn keyword schemeFunction floor-remainder
+syn keyword schemeFunction floor/
+syn keyword schemeFunction flush-output-port
+syn keyword schemeFunction for-each
+syn keyword schemeFunction force
+syn keyword schemeFunction gcd
+syn keyword schemeFunction get-environment-variable
+syn keyword schemeFunction get-environment-variables
+syn keyword schemeFunction get-output-bytevector
+syn keyword schemeFunction get-output-string
+syn keyword schemeFunction imag-part
+syn keyword schemeFunction inexact
+syn keyword schemeFunction inexact->exact
+syn keyword schemeFunction inexact?
+syn keyword schemeFunction infinite?
+syn keyword schemeFunction input-port-open?
+syn keyword schemeFunction input-port?
+syn keyword schemeFunction integer->char
+syn keyword schemeFunction integer?
+syn keyword schemeFunction interaction-environment
+syn keyword schemeFunction jiffies-per-second
+syn keyword schemeFunction lcm
+syn keyword schemeFunction length
+syn keyword schemeFunction list
+syn keyword schemeFunction list->string
+syn keyword schemeFunction list->vector
+syn keyword schemeFunction list-copy
+syn keyword schemeFunction list-ref
+syn keyword schemeFunction list-set!
+syn keyword schemeFunction list-tail
+syn keyword schemeFunction list?
+syn keyword schemeFunction load
+syn keyword schemeFunction log
+syn keyword schemeFunction magnitude
+syn keyword schemeFunction make-bytevector
+syn keyword schemeFunction make-list
+syn keyword schemeFunction make-parameter
+syn keyword schemeFunction make-polar
+syn keyword schemeFunction make-promise
+syn keyword schemeFunction make-rectangular
+syn keyword schemeFunction make-string
+syn keyword schemeFunction make-vector
+syn keyword schemeFunction map
+syn keyword schemeFunction max
+syn keyword schemeFunction member
+syn keyword schemeFunction memq
+syn keyword schemeFunction memv
+syn keyword schemeFunction min
+syn keyword schemeFunction modulo
+syn keyword schemeFunction nan?
+syn keyword schemeFunction negative?
+syn keyword schemeFunction newline
+syn keyword schemeFunction not
+syn keyword schemeFunction null-environment
+syn keyword schemeFunction null?
+syn keyword schemeFunction number->string
+syn keyword schemeFunction number?
+syn keyword schemeFunction numerator
+syn keyword schemeFunction odd?
+syn keyword schemeFunction open-binary-input-file
+syn keyword schemeFunction open-binary-output-file
+syn keyword schemeFunction open-input-bytevector
+syn keyword schemeFunction open-input-file
+syn keyword schemeFunction open-input-string
+syn keyword schemeFunction open-output-bytevector
+syn keyword schemeFunction open-output-file
+syn keyword schemeFunction open-output-string
+syn keyword schemeFunction output-port-open?
+syn keyword schemeFunction output-port?
+syn keyword schemeFunction pair?
+syn keyword schemeFunction peek-char
+syn keyword schemeFunction peek-u8
+syn keyword schemeFunction port?
+syn keyword schemeFunction positive?
+syn keyword schemeFunction procedure?
+syn keyword schemeFunction promise?
+syn keyword schemeFunction quotient
+syn keyword schemeFunction raise
+syn keyword schemeFunction raise-continuable
+syn keyword schemeFunction rational?
+syn keyword schemeFunction rationalize
+syn keyword schemeFunction read
+syn keyword schemeFunction read-bytevector
+syn keyword schemeFunction read-bytevector!
+syn keyword schemeFunction read-char
+syn keyword schemeFunction read-error?
+syn keyword schemeFunction read-line
+syn keyword schemeFunction read-string
+syn keyword schemeFunction read-u8
+syn keyword schemeFunction real-part
+syn keyword schemeFunction real?
+syn keyword schemeFunction remainder
+syn keyword schemeFunction reverse
+syn keyword schemeFunction round
+syn keyword schemeFunction scheme-report-environment
+syn keyword schemeFunction set-car!
+syn keyword schemeFunction set-cdr!
+syn keyword schemeFunction sin
+syn keyword schemeFunction sqrt
+syn keyword schemeFunction square
+syn keyword schemeFunction string
+syn keyword schemeFunction string->list
+syn keyword schemeFunction string->number
+syn keyword schemeFunction string->symbol
+syn keyword schemeFunction string->utf8
+syn keyword schemeFunction string->vector
+syn keyword schemeFunction string-append
+syn keyword schemeFunction string-ci<=?
+syn keyword schemeFunction string-ci<?
+syn keyword schemeFunction string-ci=?
+syn keyword schemeFunction string-ci>=?
+syn keyword schemeFunction string-ci>?
+syn keyword schemeFunction string-copy
+syn keyword schemeFunction string-copy!
+syn keyword schemeFunction string-downcase
+syn keyword schemeFunction string-fill!
+syn keyword schemeFunction string-foldcase
+syn keyword schemeFunction string-for-each
+syn keyword schemeFunction string-length
+syn keyword schemeFunction string-map
+syn keyword schemeFunction string-ref
+syn keyword schemeFunction string-set!
+syn keyword schemeFunction string-upcase
+syn keyword schemeFunction string<=?
+syn keyword schemeFunction string<?
+syn keyword schemeFunction string=?
+syn keyword schemeFunction string>=?
+syn keyword schemeFunction string>?
+syn keyword schemeFunction string?
+syn keyword schemeFunction substring
+syn keyword schemeFunction symbol->string
+syn keyword schemeFunction symbol=?
+syn keyword schemeFunction symbol?
+syn keyword schemeFunction syntax-error
+syn keyword schemeFunction tan
+syn keyword schemeFunction textual-port?
+syn keyword schemeFunction transcript-off
+syn keyword schemeFunction transcript-on
+syn keyword schemeFunction truncate
+syn keyword schemeFunction truncate-quotient
+syn keyword schemeFunction truncate-remainder
+syn keyword schemeFunction truncate/
+syn keyword schemeFunction u8-ready?
+syn keyword schemeFunction utf8->string
+syn keyword schemeFunction values
+syn keyword schemeFunction vector
+syn keyword schemeFunction vector->list
+syn keyword schemeFunction vector->string
+syn keyword schemeFunction vector-append
+syn keyword schemeFunction vector-copy
+syn keyword schemeFunction vector-copy!
+syn keyword schemeFunction vector-fill!
+syn keyword schemeFunction vector-for-each
+syn keyword schemeFunction vector-length
+syn keyword schemeFunction vector-map
+syn keyword schemeFunction vector-ref
+syn keyword schemeFunction vector-set!
+syn keyword schemeFunction vector?
+syn keyword schemeFunction with-exception-handler
+syn keyword schemeFunction with-input-from-file
+syn keyword schemeFunction with-output-to-file
+syn keyword schemeFunction write
+syn keyword schemeFunction write-bytevector
+syn keyword schemeFunction write-char
+syn keyword schemeFunction write-shared
+syn keyword schemeFunction write-simple
+syn keyword schemeFunction write-string
+syn keyword schemeFunction write-u8
+syn keyword schemeFunction zero?
+
+hi def link schemeBoolean Boolean
+hi def link schemeCharacter Character
+hi def link schemeComment Comment
+hi def link schemeConstant Constant
+hi def link schemeData Delimiter
+hi def link schemeDatumComment Comment
+hi def link schemeDatumCommentForm Comment
+hi def link schemeDelimiter Delimiter
+hi def link schemeError Error
+hi def link schemeExtraSyntax Underlined
+hi def link schemeFunction Function
+hi def link schemeIdentifier Normal
+hi def link schemeImport PreProc
+hi def link schemeImportKeyword PreProc
+hi def link schemeKeyword Type
+hi def link schemeLibrarySyntax PreProc
+hi def link schemeMultilineComment Comment
+hi def link schemeNumber Number
+hi def link schemeParentheses Normal
+hi def link schemeQuasiquote Delimiter
+hi def link schemeQuote Delimiter
+hi def link schemeSpecialSyntax Special
+hi def link schemeString String
+hi def link schemeSymbol Normal
+hi def link schemeSyntax Statement
+hi def link schemeSyntaxSyntax PreProc
+hi def link schemeTypeSyntax Type
+
+let b:did_scheme_syntax = 1
+
+if exists('b:is_chicken') || exists('g:is_chicken')
+ exe 'ru! syntax/chicken.vim'
endif
-" Synchronization and the wrapping up...
-
-syn sync match matchPlace grouphere NONE "^[^ \t]"
-" ... i.e. synchronize on a line that starts at the left margin
-
-" Define the default highlighting.
-" Only when an item doesn't have highlighting yet
-
-hi def link schemeSyntax Statement
-hi def link schemeFunc Function
-
-hi def link schemeString String
-hi def link schemeCharacter Character
-hi def link schemeNumber Number
-hi def link schemeBoolean Boolean
-
-hi def link schemeDelimiter Delimiter
-hi def link schemeConstant Constant
-
-hi def link schemeComment Comment
-hi def link schemeMultilineComment Comment
-hi def link schemeError Error
-
-hi def link schemeExtSyntax Type
-hi def link schemeExtFunc PreProc
-
-hi def link schemeLang PreProc
-
-
-let b:current_syntax = "scheme"
-
-let &cpo = s:cpo_save
-unlet s:cpo_save
+unlet b:did_scheme_syntax
+let b:current_syntax = 'scheme'
+let &cpo = s:cpo
+unlet s:cpo
use. That means that you need to execute the commands to learn them
properly. If you only read the text, you will forget the commands!
- Now, make sure that your Shift-Lock key is NOT depressed and press
+ Now, make sure that your Caps-Lock key is NOT depressed and press
the j key enough times to move the cursor so that Lesson 1.1
completely fills the screen.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To znamená, ¾e je potøeba si pøíkazy vyzkou¹et pro jejich správné
nauèení. Pokud si jen ète¹ text, pøíkazy zapomene¹!
- Nyní se pøesvìdète, ¾e Shift-Lock NENÍ stlaèený a nìkolikrát stisknìte
+ Nyní se pøesvìdète, ¾e Caps-Lock NENÍ stlaèený a nìkolikrát stisknìte
klávesu j aby se kurzor posunul natolik, ¾e lekce 1.1 zaplní celou
obrazovku.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To znamená, \9ee je potøeba si pøíkazy vyzkou\9aet pro jejich správné
nauèení. Pokud si jen ète\9a text, pøíkazy zapomene\9a!
- Nyní se pøesvìdète, \9ee Shift-Lock NENÍ stlaèený a nìkolikrát stisknìte
+ Nyní se pøesvìdète, \9ee Caps-Lock NENÍ stlaèený a nìkolikrát stisknìte
klávesu j aby se kurzor posunul natolik, \9ee lekce 1.1 zaplní celou
obrazovku.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To znamená, že je potřeba si příkazy vyzkoušet pro jejich správné
naučení. Pokud si jen čteš text, příkazy zapomeneš!
- Nyní se přesvědčte, že Shift-Lock NENÍ stlačený a několikrát stiskněte
+ Nyní se přesvědčte, že Caps-Lock NENÍ stlačený a několikrát stiskněte
klávesu j aby se kurzor posunul natolik, že lekce 1.1 zaplní celou
obrazovku.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
åêôåëåßôå ôéò åíôïëÝò ãéá íá ôéò ìÜèåôå óùóôÜ. Áí äéáâÜæåôå ìüíï ôï
êåßìåíï, èá ôéò îå÷Üóåôå!
- Ôþñá, âåâáéùèåßôå üôé ôï ðëÞêôñï Shift-Lock ÄÅÍ åßíáé ðáôçìÝíï êáé
+ Ôþñá, âåâáéùèåßôå üôé ôï ðëÞêôñï Caps-Lock ÄÅÍ åßíáé ðáôçìÝíï êáé
ðáôÞóôå ôï ðëÞêôñï j áñêåôÝò öïñÝò ãéá íá ìåôáêéíÞóåôå ôïí äñïìÝá Ýôóé
þóôå ôï ÌÜèçìá 1.1 íá ãåìßóåé ðëÞñùò ôçí ïèüíç.
\9c¡«\9c¢\9cå«\9c « ª \9c¤«¦¢âª \9a \98 ¤\98 « ª £á\9f\9c«\9c ©à©«á. \80¤ \9b \98\99á\9d\9c«\9c £æ¤¦ «¦
¡\9cå£\9c¤¦, \9f\98 « ª ¥\9c®á©\9c«\9c!
- \92é¨\98, \99\9c\99\98 à\9f\9cå«\9c æ« «¦ §¢ã¡«¨¦ Shift-Lock \83\84\8c \9cå¤\98 §\98«\9e£â¤¦ ¡\98
+ \92é¨\98, \99\9c\99\98 à\9f\9cå«\9c æ« «¦ §¢ã¡«¨¦ Caps-Lock \83\84\8c \9cå¤\98 §\98«\9e£â¤¦ ¡\98
§\98«ã©«\9c «¦ §¢ã¡«¨¦ j \98¨¡\9c«âª ¦¨âª \9a \98 ¤\98 £\9c«\98¡ ¤ã©\9c«\9c «¦¤ \9b¨¦£â\98 â«©
é©«\9c «¦ \8bá\9f\9e£\98 1.1 ¤\98 \9a\9c£å©\9c §¢ã¨àª «\9e¤ ¦\9fæ¤\9e.
εκτελείτε τις εντολές για να τις μάθετε σωστά. Αν διαβάζετε μόνο το
κείμενο, θα τις ξεχάσετε!
- Τώρα, βεβαιωθείτε ότι το πλήκτρο Shift-Lock ΔΕΝ είναι πατημένο και
+ Τώρα, βεβαιωθείτε ότι το πλήκτρο Caps-Lock ΔΕΝ είναι πατημένο και
πατήστε το πλήκτρο j αρκετές φορές για να μετακινήσετε τον δρομέα έτσι
ώστε το Μάθημα 1.1 να γεμίσει πλήρως την οθόνη.
pou¾ívaním. To znamená, ¾e je potrebné si príkazy vyskú¹a», aby bolo
uèenie správne. Ak len èitas text, príkazy zabudne¹!
- Presvedè sa, ¾e Shift-Lock NIEJE stlaèený a stlaèt klávesu
+ Presvedè sa, ¾e Caps-Lock NIEJE stlaèený a stlaèt klávesu
j niekoµko krát, aby sa kurzor posunul natoµko, ¾e lekcia 1.1
celkom zaplní obrazovku.
pou\9eívaním. To znamená, \9ee je potrebné si príkazy vyskú\9aa\9d, aby bolo
uèenie správne. Ak len èitas text, príkazy zabudne\9a!
- Presvedè sa, \9ee Shift-Lock NIEJE stlaèený a stlaèt klávesu
+ Presvedè sa, \9ee Caps-Lock NIEJE stlaèený a stlaèt klávesu
j nieko¾ko krát, aby sa kurzor posunul nato¾ko, \9ee lekcia 1.1
celkom zaplní obrazovku.
používaním. To znamená, že je potrebné si príkazy vyskúšať, aby bolo
učenie správne. Ak len čitas text, príkazy zabudneš!
- Presvedč sa, že Shift-Lock NIEJE stlačený a stlačt klávesu
+ Presvedč sa, že Caps-Lock NIEJE stlačený a stlačt klávesu
j niekoľko krát, aby sa kurzor posunul natoľko, že lekcia 1.1
celkom zaplní obrazovku.
anlama gelir; komutlarý öðrenmek için doðru bir þekilde çalýþtýrmanýz gerekir.
Eðer sadece yazýlanlarý okursanýz komutlarý unutursunuz.
- Þimdi Shift-Lock tuþlarýnýzýn basýlý olmadýðýna emin olun ve Ders 1.1'in
+ Þimdi Caps-Lock tuþlarýnýzýn basýlý olmadýðýna emin olun ve Ders 1.1'in
ekraný tamamen doldurmasý için j tuþuna yeterli miktarda basýn.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ders 1.1: ÝMLECÝ HAREKET ETTÝRMEK
anlama gelir; komutları öğrenmek için doğru bir şekilde çalıştırmanız gerekir.
Eğer sadece yazılanları okursanız komutları unutursunuz.
- Şimdi Shift-Lock tuşlarınızın basılı olmadığına emin olun ve Ders 1.1'in
+ Şimdi Caps-Lock tuşlarınızın basılı olmadığına emin olun ve Ders 1.1'in
ekranı tamamen doldurması için j tuşuna yeterli miktarda basın.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ders 1.1: İMLECİ HAREKET ETTİRMEK
use. That means that you need to execute the commands to learn them
properly. If you only read the text, you will forget the commands!
- Now, make sure that your Shift-Lock key is NOT depressed and press
+ Now, make sure that your Caps-Lock key is NOT depressed and press
the j key enough times to move the cursor so that Lesson 1.1
completely fills the screen.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~