aboutsummaryrefslogtreecommitdiffstats
path: root/doc/info/scrotty.texinfo
blob: 5422b9d71114f43df41b3620f7b734597fc25968 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
\input texinfo   @c -*-texinfo-*-

@c %**start of header
@setfilename scrotty.info
@settitle scrotty
@afourpaper
@documentencoding UTF-8
@documentlanguage en
@finalout
@c %**end of header


@dircategory Multimedia
@direntry
* scrotty: (scrotty).                Take a screenshot of the framebuffer
@end direntry


@copying
Copyright @copyright{} 2014, 2015 Mattias Andrée

@quotation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
Texts. A copy of the license is included in the section entitled
``GNU Free Documentation License''.
@end quotation
@end copying

@ifnottex
@node Top
@top scrotty -- Take a screenshot of the framebuffer
@insertcopying
@end ifnottex

@titlepage
@title scrotty
@subtitle Take a screenshot of the framebuffer
@author by Mattias Andrée (maandree)

@page
@center `I don't know how to make a screenshot, because I normally use my computer in
@center text-mode. I have @sc{X} and @sc{GNOME} installed, but I use them only occasionally.' --- rms
@vskip 0pt plus 1filll
@insertcopying
@end titlepage

@contents



@menu
* Overview::                        Brief overview of @command{scrotty}.
* Invoking::                        Invocation of @command{scrotty}.
* GNU Free Documentation License::  Copying and sharing this manual.
@end menu



@node Overview
@chapter Overview

@command{scrotty} is a simple command for taking a screenshot
of your framebuffers. It can be used to take a screenshot of
your Linux TTY session, but it cannot take a screenshot of
your X session.@footnote{Unless it is for some reason is
rendered on the framebuffer.}

@command{scrotty} is designed after @command{scrot}, but
includes a some improvements. Namely it does not support
delaying the screenshot, selecting image quality or creating
thumbnails, but it has support for adding arbitrary arguments
to @command{convert} (from the ImageMagick project), which is
used to save the image.

@command{scrotty} reads the data stored in the framebuffers,
convert it the PNM images and pipes it to @command{convert}
to create PNG images.



@node Invoking
@chapter Invoking

@command{scrotty} recognises four options:

@table @option
@item --help
Print usage information and exit.
@item --version
Print program name and version and exit.
@item --copyright
Print copyright information and exit.
@item --raw
Save the images in portable anymap format
(PNM), rather than in Portable Network
Graphics (PNG). If this option is used,
and no arguments for @command{convert}
is specified, @command{convert} will not
be used, and there will be not requirement
to have ImageMagick installed.

PNM images are highly compressable with
@command{bzip2}. Compressed images are
comparable in size with PNG,@footnote{Usually
a few bytes in difference.} and can in
fact be smaller.
@item --exec CMD
Run a command for each saved image.
@end table

In addition to these options, a filename
pattern, that does not start with a dash,
can be added. This filename pattern selects
with what filename the image should be saved.

Further, it is possible add @option{--}
followed by additional options to add when
@command{scrotty} spawns @command{convert}.

Both the @option{--exec} and filename pattern
parameters can take format specifiers that are
expanded by @command{scrotty} when encountered.
There are two types of format specifier.
Characters preceded by a `%' are interpreted
by @code{strftime}. See @command{man strftime}
for examples. These options may be used to refer
to the current date and time. The second kind are
internal to scrotty and are prefixed by `$' or
`\'. The following specifiers are recognised:

@table @asis
@item `@code{$i}'
Framebuffer index.
@item `@code{$f}'
Image filename/pathname.
Ignored in the filename pattern.
@item `@code{$n}'
Image filename.
Ignored in the filename pattern.
@item `@code{$p}'
Image width multiplied by image height.
@item `@code{$w}'
Image width.
@item `@code{$h}'
Image height.
@item `@code{$$}'
Expands to a literal `$'.
@item `@code{\n}'
Expands to new line.
@item `@code{\\}'
Expands to a literal `\'.
@item `@code{\ }'
Expands to a literal ` '.                                           
@end table

A space that is not prefixed by a backslash in
@option{--exec} is interpreted as an argument
delimiter. This is the case even at the beginning
and end of the string and if a space was the
previous character in the string.

For example,
@command{scrotty `%Y-%m-%d_$wx$h.$i.png` --exec 'cp $f ~/.backups/shots/'}
create a file called something like @file{2014-10-28_1792x1344.0.png}
for your first framebuffer and @file{2014-10-28_1792x1344.1.png} for
your second framebuffer, and copies the saved images to @file{~/.backups/shots/}.



@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include fdl.texinfo

@bye