Aptivi - Deprecated Manuals
ProjectsWebsiteBlog
Nitrocid KS v0.1.0 Beta 2 - Manual
Nitrocid KS v0.1.0 Beta 2 - Manual
  • ๐Ÿ‘‹Welcome!
  • Versions and Compatibility
    • ๐Ÿ”ฑSupported Versions
    • ๐Ÿ•˜EOL Versions
    • ๐Ÿ—ž๏ธVersion Release Notes
      • โœจv0.0.1.x series
      • ๐ŸŒˆv0.0.2.x series
      • ๐Ÿ‘ฅv0.0.3.x series
      • ๐Ÿ› ๏ธv0.0.4.x series
      • ๐Ÿ•”v0.0.5.x series
        • โŒšv0.0.5.0 Beta Versions
      • ๐Ÿ“•v0.0.6.x series
        • ๐Ÿ“„v0.0.6.0 Beta Versions
      • ๐Ÿ”Œv0.0.7.x series
        • โšกv0.0.7.0 Beta Versions
      • ๐ŸŒŒv0.0.8.x series
      • ๐Ÿ’Œv0.0.9.x series
      • ๐Ÿ“œv0.0.10.x series
      • โœ๏ธv0.0.11.x series
      • โš™๏ธv0.0.12.x series
      • ๐ŸŒv0.0.13.x series
      • ๐Ÿƒโ™€ v0.0.14.x series
      • โณv0.0.15.x series
      • โญv0.0.16.x series
      • ๐ŸŒƒv0.0.17.x series
      • ๐Ÿฅv0.0.18.x series
      • ๐Ÿ”งv0.0.19.x series
      • ๐Ÿ€v0.0.20.x series
      • ๐Ÿงฐv0.0.21.x series
      • ๐Ÿ“ฑv0.0.22.x series
      • ๐Ÿ–ฅ๏ธv0.0.23.x series
      • ๐Ÿ‘พv0.0.24.x series
      • ๐Ÿ”ฎv0.1.x.x series
        • โš ๏ธKnown issues for 0.1.0 Beta
    • ๐Ÿ‘Compatibility Notes for KS API Revisions
      • ๐Ÿ”ผUpgrading from API v1.0
      • ๐Ÿ”ผUpgrading from API v1.1
      • ๐Ÿ”ผUpgrading from API v1.2
      • ๐Ÿ”ผUpgrading from API v1.3
      • ๐Ÿ”ผUpgrading from API v2.0
      • ๐Ÿ”ผUpgrading from API v2.1
      • ๐Ÿ”ผUpgrading to API v3.0
  • Installation and Maintenance
    • ๐Ÿ“€Installing the Kernel
      • ๐Ÿ’ปWindows
      • ๐ŸงLinux
      • ๐Ÿ“ฑAndroid
    • โซUpgrading the Kernel
      • ๐Ÿ’ปWindows
      • ๐ŸงLinux
      • ๐Ÿ“ฑAndroid
  • Fundamentals
    • ๐ŸŒฝWhat is the Kernel?
    • ๐Ÿ‘พWhat is Nitrocid KS?
    • ๐ŸŒŸSimulated Kernel Features
      • ๐Ÿ‘คAccounts
        • ๐Ÿ”“Permissions
      • ๐ŸšShells
      • ๐ŸŒNetworking
        • ๐Ÿ—ƒ๏ธFTP Client
        • ๐Ÿ”’SFTP Client
        • ๐Ÿ“ฐRSS Client
        • ๐ŸŒHTTP Client
        • ๐Ÿ“งMail Client
      • โœ๏ธEditors
        • ๐Ÿ“Text Editor
        • ๐Ÿ–Š๏ธJSON Editor
        • ๐Ÿ’พHex Editor
      • ๐Ÿ‡บ๐Ÿ‡ธ Languages
      • ๐ŸŒŒScreensavers
      • ๐ŸŽฎGames and Amusements
        • ๐Ÿ”คHangman
        • โ˜„๏ธMeteor
        • ๐ŸSnaker
        • ๐Ÿ”ขSolver
        • โŒจ๏ธSpeedPress
        • ๐Ÿ” Wordle
      • ๐Ÿ—“๏ธCalendar
      • โฐStopwatch and Timer
      • โš–๏ธCalculator and Converter
  • Advanced and Power Users
    • โš’๏ธBuilding the Kernel
      • ๐ŸชŸBuilding on Windows
      • ๐ŸงBuilding on Linux
    • ๐ŸงฐKernel Modifications
      • ๐Ÿ”งKernel Modification Management
      • ๐Ÿ—๏ธBuild your...
        • ๐ŸงชYour Mod
        • ๐ŸŒŒYour Screensaver
        • ๐Ÿช„Your Splash
    • ๐Ÿฆ Diagnostics
      • ๐Ÿ”ฌDebugging
        • ๐ŸงฌLocal Debugging
        • ๐Ÿ›ฐ๏ธRemote Debugging
      • ๐ŸงชTesting
      • ๐Ÿ’‰Other Diagnostics
    • โš’๏ธInner Workings
      • ๐Ÿ”งKernel Settings
        • โ›๏ธMechanics of Settings App
        • ๐Ÿ”ฉSettings Format
      • ๐ŸšShell Structure
        • โ”Help System
        • ๐Ÿ—œ๏ธCommand Parsing
        • ๐Ÿ“œShell Scripting
      • ๐ŸชงKernel Placeholders
      • ๐Ÿ”The Permissions
      • ๐Ÿ“žKernel Threads
      • ๐Ÿ”ŒKernel Drivers
      • โš™๏ธMultilingual Kernel Flow
      • ๐ŸŒCustom Languages
      • ๐Ÿ“ฝ๏ธPresentation System
      • ๐ŸŽ›๏ธKernel Arguments
      • ๐Ÿ“กRemote Procedure
    • ๐Ÿ’ฟGRILO Bootloader and KS
  • ๐ŸงฑProject Dependencies
  • Report an issue
  • Source code
  • API Reference
Powered by GitBook
On this page
  • General help
  • Command help
Edit on GitHub
  1. Advanced and Power Users
  2. Inner Workings
  3. Shell Structure

Help System

Inner workings of the help system

The help system is what every shell uses, invoked by the unified help command available for every type of shell. The function responsible for showing help entries or command usage and some extra help is HelpSystem.ShowHelp() in the KS.Shell.ShellBase.Commands namespace. Explore with us the mechanics of the help system below.

General help

When the user requests the help command in any shell, the above function gets called, querying the current shell type (Shell.CurrentShellType) as discussed previously.

The function gets all the commands, including the unified ones, from the command type, but hides all the hidden commands (commands that are flagged with the CommandFlags.Hidden flag). It also takes care of the modded and aliased commands.

The help system then prints the list of commands to the console.

Command help

If the user specified a command when calling the help command, the help system extracts the help definition and all the command usages.

It extracts from these values found in the CommandInfo class:

  • HelpDefinition: The brief summary of what the command does

  • CommandArgumentInfo.HelpUsages: Defines the command usages

Last updated 1 year ago

โš’๏ธ
๐Ÿš
โ”