Patch 8.1.0103
Problem: Long version string cannot be translated.
Solution: Build the string in init_longVersion().
Files: src/globals.h, src/version.h, src/version.c,
src/proto/version.pro, src/main.c
*** ../vim-8.1.0102/src/globals.h 2018-06-23 14:21:38.467484932 +0200
--- src/globals.h 2018-06-23 15:43:26.522795007 +0200
***************
*** 1131,1142 ****
EXTERN char breakat_flags[256]; /* which characters are in 'breakat' */
#endif
! /* these are in version.c */
extern char *Version;
#if defined(HAVE_DATE_TIME) && defined(VMS) && defined(VAXC)
extern char longVersion[];
#else
! extern char *longVersion;
#endif
/*
--- 1131,1142 ----
EXTERN char breakat_flags[256]; /* which characters are in 'breakat' */
#endif
! /* These are in version.c, call init_longVersion() before use. */
extern char *Version;
#if defined(HAVE_DATE_TIME) && defined(VMS) && defined(VAXC)
extern char longVersion[];
#else
! EXTERN char *longVersion;
#endif
/*
*** ../vim-8.1.0102/src/version.h 2018-05-17 13:33:02.000000000 +0200
--- src/version.h 2018-06-23 15:35:20.481563682 +0200
***************
*** 36,40 ****
#define VIM_VERSION_NODOT "vim81"
#define VIM_VERSION_SHORT "8.1"
#define VIM_VERSION_MEDIUM "8.1"
! #define VIM_VERSION_LONG "VIM - Vi IMproved 8.1 (2018 May 17)"
! #define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 8.1 (2018 May 17, compiled "
--- 36,42 ----
#define VIM_VERSION_NODOT "vim81"
#define VIM_VERSION_SHORT "8.1"
#define VIM_VERSION_MEDIUM "8.1"
! #define VIM_VERSION_LONG "VIM - Vi IMproved 8.1 (2018 May 18)"
! #define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 8.1 (2018 May 18, compiled "
! #define VIM_VERSION_LONG_ONLY "VIM - Vi IMproved 8.1"
! #define VIM_VERSION_DATE_ONLY "2018 May 18"
*** ../vim-8.1.0102/src/version.c 2018-06-23 15:09:02.351412460 +0200
--- src/version.c 2018-06-23 16:11:00.128696631 +0200
***************
*** 37,43 ****
+ sizeof(__TIME__) + 3];
void
! make_version(void)
{
/*
* Construct the long version string. Necessary because
--- 37,43 ----
+ sizeof(__TIME__) + 3];
void
! init_longVersion(void)
{
/*
* Construct the long version string. Necessary because
***************
*** 49,56 ****
strcat(longVersion, __TIME__);
strcat(longVersion, ")");
}
# else
! char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
# endif
#else
char *longVersion = VIM_VERSION_LONG;
--- 49,73 ----
strcat(longVersion, __TIME__);
strcat(longVersion, ")");
}
+
# else
! void
! init_longVersion(void)
! {
! char *date_time = __DATE__ " " __TIME__;
! char *msg = _("%s (%s, compiled %s)");
! size_t len = strlen(msg)
! + strlen(VIM_VERSION_LONG_ONLY)
! + strlen(VIM_VERSION_DATE_ONLY)
! + strlen(date_time);
!
! longVersion = (char *)alloc(len);
! if (longVersion == NULL)
! longVersion = VIM_VERSION_LONG;
! else
! vim_snprintf(longVersion, len, msg,
! VIM_VERSION_LONG_ONLY, VIM_VERSION_DATE_ONLY, date_time);
! }
# endif
#else
char *longVersion = VIM_VERSION_LONG;
***************
*** 1148,1153 ****
--- 1167,1173 ----
* When adding features here, don't forget to update the list of
* internal variables in eval.c!
*/
+ init_longVersion();
MSG(longVersion);
#ifdef WIN3264
# ifdef FEAT_GUI_W32
*** ../vim-8.1.0102/src/proto/version.pro 2018-05-17 13:52:55.000000000
+0200
--- src/proto/version.pro 2018-06-23 15:40:19.395834338 +0200
***************
*** 1,5 ****
/* version.c */
! void make_version(void);
int highest_patch(void);
int has_patch(int n);
void ex_version(exarg_T *eap);
--- 1,5 ----
/* version.c */
! void init_longVersion(void);
int highest_patch(void);
int has_patch(int n);
void ex_version(exarg_T *eap);
*** ../vim-8.1.0102/src/main.c 2018-06-21 21:38:29.599534681 +0200
--- src/main.c 2018-06-23 15:31:50.962855677 +0200
***************
*** 940,949 ****
/* Init the table of Normal mode commands. */
init_normal_cmds();
- #if defined(HAVE_DATE_TIME) && defined(VMS) && defined(VAXC)
- make_version(); /* Construct the long version string. */
- #endif
-
/*
* Allocate space for the generic buffers (needed for set_init_1() and
* EMSG2()).
--- 940,945 ----
***************
*** 3215,3220 ****
--- 3211,3217 ----
reset_signals(); /* kill us with CTRL-C here, if you like */
#endif
+ init_longVersion();
mch_errmsg(longVersion);
mch_errmsg("\n");
mch_errmsg(_(main_errors[n]));
***************
*** 3268,3273 ****
--- 3265,3271 ----
reset_signals(); /* kill us with CTRL-C here, if you like */
#endif
+ init_longVersion();
mch_msg(longVersion);
mch_msg(_("\n\nUsage:"));
for (i = 0; ; ++i)
*** ../vim-8.1.0102/src/version.c 2018-06-23 15:09:02.351412460 +0200
--- src/version.c 2018-06-23 16:11:00.128696631 +0200
***************
*** 763,764 ****
--- 780,783 ----
{ /* Add new patch number below this line */
+ /**/
+ 103,
/**/
--
>From "know your smileys":
|-( Contact lenses, but has lost them
/// Bram Moolenaar -- [email protected] -- 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 ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.