Mercurial > vim
annotate src/xdiff/xinclude.h @ 34198:08e6a44e5c77 v9.1.0049
patch 9.1.0049: Make "[Command Line]" a special buffer name
Commit: https://github.com/vim/vim/commit/1fb41032060df09ca2640dc49541f11062f6dfaa
Author: Sean Dewar <seandewar@users.noreply.github.com>
Date: Wed Aug 16 17:15:05 2023 +0100
patch 9.1.0049: Make "[Command Line]" a special buffer name
Problem: E95 is possible if a buffer called "[Command Line]" already
exists when opening the cmdwin. This can also happen if the
cmdwin's buffer could not be deleted when closing.
Solution: Un-name the cmdwin buffer, and give it a special name instead,
similar to what's done for quickfix buffers and for unnamed
prompt and scratch buffers. As a result, BufFilePre/Post are
no longer fired when opening the cmdwin. Add a "command" key
to the dictionary returned by getbufinfo() to differentiate
the cmdwin buffer instead. (Sean Dewar)
NOTE: This is technically a breaking change... maybe this needs a different
solution? (Or maybe this issue can be ignored...)
A GitHub search reveals some plugins expect the old behaviour. However, many of
those plugins also do not seem to account for the string being translated, so
they are subtly broken anyway (not withstanding the fact that you can call any
old buffer "[Command Line]" too...)
closes: #12819
Signed-off-by: Sean Dewar <seandewar@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 23 Jan 2024 23:00:07 +0100 |
parents | faf7fcd1c8d5 |
children |
rev | line source |
---|---|
14696
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 /* |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 * LibXDiff by Davide Libenzi ( File Differential Library ) |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
3 * Copyright (C) 2003 Davide Libenzi |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
4 * |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
5 * This library is free software; you can redistribute it and/or |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 * modify it under the terms of the GNU Lesser General Public |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 * License as published by the Free Software Foundation; either |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 * version 2.1 of the License, or (at your option) any later version. |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
9 * |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 * This library is distributed in the hope that it will be useful, |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
13 * Lesser General Public License for more details. |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
14 * |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 * You should have received a copy of the GNU Lesser General Public |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
16 * License along with this library; if not, see |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
17 * <http://www.gnu.org/licenses/>. |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
18 * |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
19 * Davide Libenzi <davidel@xmailserver.org> |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
20 * |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
21 */ |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
22 |
25709
d5142d87f898
patch 8.2.3390: included xdiff code is outdated
Bram Moolenaar <Bram@vim.org>
parents:
18802
diff
changeset
|
23 // The following includes come from Vim: |
d5142d87f898
patch 8.2.3390: included xdiff code is outdated
Bram Moolenaar <Bram@vim.org>
parents:
18802
diff
changeset
|
24 |
18802
3be01cf0a632
patch 8.1.2389: using old C style comments
Bram Moolenaar <Bram@vim.org>
parents:
15517
diff
changeset
|
25 // defines HAVE_ATTRIBUTE_UNUSED |
14696
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
26 #ifdef HAVE_CONFIG_H |
15517
2ad5f0ffaa2e
patch 8.1.0766: various problems when using Vim on VMS
Bram Moolenaar <Bram@vim.org>
parents:
14696
diff
changeset
|
27 # ifdef VMS |
2ad5f0ffaa2e
patch 8.1.0766: various problems when using Vim on VMS
Bram Moolenaar <Bram@vim.org>
parents:
14696
diff
changeset
|
28 # include "[.auto]config.h" |
2ad5f0ffaa2e
patch 8.1.0766: various problems when using Vim on VMS
Bram Moolenaar <Bram@vim.org>
parents:
14696
diff
changeset
|
29 # else |
2ad5f0ffaa2e
patch 8.1.0766: various problems when using Vim on VMS
Bram Moolenaar <Bram@vim.org>
parents:
14696
diff
changeset
|
30 # include "../auto/config.h" |
2ad5f0ffaa2e
patch 8.1.0766: various problems when using Vim on VMS
Bram Moolenaar <Bram@vim.org>
parents:
14696
diff
changeset
|
31 # endif |
14696
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
32 #endif |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
33 |
18802
3be01cf0a632
patch 8.1.2389: using old C style comments
Bram Moolenaar <Bram@vim.org>
parents:
15517
diff
changeset
|
34 // Mark unused function arguments with UNUSED, so that gcc -Wunused-parameter |
3be01cf0a632
patch 8.1.2389: using old C style comments
Bram Moolenaar <Bram@vim.org>
parents:
15517
diff
changeset
|
35 // can be used to check for mistakes. |
29105
faf7fcd1c8d5
patch 8.2.5073: clang on MS-Windows produces warnings
Bram Moolenaar <Bram@vim.org>
parents:
25709
diff
changeset
|
36 #if defined(HAVE_ATTRIBUTE_UNUSED) || defined(__MINGW32__) |
14696
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
37 # define UNUSED __attribute__((unused)) |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
38 #else |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
39 # define UNUSED |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
40 #endif |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
41 |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
42 #if defined(_MSC_VER) |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
43 # define inline __inline |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
44 #endif |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
45 |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
46 #if !defined(XINCLUDE_H) |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
47 #define XINCLUDE_H |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
48 |
25709
d5142d87f898
patch 8.2.3390: included xdiff code is outdated
Bram Moolenaar <Bram@vim.org>
parents:
18802
diff
changeset
|
49 // This effectively re-verts b46054b3746271d23feab0 from git |
14696
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
50 #include <ctype.h> |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
51 #include <stdio.h> |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
52 #include <stdlib.h> |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
53 #if !defined(_WIN32) |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
54 #include <unistd.h> |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
55 #endif |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
56 #include <string.h> |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
57 #include <limits.h> |
25709
d5142d87f898
patch 8.2.3390: included xdiff code is outdated
Bram Moolenaar <Bram@vim.org>
parents:
18802
diff
changeset
|
58 // This include comes from git, so uncomment it |
d5142d87f898
patch 8.2.3390: included xdiff code is outdated
Bram Moolenaar <Bram@vim.org>
parents:
18802
diff
changeset
|
59 #if 0 |
d5142d87f898
patch 8.2.3390: included xdiff code is outdated
Bram Moolenaar <Bram@vim.org>
parents:
18802
diff
changeset
|
60 #include "git-compat-util.h" |
d5142d87f898
patch 8.2.3390: included xdiff code is outdated
Bram Moolenaar <Bram@vim.org>
parents:
18802
diff
changeset
|
61 #endif |
14696
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
62 #include "xmacros.h" |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
63 #include "xdiff.h" |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
64 #include "xtypes.h" |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
65 #include "xutils.h" |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
66 #include "xprepare.h" |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
67 #include "xdiffi.h" |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
68 #include "xemit.h" |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
69 |
195e8b1fcbbf
patch 8.1.0360: using an external diff program is slow and inflexible
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
70 |
25709
d5142d87f898
patch 8.2.3390: included xdiff code is outdated
Bram Moolenaar <Bram@vim.org>
parents:
18802
diff
changeset
|
71 #endif /* #if !defined(XINCLUDE_H) */ |