01647

ustreamer-01647

仮想コンソールで日本語表示

仮想コンソール

グラフィカルログインしている場合はCtrl+Alt+F1 - F6で移れる.戻るには同F7.

仮想コンソール(かそうコンソール、virtual console)とは、コンピュータのユーザインタフェースにおいて、キーボードとディスプレイの概念的な組み合わせである。UnixWareやLinuxBSDなどいくつかのオペレーティングシステム (OS) の機能であり、コンピュータのシステムコンソールは独立した複数の仮想コンソールを切り替えることができる。仮想コンソールは1980年代のXenixには存在した。[1]

通常、Linuxの場合、最初の6つの仮想コンソール (/dev/tty1〜/dev/tty6) がUnixシェルへのログインプロンプトが表示されたテキストターミナルである。X Window Systemは7番目から始まる(/dev/tty7〜/dev/tty63)。Linuxにおいて、Alt + ファンクションキー(F1など)で切り替えることができる。Alt + 左カーソルキーで前の仮想コンソールに移動し、Alt + 右カーソルキーで次の仮想コンソールへ移動できる。X Window Systemからの切り替えは、Ctrl + Alt + ファンクションキーで行える。(ただし、これらのキーの組み合わせは設定で変更可能)

仮想コンソール - Wikipedia

Debian 7.6の仮想コンソールで日本語表示

いくつかのサイトで示されている「jfbterm使用」はもう古い.これは更新が絶えて久しい.

jfbterm 0.4.7 (日付: 2005-02-25)

jfbterm プロジェクト日本語トップページ - SourceForge.JP

また,wheezyリポジトリにも存在しない.パッケージが用意されているのはsqueeze (oldstable)とsidのみだ.

fbtermを使用する.名前にjが付いていないが,日本語表示に対応している.

[2010-10-06] Release version 1.7

fbterm - a fast FrameBuffer based TERMinal emulator for linux - Google Project Hosting

パッケージ: fbterm (1.7-2)

フレームバッファベースの高速な Linux 用端末エミュレータ

搭載されている機能を以下に示します:

  • フレームバッファデバイスでスクロールの高速化を有効にした場合、Linux カーネルの端末とほぼ同程度に素早く動作
  • Qt/Gtk+ ベースの GUI アプリと同様、fontconfig を用いたフォント選択、および freetype2 を用いたテキストの描画
  • 最大で 10 ウィンドウを動的に生成、消去することが可能。各ウィンドウは最初にデフォルトのシェルを起動
  • 各ウインドウ毎にスクロールの履歴を記録可能
  • 現在のロケールを動的に認識して、テキストのエンコーディングを変換可能。中国語、日本語のような全角文字もサポート
  • テキストのエンコーディングが追加設定でき、ショートカットによる動的な切り替えが可能
  • gpm サーバ実行時には、マウス操作で選択したテキストのウィンドウ間コピー、ペーストが可能
Debian -- Details of package fbterm in wheezy

手順

  1. sudo aptitude install fbterm
  2. tty1に移り,ログイン,fbterm起動,終了,tty7に戻る
  3. ~/.fbtermrcが生成されている.適当に編集する

今後tty1-6で操作する際にfbtermを実行する.

問題

  • tty1-6コンソール時点でfbtermを使用して欲しい
    • ログイン後にfbternを実行する手間を省きたい
  • 日本語入力方法が分からない

設定ファイル

~/.fbtermrc

fbtermの設定.Takaoゴシックを設定したいが,どんな文字列を設定すれば良いか分からなかった.システムデフォルト自体を変更して対応すべきだろうか.

# Configuration for FbTerm

# Lines starting with '#' are ignored.
# Note that end-of-line comments are NOT supported, comments must be on a line of their own.


# font family names/pixelsize used by fbterm, multiple font family names must be seperated by ','
# and using a fixed width font as the first is strongly recommended
font-names=mono
font-size=16

# force font width (and/or height), usually for non-fixed width fonts
# legal value format: n (fw_new = n), +n (fw_new = fw_old + n), -n (fw_new = fw_old - n)
#font-width=
#font-height=

# default color of foreground/background text
# available colors: 0 = black, 1 = red, 2 = green, 3 = brown, 4 = blue, 5 = magenta, 6 = cyan, 7 = white
color-foreground=7
color-background=0

# max scroll-back history lines of every window, value must be [0 - 65535], 0 means disable it
history-lines=5000

# up to 5 additional text encodings, multiple encodings must be seperated by ','
# run 'iconv --list' to get available encodings.
text-encodings=

# cursor shape: 0 = underline, 1 = block
# cursor flash interval in milliseconds, 0 means disable flashing
cursor-shape=0
cursor-interval=500

# additional ascii chars considered as part of a word while auto-selecting text, except ' ', 0-9, a-z, A-Z
word-chars=._-

# change the clockwise orientation angle of screen display
# available values: 0 = 0 degree, 1 = 90 degrees, 2 = 180 degrees, 3 = 270 degrees
screen-rotate=0

# specify the favorite input method program to run
input-method=uim-fep

# treat ambiguous width characters as wide
#ambiguous-wide=yes

~/.uim

(define uim-pref-suppress-dot-uim-warning-dialog? #t)
#(define-key generic-on-key? '("<Control> " "<Control>\\"))
#(define-key generic-off-key? '("<Control> " "<Control>\\"))

tty7でuim-mozcの設定画面を開くと,~/.uimを優先すると警告される.

ユーザ設定ファイル "~/.uim" が存在します。
このファイルによる設定は、このツールが保存する設定
("~/.uim.d/customs/*.scm") よりも優先されます。
設定が反映されない場合は、このファイルの内容を確認して下さい。
(このダイアログ表示を止めるには、~/.uimに次行を追加して下さい)
(define uim-pref-suppress-dot-uim-warning-dialog? #t)

2014年10月21日追記

  • Takaoゴシック指定はfc-list |grep takaoして解決
    • TakaoゴシックまたはTakaoGothic
  • ログイン時にfbterm、uim-fep自動起動は~/.bash_profileを作成してクリアした
    • 仮想コンソールログイン時には~/.bashrcを読み込まず、~/.bash_profileを読み込む
      • fbterm起動時に~/.bashrcが読み込まれる
    • exitはfbterm終了とともに仮想コンソールログアウトするため
  • 日本語入力できない
  • 仮想コンソールで機能しないxmodmap実行文を条件分岐でネスト
    • echo $TERM。仮想コンソールではlinux、xfce4-terminalではxterm
case $TERM in
  linux)
    if [ -c /dev/fb0 ]; then
      fbterm -- uim-fep
      exit
    fi
    ;;
  xterm)
    if [ -f ~/.Xmodmap ]; then
      xmodmap ~/.Xmodmap
    fi
    ;;
esac

2014年10月22日追記

日本語入力について解決した。uim設定画面でControl+spaceをオンオフに割り当てた。Control+qでも有効だった、Control+Yen、hankaku/zenkaku、Alt+Kanjiは機能しなかった。fbtermかuim-fepかによって観測可能なキーコード、利用可能なキーが制限されているのだろうか。
f:id:paulga:20141022230037p:plain