tAllow single character delete from insert and normal mode - ve - a minimal text editor (work in progress)
 (HTM) git clone git://src.adamsgaard.dk/ve
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 2485a4471857acd56602b5069e6f08f388bed7aa
 (DIR) parent 42a8291950dcb96ec855afa221e71e06c6ef8e88
 (HTM) Author: Anders Damsgaard <anders@adamsgaard.dk>
       Date:   Tue,  6 Aug 2019 16:53:07 +0200
       
       Allow single character delete from insert and normal mode
       
       Diffstat:
         M edit.c                              |      21 +++++++++++++++++++++
         M edit.h                              |       2 ++
         M input.c                             |       6 +++++-
       
       3 files changed, 28 insertions(+), 1 deletion(-)
       ---
 (DIR) diff --git a/edit.c b/edit.c
       t@@ -9,3 +9,24 @@ editor_insert_char(int c)
                editor_row_insert_char(&E.row[E.cursor_y], E.cursor_x, c);
                E.cursor_x++;
        }
       +
       +void
       +editor_delete_char_left()
       +{
       +        if (E.cursor_y == E.num_rows)
       +                return;
       +        eRow *row = &E.row[E.cursor_y];
       +        if (E.cursor_x > 0) {
       +                editor_row_delete_char(row, E.cursor_x - 1);
       +                E.cursor_x--;
       +        }
       +}
       +
       +void
       +editor_delete_char_right()
       +{
       +        if (E.cursor_y == E.num_rows)
       +                return;
       +        eRow *row = &E.row[E.cursor_y];
       +        editor_row_delete_char(row, E.cursor_x);
       +}
 (DIR) diff --git a/edit.h b/edit.h
       t@@ -2,5 +2,7 @@
        #define EDIT_H_
        
        void editor_insert_char(int c);
       +void editor_delete_char_left();
       +void editor_delete_char_right();
        
        #endif
 (DIR) diff --git a/input.c b/input.c
       t@@ -130,6 +130,10 @@ editor_process_keypress()
                                        E.cursor_y = E.num_rows - 1;
                                        break;
        
       +                        case 'x':
       +                                editor_delete_char_right();
       +                                break;
       +
                                case 'I':
                                        E.cursor_x = 0;
                                        E.mode = 1;
       t@@ -153,7 +157,7 @@ editor_process_keypress()
        
                                case 127:  /* backspace */
                                case CTRL_KEY('h'):
       -                                /* TODO */
       +                                editor_delete_char_left();
                                        break;
        
                                case CTRL_KEY('l'):