microsoft / microsoft/vscode-cpptools
includePath support for non-local paths `ssh://` in particular
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- TypeScript
- Estrellas
- 6.2k
- Forks
- 1.7k
- Merge medio
- 14 h 46 min
- PR fusionados (30 d)
- 61
Descripción
Type: LanguageService
----- Input information below -----
Please review existing issues and our documentation at https://github.com/Microsoft/vscode-cpptools/tree/master/Documentation prior to filing an issue.
Describe the bug
- OS and Version: Windows 7 Enterprise
- VS Code Version: 1.25.1
- C/C++ Extension Version: 0.17.6
- Other extensions you installed (and if the issue persists after disabling them): SSH FS 1.9.2
IntelliSense fails to parse files provided by extensions that implement FileSystemProvider. In my case: SSH-FS https://github.com/SchoofsKelvin/vscode-sshfs/issues/27
To Reproduce
- install vscode-cpptools
- install vscode-sshfs
- configure a remote directory in user settings
- configure c_cpp_properties.js includePath to use the ssh FileSystemProvider
Expected behavior
IntelliSense should work as it does for local files
User Settings:
"sshfs.configs": [
{
"name": "home",
"label": "jwieber",
"root": "/home/jwieber",
"host": "my.host.domain",
"port": 1234,
"username": "jwieber",
"agent": "C:\\cygwin64\\bin\\ssh-agent.exe",
"privateKeyPath": "C:\\Users\\jwieber\\.ssh\\id_rsa.ppk"
},
{
"name": "repo",
"root": "/path/to/my/repo",
"host": "my.host.domain",
"port": 1234,
"username": "jwieber",
"agent": "C:\\cygwin64\\bin\\ssh-agent.exe",
"privateKeyPath": "C:\\Users\\jwieber\\.ssh\\id_rsa.ppk"
}
]
code-workspace
{
"folders": [
{
"path": "./fdmdbsvc"
},
{
"uri": "ssh://home/",
"name": "SSH FS - home"
},
{
"uri": "ssh://repo/",
"name": "SSH FS - repo"
}
],
"settings": {
"files.associations": {
"*.ipp": "cpp"
}
}
}
c_cpp_properties.json
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}",
"ssh://repo/"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"compilerPath": "C:\\cygwin64\\bin\\gcc.exe",
"intelliSenseMode": "clang-x64"
"cStandard": "c11",
"cppStandard": "c++17"
}
],
"version": 4
}
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Reproduce el fallo con el SSH FS workspace en code-workspace y la entrada ssh://repo/ en c_cpp_properties.json. Empieza rastreando cómo se consume includePath para IntelliSense y cómo se gestionan las rutas respaldadas por FileSystemProvider; el trabajo estará terminado cuando IntelliSense analice los archivos de la ruta remota igual que los archivos locales.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cpp, typescript
- Área
- developer-experience, tooling
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 32/100