-
Notifications
You must be signed in to change notification settings - Fork 54
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
Multi Terminals and Persistent buffers #58
Conversation
@Civitasv, a basic demo is ready (currently without window handling)... can you please take a look? You need to run |
I'm back to work, sorry for my late. Testing now. |
In order to use this feature, I need to turn on cmake_use_terminals, am i right? |
Yes As of now,there is no window handling. You can test all other settings in -- Window handling
display_single_terminal_arcoss_instance = true,
single_terminal_pet_tab = true,
keep_terminal_in_static_location = true,
It should resize the window to 10(height), by default... (unless you have explicitly set ti higher) |
I don't know why do you use |
Haven't added multiterminal support(Each executable target has it's own terminal + 1 Main Terminal) yet. |
Okay, I understand. |
I cannot reproduce this problem. |
I've added support for Linux. |
It does not implement the |
Delete the build folder and try doing a Does this happen for you? |
I think I will ask for a all the options from the user first(like What do you think of this? |
@Civitasv, I think you have missed one spot. Can you add support for this: |
utils, and now we only use terminal for execute, for other cmd like CMakeGenerate, CMakeBuild, we use console
I've extracted the terminal logic to |
Sorry, wrong naming. Pushed a fix. |
What is the config for this? |
Yes. |
I encountered (a similar/the same?) problem... First TryWhen I do a
Config: Second TryWhen I do a Config: |
I have an idea. For a new project, for the first time, when we do a If this is done in async, I think there might not be too many calls to the filesystem, so as to block the IO. If we get a hit on the Although this is a CMake specific thing, I tested this for both MSVC(VS Generator) and Clang(Ninja). The |
Kinda same. But for your second try, it works correctly on Linux. |
Yeah, that’s a way to fix it. But it is a really weird problem. |
Before doing this, I think we can do some clean up and merge PR. 😅 Can you add the description of the terminal options in the README? |
I think launch_task_in_a_child_process and launch_executable_in_a_child_process can be removed. |
I agree. |
Let's keep it internally? |
Also remember remove the logic about child procs in terminal.lua |
Don’t think it will be useful someday. |
Completely remove them or store them in a .legacy.lua file that isn't required by any of the other files? |
Okay |
I will add it today. |
There seems to be problem with vim.wait(10000000, function()
if not terminal.has_active_job() then
-- it should have an active job
return false
end
return true
end, 10)
vim.wait(10000000, function()
if terminal.has_active_job() then
-- it should not have an active job
return false
end
return true
end, 10) I have to do |
Yes, I don't know hot to make it async yet. |
This is only possible for configure with the |
Okay... Maybe we should find another way. I will update README first. |
Make a new issue, we can continue discuss there. #60 |
TODO:
Support
Removed
Child Processes