上周,我(再次)因不得不处理 R 和 Perl 的不同 IDE(我不喜欢或使用它们都不足以让我真正适应)而感到愤怒,我决定尝试 Emacs。做出这个决定时,我是带着某种恐惧的。我的主要用途是用于带有 cperl 的 Perl 和带有 ESS 的 R。我的环境是 Windows 7 Ultimate 64 位,我正在运行 v23.4.1,我认为这是 ESS 包代表我安装的。
近一个星期以来,到目前为止,它出奇地轻松,不比任何其他重要的软件更复杂。我已将我的 ctrl 键重新映射到大写锁定、更改默认文件夹、弄乱 .emacs 并添加了一些附加功能,例如自动安装、yasnippet、颜色主题、冰柱和其他一些。显然那里有一些非常复杂的东西。当然,基础 Emacs 的某些特性会立即变得非常强大和有用,例如向上和向下搜索。总的来说,我感到惊喜和放心。
比我预期的更粗糙的一件事是查找和打开文件的过程。在粗略阅读了各种教程后,我得到了这张准神奇的文件位置和文件名自动完成的图像。我设置中的主目录具有 g:/roaming/code/perl 或 g:/roaming/code/R/ 之类的路径,但我经常需要分支到完全不同的路径,例如 g:/pricedata/support files/sector/project01/等等。
目前,当我需要使用不同的分叉时,我会费力地删除文件路径,然后使用自动完成功能更深入地进入文件系统的该分支。这让我回到了二十年前在 Amiga 上运行 bash shell。
我期待什么?类似于(使用上面的示例)键入“project01”以立即跳到路径底部的文件夹中。出于某种原因,我想到 Emacs 会预加载目录。所以也许这不现实。
我的猜测是,我的困难可能源于我自己不熟悉,而不是 Emacs 的结构缺陷,并导致了我的问题。我不能抱怨没有足够的文件;而是有丰富的信息,它散布在相当随意的地方。冰柱也有类似的问题——如果有的话太多了。
1) 当尝试在 minibuffer 中打开文件或使用其他方法时,在文件树的不同分支中移动的最佳策略是什么?是否有别名可用于从一个地方到另一个地方的快捷方式,或者可以指定要预加载的目录?人们只是经常CD吗?或者我是从完全错误的角度出发,需要采取不同的策略?
2)通过额外的设置,是否可以使用自动完成功能在(比如)上面直接通过通配符等前缀的 project01 中查找文件?我应该关注什么才能在这里变得更有效率?我不是在利用诸如冰柱之类的附加组件的力量吗?
我意识到这些问题危险地接近了已弃用的没有明确答案的类别。我的辩护是,在我承诺养成坏习惯或糟糕的长期解决方案之前,在这个阶段的一些提示/指导会受到欢迎,我怀疑这些答案将使其他可能正在考虑转换的人受益。如果有问题,我很乐意撤回或改写。