| To: vim_dev@googlegroups.com |
| Subject: Patch 7.4.742 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.4.742 |
| Problem: Cannot specify a vertical split when loading a buffer for a |
| quickfix command. |
| Solution: Add the "vsplit" value to 'switchbuf'. (Brook Hong) |
| Files: runtime/doc/options.txt, src/buffer.c, src/option.h |
| |
| |
| |
| |
| |
| *** 7058,7063 **** |
| --- 7067,7073 ---- |
| 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. |
| |
| |
| |
| |
| *** 2071,2087 **** |
| * "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)) |
| 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 */ |
| tabpage_new(); |
| ! else if (win_split(0, 0) == FAIL) /* Open in a new window */ |
| return FAIL; |
| RESET_BINDING(curwin); |
| } |
| --- 2071,2091 ---- |
| * "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)) |
| wp = buf_jump_open_tab(buf); |
| ! |
| ! /* 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, (swb_flags & SWB_VSPLIT) ? WSP_VERT : 0) |
| ! == FAIL) |
| return FAIL; |
| RESET_BINDING(curwin); |
| } |
| |
| |
| |
| *** 765,776 **** |
| EXTERN char_u *p_swb; /* 'switchbuf' */ |
| EXTERN unsigned swb_flags; |
| #ifdef IN_OPTION_C |
| ! static char *(p_swb_values[]) = {"useopen", "usetab", "split", "newtab", 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' */ |
| --- 765,777 ---- |
| EXTERN char_u *p_swb; /* 'switchbuf' */ |
| EXTERN unsigned swb_flags; |
| #ifdef IN_OPTION_C |
| ! 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 |
| + #define SWB_VSPLIT 0x010 |
| EXTERN int p_tbs; /* 'tagbsearch' */ |
| EXTERN long p_tl; /* 'taglength' */ |
| EXTERN int p_tr; /* 'tagrelative' */ |
| |
| |
| |
| *** 743,744 **** |
| --- 743,746 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 742, |
| /**/ |
| |
| -- |
| hundred-and-one symptoms of being an internet addict: |
| 116. You are living with your boyfriend who networks your respective |
| computers so you can sit in separate rooms and email each other |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |