LINUX.ORG.RU

bash-completion 2.0

 ,


1

1

bash-completion это набор сценариев, которые, используя возможности программирования дополнений командной строки доступные в bash, реализуют автоматическое дополнение для множества популярных unix-утилит и значительно увеличивают комфортность работы в командной оболочке.

В новой версии произошли следующие изменения:

  • Прекращена поддержка bash < 4.1. За счёт этого было убрано множество «костылей», обходящих ошибки в более ранних версиях bash.
  • Задействована, появившаяся в bash-4.0, функция динамической подгрузки дополнений. Если раньше при запуске командной оболочки загружались все доступные дополнения, что приводило к неприятной задержке на старте, то сейчас сначала загружается только базовая часть, а сами дополнения только при первом использовании соответствующих команд.
  • Множество других мелких улучшений направленных на ускорение работы дополнений.
  • Все сценарии bash-completion теперь устанавливаются не в /etc, в /usr.
  • Добавлено множество новых дополнений: a2x, arping, asciidoc, base64, cal, chrpath, cppcheck, curl, dmesg, dot, file, gnome-mplayer, gprof, hddtemp, host, htpasswd, idn, ionice, jps, lbunzip2, lbzip2, lbzcat, prelink, protoc, pwdx, pwgen, reptyr, sum, watch, phing, pinfo, sbopkg, pkgtool, makepkg, rmp2tgz, slapt-get, slapt-src, slackpkg, kcov, feh, xgamma, fbi, fbgs, puppet, epdfview, lpr, lpq, mysql, plague-client, desktop-file-validate, valgrind, ccache, iperf, koji, lzip, udevadm, htop, nethogs, acpi, hwclock, pwd, ssh-add, vmstat.
  • Значительно улучшена поддержка Slackware: добавлены дополнения для системных утилит, учтены особенности расположения сценариев инициализации системы.
  • Добавлены linux-специфичные версии дополнений для mount, umount и su.
  • Исправлено множество ошибок. В том числе значительно улучшена поддержка дополнений для команд, принимающих в качестве аргументов другие команды.

Полный список изменений

>>> Сайт проекта

★★★

Проверено: maxcom ()
Последнее исправление: thelonelyisland (всего исправлений: 1)

Ответ на: комментарий от anonymous

4.2

Обоснуй. Приведи документ или стандарт, где указано, какой язык является международным и стандартным.

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Это примерно как требовать стандарт на то, что большинство людей — праворуки. Улавливаешь?

anonymous
()
Ответ на: комментарий от anonymous

Делать все с правой стороны на основании того, что большинство людей праворуки - глупо. Это называется дискриминацией и преследуется по закону в цивилизованных государствах.

Улавливаешь?

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Тем не менее так всё и делается, а для девиантов оставляют простор для самоудовлетворения — никакой дискриминации, всё в исходниках.

anonymous
()
Ответ на: комментарий от anonymous

Так делается только в твоем воображении, а IRL так делается просто чуть чаще, но далеко не всегда.

Опять же, при наличии юникода глупо и бессмысленно ограничиваться древней ASCII.

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

правильно. А выражение .* захватывает любую строку. Так? А вот и нет. ИМХО потому команды и преобразуются к безопасному виду.

drBatty ★★
()
Ответ на: комментарий от andreyu

Вот именно, а сказано было «в /etc/ должен лежать _твой_ конфиг, а дефолтный в /usr/.», что является бредом.

у тебя мышление как у хомячка, для тебя «мой» означает «в $HOME», а мне приходится учитывать, что как раз в /home/ лежат не мои файлы. Я с ними не работаю. Если мне надо поправить конфиг, я лезу в /etc/, что там у моих юзеров - меня волнует мало. Т.ч. извиняй, для МЕНЯ это естественно. Ну а дома я редко конфиги правлю, есть-же ГУЙ для этого.

drBatty ★★
()
Ответ на: комментарий от vurdalak

А почему нет? Я их и так в консоли пробовал использовать, работает. В виме вводятся и сохраняются. Только ширина у них неправильная в моноширинном шрифте, они шире латиницы.

дык если их ужать, получится нечитаемая каша. в консоли их тоже можно использовать, это иногда очень удобно как символ, вероятность появления которого почти нулевая. Например ★★★. Только надо помнить о том, что utf-8 это вообще говоря зияющая дыра.

drBatty ★★
()
Ответ на: комментарий от anonymous

Тем более, что имена файлов — низкоуровневые кишки, и такому говну там не место. Нужно — делай маппинг (как в венде «мои документы»).

место-неместо решать не тебе. В именах файлов ЛЮБЫЕ символы допустимы, кроме нуля и слеша. Как их рисовать - твоя проблема. А вот как ввенде - не надо пожалуйста. Это ведь и получится «как в венде», пишешь программу «Привет мир» в MSVC, в ответ получаешь кракозябры. Зачем ЭТО надо? Взял-бы, и уе***.

drBatty ★★
()
Ответ на: комментарий от vurdalak

А почему там место только английскому говну? Оно особое?

да. в английском тексте все символы - СИМВОЛЫ, и все занимают 1 байт. Потому, имена надо называть английскими буквами, хотя-бы потому, что сортировка только английского тупо в разы быстрее. Можешь сам проверить, возьми файл, и его отсортируй. Либо у тебя будет в разы медленнее, либо неправильно (буква Ё не на месте. Русским хорошо, можно е менять на ё, да и слов на букву ё немного, украинцам повезло меньше)

вот ещё пример:

echo | sed 's/[а-я]//'
sed: -e выражение #1, символ 11: Неверный знак сортировки
ИЧСХ, sed русский хоть понимает, например считает «Ф» одной буквой, большинство других утилит считает за две. А я всего-то попросил стереть одну букву, от а до я. Вот такая вот беда. ИЧСХ sed тут не причём, это glibc такая плохая. Т.е. чуть более чем все программы глючат точно так-же.

а вот замена большой буквы на маленькую

$ echo "абвгдеёуфхц" | tr ф Ф
абвгдеБЃФЅІ
хорошо хоть это работает:
$ echo "абвгдеёуфхц" | sed 's/ф/\U&/g'
абвгдеёуФхц
но об этом мало кто знает

Твои проблемы.

Не... Тут Михаил таки прав... Либо не лезь в кишки системы, либо забудь про юникод. Т.е. воспринимай «ф» не как русскую букву, а как «\xd1\x84»

drBatty ★★
()
Ответ на: комментарий от drBatty

м?

$ echo "абвгдеёуфхц" | sed 's/ф/Ф/g'  
абвгдеёуФхц

А tr тупой, да. Он, по-моему, кроме однобайтных кодировок ничего не умеет.

GArik ★★★
() автор топика
Ответ на: комментарий от drBatty

у тебя мышление как у хомячка, для тебя «мой» означает «в $HOME»,

Для любого нормального человека это так.

а мне приходится учитывать, что как раз в /home/ лежат не мои файлы. Я с ними не работаю. Если мне надо поправить конфиг, я лезу в /etc/,

А это системные файлы.

что там у моих юзеров - меня волнует мало. Т.ч. извиняй, для МЕНЯ это естественно. Ну а дома я редко конфиги правлю, есть-же ГУЙ для этого.

Сворачивайте уже свой членомер. Я понял, что вы хотели перед одноклассниками админо-крутизной блеснуть.

andreyu ★★★★★
()
Ответ на: комментарий от ghostmansd

Есть же разница сжимать одновременно несколько файлов (запущено несколько процессов), каждый на одном CPU и другое дело сжимать один файл, одним процессом, на всех доступных процессорах.

Вы уж определитесь что вам надо.

sdio ★★★★★
()
Ответ на: комментарий от sdio

Все, понял. Я завис: думал, что lbzip2 и pbzip2 могут принимать несколько файлов и распределять эти файлы по процессорам. Спасибо за пояснения!

ghostmansd
()
Ответ на: комментарий от drBatty

echo | sed 's/[а-я]//'
sed: -e выражение #1, символ 11: Неверный знак сортировки

Не воспроизводится

$ echo | sed 's/[а-я]//'

$ echo а1б2 | sed 's/[а-я]//'
1б2

sdio ★★★★★
()
Ответ на: комментарий от GArik

$ echo «абвгдеёуфхц» | sed 's/ф/Ф/g'

дык sed меняет 2 байта, на другие 2 байта. Независимо от кодировки.

drBatty ★★
()
Ответ на: комментарий от drBatty

Это так что на разных системах не воспроизводится, перечислять все долго. Похоже тебе будет проще сказать где есть баг, чем мне где его нет.

sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.