emacs dired模式

http://www.ibm.com/developerworks/cn/education/aix/au-emacs5/section2.html
进入 Dired 模式的方法很简单,只要键入 
``ESC-x dired''即可。此时的  minibuffer 会显示出如下
的文字:

Dired (directory):

``:'' 之後是目前所在的目录,此时可以修改目录名。确定所要 使用的目录,按下 RET 後,系统会另开启一个视窗来显示此 目录下的所有档案。之後就可以对这些档案做运作。 Dired 所使用 的缓冲区是一个唯读(read-only)的缓冲区,所以 mode line 会出现二个 %% 来表示其为唯读的状态。如果要缓冲区的唯读 状态改为可读,可以键入Ctrl-x Ctrl-q 的指令,将缓冲区的状态改变。 运作此缓冲区有其特别的方法,因此对此缓冲区做编辑并无实质上 的作用。以下就介绍运作 Dired 的方法:

  • 在 Dired 中删除档案
  • Dired 最基本的指令,就是将要删除的档案做上旗标(flag)之後, 再将有旗标的档案删除。
    • d
    • 将游标移至所欲删除的档案列,键入 d。此列的最前方会出现 D,这就是删除的旗标。此时的游标会移至此列的下一列。
    • u
    • 若想放弃已定好的旗标,可以键入 使萤幕上的 消失。
    • x
    • 键入指令 只是将要删除的档案先做上旗标,并未真正执行 删除的动作。只有键入 才会将所有做上旗标的档案删除。 执行删除档案之前,会先询问是否真要删除的意见。此时如果 回答 ``yes''则执行删除的动作,若回答 ``no'' 不执行删除的动作, 但旗标依然存在著。
  • 在 Dired 中将多个档案同时做上旗标
    • -#
    • 键入 #,系统会自动将所有的自动储存的档案(auto-save file) 做上删除的旗标。
    • ~
    • 键入 ~,系统会自动将所有的备份档(backup file)做上删除 的旗标。
    • %d regexp RET
    • 将所有适合的 regular expression 档案做上删除的旗标。
    • 所有做上旗标的档案要执行删除的动作,都必需执行指令 x
  • 在 Dired 中访问档案
    • fdired-find-file
    • 如果想要访问目前游标所在列的档案,只要在此列上键入 即可。 此时,档案的内容会显示在原先显示 Dired 缓冲区的视窗上。 使用此方法访问档案,就如同以 Ctrl-x Ctrl-f 访问档案一样。
    • odired-find-file-other-window
    • 此方法也是用来访问档案,但与键入 有些不同之处。键入 後,所访问的档案会出现在另一个视窗上而游标也会移至 所访问的视窗,显示 Dired 缓冲区的视窗并未消失在萤幕上。
    • Ctrl-odired-display-file
    • 此方法与键入 雷同,二者不同之处在於键入 Ctrl-o 後所访问的档案会出现在另一个视窗上,但游标不会移至所访问 档案的视窗,依然留在显示 Dired 缓冲区的视窗上。
    • vdired-view-file
    • 此指令仅供流 档案之用,因为以此而开启的档案是唯读档案。
  • 将 Dired 的档案做上标记
    • mdired-mark
    • 将目前游标所在的档案做上标记 ``*''。如果给予数值引数, 则做上标记的档案数目会依所给予的数目而定。
    • *dired-mark-exectables
    • 将所有的可执行档(executable files)做上标记 ``*,若给予 数值引数。则会将所有做上标记的可执行档的标记取消(unmark)。
    • @dired-mark-symlinks
    • 将所有的 symbolic files 做上标记 ``*,若给予数值引数。则会将 所有做上标记的 symbolic files 档的标记取消(unmark)。
    • /dired-mark-directories
    • 将所有为目录的档名,但除了 ``.'' 与 ``..'' 之外, 均做上标记 ``* 。若给予数值引数,则会将所有做上标记的 目录名称的标记取消(unmark)。
    • ESC-DEL markchardired-unmark-all-files
    • 消除所有以字元(character)( markchar) 做为标记的记号。 如果给予数值引号,则在消除每一个记号时,会询问是否要 消除记号。 回答 ``y'' 则表示要将记号消除,回答 ``n'' 则表示 不要消除已做好的记号。若此时键入 !,则表示消除其余的记号 不再询问意见。
    • c old newdired-change-marks
    • 使用此指令,可将原本以 old 为标记的记号,换成以 new 为标记的记号。
    • %m regexp RETdired-mark-files-regexp
    • 可使用regular expression ,将具有某一类型的档案做上标记。
  • 在 Dired 中的运作方式,有几件事情必需注意:
    1. 如果给予指令数值引数 时,此时指令所运作的档案是从 目前游标所在的档案起往後算 个档案(包括游标所在的档案)。 如果给予负数的数值,则往游标所在处之前算 个档案(包括 游标所在的档案)。
    2. 如果不给予任何的数值引数,则指令的运作范围会以做了 标记的档案为主。
    3.  
    4. 如果不给予数值引数也不对任何档案做标记,则指令只对 目前游标所在列的档案运作。
    5.  
    6. 所有运作 Dired 缓冲区的指令都是大写的英文字母,所有的 指令都是使用minibuffer 来接收所需的讯息。
    7.  

    以下就是运作 Dired 缓冲区的指令:

    • C new RET dired-do-copy
    • 拷贝档案。若有多个档案同时要拷贝,则引数 new 代表 档案所要拷贝到的目录。若只拷贝一个档案,可利用此引数 new 将档案从新命名。
    • R new RET dired-do-rename
    • 更换档名。若有多个档案同时要换档名,则引数 new 代表档案 换名称後所要放置的目录。若只有一个档案,此引数 new 代表更换的档名。当档名更换完毕, Dired 缓冲区的档案名称 会自动跟著更换。
    • H new RET dired-do-hardlink
    • 将档案标上 hard links 的标记。引数 new 代表 hard links所要连接 的目录。若只有一个连接时,此引数 new 代表连结的名称。
    • S new RET dired-do-symlink
    • 将档案标上 symbolic links 的标记。引数 new 代表 symbolic links 所要连接的目录。若只有一个连接时,此引数 new 代表连结的名称。
    • M midespec RET dired-do-chmod
    • 更改特定档案的模式(modepermission bits)。此程式使用 chmod 的程式,所以 式适用的引数。
    • G newgroup RET dired-do-chgrp
    • 改变特定档案的团体(group)为新的团体( newgroup)。
    • O newowner RET dired-do-chown
    • 改变特定档案的拥有者(owner)为新的拥有者( owner)。
    • P command RET dired-do-print
    • 列印特定的档案,可利用 minibuffer 输入列印的指令 command
    • dired-do-compress
    • 压缩或反压缩特定的档案。如果档案已被压缩则将其反压缩, 反之则将档案压缩。
    • dired-do-load
    • 载入特定的 EMACS Lisp 档案。
    • dired-do-byte-compile
    • 位元编译(byte compile)特定的 EMACS Lisp 档案。
  • Dired 在编辑远方档案与使用 ftp 的用法 使用 EMACS 的远方编辑或使用 EMACS 来做 ftp 时,若只 给予目录名,系统会进入 Dired 的模式。此时可使用运作 Dired 缓冲区的指令来操作所要的档案。至於何为远方的编辑会在下一节 中讨论。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值