mirror of
https://github.com/vim/vim
synced 2025-07-16 01:01:58 +00:00
patch 8.2.2905: no error when defaults.vim cannot be loaded
Problem: No error when defaults.vim cannot be loaded. Solution: Add an error message. (Christian Brabandt, closes #8248)
This commit is contained in:
committed by
Bram Moolenaar
parent
74ede80aeb
commit
1d3a14ecf0
@ -1036,7 +1036,7 @@ giving the mapping.
|
||||
|
||||
|
||||
Defaults without a .vimrc file ~
|
||||
*defaults.vim*
|
||||
*defaults.vim* *E1187*
|
||||
If Vim is started normally and no user vimrc file is found, the
|
||||
$VIMRUNTIME/defaults.vim script is loaded. This will set 'compatible' off,
|
||||
switch on syntax highlighting and a few more things. See the script for
|
||||
|
@ -413,3 +413,5 @@ EXTERN char e_missing_redir_end[]
|
||||
INIT(= N_("E1185: Missing :redir END"));
|
||||
EXTERN char e_expression_does_not_result_in_value_str[]
|
||||
INIT(= N_("E1186: Expression does not result in a value: %s"));
|
||||
EXTERN char e_failed_to_source_defaults[]
|
||||
INIT(= N_("E1187: Failed to source defaults.vim"));
|
||||
|
10
src/main.c
10
src/main.c
@ -3128,7 +3128,11 @@ source_startup_scripts(mparm_T *parmp)
|
||||
if (parmp->use_vimrc != NULL)
|
||||
{
|
||||
if (STRCMP(parmp->use_vimrc, "DEFAULTS") == 0)
|
||||
do_source((char_u *)VIM_DEFAULTS_FILE, FALSE, DOSO_NONE, NULL);
|
||||
{
|
||||
if (do_source((char_u *)VIM_DEFAULTS_FILE, FALSE, DOSO_NONE, NULL)
|
||||
!= OK)
|
||||
emsg(e_failed_to_source_defaults);
|
||||
}
|
||||
else if (STRCMP(parmp->use_vimrc, "NONE") == 0
|
||||
|| STRCMP(parmp->use_vimrc, "NORC") == 0)
|
||||
{
|
||||
@ -3200,7 +3204,9 @@ source_startup_scripts(mparm_T *parmp)
|
||||
&& !has_dash_c_arg)
|
||||
{
|
||||
// When no .vimrc file was found: source defaults.vim.
|
||||
do_source((char_u *)VIM_DEFAULTS_FILE, FALSE, DOSO_NONE, NULL);
|
||||
if (do_source((char_u *)VIM_DEFAULTS_FILE, FALSE, DOSO_NONE,
|
||||
NULL) == FAIL)
|
||||
emsg(e_failed_to_source_defaults);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -276,6 +276,19 @@ func Test_V_arg()
|
||||
call assert_match("sourcing \"$VIMRUNTIME[\\/]defaults\.vim\"\r\nline 1: \" The default vimrc file\..* verbose=15\n", out)
|
||||
endfunc
|
||||
|
||||
" Test that an error is shown when the defaults.vim file could not be read
|
||||
func Test_defaults_error()
|
||||
" Can't catch the output of gvim.
|
||||
CheckNotGui
|
||||
CheckNotMSWindows
|
||||
|
||||
let out = system('VIMRUNTIME=/tmp ' .. GetVimCommand() .. ' --clean -cq')
|
||||
call assert_match("E1187: Failed to source defaults.vim", out)
|
||||
|
||||
let out = system('VIMRUNTIME=/tmp ' .. GetVimCommand() .. ' -u DEFAULTS -cq')
|
||||
call assert_match("E1187: Failed to source defaults.vim", out)
|
||||
endfunc
|
||||
|
||||
" Test the '-q [errorfile]' argument.
|
||||
func Test_q_arg()
|
||||
CheckFeature quickfix
|
||||
|
@ -750,6 +750,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
2905,
|
||||
/**/
|
||||
2904,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user