Skip to content

Commit 5227b3a

Browse files
authored
Merge pull request #13 from QwenLM/sync
feat: Automatically sync documentation for qwen-code version 0.0.9
2 parents 5599a7d + d5827f6 commit 5227b3a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

98 files changed

+3511
-1366
lines changed

website/app/[lang]/layout.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ import { Banner, Head } from "nextra/components";
66
import { getPageMap } from "nextra/page-map";
77
import { LanguageDropdown } from "../../src/components/language-dropdown";
88
import type { FC, ReactNode } from "react";
9+
import fs from "fs";
10+
import path from "path";
911

1012
type LayoutProps = Readonly<{
1113
children: ReactNode;
@@ -20,10 +22,7 @@ const LanguageLayout: FC<LayoutProps> = async ({ children, params }) => {
2022

2123
let sourcePageMap = await getPageMap(`/${lang}`);
2224
//@ts-ignore
23-
const { children: pageMap } = sourcePageMap.find((page) => {
24-
//@ts-ignore
25-
return page.name === lang;
26-
});
25+
// 用fs模块将sourcePageMap保存到本地
2726

2827
const banner = (
2928
<Banner storageKey='qwen-code-announce'>
@@ -81,7 +80,7 @@ const LanguageLayout: FC<LayoutProps> = async ({ children, params }) => {
8180
defaultMenuCollapseLevel: 1,
8281
autoCollapse: true,
8382
}}
84-
pageMap={pageMap}
83+
pageMap={sourcePageMap}
8584
nextThemes={{ defaultTheme: "light" }}
8685
>
8786
{children}

website/content/de/_meta.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
export default {
2+
index: "Willkommen zur Qwen Code Dokumentation",
3+
deployment: "Ausführung & Bereitstellung",
4+
architecture: "Architektur-Übersicht",
5+
cli: "CLI Nutzungsanleitung",
6+
core: "Kern-Details",
7+
tools: "Tools Sammlung",
8+
checkpointing: "Checkpointing-Funktion",
9+
extension: "Erweiterungs-Entwicklung",
10+
"ide-integration": "IDE Integration",
11+
telemetry: "Observabilität",
12+
examples: "Beispielcode",
13+
npm: "Paket-Management",
14+
"gemini-ignore": "Ignorier-Datei Konfiguration",
15+
"integration-tests": "Integrationstests",
16+
"keyboard-shortcuts": "Tastaturkürzel",
17+
sandbox: "Sandbox-Mechanismus",
18+
"issue-and-pr-automation": "Automatisierte Behandlung",
19+
troubleshooting: "Fehlerbehebung",
20+
"tos-privacy": "Nutzungsbedingungen & Datenschutz",
21+
Uninstall: "Deinstallations-Anleitung",
22+
};

website/content/de/cli/_meta.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
export default {
2+
index: "CLI Übersicht",
3+
commands: "Befehls-Referenz",
4+
configuration: "Konfigurationsanleitung",
5+
authentication: "Authentifizierungs-Setup",
6+
"openai-auth": "OpenAI Authentifizierung",
7+
"token-caching": "Token Caching",
8+
themes: "Theme-Konfiguration",
9+
tutorials: "Nutzungs-Tutorials",
10+
};

website/content/de/cli/configuration.md

Lines changed: 105 additions & 95 deletions
Large diffs are not rendered by default.

website/content/de/core/_meta.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
export default {
2+
index: "Kern-Übersicht",
3+
"tools-api": "Tools API",
4+
memport: "Memory Import Processor",
5+
};

website/content/de/deployment.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -35,16 +35,16 @@ Dies ist die empfohlene Methode für Endbenutzer, um Qwen Code zu installieren.
3535

3636
### 2. Ausführen in einer Sandbox (Docker/Podman)
3737

38-
Aus Gründen der Sicherheit und Isolation kann Qwen Code innerhalb eines Containers ausgeführt werden. Dies ist die Standardmethode, wie die CLI Tools ausführt, die Nebenwirkungen haben könnten.
38+
Aus Gründen der Sicherheit und Isolation kann Qwen Code innerhalb eines Containers ausgeführt werden. Dies ist die Standardmethode, wie die CLI Tools mit möglichen Nebenwirkungen ausführt.
3939

4040
- **Direkt aus der Registry:**
41-
Du kannst das veröffentlichte Sandbox-Image direkt ausführen. Dies ist nützlich für Umgebungen, in denen du nur Docker zur Verfügung hast und die CLI ausführen möchtest.
41+
Du kannst das veröffentlichte Sandbox-Image direkt ausführen. Dies ist nützlich für Umgebungen, in denen du nur Docker installiert hast und die CLI ausführen möchtest.
4242
```bash
43-
# Das veröffentlichte Sandbox-Image ausführen
44-
docker run --rm -it ghcr.io/qwenlm/qwen-code:0.0.7
43+
# Run the published sandbox image
44+
docker run --rm -it ghcr.io/qwenlm/qwen-code:0.0.9
4545
```
4646
- **Verwendung des `--sandbox` Flags:**
47-
Wenn du Qwen Code lokal installiert hast (gemäß der oben beschriebenen Standardinstallation), kannst du es anweisen, innerhalb des Sandbox-Containers ausgeführt zu werden.
47+
Wenn du Qwen Code lokal installiert hast (gemäß der oben beschriebenen Standardinstallation), kannst du es anweisen, innerhalb des Sandbox-Containers zu laufen.
4848
```bash
4949
qwen --sandbox -y -p "your prompt here"
5050
```
@@ -58,11 +58,11 @@ Contributor des Projekts möchten die CLI direkt aus dem Quellcode ausführen.
5858
- **Entwicklungsmodus:**
5959
Diese Methode bietet Hot-Reloading und ist nützlich für die aktive Entwicklung.
6060
```bash
61-
# Vom Root des Repositories
61+
# Vom Root des Repositories aus
6262
npm run start
6363
```
6464
- **Produktionsähnlicher Modus (Verknüpftes Package):**
65-
Diese Methode simuliert eine globale Installation, indem sie dein lokales Package verknüpft. Sie ist nützlich, um einen lokalen Build in einem Produktions-Workflow zu testen.
65+
Diese Methode simuliert eine globale Installation, indem sie das lokale Package verknüpft. Sie ist nützlich, um einen lokalen Build in einem Produktions-Workflow zu testen.
6666

6767
```bash
6868
# Verknüpfe das lokale CLI-Package mit deinen globalen node_modules
@@ -76,7 +76,7 @@ Contributor des Projekts möchten die CLI direkt aus dem Quellcode ausführen.
7676

7777
### 4. Ausführen des neuesten Qwen Code Commits von GitHub
7878

79-
Du kannst die aktuellste Version von Qwen Code direkt aus dem GitHub-Repository ausführen. Das ist nützlich, um Features zu testen, die sich noch in der Entwicklung befinden.
79+
Du kannst die aktuellste committete Version von Qwen Code direkt aus dem GitHub-Repository ausführen. Das ist nützlich, um Features zu testen, die sich noch in der Entwicklung befinden.
8080

8181
```bash
8282

@@ -103,11 +103,11 @@ Es gibt zwei verschiedene Build-Prozesse, die je nach Verteilungskanal verwendet
103103

104104
- **NPM-Veröffentlichung:** Für die Veröffentlichung im NPM-Registry wird der TypeScript-Quellcode in `@qwen-code/qwen-code-core` und `@qwen-code/qwen-code` mithilfe des TypeScript Compilers (`tsc`) in Standard-JavaScript transpiliert. Das resultierende `dist/`-Verzeichnis wird im NPM-Paket veröffentlicht. Dies ist ein Standardansatz für TypeScript-Bibliotheken.
105105

106-
- **GitHub `npx`-Ausführung:** Beim direkten Ausführen der neuesten Qwen Code-Version von GitHub wird ein anderer Prozess durch das `prepare`-Script in der `package.json` ausgelöst. Dieses Script verwendet `esbuild`, um die gesamte Anwendung und ihre Abhängigkeiten in eine einzelne, eigenständige JavaScript-Datei zu bündeln. Dieses Bundle wird dynamisch auf dem Rechner des Benutzers erzeugt und nicht im Repository gespeichert.
106+
- **GitHub `npx`-Ausführung:** Beim direkten Ausführen der neuesten Qwen Code-Version von GitHub wird ein anderer Prozess durch das `prepare`-Skript in der `package.json` ausgelöst. Dieses Skript verwendet `esbuild`, um die gesamte Anwendung und ihre Abhängigkeiten in eine einzelne, eigenständige JavaScript-Datei zu bündeln. Dieses Bundle wird dynamisch auf dem Rechner des Benutzers erstellt und nicht im Repository versioniert.
107107

108108
**Docker-Sandbox-Image**
109109

110-
Die Docker-basierte Ausführungsmethode wird vom `qwen-code-sandbox`-Container-Image unterstützt. Dieses Image wird in einer Container-Registry veröffentlicht und enthält eine vorinstallierte, globale Version von Qwen Code.
110+
Die Docker-basierte Ausführungsmethode wird vom Container-Image `qwen-code-sandbox` unterstützt. Dieses Image wird in einer Container-Registry veröffentlicht und enthält eine vorinstallierte, globale Version von Qwen Code.
111111

112112
## Release-Prozess
113113

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export default {
2+
"proxy-script": "Proxy-Script Beispiel",
3+
};
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
# IDE-Integration
2+
3+
Die Gemini CLI kann in deine IDE integriert werden, um ein nahtloseres und kontextbezogenes Erlebnis zu bieten. Diese Integration ermöglicht es der CLI, deinen Workspace besser zu verstehen und leistungsstarke Features wie native Diff-Ansicht direkt im Editor zu aktivieren.
4+
5+
Derzeit wird als einzige IDE [Visual Studio Code](https://code.visualstudio.com/) sowie andere Editoren unterstützt, die VS Code-Erweiterungen unterstützen.
6+
7+
## Funktionen
8+
9+
- **Workspace-Kontext:** Die CLI erhält automatisch Informationen über deinen Workspace, um relevantere und genauere Antworten zu liefern. Dieser Kontext umfasst:
10+
- Die **10 zuletzt geöffneten Dateien** in deinem Workspace.
11+
- Deine aktuelle Cursor-Position.
12+
- Jeden Text, den du ausgewählt hast (bis zu einem Limit von 16 KB; längere Selektionen werden gekürzt).
13+
14+
- **Native Diff-Ansicht:** Wenn Gemini Code-Änderungen vorschlägt, kannst du die Änderungen direkt in der nativen Diff-Ansicht deiner IDE betrachten. So kannst du die vorgeschlagenen Änderungen nahtlos überprüfen, bearbeiten und entweder akzeptieren oder ablehnen.
15+
16+
- **VS Code Commands:** Du kannst direkt über die VS Code Command Palette (`Cmd+Shift+P` oder `Ctrl+Shift+P`) auf die Funktionen der Gemini CLI zugreifen:
17+
- `Gemini CLI: Run`: Startet eine neue Gemini CLI-Sitzung im integrierten Terminal.
18+
- `Gemini CLI: Accept Diff`: Akzeptiert die Änderungen im aktiven Diff-Editor.
19+
- `Gemini CLI: Close Diff Editor`: Lehnt die Änderungen ab und schließt den aktiven Diff-Editor.
20+
- `Gemini CLI: View Third-Party Notices`: Zeigt die Third-Party-Hinweise für die Erweiterung an.
21+
22+
## Installation und Einrichtung
23+
24+
Es gibt drei Möglichkeiten, die IDE-Integration einzurichten:
25+
26+
### 1. Automatischer Hinweis (Empfohlen)
27+
28+
Wenn du Gemini CLI innerhalb eines unterstützten Editors ausführst, erkennt es automatisch deine Umgebung und fordert dich auf, eine Verbindung herzustellen. Wenn du mit "Yes" antwortest, wird automatisch das notwendige Setup ausgeführt, inklusive Installation der Companion-Extension und Aktivierung der Verbindung.
29+
30+
### 2. Manuelle Installation über CLI
31+
32+
Falls du die Aufforderung zuvor abgelehnt hast oder die Extension manuell installieren möchtest, kannst du folgenden Befehl innerhalb von Gemini CLI ausführen:
33+
34+
```
35+
/ide install
36+
```
37+
38+
Dieser Befehl findet die richtige Extension für deine IDE und installiert sie.
39+
40+
### 3. Manuelle Installation aus einem Marketplace
41+
42+
Du kannst die Extension auch direkt aus einem Marketplace installieren.
43+
44+
- **Für Visual Studio Code:** Installiere sie über den [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=google.gemini-cli-vscode-ide-companion).
45+
- **Für VS Code Forks:** Um Forks von VS Code zu unterstützen, ist die Extension auch im [Open VSX Registry](https://open-vsx.org/extension/google/gemini-cli-vscode-ide-companion) veröffentlicht. Befolge die Anweisungen deines Editors, um Extensions aus diesem Registry zu installieren.
46+
47+
Nach jeder Installationsmethode wird empfohlen, ein neues Terminal-Fenster zu öffnen, um sicherzustellen, dass die Integration korrekt aktiviert ist. Sobald die Installation abgeschlossen ist, kannst du `/ide enable` verwenden, um dich zu verbinden.
48+
49+
## Verwendung
50+
51+
### Aktivierung und Deaktivierung
52+
53+
Du kannst die IDE-Integration direkt über die CLI steuern:
54+
55+
- Um die Verbindung zur IDE zu aktivieren, führe aus:
56+
```
57+
/ide enable
58+
```
59+
- Um die Verbindung zu deaktivieren, führe aus:
60+
```
61+
/ide disable
62+
```
63+
64+
Wenn aktiviert, wird der Gemini CLI automatisch versuchen, sich mit der IDE-Companion-Erweiterung zu verbinden.
65+
66+
### Status prüfen
67+
68+
Um den Verbindungsstatus zu prüfen und den Kontext anzuzeigen, den die CLI von der IDE erhalten hat, führe aus:
69+
70+
```
71+
/ide status
72+
```
73+
74+
Wenn verbunden, zeigt dieser Befehl die IDE an, mit der die Verbindung besteht, sowie eine Liste der zuletzt geöffneten Dateien, die bekannt sind.
75+
76+
(Hinweis: Die Dateiliste ist auf 10 zuletzt aufgerufene Dateien innerhalb deines Workspaces beschränkt und enthält nur lokale Dateien auf der Festplatte.)
77+
78+
### Arbeiten mit Diffs
79+
80+
Wenn du Gemini bittest, eine Datei zu ändern, kann es direkt eine Diff-Ansicht in deinem Editor öffnen.
81+
82+
**Um ein Diff zu akzeptieren**, kannst du eine der folgenden Aktionen durchführen:
83+
84+
- Klicke auf das **Häkchen-Symbol** in der Titelleiste des Diff-Editors.
85+
- Speichere die Datei (z. B. mit `Cmd+S` oder `Ctrl+S`).
86+
- Öffne die Command Palette und führe **Gemini CLI: Accept Diff** aus.
87+
- Antworte mit `yes` in der CLI, wenn du dazu aufgefordert wirst.
88+
89+
**Um ein Diff abzulehnen**, kannst du:
90+
91+
- Klicke auf das **'x'-Symbol** in der Titelleiste des Diff-Editors.
92+
- Schließe den Diff-Editor-Tab.
93+
- Öffne die Command Palette und führe **Gemini CLI: Close Diff Editor** aus.
94+
- Antworte mit `no` in der CLI, wenn du dazu aufgefordert wirst.
95+
96+
Du kannst auch **die vorgeschlagenen Änderungen direkt in der Diff-Ansicht anpassen**, bevor du sie akzeptierst.
97+
98+
Wenn du in der CLI „Yes, allow always“ auswählst, werden die Änderungen nicht mehr im IDE angezeigt, da sie dann automatisch akzeptiert werden.
99+
100+
## Verwendung mit Sandboxing
101+
102+
Wenn du das Gemini CLI innerhalb einer Sandbox verwendest, beachte bitte Folgendes:
103+
104+
- **Unter macOS:** Die IDE-Integration benötigt Netzwerkzugriff, um mit der IDE-Begleiter-Erweiterung zu kommunizieren. Du musst ein Seatbelt-Profil verwenden, das den Netzwerkzugriff erlaubt.
105+
- **In einem Docker-Container:** Wenn du das Gemini CLI innerhalb eines Docker- (oder Podman-) Containers ausführst, kann sich die IDE-Integration immer noch mit der VS Code-Erweiterung verbinden, die auf deinem Host-Rechner läuft. Das CLI ist so konfiguriert, dass es den IDE-Server automatisch unter `host.docker.internal` findet. Normalerweise ist keine spezielle Konfiguration erforderlich, aber du musst möglicherweise sicherstellen, dass dein Docker-Netzwerksetup Verbindungen vom Container zum Host zulässt.
106+
107+
## Fehlerbehebung
108+
109+
Falls du Probleme mit der IDE-Integration hast, findest du hier einige häufige Fehlermeldungen und deren Lösungen.
110+
111+
### Verbindungsfehler
112+
113+
- **Nachricht:** `🔴 Disconnected: Failed to connect to IDE companion extension for [IDE Name]. Please ensure the extension is running and try restarting your terminal. To install the extension, run /ide install.`
114+
- **Ursache:** Gemini CLI konnte die notwendigen Umgebungsvariablen (`GEMINI_CLI_IDE_WORKSPACE_PATH` oder `GEMINI_CLI_IDE_SERVER_PORT`) nicht finden, um sich mit der IDE zu verbinden. Das bedeutet in der Regel, dass die IDE-Begleiter-Extension nicht läuft oder nicht korrekt initialisiert wurde.
115+
- **Lösung:**
116+
1. Stelle sicher, dass du die **Gemini CLI Companion** Extension in deiner IDE installiert hast und diese aktiviert ist.
117+
2. Öffne ein neues Terminalfenster in deiner IDE, um sicherzustellen, dass die korrekten Umgebungsvariablen übernommen werden.
118+
119+
- **Nachricht:** `🔴 Disconnected: IDE connection error. The connection was lost unexpectedly. Please try reconnecting by running /ide enable`
120+
- **Ursache:** Die Verbindung zum IDE-Begleiter wurde unerwartet unterbrochen.
121+
- **Lösung:** Führe `/ide enable` aus, um eine erneute Verbindung herzustellen. Falls das Problem weiterhin besteht, öffne ein neues Terminalfenster oder starte deine IDE neu.
122+
123+
### Konfigurationsfehler
124+
125+
- **Meldung:** `🔴 Disconnected: Directory mismatch. Gemini CLI is running in a different location than the open workspace in [IDE Name]. Please run the CLI from the same directory as your project's root folder.`
126+
- **Ursache:** Das aktuelle Arbeitsverzeichnis der CLI befindet sich außerhalb des Ordners oder Workspaces, der in deiner IDE geöffnet ist.
127+
- **Lösung:** Wechsle mit `cd` in das Verzeichnis, das in deiner IDE geöffnet ist, und starte die CLI neu.
128+
129+
- **Meldung:** `🔴 Disconnected: To use this feature, please open a single workspace folder in [IDE Name] and try again.`
130+
- **Ursache:** Du hast mehrere Workspace-Ordner in deiner IDE geöffnet oder es ist überhaupt kein Ordner geöffnet. Die IDE-Integration benötigt einen einzelnen Root-Workspace-Ordner, um korrekt zu funktionieren.
131+
- **Lösung:** Öffne einen einzelnen Projektordner in deiner IDE und starte die CLI neu.
132+
133+
### Allgemeine Fehler
134+
135+
- **Nachricht:** `IDE-Integration wird in deiner aktuellen Umgebung nicht unterstützt. Um diese Funktion zu nutzen, führe das Gemini CLI in einer der folgenden unterstützten IDEs aus: [Liste der IDEs]`
136+
- **Ursache:** Du führst das Gemini CLI in einem Terminal oder einer Umgebung aus, die keine unterstützte IDE ist.
137+
- **Lösung:** Führe das Gemini CLI über das integrierte Terminal einer unterstützten IDE wie VS Code aus.
138+
139+
- **Nachricht:** `Für [IDE Name] ist kein Installer verfügbar. Bitte installiere den IDE-Companion manuell über den Marketplace der IDE.`
140+
- **Ursache:** Du hast `/ide install` ausgeführt, aber das CLI verfügt nicht über einen automatisierten Installer für deine spezifische IDE.
141+
- **Lösung:** Öffne den Extension-Marketplace deiner IDE, suche nach "Gemini CLI Companion" und installiere ihn manuell.

0 commit comments

Comments
 (0)