唐突だが、どのOSもサクサクっと使いこなしてこそ『漢道』である。そんなわけで、今回はOSごとに異なる補完設定を行う方法として、mountコマンドの補完設定について取り上げる。つまり、これをマスターして「zshだけインストールしておけば、あとはどのOSでも同じ」…という具合にしておきたいわけだ。そのためには補完設定やら設定内容などをOSごとに分岐させる必要がある。例としてはmountコマンドで使われているファイルシステムタイプの設定がなかなか分かりやすいので、ここで紹介しておこう。 ファイルシステムタイプはOSによって異なる ディスク装置やUSBメモリといった周辺機器や外部記憶装置をマウントするコマンドがmountである。マウント時には対象とするデバイスのファイルシステムタイプやマウントの種類を-tオプションで指定する(ただしSolarisの場合は-oオプションで指定するようだ)。ここで指定
昨日最後に書いてた screenのステータスラインでウィンドウ毎に実行されている(された) プログラム名を表示する方法を紹介します。 実行すると↓の様になります。 [23:46] 0 vi 1 mongrel_rails 2 top 3 tail 4 autotest tail でログを流しつつmongrel_rails 起動したり、topでプロセスの動作確認しつつ viでプログラム弄るとやってるんですが、windowを切り替える時にどのウインドウで どの作業してたかわからなくなるので、こんなことしてみました。 あまり切り替えで役に立ったことないけど、 top実行したいけど、top用のウインドウ起動してないから^t cで作成してtopとかには 使えます。 というわけで必要な設定。 まず~/.screenrcから hardstatus alwayslastline "[%02c] %`%-w
新着記事一覧 田中麗奈、初舞台で「嫁姑仲は順調です」 - 舞台『思い出トランプ』 [11:00 10/11] 【レポート】ソーシャルレンディングサービスの気になるメリット・デメリット-- maneoの妹尾賢俊社長に聞く [09:00 10/11] 【レポート】秋葉原アイテム巡り - 「マクロス」シリーズが秋葉原をジャック! 歌は世界(秋葉原)を救う!? [04:36 10/11] 「ロックマン9 アレンジサウンドトラック」のインストアイベントが開催決定 [03:25 10/11] DS『流星のロックマン3』、PR貴族に"髭男爵"が就任! 楽曲タイアップも決定 [03:03 10/11] ゼンリン、600カ所の紅葉スポットの情報を提供 - 色づき具合を15段階で表示 [02:46 10/11] TVアニメ『ドルアーガの塔〜the Sword of URUK〜』、2009年1月放送
2007年8月24日発売の WEB+DB PRESS Vol.40 『特集2 coLinux,Emacs,GNU screen,zsh [定番]Linux開発環境 』 のサポートページです。 設定ファイルの雛形 特集内で紹介したソフトウェアの設定ファイルの雛形です。最低限の設定を行っています。必要に応じて項目を追加してお使いください。 files/dot.emacs .emacs の雛形です。~/.emacs に置いてください。 files/dot.screenrc .screenrc の雛形です。~/.screenrc に置いてください。 files/dot.zshrc .zshrc の雛形です。~/.zshrc に置いてください。 参考リンク 開発環境 Screen x PuTTY x Emacs x 256color : Hasta Pronto.org PuTTY から Emacs
こいつを~/.zshrcにコピーだ 今回は、そのまま使えるコピペシリーズ第2弾をお送りする。本連載の第10回目でそのまま~/.zshrcにコピーすれば使える設定ファイルを紹介したが、これが好評だった。とりあえず、読者の皆さんはコピペしてzshの世界を堪能したらしい。あれからいくらかの変更や設定追加を行ったので、その最新版を公開しよう。というわけで、持ってけ!! 野郎どもっ!!! リスト1.1 コピー&ペースト対応 ~/.zshrc ファイル - LInux/FreeBSD/Mac OS X 対応版 # users generic .zshrc file for zsh(1) ## Environment variable configuration # # LANG # export LANG=ja_JP.UTF-8 ## Default shell configuration # #
上記の件、暫く痛かったんですが、理由が分かったので、共有しますね。。 ソース: Subversion 1.5 and ZSH Completion (in subversion users list) 補完するときに、 > _arguments:comparguments:303: invalid argument: ARG みたいなエラーがでてました。subversion 用の補完というかcompletion関数(_subversion) が、1.5 でのヘルプの些細な変更のせいで動かなくなったらしい。 動くようになおしたのを公開してくれてるヒトがいるので、 http://gvn.googlecode.com/svn/trunk/contrib/zsh/_subversion からひろって、zsh のディレクトリのファイルを置き換えます。たとえば、Leopardにzshは標準添付されてる
久々にEmacsの話題です。trampって便利ですよね。ローカルのEmacsでssh先のファイルを編集したり、sudoしてroot権限で編集できたりするのは素晴らしいと思います。trampの素晴らしさを知らない人は、下記サイトなどを参照してください。 tramp version 2.1.14 ユーザーマニュアル Emacsでリモートサーバ上のファイルをrootで編集する - 高原芳浩のKeep-Alive ところで、zshをログインシェルにしているとtrampが上手く動かない現象に出くわします。具体的には、「/sudo::/etc/hosts」などを開こうとして下記のように怒られることがあります。 tramp: Waiting 30s for remote `/bin/sh’ to come up... apply: Couldn’t `exec env ‘ENV=’ ‘PS1=$ ‘
しばらく前から、コマンドの終了ステータスをプロンプトの色に反映させるようにしている。 終了ステータスとは C言語なら int main(int argc, char* argv[]) { ... return 0; } この return している 0 が終了ステータス。この整数値の下位 8bit がプロセスの終了時に親 (そのプロセスを起動したプロセス) にわたる。 終了ステータスの指定方法はいろいろある。C言語の場合 main 関数の戻り値以外にも exit 関数の引数でも指定できる。Ruby, Perl の場合、そもそも main 関数は無くて exit 関数に引数を与える方法だけがつかえる。 この値はシェル上で $? で参照できる。 % perl -e 'exit(0xdead)'; echo $? 173 % 慣例として、正常終了のときは 0 を返すことになっている。 % ls
Windows側からGUIでいじってる方のクライアントをTortoiseSVN 1.5.2にアップデートしたせいで,リポジトリの形式がSubversion 1.5の形式に書き換えられ,1.4系クライアントを使っているCentOSのほうから書き換えができなくなってしまった. そんなわけで,CentOS 5.2のほうもSubversion 1.5にバージョンアップ. パッケージインストールはdagから おなじみのdag(rpmforge)ですね.dagを yum のリポジトリに追加する方法は毎度のことですがてきとーにググる. 私の場合は普段はenableにしていないので(utterramblingsのパッケージと若干バッティングするものがあり,ApacheやPHPでちょっとうまくいかなくなるので),以下のように実行. % sudo yum update --enablerepo=dag sub
現在は m4i さん作のcdd を tmux, bash, multi session +α に対応した - カワイイはつくれる のcddを使うのがオススメです。 screen を使ってると、別の作業している WINDOW のカレントディレクトリに移動したくなることってありませんか?私は月1000回ぐらいあります。で、毎回手動で打つのがめんどくさくなってきたので zsh スクリプト書いてみたら思っていた以上に便利だったので、汚いスクリプトですが公開します。 http://svn.coderepos.org/share/lang/zsh/cdd/cdd 使い方は、上記スクリプトを checkout したりダウンロードしたりしてから、.zshrc に autoload -U compinit compinit source ~/path/cdd # (cdd はこのファイル) するを追加します
zsh でログイン時に screen を起動する方法 2007-08-20-1: [Solaris] ~/.zlogin に以下を記述する。 if [ ! "$WINDOW" ]; then exec screen -S main -xRR fi ログイン直後にいつも screen を打っていたのですが、これで楽になりました。 - 追記 (2007-08-21) コメント欄で情報をいただいたように、他のホストにログインすると screen が二重起動する件ですが、以下のようにして対処できそうです。 if [ $TERM != "screen" ]; then exec screen -S main -xRR fi ただし、Solaris の場合は terminfo に screen の記述がないので上記設定ではうまくいきません。 結局メインで使うマシンのみに、一番上の設定をしてそれ以外のマ
こいつを~/.zshrcへコピーだ これまで、zshの基本となる設定を説明してきた。設定ファイルにエスケープコードを含めておいたためか「そのままコピー&ペーストしたんだけど使えねぇよ!!」という憂き目に遭った読者がいらっしゃったようだ。zshを学び始めるにあたって、この経験はまずい。「ネットで見つけた設定ファイルをコピペしたら、ヒャッホイ!動いたぜ!!」というくらいじゃないとモチベーションは上がらない。 そのようなわけで、今回はそのままコピー&ペーストすれば使える~/.zshrcファイルについて述べておく。zshを始めたばかりのユーザ、またはこれから始めようというユーザは、こいつをコピー&ペースしてとりあえずzshの底力を満喫してほしい。なお、zsherが多いと想定されるLinux、FreeBSD、Mac OS X上で動作するように調整しておいた。 以前設定ファイルをまとめた後に公開したコ
zshにすべておまかせ - 先方予測で驚愕と苛立ちを両ゲット これまで4回にわたってzshの基本設定を説明してきた。実際問題、これくらい設定しておけばzshの恩恵に十分にあずかることができる。とくに「autoload -U compinit; compinit」を設定して補完機能が有効になっている場合、ケースバイケースを考慮したかなり賢い補完が実施されている。 ではそろそろzshの変態領域へ入っていくとしよう。 zshの変態っぷりを手っ取り早く感じるには、先方予測機能がわかりやすい。とりあえずだまってリスト1を実行だ。 リスト1 先方予測機能を有効に設定 - この機能を使いこなることができるか? autoload predict-on predict-on リスト1を実施したあとの操作例を次に示しておく。ともかく、リスト1を実行したらzshを使ってみてほしい。そこには新しい世界が待って
今回は、前回までの設定も含めて、zshの基本的なオプションをまとめよう。 超基本にして最重要 - compinitで補完機能 第1回目で簡単に説明したが、リスト1.1の設定は絶対必要。zshの実力を発揮するための第1歩だ。 リスト1.1 補間設定をロードして設定 autoload -U compinit compinit プロンプト1.2 補完設定を読み込む前はコマンドに関係なくファイルが補間候補として表示されるが % tar [ここでタブキーを押す] dir01/ dir02/ file01 file02 file03 プロンプト1.3 補間設定を読み込んだあとはコマンドに応じてオプションが補間される % autoload -U compinit % compinit % % tar [ここでタブキーを押す] A -- append to an archive c -- c
今回は、少し話がそれるが最初にEmacsの話だ。 Emacsキーバインド 朝起きると、既に床の横で起動している端末にログイン、おもむろにcvs update -Pdし、Emacsをビルドする。当然、シェルスクリプトで自動化されているのはいうまでもない。しかし、cronに登録しないのは彼の良心である。ギークにとっては日常茶飯事だ。 Emacsでは多くの一種独特なショートカットキーを使う。こうしたキーは普段の作業で体に染み付いてしまうもので、シェルを操作するときでもついつい同じキーを叩いてしまいがち。 ここで期待しない動作になるとストレスである。 そんなユーザのために、zshにはEmacs風ショートカットキー設定が用意されている。なにはともあれ~/.zshrcにリスト1.1の設定を追加だ。何の設定もしていなければだいたいEmacs風設定が最初から有効になっている。 リスト1.1 Emacsライ
漢は2度入力しない - コマンド履歴 一度入力したコマンドをもう一度馬鹿正直に入力するという愚直な行為はぜひとも避けたい。lsとか短いコマンドは入力した方が早いだろうが、長いコマンドを入力し直すのはカッコ悪い。高機能シェルには「コマンド履歴」という「覚えておく機能」がある。zshのそれは特に強力だ。これは使わざるをえないだろう。 ということで早速リスト1.1を追加だ。 HISTSIZEとSAVEHISTで保存するコマンドの数を指定する。10,000はやり過ぎだとおもうかもしれない。しかし、実際はこの程度ではむしろ手ぬるい。漢はもはや一度入力したコマンドは未来永劫直接入力はしないものだ。回りを見渡すと億単位を越えてありえないサイズを指定している人もいる。 1,000では少ない。100,000くらいでもいい。一週間使ってみて、保存したい年数に換算しなおして行数を算出するといいだろう。たとえば一
補完の深みに入るまえに、今回は基本の設定をしてしまおう。設定は~/.zshrcファイルに書き込んで、source ~/.zshrcで反映だ。zshに直接入力して設定を有効にさせてみてもいいが、~/.zshrcに書き込まないと、次に起動したときzshはきれいさっぱり忘れているので気をつけるように。 環境変数LANG まずは、環境変数LANGを設定しよう。zshから実行するコマンドやアプリケーションがLANGで指定したロケールで動作するようになる。最近のOSなら設定はリスト1.1のようにUTF-8を設定すればいい。Linux/FreeBSDで古いディスとリビーションやバージョンを使っている場合、もしくは、LaTeXなどUTF-8へ対応していないアプリケーションを使う場合はリスト1.2のようにEUC-JPを設定しておけばいいだろう。 リスト1.1 環境変数LANGをja_JP.UTF-8へ設定
至高のコマンドインタプリタzsh Last modified Wed Oct 7 10:23:53 2009 on firestorm 12年目の大改装:-) 前口上 / 小技集 / 提供リソース[NEW](zshcompsys(1)の 部分和訳) / zshの本完成 zshは、tcshやbash等を使っている以下のような症状に悩んでいる人に有効 である。 cd するのにいちいち cd ってうたなきゃいけない面倒だとか、 hoge.o 以外の *.o を全部消したいなあとか、 カレント以下の全ての *.orig の古いのと symlink ファイルを消したい けど、find はオプション書くの難しくてやだなーとか、 ./configure --libraries=/opt/include --prefix=/usr/local/hoge まで打ってから、あ、config.h 変えとかなきゃ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く