RubyMine 2016.3 Help

Live Editing of HTML, CSS, and JavaScript

On this page:

Introduction

During a JavaScript debugging session, you can monitor how the changes you make in the HTML file are rendered in the actual browser window without refreshing the page manually and even without leaving RubyMine. All the changes you make are immediately reflected in the browser and the affected area is highlighted. Besides pure HTML files, this also works for other file types that contain or generate HTML, CSS, or JavaScript. You just need to specify the URL of the page in the JavaScript Debug run configuration. The live contents of the page being edited are shown in the Elements tab of the Debug tool window.

Currently the Live Edit functionality is supported only for Google Chrome and only during a debugging session.

Before you start

  1. Install and enable the LiveEdit plugin. The plugin is not bundled with RubyMine, but it can be installed from the JetBrains plugin repository as described in Installing, Updating and Uninstalling Repository Plugins and Enabling and Disabling Plugins.
  2. Make sure the JetBrains Chrome Extension is installed in your Chrome browser.

    The extension is installed when you first initiate a debugging session and follow the dedicated link provided by RubyMine. For details, see Using JetBrains Chrome Extension.

Configuring the Live Edit update policy in the debugging mode

In the debugging mode, RubyMine provides the Live Edit functionality which supports both automatic and manual upload of updated files on the server side. For the client side, Live Edit does not provide any way to apply the changes.

In Meteor projects, the client-side code can be updated through the native Meteor hot code pushes functionality. See Using Meteor for details.

To configure the Live Edit update policy in the debugging mode

  1. Open the Settings / Preferences Dialog by pressing Ctrl+Alt+S or by choosing File | Settings for Windows and Linux or RubyMine | Preferences for OS X. Expand the Debugger node under Build, Execution, Deployment, and then click Live Edit. The Live Edit page opens.
  2. In the Update area, configure the way changes made to the code during a debugging session are applied. Note that an update will now be performed only if none of the modified files have any syntax errors.
    • Auto in (ms): Choose this option to have the changes applied automatically at certain time interval and specify the delay in ms in the text box. This policy is not available for the client-side code of Meteor applications.
    • Manual: Choose this option to apply the changes manually by clicking the Update <run configuration name> JavaScript button /help/img/idea/2016.3/update_icon.png or the Update <run configuration name> button /help/img/idea/2016.3/update_icon.png on the toolbar of the Debug tool window.

      It is recommended that you choose this option for debugging Meteor applications because applying changes to the client-side code is not supported.

    • Restart if hotswap fails:

      With changes in HTML, CSS, and JavaScript on the client side, the contents of a Web page in the browser are updated without reloading. For NodeJS or Meteor applications, RubyMine first tries to update the application incorporating the changes without restarting the NodeJS server.

      • Select this check box to have RubyMine try restarting the server if the changes cannot be applied automatically. After the restart, RubyMine brings you to the execution point where the problem took place.

        If even with this option chosen automatic upload still fails, tou will have to restart the server manually by clicking the Rerun <run configuration name> button /help/img/idea/2016.3/run.png.

      • When the check box is cleared, RubyMine just displays a pop-up window informing you about the failure and suggesting you to restart the server manually.

Live Editing during a debugging session

Live Editing is enabled automatically, no steps are required from your side to activate it.

To perform Live Editing during a debugging session

  1. When editing the code and monitoring how the changes are rendered in the browser, it is helpful to have the areas affected by the changes highlighted. To enable highlighting affected areas, open the RubyMine settings dialog box, click Live Edit, and then select the Highlight current element in browser check box on the Live Edit page that opens.
  2. To initiate a debugging session, create a run configuration of the type JavaScript Debug and click the Debug button /help/img/idea/2016.3/debug.png on the toolbar. RubyMine establishes connection with the JetBrains Chrome extension and starts a debugging session.
  3. Edit the HTML file that implements the page opened in the browser and view the changes immediately rendered.

RubyMine supports an operation that is somehow opposite to live editing. During a debugging session, the Elements tab of the Debug tool window shows the HTML source code that implements the actual browser page and its HTML DOM structure. Moreover, any changes made to the page through the browser are immediately reflected in the Elements tab. For more details, see Viewing Actual HTML DOM.

See Also

Last modified: 22 March 2017