从我使用过的所有解释器程序来看,命令执行程序的独特之处在于它允许您选择一个矩形文本块。
Q1. 为什么使用这种方法,而不是像标准的文本编辑器那样的选择(如下所示)?
Q2. 为什么新版本的cmd不再使用矩形选择模型?
答案1
虽然我们不是开发者,但我们完全有能力阅读开发人员对此的评论。
- 亚当·丹宁(2014-10-07)。 Windows 10 技术预览版中的控制台改进. 为 Windows 构建应用程序。微软。
- 斯科特·汉塞尔曼(2014-10-01)。Windows 10 获得全新的命令提示符和大量热键。
- 拉斐尔·里维拉(2014年)。Windows“Threshold”中的新实验性控制台功能。
这不是cmd
。 cmd
不是 GUI 程序,也不负责显示控制台窗口。这是conhost
,两年前,一群 Microsoft 开发人员决定对它进行大量改进,其中之一就是“行选择”。他们这样做是因为他们相信他们正在满足用户的需求——像您这样的用户到处抱怨 Windows NT 控制台中笨重的复制和粘贴功能。
针对控制台子系统、命令解释器和新的 Windows NT Linux 子系统,微软有一套完整的愿望清单系统,称之为“用户之声”。以下是 2014 年两个相当相关的愿望清单条目:
- 乔尔·贝内特(2014-10-02)。 使用修饰符在块和行文本选择之间切换
- Roeland(2014-10-01)。也许已经在但:更容易改变控制台大小(80x25?来吧:))。
答案2
由于我们不是开发者,所以我们无法给出明确的答案。但是,我可以做出有根据的猜测。
从 Q2 开始,这只是一种更好的方法。选择数据时,您通常希望选择输出或刚刚输入的命令等。您只想选择所需的数据,而不是其他所有内容。矩形框可能会迫使您选择空格、回车符和其他不需要的信息。此方法允许您在一个字符串中捕获所需的所有数据。
至于 Q1,嗯...我猜测他们认为这是一个好主意,因为它与在 Windows 环境中绘制选择类似。就像在 Windows 桌面上拖动选择框一样。但是,这种方法并不好,因为如果您捕获了多行并尝试将其粘贴到仅接受一行的字段中,就会出现问题。要么数据不足,要么数据太多。