[RFC] vim-patch: Multiple small patches

These patches have nothing in common, but I thought that since they're so small, the PR/merge overhead would be smaller if they were reviewed together (*Edit:* I thought that merging other vim-patch PRs would trigger Github merge errors in version.c, but apparently that's not the case). I have these in separate branches, so it would be no problem to split this into multiple PRs, if you think that's better.

(version.c diffs removed from original patches below for brevity)

### 7.4.468
```
Problem:    Issue 26: CTRL-C does not interrupt after it was mapped and then
	    unmapped.
Solution:   Reset mapped_ctrl_c. (Christian Brabandt)

https://code.google.com/p/vim/source/detail?r=v7-4-468
```

```diff
diff --git a/src/nvim/getchar.c b/src/nvim/getchar.c
--- a/src/nvim/getchar.c
+++ b/src/nvim/getchar.c
@@ -3707,6 +3707,9 @@ do_map(maptype, arg, mode, abbrev)
     {
 	if (!did_it)
 	    retval = 2;			    /* no match */
+	else if (*keys == Ctrl_C)
+	    /* If CTRL-C has been unmapped, reuse it for Interrupting. */
+	    mapped_ctrl_c = FALSE;
 	goto theend;
     }
 
@@ -3739,7 +3742,7 @@ do_map(maptype, arg, mode, abbrev)
 	goto theend;
     }
 
-    /* If CTRL-C has been mapped, don't always use it for Interrupting */
+    /* If CTRL-C has been mapped, don't always use it for Interrupting. */
     if (*keys == Ctrl_C)
 	mapped_ctrl_c = TRUE;
```

### 7.4.458
```
Problem:    Issue 252: Cursor moves in a zero-height window.
Solution:   Check for zero height. (idea by Christian Brabandt)

https://code.google.com/p/vim/source/detail?r=v7-4-458
```

```diff
diff --git a/src/nvim/move.c b/src/nvim/move.c
--- a/src/nvim/move.c
+++ b/src/nvim/move.c
@@ -183,6 +183,18 @@ update_topline()
     if (!screen_valid(TRUE))
 	return;
 
+    /* If the window height is zero just use the cursor line. */
+    if (curwin->w_height == 0)
+    {
+	curwin->w_topline = curwin->w_cursor.lnum;
+	curwin->w_botline = curwin->w_topline;
+	curwin->w_valid |= VALID_BOTLINE|VALID_BOTLINE_AP;
+#ifdef FEAT_SCROLLBIND
+	curwin->w_scbind_pos = 1;
+#endif
+	return;
+    }
+
     check_cursor_moved(curwin);
     if (curwin->w_valid & VALID_TOPLINE)
 	return;
```

### 7.4.441
```
Problem:    Endless loop and other problems when 'cedit' is set to CTRL-C.
Solution:   Do not call ex_window() when ex_normal_busy or got_int was set.
	    (Yasuhiro Matsumoto)

https://code.google.com/p/vim/source/detail?r=v7-4-441
```

```diff
diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c
--- a/src/nvim/ex_getln.c
+++ b/src/nvim/ex_getln.c
@@ -759,11 +759,14 @@ getcmdline(firstc, count, indent)
 #ifdef FEAT_CMDWIN
 	if (c == cedit_key || c == K_CMDWIN)
 	{
-	    /*
-	     * Open a window to edit the command line (and history).
-	     */
-	    c = ex_window();
-	    some_key_typed = TRUE;
+	    if (ex_normal_busy == 0 && got_int == FALSE)
+	    {
+		/*
+		 * Open a window to edit the command line (and history).
+		 */
+		c = ex_window();
+		some_key_typed = TRUE;
+	    }
 	}
 # ifdef FEAT_DIGRAPHS
 	else
```

### 7.4.438
```
Problem:    Cached values for 'cino' not reset for ":set all&".
Solution:   Call parse_cino(). (Yukihiro Nakadaira)

https://code.google.com/p/vim/source/detail?r=v7-4-438
```

```diff
diff --git a/src/nvim/option.c b/src/nvim/option.c
--- a/src/nvim/option.c
+++ b/src/nvim/option.c
@@ -3645,6 +3645,9 @@ set_options_default(opt_flags)
 #else
 	win_comp_scroll(curwin);
 #endif
+#ifdef FEAT_CINDENT
+    parse_cino(curbuf);
+#endif
 }
 
 /*
```