「Fbpad」の版間の差分
(ページの作成:「{{Lowercase title}} Category:ターミナルエミュレータ en:Fbpad [http://repo.or.cz/w/fbpad.git fbpad] は一文字のタグを使って多数のターミ...」) |
|||
53行目: | 53行目: | ||
}} |
}} |
||
+ | 使用するときは "8" を空のタグで使いたい色に、"2" を完全には埋まっていないタグの色に、"9" を完全に埋まったタグの色に置き換えてください。0-15 の色は {{ic|config.h}} ファイルで定義されています。また、上記のパッチはデフォルトの背景色をターミナルの背景色に変更します。 |
||
− | To use, replace "8" with the desired color for empty tags (in both instances), "2" with the desired color for not fully occupied tags, and "9" with the desired color for fully occupied tags, where the colors 0-15 are defined in the {{ic|config.h}} file. This patch also makes the default background color the background color of your terminal, which the writer finds to be a more natural choice. |
||
+ | 2番目の "8" は fbpad がフレームバッファの中身を保存するときのタグの色です。{{ic|TAGS_SAVED}} を {{ic|TAGS}} と定義した場合、デフォルトの前景色と保存されるタグの色を同じにすると良いでしょう。もしくは、{{ic|TAGS_SAVED}} を保存するタグを連結した文字列として定義する場合、2番目の "8" は保存されるタグを示す色に変えると良いでしょう。 |
||
− | Note that the second "8" is the color for tags for which fbpad saves the framebuffer contents. If you choose to define {{ic|TAGS_SAVED}} as {{ic|TAGS}}, then you will want your default foreground color and the color for saved tags to be the same, i.e. "8" in both instances. Otherwise, you may define {{ic|TAGS_SAVED}} as a concatenated string of the tags to be saved, and change the second "8" to the color you wish to indicate saved tags by. The writer herself saves all tags for convenience. |
||
− | + | パッチは {{ic|fbpad-tagcolor.diff}} として保存して source 配列に {{ic|'fbpad-tagcolor.diff'}} を追加し、{{ic|PKGBUILD}} の {{ic|config.h}} ファイルをコピーしている行の後に以下の行を追加してください: |
|
patch -p1 -i "${srcdir}/${_gitname}-tagcolor.diff" || return 1 |
patch -p1 -i "${srcdir}/${_gitname}-tagcolor.diff" || return 1 |
||
77行目: | 77行目: | ||
"MyFont" は適当な名前に置き換えることができます。 |
"MyFont" は適当な名前に置き換えることができます。 |
||
+ | 忘れずに {{ic|config.h}} を編集して {{ic|MyFont.tf}} を保存したディレクトリを指定してください。フォントに太字体が存在する場合、同じように ft2tf の {{ic|config.h}} ファイルを編集して、今度は ft2tf の {{ic|config.h}} で太字の TTF ファイルの場所を指定して、makepkg でビルドして fbpad の {{ic|config.h}} の太字の tinyfont の場所を追加してください。 |
||
− | Remember to edit your {{ic|config.h}} to point to the directory where you save your {{ic|MyFont.tf}}. If your font also has a bold face, repeat the process of editing the ft2tf {{ic|config.h}} file, this time specifying the location of the boldface TTF file in the ft2tf {{ic|config.h}}, rebuilding with makepkg, and adding the final boldface tinyfont location to your fbpad {{ic|config.h}}. |
||
− | + | また、一部のフォントは {{ic|WIDTHDIFF}} と {{ic|HEIGHTDIFF}} を修正して横幅と高さを調整する必要があります。 |
|
===カラーのサポート=== |
===カラーのサポート=== |
||
+ | デフォルトで AUR のパッケージは fbpad のカスタム terminfo をインストールしますが、256色のサポートを使うにはシェルの設定ファイルに以下を追加する必要があります: |
||
− | By default, the AUR package installs the custom terminfo for fbpad, but you will need to add {{bc|1=export TERM=fbpad-256}} to your shellrc to take advantage of the 256 color support. Clearly, commands not spawned in your default shell (for instance, those for {{ic|EDITOR}} and {{ic|MAIL}}) will not read your shellrc file, so you will need to edit their definitions in your {{ic|config.h}} file to have the commands for {{ic|EDITOR}} and {{ic|MAIL}} run in a parent shell. For instance, the author of this article, who uses [[zsh]], changed the default command for {{ic|MAIL}} from: |
||
+ | export TERM=fbpad-256 |
||
+ | |||
+ | デフォルトシェルで生成されないコマンド (例えば {{ic|EDITOR}} と {{ic|MAIL}} のコマンド) はシェルの設定ファイルを読み込まないため、{{ic|config.h}} ファイルで {{ic|EDITOR}} と {{ic|MAIL}} のコマンドを編集して親のシェルで実行するように定義する必要があります。例えば、[[zsh]] を使用する場合、{{ic|MAIL}} のデフォルトコマンドを以下から: |
||
#define MAIL "mailx" |
#define MAIL "mailx" |
||
+ | 以下のように変更します: |
||
− | to |
||
#define MAIL "zsh -i -c mailx" |
#define MAIL "zsh -i -c mailx" |
||
+ | さらに、{{ic|ls}} コマンドに色を付けるには "fbpad-256" をカラー対応のターミナルのリストに追加する必要があります。{{ic|README}} によれば、シェルで以下のコマンドを実行してください: |
||
− | Additionally, to have colors with the {{ic|ls}} command, "fbpad-256" needs to be added to the list of terms that {{ic|ls}} knows can handle color. Per the {{ic|README}}, run the following command in your shell: |
||
$ dircolors --print-database | sed '/^TERM linux$/aTERM fbpad-256' >$HOME/.dircolors |
$ dircolors --print-database | sed '/^TERM linux$/aTERM fbpad-256' >$HOME/.dircolors |
||
− | + | そしてシェルの設定ファイルに {{ic|eval `dircolors ~/.dircolors`}} を追加してください。 |
|
==ヒントとテクニック== |
==ヒントとテクニック== |
||
101行目: | 104行目: | ||
===テキストのコピー=== |
===テキストのコピー=== |
||
+ | fbpad ではマウスを使わなくても何でもできるようになっており、テキストをコピーしたい場合、{{ic|Alt+s}} コマンドを使うことで画面上の全てのテキストのスクリーンショットを作成できます。全てのテキストが {{ic|/tmp/scr}} ファイルに保存されます。シェルが [[vim]] によるコマンドラインの編集をサポートしている場合 (例えば zsh のコマンドライン編集の ZLE 関数)、vim で新しいバッファとして {{ic|/tmp/scr}} ファイルを開いてオリジナルのバッファに必要なテキストを貼り付けることができます。[[Emacs]] ユーザーも同じようにコピーできます。 |
||
− | As everything is done mouselessly in fbpad, to copy text, users can make a "screenshot" of all the text on the screen with the {{ic|Alt+s}} command. This will save all viewable text to the file {{ic|/tmp/scr}}. Then, if your shell supports editing the commandline with [[vim]] (for instance, the edit-command-line ZLE function in zsh), you can open the {{ic|/tmp/scr}} file as a new buffer in vim and use its copy keybindings to paste the needed text into your original buffer. [[Emacs]] users probably can adopt a similar scheme to copy text. |
||
===YouTube の試聴=== |
===YouTube の試聴=== |
||
+ | [[MPlayer]] の動画出力ドライバーを {{ic|fbdev2}} に設定している場合、{{Pkg|youtube-viewer}} を使って YouTube を検索してコマンドラインから fbpad で MPlayer で試聴することができます。また、以下のスクリプトをコマンドラインのウェブブラウザ {{Pkg|w3m}} の外部ブラウザとして追加することで、YouTube のウェブサイトから動画の再生をお好きなメディアプレイヤーで実行できます。以下のスクリプトは fbpad の作者によって作られた軽量なメディアプレイヤー {{AUR|fbff-git}} と、YouTube の URL を直接試聴可能な URL に変換する UNIX ライクなシンプルなプログラム {{AUR|yturl}} を使っています。 |
||
− | If one is using [[MPlayer]] with the video output driver set to {{ic|fbdev2}}, {{Pkg|youtube-viewer}} can be used for searching YouTube and watching with MPlayer from the commandline in fbpad. Alternatively, one can add the following script as an external browser in the commandline web browser {{Pkg|w3m}}, and launch playback of videos from YouTube websites with one's media player of choice. The script below employs {{AUR|fbff-git}}, a lightweight media player also written by the author of fbpad, and {{AUR|yturl}}, a simple program, that, rather UNIX-like, functions solely to convert YouTube URLs into directly watchable URLs. |
||
{{bc|1= |
{{bc|1= |
||
113行目: | 116行目: | ||
}} |
}} |
||
+ | ファイルを {{ic|PATH}} が通っているディレクトリに {{ic|youtube.sh}} として保存したら、w3m の外部ブラウザとして追加してください。w3m を開いて {{ic|o}} キーを押してオプションを編集し、"External Program Settings" の "External Browser" フィールドを編集して "youtube.sh" と入力してください。"OK" を押したら設定完了です。動画を視聴したくなったら、YouTube を開いて、{{ic|M}} キーを押せば、fbff で動画が即座にストリーミング再生されます。 |
||
− | Save the file in your {{ic|PATH}} as {{ic|youtube.sh}}, and add it as an external browser to w3m by opening w3m, hitting the {{ic|o}} key to edit options, and edit the "External Browser" field under "External Program Settings" by entering in the field "youtube.sh". Hit "OK", and you are done. Now, when wishing to watch a video, with YouTube open, hit the {{ic|M}} key, and the video will begin streaming instantly in fbff. |
||
==推奨プログラム== |
==推奨プログラム== |
2018年2月25日 (日) 01:29時点における版
fbpad は一文字のタグを使って多数のターミナルを管理できる小型のフレームバッファターミナルです。C で書かれており固有のフォントフォーマット tinyfont を使って Xorg でフォントを使うために必要なパッケージが要らないために非常に軽量です。fbpad は任意で256色や太字フォント、フレームバッファのコンテンツのメモリ保存をサポートしており、様々な用途で X サーバーを置き換えることができます。
目次
インストール
fbpad-gitAUR パッケージをインストールしてください。デフォルトでは fbpad の "bold" と "scrsnap" ブランチがインポートされ、256色と太字フォント、そしてフレームバッファの中身の保存機能が追加されます。fbpad は config.h
ファイルでカスタマイズすることができ、config.h
ファイルを編集したら makepkg --skipinteg -i
を使って fbpad を再コンパイルしてください。
設定
config.h
でフォント (詳しくは下述), SHELL
, MAIL
, EDITOR
の定義を編集することができます。
dwm ユーザーは fbpad にすぐに慣れるでしょう。fbpad のキーバインドは修飾キーで始まり、dwm と同じように Alt
キーにハードコードされています。Alt+j
と Alt+k
で開いているタグのターミナルが切り替わり、Alt+o
で最後に開いたタグに切り替わり、Alt+p
で開いているタグのリストが表示されます。ソースコードの手動パッチに抵抗がなければ fbpad.c
ファイルを編集してキーバインドを編集・追加できます。
fbpad を頻繁に再コンパイルする場合、手動で再起動しなくても fbpad をリロードできるようにすると便利でしょう。以下のコードは tty1 でログインした後に fbpad を起動し、Ctrl+Alt+q
で fbpad を終了したときにリロードします。
if [[ $(tty) = /dev/tty1 ]]; then while true; do fbpad >/dev/null 2>&1 done fi
上記をコマンドラインシェルの設定ファイルの末尾に追加してください。
タグの色
タグリストのデフォルトの背景色は白にハードコードされていて、同じく空のタグの前景色は黒に、完全に埋まったタグの前景色は緑に (タグにはそれぞれ2つまでターミナルを格納できます)、完全には埋まっていないタグの前景色は青になっています。以下のパッチを使うことでカラースキームを変更することができます:
--- a/fbpad.c 2011-11-11 13:02:22.834825518 -0500 +++ b/fbpad.c 2011-11-11 13:04:07.016043271 -0500 @@ -110,7 +110,7 @@ static void showtags(void) { - int colors[] = {15, 4, 2}; + int colors[] = {8, 2, 9}; int c = 0; int r = pad_rows() - 1; int i; @@ -128,7 +128,7 @@ nt++; pad_put(i == ctag ? '(' : ' ', r, c++, FGCOLOR, BGCOLOR); if (TERMSNAP(i)) - pad_put(tags[i], r, c++, !nt ? BGCOLOR : colors[nt], 15); + pad_put(tags[i], r, c++, !nt ? 8 : colors[nt], BGCOLOR); else pad_put(tags[i], r, c++, colors[nt], BGCOLOR); pad_put(i == ctag ? ')' : ' ', r, c++, FGCOLOR, BGCOLOR);
使用するときは "8" を空のタグで使いたい色に、"2" を完全には埋まっていないタグの色に、"9" を完全に埋まったタグの色に置き換えてください。0-15 の色は config.h
ファイルで定義されています。また、上記のパッチはデフォルトの背景色をターミナルの背景色に変更します。
2番目の "8" は fbpad がフレームバッファの中身を保存するときのタグの色です。TAGS_SAVED
を TAGS
と定義した場合、デフォルトの前景色と保存されるタグの色を同じにすると良いでしょう。もしくは、TAGS_SAVED
を保存するタグを連結した文字列として定義する場合、2番目の "8" は保存されるタグを示す色に変えると良いでしょう。
パッチは fbpad-tagcolor.diff
として保存して source 配列に 'fbpad-tagcolor.diff'
を追加し、PKGBUILD
の config.h
ファイルをコピーしている行の後に以下の行を追加してください:
patch -p1 -i "${srcdir}/${_gitname}-tagcolor.diff" || return 1
フォント
fbpad のフォントフォーマットは "tinyfont" であり、TTF ファイルを tinyfont フォーマットに変換するユーティリティとして ft2tfAUR が存在します。ft2tf のビルドディレクトリの config.h
ファイルを編集して使用したいフォントの TTF ファイルを指定してください。例えばフォントファイル MonteCarloFixed.ttf
が $HOME/.fonts
ディレクトリに存在する場合、config.h
の10行目を以下のように編集 (ユーザー名の "archie" と作成するフォントサイズの 6 は適当に置き換えてください):
{"/home/archie/.fonts/MonteCarloFixed12.ttf", 6},
他のフォントの行は削除してください。他のフォントの文字でフォントを補間したい場合、上記と同じように他のフォントの TTF ファイルの行を追加してください。
それから makepkg -skipinteg -i
を実行してカスタマイズした設定でパッケージをビルド・インストールしてください。
ft2tf をインストールしたら、以下のコマンドで tinyfont ファイルが作成されます:
$ ft2tf > MyFont.tf
"MyFont" は適当な名前に置き換えることができます。
忘れずに config.h
を編集して MyFont.tf
を保存したディレクトリを指定してください。フォントに太字体が存在する場合、同じように ft2tf の config.h
ファイルを編集して、今度は ft2tf の config.h
で太字の TTF ファイルの場所を指定して、makepkg でビルドして fbpad の config.h
の太字の tinyfont の場所を追加してください。
また、一部のフォントは WIDTHDIFF
と HEIGHTDIFF
を修正して横幅と高さを調整する必要があります。
カラーのサポート
デフォルトで AUR のパッケージは fbpad のカスタム terminfo をインストールしますが、256色のサポートを使うにはシェルの設定ファイルに以下を追加する必要があります:
export TERM=fbpad-256
デフォルトシェルで生成されないコマンド (例えば EDITOR
と MAIL
のコマンド) はシェルの設定ファイルを読み込まないため、config.h
ファイルで EDITOR
と MAIL
のコマンドを編集して親のシェルで実行するように定義する必要があります。例えば、zsh を使用する場合、MAIL
のデフォルトコマンドを以下から:
#define MAIL "mailx"
以下のように変更します:
#define MAIL "zsh -i -c mailx"
さらに、ls
コマンドに色を付けるには "fbpad-256" をカラー対応のターミナルのリストに追加する必要があります。README
によれば、シェルで以下のコマンドを実行してください:
$ dircolors --print-database | sed '/^TERM linux$/aTERM fbpad-256' >$HOME/.dircolors
そしてシェルの設定ファイルに eval `dircolors ~/.dircolors`
を追加してください。
ヒントとテクニック
テキストのコピー
fbpad ではマウスを使わなくても何でもできるようになっており、テキストをコピーしたい場合、Alt+s
コマンドを使うことで画面上の全てのテキストのスクリーンショットを作成できます。全てのテキストが /tmp/scr
ファイルに保存されます。シェルが vim によるコマンドラインの編集をサポートしている場合 (例えば zsh のコマンドライン編集の ZLE 関数)、vim で新しいバッファとして /tmp/scr
ファイルを開いてオリジナルのバッファに必要なテキストを貼り付けることができます。Emacs ユーザーも同じようにコピーできます。
YouTube の試聴
MPlayer の動画出力ドライバーを fbdev2
に設定している場合、youtube-viewer を使って YouTube を検索してコマンドラインから fbpad で MPlayer で試聴することができます。また、以下のスクリプトをコマンドラインのウェブブラウザ w3m の外部ブラウザとして追加することで、YouTube のウェブサイトから動画の再生をお好きなメディアプレイヤーで実行できます。以下のスクリプトは fbpad の作者によって作られた軽量なメディアプレイヤー fbff-gitAUR と、YouTube の URL を直接試聴可能な URL に変換する UNIX ライクなシンプルなプログラム yturlAUR を使っています。
#!/bin/sh video=$(yturl $1) fbff -f $video > /dev/null 2>&1
ファイルを PATH
が通っているディレクトリに youtube.sh
として保存したら、w3m の外部ブラウザとして追加してください。w3m を開いて o
キーを押してオプションを編集し、"External Program Settings" の "External Browser" フィールドを編集して "youtube.sh" と入力してください。"OK" を押したら設定完了です。動画を視聴したくなったら、YouTube を開いて、M
キーを押せば、fbff で動画が即座にストリーミング再生されます。
推奨プログラム
以下はフレームバッファベースのデスクトップの利便性を高めるプログラムです:
- dvtm - 動的な仮想ターミナルマネージャ (dwm のコンソール版)
- fbcatAUR - フレームバッファのスクリーンショット取得ツール
- fbff-gitAUR - ffmpeg ベースのメディアプレイヤー
- fbpdf-gitAUR - MuPDF ベースの PDF ビューア、DjVu のサポートや poppler によるレンダリングを任意でサポート
- fbvAUR - 画像ビューア
- screen - ターミナルマルチプレクサ
- w3m - コマンドラインウェブブラウザ
参照
- fbpdf, fbpad, and fbff - A Minimal Framebuffer Software Suite
- litcave, Ali Gholami Rudi のソフトウェアプロジェクトのホームページ