GNU/Linux >> Linux の 問題 >  >> Linux

VimがTmux内で実行されていませんか?

vimを使用してファイルを開こうとすると tmux内 ウィンドウ全体がフリーズします。 C-a &でウィンドウを強制終了する必要があります 。

これが私の~/.vimrcです 設定:

:set autoindent
:set ts=4
:set number
:set shiftwidth=4
:set showmode
:filetype on
:filetype plugin on
:syntax enable
:set mouse=a

および~/.tmux.conf

# I like Ctrl-a as the default hotkey
unbind C-b
set-option -g prefix C-a

# Split window using | and -
unbind %
bind | split-window -h
bind - split-window -v

# Set status bar
set -g status-bg black
set -g status-fg white
set -g status-left ‘#[fg=green]#H’

# Highlight active window
set-window-option -g window-status-current-bg red

# Makes window numbering start from 1, instead of 0
set -g base-index 1

RHELで問題に直面しています。ただし、同じ構成が私のMacで正常に機能します。 RHELボックスが再起動され、viスワップファイルからファイルを回復しようとするまでは、問題なく動作していたと思います。

これを修正する方法について何かアイデアはありますか?

[編集]:sshを試しました tmux内の他のボックスに viを実行します そこの。リモートボックスで正常に動作します!

[後で追加]
@jasonwryanの提案に従って、set -g default-terminal screen-256colorという行を追加しました。 tmux.confの最後に 。そのため、lessのようなプログラムはできませんでした 働くことから。

echo $TERM tmuxの内側は「screen」で、tmuxの外側は「xterm」です。

$ TERMを検索すると、https://wiki.archlinux.org/index.php/Tmuxに移動し、そこからset -g default-terminal "screen-256color"という行を追加しました。 tmux.confの最初の行として 。これにより、$TERMが作成されました tmux内で「screen-256color」に。しかし今、viを起動すると tmux内では、次のエラーが表示されます:

E558: Terminal entry not found in terminfo
'screen-256color' not known. Available builtin terminals are:
    builtin_riscos
    builtin_amiga
    builtin_beos-ansi
    builtin_ansi
    builtin_pcansi
    builtin_win32
    builtin_vt320
    builtin_vt52
    builtin_xterm
    builtin_iris-ansi
    builtin_debug
    builtin_dumb
defaulting to 'ansi'

問題を解決したようです。 set -g default-terminal xtermを追加しました 私の〜/ .tmux.confの最初の行として、それは機能しました!

承認された回答:

行を追加して問題を解決しました

set -g default-terminal xterm

〜/ .tmux.confの最初の行として、正常に機能しました。

ただし、@ jasonwryanが指摘しているように、TMUXFAQには次のように明確に記載されています。

表示の問題のほとんどは、TERMが正しくないことが原因です。
問題を報告する前に、TERM設定がtmuxの内部と外部で
正しいことを確認してください。

tmux TERMの内部は、「screen」または同様のもの(
「screen-256color」など)である必要があります。外では、端末と一致している必要があります…

それが実際に私の問題を解決したので、私はこの答えを投稿するだけです。代替ソリューションを自由に追加してください。

関連:DCでAC同期モーターを実行していますか?
Linux
  1. Linuxtmuxセッション内でのIrssiの使用

  2. スクリプト内のTmuxまたはGnomeターミナル内で一連のプログラムを起動する方法は?

  3. Vim の背景色の設定

  1. vim の各行末に ^M

  2. CronJob が実行されていません

  3. tmux Ctrl+B が機能しない

  1. vimでタブを4つのスペースに設定するには?

  2. ファイルを実行不可として設定するには?

  3. Linux の画面内で実行しているかどうかを確認するにはどうすればよいですか?