src/java.desktop/unix/classes/sun/awt/X11/genhash.awk
changeset 52535 45a5c4d812d9
parent 52534 356e75119d31
child 52536 d09e1ab4bd1d
equal deleted inserted replaced
52534:356e75119d31 52535:45a5c4d812d9
     1 # Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
       
     2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       
     3 #
       
     4 # This code is free software; you can redistribute it and/or modify it
       
     5 # under the terms of the GNU General Public License version 2 only, as
       
     6 # published by the Free Software Foundation.  Oracle designates this
       
     7 # particular file as subject to the "Classpath" exception as provided
       
     8 # by Oracle in the LICENSE file that accompanied this code.
       
     9 #
       
    10 # This code is distributed in the hope that it will be useful, but WITHOUT
       
    11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
       
    12 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
       
    13 # version 2 for more details (a copy is included in the LICENSE file that
       
    14 # accompanied this code).
       
    15 #
       
    16 # You should have received a copy of the GNU General Public License version
       
    17 # 2 along with this work; if not, write to the Free Software Foundation,
       
    18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
       
    19 #
       
    20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
       
    21 # or visit www.oracle.com if you need additional information or have any
       
    22 # questions.
       
    23 #
       
    24 #  With this script one can generate a new version XKeysym.java file out
       
    25 #  of keysym2ucs.h prototype and UnicodeData.txt database.
       
    26 #  Latter file should be fetched from a unicode.org site, most
       
    27 #  probably http://www.unicode.org/Public/UNIDATA/UnicodeData.txt
       
    28 #
       
    29 BEGIN {   FS=";";
       
    30           while((getline < "UnicodeData.txt")){
       
    31               unic[$1]=$2;
       
    32           }
       
    33           FS=" ";
       
    34           print("// This is a generated file: do not edit! Edit keysym2ucs.h if necessary.\n");          
       
    35       }
       
    36 
       
    37 /^0x/{
       
    38          if( $1 != "0x0000" ) {
       
    39              ndx =  toupper($1);
       
    40              sub(/0X/, "", ndx);
       
    41              printf("        keysym2UCSHash.put( (long)%s, (char)%s); // %s -->%s\n",
       
    42                         $4, $1, $3, (unic[ndx]=="" ? "" : " " unic[ndx]));
       
    43          }
       
    44      }
       
    45 /tojava/ { sub(/tojava /, ""); sub(/tojava$/, ""); print}