Điểm:1

Tại sao setxkbmap trong .bashrc hoạt động không liên tục? Tại sao phải mất một lúc để tải sau khi PC đã khởi động?

lá cờ in

tôi đang sử dụng cái này trên .bashrc tập tin:

## PHÍM ĐIỀU KHIỂN TRAO ĐỔI

setxkbmap -option ctrl:swapcaps

Về cơ bản, tôi đã làm điều này vì tôi đang sử dụng Emacs rất nhiều. Nó dường như làm việc hầu hết thời gian.

Thật không may, 2 vấn đề tiếp tục xảy ra:

(i) - Sau khi PC khởi động, sẽ mất một lúc để hoạt động. Điều khiến tôi tò mò không phải là tức thời, vì đây dường như là một thứ gì đó "nhỏ" để thay đổi;

(ii) - Đôi khi, đột ngột, nó ngừng hoạt động, và sau đó, đột nhiên, giao dịch hoán đổi hoạt động trở lại. Điều này đã xảy ra một lần ngày hôm nay.

Mặc dù chỉ là một lần nhưng nó thực sự khó chịu vì tôi đã thay đổi liên kết phím gần đây. Vì vậy, đôi khi tôi đã mắc sai lầm trong khi làm quen với nó. Nếu tôi không thể tin tưởng vào cách bấm phím này, thì những sai lầm sẽ còn xảy ra thường xuyên hơn.

Tôi có một lỗ hổng kiến ​​thức lớn về .bashrc cấu hình tập tin. Có thể, có một số mâu thuẫn trong hồ sơ của tôi. Đây là một kho lưu trữ trên GitHub hiển thị toàn bộ tệp .bashrc.

Cảm ơn.

lá cờ ru
`.bashrc` chỉ được tham chiếu khi thiết bị đầu cuối mở vào trình bao đăng nhập. Trừ khi bạn đang đăng nhập trực tiếp vào trình bao đăng nhập đầu cuối (Bash), nó sẽ không tải khi bắt đầu. Nó cũng có thể không bền bỉ. Môi trường GUI mặc dù không đề cập đến `.bashrc` khi bạn tải lên khi khởi động.
Pedro Delfino avatar
lá cờ in
Cảm ơn, @ThomasWard. Lời giải thích này có rất nhiều ý nghĩa. Bạn có đề xuất một nơi khác để tôi chèn định nghĩa `setxkbmap` này không? Tôi muốn có nó như một thay đổi liên tục và tải lên khi khởi động.
lá cờ ru
Tôi có một vài giải pháp tiềm năng nhưng tôi đang ở cuối một ngày rất dài và chuẩn bị đi ngủ, tôi sẽ chia sẻ suy nghĩ của mình vào ngày mai sau khi ngủ.
Pedro Delfino avatar
lá cờ in
Không vấn đề gì. Xin hãy nghỉ ngơi thoải mái :)
lá cờ ru
THÔNG THƯỜNG điều này được thực hiện trong `/etc/rc.local` nhưng ngày nay điều đó ít nhiều không được chấp nhận để ủng hộ các đơn vị oneshot SystemD khi khởi động. Cái nào sẽ hoạt động cho toàn bộ hệ thống theo đúng nghĩa đen (hoặc dù sao thì chúng cũng nên làm như vậy). Hãy để tôi viết một ví dụ trong một câu trả lời. Nếu nó hoạt động, thật tuyệt, nếu không, chúng tôi sẽ tiếp tục nghiên cứu các giải pháp tiềm năng.
lá cờ ru
Tôi cho rằng câu trả lời cronjob của tôi đã giải quyết vấn đề cho bạn? Đã chuẩn bị viết phương pháp SystemD nhưng sẽ không nếu cronjob giải quyết được.
Điểm:1
lá cờ ru

Vì vậy, một trong những vấn đề bạn đang gặp phải là cái ác đó là ".bashrc chỉ được đọc cho shell Bash trong thiết bị đầu cuối". GUI của bạn KHÔNG phải là shell Bash, vì vậy .bashrc KHÔNG được GUI đọc cho đến khi bạn mở Terminal và sau đó nó kích hoạt/áp dụng thay đổi khóa.

Nếu chúng tôi muốn nó hoạt động trên toàn cầu, nó cần thực thi như một phần của hệ thống độc lập với .bashrc. Có hai tùy chọn: Crontab người dùng của bạn cho @khởi động lại đó là một tên trường hợp đặc biệt. HOẶC, một đơn vị SystemD.

(Tôi đã thử nghiệm cả hai giải pháp, vì vậy tôi không thể nhận xét liệu giải pháp này có hoạt động tốt hơn giải pháp kia hay không).

Trước tiên hãy bắt đầu với tùy chọn công việc định kỳ.

cách tiếp cận công việc định kỳ

Mở thiết bị đầu cuối của bạn và chạy crontab -e.

Thêm dòng này vào nó:

@reboot setxkbmap -option ctrl:swapcaps

Khởi động lại hệ thống của bạn và xem điều này có hoạt động không.

Nếu nó hoạt động, tuyệt vời. Nếu không, thì chúng ta phải thử một cách tiếp cận khác.

Giải pháp dự phòng: Autorun gnome-terminal sau khi đăng nhập

Nếu vẫn thất bại, hãy thêm thiết bị đầu cuối gnome cho các ứng dụng khởi động của bạn.

Đầu tiên, cài đặt ứng dụng khởi động gnome:

sudo apt cài đặt gnome-startup-applications

Thứ hai, tìm kiếm các ứng dụng của bạn cho "Tùy chọn ứng dụng khởi động"

Thêm một mục cho thiết bị đầu cuối gnome. Bằng cách đó, nó sẽ tự động chạy thiết bị đầu cuối.

Pedro Delfino avatar
lá cờ in
Cảm ơn. Nó * gần như * hoạt động. Sau khi khởi động, nó không hoạt động. Nhưng nếu tôi mở vỏ thì nó hoạt động. Điều này đã có thể. Nhưng bây giờ tôi có thể đóng trình bao (thiết bị đầu cuối) và nó vẫn tiếp tục hoạt động!
Pedro Delfino avatar
lá cờ in
Tôi sẽ cố gắng chèn `gnome-terminal` vào tùy chọn khởi động của mình. Vì vậy, tôi nghĩ rằng nó sẽ làm việc.
lá cờ ru
OK, đây có vẻ như là trường hợp chỉ cần thêm gnome-terminal vào các ứng dụng khởi động của bạn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.