お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-11-25 18:34:59

tainookashira
メンバ
登録日: 2008-06-21

GNOME-terminalでの長い行の折り返し

Ubuntu8.04を使用しています.

GNOME-teminalで,長いコマンドを打つ場合などウィンドウの右端に行った際,行の折り返しがされずに,
同じ行の左端にカーソルが移動して,さらに入力を続けるとそのまま文字が上書きされていってしまいます.

これでは,修正とかを行いたい場合に大変不便なので,
今のところウィンドウを極力大きくして,右端までの文字数を稼いでしのいでいます.

ただ根本的な解決になっていないので,
折り返しで次の行に移ってくれることが一番なのですが,
調べてもそのような情報が出てきません.(探し方が下手なのかもしれませんが.)

GNOME端末の折り返し設定などはどこで出来るのでしょうか?

オフライン

 

#2 2009-11-26 02:14:02

petitbootang
メンバ
From: 東京都
登録日: 2009-02-12

Re: GNOME-terminalでの長い行の折り返し

直接的な回答にはなっていないのですが、バックスラッシュを上手く使うことで問題を回避できると思います。
より根本的なアドバイスが必要であれば、識者の方からのレスをお待ちください。

あまり長い例ではなくて恐縮ですが端末から、
$ sudo aptitude update とするときに、

sudo \
aptitude \
update

のように入力しても同じです。

具体的にはまず、sudo \ と入力して Enter すると下記のようになるので、

petit@petit-laptop:~$ sudo \
>

続いて、aptitude \ を入力して Enter すると
> になるので、ここに続けて update を入力して Enter します。
すると、sources.list の再読込が始まります。

極端な話、

petit@petit-laptop:~$ s\
> u\
> d\
> o \
> a\
> p\
> t\
> i\
> t\
> u\
> d\
> e \
> u\
> p\
> d\
> a\
> t\
> e

などとやっても、正しいコマンドであるとシェルが認識してくれます。

オフライン

 

#3 2009-11-26 10:19:46

tainookashira
メンバ
登録日: 2008-06-21

Re: GNOME-terminalでの長い行の折り返し

petitbootangさん

有難うございます.
バックスラッシュですか.
緊急避難的には確かにそれでなんとかなりそうですね.

ただ,今のところはもう少し単純な解決策はないかなーと思っています.
どなたか,ご存知の方ございましたら回答よろしくお願いします.

ともあれ,丁寧に教えて頂いて有難うございました.

オフライン

 

#4 2009-11-26 10:31:34

hito
管理者
登録日: 2007-03-18

Re: GNOME-terminalでの長い行の折り返し

すいません、今手元に8.04がないので現象を再現できないのですが(手元の9.10だと再現しないので古いバージョンのバグかもしれない)、以下を試してみてください。

 ・9.10のLiveCDでは再現しますか?

 ・export VTE_CJK_WIDTH=1を実行したあとに、gnome-terminal --disable-factory で新しくgnome-terminalを起動した場合、そこでは再現しますか?

オフライン

 

#5 2009-11-26 18:44:31

STGSAGWAN
ゲスト

Re: GNOME-terminalでの長い行の折り返し

#1のtainookashiraさんへ

ひょっとして、Bashのプロンプトをカスタマイズしてて、PS1に設定する文字列のうち、非印刷文字をエスケープシーケンス \[ と \]で囲うのを忘れてませんか?
囲わないと#1の現象が発生します。
詳しくは、「BASH PS1 折り返し エスケープ」でググってみてください。

 

#6 2009-11-27 00:24:55

tainookashira
メンバ
登録日: 2008-06-21

Re: GNOME-terminalでの長い行の折り返し

hitoさん

hito による投稿:

 ・9.10のLiveCDでは再現しますか?

 ・export VTE_CJK_WIDTH=1を実行したあとに、gnome-terminal --disable-factory で新しくgnome-terminalを起動した場合、そこでは再現しますか?

9.10のLiveCDは今手元にないので,今度試してみます.
export VTE_CJK_WIDTH の方は試してみましたが,同じ症状が出ました.


STGSAGWANさんが仰るように,Bashのプロンプトをカスタマイズしているのでそのせいかもしれません.

STGSAGWAN による投稿:

ひょっとして、Bashのプロンプトをカスタマイズしてて、PS1に設定する文字列のうち、非印刷文字をエスケープシーケンス \[ と \]で囲うのを忘れてませんか?
囲わないと#1の現象が発生します。
詳しくは、「BASH PS1 折り返し エスケープ」でググってみてください。

PS1の設定がごちゃごちゃしていてどれのことやら分からなかったので,今ググってみたんですけど,
すぐには分かりそうになかったので週末にでも詳細を調べてみたいと思います.

お二人ともありがとうございます.

9.10,PS1ともに試してみたら結果はまたこのフォーラムで報告させていただきます.
その際にもし問題がまだ未解決でしたら,またお力添え頂ければうれしいです.

オフライン

 

#7 2009-11-27 01:50:01

STGSAGWAN
ゲスト

Re: GNOME-terminalでの長い行の折り返し

STGSAGWAN による投稿:

非印刷文字をエスケープシーケンス \[ と \]で囲うのを忘れてませんか?

済みませんが、上記の発言は撤回させてください。
\[ \]はエスケープシーケンスでは決してないです。(私の理解が誤っていました。)

正確な事は、JFなどで確認してください。

http://www.linux.or.jp/JF/JFdocs/Bash-Prompt-HOWTO.html

http://www.linux.or.jp/JF/JFdocs/Bash-Prompt-HOWTO-2.html#ss2.5

http://www.linux.or.jp/JF/JFdocs/Bash-Prompt-HOWTO-4.html

表示されないエスケープシーケンスはプロンプトに興味深い効果をもたらすために用いられます。このようなエスケープシーケンスを用いるには、\[ と \] で囲んでやり、Bashがプロンプトの大きさを計算する時に無視させます。この区切りを入れてやらないと、行編集の際のカーソルの位置の計算が違ってきます。エスケープシーケンスは、バージョン2より以前の Bash では \033[ からはじめ、それ以降のバージョンでは、\033[ でも \e[ でもはじめることができます。

 

#8 2009-11-27 01:54:06

STGSAGWAN
ゲスト

Re: GNOME-terminalでの長い行の折り返し

STGSAGWAN による投稿:

STGSAGWAN による投稿:

非印刷文字をエスケープシーケンス \[ と \]で囲うのを忘れてませんか?

済みませんが、上記の発言は撤回させてください。
\[ \]はエスケープシーケンスでは決してないです。(私の理解が誤っていました。)

済みません、上記の発言で更なる墓穴を掘りました。
\[ や \] は、
http://www.linux.or.jp/JF/JFdocs/Bash-Prompt-HOWTO-2.html#ss2.5
に「Bashプロンプトのエスケープシーケンス」として列挙されてました。

 

#9 2009-11-27 13:25:11

tainookashira
メンバ
登録日: 2008-06-21

Re: GNOME-terminalでの長い行の折り返し

仰るように,問題はPS1の設定にあったみたいです.
カラー表示のためにごちゃごちゃあった部分をとりあえずデフォルトにもどしてみると,タイトルの問題は解決しました.
なので9.10を試す必要はなさそうです.

PS1のカラー設定はこれからのんびりやり直します.

みなさん,ありがとうございました.

オフライン

 

Board footer

Powered by FluxBB