Changed data source to include the whole set of chars
This commit is contained in:
parent
f62e06b988
commit
f607e06d2e
32841
UnicodeData.txt
Normal file
32841
UnicodeData.txt
Normal file
File diff suppressed because it is too large
Load diff
|
@ -25,11 +25,12 @@ def main():
|
||||||
return index
|
return index
|
||||||
|
|
||||||
with open("unicode_list.txt", "w") as target:
|
with open("unicode_list.txt", "w") as target:
|
||||||
with open("Index.txt", "r") as names:
|
with open("UnicodeData.txt", "r") as names:
|
||||||
for line in names.readlines():
|
for line in names.readlines():
|
||||||
if line.startswith("#"):
|
attributes = line.strip().split(";")
|
||||||
continue
|
code = attributes[0]
|
||||||
name, code = line.strip().split("\t")
|
name = attributes[1]
|
||||||
|
comment = attributes[10]
|
||||||
try:
|
try:
|
||||||
num = int(code, 16)
|
num = int(code, 16)
|
||||||
except ValueError:
|
except ValueError:
|
||||||
|
@ -37,12 +38,12 @@ def main():
|
||||||
continue
|
continue
|
||||||
index = locate_block(num)
|
index = locate_block(num)
|
||||||
if index is not None:
|
if index is not None:
|
||||||
target.write(name + "\t" + code + "\t" + blocks[index] + "\n")
|
target.write(name + "\t" + comment + "\t" + code + "\t" + blocks[index] + "\n")
|
||||||
else:
|
else:
|
||||||
print(
|
print(
|
||||||
"Code " + str(num) + " not found in block, char: " + unichr(num)
|
"Code " + str(num) + " not found in block, char: " + unichr(num)
|
||||||
)
|
)
|
||||||
target.write(name + "\t" + code + "\t" + "\n")
|
target.write(name + "\t" + comment + "\t" + code + "\t" + "\n")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 18 KiB |
BIN
images/unicode.png
Normal file
BIN
images/unicode.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.9 KiB |
|
@ -1,24 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<svg
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
width="7.601603mm"
|
|
||||||
height="7.715291mm"
|
|
||||||
viewBox="0 0 7.601603 7.715291"
|
|
||||||
version="1.1"
|
|
||||||
id="svg8">
|
|
||||||
<g
|
|
||||||
id="layer1"
|
|
||||||
transform="translate(-66.505356,-78.373996)">
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:125%;font-family:sans-serif;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
x="70.303574"
|
|
||||||
y="86.089287"
|
|
||||||
id="unicode_symbol"><tspan
|
|
||||||
id="tspan815"
|
|
||||||
x="70.303574"
|
|
||||||
y="86.089287"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:{font};stroke-width:0.26458332px">{symbol}</tspan></text>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 998 B |
|
@ -1,5 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="28.73" height="29.16" viewBox="0 0 7.602 7.715">
|
|
||||||
<text style="line-height:125%;text-align:center" x="70.304" y="86.089" font-weight="400" font-size="10.583" font-family="sans-serif" letter-spacing="0" word-spacing="0" text-anchor="middle" stroke-width=".265" transform="translate(-66.505 -78.374)" textLength="100%">
|
|
||||||
<tspan x="70.304" y="86.089" font-family="{font}">{symbol}</tspan>
|
|
||||||
</text>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 462 B |
13
main.py
13
main.py
|
@ -32,15 +32,16 @@ ICON_TEMPLATE = """
|
||||||
class UnicodeChar:
|
class UnicodeChar:
|
||||||
""" Container class for unicode characters """
|
""" Container class for unicode characters """
|
||||||
|
|
||||||
def __init__(self, name, block, code):
|
def __init__(self, name, comment, block, code):
|
||||||
self.name = name
|
self.name = name if name != '<control>' else comment
|
||||||
|
self.comment = comment
|
||||||
self.block = block
|
self.block = block
|
||||||
self.code = code
|
self.code = code
|
||||||
self.character = unichr(int(code, 16))
|
self.character = unichr(int(code, 16))
|
||||||
|
|
||||||
def get_search_name(self):
|
def get_search_name(self):
|
||||||
""" Called by `ulauncher.search.SortedList` to get the string that should be used in searches """
|
""" Called by `ulauncher.search.SortedList` to get the string that should be used in searches """
|
||||||
return self.name
|
return ' '.join([self.code, self.name, self.comment])
|
||||||
|
|
||||||
|
|
||||||
class UnicodeCharExtension(Extension):
|
class UnicodeCharExtension(Extension):
|
||||||
|
@ -54,8 +55,8 @@ class UnicodeCharExtension(Extension):
|
||||||
self.character_list = []
|
self.character_list = []
|
||||||
with open(join(FILE_PATH, "unicode_list.txt"), "r") as f:
|
with open(join(FILE_PATH, "unicode_list.txt"), "r") as f:
|
||||||
for line in f.readlines():
|
for line in f.readlines():
|
||||||
name, code, block = line.strip().split("\t")
|
name, comment, code, block = line.strip().split("\t")
|
||||||
character = UnicodeChar(name, block, code)
|
character = UnicodeChar(name, comment, block, code)
|
||||||
self.character_list.append(character)
|
self.character_list.append(character)
|
||||||
|
|
||||||
|
|
||||||
|
@ -64,7 +65,7 @@ class KeywordQueryEventListener(EventListener):
|
||||||
items = []
|
items = []
|
||||||
arg = event.get_argument()
|
arg = event.get_argument()
|
||||||
if arg:
|
if arg:
|
||||||
result_list = SortedList(arg, min_score=60, limit=10)
|
result_list = SortedList(arg, min_score=40, limit=10)
|
||||||
result_list.extend(extension.character_list)
|
result_list.extend(extension.character_list)
|
||||||
for char in result_list:
|
for char in result_list:
|
||||||
image_path = self._get_character_icon(char)
|
image_path = self._get_character_icon(char)
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
"name": "Unicode extension",
|
"name": "Unicode extension",
|
||||||
"description": "Extension Description",
|
"description": "Extension Description",
|
||||||
"developer_name": "John Doe",
|
"developer_name": "John Doe",
|
||||||
"icon": "images/bookmark.svg",
|
"icon": "images/unicode.png",
|
||||||
"options": {
|
"options": {
|
||||||
"query_debounce": 0.5
|
"query_debounce": 0.5
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in a new issue