mirror of
https://github.com/QwenLM/qwen-code.git
synced 2026-07-09 17:19:02 +00:00
* feat(cli): VP mode — inline thought expand on click + auto-hiding scrollbar Two VP-mode (ui.useTerminalBuffer) UX improvements: 1. Thinking: clicking a thought now expands it inline, in place, instead of opening a full-screen modal. The expanded thought becomes part of the conversation and scrolls with it, matching the lighter inline pattern. A thought spans the `gemini_thought` head plus its trailing `gemini_thought_content` continuations, so expansion is keyed by the head id (buildThoughtHeadIdMap) and one click expands/collapses the whole group. Alt+T still toggles all thoughts at once. The full-screen ThinkingViewer modal (and its context) is removed: it only ever opened in VP, where an inline-expanded thought is already scrollable via the viewport, so it was redundant. Drops ThinkingViewer.tsx, ThinkingViewerContext.tsx, and the now-dead thinkingFullText plumbing. 2. Scrollbar: the VP scrollbar now auto-hides — it renders as blank cells while idle (keeping width 1 so the viewport never reflows) and pops in only while scrolling, then fades out. Adds `ui.showScrollbar` (default true) to hide it entirely. Generated with AI Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com> * feat(cli): advertise click in the collapsed thought hint (VP only) The collapsed thinking line only hinted "option+t to expand", so the new click-to-expand affordance was undiscoverable. Show "(click or option+t to expand)" when the click handler is actually active — i.e. VP mode (ui.useTerminalBuffer) — and keep the plain "(option+t to expand)" in non-VP, where clicking does nothing (native scrollback is preserved). Generated with AI Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com> --------- Co-authored-by: 秦奇 <gary.gq@alibaba-inc.com> Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com> |
||
|---|---|---|
| .. | ||
| .vscode | ||
| assets | ||
| schemas | ||
| scripts | ||
| src | ||
| .vscodeignore | ||
| development.md | ||
| esbuild.js | ||
| eslint.config.mjs | ||
| LICENSE | ||
| NOTICES.txt | ||
| package.json | ||
| package.nls.json | ||
| package.nls.zh-cn.json | ||
| postcss.config.js | ||
| README.md | ||
| tailwind.config.js | ||
| tsconfig.json | ||
| vitest.config.ts | ||
Qwen Code Companion
Seamlessly integrate Qwen Code into Visual Studio Code with native IDE features and an intuitive chat interface. This extension bundles everything you need — no additional installation required.
Demo
Features
- Native IDE experience: Dedicated Qwen Code Chat panel accessed via the Qwen icon in the editor title bar
- Native diffing: Review, edit, and accept changes in VS Code's diff view
- Auto-accept edits mode: Automatically apply Qwen's changes as they're made
- File management: @-mention files or attach files and images using the system file picker
- Conversation history & multiple sessions: Access past conversations and run multiple sessions simultaneously
- Open file & selection context: Share active files, cursor position, and selections for more precise help
Requirements
- Visual Studio Code 1.85.0 or newer (also works with Cursor, Windsurf, and other VS Code-based editors)
Quick Start
-
Install from the VS Code Marketplace or Open VSX Registry
-
Open the Chat panel using one of these methods:
- Click the Qwen icon in the top-right corner of the editor
- Run
Qwen Code: Openfrom the Command Palette (Cmd+Shift+P/Ctrl+Shift+P)
-
Start chatting — Ask Qwen to help with coding tasks, explain code, fix bugs, or write new features
Commands
| Command | Description |
|---|---|
Qwen Code: Open |
Open the Qwen Code Chat panel |
Qwen Code: Run |
Launch a classic terminal session with the bundled CLI |
Qwen Code: Accept Current Diff |
Accept the currently displayed diff |
Qwen Code: Close Diff Editor |
Close/reject the current diff |
Feedback & Issues
Contributing
We welcome contributions! See our Contributing Guide for details on:
- Setting up the development environment
- Building and debugging the extension locally
- Submitting pull requests
Terms of Service and Privacy Notice
By installing this extension, you agree to the Terms of Service.