commit - b4704695f1c7c3ade4b6748ae50129fb404f5214
commit + ba51ae9877aef8da2a6ee49e354d9b8148b0e93a
blob - ff2da5b3e06a235c6976a582fd47ba9f6950c143
blob + bc8d3e3e18ac853017273ec42409ed5757c1020e
--- src/cmd/acme/text.c
+++ src/cmd/acme/text.c
undo(t, nil, nil, FALSE, 0, nil, 0);
return;
+ /* adding X11 C-c, C-v, C-x, C-z, C-y, C-s
+ * (copy, paste, cut, undo, redo, save) */
+ case 0x03: /* C-c */
+ typecommit(t);
+ cut(t, t, nil, TRUE, FALSE, nil, 0);
+ return;
+ case 0x16: /* C-v */
+ typecommit(t);
+ if(t->what == Body){
+ seq++;
+ filemark(t->file);
+ }
+ paste(t, t, nil, TRUE, FALSE, nil, 0);
+ textshow(t, t->q0, t->q1, 1);
+ t->iq1 = t->q1;
+ return;
+ case 0x18: /* C-x */
+ typecommit(t);
+ if(t->what == Body){
+ seq++;
+ filemark(t->file);
+ }
+ cut(t, t, nil, TRUE, TRUE, nil, 0);
+ textshow(t, t->q0, t->q0, 1);
+ t->iq1 = t->q0;
+ return;
+ case 0x1A: /* C-z */
+ typecommit(t);
+ undo(t, nil, nil, TRUE, 0, nil, 0);
+ return;
+ case 0x19: /* C-y */
+ typecommit(t);
+ undo(t, nil, nil, FALSE, 0, nil, 0);
+ return;
+ case 0x13: /* C-s */
+ typecommit(t);
+ put(t, nil, nil, FALSE, 0, nil, 0);
+ return;
+
Tagdown:
/* expand tag to show all text */
if(!t->w->tagexpand){