コンテンツにスキップ

「Ii」の版間の差分

提供: ArchWiki
削除された内容 追加された内容
Usage: 翻訳
Kgx (トーク | 投稿記録)
同期
 
(2人の利用者による、間の3版が非表示)
2行目: 2行目:
[[Category:Internet Relay Chat]]
[[Category:Internet Relay Chat]]
[[Category:コンソールアプリケーション]]
[[Category:コンソールアプリケーション]]
[[en:ii]]
{{Related articles start}}
{{Related articles start}}
{{Related|IRC チャンネル}}
{{Related|IRC チャンネル}}
8行目: 9行目:
{{Related|Irssi}}
{{Related|Irssi}}
{{Related articles end}}
{{Related articles end}}
[https://tools.suckless.org/ii/ IRC it (ii)] は、極端にシンプルな FIFO とファイルシステムベースの [[Wikipedia:Internet Relay Chat|IRC]]インターネットリレーチャットクライアントです。サーバー、チャンネル、ニックネームディレクトリを含む IRC ディレクトリツリーを作成します。各ディレクトリには FIFO 入力ファイルと通常の出力ファイルが作成されます。
[https://tools.suckless.org/ii/ IRC it (ii)] は、極端にシンプルな FIFO とファイルシステムベースの [[Wikipedia:Internet Relay Chat|IRC]] (インターネットリレーチャット) クライアントです。サーバー、チャンネル、ニックネームディレクトリを含む IRC ディレクトリツリーを作成します。各ディレクトリには FIFO 入力ファイルと通常の出力ファイルが作成されます。


== インストール ==
== インストール ==


{{AUR|ii}} パッケージを[[インストール]]します。
{{AUR|ii}} パッケージを [[インストール]] します。


== 設定 ==
== 設定 ==
26行目: 27行目:
-k ''environmental.variable''
-k ''environmental.variable''


ii uses an environmental variable to contain your irc password (i.e., {{ic|IIPASS{{=}}"''password''"; -k IIPASS}}).
ii は環境変数を使用して irc パスワードを含めます ( {{ic|1=IIPASS="''password''"; -k IIPASS}})


== 使用方法 ==
== 使用方法 ==
38行目: 39行目:
$ ii
$ ii


以下も参照してください {{man|1|ii|url=https://manpages.debian.org/latest/ii/ii.1.en.html}}
以下も参照してください: {{man|1|ii|url=https://manpages.debian.org/latest/ii/ii.1.en.html}}


=== 追加機能 ===
=== 追加機能 ===


ii はサーバーへのクライアントとしてのみ機能します。出力を読み取り、入力に書き込むには追加のアプリケーションが必要です。各サブディレクトリには出力ファイルoutおよび入力ファイルinがあります。最低限、出力ファイルは以下のように監視できます
ii はサーバーへのクライアントとしてのみ機能します。出力を読み取り、入力に書き込むには追加のアプリケーションが必要です。各サブディレクトリには出力ファイル "out" および入力ファイル "in" があります。最低限、出力ファイルは以下のように監視できます:


$ tail -f out
$ tail -f out
50行目: 51行目:
$ echo "command/message" > in
$ echo "command/message" > in


一つのコマンドで継続的な入力を受け入れる別の方法は
一つのコマンドで継続的な入力を受け入れる別の方法は:


$ cp /dev/stdin in
$ cp /dev/stdin in
67行目: 68行目:
| {{ic|/j #''channel password''}}
| {{ic|/j #''channel password''}}
{{ic|/j ''nickname message''}}
{{ic|/j ''nickname message''}}
| オプションのパスワードでチャンネルに参加する
| オプションのパスワードでチャンネルに参加する;
オプションのオープニングメッセージでユーザーとプライベートな会話を開始する
オプションのオープニングメッセージでユーザーとプライベートな会話を開始する
|-
|-
83行目: 84行目:
|}
|}


コマンドでないものは、チャンネルまたはサーバーに投稿されます。したがって、{{ic|/who}}が必要な場合は、[[RFC:1459]]で説明されているように、FIFO 内のサーバーに{{ic|/WHO}}と書き込んでください。
コマンドでないものは、チャンネルまたはサーバーに投稿されます。したがって、{{ic|/who}} が必要な場合は、[[RFC:1459]] で説明されているように、FIFO 内のサーバーに {{ic|/WHO}} と書き込んでください。


=== SSL/TSL 暗号化 ===
=== SSL/TSL 暗号化 ===


ii は[[Wikipedia:Transport Layer Security|トランスポート層セキュリティ]](TLS)をサポートしていませんが、TLSクライアントに接続するためにプロキシが必要です。これの一例は [[stunnel]] を使用する場合です
ii は [[Wikipedia:Transport Layer Security|トランスポート層セキュリティ]] (TLS) をサポートしていませんが、TLS クライアントに接続するためにプロキシが必要です。これの一例は [[stunnel]] を使用する場合です:


{{hc|/etc/stunnel/stunnel.conf|2=
{{hc|/etc/stunnel/stunnel.conf|2=
95行目: 96行目:
}}
}}


その後、stunnel が ii をサーバーへの安全な接続にリダイレクトするために、{{ic|-s localhost}}と{{ic|-p ''your-port''}}を使用します。
その後、stunnel が ii をサーバーへの安全な接続にリダイレクトするために、{{ic|-s localhost}} {{ic|-p ''your-port''}} を使用します。


もう一つのオプションは、{{Pkg|socat}}を使用して UNIX ストリームソケット経由で ii に接続する方法です
もう一つのオプションは、{{Pkg|socat}}を使用して UNIX ストリームソケット経由で ii に接続する方法です:


$ socat UNIX-LISTEN:/tmp/irc.libera.chat OPENSSL:irc.libera.chat:6697
$ socat UNIX-LISTEN:/tmp/irc.libera.chat OPENSSL:irc.libera.chat:6697
$ ii -s irc.libera.chat -u /tmp/irc.libera.chat
$ ii -s irc.libera.chat -u /tmp/irc.libera.chat


== ヒントとテクニック ==
== Tips and tricks ==


=== Using sed to edit output ===
=== sed を使って出力を編集する ===


[[ Sed ]] は {{ic|tail -f}} の出力をより読みやすくするために編集することができます。例:
[[Sed]] can be used to edit {{ic|tail -f}} output in ways that make it more readable. Example:


{{bc|
{{ bc |
#!/bin/sh
#!/bin/sh
tail -n 55 -f out {{!}} sed -u '/-\!-.*has/d;
tail -n 55 -f out {{ ! }} sed -u '/-\!-.*has/d;
s/<''MyNick''>/\x1b[32m&\x1b[0m/g;
s/< '' MyNick '' >/\x1b[32m&\x1b[0m/g;
s/\(> >\)\( .*\)/\1\x1b[33m\2\x1b[0m/;
s/\(> >\)\( .*\)/\1\x1b[33m\2\x1b[0m/;
s/http[^ >)]*/\x1b[31m&\x1b[0m/g;
s/http[^ >)]*/\x1b[31m&\x1b[0m/g;
s/[\"\$\`]/\\&/g;
s/[\"\$\`]/\\&/g;
s/\(^[0-9]\{10\}\)\( .*\)/date -d@\1 "+%Y.%m.%d %H.%M.%S""\2"/e'
s/\(^[0-9]\{10\}\)\( .*\)/date -d@\1 "+%Y.%m.%d %H.%M.%S" "\2"/e'
}}
}}


この例では、sed コマンドの最初の部分は join、part、および quit(コマンド出力から削除)を隠します。2番目の部分は、あなたのニックネームの周りに緑の [[コンソールのカラー出力|カラーコントロールコード]] を追加します。3番目は、"ハイライト" を黄色で同じようにします。4番目は URL に赤を使います。その次は、最後のコマンドが UNIX エポックタイムスタンプを人間が読める日付に置き換える前に、コマンドの出力を準備します。
In this example, the first part of the sed command hides (deletes from the command output) the join, part and quit; the second one adds green [[Color output in console|color control codes]] around your nickname; the third one does the same for "highlights" in yellow; the fourth with red on URLs; the penultimate prepares the output of the command before the last one substitutes the UNIX epoch timestamps with a human readable date.

2023年10月28日 (土) 01:49時点における最新版

IRC it (ii) は、極端にシンプルな FIFO とファイルシステムベースの IRC (インターネットリレーチャット) クライアントです。サーバー、チャンネル、ニックネームディレクトリを含む IRC ディレクトリツリーを作成します。各ディレクトリには FIFO 入力ファイルと通常の出力ファイルが作成されます。

インストール

iiAUR パッケージを インストール します。

設定

ii はコマンドラインオプションで設定されます。デフォルトの値は、サーバーとポートには irc.freenode.net:6667、メインディレクトリには ~/irc、ニックネームには $USER が設定されています。これらは ii を実行する際に値を渡して変更することができます。

-s server
-p port
-u socket (-p option is ignored if this is set)
-i main.directory
-n nickname
-f realname
-k environmental.variable 

ii は環境変数を使用して irc パスワードを含めます (例 IIPASS="password"; -k IIPASS)

使用方法

詳細な説明については公式のドキュメントを参照してください。

セッションマネージャーとしては、abducotmux が推奨されています。これにより、ユーザーは簡単にセッションを切断し、再接続することができます。

iiを起動するには:

$ ii

以下も参照してください: ii(1)

追加機能

ii はサーバーへのクライアントとしてのみ機能します。出力を読み取り、入力に書き込むには追加のアプリケーションが必要です。各サブディレクトリには出力ファイル "out" および入力ファイル "in" があります。最低限、出力ファイルは以下のように監視できます:

$ tail -f out

入力は:

$ echo "command/message" > in

一つのコマンドで継続的な入力を受け入れる別の方法は:

$ cp /dev/stdin in

コマンド

iiのコマンドはスラッシュで始まり、大文字と小文字が区別されます。

コマンド 説明
/a message オプションのメッセージ付きで離席状態にする
/j #channel password

/j nickname message

オプションのパスワードでチャンネルに参加する;

オプションのオープニングメッセージでユーザーとプライベートな会話を開始する

/l message オプションのメッセージでチャンネルから退出する
/n nickname ニックネームを変更する
/q message オプションのメッセージでiiを終了する
/t topic チャンネルのトピックを設定する

コマンドでないものは、チャンネルまたはサーバーに投稿されます。したがって、/who が必要な場合は、RFC:1459 で説明されているように、FIFO 内のサーバーに /WHO と書き込んでください。

SSL/TSL 暗号化

ii は トランスポート層セキュリティ (TLS) をサポートしていませんが、TLS クライアントに接続するためにプロキシが必要です。これの一例は stunnel を使用する場合です:

/etc/stunnel/stunnel.conf
[irc.libera.chat]
accept = 127.0.0.1:<your-port>
connect = irc.libera.chat:6697

その後、stunnel が ii をサーバーへの安全な接続にリダイレクトするために、-s localhost-p your-port を使用します。

もう一つのオプションは、socatを使用して UNIX ストリームソケット経由で ii に接続する方法です:

$ socat UNIX-LISTEN:/tmp/irc.libera.chat OPENSSL:irc.libera.chat:6697
$ ii -s irc.libera.chat -u /tmp/irc.libera.chat

ヒントとテクニック

sed を使って出力を編集する

Sed tail -f の出力をより読みやすくするために編集することができます。例:

#!/bin/sh
tail -n 55 -f out | sed -u '/-\!-.*has/d;
                          s/<  MyNick  >/\x1b[32m&\x1b[0m/g;
                          s/\(> >\)\( .*\)/\1\x1b[33m\2\x1b[0m/;
                          s/http[^ >)]*/\x1b[31m&\x1b[0m/g;
                          s/[\"\$\`]/\\&/g;
                          s/\(^[0-9]\{10\}\)\( .*\)/date -d@\1 "+%Y.%m.%d %H.%M.%S" "\2"/e'

この例では、sed コマンドの最初の部分は join、part、および quit(コマンド出力から削除)を隠します。2番目の部分は、あなたのニックネームの周りに緑の カラーコントロールコード を追加します。3番目は、"ハイライト" を黄色で同じようにします。4番目は URL に赤を使います。その次は、最後のコマンドが UNIX エポックタイムスタンプを人間が読める日付に置き換える前に、コマンドの出力を準備します。