Python Classroom
  • Introduction
  • About Python Classroom
  • Python Cloud Options
    • CS50 IDE
      • CS50 IDE Overview
      • CS50 IDE and Python
      • CS50 IDE Debugging
      • CS50 IDE Shortcuts
      • Linux Bash Shell
      • Vim Mode
        • Vim Tutorial
    • CS50 Sandbox
    • PythonAnywhere
    • Repl.it
  • Python Curriculum Map
    • Pedagogy
      • Python Professional Development
      • Teaching Tips
      • Assessment Tips
      • Rubrics
      • Activities
        • Picture Activity
        • Map Activity
        • Crossing the Bridge
        • NIM
        • Mastermind
        • Cards
          • Card Deck Algorithms
          • Sorting Cards
        • River Crossing
          • Jealous Boyfriends
          • Cannibals and Priests
          • Family
          • Police and the Thief
          • Humans and Monkeys
          • Moving Money
        • Crossing the River
        • Traveling Salesperson
        • Logic Problems
        • CIA Crack the Code
        • IQ Test
        • Puzzles
    • AP Computer Science Principles Framework
  • Python Philosphy
    • How to Practice Python
  • microbit
  • Turtle Graphics
    • Turtle Examples
    • Turtle Activities
    • Turtle Maze Problems
    • Turtle Graphics with loops
    • Turtle Snake
    • Turtle Graphics with Conditionals
  • Output
    • Output Examples
    • Output Mistakes
  • Variables
    • Variable Data Type Examples
    • Variable Role Examples
    • Variables Mistakes
    • Variables Problems
  • Math
    • Math Examples
    • Math Mistakes
    • Math Problems
    • Math Self Check
  • Input
    • Input Examples
    • Input Mistakes
    • Input Problems
  • Decisions
    • if
      • if Examples
      • if Mistakes
      • if Problems
    • if else
      • if else Examples
      • if else Problems
      • if / if else Problems
    • if elif else
      • if elif else Examples
      • if elif else Problems
    • nested if
      • nested if Examples
      • nested if Problems
    • Logical Operators
      • Logical Operators Examples
    • Adventure Game Project
  • Loops
    • while loop - count up
      • Examples
      • Problems
    • while loop - countdown
      • Examples
      • Problems
    • while loop - sentinel value
      • Problems
    • while loop - sentinel menu
      • Problems
    • for loop - range (one argument)
      • Examples
      • Problems
    • for loop - range (two arguments)
      • Problems
    • for loop - range (three arguments)
      • Problems
  • Lists
    • Lists - Numbers
      • Problems
    • Lists - Strings
      • Problems
      • Shopping Project
  • Dictionaries
  • String Methods
  • Functions
    • Variable Scope
    • Functions - no parameters
    • Functions - one parameter
    • Functions - return
    • Functions - lists
  • Files
  • Classes
    • Inheritance
  • Python Projects
    • Adventure Game
    • Restaurant Project
    • Trivia Game
    • Family Tree Project
  • Raspberry Pi
    • Raspberry Pi Models
    • Raspberry Pi Setup
  • Roblox
  • Glossary
Powered by GitBook
On this page
  • Split View
  • Working with Files
  • Create a new File
  • Save File
  • Download File
  • Upload File
  • File Revision History
  • Working with the Terminal
  • Opening New Terminals
  • Copying and Pasting
  • Command History
  • Clearing Terminals
  • Restarting Terminals
  • Troubleshooting
  • Layouts and Themes
  • Sharing Your Workspace
  • Switching between Files and Terminal

Was this helpful?

  1. Python Cloud Options
  2. CS50 IDE

CS50 IDE Overview

PreviousCS50 IDENextCS50 IDE and Python

Last updated 6 years ago

Was this helpful?

Split View

Your preference may vary but I prefer working with the Split Pane in Two Rows. I like having files open on on the left and terminal windows on the right. You can browse your files on the left hand side using the File Browser.

To change your view to this option, click on Split Pane in Two Rows.

Working with Files

Create a new File

  • From the file browser on the left, right-click or control-click on a directory and choose New File from the menu to create a blank file inside that directory, then double-click that file to open it.

  • Press Alt + N (on a PC) or ⌘ + N (on a Mac).

Save File

When a file is open in a tab and you have some unsaved changes, Cloud9 will show a red dot a top that tab, until you save your changes. To save a file, press Ctrl + S (on a PC) or ⌘ + S (on a Mac). You can also click on File > Save (or File > Save As… if you want to save that as a new file).

Download File

To download a file from your workspace to your local computer, navigate to the file in the File Browser on the left, right-click on the file’s name, and choose Download.

To download all files in your workspace, click File > Download Project.

Upload File

To upload a file from your local computer to your workspace:

  1. Select a directory where you want your files to get uploaded into, by clicking on that directory in the file browser on the left. By default, this is your ~/workspacedirectory.

  2. Click File > Upload Local Files…, then choose either Select files or Select folder, depending on what you want to upload.

File Revision History

While working on a file, you can undo changes by clicking Edit > Undo or by hitting Ctrl + Z (on a PC) or ⌘ + Z on your keyboard. Similarly, you can redo changes by clicking Edit > Redo or by hitting Ctrl + Shift + Z.

Cloud9 also keeps track of file revisions. You can show the whole file revision history by clicking File > Show File Revision History, which will show a timeline on which you can click to jump to a particular version. If you click on the Play button, you can watch yourself code!

Working with the Terminal

The Terminal allow you to interact with the underlying Ubuntu environment using text commands such as creating, copying, or moving files, compiling and running your programs, and more.

Opening New Terminals

By default, the current working directory (cwd) in a new terminal is your ~/workspace directory. You can navigate to your desired directory using cd path/to/directory.

TIP: To open a terminal in a different directory, navigate to that directory in your file browser, right-click (on a PC) or Ctrl-click (on a Mac) on the directory’s name, and choose Open Terminal Here.

Copying and Pasting

You will probably need to copy and paste commands into terminal tabs to run them. By default, copying and pasting via menus will work inside Cloud9 only (you might even get warned), so it’s recommended to use your keyboard to copy and paste by hitting Ctrl + C and Ctrl + C> (on a PC) or ⌘ + C and ⌘ + V (on a Mac).

Command History

You will be often using the same commands over and over. You can scroll up and down through the list of commands by hitting your keyboard’s up or down arrow.

When testing your program, the up arrow is your friend.

Additionally, you can search for a particular command by hitting Ctrl + R (on a PC) or ⌘ + R (on a Mac), then hitting the same again to scroll through the matches, then hitting Tab to select a particular match to modify it before running or Enter if you want to run it directly.

Clearing Terminals

From time to time you will need to clear your terminal so that it’s easier to see what you’re doing. There are two main ways to do that

  1. Press Ctrl + L (on a PC) or ⌘ + L (on a Mac). This way doesn’t actually clear the terminal, but rather just scrolls down, so you can always scroll back up and see what got cleared, if you wanted to.

  2. Press Ctrl + K (on a PC) or ⌘ + K (on a Mac). This way actually clears the terminal; you won’t be able to scroll back up and see what got cleared.

Restarting Terminals

Sometimes you need to restart your terminals, for example after an update, to have the new changes reflected on your terminal tabs. While you could go ahead and close any open terminal tabs, then reopen them, there’s an easier way by right-clicking (on a PC) or Control-clicking (on a Mac) inside of any terminal tab and choosing Restart All Terminal Sessions.

Troubleshooting

If you want to force a program to quit, for example because it’s stuck in an infinite loop, press Ctrl + C (on a PC) or ⌘ + C (on a Mac). It may take several seconds for the program to respond, so do be patient!

As a last resort, in case the program won’t stop, you might need to forcibly kill it. Perhaps the easiest way to do that is to just close the terminal tab, clicking Close when prompted, and opening a new one.

Alternatively, you can click the stats button (showing memory, CPU, and disk stats) on the upper-right corner, and click Show Process List, find your program in the list, select it, and click Kill. If it doesn’t respond within a few seconds, click Force Kill instead.

If all else fails, click on CS50 IDE and Restart Workspace. This will clear all running programs.

Layouts and Themes

You could also move tabs between different panes by dragging and dropping a tab to the targeted pane or even to somewhere you want a new pane with that tab to be created.

There’s a number of themes available in CS50 IDE that you can find under View > Themes. By default a theme called Cloud9 Day is selected, but if you prefer a dark theme, you can select it via View > Night Mode. Otherwise, you’re free to select from any of the available themes.

CS50 IDE also provides Presentation Mode in which the user interface is even more simplified and font sizes are larger. You can toggle that mode via View > Presentation Mode.

Sharing Your Workspace

Sometimes it’s useful to share your workspace with someone (e.g. your teacher or professor) to assist you with something.

Click on the Share button in the upper-right corner and type their email in the text field under Invite People and click Invite.

You can choose to give the person R for Read Access or RW for Read and Write Access.

Switching between Files and Terminal

To switch between Files and Terminal:

  • On a Mac, click Option-S

  • On a PC / Chromebook, click Alt-S

Click on thebutton atop any of the open panes and choose New File to open a blank file in that particular pane.

When Cloud9 starts, there should be a terminal tab open at the bottom, by default. You can also open a new terminal tab in that or any other pane of your choice by clicking the button atop that pane, and choosing New Terminal. Alternatively, you may just hit Alt + T (on a PC) or Option + T (on a Mac).

Cloud9 is very customizable when it comes to laying out panes and tabs. You could very easily split a pane horizontally or vertically, by right-clicking (on a PC) or Ctrl-clicking (on a Mac) somewhere next to the button atop the pane you want to split and choosing Split Pane in Two Rows or Split Pane in Two Columns.

Reference: CS50 IDE Documentation

https://cs50.readthedocs.io/ide/online/
CS50 IDE Workspace
Red dot indicates the file has been edited.
In File Browser, select the file and then select the Download.
Revision History of a file.
Cloud9 Share Button
Cloud9 Invite People
plus
plus
plus