From fc62bc7fd62094abba10f85d3092cae8c854afaf Mon Sep 17 00:00:00 2001 From: Ilia Maslakov Date: Thu, 26 Apr 2012 11:44:39 +0400 Subject: [PATCH] NEED SQUASH Signed-off-by: Ilia Maslakov --- src/editor/edit-impl.h | 2 - src/editor/edit.c | 99 ++++++++++++++++++++++++++------------------------ 2 files changed, 51 insertions(+), 50 deletions(-) diff --git a/src/editor/edit-impl.h b/src/editor/edit-impl.h index 7d004b63e..9b965fb58 100644 --- a/src/editor/edit-impl.h +++ b/src/editor/edit-impl.h @@ -200,9 +200,7 @@ void edit_move_down (WEdit * edit, unsigned long i, int scroll); void edit_move_to_prev_col (WEdit * edit, long p); int edit_get_col (WEdit * edit); long edit_bol (WEdit * edit, long current); -long edit_bol_var (WEdit * edit, long current); long edit_eol (WEdit * edit, long current); -long edit_eol_var (WEdit * edit, long current); void edit_update_curs_row (WEdit * edit); void edit_update_curs_col (WEdit * edit); void edit_find_bracket (WEdit * edit); diff --git a/src/editor/edit.c b/src/editor/edit.c index 091aa686c..0fa52d09e 100644 --- a/src/editor/edit.c +++ b/src/editor/edit.c @@ -1039,6 +1039,57 @@ edit_move_to_bottom (WEdit * edit) } /* --------------------------------------------------------------------------------------------- */ +/** returns index of first char on line or the first nonspace char */ + +static long +edit_bol_var (WEdit * edit, long current) +{ + long tmp; + int b; + + if (current < 0) + current = 0; + + if (edit_get_byte (edit, current - 1) != '\n') /* not at BOL */ + return edit_bol (edit, current); + + if (edit_get_byte (edit, current) == '\n') /* on an empty line */ + return current; + + for (tmp = current; (b = edit_get_byte (edit, tmp)) != '\n'; tmp++) + { + if (b != ' ' && b != '\t') + return tmp; + } + return current; +} + +/* --------------------------------------------------------------------------------------------- */ +/** returns index of last char on line or the last nonspace char */ +static long +edit_eol_var (WEdit * edit, long current) +{ + long tmp; + int b; + + if (current >= edit->last_byte) + current = edit->last_byte; + + if (edit_get_byte (edit, current) != '\n') /* not at BOL */ + return edit_eol (edit, current); + + if (edit_get_byte (edit, current - 1) == '\n') /* on an empty line */ + return current; + + for (tmp = current - 1; (b = edit_get_byte (edit, tmp)) != '\n'; tmp--) + { + if (b != ' ' && b != '\t') + return tmp + 1; + } + return current; +} + +/* --------------------------------------------------------------------------------------------- */ /** goto beginning of line */ static void @@ -2469,54 +2520,6 @@ edit_set_codeset (WEdit * edit) #endif } -/* returns index of first char on line or the first nonspace char */ -long -edit_bol_var (WEdit * edit, long current) -{ - long tmp; - int b; - - if (current < 0) - current = 0; - - if (edit_get_byte (edit, current - 1) != '\n') /* not at BOL */ - return edit_bol (edit, current); - - if (edit_get_byte (edit, current) == '\n') /* on an empty line */ - return current; - - for (tmp = current; (b = edit_get_byte (edit, tmp)) != '\n'; tmp++) - { - if (b != ' ' && b != '\t') - return tmp; - } - return current; -} - -/* returns index of last char on line or the last nonspace char */ -long -edit_eol_var (WEdit * edit, long current) -{ - long tmp; - int b; - - if (current >= edit->last_byte) - current = edit->last_byte; - - if (edit_get_byte (edit, current) != '\n') /* not at BOL */ - return edit_eol (edit, current); - - if (edit_get_byte (edit, current - 1) == '\n') /* on an empty line */ - return current; - - for (tmp = current - 1; (b = edit_get_byte (edit, tmp)) != '\n'; tmp--) - { - if (b != ' ' && b != '\t') - return tmp + 1; - } - return current; -} - /* --------------------------------------------------------------------------------------------- */ /** Recording stack for undo: -- 2.11.4.GIT