to the |:cd| or |:lcd| commands, or as a
result of the 'autochdir' option.
The pattern can be:
- "window" to trigger on `:lcd
+ "window" to trigger on `:lcd`
"global" to trigger on `:cd`
"auto" to trigger on 'autochdir'.
"drop" to trigger on editing a file
program.
*format-formatexpr*
-The 'formatexpr' option can be set to a Vim Script function that performs
+The 'formatexpr' option can be set to a Vim script function that performs
reformatting of the buffer. This should usually happen in an |ftplugin|,
since formatting is highly dependent on the type of file. It makes
sense to use an |autoload| script, so the corresponding script is only loaded
You can then enable the formatting by executing: >
setlocal formatexpr=format#Format()
->
+
Note: this function explicitly returns non-zero when called from insert mode
(which basically means, text is inserted beyond the 'textwidth' limit). This
causes Vim to fall back to reformat the text by using the internal formatter.
endif
silent execute "!diff -a --binary " . opt . v:fname_in . " " . v:fname_new .
\ " > " . v:fname_out
+ redraw!
endfunction
The "-a" argument is used to force comparing the files as text, comparing as
binaries isn't useful. The "--binary" argument makes the files read in binary
mode, so that a CTRL-Z doesn't end the text on DOS.
+The `redraw!` command may not be needed, depending on whether executing a
+shell command shows something on the display or not.
+
*E810* *E97*
Vim will do a test if the diff output looks alright. If it doesn't, you will
get an error message. Possible causes:
debugbreak({pid}) Number interrupt process being debugged
deepcopy({expr} [, {noref}]) any make a full copy of {expr}
delete({fname} [, {flags}]) Number delete the file or directory {fname}
-deletebufline({expr}, {first}[, {last}])
+deletebufline({expr}, {first} [, {last}])
Number delete lines from buffer {expr}
did_filetype() Number |TRUE| if FileType autocmd event used
diff_filler({lnum}) Number diff filler lines about {lnum}
toupper({expr}) String the String {expr} switched to uppercase
tr({src}, {fromstr}, {tostr}) String translate chars of {src} in {fromstr}
to chars in {tostr}
-trim({text}[, {mask}]) String trim characters in {mask} from {text}
+trim({text} [, {mask}]) String trim characters in {mask} from {text}
trunc({expr}) Float truncate Float {expr}
type({name}) Number type of variable {name}
undofile({name}) String undo file name for {name}
To delete a line from the buffer use |:delete| or
|deletebufline()|.
-deletebufline({expr}, {first}[, {last}]) *deletebufline()*
+deletebufline({expr}, {first} [, {last}]) *deletebufline()*
Delete lines {first} to {last} (inclusive) from buffer {expr}.
If {last} is omitted then delete line {first} only.
On success 0 is returned, on failure 1 is returned.
endfor
<
To get buffer-local options use: >
- getbufvar({bufnr}, '&')
+ getbufvar({bufnr}, '&option_name')
<
*getbufline()*
|job-options|. However, not all options can be used. These
are supported:
all timeout options
- "stoponexit"
- "callback", "out_cb", "err_cb"
- "exit_cb", "close_cb"
+ "stoponexit", "cwd", "env"
+ "callback", "out_cb", "err_cb", "exit_cb", "close_cb"
"in_io", "in_top", "in_bot", "in_name", "in_buf"
"out_io", "out_name", "out_buf", "out_modifiable", "out_msg"
"err_io", "err_name", "err_buf", "err_modifiable", "err_msg"
echo tr("<blob>", "<>", "{}")
< returns "{blob}"
-trim({text}[, {mask}]) *trim()*
+trim({text} [, {mask}]) *trim()*
Return {text} as a String where any character in {mask} is
removed from the beginning and end of {text}.
If {mask} is not given, {mask} is all characters up to 0x20,
Note: This binding is only available in MacVim.
==============================================================================
- vim:tw=78:sw=4:noet:ts=8:ft=help:norl:
+ vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
If the 'showmode' option is on "-- VREPLACE --" is
shown at the bottom of the window.
-Insert Normal mode Entered when CTRL-O given in Insert mode. This is
- like Normal mode, but after executing one command Vim
- returns to Insert mode.
+Insert Normal mode Entered when CTRL-O is typed in Insert mode (see
+ |i_CTRL-O|). This is like Normal mode, but after
+ executing one command Vim returns to Insert mode.
If the 'showmode' option is on "-- (insert) --" is
shown at the bottom of the window.
methods. Use 'imdisable' to disable XIM then.
You can set 'imactivatefunc' and 'imstatusfunc' to handle IME/XIM
- via external command if vim is not compiled with the |+xim|,
+ via external command if Vim is not compiled with the |+xim|,
|+multi_byte_ime| or |global-ime|.
*'imsearch'* *'ims'*
so far, matches. The matched string is highlighted. If the pattern
is invalid or not found, nothing is shown. The screen will be updated
often, this is only useful on fast terminals.
+ Also applies to the `:s`, `:g` and `:v` commands.
Note that the match will be shown, but the cursor will return to its
original position when no match is found and when pressing <Esc>. You
still need to finish the search command with <Enter> to move the
The highlighting can be set with the 'i' flag in 'highlight'.
When 'hlsearch' is on, all matched strings are highlighted too while
typing a search command. See also: 'hlsearch'.
- If you don't want turn 'hlsearch' on, but want to highlight all matches
- while searching, you can turn on and off 'hlsearch' with autocmd.
- Example: >
+ If you don't want to turn 'hlsearch' on, but want to highlight all
+ matches while searching, you can turn on and off 'hlsearch' with
+ autocmd. Example: >
augroup vimrc-incsearch-highlight
autocmd!
autocmd CmdlineEnter /,\? :set hlsearch
tabpages all tab pages; without this only the current tab page
is restored, so that you can make a session for each
tab page separately
- terminal include terminal windows where the command can be restored
+ terminal include terminal windows where the command can be
+ restored
unix with Unix end-of-line format (single <NL>), even when
on Windows or DOS
winpos position of the whole Vim window
Example with escaped space (Vim will do this when initializing the
option from $SHELL): >
:set shell=/bin/with\\\ space/sh
-< The resulting value of 'shell' is "/bin/with\ space/sh", two
+< The resulting value of 'shell' is "/bin/with\ space/sh", two
backslashes are consumed by `:set`.
Under MS-Windows, when the executable ends in ".com" it must be
line is displayed. The current buffer and current window will be set
temporarily to that of the window (and buffer) whose statusline is
currently being drawn. The expression will evaluate in this context.
- The variable "actual_curbuf" is set to the 'bufnr()' number of the
+ The variable "g:actual_curbuf" is set to the `bufnr()` number of the
real current buffer.
The 'statusline' option will be evaluated in the |sandbox| if set from
- Replace usage of fork() with spawn() when launching external
programs.
- vim:tw=78:sw=4:ts=8:noet:ts=8:ft=help:norl:
+ vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
'printexpr' through |v:cmdarg|. Otherwise [arguments]
is ignored. 'printoptions' can be used to specify
paper size, duplex, etc.
+ Note: If you want PDF, there are tools such as
+ "ps2pdf" that can convert the PostScript to PDF.
:[range]ha[rdcopy][!] >{filename}
As above, but write the resulting PostScript in file
*quickfix-ID*
Each quickfix list has a unique identifier called the quickfix ID and this
-number will not change within a Vim session. The getqflist() function can be
+number will not change within a Vim session. The |getqflist()| function can be
used to get the identifier assigned to a list. There is also a quickfix list
number which may change whenever more than ten lists are added to a quickfix
stack.
Every quickfix and location list has a read-only changedtick variable that
tracks the total number of changes made to the list. Every time the quickfix
list is modified, this count is incremented. This can be used to perform an
-action only when the list has changed. The getqflist() and getloclist()
+action only when the list has changed. The |getqflist()| and |getloclist()|
functions can be used to query the current value of changedtick. You cannot
change the changedtick variable.
echo getloclist(2, {'winid' : 1}).winid
<
*getqflist-examples*
-The getqflist() and getloclist() functions can be used to get the various
+The |getqflist()| and |getloclist()| functions can be used to get the various
attributes of a quickfix and location list respectively. Some examples for
using these functions are below:
>
:echo getloclist(3, {'winid' : 0}).winid
<
*setqflist-examples*
-The setqflist() and setloclist() functions can be used to set the various
+The |setqflist()| and |setloclist()| functions can be used to set the various
attributes of a quickfix and location list respectively. Some examples for
using these functions are below:
>
When {vimrc} is equal to "DEFAULTS" (all uppercase), this has
the same effect as "NONE", but the |defaults.vim| script is
- loaded, which will also set 'nocompatible'.
+ loaded, which will also set 'nocompatible'. Also see
+ |--clean|.
Using the "-u" argument with another argument than DEFAULTS
has the side effect that the 'compatible' option will be on by
'nocompatible': use Vim defaults
- no |gvimrc| script is loaded
- no viminfo file is read or written
- - the home directory is excluded from 'runtimepath'
+
*-x*
-x Use encryption to read/write files. Will prompt for a key,
which is then stored in the 'key' option. All writes will
:tabm[ove] [N] *:tabm* *:tabmove*
:[N]tabm[ove]
Move the current tab page to after tab page N. Use zero to
- make the current tab page the first one. Without N the tab
- page is made the last one. >
+ make the current tab page the first one. N is counted before
+ the move, thus if the second tab is the current one,
+ `:tabmove 1`` and `:tabmove 2` have no effect.
+ Without N the tab page is made the last one. >
:.tabmove " do nothing
:-tabmove " move the tab page to the left
:+tabmove " move the tab page to the right
't_RF' term.txt /*'t_RF'*
't_RI' term.txt /*'t_RI'*
't_RS' term.txt /*'t_RS'*
+'t_RT' term.txt /*'t_RT'*
't_RV' term.txt /*'t_RV'*
+'t_Ri' term.txt /*'t_Ri'*
't_SC' term.txt /*'t_SC'*
't_SH' term.txt /*'t_SH'*
't_SI' term.txt /*'t_SI'*
't_SR' term.txt /*'t_SR'*
+'t_ST' term.txt /*'t_ST'*
't_Sb' term.txt /*'t_Sb'*
't_Sf' term.txt /*'t_Sf'*
+'t_Si' term.txt /*'t_Si'*
't_Te' term.txt /*'t_Te'*
't_Ts' term.txt /*'t_Ts'*
't_VS' term.txt /*'t_VS'*
t_RF term.txt /*t_RF*
t_RI term.txt /*t_RI*
t_RS term.txt /*t_RS*
+t_RT term.txt /*t_RT*
t_RV term.txt /*t_RV*
+t_Ri term.txt /*t_Ri*
t_SC term.txt /*t_SC*
t_SH term.txt /*t_SH*
t_SI term.txt /*t_SI*
t_SR term.txt /*t_SR*
+t_ST term.txt /*t_ST*
t_Sb term.txt /*t_Sb*
t_Sf term.txt /*t_Sf*
+t_Si term.txt /*t_Si*
t_Te term.txt /*t_Te*
t_Ts term.txt /*t_Ts*
t_VS term.txt /*t_VS*
Load the plugin with this command: >
packadd termdebug
< *:Termdebug*
-To start debugging use `:Termdebug` or `:TermdebugCommand`` followed by the
+To start debugging use `:Termdebug` or `:TermdebugCommand` followed by the
command name, for example: >
:Termdebug vim
The #1234 numbers refer to an issue or pull request on github. To see it in a
browser use: https://github.com/vim/vim/issues/1234
-
+(replace 1234 with the issue/pull number)
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Graduate FEAT_VREPLACE, it's not much code and a lot of #ifdefs
-
Prompt buffer:
- Add a command line history.
- delay next prompt until plugin gives OK?
- When 'encoding' is not utf-8, or the job is using another encoding, setup
conversions.
+Patch to support ":tag <tagkind> <tagname". (emmrk, 2018 May 7, #2871)
+
+Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
+#2546) Fixes #1057. Missing a test.
+
+Problem with quickfix giving E42 when filtering the error list.
+(Nobuhiro Takasaki, 2018 Aug 1, #3270)
+Patch with test from Yegappan, Aug 2.
+
+Patch to add variable name after "scope add". (Eddie Lebow, 2018 Feb 7, #2620)
+Maybe not needed?
+
+Patch in issue 3268, fix suggestion window appearing on wrong screen.
+Also from Ken Takata, 2018 Aug 2.
+
+Patch for Lua support. (Kazunobu Kuriyama, 2018 May 26)
+
+Patch to use NGETTEXT() in many more places. (Sergey Alyoshin, 2018 May 25)
+Updated patch May 27.
+
+Patch to add winlayout() function. (Yegappan Lakshmanan, 2018 Jan 4)
+
+Patch to fix profiling condition lines. (Ozaki Kiichi,, 2017 Dec 26, #2499)
+
+Issue #686: apply 'F' in 'shortmess' to more messages. Also #3221.
+Patch on #3221 from Christian. Does it work now?
+
+Patch to include a cfilter plugin to filter quickfix/location lists.
+(Yegappan Lakshmanan, 2018 May 12)
+
Does not build with MinGW out of the box:
- _stat64 is not defined, need to use "struct stat" in vim.h
- WINVER conflict, should use 0x0600 by default?
-Patches for Python: #3162, #3263 (Ozaki Kiichi)
- Needs update.
-
Crash when mixing matchadd and substitute()? (Max Christian Pohle, 2018 May
13, #2910) Can't reproduce?
Inlcude Chinese-Taiwan translations. (bystar, #3261)
+Completion mixes results from the current buffer with tags and other files.
+Happens when typing CTRL-N while still search for results. E.g., type "b_" in
+terminal.c and then CTRL-N twice.
+Should do current file first and not split it up when more results are found.
+(Also #1890)
+
Using mouse for inputlist() doesn't work after patch 8.0.1756. (Dominique
Pelle, 2018 Jul 22, #3239) Also see 8.0.0722. Check both console and GUI.
gethostbyname() is old, use getaddrinfo() if available. (#3227)
+Delete the src/main.aap file?
+
matchaddpos() gets slow with many matches. Proposal by Rick Howe, 2018 Jul
19.
+home_replace() uses $HOME instead of "homedir". (Cesar Martins, 2018 Aug 9)
+
+Adjust windows installer explanation of behavior. (scootergrisen, #3310)
+
+Set g:actual_curbuf when evaluating 'statusline', not just with an expression.
+(Daniel Hahler, 2018 Aug 8, #3299)
+
Script generated by :mksession does not work well if there are windows with
modified buffers
change "silent only" into "silent only!"
skip "badd fname" if "fname" is already in the buffer list
remove remark about unloading buffers from documentation
-Patch to make :help work for tags with a ?. (Hirohito Higashi, 2018 May 28)
-
-Patch to have a stack trace in Ruby. (Masataka Pocke Kuwabara, 2018 Jul 30,
-#3267)
-
-Patch to adjust to DPI setting for GTK. (Roel van de Kraats, 2017 Nov 20,
-#2357)
-
-Patch to fix window size when using VTP. (Nobuhiro Takasaki, #3164)
-
Compiler warnings (geeknik, 2017 Oct 26):
- signed integer overflow in do_sub() (#2249)
- signed integer overflow in get_address() (#2248)
Win32 console: <F11> and <F12> typed in Insert mode don't result in normal
characters. (#3246)
-Patch for more quickfix refactoring. (Yegappan Lakshmanan, #2950)
-
Tests failing for "make testgui" with GTK:
- Test_setbufvar_options()
- Test_exit_callback_interval()
windows with it). Can we just remove the jump list entries for the quickfix
buffer?
-Patch to stack and pop the window title and icon. (IWAMOTO Kouichi, 2018 Jun
-22, #3059)
-8 For xterm need to open a connection to the X server to get the window
- title, which can be slow. Can also get the title with "<Esc>[21t", no
- need to use X11 calls. This returns "<Esc>]l{title}<Esc>\".
-Using title stack probably works better.
-
-When a function is defined in the sandbox (with :function or as a lambda)
-always execute it in the sandbox. (#3182)
-Remove "safe" argument from call_vim_function(), it's always FALSE.
-
Make balloon_show() work outside of 'balloonexpr'? Users expect it to work:
#2948. (related to #1512?)
On Win32 it stops showing, because showState is already ShS_SHOWING.
Cursor in wrong position when line wraps. (#2540)
-Patch for Lua support. (Kazunobu Kuriyama, 2018 May 26)
-
Make {skip} argument of searchpair() consistent with other places where we
pass an expression to evaluate. Allow passing zero for "never skip".
Universal solution to detect if t_RS is working, using cursor position.
Koichi Iwamoto, #2126
-Patch to fix profiling condition lines. (Ozaki Kiichi,, 2017 Dec 26, #2499)
-
When using a menu item while the "more" prompt is displayed doesn't work well.
E.g. after using help->version. Have a key that ends the "more" prompt and
does nothing otherwise?
Alternative manpager.vim. (Enno, 2018 Jan 5, #2529)
-Patch to use NGETTEXT() in many more places. (Sergey Alyoshin, 2018 May 25)
-Updated ptach May 27.
-
Does setting 'cursorline' cause syntax highlighting to slow down? Perhaps is
mess up the cache? (Mike Lee Williams, 2018 Jan 27, #2539)
Also: 'foldtext' is evaluated too often. (Daniel Hahler, #2773)
Add the debug command line history to viminfo.
-Issue #686: apply 'F' in 'shortmess' to more messages. Also #3221.
-
Avoid that "sign unplace id" does a redraw right away, esp. when there is a
sequence of these commands. (Andy Stewart, 2018 Mar 16)
ch_sendraw() with long string does not try to read in between, which may cause
a deadlock if the reading side is waiting for the write to finish. (Nate
Bosch, 2018 Jan 13, #2548)
-Perhaps just make chunks of 1024 bytes?
-
-Patch to include a cfilter plugin to filter quickfix/location lists.
-(Yegappan Lakshmanan, 2018 May 12)
+Perhaps just make chunks of 1024 bytes? Make the write non-blocking?
+Also a problem on MS-Windows: #2828.
Add Makefiles to the runtime/spell directory tree, since nobody uses Aap.
Will have to explain the manual steps (downloading the .aff and .dic files,
Using 'wildignore' also applies to literally entered file name. Also with
:drop (remote commands).
-Patch to support ":tag <tagkind> <tagname". (emmrk, 2018 May 7, #2871)
-
Inserting a line in a CompleteDone autocommand may confuse undo. (micbou,
2018 Jun 18, #3027)
When 'virtualedit' is "all" and 'cursorcolumn' is set, the wrong column may be
highlighted. (van-de-bugger, 2018 Jan 23, #2576)
-Patch to parse ":line" in tags file and use it for search. (Daniel Hahler,
-#2546) Fixes #1057. Missing a test.
-
":file" does not show anything when 'shortmess' contains 'F'. (#3070)
-Patch to add winlayout() function. (Yegappan Lakshmanan, 2018 Jan 4)
-
No profile information for function that executes ":quit". (Daniel Hahler,
2017 Dec 26, #2501)
+A function on a dictionary is not profiled. (ZyX, 2010 Dec 25)
+
+A function defined locally and lambda's are not easily recognized.
+Mention where they were defined somewhere.
+
Get a "No Name" buffer when 'hidden' is set and opening a new window from the
quickfix list. (bfrg, 2018 Jan 22, #2574)
CTRL-X on zero gets stuck on 0xfffffffffffffffe. (Hengyang Zhao, #2746)
-A function on a dictionary is not profiled. (ZyX, 2010 Dec 25)
-
Invalid range error when using BufWinLeave for closing terminal.
(Gabriel Barta, 2017 Nov 15, #2339)
9 Instead invoking an external diff program, use builtin code. One can be
found here: http://www.ioplex.com/~miallen/libmba/dl/src/diff.c
It's complicated and badly documented.
-Alternative: use the xdiff library. Patch from Christian Brabandt, 2018 Mar
-20, #2732)
+Alternative: use the xdiff library. Unfinished Patch from Christian Brabandt,
+2018 Mar 20, #2732)
ml_get errors with buggy script. (Dominique, 2017 Apr 30)
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)
Cindent: returning a structure has more indent for the second item.
(Sam Pagenkopf, 2017 Sep 14, #2090)
-Completion mixes results from the current buffer with tags and other files.
-Happens when typing CTRL-N while still search for results. E.g., type "b_" in
-terminal.c and then CTRL-N twice.
-Should do current file first and not split it up when more results are found.
-(Also #1890)
-
Patch from Christian Brabandt to preserve upper case marks when wiping out a
buffer. (2013 Dec 9)
Also fixes #2166?
Adding "~" to 'cdpath' doesn't work for completion? (Davido, 2013 Aug 19)
-Should be easy to highlight all matches with 'incsearch'. Idea by Itchyny,
-2015 Feb 6.
-
-Wrong scrolling when using incsearch. Patch by Christian Brabandt, 2014 Dec 4.
-Is this a good solution?
-
Patch: Let rare word highlighting overrule good word highlighting.
(Jakson A. Aquino, 2010 Jul 30, again 2011 Jul 2)
Updated patch by Roland Eggner, Dec 16
Updated patch from Charles, 2016 Jul 2
-Patch to open folds for 'incsearch'. (Christian Brabandt, 2015 Jan 6)
-
Patch for building a 32bit Vim with 64bit MingW compiler.
(Michael Soyka, 2014 Oct 15)
setpos() does not restore cursor position after :normal. (Tyru, 2010 Aug 11)
-7 The 'directory' option supports changing path separators to "%" to make
- file names unique, also support this for 'backupdir'. (Mikolaj Machowski)
- Patch by Christian Brabandt, 2010 Oct 21.
- Is this an update: related to: #179
- https://github.com/chrisbra/vim-mq-patches/blob/master/backupdir
- Fixed patch 2017 Jul 1.
-
With "tw=55 fo+=a" typing space before ) doesn't work well. (Scott Mcdermott,
2010 Oct 24)
Patch to use 'foldnestmax' also for "marker" foldmethod. (Arnaud Lacombe, 2011
Jan 7)
-Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17)
-Only with "vim -u NONE".
-
Problem with editing file in binary mode. (Ingo Krabbe, 2009 Oct 8)
With 'wildmode' set to "longest:full,full" and pressing Tab once the first
'magic' in history. (Margo)
9 optwin.vim: Restoring a mapping for <Space> or <CR> is not correct for
":noremap". Add "mapcmd({string}, {mode})? Use code from ":mkexrc".
-9 incsearch is incorrect for "/that/<Return>/this/;//" (last search pattern
- isn't updated).
9 term_console is used before it is set (msdos, Amiga).
9 Get out-of-memory for ":g/^/,$s//@/" on 1000 lines, this is not handled
correctly. Get many error messages while redrawing the screen, which
Incsearch:
-- Add a limit to the number of lines that are searched for 'incsearch'?
+- Wrong scrolling when using incsearch. Patch by Christian Brabandt, 2014
+ Dec 4. Is this a good solution?
+- Temporarily open folds to show where the search ends up. Restore the
+ folds when going to another line.
+ Patch to open folds for 'incsearch'. (Christian Brabandt, 2015 Jan 6)
+- Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17)
+ Only with "vim -u NONE".
- When no match is found and the user types more, the screen is redrawn
anyway. Could skip that. Esp. if the line wraps and the text is scrolled
up every time.
-- Temporarily open folds to show where the search ends up. Restore the
- folds when going to another line.
- When incsearch used and hitting return, no need to search again in many
cases, saves a lot of time in big files. (Slootman wants to work on this?)
When not using special characters, can continue search from the last match
(or not at all, when there was no match). See oldmail/webb/in.872.
+9 incsearch is incorrect for "/that/<Return>/this/;//" (last search pattern
+ isn't updated).
Searching:
are reflected in each Vim immediately. Could work with local files but
also over the internet. See http://www.codingmonkeys.de/subethaedit/.
-vim:tw=78:sw=4:sts=4:ts=8:ft=help:norl:
+vim:tw=78:sw=4:sts=4:ts=8:noet:ft=help:norl:
vim: set fo+=n :
This address is expected to be valid for a long time.
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
first put, and repeat the put command for the second register. Repeat the
'u.' until you got what you want.
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_02.txt| The first steps in Vim
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_03.txt| Moving around
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_04.txt| Making small changes
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_05.txt| Set your settings
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_06.txt| Using syntax highlighting
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_07.txt| Editing more than one file
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_08.txt| Splitting windows
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_09.txt| Using the GUI
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_10.txt| Making big changes
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_11.txt| Recovering from a crash
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_12.txt| Clever tricks
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_20.txt| Typing command-line commands quickly
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_21.txt| Go away and come back
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_22.txt| Finding the file to edit
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_23.txt| Editing other files
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_24.txt| Inserting quickly
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_25.txt| Editing formatted text
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_26.txt| Repeating
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_27.txt| Search commands and patterns
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_28.txt| Folding
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_29.txt| Moving through programs
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_30.txt| Editing programs
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_31.txt| Exploiting the GUI
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_32.txt| The undo tree
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_40.txt| Make new commands
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_41.txt| Write a Vim script
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_42.txt| Add new menus
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_43.txt| Using filetypes
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_44.txt| Your own syntax highlighted
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_45.txt| Select your language
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Next chapter: |usr_90.txt| Installing Vim
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
Table of contents: |usr_toc.txt|
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
==============================================================================
-Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
+Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl:
it. Since hardly anybody uses this feature, it is disabled by default. If
you want to use it, define RIGHTLEFT in feature.h before compiling. |'revins'|
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
Files: src/ex_docmd.c
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
Files: src/search.c
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
Files: src/terminal.c
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
- ex test 534 fails because .exrc isn't read in silent mode.
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
but starts Select mode instead of Visual mode.
Mnemonic: "get Highlighted".
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
:setlocal nobuflisted
<
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
uncommented lines in the Makefile without changing them. If you use another
xpm directory you will need to change the XPM_DIR in src/Makefile.
- vim:tw=78:ts=8:ft=help:norl:
+ vim:tw=78:ts=8:noet:ft=help:norl:
au BufNewFile,BufRead *.mas,*.master setf master
" Forth
-au BufNewFile,BufRead *.fs,*.ft setf forth
+au BufNewFile,BufRead *.fs,*.ft,*.fth setf forth
" Reva Forth
au BufNewFile,BufRead *.frt setf reva
" ATI graphics driver configuration
au BufNewFile,BufRead fglrxrc setf xml
+" Web Services Description Language (WSDL)
+au BufNewFile,BufRead *.wsdl setf xml
+
" XLIFF (XML Localisation Interchange File Format) is also XML
au BufNewFile,BufRead *.xlf setf xml
au BufNewFile,BufRead *.xliff setf xml
-encoding
+abolish
+abolish_category
+abolish_events
+abolish_object
+abolish_protocol
+abs
+acos
+acyclic_term
+after
+alias
+always_true_or_false_goals
+arg
+asin
+asserta
+assertz
+atan
+atan2
+atom
+atomic
+atom_chars
+atom_chars
+atom_codes
+atom_codes
+atom_concat
+atom_concat
+atom_length
+at_end_of_stream
+bagof
+before
+built_in
+call
+callable
calls
+catch
category
+category_property
+ceiling
+char_code
+char_conversion
+clause
+clean
+close
+code_prefix
+coinduction
+coinductive
+compare
+complements
+complements
+complements_object
+compound
+conforms_to_protocol
+context
+context_switching_calls
+copy_term
+cos
+create_category
+create_logtalk_flag
+create_object
+create_protocol
+current_category
+current_char_conversion
+current_event
+current_input
+current_logtalk_flag
+current_object
+current_op
+current_output
+current_predicate
+current_prolog_flag
+current_protocol
+debug
+define_events
+deprecated
+discontiguous
+div
+domain_error
+duplicated_directives
dynamic
+dynamic_declarations
+elif
+else
+encoding
+encoding_directive
+endif
end_category
end_object
end_protocol
-info
-initialization
-object
-protocol
-synchronized
-threaded
-uses
-alias
-discontiguous
-meta_predicate
-mode
-op
-private
-protected
-public
-current_object
-current_protocol
-current_category
-object_property
-protocol_property
-category_property
-create_object
-create_protocol
-create_category
-abolish_object
-abolish_protocol
-abolish_category
-complements
-complements_object
+engines
+ensure_loaded
+evaluation_error
+events
+existence_error
+exp
+expand_goal
+expand_term
+export
extends
+extends_category
extends_object
extends_protocol
-extends_category
+fail
+false
+findall
+float
+float_fractional_part
+float_integer_part
+floor
+flush_output
+forall
+forward
+functor
+get_byte
+get_char
+get_code
+goal_expansion
+ground
+halt
+hook
+if
+ignore
implements
implements_protocol
imports
imports_category
+include
+info
+initialization
instantiates
instantiates_class
-specializes
-specializes_class
-abolish_events
-current_event
-define_events
-logtalk_load
+instantiation_error
+integer
+keysort
+lambda_variables
+log
logtalk_compile
logtalk_library_path
-current_logtalk_flag
-set_logtalk_flag
-threaded_call
-threaded_once
-threaded_ignore
-threaded_exit
-threaded_peek
-threaded_wait
-threaded_notify
-self
-this
-sender
-parameter
-before
-after
-phrase
-expand_term
-goal_expansion
-term_expansion
-true
-fail
-call
-catch
-throw
-unify_with_occurs_check
-var
-atom
-integer
-float
-atomic
-compound
+logtalk_load
+logtalk_load_context
+logtalk_make
+logtalk_make_target_action
+max
+meta_non_terminal
+meta_predicate
+min
+missing_directives
+mod
+mode
+modules
+multifile
+nl
nonvar
number
-arg
-copy_term
-functor
-current_predicate
-predicate_property
-abolish
-assertz
-asserta
-clause
-retract
-retractall
-bagof
-findall
-forall
-setof
-current_input
-current_output
-set_input
-set_output
+numbervars
+number_chars
+number_chars
+number_codes
+number_codes
+object
+object_property
+once
+op
open
-close
-flush_output
-stream_property
-at_end_of_stream
-set_stream_position
-get_char
-get_code
+optimize
+parameter
+peek_byte
peek_char
peek_code
+permission_error
+phrase
+portability
+predicate_property
+private
+prolog_compatible_version
+prolog_compiler
+prolog_dialect
+prolog_loader
+prolog_version
+protected
+protocol
+protocol_property
+public
+put_byte
put_char
put_code
-nl
-get_byte
-peek_byte
-put_byte
read
read_term
-write
-writeq
-write_canonical
-atom_chars
-atom_codes
-atom_concat
-number_chars
-number_codes
-current_op
-char_conversion
-current_char_conversion
-once
-repeat
-atom_length
-atom_concat
-sub_atom
-atom_chars
-atom_codes
-char_code
-number_chars
-number_codes
-set_prolog_flag
-current_prolog_flag
-halt
-abs
-atan
-ceiling
-cos
-exp
-float_fractional_part
-float_integer_part
-floor
-log
-mod
+redefined_built_ins
+reexport
+reload
rem
+repeat
+report
+representation_error
+resource_error
+retract
+retractall
round
+scratch_directory
+self
+sender
+setof
+set_input
+set_logtalk_flag
+set_output
+set_prolog_flag
+set_stream_position
sign
sin
+singleton_variables
+sort
+source_data
+specializes
+specializes_class
sqrt
+stream_property
+subsumes_term
+sub_atom
+suspicious_calls
+synchronized
+syntax_error
+system_error
+tabling
+tan
+term_expansion
+term_variables
+this
+threaded
+threaded_call
+threaded_engine
+threaded_engine_create
+threaded_engine_destroy
+threaded_engine_fetch
+threaded_engine_next
+threaded_engine_next_reified
+threaded_engine_post
+threaded_engine_self
+threaded_engine_yield
+threaded_exit
+threaded_ignore
+threaded_notify
+threaded_once
+threaded_peek
+threaded_wait
+threads
+throw
+trivial_goal_fails
+true
truncate
+type_error
+undefined_predicates
+underscore_variables
+unify_with_occurs_check
+unknown_entities
+unknown_predicates
+uses
+use_module
+var
+version
+write
+writeq
+write_canonical
+xor
" Logtalk filetype plugin file
" Language: Logtalk
" Maintainer: Paulo Moura <pmoura@logtalk.org>
-" Latest Revision: 2007-07-06
+" Latest Revision: 2018-08-03
if exists("b:did_ftplugin")
finish
let b:undo_ftplugin = "setl ts< sw< fdm< fdc< ai< dict<"
-"setlocal ts=4
+setlocal ts=4
setlocal sw=4
setlocal fdm=syntax
+setlocal fdn=10
setlocal fdc=2
setlocal autoindent
setlocal dict=$VIMRUNTIME/ftplugin/logtalk.dict
" Vim filetype plugin
" Language: Vim
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2017 Dec 05
+" Last Change: 2018 Aug 07
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
if !exists('*VimFtpluginUndo')
func VimFtpluginUndo()
setl fo< isk< com< tw< commentstring<
- if exists(b:did_add_maps)
- silent! nunmap <buffer> [['
- silent! vunmap <buffer> [['
- silent! nunmap <buffer> ]]'
- silent! vunmap <buffer> ]]'
- silent! nunmap <buffer> []'
- silent! vunmap <buffer> []'
- silent! nunmap <buffer> ]['
- silent! vunmap <buffer> ]['
- silent! nunmap <buffer> ]"'
- silent! vunmap <buffer> ]"'
- silent! nunmap <buffer> ["'
- silent! vunmap <buffer> ["'
+ if exists('b:did_add_maps')
+ silent! nunmap <buffer> [[
+ silent! vunmap <buffer> [[
+ silent! nunmap <buffer> ]]
+ silent! vunmap <buffer> ]]
+ silent! nunmap <buffer> []
+ silent! vunmap <buffer> []
+ silent! nunmap <buffer> ][
+ silent! vunmap <buffer> ][
+ silent! nunmap <buffer> ]"
+ silent! vunmap <buffer> ]"
+ silent! nunmap <buffer> ["
+ silent! vunmap <buffer> ["
endif
unlet! b:match_ignorecase b:match_words b:match_skip b:did_add_maps
endfunc
" Maintainer: Paulo Moura <pmoura@logtalk.org>
-" Revised on: 2008.06.02
+" Revised on: 2018.08.04
" Language: Logtalk
" This Logtalk indent file is a modified version of the Prolog
" Check for clause head on previous line
elseif pline =~ ':-\s*\(%.*\)\?$'
let ind = ind + shiftwidth()
+ " Check for grammar rule head on previous line
+ elseif pline =~ '-->\s*\(%.*\)\?$'
+ let ind = ind + shiftwidth()
" Check for entity closing directive on previous line
elseif pline =~ '^\s*:-\send_\(object\|protocol\|category\)\.\(%.*\)\?$'
let ind = ind - shiftwidth()
" Maintainer: Debian Vim Maintainers
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
" Wichert Akkerman <wakkerma@debian.org>
-" Last Change: 2018 May 31
+" Last Change: 2018 Aug 11
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcontrol.vim
" Standard syntax initialization
let s:archs = [
\ 'alpha', 'amd64', 'armeb', 'armel', 'armhf', 'arm64', 'avr32', 'hppa'
\, 'i386', 'ia64', 'lpia', 'm32r', 'm68k', 'mipsel', 'mips64el', 'mips'
- \, 'powerpcspe', 'powerpc', 'ppc64el', 'ppc64', 's390x', 's390', 'sh3eb'
+ \, 'powerpcspe', 'powerpc', 'ppc64el', 'ppc64', 'riscv64', 's390x', 's390', 'sh3eb'
\, 'sh3', 'sh4eb', 'sh4', 'sh', 'sparc64', 'sparc', 'x32'
\ ]
let s:pairs = [
" Language: Debian sources.list
" Maintainer: Debian Vim Maintainers
" Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
-" Last Change: 2018 May 03
+" Last Change: 2018 Aug 11
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim
" Standard syntax initialization
\ 'oldstable', 'stable', 'testing', 'unstable', 'experimental',
\ 'wheezy', 'jessie', 'stretch', 'sid', 'rc-buggy',
\
- \ 'trusty', 'xenial', 'artful', 'bionic', 'cosmic', 'devel'
+ \ 'trusty', 'xenial', 'bionic', 'cosmic', 'devel'
\ ]
let s:unsupported = [
\ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato',
\ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty',
\ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid',
\ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy',
- \ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty'
+ \ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful'
\ ]
let &cpo=s:cpo
"
" Language: Logtalk
" Maintainer: Paulo Moura <pmoura@logtalk.org>
-" Last Change: February 4, 2012
+" Last Change: August 3, 2018
" quit when a syntax file was already loaded
syn match logtalkDirTag ":- else\."
syn match logtalkDirTag ":- endif\."
syn region logtalkDir matchgroup=logtalkDirTag start=":- alias(" matchgroup=logtalkDirTag end=")\." contains=ALL
-syn region logtalkDir matchgroup=logtalkDirTag start=":- calls(" matchgroup=logtalkDirTag end=")\." contains=ALL
syn region logtalkDir matchgroup=logtalkDirTag start=":- coinductive(" matchgroup=logtalkDirTag end=")\." contains=ALL
syn region logtalkDir matchgroup=logtalkDirTag start=":- encoding(" matchgroup=logtalkDirTag end=")\." contains=ALL
syn region logtalkDir matchgroup=logtalkDirTag start=":- initialization(" matchgroup=logtalkDirTag end=")\." contains=ALL
syn region logtalkDir matchgroup=logtalkDirTag start=":- info(" matchgroup=logtalkDirTag end=")\." contains=ALL
syn region logtalkDir matchgroup=logtalkDirTag start=":- mode(" matchgroup=logtalkDirTag end=")\." contains=logtalkOperator, logtalkAtom
syn region logtalkDir matchgroup=logtalkDirTag start=":- dynamic(" matchgroup=logtalkDirTag end=")\." contains=ALL
+syn match logtalkDirTag ":- built_in\."
syn match logtalkDirTag ":- dynamic\."
syn region logtalkDir matchgroup=logtalkDirTag start=":- discontiguous(" matchgroup=logtalkDirTag end=")\." contains=ALL
syn region logtalkDir matchgroup=logtalkDirTag start=":- multifile(" matchgroup=logtalkDirTag end=")\." contains=ALL
syn match logtalkBuiltIn "\<\(abolish\|define\)_events\ze("
syn match logtalkBuiltIn "\<current_event\ze("
-syn match logtalkBuiltIn "\<\(curren\|se\)t_logtalk_flag\ze("
+syn match logtalkBuiltIn "\<\(create\|current\|set\)_logtalk_flag\ze("
-syn match logtalkBuiltIn "\<logtalk_\(compile\|l\(ibrary_path\|oad\|oad_context\)\)\ze("
+syn match logtalkBuiltIn "\<logtalk_\(compile\|l\(ibrary_path\|oad\|oad_context\)\|make\(_target_action\)\?\)\ze("
+syn match logtalkBuiltIn "\<logtalk_make\>"
syn match logtalkBuiltIn "\<\(for\|retract\)all\ze("
syn match logtalkBuiltIn "\<threaded\(_\(call\|once\|ignore\|exit\|peek\|wait\|notify\)\)\?\ze("
+syn match logtalkBuiltIn "\<threaded_engine\(_\(create\|destroy\|self\|next\|next_reified\|yield\|post\|fetch\)\)\?\ze("
" Logtalk built-in methods
+syn match logtalkBuiltInMethod "\<context\ze("
syn match logtalkBuiltInMethod "\<parameter\ze("
syn match logtalkBuiltInMethod "\<se\(lf\|nder\)\ze("
syn match logtalkBuiltInMethod "\<this\ze("
syn match logtalkBuiltInMethod "\<before\ze("
syn match logtalkBuiltInMethod "\<after\ze("
+syn match logtalkBuiltInMethod "\<forward\ze("
+
syn match logtalkBuiltInMethod "\<expand_\(goal\|term\)\ze("
syn match logtalkBuiltInMethod "\<\(goal\|term\)_expansion\ze("
syn match logtalkBuiltInMethod "\<phrase\ze("
syn match logtalkKeyword "\<true\>"
syn match logtalkKeyword "\<fail\>"
+syn match logtalkKeyword "\<false\>"
syn match logtalkKeyword "\<ca\(ll\|tch\)\ze("
syn match logtalkOperator "!"
" syn match logtalkOperator ","
syn match logtalkOperator "-->"
syn match logtalkOperator "->"
syn match logtalkKeyword "\<throw\ze("
+syn match logtalkKeyword "\<\(instantiation\|system\)_error\>"
+syn match logtalkKeyword "\<\(type\|domain\|existence\|permission\|representation\|evaluation\|resource\|syntax\)_error\ze("
" Term unification
syn match logtalkOperator "="
+syn match logtalkKeyword "\<subsumes_term\ze("
syn match logtalkKeyword "\<unify_with_occurs_check\ze("
syn match logtalkOperator "\\="
syn match logtalkKeyword "\<c\(allable\|ompound\)\ze("
syn match logtalkKeyword "\<n\(onvar\|umber\)\ze("
syn match logtalkKeyword "\<ground\ze("
+syn match logtalkKeyword "\<acyclic_term\ze("
" Term comparison
syn match logtalkOperator "=\.\."
syn match logtalkKeyword "\<copy_term\ze("
syn match logtalkKeyword "\<numbervars\ze("
+syn match logtalkKeyword "\<term_variables\ze("
+
+
+" Predicate aliases
+
+syn match logtalkOperator "\<as\>"
-" Arithemtic evaluation
+" Arithmetic evaluation
syn match logtalkOperator "\<is\>"
-" Arithemtic comparison
+" Arithmetic comparison
syn match logtalkOperator "=:="
syn match logtalkOperator "=\\="
syn match logtalkOperator "\*"
syn match logtalkOperator "//"
syn match logtalkOperator "/"
+syn match logtalkKeyword "\<div\ze("
syn match logtalkKeyword "\<r\(ound\|em\)\ze("
syn match logtalkKeyword "\<e\>"
syn match logtalkKeyword "\<pi\>"
+syn match logtalkKeyword "\<div\>"
syn match logtalkKeyword "\<rem\>"
-syn match logtalkKeyword "\<mod\ze("
+syn match logtalkKeyword "\<m\(ax\|in\|od\)\ze("
syn match logtalkKeyword "\<mod\>"
syn match logtalkKeyword "\<abs\ze("
syn match logtalkKeyword "\<sign\ze("
syn match logtalkKeyword "\<flo\(or\|at\(_\(integer\|fractional\)_part\)\?\)\ze("
-syn match logtalkKeyword "\<truncate\ze("
+syn match logtalkKeyword "\<t\(an\|runcate\)\ze("
syn match logtalkKeyword "\<ceiling\ze("
syn match logtalkOperator "\*\*"
syn match logtalkKeyword "\<s\(in\|qrt\)\ze("
syn match logtalkKeyword "\<cos\ze("
-syn match logtalkKeyword "\<atan\ze("
+syn match logtalkKeyword "\<a\(cos\|sin\|tan\|tan2\)\ze("
syn match logtalkKeyword "\<exp\ze("
syn match logtalkKeyword "\<log\ze("
syn match logtalkOperator "/\\"
syn match logtalkOperator "\\/"
syn match logtalkOperator "\\"
+syn match logtalkKeyword "\<xor\ze("
" Logtalk list operator
syn match logtalkNumber "\<\d\+\.\d\+\>"
syn match logtalkNumber "\<\d\+[eE][-+]\=\d\+\>"
syn match logtalkNumber "\<\d\+\.\d\+[eE][-+]\=\d\+\>"
-syn match logtalkNumber "\<0'.\|0''\|0'\"\>"
+syn match logtalkNumber "\<0'[\\]\?.\|0''\|0'\"\>"
syn match logtalkNumber "\<0b[0-1]\+\>"
syn match logtalkNumber "\<0o\o\+\>"
syn match logtalkNumber "\<0x\x\+\>"