JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 3
  • Score
    100M100P100Q30733F
  • License ISC

Simple profile manager for the Hyper terminal. Currently only supports Windows PowerShell.

Package Exports

  • hyper-profile
  • hyper-profile/hyper-profile.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (hyper-profile) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Hyper Profile Manager

Overview

Hyper Profile Manager is a command-line tool designed to streamline the management of different Hyper terminal configurations and associated shell profiles. It allows you to switch between predefined Hyper profiles and shell-specific profile scripts seamlessly.

Features

  • Profile Switching: Quickly switch between different Hyper terminal profiles.
  • Template Installation: Install profile templates for supported shells (e.g., PowerShell).
  • Shell Profile Management: Automatically updates the shell profile when switching Hyper profiles.
  • Customizable Profiles: Supports custom profiles for Hyper and associated shell configurations.

Available Commands

The tool provides the following main commands for usage:

1. Profile Selection

Switch to a different Hyper profile:

node hyper-profile.js --name <profileName>
  • <profileName>: Name of the profile you want to activate (e.g., default, marketing).

2. Template Installation

Install templates for a specific shell:

node hyper-profile.js --install <shell>
  • <shell>: The shell for which to install templates (e.g., powershell).

Usage Guide

Switching Profiles

  1. Ensure the ~/.hyper.js main Hyper configuration file is present.
  2. Run the command:
    node hyper-profile.js --name default
    This will switch the current configuration to the default profile and update the corresponding shell profile.

Installing Shell Templates

To install profile templates for a specific shell, use:

node hyper-profile.js --install powershell

This copies predefined templates to the appropriate directories for Hyper and the specified shell.

File Structure

  • hyper-profile.js: The main entry point for profile switching and command parsing.
  • argParser.js: Parses command-line arguments and handles --name and --install options.
  • updateShell.js: Updates the shell profile based on the selected Hyper profile.
  • install.js: Installs templates for a specified shell, copying necessary files.
  • shellHelper.js: Helper functions for determining the shell profile directory.

Requirements

  • Node.js: Ensure Node.js is installed to execute the scripts.
  • Platform-Folders Package: Used to determine standard platform directories.
  • fs-extra Package: Required for enhanced file system operations.

Supported Profiles

The tool currently supports the following profiles:

  • default: Standard configuration for PowerShell.
  • marketing: Custom configuration for marketing purposes with PowerShell support.

Error Handling

  • If the main Hyper configuration file (~/.hyper.js) or a specific profile configuration file is missing, an error message will be displayed, and the process will exit.
  • Ensure templates exist in the templates directory for proper installation.

Limitations

  • Currently, only PowerShell profiles are supported. To add support for other shells, modifications in shellHelper.js and related modules are required.
  • The tool assumes the existence of predefined template directories under templates.

Example Scenarios

  1. Switch to the default profile:

    node hyper-profile.js --name default
  2. Install templates for PowerShell:

    node hyper-profile.js --install powershell

Contribution

Feel free to contribute by adding support for more shells, enhancing error handling, or improving the command options.

License

This project is open-source and licensed under the MIT License.