NHEKO(1) General Commands Manual NHEKO(1)

nheko - کلاینت دسکتاپ برای Matrix با استفاده از Qt و C++17

nheko [OPTIONS]

انگیزهٔ پشت این پروژه، ارائهٔ یک برنامهٔ دسکتاپ بومی برای Matrix است که بیشتر شبیه به یک برنامهٔ پیام‌رسان رایج (مانند Element، Telegram و غیره) باشد و کمتر به یک کلاینت IRC شباهت داشته باشد.

-h, --help

راهنمای مربوط به گزینه‌های خط فرمان را نمایش می‌دهد.

--help-all

راهنما را به همراه گزینه‌های مختص Qt نمایش می‌دهد.

-v, --version

اطلاعات نسخه را نمایش می‌دهد.

--debug

نام مستعاری برای --log-level trace.

-l, --log-level <level>

سطح گزارش‌گیری سراسری، یا فهرستی جداشده با کاما از جفت‌های <component>=<level>، یا هر دو را تعیین می‌کند. برای مثال، جهت تنظیم سطح گزارش‌گیری پیش‌فرض روی warn اما غیرفعال کردن گزارش‌گیری برای مؤلفهٔ ui، مقدار warn,ui=off را ارسال کنید.

سطوح: trace debug info warning error critical off

مؤلفه‌ها: crypto db mtx net qml ui

سطوح گزارش‌گیری را می‌توان در متغیر محیطی NHEKO_LOG_LEVEL نیز با استفاده از همان نحو تنظیم کرد. این گزینهٔ خط فرمان آن را بازنویسی خواهد کرد.

-L, --log-type <type>

نوع خروجی گزارش‌گیری را تعیین می‌کند. استفاده از فهرستی جداشده با کاما مجاز است. پیش‌فرض file,stderr است.

انواع: file stderr none

نوع گزارش‌گیری را می‌توان در متغیر محیطی NHEKO_LOG_TYPE نیز تعیین کرد که توسط این گزینهٔ خط فرمان بازنویسی خواهد شد.

-p <profile>, --profile <profile>

یک نمایهٔ یکتا ایجاد می‌کند که به شما امکان می‌دهد به‌طور هم‌زمان وارد چندین حساب کاربری شوید و چندین نمونه از nheko را اجرا کنید. از default برای شروع با نمایهٔ پیش‌فرض استفاده کنید.

-C, --compact

امکان کاهش حجم و فشرده‌سازی پایگاه‌داده را فراهم می‌کند، زیرا پایگاه‌های دادهٔ LMDB هنگام حذف داده‌ها به‌طور خودکار کوچک نمی‌شوند. احتمالاً امکان بازیابی داده‌ها را در صورت خرابی پایگاه‌داده فراهم می‌سازد.

استیکرها و اموجی‌های سفارشی در بسته‌های تصویر سازمان‌دهی شده‌اند. یک بسته تصویر کاربر وجود دارد که تنها حساب کاربری شما به آن دسترسی دارد و بسته‌های تصویر اتاق نیز وجود دارند که برای تمام افراد حاضر در اتاقی که در آن تعریف شده‌اند، در دسترس هستند. شما می‌توانید یک بسته تصویر اتاق را به‌صورت سراسری فعال کنید تا در هر اتاقی قابل استفاده باشد.

برای مدیریت بسته‌های تصویر در nheko، به تنظیمات اتاق رفته و وارد Sticker & Emote Settings شوید. بسته Private (بسته تصویر کاربری شما) را مشاهده خواهید کرد و می‌توانید آن را در آنجا ویرایش کنید. شناسه Shortcode یک شناسه یکتا است که برای انتخاب تصویر از آن استفاده می‌کنید و Body متن جایگزینی است که در کلاینت‌هایی که از تصاویر پشتیبانی نمی‌کنند نمایش داده می‌شود (مانند برچسب alt در تصاویر HTML).

اگر مجوزهای لازم را داشته باشید، می‌توانید با دکمه موجود در پایین فهرست بسته‌های تصویر، بسته‌های اتاق جدیدی ایجاد کنید. این بسته‌ها همانند بسته کاربری هستند، اما می‌توانید هر تعداد که مایلید ایجاد کنید و تمام افراد حاضر در اتاق می‌توانند از آن‌ها استفاده کنند. ممکن است ایجاد یک اتاق اضافه صرفاً برای بسته‌های تصویر شما، ایده خوبی برای آسان‌تر کردن اشتراک‌گذاری باشد.

تکمیل‌کننده‌ها هنگامی که آن‌ها را در خط ورودی تایپ می‌کنید، پنجره‌ای بازشو حاوی گزینه‌های پیشنهادی برای تکمیل باز می‌کنند.

@

باز کردن تکمیل‌کننده نام کاربری.

#

باز کردن تکمیل‌کننده اتاق.

:

باز کردن انتخاب‌گر اموجی. اموجی‌های Unicode مستقیماً درج می‌شوند. برای اموجی‌های سفارشی، کد HTML آن‌ها در خط ورودی درج می‌شود. می‌توانید اموجی‌های سفارشی را در تنظیمات اتاق پیکربندی کنید.

Ctrl-Up/Ctrl-Down

پیمایش در فهرست اتاق‌ها.

Ctrl-W

بستن اتاق باز فعلی.

Ctrl-K

جستجو و انتخاب اتاق‌ها از فهرست اتاق‌ها.

Alt-A, Ctrl-Shift-A

انتخاب اتاق بعدی دارای فعالیت.

PgUp/PgDn

پیمایش صفحه به صفحه در خط زمانی.

Alt-Up/Alt-Down

پاسخ به یک پیام.

Up/Down

ویرایش یک پیام.

Ctrl-E

ویرایش پیامی که در حال حاضر برای پاسخ انتخاب شده است.

Alt-F

هدایت کردن (فوروارد) پیامی که در حال حاضر برای پاسخ انتخاب شده است.

Ctrl-P/Ctrl-N

ورود مجدد پیام قبلی/بعدی.

Ctrl-U

پاک کردن تمام محتوای خط ورودی.

Ctrl-Left/Ctrl-Right

پرش یک کلمه به چپ/راست در خط ورودی.

Shift-Enter

درج شکست خط (خط جدید).

Enter

ارسال پیام.

دستورها تنها زمانی کار می‌کنند که در ابتدای متن استفاده شوند.

/me <message>

ارسال پیام به‌صورت یک emote که نام کاربری شما در ابتدای آن قرار می‌گیرد.

/react <text>

ارسال پیام به‌عنوان واکنش (reaction) هنگامی که در حال پاسخ دادن به یک پیام هستید.

/md <message>

اجبار به استفاده از Markdown هنگام ارسال پیام فعلی.

/cmark <message>

بیشتر افزونه‌های ما برای cmark (CommonMark) را غیرفعال می‌کند؛ از جمله رفتار newline-in-input = newline-in-output، خط‌خوردگی (strikethrough) و اسپویلرها. همچنان می‌توانید با ۲ فاصله یا یک بک‌اسلش پیش از انتهای خط، خط جدید ایجاد کنید یا عناصر HTML درج نمایید.

/plain <message>

اجبار به استفاده از متن ساده (plain text) هنگام ارسال پیام فعلی.

/rainbow <message>

ارسال پیام با رنگ‌های رنگین‌کمانی.

/rainbowme <message>

ارسال پیام به‌صورت یک emote رنگین‌کمانی که نام کاربری شما در ابتدای آن قرار می‌گیرد.

/notice <message>

ارسال پیام در قالب یک اعلان (notice).

/rainbownotice <notice>

ارسال پیام در قالب یک اعلان رنگین‌کمانی.

/join <roomname> [reason]

پیوستن به یک اتاق. reason اختیاری است.

/knock <roomname> [reason]

درخواست برای پیوستن به یک اتاق. reason اختیاری است.

/part, /leave [reason]

ترک کردن اتاق فعلی. reason اختیاری است.

/invite <username> [reason]

دعوت از یک کاربر به اتاق فعلی. reason اختیاری است.

/kick <username> [reason]

اخراج یک کاربر از اتاق فعلی. reason اختیاری است. همچنین می‌توانید با مشخص نکردن username، کاربری را که به او پاسخ می‌دهید اخراج کنید.

/ban <username> [reason]

مسدود کردن یک کاربر از اتاق فعلی. reason اختیاری است. همچنین می‌توانید با مشخص نکردن username، کاربری را که به او پاسخ می‌دهید مسدود کنید.

/unban <username> [reason]

رفع مسدودیت یک کاربر. reason اختیاری است. همچنین می‌توانید با مشخص نکردن username، کاربری را که به او پاسخ می‌دهید رفع مسدودیت کنید.

/redact <username> [reason]

تمام پیام‌های قابل مشاهده کاربر مشخص‌شده را حذف (redact) می‌کند. خیلی سریع با محدودیت نرخ درخواست مواجه خواهید شد.

/redact <eventid> [reason]

یک رویداد خاص را حذف (redact) می‌کند. همچنین می‌توانید با مشخص نکردن هیچ‌یک از eventid یا username، رویدادی را که به آن پاسخ می‌دهید حذف کنید.

/roomnick <roomname>

تغییر نام مستعار خود در یک اتاق مشخص.

/glitch <message>

یک جلوه گلیچ (glitch) بر روی message داده‌شده اعمال می‌کند. توجه داشته باشید که این کار منشن‌ها، HTML و برخی قالب‌بندی‌های Markdown را در پیام شما مختل می‌کند.

/gradualglitch <message>

یک جلوه گلیچ به‌مرور شدیدتر بر روی message اعمال می‌کند. مجدداً، این کار منشن‌ها، HTML و برخی قالب‌بندی‌های Markdown را مختل خواهد کرد.

/shrug [message]

عبارت ¯\_(ツ)_/¯ را به همراه یک message اختیاری در ادامه درج می‌کند.

/fliptable

عبارت (╯°□°)╯︵ ┻━┻ را درج می‌کند.

/unfliptable

عبارت ┯━┯╭( º _ º╭) را درج می‌کند.

/sovietflip

عبارت ノ┬─┬ノ ︵ ( \\o°o)\\ را درج می‌کند.

/ignore <username>

یک کاربر را نادیده می‌گیرد؛ دعوت‌های ارسال‌شده از سوی او نیز رد می‌شوند.

/unignore <username>

نادیده‌گرفتن یک کاربر را متوقف می‌کند.

/blockinvites <username>|<roomid>|<servername>|all

تمامی دعوت‌ها را یا به‌صورت پیش‌فرض ("all") یا از سوی یک کاربر یا سرور خاص یا به یک اتاق خاص مسدود می‌کند.

/allowinvites <username>|<roomid>|<servername>|all

تمامی دعوت‌ها را یا به‌صورت پیش‌فرض ("all") یا از سوی یک کاربر یا سرور خاص یا به یک اتاق خاص مجاز می‌کند.

/clear-timeline

همه‌ی پیام‌ها به جز جدیدترین پیام‌ها را از خط زمانی رندرشده‌ی فعلی پاک کرده و سپس آن را دوباره از سرور واکشی می‌کند؛ می‌تواند برای رفع برخی از مشکلات حافظه‌ی موقت (cache) به کار رود.

/reset-state

تمام رویدادهای وضعیت در اتاق فعلی را دوباره واکشی می‌کند؛ می‌تواند برای رفع برخی از مشکلات حافظه‌ی موقت (cache) به کار رود.

/rotate-megolm-session

کلید رمزگذاری مورد استفاده برای ارسال پیام‌های رمزگذاری‌شده در یک اتاق را تعویض می‌کند (rotate).

/goto <address>

address می‌تواند یکی از موارد زیر باشد:

<event ID>

به رویدادی با شناسه‌ی مشخص‌شده پرش کرده و آن را برجسته می‌کند.

<message index>

به پیامی با نمایه‌ی (index) مشخص‌شده پرش کرده و آن را برجسته می‌کند.

<Matrix URI>

با Matrix URI به‌گونه‌ای رفتار می‌کند که گویی روی آن کلیک کرده‌اید.

/converttodm

یک اتاق را به یک گفتگوی مستقیم تبدیل می‌کند.

/converttoroom

یک گفتگوی مستقیم را به یک اتاق عادی تبدیل می‌کند.

خط جدید (\n)

یک خط جدیدِ تکی، به‌جای فاصله، به <br> تبدیل خواهد شد.

~text~

متن را خط‌خورده می‌کند. خروجی HTML: <del>text</del>

||spoiler warning|text||

متن را پنهان کرده و یک هشدار اسپویلر اختیاری تنظیم می‌کند. توجه داشته باشید که Nheko در حال حاضر هشدار اسپویلر را نمایش نمی‌دهد. خروجی HTML: <span data-mx-spoiler="spoiler">text</span>

NHEKO_ALLOW_QML_DISK_CACHE

برنامه Nheko به‌طور پیش‌فرض حافظه نهان (کش) دیسک qml را برای جلوگیری از کرش کردن غیرفعال می‌کند. این متغیر به شما امکان می‌دهد آن را با مسئولیت خودتان دوباره فعال کنید.

فایل پیکربندی

${XDG_CONFIG_HOME:-~/.config}/nheko/nheko.conf

فایل لاگ

${XDG_CACHE_HOME:-~/.cache}/nheko/nheko/nheko.log

پایگاه‌داده

${XDG_DATA_HOME:-~/.local/share}/nheko/nheko/*/data.mdb

کش رسانه

${XDG_CACHE_HOME:-~/.cache}/nheko/nheko/media_cache

لطفاً مشکلات را در سامانه ردیابی باگ ما در https://github.com/Nheko-Reborn/nheko/issues گزارش دهید.

2022-01-27 nheko 0.12.1-dc910109