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