diff options
| author | Yong He <yonghe@outlook.com> | 2023-10-05 17:05:20 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-05 17:05:20 -0700 |
| commit | 4547125ce945140dc10542e9606b225dd06159b8 (patch) | |
| tree | 0c7df4b3d97143eb2dc78c68593269dac5cb5abf /source/slang/slang-language-server.cpp | |
| parent | 441e13e13f30b96eb04c05725ad7fe1983c92f53 (diff) | |
Add intellisense support for spirv_asm blocks. (#3264)
Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source/slang/slang-language-server.cpp')
| -rw-r--r-- | source/slang/slang-language-server.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/source/slang/slang-language-server.cpp b/source/slang/slang-language-server.cpp index ad88ab5ac..3a21fa278 100644 --- a/source/slang/slang-language-server.cpp +++ b/source/slang/slang-language-server.cpp @@ -1470,7 +1470,8 @@ SlangResult LanguageServer::formatting(const LanguageServerProtocol::DocumentFor if (m_formatOptions.clangFormatLocation.getLength() == 0) m_formatOptions.clangFormatLocation = findClangFormatTool(); m_formatOptions.fileName = canonicalPath; - auto edits = formatSource(doc->getText().getUnownedSlice(), -1, -1, -1, m_formatOptions); + List<TextRange> exclusionRange = extractFormattingExclusionRanges(doc->getText().getUnownedSlice()); + auto edits = formatSource(doc->getText().getUnownedSlice(), -1, -1, -1, exclusionRange, m_formatOptions); auto textEdits = translateTextEdits(doc, edits); m_connection->sendResult(&textEdits, responseId); return SLANG_OK; @@ -1493,7 +1494,8 @@ SlangResult LanguageServer::rangeFormatting(const LanguageServerProtocol::Docume auto options = m_formatOptions; if (!m_formatOptions.allowLineBreakInRangeFormatting) options.behavior = FormatBehavior::PreserveLineBreak; - auto edits = formatSource(doc->getText().getUnownedSlice(), args.range.start.line, args.range.end.line, endOffset, options); + List<TextRange> exclusionRange = extractFormattingExclusionRanges(doc->getText().getUnownedSlice()); + auto edits = formatSource(doc->getText().getUnownedSlice(), args.range.start.line, args.range.end.line, endOffset, exclusionRange, options); auto textEdits = translateTextEdits(doc, edits); m_connection->sendResult(&textEdits, responseId); return SLANG_OK; @@ -1521,7 +1523,8 @@ SlangResult LanguageServer::onTypeFormatting(const LanguageServerProtocol::Docum auto options = m_formatOptions; if (!m_formatOptions.allowLineBreakInOnTypeFormatting) options.behavior = FormatBehavior::PreserveLineBreak; - auto edits = formatSource(doc->getText().getUnownedSlice(), args.position.line, args.position.line, cursorOffset, options); + List<TextRange> exclusionRange = extractFormattingExclusionRanges(doc->getText().getUnownedSlice()); + auto edits = formatSource(doc->getText().getUnownedSlice(), args.position.line, args.position.line, cursorOffset, exclusionRange, options); auto textEdits = translateTextEdits(doc, edits); m_connection->sendResult(&textEdits, responseId); return SLANG_OK; |
