patch 8.0.0251: not easy to select Python 2 or 3
Problem: It is not so easy to write a script that works with both Python 2
and Python 3, even when the Python code works with both.
Solution: Add 'pyxversion', :pyx, etc. (Marc Weber, Ken Takata)
diff --git a/src/if_python.c b/src/if_python.c
index 622634d..6b2ce56 100644
--- a/src/if_python.c
+++ b/src/if_python.c
@@ -1114,6 +1114,9 @@
{
char_u *script;
+ if (p_pyx == 0)
+ p_pyx = 2;
+
script = script_get(eap, eap->arg);
if (!eap->skip)
{
@@ -1137,6 +1140,9 @@
const char *file = (char *)eap->arg;
char *p;
+ if (p_pyx == 0)
+ p_pyx = 2;
+
/* Have to do it like this. PyRun_SimpleFile requires you to pass a
* stdio file pointer, but Vim and the Python DLL are compiled with
* different options under Windows, meaning that stdio pointers aren't
@@ -1175,6 +1181,9 @@
void
ex_pydo(exarg_T *eap)
{
+ if (p_pyx == 0)
+ p_pyx = 2;
+
DoPyCommand((char *)eap->arg,
(rangeinitializer) init_range_cmd,
(runner)run_do,