Sharprompt

Sharprompt

C#交互式命令行框架,兼容多平台,支持多种提示与验证

Sharprompt 是一个支持多平台的 C# 交互式命令行框架,提供输入、密码、选择等多种提示类型,并具备输入验证和数据源自动生成功能。该框架允许自定义符号和配色方案,支持 Unicode。安装简单,适用范围包括 Windows、Linux 和 macOS 平台,并附有详细的使用案例和代码示例。

Sharprompt命令行应用交互式多平台支持Unicode支持Github开源项目

Sharprompt 项目介绍

Sharprompt 是一个用于构建互动式命令行应用的框架,专为 C# 开发者设计。它通过简单且功能丰富的命令行接口,帮助开发者轻松地创建用户交互系统。这个项目在支持多平台操作的同时,还包含丰富的特性和灵活的配置选项。

特性

  • 跨平台支持:Sharprompt 支持多种操作系统,包括 Windows、Linux 和 macOS。
  • 多种提示类型:提供多种流行的提示类型,如 InputPasswordSelect 等。
  • 模型驱动的提示:支持基于模型的提示系统,便于与用户交互。
  • 输入值验证:可以为用户输入的值设置验证规则。
  • 自动数据源生成:可以通过 Enum 类型自动生成数据源,简化数据管理。
  • 自定义符号与配色方案:用户可以根据需求自定义提示符号和配色。
  • Unicode 支持:完全支持多字节字符和 Emoji,确保文本显示的多样性和生动性。

安装方法

若要在项目中使用 Sharprompt,只需通过 NuGet 包管理安装即可:

Install-Package Sharprompt
dotnet add package Sharprompt

使用示例

以下是一些简单的使用示例:

  • 输入示例

    var name = Prompt.Input<string>("What's your name?"); Console.WriteLine($"Hello, {name}!");
  • 密码输入

    var secret = Prompt.Password("Type new password"); Console.WriteLine("Password OK");
  • 确认提示

    var answer = Prompt.Confirm("Are you ready?", defaultValue: true); Console.WriteLine($"Your answer is {answer}");
  • 选择菜单

    var city = Prompt.Select("Select your city", new[] { "Seattle", "London", "Tokyo" }); Console.WriteLine($"Hello, {city}!");

提示类型

Sharprompt 支持多种类型的命令行提示,满足不同的交互需求:

  • Input:用于获取字符串或特定类型的用户输入。
  • Confirm:用于确认用户操作的布尔型提示。
  • Password:安全的密码输入提示,输入内容不可见。
  • Select:提供预定义列表供用户选择。
  • MultiSelect:可以一次选择多个选项的提示(复选框样式)。
  • List:允许用户动态添加多个项目。
  • Bind(模型提示):基于数据模型来进行用户交互,支持数据绑定与显示。

配置与自定义

Sharprompt 允许用户根据自己的需求进行多种配置:

  • 符号自定义:用户可以自定义提示符号,如提示开始、完成或错误。

    Prompt.Symbols.Prompt = new Symbol("🤔", "?"); Prompt.Symbols.Done = new Symbol("😎", "V"); Prompt.Symbols.Error = new Symbol("😱", ">>");
  • 配色方案:支持自定义回答与选择项的颜色。

    Prompt.ColorSchema.Answer = ConsoleColor.DarkRed; Prompt.ColorSchema.Select = ConsoleColor.DarkCyan;
  • 取消操作支持:如果用户按下 Ctrl-C,选项可以抛出异常进行处理。

平台支持

Sharprompt 在以下平台和环境中支持良好:

  • Windows:包括命令提示符、PowerShell 及 Windows Terminal。
  • Linux:尤其是在 Windows Subsystem for Linux 2 上的 Windows Terminal。
  • macOS:在 Terminal.app 中运行。

许可

Sharprompt 项目基于 MIT 许可证进行授权,保障用户自由地使用和修改代码。

通过这些功能和易用性,Sharprompt 是构建互动命令行应用的强大工具,为开发者提供了极大的便利和灵活性。

编辑推荐精选

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具酷表ChatExcelAI智能客服AI营销产品使用教程
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

AI辅助写作AI工具AI论文工具论文写作智能生成大纲数据安全AI助手热门
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

下拉加载更多