Bash autocomplete

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Ответить
Аватара пользователя
flook
Сообщения: 585
Статус: Просто flook

Bash autocomplete

Сообщение flook »

Команда ls умеет "раскрашивать" свой вывод. А вот автозаполнение в bash - нет (например набираю я cd и жму tab чтоб глянуть куда я могу cd-нуться). А хотелось бы. Можно как-то или нет?
В каждом из нас спит гений... и с каждым днем все крепче...
Спасибо сказали:
Аватара пользователя
clx
Сообщения: 3121
Статус: Think Different !
ОС: Mac OS X

Re: Bash autocomplete

Сообщение clx »

Использую bash. Все работает.

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

clx@gentoo ~ $ cd
Display all 195 possibilities? (y or n)
iMac 20" Core Duo.
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux
Контактная информация:

Re: Bash autocomplete

Сообщение polachok »

команда man умеет показывать руководства
И немедленно выпил.
Спасибо сказали:
Аватара пользователя
flook
Сообщения: 585
Статус: Просто flook

Re: Bash autocomplete

Сообщение flook »

to clx:
У меня автозаполнение тоже работает - не работает раскрашивание этого автозаполнения

to polachok:
Просьба ткнуть носом - не нашел...
В каждом из нас спит гений... и с каждым днем все крепче...
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux
Контактная информация:

Re: Bash autocomplete

Сообщение polachok »

а... так ты неправильно выразился. ну или просто я непонятливый :) я имел в виду то же, что и clx
И немедленно выпил.
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu
Контактная информация:

Re: Bash autocomplete

Сообщение alv »

(flook @ Четверг, 04 Августа 2005, 14:12) писал(а):Команда ls умеет "раскрашивать" свой вывод. А вот автозаполнение в bash - нет (например набираю я cd и жму tab чтоб глянуть куда я могу cd-нуться). А хотелось бы. Можно как-то или нет?


Боюсь, что нет
ведь раскрашивание - это опция команды ls, а она в момент нажатия таба еще и не думала выполняться :-)
Спасибо сказали:
Аватара пользователя
flook
Сообщения: 585
Статус: Просто flook

Re: Bash autocomplete

Сообщение flook »

(alv @ Четверг, 04 Августа 2005, 14:51) писал(а):
(flook @ Четверг, 04 Августа 2005, 14:12) писал(а):Команда ls умеет "раскрашивать" свой вывод. А вот автозаполнение в bash - нет (например набираю я cd и жму tab чтоб глянуть куда я могу cd-нуться). А хотелось бы. Можно как-то или нет?


Боюсь, что нет
ведь раскрашивание - это опция команды ls, а она в момент нажатия таба еще и не думала выполняться :-)


Жаль :( Может им туда feature request заслать :lol:
В каждом из нас спит гений... и с каждым днем все крепче...
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: Bash autocomplete

Сообщение sash-kan »

(flook @ Четверг, 04 Августа 2005, 14:53) писал(а):Может им туда feature request заслать

только не ошибись - кому :)
писать надо не разработчикам bash, а разработчикам readline.
потому как в bash именно readline занимается comletion-ом.

Sash Kan добавил в 04.08.2005 16:03

вот написал, а сам думаю - в принципе, чем readline занимается? всего лишь отображает то, что подсовывает ему bash.
и ежели bash подсунет список вариантов вместе со спецсимволами раскраски, а readline возмущаться не будет, то получится не хуже, чем у ls.
так что прежде чем писать (все-таки, наверно, bash-евцам), надо разобраться, не заругается ли readline на цветовую "добавку".
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu
Контактная информация:

Re: Bash autocomplete

Сообщение alv »

(Sash Kan @ Четверг, 04 Августа 2005, 15:03) писал(а):вот написал, а сам думаю


я вот тоже написал - и подумал: умеет ведь bash (с помощью того же readline?) раскрашивать всяких там рутов/юзеров. так почему бы ему и вывод автокомплишина не раскрасить? или ему неоткуда взять сведения о типе файлов, имен которых он выводит?
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux
Контактная информация:

Re: Bash autocomplete

Сообщение polachok »

взять откуда-нибудь всегда можно -на то есть системные вызовы... но надо ли это и будет ли этим кто заниматься?
И немедленно выпил.
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu
Контактная информация:

Re: Bash autocomplete

Сообщение alv »

(polachok @ Четверг, 04 Августа 2005, 15:15) писал(а):взять откуда-нибудь всегда можно -на то есть системные вызовы... но надо ли это и будет ли этим кто заниматься?

и ведь кстати берет - только что сообразил, ведь в выводе по табу каталоги и обычные файлы различаются.
так почему бы их и не раскрасить заодно?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: Bash autocomplete

Сообщение sash-kan »

(alv @ Четверг, 04 Августа 2005, 15:07) писал(а):или ему неоткуда взять сведения о типе файлов, имен которых он выводит?


в принципе - есть. ls делает раскраску на основании суффикса и значения переменной $LS_COLORS:
$ echo $LS_COLORS
no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01
:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;3
1
:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:
*
.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01
;
35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.pn
g
=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*
.
dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35:
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu
Контактная информация:

Re: Bash autocomplete

Сообщение alv »

2Sash Kan
не обязательно
я так понимаю, это при опции
ls -auto-color

В BSD это не работает, требуется
ls -G

Но вообще тема интересная, есть над чем подумать...

Подумаем? А там, глядишь, и очередной фак-хутуй сочиним?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: Bash autocomplete

Сообщение sash-kan »

(alv @ Четверг, 04 Августа 2005, 16:48) писал(а):Подумаем?

подумать - оно завсегда полезно :)
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
xorader
Сообщения: 1030
Статус: собирающий миры
ОС: Debian
Контактная информация:

Re: Bash autocomplete

Сообщение xorader »

так уже думали же... и на этом же форуме, вроде, и решение делали... :blink: только не помню где и как :)
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: Bash autocomplete

Сообщение sash-kan »

Для xorader:
поискал. не нашел.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
xorader
Сообщения: 1030
Статус: собирающий миры
ОС: Debian
Контактная информация:

Re: Bash autocomplete

Сообщение xorader »

не.. наверное я стормозил.. пятница была, sorry
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
Спасибо сказали:
Tir
Сообщения: 24
ОС: Slackware64 13.0

Re: Bash autocomplete

Сообщение Tir »

А можно сделать так, чтобы bash при автокомплите кроме отображения возможных вариантов ещё и подставлял их по очереди? Усмотрел такую фичу в консоли, прости хосспаде, венды :)

P.S.: сорри за некропостинг - поиском сюда занесло. ИМХО лучше занекропостить, чем новую тему плодить :)
Спасибо сказали:
Аватара пользователя
Luinnar
Сообщения: 246
ОС: Solaris, Debian, Ubuntu

Re: Bash autocomplete

Сообщение Luinnar »

Tir писал(а):
10.02.2009 12:55
А можно сделать так, чтобы bash при автокомплите кроме отображения возможных вариантов ещё и подставлял их по очереди? Усмотрел такую фичу в консоли, прости хосспаде, венды :)

В Hamilton такое же поведение и оно, честно говоря, меня раздражает. :) ИМХО пусть и дальше не подставляет, а не то IT'шники чаще матом ругаться будут. :)
Спасибо сказали:
Аватара пользователя
Portnov
Модератор
Сообщения: 1786
Статус: Матёрый линуксоид
ОС: Debian testing/unstable
Контактная информация:

Re: Bash autocomplete

Сообщение Portnov »

Zsh, afaik, умеет всё что в этой теме просили :)
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Спасибо сказали:
Аватара пользователя
oper777
Сообщения: 411
ОС: gentoo
Контактная информация:

Re: Bash autocomplete

Сообщение oper777 »

Tir писал(а):
10.02.2009 12:55
А можно сделать так, чтобы bash при автокомплите кроме отображения возможных вариантов ещё и подставлял их по очереди? Усмотрел такую фичу в консоли, прости хосспаде, венды :)

P.S.: сорри за некропостинг - поиском сюда занесло. ИМХО лучше занекропостить, чем новую тему плодить :)


http://posix.ru/shell/bash_tab/
Спасибо сказали:
Ответить