about
Bits Tooling
02/05/2022
Bits Tooling
Development tools for C++, Rust, C#, Python, and JavaScript on Windows, macOS, and Linux
1.0 Prologue
Note: All of the compiler tools, github account, and git have free versions. those are what
I used for all of these demonstrations.
Tool Chains
You will probably want to view "picture-in-picture" or "full-screen"
so details are large enough to be seen easily.
2.0 Visual Studio Code Editor:
Installation:
IDE Setup:
-
The terminal panel, Figure 1 on the right, is placed by default at the bottom of the IDE window.
It works better for me to have it on the right. You can place it wherever you like with
settings (click Gear icon at left bottom -> settings):
Settings -> User -> Workbench -> Panel Default Location
-
By default the IDE shows a code Minimap on the right of the code editing panel. You can disable
that with:
Settings -> User -> TextEditor -> Minimap
- "ctrl /" to toggle comments on selected lines
- "ctrl [ and ctrl ]" to control indenting of selected lines
- Also, to open integrated terminal in any folder, right click any file in the folder and select "Open in Integrated Terminal". This is particularly useful when you open a workspace folder (any folder with .vscode subfolder).
Other Settings:
- "settings -> Editor -> uncheck Accept Suggestion on Commit Character" to avoid many spurious insertions of unwanted suggestions.
- "settings -> search for menu -> select Menu Bar Visibility" to show/hide top menu
- "F11" to toggle full screen mode
- "View -> Command Palette -> .Net: Generate Assets for Build and Debug" enables Run -> Start Debugging. Have to have editor open in project directory. This creates a launch.json file, but only for dotnet builds. In the pages that follow you will find launch.json files for each of the other languages, with the exception of JavaScript which doesn't need a build process other than loading in a browser.
- "ctrl K, ctrl T -> select editor theme" to select one of many alternatives
- "settings -> workbench -> appearance -> color customizations" to set terminal colors
- "File -> Preferences -> Settings" to change lots of defaults
- "File -> Preferences -> Settings -> user -> Features -> Terminal" to change Terminal defaults
- "View -> Command Pallet -> Preferences: Open Settings (JSON)" to edit any user setting you've changed
Settings Details
-
local project settings:
Debugging settings in launch.json and build settings in tasks.jsonFind in project's .vscode folder, as JSON files launch.json and tasks.jsonAccess by opening json file in code editor
-
user settings:
Hundreds of settings for Terminal, Keyboard mappings, ...Find in C:\Users\[userid]\AppData\Roaming\Code\User\settings.jsonAccess: View -> Command Pallet -> Preferences -> Open Settings(JSON)
-
default settings:
All available settings (most of which you don't want to change)Doesn't appear to be a physical json file.Access: View -> Command Pallet -> Preferences -> Open Default Settings(JSON)
2.1 Setup for Editing, Building, and Debugging Code:
Debugging:
Platforms:
3.0 Github Repository
4.0 Cloning Bits Repository
5.0 Development Process:
Topic | C# | C++ | Rust | Python | JavaScript | |
---|---|---|---|---|---|---|
Installation |
dotnet:
If you develop on Windows,
Download Visual Studio Community Edition
latest SDK and Desktop Runtime, assuming you haven't already done that for C++.
Run installer from Downloads directory. We will use VS Code, not Visual Studio, but this download
gives us the complete compiler tool chain.
Download dotnet core latest SDK and
Desktop Runtime, assuming you haven't already done that for C#.
Run installer from Downloads directory. The download page has links for Windows, Linux, and macOS.
|
CMake, C++ tools:
If you develop on Windows,
Download Visual Studio Community Edition
latest SDK and Desktop Runtime.
Run installer from Downloads directory. We will use VS Code, not Visual Studio, but this download
gives us the complete compiler tool chain.
Download CMake. For Windows, if you have
Visual Studio Community Edition you already
have the tools you need. For Linux download gcc/g++ from your connected repositories. On Ubuntu, install
build-essential for a late version.
|
Rust: cargo, rustc, clippy
Download Rust. That includes rustc, the rust compiler,
cargo, a package manager, and other tools like clippy. This works for Windows, Linux, and macOS.
|
Python:
Download Python. That includes everything you need for basic programming. Works for
Windows, Linux, and macOS.
|
JavaScript:
All you need is a browser, an editor, and basic knowledge of HTML, CSS, and JavaScript, as described in these
bits.
|
|
Work Flow |
C#:
In VS Code navigate to the parent folder where you want to create a dotnet project. Open the
terminal (ctrl `) and issue the commands:
Now you can run the debugger by clicking on the top Run menu, select .net core launch,
and step through the code. The first time you attempt to debug you will be asked if
you want to generate .net assets for Build and Debug. If you don't do that you can
always do that later with View > Command Palette > .Net Generate Assets for Build and Debug.
Results are, by default, shown in the integrated terminal,
but you can change that to an external terminal if you wish by editing launch.json
in the .vscode folder.
Start editing, adding files, and debugging to implement your design.
|
C++:
In VS Code, open the parent folder where you want to create a new C++ project.
You can easily open VS Code terminal in any folder by navigating to the folder
with the file menu, then right-clicking on any file and selecting open file in terminal.
In the terminal issue the command:
Open the file and add some C++ code in the editor. Now add a CMakeTests.txt file.
Initially you may wish to simply copy from the
CMakeDemo repository and
use the non-hierarchal version. You will need to edit that to use the <projectname>
and source <filename>.
Create a build directory:
Now you can run or start debugging.
Here's a couple of nice, brief, CMake tutorials:
|
Rust:
In VS Code, open the parent folder where you want to create a new Rust project.
In the terminal issue the command:
Now you can open the new folder from the File menu, open the integrated terminal in the project
folder by right-clicking on any file and selecting open file in integrated terminal.
Then run or start debugging. when you don't
need to debug just issue the command:
You create a library with the terminal command:
cargo builds the library starter code with test fixtures for unit tests. Once you have some
library code and corresponding tests, you run tests with the terminal command:
If you manually create an /examples folder as a sibling to the /src folder, you can put
demonstration code that uses the library and displays results on the termianl. To do that
use the command:
|
Python:
In VS Code, open the parent folder where you want to create a new Python project.
In the terminal issue the command:
Open the file and add some Python code in the editor.
Now you can run your Python code with terminal command:
You can also run or debug your Python code from the Run dropdown in the VS Code top menu,
e.g., Run > Start Debugging which takes you to the first breakpoint and lets you single step
through your code, or Run > Run Without Debugging. Any number of breakpoints can be set by
clicking in the left border.
|
JavaScript:
In terminal navigate to directory containing an HTML file with JavaScript.
Then:
Make additions and changes in the editor and observe that by refreshing the
browser. You may often need to debug your JavaScript using developer tools
provided by the browser.
|