Wenn ich versuche , eine Datei mit öffnen vim
innerhalb tmux
des gesamten Fenster friert ein . Ich muss das Fenster mit töten C-a &
.
Hier sind meine ~/.vimrc
Einstellungen:
:set autoindent
:set ts=4
:set number
:set shiftwidth=4
:set showmode
:filetype on
:filetype plugin on
:syntax enable
:set mouse=a
und ~/.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
Ich stehe vor dem Problem in RHEL. Allerdings funktioniert die gleiche Konfiguration auch auf meinem Mac. Ich denke, die Dinge funktionierten gut, bis meine RHEL-Box neu gestartet wurde und ich versuchte, eine Datei aus der vi-Auslagerungsdatei wiederherzustellen.
Irgendwelche Ideen, wie man das behebt?
[edit]: Ich habe versucht ssh
in eine andere Box zu tmux
laufen und vi
dort. Funktioniert gut in Remote-Box!
[später hinzugefügt] Auf Vorschlag von @jasonwryan habe ich die Zeile set -g default-terminal screen-256color
am Ende von hinzugefügt tmux.conf
. Das hat verhindert, dass Programme wie less
funktionieren.
echo $TERM
inside tmux ist "screen" und outside tmux ist "xterm".
Die Suche nach $ TERM führte mich zu https://wiki.archlinux.org/index.php/Tmux , von wo aus ich die Zeile set -g default-terminal "screen-256color"
als erste Zeile von hinzufügte tmux.conf
. Dies machte den $TERM
inneren tmux zu "screen-256color". Aber jetzt, wenn ich vi
in tmux starte, wird der folgende Fehler angezeigt:
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'
Sieht so aus, als hätte ich das Problem gelöst. Gerade set -g default-terminal xterm
als erste Zeile meiner ~ / .tmux.conf hinzugefügt und es hat funktioniert!
set -g default-terminal screen-256color
Antworten:
Ich habe das Problem durch Hinzufügen der Zeile gelöst
als erste zeile meiner ~ / .tmux.conf und es hat gut funktioniert.
Wie @jasonwryan jedoch betont hat, heißt es in den TMUX-FAQ eindeutig:
Ich poste diese Antwort nur, da sie mein Problem tatsächlich gelöst hat. Fühlen Sie sich bitte frei, um Ihre alternativen Lösungen hinzuzufügen.
quelle
Ich hatte gerade das gleiche Problem mit einer alten CentOS-Box, an der ich arbeiten musste. Für mich führte das Setzen von TERM in tmux auf xterm dazu, dass andere seltsame Probleme auftauchten. Ich konnte es jedoch durch Auskommentieren beheben
set mouse=a
Problem Auskommentieren in meiner .vimrc-Datei ( https://lists.gnu.org/archive/html/screen-users/2005-04/msg00039.html)Anscheinend
set ttymouse=xterm2
kann auch das Hinzufügen von .vimrc den Trick tun.Für alle anderen, die auf ähnliche Probleme stoßen, empfehle ich, die .vimrc-Datei vorübergehend zu verschieben, um festzustellen, ob die Ursache darin liegt.
quelle