Now possible to specify a global ycm_extra_conf
This commit is contained in:
parent
5c7adfdec7
commit
79f834f97e
18
README.md
18
README.md
@ -248,7 +248,9 @@ YCM looks for a `.ycm_extra_conf.py` file in the directory of the opened file
|
|||||||
or in any directory above it in the hierarchy (recursively); when the file is
|
or in any directory above it in the hierarchy (recursively); when the file is
|
||||||
found, it is loaded (only once!) as a Python module. YCM calls a `FlagsForFile`
|
found, it is loaded (only once!) as a Python module. YCM calls a `FlagsForFile`
|
||||||
method in that module which should provide it with the information necessary to
|
method in that module which should provide it with the information necessary to
|
||||||
compile the current file.
|
compile the current file. (You can also provide a path to a global
|
||||||
|
`.ycm_extra_conf.py` file and override this searching behavior. See the Options
|
||||||
|
section for more details.)
|
||||||
|
|
||||||
This system was designed this way so that the user can perform any arbitrary
|
This system was designed this way so that the user can perform any arbitrary
|
||||||
sequence of operations to produce a list of compilation flags YCM should hand
|
sequence of operations to produce a list of compilation flags YCM should hand
|
||||||
@ -430,6 +432,20 @@ Default: `<C-Space>`
|
|||||||
|
|
||||||
let g:ycm_key_invoke_completion = '<C-Space>'
|
let g:ycm_key_invoke_completion = '<C-Space>'
|
||||||
|
|
||||||
|
### The `g:ycm_global_ycm_extra_conf` option
|
||||||
|
|
||||||
|
Normally, YCM searches for a `.ycm_extra_conf.py` file for compilation flags
|
||||||
|
(see the User Guide for more details on how this works). You can use this option
|
||||||
|
to override this searching behavior by providing a full, absolute path to a
|
||||||
|
global `.ycm_extra_conf.py` file (although you can call the global file whatever
|
||||||
|
you want).
|
||||||
|
|
||||||
|
You can place such a global file anywhere in your filesystem.
|
||||||
|
|
||||||
|
Default: ``
|
||||||
|
|
||||||
|
let g:ycm_global_ycm_extra_conf = ''
|
||||||
|
|
||||||
|
|
||||||
FAQ
|
FAQ
|
||||||
---
|
---
|
||||||
|
@ -85,6 +85,9 @@ let g:ycm_key_previous_completion =
|
|||||||
let g:ycm_key_invoke_completion =
|
let g:ycm_key_invoke_completion =
|
||||||
\ get( g:, 'ycm_key_invoke_completion', '<C-Space>' )
|
\ get( g:, 'ycm_key_invoke_completion', '<C-Space>' )
|
||||||
|
|
||||||
|
let g:ycm_global_ycm_extra_conf =
|
||||||
|
\ get( g:, 'ycm_global_ycm_extra_conf', '' )
|
||||||
|
|
||||||
" This is basic vim plugin boilerplate
|
" This is basic vim plugin boilerplate
|
||||||
let s:save_cpo = &cpo
|
let s:save_cpo = &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
@ -29,6 +29,8 @@ YCM_EXTRA_CONF_FILENAME = '.ycm_extra_conf.py'
|
|||||||
NO_OPTIONS_FILENAME_MESSAGE = ('No {0} file detected, so no compile flags '
|
NO_OPTIONS_FILENAME_MESSAGE = ('No {0} file detected, so no compile flags '
|
||||||
'are available. Thus no semantic support for C/C++/ObjC/ObjC++.').format(
|
'are available. Thus no semantic support for C/C++/ObjC/ObjC++.').format(
|
||||||
YCM_EXTRA_CONF_FILENAME )
|
YCM_EXTRA_CONF_FILENAME )
|
||||||
|
GLOBAL_YCM_EXTRA_CONF_FILE = vimsupport.GetVariableValue(
|
||||||
|
"g:ycm_global_ycm_extra_conf" )
|
||||||
|
|
||||||
class Flags( object ):
|
class Flags( object ):
|
||||||
def __init__( self ):
|
def __init__( self ):
|
||||||
@ -88,7 +90,12 @@ class Flags( object ):
|
|||||||
def _FlagsModuleSourceFileForFile( filename ):
|
def _FlagsModuleSourceFileForFile( filename ):
|
||||||
"""For a given filename, finds its nearest YCM_EXTRA_CONF_FILENAME file that
|
"""For a given filename, finds its nearest YCM_EXTRA_CONF_FILENAME file that
|
||||||
will compute the flags necessary to compile the file. Returns None if no
|
will compute the flags necessary to compile the file. Returns None if no
|
||||||
YCM_EXTRA_CONF_FILENAME file could be found."""
|
YCM_EXTRA_CONF_FILENAME file could be found. Uses the global ycm_extra_conf
|
||||||
|
file if one is set."""
|
||||||
|
|
||||||
|
if ( GLOBAL_YCM_EXTRA_CONF_FILE and
|
||||||
|
os.path.exists( GLOBAL_YCM_EXTRA_CONF_FILE ) ):
|
||||||
|
return GLOBAL_YCM_EXTRA_CONF_FILE
|
||||||
|
|
||||||
parent_folder = os.path.dirname( filename )
|
parent_folder = os.path.dirname( filename )
|
||||||
old_parent_folder = ''
|
old_parent_folder = ''
|
||||||
|
Loading…
Reference in New Issue
Block a user