| GAPPLICATION(1) | دستورهای کاربری | GAPPLICATION(1) |
نام (NAME)
gapplication - کنترل و مدیریت برنامههای دارای پشتیبانی از GApplication
خلاصه دستور (SYNOPSIS)
gapplication help [COMMAND] gapplication version gapplication list-apps gapplication launch <APP-ID> gapplication launch <APP-ID> [FILE…] gapplication list-actions <APP-ID> gapplication action <APP-ID> <ACTION> [PARAMETER]
توضیحات (DESCRIPTION)
دستور gapplication یک پیادهسازی خط فرمانی از سمت کلاینت رابط org.freedesktop.Application بر پایه مشخصات ورودی رومیزی (Desktop Entry Specification) مربوط به freedesktop.org است.
میتوان از gapplication برای آغاز برنامههایی که در فایلهای .desktop خود مقدار DBusActivatable را برابر با true تنظیم کردهاند استفاده کرد، و همچنین میتوان از آن برای ارسال پیامها به نمونههای در حال اجرای دیگر برنامهها بهره برد.
این امکان برای برنامهها وجود دارد که در سطر Exec فایلهای .desktop خود به gapplication ارجاع دهند تا سازگاری عقبرو با پیادهسازیهایی که مستقیماً از DBusActivatable پشتیبانی نمیکنند حفظ شود.
ابزار gapplication به عنوان بخشی از GLib عرضه میشود.
دستورها (COMMANDS)
help [COMMAND]
version
list-apps
launch <APP-ID> [FILE…]
نخستین پارامتر، شناسه برنامه (application ID) با سبک آشنای «DNS معکوس» (مانند org.gnome.app) و بدون پسوند .desktop است.
در صورت مشخص شدن پارامترهای دیگر به صورت اختیاری، با آنها به عنوان نام فایلهایی که باید باز شوند برخورد میشود که میتوانند نام فایل یا نشانی اینترنتی (URI) باشند. اگر هیچ فایلی مشخص نشود، برنامه تنها فعالسازی میشود.
list-actions <APP-ID>
action <APP-ID> <ACTION> [PARAMETER]
شناسه برنامه (مانند بالا) نخستین پارامتر است. سپس نام کنش به دنبال آن میآید.
به صورت اختیاری، به دنبال نام کنش میتواند یک پارامتر در قالب GVariant قرار گیرد که به شکل یک تکآرگومان داده میشود. اطمینان حاصل کنید که از نقلقولها (Quoting) به اندازه کافی استفاده شود.
مثالها (EXAMPLES)
از طریق خط فرمان
راهاندازی یک برنامه:
gapplication launch org.example.fooview
باز کردن یک فایل با یک برنامه:
gapplication launch org.example.fooview ~/file.foo
باز کردن چند فایل با یک برنامه:
gapplication launch org.example.fooview ~/foos/*.foo
فراخوانی یک کنش روی یک برنامه:
gapplication action org.example.fooview create
فراخوانی یک کنش روی یک برنامه، به همراه پارامتر:
gapplication action org.example.fooview show-item '"item_id_828739"'
از طریق خطوط Exec در فایلهای .desktop
رابط خط فرمانی gapplication به گونهای طراحی شده است که بتوان آن را مستقیماً از خط Exec یک فایل .desktop استفاده کرد.
ممکن است بخواهید این کار را برای برقراری سازگاری عقبرو با پیادهسازیهایی از مشخصات که روش فعالسازی با D-Bus را نمیدانند انجام دهید، بدون این که نیاز به نصب یک برنامه کمکی مجزا باشد.
مثال زیر را در نظر بگیرید:
[Desktop Entry] Version=1.1 Type=Application Name=Foo Viewer DBusActivatable=true MimeType=image/x-foo; Exec=gapplication launch org.example.fooview %F Actions=gallery;create; [Desktop Action gallery] Name=Browse Gallery Exec=gapplication action org.example.fooview gallery [Desktop Action create] Name=Create a new Foo! Exec=gapplication action org.example.fooview create
از طریق یک اسکریپت
هنگام نصب برنامهای که از فعالسازی با D-Bus پشتیبانی میکند، ممکن است همچنان بخواهید فایلی را در /usr/bin قرار دهید تا برنامهتان از درون یک پایانه قابل اجرا باشد.
امکان دارد که این فایل یک اسکریپت شل باشد. این اسکریپت میتواند آرگومانهایی مانند --help و --version را مستقیماً مدیریت کند. همچنین میتواند دیگر آرگومانهای خط فرمان را پردازش کرده و آنها را به استفاده از gapplication برای فعالسازی برنامه، باز کردن فایلها، یا فراخوانی کنشها تبدیل نماید.
در اینجا یک مثال سادهشده آورده شده است، مانند آنچه ممکن است در /usr/bin/fooview نصب شود:
#!/bin/sh
case "$1" in
--help)
echo "see ‘man fooview’ for more information"
;;
--version)
echo "fooview 1.2"
;;
--gallery)
gapplication action org.example.fooview gallery
;;
--create)
gapplication action org.example.fooview create
;;
-*)
echo "unrecognized commandline argument"
exit 1
;;
*)
gapplication launch org.example.fooview "$@"
;;
esac
همچنین ببینید (SEE ALSO)
Desktop Entry Specification https://specifications.freedesktop.org/desktop-entry-spec/latest، gdbus(1) <man:gdbus(1)>، xdg-open(1) <man:xdg-open(1)>، desktop-file-validate(1) <man:desktop-file-validate(1)>
| سپتامبر ۲۰۲۶ | glib2 |