Hi,
I noticed a problem with the fileformats option not being applied to the
initial buffer when VIM is started without any initial buffer content.
I mainly work on Windows and have fileformats=unix,dos so the default
file format to be unix line-endings. However VIM on Windows starts new
empty initial buffers with dos line-endings but if I start a new buffer
with :new or :e with the name of file that did not exist then the
fileformat is set to unix line-endings.
The following patch applies fileformats to the initial buffer created by
VIM. I have been using it for the last 9 months without any obvious
issues. I have tested a couple of ways of feeding data into the initial
buffer (such as C:> dir | vim -) and it does what I would expect. So
can anyone see any issues with this patch?
diff --git a/src/option.c b/src/option.c
--- a/src/option.c
+++ b/src/option.c
@@ -3845,6 +3845,7 @@ term_bg_default(void)
void
set_init_3(void)
{
+ int idx_ffs;
#if defined(UNIX) || defined(WIN3264)
/*
* Set 'shellpipe' and 'shellredir', depending on the 'shell' option.
@@ -4017,6 +4018,12 @@ set_init_3(void)
}
#endif
+ idx_ffs = findoption((char_u *)"ffs");
+ if (idx_ffs >= 0 && (options[idx_ffs].flags & P_WAS_SET))
+ {
+ set_fileformat(default_fileformat(), OPT_LOCAL);
+ }
+
#ifdef FEAT_TITLE
set_title_defaults();
#endif
TTFN
Mike
--
Computer modellers simulate it first.
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.