DirectX Powered Console Apps

Started by
5 comments, last by sanchopan 11 years, 7 months ago
I've created a console front-end for Windows console apps using DirectX: Consolium. It allows for glowing cursors, visual effects, all while running a console app, be it cmd.exe, Powershell, the Python interpreter, MySql, or the UNIX-ish CygWin tools.

http://consolium.wordpress.com/screenshots/

Themes are fully customizable, as are cursors and many of the textures used.

This is a follow on to Tritium, a command line interface I released in January. Tritium was similar, but could not run interactive applications, or anything like ftp, Python, MySql, or Powershell. I created a completely new backend for Consolium that integrates directly with the console.

The current release is an unrestricted beta. The 1.0 release will require no license keys, and the 'trial' will not have a forced expiration or be limited in anyway.

Please take a look...feature requests and bug gripes always welcome!

http://consolium.wordpress.com
Advertisement
Thats a great app ^^ Thanks for sharing and keep up the good work.

I have stuff to report
- I cant use "telnet"
- it doesnt check the environment variables - i cant use programs in custom folders that are registered in the "path" variable!

Edit1:

There is a bug in the settings:
- Go the the settings menu
- Change the current theme to some other theme
- now change some text effects (i changed the use glass effect)
- press apply theme
- it will request a new name for the theme to save -> deny (click on x on the right top corner)
- now change to another theme and then back

Edit2:

Another thing to note: "exit" doesnt exit the app!
(doublepost)

Thats a great app ^^ Thanks for sharing and keep up the good work.
I have stuff to report
- I cant use "telnet"
- it doesnt check the environment variables - i cant use programs in custom folders that are registered in the "path" variable!
Edit1:
There is a bug in the settings:
- Go the the settings menu
- Change the current theme to some other theme
- now change some text effects (i changed the use glass effect)
- press apply theme
- it will request a new name for the theme to save -> deny (click on x on the right top corner)
- now change to another theme and then back
Edit2:
Another thing to note: "exit" doesnt exit the app!


Thanks, and thanks so much for the feedback.
Did Telnet launch and not work, or was it not found in your path?
As for the path/environment variables, Consolium by deafult launches with:

C:\Windows\system32\cmd.exe /t:0f

If you launch that, it should behave the same way as Consolium. Maybe you are using a different shortcut for your old console, or your old shortcut starts in a different directory? If you were using a VS2010 shortcut, or some other shortcut that runs an environment script at launch, you would need to adjust your Startup Cmd to be the same. For example, if you have a build/compile window shortcut that loads in a script with all sorts of settings specific to your tools. In Consolium you can create as many shortcuts as you want--with different themes and different launch apps, one for cmd.exe, one for VS2010 cmd.exe, and one for other console apps as well.

Also Consolium doesn't know about your path, or even about what you're typing, it's a pass-through to the underlying console app. Consolium just attaches to the console buffer and renders whatever happens to be in it. Input messages are forwarded to the underlying app.

Thanks for the repro on the settings bug...that is a great help. I'll get that fixed straightaway.

As for exit...for now I at least should pop up a UI block that says, "Use X to Close Consolium" to avoid confusion. Thanks for reminding me. The exit keyword is tricky because Consolium doesn't know what you're typing. Maybe you were exiting an FTP session, or exiting a script. Due to the way I attach to the underlying console and retain it's window handle, its not completely apparent when the process has stopped responding. A good feature to add though.
when i type telnet, it gives me this


C:\Users\aphton>telnet
'telnet' is not recognized as an internal or external command,
operable program or batch file.


When I use cmd normally (without setting anything or doing anything else fancy) I can open telnet.
Does it work on your system? It shouldnt either..

About the path variable - Im sorry I did a mistake. I tried to run a program, that my antivirus scanner removed due to some stupid heuristic. I didnt even know it was removed til i checked.
It works anyway.

Btw Im thinking of replacing cmd by consolium ^^ Ill mainly use consolium now smile.png

Edit:
About the tricky exit thing: When i start cmd within consolium, I can exit it and continue doing stuff on the consolium (since that cmd handle I guess is still available). When I exit again, I cant type in or do anything. That may mean that the cmd handle you are using probably internally is invalid / got destroyed - One way might be to react to that to close your app?
You're correct. When I added telnet through control panel using the 'turn off/on windows features' option it seemed to install c:\windows\system32 elnet.exe. But it didn't, there is no such file.

Instead there is a file located (on my system) here:
c:\Windows\winsxs\amd64_microsoft-windows-telnet-client_31bf3856ad364e35_6.1.7600.16385_none_1426830c3ebb712d elnet.exe

And this file is not a normal console command. I would guess its a windows app that does its own console tricks.

I'll try installing what I would hope is a more normal, IO based console app and see if that works, which it should.

Thanks for the heads up on that. As for exit, yes I believe there is more work I can do there, but hadn't implemented it just yet. There are probably several approaches, but the HWND and console handles I had still looked good, so I left it for now and went on to other features :-). But I'll get back to it.

Thanks so much for your feedback, it really helps!
A new build is out: http://consolium.wordpress.com

The settings bug is fixed, and exiting the underlying console app causes Consolium to exit as well. So, typing 'exit' in cmd.exe will close the window.

Thanks for the feedback!

This topic is closed to new replies.

Advertisement