# HG changeset patch # User Frank Benoit # Date 1224798069 -7200 # Node ID 71b78d56f01f5ea30e64e879a9ada10ab970d2ac # Parent f7a1b148cb35622e7a02e9a326973eed6defdd05 Enable unicode literal in resource bundles. diff -r f7a1b148cb35 -r 71b78d56f01f dwt/dwthelper/ResourceBundle.d --- a/dwt/dwthelper/ResourceBundle.d Sun Oct 19 02:47:56 2008 +0200 +++ b/dwt/dwthelper/ResourceBundle.d Thu Oct 23 23:41:09 2008 +0200 @@ -93,20 +93,24 @@ linecontinue = false; } while( pos < line.length ){ - char c = line[pos]; + char[] c = line[pos .. pos +1]; if( esc ){ esc = false; - switch( c ){ - case 't' : c = '\t'; break; - case 'n' : c = '\n'; break; - case '\\': c = '\\'; break; - case '\"': c = '\"'; break; - //case ':' : c = ':' ; break; + switch( c[0] ){ + case 't' : c[0] = '\t'; break; + case 'n' : c[0] = '\n'; break; + case '\\': c[0] = '\\'; break; + case '\"': c[0] = '\"'; break; + case 'u' : + dchar d = Integer.parseInt( line[ pos+1 .. pos+5 ], 16 ); + c = dcharToString(d); + pos += 4; + break; default: break; } } else{ - if( c == '\\' ){ + if( c == "\\" ){ if( pos == line.length -1 ){ linecontinue = true; goto nextline; @@ -115,7 +119,7 @@ pos++; continue; } - else if( iskeypart && c == '=' ){ + else if( iskeypart && c == "=" ){ pos++; iskeypart = false; continue;