Fangrui Song
301b5c32ce
serializer: make visitor/vis value/v consistent
2018-12-20 00:28:12 -08:00
Fangrui Song
05b30265e5
Refactor ReplyOnce; error if InitializeParams.rootUri is null
2018-12-20 00:28:12 -08:00
Fangrui Song
da31c7d608
hierarchicalDocumentSymbol: support SymbolKind::Function declaration and uniquify by range
...
Also ensure selectionRange is a subrange of range, otherwise VSCode won't show the item.
Use detailed_name for 'detail'
2018-12-20 00:27:34 -08:00
Fangrui Song
1ab10322ec
hierarchicalDocumentSymbol: display member function declarations
2018-12-11 15:04:00 -08:00
Fangrui Song
f37ef4f48b
If clang >= 8, delete search path detection and use Sema::CodeCompleteIncludedFile
2018-12-11 15:04:00 -08:00
Fangrui Song
adcf713e23
Work around relative --sysroot=
2018-12-11 15:04:00 -08:00
Fangrui Song
8f9e1c4ae4
Reduce MAKE_REFLECT_STRUCT in lsp.hh
...
Position -> Pos; lsPosition -> Position
2018-12-11 15:04:00 -08:00
Fangrui Song
8a68dfbf8f
Remove ls
prefix from many LSP interfaces
...
Rename SymbolKind to Kind & lsSymbolKind to SymbolKind
Use textDocumentSync: TextDocumentSyncOptions
2018-12-11 15:04:00 -08:00
Fangrui Song
6787f0129b
Simplify and work around vscode _sortTextLow
2018-12-11 15:04:00 -08:00
Fangrui Song
c7c5abd40c
textDocument/references workspace/symbol: add folders
...
For textDocument/reference, base/excludeRole/role has been lifted from params.context.* to params.*
2018-12-11 15:04:00 -08:00
Fangrui Song
93371b9b3b
Simplify and better compatibility with encodings retaining the feature of low bytes being 1-byte characters
2018-12-11 15:04:00 -08:00
Fangrui Song
7817821959
*.h -> *.hh
2018-12-11 15:04:00 -08:00
Fangrui Song
77e1f354fd
Refactor message handler and namespace ccls
2018-12-11 15:03:56 -08:00
Fangrui Song
323d2ec8bf
Implement textDocument/documentLink
2018-10-24 20:14:53 -07:00
Fangrui Song
e2478c8083
Implement textDocument/foldingRange
2018-10-24 17:48:44 -07:00
Fangrui Song
9b8947f304
Deprioritize completion items with additionTextEdits
2018-10-24 17:48:44 -07:00
Fangrui Song
6fc35ab866
Fix textDocument/implementation
2018-10-24 17:48:42 -07:00
Fangrui Song
e101e4782d
Add command line option -index=root to index without starting language server
2018-10-22 22:34:49 -07:00
Fangrui Song
5814fbb4e5
Improve extent of definition/declaration; uniquify typeDefinition
2018-10-19 10:14:51 -07:00
Fangrui Song
5f98d5b993
Simplify
2018-10-16 01:14:43 -07:00
Fangrui Song
f8a6f75ff5
Add ExtentRef; merge symbol2refcnt and outline2refcnt
...
Fix hierarchical document symbol for namespaces when there are multiple declarations.
2018-10-16 01:14:43 -07:00
Fangrui Song
53632bd920
Add pipeline::{Notify,Reply,ReplyError} and simplify message handling
...
Delete method.{cc,h}
Rename $ccls/setSkippedRanges to $ccls/publishSkippedRanges
Rename $ccls/publishSemanticHighlighting to $ccls/publishSemanticHighlight; stableId -> id
2018-10-16 01:14:43 -07:00
Fangrui Song
705ed77a85
Misc changes to project
...
* Better LanguageId detection with clangDriver (e.g. .cu -> types::TY_CUDA)
* fallback when there is no .ccls or compile_commands.json
Also Hide clangTooling options from --help
2018-10-16 01:14:43 -07:00
Riatre Foo
ccfabb9c72
Fix hierarchical document symbol
...
1. Fixed a bug on building document symbol tree: As sym2ds was updated in
place, nested funcs/types may be moved into children of another
lsDocumentSymbol before itself got processed.
2. Namespaces only have declarations, in the old implementation it wasn't included in the result, making the result less hierarchical. This
commit fixes this by including the declarations of a symbol if no
definitions found.
2018-10-15 22:49:12 -07:00
Fangrui Song
e29056b2db
Namespace: improve indexer and don't trace bases in $ccls/member
2018-10-10 00:20:12 -07:00
Riatre Foo
c857be476f
Fix additionalTextEdits -> textEdit hack for VS Code ( #89 )
...
* Fix additionalTextEdits -> textEdit hack for VS Code
Visual Studio Code filters the completion result according to
textEdit.range and filterText, if the textEdit.range overlaps with
existing text, we have to include it in filterText, otherwise it would
be filtered out.
* Fix has_open_paren in FilterCandidates
2018-10-09 15:39:03 -07:00
Fangrui Song
31921a90b0
Support workspace folders
2018-10-08 12:46:30 -07:00
Fangrui Song
ed180692c9
Improve completion
...
blacklist some undesired candidates
additionalTextEdits if clang>=7
Use CodePatterns for preprocessor directive completion if there is a #
Prefer textEdit over insertText
2018-10-08 12:45:55 -07:00
Fangrui Song
8c2170172d
Use DeclRef spell to represent Use spell + Use extent
2018-10-04 17:16:39 -07:00
Fangrui Song
6ec032c2a0
Redesign SymbolRef, Ref, Use
...
Remove lsLocationEx
2018-10-04 17:16:34 -07:00
Fangrui Song
38feb8d277
Add completion.maxNum: 100
2018-10-04 00:13:50 -07:00
Fangrui Song
29f05d96fb
Use pthread if defined(__unix__) || defined(__APPLE__)
2018-10-02 17:51:36 -07:00
Fangrui Song
da07cb2da4
Add $ccls/info
2018-10-01 16:56:53 -07:00
Fangrui Song
84984c6c27
Use non-inferred entries and build preamble for .h; index on didOpen if no pending requests; documentHighlight
2018-10-01 16:56:50 -07:00
Fangrui Song
da704521b5
Revamp codeLens & codeAction
...
b.ref: references of bases
d.ref: references of derived
when b.ref > 0, don't display 0 ref or x bases
2018-09-30 11:44:24 -07:00
Fangrui Song
a127ca9b02
Support textDocument/{formatting,onTypeFormatting,rangeFormatting}
2018-09-28 10:18:04 -07:00
Fangrui Song
05109b6fa4
Merge textDocument_did{Change,Close,Open,Save}.cc
2018-09-27 22:16:42 -07:00
Fangrui Song
41fcc0272c
Simplify semantic highlighting; improve hover of auto &&
2018-09-25 11:57:42 -07:00
Fangrui Song
8f40c0c244
Remove clang_utils.*
2018-09-23 20:34:40 -07:00
Fangrui Song
854225bd30
Misc
...
Move using below #include to make preamble happy
textDocument/references: if no references, first line or last line => list where this file is included
malloc_trim() only if files have been indexed in last cycle
Intern: use CachedHashStringRef
2018-09-23 20:34:38 -07:00
Riatre Foo
32f7d148ca
Allow force disabling snippet via client.snippetSupport
2018-09-23 11:32:57 -07:00
Fangrui Song
71e9835b8c
documentSymbol: ignore TypeParameter
...
Reported by Riatre
2018-09-23 10:44:08 -07:00
Riatre Foo
e320ce42ab
Include macros in completion result
2018-09-23 10:40:41 -07:00
Fangrui Song
22daed7001
Add kind to $ccls/member and iterate all QueryType::def
...
kind:2 => member functions
kind:3 => nested classes / namespace members
2018-09-23 10:40:41 -07:00
Fangrui Song
28d33324b1
Publish diagnostics of inferred files and change diagnostics.{onChange,onOpen,onSave} from bool to debounce time
2018-09-23 10:40:39 -07:00
Riatre Foo
1a519163da
Remove chunks with CK_Information kind from insertText. ( #78 )
...
Without this ccls inserts "size() const" in the following scenario:
std::string text;
text.si| <-- Trigger completion here and pick "size"
2018-09-22 08:57:36 -07:00
Fangrui Song
4d76108d6b
Delete file_consumer.*
2018-09-20 19:48:20 -07:00
Fangrui Song
41756297ef
Simplify semantic highlighting
2018-09-20 17:49:39 -07:00
Fangrui Song
08645d64c1
intern args
2018-09-20 01:08:33 -07:00
Fangrui Song
763106c3d4
Simplify pipeline and fix race
2018-09-20 01:08:31 -07:00