xeluxee / competitest.nvim

CompetiTest.nvim is a Neovim plugin for Competitive Programming: it can manage and check testcases, download problems and contests from online judges and much more
GNU Lesser General Public License v3.0
381 stars 15 forks source link

Some feature recommendation #24

Closed RishabhRD closed 1 year ago

RishabhRD commented 1 year ago

Hi! First of all, thanks for the great plugin. I started using your plugin few days back and I am loving it.

There are some features that I would love to see personally. It may or may not be the goal of project.

These are basically just suggestions to enable me to use competitest buffers like normal buffers and nothing special.

If these are aligned with project goal and you need some sort of help in implementing these, I can definitely help you in these.

Thanks, Rishabh Dwivedi

xeluxee commented 1 year ago

First of all, thanks for the great plugin. I started using your plugin few days back and I am loving it.

I'm glad to hear that

I am actually really good with split windows. Because moving from one window to another window just works seamlessly in split windows. I am kind of person who uses default vim bindings like h and l for moving between windows. Some custom keybindings annoy me. And these bindings doesn't work accurately for popup window.

With default configuration you can press <C-h> and <C-l> to jump between input and output windows. You can change these keybindings to <C-w>h and <C-w>l configuring editor_ui.normal_mode_mappings.switch_window (see configuration)

If I close a window (with :q) for test case editor or runner, it should close all the related windows. Maybe autocmds can be used here. Then, special keybinding for closing the window would not be needed.

Instead of using :q you should just press q in normal mode to close all the windows. This mappings is configurable too: see editor_ui.cancel and runner_ui.mappings.close Nevertheless I could use an autocommand to close all the windows when closing one

Saving any testcase is simple as saving file I feel. Because at last testcase editing is just editing a file.

Unluckily no, because testcases can be stored in a single msgpack-encoded file, not only in text files

RishabhRD commented 1 year ago

With default configuration you can press and to jump between input and output windows. You can change these keybindings to h and l configuring editor_ui.normal_mode_mappings.switch_window (see configuration)

Yeah, I agree with this, I just needed to add <C-w><C-h> and <C-w><C-l> keybinding too, just in case I was pressing Ctrl and h/l simultaneously :sweat_smile: . And with this, I think need for split mode is not there (atleast for my workflow).

For other features, I have opened a PR #25 . We can discuss, if these are aligned to project goals.

xeluxee commented 1 year ago

Closing with #25