I have a binary (a rust program that uses bindings to ncurses) and I need to run it in eshell as xterm-256color (well, make it work correctly at least). I haven't figured out how to do this yet. Tried setting TERM to xterm-256color, but that didn't seem to help. Is there even a way to do this?


Have you tried using M-x term instead of eshell? To my knowledge eshell does not support ncurses anyway.

  • I did not, I asked the question about eshell, because that's what I need.
    – Sum Proxy
    Jan 15 '16 at 15:30
  • 3
    It would be helpfull if you explain why that is. You can tell eshell to run certain commands in term by adding them to eshell-visual-commands ((add-to-list 'eshell-visual-commands "htop")), so from the users point of view it'll be seamless.
    – jkiiski
    Jan 15 '16 at 15:42
  • Yeah, that's what I saw in official documentation, section 4.1 here and that's what didn't work for me, so I turned to this group for help. Seems like there's either deeper knowledge (more likely) about this or this is not possible (hardly so).
    – Sum Proxy
    Jan 15 '16 at 18:46
  • Can you elaborate on how the program is working wrong? Is the output completely carbage, or is it just colors, input or screen width/height that's wrong? Does the program give an error message? Do you have the source code for the program, and the ability to make changes to it? I tried my own program that is written in Rust using ncurses inside term, and that did work. I imagine that either the problem is caused by the program you're trying to run, or you might be doing something wrong.
    – jkiiski
    Jan 15 '16 at 18:57
  • The program (accessible to modification) does run inside term with certain artifacts (some garbled characters, no color) but fails from eshell with correctly set eshell-visual-commands value.
    – Sum Proxy
    Jan 15 '16 at 19:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.