コード例 #1
0
def main():
    # We start with a `KeyBindingManager` instance, because this will already
    # nicely load all the default key bindings.
    key_bindings_manager = KeyBindingManager()

    # We add a custom key binding to space.
    @key_bindings_manager.registry.add_binding(' ')
    def _(event):
        """
        When space is pressed, we check the word before the cursor, and
        autocorrect that.
        """
        b = event.cli.current_buffer
        w = b.document.get_word_before_cursor()
        replace_by = corrections.get(w)

        if w is not None:
            if w in corrections:
                b.delete_before_cursor(count=len(w))
                b.insert_text(replace_by)

        b.insert_text(' ')

    # Read input.
    print('Say something')
    text = get_input(key_bindings_registry=key_bindings_manager.registry)
    print('You said: %s' % text)
コード例 #2
0
ファイル: linteract.py プロジェクト: wdv4758h/linteract
def linteract(input_context, run=None, print_return=True):

    context = { 'message': '>>> ',
                'history': History(),
                'style': DocumentStyle,
                'enable_system_prompt': True, }

    context.update(input_context)

    while True:
        try:
            text = get_input(**context)
        except EOFError:
            break
        except KeyboardInterrupt:
            print('KeyboardInterrupt')
            continue

        if run:
            try:
                if print_return:
                    print(run(text))
                else:
                    run(text)
            except:
                print(traceback.format_exc(), end='')
コード例 #3
0
def main():
    # We start with a `KeyBindingManager` instance, because this will already
    # nicely load all the default key bindings.
    key_bindings_manager = KeyBindingManager()

    # Add our own key binding to the registry of the key bindings manager.
    @key_bindings_manager.registry.add_binding(Keys.F4)
    def _(event):
        """
        When F4 has been pressed. Insert "hello world" as text.
        """
        event.cli.current_buffer.insert_text('hello world')

    @key_bindings_manager.registry.add_binding('x', 'y')
    def _(event):
        """
        (Useless, but for demoing.)
        Typing 'xy' will insert 'z'.

        Note that when you type for instance 'xa', the insertion of 'x' is
        postponed until the 'a' is typed. because we don't know earlier whether
        or not a 'y' will follow.
        """
        event.cli.current_buffer.insert_text('z')

    # Read input.
    print('Press F4 to insert "hello world", type "xy" to insert "z":')
    text = get_input(key_bindings_registry=key_bindings_manager.registry)
    print('You said: %s' % text)
コード例 #4
0
def main():
    def get_bottom_toolbar_tokens(cli):
        return [(Token.Toolbar, ' This is a toolbar. ')]

    text = get_input('Say something: ',
                     get_bottom_toolbar_tokens=get_bottom_toolbar_tokens,
                     style=TestStyle)
    print('You said: %s' % text)
コード例 #5
0
def main():
    def get_bottom_toolbar_tokens(cli):
        return [(Token.Toolbar, ' This is a toolbar. ')]

    text = get_input('Say something: ',
                     get_bottom_toolbar_tokens=get_bottom_toolbar_tokens,
                     style=TestStyle)
    print('You said: %s' % text)
コード例 #6
0
ファイル: autocomplete.py プロジェクト: say1ted/vkconsole
def autocomplete(prompt, words):
    word_complete = WordCompleter(words)
    try:
        text = get_input(prompt, completer=word_complete, style=VkStyle)
        return text
    except Exception as err:
        print(err)
    return ''
コード例 #7
0
def read_remarks():
    remarks_completer = WordCompleter(remarks_index)

    remarks = get_input('Remarks? >> ', completer=remarks_completer)
    if remarks == '?':
        print('--')
        print('\n'.join(remarks_index))
        print('--')
        return read_remarks()
    else:
        remarks_index.add(remarks)
        return remarks
コード例 #8
0
ファイル: main.py プロジェクト: pawmint/manual_groundtruth
def read_resident():
    validator = ResidentValidator(
        ['3', '4', '5', '6', '7', '8'],
        accept_empty=(default['resident'] is not None))
    resident = get_input('Resident? ' + ('[default %s] ' % default['resident']
                                         if default['resident'] is not None
                                         else ''),
                         validator=validator)
    if resident == '':
        resident = default['resident']
    default['resident'] = resident
    return resident
コード例 #9
0
ファイル: main.py プロジェクト: pawmint/manual_groundtruth
def read_remarks():
    remarks_completer = WordCompleter(remarks_index)

    remarks = get_input('Remarks? >> ', completer=remarks_completer)
    if remarks == '?':
        print('--')
        print('\n'.join(remarks_index))
        print('--')
        return read_remarks()
    else:
        remarks_index.add(remarks)
        return remarks
コード例 #10
0
ファイル: main.py プロジェクト: pawmint/manual_groundtruth
def read_guessed_situation():
    guessed_situation_completer = WordCompleter(situations_index)

    guessed_situation = get_input('Guessed situation? >> ',
                                  completer=guessed_situation_completer)
    if guessed_situation == '?':
        print('--')
        print('\n'.join(situations_index))
        print('--')
        return read_guessed_situation()
    else:
        situations_index.add(guessed_situation)
        return guessed_situation
コード例 #11
0
def read_guessed_situation():
    guessed_situation_completer = WordCompleter(situations_index)

    guessed_situation = get_input('Guessed situation? >> ',
                                  completer=guessed_situation_completer)
    if guessed_situation == '?':
        print('--')
        print('\n'.join(situations_index))
        print('--')
        return read_guessed_situation()
    else:
        situations_index.add(guessed_situation)
        return guessed_situation
コード例 #12
0
def read_resident():
    validator = ResidentValidator(['3', '4', '5', '6', '7', '8'],
                                  accept_empty=(default['resident']
                                                is not None))
    resident = get_input(
        'Resident? ' +
        ('[default %s] ' %
         default['resident'] if default['resident'] is not None else ''),
        validator=validator)
    if resident == '':
        resident = default['resident']
    default['resident'] = resident
    return resident
コード例 #13
0
def read_date(name, default, accept_pasttime=True):
    date = get_input('%s? (? for help) ' % name
                     + ('[default "%s"] ' % default[:19]
                        if default is not None else '')
                     + '>> ',
                     validator=DateValidator(default, accept_pasttime))
    if date == '?':
        print("---")
        _print_date_format_helper(default)
        print("---")
        return read_date(name, default, accept_pasttime)
    else:
        parsed_date = parse_date(date, default, accept_pasttime)
        return parsed_date
コード例 #14
0
def read_list(name, possible_values, default):
    _numbered_list = [
        '%d. %s' % (i, v) for i, v in enumerate(possible_values, 1)
    ]
    validator = ListValidator(possible_values, default)
    completer = WordCompleter(_numbered_list)

    answer = get_input(
        '%s?' % name +
        (' [default %s]' %
         (possible_values.index(default) + 1) if default is not None else '') +
        '\n(%s)' % ', '.join(_numbered_list) + '\n>> ',
        completer=completer,
        validator=validator)
    parsed_answer = parse_list_answer(answer, possible_values, default)
    return parsed_answer
コード例 #15
0
def read_list(name, possible_values, default):
    _numbered_list = ['%d. %s' % (i, v)
                      for i, v in enumerate(possible_values, 1)]
    validator = ListValidator(possible_values, default)
    completer = WordCompleter(_numbered_list)

    answer = get_input(
        '%s?' % name
        + (' [default %s]' % (possible_values.index(default) + 1)
           if default is not None else '')
        + '\n(%s)' % ', '.join(_numbered_list)
        + '\n>> ',
        completer=completer, validator=validator)
    parsed_answer = parse_list_answer(answer, possible_values,
                                      default)
    return parsed_answer
コード例 #16
0
def main(database):
    history = History()
    connection = sqlite3.connect(database)

    while True:
        text = get_input('> ',
                         lexer=SqlLexer,
                         completer=sql_completer,
                         style=DocumentStyle,
                         history=history)
        if text is None:
            break
        with connection:
            messages = connection.execute(text)
            for message in messages:
                print(message)
    print('GoodBye!')
コード例 #17
0
def main(database):
    history = History()
    connection = sqlite3.connect(database)

    while True:
        try:
            text = get_input('> ', lexer=SqlLexer, completer=sql_completer, style=DocumentStyle, history=history,
                             on_abort=AbortAction.RETRY)
        except EOFError:
            break  # Control-D pressed.

        with connection:
            try:
                messages = connection.execute(text)
            except Exception as e:
                print(repr(e))
            else:
                for message in messages:
                    print(message)
    print('GoodBye!')
コード例 #18
0
ファイル: cli.py プロジェクト: jean/tagg-python
        def run(self):
            default_style = get_style_by_name('default')
            g = create_grammar()
            lexer = GrammarLexer(g,
                                 tokens={
                                     "repokey": Token.Name,
                                     "tagkey": Token.Name,
                                     "repocmd": Token.Operator,
                                     "tagcmd": Token.Operator
                                 })
            hinters = {
                'repos': CachedHints(self.targets['repos']),
                'tags': CachedHints(self.targets['tags'])
            }
            completer = GrammarCompleter(g, {
                'repocmd': WordCompleter(repo_cmds),
                'tagcmd': WordCompleter(cmds),
                'repokey': CustomCompleter(hinters['repos']),
                'tagkey': CustomCompleter(hinters['tags']),
            })
            while True:
                try:
                    text = get_input('> ',
                                     style=REPLStyle,
                                     completer=completer,
                                     history_filename='./.tag_history')
                    if text == 'exit':
                        break
                    elif text.startswith('help'):
                        self.parser.print_help()
                        continue

                    args = [i.strip() for i in text.split(' ', 3)]
                    process_cmd(self.targets, *args)

                except (KeyboardInterrupt, Exception), e:
                    print e
                    print
コード例 #19
0
def main():
    our_history = FileHistory('.example-history-file')
    text = get_input('Say something: ', history=our_history)
    print('You said: %s' % text)
コード例 #20
0
def main():
    text = get_input('Enter e-mail address: ', validator=EmailValidator())
    print('You said: %s' % text)
コード例 #21
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input

if __name__ == '__main__':
    print('Press [Meta+Enter] or [Esc] followed by [Enter] to accept input.')
    answer = get_input('Give me some multiline input:\n', multiline=True)
    print('You said: %s' % answer)
コード例 #22
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input


if __name__ == '__main__':
    print('Press [Meta+Enter] or [Esc] followed by [Enter] to accept input.')
    answer = get_input('Give me some multiline input:\n', multiline=True)
    print('You said: %s' % answer)
コード例 #23
0
def main():
    text = get_input('Enter HTML: ', lexer=HtmlLexer)
    print('You said: %s' % text)
コード例 #24
0
def main():
    text = get_input('Say something: ',
                     history_filename='.example-history-file')
    print('You said: %s' % text)
コード例 #25
0
        'operator2': Token.Operator,
        'var1': Token.Number,
        'var2': Token.Number
    })

    completer = GrammarCompleter(g, {
        'operator1': WordCompleter(operators1),
        'operator2': WordCompleter(operators2),
    })


    try:
        # REPL loop.
        while True:
            # Read input and parse the result.
            text = get_input('Calculate: ', lexer=lexer, completer=completer, style=ExampleStyle)
            m = g.match(text)
            if m:
                vars = m.variables()
            else:
                print('Invalid command\n')
                continue

            print(vars)
            if vars.get('operator1') or vars.get('operator2'):
                try:
                    var1 = float(vars.get('var1', 0))
                    var2 = float(vars.get('var2', 0))
                except ValueError:
                    print('Invalid command (2)\n')
                    continue
コード例 #26
0

print ("PCR1000 Test... \n")

pcr = PCR1000()

pcr.start()
pcr.setFrequency(118100000)
pcr.setModulationMode("am")
pcr.setFilter("15k")
pcr.setVolume(100)
pcr.startStream()


while(1==1):
	commandLine = get_input("Command: ")
	command = re.search("(\w+)", commandLine).group(1)
	match = re.search("\w+(.*)", commandLine)
	if (match == None):
		arguments = []
	else:
		arguments = match.group(1).split(" ")
	#arguments = re.search("\s+(.*)", commandLine).group(1)
	#test = arguments.split(" ")
	#print("Test: ", test, type(test))
	print("Exec command: " + str(command) + " Arguments: " + str(arguments))

	if (command == None):
		break;
	elif (command == "exit"):
		break;
コード例 #27
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input

if __name__ == '__main__':
    password = get_input('Password: '******'You said: %s' % password)
コード例 #28
0
                             'var1': Token.Number,
                             'var2': Token.Number
                         })

    completer = GrammarCompleter(
        g, {
            'operator1': WordCompleter(operators1),
            'operator2': WordCompleter(operators2),
        })

    try:
        # REPL loop.
        while True:
            # Read input and parse the result.
            text = get_input('Calculate: ',
                             lexer=lexer,
                             completer=completer,
                             style=ExampleStyle)
            m = g.match(text)
            if m:
                vars = m.variables()
            else:
                print('Invalid command\n')
                continue

            print(vars)
            if vars.get('operator1') or vars.get('operator2'):
                try:
                    var1 = float(vars.get('var1', 0))
                    var2 = float(vars.get('var2', 0))
                except ValueError:
                    print('Invalid command (2)\n')
コード例 #29
0
def main():
    text = get_input('Give some animals: ', completer=animal_completer, style=AnimalStyle)
    print('You said: %s' % text)
コード例 #30
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input

if __name__ == '__main__':
    print(
        "You have Vi keybindings here. Press [Esc] to go to navigation mode.")
    answer = get_input('Give me some input: ', multiline=False, vi_mode=True)
    print('You said: %s' % answer)
コード例 #31
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input


if __name__ == '__main__':
    print("You have Vi keybindings here. Press [Esc] to go to navigation mode.")
    answer = get_input('Give me some input: ', multiline=False, vi_mode=True)
    print('You said: %s' % answer)
コード例 #32
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input


if __name__ == '__main__':
    answer = get_input('Give me some input: ')
    print('You said: %s' % answer)
コード例 #33
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input

if __name__ == '__main__':
    print(
        'If you press meta-! or esc-! at the following prompt, you can enter system commands.'
    )
    answer = get_input('Give me some input: ', enable_system_prompt=True)
    print('You said: %s' % answer)
コード例 #34
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input

if __name__ == '__main__':
    answer = get_input('Give me some input: ')
    print('You said: %s' % answer)
コード例 #35
0
def main():
    text = get_input('Enter e-mail address: ', validator=EmailValidator(), style=TestStyle)
    print('You said: %s' % text)
コード例 #36
0
#!/usr/bin/env python
from __future__ import unicode_literals
from prompt_toolkit.contrib.shortcuts import get_input


if __name__ == '__main__':
    password = get_input('Password: '******'You said: %s' % password)