ฉันมีแป้นพิมพ์ ( Logitech Waveดังภาพด้านล่าง) ซึ่งฉันมีความสุขมาก น่าเสียดายที่ผู้ผลิตเปลี่ยนปุ่มสำหรับคลิกขวาสำหรับคีย์ FN
มีโปรแกรมใดที่ต้องทำการแมปปุ่ม FN ไปยังสิ่งอื่นหรือไม่?
ฉันมีแป้นพิมพ์ ( Logitech Waveดังภาพด้านล่าง) ซึ่งฉันมีความสุขมาก น่าเสียดายที่ผู้ผลิตเปลี่ยนปุ่มสำหรับคลิกขวาสำหรับคีย์ FN
มีโปรแกรมใดที่ต้องทำการแมปปุ่ม FN ไปยังสิ่งอื่นหรือไม่?
คำตอบ:
SHIFT
+ F10
.
ทางลัดคลิกขวาแป้นพิมพ์ค้างไว้และกดSHIFT
F10
นี่เป็นทางเลือกในกรณีright-click
/ context menu
ปุ่มไม่สามารถใช้ได้
ปุ่ม Fn สามารถตั้งค่าใหม่ได้หรือไม่?
การขุดหาชุดค่าผสม Fn ใหม่ผ่านโปรแกรมเช่น AutoHotKey หรือขุดลงในแป้นพิมพ์สำหรับ Windows ผู้ใช้อาจสามารถตั้งค่ารหัสผสมที่น่ารังเกียจ (Fn + Key) ได้ (ดูคำตอบต่อไปนี้เพิ่มเติม)
เนื่องจากโดยปกติแล้วปุ่ม Fn จะอยู่ที่ระดับฮาร์ดแวร์จึงไม่สามารถแก้ไขหรือปิดการใช้งานสิ่งนี้ได้ในระดับนี้
[Fn] นี่คือรหัสฮาร์ดแวร์ที่ไม่ได้สร้างรหัสแยกต่างหาก
ที่มา: UI เหตุการณ์ค่ารหัสคีย์บอร์ด KeyboardEvent - คำแนะนำผู้สมัคร W3C, 2017
ในคีย์ที่คล้ายกัน F-Lock, Jason Tsang, Microsoft MVP กล่าวว่า:
ปุ่ม F Lock เป็นสวิตช์ฮาร์ดแวร์ในแป้นพิมพ์ สถานะของมันไม่สามารถควบคุมได้โดยทางโปรแกรม เงื่อนไขเริ่มต้นคือ "ปิด" ดังนั้นเมื่อใดก็ตามที่คีย์บอร์ดถูกรีเซ็ตหรือสูญเสียพลังงานปุ่ม F Lock จะอยู่ในสถานะ "ปิด" เสมอ โปรดทราบว่าด้วยคีย์บอร์ด Microsoft ที่วางจำหน่ายหลังเดือนกันยายน 2004 คีย์บอร์ดจะคงสถานะ F Lock ไว้ในการรีบูต
ที่มา: Microsoft Keyboards - ปุ่ม F Lock
Fn ไม่ใช่ปุ่มแป้นพิมพ์ปกติเช่นตัวดัดแปลง Ctrl, Shift และ AltGr สำหรับคีย์ตัวดัดแปลงมาตรฐานไมโครคอนโทรลเลอร์ภายในแป้นพิมพ์จะส่ง scancode สำหรับตัวดัดแปลงซึ่งจะถูกตีความโดยระบบปฏิบัติการและรวมกับการกดปุ่มอื่น ๆ พร้อมกัน ปุ่ม Fn เป็นรูปแบบของคีย์ meta-modifier ซึ่งจะทำให้ระบบปฏิบัติการเห็น scancodes ที่เปลี่ยนแปลงเมื่อกดปุ่มอื่น ๆ บนแป้นพิมพ์ สิ่งนี้ทำให้แป้นพิมพ์จำลองขนาดแป้นพิมพ์ได้โดยตรงดังนั้นระบบปฏิบัติการจึงสามารถใช้แป้นพิมพ์มาตรฐานที่ออกแบบมาสำหรับแป้นพิมพ์ขนาดเต็มได้ อย่างไรก็ตามเนื่องจากระบบปฏิบัติการไม่มีความคิดของปุ่ม Fn คีย์จึงไม่สามารถทำการแมปซ้ำในซอฟต์แวร์ได้ซึ่งแตกต่างจากแป้นคีย์บอร์ดมาตรฐานอื่น ๆ ทั้งหมด
แหล่งที่มา - A) โพสต์ฟอรั่ม highrezน่าจะขึ้นอยู่กับ B) โพสต์วิกิพีเดีย
ทำไมมันมักจะเป็นไปไม่ได้ดูเหมือนว่าจะแมปคีย์ Fn?
อันที่จริงการทำงานของแป้นพิมพ์ดังต่อไปนี้ (ค่าเป็นเพียงตัวอย่างพฤติกรรมจะง่ายขึ้น):
- ปุ่มปกติ: ส่งไบต์ 0x00 + รหัสการสแกนคีย์ไบต์
- ตัวปรับแต่ง (alt / ตัวเลือก, การควบคุม, windows / คำสั่งและ fn): ส่งไบต์ตัวแก้ไข scancode + ไบต์โค้ดสแกนคีย์
- ปุ่มพิเศษ (เช่นเดียวกับ G15): ส่งมาตรฐาน (เช่นปุ่มปรับระดับเสียง) หรือ scancodes แบบกำหนดเอง (ขึ้นอยู่กับผู้ผลิต)
แป้นพิมพ์ "fn" ส่วนใหญ่ (รวมอยู่ในแอปเปิ้ล) เพียงดำเนินการคีย์ผสมก่อนส่งข้อมูลดังนั้นการกดและปล่อยปุ่ม fn จะไม่ทำอะไรเลย ตัวอย่างเช่น:
- กด F1 -> Scancode 0x1A -> ระบบปฏิบัติการรับรู้ว่าเป็นปุ่ม F1
- กด FN และ F1 -> Scancode 0x9A -> ระบบปฏิบัติการรับรู้เป็นคีย์ VolumeUp
- การกด FN -> ไมโครคอนโทรลเลอร์ของแป้นพิมพ์จะรออีกคีย์หนึ่งก่อนส่งข้อมูลใด ๆ
ที่มา: ฟอรัม AutoHotKey
หนึ่งโปสเตอร์บน AutoHotKey เริ่มต้นด้วยคำถามเชิงโวหาร
I don't get any response when I press the Fn key.
ปุ่ม fn ไม่ควรส่งสัญญาณใด ๆ มันคืออะไรเปลี่ยนสัญญาณที่ส่งเมื่อคุณกดปุ่มอื่น ...
ดังนั้นข้อตกลงที่แท้จริงเกี่ยวกับ Fn-key ก็คือมันไม่ได้มีอยู่ในระบบปฏิบัติการดังนั้นคุณไม่สามารถ "ทำการแมปใหม่" ในระบบปฏิบัติการได้ สิ่งที่คุณทำได้คือทำการแมปฟังก์ชั่นรองของบางคีย์โดยทำการตั้งรหัสใหม่เพื่อส่งสัญญาณเดี่ยวที่แก้ไขด้วย fn ...
ดังนั้นโดยทั่วไปการกดปุ่ม fn-key อัตโนมัติจึงไม่สามารถทำได้ อย่างไรก็ตามการทำให้ผลลัพธ์สุดท้ายโดยอัตโนมัตินั้นไม่มีปัญหา! ...
ดังนั้นน่าเสียดายที่ไม่มีระบบอัตโนมัติใดที่จะทำได้ในระดับระบบปฏิบัติการ: คุณจะต้องลงไปที่ระดับฮาร์ดแวร์ / ไดรเวอร์และไม่สามารถทำได้ผ่าน AutoHotKey
ที่มา: AutoHotKeyForum Post
บางคนประสบความสำเร็จในการแมปฟังก์ชัน Fn ใหม่ผ่าน Autohotkey และมีบางคนที่ประสบความสำเร็จในการมองเห็นปุ่ม Fn
... คุณยังคงสามารถสร้างฮ็อตคีย์โดยใช้ขั้นตอนต่อไปนี้:
- ตรวจสอบให้แน่ใจว่ามีสคริปต์อย่างน้อยหนึ่งสคริปต์ที่ใช้เบ็ดแป้นพิมพ์ คุณสามารถบอกได้ว่าสคริปต์มีเบ็ดของคีย์บอร์ดหรือไม่โดยเปิดหน้าต่างหลักและเลือก "ดู -> ประวัติคีย์" จากแถบเมนู
- ดับเบิลคลิกที่ไอคอนถาดของสคริปต์เพื่อเปิดหน้าต่างหลัก
- กดหนึ่งใน "ปุ่มลับ" บนแป้นพิมพ์ของคุณ
- เลือกรายการเมนู "ดู -> ประวัติคีย์" เลื่อนลงไปที่ด้านล่างของหน้า
- บางแห่งที่อยู่ใกล้ด้านล่างคือเหตุการณ์คีย์ - อัพและคีย์ - อัพสำหรับคีย์ของคุณ
- หมายเหตุ: ปุ่มบางปุ่มไม่สร้างเหตุการณ์ดังนั้นจะไม่ปรากฏที่นี่ หากเป็นกรณีนี้คุณไม่สามารถกำหนดให้
ปุ่มลัดนั้นเป็นคีย์โดยตรงเนื่องจากไดรเวอร์แป้นพิมพ์หรือฮาร์ดแวร์ของคุณจัดการที่ระดับต่ำเกินไปสำหรับ AutoHotkey ในการเข้าถึง สำหรับวิธีแก้ไขที่เป็นไปได้ดู
เพิ่มเติมด้านล่าง หากตรวจพบคีย์ของคุณให้จดบันทึก
เลขฐานสิบหก3 หลักในคอลัมน์ที่สองของรายการ (เช่น 159) หากต้องการ
กำหนดคีย์นี้เป็นฮอตคีย์ให้ทำตามตัวอย่างนี้:
SC159:: ; Replace 159 with your key's value.
MsgBox, %A_ThisHotkey% was pressed.
return
ทิศทางกลับกัน: ในการทำการแมปคีย์อื่นให้เป็น "คีย์ลึกลับ" ให้ทำตามตัวอย่างนี้:
; Replace 159 with the value discovered above. Replace FF (if needed) with the
; key's virtual key, which can be discovered in the first column of the Key History screen.
#c::Send {vkFFsc159} ; See Send {vkXXscYYY} for more details.
ที่มา: autohotkey.com/docs/KeyList.htm
ใช้ AutoHotKey สำหรับ Remapping ผ่าน DLL
AutoHotkey เป็นโปรแกรมสร้างแมโครแบบโอเพ่นซอร์สสำหรับ Windows และหนึ่งในคุณสมบัติมากมายของมันคือการสร้างปุ่มลัด Micha หนึ่งในสมาชิกของฟอรัม AHK สร้างไฟล์ DLL เพื่อเพิ่มการสนับสนุนไปยัง AHK สำหรับ Human Interface Devices การใช้ไฟล์ DLL นี้เป็นไปได้ที่จะอ่านคีย์ของ HID ทุกอัน; คีย์บอร์ด, เม้าส์, รีโมทคอนโทรล ฯลฯ
นี่คือสิ่งที่ผู้สร้างกระบวนการ DLL พูดในบทความเก่า:
ก่อนอื่นข้อมูลบางอย่างเกี่ยวกับการทำงานของแป้นพิมพ์และปุ่ม Fn โดยเฉพาะ แต่ละคีย์จะมีรหัสเฉพาะของตัวเองซึ่งเป็นรหัสสแกนซึ่งคอมพิวเตอร์ที่เชื่อมต่ออยู่จะสามารถทราบได้ว่ามีการกดคีย์บางคีย์หรือไม่และเมื่อมีการเปิดตัว ปุ่ม Fn ทำงานแตกต่างกันเล็กน้อย เมื่อคุณกดปุ่ม Fn ค้างไว้มันจะเปลี่ยนรหัสสแกนของ (บางส่วน) ปุ่มอื่น ๆ บนแป้นพิมพ์เพื่อให้ปุ่มเดียวสามารถส่งรหัสสแกนที่แตกต่างกันกลับไปที่คอมพิวเตอร์แต่ละเครื่องเชื่อมต่อกับฟังก์ชั่นที่แตกต่างกัน นั่นเป็นเหตุผลที่ปุ่ม Fn มักใช้กับโน้ตบุ๊กคีย์บอร์ดขนาดเล็กหรือคีย์บอร์ดที่มีปุ่มมัลติมีเดียจำนวนมาก ด้วยวิธีนี้คุณสามารถเพิ่มฟังก์ชั่นมากมายให้กับปุ่มที่ค่อนข้างเล็ก
ปัญหาคือว่าปุ่ม Fn มักจะไม่มีรหัสสแกนของตัวเอง ขึ้นอยู่กับแป้นพิมพ์และคอมพิวเตอร์ที่เชื่อมต่อเป็นไปได้ว่าปุ่ม Fn ไม่สามารถแก้ไขรหัสสแกนของปุ่มอื่น ๆ และไม่สามารถใช้งานได้ เนื่องจากมันยังไม่ส่งรหัสสแกนของตัวเองออกไปจึงไม่มีทางที่คอมพิวเตอร์จะรู้ได้ว่าแม้จะมีปุ่ม Fn ให้ทำสิ่งที่ต้องทำเมื่อกดปุ่มร่วมกับปุ่มอื่น เครื่องมือการแมปใหม่ไม่สามารถช่วยคุณได้เช่นกันเนื่องจากใช้การสแกนรหัส
ตัวอย่างการบันทึกค่าคีย์ Fn ตามคำแนะนำ:
เมื่อทำงานแล้วให้กดปุ่ม Fn ของคุณหรือคีย์พิเศษอื่นแล้วจดค่าที่เกี่ยวข้อง
; Filter bit 5 (Fn key) Transform, FnValue, BitAnd, 16, KeyStatus
โค้ดตัวอย่างสำหรับการแมปฟังก์ชัน Fn ใหม่
;
; Fn + Backspace = Delete
;
$Backspace::hotkeyBS()
hotkeyBS() {
global fnPressed
if (fnPressed = 1) {
Send {Delete}
} else {
Send {Backspace}
}
}
Return
ที่มา: ทำตามคำแนะนำทั้งหมดที่นี่
ดาวน์โหลดที่นี่ ; มีบทความที่นี่
SharpKeys เป็นยูทิลิตี้ที่จัดการคีย์รีจิสทรีที่อนุญาตให้ Windows ทำการแมปหนึ่งคีย์ไปยังคีย์อื่น รวมอยู่ในแอปพลิเคชันคือรายการของแป้นคีย์บอร์ดทั่วไปและคุณสมบัติ Type Key เพื่อจดจำแป้นคีย์บอร์ดส่วนใหญ่โดยอัตโนมัติ เดิมได้รับการพัฒนาใน C # โดยใช้. NET v2 แต่ได้รับการปรับปรุงเพื่อรองรับ. NET 4.0 ไคลเอนต์โปรไฟล์
นอกจากนี้ KeyTweak
KeyTweak เป็นยูทิลิตี้ง่าย ๆ ที่ช่วยให้ผู้ใช้สามารถกำหนดสัญญาณอินพุตคีย์บอร์ดใหม่ได้ ฟังก์ชั่นนี้เกิดขึ้นได้ด้วยค่ารีจิสตรี้ก่อนใน Windows 2000 แต่มีอยู่ใน Windows NT 4.0 ด้วย และรวมอยู่ใน XP, Vista และ Windows 7 ในส่วนนี้จะแสดงรายการคุณสมบัติและเหตุผลบางประการของ KeyTweak ที่คุณอาจต้องการใช้ KeyTweak
เก็บถาวร: คู่มือและการติดตั้งที่นี่
เอกสารและลิงค์ของ Microsoft
โหมดปุ่มการกระทำผ่าน Bios ทำอะไรได้บ้าง
การตั้งค่านี้เปลี่ยนพฤติกรรมเริ่มต้นของปุ่มบนสุดของแป้นพิมพ์แล็ปท็อป มันหมายความว่าอะไร?
หากตั้งค่า“ โหมดคีย์การกระทำ” เป็น“ เปิดใช้งาน” แล้วเพื่อใช้คุณสมบัติเพิ่มเติมที่แสดงเป็นไอคอนที่แถวบนสุดของแป้นพิมพ์คุณไม่จำเป็นต้องกดปุ่ม Fn ค้างไว้ มันต้องถูกยึดเพื่อให้ปุ่มบนทำงานเหมือน F1..F12
ในกรณีที่ "โหมดคีย์การกระทำ" อยู่ในตำแหน่ง "ปิดการใช้งาน" ซึ่งมักจะเป็นค่าเริ่มต้นปุ่มด้านบนจะทำงานได้ตามมาตรฐาน F1 ... F12 และเพื่อใช้งานฟังก์ชั่นขั้นสูงของพวกเขา นอกจากนี้ยึด Fn
ที่มา: การแปลบทความช่วยเหลือของรัสเซีย Ad.ru
Fn
กุญแจใน Ubutnu