diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index b9c61cd..e5e699e 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.0.  Last change: 2018 Apr 30
+*todo.txt*      For Vim version 8.0.  Last change: 2018 May 05
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -40,6 +40,10 @@
 
 Problem with sudo. #2758
 
+Looks like an error for inserting register makes ":file other" not work.
+(Tom M, 2018 Mar 28)  Reset did_emsg after inserting a register.
+Or at the top of the loop? (Apr 4)
+
 Make assert_functions return non-zero on failure.  Make sure they add one
 entry to v:errors then.
 Use WaitForAssert() in tests: give error when failed.
@@ -52,23 +56,19 @@
 Errors found with random data:
     heap-buffer-overflow in alist_add (#2472)
 
-Patch to shorten filenames in quickfix window. (Yegappan, 2018 Apr 28, #2851,
-closes #2846)
-
 More warnings from static analysis:
 https://lgtm.com/projects/g/vim/vim/alerts/?mode=list
 
-Looks like an error for inserting register makes ":file other" not work.
-(Tom M, 2018 Mar 28)  Reset did_emsg after inserting a register.
-Or at the top of the loop? (Apr 4)
-
-Patch to add "module" to quickfix entries. (Marcin Szamotulski, Coot, 2017 Jun
-8, #1757)  Now part of #2322.  Or #2327?  #1757 was re-opened, include that
-first.
-
 When opening foo/x.txt and bar/x.txt get swap file warning.  Should check the
 file name. (Juergen Weigert)
 
+Script generated by :mksession does not work well if there are windows with
+modified buffers
+  change "silent only" into "silent only!"
+  change "edit fname" of first buffer to "hide edit fname"
+  skip "badd fname" if "fname" is already in the buffer list
+  remove remark about unloading buffers from documentation
+
 Compiler warnings (geeknik, 2017 Oct 26):
 - signed integer overflow in do_sub() (#2249)
 - signed integer overflow in get_address() (#2248)
@@ -87,9 +87,6 @@
 Add a ModeChanged autocommand that has an argument indicating the old and new
 mode.  Also used for switching Terminal mode.
 
-Patch to shorten filenames in quickfix window. (Yegappan Lakshmanan, 2018
-Apr 27)
-
 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
 used for git temp files.
@@ -99,9 +96,28 @@
 Add an option similar to 'lazyredraw' to skip redrawing while executing a
 script or function.
 
-Alternative manpager.vim. (Enno, 2018 Jan 5, #2529)
+MS-Windows: write may fail if another program is reading the file.
+If 'readonly' is not set but the file appears to be readonly later, try again
+(wait a little while).
+CreateFile() returns ERROR_SHARING_VIOLATION (Linwei, 2018 May 5)
 
-Patch to add more flags to :ls. (Marcin Szamotulski, #2751)
+Should add a test for every command line argument.  Check coverage for what is
+missing: --nofork, -A , -b, -h, etc.
+
+Improve the installer for MS-Windows.  There are a few alternatives:
+- Add silent install option. (Shane Lee, #751)
+- Installer from Cream (Steve Hall).
+- Modern UI 2.0 for the Nsis installer. (Guopeng Wen)
+    https://github.com/gpwen/vim-installer-mui2
+-  make it possible to do a silent install, see
+    http://nsis.sourceforge.net/Docs/Chapter4.html#4.12
+    Version from Guopeng Wen does this.
+- MSI installer: https://github.com/petrkle/vim-msi/
+- The one on Issue 279.
+Problem: they all work slightly different (e.g. don't install vimrun.exe).
+How to test that it works well for all Vim users?
+
+Alternative manpager.vim. (Enno, 2018 Jan 5, #2529)
 
 Does setting 'cursorline' cause syntax highlighting to slow down?  Perhaps is
 mess up the cache?  (Mike Lee Williams, 2018 Jan 27, #2539)
@@ -110,6 +126,8 @@
 When using :packadd files under "later" are not used, which is inconsistent
 with packages under "start". (xtal8, #1994)
 
+Patch to support "xxd -ps". (Erik Auerswald, 2018 May 1)
+
 Column number is wrong when using 'linebreak' and 'wrap'. (Keith Smiley, 2018
 Jan 15, #2555)
 
@@ -117,8 +135,9 @@
 
 Check argument of systemlist(). (Pavlov)
 
-Patch to support 256 colors in Windows console. (Nobuhiro Takasaki, 2018 Apr
-25, #2821)
+Can we make ":unlet $VAR" use unsetenv() to delete the env var?
+What for systems that don't have unsetenv()?  (Issue #1116)
+Patch in #2855, (Yasuhiro Matsumoto)
 
 Patch to add reg_executing() and reg_recording(). (Hirohito Higashi, #2745)
 
@@ -1216,9 +1235,6 @@
 right-mouse-drag on the status line to move a window up/down without changing
 its height?  It's like dragging the status bar above it at the same time.
 
-Can we make ":unlet $VAR" use unsetenv() to delete the env var?
-What for systems that don't have unsetenv()?  (Issue #1116)
-
 Patch to add a :domodeline command. (Christian Brabandt, 2014 Oct 21)
 
 This does not give an error: (Andre Sihera, 2014 Mar 21)
@@ -1383,19 +1399,6 @@
 
 Dialog is too big on Linux too. (David Fishburn, 2013 Sep 2)
 
-Improve the installer for MS-Windows.  There are a few alternatives:
-- Add silent install option. (Shane Lee, #751)
-- Installer from Cream (Steve Hall).
-- Modern UI 2.0 for the Nsis installer. (Guopeng Wen)
-    https://github.com/gpwen/vim-installer-mui2
--  make it possible to do a silent install, see
-    http://nsis.sourceforge.net/Docs/Chapter4.html#4.12
-    Version from Guopeng Wen does this.
-- MSI installer: https://github.com/petrkle/vim-msi/
-- The one on Issue 279.
-Problem: they all work slightly different (e.g. don't install vimrun.exe).
-How to test that it works well for all Vim users?
-
 Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
 
 -   Add regex for 'paragraphs' and 'sections': 'parare' and 'sectre'.  Combine
