Update runtime files
diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim
index 160cdcf..973d3b0 100644
--- a/runtime/autoload/dist/ft.vim
+++ b/runtime/autoload/dist/ft.vim
@@ -126,7 +126,7 @@
 " This function checks if one of the first ten lines start with a '@'.  In
 " that case it is probably a change file.
 " If the first line starts with # or ! it's probably a ch file.
-" If a line has "main", "include", "//" ir "/*" it's probably ch.
+" If a line has "main", "include", "//" or "/*" it's probably ch.
 " Otherwise CHILL is assumed.
 func dist#ft#FTchange()
   let lnum = 1
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index a79bf4b..d6b0242 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -850,7 +850,7 @@
   - magic is always set without regard to 'magic'.
   - A ~ inserts a tilde literally.
   - <CR> and \r inserts a carriage-return (CTRL-M).
-  - \<CR> does not have a special meaning. it's just one of \x.
+  - \<CR> does not have a special meaning. It's just one of \x.
 
 Examples: >
   :s/a\|b/xxx\0xxx/g		 modifies "a b"	     to "xxxaxxx xxxbxxx"
diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 0d2b0db..e229532 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -541,7 +541,6 @@
     :autocmd
     :bufdo
     :cexpr (and the like)
-    :call
     :cdo (and the like)
     :command
     :cscope (and the like)
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 2e58c85..2027c2e 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -180,10 +180,10 @@
 arguments will be passed to the function.  Example: >
 
 	let Cb = function('Callback', ['foo'], myDict)
-	call Cb()
+	call Cb('bar')
 
 This will invoke the function as if using: >
-	call myDict.Callback('foo')
+	call myDict.Callback('foo', 'bar')
 
 This is very useful when passing a function around, e.g. in the arguments of
 |ch_open()|.
@@ -4614,7 +4614,6 @@
 getcwd([{winnr} [, {tabnr}]])
 		The result is a String, which is the name of the current
 		working directory.
-		Without arguments, for the current window.
 
 		With {winnr} return the local current directory of this window
 		in the current tab page.  {winnr} can be the window number or
@@ -9128,7 +9127,7 @@
 		Get the |window-ID| for the specified window.
 		When {win} is missing use the current window.
 		With {win} this is the window number.  The top window has
-		number 1.  Use `win_getid(winnr())` for the current window.
+		number 1.
 		Without {tab} use the current tab, otherwise the tab with
 		number {tab}.  The first tab has number one.
 		Return zero if the window cannot be found.
diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt
index a8d59e3..8950fd9 100644
--- a/runtime/doc/indent.txt
+++ b/runtime/doc/indent.txt
@@ -588,8 +588,9 @@
 user manual.
 
 If you want to write your own indent file, it must set the 'indentexpr'
-option.  Setting the 'indentkeys' option is often useful.  See the
-$VIMRUNTIME/indent directory for examples.
+option.  Setting the 'indentkeys' option is often useful.
+See the $VIMRUNTIME/indent/README.txt file for hints.
+See the $VIMRUNTIME/indent directory for examples.
 
 
 REMARKS ABOUT SPECIFIC INDENT FILES ~
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 0db2d46..f4656de 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1638,10 +1638,10 @@
 			area extended, Vim tries to become the owner of the
 			windowing system's global selection or put the
 			selected text on the clipboard used by the selection
-			register "*.  See |guioptions_a| and |quotestar| for
-			details.  When the GUI is active, the 'a' flag in
-			'guioptions' is used, when the GUI is not active, this
-			"autoselect" flag is used.
+			register "*.  See |'go-a'| and |quotestar| for details.
+			When the GUI is active, the 'a' flag in 'guioptions'
+			is used, when the GUI is not active, this "autoselect"
+			flag is used.
 			Also applies to the modeless selection.
 
 						*clipboard-autoselectplus*
@@ -3916,7 +3916,7 @@
 		terminal to list the command output.
 		The terminal window will be positioned at the bottom, and grow
 		upwards as needed.
-							*guioptions_a* *'go-a'*
+								*'go-a'*
 	  'a'	Autoselect:  If present, then whenever VISUAL mode is started,
 		or the Visual area extended, Vim tries to become the owner of
 		the windowing system's global selection.  This means that the
@@ -8125,8 +8125,8 @@
 	non-keyword characters (white space is preferred).  Maximum line
 	length is 510 bytes.
 	To obtain a file to be used here, check out this ftp site:
-	[Sorry this link doesn't work anymore, do you know the right one?]
-	ftp://ftp.ox.ac.uk/pub/wordlists/  First get the README file.
+	ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/  First get the README
+	file.
 	To include a comma in a file name precede it with a backslash.  Spaces
 	after a comma are ignored, otherwise spaces are included in the file
 	name.  See |option-backslash| about using backslashes.
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 4e43909..3d9b1f2 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -898,7 +898,7 @@
 			'smartcase' is not used.
 			If {pattern} is empty (e.g. // is specified), the last
 			used search pattern is used. |last-pattern|
-
+:{count}vim[grep] ...
 			When a number is put before the command this is used
 			as the maximum number of matches to find.  Use
 			":1vimgrep pattern file" to find only the first.
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 3d987ff..04de08e 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -939,6 +939,9 @@
 To disable them use ":unlet".  Example: >
 	:unlet c_comment_strings
 
+An alternative is to switch to the C++ highlighting: >
+	:set filetype=cpp
+
 Variable		Highlight ~
 *c_gnu*			GNU gcc specific items
 *c_comment_strings*	strings and numbers inside a comment
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 3936ebc..33f9133 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -6811,7 +6811,6 @@
 gui_x11.txt	gui_x11.txt	/*gui_x11.txt*
 guifontwide_gtk	options.txt	/*guifontwide_gtk*
 guifontwide_win_mbyte	options.txt	/*guifontwide_win_mbyte*
-guioptions_a	options.txt	/*guioptions_a*
 guu	change.txt	/*guu*
 gv	visual.txt	/*gv*
 gview	starting.txt	/*gview*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index f9c2101..c5ebd61 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -38,9 +38,6 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-Using freed memory in quickfix. (Dominique Pelle, Yegappan is looking into a
-fix).
-
 'incsearch' with :s: (#3321)
 - :s/foo  using CTRL-G moves to another line, should not happen, or use the
   correct line (it uses the last but one line) (Lifepillar, Aug 18, #3345)
@@ -56,10 +53,13 @@
 
 Terminal debugger:
 - Make prompt-buffer variant work better.
+- Add option to not open the program window.  It's not used when attaching to
+  an already running program. (M. Kelly)
 - When only gdb window exists, on "quit" edit another buffer.
 - Termdebug does not work when Vim was build with mzscheme: gdb hangs just
   after "run".  Everything else works, including communication channel.  Not
   initializing mzscheme avoid the problem, thus it's not some #ifdef.
+- Add support for lldb?  #3565
 
 Terminal emulator window:
 - GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
@@ -121,6 +121,11 @@
 Should do current file first and not split it up when more results are found.
 (Also #1890)
 
+Internal diff doesn't handle binary file like external diff does. (Mike
+Williams, 2018 Oct 30)
+
+Problem with :tlmenu: Detach item added with all modes?  Issue #3563.
+
 C syntax: {} inside () causes following {} to be highlighted as error.
 (Michalis Giannakidis, 2006 Jun 1)
 
@@ -140,7 +145,7 @@
 Related to bracketed paste.  I cannot reproduce it.
 
 ":mksession" cannot handle a very long 'runtimepath'. (Timothy Madden, 21 Sep
-2018, #3466)  Christian is working on a patch.
+2018, #3466)  Patch from Christian, 2018 Oct 30 (with comments).
 
 Patch in pull request #2967: Allow white space in sign text. (Ben Jackson)
 Test fails in AppVeyor.
@@ -155,9 +160,6 @@
 Patch to convert temp file name. (Yasuhiro Matsumoto, #3520)
 Not ready to include yet.
 
-Removing flags from 'cpoptions' breaks the Winbar buttons in termdebug.
-(Dominique Pelle, 2018 Jul 16)
-
 Problem with two buffers with the same name a/b, if it didn't exist before and
 is created outside of Vim. (dskloetg, 2018 Jul 16, #3219)
 
@@ -171,6 +173,12 @@
 Patch to implement 'diffref' option. (#3535)
   Easier to use a 'diffmaster' option, is the extra complexity needed?
 
+Patch to fix that bracketed paste remains after Vim exits. (2018 Oct 30, #3579)
+
+cursorline highlighting not removed after yanking in Visual mode.
+(Matéo Zanibelli, 2018 Oct 30, #3578)
+Patch by Christian, Oct 30.
+
 Memory leaks in test_channel? (or is it because of fork())
 Using uninitialized value in test_crypt.
 Memory leak in test_terminal:
@@ -189,6 +197,9 @@
 matchaddpos() gets slow with many matches.  Proposal by Rick Howe, 2018 Jul
 19.
 
+Sourceforge Vim pages still have content, redirect from empty page.
+Check for PHP errors. (Wayne Davison, 2018 Oct 26)
+
 Patch to support ":tag <tagkind> <tagname>". (emmrk, 2018 May 7, #2871)
 Use something like ":tag {kind}/{tagname}".
 Not ready to include.
@@ -213,7 +224,7 @@
 Add t_cS and t_cR for cursor color select and reset.  Use Cs and Cr terminfo
 values.
 
-Furthere xdiff changes:
+Further xdiff changes:
 - More options, e.g. different kind of whitespace diff.
 - when editing text, update the surrounding diff blocks.
 - omit diff.exe from distribution
@@ -222,19 +233,11 @@
 
 Difference between two regexp engines: #3373
 
-Patch to handle missin glibwinpthread-1.dll. (Ken Takata, 2018 Sep 23, #2827)
-
-Patch to add arguments to argc() and argv(). (Yegappan Lakshmanan, 2016 Jan
-24, #832)  Also need a way to get the global arg list?  Update later on Jan 24
-Update Mar 5. Update Apr 7.  Update Jun 5.
-
 When the last line wraps, selecting with the mouse below that line only
 includes the first screen line. (2018 Aug 23, #3368)
 
-Add `:filter` support for various commands (Marcin Szamotulski, 2017 Nov 12
-#2322)  Patch now in #2856.
-
 Refactored HTML indent file. (Michael Lee, #1821)
+Ask to write a test first.
 
 Patch to add getregpoint() and setreg() with an option to set "".
 (Andy Massimino, 2018 Aug 24, #3370)
@@ -261,6 +264,9 @@
 
 'foldtext' is evaluated too often. (Daniel Hahler, #2773)
 
+Add Native language protocol server (LSP) support. (Yegappan Lakshmanan, 2018
+Oct 28)
+
 ml_get error when using a Python script. (Yggdroot, 2017 Jun 1, #1737)
 Lemonboy can reproduce (2017 Jun 5)
 Also reproduced by Benjamin Doherty, 2018 Oct 4.
@@ -276,6 +282,11 @@
 - Test_setbufvar_options()
 - Test_exit_callback_interval()
 
+Get a "No Name" buffer when 'hidden' is set and opening a new window from the
+quickfix list. (bfrg, 2018 Jan 22, #2574)
+Tracked down by Jason Franklin, 2018 Oct 30.
+Suggested patch by Yegappan, Nov 1.
+
 When using CTRL-W CR in the quickfix window, the jumplist in the opened window
 is cleared, to avoid going back to the list of errors buffer (would have two
 windows with it).  Can we just remove the jump list entries for the quickfix
@@ -298,8 +309,8 @@
 2018 Sep 14)
 
 Add v:motion_force. (Kana Natsuno, 2008 Dec 6)
-Maybe call it v:motiontype.  Update in #3490)
-Alternaitve: add the force flag to mode(), after "no".
+Maybe call it v:motiontype.  Update in #3490.
+Alternative: add the force flag to mode(), after "no".
 
 Try out background make plugin: 
   https://github.com/AndrewVos/vim-make-background
@@ -307,7 +318,7 @@
   https://github.com/yegappan/asyncmake
 
 Add a ModeChanged autocommand that has an argument indicating the old and new
-mode.  Also used for switching Terminal mode.
+mode, as what's returned from mode().  Also used for switching Terminal mode.
 
 Add an option with file patterns, to be used when unloading a buffer: If there
 is a match, remove entries for the buffer from marks, jumplist, etc.  To be
@@ -372,7 +383,7 @@
 
 Alternative manpager.vim. (Enno, 2018 Jan 5, #2529)
 
-Delete all the speficic stuff for the Borland compiler? (#3374)
+Delete all the specific stuff for the Borland compiler? (#3374)
 Patch in #3377 (Thomas Dziedzic)
 
 With 'foldmethod' "indent" and appending an empty line, what follows isn't
@@ -451,6 +462,10 @@
 		values are handled and the script ID is restored, so that
 		`:verbose set` will show where the option was originally set,
 		not where it was restored.
+  Alternatively: save and restore ALL options.  Implementation needs to use
+	copy-on-write.  Return an ID from option_save(), when
+	option_restore(ID) is called give an error if another option_save()
+	was called in the mean time, they must be balanced.
 
 "gvim --remote" from a directory with non-word characters changes the current
 directory (Paulo Marcel Coelho Arabic, 2017 Oct 30, #2266)
@@ -474,9 +489,6 @@
 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)
 
 Invalid range error when using BufWinLeave for closing terminal.
@@ -531,7 +543,7 @@
 for a path separator. (xtal8, #2201)
 
 Would be nice for insert mode completion to highlight the text that was added
-(and may change when picking another compltion).
+(and may change when picking another completion).
 
 Test runtime files.
 Start with filetype detection: testdir/test_filetype.vim
@@ -3695,6 +3707,7 @@
     Alternative: Make a function for Ex commands: cmd_edit().
 -   Add COLUMN NUMBERS to ":" commands ":line1,line2[col1,col2]cmd".  Block
     can be selected with CTRL-V.  Allow '$' (end of line) for col2.
+    (issue #3292)
 -   ECLIPSE plugin.  Problem is: the interface is very complicated.  Need to
     implement part in Java and then connect to Vim.  Some hints from Alexandru
     Roman, 2004 Dec 15.  Should then also work with Oracle Jdeveloper, see JSR
diff --git a/runtime/doc/usr_23.txt b/runtime/doc/usr_23.txt
index c09e5b9..63cf315 100644
--- a/runtime/doc/usr_23.txt
+++ b/runtime/doc/usr_23.txt
@@ -208,15 +208,17 @@
 
 LIMITS ON ENCRYPTION
 
-The encryption algorithm used by Vim is weak.  It is good enough to keep out
-the casual prowler, but not good enough to keep out a cryptology expert with
-lots of time on his hands.  Also you should be aware that the swap file is not
-encrypted; so while you are editing, people with superuser privileges can read
-the unencrypted text from this file.
-   One way to avoid letting people read your swap file is to avoid using one.
-If the -n argument is supplied on the command line, no swap file is used
-(instead, Vim puts everything in memory).  For example, to edit the encrypted
-file "file.txt" without a swap file use the following command: >
+The encryption algorithm used by Vim is not very strong.  It is good enough to
+keep out the casual prowler, but not good enough to keep out a cryptology
+expert with lots of time on his hands.  The text in the swap file and the undo
+file is also encrypted.  However, this is done block-by-block and may reduce
+the time needed to crack a password.  You can disable the swap file, but then
+a crash will cause you to lose your work, since Vim keeps all the text in
+memory only.  The undo file can be disabled with the only disadvantage that
+you can't undo after unloading the buffer.
+   To avoid using a swap file, supply the -n argument on the command line.
+For example, to edit the encrypted file "file.txt" without a swap file use the
+following command: >
 
 	vim -x -n file.txt
 
diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt
index dea6a18..824efe7 100644
--- a/runtime/doc/windows.txt
+++ b/runtime/doc/windows.txt
@@ -81,6 +81,10 @@
 functions can be used to convert between the window/tab number and the
 identifier.  There is also the window number, which may change whenever
 windows are opened or closed, see |winnr()|.
+The window number is only valid in one specific tab.  The window ID is valid
+across tabs.  For most functions that take a window ID or a window number, the
+window number only applies to the current tab, while the window ID can refer
+to a window in any tab.
 
 Each buffer has a unique number and the number will not change within a Vim
 session.  The |bufnr()| and |bufname()| functions can be used to convert
diff --git a/runtime/doc/xxd-fr.1 b/runtime/doc/xxd-fr.1
index be78085..a50336e 100644
--- a/runtime/doc/xxd-fr.1
+++ b/runtime/doc/xxd-fr.1
@@ -258,7 +258,7 @@
 .br
 0000030: 2e5c 220a 2e5c 2220 3231 7374  .\"..\" 21st
 .br
-000003c: 204d 6179 2031 3939 360a 2e5c   May 1996..\
+000003c: 204d 6179 2031 3939 360a 2e5c   May 1996..\\
 .br
 0000048: 2220 4d61 6e20 7061 6765 2061  " Man page a
 .br
diff --git a/runtime/doc/xxd-fr.UTF-8.1 b/runtime/doc/xxd-fr.UTF-8.1
index 7956b3b..c00eff8 100644
--- a/runtime/doc/xxd-fr.UTF-8.1
+++ b/runtime/doc/xxd-fr.UTF-8.1
@@ -258,7 +258,7 @@
 .br
 0000030: 2e5c 220a 2e5c 2220 3231 7374  .\"..\" 21st
 .br
-000003c: 204d 6179 2031 3939 360a 2e5c   May 1996..\
+000003c: 204d 6179 2031 3939 360a 2e5c   May 1996..\\
 .br
 0000048: 2220 4d61 6e20 7061 6765 2061  " Man page a
 .br
diff --git a/runtime/doc/xxd-it.1 b/runtime/doc/xxd-it.1
index 3d8dabb..1fb4ae5 100755
--- a/runtime/doc/xxd-it.1
+++ b/runtime/doc/xxd-it.1
@@ -257,15 +257,15 @@
 .br
 0000018: 224d 616e 7561 6c20 7061 6765  "Manual page
 .br
-0000024: 2066 6f72 2078 7864 220a 2e5c   for xxd"..\
+0000024: 2066 6f72 2078 7864 220a 2e5c   for xxd"..\\
 .br
-0000030: 220a 2e5c 2220 3231 7374 204d  "..\" 21st M
+0000030: 220a 2e5c 2220 3231 7374 204d  "..\\" 21st M
 .br
-000003c: 6179 2031 3939 360a 2e5c 2220  ay 1996..\" 
+000003c: 6179 2031 3939 360a 2e5c 2220  ay 1996..\\" 
 .br
 0000048: 4d61 6e20 7061 6765 2061 7574  Man page aut
 .br
-0000054: 686f 723a 0a2e 5c22 2020 2020  hor:..\"    
+0000054: 686f 723a 0a2e 5c22 2020 2020  hor:..\\"    
 .br
 0000060: 546f 6e79 204e 7567 656e 7420  Tony Nugent 
 .br
diff --git a/runtime/doc/xxd-it.UTF-8.1 b/runtime/doc/xxd-it.UTF-8.1
index b6ccabd..8b0d53e 100644
--- a/runtime/doc/xxd-it.UTF-8.1
+++ b/runtime/doc/xxd-it.UTF-8.1
@@ -257,15 +257,15 @@
 .br
 0000018: 224d 616e 7561 6c20 7061 6765  "Manual page
 .br
-0000024: 2066 6f72 2078 7864 220a 2e5c   for xxd"..\
+0000024: 2066 6f72 2078 7864 220a 2e5c   for xxd"..\\
 .br
-0000030: 220a 2e5c 2220 3231 7374 204d  "..\" 21st M
+0000030: 220a 2e5c 2220 3231 7374 204d  "..\\" 21st M
 .br
-000003c: 6179 2031 3939 360a 2e5c 2220  ay 1996..\" 
+000003c: 6179 2031 3939 360a 2e5c 2220  ay 1996..\\" 
 .br
 0000048: 4d61 6e20 7061 6765 2061 7574  Man page aut
 .br
-0000054: 686f 723a 0a2e 5c22 2020 2020  hor:..\"    
+0000054: 686f 723a 0a2e 5c22 2020 2020  hor:..\\"    
 .br
 0000060: 546f 6e79 204e 7567 656e 7420  Tony Nugent 
 .br
diff --git a/runtime/indent/html.vim b/runtime/indent/html.vim
index 6c86659..bece661 100644
--- a/runtime/indent/html.vim
+++ b/runtime/indent/html.vim
@@ -625,7 +625,7 @@
     return eval(b:hi_css1indent)
   endif
 
-  " If the current line starts with "}" align with it's match.
+  " If the current line starts with "}" align with its match.
   if curtext =~ '^\s*}'
     call cursor(v:lnum, 1)
     try
diff --git a/runtime/indent/raml.vim b/runtime/indent/raml.vim
new file mode 100644
index 0000000..73756ae
--- /dev/null
+++ b/runtime/indent/raml.vim
@@ -0,0 +1,12 @@
+" Vim indent file
+" Language:         RAML (RESTful API Modeling Language)
+" Maintainer:       mucheng <leisurelicht@gmail.com>
+" License:          VIM LICENSE
+" Latest Revision:  2018-11-03
+
+if exists("b:did_indent")
+  finish
+endif
+
+" Same as yaml indenting.
+runtime! indent/yaml.vim
diff --git a/runtime/indent/testdir/README.txt b/runtime/indent/testdir/README.txt
index 8efd34e..28c1628 100644
--- a/runtime/indent/testdir/README.txt
+++ b/runtime/indent/testdir/README.txt
@@ -22,8 +22,12 @@
 	endfunc
 	" END_INDENT
 
-- Optionally, a line with INDENT_EXE, followed by a Vim command.  This will be
-  executed before indenting the lines.  Example:
+  If you just want to test normal indenting with default options, you can make
+  this a large number of lines.  Just add all kinds of language constructs,
+  nested statements, etc. with valid syntax.
+
+- Optionally, add lines with INDENT_EXE after START_INDENT, followed by a Vim
+  command.  This will be executed before indenting the lines.  Example:
 
 	" START_INDENT
 	" INDENT_EXE let g:vim_indent_cont = 6
@@ -36,8 +40,8 @@
   the next block of lines.
 
 - Alternatively to indenting all the lines between START_INDENT and
-  END_INDENT, use a INDENT_AT line, which specifies a pattern to find the line
-  to indent.  Example:
+  END_INDENT, use an INDENT_AT line, which specifies a pattern to find the
+  line to indent.  Example:
 
 	" START_INDENT
 	" INDENT_AT  this-line
@@ -47,7 +51,8 @@
 	" END_INDENT
 
   Alternatively you can use INDENT_NEXT to indent the line below the matching
-  pattern:
+  pattern.  Keep in mind that quite often it will indent relative to the
+  matching line:
 
 	" START_INDENT
 	" INDENT_NEXT  next-line
@@ -84,7 +89,7 @@
 Check the contents of the FILETYPE.fail file.  If it is perfectly OK, then
 rename it to overwrite the FILETYPE.ok file. If you now run "make test" again,
 the test will pass and create a FILETYPE.out file, which is identical to the
-FILETYPE.ok file.
+FILETYPE.ok file.  The FILETYPE.fail file will be deleted.
 
 If you try to run "make test" again you will notice that nothing happens,
 because the FILETYPE.out file already exists.  Delete it, or do "make clean",
diff --git a/runtime/indent/xml.vim b/runtime/indent/xml.vim
index dcafb46..7afcc89 100644
--- a/runtime/indent/xml.vim
+++ b/runtime/indent/xml.vim
@@ -2,7 +2,9 @@
 " Repository:   https://github.com/chrisbra/vim-xml-ftplugin
 " Maintainer:	Christian Brabandt <cb@256bit.org>
 " Previous Maintainer:	Johannes Zellner <johannes@zellner.org>
-" Last Change:	20180724 - Correctly indent xml comments https://github.com/vim/vim/issues/3200
+" Last Change:	20181022 - Do not overwrite indentkeys setting
+"                          https://github.com/chrisbra/vim-xml-ftplugin/issues/1
+"             	20180724 - Correctly indent xml comments https://github.com/vim/vim/issues/3200
 " Notes:	1) does not indent pure non-xml code (e.g. embedded scripts)
 "		2) will be confused by unbalanced tags in comments
 "		or CDATA sections.
@@ -19,7 +21,7 @@
 
 " [-- local settings (must come before aborting the script) --]
 setlocal indentexpr=XmlIndentGet(v:lnum,1)
-setlocal indentkeys=o,O,*<Return>,<>>,<<>,/,{,}
+setlocal indentkeys=o,O,*<Return>,<>>,<<>,/,{,},!^F
 
 if !exists('b:xml_indent_open')
     let b:xml_indent_open = '.\{-}<\a'
diff --git a/runtime/macros/life/life.vim b/runtime/macros/life/life.vim
index 552a493..4c7e5ca 100644
--- a/runtime/macros/life/life.vim
+++ b/runtime/macros/life/life.vim
Binary files differ
diff --git a/runtime/syntax/debchangelog.vim b/runtime/syntax/debchangelog.vim
index edaaf61..ce03395 100644
--- a/runtime/syntax/debchangelog.vim
+++ b/runtime/syntax/debchangelog.vim
@@ -3,7 +3,7 @@
 " Maintainer:  Debian Vim Maintainers
 " Former Maintainers: Gerfried Fuchs <alfie@ist.org>
 "                     Wichert Akkerman <wakkerma@debian.org>
-" Last Change: 2018 May 03
+" Last Change: 2018 Oct 30
 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debchangelog.vim
 
 " Standard syntax initialization
@@ -21,7 +21,7 @@
 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|bionic|cosmic)%(-%(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|cosmic|disco)%(-%(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\+\)*"
diff --git a/runtime/syntax/debsources.vim b/runtime/syntax/debsources.vim
index 74e8d42..4b21941 100644
--- a/runtime/syntax/debsources.vim
+++ b/runtime/syntax/debsources.vim
@@ -2,7 +2,7 @@
 " Language:     Debian sources.list
 " Maintainer:   Debian Vim Maintainers
 " Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
-" Last Change: 2018 Aug 11
+" Last Change: 2018 Oct 30
 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim
 
 " Standard syntax initialization
@@ -25,7 +25,7 @@
       \ 'oldstable', 'stable', 'testing', 'unstable', 'experimental',
       \ 'wheezy', 'jessie', 'stretch', 'sid', 'rc-buggy',
       \
-      \ 'trusty', 'xenial', 'bionic', 'cosmic', 'devel'
+      \ 'trusty', 'xenial', 'bionic', 'cosmic', 'disco', 'devel'
       \ ]
 let s:unsupported = [
       \ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato',
diff --git a/runtime/syntax/raml.vim b/runtime/syntax/raml.vim
new file mode 100644
index 0000000..062a71c
--- /dev/null
+++ b/runtime/syntax/raml.vim
@@ -0,0 +1,106 @@
+" Vim syntax file
+" Language:    RAML (RESTful API Modeling Language)
+" Maintainer:  Eric Hopkins <eric.on.tech@gmail.com>
+" URL:         https://github.com/in3d/vim-raml
+" License:     Same as Vim
+" Last Change: 2018-11-03
+
+if exists("b:current_syntax")
+  finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn keyword ramlTodo            contained TODO FIXME XXX NOTE
+
+syn region  ramlComment         display oneline start='\%(^\|\s\)#' end='$'
+                                \ contains=ramlTodo,@Spell
+
+syn region  ramlVersion         display oneline start='#%RAML' end='$'
+
+syn match   ramlNodeProperty    '!\%(![^\\^%     ]\+\|[^!][^:/   ]*\)'
+
+syn match   ramlAnchor          '&.\+'
+
+syn match   ramlAlias           '\*.\+'
+
+syn match   ramlDelimiter       '[-,:]'
+syn match   ramlBlock           '[\[\]{}>|]'
+syn match   ramlOperator        '[?+-]'
+syn match   ramlKey             '\h\+\(?\)\?\ze\s*:'
+syn match   ramlKey             '\w\+\(\s\+\w\+\)*\(?\)\?\ze\s*:'
+syn match   routeKey            '\/\w\+\(\s\+\w\+\)*\ze\s*:'
+syn match   routeKey            'application\/\w\+\ze\s*:'
+syn match   routeParamKey       '\/{\w\+}*\ze\s*:'
+
+syn region  ramlString          matchgroup=ramlStringDelimiter
+                                \ start=+\s"+ skip=+\\"+ end=+"+
+                                \ contains=ramlEscape
+syn region  ramlString          matchgroup=ramlStringDelimiter
+                                \ start=+\s'+ skip=+''+ end=+'+
+                                \ contains=ramlStringEscape
+syn region  ramlParameter       matchgroup=ramlParameterDelimiter
+                                \ start=+<<+ skip=+''+ end=+>>+
+syn match   ramlEscape          contained display +\\[\\"abefnrtv^0_ NLP]+
+syn match   ramlEscape          contained display '\\x\x\{2}'
+syn match   ramlEscape          contained display '\\u\x\{4}'
+syn match   ramlEscape          contained display '\\U\x\{8}'
+syn match   ramlEscape          display '\\\%(\r\n\|[\r\n]\)'
+syn match   ramlStringEscape    contained +''+
+
+syn match   ramlNumber          display
+                                \ '\<[+-]\=\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\='
+syn match   ramlNumber          display '0\o\+'
+syn match   ramlNumber          display '0x\x\+'
+syn match   ramlNumber          display '([+-]\=[iI]nf)'
+syn match   ramlNumber          display '(NaN)'
+
+syn match   ramlConstant        '\<[~yn]\>'
+syn keyword ramlConstant        true True TRUE false False FALSE
+syn keyword ramlConstant        yes Yes on ON no No off OFF
+syn keyword ramlConstant        null Null NULL nil Nil NIL
+
+syn keyword httpVerbs           get post put delete head patch options
+syn keyword ramlTypes           string number integer date boolean file
+
+syn match   ramlTimestamp       '\d\d\d\d-\%(1[0-2]\|\d\)-\%(3[0-2]\|2\d\|1\d\|\d\)\%( \%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d [+-]\%([01]\d\|2[0-3]\):[0-5]\d\|t\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d[+-]\%([01]\d\|2[0-3]\):[0-5]\d\|T\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\dZ\)\='
+
+syn region  ramlDocumentHeader  start='---' end='$' contains=ramlDirective
+syn match   ramlDocumentEnd     '\.\.\.'
+
+syn match   ramlDirective       contained '%[^:]\+:.\+'
+
+hi def link ramlVersion            String
+hi def link routeInterpolation     String
+hi def link ramlInterpolation      Constant
+hi def link ramlTodo               Todo
+hi def link ramlComment            Comment
+hi def link ramlDocumentHeader     PreProc
+hi def link ramlDocumentEnd        PreProc
+hi def link ramlDirective          Keyword
+hi def link ramlNodeProperty       Type
+hi def link ramlAnchor             Type
+hi def link ramlAlias              Type
+hi def link ramlBlock              Operator
+hi def link ramlOperator           Operator
+hi def link routeParamKey          SpecialChar
+hi def link ramlKey                Identifier
+hi def link routeKey               SpecialChar
+hi def link ramlParameterDelimiter Type
+hi def link ramlParameter          Type
+hi def link ramlString             String
+hi def link ramlStringDelimiter    ramlString
+hi def link ramlEscape             SpecialChar
+hi def link ramlStringEscape       SpecialChar
+hi def link ramlNumber             Number
+hi def link ramlConstant           Constant
+hi def link ramlTimestamp          Number
+hi def link httpVerbs              Statement
+hi def link ramlTypes              Type
+hi def link ramlDelimiter          Delimiter
+
+let b:current_syntax = "raml"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/tools/ccfilter.1 b/runtime/tools/ccfilter.1
index e3de38d..92fe624 100644
--- a/runtime/tools/ccfilter.1
+++ b/runtime/tools/ccfilter.1
@@ -23,7 +23,7 @@
 display them !
 
 When working on different platforms, and with different compilers,
-ccfilter eases the utilization of quickfix, due to it's standardized
+ccfilter eases the utilization of quickfix, due to its standardized
 output, allowing to have in .vimrc a plain
 .br
 .B \ \ \ \ :set\ errorformat=%f:%l:%c:%t:%m