mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	| @@ -6177,6 +6177,7 @@ A jump table for the options with a short description can be found at |Q_op|. | ||||
| 	   split	If included, split the current window before loading | ||||
| 			a buffer for a |quickfix| command that display errors. | ||||
| 			Otherwise: do not split, use current window. | ||||
| 	   vsplit	Just like "split" but split vertically. | ||||
| 	   newtab	Like "split", but open a new tab page.  Overrules | ||||
| 			"split" when both are present. | ||||
|  | ||||
|   | ||||
| @@ -1601,21 +1601,28 @@ int buflist_getfile(int n, linenr_T lnum, int options, int forceit) | ||||
|     col = 0; | ||||
|  | ||||
|   if (options & GETF_SWITCH) { | ||||
|     /* If 'switchbuf' contains "useopen": jump to first window containing | ||||
|      * "buf" if one exists */ | ||||
|     if (swb_flags & SWB_USEOPEN) | ||||
|     // If 'switchbuf' contains "useopen": jump to first window containing | ||||
|     // "buf" if one exists | ||||
|     if (swb_flags & SWB_USEOPEN) { | ||||
|       wp = buf_jump_open_win(buf); | ||||
|     /* If 'switchbuf' contains "usetab": jump to first window in any tab | ||||
|      * page containing "buf" if one exists */ | ||||
|     if (wp == NULL && (swb_flags & SWB_USETAB)) | ||||
|     } | ||||
|  | ||||
|     // If 'switchbuf' contains "usetab": jump to first window in any tab | ||||
|     // page containing "buf" if one exists | ||||
|     if (wp == NULL && (swb_flags & SWB_USETAB)) { | ||||
|       wp = buf_jump_open_tab(buf); | ||||
|     /* If 'switchbuf' contains "split" or "newtab" and the current buffer | ||||
|      * isn't empty: open new window */ | ||||
|     if (wp == NULL && (swb_flags & (SWB_SPLIT | SWB_NEWTAB)) && !bufempty()) { | ||||
|       if (swb_flags & SWB_NEWTAB)               /* Open in a new tab */ | ||||
|     } | ||||
|  | ||||
|     // If 'switchbuf' contains "split", "vsplit" or "newtab" and the | ||||
|     // current buffer isn't empty: open new tab or window | ||||
|     if (wp == NULL && (swb_flags & (SWB_VSPLIT | SWB_SPLIT | SWB_NEWTAB)) | ||||
|         && !bufempty()) { | ||||
|       if (swb_flags & SWB_NEWTAB) { | ||||
|         tabpage_new(); | ||||
|       else if (win_split(0, 0) == FAIL)         /* Open in a new window */ | ||||
|       } else if (win_split(0, (swb_flags & SWB_VSPLIT) ? WSP_VERT : 0) | ||||
|                  == FAIL) { | ||||
|         return FAIL; | ||||
|       } | ||||
|       RESET_BINDING(curwin); | ||||
|     } | ||||
|   } | ||||
|   | ||||
| @@ -571,41 +571,43 @@ EXTERN char_u   *p_su;          // 'suffixes' | ||||
| EXTERN char_u   *p_swb;         // 'switchbuf' | ||||
| EXTERN unsigned swb_flags; | ||||
| #ifdef IN_OPTION_C | ||||
| static char *(p_swb_values[]) = {"useopen", "usetab", "split", "newtab", NULL}; | ||||
| static char *(p_swb_values[]) = | ||||
|   { "useopen", "usetab", "split", "newtab", "vsplit", NULL }; | ||||
| #endif | ||||
| #define SWB_USEOPEN             0x001 | ||||
| #define SWB_USETAB              0x002 | ||||
| #define SWB_SPLIT               0x004 | ||||
| #define SWB_NEWTAB              0x008 | ||||
| EXTERN int p_tbs;               /* 'tagbsearch' */ | ||||
| EXTERN long p_tl;               /* 'taglength' */ | ||||
| EXTERN int p_tr;                /* 'tagrelative' */ | ||||
| EXTERN char_u   *p_tags;        /* 'tags' */ | ||||
| EXTERN int p_tgst;              /* 'tagstack' */ | ||||
| EXTERN int p_tbidi;             /* 'termbidi' */ | ||||
| EXTERN int p_terse;             /* 'terse' */ | ||||
| EXTERN int p_to;                /* 'tildeop' */ | ||||
| EXTERN int p_timeout;           /* 'timeout' */ | ||||
| EXTERN long p_tm;               /* 'timeoutlen' */ | ||||
| EXTERN int p_title;             /* 'title' */ | ||||
| EXTERN long p_titlelen;         /* 'titlelen' */ | ||||
| EXTERN char_u   *p_titleold;    /* 'titleold' */ | ||||
| EXTERN char_u   *p_titlestring; /* 'titlestring' */ | ||||
| EXTERN char_u   *p_tsr;         /* 'thesaurus' */ | ||||
| EXTERN int p_ttimeout;          /* 'ttimeout' */ | ||||
| EXTERN long p_ttm;              /* 'ttimeoutlen' */ | ||||
| EXTERN char_u   *p_udir;        /* 'undodir' */ | ||||
| EXTERN long p_ul;               /* 'undolevels' */ | ||||
| EXTERN long p_ur;               /* 'undoreload' */ | ||||
| EXTERN long p_uc;               /* 'updatecount' */ | ||||
| EXTERN long p_ut;               /* 'updatetime' */ | ||||
| EXTERN char_u   *p_fcs;         /* 'fillchar' */ | ||||
| EXTERN char_u   *p_shada;       /* 'shada' */ | ||||
| EXTERN char_u   *p_vdir;        /* 'viewdir' */ | ||||
| EXTERN char_u   *p_vop;         /* 'viewoptions' */ | ||||
| EXTERN unsigned vop_flags;      /* uses SSOP_ flags */ | ||||
| EXTERN int p_vb;                /* 'visualbell' */ | ||||
| EXTERN char_u   *p_ve;          /* 'virtualedit' */ | ||||
| #define SWB_VSPLIT              0x010 | ||||
| EXTERN int p_tbs;               ///< 'tagbsearch' | ||||
| EXTERN long p_tl;               ///< 'taglength' | ||||
| EXTERN int p_tr;                ///< 'tagrelative' | ||||
| EXTERN char_u *p_tags;          ///< 'tags' | ||||
| EXTERN int p_tgst;              ///< 'tagstack' | ||||
| EXTERN int p_tbidi;             ///< 'termbidi' | ||||
| EXTERN int p_terse;             ///< 'terse' | ||||
| EXTERN int p_to;                ///< 'tildeop' | ||||
| EXTERN int p_timeout;           ///< 'timeout' | ||||
| EXTERN long p_tm;               ///< 'timeoutlen' | ||||
| EXTERN int p_title;             ///< 'title' | ||||
| EXTERN long p_titlelen;         ///< 'titlelen' | ||||
| EXTERN char_u *p_titleold;      ///< 'titleold' | ||||
| EXTERN char_u *p_titlestring;   ///< 'titlestring' | ||||
| EXTERN char_u *p_tsr;           ///< 'thesaurus' | ||||
| EXTERN int p_ttimeout;          ///< 'ttimeout' | ||||
| EXTERN long p_ttm;              ///< 'ttimeoutlen' | ||||
| EXTERN char_u *p_udir;          ///< 'undodir' | ||||
| EXTERN long p_ul;               ///< 'undolevels' | ||||
| EXTERN long p_ur;               ///< 'undoreload' | ||||
| EXTERN long p_uc;               ///< 'updatecount' | ||||
| EXTERN long p_ut;               ///< 'updatetime' | ||||
| EXTERN char_u *p_fcs;           ///< 'fillchar' | ||||
| EXTERN char_u *p_shada;         ///< 'shada' | ||||
| EXTERN char_u *p_vdir;          ///< 'viewdir' | ||||
| EXTERN char_u *p_vop;           ///< 'viewoptions' | ||||
| EXTERN unsigned vop_flags;      ///< uses SSOP_ flags | ||||
| EXTERN int p_vb;                ///< 'visualbell' | ||||
| EXTERN char_u *p_ve;            ///< 'virtualedit' | ||||
| EXTERN unsigned ve_flags; | ||||
| # ifdef IN_OPTION_C | ||||
| static char *(p_ve_values[]) = {"block", "insert", "all", "onemore", NULL}; | ||||
|   | ||||
| @@ -546,7 +546,7 @@ static int included_patches[] = { | ||||
|   745, | ||||
|   // 744 NA | ||||
|   // 743, | ||||
|   // 742, | ||||
|   742, | ||||
|   741, | ||||
|   740, | ||||
|   739, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Justin M. Keyes
					Justin M. Keyes