Skip to content

A Windows terminal wrapper written in C. Comes with tab autocomplete, Linux aliases and more. The goal is to create a standalone GUI in C++ for this someday.

License

MIT, MIT licenses found

Licenses found

MIT
license.md
MIT
license.txt
Notifications You must be signed in to change notification settings

hasderhi/novaShell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

novaShell

C Language Windows Version
License


Overview

novaShell is a Windows terminal wrapper written in C, featuring tab autocomplete, Linux-style aliases, improved command history, and enhanced readability through colored output.
The long-term goal is to develop a standalone GUI version in C++.


Features

🚀 Feature Description
🔹 Tab Autocomplete Type a shortcut and press Tab to expand it into a full command.
🐧 Linux Aliases Use familiar Linux commands, automatically converted to Windows equivalents.
Command History Use arrow keys to navigate history or run nvs-history to list all.
🎨 Colored Output Improves readability of terminal responses.
⚙️ Built-in Commands Enhanced internal handling of cd, dir, and others.
🧩 Customizable Easily extend autocomplete and alias features in main.c.

How to Use

After downloading and/or compiling the software, simply run the .exe file.
A Windows terminal will open, mimicking the normal command line but with additional features like:

  • Tab autocomplete for common commands
  • Linux-to-Windows command aliases
  • Improved command history
  • Built-in dir and cd functions
  • Colored output for better readability

Autocomplete

To use autocomplete, type a shortcut and press Tab.
The following autocomplete shortcuts are currently implemented (more are planned):

General

Shortcut Expands To
/ //
v ver
p pwd
h help
r rmdir
m move
c cls
d del
ex explorer .
mk mkdir
co copy
ip ipconfig
.. cd ..
di dir
sys systeminfo
pingg ping google.com
kill taskkill /PID

Internal

Shortcut Expands To
nvs nvs-help
about nvs-about
history nvs-history

Adding Custom Shortcuts:
To create new shortcuts, simply add them to the complete_command function in main.c.


Aliases

For users accustomed to Linux commands, novaShell automatically converts certain Linux commands to their Windows counterparts.

Linux Command Windows Equivalent
ls dir
list dir
clr cls
date time
pwd chdir

Adding Custom Aliases:
To add more aliases, include them in the aliases struct in main.c.


History

  • Use the Up/Down arrow keys to cycle through recent commands.
  • Enter nvs-history to output all previously used commands.
  • Close the terminal to clear the command history.

⚡ **Advanced Usage & Customization**

Adding New Autocomplete Shortcuts

  1. Open main.c.
  2. Locate the complete_command function.
  3. Add your custom shortcut and expansion mapping.

Adding New Aliases

  1. Open main.c.
  2. Locate the aliases struct.
  3. Add your custom Linux-to-Windows alias pair.

Planned Features

  • A full C++ standalone GUI.
  • Plugin support for user-defined scripts.
  • Persistent command history across sessions.
  • Custom color schemes.

About

A Windows terminal wrapper written in C. Comes with tab autocomplete, Linux aliases and more. The goal is to create a standalone GUI in C++ for this someday.

Topics

Resources

License

MIT, MIT licenses found

Licenses found

MIT
license.md
MIT
license.txt

Stars

Watchers

Forks

Packages

No packages published