Подсказка: замените пользовательский путь коротким словом, например ~ для дома

Когда я вызываю cd /Users/mu3/apps подсказка упрощает его следующим образом:

 mu3 [~/apps]: 

Возможно ли это сделать для пользовательского пути, например, cd /Users/mu3/Development/Web/test :

 mu3 [DEV/test]: 

Я использую iTerm + oh-my-zsh.


UPD: Я не был достаточно конкретным, а также обнаружил новую информацию.
Поскольку я использую тему agnoster для оболочки zsh , она обрабатывает сам запрос.

Поэтому я закончил с изменением этой строки :

 prompt_segment blue black '%~' 

к этому:

 PWDshort="${PWD/#$HOME/~}" PWDshort="${PWDshort/\~\/_cld\/Dropbox\/Dev\/Web/DEV}" prompt_segment blue black $PWDshort 

введите описание изображения здесь

Теперь проблема в том, что любое обновление, по-видимому, нарушает это.
Есть ли лучший способ добиться того же результата?

  • Почему эта команда ffmpeg работает в bash, а не zsh?
  • Заменить текущий процесс на его coprocess / child
  • Обновление функций оболочки и псевдонимов через переменные среды
  • Расширение с числами в человекообразном формате
  • Как я могу изменить umask только для одной команды?
  • zsh и COLUMNS
  • Как получить доступ к fpath пользователя, в отличие от fpath системы со сценарием?
  • Странный вывод на многострочной команде в Китти?
  • 2 Solutions collect form web for “Подсказка: замените пользовательский путь коротким словом, например ~ для дома”

    Стандартный способ определения сокращений каталога для приглашения – использовать именованные каталоги . Именованные каталоги используются при расширении последовательности escape-последовательности %~ , обобщая ~ для сокращения вашего домашнего каталога и ~bob чтобы сокращать домашний каталог Bob.

     mu3 [~]: cd /Users/mu3/Development/Web/test mu3 [~/Development/Web/test]: hash -d test=$PWD mu3 [~test]: cd config mu3 [~test/config]: 

    Обычный способ сделать это – поставить hash -d test=~/Development/Web/test в ваш .zshrc . В дополнение к сокращению приглашений именованный каталог также может использоваться для сокращения путей, например, вы можете запустить cd ~test для переключения в этот каталог.

    С помощью этого метода сокращенная форма всегда начинается с символа ~ .

    Вы можете (как в bash ) использовать функцию в своем приглашении. Вот пример:

     setopt PROMPT_SUBST print_dir(){ case $PWD in (*/Development*) echo DEV/${PWD:t} ;; (*) echo $PWD ;; esac } export PROMPT=$'[$(print_dir)]: ' 

    zshall справочной страницы PROMPT_SUBST :

    Если PROMPT_SUBST опция PROMPT_SUBST , строка запроса сначала подвергается расширению параметров , замене команд и арифметическому расширению . См. Zshexpn (1) .

    Interesting Posts

    Systemd: служба Python не может быть перезапущена после остановки

    tcsh: сбой символа i-search-back

    Заменить сценарии развертывания с помощью незамысловатого

    Установите само скомпилированное программное обеспечение в / usr или / usr / local?

    Не удается экспортировать пользователя samba с помощью pdbedit. Как я могу сделать резервную копию своих пользователей самбы?

    скрипт для запоминания dir и всегда cd к нему вместо корневого каталога

    Установка драйвера платформы

    Не удалось подключиться к моему серверу Ubuntu SSH даже после перенаправления портов на маршрутизаторе

    как удалить правило экранирования портов iptables

    Есть ли команда для пучка?

    Как изменить диспетчер окон на малиновой пи?

    Linux Mint 17.1 медленный после входа в систему

    создавать данные для чтения текста из файла

    Как избавиться от специальных символов в выводе make

    Предотвратить запуск rsyslog при отправке сообщений удаленных хостов на локальный / var / log / syslog

    Linux и Unix - лучшая ОС в мире.