मुझे बाहरी स्क्रिप्ट की आवश्यकता के बिना एक समाधान मिला है। अपने .tmux.conf में निम्नलिखित डालें:
bind i command-prompt -p 'Insert window at:' 'run-shell "if tmux select-window -t %1; then tmux new-window -a; tmux swap-window -s %1 -t \$((%1+1)); else tmux new-window; tmux move-window -t %1; fi; tmux select-window -t #I; tmux select-window -t %1;"'
[PREFIX] -i दबाएँ और वांछित स्थान डालें। अंतिम 2 चुनिंदा-विंडो कमांड यह सुनिश्चित करते हैं कि 'पिछली' विंडो उम्मीद के मुताबिक सेट हो और आप सम्मिलित विंडो पर जाएं।
संपादित करें: ठीक है, मैंने बहुत जल्द बात की। मैं बदलना पड़ा #I
करने के लिए #{window_id}
क्योंकि खिड़की सूचकांक प्रविष्टि पर कुछ खिड़कियों के लिए बदल जाता है। नया फ़ंक्शन (पठनीयता के लिए नई सुर्खियों के साथ):
bind i command-prompt -p 'Insert window at:' ' \
run-shell " \
if tmux select-window -t %1; then \
tmux new-window -a; \
tmux swap-window -s %1 -t \$((%1+1)); \
else \
tmux new-window; \
tmux move-window -t %1; \
fi; \
tmux select-window -t #{window_id}; \
tmux select-window -t %1; \
"'
मैंने .tmux.conf में निम्न 2 आदेशों के माध्यम से एक सरलीकृत संस्करण का उपयोग करना शुरू किया:
bind i command-prompt -p 'Insert window at:' 'new-window -a -t %1; swap-window -t -1'
bind I command-prompt -p 'New window at:' 'new-window -t %1'
उपसर्ग- i विंडो x मौजूद होने पर स्थिति x पर एक नई विंडो सम्मिलित करता है, और उस एक के ऊपर एक खिडकियों को चलाता है। उपसर्ग- I स्थिति x पर एक नई विंडो बनाता है जब विंडो x मौजूद नहीं होता है।