{"action":"closed","issue":{"url":"https://api.github.com/repos/pexpect/pexpect/issues/83","labels_url":"https://api.github.com/repos/pexpect/pexpect/issues/83/labels{/name}","comments_url":"https://api.github.com/repos/pexpect/pexpect/issues/83/comments","events_url":"https://api.github.com/repos/pexpect/pexpect/issues/83/events","html_url":"https://github.com/pexpect/pexpect/issues/83","id":36954123,"number":83,"title":"ANSI doesn't allow nonprintable characters","user":{"login":"dcoshea","id":2437134,"avatar_url":"https://avatars.githubusercontent.com/u/2437134?v=3","gravatar_id":"","url":"https://api.github.com/users/dcoshea","html_url":"https://github.com/dcoshea","followers_url":"https://api.github.com/users/dcoshea/followers","following_url":"https://api.github.com/users/dcoshea/following{/other_user}","gists_url":"https://api.github.com/users/dcoshea/gists{/gist_id}","starred_url":"https://api.github.com/users/dcoshea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dcoshea/subscriptions","organizations_url":"https://api.github.com/users/dcoshea/orgs","repos_url":"https://api.github.com/users/dcoshea/repos","events_url":"https://api.github.com/users/dcoshea/events{/privacy}","received_events_url":"https://api.github.com/users/dcoshea/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/pexpect/pexpect/labels/bug","name":"bug","color":"e11d21"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2014-07-02T05:57:15Z","updated_at":"2015-09-19T18:20:25Z","closed_at":"2015-09-19T18:20:25Z","body":"In 345eb58, in write_ch():\r\n\r\n```\r\nif ch not in string.printable:\r\n    fout = open ('log', 'a')\r\n    fout.write ('Nonprint: ' + str(ord(ch)) + '\\n')\r\n    fout.close()\r\n    return\r\n```\r\n\r\nI would like non-printable characters to be accepted, since I am dealing with data streams that include CP437 line drawing characters.\r\n\r\nObviously it's easy to comment out the above lines, but I think it might make more sense for non-printable characters to be accepted, and to leave it up to the caller to decide what to do with any that they find on the virtual \"screen\" as they see fit.  Filtering them out, as is currently done, means that other characters do not appear in their correct locations on the screen, unless this is meant to be a way to filter out line noise, in which case you don't want the cursor to be moved when they are filtered out?"}}