Alternative keymaps for low button remotes: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
No edit summary
(18 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{mininav|[[Remotes]]}}
{{mininav|[[Remote_controls]]}}
Alternative [[keymaps]] for remote that have a low number of buttons, as suggested by the community.
Alternative [[Keymap|keymaps]] for remote that have a low Number of buttons, as suggested by the community. These keymaps rely heavily on the new "longpress" feature of Kodi v16 (or higher).


{{Note|For most low button remotes, these keymaps are usable as-is, as they are seen as "keyboards". If they do not work for you then try changing all instances of <code><keyboard></code> and <code></keyboard></code> to <code><remote></code> and <code></remote></code>, as your remote might be seen as a "real" remote control (MCE, CEC, etc). }}
{{Note|For most low button remotes, these keymaps are usable as-is, as they are seen as "keyboards". If they do not work for you then try changing all instances of <code><keyboard></code> and <code></keyboard></code> to <code><remote></code> and <code></remote></code>, as your remote might be seen as a "real" remote control (MCE, CEC, etc). }}


== Installing keymaps ==
== Installing keymaps ==
Line 14: Line 15:
{{editor note|nice table goes here}}
{{editor note|nice table goes here}}


:Cut and paste the following into a new text document and save as '''keyboard.xml''' and place in <code>[[userdata]]/keymaps/</code>
:Cut and paste the following into a new text document and save as '''keyboard.xml''' and place in <code>userdata/keymaps/</code>
<syntaxhighlight lang="xml" enclose="div">
{{hidden|Click to show keymap -->|2=
<syntaxhighlight lang=xml enclose="div">
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<keymap>
<keymap>
Line 21: Line 23:
     <keyboard>
     <keyboard>
       <escape>Back</escape>
       <escape>Back</escape>
       <play mod="longpress">sendclick(14)</play>
       <play mod="longpress">Info</play>
       <playpause mod="longpress">sendclick(14)</playpause>
       <play_pause mod="longpress">Info</play_pause>
     </keyboard>
     </keyboard>
   </Global>
   </Global>
Line 37: Line 39:
   <VirtualKeyboard>
   <VirtualKeyboard>
     <keyboard>
     <keyboard>
      <return mod="longpress">Enter</return>
      <enter mod="longpress">Enter</enter>
      <left mod="longpress">Backspace</left>
      <right mod="longpress">Number0</right> <!-- Spacebar -->
       <up mod="longpress">Shift</up>
       <up mod="longpress">Shift</up>
       <down mod="longpress">Symbols</down>
       <down mod="longpress">Symbols</down>
Line 59: Line 57:
       <return mod="longpress">OSD</return> <!-- Remove if you have a playpause button -->
       <return mod="longpress">OSD</return> <!-- Remove if you have a playpause button -->
       <enter mod="longpress">OSD</enter>  <!-- Remove if you have a playpause button -->
       <enter mod="longpress">OSD</enter>  <!-- Remove if you have a playpause button -->
       <up mod="longpress">SkipNext</up>
       <up mod="longpress">AudioNextLanguage</up>
       <down mod="longpress">SkipPrevious</down>
       <down mod="longpress">NextSubtitle</down>
       <left mod="longpress">Rewind</left>
       <left mod="longpress">Rewind</left>
       <right mod="longpress">FastForward</right>
       <right mod="longpress">FastForward</right>
Line 67: Line 65:
   <VideoOSD>
   <VideoOSD>
     <keyboard>
     <keyboard>
      <up mod="longpress">CodecInfo</up>
       <return mod="longpress">Back</return>
       <return mod="longpress">Back</return>
       <enter mod="longpress">Back</enter>
       <enter mod="longpress">Back</enter>
Line 99: Line 96:
       <return mod="longpress">OSD</return> <!-- Remove if you have a playpause button -->
       <return mod="longpress">OSD</return> <!-- Remove if you have a playpause button -->
       <enter mod="longpress">OSD</enter>  <!-- Remove if you have a playpause button -->
       <enter mod="longpress">OSD</enter>  <!-- Remove if you have a playpause button -->
      <left mod="longpress">Rewind</left>
      <right mod="longpress">FastForward</right>
       <backspace mod="longpress">Stop</backspace>
       <backspace mod="longpress">Stop</backspace>
       <browser_back mod="longpress">Stop</browser_back>
       <browser_back mod="longpress">Stop</browser_back>
Line 128: Line 127:
</keymap>
</keymap>
</syntaxhighlight>
</syntaxhighlight>
}}


== Basic navigation and fullscreen volume ==
== Basic navigation and fullscreen volume ==
For remotes with basic navigation (left,right,up,down,select,back). This is the same as [[#Basic navigation]], but where up/down can change the volume when a video is displayed fullscreen.
For remotes with basic navigation (left,right,up,down,select,back). This is the same as Basic navigation, but where up/down can change the volume when the video or audio player is displayed fullscreen.


''Changes from the default are shown in '''bold''' print.''
''Changes from the default are shown in '''bold''' print.''
Line 136: Line 136:
{{editor note|nice table goes here}}
{{editor note|nice table goes here}}


:Cut and paste the following into a new text document and save as '''keyboard.xml''' and place in <code>[[userdata]]/keymaps/</code>
:Cut and paste the following into a new text document and save as '''keyboard.xml''' and place in <code>userdata/keymaps/</code>
<syntaxhighlight lang="xml" enclose="div">
{{hidden|Click to show keymap -->|2=
<syntaxhighlight lang=xml enclose="div">
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<keymap>
<keymap>
Line 143: Line 144:
     <keyboard>
     <keyboard>
       <escape>Back</escape>
       <escape>Back</escape>
       <play mod="longpress">sendclick(14)</play>
       <play mod="longpress">Info</play>
       <playpause mod="longpress">sendclick(14)</playpause>
       <play_pause mod="longpress">Info</play_pause>
     </keyboard>
     </keyboard>
   </Global>
   </Global>
Line 157: Line 158:
   <VirtualKeyboard>
   <VirtualKeyboard>
     <keyboard>
     <keyboard>
      <return mod="longpress">Enter</return>
      <enter mod="longpress">Enter</enter>
      <left mod="longpress">Backspace</left>
      <right mod="longpress">Number0</right> <!-- Spacebar -->
       <up mod="longpress">Shift</up>
       <up mod="longpress">Shift</up>
       <down mod="longpress">Symbols</down>
       <down mod="longpress">Symbols</down>
Line 183: Line 180:
   <VideoOSD>
   <VideoOSD>
     <keyboard>
     <keyboard>
      <up mod="longpress">CodecInfo</up>
       <return mod="longpress">Back</return>
       <return mod="longpress">Back</return>
       <enter mod="longpress">Back</enter>
       <enter mod="longpress">Back</enter>
Line 250: Line 246:
</keymap>
</keymap>
</syntaxhighlight>
</syntaxhighlight>
}}


== Basic navigation with Play ==
== Basic navigation with Play ==
Line 258: Line 255:
{{editor note|nice table goes here}}
{{editor note|nice table goes here}}


:Cut and paste the following into a new text document and save as '''keyboard.xml''' and place in <code>[[userdata]]/keymaps/</code>
:Cut and paste the following into a new text document and save as '''keyboard.xml''' and place in <code>userdata/keymaps/</code>
<syntaxhighlight lang="xml" enclose="div">
{{hidden|Click to show keymap -->|2=
<syntaxhighlight lang=xml enclose="div">
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<keymap>
<keymap>
Line 265: Line 263:
     <keyboard>
     <keyboard>
       <escape>Back</escape>
       <escape>Back</escape>
       <play mod="longpress">sendclick(14)</play>
       <play mod="longpress">Info</play>
       <playpause mod="longpress">sendclick(14)</playpause>
       <play_pause mod="longpress">Info</play_pause>
     </keyboard>
     </keyboard>
   </Global>
   </Global>
Line 281: Line 279:
   <VirtualKeyboard>
   <VirtualKeyboard>
     <keyboard>
     <keyboard>
      <return mod="longpress">Enter</return>
      <enter mod="longpress">Enter</enter>
      <left mod="longpress">Backspace</left>
      <right mod="longpress">Number0</right> <!-- Spacebar -->
       <up mod="longpress">Shift</up>
       <up mod="longpress">Shift</up>
       <down mod="longpress">Symbols</down>
       <down mod="longpress">Symbols</down>
Line 299: Line 293:
       <browser_back mod="longpress">FullScreen</browser_back>
       <browser_back mod="longpress">FullScreen</browser_back>
       <escape mod="longpress">FullScreen</escape>
       <escape mod="longpress">FullScreen</escape>
       <up mod="longpress">SkipNext</up>
       <up mod="longpress">AudioNextLanguage</up>
       <down mod="longpress">SkipPrevious</down>
       <down mod="longpress">NextSubtitle</down>
       <left mod="longpress">Rewind</left>
       <left mod="longpress">Rewind</left>
       <right mod="longpress">FastForward</right>
       <right mod="longpress">FastForward</right>
Line 307: Line 301:
   <VideoOSD>
   <VideoOSD>
     <keyboard>
     <keyboard>
      <up mod="longpress">CodecInfo</up>
       <return mod="longpress">Back</return>
       <return mod="longpress">Back</return>
       <enter mod="longpress">Back</enter>
       <enter mod="longpress">Back</enter>
Line 335: Line 328:
   <Visualisation>
   <Visualisation>
     <keyboard>
     <keyboard>
      <left mod="longpress">Rewind</left>
      <right mod="longpress">FastForward</right>
       <backspace mod="longpress">Stop</backspace>
       <backspace mod="longpress">Stop</backspace>
       <browser_back mod="longpress">Stop</browser_back>
       <browser_back mod="longpress">Stop</browser_back>
Line 364: Line 359:
</keymap>
</keymap>
</syntaxhighlight>
</syntaxhighlight>
}}


== Basic navigation with Play and fullscreen volume ==
== Basic navigation with Play and fullscreen volume ==
For remotes with basic navigation (left,right,up,down,select,back) and "Play". This is the same as [[#Basic navigation with Play]], but where up/down can change the volume when a video is displayed fullscreen.
For remotes with basic navigation (left,right,up,down,select,back) and "Play". This is the same as #Basic navigation with Play, but where up/down can change the volume when the video or audio player is displayed fullscreen.


''Changes from the default are shown in '''bold''' print.''
''Changes from the default are shown in '''bold''' print.''
Line 372: Line 368:
{{editor note|nice table goes here}}
{{editor note|nice table goes here}}


:Cut and paste the following into a new text document and save as '''keyboard.xml''' and place in <code>[[userdata]]/keymaps/</code>
:Cut and paste the following into a new text document and save as '''keyboard.xml''' and place in <code>userdata/keymaps/</code>
<syntaxhighlight lang="xml" enclose="div">
{{hidden|Click to show keymap -->|2=
<syntaxhighlight lang=xml enclose="div">
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<keymap>
<keymap>
Line 379: Line 376:
     <keyboard>
     <keyboard>
       <escape>Back</escape>
       <escape>Back</escape>
       <play mod="longpress">sendclick(14)</play>
       <play mod="longpress">Info</play>
       <playpause mod="longpress">sendclick(14)</playpause>
       <play_pause mod="longpress">Info</play_pause>
     </keyboard>
     </keyboard>
   </Global>
   </Global>
Line 393: Line 390:
   <VirtualKeyboard>
   <VirtualKeyboard>
     <keyboard>
     <keyboard>
      <return mod="longpress">Enter</return>
      <enter mod="longpress">Enter</enter>
      <left mod="longpress">Backspace</left>
      <right mod="longpress">Number0</right> <!-- Spacebar -->
       <up mod="longpress">Shift</up>
       <up mod="longpress">Shift</up>
       <down mod="longpress">Symbols</down>
       <down mod="longpress">Symbols</down>
Line 419: Line 412:
   <VideoOSD>
   <VideoOSD>
     <keyboard>
     <keyboard>
      <up mod="longpress">CodecInfo</up>
       <return mod="longpress">Back</return>
       <return mod="longpress">Back</return>
       <enter mod="longpress">Back</enter>
       <enter mod="longpress">Back</enter>
Line 486: Line 478:
</keymap>
</keymap>
</syntaxhighlight>
</syntaxhighlight>
}}


{{updated|16}}
[[Category:Custom keymaps]]
[[Category:Custom keymaps]]

Revision as of 05:40, 19 July 2020

Home icon grey.png   ▶ Remote_controls ▶ Alternative keymaps for low button remotes

Alternative keymaps for remote that have a low Number of buttons, as suggested by the community. These keymaps rely heavily on the new "longpress" feature of Kodi v16 (or higher).

Note: For most low button remotes, these keymaps are usable as-is, as they are seen as "keyboards". If they do not work for you then try changing all instances of <keyboard> and </keyboard> to <remote> and </remote>, as your remote might be seen as a "real" remote control (MCE, CEC, etc).


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.


Basic navigation

For remotes with basic navigation (left,right,up,down,select,back).

Changes from the default are shown in bold print.

Editor note: nice table goes here

Cut and paste the following into a new text document and save as keyboard.xml and place in userdata/keymaps/

Basic navigation and fullscreen volume

For remotes with basic navigation (left,right,up,down,select,back). This is the same as Basic navigation, but where up/down can change the volume when the video or audio player is displayed fullscreen.

Changes from the default are shown in bold print.

Editor note: nice table goes here

Cut and paste the following into a new text document and save as keyboard.xml and place in userdata/keymaps/

Basic navigation with Play

For remotes with basic navigation (left,right,up,down,select,back) and "Play".

Changes from the default are shown in bold print.

Editor note: nice table goes here

Cut and paste the following into a new text document and save as keyboard.xml and place in userdata/keymaps/

Basic navigation with Play and fullscreen volume

For remotes with basic navigation (left,right,up,down,select,back) and "Play". This is the same as #Basic navigation with Play, but where up/down can change the volume when the video or audio player is displayed fullscreen.

Changes from the default are shown in bold print.

Editor note: nice table goes here

Cut and paste the following into a new text document and save as keyboard.xml and place in userdata/keymaps/