Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Wyłącznie system! Wątpliwości dotyczące aplikacji proszę umieszczać niżej, w odpowiednich forach.
capeone
Piegowaty Guziec
Piegowaty Guziec
Posty: 6
Rejestracja: 23 lip 2011, 20:55
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Fluxbox
Architektura: x86

Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Post autor: capeone »

Witam,
Posiadam zepsutą klawiaturę, mianowicie obydwa shifty nie funkcjonują.
Rozwiązaniem mojego problemu w systemie Windows było zmapowanie klawisza Caps Lock do roli Shifta poprzez dodanie jednej linijki do rejestru.
Chciał bym podobną rzecz zrobić w Linuksie, gdyż praca na systemie bez tego klawisza jest niemożliwa.

Mam malutki skrypcik:

Kod: Zaznacz cały

#!/bin/bash
xmodmap -e "remove Lock = Caps_Lock"
xmodmap -e "add Shift = Caps_Lock"
który uruchamiam ręcznie w razie potrzeby. Wadą jest jednak to, że przy uruchomieniu każdej kolejnej sesji terminala muszę skrypt uruchamiać ponownie. (Dlaczego?)

W związku z tym chciał bym aby skrypt, lub same polecenia xmodmapa uruchamiały się automatycznie po zalogowaniu, i były one aktualne przy każdej nowej sesji terminala.

Próbowałem dodać dwie linijki odpowiedzialne za mapowanie do pliku ~/.bash_profile (który musiałem stworzyć, gdyż nie był obecny w katalogu domowym), jednak nie przyniosło to żadnych efektów. Pomyślałem więc o aliasach, aby krótka komenda "cosik" uruchamiała te dwie linijki, jednak alias dodany do ~/.bash_profile również nie był rozpoznawalny (również po restarcie X).

Gdzie popełniam błąd? Czy jest inny sposób na zmapowanie klawiszy? Wcześniej próbowałem zmieniać bodajże /etc/X11/xkb, jednak te rozwiązanie nie przynosiło efektów..
Ostatnio zmieniony 08 lip 2012, 14:10 przez capeone, łącznie zmieniany 2 razy.
Awatar użytkownika
UbuJedrzej
Piegowaty Guziec
Piegowaty Guziec
Posty: 4
Rejestracja: 07 lip 2012, 14:45
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

Re: Problem z .bash_profile - mapowanie klawiszy przy uruchomieniu sesji

Post autor: UbuJedrzej »

Zapisz ten kod w pliku z rozszerzeniem .sh (np. mapowanie.sh)

Kod: Zaznacz cały

#!/bin/bash
xmodmap -e "remove Lock = Caps_Lock"
xmodmap -e "add Shift = Caps_Lock"
Następnie w konsoli wpisz

Kod: Zaznacz cały

chmod +x /ścieżka/do/pliku/mapowanie.sh
Na koniec wybierz 'Programy startowe' z menu znajdującego się w prawym górnym rogu i tam dodaj ten skrypt.
Od teraz powinien on się uruchamiać przy każdym zalogowaniu.
capeone
Piegowaty Guziec
Piegowaty Guziec
Posty: 6
Rejestracja: 23 lip 2011, 20:55
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Fluxbox
Architektura: x86

Re: Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Post autor: capeone »

Na koniec wybierz 'Programy startowe' z menu znajdującego się w prawym górnym rogu i tam dodaj ten skrypt.
Przepraszam, nie zaznaczyłem że korzystam z fluxboxa.

Poniekąd rozwiązałem ten problem dodając skrót klawiszowy fluxboxa w keys, powodując że pewien klawisz wywołuje skrypt. Jednak wciąż przy każdym uruchomieniu konsoli ustawienia wracają do domyślnych i trzeba wywoływać skrypt na nowo...
Awatar użytkownika
UbuJedrzej
Piegowaty Guziec
Piegowaty Guziec
Posty: 4
Rejestracja: 07 lip 2012, 14:45
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

Re: Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Post autor: UbuJedrzej »

W takim razie do pliku ~/.fluxbox/startup dodaj taką linijkę (!! KONIECZNIE PRZED 'exec /usr/bin/fluxbox'!!)

Kod: Zaznacz cały

/ścieżka/do/pliku/mapowanie.sh &
capeone
Piegowaty Guziec
Piegowaty Guziec
Posty: 6
Rejestracja: 23 lip 2011, 20:55
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Fluxbox
Architektura: x86

Re: Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Post autor: capeone »

Próbowałem, zarówno

Kod: Zaznacz cały

/ścieżka/do/pliku/mapowanie.sh &
jak i

Kod: Zaznacz cały

sh /ścieżka/do/pliku/mapowanie.sh &
bez efektów.
Awatar użytkownika
UbuJedrzej
Piegowaty Guziec
Piegowaty Guziec
Posty: 4
Rejestracja: 07 lip 2012, 14:45
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

Re: Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Post autor: UbuJedrzej »

To spróbuj wstawić te linijki bezpośrednio do pliku ~/.xinitrc (wklej je na początku)

Kod: Zaznacz cały

xmodmap -e "remove Lock = Caps_Lock"
xmodmap -e "add Shift = Caps_Lock"
capeone
Piegowaty Guziec
Piegowaty Guziec
Posty: 6
Rejestracja: 23 lip 2011, 20:55
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Fluxbox
Architektura: x86

Re: Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Post autor: capeone »

Również nic. Nie mam pojęcia co źle robię. Jedynie skrót klawiszowy zostaje. Tylko dlaczego przy uruchamianiu każdego nowego okna konsoli ustawienia "wracają do normalnych"? Mimo wszystko dziękuję za pomoc
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Post autor: ethanak »

konsoli czy terminala?
capeone
Piegowaty Guziec
Piegowaty Guziec
Posty: 6
Rejestracja: 23 lip 2011, 20:55
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Fluxbox
Architektura: x86

Re: Mapowanie klawiszy przy uruchomieniu sesji z użyciem .bash_profile

Post autor: capeone »

W dalszym ciągu chodzi mi oczywiście o terminal
ODPOWIEDZ

Wróć do „Instalacja, aktualizacja i konfiguracja Ubuntu”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 7 gości