Add clangd recommendation for VS Code (#56071)

* Add clangd recommendation for VS Code

* Edit docs for clarity and add links

* Adds new words to dictionary. Sorts dictionary.

---------

Co-authored-by: johnnymatthews <9611008+johnnymatthews@users.noreply.github.com>
This commit is contained in:
Justin de Guzman 2023-10-31 08:35:47 -07:00 committed by GitHub
parent 13b2946ae2
commit a011990fd7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 18 deletions

View File

@ -219,13 +219,21 @@ You can also run your custom-built ClickHouse binary with the config file from t
## IDE (Integrated Development Environment) {#ide-integrated-development-environment}
If you do not know which IDE to use, we recommend that you use CLion. CLion is commercial software, but it offers 30 days free trial period. It is also free of charge for students. CLion can be used both on Linux and on macOS.
**CLion (recommended)**
KDevelop and QTCreator are other great alternatives of an IDE for developing ClickHouse. KDevelop comes in as a very handy IDE although unstable. If KDevelop crashes after a while upon opening project, you should click “Stop All” button as soon as it has opened the list of projects files. After doing so KDevelop should be fine to work with.
If you do not know which IDE to use, we recommend that you use [CLion](https://www.jetbrains.com/clion/). CLion is commercial software but it offers a 30 day free trial. It is also free of charge for students. CLion can be used on both Linux and macOS.
As simple code editors, you can use Sublime Text or Visual Studio Code, or Kate (all of which are available on Linux).
A few things to know when using CLion to develop ClickHouse:
Just in case, it is worth mentioning that CLion creates `build` path on its own, it also on its own selects `debug` for build type, for configuration it uses a version of CMake that is defined in CLion and not the one installed by you, and finally, CLion will use `make` to run build tasks instead of `ninja`. This is normal behaviour, just keep that in mind to avoid confusion.
- CLion creates a `build` path on its own and automatically selects `debug` for the build type
- It uses a version of CMake that is defined in CLion and not the one installed by you
- CLion will use `make` to run build tasks instead of `ninja` (this is normal behavior)
**Other alternatives**
[KDevelop](https://kdevelop.org/) and [QTCreator](https://www.qt.io/product/development-tools) are other great alternative IDEs for developing ClickHouse. While KDevelop is a great IDE, it is sometimes unstable. If KDevelop crashes when opening a project, you should click the “Stop All” button as soon as it has opened the list of projects files. After doing so, KDevelop should be fine to work with.
Other IDEs you can use are [Sublime Text](https://www.sublimetext.com/), [Visual Studio Code](https://code.visualstudio.com/), or [Kate](https://kate-editor.org/) (all of which are available on Linux). If you are using VS Code, we recommend using the [clangd extension](https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.vscode-clangd) to replace IntelliSense as it is much more performant.
## Writing Code {#writing-code}

View File

@ -148,6 +148,7 @@ ChannelID
Cidr
Ciphertext
CityHash
Clangd
ClickBench
ClickCat
ClickHouse
@ -194,6 +195,7 @@ DDLWorkerThreads
DDLWorkerThreadsActive
DECRYPT
DESC
DIEs
DOGEFI
DataGrip
DataLens
@ -337,6 +339,8 @@ Hudi
HyperLogLog
Hypot
IANA
IDE
IDEs
IMDS
INFILE
INSERTed
@ -359,6 +363,7 @@ Instana
IntN
Integrations
IntelliJ
IntelliSense
InterserverConnection
InterserverThreads
IsPentagon
@ -432,13 +437,13 @@ Klickhouse
Kolmogorov
Kubernetes
LDAP
Levenshtein
LGPL
LLDB
LLVM's
LOCALTIME
LOCALTIMESTAMP
LONGLONG
Levenshtein
LibFuzzer
LightHouse
LineAsString
@ -1181,15 +1186,11 @@ bugfix
buildId
buildable
builtins
byteHammingDistance
byteSize
byteSwap
bytebase
bytesToCutForIPv
editDistance
byteHammingDistance
jaccardIndex
levenshteinDistance
clickcache
cLoki
caConfig
cacheSessions
@ -1234,7 +1235,9 @@ cipherList
ciphertext
cityHash
cityhash
clangd
cli
clickcache
clickcat
clickhouse
clickhousedb
@ -1360,12 +1363,12 @@ defaultRoles
defaultValueOfArgumentType
defaultValueOfTypeName
delim
deltalake
deltaLake
deltasum
deltaSum
deltasumtimestamp
deltaSumTimestamp
deltalake
deltasum
deltasumtimestamp
demangle
denormalize
denormalized
@ -1410,6 +1413,7 @@ dropoff
dumpColumnStructure
durations
ecto
editDistance
embeddings
emptyArray
emptyArrayDate
@ -1639,7 +1643,6 @@ innogames
inodes
instantiation
instantiations
DIEs
intDiv
intDivOrZero
intExp
@ -1665,6 +1668,7 @@ isValidUTF
isZeroOrNull
iteratively
jaccard
jaccardIndex
javaHash
javaHashUTF
jbod
@ -1672,6 +1676,7 @@ jdbc
jemalloc
joinGet
json
jsonMergePatch
jsonasstring
jsoncolumns
jsoncolumnsmonoblock
@ -1686,7 +1691,6 @@ jsoncompactstringseachrowwithnames
jsoncompactstringseachrowwithnamesandtypes
jsoneachrow
jsoneachrowwithprogress
jsonMergePatch
jsonobjecteachrow
jsonstrings
jsonstringseachrow
@ -1726,6 +1730,7 @@ lemmatized
lengthUTF
lessOrEquals
levenshtein
levenshteinDistance
lexicographically
lgamma
libFuzzer
@ -1833,7 +1838,6 @@ monthName
moscow
msgpack
msgpk
multidirectory
multiFuzzyMatchAllIndices
multiFuzzyMatchAny
multiFuzzyMatchAnyIndex
@ -1847,6 +1851,7 @@ multiSearchAny
multiSearchFirstIndex
multiSearchFirstPosition
multibyte
multidirectory
multiline
multiplyDecimal
multipolygon
@ -2153,9 +2158,9 @@ repo
representable
requestor
requireTLSv
resolvers
resharding
reshards
resolvers
resultset
retentions
rethrow
@ -2240,12 +2245,12 @@ sparkbar
sparsehash
speedscope
splitBy
splitby
splitByChar
splitByNonAlpha
splitByRegexp
splitByString
splitByWhitespace
splitby
sql
sqlalchemy
sqlinsert