s3fsがemacsには遅すぎる

私はs3fs FUSEファイルシステムとautofsを使ってマウントポイントをセットアップしてAmazon S3バケットと話をしましたが、emacsのバケット内のファイルを編集するのは非常に遅いです - 基本的にはキーを押すたびに遅れて使用できません。 emacsがI/Oを終了するまで完全にハングするようにします。

この問題を避けるために私は何ができますか?

1
追加された
ビュー: 1

2 答え

これは、私が使用している発射体のこの問題によるものと思われます。

私は、この回避策を使用しているその問題に関するコメントで、提案に従った:

(add-hook 'find-file-hook
          (lambda ()
            (if (locate-dominating-file default-directory ".git")
                (projectile-mode))))

すなわち、

(global-projectile-mode)

私の .emacs からそれを置き換えて上のコードに置き換えれば、パフォーマンスは受け入れられるようになりました(ファイルのオープンに遅れがあり、最初のキーを押すとファイルを編集します期待する)。これは、発射物がgitプロジェクトでのみ有効になることを意味しますが、それは私にとって問題ありません。また、必要に応じて同じ回避策を他のバージョン管理システムに簡単に拡張することもできます。

1
追加された

私は最初この単純なLinuxスクリプトを使ってファイルを高速なファイルシステムにコピーし、それをもう一度コピーしました(私が今やっていることに対する私の他の答えを見てください)。他のオペレーティングシステムでは、 TMP = で始まる行だけを変更する必要があります。わずかな複雑さは、異なるS3バケット内の同じ名前のファイルを同時に編集することです(ファイル名をランダムに生成されたゴミで置き換えるのは簡単ではありません)。

#! /bin/bash -peux
# Edit files from slow filesystems in emacs
TMP=/run/user/$(id -u)
dest=$TMP/"$(basename "$1")"
src_dir="$(dirname "$1")"
prefix=""
while [ -e "$dest" ]; do
    prefix="$(basename "$src_dir")/$prefix"
    src_dir="$(dirname "$src_dir")"
    if [ "$src_dir" = "/" ]; then
        echo Unable to generate unique filename >&2
        exit 2
    fi
    mkdir $TMP/"$prefix" || :
    dest=$TMP/"$prefix$(basename "$1")"
done
cp -p "$1" $dest || :
emacsclient "$dest"
cp -pu "$dest" "$1"
rm "$dest"
0
追加された
これに対処できますか?
追加された 著者 Mark Ireland,
s3は独自のプロトコルを使用しています。
追加された 著者 Robin Green,