این دستور mhbuildmh است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
mhbuild - ترجمه پیش نویس ترکیب MIME
خلاصه
mhbuild پرونده [-خودکار | -نواتو] [فهرست | -نوست] [- متوجه شدن | غیرواقعی کردن] [سربرگ |
بدون سر و صدا] [-دستورالعمل ها | -بدون دستورالعمل] [-rfc934 mode | -norfc934mode] [-محتوا |
-بی محتوا] [کلاهبرداری | -غیر بزرگ] [-وضع | -ناراحتی] [-بررسی |
-نچک] [رمزگذاری سرصفحه کدگذاری-الگوریتم | رمزگذاری خودکار] [-maxunecoded
طول خط] [-دور] [-version] [-کمک]
شرح
La mhbuild دستور یک پیش نویس ترکیب MIME را به یک پیام MIME معتبر ترجمه می کند.
mhbuild پیام های چند رسانه ای را همانطور که در RFC 2045 تا RFC 2049 مشخص شده است ایجاد می کند.
رمزگذاری هدرهای پیام همانطور که توسط RFC 2047 مشخص شده است و رمزگذاری MIME
پارامترهای مشخص شده در RFC 2231.
اگر نام فایل ترکیب را به صورت "-" مشخص کنید، پس mhbuild را خواهد پذیرفت
پیش نویس ترکیب در ورودی استاندارد اگر ترجمه این ورودی با موفقیت انجام شود،
mhbuild پیام MIME جدید را به خروجی استاندارد ارسال می کند. این استدلال باید باشد
آخرین آرگومان در خط فرمان
در غیر این صورت اگر آرگومان فایل به mhbuild نام یک فایل ترکیبی معتبر است و
ترجمه موفقیت آمیز است، mhbuild فایل اصلی را با MIME جدید جایگزین می کند
پیام نام فایل اصلی را تغییر می دهد تا با کاراکتر "" شروع شود و به آن ختم شود
رشته «.orig»، به عنوان مثال، اگر فایل «پیشنویس» را ویرایش میکنید، نام آن به
",draft.orig". این به شما امکان می دهد تا به راحتی آن را بازیابی کنید mhbuild فایل ورودی.
لیست la فهرست
La فهرست سوئیچ می گوید mhbuild برای فهرست کردن فهرست مطالب مرتبط با MIME
پیامی که ایجاد می شود
La سربرگ سوئیچ نشان می دهد که یک بنر یک خطی باید در بالای صفحه نمایش داده شود
فهرست بندی این - متوجه شدن سوئیچ می گوید mhbuild برای ارزیابی قالب "بومی" (رمزگشایی شده).
هر محتوا قبل از فهرست این یک شمارش دقیق را با هزینه کوچک فراهم می کند
تاخیر انداختن. اگر کلاهبرداری سوئیچ وجود دارد، سپس فهرست موارد اضافی را نشان می دهد
اطلاعاتی که در پیام وجود دارد، مانند نظرات در هدر "نوع محتوا".
اگر -وضع سوئیچ وجود دارد، سپس فهرست اطلاعات مربوطه را نشان می دهد
از سربرگ "Content-Disposition".
ساده شده ضمیمه رابط
برای کاربرانی که می خواهند به سادگی فایل ها را به محتوای متنی پیوست کنند، mhbuild را اسکن خواهد کرد
فایل ترکیبی برای هدرهای "ضمیمه". هدر «ضمیمه» حاوی نام فایل است
با استفاده از قوانین کپسوله سازی معمولی MIME به پیام الحاق شود. یک نام فایل مجاز است
در هر سرصفحه «پیوست»، اما چندین سرصفحه «پیوست» در فایل ترکیبی مجاز است.
این فایلها پس از هر محتوای MIME دیگر، از جمله هر محتوای مشخص شده، اضافه میشوند
by mhbuild دستورالعمل ها (به زیر مراجعه کنید). دیدن ارسال(1) برای جزئیات بیشتر.
ترجمه la ترکیب پرونده
mhbuild در اصل یک فیلتر برای کمک به ترکیب پیام های MIME است. mhbuild اراده
تبدیل یک mhbuild "پرونده ترکیبی" به یک پیام MIME معتبر. آ mhbuild "ترکیب بندی
file” فقط یک فایل حاوی متن ساده است که با متن های مختلف در هم آمیخته شده است mhbuild
بخشنامه ها زمانی که این فایل توسط mhbuild، بخشنامه های مختلف خواهد بود
به محتوای مناسب گسترش یافته و مطابق با استانداردهای MIME کدگذاری خواهد شد.
سپس پیام MIME حاصل می تواند از طریق پست الکترونیکی ارسال شود.
نحو رسمی برای a mhbuild فایل ترکیبی در انتهای این سند تعریف شده است،
اما ایده های پشت این قالب پیچیده نیستند. اساساً بدن شامل یک یا
مطالب بیشتر یک محتوا شامل یک دستورالعمل است که با "#" نشان داده شده است
اولین کاراکتر یک خط؛ یا، متن ساده (یک یا چند خط متن). ادامه
کاراکتر "\" ممکن است برای وارد کردن یک دستورالعمل در بیش از یک خط استفاده شود، به عنوان مثال،
#image/png \
/home/foobar/junk/picture.png
پنج نوع دستورالعمل وجود دارد: دستورالعمل های "نوع" که نوع و نوع فرعی را نام می برند
محتوای؛ دستورالعمل های «نوع خارجی» که نوع و نوع فرعی را نیز نام می برند
محتوا؛ دستورالعمل "پیام" (#forw)، که برای ارسال یک یا چند پیام استفاده می شود.
دستورالعمل "begin" (#begin)، که برای ایجاد یک محتوای چند قسمتی استفاده می شود. و
دستورالعملهای «روشن/خاموش/پاپ» (#روشن، #خاموش، #پاپ) که کنترل میکنند آیا هر دستورالعمل دیگری وجود دارد یا خیر.
اصلاً محترم
La -دستورالعمل ها سوئیچ اجازه می دهد تا کنترل کنید که آیا mhbuild به هر یک از آنها احترام می گذارد یا خیر
دستورالعمل های "#". این همچنین می تواند با دستورالعمل های #روشن یا #خاموش، و #پاپ تحت تاثیر قرار گیرد،
که وضعیت پردازش را به حالت قبل از آخرین #روشن یا #خاموش باز می گرداند.
(البته دستورالعمل های #روشن، #خاموش و #پاپ همیشه رعایت می شوند.) این امکان گنجاندن را فراهم می کند.
متن ساده که شبیه دستورالعمل های mhbuild است، بدون ایجاد خطا:
#خاموش
#عبارتند از
printf ("سلام، جهان!)
#ترکیدن
در حال حاضر عمق پشته برای دستورات #روشن/خاموش/پاپ 32 است.
دستورالعمل "نوع" برای تعیین مستقیم نوع و نوع فرعی محتوا استفاده می شود. شما
ممکن است فقط انواع گسسته را به این روش مشخص کند (نمی توان انواع چند بخشی یا را مشخص کرد
پیام با این بخشنامه). شما می توانید به صورت اختیاری نام یک فایل حاوی را مشخص کنید
محتویات در قالب "بومی" (رمزگشایی شده). اگر این نام فایل با "|" شروع شود
کاراکتر، سپس فرمانی را برای اجرا نشان می دهد که خروجی آن بر این اساس گرفته می شود.
به عنوان مثال،
#audio/basic |raw2audio -F < /usr/lib/sound/giggle.au
اگر نام فایلی داده نشود، mhbuild به دنبال اطلاعات در نمایه کاربر خواهد بود
تعیین کنید که چگونه مطالب مختلف باید ترکیب شوند. این امر توسط
مشورت با یک رشته ترکیب، و اجرای آن در زیر / بن / شل، با خروجی استاندارد
روی محتوا تنظیم کنید اگر کلاهبرداری سوئیچ داده می شود، mhbuild هر دستوری را که
برای ایجاد محتوا از این طریق استفاده می شود.
رشته ترکیب ممکن است شامل موارد زیر باشد:
%a پارامترها را از دستورالعمل درج کنید
%f نام فایل حاوی محتوا را وارد کنید
%F %f، و stdout دوباره هدایت نمیشود
%s زیرنوع محتوا را درج کنید
%% درج نویسه %
اول، mhbuild به دنبال ورودی فرم خواهد بود:
mhbuild-compose- /
برای تعیین دستور مورد استفاده برای نوشتن محتوا. اگر این پیدا نشد، mhbuild اراده
به دنبال ورودی فرم باشید:
mhbuild-compose-
برای تعیین دستور ترکیب اگر این پیدا نشد، mhbuild شکایت خواهد کرد.
یک ورودی مثال ممکن است این باشد:
mhbuild-compose-audio/basic: record | raw2audio -F
زیرا دستوراتی مانند اینها بسته به محیط نمایش مورد استفاده متفاوت خواهد بود
لاگین، رشته های ترکیب برای محتویات مختلف احتمالا باید در فایل قرار داده شود
مشخص شده توسط $MHBUILD متغیر محیطی، به جای اینکه مستقیماً در نمایه کاربری شما قرار گیرد.
دستورالعمل های "نوع خارجی" برای ارائه یک مرجع MIME به یک محتوا استفاده می شود
به جای محصور کردن خود محتویات (به عنوان مثال، با تعیین یک سایت ftp). از این رو،
به جای ارائه یک نام فایل مانند دستورالعمل های نوع، پارامترهای خارجی هستند
عرضه شده است. اینها مانند پارامترهای معمولی به نظر می رسند، بنابراین باید بر اساس آن از هم جدا شوند. برای
مثال،
#@application/octet-stream; \
type=tar; \
تبدیل = فشرده سازی \
[این توزیع nmh است] \
{پیوست؛ filename="nmh.tar.gz"} \
name="nmh.tar.gz"; \
directory="/pub/nmh"; \
site="ftp.math.gatech.edu"; \
access-type=anon-ftp; \
حالت = "تصویر"
شما باید یک رشته توضیحات بدهید تا پارامترهای محتوا را از خارجی جدا کنید.
پارامترها (اگرچه ممکن است این رشته خالی باشد). این رشته توضیحات توسط
محصور کردن آن در "[]". یک رشته تنظیم، برای ظاهر شدن در یک "Content-Disposition"
هدر، ممکن است در "{}" اختیاری ظاهر شود.
این پارامترها به شکل زیر هستند:
access-type= معمولا anon-ftp, سرور پست الکترونیکی، یا آدرس
نام = نام فایل
مجوز = فقط خواندنی یا خواندنی-نوشتنی
سایت = نام میزبان
فهرست = نام دایرکتوری (اختیاری)
حالت = معمولا ASCII or تصویر (اختیاری)
اندازه = تعداد اکتت
سرور = صندوق پست
موضوع = موضوع ارسال
body= دستور ارسال برای بازیابی
url= URL محتوا
یک دستورالعمل حداقل "از نوع خارجی" برای آدرس نوع دسترسی به شرح زیر خواهد بود:
#@application/octet-stream [] access-type=url; \
آدرس =http://download.savannah.gnu.org/releases/nmh/nmh-1.5.tar.gz"
هر URL طولانی طبق قوانین RFC 2231 بسته بندی می شود.
دستورالعمل "پیام" (#forw) برای تعیین یک پیام یا گروهی از پیام ها استفاده می شود
عبارتند از. شما می توانید به صورت اختیاری نام پوشه و پیام هایی که قرار است باشند را مشخص کنید
فرستاده شد. اگر پوشه ای داده نشود، به طور پیش فرض به پوشه فعلی تبدیل می شود. به همین ترتیب، اگر الف
پیام داده نمی شود، به طور پیش فرض روی پیام فعلی است. از این رو، دستورالعمل پیام است
شبیه به فورو کردن فرمان، با این تفاوت که اولی از قوانین MIME برای کپسوله سازی استفاده می کند
به جای مواردی که در RFC 934 مشخص شده است.
#forw + inbox 42 43 99
اگر یک پیام واحد را وارد کنید، مستقیماً به عنوان یک محتوای نوع درج می شود
“message/rfc822”. اگر بیش از یک پیام اضافه کنید، پس mhbuild یک محتوا اضافه خواهد کرد
از نوع "multipart/digest" و هر پیام را به عنوان بخشی فرعی از این محتوا درج کنید.
اگر از این دستورالعمل برای گنجاندن بیش از یک پیام استفاده می کنید، می توانید از آن استفاده کنید
-rfc934 mode تعویض. این سوئیچ آن را نشان خواهد داد mhbuild باید سعی در استفاده از
قوانین کپسولهسازی MIME به گونهای است که «چند بخشی/هضم» ایجاد شده است
(بیشتر) با کپسولاسیون مشخص شده در RFC 934 سازگار است. اگر داده شود، RFC 934
عامل های کاربر سازگار باید بتوانند پیام را در هنگام دریافت پخش کنند - به شرط آن
پیامهایی که کپسوله میشوند، خود حاوی پیامهای کپسولهشده نیستند. در
اشکال این روش این است که کپسوله ها با قرار دادن یک اضافی ایجاد می شوند
خط جدید در انتهای متن هر پیام.
دستورالعمل "شروع" برای ایجاد یک محتوای چند قسمتی استفاده می شود. هنگام استفاده از "شروع"
دستورالعمل، شما باید حداقل یک محتوا بین جفت شروع و پایان مشخص کنید.
#شروع
این یک چند قسمتی با تنها یک قسمت خواهد بود.
#پایان
اگر از چندین دستورالعمل در پیش نویس ترکیب استفاده می کنید، mhbuild به طور خودکار
آنها را در یک محتوای چند قسمتی محصور کنید. بنابراین بخشنامه "شروع" فقط است
اگر می خواهید از چند قسمتی تو در تو استفاده کنید یا یک پیام چند قسمتی حاوی پیام ایجاد کنید ضروری است
فقط یک قسمت
برای همه این دستورالعملها، کاربر ممکن است توضیح مختصری از محتوا داشته باشد
بین کاراکتر "[" و کاراکتر "]". این توضیحات در قسمت کپی می شود
سرصفحه "Content-Description" هنگام پردازش دستورالعمل.
#forw [ایمیل مهم از باب] +bob 1 2 3 4 5
به طور مشابه، ممکن است به صورت اختیاری یک رشته تنظیم بین کاراکترهای "{" و "}" ارائه شود.
هنگامی که دستورالعمل پردازش می شود، در هدر "Content-Disposition" کپی می شود.
اگر رشته ای ارائه شده باشد که حاوی پارامتر نام فایل نباشد، و a
نام فایل در دستورالعمل ارائه شده است، به "Content-Disposition" اضافه خواهد شد.
سرتیتر. به عنوان مثال، بخشنامه زیر:
#متن/ساده؛ charset=iso-8859-1 <>{attachment} /tmp/summary.txt
این هدرهای قسمت پیام را ایجاد می کند:
نوع محتوا: متن/ساده. charset="iso-8859-1"
Content-Disposition: پیوست. filename="summary.txt"
به طور پیش فرض، mhbuild برای هر دستورالعمل، یک "Content-ID:" منحصر به فرد ایجاد می کند
به هر بخش پیام؛ با این حال، کاربر ممکن است با تعریف شناسه با استفاده از "<" این را لغو کند.
و کاراکترهای ">". در -بی محتوا سوئیچ ایجاد تمام "Content-ID" را متوقف می کند:
سرصفحه ها، حتی در سطح بالای پیام.
به طور معمول mhbuild یک Content-Transfer-Encoding مناسب بر اساس محتوا انتخاب می کند
و MIME Content-Type. با این حال، می توانید آن را در یک نادیده بگیرید mhbuild بخشنامه توسط
با مشخص کردن "*" و رمزگذاری. مقادیر رمزگذاری قابل قبول "8bit"، "qpρq (برای
quoted-printable)، و "b64" (برای کدگذاری base64). لازم به ذکر است که نامطلوب
در صورتی که 8 بیت یا قابل چاپ نقل قول برای محتوای باینری انتخاب شود، ممکن است نتایج حاصل شود
ترجمه بین انتهای خط یونیکس و انتهای خط که توسط حمل و نقل پست استفاده می شود
سیستم.
علاوه بر دستورالعمل های مختلف، متن ساده می تواند وجود داشته باشد. متن ساده جمع آوری شده است،
تا زمانی که بخشنامه ای پیدا شود یا پیش نویس آن تمام شود و این برای شکل دادن متن ساخته شود
محتوا. اگر متن ساده باید دارای یک "#" در ابتدای یک خط باشد، به سادگی دو برابر کنید
آن، به عنوان مثال،
##هنگام ارسال، این خط فقط با یک # شروع می شود
اگر می خواهید متن ساده را قبل از یک دستورالعمل پایان دهید، به عنوان مثال، دو متن ساده داشته باشید
محتویات مجاور، به سادگی یک خط حاوی یک کاراکتر "#" را وارد کنید، به عنوان مثال،
این اولین مطلب است
#
و این دومی است
در نهایت، اگر متن ساده با یک خط از شکل شروع شود:
محتوا-توضیحات: متن
سپس از این برای توصیف محتوای متن ساده استفاده می شود. شما باید این خط را دنبال کنید
یک خط خالی قبل از شروع متن
به طور پیش فرض، متن ساده به عنوان یک متن/محتوای ساده گرفته می شود. شما می توانید این را نادیده بگیرید
شروع متن ساده با «#<» و سپس مشخصات نوع محتوا. مثلا،
به عنوان مثال،
#
این محتوا به عنوان متن / غنی شده برچسب گذاری می شود
#
و این محتوا به عنوان متن / ساده برچسب گذاری می شود
#
#
و این محتوا به عنوان اپلیکیشن/x-patch برچسب گذاری می شود
توجه داشته باشید که اگر از فرم متن ساده «#<» استفاده میکنید، توضیح محتوا باید روی آن باشد
همان خطی که نوع محتوای متن ساده را مشخص می کند.
هنگام نوشتن یک محتوای متنی، می توانید مجموعه کاراکتر مربوطه را با اضافه کردن نشان دهید
پارامتر "charset" به دستورالعمل.
#
اگر محتوای متنی حاوی هر کاراکتر 8 بیتی باشد (نویسه هایی با مجموعه بیت بالا) و
پس مجموعه کاراکترها مانند بالا مشخص نشده است mhbuild فرض خواهد شد که مجموعه کاراکترها از
نوع ارائه شده توسط استاندارد محل(1) متغیرهای محیطی. اگر این محیط
متغیرها تنظیم نشده اند، سپس مجموعه کاراکتر به عنوان "x-unknown" برچسب گذاری می شود.
اگر محتوای متنی فقط شامل کاراکترهای 7 بیتی باشد و مجموعه کاراکترها به عنوان مشخص نشده باشد
در بالا، مجموعه کاراکتر به عنوان "us-ascii" برچسب گذاری می شود.
به طور پیش فرض محتوای متنی با مجموعه بیت بالا با یک 8 بیت کدگذاری می شود
Content-Transfer-Encoding. اگر متن خطوطی طولانی تر از مقدار داشته باشد -maxunecoded
(که به طور پیش فرض 78 است) سپس متن با استفاده از رمزگذاری قابل چاپ نقل قول رمزگذاری می شود.
La رمزگذاری سرصفحه سوئیچ نشان می دهد که هنگام رمزگذاری هر پیام از کدام الگوریتم استفاده شود
هدرهایی که شامل کاراکترهای 8 بیتی هستند. استدلال های معتبر هستند base64 برای مبتنی بر-64
رمزگذاری و نقل شده برای رمزگذاری قابل چاپ نقل قول. در رمزگذاری خودکار سوئیچ خواهد شد
آموزش دادن mhbuild برای انتخاب خودکار الگوریتمی که منجر به کدگذاری کوتاهتر میشود
رشته
با کنار هم گذاشتن همه اینها، در اینجا نمونه ای از یک پیش نویس پیام پیچیده تر است. در
پیش نویس زیر به یک پیام چند قسمتی / ترکیبی شامل پنج بخش گسترش می یابد:
به: [ایمیل محافظت شده]
سی سی:
موضوع: نگاه کن و به من گوش کن!
--------
قسمت اول متن/ساده خواهد بود
#
قسمت دوم متن / غنی شده خواهد بود
#
این بخش سوم متن/ساده خواهد بود
#صوتی/اصلی [قهقهه احمقانه] \
|raw2audio -F < /usr/lib/sounds/giggle.au
#image/gif [عکس از foobar] \
/home/foobar/lib/picture.gif
تمامیت بررسی
If mhbuild داده می شود -بررسی سوئیچ کنید، سپس یک بررسی یکپارچگی را نیز با آن مرتبط می کند
هر محتوای "برگ". این یک فیلد هدر Content-MD5 به محتوا اضافه می کند
مجموع md5 محتویات رمزگذاری نشده، به ازای RFC 1864. این ممکن است توسط گیرنده استفاده شود
پیام برای تأیید اینکه محتوای پیام در حمل و نقل تغییر نکرده است.
انتقال رمزگذاری
پس از mhbuild پیام MIME جدید را با تجزیه دستورالعمل ها، از جمله فایل ها، می سازد.
و غیره، محتویات پیام را اسکن می کند تا تعیین کند از کدام رمزگذاری انتقال استفاده شود.
داده های 8 بیتی، خطوط طولانی، فاصله در انتهای خطوط و درگیری با آنها را بررسی می کند
مرزهای چند قسمتی سپس یک رمزگذاری انتقال مناسب برای هر کدام را انتخاب می کند
نوع محتوا.
اگر یک بررسی یکپارچگی با هر محتوا با استفاده از -بررسی تعویض،
سپس mhbuild هر محتوا را با یک رمزگذاری انتقال رمزگذاری می کند، حتی محتوا را
فقط شامل داده های 7 بیتی است. این برای افزایش احتمال عدم وجود محتوا است
در حین حمل و نقل تغییر کرد
فراخوانی mhbuild
به طور معمول، mhbuild مورد استناد قرار می گیرد حالا برنامه این فرمان بدن را انتظار خواهد داشت
از پیش نویس به عنوان فرمت mhbuild فایل ترکیبی وقتی این را نوشتید
فایل ورودی با استفاده از دستوری مانند کامپوننت, تکرار، یا فورو کردن، شما استناد می کنید mhbuild در "چه
now” prompt with
حالا چی؟ میم
قبل از ارسال پیش نویس این باعث خواهد شد حالا برای اجرای mhbuild برای ترجمه
فایل ترکیبی به فرمت MIME
معمولاً فراخوانی خطا است mhbuild روی فایلی که از قبل در قالب MIME است. در -خودکار
سوئیچ باعث خواهد شد mhbuild اگر فایل ورودی قبلاً دارای MIME معتبر باشد، بدون خطا از آن خارج شوید
سرصفحه ها استفاده از -خودکار را نیز قادر می سازد -بدون دستورالعمل سوئیچ.
در نهایت، باید این خط را به نمایه خود اضافه کنید:
lproc: نشان دادن
به این ترتیب، اگر تصمیم بگیرید فهرست پس از استناد تقلید، دستور
حالا چی؟ فهرست
همانطور که انتظار دارید کار خواهد کرد
La -دور سوئیچ برای استفاده در نظر گرفته شده است ناحیه. باعث می شود mhbuild تولید نشود
هر سرفصل MIME در فایل ترکیب (مانند "MIME-Version" یا "Content-Type")، اما
همچنان سرصفحه های پیام را مطابق RFC 2047 رمزگذاری می کند.
کاربر محیط
زیرا محیطی که در آن mhbuild عملکرد ممکن است برای یک کاربر متفاوت باشد، mhbuild نگاه خواهد کرد
برای متغیر محیطی $MHBUILD. در صورت وجود، این نام یک an را مشخص می کند
مشخصات کاربر اضافی که باید خوانده شود. از این رو، هنگامی که یک کاربر در یک مورد خاص وارد می شود
ماشین، این متغیر محیطی باید طوری تنظیم شود که به فایلی حاوی تعاریف اشاره کند
برای آن دستگاه مفید است
در نهایت، mhbuild اقدام به مشورت خواهد کرد
/etc/nmh/mhn.defaults
اگر وجود داشته باشد
به "جستجوی نمایه" در مراجعه کنید mh-profile(5) برای ترتیب جستجوی نمایه، و برای اینکه چگونه تکراری است
ورودی ها بررسی می شوند.
نحو of ترکیب فایل ها
شکل زیر دستور رسمی a است mhbuild ” فایل ترکیبی ” .
بدنه ::= 1*(محتوا | EOL)
محتوا ::= بخشنامه | متن ساده
دستورالعمل ::= "#" نوع فرعی "/" را تایپ کنید
0*(";" ویژگی "=" مقدار)
[ "(" اظهار نظر ")" ]
[ "<" id ">" ]
[ "[" شرح "]" ]
[ "{" وضع "}" ]
[ "*8bit" | "*qp" | "*b64" ]
[ نام فایل ]
EOL
| "#@" نوع فرعی "/" را تایپ کنید
0*(";" ویژگی "=" مقدار)
[ "(" اظهار نظر ")" ]
[ "<" id ">" ]
[ "[" شرح "]" ]
[ "{" وضع "}" ]
[ "*8bit" | "*qp" | "*b64" ]
پارامترهای خارجی
EOL
| "# فورو"
[ "<" id ">" ]
[ "[" شرح "]" ]
[ "{" وضع "}" ]
[ "+" پوشه ] [ 0*msg ]
EOL
| "#شروع"
[ "<" id ">" ]
[ "[" شرح "]" ]
[ "{" وضع "}" ]
[ "جایگزین"
| "موازی"
| یک چیز دیگر ]
EOL
1*بدن
"#پایان" EOL
plaintext ::= [ "Content-Description:"
توضیحات EOL EOL ]
1*خط
["#" EOL ]
| "#<" نوع فرعی "/" را تایپ کنید
0*(";" ویژگی "=" مقدار)
[ "(" اظهار نظر ")" ]
[ "[" شرح "]" ]
[ "{" وضع "}" ]
[ "*8bit" | "*qp" | "*b64" ]
EOL
1*خط
["#" EOL ]
line ::= "##" متن EOL
-- به عنوان "#" متن EOL تفسیر می شود
| متن EOL
با استفاده از خدمات onworks.net از mhbuildmh به صورت آنلاین استفاده کنید