Skip to content

Project: Add Multi-Tab Display and Switching Functions

For Students

  • Expected Code Percentage
    • Scheme Code >= 60%
    • C++ Code <= 40%
  • Selection Criteria
    1. One pull request to add C++ unit tests to the Mogan repo
    2. One pull request to add Scheme unit tests to the Mogan repo
    3. Ensure you can compile Mogan
    4. Change one of the icons to demonstrate basic UI understanding

Project Info

  • Name: Add Multi-Tab Display and Switching Functions
  • Mentor: Oyyko
  • Difficulty: Basic

Project Description

The goal of this project is to add multi-tab functionality to GNU TeXmacs/Mogan, similar to the tab functionality found in modern applications like Chrome and VSCode.

There have been some previous attempts to implement this feature, which can be found in the Mogan's GitHub repository. The implementation should be compatible across Windows, macOS, and Linux platforms. Community members can assist in testing across different environments.

Project Output Requirements

  • Implement multi-tab display and switching functions.
  • Support multi-line display for numerous tab pages.
  • Enable closing the current tab with control/command+W without shutting down the entire program.
  • Include tests to ensure functionality and stability.

Project Technical Requirements

  • Programming languages: Scheme, Xmake, C++
  • An understanding of UI development in Mogan is essential.

Project Repository

Enjoy exploring science and technology!