---
schema_version: "1"
id: 0eee9a7980c644fc237047aaa51cf73adba08cc419c4869da4409cc4e7ee775b
title: The Editor for Visualforce or Apex
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/platform/264-0-0/pages_using_the_editor.md
canonical_url: https://help.salesforce.com/s/articleView?id=platform.pages_using_the_editor.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 4ad5eb16c7fff389ca999021f456950ee64b0ae35e6241ca5bff287197326871
description: When editing Visualforce or Apex, either in the Visualforce development mode footer or from Setup, an editor is available.
products:
  - Salesforce Platform
release: "264"
---
# The Editor for Visualforce or Apex

When editing Visualforce or Apex, either in the Visualforce development mode footer or from Setup, an editor is available.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Salesforce Classic</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Apex is available in: <strong>Enterprise</strong>, <strong>Performance</strong>, <strong>Unlimited</strong>, <strong>Developer</strong>, and <strong>Database.com</strong> Editions</td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Salesforce Classic</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Visualforce is available in: <strong>Contact Manager</strong>, <strong>Group</strong>, <strong>Professional</strong>, <strong>Enterprise</strong>, <strong>Performance</strong>, <strong>Unlimited</strong>, and <strong>Developer</strong> Editions</td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d30482e119">User
              Permissions Needed</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d30482e119 ">To edit Visualforce markup:</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d30482e119 ">Customize Application</td>

          </tr>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d30482e119 ">To edit custom Visualforce controllers or Apex</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d30482e119 ">Author Apex</td>

          </tr>
        </tbody>
      </table>

The Apex and Visualforce editor has the following functionality:

## Syntax Highlighting

The editor automatically applies syntax highlighting for keywords and all functions and operators.

## Search ()

Search ![Search icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-extend_code-264-0-0-production-enus/789bc523-706b-4ae4-8fe9-be6322e38b6b/extend_code/images/search_apex.gif) enables you to search for text within the current page, class, or trigger. To use search, enter a string in the Search textbox and click **Find Next**

- To replace a found search string with another string, enter the new string in the Replace textbox and click **replace** to replace just that instance, or **Replace All** to replace that instance and all other instances of the search string that occur in the page, class, or trigger.
- To make the search operation case sensitive, select the **Match Case** option.
- To use a regular expression as your search string, select the **Regular Expressions** option. The regular expressions follow JavaScript's regular expression rules. A search using regular expressions can find strings that wrap over more than one line.
    
    If you use the replace operation with a string found by a regular expression, the replace operation can also bind regular expression group variables (`$1`, `$2`, and so on) from the found search string. For example, to replace an `<h1>` tag with an `<h2>` tag and keep all the attributes on the original `<h1>` intact, search for `<h1(\s+)(.*)>` and replace it with `<h2$1$2>`.

## Go to line ()

The Go to line ![Go To Line icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-extend_code-264-0-0-production-enus/789bc523-706b-4ae4-8fe9-be6322e38b6b/extend_code/images/go_to_line.gif) button allows you to highlight a specified line number. If the line is not currently visible, the editor scrolls to that line.

## Undo and Redo

Use undo ![Undo icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-extend_code-264-0-0-production-enus/789bc523-706b-4ae4-8fe9-be6322e38b6b/extend_code/images/undo.gif) to reverse an editing action and redo ![Redo icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-extend_code-264-0-0-production-enus/789bc523-706b-4ae4-8fe9-be6322e38b6b/extend_code/images/redo.gif) to recreate an editing action that was undone.

## Font Size

Select a font size from the drop-down list to control the size of the characters displayed in the editor.

## Line and Column Position

The line and column position of the cursor is displayed in the status bar at the bottom of the editor. This can be used with go to line (![Go To Line icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-extend_code-264-0-0-production-enus/789bc523-706b-4ae4-8fe9-be6322e38b6b/extend_code/images/go_to_line.gif)) to quickly navigate through the editor.

## Line and Character Count

The total number of lines and characters is displayed in the status bar at the bottom of the editor.

## Editor Keyboard Shortcuts

- Tab: Adds a tab at the cursor
- SHIFT+Tab: Removes a tab
- CTRL+f: Opens the search dialog or searches for the next occurrence of the current search
- CTRL+r: Opens the search dialog or replaces the next occurrence of the current search with the specified replacement string
- CTRL+g: Opens the go to line dialog
- CTRL+s: Performs a quick save.
- CTRL+z: Reverses the last editing action
- CTRL+y: Recreates the last editing action that was undone

#### See Also

- [Apex Code Overview](https://help.salesforce.com/s/articleView?id=platform.code_about.htm&release=264.0.0&type=5 "Apex is a strongly typed, object-oriented programming language that allows developers to execute flow and transaction control statements on the Salesforce Platform. Apex enables developers to add business logic to most system events, including button clicks, related record updates, and Visualforce pages. Apex code can be initiated by web service requests and from triggers on objects.")
- [Visualforce](https://help.salesforce.com/s/articleView?id=platform.pages_about.htm&release=264.0.0&type=5 "Visualforce is a framework that allows developers to build sophisticated, custom user interfaces that can be hosted natively on the Lightning Platform. The Visualforce framework includes a tag-based markup language, similar to HTML, and a set of server-side “standard controllers” that make basic database operations, such as queries and saves, simple to perform.")