To: vim_dev@googlegroups.com Subject: Patch 9.0.0263 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 9.0.0263 Problem: Too many #ifdefs. Solution: Make some functions always available. Files: src/buffer.c, src/change.c, src/ex_cmds2.c, src/fileio.c, src/netbeans.c, src/errors.h, src/ex_cmds.c, src/viminfo.c, src/window.c, src/drawscreen.c, src/session.c, src/bufwrite.c, src/evalbuffer.c, src/ex_docmd.c *** ../vim-9.0.0262/src/buffer.c 2022-08-25 13:54:13.453841129 +0100 --- src/buffer.c 2022-08-25 14:44:22.394538901 +0100 *************** *** 222,230 **** // Read the file if there is one. if (curbuf->b_ffname != NULL - #ifdef FEAT_QUICKFIX && !bt_quickfix(curbuf) - #endif && !bt_nofilename(curbuf) #ifdef FEAT_NETBEANS_INTG && netbeansReadFile --- 222,228 ---- *************** *** 1328,1338 **** return FAIL; } #ifdef FEAT_PROP_POPUP ! if ((flags & DOBUF_NOPOPUP) && bt_popup(buf) ! # ifdef FEAT_TERMINAL ! && !bt_terminal(buf) ! #endif ! ) return OK; #endif --- 1326,1332 ---- return FAIL; } #ifdef FEAT_PROP_POPUP ! if ((flags & DOBUF_NOPOPUP) && bt_popup(buf) && !bt_terminal(buf)) return OK; #endif *************** *** 1445,1455 **** { // Skip current and unlisted bufs. Also skip a quickfix // buffer, it might be deleted soon. ! if (buf == curbuf || !buf->b_p_bl ! #if defined(FEAT_QUICKFIX) ! || bt_quickfix(buf) ! #endif ! ) buf = NULL; else if (buf->b_ml.ml_mfp == NULL) { --- 1439,1445 ---- { // Skip current and unlisted bufs. Also skip a quickfix // buffer, it might be deleted soon. ! if (buf == curbuf || !buf->b_p_bl || bt_quickfix(buf)) buf = NULL; else if (buf->b_ml.ml_mfp == NULL) { *************** *** 1487,1496 **** } // in non-help buffer, try to skip help buffers, and vv if (buf->b_help == curbuf->b_help && buf->b_p_bl ! #if defined(FEAT_QUICKFIX) ! && !bt_quickfix(buf) ! #endif ! ) { if (buf->b_ml.ml_mfp != NULL) // found loaded buffer break; --- 1477,1483 ---- } // in non-help buffer, try to skip help buffers, and vv if (buf->b_help == curbuf->b_help && buf->b_p_bl ! && !bt_quickfix(buf)) { if (buf->b_ml.ml_mfp != NULL) // found loaded buffer break; *************** *** 1508,1518 **** if (buf == NULL) // No loaded buffer, find listed one { FOR_ALL_BUFFERS(buf) ! if (buf->b_p_bl && buf != curbuf ! #if defined(FEAT_QUICKFIX) ! && !bt_quickfix(buf) ! #endif ! ) break; } if (buf == NULL) // Still no buffer, just take one --- 1495,1501 ---- if (buf == NULL) // No loaded buffer, find listed one { FOR_ALL_BUFFERS(buf) ! if (buf->b_p_bl && buf != curbuf && !bt_quickfix(buf)) break; } if (buf == NULL) // Still no buffer, just take one *************** *** 1521,1530 **** buf = curbuf->b_next; else buf = curbuf->b_prev; - #if defined(FEAT_QUICKFIX) if (bt_quickfix(buf)) buf = NULL; - #endif } } --- 1504,1511 ---- *************** *** 1987,1995 **** && curbuf->b_ffname == NULL && curbuf->b_nwindows <= 1 && (curbuf->b_ml.ml_mfp == NULL || BUFEMPTY()) - #if defined(FEAT_QUICKFIX) && !bt_quickfix(curbuf) - #endif && !curbufIsChanged()); } --- 1968,1974 ---- *************** *** 3787,3801 **** vim_snprintf_add(buffer, IOSIZE, "\"%s%s%s%s%s%s", curbufIsChanged() ? (shortmess(SHM_MOD) ? " [+]" : _(" [Modified]")) : " ", ! (curbuf->b_flags & BF_NOTEDITED) ! #ifdef FEAT_QUICKFIX ! && !bt_dontwrite(curbuf) ! #endif ? _("[Not edited]") : "", ! (curbuf->b_flags & BF_NEW) ! #ifdef FEAT_QUICKFIX ! && !bt_dontwrite(curbuf) ! #endif ? new_file_message() : "", (curbuf->b_flags & BF_READERR) ? _("[Read errors]") : "", curbuf->b_p_ro ? (shortmess(SHM_RO) ? _("[RO]") --- 3766,3774 ---- vim_snprintf_add(buffer, IOSIZE, "\"%s%s%s%s%s%s", curbufIsChanged() ? (shortmess(SHM_MOD) ? " [+]" : _(" [Modified]")) : " ", ! (curbuf->b_flags & BF_NOTEDITED) && !bt_dontwrite(curbuf) ? _("[Not edited]") : "", ! (curbuf->b_flags & BF_NEW) && !bt_dontwrite(curbuf) ? new_file_message() : "", (curbuf->b_flags & BF_READERR) ? _("[Read errors]") : "", curbuf->b_p_ro ? (shortmess(SHM_RO) ? _("[RO]") *************** *** 5676,5702 **** return buf != NULL && buf->b_p_bt[0] == NUL; } - #if defined(FEAT_QUICKFIX) || defined(PROTO) /* * Return TRUE if "buf" is the quickfix buffer. */ int bt_quickfix(buf_T *buf) { return buf != NULL && buf->b_p_bt[0] == 'q'; ! } #endif - #if defined(FEAT_TERMINAL) || defined(PROTO) /* * Return TRUE if "buf" is a terminal buffer. */ int bt_terminal(buf_T *buf) { return buf != NULL && buf->b_p_bt[0] == 't'; ! } #endif /* * Return TRUE if "buf" is a help buffer. --- 5649,5679 ---- return buf != NULL && buf->b_p_bt[0] == NUL; } /* * Return TRUE if "buf" is the quickfix buffer. */ int bt_quickfix(buf_T *buf) { + #ifdef FEAT_QUICKFIX return buf != NULL && buf->b_p_bt[0] == 'q'; ! #else ! return FALSE; #endif + } /* * Return TRUE if "buf" is a terminal buffer. */ int bt_terminal(buf_T *buf) { + #if defined(FEAT_TERMINAL) return buf != NULL && buf->b_p_bt[0] == 't'; ! #else ! return FALSE; #endif + } /* * Return TRUE if "buf" is a help buffer. *************** *** 5764,5770 **** || buf->b_p_bt[0] == 'p'); } - #if defined(FEAT_QUICKFIX) || defined(PROTO) int bt_dontwrite_msg(buf_T *buf) { --- 5741,5746 ---- *************** *** 5775,5781 **** } return FALSE; } - #endif /* * Return TRUE if the buffer should be hidden, according to 'hidden', ":hide" --- 5751,5756 ---- *** ../vim-9.0.0262/src/change.c 2022-08-22 15:19:12.728328961 +0100 --- src/change.c 2022-08-25 14:33:39.491773548 +0100 *************** *** 100,110 **** // Create a swap file if that is wanted. // Don't do this for "nofile" and "nowrite" buffer types. ! if (curbuf->b_may_swap ! #ifdef FEAT_QUICKFIX ! && !bt_dontwrite(curbuf) ! #endif ! ) { int save_need_wait_return = need_wait_return; --- 100,106 ---- // Create a swap file if that is wanted. // Don't do this for "nofile" and "nowrite" buffer types. ! if (curbuf->b_may_swap && !bt_dontwrite(curbuf)) { int save_need_wait_return = need_wait_return; *** ../vim-9.0.0262/src/ex_cmds2.c 2022-06-13 21:36:48.000000000 +0100 --- src/ex_cmds2.c 2022-08-25 14:34:05.239718710 +0100 *************** *** 27,36 **** bufref_T bufref; if (!(p_aw || p_awa) || !p_write - #ifdef FEAT_QUICKFIX // never autowrite a "nofile" or "nowrite" buffer || bt_dontwrite(buf) - #endif || (!forceit && buf->b_p_ro) || buf->b_ffname == NULL) return FAIL; set_bufref(&bufref, buf); --- 27,34 ---- *** ../vim-9.0.0262/src/fileio.c 2022-08-14 14:16:07.987582278 +0100 --- src/fileio.c 2022-08-25 14:48:54.322151413 +0100 *************** *** 514,522 **** // Create a swap file now, so that other Vims are warned // that we are editing this file. Don't do this for a // "nofile" or "nowrite" buffer type. - #ifdef FEAT_QUICKFIX if (!bt_dontwrite(curbuf)) - #endif { check_need_swap(newfile); // SwapExists autocommand may mess things up --- 514,520 ---- *************** *** 595,603 **** // Create a swap file now, so that other Vims are warned that we are // editing this file. // Don't do this for a "nofile" or "nowrite" buffer type. - #ifdef FEAT_QUICKFIX if (!bt_dontwrite(curbuf)) - #endif { check_need_swap(newfile); if (!read_stdin && (curbuf != old_curbuf --- 593,599 ---- *************** *** 3407,3415 **** char_u *p; if (buf->b_fname != NULL - #ifdef FEAT_QUICKFIX && !bt_nofilename(buf) - #endif && !path_with_url(buf->b_fname) && (force || buf->b_sfname == NULL --- 3403,3409 ---- *** ../vim-9.0.0262/src/netbeans.c 2022-08-14 14:16:07.995582211 +0100 --- src/netbeans.c 2022-08-25 14:34:48.383628251 +0100 *************** *** 2152,2161 **** if (p_write && !buf->bufp->b_p_ro && buf->bufp->b_ffname != NULL ! #ifdef FEAT_QUICKFIX ! && !bt_dontwrite(buf->bufp) ! #endif ! ) { bufref_T bufref; --- 2152,2158 ---- if (p_write && !buf->bufp->b_p_ro && buf->bufp->b_ffname != NULL ! && !bt_dontwrite(buf->bufp)) { bufref_T bufref; *** ../vim-9.0.0262/src/errors.h 2022-08-23 21:41:12.008852903 +0100 --- src/errors.h 2022-08-25 14:36:12.855455742 +0100 *************** *** 954,962 **** INIT(= N_("E380: At bottom of quickfix stack")); EXTERN char e_at_top_of_quickfix_stack[] INIT(= N_("E381: At top of quickfix stack")); EXTERN char e_cannot_write_buftype_option_is_set[] INIT(= N_("E382: Cannot write, 'buftype' option is set")); - #endif EXTERN char e_invalid_search_string_str[] INIT(= N_("E383: Invalid search string: %s")); EXTERN char e_search_hit_top_without_match_for_str[] --- 954,962 ---- INIT(= N_("E380: At bottom of quickfix stack")); EXTERN char e_at_top_of_quickfix_stack[] INIT(= N_("E381: At top of quickfix stack")); + #endif EXTERN char e_cannot_write_buftype_option_is_set[] INIT(= N_("E382: Cannot write, 'buftype' option is set")); EXTERN char e_invalid_search_string_str[] INIT(= N_("E383: Invalid search string: %s")); EXTERN char e_search_hit_top_without_match_for_str[] *** ../vim-9.0.0262/src/ex_cmds.c 2022-08-14 14:16:07.987582278 +0100 --- src/ex_cmds.c 2022-08-25 14:54:22.753661923 +0100 *************** *** 1677,1688 **** (char *)opt, (char *)fname); } else ! vim_snprintf((char *)end, (size_t)(buflen - (end - buf)), ! #ifdef FEAT_QUICKFIX ! " %s %s", ! #else ! " %s%s", // " > %s" causes problems on Amiga ! #endif (char *)opt, (char *)fname); } --- 1677,1683 ---- (char *)opt, (char *)fname); } else ! vim_snprintf((char *)end, (size_t)(buflen - (end - buf)), " %s %s", (char *)opt, (char *)fname); } *************** *** 1947,1957 **** * and a file name is required. * "nofile" and "nowrite" buffers cannot be written implicitly either. */ ! if (!other && ( ! #ifdef FEAT_QUICKFIX ! bt_dontwrite_msg(curbuf) || ! #endif ! check_fname() == FAIL #ifdef UNIX || check_writable(curbuf->b_ffname) == FAIL #endif --- 1942,1948 ---- * and a file name is required. * "nofile" and "nowrite" buffers cannot be written implicitly either. */ ! if (!other && (bt_dontwrite_msg(curbuf) || check_fname() == FAIL #ifdef UNIX || check_writable(curbuf->b_ffname) == FAIL #endif *** ../vim-9.0.0262/src/viminfo.c 2022-01-31 14:42:58.000000000 +0000 --- src/viminfo.c 2022-08-25 14:45:35.150434165 +0100 *************** *** 434,445 **** { if (buf->b_fname == NULL || !buf->b_p_bl - #ifdef FEAT_QUICKFIX || bt_quickfix(buf) - #endif - #ifdef FEAT_TERMINAL || bt_terminal(buf) - #endif || removable(buf->b_ffname)) continue; --- 434,441 ---- *************** *** 1994,2004 **** static int skip_for_viminfo(buf_T *buf) { ! return ! #ifdef FEAT_TERMINAL ! bt_terminal(buf) || ! #endif ! removable(buf->b_ffname); } /* --- 1990,1996 ---- static int skip_for_viminfo(buf_T *buf) { ! return bt_terminal(buf) || removable(buf->b_ffname); } /* *** ../vim-9.0.0262/src/window.c 2022-08-14 14:16:08.003582142 +0100 --- src/window.c 2022-08-25 15:06:29.204531366 +0100 *************** *** 172,183 **** case 's': CHECK_CMDWIN; reset_VIsual_and_resel(); // stop Visual mode - #ifdef FEAT_QUICKFIX // When splitting the quickfix window open a new buffer in it, // don't replicate the quickfix buffer. if (bt_quickfix(curbuf)) goto newwindow; - #endif #ifdef FEAT_GUI need_mouse_correct = TRUE; #endif --- 172,181 ---- *************** *** 189,200 **** case 'v': CHECK_CMDWIN; reset_VIsual_and_resel(); // stop Visual mode - #ifdef FEAT_QUICKFIX // When splitting the quickfix window open a new buffer in it, // don't replicate the quickfix buffer. if (bt_quickfix(curbuf)) goto newwindow; - #endif #ifdef FEAT_GUI need_mouse_correct = TRUE; #endif --- 187,196 ---- *************** *** 228,236 **** case 'n': CHECK_CMDWIN; reset_VIsual_and_resel(); // stop Visual mode - #ifdef FEAT_QUICKFIX newwindow: - #endif if (Prenum) // window height vim_snprintf((char *)cbuf, sizeof(cbuf) - 5, "%ld", Prenum); --- 224,230 ---- *** ../vim-9.0.0262/src/drawscreen.c 2022-08-22 15:19:12.728328961 +0100 --- src/drawscreen.c 2022-08-25 14:44:32.394521175 +0100 *************** *** 482,492 **** len += (int)STRLEN(p + len); } #endif ! if (bufIsChanged(wp->w_buffer) ! #ifdef FEAT_TERMINAL ! && !bt_terminal(wp->w_buffer) ! #endif ! ) { vim_snprintf((char *)p + len, MAXPATHL - len, "%s", "[+]"); len += (int)STRLEN(p + len); --- 482,488 ---- len += (int)STRLEN(p + len); } #endif ! if (bufIsChanged(wp->w_buffer) && !bt_terminal(wp->w_buffer)) { vim_snprintf((char *)p + len, MAXPATHL - len, "%s", "[+]"); len += (int)STRLEN(p + len); *** ../vim-9.0.0262/src/session.c 2022-05-18 22:00:41.000000000 +0100 --- src/session.c 2022-08-25 14:49:27.698102795 +0100 *************** *** 148,158 **** && term_should_restore(wp->w_buffer); #endif if (wp->w_buffer->b_fname == NULL - #ifdef FEAT_QUICKFIX // When 'buftype' is "nofile" can't restore the window contents. ! || bt_nofilename(wp->w_buffer) ! #endif ! ) return (ssop_flags & SSOP_BLANK); if (bt_help(wp->w_buffer)) return (ssop_flags & SSOP_HELP); --- 148,155 ---- && term_should_restore(wp->w_buffer); #endif if (wp->w_buffer->b_fname == NULL // When 'buftype' is "nofile" can't restore the window contents. ! || bt_nofilename(wp->w_buffer)) return (ssop_flags & SSOP_BLANK); if (bt_help(wp->w_buffer)) return (ssop_flags & SSOP_HELP); *************** *** 374,383 **** # endif // Load the file. else if (wp->w_buffer->b_ffname != NULL ! # ifdef FEAT_QUICKFIX ! && !bt_nofilename(wp->w_buffer) ! # endif ! ) { // Editing a file in this buffer: use ":edit file". // This may have side effects! (e.g., compressed or network file). --- 371,377 ---- # endif // Load the file. else if (wp->w_buffer->b_ffname != NULL ! && !bt_nofilename(wp->w_buffer)) { // Editing a file in this buffer: use ":edit file". // This may have side effects! (e.g., compressed or network file). *************** *** 708,718 **** { if (!(only_save_windows && buf->b_nwindows == 0) && !(buf->b_help && !(ssop_flags & SSOP_HELP)) - #ifdef FEAT_TERMINAL // Skip terminal buffers: finished ones are not useful, others // will be resurrected and result in a new buffer. && !bt_terminal(buf) - #endif && buf->b_fname != NULL && buf->b_p_bl) { --- 702,710 ---- *************** *** 818,827 **** if (ses_do_win(wp) && wp->w_buffer->b_ffname != NULL && !bt_help(wp->w_buffer) ! #ifdef FEAT_QUICKFIX ! && !bt_nofilename(wp->w_buffer) ! #endif ! ) { if (need_tabnext && put_line(fd, "tabnext") == FAIL) goto fail; --- 810,816 ---- if (ses_do_win(wp) && wp->w_buffer->b_ffname != NULL && !bt_help(wp->w_buffer) ! && !bt_nofilename(wp->w_buffer)) { if (need_tabnext && put_line(fd, "tabnext") == FAIL) goto fail; *** ../vim-9.0.0262/src/bufwrite.c 2022-07-31 11:50:37.437635544 +0100 --- src/bufwrite.c 2022-08-25 14:48:22.618197300 +0100 *************** *** 742,750 **** && reset_changed && whole && buf == curbuf - #ifdef FEAT_QUICKFIX && !bt_nofilename(buf) - #endif && !filtering && (!append || vim_strchr(p_cpo, CPO_FNAMEAPP) != NULL) && vim_strchr(p_cpo, CPO_FNAMEW) != NULL) --- 742,748 ---- *************** *** 813,823 **** if (!(did_cmd = apply_autocmds_exarg(EVENT_FILEAPPENDCMD, sfname, sfname, FALSE, curbuf, eap))) { - #ifdef FEAT_QUICKFIX if (overwriting && bt_nofilename(curbuf)) nofile_err = TRUE; else - #endif apply_autocmds_exarg(EVENT_FILEAPPENDPRE, sfname, sfname, FALSE, curbuf, eap); } --- 811,819 ---- *************** *** 846,856 **** } else { - #ifdef FEAT_QUICKFIX if (overwriting && bt_nofilename(curbuf)) nofile_err = TRUE; else - #endif apply_autocmds_exarg(EVENT_BUFWRITEPRE, sfname, sfname, FALSE, curbuf, eap); } --- 842,850 ---- *************** *** 860,870 **** if (!(did_cmd = apply_autocmds_exarg(EVENT_FILEWRITECMD, sfname, sfname, FALSE, curbuf, eap))) { - #ifdef FEAT_QUICKFIX if (overwriting && bt_nofilename(curbuf)) nofile_err = TRUE; else - #endif apply_autocmds_exarg(EVENT_FILEWRITEPRE, sfname, sfname, FALSE, curbuf, eap); } --- 854,862 ---- *** ../vim-9.0.0262/src/evalbuffer.c 2022-07-23 09:52:00.333814262 +0100 --- src/evalbuffer.c 2022-08-25 14:48:33.942180943 +0100 *************** *** 93,103 **** // buffer, these don't use the full path. FOR_ALL_BUFFERS(buf) if (buf->b_fname != NULL ! && (path_with_url(buf->b_fname) ! #ifdef FEAT_QUICKFIX ! || bt_nofilename(buf) ! #endif ! ) && STRCMP(buf->b_fname, avar->vval.v_string) == 0) break; } --- 93,99 ---- // buffer, these don't use the full path. FOR_ALL_BUFFERS(buf) if (buf->b_fname != NULL ! && (path_with_url(buf->b_fname) || bt_nofilename(buf)) && STRCMP(buf->b_fname, avar->vval.v_string) == 0) break; } *** ../vim-9.0.0262/src/ex_docmd.c 2022-08-22 15:19:12.732328943 +0100 --- src/ex_docmd.c 2022-08-25 14:55:41.381541928 +0100 *************** *** 55,62 **** # define qf_history ex_ni # define ex_helpgrep ex_ni # define ex_vimgrep ex_ni - #endif - #if !defined(FEAT_QUICKFIX) # define ex_cclose ex_ni # define ex_copen ex_ni # define ex_cwindow ex_ni --- 55,60 ---- *** ../vim-9.0.0262/src/version.c 2022-08-25 13:54:13.453841129 +0100 --- src/version.c 2022-08-25 15:10:05.452189132 +0100 *************** *** 733,734 **** --- 733,736 ---- { /* Add new patch number below this line */ + /**/ + 263, /**/ -- SIGFUN -- signature too funny (core dumped) /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// \\\ \\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///