785 |
/* Replace a dash from echo_dash with a space, otherwise |
/* Replace a dash from echo_dash with a space, otherwise |
786 |
add a space at the end as a separator between keys. */ |
add a space at the end as a separator between keys. */ |
787 |
if (STRINGP (echo_string) |
if (STRINGP (echo_string) |
788 |
&& SCHARS (echo_string) > 0) |
&& SCHARS (echo_string) > 1) |
789 |
{ |
{ |
790 |
Lisp_Object last_char, idx; |
Lisp_Object last_char, prev_char, idx; |
791 |
|
|
792 |
|
idx = make_number (SCHARS (echo_string) - 2); |
793 |
|
prev_char = Faref (echo_string, idx); |
794 |
|
|
795 |
idx = make_number (SCHARS (echo_string) - 1); |
idx = make_number (SCHARS (echo_string) - 1); |
796 |
last_char = Faref (echo_string, idx); |
last_char = Faref (echo_string, idx); |
797 |
|
|
798 |
if (XINT (last_char) == '-') |
/* We test PREV_CHAR to make sure this isn't the echoing |
799 |
|
of a minus-sign. */ |
800 |
|
if (XINT (last_char) == '-' && XINT (prev_char) != ' ') |
801 |
Faset (echo_string, idx, make_number (' ')); |
Faset (echo_string, idx, make_number (' ')); |
802 |
else |
else |
803 |
echo_string = concat2 (echo_string, build_string (" ")); |
echo_string = concat2 (echo_string, build_string (" ")); |