私はmingw + msysとminttyで構成されるWindows用の 'git bash'( 'git for Windows'から)を使用しています。
このmingwインストールには、minttyで動作する「vi」エディターが含まれています。良い。
質問:minttyターミナルエミュレーションウィンドウで実行される他のエディターはありますか?
問題は、明らかにminttyターミナルウィンドウが実際のttyではなく、stdin/stdoutを使用してアプリケーション(エディター)と通信することです。
Nanoは、「リダイレクトはサポートされていません」と言っています。 Emacs -nwはemacsとだけ言っています:「標準入力はttyではありません」
Viよりも優れたユーザーインターフェイスを備えた基本的なテキストエディターがあれば幸いです。
JFMの答え 質問をピックアップ WindowsのminttyでCLIモードでemacsを実行する方法
JFMは、ネイティブのwin32 emacsが実際のttyではなくWindowsコンソールウィンドウと通信したいと指摘しています(したがって、表示されるエラーメッセージは誤解を招くものであり、それが示すものとは逆に問題があります!)
私が考えている2つの直接的なオプションは
-nw
からemacs -nw
を削除し、ポップアップemacsをそのまま使用します。またはemacs -nw
設定が正常に機能する通常のWindowsコマンドラインにスワップします。最初のオプションの私にとっての利点は、Git bashターミナルがWindowsとMac(およびLinux)で利用できることです。私にとって2番目のオプションの利点は、すべてのWindowsコマンドラインの知識を使用できることです。
答え https://stackoverflow.com/a/38544424/2416627 正しい方向を指します–実際のプレフィックスとしてGit forWindowsで配布されているwinpty
コマンドを使用しますエディターコマンド。これはEmacsで動作し、おそらくNanoでも動作します。
Emacsの場合、Ctrl-Cキーの組み合わせの処理に問題があるため、別の回避策も必要です。
最初に、デフォルトのエディターとしてEmacsをテキストモードで構成する方法を示します。Emacsは、ZipディストリビューションをC:\Program\Emacs
に解凍してインストールされていると想定しています。
git config --global core.editor 'winpty /c/Program/Emacs/bin/emacs -nw'
ただし、標準のC-X C-Cショートカットを使用してEmacsを終了できるようにするには、ログインユーザーのWindowsユーザープロファイルの場所の最上位にある.emacs
という名前のファイルに次の行を配置する必要があります。
(global-set-key [24 pause] (quote save-buffers-kill-terminal))
同じことが、使用できるようにしたいC-Cを含むその他のショートカットにも当てはまります。つまり、C-Cの代わりに「一時停止」が定義で使用されている追加のショートカットマッピングを指定する必要があります。