VCC:给 UNIX 程序员的酷炫命令行聊天软件|Linux 中国

导读:VCC 是一个 UNIX/Linux 上的命令行聊天软件。 

https://github.com/LCTT/Articles/pull/13

VCC 简介

我热爱 UNIX/Linux 和 C 语言,VCC(very cool chat)是我和其他人开发的一个业余(课余)作品。它是用 C 编写的,是一个运行在 UNIX/Linux 上的命令行聊天软件。VCC 目前还处于相当早期的阶段。这次将它介绍给大家是希望引来一些关注,无论是建议还是 bug 告。当然,要是你对这个项目感兴趣,也非常欢迎你参与到开发当中。

我们开发它一方面是为了在命令行上更好的进行聊天对话,另一方面纯粹为了提升技术以及为了好玩。使用 VCC,你可以在写代码的时候快速切换到它所在终端标签聊天,这一直是我的一个梦想。

当前版本的 vcc 1.5.2/vccd 1.6.1 支持用户登录、广播消息、创建 / 加入会话,以及在会话中聊天。

VCC 采用 GPLv3 许可证,目前贡献者有我(intirain)以及 3swordman。

安装 VCC

VCC 分为客户端(即 )以及服务端(即 ),托管在码云上:

? :(https://gitee.com/intirain/vcc.git)

? :(https://gitee.com/intirain/vccd.git)

将上述代码仓库克隆到本地后,进入该目录并且运行 来编译。你会得到一个可执行文件 或者 。

运行 vcc 客户端

不提供参数直接运行客户端,会连接到我建立的默认服务器():

如果你想要连接到自己那有着 128 个核心、1 TB 内存、SSD 1 YB 的小型服务器,请运行:

登录成功之后即可开始聊天,只需要输入消息并且回车即可。过长的信息(大约 200 字节以上)会被截断。

运行自己的 vccd 服务器端

你可以在 46 端口上运行自己的 服务。

以下命令需要 root 权限。

如果你是第一次运行 ,首先请执行安装脚本:

该脚本会创建文件 ,并且在其中记录了 的运行时目录的位置()。该目录中保存着用户信息(当前还没有加入聊天记录功能),具体的位置是 ,每个文件都是一个采用本机字节序的结构体。

上列命令只是启动了 守护进程(严格来说,它只能算一个运行于后台的程序,并不是“守护进程”),而没有创建任何用户。运行如下命令可以创建用户(不需要重启 ):

vcc 命令

(客户端)支持命令,它的命令都以 开头。以下是当前 (1.5.2)支持的所有命令,可以在连接到服务器的 客户端里输入 命令查看:

以下是对每一条命令的详细描述:

说明:

? 刷新率: 需要时序性的请求服务器来获取新消息。刷新率以赫兹为单位,默认为 1 Hz (即每秒刷新一次)。刷新率不得超过 1000 Hz (即每一毫秒刷新一次)。

? 会话: 中的群聊叫做“会话”。会话是由一或多个用户组成的聊天室,0 会话为大厅,所有人都在其中。会话无法退出。现在还不支持销毁一个会话,只能通过杀掉 来手动完成。

? 会话不会退出,因此在加入另一会话后你仍在原先的会话中,仍会收到原先会话中的消息。但是你在加入另一会话后发送的消息,并不会被原先会话中的人收到。会话的创建者在会话创建后就移植在会话中。

还没有加入命令行参数的支持,也就是说所有的参数都需要你在键入该命令交互式输入。

VCC 的输出信息

VCC 使用了 ANSI 的 CSI 转义,但没有检查当前终端对该标准的支持。如果你在类似串口的终端上运行 ,将会直接得到没有渲染的转义字符。 的配色是可更改的,默认的配色主题在 中定义,是一个 C 语言结构体,该结构体在 中定义。

如果你觉得当前默认的配色不甚好看,完全可以在 中新建自己的配色,也可以复制并更改默认配色。我们也鼓励大家将自己认为好看的配色 PR 到码云仓库,我们在看到后会第一时间合并。

参与 VCC 的开发

以及 是以 GPL 许可证发布的,属于我们的 “inti 计划”旗下项目之一。我们鼓励你参与开发改进它,抱歉,我们无力为此支付 酬,参与开发是无偿的。

“inti 计划”是我们(其实也就俩人)创建的一个计划,目的是为了将优秀的自由软件(Linux 以及 GNU 计划)推向 会。我们计划开发的项目是 GNU 计划中所不包含的软件或者库,采用的编程语言为 C/C++。非常欢迎大家的加入。

VCC 还处于非常早期的开发阶段,但它应该已经具备了一个基本聊天软件的功能。我们当然希望你能够使用它、改进它,并且将它推广给身边使用 UNIX/Linux 的人们。目前,我们正在稳定当前的版本。将来,它也许会成为一个不错的 交软件,动态之类的高级功能也会实现。

顺便说一句,VCC 的 Windows 移植版本正在开发中,预计还需要几周的时间(毕竟我们只有周末才能编程 :( )。移植之后的 VCC 应该不会保留配色(因为 Windows 并不支持 CSI 转义)。

via:https://github.com/LCTT/Articles/pull/13

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年3月2日
下一篇 2022年3月2日

相关推荐