bash-complete-partial-path - Автодополнение сокращенных путей в BASH

Программы для конфигурации и управления операционной системой
Правила форума
Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Версия ОС вместе с разрядностью. Пример: LM 18.1 x64, LM Sarah x32 2. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 3. Какое железо. (достаточно вывод inxi -Fxz в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 4. Суть. Желательно с выводом консоли, логами. 5. Скрин. Просьба указывать 1, 2 и 3 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
В сети
Аватара пользователя

Автор темы
Chocobo
Сообщения: 9249
Зарегистрирован: 27 авг 2016, 19:57
Решено: 200
Откуда: НН
Благодарил (а): 645 раз
Поблагодарили: 2659 раз

bash-complete-partial-path - Автодополнение сокращенных путей в BASH

Сообщение Chocobo » 20 июл 2018, 02:02

Описание:
bash-complete-partial-path - предлагает расширенную обработку завершения пути в Bash, добавляя удобное развертывание неполных вариантов представления, как это работает в Zsh, без установки последнего.

Вот как это работает.
Когда нажата клавиша Tab, bash-complete-partial-path предполагает, что каждый компонент является неполным и пытается его расширить. Предположим, вы хотите перейти к /usr/share/applications. Вы можете ввести cd /u/s/app, нажать Tab, а bash-complete-partial-path - развернет его в правильный cd /usr/share/applications. Если есть множественные вхождения поддиректорий, то при нажатии Tab заканчивается только путь без конфликтов. Например, у нас есть несколько директорий в /usr/share, которые начинаются с app, поэтому в случае ввода cd /u/s/app будет развернута только часть с /usr/share/.

По ссылке - наглядная демонстрация возможностей: https://asciinema.org/a/191776

еще один пример более глубокого расширения пути к файлу. Введите cd /u/s/f/t/u, нажмите Tab, и путь будет развернут до cd /usr/share/fonts/truetype/ubuntu

Особенности:

  • Экранирование специальных символов
  • Если пользователь запускает путь с кавычками, экранирование символов не применяется, кавычка закрывается соответствующим символом после раскрытия пути
  • Корректное расширение ~
  • Если пакет bash-completion уже используется, этот код безопасно переопределит его функцию _filedir. Никакой дополнительной конфигурации не требуется
Установка:
1. Скопировать актуальную версию расширения в ~/.config

Код: Выделить всё

# Install or update bash-complete-partial-path
mkdir -p "$HOME/.config/bash-complete-partial-path/" && \
curl \
 -o "$HOME/.config/bash-complete-partial-path/bash_completion" \
 "https://raw.githubusercontent.com/sio/bash-complete-partial-path/master/bash_completion"
2. добавить строки вызова в ~/.bashrc

Код: Выделить всё

# Enhanced file path completion in bash - https://github.com/sio/bash-complete-partial-path
[ -s "$HOME/.config/bash-complete-partial-path/bash_completion" ] && \
    source "$HOME/.config/bash-complete-partial-path/bash_completion"
3. Перечитать конфиг

Код: Выделить всё

source ~/.bashrc
Изображение
   
Изображение

Аватара пользователя

darkfenix
Сообщения: 5498
Зарегистрирован: 27 июн 2017, 10:36
Решено: 62
Откуда: Нижний Тагил
Благодарил (а): 308 раз
Поблагодарили: 1026 раз

bash-complete-partial-path - Автодополнение скращенных путей в BASH

Сообщение darkfenix » 20 июл 2018, 03:29

А я уже как-то привык к zsh, плюс она умеет ветки git показывать, у bash такого не видел
Изображение

В сети
Аватара пользователя

Автор темы
Chocobo
Сообщения: 9249
Зарегистрирован: 27 авг 2016, 19:57
Решено: 200
Откуда: НН
Благодарил (а): 645 раз
Поблагодарили: 2659 раз

bash-complete-partial-path - Автодополнение сокращенных путей в BASH

Сообщение Chocobo » 20 июл 2018, 07:36

darkfenix, У zsh поболе готовых плюшек, конечн.
тут конкретный небольшой твик к конфигурации исходного баша, чтоб сильно ничего не лопатить)
Изображение
   
Изображение

Вернуться в «Системные утилиты»