Sean Dewar
1fb4103206
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>
2024-01-23 22:37:39 +01:00
Bram Moolenaar
e76062c078
patch 9.0.0965: using one window for executing autocommands is insufficient
...
Problem: Using one window for executing autocommands is insufficient.
Solution: Use up to five windows for executing autocommands.
2022-11-28 18:51:43 +00:00
Bram Moolenaar
3da8597fc0
patch 9.0.0961: using deletebufline() may jump to another window
...
Problem: Using deletebufline() may jump to another window.
Solution: Do not use a window where the buffer was only in the past.
(closes #11594 )
2022-11-27 19:45:49 +00:00
Bram Moolenaar
ce30ccc06a
patch 9.0.0916: getbufline() is inefficient for getting a single line
...
Problem: getbufline() is inefficient for getting a single line.
Solution: Add getbufoneline().
2022-11-21 19:57:04 +00:00
zeertzjq
228e422855
patch 9.0.0914: deletebufline() may move marks in the wrong window
...
Problem: deletebufline() may move marks in the wrong window.
Solution: Find a window for the buffer being changed. (closes #11583 )
2022-11-20 11:13:17 +00:00
Bram Moolenaar
c934bfa1b7
patch 9.0.0910: setting lines in another buffer may not work well
...
Problem: Setting lines in another buffer may not work well.
Solution: Make sure the buffer being changed has a window. (issue #11558 )
2022-11-19 13:59:43 +00:00
zeertzjq
7af3ee2b83
patch 9.0.0841: deletebufline() does not always return 1 on failure
...
Problem: deletebufline() does not always return 1 on failure.
Solution: Refactor the code to make it work more predictable. (closes #11511 )
2022-11-06 22:26:05 +00:00
Bram Moolenaar
cd9c8d400c
patch 9.0.0837: append() reports failure when not appending anything
...
Problem: append() reports failure when not appending anything.
Solution: Only report failure when appending something. (closes #11498 )
2022-11-05 23:46:43 +00:00
Bram Moolenaar
63c84731c1
patch 9.0.0809: test for job writing to buffer fails
...
Problem: Test for job writing to buffer fails.
Solution: Correct w_topline when deleting a buffer line.
2022-10-20 21:14:19 +01:00
Bram Moolenaar
58a3cae3eb
patch 9.0.0416: ml_get error when appending lines in popup window
...
Problem: ml_get error when appending lines in popup window.
Solution: Only update w_topline when w_buffer matches curbuf.
(closes #11074 )
2022-09-08 13:43:10 +01:00
Bram Moolenaar
6d4b2f54df
patch 9.0.0263: too many #ifdefs
...
Problem: Too many #ifdefs.
Solution: Make some functions always available.
2022-08-25 15:11:15 +01:00
Bram Moolenaar
d61efa50f8
patch 9.0.0063: too many type casts for dict_get functions
...
Problem: Too many type casts for dict_get functions.
Solution: Change the key argument from "char_u *" to "char *".
2022-07-23 09:52:04 +01:00
Bram Moolenaar
93a1096fe4
patch 8.2.5107: some callers of rettv_list_alloc() check for not OK
...
Problem: Some callers of rettv_list_alloc() check for not OK. (Christ van
Willegen)
Solution: Use "==" instead of "!=" when checking the return value.
2022-06-16 11:42:09 +01:00
LemonBoy
9b2edfd3bf
patch 8.2.5002: deletebufline() may change Visual selection
...
Problem: deletebufline() may change Visual selection.
Solution: Disable Visual mode when using another buffer. (closes #10469 )
2022-05-22 15:35:53 +01:00
Bram Moolenaar
0ad00a7fd3
patch 8.2.4996: setbufline() may change Visual selection
...
Problem: setbufline() may change Visual selection. (Qiming Zhao)
Solution: Disable Visual mode when using another buffer. (closes #10466 )
2022-05-22 11:59:25 +01:00
Dominique Pelle
748b308eeb
patch 8.2.4038: various code not used when features are disabled
...
Problem: Various code not used when features are disabled.
Solution: Add #ifdefs. (Dominique Pellé, closes #9491 )
2022-01-08 12:41:16 +00:00
Bram Moolenaar
18f4740f04
patch 8.2.4018: ml_get error when win_execute redraws with Visual selection
...
Problem: ml_get error when win_execute redraws with Visual selection.
Solution: Disable Visual area temporarily. (closes #9479 )
2022-01-06 13:24:51 +00:00
Bram Moolenaar
078a46161e
patch 8.2.3996: Vim9: type checking lacks information about declared type
...
Problem: Vim9: type checking for list and dict lacks information about
declared type.
Solution: Add dv_decl_type and lv_decl_type. Refactor the type stack to
store two types in each entry.
2022-01-04 15:17:03 +00:00
Bram Moolenaar
8b6256f6ec
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
...
Problem: Vim9: wrong argument for append() results in two errors.
Solution: Check did_emsg. Also for setline(). Adjust the help for
appendbufline().
2021-12-28 11:24:49 +00:00
Bram Moolenaar
8dac2acd6a
patch 8.2.3916: no error for passing an invalid line number to append()
...
Problem: No error for passing an invalid line number to append().
Solution: In Vim9 script check for a non-negative number. (closes #9417 )
2021-12-27 20:57:06 +00:00
Yegappan Lakshmanan
6ae8fae869
patch 8.2.3788: lambda for option that is a function may be freed
...
Problem: Lambda for option that is a function may be garbage collected.
Solution: Set a reference in the funcref. (Yegappan Lakshmanan,
closes #9330 )
2021-12-12 16:26:44 +00:00
Yegappan Lakshmanan
4a15504e91
patch 8.2.3252: duplicated code for adding buffer lines
...
Problem: Duplicated code for adding buffer lines.
Solution: Move code to a common function. Also move map functions to map.c.
(Yegappan Lakshmanan, closes #8665 )
2021-07-30 21:32:45 +02:00
Yegappan Lakshmanan
4490ec4e83
patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
...
Problem: Vim9: runtime and compile time type checks are not the same.
Solution: Add more runtime type checks for builtin functions. (Yegappan
Lakshmanan, closes #8646 )
2021-07-27 22:00:44 +02:00
Yegappan Lakshmanan
cd9172077b
patch 8.2.3194: Vim9: argument types are not checked at compile time
...
Problem: Vim9: argument types are not checked at compile time.
Solution: Add several more type checks, simplify some. (Yegappan
Lakshmanan, closes #8598 )
2021-07-21 19:09:09 +02:00
Yegappan Lakshmanan
83494b4ac6
patch 8.2.3188: Vim9: argument types are not checked at compile time
...
Problem: Vim9: argument types are not checked at compile time.
Solution: Add several more type checks, also at runtime. (Yegappan
Lakshmanan, closes #8587 )
2021-07-20 17:51:51 +02:00
Bram Moolenaar
7b45d46cf7
patch 8.2.2665: test failures
...
Problem: Test failures.
Solution: Check more specific feature. Add missing change.
2021-03-27 19:09:02 +01:00
Bram Moolenaar
963ffa0a5a
patch 8.2.2489: current buffer is wrong after deletebufline() fails
...
Problem: current buffer is wrong after deletebufline() fails to delete a
line in another buffer.
Solution: Restore the current buffer.
2021-02-09 20:02:55 +01:00
Bram Moolenaar
3445320839
patch 8.2.2435: setline() gives an error for some types
...
Problem: setline() gives an error for some types.
Solution: Allow any type, convert each item to a string.
2021-01-31 13:08:38 +01:00
Bram Moolenaar
e5a2dc87fd
patch 8.2.2289: Vim9: 'cpo' can become empty
...
Problem: Vim9: 'cpo' can become empty.
Solution: Use empty_option instead of an empty string. Update quickfix
buffer after restoring 'cpo'. (closes #7608 )
2021-01-03 19:52:05 +01:00
Bram Moolenaar
3e0107ea16
patch 8.2.2271: ml_get error when changing hidden buffer in Python
...
Problem: ml_get error when changing hidden buffer in Python.
Solution: Block updating folds. (closes #7598 )
2021-01-02 13:53:59 +01:00
Bram Moolenaar
e6e70a10f1
patch 8.2.1888: Vim9: getbufline(-1, 1, '$') gives an error
...
Problem: Vim9: Getbufline(-1, 1, '$') gives an error.
Solution: Return an empty list. (closes #7180 )
2020-10-22 18:23:38 +02:00
Bram Moolenaar
036c2cf719
patch 8.2.1602: Vim9: cannot use 'true" with getbufinfo()
...
Problem: Vim9: cannot use 'true" with getbufinfo().
Solution: Use dict_get_bool(). (closes #6873 )
2020-09-05 17:37:07 +02:00
Bram Moolenaar
fe136c9a85
patch 8.2.1590: Vim9: bufnr() doesn't take "true" argument
...
Problem: Vim9: bufnr() doesn't take "true" argument.
Solution: use tv_get_bool_chk(). (closes #6863 )
2020-09-04 18:35:26 +02:00
Bram Moolenaar
3767e3a330
patch 8.2.1562: Vim9: error when using "%" where a buffer is expected
...
Problem: Vim9: error when using "%" where a buffer is expected.
Solution: Add tv_get_buf_from_arg(). (closes #6814 )
2020-09-01 23:06:01 +02:00
Bram Moolenaar
02aaad9109
patch 8.2.1550: Vim9: bufname('%') gives an error
...
Problem: Vim9: bufname('%') gives an error.
Solution: Only give an error for wrong argument type. (closes #6807 )
2020-08-30 21:26:57 +02:00
Bram Moolenaar
f39397e515
patch 8.2.1477: Vim9: error when using bufnr('%')
...
Problem: Vim9: error when using bufnr('%').
Solution: Don't give an error for using a string argument. (closes #6723 )
2020-08-17 22:21:36 +02:00
Bram Moolenaar
ca70c07b72
patch 8.2.0853: ml_delete() often called with FALSE argument
...
Problem: ml_delete() often called with FALSE argument.
Solution: Use ml_delete_flags(x, ML_DEL_MESSAGE) when argument is TRUE.
2020-05-30 20:30:46 +02:00
Bram Moolenaar
7e9f351b2e
patch 8.2.0751: Vim9: performance can be improved
...
Problem: Vim9: performance can be improved.
Solution: Don't call break. Inline check for list materialize. Make an
inline version of ga_grow().
2020-05-13 22:44:22 +02:00
Bram Moolenaar
ad48e6c159
patch 8.2.0615: regexp benchmark stest is old style
...
Problem: Regexp benchmark stest is old style.
Solution: Make it a new style test. Fix using a NULL list. Add more tests.
(Yegappan Lakshmanan, closes #5963 )
2020-04-21 22:19:45 +02:00
Bram Moolenaar
aeea72151c
patch 8.2.0500: using the same loop in many places
...
Problem: Using the same loop in many places.
Solution: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339 )
2020-04-02 18:50:46 +02:00
Bram Moolenaar
fbdd08ed9b
patch 8.2.0339: Vim9: function return type may depend on arguments
...
Problem: Vim9: function return type may depend on arguments.
Solution: Instead of a fixed return type use a function to figure out the
return type.
2020-03-01 14:04:46 +01:00
Bram Moolenaar
8a7d6542b3
patch 8.2.0149: maintaining a Vim9 branch separately is more work
...
Problem: Maintaining a Vim9 branch separately is more work.
Solution: Merge the Vim9 script changes.
2020-01-26 15:56:19 +01:00
Bram Moolenaar
a9e9679de3
patch 8.2.0019: cannot number of lines of another buffer
...
Problem: Cannot number of lines of another buffer.
Solution: Add "linecount" to getbufinfo(). (Yasuhiro Matsumoto,
closes #5370 )
2019-12-17 22:40:15 +01:00
Bram Moolenaar
5d18efecfd
patch 8.1.2378: using old C style comments
...
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
2019-12-01 21:11:22 +01:00
Bram Moolenaar
05ad5ff0ab
patch 8.1.2371: FEAT_TEXT_PROP is a confusing name
...
Problem: FEAT_TEXT_PROP is a confusing name.
Solution: Use FEAT_PROP_POPUP. (Naruhiko Nishino, closes #5291 )
2019-11-30 22:48:27 +01:00
Bram Moolenaar
52410575be
patch 8.1.2225: the "last used" info of a buffer is under used
...
Problem: The "last used" info of a buffer is under used.
Solution: Add "lastused" to getbufinfo(). List buffers sorted by last-used
field. (Andi Massimino, closes #4722 )
2019-10-27 05:12:45 +01:00
Bram Moolenaar
261f346f81
patch 8.1.2001: some source files are too big
...
Problem: Some source files are too big.
Solution: Move buffer and window related functions to evalbuffer.c and
evalwindow.c. (Yegappan Lakshmanan, closes #4898 )
2019-09-07 15:45:32 +02:00