summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-03-19 22:29:49 +0100
committerBram Moolenaar <Bram@vim.org>2016-03-19 22:29:49 +0100
commitd293b2b9d43ee4b7b48ca6974202cbf319438975 (patch)
tree9cddba2f5b00ffc91d6f6f18a5354b1073ef7d6a
parent44a2f923c00f1384c9ecde12fb5b4711bc20702e (diff)
patch 7.4.1612v7.4.1612
Problem: Can't build with small features. Solution: Move code and #ifdefs.
-rw-r--r--src/ex_getln.c182
-rw-r--r--src/version.c2
2 files changed, 94 insertions, 90 deletions
diff --git a/src/ex_getln.c b/src/ex_getln.c
index 4577d1e8ec..27e23c72d6 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -5653,96 +5653,6 @@ get_history_idx(int histype)
return history[histype][hisidx[histype]].hisnum;
}
-static struct cmdline_info *get_ccline_ptr(void);
-
-/*
- * Get pointer to the command line info to use. cmdline_paste() may clear
- * ccline and put the previous value in prev_ccline.
- */
- static struct cmdline_info *
-get_ccline_ptr(void)
-{
- if ((State & CMDLINE) == 0)
- return NULL;
- if (ccline.cmdbuff != NULL)
- return &ccline;
- if (prev_ccline_used && prev_ccline.cmdbuff != NULL)
- return &prev_ccline;
- return NULL;
-}
-
-/*
- * Get the current command line in allocated memory.
- * Only works when the command line is being edited.
- * Returns NULL when something is wrong.
- */
- char_u *
-get_cmdline_str(void)
-{
- struct cmdline_info *p = get_ccline_ptr();
-
- if (p == NULL)
- return NULL;
- return vim_strnsave(p->cmdbuff, p->cmdlen);
-}
-
-/*
- * Get the current command line position, counted in bytes.
- * Zero is the first position.
- * Only works when the command line is being edited.
- * Returns -1 when something is wrong.
- */
- int
-get_cmdline_pos(void)
-{
- struct cmdline_info *p = get_ccline_ptr();
-
- if (p == NULL)
- return -1;
- return p->cmdpos;
-}
-
-/*
- * Set the command line byte position to "pos". Zero is the first position.
- * Only works when the command line is being edited.
- * Returns 1 when failed, 0 when OK.
- */
- int
-set_cmdline_pos(
- int pos)
-{
- struct cmdline_info *p = get_ccline_ptr();
-
- if (p == NULL)
- return 1;
-
- /* The position is not set directly but after CTRL-\ e or CTRL-R = has
- * changed the command line. */
- if (pos < 0)
- new_cmdpos = 0;
- else
- new_cmdpos = pos;
- return 0;
-}
-
-/*
- * Get the current command-line type.
- * Returns ':' or '/' or '?' or '@' or '>' or '-'
- * Only works when the command line is being edited.
- * Returns NUL when something is wrong.
- */
- int
-get_cmdline_type(void)
-{
- struct cmdline_info *p = get_ccline_ptr();
-
- if (p == NULL)
- return NUL;
- if (p->cmdfirstc == NUL)
- return (p->input_fn) ? '@' : '-';
- return p->cmdfirstc;
-}
-
/*
* Calculate history index from a number:
* num > 0: seen as identifying number of a history entry
@@ -5951,6 +5861,98 @@ remove_key_from_history(void)
#endif /* FEAT_CMDHIST */
+#if defined(FEAT_EVAL) || defined(PROTO)
+/*
+ * Get pointer to the command line info to use. cmdline_paste() may clear
+ * ccline and put the previous value in prev_ccline.
+ */
+ static struct cmdline_info *
+get_ccline_ptr(void)
+{
+ if ((State & CMDLINE) == 0)
+ return NULL;
+ if (ccline.cmdbuff != NULL)
+ return &ccline;
+ if (prev_ccline_used && prev_ccline.cmdbuff != NULL)
+ return &prev_ccline;
+ return NULL;
+}
+
+/*
+ * Get the current command line in allocated memory.
+ * Only works when the command line is being edited.
+ * Returns NULL when something is wrong.
+ */
+ char_u *
+get_cmdline_str(void)
+{
+ struct cmdline_info *p = get_ccline_ptr();
+
+ if (p == NULL)
+ return NULL;
+ return vim_strnsave(p->cmdbuff, p->cmdlen);
+}
+
+/*
+ * Get the current command line position, counted in bytes.
+ * Zero is the first position.
+ * Only works when the command line is being edited.
+ * Returns -1 when something is wrong.
+ */
+ int
+get_cmdline_pos(void)
+{
+ struct cmdline_info *p = get_ccline_ptr();
+
+ if (p == NULL)
+ return -1;
+ return p->cmdpos;
+}
+
+/*
+ * Set the command line byte position to "pos". Zero is the first position.
+ * Only works when the command line is being edited.
+ * Returns 1 when failed, 0 when OK.
+ */
+ int
+set_cmdline_pos(
+ int pos)
+{
+ struct cmdline_info *p = get_ccline_ptr();
+
+ if (p == NULL)
+ return 1;
+
+ /* The position is not set directly but after CTRL-\ e or CTRL-R = has
+ * changed the command line. */
+ if (pos < 0)
+ new_cmdpos = 0;
+ else
+ new_cmdpos = pos;
+ return 0;
+}
+#endif
+
+#if defined(FEAT_EVAL) || defined(FEAT_CMDWIN) || defined(PROTO)
+/*
+ * Get the current command-line type.
+ * Returns ':' or '/' or '?' or '@' or '>' or '-'
+ * Only works when the command line is being edited.
+ * Returns NUL when something is wrong.
+ */
+ int
+get_cmdline_type(void)
+{
+ struct cmdline_info *p = get_ccline_ptr();
+
+ if (p == NULL)
+ return NUL;
+ if (p->cmdfirstc == NUL)
+ return (p->input_fn) ? '@' : '-';
+ return p->cmdfirstc;
+}
+#endif
+
#if defined(FEAT_QUICKFIX) || defined(FEAT_CMDHIST) || defined(PROTO)
/*
* Get indices "num1,num2" that specify a range within a list (not a range of
diff --git a/src/version.c b/src/version.c
index 0803de4fcf..39193addc0 100644
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1612,
+/**/
1611,
/**/
1610,