First, I agree completely on using a console for VCS. It might feel tedious but it sure does teach a lot and provides the most control to the user. I mentioned VCS as the integration is surprisingly detailed. I use EAP builds as well so they have improved it a lot now!
In PyCharm, or almost any of JetBrains’s IDEs, VCS options provide a lot more than from what I have seen in other IDEs and editors. There are several features that I didn’t even knew existed before I saw them in here. Many of them I used had additional flags or features that really help in improving efficiency and speed which I discovered after using the IDE. There is still a lot that can be added and improved but from what it offers now, I think it's worth looking over! :)
I do have a lot of extensions installed. Below is the list. Since this is more of a personal preference, you may or may not find all of them useful.
Note: I try to stick with the first party extensions as much as I can, but I do use other extensions as well.
- .env files support by Adel F
- .ignore by hsz
- Azure DevOps by Microsoft Cooperation (this one is work related)
- Big Data Tools by JetBrains
- CSV Plugin by Martin Sommer
- Cyan Light Theme by JetBrains (I keep switching themes, and yes, I like light themes as well 👻)
- Datalore by JetBrains
- EduTools by JetBrains (can connect to Coursera, Stepik, Jetbrains Academy, Py CheckIO, has course creator features and more. It's pretty good actually!)
- Extra Icons by Jonathan Lermitage
- Gray Theme by Olga Berdnikova (She is from JetBrains team. This one is my favorite theme)
- IDE Feature Trainer by JetBrains (This is amazing! Wanna learn the IDE and adopt its keyboard centric approach, use this!)
- Ideolog by JetBrains
- Key Promoter X by halirutan (encourages using the keyboard over mouse)
- Live Edit by JetBrains
- Presentation Assistant by Nikolay Chashinkov (especially useful when presenting, also particularly useful to the person using the IDE)
- Pydantic by Koudai Aono @koxudaxi
- Requirements by meanmail
- VCS Annotation Preloader by JetBrains
- YAML/Ansible support by Pavels Veretennikovs
- IDEA Feature Suggester by JetBrains
I know these are a lot 😅 but surprisingly I haven’t noticed any performance hit on my work or my personal laptop which is already closing to its 7 years of service.
I discovered most of these by go through the Top Downloads, Featured and Top Rated list in the marketplace. There are many more great plugins available there!
As for any other customizations, I usually go through every single settings page and check for anything that I find useful. Fonts (personal preference: JetBrains Mono, fallback to Cascadia Code PL, sometime Fira Code), inspection profiles (I enable all of them, now this might not be ideal, but this really helps me find many linting and formatting issue long before I even push my code to a repo. Plus, it helps encourage using best coding practices), changing import settings like sorting of imports, enabling unambiguous imports on the fly, under UI options, enabling tree indent guides, mnemonics in menu and controls, smooth scrolling, display icons in menu items, show tool window bars and numbers, side-by-side layout on the left and right, using pwsh in terminal (powershell core), enabling memory indicator (yes you can flush the memory as well using this 😉)…. I mean I can go on and on 😂
These are mostly personal preference. These some of the many customizations that I do whenever I set up the IDE on a new system. Fortunately, everything I mentioned here is synchronized so I just have to login with my JetBrains ID and everything is there! Also, everything here is like JetBrains’s other IDEs as well. So, you feel right at home always!