为什么Plan 9使用“snarf”而不是“copy”?

为什么Plan 9使用“snarf”而不是“copy”?

当你观看有关 Plan 9 及其相关内容的演示时acme编辑的演示文稿时,您可能会注意到复制斯纳尔夫(不幸的是,我找不到任何有意义的解释)。

为什么会这样呢?

这是有原因的吗?是否为此功能创建了一个唯一的名称复制可能不是最好的名字?


参考:

  • 维基百科(链接)

    Snarf,用于 Blit 和 Plan 9 窗口系统中“复制”操作的术语。

  • cat-v.org(链接)

    单击鼠标中键即可打开另一个菜单;剪切和粘贴是非常不言自明的,而 Snarf 只是 Plan 9 中“复制”一词的意思。

  • 9fans 邮件列表(链接)

    通过 plan9port 在 Plan 9 和/或 Mac OS X 下使用 acme,是否有一个“文件”可以在 acme 中打开,显示 acme snarf 缓冲区的当前内容?

    /dev/snarf
    

    所以看起来有一个类似的东西snarf缓冲区和一个名为 的文件(显然该缓冲区必须有一个文件)/dev/snarf

  • 9term 手册页(链接)

    键盘上输入的字符将替换所选文本;如果此文本不为空,则将其放置在所有窗口共用但与 sam(1) 不同的 snarf 缓冲区中。

    (...)

    编辑操作可从按钮 2 上的菜单中选择。剪切操作会从屏幕上删除所选文本并将其放入 snarf 缓冲区中; snarf 将选定的文本复制到缓冲区而不删除它;粘贴用缓冲区的内容替换所选文本; send 将 snarf 缓冲区复制到输出点之后,如果缺少则添加最后的换行符。粘贴有时会在输出点之后放置文本,而发送总是将文本放置在输出点之后;如此放置的文本的行为将与上述完全相同。因此,在输出点之后粘贴包含换行符的文本时,首先打开保留模式可能是明智的做法。

  • 探索阿克姆教程(链接)

    “Snarf”:在大多数其他编辑器中称为“副本”

  • Dictionary.com 的定义斯纳尔夫(关联)

    • (非正式)贪婪地吃或喝

    • (当代)贪婪地抓住某物,尤其是。没有经过允许

    • (Unix) 通过网络获取一个文件或一组文件。另请参阅爆炸。

  • Inferno 第 2 部分:让我们创建一个集群! (关联)

    在《Inferno》和《Plan 9》中,剪贴板被称为“snarf buffer”,这个名字很不幸。

答案1

今天我偶然发现了一个相当合理的解释。这行话文件(链接)解释斯纳尔夫像这样:

斯纳尔夫:/snarf/,vt。

  1. [在 Unix 社区中] 通过网络获取一个文件或一组文件。也可以看看爆破。这个词在 20 世纪 60 年代末是主流,意思是“狼吞虎咽地吃'。在上下文中它可能仍然具有这种含义。 “他正处于黑客攻击的疯狂阶段——每天通过 FTP 传输大量数据。

Plan 9 的设计者似乎认为复制不是一个原子动作。复印事实上是:

  • 获取您要复制的内容(贪吃
  • 将内容插入到您想要的位置(粘贴

(切割另一方面是贪吃删除同时保留原始内容。)


罗布·派克的回答

我在 9fans 邮件列表上问过这个问题。你可以看到线程在这里(链接) 1

这是答案1我从罗布·派克那里收到:

这个操作不是复制而是snarf。之所以称为 snarf,是因为它的作用就是 snarf。没有设计文件。


1:作为斯蒂芬·查泽拉斯在评论中指出,您可以使用http://marc.info/?t=147367568900005&r=1&w=2以避免必须创建帐户才能查看列表档案。

相关内容