~strahinja/poe

ref: v1.01 poe/poe.1.in -rw-r--r-- 4.9 KiB
7e7b946cСтрахиња Радић Fix: properly update first shown column when C-R/C-T in lines longer than edit box width 1 year, 4 months ago
                                                                                
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
'\" t
.\" Manpage for poe(1)
.\" vim: set filetype=groff:
.
.mso an-ext.tmac
.de CDS
.EX
.RS \\$1
.sp 1
..
.de CDE
.sp 1
.RE
.EE
..
.de RDS
.RS \\$1
.sp 1
..
.de RDE
.sp 1
.RE
..
.
.TH POE "1" "%DATE%" "poe %VERSION%" "General Commands Manual"
.SH NAME
poe \- .po file editor
.
.SH SYNOPSIS
.
.SY poe
.OP "\-h \fR|\fP \-\-help"
.YS
.
.SY poe
.OP "\-v \fR|\fP \-\-version"
.YS
.
.SY poe
.RI [ filename.po ]
.YS
.
.SH COPYRIGHT
.
.LP
poe Copyright \(co 2021 Strahinya Radich.
.br
This program is licensed under GNU GPL v3 or later. See the file
.I LICENSE
in the poe repository for details. For licensing details about the portion of
the code taken from the termbox library, see the file
.IR "LICENSE.termbox" .
.
.SH DESCRIPTION
.
.LP
.B poe
is a .po (GNU gettext) file editor with a terminal UI.
.SH "KEY BINDINGS"
.
.LP 
Main window key bindings are as follows:
.
.TS
box tab(@);
l l.
\fBKey\fP@\fBAction\fP
_
\fCEsc\fP@Close dialog or clear error
\fCEnter\fP@Edit entry
\fCH\fP or \fCF1\fP@Show help dialog
\fC/\fP or \fCF7\fP@Incremental search (end input with Enter)
\fCn\fP or \fCF3\fP@Find next
\fCN\fP or \fCF4\fP@Find previous
\fCu\fP or \fCF8\fP@Go to next untranslated entry
\fCf\fP or \fCF9\fP@Go to next fuzzy entry
\fCw\fP or \fCC-S\fP@Save file (with backup)
\fCg\fP or \fCHome\fP@Go to first entry
\fCC-B\fP or \fCPgUp\fP@Go to previous page
\fCk\fP or \fC\[ua]\fP@Go to previous entry
\fCj\fP or \fC\[da]\fP@Go to next entry
\fCC-F\fP or \fCPgDn\fP@Go to next page
\fCG\fP or \fCEnd\fP@Go to last entry
\fCz\fP or \fCC-Z\fP@Toggle fuzzy flag
\fCq\fP or \fCC-Q\fP@Quit
.TE
.
.sp 1
.
.LP 
Edit dialog key bindings are as follows:
.
.TS
box tab(@);
l l.
\fBKey\fR@\fBAction\fR
_
\fCC-S\fR@Update entry and close dialog
\fCC-B\fP or \fCPgUp\fP@Update entry and edit previous entry
\fCC-F\fP or \fCPgDn\fP@Update entry and edit next entry
\fCC-P\fP@Show previous plural form of msgstr
\fCC-N\fP@Show next plural form of msgstr
\fCEscape\fP@Cancel changes and close dialog
\fCC-C\fP@Yank (copy) current msgstr to paste buffer
\fCC-V\fP@Paste the contents of paste buffer into current msgstr
\fCF8\fP@Go to next untranslated entry
\fCF9\fP@Go to next fuzzy entry
\fCF5\fP@Copy msgid to edit box as current msgstr
\fCF6\fP@Toggle focus between info box and edit box
\fCC-Z\fP@Toggle fuzzy flag
\fCC-A\fP or \fCHome\fP@Go to start of line
\fCC-E\fP or \fCEnd\fP@Go to end of line
\fCC-U\fP@Erase to start of line
\fCC-K\fP@Erase to end of line
\fCC-R\fP@Go to previous word
\fCC-T\fP@Go to next word
\fCC-W\fP@Erase previous word
\fC\[ua]\fP@Go to previous line
\fC\[<-]\fP@Go to previous character
\fC\[->]\fP@Go to next character
\fC\[da]\fP@Go to next line
.TE
.
.sp 1
.
.LP
In the table above, "current msgstr" refers to the situation when there are
multiple msgstrs, representing different plural forms. Only the currently shown
plural form is affected.
.
.LP
When the info box is focused, arrow keys, \fCC-B\fP/\fCC-F\fP
(\fCPgUp\fP/\fCPgDn\fP) and \fCC-A\fP/\fCC-E\fP (\fCHome\fP/\fCEnd\fP) keys
scroll the info box.
.
.LP
When the search box is open, relevant text editing and movement commands from
the edit box also apply. For example, \fCC-R\fP moves one word backwards, and
\fCC-W\fP deletes one word backwards.
.
.SH "STATUS LINE"
.
.LP
Status line is comprised of a number of segments, by default three. The central
segment displays the current message number, the total messages count, then in
parentheses: number of untranslated messages, number of fuzzy messages and the
number of obsolete messages. Obsolete messages are messages whose msgid doesn't
match any msgid in the message catalog anymore, and are commented out in the .po
file using \fC#~\fP comments.
.
.SH "MESSAGE FLAGS"
.
.LP
Message flags are shown to the left of the msgid in the main window and the
statusbar of the edit box. They mean the following:
.
.TS
box tab(@);
l l.
\fBCharacter\fP@\fBMeaning\fP
_
\fCC\fP@\fCc-format\fP flag
\fCF\fP@\fCfuzzy\fP flag
\fCP\fP@Message has plural forms
\fCN\fP@\fCno-c-format\fP flag
.TE
.
.sp 1
.
.SH AUTHOR
.
Strahinya Radich,
.UR https://\:strahinja.org
.UE
.
.SH "KNOWN LIMITATIONS"
.
.IP \(bu 4
UTF-8 character set is assumed.
.
.IP \(bu
CJK characters are unsupported/problematic. This is a limitation of termbox
library. See
.
.IP "" 4
.UR https://\:github.com/\:nsf/\:termbox
.UE
.
.IP
for more details.
.
.IP \(bu
Only one file can be edited at a time, and no additional files can be loaded at
runtime. This is a design decision.
.
.IP \(bu
The directory of the edited file must be writeable by the user in order to write
the changes to the file. This is due to creating backups in order to avoid the
potential data loss under specific circumstances (loss of power during write).
.
.IP \(bu
Only the flags \fIfuzzy\fP, \fIc-format\fP and \fIno-c-format\fP are supported.
Other flags will be stripped on save. This is a design decision.
.
.SH BUGS
.
.LP
Bugs can be reported using the ticket tracker at:
.UR https://\:todo.sr.ht/\:~strahinja/\:poe
.UE