summaryrefslogtreecommitdiff
path: root/content/posts
diff options
context:
space:
mode:
authorChristoph Cullmann <cullmann@kde.org>2019-07-22 22:15:50 +0200
committerChristoph Cullmann <cullmann@kde.org>2019-07-22 22:15:50 +0200
commit01ab0c13acb95e2406c0c8e26b4530cd39c6cff6 (patch)
tree1e4b161bfaed6a5374b045474a89cebc754d1afb /content/posts
parent160aaba653e0b704b86c4f8e1a60301be3b41f69 (diff)
LSP screen-cast
Diffstat (limited to 'content/posts')
-rw-r--r--content/posts/kate-lsp-status-july-22/images/kate-lsp-video.jpgbin0 -> 336680 bytes
-rw-r--r--content/posts/kate-lsp-status-july-22/index.md35
2 files changed, 35 insertions, 0 deletions
diff --git a/content/posts/kate-lsp-status-july-22/images/kate-lsp-video.jpg b/content/posts/kate-lsp-status-july-22/images/kate-lsp-video.jpg
new file mode 100644
index 0000000..016d73e
--- /dev/null
+++ b/content/posts/kate-lsp-status-july-22/images/kate-lsp-video.jpg
Binary files differ
diff --git a/content/posts/kate-lsp-status-july-22/index.md b/content/posts/kate-lsp-status-july-22/index.md
new file mode 100644
index 0000000..2d34100
--- /dev/null
+++ b/content/posts/kate-lsp-status-july-22/index.md
@@ -0,0 +1,35 @@
+---
+title: "Kate LSP Status - July 22"
+date: 2019-07-22T22:16:00+02:00
+draft: false
+categories: [kde, kate, development]
+tags: [kde, kate]
+---
+
+After my series of LSP client posts, I got the question: What does this actually do? And why should I like this or help with it?
+
+For the basic question: What the heck is the [Language Server Protocol (LSP)](https://microsoft.github.io/language-server-protocol/overview), I think my [first post](/posts/kate-language-server-protocol-client/) can help. Or, for more details, just head over to the [official what/why/... page](https://langserver.org/).
+
+But easier than to describe why it is nice, I can just show the stuff in action.
+Below is a video that shows the features that at the moment work with our master branch.
+It is shown using the build directory of Kate itself.
+
+To get a usable build directory, I build my stuff locally with [kdesrc-build](https://kdesrc-build.kde.org/), the only extra config I have in the global section of my **.kdesrc-buildrc** is:
+
+> cmake-options -DCMAKE_BUILD_TYPE=RelWithDebInfo -G "Kate - Unix Makefiles" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
+
+This will auto generate the needed **.kateproject** files for the Kate project plugin and the **compile_commands.json** for clangd (the LSP server for C/C++ the plugin uses).
+
+If you manually build your stuff with **cmake**, you can just add the
+
+> -G "Kate - Unix Makefiles" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
+
+parts to your **cmake** call. If you use **ninja** and not **make**, just use
+
+> -G "Kate - Ninja" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
+
+Then, let's see what you can do, once you are in a prepared build directory and have a **master** version of **Kate** in your **PATH**.
+
+<center><a href="https://youtu.be/w0grp9npnNA" target="_blank"><img width=500 src="images/kate-lsp-video.jpg"></a></center>
+
+I hope the quality is acceptable, that is my first try in a long time to do some screen-cast ;)