Hi, I uploaded a new version, 2.0.2.
http://students.cs.niu.edu/~z1565938/distfiles/nvi2-freebsd-2011-12-07.diff.gz Same as before, you need to remove usr.bin/vi/port.h after you applied this patch. In this version, I analyzed all of the PRs, patches/commits of Debian's nvi package and NetBSD's nvi-1.81.6b5 in base. Many bug fixes are merged. And 2 main features are gained: 1. Recognized non-ASCII letters' upper/lower cases (~); 2. Recognized non-ASCII word boundary (w, ^A, regex, etc.). Btw, vim don't have such features. I also solved all memory leak in all know tests. iconv_open(3) usage part is rewrote. 2 changes from NetBSD are not merged: 1. To use signed char instead of unsigned char in 8-bit mode. This requires to cast all character to at least unsigned char when passing them to ctype(3). Test cases are required to convince me on this part; 2. 32-bit clean regex. According to the PRs and commit log, I don't have enough confidence in NetBSD's code here. Although the current regex in use is only 24-bit clean, but it works correctly and, my final solution is to use TRE in base directly. Comments and test reports are welcome. -- Zhihao Yuan, nickname lichray The best way to predict the future is to invent it. ___________________________________________________ 4BSD -- http://4bsd.biz/ _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[email protected]"

