diff options
Diffstat (limited to 'data/vim/patches/8.1.0306')
-rw-r--r-- | data/vim/patches/8.1.0306 | 498 |
1 files changed, 498 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.0306 b/data/vim/patches/8.1.0306 new file mode 100644 index 000000000..e2d9e3079 --- /dev/null +++ b/data/vim/patches/8.1.0306 @@ -0,0 +1,498 @@ +To: vim_dev@googlegroups.com +Subject: Patch 8.1.0306 +Fcc: outbox +From: Bram Moolenaar <Bram@moolenaar.net> +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 8.1.0306 +Problem: Plural messages are not translated properly. +Solution: Add more usage of NGETTEXT(). (Sergey Alyoshin) +Files: src/vim.h, src/buffer.c, src/ex_cmds.c, src/ex_docmd.c, + src/fileio.c, src/misc1.c, src/ops.c + + +*** ../vim-8.1.0305/src/vim.h 2018-08-11 13:57:16.215969777 +0200 +--- src/vim.h 2018-08-21 14:34:37.322333098 +0200 +*************** +*** 553,558 **** +--- 553,562 ---- + /* + * The _() stuff is for using gettext(). It is a no-op when libintl.h is not + * found or the +multilang feature is disabled. ++ * Use NGETTEXT(single, multi, number) to get plural behavior: ++ * - single - message for singular form ++ * - multi - message for plural form ++ * - number - the count + */ + #ifdef FEAT_GETTEXT + # ifdef DYNAMIC_GETTEXT +*** ../vim-8.1.0305/src/buffer.c 2018-08-11 13:57:16.207969835 +0200 +--- src/buffer.c 2018-08-21 14:39:25.584435950 +0200 +*************** +*** 1174,1199 **** + else if (deleted >= p_report) + { + if (command == DOBUF_UNLOAD) +! { +! if (deleted == 1) +! MSG(_("1 buffer unloaded")); +! else +! smsg((char_u *)_("%d buffers unloaded"), deleted); +! } + else if (command == DOBUF_DEL) +! { +! if (deleted == 1) +! MSG(_("1 buffer deleted")); +! else +! smsg((char_u *)_("%d buffers deleted"), deleted); +! } + else +! { +! if (deleted == 1) +! MSG(_("1 buffer wiped out")); +! else +! smsg((char_u *)_("%d buffers wiped out"), deleted); +! } + } + } + +--- 1174,1187 ---- + else if (deleted >= p_report) + { + if (command == DOBUF_UNLOAD) +! smsg((char_u *)NGETTEXT("%d buffer unloaded", +! "%d buffers unloaded", deleted), deleted); + else if (command == DOBUF_DEL) +! smsg((char_u *)NGETTEXT("%d buffer deleted", +! "%d buffers deleted", deleted), deleted); + else +! smsg((char_u *)NGETTEXT("%d buffer wiped out", +! "%d buffers wiped out", deleted), deleted); + } + } + +*************** +*** 3485,3503 **** + n = (int)(((long)curwin->w_cursor.lnum * 100L) / + (long)curbuf->b_ml.ml_line_count); + if (curbuf->b_ml.ml_flags & ML_EMPTY) +- { + vim_snprintf_add((char *)buffer, IOSIZE, "%s", _(no_lines_msg)); +- } + #ifdef FEAT_CMDL_INFO + else if (p_ru) +- { + /* Current line and column are already on the screen -- webb */ +! if (curbuf->b_ml.ml_line_count == 1) +! vim_snprintf_add((char *)buffer, IOSIZE, _("1 line --%d%%--"), n); +! else +! vim_snprintf_add((char *)buffer, IOSIZE, _("%ld lines --%d%%--"), +! (long)curbuf->b_ml.ml_line_count, n); +! } + #endif + else + { +--- 3473,3486 ---- + n = (int)(((long)curwin->w_cursor.lnum * 100L) / + (long)curbuf->b_ml.ml_line_count); + if (curbuf->b_ml.ml_flags & ML_EMPTY) + vim_snprintf_add((char *)buffer, IOSIZE, "%s", _(no_lines_msg)); + #ifdef FEAT_CMDL_INFO + else if (p_ru) + /* Current line and column are already on the screen -- webb */ +! vim_snprintf_add((char *)buffer, IOSIZE, +! NGETTEXT("%ld line --%d%%--", "%ld lines --%d%%--", +! curbuf->b_ml.ml_line_count), +! (long)curbuf->b_ml.ml_line_count, n); + #endif + else + { +*** ../vim-8.1.0305/src/ex_cmds.c 2018-08-11 14:41:48.326928864 +0200 +--- src/ex_cmds.c 2018-08-21 15:09:35.720800340 +0200 +*************** +*** 985,996 **** + ml_delete(line1 + extra, TRUE); + + if (!global_busy && num_lines > p_report) +! { +! if (num_lines == 1) +! MSG(_("1 line moved")); +! else +! smsg((char_u *)_("%ld lines moved"), num_lines); +! } + + /* + * Leave the cursor on the last of the moved lines. +--- 985,992 ---- + ml_delete(line1 + extra, TRUE); + + if (!global_busy && num_lines > p_report) +! smsg((char_u *)NGETTEXT("%ld line moved", "%ld lines moved", num_lines), +! (long)num_lines); + + /* + * Leave the cursor on the last of the moved lines. +*************** +*** 5940,5962 **** + || count_only) + && messaging()) + { + if (got_int) + STRCPY(msg_buf, _("(Interrupted) ")); + else + *msg_buf = NUL; +! if (sub_nsubs == 1) +! vim_snprintf_add((char *)msg_buf, sizeof(msg_buf), +! "%s", count_only ? _("1 match") : _("1 substitution")); +! else +! vim_snprintf_add((char *)msg_buf, sizeof(msg_buf), +! count_only ? _("%ld matches") : _("%ld substitutions"), +! sub_nsubs); +! if (sub_nlines == 1) +! vim_snprintf_add((char *)msg_buf, sizeof(msg_buf), +! "%s", _(" on 1 line")); +! else +! vim_snprintf_add((char *)msg_buf, sizeof(msg_buf), +! _(" on %ld lines"), (long)sub_nlines); + if (msg(msg_buf)) + /* save message to display it after redraw */ + set_keep_msg(msg_buf, 0); +--- 5936,5964 ---- + || count_only) + && messaging()) + { ++ char *msg_single; ++ char *msg_plural; ++ + if (got_int) + STRCPY(msg_buf, _("(Interrupted) ")); + else + *msg_buf = NUL; +! +! msg_single = count_only +! ? NGETTEXT("%ld match on %ld line", +! "%ld matches on %ld line", sub_nsubs) +! : NGETTEXT("%ld substitution on %ld line", +! "%ld substitutions on %ld line", sub_nsubs); +! msg_plural = count_only +! ? NGETTEXT("%ld match on %ld lines", +! "%ld matches on %ld lines", sub_nsubs) +! : NGETTEXT("%ld substitution on %ld lines", +! "%ld substitutions on %ld lines", sub_nsubs); +! +! vim_snprintf_add((char *)msg_buf, sizeof(msg_buf), +! NGETTEXT(msg_single, msg_plural, sub_nlines), +! sub_nsubs, (long)sub_nlines); +! + if (msg(msg_buf)) + /* save message to display it after redraw */ + set_keep_msg(msg_buf, 0); +*** ../vim-8.1.0305/src/ex_docmd.c 2018-08-15 20:59:44.227025009 +0200 +--- src/ex_docmd.c 2018-08-21 14:35:02.210167853 +0200 +*************** +*** 5749,5770 **** + { + char_u buff[DIALOG_MSG_SIZE]; + +! if (n == 1) +! vim_strncpy(buff, +! (char_u *)_("1 more file to edit. Quit anyway?"), +! DIALOG_MSG_SIZE - 1); +! else +! vim_snprintf((char *)buff, DIALOG_MSG_SIZE, +! _("%d more files to edit. Quit anyway?"), n); + if (vim_dialog_yesno(VIM_QUESTION, NULL, buff, 1) == VIM_YES) + return OK; + return FAIL; + } + #endif +! if (n == 1) +! EMSG(_("E173: 1 more file to edit")); +! else +! EMSGN(_("E173: %ld more files to edit"), n); + quitmore = 2; /* next try to quit is allowed */ + } + return FAIL; +--- 5749,5764 ---- + { + char_u buff[DIALOG_MSG_SIZE]; + +! vim_snprintf((char *)buff, DIALOG_MSG_SIZE, +! NGETTEXT("%d more file to edit. Quit anyway?", +! "%d more files to edit. Quit anyway?", n), n); + if (vim_dialog_yesno(VIM_QUESTION, NULL, buff, 1) == VIM_YES) + return OK; + return FAIL; + } + #endif +! EMSGN(NGETTEXT("E173: %ld more file to edit", +! "E173: %ld more files to edit", n), n); + quitmore = 2; /* next try to quit is allowed */ + } + return FAIL; +*** ../vim-8.1.0305/src/fileio.c 2018-08-11 13:57:16.211969806 +0200 +--- src/fileio.c 2018-08-21 14:35:02.214167827 +0200 +*************** +*** 5349,5364 **** + "%ldL, %lldC", lnum, (long long)nchars); + else + { +! if (lnum == 1) +! STRCPY(p, _("1 line, ")); +! else +! sprintf((char *)p, _("%ld lines, "), lnum); + p += STRLEN(p); +! if (nchars == 1) +! STRCPY(p, _("1 character")); +! else +! vim_snprintf((char *)p, IOSIZE - (p - IObuff), +! _("%lld characters"), (long long)nchars); + } + } + +--- 5349,5359 ---- + "%ldL, %lldC", lnum, (long long)nchars); + else + { +! sprintf((char *)p, NGETTEXT("%ld line, ", "%ld lines, ", lnum), lnum); + p += STRLEN(p); +! vim_snprintf((char *)p, IOSIZE - (p - IObuff), +! NGETTEXT("%lld character", "%lld characters", nchars), +! (long long)nchars); + } + } + +*** ../vim-8.1.0305/src/misc1.c 2018-07-29 16:09:14.636945607 +0200 +--- src/misc1.c 2018-08-21 14:35:02.214167827 +0200 +*************** +*** 3802,3825 **** + + if (pn > p_report) + { +! if (pn == 1) +! { +! if (n > 0) +! vim_strncpy(msg_buf, (char_u *)_("1 more line"), +! MSG_BUF_LEN - 1); +! else +! vim_strncpy(msg_buf, (char_u *)_("1 line less"), +! MSG_BUF_LEN - 1); +! } + else +! { +! if (n > 0) +! vim_snprintf((char *)msg_buf, MSG_BUF_LEN, +! _("%ld more lines"), pn); +! else +! vim_snprintf((char *)msg_buf, MSG_BUF_LEN, +! _("%ld fewer lines"), pn); +! } + if (got_int) + vim_strcat(msg_buf, (char_u *)_(" (Interrupted)"), MSG_BUF_LEN); + if (msg(msg_buf)) +--- 3802,3813 ---- + + if (pn > p_report) + { +! if (n > 0) +! vim_snprintf((char *)msg_buf, MSG_BUF_LEN, +! NGETTEXT("%ld more line", "%ld more lines", pn), pn); + else +! vim_snprintf((char *)msg_buf, MSG_BUF_LEN, +! NGETTEXT("%ld line less", "%ld fewer lines", pn), pn); + if (got_int) + vim_strcat(msg_buf, (char_u *)_(" (Interrupted)"), MSG_BUF_LEN); + if (msg(msg_buf)) +*** ../vim-8.1.0305/src/ops.c 2018-07-29 16:09:14.640945583 +0200 +--- src/ops.c 2018-08-21 15:02:16.907624684 +0200 +*************** +*** 244,250 **** + { + long i; + int first_char; +- char_u *s; + int block_col = 0; + + if (u_save((linenr_T)(oap->start.lnum - 1), +--- 244,249 ---- +*************** +*** 297,322 **** + + if (oap->line_count > p_report) + { + if (oap->op_type == OP_RSHIFT) +! s = (char_u *)">"; +! else +! s = (char_u *)"<"; +! if (oap->line_count == 1) +! { +! if (amount == 1) +! sprintf((char *)IObuff, _("1 line %sed 1 time"), s); +! else +! sprintf((char *)IObuff, _("1 line %sed %d times"), s, amount); +! } + else +! { +! if (amount == 1) +! sprintf((char *)IObuff, _("%ld lines %sed 1 time"), +! oap->line_count, s); +! else +! sprintf((char *)IObuff, _("%ld lines %sed %d times"), +! oap->line_count, s, amount); +! } + msg(IObuff); + } + +--- 296,316 ---- + + if (oap->line_count > p_report) + { ++ char *op; ++ char *msg_line_single; ++ char *msg_line_plural; ++ + if (oap->op_type == OP_RSHIFT) +! op = ">"; + else +! op = "<"; +! msg_line_single = NGETTEXT("%ld line %sed %d time", +! "%ld line %sed %d times", amount); +! msg_line_plural = NGETTEXT("%ld lines %sed %d time", +! "%ld lines %sed %d times", amount); +! vim_snprintf((char *)IObuff, IOSIZE, +! NGETTEXT(msg_line_single, msg_line_plural, oap->line_count), +! oap->line_count, op, amount); + msg(IObuff); + } + +*************** +*** 789,798 **** + if (oap->line_count > p_report) + { + i = oap->line_count - (i + 1); +! if (i == 1) +! MSG(_("1 line indented ")); +! else +! smsg((char_u *)_("%ld lines indented "), i); + } + /* set '[ and '] marks */ + curbuf->b_op_start = oap->start; +--- 783,790 ---- + if (oap->line_count > p_report) + { + i = oap->line_count - (i + 1); +! smsg((char_u *)NGETTEXT("%ld line indented ", +! "%ld lines indented ", i), i); + } + /* set '[ and '] marks */ + curbuf->b_op_start = oap->start; +*************** +*** 2529,2540 **** + curbuf->b_op_end = oap->end; + + if (oap->line_count > p_report) +! { +! if (oap->line_count == 1) +! MSG(_("1 line changed")); +! else +! smsg((char_u *)_("%ld lines changed"), oap->line_count); +! } + } + + /* +--- 2521,2528 ---- + curbuf->b_op_end = oap->end; + + if (oap->line_count > p_report) +! smsg((char_u *)NGETTEXT("%ld line changed", "%ld lines changed", +! oap->line_count), oap->line_count); + } + + /* +*************** +*** 3348,3366 **** + + /* redisplay now, so message is not deleted */ + update_topline_redraw(); +! if (yanklines == 1) + { +! if (oap->block_mode) +! smsg((char_u *)_("block of 1 line yanked%s"), namebuf); +! else +! smsg((char_u *)_("1 line yanked%s"), namebuf); + } +- else if (oap->block_mode) +- smsg((char_u *)_("block of %ld lines yanked%s"), +- yanklines, namebuf); + else +! smsg((char_u *)_("%ld lines yanked%s"), yanklines, +! namebuf); + } + } + +--- 3336,3353 ---- + + /* redisplay now, so message is not deleted */ + update_topline_redraw(); +! if (oap->block_mode) + { +! smsg((char_u *)NGETTEXT("block of %ld line yanked%s", +! "block of %ld lines yanked%s", yanklines), +! yanklines, namebuf); + } + else +! { +! smsg((char_u *)NGETTEXT("%ld line yanked%s", +! "%ld lines yanked%s", yanklines), +! yanklines, namebuf); +! } + } + } + +*************** +*** 5653,5664 **** + curbuf->b_op_start = startpos; + + if (change_cnt > p_report) +! { +! if (change_cnt == 1) +! MSG(_("1 line changed")); +! else +! smsg((char_u *)_("%ld lines changed"), change_cnt); +! } + } + } + +--- 5640,5647 ---- + curbuf->b_op_start = startpos; + + if (change_cnt > p_report) +! smsg((char_u *)NGETTEXT("%ld line changed", "%ld lines changed", +! change_cnt), change_cnt); + } + } + +*** ../vim-8.1.0305/src/version.c 2018-08-21 14:23:31.418606007 +0200 +--- src/version.c 2018-08-21 15:02:32.359526078 +0200 +*************** +*** 796,797 **** +--- 796,799 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 306, + /**/ + +-- +LARGE MAN: Who's that then? +CART DRIVER: (Grudgingly) I dunno, Must be a king. +LARGE MAN: Why? +CART DRIVER: He hasn't got shit all over him. + "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD + + /// 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 /// |