ระบุเปอร์เซ็นต์บานหน้าต่างในโครงการ tmuxinator


95

ฉันจะระบุเปอร์เซ็นต์บานหน้าต่างใน tmuxinator ได้อย่างไร

เช่น:

 project_name: ad_dev
 project_root: ~/Programming/WWW/Rails/projects/ApparelDreamDev
 rvm: ruby-1.9.2-p290@apparel_dev
 pre: SQL
 tabs:
   - editor:
       layout: main-vertical
       panes:
         - vim 75%  
         - #empty, will just run plain bash
         - top

เช่นบานหน้าต่างกลุ่มจะใช้เวลา 75% ของหน้าจอ ... มีวิธีระบุสิ่งนี้หรือไม่? หรือเอกสารประกอบควรดูที่ไหน ดูเหมือนจะหาไม่ได้จากที่ไหน

คำตอบ:


199

เค้าโครงควรระบุไว้ในlayout:บรรทัด แต่คุณไม่ได้ จำกัด เฉพาะเลย์เอาต์ที่ตั้งไว้ล่วงหน้าห้าแบบ (เช่นแนวตั้งหลัก) จากหน้าคน :

In addition, select-layout may be used to apply a previously used layout - 
the list-windows command displays the layout of each window in a form 
suitable for use with select-layout.  For example:

       $ tmux list-windows
       0: ksh [159x48]
           layout: bb62,159x48,0,0{79x48,0,0,79x48,80,0}
       $ tmux select-layout bb62,159x48,0,0{79x48,0,0,79x48,80,0}

 tmux automatically adjusts the size of the layout for the current window
 size.  Note that a layout cannot be applied to a window with more panes
 than that from which the layout was originally defined.

ขั้นแรกตั้งค่าเลย์เอาต์ของคุณตามที่คุณต้องการ - คุณสามารถปรับความกว้างได้resize-paneจนกว่าจะเหมาะกับคุณ tmux list-windowsจากนั้นเรียก จากนั้นคุณควรจะสามารถใช้layout:บรรทัดจากเอาต์พุตที่ไม่เปลี่ยนแปลงใน tmuxinator.conf

ขึ้นอยู่กับผลลัพธ์จากส่วนสำคัญของคุณ:

0: tmux [208x73] [layout b147,208x73,0,0[208x62,0,0,208x10,0,63{104x10,0,63,103x10,105,63}]] (active)

ส่วนที่เกี่ยวข้องของไฟล์ tmuxinator conf ควรเป็น:

  - editor:
       layout: b147,208x73,0,0[208x62,0,0,208x10,0,63{104x10,0,63,103x10,105,63}]
       panes:
         - vim
         - #empty, will just run plain bash
         - top

tmux list-windows ให้ผลลัพธ์ต่อไปนี้ ( gist.github.com/2324001 ) เส้นโครงร่าง tmuxinator จะมีลักษณะอย่างไรตามผลลัพธ์นั้น
Goles

5
ฉันไม่เข้าใจวิธีเรียกใช้คำสั่งtmux list-windowsในตอนแรก จากนั้นฉันก็รู้ว่ามันชัดเจน 1) นอกเซสชัน tmux ของคุณ (ถอดหรือเปิดหน้าต่างคอนโซลใหม่) ให้รันคำสั่งเหมือนกับคำสั่งเชลล์อื่น ๆ 2) เข้าสู่โหมดคำสั่ง ( PREFIX :) ภายใน tmux และใช้คำสั่งlist-windows
caspyin

3
ฉันคิดว่าควรระบุคำตอบให้ชัดเจนว่าlist-panesควรระบุจำนวนบานหน้าต่างเดียวกันที่แสดงโดยคำสั่งในpanes:ส่วนนี้ ตัวอย่างเช่นหากมีการกำหนด 6 บานหน้าต่าง 6 บรรทัดควรปรากฏภายใต้panes:แม้ว่าจะมีเพียง a -(บอกว่าไม่ต้องทำอะไรในบานหน้าต่างนี้) หากไม่ใช่หน้าต่างจะไม่ถูกจัดรูปแบบอย่างถูกต้องตามที่อธิบายไว้ในlist-panesเอาต์พุต
James McCormac

2
บางคนอาจพบว่าคำสั่งนี้มีประโยชน์ในสคริปต์เพื่อพิมพ์ส่วนเค้าโครง:tmux list-windows | sed -n 's/.*layout \(.*\)] @.*/\1/p'
Nathanael
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.