Recientemente cambié de usar una caja de Ubuntu durante los últimos 7 años a una Mac. He leído otras publicaciones como Cambiar de Ubuntu a OS X y estoy perdido y ¿Cuál es la diferencia entre iTerm2 y Terminal?
¿Por qué iTerm2 y Terminal no completan los argumentos de un comando?
P.ej. Si hago gi
+ Tab, autocompleta esta palabra a git
la que es bueno. Cuando agrego un espacio y pruebo remo
+ Tab, ¿por qué no lo autocompleta para que me remote
guste en Ubuntu? Tengo que escribir todo manualmente después de la palabra git
. Lo mismo para otros comandos.
¿Estoy haciendo algo mal o me estoy perdiendo algo?
(Tenga en cuenta que no estoy hablando del atajo cmd+ ;que completa automáticamente las entradas escritas previamente en iTerm2).
La forma más fácil de obtener el autocompletado en OS X es cambiar su shell a zsh
.
Puede probar cosas ejecutando zsh
iTerm y terminal antes de hacer el cambio anterior. Si realmente quieres seguir adelante bash
, puedes comenzar con estas dos preguntas:
Update:
Usar zsh con oh-my-zsh es increíble.Una solución al cambiar de ubuntu es usar homebrew, un administrador de paquetes para Mac OSX . En particular, para git
, habrá incluido una serie de adiciones, incluida la finalización de bash. Esto será cierto para otros programas que son falsos para los desarrolladores, como make
.
En 2 pasos:
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
brew doctor
para configurar correctamente tu rutabrew install git bash-completion
.bash_profile
.Más sobre este cómo .
Tengo dos sugerencias:
usa pescado , es realmente simple y fácil
una. extiéndalo usando oh-my-fish
zsh con oh-mi-zsh. zsh ya está instalado, por lo que no necesita hacer mucho.
una.chsh -s /bin/zsh
b. cerrar sesión y volver a iniciar sesión
C. ejecute esto para instalar oh-my-zsh wget --no-check-certificate https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh
más información aquí: https://github.com/robbyrussell/oh-my-zsh
Lo uso oh-my-zsh
pero fish
también es genial.
Esto evita un poco el problema, en caso de que alguien quiera mantener la versión de Git proporcionada por Apple en su sistema.
Puede crear alias en el archivo .gitconfig en su directorio de inicio para comandos git más cortos. Por ejemplo, tengo git configurado para que git st
se ejecute git status
en su lugar.
Ejemplo de alias en .gitconfig:
[alias]
co = checkout
ci = commit
st = status
br = branch
Una opción que podría ayudar es usar para el autocompletado .git-completion.bash
de bash git .
Le permite escribir comandos git y luego autocompletar para el nombre remoto (por ejemplo, 'origen' o 'heroku') y luego (y más significativamente) para los nombres de las ramas del repositorio.
Consulte https://apple.stackexchange.com/a/55886/24565
Descarga el archivo desde
https://github.com/git/git/blob/master/contrib/completion/git-completion.bash
Para aquellos que buscan una solución de finalización de comandos para bash que sea tan fácil de usar como zsh + oh-my-zsh, ahora existe el proyecto bash-it . Lo cual, en sus propias palabras, es "una estafa desvergonzada de oh-my-zsh" -- ¡realmente no tiene nada de malo!
Establece una arquitectura similar a un complemento como lo hace oh-my-zsh, donde puede traer cosas dentro y fuera de su entorno fácilmente y obtener cosas nuevas a través de la sincronización con su proyecto github.
La instalación necesita tres pasos:
git clone https://github.com/revans/bash-it.git ~/.bash_it
~/.bash_it/install.sh
(hace una copia de seguridad automática de su ~/.bash_profile
)~/.bash_profile
archivo para personalizar bash-it.Si tiene miedo de un cambio completo a zsh
, bash-it
es un buen término medio que lo mantiene conectado bash
pero le brinda muchos complementos poderosos para ampliar su entorno.
mmmmmm
Michael Durrant