Chcę łatwiej pracować z archiwami w trybie diakcyjnym Emacsa. I myślę, że moje potrzeby są nie tylko moje.
Czego chcę? Dwie rzeczy w Dired:
z
skompresować plik lub katalog na kursorze (lub wszystkie zaznaczone pliki / katalogi, jeśli istnieją znaki); nazwa nowego archiwum powinna być zmienna (ale jeśli jeden plik / katalog wybrany niż nazwa powinien być taki sam);Z
aby cofnąć archiwizację dowolnego typu archiwów (zip, gz lub tar) przy kursorze; domyślnie treść powinna być umieszczona w nowym katalogu o tej samej nazwie.
Jak można to osiągnąć?
Z
w Dired zastąp (nie dodawaj kolejnego) pliku jego*.gz
archiwum (nie*.zip
).dired-atool
tym linkiem i poświęca czas na zapoznanie się z tym , co robi, pytanie będzie jaśniejsze, ale należy wyjaśnić samo pytanie, IMHO.Odpowiedzi:
emacs 25.x
Wersja emacs 25.1 będzie miała wbudowaną obsługę różnych rodzajów archiwów z poziomu dired. Poniżej znajduje się odpowiedni fragment
NEWS
pliku (C-h C-n
).dired-do-compress
|Z
Sprawdź
dired-compress-file-suffixes
zmienną, aby uzyskać listę obsługiwanych skompresowanych formatów plików. Właściwy program zostanie użyty do rozpakowania pliku (lub plików) podczas korzystania zZ
wiązania (dired-do-compress
).Chociaż powyższe zdekompresuje szeroki zakres formatów, zawsze będzie kompresować za pomocą
gzip
.dired-do-compress-to
|c
Sprawdź
dired-compress-files-alist
zmienną aby uzyskać listę obsługiwanych formatów plików, które mogą być skompresowane do za pomocąc
wiązania (dired-do-compress-to
).Począwszy od emacsa 25.1, obsługuje kompresję za pomocą
tar
+ (gzip
/bzip2
/xz
) lubzip
.źródło