2016-08-29 22:49:24 +02:00
|
|
|
/* vi:set ts=8 sts=4 sw=4 noet:
|
2004-06-13 20:20:40 +00:00
|
|
|
*
|
|
|
|
* VIM - Vi IMproved by Bram Moolenaar
|
|
|
|
*
|
|
|
|
* Do ":help uganda" in Vim to read copying and usage conditions.
|
|
|
|
* Do ":help credits" in Vim to see a list of people who contributed.
|
|
|
|
* See README.txt for an overview of the Vim source code.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "vim.h"
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Vim originated from Stevie version 3.6 (Fish disk 217) by GRWalter (Fred)
|
|
|
|
* It has been changed beyond recognition since then.
|
|
|
|
*
|
2022-06-23 20:46:27 +01:00
|
|
|
* Differences between version 8.2 and 9.0 can be found with ":help version9".
|
2016-09-12 16:23:34 +02:00
|
|
|
* Differences between version 7.4 and 8.x can be found with ":help version8".
|
|
|
|
* Differences between version 6.4 and 7.x can be found with ":help version7".
|
|
|
|
* Differences between version 5.8 and 6.x can be found with ":help version6".
|
2004-06-13 20:20:40 +00:00
|
|
|
* Differences between version 4.x and 5.x can be found with ":help version5".
|
|
|
|
* Differences between version 3.0 and 4.x can be found with ":help version4".
|
|
|
|
* All the remarks about older versions have been removed, they are not very
|
|
|
|
* interesting.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "version.h"
|
|
|
|
|
2005-06-30 22:04:15 +00:00
|
|
|
char *Version = VIM_VERSION_SHORT;
|
|
|
|
static char *mediumVersion = VIM_VERSION_MEDIUM;
|
2004-06-13 20:20:40 +00:00
|
|
|
|
|
|
|
#if defined(HAVE_DATE_TIME) || defined(PROTO)
|
|
|
|
# if (defined(VMS) && defined(VAXC)) || defined(PROTO)
|
|
|
|
char longVersion[sizeof(VIM_VERSION_LONG_DATE) + sizeof(__DATE__)
|
|
|
|
+ sizeof(__TIME__) + 3];
|
2013-02-20 16:47:36 +01:00
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
void
|
2018-06-23 16:12:21 +02:00
|
|
|
init_longVersion(void)
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
|
|
|
/*
|
|
|
|
* Construct the long version string. Necessary because
|
2019-03-02 10:13:42 +01:00
|
|
|
* VAX C can't concatenate strings in the preprocessor.
|
2004-06-13 20:20:40 +00:00
|
|
|
*/
|
|
|
|
strcpy(longVersion, VIM_VERSION_LONG_DATE);
|
2020-06-05 23:16:29 +02:00
|
|
|
#ifdef BUILD_DATE
|
|
|
|
strcat(longVersion, BUILD_DATE);
|
|
|
|
#else
|
2004-06-13 20:20:40 +00:00
|
|
|
strcat(longVersion, __DATE__);
|
|
|
|
strcat(longVersion, " ");
|
|
|
|
strcat(longVersion, __TIME__);
|
2020-06-05 23:16:29 +02:00
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
strcat(longVersion, ")");
|
|
|
|
}
|
2018-06-23 16:12:21 +02:00
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
# else
|
2021-09-17 20:45:30 +02:00
|
|
|
char *longVersion = NULL;
|
|
|
|
|
2018-06-23 16:12:21 +02:00
|
|
|
void
|
|
|
|
init_longVersion(void)
|
|
|
|
{
|
|
|
|
if (longVersion == NULL)
|
2020-04-13 18:25:33 +02:00
|
|
|
{
|
2020-06-05 23:16:29 +02:00
|
|
|
#ifdef BUILD_DATE
|
|
|
|
char *date_time = BUILD_DATE;
|
|
|
|
#else
|
2020-04-13 18:25:33 +02:00
|
|
|
char *date_time = __DATE__ " " __TIME__;
|
2020-06-05 23:16:29 +02:00
|
|
|
#endif
|
2020-04-13 18:25:33 +02:00
|
|
|
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 = alloc(len);
|
|
|
|
if (longVersion == NULL)
|
|
|
|
longVersion = VIM_VERSION_LONG;
|
|
|
|
else
|
|
|
|
vim_snprintf(longVersion, len, msg,
|
2021-09-17 20:45:30 +02:00
|
|
|
VIM_VERSION_LONG_ONLY, VIM_VERSION_DATE_ONLY, date_time);
|
2020-04-13 18:25:33 +02:00
|
|
|
}
|
2018-06-23 16:12:21 +02:00
|
|
|
}
|
2004-06-13 20:20:40 +00:00
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
char *longVersion = VIM_VERSION_LONG;
|
2018-06-24 14:44:46 +02:00
|
|
|
|
|
|
|
void
|
|
|
|
init_longVersion(void)
|
|
|
|
{
|
|
|
|
// nothing to do
|
|
|
|
}
|
2004-06-13 20:20:40 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
static char *(features[]) =
|
|
|
|
{
|
2013-08-30 16:35:44 +02:00
|
|
|
#ifdef HAVE_ACL
|
|
|
|
"+acl",
|
|
|
|
#else
|
|
|
|
"-acl",
|
|
|
|
#endif
|
2019-12-21 18:47:26 +01:00
|
|
|
#ifdef AMIGA // only for Amiga systems
|
2004-06-13 20:20:40 +00:00
|
|
|
# ifdef FEAT_ARP
|
|
|
|
"+ARP",
|
|
|
|
# else
|
|
|
|
"-ARP",
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_ARABIC
|
|
|
|
"+arabic",
|
|
|
|
#else
|
|
|
|
"-arabic",
|
|
|
|
#endif
|
|
|
|
"+autocmd",
|
2018-07-27 22:08:59 +02:00
|
|
|
#ifdef FEAT_AUTOCHDIR
|
|
|
|
"+autochdir",
|
|
|
|
#else
|
|
|
|
"-autochdir",
|
|
|
|
#endif
|
2017-11-12 19:21:51 +01:00
|
|
|
#ifdef FEAT_AUTOSERVERNAME
|
|
|
|
"+autoservername",
|
|
|
|
#else
|
|
|
|
"-autoservername",
|
|
|
|
#endif
|
2017-11-18 22:13:31 +01:00
|
|
|
#ifdef FEAT_BEVAL_GUI
|
2004-06-13 20:20:40 +00:00
|
|
|
"+balloon_eval",
|
|
|
|
#else
|
|
|
|
"-balloon_eval",
|
|
|
|
#endif
|
2017-11-18 22:13:31 +01:00
|
|
|
#ifdef FEAT_BEVAL_TERM
|
2017-11-18 18:52:04 +01:00
|
|
|
"+balloon_eval_term",
|
|
|
|
#else
|
|
|
|
"-balloon_eval_term",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_BROWSE
|
|
|
|
"+browse",
|
|
|
|
#else
|
|
|
|
"-browse",
|
|
|
|
#endif
|
|
|
|
"++builtin_terms",
|
|
|
|
#ifdef FEAT_BYTEOFF
|
|
|
|
"+byte_offset",
|
|
|
|
#else
|
|
|
|
"-byte_offset",
|
|
|
|
#endif
|
2016-03-11 22:52:15 +01:00
|
|
|
#ifdef FEAT_JOB_CHANNEL
|
2016-01-25 20:15:45 +01:00
|
|
|
"+channel",
|
|
|
|
#else
|
|
|
|
"-channel",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
"+cindent",
|
|
|
|
#ifdef FEAT_CLIENTSERVER
|
|
|
|
"+clientserver",
|
|
|
|
#else
|
|
|
|
"-clientserver",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_CLIPBOARD
|
|
|
|
"+clipboard",
|
|
|
|
#else
|
|
|
|
"-clipboard",
|
|
|
|
#endif
|
|
|
|
"+cmdline_compl",
|
|
|
|
"+cmdline_hist",
|
|
|
|
#ifdef FEAT_CMDL_INFO
|
|
|
|
"+cmdline_info",
|
|
|
|
#else
|
|
|
|
"-cmdline_info",
|
|
|
|
#endif
|
|
|
|
"+comments",
|
2010-06-05 23:22:07 +02:00
|
|
|
#ifdef FEAT_CONCEAL
|
|
|
|
"+conceal",
|
|
|
|
#else
|
|
|
|
"-conceal",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_CRYPT
|
|
|
|
"+cryptv",
|
|
|
|
#else
|
|
|
|
"-cryptv",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_CSCOPE
|
|
|
|
"+cscope",
|
|
|
|
#else
|
|
|
|
"-cscope",
|
|
|
|
#endif
|
2010-06-05 23:22:07 +02:00
|
|
|
"+cursorbind",
|
2006-01-26 22:25:15 +00:00
|
|
|
#ifdef CURSOR_SHAPE
|
|
|
|
"+cursorshape",
|
|
|
|
#else
|
|
|
|
"-cursorshape",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#if defined(FEAT_CON_DIALOG) && defined(FEAT_GUI_DIALOG)
|
|
|
|
"+dialog_con_gui",
|
|
|
|
#else
|
|
|
|
# if defined(FEAT_CON_DIALOG)
|
|
|
|
"+dialog_con",
|
|
|
|
# else
|
|
|
|
# if defined(FEAT_GUI_DIALOG)
|
|
|
|
"+dialog_gui",
|
|
|
|
# else
|
|
|
|
"-dialog",
|
|
|
|
# endif
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_DIFF
|
|
|
|
"+diff",
|
|
|
|
#else
|
|
|
|
"-diff",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_DIGRAPHS
|
|
|
|
"+digraphs",
|
|
|
|
#else
|
|
|
|
"-digraphs",
|
|
|
|
#endif
|
2019-02-17 17:44:42 +01:00
|
|
|
#ifdef FEAT_GUI_MSWIN
|
2014-08-06 14:52:30 +02:00
|
|
|
# ifdef FEAT_DIRECTX
|
|
|
|
"+directx",
|
|
|
|
# else
|
|
|
|
"-directx",
|
|
|
|
# endif
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_DND
|
|
|
|
"+dnd",
|
|
|
|
#else
|
|
|
|
"-dnd",
|
|
|
|
#endif
|
|
|
|
"-ebcdic",
|
|
|
|
#ifdef FEAT_EMACS_TAGS
|
|
|
|
"+emacs_tags",
|
|
|
|
#else
|
|
|
|
"-emacs_tags",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_EVAL
|
|
|
|
"+eval",
|
|
|
|
#else
|
|
|
|
"-eval",
|
|
|
|
#endif
|
|
|
|
"+ex_extra",
|
|
|
|
#ifdef FEAT_SEARCH_EXTRA
|
|
|
|
"+extra_search",
|
|
|
|
#else
|
|
|
|
"-extra_search",
|
|
|
|
#endif
|
|
|
|
"-farsi",
|
|
|
|
"+file_in_path",
|
|
|
|
#ifdef FEAT_FIND_ID
|
|
|
|
"+find_in_path",
|
|
|
|
#else
|
|
|
|
"-find_in_path",
|
|
|
|
#endif
|
2008-06-24 21:56:24 +00:00
|
|
|
"+float",
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_FOLDING
|
|
|
|
"+folding",
|
|
|
|
#else
|
|
|
|
"-folding",
|
|
|
|
#endif
|
|
|
|
"-footer",
|
2022-09-04 12:29:28 +01:00
|
|
|
// only interesting on Unix systems
|
2004-06-13 20:20:40 +00:00
|
|
|
#if !defined(USE_SYSTEM) && defined(UNIX)
|
|
|
|
"+fork()",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_GETTEXT
|
|
|
|
# ifdef DYNAMIC_GETTEXT
|
|
|
|
"+gettext/dyn",
|
|
|
|
# else
|
|
|
|
"+gettext",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"-gettext",
|
|
|
|
#endif
|
|
|
|
"-hangul_input",
|
|
|
|
#if (defined(HAVE_ICONV_H) && defined(USE_ICONV)) || defined(DYNAMIC_ICONV)
|
|
|
|
# ifdef DYNAMIC_ICONV
|
|
|
|
"+iconv/dyn",
|
|
|
|
# else
|
|
|
|
"+iconv",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"-iconv",
|
|
|
|
#endif
|
|
|
|
"+insert_expand",
|
2020-04-13 19:04:21 +02:00
|
|
|
#ifdef FEAT_IPV6
|
|
|
|
"+ipv6",
|
|
|
|
#else
|
|
|
|
"-ipv6",
|
|
|
|
#endif
|
2016-03-11 22:52:15 +01:00
|
|
|
#ifdef FEAT_JOB_CHANNEL
|
2016-02-07 14:27:38 +01:00
|
|
|
"+job",
|
|
|
|
#else
|
|
|
|
"-job",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
"+jumplist",
|
|
|
|
#ifdef FEAT_KEYMAP
|
|
|
|
"+keymap",
|
|
|
|
#else
|
|
|
|
"-keymap",
|
|
|
|
#endif
|
2016-07-29 22:50:35 +02:00
|
|
|
#ifdef FEAT_EVAL
|
|
|
|
"+lambda",
|
|
|
|
#else
|
|
|
|
"-lambda",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_LANGMAP
|
|
|
|
"+langmap",
|
|
|
|
#else
|
|
|
|
"-langmap",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_LIBCALL
|
|
|
|
"+libcall",
|
|
|
|
#else
|
|
|
|
"-libcall",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_LINEBREAK
|
|
|
|
"+linebreak",
|
|
|
|
#else
|
|
|
|
"-linebreak",
|
|
|
|
#endif
|
|
|
|
"+lispindent",
|
|
|
|
"+listcmds",
|
|
|
|
"+localmap",
|
2010-07-14 23:23:17 +02:00
|
|
|
#ifdef FEAT_LUA
|
|
|
|
# ifdef DYNAMIC_LUA
|
|
|
|
"+lua/dyn",
|
|
|
|
# else
|
|
|
|
"+lua",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"-lua",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_MENU
|
|
|
|
"+menu",
|
|
|
|
#else
|
|
|
|
"-menu",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_SESSION
|
|
|
|
"+mksession",
|
|
|
|
#else
|
|
|
|
"-mksession",
|
|
|
|
#endif
|
|
|
|
"+modify_fname",
|
|
|
|
"+mouse",
|
2019-10-17 23:00:07 +02:00
|
|
|
#ifdef FEAT_MOUSESHAPE
|
2004-06-13 20:20:40 +00:00
|
|
|
"+mouseshape",
|
2019-10-17 23:00:07 +02:00
|
|
|
#else
|
2004-06-13 20:20:40 +00:00
|
|
|
"-mouseshape",
|
|
|
|
#endif
|
2012-10-21 04:00:07 +02:00
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
#if defined(UNIX) || defined(VMS)
|
|
|
|
# ifdef FEAT_MOUSE_DEC
|
|
|
|
"+mouse_dec",
|
|
|
|
# else
|
|
|
|
"-mouse_dec",
|
|
|
|
# endif
|
|
|
|
# ifdef FEAT_MOUSE_GPM
|
2022-02-23 18:07:38 +00:00
|
|
|
# ifdef DYNAMIC_GPM
|
|
|
|
"+mouse_gpm/dyn",
|
|
|
|
# else
|
2004-06-13 20:20:40 +00:00
|
|
|
"+mouse_gpm",
|
2022-02-23 18:07:38 +00:00
|
|
|
# endif
|
2004-06-13 20:20:40 +00:00
|
|
|
# else
|
|
|
|
"-mouse_gpm",
|
|
|
|
# endif
|
|
|
|
# ifdef FEAT_MOUSE_JSB
|
|
|
|
"+mouse_jsbterm",
|
|
|
|
# else
|
|
|
|
"-mouse_jsbterm",
|
|
|
|
# endif
|
|
|
|
# ifdef FEAT_MOUSE_NET
|
|
|
|
"+mouse_netterm",
|
|
|
|
# else
|
|
|
|
"-mouse_netterm",
|
|
|
|
# endif
|
2012-10-21 04:00:07 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef __QNX__
|
|
|
|
# ifdef FEAT_MOUSE_PTERM
|
|
|
|
"+mouse_pterm",
|
|
|
|
# else
|
|
|
|
"-mouse_pterm",
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(UNIX) || defined(VMS)
|
|
|
|
"+mouse_sgr",
|
2008-06-24 21:56:24 +00:00
|
|
|
# ifdef FEAT_SYSMOUSE
|
|
|
|
"+mouse_sysmouse",
|
|
|
|
# else
|
|
|
|
"-mouse_sysmouse",
|
|
|
|
# endif
|
2011-10-20 21:09:35 +02:00
|
|
|
# ifdef FEAT_MOUSE_URXVT
|
|
|
|
"+mouse_urxvt",
|
|
|
|
# else
|
|
|
|
"-mouse_urxvt",
|
|
|
|
# endif
|
2012-10-21 04:00:07 +02:00
|
|
|
"+mouse_xterm",
|
2004-06-13 20:20:40 +00:00
|
|
|
#endif
|
2012-10-21 04:00:07 +02:00
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_MBYTE_IME
|
|
|
|
# ifdef DYNAMIC_IME
|
|
|
|
"+multi_byte_ime/dyn",
|
|
|
|
# else
|
|
|
|
"+multi_byte_ime",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"+multi_byte",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_MULTI_LANG
|
|
|
|
"+multi_lang",
|
|
|
|
#else
|
|
|
|
"-multi_lang",
|
|
|
|
#endif
|
2004-07-05 15:58:32 +00:00
|
|
|
#ifdef FEAT_MZSCHEME
|
2005-01-25 22:07:05 +00:00
|
|
|
# ifdef DYNAMIC_MZSCHEME
|
|
|
|
"+mzscheme/dyn",
|
|
|
|
# else
|
2004-07-05 15:58:32 +00:00
|
|
|
"+mzscheme",
|
2005-01-25 22:07:05 +00:00
|
|
|
# endif
|
2004-07-05 15:58:32 +00:00
|
|
|
#else
|
|
|
|
"-mzscheme",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_NETBEANS_INTG
|
|
|
|
"+netbeans_intg",
|
|
|
|
#else
|
|
|
|
"-netbeans_intg",
|
|
|
|
#endif
|
2016-07-01 18:17:26 +02:00
|
|
|
"+num64",
|
2019-02-17 17:44:42 +01:00
|
|
|
#ifdef FEAT_GUI_MSWIN
|
2004-06-13 20:20:40 +00:00
|
|
|
# ifdef FEAT_OLE
|
|
|
|
"+ole",
|
|
|
|
# else
|
|
|
|
"-ole",
|
|
|
|
# endif
|
|
|
|
#endif
|
2018-07-22 05:08:11 +02:00
|
|
|
#ifdef FEAT_EVAL
|
2016-02-21 23:02:49 +01:00
|
|
|
"+packages",
|
2018-07-22 05:08:11 +02:00
|
|
|
#else
|
|
|
|
"-packages",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
"+path_extra",
|
|
|
|
#ifdef FEAT_PERL
|
|
|
|
# ifdef DYNAMIC_PERL
|
|
|
|
"+perl/dyn",
|
|
|
|
# else
|
|
|
|
"+perl",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"-perl",
|
|
|
|
#endif
|
2010-05-23 23:34:36 +02:00
|
|
|
#ifdef FEAT_PERSISTENT_UNDO
|
|
|
|
"+persistent_undo",
|
|
|
|
#else
|
|
|
|
"-persistent_undo",
|
|
|
|
#endif
|
2019-11-30 22:48:27 +01:00
|
|
|
#ifdef FEAT_PROP_POPUP
|
|
|
|
"+popupwin",
|
|
|
|
#else
|
|
|
|
"-popupwin",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_PRINTER
|
|
|
|
# ifdef FEAT_POSTSCRIPT
|
|
|
|
"+postscript",
|
|
|
|
# else
|
|
|
|
"-postscript",
|
|
|
|
# endif
|
|
|
|
"+printer",
|
|
|
|
#else
|
|
|
|
"-printer",
|
|
|
|
#endif
|
2005-02-26 23:04:13 +00:00
|
|
|
#ifdef FEAT_PROFILE
|
|
|
|
"+profile",
|
|
|
|
#else
|
|
|
|
"-profile",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_PYTHON
|
|
|
|
# ifdef DYNAMIC_PYTHON
|
|
|
|
"+python/dyn",
|
|
|
|
# else
|
|
|
|
"+python",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"-python",
|
|
|
|
#endif
|
2010-07-17 21:19:38 +02:00
|
|
|
#ifdef FEAT_PYTHON3
|
|
|
|
# ifdef DYNAMIC_PYTHON3
|
|
|
|
"+python3/dyn",
|
|
|
|
# else
|
|
|
|
"+python3",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"-python3",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_QUICKFIX
|
|
|
|
"+quickfix",
|
|
|
|
#else
|
|
|
|
"-quickfix",
|
|
|
|
#endif
|
2006-05-02 22:08:30 +00:00
|
|
|
#ifdef FEAT_RELTIME
|
|
|
|
"+reltime",
|
|
|
|
#else
|
|
|
|
"-reltime",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_RIGHTLEFT
|
|
|
|
"+rightleft",
|
|
|
|
#else
|
|
|
|
"-rightleft",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_RUBY
|
|
|
|
# ifdef DYNAMIC_RUBY
|
|
|
|
"+ruby/dyn",
|
|
|
|
# else
|
|
|
|
"+ruby",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"-ruby",
|
|
|
|
#endif
|
|
|
|
"+scrollbind",
|
|
|
|
#ifdef FEAT_SIGNS
|
|
|
|
"+signs",
|
|
|
|
#else
|
|
|
|
"-signs",
|
|
|
|
#endif
|
|
|
|
"+smartindent",
|
2021-06-20 14:02:16 +02:00
|
|
|
#ifdef FEAT_SODIUM
|
2022-02-12 11:18:37 +00:00
|
|
|
# ifdef DYNAMIC_SODIUM
|
|
|
|
"+sodium/dyn",
|
|
|
|
# else
|
2021-06-20 14:02:16 +02:00
|
|
|
"+sodium",
|
2022-02-12 11:18:37 +00:00
|
|
|
# endif
|
2021-06-20 14:02:16 +02:00
|
|
|
#else
|
|
|
|
"-sodium",
|
|
|
|
#endif
|
2019-06-09 13:43:51 +02:00
|
|
|
#ifdef FEAT_SOUND
|
|
|
|
"+sound",
|
|
|
|
#else
|
|
|
|
"-sound",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_SPELL
|
|
|
|
"+spell",
|
|
|
|
#else
|
|
|
|
"-spell",
|
|
|
|
#endif
|
2009-11-11 13:22:11 +00:00
|
|
|
#ifdef STARTUPTIME
|
|
|
|
"+startuptime",
|
|
|
|
#else
|
|
|
|
"-startuptime",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_STL_OPT
|
|
|
|
"+statusline",
|
|
|
|
#else
|
|
|
|
"-statusline",
|
|
|
|
#endif
|
|
|
|
"-sun_workshop",
|
|
|
|
#ifdef FEAT_SYN_HL
|
|
|
|
"+syntax",
|
|
|
|
#else
|
|
|
|
"-syntax",
|
|
|
|
#endif
|
2019-12-21 18:47:26 +01:00
|
|
|
// only interesting on Unix systems
|
2016-07-16 14:47:36 +02:00
|
|
|
#if defined(USE_SYSTEM) && defined(UNIX)
|
2004-06-13 20:20:40 +00:00
|
|
|
"+system()",
|
|
|
|
#endif
|
|
|
|
"+tag_binary",
|
|
|
|
"-tag_old_static",
|
|
|
|
"-tag_any_white",
|
|
|
|
#ifdef FEAT_TCL
|
|
|
|
# ifdef DYNAMIC_TCL
|
|
|
|
"+tcl/dyn",
|
|
|
|
# else
|
|
|
|
"+tcl",
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
"-tcl",
|
|
|
|
#endif
|
2016-04-29 22:59:22 +02:00
|
|
|
#ifdef FEAT_TERMGUICOLORS
|
|
|
|
"+termguicolors",
|
|
|
|
#else
|
|
|
|
"-termguicolors",
|
|
|
|
#endif
|
2017-07-15 20:05:54 +02:00
|
|
|
#ifdef FEAT_TERMINAL
|
|
|
|
"+terminal",
|
|
|
|
#else
|
|
|
|
"-terminal",
|
|
|
|
#endif
|
2016-07-16 14:47:36 +02:00
|
|
|
#if defined(UNIX)
|
2019-12-21 18:47:26 +01:00
|
|
|
// only Unix can have terminfo instead of termcap
|
2004-06-13 20:20:40 +00:00
|
|
|
# ifdef TERMINFO
|
|
|
|
"+terminfo",
|
|
|
|
# else
|
|
|
|
"-terminfo",
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_TERMRESPONSE
|
|
|
|
"+termresponse",
|
|
|
|
#else
|
|
|
|
"-termresponse",
|
|
|
|
#endif
|
|
|
|
"+textobjects",
|
2019-11-30 22:48:27 +01:00
|
|
|
#ifdef FEAT_PROP_POPUP
|
2018-12-13 22:20:09 +01:00
|
|
|
"+textprop",
|
|
|
|
#else
|
|
|
|
"-textprop",
|
|
|
|
#endif
|
|
|
|
#if !defined(UNIX)
|
2019-12-21 18:47:26 +01:00
|
|
|
// unix always includes termcap support
|
2018-12-13 22:20:09 +01:00
|
|
|
# ifdef HAVE_TGETENT
|
|
|
|
"+tgetent",
|
|
|
|
# else
|
|
|
|
"-tgetent",
|
|
|
|
# endif
|
|
|
|
#endif
|
2016-03-15 23:10:59 +01:00
|
|
|
#ifdef FEAT_TIMERS
|
|
|
|
"+timers",
|
|
|
|
#else
|
|
|
|
"-timers",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
"+title",
|
|
|
|
#ifdef FEAT_TOOLBAR
|
|
|
|
"+toolbar",
|
|
|
|
#else
|
|
|
|
"-toolbar",
|
|
|
|
#endif
|
|
|
|
"+user_commands",
|
2018-06-23 19:23:02 +02:00
|
|
|
#ifdef FEAT_VARTABS
|
|
|
|
"+vartabs",
|
|
|
|
#else
|
|
|
|
"-vartabs",
|
2004-06-13 20:20:40 +00:00
|
|
|
#endif
|
|
|
|
"+vertsplit",
|
2022-01-02 12:06:33 +00:00
|
|
|
"+vim9script",
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_VIMINFO
|
|
|
|
"+viminfo",
|
|
|
|
#else
|
|
|
|
"-viminfo",
|
|
|
|
#endif
|
2022-01-02 12:06:33 +00:00
|
|
|
"+virtualedit",
|
|
|
|
"+visual",
|
|
|
|
"+visualextra",
|
2004-06-13 20:20:40 +00:00
|
|
|
"+vreplace",
|
2019-02-17 17:44:42 +01:00
|
|
|
#ifdef MSWIN
|
2018-02-22 21:07:09 +01:00
|
|
|
# ifdef FEAT_VTP
|
|
|
|
"+vtp",
|
|
|
|
# else
|
|
|
|
"-vtp",
|
|
|
|
# endif
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
"+wildignore",
|
|
|
|
"+wildmenu",
|
|
|
|
"+windows",
|
|
|
|
#ifdef FEAT_WRITEBACKUP
|
|
|
|
"+writebackup",
|
|
|
|
#else
|
|
|
|
"-writebackup",
|
|
|
|
#endif
|
|
|
|
#if defined(UNIX) || defined(VMS)
|
|
|
|
# ifdef FEAT_X11
|
|
|
|
"+X11",
|
|
|
|
# else
|
|
|
|
"-X11",
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_XFONTSET
|
|
|
|
"+xfontset",
|
|
|
|
#else
|
|
|
|
"-xfontset",
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_XIM
|
|
|
|
"+xim",
|
|
|
|
#else
|
|
|
|
"-xim",
|
|
|
|
#endif
|
2022-04-05 14:18:44 +01:00
|
|
|
#if defined(MSWIN)
|
2016-08-13 16:39:56 +02:00
|
|
|
# ifdef FEAT_XPM_W32
|
|
|
|
"+xpm_w32",
|
|
|
|
# else
|
|
|
|
"-xpm_w32",
|
|
|
|
# endif
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(HAVE_XPM)
|
2016-08-13 16:39:56 +02:00
|
|
|
"+xpm",
|
2022-04-05 14:18:44 +01:00
|
|
|
#else
|
2016-08-13 16:39:56 +02:00
|
|
|
"-xpm",
|
|
|
|
#endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#if defined(UNIX) || defined(VMS)
|
2022-04-05 14:18:44 +01:00
|
|
|
# if defined(USE_XSMP_INTERACT)
|
2004-06-13 20:20:40 +00:00
|
|
|
"+xsmp_interact",
|
2022-04-05 14:18:44 +01:00
|
|
|
# elif defined(USE_XSMP)
|
2004-06-13 20:20:40 +00:00
|
|
|
"+xsmp",
|
2022-04-05 14:18:44 +01:00
|
|
|
# else
|
2004-06-13 20:20:40 +00:00
|
|
|
"-xsmp",
|
|
|
|
# endif
|
|
|
|
# ifdef FEAT_XCLIPBOARD
|
|
|
|
"+xterm_clipboard",
|
|
|
|
# else
|
|
|
|
"-xterm_clipboard",
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_XTERM_SAVE
|
|
|
|
"+xterm_save",
|
|
|
|
#else
|
|
|
|
"-xterm_save",
|
|
|
|
#endif
|
|
|
|
NULL
|
|
|
|
};
|
|
|
|
|
|
|
|
static int included_patches[] =
|
|
|
|
{ /* Add new patch number below this line */
|
2022-09-20 21:09:42 +01:00
|
|
|
/**/
|
|
|
|
523,
|
2022-09-20 20:52:33 +01:00
|
|
|
/**/
|
|
|
|
522,
|
2022-09-20 20:25:36 +01:00
|
|
|
/**/
|
|
|
|
521,
|
2022-09-20 19:04:32 +01:00
|
|
|
/**/
|
|
|
|
520,
|
2022-09-20 18:59:30 +01:00
|
|
|
/**/
|
|
|
|
519,
|
2022-09-20 17:57:53 +01:00
|
|
|
/**/
|
|
|
|
518,
|
2022-09-20 17:12:13 +01:00
|
|
|
/**/
|
|
|
|
517,
|
2022-09-20 16:15:30 +01:00
|
|
|
/**/
|
|
|
|
516,
|
2022-09-20 15:59:22 +01:00
|
|
|
/**/
|
|
|
|
515,
|
2022-09-20 15:10:31 +01:00
|
|
|
/**/
|
|
|
|
514,
|
2022-09-20 13:51:25 +01:00
|
|
|
/**/
|
|
|
|
513,
|
2022-09-20 13:17:57 +01:00
|
|
|
/**/
|
|
|
|
512,
|
2022-09-20 12:45:15 +01:00
|
|
|
/**/
|
|
|
|
511,
|
2022-09-20 12:02:28 +01:00
|
|
|
/**/
|
|
|
|
510,
|
2022-09-20 11:49:10 +01:00
|
|
|
/**/
|
|
|
|
509,
|
2022-09-20 11:04:47 +01:00
|
|
|
/**/
|
|
|
|
508,
|
2022-09-19 21:16:12 +01:00
|
|
|
/**/
|
|
|
|
507,
|
2022-09-19 18:20:08 +01:00
|
|
|
/**/
|
|
|
|
506,
|
2022-09-19 16:45:29 +01:00
|
|
|
/**/
|
|
|
|
505,
|
2022-09-19 16:08:04 +01:00
|
|
|
/**/
|
|
|
|
504,
|
2022-09-19 16:02:43 +01:00
|
|
|
/**/
|
|
|
|
503,
|
2022-09-19 15:54:34 +01:00
|
|
|
/**/
|
|
|
|
502,
|
2022-09-19 11:44:11 +01:00
|
|
|
/**/
|
|
|
|
501,
|
2022-09-18 15:08:19 +01:00
|
|
|
/**/
|
|
|
|
500,
|
2022-09-18 13:46:08 +01:00
|
|
|
/**/
|
|
|
|
499,
|
2022-09-18 13:06:41 +01:00
|
|
|
/**/
|
|
|
|
498,
|
2022-09-18 12:46:22 +01:00
|
|
|
/**/
|
|
|
|
497,
|
2022-09-18 12:25:49 +01:00
|
|
|
/**/
|
|
|
|
496,
|
2022-09-18 12:00:21 +01:00
|
|
|
/**/
|
|
|
|
495,
|
2022-09-17 21:57:43 +01:00
|
|
|
/**/
|
|
|
|
494,
|
2022-09-17 21:24:49 +01:00
|
|
|
/**/
|
|
|
|
493,
|
2022-09-17 21:20:42 +01:00
|
|
|
/**/
|
|
|
|
492,
|
2022-09-17 21:08:33 +01:00
|
|
|
/**/
|
|
|
|
491,
|
2022-09-17 19:43:23 +01:00
|
|
|
/**/
|
|
|
|
490,
|
2022-09-17 18:57:36 +01:00
|
|
|
/**/
|
|
|
|
489,
|
2022-09-17 17:15:33 +01:00
|
|
|
/**/
|
|
|
|
488,
|
2022-09-17 16:27:39 +01:00
|
|
|
/**/
|
|
|
|
487,
|
2022-09-17 16:16:35 +01:00
|
|
|
/**/
|
|
|
|
486,
|
2022-09-17 15:44:52 +01:00
|
|
|
/**/
|
|
|
|
485,
|
2022-09-17 12:39:58 +01:00
|
|
|
/**/
|
|
|
|
484,
|
2022-09-16 22:16:59 +01:00
|
|
|
/**/
|
|
|
|
483,
|
2022-09-16 20:51:14 +01:00
|
|
|
/**/
|
|
|
|
482,
|
2022-09-16 19:04:24 +01:00
|
|
|
/**/
|
|
|
|
481,
|
2022-09-16 16:06:32 +01:00
|
|
|
/**/
|
|
|
|
480,
|
2022-09-16 15:47:09 +01:00
|
|
|
/**/
|
|
|
|
479,
|
2022-09-16 12:52:58 +01:00
|
|
|
/**/
|
|
|
|
478,
|
2022-09-16 12:28:34 +01:00
|
|
|
/**/
|
|
|
|
477,
|
2022-09-16 12:10:03 +01:00
|
|
|
/**/
|
|
|
|
476,
|
2022-09-15 22:26:18 +01:00
|
|
|
/**/
|
|
|
|
475,
|
2022-09-15 22:03:57 +01:00
|
|
|
/**/
|
|
|
|
474,
|
2022-09-15 21:46:02 +01:00
|
|
|
/**/
|
|
|
|
473,
|
2022-09-15 19:44:09 +01:00
|
|
|
/**/
|
|
|
|
472,
|
2022-09-15 17:44:07 +01:00
|
|
|
/**/
|
|
|
|
471,
|
2022-09-15 17:19:37 +01:00
|
|
|
/**/
|
|
|
|
470,
|
2022-09-15 12:43:26 +01:00
|
|
|
/**/
|
|
|
|
469,
|
2022-09-15 12:20:18 +01:00
|
|
|
/**/
|
|
|
|
468,
|
2022-09-14 22:30:59 +01:00
|
|
|
/**/
|
|
|
|
467,
|
2022-09-14 22:13:59 +01:00
|
|
|
/**/
|
|
|
|
466,
|
2022-09-14 17:27:36 +01:00
|
|
|
/**/
|
|
|
|
465,
|
2022-09-14 16:09:57 +01:00
|
|
|
/**/
|
|
|
|
464,
|
2022-09-14 12:51:49 +01:00
|
|
|
/**/
|
|
|
|
463,
|
2022-09-14 12:06:53 +01:00
|
|
|
/**/
|
|
|
|
462,
|
2022-09-14 01:27:23 +01:00
|
|
|
/**/
|
|
|
|
461,
|
2022-09-14 00:30:51 +01:00
|
|
|
/**/
|
|
|
|
460,
|
2022-09-13 21:10:45 +01:00
|
|
|
/**/
|
|
|
|
459,
|
2022-09-13 18:34:18 +01:00
|
|
|
/**/
|
|
|
|
458,
|
2022-09-13 13:45:26 +01:00
|
|
|
/**/
|
|
|
|
457,
|
2022-09-13 12:36:57 +01:00
|
|
|
/**/
|
|
|
|
456,
|
2022-09-13 11:55:10 +01:00
|
|
|
/**/
|
|
|
|
455,
|
2022-09-13 11:25:54 +01:00
|
|
|
/**/
|
|
|
|
454,
|
2022-09-12 20:35:28 +01:00
|
|
|
/**/
|
|
|
|
453,
|
2022-09-12 19:25:11 +01:00
|
|
|
/**/
|
|
|
|
452,
|
2022-09-12 17:51:07 +01:00
|
|
|
/**/
|
|
|
|
451,
|
2022-09-12 14:09:30 +01:00
|
|
|
/**/
|
|
|
|
450,
|
2022-09-12 13:38:41 +01:00
|
|
|
/**/
|
|
|
|
449,
|
2022-09-12 12:43:23 +01:00
|
|
|
/**/
|
|
|
|
448,
|
2022-09-11 21:36:17 +01:00
|
|
|
/**/
|
|
|
|
447,
|
2022-09-11 20:12:15 +01:00
|
|
|
/**/
|
|
|
|
446,
|
2022-09-11 16:59:53 +01:00
|
|
|
/**/
|
|
|
|
445,
|
2022-09-11 15:14:05 +01:00
|
|
|
/**/
|
|
|
|
444,
|
2022-09-11 13:37:37 +01:00
|
|
|
/**/
|
|
|
|
443,
|
2022-09-11 13:31:01 +01:00
|
|
|
/**/
|
|
|
|
442,
|
2022-09-11 12:01:04 +01:00
|
|
|
/**/
|
|
|
|
441,
|
2022-09-11 11:49:22 +01:00
|
|
|
/**/
|
|
|
|
440,
|
2022-09-10 22:32:14 +01:00
|
|
|
/**/
|
|
|
|
439,
|
2022-09-10 20:00:56 +01:00
|
|
|
/**/
|
|
|
|
438,
|
2022-09-10 13:52:26 +01:00
|
|
|
/**/
|
|
|
|
437,
|
2022-09-10 13:03:12 +01:00
|
|
|
/**/
|
|
|
|
436,
|
2022-09-10 12:36:00 +01:00
|
|
|
/**/
|
|
|
|
435,
|
2022-09-10 11:04:24 +01:00
|
|
|
/**/
|
|
|
|
434,
|
2022-09-10 10:42:20 +01:00
|
|
|
/**/
|
|
|
|
433,
|
2022-09-09 21:35:36 +01:00
|
|
|
/**/
|
|
|
|
432,
|
2022-09-09 20:19:40 +01:00
|
|
|
/**/
|
|
|
|
431,
|
2022-09-09 18:46:47 +01:00
|
|
|
/**/
|
|
|
|
430,
|
2022-09-09 17:39:02 +01:00
|
|
|
/**/
|
|
|
|
429,
|
2022-09-09 17:09:35 +01:00
|
|
|
/**/
|
|
|
|
428,
|
2022-09-09 16:10:26 +01:00
|
|
|
/**/
|
|
|
|
427,
|
2022-09-09 15:09:59 +01:00
|
|
|
/**/
|
|
|
|
426,
|
2022-09-09 15:08:10 +01:00
|
|
|
/**/
|
|
|
|
425,
|
2022-09-09 14:11:41 +01:00
|
|
|
/**/
|
|
|
|
424,
|
2022-09-09 13:27:59 +01:00
|
|
|
/**/
|
|
|
|
423,
|
2022-09-09 11:27:59 +01:00
|
|
|
/**/
|
|
|
|
422,
|
2022-09-09 10:52:47 +01:00
|
|
|
/**/
|
|
|
|
421,
|
2022-09-08 20:49:22 +01:00
|
|
|
/**/
|
|
|
|
420,
|
2022-09-08 19:51:45 +01:00
|
|
|
/**/
|
|
|
|
419,
|
2022-09-08 16:39:22 +01:00
|
|
|
/**/
|
|
|
|
418,
|
2022-09-08 14:41:48 +01:00
|
|
|
/**/
|
|
|
|
417,
|
2022-09-08 13:43:10 +01:00
|
|
|
/**/
|
|
|
|
416,
|
2022-09-08 12:28:02 +01:00
|
|
|
/**/
|
|
|
|
415,
|
2022-09-08 12:17:06 +01:00
|
|
|
/**/
|
|
|
|
414,
|
2022-09-08 10:55:38 +01:00
|
|
|
/**/
|
|
|
|
413,
|
2022-09-07 21:46:56 +01:00
|
|
|
/**/
|
|
|
|
412,
|
2022-09-07 21:30:44 +01:00
|
|
|
/**/
|
|
|
|
411,
|
2022-09-07 20:01:17 +01:00
|
|
|
/**/
|
|
|
|
410,
|
2022-09-07 19:40:17 +01:00
|
|
|
/**/
|
|
|
|
409,
|
2022-09-07 19:03:42 +01:00
|
|
|
/**/
|
|
|
|
408,
|
2022-09-07 18:21:24 +01:00
|
|
|
/**/
|
|
|
|
407,
|
2022-09-07 17:28:09 +01:00
|
|
|
/**/
|
|
|
|
406,
|
2022-09-07 16:48:46 +01:00
|
|
|
/**/
|
|
|
|
405,
|
2022-09-07 15:20:26 +01:00
|
|
|
/**/
|
|
|
|
404,
|
2022-09-07 14:42:49 +01:00
|
|
|
/**/
|
|
|
|
403,
|
2022-09-07 14:13:31 +01:00
|
|
|
/**/
|
|
|
|
402,
|
2022-09-07 13:30:19 +01:00
|
|
|
/**/
|
|
|
|
401,
|
2022-09-07 13:01:11 +01:00
|
|
|
/**/
|
|
|
|
400,
|
2022-09-06 21:02:35 +01:00
|
|
|
/**/
|
|
|
|
399,
|
2022-09-06 18:57:08 +01:00
|
|
|
/**/
|
|
|
|
398,
|
2022-09-06 18:31:14 +01:00
|
|
|
/**/
|
|
|
|
397,
|
2022-09-06 17:00:15 +01:00
|
|
|
/**/
|
|
|
|
396,
|
2022-09-06 16:31:26 +01:00
|
|
|
/**/
|
|
|
|
395,
|
2022-09-06 11:26:56 +01:00
|
|
|
/**/
|
|
|
|
394,
|
2022-09-06 10:56:19 +01:00
|
|
|
/**/
|
|
|
|
393,
|
2022-09-05 21:45:11 +01:00
|
|
|
/**/
|
|
|
|
392,
|
2022-09-05 21:40:44 +01:00
|
|
|
/**/
|
|
|
|
391,
|
2022-09-05 21:21:25 +01:00
|
|
|
/**/
|
|
|
|
390,
|
2022-09-05 19:51:13 +01:00
|
|
|
/**/
|
|
|
|
389,
|
2022-09-05 18:27:47 +01:00
|
|
|
/**/
|
|
|
|
388,
|
2022-09-05 16:53:21 +01:00
|
|
|
/**/
|
|
|
|
387,
|
2022-09-05 14:33:47 +01:00
|
|
|
/**/
|
|
|
|
386,
|
2022-09-05 13:05:29 +01:00
|
|
|
/**/
|
|
|
|
385,
|
2022-09-05 11:04:14 +01:00
|
|
|
/**/
|
|
|
|
384,
|
2022-09-05 10:55:27 +01:00
|
|
|
/**/
|
|
|
|
383,
|
2022-09-05 10:47:13 +01:00
|
|
|
/**/
|
|
|
|
382,
|
2022-09-04 21:29:46 +01:00
|
|
|
/**/
|
|
|
|
381,
|
2022-09-04 21:29:08 +01:00
|
|
|
/**/
|
|
|
|
380,
|
2022-09-04 15:40:36 +01:00
|
|
|
/**/
|
|
|
|
379,
|
2022-09-04 13:45:15 +01:00
|
|
|
/**/
|
|
|
|
378,
|
2022-09-04 13:41:37 +01:00
|
|
|
/**/
|
|
|
|
377,
|
2022-09-04 12:47:21 +01:00
|
|
|
/**/
|
|
|
|
376,
|
2022-09-04 12:29:28 +01:00
|
|
|
/**/
|
|
|
|
375,
|
2022-09-04 11:55:19 +01:00
|
|
|
/**/
|
|
|
|
374,
|
2022-09-04 11:42:22 +01:00
|
|
|
/**/
|
|
|
|
373,
|
2022-09-03 22:08:11 +01:00
|
|
|
/**/
|
|
|
|
372,
|
2022-09-03 21:53:28 +01:00
|
|
|
/**/
|
|
|
|
371,
|
2022-09-03 21:35:53 +01:00
|
|
|
/**/
|
|
|
|
370,
|
2022-09-03 13:58:47 +01:00
|
|
|
/**/
|
|
|
|
369,
|
2022-09-03 12:59:19 +01:00
|
|
|
/**/
|
|
|
|
368,
|
2022-09-03 12:53:20 +01:00
|
|
|
/**/
|
|
|
|
367,
|
2022-09-03 12:09:07 +01:00
|
|
|
/**/
|
|
|
|
366,
|
2022-09-03 10:59:32 +01:00
|
|
|
/**/
|
|
|
|
365,
|
2022-09-03 10:52:24 +01:00
|
|
|
/**/
|
|
|
|
364,
|
2022-09-02 21:55:50 +01:00
|
|
|
/**/
|
|
|
|
363,
|
2022-09-02 19:45:15 +01:00
|
|
|
/**/
|
|
|
|
362,
|
2022-09-02 17:12:07 +01:00
|
|
|
/**/
|
|
|
|
361,
|
2022-09-02 16:47:16 +01:00
|
|
|
/**/
|
|
|
|
360,
|
2022-09-02 15:15:27 +01:00
|
|
|
/**/
|
|
|
|
359,
|
2022-09-02 14:08:53 +01:00
|
|
|
/**/
|
|
|
|
358,
|
2022-09-02 13:26:29 +01:00
|
|
|
/**/
|
|
|
|
357,
|
2022-09-02 12:16:21 +01:00
|
|
|
/**/
|
|
|
|
356,
|
2022-09-02 11:25:37 +01:00
|
|
|
/**/
|
|
|
|
355,
|
2022-09-01 18:42:32 +01:00
|
|
|
/**/
|
|
|
|
354,
|
2022-09-01 17:26:17 +01:00
|
|
|
/**/
|
|
|
|
353,
|
2022-09-01 17:01:32 +01:00
|
|
|
/**/
|
|
|
|
352,
|
2022-09-01 16:43:17 +01:00
|
|
|
/**/
|
|
|
|
351,
|
2022-09-01 16:00:53 +01:00
|
|
|
/**/
|
|
|
|
350,
|
2022-09-01 15:01:25 +01:00
|
|
|
/**/
|
|
|
|
349,
|
2022-09-01 14:38:01 +01:00
|
|
|
/**/
|
|
|
|
348,
|
2022-09-01 13:20:16 +01:00
|
|
|
/**/
|
|
|
|
347,
|
2022-09-01 12:58:52 +01:00
|
|
|
/**/
|
|
|
|
346,
|
2022-09-01 12:22:46 +01:00
|
|
|
/**/
|
|
|
|
345,
|
2022-09-01 11:31:45 +01:00
|
|
|
/**/
|
|
|
|
344,
|
2022-08-31 21:17:10 +01:00
|
|
|
/**/
|
|
|
|
343,
|
2022-08-31 17:49:14 +01:00
|
|
|
/**/
|
|
|
|
342,
|
2022-08-31 16:40:17 +01:00
|
|
|
/**/
|
|
|
|
341,
|
2022-08-31 14:46:18 +01:00
|
|
|
/**/
|
|
|
|
340,
|
2022-08-31 12:01:54 +01:00
|
|
|
/**/
|
|
|
|
339,
|
2022-08-31 11:25:06 +01:00
|
|
|
/**/
|
|
|
|
338,
|
2022-08-30 22:24:26 +01:00
|
|
|
/**/
|
|
|
|
337,
|
2022-08-30 21:46:08 +01:00
|
|
|
/**/
|
|
|
|
336,
|
2022-08-30 19:48:24 +01:00
|
|
|
/**/
|
|
|
|
335,
|
2022-08-30 18:42:16 +01:00
|
|
|
/**/
|
|
|
|
334,
|
2022-08-30 18:26:19 +01:00
|
|
|
/**/
|
|
|
|
333,
|
2022-08-30 18:17:15 +01:00
|
|
|
/**/
|
|
|
|
332,
|
2022-08-30 17:45:33 +01:00
|
|
|
/**/
|
|
|
|
331,
|
2022-08-30 16:40:45 +01:00
|
|
|
/**/
|
|
|
|
330,
|
2022-08-30 15:44:22 +01:00
|
|
|
/**/
|
|
|
|
329,
|
2022-08-30 15:05:30 +01:00
|
|
|
/**/
|
|
|
|
328,
|
2022-08-30 14:34:52 +01:00
|
|
|
/**/
|
|
|
|
327,
|
2022-08-30 11:54:21 +01:00
|
|
|
/**/
|
|
|
|
326,
|
2022-08-29 23:01:45 +01:00
|
|
|
/**/
|
|
|
|
325,
|
2022-08-29 22:51:38 +01:00
|
|
|
/**/
|
|
|
|
324,
|
2022-08-29 22:31:20 +01:00
|
|
|
/**/
|
|
|
|
323,
|
2022-08-29 20:45:16 +01:00
|
|
|
/**/
|
|
|
|
322,
|
2022-08-29 18:16:32 +01:00
|
|
|
/**/
|
|
|
|
321,
|
2022-08-29 16:21:25 +01:00
|
|
|
/**/
|
|
|
|
320,
|
2022-08-29 15:28:53 +01:00
|
|
|
/**/
|
|
|
|
319,
|
2022-08-29 15:06:50 +01:00
|
|
|
/**/
|
|
|
|
318,
|
2022-08-29 13:44:28 +01:00
|
|
|
/**/
|
|
|
|
317,
|
2022-08-29 12:41:06 +01:00
|
|
|
/**/
|
|
|
|
316,
|
2022-08-29 12:23:39 +01:00
|
|
|
/**/
|
|
|
|
315,
|
2022-08-29 11:57:30 +01:00
|
|
|
/**/
|
|
|
|
314,
|
2022-08-29 11:02:59 +01:00
|
|
|
/**/
|
|
|
|
313,
|
2022-08-29 00:08:39 +01:00
|
|
|
/**/
|
|
|
|
312,
|
2022-08-28 23:36:52 +01:00
|
|
|
/**/
|
|
|
|
311,
|
2022-08-28 22:46:21 +01:00
|
|
|
/**/
|
|
|
|
310,
|
2022-08-28 22:21:01 +01:00
|
|
|
/**/
|
|
|
|
309,
|
2022-08-28 22:17:50 +01:00
|
|
|
/**/
|
|
|
|
308,
|
2022-08-28 21:36:43 +01:00
|
|
|
/**/
|
|
|
|
307,
|
2022-08-28 20:58:51 +01:00
|
|
|
/**/
|
|
|
|
306,
|
2022-08-28 19:41:36 +01:00
|
|
|
/**/
|
|
|
|
305,
|
2022-08-28 19:16:15 +01:00
|
|
|
/**/
|
|
|
|
304,
|
2022-08-28 18:52:10 +01:00
|
|
|
/**/
|
|
|
|
303,
|
2022-08-28 17:59:05 +01:00
|
|
|
/**/
|
|
|
|
302,
|
2022-08-28 17:53:23 +01:00
|
|
|
/**/
|
|
|
|
301,
|
2022-08-28 17:44:20 +01:00
|
|
|
/**/
|
|
|
|
300,
|
2022-08-28 17:25:04 +01:00
|
|
|
/**/
|
|
|
|
299,
|
2022-08-28 17:08:18 +01:00
|
|
|
/**/
|
|
|
|
298,
|
2022-08-28 16:39:22 +01:00
|
|
|
/**/
|
|
|
|
297,
|
2022-08-28 14:39:53 +01:00
|
|
|
/**/
|
|
|
|
296,
|
2022-08-28 13:38:43 +01:00
|
|
|
/**/
|
|
|
|
295,
|
2022-08-28 13:02:45 +01:00
|
|
|
/**/
|
|
|
|
294,
|
2022-08-28 12:06:21 +01:00
|
|
|
/**/
|
|
|
|
293,
|
2022-08-27 22:51:25 +01:00
|
|
|
/**/
|
|
|
|
292,
|
2022-08-27 22:21:07 +01:00
|
|
|
/**/
|
|
|
|
291,
|
2022-08-27 22:05:13 +01:00
|
|
|
/**/
|
|
|
|
290,
|
2022-08-27 21:52:52 +01:00
|
|
|
/**/
|
|
|
|
289,
|
2022-08-27 21:30:03 +01:00
|
|
|
/**/
|
|
|
|
288,
|
2022-08-27 21:24:26 +01:00
|
|
|
/**/
|
|
|
|
287,
|
2022-08-27 20:59:57 +01:00
|
|
|
/**/
|
|
|
|
286,
|
2022-08-27 12:22:25 +01:00
|
|
|
/**/
|
|
|
|
285,
|
2022-08-26 22:36:41 +01:00
|
|
|
/**/
|
|
|
|
284,
|
2022-08-26 21:58:31 +01:00
|
|
|
/**/
|
|
|
|
283,
|
2022-08-26 21:33:04 +01:00
|
|
|
/**/
|
|
|
|
282,
|
2022-08-26 19:58:49 +01:00
|
|
|
/**/
|
|
|
|
281,
|
2022-08-26 17:53:44 +01:00
|
|
|
/**/
|
|
|
|
280,
|
2022-08-26 16:58:51 +01:00
|
|
|
/**/
|
|
|
|
279,
|
2022-08-26 16:41:14 +01:00
|
|
|
/**/
|
|
|
|
278,
|
2022-08-26 15:48:55 +01:00
|
|
|
/**/
|
|
|
|
277,
|
2022-08-26 15:34:52 +01:00
|
|
|
/**/
|
|
|
|
276,
|
2022-08-26 13:16:20 +01:00
|
|
|
/**/
|
|
|
|
275,
|
2022-08-26 12:58:17 +01:00
|
|
|
/**/
|
|
|
|
274,
|
2022-08-26 12:26:07 +01:00
|
|
|
/**/
|
|
|
|
273,
|
2022-08-26 11:55:01 +01:00
|
|
|
/**/
|
|
|
|
272,
|
2022-08-26 10:33:54 +01:00
|
|
|
/**/
|
|
|
|
271,
|
2022-08-25 18:12:06 +01:00
|
|
|
/**/
|
|
|
|
270,
|
2022-08-25 17:40:40 +01:00
|
|
|
/**/
|
|
|
|
269,
|
2022-08-25 16:30:01 +01:00
|
|
|
/**/
|
|
|
|
268,
|
2022-08-25 16:24:56 +01:00
|
|
|
/**/
|
|
|
|
267,
|
2022-08-25 16:16:45 +01:00
|
|
|
/**/
|
|
|
|
266,
|
2022-08-25 16:02:23 +01:00
|
|
|
/**/
|
|
|
|
265,
|
2022-08-25 15:21:24 +01:00
|
|
|
/**/
|
|
|
|
264,
|
2022-08-25 15:11:15 +01:00
|
|
|
/**/
|
|
|
|
263,
|
2022-08-25 13:54:16 +01:00
|
|
|
/**/
|
|
|
|
262,
|
2022-08-25 12:45:21 +01:00
|
|
|
/**/
|
|
|
|
261,
|
2022-08-24 20:07:22 +01:00
|
|
|
/**/
|
|
|
|
260,
|
2022-08-24 19:27:45 +01:00
|
|
|
/**/
|
|
|
|
259,
|
2022-08-24 18:08:00 +01:00
|
|
|
/**/
|
|
|
|
258,
|
2022-08-24 17:46:12 +01:00
|
|
|
/**/
|
|
|
|
257,
|
2022-08-24 17:32:35 +01:00
|
|
|
/**/
|
|
|
|
256,
|
2022-08-24 17:05:56 +01:00
|
|
|
/**/
|
|
|
|
255,
|
2022-08-24 16:48:23 +01:00
|
|
|
/**/
|
|
|
|
254,
|
2022-08-24 16:30:36 +01:00
|
|
|
/**/
|
|
|
|
253,
|
2022-08-24 12:24:37 +01:00
|
|
|
/**/
|
|
|
|
252,
|
2022-08-24 11:26:16 +01:00
|
|
|
/**/
|
|
|
|
251,
|
2022-08-23 21:41:15 +01:00
|
|
|
/**/
|
|
|
|
250,
|
2022-08-23 19:54:27 +01:00
|
|
|
/**/
|
|
|
|
249,
|
2022-08-23 19:26:05 +01:00
|
|
|
/**/
|
|
|
|
248,
|
2022-08-23 18:39:37 +01:00
|
|
|
/**/
|
|
|
|
247,
|
2022-08-22 16:35:45 +01:00
|
|
|
/**/
|
|
|
|
246,
|
2022-08-22 15:19:16 +01:00
|
|
|
/**/
|
|
|
|
245,
|
2022-08-22 13:15:13 +01:00
|
|
|
/**/
|
|
|
|
244,
|
2022-08-22 13:00:16 +01:00
|
|
|
/**/
|
|
|
|
243,
|
2022-08-21 22:20:20 +01:00
|
|
|
/**/
|
|
|
|
242,
|
2022-08-21 21:05:08 +01:00
|
|
|
/**/
|
|
|
|
241,
|
2022-08-21 20:33:47 +01:00
|
|
|
/**/
|
|
|
|
240,
|
2022-08-21 19:08:50 +01:00
|
|
|
/**/
|
|
|
|
239,
|
2022-08-21 18:38:21 +01:00
|
|
|
/**/
|
|
|
|
238,
|
2022-08-21 17:24:00 +01:00
|
|
|
/**/
|
|
|
|
237,
|
2022-08-21 14:33:57 +01:00
|
|
|
/**/
|
|
|
|
236,
|
2022-08-21 11:37:17 +01:00
|
|
|
/**/
|
|
|
|
235,
|
2022-08-21 10:40:07 +01:00
|
|
|
/**/
|
|
|
|
234,
|
2022-08-20 20:54:51 +01:00
|
|
|
/**/
|
|
|
|
233,
|
2022-08-20 20:09:14 +01:00
|
|
|
/**/
|
|
|
|
232,
|
2022-08-20 19:26:14 +01:00
|
|
|
/**/
|
|
|
|
231,
|
2022-08-20 14:51:17 +01:00
|
|
|
/**/
|
|
|
|
230,
|
2022-08-20 12:07:58 +01:00
|
|
|
/**/
|
|
|
|
229,
|
2022-08-19 13:59:25 +01:00
|
|
|
/**/
|
|
|
|
228,
|
2022-08-19 13:17:21 +01:00
|
|
|
/**/
|
|
|
|
227,
|
2022-08-18 15:22:09 +01:00
|
|
|
/**/
|
|
|
|
226,
|
2022-08-18 13:28:31 +01:00
|
|
|
/**/
|
|
|
|
225,
|
2022-08-17 15:55:51 +01:00
|
|
|
/**/
|
|
|
|
224,
|
2022-08-17 12:09:45 +01:00
|
|
|
/**/
|
|
|
|
223,
|
2022-08-16 20:24:29 +01:00
|
|
|
/**/
|
|
|
|
222,
|
2022-08-16 19:34:44 +01:00
|
|
|
/**/
|
|
|
|
221,
|
2022-08-16 17:50:38 +01:00
|
|
|
/**/
|
|
|
|
220,
|
2022-08-16 16:09:59 +01:00
|
|
|
/**/
|
|
|
|
219,
|
2022-08-16 14:51:53 +01:00
|
|
|
/**/
|
|
|
|
218,
|
2022-08-15 17:53:55 +01:00
|
|
|
/**/
|
|
|
|
217,
|
2022-08-15 17:28:27 +01:00
|
|
|
/**/
|
|
|
|
216,
|
2022-08-15 16:29:37 +01:00
|
|
|
/**/
|
|
|
|
215,
|
2022-08-15 15:55:10 +01:00
|
|
|
/**/
|
|
|
|
214,
|
2022-08-14 22:23:02 +01:00
|
|
|
/**/
|
|
|
|
213,
|
2022-08-14 21:46:07 +01:00
|
|
|
/**/
|
|
|
|
212,
|
2022-08-14 21:28:32 +01:00
|
|
|
/**/
|
|
|
|
211,
|
2022-08-14 19:37:36 +01:00
|
|
|
/**/
|
|
|
|
210,
|
2022-08-14 16:50:42 +01:00
|
|
|
/**/
|
|
|
|
209,
|
2022-08-14 16:36:38 +01:00
|
|
|
/**/
|
|
|
|
208,
|
2022-08-14 14:49:50 +01:00
|
|
|
/**/
|
|
|
|
207,
|
2022-08-14 14:17:45 +01:00
|
|
|
/**/
|
|
|
|
206,
|
2022-08-14 13:28:55 +01:00
|
|
|
/**/
|
|
|
|
205,
|
2022-08-14 12:07:11 +01:00
|
|
|
/**/
|
|
|
|
204,
|
2022-08-13 21:37:29 +01:00
|
|
|
/**/
|
|
|
|
203,
|
2022-08-13 21:35:13 +01:00
|
|
|
/**/
|
|
|
|
202,
|
2022-08-13 20:17:34 +01:00
|
|
|
/**/
|
|
|
|
201,
|
2022-08-13 19:35:05 +01:00
|
|
|
/**/
|
|
|
|
200,
|
2022-08-13 16:41:19 +01:00
|
|
|
/**/
|
|
|
|
199,
|
2022-08-13 14:09:44 +01:00
|
|
|
/**/
|
|
|
|
198,
|
2022-08-13 13:21:31 +01:00
|
|
|
/**/
|
|
|
|
197,
|
2022-08-13 13:09:20 +01:00
|
|
|
/**/
|
|
|
|
196,
|
2022-08-12 21:57:13 +01:00
|
|
|
/**/
|
|
|
|
195,
|
2022-08-12 13:05:49 +01:00
|
|
|
/**/
|
|
|
|
194,
|
2022-08-11 17:24:50 +01:00
|
|
|
/**/
|
|
|
|
193,
|
2022-08-11 15:52:14 +01:00
|
|
|
/**/
|
|
|
|
192,
|
2022-08-11 14:13:37 +01:00
|
|
|
/**/
|
|
|
|
191,
|
2022-08-11 13:17:30 +01:00
|
|
|
/**/
|
|
|
|
190,
|
2022-08-10 20:50:23 +01:00
|
|
|
/**/
|
|
|
|
189,
|
2022-08-10 19:50:47 +01:00
|
|
|
/**/
|
|
|
|
188,
|
2022-08-10 17:23:12 +01:00
|
|
|
/**/
|
|
|
|
187,
|
2022-08-10 16:49:02 +01:00
|
|
|
/**/
|
|
|
|
186,
|
2022-08-10 16:00:33 +01:00
|
|
|
/**/
|
|
|
|
185,
|
2022-08-10 13:39:35 +01:00
|
|
|
/**/
|
|
|
|
184,
|
2022-08-10 13:12:03 +01:00
|
|
|
/**/
|
|
|
|
183,
|
2022-08-10 11:48:10 +01:00
|
|
|
/**/
|
|
|
|
182,
|
2022-08-09 21:37:55 +01:00
|
|
|
/**/
|
|
|
|
181,
|
2022-08-09 19:30:19 +01:00
|
|
|
/**/
|
|
|
|
180,
|
2022-08-09 18:25:23 +01:00
|
|
|
/**/
|
|
|
|
179,
|
2022-08-09 16:55:41 +01:00
|
|
|
/**/
|
|
|
|
178,
|
2022-08-09 14:19:40 +01:00
|
|
|
/**/
|
|
|
|
177,
|
2022-08-09 12:53:14 +01:00
|
|
|
/**/
|
|
|
|
176,
|
2022-08-09 12:25:10 +01:00
|
|
|
/**/
|
|
|
|
175,
|
2022-08-08 21:43:11 +01:00
|
|
|
/**/
|
|
|
|
174,
|
2022-08-08 18:12:30 +01:00
|
|
|
/**/
|
|
|
|
173,
|
2022-08-08 17:08:05 +01:00
|
|
|
/**/
|
|
|
|
172,
|
2022-08-08 16:03:06 +01:00
|
|
|
/**/
|
|
|
|
171,
|
2022-08-08 15:49:18 +01:00
|
|
|
/**/
|
|
|
|
170,
|
2022-08-08 14:59:47 +01:00
|
|
|
/**/
|
|
|
|
169,
|
2022-08-08 11:07:47 +01:00
|
|
|
/**/
|
|
|
|
168,
|
2022-08-07 22:04:56 +01:00
|
|
|
/**/
|
|
|
|
167,
|
2022-08-07 21:48:37 +01:00
|
|
|
/**/
|
|
|
|
166,
|
2022-08-07 18:20:08 +01:00
|
|
|
/**/
|
|
|
|
165,
|
2022-08-07 18:09:10 +01:00
|
|
|
/**/
|
|
|
|
164,
|
2022-08-07 14:55:14 +01:00
|
|
|
/**/
|
|
|
|
163,
|
2022-08-07 11:53:40 +01:00
|
|
|
/**/
|
|
|
|
162,
|
2022-08-06 22:38:02 +01:00
|
|
|
/**/
|
|
|
|
161,
|
2022-08-06 22:23:40 +01:00
|
|
|
/**/
|
|
|
|
160,
|
2022-08-06 22:13:03 +01:00
|
|
|
/**/
|
|
|
|
159,
|
2022-08-06 22:03:20 +01:00
|
|
|
/**/
|
|
|
|
158,
|
2022-08-06 21:03:53 +01:00
|
|
|
/**/
|
|
|
|
157,
|
2022-08-06 18:12:06 +01:00
|
|
|
/**/
|
|
|
|
156,
|
2022-08-06 17:38:53 +01:00
|
|
|
/**/
|
|
|
|
155,
|
2022-08-06 17:10:57 +01:00
|
|
|
/**/
|
|
|
|
154,
|
2022-08-06 15:59:06 +01:00
|
|
|
/**/
|
|
|
|
153,
|
2022-08-06 14:21:52 +01:00
|
|
|
/**/
|
|
|
|
152,
|
2022-08-06 13:48:20 +01:00
|
|
|
/**/
|
|
|
|
151,
|
2022-08-06 11:35:28 +01:00
|
|
|
/**/
|
|
|
|
150,
|
2022-08-06 10:28:19 +01:00
|
|
|
/**/
|
|
|
|
149,
|
2022-08-05 21:39:30 +01:00
|
|
|
/**/
|
|
|
|
148,
|
2022-08-05 20:25:50 +01:00
|
|
|
/**/
|
|
|
|
147,
|
2022-08-05 20:03:55 +01:00
|
|
|
/**/
|
|
|
|
146,
|
2022-08-05 19:46:48 +01:00
|
|
|
/**/
|
|
|
|
145,
|
2022-08-05 17:05:04 +01:00
|
|
|
/**/
|
|
|
|
144,
|
2022-08-05 13:07:23 +01:00
|
|
|
/**/
|
|
|
|
143,
|
2022-08-05 11:45:17 +01:00
|
|
|
/**/
|
|
|
|
142,
|
2022-08-05 10:52:30 +01:00
|
|
|
/**/
|
|
|
|
141,
|
2022-08-04 18:50:14 +01:00
|
|
|
/**/
|
|
|
|
140,
|
2022-08-04 15:03:48 +01:00
|
|
|
/**/
|
|
|
|
139,
|
2022-08-04 13:01:48 +01:00
|
|
|
/**/
|
|
|
|
138,
|
2022-08-03 16:13:27 +01:00
|
|
|
/**/
|
|
|
|
137,
|
2022-08-03 15:48:33 +01:00
|
|
|
/**/
|
|
|
|
136,
|
2022-08-02 12:15:51 +01:00
|
|
|
/**/
|
|
|
|
135,
|
2022-08-02 11:48:53 +01:00
|
|
|
/**/
|
|
|
|
134,
|
2022-08-01 22:18:50 +01:00
|
|
|
/**/
|
|
|
|
133,
|
2022-08-01 16:51:02 +01:00
|
|
|
/**/
|
|
|
|
132,
|
2022-08-01 16:11:06 +01:00
|
|
|
/**/
|
|
|
|
131,
|
2022-08-01 15:52:55 +01:00
|
|
|
/**/
|
|
|
|
130,
|
2022-08-01 14:00:31 +01:00
|
|
|
/**/
|
|
|
|
129,
|
2022-08-01 12:06:40 +01:00
|
|
|
/**/
|
|
|
|
128,
|
2022-08-01 11:49:45 +01:00
|
|
|
/**/
|
|
|
|
127,
|
2022-08-01 11:38:17 +01:00
|
|
|
/**/
|
|
|
|
126,
|
2022-08-01 11:17:40 +01:00
|
|
|
/**/
|
|
|
|
125,
|
2022-07-31 18:34:32 +01:00
|
|
|
/**/
|
|
|
|
124,
|
2022-07-31 18:03:57 +01:00
|
|
|
/**/
|
|
|
|
123,
|
2022-07-31 18:00:10 +01:00
|
|
|
/**/
|
|
|
|
122,
|
2022-07-31 17:12:43 +01:00
|
|
|
/**/
|
|
|
|
121,
|
2022-07-31 12:26:05 +01:00
|
|
|
/**/
|
|
|
|
120,
|
2022-07-31 11:50:42 +01:00
|
|
|
/**/
|
|
|
|
119,
|
2022-07-31 11:37:20 +01:00
|
|
|
/**/
|
|
|
|
118,
|
2022-07-30 22:17:18 +01:00
|
|
|
/**/
|
|
|
|
117,
|
2022-07-30 21:33:46 +01:00
|
|
|
/**/
|
|
|
|
116,
|
2022-07-30 19:10:06 +01:00
|
|
|
/**/
|
|
|
|
115,
|
2022-07-30 16:54:05 +01:00
|
|
|
/**/
|
|
|
|
114,
|
2022-07-30 15:43:59 +01:00
|
|
|
/**/
|
|
|
|
113,
|
2022-07-30 15:35:12 +01:00
|
|
|
/**/
|
|
|
|
112,
|
2022-07-30 14:56:17 +01:00
|
|
|
/**/
|
|
|
|
111,
|
2022-07-30 12:03:16 +01:00
|
|
|
/**/
|
|
|
|
110,
|
2022-07-30 11:39:57 +01:00
|
|
|
/**/
|
|
|
|
109,
|
2022-07-30 11:00:50 +01:00
|
|
|
/**/
|
|
|
|
108,
|
2022-07-29 19:50:41 +01:00
|
|
|
/**/
|
|
|
|
107,
|
2022-07-29 18:32:20 +01:00
|
|
|
/**/
|
|
|
|
106,
|
2022-07-29 16:22:25 +01:00
|
|
|
/**/
|
|
|
|
105,
|
2022-07-29 15:28:27 +01:00
|
|
|
/**/
|
|
|
|
104,
|
2022-07-28 22:39:54 +01:00
|
|
|
/**/
|
|
|
|
103,
|
2022-07-28 21:51:37 +01:00
|
|
|
/**/
|
|
|
|
102,
|
2022-07-28 18:44:27 +01:00
|
|
|
/**/
|
|
|
|
101,
|
2022-07-28 12:54:08 +01:00
|
|
|
/**/
|
|
|
|
100,
|
2022-07-28 12:34:09 +01:00
|
|
|
/**/
|
|
|
|
99,
|
2022-07-28 12:09:04 +01:00
|
|
|
/**/
|
|
|
|
98,
|
2022-07-28 11:56:01 +01:00
|
|
|
/**/
|
|
|
|
97,
|
2022-07-27 18:26:03 +01:00
|
|
|
/**/
|
|
|
|
96,
|
2022-07-27 15:48:45 +01:00
|
|
|
/**/
|
|
|
|
95,
|
2022-07-27 15:23:35 +01:00
|
|
|
/**/
|
|
|
|
94,
|
2022-07-27 15:07:06 +01:00
|
|
|
/**/
|
|
|
|
93,
|
2022-07-27 14:40:00 +01:00
|
|
|
/**/
|
|
|
|
92,
|
2022-07-27 13:18:14 +01:00
|
|
|
/**/
|
|
|
|
91,
|
2022-07-27 12:30:13 +01:00
|
|
|
/**/
|
|
|
|
90,
|
2022-07-26 22:01:36 +01:00
|
|
|
/**/
|
|
|
|
89,
|
2022-07-26 21:42:03 +01:00
|
|
|
/**/
|
|
|
|
88,
|
2022-07-26 21:26:18 +01:00
|
|
|
/**/
|
|
|
|
87,
|
2022-07-26 20:42:25 +01:00
|
|
|
/**/
|
|
|
|
86,
|
2022-07-26 19:44:56 +01:00
|
|
|
/**/
|
|
|
|
85,
|
2022-07-26 19:18:28 +01:00
|
|
|
/**/
|
|
|
|
84,
|
2022-07-26 18:12:38 +01:00
|
|
|
/**/
|
|
|
|
83,
|
2022-07-26 17:48:13 +01:00
|
|
|
/**/
|
|
|
|
82,
|
2022-07-26 17:23:47 +01:00
|
|
|
/**/
|
|
|
|
81,
|
2022-07-26 16:03:42 +01:00
|
|
|
/**/
|
|
|
|
80,
|
2022-07-26 15:10:56 +01:00
|
|
|
/**/
|
|
|
|
79,
|
2022-07-26 14:44:36 +01:00
|
|
|
/**/
|
|
|
|
78,
|
2022-07-26 13:47:13 +01:00
|
|
|
/**/
|
|
|
|
77,
|
2022-07-26 12:24:41 +01:00
|
|
|
/**/
|
|
|
|
76,
|
2022-07-26 11:42:34 +01:00
|
|
|
/**/
|
|
|
|
75,
|
2022-07-26 11:20:48 +01:00
|
|
|
/**/
|
|
|
|
74,
|
2022-07-25 21:40:06 +01:00
|
|
|
/**/
|
|
|
|
73,
|
2022-07-25 21:15:45 +01:00
|
|
|
/**/
|
|
|
|
72,
|
2022-07-25 19:50:57 +01:00
|
|
|
/**/
|
|
|
|
71,
|
2022-07-25 19:42:02 +01:00
|
|
|
/**/
|
|
|
|
70,
|
2022-07-25 19:07:04 +01:00
|
|
|
/**/
|
|
|
|
69,
|
2022-07-25 18:35:15 +01:00
|
|
|
/**/
|
|
|
|
68,
|
2022-07-25 18:13:54 +01:00
|
|
|
/**/
|
|
|
|
67,
|
2022-07-25 12:28:09 +01:00
|
|
|
/**/
|
|
|
|
66,
|
2022-07-24 20:48:00 +01:00
|
|
|
/**/
|
|
|
|
65,
|
2022-07-24 20:08:01 +01:00
|
|
|
/**/
|
|
|
|
64,
|
2022-07-23 09:52:04 +01:00
|
|
|
/**/
|
|
|
|
63,
|
2022-07-23 09:22:47 +01:00
|
|
|
/**/
|
|
|
|
62,
|
2022-07-23 09:06:48 +01:00
|
|
|
/**/
|
|
|
|
61,
|
2022-07-23 06:53:08 +01:00
|
|
|
/**/
|
|
|
|
60,
|
2022-07-23 06:25:29 +01:00
|
|
|
/**/
|
|
|
|
59,
|
2022-07-23 05:04:16 +01:00
|
|
|
/**/
|
|
|
|
58,
|
2022-07-18 20:48:50 +01:00
|
|
|
/**/
|
|
|
|
57,
|
2022-07-18 17:49:03 +01:00
|
|
|
/**/
|
|
|
|
56,
|
2022-07-16 17:46:47 +01:00
|
|
|
/**/
|
|
|
|
55,
|
2022-07-15 20:45:20 +01:00
|
|
|
/**/
|
|
|
|
54,
|
2022-07-14 17:40:49 +01:00
|
|
|
/**/
|
|
|
|
53,
|
2022-07-14 17:25:14 +01:00
|
|
|
/**/
|
|
|
|
52,
|
2022-07-14 17:06:12 +01:00
|
|
|
/**/
|
|
|
|
51,
|
2022-07-12 17:34:31 +01:00
|
|
|
/**/
|
|
|
|
50,
|
2022-07-09 20:27:07 +01:00
|
|
|
/**/
|
|
|
|
49,
|
2022-07-09 04:56:24 +01:00
|
|
|
/**/
|
|
|
|
48,
|
2022-07-07 22:20:31 +01:00
|
|
|
/**/
|
|
|
|
47,
|
2022-07-07 19:59:49 +01:00
|
|
|
/**/
|
|
|
|
46,
|
2022-07-07 19:42:04 +01:00
|
|
|
/**/
|
|
|
|
45,
|
2022-07-06 13:31:28 +01:00
|
|
|
/**/
|
|
|
|
44,
|
2022-07-06 12:57:31 +01:00
|
|
|
/**/
|
|
|
|
43,
|
2022-07-05 21:56:39 +01:00
|
|
|
/**/
|
|
|
|
42,
|
2022-07-05 18:42:56 +01:00
|
|
|
/**/
|
|
|
|
41,
|
2022-07-04 21:03:36 +01:00
|
|
|
/**/
|
|
|
|
40,
|
2022-07-04 19:58:17 +01:00
|
|
|
/**/
|
|
|
|
39,
|
2022-07-04 18:05:51 +01:00
|
|
|
/**/
|
|
|
|
38,
|
2022-07-04 17:46:22 +01:00
|
|
|
/**/
|
|
|
|
37,
|
2022-07-04 17:34:33 +01:00
|
|
|
/**/
|
|
|
|
36,
|
2022-07-04 13:37:07 +01:00
|
|
|
/**/
|
|
|
|
35,
|
2022-07-04 11:03:07 +01:00
|
|
|
/**/
|
|
|
|
34,
|
2022-07-04 10:47:31 +01:00
|
|
|
/**/
|
|
|
|
33,
|
2022-07-03 14:21:09 +01:00
|
|
|
/**/
|
|
|
|
32,
|
2022-07-03 13:16:09 +01:00
|
|
|
/**/
|
|
|
|
31,
|
2022-07-02 20:48:01 +01:00
|
|
|
/**/
|
|
|
|
30,
|
2022-07-02 17:58:23 +01:00
|
|
|
/**/
|
|
|
|
29,
|
2022-07-02 17:36:31 +01:00
|
|
|
/**/
|
|
|
|
28,
|
2022-07-02 16:29:34 +01:00
|
|
|
/**/
|
|
|
|
27,
|
2022-07-02 15:10:00 +01:00
|
|
|
/**/
|
|
|
|
26,
|
2022-07-02 13:43:21 +01:00
|
|
|
/**/
|
|
|
|
25,
|
2022-07-02 12:08:16 +01:00
|
|
|
/**/
|
|
|
|
24,
|
2022-07-02 11:40:40 +01:00
|
|
|
/**/
|
|
|
|
23,
|
2022-07-01 22:44:19 +01:00
|
|
|
/**/
|
|
|
|
22,
|
2022-07-01 22:26:20 +01:00
|
|
|
/**/
|
|
|
|
21,
|
2022-07-01 19:58:30 +01:00
|
|
|
/**/
|
|
|
|
20,
|
2022-07-01 19:11:23 +01:00
|
|
|
/**/
|
|
|
|
19,
|
2022-07-01 16:35:45 +01:00
|
|
|
/**/
|
|
|
|
18,
|
2022-07-01 15:26:15 +01:00
|
|
|
/**/
|
|
|
|
17,
|
2022-07-01 13:15:35 +01:00
|
|
|
/**/
|
|
|
|
16,
|
2022-07-01 12:13:15 +01:00
|
|
|
/**/
|
|
|
|
15,
|
2022-06-30 22:28:08 +01:00
|
|
|
/**/
|
|
|
|
14,
|
2022-06-30 22:13:59 +01:00
|
|
|
/**/
|
|
|
|
13,
|
2022-06-30 16:25:21 +01:00
|
|
|
/**/
|
|
|
|
12,
|
2022-06-30 12:30:19 +01:00
|
|
|
/**/
|
|
|
|
11,
|
2022-06-30 11:03:39 +01:00
|
|
|
/**/
|
|
|
|
10,
|
2022-06-29 21:16:58 +01:00
|
|
|
/**/
|
|
|
|
9,
|
2022-06-29 20:24:49 +01:00
|
|
|
/**/
|
|
|
|
8,
|
2022-06-29 18:39:11 +01:00
|
|
|
/**/
|
|
|
|
7,
|
2022-06-29 14:39:12 +01:00
|
|
|
/**/
|
|
|
|
6,
|
2022-06-29 13:48:49 +01:00
|
|
|
/**/
|
|
|
|
5,
|
2022-06-29 13:18:27 +01:00
|
|
|
/**/
|
|
|
|
4,
|
2022-06-29 12:55:36 +01:00
|
|
|
/**/
|
|
|
|
3,
|
2022-06-29 10:37:40 +01:00
|
|
|
/**/
|
|
|
|
2,
|
2022-06-28 20:07:42 +01:00
|
|
|
/**/
|
|
|
|
1,
|
2004-06-13 20:20:40 +00:00
|
|
|
/**/
|
|
|
|
0
|
|
|
|
};
|
|
|
|
|
2008-11-30 11:15:09 +00:00
|
|
|
/*
|
|
|
|
* Place to put a short description when adding a feature with a patch.
|
|
|
|
* Keep it short, e.g.,: "relative numbers", "persistent undo".
|
|
|
|
* Also add a comment marker to separate the lines.
|
|
|
|
* See the official Vim patches for the diff format: It must use a context of
|
2008-12-24 13:25:14 +00:00
|
|
|
* one line only. Create it by hand or use "diff -C2" and edit the patch.
|
2008-11-30 11:15:09 +00:00
|
|
|
*/
|
|
|
|
static char *(extra_patches[]) =
|
|
|
|
{ /* Add your patch description below this line */
|
|
|
|
/**/
|
|
|
|
NULL
|
|
|
|
};
|
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
int
|
2016-01-30 21:29:58 +01:00
|
|
|
highest_patch(void)
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
2019-06-14 14:39:51 +02:00
|
|
|
// this relies on the highest patch number to be the first entry
|
|
|
|
return included_patches[0];
|
2004-06-13 20:20:40 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
#if defined(FEAT_EVAL) || defined(PROTO)
|
|
|
|
/*
|
|
|
|
* Return TRUE if patch "n" has been included.
|
|
|
|
*/
|
|
|
|
int
|
2016-01-30 21:29:58 +01:00
|
|
|
has_patch(int n)
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
2020-11-10 20:54:29 +01:00
|
|
|
int h, m, l;
|
2004-06-13 20:20:40 +00:00
|
|
|
|
2020-11-10 20:54:29 +01:00
|
|
|
// Perform a binary search.
|
|
|
|
l = 0;
|
2021-06-02 13:28:16 +02:00
|
|
|
h = (int)ARRAY_LENGTH(included_patches) - 1;
|
2022-06-30 11:03:39 +01:00
|
|
|
for (;;)
|
2020-11-10 20:54:29 +01:00
|
|
|
{
|
|
|
|
m = (l + h) / 2;
|
|
|
|
if (included_patches[m] == n)
|
2004-06-13 20:20:40 +00:00
|
|
|
return TRUE;
|
2022-06-30 11:03:39 +01:00
|
|
|
if (l == h)
|
|
|
|
break;
|
2020-11-10 20:54:29 +01:00
|
|
|
if (included_patches[m] < n)
|
|
|
|
h = m;
|
|
|
|
else
|
|
|
|
l = m + 1;
|
|
|
|
}
|
2004-06-13 20:20:40 +00:00
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
void
|
2016-01-30 21:29:58 +01:00
|
|
|
ex_version(exarg_T *eap)
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
|
|
|
/*
|
|
|
|
* Ignore a ":version 9.99" command.
|
|
|
|
*/
|
|
|
|
if (*eap->arg == NUL)
|
|
|
|
{
|
|
|
|
msg_putchar('\n');
|
|
|
|
list_version();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-04-20 22:01:41 +02:00
|
|
|
/*
|
|
|
|
* Output a string for the version message. If it's going to wrap, output a
|
|
|
|
* newline, unless the message is too long to fit on the screen anyway.
|
|
|
|
* When "wrap" is TRUE wrap the string in [].
|
|
|
|
*/
|
|
|
|
static void
|
|
|
|
version_msg_wrap(char_u *s, int wrap)
|
|
|
|
{
|
2021-10-02 11:26:51 +01:00
|
|
|
int len = vim_strsize(s) + (wrap ? 2 : 0);
|
2018-04-20 22:01:41 +02:00
|
|
|
|
|
|
|
if (!got_int && len < (int)Columns && msg_col + len >= (int)Columns
|
|
|
|
&& *s != '\n')
|
|
|
|
msg_putchar('\n');
|
|
|
|
if (!got_int)
|
|
|
|
{
|
|
|
|
if (wrap)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts("[");
|
|
|
|
msg_puts((char *)s);
|
2018-04-20 22:01:41 +02:00
|
|
|
if (wrap)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts("]");
|
2018-04-20 22:01:41 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
version_msg(char *s)
|
|
|
|
{
|
|
|
|
version_msg_wrap((char_u *)s, FALSE);
|
|
|
|
}
|
|
|
|
|
2013-02-20 16:47:36 +01:00
|
|
|
/*
|
|
|
|
* List all features aligned in columns, dictionary style.
|
|
|
|
*/
|
|
|
|
static void
|
2016-01-30 21:29:58 +01:00
|
|
|
list_features(void)
|
2018-04-20 22:01:41 +02:00
|
|
|
{
|
|
|
|
list_in_columns((char_u **)features, -1, -1);
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* List string items nicely aligned in columns.
|
|
|
|
* When "size" is < 0 then the last entry is marked with NULL.
|
|
|
|
* The entry with index "current" is inclosed in [].
|
|
|
|
*/
|
|
|
|
void
|
|
|
|
list_in_columns(char_u **items, int size, int current)
|
2013-02-20 16:47:36 +01:00
|
|
|
{
|
|
|
|
int i;
|
|
|
|
int ncol;
|
|
|
|
int nrow;
|
2019-07-23 23:00:08 +02:00
|
|
|
int cur_row = 1;
|
2018-04-20 22:01:41 +02:00
|
|
|
int item_count = 0;
|
2013-02-20 16:47:36 +01:00
|
|
|
int width = 0;
|
2019-01-02 17:26:35 +01:00
|
|
|
#ifdef FEAT_SYN_HL
|
|
|
|
int use_highlight = (items == (char_u **)features);
|
|
|
|
#endif
|
2013-02-20 16:47:36 +01:00
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Find the length of the longest item, use that + 1 as the column
|
|
|
|
// width.
|
2018-04-20 22:01:41 +02:00
|
|
|
for (i = 0; size < 0 ? items[i] != NULL : i < size; ++i)
|
2013-02-20 16:47:36 +01:00
|
|
|
{
|
2021-10-02 11:26:51 +01:00
|
|
|
int l = vim_strsize(items[i]) + (i == current ? 2 : 0);
|
2013-02-20 16:47:36 +01:00
|
|
|
|
|
|
|
if (l > width)
|
|
|
|
width = l;
|
2018-04-20 22:01:41 +02:00
|
|
|
++item_count;
|
2013-02-20 16:47:36 +01:00
|
|
|
}
|
|
|
|
width += 1;
|
|
|
|
|
|
|
|
if (Columns < width)
|
|
|
|
{
|
2019-07-27 21:23:45 +02:00
|
|
|
// Not enough screen columns - show one per line
|
2018-09-18 21:51:47 +02:00
|
|
|
for (i = 0; i < item_count; ++i)
|
2013-02-20 16:47:36 +01:00
|
|
|
{
|
2018-04-20 22:01:41 +02:00
|
|
|
version_msg_wrap(items[i], i == current);
|
2019-07-27 21:23:45 +02:00
|
|
|
if (msg_col > 0 && i < item_count - 1)
|
2013-02-20 16:47:36 +01:00
|
|
|
msg_putchar('\n');
|
|
|
|
}
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2019-07-23 23:00:08 +02:00
|
|
|
// The rightmost column doesn't need a separator.
|
|
|
|
// Sacrifice it to fit in one more column if possible.
|
2013-02-26 15:27:23 +01:00
|
|
|
ncol = (int) (Columns + 1) / width;
|
2022-02-03 13:33:03 +00:00
|
|
|
nrow = item_count / ncol + ((item_count % ncol) ? 1 : 0);
|
2013-02-20 16:47:36 +01:00
|
|
|
|
2019-07-27 21:23:45 +02:00
|
|
|
// "i" counts columns then rows. "idx" counts rows then columns.
|
2013-02-20 16:47:36 +01:00
|
|
|
for (i = 0; !got_int && i < nrow * ncol; ++i)
|
|
|
|
{
|
|
|
|
int idx = (i / ncol) + (i % ncol) * nrow;
|
|
|
|
|
2018-04-20 22:01:41 +02:00
|
|
|
if (idx < item_count)
|
2013-02-20 16:47:36 +01:00
|
|
|
{
|
|
|
|
int last_col = (i + 1) % ncol == 0;
|
|
|
|
|
2018-04-20 22:01:41 +02:00
|
|
|
if (idx == current)
|
|
|
|
msg_putchar('[');
|
2019-01-02 17:26:35 +01:00
|
|
|
#ifdef FEAT_SYN_HL
|
|
|
|
if (use_highlight && items[idx][0] == '-')
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts_attr((char *)items[idx], HL_ATTR(HLF_W));
|
2019-01-02 17:26:35 +01:00
|
|
|
else
|
|
|
|
#endif
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts((char *)items[idx]);
|
2018-04-20 22:01:41 +02:00
|
|
|
if (idx == current)
|
|
|
|
msg_putchar(']');
|
2013-02-20 16:47:36 +01:00
|
|
|
if (last_col)
|
|
|
|
{
|
2019-07-23 23:00:08 +02:00
|
|
|
if (msg_col > 0 && cur_row < nrow)
|
2013-02-20 16:47:36 +01:00
|
|
|
msg_putchar('\n');
|
2019-07-23 23:00:08 +02:00
|
|
|
++cur_row;
|
2013-02-20 16:47:36 +01:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
while (msg_col % width)
|
|
|
|
msg_putchar(' ');
|
|
|
|
}
|
|
|
|
}
|
2019-07-25 21:52:39 +02:00
|
|
|
else
|
|
|
|
{
|
|
|
|
// this row is out of items, thus at the end of the row
|
2019-07-27 21:23:45 +02:00
|
|
|
if (msg_col > 0)
|
|
|
|
{
|
|
|
|
if (cur_row < nrow)
|
|
|
|
msg_putchar('\n');
|
|
|
|
++cur_row;
|
|
|
|
}
|
2019-07-25 21:52:39 +02:00
|
|
|
}
|
2013-02-20 16:47:36 +01:00
|
|
|
}
|
|
|
|
}
|
2013-02-26 11:25:33 +01:00
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
void
|
2016-01-30 21:29:58 +01:00
|
|
|
list_version(void)
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
|
|
|
int i;
|
|
|
|
int first;
|
|
|
|
char *s = "";
|
|
|
|
|
|
|
|
/*
|
|
|
|
* When adding features here, don't forget to update the list of
|
|
|
|
* internal variables in eval.c!
|
|
|
|
*/
|
2018-06-23 16:12:21 +02:00
|
|
|
init_longVersion();
|
2019-01-19 17:43:09 +01:00
|
|
|
msg(longVersion);
|
2019-02-17 17:44:42 +01:00
|
|
|
#ifdef MSWIN
|
|
|
|
# ifdef FEAT_GUI_MSWIN
|
2019-04-28 19:46:49 +02:00
|
|
|
# ifdef VIMDLL
|
|
|
|
# ifdef _WIN64
|
|
|
|
msg_puts(_("\nMS-Windows 64-bit GUI/console version"));
|
|
|
|
# else
|
|
|
|
msg_puts(_("\nMS-Windows 32-bit GUI/console version"));
|
|
|
|
# endif
|
2016-10-12 14:20:24 +02:00
|
|
|
# else
|
2019-04-28 19:46:49 +02:00
|
|
|
# ifdef _WIN64
|
|
|
|
msg_puts(_("\nMS-Windows 64-bit GUI version"));
|
|
|
|
# else
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nMS-Windows 32-bit GUI version"));
|
2019-04-28 19:46:49 +02:00
|
|
|
# endif
|
2004-06-13 20:20:40 +00:00
|
|
|
# endif
|
2019-02-17 17:44:42 +01:00
|
|
|
# ifdef FEAT_OLE
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_(" with OLE support"));
|
2019-02-17 17:44:42 +01:00
|
|
|
# endif
|
2004-06-13 20:20:40 +00:00
|
|
|
# else
|
2008-06-20 14:32:41 +00:00
|
|
|
# ifdef _WIN64
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nMS-Windows 64-bit console version"));
|
2008-06-20 14:32:41 +00:00
|
|
|
# else
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nMS-Windows 32-bit console version"));
|
2008-06-20 14:32:41 +00:00
|
|
|
# endif
|
2004-06-13 20:20:40 +00:00
|
|
|
# endif
|
|
|
|
#endif
|
2017-10-28 21:11:06 +02:00
|
|
|
#if defined(MACOS_X)
|
|
|
|
# if defined(MACOS_X_DARWIN)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nmacOS version"));
|
2017-10-28 21:11:06 +02:00
|
|
|
# else
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nmacOS version w/o darwin feat."));
|
2004-06-13 20:20:40 +00:00
|
|
|
# endif
|
2020-12-21 13:05:57 +01:00
|
|
|
# if defined(__arm64__)
|
|
|
|
msg_puts(" - arm64");
|
|
|
|
# elif defined(__x86_64__)
|
|
|
|
msg_puts(" - x86_64");
|
|
|
|
# endif
|
2004-06-13 20:20:40 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef VMS
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nOpenVMS version"));
|
2006-11-28 16:43:58 +00:00
|
|
|
# ifdef HAVE_PATHDEF
|
|
|
|
if (*compiled_arch != NUL)
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(" - ");
|
|
|
|
msg_puts((char *)compiled_arch);
|
2006-11-28 16:43:58 +00:00
|
|
|
}
|
|
|
|
# endif
|
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
#endif
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Print the list of patch numbers if there is at least one.
|
|
|
|
// Print a range when patches are consecutive: "1-10, 12, 15-40, 42-45"
|
2004-06-13 20:20:40 +00:00
|
|
|
if (included_patches[0] != 0)
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nIncluded patches: "));
|
2004-06-13 20:20:40 +00:00
|
|
|
first = -1;
|
2021-06-02 13:28:16 +02:00
|
|
|
i = (int)ARRAY_LENGTH(included_patches) - 1;
|
2004-06-13 20:20:40 +00:00
|
|
|
while (--i >= 0)
|
|
|
|
{
|
|
|
|
if (first < 0)
|
|
|
|
first = included_patches[i];
|
|
|
|
if (i == 0 || included_patches[i - 1] != included_patches[i] + 1)
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(s);
|
2004-06-13 20:20:40 +00:00
|
|
|
s = ", ";
|
|
|
|
msg_outnum((long)first);
|
|
|
|
if (first != included_patches[i])
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts("-");
|
2004-06-13 20:20:40 +00:00
|
|
|
msg_outnum((long)included_patches[i]);
|
|
|
|
}
|
|
|
|
first = -1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Print the list of extra patch descriptions if there is at least one.
|
2008-11-30 11:15:09 +00:00
|
|
|
if (extra_patches[0] != NULL)
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nExtra patches: "));
|
2008-11-30 11:15:09 +00:00
|
|
|
s = "";
|
|
|
|
for (i = 0; extra_patches[i] != NULL; ++i)
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(s);
|
2008-11-30 11:15:09 +00:00
|
|
|
s = ", ";
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(extra_patches[i]);
|
2008-11-30 11:15:09 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef MODIFIED_BY
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts("\n");
|
|
|
|
msg_puts(_("Modified by "));
|
|
|
|
msg_puts(MODIFIED_BY);
|
2004-06-13 20:20:40 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_PATHDEF
|
|
|
|
if (*compiled_user != NUL || *compiled_sys != NUL)
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nCompiled "));
|
2004-06-13 20:20:40 +00:00
|
|
|
if (*compiled_user != NUL)
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("by "));
|
|
|
|
msg_puts((char *)compiled_user);
|
2004-06-13 20:20:40 +00:00
|
|
|
}
|
|
|
|
if (*compiled_sys != NUL)
|
|
|
|
{
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts("@");
|
|
|
|
msg_puts((char *)compiled_sys);
|
2004-06-13 20:20:40 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2022-04-05 14:18:44 +01:00
|
|
|
#if defined(FEAT_HUGE)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nHuge version "));
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(FEAT_BIG)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nBig version "));
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(FEAT_NORMAL)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nNormal version "));
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(FEAT_SMALL)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nSmall version "));
|
2022-04-05 14:18:44 +01:00
|
|
|
#else
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("\nTiny version "));
|
2004-06-13 20:20:40 +00:00
|
|
|
#endif
|
2022-04-05 14:18:44 +01:00
|
|
|
#if !defined(FEAT_GUI)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("without GUI."));
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(FEAT_GUI_GTK)
|
|
|
|
# if defined(USE_GTK3)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("with GTK3 GUI."));
|
2022-04-05 14:18:44 +01:00
|
|
|
# elif defined(FEAT_GUI_GNOME)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("with GTK2-GNOME GUI."));
|
2022-04-05 14:18:44 +01:00
|
|
|
# else
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("with GTK2 GUI."));
|
2016-02-23 17:14:37 +01:00
|
|
|
# endif
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(FEAT_GUI_MOTIF)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("with X11-Motif GUI."));
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(FEAT_GUI_HAIKU)
|
2020-02-26 16:16:53 +01:00
|
|
|
msg_puts(_("with Haiku GUI."));
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(FEAT_GUI_PHOTON)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("with Photon GUI."));
|
2022-04-05 14:18:44 +01:00
|
|
|
#elif defined(MSWIN)
|
2019-01-19 17:43:09 +01:00
|
|
|
msg_puts(_("with GUI."));
|
2004-06-13 20:20:40 +00:00
|
|
|
#endif
|
|
|
|
version_msg(_(" Features included (+) or not (-):\n"));
|
|
|
|
|
2013-02-20 16:47:36 +01:00
|
|
|
list_features();
|
2019-07-26 19:48:19 +02:00
|
|
|
if (msg_col > 0)
|
|
|
|
msg_putchar('\n');
|
2004-06-13 20:20:40 +00:00
|
|
|
|
|
|
|
#ifdef SYS_VIMRC_FILE
|
|
|
|
version_msg(_(" system vimrc file: \""));
|
|
|
|
version_msg(SYS_VIMRC_FILE);
|
|
|
|
version_msg("\"\n");
|
|
|
|
#endif
|
|
|
|
#ifdef USR_VIMRC_FILE
|
|
|
|
version_msg(_(" user vimrc file: \""));
|
|
|
|
version_msg(USR_VIMRC_FILE);
|
|
|
|
version_msg("\"\n");
|
|
|
|
#endif
|
|
|
|
#ifdef USR_VIMRC_FILE2
|
|
|
|
version_msg(_(" 2nd user vimrc file: \""));
|
|
|
|
version_msg(USR_VIMRC_FILE2);
|
|
|
|
version_msg("\"\n");
|
|
|
|
#endif
|
|
|
|
#ifdef USR_VIMRC_FILE3
|
|
|
|
version_msg(_(" 3rd user vimrc file: \""));
|
|
|
|
version_msg(USR_VIMRC_FILE3);
|
|
|
|
version_msg("\"\n");
|
|
|
|
#endif
|
|
|
|
#ifdef USR_EXRC_FILE
|
|
|
|
version_msg(_(" user exrc file: \""));
|
|
|
|
version_msg(USR_EXRC_FILE);
|
|
|
|
version_msg("\"\n");
|
|
|
|
#endif
|
|
|
|
#ifdef USR_EXRC_FILE2
|
|
|
|
version_msg(_(" 2nd user exrc file: \""));
|
|
|
|
version_msg(USR_EXRC_FILE2);
|
|
|
|
version_msg("\"\n");
|
|
|
|
#endif
|
|
|
|
#ifdef FEAT_GUI
|
|
|
|
# ifdef SYS_GVIMRC_FILE
|
|
|
|
version_msg(_(" system gvimrc file: \""));
|
|
|
|
version_msg(SYS_GVIMRC_FILE);
|
|
|
|
version_msg("\"\n");
|
|
|
|
# endif
|
|
|
|
version_msg(_(" user gvimrc file: \""));
|
|
|
|
version_msg(USR_GVIMRC_FILE);
|
|
|
|
version_msg("\"\n");
|
|
|
|
# ifdef USR_GVIMRC_FILE2
|
|
|
|
version_msg(_("2nd user gvimrc file: \""));
|
|
|
|
version_msg(USR_GVIMRC_FILE2);
|
|
|
|
version_msg("\"\n");
|
|
|
|
# endif
|
|
|
|
# ifdef USR_GVIMRC_FILE3
|
|
|
|
version_msg(_("3rd user gvimrc file: \""));
|
|
|
|
version_msg(USR_GVIMRC_FILE3);
|
|
|
|
version_msg("\"\n");
|
|
|
|
# endif
|
|
|
|
#endif
|
2016-07-28 22:24:15 +02:00
|
|
|
version_msg(_(" defaults file: \""));
|
|
|
|
version_msg(VIM_DEFAULTS_FILE);
|
|
|
|
version_msg("\"\n");
|
2004-06-13 20:20:40 +00:00
|
|
|
#ifdef FEAT_GUI
|
|
|
|
# ifdef SYS_MENU_FILE
|
|
|
|
version_msg(_(" system menu file: \""));
|
|
|
|
version_msg(SYS_MENU_FILE);
|
|
|
|
version_msg("\"\n");
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
#ifdef HAVE_PATHDEF
|
|
|
|
if (*default_vim_dir != NUL)
|
|
|
|
{
|
|
|
|
version_msg(_(" fall-back for $VIM: \""));
|
|
|
|
version_msg((char *)default_vim_dir);
|
|
|
|
version_msg("\"\n");
|
|
|
|
}
|
|
|
|
if (*default_vimruntime_dir != NUL)
|
|
|
|
{
|
|
|
|
version_msg(_(" f-b for $VIMRUNTIME: \""));
|
|
|
|
version_msg((char *)default_vimruntime_dir);
|
|
|
|
version_msg("\"\n");
|
|
|
|
}
|
|
|
|
version_msg(_("Compilation: "));
|
|
|
|
version_msg((char *)all_cflags);
|
|
|
|
version_msg("\n");
|
|
|
|
#ifdef VMS
|
|
|
|
if (*compiler_version != NUL)
|
|
|
|
{
|
|
|
|
version_msg(_("Compiler: "));
|
|
|
|
version_msg((char *)compiler_version);
|
|
|
|
version_msg("\n");
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
version_msg(_("Linking: "));
|
|
|
|
version_msg((char *)all_lflags);
|
|
|
|
#endif
|
|
|
|
#ifdef DEBUG
|
|
|
|
version_msg("\n");
|
|
|
|
version_msg(_(" DEBUG BUILD"));
|
|
|
|
#endif
|
|
|
|
}
|
|
|
|
|
2016-01-29 22:47:03 +01:00
|
|
|
static void do_intro_line(int row, char_u *mesg, int add_version, int attr);
|
2020-04-05 18:56:05 +02:00
|
|
|
static void intro_message(int colon);
|
2004-06-13 20:20:40 +00:00
|
|
|
|
2013-07-04 22:31:03 +02:00
|
|
|
/*
|
|
|
|
* Show the intro message when not editing a file.
|
|
|
|
*/
|
|
|
|
void
|
2016-01-30 21:29:58 +01:00
|
|
|
maybe_intro_message(void)
|
2013-07-04 22:31:03 +02:00
|
|
|
{
|
2017-03-12 18:23:53 +01:00
|
|
|
if (BUFEMPTY()
|
2013-07-04 22:31:03 +02:00
|
|
|
&& curbuf->b_fname == NULL
|
|
|
|
&& firstwin->w_next == NULL
|
|
|
|
&& vim_strchr(p_shm, SHM_INTRO) == NULL)
|
|
|
|
intro_message(FALSE);
|
|
|
|
}
|
|
|
|
|
2004-06-13 20:20:40 +00:00
|
|
|
/*
|
|
|
|
* Give an introductory message about Vim.
|
|
|
|
* Only used when starting Vim on an empty file, without a file name.
|
|
|
|
* Or with the ":intro" command (for Sven :-).
|
|
|
|
*/
|
2020-04-05 18:56:05 +02:00
|
|
|
static void
|
2016-01-30 21:29:58 +01:00
|
|
|
intro_message(
|
2019-12-21 18:47:26 +01:00
|
|
|
int colon) // TRUE for ":intro"
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
|
|
|
int i;
|
|
|
|
int row;
|
|
|
|
int blanklines;
|
|
|
|
int sponsor;
|
|
|
|
char *p;
|
|
|
|
static char *(lines[]) =
|
|
|
|
{
|
|
|
|
N_("VIM - Vi IMproved"),
|
|
|
|
"",
|
|
|
|
N_("version "),
|
|
|
|
N_("by Bram Moolenaar et al."),
|
|
|
|
#ifdef MODIFIED_BY
|
|
|
|
" ",
|
|
|
|
#endif
|
|
|
|
N_("Vim is open source and freely distributable"),
|
|
|
|
"",
|
|
|
|
N_("Help poor children in Uganda!"),
|
|
|
|
N_("type :help iccf<Enter> for information "),
|
|
|
|
"",
|
|
|
|
N_("type :q<Enter> to exit "),
|
|
|
|
N_("type :help<Enter> or <F1> for on-line help"),
|
2022-06-23 20:46:27 +01:00
|
|
|
N_("type :help version9<Enter> for version info"),
|
2004-06-13 20:20:40 +00:00
|
|
|
NULL,
|
|
|
|
"",
|
|
|
|
N_("Running in Vi compatible mode"),
|
|
|
|
N_("type :set nocp<Enter> for Vim defaults"),
|
|
|
|
N_("type :help cp-default<Enter> for info on this"),
|
|
|
|
};
|
|
|
|
#ifdef FEAT_GUI
|
|
|
|
static char *(gui_lines[]) =
|
|
|
|
{
|
|
|
|
NULL,
|
|
|
|
NULL,
|
|
|
|
NULL,
|
|
|
|
NULL,
|
|
|
|
#ifdef MODIFIED_BY
|
|
|
|
NULL,
|
|
|
|
#endif
|
|
|
|
NULL,
|
|
|
|
NULL,
|
|
|
|
NULL,
|
|
|
|
N_("menu Help->Orphans for information "),
|
|
|
|
NULL,
|
|
|
|
N_("Running modeless, typed text is inserted"),
|
|
|
|
N_("menu Edit->Global Settings->Toggle Insert Mode "),
|
|
|
|
N_(" for two modes "),
|
|
|
|
NULL,
|
|
|
|
NULL,
|
|
|
|
NULL,
|
|
|
|
N_("menu Edit->Global Settings->Toggle Vi Compatible"),
|
|
|
|
N_(" for Vim defaults "),
|
|
|
|
};
|
|
|
|
#endif
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// blanklines = screen height - # message lines
|
2021-06-02 13:28:16 +02:00
|
|
|
blanklines = (int)Rows - (ARRAY_LENGTH(lines) - 1);
|
2004-06-13 20:20:40 +00:00
|
|
|
if (!p_cp)
|
2019-12-21 18:47:26 +01:00
|
|
|
blanklines += 4; // add 4 for not showing "Vi compatible" message
|
2004-06-13 20:20:40 +00:00
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Don't overwrite a statusline. Depends on 'cmdheight'.
|
2004-06-13 20:20:40 +00:00
|
|
|
if (p_ls > 1)
|
|
|
|
blanklines -= Rows - topframe->fr_height;
|
|
|
|
if (blanklines < 0)
|
|
|
|
blanklines = 0;
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Show the sponsor and register message one out of four times, the Uganda
|
|
|
|
// message two out of four times.
|
2005-12-22 22:47:02 +00:00
|
|
|
sponsor = (int)time(NULL);
|
2004-06-13 20:20:40 +00:00
|
|
|
sponsor = ((sponsor & 2) == 0) - ((sponsor & 4) == 0);
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// start displaying the message lines after half of the blank lines
|
2004-06-13 20:20:40 +00:00
|
|
|
row = blanklines / 2;
|
|
|
|
if ((row >= 2 && Columns >= 50) || colon)
|
|
|
|
{
|
2021-06-02 13:28:16 +02:00
|
|
|
for (i = 0; i < (int)ARRAY_LENGTH(lines); ++i)
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
|
|
|
p = lines[i];
|
|
|
|
#ifdef FEAT_GUI
|
|
|
|
if (p_im && gui.in_use && gui_lines[i] != NULL)
|
|
|
|
p = gui_lines[i];
|
|
|
|
#endif
|
|
|
|
if (p == NULL)
|
|
|
|
{
|
|
|
|
if (!p_cp)
|
|
|
|
break;
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
if (sponsor != 0)
|
|
|
|
{
|
|
|
|
if (strstr(p, "children") != NULL)
|
|
|
|
p = sponsor < 0
|
|
|
|
? N_("Sponsor Vim development!")
|
|
|
|
: N_("Become a registered Vim user!");
|
|
|
|
else if (strstr(p, "iccf") != NULL)
|
|
|
|
p = sponsor < 0
|
|
|
|
? N_("type :help sponsor<Enter> for information ")
|
|
|
|
: N_("type :help register<Enter> for information ");
|
|
|
|
else if (strstr(p, "Orphans") != NULL)
|
|
|
|
p = N_("menu Help->Sponsor/Register for information ");
|
|
|
|
}
|
|
|
|
if (*p != NUL)
|
|
|
|
do_intro_line(row, (char_u *)_(p), i == 2, 0);
|
|
|
|
++row;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Make the wait-return message appear just below the text.
|
2004-06-13 20:20:40 +00:00
|
|
|
if (colon)
|
|
|
|
msg_row = row;
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
2016-01-30 21:29:58 +01:00
|
|
|
do_intro_line(
|
|
|
|
int row,
|
|
|
|
char_u *mesg,
|
|
|
|
int add_version,
|
|
|
|
int attr)
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
|
|
|
char_u vers[20];
|
|
|
|
int col;
|
|
|
|
char_u *p;
|
|
|
|
int l;
|
|
|
|
int clen;
|
|
|
|
#ifdef MODIFIED_BY
|
|
|
|
# define MODBY_LEN 150
|
|
|
|
char_u modby[MODBY_LEN];
|
|
|
|
|
|
|
|
if (*mesg == ' ')
|
|
|
|
{
|
2008-01-05 12:59:22 +00:00
|
|
|
vim_strncpy(modby, (char_u *)_("Modified by "), MODBY_LEN - 1);
|
2016-06-01 20:31:43 +02:00
|
|
|
l = (int)STRLEN(modby);
|
2008-01-05 12:59:22 +00:00
|
|
|
vim_strncpy(modby + l, (char_u *)MODIFIED_BY, MODBY_LEN - l - 1);
|
2004-06-13 20:20:40 +00:00
|
|
|
mesg = modby;
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Center the message horizontally.
|
2004-06-13 20:20:40 +00:00
|
|
|
col = vim_strsize(mesg);
|
|
|
|
if (add_version)
|
|
|
|
{
|
|
|
|
STRCPY(vers, mediumVersion);
|
|
|
|
if (highest_patch())
|
|
|
|
{
|
2019-12-21 18:47:26 +01:00
|
|
|
// Check for 9.9x or 9.9xx, alpha/beta version
|
2010-10-27 16:01:27 +02:00
|
|
|
if (isalpha((int)vers[3]))
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
2012-03-07 18:03:10 +01:00
|
|
|
int len = (isalpha((int)vers[4])) ? 5 : 4;
|
|
|
|
sprintf((char *)vers + len, ".%d%s", highest_patch(),
|
|
|
|
mediumVersion + len);
|
2004-06-13 20:20:40 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
sprintf((char *)vers + 3, ".%d", highest_patch());
|
|
|
|
}
|
|
|
|
col += (int)STRLEN(vers);
|
|
|
|
}
|
|
|
|
col = (Columns - col) / 2;
|
|
|
|
if (col < 0)
|
|
|
|
col = 0;
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Split up in parts to highlight <> items differently.
|
2004-06-13 20:20:40 +00:00
|
|
|
for (p = mesg; *p != NUL; p += l)
|
|
|
|
{
|
|
|
|
clen = 0;
|
|
|
|
for (l = 0; p[l] != NUL
|
|
|
|
&& (l == 0 || (p[l] != '<' && p[l - 1] != '>')); ++l)
|
|
|
|
{
|
|
|
|
if (has_mbyte)
|
|
|
|
{
|
|
|
|
clen += ptr2cells(p + l);
|
2005-08-10 21:07:57 +00:00
|
|
|
l += (*mb_ptr2len)(p + l) - 1;
|
2004-06-13 20:20:40 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
clen += byte2cells(p[l]);
|
|
|
|
}
|
2017-03-16 17:23:31 +01:00
|
|
|
screen_puts_len(p, l, row, col, *p == '<' ? HL_ATTR(HLF_8) : attr);
|
2004-06-13 20:20:40 +00:00
|
|
|
col += clen;
|
|
|
|
}
|
|
|
|
|
2019-12-21 18:47:26 +01:00
|
|
|
// Add the version number to the version line.
|
2004-06-13 20:20:40 +00:00
|
|
|
if (add_version)
|
|
|
|
screen_puts(vers, row, col, 0);
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
* ":intro": clear screen, display intro screen and wait for return.
|
|
|
|
*/
|
|
|
|
void
|
2016-01-30 21:29:58 +01:00
|
|
|
ex_intro(exarg_T *eap UNUSED)
|
2004-06-13 20:20:40 +00:00
|
|
|
{
|
|
|
|
screenclear();
|
|
|
|
intro_message(TRUE);
|
|
|
|
wait_return(TRUE);
|
|
|
|
}
|