Age | Commit message (Collapse) | Author |
|
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: 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: The argument list may contain duplicates.
Solution: Add the :argdedeupe command. (Nir Lichtman, closes #6235)
|
|
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 use Vim9 script syntax in some places.
Solution: Add the :vim9cmd command modifier. Incompatible: Makes ":vim9"
mean ":vim9cmd" instead of ":vim9script".
|
|
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: Vim9: cannot use a {} block at script level.
Solution: Recognize a {} block.
|
|
Problem: Vim9: using ":const!" is weird.
Solution: Use "var" - "final" - "const" like Dart. "let" still works for
now.
|
|
Problem: Vim9: using a discovery phase doesn't work well.
Solution: Remove the discovery phase, instead compile a function only when
it is used. Add :defcompile to compile def functions earlier.
|
|
Problem: Maintaining a Vim9 branch separately is more work.
Solution: Merge the Vim9 script changes.
|
|
Problem: There is :spellwrong and :spellgood but not :spellrare.
Solution: Add :spellrare. (Martin Tournoij, closes #4291)
|
|
Problem: More functions can be used as a method.
Solution: Add append(), appendbufline(), assert_equal(), etc.
Also add the :eval command.
|
|
Problem: Not easy to define a variable and lock it.
Solution: Add ":const".
|
|
Problem: All popup functionality is in functions, except :popupclear.
Solution: Add popup_clear() for consistency. Also rename sound_stopall() to
sound_clear().
|
|
Problem: No popup window support.
Solution: Add initial code for popup windows. Add the 'wincolor' option.
|
|
Problem: Cannot reconnect to the X server after it restarted.
Solution: Add the :xrestore command. (Adrian Kocis, closes #844)
|
|
Problem: Cannot navigate to errors before/after the cursor.
Solution: Add the :cbefore and :cafter commands. (Yegappan Lakshmanan,
closes #4340)
|
|
Problem: Cannot navigate through errors relative to the cursor.
Solution: Add :cabove, :cbelow, :labove and :lbelow. (Yegappan Lakshmanan,
closes #4316)
|
|
Problem: Cannot set a directory for a tab page.
Solution: Add the tab-local directory. (Yegappan Lakshmanan, closes #4212)
|
|
Problem: Cannot enforce a Vim script style.
Solution: Add the :scriptversion command. (closes #3857)
|
|
Problem: Nobody is using the Sun Workshop support.
Solution: Remove the Workshop support.
|
|
Problem: Tabline is not always redrawn when something that is used in
'tabline' changes.
Solution: Add ":redrawtabline" so that a plugin can at least cause the
redraw when needed.
|
|
Problem: No menus specifically for the terminal window.
Solution: Add :tlmenu. (Yee Cheng Chin, closes #3439) Add a menu test.
|
|
Problem: Cannot specify mappings for the terminal window.
Solution: Add the :tmap command and associated code. (Jacob Askeland,
closes #2073)
|
|
Problem: No terminal emulator support. Cannot properly run commands in the
GUI. Cannot run a job interactively with an ssh connection.
Solution: Very early implementation of the :terminal command. Includes
libvterm converted to ANSI C. Many parts still missing.
|
|
Problem: Building the command table requires Perl.
Solution: Use a Vim script solution. (Dominique Pelle, closes #1641)
|