zsh はじめました 3
前回:zsh はじめました 2 - (EE) Unknown Device
Try
う〜ん?
LANGをexportする例があるけど、こういった基本的な設定って、/etc/profileとかに書いておいたほうが良くない?・・・そうか!/etc/profileに書かずに、.zshrcに書いておくことによってzshを使ったときだけその設定が有効になるような、そういったテクニックなのかもしれん。ということで.zshrcに書いておく。(それか、こういった他のshellでも通用する基本的な設定は.zprofileに書いておいたほうがいいのかもしれない)
端末エミュレーターはckなので、UTF-8で。
export LANG=ja_JP.UTF-8
それで以下を試してみた。
%ほげ
すると
zsh: command not found: \u00e3\u0081\u00bb\u00e3\u0081\u0092
となる。たしかにUTF-8だ。・・・でもなんか違う。
やっときたゼ!プロンプト!
ということで、まず基本的なプロンプトの設定を。
PROMPT="%/%% " PROMPT2="%_%\> " SPROMPT="%r is correct? [n,y,a,e]: "
PROMPTが通常のプロンプトで設定例では、
%/
http://zsh.sourceforge.net/Doc/Release/zsh_12.html#SEC40
Present working directory ($PWD). If an integer follows the `%', it specifies a number of trailing components of $PWD to show; zero means the whole path. A negative integer specifies leading components, i.e. %-1d specifies the first component.
と
%%
http://zsh.sourceforge.net/Doc/Release/zsh_12.html#SEC40
A `%'.
を使っている。
次のPROMPT2は"\"等の複数入力時に表示されるプロンプト。(bashでは">"になってるアレ)
設定例では、
%_
http://zsh.sourceforge.net/Doc/Release/zsh_12.html#SEC40
The status of the parser, i.e. the shell constructs (like `if' and `for') that have been started on the command line. If given an integer number that many strings will be printed; zero or negative or no integer means print as many as there are. This is most useful in prompts PS2 for continuation lines and PS4 for debugging with the XTRACE option; in the latter case it will also work non-interactively.
を使っている。
SPROMPTはtypo等の時に表示されるプロンプト・・・のハズ。
設定例は
SPROMPT
http://zsh.sourceforge.net/Doc/Release/zsh_14.html#IDX344
The prompt used for spelling correction. The sequence `%R' expands to the string which presumably needs spelling correction, and `%r' expands to the proposed correction. All other prompt escapes are also allowed.
を使っている。
でも、何故かddateなどのtypoでSPROMPTが現れない。
Now problem
Self
自分の使っている端末エミュレーターはckです。[関連:ck and GNU screen - (EE) Unknown Device]