diff options
author | Sadrul Habib Chowdhury <sadrul@users.sourceforge.net> | 2009-09-23 12:23:45 -0400 |
---|---|---|
committer | Sadrul Habib Chowdhury <sadrul@users.sourceforge.net> | 2009-09-23 12:23:45 -0400 |
commit | 0ca36352b236f6c72e1f79d9556e0759d9905d5d (patch) | |
tree | 6a729ca47fcd063c0f4a11830c216a064be36edc /src/mark.c | |
parent | bd1b9d13df786380e96bf610ef6c725b05be60ee (diff) | |
download | screen-0ca36352b236f6c72e1f79d9556e0759d9905d5d.tar.gz |
Re-indent some code, and reduce code-duplication.
Diffstat (limited to 'src/mark.c')
-rw-r--r-- | src/mark.c | 66 |
1 files changed, 28 insertions, 38 deletions
@@ -162,14 +162,18 @@ nextchar(int *xp, int *yp, int direction, char target, int num) displayed_line = (char *)WIN(*yp) -> image; switch(direction) { - case 't': adjust = -1; /* fall through */ - case 'f': step = 1; /* fall through */ - break; - case 'T': adjust = 1; /* fall through */ - case 'F': step = -1; /* fall through */ - break; - default: - ASSERT(0); + case 't': + adjust = -1; /* fall through */ + case 'f': + step = 1; + break; + case 'T': + adjust = 1; /* fall through */ + case 'F': + step = -1; + break; + default: + ASSERT(0); } x += step; @@ -611,43 +615,29 @@ int *inlenp; case 'F': /* fall through */ case 't': /* fall through */ case 'T': /* fall through */ - /* - * Set f_cmd to do a search on the next key stroke. - * If we break, rep_cnt will be reset, so we - * continue instead. It might be cleaner to - * store the rep_count in f_cmd and - * break here so later followon code will be - * hit. - */ - markdata->f_cmd.flag = 1; - markdata->f_cmd.direction = od; - debug("entering char search\n"); - continue; + /* + * Set f_cmd to do a search on the next key stroke. + * If we break, rep_cnt will be reset, so we + * continue instead. It might be cleaner to + * store the rep_count in f_cmd and + * break here so later followon code will be + * hit. + */ + markdata->f_cmd.flag = 1; + markdata->f_cmd.direction = od; + debug("entering char search\n"); + continue; case ';': + case ',': if (!markdata->f_cmd.target) break; if (!rep_cnt) rep_cnt = 1; - nextchar(&cx, &cy, markdata->f_cmd.direction, markdata->f_cmd.target, rep_cnt ); - revto(cx, cy); - break; - case ',': { - int search_dir; - if (!markdata->f_cmd.target) - break; - if (!rep_cnt) - rep_cnt = 1; - switch (markdata->f_cmd.direction) { - case 't': search_dir = 'T'; break; - case 'T': search_dir = 't'; break; - case 'f': search_dir = 'F'; break; - case 'F': search_dir = 'f'; break; - } - nextchar(&cx, &cy, search_dir, markdata->f_cmd.target, rep_cnt ); + nextchar(&cx, &cy, + od == ';' ? markdata->f_cmd.direction : (markdata->f_cmd.direction ^ 0x20), + markdata->f_cmd.target, rep_cnt ); revto(cx, cy); break; - } - case 'o': case 'x': if (!markdata->second) |