unsigned int character ) __nonnull;
static void delete_character ( struct edit_string *string ) __nonnull;
static void backspace ( struct edit_string *string ) __nonnull;
+static void kill_sol ( struct edit_string *string ) __nonnull;
static void kill_eol ( struct edit_string *string ) __nonnull;
/**
}
}
+/**
+ * Delete to start of line
+ *
+ * @v string Editable string
+ */
+static void kill_sol ( struct edit_string *string ) {
+ size_t old_cursor = string->cursor;
+ string->cursor = 0;
+ insert_delete ( string, old_cursor, NULL );
+}
+
/**
* Delete to end of line
*
/* Delete character */
delete_character ( string );
break;
+ case CTRL_U:
+ /* Delete to start of line */
+ kill_sol ( string );
+ break;
case CTRL_K:
/* Delete to end of line */
kill_eol ( string );