.net平台开源项目速览(17)fluentconsole让你的控制台酷起来

C#.NET、PowerBI、数据挖掘 C#.NET、PowerBI、数据挖掘     2022-07-31     439

关键词:

    从该系列的第一篇文章 .NET平台开源项目速览(1)SharpConfig配置文件读写组件 开始,不知不觉已经到第17篇了。每一次我们都是介绍一个小巧甚至微不足道的.NET平台的开源软件,或者学习,或者使用,或者介绍,或者分析原理等等,其实这个过程也让我了解了很多东西。也希望这个分享系列继续给大家带来收获,根据大家的评论和反应,其实说明这些小的组件都还不错,可以提高开发效率。

    今天继续给大家介绍一款简单到爆的开源组件,但是可以让你的控制台瞬间高大上。

1.控制台能有啥滑头?

    借用新生命论坛的一张图片,其实X组件里面也能这样控制,只不过我今天看到的组件使用起来更流程和功能单一一点。忽略图中内容,看控制台颜色:

  看到别人的控制台花花绿绿,其实挺好玩的,是不是感觉逼格很高?

  如果可以非常灵活的自由控制颜色,那该多好?

  没错,So Easy。。。其实很简单。其实Console里面都提供了这些控制功能。只不过作为入门级的Console,貌似没多少人会想到去研究这里面的东西。

  来看看我们今天的主题:FluentConsole

2.FluentConsole基本介绍

  FluentConsole是一个托管在github的C#开源组件,地址:https://github.com/ashmind/FluentConsole

  FluentConsole,主要功能非常简单,意思是更流程的控制台。。其实真的Very Fluent。一起看看,时间很短,5分钟足以。他的基本功能有:

1.可以控制Console输入的背景,以及字体的颜色;

2.可以使用条件输出和控制;

3.标准的链式写法,非常灵活和流畅,体验很棒。

  看看下面的例子和效果。

3.使用介绍

    FluentConsole使用非常简单,我们在这里提供2个小节,主要是基本的和扩展的

3.1 基本用法

    可以使用FluentConsole.Instance或者FluentConsole来直接操作对应颜色和文字。

    我们在使用过程中Line代表换行输出,效果等同于Console.WriteLine

                                Text代表直接输出,不换行,效果等同于Console.Write

     可以使用BackGround设置背景,设置字体颜色直接是Text或者Line。看看下面的代码和注释 

FluentConsole.White.Background.Black.Line("Black");
FluentConsole
	.Cyan.Line("Cyan")
	.DarkBlue.Line("DarkBlue")
	.DarkCyan.Line("DarkCyan")
	.DarkGray.Line("DarkGray")
	.DarkGreen.Line("DarkGreen")
	.DarkMagenta.Line("DarkMagenta")
	.DarkRed.Line("DarkRed")
	.DarkYellow.Line("DarkYellow")
	.Gray.Line("Gray")
	.Green.Line("Green")
	.Magenta.Line("Magenta")
	.Red.Line("Red")
	.White.Line("White")
	.Yellow.Line("Yellow");
Console.ReadKey();

 效果如下:

public static void TestByStatic()
{
	//Text相当于 Console.Write
	//Line相当于 Console.WriteLine

	//将控制台的颜色对象直接用于设置输出的Text
	FluentConsole.Yellow.Text("输入黄色字体");

	FluentConsole.Yellow.Background
				 .Blue.Line("设置黄色背景,和蓝色文字");

	FluentConsole.Yellow.Text("黄色")
				 .Red.Line("红色");

	var console = FluentConsole.Instance;
	console.Red.Text("另外的用法");

	//条件用法
	FluentConsole.Yellow.Line("当前对象状态:")
				 .With(c => 10 > 8 ? c.Red : c.Blue)
				 .Text("成功");
}

 

4.资源

  官网:https://github.com/ashmind/FluentConsole

  源代码与Demo:

  怎么样?赶紧去尝试一下吗?

我发起了一个.net平台上的产生式编程开源项目gp.net

大家好, 我发起了一个.Net平台上的产生式编程开源项目GP.Net。 我们可以先看看一个网友的代码生成器项目:《.Net代码生成器forPostgreSql》  https://github.com/2881099/dotnetGen_postgresql《.Net代码生成器forSqlServer》  ... 查看详情

我发起了一个.net开源跨平台gui(界面开发框架)项目htmlsharpcore

大家好, 我发起了一个.Net开源跨平台GUI(界面开发框架)项目,名字叫HtmlCore 。项目的一个主要目标是可以用.Net在移动设备上开发GUI程序(界面程序)。 欢迎熟悉C++和操作系统编程的网友加入。 我对C++和操作... 查看详情

基于github平台的.net开源项目模板.嘎嘎实用!

...,出于个人需求写了一款开源项目的模板,该模板基于Github平台,并使用.NET来实现管道功能.在接受过实战检验后,于今天开源,项目地址:https://github.com/night-moon-studio/Template定位以下5种境地的同学可以继续往下读一读:你[是]或[想成为]... 查看详情

.net平台采用率的提升归功于开源

....NET项目的开源经验和心得。其中指出,.NET软件开发平台采用率的提升主要归功于开源。根据介绍,微软在2015年将其CoreCLR.NET执行引擎作为开源发布,并在2016年推出了.NETCore开源运行时。随着2020年.NET5的发布,该... 查看详情

apacheplc4x副总裁宣布个人停止对项目提供免费支持;linux5.17增加对中国soc的支持;ipython8.0发布|开源日报

...G”Linux5.17新特性:增加对“第一个可用的低成本RISC-V平台”的支持TapTap企业级设计系统在Figma社区正式开放Android端FirefoxFocus增强隐私保护功能,旨在解决跨网站追踪问题美国电影协会投诉后,GitHub取消了“WidevineDump... 查看详情

.net平台系列6.netcore发展历程

...品。结果,我们开始了一个新的代号为“ProjectK”面向新平台的.NET项目。我们沿着一条线多次更改名称、外观和体验,在每次运行过程都尽量让它更完善,适用于更多情况和更多的基础开发人员。非常高兴这个项目最终成为可用... 查看详情

nugetgruntgulp

Nuget是一个.NET平台下的开源的项目,它是VisualStudio的扩展。在使用VisualStudio开发基于.NETFramework的应用时,Nuget能把在项目中添加、移除和更新引用的工作变得更加快捷方便。实质:.NET平台下的开源的项目优点:添加、移除和更新引... 查看详情

.net平台下三个优秀强劲的开源项目(框架),你用过吗?

.net下的优秀开源项目很多,可能大家都有接触过。但现在给大家介绍几个我接触过的三个优秀的开源项目或框架:NopCommerce、Orchard及基础框架ABP(aspnetboilerplate)。Nopcommerce俄国开源电商系统Nopcommerce(简称Nop)属于开源电商系... 查看详情

.netcore/.net5/.net6开源项目汇总2:任务调度组件(代码片段)

...网络搜集,后期会不断补充。FluentSchedulerFluentSchedule是.NET平台下的一款轻 查看详情

z平台-开源免费的java快速开发平台

平台简述Z平台是开源免费的JAVA快速开发平台,通过Z平台集成开发环境,以零编码、动态配置的方式能够快速开发BS管理系统。同时该平台还可以做为APP、微信、各种小程序等项目的服务端来使用,为前端项目提供数据接口。并... 查看详情

开源.net让微软拥有更多开发者

...软件或者云服务,也有可能是想吸引更多的开发者到微软平台上,但是目前看起来微软这步棋是下对了。从微软开源.Net 和 ASP.Net 之后的分析看,微软的开源战略已经值回票价了。微软现在将.NetCore定位为跨平台开发... 查看详情

开源.net让微软拥有更多开发者

...软件或者云服务,也有可能是想吸引更多的开发者到微软平台上,但是目前看起来微软这步棋是下对了。从微软开源.Net 和 ASP.Net 之后的分析看,微软的开源战略已经值回票价了。微软现在将.NetCore定位为跨平台开发... 查看详情

开源不到48小时获35kstar的推荐算法「github热点速览」(代码片段)

...各类衍生品之外,还多了一个被马斯克预告过、在愚人节开源出来的推特推荐算法,开源不到2天就有了35k+的star,有意思的是,除了推荐算法本身之外,阅读源码的工程师们甚至看到了员工对马斯克的特别关注(一段针对马斯克... 查看详情

.net学习-扩展

...erV8内核Node.jsjavascript事件循环express框架bootstrapNoSQLMongDBGit平台--学习宝库百度开源项目阿里巴巴开源项目google开源项目Node.js的安装,启用MongDB的安装,启用。npm包管理器游戏开发 TeamViewer是一个能在任何防火墙和NAT代理的后 查看详情

开源的paas平台

...og.csdn.net/mypods/article/details/93664651.StackatoStackato是一个应用平台,用来创建私有、安全和灵活的企业PaaS平台,可基于任何堆栈和云平台,从桌面到数据中心,Stackato可简化开发、发布、移植、扩展、管理和监控云上的应用。Stackato... 查看详情

我发起了一个.netcore平台上的开源项目shadowdomain用于热更新

大家好, 我发起了一个.NetCore平台上的开源项目ShadowDomain 用于热更新。 简单的说,原理就是类似Asp.net那样让当前WebApp运行在一个AppDomain中,当WebApp的Bin目录或者Web.config被更新时,就会创建一个新的AppDomain,我们把... 查看详情

metersphere开源项目githubstar数量超过7000

截至2022年3月24日17:30,MeterSphere一站式开源持续测试平台GitHubStar数超过7000个! 查看详情

metersphere开源项目githubstar数量超过5000!

截至2021年7月27日17:45,MeterSphere一站式开源持续测试平台GitHubStar数超过5000个! 查看详情