summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--bin/man/psfed.13
-rw-r--r--bin/psfed.c7
2 files changed, 10 insertions, 0 deletions
diff --git a/bin/man/psfed.1 b/bin/man/psfed.1
index 227bf6b5..a0e07c75 100644
--- a/bin/man/psfed.1
+++ b/bin/man/psfed.1
@@ -95,6 +95,9 @@ Select previous/next bit in column.
 .It Ic SPACE
 Flip selected bit.
 .
+.It Ic r
+Invert glyph.
+.
 .It Ic u
 Revert glyph to initial state.
 .El
diff --git a/bin/psfed.c b/bin/psfed.c
index ec80bd81..93e77002 100644
--- a/bin/psfed.c
+++ b/bin/psfed.c
@@ -337,6 +337,13 @@ static void inputEdit(char ch) {
 		break; case 'k': if (edit.y) edit.y--;
 		break; case 'j': if (edit.y + 1 < header.glyph.height) edit.y++;
 		break; case ' ': bitFlip(edit.index, edit.x, edit.y);
+		break; case 'r': {
+			for (uint32_t y = 0; y < header.glyph.height; ++y) {
+				for (uint32_t x = 0; x < header.glyph.width; ++x) {
+					bitFlip(edit.index, x, y);
+				}
+			}
+		}
 		break; case 'u': {
 			memcpy(glyph(edit.index), edit.undo, header.glyph.size);
 		}