คำถามติดแท็ก x11

ระบบ X window (โดยทั่วไปคือ X Window System หรือ X11 ซึ่งขึ้นอยู่กับรุ่นหลักในปัจจุบันคือ 11) เป็นระบบซอฟต์แวร์คอมพิวเตอร์และโปรโตคอลเครือข่ายที่ให้พื้นฐานสำหรับส่วนต่อประสานกราฟิกผู้ใช้ (GUI) สำหรับคอมพิวเตอร์เครือข่าย

10
จะรู้ได้อย่างไรว่า Wayland หรือ X11 กำลังถูกใช้งาน
ดังนั้นฉันเพิ่งติดตั้ง Kali Linux ล่าสุดบนแล็ปท็อปของฉันซึ่งใช้ Debian 7 (เก่า) จากนั้นฉันก็อัพเกรดทุกอย่างให้เป็น Debian 8 ฉันต้องการ Wayland แทนที่จะเป็น X11 เสมอดังนั้นฉันจึงติดตั้งแพ็คเกจที่จำเป็น จากนั้นสร้างการ~./config/weston.iniกำหนดค่าขั้นต่ำ ตอนนี้จากหน้าจอลงชื่อเข้าใช้ Gnome: ฉันสามารถบูตไปที่Gnome on WaylandหรือLXDE(ในหมู่อื่น ๆ ) ก่อนหน้านี้มีความสำเร็จที่ จำกัด มากและอันหลัง (LXDE) เกือบจะสมบูรณ์แบบแม้ว่าแผงควบคุมต้องติดตั้ง (ฉันต้องค้นหา freedesktop) อย่างไรก็ตามใน LXDE GUI ตอบสนองได้ดีกว่าในรุ่นเก่าและอาจเร็วเมื่อเปิดใช้งาน windows 7 ฉันยินดี แต่ฉันอยากรู้ว่านี่เป็นเพราะการอัพเกรดไลบรารี่ / โมดูลจาก Debian 7 เป็น 8 หรือจากการใช้ Wayland (ถ้าฉันใช้ Wayland เลย) ฉันอ่านผ่าน …
164 linux  x11  wayland 

2
คีย์บอร์ดอินพุตและเอาต์พุตข้อความทำงานอย่างไร
สมมติว่าฉันกดAปุ่มในตัวแก้ไขข้อความและสิ่งนี้แทรกตัวละครaในเอกสารและแสดงบนหน้าจอ ฉันรู้ว่าแอปพลิเคชันตัวแก้ไขไม่ได้สื่อสารโดยตรงกับฮาร์ดแวร์ (มีเคอร์เนลและสิ่งต่าง ๆ อยู่ระหว่างนั้น) ดังนั้นสิ่งที่เกิดขึ้นภายในคอมพิวเตอร์ของฉัน

4
เปิดหน้าต่างบนจอแสดงผล X ระยะไกล (ทำไม“ ไม่สามารถเปิดจอแสดงผล”)
กาลครั้งหนึ่ง, DISPLAY=:0.0 totem /path/to/movie.avi หลังจากเข้าสู่เดสก์ท็อปจากแล็ปท็อปของฉันจะทำให้โทเท็มเล่นmovie.aviบนเดสก์ท็อป ตอนนี้มันทำให้เกิดข้อผิดพลาด: No protocol specified Cannot open display: ฉันติดตั้ง Debian squeeze ใหม่อีกครั้งเมื่อมันเสถียรในคอมพิวเตอร์ทั้งสองเครื่องและฉันเดาว่าตัวเองยากจน config ฉันทำสิ่งนี้และไม่สามารถใช้ชีวิตของฉันเพื่อค้นหาสิ่งที่ฉันควรจะทำ (VLC มีอินเตอร์เฟส HTTP ที่ใช้งานได้ แต่ไม่สะดวกเท่ากับ ssh) ปัญหาเดียวกันเกิดขึ้นเมื่อฉันพยายามเรียกใช้จากงาน cron
81 ssh  x11  cron 

6
วิธีรับรหัสสำหรับ xmodmap
ฉันพยายามใช้xmodmapเพื่อทำการแมปใหม่Alt/ Superแป้นบนแป้นพิมพ์ Dell L100 และมีปัญหาในการรับรหัส ตัวอย่างเช่นการใช้xevไม่ได้ให้รหัสกุญแจแก่ฉันAlt FocusOut event, serial 36, synthetic NO, window 0x4a00001, mode NotifyGrab, detail NotifyAncestor FocusIn event, serial 36, synthetic NO, window 0x4a00001, mode NotifyUngrab, detail NotifyAncestor KeymapNotify event, serial 36, synthetic NO, window 0x0, keys: 122 0 0 0 0 0 0 0 0 0 0 …

5
กระบวนการใดที่สร้างหน้าต่าง X11 นี้
รับ ID หน้าต่าง X11 มีวิธีหา ID ของกระบวนการที่สร้างมันขึ้นมาหรือไม่? แน่นอนว่ามันเป็นไปไม่ได้เสมอไปเช่นถ้าหน้าต่างมาผ่านการเชื่อมต่อ TCP สำหรับกรณีนี้ฉันต้องการ IP และพอร์ตที่เกี่ยวข้องกับ remote end คำถามที่ถูกถามก่อนใน Stack Overflowและวิธีการที่เสนอคือการใช้_NET_WM_PIDคุณสมบัติ แต่นั่นถูกกำหนดโดยแอปพลิเคชัน มีวิธีทำอย่างไรหากแอปพลิเคชันเล่นได้ไม่ดี?
75 process  x11 

4
“ .xsession” คืออะไร
วัตถุประสงค์ของ.xsessionไฟล์ในโฮมโฟลเดอร์คืออะไร? สิ่งที่ควรใส่ในนั้น สภาพแวดล้อมเดสก์ทอปไม่ได้ใช้ไฟล์ที่และสำหรับการเริ่มต้นจาก X TTY .xinitrcมี
62 xorg  x11  login 

2
ความแตกต่างระหว่าง. Xiitrc, .xsession และ. xsessionrc
ฉันพบไฟล์กำหนดค่าสามไฟล์ .xinitrc .xsession .xsessionrc ฉันรู้ว่าตัวแรกใช้สำหรับการใช้งานstartxและตัวที่สองและสามใช้เมื่อใช้ตัวจัดการการแสดงผล แต่ความแตกต่างระหว่างสองครั้งสุดท้ายคืออะไร?
55 x11  login  startx  xinit 

3
คัดลอกไฟล์ไปที่ xclip และวางใน Firefox
ฉันจัดการไฟล์ไปที่ xclip cat file.txt | xclip ฉันกำลังวางโดยไม่มีปัญหา xclip -o เมื่อฉันต้องการที่จะวางไว้FirefoxกับCtrl+Vมันวางข้อความเก่า (ที่ไม่ควรอยู่ในคลิปบอร์ด) เมื่อฉันกลับไปที่เทอร์มินัลและเรียกใช้xclip -oจะวางข้อความที่ถูกต้อง ทำไมถึงมีปัญหาเกี่ยวกับการวางกับFirefox?

4
ฉันสามารถ "ลาก" ไฟล์ไปที่หน้าต่างโดยไม่มีตัวจัดการไฟล์
(ฉันใช้งานบน Linux Linux โดยใช้ i3 เป็น wm และ xterm ของฉันเป็นเทอร์มินัลอีมูเลเตอร์ของฉันแม้ว่าฉันจะไม่รู้ว่ามีสิ่งใดบ้างที่เกี่ยวข้อง) บางครั้งเว็บไซต์ขอให้ฉันลากไฟล์ด้วยเมาส์จากเดสก์ท็อปของฉันไปที่หน้าต่างของอินเทอร์เน็ตเบราว์เซอร์ เกือบตลอดเวลามีทางเลือกอื่น แต่เมื่อเร็ว ๆ นี้ฉันพบสิ่งที่ฉันต้องการทำนั่นต้องใช้การลากและวาง น่าเสียดายที่ฉันไม่มีตัวจัดการไฟล์ ฉันสำรวจระบบไฟล์ของคอมพิวเตอร์ของฉันผ่านการทุบตีเท่านั้น มีวิธีที่ฉันสามารถปลอมการกระทำลากและวางหรือไม่ ฉันจะบอกเบราว์เซอร์ของฉันว่า "ฉันเพิ่งส่งไฟล์นี้ไปยังคุณ" โดยไม่ต้องทำจริงเหรอ? สถานการณ์กรณีที่เลวร้ายที่สุดฉันสามารถดาวน์โหลดตัวจัดการไฟล์กราฟิกโดยเฉพาะเพื่อวางไฟล์ลงในเว็บเบราว์เซอร์ของฉัน แต่ฉันต้องการหลีกเลี่ยงการแก้ปัญหานั้น

5
จะส่งการกดแป้น (F5) จากเทอร์มินัลไปยังโปรแกรม GUI ได้อย่างไร
ฉันใช้ Raspberry Pi ร่วมกับ Chromium (โหมดคีออสก์) เพื่อแสดงสถิติ พี่ไม่ได้มีแป้นพิมพ์ที่เกี่ยวโยงกันดังนั้นผมจึงสืบค้นหาวิธีการแก้ปัญหาการกดแป้นพิมพ์ส่งจากสถานีไปยังกระบวนการโครเมี่ยม (แท็บ) อินพุตปกติใช้งานได้ แต่ฉันจะส่งบางสิ่งเช่นF5(คีย์พิเศษ: การรีเฟรชเบราว์เซอร์) ผ่านทางโซลูชันนี้ได้อย่างไร # pidof chromium 20809 20790 20788 20786 20783 # echo 'some text' > /proc/20809/fd/0
40 process  x11  input 

8
เหตุใดฉันจึงไม่สามารถเรียกใช้แอป GUI จาก "รูท": "ไม่ได้ระบุโปรโตคอล"
ฉันติดตั้งเดเบียนลงบนเครื่องเมื่อคืนนี้ ตอนนี้ฉันไม่เข้าใจว่าทำไมฉันไม่สามารถเรียกใช้แอพ GUI จากเทอร์มินัลเมื่อทำงานเป็นรูท ตัวอย่างเช่น: sudo -i glxgears สร้างเอาต์พุตต่อไปนี้: No protocol specified Error: couldn't open display :0 แต่เมื่อฉันเปิดเทอร์มินัลครั้งแรกฉันสามารถเรียกใช้glxgearsจากบัญชีผู้ใช้ หลังจากที่ฉันทำอย่างsudo -iนั้นปัญหาก็จะหมดไป สิ่งนี้เกิดขึ้นสำหรับแอพ GUI ใด ๆ ที่ฉันพยายามเรียกใช้ ฉันคิดว่ามันอาจเกี่ยวข้องกับ X11 แต่ฉันไม่แน่ใจ
38 debian  x11  kde  gui 

6
ฉันจะค้นหาขนาดและตำแหน่งหน้าต่างอย่างถูกต้องรวมถึงการตกแต่งได้อย่างไร
ฉันพยายามหาขนาดของหน้าต่างเพื่อใช้ในสคริปต์ขนาดเล็ก เทคนิคปัจจุบันของฉันใช้wmctrl -lGเพื่อค้นหาขนาด อย่างไรก็ตามปัญหาคือ: ตัวเลข x และ y ที่ให้ไว้สำหรับด้านบนซ้ายของการตกแต่งหน้าต่างในขณะที่ความสูงและความกว้างใช้สำหรับพื้นที่เนื้อหาเท่านั้น ซึ่งหมายความว่าหากการตกแต่งหน้าต่างเพิ่มความสูง 20px และความกว้าง 2px wmctrl จะรายงานหน้าต่างเป็น 640x480 แม้ว่าจะใช้เวลาถึง 660x482 บนหน้าจอ นี่เป็นปัญหาเนื่องจากขั้นตอนต่อไปของสคริปต์ของฉันคือการใช้พื้นที่นั้นเพื่อบอก ffmpeg เพื่อบันทึกหน้าจอ ฉันต้องการหลีกเลี่ยงการเข้ารหัสในขนาดของการตกแต่งหน้าต่างจากการตั้งค่าปัจจุบันของฉัน สิ่งที่เหมาะสมกับวิธีการรับขนาดของการตกแต่งหน้าต่างเพื่อให้ฉันสามารถใช้เพื่อหาตำแหน่งของพื้นที่เนื้อหา 640x480 หรือวิธีการรับตำแหน่งของพื้นที่เนื้อหาโดยตรงไม่ใช่ของตกแต่งหน้าต่าง .

5
ฉันจะปรับขนาดตัวจัดการหน้าต่าง i3 สำหรับการแสดงผล HiDPI ของฉันได้อย่างไร
ฉันมี Dell XPS 13 9343 2015 ที่มีความละเอียด 3200x1800 พิกเซล ฉันพยายามที่จะใช้ตัวจัดการ windows i3 บนมัน แต่ทุกอย่างเล็กและอ่านยาก ฉันจัดการเพื่อการใช้งานทุกขนาด (Firefox, terminal, ฯลฯ ... ) โดยใช้.Xresources: ! Fonts {{{ Xft.antialias: true Xft.hinting: true Xft.rgba: rgb Xft.hintstyle: hintfull Xft.dpi: 220 ! }}} แต่อินเทอร์เฟซ i3 ยังไม่ปรับขนาด ... ฉันเข้าใจว่าxrandr --dpi 220อาจแก้ปัญหาได้ แต่ฉันไม่รู้ว่าจะใช้ยังไง / ที่ไหน ใครช่วยสอนฉันเกี่ยวกับปัญหานี้ได้ไหม

6
ฉันจะตั้งค่าความไวของเมาส์ไม่ใช่แค่การเร่งความเร็วของเมาส์ได้อย่างไร
ฉันไม่พบสภาพแวดล้อมเดสก์ท็อปเดียวที่รองรับการตั้งค่าทั้งการเร่งความเร็วเมาส์และความไวของเมาส์ ฉันไม่ต้องการเร่งความเร็วของเมาส์ แต่ต้องการเพิ่มความเร็วของเมาส์ นั่นหมายความว่าถ้าฉันเลื่อนเมาส์ในระยะทางเดียวกันตัวชี้จะเคลื่อนที่ในระยะทางเดียวกันทุกครั้งไม่ว่าฉันจะขยับเมาส์เร็วแค่ไหนก็ตาม KDE จะให้ฉันตั้งค่าการเร่งความเร็วของเมาส์เป็น 1x แต่เลื่อนเมาส์ช้าเกินไปและฉันไม่สามารถหาวิธีเพิ่มความเร็วได้ ฉันยินดีที่จะยอมรับโซลูชัน CLI แต่ฉันสามารถxinputเปลี่ยนการเร่งความเร็วได้เท่านั้น ฉันจำไม่ได้ว่ามีโชคมากxsetเช่นกัน
35 x11  kde  mouse  xinput 

1
X, Xorg และ D-Bus: ความแตกต่างคืออะไร?
ในกระบวนการของการเรียนรู้ที่จะทำบางสิ่งในการเขียนโปรแกรม GUI (เช่นการจองพื้นที่บนหน้าจอสำหรับแอปพลิเคชัน) ฉันต้องเรียนรู้เพิ่มเติมเกี่ยวกับ Window Manager โดยปกติคือ X11 บน Linux (ฉันไม่แน่ใจว่ามีของ distro ซึ่งใช้อย่างอื่นนอกเหนือจาก X11 ถึงแม้ว่าฉันเคยได้ยินเกี่ยวกับWaylandซึ่งยังไม่ได้นำมาใช้เลย) ฉันค่อนข้างใหม่กับการเขียนโปรแกรมและใจร้อน ดังนั้นฉันแค่ดำน้ำเข้าไป ตอนนี้ฉันกำลังอ่าน ICCCM ด้วยความหวังว่าจะได้เรียนรู้เพิ่มเติม อย่างไรก็ตามเอกสารนี้มีจุดมุ่งหมายเพื่อสาธารณะที่รู้ (ทาง) มากกว่าฉัน ดังนั้นฉันจึงพบข้อมูลบางอย่างและฉันชอบที่จะรับการชี้แจงบางอย่าง ส่วนที่ 2ของคำพูดของ ICCCM: โปรดทราบว่าข้อมูลทั้งหมดที่ถ่ายโอนระหว่างเจ้าของและผู้ร้องขอจะต้องผ่านเซิร์ฟเวอร์ในสภาพแวดล้อม X Version 11 ลูกค้าไม่สามารถคิดได้ว่าลูกค้ารายอื่นสามารถเปิดไฟล์เดียวกันหรือแม้กระทั่งสื่อสารโดยตรง ไคลเอ็นต์อื่นอาจกำลังพูดคุยกับเซิร์ฟเวอร์โดยใช้กลไกเครือข่ายที่แตกต่างกันโดยสิ้นเชิง (ตัวอย่างเช่นไคลเอ็นต์หนึ่งอาจเป็น DECnet และ TCP / IP อื่น) ดังนั้นการส่งผ่านการอ้างอิงทางอ้อมไปยังข้อมูล (เช่นชื่อไฟล์ชื่อโฮสต์และหมายเลขพอร์ตและอื่น ๆ ) จะได้รับอนุญาตเฉพาะในกรณีที่ลูกค้าทั้งสองตกลงกันเป็นพิเศษ เท่าที่ฉันเข้าใจ X Window Manager สร้างขึ้นบนสุดของ …

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