Параметр cdablevars
отвечает за создание именованных каталогов и, следовательно, пользователей в качестве допустимого аргумента для cd. Если вы этого не используете, используйте unsetopt cdablevars
.
Чтобы изменить то, что завершено для компакт-диска, вы можете использовать стиль tag-order
. Например, чтобы сначала попробовать только локальные каталоги, это будет:
zstyle ':completion:*:cd:*' tag-order local-directories
Удобное сочетание клавиш для просмотра применимых тегов в определенном контексте - нажать Ctrl-X h
вместо вкладки
.
Эти несколько функций показывают подраздел и извлекают конкретный подраздел, хотя я уверен, что их можно улучшить:
Используйте:
mansubs <команда>
manedit <команда> <подраздел>
mansubs() {
man "$1" |col -bx|awk '/^[A-Z ]+$/ {print}'
}
manedit() {
man "$1" |col -bx|awk -v S="$2" '$0 ~ S {cap="true"; print} $0 !~ S && /^[A-Z ]+$/ {cap="false"} $0 !~ S && !/^[A-Z ]+$/ {if(cap == "true")print}'
}
Например:
$ mansubs grep
NAME
SYNOPSIS
DESCRIPTION
OPTIONS
REGULAR EXPRESSIONS
ENVIRONMENT VARIABLES
EXIT STATUS
COPYRIGHT
BUGS
SEE ALSO
NOTES
$ manedit grep SYNOPSIS
SYNOPSIS
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
Как насчет того, что показано ниже.
man <command> | grep -a1 "NAME\|Description"; echo ""
PS :Эхо "" в конце просто добавлено, чтобы добавить новую строку в конце вывода для более чистого вывода:)