# Symlink klawiszy - jak?

## nUmer_inaczej

Witam.

 Mam klawiaturę multimedialną. Pragnąc wykorzystać dodatkowe klawisze do obsługi mplayera:

```
mplayer -input keylist
```

 zwraca mi listę symlinków klawiszy, które jednak nie występują w mapie klawiatury pokazane przez 

```
xmodmap -pk
```

 W jaki sposób mogę najlepiej zmienić symlinki klawiszy, ewentualnie utworzyć nowe pod nowymi kodami za pomocą setkeycodes?

Dla lepszego zobrazowania: pragnę dodać symlink XF86NEXT, bądź podmienić na istniejący XF86AudioNext

----------

## SlashBeast

xmodmap i np. w configu:

```
keycode 123 = XF86AudioRaise

keycode 121 = XF86AudioMute
```

Ja uzywam xmodmap'a do zdjecia symboli z klawiszy multimednialnych, bym mogl je bindowac w actkbd bez problemu, inaczej dzialaja i w actkbd i potem np. mplayer software mixer mi przycisza.

----------

## nUmer_inaczej

rozumiem, że Twoj actkbd.conf wygląda na wzór:

```

113:key:exec:amixer -q set Master toggle

```

W jaki sposób wydajesz za pomocą tego programu mplayerowi polecenia? ... np.: następny utwór.

----------

## SlashBeast

Nie wydaje, do muzyki uzywam deadbeefa, vol up. down i mute mam w actkbd, dzieki temu klawisze te dzialaja np. jak gram w urban terrora. A moj actkbd wyglada tak:

```
225:::/home/slashbeast/src/things/scripts/nvidiablctl up

224:::/home/slashbeast/src/things/scripts/nvidiablctl down

113:::/home/slashbeast/src/things/scripts/volctl mute

114:::/home/slashbeast/src/things/scripts/volctl down

115:::/home/slashbeast/src/things/scripts/volctl up
```

Pierwsze dwa to konfiguracja podswietlania matrycy, sterownik nvidiabl.

----------

## nUmer_inaczej

To się nie zrozumieliśmy.

Mplayerem nie da się sterować za pomocą linii komend. Można podłożyć jedynie pod przyciski określone funkcje. Jednak te przyciski, klawisze muszą się odpowiednio nazywać, posiadać symkey jak np.; XF86_NEXT, podczas gdy x-y nazywają klawisze XF86AduioNext - stąd pragnę tę różnicę w nazwach zmienić, dostosować do potrzeb mplayera z którego słucham muzyki.

Pozdrawiam

EDIT:

Można to obejść. Wystarczy multimedialnymi klawiszami w xmodmap wskazać na klawisze określone przez ~/.mplayer/input.conf

----------

## SlashBeast

Albo, tak jak napisalem, uzyc xmodmap i zmienic sobie symbol na klawiszu, 'keycode 121 = XF86AduioNext' zrobi z klawisza mute klawisz audio next.

w .xinitrc mam: 

```
xmodmap ~/.xmodmap &
```

w .xmodmap mam: 

```
!mute button.

keycode 121 = NoSymbol

!lower volume

keycode 122 = NoSymbol

!incress volume

keycode 123 = NoSymbol

!keycode 121 = NoSymbol

!keycode 123 = NoSymbol

!keycode 122 = NoSymbol

!keycode 160 = NoSymbol

!keycode 176 = NoSymbol

!keycode 174 = NoSymbol

keycode 30 = u U EuroSign EuroSign EuroSign EuroSign

!keycode 27 = r R registered registered registered registered

!keycode 28 = t T trademark trademark trademark trademark

!keycode 29 = y Y copyright copyright copyright copyright
```

Przykladowy config.

----------

## nUmer_inaczej

rozumiem, co piszesz, jednak Ty nie bardzo zrozumiałeś:

XF86AudioNext potrzebuję zamienić na XF86_Next

Dałbym SOLVED, ale moje obejście jest nieskuteczne gdy zmienię pod fluxboxem pulpit.

----------

## SlashBeast

 *nUmer_inaczej wrote:*   

> rozumiem, co piszesz, jednak Ty nie bardzo zrozumiałeś:
> 
> XF86AudioNext potrzebuję zamienić na XF86_Next
> 
> Dałbym SOLVED, ale moje obejście jest nieskuteczne gdy zmienię pod fluxboxem pulpit.

 

Wydaje mi sie, ze to Ty nie rozumiesz. Klawisz XF86AudioNext ma keycode 171, wiec go zremapuj.

```
echo 'keycode 171 = Next' >> ~/.xmodmap && xmodmap ~/.xmodmap
```

I automagicznie masz to, co chciales.

Nie znalazlem klawisza XF86_Next, jest Next i XF86Next_VMode

----------

## nUmer_inaczej

 *SlashBeast wrote:*   

> 
> 
> (...)Klawisz XF86AudioNext ma keycode 171, wiec go zremapuj.
> 
> ```
> ...

 

Natomiast MPlayer do sterowania potrzebuje XF86_Next, który podkładając do polecenia które wskazałeś zwraca błąd nazwy tego klawisza. Z tą mapą klawiatury nie działa.

----------

## SlashBeast

Dodatkowo, jak chcesz sobie z konsoli/skryptem np. z actkbd wysylac klawisze, mplayer ma opcje slave. http://www.mplayerhq.hu/DOCS/tech/slave.txt

----------

