Вопрос

Недавно я перешел с Ubuntu в течение последних 7 лет на Mac.Я читал другие сообщения, такие как Переключаюсь с Ubuntu на OS X и теряюсь и В чем разница между iTerm2 и Терминалом?

Почему iTerm2 и Терминал не завершают аргументы команды?

Например.Если я сделаю gi+Вкладка, он автоматически дополняет это слово до git и это хорошо.Когда я добавляю пробел и пытаюсь remo+Вкладка, почему бы мне не сделать автозаполнение, чтобы remote как в Убунту.Мне приходится вводить все вручную после слова git.То же самое и с другими командами.

Я делаю что-то не так или что-то упускаю?

(Обратите внимание, я не говорю о cmd + ; ярлык, который автоматически заполняет ранее введенные записи в iTerm2.)

Это было полезно?

Решение

Самый простой способ получить автодополнение в OS X — переключить оболочку на zsh.

Вы можете проверить что-то, запустив zsh в iTerm и терминале, прежде чем переключиться выше.Если вы действительно хотите придерживаться bash Вы можете начать с этих двух вопросов:

Другие советы

Решением при переходе с Ubuntu является использование homebrew, менеджер пакетов для Mac OSX.В частности, для git, вы добавите ряд дополнений, включая завершение bash.Это будет справедливо и для других программ, которые знакомы разработчикам, например make.

В 2 шага:

  1. установить с помощью ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
  2. Бегать brew doctor чтобы правильно настроить путь
  3. Установите завершение git и bash: brew install git bash-completion
  4. Добавьте команду возврата на предыдущем шаге в свой .bash_profile.
  5. Перезапустите сеансы bash, как только новые инструменты и конфигурация будут записаны в вашу файловую систему.

Еще это инструкции.

У меня есть два предложения:

  1. использовать рыба, это действительно просто и легко

    а.расширить его, используя ох моя рыбка

  2. зш с о-мой-зш.zsh уже установлен, поэтому вам не нужно ничего делать.

    а. chsh -s /bin/zsh

    б.выйти из системы и войти снова

    в.выполните это, чтобы установить oh-my-zsh wget --no-check-certificate https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh больше информации здесь: https://github.com/robbyrussell/oh-my-zsh

я использую oh-my-zsh но fish это тоже здорово.

Это несколько обходит проблему на случай, если кто-то захочет сохранить в своей системе версию Git, предоставленную Apple.

Вы можете создать псевдонимы в файле .gitconfig в своем домашнем каталоге для более коротких команд git.Например, у меня git настроен так git st бежит git status вместо.

Примеры псевдонимов в .gitconfig:

[alias]
    co = checkout
    ci = commit
    st = status
    br = branch

Один из вариантов, который может помочь, — использовать .git-completion.bash для баша мерзавец автодополнение.

Он позволяет вводить команды git, а затем автоматически заполнять удаленное имя (например,«origin» или «heroku»), а затем (и что более важно) для имен ветвей репозитория.

Видеть https://apple.stackexchange.com/a/55886/24565

Вы загружаете файл с
https://github.com/git/git/blob/master/contrib/completion/git-completion.bash

Для тех, кто ищет решение для завершения команд для bash, которое так же просто в использовании, как zsh + oh-my-zsh, теперь есть проект bash-it.Что, по его собственным словам, является «бессовестным грабежом oh-my-zsh» — на самом деле в этом нет ничего плохого!

Он устанавливает плагин, подобный архитектуре, такой как oh-my-zsh, где вы можете легко вносить и вынимать вещи из своей среды и получать новые вещи посредством синхронизации с их проектом GitHub.

Установка требует трех шагов:

  1. Проверьте клон этого репо: git clone https://github.com/revans/bash-it.git ~/.bash_it
  2. Бегать ~/.bash_it/install.sh (он автоматически создает резервную копию вашего ~/.bash_profile)
  3. Отредактируйте свой ~/.bash_profile файл, чтобы настроить bash-it.

Если вы боитесь полного включения zsh, bash-it это хорошая золотая середина, которая удерживает вас bash но дает вам множество мощных плагинов для расширения вашей среды.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с apple.stackexchange
scroll top