উত্তর:
অনুসন্ধান করার জন্য tmux
বর্তমান উইন্ডোটি, প্রেস ইতিহাস বাফার Ctrl- b [প্রবেশ করার copy mode
।
আপনি যদি ইমাস কী কী বাইন্ডিং ব্যবহার করছেন (ডিফল্ট), টিপুন Ctrl- sতারপরে অনুসন্ধানের জন্য স্ট্রিংটি টাইপ করুন এবং টিপুন Enter। nআবার একই স্ট্রিংটির জন্য অনুসন্ধান করতে টিপুন । বিপরীত অনুসন্ধানের জন্য Shift- টিপুন n। Escapeপ্রস্থান করতে দুবার টিপুন copy mode
। বিপরীত দিক অনুসন্ধান করতে আপনি Ctrl- ব্যবহার করতে পারেন r। মনে রাখবেন যে, যেহেতু tmux
কীবোর্ড নিয়ন্ত্রণ হয় copy mode
, Ctrl- sনির্বিশেষে কাজ করে stty ixon
সেটিং (যা আমি যেমন করে দিন stty -ixon
ব্যাশ অনুসন্ধানগুলির এগিয়ে সক্ষম করতে)।
আপনি যদি vi কী বাইন্ডিং ব্যবহার করে ( Ctrl- b:set-window-option -g mode-keys vi
), টিপুন এবং /তারপরে অনুসন্ধানের জন্য স্ট্রিংটি টাইপ করুন এবং টিপুন Enter। nআবার একই স্ট্রিংটির জন্য অনুসন্ধান করতে টিপুন । ইমাস মোডের মতো বিপরীত অনুসন্ধানের জন্য Shift- টিপুন n। qপ্রস্থান করতে দুবার টিপুন copy mode
। আপনি ?বিপরীত দিক অনুসন্ধান করতে ব্যবহার করতে পারেন ।
যদি আপনি কোনও উইন্ডোতে প্রদর্শিত কোনও কিছুর উপর ভিত্তি করে স্যুইচ করতে চান (এটিতে উইন্ডোর নাম এবং শিরোনাম রয়েছে তবে ইতিহাস নয়), (একাধিক উইন্ডো খোলা দিয়ে শুরু করে) টিপুন Ctrl- b fতারপরে অনুসন্ধানের জন্য স্ট্রিংটি টাইপ করুন এবং টিপুন Enter। যদি সেই পাঠ্যটি পাওয়া যায় তবে আপনাকে একটি উইন্ডোতে স্যুইচ করা হবে। যদি একাধিক উইন্ডো মেলে, আপনি নির্বাচন করতে একটি তালিকা দেখতে পাবেন।
EDITOR
বা VISUAL
) সেট করা সহজ হতে পারে tmux
।
set-window-option -g mode-keys vi
আমার সাথে কাজ করতে পেরেছি .tmux.conf
। কিন্তু পরিবেশের পরিবর্তনশীল বিকল্প সম্পর্কে আমি কৌতূহল ছিল এবং এটি কাজ করতে পারিনি। এটি কি শেল এনভায়রনমেন্ট ভেরিয়েবল, নাকি কনফ ফাইলের মধ্যে একটি টিএমউক্স এনভায়রনমেন্ট ভেরিয়েবল সেট করতে হবে?
VISUAL=vi tmux
অনুলিপি মোড লিখুন এবং একবারে অনুসন্ধান শুরু করুন
bind-key / copy-mode \; send-key ?
আপনাকে ঠিক করতে দেয়:
Ctrl + B /
এবং অনুসন্ধান শব্দটি লিখতে শুরু করুন।
একটি ফাইল ডাম্প এবং ভিএম ব্যবহার করুন
যখন বিষয়গুলি আরও জড়িত হয়, আমি কেবলমাত্র একটি উপযুক্ত সম্পাদক ব্যবহার করতে চাই: https://unix.stackexchange.com/questions/26548/write-all-tmux-scrolback-to-a-file
bind-key P 'capture-pane' \; capture-pane -S - \; save-buffer /tmp/tmux \; delete-buffer
এখন P
একটি ফাইলের জন্য বাফার ডাম্প করে, এবং তারপরে আমি ঠিক:
vim /tmp/tmux
Tmux 2.6 এ পরীক্ষিত।
/tmp/tmux
)?
আপনি স্ক্রিন লগটি দেখতে / সম্পাদনা / অনুসন্ধান / সংরক্ষণ করতে, প্রতি ব্যাশ প্রম্পটে লগটি ভাঁজ করতে ভিএম ব্যবহার করতে পারেন:
tmux capture-pane -pS -1000000 |
vim +":setl fen fdm=expr fde=getline(v:lnum)=~'^\\\\S\\+\\\\$\\\\s'?'>1':1" -
আপনার প্রম্পট অনুযায়ী রেজেক্স সামঞ্জস্য করুন, রেগেক্সে প্রতিটি ব্যাকস্ল্যাশের জন্য চারটি ব্যাকস্ল্যাশ ব্যবহার করুন।
অথবা im / .vimrc এ ভিম ফাংশন রাখুন:
command! MoshFoldTmuxLog :setl fen fdm=expr
\ fde=getline(v:lnum)=~'^\\S\\+\\$\\s'?'>1':1
এবং b / .bashrc এ প্রম্পটে তারিখ যুক্ত করুন, যদি আপনার কাছে অনুসন্ধানের জন্য প্রচুর লগ থাকে। যেমন
PS1='\u@\h:\w:\D{%F-%T}$?:\$ ' # user-host-pwd-date-time-errno
alias tmux-log='tmux capture-pane -pS -1000000 | vi +MoshFoldTmuxLog -'
এখানে আমি একটি সমাধান পেয়েছি।
আপনি লক্ষ্যের পথ এবং ফাইলের নামটিও সংশোধন করতে পারেন:
# Save screen content to file
bind p command-prompt -p 'Save history to:' -I '~/tmux.history' 'capture-pane -S -32768 ; save-buffer %1 ; delete-buffer'
Tmux কনফিগারেশন ফাইলটি পুনরায় লোড করার পরে prefix p
আপনি আমার ক্ষেত্রে টিপতে Ctrl+a p
পারেন bind p
আপনি নিজের পছন্দসই কী সংমিশ্রণে পরিবর্তন করতে পারেন ।
প্রথম আমার কাজ করছিল না কারণ আমি bind p
অন্য লাইনে ওভাররাইট করছিলাম তাই আমি কেবল এটি মন্তব্য করেছিলাম।
tmux
(tmux -V
) এর কোন সংস্করণ ? আমি বিশ্বাস করি এটি 0.9 সংস্করণে যুক্ত হয়েছিল।