Add command to reverse marked images

This commit is contained in:
Bastien Dejean 2013-11-14 14:45:27 +01:00
parent 450c1ed9b5
commit 562197577b
5 changed files with 18 additions and 0 deletions

View file

@ -108,6 +108,7 @@ of small previews is displayed, making it easy to choose an image to open.
D Remove image from file list and go to next image D Remove image from file list and go to next image
m Mark/unmark current image m Mark/unmark current image
M Reverse marked images
N Go [count] marked images forward N Go [count] marked images forward
P Go [count] marked images backward P Go [count] marked images backward

View file

@ -251,6 +251,18 @@ bool it_toggle_image_mark(arg_t a)
return true; return true;
} }
bool it_reverse_marks(arg_t a)
{
int i, cnt = mode == MODE_IMAGE ? filecnt : tns.cnt;
for (i = 0; i < cnt; i++) {
files[i].marked = !files[i].marked;
markcnt += files[i].marked ? 1 : -1;
}
return true;
}
bool it_navigate_marked(arg_t a) bool it_navigate_marked(arg_t a)
{ {
long n = (long) a; long n = (long) a;

View file

@ -55,6 +55,7 @@ bool it_n_or_last(arg_t);
bool i_navigate_frame(arg_t); bool i_navigate_frame(arg_t);
bool i_toggle_animation(arg_t); bool i_toggle_animation(arg_t);
bool it_toggle_image_mark(arg_t); bool it_toggle_image_mark(arg_t);
bool it_reverse_marks(arg_t);
bool it_navigate_marked(arg_t); bool it_navigate_marked(arg_t);
bool it_scroll_move(arg_t); bool it_scroll_move(arg_t);
bool it_scroll_screen(arg_t); bool it_scroll_screen(arg_t);

View file

@ -95,6 +95,7 @@ static const keymap_t keys[] = {
{ true, XK_space, i_toggle_animation, (arg_t) None }, { true, XK_space, i_toggle_animation, (arg_t) None },
{ false, XK_m, it_toggle_image_mark, (arg_t) None }, { false, XK_m, it_toggle_image_mark, (arg_t) None },
{ false, XK_M, it_reverse_marks, (arg_t) None },
{ false, XK_N, it_navigate_marked, (arg_t) +1 }, { false, XK_N, it_navigate_marked, (arg_t) +1 },
{ false, XK_P, it_navigate_marked, (arg_t) -1 }, { false, XK_P, it_navigate_marked, (arg_t) -1 },

3
sxiv.1
View file

@ -130,6 +130,9 @@ Remove current image from file list and go to next image.
.B m .B m
Mark/unmark the current image. Mark/unmark the current image.
.TP .TP
.B M
Reverse marked images.
.TP
.B N .B N
Go Go
.I count .I count