1

emacsonを使用して、バインドされた to isを使用してバッファーcygwinから非常に頻繁に使用するシェル コマンドの 1 つです。たとえば、Word 文書や Visual Studio プロジェクトなどを開きます。dired!dired-do-shell-commandcygstart

!しかし、現在のディレクトリ エントリをヒットする.と、エラーが発生しますCannot operate on。または..'

バイパスする前に調べて、現在のディレクトリと親ディレクトリでコマンドを実行できるようにしたかったのです。この制限には何らかの理由がありますか?

4

2 に答える 2

1

dired-do-shell-commandを呼び出しますdired-get-filename

dired-get-filename doc を見ると、次のように表示されます。

(dired-get-filename &optional LOCALP NO-ERROR-IF-NOT-FILEP)

Dired では、この行に記載されているファイルの名前を返します。

...

オプションの引数 NO-ERROR-IF-NOT-FILEP は.' and 、..' を通常のファイル名として扱い、この行にファイル名がない場合は nil を返すことを意味します。そうしないと、これらの場合にエラーが発生します。

dired-get-filenameNO-ERROR-IF-NOT-FILEP引数なしで呼び出される

于 2012-10-24T19:12:53.447 に答える
0

この制限は、質問が出されてから解除されました。

Emacs (24.3) の現在の安定版リリースでは、dired-do-shell-commandon...

于 2013-12-06T10:47:15.337 に答える