From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <0419571d402c4a169238ff68be37c8bf@plan9.escet.urjc.es> To: 9fans@cse.psu.edu From: paurea@plan9.escet.urjc.es In-Reply-To: <002e01c2e2e4$f1f807a0$2a8be793@gli.cas.cz> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: [9fans] Re: hack for acme Date: Wed, 5 Mar 2003 13:04:08 +0100 Topicbox-Message-UUID: 79385c5a-eacb-11e9-9e20-41e7f4b1d025 There was a bug in the diff I sent to the list. Sorry for that. Here is a (hopely bugless) one. diff /n/dump/2003/0227/sys/src/cmd/acme/acme.c acme/acme.c 424c424 < uint q0, q1; --- > uint q0, q1, keepw; 431a432 > 540,541c541,544 < if(textselect3(t, &q0, &q1)) < look3(t, q0, q1, FALSE); --- > if(keepw=textselect3(t, &q0, &q1)){ > keepw=(keepw==4); // is it chord 31? > look3(t, q0, q1, FALSE, keepw); > } diff /n/dump/2003/0227/sys/src/cmd/acme/exec.c acme/exec.c 128a129 > 202a204 > 203a206 > return; diff /n/dump/2003/0227/sys/src/cmd/acme/fns.h acme/fns.h 59c59 < void look3(Text*, uint, uint, int); --- > void look3(Text*, uint, uint, int, uint); diff /n/dump/2003/0227/sys/src/cmd/acme/look.c acme/look.c 15c15 < Window* openfile(Text*, Expand*); --- > Window* openfile(Text*, Expand*, uint keepw); 20c20 < look3(Text *t, uint q0, uint q1, int external) --- > look3(Text *t, uint q0, uint q1, int external, uint keepw) 31a32 > 136c137 < openfile(t, &e); --- > openfile(t, &e, keepw); 170a172,175 > > > > 196c201 < openfile(nil, &e); --- > openfile(nil, &e, FALSE); 671c676 < openfile(Text *t, Expand *e) --- > openfile(Text *t, Expand *e, uint keepw) 677a683 > Rectangle rect; 693c699,707 < w = makenewwindow(t); --- > if(keepw){ > w=t->w; > if(w == nil) > return nil; > } > else{ > w = makenewwindow(t); > } > 695c709,713 < winsetname(w, e->name, e->nname); --- > > winsetname(w, e->name, e->nname); > if(keepw&&t->w->isdir){ > t->file->nc=0; > } 696a715,722 > > if(keepw&&t->w->isdir){ > rect=t->all; > rect.min.x += Scrollwid+Scrollgap+Margin+Border; > textredraw(t,rect,t->reffont->f,screen,-1); > rowresize(&row, screen->clipr); > flushimage(display, 1); > } 763c789 < openfile(et, &e); --- > openfile(et, &e, FALSE); diff /n/dump/2003/0227/sys/src/cmd/acme/text.c acme/text.c 13a14,15 > > 189a192 > 191a195 > 1047,1048c1051,1057 < h = (textselect23(t, q0, q1, but3col, 1|2) == 0); < return h; --- > h = textselect23(t, q0, q1, but3col, 2); > if(h & 4) > return 4; // chord31 > if(h==0) > return 1; > else > return 0; diff /n/dump/2003/0227/sys/src/cmd/acme/xfid.c acme/xfid.c 809c809 < look3(t, q0, q1, TRUE); --- > look3(t, q0, q1, TRUE, FALSE);