aboutsummaryrefslogtreecommitdiff
path: root/contrib/YouCompleteMe/ycm_extra_conf.py
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2023-01-25 18:31:31 +0000
committerJosh Rahm <joshuarahm@gmail.com>2023-01-25 18:31:31 +0000
commit9243becbedbb6a1592208051f8fa2b090dcc5e7d (patch)
tree607c2a862ec3f4399b8766383f6f8e04c4aa43b4 /contrib/YouCompleteMe/ycm_extra_conf.py
parent9e40b6e9e1bc67f2d856adb837ee64dd0e25b717 (diff)
parent3c48d3c83fc21dbc0841f9210f04bdb073d73cd1 (diff)
downloadrneovim-usermarks.tar.gz
rneovim-usermarks.tar.bz2
rneovim-usermarks.zip
Merge remote-tracking branch 'upstream/master' into usermarksusermarks
Diffstat (limited to 'contrib/YouCompleteMe/ycm_extra_conf.py')
-rw-r--r--contrib/YouCompleteMe/ycm_extra_conf.py65
1 files changed, 0 insertions, 65 deletions
diff --git a/contrib/YouCompleteMe/ycm_extra_conf.py b/contrib/YouCompleteMe/ycm_extra_conf.py
deleted file mode 100644
index e436609ce2..0000000000
--- a/contrib/YouCompleteMe/ycm_extra_conf.py
+++ /dev/null
@@ -1,65 +0,0 @@
-# .ycm_extra_conf.py for nvim source code.
-import os
-import ycm_core
-
-
-def DirectoryOfThisScript():
- return os.path.dirname(os.path.abspath(__file__))
-
-
-def GetDatabase():
- compilation_database_folder = os.path.join(DirectoryOfThisScript(),
- 'build')
- if os.path.exists(compilation_database_folder):
- return ycm_core.CompilationDatabase(compilation_database_folder)
- return None
-
-
-def GetCompilationInfoForFile(filename):
- database = GetDatabase()
- if not database:
- return None
- return database.GetCompilationInfoForFile(filename)
-
-
-# It seems YCM does not resolve directories correctly. This function will
-# adjust paths in the compiler flags to be absolute
-def FixDirectories(args, compiler_working_dir):
- def adjust_path(path):
- return os.path.abspath(os.path.join(compiler_working_dir, path))
-
- adjust_next_arg = False
- new_args = []
- for arg in args:
- if adjust_next_arg:
- arg = adjust_path(arg)
- adjust_next_arg = False
- else:
- for dir_flag in ['-I', '-isystem', '-o', '-c']:
- if arg.startswith(dir_flag):
- if arg != dir_flag:
- # flag and path are concatenated in same arg
- path = arg[len(dir_flag):]
- new_path = adjust_path(path)
- arg = '{0}{1}'.format(dir_flag, new_path)
- else:
- # path is specified in next argument
- adjust_next_arg = True
- new_args.append(arg)
- return new_args
-
-
-def FlagsForFile(filename):
- compilation_info = GetCompilationInfoForFile(filename)
- if not compilation_info:
- return None
- # Add flags not needed for clang-the-binary,
- # but needed for libclang-the-library (YCM uses this last one).
- flags = FixDirectories((list(compilation_info.compiler_flags_)
- if compilation_info.compiler_flags_
- else []), compilation_info.compiler_working_dir_)
- extra_flags = ['-Wno-newline-eof']
- return {
- 'flags': flags + extra_flags,
- 'do_cache': True
- }