blog

共有|VCC:UNIXプログラマーのためのクールなコマンドラインチャットソフトウェア

VCCはLinux用のコマンドラインチャットソフトウェアです。...

Oct 19, 2025 · 5 min. read
シェア

VCCはUNIX/Linux上のコマンドラインチャットソフトウェアです。

VCC

私はUNIX/LinuxとC言語が大好きです。VCCは私と他の人が開発した趣味のプロジェクトです。C言語で書かれており、UNIX/Linux上で動作するコマンドラインチャットプログラムです。提案やバグ報告という形で注目を集めればと思い、ここに紹介します。もちろん、このプロジェクトに興味があれば、開発への参加は大歓迎です。

現在のvcc 1.5.2/vccd 1.6.1では、ユーザーのログイン、メッセージのブロードキャスト、セッションの作成/参加、セッション内でのチャットをサポートしています。

VCCはGPLv3でライセンスされており、現在の貢献者はわたしと3swordmanです。

VCCのインストール

VCCは、コード・クラウド上でホストされるクライアントとサーバーに分かれています:

上記のリポジトリをローカルにクローンしたら、そのディレクトリに移動して make を実行してコンパイルします。実行ファイル vcc または vccd ができます。

VCCクライアントの実行

パラメータなしでクライアントを直接実行すると、私が設定したデフォルトのサーバーに接続されます:

  1. vcc $ ./vcc

ユーザー名とパスワードの入力を求められます。もしあなたがビジターであれば、ビジター用のアカウントが利用できます。また、アカウントを取得したい場合は、メールにてご連絡ください。

128コア、1TBのRAM、1YBのSSDを搭載した自分の小型サーバーに接続したい場合は、実行してください:

  1. vcc $ ./vcc [サーバIPアドレス] # ドメイン名はまだサポートされていない

ログインしたら、メッセージを入力してエンターキーを押すだけで、チャットを開始できます。長いメッセージは切り捨てられます。

独自のvccdサーバーの実行

ポート46で独自のvccdサービスを実行できます。

以下のコマンドにはroot権限が必要です。

vccdを初めて実行する場合は、まずインストール・スクリプトを実行してください:

  1. vccd $ sudo scripts/install

スクリプトは、/etc/vccd-runtimeファイルを作成し、その中にvccdのランタイム・ディレクトリの場所を記録します。このディレクトリはユーザー情報を保持し、特にusers/usernameにあり、各ファイルはネイティブ・バイト・オーダーの構造体です。

  1. vccd $ sudo ./vccd

上記のコマンドは、ユーザーを作成せずにvccdデーモンを起動するだけです。ユーザーを作成するには、次のコマンドを実行します:

  1. vccd $ sudo scripts/adduser < > < >

vcc コマンド

vcc は - で始まるコマンドをサポートしています。サーバーに接続された vcc クライアントで -help と入力すると表示されます:

  1. #000 intirain$: -help
  2. -help: Show information about every message.
  3. -quit: Disconnect to server and exit vcc.
  4. -ls: List all users online now.
  5. -rate: Change message refresh rate.
  6. -newse: Create a new session.
  7. -currs: Get current session id.
  8. -swtch: Switch to another session.
  9. -lsse: List all sessions created.
  10. #000 intirain$:

以下は各コマンドの詳細説明です:

-help すべてのコマンドのヘルプ情報を表示
-quit 退出 vcc
-ls 現在オンライン中のすべてのユーザーを表示
-rate リフレッシュレートの設定
-newse 新規セッションの作成
-currs 現在のセッションIDを表示
-swtch 他のセッションに参加
-lsse サーバー上に作成されたすべてのセッションの表示

説明

  • リフレッシュ・レート:vccはサーバーに新しいメッセージを一時的に要求する必要があります。リフレッシュ・レートの単位はヘルツで、デフォルトは1Hzです。リフレッシュ・レートは1000Hzを超えてはいけません。
  • セッション: vccのグループチャットは "セッション "と呼ばれます。セッションは1人または複数のユーザーで構成されるチャットルームで、セッション0は全員がいるロビーです。セッションを終了することはできません。セッションの破棄はまだサポートされておらず、手動でvccdをkillすることでのみ可能です。
  • セッションは終了しないので、別のセッションに参加した後も元のセッションにいることになり、元のセッションからのメッセージを受け取ることができます。しかし、別のセッションに参加した後に送信したメッセージは、元のセッションにいた人は受け取りません。セッションの作成者は、セッションが作成された後、そのセッションに移植されます。

vccはまだコマンドライン引数をサポートしていないため、すべての引数はコマンドを入力する際に対話的に入力する必要があります。

VCC の出力は

VCCはANSIのCSIエスケープを使用しますが、現在の端末がその規格をサポートしているかどうかはチェックしません。vccの配色は変更可能で、pretty.cで定義されているデフォルトの配色テーマは、 include/vcc/pretty.h.Cで定義されているC構造体です。

現在のデフォルトの配色が良くないと思う場合は、pretty.cで独自の配色を作成することもできますし、デフォルトの配色をコピーして変更することもできます。また、あなた自身の色を Cloud リポジトリに PR することをお勧めします。

VCC開発への参加

vcc と vccd は GPL ライセンスの下でリリースされており、"inti project" の一部です。申し訳ありませんが、あなたにお金を払う余裕はありません。

intiプロジェクト」は、優れたフリーソフトウェアをコミュニティにもたらすために作られたプログラムです。GNUプロジェクトに含まれないソフトウェアやライブラリを開発し、プログラミング言語C/C++を使用します。誰でも参加できます。

VCCはまだ開発の初期段階ですが、基本的なチャットプログラムの機能はすでに持っているはずです。私は、あなたがこれを使い、改良し、UNIX/Linuxを使っているあなたの周りの人々に広めてくれることを望んでいます。現在、現在のバージョンは安定化中です。将来的には、ダイナミクスのような高度な機能を備えた、良いソーシャルプログラムになるでしょう。

ちなみに、VCCのWindows移植版は開発中で、あと数週間かかる見込みです。移植されたVCCはその配色を維持しないはずです。

この記事は、 貢献者によって寄稿され、 下で公開されました。

Read next