root / pykota / trunk / po / th / pykota.po @ 3259

Revision 3259, 85.3 kB (checked in by jerome, 16 years ago)

Began work on moving from GNU GPL v2 or later to GNU GPL v3 or later.
TODO : Also move command line tools and library.
TODO : Change documentation from SGML DocBook? to XML DocBook? to
TODO : accomodate the GNU GPL v3 text available in DocBook? XML
TODO : from www.gnu.org

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1#
2# PyKota : Print Quotas for CUPS
3#
4# (c) 2003, 2004, 2005, 2006, 2007 Jerome Alet <alet@librelogiciel.com>
5# This program is free software: you can redistribute it and/or modify
6# it under the terms of the GNU General Public License as published by
7# the Free Software Foundation, either version 3 of the License, or
8# (at your option) any later version.
9#
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13# GNU General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with this program.  If not, see <http://www.gnu.org/licenses/>.
17#
18# $Id$
19#
20msgid ""
21msgstr ""
22"Project-Id-Version: PyKota v1.20\n"
23"Report-Msgid-Bugs-To: alet@librelogiciel.com\n"
24"POT-Creation-Date: 2006-03-30 22:00+0200\n"
25"PO-Revision-Date: 2004-07-21 15:35:00+0100\n"
26"Last-Translator: Suthep Yonpimai <tomzt@hotmail.com>\n"
27"Language-Team: Thai <tomzt@hotmail.com>\n"
28"MIME-Version: 1.0\n"
29"Content-Type: text/plain; charset=TIS-620\n"
30"Content-Transfer-Encoding: 8bit\n"
31
32#
33# NB : THE FIVE ENTRIES BELOW WERE ADDED MANUALLY
34#
35msgid "ALLOW"
36msgstr ""
37
38msgid "DENY"
39msgstr ""
40
41msgid "CANCEL"
42msgstr ""
43
44msgid "PROBLEM"
45msgstr ""
46
47msgid "REFUND"
48msgstr ""
49
50#, python-format
51msgid ""
52"autopykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
53"\n"
54"A tool to automate user account creation and initial balance setting.\n"
55"\n"
56"THIS TOOL MUST NOT BE USED IF YOU WANT TO LIMIT YOUR USERS BY PAGE QUOTA !\n"
57"\n"
58"command line usage :\n"
59"\n"
60"  THIS TOOL MUST NOT BE USED FROM THE COMMAND LINE BUT ONLY AS PART\n"
61"  OF AN external policy IN pykota.conf\n"
62"  \n"
63"  autopykota { -i | --initbalance value } \n"
64"\n"
65"options :\n"
66"\n"
67"  -v | --version       Prints autopykota's version number then exits.\n"
68"  -h | --help          Prints this message then exits.\n"
69"  \n"
70"  -i | --initbalance b Sets the user's account initial balance value to b.\n"
71"                       If the user already exists, actual balance is left\n"
72"                       unmodified. If unset, the default value is 0.\n"
73"\n"
74"  -e | --email addr    Sets the user's e-mail address.\n"
75"  \n"
76msgstr ""
77
78#, python-format
79msgid "SIGTERM received, job %s cancelled."
80msgstr "�����SIGTERM , �ҹ %s �١¡��."
81
82#, python-format
83msgid "Network error while querying the CUPS server : %s"
84msgstr ""
85
86msgid "You are not allowed to print at this time."
87msgstr ""
88
89msgid "Print job cancelled."
90msgstr ""
91
92msgid "Unlimited"
93msgstr ""
94
95msgid "ON"
96msgstr ""
97
98msgid "OFF"
99msgstr ""
100
101#, python-format
102msgid "Banner generator %s exit code is %s"
103msgstr ""
104
105msgid "Banner won't be printed : maximum number of deny banners reached."
106msgstr ""
107
108#, python-format
109msgid "Beware : computed job size (%s) != precomputed job size (%s)"
110msgstr ""
111
112msgid ""
113"The job size will be trusted anyway according to the 'trustjobsize' directive"
114msgstr ""
115
116#, python-format
117msgid ""
118"The job size will be trusted because it is inferior to the 'trustjobsize' "
119"directive's limit %s"
120msgstr ""
121
122#, python-format
123msgid ""
124"The job size will be modified according to the 'trustjobsize' directive : %s"
125msgstr ""
126
127#, python-format
128msgid ""
129"Printer %s not registered in the PyKota system, applying external policy (%"
130"s) for printer %s"
131msgstr ""
132"��ͧ����s ����ŧ������к��ͧ PyKota ,ŧ�������������ҹ�¹͡ (%"
133"s) ��Ѻ��ͧ����s"
134
135#, python-format
136msgid ""
137"User %s not registered in the PyKota system, applying external policy (%s) "
138"for printer %s"
139msgstr ""
140"��� %s ����ŧ������к��ͧ PyKota, ,ŧ�������������ҹ�¹͡ (%s) "
141"��Ѻ��ͧ����s"
142
143#, python-format
144msgid ""
145"User %s doesn't have quota on printer %s in the PyKota system, applying "
146"external policy (%s) for printer %s"
147msgstr ""
148"��� %s �����������캹��ͧ����s �к��ͧ PyKota, "
149"ŧ�������������ҹ�¹͡ (%s) ��Ѻ��ͧ����s"
150
151#, python-format
152msgid ""
153"External policy %s for printer %s produced an error. Job rejected. Please "
154"check PyKota's configuration files."
155msgstr ""
156"������ҹ�¹͡ %s ��Ѻ��ͧ����s ����Դ���. ¡�����ӧҹ. "
157"���ҵ��������ԡ��ê���ͧ PyKota"
158
159#, python-format
160msgid ""
161"Printer %s not registered in the PyKota system, applying default policy (%s)"
162msgstr ""
163"��ͧ����s ����ŧ������к��ͧ PyKota, ŧ�������������ҹ����(%"
164"s)"
165
166#, python-format
167msgid ""
168"User %s not registered in the PyKota system, applying default policy (%s) "
169"for printer %s"
170msgstr ""
171"��� %s ����ŧ������к��ͧ PyKota, ŧ�������������ҹ����(%s) "
172"��Ѻ��ͧ����s"
173
174#, python-format
175msgid ""
176"User %s doesn't have quota on printer %s in the PyKota system, applying "
177"default policy (%s)"
178msgstr ""
179"��� %s �����������캹��ͧ����s �к��ͧ PyKota , ŧ����� "
180"��������ҹ����(%s)"
181
182#, python-format
183msgid ""
184"Printer %s still not registered in the PyKota system, job will be rejected"
185msgstr "��ͧ����s ������ŧ������к� PyKota, �ҹ���觨ж١¡��"
186
187#, python-format
188msgid ""
189"User %s still not registered in the PyKota system, job will be rejected on "
190"printer %s"
191msgstr "��� %s ������ŧ������к� PyKota, �ҹ���觨ж١¡�� printer %s"
192
193#, python-format
194msgid ""
195"User %s still doesn't have quota on printer %s in the PyKota system, job "
196"will be rejected"
197msgstr ""
198"��� %s ���������������캹��ͧ����s �к� PyKota ,�ҹ���觨ж١¡�� "
199
200msgid "Job is a dupe"
201msgstr ""
202
203msgid "Printing is denied by configuration"
204msgstr ""
205
206#, python-format
207msgid "Duplicate print jobs are not allowed on printer %s."
208msgstr ""
209
210msgid "Subprocess denied printing of a dupe"
211msgstr ""
212
213#, python-format
214msgid "Duplicate print jobs are not allowed on printer %s at this time."
215msgstr ""
216
217msgid "Subprocess allowed printing of a dupe"
218msgstr ""
219
220#, python-format
221msgid ""
222"\n"
223"\n"
224"Your system administrator :\n"
225"\n"
226"\t%s - <%s>\n"
227msgstr ""
228
229#, python-format
230msgid "Impossible to connect to SMTP server : %s"
231msgstr "���ö�Դ��Ѻ SMTP ������"
232
233msgid "Print Quota"
234msgstr "����������
235#, python-format
236msgid "Impossible to send mail to %s, error %s : %s"
237msgstr "���ö����� %s, ����Դ��� %s : %s"
238
239#, python-format
240msgid "Problem when sending mail : %s"
241msgstr ""
242
243msgid "Job contains no data. Printing is denied."
244msgstr "������㹧ҹ ���ʸ������
245
246msgid "Error in external policy script. Printing is denied."
247msgstr ""
248
249#, python-format
250msgid ""
251"Still no print quota entry for user %s on printer %s after external policy. "
252"Printing is denied."
253msgstr ""
254
255msgid "Printing is denied by printer policy."
256msgstr ""
257
258msgid "Job allowed by printer policy. No accounting will be done."
259msgstr ""
260
261#, python-format
262msgid "Invalid policy %s for printer %s"
263msgstr "����� %s ��Ѻ��ͧ����s ��١��"
264
265#, python-format
266msgid "Precomputed job size (%s pages) too large for printer %s."
267msgstr ""
268
269#, python-format
270msgid "You are not allowed to print so many pages on printer %s at this time."
271msgstr ""
272
273#, python-format
274msgid "User %s is not allowed to print at this time."
275msgstr ""
276
277msgid "Your account settings forbid you to print at this time."
278msgstr ""
279
280#, python-format
281msgid "Print Quota exceeded for user %s on printer %s"
282msgstr "����������� %s ����ͧ����s ����
283
284#, python-format
285msgid "Print Quota low for user %s on printer %s"
286msgstr "����������� %s ����ͧ����s �����
287
288msgid "Job denied, no accounting will be done."
289msgstr ""
290
291msgid "Job cancelled, no accounting will be done."
292msgstr ""
293
294msgid "Job accounting begins."
295msgstr "����ӧҹ�ͧ�Ҫԡ"
296
297msgid "Job denied, no accounting has been done."
298msgstr ""
299
300msgid "Job cancelled, no accounting has been done."
301msgstr ""
302
303msgid "Job accounting ends."
304msgstr "�����ӧҹ�ͧ�Ҫԡ"
305
306msgid ""
307"Job size forced to 0 because the real CUPS backend failed. No accounting "
308"will be done."
309msgstr ""
310
311msgid "The real CUPS backend failed, but the job will be accounted for anyway."
312msgstr ""
313
314msgid "Job size forced to 0 because printing is denied."
315msgstr "��Ҵ�ͧ�ҹ�١��¹�� 0 �����ʸ������
316msgid "Job size forced to 0 because printing was cancelled."
317msgstr ""
318
319#, python-format
320msgid "Job size : %i"
321msgstr "��Ҵ�ҹ : %i"
322
323#, python-format
324msgid "User %s's quota on printer %s won't be modified"
325msgstr ""
326
327#, python-format
328msgid "Updating user %s's quota on printer %s"
329msgstr "��ѧ���������ͧ��� %s ����ͧ����s"
330
331msgid "Job added to history."
332msgstr "���ҹ��������
333
334#, python-format
335msgid "Billing code %s was updated."
336msgstr ""
337
338#, python-format
339msgid "Incorrect value for the 'onbackenderror' directive in section [%s]"
340msgstr ""
341
342#, python-format
343msgid "The real backend produced an error, we will try again in %s seconds."
344msgstr ""
345
346#, python-format
347msgid "Job %s interrupted by the administrator !"
348msgstr ""
349
350#, python-format
351msgid ""
352"dumpykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
353"\n"
354"Dumps PyKota database's content.\n"
355"\n"
356"command line usage :\n"
357"\n"
358"  dumpykota [options] [filterexpr]\n"
359"\n"
360"options :\n"
361"\n"
362"  -v | --version       Prints dumpykota's version number then exits.\n"
363"  -h | --help          Prints this message then exits.\n"
364"  \n"
365"  -d | --data type     Dumps 'type' datas. Allowed types are :\n"
366"                       \n"
367"                         - history : dumps the jobs history.\n"
368"                         - users : dumps users.\n"
369"                         - groups : dumps user groups.\n"
370"                         - printers : dump printers.\n"
371"                         - upquotas : dump user quotas.\n"
372"                         - gpquotas : dump user groups quotas.\n"
373"                         - payments : dumps user payments.\n"
374"                         - pmembers : dumps printer groups members.\n"
375"                         - umembers : dumps user groups members.\n"
376"                         - billingcodes : dumps billing codes.\n"
377"                         - all : dumps all PyKota datas. The output format\n"
378"                                 is always XML in this case.\n"
379"                         \n"
380"                       NB : the -d | --data command line option   \n"
381"                       is MANDATORY.\n"
382"  \n"
383"  -f | --format fmt    Dumps datas in the 'fmt' format. When not specified,\n"
384"                       the format is to dump datas in the csv format (comma\n"
385"                       separated values). All data dumped is between double\n"
386"                       quotes. Allowed formats are :\n"
387"                       \n"
388"                         - csv : separate datas with commas\n"
389"                         - ssv : separate datas with semicolons\n"
390"                         - tsv : separate datas with tabs\n"
391"                         - xml : dump data as XML \n"
392"                         - cups : dump datas in CUPS' page_log format :\n"
393"                                  ONLY AVAILABLE WITH --data history\n"
394"                         \n"
395"  -o | --output fname  All datas will be dumped to the file instead of\n"
396"                       to the standard output. The special '-' filename\n"
397"                       is the default value and means stdout.\n"
398"                       WARNING : existing files are truncated !\n"
399"\n"
400"  -O | --orderby exp   Change the ordering or result. 'exp' is a comma\n"
401"                       separated list of ordering statements, for example\n"
402"                       '--orderby +username,-printername'. Not all "
403"expression\n"
404"                       values are meaningful, so using this command line \n"
405"                       switch is not recommanded if you don't know the \n"
406"                       exact layout of PyKota's database schema.\n"
407"                       \n"
408"  -s | --sum           Summarize the selected datas.\n"
409"                           ONLY AVAILABLE WITH --data history or payments\n"
410"\n"
411"  Use the filter expressions to extract only parts of the \n"
412"  datas. Allowed filters are of the form :\n"
413"                \n"
414"         key=value\n"
415"                         \n"
416"  Allowed keys for now are :  \n"
417"                       \n"
418"         username       User's name\n"
419"         groupname      Users group's name\n"
420"         printername    Printer's name\n"
421"         pgroupname     Printers group's name\n"
422"         hostname       Client's hostname\n"
423"         jobid          Job's Id\n"
424"         billingcode    Job's billing code\n"
425"         start          Job's date of printing\n"
426"         end            Job's date of printing\n"
427"         \n"
428"  Dates formatting with 'start' and 'end' filter keys :\n"
429"  \n"
430"    YYYY : year boundaries\n"
431"    YYYYMM : month boundaries\n"
432"    YYYYMMDD : day boundaries\n"
433"    YYYYMMDDhh : hour boundaries\n"
434"    YYYYMMDDhhmm : minute boundaries\n"
435"    YYYYMMDDhhmmss : second boundaries\n"
436"    yesterday[+-NbDays] : yesterday more or less N days (e.g. : yesterday-"
437"15)\n"
438"    today[+-NbDays] : today more or less N days (e.g. : today-15)\n"
439"    tomorrow[+-NbDays] : tomorrow more or less N days (e.g. : tomorrow-15)\n"
440"    now[+-NbDays] : now more or less N days (e.g. now-15)\n"
441"\n"
442"  'now' and 'today' are not exactly the same since today represents the "
443"first\n"
444"  or last second of the day depending on if it's used in a start= or end=\n"
445"  date expression. The utility to be able to specify dates in the future is\n"
446"  a question which remains to be answered :-)\n"
447"  \n"
448"  Contrary to other PyKota management tools, wildcard characters are not \n"
449"  expanded, so you can't use them.\n"
450"  \n"
451"  NB : not all keys are allowed for each data type, so the result may be \n"
452"  empty if you use a key not available for a particular data type.\n"
453"  \n"
454"Examples :\n"
455"\n"
456"  $ dumpykota --data history --format csv >myfile.csv\n"
457"  \n"
458"  This dumps the history in a comma separated values file, for possible\n"
459"  use in a spreadsheet.\n"
460"  \n"
461"  $ dumpykota --data users --format xml -o users.xml\n"
462"  \n"
463"  Dumps all users datas to the users.xml file.\n"
464"  \n"
465"  $ dumpykota --data history printername=HP2100 username=jerome\n"
466"  \n"
467"  Dumps the job history for user jerome on printer HP2100 only.\n"
468"  \n"
469"  $ dumpykota --data history start=200503 end=20050730234615\n"
470"  \n"
471"  Dumps all jobs printed between March 1st 2005 at midnight and\n"
472"  July 30th 2005 at 23 hours 46 minutes and 15 secondes included.\n"
473msgstr ""
474
475msgid "The -d | --data command line option is mandatory, see help."
476msgstr ""
477
478#, python-format
479msgid ""
480"edpykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
481"\n"
482"A Print Quota editor for PyKota.\n"
483"\n"
484"command line usage :\n"
485"\n"
486"  edpykota [options] user1 user2 ... userN\n"
487"  \n"
488"  edpykota [options] group1 group2 ... groupN\n"
489"\n"
490"options :\n"
491"\n"
492"  -v | --version       Prints edpykota's version number then exits.\n"
493"  -h | --help          Prints this message then exits.\n"
494"  \n"
495"  -a | --add           Adds users or groups print quota entries if\n"
496"                       they don't exist in database.\n"
497"                       \n"
498"  -d | --delete        Deletes users or groups print quota entries.\n"
499"                       Users or groups are never deleted, you have\n"
500"                       to use the pkusers command to delete them.\n"
501"                       The history will be purge from all matching\n"
502"                       jobs, unless -g | --groups is used.\n"
503"  \n"
504"  -P | --printer p     Edit quotas on printer p only. Actually p can\n"
505"                       use wildcards characters to select only\n"
506"                       some printers. The default value is *, meaning\n"
507"                       all printers. \n"
508"                       You can specify several names or wildcards, \n"
509"                       by separating them with commas.\n"
510"  \n"
511"  -g | --groups        Edit groups print quota entries instead of \n"
512"                       users print quota entries.\n"
513"                          \n"
514"  -L | --list          Lists users or groups print quota entries.\n"
515"  \n"
516"  -n | --noquota       Sets both soft and hard limits to None for users\n"
517"                       or groups print quota entries.\n"
518"  \n"
519"  -r | --reset         Resets the actual page counter for the user\n"
520"                       or group to zero on the specified printers. \n"
521"                       The life time page counter is kept unchanged.\n"
522"                       \n"
523"  -R | --hardreset     Resets the actual and life time page counters\n"
524"                       for the user or group to zero on the specified \n"
525"                       printers. This is a shortcut for '--used 0'.\n"
526"                       \n"
527"  -s | --skipexisting  In combination with the --add option above, tells\n"
528"                       edpykota to not modify existing print quota entries.\n"
529"                       \n"
530"  -S | --softlimit sl  Sets the quota soft limit to sl "
531"pages.                       \n"
532"  \n"
533"  -H | --hardlimit hl  Sets the quota hard limit to hl pages.\n"
534"  \n"
535"  -I | --increase v    Increase existing Soft and Hard limits by the value\n"
536"                       of v. You can prefix v with + or -, if no sign is\n"
537"                       used, + is assumed.\n"
538"\n"
539"  -U | --used u        Sets the page counters for the user u pages on\n"
540"                       the selected printers. Doesn't work for groups, "
541"since\n"
542"                       their page counters are the sum of all their "
543"members'\n"
544"                       page counters.\n"
545"                       Useful for migrating users from a different system\n"
546"                       where they have already used some pages. Actual\n"
547"                       and Life Time page counters may be increased or "
548"decreased\n"
549"                       if u is prefixed with + or -.\n"
550"                       WARNING : BOTH page counters are modified in all "
551"cases,\n"
552"                       so be careful.\n"
553"                       NB : if u equals '0', then the action taken is\n"
554"                       the same as if --hardreset was used.\n"
555"\n"
556"  user1 through userN and group1 through groupN can use wildcards\n"
557"  if the --add option is not set.\n"
558"  \n"
559"examples :                              \n"
560"\n"
561"  $ edpykota --add john paul george ringo\n"
562"  \n"
563"  This will create print quota entries for users john, paul, george\n"
564"  and ringo on all printers. These print quota entries will have no\n"
565"  limit set.\n"
566"  \n"
567"  $ edpykota --printer lp -S 50 -H 60 jerome\n"
568"  \n"
569"  This will set jerome's print quota on the lp printer to a soft limit\n"
570"  of 50 pages, and a hard limit of 60 pages. Both user jerome and\n"
571"  printer lp have been previously created with the pkusers and pkprinters\n"
572"  commands, respectively.\n"
573"\n"
574"  $ edpykota -g -S 500 -H 550 financial support            \n"
575"  \n"
576"  This will set print quota soft limit to 500 pages and hard limit\n"
577"  to 550 pages for groups financial and support on all printers.\n"
578"  \n"
579"  $ edpykota --reset jerome \"jo*\"\n"
580"  \n"
581"  This will reset jerome's page counter to zero on all printers, as\n"
582"  well as every user whose name begins with 'jo'.\n"
583"  Their life time page counter on each printer will be kept unchanged.\n"
584"  You can also reset the life time page counters by using the\n"
585"  --hardreset | -R command line option.\n"
586"  \n"
587"  $ edpykota --printer hpcolor --noquota jerome\n"
588"  \n"
589"  This will tell PyKota to not limit jerome when printing on the \n"
590"  hpcolor printer. All his jobs will be allowed on this printer, but \n"
591"  accounting of the pages he prints will still be kept.\n"
592"  Print Quotas for jerome on other printers are unchanged.\n"
593"  \n"
594"  $ edpykota --delete --printer \"HP*,XER*\" jerome rachel\n"
595"  \n"
596"  This will delete users jerome and rachel's print quota\n"
597"  entries on all printers which name begin with 'HP' or\n"
598"  'XER'. The jobs printed by these users on these printers\n"
599"  will be deleted from the history.\n"
600msgstr ""
601
602#, python-format
603msgid "You can't set negative limits for %s"
604msgstr ""
605
606msgid "Extracting datas"
607msgstr ""
608
609#, python-format
610msgid "Page counter : %s"
611msgstr ""
612
613#, python-format
614msgid "Lifetime page counter : %s"
615msgstr ""
616
617#, python-format
618msgid "Soft limit : %s"
619msgstr ""
620
621#, python-format
622msgid "Hard limit : %s"
623msgstr ""
624
625#, python-format
626msgid "Date limit : %s"
627msgstr ""
628
629#, python-format
630msgid "Maximum job size : %s"
631msgstr ""
632
633#, python-format
634msgid "%s pages"
635msgstr ""
636
637#, python-format
638msgid "Warning banners printed : %s"
639msgstr ""
640
641msgid "Deletion"
642msgstr ""
643
644#, python-format
645msgid "Invalid used value %s."
646msgstr ""
647
648#, python-format
649msgid "Invalid increase value %s."
650msgstr ""
651
652#, python-format
653msgid "Invalid softlimit value %s."
654msgstr "��%s �ͧ softlimit ��١��"
655
656#, python-format
657msgid "Invalid hardlimit value %s."
658msgstr "��%s �ͧ hardlimit��١�� "
659
660#, python-format
661msgid "Hard limit %i is less than soft limit %i, values will be exchanged."
662msgstr "��Hard limit %i �������soft limit %i ������"
663
664#, python-format
665msgid "Undefined hard limit set to soft limit (%s)."
666msgstr ""
667
668#, python-format
669msgid "Undefined soft limit set to hard limit (%s)."
670msgstr ""
671
672msgid "Creation"
673msgstr ""
674
675#, python-format
676msgid "No entry matches %s. Please use pkusers to create them first."
677msgstr ""
678
679msgid "Modification"
680msgstr ""
681
682msgid "incompatible options, see help."
683msgstr "���͡����, ���Ҵ٨ҡ�ǹ����"
684
685msgid "You have to pass user or group names on the command line"
686msgstr "�س���������� �����������������
687#, python-format
688msgid ""
689"repykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
690"\n"
691"Generates print quota reports.\n"
692"\n"
693"command line usage :\n"
694"\n"
695"  repykota [options] \n"
696"\n"
697"options :\n"
698"\n"
699"  -v | --version       Prints repykota's version number then exits.\n"
700"  -h | --help          Prints this message then exits.\n"
701"  \n"
702"  -u | --users         Generates a report on users quota, this is \n"
703"                       the default.\n"
704"  \n"
705"  -g | --groups        Generates a report on group quota instead of users.\n"
706"  \n"
707"  -i | --ingroups g1[,g2...]  Only lists users who are members of these\n"
708"                              groups. Reserved to PyKota Administrators.\n"
709"  \n"
710"  -P | --printer p     Report quotas on this printer only. Actually p can\n"
711"                       use wildcards characters to select only\n"
712"                       some printers. The default value is *, meaning\n"
713"                       all printers.\n"
714"                       You can specify several names or wildcards, \n"
715"                       by separating them with commas.\n"
716"  \n"
717"examples :                              \n"
718"\n"
719"  $ repykota --printer lp\n"
720"  \n"
721"  This will print the quota status for all users who use the lp printer.\n"
722"\n"
723"  $ repykota \n"
724"  \n"
725"  This will print the quota status for all users on all printers.\n"
726"  \n"
727"  $ repykota --printer \"laser*,*pson\" jerome \"jo*\"\n"
728"  \n"
729"  This will print the quota status for user jerome and all users\n"
730"  whose name begins with \"jo\" on all printers which name begins\n"
731"  with \"laser\" or ends with \"pson\".\n"
732"  \n"
733"  If launched by an user who is not a PyKota administrator, additionnal\n"
734"  arguments representing users or groups names are ignored, and only the\n"
735"  current user/group is reported.\n"
736msgstr ""
737
738msgid "Option --ingroups is reserved to PyKota Administrators."
739msgstr ""
740
741#, python-format
742msgid "There's no printer matching %s"
743msgstr "�����ͧ����s ����ҹ�"
744
745#, python-format
746msgid ""
747"warnpykota v%(__version__)s (c) %(__years__)s %(__author__)s\n"
748"\n"
749"Sends mail to users over print quota.\n"
750"\n"
751"command line usage :\n"
752"\n"
753"  warnpykota  [options]  [names]\n"
754"\n"
755"options :\n"
756"\n"
757"  -v | --version       Prints warnpykota's version number then exits.\n"
758"  -h | --help          Prints this message then exits.\n"
759"  \n"
760"  -u | --users         Warns users over their print quota, this is the \n"
761"                       default.\n"
762"  \n"
763"  -g | --groups        Warns users whose groups quota are over limit.\n"
764"  \n"
765"  -P | --printer p     Verify quotas on this printer only. Actually p can\n"
766"                       use wildcards characters to select only\n"
767"                       some printers. The default value is *, meaning\n"
768"                       all printers.\n"
769"                       You can specify several names or wildcards, \n"
770"                       by separating them with commas.\n"
771"  \n"
772"examples :                              \n"
773"\n"
774"  $ warnpykota --printer lp\n"
775"  \n"
776"  This will warn all users of the lp printer who have exceeded their\n"
777"  print quota.\n"
778"\n"
779"  $ warnpykota \n"
780"  \n"
781"  This will warn all users  who have exceeded their print quota on\n"
782"  any printer.\n"
783"\n"
784"  $ warnpykota --groups --printer \"laserjet*\" \"dev*\"\n"
785"  \n"
786"  This will warn all users of groups which names begins with \"dev\" and\n"
787"  who have exceeded their print quota on any printer which name begins \n"
788"  with \"laserjet\"\n"
789"  \n"
790"  If launched by an user who is not a PyKota administrator, additionnal\n"
791"  arguments representing users or groups names are ignored, and only the\n"
792"  current user/group is reported.\n"
793msgstr ""
794
795#, python-format
796msgid ""
797"pkbanner v%(__version__)s (c) %(__years__)s %(__author__)s\n"
798"\n"
799"Generates banners.\n"
800"\n"
801"command line usage :\n"
802"\n"
803"  pkbanner  [options]  [more info]\n"
804"\n"
805"options :\n"
806"\n"
807"  -v | --version       Prints pkbanner's version number then exits.\n"
808"  -h | --help          Prints this message then exits.\n"
809"  \n"
810"  -l | --logo img      Use the image as the banner's logo. The logo will\n"
811"                       be drawn at the center top of the page. The default\n"
812"                       logo is /usr/share/pykota/logos/pykota.jpeg\n"
813"                       \n"
814"  -p | --pagesize sz   Sets sz as the page size. Most well known\n"
815"                       page sizes are recognized, like 'A4' or 'Letter'\n"
816"                       to name a few. The default size is A4.\n"
817"  \n"
818"  -s | --savetoner s   Sets the text luminosity factor to s%%. This can be \n"
819"                       used to save toner. The default value is 0, which\n"
820"                       means that no toner saving will be done.\n"
821"  \n"
822"  -u | --url u         Uses u as an url to be written at the bottom of \n"
823"                       the banner page. The default url is :\n"
824"                       http://www.pykota.com/\n"
825"  \n"
826"examples :                              \n"
827"\n"
828"  Using pkbanner directly from the command line is not recommended,\n"
829"  excepted for testing purposes. You should use pkbanner in the\n"
830"  'startingbanner' or 'endingbanner' directives in pykota.conf\n"
831"  \n"
832"    startingbanner: /usr/bin/pkbanner --logo=\"\" --savetoner=75\n"
833"  \n"
834"      With such a setting in pykota.conf, all print jobs will be \n"
835"      prefixed with an A4 banner with no logo, and text luminosity will\n"
836"      be increased by 75%%. The PostScript output will be directly sent\n"
837"      to your printer.\n"
838"      \n"
839"  You'll find more examples in the sample configuration file included    \n"
840"  in PyKota.\n"
841msgstr ""
842
843msgid "Unknown"
844msgstr ""
845
846msgid "Username"
847msgstr ""
848
849msgid "More Info"
850msgstr ""
851
852msgid "Job"
853msgstr ""
854
855msgid "Date"
856msgstr "����"
857
858msgid "Allowed"
859msgstr ""
860
861msgid "Denied"
862msgstr ""
863
864msgid "Allowed with Warning"
865msgstr ""
866
867msgid "Problem"
868msgstr ""
869
870msgid "Cancelled"
871msgstr ""
872
873msgid "Result"
874msgstr ""
875
876msgid "Title"
877msgstr "�����"
878
879msgid "Filename"
880msgstr "�������"
881
882#, python-format
883msgid "Pages printed so far on %s"
884msgstr ""
885
886msgid "Account balance"
887msgstr ""
888
889msgid "Soft Limit"
890msgstr ""
891
892msgid "Hard Limit"
893msgstr ""
894
895msgid "Date Limit"
896msgstr ""
897
898msgid "No Limit"
899msgstr ""
900
901msgid "No Accounting"
902msgstr ""
903
904msgid "Forbidden"
905msgstr ""
906
907msgid "Printing Mode"
908msgstr ""
909
910msgid "Allowed range is (0..99)"
911msgstr ""
912
913#, python-format
914msgid "Invalid 'savetoner' option %s : %s"
915msgstr ""
916
917#, python-format
918msgid "Invalid 'pagesize' option %s, defaulting to A4."
919msgstr ""
920
921#, python-format
922msgid ""
923"pkbcodes v%(__version__)s (c) %(__years__)s %(__author__)s\n"
924"\n"
925"A billing codes Manager for PyKota.\n"
926"\n"
927"command line usage :\n"
928"\n"
929"  pkbcodes [options] code1 code2 code3 ... codeN\n"
930"\n"
931"options :\n"
932"\n"
933"  -v | --version       Prints pkbcodes version number then exits.\n"
934"  -h | --help          Prints this message then exits.\n"
935"  \n"
936"  -a | --add           Adds billing codes if they don't exist in PyKota's\n"
937"                       database. If they exist, they are modified\n"
938"                       unless -s|--skipexisting is also used.\n"
939"\n"
940"  -d | --delete        Deletes billing codes from PyKota's database.\n"
941"                       NB : the history entries with this billing code\n"
942"                       are not deleted, voluntarily.\n"
943"\n"
944"  -D | --description d Adds a textual description to billing codes.\n"
945"\n"
946"  -l | --list          List informations about the billing codes.\n"
947"\n"
948"  -r | --reset         Resets the billing codes' balance and page counters\n"
949"                       to 0.\n"
950"\n"
951"  -s | --skipexisting  In combination with the --add option above, tells\n"
952"                       pkbcodes to not modify existing billing codes.\n"
953"\n"
954"  code1 through codeN can contain wildcards if the --add option\n"
955"  is not set.\n"
956"\n"
957"examples :                              \n"
958"\n"
959"  $ pkbcodes --add -D \"My project\" myproj\n"
960"\n"
961"  Will create the myproj billing code with \"My project\"\n"
962"  as the description.\n"
963"\n"
964"  $ pkbcodes --delete \"*\"\n"
965"\n"
966"  This will completely delete all the billing codes, but without\n"
967"  removing any matching job from the history. USE WITH CARE ANYWAY !\n"
968"  \n"
969"  $ pkbcodes --list \"my*\"\n"
970"  \n"
971"  This will list all billing codes which name begins with 'my'.\n"
972msgstr ""
973
974msgid "You're not allowed to use this command."
975msgstr ""
976
977#, python-format
978msgid "There's no billingcode matching %s"
979msgstr ""
980
981msgid "pages"
982msgstr ""
983
984msgid "and"
985msgstr ""
986
987msgid "credits"
988msgstr ""
989
990#, python-format
991msgid "Billing code [%s] already exists, skipping."
992msgstr ""
993
994#, python-format
995msgid "Billing code [%s] already exists, will be modified."
996msgstr ""
997
998msgid "You have to pass billing codes on the command line"
999msgstr ""
1000
1001#, python-format
1002msgid ""
1003"pkinvoice v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1004"\n"
1005"An invoice generator for PyKota.\n"
1006"\n"
1007"command line usage :\n"
1008"\n"
1009"  pkinvoice [options] [filterexpr]\n"
1010"\n"
1011"options :\n"
1012"\n"
1013"  -v | --version       Prints pkinvoice's version number then exits.\n"
1014"  -h | --help          Prints this message then exits.\n"
1015"  \n"
1016"  -l | --logo img      Use the image as the invoice's logo. The logo will\n"
1017"                       be drawn at the center top of the page. The default\n"
1018"                       logo is /usr/share/pykota/logos/pykota.jpeg\n"
1019"                       \n"
1020"  -p | --pagesize sz   Sets sz as the page size. Most well known\n"
1021"                       page sizes are recognized, like 'A4' or 'Letter'\n"
1022"                       to name a few. The default size is A4.\n"
1023"                       \n"
1024"  -n | --number N      Sets the number of the first invoice. This number\n"
1025"                       will automatically be incremented for each invoice.\n"
1026"                       \n"
1027"  -o | --output f.pdf  Defines the name of the invoice file which will\n"
1028"                       be generated as a PDF document. If not set or\n"
1029"                       set to '-', the PDF document is sent to standard\n"
1030"                       output. \n"
1031"                       \n"
1032"  -u | --unit u        Defines the name of the unit to use on the "
1033"invoice.                       \n"
1034"                       The default unit is 'Credits', optionally translated\n"
1035"                       to your native language if it is supported by "
1036"PyKota.\n"
1037"  \n"
1038"  -V | --vat p         Sets the percent value of the applicable VAT to be\n"
1039"                       exposed. The default is 0.0, meaning no VAT\n"
1040"                       information will be included.\n"
1041"  \n"
1042"\n"
1043"  Use the filter expressions to extract only parts of the \n"
1044"  datas. Allowed filters are of the form :\n"
1045"                \n"
1046"         key=value\n"
1047"                         \n"
1048"  Allowed keys for now are :  \n"
1049"                       \n"
1050"         username       User's name\n"
1051"         printername    Printer's name\n"
1052"         hostname       Client's hostname\n"
1053"         jobid          Job's Id\n"
1054"         billingcode    Job's billing code\n"
1055"         start          Job's date of printing\n"
1056"         end            Job's date of printing\n"
1057"         \n"
1058"  Dates formatting with 'start' and 'end' filter keys :\n"
1059"  \n"
1060"    YYYY : year boundaries\n"
1061"    YYYYMM : month boundaries\n"
1062"    YYYYMMDD : day boundaries\n"
1063"    YYYYMMDDhh : hour boundaries\n"
1064"    YYYYMMDDhhmm : minute boundaries\n"
1065"    YYYYMMDDhhmmss : second boundaries\n"
1066"    yesterday[+-NbDays] : yesterday more or less N days (e.g. : yesterday-"
1067"15)\n"
1068"    today[+-NbDays] : today more or less N days (e.g. : today-15)\n"
1069"    tomorrow[+-NbDays] : tomorrow more or less N days (e.g. : tomorrow-15)\n"
1070"    now[+-NbDays] : now more or less N days (e.g. now-15)\n"
1071"\n"
1072"  'now' and 'today' are not exactly the same since today represents the "
1073"first\n"
1074"  or last second of the day depending on if it's used in a start= or end=\n"
1075"  date expression. The utility to be able to specify dates in the future is\n"
1076"  a question which remains to be answered :-)\n"
1077"  \n"
1078"  Contrary to other PyKota management tools, wildcard characters are not \n"
1079"  expanded, so you can't use them.\n"
1080"  \n"
1081"examples :\n"
1082"\n"
1083"  $ pkinvoice --unit EURO --output /tmp/invoices.pdf start=now-30\n"
1084"  \n"
1085"  Will generate a PDF document containing invoices for all users\n"
1086"  who have spent some credits last month. Invoices will be done in\n"
1087"  EURO.  No VAT information will be included.\n"
1088msgstr ""
1089
1090msgid "Invoice"
1091msgstr ""
1092
1093msgid "Edited on"
1094msgstr ""
1095
1096msgid "Number of jobs printed"
1097msgstr ""
1098
1099msgid "Number of pages printed"
1100msgstr ""
1101
1102msgid "Amount due"
1103msgstr ""
1104
1105msgid "Included VAT"
1106msgstr ""
1107
1108msgid "Here's the invoice for your printouts"
1109msgstr ""
1110
1111msgid "Generating invoices"
1112msgstr ""
1113
1114#, python-format
1115msgid "Incorrect value '%s' for the --vat command line option"
1116msgstr ""
1117
1118#, python-format
1119msgid "Incorrect value '%s' for the --number command line option"
1120msgstr ""
1121
1122#, python-format
1123msgid "Invalid filter value [%s], see help."
1124msgstr ""
1125
1126#, python-format
1127msgid "Invoiced %i users for %i jobs, %i pages and %.3f credits"
1128msgstr ""
1129
1130msgid "Credits"
1131msgstr ""
1132
1133#, python-format
1134msgid ""
1135"pkmail v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1136"\n"
1137"Email gateway for PyKota.\n"
1138"\n"
1139"command line usage :\n"
1140"\n"
1141"  pkmail  [options]\n"
1142"\n"
1143"options :\n"
1144"\n"
1145"  -v | --version       Prints pkmail's version number then exits.\n"
1146"  -h | --help          Prints this message then exits.\n"
1147"  \n"
1148"    \n"
1149"  This command is meant to be used from your mail server's aliases file,\n"
1150"  as a pipe. It will then accept commands send to it in email messages,\n"
1151"  and will send the answer to the command's originator.\n"
1152"  \n"
1153"  To use this command, create an email alias in /etc/aliases with\n"
1154"  the following format :\n"
1155"  \n"
1156"    pykotacmd: \"|/usr/bin/pkmail\"\n"
1157"    \n"
1158"  Then run the 'newaliases' command to regenerate the aliases database.\n"
1159"  \n"
1160"  You can now send commands by email to 'pykotacmd@yourdomain.com', with\n"
1161"  the command in the subject.\n"
1162"  \n"
1163"  List of supported commands :\n"
1164"  \n"
1165"        report [username]\n"
1166"  \n"
1167"  NB : For pkmail to work correctly, you may have to put the 'mail'\n"
1168"  system user in the 'pykota' system group to ensure this user can\n"
1169"  read the /etc/pykota/pykotadmin.conf file, and restart your\n"
1170"  mail server (e.g. /etc/init.d/exim restart). It is strongly advised\n"
1171"  that you think at least twice before doing this though.\n"
1172"  \n"
1173"  Use at your own risk !\n"
1174msgstr ""
1175
1176msgid "Result of your commands"
1177msgstr ""
1178
1179#, python-format
1180msgid ""
1181"pknotify v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1182"\n"
1183"Notifies or ask questions to end users who launched the PyKotIcon "
1184"application.\n"
1185"\n"
1186"command line usage :\n"
1187"\n"
1188"  pknotify  [options]  [arguments]\n"
1189"\n"
1190"options :\n"
1191"\n"
1192"  -v | --version             Prints pknotify's version number then exits.\n"
1193"  -h | --help                Prints this message then exits.\n"
1194"  \n"
1195"  -d | --destination h[:p]   Sets the destination hostname and optional\n"
1196"                             port onto which contact the remote PyKotIcon\n"
1197"                             application. This option is mandatory.\n"
1198"                             When not specified, the port defaults to 7654.\n"
1199"                             \n"
1200"  -a | --ask                 Tells pknotify to ask something to the end\n"
1201"                             user. Then pknotify will output the result.\n"
1202"                       \n"
1203"  -C | --checkauth           When --ask is used and both an 'username' and "
1204"a\n"
1205"                             'password' are asked to the end user, then\n"
1206"                             pknotify will try to authenticate the user\n"
1207"                             through PAM. If authentified, this program\n"
1208"                             will print \"AUTH=YES\", else \"AUTH=NO\".\n"
1209"                             If a field is missing, \"AUTH=IMPOSSIBLE\" "
1210"will\n"
1211"                             be printed. If the user is authenticated, then\n"
1212"                             \"USERNAME=xxxx\" will be printed as well.\n"
1213"                             \n"
1214"  -c | --confirm             Tells pknotify to ask for either a "
1215"confirmation                       \n"
1216"                             or abortion.\n"
1217"                             \n"
1218"  -D | --denyafter N         With --checkauth above, makes pknotify "
1219"loop                           \n"
1220"                             up to N times if the password is incorrect.\n"
1221"                             After having reached the limit, \"DENY\" will\n"
1222"                             be printed, which effectively rejects the job.\n"
1223"                             The default value of N is 1, meaning the job\n"
1224"                             is denied after the first unsuccessful try.\n"
1225"                             \n"
1226"  -N | --noremote action     If it's impossible to connect to the remote\n"
1227"                             PyKotIcon machine, do this action instead.\n"
1228"                             Allowed actions are 'CONTINUE' and 'CANCEL', \n"
1229"                             which will respectively allow the processing\n"
1230"                             of the print job to continue, or the job to\n"
1231"                             be cancelled. The default value is CANCEL.\n"
1232"                             \n"
1233"  -n | --notify              Tells pknotify to send an informational "
1234"message\n"
1235"                             to the end user.\n"
1236"                             \n"
1237"  -q | --quit                Tells pknotify to send a message asking the\n"
1238"                             PyKotIcon application to exit. This option can\n"
1239"                             be combined with the other ones to make "
1240"PyKotIcon\n"
1241"                             exit after having sent the answer from the "
1242"dialog.\n"
1243"                             \n"
1244"  -t | --timeout T           Tells pknotify to ignore the end user's answer "
1245"if\n"
1246"                             it comes past T seconds after the dialog box "
1247"being\n"
1248"                             opened. The default value is 0 seconds, which \n"
1249"                             tells pknotify to wait indefinitely.\n"
1250"                             Use this option to avoid having an user who\n"
1251"                             leaved his computer stall a whole print queue.\n"
1252"                             \n"
1253"  You MUST specify either --ask, --confirm, --notify or --quit.\n"
1254"\n"
1255"  arguments :             \n"
1256"  \n"
1257"    -a | --ask : Several arguments are accepted, of the form\n"
1258"                 \"label:varname:defaultvalue\". The result will\n"
1259"                 be printed to stdout in the following format :\n"
1260"                 VAR1NAME=VAR1VALUE\n"
1261"                 VAR2NAME=VAR2VALUE\n"
1262"                 ...\n"
1263"                 If the dialog was cancelled, nothing will be\n"
1264"                 printed. If one of the varname is 'password'\n"
1265"                 then this field is asked as a password (you won't\n"
1266"                 see what you type in), and is NOT printed. Although\n"
1267"                 it is not printed, it will be used to check if\n"
1268"                 authentication is valid if you specify --checkauth.\n"
1269"                 \n"
1270"    -c | --confirm : A single argument is expected, representing the\n"
1271"                     message to display. If the dialog is confirmed\n"
1272"                     then pknotify will print OK, else CANCEL.\n"
1273"                     \n"
1274"    -n | --notify : A single argument is expected, representing "
1275"the                 \n"
1276"                    message to display. In this case pknotify will\n"
1277"                    always print OK.\n"
1278"                    \n"
1279"examples :                    \n"
1280"\n"
1281"  pknotify -d client:7654 --noremote CONTINUE --confirm \"This job costs 10 "
1282"credits\"\n"
1283"  \n"
1284"  Would display the cost of the print job and asks for confirmation.\n"
1285"  If the end user doesn't have PyKotIcon running and accepting connections\n"
1286"  from the print server, PyKota will consider that the end user accepted\n"
1287"  to print this job.\n"
1288"  \n"
1289"  pknotify --destination $PYKOTAJOBORIGINATINGHOSTNAME:7654 \\\n"
1290"           --checkauth --ask \"Your name:username:\" \"Your password:"
1291"password:\"\n"
1292"           \n"
1293"  Asks an username and password, and checks if they are valid.         \n"
1294"  NB : The PYKOTAJOBORIGINATINGHOSTNAME environment variable is\n"
1295"  only set if you launch pknotify from cupspykota through a directive\n"
1296"  in ~pykota/pykota.conf\n"
1297"  \n"
1298"  The TCP port you'll use must be reachable on the client from the\n"
1299"  print server.\n"
1300msgstr ""
1301
1302msgid "You MUST install PyPAM for this functionnality to work !"
1303msgstr ""
1304
1305#, python-format
1306msgid "Authentication error for user %s : %s"
1307msgstr ""
1308
1309#, python-format
1310msgid "Internal error : can't authenticate user %s"
1311msgstr ""
1312
1313#, python-format
1314msgid "Password correct for user %s"
1315msgstr ""
1316
1317#, python-format
1318msgid ""
1319"The end user at %s:%i didn't answer within %i seconds. The print job will be "
1320"cancelled."
1321msgstr ""
1322
1323#, python-format
1324msgid ""
1325"Are you sure that PyKotIcon is running and accepting incoming connections on "
1326"%s:%s ?"
1327msgstr ""
1328
1329msgid "Connection error"
1330msgstr ""
1331
1332msgid "some options are mandatory, see help."
1333msgstr ""
1334
1335msgid "incorrect value for the --noremote command line switch, see help."
1336msgstr ""
1337
1338msgid "some options require arguments, see help."
1339msgstr ""
1340
1341#, python-format
1342msgid ""
1343"pkprinters v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1344"\n"
1345"A Printers Manager for PyKota.\n"
1346"\n"
1347"command line usage :\n"
1348"\n"
1349"  pkprinters [options] printer1 printer2 printer3 ... printerN\n"
1350"\n"
1351"options :\n"
1352"\n"
1353"  -v | --version       Prints pkprinters's version number then exits.\n"
1354"  -h | --help          Prints this message then exits.\n"
1355"  \n"
1356"  -a | --add           Adds printers if they don't exist on the Quota \n"
1357"                       Storage Server. If they exist, they are modified\n"
1358"                       unless -s|--skipexisting is also used.\n"
1359"                       \n"
1360"  -d | --delete        Deletes printers from the quota storage.\n"
1361"  \n"
1362"  -D | --description d Adds a textual description to printers.\n"
1363"\n"
1364"  -C | --cups          Also modifies the DeviceURI in CUPS' printers.conf\n"
1365"\n"
1366"  -c | --charge p[,j]  Sets the price per page and per job to charge.\n"
1367"                       Job price is optional.\n"
1368"                       If both are to be set, separate them with a comma.\n"
1369"                       Floating point and negative values are allowed.\n"
1370"  \n"
1371"  -g | --groups pg1[,pg2...] Adds or Remove the printer(s) to the printer \n"
1372"                       groups pg1, pg2, etc... which must already exist.\n"
1373"                       A printer group is just like a normal printer,\n"
1374"                       only that it is usually unknown from the printing\n"
1375"                       system. Create printer groups exactly the same\n"
1376"                       way that you create printers, then add other \n"
1377"                       printers to them with this option.\n"
1378"                       Accounting is done on a printer and on all\n"
1379"                       the printer groups it belongs to, quota checking\n"
1380"                       is done on a printer and on all the printer groups\n"
1381"                       it belongs to.\n"
1382"                       If the --remove option below is not used, the \n"
1383"                       default action is to add printers to the specified\n"
1384"                       printer groups.\n"
1385"                       \n"
1386"  -l | --list          List informations about the printer(s) and the\n"
1387"                       printers groups it is a member of.\n"
1388"                       \n"
1389"  -r | --remove        In combination with the --groups option "
1390"above,                       \n"
1391"                       remove printers from the specified printers groups.\n"
1392"                       \n"
1393"  -s | --skipexisting  In combination with the --add option above, tells\n"
1394"                       pkprinters to not modify existing printers.\n"
1395"                       \n"
1396"  -m | --maxjobsize s  Sets the maximum job size allowed on the printer\n"
1397"                       to s pages.\n"
1398"                       \n"
1399"  -p | --passthrough   Activate passthrough mode for the printer. In this\n"
1400"                       mode, users are allowed to print without any impact\n"
1401"                       on their quota or account balance.\n"
1402"                       \n"
1403"  -n | --nopassthrough Deactivate passthrough mode for the printer.\n"
1404"                       Without -p or -n, printers are created in \n"
1405"                       normal mode, i.e. no passthrough.\n"
1406"  \n"
1407"  printer1 through printerN can contain wildcards if the --add option \n"
1408"  is not set.\n"
1409"  \n"
1410"examples :                              \n"
1411"\n"
1412"  $ pkprinters --add -D \"HP Printer\" --charge 0.05,0.1 hp2100 hp2200 "
1413"hp8000\n"
1414"  \n"
1415"  Will create three printers named hp2100, hp2200 and hp8000.\n"
1416"  Their price per page will be set at 0.05 unit, and their price\n"
1417"  per job will be set at 0.1 unit. Units are in your own currency,\n"
1418"  or whatever you want them to mean.\n"
1419"  All of their descriptions will be set to the string \"HP Printer\".\n"
1420"  If any of these printers already exists, it will also be modified \n"
1421"  unless the -s|--skipexisting command line option is also used.\n"
1422"            \n"
1423"  $ pkprinters --delete \"*\"\n"
1424"  \n"
1425"  This will completely delete all printers and associated quota "
1426"information,\n"
1427"  as well as their job history. USE WITH CARE !\n"
1428"  \n"
1429"  $ pkprinters --groups Laser,HP \"hp*\"\n"
1430"  \n"
1431"  This will put all printers which name matches \"hp*\" into printers "
1432"groups \n"
1433"  Laser and HP, which MUST already exist.\n"
1434"  \n"
1435"  $ pkprinters --groups LexMark --remove hp2200\n"
1436"  \n"
1437"  This will remove the hp2200 printer from the LexMark printer group.\n"
1438msgstr ""
1439
1440#, python-format
1441msgid "Passthrough mode : %s"
1442msgstr ""
1443
1444#, python-format
1445msgid "Routed through PyKota : %s"
1446msgstr ""
1447
1448msgid "YES"
1449msgstr ""
1450
1451msgid "NO"
1452msgstr ""
1453
1454msgid "in"
1455msgstr "�
1456
1457msgid "Rerouting printers to CUPS"
1458msgstr ""
1459
1460#, python-format
1461msgid "Invalid charge amount value %s"
1462msgstr "����������١�� %s"
1463
1464#, python-format
1465msgid "Invalid maximum job size value %s"
1466msgstr ""
1467
1468#, python-format
1469msgid "Printer %s already exists, skipping."
1470msgstr "��ͧ����s ��١�Դ����� ���
1471
1472#, python-format
1473msgid "Printer %s already exists, will be modified."
1474msgstr "��ͧ����s ��١�Դ����� �ӡ������"
1475
1476#, python-format
1477msgid "Invalid printer name %s"
1478msgstr "����������s ��١��"
1479
1480msgid "You have to pass printer groups names on the command line"
1481msgstr "�س�����͡��������캹��������
1482msgid "You have to pass printer names on the command line"
1483msgstr "�س������������캹��������
1484#, python-format
1485msgid ""
1486"pkrefund v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1487"\n"
1488"Refunds jobs.\n"
1489"\n"
1490"command line usage :\n"
1491"\n"
1492"  pkrefund [options] [filterexpr]\n"
1493"\n"
1494"options :\n"
1495"\n"
1496"  -v | --version       Prints pkrefund's version number then exits.\n"
1497"  -h | --help          Prints this message then exits.\n"
1498"  \n"
1499"  -f | --force         Doesn't ask for confirmation before refunding jobs.\n"
1500"  -r | --reason txt    Sets textual information to explain the refunding.\n"
1501"\n"
1502"  -l | --logo img      Use the image as the receipt's logo. The logo will\n"
1503"                       be drawn at the center top of the page. The default\n"
1504"                       logo is /usr/share/pykota/logos/pykota.jpeg\n"
1505"\n"
1506"  -p | --pagesize sz   Sets sz as the page size. Most well known\n"
1507"                       page sizes are recognized, like 'A4' or 'Letter'\n"
1508"                       to name a few. The default size is A4.\n"
1509"\n"
1510"  -n | --number N      Sets the number of the first receipt. This number\n"
1511"                       will automatically be incremented for each receipt.\n"
1512"\n"
1513"  -o | --output f.pdf  Defines the name of the PDF file which will contain\n"
1514"                       the receipts. If not set, then no PDF file will\n"
1515"                       be created. If set to '-', then --force is assumed,\n"
1516"                       and the PDF document is sent to standard output.\n"
1517"\n"
1518"  -u | --unit u        Defines the name of the unit to use on the receipts.\n"
1519"                       The default unit is 'Credits', optionally translated\n"
1520"                       to your native language if it is supported by "
1521"PyKota.\n"
1522"  \n"
1523"\n"
1524"  Use the filter expressions to extract only parts of the \n"
1525"  datas. Allowed filters are of the form :\n"
1526"                \n"
1527"         key=value\n"
1528"                         \n"
1529"  Allowed keys for now are :  \n"
1530"                       \n"
1531"         username       User's name\n"
1532"         printername    Printer's name\n"
1533"         hostname       Client's hostname\n"
1534"         jobid          Job's Id\n"
1535"         billingcode    Job's billing code\n"
1536"         start          Job's date of printing\n"
1537"         end            Job's date of printing\n"
1538"         \n"
1539"  Dates formatting with 'start' and 'end' filter keys :\n"
1540"  \n"
1541"    YYYY : year boundaries\n"
1542"    YYYYMM : month boundaries\n"
1543"    YYYYMMDD : day boundaries\n"
1544"    YYYYMMDDhh : hour boundaries\n"
1545"    YYYYMMDDhhmm : minute boundaries\n"
1546"    YYYYMMDDhhmmss : second boundaries\n"
1547"    yesterday[+-NbDays] : yesterday more or less N days (e.g. : yesterday-"
1548"15)\n"
1549"    today[+-NbDays] : today more or less N days (e.g. : today-15)\n"
1550"    tomorrow[+-NbDays] : tomorrow more or less N days (e.g. : tomorrow-15)\n"
1551"    now[+-NbDays] : now more or less N days (e.g. now-15)\n"
1552"\n"
1553"  'now' and 'today' are not exactly the same since today represents the "
1554"first\n"
1555"  or last second of the day depending on if it's used in a start= or end=\n"
1556"  date expression. The utility to be able to specify dates in the future is\n"
1557"  a question which remains to be answered :-)\n"
1558"  \n"
1559"  Contrary to other PyKota management tools, wildcard characters are not \n"
1560"  expanded, so you can't use them.\n"
1561"  \n"
1562"Examples :\n"
1563"\n"
1564"  $ pkrefund --output /tmp/receipts.pdf jobid=503\n"
1565"  \n"
1566"  This will refund all jobs which Id is 503. BEWARE : installing CUPS\n"
1567"  afresh will reset the first job id at 1, so you probably want to use\n"
1568"  a more precise filter as explained below. A confirmation will\n"
1569"  be asked for each job to refund, and a PDF file named /tmp/receipts.pdf\n"
1570"  will be created which will contain printable receipts.\n"
1571"  \n"
1572"  $ pkrefund --reason \"Hardware problem\" jobid=503 start=today-7\n"
1573"  \n"
1574"  Refunds all jobs which id is 503 but which were printed during the\n"
1575"  past week. The reason will be marked as being an hardware problem.\n"
1576"  \n"
1577"  $ pkrefund --force username=jerome printername=HP2100\n"
1578"  \n"
1579"  Refunds all jobs printed by user jerome on printer HP2100. No\n"
1580"  confirmation will be asked.\n"
1581"  \n"
1582"  $ pkrefund --force printername=HP2100 start=200602 end=yesterday\n"
1583"  \n"
1584"  Refunds all jobs printed on printer HP2100 between February 1st 2006\n"
1585"  and yesterday. No confirmation will be asked.\n"
1586msgstr ""
1587
1588msgid "Refunding receipt"
1589msgstr ""
1590
1591msgid "Jobs refunded"
1592msgstr ""
1593
1594msgid "Pages refunded"
1595msgstr ""
1596
1597msgid "Amount refunded"
1598msgstr ""
1599
1600msgid "Reason"
1601msgstr ""
1602
1603msgid "Here's the receipt for the refunding of your print jobs"
1604msgstr ""
1605
1606msgid "Generating receipts"
1607msgstr ""
1608
1609msgid ""
1610"Refunding for no reason is forbidden. Please use the --reason command line "
1611"option."
1612msgstr ""
1613
1614msgid ""
1615"The PDF file containing the receipts will be sent to stdout. --force is "
1616"assumed."
1617msgstr ""
1618
1619#, python-format
1620msgid "Date : %s"
1621msgstr ""
1622
1623#, python-format
1624msgid "JobId : %s"
1625msgstr ""
1626
1627#, python-format
1628msgid "User : %s"
1629msgstr ""
1630
1631#, python-format
1632msgid "Printer : %s"
1633msgstr ""
1634
1635#, python-format
1636msgid "Billing code : %s"
1637msgstr ""
1638
1639#, python-format
1640msgid "Pages : %i"
1641msgstr ""
1642
1643#, python-format
1644msgid "Credits : %.3f"
1645msgstr ""
1646
1647#, python-format
1648msgid "Title : %s"
1649msgstr ""
1650
1651msgid "Refund (Y/N)"
1652msgstr ""
1653
1654msgid "Y"
1655msgstr ""
1656
1657msgid "N"
1658msgstr ""
1659
1660#, python-format
1661msgid "Refunded %i users for %i jobs, %i pages and %.3f credits"
1662msgstr ""
1663
1664#, python-format
1665msgid ""
1666"pkturnkey v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1667"\n"
1668"A turn key tool for PyKota. When launched, this command will initialize\n"
1669"PyKota's database with all existing print queues and some or all users.\n"
1670"For now, no prices or limits are set, so printing is fully accounted\n"
1671"for, but not limited. That's why you'll probably want to also use\n"
1672"edpykota once the database has been initialized.\n"
1673"\n"
1674"command line usage :\n"
1675"\n"
1676"  pkturnkey [options] [printqueues names]\n"
1677"\n"
1678"options :\n"
1679"\n"
1680"  -v | --version       Prints pkturnkey version number then exits.\n"
1681"  -h | --help          Prints this message then exits.\n"
1682"  \n"
1683"  -c | --doconf        Give hints about what to put into pykota.conf\n"
1684"  \n"
1685"  -d | --dousers       Manages users accounts as well.\n"
1686"  \n"
1687"  -D | --dogroups      Manages users groups as well.\n"
1688"                       Implies -d | --dousers.\n"
1689"  \n"
1690"  -e | --emptygroups   Includes empty groups.\n"
1691"  \n"
1692"  -f | --force         Modifies the database instead of printing what\n"
1693"                       it would do.\n"
1694"                       \n"
1695"  -u | --uidmin uid    Only adds users whose uid is greater than or equal "
1696"to\n"
1697"                       uid. You can pass an username there as well, and its\n"
1698"                       uid will be used automatically.\n"
1699"                       If not set, 0 will be used automatically.\n"
1700"                       Implies -d | --dousers.\n"
1701"                       \n"
1702"  -U | --uidmax uid    Only adds users whose uid is lesser than or equal to\n"
1703"                       uid. You can pass an username there as well, and its\n"
1704"                       uid will be used automatically.\n"
1705"                       If not set, a large value will be used "
1706"automatically.\n"
1707"                       Implies -d | --dousers.\n"
1708"\n"
1709"  -g | --gidmin gid    Only adds groups whose gid is greater than or equal "
1710"to\n"
1711"                       gid. You can pass a groupname there as well, and its\n"
1712"                       gid will be used automatically.\n"
1713"                       If not set, 0 will be used automatically.\n"
1714"                       Implies -D | --dogroups.\n"
1715"                       \n"
1716"  -G | --gidmax gid    Only adds groups whose gid is lesser than or equal "
1717"to\n"
1718"                       gid. You can pass a groupname there as well, and its\n"
1719"                       gid will be used automatically.\n"
1720"                       If not set, a large value will be used "
1721"automatically.\n"
1722"                       Implies -D | --dogroups.\n"
1723"\n"
1724"examples :                              \n"
1725"\n"
1726"  $ pkturnkey --dousers --uidmin jerome\n"
1727"\n"
1728"  Will simulate the initialization of PyKota's database will all existing\n"
1729"  printers and print accounts for all users whose uid is greater than\n"
1730"  or equal to jerome's one. Won't manage any users group.\n"
1731"  \n"
1732"  To REALLY initialize the database instead of simulating it, please\n"
1733"  use the -f | --force command line switch.\n"
1734"  \n"
1735"  You can limit the initialization to only a subset of the existing\n"
1736"  printers, by passing their names at the end of the command line.\n"
1737msgstr ""
1738
1739#, python-format
1740msgid ""
1741"Printer %s is not managed by PyKota yet. Please modify printers.conf and "
1742"restart CUPS."
1743msgstr ""
1744
1745msgid "Please be patient..."
1746msgstr ""
1747
1748msgid "Don't worry, the database WILL NOT BE MODIFIED."
1749msgstr ""
1750
1751msgid "Please WORRY NOW, the database WILL BE MODIFIED."
1752msgstr ""
1753
1754msgid "System users will have a print account as well !"
1755msgstr ""
1756
1757#, python-format
1758msgid "Unknown username %s : %s"
1759msgstr ""
1760
1761msgid "System groups will have a print account as well !"
1762msgstr ""
1763
1764#, python-format
1765msgid "Unknown groupname %s : %s"
1766msgstr ""
1767
1768msgid "Simulation terminated."
1769msgstr ""
1770
1771msgid "Database initialized !"
1772msgstr ""
1773
1774msgid "The --uidmin or --uidmax command line option implies --dousers as well."
1775msgstr ""
1776
1777msgid ""
1778"The --gidmin or --gidmax command line option implies --dogroups as well."
1779msgstr ""
1780
1781msgid "The --dogroups command line option implies --dousers as well."
1782msgstr ""
1783
1784#, python-format
1785msgid ""
1786"pkusers v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1787"\n"
1788"An Users and Groups Manager for PyKota.\n"
1789"\n"
1790"command line usage :\n"
1791"\n"
1792"  pkusers [options] user1 user2 user3 ... userN\n"
1793"  \n"
1794"or :  \n"
1795"\n"
1796"  pkusers --groups [options] group1 group2 group3 ... groupN\n"
1797"\n"
1798"options :\n"
1799"\n"
1800"  -v | --version       Prints pkusers's version number then exits.\n"
1801"  -h | --help          Prints this message then exits.\n"
1802"  \n"
1803"  -a | --add           Adds users if they don't exist on the database.\n"
1804"                       If they exist, they are modified unless\n"
1805"                       -s|--skipexisting is also used.\n"
1806"                       \n"
1807"  -d | --delete        Deletes users from the quota storage.\n"
1808"\n"
1809"  -e | --email addr    Sets the email address for the users.\n"
1810"                       If the addr parameter begins with @, then\n"
1811"                       the username is prepended to addr to form\n"
1812"                       a valid email address.\n"
1813"\n"
1814"  -D | --description d Adds a textual description to users or groups.\n"
1815"                       \n"
1816"  -g | --groups        Edit users groups instead of users.\n"
1817"                          \n"
1818"  -o | --overcharge f  Sets the overcharging factor applied to the user \n"
1819"                       when computing the cost of a print job. Positive or \n"
1820"                       negative floating point values are allowed,\n"
1821"                       this allows you to do some really creative\n"
1822"                       things like giving money to an user whenever\n"
1823"                       he prints. The number of pages in a print job\n"
1824"                       is not modified by this coefficient, only the\n"
1825"                       cost of the job for a particular user.\n"
1826"                       Only users have such a coefficient.\n"
1827"  \n"
1828"  -i | --ingroups g1[,g2...]  Puts the users into each of the groups\n"
1829"                              listed, separated by commas. The groups\n"
1830"                              must already exist in the Quota Storage.\n"
1831"                       \n"
1832"  -L | --list          Lists users or groups.\n"
1833"  \n"
1834"  -l | --limitby l     Choose if the user/group is limited in "
1835"printing                     \n"
1836"                       by its account balance or by its page quota.\n"
1837"                       The default value is 'quota'. Allowed values\n"
1838"                       are 'quota' 'balance' 'noquota' 'noprint' \n"
1839"                       and 'nochange' :\n"
1840"                       \n"
1841"                         - quota : limit by number of pages per printer.\n"
1842"                         - balance : limit by number of credits in account.\n"
1843"                         - noquota : no limit, accounting still done.\n"
1844"                         - nochange : no limit, accounting not done. \n"
1845"                         - noprint : printing is denied. \n"
1846"                       NB : nochange and noprint are not supported for "
1847"groups.\n"
1848"                       \n"
1849"  -b | --balance b     Sets the user's account balance to "
1850"b.                     \n"
1851"                       Account balance may be increase or decreased\n"
1852"                       if b is prefixed with + or -.\n"
1853"                       WARNING : when decreasing account balance,\n"
1854"                       the total paid so far by the user is decreased\n"
1855"                       too.\n"
1856"                       Groups don't have a real balance, but the\n"
1857"                       sum of their users' account balance.\n"
1858"                       \n"
1859"  -C | --comment txt   Defines some informational text to be associated\n"
1860"                       with a change to an user's account balance.\n"
1861"                       Only meaningful if -b | --balance is also used.\n"
1862"                       \n"
1863"                       \n"
1864"  -r | --remove        In combination with the --ingroups option "
1865"above,                       \n"
1866"                       remove users from the specified users groups.\n"
1867"                       \n"
1868"  -s | --skipexisting  In combination with the --add option above, tells\n"
1869"                       pkusers to not modify existing users.\n"
1870"                       \n"
1871"  user1 through userN and group1 through groupN can use wildcards\n"
1872"  if the --add option is not set.\n"
1873"  \n"
1874"examples :                              \n"
1875"\n"
1876"  $ pkusers --add john paul george ringo/ringo@example.com\n"
1877"  \n"
1878"  This will add users john, paul, george and ringo to the quota\n"
1879"  database. User ringo's email address will also be set to \n"
1880"  'ringo@example.com'\n"
1881"  \n"
1882"  $ pkusers --ingroups coders,it jerome\n"
1883"  \n"
1884"  User jerome is put into the groups \"coders\" and \"it\" which must\n"
1885"  already exist in the quota database.\n"
1886"            \n"
1887"  $ pkusers --limitby balance jerome\n"
1888"  \n"
1889"  This will tell PyKota to limit jerome by his account's balance\n"
1890"  when printing.\n"
1891"  \n"
1892"  $ pkusers --balance +10.0 --comment \"He paid with his blood !\" jerome\n"
1893"  \n"
1894"  This will increase jerome's account balance by 10.0 (in your\n"
1895"  own currency). You can decrease the account balance with a\n"
1896"  dash prefix, and set it to a fixed amount with no prefix.\n"
1897"  A comment will be stored for this balance change.\n"
1898"  \n"
1899"  $ pkusers --delete jerome rachel\n"
1900"  \n"
1901"  This will completely delete jerome and rachel from the quota\n"
1902"  database. All their quotas and jobs will be deleted too.\n"
1903"  \n"
1904"  $ pkusers --overcharge 2.5 poorstudent\n"
1905"  \n"
1906"  This will overcharge the poorstudent user by a factor of 2.5.\n"
1907"  \n"
1908"  $ pkusers --overcharge -1 jerome\n"
1909"  \n"
1910"  User jerome will actually earn money whenever he prints.\n"
1911"  \n"
1912"  $ pkusers --overcharge 0 boss\n"
1913"  \n"
1914"  User boss can print at will, it won't cost him anything because the\n"
1915"  cost of each print job will be multiplied by zero before charging\n"
1916"  his account.\n"
1917"\n"
1918"  $ pkusers --email @example.com\n"
1919"\n"
1920"  This will set the email address for each user to username@example.com\n"
1921msgstr ""
1922
1923#, python-format
1924msgid "Invalid email address %s"
1925msgstr "email address %s ��١��"
1926
1927#, python-format
1928msgid "There's no %s matching %s"
1929msgstr ""
1930
1931#, python-format
1932msgid "Limited by : %s"
1933msgstr ""
1934
1935#, python-format
1936msgid "Account balance : %.2f"
1937msgstr ""
1938
1939#, python-format
1940msgid "Total paid so far : %.2f"
1941msgstr ""
1942
1943#, python-format
1944msgid "Overcharging factor : %.2f"
1945msgstr ""
1946
1947#, python-format
1948msgid "Group balance : %.2f"
1949msgstr ""
1950
1951#, python-format
1952msgid "Invalid limitby value %s"
1953msgstr "����ӡѴ %s ��١��"
1954
1955#, python-format
1956msgid "Invalid overcharge value %s"
1957msgstr ""
1958
1959#, python-format
1960msgid "Invalid balance value %s"
1961msgstr "����������١�� %s"
1962
1963#, python-format
1964msgid "There's no users group matching %s"
1965msgstr ""
1966
1967#, python-format
1968msgid "Unknown group %s"
1969msgstr ""
1970
1971#, python-format
1972msgid "Unknown user %s"
1973msgstr ""
1974
1975#, python-format
1976msgid "%s %s already exists, skipping."
1977msgstr ""
1978
1979#, python-format
1980msgid "%s %s already exists, will be modified."
1981msgstr ""
1982
1983#, python-format
1984msgid "Invalid name %s"
1985msgstr ""
1986
1987msgid "You have to pass user groups names on the command line"
1988msgstr ""
1989
1990#, python-format
1991msgid ""
1992"pykosd v%(__version__)s (c) %(__years__)s %(__author__)s\n"
1993"\n"
1994"An OSD quota monitor for PyKota.\n"
1995"\n"
1996"command line usage :\n"
1997"\n"
1998"  pykosd [options]\n"
1999"\n"
2000"options :\n"
2001"\n"
2002"  -v | --version       Prints pykosd's version number then exits.\n"
2003"  -h | --help          Prints this message then exits.\n"
2004"  \n"
2005"  -c | --color #rrggbb Sets the color to use for display as an hexadecimal\n"
2006"                       triplet, for example #FF0000 is 100%% red.\n"
2007"                       Defaults to 100%% green (#00FF00).\n"
2008"                       \n"
2009"  -d | --duration d    Sets the duration of the display in seconds. \n"
2010"                       Defaults to 3 seconds.\n"
2011"                       \n"
2012"  -f | --font f        Sets the font to use for "
2013"display.                      \n"
2014"                       Defaults to the Python OSD library's default.\n"
2015"  \n"
2016"  -l | --loop n        Sets the number of times the info will be displayed.\n"
2017"                       Defaults to 0, which means loop forever.\n"
2018"                       \n"
2019"  -s | --sleep s       Sets the sleeping duration between two displays \n"
2020"                       in seconds. Defaults to 180 seconds (3 minutes).\n"
2021"                       \n"
2022"  \n"
2023"examples :                              \n"
2024"\n"
2025"  $ pykosd -s 60 --loop 5\n"
2026"  \n"
2027"  Will launch pykosd. Display will be refreshed every 60 seconds,\n"
2028"  and will last for 3 seconds (the default) each time. After five\n"
2029"  iterations, the program will exit.\n"
2030msgstr ""
2031
2032#, python-format
2033msgid "Invalid duration option %s"
2034msgstr "������������١��"
2035
2036#, python-format
2037msgid "Invalid loop option %s"
2038msgstr "�ҵ������ӫ���١��"
2039
2040#, python-format
2041msgid "Invalid sleep option %s"
2042msgstr "���������ѡ��ͧ��١��"
2043
2044#, python-format
2045msgid "Invalid color option %s"
2046msgstr "����������١��"
2047
2048#, python-format
2049msgid "User %s doesn't exist in PyKota's database"
2050msgstr "����ͼ�� %s 㹰ҹ����ͧ PyKota"
2051
2052#, python-format
2053msgid "Pages used on %s : %s"
2054msgstr "�ӹǹ˹���仺� %s : %s"
2055
2056#, python-format
2057msgid "PyKota Units left : %.2f"
2058msgstr "˹������ͧ PyKota : %.2f"
2059
2060msgid "Printing denied."
2061msgstr ""
2062
2063msgid "Printing not limited."
2064msgstr ""
2065
2066msgid "Printing not limited, no accounting."
2067msgstr ""
2068
2069#, python-format
2070msgid ""
2071"pykotme v%(__version__)s (c) %(__years__)s %(__author__)s\n"
2072"\n"
2073"Gives print quotes to users.\n"
2074"\n"
2075"command line usage :\n"
2076"\n"
2077"  pykotme  [options]  [files]\n"
2078"\n"
2079"options :\n"
2080"\n"
2081"  -v | --version       Prints pykotme's version number then exits.\n"
2082"  -h | --help          Prints this message then exits.\n"
2083"  \n"
2084"  -P | --printer p     Gives a quote for this printer only. Actually p can\n"
2085"                       use wildcards characters to select only\n"
2086"                       some printers. The default value is *, meaning\n"
2087"                       all printers.\n"
2088"                       You can specify several names or wildcards, \n"
2089"                       by separating them with commas.\n"
2090"  \n"
2091"examples :                              \n"
2092"\n"
2093"  $ pykotme --printer apple file1.ps file2.ps\n"
2094"  \n"
2095"  This will give a print quote to the current user. The quote will show\n"
2096"  the price and size of a job consisting in file1.ps and file2.ps \n"
2097"  which would be sent to the apple printer.\n"
2098"  \n"
2099"  $ pykotme --printer apple,hplaser <file1.ps\n"
2100"  \n"
2101"  This will give a print quote to the current user. The quote will show\n"
2102"  the price and size of a job consisting in file1.ps as read from\n"
2103"  standard input, which would be sent to the apple or hplaser\n"
2104"  printer.\n"
2105"\n"
2106"  $ pykotme \n"
2107"  \n"
2108"  This will give a quote for a job consisting of what is on standard \n"
2109"  input. The quote will list the job size, and the price the job\n"
2110"  would cost on each printer.\n"
2111msgstr ""
2112
2113#, python-format
2114msgid "Your account balance : %.2f"
2115msgstr "���������ͧ�س : %.2f"
2116
2117#, python-format
2118msgid "Job size : %i pages"
2119msgstr "�ӹǹ�ҹ : %i ˹�
2120
2121#, python-format
2122msgid "Cost on printer %s : %.2f"
2123msgstr "��ҡ��������ͧ����s : %.2f"
2124
2125msgid "won't be charged, printer is in passthrough mode"
2126msgstr ""
2127
2128msgid "won't be charged, your account is immutable"
2129msgstr ""
2130
2131#, python-format
2132msgid "Unsupported accounter backend %s"
2133msgstr "����ѭ����ԡ�ʹѺʹع���ӧҹ %s"
2134
2135#, python-format
2136msgid ""
2137"Configuration file %s can't be read. Please check that the file exists and "
2138"that your permissions are sufficient."
2139msgstr ""
2140
2141#, python-format
2142msgid "Configuration file %s not found."
2143msgstr "���! ����͹�ԡ��s"
2144
2145#, python-format
2146msgid "Option %s not found in section global of %s"
2147msgstr "������͡ %s ��������ͧ %s "
2148
2149#, python-format
2150msgid "Option %s not found in section %s of %s"
2151msgstr "������͡ %s ��� %s �ͧ %s"
2152
2153#, python-format
2154msgid "Option ldaptls is set, but certificate %s is not readable."
2155msgstr ""
2156
2157#, python-format
2158msgid "Option logger only supports values in %s"
2159msgstr "���͡�ѹ�֡���ӧҹʹѺʹع������%s"
2160
2161#, python-format
2162msgid "Invalid preaccounter %s for printer %s"
2163msgstr ""
2164
2165#, python-format
2166msgid "Option preaccounter in section %s only supports values in %s"
2167msgstr ""
2168
2169#, python-format
2170msgid "Invalid accounter %s for printer %s"
2171msgstr "����ѭ����ԡ %s ��Ѻ��ͧ����s ��١��"
2172
2173#, python-format
2174msgid "Option accounter in section %s only supports values in %s"
2175msgstr "���͡����ѭ����ԡ��� %s ʹѺʹع੾���� %s"
2176
2177#, python-format
2178msgid "Invalid unknown_billingcode directive %s for printer %s"
2179msgstr ""
2180
2181#, python-format
2182msgid "Directive unknown_billingcode in section %s only supports values in %s"
2183msgstr ""
2184
2185#, python-format
2186msgid "Option enforcement in section %s only supports values in %s"
2187msgstr "���͡ enforcement ��� %s ʹѺʹع੾���� %s"
2188
2189#, python-format
2190msgid ""
2191"Option onbackenderror in section %s only supports values 'charge', "
2192"'nocharge', and 'retry:num:delay'"
2193msgstr ""
2194
2195#, python-format
2196msgid "Option onaccountererror in section %s only supports values in %s"
2197msgstr ""
2198
2199#, python-format
2200msgid "Option policy in section %s only supports values in %s"
2201msgstr "���͡�������� %s ʹѺʹع੾���� %s"
2202
2203#, python-format
2204msgid "Invalid option mailto %s for printer %s"
2205msgstr "���͡����%s ��Ѻ��ͧ����s ��١��"
2206
2207#, python-format
2208msgid "Option mailto in section %s only supports values in %s"
2209msgstr "���͡�����Ǵ %s ʹѺʹع੾���� %s"
2210
2211#, python-format
2212msgid "Invalid maximal deny banners counter %s"
2213msgstr ""
2214
2215#, python-format
2216msgid "Invalid grace delay %s"
2217msgstr "��grace delay %s ��١��"
2218
2219#, python-format
2220msgid "Invalid poor man's threshold %s"
2221msgstr "��poor man's threshold %s ��١��"
2222
2223#, python-format
2224msgid "Invalid balancezero value %s"
2225msgstr ""
2226
2227msgid ""
2228"Your Print Quota account balance is Low.\n"
2229"Soon you'll not be allowed to print anymore.\n"
2230"Please contact the Print Quota Administrator to solve the problem."
2231msgstr ""
2232"���� �����ͧ������\n"
2233"�������þ����������������"
2234"���ҵԴ������к������������ѭ�"
2235
2236#, python-format
2237msgid ""
2238"You are not allowed to print anymore because\n"
2239"your Print Quota is exceeded on printer %s."
2240msgstr ""
2241"���� �س���ö�ӡ�����������ҡ\n"
2242"����㹡�������س����������ͧ����s."
2243
2244#, python-format
2245msgid ""
2246"You will soon be forbidden to print anymore because\n"
2247"your Print Quota is almost reached on printer %s."
2248msgstr ""
2249"���� �س������͹حҵ��ӡ����������\n"
2250"������������س�������ͧ����s."
2251
2252#, python-format
2253msgid "Incorrect value %s for the duplicatesdelay directive in section %s"
2254msgstr ""
2255
2256#, python-format
2257msgid "Incorrect value %s for the noprintingmaxdelay directive in section %s"
2258msgstr ""
2259
2260#, python-format
2261msgid "Option accountbanner in section %s only supports values in %s"
2262msgstr ""
2263
2264#, python-format
2265msgid "Option trustjobsize for printer %s is incorrect"
2266msgstr ""
2267
2268msgid "History"
2269msgstr "�����
2270
2271msgid "Users"
2272msgstr ""
2273
2274msgid "Groups"
2275msgstr ""
2276
2277msgid "Printers"
2278msgstr ""
2279
2280msgid "Users Print Quotas"
2281msgstr ""
2282
2283msgid "Users Groups Print Quotas"
2284msgstr ""
2285
2286msgid "History of Payments"
2287msgstr ""
2288
2289msgid "Printers Groups Membership"
2290msgstr ""
2291
2292msgid "Users Groups Membership"
2293msgstr ""
2294
2295msgid "Billing Codes"
2296msgstr ""
2297
2298msgid "All"
2299msgstr ""
2300
2301msgid "Comma Separated Values"
2302msgstr ""
2303
2304msgid "Semicolon Separated Values"
2305msgstr ""
2306
2307msgid "Tabulation Separated Values"
2308msgstr ""
2309
2310msgid "eXtensible Markup Language"
2311msgstr ""
2312
2313msgid "CUPS' page_log"
2314msgstr ""
2315
2316#, python-format
2317msgid "Invalid modifier [%s] for --data command line option, see help."
2318msgstr ""
2319
2320msgid ""
2321"Dumping all PyKota's datas forces format to XML, and disables --sum and "
2322"filters."
2323msgstr ""
2324
2325#, python-format
2326msgid "Invalid modifier [%s] for --format command line option, see help."
2327msgstr ""
2328
2329msgid "XML output is disabled because the jaxml module is not available."
2330msgstr ""
2331
2332#, python-format
2333msgid "Invalid data type [%s] for --sum command line option, see help."
2334msgstr ""
2335
2336msgid "PyKota data dumper failed : I/O error"
2337msgstr ""
2338
2339#, python-format
2340msgid "Unsupported logging subsystem %s"
2341msgstr "����ѹ�֡�����ʹѺʹع���ӧҹ %s"
2342
2343#, python-format
2344msgid "Report for %s quota on printer %s"
2345msgstr "�§ҹ�����������Ѻ %s ����ͧ����s"
2346
2347#, python-format
2348msgid "Pages grace time: %i days"
2349msgstr "˹�grace time : %i ��"
2350
2351#, python-format
2352msgid "Price per job: %.3f"
2353msgstr "��ҵ�ҹ : %.3f"
2354
2355#, python-format
2356msgid "Price per page: %.3f"
2357msgstr "��ҵ���: %.3f "
2358
2359msgid ""
2360"Group          overcharge   used    soft    hard    balance grace         "
2361"total       paid warn"
2362msgstr ""
2363
2364msgid ""
2365"User           overcharge   used    soft    hard    balance grace         "
2366"total       paid warn"
2367msgstr ""
2368
2369msgid "unknown"
2370msgstr "�������"
2371
2372#, python-format
2373msgid "Real : %s"
2374msgstr "����� : %s"
2375
2376#, python-format
2377msgid "Total : %9i"
2378msgstr "��: %9i"
2379
2380msgid "N/A"
2381msgstr ""
2382
2383#, python-format
2384msgid "Unsupported reporter backend %s"
2385msgstr "����§ҹ�ʹѺʹع %s"
2386
2387#, python-format
2388msgid "Refunded %i pages and %.3f credits by %s (%s) on %s"
2389msgstr ""
2390
2391#, python-format
2392msgid "Unsupported quota storage backend %s"
2393msgstr "�������㹡��������ʹѺʹع %s"
2394
2395msgid "Done"
2396msgstr ""
2397
2398msgid "Average speed"
2399msgstr ""
2400
2401msgid "entries per second"
2402msgstr ""
2403
2404#, python-format
2405msgid "Strange problem with uid(%s) : %s"
2406msgstr ""
2407
2408#, python-format
2409msgid "Running as user '%s'."
2410msgstr ""
2411
2412msgid "No user named 'pykota'. Not dropping priviledges."
2413msgstr ""
2414
2415#, python-format
2416msgid "Impossible to drop priviledges : %s"
2417msgstr ""
2418
2419msgid "Priviledges dropped. Now running as user 'pykota'."
2420msgstr ""
2421
2422#, python-format
2423msgid "Impossible to regain priviledges : %s"
2424msgstr ""
2425
2426msgid "Regained priviledges. Now running as root."
2427msgstr ""
2428
2429msgid "Please report bugs to :"
2430msgstr ""
2431
2432#, python-format
2433msgid ""
2434"\n"
2435"\n"
2436"Please contact your system administrator :\n"
2437"\n"
2438"\t%s - <%s>\n"
2439msgstr ""
2440"\n"
2441"\n"
2442"���ҵԴ������к� :\n"
2443"\n"
2444"\t%s - <%s>\n"
2445
2446#, python-format
2447msgid "Unable to match user %s on printer %s, applying default policy (%s)"
2448msgstr "�����ͼ�� %s ����ͧ����s, �����������ҹ����(%s)"
2449
2450#, python-format
2451msgid ""
2452"Unable to find user %s's account balance, applying default policy (%s) for "
2453"printer %s"
2454msgstr "��������ͧ��� %s, �����������ҹ����%s) �ͧ ��ͧ����s"
2455
2456#, python-format
2457msgid "User %s will not be charged for printing."
2458msgstr ""
2459
2460#, python-format
2461msgid "Print Quota exceeded for group %s on printer %s"
2462msgstr "���� ��������������%s ����ͧ����s ����
2463
2464msgid "Print Quota Exceeded"
2465msgstr "����������Թ��
2466
2467#, python-format
2468msgid "Print Quota low for group %s on printer %s"
2469msgstr "��������������%s ����ͧ����s �����
2470
2471msgid "Print Quota Low"
2472msgstr "���������������
2473
2474#, python-format
2475msgid ""
2476"Search base %s doesn't seem to exist. Probable misconfiguration. Please "
2477"double check /etc/pykota/pykota.conf : %s"
2478msgstr ""
2479"�š����%s ���. ������������١�� �������� /etc/pykota/pykota.conf : %"
2480"s �����
2481
2482#, python-format
2483msgid "Search for %s(%s) from %s(scope=%s) returned no answer."
2484msgstr "�š����%s(%s) �ҡ %s(scope=%s) �� ����觷���"
2485
2486#, python-format
2487msgid "Problem adding LDAP entry (%s, %s)"
2488msgstr "���ѭ�㹡�������� LDAP (%s, %s)"
2489
2490#, python-format
2491msgid "Problem deleting LDAP entry (%s)"
2492msgstr "���ѭ�㹡�ź����ҡ LDAP (%s, %s)"
2493
2494#, python-format
2495msgid "Problem modifying LDAP entry (%s, %s)"
2496msgstr "���ѭ�㹡��㢢���LDAP (%s, %s)"
2497
2498#, python-format
2499msgid ""
2500"No pykotaAccountBalance object found for user %s. Did you create LDAP "
2501"entries manually ?"
2502msgstr ""
2503
2504msgid "Hidden because of privacy concerns"
2505msgstr ""
2506
2507#, python-format
2508msgid ""
2509"Unable to find an existing objectClass %s entry with %s=%s to attach "
2510"pykotaAccount objectClass"
2511msgstr ""
2512"���ö�鹾��������%s ���Ҷ֧�� %s=%s �����Ѻ ����Ҫԡ Pykota "
2513"�������
2514
2515#, python-format
2516msgid "%s. A new entry will be created instead."
2517msgstr ""
2518
2519#, python-format
2520msgid "Unable to find an existing entry to attach pykotaGroup objectclass %s"
2521msgstr "���ö�鹾�������Ҷ֧�������Ѻ pykotaGroup �������%s"
2522
2523msgid ""
2524"Your version of python-mysqldb is too old. Please install a newer release."
2525msgstr ""
2526
2527#, python-format
2528msgid "A problem occured while reading printer %s's internal page counter."
2529msgstr ""
2530
2531#, python-format
2532msgid "Retrieving printer %s's page counter from database instead."
2533msgstr ""
2534
2535#, python-format
2536msgid ""
2537"Couldn't retrieve printer %s's internal page counter either before or after "
2538"printing."
2539msgstr ""
2540
2541#, python-format
2542msgid "Job's size forced to 1 page for printer %s."
2543msgstr ""
2544
2545#, python-format
2546msgid "No previous job in database for printer %s."
2547msgstr ""
2548
2549#, python-format
2550msgid "Inconsistent values for printer %s's internal page counter."
2551msgstr ""
2552
2553#, python-format
2554msgid "Unknown printer address in HARDWARE(%s) for printer %s"
2555msgstr "��������ͧ��ͧ�������ó�%s) ��Ѻ��ͧ����s"
2556
2557#, python-format
2558msgid "Launching HARDWARE(%s)..."
2559msgstr "����ӧҹ�ͧ���ó�%s)..."
2560
2561#, python-format
2562msgid "SIGTERM was sent to hardware accounter %s (pid: %s)"
2563msgstr "���ҳ SIGTERM �١���ѧ���ó����ѭ����ԡ %s (pid: %s)"
2564
2565#, python-format
2566msgid "Line [%s] skipped in accounter's output. Trying again..."
2567msgstr ""
2568
2569#, python-format
2570msgid "Hardware accounter %s exit code is %s"
2571msgstr ""
2572
2573#, python-format
2574msgid "Unable to query printer %s via HARDWARE(%s)"
2575msgstr "���ä���������s ������ó�s)"
2576
2577#, python-format
2578msgid ""
2579"Unable to precompute the job's size and ink coverage with the generic PDL "
2580"analyzer : %s"
2581msgstr ""
2582
2583#, python-format
2584msgid "Problem during connection to %s:%s : %s"
2585msgstr ""
2586
2587#, python-format
2588msgid "Problem while sending PJL query to %s:%s : %s"
2589msgstr ""
2590
2591#, python-format
2592msgid "Problem while receiving PJL answer from %s:%s : %s"
2593msgstr ""
2594
2595#, python-format
2596msgid "Waiting for printer %s to be printing..."
2597msgstr ""
2598
2599#, python-format
2600msgid "Waiting for printer %s's idle status to stabilize..."
2601msgstr ""
2602
2603#, python-format
2604msgid ""
2605"PJL querying stage interrupted. Using latest value seen for internal page "
2606"counter (%s) on printer %s."
2607msgstr ""
2608
2609#, python-format
2610msgid ""
2611"SNMP querying stage interrupted. Using latest value seen for internal page "
2612"counter (%s) on printer %s."
2613msgstr ""
2614
2615#, python-format
2616msgid "Network error while doing SNMP queries on printer %s : %s"
2617msgstr ""
2618
2619#, python-format
2620msgid "SNMP message decoding error for printer %s : %s"
2621msgstr ""
2622
2623#, python-format
2624msgid "Problem encountered while doing SNMP queries on printer %s : %s"
2625msgstr ""
2626
2627#, python-format
2628msgid "Unable to precompute the job's size with the generic PDL analyzer : %s"
2629msgstr "���ö�ӡ��ӹdz��Ҵ�ͧ�ҹ��� PDL analyzer : %s"
2630
2631#, python-format
2632msgid "Launching SOFTWARE(%s)..."
2633msgstr "����ӧҹ�ͧ�Ϳ���(%s)..."
2634
2635#, python-format
2636msgid "Unable to compute job size with accounter %s"
2637msgstr "���ö�ӹdz��Ҵ�ҹ�������Ҫԡ %s"
2638
2639#, python-format
2640msgid "Problem while waiting for software accounter pid %s to exit : %s"
2641msgstr "���ѭ��ҡ�����Ϳ�������Ҫԡ pid %s ��͡ : %s"
2642
2643#, python-format
2644msgid "Software accounter %s exit code is %s"
2645msgstr "�Ϳ�������Ҫԡ %s ���觡����� %s"
2646
2647msgid "Totals may be inaccurate if some users are members of several groups."
2648msgstr "�ӹǹ��Ҩ��١�� ������ҧ�����Ҫԡ�ͧ����¡��"
2649
2650msgid "PyKota Data Dumper"
2651msgstr ""
2652
2653msgid "Dump"
2654msgstr ""
2655
2656msgid "Please click on the above button"
2657msgstr ""
2658
2659msgid "Data Type"
2660msgstr ""
2661
2662msgid "Output Format"
2663msgstr ""
2664
2665msgid "Filter"
2666msgstr ""
2667
2668msgid "Summarize"
2669msgstr ""
2670
2671msgid "only for payments or history"
2672msgstr ""
2673
2674msgid "PyKota Reports"
2675msgstr "�§ҹ PyKota"
2676
2677msgid "Report"
2678msgstr "�§ҹ"
2679
2680msgid "Printer"
2681msgstr "��ͧ����
2682msgid "User / Group names mask"
2683msgstr "�� ��ͼ��/��͡����"
2684
2685msgid "Groups report"
2686msgstr "�§ҹ���
2687
2688msgid "Empty"
2689msgstr "�ҧ"
2690
2691msgid "Action"
2692msgstr "�Ԩ���
2693
2694msgid "User"
2695msgstr "���"
2696
2697msgid "Hostname"
2698msgstr "������"
2699
2700msgid "JobId"
2701msgstr "����ҹ"
2702
2703msgid "Number of pages"
2704msgstr ""
2705
2706msgid "Cost"
2707msgstr ""
2708
2709msgid "Copies"
2710msgstr "�ӹǹ��"
2711
2712msgid "Number of bytes"
2713msgstr ""
2714
2715msgid "Printer's internal counter"
2716msgstr ""
2717
2718msgid "Options"
2719msgstr "���͡"
2720
2721msgid "MD5Sum"
2722msgstr ""
2723
2724msgid "Billing code"
2725msgstr ""
2726
2727msgid "Precomputed number of pages"
2728msgstr ""
2729
2730msgid "Precomputed cost"
2731msgstr ""
2732
2733msgid "Pages details"
2734msgstr ""
2735
2736msgid "(not supported yet)"
2737msgstr ""
2738
2739msgid "Previous page"
2740msgstr "˹����
2741
2742msgid "PyKota Quotes"
2743msgstr ""
2744
2745msgid "Quote"
2746msgstr ""
2747
2748msgid ""
2749"The exact cost of a print job can only be determined for a particular user. "
2750"Please retry while logged-in."
2751msgstr ""
2752
2753msgid "Ordering"
2754msgstr ""
2755
2756#~ msgid "Impossible to add printer %s"
2757#~ msgstr "���ö�ӡ�����������
2758#~ msgid "Prototype object %s not found in Quota Storage."
2759#~ msgstr "������ص��� %s ���������"
2760
2761#~ msgid "Prototype %s not found in Quota Storage for printer %s."
2762#~ msgstr "������� %s �����������Ѻ��ͧ����s "
2763
2764#~ msgid "Undefined hard limit set to soft limit (%s) on printer %s."
2765#~ msgstr "���ӡ������hard limit �֧ soft limit (%s) ����ͧ����s"
2766
2767#~ msgid "Undefined soft limit set to hard limit (%s) on printer %s."
2768#~ msgstr "���ӡ������soft limit �֧ hard limit (%s) ����ͧ����s"
2769
2770#~ msgid "Invalid group name %s"
2771#~ msgstr "��͡���� %s ��١��"
2772
2773#~ msgid "Invalid user name %s"
2774#~ msgstr "��ͼ�� %s ��١��"
2775
2776#~ msgid "Quota not found for object %s on printer %s."
2777#~ msgstr "��������������Ѻ %s ����ͧ����s"
2778
2779#~ msgid "Group %s not found in the PyKota Storage."
2780#~ msgstr "�������� %s ��������ͧ PyKota"
2781
2782#~ msgid "File number %s unregistered twice from polling object, ignored."
2783#~ msgstr "������� %s ������ŧ����� 2 ��駨ҡ������� ,���
2784
2785#~ msgid "SIGTERM was sent to real backend %s (pid: %s)"
2786#~ msgstr "���ҳ SIGTERM �١���ѧ��ͧ�� %s (pid: %s)"
2787
2788#~ msgid "CUPS backend %s died abnormally."
2789#~ msgstr "CUPS �ͧ��ͧ�� %s ����ش�ӧҹẺ�Դ�á��
2790
2791#~ msgid "Software accounting already done in first pass. Ignoring."
2792#~ msgstr "����Ϳ�������ѭ����ԡ����ǹ� ���
2793
2794#~ msgid "Hardware accounting already done in first pass. Ignoring."
2795#~ msgstr "�����������ѭ����ԡ����ǹ� ���
2796
2797#~ msgid "Invalid DeviceURI : %s"
2798#~ msgstr "��DeviceURI : %s ��١��"
2799
2800#~ msgid ""
2801#~ "\n"
2802#~ "Please wait while pkhint analyzes your printing system's configuration..."
2803#~ msgstr ""
2804#~ "\n"
2805#~ "�����pkhint �зӡ������������к����������..."
2806
2807#~ msgid "Unknown device %s for printer %s"
2808#~ msgstr "�������ó�s ��Ѻ��ͧ����s"
2809
2810#~ msgid ""
2811#~ "\n"
2812#~ "Put the following lines into your /etc/pykota/pykota.conf file :\n"
2813#~ msgstr ""
2814#~ "\n"
2815#~ "��������Ѵ�����ŧ���/etc/pykota/pykota.conf file :\n"
2816
2817#~ msgid "# BEWARE : if software accounting is suggested, this doesn't mean"
2818#~ msgstr "# ����� : ��Ϳ�������Ҫԡ����й�
2819
2820#~ msgid ""
2821#~ "# that hardware accounting wouldn't work, this only means that PyKota"
2822#~ msgstr "# ��������Ҫԡ���ö�ӧҹ�, �ѭ�������੾��Ѻ PyKota"
2823
2824#~ msgid "# wasn't able to autodetect which hardware accounting method to use."
2825#~ msgstr "# ��������������Ҫԡ����ö��"
2826
2827#~ msgid "JobSize"
2828#~ msgstr "��Ҵ�ҹ"
2829
2830#~ msgid "JobPrice"
2831#~ msgstr "��ҧҹ"
2832
2833#~ msgid "JobBytes"
2834#~ msgstr "�����Ҵ�ҹ"
2835
2836#~ msgid "PageCounter"
2837#~ msgstr "�ӹǹ˹�
2838
2839#~ msgid "Printing system %s, args=%s"
2840#~ msgstr "���������s, args=%s"
2841
2842#~ msgid "Printer hostname undefined, set to 'localhost'"
2843#~ msgstr "������������������ҵ���� 'localhost'"
2844
2845#~ msgid "Printing system unknown, args=%s"
2846#~ msgstr "�������������args=%s"
2847
2848#~ msgid ""
2849#~ "Group           used    soft    hard    balance grace         total       "
2850#~ "paid"
2851#~ msgstr ""
2852#~ "���          ��   soft    hard    ���� grace         ��      ���
2853
2854#~ msgid ""
2855#~ "User            used    soft    hard    balance grace         total       "
2856#~ "paid"
2857#~ msgstr ""
2858#~ "���            ��   soft    hard    ���� grace         ��      ���
Note: See TracBrowser for help on using the browser.