Cách switch phím fn trên linux khi sử dụng bàn phím Keychron K2

Nội dung

Update 29/02/2020:

Với cách cũ ( sudo tee ) các thiết đặt sẽ mất tác dụng khi khởi động lại máy. Mình tìm ra cách sửa trực tiếp kernel cho nó tự áp dụng thiết đặt khi khởi động:

Các bạn thêm 2 dòng sau vào file /etc/modprobe.d/hid_apple.conf nếu file chưa tồn tại hãy tạo mới:

sudo nano /etc/modprobe.d/hid_appple.conf

thêm vào

options hid_apple fnmode=1
options hid_apple swap_opt_cmd=1

Mình dùng nano để sửa file nên sẽ bấm Ctrl + X chọn Yes để lưu file. Bạn nào dùng vim thì bấm Esc rồi :wq để lưu file nhé.

Sau đó cập nhật kernel và khởi động lại máy bằng lệnh:

sudo update-initramfs -u && reboot

Bài viết gốc:

Ở một số bàn phím cơ (như của mình là Keychron K2) thì hàng phím chức năng F1-F12 mặc định sẽ phải bấm kèm phím Fn thì mới sử dụng được. Chẳng tiện chút nào khi đặc thù mình phải bấm mấy phím này rất nhiều, đặc biệt phím F12.

Research một chút mình tìm được ảnh này:

Để chuyển đổi hàng phím chức năng bạn cần bật Terminal lên và gõ lệnh:

sudo echo 0 | tee /sys/module/hid_apple/parameters/fnmode

Để chuyển đổi ngược lại bạn dùng lệnh:

sudo echo 1 | tee /sys/module/hid_apple/parameters/fnmode

Để chuyển đổi giữa phím opt và cmd ( ở linux và windows thì là left alt và windows )

sudo echo 1 | tee /sys/module/hid_apple/parameters/swap_opt_cmd

Source: https://www.reddit.com/r/MechanicalKeyboards/comments/cp4ifh/does_the_keychron_k2_wireless_feature_work_with/

Anthony Nguyễn

Cây bút chính tại VietnamTutor

Bài viết cùng chuyên mục

Vibe coding và nợ kỹ thuật thầm lặng: kiểm soát bằng kỹ thuật ngữ cảnh

Vibe coding tăng tốc nhưng âm thầm tích lũy nợ kỹ thuật. Bài này giải thích vì sao và cách context engineering giúp bạn giữ codebase

Git stash: lưu tạm công việc dở và khôi phục đúng lúc

Git stash cho phép lưu tạm các thay đổi chưa commit để chuyển sang task khác, rồi khôi phục lại đúng lúc — tránh commit dở

Git rebase bị conflict: cách sửa hoặc abort an toàn

Hướng dẫn xử lý git rebase bị conflict: cách kiểm tra file lỗi, sửa conflict marker, tiếp tục rebase, abort an toàn và khi nào không

Bảo mật vibe coding: đừng để AI sinh lỗ hổng website

Bảo mật vibe coding không chỉ là quét lỗi sau khi AI viết code. Bài viết đưa ra checklist kiểm soát secret, prompt injection, dependency, auth

Kiểm thử code do AI tạo: danh sách kiểm tra trước khi deploy

Code do AI tạo cần được kiểm thử theo nhiều lớp trước khi lên website thật. Checklist này giúp bạn kiểm tra chức năng, bảo mật,

Lỡ push .env lên Git: cách xử lý secret bị lộ

Lỡ push .env lên Git không chỉ là lỗi xóa file. Hãy revoke hoặc rotate secret trước, rồi dọn Git history và ngăn sự cố lặp

Quy trình vibe coding 7 bước: từ ý tưởng đến prototype

Quy trình vibe coding hiệu quả bắt đầu từ giả thuyết kinh doanh, không phải prompt dài. Bài viết hướng dẫn 7 bước từ brief, dữ

Vibe coding cho doanh nghiệp: việc nào nên làm bằng AI?

Vibe coding cho doanh nghiệp hữu ích khi cần thử prototype, dashboard hoặc automation nhỏ. Bài viết giúp bạn phân loại use case theo mức rủi

AI viết code nhanh hơn review: kiểm soát thế nào?

Khi AI viết code nhanh hơn khả năng review của team, doanh nghiệp cần đổi cách kiểm soát chất lượng. Bài viết đưa ra framework thực

Git detached HEAD là gì? Cách thoát an toàn

Bài viết này giải thích detached HEAD trong Git, cách nhận biết trạng thái này và các bước thoát ra an toàn mà không mất code.

Rủi ro vibe coding: 9 lỗi khiến prototype khó vận hành

Bài viết này chỉ ra 9 rủi ro phổ biến khi vibe coding và cách kiểm soát để prototype không biến thành gánh nặng vận hành.

Vibe coding là gì? Cách thử ý tưởng phần mềm bằng AI

Vibe coding giúp chủ doanh nghiệp biến ý tưởng phần mềm thành prototype nhanh hơn bằng AI. Bài viết này chỉ ra khi nào nên thử,