- เครื่องมือสำหรับสลับแหล่งอินพุตของมอนิเตอร์ (DisplayPort, HDMI, USB-C ฯลฯ) จากบรรทัดคำสั่งผ่านโปรโตคอล DDC/CI รองรับทั้ง Windows/macOS/Linux
- สามารถระบุแหล่งอินพุตโดยตรงได้ด้วยการเติม
=แหล่งอินพุตต่อท้ายชื่อ/อินเด็กซ์monitor-input Dell=dp1→ ตั้งค่ามอนิเตอร์ทั้งหมดที่มีคำว่า "Dell" เป็น DisplayPort1monitor-input 0=usbc1→ ตั้งค่ามอนิเตอร์ตัวแรกเป็น USB-C1
- เมื่อรันโดยไม่มีอาร์กิวเมนต์ จะแสดงรายการมอนิเตอร์ที่เชื่อมต่อทั้งหมด พร้อมฟิลด์ชื่อ/ Input Source ปัจจุบัน/Backend ในแต่ละรายการ
- สามารถค้นหา/ดูข้อมูลมอนิเตอร์เฉพาะตัวได้ด้วยบางส่วนของชื่อ หรือ อินเด็กซ์ (ตัวเลข)
monitor-input Dellจะแสดงรายการมอนิเตอร์ทั้งหมดที่มีคำว่า "Dell" ในชื่อ,monitor-input 2จะดูมอนิเตอร์อินเด็กซ์หมายเลข 2
- รองรับแหล่งอินพุต เฉพาะผู้ผลิต (vendor-specific) ที่ไม่เป็นมาตรฐาน โดยใส่ตัวเลขเป็นแหล่งอินพุต
monitor-input U2723=15 P3223=17
- รองรับ ฟังก์ชัน toggle/cycle สำหรับลงทะเบียนแหล่งอินพุตตั้งแต่สองรายการขึ้นไปด้วยเครื่องหมายจุลภาค (
,) แล้วสลับตามสถานะปัจจุบันP3223=hdmi1,usbc2→ toggle ระหว่าง HDMI1 กับ USBC2, และสามารถวนมากกว่า 3 รายการได้ เช่นhdmi1,usbc2,dp1
- ฟังก์ชัน toggle สำหรับหลายมอนิเตอร์: เมื่อสลับมอนิเตอร์หลายตัวพร้อมกัน จะใช้ แหล่งอินพุตปัจจุบันของมอนิเตอร์ตัวแรก เป็นเกณฑ์เพื่อปรับตัวอื่นให้สอดคล้องกัน
- ใน
monitor-input U2723=dp1,usbc2 P3223=hdmi1,usbc2หากแหล่งอินพุตของมอนิเตอร์ตัวแรกU2723เป็นDisplayPort1จะเปลี่ยนเป็นUsbC2 - เมื่อมอนิเตอร์ตัวแรกเปลี่ยนเป็นแหล่งที่สองในรายการ มอนิเตอร์ตัวถัด ๆ ไปก็จะเปลี่ยนเป็น แหล่งที่สอง ของรายการตัวเองเช่นกัน (เช่น
P3223เป็นUsbC2)
- ใน
- บน Windows มี เวอร์ชัน subsystem (monitor-inputw.exe) ที่ไม่เปิดหน้าต่างคอนโซลด้วยออปชัน
-F winappและแสดงข้อผิดพลาดเป็นการแจ้งเตือน toast - นอกจากการรันผ่านบรรทัดคำสั่งแล้ว ยังเปิดให้ใช้ในรูปแบบ ไลบรารี (as library) เพื่อเรียกจากโค้ด Rust อื่นได้โดยตรง
8 ความคิดเห็น
ผมใช้ Mac Mini กับโน้ตบุ๊ก Windows ร่วมกับจอ DELL 2 ตัวอยู่ครับ
Dell 1 ต่อไว้กับ Mac Mini อย่างเดียว
ส่วน Dell 2 ต่อไว้กับทั้ง Mac Mini และโน้ตบุ๊ก Windows
ผมติดตั้ง Dell Display and Peripheral Manager บน Windows แล้วตั้งฮอตคีย์ (Ctrl + Space) ไว้ เพื่อสลับหน้าจอของ Dell 2 ระหว่าง Mac กับ Windows ตามเวลาที่ต้องการใช้งาน
เครื่องมือที่แนะนำมาก็ดูน่าจะมีประโยชน์เหมือนกัน ไว้เร็ว ๆ นี้คงต้องลองเอามาใช้ดูครับ!
ผมใช้จอเดียวสลับไปมาระหว่าง Windows กับ Mac ครับ
จอ DELL U4025QW ไม่มีปุ่มกดครั้งเดียวเพื่อเปลี่ยน input source ต้องเข้าเมนูไปหาแล้วกดเปลี่ยน ผมเลยใช้เครื่องมือนี้ทำเป็นสคริปต์ไว้ใช้งานครับ
ของผมฝั่ง Windows เสียบไว้ที่ dp1 ส่วน Mac เสียบไว้ที่ usbc1
บน Mac ใส่ใน
.zshrcว่าalias mon='monitor-input 0=dp1'บน Windows เปิด
notepad $PROFILEแล้วเพิ่มfunction mon { monitor-input 0=usbc1 }ต่อไปนี้ทำแบบนี้แล้ว แค่พิมพ์ mon ในเชลล์ของ Windows หรือ Mac หน้าจอก็จะสลับไปมาได้เลยครับ
ผมใช้แล้วพอใจมาก เลยเอามาแนะนำครับ
โอ้ ไม่รู้มาก่อนเลยว่าทำแบบนี้ได้ เคล็ดลับดีมาก ขอบคุณครับ
ว้าว เซ็ตอัปเหมือนผมเป๊ะเลยครับ ปกติต้องกดปุ่มบนจอทุกครั้งนี่น่ารำคาญมาก เอาไปใช้เลยครับ..
ผมมีจอภาพ/คีย์บอร์ด/เมาส์อย่างละหนึ่งตัว แต่มีอุปกรณ์ที่ต้องเชื่อมต่ออยู่ 3 เครื่อง เลยใช้งานด้วยวิธีเสียบดองเกิลไว้กับ Raspberry Pi แล้วติด ESP32 กับอุปกรณ์เครื่องอื่น ๆ เพื่ออ้อมผ่าน WiFi ครับ ตอนนั้นผมลำบากมากกับการพยายามให้สลับจอภาพไปพร้อมกับการสลับอินพุตคีย์บอร์ดและเมาส์ ถ้ารู้จักเจ้านี่ล่วงหน้า อาจจะสะดวกกว่านี้ก็ได้ครับ ขอบคุณสำหรับบทความดี ๆ ครับ
บน Ubuntu 24.04 ของผมใช้ไม่ได้เลย... เศร้าจัง..
เห็นเขียนไว้ว่าต้องติดตั้ง
libudevแล้วถึงทำแบบนั้นก็ยังไม่ได้เหรอครับ?$ sudo apt install libudev-dev
แพ็กเกจ libudev-dev เป็นเวอร์ชันล่าสุดอยู่แล้ว (255.4-1ubuntu8.16)
$ sudo apt install librust-udev-dev
แพ็กเกจ librust-udev-dev เป็นเวอร์ชันล่าสุดอยู่แล้ว (0.8.0-1)
$ monitor-input
Error: No display monitors found for "".
ผมต่อไว้สองเส้นคือ DP กับ HDMI แต่มันตรวจไม่เจอครับ
ขี้เกียจขุดลึกต่อ เลยสรุปว่าใช้ไม่ได้แล้วปล่อยไปครับ