.\" $Id: lua.man,v 1.11 2006/01/06 16:03:34 lhf Exp $ .TH LUA 1 "$Date: 2006/01/06 16:03:34 $" .SH "نام (NAME)" lua \- مفسر زبان Lua .SH "خلاصه دستور (SYNOPSIS)" .B lua [ .I options ] [ .I script [ .I args ] ] .SH "توضیحات (DESCRIPTION)" .B lua مفسر مستقل زبان Lua است. این ابزار برنامه‌های Lua را چه به شکل متن مبدأ و چه به صورت دودویی (باینری) از پیش کامپایل‌شده، بارگذاری و اجرا می‌کند. (دودویی‌های از پیش کامپایل‌شده توسط .BR luac ، کامپایلر Lua، تولید می‌شوند.) .B lua می‌تواند هم به عنوان مفسر دسته‌ای (batch) و هم به صورت تعاملی استفاده شود. .LP .I options داده‌شده (به زیر مراجعه کنید) اجرا شده و سپس برنامهٔ Lua در فایل .I script بارگذاری و اجرا می‌شود. .I args ارائه‌شده به صورت رشته‌هایی در یک جدول سراسری با نام .BR arg در دسترس .I script قرار می‌گیرند. اگر این آرگومان‌ها شامل فاصله یا نویسه‌های ویژهٔ پوسته باشند، باید در کوتیشن (نقل‌قول) قرار گیرند (اما توجه داشته باشید که کوتیشن‌ها توسط پوسته حذف خواهند شد). آرگومان‌ها در .B arg از ۰ شروع می‌شوند که شامل رشتهٔ .RI ' script ' است. اندیس آخرین آرگومان در .BR arg.n ذخیره می‌شود. آرگومان‌های ارائه‌شده در خط فرمان پیش از .IR script ، از جمله نام مفسر، در اندیس‌های منفی در .BR arg در دسترس هستند. .LP در بدو شروع، حتی پیش از پردازش خط فرمان، اگر متغیر محیطی .BR LUA_INIT تعریف شده باشد، .B lua محتوای آن را اجرا می‌کند. اگر مقدار .B LUA_INIT به شکل .RI '@ filename ' باشد، آن‌گاه .I filename اجرا می‌شود. در غیر این صورت، این رشته به عنوان یک دستور Lua در نظر گرفته شده و اجرا می‌شود. .LP گزینه‌ها با .B '\-' شروع می‌شوند و در ادامه توضیح داده شده‌اند. می‌توانید از .B "'\--'" برای نشان دادن پایان گزینه‌ها استفاده کنید. .LP اگر هیچ آرگومانی داده نشود، در صورتی که ورودی استاندارد یک ترمینال باشد .B "\-v \-i" فرض می‌شود؛ در غیر این صورت، .B "\-" فرض می‌شود. .LP در حالت تعاملی، .B lua به کاربر اعلان نشان می‌دهد، سطرها را از ورودی استاندارد می‌خواند، و آن‌ها را به محض خوانده شدن اجرا می‌کند. اگر سطری حاوی یک دستور کامل نباشد، یک اعلان ثانویه نمایش داده می‌شود و خواندن سطرها تا زمان تشکیل یک دستور کامل یا یافتن یک خطای نحوی ادامه می‌یابد. بنابراین، یک روش برای متوقف کردن خواندن یک دستور ناتمام، تحمیل یک خطای نحوی است: افزودن یک .B ';' در میانهٔ یک دستور، روشی مطمئن برای ایجاد خطای نحوی است (به جز داخل رشته‌های چندخطی و توضیحات؛ این موارد باید به صراحت بسته شوند). اگر سطری با .BR '=' شروع شود، .B lua مقادیر تمام عبارت‌های موجود در ادامهٔ سطر را نمایش می‌دهد. عبارت‌ها باید با کاما از هم جدا شوند. اعلان اولیه مقدار متغیر سراسری .BR _PROMPT است، در صورتی که این مقدار یک رشته باشد؛ در غیر این صورت، از اعلان پیش‌فرض استفاده می‌شود. به طور مشابه، اعلان ثانویه مقدار متغیر سراسری .BR _PROMPT2 است. بنابراین، برای تغییر اعلان‌ها، متغیر مربوطه را به رشتهٔ دلخواه خود تنظیم کنید. می‌توانید این کار را پس از فراخوانی مفسر یا در خط فرمان انجام دهید (اما در این حالت اگر رشتهٔ اعلان شامل فاصله باشد باید مراقب کوتیشن‌ها باشید؛ در غیر این صورت ممکن است پوسته دچار اشتباه شود). اعلان‌های پیش‌فرض "> " و ">> " هستند. .SH "گزینه‌ها (OPTIONS)" .TP .B \- بارگذاری و اجرای ورودی استاندارد به عنوان یک فایل، یعنی به صورت غیرتعاملی، حتی زمانی که ورودی استاندارد یک ترمینال باشد. .TP .BI \-e " stat" اجرای دستور .IR stat . اگر .I stat شامل فاصله، کوتیشن یا دیگر نویسه‌های ویژهٔ پوسته باشد، لازم است آن را داخل کوتیشن قرار دهید. .TP .B \-i ورود به حالت تعاملی پس از اجرای .IR script . .TP .BI \-l " name" فراخوانی .BI require(' name ') پیش از اجرای .IR script . معمولاً برای بارگذاری کتابخانه‌ها استفاده می‌شود. .TP .B \-v نمایش اطلاعات نسخه. .SH "همچنین ببینید (SEE ALSO)" .BR luac (1) .br http://www.lua.org .SH "خطاها (DIAGNOSTICS)" پیام‌های خطا باید گویا و واضح باشند. .SH "نویسندگان (AUTHORS)" R. Ierusalimschy، L. H. de Figueiredo و W. Celes .\" EOF