RubyMine 2019.2 Help

External tools

You can define standalone third-party applications as external tools and run them from RubyMine. For example, you might want to run a code generator or analyzer, preprocessor or postprocessor, a database utility, and so on.

You can pass contextual information from your project to the external tool as command-line arguments (for example, the currently selected or open file, the project source path, and so on), view the output produced by the tool, configure to launch the tool before a run/debug configuration, and more.

There are different types of external tools that you can use with RubyMine:

  • Local external tools are applications that run locally on your machine.

  • Remote SSH external tools are executed on a remote server over SSH.

Add a local external tool

Many image editors create non-optimized png images. To optimize images, you can use the OptiPNG command-line tool. Let's set it up for use in RubyMine.

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), select Tools | External Tools.

  2. Click the Add button and specify the following settings:

    The Create Tool dialog
    • Name: The name of the tool that will be displayed in the RubyMine interface (the Tools menu and context menus).

    • Group: The name of the group to which the tool belongs. You can select an existing group or type the name of a new group.

    • Description: A meaningful description of the tool.

    • Program: The name of the executable file. Specify it with an absolute path if the containing directory is not in your PATH environment variable.

    • Arguments: The arguments passed to the executable file, as you would specify them on the command line.

    • Working directory: The path to the current working directory from which the tool is executed.

  3. Click OK to add the tool and then apply the changes.

To run the added tool on the selected image, do one of the following:

  • From the main menu, select Tools | Imaging | Optimize PNG.

  • Right-click a file in the Project tool window and select Imaging | Optimize PNG from the context menu.

  • In the Settings/Preferences dialog (Ctrl+Alt+S), select Keymap, find the Optimize PNG action under the External Tools node, and assign a shortcut for it. Use the shortcut to run the tool.

When the tool runs, its output is displayed in the Run tool window:

Running External Tool

Add a remote SSH external tool

Remote SSH external tools are configured similarly to local external tools, but also define the remote server on which they are executed and require credentials for connecting to it via SSH.

This example demonstrates how you can add date as a remote SSH external tool that is executed on a remote server and returns the current date and time on it.

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), select Tools | Remote SSH External Tools.

  2. Click the Add button and specify the following settings:

    The Create Tool dialog

    This dialog provides the same set of settings as when you add a local external tool, but selecting the remote server is also suggested. This can be one of your configured deployment servers or a Vagrant box. By default, RubyMine will ask you for the host, port, and relevant SSH credentials every time you run the tool on the deployment server.

  3. Click OK to add the tool and then apply the changes.

To run the added date tool on a remote server, do one of the following:

  • From the main menu, select Tools | Remote tools | Date and time.

  • In the Settings/Preferences dialog (Ctrl+Alt+S), select Keymap, find the Date and time action, and assign a shortcut for it. Use the shortcut to run the tool.

After you specify the host, port, and credentials, RubyMine will connect to the server via SSH and run the date command, returning the output to the Run tool window in RubyMine.

Web browsers

You can use a web browser to open any file from your project but generally it is used to preview the output of an HTML file or run and debug web applications.

Open a file in a web browser

To open a file that is intended to be rendered by a web browser (HTML, XML, JSP, and so on), do one of the following:

  • Press Alt+F2.

  • Right-click a file and select Open in Browser.

  • From the main menu, select View | Open in Browser.

  • Use the browser popup in the top right part of the editor window. Click the browser button to open the web server file URL, or Shift+Click it to open the local file URL.

    Show in browser

The Open in Browser action is not available for other file types. However, you can still execute it using Find Action Ctrl+Shift+A.

By default, RubyMine supports some of the most popular browsers, which are configured automatically, if available:

  • Chrome Chrome browser icon

  • Firefox Firefox browser icon

  • Safari Safari browser icon

  • Opera Opera browser icon

  • Internet Explorer Internet Explorer browser icon

  • Edge Edge browser icon

View and configure the list of browsers

In the Settings/Preferences dialog (Ctrl+Alt+S), select Tools | Web Browsers.

The Web Browsers page in Preferences

If a browser was installed using a standard procedure, the alias in the Path field should point to the right location. If it does not, specify the path to the corresponding executable file.

The order of browsers in the list corresponds to their order in the popup, context menu, and the View menu. If you disable a browser, it will not appear in the popup, context menu, and the View menu.

Add a custom browser

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), select Tools | Web Browsers.

  2. Click the Add button and specify the browser name, family, and location of the executable file or macOS application.

Select a default browser

The Open in Browser item in the View menu and in the context menu of a file lists all available browsers and the default browser, which is also used to render external resources.

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), select Tools | Web Browsers.

  2. From the Default Browser list, choose one of the following:

    • System default: use the default browser for your operating system.

    • First listed: use the first browser in the list.

    • Custom path: use a browser that is not in the list. Specify the location of the executable file.

Use custom profile and settings

You can configure custom profiles for Firefox and Chrome family browsers.

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), select Tools | Web Browsers.

  2. Select the browser in the list and click the Edit button.

    • For Firefox, specify the path to the profiles.ini file and choose the profile to use. For more information, see Firefox browser profile.

    • For Chrome, select Use custom user data directory and specify the location of the user data directory.

      You can also specify additional command-line options to use when running Chrome from RubyMine. For more information, open chrome://flags in the Chrome address bar.

You can define third-party standalone applications (code generators and analyzers, pre- and post- processors, database utilities, etc.) as external tools and then run them from RubyMine.

You can pass contextual information (like the currently selected file, or your project source path) to the external tools, view the tool output, and more.

The tools are defined on the External Tools page in the Settings dialog and appear as commands in the Tools menu and in various context menus. They can also be assigned keyboard shortcuts (see the Configuring Keyboards and Mouse Shortcuts section).

Last modified: 5 September 2019

See Also