Skip to content

Built-in Code Editor

Open in ChatGPT ↗
Ask ChatGPT about this page
Open in Claude ↗
Ask Claude about this page
Copied!

Make in-context code edits with Warp's built-in editor, featuring syntax highlighting, tabs, and Vim keybindings.

Warp comes with a native code editor designed for quick, in-flow edits alongside your Agent conversations. Instead of switching back and forth to an IDE, you can open and edit files directly in Warp — with essentials like syntax highlighting, a tabbed file viewer, find and replace, Vim keybindings, and a file tree for browsing and adding files as context.

The editor is built for fast changes to agent-generated code: renaming a variable, tweaking copy, or rewriting a short function. Having just enough editing power in-context makes it easier to land an agent’s changes and keep momentum.

You can open files in the editor in several ways:

  1. Click a file path from the terminal output or an AI conversation and select “Open in Warp.”

  2. Use the file menu in the Command Palette (CMD + O on macOS, CTRL + SHIFT + O on Windows or Linux) when in a Git-tracked repo to search for and open files inside that repo.

    1. You can also access this via the magnifying glass icon in the pane coding toolbelt at the top left of any pane.

    Magnifying glass icon in the pane coding toolbelt for opening the file search.

  3. Browse via the File Tree (Project Explorer) to open or create files.

  4. Opening a generated code diff from an Agent Conversation: Code Diffs in Agent Conversations.

https://screen.studio/share/H7hTUgf2

To save your changes to files: use CMD + S on macOS or CTRL + S on Windows or Linux.

Warp can group multiple files into a single tabbed viewer, reducing clutter and making it easier to work across multiple files.

Multiple files grouped into a single tabbed file viewer in Warp's code editor.

  • Enabled by default for new users (can be toggled in Settings > Features > General > Group files into a single editor pane)
  • Reorder, close, or drag file viewers between tabs.
  • Merge entire panes together by dragging one into another.

Here’s a more in-depth demo:

Choose how new files open in Warp by default in: Settings > Features > General > Choose a layout to open files in Warp

  • Split pane: new files open alongside the current editor
  • New tab: new files open in their own tabbed viewer

The editor supports syntax highlighting and editing for a wide range of languages, including:

Rust, Go, YAML, Python, JavaScript/TypeScript, JSX/TSX, Java/Groovy, C++, Shell/Bash, C#, HTML, CSS, C, JSON, HCL/Terraform, Lua, Ruby, PHP, TOML, Swift, Kotlin, Starlark, SQL, Powershell, and Elixir.

We’re continuously expanding language support.

When you open the same file in multiple tabs or panes, Warp keeps them in sync automatically. Edits made in one view are immediately reflected in all others, and when a file changes on disk (for example, after switching branches), every view updates together.

Warp’s native code editor also supports the following features:

  • Language Server Protocol (LSP) - Get hover info, go-to-definition, find references, inline diagnostics, and format-on-save powered by language servers for Rust, Go, Python, TypeScript/JavaScript, and C/C++.
  • File Tree (Project Explorer) - Browse, open, and manage your project with Warp’s native file tree.
  • Find and Replace - Use Warp’s built-in find and replace to quickly search across a file, jump between matches, and make precise edits with options for regex, case sensitivity, and smart case preservation.
  • Code Editor Vim Keybindings - Use Vim keybindings to edit code and text in Warp’s native code editor.