WEBVTT 00:00:00.000 --> 00:00:16.539 Introduction 00:00:16.540 --> 00:00:40.719 What is Semgrep? 00:00:40.720 --> 00:01:37.879 How do we show security bugs early? 00:01:37.880 --> 00:02:29.039 What is the Language Server Protocol? 00:02:29.040 --> 00:03:42.759 Case study: Rust Analyzer 00:03:42.760 --> 00:04:09.959 Rust Analyzer in action 00:04:09.960 --> 00:05:36.219 Why is this useful? 00:05:36.220 --> 00:06:40.699 So what about Emacs? 00:06:40.700 --> 00:07:58.759 Technical part - Brief communication overview 00:07:58.760 --> 00:08:03.379 Example request 00:08:03.380 --> 00:09:23.379 LSP capabilities 00:09:23.380 --> 00:11:03.479 Tips on writing a LS 00:11:03.480 --> 00:12:05.999 Supporting a LS through LSP mode in Emacs 00:12:06.000 --> 00:13:07.299 Create a client 00:13:07.300 --> 00:14:11.679 Add to list of client packages 00:14:11.680 --> 00:14:17.879 Add documentation! 00:14:17.880 --> 00:15:01.359 Adding commands and custom capabilities 00:15:01.360 --> 00:16:03.920 Thanks for listening