aconsole
Asynchorous Commandline like GUI for Python 3.
Provides async await for print and input. It also supports having multiple awaiting inputs, which are queued and then processed one by one.
See: Multiple inputs awaiting.
Other supported features:
- Canceling input.
- Changing color theme
- Chaging transparency
Controls
Mouse for navigating the output.
Keys for input:
[Enter] Submits input.
[Up/Down] Navigates input history.
Keys for output:
[Ctrl+C] Copy selected content.
[Ctrl+R] Clears output.
Depencies
Just Python 3.6 or above. For GUI it uses Tkinter, which is built-in module in Python.
Tested on: Mac, Linux and Windows.
A Simple Example
import asyncio
import aconsole
if __name__ == '__main__':
loop = asyncio.get_event_loop()
console = AsyncConsole()
console.title('echo test')
async def echo():
while True:
result = await console.input('echo to out: ')
console.print('echo:', result)
run_task = console.run(loop)
loop.create_task(echo())
loop.run_until_complete(run_task)
Other Examples