Merge pull request #4397 from keymanapp/modify/android/build-help
modify(android/app): Change build-help.sh to generate offline help from Markdown files
3
android/.gitignore
vendored
|
|
@ -41,6 +41,9 @@ KMEA/**/assets/resources
|
|||
# keymanweb OSK font
|
||||
KMEA/**/assets/keymanweb-osk.*
|
||||
|
||||
# KMAPRo generated offline help
|
||||
KMAPro/**/assets/info/
|
||||
|
||||
# KMAPRo default packages
|
||||
KMAPro/**/assets/*.kmp
|
||||
|
||||
|
|
|
|||
|
|
@ -111,6 +111,11 @@ else
|
|||
DAEMON_FLAG=
|
||||
fi
|
||||
|
||||
# Convert markdown to html for offline help
|
||||
echo "Converting markdown to html for offline help"
|
||||
cd "$KEYMAN_ROOT/android/help"
|
||||
./build-help.sh htm
|
||||
cd "$KEYMAN_ROOT/android/KMAPro"
|
||||
|
||||
# Download default keyboard and dictionary
|
||||
if [ "$DO_KEYBOARDS_DOWNLOAD" = true ]; then
|
||||
|
|
|
|||
|
|
@ -1,102 +0,0 @@
|
|||
|
||||
/***********************
|
||||
Wrapper CSS
|
||||
***********************/
|
||||
|
||||
#android-tab-header{
|
||||
width: 100%;
|
||||
background: #f2f2f2;
|
||||
}
|
||||
|
||||
#android-mobile-header, #android-tablet-header{
|
||||
width: 50%;
|
||||
float: left;
|
||||
text-align: center;
|
||||
background: #e4e4e4;
|
||||
padding: 10px 0px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.tab{
|
||||
display: none;
|
||||
}
|
||||
|
||||
#android-mobile-header.selected-tab, #android-tablet-header.selected-tab, .tab.selected-tab{
|
||||
display: block;
|
||||
background: #f2f2f2;
|
||||
}
|
||||
|
||||
#android-mobile-header h4, #android-tablet-header h4{
|
||||
font-size: 14pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h2{
|
||||
font-size: 22pt;
|
||||
font-weight: 400;
|
||||
margin: 30px 20px 15px 20px;
|
||||
text-align: center;
|
||||
color: #BA2034;
|
||||
}
|
||||
|
||||
/*
|
||||
Setting display: block; to ~!important will break CSS rules for phone vs tablet.
|
||||
*/
|
||||
p img{
|
||||
margin-top: 10px !important;
|
||||
display: block;
|
||||
margin-left: auto !important;
|
||||
margin-right: auto !important;
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
|
||||
table{
|
||||
width: 100%;
|
||||
margin-bottom: 50px;
|
||||
}
|
||||
|
||||
|
||||
td{
|
||||
text-align: left;
|
||||
vertical-align: middle;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
td:first-child{
|
||||
width: 15%;
|
||||
}
|
||||
|
||||
td:last-child{
|
||||
width: 85%;
|
||||
}
|
||||
|
||||
th{
|
||||
font-weight: bold;
|
||||
font-size: 14pt;
|
||||
padding: 15px 0px 5px 0px;
|
||||
}
|
||||
|
||||
.command{
|
||||
font-weight: bold;
|
||||
color: #69B7D3;
|
||||
}
|
||||
|
||||
#toolbar{
|
||||
padding-top: 40px;
|
||||
}
|
||||
|
||||
/***********************
|
||||
Images CSS
|
||||
***********************/
|
||||
|
||||
#section2 img{
|
||||
min-width: 40px;
|
||||
}
|
||||
|
||||
/**
|
||||
Removes existing max-width property settings from images in tables.
|
||||
They overly shrink the images on the main Android symbol glossary.
|
||||
*/
|
||||
#section2 td img {
|
||||
max-width: unset;
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
.embed-on .content-online {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.embed-off .content-in-app {
|
||||
display: none;
|
||||
}
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
.phone-form .tablet {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.tablet-form .phone {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#section2 a.phone, #section2 a.tablet {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
.tablet-form a.phone {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.phone-form a.tablet {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.phone-form #android-mobile-header {
|
||||
background: #f2f2f2;
|
||||
}
|
||||
|
||||
.tablet-form #android-tablet-header {
|
||||
background: #f2f2f2;
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 6.1 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 8.4 KiB |
|
Before Width: | Height: | Size: 8.5 KiB |
|
Before Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 8.7 KiB |
|
Before Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 507 B |
|
Before Width: | Height: | Size: 927 B |
|
Before Width: | Height: | Size: 7.8 KiB |
|
Before Width: | Height: | Size: 308 B |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 305 B |
|
|
@ -1,250 +0,0 @@
|
|||
if(typeof KeyRenderer == 'undefined')
|
||||
{
|
||||
var KeyRenderer = new function()
|
||||
{
|
||||
var site = '/cdn/dev';
|
||||
|
||||
this.render = function(s)
|
||||
{
|
||||
return "<span class='highlightKeys'>" + this.renderInternal(s, true) + "</span>";
|
||||
}
|
||||
|
||||
this.renderInternal = function(s, includePrintable)
|
||||
{
|
||||
var i = 0, r = '';
|
||||
var spkey = {PgUp:'pgup',PgDn:'pgdn',Left:'left',Right:'right',Up:'up',Down:'down',Ins:'ins',Del:'del',Home:'home',End:'end',
|
||||
Enter:'enter',Tab:'tab',Esc:'esc',Caps:'caps',Shift:'shift2',Ctrl:'ctrl2',Alt:'alt2',Bksp:'bksp'};
|
||||
while(i < s.length)
|
||||
{
|
||||
var endspan = false;
|
||||
var ch = s.charAt(i);
|
||||
if(ch == '[' && i < s.length-1)
|
||||
{
|
||||
i++; ch = s.charAt(i);
|
||||
if(ch != '[')
|
||||
{
|
||||
/* Ctrl+Shift+Alt+key */
|
||||
var t = '';
|
||||
while(s.charAt(i) != ']' && i < s.length)
|
||||
{
|
||||
t += s.charAt(i);
|
||||
i++;
|
||||
}
|
||||
var n = t.indexOf('&'),t1=t;
|
||||
if(n >= 0)
|
||||
{
|
||||
ch = t.substr(n,t.length-n);
|
||||
t = t.substr(0,n);
|
||||
}
|
||||
else
|
||||
{
|
||||
ch = t.charAt(t.length-1);
|
||||
t = t.substr(0, t.length-1);
|
||||
}
|
||||
r += "<span class='key-grp'>";
|
||||
|
||||
var x = t1.indexOf('!'),u='',ks,kn;
|
||||
if(x >= 0)
|
||||
{
|
||||
ks = t1.substr(x+1,t1.length-x-1);
|
||||
kn = spkey[ks];
|
||||
if(kn)
|
||||
{
|
||||
u = "<img src='"+site+"/img/keys/tr.gif' title='"+ks+"' alt='"+ks+"' class='key-"+kn+"' />";
|
||||
t = t.substr(0,x); ch = '*';
|
||||
}
|
||||
}
|
||||
|
||||
if(t.indexOf('C') >= 0) r += "<img src='"+site+"/img/keys/tr.gif' title='Ctrl' alt='Ctrl' class='key-ctrl' />";
|
||||
if(t.indexOf('S') >= 0) r += "<img src='"+site+"/img/keys/tr.gif' title='Shift' alt='Shift' class='key-shift' />";
|
||||
if(t.indexOf('A') >= 0) r += "<img src='"+site+"/img/keys/tr.gif' title='Alt' alt='Alt' class='key-alt' />";
|
||||
|
||||
r += u;
|
||||
endspan = true;
|
||||
}
|
||||
}
|
||||
if(!endspan || ch != '*')
|
||||
{
|
||||
if(ch.substr(0,1) == '&')
|
||||
{
|
||||
if(ch == '&')
|
||||
{
|
||||
ch = '';
|
||||
while(s.charAt(i) != ';' && i < s.length)
|
||||
{
|
||||
ch += s.charAt(i);
|
||||
i++;
|
||||
}
|
||||
ch += ';';
|
||||
}
|
||||
if(ch == '<') ch = '<';
|
||||
else if(ch == '>') ch = '>';
|
||||
else if(ch == '&') ch = '&';
|
||||
else if(ch == '"') ch = '"';
|
||||
}
|
||||
chv = ch.charCodeAt(0);
|
||||
r += "<img src='"+site+"/img/keys/tr.gif' class='key-"+chv.toString()+"' title='"+this.encodeEntities(ch)+"' alt='"+this.encodeEntities(ch)+"' />";
|
||||
}
|
||||
if(endspan) r += "</span>";
|
||||
i++;
|
||||
}
|
||||
|
||||
if(includePrintable)
|
||||
{
|
||||
r += "<span class='key-print'>";
|
||||
i = 0;
|
||||
while(i < s.length)
|
||||
{
|
||||
endspan = false;
|
||||
ch = s.charAt(i);
|
||||
if(ch == '[' && i < s.length-1)
|
||||
{
|
||||
i++; ch = s.charAt(i);
|
||||
if(ch != '[')
|
||||
{
|
||||
/* Ctrl+Shift+Alt+key */
|
||||
t = '';
|
||||
while(s.charAt(i) != ']' && i < s.length)
|
||||
{
|
||||
t += s.charAt(i);
|
||||
i++;
|
||||
}
|
||||
var t1 = t;
|
||||
ch = t.charAt(t.length-1);
|
||||
t = t.substr(0, t.length-1);
|
||||
r += "<span class='key-grp'>";
|
||||
|
||||
var x = t1.indexOf('!'),u='',ks,kn;
|
||||
if(x >= 0)
|
||||
{
|
||||
ks = t1.substr(x+1,t1.length-x-1);
|
||||
kn = spkey[ks];
|
||||
if(kn)
|
||||
{
|
||||
u = ks;
|
||||
t = t.substr(0,x); ch = '*';
|
||||
}
|
||||
}
|
||||
|
||||
if(t.indexOf('C') >= 0) r += "Ctrl+";
|
||||
if(t.indexOf('S') >= 0) r += "Shift+";
|
||||
if(t.indexOf('A') >= 0) r += "Alt+";
|
||||
endspan = true;
|
||||
|
||||
r += u;
|
||||
}
|
||||
}
|
||||
if(!endspan || ch != '*')
|
||||
if(ch == ' ') r += "<span class='key-grp'>Space</span>"; else r += this.encodeEntities(ch);
|
||||
if(endspan) r += "</span>";
|
||||
i++;
|
||||
}
|
||||
r += "</span>";
|
||||
}
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
this.encodeEntities = function(s)
|
||||
{
|
||||
return s.replace('&', '&').replace('<', '<').replace('>', '>').replace('"', '"').replace("'", ''');
|
||||
}
|
||||
|
||||
this.getElementsByClassName = function(className, tag, elm)
|
||||
{
|
||||
if (document.getElementsByClassName) {
|
||||
getElementsByClassName = function (className, tag, elm) {
|
||||
elm = elm || document;
|
||||
var elements = elm.getElementsByClassName(className),
|
||||
nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
|
||||
returnElements = [],
|
||||
current;
|
||||
for(var i=0, il=elements.length; i<il; i+=1){
|
||||
current = elements[i];
|
||||
if(!nodeName || nodeName.test(current.nodeName)) {
|
||||
returnElements.push(current);
|
||||
}
|
||||
}
|
||||
return returnElements;
|
||||
};
|
||||
}
|
||||
else if (document.evaluate) {
|
||||
getElementsByClassName = function (className, tag, elm) {
|
||||
tag = tag || "*";
|
||||
elm = elm || document;
|
||||
var classes = className.split(" "),
|
||||
classesToCheck = "",
|
||||
xhtmlNamespace = "http://www.w3.org/1999/xhtml",
|
||||
namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
|
||||
returnElements = [],
|
||||
elements,
|
||||
node;
|
||||
for(var j=0, jl=classes.length; j<jl; j+=1){
|
||||
classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
|
||||
}
|
||||
try {
|
||||
elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
|
||||
}
|
||||
catch (e) {
|
||||
elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
|
||||
}
|
||||
while ((node = elements.iterateNext())) {
|
||||
returnElements.push(node);
|
||||
}
|
||||
return returnElements;
|
||||
};
|
||||
}
|
||||
else {
|
||||
getElementsByClassName = function (className, tag, elm) {
|
||||
tag = tag || "*";
|
||||
elm = elm || document;
|
||||
var classes = className.split(" "),
|
||||
classesToCheck = [],
|
||||
elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
|
||||
current,
|
||||
returnElements = [],
|
||||
match;
|
||||
for(var k=0, kl=classes.length; k<kl; k+=1){
|
||||
classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
|
||||
}
|
||||
for(var l=0, ll=elements.length; l<ll; l+=1){
|
||||
current = elements[l];
|
||||
match = false;
|
||||
for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
|
||||
match = classesToCheck[m].test(current.className);
|
||||
if (!match) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (match) {
|
||||
returnElements.push(current);
|
||||
}
|
||||
}
|
||||
return returnElements;
|
||||
};
|
||||
}
|
||||
return getElementsByClassName(className, tag, elm);
|
||||
};
|
||||
|
||||
|
||||
this.renderAll = function()
|
||||
{
|
||||
var elems = KeyRenderer.getElementsByClassName('keys');
|
||||
for(var i = 0; i < elems.length; i++)
|
||||
{
|
||||
elems[i].innerHTML = KeyRenderer.render(elems[i].innerHTML);
|
||||
}
|
||||
//<script>document.writeln(KeyRenderer.render('hf'));</script>
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if(window.attachEvent)
|
||||
{
|
||||
window.attachEvent('onload', KeyRenderer.renderAll);
|
||||
}
|
||||
else if(window.addEventListener)
|
||||
{
|
||||
window.addEventListener('load', KeyRenderer.renderAll, false);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,263 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2 class="content-in-app">Getting Started</h2>
|
||||
<h2 class="content-online">Keyman for Android</h2>
|
||||
|
||||
<p class="content-online"><a href='http://help.keyman.com.local/products/android/version-history'>Version history</a></p>
|
||||
|
||||
|
||||
<p>
|
||||
Keyman for Android lets you type in over 600 languages on Android mobiles and tablets.
|
||||
To get started, here are some helpful hints:
|
||||
</p>
|
||||
<table>
|
||||
<tr>
|
||||
<th colspan="2">Keyboard Keys <br/>(Keyboard Present)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="install-keyboard-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="install-keyboard-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</td>
|
||||
<td>Select another language/keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="hide-keyboard-ap" src="../../../cdn/dev/img/app/13.0/hide-keyboard-ap.png">
|
||||
<img class="tablet" id="hide-keyboard-at" src="../../../cdn/dev/img/app/13.0/hide-keyboard-at.png">
|
||||
</td>
|
||||
<td>Hide the keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="backspace-ap" src="../../../cdn/dev/img/app/13.0/backspace-ap.png">
|
||||
<img class="tablet" id="backspace-at" src="../../../cdn/dev/img/app/13.0/backspace-at.png">
|
||||
</td>
|
||||
<td>Backspace</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="return-ap" src="../../../cdn/dev/img/app/13.0/return-ap.png">
|
||||
<img class="tablet" id="return-at" src="../../../cdn/dev/img/app/13.0/return-at.png">
|
||||
</td>
|
||||
<td>Return</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="shift-ap" src="../../../cdn/dev/img/app/13.0/shift-ap.png">
|
||||
<img class="tablet" id="shift-at" src="../../../cdn/dev/img/app/13.0/shift-at.png">
|
||||
</td>
|
||||
<td>Shift key. Long press this key to access the CTRL, ALT and CTRL ALT keys
|
||||
(which can access additional key layers)
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="touch-hold-ap" src="../../../cdn/dev/img/app/13.0/touch-hold-ap.png">
|
||||
<img class="tablet" id="touch-hold-at" src="../../../cdn/dev/img/app/13.0/touch-hold-at.png">
|
||||
</td>
|
||||
<td>Keys with a small dot in the top right corner indicate a long press key. Access
|
||||
further functionality by long pressing the key
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="2" id="toolbar-ap">Toolbar Icons</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="share-ap" src="../../../cdn/dev/img/app/13.0/share-a.png"></td>
|
||||
<td>Share your text via Mail, Text, or Twitter</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="browser-ap" src="../../../cdn/dev/img/app/13.0/browser-a.png"></td>
|
||||
<td>Open the Keyman Browser to use the web in your language</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="menu-ap" src="../../../cdn/dev/img/app/13.0/menu-icon-a.png"></td>
|
||||
<td>Open the menu for additional options</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="font-size-ap" src="../../../cdn/dev/img/app/13.0/font-size-a.png"></td>
|
||||
<td>Adjust the font size</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="delete-ap" src="../../../cdn/dev/img/app/13.0/delete-a.png"></td>
|
||||
<td>Delete all current text</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="info-ap" src="../../../cdn/dev/img/app/13.0/info-a.png"></td>
|
||||
<td>Load this help page</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="get-started-ap" src="../../../cdn/dev/img/app/13.0/get-started-a.png"></td>
|
||||
<td>Open the initial setup screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="settings-ap" src="../../../cdn/dev/img/app/13.0/settings-a.png"></td>
|
||||
<td>Open the Keyman Settings screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="cloud-download-ap" src="../../../cdn/dev/img/app/13.0/ic_cloud_download.png"></td>
|
||||
<td>Update available to download for keyboard / dictionary</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h2>Accessing Keyboard Help</h2>
|
||||
<p>
|
||||
Step 1) Open the keyboard list by touching the globe key.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="keyboard-help1-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="keyboard-help1-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 2) Touch the info icon for your keyboard.
|
||||
</p>
|
||||
<p><img id="keyboard-help2-ap" src="../../../cdn/dev/img/app/13.0/info-a-gray.png"></p>
|
||||
<br/>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Integrate Keyman with your App or Website</h2>
|
||||
<p>
|
||||
If you are interested in learning how Keyman can be integrated into your own app or
|
||||
website, visit <a href="https://keyman.com/engine/">keyman.com/engine</a>
|
||||
</p>
|
||||
|
||||
<h2>Further Help</h2>
|
||||
<p>
|
||||
For more information on Keyman, visit <a href="https://keyman.com">keyman.com</a>
|
||||
<br/><br/>
|
||||
For more information on Keyman for Android, visit <a href="https://keyman.com/android">keyman.com/android</a>
|
||||
</p>
|
||||
|
||||
<div class="content-online">
|
||||
<h2>Keyman for Android Documentation Versions</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href='index.html'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/12.0/'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/11.0/'>Keyman for Android 11.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/10.0/'>Keyman for Android 10.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/2.0/'>Keyman for Android 2.0 Documentation</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,263 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2 class="content-in-app">Getting Started</h2>
|
||||
<h2 class="content-online">Keyman for Android</h2>
|
||||
|
||||
<p class="content-online"><a href='http://help.keyman.com.local/products/android/version-history'>Version history</a></p>
|
||||
|
||||
|
||||
<p>
|
||||
Keyman for Android lets you type in over 600 languages on Android mobiles and tablets.
|
||||
To get started, here are some helpful hints:
|
||||
</p>
|
||||
<table>
|
||||
<tr>
|
||||
<th colspan="2">Keyboard Keys <br/>(Keyboard Present)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="install-keyboard-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="install-keyboard-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</td>
|
||||
<td>Select another language/keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="hide-keyboard-ap" src="../../../cdn/dev/img/app/13.0/hide-keyboard-ap.png">
|
||||
<img class="tablet" id="hide-keyboard-at" src="../../../cdn/dev/img/app/13.0/hide-keyboard-at.png">
|
||||
</td>
|
||||
<td>Hide the keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="backspace-ap" src="../../../cdn/dev/img/app/13.0/backspace-ap.png">
|
||||
<img class="tablet" id="backspace-at" src="../../../cdn/dev/img/app/13.0/backspace-at.png">
|
||||
</td>
|
||||
<td>Backspace</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="return-ap" src="../../../cdn/dev/img/app/13.0/return-ap.png">
|
||||
<img class="tablet" id="return-at" src="../../../cdn/dev/img/app/13.0/return-at.png">
|
||||
</td>
|
||||
<td>Return</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="shift-ap" src="../../../cdn/dev/img/app/13.0/shift-ap.png">
|
||||
<img class="tablet" id="shift-at" src="../../../cdn/dev/img/app/13.0/shift-at.png">
|
||||
</td>
|
||||
<td>Shift key. Long press this key to access the CTRL, ALT and CTRL ALT keys
|
||||
(which can access additional key layers)
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="touch-hold-ap" src="../../../cdn/dev/img/app/13.0/touch-hold-ap.png">
|
||||
<img class="tablet" id="touch-hold-at" src="../../../cdn/dev/img/app/13.0/touch-hold-at.png">
|
||||
</td>
|
||||
<td>Keys with a small dot in the top right corner indicate a long press key. Access
|
||||
further functionality by long pressing the key
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="2" id="toolbar-ap">Toolbar Icons</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="share-ap" src="../../../cdn/dev/img/app/13.0/share-a.png"></td>
|
||||
<td>Share your text via Mail, Text, or Twitter</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="browser-ap" src="../../../cdn/dev/img/app/13.0/browser-a.png"></td>
|
||||
<td>Open the Keyman Browser to use the web in your language</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="menu-ap" src="../../../cdn/dev/img/app/13.0/menu-icon-a.png"></td>
|
||||
<td>Open the menu for additional options</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="font-size-ap" src="../../../cdn/dev/img/app/13.0/font-size-a.png"></td>
|
||||
<td>Adjust the font size</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="delete-ap" src="../../../cdn/dev/img/app/13.0/delete-a.png"></td>
|
||||
<td>Delete all current text</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="info-ap" src="../../../cdn/dev/img/app/13.0/info-a.png"></td>
|
||||
<td>Load this help page</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="get-started-ap" src="../../../cdn/dev/img/app/13.0/get-started-a.png"></td>
|
||||
<td>Open the initial setup screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="settings-ap" src="../../../cdn/dev/img/app/13.0/settings-a.png"></td>
|
||||
<td>Open the Keyman Settings screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="cloud-download-ap" src="../../../cdn/dev/img/app/13.0/ic_cloud_download.png"></td>
|
||||
<td>Update available to download for keyboard / dictionary</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h2>Accessing Keyboard Help</h2>
|
||||
<p>
|
||||
Step 1) Open the keyboard list by touching the globe key.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="keyboard-help1-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="keyboard-help1-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 2) Touch the info icon for your keyboard.
|
||||
</p>
|
||||
<p><img id="keyboard-help2-ap" src="../../../cdn/dev/img/app/13.0/info-a-gray.png"></p>
|
||||
<br/>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Integrate Keyman with your App or Website</h2>
|
||||
<p>
|
||||
If you are interested in learning how Keyman can be integrated into your own app or
|
||||
website, visit <a href="https://keyman.com/engine/">keyman.com/engine</a>
|
||||
</p>
|
||||
|
||||
<h2>Further Help</h2>
|
||||
<p>
|
||||
For more information on Keyman, visit <a href="https://keyman.com">keyman.com</a>
|
||||
<br/><br/>
|
||||
For more information on Keyman for Android, visit <a href="https://keyman.com/android">keyman.com/android</a>
|
||||
</p>
|
||||
|
||||
<div class="content-online">
|
||||
<h2>Keyman for Android Documentation Versions</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href='index.html'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/12.0/'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/11.0/'>Keyman for Android 11.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/10.0/'>Keyman for Android 10.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/2.0/'>Keyman for Android 2.0 Documentation</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,263 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2 class="content-in-app">Getting Started</h2>
|
||||
<h2 class="content-online">Keyman for Android</h2>
|
||||
|
||||
<p class="content-online"><a href='http://help.keyman.com.local/products/android/version-history'>Version history</a></p>
|
||||
|
||||
|
||||
<p>
|
||||
Keyman for Android lets you type in over 600 languages on Android mobiles and tablets.
|
||||
To get started, here are some helpful hints:
|
||||
</p>
|
||||
<table>
|
||||
<tr>
|
||||
<th colspan="2">Keyboard Keys <br/>(Keyboard Present)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="install-keyboard-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="install-keyboard-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</td>
|
||||
<td>Select another language/keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="hide-keyboard-ap" src="../../../cdn/dev/img/app/13.0/hide-keyboard-ap.png">
|
||||
<img class="tablet" id="hide-keyboard-at" src="../../../cdn/dev/img/app/13.0/hide-keyboard-at.png">
|
||||
</td>
|
||||
<td>Hide the keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="backspace-ap" src="../../../cdn/dev/img/app/13.0/backspace-ap.png">
|
||||
<img class="tablet" id="backspace-at" src="../../../cdn/dev/img/app/13.0/backspace-at.png">
|
||||
</td>
|
||||
<td>Backspace</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="return-ap" src="../../../cdn/dev/img/app/13.0/return-ap.png">
|
||||
<img class="tablet" id="return-at" src="../../../cdn/dev/img/app/13.0/return-at.png">
|
||||
</td>
|
||||
<td>Return</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="shift-ap" src="../../../cdn/dev/img/app/13.0/shift-ap.png">
|
||||
<img class="tablet" id="shift-at" src="../../../cdn/dev/img/app/13.0/shift-at.png">
|
||||
</td>
|
||||
<td>Shift key. Long press this key to access the CTRL, ALT and CTRL ALT keys
|
||||
(which can access additional key layers)
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="touch-hold-ap" src="../../../cdn/dev/img/app/13.0/touch-hold-ap.png">
|
||||
<img class="tablet" id="touch-hold-at" src="../../../cdn/dev/img/app/13.0/touch-hold-at.png">
|
||||
</td>
|
||||
<td>Keys with a small dot in the top right corner indicate a long press key. Access
|
||||
further functionality by long pressing the key
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="2" id="toolbar-ap">Toolbar Icons</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="share-ap" src="../../../cdn/dev/img/app/13.0/share-a.png"></td>
|
||||
<td>Share your text via Mail, Text, or Twitter</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="browser-ap" src="../../../cdn/dev/img/app/13.0/browser-a.png"></td>
|
||||
<td>Open the Keyman Browser to use the web in your language</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="menu-ap" src="../../../cdn/dev/img/app/13.0/menu-icon-a.png"></td>
|
||||
<td>Open the menu for additional options</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="font-size-ap" src="../../../cdn/dev/img/app/13.0/font-size-a.png"></td>
|
||||
<td>Adjust the font size</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="delete-ap" src="../../../cdn/dev/img/app/13.0/delete-a.png"></td>
|
||||
<td>Delete all current text</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="info-ap" src="../../../cdn/dev/img/app/13.0/info-a.png"></td>
|
||||
<td>Load this help page</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="get-started-ap" src="../../../cdn/dev/img/app/13.0/get-started-a.png"></td>
|
||||
<td>Open the initial setup screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="settings-ap" src="../../../cdn/dev/img/app/13.0/settings-a.png"></td>
|
||||
<td>Open the Keyman Settings screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="cloud-download-ap" src="../../../cdn/dev/img/app/13.0/ic_cloud_download.png"></td>
|
||||
<td>Update available to download for keyboard / dictionary</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h2>Accessing Keyboard Help</h2>
|
||||
<p>
|
||||
Step 1) Open the keyboard list by touching the globe key.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="keyboard-help1-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="keyboard-help1-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 2) Touch the info icon for your keyboard.
|
||||
</p>
|
||||
<p><img id="keyboard-help2-ap" src="../../../cdn/dev/img/app/13.0/info-a-gray.png"></p>
|
||||
<br/>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Integrate Keyman with your App or Website</h2>
|
||||
<p>
|
||||
If you are interested in learning how Keyman can be integrated into your own app or
|
||||
website, visit <a href="https://keyman.com/engine/">keyman.com/engine</a>
|
||||
</p>
|
||||
|
||||
<h2>Further Help</h2>
|
||||
<p>
|
||||
For more information on Keyman, visit <a href="https://keyman.com">keyman.com</a>
|
||||
<br/><br/>
|
||||
For more information on Keyman for Android, visit <a href="https://keyman.com/android">keyman.com/android</a>
|
||||
</p>
|
||||
|
||||
<div class="content-online">
|
||||
<h2>Keyman for Android Documentation Versions</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href='index.html'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/12.0/'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/11.0/'>Keyman for Android 11.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/10.0/'>Keyman for Android 10.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/2.0/'>Keyman for Android 2.0 Documentation</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,222 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Installing Custom Keyboards/Dictionaries - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Installing Custom Keyboards/Dictionaries</h2>
|
||||
|
||||
|
||||
<p>
|
||||
These same steps can be used for installing custom keyboard or custom dictionary packages. This example is for Khmer Angkor keyboard.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Step 1) Click the link to your custom package file.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-url-screen-ap" src="../../../cdn/dev/img/app/13.0/dist-url-screen-ap.png">
|
||||
<img class="tablet" id="dist-url-screen-at" src="../../../cdn/dev/img/app/13.0/dist-url-screen-at.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 2) Once the KMP file is on your device, you will need to browse to the KMP file and select it.
|
||||
From the Keyman menu, select 'Settings'.
|
||||
<br/>
|
||||
From the Keyman Settings menu, select 'Add Keyboard from Device'.
|
||||
</p>
|
||||
<p><img id="settings-add-keyboard-from-device-ap" src="../../../cdn/dev/img/app/13.0/settings-language-ap.png"></p>
|
||||
<p>
|
||||
The device will launch a file browser where you'll browse to the directory of your KMP file.
|
||||
A common place to look is the "Downloads" folder.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-file-browser-ap" src="../../../cdn/dev/img/app/13.0/dist-file-browser-ap.png">
|
||||
<img class="tablet" id="dist-file-browser-at" src="../../../cdn/dev/img/app/13.0/dist-file-browser-at.png">
|
||||
</p>
|
||||
<p>
|
||||
Selecting the KMP file should bring you to Step 3)
|
||||
</p>
|
||||
<p>
|
||||
Step 3) On Android 6.0 (Marshmallow) and higher, mobile apps need to request permissions to access storage. Keyman
|
||||
for Android needs access to read storage for installing the KMP file. At the dialog, select "ALLOW". Once authorized,
|
||||
Keyman for Android won't need to ask for storage permission again, unless the user revokes or uninstalls the app.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-storrage-permission-ap" src="../../../cdn/dev/img/app/13.0/dist-storage-permission-ap.png">
|
||||
<img class="tablet" id="dist-storrage-permission-at" src="../../../cdn/dev/img/app/13.0/dist-storage-permission-at.png">
|
||||
</p>
|
||||
<p>
|
||||
Older versions of Android grant Storage permissions at app installation time, so those users can skip this step.
|
||||
</p>
|
||||
<p>
|
||||
Step 4) Keyman for Android will verify the package, and display more information about it, including package version and 'readme' notes if available.
|
||||
This will be displayed at the confirmation to install the keyboard package.
|
||||
</p>
|
||||
<p>
|
||||
If "readme.htm" is not included, a generic page with the package ID and package version will be shown. Click the
|
||||
"Install" button to install the entire keyboard package.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-readme-ap" src="../../../cdn/dev/img/app/13.0/dist-readme-ap.png">
|
||||
<img class="tablet" id="dist-readme-at" src="../../../cdn/dev/img/app/13.0/dist-readme-at.png">
|
||||
</p>
|
||||
|
||||
|
||||
<p>
|
||||
Step 5) All the keyboards in the package are installed as a group. In this example, the package only has the
|
||||
"Khmer Angkor" keyboard, so it becomes the active keyboard. For custom dictionary packages, only one dictionary
|
||||
will be installed.
|
||||
</p>
|
||||
<p>
|
||||
If the keyboard package includes Welcome documentation, it will be displayed after the keyboard package is installed.
|
||||
This documentation helps you to get started using the keyboard.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-welcome-ap" src="../../../cdn/dev/img/app/13.0/dist-welcome-ap.png">
|
||||
<img class="tablet" id="dist-welcome-at" src="../../../cdn/dev/img/app/13.0/dist-welcome-at.png">
|
||||
</p>
|
||||
<p>
|
||||
Click the "OK" button to finish installing the keyboard. You should be able to select it from the Keyman globe
|
||||
and start typing with it in any app.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-install1-ap" src="../../../cdn/dev/img/app/13.0/dist-install1-ap.png">
|
||||
<img class="tablet" id="dist-install1-at" src="../../../cdn/dev/img/app/13.0/dist-install1-at.png">
|
||||
</p>
|
||||
<p>
|
||||
To learn how to create a custom installable keyboard,
|
||||
<a href="https://help.keyman.com/developer/12.0/guides/distribute/">click here</a>.
|
||||
</p>
|
||||
|
||||
<h2>Granting storage permission</h2>
|
||||
<p>
|
||||
If Keyman for Android is permanently denied storage access, attempts to install custom packages will fail with the
|
||||
notification "Storage permission request was denied". Perform these steps to grant Keyman for Android access to storage
|
||||
</p>
|
||||
<p>
|
||||
Step 1) Go to Android Settings.
|
||||
<br/>
|
||||
Step 2) Depending on your device, click "Apps", "Apps & notifications", or "App permissions" and grant Keyman
|
||||
storage permission. The screenshot below is from Android 9.0 Pie.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="keyman-storage-permission-ap" src="../../../cdn/dev/img/app/13.0/keyman-storage-permission-ap.png">
|
||||
<img class="tablet" id="keyman-storage-permission-at" src="../../../cdn/dev/img/app/13.0/keyman-storage-permission-at.png">
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,176 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Adding Keyboards - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Adding New Keyboards</h2>
|
||||
|
||||
|
||||
<p>
|
||||
To add keyboards, follow these steps:
|
||||
</p><p>
|
||||
Step 1)
|
||||
</p><p>
|
||||
Open the menu for additional options. Select 'Settings'
|
||||
</p><p>
|
||||
Step 2)
|
||||
</p><p>
|
||||
From the Keyman Settings menu, select 'Installed languages'
|
||||
</p><p>
|
||||
<img id="settings-language-ap" src="../../../cdn/dev/img/app/13.0/settings-language-ap.png">
|
||||
</p><p>
|
||||
Step 3)
|
||||
</p><p>
|
||||
From the 'Installed languages' menu, touch the <span class="command">+</span>
|
||||
button in the bottom right corner of your screen.
|
||||
</p><p>
|
||||
<img id="plus-a" src="../../../cdn/dev/img/app/13.0/plus-a.png">
|
||||
</p><p>
|
||||
Step 4)
|
||||
</p><p>
|
||||
A list of all available languages will appear. Scroll through this list until you find
|
||||
the language you want to install. Languages marked with a right arrow have multiple keyboards - for
|
||||
example we have 10+ different Tamil keyboards.
|
||||
</p><p>
|
||||
<img class="phone" id="lang-list-ap" src="../../../cdn/dev/img/app/13.0/lang-list-ap.png">
|
||||
<img class="tablet" id="lang-list-at" src="../../../cdn/dev/img/app/13.0/lang-list-at.png">
|
||||
</p><p>
|
||||
Select the language and keyboard you want to install - a popup will ask for confirmation,
|
||||
hit the <span class="command">Download</span> button.
|
||||
</p><p>
|
||||
<img class="phone" id="confirm-dl-ap" src="../../../cdn/dev/img/app/13.0/confirm-dl-ap.png">
|
||||
<img class="tablet" id="confirm-dl-at" src="../../../cdn/dev/img/app/13.0/confirm-dl-at.png">
|
||||
</p><p>
|
||||
Step 5)
|
||||
</p><p>
|
||||
Once the download is complete, the new keyboard will be selected. Touch the <span class="command">←</span>
|
||||
button on the top left corner of the popup several times and the new keyboard will become active.
|
||||
</p><p>
|
||||
<img class="phone" id="success-ap" src="../../../cdn/dev/img/app/13.0/dl-success-ap.png">
|
||||
<img class="tablet" id="success-at" src="../../../cdn/dev/img/app/13.0/dl-success-at.png">
|
||||
</p><p>
|
||||
Alternate Step for System Keyboard)
|
||||
</p><p>
|
||||
The Keyman system keyboard has an additional <span class="command">CLOSE KEYMAN</span> button at the bottom left of
|
||||
the "Keyboards" menu. Pushing this button will close Keyman and switch to the next non-Keyman system keyboard.
|
||||
</p><p>
|
||||
<img id="close-keyman-a" src="../../../cdn/dev/img/app/13.0/close-keyman-a.png"/>
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,181 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>The System-Wide Keyboard - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Installing System Wide Keyboards</h2>
|
||||
|
||||
|
||||
<p>
|
||||
Step 1) Open the Keyman app and select the menu for additional options.
|
||||
The screenshots below are of a device running Android 9.0 Pie.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings1-ap" src="../../../cdn/dev/img/app/13.0/settings1-ap.png">
|
||||
<img class="tablet" id="settings1-at" src="../../../cdn/dev/img/app/13.0/settings1-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 2) Select 'Get Started' and then select 'Enable Keyman as system-wide keyboard'.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings2-ap" src="../../../cdn/dev/img/app/13.0/settings2-ap.png">
|
||||
<img class="tablet" id="settings2-at" src="../../../cdn/dev/img/app/13.0/settings2-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
This will open an Android settings screen for 'Available virtual keyboard'.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings3-ap" src="../../../cdn/dev/img/app/13.0/settings3-ap.png">
|
||||
<img class="tablet" id="settings3-at" src="../../../cdn/dev/img/app/13.0/settings3-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 3) Enable 'Keyman' as an available virtual keyboard.
|
||||
This will bring up two confirmation dialogs.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings4-ap" src="../../../cdn/dev/img/app/13.0/settings4-ap.png">
|
||||
<img class="tablet" id="settings4-at" src="../../../cdn/dev/img/app/13.0/settings4-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
<img class="phone" id="settings5-ap" src="../../../cdn/dev/img/app/13.0/settings5-ap.png">
|
||||
<img class="tablet" id="settings5-at" src="../../../cdn/dev/img/app/13.0/settings5-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Select 'OK' on both. Now when the on-screen keyboard appears for apps other than Keyman,
|
||||
you'll see a keyboard icon at the bottom right.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings6-ap" src="../../../cdn/dev/img/app/13.0/settings6-ap.png">
|
||||
<img class="tablet" id="settings6-at" src="../../../cdn/dev/img/app/13.0/settings6-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Click the keyboard icon whenever you want to change the current system keyboard.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings7-ap" src="../../../cdn/dev/img/app/13.0/settings7-ap.png">
|
||||
<img class="tablet" id="settings7-at" src="../../../cdn/dev/img/app/13.0/settings7-at.png">
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,150 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Switching Between Keyboards - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Switching Between Keyboards</h2>
|
||||
|
||||
|
||||
<p>
|
||||
To switch keyboards, follow these steps:
|
||||
</p>
|
||||
<p>
|
||||
Step 1)
|
||||
</p>
|
||||
<p>
|
||||
With the keyboard visible, touch the globe key:
|
||||
<p>
|
||||
<img class="phone" id="globe-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="globe-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</p>
|
||||
<p>
|
||||
This will bring up a list of all currently installed languages (the default is English
|
||||
EuroLatin (SIL)). If you have already downloaded additional languages, they will appear here.
|
||||
Simply select them and the keyboard will re-appear with the new language.
|
||||
</p>
|
||||
|
||||
<h2>Hotkey</h2>
|
||||
<p>
|
||||
To switch between languages while using an external keyboard (i.e. a bluetooth keyboard), a quick and easy way is to
|
||||
use a hotkey combination. Press and hold 'Ctrl' and then press 'Tab'.
|
||||
You should then see the same listing of languages/keyboards. Tap on any available language of your choice.
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,200 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Removing Dictionaries - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Removing a Dictionary</h2>
|
||||
|
||||
|
||||
<p>
|
||||
To uninstall a dictionary, follow these steps:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Step 1)
|
||||
</p>
|
||||
<p>
|
||||
Open the menu for additional options. Select 'Settings'
|
||||
</p>
|
||||
<p>
|
||||
Step 2)
|
||||
</p>
|
||||
<p>
|
||||
From the Keyman Settings menu, select 'Installed languages'
|
||||
</p>
|
||||
<p>
|
||||
<img id="settings-languages-ap" src="../../../cdn/dev/img/app/13.0/settings-languages-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 3)
|
||||
</p>
|
||||
<p>
|
||||
From the 'Installed languages' menu, select the language for the dictionary you want to remove. In this example,
|
||||
we will be removing the "MTNT Dictionary" for the English language.
|
||||
</p>
|
||||
<p>
|
||||
<img id="settings-two-installed-languages-ap" src="../../../cdn/dev/img/app/13.0/settings-two-installed-languages-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 4)
|
||||
</p>
|
||||
<p>
|
||||
The language Settings menu lists currently installed keyboards and dictionaries associated with the language.
|
||||
Select the dictionary you want to uninstall at the bottom of the page.
|
||||
</p>
|
||||
<p>
|
||||
<img id="english-settings-ap" src="../../../cdn/dev/img/app/13.0/english-settings-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 5)
|
||||
</p>
|
||||
<p>
|
||||
The dictionaries menu displays the dictionaries that are available for a language. Installed dictionaries show a check mark.
|
||||
Select the dictionary to display the info menu.
|
||||
</p>
|
||||
<p>
|
||||
<img id="english-dictionaries-ap" src="../../../cdn/dev/img/app/13.0/english-dictionaries-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 6)
|
||||
</p>
|
||||
<p>
|
||||
The bottom of the dictionary settings menu displays an option to uninstall the dictionary.
|
||||
Select 'Uninstall dictionary' to get a prompt to delete the dictionary.
|
||||
</p>
|
||||
<p>
|
||||
<img id="english-dictionary-info-ap" src="../../../cdn/dev/img/app/13.0/english-dictionary-info-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 7)
|
||||
</p>
|
||||
<p>
|
||||
Press "Delete" to uninstall the dictionary.
|
||||
</p>
|
||||
<p>
|
||||
<img id="confirm-english-dictionary-delete-ap" src="../../../cdn/dev/img/app/13.0/confirm-english-dictionary-delete-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
You'll see a notification when the dictionary is deleted.
|
||||
</p>
|
||||
<p>
|
||||
<img id="uninstall-dictionary-notification-ap" src="../../../cdn/dev/img/app/13.0/uninstall-dictionary-notification-ap.png">
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,172 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Removing Keyboards - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Removing a Keyboard</h2>
|
||||
|
||||
|
||||
<p>
|
||||
To uninstall a keyboard, follow these steps:
|
||||
</p><p>
|
||||
Step 1)
|
||||
</p><p>
|
||||
Open the menu for additional options. Select 'Settings'
|
||||
</p><p>
|
||||
Step 2)
|
||||
</p><p>
|
||||
From the Keyman Settings menu, select 'Installed languages'
|
||||
</p><p>
|
||||
<img id="settings-languages-ap" src="../../../cdn/dev/img/app/13.0/settings-languages-ap.png">
|
||||
</p><p>
|
||||
Step 3)
|
||||
</p><p>
|
||||
From the 'Installed languages' menu, select the language for the keyboard you want to remove.
|
||||
</p><p>
|
||||
<img id="settings-two-installed-languages-ap" src="../../../cdn/dev/img/app/13.0/settings-two-installed-languages-ap.png">
|
||||
</p><p>
|
||||
Step 4)
|
||||
</p><p>
|
||||
The language Settings menu lists currently installed keyboards associated with the language.
|
||||
Select the keyboard you want to uninstall
|
||||
</p><p>
|
||||
<img id="khmer-settings-ap" src="../../../cdn/dev/img/app/13.0/khmer-settings-ap.png">
|
||||
</p><p>
|
||||
Step 5)
|
||||
</p><p>
|
||||
The bottom of the keyboard settings menu displays an option to uninstall the keyboard.
|
||||
Select 'Uninstall keyboard' to get a prompt to delete the keyboard.
|
||||
</p><p>
|
||||
Note: the default 'SIL EuroLatin' keyboard for English cannot be removed.
|
||||
</p><p>
|
||||
<img id="settings-khmer-info-ap" src="../../../cdn/dev/img/app/13.0/settings-khmer-info-ap.png">
|
||||
</p><p>
|
||||
Step 6)
|
||||
</p><p>
|
||||
Press "Delete" to uninstall the keyboard.
|
||||
</p><p>
|
||||
<img id="confirm-khmer-delete-ap" src="../../../cdn/dev/img/app/13.0/confirm-khmer-delete-ap.png">
|
||||
</p><p>
|
||||
You'll see a notification when the keyboard is deleted.
|
||||
</p><p>
|
||||
<img class="phone" id="uninstall-notification-ap" src="../../../cdn/dev/img/app/13.0/uninstall-notification-ap.png">
|
||||
<img class="tablet" id="uninstall-notification-at" src="../../../cdn/dev/img/app/13.0/uninstall-notification-at.png">
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,137 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Using the Keyman Browser - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on phone-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Using the Keyman Browser</h2>
|
||||
|
||||
|
||||
<p>
|
||||
Step 1) Click the Keyman Browser button in the Keyman app
|
||||
</p><p>
|
||||
Step 2) Enter the URL of a website to visit into the address bar, for example <strong>google.com</strong>.
|
||||
Keyman Browser will load the page and detect your language if it is present, and reformat it to show your
|
||||
language instead of square boxes.
|
||||
</p><p>
|
||||
Step 3) Use the bookmark button to save the current page for browsing later.
|
||||
</p><p>
|
||||
Step 4) Use the Globe icon to swap between languages.
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,263 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2 class="content-in-app">Getting Started</h2>
|
||||
<h2 class="content-online">Keyman for Android</h2>
|
||||
|
||||
<p class="content-online"><a href='http://help.keyman.com.local/products/android/version-history'>Version history</a></p>
|
||||
|
||||
|
||||
<p>
|
||||
Keyman for Android lets you type in over 600 languages on Android mobiles and tablets.
|
||||
To get started, here are some helpful hints:
|
||||
</p>
|
||||
<table>
|
||||
<tr>
|
||||
<th colspan="2">Keyboard Keys <br/>(Keyboard Present)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="install-keyboard-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="install-keyboard-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</td>
|
||||
<td>Select another language/keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="hide-keyboard-ap" src="../../../cdn/dev/img/app/13.0/hide-keyboard-ap.png">
|
||||
<img class="tablet" id="hide-keyboard-at" src="../../../cdn/dev/img/app/13.0/hide-keyboard-at.png">
|
||||
</td>
|
||||
<td>Hide the keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="backspace-ap" src="../../../cdn/dev/img/app/13.0/backspace-ap.png">
|
||||
<img class="tablet" id="backspace-at" src="../../../cdn/dev/img/app/13.0/backspace-at.png">
|
||||
</td>
|
||||
<td>Backspace</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="return-ap" src="../../../cdn/dev/img/app/13.0/return-ap.png">
|
||||
<img class="tablet" id="return-at" src="../../../cdn/dev/img/app/13.0/return-at.png">
|
||||
</td>
|
||||
<td>Return</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="shift-ap" src="../../../cdn/dev/img/app/13.0/shift-ap.png">
|
||||
<img class="tablet" id="shift-at" src="../../../cdn/dev/img/app/13.0/shift-at.png">
|
||||
</td>
|
||||
<td>Shift key. Long press this key to access the CTRL, ALT and CTRL ALT keys
|
||||
(which can access additional key layers)
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="touch-hold-ap" src="../../../cdn/dev/img/app/13.0/touch-hold-ap.png">
|
||||
<img class="tablet" id="touch-hold-at" src="../../../cdn/dev/img/app/13.0/touch-hold-at.png">
|
||||
</td>
|
||||
<td>Keys with a small dot in the top right corner indicate a long press key. Access
|
||||
further functionality by long pressing the key
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="2" id="toolbar-ap">Toolbar Icons</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="share-ap" src="../../../cdn/dev/img/app/13.0/share-a.png"></td>
|
||||
<td>Share your text via Mail, Text, or Twitter</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="browser-ap" src="../../../cdn/dev/img/app/13.0/browser-a.png"></td>
|
||||
<td>Open the Keyman Browser to use the web in your language</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="menu-ap" src="../../../cdn/dev/img/app/13.0/menu-icon-a.png"></td>
|
||||
<td>Open the menu for additional options</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="font-size-ap" src="../../../cdn/dev/img/app/13.0/font-size-a.png"></td>
|
||||
<td>Adjust the font size</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="delete-ap" src="../../../cdn/dev/img/app/13.0/delete-a.png"></td>
|
||||
<td>Delete all current text</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="info-ap" src="../../../cdn/dev/img/app/13.0/info-a.png"></td>
|
||||
<td>Load this help page</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="get-started-ap" src="../../../cdn/dev/img/app/13.0/get-started-a.png"></td>
|
||||
<td>Open the initial setup screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="settings-ap" src="../../../cdn/dev/img/app/13.0/settings-a.png"></td>
|
||||
<td>Open the Keyman Settings screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="cloud-download-ap" src="../../../cdn/dev/img/app/13.0/ic_cloud_download.png"></td>
|
||||
<td>Update available to download for keyboard / dictionary</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h2>Accessing Keyboard Help</h2>
|
||||
<p>
|
||||
Step 1) Open the keyboard list by touching the globe key.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="keyboard-help1-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="keyboard-help1-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 2) Touch the info icon for your keyboard.
|
||||
</p>
|
||||
<p><img id="keyboard-help2-ap" src="../../../cdn/dev/img/app/13.0/info-a-gray.png"></p>
|
||||
<br/>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Integrate Keyman with your App or Website</h2>
|
||||
<p>
|
||||
If you are interested in learning how Keyman can be integrated into your own app or
|
||||
website, visit <a href="https://keyman.com/engine/">keyman.com/engine</a>
|
||||
</p>
|
||||
|
||||
<h2>Further Help</h2>
|
||||
<p>
|
||||
For more information on Keyman, visit <a href="https://keyman.com">keyman.com</a>
|
||||
<br/><br/>
|
||||
For more information on Keyman for Android, visit <a href="https://keyman.com/android">keyman.com/android</a>
|
||||
</p>
|
||||
|
||||
<div class="content-online">
|
||||
<h2>Keyman for Android Documentation Versions</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href='index.html'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/12.0/'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/11.0/'>Keyman for Android 11.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/10.0/'>Keyman for Android 10.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/2.0/'>Keyman for Android 2.0 Documentation</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,263 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2 class="content-in-app">Getting Started</h2>
|
||||
<h2 class="content-online">Keyman for Android</h2>
|
||||
|
||||
<p class="content-online"><a href='http://help.keyman.com.local/products/android/version-history'>Version history</a></p>
|
||||
|
||||
|
||||
<p>
|
||||
Keyman for Android lets you type in over 600 languages on Android mobiles and tablets.
|
||||
To get started, here are some helpful hints:
|
||||
</p>
|
||||
<table>
|
||||
<tr>
|
||||
<th colspan="2">Keyboard Keys <br/>(Keyboard Present)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="install-keyboard-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="install-keyboard-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</td>
|
||||
<td>Select another language/keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="hide-keyboard-ap" src="../../../cdn/dev/img/app/13.0/hide-keyboard-ap.png">
|
||||
<img class="tablet" id="hide-keyboard-at" src="../../../cdn/dev/img/app/13.0/hide-keyboard-at.png">
|
||||
</td>
|
||||
<td>Hide the keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="backspace-ap" src="../../../cdn/dev/img/app/13.0/backspace-ap.png">
|
||||
<img class="tablet" id="backspace-at" src="../../../cdn/dev/img/app/13.0/backspace-at.png">
|
||||
</td>
|
||||
<td>Backspace</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="return-ap" src="../../../cdn/dev/img/app/13.0/return-ap.png">
|
||||
<img class="tablet" id="return-at" src="../../../cdn/dev/img/app/13.0/return-at.png">
|
||||
</td>
|
||||
<td>Return</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="shift-ap" src="../../../cdn/dev/img/app/13.0/shift-ap.png">
|
||||
<img class="tablet" id="shift-at" src="../../../cdn/dev/img/app/13.0/shift-at.png">
|
||||
</td>
|
||||
<td>Shift key. Long press this key to access the CTRL, ALT and CTRL ALT keys
|
||||
(which can access additional key layers)
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="touch-hold-ap" src="../../../cdn/dev/img/app/13.0/touch-hold-ap.png">
|
||||
<img class="tablet" id="touch-hold-at" src="../../../cdn/dev/img/app/13.0/touch-hold-at.png">
|
||||
</td>
|
||||
<td>Keys with a small dot in the top right corner indicate a long press key. Access
|
||||
further functionality by long pressing the key
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="2" id="toolbar-ap">Toolbar Icons</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="share-ap" src="../../../cdn/dev/img/app/13.0/share-a.png"></td>
|
||||
<td>Share your text via Mail, Text, or Twitter</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="browser-ap" src="../../../cdn/dev/img/app/13.0/browser-a.png"></td>
|
||||
<td>Open the Keyman Browser to use the web in your language</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="menu-ap" src="../../../cdn/dev/img/app/13.0/menu-icon-a.png"></td>
|
||||
<td>Open the menu for additional options</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="font-size-ap" src="../../../cdn/dev/img/app/13.0/font-size-a.png"></td>
|
||||
<td>Adjust the font size</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="delete-ap" src="../../../cdn/dev/img/app/13.0/delete-a.png"></td>
|
||||
<td>Delete all current text</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="info-ap" src="../../../cdn/dev/img/app/13.0/info-a.png"></td>
|
||||
<td>Load this help page</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="get-started-ap" src="../../../cdn/dev/img/app/13.0/get-started-a.png"></td>
|
||||
<td>Open the initial setup screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="settings-ap" src="../../../cdn/dev/img/app/13.0/settings-a.png"></td>
|
||||
<td>Open the Keyman Settings screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="cloud-download-ap" src="../../../cdn/dev/img/app/13.0/ic_cloud_download.png"></td>
|
||||
<td>Update available to download for keyboard / dictionary</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h2>Accessing Keyboard Help</h2>
|
||||
<p>
|
||||
Step 1) Open the keyboard list by touching the globe key.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="keyboard-help1-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="keyboard-help1-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 2) Touch the info icon for your keyboard.
|
||||
</p>
|
||||
<p><img id="keyboard-help2-ap" src="../../../cdn/dev/img/app/13.0/info-a-gray.png"></p>
|
||||
<br/>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Integrate Keyman with your App or Website</h2>
|
||||
<p>
|
||||
If you are interested in learning how Keyman can be integrated into your own app or
|
||||
website, visit <a href="https://keyman.com/engine/">keyman.com/engine</a>
|
||||
</p>
|
||||
|
||||
<h2>Further Help</h2>
|
||||
<p>
|
||||
For more information on Keyman, visit <a href="https://keyman.com">keyman.com</a>
|
||||
<br/><br/>
|
||||
For more information on Keyman for Android, visit <a href="https://keyman.com/android">keyman.com/android</a>
|
||||
</p>
|
||||
|
||||
<div class="content-online">
|
||||
<h2>Keyman for Android Documentation Versions</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href='index.html'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/12.0/'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/11.0/'>Keyman for Android 11.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/10.0/'>Keyman for Android 10.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/2.0/'>Keyman for Android 2.0 Documentation</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,263 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2 class="content-in-app">Getting Started</h2>
|
||||
<h2 class="content-online">Keyman for Android</h2>
|
||||
|
||||
<p class="content-online"><a href='http://help.keyman.com.local/products/android/version-history'>Version history</a></p>
|
||||
|
||||
|
||||
<p>
|
||||
Keyman for Android lets you type in over 600 languages on Android mobiles and tablets.
|
||||
To get started, here are some helpful hints:
|
||||
</p>
|
||||
<table>
|
||||
<tr>
|
||||
<th colspan="2">Keyboard Keys <br/>(Keyboard Present)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="install-keyboard-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="install-keyboard-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</td>
|
||||
<td>Select another language/keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="hide-keyboard-ap" src="../../../cdn/dev/img/app/13.0/hide-keyboard-ap.png">
|
||||
<img class="tablet" id="hide-keyboard-at" src="../../../cdn/dev/img/app/13.0/hide-keyboard-at.png">
|
||||
</td>
|
||||
<td>Hide the keyboard</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="backspace-ap" src="../../../cdn/dev/img/app/13.0/backspace-ap.png">
|
||||
<img class="tablet" id="backspace-at" src="../../../cdn/dev/img/app/13.0/backspace-at.png">
|
||||
</td>
|
||||
<td>Backspace</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="return-ap" src="../../../cdn/dev/img/app/13.0/return-ap.png">
|
||||
<img class="tablet" id="return-at" src="../../../cdn/dev/img/app/13.0/return-at.png">
|
||||
</td>
|
||||
<td>Return</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="shift-ap" src="../../../cdn/dev/img/app/13.0/shift-ap.png">
|
||||
<img class="tablet" id="shift-at" src="../../../cdn/dev/img/app/13.0/shift-at.png">
|
||||
</td>
|
||||
<td>Shift key. Long press this key to access the CTRL, ALT and CTRL ALT keys
|
||||
(which can access additional key layers)
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<img class="phone" id="touch-hold-ap" src="../../../cdn/dev/img/app/13.0/touch-hold-ap.png">
|
||||
<img class="tablet" id="touch-hold-at" src="../../../cdn/dev/img/app/13.0/touch-hold-at.png">
|
||||
</td>
|
||||
<td>Keys with a small dot in the top right corner indicate a long press key. Access
|
||||
further functionality by long pressing the key
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="2" id="toolbar-ap">Toolbar Icons</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="share-ap" src="../../../cdn/dev/img/app/13.0/share-a.png"></td>
|
||||
<td>Share your text via Mail, Text, or Twitter</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="browser-ap" src="../../../cdn/dev/img/app/13.0/browser-a.png"></td>
|
||||
<td>Open the Keyman Browser to use the web in your language</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="menu-ap" src="../../../cdn/dev/img/app/13.0/menu-icon-a.png"></td>
|
||||
<td>Open the menu for additional options</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="font-size-ap" src="../../../cdn/dev/img/app/13.0/font-size-a.png"></td>
|
||||
<td>Adjust the font size</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="delete-ap" src="../../../cdn/dev/img/app/13.0/delete-a.png"></td>
|
||||
<td>Delete all current text</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="info-ap" src="../../../cdn/dev/img/app/13.0/info-a.png"></td>
|
||||
<td>Load this help page</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="get-started-ap" src="../../../cdn/dev/img/app/13.0/get-started-a.png"></td>
|
||||
<td>Open the initial setup screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="settings-ap" src="../../../cdn/dev/img/app/13.0/settings-a.png"></td>
|
||||
<td>Open the Keyman Settings screen</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img id="cloud-download-ap" src="../../../cdn/dev/img/app/13.0/ic_cloud_download.png"></td>
|
||||
<td>Update available to download for keyboard / dictionary</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h2>Accessing Keyboard Help</h2>
|
||||
<p>
|
||||
Step 1) Open the keyboard list by touching the globe key.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="keyboard-help1-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="keyboard-help1-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 2) Touch the info icon for your keyboard.
|
||||
</p>
|
||||
<p><img id="keyboard-help2-ap" src="../../../cdn/dev/img/app/13.0/info-a-gray.png"></p>
|
||||
<br/>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Integrate Keyman with your App or Website</h2>
|
||||
<p>
|
||||
If you are interested in learning how Keyman can be integrated into your own app or
|
||||
website, visit <a href="https://keyman.com/engine/">keyman.com/engine</a>
|
||||
</p>
|
||||
|
||||
<h2>Further Help</h2>
|
||||
<p>
|
||||
For more information on Keyman, visit <a href="https://keyman.com">keyman.com</a>
|
||||
<br/><br/>
|
||||
For more information on Keyman for Android, visit <a href="https://keyman.com/android">keyman.com/android</a>
|
||||
</p>
|
||||
|
||||
<div class="content-online">
|
||||
<h2>Keyman for Android Documentation Versions</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href='index.html'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/12.0/'>Keyman for Android 12.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/11.0/'>Keyman for Android 11.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/10.0/'>Keyman for Android 10.0 Documentation</a></li>
|
||||
<li><a href='http://help.keyman.com.local/products/android/2.0/'>Keyman for Android 2.0 Documentation</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,222 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Installing Custom Keyboards/Dictionaries - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Installing Custom Keyboards/Dictionaries</h2>
|
||||
|
||||
|
||||
<p>
|
||||
These same steps can be used for installing custom keyboard or custom dictionary packages. This example is for Khmer Angkor keyboard.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Step 1) Click the link to your custom package file.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-url-screen-ap" src="../../../cdn/dev/img/app/13.0/dist-url-screen-ap.png">
|
||||
<img class="tablet" id="dist-url-screen-at" src="../../../cdn/dev/img/app/13.0/dist-url-screen-at.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 2) Once the KMP file is on your device, you will need to browse to the KMP file and select it.
|
||||
From the Keyman menu, select 'Settings'.
|
||||
<br/>
|
||||
From the Keyman Settings menu, select 'Add Keyboard from Device'.
|
||||
</p>
|
||||
<p><img id="settings-add-keyboard-from-device-ap" src="../../../cdn/dev/img/app/13.0/settings-language-ap.png"></p>
|
||||
<p>
|
||||
The device will launch a file browser where you'll browse to the directory of your KMP file.
|
||||
A common place to look is the "Downloads" folder.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-file-browser-ap" src="../../../cdn/dev/img/app/13.0/dist-file-browser-ap.png">
|
||||
<img class="tablet" id="dist-file-browser-at" src="../../../cdn/dev/img/app/13.0/dist-file-browser-at.png">
|
||||
</p>
|
||||
<p>
|
||||
Selecting the KMP file should bring you to Step 3)
|
||||
</p>
|
||||
<p>
|
||||
Step 3) On Android 6.0 (Marshmallow) and higher, mobile apps need to request permissions to access storage. Keyman
|
||||
for Android needs access to read storage for installing the KMP file. At the dialog, select "ALLOW". Once authorized,
|
||||
Keyman for Android won't need to ask for storage permission again, unless the user revokes or uninstalls the app.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-storrage-permission-ap" src="../../../cdn/dev/img/app/13.0/dist-storage-permission-ap.png">
|
||||
<img class="tablet" id="dist-storrage-permission-at" src="../../../cdn/dev/img/app/13.0/dist-storage-permission-at.png">
|
||||
</p>
|
||||
<p>
|
||||
Older versions of Android grant Storage permissions at app installation time, so those users can skip this step.
|
||||
</p>
|
||||
<p>
|
||||
Step 4) Keyman for Android will verify the package, and display more information about it, including package version and 'readme' notes if available.
|
||||
This will be displayed at the confirmation to install the keyboard package.
|
||||
</p>
|
||||
<p>
|
||||
If "readme.htm" is not included, a generic page with the package ID and package version will be shown. Click the
|
||||
"Install" button to install the entire keyboard package.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-readme-ap" src="../../../cdn/dev/img/app/13.0/dist-readme-ap.png">
|
||||
<img class="tablet" id="dist-readme-at" src="../../../cdn/dev/img/app/13.0/dist-readme-at.png">
|
||||
</p>
|
||||
|
||||
|
||||
<p>
|
||||
Step 5) All the keyboards in the package are installed as a group. In this example, the package only has the
|
||||
"Khmer Angkor" keyboard, so it becomes the active keyboard. For custom dictionary packages, only one dictionary
|
||||
will be installed.
|
||||
</p>
|
||||
<p>
|
||||
If the keyboard package includes Welcome documentation, it will be displayed after the keyboard package is installed.
|
||||
This documentation helps you to get started using the keyboard.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-welcome-ap" src="../../../cdn/dev/img/app/13.0/dist-welcome-ap.png">
|
||||
<img class="tablet" id="dist-welcome-at" src="../../../cdn/dev/img/app/13.0/dist-welcome-at.png">
|
||||
</p>
|
||||
<p>
|
||||
Click the "OK" button to finish installing the keyboard. You should be able to select it from the Keyman globe
|
||||
and start typing with it in any app.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="dist-install1-ap" src="../../../cdn/dev/img/app/13.0/dist-install1-ap.png">
|
||||
<img class="tablet" id="dist-install1-at" src="../../../cdn/dev/img/app/13.0/dist-install1-at.png">
|
||||
</p>
|
||||
<p>
|
||||
To learn how to create a custom installable keyboard,
|
||||
<a href="https://help.keyman.com/developer/12.0/guides/distribute/">click here</a>.
|
||||
</p>
|
||||
|
||||
<h2>Granting storage permission</h2>
|
||||
<p>
|
||||
If Keyman for Android is permanently denied storage access, attempts to install custom packages will fail with the
|
||||
notification "Storage permission request was denied". Perform these steps to grant Keyman for Android access to storage
|
||||
</p>
|
||||
<p>
|
||||
Step 1) Go to Android Settings.
|
||||
<br/>
|
||||
Step 2) Depending on your device, click "Apps", "Apps & notifications", or "App permissions" and grant Keyman
|
||||
storage permission. The screenshot below is from Android 9.0 Pie.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="keyman-storage-permission-ap" src="../../../cdn/dev/img/app/13.0/keyman-storage-permission-ap.png">
|
||||
<img class="tablet" id="keyman-storage-permission-at" src="../../../cdn/dev/img/app/13.0/keyman-storage-permission-at.png">
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,176 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Adding Keyboards - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Adding New Keyboards</h2>
|
||||
|
||||
|
||||
<p>
|
||||
To add keyboards, follow these steps:
|
||||
</p><p>
|
||||
Step 1)
|
||||
</p><p>
|
||||
Open the menu for additional options. Select 'Settings'
|
||||
</p><p>
|
||||
Step 2)
|
||||
</p><p>
|
||||
From the Keyman Settings menu, select 'Installed languages'
|
||||
</p><p>
|
||||
<img id="settings-language-ap" src="../../../cdn/dev/img/app/13.0/settings-language-ap.png">
|
||||
</p><p>
|
||||
Step 3)
|
||||
</p><p>
|
||||
From the 'Installed languages' menu, touch the <span class="command">+</span>
|
||||
button in the bottom right corner of your screen.
|
||||
</p><p>
|
||||
<img id="plus-a" src="../../../cdn/dev/img/app/13.0/plus-a.png">
|
||||
</p><p>
|
||||
Step 4)
|
||||
</p><p>
|
||||
A list of all available languages will appear. Scroll through this list until you find
|
||||
the language you want to install. Languages marked with a right arrow have multiple keyboards - for
|
||||
example we have 10+ different Tamil keyboards.
|
||||
</p><p>
|
||||
<img class="phone" id="lang-list-ap" src="../../../cdn/dev/img/app/13.0/lang-list-ap.png">
|
||||
<img class="tablet" id="lang-list-at" src="../../../cdn/dev/img/app/13.0/lang-list-at.png">
|
||||
</p><p>
|
||||
Select the language and keyboard you want to install - a popup will ask for confirmation,
|
||||
hit the <span class="command">Download</span> button.
|
||||
</p><p>
|
||||
<img class="phone" id="confirm-dl-ap" src="../../../cdn/dev/img/app/13.0/confirm-dl-ap.png">
|
||||
<img class="tablet" id="confirm-dl-at" src="../../../cdn/dev/img/app/13.0/confirm-dl-at.png">
|
||||
</p><p>
|
||||
Step 5)
|
||||
</p><p>
|
||||
Once the download is complete, the new keyboard will be selected. Touch the <span class="command">←</span>
|
||||
button on the top left corner of the popup several times and the new keyboard will become active.
|
||||
</p><p>
|
||||
<img class="phone" id="success-ap" src="../../../cdn/dev/img/app/13.0/dl-success-ap.png">
|
||||
<img class="tablet" id="success-at" src="../../../cdn/dev/img/app/13.0/dl-success-at.png">
|
||||
</p><p>
|
||||
Alternate Step for System Keyboard)
|
||||
</p><p>
|
||||
The Keyman system keyboard has an additional <span class="command">CLOSE KEYMAN</span> button at the bottom left of
|
||||
the "Keyboards" menu. Pushing this button will close Keyman and switch to the next non-Keyman system keyboard.
|
||||
</p><p>
|
||||
<img id="close-keyman-a" src="../../../cdn/dev/img/app/13.0/close-keyman-a.png"/>
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,181 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>The System-Wide Keyboard - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Installing System Wide Keyboards</h2>
|
||||
|
||||
|
||||
<p>
|
||||
Step 1) Open the Keyman app and select the menu for additional options.
|
||||
The screenshots below are of a device running Android 9.0 Pie.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings1-ap" src="../../../cdn/dev/img/app/13.0/settings1-ap.png">
|
||||
<img class="tablet" id="settings1-at" src="../../../cdn/dev/img/app/13.0/settings1-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 2) Select 'Get Started' and then select 'Enable Keyman as system-wide keyboard'.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings2-ap" src="../../../cdn/dev/img/app/13.0/settings2-ap.png">
|
||||
<img class="tablet" id="settings2-at" src="../../../cdn/dev/img/app/13.0/settings2-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
This will open an Android settings screen for 'Available virtual keyboard'.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings3-ap" src="../../../cdn/dev/img/app/13.0/settings3-ap.png">
|
||||
<img class="tablet" id="settings3-at" src="../../../cdn/dev/img/app/13.0/settings3-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Step 3) Enable 'Keyman' as an available virtual keyboard.
|
||||
This will bring up two confirmation dialogs.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings4-ap" src="../../../cdn/dev/img/app/13.0/settings4-ap.png">
|
||||
<img class="tablet" id="settings4-at" src="../../../cdn/dev/img/app/13.0/settings4-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
<img class="phone" id="settings5-ap" src="../../../cdn/dev/img/app/13.0/settings5-ap.png">
|
||||
<img class="tablet" id="settings5-at" src="../../../cdn/dev/img/app/13.0/settings5-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Select 'OK' on both. Now when the on-screen keyboard appears for apps other than Keyman,
|
||||
you'll see a keyboard icon at the bottom right.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings6-ap" src="../../../cdn/dev/img/app/13.0/settings6-ap.png">
|
||||
<img class="tablet" id="settings6-at" src="../../../cdn/dev/img/app/13.0/settings6-at.png">
|
||||
</p>
|
||||
<br/>
|
||||
<p>
|
||||
Click the keyboard icon whenever you want to change the current system keyboard.
|
||||
</p>
|
||||
<p>
|
||||
<img class="phone" id="settings7-ap" src="../../../cdn/dev/img/app/13.0/settings7-ap.png">
|
||||
<img class="tablet" id="settings7-at" src="../../../cdn/dev/img/app/13.0/settings7-at.png">
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,160 +0,0 @@
|
|||
<br />
|
||||
<font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
|
||||
<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: session_start(): ps_files_cleanup_dir: opendir(C:\Windows\temp) failed: No such file or directory (2) in C:\src\sites\help.keyman.com\_includes\includes\session-embed.php on line <i>3</i></th></tr>
|
||||
<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
|
||||
<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
|
||||
<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0002</td><td bgcolor='#eeeeec' align='right'>142536</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\src\sites\help.keyman.com\products\android\13.0\switching-between-keyboards.php' bgcolor='#eeeeec'>...\switching-between-keyboards.php<b>:</b>0</td></tr>
|
||||
<tr><td bgcolor='#eeeeec' align='center'>2</td><td bgcolor='#eeeeec' align='center'>0.0008</td><td bgcolor='#eeeeec' align='right'>186544</td><td bgcolor='#eeeeec'>require_once( <font color='#00bb00'>'C:\src\sites\help.keyman.com\_includes\includes\session-embed.php'</font> )</td><td title='C:\src\sites\help.keyman.com\products\android\13.0\switching-between-keyboards.php' bgcolor='#eeeeec'>...\switching-between-keyboards.php<b>:</b>3</td></tr>
|
||||
<tr><td bgcolor='#eeeeec' align='center'>3</td><td bgcolor='#eeeeec' align='center'>0.0008</td><td bgcolor='#eeeeec' align='right'>186576</td><td bgcolor='#eeeeec'><a href='http://www.php.net/function.session-start' target='_new'>session_start</a>
|
||||
( )</td><td title='C:\src\sites\help.keyman.com\_includes\includes\session-embed.php' bgcolor='#eeeeec'>...\session-embed.php<b>:</b>3</td></tr>
|
||||
</table></font>
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Switching Between Keyboards - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Switching Between Keyboards</h2>
|
||||
|
||||
|
||||
<p>
|
||||
To switch keyboards, follow these steps:
|
||||
</p>
|
||||
<p>
|
||||
Step 1)
|
||||
</p>
|
||||
<p>
|
||||
With the keyboard visible, touch the globe key:
|
||||
<p>
|
||||
<img class="phone" id="globe-ap" src="../../../cdn/dev/img/app/13.0/globe-ap.png">
|
||||
<img class="tablet" id="globe-at" src="../../../cdn/dev/img/app/13.0/globe-at.png">
|
||||
</p>
|
||||
<p>
|
||||
This will bring up a list of all currently installed languages (the default is English
|
||||
EuroLatin (SIL)). If you have already downloaded additional languages, they will appear here.
|
||||
Simply select them and the keyboard will re-appear with the new language.
|
||||
</p>
|
||||
|
||||
<h2>Hotkey</h2>
|
||||
<p>
|
||||
To switch between languages while using an external keyboard (i.e. a bluetooth keyboard), a quick and easy way is to
|
||||
use a hotkey combination. Press and hold 'Ctrl' and then press 'Tab'.
|
||||
You should then see the same listing of languages/keyboards. Tap on any available language of your choice.
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,200 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Removing Dictionaries - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Removing a Dictionary</h2>
|
||||
|
||||
|
||||
<p>
|
||||
To uninstall a dictionary, follow these steps:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Step 1)
|
||||
</p>
|
||||
<p>
|
||||
Open the menu for additional options. Select 'Settings'
|
||||
</p>
|
||||
<p>
|
||||
Step 2)
|
||||
</p>
|
||||
<p>
|
||||
From the Keyman Settings menu, select 'Installed languages'
|
||||
</p>
|
||||
<p>
|
||||
<img id="settings-languages-ap" src="../../../cdn/dev/img/app/13.0/settings-languages-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 3)
|
||||
</p>
|
||||
<p>
|
||||
From the 'Installed languages' menu, select the language for the dictionary you want to remove. In this example,
|
||||
we will be removing the "MTNT Dictionary" for the English language.
|
||||
</p>
|
||||
<p>
|
||||
<img id="settings-two-installed-languages-ap" src="../../../cdn/dev/img/app/13.0/settings-two-installed-languages-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 4)
|
||||
</p>
|
||||
<p>
|
||||
The language Settings menu lists currently installed keyboards and dictionaries associated with the language.
|
||||
Select the dictionary you want to uninstall at the bottom of the page.
|
||||
</p>
|
||||
<p>
|
||||
<img id="english-settings-ap" src="../../../cdn/dev/img/app/13.0/english-settings-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 5)
|
||||
</p>
|
||||
<p>
|
||||
The dictionaries menu displays the dictionaries that are available for a language. Installed dictionaries show a check mark.
|
||||
Select the dictionary to display the info menu.
|
||||
</p>
|
||||
<p>
|
||||
<img id="english-dictionaries-ap" src="../../../cdn/dev/img/app/13.0/english-dictionaries-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 6)
|
||||
</p>
|
||||
<p>
|
||||
The bottom of the dictionary settings menu displays an option to uninstall the dictionary.
|
||||
Select 'Uninstall dictionary' to get a prompt to delete the dictionary.
|
||||
</p>
|
||||
<p>
|
||||
<img id="english-dictionary-info-ap" src="../../../cdn/dev/img/app/13.0/english-dictionary-info-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
Step 7)
|
||||
</p>
|
||||
<p>
|
||||
Press "Delete" to uninstall the dictionary.
|
||||
</p>
|
||||
<p>
|
||||
<img id="confirm-english-dictionary-delete-ap" src="../../../cdn/dev/img/app/13.0/confirm-english-dictionary-delete-ap.png">
|
||||
</p>
|
||||
<p>
|
||||
You'll see a notification when the dictionary is deleted.
|
||||
</p>
|
||||
<p>
|
||||
<img id="uninstall-dictionary-notification-ap" src="../../../cdn/dev/img/app/13.0/uninstall-dictionary-notification-ap.png">
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,172 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Removing Keyboards - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Removing a Keyboard</h2>
|
||||
|
||||
|
||||
<p>
|
||||
To uninstall a keyboard, follow these steps:
|
||||
</p><p>
|
||||
Step 1)
|
||||
</p><p>
|
||||
Open the menu for additional options. Select 'Settings'
|
||||
</p><p>
|
||||
Step 2)
|
||||
</p><p>
|
||||
From the Keyman Settings menu, select 'Installed languages'
|
||||
</p><p>
|
||||
<img id="settings-languages-ap" src="../../../cdn/dev/img/app/13.0/settings-languages-ap.png">
|
||||
</p><p>
|
||||
Step 3)
|
||||
</p><p>
|
||||
From the 'Installed languages' menu, select the language for the keyboard you want to remove.
|
||||
</p><p>
|
||||
<img id="settings-two-installed-languages-ap" src="../../../cdn/dev/img/app/13.0/settings-two-installed-languages-ap.png">
|
||||
</p><p>
|
||||
Step 4)
|
||||
</p><p>
|
||||
The language Settings menu lists currently installed keyboards associated with the language.
|
||||
Select the keyboard you want to uninstall
|
||||
</p><p>
|
||||
<img id="khmer-settings-ap" src="../../../cdn/dev/img/app/13.0/khmer-settings-ap.png">
|
||||
</p><p>
|
||||
Step 5)
|
||||
</p><p>
|
||||
The bottom of the keyboard settings menu displays an option to uninstall the keyboard.
|
||||
Select 'Uninstall keyboard' to get a prompt to delete the keyboard.
|
||||
</p><p>
|
||||
Note: the default 'SIL EuroLatin' keyboard for English cannot be removed.
|
||||
</p><p>
|
||||
<img id="settings-khmer-info-ap" src="../../../cdn/dev/img/app/13.0/settings-khmer-info-ap.png">
|
||||
</p><p>
|
||||
Step 6)
|
||||
</p><p>
|
||||
Press "Delete" to uninstall the keyboard.
|
||||
</p><p>
|
||||
<img id="confirm-khmer-delete-ap" src="../../../cdn/dev/img/app/13.0/confirm-khmer-delete-ap.png">
|
||||
</p><p>
|
||||
You'll see a notification when the keyboard is deleted.
|
||||
</p><p>
|
||||
<img class="phone" id="uninstall-notification-ap" src="../../../cdn/dev/img/app/13.0/uninstall-notification-ap.png">
|
||||
<img class="tablet" id="uninstall-notification-at" src="../../../cdn/dev/img/app/13.0/uninstall-notification-at.png">
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,137 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Using the Keyman Browser - Keyman for Android Help</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<link rel='shortcut icon' href="../../../cdn/dev/img/favicon.ico">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/template.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/app-info-a.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/embed.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../../cdn/dev/css/formfactor.css">
|
||||
<link href='https://fonts.googleapis.com/css?family=Cabin:400,400italic,500,600,700,700italic|Source+Sans+Pro:400,700,900,600,300|Noto+Serif:400' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic' rel='stylesheet' type='text/css'>
|
||||
<script type='text/javascript' src='../../../cdn/dev/js/keyrenderer.js'></script>
|
||||
<script type="text/javascript">
|
||||
// Add a script element as a child of the body
|
||||
|
||||
function downloadJS(src) {
|
||||
var element = document.createElement("script");
|
||||
element.src = src;
|
||||
document.body.appendChild(element);
|
||||
}
|
||||
|
||||
function downloadJSAtOnload() {
|
||||
downloadJS("/cdn/dev/js/jquery1-11-1.min.js");
|
||||
downloadJS("/cdn/dev/js/kmlive.js");
|
||||
//downloadJS("/cdn/dev/js/keyrenderer.js");
|
||||
}
|
||||
|
||||
// Check for browser support of event handling capability
|
||||
if (window.addEventListener)
|
||||
window.addEventListener("load", downloadJSAtOnload, false);
|
||||
else if (window.attachEvent)
|
||||
window.attachEvent("onload", downloadJSAtOnload);
|
||||
else window.onload = downloadJSAtOnload;
|
||||
</script>
|
||||
<script>
|
||||
function isIEOnWin81orEarlier() {
|
||||
// If we are running IE11/or earlier on Windows 8.1 or earlier, then
|
||||
// the autolink generates filenames that are misrecognised for download links,
|
||||
// meaning users on those browesrs cannot easily download Keyman.
|
||||
// Easiest way to test this is to test against navigator.userAgent
|
||||
// Yes, we get some muddled analytics of cross-site of IE visitors but
|
||||
// it's a small enough percentage that we don't need to worry about it.
|
||||
return (navigator.userAgent.indexOf('Trident/') >= 0 && navigator.userAgent.indexOf('Windows NT 6') >= 0) ||
|
||||
(document.documentMode < 11);
|
||||
}
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
ga('create', 'UA-249828-1', 'auto', {'allowLinker': !isIEOnWin81orEarlier()});
|
||||
if(!isIEOnWin81orEarlier()) {
|
||||
ga('require', 'linker');
|
||||
ga('linker:autoLink',
|
||||
['keyman.com', 'www.keyman.com',
|
||||
'keymanweb.com', 'www.keymanweb.com',
|
||||
'help.keyman.com',
|
||||
'blog.keyman.com',
|
||||
'donate.keyman.com',
|
||||
'downloads.keyman.com',
|
||||
'developer.keyman.com',
|
||||
'keyman.dev',
|
||||
'keyman.blog',
|
||||
'blog.tavultesoft.com',
|
||||
'www.tavultesoft.com', 'tavultesoft.com', 'secure.tavultesoft.com'] );
|
||||
}
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
</head>
|
||||
<body data-device="Unknown">
|
||||
<div id="container">
|
||||
<div class="header">
|
||||
<div id="show-phone-menu-spacer"></div>
|
||||
<img id="logo" src="../../../cdn/dev/img/logo2.png" alt='Keyman Logo' />
|
||||
<div id="no-menu-spacer"></div>
|
||||
<img id="header-bottom" src="../../../cdn/dev/img/headerbar.png" alt='Header bottom' />
|
||||
<a id="help" href="http://keyman.com/">
|
||||
<p id="keyman-help">Keyman.com</p><img src="../../../cdn/dev/img/helpIcon.png">
|
||||
</a>
|
||||
</div>
|
||||
<div id="phone-header-spacer"></div><div class="main no-toc no-index">
|
||||
<div id="section2" class='embed-on tablet-form'>
|
||||
<div class="column-left">
|
||||
<div id="index">
|
||||
<h3>Index</h3>
|
||||
<div id="index-content"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<article>
|
||||
<h2>Using the Keyman Browser</h2>
|
||||
|
||||
|
||||
<p>
|
||||
Step 1) Click the Keyman Browser button in the Keyman app
|
||||
</p><p>
|
||||
Step 2) Enter the URL of a website to visit into the address bar, for example <strong>google.com</strong>.
|
||||
Keyman Browser will load the page and detect your language if it is present, and reformat it to show your
|
||||
language instead of square boxes.
|
||||
</p><p>
|
||||
Step 3) Use the bookmark button to save the current page for browsing later.
|
||||
</p><p>
|
||||
Step 4) Use the Globe icon to swap between languages.
|
||||
</p>
|
||||
|
||||
<h2>Help Index</h2>
|
||||
|
||||
<ul>
|
||||
<li class="content-in-app"><a href="index.php.html">Getting Started</a></li>
|
||||
<li class="content-online"><a href="index.php.html">Keyman for Android help home</a></li>
|
||||
<li><a href="installing-keyboards.php.html">Adding new keyboards</a></li>
|
||||
<li><a href='switching-between-keyboards.php.html'>Switching between keyboards</a></li>
|
||||
<li><a href='uninstalling-keyboards.php.html'>Removing a keyboard</a></li>
|
||||
<li><a href='installing-custom-packages.php.html'>Installing custom keyboards/dictionaries</a></li>
|
||||
<li><a href='installing-system-keyboard.php.html'>Installing system-wide keyboards</a></li>
|
||||
<li><a href='uninstalling-dictionaries.php.html'>Removing a dictionary</a></li>
|
||||
<li><a href='using-keyman-browser.php.html'>Using the Keyman browser</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="wrapper">
|
||||
<div class="footer-third sil-logo">
|
||||
<br>
|
||||
<a href="https://www.keyman.com/about/"><img id="sil-logo" src="../../../cdn/dev/img/sil-logo-blue-2017_1.png" alt='SIL' /></a>
|
||||
<p>Copyright © 1992-2019</p>
|
||||
<p>Created by <a href="https://www.keyman.com/about/">SIL International</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -26,10 +26,10 @@ public class InfoActivity extends BaseActivity {
|
|||
private WebView webView;
|
||||
private final String HELP_PRODUCTION_HOST = "help.keyman.com";
|
||||
private final String HELP_STAGING_HOST = "help.keyman-staging.com";
|
||||
private final String HELP_BASE_FORMAT_STR = "https://%s/products/android/%s/%s?embed=android&formfactor=%s";
|
||||
private final String HELP_BASE_FORMAT_STR = "https://%s/products/android/%s";
|
||||
private String kmUrl = "";
|
||||
private final String htmlPath = "file:///android_asset/info/products/android";
|
||||
private final String htmlPage = "index.php";
|
||||
private final String htmlPath = "file:///android_asset/info";
|
||||
private final String htmlPage = "index.html";
|
||||
private String kmOfflineUrl = "";
|
||||
|
||||
@SuppressLint("SetJavaScriptEnabled")
|
||||
|
|
@ -72,9 +72,9 @@ public class InfoActivity extends BaseActivity {
|
|||
helpHost = HELP_PRODUCTION_HOST;
|
||||
}
|
||||
|
||||
kmUrl = String.format(HELP_BASE_FORMAT_STR, helpHost, majorMinorVersion, htmlPage, formFactor);
|
||||
kmUrl = String.format(HELP_BASE_FORMAT_STR, helpHost, majorMinorVersion);
|
||||
// The offline mirroring process (currently) adds .html to the end of the whole string.
|
||||
kmOfflineUrl = String.format("%s/%s/%s.html", htmlPath, formFactor, htmlPage);
|
||||
kmOfflineUrl = String.format("%s/%s", htmlPath, htmlPage);
|
||||
webView = (WebView) findViewById(R.id.infoWebView);
|
||||
webView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
|
||||
webView.getSettings().setJavaScriptEnabled(true);
|
||||
|
|
|
|||
|
|
@ -54,6 +54,10 @@ jq 1.6+ is used during the build process to determine the latest versions of the
|
|||
On Linux
|
||||
`sudo apt install jq`
|
||||
|
||||
### Install Pandoc
|
||||
Pandoc is used during the build process to generate the app's offline help.
|
||||
Install from https://pandoc.org/installing.html
|
||||
|
||||
### Crash Reporting
|
||||
Keyman for Android uses [Sentry](https://sentry.io) for crash reporting at a server https://sentry.keyman.com. The analytics for Debug are associated with an App Bundle ID `com.tavultesoft.kmapro.debug`.
|
||||
|
||||
|
|
@ -109,12 +113,15 @@ To validate your configuration, from the `android/` folder run `sentry-cli info`
|
|||
the device serial number listed in step 2.
|
||||
|
||||
### Compiling the app's offline help
|
||||
Extra prerequisite:
|
||||
* `wget`
|
||||
Keyman for Android help is maintained in the Markdown files in android/help/.
|
||||
The script `help/build-help.sh` uses the `pandoc` tool to convert the Markdown files into html.
|
||||
|
||||
The script `build-help.sh` uses the `wget` tool to construct an offline bundle from the current
|
||||
online version of help on help.keyman.com. When significant changes to help content have been
|
||||
made, it is advisable to manually re-run this script to update the app's offline content.
|
||||
```bash
|
||||
cd help
|
||||
./build-help.sh htm
|
||||
```
|
||||
|
||||
This script is automatically called when Keyman for Android is built.
|
||||
|
||||
### Sample Projects
|
||||
|
||||
|
|
|
|||
|
|
@ -1,120 +0,0 @@
|
|||
#!/bin/bash
|
||||
# Uses the open-source `wget` utility to create an embedding-friendly offline mirror
|
||||
# equivalent of online help.
|
||||
|
||||
# Set sensible script defaults:
|
||||
# set -e: Terminate script if a command returns an error
|
||||
set -e
|
||||
# set -u: Terminate script if an unset variable is used
|
||||
set -u
|
||||
# set -x: Debugging use, print each statement
|
||||
# set -x
|
||||
|
||||
## START STANDARD BUILD SCRIPT INCLUDE
|
||||
# adjust relative paths as necessary
|
||||
THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")"
|
||||
. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh"
|
||||
## END STANDARD BUILD SCRIPT INCLUDE
|
||||
|
||||
display_usage ( ) {
|
||||
echo "build-help.sh [-local]"
|
||||
echo
|
||||
echo "Get an offline mirror of the VERSION_RELEASE (#.0) of Keyman for Android help"
|
||||
echo "from help.keyman.com."
|
||||
echo "For alpha and beta tiers, use http://help.keyman-staging.com"
|
||||
echo "For stable tier, uses http://help.keyman.com"
|
||||
echo " -local Instead of live site, get content from help.keyman.com.local"
|
||||
exit 1
|
||||
}
|
||||
|
||||
KMA_ROOT="$KEYMAN_ROOT/android"
|
||||
HELP_ROOT="$KMA_ROOT/KMAPro/kMAPro/src/main/assets/info"
|
||||
|
||||
# Default is using live site content
|
||||
DO_LOCAL=false
|
||||
|
||||
# Parse args
|
||||
while [[ $# -gt 0 ]] ; do
|
||||
key="$1"
|
||||
case $key in
|
||||
-local)
|
||||
DO_LOCAL=true
|
||||
;;
|
||||
-h|-?)
|
||||
display_usage
|
||||
;;
|
||||
esac
|
||||
shift # past argument
|
||||
done
|
||||
|
||||
echo
|
||||
echo "DO_LOCAL: $DO_LOCAL"
|
||||
echo
|
||||
|
||||
LOCAL_HOST="help.keyman.com.local"
|
||||
PRODUCTION_HOST="help.keyman.com"
|
||||
STAGING_HOST="help.keyman-staging.com"
|
||||
|
||||
if [ "$DO_LOCAL" = true ]; then
|
||||
WAIT=
|
||||
else
|
||||
# When running against live servers, it's best to have a small wait between loads.
|
||||
# Cloudflare may frown on not waiting, as `wget` is basically a scraper/bot.
|
||||
WAIT="--wait=2"
|
||||
fi
|
||||
|
||||
# Allows tracking slightly different settings for different offline-mirroring ops
|
||||
# should we decide to extract the actual mirroring function into its own file.
|
||||
#
|
||||
# iOS uses "--no-directories" instead, at least for now.
|
||||
OPTIONS="--no-host-directories"
|
||||
|
||||
DEVICE="android"
|
||||
HELP_SITE_SECTION="products/android"
|
||||
|
||||
# Clear previous help file downloads (if they exist)
|
||||
if [ -d "$HELP_ROOT" ]; then
|
||||
rm -r "$HELP_ROOT"
|
||||
fi
|
||||
|
||||
# Determine host by tier and local
|
||||
if [ "$DO_LOCAL" = true ]; then
|
||||
HOST="$LOCAL_HOST"
|
||||
elif [ "$TIER" = "alpha" ] || [ "$TIER" = "beta" ]; then
|
||||
HOST="$STAGING_HOST"
|
||||
else
|
||||
HOST="$PRODUCTION_HOST"
|
||||
fi
|
||||
|
||||
|
||||
do_offline_mirror() {
|
||||
# $1 - the form-factor specification.
|
||||
|
||||
# Create local mirror of the help page subdirectory.
|
||||
# We don't need /font/deploy folder resources, so they're excluded here.
|
||||
# One of the .css files auto-includes them otherwise.
|
||||
wget --mirror \
|
||||
--convert-links \
|
||||
$WAIT \
|
||||
--keep-session-cookies \
|
||||
--page-requisites \
|
||||
--no-parent \
|
||||
$OPTIONS \
|
||||
--restrict-file-names=windows \
|
||||
--exclude-directories /font/deploy \
|
||||
--directory-prefix="$HELP_ROOT" \
|
||||
--adjust-extension \
|
||||
"$HOST/$HELP_SITE_SECTION/$VERSION_RELEASE/index.php?embed=$DEVICE&formfactor=$1"
|
||||
|
||||
# Results in a flat-structured mirror of the specified folder,
|
||||
# together with all needed resources within the 'site' folder.
|
||||
}
|
||||
|
||||
do_offline_mirror "phone"
|
||||
|
||||
# Now for some magic... we rename the page's folder and redownload with the other setting.
|
||||
mv "$HELP_ROOT/$HELP_SITE_SECTION/$VERSION_RELEASE" "$HELP_ROOT/$HELP_SITE_SECTION/phone"
|
||||
|
||||
do_offline_mirror "tablet"
|
||||
|
||||
mv "$HELP_ROOT/$HELP_SITE_SECTION/$VERSION_RELEASE" "$HELP_ROOT/$HELP_SITE_SECTION/tablet"
|
||||
8
android/help/about/history.md
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
title: Version History
|
||||
---
|
||||
|
||||
A frequent updated changelog for Keyman is kept at [help.keyman.com/version-history](https://help.keyman.com/version-history/) on the Keyman Help website.
|
||||
|
||||
## Related Topics
|
||||
* [What's New](whatsnew)
|
||||
8
android/help/about/index.md
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
title: About Keyman
|
||||
---
|
||||
|
||||
* [Welcome to Keyman](welcome)
|
||||
* [What's New](whatsnew)
|
||||
* [System Requirements](system-requirements)
|
||||
* [Version History](history)
|
||||
12
android/help/about/system-requirements.md
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
title: System Requirements - Keyman for Android Help
|
||||
---
|
||||
|
||||
## Minimum System Requirements
|
||||
|
||||
### Minimum Android Version
|
||||
Keyman for Android will run on Android phones and tablets that have a minimum version of
|
||||
[Android 5.0 (Lollipop)](https://developer.android.com/about/versions/lollipop).
|
||||
|
||||
### Device Permissions
|
||||
Network and [external storage permissions](../troubleshooting/grant-storage-permission) are required to download and install keyboards/dictionaries from the Keyman servers.
|
||||
10
android/help/about/welcome.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
title: Welcome to Keyman
|
||||
---
|
||||
|
||||
Thank you for installing Keyman for Android. Whether you're a new or returning user, we believe you will appreciate the significant enhancements in this latest version of Keyman for Android.
|
||||
|
||||
## What is Keyman for Android?
|
||||
Keyman for Android lets you type in over 600 languages on Android mobiles and tablets.
|
||||
|
||||
[Click here](../start/) to get started
|
||||
20
android/help/about/whatsnew.md
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
title: What's New
|
||||
---
|
||||
|
||||
Here are some of the new features we have added to Keyman for Android 14.0:
|
||||
|
||||
* Improved UI for installing keyboard packages (#3498)
|
||||
* Select a language during keyboard package installation (#3481)
|
||||
|
||||

|
||||
|
||||
* Added new menu to add languages for an installed keyboard package (#3255)
|
||||
* Consolidated install menus for installing keyboards (#3245)
|
||||
* Fix slow input in the embedded browser (#3768)
|
||||
* Add system globe action to show system keyboards (#3197)
|
||||
* Improved corrections and predictions (#3555)
|
||||
* Match user input capital letters when offering suggestions (#3845)
|
||||
* Update minimum Android SDK to 21 (Android 5.0 Lollipop) (#2993)
|
||||
* Keyman now works more reliably with WeChat and Telegram (#4254)
|
||||
* Added new menu to change the display language (#4261)
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 351 B After Width: | Height: | Size: 351 B |
|
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 6.3 KiB |
|
Before Width: | Height: | Size: 7.1 KiB After Width: | Height: | Size: 7.1 KiB |
|
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB |
|
Before Width: | Height: | Size: 283 B After Width: | Height: | Size: 283 B |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 9 KiB After Width: | Height: | Size: 9 KiB |
|
Before Width: | Height: | Size: 7.1 KiB After Width: | Height: | Size: 7.1 KiB |
|
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.5 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 133 B After Width: | Height: | Size: 133 B |
|
Before Width: | Height: | Size: 536 B After Width: | Height: | Size: 536 B |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
BIN
android/help/android_images/ic_translate_a.png
Normal file
|
After Width: | Height: | Size: 1 KiB |
|
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 7.9 KiB |
BIN
android/help/android_images/khmer-downloading-a.png
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
BIN
android/help/android_images/khmer-install-a.png
Normal file
|
After Width: | Height: | Size: 58 KiB |
BIN
android/help/android_images/khmer-readme-a.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
android/help/android_images/khmer-search-a.png
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
android/help/android_images/khmer-settings-ap.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
android/help/android_images/khmer-welcome-a.png
Normal file
|
After Width: | Height: | Size: 88 KiB |
|
Before Width: | Height: | Size: 298 B After Width: | Height: | Size: 298 B |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
BIN
android/help/android_images/return.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
android/help/android_images/select_language.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 5.3 KiB |