Все запаздывание несколько наклонных черт игнорируют и рассматривают как единственную наклонную черту.
Даже в запуске также больше чем 2 наклонных черты игнорируют и рассматривают как единственную наклонную черту только.
Двойная наклонная черта (//) в запуске также означает корень /
каталог, но это все еще показывает Ваш CWD как //
когда Вы выполняете pwd.
Следующая команда проверяет это //
также корневой каталог то же как /
$~> cd /
$/> pwd
/
$/> stat -c "%i" .
2
$/> cd //
$//> pwd
//
$//> stat -c "%i" .
2
Вы видите, что inode число равняется 2 в обоих случаях следовательно, оба - те же каталоги.
Существует также Muttprint. Это действительно поддерживает UTF-8, и его вывод выглядит достойным по умолчанию. Использование Muttprint ПРОПИТЫВАЕТ ЛАТЕКСОМ, и обеспечивает рычаги для настройки.
Так как я печатаю письма от различных сред, я не могу использовать принтер по умолчанию. Таким образом я настроил его (через ~/.muttrc
) для использования средства просмотра PDF, где я могу динамично выбрать принтер:
set print_command='set -e; f=`mktemp`; \
muttprint -P A4 -p TO_FILE:"$f"; evince "$f"; rm "$f"'
Использование Mktemp /tmp
, по умолчанию. Для использования пользовательского каталога кэша:
set print_command='set -e; f=`mktemp -p "$HOME"/.cache/mutt`; \
muttprint -P A4 -p TO_FILE:"$f"; evince "$f"; rm "$f"'
Btw, можно установить print_decode
внутри muttrc, чтобы настроить, если print_command может декодировать MIME, кодировка и т.д. самостоятельно. По умолчанию это установлено на yes
который является правильной установкой для команд как muttprint
, enscript
и т.д.
Относительно проблем UTF-8 a2ps enscript и члена парламента можно только прийти к заключению, что их нужно считать устаревшими. Действительно, смотря на страницы проекта они, кажется, не сохраняются (например, последнее сообщение печати страницы члена парламента с 2002, и это упоминает список рассылки, расположенный в Sun).
Вот простой рецепт, который я использую в разных UNIX:
set print_command="iconv --unicode-subst="_" -f utf-8 -t iso-8859-1 | enscript -P ••My_printer••"
где •• My_printer ••
- это имя принтера.
обертку
: Вот моя команда печати для .muttrc
:
set print_command="$HOME/bin/print_preview-wrapper.sh"
И там является содержимым "$HOME/bin/print_preview-wrapper.sh"
#!/bin/bash
read tmpdir < <(mktemp -d /tmp/print_preview-$USER-XXXXXXXX)
cd $tmpdir || exit 1
trap "cd && rm -fR $tmpdir;exit" 0 1 2 3 6 9 15
cat >file.eml
muttprint -P A4 -p TO_FILE:file.ps <file.eml
read numPages < <(sed '/^%%Pages/{s/%%Pages: //;q;};d' file.ps)
(( numPages > 1 )) &&
muttprint -2 -P A4 -p TO_FILE:file.ps <file.eml
gv file.ps
Это позволит
gv
, потому что мне это нравится, но вы можете запустить любой другой инструмент.
/tmp/$USER.ps
очень предсказуемо другими пользователями. Использоватьmktemp
создайте временные файлы! (См. мой ответ). – F. Hauri 21.05.2017, 18:22/tmp/$USER.ps
глупо. Я обновил свой ответ. – maxschlepzig 23.05.2017, 00:47/tmp/*
удален в перезагрузке. – F. Hauri 23.05.2017, 08:53mktemp
смысл существования должен избежать конфликтов имени файла. Это может перестать работать по другим причинам, все же. Я изменил команду, таким образом, что muttprint только выполняется, если бы mktemp был успешен (я подозреваю, что muttprint принял бы значение по умолчанию к некоторому другому имени файла когдаf
пусто). Таким образом теперь Вы только заканчиваете с оставшимся временным файлом, если проявляют или сбой комнаты. Я рассматриваю это вряд ли - и если они делают я считаю сохранение проблематичного файла справкой для отладки проблемы.Конечно,/tmp
автоматически очищен. Но$HOME
выгодно для чувствительных документов, когда это шифруется, но/tmp
не. – maxschlepzig 25.05.2017, 19:58mktemp -p $HOME/.cache/mutt-XXXXXXXXXX
в этом случае, ноmktemp
корректный инструмент. – F. Hauri 26.05.2017, 09:57