# 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. import unicodenames import locale, re, sys locale.setlocale(locale.LC_ALL, 'en_US') uniname_re_str = sys.argv[1] uniname_re = re.compile(uniname_re_str) function_name = sys.argv[2] names_db = unicodenames.unicodenames(unicodenames.find_names_db()) matches = [] codepoint = 0 while codepoint <= 0x10FFFF: uniname = names_db.name(codepoint) if uniname is not None and uniname_re.search(uniname) is not None: matches.append(codepoint) codepoint += 1 print('/* This is a generated file. */') print('') print('#include <stdlib.h>') print('') print('/*') print(' * Codepoints whose names match the regular expression') print(' *')
# <http://www.gnu.org/licenses/>. import unicodenames import locale, os, sys my_locale = sys.argv[1] codepoint = int(sys.argv[2], 16) localedir = None if sys.argv[3] == "" else sys.argv[3] exit_code = 0 try: loc = locale.setlocale(locale.LC_MESSAGES, my_locale) except: print('locale not supported; skipping test') exit_code = 77 if exit_code == 0: try: print(loc) names_db = unicodenames.find_names_db(localedir) print(os.path.basename(names_db)) db = unicodenames.unicodenames(names_db) print(db.name(codepoint)) del db except: print('exception caught') exit_code = 1 exit(exit_code)