PyCharm 3.4.0 Web Help

File | Settings | IDE Settings | File Templates


Use this page to view, edit, create, and remove file templates.

The templates are listed in the left-hand part of the page. The tabs are used to switch between different groups of templates.

When you select a template, its settings and contents are shown in the right-hand part of the page. (The template contents are in the area under the Reformat according to style check box.)


Tab Description
Templates The tab displays the available file templates.


The HTML/HTML5/XHTML, Python script, Python Unit Test, and Setup Script templates cannot be deleted and their names and extensions cannot be edited.

JavaScript template, if unchanged, can be deleted, but the corresponding Name and Extension fields are disabled.

Includes The tab shows the templates of reusable fragments that can be included in file templates.

Toolbar icons

Item Tooltip Description
add.png Create Template Click this button to create a new template in the currently opened tab. The button is available in the Templates and Includes tabs.
delete.png Remove Template Click this button to delete the selected template. The button is available in the Templates and Includes tabs.
copy.gif Copy Template Click this button to create a copy of the selected template. The button is available in the Templates and Includes tabs.
resetProfileToDefault.png Reset to Default Click this button to restore an initial state for the selected template. The button is available only for modified templates. The names of the modified templates are shown in blue.

Template settings and contents

Item Description
Name In this text box, specify the name of the selected template.
Extension In this text box, specify the extension for PyCharm to detect files, where the selected template should be applied during creation.
Reformat according to style Select this check box, to have PyCharm reformat generated stub files according to the style defined on the Code Style page.
Template text Edit the template contents. You can use:
  • Plain text.
  • #parse directives to work with template includes.
  • Variables to be expanded into corresponding values in the format ${<variable_name>}.

    The available predefined file template variables are:

    • ${PROJECT_NAME} - the name of the current project.
    • ${NAME} - the name of the new file which you specify in the New File dialog box during the file creation.
    • ${USER} - the login name of the current user.
    • ${DATE} - the current system date.
    • ${TIME} - the current system time.
    • ${YEAR} - the current year.
    • ${MONTH} - the current month.
    • ${DAY} - the current day of the month.
    • ${HOUR} - the current hour.
    • ${MINUTE} - the current minute.
    • ${PRODUCT_NAME} - the name of the IDE in which the file will be created.
    • ${MONTH_NAME_SHORT} - the first 3 letters of the month name. Example: Jan, Feb, etc.
    • ${MONTH_NAME_FULL} - full name of a month. Example: January, February, etc.
    • You can prevent treating dollar characters ($) in template variables as prefixes. If you need a dollar character ($ inserted as is, use the ${DS} file template variable instead. When the template is applied, this variable evaluates to a plain dollar character ($).

      For example, to use some version control keywords (such as $Revision$, $Date$, etc.) in your default class template, write ${DS} instead of the dollar prefix ($).

    • PyCharm doesn't prompt for the values of Velocity variables defined with #set.
  • Custom variables. Their names can be defined right in the template through the #set directive or will be defined during the file creation.
Description This read-only field provides information about the template, its predefined variables, and the way they work. The field is not available in custom templates.

See Also


Web Resources: