บันทึกเค้าโครง gnome-terminal หลายอันหรือไม่


24

ฉันเปิดหน้าต่างเทอร์มินอล gnome หลายแห่ง มีวิธีบันทึกการตั้งค่าหรือไม่ (ตำแหน่งหน้าต่าง, ไม่มีแท็บ, ชื่อ ฯลฯ ) รีบูตระบบปฏิบัติการข้าม?

คำตอบ:


16

ฉันพบตัวเลือกต่อไปนี้ซึ่งมีประโยชน์:

--load-config=FILE              Load a terminal configuration file
--save-config=FILE              Save the terminal configuration to a file

ข้อมูลด้านบนจะคืนค่าจำนวนหน้าต่าง gnome-terminal ที่เหมาะสมด้วยแท็บที่เหมาะสม แต่ตำแหน่งและชื่อหน้าต่างจะไม่ถูกกู้คืน ยังเป็นการเริ่มต้น :)


ตำแหน่งและขนาดหน้าต่างถูกบันทึกไว้เมื่อฉันลองใช้คำสั่งเหล่านี้ด้วย gnome-terminal 3.6.1 - Linux Mint 15 ที่มี Cinnamon ในกรณีนี้ - ซึ่งทำให้สิ่งนี้มีประโยชน์มากกว่า (ขอบคุณ!)
David Duncan

5
ตัวเลือก --save-config ถูกลบออกเป็น "ล้าสมัย" จาก gnome-terminal ณ (อย่างน้อยที่สุด) 3.10.2
srking

@srking ความคืบหน้า!
drs

10

เมื่อคุณกำหนดค่า gnome-terminal ตามที่คุณต้องการ (เช่นจำนวนแท็บให้เปิดไดเรกทอรีบางรายการ) บันทึกสถานะเซสชันจากภายในหน้าต่าง gnome-terminal ด้วยคำสั่งต่อไปนี้:

gnome-terminal --save-config = mytabs

จากนั้นสิ่งที่ฉันทำคือสร้างตัวเรียกใช้งานแอปพลิเคชันที่กำหนดเองบนแผงควบคุมของฉัน

gnome-terminal --load-config = / home / leif / mytabs


งานประเภทนี้ แต่ไม่ได้บันทึกผลลัพธ์จากคำสั่งก่อนหน้าดังนั้นฉันไม่สามารถเลื่อนขึ้นและดูสิ่งที่ฉันทำ
samthebest

@samthebest Ya เพียงบันทึกและกู้คืน dir ที่ทำงานปัจจุบันของแต่ละแท็บไม่ใช่ประวัติการเลื่อน
leif81

2

คุณสามารถสร้างโปรไฟล์สำหรับ Gnome-Terminal ได้จากEdit Profilesกล่องโต้ตอบใต้Editเมนู ในการเริ่ม Gnome-Terminal ด้วยโปรไฟล์ที่แน่นอนคุณต้องดำเนินการดังนี้:

gnome-terminal --window-with-profile=<profile_name>

โดยปกติคุณสามารถกำหนดค่าไอคอนตัวเรียกใช้งานที่แตกต่างกันเพื่อเปิดใช้โพรไฟล์ที่แตกต่างกันโดยอัตโนมัติหรือคุณอาจรวมบรรทัดในสคริปต์เริ่มต้น X-session เพื่อเริ่มต้นเทอร์มินัลที่แตกต่างกัน ตัวเลือกต่าง ๆ สามารถรวมกันในไอคอนตัวเรียกใช้งานเพื่อให้ประเภทเทอร์มินัลเฉพาะประเภทหนึ่งและคุณสามารถสร้างตัวเรียกใช้งานได้มากเท่าที่คุณต้องการชนิดเทอร์มินัลที่แตกต่างกัน

ตัวเลือกบรรทัดคำสั่งอื่น ๆ อาจเป็นประโยชน์ในการรับเอฟเฟกต์ที่คุณต้องการหากกลไกโปรไฟล์ไม่ได้รับการปรับให้เหมาะสมสำหรับคุณ ดูman gnome-terminalรายละเอียดทั้งหมดในระบบของคุณ แต่นี่เป็นคำแนะนำจากการอภิปรายในฟอรัมของ Ubuntu :

# define a terminal 100 columns by 20 lines
--geometry=100x20

# set the titlebar
--title=irssi

# run a particular program
--execute irssi

1
อยู่ใกล้ แต่สงสัยว่าสิ่งที่ฉันต้องการสามารถทำได้ง่ายขึ้นหรือไม่ ฉันมีโปรไฟล์แล้วและเปิดหน้าต่าง มีสถานะเซสชันบางอย่างสำหรับแต่ละเทอร์มินัล GNOME ซึ่งฉันสามารถบันทึกและ "โหลด / เรียกใช้" ได้ตลอดเวลาเพื่อให้สิ่งที่ฉันบันทึกไว้มีผลหรือไม่
Abhinav

น่าจะเป็นอะไรใน. gconf?
Abhinav

ฉันกลัวว่าขอบเขตของความรู้ของฉัน; ฉันยังไม่ได้เป็นผู้ใช้ Gnome มาสองปีแล้ว
ต้มตุ๋น Quixote

0

ฉันใช้วิธีการสองขั้นตอนกับ xfce-terminal ของฉัน ก่อนอื่นฉันเปิดหน้าต่าง:

xfce4-terminal --hide-menubar --hide-borders --hide-toolbars -e htop -T hTop

แล้วย้ายพวกเขาด้วย wmctrl:

wmctrl -r 'hTop' -t 3
wmctrl -r 'hTop' -e 0,927,33,1000,550


0

gnome-terminal --save-config และ --load-config เป็นตัวเลือกที่ดีแม้ว่าจะพิสูจน์ได้อย่างเต็มที่ว่าฉันได้ใช้สคริปต์ต่อไปนี้สคริปต์ช้า แต่ใช้งานได้สำหรับฉัน 1. save-terminals.sh

FILE=$1
gnome-terminal --save-config=$FILE

LINES=($(grep -n '\[Terminal' $FILE | cut -d: -f1))
echo $LINES
for ((i=0; i<$(grep '\[Terminal' $FILE | wc -l); i++))
do
    TITLE=$(xprop -id $WINDOWID WM_NAME | sed -e 's/WM_NAME(STRING) = "//' -e 's/"$//';xdotool key ctrl+Right;)
    echo $TITLE
    sed -ri "$((${LINES[$i]}+$i))s/.*/&\nTitle=$TITLE/" /tmp/test
done

2. load-terminals.sh

FILE=$1
LINES=$(grep '\[Terminal' $FILE | wc -l)
TITLE=($(grep -n '\Title' $FILE | cut -d= -f2))
gnome-terminal --load-config=$FILE
for ((i=0; i<$LINES; i++))
do
    xdotool key Ctrl+Right
    xdotool key "Return"
    sleep 1
    xdotool key Alt+t
    sleep 1
    xdotool key s
    sleep 1
    xdotool type ${TITLE[$i]}
    xdotool key "Return"
    xdotool key "Return"
    sleep 1
done
xdotool key Alt+Tab
xdotool key Shift+Ctrl+Q
xdotool key "Return"

การนอนหลับนั้นเกิดจากสาเหตุถ้ามันเคลื่อนที่เร็ว นอกจากนี้คุณต้องติดตั้ง xdotool สร้างนามแฝงใน. bashrc เป็น

alias st='save-terminals.sh ~/.terminal.cfg'
alias lt='load-terminals.sh ~/.terminal.cfg'

หวังว่าจะช่วย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.