| lx(1) | General Commands Manual | lx(1) |
نام (NAME)
lx - مدیر بستهای مجلل و مدرن برای زبان لُوآ (Lua)
خلاصه دستور (SYNOPSIS)
lx [--dev] [--server] [--extra-servers] [--namespace] [--lua-dir] [--lua-version] [--tree] [--cache-dir] [--data-dir] [--vendor-dir] [--variables] [--profile] [--verbose] [--no-progress] [--no-prompt] [--nvim] [--no-tfa] [--timeout] [--max-jobs] [--no-luarc] [--no-wrap-bin] [--user-agent] [-h|--help] [-V|--version] <subcommands>
توضیحات (DESCRIPTION)
یک مدیر بسته مجلل و مدرن برای زبان لُوآ (Lua).
گزینهها (OPTIONS)
- --dev
- فعالسازی مخازن فرعی در سرورهای luarocks برای مشخصات بستههای (rockspecs) نسخههای در حال توسعه.
- --server <server>
- دریافت بستهها (rocks) یا مشخصات بستهها (rockspecs) از این سرور (دارای اولویت بالاتر نسبت به فایل پیکربندی).
- --extra-servers <extra-server>
- دریافت بستهها یا مشخصات بستهها از این سرورها علاوه بر سرور اصلی (تنظیمات موجود در فایل پیکربندی را نادیده میگیرد).
- --namespace <namespace>
- تعیین فضاینام (namespace) سرور luarocks برای استفاده.
- --lua-dir <prefix>
- تعیین دایرکتوری مورد نظر برای نصب Lua در صورتی که یافت نشود.
- --lua-version <ver>
- تعیین
اینکه از
کدام نسخه
نصبشده Lua
استفاده
شود.
نسخههای
معتبر
عبارتند از:
'5.1'، '5.2'، '5.3'، '5.4'، '5.5'،
'jit' و 'jit52'. اگر
تنظیم نشده
باشد، Lux
تلاش
میکند
نسخه Lua را
شناسایی
کند:
• از پروژه جاری، در صورتی که نیازمندی دقیق نسخه Lua در آن مشخص شده باشد.
• از نسخه نصبشده Lua که در متغیر محیطی PATH در دسترس است. - --tree <tree>
- مشخص کردن درختی که عملیات روی آن انجام میشود. در یک فضای کاری (workspace)، میتوان از این گزینه برای مشخص کردن یک درخت فضای کاری مستقل (detached) استفاده کرد.
- --cache-dir <cache-dir>
- مشخص کردن دایرکتوری حافظه موقت (کَش)، برای مثال برای مانیفستهای luarocks.
- --data-dir <data-dir>
- مشخص کردن دایرکتوری داده، که درخت نصب پیشفرض کاربر در آن قرار دارد (مانند ~/.local/share/lux).
- --vendor-dir <vendor-dir>
- مشخص کردن دایرکتوری حاوی سورسکدها و RockSpecهای محلی مستقل (vendored). هنگام ساخت یا نصب یک بسته با این فلگ، Lux منابع را به جای سرور راه دور، از <vendor-dir> دریافت خواهد کرد.
- --variables <variable>
- بازنویسی
متغیرهای
پیکربندی.
مثال:
lx -v LUA=/path/to/lua ...
- --profile <profile>
- پروفایل
ساخت مورد
استفاده
هنگام
کامپایل
بستهها.
پیشفرض: release
مقادیر ممکن:
• release
• dev - --verbose
- نمایش خروجی پرجزئیات از دستورات اجرا شده و فعالسازی لاگهای DEBUG. برای فعالسازی لاگهای TRACE، متغیر محیطی RUST_LOG=trace را تنظیم کنید.
- --no-progress
- عدم چاپ نوارهای پیشرفت یا نشانگرهای چرخان (spinners).
- --no-prompt <NO_PROMPT>
- رد کردن
اعلانها و
انتخاب
گزینه
پیشفرض.
نمایش
اعلانها
بهطور
پیشفرض در
محیطهای
ترمینال/TTY
فعال است.
مقادیر ممکن:
• true
• false - --nvim
- پیکربندی lux برای نصب بستههای نئوویما (Neovim).
- --no-tfa
- غیرفعال کردن اعلانهای کد احراز هویت دومرحلهای (2FA). اکیداً توصیه میشود به جای آن 2FA را فعال کنید؛ ببینید: https://luarocks.org/settings/two-factor-auth
- --timeout <seconds>
- مدتزمان انتظار برای عملیاتهای شبکه، بر حسب ثانیه. مقدار 0 به معنای عدم وجود محدودیت زمانی است (انتظار نامحدود). مقدار پیشفرض 30 است.
- --max-jobs <MAX_JOBS>
- حداکثر اندازه بافر برای کارهای موازی، مانند دانلود rockspecها و نصب بستهها. مقدار 0 به معنای نامحدود است. مقدار پیشفرض 0 است.
- --no-luarc
- عدم تولید یا بهروزرسانی فایل .luarc.json هنگام ساخت یک پروژه.
- --no-wrap-bin
- پوششبندی نکردن (عدم wrap) اسکریپتهای اجرایی bin در Lua.
- --user-agent <USER_AGENT>
- رشته عامل کاربر (User Agent) تنظیمی هنگام ارسال درخواستهای وب. پیشفرض "lux/<version>" است.
- -h, --help
- چاپ پیام راهنما
- -V, --version
- چاپ نسخه برنامه
زیردستورها (SUBCOMMANDS)
- lux-cli-add(1)
- افزودن یک وابستگی به پروژه جاری
- lux-cli-build(1)
- ساخت/کامپایل یک پروژه
- lux-cli-check(1)
- [آزمایشی] بررسی نوع دادهها (Type check) در پروژه جاری بر اساس حاشیهنویسیهای EmmyLua/LuaCATS. از فایلهای .emmyrc.json و .luarc.json در دایرکتوری پروژه پیروی میکند.
- lux-cli-config(1)
- تعامل با پیکربندی lux
- lux-cli-debug(1)
- دستورات داخلی برای اشکالزدایی خود ابزار Lux
- lux-cli-dist(1)
- آمادهسازی پروژه Lux برای توزیع
- lux-cli-doc(1)
- نمایش مستندات مربوط به یک بسته (rock) نصبشده
- lux-cli-download(1)
- دانلود یک فایل بسته (rock) خاص از سرور luarocks
- lux-cli-fmt(1)
- فرمتبندی کدهای پروژه با استفاده از stylua
- lux-cli-generate-rockspec(1)
- تولید یک فایل rockspec از روی یک پروژه
- lux-cli-info(1)
- نمایش متادیتا برای هر بسته (rock)
- lux-cli-install(1)
- نصب یک بسته (rock) برای استفاده در سیستم
- lux-cli-install-rockspec(1)
- نصب یک rockspec محلی برای استفاده در سیستم
- lux-cli-install-lua(1)
- نصب دستی و مدیریت هدرهای Lua برای نسخههای مختلف Lua
- lux-cli-lint(1)
- بررسی خطاهای ساختاری (Lint) در پروژه جاری با استفاده از luacheck
- lux-cli-list(1)
- فهرست کردن بستههای (rocks) نصبشده فعلی
- lux-cli-lua(1)
- اجرای lua با تنظیم متغیرهای LUA_PATH و LUA_CPATH بر روی درخت lux مشخصشده
- lux-cli-new(1)
- ایجاد یک پروژه جدید Lua
- lux-cli-outdated(1)
- فهرست کردن بستههای قدیمی
- lux-cli-pack(1)
- ایجاد یک بسته فشرده (packed rock) برای توزیع، با بستهبندی سورسکدها یا فایلهای باینری
- lux-cli-path(1)
- بازگرداندن مسیر بستههای پیکربندیشده فعلی
- lux-cli-pin(1)
- سنجاق کردن یک بسته موجود، جهت جلوگیری از هرگونه بهروزرسانی آن بسته
- lux-cli-purge(1)
- حذف تمام بستههای نصبشده از یک درخت
- lux-cli-remove(1)
- حذف یک بسته از وابستگیهای lux.toml در پروژه جاری
- lux-cli-run(1)
- اجرای پروژه جاری با آرگومانهای ارائهشده
- lux-cli-exec(1)
- اجرای دستوری که توسط lux نصب شده است. اگر دستور پیدا نشود، بستهای همنام با آن دستور نصب خواهد شد.
- lux-cli-search(1)
- جستجو در سرورهای luarocks
- lux-cli-test(1)
- اجرای
مجموعه
آزمونها
در
دایرکتوری
پروژه جاری.
ابزار Lux از
باطنهای
آزمون (test backends)
زیر که در
جدول [test]
فایل lux.toml
تعیین
میشوند،
پشتیبانی
میکند:
- busted:
https://lunarmodules.github.io/busted
مثال:
[test] type = "busted" flags = [ ] # گزینههای خط فرمان اختیاری برای ارسال به busted
در صورتی که باطن آزمون تعیین نشده باشد، دستور lx test بهطور پیشفرض از busted استفاده خواهد کرد اگر:
• فایل .busted در ریشه پروژه وجود داشته باشد،
• یا busted یکی از وابستگیهای آزمون (test_dependencies) باشد.- busted-nlua:
[در حال حاضر در ویندوز دارای ایراد است] یک باطن ساخت برای اجرای آزمونهای busted با استفاده از نئوویما (Neovim) به عنوان مفسر Lua. برای آزمودن افزونههای نئوویما استفاده میشود.مثال:
[test] type = "busted-nlua" flags = [ ] # گزینههای خط فرمان اختیاری برای ارسال به busted
در صورتی که باطن آزمون تعیین نشده باشد، دستور lx test بهطور پیشفرض از busted-nlua استفاده خواهد کرد اگر:
• فایل .busted در ریشه پروژه وجود داشته باشد،
• یا busted و nlua جزو وابستگیهای آزمون (test_dependencies) باشند.- command:
نام یا مسیر فایل دستور شل که مجموعه آزمون را اجرا خواهد کرد.مثال:
[test] type = "command" command = "make" flags = [ "test" ]
- script:
مسیر نسبی به اسکریپت Lua که مجموعه آزمون را اجرا خواهد کرد.مثال:
[test] type = "script" script = "tests.lua" # انتظار وجود فایل tests.lua در ریشه پروژه را دارد flags = [ ] # آرگومانهای اختیاری ارسالی به اسکریپت آزمون
- lux-cli-uninstall(1)
- حذف یک بسته از سیستم
- lux-cli-unpin(1)
- برداشتن سنجاق از یک بسته موجود، که اجازه بهروزرسانی بسته را میدهد
- lux-cli-update(1)
- بهروزرسانی تمامی بستههای یک پروژه
- lux-cli-upload(1)
- تولید یک rockspec
برای پروژه
Lux و آپلود آن
به مخزن
عمومی luarocks.
میتوانید
یک الگوی
منبع (source template)
برای
بستههای
انتشار (release) و
توسعه (dev) در
فایل lux.toml
تعیین کنید.
مثال:
[source] url = "https://host.com/owner/$(PACKAGE)/refs/tags/$(REF).zip" dev = "git+https://host.com/owner/$(PACKAGE).git"
میتوانید از متغیرهای زیر در الگوی منبع استفاده کنید:
• $(PACKAGE): نام بسته.
• $(VERSION): نسخه بسته.
• $(REF): برچسب (tag) یا بازنگری git (اگر در یک مخزن git باشد).
• همچنین میتوانید متغیرهای محیطی را با $(<VAR_NAME>) تعیین کنید.اگر مقدار version در فایل lux.toml تنظیم نشده باشد، lux کامیت جاری را برای برچسبهای SemVer جستجو کرده و در صورت یافتن، از آن برای تولید نسخه بسته استفاده میکند.
- lux-cli-util(1)
- دستورات کمکاربرد مانند تولید فایلهای تکمیل خودکار دستورات شل و صفحات راهنما
- lux-cli-vendor(1)
- قرار دادن وابستگیهای یک پروژه یا RockSpec بهطور محلی و مستقل (Vendor کردن). هنگام ساخت یا نصب یک بسته با گزینه --vendor-dir یا گزینه پیکربندی [vendor_dir]، ابزار Lux سورسها را به جای سرور راه دور، از <vendor-dir> دریافت خواهد کرد.
- lux-cli-which(1)
- مشخص کردن اینکه کدام فایل با نام ماژول دادهشده مطابقت دارد
- lux-cli-shell(1)
- اجرای یک شل تعاملی با متغیرهای محیطی تنظیمشده PATH، LUA_PATH، LUA_CPATH و LUA_INIT
- lux-cli-sync(1)
- همگامسازی درخت پروژه با lux.toml فعلی، جهت اطمینان از نصب صحیح تمامی بستهها
- lux-cli-help(1)
- چاپ این پیام یا راهنمای زیردستور(های) دادهشده
نسخه (VERSION)
v0.43.5
نویسندگان (AUTHORS)
vhyrro <vhyrro@gmail.com>, mrcjkb <marc@jakobi.dev>
| lux-cli 0.43.5 |