
Fast-Track pyRevit Systemβ’

Lesson 7
IDE Tour for Beginners

Written Summary
IDE Tour for Beginners: Find Your Way Around VS Code & Cursor π§
By now you should have VS Code and Cursor set up and ready to go. Before we dive into actual code, let's take a quick tour of both editors β so you don't feel lost, you know how to navigate, and you've got the most important commands under your fingers.
This is the lesson that turns "scary developer software" into "oh, that's actually pretty friendly." So get your coffee ready and let's explore.
First, open a project
Start by opening a project folder and a few files. I'm providing you a placeholder code file for exactly this purpose β it's pseudo-code, it doesn't mean anything.
Don't try to understand it. It's just there so you can see how different colors look in your editor and adjust your theme until you like it.
The layout: where everything lives
The way these editors work is simple:
Main window in the middle β that's where your code lives.
Side panel on the left β file navigation, git control, and extensions (like Python support).
Other side β your AI agent panel and a few other things. We're not touching that yet. Basics first.
πΌοΈ [IMAGE: VS Code window with annotations pointing at the main editor, the left sidebar icons (Explorer, Source Control, Extensions), and the AI panel on the right]
Here's the thing about VS Code and Cursor: this is some of the most efficient software out there, because it's made by developers, for developers. It's genuinely user-friendly β you can do everything with your mouse, clicking around and finding buttons. But you can also do everything with your keyboard only, without ever touching the mouse. That's where the real speed comes from.
And almost everything is tied to one menu: the Command Palette. Hit Ctrl + P, type a question mark, and you'll see how to do anything you can imagine β go to files, search symbols, search text, run commands. We'll do a full rundown in a minute.
VS Code and Cursor are (almost) the same software
Because we configured both editors, put them side by side and you'll see they're basically twins. Icons look slightly different, but it's the same thing underneath. Cursor just has a few extras on top that make it stand out.
Want proof? Let's unify the themes:
Hit
Ctrl + Shift + P(that'sCtrl + Pwith the>arrow) in both editors.Type theme and pick one β VS Code ships with Dark Modern by default.
Hit Enter. Boom β both editors look nearly identical.
Same Ctrl + P shortcut, same user settings, and you can literally copy settings from one and paste them into the other. It'll work just fine.
π‘ Tip: Everything we cover in Cursor from here on applies to VS Code too. Learn it once, use it in both.
One more thing on shortcuts: I'm not going to dump 30 minutes of keyboard shortcuts on you right now (I tried recording that video β way too much). Instead, I'll call out shortcuts as I use them throughout the training, so you learn them gradually.
Built-in AI: Ctrl + I vs Ctrl + K
Let's create a new file β test.py β and open it in both editors. Nowadays all the good code editors come with AI embedded: agentic workflows, inline generation, the works.
Quick comparison:
VS Code:
Ctrl + Itriggers inline code generation. (And yes, you can use it a bit even without a paid subscription.)Cursor:
Ctrl + Kdoes the same job.
I pasted the same prompt into both: "Generate pyRevit code for Revit 2025: get all walls in the project, read their Comments parameter, and if the comment is empty, get all materials from all layers and write them comma-separated into the Comments."
Not the most useful tool ever β it's just an example. Here's roughly what comes out:
Don't worry about understanding this yet β we'll go through the code in another lesson. The point here: Cursor streams the code line by line as it generates, while VS Code looks frozen until the whole thing drops in at once. Cursor's snappier, so we'll focus on Cursor β but everything applies to VS Code as well.
β οΈ Important: Inline generation and AI agents are two completely different things. Agents are way more powerful β they can be trained on your data and skills. We're NOT going there yet. Trust me, we want to start slowly. Learn the Revit API first, otherwise you'll lose control of the agent right away.
πΌοΈ [IMAGE: Cursor with the Ctrl+K inline prompt open, pyRevit code being generated line by line in test.py]
Ctrl + P: the only navigation shortcut you need today
Hit Ctrl + P and type ? β you'll see every navigation mode available. Grab the placeholder file I provide and try these:
(just type a name) β search files. Type "button" and your
ButtonGeneratorscript pops up, wherever it's buried. Enter, and you're in.:β go to a line. Type:150and you jump to line 150. Perfect when you know there's an error on line 85.@β all symbols in the current file: variables, functions, classes. Add a colon (@:) and they get grouped into categories β functions, classes, constants, methods. UseAlt + arrow keysto jump between categories, plain arrows to move through items.#β same thing, but across the whole project. Want to find yourtitlevariable everywhere? This is it.%β search for text anywhere in the code. Type "button" and it shows every file and line containing that word.>β the Command Palette itself. Settings, themes, toggling the minimap, configuring shortcuts β pretty much anything you can imagine lives here.
πΌοΈ [IMAGE: Ctrl+P quick-open menu with "?" typed, showing the list of prefixes β :, @, #, %, > β and what each one does]
I don't expect you to use all of this from day one. Just remember it's there, try one thing at a time, and it becomes a habit real quick.
One more goodie: open the Command Palette and search for Keyboard Shortcuts Reference (VS Code has it; Cursor doesn't for some reason). It opens a one-page cheat sheet of the most common shortcuts. Print it, keep it nearby, highlight the ones that matter to you.
Extensions worth installing π
Now let's make the editor nicer and add some bells and whistles for later. Go to the Extensions panel and install these:
Better Comments β colors your comments based on symbols:
?makes it blue,!red,*green. Great for building your own commenting system.Todo Tree β scans your whole project for
TODOandFIXMEcomments and lists them in one panel. Super convenient for keeping track of what still needs work.Rainbow CSV β raw CSV is just an unreadable wall of text. This makes it tabular and color-coded. Definitely install it.
Markdown Preview Enhanced β improves how markdown files are displayed. Very popular.
Claude Code (or Codex if you're an OpenAI person) β activates the AI agent right in your editor. I'm in the Anthropic camp, so Claude Code it is. Powerful, but again: we're not ready for agentic mode yet.
JetBrains Icons β better file and folder icons in your sidebar tree. Toggle it on and off to compare β I like the PyCharm-style structure, so it stays.
Islands theme β the PyCharm-flavored theme I've used for years.
Here's a quick Better Comments + Todo Tree example:
πΌοΈ [IMAGE: Extensions panel showing Better Comments, Todo Tree, Rainbow CSV, JetBrains Icons installed β with the colored comments visible in the editor]
Then do exactly the same in your second editor. I set up both, because I use them for different purposes and like having them side by side with identical styling.
Make it yours: settings.json
Hit Ctrl + P and type settings.json to open your raw settings file. Mine is full of custom color rules I made with AI β I literally said "I want import to be orange, self to be this color, type hints to be that color," and it adjusted everything one by one.
Beyond colors, I keep it minimal: auto save on, zoom with Ctrl + mouse wheel, my theme. That's about it.
π‘ Tip: My full extension list and my
settings.jsonare below this lesson. Copy my setup, or build your own β honestly, it doesn't matter. The code editor is personal. What matters is that you know how to navigate.
And don't overthink the theme. A default one is totally fine. The thing that will make a big difference? Slowly building up your shortcuts. I'll keep calling them out as we go.
What's next
Your code setup is ready and you know your way around it β now it's time to actually code. In the next lesson, I'll give you my framework for creating new pyRevit tools. See you there!