wip(docs): i18n (#12681)

This commit is contained in:
Adam
2026-02-09 11:34:35 -06:00
committed by GitHub
parent f74c0339cc
commit dc53086c1e
642 changed files with 192745 additions and 509 deletions

View File

@@ -0,0 +1,386 @@
---
title: TUI
description: استخدام واجهة المستخدم الطرفية (TUI) في OpenCode.
---
import { Tabs, TabItem } from "@astrojs/starlight/components"
يوفّر OpenCode واجهة طرفية تفاعلية (TUI) للعمل على مشاريعك باستخدام نموذج لغوي كبير.
يؤدي تشغيل OpenCode إلى بدء واجهة TUI للدليل الحالي.
```bash
opencode
```
أو يمكنك تشغيلها لدليل عمل محدد.
```bash
opencode /path/to/project
```
بعد الدخول إلى واجهة TUI، يمكنك إرسال رسالة كطلب.
```text
Give me a quick summary of the codebase.
```
---
## مراجع الملفات
يمكنك الإشارة إلى الملفات في رسائلك باستخدام `@`. يُجري ذلك بحثا ضبابيا عن الملفات ضمن دليل العمل الحالي.
:::tip
يمكنك أيضا استخدام `@` للإشارة إلى الملفات في رسائلك.
:::
```text "@packages/functions/src/api/index.ts"
How is auth handled in @packages/functions/src/api/index.ts?
```
تُضاف محتويات الملف إلى المحادثة تلقائيا.
---
## أوامر Bash
ابدأ الرسالة بـ `!` لتشغيل أمر في الصدفة.
```bash frame="none"
!ls -la
```
يُضاف خرج الأمر إلى المحادثة كنتيجة أداة.
---
## الأوامر
عند استخدام واجهة OpenCode الطرفية، يمكنك كتابة `/` متبوعة باسم أمر لتنفيذ الإجراءات بسرعة. مثلا:
```bash frame="none"
/help
```
تملك معظم الأوامر أيضا اختصارا باستخدام `ctrl+x` كمفتاح قائد، حيث إن `ctrl+x` هو المفتاح القائد الافتراضي. [اعرف المزيد](/docs/keybinds).
فيما يلي جميع أوامر الشرطة المائلة المتاحة:
---
### connect
أضف موفّرا إلى OpenCode. يتيح لك اختيار أحد الموفّرين المتاحين وإضافة مفاتيح API الخاصة بهم.
```bash frame="none"
/connect
```
---
### compact
قم بضغط الجلسة الحالية. _الاسم المستعار_: `/summarize`
```bash frame="none"
/compact
```
**اختصار لوحة المفاتيح:** `ctrl+x c`
---
### details
بدّل عرض تفاصيل تنفيذ الأدوات.
```bash frame="none"
/details
```
**اختصار لوحة المفاتيح:** `ctrl+x d`
---
### editor
افتح محررا خارجيا لكتابة الرسائل. يستخدم المحرر المحدد في متغير البيئة `EDITOR`. [اعرف المزيد](#editor-setup).
```bash frame="none"
/editor
```
**اختصار لوحة المفاتيح:** `ctrl+x e`
---
### exit
اخرج من OpenCode. _الأسماء المستعارة_: `/quit`, `/q`
```bash frame="none"
/exit
```
**اختصار لوحة المفاتيح:** `ctrl+x q`
---
### export
صدّر المحادثة الحالية إلى Markdown وافتحها في المحرر الافتراضي لديك. يستخدم المحرر المحدد في متغير البيئة `EDITOR`. [اعرف المزيد](#editor-setup).
```bash frame="none"
/export
```
**اختصار لوحة المفاتيح:** `ctrl+x x`
---
### help
اعرض مربع حوار المساعدة.
```bash frame="none"
/help
```
**اختصار لوحة المفاتيح:** `ctrl+x h`
---
### init
أنشئ ملف `AGENTS.md` أو حدّثه. [اعرف المزيد](/docs/rules).
```bash frame="none"
/init
```
**اختصار لوحة المفاتيح:** `ctrl+x i`
---
### models
اعرض النماذج المتاحة.
```bash frame="none"
/models
```
**اختصار لوحة المفاتيح:** `ctrl+x m`
---
### new
ابدأ جلسة جديدة. _الاسم المستعار_: `/clear`
```bash frame="none"
/new
```
**اختصار لوحة المفاتيح:** `ctrl+x n`
---
### redo
أعِد تنفيذ رسالة تم التراجع عنها سابقا. متاح فقط بعد استخدام `/undo`.
:::tip
ستتم أيضا استعادة أي تغييرات على الملفات.
:::
داخليا، يستخدم هذا Git لإدارة تغييرات الملفات. لذلك يجب أن يكون مشروعك **مستودع Git**.
```bash frame="none"
/redo
```
**اختصار لوحة المفاتيح:** `ctrl+x r`
---
### sessions
اعرض الجلسات وبدّل بينها. _الأسماء المستعارة_: `/resume`, `/continue`
```bash frame="none"
/sessions
```
**اختصار لوحة المفاتيح:** `ctrl+x l`
---
### share
شارك الجلسة الحالية. [اعرف المزيد](/docs/share).
```bash frame="none"
/share
```
**اختصار لوحة المفاتيح:** `ctrl+x s`
---
### themes
اعرض السمات المتاحة.
```bash frame="none"
/theme
```
**اختصار لوحة المفاتيح:** `ctrl+x t`
---
### thinking
بدّل إظهار كتل التفكير/الاستدلال في المحادثة. عند تفعيله، يمكنك رؤية عملية استدلال النموذج للنماذج التي تدعم التفكير الموسّع.
:::note
يتحكم هذا الأمر فقط فيما إذا كانت كتل التفكير **تُعرض**؛ ولا يفعّل أو يعطّل قدرات الاستدلال في النموذج. لتبديل قدرات الاستدلال فعليا، استخدم `ctrl+t` للتنقّل بين إصدارات النموذج.
:::
```bash frame="none"
/thinking
```
---
### undo
تراجع عن آخر رسالة في المحادثة. يزيل أحدث رسالة للمستخدم، وكل الردود اللاحقة، وأي تغييرات على الملفات.
:::tip
سيتم أيضا التراجع عن أي تغييرات على الملفات.
:::
داخليا، يستخدم هذا Git لإدارة تغييرات الملفات. لذلك يجب أن يكون مشروعك **مستودع Git**.
```bash frame="none"
/undo
```
**اختصار لوحة المفاتيح:** `ctrl+x u`
---
### unshare
ألغِ مشاركة الجلسة الحالية. [اعرف المزيد](/docs/share#un-sharing).
```bash frame="none"
/unshare
```
---
## إعداد المحرر
يستخدم الأمران `/editor` و`/export` المحرر المحدد في متغير البيئة `EDITOR`.
<Tabs>
<TabItem label="لينكس/macOS">
```bash
# Example for nano or vim
export EDITOR=nano
export EDITOR=vim
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
export EDITOR="code --wait"
```
لجعل ذلك دائما، أضف هذا إلى ملف تهيئة الصدفة لديك؛
`~/.bashrc`، `~/.zshrc`، إلخ.
</TabItem>
<TabItem label="ويندوز (CMD)">
```bash
set EDITOR=notepad
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
set EDITOR=code --wait
```
لجعل ذلك دائما، استخدم **System Properties** > **Environment Variables**.
</TabItem>
<TabItem label="ويندوز (PowerShell)">
```powershell
$env:EDITOR = "notepad"
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
$env:EDITOR = "code --wait"
```
لجعل ذلك دائما، أضف هذا إلى ملف تهيئة PowerShell لديك.
</TabItem>
</Tabs>
تتضمن خيارات المحررات الشائعة ما يلي:
- `code` - Visual Studio Code
- `cursor` - Cursor
- `windsurf` - Windsurf
- `nvim` - محرر Neovim
- `vim` - محرر Vim
- `nano` - محرر Nano
- `notepad` - Windows Notepad
- `subl` - Sublime Text
:::note
تحتاج بعض المحررات مثل VS Code إلى التشغيل مع الخيار `--wait`.
:::
تحتاج بعض المحررات إلى وسائط سطر الأوامر لتعمل بوضع الحجب. يجعل الخيار `--wait` عملية المحرر تنتظر حتى يتم إغلاقها.
---
## الإعداد
يمكنك تخصيص سلوك واجهة TUI عبر ملف إعدادات OpenCode.
```json title="opencode.json"
{
"$schema": "https://opencode.ai/config.json",
"tui": {
"scroll_speed": 3,
"scroll_acceleration": {
"enabled": true
}
}
}
```
### الخيارات
- `scroll_acceleration` - فعّل تسارع التمرير على نمط macOS لتمرير سلس وطبيعي. عند تفعيله، تزداد سرعة التمرير مع إيماءات التمرير السريعة وتبقى دقيقة للحركات الأبطأ. **يتقدّم هذا الإعداد على `scroll_speed` ويستبدله عند تفعيله.**
- `scroll_speed` - يتحكم في سرعة تمرير واجهة TUI عند استخدام أوامر التمرير (الحد الأدنى: `1`). القيمة الافتراضية هي `3`. **ملاحظة: يتم تجاهل هذا إذا تم ضبط `scroll_acceleration.enabled` على `true`.**
---
## التخصيص
يمكنك تخصيص جوانب مختلفة من عرض واجهة TUI باستخدام لوحة الأوامر (`ctrl+x h` أو `/help`). تبقى هذه الإعدادات محفوظة عبر عمليات إعادة التشغيل.
---
#### عرض اسم المستخدم
بدّل ما إذا كان اسم المستخدم يظهر في رسائل الدردشة. يمكنك الوصول إلى هذا عبر:
- لوحة الأوامر: ابحث عن "username" أو "hide username"
- يُحفظ الإعداد تلقائيا وسيتم تذكره عبر جلسات واجهة TUI