Archive:Alternative keymaps for Apple remote: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
No edit summary
(24 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{keymap}}
{{See also|Apple remote|Apple TV 1|Apple TV (iOS)|Mac OS X}}
<pre><!-- This file contains the mapping of keys (gamepad, remote, and keyboard) to actions within XBMC -->
Alternative keymaps for the Apple remote, as suggested by the community.
<!-- The <global> section is a fall through - they will only be used if the button is not          -->
<!-- used in the current window's section.  Note that there is only handling                      -->
<!-- for a single action per button at this stage.                                                -->
<!-- For joystick/gamepad configuration under linux/win32, see below as it differs from xbox      -->
<!-- gamepads.                                                                                     -->


<!-- The format is:                      -->
== Installing keymaps ==
<!--    <device>                        -->
{{keymap install instructions}}
<!--      <button>action</button>        -->
<!--    </device>                        -->


<!-- To map keys from other remotes using the RCA protocol, you may add <universalremote> blocks -->
==Keymap 1==
<!-- In this case, the tags used are <obc#> where # is the original button code (OBC) of the key -->
;What it does
<!-- You set it up by adding a <universalremote> block to the window or <global> section:      -->
*Video playback
<!--    <universalremote>            -->
**Makes up/down on Apple remote control BigStepForward (+10m or next chapter) and BigStepBack (-10m or last chapter).
<!--      <obc45>Stop</obc45>        -->
<!--    </universalremote>            -->


<!-- Note that the action can be a built-in function.                -->
;Keymap
<!--  eg <B>XBMC.ActivateWindow(MyMusic)</B>                        -->
:Cut and paste the following into a new text document and save as '''joystick.AppleRemote.xml''' and place in <code>[[userdata]]/keymaps/</code>
<!-- would automatically go to My Music on the press of the B button. -->
<syntaxhighlight lang="xml" enclose="div">
 
<!-- Joysticks / Gamepads:                                                                   -->
<!--  See the sample PS3 controller configuration below for the format.                      -->
<!--                                                                                          -->
<!--  Joystick Name:                                                                          -->
<!--  Do 'cat /proc/bus/input/devices' or see your xbmc log file  to find the names of      -->
<!--  detected joysticks. The name used in the configuration should match the detected name. -->
<!--                                                                                          -->
<!--  Button Ids:                                                                            -->
<!--  'id' is the button ID used by SDL. Joystick button ids of connected joysticks appear  -->
<!--  in xbmc.log when they are pressed. Use your log to map custom buttons to actions.      -->
<!--                                                                                          -->
<!--  Axis Ids / Analog Controls                                                              -->
<!--  Coming soon.                                                                          -->
<keymap>
<keymap>
   <global>
   <global>
Line 283: Line 260:
   </NumericInput>
   </NumericInput>
</keymap>
</keymap>
</pre>
</syntaxhighlight>


[[Category:IOS]]
[[Category:IOS]]
[[Category:Mac OS X]]
[[Category:Custom keymaps|Apple]]

Revision as of 01:35, 6 March 2016

Alternative keymaps for the Apple remote, as suggested by the community.

Installing keymaps

There are a few methods to load custom keymaps on Kodi.

File manager

Kodi's built in file manager can be used to copy files from a network file share (such as SMB/Windows sharing), or a USB thumb drive, to the userdata folder.

  1. Save the keymap you want to use as a plain text file as "keymap.xml" (it can be anything as long as it ends in .xml) on the file share.
  2. Go to the File Manager in Kodi. For the default skin, Confluence, highlight the "System" tab and then select the submenu "File manager" option.
  3. Add the file share as a source in the "A" window, then navigate to where the keymap file is.
  4. In the "B" window go do the Profile directory which will be the userdata folder, then open the keymaps folder.
  5. Highlight the keymap file from the "A" window, then press menu, and then select copy. This will copy the selected keymap to the Fire TV's userdata folder.
  6. Now just restart Kodi to load the new keymap.

Copy directly to userdata folder

  1. Save the keymap you want to use as a plain text file as "keymap.xml" (it can be anything as long as it ends in .xml)
  2. Use a file manager of your choice, such as the one build into your OS, and copy this file to the userdata folder within the keymaps folder.

The Userdata folder is a subfolder of the Kodi Data Folder and is located as shown in the table below.

Operating system Userdata Folder
Android Android/data/org.xbmc.kodi/files/.kodi/userdata/ (see note)
iOS /private/var/mobile/Library/Preferences/Kodi/userdata/
LibreELEC /storage/.kodi/userdata/
Linux ~/.kodi/userdata/
macOS /Users/<your_user_name>/Library/Application Support/Kodi/userdata/
Nvidia Shield (SMB) smb://<nvidiashieldurl>/internal/Android/data/org.xbmc.kodi/files/.kodi/userdata
OSMC /home/osmc/.kodi/userdata/
tvOS /private/var/mobile/Library/Preferences/Kodi/userdata/
Windows %APPDATA%\Kodi\userdata
Windows Portable <Install location chosen by you>\portable_data\userdata\
Windows via Microsoft Store %LOCALAPPDATA%\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalCache\Roaming\Kodi\
Windows Xbox %LOCALAPPDATA%\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalCache\Roaming\Kodi\
Note: In some Android setups the path may be slightly different to the one stated above.


Keymap 1

What it does
  • Video playback
    • Makes up/down on Apple remote control BigStepForward (+10m or next chapter) and BigStepBack (-10m or last chapter).
Keymap
Cut and paste the following into a new text document and save as joystick.AppleRemote.xml and place in userdata/keymaps/
<keymap>
  <global>
    <joystick name="AppleRemote">
      <!-- plus       -->      <button id="1">Up</button>
      <!-- minus      -->      <button id="2">Down</button>
      <!-- left       -->      <button id="3">Left</button>
      <!-- right      -->      <button id="4">Right</button>
      <!-- center     -->      <button id="5">Select</button>
      <!-- menu       -->      <button id="6">PreviousMenu</button>
      <!-- hold center  -->    <button id="7">Fullscreen</button>
      <!-- hold menu  -->      <button id="8">ContextMenu</button>
      <!-- old buttons for ATV <2.2, used on OSX  -->
      <!-- hold left  -->      <button id="9">Left</button>
      <!-- hold right -->      <button id="10">Right</button>
      <!-- new aluminium remote buttons  -->
      <!-- play  -->           <button id="12">Play</button>
      <!-- Learned remote buttons (ATV >2.3) -->
      <!-- Play -->      <button id="70">Play</button>
      <!-- Pause -->      <button id="71">Pause</button>
      <!-- Stop -->      <button id="72">Stop</button>
      <!-- Previous -->      <button id="73">SkipPrevious</button>
      <!-- Next -->      <button id="74">SkipNext</button>
      <!-- Rewind -->      <button id="75">Rewind</button>
      <!-- Forward -->      <button id="76">FastForward</button>
      <!-- Return -->      <button id="77">OSD</button>
      <!-- Enter -->      <button id="78">ShowVideoMenu</button>
      <!-- few gestures from Apple's iPhone Remote (ATV > 2.3 ?) -->
      <!-- SwipeLeft  -->      <button id="80">Left</button>
      <!-- SwipeRight  -->      <button id="81">Right</button>
      <!-- SwipeUp  -->      <button id="82">Up</button>
      <!-- SwipeDown  -->      <button id="83">Down</button>
    </joystick>
  </global>
  <Home>
    <joystick name="AppleRemote">
      <button id="6">XBMC.ActivateWindow(Favourites)</button>
      <button id="8">ActivateWindow(shutdownmenu)</button>
    </joystick>
  </Home>
  <Favourites>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </Favourites>
  <MyPictures>
    <joystick name="AppleRemote">
      <button id="6">ParentDir</button>
    </joystick>
  </MyPictures>
  <MyMusicPlaylist>
    <joystick name="AppleRemote">
      <button id="6">Playlist</button>
    </joystick>
  </MyMusicPlaylist>
  <MyMusicPlaylistEditor>
    <joystick name="AppleRemote">
      <button id="6">ParentDir</button>
    </joystick>
  </MyMusicPlaylistEditor>
  <MyMusicFiles>
    <joystick name="AppleRemote">
      <button id="6">ParentDir</button>
    </joystick>
  </MyMusicFiles>
  <MyMusicLibrary>
    <joystick name="AppleRemote">
      <button id="6">ParentDir</button>
    </joystick>
  </MyMusicLibrary>
  <FullscreenVideo>
    <joystick name="AppleRemote">
      <button id="1">BigStepForward</button>
      <button id="2">BigStepBack</button>
      <button id="3">StepBack</button>
      <button id="4">StepForward</button>
      <button id="5">OSD</button>
      <button id="6">Stop</button>
      <button id="7">AudioNextLanguage</button>
      <button id="8">SmallStepBack</button>
      <button id="9">Rewind</button>
      <button id="10">FastForward</button>
      <button id="11">FastForward</button>
      <button id="12">Pause</button>
      <button id="13"></button>
    </joystick>
  </FullscreenVideo>
  <FullscreenInfo>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </FullscreenInfo>
  <PlayerControls>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </PlayerControls>
  <Visualisation>
    <joystick name="AppleRemote">
      <button id="1">VolumeUp</button>
      <button id="2">VolumeDown</button>
      <button id="3">SkipPrevious</button>
      <button id="4">SkipNext</button>
      <button id="5">Pause</button>
      <button id="6">Fullscreen</button>
      <button id="7">XBMC.ActivateWindow(MusicOSD)</button>
      <button id="8">Stop</button>
    </joystick>
  </Visualisation>
  <MusicOSD>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </MusicOSD>
  <VisualisationSettings>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </VisualisationSettings>
  <VisualisationPresetList>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </VisualisationPresetList>
  <SlideShow>
    <joystick name="AppleRemote">
      <button id="1">ZoomIn</button>
      <button id="2">ZoomOut</button>
      <button id="3">PreviousPicture</button>
      <button id="4">NextPicture</button>
      <button id="6">Stop</button>
      <button id="7">Info</button>
      <button id="8">Rotate</button>
    </joystick>
  </SlideShow>
  <ScreenCalibration>
    <joystick name="AppleRemote">
      <button id="5">NextCalibration</button>
    </joystick>
  </ScreenCalibration>
  <SelectDialog>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </SelectDialog>
  <VideoOSD>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </VideoOSD>
  <VideoMenu>
    <joystick name="AppleRemote">
      <button id="5">Select</button>
      <button id="6">Stop</button>
      <button id="7">OSD</button>
      <button id="8"/>
    </joystick>
  </VideoMenu>
  <OSDVideoSettings>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </OSDVideoSettings>
  <OSDAudioSettings>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </OSDAudioSettings>
  <VideoBookmarks>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </VideoBookmarks>
  <MyVideoLibrary>
    <joystick name="AppleRemote">
      <button id="6">ParentDir</button>
      <button id="7">Info</button>
    </joystick>
  </MyVideoLibrary>
  <MyVideoFiles>
    <joystick name="AppleRemote">
      <button id="6">ParentDir</button>
      <button id="7">Info</button>
    </joystick>
  </MyVideoFiles>
  <MyVideoPlaylist>
    <joystick name="AppleRemote">
      <button id="6">Playlist</button>
    </joystick>
  </MyVideoPlaylist>
  <VirtualKeyboard>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </VirtualKeyboard>
  <ContextMenu>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </ContextMenu>
  <FileStackingDialog>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </FileStackingDialog>
  <MusicInformation>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </MusicInformation>
  <MovieInformation>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </MovieInformation>
  <PictureInfo>
    <joystick name="AppleRemote">
      <button id="3">Left</button>
      <button id="4">Right</button>
      <button id="6">Close</button>
    </joystick>
  </PictureInfo>
  <AddonBrowser>
    <joystick name="AppleRemote">
      <button id="6">ParentDir</button>
    </joystick>
  </AddonBrowser>
  <AddonInformation>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </AddonInformation>
  <AddonSettings>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </AddonSettings>
  <TextViewer>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </TextViewer>
  <NumericInput>
    <joystick name="AppleRemote">
      <button id="6">Close</button>
    </joystick>
  </NumericInput>
</keymap>