Age | Commit message (Collapse) | Author |
|
Problem: cbuffer and similar quickfix and locationlist commands don't
accept a range, even so it is documented they should
(ilan-schemoul, after 8.1.1241)
Solution: Define ex commands with ADDR_LINES instead of ADDR_OTHER
fixes: #14638
closes: #14657
Signed-off-by: Christian Brabandt <cb@256bit.org>
|
|
Problem: Vim9: Trailing commands after class/enum keywords ignored
Solution: Remove EX_TRLBAR keyword from command definition
(Yegappan Lakshmanan)
closes: #14649
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
|
|
Problem: Finding cmd modifiers and cmdline-specials is inefficient
Solution: Use binary search to find ex command modifiers and
cmdline-special characters and reduce the number of strlen()
(John Marriott)
closes: #14534
Signed-off-by: John Marriott <basilisk@internode.on.net>
Signed-off-by: Christian Brabandt <cb@256bit.org>
|
|
Problem: No enum support
Solution: Implement enums for Vim9 script
(Yegappan Lakshmanan)
closes: #14224
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
|
|
Problem: Cannot keep a buffer focused in a window
(Amit Levy)
Solution: Add the 'winfixbuf' window-local option
(Colin Kennedy)
fixes: #6445
closes: #13903
Signed-off-by: Colin Kennedy <colinvfx@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
|
|
Problem: POSIX function name in exarg struct causes issues
on OpenVMS
Solution: Rename getline member in exarg struct to ea_getline,
remove isinf() workaround for VMS
There are compilers that do not treat well POSIX functions - like
getline - usage in the structs.
Older VMS compilers could digest this... but the newer OpenVMS compilers
( like VSI C x86-64 X7.4-843 (GEM 50XB9) ) cannot deal with these
structs. This could be limited to getline() that is defined via
getdelim() and might not affect all POSIX functions in general - but
avoiding POSIX function names usage in the structs is a "safe side"
practice without compromising the functionality or the code readability.
The previous OpenVMS X86 port used a workaround limiting the compiler
capabilities using __CRTL_VER_OVERRIDE=80400000
In order to make the OpenVMS port future proof, this pull request
proposes a possible solution.
closes: #13704
Signed-off-by: Zoltan Arpadffy <zoltan.arpadffy@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
|
|
Problem: :registers command does not work in sandbox.
Solution: Add flag to the command. (closes #12473)
|
|
Problem: Cannot export an abstract class. (Ernie Rael)
Solution: Add the EX_EXPORT flag to :abstract. (closes #11884)
|
|
Problem: Cannot export an interface. (Ernie Rael)
Solution: Add the EX_EXPORT flag to :interface. (closes #11884)
|
|
Problem: The code style has to be checked manually.
Solution: Add basic code style checks in a test. Fix or avoid uncovered
problems.
|
|
Problem: :interface is not implemented yet.
Solution: Implement the basics of :interface.
|
|
Problem: Classes are not documented or implemented yet.
Solution: Make the first steps at documenting Vim9 objects, classes and
interfaces. Make initial choices for the syntax. Add a skeleton
implementation. Add "public" and "this" in the command table.
|
|
Problem: "export def" does not work in a nested block.
Solution: Do not handle "export" with a separate function but in the same
command stack. (closes #11304)
|
|
Problem: Cannot specify a time for :echowindow.
Solution: A count can be used to specify the display time. Add
popup_findecho().
|
|
Problem: Cleaning up afterwards can make a function messy.
Solution: Add the :defer command.
|
|
Problem: ":wincmd =" equalizes in two directions.
Solution: Make ":vertical wincmd =" equalize vertically only and
":horizontal wincmd =" equalize horizontally only.
|
|
Problem: Cannot use the message popup window directly.
Solution: Add ":echowindow".
|
|
Problem: Cannot specify a function name for :defcompile.
Solution: Implement a function name argument for :defcompile.
|
|
Problem: No completion for :scriptnames.
Solution: Implement :scriptnames completion. (Yegappan Lakshmanan,
closes #10005)
|
|
Problem: Need to write script to a file to be able to source them.
Solution: Make ":source" use lines from the current buffer. (Yegappan
Lakshmanan et al., closes #9967)
|
|
Problem: Vim9: Can still use ":fini" and ":finis" for ":finish".
Solution: Require using ":finish".
|
|
Problem: Vim9: some flow commands can be shortened.
Solution: Also require using the full name for ":return", ":enddef",
":continue", ":export" and ":import".
|
|
Problem: Vim9: shortening commands leads to confusing script.
Solution: In Vim9 script require at least ":cont" for ":continue", "const"
instead of "cons", "break" instead of "brea", "catch" instead of
"cat", "else" instead of "el" "elseif" instead of "elsei" "endfor"
instead of "endfo" "endif" instead of "en" "endtry" instead of
"endt", "finally" instead of "fina", "throw" instead of "th",
"while" instead of "wh".
|
|
Problem: The argument list may contain duplicates.
Solution: Add the :argdedeupe command. (Nir Lichtman, closes #6235)
|
|
Problem: The inline-function example does not work.
Solution: Drop ":let". Add EX_EXPR_ARG to CMD_var. (issue #9352)
|
|
Problem: Vim9: Not using NL as command end does not work for :autocmd.
Solution: Only ignore NL for commands with an expression argument.
|
|
Problem: Vim9: cannot use in :...do commands.
Solution: Add EX_EXPAND to the commands. (closes #9232)
|
|
Problem: "verbose set efm" reports the location of the :compiler command.
(Gary Johnson)
Solution: Add the "-keepscript" argument to :command and use it when
defining CompilerSet.
|
|
Problem: ":z!" is not supported.
Solution: Make ":z!" work and add tests. (Dominique Pellé, closes #8836)
Use display height instead of current window height.
|
|
Problem: Vim9: cannot use block in cmdline window.
Solution: Add EX_CMDWIN to the CMD_block flags. (closes #8689)
|
|
Problem: Vim: using {} block in autoloade omnifunc fails.
Solution: Allow using {} block when text is locked. (closes #8631)
|
|
Problem: Increment and decrement don't allow for next command.
Solution: Allow for comment and next command. (closes #8442)
|
|
Problem: Vim9: future commands are not reserved yet.
Solution: Add commands to be implemented later. Make "this" a reserved
name.
|
|
Problem: Vim9: need to plan for future additions.
Solution: Reserve commands for future use: :type, :class, :enum.
|
|
Problem: Vim9: using "++nr" as a command might not work.
Solution: Do not recognize "++" and "--" in a following line as addition or
subtraction.
|
|
Problem: Vim9: cannot use legacy syntax in Vim9 script.
Solution: Add the :legacy command.
|
|
Problem: Cannot write a message to the terminal from the GUI.
Solution: Add :echoconsole and use it in the test runner. (issue #7975)
|
|
Problem: Vim9: Cannot put "|" after "{".
Solution: Add the EX_TRLBAR flag. (issue #7904)
|
|
Problem: Vim9: no reason to consider "{{{{{{{{" a command.
Solution: Just use "{". (issue #7904)
|
|
Problem: Vim9: the :k command is obscure.
Solution: Disallow using :k, can use :mark instead. (closes #7874)
|
|
Problem: Vim9: cannot use Vim9 script syntax in some places.
Solution: Add the :vim9cmd command modifier. Incompatible: Makes ":vim9"
mean ":vim9cmd" instead of ":vim9script".
|
|
Problem: Vim9: compiled functions are not profiled.
Solution: Add initial changes to profile compiled functions. Fix that a
script-local function was hard to debug.
|
|
Problem: When using ":sleep" the cursor is always displayed.
Solution: Do not display the cursor when using ":sleep!". (Jeremy Lerner,
closes #7688)
|
|
Problem: Vim9: cannot keep script variables when reloading.
Solution: Add the "noclear" argument to :vim9script.
|
|
Problem: Vim9: value of 'magic' is still relevant.
Solution: Always behave like 'magic' is on in Vim9 script (closes #7509)
|
|
Problem: Vim9: "exit_cb" causes Vim to exit.
Solution: Require white space after a command in Vim9 script. (closes #7467)
Also fix that Vim9 style heredoc was not always recognized.
|
|
Problem: Cannot use :vimgrep in omni completion, causing C completion to
fail.
Solution: Add the EX_LOCK_OK flag to :vimgrep. (closes #7292)
|
|
Problem: The session file does not restore the alternate file.
Solution: Add ":balt". Works like ":badd" and also sets the buffer as the
alternate file. Use it in the session file. (closes #7269,
closes #6714)
|
|
Problem: Command modifiers are saved and set inconsistently.
Solution: Separate parsing and applying command modifiers. Save values in
cmdmod_T.
|
|
Problem: Vim9: cannot use a {} block at script level.
Solution: Recognize a {} block.
|