buildsys: use QEMU's keycodemapdb again
instead of the split-out version that was last updated for QEMU 6.0.
This reverts the relevant part of 6838f03
("bump version to 2.11.1-1")
which doesn't state a reason why the splitting was done. If something
breaks, we can still re-do it and document the reason this time.
Alternatively, it would be necessary to adapt the paths, because
keycodemapdb lives in subprojects/ rather than ui/ since QEMU commit
c53648abba ("meson: use subproject for keycodemapdb").
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
a6ddea7ef7
commit
0d9c737d61
15
Makefile
15
Makefile
@ -39,16 +39,14 @@ PC_BIOS_FW_PURGE_LIST_IN = \
|
|||||||
BLOB_PURGE_SED_CMDS = $(foreach FILE,$(PC_BIOS_FW_PURGE_LIST_IN),-e "/$(FILE)/d")
|
BLOB_PURGE_SED_CMDS = $(foreach FILE,$(PC_BIOS_FW_PURGE_LIST_IN),-e "/$(FILE)/d")
|
||||||
BLOB_PURGE_FILTER = $(foreach FILE,$(PC_BIOS_FW_PURGE_LIST_IN),-e "$(FILE)")
|
BLOB_PURGE_FILTER = $(foreach FILE,$(PC_BIOS_FW_PURGE_LIST_IN),-e "$(FILE)")
|
||||||
|
|
||||||
$(BUILDDIR): keycodemapdb | submodule
|
$(BUILDDIR): submodule
|
||||||
# check if qemu/ was used for a build
|
# check if qemu/ was used for a build
|
||||||
# if so, please run 'make distclean' in the submodule and try again
|
# if so, please run 'make distclean' in the submodule and try again
|
||||||
test ! -f $(SRCDIR)/build/config.status
|
test ! -f $(SRCDIR)/build/config.status
|
||||||
rm -rf $@.tmp $@
|
rm -rf $@.tmp $@
|
||||||
cp -a $(SRCDIR) $@.tmp
|
cp -a $(SRCDIR) $@.tmp
|
||||||
cp -a debian $@.tmp/debian
|
cp -a debian $@.tmp/debian
|
||||||
rm -rf $@.tmp/ui/keycodemapdb
|
|
||||||
rm -rf $@.tmp/roms/edk2 # packaged separately
|
rm -rf $@.tmp/roms/edk2 # packaged separately
|
||||||
cp -a keycodemapdb $@.tmp/ui/
|
|
||||||
find $@.tmp/pc-bios -type f | grep $(BLOB_PURGE_FILTER) | xargs rm -f
|
find $@.tmp/pc-bios -type f | grep $(BLOB_PURGE_FILTER) | xargs rm -f
|
||||||
sed -i $(BLOB_PURGE_SED_CMDS) $@.tmp/pc-bios/meson.build
|
sed -i $(BLOB_PURGE_SED_CMDS) $@.tmp/pc-bios/meson.build
|
||||||
echo "git clone git://git.proxmox.com/git/pve-qemu.git\\ngit checkout $(GITVERSION)" > $@.tmp/debian/SOURCE
|
echo "git clone git://git.proxmox.com/git/pve-qemu.git\\ngit checkout $(GITVERSION)" > $@.tmp/debian/SOURCE
|
||||||
@ -76,17 +74,6 @@ dsc:
|
|||||||
$(DSC): $(ORIG_SRC_TAR) $(BUILDDIR)
|
$(DSC): $(ORIG_SRC_TAR) $(BUILDDIR)
|
||||||
cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d
|
cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d
|
||||||
|
|
||||||
.PHONY: update
|
|
||||||
update:
|
|
||||||
cd $(SRCDIR) && git submodule deinit ui/keycodemapdb || true
|
|
||||||
rm -rf $(SRCDIR)/ui/keycodemapdb
|
|
||||||
mkdir $(SRCDIR)/ui/keycodemapdb
|
|
||||||
cd $(SRCDIR) && git submodule update --init ui/keycodemapdb
|
|
||||||
rm -rf keycodemapdb
|
|
||||||
mkdir keycodemapdb
|
|
||||||
cp -R $(SRCDIR)/ui/keycodemapdb/* keycodemapdb/
|
|
||||||
git add keycodemapdb
|
|
||||||
|
|
||||||
.PHONY: upload
|
.PHONY: upload
|
||||||
upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
|
upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
|
||||||
upload: $(DEBS)
|
upload: $(DEBS)
|
||||||
|
@ -1,27 +0,0 @@
|
|||||||
Copyright (c) Individual contributors.
|
|
||||||
All rights reserved.
|
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
|
||||||
modification, are permitted provided that the following conditions are met:
|
|
||||||
|
|
||||||
1. Redistributions of source code must retain the above copyright notice,
|
|
||||||
this list of conditions and the following disclaimer.
|
|
||||||
|
|
||||||
2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
notice, this list of conditions and the following disclaimer in the
|
|
||||||
documentation and/or other materials provided with the distribution.
|
|
||||||
|
|
||||||
3. Neither the name of PyCA Cryptography nor the names of its contributors
|
|
||||||
may be used to endorse or promote products derived from this software
|
|
||||||
without specific prior written permission.
|
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
||||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
||||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
||||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
|
||||||
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
||||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
||||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
@ -1,339 +0,0 @@
|
|||||||
GNU GENERAL PUBLIC LICENSE
|
|
||||||
Version 2, June 1991
|
|
||||||
|
|
||||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
|
|
||||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies
|
|
||||||
of this license document, but changing it is not allowed.
|
|
||||||
|
|
||||||
Preamble
|
|
||||||
|
|
||||||
The licenses for most software are designed to take away your
|
|
||||||
freedom to share and change it. By contrast, the GNU General Public
|
|
||||||
License is intended to guarantee your freedom to share and change free
|
|
||||||
software--to make sure the software is free for all its users. This
|
|
||||||
General Public License applies to most of the Free Software
|
|
||||||
Foundation's software and to any other program whose authors commit to
|
|
||||||
using it. (Some other Free Software Foundation software is covered by
|
|
||||||
the GNU Lesser General Public License instead.) You can apply it to
|
|
||||||
your programs, too.
|
|
||||||
|
|
||||||
When we speak of free software, we are referring to freedom, not
|
|
||||||
price. Our General Public Licenses are designed to make sure that you
|
|
||||||
have the freedom to distribute copies of free software (and charge for
|
|
||||||
this service if you wish), that you receive source code or can get it
|
|
||||||
if you want it, that you can change the software or use pieces of it
|
|
||||||
in new free programs; and that you know you can do these things.
|
|
||||||
|
|
||||||
To protect your rights, we need to make restrictions that forbid
|
|
||||||
anyone to deny you these rights or to ask you to surrender the rights.
|
|
||||||
These restrictions translate to certain responsibilities for you if you
|
|
||||||
distribute copies of the software, or if you modify it.
|
|
||||||
|
|
||||||
For example, if you distribute copies of such a program, whether
|
|
||||||
gratis or for a fee, you must give the recipients all the rights that
|
|
||||||
you have. You must make sure that they, too, receive or can get the
|
|
||||||
source code. And you must show them these terms so they know their
|
|
||||||
rights.
|
|
||||||
|
|
||||||
We protect your rights with two steps: (1) copyright the software, and
|
|
||||||
(2) offer you this license which gives you legal permission to copy,
|
|
||||||
distribute and/or modify the software.
|
|
||||||
|
|
||||||
Also, for each author's protection and ours, we want to make certain
|
|
||||||
that everyone understands that there is no warranty for this free
|
|
||||||
software. If the software is modified by someone else and passed on, we
|
|
||||||
want its recipients to know that what they have is not the original, so
|
|
||||||
that any problems introduced by others will not reflect on the original
|
|
||||||
authors' reputations.
|
|
||||||
|
|
||||||
Finally, any free program is threatened constantly by software
|
|
||||||
patents. We wish to avoid the danger that redistributors of a free
|
|
||||||
program will individually obtain patent licenses, in effect making the
|
|
||||||
program proprietary. To prevent this, we have made it clear that any
|
|
||||||
patent must be licensed for everyone's free use or not licensed at all.
|
|
||||||
|
|
||||||
The precise terms and conditions for copying, distribution and
|
|
||||||
modification follow.
|
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
|
||||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
|
||||||
|
|
||||||
0. This License applies to any program or other work which contains
|
|
||||||
a notice placed by the copyright holder saying it may be distributed
|
|
||||||
under the terms of this General Public License. The "Program", below,
|
|
||||||
refers to any such program or work, and a "work based on the Program"
|
|
||||||
means either the Program or any derivative work under copyright law:
|
|
||||||
that is to say, a work containing the Program or a portion of it,
|
|
||||||
either verbatim or with modifications and/or translated into another
|
|
||||||
language. (Hereinafter, translation is included without limitation in
|
|
||||||
the term "modification".) Each licensee is addressed as "you".
|
|
||||||
|
|
||||||
Activities other than copying, distribution and modification are not
|
|
||||||
covered by this License; they are outside its scope. The act of
|
|
||||||
running the Program is not restricted, and the output from the Program
|
|
||||||
is covered only if its contents constitute a work based on the
|
|
||||||
Program (independent of having been made by running the Program).
|
|
||||||
Whether that is true depends on what the Program does.
|
|
||||||
|
|
||||||
1. You may copy and distribute verbatim copies of the Program's
|
|
||||||
source code as you receive it, in any medium, provided that you
|
|
||||||
conspicuously and appropriately publish on each copy an appropriate
|
|
||||||
copyright notice and disclaimer of warranty; keep intact all the
|
|
||||||
notices that refer to this License and to the absence of any warranty;
|
|
||||||
and give any other recipients of the Program a copy of this License
|
|
||||||
along with the Program.
|
|
||||||
|
|
||||||
You may charge a fee for the physical act of transferring a copy, and
|
|
||||||
you may at your option offer warranty protection in exchange for a fee.
|
|
||||||
|
|
||||||
2. You may modify your copy or copies of the Program or any portion
|
|
||||||
of it, thus forming a work based on the Program, and copy and
|
|
||||||
distribute such modifications or work under the terms of Section 1
|
|
||||||
above, provided that you also meet all of these conditions:
|
|
||||||
|
|
||||||
a) You must cause the modified files to carry prominent notices
|
|
||||||
stating that you changed the files and the date of any change.
|
|
||||||
|
|
||||||
b) You must cause any work that you distribute or publish, that in
|
|
||||||
whole or in part contains or is derived from the Program or any
|
|
||||||
part thereof, to be licensed as a whole at no charge to all third
|
|
||||||
parties under the terms of this License.
|
|
||||||
|
|
||||||
c) If the modified program normally reads commands interactively
|
|
||||||
when run, you must cause it, when started running for such
|
|
||||||
interactive use in the most ordinary way, to print or display an
|
|
||||||
announcement including an appropriate copyright notice and a
|
|
||||||
notice that there is no warranty (or else, saying that you provide
|
|
||||||
a warranty) and that users may redistribute the program under
|
|
||||||
these conditions, and telling the user how to view a copy of this
|
|
||||||
License. (Exception: if the Program itself is interactive but
|
|
||||||
does not normally print such an announcement, your work based on
|
|
||||||
the Program is not required to print an announcement.)
|
|
||||||
|
|
||||||
These requirements apply to the modified work as a whole. If
|
|
||||||
identifiable sections of that work are not derived from the Program,
|
|
||||||
and can be reasonably considered independent and separate works in
|
|
||||||
themselves, then this License, and its terms, do not apply to those
|
|
||||||
sections when you distribute them as separate works. But when you
|
|
||||||
distribute the same sections as part of a whole which is a work based
|
|
||||||
on the Program, the distribution of the whole must be on the terms of
|
|
||||||
this License, whose permissions for other licensees extend to the
|
|
||||||
entire whole, and thus to each and every part regardless of who wrote it.
|
|
||||||
|
|
||||||
Thus, it is not the intent of this section to claim rights or contest
|
|
||||||
your rights to work written entirely by you; rather, the intent is to
|
|
||||||
exercise the right to control the distribution of derivative or
|
|
||||||
collective works based on the Program.
|
|
||||||
|
|
||||||
In addition, mere aggregation of another work not based on the Program
|
|
||||||
with the Program (or with a work based on the Program) on a volume of
|
|
||||||
a storage or distribution medium does not bring the other work under
|
|
||||||
the scope of this License.
|
|
||||||
|
|
||||||
3. You may copy and distribute the Program (or a work based on it,
|
|
||||||
under Section 2) in object code or executable form under the terms of
|
|
||||||
Sections 1 and 2 above provided that you also do one of the following:
|
|
||||||
|
|
||||||
a) Accompany it with the complete corresponding machine-readable
|
|
||||||
source code, which must be distributed under the terms of Sections
|
|
||||||
1 and 2 above on a medium customarily used for software interchange; or,
|
|
||||||
|
|
||||||
b) Accompany it with a written offer, valid for at least three
|
|
||||||
years, to give any third party, for a charge no more than your
|
|
||||||
cost of physically performing source distribution, a complete
|
|
||||||
machine-readable copy of the corresponding source code, to be
|
|
||||||
distributed under the terms of Sections 1 and 2 above on a medium
|
|
||||||
customarily used for software interchange; or,
|
|
||||||
|
|
||||||
c) Accompany it with the information you received as to the offer
|
|
||||||
to distribute corresponding source code. (This alternative is
|
|
||||||
allowed only for noncommercial distribution and only if you
|
|
||||||
received the program in object code or executable form with such
|
|
||||||
an offer, in accord with Subsection b above.)
|
|
||||||
|
|
||||||
The source code for a work means the preferred form of the work for
|
|
||||||
making modifications to it. For an executable work, complete source
|
|
||||||
code means all the source code for all modules it contains, plus any
|
|
||||||
associated interface definition files, plus the scripts used to
|
|
||||||
control compilation and installation of the executable. However, as a
|
|
||||||
special exception, the source code distributed need not include
|
|
||||||
anything that is normally distributed (in either source or binary
|
|
||||||
form) with the major components (compiler, kernel, and so on) of the
|
|
||||||
operating system on which the executable runs, unless that component
|
|
||||||
itself accompanies the executable.
|
|
||||||
|
|
||||||
If distribution of executable or object code is made by offering
|
|
||||||
access to copy from a designated place, then offering equivalent
|
|
||||||
access to copy the source code from the same place counts as
|
|
||||||
distribution of the source code, even though third parties are not
|
|
||||||
compelled to copy the source along with the object code.
|
|
||||||
|
|
||||||
4. You may not copy, modify, sublicense, or distribute the Program
|
|
||||||
except as expressly provided under this License. Any attempt
|
|
||||||
otherwise to copy, modify, sublicense or distribute the Program is
|
|
||||||
void, and will automatically terminate your rights under this License.
|
|
||||||
However, parties who have received copies, or rights, from you under
|
|
||||||
this License will not have their licenses terminated so long as such
|
|
||||||
parties remain in full compliance.
|
|
||||||
|
|
||||||
5. You are not required to accept this License, since you have not
|
|
||||||
signed it. However, nothing else grants you permission to modify or
|
|
||||||
distribute the Program or its derivative works. These actions are
|
|
||||||
prohibited by law if you do not accept this License. Therefore, by
|
|
||||||
modifying or distributing the Program (or any work based on the
|
|
||||||
Program), you indicate your acceptance of this License to do so, and
|
|
||||||
all its terms and conditions for copying, distributing or modifying
|
|
||||||
the Program or works based on it.
|
|
||||||
|
|
||||||
6. Each time you redistribute the Program (or any work based on the
|
|
||||||
Program), the recipient automatically receives a license from the
|
|
||||||
original licensor to copy, distribute or modify the Program subject to
|
|
||||||
these terms and conditions. You may not impose any further
|
|
||||||
restrictions on the recipients' exercise of the rights granted herein.
|
|
||||||
You are not responsible for enforcing compliance by third parties to
|
|
||||||
this License.
|
|
||||||
|
|
||||||
7. If, as a consequence of a court judgment or allegation of patent
|
|
||||||
infringement or for any other reason (not limited to patent issues),
|
|
||||||
conditions are imposed on you (whether by court order, agreement or
|
|
||||||
otherwise) that contradict the conditions of this License, they do not
|
|
||||||
excuse you from the conditions of this License. If you cannot
|
|
||||||
distribute so as to satisfy simultaneously your obligations under this
|
|
||||||
License and any other pertinent obligations, then as a consequence you
|
|
||||||
may not distribute the Program at all. For example, if a patent
|
|
||||||
license would not permit royalty-free redistribution of the Program by
|
|
||||||
all those who receive copies directly or indirectly through you, then
|
|
||||||
the only way you could satisfy both it and this License would be to
|
|
||||||
refrain entirely from distribution of the Program.
|
|
||||||
|
|
||||||
If any portion of this section is held invalid or unenforceable under
|
|
||||||
any particular circumstance, the balance of the section is intended to
|
|
||||||
apply and the section as a whole is intended to apply in other
|
|
||||||
circumstances.
|
|
||||||
|
|
||||||
It is not the purpose of this section to induce you to infringe any
|
|
||||||
patents or other property right claims or to contest validity of any
|
|
||||||
such claims; this section has the sole purpose of protecting the
|
|
||||||
integrity of the free software distribution system, which is
|
|
||||||
implemented by public license practices. Many people have made
|
|
||||||
generous contributions to the wide range of software distributed
|
|
||||||
through that system in reliance on consistent application of that
|
|
||||||
system; it is up to the author/donor to decide if he or she is willing
|
|
||||||
to distribute software through any other system and a licensee cannot
|
|
||||||
impose that choice.
|
|
||||||
|
|
||||||
This section is intended to make thoroughly clear what is believed to
|
|
||||||
be a consequence of the rest of this License.
|
|
||||||
|
|
||||||
8. If the distribution and/or use of the Program is restricted in
|
|
||||||
certain countries either by patents or by copyrighted interfaces, the
|
|
||||||
original copyright holder who places the Program under this License
|
|
||||||
may add an explicit geographical distribution limitation excluding
|
|
||||||
those countries, so that distribution is permitted only in or among
|
|
||||||
countries not thus excluded. In such case, this License incorporates
|
|
||||||
the limitation as if written in the body of this License.
|
|
||||||
|
|
||||||
9. The Free Software Foundation may publish revised and/or new versions
|
|
||||||
of the General Public License from time to time. Such new versions will
|
|
||||||
be similar in spirit to the present version, but may differ in detail to
|
|
||||||
address new problems or concerns.
|
|
||||||
|
|
||||||
Each version is given a distinguishing version number. If the Program
|
|
||||||
specifies a version number of this License which applies to it and "any
|
|
||||||
later version", you have the option of following the terms and conditions
|
|
||||||
either of that version or of any later version published by the Free
|
|
||||||
Software Foundation. If the Program does not specify a version number of
|
|
||||||
this License, you may choose any version ever published by the Free Software
|
|
||||||
Foundation.
|
|
||||||
|
|
||||||
10. If you wish to incorporate parts of the Program into other free
|
|
||||||
programs whose distribution conditions are different, write to the author
|
|
||||||
to ask for permission. For software which is copyrighted by the Free
|
|
||||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
|
||||||
make exceptions for this. Our decision will be guided by the two goals
|
|
||||||
of preserving the free status of all derivatives of our free software and
|
|
||||||
of promoting the sharing and reuse of software generally.
|
|
||||||
|
|
||||||
NO WARRANTY
|
|
||||||
|
|
||||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
|
||||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
|
||||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
|
||||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
|
||||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
|
||||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
|
||||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
|
||||||
REPAIR OR CORRECTION.
|
|
||||||
|
|
||||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
|
||||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
|
||||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
|
||||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
|
||||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
|
||||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
|
||||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
|
||||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
|
||||||
POSSIBILITY OF SUCH DAMAGES.
|
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
|
||||||
|
|
||||||
How to Apply These Terms to Your New Programs
|
|
||||||
|
|
||||||
If you develop a new program, and you want it to be of the greatest
|
|
||||||
possible use to the public, the best way to achieve this is to make it
|
|
||||||
free software which everyone can redistribute and change under these terms.
|
|
||||||
|
|
||||||
To do so, attach the following notices to the program. It is safest
|
|
||||||
to attach them to the start of each source file to most effectively
|
|
||||||
convey the exclusion of warranty; and each file should have at least
|
|
||||||
the "copyright" line and a pointer to where the full notice is found.
|
|
||||||
|
|
||||||
<one line to give the program's name and a brief idea of what it does.>
|
|
||||||
Copyright (C) <year> <name of author>
|
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License along
|
|
||||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
|
||||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
||||||
|
|
||||||
Also add information on how to contact you by electronic and paper mail.
|
|
||||||
|
|
||||||
If the program is interactive, make it output a short notice like this
|
|
||||||
when it starts in an interactive mode:
|
|
||||||
|
|
||||||
Gnomovision version 69, Copyright (C) year name of author
|
|
||||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
|
||||||
This is free software, and you are welcome to redistribute it
|
|
||||||
under certain conditions; type `show c' for details.
|
|
||||||
|
|
||||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
|
||||||
parts of the General Public License. Of course, the commands you use may
|
|
||||||
be called something other than `show w' and `show c'; they could even be
|
|
||||||
mouse-clicks or menu items--whatever suits your program.
|
|
||||||
|
|
||||||
You should also get your employer (if you work as a programmer) or your
|
|
||||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
|
||||||
necessary. Here is a sample; alter the names:
|
|
||||||
|
|
||||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
|
||||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
|
||||||
|
|
||||||
<signature of Ty Coon>, 1 April 1989
|
|
||||||
Ty Coon, President of Vice
|
|
||||||
|
|
||||||
This General Public License does not permit incorporating your program into
|
|
||||||
proprietary programs. If your program is a subroutine library, you may
|
|
||||||
consider it more useful to permit linking proprietary applications with the
|
|
||||||
library. If this is what you want to do, use the GNU Lesser General
|
|
||||||
Public License instead of this License.
|
|
@ -1,114 +0,0 @@
|
|||||||
Key code / scan code / key symbol mapping database
|
|
||||||
==================================================
|
|
||||||
|
|
||||||
This module provides a database that maps between different
|
|
||||||
key code / scan code / key symbol sets:
|
|
||||||
|
|
||||||
- Linux evdev
|
|
||||||
- OS-X
|
|
||||||
- AT Set 1
|
|
||||||
- AT Set 2
|
|
||||||
- AT Set 3
|
|
||||||
- XT
|
|
||||||
- Linux XT KBD driver
|
|
||||||
- USB HID
|
|
||||||
- Win32
|
|
||||||
- XWin XT
|
|
||||||
- XKBD XT
|
|
||||||
- Xorg Evdev
|
|
||||||
- Xorg KBD
|
|
||||||
- Xorg OS-X
|
|
||||||
- XOrg Cygwin
|
|
||||||
- RFB
|
|
||||||
|
|
||||||
Licensing
|
|
||||||
---------
|
|
||||||
|
|
||||||
The contents of this package are dual licensed under the terms of:
|
|
||||||
|
|
||||||
- GNU General Public License (version 2 or later)
|
|
||||||
- 3-clause BSD License
|
|
||||||
|
|
||||||
The output files generated by keymap-gen may be distributed & used under
|
|
||||||
the terms of either of the above licenses.
|
|
||||||
|
|
||||||
Data formats
|
|
||||||
------------
|
|
||||||
|
|
||||||
The following output formats are possible
|
|
||||||
|
|
||||||
- Code map
|
|
||||||
|
|
||||||
An array mapping between key code sets values
|
|
||||||
|
|
||||||
Indexes in the array are values from the source code set.
|
|
||||||
Entries in the array are values from the target code set
|
|
||||||
|
|
||||||
|
|
||||||
- Code table
|
|
||||||
|
|
||||||
An array listing all values in a key code set
|
|
||||||
|
|
||||||
Indexes in the array are simply a numeric counter
|
|
||||||
Entries in the array are values from the key code set
|
|
||||||
|
|
||||||
The size of the array matches the total number of entries in
|
|
||||||
the keycode database.
|
|
||||||
|
|
||||||
|
|
||||||
- Name map
|
|
||||||
|
|
||||||
An array mapping between key code sets values and names
|
|
||||||
|
|
||||||
Indexes in the array are values from the source code set
|
|
||||||
Entries in the array are names from the target code set
|
|
||||||
|
|
||||||
|
|
||||||
- Name table
|
|
||||||
|
|
||||||
An array listing all names in a key code set
|
|
||||||
|
|
||||||
Indexes in the array are simply a numeric counter
|
|
||||||
Entries in the array are values from the key code set
|
|
||||||
|
|
||||||
The size of the array matches the total number of entries in
|
|
||||||
the keycode database.
|
|
||||||
|
|
||||||
|
|
||||||
Output languages
|
|
||||||
----------------
|
|
||||||
|
|
||||||
The tool is capable of generating data tables for the following
|
|
||||||
programming languages / environments
|
|
||||||
|
|
||||||
- Standard C
|
|
||||||
- GLib2 (standard C, but with GLib2 data types)
|
|
||||||
- Python
|
|
||||||
- Perl
|
|
||||||
|
|
||||||
|
|
||||||
Usage
|
|
||||||
-----
|
|
||||||
|
|
||||||
Map values from AT Set 1 to USB HID, generating tables for the
|
|
||||||
C programming language
|
|
||||||
|
|
||||||
$ keymap-gen --lang stdc code-map data/keymaps.csv atset1 usb
|
|
||||||
|
|
||||||
Generate a tables of names for Linux key codes, OS-X key codes,
|
|
||||||
in python - equivalent array indexes map between the two sets.
|
|
||||||
A variable name override is used
|
|
||||||
|
|
||||||
$ keymap-gen --varname linux_keycodes --lang stdc \
|
|
||||||
code-table data/keymaps.csv linux
|
|
||||||
$ keymap-gen --varname osx_keycodes --lang stdc \
|
|
||||||
code-table data/keymaps.csv os-x
|
|
||||||
|
|
||||||
Generate a mapping from XOrg XWin values to Win32 names
|
|
||||||
|
|
||||||
$ keymap-gen --lang perl name-map data/keymaps.csv xorgxwin win32
|
|
||||||
|
|
||||||
Generate a table of names for Linux key codes in Perl
|
|
||||||
|
|
||||||
$ keymap-gen --lang perl name-table data/keymaps.csv linux
|
|
||||||
|
|
@ -1,89 +0,0 @@
|
|||||||
This directory contains the raw data for mapping between different
|
|
||||||
keyboard codes. Naming if often based on the US keyboard layout, but
|
|
||||||
does not indicate the symbol actually generated by the key.
|
|
||||||
|
|
||||||
The columns currently in this data set are:
|
|
||||||
|
|
||||||
Linux
|
|
||||||
-----
|
|
||||||
|
|
||||||
Name and value of the hardware independent keycodes used by the linux
|
|
||||||
kernel and exposed through the input subsystem.
|
|
||||||
|
|
||||||
References: linux/input.h
|
|
||||||
|
|
||||||
macOS
|
|
||||||
-----
|
|
||||||
|
|
||||||
Low level key codes as exposed by Mac OS X/macOS.
|
|
||||||
|
|
||||||
References: Carbon/HIToolbox/Events.h
|
|
||||||
|
|
||||||
PC scan code sets
|
|
||||||
-----------------
|
|
||||||
|
|
||||||
Scan codes for the three orignal PC keyboard generations:
|
|
||||||
|
|
||||||
Set 1: XT
|
|
||||||
Set 2: AT
|
|
||||||
Set 3: PS/2
|
|
||||||
|
|
||||||
The sets include codes for modern keys as well and not just the keys
|
|
||||||
present on those original keyboards.
|
|
||||||
|
|
||||||
References: linux/drivers/input/keyboard/atkbd.c
|
|
||||||
|
|
||||||
USB HID
|
|
||||||
-------
|
|
||||||
|
|
||||||
Codes as specified by the HID profile in USB.
|
|
||||||
|
|
||||||
References: linux/drivers/hid/usbhid/usbkbd.c
|
|
||||||
|
|
||||||
Windows Virtual-key codes
|
|
||||||
-------------------------
|
|
||||||
|
|
||||||
The low level, hardware independent "VKEYs" exposed by Windows.
|
|
||||||
|
|
||||||
References: mingw32/winuser.h
|
|
||||||
|
|
||||||
XWin XT
|
|
||||||
-------
|
|
||||||
|
|
||||||
X11 keycodes generated by the XWin server. Based on the XT scan code
|
|
||||||
set.
|
|
||||||
|
|
||||||
References: xorg-server/hw/xwin/{winkeybd.c,winkeynames.h}
|
|
||||||
|
|
||||||
Xfree86 KBD XT
|
|
||||||
--------------
|
|
||||||
|
|
||||||
X11 keycodes generated by the Xfree86 keyboard drivers. Based on the XT
|
|
||||||
scan code set.
|
|
||||||
|
|
||||||
References: xf86-input-keyboard/src/at_scancode.c
|
|
||||||
|
|
||||||
X11 keysyms
|
|
||||||
-----------
|
|
||||||
|
|
||||||
Corresponding X11 keysym value(s) for a US keyboard layout.
|
|
||||||
|
|
||||||
WARNING: These columns represent symbols, not physical keys, and should
|
|
||||||
be used with extreme care.
|
|
||||||
|
|
||||||
References: http://cgit.freedesktop.org/xorg/proto/x11proto/plain/keysymdef.h
|
|
||||||
|
|
||||||
HTML KeyboardEvent.code
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
Key codes seen in the KeyboardEvent.code attribute as part of the
|
|
||||||
UI Events specification.
|
|
||||||
|
|
||||||
References: https://www.w3.org/TR/uievents-code/
|
|
||||||
|
|
||||||
XKEYBOARD key names
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
Hardware independent key names as used in the XKEYBOARD extension.
|
|
||||||
|
|
||||||
References: /usr/share/X11/xkb/keycodes/
|
|
@ -1,539 +0,0 @@
|
|||||||
"Linux Name","Linux Keycode","OS-X Name","OS-X Keycode","AT set1 keycode","AT set2 keycode","AT set3 keycode","USB Keycodes","Win32 Name","Win32 Keycode","Xwin XT","Xfree86 KBD XT","X11 keysym name","X11 keysym","HTML code","XKB key name","QEMU QKeyCode","Sun KBD","Apple ADB"
|
|
||||||
KEY_RESERVED,0,,0xff,,,,,,,,,,,,,unmapped,,0xff
|
|
||||||
KEY_ESC,1,Escape,0x35,0x01,0x76,0x08,41,VK_ESCAPE,0x1b,1,1,XK_Escape,0xff1b,Escape,ESC,esc,0x1d,0x35
|
|
||||||
KEY_1,2,ANSI_1,0x12,0x02,0x16,0x16,30,VK_1,0x31,2,2,XK_1,0x0031,Digit1,AE01,1,0x1e,0x12
|
|
||||||
KEY_1,2,ANSI_1,0x12,0x02,0x16,0x16,30,VK_1,0x31,2,2,XK_exclam,0x0021,Digit1,AE01,1,0x1e,0x12
|
|
||||||
KEY_2,3,ANSI_2,0x13,0x03,0x1e,0x1e,31,VK_2,0x32,3,3,XK_2,0x0032,Digit2,AE02,2,0x1f,0x13
|
|
||||||
KEY_2,3,ANSI_2,0x13,0x03,0x1e,0x1e,31,VK_2,0x32,3,3,XK_at,0x0040,Digit2,AE02,2,0x1f,0x13
|
|
||||||
KEY_3,4,ANSI_3,0x14,0x04,0x26,0x26,32,VK_3,0x33,4,4,XK_3,0x0033,Digit3,AE03,3,0x20,0x14
|
|
||||||
KEY_3,4,ANSI_3,0x14,0x04,0x26,0x26,32,VK_3,0x33,4,4,XK_numbersign,0x0023,Digit3,AE03,3,0x20,0x14
|
|
||||||
KEY_4,5,ANSI_4,0x15,0x05,0x25,0x25,33,VK_4,0x34,5,5,XK_4,0x0034,Digit4,AE04,4,0x21,0x15
|
|
||||||
KEY_4,5,ANSI_4,0x15,0x05,0x25,0x25,33,VK_4,0x34,5,5,XK_dollar,0x0024,Digit4,AE04,4,0x21,0x15
|
|
||||||
KEY_5,6,ANSI_5,0x17,0x06,0x2e,0x2e,34,VK_5,0x35,6,6,XK_5,0x0035,Digit5,AE05,5,0x22,0x17
|
|
||||||
KEY_5,6,ANSI_5,0x17,0x06,0x2e,0x2e,34,VK_5,0x35,6,6,XK_percent,0x0025,Digit5,AE05,5,0x22,0x17
|
|
||||||
KEY_6,7,ANSI_6,0x16,0x07,0x36,0x36,35,VK_6,0x36,7,7,XK_6,0x0036,Digit6,AE06,6,0x23,0x16
|
|
||||||
KEY_6,7,ANSI_6,0x16,0x07,0x36,0x36,35,VK_6,0x36,7,7,XK_asciicircum,0x005e,Digit6,AE06,6,0x23,0x16
|
|
||||||
KEY_7,8,ANSI_7,0x1a,0x08,0x3d,0x3d,36,VK_7,0x37,8,8,XK_7,0x0037,Digit7,AE07,7,0x24,0x1a
|
|
||||||
KEY_7,8,ANSI_7,0x1a,0x08,0x3d,0x3d,36,VK_7,0x37,8,8,XK_ampersand,0x0026,Digit7,AE07,7,0x24,0x1a
|
|
||||||
KEY_8,9,ANSI_8,0x1c,0x09,0x3e,0x3e,37,VK_8,0x38,9,9,XK_8,0x0038,Digit8,AE08,8,0x25,0x1c
|
|
||||||
KEY_8,9,ANSI_8,0x1c,0x09,0x3e,0x3e,37,VK_8,0x38,9,9,XK_asterisk,0x002a,Digit8,AE08,8,0x25,0x1c
|
|
||||||
KEY_9,10,ANSI_9,0x19,0x0a,0x46,0x46,38,VK_9,0x39,10,10,XK_9,0x0039,Digit9,AE09,9,0x26,0x19
|
|
||||||
KEY_9,10,ANSI_9,0x19,0x0a,0x46,0x46,38,VK_9,0x39,10,10,XK_parenleft,0x0028,Digit9,AE09,9,0x26,0x19
|
|
||||||
KEY_0,11,ANSI_0,0x1d,0x0b,0x45,0x45,39,VK_0,0x30,11,11,XK_0,0x0030,Digit0,AE10,0,0x27,0x1d
|
|
||||||
KEY_0,11,ANSI_0,0x1d,0x0b,0x45,0x45,39,VK_0,0x30,11,11,XK_parenright,0x0029,Digit0,AE10,0,0x27,0x1d
|
|
||||||
KEY_MINUS,12,ANSI_Minus,0x1b,0x0c,0x4e,0x4e,45,VK_OEM_MINUS,0xbd,12,12,XK_minus,0x002d,Minus,AE11,minus,0x28,0x1b
|
|
||||||
KEY_MINUS,12,ANSI_Minus,0x1b,0x0c,0x4e,0x4e,45,VK_OEM_MINUS,0xbd,12,12,XK_underscore,0x005f,Minus,AE11,minus,0x28,0x1b
|
|
||||||
KEY_EQUAL,13,ANSI_Equal,0x18,0x0d,0x55,0x55,46,VK_OEM_PLUS,0xbb,13,13,XK_equal,0x003d,Equal,AE12,equal,0x29,0x18
|
|
||||||
KEY_EQUAL,13,ANSI_Equal,0x18,0x0d,0x55,0x55,46,VK_OEM_PLUS,0xbb,13,13,XK_plus,0x002b,Equal,AE12,equal,0x29,0x18
|
|
||||||
KEY_BACKSPACE,14,Delete,0x33,0x0e,0x66,0x66,42,VK_BACK,0x08,14,14,XK_BackSpace,0xff08,Backspace,BKSP,backspace,0x2b,0x33
|
|
||||||
KEY_TAB,15,Tab,0x30,0x0f,0x0d,0x0d,43,VK_TAB,0x09,15,15,XK_Tab,0xff09,Tab,TAB,tab,0x35,0x30
|
|
||||||
KEY_Q,16,ANSI_Q,0xc,0x10,0x15,0x15,20,VK_Q,0x51,16,16,XK_Q,0x0051,KeyQ,AD01,q,0x36,0xc
|
|
||||||
KEY_Q,16,ANSI_Q,0xc,0x10,0x15,0x15,20,VK_Q,0x51,16,16,XK_q,0x0071,KeyQ,AD01,q,0x36,0xc
|
|
||||||
KEY_W,17,ANSI_W,0xd,0x11,0x1d,0x1d,26,VK_W,0x57,17,17,XK_W,0x0057,KeyW,AD02,w,0x37,0xd
|
|
||||||
KEY_W,17,ANSI_W,0xd,0x11,0x1d,0x1d,26,VK_W,0x57,17,17,XK_w,0x0077,KeyW,AD02,w,0x37,0xd
|
|
||||||
KEY_E,18,ANSI_E,0xe,0x12,0x24,0x24,8,VK_E,0x45,18,18,XK_E,0x0045,KeyE,AD03,e,0x38,0xe
|
|
||||||
KEY_E,18,ANSI_E,0xe,0x12,0x24,0x24,8,VK_E,0x45,18,18,XK_e,0x0065,KeyE,AD03,e,0x38,0xe
|
|
||||||
KEY_R,19,ANSI_R,0xf,0x13,0x2d,0x2d,21,VK_R,0x52,19,19,XK_R,0x0052,KeyR,AD04,r,0x39,0xf
|
|
||||||
KEY_R,19,ANSI_R,0xf,0x13,0x2d,0x2d,21,VK_R,0x52,19,19,XK_r,0x0072,KeyR,AD04,r,0x39,0xf
|
|
||||||
KEY_T,20,ANSI_T,0x11,0x14,0x2c,0x2c,23,VK_T,0x54,20,20,XK_T,0x0054,KeyT,AD05,t,0x3a,0x11
|
|
||||||
KEY_T,20,ANSI_T,0x11,0x14,0x2c,0x2c,23,VK_T,0x54,20,20,XK_t,0x0074,KeyT,AD05,t,0x3a,0x11
|
|
||||||
KEY_Y,21,ANSI_Y,0x10,0x15,0x35,0x35,28,VK_Y,0x59,21,21,XK_Y,0x0059,KeyY,AD06,y,0x3b,0x10
|
|
||||||
KEY_Y,21,ANSI_Y,0x10,0x15,0x35,0x35,28,VK_Y,0x59,21,21,XK_y,0x0079,KeyY,AD06,y,0x3b,0x10
|
|
||||||
KEY_U,22,ANSI_U,0x20,0x16,0x3c,0x3c,24,VK_U,0x55,22,22,XK_U,0x0055,KeyU,AD07,u,0x3c,0x20
|
|
||||||
KEY_U,22,ANSI_U,0x20,0x16,0x3c,0x3c,24,VK_U,0x55,22,22,XK_u,0x0075,KeyU,AD07,u,0x3c,0x20
|
|
||||||
KEY_I,23,ANSI_I,0x22,0x17,0x43,0x43,12,VK_I,0x49,23,23,XK_I,0x0049,KeyI,AD08,i,0x3d,0x22
|
|
||||||
KEY_I,23,ANSI_I,0x22,0x17,0x43,0x43,12,VK_I,0x49,23,23,XK_i,0x0069,KeyI,AD08,i,0x3d,0x22
|
|
||||||
KEY_O,24,ANSI_O,0x1f,0x18,0x44,0x44,18,VK_O,0x4f,24,24,XK_O,0x004f,KeyO,AD09,o,0x3e,0x1f
|
|
||||||
KEY_O,24,ANSI_O,0x1f,0x18,0x44,0x44,18,VK_O,0x4f,24,24,XK_o,0x006f,KeyO,AD09,o,0x3e,0x1f
|
|
||||||
KEY_P,25,ANSI_P,0x23,0x19,0x4d,0x4d,19,VK_P,0x50,25,25,XK_P,0x0050,KeyP,AD10,p,0x3f,0x23
|
|
||||||
KEY_P,25,ANSI_P,0x23,0x19,0x4d,0x4d,19,VK_P,0x50,25,25,XK_p,0x0070,KeyP,AD10,p,0x3f,0x23
|
|
||||||
KEY_LEFTBRACE,26,ANSI_LeftBracket,0x21,0x1a,0x54,0x54,47,VK_OEM_4,0xdb,26,26,XK_bracketleft,0x005b,BracketLeft,AD11,bracket_left,0x40,0x21
|
|
||||||
KEY_LEFTBRACE,26,ANSI_LeftBracket,0x21,0x1a,0x54,0x54,47,VK_OEM_4,0xdb,26,26,XK_braceleft,0x007b,BracketLeft,AD11,bracket_left,0x40,0x21
|
|
||||||
KEY_RIGHTBRACE,27,ANSI_RightBracket,0x1e,0x1b,0x5b,0x5b,48,VK_OEM_6,0xdd,27,27,XK_bracketright,0x005d,BracketRight,AD12,bracket_right,0x41,0x1e
|
|
||||||
KEY_RIGHTBRACE,27,ANSI_RightBracket,0x1e,0x1b,0x5b,0x5b,48,VK_OEM_6,0xdd,27,27,XK_braceright,0x007d,BracketRight,AD12,bracket_right,0x41,0x1e
|
|
||||||
KEY_ENTER,28,Return,0x24,0x1c,0x5a,0x5a,40,VK_RETURN,0x0d,28,28,XK_Return,0xff0d,Enter,RTRN,ret,0x59,0x24
|
|
||||||
KEY_LEFTCTRL,29,Control,0x3b,0x1d,0x14,0x11,224,VK_LCONTROL,0xa2,29,29,XK_Control_L,0xffe3,ControlLeft,LCTL,ctrl,0x4c,0x36
|
|
||||||
KEY_LEFTCTRL,29,Control,0x3b,0x1d,0x14,0x11,224,VK_CONTROL,0x11,29,29,XK_Control_L,0xffe3,ControlLeft,LCTL,ctrl,0x4c,0x36
|
|
||||||
KEY_A,30,ANSI_A,0x0,0x1e,0x1c,0x1c,4,VK_A,0x41,30,30,XK_A,0x0041,KeyA,AC01,a,0x4d,0x0
|
|
||||||
KEY_A,30,ANSI_A,0x0,0x1e,0x1c,0x1c,4,VK_A,0x41,30,30,XK_a,0x0061,KeyA,AC01,a,0x4d,0x0
|
|
||||||
KEY_S,31,ANSI_S,0x1,0x1f,0x1b,0x1b,22,VK_S,0x53,31,31,XK_S,0x0053,KeyS,AC02,s,0x4e,0x1
|
|
||||||
KEY_S,31,ANSI_S,0x1,0x1f,0x1b,0x1b,22,VK_S,0x53,31,31,XK_s,0x0073,KeyS,AC02,s,0x4e,0x1
|
|
||||||
KEY_D,32,ANSI_D,0x2,0x20,0x23,0x23,7,VK_D,0x44,32,32,XK_D,0x0044,KeyD,AC03,d,0x4f,0x2
|
|
||||||
KEY_D,32,ANSI_D,0x2,0x20,0x23,0x23,7,VK_D,0x44,32,32,XK_d,0x0064,KeyD,AC03,d,0x4f,0x2
|
|
||||||
KEY_F,33,ANSI_F,0x3,0x21,0x2b,0x2b,9,VK_F,0x46,33,33,XK_F,0x0046,KeyF,AC04,f,0x50,0x3
|
|
||||||
KEY_F,33,ANSI_F,0x3,0x21,0x2b,0x2b,9,VK_F,0x46,33,33,XK_f,0x0066,KeyF,AC04,f,0x50,0x3
|
|
||||||
KEY_G,34,ANSI_G,0x5,0x22,0x34,0x34,10,VK_G,0x47,34,34,XK_G,0x0047,KeyG,AC05,g,0x51,0x5
|
|
||||||
KEY_G,34,ANSI_G,0x5,0x22,0x34,0x34,10,VK_G,0x47,34,34,XK_g,0x0067,KeyG,AC05,g,0x51,0x5
|
|
||||||
KEY_H,35,ANSI_H,0x4,0x23,0x33,0x33,11,VK_H,0x48,35,35,XK_H,0x0048,KeyH,AC06,h,0x52,0x4
|
|
||||||
KEY_H,35,ANSI_H,0x4,0x23,0x33,0x33,11,VK_H,0x48,35,35,XK_h,0x0068,KeyH,AC06,h,0x52,0x4
|
|
||||||
KEY_J,36,ANSI_J,0x26,0x24,0x3b,0x3b,13,VK_J,0x4a,36,36,XK_J,0x004a,KeyJ,AC07,j,0x53,0x26
|
|
||||||
KEY_J,36,ANSI_J,0x26,0x24,0x3b,0x3b,13,VK_J,0x4a,36,36,XK_j,0x006a,KeyJ,AC07,j,0x53,0x26
|
|
||||||
KEY_K,37,ANSI_K,0x28,0x25,0x42,0x42,14,VK_K,0x4b,37,37,XK_K,0x004b,KeyK,AC08,k,0x54,0x28
|
|
||||||
KEY_K,37,ANSI_K,0x28,0x25,0x42,0x42,14,VK_K,0x4b,37,37,XK_k,0x006b,KeyK,AC08,k,0x54,0x28
|
|
||||||
KEY_L,38,ANSI_L,0x25,0x26,0x4b,0x4b,15,VK_L,0x4c,38,38,XK_L,0x004c,KeyL,AC09,l,0x55,0x25
|
|
||||||
KEY_L,38,ANSI_L,0x25,0x26,0x4b,0x4b,15,VK_L,0x4c,38,38,XK_l,0x006c,KeyL,AC09,l,0x55,0x25
|
|
||||||
KEY_SEMICOLON,39,ANSI_Semicolon,0x29,0x27,0x4c,0x4c,51,VK_OEM_1,0xba,39,39,XK_semicolon,0x003b,Semicolon,AC10,semicolon,0x56,0x29
|
|
||||||
KEY_SEMICOLON,39,ANSI_Semicolon,0x29,0x27,0x4c,0x4c,51,VK_OEM_1,0xba,39,39,XK_colon,0x003a,Semicolon,AC10,semicolon,0x56,0x29
|
|
||||||
KEY_APOSTROPHE,40,ANSI_Quote,0x27,0x28,0x52,0x52,52,VK_OEM_7,0xde,40,40,XK_apostrophe,0x0027,Quote,AC11,apostrophe,0x57,0x27
|
|
||||||
KEY_APOSTROPHE,40,ANSI_Quote,0x27,0x28,0x52,0x52,52,VK_OEM_7,0xde,40,40,XK_quotedbl,0x0022,Quote,AC11,apostrophe,0x57,0x27
|
|
||||||
KEY_GRAVE,41,ANSI_Grave,0x32,0x29,0x0e,0x0e,53,VK_OEM_3,0xc0,41,41,XK_grave,0x0060,Backquote,TLDE,grave_accent,0x2a,0x32
|
|
||||||
KEY_GRAVE,41,ANSI_Grave,0x32,0x29,0x0e,0x0e,53,VK_OEM_3,0xc0,41,41,XK_grave,0x0060,Backquote,AB00,grave_accent,0x2a,0x32
|
|
||||||
KEY_GRAVE,41,ANSI_Grave,0x32,0x29,0x0e,0x0e,53,VK_OEM_3,0xc0,41,41,XK_asciitilde,0x007e,Backquote,TLDE,grave_accent,0x2a,0x32
|
|
||||||
KEY_GRAVE,41,ANSI_Grave,0x32,0x29,0x0e,0x0e,53,VK_OEM_3,0xc0,41,41,XK_asciitilde,0x007e,Backquote,AB00,grave_accent,0x2a,0x32
|
|
||||||
KEY_SHIFT,42,Shift,0x38,0x2a,0x12,0x12,225,VK_SHIFT,0x10,42,42,XK_Shift_L,0xffe1,ShiftLeft,LFSH,shift,0x63,0x38
|
|
||||||
KEY_LEFTSHIFT,42,Shift,0x38,0x2a,0x12,0x12,225,VK_LSHIFT,0xa0,42,42,XK_Shift_L,0xffe1,ShiftLeft,LFSH,shift,0x63,0x38
|
|
||||||
KEY_BACKSLASH,43,ANSI_Backslash,0x2a,0x2b,0x5d,0x5c,49,VK_OEM_5,0xdc,43,43,XK_backslash,0x005c,Backslash,BKSL,backslash,0x58,0x2a
|
|
||||||
KEY_BACKSLASH,43,ANSI_Backslash,0x2a,0x2b,0x5d,0x5c,49,VK_OEM_5,0xdc,43,43,XK_backslash,0x005c,Backslash,AC12,backslash,0x58,0x2a
|
|
||||||
KEY_BACKSLASH,43,ANSI_Backslash,0x2a,0x2b,0x5d,0x5c,49,VK_OEM_5,0xdc,43,43,XK_bar,0x007c,Backslash,BKSL,backslash,0x58,0x2a
|
|
||||||
KEY_BACKSLASH,43,ANSI_Backslash,0x2a,0x2b,0x5d,0x5c,49,VK_OEM_5,0xdc,43,43,XK_bar,0x007c,Backslash,AC12,backslash,0x58,0x2a
|
|
||||||
KEY_BACKSLASH,43,ANSI_Backslash,0x2a,0x2b,0x5d,0x5c,50,VK_OEM_5,0xdc,43,43,XK_backslash,0x005c,Backslash,BKSL,backslash,0x58,0x2a
|
|
||||||
KEY_BACKSLASH,43,ANSI_Backslash,0x2a,0x2b,0x5d,0x5c,50,VK_OEM_5,0xdc,43,43,XK_backslash,0x005c,Backslash,AC12,backslash,0x58,0x2a
|
|
||||||
KEY_BACKSLASH,43,ANSI_Backslash,0x2a,0x2b,0x5d,0x5c,50,VK_OEM_5,0xdc,43,43,XK_bar,0x007c,Backslash,BKSL,backslash,0x58,0x2a
|
|
||||||
KEY_BACKSLASH,43,ANSI_Backslash,0x2a,0x2b,0x5d,0x5c,50,VK_OEM_5,0xdc,43,43,XK_bar,0x007c,Backslash,AC12,backslash,0x58,0x2a
|
|
||||||
KEY_Z,44,ANSI_Z,0x6,0x2c,0x1a,0x1a,29,VK_Z,0x5a,44,44,XK_Z,0x005a,KeyZ,AB01,z,0x64,0x6
|
|
||||||
KEY_Z,44,ANSI_Z,0x6,0x2c,0x1a,0x1a,29,VK_Z,0x5a,44,44,XK_z,0x007a,KeyZ,AB01,z,0x64,0x6
|
|
||||||
KEY_X,45,ANSI_X,0x7,0x2d,0x22,0x22,27,VK_X,0x58,45,45,XK_X,0x0058,KeyX,AB02,x,0x65,0x7
|
|
||||||
KEY_X,45,ANSI_X,0x7,0x2d,0x22,0x22,27,VK_X,0x58,45,45,XK_x,0x0078,KeyX,AB02,x,0x65,0x7
|
|
||||||
KEY_C,46,ANSI_C,0x8,0x2e,0x21,0x21,6,VK_C,0x43,46,46,XK_C,0x0043,KeyC,AB03,c,0x66,0x8
|
|
||||||
KEY_C,46,ANSI_C,0x8,0x2e,0x21,0x21,6,VK_C,0x43,46,46,XK_c,0x0063,KeyC,AB03,c,0x66,0x8
|
|
||||||
KEY_V,47,ANSI_V,0x9,0x2f,0x2a,0x2a,25,VK_V,0x56,47,47,XK_V,0x0056,KeyV,AB04,v,0x67,0x9
|
|
||||||
KEY_V,47,ANSI_V,0x9,0x2f,0x2a,0x2a,25,VK_V,0x56,47,47,XK_v,0x0076,KeyV,AB04,v,0x67,0x9
|
|
||||||
KEY_B,48,ANSI_B,0xb,0x30,0x32,0x32,5,VK_B,0x42,48,48,XK_B,0x0042,KeyB,AB05,b,0x68,0xb
|
|
||||||
KEY_B,48,ANSI_B,0xb,0x30,0x32,0x32,5,VK_B,0x42,48,48,XK_b,0x0062,KeyB,AB05,b,0x68,0xb
|
|
||||||
KEY_N,49,ANSI_N,0x2d,0x31,0x31,0x31,17,VK_N,0x4e,49,49,XK_N,0x004e,KeyN,AB06,n,0x69,0x2d
|
|
||||||
KEY_N,49,ANSI_N,0x2d,0x31,0x31,0x31,17,VK_N,0x4e,49,49,XK_n,0x006e,KeyN,AB06,n,0x69,0x2d
|
|
||||||
KEY_M,50,ANSI_M,0x2e,0x32,0x3a,0x3a,16,VK_M,0x4d,50,50,XK_M,0x004d,KeyM,AB07,m,0x6a,0x2e
|
|
||||||
KEY_M,50,ANSI_M,0x2e,0x32,0x3a,0x3a,16,VK_M,0x4d,50,50,XK_m,0x006d,KeyM,AB07,m,0x6a,0x2e
|
|
||||||
KEY_COMMA,51,ANSI_Comma,0x2b,0x33,0x41,0x41,54,VK_OEM_COMMA,0xbc,51,51,XK_comma,0x002c,Comma,AB08,comma,0x6b,0x2b
|
|
||||||
KEY_COMMA,51,ANSI_Comma,0x2b,0x33,0x41,0x41,54,VK_OEM_COMMA,0xbc,51,51,XK_less,0x003c,Comma,AB08,comma,0x6b,0x2b
|
|
||||||
KEY_DOT,52,ANSI_Period,0x2f,0x34,0x49,0x49,55,VK_OEM_PERIOD,0xbe,52,52,XK_period,0x002e,Period,AB09,dot,0x6c,0x2f
|
|
||||||
KEY_DOT,52,ANSI_Period,0x2f,0x34,0x49,0x49,55,VK_OEM_PERIOD,0xbe,52,52,XK_greater,0x003e,Period,AB09,dot,0x6c,0x2f
|
|
||||||
KEY_SLASH,53,ANSI_Slash,0x2c,0x35,0x4a,0x4a,56,VK_OEM_2,0xbf,53,53,XK_slash,0x002f,Slash,AB10,slash,0x6d,0x2c
|
|
||||||
KEY_SLASH,53,ANSI_Slash,0x2c,0x35,0x4a,0x4a,56,VK_OEM_2,0xbf,53,53,XK_question,0x003f,Slash,AB10,slash,0x6d,0x2c
|
|
||||||
KEY_RIGHTSHIFT,54,RightShift,0x3c,0x36,0x59,0x59,229,VK_RSHIFT,0xa1,54,54,XK_Shift_R,0xffe2,ShiftRight,RTSH,shift_r,0x6e,0x7b
|
|
||||||
KEY_KPASTERISK,55,ANSI_KeypadMultiply,0x43,0x37,0x7c,0x7e,85,VK_MULTIPLY,0x6a,55,55,XK_multiply,0x00d7,NumpadMultiply,KPMU,asterisk,0x2f,0x43
|
|
||||||
KEY_KPASTERISK,55,ANSI_KeypadMultiply,0x43,0x37,0x7c,0x7e,85,VK_MULTIPLY,0x6a,55,55,XK_multiply,0x00d7,NumpadMultiply,KPMU,kp_multiply,0x2f,0x43
|
|
||||||
KEY_LEFTALT,56,Option,0x3a,0x38,0x11,0x19,226,VK_LMENU,0xa4,56,56,XK_Alt_L,0xffe9,AltLeft,LALT,alt,0x13,0x3a
|
|
||||||
KEY_LEFTALT,56,Option,0x3a,0x38,0x11,0x19,226,VK_MENU,0x12,56,56,XK_Alt_L,0xffe9,AltLeft,LALT,alt,0x13,0x3a
|
|
||||||
KEY_SPACE,57,Space,0x31,0x39,0x29,0x29,44,VK_SPACE,0x20,57,57,XK_space,0x0020,Space,SPCE,spc,0x79,0x31
|
|
||||||
KEY_CAPSLOCK,58,CapsLock,0x39,0x3a,0x58,0x14,57,VK_CAPITAL,0x14,58,58,XK_Caps_Lock,0xffe5,CapsLock,CAPS,caps_lock,0x77,0x39
|
|
||||||
KEY_F1,59,F1,0x7a,0x3b,0x05,0x07,58,VK_F1,0x70,59,59,XK_F1,0xffbe,F1,FK01,f1,0x05,0x7a
|
|
||||||
KEY_F2,60,F2,0x78,0x3c,0x06,0x0f,59,VK_F2,0x71,60,60,XK_F2,0xffbf,F2,FK02,f2,0x06,0x78
|
|
||||||
KEY_F3,61,F3,0x63,0x3d,0x04,0x17,60,VK_F3,0x72,61,61,XK_F3,0xffc0,F3,FK03,f3,0x08,0x63
|
|
||||||
KEY_F4,62,F4,0x76,0x3e,0x0c,0x1f,61,VK_F4,0x73,62,62,XK_F4,0xffc1,F4,FK04,f4,0x0a,0x76
|
|
||||||
KEY_F5,63,F5,0x60,0x3f,0x03,0x27,62,VK_F5,0x74,63,63,XK_F5,0xffc2,F5,FK05,f5,0x0c,0x60
|
|
||||||
KEY_F6,64,F6,0x61,0x40,0x0b,0x2f,63,VK_F6,0x75,64,64,XK_F6,0xffc3,F6,FK06,f6,0x0e,0x61
|
|
||||||
KEY_F7,65,F7,0x62,0x41,0x83,0x37,64,VK_F7,0x76,65,65,XK_F7,0xffc4,F7,FK07,f7,0x10,0x62
|
|
||||||
KEY_F8,66,F8,0x64,0x42,0x0a,0x3f,65,VK_F8,0x77,66,66,XK_F8,0xffc5,F8,FK08,f8,0x11,0x64
|
|
||||||
KEY_F9,67,F9,0x65,0x43,0x01,0x47,66,VK_F9,0x78,67,67,XK_F9,0xffc6,F9,FK09,f9,0x12,0x65
|
|
||||||
KEY_F10,68,F10,0x6d,0x44,0x09,0x4f,67,VK_F10,0x79,68,68,XK_F10,0xffc7,F10,FK10,f10,0x07,0x6d
|
|
||||||
KEY_NUMLOCK,69,ANSI_KeypadClear,0x47,0x45,0x77,0x76,83,VK_NUMLOCK,0x90,69,69,XK_Num_Lock,0xff7f,NumLock,NMLK,num_lock,0x62,0x47
|
|
||||||
KEY_SCROLLLOCK,70,,,0x46,0x7e,0x5f,71,VK_SCROLL,0x91,70,70,XK_Scroll_Lock,0xff14,ScrollLock,SCLK,scroll_lock,0x17,0x6b
|
|
||||||
KEY_KP7,71,ANSI_Keypad7,0x59,0x47,0x6c,0x6c,95,VK_NUMPAD7,0x67,71,71,XK_KP_7,0xffb7,Numpad7,KP7,kp_7,0x44,0x59
|
|
||||||
KEY_KP8,72,ANSI_Keypad8,0x5b,0x48,0x75,0x75,96,VK_NUMPAD8,0x68,72,72,XK_KP_8,0xffb8,Numpad8,KP8,kp_8,0x45,0x5b
|
|
||||||
KEY_KP9,73,ANSI_Keypad9,0x5c,0x49,0x7d,0x7d,97,VK_NUMPAD9,0x69,73,73,XK_KP_9,0xffb9,Numpad9,KP9,kp_9,0x46,0x5c
|
|
||||||
KEY_KPMINUS,74,ANSI_KeypadMinus,0x4e,0x4a,0x7b,0x4e,86,VK_SUBTRACT,0x6d,74,74,XK_KP_Subtract,0xffad,NumpadSubtract,KPSU,kp_subtract,0x47,0x4e
|
|
||||||
KEY_KP4,75,ANSI_Keypad4,0x56,0x4b,0x6b,0x6b,92,VK_NUMPAD4,0x64,75,75,XK_KP_4,0xffb4,Numpad4,KP4,kp_4,0x5b,0x56
|
|
||||||
KEY_KP5,76,ANSI_Keypad5,0x57,0x4c,0x73,0x73,93,VK_NUMPAD5,0x65,76,76,XK_KP_5,0xffb5,Numpad5,KP5,kp_5,0x5c,0x57
|
|
||||||
KEY_KP6,77,ANSI_Keypad6,0x58,0x4d,0x74,0x74,94,VK_NUMPAD6,0x66,77,77,XK_KP_6,0xffb6,Numpad6,KP6,kp_6,0x5d,0x58
|
|
||||||
KEY_KPPLUS,78,ANSI_KeypadPlus,0x45,0x4e,0x79,0x7c,87,VK_ADD,0x6b,78,78,XK_KP_Add,0xffab,NumpadAdd,KPAD,kp_add,0x7d,0x45
|
|
||||||
KEY_KP1,79,ANSI_Keypad1,0x53,0x4f,0x69,0x69,89,VK_NUMPAD1,0x61,79,79,XK_KP_1,0xffb1,Numpad1,KP1,kp_1,0x70,0x53
|
|
||||||
KEY_KP2,80,ANSI_Keypad2,0x54,0x50,0x72,0x72,90,VK_NUMPAD2,0x62,80,80,XK_KP_2,0xffb2,Numpad2,KP2,kp_2,0x71,0x54
|
|
||||||
KEY_KP3,81,ANSI_Keypad3,0x55,0x51,0x7a,0x7a,91,VK_NUMPAD3,0x63,81,81,XK_KP_3,0xffb3,Numpad3,KP3,kp_3,0x72,0x55
|
|
||||||
KEY_KP0,82,ANSI_Keypad0,0x52,0x52,0x70,0x70,98,VK_NUMPAD0,0x60,82,82,XK_KP_0,0xffb0,Numpad0,KP0,kp_0,0x5e,0x52
|
|
||||||
KEY_KPDOT,83,ANSI_KeypadDecimal,0x41,0x53,0x71,0x71,99,VK_DECIMAL,0x6e,83,83,XK_KP_Decimal,0xffae,NumpadDecimal,KPDL,kp_decimal,0x32,0x41
|
|
||||||
KEY_KPDOT,83,ANSI_KeypadDecimal,0x41,0x53,0x71,0x71,99,VK_DECIMAL,0x6e,83,83,XK_KP_Decimal,0xffae,NumpadDecimal,KPDC,kp_decimal,0x32,0x41
|
|
||||||
,84,,,0x54,,,,,,,,,,,,,,
|
|
||||||
KEY_ZENKAKUHANKAKU,85,,,0x76,0x5f,,148,,,,,,,Lang5,HZTG,,,
|
|
||||||
KEY_102ND,86,,,0x56,0x61,0x13,100,VK_OEM_102,0xe2,86,86,,,IntlBackslash,LSGT,less,0x7c,
|
|
||||||
KEY_F11,87,F11,0x67,0x57,0x78,0x56,68,VK_F11,0x7a,87,87,XK_F11,0xffc8,F11,FK11,f11,0x09,0x67
|
|
||||||
KEY_F12,88,F12,0x6f,0x58,0x07,0x5e,69,VK_F12,0x7b,88,88,XK_F12,0xffc9,F12,FK12,f12,0x0b,0x6f
|
|
||||||
KEY_RO,89,JIS_Underscore,0x5e,0x73,0x51,,135,,,,,,,IntlRo,AB11,ro,,
|
|
||||||
KEY_KATAKANA,90,,,0x78,0x63,,146,VK_KANA,0x15,,,,,Katakana,KATA,,,
|
|
||||||
KEY_KATAKANA,90,,,0x78,0x63,,146,VK_KANA,0x15,,,,,Lang3,KATA,,,
|
|
||||||
KEY_HIRAGANA,91,,,0x77,0x62,0x87,147,,,,,,,Hiragana,HIRA,hiragana,,
|
|
||||||
KEY_HIRAGANA,91,,,0x77,0x62,0x87,147,,,,,,,Lang4,HIRA,hiragana,,
|
|
||||||
KEY_HENKAN,92,,,0x79,0x64,0x86,138,,,,,,,Convert,HENK,henkan,,
|
|
||||||
KEY_KATAKANAHIRAGANA,93,,,0x70,0x13,0x87,136,,,0xc8,0xc8,,,KanaMode,HKTG,katakanahiragana,,
|
|
||||||
KEY_MUHENKAN,94,,,0x7b,0x67,0x85,139,,,,,,,NonConvert,NFER,muhenkan,,
|
|
||||||
KEY_MUHENKAN,94,,,0x7b,0x67,0x85,139,,,,,,,NonConvert,MUHE,muhenkan,,
|
|
||||||
KEY_KPJPCOMMA,95,JIS_KeypadComma,0x5f,0x5c,0x27,,140,,,,,XK_KP_Separator,0xffac,,KPSP,,,
|
|
||||||
KEY_KPJPCOMMA,95,JIS_KeypadComma,0x5f,0x5c,0x27,,140,,,,,XK_KP_Separator,0xffac,,JPCM,,,
|
|
||||||
KEY_KPENTER,96,ANSI_KeypadEnter,0x4c,0xe01c,0xe05a,0x79,88,,,0x64,0x64,XK_KP_Enter,0xff8d,NumpadEnter,KPEN,kp_enter,0x5a,0x4c
|
|
||||||
KEY_RIGHTCTRL,97,RightControl,0x3e,0xe01d,0xe014,0x58,228,VK_RCONTROL,0xa3,0x65,0x65,XK_Control_R,0xffe4,ControlRight,RCTL,ctrl_r,0x4c,0x7d
|
|
||||||
KEY_KPSLASH,98,ANSI_KeypadDivide,0x4b,0xe035,0xe04a,0x4a,84,VK_DIVIDE,0x6f,0x68,0x68,XK_KP_Divide,0xffaf,NumpadDivide,KPDV,kp_divide,0x2e,0x4b
|
|
||||||
KEY_SYSRQ,99,,,0x54,0x7f,0x57,70,VK_SNAPSHOT,0x2c,0x67,0x67,XK_Sys_Req,0xff15,PrintScreen,PRSC,print,0x16,0x69
|
|
||||||
KEY_SYSRQ,99,,,0x54,0x7f,0x57,70,VK_SNAPSHOT,0x2c,0x67,0x67,XK_Sys_Req,0xff15,PrintScreen,SYRQ,sysrq,0x16,0x69
|
|
||||||
KEY_RIGHTALT,100,RightOption,0x3d,0xe038,0xe011,0x39,230,VK_RMENU,0xa5,0x69,0x69,XK_Alt_R,0xffea,AltRight,ALGR,alt_r,0x0d,0x7c
|
|
||||||
KEY_RIGHTALT,100,RightOption,0x3d,0xe038,0xe011,0x39,230,VK_RMENU,0xa5,0x69,0x69,XK_Alt_R,0xffea,AltRight,RALT,alt_r,0x0d,0x7c
|
|
||||||
KEY_LINEFEED,101,,,0x5b,,,,,,,,,,,LNFD,lf,0x6f,
|
|
||||||
KEY_HOME,102,Home,0x73,0xe047,0xe06c,0x6e,74,VK_HOME,0x24,0x59,0x59,XK_Home,0xff50,Home,HOME,home,0x34,0x73
|
|
||||||
KEY_UP,103,UpArrow,0x7e,0xe048,0xe075,0x63,82,VK_UP,0x26,0x5a,0x5a,XK_Up,0xff52,ArrowUp,UP,up,0x14,0x3e
|
|
||||||
KEY_PAGEUP,104,PageUp,0x74,0xe049,0xe07d,0x6f,75,VK_PRIOR,0x21,0x5b,0x5b,XK_Page_Up,0xff55,PageUp,PGUP,pgup,0x60,0x74
|
|
||||||
KEY_LEFT,105,LeftArrow,0x7b,0xe04b,0xe06b,0x61,80,VK_LEFT,0x25,0x5c,0x5c,XK_Left,0xff51,ArrowLeft,LEFT,left,0x18,0x3b
|
|
||||||
KEY_RIGHT,106,RightArrow,0x7c,0xe04d,0xe074,0x6a,79,VK_RIGHT,0x27,0x5e,0x5e,XK_Right,0xff53,ArrowRight,RGHT,right,0x1c,0x3c
|
|
||||||
KEY_END,107,End,0x77,0xe04f,0xe069,0x65,77,VK_END,0x23,0x5f,0x5f,XK_End,0xff57,End,END,end,0x4a,0x77
|
|
||||||
KEY_DOWN,108,DownArrow,0x7d,0xe050,0xe072,0x60,81,VK_DOWN,0x28,0x60,0x60,XK_Down,0xff54,ArrowDown,DOWN,down,0x1b,0x3d
|
|
||||||
KEY_PAGEDOWN,109,PageDown,0x79,0xe051,0xe07a,0x6d,78,VK_NEXT,0x22,0x61,0x61,XK_Page_Down,0xff56,PageDown,PGDN,pgdn,0x7b,0x79
|
|
||||||
KEY_INSERT,110,,,0xe052,0xe070,0x67,73,VK_INSERT,0x2d,0x62,0x62,XK_Insert,0xff63,Insert,INS,insert,0x2c,0x72
|
|
||||||
KEY_DELETE,111,ForwardDelete,0x75,0xe053,0xe071,0x64,76,VK_DELETE,0x2e,0x63,0x63,XK_Delete,0xffff,Delete,DEL,delete,0x42,0x75
|
|
||||||
KEY_DELETE,111,ForwardDelete,0x75,0xe053,0xe071,0x64,76,VK_DELETE,0x2e,0x63,0x63,XK_Delete,0xffff,Delete,DELE,,0x42,0x75
|
|
||||||
KEY_MACRO,112,,,0xe06f,0xe06f,0x8e,,,,,,,,,I120,,,
|
|
||||||
KEY_MUTE,113,Mute,0x4a,0xe020,0xe023,0x9c,127,VK_VOLUME_MUTE,0xad,,,,,AudioVolumeMute,MUTE,audiomute,,
|
|
||||||
KEY_MUTE,113,Mute,0x4a,0xe020,0xe023,0x9c,239,VK_VOLUME_MUTE,0xad,,,,,AudioVolumeMute,MUTE,audiomute,,
|
|
||||||
KEY_VOLUMEDOWN,114,VolumeDown,0x49,0xe02e,0xe021,0x9d,129,VK_VOLUME_DOWN,0xae,,,,,AudioVolumeDown,VOL-,volumedown,,
|
|
||||||
KEY_VOLUMEDOWN,114,VolumeDown,0x49,0xe02e,0xe021,0x9d,238,VK_VOLUME_DOWN,0xae,,,,,AudioVolumeDown,VOL-,volumedown,,
|
|
||||||
KEY_VOLUMEUP,115,VolumeUp,0x48,0xe030,0xe032,0x95,128,VK_VOLUME_UP,0xaf,,,,,AudioVolumeUp,VOL+,volumeup,,
|
|
||||||
KEY_VOLUMEUP,115,VolumeUp,0x48,0xe030,0xe032,0x95,237,VK_VOLUME_UP,0xaf,,,,,AudioVolumeUp,VOL+,volumeup,,
|
|
||||||
KEY_POWER,116,,,0xe05e,0xe037,,102,,,,,,,Power,POWR,power,,0x7f7f
|
|
||||||
KEY_KPEQUAL,117,ANSI_KeypadEquals,0x51,0x59,0x0f,,103,,,0x76,0x76,XK_KP_Equal,0xffbd,NumpadEqual,KPEQ,kp_equals,0x2d,0x51
|
|
||||||
KEY_KPPLUSMINUS,118,,,0xe04e,0xe079,,,,,,,,,,I126,,,
|
|
||||||
KEY_PAUSE,119,,,0xe046,0xe077,0x62,72,VK_PAUSE,0x013,0x66,0x66,XK_Pause,0xff13,Pause,PAUS,pause,0x15,0x71
|
|
||||||
KEY_SCALE,120,,,0xe00b,,,,,,,,,,,I128,,,
|
|
||||||
KEY_KPCOMMA,121,,,0x7e,0x6d,,133,VK_SEPARATOR??,0x6c,,,,,NumpadComma,KPCO,kp_comma,,
|
|
||||||
KEY_KPCOMMA,121,,,0x7e,0x6d,,133,VK_SEPARATOR??,0x6c,,,,,NumpadComma,I129,,,
|
|
||||||
KEY_HANGEUL,122,JIS_Kana,0x68,0x72,,,144,VK_HANGEUL,0x15,,0x71,,,Lang1,HNGL,,,
|
|
||||||
KEY_HANJA,123,JIS_Eisu,0x66,0x71,,,145,VK_HANJA,0x19,,0x72,,,Lang2,HJCV,,,
|
|
||||||
KEY_YEN,124,JIS_Yen,0x5d,0x7d,0x6a,0x5d,137,,,0x7d,0x7d,,,IntlYen,AE13,yen,,
|
|
||||||
KEY_LEFTMETA,125,Command,0x37,0xe05b,0xe01f,0x8b,227,VK_LWIN,0x5b,0x6b,0x6b,XK_Meta_L,0xffe7,MetaLeft,LMTA,meta_l,0x78,0x37
|
|
||||||
KEY_LEFTMETA,125,Command,0x37,0xe05b,0xe01f,0x8b,227,VK_LWIN,0x5b,0x6b,0x6b,XK_Meta_L,0xffe7,MetaLeft,LWIN,meta_l,0x78,0x37
|
|
||||||
KEY_RIGHTMETA,126,RightCommand,0x36,0xe05c,0xe027,0x8c,231,VK_RWIN,0x5c,0x6c,0x6c,XK_Meta_R,0xffe8,MetaRight,RMTA,meta_r,0x7a,0x37
|
|
||||||
KEY_RIGHTMETA,126,RightCommand,0x36,0xe05c,0xe027,0x8c,231,VK_RWIN,0x5c,0x6c,0x6c,XK_Meta_R,0xffe8,MetaRight,RWIN,meta_r,0x7a,0x37
|
|
||||||
KEY_COMPOSE,127,,0x6e,0xe05d,0xe02f,0x8d,101,VK_APPS,0x5d,0x6d,0x6d,,,ContextMenu,MENU,compose,0x43,
|
|
||||||
KEY_COMPOSE,127,,0x6e,0xe05d,0xe02f,0x8d,101,VK_APPS,0x5d,0x6d,0x6d,,,ContextMenu,COMP,compose,0x43,
|
|
||||||
KEY_STOP,128,,,0xe068,0xe028,0x0a,120,VK_BROWSER_STOP,0xa9,,,,,BrowserStop,STOP,stop,0x01,
|
|
||||||
KEY_STOP,128,,,0xe068,0xe028,0x0a,243,VK_BROWSER_STOP,0xa9,,,,,BrowserStop,STOP,stop,0x01,
|
|
||||||
KEY_AGAIN,129,,,0xe005,,0x0b,121,,,,,,,Again,AGAI,again,0x03,
|
|
||||||
KEY_PROPS,130,,,0xe006,,0x0c,,,,,,,,Props,PROP,props,0x19,
|
|
||||||
KEY_UNDO,131,,,0xe007,,0x10,122,,,,,,,Undo,UNDO,undo,0x1a,
|
|
||||||
KEY_FRONT,132,,,0xe00c,,,119,,,,,,,,FRNT,front,0x31,
|
|
||||||
KEY_COPY,133,,,0xe078,,0x18,124,,,,,,,Copy,COPY,copy,0x33,
|
|
||||||
KEY_OPEN,134,,,0x64,,0x20,116,,,,,,,Open,OPEN,open,0x48,
|
|
||||||
KEY_PASTE,135,,,0x65,,0x28,125,,,,,,,Paste,PAST,paste,0x49,
|
|
||||||
KEY_FIND,136,,,0xe041,,0x30,126,,,,,,,Find,FIND,find,0x5f,
|
|
||||||
KEY_FIND,136,,,0xe041,,0x30,244,,,,,,,Find,FIND,find,0x5f,
|
|
||||||
KEY_CUT,137,,,0xe03c,,0x38,123,,,,,,,Cut,CUT,cut,0x61,
|
|
||||||
KEY_HELP,138,Help,0x72,0xe075,,0x09,117,VK_HELP,0x2f,,,XK_Help,0xff6a,Help,HELP,help,0x76,
|
|
||||||
KEY_MENU,139,,,0xe01e,,0x91,118,,,,,,,,I147,menu,,
|
|
||||||
KEY_CALC,140,,,0xe021,0xe02b,0xa3,251,,,,,,,LaunchApp2,I148,calculator,,
|
|
||||||
KEY_SETUP,141,,,0x66,,,,,,,,,,,I149,,,
|
|
||||||
KEY_SLEEP,142,,,0xe05f,0xe03f,,248,VK_SLEEP,0x5f,,,,,Sleep,I150,sleep,,
|
|
||||||
KEY_WAKEUP,143,,,0xe063,0xe05e,,,,,,,,,WakeUp,I151,wake,,
|
|
||||||
KEY_FILE,144,,,0x67,,,,,,,,,,,I152,,,
|
|
||||||
KEY_SENDFILE,145,,,0x68,,,,,,,,,,,I153,,,
|
|
||||||
KEY_DELETEFILE,146,,,0x69,,,,,,,,,,,I154,,,
|
|
||||||
KEY_XFER,147,,,0xe013,,0xa2,,,,,,,,,XFER,,,
|
|
||||||
KEY_XFER,147,,,0xe013,,0xa2,,,,,,,,,I155,,,
|
|
||||||
KEY_PROG1,148,,,0xe01f,,0xa0,,,,,,,,,I156,,,
|
|
||||||
KEY_PROG2,149,,,0xe017,,0xa1,,,,,,,,,I157,,,
|
|
||||||
KEY_WWW,150,,,0xe002,,,240,,,,,,,,I158,,,
|
|
||||||
KEY_MSDOS,151,,,0x6a,,,,,,,,,,,I159,,,
|
|
||||||
KEY_SCREENLOCK,152,,,0xe012,,0x96,249,,,,,,,,I160,,,
|
|
||||||
KEY_DIRECTION,153,,,0x6b,,,,,,,,,,,I161,,,
|
|
||||||
KEY_CYCLEWINDOWS,154,,,0xe026,,0x9b,,,,,,,,,I162,,,
|
|
||||||
KEY_MAIL,155,,,0xe06c,0xe048,,,,,,,,,LaunchMail,I163,mail,,
|
|
||||||
KEY_BOOKMARKS,156,,,0xe066,0xe018,,,,,,,,,BrowserFavorites,I164,ac_bookmarks,,
|
|
||||||
KEY_COMPUTER,157,,,0xe06b,0xe040,,,,,,,,,LaunchApp1,I165,computer,,
|
|
||||||
KEY_BACK,158,,,0xe06a,0xe038,,241,VK_BROWSER_BACK,0xa6,,,,,BrowserBack,I166,ac_back,,
|
|
||||||
KEY_FORWARD,159,,,0xe069,0xe030,,242,VK_BROWSER_FORWARD,0xa7,,,,,BrowserForward,I167,ac_forward,,
|
|
||||||
KEY_CLOSECD,160,,,0xe023,,0x9a,,,,,,,,,I168,,,
|
|
||||||
KEY_EJECTCD,161,,,0x6c,,,236,,,,,,,,I169,,,
|
|
||||||
KEY_EJECTCLOSECD,162,,,0xe07d,,,,,,,,,,Eject,I170,,,
|
|
||||||
KEY_NEXTSONG,163,,,0xe019,0xe04d,0x93,235,VK_MEDIA_NEXT_TRACK,0xb0,,,,,MediaTrackNext,I171,audionext,,
|
|
||||||
KEY_PLAYPAUSE,164,,,0xe022,0xe034,,232,VK_MEDIA_PLAY_PAUSE,0xb3,,,,,MediaPlayPause,I172,audioplay,,
|
|
||||||
KEY_PREVIOUSSONG,165,,,0xe010,0xe015,0x94,234,VK_MEDIA_PREV_TRACK,0xb1,,,,,MediaTrackPrevious,I173,audioprev,,
|
|
||||||
KEY_STOPCD,166,,,0xe024,0xe03b,0x98,233,VK_MEDIA_STOP,0xb2,,,,,MediaStop,I174,audiostop,,
|
|
||||||
KEY_RECORD,167,,,0xe031,,0x9e,,,,,,,,,I175,,,
|
|
||||||
KEY_REWIND,168,,,0xe018,,0x9f,,,,,,,,,I176,,,
|
|
||||||
KEY_PHONE,169,,,0x63,,,,,,,,,,,I177,,,
|
|
||||||
KEY_ISO,170,ISO_Section,0xa,,,,,,,,,,,,I178,,,
|
|
||||||
KEY_CONFIG,171,,,0xe001,,,,,,,,,,,I179,,,
|
|
||||||
KEY_HOMEPAGE,172,,,0xe032,0xe03a,0x97,,VK_BROWSER_HOME,0xac,,,,,BrowserHome,I180,ac_home,,
|
|
||||||
KEY_REFRESH,173,,,0xe067,0xe020,,250,VK_BROWSER_REFRESH,0xa8,,,,,BrowserRefresh,I181,ac_refresh,,
|
|
||||||
KEY_EXIT,174,,,,,,,,,,,,,,I182,,,
|
|
||||||
KEY_MOVE,175,,,,,,,,,,,,,,I183,,,
|
|
||||||
KEY_EDIT,176,,,0xe008,,,247,,,,,,,,I184,,,
|
|
||||||
KEY_SCROLLUP,177,,,0x75,,,245,,,,,,,,I185,,,
|
|
||||||
KEY_SCROLLDOWN,178,,,0xe00f,,,246,,,,,,,,I186,,,
|
|
||||||
KEY_KPLEFTPAREN,179,,,0xe076,,,182,,,,,,,NumpadParenLeft,I187,,,
|
|
||||||
KEY_KPRIGHTPAREN,180,,,0xe07b,,,183,,,,,,,NumpadParenRight,I188,,,
|
|
||||||
KEY_NEW,181,,,0xe009,,,,,,,,,,,I189,,,
|
|
||||||
KEY_REDO,182,,,0xe00a,,,,,,,,,,,I190,,,
|
|
||||||
KEY_F13,183,F13,0x69,0x5d,0x2f,0x7f,104,VK_F13,0x7c,0x6e,0x6e,,,F13,FK13,,,0x69
|
|
||||||
KEY_F14,184,F14,0x6b,0x5e,0x37,0x80,105,VK_F14,0x7d,0x6f,0x6f,,,F14,FK14,,,0x6b
|
|
||||||
KEY_F15,185,F15,0x71,0x5f,0x3f,0x81,106,VK_F15,0x7e,0x70,0x70,,,F15,FK15,,,0x71
|
|
||||||
KEY_F16,186,F16,0x6a,0x55,,0x82,107,VK_F16,0x7f,0x71,0x71,,,F16,FK16,,,
|
|
||||||
KEY_F17,187,F17,0x40,0xe003,,0x83,108,VK_F17,0x80,0x72,0x72,,,F17,FK17,,,
|
|
||||||
KEY_F18,188,F18,0x4f,0xe077,,,109,VK_F18,0x81,,,,,F18,FK18,,,
|
|
||||||
KEY_F19,189,F19,0x50,0xe004,,,110,VK_F19,0x82,,,,,F19,FK19,,,
|
|
||||||
KEY_F20,190,F20,0x5a,0x5a,,,111,VK_F20,0x83,,,,,F20,FK20,,,
|
|
||||||
KEY_F21,191,,,0x74,,,112,VK_F21,0x84,,,,,F21,FK21,,,
|
|
||||||
KEY_F22,192,,,0xe079,,,113,VK_F22,0x85,,,,,F22,FK22,,,
|
|
||||||
KEY_F23,193,,,0x6d,,,114,VK_F23,0x86,,,,,F23,FK23,,,
|
|
||||||
KEY_F24,194,,,0x6f,,,115,VK_F24,0x87,,,,,F24,FK24,,,
|
|
||||||
,195,,,0xe015,,,,,,,,,,,,,,
|
|
||||||
,196,,,0xe016,,,,,,,,,,,,,,
|
|
||||||
,197,,,0xe01a,,,,,,,,,,,,,,
|
|
||||||
,198,,,0xe01b,,,,,,,,,,,,,,
|
|
||||||
,199,,,0xe027,,,,,,,,,,,,,,
|
|
||||||
KEY_PLAYCD,200,,,0xe028,,,,,,,,,,,I208,,,
|
|
||||||
KEY_PAUSECD,201,,,0xe029,,,,,,,,,,,I209,,,
|
|
||||||
KEY_PROG3,202,,,0xe02b,,,,,,,,,,,I210,,,
|
|
||||||
KEY_PROG4,203,,,0xe02c,,,,,,,,,,,I211,,,
|
|
||||||
KEY_DASHBOARD,204,,,0xe02d,,,,,,,,,,,I212,,,
|
|
||||||
KEY_SUSPEND,205,,,0xe025,,,,,,,,,,Suspend,I213,,,
|
|
||||||
KEY_CLOSE,206,,,0xe02f,,,,,,,,,,,I214,,,
|
|
||||||
KEY_PLAY,207,,,0xe033,,,,VK_PLAY,0xfa,,,,,,I215,,,
|
|
||||||
KEY_FASTFORWARD,208,,,0xe034,,,,,,,,,,,I216,,,
|
|
||||||
KEY_BASSBOOST,209,,,0xe036,,,,,,,,,,,I217,,,
|
|
||||||
KEY_PRINT,210,,,0xe039,,,,VK_PRINT,0x2a,,,,,,I218,,,
|
|
||||||
KEY_HP,211,,,0xe03a,,,,,,,,,,,I219,,,
|
|
||||||
KEY_CAMERA,212,,,0xe03b,,,,,,,,,,,I220,,,
|
|
||||||
KEY_SOUND,213,,,0xe03d,,,,,,,,,,,I221,,,
|
|
||||||
KEY_QUESTION,214,,,0xe03e,,,,,,,,,,,I222,,,
|
|
||||||
KEY_EMAIL,215,,,0xe03f,,,,VK_LAUNCH_MAIL,0xb4,,,,,,I223,,,
|
|
||||||
KEY_CHAT,216,,,0xe040,,,,,,,,,,,I224,,,
|
|
||||||
KEY_SEARCH,217,,,0xe065,0xe010,,,VK_BROWSER_SEARCH,0xaa,,,,,BrowserSearch,I225,,,
|
|
||||||
KEY_CONNECT,218,,,0xe042,,,,,,,,,,,I226,,,
|
|
||||||
KEY_FINANCE,219,,,0xe043,,,,,,,,,,,I227,,,
|
|
||||||
KEY_SPORT,220,,,0xe044,,,,,,,,,,,I228,,,
|
|
||||||
KEY_SHOP,221,,,0xe045,,,,,,,,,,,I229,,,
|
|
||||||
KEY_ALTERASE,222,,,0xe014,,,,,,,,,,,I230,,,
|
|
||||||
KEY_CANCEL,223,,,0xe04a,,,,,,,,,,,I231,,,
|
|
||||||
KEY_BRIGHTNESSDOWN,224,,,0xe04c,,,,,,,,,,,I232,,,
|
|
||||||
KEY_BRIGHTNESSUP,225,,,0xe054,,,,,,,,,,,I233,,,
|
|
||||||
KEY_MEDIA,226,,,0xe06d,0xe050,,,,,,,,,MediaSelect,I234,mediaselect,,
|
|
||||||
KEY_SWITCHVIDEOMODE,227,,,0xe056,,,,,,,,,,,I235,,,
|
|
||||||
KEY_KBDILLUMTOGGLE,228,,,0xe057,,,,,,,,,,,I236,,,
|
|
||||||
KEY_KBDILLUMDOWN,229,,,0xe058,,,,,,,,,,,I237,,,
|
|
||||||
KEY_KBDILLUMUP,230,,,0xe059,,,,,,,,,,,I238,,,
|
|
||||||
KEY_SEND,231,,,0xe05a,,,,,,,,,,,I239,,,
|
|
||||||
KEY_REPLY,232,,,0xe064,,,,,,,,,,,I240,,,
|
|
||||||
KEY_FORWARDMAIL,233,,,0xe00e,,,,,,,,,,,I241,,,
|
|
||||||
KEY_SAVE,234,,,0xe055,,,,,,,,,,,I242,,,
|
|
||||||
KEY_DOCUMENTS,235,,,0xe070,,,,,,,,,,,I243,,,
|
|
||||||
KEY_BATTERY,236,,,0xe071,,,,,,,,,,,I244,,,
|
|
||||||
KEY_BLUETOOTH,237,,,0xe072,,,,,,,,,,,I245,,,
|
|
||||||
KEY_WLAN,238,,,0xe073,,,,,,,,,,,I246,,,
|
|
||||||
KEY_UWB,239,,,0xe074,,,,,,,,,,,I247,,,
|
|
||||||
KEY_UNKNOWN,240,,,,,,,,,,,,,,I248,,,
|
|
||||||
KEY_VIDEO_NEXT,241,,,,,,,,,,,,,,I249,,,
|
|
||||||
KEY_VIDEO_PREV,242,,,,,,,,,,,,,,I250,,,
|
|
||||||
KEY_BRIGHTNESS_CYCLE,243,,,,,,,,,,,,,,I251,,,
|
|
||||||
KEY_BRIGHTNESS_ZERO,244,,,,,,,,,,,,,,I252,,,
|
|
||||||
KEY_DISPLAY_OFF,245,,,,,,,,,,,,,,I253,,,
|
|
||||||
KEY_WIMAX,246,,,,,,,,,,,,,,,,,
|
|
||||||
,247,,,,,,,,,,,,,,,,,
|
|
||||||
,248,,,,,,,,,,,,,,,,,
|
|
||||||
,249,,,,,,,,,,,,,,,,,
|
|
||||||
,250,,,,,,,,,,,,,,,,,
|
|
||||||
,251,,,,,,,,,,,,,,,,,
|
|
||||||
,252,,,,,,,,,,,,,,,,,
|
|
||||||
,253,,,,,,,,,,,,,,,,,
|
|
||||||
,254,,,,,,,,,,,,,,,,,
|
|
||||||
,255,,,,0xe012,,,,,,,,,,,,,
|
|
||||||
BTN_MISC,0x100,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_0,0x100,,,,,,,VK_LBUTTON,0x01,,,,,,,,,
|
|
||||||
BTN_1,0x101,,,,,,,VK_RBUTTON,0x02,,,,,,,,,
|
|
||||||
BTN_2,0x102,,,,,,,VK_MBUTTON,0x04,,,,,,,,,
|
|
||||||
BTN_3,0x103,,,,,,,VK_XBUTTON1,0x05,,,,,,,,,
|
|
||||||
BTN_4,0x104,,,,,,,VK_XBUTTON2,0x06,,,,,,,,,
|
|
||||||
BTN_5,0x105,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_6,0x106,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_7,0x107,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_8,0x108,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_9,0x109,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_MOUSE,0x110,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_LEFT,0x110,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_RIGHT,0x111,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_MIDDLE,0x112,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_SIDE,0x113,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_EXTRA,0x114,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_FORWARD,0x115,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_BACK,0x116,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TASK,0x117,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_JOYSTICK,0x120,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TRIGGER,0x120,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_THUMB,0x121,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_THUMB2,0x122,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOP,0x123,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOP2,0x124,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_PINKIE,0x125,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_BASE,0x126,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_BASE2,0x127,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_BASE3,0x128,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_BASE4,0x129,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_BASE5,0x12a,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_BASE6,0x12b,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_DEAD,0x12f,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_GAMEPAD,0x130,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_A,0x130,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_B,0x131,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_C,0x132,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_X,0x133,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_Y,0x134,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_Z,0x135,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TL,0x136,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TR,0x137,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TL2,0x138,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TR2,0x139,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_SELECT,0x13a,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_START,0x13b,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_MODE,0x13c,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_THUMBL,0x13d,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_THUMBR,0x13e,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_DIGI,0x140,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_PEN,0x140,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_RUBBER,0x141,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_BRUSH,0x142,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_PENCIL,0x143,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_AIRBRUSH,0x144,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_FINGER,0x145,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_MOUSE,0x146,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_LENS,0x147,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOUCH,0x14a,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_STYLUS,0x14b,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_STYLUS2,0x14c,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_DOUBLETAP,0x14d,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_TRIPLETAP,0x14e,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_TOOL_QUADTAP,0x14f,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_WHEEL,0x150,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_GEAR_DOWN,0x150,,,,,,,,,,,,,,,,,
|
|
||||||
BTN_GEAR_UP,0x151,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_OK,0x160,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SELECT,0x161,,,,,,,VK_SELECT,0x29,,,XK_Select,0xff60,Select,SELE,,,
|
|
||||||
KEY_GOTO,0x162,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_CLEAR,0x163,,,,,,,,,,,,,NumpadClear,CLR,,,
|
|
||||||
KEY_POWER2,0x164,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_OPTION,0x165,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_INFO,0x166,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TIME,0x167,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_VENDOR,0x168,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_ARCHIVE,0x169,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_PROGRAM,0x16a,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_CHANNEL,0x16b,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FAVORITES,0x16c,,,,,,,VK_BROWSER_FAVOURITES,0xab,,,,,,,,,
|
|
||||||
KEY_EPG,0x16d,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_PVR,0x16e,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_MHP,0x16f,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_LANGUAGE,0x170,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TITLE,0x171,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SUBTITLE,0x172,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_ANGLE,0x173,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_ZOOM,0x174,,,,,,,VK_ZOOM,0xfb,,,,,,,,,
|
|
||||||
KEY_MODE,0x175,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_KEYBOARD,0x176,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SCREEN,0x177,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_PC,0x178,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TV,0x179,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TV2,0x17a,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_VCR,0x17b,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_VCR2,0x17c,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SAT,0x17d,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SAT2,0x17e,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_CD,0x17f,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TAPE,0x180,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_RADIO,0x181,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TUNER,0x182,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_PLAYER,0x183,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TEXT,0x184,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DVD,0x185,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_AUX,0x186,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_MP3,0x187,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_AUDIO,0x188,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_VIDEO,0x189,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DIRECTORY,0x18a,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_LIST,0x18b,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_MEMO,0x18c,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_CALENDAR,0x18d,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_RED,0x18e,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_GREEN,0x18f,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_YELLOW,0x190,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BLUE,0x191,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_CHANNELUP,0x192,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_CHANNELDOWN,0x193,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FIRST,0x194,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_LAST,0x195,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_AB,0x196,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NEXT,0x197,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_RESTART,0x198,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SLOW,0x199,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SHUFFLE,0x19a,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BREAK,0x19b,,,,,,,,,,,,,,BREA,,,
|
|
||||||
KEY_BREAK,0x19b,,,,,,,,,,,,,,BRK,,,
|
|
||||||
KEY_PREVIOUS,0x19c,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DIGITS,0x19d,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TEEN,0x19e,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_TWEN,0x19f,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_VIDEOPHONE,0x1a0,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_GAMES,0x1a1,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_ZOOMIN,0x1a2,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_ZOOMOUT,0x1a3,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_ZOOMRESET,0x1a4,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_WORDPROCESSOR,0x1a5,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_EDITOR,0x1a6,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SPREADSHEET,0x1a7,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_GRAPHICSEDITOR,0x1a8,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_PRESENTATION,0x1a9,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DATABASE,0x1aa,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NEWS,0x1ab,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_VOICEMAIL,0x1ac,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_ADDRESSBOOK,0x1ad,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_MESSENGER,0x1ae,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DISPLAYTOGGLE,0x1af,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_SPELLCHECK,0x1b0,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_LOGOFF,0x1b1,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DOLLAR,0x1b2,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_EURO,0x1b3,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FRAMEBACK,0x1b4,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FRAMEFORWARD,0x1b5,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_CONTEXT_MENU,0x1b6,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_MEDIA_REPEAT,0x1b7,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DEL_EOL,0x1c0,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DEL_EOS,0x1c1,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_INS_LINE,0x1c2,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_DEL_LINE,0x1c3,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN,0x1d0,Function,0x3f,,,,,,,,,,,Fn,,,,
|
|
||||||
KEY_FN_ESC,0x1d1,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F1,0x1d2,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F2,0x1d3,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F3,0x1d4,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F4,0x1d5,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F5,0x1d6,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F6,0x1d7,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F7,0x1d8,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F8,0x1d9,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F9,0x1da,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F10,0x1db,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F11,0x1dc,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F12,0x1dd,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_1,0x1de,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_2,0x1df,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_D,0x1e0,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_E,0x1e1,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_F,0x1e2,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_S,0x1e3,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_FN_B,0x1e4,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT1,0x1f1,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT2,0x1f2,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT3,0x1f3,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT4,0x1f4,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT5,0x1f5,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT6,0x1f6,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT7,0x1f7,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT8,0x1f8,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT9,0x1f9,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_BRL_DOT10,0x1fa,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_0,0x200,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_1,0x201,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_2,0x202,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_3,0x203,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_4,0x204,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_5,0x205,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_6,0x206,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_7,0x207,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_8,0x208,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_9,0x209,,,,,,,,,,,,,,,,,
|
|
||||||
KEY_NUMERIC_STAR,0x20a,,,,,,,,,,,,,NumpadStar,,,,
|
|
||||||
KEY_NUMERIC_POUND,0x20b,,,,,,,,,,,,,NumpadHash,,,,
|
|
||||||
KEY_RFKILL,0x20c,,,,,,,,,,,,,,,,,
|
|
|
@ -1 +0,0 @@
|
|||||||
project('keycodemapdb')
|
|
11
keycodemapdb/tests/.gitignore
vendored
11
keycodemapdb/tests/.gitignore
vendored
@ -1,11 +0,0 @@
|
|||||||
osx2win32.*
|
|
||||||
osx2win32_name.*
|
|
||||||
osx2xkb.*
|
|
||||||
osx2xkb_name.*
|
|
||||||
html2win32.*
|
|
||||||
html2win32_name.*
|
|
||||||
osx.*
|
|
||||||
osx_name.*
|
|
||||||
stdc
|
|
||||||
stdc++
|
|
||||||
node_modules/
|
|
@ -1,150 +0,0 @@
|
|||||||
TESTS := stdc stdc++ python2 python3 javascript
|
|
||||||
|
|
||||||
check: $(TESTS)
|
|
||||||
@set -e; for fn in $(TESTS); do \
|
|
||||||
./$$fn; \
|
|
||||||
echo $$fn: OK; \
|
|
||||||
done
|
|
||||||
@echo Done.
|
|
||||||
|
|
||||||
GEN := ../tools/keymap-gen
|
|
||||||
DATA := ../data/keymaps.csv
|
|
||||||
SOURCES := $(GEN) $(DATA)
|
|
||||||
|
|
||||||
.DELETE_ON_ERROR:
|
|
||||||
|
|
||||||
stdc: stdc.c osx2win32.h osx2win32.c osx2win32_name.h osx2win32_name.c \
|
|
||||||
osx2xkb.h osx2xkb.c osx2xkb_name.h osx2xkb_name.c \
|
|
||||||
html2win32.h html2win32.c html2win32_name.h html2win32_name.c \
|
|
||||||
osx.h osx.c osx_name.h osx_name.c
|
|
||||||
$(CC) -Wall -o $@ $(filter %.c, $^)
|
|
||||||
osx2win32.c: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc code-map $(DATA) osx win32 > $@
|
|
||||||
osx2win32.h: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc-header code-map $(DATA) osx win32 > $@
|
|
||||||
osx2win32_name.c: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc name-map $(DATA) osx win32 > $@
|
|
||||||
osx2win32_name.h: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc-header name-map $(DATA) osx win32 > $@
|
|
||||||
osx2xkb.c: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc code-map $(DATA) osx xkb > $@
|
|
||||||
osx2xkb.h: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc-header code-map $(DATA) osx xkb > $@
|
|
||||||
osx2xkb_name.c: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc name-map $(DATA) osx xkb > $@
|
|
||||||
osx2xkb_name.h: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc-header name-map $(DATA) osx xkb > $@
|
|
||||||
html2win32.c: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc code-map $(DATA) html win32 > $@
|
|
||||||
html2win32.h: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc-header code-map $(DATA) html win32 > $@
|
|
||||||
html2win32_name.c: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc name-map $(DATA) html win32 > $@
|
|
||||||
html2win32_name.h: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc-header name-map $(DATA) html win32 > $@
|
|
||||||
osx.c: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc code-table $(DATA) osx > $@
|
|
||||||
osx.h: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc-header code-table $(DATA) osx > $@
|
|
||||||
osx_name.c: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc name-table $(DATA) osx > $@
|
|
||||||
osx_name.h: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc-header name-table $(DATA) osx > $@
|
|
||||||
|
|
||||||
stdc++: stdc++.cc osx2win32.hh osx2win32.cc osx2win32_name.hh osx2win32_name.cc \
|
|
||||||
osx2xkb.hh osx2xkb.cc osx2xkb_name.hh osx2xkb_name.cc \
|
|
||||||
html2win32.hh html2win32.cc html2win32_name.hh html2win32_name.cc \
|
|
||||||
osx.hh osx.cc osx_name.hh osx_name.cc
|
|
||||||
$(CXX) -Wall -std=c++11 -o $@ $(filter %.cc, $^)
|
|
||||||
osx2win32.cc: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++ code-map $(DATA) osx win32 > $@
|
|
||||||
osx2win32.hh: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++-header code-map $(DATA) osx win32 > $@
|
|
||||||
osx2win32_name.cc: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++ name-map $(DATA) osx win32 > $@
|
|
||||||
osx2win32_name.hh: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++-header name-map $(DATA) osx win32 > $@
|
|
||||||
osx2xkb.cc: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++ code-map $(DATA) osx xkb > $@
|
|
||||||
osx2xkb.hh: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++-header code-map $(DATA) osx xkb > $@
|
|
||||||
osx2xkb_name.cc: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++ name-map $(DATA) osx xkb > $@
|
|
||||||
osx2xkb_name.hh: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++-header name-map $(DATA) osx xkb > $@
|
|
||||||
html2win32.cc: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++ code-map $(DATA) html win32 > $@
|
|
||||||
html2win32.hh: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++-header code-map $(DATA) html win32 > $@
|
|
||||||
html2win32_name.cc: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++ name-map $(DATA) html win32 > $@
|
|
||||||
html2win32_name.hh: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++-header name-map $(DATA) html win32 > $@
|
|
||||||
osx.cc: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++ code-table $(DATA) osx > $@
|
|
||||||
osx.hh: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++-header code-table $(DATA) osx > $@
|
|
||||||
osx_name.cc: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++ name-table $(DATA) osx > $@
|
|
||||||
osx_name.hh: $(SOURCES)
|
|
||||||
$(GEN) --lang stdc++-header name-table $(DATA) osx > $@
|
|
||||||
|
|
||||||
python2: osx2win32.py osx2win32_name.py \
|
|
||||||
osx2xkb.py osx2xkb_name.py \
|
|
||||||
html2win32.py html2win32_name.py \
|
|
||||||
osx.py osx_name.py
|
|
||||||
osx2win32.py: $(SOURCES)
|
|
||||||
$(GEN) --lang python2 code-map $(DATA) osx win32 > $@
|
|
||||||
osx2win32_name.py: $(SOURCES)
|
|
||||||
$(GEN) --lang python2 name-map $(DATA) osx win32 > $@
|
|
||||||
osx2xkb.py: $(SOURCES)
|
|
||||||
$(GEN) --lang python2 code-map $(DATA) osx xkb > $@
|
|
||||||
osx2xkb_name.py: $(SOURCES)
|
|
||||||
$(GEN) --lang python2 name-map $(DATA) osx xkb > $@
|
|
||||||
html2win32.py: $(SOURCES)
|
|
||||||
$(GEN) --lang python2 code-map $(DATA) html win32 > $@
|
|
||||||
html2win32_name.py: $(SOURCES)
|
|
||||||
$(GEN) --lang python2 name-map $(DATA) html win32 > $@
|
|
||||||
osx.py: $(SOURCES)
|
|
||||||
$(GEN) --lang python2 code-table $(DATA) osx > $@
|
|
||||||
osx_name.py: $(SOURCES)
|
|
||||||
$(GEN) --lang python2 name-table $(DATA) osx > $@
|
|
||||||
|
|
||||||
javascript: node_modules/babel-core \
|
|
||||||
node_modules/babel-plugin-transform-es2015-modules-commonjs \
|
|
||||||
osx2win32.js osx2win32_name.js \
|
|
||||||
osx2xkb.js osx2xkb_name.js \
|
|
||||||
html2win32.js html2win32_name.js \
|
|
||||||
osx.js osx_name.js
|
|
||||||
node_modules/babel-core:
|
|
||||||
npm install babel-core
|
|
||||||
node_modules/babel-plugin-transform-es2015-modules-commonjs:
|
|
||||||
npm install babel-plugin-transform-es2015-modules-commonjs
|
|
||||||
osx2win32.js: $(SOURCES)
|
|
||||||
$(GEN) --lang js code-map $(DATA) osx win32 > $@
|
|
||||||
osx2win32_name.js: $(SOURCES)
|
|
||||||
$(GEN) --lang js name-map $(DATA) osx win32 > $@
|
|
||||||
osx2xkb.js: $(SOURCES)
|
|
||||||
$(GEN) --lang js code-map $(DATA) osx xkb > $@
|
|
||||||
osx2xkb_name.js: $(SOURCES)
|
|
||||||
$(GEN) --lang js name-map $(DATA) osx xkb > $@
|
|
||||||
html2win32.js: $(SOURCES)
|
|
||||||
$(GEN) --lang js code-map $(DATA) html win32 > $@
|
|
||||||
html2win32_name.js: $(SOURCES)
|
|
||||||
$(GEN) --lang js name-map $(DATA) html win32 > $@
|
|
||||||
osx.js: $(SOURCES)
|
|
||||||
$(GEN) --lang js code-table $(DATA) osx > $@
|
|
||||||
osx_name.js: $(SOURCES)
|
|
||||||
$(GEN) --lang js name-table $(DATA) osx > $@
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -rf node_modules
|
|
||||||
rm -f osx2win32.*
|
|
||||||
rm -f osx2win32_name.*
|
|
||||||
rm -f osx2xkb.*
|
|
||||||
rm -f osx2xkb_name.*
|
|
||||||
rm -f html2win32.*
|
|
||||||
rm -f html2win32_name.*
|
|
||||||
rm -f osx.*
|
|
||||||
rm -f osx_name.*
|
|
||||||
rm -f stdc stdc++
|
|
@ -1,53 +0,0 @@
|
|||||||
#!/usr/bin/env node
|
|
||||||
/*
|
|
||||||
* Keycode Map Generator JavaScript Tests
|
|
||||||
*
|
|
||||||
* Copyright 2017 Pierre Ossman for Cendio AB
|
|
||||||
*
|
|
||||||
* This file is dual license under the terms of the GPLv2 or later
|
|
||||||
* and 3-clause BSD licenses.
|
|
||||||
*/
|
|
||||||
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
var assert = require('assert');
|
|
||||||
var babel = require('babel-core');
|
|
||||||
var fs = require('fs');
|
|
||||||
|
|
||||||
function include(fn) {
|
|
||||||
var options = {
|
|
||||||
plugins: ["transform-es2015-modules-commonjs"]
|
|
||||||
};
|
|
||||||
|
|
||||||
var code = babel.transformFileSync(fn, options).code;
|
|
||||||
fs.writeFileSync("." + fn + "_nodejs.js", code);
|
|
||||||
var imp = require("./." + fn + "_nodejs.js");
|
|
||||||
fs.unlinkSync("./." + fn + "_nodejs.js");
|
|
||||||
|
|
||||||
return imp
|
|
||||||
}
|
|
||||||
|
|
||||||
var code_map_osx_to_win32 = include("osx2win32.js").default;
|
|
||||||
var name_map_osx_to_win32 = include("osx2win32_name.js").default;
|
|
||||||
|
|
||||||
var code_map_osx_to_xkb = include("osx2xkb.js").default;
|
|
||||||
var name_map_osx_to_xkb = include("osx2xkb_name.js").default;
|
|
||||||
|
|
||||||
var code_map_html_to_win32 = include("html2win32.js").default;
|
|
||||||
var name_map_html_to_win32 = include("html2win32_name.js").default;
|
|
||||||
|
|
||||||
var code_table_osx = include("osx.js").default;
|
|
||||||
var name_table_osx = include("osx_name.js").default;
|
|
||||||
|
|
||||||
assert.equal(code_map_osx_to_win32[0x1d], 0x30);
|
|
||||||
assert.equal(name_map_osx_to_win32[0x1d], "VK_0");
|
|
||||||
|
|
||||||
assert.equal(code_map_osx_to_xkb[0x1d], "AE10");
|
|
||||||
assert.equal(name_map_osx_to_xkb[0x1d], "AE10");
|
|
||||||
|
|
||||||
assert.equal(code_map_html_to_win32["ControlLeft"], 0x11);
|
|
||||||
assert.equal(name_map_html_to_win32["ControlLeft"], "VK_CONTROL");
|
|
||||||
|
|
||||||
assert.equal(code_table_osx[0x1d], 0x3b);
|
|
||||||
assert.equal(name_table_osx[0x1d], "Control");
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
python ./test.py
|
|
@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
python3 ./test.py
|
|
@ -1,40 +0,0 @@
|
|||||||
/*
|
|
||||||
* Keycode Map Generator C++ Tests
|
|
||||||
*
|
|
||||||
* Copyright 2017 Pierre Ossman for Cendio AB
|
|
||||||
*
|
|
||||||
* This file is dual license under the terms of the GPLv2 or later
|
|
||||||
* and 3-clause BSD licenses.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <assert.h>
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
#include "osx2win32.hh"
|
|
||||||
#include "osx2win32_name.hh"
|
|
||||||
|
|
||||||
#include "osx2xkb.hh"
|
|
||||||
#include "osx2xkb_name.hh"
|
|
||||||
|
|
||||||
#include "html2win32.hh"
|
|
||||||
#include "html2win32_name.hh"
|
|
||||||
|
|
||||||
#include "osx.hh"
|
|
||||||
#include "osx_name.hh"
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
|
||||||
{
|
|
||||||
assert(code_map_osx_to_win32[0x1d] == 0x30);
|
|
||||||
assert(strcmp(name_map_osx_to_win32[0x1d], "VK_0") == 0);
|
|
||||||
|
|
||||||
assert(strcmp(code_map_osx_to_xkb[0x1d], "AE10") == 0);
|
|
||||||
assert(strcmp(name_map_osx_to_xkb[0x1d], "AE10") == 0);
|
|
||||||
|
|
||||||
assert(code_map_html_to_win32.at("ControlLeft") == 0x11);
|
|
||||||
assert(strcmp(name_map_html_to_win32.at("ControlLeft"), "VK_CONTROL") == 0);
|
|
||||||
|
|
||||||
assert(code_table_osx[0x1d] == 0x3b);
|
|
||||||
assert(strcmp(name_table_osx[0x1d], "Control") == 0);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
@ -1,64 +0,0 @@
|
|||||||
/*
|
|
||||||
* Keycode Map Generator C Tests
|
|
||||||
*
|
|
||||||
* Copyright 2017 Pierre Ossman for Cendio AB
|
|
||||||
*
|
|
||||||
* This file is dual license under the terms of the GPLv2 or later
|
|
||||||
* and 3-clause BSD licenses.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <assert.h>
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
#include "osx2win32.h"
|
|
||||||
#include "osx2win32_name.h"
|
|
||||||
|
|
||||||
#include "osx2xkb.h"
|
|
||||||
#include "osx2xkb_name.h"
|
|
||||||
|
|
||||||
#include "html2win32.h"
|
|
||||||
#include "html2win32_name.h"
|
|
||||||
|
|
||||||
#include "osx.h"
|
|
||||||
#include "osx_name.h"
|
|
||||||
|
|
||||||
#define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0]))
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
|
||||||
{
|
|
||||||
unsigned i;
|
|
||||||
|
|
||||||
assert(code_map_osx_to_win32_len == ARRAY_SIZE(code_map_osx_to_win32));
|
|
||||||
assert(code_map_osx_to_win32[0x1d] == 0x30);
|
|
||||||
assert(name_map_osx_to_win32_len == ARRAY_SIZE(name_map_osx_to_win32));
|
|
||||||
assert(strcmp(name_map_osx_to_win32[0x1d], "VK_0") == 0);
|
|
||||||
|
|
||||||
assert(code_map_osx_to_xkb_len == ARRAY_SIZE(code_map_osx_to_xkb));
|
|
||||||
assert(strcmp(code_map_osx_to_xkb[0x1d], "AE10") == 0);
|
|
||||||
assert(name_map_osx_to_xkb_len == ARRAY_SIZE(name_map_osx_to_xkb));
|
|
||||||
assert(strcmp(name_map_osx_to_xkb[0x1d], "AE10") == 0);
|
|
||||||
|
|
||||||
assert(code_map_html_to_win32_len == ARRAY_SIZE(code_map_html_to_win32));
|
|
||||||
for (i = 0;i < code_map_html_to_win32_len;i++) {
|
|
||||||
if (strcmp(code_map_html_to_win32[i].from, "ControlLeft") == 0) {
|
|
||||||
assert(code_map_html_to_win32[i].to == 0x11);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
assert(i != code_map_html_to_win32_len);
|
|
||||||
assert(name_map_html_to_win32_len == ARRAY_SIZE(name_map_html_to_win32));
|
|
||||||
for (i = 0;i < name_map_html_to_win32_len;i++) {
|
|
||||||
if (strcmp(name_map_html_to_win32[i].from, "ControlLeft") == 0) {
|
|
||||||
assert(strcmp(name_map_html_to_win32[i].to, "VK_CONTROL") == 0);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
assert(i != name_map_html_to_win32_len);
|
|
||||||
|
|
||||||
assert(code_table_osx_len == ARRAY_SIZE(code_table_osx));
|
|
||||||
assert(code_table_osx[0x1d] == 0x3b);
|
|
||||||
assert(name_table_osx_len == ARRAY_SIZE(name_table_osx));
|
|
||||||
assert(strcmp(name_table_osx[0x1d], "Control") == 0);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
# Keycode Map Generator Python Tests
|
|
||||||
#
|
|
||||||
# Copyright 2017 Pierre Ossman for Cendio AB
|
|
||||||
#
|
|
||||||
# This file is dual license under the terms of the GPLv2 or later
|
|
||||||
# and 3-clause BSD licenses.
|
|
||||||
|
|
||||||
import osx2win32
|
|
||||||
import osx2win32_name
|
|
||||||
|
|
||||||
import osx2xkb
|
|
||||||
import osx2xkb_name
|
|
||||||
|
|
||||||
import html2win32
|
|
||||||
import html2win32_name
|
|
||||||
|
|
||||||
import osx
|
|
||||||
import osx_name
|
|
||||||
|
|
||||||
assert osx2win32.code_map_osx_to_win32[0x1d] == 0x30
|
|
||||||
assert osx2win32_name.name_map_osx_to_win32[0x1d] == "VK_0"
|
|
||||||
|
|
||||||
assert osx2xkb.code_map_osx_to_xkb[0x1d] == "AE10"
|
|
||||||
assert osx2xkb_name.name_map_osx_to_xkb[0x1d] == "AE10"
|
|
||||||
|
|
||||||
assert html2win32.code_map_html_to_win32["ControlLeft"] == 0x11
|
|
||||||
assert html2win32_name.name_map_html_to_win32["ControlLeft"] == "VK_CONTROL"
|
|
||||||
|
|
||||||
assert osx.code_table_osx[0x1d] == 0x3b;
|
|
||||||
assert osx_name.name_table_osx[0x1d] == "Control";
|
|
20
keycodemapdb/thirdparty/LICENSE-argparse.txt
vendored
20
keycodemapdb/thirdparty/LICENSE-argparse.txt
vendored
@ -1,20 +0,0 @@
|
|||||||
argparse is (c) 2006-2009 Steven J. Bethard <steven.bethard@gmail.com>.
|
|
||||||
|
|
||||||
The argparse module was contributed to Python as of Python 2.7 and thus
|
|
||||||
was licensed under the Python license. Same license applies to all files in
|
|
||||||
the argparse package project.
|
|
||||||
|
|
||||||
For details about the Python License, please see doc/Python-License.txt.
|
|
||||||
|
|
||||||
History
|
|
||||||
-------
|
|
||||||
|
|
||||||
Before (and including) argparse 1.1, the argparse package was licensed under
|
|
||||||
Apache License v2.0.
|
|
||||||
|
|
||||||
After argparse 1.1, all project files from the argparse project were deleted
|
|
||||||
due to license compatibility issues between Apache License 2.0 and GNU GPL v2.
|
|
||||||
|
|
||||||
The project repository then had a clean start with some files taken from
|
|
||||||
Python 2.7.1, so definitely all files are under Python License now.
|
|
||||||
|
|
0
keycodemapdb/thirdparty/__init__.py
vendored
0
keycodemapdb/thirdparty/__init__.py
vendored
2392
keycodemapdb/thirdparty/argparse.py
vendored
2392
keycodemapdb/thirdparty/argparse.py
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user