Michael Schaap wrote: > When editing a read-only file, ":confirm w" only works the first time > you use it in a session. The second time you try to use it, you simply > get an error message, as if you didn't use ":confirm". > The same problem occurs when using ":set confirm". > > To recreate: > > $ echo Hello > hello.txt > $ chmod 400 hello.txt > $ vim -u NONE hello.txt > :set nocompatible " or you won't be able to overwrite at all > A, World<Esc> > :confirm w > 'readonly' option is set for "qq". > Do you wish to write anyway? > (Y)es, [N]o: y > A!<Esc> > :confirm w > E505: "qq" is read-only (add ! to override) > > This is using 7.0.203, but it has been happening for quite a while. An > old 6.3 does the same thing. > > Michael
What happens when 'readonly' is set is that the ":confirm" asks you if you want to override it. If you select "yes" then it will behave as if you did ":w!". If you do the same with 'readonly' off you don't get the prompt, but writing fails for ":w", only ":w!" works. Note that when 'readonly' is set then ":w" results in E45, while a read-only file gives E505. They are two different things, but both are overruled with ":w!". We don't have a separate "!" for each situation. Perhaps the E505 should also trigger ":confirm w" to ask for writing anyway. That's more difficult, but would be what you expect. -- hundred-and-one symptoms of being an internet addict: 222. You send more than 20 personal e-mails a day. /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ download, build and distribute -- http://www.A-A-P.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///