PyCharm 2024.3 Help

Working with HTML files

PyCharm brings powerful support for HTML that includes syntax and error highlighting, formatting according to the code style, structure validation, code completion, on-the-fly preview during a debugging session (Live Edit) or in the dedicated preview tab in the code editor, and much more.

Enable the HTML Tools plugin

This functionality relies on the HTML Tools plugin, which is bundled and enabled in PyCharm by default. If the relevant features are not available, make sure that you did not disable the plugin.

  1. Press Ctrl+Alt+S to open settings and then select Plugins.

  2. Open the Installed tab, find the HTML Tools plugin, and select the checkbox next to the plugin name.

HTML specification is configurable with the Default HTML language level preference on the Languages & Frameworks | Schemas and DTDs page of settings  Ctrl+Alt+S. By default, specification HTML 5.0 from W3C is assumed.

Create an HTML file

  1. Go to File | New, and then select HTML File from the list.

  2. In the dialog that opens, type the name of the new file without any extension. You can type the whole directory structure before the new filename. If the nested directories do not yet exist, they will be created:

    Create an HTML file

    PyCharm creates a stub file based on the HTML file template and opens it in the editor.

Create references in an HTML file

Inside a <script>, <link>, or <img> tag, PyCharm suggests completion for the path to the file you are referencing.

Path completion in HTML

Alternatively, in the Project tool window, select the JavaScript, CSS, or image file you want to reference and drag it into the HTML file. PyCharm generates the <script>, <link>, or <img> tags inside <head>. For <img> tags, PyCharm also generates the width and height attributes.

Generating a reference by dragging and dropping

Wrap code fragments in tags

  1. Select the code fragment to wrap and press Ctrl+Alt+T or select Code | Surround With from the main menu.

  2. From the list, select Wrap with Tag. PyCharm encloses the selection in a pair of brackets (<> and </>).

  3. Type the tag inside the opening brackets <>. PyCharm automatically fills in the tag in the closing brackets </>.

    Wrapping a text in a tag

Learn more from Generate code.

Documentation look-up

For most HTML tags and attributes PyCharm can show you a summary from the corresponding MDN article. This summary is displayed in the Documentation popup which also shows the deprecation status of a tag or an attribute and information on its compatibility with various browsers.

If the tag or the attribute is available in all versions of browsers, PyCharm does not show any information about its compatibility.

HTML quick documentation: attribute is available in all versions of browsers

Otherwise, the Documentation popup also lists the browsers and their versions that support the tag or the attribute.

HTML quick documentation: compatible browsers are listed

If the tag or the attribute is deprecated, the popup also informs you about this status.

HTML quick documentation: status Deprecated for <big> tag

View documentation for a tag or an attribute

  • Position the caret at the tag or the attribute and press Ctrl+Q or select View | Quick Documentation Lookup from the main menu.

  • When you hover over a tag or an attribute, PyCharm immediately displays the reference for it in the Documentation popup.

    You can turn off this behavior or configure the popup to appear faster or slower, refer to Configuring the behavior of Documentation popup below.

Configure the behavior of Documentation popup

  • To turn off showing documentation automatically when you hover over code symbols, Click the Show Options Menu icon in the popup and disable the Show on Mouse Move option.

  • To have the Documentation popup shown faster or slower, open the Settings dialog (Ctrl+Alt+S) , go to Editor | General | Code Completion, then select the Show the documentation popup checkbox and specify the delay time.

Open the MDN documentation for tags and attributes in the browser

  • In the Documentation popup Ctrl+Q, click the link at the bottom.

  • Press Shift+F1 or select View | External Documentation from the main menu.

Preview output of HTML files

You can open the output of your HTML code in the built-in PyCharm preview or externally, in a browser of your choice.

By default, after you open an HTML file in the browser or in the built-in preview, PyCharm automatically reloads the page every time this HTML file (or any linked JavaScript or Style Sheet file) is saved manually or automatically, refer to Save and revert changes.

You can change the default behavior to reload the page as you type so the changes to the HTML or related file immediately appear in the browser or in the built-in preview. See Configure automatic reload below.

PyCharm built-in preview

PyCharm built-in preview makes your work faster as you no longer need to switch to the browser and refresh the pages. The preview is opened in a separate editor tab and reloaded automatically as you type or when you save the changes, depending on the reload behavior.

Built-in preview

Open the PyCharm built-in preview

  • In the main menu, go to View | Open in Browser, and then select the PyCharm icon Built-in Preview from the list.

  • Alternatively, hover over the code to show the browser icons popup, and click the PyCharm icon.

Preview an HTML file in a browser

To make sure your HTML code is rendered properly in production environment, preview HTML files in specific browsers.

If you are using the built-in PyCharm web server, the page is reloaded automatically when you save the changes or as you type, depending on the reload behavior.

  • Go to View | Open in Browser, and then select the desired browser from the list.

    To open the default PyCharm browser, select Default.

  • Alternatively, hover over the code to show the browser icons popup, and click the icon that indicates the desired browser: Chrome Firefox Safari Edge Opera

  • If you have only one browser configured, just press Alt+F2.

Configure the browser icons in the popup

Open the Settings dialog (Ctrl+Alt+S) and go to Tools | Web Browsers and Preview.

  • To hide some of the icons, clear the Active checkboxes for the unnecessary browsers.

  • To hide the whole popup, clear the For HTML files checkbox.

Configure automatic reload

By default, after you open an HTML file in the browser or in the built-in preview, PyCharm automatically reloads the page every time this HTML file (or any linked JavaScript or Style Sheet file) is saved manually or automatically, refer to Save and revert changes.

Reloading a HTML page on save

When you save a file that triggers page reload, PyCharm shows a Got it tooltip.

Reload on save: Got it tooltip

You can change the default behavior to reload the page as you type so the changes to the HTML or related file immediately appear in the browser or in the built-in preview.

  1. Go to the Tools | Web Browsers and Preview page of settings  Ctrl+Alt+S. Alternatively, click Configure in the Got it tooltip.

  2. In the Reload behavior area, from the Reload page in browser and Reload page in built-in preview lists, select the actions that will trigger automatic reload of pages in web browsers and in the built-in preview. By default, On Save is selected.

    • Select On Change to reload pages as you update the corresponding HTML file or linked files.

    • Select Disabled to suppress automatic upload.

View HTML source code of a web page in the editor

  1. Press Ctrl+Shift+A and select Open Source Code from URL... from the list.

  2. In the Open URL dialog that opens, type the URL address of the web page or choose a previously opened URL from the list.

View embedded images

PyCharm offers several ways to view images embedded in an HTML file. You can use navigation to source, open an image in an external graphical editor, or preview images on-the-fly.

View images in PyCharm

  • In the Project tool window ( View | Tool Windows | Project) , find and select the image file.

    Alternatively, place the caret at the reference to the image in the editor and press Ctrl+B.

  • To preview an image in a popup instead of in a separate tab, select the reference to it and press Ctrl+Shift+I.

View images in an external editor

  • In the Project tool window ( View | Tool Windows | Project) , right-click the image file and select Jump to external editor.

    Alternatively, press Ctrl+Alt+F4.

    PyCharm opens the image in the editor that is used in your OS by default. You can configure another image editor in which the IDE will open files.

Change the default external editor

  1. Right-click an image in the editor and select Edit Path to External Editor from the context menu.

    You can also press Ctrl+Shift+A and type Edit Path to External Editor.

  2. In the Path to External Editor dialog, specify the path to the application in which you want to open images and click Save.

    Specifying the path to an external editor

Extract include files

You can extract a fragment of HTML code into a separate include file. Entire JavaScript code blocks inside a <script> tags can be extracted as well. PyCharm also suggests adding references instead of duplicates of the selected fragment.

  1. In the editor, select the code block to be extracted and choose Refactor | Extract | Extract Include File from the main menu or from the context menu of the selection.

  2. In the Extract Include File dialog that opens, specify the name of the include file without the extension and the directory to store it in. You can accept the predefined directory or select another one.

  3. Click OK, when ready. PyCharm extracts the selected source code into the specified file in the target directory and generates the corresponding reference in the source file.

Configure syntax highlighting

You can configure HTML-aware syntax highlighting according to your preferences and habits.

  1. In the Settings dialog (Ctrl+Alt+S) , go to Editor | Color Scheme | HTML.

  2. Select the color scheme, accept the highlighting settings inherited from the defaults or customize them as described in Colors and fonts.

Configure custom HTML tags

PyCharm is aware of all standard HTML tags, and reports all unknown tags in your markup. If you use a framework that relies on custom HTML tags, such tags will be also reported as unknown, which would be a false positive in that case.

  • To add a single HTML tag to the list of known custom tags, place the caret to the highlighted tag, press Alt+Enter and choose Add [tag] to custom HTML tags.

    PyCharm: A quick-fix for unknown HTML tag
  • To configure multiple custom HTML tags, go to the Editor | Inspections page of the Settings dialog (Ctrl+Alt+S) , find the HTML | Unknown tag inspection, and configure the list of custom HTML tags in the inspection options on the right.

    PyCharm: Inspection options for unknown HTML tag

Cloud Completion and Full Line completion in HTML

PyCharm provides Cloud Completion and Full Line completion in HTML code.

The Full Line code completion feature uses a locally run deep learning model to suggest entire lines of code.

Enable Full Line code completion in HTML

  1. Press Ctrl+Alt+S to open settings and select Editor | General | Inline Completion.

  2. Select the Enable local Full Line completion suggestions checkbox and make sure the HTML checkbox is selected.

    Enable Full Line completion

Cloud completion powered by AI Assistant can autocomplete single lines, blocks of code, and even entire functions in real time based on the project context.

Cloud Completion suggests syntactically acceptable solutions taking the context into account and runs various code inspections in advance to reject the variants that result in errors.

Enable Cloud Completion in HTML

  1. Install and enable the AI Assistant plugin.

  2. Press Ctrl+Alt+S to open settings and select Editor | General | Inline Completion.

  3. Select the Enable cloud completion suggestions checkbox and make sure the HTML checkbox is selected.

    Enable Cloud completion in HTML
Last modified: 08 November 2024