-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding many features #6
Comments
Hi @nullchilly, thanks for your suggestions. Unfortunately I can't start working on these features immediately, I'll start improving CompetiTest in some weeks.
Already planned.
Would you like competitest to clone an entire contest or problem? Related #5
What's the issue? You can launch
I can't get your point.
Actually you can do it:
Saving only for current session or after quitting Neovim?
Looks good, I'll think about it
What do you mean exactly? Isn't
What is stress testing? |
I am on phone so I will leave a quick reply I initially wanted to continue update my own plugin since June 2021 and I finally got the time to do it! It contains a lot of opinionated opt but I think it would be better if I can work with someone more familiar with lua to follow good practice Local problems needs input file like freopen("r", "input.txt"). As you might notice there is also IOI format, OI format not just regular standard IO About debugging yes you take input then debug directly, you also have to use a different flags just for debugging since it takes longer to compile Stress test is when you randomly generate some test that works for brute forces solution but doesnt for your current code so you can actually debug them. Or I can just provide a hook so user can do whatever they want using api? You also need to support stresstest for interactive too which is slightly hard. Unfortunately I can't start working on these features immediately You will see all of these features in my fork since I am coming back to cp this summer. If it doesn't disappoint you I will start pull requests :) |
@xeluxee Better late than never After spending an entire day editing the source I found myself wanting to change everything in this project For example: I don't need singlefile testcases, I don't need a floating window that covers the code. tl;dr I have decided to continue developing my old plugin (I will credit you of course ;) |
I'm sorry you could not contribute to this project. I've started CompetiTest mainly to meet my needs during cp contests, but I'm also interested in hearing other users' needs in order to make this plugin better. The features you've proposed look good, probably I'll implement them in the (near) future. |
Hey. I love this project man. Just wanted to know if there is any thing we can do to use just one file. May be JSON or Something for storage. Making 2 files for each test case seems overkill. |
https://github.com/xeluxee/competitest.nvim#storing-testcases-in-a-single-file |
Just looked into doc and found it. By the way thanks for quick reply. |
At the moment it isn't possible, but I'll add an option to customize window highlights |
Thanks for your time. |
@Tsuzat Maybe you can add a transparent option so you can actually see the code underneath? |
Split mode has just been implemented in c86a94c |
Now you can download problems and contests with competitive-companion |
See how to customize folder structure for received problems and contests. |
@xeluxee I think he means the use of |
@KorigamiK if you want to change compile commands you can create a file called
Currently there's no plan to support language-specific configuration files, local configuration should be enough. |
Thought I would let you know if you are working on something similar and your thought on this.
Split mode
Will consist of 6 windows: complication error, stdin, stderr, stdout, answer. Will be fully customizable. Personally I don't need complication error tab because there is already lsp
E.x.
{"set nosplitright | vs | setl wfw | wincmd w | bel sp | vs | vs | 1wincmd w", {1, 2, 3, 4, 5}}
See: #8
Intergrate tabline with bufferline's custom section. Or maybe using winbar instead. Or perhaps something similar to incline.nvim? For now I will stick with custom tabpage :)
Get the most out of companion
Use regrex to parse problem name, let user determine the path to it.
E.x.
Keybinds
Add keybind tips: quick test case managing, for example:
Auto parsing
Always listen to companion port since we are parsing new problem instead of just to the current file
Adding user custom output and local problem
g++ sol.cpp < 1.in > 2.out 2> 2.err
This will also support for problems that requires reading from a file
Adding local problem support also helps
Change C++ flags on the fly
Maybe compile_commands will helps?
Saving
Option to remember state of the current file, like submission history, local flags, test cases status
neovim style commands
It makes auto complete much easier
See #7
Debugging
Debugging is very essential, we need to integrate with E.x nvim-dap
Stress Testing
Also very essential, I will go with codeforces's library
See #9
The text was updated successfully, but these errors were encountered: