Commit Diff


commit - 219cf22d6863a21a7378fc5481bb05bbb6edd2dc
commit + 4030a6c905c99c48e7ca714fbe17a9b00fbff6fe
blob - e3a9ff74a477525cb2d1d1354be099caa57333f1
blob + 1391ea8acd11e9b8e0c46b233ea2ef8e40b266e3
--- CONTRIBUTORS
+++ CONTRIBUTORS
@@ -21,6 +21,7 @@ David Swasey <david.swasey@gmail.com>
 Enrique Soriano <enrique.soriano@gmail.com>
 Eoghan Sherry <ejsherry@gmail.com>
 Erik Quanstrom <quanstro@quanstro.net>
+Ethan Burns <burns.ethan@gmail.com>
 Fazlul Shahriar <fshahriar@gmail.com>
 Ingo Dreilich <yngoto@gmail.com>
 Justin Davis <jrcd83@gmail.com>
blob - 5a491b1e77fc2236251106d45cf60fa4c4343471
blob + c055c5e30ba24db31310830115993170c99ce640
--- src/cmd/acme/text.c
+++ src/cmd/acme/text.c
@@ -745,10 +745,12 @@ texttype(Text *t, Rune r)
 			q0++;
 		textshow(t, q0, q0, TRUE);
 		return;
+	case 3:		/* ^C: copy */
 	case Kcmd+'c':	/* %C: copy */
 		typecommit(t);
 		cut(t, t, nil, TRUE, FALSE, nil, 0);
 		return;
+	case 0x1a:	/* ^Z: undo */
 	case Kcmd+'z':	/* %Z: undo */
 	 	typecommit(t);
 		undo(t, nil, nil, TRUE, 0, nil, 0);
@@ -777,6 +779,7 @@ texttype(Text *t, Rune r)
 	}
 	/* cut/paste must be done after the seq++/filemark */
 	switch(r){
+	case 0x18:	/* ^X: cut */
 	case Kcmd+'x':	/* %X: cut */
 		typecommit(t);
 		if(t->what == Body){
@@ -787,6 +790,7 @@ texttype(Text *t, Rune r)
 		textshow(t, t->q0, t->q0, 1);
 		t->iq1 = t->q0;
 		return;
+	case 0x16:	/* ^V: paste */
 	case Kcmd+'v':	/* %V: paste */
 		typecommit(t);
 		if(t->what == Body){