日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
LIBXO(3) FreeBSD ライブラリ関数マニュアル LIBXO(3) 名称 libxo -- テキスト、XML、JSON または HTML 出力を発行するためのライブラリ ライブラリ libxo Library (libxo, -lxo) 書式 #include <libxo/xo.h> 解説 libxo で定義された関数は、TEXT, XML, JSON または HTML 出力の選択を生成す るために使用されます。関数の共通の組は、出力の詳細を制御するためにライブ ラリに渡されるコマンド行スイッチで使用されます。 ほとんどのコマンドは、人間に向けたテキスト出力を発行します。それは、ユー ザによって解析され理解されるように設計されています。人間は、抽出された詳 細とパターン照合に秀でています。しばしば、プログラマは、この人間指向の出 力から情報を抽出する必要があります。プログラマは、それらが必要とする情報 の部分を捜し出すために grep(1), awk(1) と正規表現のようなツールを使用しま す。そのような解決策は、脆弱で、テストと検証を要求して、出力内容が変わる か、または発展するとき、更新を要求します。 現代のツールの開発者は、データの重要でない解析と抽出を許可する、XML と JSON のようなエンコードのスキームを好みます。そのような形式は、単純で、よ く理解されて、階層的で、容易に解析されて、共通のツールと環境でより容易に しばしば統合します。 さらに、現代の実態は、より多くの出力が HTML 出力を価値のあるようにして、 端末より web ブラウザの結果で終わることを意味します。 libxo によって、ソースコードの関数呼び出しの単一の組は、XML と JSON の書 式化されたデータと同様に、従来のテキスト出力を生成することができます。ま た、HTML も生成することができます。"<div>" 要素は、データを与える方法を詳 述する属性で、従来のテキスト出力を囲みます。 libxo によってサポートされた、4 つのエンコードされたスタイルがあります: • 伝統的なコマンド行の使用法を互換性を許可して、端末セッションで TEXT 出力を表示することができます。 • XML 出力は、NETCONF のような XPath とプロトコルのようなツールのために 適切です。 • Javascript とPython のような言語で RESTful API と統合のために JSON 出 力を使用することができます。 • HTML は、あらゆる HTML5 のブラウザで与えることを可能にするために小さ な CSS ファイルと一致することができます。 一般的に、XML と JSON は、データをエンコードするのに適切です、一方、TEXT は、端末出力のために適していて、、HTML は、ウェブブラウザの表示のために適 しています (xohtml(1) を参照)。 libxo ライブラリによって、アプリケーションは、関数呼び出しの共通の組を使 用して、テキスト、XML、JSON と HTML 出力を生成することができます。アプリ ケーションは、どの出力スタイルが生成されるべきか実行時に決定します。アプ リケーションは、書式文字列に記述されている製品出力に関数 xo_emit(3) を呼 び出します。``フィールド記述子'' は、フィールドが、何か、また、それが何を 意味するかを libxo に伝えます。各フィールド記述子は、printf 形式の書式文 字列を大括弧で置かれます: xo_emit(" {:lines/%7ju} {:words/%7ju} " "{:characters/%7ju}{d:filename/%s}\n", linect, wordct, charct, file); 各フィールドは、デフォルトである '値' 役割と共に、役割を持つことができ、 役割は、printf(3) に似た書式文字列と同様に、そのフィールドをいつどのよう に与えるかを libxo に伝えます。 次に、出力は、"--libxo" オプションを使用して、様々なスタイルで生成するこ とができます。 デフォルトのハンドル ハンドルは、出力のストリームの状態をカプセル化する libxo のための抽象化の 概念を与えます。ハンドルには、データタイプ "xo_handle_t" があり、呼び出し 側に不透明です。 ライブラリには、自動的に初期化されるデフォルトのハンドルがあります。デ フォルトで、このハンドルは、標準出力にテキストスタイルの出力を送ります。 この振る舞いを変更するために、xo_set_style(3) と xo_set_flags(3) 関数を使 用することができます。 多くの libxo 関数は、それらの最初のパラメータとしてハンドルを取ります。デ フォルトのハンドルを使用しない大部分。デフォルトのハンドルにアクセスする ために、ハンドルを取るあらゆる関数に NULL を渡すことができます。 標準出力で出力を生成している典型的なコマンドについて、明示的なハンドルを 作成する必要はありませんが、それらは、必要なとき、利用可能です、例えば、 出力の複数のストリームを生成するデーモンのために。 関数概要 libxo ライブラリは、次の機能を含みます: 関数 説明 xo_attr() xo_attr_h() xo_attr_hv() 呼び出し側は、次にオープンしている要素で XML 属性 を発行できます。 xo_create() xo_create_to_file() 呼び出し側は、新しいハンドルを作成することができま す。libxo には、呼び出し側が、明示的に作成されたハ ンドルの使用を避けることができるデフォルトのハンド ルがあることに注意してください。stdout (標準出力) 以外のファイルに書き込む呼び出し側だけが、 xo_create() を呼び出す必要があります。 xo_destroy() ハンドル自体を含むハンドルと関連する、あらゆるリ ソースを解放します。 xo_emit() xo_emit_h() xo_emit_hv() 書式化された出力を発行します。fmt 文字列は、書式化 された出力への残りの引数の変換を制御します。詳細に ついては、xo_format(5) を参照してください。 xo_emit_warn() xo_emit_warnx() xo_emit_warn_c() xo_emit_warn_hc() xo_emit_err() xo_emit_errc() xo_emit_errx() これらの関数は、それらの標準の libc の同名のものと 少し互換性がありますが、xo_format(5) で定義された 書式文字列を使用します。文字列を変換するために増加 したコストがありますが、提供された出力は、より上等 で、より役に立つかもしれません。また、xo_err(3) を 参照してください。 xo_warn() xo_warnx() xo_warn_c() xo_warn_hc() xo_err() xo_errc() xo_errx() xo_message() xo_message_c() xo_message_hc() xo_message_hcv() これらの関数は、それらの同名の標準の libc と互換性 があることが意図されています。 xo_finish() xo_finish_h() 出力をフラッシュし、オープンされた構成物をクローズ し、あらゆる保留中の操作を完了します。 xo_flush() xo_flush_h() 呼び出し側は、ハンドルのためのあらゆる保留中の出力 をフラッシュすることができます。 xo_no_setlocale() ロケールを初期設定することを避けるように libxo に 指示します。この関数は、あらゆる他の libxo 関数が 呼び出される前に、呼び出されるべきです。 xo_open_container() xo_open_container_h() xo_open_container_hd() xo_open_container_d() xo_close_container() xo_close_container_h() xo_close_container_hd() xo_close_container_d() 一般的に関連した内容を組織するために使用される、コ ンテナの階層構造のシングルトン (singleton) レベ ル。 xo_open_list_h() xo_open_list() xo_open_list_hd() xo_open_list_d() xo_open_instance_h() xo_open_instance() xo_open_instance_hd() xo_open_instance_d() xo_close_instance_h() xo_close_instance() xo_close_instance_hd() xo_close_instance_d() xo_close_list_h() xo_close_list() xo_close_list_hd() xo_close_list_d() リストは、同じ親の内に複数回現れることができる、階 層構造のレベルです。2 つの呼び出しは、リストのため のもの、とそのリストのインスタンスごとに 1 つ、そ れらをカプセル化する必要があります。一般的に、 xo_open_list() と xo_close_list() は、 xo_open_instance() のところで、ループのために外側 で呼び出され、それは、ループの先頭で呼び出し、 xo_close_instance() は、ループの下端で呼び出されま す。 xo_parse_args() libxo への指示のためにコマンド行の引数を検査しま す。この関数は、argv がアプリケーションによって検 査される前に、呼び出されるべきです。 xo_set_allocator() 代替のメモリのアロケータとデアロケータ (dealloca tor) を使用するように libxo に指示します。 xo_set_flags() xo_clear_flags() ハンドルのために設定されるフラグを変更します。 xo_set_info() HTML の表現を使用するために要素に関する追加の情報 を提供します。 xo_set_options() ハンドルによって使用される書式化のオプションを変更 します。 xo_set_style() xo_set_style_name() ハンドルによって使用される出力スタイルを変更しま す。 xo_set_writer() 低レベル出力機能の代替の設定を使用するように libxo に指示します。 関連項目 xo(1), xolint(1), xo_attr(3), xo_create(3), xo_emit(3), xo_emit_err(3), xo_err(3), xo_finish(3), xo_flush(3), xo_no_setlocale(3), xo_open_container(3), xo_open_list(3), xo_parse_args(3), xo_set_allocator(3), xo_set_flags(3), xo_set_info(3), xo_set_options(3), xo_set_style(3), xo_set_writer(3), xo_format(5) 歴史 libxo ライブラリは、FreeBSD 11.0 ではじめて登場しました。 作者 libxo は、Phil Shafer <phil@freebsd.org> によって書かれました。 FreeBSD 13.2 December 8, 2014 FreeBSD 13.2