Search code examples
pythonpycharmkeyboard-shortcutssettingsdarkmode

Configure PyCharm Dark Mode per Project


Is it possible to configure PyCharm dark mode on a project-by-project basis?

Me and my colleague are sharing the same machine to run some simulations and we both use PyCharm, but we have separate workspace/projects. I love IntelliJ Light but my colleague prefers Darcula. So, is it possible to configure different themes for different projects?


Solution

  • Easily switching the UI theme (from IntelliJ Light to Darcula darkmode) can be done using the Quick Switch Scheme action through the default keyboard shortcut Ctrl + `.

    enter image description here

    enter image description here

    Switching the UI can also be done through the breadcrumb File > Settings > Appearance & Behavior > Appearance > Theme shown in the screenshot.

    enter image description here

    This might not be entirely clear from the PyCharm documentation, at the time of this writing, because searching for the action using the intuitive keyword "theme" gives no results.

    User interface themes

    You can assign a shortcut to the Theme action, so that you can quickly switch between themes.

    However, the IntelliJ IDEA documentation does explicitly state the name of the action

    Use the quick switcher

    1. Press Ctrl + ` to execute the View | Quick Switch Scheme action.


    Directly answering the question as it is asked:

    Is it possible to configure PyCharm dark mode on a project-by-project basis?

    I don't think so. The Theme configuration is an IDE wide setting, not a project setting. Given the ease of changing Theme with a couple of keyboard strokes considering other approaches isn't really worth the effort.

    I tried searching the configuration files but couldn't find the Theme setting, probably because the Theme itself is a plugin that needs to run an event so the action of changing themes is more complex than a simple entry in a configuration file. For example, this is what the log file looks like after the action of changing theme:

    2021-04-27 08:59:57,336 [ 416653]   INFO - cloudConfig.CloudConfigManager - === Start.Edit: [colors.scheme.xml] |false| === 
    2021-04-27 08:59:57,336 [ 416653]   INFO - cloudConfig.CloudConfigManager - === Start.Edit: [laf.xml] |true| === 
    2021-04-27 08:59:58,352 [ 417669]   INFO - cloudConfig.CloudConfigManager - === doConnect === 
    2021-04-27 08:59:58,352 [ 417669]   INFO - cloudConfig.CloudConfigManager - === getConnectionState === 
    2021-04-27 08:59:59,433 [ 418750]   INFO - cloudConfig.CloudConfigManager - === End.Update: [C:\Users\user_name\AppData\Roaming\JetBrains\PyCharm2021.1\jba_config\colors.scheme.xml, C:\Users\user_name\AppData\Roaming\JetBrains\PyCharm2021.1\jba_config\laf.xml] ===