私は長い間Screenのヘビーユーザーでしたが、2002年に修正したバージョンを使用しています。主に、ウィンドウの「次/前」ナビゲーション順序を新しい順序と一致させたいと思ったためです。i3やIonなどのタイルウィンドウマネージャーに似たウィンドウが作成されました。標準の画面の動作は、「次」および「前」がウィンドウ番号で移動するため、通常「新しい」ウィンドウ(利用可能な最小の番号を取得)は「次」ウィンドウ以外の場所に配置されます-そうしないと混乱します数字を覚えておいてください。私の好む振る舞いは、2010年にnew-windowコマンドへのフラグとして、また2012年にrenumber-windowsオプションとしてTmuxに実装されました。。ドキュメントの追加などを含め、可能な限り受け入れようとした私のスクリーンパッチは、2002年7月にスクリーンリストに関する議論を生成しませんでした(「screen@informatik.uni-erlangen.de」はできません。アーカイブを見つけます)。実際、1年後にもう一度送ったとしても、それは認められませんでした。
2002年以降、新しいバージョンのScreenに適用するために、パッチを数回「リベース」しています。しかし、バージョン4.3(2015)に到達したとき、画面の使用の1つを壊した文書化されていない変更に気づきました-つまり、その「もの」が環境変数を補間するようになりました。私はその機能を必要としなかったので、引数を「もの」に簡単にエスケープする方法がわからなかったため(ドル記号を含むテキストを送信できるように)、バージョン4.0(2004年以降)を使用し続けました。
現在のEmacs領域の内容を特定のウィンドウ番号に送信するEmacs関数で、Screenの「もの」(Tmuxでは「送信キー」)を使用します。そうすることで、スクリプト言語でコードを書いているときにインタープリターを開き、インタープリターウィンドウに特別な番号を付け、このEmacsバインディングを使用してエディターウィンドウからインタープリターウィンドウにコードの行を直接送信できます。それはハックですが、標準のキーストロークを使用してスクリーンウィンドウでインタプリタと対話することもできるため、純粋なEmacsソリューションよりも優れています。GUI IDEに少し似ていますが、マウスを使用したり、点滅するカーソルを見つめたりする必要はありません。
パッチに実装したもう1つの機能は、ウィンドウを「マーク」し、マークしたウィンドウを現在のウィンドウの「次」に再配置する機能です。私にとって、これはウィンドウの番号を付け直すよりもはるかに自然な方法です。これは、コピー/貼り付けのパラダイム、つまり「ドラッグアンドドロップ」のようなものです。(最近、i3でもこれを行う方法を見つけました。)
Tmuxでも同じことを行うことができるはずです。たとえば、2015年の時点では、ペインを「マーク」する機能があります。あるいは、ステートフルシェルスクリプトを使用して、より基本的なソリューションを作成することもできます。短いスクリプトとキーバインドを実装して「マークされたペイン」メソッドを試してみましたが、数回機能しましたが、Tmuxが「[lost server]」でクラッシュしました。それから、複雑なことをしようとせずにTmuxがクラッシュすることがわかりました。どうやらそれは、一部のユーザーのためにクラッシュされているため、少なくとも数年。サーバーがクラッシュしたり、CPUの100%を使用し始めて応答しなくなることがあります。Screenがこれらのいずれかを実行するのを見たことはありません。
理論的には、Tmuxはいくつかの点でScreenよりも優れています。スクリプト性がはるかに優れています。つまり、現在のセッションのウィンドウのリストをコマンドラインから照会するなど、Screenでは不可能なことを実行できます。たとえば、2015年にScreen は「タイトルでウィンドウを並べ替える」コマンドを追加しました。このような特殊なコマンドがいつ役立つかはわかりませんが、これとより実用的なバリエーション(CPU使用率でウィンドウを並べ替えるなど)は、Tmuxのシェルスクリプトから比較的簡単に実行できます。私には、少なくともCコードを変更しない限り、Screenでこれほど創造的なことを行うのは難しいように思えます。
他のポスターが言及したように、Tmuxには単一サーバーモデルがあり、これは特にサーバーがクラッシュした場合の主な欠点と考えられます。「セッション」ごとに個別のソケットを指定することにより、この問題を回避することができます。それでも、私はScreenのセッションごとに1サーバーあたりのデフォルトを好みます。
2002年のScreenコードの操作は、教育的で楽しいものでした。奇妙なことに、すべての追加機能について、TmuxにはScreenよりもコード行が約25%少ない(30k対40k)。Tmuxは多くのツリーとリストのデータ構造を使用していることに気付きました。画面は配列を好むようでした。
私が理解しているように、Unixターミナルインターフェイスは非常に安定しているため、基盤となるオペレーティングシステムの変更に対応するためにScreenまたはTmuxコードを使用する必要はほとんどありません。これらのプログラムには、実際にはWebブラウザーやWebサーバー、さらにはシェルのようなセキュリティ更新プログラムはありません。2004年に最後に更新されたScreenのカスタムバージョンの実行に問題はありません(Systemdがソケットを削除しないようにいくつかの構成ファイルを追加する必要がある場合を除く); これらのファイルは通常、いずれにしても配布パッケージの一部です)。おそらく、クラッシュを開始する前からTmuxバージョンを実行することで、Tmuxで発生した問題を回避することができました。もちろん、十分なユーザーがこれを行うと、これらのプログラムの最新の公式バージョンでバグを探す専門家が少なくなるため、新規ユーザーにはあまり適していません。ただし、私にとって不安定な製品(最新のTmux)や、必要な特定の機能を備えていない製品(標準の画面)に切り替えることをやる気にさせることは困難です。
これはOPの質問に対する簡単な答えを提供するものではないことは知っていますが、私の視点が役立ったことを願っています。