Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork5.8k
feat: Run :make command using builtin terminal#18188
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
base:master
Are you sure you want to change the base?
Uh oh!
There was an error while loading.Please reload this page.
Conversation
Uh oh!
There was an error while loading.Please reload this page.
9bb2ac1
to1a367f1
CompareUh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
cb1701b
to001178d
Comparehabamax commentedSep 2, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
|
Yeah that sounds better
Any ideas how the user would configure that? Maybe users wanting more advanced stuff could use that plugin. I think this should just be a simple way to run |
habamax commentedSep 2, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
What if
I would just create the setting for
|
64-bitman commentedSep 2, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Oh thats actually really nice, I will try implementating that
Sounds good Thanks for the tips, I'll make this a draft for now until I'm done everything EDIT: I'll actually move everything into C, no vimscript, should be simpler |
Uh oh!
There was an error while loading.Please reload this page.
2ffd893
todf7283f
Compare64-bitman commentedSep 6, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
@habamax Can you check if it looks good? Quickfix/location list is only generated when the make command is done, I tried having it appended to as the make command runs. Though I found that using the channel callback gives raw messages, meaning colour codes/any escape codes would appear in the quickfix window, not sure how to handle that. Thanks, |
d4e7a27
tob8f740d
Compare
When you do https://asciinema.org/a/4heU2snrwnlDjlq2cwRrGkdhu Otherwise, looks good to me. PS: It would be nice to not write |
That also applies to the regular :make, you just have to pass a shebang [!]]. In the docs:
Maybe jumping to the first error should not be the default when adding ++term to the command?
I think it would be better to just create a custom user command instead. Adding a separate option seems kinda out of place? I mean you can't configure default behaviour with ++ arguments with other ex commands. |
With the custom command I can't say "do not use terminal, but job instead" which I was referring to with Basically, with PS |
habamax commentedSep 7, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Yes, I know, but I would expect it to jump in another window/split instead of replacing make results. That would be one of the reasons for me to use With regular |
Wouldn't ++hidden be the same as a job? It just creates a terminal buffer but doesn't actually open it.
I tried creating a plugin for that, problem was that trying to integrate
That makes sense |
I just run |
Somewhat, but the difference is in buffer creation. Job doesn't create one by default. So if you ran your make with hidden buffer 100 times you'll have your next buffer created with 100 something bufnr. And then you would need to clean up those hidden terminal buffers too. |
That looks cool, Adding the exit code as the exit message is something I didn't think of
So with a ++job option, it would create a job, that you cannot view the progress of (in terms of output) and then updates the quickfix/location list when its done? |
yes! |
habamax commentedSep 14, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
FWIW, here is the
If would be great if this could be simplified to almost no config, but if not I can live with it :). |
Uh oh!
There was an error while loading.Please reload this page.
Pass ++term to
:make
or:lmake
to run it in a terminal in a new tab. The quickfix/location list will be populated when the command is finished, autocmds triggered, and first error jumped to if specified. It is partially implemented in C and the rest in Vimscript.