Exemplo n.º 1
0
def do_init():
    # Find first available port number
    port = YavideUtils.get_available_port(
                int(vim.eval('g:YAVIDE_SOURCE_CODE_INDEXER_PORT')),
                65535
    )

    # Save it in environment variable for later usage
    var = 'let g:YAVIDE_SOURCE_CODE_INDEXER_PORT = ' + str(port)
    vim.command(var)

    # Build a command string
    cmd  = 'python '
    cmd += vim.eval('g:YAVIDE_SOURCE_CODE_INDEXER')
    cmd += ' '
    cmd += str(port)

    # Run the indexer server listening on a given port
    new_env = os.environ.copy()
    new_env['PYTHONPATH'] = vim.eval('g:YAVIDE_CORE_DIRECTORY')
    subprocess.Popen(shlex.split(cmd), shell=False, env=new_env)