For language-specific features (such as syntax highlighting and code analysis) in files representing different languages and technologies, PyCharm maintains a list of file types, each of which links a language service with one or more filename patterns.
The default list of file types covers all relevant filename patterns, but you can add new file types for your custom language files and change the associated filename patterns for existing file types.
When you open a file in the editor, PyCharm chooses the file type and the corresponding language service according to the filename pattern. If the filename doesn’t match any of the patterns registered for file types, you can associate the filename pattern with a specific file type.
Apart from that, you can make PyCharm the default application for opening specific file types from the file manager on your operating system.
Add a custom file type
If you work on a language that is not supported by default and there are no plugins for it, you can configure a simple language service for files associated with this language — you will enjoy syntax highlighting for keywords, comments, and braces and have some basic editor helpers such as adding line/block comments with Ctrl+//Ctrl+Shift+/ and extending/shrinking selection according to the structure with Ctrl+W/Ctrl+Shift+W.
-
Press Ctrl+Alt+S to open the IDE settings and select .
-
In the Recognized File Types section, click , specify the name of the new type, and provide a description.
-
In the Syntax Highlighting section, configure case sensitivity, brace matching settings, and specify ways of defining comments:
-
Line comment: specify characters that indicate the beginning of a single-line comment.
-
Only at line start: characters that indicate the beginning of a line comment are recognized as a comment if they are located in the beginning of a line.
-
Block comment start, Block comment end: specify characters that indicate the beginning and the end of a block comment.
-
Hex prefix: specify characters that indicate that the subsequent value is a hexadecimal number (for example,
0x
). -
Number postfixes: specify characters that indicate which numeric system or unit is used. A postfix is a trailing string of characters (for example,
e-3, kg
). -
Support paired braces, Support paired brackets, Support paired parens, Support string escapes: select these checkboxes to highlight paired braces, brackets, parentheses, and string escapes.
-
-
In the Keywords section, you can specify up to four lists of keywords. Keywords of each list will be highlighted differently in the editor and will be auto-completed.
-
The Ignore case checkbox indicates whether keywords in files of the custom format are case-sensitive.
-
You can customize colors for syntax highlighting of language-specific keywords, comments, and other identifiers on the settings page.
Configure associations between filename patterns and file types
Associate a filename pattern with specific file type
-
If PyCharm cannot identify the type of the file that you are trying to open or create, it displays the Register New File Type Association dialog where you can choose the way you want to process this file.
If the dialog doesn’t appear automatically, right-click the file in the Project tool window and select Associate with File Type from the context menu or choose from the main menu.
-
In the Register New File Type Association dialog, select the necessary options:
-
From the File pattern list, select whether you want to specify a type for the current file (file.extension) or for all files with this extension (*.extension).
-
Select one of the following options:
-
Open matching files as text and auto-detect file type by content: open the file without an extension as a text file and identify its type by the content, for example, by the shebang line.
-
Open matching files in PyCharm: associate the file with one of the existing file types. You can change this association later in the settings.
-
Open matching files in associated application: open the file in the default system application configured in your operating system. For example, .pdf files are opened in the default PDF viewer.
If necessary, you can check and configure all filename patterns associated with system applications.
-
-
Click OK to apply the settings.
Change filename patterns associated with file type
-
Press Ctrl+Alt+S to open the IDE settings and select .
-
From the Recognized File Types list, select the file type that you want to associate with other filename patterns.
-
Use the File name patterns section to make the necessary changes. You can add a new pattern (), remove an existing one (), or modify an existing pattern ().
If your project contains files in proprietary formats, such as .pdf and .docx, PyCharm will open these files using the default application configured in your operating system. When a specific proprietary file format is not recognized, or you just want to open certain files with the system application, you can add the necessary associations.
Configure filename patterns associated with system applications
-
Press Ctrl+Alt+S to open the IDE settings and select .
-
In the Recognized File Types list, select Files opened in associated applications.
-
In the File name patterns section on the right, click and specify a filename pattern that should be associated with an external application.
If a file is correctly associated with a specific file type by its filename pattern, but you want to process this file differently, you can override the file type association for this file only — other files matching that pattern will not be affected.
Override file type for specific file
-
In the Project tool window (Alt+1), select one or more files that should have another file type association, right-click the selection and choose Override File Type.
-
From the list that opens, select a new file type.
-
To restore the original file type association according to the filename pattern, right-click the file or files again and select Revert File Type Override from the context menu.
Make PyCharm the default app for specific file types
You can make PyCharm the default application for opening specific file types from the default file manager on your operating system.
-
Press Ctrl+Alt+S to open the IDE settings and select .
-
Click Associate File Types with PyCharm and select the file extensions you want to open with the IDE.
-
Click OK and close the dialog.
Ignore files and folders
PyCharm also maintains a list of files and folders that are completely excluded from any kind of processing. Out of the box, this list includes temporary files, service files related to version control systems, and so on:
*.pyc;*.pyo;*.rbc;*.yarb;*~;.DS_Store;.git;.hg;.svn;CVS;__pycache__;_svn;vssver.scc;vssver2.scc;
Modify the list of ignored files and folders
-
Press Ctrl+Alt+S to open the IDE settings and select .
-
Switch to the Ignored Files and Folders tab.
You can add a new extension (), remove an existing one (), or modify an existing extension ().
-
Apply the changes and close the dialog.
Configure shebang commands for file types
PyCharm can recognize file types by the path specified on the shebang line. A shebang is a combination of characters in a script file followed by a path to the interpreter program that should execute this script. It starts with #!
and it’s always located on the first line of a script file.
-
Press Ctrl+Alt+S to open the IDE settings and select .
-
From the Recognized File Types list, select the file type for which you want to configure a command.
-
In the HashBang patterns area, click (Add HashBang Pattern).
-
In the dialog that opens, specify the pattern that the IDE will use to recognize a file type, then click OK.
-
Apply the changes and close the dialog.
Last modified: 30 November 2022
Я создал текстовый файл и переименовал его в testTreeGen.py.
Проблема в том, что PyCharm не определяет его как источник Python, поэтому я не могу его выполнить.
Как я могу научить PyCharm, что это скрипт Python? Я попытался удалить файл и воссоздал его, создал другой файл python и переименовал его; все заканчивается тем, что файл является текстовым файлом, а не скриптом Python.
Версия 3.0.2.
РЕДАКТИРОВАТЬ
Рефакторинг не работает.
Свойство файла возвращается к тексту (исходное свойство файла, которое я создал до первого рефакторинга ) даже после того, как я переименовал его в сценарий python.
Странно то, что независимо от того, где я создаю testTreeGen.py
, PyCharm создает его как текстовый файл, как если бы он помнил, что имя файла должно быть текстовым файлом. Я могу создать сценарий Python, кроме testTreeGen.py
.
4 ответа
Лучший ответ
Настройки (Настройки на Mac) | Редактор | Типы файлов | Текст
Проверьте шаблоны там (нижний список) — у вас должен быть testTreeGen
или аналогичный шаблон. Просто удали это.
Это обычно происходит при создании нового файла и вместо использования определенного шаблона файла вы используете New | File
и забыли ввести расширение файла (что здесь требуется, в отличие от конкретного шаблона файла, который автоматически добавляет расширение файла) — это позволяет создать ЛЮБОЙ файл с любым расширением (например, .htaccess
или просто README
).
Поскольку такой файл (testTreeGen
в вашем случае) не имеет расширения, IDE не знает, как с ним обращаться, и обрабатывает его как обычный текст (хотя не автоматически — он просит выбрать правильный тип файла с помощью «текстового файла»). «тип выбран заранее, но подавляющее большинство пользователей просто нажимают ввод, а не читают, что говорит этот экран — » расслабься, я профессионал и знаю, что делаю «).
Теперь, поскольку шаблон testTreeGen
существует и он больше / точнее, чем общий *.rb
или *.py
, файл обрабатывается как текстовый файл независимо от расширения файла — переименование не поможет.
Заключение / совет — уделите немного внимания диалогам подтверждения.
71
LazyOne
25 Авг 2016 в 20:44
Я не могу точно сказать, какую ошибку вы допустили, однако это способ правильно переименовать файл:
Если по какой-либо причине вышеперечисленное не помогло, попробуйте следующее, в противном случае вы должны сообщить об ошибке:
3
Games Brainiac
21 Янв 2014 в 17:04
Я удалил папку .idea
, очистил кеш с помощью опции меню File-> Invalidate Chache
, я удалил папки __pycache__
. Я также попытался извлечь новую версию в новую папку, а также скопировать и вставить соответствующие файлы в новую папку.
Ни одно из решений не сработало, поэтому кажется, что если вы объявите файл неправильно, он будет глобально зарегистрирован во всех проектах как этот неправильный тип файла.
Я только что переустановил PyCharm, удалив все настройки. Однако, если бы у меня было больше пользовательских плагинов или настроек, я бы начал играть с глобальными настройками Pycharm, а не с настройками проекта. Одним из вариантов может быть удаление папки C:User<username>.PyCharm<version>
, которая должна содержать конфигурацию, при этом ваш PyCharm сбрасывается на заводские настройки. Очевидно, не хотят сейчас повторить ошибку.
Моя короткая версия: тип файла не сохраняется в папке проекта, поэтому, если вы не найдете пункт меню для его изменения, перейдите и поиграйте с глобальными настройками, которые сохранены в папке, указанной выше.
1
Coolkau
1 Май 2018 в 11:54
Зайдите в Настройки -> Редактор -> Типы файлов -> Текст -> Зарегистрированные шаблоны (нижний список в диалоговом окне) -> Удалите имя файла, которое было добавлено (Должно быть имя файла, которое вы случайно создали в виде текстового файла), нажав кнопку «-» справа. Подайте заявку, и у вас должен быть этот штраф за превышение скорости.
7
Dinesh Khetarpal
15 Фев 2019 в 15:22
У меня есть файл в PyCharm, и раньше он был просто .txt
файл. Теперь я хотел использовать .rst
(реструктурированный текст).
Я знаю, что когда я впервые открываю файл без окончания, PyCharm спрашивает меня, что это за файл и как следует интерпретировать его синтаксис.
Могу ли я как-нибудь снова открыть это диалоговое окно или как-то иначе изменить ассоциацию?
5 ответы
Собственно, @CrazyCoder прав: если вы случайно неправильно пометили файл, PyCharm запоминает его и устанавливает «шаблон» для нового файла на основе имени.
Так что иди в Settings
| Editor
| File Types
, найдите тип, который вы случайно неправильно пометили, и удалите его из списка «Зарегистрированные шаблоны».
Например, я неправильно обозначил osm.py как текстовый файл, поэтому в разделе «Текстовые файлы» у меня есть:
*.bat
*.cgi
.
.
.
osm.py
Удалите его, и вы вернете свои цвета файла py! Вы также можете зарегистрировать файловую ассоциацию без расширения. По умолчанию это связано как «Текстовый файл».
Подробнее о Типы файлов.
ответ дан 04 апр.
Видеть Settings
| Editor
| File Types
.
ответ дан 14 авг.
У меня была та же проблема, и я заметил, что если я «Недействительно кеши» в меню «Файл», я мог вызвать повторный запрос типа файла.
Определенно не идеально.
Создан 24 июн.
На случай, если кто-то все еще не может его найти: под Settings
| Editor
| File Types
меню ищите: Files Opened In Associated Applications
— посмотрите, сможете ли вы найти там полное имя проблемного файла и удаление его.
Создан 05 июн.
PyCharm> Настройки> Редактор> Тип файла> Распознаваемые типы файлов> Выберите один (например, Javascript)> Зарегистрированные шаблоны (+ добавить подстановочный знак *> применить> — удалить подстановочный знак).
Это помогло мне связать мои файлы с нужным типом.
Создан 21 июн.
Не тот ответ, который вы ищете? Просмотрите другие вопросы с метками
ide
restructuredtext
pycharm
or задайте свой вопрос.