gpakosz / .tmux

🇫🇷 Oh my tmux! My self-contained, pretty & versatile tmux configuration made with ❤️
MIT License
21.73k stars 3.34k forks source link

tmux source error, unknown command: tmux #664

Closed ponymushama closed 8 months ago

ponymushama commented 1 year ago

After delete all my original tmux config, I copy tmux.conf and tmux.conf.local to my ~/.config/tmux folder.

Then I run command tmux source ~/.config/tmux/tmux.conf

This is the error:

/var/folders/jj/ft3n_l4905vbcwcp4cng8g6m0000gn/T/tmp.1rzhbzUL.in:10: unknown command: tmux

I am using macOS, Wezterm, fish.

Help pleace~

unix2dos commented 1 year ago

Same error, Did you solve it?

unix2dos commented 1 year ago
bind-key    -T copy-mode    C-k                  send-keys -X copy-pipe-end-of-line-and-cancel
bind-key    -T copy-mode    C-o                  send-keys -X copy-pipe-and-cancel "sed s/##/####/g | xargs -I {} tmux send-keys 'vi -- \"{}\"'; tmux send-keys 'C-m'"
bind-key    -T copy-mode    C-w                  send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    !                    send-keys -X copy-pipe-and-cancel "tr -d '\n' | pbcopy"
bind-key    -T copy-mode    Y                    send-keys -X copy-pipe-and-cancel "tmux paste-buffer -p"
bind-key    -T copy-mode    o                    send-keys -X copy-pipe-and-cancel "sed s/##/####/g | xargs -I {} tmux run-shell -b 'cd #{pane_current_path}; open \"{}\" > /dev/null'"
bind-key    -T copy-mode    y                    send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    MouseDragEnd1Pane    send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    DoubleClick1Pane     select-pane \; send-keys -X select-word \; run-shell -d 0.3 \; send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    TripleClick1Pane     select-pane \; send-keys -X select-line \; run-shell -d 0.3 \; send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    M-w                  send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode-vi C-j                  send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode-vi Enter                run-shell "tmux     send-keys -X copy-pipe-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi C-o                  send-keys -X copy-pipe-and-cancel "sed s/##/####/g | xargs -I {} tmux send-keys 'vi -- \"{}\"'; tmux send-keys 'C-m'"
bind-key    -T copy-mode-vi !                    send-keys -X copy-pipe-and-cancel "tr -d '\n' | pbcopy"
bind-key    -T copy-mode-vi D                    run-shell "tmux     send-keys -X copy-pipe-end-of-line-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi Y                    send-keys -X copy-pipe-and-cancel "tmux paste-buffer -p"
bind-key    -T copy-mode-vi o                    send-keys -X copy-pipe-and-cancel "sed s/##/####/g | xargs -I {} tmux run-shell -b 'cd #{pane_current_path}; open \"{}\" > /dev/null'"
bind-key    -T copy-mode-vi y                    send-keys -X copy-selection-and-cancel
bind-key    -T copy-mode-vi MouseDragEnd1Pane    send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode-vi DoubleClick1Pane     run-shell "tmux     select-pane \\; send-keys -X select-word \\; run-shell -d 0.3 \\; send-keys -X copy-pipe-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi TripleClick1Pane     run-shell "tmux     select-pane \\; send-keys -X select-line \\; run-shell -d 0.3 \\; send-keys -X copy-pipe-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T prefix       C-c                  command-prompt -p new-session 'new-session -s "%%"'
bind-key    -T prefix       \"                   run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c "#{pane_current_path}"'
bind-key    -T prefix       \%                   run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c "#{pane_current_path}" -h'
bind-key    -T prefix       -                    run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c "#{pane_current_path}" -v'
bind-key    -T prefix       _                    run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c "#{pane_current_path}" -h'
bind-key    -T prefix       c                    new-window -c '#{pane_current_path}'
bind-key    -T root         MouseDown3Pane       if-shell -F -t = "#{||:#{mouse_any_flag},#{&&:#{pane_in_mode},#{?#{m/r:(copy|view)-mode,#{pane_mode}},0,1}}}" { select-pane -t = ; send-keys -M } { display-menu -T "#[align=centre]#{pane_index} (#{pane_id})" -t = -x M -y M "#{?#{m/r:(copy|view)-mode,#{pane_mode}},Go To Top,}" < { send-keys -X history-top } "#{?#{m/r:(copy|view)-mode,#{pane_mode}},Go To Bottom,}" > { send-keys -X history-bottom } '' "#{?mouse_word,Search For #[underscore]#{=/9/...:mouse_word},}" C-r { if-shell -F "#{?#{m/r:(copy|view)-mode,#{pane_mode}},0,1}" "copy-mode -t=" ; send-keys -X -t = search-backward "#{q:mouse_word}" } "#{?mouse_word,Type #[underscore]#{=/9/...:mouse_word},}" C-y { copy-mode -q ; send-keys -l "#{q:mouse_word}" } "#{?mouse_word,Copy #[underscore]#{=/9/...:mouse_word},}" c { copy-mode -q ; set-buffer "#{q:mouse_word}" } "#{?mouse_line,Copy Line,}" l { copy-mode -q ; set-buffer "#{q:mouse_line}" } '' "Horizontal Split" h { run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c \"#{pane_current_path}\" -h              '} "Vertical Split" v { run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c \"#{pane_current_path}\" -v              '} '' "#{?#{>:#{window_panes},1},,-}Swap Up" u { swap-pane -U } "#{?#{>:#{window_panes},1},,-}Swap Down" d { swap-pane -D } "#{?pane_marked_set,,-}Swap Marked" s { swap-pane } '' Kill X { kill-pane } Respawn R { respawn-pane -k } "#{?pane_marked,Unmark,Mark}" m { select-pane -m } "#{?#{>:#{window_panes},1},,-}#{?window_zoomed_flag,Unzoom,Zoom}" z { resize-pane -Z } }
bind-key    -T root         MouseDown3Status     display-menu -T "#[align=centre]#{window_index}:#{window_name}" -t = -x W -y W "#{?#{>:#{session_windows},1},,-}Swap Left" l { swap-window -t :-1 } "#{?#{>:#{session_windows},1},,-}Swap Right" r { swap-window -t :+1 } "#{?pane_marked_set,,-}Swap Marked" s { swap-window } '' Kill X { kill-window } Respawn R { respawn-window -k } "#{?pane_marked,Unmark,Mark}" m { select-pane -m } Rename n { command-prompt -F -I "#W" { rename-window -t "#{window_id}" "%%" } } '' "New After" w { new-window -c '#{pane_current_path}' -a } "New At End" W { new-window -c '#{pane_current_path}' }
bind-key    -T root         MouseDown3StatusLeft display-menu -T "#[align=centre]#{session_name}" -t = -x M -y W Next n { switch-client -n } Previous p { switch-client -p } '' Renumber N { move-window -r } Rename n { command-prompt -I "#S" { rename-session "%%" } } '' "New Session" s { command-prompt -p new-session "new-session -s \"%%\"" } "New Window" w { new-window -c '#{pane_current_path}' }
bind-key    -T root         DoubleClick1Pane     select-pane -t = \; if-shell -F "#{||:#{pane_in_mode},#{mouse_any_flag}}" { send-keys -M } { copy-mode -H ; send-keys -X select-word ; run-shell -d 0.3 ; send-keys -X copy-pipe-and-cancel }
bind-key    -T root         TripleClick1Pane     select-pane -t = \; if-shell -F "#{||:#{pane_in_mode},#{mouse_any_flag}}" { send-keys -M } { copy-mode -H ; send-keys -X select-line ; run-shell -d 0.3 ; send-keys -X copy-pipe-and-cancel }
bind-key    -T root         M-MouseDown3Pane     display-menu -T "#[align=centre]#{pane_index} (#{pane_id})" -t = -x M -y M "#{?#{m/r:(copy|view)-mode,#{pane_mode}},Go To Top,}" < { send-keys -X history-top } "#{?#{m/r:(copy|view)-mode,#{pane_mode}},Go To Bottom,}" > { send-keys -X history-bottom } '' "#{?mouse_word,Search For #[underscore]#{=/9/...:mouse_word},}" C-r { if-shell -F "#{?#{m/r:(copy|view)-mode,#{pane_mode}},0,1}" "copy-mode -t=" ; send-keys -X -t = search-backward "#{q:mouse_word}" } "#{?mouse_word,Type #[underscore]#{=/9/...:mouse_word},}" C-y { copy-mode -q ; send-keys -l "#{q:mouse_word}" } "#{?mouse_word,Copy #[underscore]#{=/9/...:mouse_word},}" c { copy-mode -q ; set-buffer "#{q:mouse_word}" } "#{?mouse_line,Copy Line,}" l { copy-mode -q ; set-buffer "#{q:mouse_line}" } '' "Horizontal Split" h { run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c \"#{pane_current_path}\" -h              '} "Vertical Split" v { run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c \"#{pane_current_path}\" -v              '} '' "#{?#{>:#{window_panes},1},,-}Swap Up" u { swap-pane -U } "#{?#{>:#{window_panes},1},,-}Swap Down" d { swap-pane -D } "#{?pane_marked_set,,-}Swap Marked" s { swap-pane } '' Kill X { kill-pane } Respawn R { respawn-pane -k } "#{?pane_marked,Unmark,Mark}" m { select-pane -m } "#{?#{>:#{window_panes},1},,-}#{?window_zoomed_flag,Unzoom,Zoom}" z { resize-pane -Z }

@gpakosz Can you help me look at the problem?

gpakosz commented 1 year ago

Hello there,

Then I run command tmux source ~/.config/tmux/tmux.conf

You're not supposed to run this command. Please make sure you kill all tmux processes (client and server) and then launch tmux again (without sourcing any configuration file).

ponymushama commented 1 year ago

Same error, Did you solve it?

I completely delete tmux, then re-install tmux, the problem has gone. I run rm .config/tmux too.

unix2dos commented 12 months ago

Hello there,

Then I run command tmux source ~/.config/tmux/tmux.conf

You're not supposed to run this command. Please make sure you kill all tmux processes (client and server) and then launch tmux again (without sourcing any configuration file).

image

I was installing the plugin and it showed this

gpakosz commented 12 months ago

Is tmux even in your PATH?

unix2dos commented 12 months ago

Is tmux even in your PATH?

Yes, /opt/homebrew/bin/tmux

gpakosz commented 12 months ago

Try disabling plugins one by one until you find the one that causes problem then

gpakosz commented 12 months ago

You way also want to look at the content of that temporary file, if it's still there

unix2dos commented 12 months ago
image
bind-key    -T copy-mode    C-k                  send-keys -X copy-pipe-end-of-line-and-cancel
bind-key    -T copy-mode    C-o                  send-keys -X copy-pipe-and-cancel "sed s/##/####/g | xargs -I {} tmux send-keys 'vi -- \"{}\"'; tmux send-keys 'C-m'"
bind-key    -T copy-mode    C-w                  send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    !                    send-keys -X copy-pipe-and-cancel "tr -d '\n' | pbcopy"
bind-key    -T copy-mode    Y                    send-keys -X copy-pipe-and-cancel "tmux paste-buffer -p"
bind-key    -T copy-mode    o                    send-keys -X copy-pipe-and-cancel "sed s/##/####/g | xargs -I {} tmux run-shell -b 'cd #{pane_current_path}; open \"{}\" > /dev/null'"
bind-key    -T copy-mode    y                    send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    MouseDragEnd1Pane    send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    DoubleClick1Pane     select-pane \; send-keys -X select-word \; run-shell -d 0.3 \; send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    TripleClick1Pane     select-pane \; send-keys -X select-line \; run-shell -d 0.3 \; send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode    M-w                  send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode-vi C-j                  send-keys -X copy-pipe-and-cancel
bind-key    -T copy-mode-vi Enter                run-shell "tmux     send-keys -X copy-pipe-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi C-o                  run-shell "tmux     send-keys -X copy-pipe-and-cancel \"sed s/##/####/g | xargs -I {} tmux send-keys 'vi -- \\\"{}\\\"'; tmux send-keys 'C-m'\"; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi !                    run-shell "tmux     send-keys -X copy-pipe-and-cancel \"tr -d '\\n' | pbcopy\"; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi D                    run-shell "tmux     send-keys -X copy-pipe-end-of-line-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi Y                    run-shell "tmux     send-keys -X copy-pipe-and-cancel \"tmux paste-buffer -p\"; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi o                    run-shell "tmux     send-keys -X copy-pipe-and-cancel \"sed s/##/####/g | xargs -I {} tmux run-shell -b 'cd #{pane_current_path}; open \\\"{}\\\" > /dev/null'\"; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi y                    send-keys -X copy-selection-and-cancel
bind-key    -T copy-mode-vi MouseDragEnd1Pane    run-shell "tmux     send-keys -X copy-pipe-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi DoubleClick1Pane     run-shell "tmux     select-pane \\; send-keys -X select-word \\; run-shell -d 0.3 \\; send-keys -X copy-pipe-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi TripleClick1Pane     run-shell "tmux     select-pane \\; send-keys -X select-line \\; run-shell -d 0.3 \\; send-keys -X copy-pipe-and-cancel; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T copy-mode-vi M-y                  run-shell "tmux     send-keys -X copy-pipe-and-cancel \"pbcopy; tmux paste-buffer -p\"; /Users/liuwei/.tmux/plugins/tmux-copycat/scripts/copycat_mode_quit.sh; true"
bind-key    -T prefix       C-c                  command-prompt -p new-session 'new-session -s "%%"'
bind-key    -T prefix       \"                   run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c "#{pane_current_path}"'
bind-key    -T prefix       \%                   run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c "#{pane_current_path}" -h'
bind-key    -T prefix       -                    run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c "#{pane_current_path}" -v'
bind-key    -T prefix       _                    run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c "#{pane_current_path}" -h'
bind-key    -T prefix       c                    new-window -c '#{pane_current_path}'
bind-key    -T root         MouseDown3Pane       if-shell -F -t = "#{||:#{mouse_any_flag},#{&&:#{pane_in_mode},#{?#{m/r:(copy|view)-mode,#{pane_mode}},0,1}}}" { select-pane -t = ; send-keys -M } { display-menu -T "#[align=centre]#{pane_index} (#{pane_id})" -t = -x M -y M "#{?#{m/r:(copy|view)-mode,#{pane_mode}},Go To Top,}" < { send-keys -X history-top } "#{?#{m/r:(copy|view)-mode,#{pane_mode}},Go To Bottom,}" > { send-keys -X history-bottom } '' "#{?mouse_word,Search For #[underscore]#{=/9/...:mouse_word},}" C-r { if-shell -F "#{?#{m/r:(copy|view)-mode,#{pane_mode}},0,1}" "copy-mode -t=" ; send-keys -X -t = search-backward "#{q:mouse_word}" } "#{?mouse_word,Type #[underscore]#{=/9/...:mouse_word},}" C-y { copy-mode -q ; send-keys -l "#{q:mouse_word}" } "#{?mouse_word,Copy #[underscore]#{=/9/...:mouse_word},}" c { copy-mode -q ; set-buffer "#{q:mouse_word}" } "#{?mouse_line,Copy Line,}" l { copy-mode -q ; set-buffer "#{q:mouse_line}" } '' "Horizontal Split" h { run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c \"#{pane_current_path}\" -h                     '} "Vertical Split" v { run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c \"#{pane_current_path}\" -v                     '} '' "#{?#{>:#{window_panes},1},,-}Swap Up" u { swap-pane -U } "#{?#{>:#{window_panes},1},,-}Swap Down" d { swap-pane -D } "#{?pane_marked_set,,-}Swap Marked" s { swap-pane } '' Kill X { kill-pane } Respawn R { respawn-pane -k } "#{?pane_marked,Unmark,Mark}" m { select-pane -m } "#{?#{>:#{window_panes},1},,-}#{?window_zoomed_flag,Unzoom,Zoom}" z { resize-pane -Z } }
bind-key    -T root         MouseDown3Status     display-menu -T "#[align=centre]#{window_index}:#{window_name}" -t = -x W -y W "#{?#{>:#{session_windows},1},,-}Swap Left" l { swap-window -t :-1 } "#{?#{>:#{session_windows},1},,-}Swap Right" r { swap-window -t :+1 } "#{?pane_marked_set,,-}Swap Marked" s { swap-window } '' Kill X { kill-window } Respawn R { respawn-window -k } "#{?pane_marked,Unmark,Mark}" m { select-pane -m } Rename n { command-prompt -F -I "#W" { rename-window -t "#{window_id}" "%%" } } '' "New After" w { new-window -c '#{pane_current_path}' -a } "New At End" W { new-window -c '#{pane_current_path}' }
bind-key    -T root         MouseDown3StatusLeft display-menu -T "#[align=centre]#{session_name}" -t = -x M -y W Next n { switch-client -n } Previous p { switch-client -p } '' Renumber N { move-window -r } Rename n { command-prompt -I "#S" { rename-session "%%" } } '' "New Session" s { command-prompt -p new-session "new-session -s \"%%\"" } "New Window" w { new-window -c '#{pane_current_path}' }
bind-key    -T root         DoubleClick1Pane     select-pane -t = \; if-shell -F "#{||:#{pane_in_mode},#{mouse_any_flag}}" { send-keys -M } { copy-mode -H ; send-keys -X select-word ; run-shell -d 0.3 ; send-keys -X copy-pipe-and-cancel }
bind-key    -T root         TripleClick1Pane     select-pane -t = \; if-shell -F "#{||:#{pane_in_mode},#{mouse_any_flag}}" { send-keys -M } { copy-mode -H ; send-keys -X select-line ; run-shell -d 0.3 ; send-keys -X copy-pipe-and-cancel }
bind-key    -T root         M-MouseDown3Pane     display-menu -T "#[align=centre]#{pane_index} (#{pane_id})" -t = -x M -y M "#{?#{m/r:(copy|view)-mode,#{pane_mode}},Go To Top,}" < { send-keys -X history-top } "#{?#{m/r:(copy|view)-mode,#{pane_mode}},Go To Bottom,}" > { send-keys -X history-bottom } '' "#{?mouse_word,Search For #[underscore]#{=/9/...:mouse_word},}" C-r { if-shell -F "#{?#{m/r:(copy|view)-mode,#{pane_mode}},0,1}" "copy-mode -t=" ; send-keys -X -t = search-backward "#{q:mouse_word}" } "#{?mouse_word,Type #[underscore]#{=/9/...:mouse_word},}" C-y { copy-mode -q ; send-keys -l "#{q:mouse_word}" } "#{?mouse_word,Copy #[underscore]#{=/9/...:mouse_word},}" c { copy-mode -q ; set-buffer "#{q:mouse_word}" } "#{?mouse_line,Copy Line,}" l { copy-mode -q ; set-buffer "#{q:mouse_line}" } '' "Horizontal Split" h { run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c \"#{pane_current_path}\" -h                     '} "Vertical Split" v { run-shell 'cut -c3- "/Users/liuwei/.tmux.conf" | sh -s _split_window #{pane_pid} #{b:pane_tty} -c \"#{pane_current_path}\" -v                     '} '' "#{?#{>:#{window_panes},1},,-}Swap Up" u { swap-pane -U } "#{?#{>:#{window_panes},1},,-}Swap Down" d { swap-pane -D } "#{?pane_marked_set,,-}Swap Marked" s { swap-pane } '' Kill X { kill-pane } Respawn R { respawn-pane -k } "#{?pane_marked,Unmark,Mark}" m { select-pane -m } "#{?#{>:#{window_panes},1},,-}#{?window_zoomed_flag,Unzoom,Zoom}" z { resize-pane -Z }
unix2dos commented 12 months ago

set -g @plugin 'tmux-plugins/tmux-yank'

Found out it was caused by this plugin, have uninstalled it