1 .\" $OpenBSD: vis.3,v 1.3 1996/08/19 08:27:34 tholo Exp $
3 .\" Copyright (c) 1989, 1991, 1993
4 .\" The Regents of the University of California. All rights reserved.
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\" notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\" notice, this list of conditions and the following disclaimer in the
13 .\" documentation and/or other materials provided with the distribution.
14 .\" 3. All advertising materials mentioning features or use of this software
15 .\" must display the following acknowledgement:
16 .\" This product includes software developed by the University of
17 .\" California, Berkeley and its contributors.
18 .\" 4. Neither the name of the University nor the names of its contributors
19 .\" may be used to endorse or promote products derived from this software
20 .\" without specific prior written permission.
22 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
23 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
26 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 .\" Japanese Version Copyright (c) 2000 Yuichi SATO
35 .\" all rights reserved.
36 .\" Translated Thu Dec 14 18:22:51 JST 2000
37 .\" by Yuichi SATO <sato@complex.eng.hokudai.ac.jp>
39 .\"WORD: visual representation 表示可能文字
43 .Os "Linux NetKit (0.17)"
50 .Fn vis "char *dst" "char c" "int flag" "char nextc"
52 .Fn strvis "char *dst" "char *src" "int flag"
54 .Fn strvisx "char *dst" "char *src" "int len" "int flag"
63 をエンコードする必要がない場合、変更せずにコピーされる。
64 文字列は NUL 文字で終端され、文字列の最後の文字へのポインタが返される。
65 エンコードされた文字の最大長は 4 文字である (最後の
68 よって、複数の文字をバッファにエンコードする場合、
69 バッファの大きさは「エンコードされる文字の数の 4 倍 + 最後の
72 引き数 flag は、エンコードまたは表示可能文字に変更される文字の
78 (以下で説明する) を選択する場合にのみ使われる。
102 を含むデータブロックをエンコードするのに役立つ)。
113 のための 1 文字分) でなければならない。
114 どちらの形式でも dst の文字数が返される (最後の
118 エンコードは唯一のもので、全て表示文字から構成された可逆表現になっている。
123 関数を用いて元の形式にデコードすることができる。
126 エンコードされる文字の範囲と使われる表現のタイプである。
127 デフォルトでは、スペース・タブ・改行以外の非表示文字がエンコードされる
131 .Bl -tag -width VIS_WHITEX
147 安全でないとは、一般的な端末に予期せぬ機能を動作させてしまうことを意味する。
148 現在のところ、スペース・タブ・改行・バックスペース・ベル・リターン
149 - そして全ての表示可能文字 - はエンコードされない。
156 2 つのバックスペースが実際のバックスペースを表現するために使われる。
158 .Bl -tag -width VIS_CSTYLE
160 メタ文字 (8 ビット目を使う文字) を表現するためには、
169 .Bl -tag -width xxxxx
193 with the 8th bit set.
211 C 言語形式のバックスラッシュシーケンスを使う。
212 このような文字を表すために以下のシーケンスが使われる:
213 .Bd -unfilled -offset indent
214 .Li \ea Tn - BEL No (007)
215 .Li \eb Tn - BS No (010)
216 .Li \ef Tn - NP No (014)
217 .Li \en Tn - NL No (012)
218 .Li \er Tn - CR No (015)
219 .Li \et Tn - HT No (011)
220 .Li \ev Tn - VT No (013)
221 .Li \e0 Tn - NUL No (000)
230 としてエンコードするかを決定するために、引き数 nextc が参照される。
232 が 1 個の 8 進数の場合、曖昧さを避けるため後者の表現が使われる。
246 デフォルトフォーマットで前におかれるバックスラッシュを使わないようにする。
252 このフラグが設定されると、エンコードは曖昧で可逆でなくなる。
258 これらの関数は 4.4BSD で初めて登場した。