|
| HOME | SiteMap | Touring Impression | Free Software | Bookshelf | Diary |
| シェル tcsh の設定 | |
|---|---|
| コメント | .cshrc .login .logout の3つのファイルで使い勝手を調整しています。 |
| 例 | 実際に使っている .login .logout .cshrc です。 |
| X の設定 | |
| コメント | メインは .xinitrc ですが,GUI ログインの時には .xsession を先に実行します。。 |
| 例 | 実際に使っている .xinitrc .xsession .Xresources です。 |
- limit coredumpsize 0
- Fatal Error でプロセスが死んだときも,メモリイメージを保存しない。
- umask 22
- 新規ファイル・ディレクトリ作成時に, Group と Other には,Writeビットを立てない。(chmod 644/755)
- #### set shell variables ####
- シェル変数で tcsh の動作をカスタマイズ
- set autolist=ambiguous
- TAB(Ctrl-I)キーでの自動補完機能を使う。関連して set autocorrect / set complete=enhance などの設定もある。
- if ( "_$user" == "_root" ) then 〜 endif
- 状況によってプロンプトを変えている。X で複数の端末を開いて作業しているときに,どれが自分でどれが root か,すぐ忘れるので。各設定は man(jman) tcsh<Enter> で prompt の項を参照。
- if ( $?tcsh ) then bindkey 〜 endif
- キーの割当てを好みのものに変更。引数なしの bindkey<Enter> で現在の設定を表示。
- #### set environ variables ####
- 環境変数の設定
- setenv LANG/LC_CTYPE/... ja_JP.EUC
- FreeBSD 4.6-RELEASE 以降では ja_JP.eucJP に変更されています。日本語 locale(ロケール)の設定に関しては FreeBSD 公式サイトのQ&Aが詳しい → FreeBSD QandA 2200
ドキュメント通りであれば,LANG ないし LC_ALL だけ,設定しておけばよいように読めるのですが,どうも手抜きのソフトがあるために LC_CTYPE などを適宜設定しなければならないようです。これはご自分のインストールされたソフト次第です。共通の設定でうまく日本語が表示できない場合は,そのソフトだけ env コマンド経由で呼び出すということも考えます。- setenv HTTP_PROXY 以下
- 自宅のマシンはルータにぶら下がっているが,職場のマシンは,2段階のファイアウォールの下で厳重に保護されている(はず)。また ports を取るのにネットワーク距離の近いサイトを指定。
- #### aliases ####
- よく使うコマンド・忘れやすいコマンドを登録。引数なしの alias<Enter> 一発で思い出せるしね。
- alias rm rm -i 以下
- Yes/No の確認を求めるように変更。逆にディレクトリを丸ごと削除したい時など rm -rf xxx/ とする。
- alias x env XDESKTOP=WindowMaker startx 以下
- 一応 GUI ログインの設定もしてあるのだが好きでないので,startx で X を呼ぶ。普段は WindowMaker 単独を使っているが,たまに気分で他のウィンドウ・マネージャやデスクトップ環境も使う。いずれも一文字で呼べるように。.xinitrc の中で,環境変数 XDESKTOP の値で条件分岐するようにしている。
- alias memo/note
- すぐに忘れるので,インストールの記録は note.txt に,その他の備忘は memo.txt に。ファイルは 664 で wheel グループなら書込み可にしてある。ほとんどのテキストは jvim で書く。単に XEmacs を覚えるのが面倒なだけだが。
- alias printset 'env LANG=ja_JP pips900'
- EPSON のインクジェットプリンタ PM-900C の設定プログラム pips900 を呼んでいる。Linux 用ソフトなので LANG=ja_JP.EUC のままでは日本語が化ける。env コマンドで一時的に Linux 用の設定に変更して起動。 ※エプソンの Linux 用プリンタドライバは,エプソンの公式サイトで入手可能。
- alias vncstart/vnckill
- LAN にぶら下がった Windows マシンから FreeBSD を使う設定。ssh でログインして VNC を起動/終了する。一応 port-forwarding の設定もしてある。残念ながら上流のファイアウォールが telnet すら通してくれないので,職場外からは使えない。
[ -x /usr/games/fortune ] && /usr/games/fortune freebsd-tips
if ( "_$LANG" == "_ja_JP.EUC" ) then
echo
/usr/games/fortune murphyjp
echo
endif
# $FreeBSD: src/etc/root/dot.cshrc,v 1.25.2.2 2001/03/05 13:36:53 asmodai Exp $
# .cshrc - csh resource script, read at beginning of execution by each shell
# see also csh(1), environ(7).
limit coredumpsize 0 # No Coredump
umask 22 # A righteous umask
#### set shell variables ####
set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin $HOME/bin)
set autolist = ambiguous
# [default]:cons25, [kon]:vt100, [X]:kterm -> xterm-color
if ($?XDESKTOP) then
# X では Eterm を使っている
setenv TERM Eterm
endif
if ($?prompt) then
# カラー端末か? su か? su -l か? 状況によってブロンプトを変えている
if ( "_$user" == "_root" ) then
if ( "_$term" == "_cons25" ) then
set prompt = "%S[%/]%s# "
else
set prompt = "%{\e[41m%}[%/]%{\e[0m%}# "
endif
else if ( "_$HOME" == "_/root" ) then
if ( "_$term" == "_cons25" ) then
set prompt = "%S[%n: %~]%s% "
else
set prompt = "%{\e[41m%}[su: %~]%{\e[0m%}% "
endif
else
if ( "_$term" == "_cons25" ) then
set prompt = "%S[%n: %~]%s% "
else if ( "_$term" == "_xterm-color" || "_$term" == "_Eterm") then
set prompt = "%{\e[47:30m%}[%n: %~]%{\e[0m%}% "
else
set prompt = "%{\e[44m%}[%n: %~]%{\e[0m%}% "
endif
endif
set filec
set histdup = erase
set history = 1000
set savehist = (1000 merge)
set mail = (/var/mail/$USER)
if ( $?tcsh ) then
# キーの割当て
bindkey "^W" backward-delete-word
bindkey -k up history-search-backward
bindkey -k down history-search-forward
bindkey "^P" history-search-backward
bindkey "^N" history-search-forward
bindkey "^R" i-search-back
bindkey "^?" delete-char
endif
endif
#### set environ variables ####
if ( "_$TERM" == "_cons25" ) then
# english
setenv LANG C
unsetenv LC_CTYPE
else
# japanese
setenv LANG ja_JP.EUC
setenv LC_CTYPE ja_JP.EUC
endif
setenv PAGER jless
setenv LESS -mc
setenv EDITOR jvim
setenv BLOCKSIZE K
# 日本語の設定
setenv JSERVER localhost # Wnnのサーバの指定
setenv CANNAHOST localhost # CANNAのサーバの指定
setenv XMODIFIERS '@im=kinput2' # XIMの設定
# KDE
setenv KDE_DIR /usr/local/kde
setenv KDE_LANG ja_JP.EUC
setenv LD_LIBRARY_PATH /usr/local/qt/lib
setenv QTDIR /usr/local/qt
setenv MOZ_PRINTER_NAME pm900c
# /usr/ports
setenv HTTP_PROXY 10.00.0.00:8080
setenv FTP_PROXY 10.00.0.00:8080
setenv MASTER_SITE_OVERRIDE\
'ftp://ftp.jp.FreeBSD.org/pub/FreeBSD/ports/distfiles/\
ftp://ftp7.jp.FreeBSD.org/pub/FreeBSD/ports/distfiles/'
setenv DISTDIR /cdrom/ports/distfiles
#### aliases ####
alias rm rm -i
alias mv mv -i
alias cp cp -i
alias h history 20
alias j jobs -l
alias ls jls
alias la jls -A
alias lf jls -FA
alias ld jls -lAFd
alias ll jls -lAF
alias lll 'jls -lAF|jless'
alias md mkdir
alias l jless
alias vi jvim
alias x env XDESKTOP=WindowMaker startx
alias k env XDESKTOP=KDE startx
alias e env XDESKTOP=Enlightenment startx
alias s env XDESKTOP=Sawfish startx
alias g env XDESKTOP=Gnome startx
alias a env XDESKTOP=AfterStep startx
alias memo vi /root/doc/memo.txt
alias note vi /root/doc/note.txt
alias lsenv 'printenv|sort|jless'
alias printerset 'env LANG=ja_JP pips900'
alias vncstart 'vncserver :1 -depth 16 -geometry 1280x1024'
alias vnckill 'vncserver -kill :1'
#!/bin/sh
export LANG=ja_JP.EUC
export LC_CTYPE=ja_JP.EUC
export PAGER=jless
exec >$HOME/xlog 2>$HOME/xelog
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f $userresources ]; then
xrdb -merge $userresources
fi
if [ -f $usermodmap ]; then
xmodmap $usermodmap
fi
#kinput2 -ccdef /home/xxx/Wnn4/xxx.ccdef &
kinput2 -canna &
if [ "_$XDESKTOP" = "_X" ]; then
rxvt
elif [ "_$XDESKTOP" = "_KDE" ]; then
# KDE ####
actx -random -offset 40 &
exec startkde
elif [ "_$XDESKTOP" = "_Enlightenment" ]; then
# Enlightment ####
exec enlightenment
elif [ "_$XDESKTOP" = "_Sawfish" ]; then
# Sawfish ####
exec sawfish
elif [ "_$XDESKTOP" = "_Gnome" ]; then
# Gnome ####
#rxvt -C -fg white -bg blue -name SystemConsoleMessages &
#rxvt -C -fg white -bg blue -iconic -name SystemConsoleMessages &
#exec gnome-session
exec gnome-session --failsafe
else
# WindowMaker #### (default)
#xterm &
rxvt -C -fg white -bg blue -iconic -name SystemConsoleMessages &
actx -random &
#xconsole -notify &
[ ! -d $HOME/GNUstep/Library/WindowMaker ] && /usr/X11R6/bin/wmaker.inst
exec /usr/X11R6/bin/wmaker
fi
#!/bin/sh #### settings in ~/.cshrc #### ulimit -c 0 umask 22 export LANG=ja_JP.EUC export LC_CTYPE=ja_JP.EUC export TERM=xterm-color export JSERVER=localhost export CANNAHOST=localhost export XMODIFIERS='@im=kinput2' export MASTER_SITE_OVERRIDE='ftp://ftp.jp.FreeBSD.org/pub/FreeBSD/ports/distfiles/' export DISC=/dev/acd0c export CDROM=/dev/acd0c exec $HOME/.xinitrc
!!!! XEmacs !!!!
xemacs*background: beige
xemacs*foreground: black
xemacs*pointerColor: chocolate
xemacs*cursorColor: Orchid
!メニューバー
xemacs*menubar.background: wheat
xemacs*menubar.foreground: black
xemacs*menubar.selectColor: chocolate
xemacs*menubar.font: r16
!ポップアップメニュー
xemacs*popup.background: wheat
xemacs*popup.foreground: Black
xemacs*popup.selectColor: chocolate
xemacs*popup.titleForeground: firebrick
!!!! Actx !!!!
Actx*international: true
Actx*FontSet: -*-fixed-medium-r-normal-*-14-*
Actx*inputMethod: kinput2