Miałem pomysł, aby znaleźć wskazówkę w liście plików pakietów lub w gconf, ale nie miałem szczęścia. Ktoś inny znał odpowiedź.
Zarówno:
$ dconf write /org/gnome/file-roller/general/compression-level "'maximum'"
Lub:
$ dconf-editor
- Wybierz
org
w panelu po lewej stronie.
- Wybierz
gnome
w panelu po lewej stronie.
- Wybierz
file-roller
w panelu po lewej stronie.
- Wybierz
general
w panelu po lewej stronie.
- Wybierz
compression-level
w panelu po prawej stronie.
- Ustaw
compression-level
na 'maximum'
.
Niestety nie można dostroić tego ustawienia dla różnych programów do kompresji. Jeśli chcesz całej swobody, możesz zamiast tego użyć swojej powłoki.
Obraz edytora dconf z poziomem kompresji rolki plików ustawionym na maksimum. .
Ta odpowiedź wcześniej nie miała pozytywnych opinii, więc sprawdziłem, czy to w ogóle ma jakiś efekt, i wybrałem kompresowanie niektórych dokumentów z ustawieniami domyślnymi i maksymalnymi (typ 7z). Wynik: poprawa o 2,3 KB w archiwum ~ 300 KB.
Uwaga:
- W zależności od zawartości może to mieć negatywny wpływ na kompresję wszystkiego za pomocą LZMA / LZMA2 na poziomie maksymalnym. Na przykład pliki PNG są już skompresowane za pomocą Deflate i nie zyskają dużo na kompresji. Bardziej sensowne byłoby zoptymalizowanie ich za pomocą PNGOUT / OptiPNG, Zopfli, a następnie zarchiwizowanie ich za pomocą LZ4 , osiągając szybszą dekompresję archiwum i zmniejszając rozmiar pliku.
Próbowałem dowiedzieć się więcej na stronie podręcznika i instrukcji obsługi rolek , ale wciąż nie mam szczęścia. Następnie ściągnąłem pakiet źródłowy i szukałem „maksimum” w fr-command-7z.c
(zauważ, jak unikam mówienia, że czytam źródło), co dało mi następujące informacje:
switch (archive->compression) {
case FR_COMPRESSION_VERY_FAST:
fr_process_add_arg (command->process, "-mx=1");
break;
case FR_COMPRESSION_FAST:
fr_process_add_arg (command->process, "-mx=5");
break;
case FR_COMPRESSION_NORMAL:
fr_process_add_arg (command->process, "-mx=7");
break;
case FR_COMPRESSION_MAXIMUM:
fr_process_add_arg (command->process, "-mx=9");
if (! _g_mime_type_matches (archive->mime_type, "application/zip")
&& ! _g_mime_type_matches (archive->mime_type, "application/x-cbz"))
{
fr_process_add_arg (command->process, "-m0=lzma2");;
}
break;
}
To, o ile mogę obecnie, wydaje się, że nie ma ustawienia ultra.
ultra
domyślnie używa poziomu!