cmder icon indicating copy to clipboard operation
cmder copied to clipboard

[Feature request] Allow terminal to accept and run commands before cmder is fully loaded

Open keelangibb opened this issue 1 year ago • 5 comments

Suggestion

I am on Windows and the work computer I am using is really old and slow. Like CPU at 100% utilization 24/7 kind of slow.

I have integrated cmder with vscode and whenever a new instance is created it can sometimes take up to 30-60 seconds before I am able to type commands. Usually this is about 10 seconds which I can deal with.

I'm not sure if it is technically feasible, but it would be nice for the terminal to accept input immediately and execute them in an underlying cmd prompt (or something of that nature) while cmder is still loading so that basic commands like "cd" and "npm run xyz" can still be executed while clink is being injected and other features are being initialized. Most of the time when I open a new terminal, I am running the same 3 commands over and over and not using all of the features, but I can't even type anything until it has fully loaded which can take a very long time as mentioned above. #2816

As an alternative maybe allow the terminal to accept commands immediately but they instead enter a queue until its loaded and ready. I think either one would make the performance issues less frustrating.

Use case

No response

Extra info/examples/attachments

Cmder Full (with Git) cmder Version 1.3.24.236 clink 1.6.1.c7c448 git version 2.41.0.windows.3

Windows 10 Enterprise 21H2 Intel(R) Core(TM) i5-8350U CPU @ 1.70GHz 1.90 GHz RAM: 32.0 GB 1TB SSD

Antivirus: Trellix

vscode_init_args.txt

Checklist

  • [X] I have read the documentation and made sure this feature doesn't already exist.
  • [X] I have searched for similar issues and found none that describe my feature request.

keelangibb avatar Jan 23 '24 17:01 keelangibb

The suggestion is impossible, for many reasons.

One is that you're asking for CMD.exe to show a prompt and accept input and run commands, while also simultaneously running a batch script that takes a long time to run. The only way to do that would be to modify CMD.exe itself, which cannot happen.

chrisant996 avatar Jan 23 '24 19:01 chrisant996

it would be nice for the terminal to accept input immediately and execute them in an underlying cmd prompt (or something of that nature) while cmder is still loading

"The terminal" doesn't accept input. CMD.exe is what accepts input. I.e. the suggestion expects that accepting input and running scripts are done by two different separate things -- but only one thing is responsible for doing both of those, and it's CMD.exe.

"While cmder is loading" refers to CMD.exe running the script that initializes the cmder experience inside the CMD.exe shell.

So, you're asking for CMD.exe to accept input simultaneously while it also runs a script. CMD.exe cannot do that.

chrisant996 avatar Jan 23 '24 19:01 chrisant996

Oh okay gotcha. Oh well, it was worth a shot!

keelangibb avatar Jan 23 '24 20:01 keelangibb

I think you can get unreleased builds here: https://github.com/cmderdev/cmder/actions/runs/6983567438

This should start much faster.

daxgames avatar Jan 23 '24 23:01 daxgames

This can be closed. As a feature request, it's impossible for the reasons described further above..

chrisant996 avatar Feb 14 '24 20:02 chrisant996