Расширение автоподстановки bash
Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод
inxi -Fxz
в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
-
Автор темы - Сообщения: 99
- Зарегистрирован: 15 мар 2020, 08:58
- Решено: 1
- Благодарил (а): 29 раз
- Поблагодарили: 7 раз
- Контактная информация:
Расширение автоподстановки bash
Здравствуйте! У меня ноутбук с гибридной видеокартой (Intel + Nvidia), работа карты реализована через NVIDIA PRIME Render Offload. В этом случае, для запуска приложений на гибридной карте, нужно перед командой написать "__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia". Буков много, печатать долго и легко ошибиться. Поэтому я сделал в /usr/local/bin/ исполняемый файл prime-run, с содержимым __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia "$@" (после #!/bin/bash, разумеется). Теперь запуск приложения на дискретке прост: prime-run <программа>. (вообще, это решение подсмотрел в Генте)
Проблема в том, что после ввода prime-run не работает автоподстановка на Tab. Т.е. команду приложения нужно писать полностью вручную. Не сказать что это большая проблема, однако для запуска программ из Flatpak наличие автоподстановки было бы очень кстати.
Вопрос: Можно ли как-то расширить функционал bash-completion, чтобы он научился автоподстановке после "prime-run"?
Проблема в том, что после ввода prime-run не работает автоподстановка на Tab. Т.е. команду приложения нужно писать полностью вручную. Не сказать что это большая проблема, однако для запуска программ из Flatpak наличие автоподстановки было бы очень кстати.
Вопрос: Можно ли как-то расширить функционал bash-completion, чтобы он научился автоподстановке после "prime-run"?
-
- Сообщения: 2757
- Зарегистрирован: 19 дек 2017, 18:48
- Решено: 15
- Откуда: Рига
- Благодарил (а): 163 раза
- Поблагодарили: 305 раз
- Контактная информация:
Расширение автоподстановки bash
Bash-autosuggestion вместе с ohmybash или переходить на zsh с ohmyzsh и zsh-autosuggestion. Или смотреть как сделать алиасы
-
Автор темы - Сообщения: 99
- Зарегистрирован: 15 мар 2020, 08:58
- Решено: 1
- Благодарил (а): 29 раз
- Поблагодарили: 7 раз
- Контактная информация:
Расширение автоподстановки bash
С алиасами не получилось. Я на пробу сделал alias prime-run_alias="__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia", но автоподстановка не появилась после prime-run_alias.
ZSH офигительно удобен, но его настраивать под себя муторно и долго (много лет назад его пробовал), так что оставлю его на крайний случай.
Вообще, я думал есть решение вставить блок кода в какой-нибудь .bashrc, чтобы реализовать то, что я запрашивал.
-
- Сообщения: 2757
- Зарегистрирован: 19 дек 2017, 18:48
- Решено: 15
- Откуда: Рига
- Благодарил (а): 163 раза
- Поблагодарили: 305 раз
- Контактная информация:
Расширение автоподстановки bash
Ну так сделай
Код: Выделить всё
alias prime-run_alias="prime-run __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia"
-
- Сообщения: 844
- Зарегистрирован: 12 авг 2017, 09:09
- Решено: 13
- Откуда: Ростов-на-Дону
- Благодарил (а): 29 раз
- Поблагодарили: 204 раза
- Контактная информация:
Расширение автоподстановки bash
Активно пользуюсь расширением HSTR.
Нажимаю CTRL+R, ввожу символы команды и получаю список совпадений.
Нажимаю CTRL+R, ввожу символы команды и получаю список совпадений.
Basic (ZXSpectrum)→Ms-Dos→W95→W98→Me→XP→W7→Ubuntu 15.10→Xubuntu 16.04→Linux Mint 18.2-21.1
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
-
- Сообщения: 844
- Зарегистрирован: 12 авг 2017, 09:09
- Решено: 13
- Откуда: Ростов-на-Дону
- Благодарил (а): 29 раз
- Поблагодарили: 204 раза
- Контактная информация:
Расширение автоподстановки bash
Да, по истории.
Пожалуйста ))
Пожалуйста ))
Basic (ZXSpectrum)→Ms-Dos→W95→W98→Me→XP→W7→Ubuntu 15.10→Xubuntu 16.04→Linux Mint 18.2-21.1
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
-
- Сообщения: 10041
- Зарегистрирован: 27 июн 2017, 13:36
- Решено: 129
- Откуда: Нижний Тагил
- Благодарил (а): 776 раз
- Поблагодарили: 1956 раз
- Контактная информация:
Расширение автоподстановки bash
Sova, никакое расширение тебе не поможет. Т.к. никакое расширение не знает каким должен быть аргумент вызова твоего скрипта
-
- Сообщения: 2757
- Зарегистрирован: 19 дек 2017, 18:48
- Решено: 15
- Откуда: Рига
- Благодарил (а): 163 раза
- Поблагодарили: 305 раз
- Контактная информация:
Расширение автоподстановки bash
Как именно ты это сделал? Скрин покажи
Как я понял. Он это "расширение" хочет использовать не для вызова скрипта. А для быстрого набора команды с параметрами из истории. Он кинул свой "скрипт" в /usr/local/bin.
-
Автор темы - Сообщения: 99
- Зарегистрирован: 15 мар 2020, 08:58
- Решено: 1
- Благодарил (а): 29 раз
- Поблагодарили: 7 раз
- Контактная информация:
Расширение автоподстановки bash
Там ничего нового Вы не увидите. Временный альяс (в .bashrc записывать пока не стал за ненадобностью) prime-run_alias="__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME" не дает автоподстановку на Tab.
Мне не нужны команды из истории. Если я что-то запускаю с дискреткой на постоянной основе, то или записываю это в .desktop или делаю отдельный файл под это в /usr/local/bin . А автоподстановка мне, как раз нужна для запуска из консоли с целью диагностики и т.д. - т.е. в истории этого нет и делается не часто
-
- Сообщения: 4504
- Зарегистрирован: 21 июн 2017, 18:09
- Решено: 99
- Благодарил (а): 51 раз
- Поблагодарили: 1992 раза
- Контактная информация:
Расширение автоподстановки bash
Лайвхак для подобного случая - сначала просто набираем команду (с табами где надо), потом жмем Home и в начало строчки добавляем алиас/скрипт для запуска через прайм и пробел. Где будет находится курсор при нажатии Enter - не принципиально.
-
- Сообщения: 844
- Зарегистрирован: 12 авг 2017, 09:09
- Решено: 13
- Откуда: Ростов-на-Дону
- Благодарил (а): 29 раз
- Поблагодарили: 204 раза
- Контактная информация:
Расширение автоподстановки bash
Можно сделать запуск приложений через вызов контекстного меню в Nemo (action).
Т.е. нажимаете ПКМ на исполняемом файле, выбираете "Запустить так-то ..."
К этой операции привязать сценарий, который подставит всё, что нужно.
Т.е. нажимаете ПКМ на исполняемом файле, выбираете "Запустить так-то ..."
К этой операции привязать сценарий, который подставит всё, что нужно.
Basic (ZXSpectrum)→Ms-Dos→W95→W98→Me→XP→W7→Ubuntu 15.10→Xubuntu 16.04→Linux Mint 18.2-21.1
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
-
Автор темы - Сообщения: 99
- Зарегистрирован: 15 мар 2020, 08:58
- Решено: 1
- Благодарил (а): 29 раз
- Поблагодарили: 7 раз
- Контактная информация:
Расширение автоподстановки bash
- пожалуй единственный рабочий вариант из простейших
- надо в терминале (для диагностики). Без терминала я уже сделал.demonlibra писал(а): ↑16 май 2022, 15:40Можно сделать запуск приложений через вызов контекстного меню в Nemo
-
Автор темы - Сообщения: 99
- Зарегистрирован: 15 мар 2020, 08:58
- Решено: 1
- Благодарил (а): 29 раз
- Поблагодарили: 7 раз
- Контактная информация:
Расширение автоподстановки bash
Нету такого в репах. В Генте (и, вроде, в Арче ещё) есть, но там тоже без автоподстановки работает. Собственно, я свой этот скрипт сделал найдя исходный код гентушного пакета. А самому писать - я только один ЯП знаю (Gdscript) и он здесь не проканает.
-
- Сообщения: 2757
- Зарегистрирован: 19 дек 2017, 18:48
- Решено: 15
- Откуда: Рига
- Благодарил (а): 163 раза
- Поблагодарили: 305 раз
- Контактная информация:
Расширение автоподстановки bash
Ну тогда попробуй сделать такой скрипт
prime-run
Код: Выделить всё
#!/bin/bash
__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only __GLX_VENDOR_LIBRARY_NAME=nvidia "$@"
/usr/bin/
Тот что у тебя в
local/bin
убериКто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя