นี่คือคำสั่ง fbterm ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
FbTerm - โปรแกรมจำลอง TERMinal ที่ใช้เฟรมบัฟเฟอร์ที่รวดเร็วสำหรับ linux
เรื่องย่อ
fbเทอม [ตัวเลือก-คำสั่ง [ข้อโต้แย้ง]]
DESCRIPTION
FbTerm เป็นโปรแกรมจำลองเทอร์มินัลที่รวดเร็วสำหรับ linux ที่มีอุปกรณ์บัฟเฟอร์เฟรมหรือการ์ดวิดีโอ VESA
รวมถึง:
* ส่วนใหญ่เร็วเท่ากับเทอร์มินัลของเคอร์เนล linux ในขณะที่เปิดใช้งานการเลื่อนแบบเร่ง
* เลือกแบบอักษรด้วย fontconfig และวาดข้อความด้วย freetype2 เช่นเดียวกับ GUI ที่ใช้ Qt / Gtk +
ปพลิเคชัน
* สร้าง / ทำลายได้ถึง 10 หน้าต่างแบบไดนามิกในการเริ่มต้นใช้งานเชลล์เริ่มต้น
* บันทึกประวัติการเลื่อนย้อนกลับสำหรับทุกหน้าต่าง
* ตรวจจับสถานที่ปัจจุบันโดยอัตโนมัติและแปลงการเข้ารหัสข้อความรองรับสคริปต์ความกว้างสองเท่า
เช่น จีน ญี่ปุ่น ฯลฯ
* สลับระหว่างการเข้ารหัสข้อความเพิ่มเติมที่กำหนดค่าได้ด้วยปุ่มลัดได้ทันที
* คัดลอก / วางข้อความที่เลือกระหว่างหน้าต่างด้วยเมาส์เมื่อเซิร์ฟเวอร์ gpm ทำงาน
* เปลี่ยนการวางแนวของการแสดงหน้าจอ aka การหมุนหน้าจอ
* เฟรมเวิร์กวิธีการป้อนข้อมูลที่มีน้ำหนักเบาพร้อมสถาปัตยกรรมไคลเอนต์ - เซิร์ฟเวอร์
* ภาพพื้นหลังสำหรับลูกกวาดตา
OPTIONS
คำสั่ง [ข้อโต้แย้ง] อาจกำหนดให้แทนที่ตัวเลือกในตัวของโปรแกรมเชลล์
โดยปกติ FbTerm จะตรวจสอบ SHELL ตัวแปร. หากไม่ได้ตั้งค่าไว้ จะพยายามใช้คำสั่งของผู้ใช้
โปรแกรมล็อกอินเชลล์ที่ระบุในไฟล์รหัสผ่าน หากไม่ได้ตั้งค่าไว้ bin / sh / จะ
ใช้แล้ว. คุณควรใช้ -- อาร์กิวเมนต์เพื่อแยกตัวเลือกของ FbTerm ออกจากอาร์กิวเมนต์
ให้มาที่ คำสั่ง.
FbTerm ใช้ค่าตัวเลือกที่ระบุในอาร์กิวเมนต์บรรทัดคำสั่งก่อน จากนั้นในconfig
ไฟล์ $HOME/.fbtermrc. หากไม่มีไฟล์นั้น FbTerm จะสร้างไฟล์ด้วยค่าเริ่มต้น
ตัวเลือกในการเริ่มต้น
-ชม, --ช่วยด้วย
แสดงความช่วยเหลือและออก
-วี --รุ่น
แสดงเวอร์ชัน FbTerm และออก
-ใน, --รายละเอียด
แสดงข้อมูลพิเศษของ FbTerm
-NS, --font-ชื่อ=ข้อความ
ระบุชื่อสกุลอักษร
-NS, --ขนาดตัวอักษร=NUM
ระบุขนาดพิกเซลแบบอักษร
--font-ความกว้าง=NUM
บังคับความกว้างของตัวอักษร
--font-height=NUM
บังคับความสูงของตัวอักษร
-NS, --สี-เบื้องหน้า=NUM
ระบุสีพื้นหน้า
-NS, --สีพื้นหลัง=NUM
ระบุสีพื้นหลัง
-e, --text-การเข้ารหัส=ข้อความ
ระบุการเข้ารหัสข้อความเพิ่มเติม
-NS, --คลุมเครือกว้าง
ปฏิบัติต่ออักขระความกว้างที่คลุมเครือเป็นความกว้าง
-NS, --หน้าจอหมุน=NUM
ระบุทิศทางของการแสดงผลหน้าจอ
-ผม, --วิธีการป้อนข้อมูล=ข้อความ
ระบุวิธีการป้อนข้อมูล โปรแกรม
--เคอร์เซอร์-รูปร่าง=NUM
ระบุรูปร่างเคอร์เซอร์เริ่มต้น
--เคอร์เซอร์-ช่วง=NUM
ระบุช่วงเวลาแฟลชเคอร์เซอร์
--vesa-โหมด=NUM
ระบุโหมดวิดีโอ VESA
--vesa-mode=รายการ
แสดงโหมดวิดีโอ VESA ที่ใช้ได้
ดูความคิดเห็นใน $HOME/.fbtermrc สำหรับรายละเอียดของตัวเลือกเหล่านี้
ทางลัด สรุป
แป้นพิมพ์:
CTRL_ALT_E: ออกจาก FbTerm
CTRL_ALT_C: สร้างหน้าต่างใหม่
CTRL_ALT_D: ทำลายหน้าต่างปัจจุบัน
CTRL_ALT_1: เปลี่ยนเป็นหน้าต่าง 1
CTRL_ALT_2: เปลี่ยนเป็นหน้าต่าง 2
CTRL_ALT_3: เปลี่ยนเป็นหน้าต่าง 3
CTRL_ALT_4: เปลี่ยนเป็นหน้าต่าง 4
CTRL_ALT_5: เปลี่ยนเป็นหน้าต่าง 5
CTRL_ALT_6: เปลี่ยนเป็นหน้าต่าง 6
CTRL_ALT_7: เปลี่ยนเป็นหน้าต่าง 7
CTRL_ALT_8: เปลี่ยนเป็นหน้าต่าง 8
CTRL_ALT_9: เปลี่ยนเป็นหน้าต่าง 9
CTRL_ALT_0: เปลี่ยนเป็นหน้าต่าง 10
SHIFT_LEFT: สลับไปยังหน้าต่างก่อนหน้า
SHIFT_RIGHT: สลับไปที่หน้าต่างถัดไป
SHIFT_PAGEUP: เลื่อนประวัติขึ้น
SHIFT_PAGEDOWN: เลื่อนลงประวัติ
CTRL_ALT_F1: เปลี่ยนเป็นการเข้ารหัสสถานที่ปัจจุบัน
CTRL_ALT_F2 เป็น CTRL_ALT_F6: เปลี่ยนเป็นการเข้ารหัสเพิ่มเติม
CTRL_SPACE: สลับวิธีการป้อนข้อมูล
CTRL_ALT_K: ฆ่าเซิร์ฟเวอร์วิธีการป้อนข้อมูล
หนู:
ย้ายเมื่อปุ่มซ้ายลง: เลือกข้อความ
ดับเบิลคลิกด้วยปุ่มซ้าย: เลือกข้อความอัตโนมัติ
คลิกปุ่มขวา: วางข้อความที่เลือก
บางครั้งการดำเนินการข้างต้นใช้ไม่ได้ โปรดลองทำซ้ำโดยกดแป้น Shift ค้างไว้
ลง
FRAME กันชน อุปกรณ์
ก่อนดำเนินการ FbTerm ตรวจสอบให้แน่ใจว่ามีอุปกรณ์บัฟเฟอร์เฟรมอยู่ในระบบของคุณ และคุณ
มีสิทธิ์ในการอ่าน/เขียนด้วย โดยปกติ FbTerm จะพยายามเปิด /dev/fb0 and
/dev/fb/0, ตัวแปรสภาพแวดล้อม "เฟรมบัฟเฟอร์" อาจใช้เพื่อแทนที่บิวด์อินนี้
พฤติกรรม
VESA VIDEO อุปกรณ์
จากเวอร์ชัน 1.6 FbTerm เพิ่มการรองรับการ์ดวิดีโอ VESA โดยค่าเริ่มต้น FbTerm พยายาม frame
อุปกรณ์บัฟเฟอร์ก่อน หากล้มเหลว ให้พยายามใช้อุปกรณ์ VESA ที่มีความละเอียดสูงสุดและ
ความลึกของสี ตัวเลือก "โหมด vesa" อาจกำหนดให้บังคับเฉพาะอุปกรณ์ VESA ที่เปิดด้วย
โหมดวิดีโอที่ระบุ หากต้องการดูโหมดวิดีโอที่ใช้ได้สำหรับการ์ด VESA ของคุณ ให้ดำเนินการ "fbเทอม
--vesa-mode=รายการ".
ข้อควรสนใจ: 1) การสนับสนุน VESA ต้องการสิทธิ์รูทในการทำงาน 2) อย่าบังคับให้ใช้ VESA
อุปกรณ์ในระบบที่เปิดใช้งานอุปกรณ์บัฟเฟอร์เฟรม อุปกรณ์เหล่านี้อาจขัดแย้งกับแต่ละส่วน
อื่น ๆ
แบบอักษร
FbTerm เรียกใช้ fontconfig เพื่อรับรายการฟอนต์ หากฟอนต์แรกไม่มี glyph
สำหรับอักขระการแสดงผล มันจะลองแบบอักษรที่สอง จากนั้นที่สาม ... และอื่น ๆ ผู้ใช้
สามารถดูรายการแบบอักษรที่สั่งซื้อนี้ด้วย "fbเทอม -v".
หากคุณไม่ชอบแบบอักษรที่เลือกโดย FbTerm ให้เรียกใช้ "fc-list" เพื่อรับแบบอักษรที่พร้อมใช้งาน
เลือกรายการโปรดเป็นค่าของตัวเลือก "ชื่อแบบอักษร" นอกจากนี้คุณยังสามารถปรับเปลี่ยน configuration
ไฟล์ของ fontconfig ซึ่งจะเปลี่ยนการทำงานของโปรแกรมทั้งหมดตาม fontconfig!
TEXT การเข้ารหัส
โดยใช้ iconv FbTerm จะแปลงการเข้ารหัสอื่นๆ เป็นการเข้ารหัสภายใน UTF-8 เมื่อเริ่มต้น
FbTerm ตรวจสอบตัวแปร LC_CTYPE เพื่อกำหนดการเข้ารหัสข้อความเริ่มต้นซึ่งผูกกับ
ทางลัด CTRL_ALT_F1 ผู้ใช้สามารถระบุการเข้ารหัสเพิ่มเติมได้สูงสุด 5 รายการพร้อมตัวเลือก "ข้อความ -
การเข้ารหัส" ตัวอย่างเช่น ในฐานะผู้ใช้ชาวจีน คุณตั้งค่า "text-encodings=gbk,big5", shortcut
CTRL_ALT_F2 จะผูกกับ gbk และ CTRL_ALT_F3 จะผูกกับ big5
ในการเข้ารหัส CJK จำนวนหนึ่ง มีอักขระความกว้างไม่ชัดเจนซึ่งมีความกว้างของ
แคบหรือกว้างขึ้นอยู่กับบริบทการใช้งาน โดยค่าเริ่มต้น FbTerm ถือว่า
เป็นอักขระความกว้างแคบ ตัวเลือก "คลุมเครือกว้าง" อาจใช้เพื่อเปลี่ยน
พฤติกรรม
ภูมิหลัง ภาพ
FbTerm ไม่โหลดและแยกไฟล์รูปภาพใด ๆ ที่มีรูปแบบต่าง ๆ โดยตรงแทนมัน
ถ่ายภาพหน้าจอของอุปกรณ์บัฟเฟอร์เฟรมเมื่อเริ่มต้นหากตัวแปร FTERM_BACKGROUND_IMAGE
ถูกกำหนดไว้แล้ว จากนั้นใช้ภาพหน้าจอนี้เป็นพื้นหลังสำหรับการแสดงข้อความ เพื่อที่จะ
เปิดใช้งานการสนับสนุนภาพพื้นหลัง ผู้ใช้ควรใส่รูปภาพลงในอุปกรณ์บัฟเฟอร์เฟรมด้วย
โปรแกรมดูภาพ สคริปต์ตัวตัดทอนที่ใช้ fbv มีการระบุไว้ด้านล่าง:
#!/ bin / bash
# fbterm-bi: a เสื้อคลุม ต้นฉบับ ไปยัง ทำให้สามารถ พื้นหลัง ภาพ กับ fbเทอม
# การใช้งาน: fbterm-bi /เส้นทาง/ถึง/ภาพ ตัวเลือก fbterm
เสียงสะท้อน - หนึ่ง "\e[?25l" # ซ่อน เคอร์เซอร์
FBV -ซิวเกอร์ "$1" << EOF
q
EOF
เปลี่ยน
ส่งออก FBTERM_BACKGROUND_IMAGE=1
exec fbเทอม "$@"
ข้อควรสนใจ: 1) อย่าเปิดใช้งานภาพพื้นหลังบนอุปกรณ์บัฟเฟอร์เฟรมที่มีความลึก 8bpp
เนื่องจาก FbTerm เปลี่ยนตารางแผนที่สีสำหรับการแสดงข้อความที่ถูกต้อง 2) ถ้าภาพหน้าจอ
ต่างจากภาพต้นฉบับ ลองใช้เฟรมบัฟเฟอร์ที่ปิดใช้งานการเลื่อนอย่างรวดเร็ว
เครื่อง
256 COLOR ส่วนขยาย
FbTerm รองรับส่วนขยายโหมดสีของ xterm 256 สี 16 สีแรกเป็นค่าเริ่มต้น
สีขั้ว นอกจากนี้ยังมีลูกบาศก์สีขนาด 6x6x6 และโทนสีเทา 24 โทน แต่
ลำดับหลีก 256 สีของ xterm ขัดแย้งกับลำดับ linux ที่นำมาใช้โดย
FbTerm จึงมีการแนะนำซีเควนซ์ส่วนตัวเพื่อรองรับคุณลักษณะนี้:
ESC [ 1 ; n } ชุด เบื้องหน้า สี ไปยัง n (0 - 255)
ESC [ 2 ; n } ชุด พื้นหลัง สี ไปยัง n (0 - 255)
ESC [ 3 ; n ; r ; g ; b } ชุด สี n ไปยัง (NS, g, b) , n, r, g, b ทั้งหมด in (0 -
255)
เพิ่มรายการฐานข้อมูล terminfo ใหม่ชื่อ "fbterm" เพื่อใช้ไพรเวตซีเควนซ์เหล่านี้ all
โปรแกรมที่ใช้ terminfo ควรใช้งานได้ โดยค่าเริ่มต้น FbTerm จะตั้งค่าสภาพแวดล้อม
ตัวแปร "TERM" เป็นค่า "linux" ผู้ใช้ต้องเรียกใช้ "TERM=fbterm /path/to/program" เพื่อเปิดใช้งาน
256 โหมดสี
INPUT วิธีการ
แทนที่จะเพิ่มวิธีการป้อนข้อมูลโดยตรงใน FbTerm วิธีการป้อนข้อมูลแบบไคลเอนต์ - เซิร์ฟเวอร์
กรอบถูกออกแบบมาเพื่อทำงานนี้ FbTerm ทำหน้าที่เป็นไคลเอนต์ โปรแกรม IM แบบสแตนด์อโลนเป็น
เซิร์ฟเวอร์และทำงานในกระบวนการที่แยกจากกัน
ในฐานะผู้ใช้ IM ปกติ คุณควรติดตั้งโปรแกรม IM ที่เขียนขึ้นสำหรับ FbTerm และระบุเป็น
มูลค่าของตัวเลือก "วิธีการป้อนข้อมูล" CTRL_SPACE เป็นทางลัดในการเปิด/ปิด
วิธีการป้อนข้อมูล และ CTRL_ALT_K อาจใช้เพื่อฆ่าโปรแกรม IM เมื่อหยุดทำงาน
การรักษาความปลอดภัย หมายเหตุ
FbTerm พยายามเปลี่ยนตารางการแมปคีย์เคอร์เนล linux เป็นทางลัดการตั้งค่าซึ่งต้องใช้
SYS_TTY_CONFIG ความสามารถตั้งแต่เคอร์เนลเวอร์ชัน 2.6.15 หมายความว่า FbTerm ควรเป็น setuid
โปรแกรม 0 เพื่อให้ผู้ใช้ที่ไม่ใช่ root ใช้ทางลัดได้ FbTerm เปลี่ยนเป็นสิทธิ์รูทเท่านั้น
ชั่วคราวเมื่อเปลี่ยนตารางคีย์แมปเราเชื่อว่าค่อนข้างปลอดภัยจากความปลอดภัย
ปัญหา. หากคุณไม่ชอบสิ่งนี้จริงๆ และมีเคอร์เนล linux พร้อมระบบไฟล์
เปิดใช้งานความสามารถ ซึ่งทำให้ผู้ใช้สามารถให้ไบนารีชุดย่อยของพลังของรูทโดยไม่ต้อง
ใช้ setuid 0 (เคอร์เนลอย่างเป็นทางการ 2.6.27 รวมอยู่ด้วย) คุณสามารถเรียกใช้คำสั่ง "sudo ตั้งค่าแคป
'cap_sys_tty_config+ep' /path/to/fbterm".
FbTerm เปลี่ยนเส้นทาง /dev/tty0 เอาต์พุตไปยังเทอร์มินัลหลอกของหน้าต่างย่อยปัจจุบัน ในลินุกซ์
ก่อนเวอร์ชัน 2.6.10 ใครๆ ก็ทำได้ ตราบใดที่เอาต์พุตยังไม่ถูกเปลี่ยนเส้นทาง
ตั้งแต่เวอร์ชัน 2.6.10 เฉพาะรูทหรือโปรเซสที่มี CAP_SYS_ADMIN ความสามารถก็ทำได้
นี้. คุณควรทำงานที่คล้ายกันกับ FbTerm ด้านบนเพื่อเปิดใช้งานคุณสมบัตินี้สำหรับ
ผู้ใช้ที่ไม่ใช่รูท
ประสิทธิภาพ
จากผลการทดสอบ FbTerm ใช้เวลามากกว่า 95% ในการวาดภาพหน้าจอ เร่งความเร็ว
การทาสีจะเพิ่มประสิทธิภาพได้อย่างมาก คำแนะนำสำหรับ frame
อุปกรณ์บัฟเฟอร์:
* เปิดใช้งานการเลื่อนอย่างรวดเร็วบนอุปกรณ์บัฟเฟอร์เฟรม หน้าจอที่มองเห็นได้จะเป็นเพียงแค่หน้าต่าง
ของหน่วยความจำวิดีโอเมื่อเลื่อน FbTerm เพียงเปลี่ยนการเริ่มต้นของหน้าต่างไม่จำเป็นต้อง
ทาสีใหม่ทั้งหน้าจอ
* บนโปรเซสเซอร์ตระกูล Intel P6 อาจใช้ Memory Type Range Registers (MTRRs) เพื่อ
ควบคุมการเข้าถึงโปรเซสเซอร์ในช่วงหน่วยความจำ หากคุณมีการ์ดแสดงผลบนบัส PCI หรือ AGP
การเปิดใช้งานการรวมการเขียนช่วยให้การถ่ายโอนการเขียนของบัสสามารถรวมกันเป็นการถ่ายโอนที่ใหญ่ขึ้น
ก่อนที่จะระเบิดเหนือบัส PCI/AGP สิ่งนี้สามารถเพิ่มประสิทธิภาพการทำงานของสีของ FbTerm
การดำเนินงาน
บางทีคุณอาจต้องเปิดใช้งานด้วยตนเองสำหรับการ์ดวิดีโอของคุณ ตัวอย่างเช่น โดยค่าเริ่มต้น fast
การเลื่อนและการรวมการเขียนทั้งหมดถูกปิดใช้งานบนอุปกรณ์บัฟเฟอร์เฟรม VESA ทั่วไป
ควรแก้ไขไฟล์กำหนดค่า GRUB/LILO เพื่อเปิดใช้งาน มีการแสดงตัวอย่างด้วง
ด้านล่าง:
ชื่อเรื่อง อูบุนตู
รูท (hd0,0)
เคอร์เนล /boot/vmlinuz ro root=LABEL=UBUNTU splash vga=0x317 วิดีโอ=vesafb:ywrap,mtrr:3
เริ่มต้น /boot/initrd.img
คุณสามารถตรวจสอบสถานะการเลื่อนอย่างรวดเร็วด้วย "fbเทอม -v", มีข้อความว่า "scrolling: redraw"
หมายถึงการเลื่อนแบบเร็วถูกปิดใช้งาน หรือเปิดใช้งานอย่างอื่น
ใช้ fbterm ออนไลน์โดยใช้บริการ onworks.net