mirror of
https://github.com/MaskRay/ccls.git
synced 2024-11-22 07:35:08 +00:00
pick
parent
a89e0ce17a
commit
c3a872290c
@ -81,6 +81,19 @@ For VSCodeVim users, here's how to set arguments in User Settings (`settings.jso
|
|||||||
```
|
```
|
||||||
So you could hit `<space>-t` to see callees up to 3rd level if you set `<leader>` to `<space>`
|
So you could hit `<space>-t` to see callees up to 3rd level if you set `<leader>` to `<space>`
|
||||||
|
|
||||||
|
### Using vscode-ccls along side vscode-cpptools extension for debugger support
|
||||||
|
|
||||||
|
The `vscode-ccls` extension doesn't provide any debugger integration. One popular option is to use the [vscode-cpptools](https://github.com/Microsoft/vscode-cpptools) extension for this aspect. By default however, `vscode-cpptools` provides editor features that overlap with CQuery, which yields duplicate results in things like autocomplete. The following settings may be applied to disable the editor support of `vscode-cpptools` to prevent this from happening, while still retaining the debugger features.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"C_Cpp.autocomplete": "Disabled",
|
||||||
|
"C_Cpp.formatting": "Disabled",
|
||||||
|
"C_Cpp.errorSquiggles": "Disabled",
|
||||||
|
"C_Cpp.intelliSenseEngine": "Disabled",
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
### Semantic Navigation
|
### Semantic Navigation
|
||||||
|
|
||||||
The command is `ccls.navigate`, which need an argument `direction`. ("D" => first child declaration "L" => previous declaration "R" => next declaration "U" => parent declaration)
|
The command is `ccls.navigate`, which need an argument `direction`. ("D" => first child declaration "L" => previous declaration "R" => next declaration "U" => parent declaration)
|
||||||
@ -92,4 +105,4 @@ The command is `ccls.navigate`, which need an argument `direction`. ("D" => firs
|
|||||||
{"before":["<leader>","h"],"commands":[{"command":"ccls.navigate","args":{"direction":"U"}}]},
|
{"before":["<leader>","h"],"commands":[{"command":"ccls.navigate","args":{"direction":"U"}}]},
|
||||||
{"before":["<leader>","l"],"commands":[{"command":"ccls.navigate","args":{"direction":"D"}}]}
|
{"before":["<leader>","l"],"commands":[{"command":"ccls.navigate","args":{"direction":"D"}}]}
|
||||||
]
|
]
|
||||||
```
|
```
|
||||||
|
@ -53,6 +53,13 @@ def configure(conf):
|
|||||||
ln -s build/compile_commands.json
|
ln -s build/compile_commands.json
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## [buck](https://buckbuild.com/)
|
||||||
|
|
||||||
|
```sh
|
||||||
|
buck build :helloworld#compilation-database
|
||||||
|
ln -s $(buck targets --show-output :helloworld#compilation-database | cut -d ' ' -f 2)
|
||||||
|
```
|
||||||
|
|
||||||
### stdout of an external command
|
### stdout of an external command
|
||||||
|
|
||||||
You may use the initialization option `"compilationDatabaseCommand"` to provide the JSON compilation database. ccls will read its stdout rather than read `compile_commands.json`. This may be useful when ccls cannot parse the `compile_commands.json` correctly (e.g. MSVC cl.exe, Intel C++ Compiler options)
|
You may use the initialization option `"compilationDatabaseCommand"` to provide the JSON compilation database. ccls will read its stdout rather than read `compile_commands.json`. This may be useful when ccls cannot parse the `compile_commands.json` correctly (e.g. MSVC cl.exe, Intel C++ Compiler options)
|
||||||
|
Loading…
Reference in New Issue
Block a user