「Ii」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(英語版より新規作成)
 
(一部翻訳)
8行目: 8行目:
 
{{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)] is:
 
:a minimalist FIFO and filesystem-based [[Wikipedia:Internet Relay Chat|IRC]] (Internet Relay Chat) client. It creates an IRC directory tree with server, channel and nick name directories. In every directory a FIFO in file and a normal out file is created.
 
   
== Installation ==
+
== インストール ==
   
  +
{{AUR|ii}} パッケージを[[インストール]]します。
[[Install]] the {{AUR|ii}} package.
 
   
== Configuration ==
+
== 設定 ==
   
  +
ii はコマンドラインオプションで設定されます。デフォルトの値は、サーバーとポートには {{ic|irc.freenode.net:6667}}、メインディレクトリには {{ic|~/irc}}、ニックネームには {{ic|$USER}} が設定されています。これらは ii を実行する際に値を渡して変更することができます。
ii is configured via command line options. The default values are {{ic|irc.freenode.net:6667}} for server and port, {{ic|~/irc}} for main directory, and {{ic|$USER}} for nickname. These can be changed by passing values to ii when run:
 
   
 
-s ''server''
 
-s ''server''

2023年9月6日 (水) 19:31時点における版

関連記事

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 uses an environmental variable to contain your irc password (i.e., IIPASSテンプレート:="password"; -k IIPASS).

Usage

For a detailed introduction see the official documentation.

A session manager such as abduco or tmux is recommended. It allows the user to easily disconnect and reconnect to a session.

To start ii, run:

$ ii

See also ii(1).

Additional functions

ii serves solely as a client for the server. Additional applications will be needed to both read output and write input to ii. In each subdirectory, there will be an output file, "out" and an input file, "in". At a minimum, the output file can be monitored with:

$ tail -f out

and the input with:

$ echo "command/message" > in

Another option that allows for a single command to accept ongoing input is:

$ cp /dev/stdin in

Commands

ii commands start with a slash and are case sensitive.

Command Description
/a message mark as away with optional message
/j #channel password

/j nickname message

join a channel with optional password;

open a private conversation with user and optional opening message

/l message leave channel with optional message
/n nickname change nickname
/q message quit ii with optional message
/t topic set topic of channel

Everything which is not a command will be posted into the channel or to the server. So if you need /who just write /WHO as described in RFC:1459 to the server in FIFO.

SSL/TSL Encryption

ii does not support the Transport Layer Security (TLS), and needs a proxy to connect it to a TLS client. An example of this would be with stunnel:

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

Then use -s localhost and -p your-port for stunnel to redirect ii to secure connection to the server.

Another option is the use of socat for a proxy with ii connecting via UNIX stream socket:

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

Tips and tricks

Using sed to edit output

Sed can be used to edit tail -f output in ways that make it more readable. Example:

#!/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'

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 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.