Tmux ගැන මා සොයාගත් ප්රශ්න හරහා ගවේෂණය කිරීම (මම සාමාන්යයෙන් GNU Screen භාවිතා කළෙමි). මගේ ප්රශ්නය වන්නේ ඒ සෑම කෙනෙකුගේම වාසි සහ අවාසි මොනවාද යන්නයි. විශේෂයෙන් මට tmux ගැන වැඩි යමක් සොයාගත නොහැකි විය.
Tmux ගැන මා සොයාගත් ප්රශ්න හරහා ගවේෂණය කිරීම (මම සාමාන්යයෙන් GNU Screen භාවිතා කළෙමි). මගේ ප්රශ්නය වන්නේ ඒ සෑම කෙනෙකුගේම වාසි සහ අවාසි මොනවාද යන්නයි. විශේෂයෙන් මට tmux ගැන වැඩි යමක් සොයාගත නොහැකි විය.
Answers:
සිට ඔවුන්ගේ වෙබ් අඩවිය :
- Tmux GNU තිරයට වඩා වෙනස් වන්නේ කෙසේද? එය තවත් කුමක් ඉදිරිපත් කරයිද?
tmux තිරය හරහා වාසි කිහිපයක් ලබා දෙයි:
- පැහැදිලිව නිර්වචනය කරන ලද සේවාදායක-සේවාදායක ආකෘතියක්: කවුළු යනු ස්වාධීන සැසිවාරයකට එකවර අනුයුක්ත කර ඇති අතර ඒවා බහු සේවාදායකයින් (පර්යන්ත) වෙතින් නැරඹිය හැකි අතර එකම tmux සේවාදායකය තුළ සැසි අතර නිදහසේ ගමන් කළ හැකිය;
- අන්තර්ක්රියාකාරී ලෙස, යතුරු බන්ධනයක් ලෙස හෝ කවචයෙන් භාවිතා කළත් එකම වාක්ය ඛණ්ඩයක් සහිත ස්ථාවර, හොඳින් ලේඛනගත විධාන අතුරුමුහුණතක්;
- කවචයෙන් පහසුවෙන් ස්ක්රිප්ට් කළ හැකි;
- බහු පේස්ට් බෆර්;
- vi හෝ emacs යතුරු පිරිසැලසුම් තේරීම;
- කවුළු ප්රමාණය සීමා කිරීමට විකල්පයක්;
- නිශ්චිත විධානයක පළමු නිමැවුම් පේළිය ප්රදර්ශනය කිරීමේ හැකියාව ඇති වඩාත් භාවිතා කළ හැකි තත්ව රේඛා සින්ටැක්ස්;
- පිරිසිදු, නවීන, පහසුවෙන් විස්තාරණය කළ, BSD- බලපත්රලාභී කේත පදනමක්.
Tmux මඟ හැරෙන අංග කිහිපයක් තිරයේ ඇත:
- බිල්ඩින් අනුක්රමික සහ ටෙල්නෙට් සහාය; මෙය පිපිරී ඇති අතර එය tmux වෙත එකතු කිරීමට අපහසුය;
- පුළුල් වේදිකා සහාය, උදාහරණයක් ලෙස IRIX සහ HP-UX, සහ අමුතු පර්යන්ත සඳහා.
<C-Left>
දී vim
දී tmux
.
එක් වෙනසක් වන්නේ එක් සැසියකට බහුවිධ පර්යන්ත සම්බන්ධ කර ඇති විට දෙදෙනා ක්රියා කරන ආකාරයයි.
තිරය සමඟ, එක් එක් අමුණා ඇති පර්යන්තයේ දැක්ම අනෙක් ඒවායින් ස්වාධීන වේ. Tmux සමඟ, අමුණා ඇති සියලුම පර්යන්ත එකම දේ දකී.
ඔබට එක් tmux සැසියකට ටර්මිනල් දෙකක් අමුණා ඇති බව පවසන්න. ඔබ ^Bඑක් පර්යන්තයකට 1 ටයිප් කරන්නේ නම් , අනෙක් පර්යන්තය ද කවුළු 1 වෙත මාරු වේ.
ඔබට එක් තිර සැසියකට ටර්මිනල් දෙකක් අමුණා ඇති අතර, ඔබ ^A1 ට ටයිප් කළ විට එය අනෙක් පර්යන්තයට කිසිදු බලපෑමක් ඇති නොකරයි.
මෙය tmux 1.2 සමඟ මගේ අත්දැකීම් මත පදනම් වේ; 1.3 ඉවර වී ඇති බව මට පෙනේ, නමුත් මෙම හැසිරීම වෙනස් වීම ගැන චේන්ජ්ලොග් හි කිසිවක් මා දුටුවේ නැත.
ඔබේ මුල් tmux සැසිය 0
(පෙරනිමිය) ලෙස හැඳින්වුවහොත් , ඔබට කළ හැක්කේ tmux new-session -t 0
එකම කවුළු සමූහයකට සම්බන්ධ නව ස්වාධීන සැසියක් ආරම්භ කිරීම සඳහා වන අතර එමඟින් එහි දෘෂ්ටිය තිබිය හැකිය.
tmux new -t 0
.
tmux GNU තිරය හා සසඳන විට තරමක් අලුත් ය. වැඩසටහන් දෙකම දළ වශයෙන් එකම ගැටළුව විසඳන බැවින් වාසි / අවාසි අසීරු ප්රශ්නයකි. tmux BSD බලපත්රලාභී වන අතර තිරය GNU GPL වේ. මෙය සමහර අයට වැදගත් වේ.
තිරය මේ මොහොතේ වඩා නිරූපණය වේ (ලිනක්ස් මත), එනම්, ඔබ එය tmux වලට වඩා දී ඇති ලිනක්ස් පෙට්ටියක සොයා ගැනීමට වැඩි ඉඩක් ඇත. කෙසේ වෙතත් tmux OpenBSD හි වැඩිපුර නිරූපණය වන්නේ එය මූලික ස්ථාපනයෙහි කොටසක් ලෙස ඇතුළත් කර ඇති බැවිනි.
වැඩසටහන් දෙකම ඔබට එකම දේ කිරීමට ඉඩ දෙයි, නමුත් දේවල් වල තත්වය ඊට වඩා ටිකක් සංකීර්ණ වුවද. මේ දෙක අතර මාරුවීම ඕනෑවට වඩා සංකීර්ණ නොවේ, බොහෝ තිර ක්රියාකාරිත්වය tmux වෙතට පිවිස ඇති හෙයින්, ඔබ එක් අයෙකුගේ බලශක්තිය භාවිතා කරන්නෙකු නම්, අනෙකට මාරුවීමේදී ඔබට යම් කලකිරීමක් ඇති වේ.
ඕනෑම වැඩසටහනක් මෙන්, එය සැබවින්ම ඔබගේ අවශ්යතා මත රඳා පවතින අතර ඔබට වඩාත් සුවපහසු වේ. ඔවුන් දෙදෙනාම උත්සාහ කර බලා ඔබ හොඳින් ක්රීඩා කරන දේ බලන්න.
Tmux පිළිබඳ වැඩි විස්තර සඳහා https://tmux.github.io/ බලන්න
byobu
තිරය සඳහා ලබා ගත හැකි එතීම ගැන සඳහන් කිරීමට මම සිතුවෙමි . byobu
Tmux සඳහා මෙවැනි දෙයක් තිබේදැයි මම නොදනිමි, නමුත් මගේ .screenrc රේඛා අතළොස්සක් පමණක් බවට පත් කළෙමි. බයිබු සහ තිර දර්ශන පිළිබඳ මෙම ඉක්මන් ලිපිය බලන්න. බයෝබු සඳහා වන ව්යාපෘති පිටුව විස්තර කරන්නේ ජපන් යෙදුමකින් සැරසිලි, බහු-පැනල් තිර සඳහා වන නමකි . එසේම, එය ධාවනය කිරීමෙන් ඔබගේ තිර සැකසීම් වලට හානියක් නොවන බැවින් ඔබට එය ආරක්ෂිතව උත්සාහ කළ හැකිය. ඔබ සමඟ සැසිය ආරම්භ කළ පසු byobu
එය භාවිතයෙන් නිදහසේ නැවත සම්බන්ධ විය හැකි screen
අතර තවමත් සිදු කර ඇති අභිරුචිකරණයන් ලිහිල් නොකෙරේ byobu
(එබැවින් එය ආරම්භක ආයාචනය සඳහා පමණක් භාවිතා කරන්න). එහි ඇති ප්රධාන වාසි දෙක නම්:
මම යතුරු බැඳීමේ කොටස භාවිතා නොකරමි, නමුත් අනිවාර්යයෙන්ම තත්ව තීරු ප්රයෝජනවත් වේ.
ද ඔබට වැටහෙනු tmux එදිරිව තිර ප්රයෝජනවත් ලින්ක් එක. මම හිතන්නේ එය බොහෝමයක් දැනටමත් පවතින පිළිතුරු මගින් සඳහන් කර ඇත.
byobu
මෙන් මෙම පිළිතුරු විශේෂාංග ලැයිස්තුවට සමග.
byobu
, නමුත් එය විධානය ක්රියාත්මක කර එය ඔබටම සොයා ගැනීම තරම් සරල ය (එය මෙනු මඟින් ධාවනය වේ), එය ඔබගේ පවතින තිර සැකසුම් අවුල් නොකරන බැවින්. මම මගේ පිළිතුර ප්රජා විකියක් බවට පත් කළෙමි, එබැවින් එය සංස්කරණය කිරීමට නිදහස් වන්න.
මගේ භාවිතයේ ඇති ලොකුම වෙනස නම් Gnu Screen හි ඔබට රාමු තිරස් අතට බෙදිය හැකි අතර Tmux හි ඔබට තිරස් අතට හා සිරස් අතට බෙදිය හැකිය. සිරස් බෙදීම් එය තිරයට පිවිසෙන බව මා මෙහි පවසන පරිදි මෙය චලනය වන ඉලක්කයකි .
අනෙක් කාරණා නම්, දේවල් පැතලි ය.
ඩ්රෙන්ච් සිත්ගන්නා කරුණක් මතු කරයි - එකම සැසියකට දෙවරක් සම්බන්ධ කිරීමේ පෙරනිමි හැසිරීම tmux හි වෙනස් වේ. කෙසේ වෙතත්, ඔබට දෙවරක් ඇමිණීමට සහ එම සැසියේ කවුළු පිළිබඳ ස්වාධීන දර්ශනයක් ලබා ගැනීමට අවශ්ය නම් - සමඟ tmux ආරම්භ කරන්න
tmux new-session -t <session name>
එය ඔබ වෙනුවෙන් නව සැසියක් නිර්මාණය කරනු ඇති අතර දැනටමත් පවතින සැසියෙන් කවුළු අමුණන්න. ඔබ ඔබේ පළමු සැසිය නම් නොකළේ නම්, ඔබට 'නැවත නම් කිරීමේ සැසිය' සමඟ එකක් එකතු කළ හැකිය.
tmux නවතම සහ තවත් විශේෂාංග කිහිපයක්.
හොඳ භාවිතය හොඳ සැකසුම මත රඳා පවතින බව මම සොයාගෙන ඇත්තෙමි.
සංස්කරණය කිරීම සඳහා මම vi (vim) භාවිතා කරමි (රේල් පීලි මත රූබී) සහ එය හොඳින් ක්රියාත්මක කිරීම සඳහා සැකසුම් දේවල් කිහිපයක් තිබේ.
බොහෝ ප්රයෝජනවත් සැකසුම් සහිත මගේ ~ / .tmux.conf ගොනුව මෙන්න:
bind r source-file ~/.tmux.conf \; display "Reloaded!" # Reload with ctrl-r
set -g prefix C-a # prefix from ctrl-b to ctrl-a
unbind C-b # allow ctrl-b for other things
set -sg escape-time 1 # quicker responses
bind C-a send-prefix # Pass on ctrl-a for other apps
set -g base-index 1 # Numbering of windows
setw -g pane-base-index 1 # Numbering of Panes
bind \ split-window -h # Split panes horizontal
bind - split-window -v # Split panes vertically
bind h select-pane -L # Switch to Pane Left
bind j select-pane -D # Switch to Pane Down
bind k select-pane -U # Switch to Pane Up
bind l select-pane -R # Switch to Pane Right
bind -r C-h select-window -t :- # Quick Pane Selection
bind -r C-l select-window -t :+ # Quick Pane Selection
bind -r H resize-pane -L 5 # Switch to Pane Left
bind -r J resize-pane -D 5 # Switch to Pane Down
bind -r K resize-pane -U 5 # Switch to Pane Up
bind -r L resize-pane -R 5 # Switch to Pane Right
setw -g mode-mouse off # Mouse Off
set -g mouse-select-pane off # Mouse Off
set -g mouse-resize-pane off # Mouse Off
set -g mouse-select-window off # Mouse Off
setw -g monitor-activity on # Activity Alerts
set -g visual-activity on
set -g status-fg white # Status line Colors
set -g status-bg black
setw -g window-status-fg cyan # Window list color
setw -g window-status-bg default
setw -g window-status-attr dim
setw -g window-status-current-fg white # Active Window Color
setw -g window-status-current-bg red
setw -g window-status-current-attr bright
set -g pane-border-fg green # Pane colors
set -g pane-border-bg black
set -g pane-active-border-fg white
set -g pane-active-border-bg yellow
set -g message-fg white # Command/Message Line.
set -g message-bg black
set -g message-attr bright
set -g status-left-length 40 # Status Line, left side
set -g status-left "#[fg=white]Session: #S #[fg=yellow]#I #[fg=cyan]#P"
set -g status-utf8 on # Status Line, right side
set -g status-right "-------"
set -g status-interval 60 # frequency of status line updates
set -g status-justify centre # center window list
setw -g mode-keys vi # vi keys to move
unbind v # Open panes in same directory as tmux-panes script
unbind n
bind v send-keys " ~/tmux-panes -h" C-m
bind n send-keys " ~/tmux-panes -v" C-m
unbind Up # Maximizing and Minimizing...
bind Up new-window -d -n tmp \; swap-pane -s tmp.1 \; select-window -t tmp
unbind Down
bind Down last-window \; swap-pane -s tmp.1 \; kill-window -t tmp
bind P pipe-pane -o "cat >>~/#W.log" \; display "Toggled logging to ~/#W.log"
එක් වෙනසක් එකතු කිරීමේ නිදහස මම ගන්නෙමි:
tmux ncurses මත පදනම් වන අතර තිරය අමතර අංග අඳින්නේ නැත. යමෙකු අනුචලන (ය) සඳහා සහය දක්වන ටර්මිනල් ඉමුලේටරය භාවිතා කරන්නේ නම් ඔහුට තිරය සමඟ අනුචලනය ලැබෙනු ඇත, නමුත් tmux සමඟ නොවේ (අවම වශයෙන් පෙරනිමි වින්යාසය තුළ). සෙවීම සහ සමාන ලක්ෂණ සඳහා එකම දේ අදාළ වේ.