This folder serves as a dumping ground for coding experiments across different programming languages.
To use this repository:
- Install Maxima from maxima.sourceforge.net.
- The Maxima installation path is hardcoded in the VS Code tasks for simplicity. If your installation is in a different location, update the path in
.vscode/tasks.json. - The
.gitignorefile excludes theMaxima/doc/folder to keep the repository focused on your code.
Files are organized by day using the following naming convention:
day1.*- First day experimentsday2.*- Second day experimentsday3.*- Third day experiments- etc.
Each day may contain experiments in various programming languages and technologies.
- Maxima: Symbolic computation and mathematical modeling experiments (days 1-2 completed). See Maxima/README.md for details.
new_day.ps1: A PowerShell script to create new day files in subfolders. It prompts for a folder name, finds the next available day number based on existingday*.macfiles, and creates an emptydayN.macfile.
The .vscode/ folder contains configuration files that enhance the development experience in VS Code:
-
tasks.json: Defines two build tasks:- "Run Maxima Script": Executes the current
.macfile using Maxima in batch mode (hardcoded path:C:\maxima-5.48.1\bin\maxima.bat), with output displayed in a dedicated terminal panel. - "Create New Day File": Runs the
new_day.ps1script to generate new day files.
- "Run Maxima Script": Executes the current
-
settings.json: Configures VS Code settings including terminal placement and defines a multi-command "runMaximaSideBySide" that splits the editor, runs the Maxima script in the right pane, and moves the terminal to the editor area. -
keybindings.json: Binds the key combinationCtrl+Shift+Alt+Nto execute the "Create New Day File" task for quick access.## TODO List
- Enhance the "Run Maxima Script" task to automatically split the terminal panel to the right, simplifying the workflow.
- Possible approaches:
- Develop a custom VS Code extension to interact with VS Code internals.
- Utilize an existing VS Code extension that supports terminal splitting.
- Possible approaches: