patch 9.1.1009: diff feature can be improved

Problem:  diff feature can be improved
Solution: include the linematch diff alignment algorithm
          (Jonathon)

closes: #9661

Signed-off-by: Jonathon <jonathonwhite@protonmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/proto/diff.pro b/src/proto/diff.pro
index 9c34dcf..5141e37 100644
--- a/src/proto/diff.pro
+++ b/src/proto/diff.pro
@@ -14,6 +14,7 @@
 void ex_diffoff(exarg_T *eap);
 void diff_clear(tabpage_T *tp);
 int diff_check(win_T *wp, linenr_T lnum);
+int diff_check_with_linestatus(win_T *wp, linenr_T lnum, int *linestatus);
 int diff_check_fill(win_T *wp, linenr_T lnum);
 void diff_set_topline(win_T *fromwin, win_T *towin);
 int diffopt_changed(void);
diff --git a/src/proto/linematch.pro b/src/proto/linematch.pro
new file mode 100644
index 0000000..56d0037
--- /dev/null
+++ b/src/proto/linematch.pro
@@ -0,0 +1,3 @@
+/* linematch.c */
+size_t linematch_nbuffers(const mmfile_t **diff_blk, const int *diff_len, const size_t ndiffs, int **decisions, int iwhite);
+/* vim: set ft=c : */
diff --git a/src/proto/strings.pro b/src/proto/strings.pro
index b792edc..c25555f 100644
--- a/src/proto/strings.pro
+++ b/src/proto/strings.pro
@@ -17,6 +17,7 @@
 int vim_strnicmp(char *s1, char *s2, size_t len);
 int vim_strnicmp_asc(char *s1, char *s2, size_t len);
 char_u *vim_strchr(char_u *string, int c);
+char *vim_strnchr(const char *p, size_t *n, int c);
 char_u *vim_strbyte(char_u *string, int c);
 char_u *vim_strrchr(char_u *string, int c);
 void sort_strings(char_u **files, int count);