Esta pregunta está relacionada con https://apple.stackexchange.com/a/357132/44531
Me gustaría tener un espacio después del emoj€. Lo he intentado en el script que aparece a continuación, pero me aparecen dos líneas en lugar de la esperada línea única. Y, no quiero que aparezcan dos espacios en el caso de código de retorno cero como codifiqué en mi respuesta original.
mac RC=1 ?$ declare -f highlightExitCode
highlightExitCode ()
{
exit_code=$?;
if [ $exit_code -ne 0 ]; then
echo -en " RC=${exit_code} "'\xf0\x9f\x98\xb1\x0a\x00';
else
echo -e "";
fi
}
mac $ echo $PS1
\u$(highlightExitCode) \$
mac $
mac $ er
-bash: er: command not found
mac RC=127 ?$
# FYI: I edited out the non-appearing space
#in my terminal output
Estoy usando MacOS 10.10.5.
mac RC=127 ?
$ bash --version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin14)
Copyright (C) 2007 Free Software Foundation, Inc.
mac $
Cuando intento añadir un espacio en el código de abajo, se me añade una nueva línea.
mac $ echo $PS1
\u$(highlightExitCode) \$
mac $ declare -f highlightExitCode
highlightExitCode ()
{
exit_code=$?;
if [ $exit_code -ne 0 ]; then
echo -en " RC=${exit_code} "'\xf0\x9f\x98\xb1\x0a\x00'" ";
else
echo -e "";
fi
}
mac $ error
-bash: error: command not found
mac RC=127 ?
$
mac RC=127 ?
$
mac RC=127 ?
$
-------- fyi ------------
de hecho, cuando copio y pego aquí me sale un espacio después del emoj, pero el espacio no aparece en mi terminal de mac.
mac RC=127 ? $
mac $
mac $
mac $
0 votos
No puedo reproducir esto. Usando tu primer ejemplo (con el espacio en la definición de PS1) obtengo un espacio entre el emoji y el
$
. La versión de Bash es3.2.57(1)-release
.0 votos
FWIW
printf '\xf0\x9f\x98\xb1\x20\x0a'
devuelve '? ' sin las comillas y el prompt en la siguiente línea y hay un espacio después de ?0 votos
¿Sabes que puedes poner el emoji directamente, ya que es unicode? Tuve el emoji de la taza de café en mi $PS1 durante años, ¡funcionó bien!