Re: showinvisibles garbled char solution
Cream is a free, easy-to-use configuration of the Vim text editor
Brought to you by:
digitect
From: Steve H. <dig...@mi...> - 2004-03-21 01:37:17
|
A literal colon and number nine? That's not right. Your choices should be an ellipses (133), math greater/lessthan (digraph <1 and >1), left/right arrow (digraph <- and ->) and an underscore. Hmm. From: "Peter C. Lai", Sat, 20 Mar 2004 15:29:00 -0500 > > It works for me. Gets rid of the |85| thing. Now the continuation of > line characters are displayed as : and 9 > > On Sat, Mar 20, 2004 at 03:11:13PM -0500, Steve Hall wrote: > > > > I think I solved the character display problem with showinvisibles: > > > > http://vim.sourceforge.net/scripts/script.php?script_id=363 > > > > In a nutshell, the script now selects each character according to > > whether it is printable to the display or not: > > > > if strlen(substitute(strtrans(nr2char(187)), ".", "x", "g")) == 1 > > > > o nr2char() generates the character from a decimal value > > o strtrans() produces a literal representation of the character > > o substitute() reduces a multibyte char to a single width > > o strlen() verifies that the width is only 1. (A char representation > > like "<85>" is interpreted to mean a char isn't printable, so it is > > skipped.) > > > > I don't know why we hadn't thought of this before, but it takes > > encoding out of the picture. If your particular system can use a > > sophisticated char, it is used. Otherwise, the selection might try > > another, down to one from the 0-128 ASCII set. Simple, as local to the > > implementation as possible, and independent on any other settings. > > > > I'd appreciate some testing on this. Please report your findings to > > the list. |