<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.archlinux.jp/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=R6eve</id>
	<title>ArchWiki - 利用者の投稿記録 [ja]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.archlinux.jp/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=R6eve"/>
	<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php/%E7%89%B9%E5%88%A5:%E6%8A%95%E7%A8%BF%E8%A8%98%E9%8C%B2/R6eve"/>
	<updated>2026-06-09T08:10:18Z</updated>
	<subtitle>利用者の投稿記録</subtitle>
	<generator>MediaWiki 1.44.3</generator>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Rust&amp;diff=21430</id>
		<title>Rust</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Rust&amp;diff=21430"/>
		<updated>2021-08-25T12:40:20Z</updated>

		<summary type="html">&lt;p&gt;R6eve: curlオプションを英語版かつ公式ドキュメントと同期&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:プログラミング言語]]&lt;br /&gt;
[[en:Rust]]&lt;br /&gt;
[[ru:Rust]]&lt;br /&gt;
[http://rust-lang.org/ Rust] は驚異的に高速で、セグメンテーション違反を滅多に起こさず、スレッドとメモリの安全性が保証された、システムプログラミング言語です。&lt;br /&gt;
&lt;br /&gt;
== ライブラリ ==&lt;br /&gt;
&lt;br /&gt;
=== Rust コアライブラリ ===&lt;br /&gt;
&lt;br /&gt;
[https://doc.rust-lang.org/core/ Rust Core Library] は何にも依存しない Rust 標準ライブラリの基礎となるライブラリです。LLVM と直接通じることで、ハードウェアに囚われないプラットフォームとして Rust を使うことができます。LLVM との緊密な統合により、Clang でコンパイルされた C アプリケーションよりも高い性能を発揮することができ、libcore で設計された Rust ソフトウェアは C よりも低レイヤーを扱うことができます。組み込み環境向けのソフトウェアを開発している場合、{{ic|#![no_std]}} で標準ライブラリを省くことでコアライブラリだけを使うことができ、バイナリサイズを小さく、高い性能を発揮させることが可能です。ただし、{{ic|#![no_std]}} を使用すると Rust コミュニティから取得することができる膨大なソフトウェアに制限がかかるため、大抵のライブラリは標準ライブラリを必要としています。&lt;br /&gt;
&lt;br /&gt;
=== Rust 標準ライブラリ ===&lt;br /&gt;
&lt;br /&gt;
[http://doc.rust-lang.org/std/index.html Rust Standard Library] は移植性の高い Rust ソフトウェアによって構成された便利な高水準の抽象ライブラリです。{{ic|Vec}}, {{ic|Iterator}}, {{ic|Option}}, {{ic|Result}}, {{ic|String}} 型や、基本的なメソッド、大量の標準マクロ、I/O やマルチスレッドのサポート、{{ic|Box}} によるヒープメモリ確保などの便利な機能、その他、コアライブラリに存在しない高度な機能が多数存在します。&lt;br /&gt;
&lt;br /&gt;
=== リリースサイクル ===&lt;br /&gt;
&lt;br /&gt;
Rust は Firefox のリリースサイクルと同じように6週間ごとに定期的にリリースされます。新しいリリースが出るたびに、コアライブラリや標準ライブラリは改善され、対応プラットフォームが新しく増えたりパフォーマンスが向上したり、あるいは新しい機能の安定化が行われます。&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
=== ネイティブのインストール方法 ===&lt;br /&gt;
&lt;br /&gt;
Rust の最新安定版を[[インストール]]するには、{{Pkg|rust}} パッケージを[[インストール]]してください。{{ic|rustc}} コンパイラと [[Cargo]] がインストールされます。&lt;br /&gt;
&lt;br /&gt;
Rust コンパイラの開発版は [[AUR]] からインストールできます。ビルド済みの汎用バイナリは {{AUR|rust-nightly-bin}} を、システムライブラリが付属するコンパイラのビルドは {{AUR|rust-git}} を使ってください。[[非公式ユーザーリポジトリ#rust-git|非公式リポジトリ]]を使うことで定期的に更新されるビルド済みの rust-git パッケージを入手することもできます。&lt;br /&gt;
&lt;br /&gt;
=== Rustup によるインストール方法 ===&lt;br /&gt;
&lt;br /&gt;
Rust でソフトウェアを開発するときに、公式に推奨されている Rust のインストール方法は [https://www.rustup.rs/ Rustup ツールチェインマネージャ] を使用する方法です (Rustup は Rust で書かれています)。&lt;br /&gt;
&lt;br /&gt;
ソフトウェアリポジトリに存在するスタンドアロンな Rust を使用しないで、Rustup ツールチェインマネージャを使用する利点として、複数のプラットフォーム (Windows, Mac, Android) やアーキテクチャ (x86, x86_64, arm) 用に複数のツールチェイン (stable, beta, nightly) をインストールすることができる点が挙げられます。&lt;br /&gt;
&lt;br /&gt;
==== 上流のインストールスクリプト ====&lt;br /&gt;
&lt;br /&gt;
{{ic|curl --proto &#039;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;https&#039; --tlsv1.2 -sSf &amp;lt;nowiki&amp;gt;https://sh.rustup.rs&amp;lt;/nowiki&amp;gt; -o rust.sh}} としてファイルをダウンロードします。そのあと、{{ic|less ./rust.sh}} でファイルの内容を確認した上で、{{ic|./rust.sh}} でスクリプトを実行してください。スクリプトはログインシェルの[[Bash#実行|設定ファイル]]の PATH のみ変更します。一度ログアウトしてからログインしなおすか {{ic|source $HOME/.cargo/env}} を実行する必要があります。rustup をアップデート {{ic|rustup self update}} を実行するだけです。&lt;br /&gt;
&lt;br /&gt;
{{Warning|[https://rustup.rs/ Rustup] のドキュメントに書かれている、{{ic|curl &#039;&#039;some-url&#039;&#039; | sh}} を実行するのは、セキュリティ上のリスクがあると考えられます。ダウンロード中に壊れさえするかもしれない、未知のソースコードを実行するからです。従って、実行する前に、手動でダウンロードし内容を確認することが推奨されます。}}&lt;br /&gt;
&lt;br /&gt;
{{Note|{{ic|rustup}} コマンドを実行する前に PATH に {{ic|$HOME/.cargo/bin}} を追加してください。}}&lt;br /&gt;
&lt;br /&gt;
==== Arch Linux パッケージ ====&lt;br /&gt;
&lt;br /&gt;
{{Pkg|rustup}} は[[公式リポジトリ]]からインストールすることもできます。公式リポジトリからインストールした場合 {{ic|rustup self update}} は使用できないので注意してください。pacman で直接パッケージをアップデートする必要があります。&lt;br /&gt;
&lt;br /&gt;
この方法だと、Rust のバイナリが {{ic|~/.cargo/bin}} ではなく {{ic|/usr/bin}} にあり、{{ic|PATH}} に別のディレクトリを加えなくてよい利点があります。&lt;br /&gt;
&lt;br /&gt;
{{Note|既定では、{{Pkg|rustup}} パッケージをインストールしても、ツールチェインはインストール&#039;&#039;&#039;されません&#039;&#039;&#039;。かわりに、{{ic|/usr/bin/rustup}} コマンドから {{ic|/usr/bin/rustc}} や {{ic|/usr/bin/cargo}} など一般的なバイナリにシンボリックリンクが張られます。次に述べるように、Rust コマンドを動作させるには、利用者が手動でツールチェインをインストールする必要があります。}}&lt;br /&gt;
&lt;br /&gt;
ツールチェインをインストールするには、{{ic|stable}} か {{ic|nightly}} のどちらのバージョンを使用するか rustup に指定する必要があります:&lt;br /&gt;
&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
$ rustup default stable&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
==== 使い方 ====&lt;br /&gt;
&lt;br /&gt;
{{ic|stable}}、{{ic|beta}}、{{ic|nightly}} や {{ic|1.23.0}} などのツールチェインを手動でインストールする必要があったり、また、他のツールチェインを使用したりテストするときには次のコマンドを入力します:&lt;br /&gt;
&lt;br /&gt;
 $ rustup toolchain install &#039;&#039;toolchain&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
すると、Rust コマンドを {{ic|rustup run &#039;&#039;toolchain&#039;&#039; &#039;&#039;command&#039;&#039;}} として実行できます。これらのコマンドを直接実行するには、ツールチェインをアクティベートする必要があります:&lt;br /&gt;
 $ rustup default toolchain&lt;br /&gt;
&lt;br /&gt;
{{ic|rustc -V}} を使って rust のバージョンを確認してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|$ rustc -V |&amp;lt;nowiki&amp;gt;&lt;br /&gt;
rustc 1.26.0 (a77568041 2018-05-07)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Note|Rustup は {{Pkg|rust}} パッケージに含まれている Rust コマンドのうち、{{ic|rustfmt}} や {{ic|rls}} などいくつかをインストールしません。これにより、Rust メンテナが nightly チャンネルを {{ic|rustfmt}}/{{ic|rls}} が壊れていても提供できるようになります。これらをインストールするには、個別に {{ic|rustup component add rls}} および {{ic|rustup component add rustfmt}} を実行します。また、実行することで、{{ic|rustfmt}}/{{ic|rls}} が壊れる場合、nightly チャンネルの更新を保留するようになります。}}&lt;br /&gt;
&lt;br /&gt;
{{Note|Rust 自身にはリンカはないので、リンカが別途インストールされてなければなりません。リンカとして例えば {{Pkg|gcc}} をインストールすることができます。リンカがないと Rust は {{ic|error: linker `cc` not found.}} とエラーを出力します。}}&lt;br /&gt;
&lt;br /&gt;
=== インストールのテスト ===&lt;br /&gt;
&lt;br /&gt;
以下のようなシンプルなプログラムをビルドして、Rust が正しくインストールされていることを確認してください:&lt;br /&gt;
{{hc|~/hello.rs|&lt;br /&gt;
 fn main() {&lt;br /&gt;
     println!(&amp;quot;Hello, World!&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{ic|rustc}} でコンパイルして実行することができます:&lt;br /&gt;
{{hc|$ rustc hello.rs &amp;amp;&amp;amp; ./hello|&lt;br /&gt;
Hello, World!&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== クロスコンパイル ==&lt;br /&gt;
&lt;br /&gt;
=== rustup を使う ===&lt;br /&gt;
&lt;br /&gt;
rustup を使うことで簡単にクロスコンパイルができます。rustup は多数のクロスコンパイルターゲットに対応しています。対応しているプラットフォームの完全なリストは {{ic|rustup target list}} を実行することで確認できます。&lt;br /&gt;
&lt;br /&gt;
例えば、gnu コンパイラを使って Windows 用にコンパイルする stable チャンネルの rust をインストールしたい場合、以下を実行:&lt;br /&gt;
&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
$ rustup install stable-x86_64-pc-windows-gnu&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
上記のコマンドでは、コンパイル先のアーキテクチャ用の rust とツールしかインストールされません。場合によってはクロスコンパイルするのに追加でツールが必要になる可能性があります。&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
このセクションでは、{{ic|$ARCH}} がターゲットのアーキテクチャです ({{ic|x86_64}} または {{ic|i686}})。&lt;br /&gt;
&lt;br /&gt;
# {{AUR|mingw64-w64-gcc-base}}{{Broken package link|パッケージが存在しません}} と {{Pkg|mingw-w64-gcc}} と {{Pkg|wine}} を[[インストール]]。&lt;br /&gt;
# rustup を使っている場合、{{ic|rustup install stable-$ARCH-pc-windows-gnu}} と {{ic|rustup target add $ARCH-pc-windows-gnu}} を実行することで rust と標準ライブラリをインストールできます。rustup を使っていない場合、rustlib ディレクトリ ({{AUR|rust-nightly-bin}} を使用する場合は {{ic|/usr/local/lib/rustlib}}、公式の {{Pkg|rust}} パッケージを使用する場合は {{ic|/usr/lib/rustlib}}) に Windows 用の Rust の標準ライブラリのコピーをインストールします。一番簡単な方法は、ターゲットとするアーキテクチャの Windows 用の Rust インストーラーをダウンロードして、Wine を使ってインストール ({{ic|wine start my-rust-installer.msi}}) してから rustlib ディレクトリにコピー {{ic|$INSTALL_DIR/bin/rustlib/$ARCH-pc-windows-gnu}} する方法です。&lt;br /&gt;
# 最後に、cargo の設定ファイルに以下を追加して MinGW-w64 の gcc/ar のパスを cargo に指定します:&lt;br /&gt;
{{hc|~/.cargo/config|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
[target.$ARCH-pc-windows-gnu]&lt;br /&gt;
linker = &amp;quot;/usr/bin/$ARCH-w64-mingw32-gcc&amp;quot;&lt;br /&gt;
ar = &amp;quot;/usr/$ARCH-w64-mingw32/bin/ar&amp;quot;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
cargo に {{ic|--target $ARCH-pc-windows-gnu}} と指定することで Windows 向けのクロスコンパイルができます:&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
$ # Build&lt;br /&gt;
$ cargo build --release --target &amp;quot;$ARCH-pc-windows-gnu&amp;quot;&lt;br /&gt;
$ # Run unit tests under wine&lt;br /&gt;
$ cargo test --target &amp;quot;$ARCH-pc-windows-gnu&amp;quot;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
=== 非公式パッケージ ===&lt;br /&gt;
&lt;br /&gt;
[[非公式ユーザーリポジトリ#archlinuxcn|非公式の archlinuxcn リポジトリ]]には i686, ARM, ARMv7, Windows 32, Windows 64 向けの rust-nightly と Rust 標準ライブラリが含まれています。パッケージをインストールすればクロスコンパイルができます。ただし、ARM のツールチェインは自分で用意する必要があります。32ビット版の Windows を対象にビルドする場合、実行するのに {{ic|libgcc_s_dw2-1.dll}} が必要になります。&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
&lt;br /&gt;
Rust のパッケージマネージャである [https://crates.io/ Cargo] は {{Pkg|rust}} パッケージに付属しています。ナイトリー版は AUR の {{AUR|cargo-nightly-bin}} でインストールできます。{{Pkg|rustup}} を使用している場合、Cargo は既にインストールされています。&lt;br /&gt;
&lt;br /&gt;
Cargo は Rust プロジェクトの依存関係を宣言することができるようにするツールであり、それによってビルドがいつでも通ることが保証されます。&lt;br /&gt;
&lt;br /&gt;
=== 使用方法 ===&lt;br /&gt;
&lt;br /&gt;
Cargo を使って新しいプロジェクトを作成するには:&lt;br /&gt;
{{bc|$ cargo new hello_world --bin}}&lt;br /&gt;
&lt;br /&gt;
{{Note|Cargo がプロジェクトをコンパイルするのに必要なメタデータを全て含めたマニフェストファイルである {{ic|Cargo.toml}} ファイルを Cargo は使用します:&lt;br /&gt;
{{hc|head=Cargo.toml|&lt;br /&gt;
output=[package]&lt;br /&gt;
name = &amp;quot;hello_world&amp;quot;&lt;br /&gt;
version = &amp;quot;0.1.0&amp;quot;&lt;br /&gt;
authors = [&amp;quot;Your Name &amp;lt;you@example.com&amp;gt;&amp;quot;]&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== sccache ===&lt;br /&gt;
[https://github.com/mozilla/sccache sccache] を使うと中間生成物をキャッシュすることで、前回のコンパイル時から変化しない部分の再コンパイル時間を省きます。{{Pkg|sccache}} パッケージで[[インストール]]できます。&lt;br /&gt;
&lt;br /&gt;
Cargo で利用するには以下の方法があります。&lt;br /&gt;
{{ic|RUSTC_WRAPPER}} [[環境変数]]を設定することで一時的に sccache を利用できます:&lt;br /&gt;
 RUSTC_WRAPPER=sccache cargo build&lt;br /&gt;
&lt;br /&gt;
常に利用するようにするには、{{ic|~/.cargo/config}} に以下の設定を加えます:&lt;br /&gt;
{{hc|~/.cargo/config|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
[build]&lt;br /&gt;
rustc-wrapper = &amp;quot;sccache&amp;quot;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== IDE のサポート ==&lt;br /&gt;
&lt;br /&gt;
=== ツール ===&lt;br /&gt;
&lt;br /&gt;
==== Racer ====&lt;br /&gt;
&lt;br /&gt;
[https://github.com/phildawes/racer Racer] 自動補完エンジンは Rust の自動補完が必要な際に現在最も優れている選択肢です。ただし、Racer を使うには Rust のソースコードのコピーをインストールする必要があります。入手する方法は複数存在します:&lt;br /&gt;
* rustup を使う: {{ic|rustup component add rust-src}}。&lt;br /&gt;
* AUR を使う: {{Aur|rust-src}}{{Broken package link|パッケージが存在しません}} または {{Aur|rust-nightly-src}}。AUR を使用する場合は {{ic|RUST_SRC_PATH}} 環境変数を設定してください。&lt;br /&gt;
ソースコードをインストールしたら、{{pkg|rust-racer}} パッケージをインストールするか、[[#Cargo|Cargo]] を使って Racer をインストールすることができます:&lt;br /&gt;
&lt;br /&gt;
 $ cargo install racer&lt;br /&gt;
&lt;br /&gt;
==== Clippy ====&lt;br /&gt;
&lt;br /&gt;
[https://github.com/Manishearth/rust-clippy Clippy] は Rust のナイトリービルドに存在するコンパイラプラグイン機能を利用して、様々なエラーや慣習的な警告を検出する文法チェックを行います。安定版の Rust コンパイラでコンパイルするときに clippy を使うことはできません。Clippy は cargo でインストールできます:&lt;br /&gt;
&lt;br /&gt;
 $ cargo install clippy&lt;br /&gt;
&lt;br /&gt;
=== エディタ ===&lt;br /&gt;
&lt;br /&gt;
{{Note|IDE やテキストエディタの対応状況については [https://areweideyet.com/ Are we (I)DE yet?] にも述べられています。}}&lt;br /&gt;
&lt;br /&gt;
==== Atom ====&lt;br /&gt;
&lt;br /&gt;
[[Atom]] はプラグインで Rust 言語をサポートします: [https://atom.io/packages/language-rust language-rust] と [https://atom.io/packages/linter-rust linter-rust]。&lt;br /&gt;
&lt;br /&gt;
==== IntelliJ IDEA ====&lt;br /&gt;
&lt;br /&gt;
[[IntelliJ IDEA]] には [https://github.com/intellij-rust/intellij-rust Rust プラグイン] が存在します。CLion でも同じプラグインが使えます。ツールチェインを設定するときは rustup を使ってソースをダウンロード ({{ic|rustup component add rust-src}}) して、ツールチェインのディレクトリとして {{ic|~/.rustup/toolchains/&amp;lt;your toolchain&amp;gt;/bin}} を選択してください。&lt;br /&gt;
&lt;br /&gt;
==== Visual Studio Code ====&lt;br /&gt;
&lt;br /&gt;
[[VSCode]] の Rust のサポートは [https://marketplace.visualstudio.com/items?itemName=kalitaalexey.vscode-rust Rust] 拡張をインストールすることで得られます。&lt;br /&gt;
&lt;br /&gt;
==== Vim ====&lt;br /&gt;
&lt;br /&gt;
[[Vim]] による Rust のサポートは公式の [https://github.com/rust-lang/rust.vim rust.vim] プラグインで得ることができます。&lt;br /&gt;
&lt;br /&gt;
====Emacs====&lt;br /&gt;
&lt;br /&gt;
Emacs の Rust サポートは公式の [https://github.com/rust-lang/rust-mode rust-mode] プラグインか {{AUR|emacs-rust-mode}}{{Broken package link|パッケージが存在しません}} パッケージで有効にできます。&lt;br /&gt;
&lt;br /&gt;
==== Kate ====&lt;br /&gt;
​&lt;br /&gt;
Kate support for Rust is installed by default by the {{Pkg|kate}} package,  but also requires extra configurations.&lt;br /&gt;
First, install the package {{Pkg|rust-racer}} &lt;br /&gt;
Second, get the Rust source:&lt;br /&gt;
* With rustup: {{ic|rustup component add rust-src}}&lt;br /&gt;
* or From the AUR: {{Aur|rust-src-git}} or {{Aur|rust-nightly-src}}, in this case you must set the {{ic|RUST_SRC_PATH}} environment var.&lt;br /&gt;
Third, configure Kate by clicking Settings -&amp;gt; Configure Kate,  then navigate to Application -&amp;gt; Plugins,  then tick the &#039;Rust code completion&#039;,  then you will see Application -&amp;gt; Rust code completion in the left sidebar, navigation to it, and assign &#039;Rust source tree location&#039; to {{ic|$HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src}}&lt;br /&gt;
if you install the Rust source with rustup.&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
 &lt;br /&gt;
* [http://rust-lang.org/ Rust プログラミング言語の公式ウェブサイト]&lt;br /&gt;
* [https://www.rust-lang.org/documentation.html Rust ドキュメント]&lt;br /&gt;
* [http://doc.rust-lang.org/stable/book/ 公式 Rust Book]&lt;br /&gt;
* [https://doc.rust-lang.org/std/ 標準ライブラリ API 索引]&lt;br /&gt;
* [http://rustbyexample.com/ 説明が付されているサンプル集]&lt;br /&gt;
* [https://github.com/ctjhoa/rust-learning Rust チュートリアルのページリスト]&lt;br /&gt;
* [https://crates.io/ Cargo で使用できるライブラリ (crate)]&lt;br /&gt;
* [https://this-week-in-rust.org/ 今週の Rust]&lt;br /&gt;
* [http://blog.rust-lang.org/ Rust プログラミング言語ブログ]&lt;br /&gt;
* [https://users.rust-lang.org/ Rust ユーザーフォーラム]&lt;br /&gt;
* [https://internals.rust-lang.org/ Rust Internals フォーラム]&lt;br /&gt;
* [https://rust.libhunt.com/ Awesome Rust: Rust ライブラリやリソースの精選集]&lt;br /&gt;
* [[Wikipedia:ja:Rust (プログラミング言語)|Wikipedia の記事]]&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=21122</id>
		<title>利用者:R6eve</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=21122"/>
		<updated>2021-08-04T21:32:26Z</updated>

		<summary type="html">&lt;p&gt;R6eve: 内容を「Neat」で置換&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Neat&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=16540</id>
		<title>利用者:R6eve</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=16540"/>
		<updated>2020-06-25T06:17:54Z</updated>

		<summary type="html">&lt;p&gt;R6eve: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Neat&lt;br /&gt;
&lt;br /&gt;
* GitHub - https://github.com/r6eve/&lt;br /&gt;
* E-Mail - (λx.r6eve179fxgmail.com)@&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=14448</id>
		<title>利用者:R6eve</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=14448"/>
		<updated>2019-04-08T05:39:21Z</updated>

		<summary type="html">&lt;p&gt;R6eve: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ニート&lt;br /&gt;
&lt;br /&gt;
* GitHub - https://github.com/r6eve/&lt;br /&gt;
* E-Mail - (λx.r6eve179fxgmail.com)@&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=WeeChat&amp;diff=13881</id>
		<title>WeeChat</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=WeeChat&amp;diff=13881"/>
		<updated>2019-01-29T07:30:16Z</updated>

		<summary type="html">&lt;p&gt;R6eve: サーバーに接続セクションを翻訳&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Internet Relay Chat]]&lt;br /&gt;
[[en:WeeChat]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|IRC チャンネル}}&lt;br /&gt;
{{Related|irssi}}&lt;br /&gt;
{{Related|HexChat}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
&#039;&#039;&#039;WeeChat&#039;&#039;&#039; は高い拡張性を誇る機能豊富な IRC クライアントです。現在も活発に開発されています。&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
[[公式リポジトリ]]から {{Pkg|weechat}} を[[インストール]]してください。開発版は [[AUR]] の {{AUR|weechat-git}} でインストールできます。&lt;br /&gt;
&lt;br /&gt;
== 実行 ==&lt;br /&gt;
&lt;br /&gt;
WeeChat は複数のインターフェイスを備えられるようになっています。&#039;&#039;&#039;weechat-[interface]&#039;&#039;&#039; を実行して WeeChat を起動してください。&lt;br /&gt;
&lt;br /&gt;
現在のところ WeeChat には Ncurses インターフェイスしかありません。WeeChat の起動コマンドは:&lt;br /&gt;
&lt;br /&gt;
 $ weechat&lt;br /&gt;
&lt;br /&gt;
== 設定 ==&lt;br /&gt;
&lt;br /&gt;
WeeChat を設定する方法は3つあります: WeeChat の内部コマンドを使用する; &#039;&#039;&#039;iset&#039;&#039;&#039; を使用する; もしくは .conf ファイルを直接編集する。WeeChat は終了時や {{ic|/save}} の実行時に自動的に設定を保存するため、エディタで .conf ファイルを編集したら、終了する前にコンソールから {{ic|/reload}} を実行するようにしてください。そうしないと、編集したところが元に戻ってしまいます。&lt;br /&gt;
&lt;br /&gt;
=== 内部コマンド ===&lt;br /&gt;
&lt;br /&gt;
{{ic|/set}} コマンドは次の構造に従います:&lt;br /&gt;
{{ic|/set.[file.name].[section].[directive]}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;weechat&#039;&#039;&#039;のバッファ・ウィンドウにて {{ic|/set}} と打つことですべての設定可能オプションの一覧を得られます。デフォルトの設定可能オプションは約600個もあるので、ワイルドカードを使って検索するのがおすすめです: {{ic|/set irc.server.*}} や {{ic|/set *server*}} のように使えます。{{ic|/help}} コマンドを使ってオプション毎にヘルプを得ることもできます。&lt;br /&gt;
&lt;br /&gt;
 /help irc.server.freenode.autoconnect&lt;br /&gt;
&lt;br /&gt;
=== 内部メニュー ===&lt;br /&gt;
&lt;br /&gt;
より便利にするには、&#039;&#039;&#039;iset&#039;&#039;&#039; スクリプトをインストールしてください。weechat 0.3.9 の場合は次を実行します:&lt;br /&gt;
&lt;br /&gt;
 /script install iset.pl&lt;br /&gt;
&lt;br /&gt;
それより古いバージョンなら、{{ic|/weeget install iset}} を使うか、[http://www.weechat.org/scripts/source/stable/iset.pl.html/ iset.pl] を {{ic|~/.weechat/perl/autoload}} へ直接ダウンロードしてください。&lt;br /&gt;
&lt;br /&gt;
インストールが完了したら、次を実行します。&lt;br /&gt;
&lt;br /&gt;
 /iset&lt;br /&gt;
&lt;br /&gt;
すべての設定オプションが表示されたバッファを得られます。&lt;br /&gt;
&lt;br /&gt;
=== 設定ファイル ===&lt;br /&gt;
&lt;br /&gt;
WeeChat の .conf ファイルは {{ic|~/.weechat}} に保存されています。ファイルにコメントは付いていません。詳しい説明はプログラムの内部コマンドを使うか、WeeChat の [http://www.weechat.org/files/doc/stable/weechat_user.en.html ユーザーガイド] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
{{Tip|{{ic|.weechat}} ディレクトリを別の場所（&#039;&#039;$XDG_CONFIG_HOME&#039;&#039; のような）に指定したい場合は、次のオプションを使ってください : {{ic|$weechat -d $XDG_CONFIG_HOME/weechat}}}}&lt;br /&gt;
&lt;br /&gt;
== サーバーに接続 ==&lt;br /&gt;
&lt;br /&gt;
{{Note| 1.1+ [https://weechat.org/files/releasenotes/ReleaseNotes-devel.html#_temporary_servers_disabled_by_default_with_connect Release Note] では &#039;&#039;&#039;/connect&#039;&#039;&#039; による一時的なサーバへの接続はデフォルトで無効にされています。&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;/set irc.look.temporary_servers on&#039;&#039;&#039; で有効にできます。&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;/connect&#039;&#039;&#039; を使うことでIRCサーバへ接続できます。&lt;br /&gt;
&lt;br /&gt;
 /connect chat.freenode.net&lt;br /&gt;
&lt;br /&gt;
また、&#039;&#039;&#039;Server&#039;&#039;&#039; の設定が済んでるなら次でもできます:&lt;br /&gt;
&lt;br /&gt;
 /connect freenode&lt;br /&gt;
&lt;br /&gt;
== サーバープロファイルの作成 ==&lt;br /&gt;
&lt;br /&gt;
If you plan on connecting to a server more than once it may be beneficial to create a &#039;&#039;&#039;Server&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
 /server add example irc.example.net/6667&lt;br /&gt;
&lt;br /&gt;
Would create the server &#039;&#039;&#039;example&#039;&#039;&#039; which would connect to &#039;&#039;&#039;irc.example.net&#039;&#039;&#039; on port &#039;&#039;&#039;6667&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
See the WeeChat documentation and &#039;&#039;&#039;/help server&#039;&#039;&#039; for more information.&lt;br /&gt;
&lt;br /&gt;
== SSL の設定 ==&lt;br /&gt;
&lt;br /&gt;
Many IRC servers, including [https://freenode.net/ freenode] where [[IRC チャンネル|#archlinux]] is, support SSL.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re making a server with &#039;&#039;&#039;/server&#039;&#039;&#039;, add the SSL port (usually 6697) and &#039;&#039;&#039;-ssl&#039;&#039;&#039; to the end of the line. For example:&lt;br /&gt;
&lt;br /&gt;
 /server add freenode chat.freenode.net/6697 -ssl&lt;br /&gt;
&lt;br /&gt;
You can do the same thing if using &#039;&#039;&#039;/connect&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
 /connect chat.freenode.net/6697 -ssl&lt;br /&gt;
&lt;br /&gt;
{{Warning|Some servers need the &#039;&#039;&#039;ssl_dhkey_size&#039;&#039;&#039; value changed to something lower. For example, if you&#039;re using freenode you&#039;ll need to set &#039;&#039;&#039;/set irc.server.freenode.ssl_dhkey_size 1024&#039;&#039;&#039; or &#039;&#039;&#039;/set irc.server.chat.freenode.net.ssl_dhkey_size 1024&#039;&#039;&#039; (see the server log)}}&lt;br /&gt;
&lt;br /&gt;
{{Note|Different servers may have a different port than 6697 - this is server specific.}}&lt;br /&gt;
&lt;br /&gt;
You may also want to change the location where WeeChat looks for trusted authorities (the default value is {{ic|%h/ssl/CAs.pem}} which translates to {{ic|~/.weechat/ssl/CAs.pem)}}:&lt;br /&gt;
&lt;br /&gt;
 /set weechat.network.gnutls_ca_file &amp;quot;/etc/ssl/certs/ca-certificates.crt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== ヒントとテクニック‎ ==&lt;br /&gt;
&lt;br /&gt;
=== アップグレード ===&lt;br /&gt;
&lt;br /&gt;
WeeChat can be upgraded without disconnecting from the IRC servers (non-SSL connections only):&lt;br /&gt;
&lt;br /&gt;
 /upgrade&lt;br /&gt;
&lt;br /&gt;
This will load the new WeeChat binary and reload the current configuration.&lt;br /&gt;
&lt;br /&gt;
=== エイリアス ===&lt;br /&gt;
&lt;br /&gt;
Aliases can be created to simplify commonly executed commands. A nice example is Wraithan&#039;s &#039;&#039;&#039;smart filter&#039;&#039;&#039; alias:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Smart Filter&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
First, we need to enable smart filters:&lt;br /&gt;
&lt;br /&gt;
 /set irc.look.smart_filter &amp;quot;on&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Next, we will create the &#039;&#039;&#039;sfilter&#039;&#039;&#039; alias:&lt;br /&gt;
&lt;br /&gt;
 /alias sfilter filter add irc_smart_$server_$channel irc.$server.$channel irc_smart_filter *&lt;br /&gt;
&lt;br /&gt;
We can now type&lt;br /&gt;
&lt;br /&gt;
 /sfilter&lt;br /&gt;
&lt;br /&gt;
in any buffer, and the smart filter will only be enabled for that buffer.&lt;br /&gt;
&lt;br /&gt;
The following alias will remove a previously enabled smart filter in the current buffer. Add the alias:&lt;br /&gt;
&lt;br /&gt;
 /alias rmsfilter filter del irc_smart_$server_$channel&lt;br /&gt;
&lt;br /&gt;
and execute it by&lt;br /&gt;
&lt;br /&gt;
 /rmsfilter&lt;br /&gt;
&lt;br /&gt;
=== Exec コマンド ===&lt;br /&gt;
A new plugin called &amp;quot;exec&amp;quot; has been added, with command {{ic|/exec}}. It will execute external command and can display output to the current buffer with the &#039;&#039;&#039;-o&#039;&#039;&#039; option or locally (default).&lt;br /&gt;
&lt;br /&gt;
=== キーバインド ===&lt;br /&gt;
&lt;br /&gt;
Some helpful bindings:&lt;br /&gt;
&lt;br /&gt;
To use ctrl-left/right arrow keys to jump to next/previous words on the input line:&lt;br /&gt;
&lt;br /&gt;
 /key bind meta2-1;5D /input move_previous_word&lt;br /&gt;
 /key bind meta2-1;5C /input move_next_word&lt;br /&gt;
&lt;br /&gt;
=== アイドル時に SSH の接続が切れる ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re connecting to your WeeChat through a remote shell using SSH, for example running it in [[screen]] or [[tmux]] you might experience getting disconnected after a while when idle. There are multiple factors in play why this might happen, but the easiest way to change this is to force the connection to be kept alive by appending this to your SSH-configuration on the remote shell.&lt;br /&gt;
&lt;br /&gt;
This has nothing to do with WeeChat itself, but losing connection when idle won&#039;t happen with it&#039;s alternative [[irssi]] by default, and thus is a common situation for those converting to WeeChat. &lt;br /&gt;
&lt;br /&gt;
{{hc|# /etc/ssh/sshd_config|2=&lt;br /&gt;
ClientAliveInterval 300}}&lt;br /&gt;
&lt;br /&gt;
Or have a look at [http://mosh.mit.edu/ Mosh].&lt;br /&gt;
&lt;br /&gt;
=== Slack IRC ゲートウェイ ===&lt;br /&gt;
&lt;br /&gt;
[https://slack.com/ Slack] is a platform for team communication, a IRC on steroïd. Thanks to its open API, it is possible to connect to your slack team using weechat.&lt;br /&gt;
&lt;br /&gt;
Once weechat is running, all you have to is add a new server this way:&lt;br /&gt;
&lt;br /&gt;
{{ic|&amp;lt;nowiki&amp;gt;/server add NAME HOST/6667 -autoconnect -ssl -ssl_dhkey_size=512 -password=PASSWORD -username=USERNAME -nicks=NICK&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;NAME&#039;&#039;&#039; is the name you want to give to the server&lt;br /&gt;
* &#039;&#039;&#039;HOST&#039;&#039;&#039; is the the Host as provided on the Gateways page of your slack team&lt;br /&gt;
* &#039;&#039;&#039;PASSWORD&#039;&#039;&#039; is the Pass as provided on the Gateways page of your slack team&lt;br /&gt;
* &#039;&#039;&#039;USERNAME&#039;&#039;&#039; is the User as provided on the Gateways page of your slack team&lt;br /&gt;
* &#039;&#039;&#039;NICK&#039;&#039;&#039; is your Slack username.&lt;br /&gt;
&lt;br /&gt;
==== ファイルのアップロード ====&lt;br /&gt;
&lt;br /&gt;
To upload a file, run this following command from your shell :&lt;br /&gt;
&lt;br /&gt;
{{ic|&amp;lt;nowiki&amp;gt;curl -F file=@/path/to/file -F channels=CHAN -F token=XXX https://slack.com/api/files.upload&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;CHAN&#039;&#039;&#039; is the channel ID as provided on the Gateways page of your slack team&lt;br /&gt;
* &#039;&#039;&#039;XXX&#039;&#039;&#039; is the team token as provided on the Gateways page of your slack team&lt;br /&gt;
&lt;br /&gt;
== トラブルシューティング ==&lt;br /&gt;
&lt;br /&gt;
=== プラグインのロードエラー ===&lt;br /&gt;
&lt;br /&gt;
You may see output like the following in the main window after starting &#039;&#039;&#039;weechat&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 12:29:37 =!= | Error: unable to load plugin &amp;quot;/usr/lib/weechat/plugins/&#039;&#039;&#039;tcl.so&#039;&#039;&#039;&amp;quot;: libtcl8.6.so: cannot open shared object file: No such file or directory&lt;br /&gt;
 12:29:37 =!= | If you&#039;re trying to load a script and not a C plugin, try command to load scripts (/perl, /python, ...)&lt;br /&gt;
 12:29:37 =!= | Error: unable to load plugin &amp;quot;/usr/lib/weechat/plugins/&#039;&#039;&#039;ruby.so&#039;&#039;&#039;&amp;quot;: libruby.so.2.0: cannot open shared object file: No such file or directory&lt;br /&gt;
 12:29:37 =!= | If you&#039;re trying to load a script and not a C plugin, try command to load scripts (/perl, /python, ...)&lt;br /&gt;
 12:29:37     | Plugins loaded: alias, aspell, charset, fifo, guile, irc, logger, lua, perl, python, relay, rmodifier, script, xfer&lt;br /&gt;
&lt;br /&gt;
The default configuration for weechat attempts to load all plugins found in /usr/lib/weechat/plugins which in this case includes both tcl and ruby. These packages are not required by the weechat package and may not be installed on your machine. There are two options if these errors bother you:&lt;br /&gt;
&lt;br /&gt;
# [[公式リポジトリ]]から {{Pkg|tcl}}, {{Pkg|ruby}} を[[インストール]]。&lt;br /&gt;
# Or, run {{ic|/set weechat.plugin.autoload &amp;quot;*,!tcl,!ruby&amp;quot;}} which will prevent loading those plugins with a bang (!) prefix.&lt;br /&gt;
&lt;br /&gt;
== ヘルプの表示 ==&lt;br /&gt;
&lt;br /&gt;
To access WeeChat&#039;s built-in help, simply type&lt;br /&gt;
&lt;br /&gt;
 /help&lt;br /&gt;
&lt;br /&gt;
and the help will be displayed in the main buffer (usually buffer 1).&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.weechat.org Home Page]&lt;br /&gt;
* [http://www.weechat.org/doc/ WeeChat Documentation]&lt;br /&gt;
* [http://www.weechat.org/scripts/ WeeChat Scripts]&lt;br /&gt;
* [http://dev.weechat.org/ WeeChat Development Blog]&lt;br /&gt;
&lt;br /&gt;
=== ガイド ===&lt;br /&gt;
&lt;br /&gt;
* [http://fixato.org/guides/setting_up_weechat.html FiXato&#039;s guide to WeeChat]&lt;br /&gt;
* [http://pascalpoitras.com/2013/06/29/weechat-my-favorites-scripts/ Pascalpoitras: Favorite scripts]&lt;br /&gt;
* [http://pascalpoitras.com/ Pascalpoitras Weechat Tips]&lt;br /&gt;
* [http://robots.thoughtbot.com/weechat-for-slacks-irc-gateway Thoughbot article on weechat and slack]&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=WeeChat&amp;diff=13879</id>
		<title>WeeChat</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=WeeChat&amp;diff=13879"/>
		<updated>2019-01-28T05:58:23Z</updated>

		<summary type="html">&lt;p&gt;R6eve: 設定セクションを翻訳&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Internet Relay Chat]]&lt;br /&gt;
[[en:WeeChat]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|IRC チャンネル}}&lt;br /&gt;
{{Related|irssi}}&lt;br /&gt;
{{Related|HexChat}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
&#039;&#039;&#039;WeeChat&#039;&#039;&#039; は高い拡張性を誇る機能豊富な IRC クライアントです。現在も活発に開発されています。&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
[[公式リポジトリ]]から {{Pkg|weechat}} を[[インストール]]してください。開発版は [[AUR]] の {{AUR|weechat-git}} でインストールできます。&lt;br /&gt;
&lt;br /&gt;
== 実行 ==&lt;br /&gt;
&lt;br /&gt;
WeeChat は複数のインターフェイスを備えられるようになっています。&#039;&#039;&#039;weechat-[interface]&#039;&#039;&#039; を実行して WeeChat を起動してください。&lt;br /&gt;
&lt;br /&gt;
現在のところ WeeChat には Ncurses インターフェイスしかありません。WeeChat の起動コマンドは:&lt;br /&gt;
&lt;br /&gt;
 $ weechat&lt;br /&gt;
&lt;br /&gt;
== 設定 ==&lt;br /&gt;
&lt;br /&gt;
WeeChat を設定する方法は3つあります: WeeChat の内部コマンドを使用する; &#039;&#039;&#039;iset&#039;&#039;&#039; を使用する; もしくは .conf ファイルを直接編集する。WeeChat は終了時や {{ic|/save}} の実行時に自動的に設定を保存するため、エディタで .conf ファイルを編集したら、終了する前にコンソールから {{ic|/reload}} を実行するようにしてください。そうしないと、編集したところが元に戻ってしまいます。&lt;br /&gt;
&lt;br /&gt;
=== 内部コマンド ===&lt;br /&gt;
&lt;br /&gt;
{{ic|/set}} コマンドは次の構造に従います:&lt;br /&gt;
{{ic|/set.[file.name].[section].[directive]}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;weechat&#039;&#039;&#039;のバッファ・ウィンドウにて {{ic|/set}} と打つことですべての設定可能オプションの一覧を得られます。デフォルトの設定可能オプションは約600個もあるので、ワイルドカードを使って検索するのがおすすめです: {{ic|/set irc.server.*}} や {{ic|/set *server*}} のように使えます。{{ic|/help}} コマンドを使ってオプション毎にヘルプを得ることもできます。&lt;br /&gt;
&lt;br /&gt;
 /help irc.server.freenode.autoconnect&lt;br /&gt;
&lt;br /&gt;
=== 内部メニュー ===&lt;br /&gt;
&lt;br /&gt;
より便利にするには、&#039;&#039;&#039;iset&#039;&#039;&#039; スクリプトをインストールしてください。weechat 0.3.9 の場合は次を実行します:&lt;br /&gt;
&lt;br /&gt;
 /script install iset.pl&lt;br /&gt;
&lt;br /&gt;
それより古いバージョンなら、{{ic|/weeget install iset}} を使うか、[http://www.weechat.org/scripts/source/stable/iset.pl.html/ iset.pl] を {{ic|~/.weechat/perl/autoload}} へ直接ダウンロードしてください。&lt;br /&gt;
&lt;br /&gt;
インストールが完了したら、次を実行します。&lt;br /&gt;
&lt;br /&gt;
 /iset&lt;br /&gt;
&lt;br /&gt;
すべての設定オプションが表示されたバッファを得られます。&lt;br /&gt;
&lt;br /&gt;
=== 設定ファイル ===&lt;br /&gt;
&lt;br /&gt;
WeeChat の .conf ファイルは {{ic|~/.weechat}} に保存されています。ファイルにコメントは付いていません。詳しい説明はプログラムの内部コマンドを使うか、WeeChat の [http://www.weechat.org/files/doc/stable/weechat_user.en.html ユーザーガイド] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
{{Tip|{{ic|.weechat}} ディレクトリを別の場所（&#039;&#039;$XDG_CONFIG_HOME&#039;&#039; のような）に指定したい場合は、次のオプションを使ってください : {{ic|$weechat -d $XDG_CONFIG_HOME/weechat}}}}&lt;br /&gt;
&lt;br /&gt;
== サーバーに接続 ==&lt;br /&gt;
&lt;br /&gt;
{{Note| Using &#039;&#039;&#039;/connect&#039;&#039;&#039; to connect to a temporary server is disabled by default if you&#039;re using 1.1+ [https://weechat.org/files/releasenotes/ReleaseNotes-devel.html#_temporary_servers_disabled_by_default_with_connect Release Note]&lt;br /&gt;
&lt;br /&gt;
Enable by &#039;&#039;&#039;/set irc.look.temporary_servers on&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
You can connect to a IRC server by using &#039;&#039;&#039;/connect&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
 /connect chat.freenode.net&lt;br /&gt;
&lt;br /&gt;
Or if there is already a &#039;&#039;&#039;Server&#039;&#039;&#039; setup you can use:&lt;br /&gt;
&lt;br /&gt;
 /connect freenode&lt;br /&gt;
&lt;br /&gt;
== サーバープロファイルの作成 ==&lt;br /&gt;
&lt;br /&gt;
If you plan on connecting to a server more than once it may be beneficial to create a &#039;&#039;&#039;Server&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
 /server add example irc.example.net/6667&lt;br /&gt;
&lt;br /&gt;
Would create the server &#039;&#039;&#039;example&#039;&#039;&#039; which would connect to &#039;&#039;&#039;irc.example.net&#039;&#039;&#039; on port &#039;&#039;&#039;6667&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
See the WeeChat documentation and &#039;&#039;&#039;/help server&#039;&#039;&#039; for more information.&lt;br /&gt;
&lt;br /&gt;
== SSL の設定 ==&lt;br /&gt;
&lt;br /&gt;
Many IRC servers, including [https://freenode.net/ freenode] where [[IRC チャンネル|#archlinux]] is, support SSL.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re making a server with &#039;&#039;&#039;/server&#039;&#039;&#039;, add the SSL port (usually 6697) and &#039;&#039;&#039;-ssl&#039;&#039;&#039; to the end of the line. For example:&lt;br /&gt;
&lt;br /&gt;
 /server add freenode chat.freenode.net/6697 -ssl&lt;br /&gt;
&lt;br /&gt;
You can do the same thing if using &#039;&#039;&#039;/connect&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
 /connect chat.freenode.net/6697 -ssl&lt;br /&gt;
&lt;br /&gt;
{{Warning|Some servers need the &#039;&#039;&#039;ssl_dhkey_size&#039;&#039;&#039; value changed to something lower. For example, if you&#039;re using freenode you&#039;ll need to set &#039;&#039;&#039;/set irc.server.freenode.ssl_dhkey_size 1024&#039;&#039;&#039; or &#039;&#039;&#039;/set irc.server.chat.freenode.net.ssl_dhkey_size 1024&#039;&#039;&#039; (see the server log)}}&lt;br /&gt;
&lt;br /&gt;
{{Note|Different servers may have a different port than 6697 - this is server specific.}}&lt;br /&gt;
&lt;br /&gt;
You may also want to change the location where WeeChat looks for trusted authorities (the default value is {{ic|%h/ssl/CAs.pem}} which translates to {{ic|~/.weechat/ssl/CAs.pem)}}:&lt;br /&gt;
&lt;br /&gt;
 /set weechat.network.gnutls_ca_file &amp;quot;/etc/ssl/certs/ca-certificates.crt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== ヒントとテクニック‎ ==&lt;br /&gt;
&lt;br /&gt;
=== アップグレード ===&lt;br /&gt;
&lt;br /&gt;
WeeChat can be upgraded without disconnecting from the IRC servers (non-SSL connections only):&lt;br /&gt;
&lt;br /&gt;
 /upgrade&lt;br /&gt;
&lt;br /&gt;
This will load the new WeeChat binary and reload the current configuration.&lt;br /&gt;
&lt;br /&gt;
=== エイリアス ===&lt;br /&gt;
&lt;br /&gt;
Aliases can be created to simplify commonly executed commands. A nice example is Wraithan&#039;s &#039;&#039;&#039;smart filter&#039;&#039;&#039; alias:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Smart Filter&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
First, we need to enable smart filters:&lt;br /&gt;
&lt;br /&gt;
 /set irc.look.smart_filter &amp;quot;on&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Next, we will create the &#039;&#039;&#039;sfilter&#039;&#039;&#039; alias:&lt;br /&gt;
&lt;br /&gt;
 /alias sfilter filter add irc_smart_$server_$channel irc.$server.$channel irc_smart_filter *&lt;br /&gt;
&lt;br /&gt;
We can now type&lt;br /&gt;
&lt;br /&gt;
 /sfilter&lt;br /&gt;
&lt;br /&gt;
in any buffer, and the smart filter will only be enabled for that buffer.&lt;br /&gt;
&lt;br /&gt;
The following alias will remove a previously enabled smart filter in the current buffer. Add the alias:&lt;br /&gt;
&lt;br /&gt;
 /alias rmsfilter filter del irc_smart_$server_$channel&lt;br /&gt;
&lt;br /&gt;
and execute it by&lt;br /&gt;
&lt;br /&gt;
 /rmsfilter&lt;br /&gt;
&lt;br /&gt;
=== Exec コマンド ===&lt;br /&gt;
A new plugin called &amp;quot;exec&amp;quot; has been added, with command {{ic|/exec}}. It will execute external command and can display output to the current buffer with the &#039;&#039;&#039;-o&#039;&#039;&#039; option or locally (default).&lt;br /&gt;
&lt;br /&gt;
=== キーバインド ===&lt;br /&gt;
&lt;br /&gt;
Some helpful bindings:&lt;br /&gt;
&lt;br /&gt;
To use ctrl-left/right arrow keys to jump to next/previous words on the input line:&lt;br /&gt;
&lt;br /&gt;
 /key bind meta2-1;5D /input move_previous_word&lt;br /&gt;
 /key bind meta2-1;5C /input move_next_word&lt;br /&gt;
&lt;br /&gt;
=== アイドル時に SSH の接続が切れる ===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re connecting to your WeeChat through a remote shell using SSH, for example running it in [[screen]] or [[tmux]] you might experience getting disconnected after a while when idle. There are multiple factors in play why this might happen, but the easiest way to change this is to force the connection to be kept alive by appending this to your SSH-configuration on the remote shell.&lt;br /&gt;
&lt;br /&gt;
This has nothing to do with WeeChat itself, but losing connection when idle won&#039;t happen with it&#039;s alternative [[irssi]] by default, and thus is a common situation for those converting to WeeChat. &lt;br /&gt;
&lt;br /&gt;
{{hc|# /etc/ssh/sshd_config|2=&lt;br /&gt;
ClientAliveInterval 300}}&lt;br /&gt;
&lt;br /&gt;
Or have a look at [http://mosh.mit.edu/ Mosh].&lt;br /&gt;
&lt;br /&gt;
=== Slack IRC ゲートウェイ ===&lt;br /&gt;
&lt;br /&gt;
[https://slack.com/ Slack] is a platform for team communication, a IRC on steroïd. Thanks to its open API, it is possible to connect to your slack team using weechat.&lt;br /&gt;
&lt;br /&gt;
Once weechat is running, all you have to is add a new server this way:&lt;br /&gt;
&lt;br /&gt;
{{ic|&amp;lt;nowiki&amp;gt;/server add NAME HOST/6667 -autoconnect -ssl -ssl_dhkey_size=512 -password=PASSWORD -username=USERNAME -nicks=NICK&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;NAME&#039;&#039;&#039; is the name you want to give to the server&lt;br /&gt;
* &#039;&#039;&#039;HOST&#039;&#039;&#039; is the the Host as provided on the Gateways page of your slack team&lt;br /&gt;
* &#039;&#039;&#039;PASSWORD&#039;&#039;&#039; is the Pass as provided on the Gateways page of your slack team&lt;br /&gt;
* &#039;&#039;&#039;USERNAME&#039;&#039;&#039; is the User as provided on the Gateways page of your slack team&lt;br /&gt;
* &#039;&#039;&#039;NICK&#039;&#039;&#039; is your Slack username.&lt;br /&gt;
&lt;br /&gt;
==== ファイルのアップロード ====&lt;br /&gt;
&lt;br /&gt;
To upload a file, run this following command from your shell :&lt;br /&gt;
&lt;br /&gt;
{{ic|&amp;lt;nowiki&amp;gt;curl -F file=@/path/to/file -F channels=CHAN -F token=XXX https://slack.com/api/files.upload&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;CHAN&#039;&#039;&#039; is the channel ID as provided on the Gateways page of your slack team&lt;br /&gt;
* &#039;&#039;&#039;XXX&#039;&#039;&#039; is the team token as provided on the Gateways page of your slack team&lt;br /&gt;
&lt;br /&gt;
== トラブルシューティング ==&lt;br /&gt;
&lt;br /&gt;
=== プラグインのロードエラー ===&lt;br /&gt;
&lt;br /&gt;
You may see output like the following in the main window after starting &#039;&#039;&#039;weechat&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 12:29:37 =!= | Error: unable to load plugin &amp;quot;/usr/lib/weechat/plugins/&#039;&#039;&#039;tcl.so&#039;&#039;&#039;&amp;quot;: libtcl8.6.so: cannot open shared object file: No such file or directory&lt;br /&gt;
 12:29:37 =!= | If you&#039;re trying to load a script and not a C plugin, try command to load scripts (/perl, /python, ...)&lt;br /&gt;
 12:29:37 =!= | Error: unable to load plugin &amp;quot;/usr/lib/weechat/plugins/&#039;&#039;&#039;ruby.so&#039;&#039;&#039;&amp;quot;: libruby.so.2.0: cannot open shared object file: No such file or directory&lt;br /&gt;
 12:29:37 =!= | If you&#039;re trying to load a script and not a C plugin, try command to load scripts (/perl, /python, ...)&lt;br /&gt;
 12:29:37     | Plugins loaded: alias, aspell, charset, fifo, guile, irc, logger, lua, perl, python, relay, rmodifier, script, xfer&lt;br /&gt;
&lt;br /&gt;
The default configuration for weechat attempts to load all plugins found in /usr/lib/weechat/plugins which in this case includes both tcl and ruby. These packages are not required by the weechat package and may not be installed on your machine. There are two options if these errors bother you:&lt;br /&gt;
&lt;br /&gt;
# [[公式リポジトリ]]から {{Pkg|tcl}}, {{Pkg|ruby}} を[[インストール]]。&lt;br /&gt;
# Or, run {{ic|/set weechat.plugin.autoload &amp;quot;*,!tcl,!ruby&amp;quot;}} which will prevent loading those plugins with a bang (!) prefix.&lt;br /&gt;
&lt;br /&gt;
== ヘルプの表示 ==&lt;br /&gt;
&lt;br /&gt;
To access WeeChat&#039;s built-in help, simply type&lt;br /&gt;
&lt;br /&gt;
 /help&lt;br /&gt;
&lt;br /&gt;
and the help will be displayed in the main buffer (usually buffer 1).&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.weechat.org Home Page]&lt;br /&gt;
* [http://www.weechat.org/doc/ WeeChat Documentation]&lt;br /&gt;
* [http://www.weechat.org/scripts/ WeeChat Scripts]&lt;br /&gt;
* [http://dev.weechat.org/ WeeChat Development Blog]&lt;br /&gt;
&lt;br /&gt;
=== ガイド ===&lt;br /&gt;
&lt;br /&gt;
* [http://fixato.org/guides/setting_up_weechat.html FiXato&#039;s guide to WeeChat]&lt;br /&gt;
* [http://pascalpoitras.com/2013/06/29/weechat-my-favorites-scripts/ Pascalpoitras: Favorite scripts]&lt;br /&gt;
* [http://pascalpoitras.com/ Pascalpoitras Weechat Tips]&lt;br /&gt;
* [http://robots.thoughtbot.com/weechat-for-slacks-irc-gateway Thoughbot article on weechat and slack]&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=NFS&amp;diff=13732</id>
		<title>NFS</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=NFS&amp;diff=13732"/>
		<updated>2019-01-09T04:29:15Z</updated>

		<summary type="html">&lt;p&gt;R6eve: マイナーな誤字の修正&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ファイルシステム]]&lt;br /&gt;
[[Category:ネットワーク共有]]&lt;br /&gt;
[[ar:NFS]]&lt;br /&gt;
[[cs:NFS]]&lt;br /&gt;
[[de:Network File System]]&lt;br /&gt;
[[en:NFS]]&lt;br /&gt;
[[es:NFS]]&lt;br /&gt;
[[fr:NFS]]&lt;br /&gt;
[[it:NFS]]&lt;br /&gt;
[[ru:NFS]]&lt;br /&gt;
[[zh-hans:NFS]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|NFS/トラブルシューティング}}&lt;br /&gt;
{{Related|Avahi}}&lt;br /&gt;
{{Related|ディスクレスシステム}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
[[Wikipedia:ja:Network File System|Wikipedia]] より:&lt;br /&gt;
: &#039;&#039;Network File System (NFS) はローカルストレージにアクセスするのと同じようにネットワーク上のファイルにクライアントコンピュータでアクセスできるようにする分散ファイルシステムおよびそのプロトコルである。1984年に Sun Microsystems によって開発された。&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
*NFS は暗号化されません。機密情報を扱うときは [[Kerberos]] や [[Tinc]] などの暗号化プロトコルを使って NFS をトンネル化してください。&lt;br /&gt;
*[[Samba]] とは異なり、NFS にはデフォルトでユーザー認証がありません。クライアントのアクセスは IP アドレスや[[ホストネーム]]で制限します。&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
クライアントとサーバーどちらでも必要なのは {{Pkg|nfs-utils}} パッケージの[[pacman|インストール]]だけです。&lt;br /&gt;
&lt;br /&gt;
{{Note|クライアント・サーバーの時計を一致させるために全てのノードで時刻同期デーモンを使うことが強く推奨されます。全てのノードで時計が正確でないと、NFS は望ましくない遅延を生じさせる可能性があります。[[Network Time Protocol daemon|NTP]] システムを使ってサーバーとクライアントの両方をインターネット上の正確な NTP サーバーに同期させることが推奨されています。}}&lt;br /&gt;
&lt;br /&gt;
==設定==&lt;br /&gt;
&lt;br /&gt;
===サーバー===&lt;br /&gt;
&lt;br /&gt;
NFS サーバーにはエクスポート (共有ディレクトリ) のリストが必要で、{{ic|/etc/exports}} に定義します。{{ic|/etc/exports}} に定義する NFS 共有はいわゆる NFS ルートからの相対パスになります。セキュリティ上、NFS ルートを定義するときはサーバーのルートファイルシステム下の専用のディレクトリツリーを使用して、ユーザーからマウントポイントへのアクセスを制限すると良いでしょう。バインドマウントを使用して共有マウントポイントから実際のファイルシステム上のディレクトリにリンクします。&lt;br /&gt;
&lt;br /&gt;
下の例では以下の設定を使用します:&lt;br /&gt;
# NFS ルートは {{ic|/srv/nfs}}。&lt;br /&gt;
# エクスポートは {{ic|/srv/nfs/music}} で {{ic|/mnt/music}} にバインドマウントする。&lt;br /&gt;
&lt;br /&gt;
 # mkdir -p /srv/nfs/music /mnt/music&lt;br /&gt;
 # mount --bind /mnt/music /srv/nfs/music&lt;br /&gt;
&lt;br /&gt;
サーバーを再起動してもマウントされるように、バインドマウントを [[fstab]] に追加:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/fstab|/mnt/music /srv/nfs/music  none   bind   0   0}}&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
* NFS にはサーバーのファイルシステムのパーミッションが適用されるため、接続するユーザーに適当な権限があることを確認してください。&lt;br /&gt;
* [[ZFS]] ファイルシステムの場合、バインドマウントの使い方が特殊です。[[ZFS#バインドマウント]]を見てください。}}&lt;br /&gt;
&lt;br /&gt;
CIDR によるアドレス指定またはホストネームを使ってマウントを許可するクライアントマシンを制限するには {{ic|/etc/exports}} に以下のように共有ディレクトリを追加:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/exports|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/srv/nfs       192.168.1.0/24(rw,fsid=root,crossmnt)&lt;br /&gt;
/srv/nfs/music 192.168.1.0/24(rw) # Use whatever export options you see fit&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
サーバー実行中に {{ic|/etc/exports}} を変更した場合は再度エクスポートしないと変更が適用されないので注意してください:&lt;br /&gt;
 # exportfs -rav&lt;br /&gt;
&lt;br /&gt;
利用可能なオプションについて詳しくは {{man|5|exports}} を参照してください。&lt;br /&gt;
{{Tip|IP の範囲を CIDR 表記に変換するツールとして [http://ip2cidr.com/ ip2cidr] が存在します。}}&lt;br /&gt;
{{Note|エクスポート先が tmpfs ファイルシステムの場合、{{ic|1=fsid=1}} オプションが必要です。}}&lt;br /&gt;
&lt;br /&gt;
==== サーバーを起動する ====&lt;br /&gt;
&lt;br /&gt;
{{ic|nfs-server.service}} を[[起動]]・[[有効化]]してください。&lt;br /&gt;
&lt;br /&gt;
==== その他 ====&lt;br /&gt;
&lt;br /&gt;
===== 任意のサーバー設定 =====&lt;br /&gt;
&lt;br /&gt;
高度な設定オプションは {{ic|/etc/nfs.conf}} で設定できます。単純な構成の場合はファイルを編集する必要はありません。&lt;br /&gt;
&lt;br /&gt;
===== 特定のインターフェイスあるいは IP からのアクセスに NFS を制限 =====&lt;br /&gt;
&lt;br /&gt;
デフォルトでは {{ic|nfs-server.service}} を起動すると {{ic|/etc/exports}} とは関係なく全てのネットワークインターフェイスから接続を待機します。待機する IP あるいはホストネームを定義することで挙動を変更できます:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/nfs.conf|2=&lt;br /&gt;
[nfsd]&lt;br /&gt;
host=192.168.1.123&lt;br /&gt;
# Alternatively, you can use your hostname.&lt;br /&gt;
# host=myhostname&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
変更を適用するには {{ic|nfs-server.service}} を[[再起動]]してください。&lt;br /&gt;
&lt;br /&gt;
===== NFSv4 の ID マッピングが有効になっていることを確認 =====&lt;br /&gt;
&lt;br /&gt;
idmapd が動作していても、マッピングが完全には有効になっていないことがあります。{{ic|/sys/module/nfsd/parameters/nfs4_disable_idmapping}} が {{ic|N}} になっている場合、以下のコマンドを実行することで有効にできます:&lt;br /&gt;
&lt;br /&gt;
 # echo &amp;quot;N&amp;quot; | sudo tee /sys/module/nfsd/parameters/nfs4_disable_idmapping&lt;br /&gt;
&lt;br /&gt;
変更を永続化するには[[カーネルモジュール#モジュールオプションを設定する|モジュールオプション]]で設定してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/modprobe.d/nfsd.conf|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
options nfsd nfs4_disable_idmapping=0&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
===== NFSv3 の固定ポート =====&lt;br /&gt;
NFSv3 クライアントのサポートが必要な場合、固定ポートを使うのが良いでしょう。デフォルトでは NFSv3 による {{ic|rpc.statd}} や {{ic|lockd}} の制御にはランダムな一時ポートが使われます。ファイアウォールを通して NFSv3 の制御ができるようにするには固定ポートを定義する必要があります。{{ic|/etc/sysconfig/nfs}} を編集して {{ic|STATDARGS}} を設定してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/sysconfig/nfs|2=&lt;br /&gt;
STATDARGS=&amp;quot;-p 32765 -o 32766 -T 32803&amp;quot;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{ic|rpc.mountd}} は {{ic|/etc/services}} を読み込んで通常の状態では同じ固定ポート 2048 に bind されます。しかしながら、明示的に定義する必要があるときは {{ic|/etc/sysconfig/nfs}} を編集して {{ic|RPCMOUNTDARGS}} を設定してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/sysconfig/nfs|2=&lt;br /&gt;
RPCMOUNTDARGS=&amp;quot;-p 20048&amp;quot;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
上記の変更を加えたら、複数のサービスを再起動してください。最初に設定オプションを {{ic|/run/sysconfig/nfs-utils}} (参照: {{ic|/usr/lib/systemd/scripts/nfs-utils_env.sh}}) に書き出して、二番目に新しいポートで {{ic|rpc.statd}} を再起動し、最後に新しいポートで {{ic|lockd}} (カーネルモジュール) をリロードします。次のサービスを[[再起動]]してください: {{ic|nfs-config}}, {{ic|rpcbind}}, {{ic|rpc-statd}}, {{ic|nfs-server}}。&lt;br /&gt;
&lt;br /&gt;
再起動後、サーバーで {{ic|rpcinfo -p}} を使って固定ポートが思い通りにいってるか確認してください。クライアントから {{ic|rpcinfo -p &amp;lt;server IP&amp;gt;}} を使えば本当に同じ固定ポートを使っているか明らかになります。&lt;br /&gt;
&lt;br /&gt;
===== NFSv2 との互換性 =====&lt;br /&gt;
&lt;br /&gt;
NFSv2 を使用するクライアント (例えば U-Boot) のサポートが必要な場合、{{ic|/etc/sysconfig/nfs}} に {{ic|1=RPCNFSDARGS=&amp;quot;-V 2&amp;quot;}} を設定してください。&lt;br /&gt;
&lt;br /&gt;
===== ファイアウォール設定 =====&lt;br /&gt;
&lt;br /&gt;
ファイアウォールを通過してアクセスできるようにするには、デフォルト設定の場合 tcp と udp のポート 111, 2049, 20048 を開放する必要があります。{{ic|rpcinfo -p}} を使ってサーバーで使用しているポートを確認してください。この設定を [[iptables]] でするには、{{ic|/etc/iptables/iptables.rules}} を編集して以下の行を含めるようにしてください:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/iptables/iptables.rules|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
-A INPUT -p tcp -m tcp --dport 111 -j ACCEPT&lt;br /&gt;
-A INPUT -p tcp -m tcp --dport 2049 -j ACCEPT&lt;br /&gt;
-A INPUT -p tcp -m tcp --dport 20048 -j ACCEPT&lt;br /&gt;
-A INPUT -p udp -m udp --dport 111 -j ACCEPT&lt;br /&gt;
-A INPUT -p udp -m udp --dport 2049 -j ACCEPT&lt;br /&gt;
-A INPUT -p udp -m udp --dport 20048 -j ACCEPT&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
NFSv3 と、上記の {{ic|rpc.statd}} や {{ic|lockd}} の固定ポートを使用している場合は、それらも設定に追加してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/iptables/iptables.rules|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
-A INPUT -p tcp -m tcp --dport 32765 -j ACCEPT&lt;br /&gt;
-A INPUT -p tcp -m tcp --dport 32803 -j ACCEPT&lt;br /&gt;
-A INPUT -p udp -m udp --dport 32765 -j ACCEPT&lt;br /&gt;
-A INPUT -p udp -m udp --dport 32803 -j ACCEPT&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
v4 以上だけを使う構成の場合、開く必要があるのは tcp ポート 2049 だけです。したがって、必要な行は一行だけになります:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/iptables/iptables.rules|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
-A INPUT -p tcp -m tcp --dport 2049 -j ACCEPT&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
変更を適用するために、{{ic|iptables}} サービスを再起動してください。&lt;br /&gt;
&lt;br /&gt;
=== クライアント ===&lt;br /&gt;
&lt;br /&gt;
NFSv4 で [[Kerberos]] を使用する場合、{{ic|nfs-client.target}} も[[起動]]・[[有効化]]する必要があります。{{ic|rpc-gssd.service}} が起動します。しかしながら、glibc のバグ ({{Bug|50663}}) が原因で、現在 {{ic|rpc-gssd.service}} は起動に失敗します。サービスに &amp;quot;-f&amp;quot; (foreground) フラグを追加することで起動できます:&lt;br /&gt;
&lt;br /&gt;
{{hc|# systemctl edit rpc-gssd.service|2=&lt;br /&gt;
[Unit]&lt;br /&gt;
Requires=network-online.target&lt;br /&gt;
After=network-online.target&lt;br /&gt;
&lt;br /&gt;
[Service]&lt;br /&gt;
Type=simple&lt;br /&gt;
ExecStart=&lt;br /&gt;
ExecStart=/usr/sbin/rpc.gssd -f&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Linux からマウントする ====&lt;br /&gt;
&lt;br /&gt;
NFSv3 の場合、次のコマンドを使ってサーバーのエクスポートされたファイルシステムを表示:&lt;br /&gt;
 $ showmount -e servername&lt;br /&gt;
&lt;br /&gt;
NFSv4 の場合、root NFS ディレクトリをマウントして利用できるマウントを確認:&lt;br /&gt;
 # mount server:/ /mountpoint/on/client&lt;br /&gt;
&lt;br /&gt;
そしてサーバーの NFS エクスポートルートは省略してマウント: &lt;br /&gt;
 # mount -t nfs -o vers=4 servername:/music /mountpoint/on/client&lt;br /&gt;
&lt;br /&gt;
マウントが失敗する場合はサーバーのエクスポートルートを含めて見て下さい (Debian/RHEL/SLES では必須、ディストリビューションによっては {{ic|-t nfs}} ではなく {{ic|-t nfs4}}):&lt;br /&gt;
 # mount -t nfs -o vers=4 servername:/srv/nfs/music /mountpoint/on/client&lt;br /&gt;
&lt;br /&gt;
{{Note|サーバーの名前は (IP アドレスではなく) ホストネームを指定する必要があります。それ以外だとリモート共有がハングアップします。}}&lt;br /&gt;
&lt;br /&gt;
===== /etc/fstab を使う =====&lt;br /&gt;
&lt;br /&gt;
クライアントを立ち上げたときにいつでも NFS 共有が使えるように、常に稼働させているサーバーでは [[fstab]] を利用すると便利です。{{ic|/etc/fstab}} ファイルを編集して、設定に合わせて適切な行を追加してください。また、サーバーの NFS エクスポートルートは省略します。&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/fstab|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
servername:/music  /mountpoint/on/client  nfs   rsize=8192,wsize=8192,timeo=14,_netdev 0 0&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Note|マウントオプションについては {{man|5|nfs}} や {{man|8|mount}} を参照してください。}}&lt;br /&gt;
&lt;br /&gt;
マウントオプションの説明は以下の通り:&lt;br /&gt;
&lt;br /&gt;
; rsize と wsize: {{ic|rsize}} はサーバーから読み込むときに使用されるバイト数の値です。{{ic|wsize}} はサーバーに書き込むときのバイト数の値です。どちらもデフォルトは 1024 ですが、8192 などと値を高く設定することでスループットを改善できます。この値は汎用ではありません。値を変更した後にテストを行うことを推奨します、[[#パフォーマンスチューニング]]を見てください。&lt;br /&gt;
&lt;br /&gt;
; timeo: {{ic|timeo}} は RPC タイムアウトの後に再送信を行うまで待機する時間の値です (10分の1秒単位)。最初にタイムアウトした後、再試行する度にタイムアウトの値は2倍になっていき、最大60秒になるか正式なタイムアウトになります。遅いサーバーやトラフィックの多いネットワークに接続する場合、このタイムアウトの値を増やすことでパフォーマンスが改善されるかもしれません。&lt;br /&gt;
&lt;br /&gt;
; _netdev: {{ic|_netdev}} オプションは共有をマウントする前にネットワークが立ち上がるまで待機するようシステムに通知するオプションです。systemd は NFS がこのオプションを使うことを想定していますが、どんな形式のネットワークファイルシステムであれ、このオプションを使うことはグッドプラクティスと言えます。&lt;br /&gt;
&lt;br /&gt;
; minorversion: NFS バージョン 4.1 の Windows Server 2012 (Essentials) の共有をマウントするときは {{ic| &amp;lt;nowiki&amp;gt;minorversion=1&amp;lt;/nowiki&amp;gt;}} を使います。&lt;br /&gt;
&lt;br /&gt;
{{Note|6番目のフィールド ({{ic|fs_passno}}) をゼロ以外の値に設定すると予期しない挙動が発生することがあります。例えば systemd で自動マウントしたときにチェックの待機が行われなくなります。}}&lt;br /&gt;
&lt;br /&gt;
===== systemd で /etc/fstab を使う =====&lt;br /&gt;
&lt;br /&gt;
systemd の {{ic|automount}} サービスを使う方法もあります。接続が遮断されたり、復帰した時に素早くネットワークデバイスを再マウントするため、{{ic|_netdev}} よりも好ましいと思われます。さらに、autofs の問題も解決します、下の例を見て下さい:&lt;br /&gt;
&lt;br /&gt;
{{hc|1=/etc/fstab|2=&lt;br /&gt;
servername:/home  &#039;&#039;/mountpoint/on/client&#039;&#039;  nfs  noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,x-systemd.idle-timeout=1min 0 0   &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
systemd が fstab の変更に気づくようにクライアントを再起動する必要があります。もしくは、systemd を[[Systemd#ユニットを使う|リロード]]して {{ic|&#039;&#039;mountpoint-on-client&#039;&#039;.automount}} を再起動して {{ic|/etc/fstab}} の設定を再読み込みしてください。&lt;br /&gt;
&lt;br /&gt;
{{Tip|&lt;br /&gt;
* 上記の {{ic|noauto}} はアクセスされるまで NFS 共有をマウントしません: いますぐに利用できるようにしたいときは {{ic|auto}} を使って下さい。&amp;lt;br&amp;gt;ネットワークが立ち上がってなかったり利用できないことが理由でマウントが失敗する問題が発生するときは、{{ic|NetworkManager-wait-online.service}} を [[systemd#ユニットを使う|有効]]にします: このサービスは有効化される前に {{ic|network.target}} の全てのリンクが利用可能になることを保証します。&lt;br /&gt;
* {{ic|users}} マウントオプションはユーザーによるマウントを許可しますが、{{ic|noexec}} などのオプションも含まれているので注意してください。&lt;br /&gt;
* {{ic|&amp;lt;nowiki&amp;gt;x-systemd.idle-timeout=1min&amp;lt;/nowiki&amp;gt;}} オプションは NFS 共有が1分間使われなかったときに自動的にアンマウントします。ネットワークから突然切断する可能性があるノートパソコンなどで有用です。&lt;br /&gt;
* NFS のせいでシャットダウンや再起動に時間がかかってしまうときは、{{ic|NetworkManager-wait-online.service}} を[[有効化]]して NFS ボリュームがアンマウントされる前に NetworkManager が終了しないようにしてください。それでもシャットダウンが長すぎる場合 {{ic|&amp;lt;nowiki&amp;gt;x-systemd.requires=network.target&amp;lt;/nowiki&amp;gt;}} マウントオプションを追加してみてください。&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note|サーバーでも同じ方法で systemd で NFS 共有を自動マウントすると、データの量が多かった場合にフリーズする可能性があります。}}&lt;br /&gt;
&lt;br /&gt;
===== autofs を使う =====&lt;br /&gt;
&lt;br /&gt;
複数のマシンを NFS で接続したい場合は [[autofs]] を使うのが便利です。サーバーだけでなくクライアントにもなることができます。他の簡単な方法よりもこの方法が推奨される理由は、サーバーの電源が落とされた時に、クライアントがNFS 共有を見つけられないことについてエラーを投げないからです。詳しくは [[autofs#NFS ネットワークマウント]] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
==== Windows からマウントする ====&lt;br /&gt;
&lt;br /&gt;
{{Note|&amp;quot;Client for NFS&amp;quot; が含まれているのは Windows 7 の Ultimate と Enterprise エディションや Windows 8 の Enterprise エディションだけです。}}&lt;br /&gt;
&amp;quot;Client for NFS&amp;quot; サービスが有効になっていれば Windows から NFS 共有をマウントできます (デフォルトでは有効になっていません)。&lt;br /&gt;
サービスをインストールするにはコントロールパネルの &amp;quot;Programs and features&amp;quot; から &amp;quot;Turn Windows features on or off&amp;quot; をクリックしてください。&amp;quot;Services for NFS&amp;quot; と副サービス (&amp;quot;Administrative tools&amp;quot; と &amp;quot;Client for NFS&amp;quot;) を両方有効にします。&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Services for Network File System&amp;quot; (検索ボックスで探して下さい) を開いて &#039;&#039;client &amp;gt; properties&#039;&#039; を右クリックすることでグローバルオプションを設定できます。&lt;br /&gt;
&lt;br /&gt;
{{Warning|パフォーマンスに深刻な問題が発生することがありますが (ギガビット LAN でもフォルダを表示するのに30から60秒ほどかかったり、ファイルのコピー速度が 2 MB/s になったりします)、Microsoft はまだ解決方法を用意できていません [https://social.technet.microsoft.com/Forums/en-CA/w7itpronetworking/thread/40cc01e3-65e4-4bb6-855e-cef1364a60ac]。}}&lt;br /&gt;
&lt;br /&gt;
エクスプローラーを使って共有をマウントするには:&lt;br /&gt;
&lt;br /&gt;
{{ic|Computer}} &amp;gt; {{ic|Map network drive}} &amp;gt; {{ic|servername:/srv/nfs4/music}}&lt;br /&gt;
&lt;br /&gt;
==== OS X からマウントする ====&lt;br /&gt;
&lt;br /&gt;
{{Note|OS X はデフォルトでセキュアでない (&amp;gt;1024) ポートを使って共有をマウントしません。}}&lt;br /&gt;
{{ic|insecure}} フラグを使って共有をエクスポートし、Finder でマウントする:&lt;br /&gt;
&lt;br /&gt;
{{ic|Go}} &amp;gt; {{ic|Connect to Server}} &amp;gt; {{ic|nfs://servername/}}&lt;br /&gt;
&lt;br /&gt;
またはターミナルでセキュアなポートを使って共有をマウント:&lt;br /&gt;
 # mount -t nfs -o resvport,nolocks,locallocks servername:/srv/nfs4 /Volumes/servername&lt;br /&gt;
&lt;br /&gt;
{{ic|nolocks}} と {{ic|locallocks}} オプションを使う理由については [https://web.archive.org/web/20151212160906/https://blogs.oracle.com/jag/entry/nfs_on_snow_leopard NFS on Snow Leopard] を見てください。&lt;br /&gt;
&lt;br /&gt;
== ヒントとテクニック ==&lt;br /&gt;
&lt;br /&gt;
=== パフォーマンスチューニング ===&lt;br /&gt;
&lt;br /&gt;
NFS の性能を完全に発揮するには、ネットワーク設定にあわせて {{ic|rsize}} や {{ic|wsize}} マウントオプションを調整する必要があります。&lt;br /&gt;
&lt;br /&gt;
最近の Linux カーネル (2.6.18 以上) ではメモリの容量によって NFS サーバーが使用できる I/O のサイズ (最大ブロックサイズ) が変わります。最大は 1M (1048576バイト) で、NFS クライアントがより大きな {{ic|rsize}} や {{ic|wsize}} を必要としている場合でもサーバーの最大ブロックサイズが使われます [https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/5.8_Technical_Notes/Known_Issues-kernel.html]。&#039;&#039;nfsd&#039;&#039; を起動する前に {{ic|/proc/fs/nfsd/max_block_size}} に書き込むことでサーバーのデフォルト最大ブロックサイズを変更できます。例えば、以下のコマンドは昔のデフォルトの IO サイズであった 32k に設定します:&lt;br /&gt;
&lt;br /&gt;
 # echo 32767 &amp;gt; /proc/fs/nfsd/max_block_size&lt;br /&gt;
&lt;br /&gt;
変更を永続化するには [[Systemd#一時ファイル|systemd-tmpfile]] を作成してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/tmpfiles.d/nfsd-block-size.conf|&lt;br /&gt;
w /proc/fs/nfsd/max_block_size - - - - 32768}}&lt;br /&gt;
&lt;br /&gt;
=== systemd-networkd で共有を自動マウント ===&lt;br /&gt;
&lt;br /&gt;
systemd-networkd を使っている場合、起動時に nfs がマウントされないことがあります。以下のようなエラーが表示されます:&lt;br /&gt;
 mount[311]: mount.nfs4: Network is unreachable&lt;br /&gt;
&lt;br /&gt;
解決方法は簡単です。{{ic|systemd-networkd-wait-online.service}} を[[有効化]]して、ネットワークが完全に設定されるまで待機するように systemd を設定してください。サービスが平行して起動しなくなるので起動時間は多少長くなります。&lt;br /&gt;
&lt;br /&gt;
=== 自動マウントの処理 ===&lt;br /&gt;
&lt;br /&gt;
ローカルのワイヤレスネットワークから nfs 共有を使う必要があるノートパソコンでこの設定は役に立ちます。nfs ホストが到達できない状態になったとき、nfs 共有はアンマウントされ、hard マウントオプションを使っている際にシステムフリーズが起こらなくなります。https://bbs.archlinux.org/viewtopic.php?pid=1260240#p1260240 を参照。&lt;br /&gt;
&lt;br /&gt;
NFS のマウントポイントが {{ic|/etc/fstab}} に正しく記述されていることを確認してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/fstab|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
lithium:/mnt/data          /mnt/data         nfs noauto,noatime,rsize=32768,wsize=32768 0 0&lt;br /&gt;
lithium:/var/cache/pacman  /var/cache/pacman nfs noauto,noatime,rsize=32768,wsize=32768 0 0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{ic|noauto}} マウントオプションは起動時に自動的に共有をマウントしないように systemd に命じます。これを設定していないとネットワーク上に共有が存在するかどうかわからないのに systemd が共有をマウントしようとしてブート中にブランクスクリーンで止まってしまいます。&lt;br /&gt;
&lt;br /&gt;
root 以外のユーザー {{ic|user}} で NFS 共有をマウントするには fstab にエントリを追加する必要があります。&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;cron&#039;&#039; を使って NFS ホストが到達可能なチェックする {{ic|auto_share}} スクリプトを作成:&lt;br /&gt;
&lt;br /&gt;
{{hc|/usr/local/bin/auto_share|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
function net_umount {&lt;br /&gt;
  umount -l -f $1 &amp;amp;&amp;gt;/dev/null&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function net_mount {&lt;br /&gt;
  mountpoint -q $1 || mount $1&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
NET_MOUNTS=$(sed -e &#039;/^.*#/d&#039; -e &#039;/^.*:/!d&#039; -e &#039;s/\t/ /g&#039; /etc/fstab | tr -s &amp;quot; &amp;quot;)$&#039;\n&#039;b&lt;br /&gt;
&lt;br /&gt;
printf %s &amp;quot;$NET_MOUNTS&amp;quot; | while IFS= read -r line&lt;br /&gt;
do&lt;br /&gt;
  SERVER=$(echo $line | cut -f1 -d&amp;quot;:&amp;quot;)&lt;br /&gt;
  MOUNT_POINT=$(echo $line | cut -f2 -d&amp;quot; &amp;quot;)&lt;br /&gt;
&lt;br /&gt;
  # Check if server already tested&lt;br /&gt;
  if [[ &amp;quot;${server_ok[@]}&amp;quot; =~ &amp;quot;${SERVER}&amp;quot; ]]; then&lt;br /&gt;
    # The server is up, make sure the share are mounted&lt;br /&gt;
    net_mount $MOUNT_POINT&lt;br /&gt;
  elif [[ &amp;quot;${server_notok[@]}&amp;quot; =~ &amp;quot;${SERVER}&amp;quot; ]]; then&lt;br /&gt;
    # The server could not be reached, unmount the share&lt;br /&gt;
    net_umount $MOUNT_POINT&lt;br /&gt;
  else&lt;br /&gt;
    # Check if the server is reachable&lt;br /&gt;
    ping -c 1 &amp;quot;${SERVER}&amp;quot; &amp;amp;&amp;gt;/dev/null&lt;br /&gt;
&lt;br /&gt;
    if [ $? -ne 0 ]; then&lt;br /&gt;
      server_notok[${#Unix[@]}]=$SERVER&lt;br /&gt;
      # The server could not be reached, unmount the share&lt;br /&gt;
      net_umount $MOUNT_POINT&lt;br /&gt;
    else&lt;br /&gt;
      server_ok[${#Unix[@]}]=$SERVER&lt;br /&gt;
      # The server is up, make sure the share are mounted&lt;br /&gt;
      net_mount $MOUNT_POINT&lt;br /&gt;
    fi&lt;br /&gt;
  fi&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
スクリプトに実行権限を付与:&lt;br /&gt;
&lt;br /&gt;
 # chmod +x /usr/local/bin/auto_share&lt;br /&gt;
&lt;br /&gt;
[[cron]] エントリか [[systemd/タイマー|systemd タイマー]]を作成して、共有サーバーにアクセスできるか1分ごとに確認するようにしてください。&lt;br /&gt;
&lt;br /&gt;
==== Cron ====&lt;br /&gt;
&lt;br /&gt;
{{hc|# crontab -e|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
* * * * * /usr/local/bin/auto_share&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
==== systemd/タイマー ====&lt;br /&gt;
&lt;br /&gt;
以下のユニットを作成:&lt;br /&gt;
&lt;br /&gt;
{{hc|# /etc/systemd/system/auto_share.timer|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=Check the network mounts&lt;br /&gt;
&lt;br /&gt;
[Timer]&lt;br /&gt;
OnCalendar=*-*-* *:*:00&lt;br /&gt;
&lt;br /&gt;
[Install]&lt;br /&gt;
WantedBy=timers.target&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{hc|# /etc/systemd/system/auto_share.service|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=Check the network mounts&lt;br /&gt;
&lt;br /&gt;
[Service]&lt;br /&gt;
Type=simple&lt;br /&gt;
ExecStart=/usr/local/bin/auto_share&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
作成したら {{ic|auto_share.timer}} を[[有効化]]してください。&lt;br /&gt;
&lt;br /&gt;
==== systemd で起動時にマウント ====&lt;br /&gt;
&lt;br /&gt;
systemd のユニットファイルを使って起動時に NFS 共有をマウントすることも可能です。クライアントに NetworkManager がインストール・設定されている場合はユニットファイルは必要ありません。[[#NetworkManager dispatcher]] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/systemd/system/auto_share.service|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=NFS automount&lt;br /&gt;
After=syslog.target network.target&lt;br /&gt;
&lt;br /&gt;
[Service]&lt;br /&gt;
Type=oneshot&lt;br /&gt;
RemainAfterExit=yes&lt;br /&gt;
ExecStart=/usr/local/bin/auto_share&lt;br /&gt;
&lt;br /&gt;
[Install]&lt;br /&gt;
WantedBy=multi-user.target&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{ic|auto_share.service}} を[[有効化]]してください。&lt;br /&gt;
&lt;br /&gt;
==== NetworkManager dispatcher ====&lt;br /&gt;
&lt;br /&gt;
上で説明している方法に加えて、ネットワークの状態が変わった時にスクリプトを実行するよう NetworkManager を設定することもできます。&lt;br /&gt;
&lt;br /&gt;
{{ic|NetworkManager-dispatcher}} サービスを有効化・起動してください。&lt;br /&gt;
&lt;br /&gt;
ネットワーク状態の変化にあわせてネットワーク上の共有をマウントする一番簡単な方法は {{ic|auto_share}} スクリプトにシンボリックリンクを作成することです:&lt;br /&gt;
&lt;br /&gt;
 # ln -s /usr/local/bin/auto_share /etc/NetworkManager/dispatcher.d/30-nfs.sh&lt;br /&gt;
&lt;br /&gt;
ただし、特定の場合では、ネットワーク接続が無効になった後にアンマウントが実行され、KDE Plasma アプレットがフリーズしたりすることがあります。&lt;br /&gt;
&lt;br /&gt;
以下のスクリプトを使うことでネットワーク接続が切れる前に NFS 共有を安全にアンマウントすることができます:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/NetworkManager/dispatcher.d/30-nfs.sh|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
# Find the connection UUID with &amp;quot;nmcli con show&amp;quot; in terminal.&lt;br /&gt;
# All NetworkManager connection types are supported: wireless, VPN, wired...&lt;br /&gt;
WANTED_CON_UUID=&amp;quot;CHANGE-ME-NOW-9c7eff15-010a-4b1c-a786-9b4efa218ba9&amp;quot;&lt;br /&gt;
&lt;br /&gt;
if [[ &amp;quot;$CONNECTION_UUID&amp;quot; == &amp;quot;$WANTED_CON_UUID&amp;quot; ]]; then&lt;br /&gt;
&lt;br /&gt;
    # Script parameter $1: NetworkManager connection name, not used&lt;br /&gt;
    # Script parameter $2: dispatched event&lt;br /&gt;
    &lt;br /&gt;
    case &amp;quot;$2&amp;quot; in&lt;br /&gt;
        &amp;quot;up&amp;quot;)&lt;br /&gt;
            mount -a -t nfs4,nfs&lt;br /&gt;
            ;;&lt;br /&gt;
        &amp;quot;pre-down&amp;quot;);&amp;amp;&lt;br /&gt;
        &amp;quot;vpn-pre-down&amp;quot;)&lt;br /&gt;
            umount -l -a -t nfs4,nfs &amp;gt;/dev/null&lt;br /&gt;
            ;;&lt;br /&gt;
    esac&lt;br /&gt;
fi&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
スクリプトに実行可能属性を付与:&lt;br /&gt;
 # chmod +x /etc/NetworkManager/dispatcher.d/30-nfs.sh&lt;br /&gt;
{{ic|/etc/NetworkManager/dispatcher.d/pre-down}} にシンボリックリンクを作成して {{ic|pre-down}} イベントをキャッチ:&lt;br /&gt;
 # ln -s /etc/NetworkManager/dispatcher.d/30-nfs.sh /etc/NetworkManager/dispatcher.d/pre-down.d/30-nfs.sh&lt;br /&gt;
&lt;br /&gt;
上記のスクリプトは別の接続で別の共有をマウントするように修正することができます。&lt;br /&gt;
&lt;br /&gt;
[[NetworkManager#dispatcher を使って CIFS 共有のマウントを処理]]を参照。&lt;br /&gt;
&lt;br /&gt;
== トラブルシューティング ==&lt;br /&gt;
&lt;br /&gt;
[[NFS/トラブルシューティング]]を参照してください。&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.prftungd/doc/prftungd/nfs_perf.htm NFS Performance Management]&lt;br /&gt;
* [http://blogs.msdn.com/sfu/archive/2008/04/14/all-well-almost-about-client-for-nfs-configuration-and-performance.aspx Microsoft Services for Unix NFS Client info]&lt;br /&gt;
* [https://web.archive.org/web/20151212160906/https://blogs.oracle.com/jag/entry/nfs_on_snow_leopard NFS on Snow Leopard]&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Firefox/%E8%A8%AD%E5%AE%9A&amp;diff=13550</id>
		<title>Firefox/設定</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Firefox/%E8%A8%AD%E5%AE%9A&amp;diff=13550"/>
		<updated>2018-11-19T05:47:12Z</updated>

		<summary type="html">&lt;p&gt;R6eve: ノートの翻訳&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ウェブブラウザ]]&lt;br /&gt;
[[en:Firefox/Tweaks]]&lt;br /&gt;
[[tr:Firefox İpuçları]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|Firefox}}&lt;br /&gt;
{{Related|ブラウザプラグイン}}&lt;br /&gt;
{{Related|Firefox Ramdisk}}&lt;br /&gt;
{{Related|Firefox プライバシー}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
&lt;br /&gt;
このページでは Firefox の高度な設定オプションとパフォーマンスを上げる設定を説明します。&lt;br /&gt;
&lt;br /&gt;
== パフォーマンス ==&lt;br /&gt;
&lt;br /&gt;
Firefox のパフォーマンスを向上させる方法には、Firefox の実行中に入力できるパラメータ、開発者によって決められている設定の変更、もしくは外部プログラムやスクリプトによる高度な方法が存在します。&lt;br /&gt;
&lt;br /&gt;
{{Note|かならず最新版の Firefox を使って下さい。}}&lt;br /&gt;
&lt;br /&gt;
=== Firefox の高度なオプション ===&lt;br /&gt;
このセクションではパフォーマンスに関する Firefox の高度なオプションについて説明しています。詳しい情報は [http://kb.mozillazine.org/Category:Tweaking_preferences Mozillazine フォーラムの投稿] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
==== OpenGL Off-Main-Thread Compositing (OMTC) の有効化 ====&lt;br /&gt;
&lt;br /&gt;
{{Warning|特定のハードウェアで OpenGL OMTC が無効になる場合、おそらく安定に問題があったり、システムリソースの消費が激しかったり、ドライバーにバグが存在するなどの可能性があります。強制的に有効化するときは自己責任で行って下さい。}}&lt;br /&gt;
{{Note|Firefox バージョン 40 から基本的なソフトウェア OMTC はデフォルトで有効になります。}}&lt;br /&gt;
&lt;br /&gt;
OpenGL OMTC を有効にするには {{ic|about:config}} を開いて以下を設定します:&lt;br /&gt;
* {{ic|layers.acceleration.force-enabled true}}&lt;br /&gt;
&lt;br /&gt;
Firefox を再起動することで変更が適用されます。&lt;br /&gt;
&lt;br /&gt;
OpenGL OMTC が有効になっているかどうか確認するには、{{ic|about:support}} を開いて &amp;quot;Graphics&amp;quot; セクションの &amp;quot;GPU Accelerated Windows&amp;quot; を見ます。&amp;quot;0/1 Basic (OMTC)&amp;quot; (または 0/2) と表示されている場合、OpenGL OMTC は無効になっています。&amp;quot;1/1 OpenGL (OMTC)&amp;quot; (または 1/2 や 2/2) となっている場合、有効です。&lt;br /&gt;
&lt;br /&gt;
上記の設定で GPU アクセラレーションが有効にならない場合、環境変数を設定してみてください: {{ic|1=export MOZ_USE_OMTC=1}}。設定してから Firefox を起動します [http://featherweightmusings.blogspot.se/2013/11/no-more-main-thread-opengl-in-firefox.html]。&lt;br /&gt;
&lt;br /&gt;
Firefox の OMTC に関する詳細は次のページにあります: https://wiki.mozilla.org/Platform/GFX/OffMainThreadCompositing&lt;br /&gt;
&lt;br /&gt;
==== AzureContentBackend を Cairo の代わりに Skia に設定する ====&lt;br /&gt;
{{Note|Firefox 51 からデフォルトのコンテンツバックエンドは Skia です。}}&lt;br /&gt;
[https://skia.org/ Skia] は Linux 版のデフォルト Azure バックエンドとして使われた Cairo を置き換える 2D オープンソースグラフィックライブラリです。&lt;br /&gt;
&lt;br /&gt;
Skia をデフォルトに設定するには {{ic|about:config}} から以下の設定を行ってください:&lt;br /&gt;
* {{ic|gfx.content.azure.backends skia,cairo}}&lt;br /&gt;
&lt;br /&gt;
Firefox を再起動すると変更が適用されます。&lt;br /&gt;
&lt;br /&gt;
デフォルトの Azure バックエンドを確認するには {{ic|about:support}} を開いてグラフィックセクションの &amp;quot;AzureContentBackend&amp;quot; が &amp;quot;skia&amp;quot; になっているか確認してください。&lt;br /&gt;
&lt;br /&gt;
==== Accelerated Azure Canvas を有効にする ====&lt;br /&gt;
{{ic|about:config}} を開いて、右クリックして新しい真偽値を作ってください。名前を {{ic|gfx.canvas.azure.accelerated}} にして true に設定してください。&lt;br /&gt;
&lt;br /&gt;
Firefox を再起動して {{ic|about:support}} の AzureCanvasAccelerated が 1 になっていれば有効です。&lt;br /&gt;
&lt;br /&gt;
==== ネットワーク設定 ====&lt;br /&gt;
&lt;br /&gt;
高度なネットワーク設定は {{ic|about:config}} ページから変更できます (&#039;&#039;network&#039;&#039; を検索してみてください)。&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ 推奨値&lt;br /&gt;
! 設定名 || 値 || 説明&lt;br /&gt;
|-&lt;br /&gt;
| network.http.pipelining || true || 通常接続で [http://www-archive.mozilla.org/projects/netlib/http/pipelining-faq.html pipelining] を有効にします。&lt;br /&gt;
|-&lt;br /&gt;
| network.http.pipelining.ssl || true || SSL 接続で HTTP pipelining を有効にします。&lt;br /&gt;
|-&lt;br /&gt;
| network.http.proxy.pipelining || true || プロキシ接続で pipelining を有効にします。&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== アンチフィッシングの無効化 ====&lt;br /&gt;
{{Note|プロファイルフォルダのファイル削除には危険が伴うため、先にバックアップをすることを推奨します。}}&lt;br /&gt;
&lt;br /&gt;
Firefox のアンチフィッシング機能は Firefox の起動や終了を遅くすることがあります。問題は Firefox が [[Sqlite]] データベースを使っており、何度も使用しているうちにデータベースが巨大に成長することで読み書きが遅くなるのが原因です。どのサイトが怪しいのか Firefox に知らせてもらう必要がないと感じたのならば、機能を無効にすることが可能です:&lt;br /&gt;
&lt;br /&gt;
* 設定のセキュリティタブで次のオプションをオフにしてください: &#039;&#039;&amp;quot;攻撃サイトとして報告されているサイトをブロックする&amp;quot;&#039;&#039; と &#039;&#039;&amp;quot;偽装サイトとして報告されているサイトをブロックする&amp;quot;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
* プロファイルフォルダ ({{ic|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/}}) に存在する {{ic|urlclassifier}} から始まるファイルを全て削除してください:&lt;br /&gt;
 $ rm -i ~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/urlclassifier*&lt;br /&gt;
&lt;br /&gt;
:上記のファイルは Firefox によって再作成されることがありますが、初期サイズから大きく成長することはなくなります。&lt;br /&gt;
&lt;br /&gt;
==== urlclassifier3.sqlite が作成されないようにする ====&lt;br /&gt;
上述のように {{ic|urlclassifier*}} ファイルを全て削除しても、一定期間後に {{ic|urlclassifier3.sqlite}} のサイズがまた増加することがあります。将来的にサイズが増加しないようにするシンプルな解決法:&lt;br /&gt;
&lt;br /&gt;
 $ cd ~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;&lt;br /&gt;
 $ echo &amp;quot;&amp;quot; &amp;gt; urlclassifier3.sqlite&lt;br /&gt;
 $ chmod 400 urlclassifier3.sqlite&lt;br /&gt;
&lt;br /&gt;
ファイルを空にして読み取り専用にすることで Firefox から書き込めないようになります。&lt;br /&gt;
&lt;br /&gt;
==== OCSP 検証の無効化 ====&lt;br /&gt;
OCSP バリデーションは、Firefox が新しいサーバーに接続 (HTTPS) するたびに [http://news.netcraft.com/archives/2013/04/16/certificate-revocation-and-the-performance-of-ocsp.html 遅延を発生させる] ことがあります。特に、HTTPS を使用するページにウェブガジェットが含まれていた場合、一つの URL で複数の接続が発生することになり、事態を悪化させます。&lt;br /&gt;
&lt;br /&gt;
* 設定 -&amp;gt; 詳細 -&amp;gt; 証明書にある次のオプションをオフにしてください: &#039;&#039;&amp;quot;OSCP レスポンダに問い合わせてデジタル証明書の有効性をリアルタイムに確認する&amp;quot;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
{{Warning|OCSP を無効化した場合、中間者攻撃から無防備になります。Wi-Fi や VPN などの攻撃されるおそれがある接続を使用する場合は、OSCP はオンのままにしておくことが強く推奨されます。}}&lt;br /&gt;
&lt;br /&gt;
==== ディスクキャッシュの無効化 ====&lt;br /&gt;
ロードされたオブジェクト (html ページ、jpeg 画像、css スタイルシート、gif バナー) はすべて Firefox キャッシュに保存され、同じオブジェクトを今度使用するときにロードすることで、もう一度サーバーからダウンロードする必要を省きます。しかしながら、実際に再利用されるオブジェクトはごくわずかに限られています (通常は 30% ほど)。これはオブジェクトの有効期間が短すぎたり、アップデートがあったり、もしくは、単純にユーザーが行う行動 (訪問済みのページではなく新しいページをロードするなど) が原因であったりします。Firefox のキャッシュはメモリキャッシュとディスクキャッシュに分けられており、ディスクキャッシュを使用している場合、オブジェクトがロードされる度にディスクに書き込みが行われ、また、同時に古いオブジェクトの削除もされるために、頻繁にディスクの書き込みが発生します。&lt;br /&gt;
&lt;br /&gt;
* 設定 -&amp;gt; 詳細 -&amp;gt; ネットワーク -&amp;gt; キャッシュされた Web ページから &#039;&#039;&amp;quot;キャッシュサイズを制限する&amp;quot;&#039;&#039; でゼロを指定してください。&lt;br /&gt;
&lt;br /&gt;
==== セッションを保存する間隔を長くする ====&lt;br /&gt;
Firefox のセッションは15秒ごとに現在の状態 (開かれている url、cookie、履歴とブックマーク) を自動的に保存しています。これはユーザーが必要とするところよりも少し頻繁すぎる嫌いがあり、頻繁にディスクアクセスを発生させています。&lt;br /&gt;
&lt;br /&gt;
セッションの保存間隔の設定は {{ic|about:config}} ページから変更できます (&#039;&#039;sessionstore&#039;&#039; を検索してください)。&lt;br /&gt;
&lt;br /&gt;
* browser.sessionstore.interval 300000&lt;br /&gt;
&lt;br /&gt;
セッションの保存を無効化したい場合、以下の設定を true から false に変更してください:&lt;br /&gt;
	&lt;br /&gt;
* browser.sessionstore.resume_from_crash false&lt;br /&gt;
&lt;br /&gt;
==== 即座にページをレンダリング ====&lt;br /&gt;
Mozilla アプリケーションはウェブページを漸増的にレンダリングします。ページ全体がダウンロードされる前に、ページの一部だけを表示するのです。基本的にウェブページの最初の部分には表示に関係する情報はあまり存在しないため、Mozilla アプリケーションはページをレンダリングする前に少しの間だけ待機します。以下の設定はインターバルを制御します。接続速度が遅い場合 (ダイアルアップ接続など)、設定を変更するとウェブページのロード時間が長くなることがあるので注意してください。&lt;br /&gt;
&lt;br /&gt;
* nglayout.initialpaint.delay の値を 0 に変更。&lt;br /&gt;
&lt;br /&gt;
上記の設定は {{ic|about:config}} ページで行うことができます。&lt;br /&gt;
&lt;br /&gt;
=== その他の設定 ===&lt;br /&gt;
このセクションでは Firefox のパフォーマンスを向上させるその他の設定を説明しています。&lt;br /&gt;
&lt;br /&gt;
==== UPX で Firefox バイナリを圧縮して起動時間を短縮 ====&lt;br /&gt;
[http://upx.sourceforge.net/ UPX] は高速な伸長をサポートしている実行可能ファイル圧縮ツールであり、メモリのオーバーヘッドを減らします。[[公式リポジトリ]]の {{Pkg|upx}} パッケージで[[インストール]]できます。&lt;br /&gt;
&lt;br /&gt;
{{ic|upx}} を使用して Firefox の実行可能ファイルを圧縮する前に、バイナリのバックアップを作成してください:&lt;br /&gt;
 # cp /usr/lib/firefox/firefox /usr/lib/firefox/firefox.backup&lt;br /&gt;
&lt;br /&gt;
最後に、{{ic|upx}} を実行して、最大圧縮レベルを適用してください:&lt;br /&gt;
 # upx --best /usr/lib/firefox/firefox&lt;br /&gt;
&lt;br /&gt;
==== リファラーヘッダの制御 ====&lt;br /&gt;
Firefox バージョン 28 では HTTP リファラーヘッダの送信を制御することができます。GUI の設定からはオプションを書けられませんが、{{ic|about:config}} で変更することが可能です。関連するキーは4つ存在します [https://security.stackexchange.com/a/80194]。推奨される設定を以下の行で説明します。&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ 推奨値&lt;br /&gt;
! キー || 推奨 || [https://ip-check.info ip-check.info] || デフォルト || 説明&lt;br /&gt;
|-&lt;br /&gt;
| network.http.sendRefererHeader || 1 || 1 || 2 || リンクをクリックした場合にのみ送信 (0 は完全に送信しない、1 はリンクのクリック時のみ、2 は常に送信)。&lt;br /&gt;
|-&lt;br /&gt;
| network.http.referer.XOriginPolicy || 1 || 1 || 0 || ベースドメインが一致する場合にのみ送信 (0 は常に送信、2 はホストが一致する場合のみ)。&lt;br /&gt;
|-&lt;br /&gt;
| network.http.referer.spoofSource || true || false || false || リンク先の URI を送信。&lt;br /&gt;
|-&lt;br /&gt;
| network.http.referer.trimmingPolicy || 2 || 0 || 0 || スキーム・ホスト・ポートを送信しない (0 は全て送信しない、1 はスキームやホストのポート・パスを送信しない)。&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== プロファイルの SQLite データベースのデフラグ ====&lt;br /&gt;
{{Warning|以下の設定はデータベースを破損させてセッションが正しく保存されなくなる可能性があります。}}&lt;br /&gt;
&lt;br /&gt;
Firefox 3.0 ではブックマーク・履歴・パスワードは SQLite データベースに保存されます。SQLite データベースは使っていくうちに断片化して空き領域があちこちにできます。Firefox はデータベースを確認して最適化することはしないので、しばらくすると断片化は性能に影響してきます。データベースのデフラグを行なって使われていない領域を削除することで起動時間を短縮したりブックマークや履歴などの操作を高速化することが可能です。&lt;br /&gt;
&lt;br /&gt;
Firefox を実行していないときに {{AUR|profile-cleaner}} を使うことでデフラグを行えます。&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ デフラグ前後のサイズの比較&lt;br /&gt;
! SQLite データベース || デフラグ前のサイズ || デフラグ後のサイズ || % 変化&lt;br /&gt;
|- &lt;br /&gt;
|urlclassifier3.sqlite|| 37 M || 30 M || 19 %&lt;br /&gt;
|-&lt;br /&gt;
|places.sqlite || 16 M || 2.4 M || 85 %&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Firefox の最近のバージョンでは、ページのロードが遅くなったりプロファイルの破損の原因となる places データベースをデフラグ・最適化するツールが用意されています。ツールを使うには {{ic|about:support}} ページを開いてください。{{ic|Places データベース}} の下にある {{ic|完全性を検証}} ボタンを押してください。&lt;br /&gt;
&lt;br /&gt;
==== tmpfs でプロファイルを RAM にキャッシュ ====&lt;br /&gt;
システムにメモリが余っている場合、{{ic|tmpfs}} を使って[[Firefox Ramdisk|プロファイルディレクトリ全体をキャッシュ]]することができます。そうすると Firefox のレスポンスが高まります。&lt;br /&gt;
&lt;br /&gt;
==== スポンサーコンテンツやタイルをオフにする ====&lt;br /&gt;
{{ic|about:config}} で {{ic|browser.newtabpage.directory.source}} と {{ic|browser.newtabpage.directory.ping}} の値を空にしてください。また、新しいタブページのツールからタイル機能を無効にすると良いでしょう。[[Wireshark]] セッションで通信を確認できます。&lt;br /&gt;
&lt;br /&gt;
==== Electrolysis の有効化 ====&lt;br /&gt;
Firefox 48 (45 ESR) 以上では Electrolysis (マルチプロセス) を有効化することでパフォーマンスとセキュリティを高めることができます。{{ic|about:config}} で {{ic|browser.tabs.remote.autostart}} を &#039;&#039;true&#039;&#039; に設定してください。Electrolysis を強制的に有効化することもできますが [https://wiki.mozilla.org/Electrolysis#Force_Enable]、問題が起こる可能性があるため基本的には推奨されません。&lt;br /&gt;
&lt;br /&gt;
Electrolysis が有効になっているか確認するには {{ic|about:support}} の「アプリケーション基本情報」セクションにある「マルチプロセスウィンドウ」を確認してください。&amp;quot;0/1 (無効)&amp;quot; となっている場合 Electrolysis は無効です。&amp;quot;1/1 (ユーザー設定により有効)&amp;quot; となっていれば有効です。&#039;&#039;*/*&#039;&#039; の数字は Firefox の開かれているウィンドウの数を示します。例えば 0/2 は2つ開かれている Firefox のウィンドウのどちらも Electrolysis を使用しておらず、2/2 は両方のウィンドウで有効になっていることを意味します。&lt;br /&gt;
&lt;br /&gt;
==== HTTP キャッシュの有効化 ====&lt;br /&gt;
{{ic|about:config}} で {{ic|browser.cache.use_new_backend}} を 0 から 1 に設定してください。&lt;br /&gt;
&lt;br /&gt;
==== Pocket の無効化 ====&lt;br /&gt;
Pocket サービスを使用しない場合、{{ic|about:config}} で {{ic|extensions.pocket.enabled}} を &#039;&#039;false&#039;&#039; に設定することで無効にできます。&lt;br /&gt;
{{Note|45ESR の場合、キーは {{ic|browser.pocket...}} です。}}&lt;br /&gt;
&lt;br /&gt;
== 外観 ==&lt;br /&gt;
=== フォント ===&lt;br /&gt;
次の記事を参照してください: [[フォント設定]]&lt;br /&gt;
&lt;br /&gt;
==== DPI の値の設定 ====&lt;br /&gt;
システムの DPI が 96 を下回っている場合、設定を変更することで Firefox のフォントの見た目を良くすることができます。デフォルトでは Firefox は DPI の値は 96 を使用し、96 を上回っている場合だけシステム値を使います。値に関係なくシステム値を使うようにするには、アドレスバーに {{ic|about:config}} と入力して {{ic|layout.css.dpi}} を &#039;&#039;&#039;0&#039;&#039;&#039; に設定してください。&lt;br /&gt;
&lt;br /&gt;
上記の設定は Firefox のユーザーインターフェースの DPI 設定にだけ影響を与えるので注意してください。ウェブページのコンテンツの DPI 値は 96 のままです。変更するには {{ic|layout.css.devPixelsPerPx}} をシステムの DPI を 96 で割った値に設定してください。例えばシステムの DPI が 144 の場合、設定する値は 144/96 = 1.5 です。{{ic|layout.css.devPixelsPerPx}} を &#039;&#039;&#039;1.5&#039;&#039;&#039; にするとウェブページのコンテンツの DPI が 144 になります。&lt;br /&gt;
&lt;br /&gt;
高解像度ディスプレイについての情報は [[HiDPI#Firefox]] を参照してください。DPI の計算は [https://www.sven.de/dpi/] を見てください。&lt;br /&gt;
&lt;br /&gt;
==== Microsoft Windows のデフォルトフォント設定 ====&lt;br /&gt;
以下は Firefox を Microsoft Windows にインストールした時のデフォルトフォント設定です。多くのウェブサイトは Microsoft フォントを使っています。&lt;br /&gt;
{{bc|&lt;br /&gt;
Proportional: Serif Size (pixels): 16&lt;br /&gt;
Serif: Times New Roman&lt;br /&gt;
Sans-serif: Arial&lt;br /&gt;
Monospace: Courier New Size (pixels): 13&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== 一般的なユーザーインターフェイスの CSS 設定 ===&lt;br /&gt;
Firefox のユーザーインターフェイスは {{ic|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/}} 内の {{ic|userChrome.css}} や {{ic|userContent.css}} ファイルを編集することで変更することができます (&#039;&#039;profile_dir&#039;&#039; は &#039;&#039;hash.name&#039;&#039; という形式を取っており、&#039;&#039;hash&#039;&#039; は8文字のランダムな文字列です。プロファイルの &#039;&#039;name&#039;&#039; は通常 &#039;&#039;default&#039;&#039; となっています)。&lt;br /&gt;
&lt;br /&gt;
{{Note|{{ic|chrome/}} フォルダと {{ic|userChrome.css}}/{{ic|userContent.css}} ファイルは存在している必要がないので、作る必要があるかもしれません。}}&lt;br /&gt;
&lt;br /&gt;
このセクションでは (ウェブページではなく) Firefox のユーザーインターフェイスを変更する {{ic|userChrome.css}} ファイルについてだけ扱います。&lt;br /&gt;
&lt;br /&gt;
==== フォントの変更 ====&lt;br /&gt;
この設定はグローバルな GTK+ のフォント設定を上書きします。ウェブページには影響を与えません、ユーザーインターフェイスのフォントだけが変更されます:&lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userChrome.css|&lt;br /&gt;
* {&lt;br /&gt;
    font-family: &amp;quot;FONT_NAME&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== ボタンアイコンの隠匿 ====&lt;br /&gt;
テキストボタンを有効化:&lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userChrome.css|&lt;br /&gt;
.button-box .button-icon {&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== 様々なタブボタンの隠匿 ====&lt;br /&gt;
以下の設定はタブバーの縁で表示される矢印、全てのタブのドロップダウンリストを切り替えるボタン、新しいタブを作成するプラス記号を非表示にします:&lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userChrome.css|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/* Tab bar */&lt;br /&gt;
&lt;br /&gt;
.tabbrowser-strip *[class^=&amp;quot;scrollbutton&amp;quot;] {&lt;br /&gt;
    /* Hide tab scroll buttons */&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.tabbrowser-strip *[class^=&amp;quot;tabs-alltabs&amp;quot;] {&lt;br /&gt;
    /* Hide tab drop-down list */&lt;br /&gt;
    display: none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.tabbrowser-strip *[class^=&amp;quot;tabs-newtab-button&amp;quot;] {&lt;br /&gt;
    /* Hide new-tab button */&lt;br /&gt;
    display: none;&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== 水平タブ ====&lt;br /&gt;
タブバーをブラウザウィンドウの側面に横に並べて表示するには:&lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userChrome.css|&lt;br /&gt;
/* Display the tabbar on the left */&lt;br /&gt;
#content &amp;gt; tabbox {&lt;br /&gt;
    -moz-box-orient: horizontal;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.tabbrowser-strip {&lt;br /&gt;
    -moz-box-orient: vertical;&lt;br /&gt;
    /*&lt;br /&gt;
     * You can set this to -moz-scrollbars-vertical instead,&lt;br /&gt;
     * but then the scrollbar will *always* be visible.  this way&lt;br /&gt;
     * there is never a scrollbar, so it behaves like the tab bar&lt;br /&gt;
     * normally does&lt;br /&gt;
     */&lt;br /&gt;
     overflow: -moz-scrollbars-none;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.tabbrowser-tabs {&lt;br /&gt;
    -moz-box-orient: horizontal;&lt;br /&gt;
    min-width: 20ex;   /* You may want to increase this value */&lt;br /&gt;
    -mox-box-pack: start;&lt;br /&gt;
    -moz-box-align: start;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.tabbrowser-tabs &amp;gt; hbox {&lt;br /&gt;
    -moz-box-orient: vertical;&lt;br /&gt;
    -moz-box-align: stretch;&lt;br /&gt;
    -moz-box-pack: start;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.tabbrowser-tabs &amp;gt; hbox &amp;gt; tab {&lt;br /&gt;
    -moz-box-align: start;&lt;br /&gt;
    -moz-box-orient: horizontal;&lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== ウィンドウの縁とタイトルバーを非表示にする ====&lt;br /&gt;
[https://addons.mozilla.org/firefox/addon/hide-caption-titlebar-plus-sma/ Hide Caption Titlebar Plus] 拡張をインストールして以下の設定を行ってください (他の設定はデフォルトのままにしてください):&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! オプション&lt;br /&gt;
! 値&lt;br /&gt;
|-&lt;br /&gt;
| Show Custom Caption/TitleBar&lt;br /&gt;
| Never&lt;br /&gt;
|-&lt;br /&gt;
| Activate custom borders and corner resizers&lt;br /&gt;
| Deactivate&lt;br /&gt;
|-&lt;br /&gt;
| Enable Customizable Buttons (min,max,close)&lt;br /&gt;
| Using a Glass-like window background&lt;br /&gt;
|-&lt;br /&gt;
| Custom Minimize, Max, Close Buttons&lt;br /&gt;
| Auto. Current theme&#039;s skin (fixed position)&lt;br /&gt;
|-&lt;br /&gt;
| Drag Fx window using Tab-bar background&lt;br /&gt;
| Enable&lt;br /&gt;
|-&lt;br /&gt;
| Alternative hide-titlebar feature&lt;br /&gt;
| Use&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[https://addons.mozilla.org/firefox/addon/classicthemerestorer/ Classic Theme Restorer] 拡張では他にもタブの高さを 28px に設定したりツールバーやボタンを有効化・無効化するオプションが使えます。&lt;br /&gt;
&lt;br /&gt;
==== ブックマークツールバーを自動で隠匿 ====&lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userChrome.css|&lt;br /&gt;
#PersonalToolbar {&lt;br /&gt;
    visibility: collapse !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#navigator-toolbox:hover &amp;gt; #PersonalToolbar {&lt;br /&gt;
    visibility: visible !important;&lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== サイドバーの幅の制限をなくす ====&lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userChrome.css|&lt;br /&gt;
/* remove maximum/minimum  width restriction of sidebar */&lt;br /&gt;
#sidebar {&lt;br /&gt;
    max-width: none !important;&lt;br /&gt;
    min-width: 0px !important;&lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== ウェブコンテンツの CSS 設定 ===&lt;br /&gt;
このセクションではウェブコンテンツに CSS のカスタムルールを追加できる {{ic|userContent.css}} ファイルについて扱います。このファイルへの変更はブラウザの再起動時に適用されます。&lt;br /&gt;
&lt;br /&gt;
頻繁に使うウェブサイトに小さな修正を加えたり個人的なスタイルを適用することが可能です。人気のウェブサイトのカスタムスタイルシートは [http://userstyles.org/ userstyles.org] などから手に入れることができます。[https://addons.mozilla.org/firefox/addon/superusercontent/ superUserContent] などのアドオンをインストールしてテーマを管理することが可能です。アドオンは {{ic|chrome/userContent.css.d}} ディレクトリを作成してページが更新されたときに中に入っている CSS ファイルに変更を適用します。&lt;br /&gt;
&lt;br /&gt;
==== 他の CSS ファイルのインポート ==== &lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userContent.css|&lt;br /&gt;
@import url(&amp;quot;./imports/some_file.css&amp;quot;);&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== ドメインの特定部位をブロック ====&lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userContent.css|&lt;br /&gt;
@-moz-document domain(example.com) {&lt;br /&gt;
    div#header {&lt;br /&gt;
        background-image: none !important;&lt;br /&gt;
    } &lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== PDF ファイルのリンクの後ろに [pdf] を追加 ====&lt;br /&gt;
{{hc|~/.mozilla/firefox/&amp;lt;profile_dir&amp;gt;/chrome/userContent.css|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/* add &#039;[pdf]&#039; next to links to PDF files */&lt;br /&gt;
a[href$=&amp;quot;.pdf&amp;quot;]:after {&lt;br /&gt;
    font-size: smaller;&lt;br /&gt;
    content: &amp;quot; [pdf]&amp;quot;;&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Firefox 4 の新しいメニューバー/Firefox ボタン ====&lt;br /&gt;
新しい Firefox ボタンとクラシックなメニューバーを切り替えるには:&lt;br /&gt;
* ボタンが有効な場合、&#039;&#039;Preferences &amp;gt; Menu Bar&#039;&#039; にチェックを入れるかツールバーを右クリックして &#039;&#039;Menu Bar&#039;&#039; にチェックを入れてください。&lt;br /&gt;
* メニューバーが有効な場合、&#039;&#039;View &amp;gt; Toolbars &amp;gt; Menu Bar&#039;&#039; のチェックを外すか、ツールバーを右クリックして &#039;&#039;Menu Bar&#039;&#039; のチェックを外してください。&lt;br /&gt;
&lt;br /&gt;
GNU/Linux では Windows のオレンジのボタンの代わりにグレーのボタンが表示されます。設定によって Firefox アイコンに &amp;quot;Firefox&amp;quot; というテキストの表示に変えられます。&lt;br /&gt;
&lt;br /&gt;
{{ic|~/.mozilla/firefox/userprofile/chrome/userChrome.css}} ファイルに以下を追加するとテキストの前にアイコンが表示されます:&lt;br /&gt;
{{bc|&lt;br /&gt;
#appmenu-toolbar-button {&lt;br /&gt;
  list-style-image: url(&amp;quot;chrome://branding/content/icon16.png&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
同じファイルに以下を追加すると &amp;quot;Firefox&amp;quot; の文字が消えます:&lt;br /&gt;
{{bc|&lt;br /&gt;
#appmenu-toolbar-button &amp;gt; .toolbarbutton-text,&lt;br /&gt;
#appmenu-toolbar-button &amp;gt; .toolbarbutton-menu-dropmarker {&lt;br /&gt;
  display: none !important;&lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Windows の Firefox 4 以上のデフォルト設定をコピーしてオレンジの背景を追加し、プライベートブラウジングモードを紫背景にする {{ic|userChrome.css}} 設定:&lt;br /&gt;
{{bc|&lt;br /&gt;
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button {&lt;br /&gt;
    -moz-appearance: none !important;&lt;br /&gt;
    color: #FEEDFC !important;&lt;br /&gt;
    background: -moz-linear-gradient(hsl(34,85%,60%), hsl(26,72%,53%) 95%) !important;&lt;br /&gt;
    border: 1px solid #000000 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button:hover:not(:active):not([open]) {&lt;br /&gt;
    -moz-appearance: none !important;&lt;br /&gt;
    color: #FEEDFC !important;&lt;br /&gt;
    background: -moz-linear-gradient(hsl(26,72%,53%), hsl(34,85%,60%) 95%) !important;&lt;br /&gt;
    border: 1px solid #000000 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button:hover:active,&lt;br /&gt;
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button[open] {&lt;br /&gt;
    -moz-appearance: none !important;&lt;br /&gt;
    color: #FEEDFC !important;&lt;br /&gt;
    background: -moz-linear-gradient(hsl(26,72%,53%), hsl(26,72%,53%) 95%) !important;&lt;br /&gt;
    border: 1px solid #000000 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#appmenu-toolbar-button {&lt;br /&gt;
    -moz-appearance: none !important;&lt;br /&gt;
    color: #FEEDFC !important;&lt;br /&gt;
    background: -moz-linear-gradient(hsl(279,70%,46%), hsl(276,75%,38%) 95%) !important;&lt;br /&gt;
    border: 1px solid #000000 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#main-window #appmenu-toolbar-button:hover:not(:active):not([open]) {&lt;br /&gt;
    -moz-appearance: none !important;&lt;br /&gt;
    color: #FEEDFC !important;&lt;br /&gt;
    background: -moz-linear-gradient(hsl(276,75%,38%), hsl(279,70%,46%) 95%) !important;&lt;br /&gt;
    border: 1px solid #000000 !important;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#main-window #appmenu-toolbar-button:hover:active,&lt;br /&gt;
#main-window #appmenu-toolbar-button[open] {&lt;br /&gt;
    -moz-appearance: none !important;&lt;br /&gt;
    color: #FEEDFC !important;&lt;br /&gt;
    background: -moz-linear-gradient(hsl(276,75%,38%), hsl(276,75%,38%) 95%) !important;&lt;br /&gt;
    border: 1px solid #000000 !important;&lt;br /&gt;
}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note|{{ic|chrome}} ディレクトリと {{ic|userChrome.css}} が存在しない場合は作成してください。}}&lt;br /&gt;
&lt;br /&gt;
==== 広告のブロック ====&lt;br /&gt;
&lt;br /&gt;
{{ic|userContent.css}} を使って広告をブロックする方法については [http://www.floppymoose.com floppymoose.com] にサンプルがあります。&lt;br /&gt;
&lt;br /&gt;
==== フルスクリーンの警告を無効化 ====&lt;br /&gt;
&lt;br /&gt;
フルスクリーンモードにしたときに表示される警告は {{ic|about:config}} で &amp;quot;full-screen-api.warning.timeout&amp;quot; を 0 に設定することで無効にできます。&lt;br /&gt;
&lt;br /&gt;
== その他 ==&lt;br /&gt;
&lt;br /&gt;
その他のヒントと設定。&lt;br /&gt;
&lt;br /&gt;
=== 追加のメディアコーデックの有効化 ===&lt;br /&gt;
&lt;br /&gt;
設定する前に、デフォルトで有効になっていないことには理由があることを覚えておいて下さい。安定に問題があったり、メモリリークが発生することがあります。{{ic|about:config}} を開いて以下のオプションを確認してください:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ 推奨値&lt;br /&gt;
! キー || 値 || 説明&lt;br /&gt;
|-&lt;br /&gt;
| media.mediasource.enabled || true (デフォルト) || [[wikipedia:Media_Source_Extensions|Media Source Extensions]] (MSE) の有効化&lt;br /&gt;
|-&lt;br /&gt;
| media.mediasource.mp4.enabled || true (デフォルト) || [[wikipedia:ja:MP4|MP4]] MSE の有効化&lt;br /&gt;
|-&lt;br /&gt;
| media.mediasource.webm.enabled || true (デフォルト) || [[wikipedia:ja:WebM|WebM]] MSE の有効化。&lt;br /&gt;
|-&lt;br /&gt;
| media.mediasource.ignore_codecs || true || H.264 MSE などを有効化 (キーは作成してください)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Widevine と Netflix/Amazon Video ====&lt;br /&gt;
&lt;br /&gt;
Widevine は Netflix や Amazon プライムビデオなどがビデオコンテンツの保護のために使用しているデジタル著作権管理ツールです。&lt;br /&gt;
&lt;br /&gt;
Widevine が使われているページを初めて表示すると Firefox はアドレスバーの下に DRM をインストールしてもよいか表示します。承認したらダウンロードバーが消えるまで待ってください。完了したら Netflix や Amazon プライムビデオなどから動画を視聴できるはずです。&lt;br /&gt;
{{Note|コンテンツ設定の &amp;quot;DRM コンテンツの再生&amp;quot; にチェックが入っていることを確認してください。}}&lt;br /&gt;
&lt;br /&gt;
=== マウスホイールでスクロールする速度 ===&lt;br /&gt;
&lt;br /&gt;
マウスホイールによるスクロール速度のデフォルト値を修正するには (例: スピードアップ)、{{ic|about:config}} を開いて {{ic|mousewheel.acceleration}} を検索してください。利用可能なオプションが表示されるので、以下を修正します:&lt;br /&gt;
&lt;br /&gt;
* {{ic|mousewheel.acceleration.start}} を &#039;&#039;&#039;-1&#039;&#039;&#039; に設定。&lt;br /&gt;
* {{ic|mousewheel.acceleration.factor}} を適当な値に設定 (10 から 20 が普通使われる値です)。&lt;br /&gt;
&lt;br /&gt;
もしくは [http://smoothwheel.mozdev.org/ SmoothWheel add-on] をインストールすることでも変更できます。&lt;br /&gt;
&lt;br /&gt;
=== ピクセル単位で正確なトラックパッドのスクロール ===&lt;br /&gt;
&lt;br /&gt;
(Nautilus などの GTK3 アプリケーションで使われている) 正確なトラックパッドスクロールを有効にするには、Firefox を起動する前に {{ic|1=MOZ_USE_XINPUT2=1}} [[環境変数]]を設定してください。&lt;br /&gt;
&lt;br /&gt;
スクロールがぎくしゃくする場合、設定 &amp;gt; 詳細からスムーススクロールオプションを有効にしてみてください。&lt;br /&gt;
&lt;br /&gt;
=== Firefox 検索バーの検索エンジンの順番を変更 ===&lt;br /&gt;
&lt;br /&gt;
検索エンジンが表示される順番を変えるには:&lt;br /&gt;
* 検索エンジンのドロップダウンリストを開いて &#039;&#039;Manage Search Engines...&#039;&#039; エントリをクリック。&lt;br /&gt;
* 移動したい検索エンジンを選択して &#039;&#039;Move Up&#039;&#039; や &#039;&#039;Move Down&#039;&#039; で移動します。ドラッグアンドドロップで移動することも可能です。&lt;br /&gt;
&lt;br /&gt;
=== Abiword や LibreOffice Writer で *.doc を自動的に開く方法 ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Preferences &amp;gt; Applications&#039;&#039; を開いて &#039;&#039;Word Document&#039;&#039; (または &#039;&#039;Word 2007 Document&#039;&#039; の {{ic|*.docx}}) を検索してください。見つけたら、ドロップダウンリストをクリックして &#039;&#039;Use other...&#039;&#039; を選択してください。そして Abiword や Writer の実行可能ファイルのパスを指定してください ({{ic|/usr/bin/abiword}} や {{ic|/usr/bin/lowriter}})。&lt;br /&gt;
&lt;br /&gt;
=== &amp;quot;I&#039;m Feeling Lucky&amp;quot; モード ===&lt;br /&gt;
&lt;br /&gt;
検索エンジンによっては &amp;quot;feeling lucky&amp;quot; 機能が存在することがあります。例えば、Google には &amp;quot;I&#039;m Feeling Lucky&amp;quot; があり、DuckDuckGo には &amp;quot;I&#039;m Feeling Ducky&amp;quot; があります。&lt;br /&gt;
&lt;br /&gt;
機能を有効化するには:&lt;br /&gt;
# アドレスバーに {{ic|about:config}} と入力。&lt;br /&gt;
# {{ic|keyword.url}} という文字列を検索。&lt;br /&gt;
# 値を検索エンジンの URL に設定。&lt;br /&gt;
&lt;br /&gt;
Google の場合、次のように設定:&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;https://www.google.com/search?btnI=I%27m+Feeling+Lucky&amp;amp;q=&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
DuckDuckGo の場合、次のように設定:&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;https://duckduckgo.com/?q=\&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
=== DNSSEC で DNS をセキュア化 ===&lt;br /&gt;
&lt;br /&gt;
[[en2:DNSSEC|DNSSEC]] のサポートを有効にすることでブラウジングを安全にすることができます。&lt;br /&gt;
&lt;br /&gt;
=== マグネットプロトコルの関連付けの追加 ===&lt;br /&gt;
&lt;br /&gt;
{{ic|about:config}} で {{ic|network.protocol-handler.expose.magnet}} を &#039;&#039;&#039;false&#039;&#039;&#039; に設定してください。&lt;br /&gt;
&lt;br /&gt;
次にマグネットリンクを開いたとき、{{ic|Launch Application}} ダイアログが表示されます。ダイアログから、使いたい torrent クライアントを選択してください。他のプロトコルも同じように設定できます。&lt;br /&gt;
&lt;br /&gt;
=== マグネットプロトコルの関連付けを kTorrent (KDE4) に追加 ===&lt;br /&gt;
&lt;br /&gt;
{{ic|/usr/share/applications/kde4/ktorrent.desktop}} のユーザーコピーを {{ic|~/.local/share/applications/kde4/}} に作成して、{{ic|1=Mimetype=}} に以下を追加してください:&lt;br /&gt;
&lt;br /&gt;
 x-scheme-handler/magnet&lt;br /&gt;
&lt;br /&gt;
{{ic|~/.config/mimeapps.list}} を修正して以下を追加:&lt;br /&gt;
&lt;br /&gt;
 x-scheme-handler/magnet=kde4-ktorrent.desktop&lt;br /&gt;
&lt;br /&gt;
[https://superuser.com/questions/44072/how-do-i-associate-magnet-links-with-ktorrent-in-firefox] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
=== 突然終了してしまうのを防ぐ ===&lt;br /&gt;
&lt;br /&gt;
[https://addons.mozilla.org/firefox/addon/disable-ctrl-q-shortcut/ Disable Ctrl-Q Shortcut] 拡張をインストールすることでブラウザを不注意に閉じてしまうことを防止できます。&lt;br /&gt;
&lt;br /&gt;
もしくはウィンドウマネージャの設定ファイルにルールを追加する方法もあります。例えば [[openbox]] なら {{ic|~/.config/openbox/rc.xml}} ファイルの &#039;&#039;&amp;lt;keyboard&amp;gt;&#039;&#039; セクションに以下を追加してください:&lt;br /&gt;
  &amp;lt;keybind key=&amp;quot;C-q&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;action name=&amp;quot;Execute&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;execute&amp;gt;false&amp;lt;/execute&amp;gt;&lt;br /&gt;
    &amp;lt;/action&amp;gt;&lt;br /&gt;
  &amp;lt;/keybind&amp;gt;&lt;br /&gt;
{{Note|上記の設定はグラフィックサーバーで動作する全てのアプリケーションに適用されます。}}&lt;br /&gt;
&lt;br /&gt;
=== 最新版でプラグインが動作しない ===&lt;br /&gt;
&lt;br /&gt;
Arch はブリーディングエッジなので、最新の Firefox では動作しないプラグインと互換性の問題が起こることがあります (例: [http://5digits.org/pentadactyl/index Pentadactyl])。可能であれば、ナイトリー/ベータ版をインストールするか、[[パッケージのダウングレード]]を見て下さい。&lt;br /&gt;
&lt;br /&gt;
[https://addons.mozilla.org/firefox/addon/checkcompatibility/ Disable Add-on Compatibility Checks] プラグインは新しいバージョンでもちゃんと動くのにプラグインが無効化される問題を解決します。&lt;br /&gt;
&lt;br /&gt;
=== スクロールがギクシャクしている ===&lt;br /&gt;
&lt;br /&gt;
Firefox でのスクロールが&amp;quot;ガタガタ&amp;quot;あるいは&amp;quot;ムラがある&amp;quot;と感じられることがあります。[http://forums.mozillazine.org/viewtopic.php?f=8&amp;amp;t=2749475/ MozillaZine] が Gentoo でスクロールを修正する設定を投稿していますが、Arch Linux でも同じように直ることが報告されています:&lt;br /&gt;
&lt;br /&gt;
# {{ic|mousewheel.min_line_scroll_amount}} を 40 に設定&lt;br /&gt;
# {{ic|general.smoothScroll}} と {{ic|general.smoothScroll.pages}} を &#039;&#039;false&#039;&#039; に設定&lt;br /&gt;
# {{ic|image.mem.min_discard_timeout_ms}} を 2100000000 のように大きな値に設定、ただし 2140000000 を超えてはならない。この値よりも上の値に設定してしまうと Firefox は次のエラーを吐きます: &amp;quot;The text you entered is not a number&amp;quot;。&lt;br /&gt;
# {{ic|image.mem.max_decoded_image_kb}} を最低でも 512K に設定&lt;br /&gt;
&lt;br /&gt;
これでスクロールがスムーズになるはずです。&lt;br /&gt;
&lt;br /&gt;
=== nspawn コンテナの中で Firefox を実行 ===&lt;br /&gt;
&lt;br /&gt;
PID 1 で実行するには:&lt;br /&gt;
&lt;br /&gt;
 # systemd-nspawn --setenv=DISPLAY=:0 \&lt;br /&gt;
               --setenv=XAUTHORITY=~/.Xauthority \&lt;br /&gt;
               --bind-ro=$HOME/.Xauthority:/root/.Xauthority \&lt;br /&gt;
               --bind=/tmp/.X11-unix \&lt;br /&gt;
               -D ~/containers/firefox \&lt;br /&gt;
               firefox&lt;br /&gt;
&lt;br /&gt;
もしくは [[systemd-networkd]] を使って systemd でネットワークを設定したコンテナを起動する場合:&lt;br /&gt;
&lt;br /&gt;
 # systemd-nspawn --bind-ro=$HOME/.Xauthority:/root/.Xauthority \&lt;br /&gt;
               --bind=/tmp/.X11-unix \&lt;br /&gt;
               -D ~/containers/firefox \&lt;br /&gt;
               --network-veth -b&lt;br /&gt;
&lt;br /&gt;
コンテナを起動したら、以下のように Xorg ライブラリを実行してください:&lt;br /&gt;
&lt;br /&gt;
 # systemd-run -M firefox --setenv=DISPLAY=:0 firefox&lt;br /&gt;
&lt;br /&gt;
=== 検索がマッチした箇所をスクロールバーに表示 ===&lt;br /&gt;
 &lt;br /&gt;
[https://addons.mozilla.org/firefox/addon/findbar-tweak/ FindBar Tweak] 拡張をインストールすることで表示できます。&lt;br /&gt;
&lt;br /&gt;
=== タッチスクリーンのジェスチャーを有効化 ===&lt;br /&gt;
&lt;br /&gt;
{{ic|dom.w3c_touch_events.enabled}} が 1 (&#039;&#039;有効&#039;&#039;) または 2 (&#039;&#039;デフォルト、自動認識&#039;&#039;) に設定されていることを確認してください。&lt;br /&gt;
&lt;br /&gt;
Firefox を起動する前に {{ic|1=export MOZ_USE_XINPUT2=1}} を実行してください。変更を永続化するには {{ic|/etc/profile.d/firefox.sh}} にコマンドを追加してください。&lt;br /&gt;
&lt;br /&gt;
=== WebRTC オーディオのポストプロセス処理を無効化 ===&lt;br /&gt;
&lt;br /&gt;
PulseAudio の [[PulseAudio/トラブルシューティング#エコー除去・ノイズキャンセルを有効にする|module-echo-cancel]] を使用している場合、Firefox がポストプロセス処理を音声にかけないように設定すると良いでしょう。&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ オーディオのポストプロセス処理を無効化するには、以下のパラメータを設定&lt;br /&gt;
! キー || 値 || 説明&lt;br /&gt;
|-&lt;br /&gt;
| media.getusermedia.aec_enabled || false || AEC = 音響エコー除去 (Acoustic Echo Cancellation)&lt;br /&gt;
|-&lt;br /&gt;
| media.getusermedia.agc_enabled || false || AGC = 自動ゲインコントロール (Automatic Gain Control)&lt;br /&gt;
|-&lt;br /&gt;
| media.getusermedia.noise_enabled || false || ノイズ除去。Firefox のノイズ除去を無効にすると音がミッキーマウスのようになることがあります。&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Firefox の URL バーのマウスクリックを Windows と同じにする ===&lt;br /&gt;
&lt;br /&gt;
{{ic|about:config}} で以下を設定してください:&lt;br /&gt;
{{bc|&lt;br /&gt;
browser.urlbar.clickSelectsAll true&lt;br /&gt;
browser.urlbar.doubleClickSelectsAll false&lt;br /&gt;
layout.word_select.stop_at_punctuation true&lt;br /&gt;
}}&lt;br /&gt;
URL バーのシングルクリックで全てを選択し、ダブルクリックで単語を選択、トリプルクリックで全てを選択するようになります。&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [http://kb.mozillazine.org/Knowledge_Base MozillaZine Wiki]&lt;br /&gt;
* [http://kb.mozillazine.org/About:config_entries about:config Entries Explained]&lt;br /&gt;
* [http://linuxtidbits.wordpress.com/2009/08/01/better-fox-cat-and-weasel/ Firefox touch-ups that might be desired]&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Rxvt-unicode&amp;diff=13548</id>
		<title>Rxvt-unicode</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Rxvt-unicode&amp;diff=13548"/>
		<updated>2018-11-18T20:47:32Z</updated>

		<summary type="html">&lt;p&gt;R6eve: トラブルシューティングの残りを翻訳&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:rxvt-unicode}}&lt;br /&gt;
[[Category:ターミナルエミュレータ]]&lt;br /&gt;
[[de:urxvt]]&lt;br /&gt;
[[en:Rxvt-unicode]]&lt;br /&gt;
[[es:Rxvt-unicode]]&lt;br /&gt;
[[fr:urxvt]]&lt;br /&gt;
[[ru:Rxvt-unicode]]&lt;br /&gt;
[[sr:Rxvt-unicode]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|rxvt-unicode/ヒントとテクニック}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
[http://software.schmorp.de/pkg/rxvt-unicode.html rxvt-unicode] は細かいカスタマイズができるターミナルエミュレータで [[Wikipedia:ja:Rxvt|rxvt]] のフォークです。一般に {{Ic|urxvt}} と呼ばれている、rxvt-unicode は[[デーモン]]化して一つの[[Wikipedia:ja:プロセス|プロセス]]で複数のクライアントを実行することができ、システムリソースの使用を抑えることができます。Marc Lehmann によって開発されており、rxvt-unicode の取り柄としては [[Wikipedia:ja:Unicode|Unicode]] による多言語サポートや、透過、複数のフォントタイプの表示機能、[[Perl]] 拡張のサポートなどが挙げられます。&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
{{Pkg|rxvt-unicode}} パッケージでインストールすることができます。&lt;br /&gt;
&lt;br /&gt;
== 設定 ==&lt;br /&gt;
&lt;br /&gt;
設定と値の完全なリストは {{man|1|urxvt}} と {{man|7|urxvt}} を見て下さい。&lt;br /&gt;
&lt;br /&gt;
=== ~/.Xresources の作成 ===&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode の外観や機能はコマンドラインの引数や [[X resources]] によって制御されます。コマンドライン引数は [[X resources]] の設定よりも優先して適用されます。&lt;br /&gt;
&lt;br /&gt;
{{ic|urxvt --help}} は全ての &#039;&#039;rxvt&#039;&#039; リソースを標準エラーに出力します。各リソースの説明は man ページに存在します。&lt;br /&gt;
&lt;br /&gt;
=== スクロールバックの位置 ===&lt;br /&gt;
&lt;br /&gt;
デフォルトでは、シェル出力が更新されると、スクロールバックの表示は自動的にバッファの最後にジャンプし、新しい出力を表示します。前の出力（コンパイラメッセージなど）を表示したい場合は {{ic|~/.Xresources}} に以下のオプションを設定します:&lt;br /&gt;
&lt;br /&gt;
 ! do not scroll with output&lt;br /&gt;
 URxvt*scrollTtyOutput: false&lt;br /&gt;
 &lt;br /&gt;
 ! scroll in relation to buffer (with mouse scroll or Shift+Page Up)&lt;br /&gt;
 URxvt*scrollWithBuffer: true&lt;br /&gt;
 &lt;br /&gt;
 ! scroll back to the bottom on keypress&lt;br /&gt;
 URxvt*scrollTtyKeypress: true&lt;br /&gt;
&lt;br /&gt;
=== セカンダリスクリーンのスクロールバッファ ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;セカンダリスクリーン&#039;&#039;でページャをスクロールすると (例えば {{ic|less}} で {{ic|&#039;&#039;&#039;-X&#039;&#039;&#039;}} オプションを省略した場合）、端末のバッファではなくページャ内でスクロールできるようスクロールバックバッファを無効にすることをお勧めします。konsole および vte ベースの端末ではデフォルトでこういう仕様になっており動作を変更できません。urxvt で &#039;&#039;セカンダリスクリーン&#039;&#039;のスクロールバックバッファを無効にするには:&lt;br /&gt;
&lt;br /&gt;
 URxvt.secondaryScreen: 1&lt;br /&gt;
 URxvt.secondaryScroll: 0&lt;br /&gt;
&lt;br /&gt;
上記の設定は、マウスホイールを使用してスクロールする場合を除いて、期待通りに機能します。マウスホイールでセカンダリスクリーンのページャをスクロールしたとき、スクロールバックバッファに何かがあると、ページャの代わりにスクロールバックバッファがマウスホイールでスクロールされます。この問題を解決するには、rxvt-unicode に新しいオプションを導入する必要があります [https://bbs.archlinux.org/viewtopic.php?id=132150]。AUR の {{aur|rxvt-unicode-better-wheel-scrolling}} でパッチが適用された rxvt-unicode が利用できます。パッケージのインストール後、以下を設定ファイルに追加してください:&lt;br /&gt;
&lt;br /&gt;
 URxvt.secondaryWheel: 1&lt;br /&gt;
&lt;br /&gt;
{{Note|perl 拡張の {{AUR|urxvt-vtwheel}} は上記のオプションと衝突します。}}&lt;br /&gt;
&lt;br /&gt;
=== フォントを宣言する方法 ===&lt;br /&gt;
&lt;br /&gt;
 URxvt.font: 9x15&lt;br /&gt;
上記の設定は以下と同じです:&lt;br /&gt;
 URxvt.font: -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1&lt;br /&gt;
&lt;br /&gt;
同じフォントを太字で使用するには:&lt;br /&gt;
 URxvt.font: 9x15bold&lt;br /&gt;
上記の設定は以下と同じです:&lt;br /&gt;
 URxvt.font: -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1&lt;br /&gt;
&lt;br /&gt;
X コアフォントの短縮名の完全なリストは {{ic|/usr/share/fonts/misc/fonts.alias}} にあります ({{ic|/usr/share/fonts/}} のサブディレクトリにも fonts.alias ファイルが存在しますが、実際のフォントとは別のパッケージになっているため、インストールされていないフォントも含まれます)。フォントの短縮エイリアスは ISO-10646-1 (Unicode) バージョンではなく ISO-8859-1 バージョンを選択し、100 DPI バージョンではなく 75 DPI バージョンのフォントが使われるため、フォントを選択したいときは長い方の名前を使ってください。&lt;br /&gt;
&lt;br /&gt;
上記はビットマップフォントの話で、他のフォントは以下のように Xft で使うことができます:&lt;br /&gt;
 URxvt.font: xft:monaco:size=10&lt;br /&gt;
&lt;br /&gt;
または:&lt;br /&gt;
 URxvt.font: xft:monaco:bold:size=10&lt;br /&gt;
&lt;br /&gt;
{{Note|Xft のフォント名にハイフン(-)が含まれている場合は、バックスラッシュ(\)を2回打ってエスケープしてください。バックスラッシュ1回でエスケープする urxvt の -fn オプションや fc-list の出力とは仕方が異なります。}}&lt;br /&gt;
&lt;br /&gt;
以下のようにターミナルにエスケープコードを出力することで一時的にフォントをテストすることが可能です:&lt;br /&gt;
 $ printf &#039;\e]710;%s\007&#039; &amp;quot;xft:Terminus:pixelsize=12&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== フォントの間隔 ===&lt;br /&gt;
&lt;br /&gt;
デフォルトでは文字の間隔が広すぎるように感じられる場合、以下のエントリで調整できます:&lt;br /&gt;
&lt;br /&gt;
{{hc|~/.Xresources|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
URxvt.letterSpace: -1&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{ic|-1}} で1ピクセル文字の間隔が狭まります。必要ならばもっと狭めることもできます。&lt;br /&gt;
&lt;br /&gt;
=== カラー ===&lt;br /&gt;
&lt;br /&gt;
デフォルトで、rxvt-unicode はカラーサポートを有効にしてコンパイルされています。デフォルトの前景色・背景色に加えて、rxvt は256色まで表示することができます (太字・点滅・下線とそれらの組み合わせも可能です)。&lt;br /&gt;
&lt;br /&gt;
foreground, background, cursorColor, cursorColor2, colorBD, colorUL は0から15の数字で色を指定することができ、短い名前で color0-color15 の色を使うことができます。詳しくは [[#Xresources]] を参照。&lt;br /&gt;
&lt;br /&gt;
{{Note|デフォルトでは {{ic|urxvt}} は [[Xterm]] と同じ色を使用しますが、ひとつだけ違う色があります。変更するには Xresources に {{ic|URxvt.color12: rgb:5c/5c/ff}} を追加してください。}}&lt;br /&gt;
&lt;br /&gt;
== カットアンドペースト ==&lt;br /&gt;
&lt;br /&gt;
Rxvt-unicode はデフォルトで {{Ic|PRIMARY}} セレクションにロードされているカットバッファを使います。詳しくは [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod#THE_SELECTION_SELECTING_AND_PASTING_ Selecting and pasting text] を見てください。&lt;br /&gt;
&lt;br /&gt;
{{ic|ALT-CTRL-c}} と {{ic|ALT-CTRL-v}} でコピーアンドペーストができます。&lt;br /&gt;
&lt;br /&gt;
{{Note|選択したテキストは自動的に {{ic|PRIMARY}} にコピーされます。{{Pkg|rxvt-unicode}} 9.20 から [[#Perl 拡張|perl 拡張]]の {{ic|selection-to-clipboard}} を使うことでテキストを {{ic|CLIPBOARD}} にコピーできます。}}&lt;br /&gt;
&lt;br /&gt;
[[クリップボード#クリップボードマネージャの一覧]]も参照。&lt;br /&gt;
&lt;br /&gt;
== Perl 拡張 ==&lt;br /&gt;
&lt;br /&gt;
=== クリックできる URL ===&lt;br /&gt;
&lt;br /&gt;
matcher 拡張を使うことでターミナルに表示された URL をクリックできるようになります。例えば、(規定のウェブブラウザを使って) 左マウスボタンでリンクを開くには、以下を {{ic|.Xresources}} に追加します:&lt;br /&gt;
&lt;br /&gt;
 URxvt.perl-ext-common: default,matcher&lt;br /&gt;
 URxvt.url-launcher: /usr/bin/xdg-open&lt;br /&gt;
 URxvt.matcher.button: 1&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode 9.14 から、キーボードを使って最近閲覧した URL を開いたり確認することもできるようになりました:&lt;br /&gt;
&lt;br /&gt;
 URxvt.keysym.C-Delete: perl:matcher:last&lt;br /&gt;
 URxvt.keysym.M-Delete: perl:matcher:list&lt;br /&gt;
&lt;br /&gt;
マッチするリンクに前景色・背景色といった[[#カラー|色]]を付けることもできます。例えば青色なら次です:&lt;br /&gt;
&lt;br /&gt;
 URxvt.matcher.rend.0: Uline Bold fg5&lt;br /&gt;
&lt;br /&gt;
他には、{{ic|colorUL}} を使えば #RRGGBB スタイルでの色付けができます。ただし、これはリンクにマッチした部分だけでなく下線付きテキストのすべてに適用されます:&lt;br /&gt;
&lt;br /&gt;
 URxvt.colorUL: #4682B4&lt;br /&gt;
&lt;br /&gt;
=== ヤンクできる URL (マウスを使用しない) ===&lt;br /&gt;
&lt;br /&gt;
また、マウスを使わずに選択したURLをブラウザで開くこともできます。&lt;br /&gt;
&lt;br /&gt;
{{Pkg|urxvt-perls}} パッケージをインストールして適当に {{ic|.Xresources}} を調整してください。例:&lt;br /&gt;
 URxvt.perl-ext: default,url-select&lt;br /&gt;
 URxvt.keysym.M-u: perl:url-select:select_next&lt;br /&gt;
 URxvt.url-select.launcher: /usr/bin/xdg-open&lt;br /&gt;
 URxvt.url-select.underline: true&lt;br /&gt;
&lt;br /&gt;
{{Note|この拡張は、上で説明したクリックできる URL拡張を置き換えるため、{{Ic|matcher}} を {{Ic|URxvt.perl-ext}} のリストから除外してください。}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;キーコマンド:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! キー !! 説明&lt;br /&gt;
|-&lt;br /&gt;
| Alt+u || 選択モードに移行。スクリーン上にある最後のURLが選択されます。{{ic|Alt+u}} を繰り返せば更に上にあるURLを選択できます。&lt;br /&gt;
|-&lt;br /&gt;
| k || 上にあるURLを選択&lt;br /&gt;
|-&lt;br /&gt;
| j || 下にあるURLを選択&lt;br /&gt;
|-&lt;br /&gt;
| Return || 選択モードを終了して選択したURLをブラウザで開く&lt;br /&gt;
|-&lt;br /&gt;
| o || 選択モードを終了せずに選択したURLをブラウザで開く&lt;br /&gt;
|-&lt;br /&gt;
| y || 選択モードを終了して選択したURLをコピーする&lt;br /&gt;
|-&lt;br /&gt;
| Esc || URL 選択モードをキャンセル。&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== シンプルなタブ ===&lt;br /&gt;
&lt;br /&gt;
urxvt にタブを追加するには、以下を {{ic|~/.Xresources}} に追加します:&lt;br /&gt;
 URxvt.perl-ext-common: ...,tabbed,...&lt;br /&gt;
&lt;br /&gt;
タブをコントロールするには:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! キー !! 説明&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Down || 新しいタブ&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Left || 左のタブに移動&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Right || 右のタブに移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+Left || タブを左に移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+Right || タブを右に移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+d || タブを閉じる&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
タブの色は以下のようにして変更できます:&lt;br /&gt;
&lt;br /&gt;
 URxvt.tabbed.tabbar-fg: 2&lt;br /&gt;
 URxvt.tabbed.tabbar-bg: 0&lt;br /&gt;
 URxvt.tabbed.tab-fg: 3&lt;br /&gt;
 URxvt.tabbed.tab-bg: 0&lt;br /&gt;
&lt;br /&gt;
=== フルスクリーン ===&lt;br /&gt;
&lt;br /&gt;
{{AUR|urxvt-fullscreen}} パッケージをインストールして、urxvt をフルスクリーンにするキーバインディングを設定することができます:&lt;br /&gt;
&lt;br /&gt;
{{hc|~/.Xresources|&lt;br /&gt;
...&lt;br /&gt;
URxvt.perl-ext-common: ..., fullscreen, ...&lt;br /&gt;
URxvt.keysym.F11: perl:fullscreen:switch&lt;br /&gt;
...&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== フォントサイズを即座に変更 ===&lt;br /&gt;
&lt;br /&gt;
{{AUR|urxvt-resize-font-git}} パッケージをインストールして {{ic|~/.Xresources}} の Perl 拡張に以下を追加してください:&lt;br /&gt;
&lt;br /&gt;
 URxvt.perl-ext-common:  ...,resize-font,...&lt;br /&gt;
&lt;br /&gt;
デフォルトのキーバインド:&lt;br /&gt;
* {{ic|Ctrl++}} (または {{ic|1=Ctrl+Shift+=}}) でサイズを大きくする&lt;br /&gt;
* {{ic|Ctrl+-}} でサイズを小さくする&lt;br /&gt;
* {{ic|1=Ctrl+=}} でサイズをリセットする&lt;br /&gt;
* {{ic|Ctrl+?}} で現在のサイズを表示&lt;br /&gt;
&lt;br /&gt;
以下のようにキーバインドを変更することもできます:&lt;br /&gt;
&lt;br /&gt;
 URxvt.keysym.C-Down:  resize-font:smaller&lt;br /&gt;
 URxvt.keysym.C-Up:    resize-font:bigger&lt;br /&gt;
&lt;br /&gt;
キーバインドとしてCtrl+Shiftを使うなら、デフォルトのキーバインドを無効化しておく必要があります（[http://wilmer.gaa.st/blog/archives/36-rxvt-unicode-and-ISO-14755-mode.html 詳細]）:&lt;br /&gt;
&lt;br /&gt;
 URxvt.iso14755: false&lt;br /&gt;
 URxvt.iso14755_52: false&lt;br /&gt;
&lt;br /&gt;
=== Perl 拡張の無効化 ===&lt;br /&gt;
&lt;br /&gt;
Perl 拡張機能を使っていない場合、完全に Perl 拡張を無効化することでセキュリティと性能を高めることができます:&lt;br /&gt;
 URxvt.perl-ext:&lt;br /&gt;
 URxvt.perl-ext-common:&lt;br /&gt;
&lt;br /&gt;
{{Note|複数の Perl 拡張を使うなら、次のようにカンマ区切りに並べて記述することができます: {{ic|URxvt.perl-ext-common:default,matcher,tabbed}}}}}}&lt;br /&gt;
&lt;br /&gt;
=== インプットメソッドのインライン表示 ===&lt;br /&gt;
urxvt でインプットメソッドをインライン表示にする場合は、以下を {{ic|~/.Xresources}} に追加します:&lt;br /&gt;
 URxvt.perl-ext-common: ...,xim-onthespot,...&lt;br /&gt;
&lt;br /&gt;
インプットメソッドの指定とプレエディットタイプの設定も必要になります (&#039;&#039;fcitx&#039;&#039; の部分は自分が使用しているインプットメソッドに変更する必要があります):&lt;br /&gt;
 URxvt.inputMethod: fcitx&lt;br /&gt;
 URxvt.preeditType: OnTheSpot&lt;br /&gt;
&lt;br /&gt;
== トラブルシューティング ==&lt;br /&gt;
&lt;br /&gt;
=== v9.09 にアップグレードした後に透過が機能しない ===&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode の開発者によって壁紙を設定するプログラムとの互換性が大幅に削除されました。対応していない壁紙設定プログラムを使うと透過が機能しなくなります。推奨されている壁紙設定プログラムは以下です:&lt;br /&gt;
&lt;br /&gt;
* [[feh]]&lt;br /&gt;
* hsetroot&lt;br /&gt;
* esetroot&lt;br /&gt;
&lt;br /&gt;
完全透過を使うには、URxvt.tintColor と URxvt.inheritPixmap をコメントアウトしてください。&lt;br /&gt;
&lt;br /&gt;
=== リモートホスト ===&lt;br /&gt;
&lt;br /&gt;
リモートホストにログインしているときに、urxvt-unicode を使ってテキストモードプログラムを実行すると問題が発生することがあります。その場合は {{Pkg|rxvt-unicode-terminfo}} をリモートホストにインストールするかローカルホストの {{ic|/usr/share/terminfo/r/rxvt-unicode}} をリモートホストの {{ic|~/.terminfo/r/rxvt-unicode}} にコピーすれば解決できます。rxvt-unicode-256color の場合も同様です。&lt;br /&gt;
&lt;br /&gt;
一部のリモートシステムには TERM=xterm と明記しないと自動的にタイトルが変更しないものもあります。それを修正するには、次の行をリモートマシンの .bashrc に追記してください:&lt;br /&gt;
&lt;br /&gt;
 PROMPT_COMMAND=&#039;echo -ne &amp;quot;\033]0;${USER}@${HOSTNAME}:${PWD}\007&amp;quot;&#039;&lt;br /&gt;
&lt;br /&gt;
=== rxvt-unicode を gmrun ターミナルとして使う ===&lt;br /&gt;
&lt;br /&gt;
他のターミナルとは異なり、urxvt は {{Ic|-e}} への引数としてクォートで囲まれた引数ではなく分割された引数を取ります。この挙動は、クォートで囲まれた引数を期待する gmrun を使うときトラブルになります。これを避けるには、 {{ic|.gmrunrc}} にて gmrun の変数である &amp;quot;Terminal&amp;quot; の前に &amp;quot;eval&amp;quot; を置いてください:&lt;br /&gt;
&lt;br /&gt;
 Terminal = eval urxvt&lt;br /&gt;
 TermExec = ${Terminal} -e&lt;br /&gt;
&lt;br /&gt;
（gmrun はコマンドを実行するのに {{ic|/bin/sh}} を使うため、&amp;quot;eval&amp;quot; は理解されます。）[[Bash]] でいう {{Ic|$@}} と同じように &amp;quot;eval&amp;quot; は {{Ic|-e}} の引数を &amp;quot;分割する&amp;quot; 副作用を持つので、コマンドを urxvt に上手く渡せます。&lt;br /&gt;
&lt;br /&gt;
=== テンキーの出力がおかしい (例: vim) ===&lt;br /&gt;
&lt;br /&gt;
今までに詳細が報告されてないにも関わらず、 一部のDebian GNU/Linux ユーザはこの症状に遭遇することがあります。TERM=rxvt が互換性あるキーマップを提供していても、どの設定でどのようにして起こるのか不明にも関わらず、間違った TERM 設定によりこの問題が起こる可能性があります。この問題に対する解決策を確認でき、助けになるならレポートしてください。&lt;br /&gt;
&lt;br /&gt;
ただ、&#039;&#039;xmodmap&#039;&#039; プログラム ({{Pkg|xorg-xmodmap}}) を使い、テンキーをリマップすることができます。&lt;br /&gt;
&lt;br /&gt;
1. {{ic|xev}} プログラム使用時にて数字キー（テンキー）が生成するキーコードを確認。&lt;br /&gt;
&lt;br /&gt;
* {{ic|xev}} プログラムを起動します&lt;br /&gt;
* キーコードを入力して {{ic|xev}} が出力する &#039;&#039;... keycode xxx ...&#039;&#039; を探してください。例えば、私のキーボードのテンキー1だと &#039;&#039;&#039;&#039;keycode 87&#039;&#039;&#039;&#039; を持つ &amp;quot;End&amp;quot; キーでもあります。&lt;br /&gt;
&lt;br /&gt;
2. 大抵の場合 {{ic|~/.Xmodmap}} に置く、キーコードを表現する xmodmap ファイルを作成か変更。&lt;br /&gt;
&lt;br /&gt;
数字キーの xmodmap ファイル例は次です:&lt;br /&gt;
&lt;br /&gt;
{{bc|1=&lt;br /&gt;
keycode 63 = KP_Multiply&lt;br /&gt;
keycode 79 = Home KP_7&lt;br /&gt;
keycode 80 = Up KP_8&lt;br /&gt;
keycode 81 = Prior KP_9&lt;br /&gt;
keycode 82 = KP_Subtract&lt;br /&gt;
keycode 83 = Left KP_4&lt;br /&gt;
keycode 84 = KP_5&lt;br /&gt;
keycode 85 = Right KP_6&lt;br /&gt;
keycode 86 = KP_Add&lt;br /&gt;
keycode 87 = End KP_1&lt;br /&gt;
keycode 88 = Down KP_2&lt;br /&gt;
keycode 89 = Next KP_3&lt;br /&gt;
keycode 90 = Insert KP_0&lt;br /&gt;
keycode 91 = Delete KP_Decimal&lt;br /&gt;
keycode 112 = Prior&lt;br /&gt;
keycode 117 = Next&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
3. xmodmap フィアルを X セッションの起動時に読み込む。&lt;br /&gt;
&lt;br /&gt;
例えば、次の行を {{ic|~/.xinitrc}} に追記します:&lt;br /&gt;
&lt;br /&gt;
 ...&lt;br /&gt;
 xmodmap ~/.Xmodmap&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
=== 特定のキーの組み合わせが機能しない ===&lt;br /&gt;
&lt;br /&gt;
[http://vim.wikia.com/wiki/Get_Alt_key_to_work_in_terminal?useskin=monobook Get Alt key to work in terminal] を見てください。&lt;br /&gt;
&lt;br /&gt;
=== 文字を表示するときに遅くなる ===&lt;br /&gt;
&lt;br /&gt;
alsamixer や xprop といったプログラムのなかにはグラフィックドライバが上手く動かず再描画が酷く遅くなるものがあります。これは {{ic|~/.Xresources}} のオプションである &amp;quot;skipBuiltinGlyphs&amp;quot; かコマンドラインオプションである {{ic|-sbg}} によって修正できるかもしれません。1つの解決策として {{ic|~/.Xresources}} に次の行を追記してください:&lt;br /&gt;
&lt;br /&gt;
 URxvt*skipBuiltinGlyphs:    true&lt;br /&gt;
&lt;br /&gt;
=== 長い行で動作が遅くなる ===&lt;br /&gt;
&lt;br /&gt;
{{ic|matcher}} プラグインが原因かもしれません。{{ic|matcher}} プラグインは行が更新される度にその行に対して正規表現によるマッチを行うため、巨大な {{ic|saveLines}} を持っていると {{ic|saveLines}} の最大まで行を読み込みこの問題が悪化します。&lt;br /&gt;
&lt;br /&gt;
シンプルな回避方法は次です:&lt;br /&gt;
&lt;br /&gt;
* {{ic|saveLines}} を小さくする&lt;br /&gt;
* {{ic|matcher}} プラグインを無効にする&lt;br /&gt;
&lt;br /&gt;
これらがどうしても欲しいオプションで削除できないなら、特定の長さでURLマッチを無効化させることもできます:&lt;br /&gt;
&lt;br /&gt;
# {{ic|/usr/lib/urxvt/perl/matcher}} を {{ic|~/.urxvt/ext/}} へコピーします（ディレクトリがない場合は作成してください）&lt;br /&gt;
# {{ic|~/.urxvt/ext/matcher}} を編集します。サブルーチンである {{ic|on_line_update}} の {{ic|&amp;lt;nowiki&amp;gt;my ($self, $row) = @_;&amp;lt;/nowiki&amp;gt;}} の行を見付けてください。270行目のはずです。&lt;br /&gt;
# その行の後に、次の行を追加してください {{ic|return () if $row &amp;lt; -100;}} 。これでターミナル上部から100行超える行でのURLマッチ動作を防げます。&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [http://software.schmorp.de/pkg/rxvt-unicode.html rxvt-unicode] - 公式サイト&lt;br /&gt;
* [http://cvs.schmorp.de/rxvt-unicode/ Source Code] - Browseable CVS&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod rxvt-unicode FAQ] - 公式 FAQ&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod rxvt-unicode Reference] - 公式マニュアルページ&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/src/urxvt.pm urxvtperl] - 公式 Perl 拡張リファレンス&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=13538</id>
		<title>利用者:R6eve</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=13538"/>
		<updated>2018-11-11T02:29:06Z</updated>

		<summary type="html">&lt;p&gt;R6eve: メールアドレスの追加&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ニート（Neat）&lt;br /&gt;
&lt;br /&gt;
* GitHub - https://github.com/r6eve/&lt;br /&gt;
* Twitter - https://twitter.com/r6eve179f/&lt;br /&gt;
* E-Mail - (λx.r6eve179fxgmail.com)@&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=13535</id>
		<title>利用者:R6eve</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=13535"/>
		<updated>2018-11-09T05:22:45Z</updated>

		<summary type="html">&lt;p&gt;R6eve: 注釈の追加&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ニート（Neat）&lt;br /&gt;
&lt;br /&gt;
* GitHub - https://github.com/r6eve/&lt;br /&gt;
* Twitter - https://twitter.com/r6eve179f/&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=13534</id>
		<title>利用者:R6eve</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:R6eve&amp;diff=13534"/>
		<updated>2018-11-09T05:21:07Z</updated>

		<summary type="html">&lt;p&gt;R6eve: 自己紹介ページの作成&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Neat&lt;br /&gt;
&lt;br /&gt;
* GitHub - https://github.com/r6eve/&lt;br /&gt;
* Twitter - https://twitter.com/r6eve179f/&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Rxvt-unicode&amp;diff=13533</id>
		<title>Rxvt-unicode</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Rxvt-unicode&amp;diff=13533"/>
		<updated>2018-11-08T06:20:18Z</updated>

		<summary type="html">&lt;p&gt;R6eve: Perl 拡張セクションの残りを翻訳&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:rxvt-unicode}}&lt;br /&gt;
[[Category:ターミナルエミュレータ]]&lt;br /&gt;
[[de:urxvt]]&lt;br /&gt;
[[en:Rxvt-unicode]]&lt;br /&gt;
[[es:Rxvt-unicode]]&lt;br /&gt;
[[fr:urxvt]]&lt;br /&gt;
[[ru:Rxvt-unicode]]&lt;br /&gt;
[[sr:Rxvt-unicode]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|rxvt-unicode/ヒントとテクニック}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
[http://software.schmorp.de/pkg/rxvt-unicode.html rxvt-unicode] は細かいカスタマイズができるターミナルエミュレータで [[Wikipedia:ja:Rxvt|rxvt]] のフォークです。一般に {{Ic|urxvt}} と呼ばれている、rxvt-unicode は[[デーモン]]化して一つの[[Wikipedia:ja:プロセス|プロセス]]で複数のクライアントを実行することができ、システムリソースの使用を抑えることができます。Marc Lehmann によって開発されており、rxvt-unicode の取り柄としては [[Wikipedia:ja:Unicode|Unicode]] による多言語サポートや、透過、複数のフォントタイプの表示機能、[[Perl]] 拡張のサポートなどが挙げられます。&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
{{Pkg|rxvt-unicode}} パッケージでインストールすることができます。&lt;br /&gt;
&lt;br /&gt;
== 設定 ==&lt;br /&gt;
&lt;br /&gt;
設定と値の完全なリストは {{man|1|urxvt}} と {{man|7|urxvt}} を見て下さい。&lt;br /&gt;
&lt;br /&gt;
=== ~/.Xresources の作成 ===&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode の外観や機能はコマンドラインの引数や [[X resources]] によって制御されます。コマンドライン引数は [[X resources]] の設定よりも優先して適用されます。&lt;br /&gt;
&lt;br /&gt;
{{ic|urxvt --help}} は全ての &#039;&#039;rxvt&#039;&#039; リソースを標準エラーに出力します。各リソースの説明は man ページに存在します。&lt;br /&gt;
&lt;br /&gt;
=== スクロールバックの位置 ===&lt;br /&gt;
&lt;br /&gt;
デフォルトでは、シェル出力が更新されると、スクロールバックの表示は自動的にバッファの最後にジャンプし、新しい出力を表示します。前の出力（コンパイラメッセージなど）を表示したい場合は {{ic|~/.Xresources}} に以下のオプションを設定します:&lt;br /&gt;
&lt;br /&gt;
 ! do not scroll with output&lt;br /&gt;
 URxvt*scrollTtyOutput: false&lt;br /&gt;
 &lt;br /&gt;
 ! scroll in relation to buffer (with mouse scroll or Shift+Page Up)&lt;br /&gt;
 URxvt*scrollWithBuffer: true&lt;br /&gt;
 &lt;br /&gt;
 ! scroll back to the bottom on keypress&lt;br /&gt;
 URxvt*scrollTtyKeypress: true&lt;br /&gt;
&lt;br /&gt;
=== セカンダリスクリーンのスクロールバッファ ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;セカンダリスクリーン&#039;&#039;でページャをスクロールすると (例えば {{ic|less}} で {{ic|&#039;&#039;&#039;-X&#039;&#039;&#039;}} オプションを省略した場合）、端末のバッファではなくページャ内でスクロールできるようスクロールバックバッファを無効にすることをお勧めします。konsole および vte ベースの端末ではデフォルトでこういう仕様になっており動作を変更できません。urxvt で &#039;&#039;セカンダリスクリーン&#039;&#039;のスクロールバックバッファを無効にするには:&lt;br /&gt;
&lt;br /&gt;
 URxvt.secondaryScreen: 1&lt;br /&gt;
 URxvt.secondaryScroll: 0&lt;br /&gt;
&lt;br /&gt;
上記の設定は、マウスホイールを使用してスクロールする場合を除いて、期待通りに機能します。マウスホイールでセカンダリスクリーンのページャをスクロールしたとき、スクロールバックバッファに何かがあると、ページャの代わりにスクロールバックバッファがマウスホイールでスクロールされます。この問題を解決するには、rxvt-unicode に新しいオプションを導入する必要があります [https://bbs.archlinux.org/viewtopic.php?id=132150]。AUR の {{aur|rxvt-unicode-better-wheel-scrolling}} でパッチが適用された rxvt-unicode が利用できます。パッケージのインストール後、以下を設定ファイルに追加してください:&lt;br /&gt;
&lt;br /&gt;
 URxvt.secondaryWheel: 1&lt;br /&gt;
&lt;br /&gt;
{{Note|perl 拡張の {{AUR|urxvt-vtwheel}} は上記のオプションと衝突します。}}&lt;br /&gt;
&lt;br /&gt;
=== フォントを宣言する方法 ===&lt;br /&gt;
&lt;br /&gt;
 URxvt.font: 9x15&lt;br /&gt;
上記の設定は以下と同じです:&lt;br /&gt;
 URxvt.font: -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1&lt;br /&gt;
&lt;br /&gt;
同じフォントを太字で使用するには:&lt;br /&gt;
 URxvt.font: 9x15bold&lt;br /&gt;
上記の設定は以下と同じです:&lt;br /&gt;
 URxvt.font: -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1&lt;br /&gt;
&lt;br /&gt;
X コアフォントの短縮名の完全なリストは {{ic|/usr/share/fonts/misc/fonts.alias}} にあります ({{ic|/usr/share/fonts/}} のサブディレクトリにも fonts.alias ファイルが存在しますが、実際のフォントとは別のパッケージになっているため、インストールされていないフォントも含まれます)。フォントの短縮エイリアスは ISO-10646-1 (Unicode) バージョンではなく ISO-8859-1 バージョンを選択し、100 DPI バージョンではなく 75 DPI バージョンのフォントが使われるため、フォントを選択したいときは長い方の名前を使ってください。&lt;br /&gt;
&lt;br /&gt;
上記はビットマップフォントの話で、他のフォントは以下のように Xft で使うことができます:&lt;br /&gt;
 URxvt.font: xft:monaco:size=10&lt;br /&gt;
&lt;br /&gt;
または:&lt;br /&gt;
 URxvt.font: xft:monaco:bold:size=10&lt;br /&gt;
&lt;br /&gt;
{{Note|Xft のフォント名にハイフン(-)が含まれている場合は、バックスラッシュ(\)を2回打ってエスケープしてください。バックスラッシュ1回でエスケープする urxvt の -fn オプションや fc-list の出力とは仕方が異なります。}}&lt;br /&gt;
&lt;br /&gt;
以下のようにターミナルにエスケープコードを出力することで一時的にフォントをテストすることが可能です:&lt;br /&gt;
 $ printf &#039;\e]710;%s\007&#039; &amp;quot;xft:Terminus:pixelsize=12&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== フォントの間隔 ===&lt;br /&gt;
&lt;br /&gt;
デフォルトでは文字の間隔が広すぎるように感じられる場合、以下のエントリで調整できます:&lt;br /&gt;
&lt;br /&gt;
{{hc|~/.Xresources|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
URxvt.letterSpace: -1&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{ic|-1}} で1ピクセル文字の間隔が狭まります。必要ならばもっと狭めることもできます。&lt;br /&gt;
&lt;br /&gt;
=== カラー ===&lt;br /&gt;
&lt;br /&gt;
デフォルトで、rxvt-unicode はカラーサポートを有効にしてコンパイルされています。デフォルトの前景色・背景色に加えて、rxvt は256色まで表示することができます (太字・点滅・下線とそれらの組み合わせも可能です)。&lt;br /&gt;
&lt;br /&gt;
foreground, background, cursorColor, cursorColor2, colorBD, colorUL は0から15の数字で色を指定することができ、短い名前で color0-color15 の色を使うことができます。詳しくは [[#Xresources]] を参照。&lt;br /&gt;
&lt;br /&gt;
{{Note|デフォルトでは {{ic|urxvt}} は [[Xterm]] と同じ色を使用しますが、ひとつだけ違う色があります。変更するには Xresources に {{ic|URxvt.color12: rgb:5c/5c/ff}} を追加してください。}}&lt;br /&gt;
&lt;br /&gt;
== カットアンドペースト ==&lt;br /&gt;
&lt;br /&gt;
Rxvt-unicode はデフォルトで {{Ic|PRIMARY}} セレクションにロードされているカットバッファを使います。詳しくは [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod#THE_SELECTION_SELECTING_AND_PASTING_ Selecting and pasting text] を見てください。&lt;br /&gt;
&lt;br /&gt;
{{ic|ALT-CTRL-c}} と {{ic|ALT-CTRL-v}} でコピーアンドペーストができます。&lt;br /&gt;
&lt;br /&gt;
{{Note|選択したテキストは自動的に {{ic|PRIMARY}} にコピーされます。{{Pkg|rxvt-unicode}} 9.20 から [[#Perl 拡張|perl 拡張]]の {{ic|selection-to-clipboard}} を使うことでテキストを {{ic|CLIPBOARD}} にコピーできます。}}&lt;br /&gt;
&lt;br /&gt;
[[クリップボード#クリップボードマネージャの一覧]]も参照。&lt;br /&gt;
&lt;br /&gt;
== Perl 拡張 ==&lt;br /&gt;
&lt;br /&gt;
=== クリックできる URL ===&lt;br /&gt;
&lt;br /&gt;
matcher 拡張を使うことでターミナルに表示された URL をクリックできるようになります。例えば、(規定のウェブブラウザを使って) 左マウスボタンでリンクを開くには、以下を {{ic|.Xresources}} に追加します:&lt;br /&gt;
&lt;br /&gt;
 URxvt.perl-ext-common: default,matcher&lt;br /&gt;
 URxvt.url-launcher: /usr/bin/xdg-open&lt;br /&gt;
 URxvt.matcher.button: 1&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode 9.14 から、キーボードを使って最近閲覧した URL を開いたり確認することもできるようになりました:&lt;br /&gt;
&lt;br /&gt;
 URxvt.keysym.C-Delete: perl:matcher:last&lt;br /&gt;
 URxvt.keysym.M-Delete: perl:matcher:list&lt;br /&gt;
&lt;br /&gt;
マッチするリンクに前景色・背景色といった[[#カラー|色]]を付けることもできます。例えば青色なら次です:&lt;br /&gt;
&lt;br /&gt;
 URxvt.matcher.rend.0: Uline Bold fg5&lt;br /&gt;
&lt;br /&gt;
他には、{{ic|colorUL}} を使えば #RRGGBB スタイルでの色付けができます。ただし、これはリンクにマッチした部分だけでなく下線付きテキストのすべてに適用されます:&lt;br /&gt;
&lt;br /&gt;
 URxvt.colorUL: #4682B4&lt;br /&gt;
&lt;br /&gt;
=== ヤンクできる URL (マウスを使用しない) ===&lt;br /&gt;
&lt;br /&gt;
また、マウスを使わずに選択したURLをブラウザで開くこともできます。&lt;br /&gt;
&lt;br /&gt;
{{Pkg|urxvt-perls}} パッケージをインストールして適当に {{ic|.Xresources}} を調整してください。例:&lt;br /&gt;
 URxvt.perl-ext: default,url-select&lt;br /&gt;
 URxvt.keysym.M-u: perl:url-select:select_next&lt;br /&gt;
 URxvt.url-select.launcher: /usr/bin/xdg-open&lt;br /&gt;
 URxvt.url-select.underline: true&lt;br /&gt;
&lt;br /&gt;
{{Note|この拡張は、上で説明したクリックできる URL拡張を置き換えるため、{{Ic|matcher}} を {{Ic|URxvt.perl-ext}} のリストから除外してください。}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;キーコマンド:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! キー !! 説明&lt;br /&gt;
|-&lt;br /&gt;
| Alt+u || 選択モードに移行。スクリーン上にある最後のURLが選択されます。{{ic|Alt+u}} を繰り返せば更に上にあるURLを選択できます。&lt;br /&gt;
|-&lt;br /&gt;
| k || 上にあるURLを選択&lt;br /&gt;
|-&lt;br /&gt;
| j || 下にあるURLを選択&lt;br /&gt;
|-&lt;br /&gt;
| Return || 選択モードを終了して選択したURLをブラウザで開く&lt;br /&gt;
|-&lt;br /&gt;
| o || 選択モードを終了せずに選択したURLをブラウザで開く&lt;br /&gt;
|-&lt;br /&gt;
| y || 選択モードを終了して選択したURLをコピーする&lt;br /&gt;
|-&lt;br /&gt;
| Esc || URL 選択モードをキャンセル。&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== シンプルなタブ ===&lt;br /&gt;
&lt;br /&gt;
urxvt にタブを追加するには、以下を {{ic|~/.Xresources}} に追加します:&lt;br /&gt;
 URxvt.perl-ext-common: ...,tabbed,...&lt;br /&gt;
&lt;br /&gt;
タブをコントロールするには:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! キー !! 説明&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Down || 新しいタブ&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Left || 左のタブに移動&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Right || 右のタブに移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+Left || タブを左に移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+Right || タブを右に移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+d || タブを閉じる&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
タブの色は以下のようにして変更できます:&lt;br /&gt;
&lt;br /&gt;
 URxvt.tabbed.tabbar-fg: 2&lt;br /&gt;
 URxvt.tabbed.tabbar-bg: 0&lt;br /&gt;
 URxvt.tabbed.tab-fg: 3&lt;br /&gt;
 URxvt.tabbed.tab-bg: 0&lt;br /&gt;
&lt;br /&gt;
=== フルスクリーン ===&lt;br /&gt;
&lt;br /&gt;
{{AUR|urxvt-fullscreen}} パッケージをインストールして、urxvt をフルスクリーンにするキーバインディングを設定することができます:&lt;br /&gt;
&lt;br /&gt;
{{hc|~/.Xresources|&lt;br /&gt;
...&lt;br /&gt;
URxvt.perl-ext-common: ..., fullscreen, ...&lt;br /&gt;
URxvt.keysym.F11: perl:fullscreen:switch&lt;br /&gt;
...&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== フォントサイズを即座に変更 ===&lt;br /&gt;
&lt;br /&gt;
{{AUR|urxvt-resize-font-git}} パッケージをインストールして {{ic|~/.Xresources}} の Perl 拡張に以下を追加してください:&lt;br /&gt;
&lt;br /&gt;
 URxvt.perl-ext-common:  ...,resize-font,...&lt;br /&gt;
&lt;br /&gt;
デフォルトのキーバインド:&lt;br /&gt;
* {{ic|Ctrl++}} (または {{ic|1=Ctrl+Shift+=}}) でサイズを大きくする&lt;br /&gt;
* {{ic|Ctrl+-}} でサイズを小さくする&lt;br /&gt;
* {{ic|1=Ctrl+=}} でサイズをリセットする&lt;br /&gt;
* {{ic|Ctrl+?}} で現在のサイズを表示&lt;br /&gt;
&lt;br /&gt;
以下のようにキーバインドを変更することもできます:&lt;br /&gt;
&lt;br /&gt;
 URxvt.keysym.C-Down:  resize-font:smaller&lt;br /&gt;
 URxvt.keysym.C-Up:    resize-font:bigger&lt;br /&gt;
&lt;br /&gt;
キーバインドとしてCtrl+Shiftを使うなら、デフォルトのキーバインドを無効化しておく必要があります（[http://wilmer.gaa.st/blog/archives/36-rxvt-unicode-and-ISO-14755-mode.html 詳細]）:&lt;br /&gt;
&lt;br /&gt;
 URxvt.iso14755: false&lt;br /&gt;
 URxvt.iso14755_52: false&lt;br /&gt;
&lt;br /&gt;
=== Perl 拡張の無効化 ===&lt;br /&gt;
&lt;br /&gt;
Perl 拡張機能を使っていない場合、完全に Perl 拡張を無効化することでセキュリティと性能を高めることができます:&lt;br /&gt;
 URxvt.perl-ext:&lt;br /&gt;
 URxvt.perl-ext-common:&lt;br /&gt;
&lt;br /&gt;
{{Note|複数の Perl 拡張を使うなら、次のようにカンマ区切りに並べて記述することができます: {{ic|URxvt.perl-ext-common:default,matcher,tabbed}}}}}}&lt;br /&gt;
&lt;br /&gt;
=== インプットメソッドのインライン表示 ===&lt;br /&gt;
urxvt でインプットメソッドをインライン表示にする場合は、以下を {{ic|~/.Xresources}} に追加します:&lt;br /&gt;
 URxvt.perl-ext-common: ...,xim-onthespot,...&lt;br /&gt;
&lt;br /&gt;
インプットメソッドの指定とプレエディットタイプの設定も必要になります (&#039;&#039;fcitx&#039;&#039; の部分は自分が使用しているインプットメソッドに変更する必要があります):&lt;br /&gt;
 URxvt.inputMethod: fcitx&lt;br /&gt;
 URxvt.preeditType: OnTheSpot&lt;br /&gt;
&lt;br /&gt;
== トラブルシューティング ==&lt;br /&gt;
&lt;br /&gt;
=== v9.09 にアップグレードした後に透過が機能しない ===&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode の開発者によって壁紙を設定するプログラムとの互換性が大幅に削除されました。対応していない壁紙設定プログラムを使うと透過が機能しなくなります。推奨されている壁紙設定プログラムは以下です:&lt;br /&gt;
&lt;br /&gt;
* [[feh]]&lt;br /&gt;
* hsetroot&lt;br /&gt;
* esetroot&lt;br /&gt;
&lt;br /&gt;
完全透過を使うには、URxvt.tintColor と URxvt.inheritPixmap をコメントアウトしてください。&lt;br /&gt;
&lt;br /&gt;
=== リモートホスト ===&lt;br /&gt;
&lt;br /&gt;
リモートホストにログインしているときに、urxvt-unicode を使ってテキストモードプログラムを実行すると問題が発生することがあります。その場合は {{Pkg|rxvt-unicode-terminfo}} をリモートホストにインストールするかローカルホストの {{ic|/usr/share/terminfo/r/rxvt-unicode}} をリモートホストの {{ic|~/.terminfo/r/rxvt-unicode}} にコピーすれば解決できます。rxvt-unicode-256color の場合も同様です。&lt;br /&gt;
&lt;br /&gt;
Some remote systems do not change title automatically unless you specify TERM=xterm. To fix the issue add this line to .bashrc on the remote machine:&lt;br /&gt;
&lt;br /&gt;
 PROMPT_COMMAND=&#039;echo -ne &amp;quot;\033]0;${USER}@${HOSTNAME}:${PWD}\007&amp;quot;&#039;&lt;br /&gt;
&lt;br /&gt;
=== rxvt-unicode を gmrun ターミナルとして使う ===&lt;br /&gt;
&lt;br /&gt;
Unlike some other terminals, urxvt expects the arguments to {{Ic|-e}} to be given separately, rather than grouped together with quotes. This causes trouble with gmrun, which assumes the opposite behavior. This can be worked around by putting an &amp;quot;eval&amp;quot; in front of gmrun&#039;s &amp;quot;Terminal&amp;quot; variable in {{ic|.gmrunrc}}:&lt;br /&gt;
&lt;br /&gt;
 Terminal = eval urxvt&lt;br /&gt;
 TermExec = ${Terminal} -e&lt;br /&gt;
&lt;br /&gt;
(gmrun uses {{ic|/bin/sh}} to execute commands, so the &amp;quot;eval&amp;quot; is understood here.) The &amp;quot;eval&amp;quot; has the side-effect of &amp;quot;breaking up&amp;quot; the argument to {{Ic|-e}} in the same way that {{Ic|$@}} does in [[Bash]], making the command intelligible to urxvt.&lt;br /&gt;
&lt;br /&gt;
=== テンキーの出力がおかしい (例: vim) ===&lt;br /&gt;
&lt;br /&gt;
Some Debian GNU/Linux users seem to have this problem, although no specific details were reported so far. It is possible that this is caused by the wrong TERM setting, although the details of whether and how this can happen are unknown, as TERM=rxvt should offer a compatible keymap. See the answer to the previous question, and please report if that helped.&lt;br /&gt;
&lt;br /&gt;
However, using the &#039;&#039;xmodmap&#039;&#039; program ({{Pkg|xorg-xmodmap}}), you can re-map your number pad keys back.&lt;br /&gt;
&lt;br /&gt;
1. Check the keycode that your numerical keypad (numpad) generates using {{ic|xev}} program.&lt;br /&gt;
&lt;br /&gt;
* Start the {{ic|xev}} program&lt;br /&gt;
* Press your number pad keys and look for &#039;&#039;... keycode xxx ...&#039;&#039; in {{ic|xev}}&#039;s output. For example, numpad 1 in my keyboard is also &amp;quot;End&amp;quot; key, that have a &#039;&#039;&#039;&#039;keycode 87&#039;&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
2. Create or modify your xmodmap file, usually {{ic|~/.Xmodmap}}, with the content representing your keycode.&lt;br /&gt;
&lt;br /&gt;
Example of xmodmap file with number pad keycode:&lt;br /&gt;
&lt;br /&gt;
{{bc|1=&lt;br /&gt;
keycode 63 = KP_Multiply&lt;br /&gt;
keycode 79 = Home KP_7&lt;br /&gt;
keycode 80 = Up KP_8&lt;br /&gt;
keycode 81 = Prior KP_9&lt;br /&gt;
keycode 82 = KP_Subtract&lt;br /&gt;
keycode 83 = Left KP_4&lt;br /&gt;
keycode 84 = KP_5&lt;br /&gt;
keycode 85 = Right KP_6&lt;br /&gt;
keycode 86 = KP_Add&lt;br /&gt;
keycode 87 = End KP_1&lt;br /&gt;
keycode 88 = Down KP_2&lt;br /&gt;
keycode 89 = Next KP_3&lt;br /&gt;
keycode 90 = Insert KP_0&lt;br /&gt;
keycode 91 = Delete KP_Decimal&lt;br /&gt;
keycode 112 = Prior&lt;br /&gt;
keycode 117 = Next&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
3. Load your xmodmap file at X session start-up.&lt;br /&gt;
&lt;br /&gt;
For example, in {{ic|~/.xinitrc}} file add:&lt;br /&gt;
&lt;br /&gt;
 ...&lt;br /&gt;
 xmodmap ~/.Xmodmap&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
=== 特定のキーの組み合わせが機能しない ===&lt;br /&gt;
&lt;br /&gt;
[http://vim.wikia.com/wiki/Get_Alt_key_to_work_in_terminal?useskin=monobook Get Alt key to work in terminal] を見てください。&lt;br /&gt;
&lt;br /&gt;
=== 文字を表示するときに遅くなる ===&lt;br /&gt;
&lt;br /&gt;
Some programs like alsamixer and xprop do not perform well with some graphics drivers and in consequence redraw very slowly. The option &amp;quot;skipBuiltinGlyphs&amp;quot; for {{ic|~/.Xresources}} or the command line option {{ic|-sbg}} may fix this. One possible solution is to add the following to {{ic|~/.Xresources}}:&lt;br /&gt;
&lt;br /&gt;
 URxvt*skipBuiltinGlyphs:    true&lt;br /&gt;
&lt;br /&gt;
=== 長い行で動作が遅くなる ===&lt;br /&gt;
&lt;br /&gt;
The {{ic|matcher}} plugin may be the culprit here. It must match a regex against a line every time the line updates, and if you have a large {{ic|saveLines}} value this can exacerbate the problem by allowing a very large maximum line length.&lt;br /&gt;
&lt;br /&gt;
There are some simple workarounds:&lt;br /&gt;
&lt;br /&gt;
* Reduce {{ic|saveLines}}&lt;br /&gt;
* Disable the {{ic|matcher}} plugin&lt;br /&gt;
&lt;br /&gt;
If neither of those are palatable options, you can compromise by disabling URL matching past a certain cutoff point:&lt;br /&gt;
&lt;br /&gt;
# Copy {{ic|/usr/lib/urxvt/perl/matcher}} to {{ic|~/.urxvt/ext/}} (creating the directory if necessary)&lt;br /&gt;
# Edit {{ic|~/.urxvt/ext/matcher}}, and find the {{ic|&amp;lt;nowiki&amp;gt;my ($self, $row) = @_;&amp;lt;/nowiki&amp;gt;}} line in the {{ic|on_line_update}} sub. It should be line 270.&lt;br /&gt;
# After that line, insert the line {{ic|return () if $row &amp;lt; -100;}}. This disables URL matching on any line that starts more than 100 rows behind the top of the terminal.&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [http://software.schmorp.de/pkg/rxvt-unicode.html rxvt-unicode] - 公式サイト&lt;br /&gt;
* [http://cvs.schmorp.de/rxvt-unicode/ Source Code] - Browseable CVS&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod rxvt-unicode FAQ] - 公式 FAQ&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod rxvt-unicode Reference] - 公式マニュアルページ&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/src/urxvt.pm urxvtperl] - 公式 Perl 拡張リファレンス&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Rxvt-unicode&amp;diff=13530</id>
		<title>Rxvt-unicode</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Rxvt-unicode&amp;diff=13530"/>
		<updated>2018-11-07T05:17:56Z</updated>

		<summary type="html">&lt;p&gt;R6eve: Xftのエスケープ部分を翻訳&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:rxvt-unicode}}&lt;br /&gt;
[[Category:ターミナルエミュレータ]]&lt;br /&gt;
[[de:urxvt]]&lt;br /&gt;
[[en:Rxvt-unicode]]&lt;br /&gt;
[[es:Rxvt-unicode]]&lt;br /&gt;
[[fr:urxvt]]&lt;br /&gt;
[[ru:Rxvt-unicode]]&lt;br /&gt;
[[sr:Rxvt-unicode]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|rxvt-unicode/ヒントとテクニック}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
[http://software.schmorp.de/pkg/rxvt-unicode.html rxvt-unicode] は細かいカスタマイズができるターミナルエミュレータで [[Wikipedia:ja:Rxvt|rxvt]] のフォークです。一般に {{Ic|urxvt}} と呼ばれている、rxvt-unicode は[[デーモン]]化して一つの[[Wikipedia:ja:プロセス|プロセス]]で複数のクライアントを実行することができ、システムリソースの使用を抑えることができます。Marc Lehmann によって開発されており、rxvt-unicode の取り柄としては [[Wikipedia:ja:Unicode|Unicode]] による多言語サポートや、透過、複数のフォントタイプの表示機能、[[Perl]] 拡張のサポートなどが挙げられます。&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
{{Pkg|rxvt-unicode}} パッケージでインストールすることができます。&lt;br /&gt;
&lt;br /&gt;
== 設定 ==&lt;br /&gt;
&lt;br /&gt;
設定と値の完全なリストは {{man|1|urxvt}} と {{man|7|urxvt}} を見て下さい。&lt;br /&gt;
&lt;br /&gt;
=== ~/.Xresources の作成 ===&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode の外観や機能はコマンドラインの引数や [[X resources]] によって制御されます。コマンドライン引数は [[X resources]] の設定よりも優先して適用されます。&lt;br /&gt;
&lt;br /&gt;
{{ic|urxvt --help}} は全ての &#039;&#039;rxvt&#039;&#039; リソースを標準エラーに出力します。各リソースの説明は man ページに存在します。&lt;br /&gt;
&lt;br /&gt;
=== スクロールバックの位置 ===&lt;br /&gt;
&lt;br /&gt;
デフォルトでは、シェル出力が更新されると、スクロールバックの表示は自動的にバッファの最後にジャンプし、新しい出力を表示します。前の出力（コンパイラメッセージなど）を表示したい場合は {{ic|~/.Xresources}} に以下のオプションを設定します:&lt;br /&gt;
&lt;br /&gt;
 ! do not scroll with output&lt;br /&gt;
 URxvt*scrollTtyOutput: false&lt;br /&gt;
 &lt;br /&gt;
 ! scroll in relation to buffer (with mouse scroll or Shift+Page Up)&lt;br /&gt;
 URxvt*scrollWithBuffer: true&lt;br /&gt;
 &lt;br /&gt;
 ! scroll back to the bottom on keypress&lt;br /&gt;
 URxvt*scrollTtyKeypress: true&lt;br /&gt;
&lt;br /&gt;
=== セカンダリスクリーンのスクロールバッファ ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;セカンダリスクリーン&#039;&#039;でページャをスクロールすると (例えば {{ic|less}} で {{ic|&#039;&#039;&#039;-X&#039;&#039;&#039;}} オプションを省略した場合）、端末のバッファではなくページャ内でスクロールできるようスクロールバックバッファを無効にすることをお勧めします。konsole および vte ベースの端末ではデフォルトでこういう仕様になっており動作を変更できません。urxvt で &#039;&#039;セカンダリスクリーン&#039;&#039;のスクロールバックバッファを無効にするには:&lt;br /&gt;
&lt;br /&gt;
 URxvt.secondaryScreen: 1&lt;br /&gt;
 URxvt.secondaryScroll: 0&lt;br /&gt;
&lt;br /&gt;
上記の設定は、マウスホイールを使用してスクロールする場合を除いて、期待通りに機能します。マウスホイールでセカンダリスクリーンのページャをスクロールしたとき、スクロールバックバッファに何かがあると、ページャの代わりにスクロールバックバッファがマウスホイールでスクロールされます。この問題を解決するには、rxvt-unicode に新しいオプションを導入する必要があります [https://bbs.archlinux.org/viewtopic.php?id=132150]。AUR の {{aur|rxvt-unicode-better-wheel-scrolling}} でパッチが適用された rxvt-unicode が利用できます。パッケージのインストール後、以下を設定ファイルに追加してください:&lt;br /&gt;
&lt;br /&gt;
 URxvt.secondaryWheel: 1&lt;br /&gt;
&lt;br /&gt;
{{Note|perl 拡張の {{AUR|urxvt-vtwheel}} は上記のオプションと衝突します。}}&lt;br /&gt;
&lt;br /&gt;
=== フォントを宣言する方法 ===&lt;br /&gt;
&lt;br /&gt;
 URxvt.font: 9x15&lt;br /&gt;
上記の設定は以下と同じです:&lt;br /&gt;
 URxvt.font: -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1&lt;br /&gt;
&lt;br /&gt;
同じフォントを太字で使用するには:&lt;br /&gt;
 URxvt.font: 9x15bold&lt;br /&gt;
上記の設定は以下と同じです:&lt;br /&gt;
 URxvt.font: -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1&lt;br /&gt;
&lt;br /&gt;
X コアフォントの短縮名の完全なリストは {{ic|/usr/share/fonts/misc/fonts.alias}} にあります ({{ic|/usr/share/fonts/}} のサブディレクトリにも fonts.alias ファイルが存在しますが、実際のフォントとは別のパッケージになっているため、インストールされていないフォントも含まれます)。フォントの短縮エイリアスは ISO-10646-1 (Unicode) バージョンではなく ISO-8859-1 バージョンを選択し、100 DPI バージョンではなく 75 DPI バージョンのフォントが使われるため、フォントを選択したいときは長い方の名前を使ってください。&lt;br /&gt;
&lt;br /&gt;
上記はビットマップフォントの話で、他のフォントは以下のように Xft で使うことができます:&lt;br /&gt;
 URxvt.font: xft:monaco:size=10&lt;br /&gt;
&lt;br /&gt;
または:&lt;br /&gt;
 URxvt.font: xft:monaco:bold:size=10&lt;br /&gt;
&lt;br /&gt;
{{Note|Xft のフォント名にハイフン(-)が含まれている場合は、バックスラッシュ(\)を2回打ってエスケープしてください。バックスラッシュ1回でエスケープする urxvt の -fn オプションや fc-list の出力とは仕方が異なります。}}&lt;br /&gt;
&lt;br /&gt;
以下のようにターミナルにエスケープコードを出力することで一時的にフォントをテストすることが可能です:&lt;br /&gt;
 $ printf &#039;\e]710;%s\007&#039; &amp;quot;xft:Terminus:pixelsize=12&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== フォントの間隔 ===&lt;br /&gt;
&lt;br /&gt;
デフォルトでは文字の間隔が広すぎるように感じられる場合、以下のエントリで調整できます:&lt;br /&gt;
&lt;br /&gt;
{{hc|~/.Xresources|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
URxvt.letterSpace: -1&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{ic|-1}} で1ピクセル文字の間隔が狭まります。必要ならばもっと狭めることもできます。&lt;br /&gt;
&lt;br /&gt;
=== カラー ===&lt;br /&gt;
&lt;br /&gt;
デフォルトで、rxvt-unicode はカラーサポートを有効にしてコンパイルされています。デフォルトの前景色・背景色に加えて、rxvt は256色まで表示することができます (太字・点滅・下線とそれらの組み合わせも可能です)。&lt;br /&gt;
&lt;br /&gt;
foreground, background, cursorColor, cursorColor2, colorBD, colorUL は0から15の数字で色を指定することができ、短い名前で color0-color15 の色を使うことができます。詳しくは [[#Xresources]] を参照。&lt;br /&gt;
&lt;br /&gt;
{{Note|デフォルトでは {{ic|urxvt}} は [[Xterm]] と同じ色を使用しますが、ひとつだけ違う色があります。変更するには Xresources に {{ic|URxvt.color12: rgb:5c/5c/ff}} を追加してください。}}&lt;br /&gt;
&lt;br /&gt;
== カットアンドペースト ==&lt;br /&gt;
&lt;br /&gt;
Rxvt-unicode はデフォルトで {{Ic|PRIMARY}} セレクションにロードされているカットバッファを使います。詳しくは [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod#THE_SELECTION_SELECTING_AND_PASTING_ Selecting and pasting text] を見てください。&lt;br /&gt;
&lt;br /&gt;
{{ic|ALT-CTRL-c}} と {{ic|ALT-CTRL-v}} でコピーアンドペーストができます。&lt;br /&gt;
&lt;br /&gt;
{{Note|選択したテキストは自動的に {{ic|PRIMARY}} にコピーされます。{{Pkg|rxvt-unicode}} 9.20 から [[#Perl 拡張|perl 拡張]]の {{ic|selection-to-clipboard}} を使うことでテキストを {{ic|CLIPBOARD}} にコピーできます。}}&lt;br /&gt;
&lt;br /&gt;
[[クリップボード#クリップボードマネージャの一覧]]も参照。&lt;br /&gt;
&lt;br /&gt;
== Perl 拡張 ==&lt;br /&gt;
&lt;br /&gt;
=== クリックできる URL ===&lt;br /&gt;
&lt;br /&gt;
matcher 拡張を使うことでターミナルに表示された URL をクリックできるようになります。例えば、(規定のウェブブラウザを使って) 左マウスボタンでリンクを開くには、以下を {{ic|.Xresources}} に追加します:&lt;br /&gt;
&lt;br /&gt;
 URxvt.perl-ext-common: default,matcher&lt;br /&gt;
 URxvt.url-launcher: /usr/bin/xdg-open&lt;br /&gt;
 URxvt.matcher.button: 1&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode 9.14 から、キーボードを使って最近閲覧した URL を開いたり確認することもできるようになりました:&lt;br /&gt;
&lt;br /&gt;
 URxvt.keysym.C-Delete: perl:matcher:last&lt;br /&gt;
 URxvt.keysym.M-Delete: perl:matcher:list&lt;br /&gt;
&lt;br /&gt;
Matching links can be colored with a chosen foreground or background [[#Colors|color]], for example blue:&lt;br /&gt;
&lt;br /&gt;
 URxvt.matcher.rend.0: Uline Bold fg5&lt;br /&gt;
&lt;br /&gt;
Alternatively, use {{ic|colorUL}} for a #RRGGBB color. This will however color all underlined text, instead of only link matches:&lt;br /&gt;
&lt;br /&gt;
 URxvt.colorUL: #4682B4&lt;br /&gt;
&lt;br /&gt;
=== ヤンクできる URL (マウスを使用しない) ===&lt;br /&gt;
&lt;br /&gt;
In addition, you can select and open URLs in your web browser without using the mouse.&lt;br /&gt;
&lt;br /&gt;
{{Pkg|urxvt-perls}} パッケージをインストールして適当に {{ic|.Xresources}} を調整してください。例:&lt;br /&gt;
 URxvt.perl-ext: default,url-select&lt;br /&gt;
 URxvt.keysym.M-u: perl:url-select:select_next&lt;br /&gt;
 URxvt.url-select.launcher: /usr/bin/xdg-open&lt;br /&gt;
 URxvt.url-select.underline: true&lt;br /&gt;
&lt;br /&gt;
{{Note|This extension replaces the Clickable URLs extension mentioned above, so {{Ic|matcher}} can be removed from the {{Ic|URxvt.perl-ext}} list.}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;キーコマンド:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! キー !! 説明&lt;br /&gt;
|-&lt;br /&gt;
| Alt+u || Enter selection mode. The last URL on your screen will be selected. You can repeat {{ic|Alt+u}} to select the next upward URL.&lt;br /&gt;
|-&lt;br /&gt;
| k || Select next upward URL&lt;br /&gt;
|-&lt;br /&gt;
| j || Select next downward URL&lt;br /&gt;
|-&lt;br /&gt;
| Return || Open selected URL in browser and quit selection mode&lt;br /&gt;
|-&lt;br /&gt;
| o || Open selected URL in browser without quitting selection mode&lt;br /&gt;
|-&lt;br /&gt;
| y || Copy (yank) selected URL and quit selection mode&lt;br /&gt;
|-&lt;br /&gt;
| Esc || URL 選択モードをキャンセル。&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== シンプルなタブ ===&lt;br /&gt;
&lt;br /&gt;
urxvt にタブを追加するには、以下を {{ic|~/.Xresources}} に追加します:&lt;br /&gt;
 URxvt.perl-ext-common: ...,tabbed,...&lt;br /&gt;
&lt;br /&gt;
タブをコントロールするには:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! キー !! 説明&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Down || 新しいタブ&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Left || 左のタブに移動&lt;br /&gt;
|-&lt;br /&gt;
| Shift+Right || 右のタブに移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+Left || タブを左に移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+Right || タブを右に移動&lt;br /&gt;
|-&lt;br /&gt;
| Ctrl+d || タブを閉じる&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
タブの色は以下のようにして変更できます:&lt;br /&gt;
&lt;br /&gt;
 URxvt.tabbed.tabbar-fg: 2&lt;br /&gt;
 URxvt.tabbed.tabbar-bg: 0&lt;br /&gt;
 URxvt.tabbed.tab-fg: 3&lt;br /&gt;
 URxvt.tabbed.tab-bg: 0&lt;br /&gt;
&lt;br /&gt;
=== フルスクリーン ===&lt;br /&gt;
&lt;br /&gt;
{{AUR|urxvt-fullscreen}} パッケージをインストールして、urxvt をフルスクリーンにするキーバインディングを設定することができます:&lt;br /&gt;
&lt;br /&gt;
{{hc|~/.Xresources|&lt;br /&gt;
...&lt;br /&gt;
URxvt.perl-ext-common: ..., fullscreen, ...&lt;br /&gt;
URxvt.keysym.F11: perl:fullscreen:switch&lt;br /&gt;
...&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== フォントサイズを即座に変更 ===&lt;br /&gt;
&lt;br /&gt;
{{AUR|urxvt-resize-font-git}} パッケージをインストールして {{ic|~/.Xresources}} の Perl 拡張に以下を追加してください:&lt;br /&gt;
&lt;br /&gt;
 URxvt.perl-ext-common:  ...,resize-font,...&lt;br /&gt;
&lt;br /&gt;
デフォルトのキーバインド:&lt;br /&gt;
* {{ic|Ctrl++}} (または {{ic|1=Ctrl+Shift+=}}) でサイズを大きくする&lt;br /&gt;
* {{ic|Ctrl+-}} でサイズを小さくする&lt;br /&gt;
* {{ic|1=Ctrl+=}} でサイズをリセットする&lt;br /&gt;
* {{ic|Ctrl+?}} で現在のサイズを表示&lt;br /&gt;
&lt;br /&gt;
以下のようにキーバインドを変更することもできます:&lt;br /&gt;
&lt;br /&gt;
 URxvt.keysym.C-Down:  resize-font:smaller&lt;br /&gt;
 URxvt.keysym.C-Up:    resize-font:bigger&lt;br /&gt;
&lt;br /&gt;
For the suggested Ctrl+Shift bindings to work, a default binding needs to be disabled (see discussion [http://wilmer.gaa.st/blog/archives/36-rxvt-unicode-and-ISO-14755-mode.html here]):&lt;br /&gt;
&lt;br /&gt;
 URxvt.iso14755: false&lt;br /&gt;
 URxvt.iso14755_52: false&lt;br /&gt;
&lt;br /&gt;
=== Perl 拡張の無効化 ===&lt;br /&gt;
&lt;br /&gt;
Perl 拡張機能を使っていない場合、完全に Perl 拡張を無効化することでセキュリティと性能を高めることができます:&lt;br /&gt;
 URxvt.perl-ext:&lt;br /&gt;
 URxvt.perl-ext-common:&lt;br /&gt;
&lt;br /&gt;
{{Note|If you use multiple Perl extension features, you can list them in succession, comma-separated: {{ic|URxvt.perl-ext-common:default,matcher,tabbed.}}}}&lt;br /&gt;
&lt;br /&gt;
=== インプットメソッドのインライン表示 ===&lt;br /&gt;
urxvt でインプットメソッドをインライン表示にする場合は、以下を {{ic|~/.Xresources}} に追加します:&lt;br /&gt;
 URxvt.perl-ext-common: ...,xim-onthespot,...&lt;br /&gt;
&lt;br /&gt;
インプットメソッドの指定とプレエディットタイプの設定も必要になります (&#039;&#039;fcitx&#039;&#039; の部分は自分が使用しているインプットメソッドに変更する必要があります):&lt;br /&gt;
 URxvt.inputMethod: fcitx&lt;br /&gt;
 URxvt.preeditType: OnTheSpot&lt;br /&gt;
&lt;br /&gt;
== トラブルシューティング ==&lt;br /&gt;
&lt;br /&gt;
=== v9.09 にアップグレードした後に透過が機能しない ===&lt;br /&gt;
&lt;br /&gt;
rxvt-unicode の開発者によって壁紙を設定するプログラムとの互換性が大幅に削除されました。対応していない壁紙設定プログラムを使うと透過が機能しなくなります。推奨されている壁紙設定プログラムは以下です:&lt;br /&gt;
&lt;br /&gt;
* [[feh]]&lt;br /&gt;
* hsetroot&lt;br /&gt;
* esetroot&lt;br /&gt;
&lt;br /&gt;
完全透過を使うには、URxvt.tintColor と URxvt.inheritPixmap をコメントアウトしてください。&lt;br /&gt;
&lt;br /&gt;
=== リモートホスト ===&lt;br /&gt;
&lt;br /&gt;
リモートホストにログインしているときに、urxvt-unicode を使ってテキストモードプログラムを実行すると問題が発生することがあります。その場合は {{Pkg|rxvt-unicode-terminfo}} をリモートホストにインストールするかローカルホストの {{ic|/usr/share/terminfo/r/rxvt-unicode}} をリモートホストの {{ic|~/.terminfo/r/rxvt-unicode}} にコピーすれば解決できます。rxvt-unicode-256color の場合も同様です。&lt;br /&gt;
&lt;br /&gt;
Some remote systems do not change title automatically unless you specify TERM=xterm. To fix the issue add this line to .bashrc on the remote machine:&lt;br /&gt;
&lt;br /&gt;
 PROMPT_COMMAND=&#039;echo -ne &amp;quot;\033]0;${USER}@${HOSTNAME}:${PWD}\007&amp;quot;&#039;&lt;br /&gt;
&lt;br /&gt;
=== rxvt-unicode を gmrun ターミナルとして使う ===&lt;br /&gt;
&lt;br /&gt;
Unlike some other terminals, urxvt expects the arguments to {{Ic|-e}} to be given separately, rather than grouped together with quotes. This causes trouble with gmrun, which assumes the opposite behavior. This can be worked around by putting an &amp;quot;eval&amp;quot; in front of gmrun&#039;s &amp;quot;Terminal&amp;quot; variable in {{ic|.gmrunrc}}:&lt;br /&gt;
&lt;br /&gt;
 Terminal = eval urxvt&lt;br /&gt;
 TermExec = ${Terminal} -e&lt;br /&gt;
&lt;br /&gt;
(gmrun uses {{ic|/bin/sh}} to execute commands, so the &amp;quot;eval&amp;quot; is understood here.) The &amp;quot;eval&amp;quot; has the side-effect of &amp;quot;breaking up&amp;quot; the argument to {{Ic|-e}} in the same way that {{Ic|$@}} does in [[Bash]], making the command intelligible to urxvt.&lt;br /&gt;
&lt;br /&gt;
=== テンキーの出力がおかしい (例: vim) ===&lt;br /&gt;
&lt;br /&gt;
Some Debian GNU/Linux users seem to have this problem, although no specific details were reported so far. It is possible that this is caused by the wrong TERM setting, although the details of whether and how this can happen are unknown, as TERM=rxvt should offer a compatible keymap. See the answer to the previous question, and please report if that helped.&lt;br /&gt;
&lt;br /&gt;
However, using the &#039;&#039;xmodmap&#039;&#039; program ({{Pkg|xorg-xmodmap}}), you can re-map your number pad keys back.&lt;br /&gt;
&lt;br /&gt;
1. Check the keycode that your numerical keypad (numpad) generates using {{ic|xev}} program.&lt;br /&gt;
&lt;br /&gt;
* Start the {{ic|xev}} program&lt;br /&gt;
* Press your number pad keys and look for &#039;&#039;... keycode xxx ...&#039;&#039; in {{ic|xev}}&#039;s output. For example, numpad 1 in my keyboard is also &amp;quot;End&amp;quot; key, that have a &#039;&#039;&#039;&#039;keycode 87&#039;&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
2. Create or modify your xmodmap file, usually {{ic|~/.Xmodmap}}, with the content representing your keycode.&lt;br /&gt;
&lt;br /&gt;
Example of xmodmap file with number pad keycode:&lt;br /&gt;
&lt;br /&gt;
{{bc|1=&lt;br /&gt;
keycode 63 = KP_Multiply&lt;br /&gt;
keycode 79 = Home KP_7&lt;br /&gt;
keycode 80 = Up KP_8&lt;br /&gt;
keycode 81 = Prior KP_9&lt;br /&gt;
keycode 82 = KP_Subtract&lt;br /&gt;
keycode 83 = Left KP_4&lt;br /&gt;
keycode 84 = KP_5&lt;br /&gt;
keycode 85 = Right KP_6&lt;br /&gt;
keycode 86 = KP_Add&lt;br /&gt;
keycode 87 = End KP_1&lt;br /&gt;
keycode 88 = Down KP_2&lt;br /&gt;
keycode 89 = Next KP_3&lt;br /&gt;
keycode 90 = Insert KP_0&lt;br /&gt;
keycode 91 = Delete KP_Decimal&lt;br /&gt;
keycode 112 = Prior&lt;br /&gt;
keycode 117 = Next&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
3. Load your xmodmap file at X session start-up.&lt;br /&gt;
&lt;br /&gt;
For example, in {{ic|~/.xinitrc}} file add:&lt;br /&gt;
&lt;br /&gt;
 ...&lt;br /&gt;
 xmodmap ~/.Xmodmap&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
=== 特定のキーの組み合わせが機能しない ===&lt;br /&gt;
&lt;br /&gt;
[http://vim.wikia.com/wiki/Get_Alt_key_to_work_in_terminal?useskin=monobook Get Alt key to work in terminal] を見てください。&lt;br /&gt;
&lt;br /&gt;
=== 文字を表示するときに遅くなる ===&lt;br /&gt;
&lt;br /&gt;
Some programs like alsamixer and xprop do not perform well with some graphics drivers and in consequence redraw very slowly. The option &amp;quot;skipBuiltinGlyphs&amp;quot; for {{ic|~/.Xresources}} or the command line option {{ic|-sbg}} may fix this. One possible solution is to add the following to {{ic|~/.Xresources}}:&lt;br /&gt;
&lt;br /&gt;
 URxvt*skipBuiltinGlyphs:    true&lt;br /&gt;
&lt;br /&gt;
=== 長い行で動作が遅くなる ===&lt;br /&gt;
&lt;br /&gt;
The {{ic|matcher}} plugin may be the culprit here. It must match a regex against a line every time the line updates, and if you have a large {{ic|saveLines}} value this can exacerbate the problem by allowing a very large maximum line length.&lt;br /&gt;
&lt;br /&gt;
There are some simple workarounds:&lt;br /&gt;
&lt;br /&gt;
* Reduce {{ic|saveLines}}&lt;br /&gt;
* Disable the {{ic|matcher}} plugin&lt;br /&gt;
&lt;br /&gt;
If neither of those are palatable options, you can compromise by disabling URL matching past a certain cutoff point:&lt;br /&gt;
&lt;br /&gt;
# Copy {{ic|/usr/lib/urxvt/perl/matcher}} to {{ic|~/.urxvt/ext/}} (creating the directory if necessary)&lt;br /&gt;
# Edit {{ic|~/.urxvt/ext/matcher}}, and find the {{ic|&amp;lt;nowiki&amp;gt;my ($self, $row) = @_;&amp;lt;/nowiki&amp;gt;}} line in the {{ic|on_line_update}} sub. It should be line 270.&lt;br /&gt;
# After that line, insert the line {{ic|return () if $row &amp;lt; -100;}}. This disables URL matching on any line that starts more than 100 rows behind the top of the terminal.&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [http://software.schmorp.de/pkg/rxvt-unicode.html rxvt-unicode] - 公式サイト&lt;br /&gt;
* [http://cvs.schmorp.de/rxvt-unicode/ Source Code] - Browseable CVS&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod rxvt-unicode FAQ] - 公式 FAQ&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod rxvt-unicode Reference] - 公式マニュアルページ&lt;br /&gt;
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/src/urxvt.pm urxvtperl] - 公式 Perl 拡張リファレンス&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=SSHFS&amp;diff=13524</id>
		<title>SSHFS</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=SSHFS&amp;diff=13524"/>
		<updated>2018-11-02T05:07:33Z</updated>

		<summary type="html">&lt;p&gt;R6eve: 誤字修正&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ファイルシステム]]&lt;br /&gt;
[[Category:Secure Shell]]&lt;br /&gt;
[[en:SSHFS]]&lt;br /&gt;
[[es:SSHFS]]&lt;br /&gt;
[[it:Sshfs]]&lt;br /&gt;
[[ru:SSHFS]]&lt;br /&gt;
[[zh-hans:SSHFS]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|SCP と SFTP}}&lt;br /&gt;
{{Related|SFTP chroot}}&lt;br /&gt;
{{Related|Pure-FTPd}}&lt;br /&gt;
{{Related|SSH}}&lt;br /&gt;
{{Related|sftpman}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
sshfs を使うことで ([[SSH]] でアクセスできる) リモートシステムをローカルフォルダにマウントすることができます。ツールを使ってマウントしたファイルを様々に操作することが可能です (コピー、名前を変更、vim で編集など)。基本的に shfs の代わりに sshfs を使うことが推奨されます。shfs の新しいバージョンは2004年からリリースされていません。&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
[[公式リポジトリ]]から {{Pkg|sshfs}} を[[インストール]]してください。&lt;br /&gt;
&lt;br /&gt;
=== マウント ===&lt;br /&gt;
ディレクトリをマウントする前に、対象のディレクトリのファイルパーティションが正しく設定されているか (ユーザーがアクセスできるか) 確認してください。マウントするには、{{ic|sshfs}} を実行してリモートディレクトリをマウントします:&lt;br /&gt;
 $ sshfs &#039;&#039;[user@]host:[dir] mountpoint [options]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
例:&lt;br /&gt;
 $ sshfs sessy@mycomputer:/remote/path /local/path -C -p 9876 -o allow_other&lt;br /&gt;
{{ic|-p 9876}} はポート番号、{{ic|-C}} は圧縮の使用、{{ic|-o allow_other}} は root 以外のユーザーの読み書きの許可です。&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
* {{ic|allow_other}} オプションはデフォルトで無効になっています。有効にするには {{ic|/etc/fuse.conf}} の {{ic|user_allow_other}} 行をアンコメントして root 以外のユーザーが allow_other マウントオプションを使えるようにしてください。&lt;br /&gt;
* -p スイッチを使うのが面倒な場合、{{ic|~/.ssh/config}} でホストごとに非標準ポートを定義することもできます。詳しくは [[Secure Shell#ssh の設定に接続データを保存する]] を参照。}}&lt;br /&gt;
&lt;br /&gt;
必要であれば、SSH はパスワードを尋ねます。何度もパスワードを入力したくない場合は、[[SSH 鍵]]を読んでください。&lt;br /&gt;
&lt;br /&gt;
{{Tip|[[Google Authenticator]] を使うことで sshfs のセキュリティを向上させることができます。}}&lt;br /&gt;
&lt;br /&gt;
=== アンマウント ===&lt;br /&gt;
&lt;br /&gt;
リモートシステムをアンマウントするには:&lt;br /&gt;
 $ fusermount -u &#039;&#039;local_mount_point&#039;&#039;&lt;br /&gt;
例:&lt;br /&gt;
 $ fusermount -u /mnt/sessy&lt;br /&gt;
&lt;br /&gt;
== Chroot ==&lt;br /&gt;
&lt;br /&gt;
(特定の) ユーザーをディレクトリに閉じ込めたい場合、{{ic|/etc/ssh/sshd_config}} を編集してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/ssh/sshd_config|.....&lt;br /&gt;
Match User someuser &lt;br /&gt;
       ChrootDirectory /chroot/%u&lt;br /&gt;
       ForceCommand internal-sftp #to restrict the user to sftp only&lt;br /&gt;
       AllowTcpForwarding no&lt;br /&gt;
       X11Forwarding no&lt;br /&gt;
.....}}&lt;br /&gt;
&lt;br /&gt;
{{Note|chroot ディレクトリの所有者は root である必要があります。そうでない場合、接続ができません。詳しくは man ページで {{ic|Match, ChrootDirectory}} や {{ic|ForceCommand}} を確認してください。}}&lt;br /&gt;
&lt;br /&gt;
== ヘルパー ==&lt;br /&gt;
&lt;br /&gt;
sshfs ファイルシステムを頻繁にマウントする必要がある場合、[[sftpman]] などの sshfs ヘルパーを使うと良いでしょう。&lt;br /&gt;
&lt;br /&gt;
コマンドラインと GTK のフロントエンドが入っており、マウントやアンマウントをワンクリックで行うことができるようになります。&lt;br /&gt;
&lt;br /&gt;
== 自動マウント ==&lt;br /&gt;
&lt;br /&gt;
起動時や、必要に応じて (ディレクトリのアクセス時に)、自動マウントを行うことができます。どちらにしても、セットアップは {{ic|/etc/[[fstab]]}} で行います。&lt;br /&gt;
&lt;br /&gt;
{{Note|自動マウントは root ユーザーによって行われるため、通常ユーザーの {{ic|.ssh/config}} で設定した Hosts は使えなくなります。root ユーザーで通常ユーザーの SSH 鍵を使うときは、{{ic|IdentityFile}} オプションにフルパスを指定してください。そして、ホストの署名が {{ic|.ssh/known_hosts}} ファイルに追加されるように root で一度は手動で sshfs マウントを使用します。}}&lt;br /&gt;
&lt;br /&gt;
=== 必要に応じてマウント ===&lt;br /&gt;
&lt;br /&gt;
{{ic|/etc/fstab}} エントリを使うことで systemd でオンデマンドのマウントを行えます。&lt;br /&gt;
&lt;br /&gt;
例:&lt;br /&gt;
 user@host:/remote/folder /mount/point  fuse.sshfs noauto,x-systemd.automount,_netdev,users,idmap=user,IdentityFile=/home/user/.ssh/id_rsa,allow_other,reconnect 0 0&lt;br /&gt;
ここで重要なマウントオプションは &#039;&#039;noauto,x-systemd.automount,_netdev&#039;&#039; です。&lt;br /&gt;
* &#039;&#039;noauto&#039;&#039; で起動時にマウントしないように設定します。&lt;br /&gt;
* &#039;&#039;x-systemd.automount&#039;&#039; によって必要になったときにマウントします。&lt;br /&gt;
* &#039;&#039;_netdev&#039;&#039; はブロックデバイスではなくネットワークデバイスであることを指定します (&#039;&#039;_netdev&#039;&#039; がないと &amp;quot;No such device&amp;quot; エラーが発生します)。&lt;br /&gt;
&lt;br /&gt;
{{Tip|{{AUR|autosshfs-git}} は新しいマウントポイントを追加するのに {{ic|/etc/fstab}} を編集する必要がなくなり、(autosshfs が有効になった) 通常ユーザーがアクセスしようとしただけで作成されます (例: {{ic|ls ~/mnt/ssh/[user@]yourremotehost[:port]}})。{{AUR|autosshfs-git}} は AutoFS を使います。{{ic|autosshfs-user}} で使用するユーザーを有効にする必要があります。}}&lt;br /&gt;
&lt;br /&gt;
=== 起動時にマウント ===&lt;br /&gt;
&lt;br /&gt;
{{ic|/etc/[[fstab]]}} で sshfs を使ってリモートのファイルシステムをマウントする例:&lt;br /&gt;
 USERNAME@HOSTNAME_OR_IP:/REMOTE/DIRECTORY  /LOCAL/MOUNTPOINT  fuse.sshfs  defaults,_netdev  0  0&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;fstab&#039;&#039; の行の例:&lt;br /&gt;
 llib@192.168.1.200:/home/llib/FAH  /media/FAH2  fuse.sshfs  defaults,_netdev  0  0&lt;br /&gt;
ユーザーの SSH 鍵を使っている場合、自動的に動作するようになります。[[SSH 鍵]]を見て下さい。&lt;br /&gt;
&lt;br /&gt;
複数のユーザーで sshfs を使いたい場合:&lt;br /&gt;
 user@domain.org:/home/user  /media/user   fuse.sshfs    defaults,allow_other,_netdev    0  0&lt;br /&gt;
&lt;br /&gt;
マウントする前にネットワークが有効になっていることを確認するために &#039;&#039;_netdev&#039;&#039; マウントオプションを設定することが重要です。&lt;br /&gt;
&lt;br /&gt;
=== ユーザーアクセスのセキュア化 ===&lt;br /&gt;
&lt;br /&gt;
{{ic|/etc/[[fstab]]}} で自動マウントする場合、ファイルシステムは基本的に root によってマウントされます。デフォルトでは、通常ユーザーとしてアクセスして他のユーザーのアクセスを制限したいときに予期しない結果を招くことがあります。&lt;br /&gt;
&lt;br /&gt;
マウントポイントの設定例:&lt;br /&gt;
&lt;br /&gt;
 USERNAME@HOSTNAME_OR_IP:/REMOTE/DIRECTORY  /LOCAL/MOUNTPOINT  fuse.sshfs noauto,x-systemd.automount,_netdev,user,idmap=user,follow_symlinks,identityfile=/home/USERNAME/.ssh/id_rsa,allow_other,default_permissions,uid=USER_ID_N,gid=USER_GID_N 0 0&lt;br /&gt;
&lt;br /&gt;
オプションの説明:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;allow_other&#039;&#039; - root 以外のユーザーが共有フォルダにアクセスすることを許可します。&lt;br /&gt;
* &#039;&#039;default_permissions&#039;&#039; - カーネルからパーミッションを確認することを許可します。リモートファイルシステムの実際のパーミッションが使われます。&#039;&#039;allow_other&#039;&#039; によって許可されたユーザー以外にも制限的なアクセスを許可します。&lt;br /&gt;
* &#039;&#039;uid&#039;&#039;, &#039;&#039;gid&#039;&#039; - ファイルの所有権を特定の値に設定します。&#039;&#039;uid&#039;&#039; にはユーザーの ID、&#039;&#039;gid&#039;&#039; にはユーザーのグループ ID を指定します。&lt;br /&gt;
&lt;br /&gt;
== オプション ==&lt;br /&gt;
&lt;br /&gt;
sshfs はローカル・リモートのユーザー ID を自動的に変換することができます。&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;idmap&#039;&#039; オプションを &#039;&#039;user&#039;&#039; に設定することで接続するユーザーの UID が変換されます:&lt;br /&gt;
&lt;br /&gt;
 # sshfs -o idmap=user sessy@mycomputer:/home/sessy /mnt/sessy -C -p 9876&lt;br /&gt;
&lt;br /&gt;
上記のコマンドはリモートのユーザー &amp;quot;sessy&amp;quot; の UID をプロセスを実行しているローカルユーザーにマッピングします (上記の例では &amp;quot;root&amp;quot;)。GID は変わりません。UID と GID 変換を細かく制御する必要がある場合、&#039;&#039;idmap=file&#039;&#039; オプションと &#039;&#039;uidfile&#039;&#039; と &#039;&#039;gidfile&#039;&#039; を見てください。&lt;br /&gt;
&lt;br /&gt;
== トラブルシューティング ==&lt;br /&gt;
&lt;br /&gt;
=== チェックリスト ===&lt;br /&gt;
&lt;br /&gt;
[[Secure_Shell#チェックリスト|SSH のチェックリスト]]を最初に読んで、以下を確認してください:&lt;br /&gt;
&lt;br /&gt;
1. SSH ログインでサーバーの {{ic|/etc/issue}} ファイルから情報を送信している場合、SSHFS が混乱してしまいます。サーバーの {{ic|/etc/issue}} ファイルは無効にしてください:&lt;br /&gt;
&lt;br /&gt;
 $ mv /etc/issue /etc/issue.orig&lt;br /&gt;
&lt;br /&gt;
2. ウェブ上の SSH 関連のトラブルシューティング記事のほとんどは Systemd を考慮していません。{{ic|/etc/fstab}} の定義が {{ic|&#039;&#039;sshfs#&#039;&#039;user@host:/mnt/server/folder ... fuse ...}} から始まる間違ったものであることはしばしばで、{{ic|user@host:/mnt/server/folder ... fuse.&#039;&#039;sshfs&#039;&#039; ... &#039;&#039;x-systemd&#039;&#039;, ...}} が正しい構文になります。&lt;br /&gt;
&lt;br /&gt;
3. サーバーのソースフォルダとコンテンツがサーバーのユーザーによって所有されていることを確認してください。&lt;br /&gt;
&lt;br /&gt;
 $ chown -R USER_S: /mnt/servers/folder&lt;br /&gt;
&lt;br /&gt;
4. サーバーのユーザー ID とクライアントのユーザー ID が異なっている可能性があります。当然ユーザー名は同一である必要があります。クライアントのユーザー ID に注意してください。SSHFS は以下のマウントオプションで UID を変換します:&lt;br /&gt;
&lt;br /&gt;
 uid=&#039;&#039;USER_C_ID&#039;&#039;,gid=&#039;&#039;GROUP_C_ID&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
5. クライアントのターゲットマウントポイント (フォルダ) がクライアントのユーザーによって所有されていることを確認してください。SSHFS のマウントオプションで指定したユーザー ID と同じである必要があります。&lt;br /&gt;
&lt;br /&gt;
 $ chown -R USER_C: /mnt/client/folder&lt;br /&gt;
&lt;br /&gt;
6. クライアントのマウントポイント (フォルダ) が空であることを確認してください。デフォルトでは SSHFS のフォルダを空でないフォルダにマウントすることはできませ。&lt;br /&gt;
&lt;br /&gt;
7. {{ic|/etc/fstab}} で SSH 公開鍵認証を使って SSH 共有を自動マウントしたい場合、以下のように設定してください:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;USER_S&#039;&#039;@&#039;&#039;SERVER&#039;&#039;:/mnt/on/server      /nmt/on/client        fuse.sshfs      x-systemd.automount,_netdev,user,idmap=user,transform_symlinks,identityfile=/home/&#039;&#039;USER_C&#039;&#039;/.ssh/id_rsa,allow_other,default_permissions,uid=&#039;&#039;USER_C_ID&#039;&#039;,gid=&#039;&#039;GROUP_C_ID&#039;&#039;,umask=0   0 0&lt;br /&gt;
&lt;br /&gt;
設定例:&lt;br /&gt;
&lt;br /&gt;
 SERVER = Server host name (serv)&lt;br /&gt;
 USER_S = Server user name (pete)&lt;br /&gt;
 USER_C = Client user name (pete)&lt;br /&gt;
 USER_S_ID = Server user ID (1004)&lt;br /&gt;
 USER_C_ID = Client user ID (1000)&lt;br /&gt;
 GROUP_C_ID = Client user&#039;s group ID (100)&lt;br /&gt;
&lt;br /&gt;
クライアントユーザーの ID とグループ ID は以下のコマンドで確認できます:&lt;br /&gt;
&lt;br /&gt;
 $ id USERNAME&lt;br /&gt;
&lt;br /&gt;
実際に {{ic|/etc/fstab}} に設定する行は以下のようになります:&lt;br /&gt;
&lt;br /&gt;
 pete@serv:/mnt/on/server      /nmt/on/client        fuse.sshfs      x-systemd.automount,_netdev,user,idmap=user,transform_symlinks,identityfile=/home/pete/.ssh/id_rsa,allow_other,default_permissions,uid=1004,gid=1000,umask=0   0 0&lt;br /&gt;
&lt;br /&gt;
8. チェックリストに追加するべきことが他にもあるのであれば追加してください。&lt;br /&gt;
&lt;br /&gt;
=== ピアによって接続がリセットされる ===&lt;br /&gt;
&lt;br /&gt;
* ホストネームを使ってリモートマシンにアクセスしようとしている場合、ドメイン名が解決できないのが原因かもしれないので、IP アドレスを使って接続してみてください。{{ic|/etc/hosts}} を編集してサーバーの設定が正しいことを確認してください。&lt;br /&gt;
* デフォルトではないキーの名前を使っている場合、{{ic|-i .ssh/my_key}} と指定しても意味がありません。{{ic|-o IdentityFile&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;/home/user/.ssh/my_key}} のようにキーのフルパスを使う必要があります。&lt;br /&gt;
* {{ic|sshfs_debug}} オプションを追加することで問題の解決に役に立つ情報が得られます ({{ic|sshfs -o sshfs_debug user@server ...}})。&lt;br /&gt;
* 何も有用な情報が得られないときは、{{ic|debug}} オプションも追加してみてください。&lt;br /&gt;
* sshfs で DD-WRT などが動作しているルーターに接続する場合、[http://www.dd-wrt.com/wiki/index.php/SFTP_with_DD-WRT こちら] に解決方法が載っています (dropbear にパッチをあてるかわりに sshfs コマンドで {{ic|1=-osftp_server=/opt/libexec/sftp-server}} オプションを使うこともできます)。&lt;br /&gt;
* 古いフォーラムスレッド: [https://bbs.archlinux.org/viewtopic.php?id=27613 sshfs: Connection reset by peer]&lt;br /&gt;
* ユーザーを使ってサーバーにログインできることを確認してください (特に AllowUsers を使用する場合)。&lt;br /&gt;
* {{ic|/etc/ssh/sshd_config}} で {{ic|Subsystem sftp /usr/lib/ssh/sftp-server}} が有効になっていることを確認してください。&lt;br /&gt;
&lt;br /&gt;
{{Note|sshfs に複数のオプションを指定する場合、カンマで区切る必要があります。例: {{ic|sshfs -o sshfs_debug,IdentityFile&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/path/to/key&amp;gt; user@server ...}}。}}&lt;br /&gt;
&lt;br /&gt;
=== Remote host has disconnected ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;sshfs&#039;&#039; を使おうとした直後にこのメッセージが表示される場合:&lt;br /&gt;
* まず&#039;&#039;&#039;リモート&#039;&#039;&#039;マシンに &#039;&#039;sftp&#039;&#039; がインストールされていることを確認してください。インストールしていないと、動作しません。&lt;br /&gt;
{{Tip|リモートサーバーで OpenWRT を動かしている場合: {{ic|opkg install openssh-sftp-server}} でインストールできます。}}&lt;br /&gt;
* それから、リモートマシンの {{ic|/etc/ssh/sshd_config}} に記載されている {{ic|Subsystem}} のパスが正しいかどうか確認してください。パスは {{ic|find / -name sftp-server}} で確認できます。&lt;br /&gt;
&lt;br /&gt;
Arch Linux では {{ic|/etc/ssh/sshd_config}} のデフォルト値は {{ic|Subsystem sftp /usr/lib/ssh/sftp-server}} です。&lt;br /&gt;
&lt;br /&gt;
=== Thunar と FAM のリモートファイルの問題 ===  &lt;br /&gt;
&lt;br /&gt;
リモートフォルダが表示されず、ホームディレクトリに戻ってしまう場合、あるいは Thunar で他のリモートファイルにアクセスできない場合、FAM を {{Pkg|gamin}} で置き換えてください。Gamin は FAM の後継です。&lt;br /&gt;
&lt;br /&gt;
=== アプリがフリーズする (例: Nautilus, Gedit) ===  &lt;br /&gt;
{{Note|下記の設定をすると最近使用したファイルのリストが作られなくなります。また、書き込みエラーが発生することがあります。}}&lt;br /&gt;
&lt;br /&gt;
アプリケーションがフリーズする (反応しなくなる) 場合、{{ic|~/recently-used.xbel}} の書き込み権限を無効化する必要があるかもしれません:&lt;br /&gt;
&lt;br /&gt;
 # chattr +i /home/USERNAME/.local/share/recently-used.xbel&lt;br /&gt;
&lt;br /&gt;
詳しくは次の [https://bugs.archlinux.org/task/40260 バグレポート] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
=== sshfs をマウントされているときにシャットダウンでフリーズ ===&lt;br /&gt;
&lt;br /&gt;
sshfs を手動でマウントして、シャットダウン前にアンマウントしていなかった場合、systemd がシャットダウン時にフリーズすることがあります。この問題を解決するには、以下のファイルを (root で) 作成してください:&lt;br /&gt;
{{hc|/etc/systemd/system/killsshfs.service|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
After=network.target&lt;br /&gt;
&lt;br /&gt;
[Service]&lt;br /&gt;
RemainAfterExit=yes&lt;br /&gt;
ExecStart=-/bin/true&lt;br /&gt;
ExecStop=-/usr/bin/pkill -x sshfs&lt;br /&gt;
&lt;br /&gt;
[Install]&lt;br /&gt;
WantedBy=multi-user.target&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
そしてサービスを有効化します: {{ic|systemctl enable killsshfs.service}}&lt;br /&gt;
&lt;br /&gt;
=== fstab によるマウントの問題 ===&lt;br /&gt;
&lt;br /&gt;
詳細な出力を得たい場合、マウントオプションに以下を追加してください:&lt;br /&gt;
&lt;br /&gt;
 ssh_command=ssh\040-vv,sshfs_debug,debug&lt;br /&gt;
{{Note|上記の {{ic|\040}} は fstab でフィールドを区切るのに使うスペースを意味します。}}&lt;br /&gt;
&lt;br /&gt;
{{ic|mount -av}} を実行してデバッグ出力を確認するために、以下のオプションを削除してください:&lt;br /&gt;
 noauto,x-systemd.automount&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.gilug.org/index.php/How_to_mount_SFTP_accesses How to mount chrooted SSH filesystem], with special care with owners and permissions questions.&lt;br /&gt;
* [http://www.admin-magazine.com/HPC/Articles/Sharing-Data-with-SSHFS SSHFS – Installation and Performance] — NFS との比較と最適化ヒント。&lt;/div&gt;</summary>
		<author><name>R6eve</name></author>
	</entry>
</feed>