53

rxvt今日、次の起動行を使用してCygwin を実行します。

rxvt -bg black -sl 8192 -fg white -sr -g 150x56 -fn "Fixedsys" -e /usr/bin/bash --login -i

これにより、デフォルトで提供される標準の「DOS ボックス」よりもはるかに優れたサイズ変更可能なネイティブ Windows ウィンドウが得られcygwin.batます。

ただし、現在の構成にはいくつかの問題があります。

  1. 非 ASCII 文字を端末ウィンドウに入力することができません (つまり、æ、ø、å および Æ、Ø、Å など、私はこれらをやや頻繁に使用します)。 「bølle」(ノルウェー語で「いじめっ子」)のような文字列を貼り付けると、「blle」しか表示されません。
  2. UTF-8 文字をレンダリングできません。フォントでサポートされている場合でも、? としてのみ表示されます (つまり、ISO-8859-1 で同じ文字をレンダリングすると、問題なく表示されます)。

ロケールとキーボード レイアウトをノルウェー語 (ISO-8859-1 文字セット?) に設定して英語の Windows Vista を実行していますが、Windows 2000 と XP でもまったく同じ問題が発生しました。

これを修正する方法を知っている人はいますか (つまり、rxvt を構成するためのより良い方法)?

上記の問題を除けば、私は に非常に満足してrxvtいるので、それらを解決する方法が見つかれば、引き続き使用したいと考えています。ただし、問題が (簡単に) 解決できない場合、Cygwin の他の適切なターミナル ソリューションはありますか?

アップデート

Andy と Mattias (.inputrcファイルの編集) によって提供された解決策は、入力の問題を解決しましたが、出力のレンダリングは依然として問題です。ISO-8859-1 でレンダリングすると出力に問題はありませんが、UTF-8 を使用すると ? 非ASCII文字用。この動作はrxvturxvt(Cygwin XFree X Server の下で)minttyと PuttyCyg の間で一貫しています。

出力エンコーディングを設定できる同様の構成ファイルはありますか (つまり、Linux システムで出力ロケールを設定するのと同等です)。

4

21 に答える 21

37

minTTYもかなり良いです。cygwinのセットアップで見つけることができます。サイズ変更、貼り付け、および透明性をサポートします。

于 2009-03-31T16:41:02.040 に答える
12

現在、PuttyCyg(http://code.google.com/p/puttycyg/)を使用しています。必要な修正が含まれるかどうかはわかりませんが、他にもいくつかの優れた機能があります。たとえば、putty-loadmycygwin1のように呼び出すことができる一般的なパテプロファイルに保存された構成などです。このようなプロファイルは、次のように構成できます。

  • セッションをファイルに記録し、
  • 削除、ホーム、およびその他のキーの文字シーケンス、
  • ウィンドウの色とフォント。

編集:あなたが言及した文字を入力することが可能です。UTF-8サポートも提供されます(構成でオンにする必要があります)。

于 2009-03-31T16:34:58.590 に答える
10

次の 2 行を readline 構成ファイル ~/.inputrc に追加します。

set convert-meta off
set output-meta on

rxvt と mintty の両方で動作するはずです。詳細はこちら:

http://www.gnu.org/software/bash/manual/bashref.html#Readline-Init-File-Syntax

于 2009-04-01T11:07:52.490 に答える
8

これを書いている時点で 4 歳なので、質問の核心は消えてしまいました。少なくとも私にとっては、デフォルトの Cygwin ターミナルは非 Ascii 文字の貼り付けとレンダリングを形式なしに受け入れるようになりました。Cygwin のデフォルト ターミナルは mintty になり、Cygwin はデフォルトで UTF-8 で動作するようになりました。(たとえば、/etc/profile.d/lang.sh はデフォルトで UTF-8 文字セット エンコーディングを設定するようになりました。)Cygwin の 64 ビット バージョンがありますが、http: //www.cygwin.com/ml/ によると、 cygwin/2013-09/msg00029.html、rxvt の 64 ビット ポートはありません。

mintty は古い Windows コマンド コンソール サブシステム ウィンドウのようにすり減らないため、タイトルの質問でさえ以前ほど重要ではありません。それでも、私が共同で維持しているプロジェクトをプラグインします。ポイント、イモは検索機能です。

于 2013-09-23T03:33:08.313 に答える
8

コンソールも使用しています。コンソールでは、フォント、背景などをカスタマイズでき、タブ付きのインターフェイスもあります (一度に複数のターミナル ウィンドウを使用する場合に最適です)。

非 ASCII 文字を使用できるようにするために、ホーム ディレクトリの .inputrc ファイルに次のコードを追加しました。

set meta-flag on
set convert-meta off
set output-meta on
set completion-ignore-case on
于 2009-04-01T11:32:48.733 に答える
3

コードページを設定する必要がある場合があります。

現在の状態を確認してください:

$ set | grep CYGWIN
CYGWIN='codepage:oem nodosfilewarning'

コードページがない場合は、 ~/.bashrc ファイルに追加してください:

CYGWIN='codepage:oem nodosfilewarning'

ショートカットで起動した Cygwin バッチ (Cygwin.bat) ファイルの内容は次のとおりです。

start C:\cygwin\bin\rxvt.exe -sb -sl 3000 -fg gray -bg black -fn "Lucida Console-14" -e /bin/bash --login -i

CYGWIN 環境変数の場合、複数の項目をそれぞれスペースで区切って指定できることに注意してください。使用できるその他の項目: { tty binmode title }。

詳細については、 http ://www.cygwin.com/cygwin-ug-net/setup-env.html を参照してください。

関連するメモ: Cygwin に mrxvt を使用することもできます。これには X サーバーが必要であり、堅固で軽量な優れたソリューションは Xming を使用することです。私は mrxvt をコンパイルしてインストールしました - それほど難しいことではなく、うまく機能します。

rxvt を初期ウィンドウとして使用し、エイリアス コマンドを使用して rxvt から別のプロセスとして mrxvt を起動し、rxvt を閉じます。これにより、mrxvt は独自の親プロセスになり、cmd セッションは関連付けられません。

これを行うためにエイリアスを作成しました:

alias mrx='export DISPLAY="127.0.0.1:0.0"; $(/usr/local/bin/mrxvt &); echo -e "\033c"'

簡単にするために、Xming と rxvt を起動するバッチ ファイルを作成しました。

@echo off
start C:\cygwin\bin\rxvt.exe -sb -sl 3000 -fg gray -bg black -fn "Lucida Console-14" -e /bin/bash --login -i
start C:\Xming\Xming.exe :0 -clipboard -multiwindow -trayicon
exit

このバッチ ファイルは、Windows ショートカットによって起動されます。これは私にとってはうまくいきました。

于 2010-05-28T08:48:12.737 に答える
2

私は、Cygwin (および PowerShell と単純な古い cmd.exe) で非常にうまく機能するコンソールを使用しています。

于 2009-04-01T11:16:57.913 に答える
2

私が Windows で開発していたとき、Cygwin にはPoderosaが適していることがわかりました。

于 2009-04-01T11:21:30.507 に答える
1

Windows で国を設定します (コントロール パネル -> 地域の設定 -> 最後のタブ (コントロール) -> Unicode と互換性のない言語の言語 -> 選択した言語 (ノルウェー語))。再起動後、Start->Cyqwin->rxvt-native を起動します。ロシア語の場合は機能します(.bashrcなどを編集しなくても)。

デフォルトのエンコーディングはC.UTF-8であるため、ソフトの出力をutf-8に変換します。それを確認するには、「echo $LANG」と入力します。

于 2010-11-08T10:09:52.943 に答える
1

rxvt は Unicode に対応していないため、エンコードに UTF-8 を使用するマシンにログインすると、正しく動作させることができません。iso-8859-1/15 には rxvt を使用できますが、現在ほとんどのマシンは UTF-8 です。

Cygwin での rxvt の Unicode 置換は urxvt で、Cygwin でのパッケージ名は rxvt-unicode-X です。urxvtcurxvt には、ウィンドウごとに複数のタブを提供するプラグインや、多数のウィンドウ ( / )がある場合に使用するリソースを大幅に削減するクライアント/サーバー アーキテクチャなど、ダウンロード可能な多くのプラグインなど、他の優れた機能もありますurxvtd

また、シェルが 8 ビット文字を通過するように readline 変数が指定されていることを確認する必要がある場合もあります。つまり、これを$HOME/.bashrcorに追加し$HOME/.profileます。

変換メタをオフに設定
出力メタをオンに設定
入力メタをオンに設定

で適切なリソースを設定$HOME/.Xdefaultsする必要があります。特に、必要な文字を含むフォントが必要になります。urxvt のリソース グループ名は ですURxvt大文字に注意してください。重要です。

URxvt.font: xft:Lucida Console:size=8:style=normal:weight=50:antialias=true:hinting=true:minspace=true
URxvt.boldFont: xft:Lucida Console:size=8:style=bold:weight=100:antialias=true:hinting=true:minspace=true

次の設定もお勧めします。

URxvt*termName: xterm

このリソースは、$TERM環境変数の値を決定します。正しく設定されていないと、適切な termcap ファイルが見つからず、プログラムが次のようなless警告を発する原因となります: WARNING: terminal is not fully functional. rxvt-unicode残念ながら、多くの Linux ディストリビューションではデフォルトの termName が不明であるため、頻繁にリモート マシンに SSH で接続すると、問題が発生します。termName解決策は、より一般的なもの ( など) に設定するかxterm、ログインするすべてのサーバーに rxvt-unicode の termcap-file をアップロードすることです。

于 2013-06-28T13:12:27.137 に答える
1

標準の Cygwin/X と xterm で十分です。Cygwin X.org パッケージをインストールしてから、スクリプトを実行しますC:\cygwin\bin\startxwin.bat(デフォルトのインストール パスを想定)。X を起動し、次に xterm を起動します。

.Xdefaults使いやすさを向上させるために、次のオプションで更新しました。

*VT100*scrollbar.width:         14
*VT100*scrollbar.background:    gray60
*VT100*scrollbar.foreground:    rgb:a/5/5
*VT100*scrollbar.borderWidth:   0
*VT100*scrollbar.displayList:\
foreground      gray90;\
lines           1,-1,-1,-1,-1,1;\
foreground      gray60;\
lines           -1,1,1,1,1,-1
*VT100*rightScrollBar: true
*VT100*scrollBar: true
*VT100*scrollLines: 1000
xterm*toolBar: false
于 2009-04-01T13:17:27.017 に答える
1

特定の引数で ls を使用すると、ファイル名が表示されます OK ls エイリアスを /etc/profile に配置することをお勧めします。

alias ls='ls -F --color=auto --show-control-chars'

WinXP の msys で動作します。

于 2010-01-21T07:12:58.740 に答える
1

cygwin の代替ターミナル エミュレータについては、Console2を参照してください。必要なすべての機能を備えています。

于 2011-10-04T10:12:39.657 に答える
0

emg-2と同様のメモで、Lifehackerは最近MinTTYに関する記事を掲載しましたが、必要な修正が含まれているかどうかはわかりません。

于 2009-03-31T16:40:54.147 に答える
0

If you're content with only running Cygwin-applications, then rxvt should work fine. Rxvt should have UTF-8 support. Did you try googling for a solution?

If you also need to run native Windows applications, you're out of luck unless you run bash inside the Windows console. There are two issues which I don't believe are (or even can be) solved:

  • Ctrl-C doesn't work properly. If you run a native windows application from inside rxvt (or xterm), pressing Ctrl-C will give you back a prompt, but it does not interrupt the program, often leaving it to run in the background.
  • Terminal output buffering doesn't work. Output from native windows applications aren't displayed as they are printed, but rather when some internal buffer is full.

These two issues are the same with all the terminal emulators I've tried (rxvt, xterm, Emacs, and a few others).

于 2009-03-31T16:46:06.833 に答える
0

完全なサイズ変更可能性以外に、rxvt が提供する機能で、Windows コンソール ウィンドウが提供しないものは何ですか? そして、メモリ使用量の違いを見たことがありますか - rxvt は独り占めです。私はrxvtを数週間使用し、後悔することなくWindowsコンソールウィンドウに切り替えました。

于 2009-03-31T16:51:13.420 に答える
0

パテ、コンソール、rxvt、mintty、teraterm などのいくつかの端末を使用しました。最高のテラタームです。それは無料で、lang と tty と完全に互換性があり、マクロ、ショートカットで完全に構成可能で、Cygwin の cygterm を提供します。

ただし、ライトユーザーの場合は、最近のデフォルト用語であるminttyまたはrxvtを使用してください。

于 2013-12-05T13:39:12.730 に答える
0

そうです、mintty の方が快適で、軽くて速いように見えますが、それにはない機能が 1 つあります。デフォルトの (Windows) コンソールには、検索機能があります。デフォルトのコンソールから、コンソールに表示されている文字列を検索できます。 、 楽しい ?

今まで、この機能を備えた他のコンソールを見つけたことがありません...教えてください、私はデフォルトのコンソールが本当に好きではありません。

于 2012-12-23T05:20:06.853 に答える