Tại sao lệnh xmodmap của tôi không chạy khi khởi động / đăng nhập?


13

Tôi muốn chạy lệnh này mỗi lần tôi đăng nhập (hoặc mỗi lần tôi khởi động, nếu nó không hoạt động): xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'

Tôi đã thử nhiều thứ. Tôi đặt lệnh vào System > Preferences > Startup Applications. Tôi đặt nó trong một .shtập tin, đánh dấu nó chmod +xvà đặt tập tin đó vào System > Preferences > Startup Applications. Tôi đặt kịch bản vào /etc/init.d. Tôi đặt các lệnh vào ~/.profile. Dường như không có gì để làm việc

Cuối cùng, tôi đặt cái này vào ~/.profile:

touch test1
xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'
touch test2

Cả test1 và test2 đều được tạo, nhưng các phím vẫn không được ánh xạ lại. Nếu tôi chỉ sao chép / dán lệnh và chạy thủ công, nó hoạt động tốt. Nhưng nó sẽ không chạy khi đăng nhập. Có ý kiến ​​gì không?


không đăng cùng một câu hỏi trên nhiều trang web Stack Exchange (trừ khi câu hỏi thuộc chủ đề trên cả hai trang web bạn đã chờ đợi rất lâu và không có câu trả lời hay nào trên trang web đầu tiên; nhưng sau đó bao gồm một liên kết đến bản gốc câu hỏi).
Gilles 'SO- ngừng trở nên xấu xa'

@Gilles: Đó có phải là chính sách chính thức? Có vẻ như nếu nó thuộc chủ đề trên cả hai trang web, thì cả hai trang web đều có thể hưởng lợi từ nó. Nhưng nếu điều này đã được thảo luận và quyết định, tôi sẽ cẩn thận trong tương lai.
Matthew

Tôi nghĩ rằng có một mục FAQ chính thức về điều này, nhưng tôi không thể tìm thấy nó. Tôi đã hỏi về meta .
Gilles 'SO- ngừng trở nên xấu xa'

Câu trả lời:


5

Tùy thuộc vào phân phối của bạn, ~/.xsessiontệp được thực thi (tập lệnh shell) khi đăng nhập vào X. Và / hoặc ~/.Xmodmaptệp có nguồn gốc bởi một xmodmapquy trình.

Các ~/.profiletập tin được chỉ thực hiện bởi một vỏ đăng nhập (có hoặc không có X), do đó nó không phải là nơi phù hợp


6

Đặt nó vào ~/.Xmodmap. Một số distro tìm kiếm ~/.Xmodmapthay vì ~/.xmodmaprc. Nó hoạt động với tôi trên Fedora 16.


Đây là giải pháp tốt nhất trên debian
UnLoCo

1

Đặt nó vào ~/.xsessionrcvà chắc chắn rằng /etc/X11/Xsession.optionscó chứa allow-user-xsession.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.