.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CTAN-O-MAT 1" .TH CTAN-O-MAT 1 "2017-11-23" "ctan-o-mat" "Gerd Neugebauer" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "نام (NAME)" ctan\-o\-mat \- اعتبارسنجی و آپلود بسته‌های TeX به شبکه جامع آرشیو TeX (CTAN) .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" ctan-o-mat [\fIگزینه‌ها\fR] [<\fIپیکربندی بسته\fR>] .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" این برنامه می‌تواند برای خودکارسازی فرآیند آپلود یک بسته در شبکه جامع آرشیو TeX (Comprehensive TeX Archive Network \- https://www.ctan.org) استفاده شود. توضیحات بسته از یک فایل پیکربندی خوانده می‌شود؛ بنابراین می‌توان آن را به سادگی و بدون نیاز به پر کردن مکرر یک فرم وب با همان اطلاعات قدیمی به‌روزرسانی کرد. .PP اطلاعات ارائه‌شده در هر صورت اعتبارسنجی می‌شوند. اگر اعتبارسنجی موفقیت‌آمیز باشد و فقط درخواست اعتبارسنجی نشده باشد، فایل آرشیو ارائه‌شده برای پردازش بیشتر توسط تیم \s-1CTAN\s0 در بخش ورودی (incoming) قرار می‌گیرد. .PP در هر حالت، هرگونه نتیجه و یافته در طول اعتبارسنجی در پایان پردازش گزارش می‌شود. توجه داشته باشید که اعتبارسنجی حالت پیش‌فرض است و برای ثبت و ارسال رسمی باید از گزینه خط فرمان مناسب استفاده شود. .PP برنامه \&\fBctan-o-mat\fR نیازمند اتصال اینترنت به سرور \s-1CTAN\s0 است. حتی فرآیند اعتبارسنجی نیز ویژگی‌های شناخته‌شده و محدودیت‌های اولیه را از سرور دریافت می‌کند. .SH "پیکربندی (CONFIGURATION)" .IX Header "CONFIGURATION" پیکربندی پیش‌فرض از فایلی با نام مشابه پوشه جاری و پسوند \f(CW\*(C`.pkg\*(C'\fR خوانده می‌شود. این نام فایل را می‌توان از طریق خط فرمان تغییر داد. .PP پیکربندی به ویژگی‌هایی بستگی دارد که در حال حاضر توسط سرور \&\s-1CTAN\s0 پشتیبانی می‌شوند. از آنجا که این ویژگی‌ها ممکن است در طول زمان تغییر کنند، پیکربندی به صورت سخت‌کد در \fBctan-o-mat\fR قرار نگرفته است. می‌توانید یک الگوی خالی از پیکربندی را با پارامتر خط فرمان \f(CW\*(C`\-\-init\*(C'\fR درخواست کنید. .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" .IP "\-h" 4 .IX Item "-h" .PD 0 .IP "\-\-help" 4 .IX Item "--help" .PD نمایش این خلاصه کوتاه از نحوه استفاده و خروج از برنامه. .IP "\-i" 4 .IX Item "-i" .PD 0 .IP "\-\-init" 4 .IX Item "--init" .PD ایجاد یک الگوی خالی برای پیکربندی. .IP "\-\-list licenses" 4 .IX Item "--list licenses" فهرست کردن مجوزهای شناخته‌شده \s-1CTAN\s0 در جریان خروجی استاندارد. هر مجوز به صورت یک خط نمایش داده می‌شود. این خط شامل فیلدهای کلید، نام و نشانگر رایگان بودن (free indicator) است. این فیلدها با نویسه تب (Tab) از یکدیگر جدا شده‌اند. پس از آن، برنامه بدون پردازش آرگومان‌های دیگر پایان می‌یابد. .IP "\-\-config " 4 .IX Item "--config " .PD 0 .IP "\-\-pkg " 4 .IX Item "--pkg " .IP "\-\-package " 4 .IX Item "--package " .PD تنظیم فایل پیکربندی بسته. .IP "\-s" 4 .IX Item "-s" .PD 0 .IP "\-\-submit" 4 .IX Item "--submit" .PD آپلود بسته ارسالی، اعتبارسنجی آن و ثبت رسمی در \s-1CTAN\s0 در صورت موفقیت‌آمیز بودن اعتبارسنجی. .IP "\-v" 4 .IX Item "-v" .PD 0 .IP "\-\-verbose" 4 .IX Item "--verbose" .PD چاپ اطلاعات بیشتر در طول پردازش (حالت پرگو / verbose). .IP "\-\-version" 4 .IX Item "--version" نمایش شماره نسخه برنامه و خروج. .IP "\-\-validate" 4 .IX Item "--validate" .PD 0 .IP "\-n" 4 .IX Item "-n" .IP "\-\-noaction" 4 .IX Item "--noaction" .PD عدم انجام آپلود نهایی. بسته اعتبارسنجی شده و پیام‌های حاصل چاپ می‌شوند. .IP "" 4 .IX Item "" این پارامتر نام یک پیکربندی بسته است که در یک فایل قرار دارد (بخش \s-1CONFIGURATION\s0 را ببینید). در صورت مشخص نشدن، نام پیکربندی بسته به صورت پیش‌فرض برابر با نام پوشه جاری به همراه \f(CW\*(C`.pkg\*(C'\fR خواهد بود. .SH "محیط (ENVIRONMENT)" .IX Header "ENVIRONMENT" متغیرهای محیطی زیر توسط \fBctan-o-mat\fR شناسایی می‌شوند. .IP "\s-1CTAN_O_MAT_URL\s0" 4 .IX Item "CTAN_O_MAT_URL" مقدار این متغیر پیشوند \s-1URL\s0 برای سرور \s-1CTAN\s0 است که باید با آن ارتباط برقرار شود. مقدار پیش‌فرض \f(CW\*(C`https://ctan.org/submit\*(C'\fR است. نشانی اینترنتی کامل با الحاق \&\f(CW\*(C`validate\*(C'\fR، \f(CW\*(C`upload\*(C'\fR یا \f(CW\*(C`fields\*(C'\fR برای استفاده از \s-1CTAN REST API\s0 مربوطه ساخته می‌شود. .SH "اتصال از طریق پروکسی (CONNECTING VIA PROXIES)" .IX Header "CONNECTING VIA PROXIES" اگر نیاز به اتصال به اینترنت از طریق پروکسی دارید، این کار با تنظیم برخی متغیرهای محیطی قبل از اجرای \fBctan-o-mat\fR امکان‌پذیر است. برای هدایت درخواست از طریق پروکسی، کافی است متغیر محیطی \&\f(CW\*(C`http_proxy\*(C'\fR را تعریف کنید تا به هاست پروکسی اشاره کند \*(-- شامل پروتکل و پورت در صورت نیاز. توجه داشته باشید که نام این متغیر محیطی باید با حروف \&\fBکوچک\fR (lower case) باشد. .SH "نویسنده (AUTHOR)" .IX Header "AUTHOR" Gerd Neugebauer (gene@gerd\-neugebauer.de) .SH "اشکالات (BUGS)" .IX Header "BUGS" .IP "\(bu" 4 این برنامه بدون اتصال فعال به اینترنت قابل استفاده نیست.