Comments (10)
I have now realized that this is vital functionality, and it must be implemented unconditionally.
from vtm.
TL/DR: This behavior is intentional. So far this doesn't work.
I haven't yet implemented DOSKEY functionality because it seemed to me to be a significant security flaw. DOSKEY (1989 A.D.) was invented and implemented for single user operating systems such as DR-DOS/MS-DOS/PC DOS, where there were no concepts of roles/rights, etc. Subsequently, in the Windows system, this functionality was moved up to the wrong security level, allowing any application to gain unauthorized access to sensitive data such as command history and allowing command name spoofing.
Despite the fact that Wikipedia says that this functionality is integrated into CMD.EXE, it is not. This is entirely outside of CMD.EXE, as you can see.
In fact, this functionality is not difficult to implement, but it should be further (and more thoroughly) investigated for security issues.
Everything related to aliases and command history is disabled for now. The following Win32 Console APIs are silently (w/o errors) disabled:
GetConsoleAlias
AddConsoleAlias
GetConsoleAliasExesLength
GetConsoleAliasExes
GetConsoleAliasesLength
GetConsoleAliases
ClearConsoleCommandHistory
SetConsoleNumberOfCommands
GetConsoleCommandHistoryLength
GetConsoleCommandHistory
GetConsoleHistory
SetConsoleHistory
from vtm.
While you are right it might be a security flaw many developer environments set them. It is unfortunate that I cannot use vtm in developer shells. As long not everyone is using Windows Terminal there is not much we could use for cmd shell scripting.
from vtm.
We can make this configurable and off by default.
from vtm.
That would be a great addition!
from vtm.
I implemented the DOSKEY functionality. You can test the branch from the pull request. I'll publish a release a little later.
from vtm.
Thanks. The test build looks good. Doskey macros are showing up now. Thanks!
from vtm.
My environment has VS2019, VS2022, VS2022 Preview, and VS2017 Build tools. Looks like cmake did create a solution which did target VS2019. It was targetting Build Tools 14.3, but these were not installed.
from vtm.
I have noticed that the new vtm when started from a Windows Terminal Session with a cmd shell
vtm -r
Not enough memory resources are available to process this command.
is showing up. The old VTM did not have this warning.
from vtm.
Not enough memory resources are available to process this command.
This issue may be related to the fact that when running vtm -r
it requests the current window title and on the first request it received an empty line. I have corrected this bug by o-sdn-o@be95d9c .
Can you please test it for this issue? (auto binaries in the pull request are updated)
from vtm.
Related Issues (20)
- Tiling window manager - select what to add HOT 5
- Project logo / icon HOT 10
- Per virtual terminal text search. HOT 5
- [feature request] launch application windows in vtm desktop through command line HOT 17
- Text wrap switch doesn't work
- Command arguments are not parsed correctly on POSIX systems
- Line splitting is broken and corrupts script expression
- Different exit code styles between UNIX and NT HOT 1
- Unnecessary translation layer if the applet type is not specified
- Dead modifier keys print incorrect characters in cmd.exe readline mode
- Graphical front-end (GUI-TUI Bridge) HOT 27
- Broken `vtm -?` output in non-UTF-8 code page
- Maintaining the "don't wrap configuration" HOT 4
- Standalone terminal focus is lost by left clicking on window menu
- PowerShell/PSReadLine don't use UTF-8 to echo input on Windows
- [Feature request] Always-on-top for app windows HOT 1
- [feature request] configurable window border HOT 8
- One-shot toggle to copy text while mouse tracking is active
- vtm does not work on ubuntu 20.04 since the version 9.84. HOT 1
- Incorrect order of text strings when right-click pasting in pwsh on Windows HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vtm.