-
Notifications
You must be signed in to change notification settings - Fork 2
/
xpaint.1
229 lines (208 loc) · 5.56 KB
/
xpaint.1
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
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
.TH XPAINT 1 xpaint VERSION
.SH NAME
xpaint \- simple X paint
.SH SYNOPSIS
.B xpaint
.RB [\fIOPTIONS\fP]
.RB [\fIFILE\fP]
.SH DESCRIPTION
xpaint is used to interactively modify image files.
.SH POSITIONAL ARGUMENTS
.TP 12
\fIFILE\fP
Path to local file which be modified.
.B Save
and
.B load
commands will refer to it.
.SH OPTIONS
.TP
.B \-\-help
Print help message.
.TP
.B \-V, \-\-version
Print version.
.TP
.B \-v, \-\-verbose
Use verbose output.
.TP
.B \-w \fIWIDTH\fP, \-\-width \fIWIDTH\fP
Set canvas width.
.TP
.B \-h \fIHEIGHT\fP, \-\-height \fIHEIGHT\fP
Set canvas height.
.TP
.B \-i \fIFILE\fP, \-\-input \fIFILE\fP
Set load file.
.TP
.B \-o \fIFILE\fP, \-\-output \fIFILE\fP
Set save file.
.SH USAGE
.SS MODES
Application can be in \fICOLOR\fP,
\fICONSOLE\fP or \fIINTERACT\fP mode.
Default mode is interact (\fI<Esc>\fP to enter),
it used to edit canvas.
Color mode (\fIc\fP to enter) is used to change color in current tool context.
Console mode (\fI:\fP to enter) is used to execute commands.
.SS CONSOLE
In console mode all keys (except \fI<Esc>\fP) are captured to command line.
Use \fI<Enter>\fP to execute typed command,
use \fI<BS>\fP to delete typed letters.
Use \fI<Tab>\fP to request completions.
Completions will appear right after current command with different color.
Use \fI<Tab>\fP again to cycle completions,
use \fI<Enter>\fP to apply suggested completion.
Unicode are supported.
.TP
.B echo \fIMESSAGE\fP
Display message in statusline.
.TP
.B set \fIPROPERTY\fP \fIVALUE\fP
Set value to property.
Avaliable properties:
line_w (tools line width),
col (tool context current color),
font (interface font, xft name),
finp (input file),
fout (output file),
png_cmpr (PNG save file compression level),
jpg_qlty (JPG save file quality level).
.TP
.B q
Exit program. No progress is saved.
.TP
.B save \fITYPE\fP [\fIFILE\fP]
Save canvas contents to file as png or jpg (\fITYPE\fP). fout will be used if \fIFILE\fP not specified.
.TP
.B load [\fIFILE\fP]
Load png file to canvas. finp will be used if not specified.
.SS TOOL CONTEXT
Tool context holds tool and color list.
Avaliable tool contexts are in left
corner of status line.
Change current tool context with number keys.
One tool context holds only one tool (default is pencil).
Color list can be modified in color mode.
.SS TOOLS
Tools used to manipulate canvas.
All actions can be undone/redone.
To change current tool hold right mouse and select needed tool in selection circle.
.TP
.B PENCIL
Draw squares and lines on left mouse. Hold shift to use last drawn point as line start.
.TP
.B BRUSH
Same as pencil but draws circles.
.TP
.B SELECTION
Select rectangular regions on canvas.
Move selected contents around the canvas by dragging with left mouse.
Clone selected contents to canvas by dragging with shift.
Copy selected contents to X selection via \fIC-c\fP.
.TP
.B FILL
Fill closed regions on canvas with current color.
.TP
.B PICKER
Copy selected color from canvas.
.TP
.B FIGURE
Draw circle, square or triangle.
Current figure can be changed in selection circle.
To change figure tool to another select pencil tool in selection circle.
.SS KEYBOARD COMMANDS (ACTIONS AND KEYS)
Actions are keybinds for which the modes in which they can be triggered can be customized.
All keybinds can be changed in \fIconfig.h\fP file (ACT_* and KEY_* variables).
Below are the default keys.
.TP
.B ACT_MODE_INTERACT <Esc>
Enter interact mode.
.TP
.B ACT_EXIT q
Exit program.
.TP
.B ACT_SAVE_TO_FILE <C-s>
Save canvas to output path.
Output path can be passed via \-\-output argument,
FILE positional argument, or via console.
Saved image type same as currently loaded file (PNG if no file loaded).
.TP
.B ACT_UNDO <C-z>
Undo action.
.TP
.B ACT_REVERT <C-Z>
Redo action.
.TP
.B ACT_COPY_AREA <C-c>
Own selection with contents of selection tool. Selection MIME is image/png.
.TP
.B ACT_SWAP_COLOR x
Swap current color with last used.
.TP
.B (no action) NUMBER FROM 0 TO 9
Change current tool context.
.TP
.B (no action) <C-Left>, <C-Right>, <C-Down>, <C-Up>
Resize canvas.
Use shift modifier to increase step.
.TP
.B ACT_ZOOM_IN(OUT) <C-+>(<C-->)
Zoom canvas in (out).
.TP
.B ACT_MODE_COLOR c
Enter color mode.
.TP
.B ACT_ADD_COLOR <C-Up>
In color mode. Increase color list length for current tool context.
.TP
.B ACT_TO_RIGHT(LEFT)_COL_DIGIT <Right>(<Left>)
In color mode. Move cursor to next (previous) digit in modified color.
.TP
.B (no action) NUMBER FROM 0 to F
In color mode. Change selected digit to typed.
.TP
.B ACT_MODE_CONSOLE :
Enter console mode.
.TP
.B (no action) LETTER (except ACT_MODE_INTERACT)
In console mode. Append letter to command.
.TP
.B KEY_CL_REQUEST_COMPLT <Tab>
In console mode. Display completions.
.TP
.B KEY_CL_NEXT_COMPLT <Tab>
In console mode. Cycle completions.
.TP
.B KEY_CL_APPLY_COMPLT <Return>
In console mode. Apply completions.
.TP
.B KEY_CL_RUN <Return>
In console mode. Run command.
.TP
.B KEY_CL_ERASE_CHAR <BS>
In console mode. Clear letter from command.
.SS MOUSE COMMANDS
Mouse buttons also can be changed in \fIconfig.h\fP file (BTN_* variables).
.TP
.B BTN_MAIN <LeftMouse>
Use current tool.
.TP
.B BTN_SEL_CIRC <RightMouse>
Show tool selection circle. Hover tool icon and release button to select.
.TP
.B BTN_SCROLL_DRAG <MiddleMouse>
Move canvas around on drag.
.TP
.B BTN_SCROLL_UP(DOWN, LEFT, RIGHT) <Up>(<Down>, <S-Up>, <S-Down>)
Scroll canvas around.
.TP
.B BTN_ZOOM_IN(OUT) <C-Up>(<C-Down>)
Zoom canvas in (out).
.TP
.B BTN_COPY_SELECITON <S-LeftMouse>
Make selection with selection tool and drag it with this button to copy area (instead of move).
.SH NOTE
All listed keys are in vim notation.
.SH HOMEPAGE
https://github.com/Familex/xpaint