ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/CV/README
(Generate patch)

Comparing CV/README (file contents):
Revision 1.6 by root, Sun Nov 25 14:16:35 2007 UTC vs.
Revision 1.11 by root, Wed Jul 19 01:43:10 2017 UTC

1NAME 1NAME
2 cv - a fast gtk+ image viewer loosely modeled after XV 2 cv - a fast gtk+ image viewer loosely modeled after XV
3 3
4SYNOPSIS 4SYNOPSIS
5 cv [file...] 5 cv
6
7 cv directory
8
9 cv path...
10
11 cv -g <glob expression...>
12
13 find .. -print0 | cv -0r
6 14
7FEATURES 15FEATURES
8 CV is supposed to work similar to the venerable XV image viewer, just 16 CV is supposed to work similar to the venerable XV image viewer, just
9 faster. Why faster? 17 faster. Why faster?
10 18
11 * optimized directory scanning algorithm 19 * optimized directory scanning algorithm
20
12 The directory scanning in CV uses some tricks that - on most modern 21 The directory scanning in CV uses some tricks that - on most modern
13 filesystems - makes it possible to detect filetypes faster than 22 filesystems - makes it possible to detect filetypes faster than
14 stat()'ing every file. This makes CV suitable for directories with 23 stat()'ing every file. This makes CV suitable for directories with
15 lots of files (10000+). 24 lots of files (10000+).
16 25
20 29
21 On the positive side, it is usually many orders of magnitude faster 30 On the positive side, it is usually many orders of magnitude faster
22 than traditional scanning techniques (good for directories with 31 than traditional scanning techniques (good for directories with
23 10000 or 100000+ files). 32 10000 or 100000+ files).
24 33
25 * queuing for all time-consuming background tasks 34 * queuing for all time-consuming background tasks
35
26 All tasks, such as unlinking files or generating thumbnails, that 36 All tasks, such as unlinking files or generating thumbnails, that
27 can be done in the background will be done so - no waiting required, 37 can be done in the background will be done so - no waiting required,
28 even when changing directories. 38 even when changing directories.
29 39
30 * use of asynchronous I/O 40 * use of asynchronous I/O
41
31 CV tries to use asynchronous I/O whereever it makes sense, for 42 CV tries to use asynchronous I/O whereever it makes sense, for
32 example while scanning directories, waiting for stat data, unlinking 43 example while scanning directories, waiting for stat data, unlinking
33 files or generating thumbnails. This usually decreases scanning 44 files or generating thumbnails. This usually decreases scanning
34 times for large directories a bit (especially on RAID devices and 45 times for large directories a bit (especially on RAID devices and
35 over NFS) and makes CV much more interactive. 46 over NFS) and makes CV much more interactive.
36 47
37 * fast image loading 48 * fast image loading
49
38 The time span between the user issuing a command and displaying the 50 The time span between the user issuing a command and displaying the
39 new image should be as small as possible. CV uses optimized 51 new image should be as small as possible. CV uses optimized
40 (especially for JPEG) loading functions and sacrifices some quality 52 (especially for JPEG) loading functions and sacrifices some quality
41 (e.g no gamma correction, although this might change) to achieve 53 (e.g no gamma correction, although this might change) to achieve
42 this speed. 54 this speed.
43 55
44 * fast thumbnail creation 56 * fast thumbnail creation
57
45 Thumbnail creation uses both CPU and Disk-I/O. CV interleaves both, 58 Thumbnail creation uses both CPU and Disk-I/O. CV interleaves both,
46 so on modern CPUs, thumbnailing is usually limited by I/O speed. 59 so on modern CPUs, thumbnailing is usually limited by I/O speed.
47 Thumbnail creation for JPEGs has been specially optimized and can 60 Thumbnail creation for JPEGs has been specially optimized and can
48 even take advantage of multiple CPUs. 61 even take advantage of multiple CPUs.
49 62
50 * minimum optical clutter 63 * minimum optical clutter
64
51 CV has no menus or other user interface elements that take up a lot 65 CV has no menus or other user interface elements that take up a lot
52 of screen space (or are useful for beginning users). The schnauzer 66 of screen space (or are useful for beginning users). The schnauzer
53 windows can also be somewhat crowded. 67 windows can also be somewhat crowded.
54 68
55 The point of an image viewer is viewing images, not a nice GUI. This 69 The point of an image viewer is viewing images, not a nice GUI. This
56 is similar to XV's behaviour. 70 is similar to XV's behaviour.
57 71
58 * efficient (and hard to learn) user interface 72 * efficient (and hard to learn) user interface
73
59 CV uses key combinations. A lot. If you are an experienced XV user, 74 CV uses key combinations. A lot. If you are an experienced XV user,
60 you will find most of these keys familiar. If not, CV might be hard 75 you will find most of these keys familiar. If not, CV might be hard
61 to use at first, but will be an efficient tool later. 76 to use at first, but will be an efficient tool later.
62 77
63 * multi-window GUI 78 * multi-window GUI
79
64 CV doesn't force you to use a specific layout, instead it relies on 80 CV doesn't force you to use a specific layout, instead it relies on
65 your window manager, thus enabling you to chose whatever layout that 81 your window manager, thus enabling you to chose whatever layout that
66 suits you most. 82 suits you most.
67 83
68 * i18n'ed filename handling throughout 84 * i18n'ed filename handling throughout
85
69 As long as glib can recognize your filename encoding (either UTF-8 86 As long as glib can recognize your filename encoding (either UTF-8
70 or locale-specific, depending on the setting of G_BROKEN_FILENAMES) 87 or locale-specific, depending on the setting of G_BROKEN_FILENAMES)
71 and you have the relevant fonts, CV will display your filenames 88 and you have the relevant fonts, CV will display your filenames
72 correctly. 89 correctly.
73 90
74 * extensible through plug-ins 91 * extensible through plug-ins
92
75 I have weird plug-ins that access remote databases to find a 93 I have weird plug-ins that access remote databases to find a
76 directory. This is not likely to be of any use to other people. 94 directory. This is not likely to be of any use to other people.
77 Likewise, others might have weird requirements I cannot dream of. 95 Likewise, others might have weird requirements I cannot dream of.
78 96
79 * filename clustering 97 * filename clustering
98
80 Among the standard plug-ins is a filename clustering plug-in, that 99 Among the standard plug-ins is a filename clustering plug-in, that
81 (in case of tens of thousands images in one directory) might be able 100 (in case of tens of thousands images in one directory) might be able
82 to cluster similar names together. 101 to cluster similar names together.
83 102
84DESCRIPTION 103DESCRIPTION
100 s set scaling mode to 'bilinear' (default) 119 s set scaling mode to 'bilinear' (default)
101 shift-s set scaling mode to 'hyper' (slowest) 120 shift-s set scaling mode to 'hyper' (slowest)
102 t rotate clockwise 90° 121 t rotate clockwise 90°
103 T rotate counterclockwise° 122 T rotate counterclockwise°
104 a apply all rotations loslessly to a jpeg file (using exiftran) 123 a apply all rotations loslessly to a jpeg file (using exiftran)
124 ctrl-shift-t apply current rotation for future image loads
105 ctrl-v open a new visual schnauzer window for the current dir 125 ctrl-v open a new visual schnauzer window for the current dir
106 ctrl-c clone the current image window 126 ctrl-c clone the current image window
107 ctrl-e run an editor ($CV_EDITOR or "gimp") on the current image 127 ctrl-e run an editor ($CV_EDITOR or "gimp") on the current image
108 ctrl-p fire up the print dialog 128 ctrl-p fire up the print dialog
129 ctrl-shift-p same as ctrl-p, but automatically selects "ok"
109 escape cancel a crop action 130 escape cancel a crop action
110 131
111 And when playing movies, these additional keys are active: 132 And when playing movies, these additional keys are active:
112 133
113 left rewind by 10 seconds 134 left rewind by 10 seconds
149 end move to last file 170 end move to last file
150 171
151 ctrl-a select all files 172 ctrl-a select all files
152 ctrl-shift-a select all files currently displayed in the schnauzer window 173 ctrl-shift-a select all files currently displayed in the schnauzer window
153 ctrl-d delete selected files WITHOUT ASKING AGAIN 174 ctrl-d delete selected files WITHOUT ASKING AGAIN
154 ctrl-g force generation of thumbnais for the selected files 175 ctrl-g force generation of thumbnails for the selected files
176 ctrl-shift-g remove thumbnails for the selected files
155 ctrl-s rescan current direcory or files updates/deletes etc. 177 ctrl-s rescan current direcory or files updates/deletes etc.
156 ctrl-u update selected (or all) icons if neccessary 178 ctrl-u update selected (or all) icons if neccessary
157 ctrl-l don't use, will become a plug-in eventually 179 ctrl-- unselected thumbnailed images
180 ctrl-+ keep only thumbnailed images, deselect others
158 181
159 ^ go to parent directory (caret). 182 ^ go to parent directory (caret).
160 183
161 0-9, 184 0-9,
162 a-z find the first filename beginning with this letter 185 a-z find the first filename beginning with this letter
203 or require "/fs/cv/cvplugin.pl"; 226 or require "/fs/cv/cvplugin.pl";
204 227
205 This will load a plug-in, but only if the machine *ether* is reachable 228 This will load a plug-in, but only if the machine *ether* is reachable
206 (supposedly the plug-in is networked in some way :). 229 (supposedly the plug-in is networked in some way :).
207 230
208ENVIRONMENT 231ENVIRONMENT VARIABLES
209 CV_EDITOR 232 CV_EDITOR
210 The program that gets executed when the user presses "CTRL-e" in the 233 The program that gets executed when the user presses "CTRL-e" in the
211 Schnauzer or image window. The default is "gimp". 234 Schnauzer or image window. The default is "gimp".
212 235
213 CV_AUDIO_PLAYER 236 CV_AUDIO_PLAYER
217 CV_PRINT_DESTINATION 240 CV_PRINT_DESTINATION
218 The default (perl-style) destination to use in the print dialog. 241 The default (perl-style) destination to use in the print dialog.
219 242
220 CV_TRASHCAN 243 CV_TRASHCAN
221 When set, must point to a directory where all files that are deleted 244 When set, must point to a directory where all files that are deleted
222 are moved to. If unset, files that are deleted are really being 245 by the "Delete Physically" (ctrl-d) action are moved to (other
223 deleted. 246 deletion actions still delete!). If unset, files that are deleted
247 are really being deleted.
248
249SIGNALS
250 Sending CV a SIGUSR1 signal will cause all image viewers to reload the
251 currently loaded image. This is useful if you use CV as a viewer for
252 changing data - just run it in the background with some path and each
253 time the image changes, send it a SIGUSR1.
224 254
225SECURITY CONSIDERATIONS 255SECURITY CONSIDERATIONS
226 CV uses Pixbuf to load non-JPEG images. Pixbuf is not considered safe 256 CV uses Pixbuf to load non-JPEG images. Pixbuf is not considered safe
227 for this purpose, though (from the gtk-2.2 release notes): 257 for this purpose, though (from the gtk-2.2 release notes):
228 258

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines