sudeepdino008
sudeepdino008

Reputation: 3364

Strange characters in ansi-term in emacs

I wrote a c++ program and when I compiled it using g++ in ansi-term, I got some strange characters displayed:

enter image description here

If required, the error was that i hadn't declared the variable n. How can I correct this?

Upvotes: 2

Views: 1491

Answers (3)

sudeepdino008
sudeepdino008

Reputation: 3364

Ah! Tested this...

 (setq locale-coding-system 'utf-8)
(set-terminal-coding-system 'utf-8-unix)
(set-keyboard-coding-system 'utf-8)
(set-selection-coding-system 'utf-8)
(prefer-coding-system 'utf-8)

and problem solved!!!

Upvotes: 5

tripleee
tripleee

Reputation: 189387

Looks like the gcc output contains UTF-8 "smart quotes" and your terminal is not set up to display UTF-8. The simple workaround is to use a locale which does not support smart quotes inside Emacs, which should force gcc to fall back to plain-jane ASCII quotes; a more sophisticated fix would be to fix the terminal mode in the Ansi-Term buffer to display these correctly.

Upvotes: 3

jtahlborn
jtahlborn

Reputation: 53694

Those are most likely color escape sequences. emacs has a mode for that which you can enable with the ansi-color-for-comint-mode-on function.

Upvotes: 1

Related Questions