예제 #1
0
def main():
    if not keyboard.is_keyboard():
        return

    text = keyboard.get_selected_text()

    if not text:
        dialogs.hud_alert('No text selected', 'error')
        return

    new_text = text.lower()
    keyboard.insert_text(new_text)
예제 #2
0
    def button_action(self, sender):
        if sender.title == '⏎':
            self.bw = 125
            FILE = open(f'Options.txt', "r+", encoding="utf-8")
            for line in FILE:
                line = line.replace('\n', '')
                self.dict[line] = 'Options'
            self.Rebuild(self.dict, 125)
            return
        if sender.title == 'Faces':
            self.bw = 125
            FILE = open(f'{sender.title}.txt', "r+", encoding="utf-8")
            for line in FILE:
                line = line.replace('\n', '')
                if line.strip() == '':
                    continue

                self.dict[line] = line
            self.Rebuild(self.dict, 40)
            return
        if sender.name == 'Options':
            self.bw = 125
            FILE = open(f'{sender.title}.txt', "r+", encoding="utf-8")
            for line in FILE:
                line = line.replace('\n', '')
                if line.strip() == '':
                    continue
                if ':' in line:
                    k, v = line.split(':')
                    self.dict[k] = '⏎' + v
                else:
                    self.dict[line[0]] = '⏎' + line
            self.Rebuild(self.dict, 40)
            return

        if sender.name == sender.title:
            self.bw = 40
            if keyboard.is_keyboard():
                keyboard.insert_text(sender.name)
                return
            else:
                print('Keyboard input:', sender.title)
                return
        if ':' not in sender.name:
            self.dict.clear()
            for char in sender.name:
                self.dict[char] = char
            self.Rebuild(self.dict, 40)
            return
예제 #3
0
def main():
    if not keyboard.is_keyboard():
        return

    dics = get_dics('Snippet Regular Expression.txt')

    items = [d['title'] + '  ' + d['desc'] for d in dics]
    selected_item = dialogs.list_dialog('select', items)
    if not selected_item:
        return

    idx = items.index(selected_item)

    new_text = dics[idx]['title']
    keyboard.insert_text(new_text)
예제 #4
0
def main():
    if not keyboard.is_keyboard():
        print('This script is meant to be run in the Pythonista keyboard.')
        return

    # (phrase, shortcut)
    all = keyboard.get_text_replacements()
    snippets = [s[0] for s in all if s[1] == '☻']
    snippets.sort()

    if len(snippets) == 0:
        dialogs.hud_alert('No Text Replacements')
        return

    selected = dialogs.list_dialog('Text Replacements', snippets)
    if selected:
        keyboard.insert_text(selected)
def extract_code():
    language_preference = ['fi', 'en', 'se']
    load_framework('Vision')
    VNRecognizeTextRequest = ObjCClass('VNRecognizeTextRequest')
    VNImageRequestHandler = ObjCClass('VNImageRequestHandler')
    pil_image = clipboard.get_image()
    text = ""

    if pil_image is not None:
        buffer = io.BytesIO()
        pil_image.save(buffer, format='PNG')
        image_data = buffer.getvalue()

        req = VNRecognizeTextRequest.alloc().init().autorelease()
        req.setRecognitionLanguages_(language_preference)
        handler = VNImageRequestHandler.alloc().initWithData_options_(
            image_data, None).autorelease()

        success = handler.performRequests_error_([req], None)
        if success:
            for result in req.results():
                text += str(result.text()) + "\n"
        else:
            print('Problem recognizing anything')

    text = re.sub(" ", "", text)
    dtext = text.split("\n")
    code = ""

    for d in dtext:
        try:
            if d[0] == "X" and len(d) == 16:
                code = d
        except:
            abco = 1
        if d.count("AQ") > 0:
            code = d

    if not code == "":
        print(code)
        keyboard.insert_text(code)
    else:
        console.hud_alert("認識できませんでした。", "error", 0.3)
예제 #6
0
def main():
    if not keyboard.is_keyboard():
        return

    text = keyboard.get_selected_text()

    if not text:
        dialogs.hud_alert('No text selected', 'error')
        return

    snippets = get_dics('Surround Text.txt')
    selected = dialogs.list_dialog('select Replacements', snippets)
    if not selected:
        return

    m = re.match(r'^(.*)〜(.*)$', selected)
    if not m:
        return

    g = m.groups()
    left = g[0]
    right = g[1]
    newText = left + text + right
    keyboard.insert_text(newText)
예제 #7
0
def main():
    text = keyboard.get_selected_text()

    text = re.sub("^ ", "", text)
    text = re.sub("&nbsp;<br>$", "", text)
    text = re.sub("<br>$|^<br>", "", text)
    text = re.sub("<u>|</u>", "", text)

    text = re.sub(
        "<td>|</td>|<tr>|</tr>|<tbody>|</tbody>|<table>|</table>|{|}", "",
        text)
    text = re.sub(r"(\D)(\d|\d\S\d|\d\S\S\S\d)(\s|$|&nbsp;|,\D|;|<)",
                  r"\1<sup>\2</sup>\3", text)
    '''text = re.sub(" |&nbsp;","",text)'''

    text = re.sub(" - | -- | –– ", " — ", text)
    text = re.sub("--|––", "—", text)
    text = text.replace("-", "–")
    text = text.replace("...", "…")

    text = re.sub("<div>", "<br>", text, 1)

    text = re.sub(r"(\S\D)(c|d|g|h|l|m|n|r|t|v)ize", r"\1\2ise", text)
    text = text.replace("avor", "avour")
    text = text.replace("honor", "honour")
    text = text.replace("color", "colour")
    text = text.replace("成语 saw", "idiom")

    text = re.sub(
        "&nbsp;</div><div>|&nbsp;<br>| <br>|</div><div>|<br />|<br/>", "<br>",
        text)
    text = text.replace("<br><br><br>", "<br><br>")

    text = re.sub("<div>|</div>", "", text)

    text = text.replace("  ", " ")
    text = text.replace(" / ", "/")
    text = re.sub(r"( |^)'(\b|<)", r"\1‘\2", text)
    text = re.sub(r"(\b|>)'(\s|\.|,|\))", r"\1’\2", text)
    text = text.replace("'", "’")
    text = re.sub(r"( |^)\"(\b|<)", r"\1“\2", text)
    text = re.sub(r"(\b|>)\"(\s|\.|,|\)|$)", r"\1”\2", text)
    text = re.sub(
        "\(Jyutping\)|\(jyutping\)",
        "[<a href=\"http://www.cantonese.sheik.co.uk/dictionary/characters/751/\">粵</a>]",
        text)
    text = re.sub(
        "\(Pinyin\)|\(pinyin\)",
        "[<a href=\"http://www.cantonese.sheik.co.uk/dictionary/characters/331/\">國</a>]",
        text)

    text = text.replace("msg–", "msg-")
    text = re.sub("<br>$|^<br>|&nbsp;$", "", text)
    text = re.sub("<br>$|^<br>|&nbsp;$", "", text)
    text = re.sub("&nbsp;", " ", text)

    if keyboard.is_keyboard():
        keyboard.play_input_click()
        keyboard.insert_text(text)
    else:
        # For debugging in the main app:
        print(f'Keyboard input: {text}')
예제 #8
0
def delete_selection():
	selected_text = keyboard.get_selected_text()
	if selected_text:
		keyboard.insert_text(' ')
		keyboard.backspace(1)
	return
 def typeChar(self, sender):
     keyboard.insert_text(sender.title)
예제 #10
0
from keyboard import insert_text
# Inset structure for a function for the functions_eval script
insert_text('f(x)={x}')
def run_pass_auto():
    global oldimg_url
    global oldtweet_id
    global oldtweet_name
    global oldtweet_text
    global exrep
    global switch
    global new
    global error_script
    
    global alpha_mode,img_mode,speed
    try:
        with open('./.option.csv', 'r', encoding='utf8') as (f):
            reader = csv.reader(f)
            for i in reader:
                alpha_mode = i[0]
                img_mode = i[1]
                sleep_time = 0.21-float(i[2])*0.2
        print("***設定読み込み完了***")
        print("****オート起動****")

    except:
        console.alert('Pythonistaで先に設定して下さい。')
        sys.exit(3)
    
    try:
        f = open('.tw.txt', 'r')
        for row in f:
            settingtxt = row.strip()
        f.close()
        codes = re.split('#', settingtxt)
        au = convert_from_hash(codes[4])
    except:
        print('Twitter連携が無効です\n')
        sys.exit()
    if not au==str(send_code*33):
        print('購入者コードが無効です\n')
        sys.exit()
    
    userid = url2id(url)
    
    add_api(1,userid)
    for i in range(2,6):
        tt = threading.Thread(target=add_api, args=(i,userid))
        tt.start()
        time.sleep(0.15)
    tt.join()
    #print("****連携済み"+str(len(tw_api))+"個****")
    
    start_time = time.time()
    stpcount = 0
    
    if len(tw_api) == 0:
        print("連携不足エラー")
        sys.exit()

    old = tweet_get(tw_api[0], userid, True)
    while old[1] == 'err':
        old = tweet_get(tw_api[0], userid, True)
        stpcount += 1
        if stpcount == 5:
            print("ツイート取得できませんでした。")
            sys.exit()
    oldtweet_id = old[0]
    oldtweet_text = old[1]
    oldtweet_name = old[2]
    oldimg_url = old[3]
    print(oldtweet_name + 'のパスツイ待機中•••')
    new = tweet_get(tw_api[0], userid)
    mtweet_id = new[0]
    mtweet_text = new[1]
    mtweet_name = new[2]
    mimg_url = new[3]
    elapsed_time = 0
    api_switch = 0
    loop_count = 0
    list_get = False
    while switch == 0:
        api_switch = api_switch%len(tw_api)
        if list_switch:
            list_get = not list_get
        t = threading.Thread(target=t_tweet_get, args=(tw_api[api_switch], userid, list_get))
        t.start()
        mtweet_id = new[0]
        mtweet_text = new[1]
        mtweet_name = new[2]
        mimg_url = new[3]
        if not keyboard.is_keyboard():
            print(mtweet_text)
        flag = check_passtweet(mtweet_text)
        if flag:
            ps = pass_auto(mtweet_id, mtweet_text, mimg_url)
            if keyboard.is_keyboard():
                keyboard.backspace(10)
                keyboard.insert_text(ps)
                keyboard.insert_text('\n')
            print('****取得成功****\n' + ps)
            sound.play_effect('arcade:Coin_2', 0.10)
            switch = 1
            try:
                mememe=tw_api[0].me()
                nowt = str(datetime.datetime.now())
                error_script =  "atweet_id x"+str(error_script.count('atweet_id'))+"   ltweet_id x"+str(error_script.count('ltweet_id'))+error_script
                error_script = re.sub("local variable 'atweet_id' referenced before assignment","",error_script)
                error_script = re.sub("local variable 'ltweet_id' referenced before assignment","",error_script)
                stext = nowt[:nowt.find(".")]+'\nリストスイッチ:'+str(list_switch)+"\nエラー文\n"+error_script+"\nuser:@"+mememe.screen_name+"\nsleeptime:"+str(sleep_time)+"\ntweet:"+oldtweet_name+"\n"+oldtweet_text+"\n処理前テキスト\n"+mtweet_text+"\n処理後テキスト\n"+ps
                stext = urllib.parse.quote(stext)
                requests.get()
            except Exception as e:
                #print(e)
                pass
        api_switch+=1
        time.sleep(sleep_time)