bothner@CS.WISC.EDU (01/16/90)
Just in case this bug has not already been reported ... The start_insert function in readline/readline.c is broken for terminal descriptors that support both im (insert mode) and IC/ic (insert characters) (such as Xterm) - the function inserts extra spaces AS WELL as entering insert mode. This trivial fix seems to work. --Per Bothner *** readline.c~ Sat Nov 4 07:42:01 1989 --- readline.c Mon Jan 15 14:20:53 1990 *************** *** 1892,1899 **** { if (term_im && *term_im) tputs (term_im, 1, output_character_function); ! ! if (term_IC && *term_IC && (count > 1 || !term_ic || !*term_ic)) { char *tgoto (), *buffer; --- 1892,1898 ---- { if (term_im && *term_im) tputs (term_im, 1, output_character_function); ! else if (term_IC && *term_IC && (count > 1 || !term_ic || !*term_ic)) { char *tgoto (), *buffer;
news@bbn.COM (News system owner ID) (01/20/90)
bothner@CS.WISC.EDU writes: >Just in case this bug has not already been reported ... >The start_insert function in readline/readline.c >is broken for terminal descriptors that support >both im (insert mode) and IC/ic (insert characters) This is fixed in the stuff I sent to Brian. An important caveat for all you avid termcap terminal description writers (like me): do NOT include both im/ei and ic UNLESS you must be in INSERT MODE to do INSERT CHARACTER, otherwize anything that uses RMS's algorithm (like emacs or the new readline code I sent Brian) will work wrong!!! -- Paul Placeway <pplaceway@bbn.com>