projects
/
oweals
/
busybox.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
4f82bdb
)
less: shrink
author
Denis Vlasenko
<vda.linux@googlemail.com>
Sun, 24 Feb 2008 19:18:18 +0000
(19:18 -0000)
committer
Denis Vlasenko
<vda.linux@googlemail.com>
Sun, 24 Feb 2008 19:18:18 +0000
(19:18 -0000)
miscutils/less.c
patch
|
blob
|
history
diff --git
a/miscutils/less.c
b/miscutils/less.c
index 7351a634d763892b9a750e667961b0bb827a8aba..da595f428ea2c2c3b7a7457ed51be2aec6d645b8 100644
(file)
--- a/
miscutils/less.c
+++ b/
miscutils/less.c
@@
-1175,41
+1175,40
@@
static void goto_mark(void)
static char opp_bracket(char bracket)
{
switch (bracket) {
static char opp_bracket(char bracket)
{
switch (bracket) {
- case '{': case '[':
- return bracket + 2;
- case '(':
- return ')';
- case '}': case ']':
- return bracket - 2;
- case ')':
- return '(';
- }
- return 0;
+ case '{': case '[': /* '}' == '{' + 2. Same for '[' */
+ bracket++;
+ case '(': /* ')' == '(' + 1 */
+ bracket++;
+ break;
+ case '}': case ']':
+ bracket--;
+ case ')':
+ bracket--;
+ break;
+ };
+ return bracket;
}
static void match_right_bracket(char bracket)
{
}
static void match_right_bracket(char bracket)
{
- int bracket_line = -1;
int i;
if (strchr(flines[cur_fline], bracket) == NULL) {
print_statusline("No bracket in top line");
return;
}
int i;
if (strchr(flines[cur_fline], bracket) == NULL) {
print_statusline("No bracket in top line");
return;
}
+ bracket = opp_bracket(bracket);
for (i = cur_fline + 1; i < max_fline; i++) {
for (i = cur_fline + 1; i < max_fline; i++) {
- if (strchr(flines[i],
opp_bracket(bracket)
) != NULL) {
- b
racket_line = i
;
-
break
;
+ if (strchr(flines[i],
bracket
) != NULL) {
+ b
uffer_line(i)
;
+
return
;
}
}
}
}
- if (bracket_line == -1)
- print_statusline("No matching bracket found");
- buffer_line(bracket_line - max_displayed_line);
+ print_statusline("No matching bracket found");
}
static void match_left_bracket(char bracket)
{
}
static void match_left_bracket(char bracket)
{
- int bracket_line = -1;
int i;
if (strchr(flines[cur_fline + max_displayed_line], bracket) == NULL) {
int i;
if (strchr(flines[cur_fline + max_displayed_line], bracket) == NULL) {
@@
-1217,15
+1216,14
@@
static void match_left_bracket(char bracket)
return;
}
return;
}
+ bracket = opp_bracket(bracket);
for (i = cur_fline + max_displayed_line; i >= 0; i--) {
for (i = cur_fline + max_displayed_line; i >= 0; i--) {
- if (strchr(flines[i],
opp_bracket(bracket)
) != NULL) {
- b
racket_line = i
;
-
break
;
+ if (strchr(flines[i],
bracket
) != NULL) {
+ b
uffer_line(i)
;
+
return
;
}
}
}
}
- if (bracket_line == -1)
- print_statusline("No matching bracket found");
- buffer_line(bracket_line);
+ print_statusline("No matching bracket found");
}
#endif /* FEATURE_LESS_BRACKETS */
}
#endif /* FEATURE_LESS_BRACKETS */