For Students
- Expected Code Percentage
- Scheme Code >= 60%
- C++ Code <= 40%
- Selection Criteria
- One pull request to add C++ unit tests to the Mogan repo
- One pull request to add Scheme unit tests to the Mogan repo
- Make sure your can compile mogan
- Change one of the icons in this area so that we know you have a basic idea of how UI works.
Project Info
- Name: Add multi-tab display and switching functions
- Mentor: @Oyyko
- Difficulty: Basic
Project Description
The multi-tab function is a feature possessed by many modern software. For example chrome and vscode. Our goal is to add multi-tab functionality to GNU TeXmacs/Mogan.
Like this:
There have been some attempts, but they have not solved all the problems. You can find some previous attempts by people to achieve this problem in mogan’s github repository. Your implementation should ensure that it can run in three environments: windows, macos, and linux. (You don’t have to own these three machines, other members of the community can help you test the operation in other environments)
Project Output Requirements
-
Implement multi-tab display and switching functions
-
Implement multi-line display for situations where there are many tab pages. Like this:
-
Implement using control/command+W to close the current tab instead of closing the entire program.
-
Add testing.
Project Technical Requirements
- Scheme, Xmake, C++
- Understand UI in Mogan