summaryrefslogtreecommitdiffstats
path: root/2023/info/world-after.md
blob: f40ddcf37717f949cd9e7aa195a376a5b1e4e3c5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
<!-- Automatically generated by emacsconf-publish-after-page -->


<a name="world-mainVideo-transcript"></a>
# Transcript


Draw and scribble in GNU Emacs

[[!template new="1" text="""Hello. In this video, we will look at""" start="00:00:00.780" video="mainVideo-world" id="subtitle"]]
[[!template text="""drawing and scribbling in Emacs using SVG.""" start="00:00:02.900" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's start with `canvas-mode`.""" start="00:00:07.167" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will define the width and the height.""" start="00:00:10.067" video="mainVideo-world" id="subtitle"]]
[[!template text="""The default is polyline,""" start="00:00:17.540" video="mainVideo-world" id="subtitle"]]
[[!template text="""which means you can scribble anything that you want.""" start="00:00:19.333" video="mainVideo-world" id="subtitle"]]
[[!template text="""Very handy for taking quick notes.""" start="00:00:23.733" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now we will look at""" start="00:00:30.300" video="mainVideo-world" id="subtitle"]]
[[!template text="""drawing a triangle using some lines.""" start="00:00:32.700" video="mainVideo-world" id="subtitle"]]
[[!template text="""Okay. Now let's draw a circle.""" start="00:00:46.333" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can use the mouse to adjust""" start="00:00:57.267" video="mainVideo-world" id="subtitle"]]
[[!template text="""the radius of the circle.""" start="00:00:58.900" video="mainVideo-world" id="subtitle"]]
[[!template text="""There is some problem with ellipse,""" start="00:01:02.860" video="mainVideo-world" id="subtitle"]]
[[!template text="""we will look at it at the end of the video.""" start="00:01:04.333" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now let's put up some text,""" start="00:01:07.940" video="mainVideo-world" id="subtitle"]]
[[!template text="""a typical &quot;Hello World&quot;.""" start="00:01:11.767" video="mainVideo-world" id="subtitle"]]
[[!template text="""Size, let's do a 20 font size,""" start="00:01:15.067" video="mainVideo-world" id="subtitle"]]
[[!template text="""and we will use the default font family.""" start="00:01:19.880" video="mainVideo-world" id="subtitle"]]
[[!template text="""Next, we will look at undoing what we have drawn.""" start="00:01:32.360" video="mainVideo-world" id="subtitle"]]
[[!template text="""Just press u for deleting the last drawn object.""" start="00:01:37.433" video="mainVideo-world" id="subtitle"]]
[[!template text="""And you can continue pressing""" start="00:01:43.067" video="mainVideo-world" id="subtitle"]]
[[!template text="""u for consecutive deletions.""" start="00:01:45.800" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can also make a selection of the objects""" start="00:01:51.960" video="mainVideo-world" id="subtitle"]]
[[!template text="""on the screen using your mouse and then press u.""" start="00:01:54.533" video="mainVideo-world" id="subtitle"]]
[[!template text="""This will delete all the objects in one go.""" start="00:01:57.700" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now we are looking at stroke color.""" start="00:02:02.600" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will use a brown stroke color""" start="00:02:06.660" video="mainVideo-world" id="subtitle"]]
[[!template text="""for drawing our objects.""" start="00:02:08.633" video="mainVideo-world" id="subtitle"]]
[[!template text="""Next, let's look at stroke width.""" start="00:02:12.880" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will use a width of 5.""" start="00:02:20.420" video="mainVideo-world" id="subtitle"]]
[[!template text="""Next, let's fill up the objects with a fill color.""" start="00:02:27.980" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now we will look at zoom.""" start="00:02:41.620" video="mainVideo-world" id="subtitle"]]
[[!template text="""Use the mouse to select a region and zoom.""" start="00:02:47.160" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can also use +, - for zooming in and out.""" start="00:02:50.120" video="mainVideo-world" id="subtitle"]]
[[!template text="""Press 0 for resetting the zoom.""" start="00:02:54.360" video="mainVideo-world" id="subtitle"]]
[[!template text="""Next, let's save the file,""" start="00:03:07.133" video="mainVideo-world" id="subtitle"]]
[[!template text="""and q or Enter for exiting the canvas-mode.""" start="00:03:14.540" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now we will open the file in Emacs itself.""" start="00:03:19.667" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can see the file,""" start="00:03:25.220" video="mainVideo-world" id="subtitle"]]
[[!template text="""you can do Control-c Control-c (`C-c C-c`).""" start="00:03:26.180" video="mainVideo-world" id="subtitle"]]
[[!template text="""Finally, we look at ellipse.""" start="00:03:32.000" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks!""" start="00:03:44.420" video="mainVideo-world" id="subtitle"]]

SVG Symbols library

[[!template new="1" text="""Hello. In this video, we will draw""" start="00:03:46.400" video="mainVideo-world" id="subtitle"]]
[[!template text="""schematics using symbols from SVG library in Emacs.""" start="00:03:48.333" video="mainVideo-world" id="subtitle"]]
[[!template text="""Press capital L to activate the symbol library""" start="00:03:52.067" video="mainVideo-world" id="subtitle"]]
[[!template text="""that you can see on the right hand side,""" start="00:03:55.000" video="mainVideo-world" id="subtitle"]]
[[!template text="""and place the symbol on the canvas.""" start="00:03:57.867" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's add another register to this diagram.""" start="00:04:01.960" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can press capital R to rotate the symbol.""" start="00:04:06.640" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's place it on the canvas.""" start="00:04:11.820" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now we will add a voltage source to the circuit.""" start="00:04:17.240" video="mainVideo-world" id="subtitle"]]
[[!template text="""To connect the symbols,""" start="00:04:31.667" video="mainVideo-world" id="subtitle"]]
[[!template text="""we will have to use some connecting wires.""" start="00:04:33.180" video="mainVideo-world" id="subtitle"]]
[[!template text="""For that, press capital W""" start="00:04:36.967" video="mainVideo-world" id="subtitle"]]
[[!template text="""to activate the connection mode.""" start="00:04:39.467" video="mainVideo-world" id="subtitle"]]
[[!template text="""Click anywhere on the canvas""" start="00:04:46.920" video="mainVideo-world" id="subtitle"]]
[[!template text="""to draw intermediate points, and press Esc""" start="00:04:48.567" video="mainVideo-world" id="subtitle"]]
[[!template text="""to exit that particular connection.""" start="00:04:53.133" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's connect other symbols too.""" start="00:05:00.033" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks.""" start="00:05:16.633" video="mainVideo-world" id="subtitle"]]

GNU Emacs: A multimedia editor

[[!template new="1" text="""Hello. In this video, we will look at""" start="00:05:20.140" video="mainVideo-world" id="subtitle"]]
[[!template text="""some basic multimedia editing using Emacs.""" start="00:05:22.167" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's start a media-edit session.""" start="00:05:24.933" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's open a video file.""" start="00:05:27.460" video="mainVideo-world" id="subtitle"]]
[[!template text="""The left-hand side is your viewer area,""" start="00:05:32.000" video="mainVideo-world" id="subtitle"]]
[[!template text="""and the right-hand side is your track area.""" start="00:05:34.100" video="mainVideo-world" id="subtitle"]]
[[!template text="""In the track area, you can use normal Emacs""" start="00:05:36.700" video="mainVideo-world" id="subtitle"]]
[[!template text="""text editing movements.""" start="00:05:39.667" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now press `C-c r` to refresh the viewer mode""" start="00:05:42.040" video="mainVideo-world" id="subtitle"]]
[[!template text="""with the exact time frame.""" start="00:05:48.167" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now press SPC to play or pause the video.""" start="00:05:52.767" video="mainVideo-world" id="subtitle"]]
[[!template text="""This looks like an interesting point in the video,""" start="00:05:59.433" video="mainVideo-world" id="subtitle"]]
[[!template text="""let's track it and split it. Press Enter to do that.""" start="00:06:03.233" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will extract some 10 seconds of this video.""" start="00:06:11.433" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's use this.""" start="00:06:20.733" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now go here and delete all these lines.""" start="00:06:23.233" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's review our edited clip.""" start="00:06:26.300" video="mainVideo-world" id="subtitle"]]
[[!template text="""Looks good! Now press e to export the video.""" start="00:06:44.133" video="mainVideo-world" id="subtitle"]]
[[!template text="""Provide an output file name.""" start="00:06:51.833" video="mainVideo-world" id="subtitle"]]
[[!template text="""This will use FFmpeg to convert, and you can""" start="00:06:57.560" video="mainVideo-world" id="subtitle"]]
[[!template text="""output to any file format supported by FFmpeg.""" start="00:07:04.433" video="mainVideo-world" id="subtitle"]]
[[!template text="""Okay. Let's open up shell and view this""" start="00:07:16.967" video="mainVideo-world" id="subtitle"]]
[[!template text="""video file in an external video player.""" start="00:07:21.900" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks.""" start="00:07:57.160" video="mainVideo-world" id="subtitle"]]

Fill PDF form using GNU Emacs

[[!template new="1" text="""Hello. In this video, we will look at""" start="00:08:03.367" video="mainVideo-world" id="subtitle"]]
[[!template text="""editing a PDF form using GNU Emacs.""" start="00:08:05.567" video="mainVideo-world" id="subtitle"]]
[[!template text="""To start, we have to enable the annotation.""" start="00:08:09.760" video="mainVideo-world" id="subtitle"]]
[[!template text="""Then we can use Tab to move forward and Shift+Tab""" start="00:08:13.840" video="mainVideo-world" id="subtitle"]]
[[!template text="""to move backwards through the fields.""" start="00:08:18.533" video="mainVideo-world" id="subtitle"]]
[[!template text="""To edit a field, we press e.""" start="00:08:22.480" video="mainVideo-world" id="subtitle"]]
[[!template text="""So let's edit a text box. We'll call it 'city'.""" start="00:08:25.967" video="mainVideo-world" id="subtitle"]]
[[!template text="""Next, we will edit a drop-down.""" start="00:08:33.580" video="mainVideo-world" id="subtitle"]]
[[!template text="""Again, press e, and you get a select.""" start="00:08:35.840" video="mainVideo-world" id="subtitle"]]
[[!template text="""Use the Minibuffer to select one of the values.""" start="00:08:38.680" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's select 'France'.""" start="00:08:45.833" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now let's edit a radio box.""" start="00:08:48.500" video="mainVideo-world" id="subtitle"]]
[[!template text="""A checkbox or a radio box can be toggled using t.""" start="00:08:52.180" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can disable…""" start="00:08:55.900" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now let's save the file, `doc-view-save-form`.""" start="00:08:58.660" video="mainVideo-world" id="subtitle"]]
[[!template text="""It will ask for a file name.""" start="00:09:05.140" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's call it `filled1.pdf`. If the file exists,""" start="00:09:08.360" video="mainVideo-world" id="subtitle"]]
[[!template text="""it will ask you if you want to overwrite.""" start="00:09:13.400" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now let's verify this new file.""" start="00:09:17.260" video="mainVideo-world" id="subtitle"]]
[[!template text="""In Firefox, we'll copy this file name, call it filled1.""" start="00:09:21.460" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's verify the values.""" start="00:09:27.160" video="mainVideo-world" id="subtitle"]]
[[!template text="""You have city, France and Driving License selected.""" start="00:09:29.100" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks.""" start="00:09:32.620" video="mainVideo-world" id="subtitle"]]

Desktop and window management in GNU Emacs

[[!template new="1" text="""Hello. In this video, we will look at""" start="00:09:34.900" video="mainVideo-world" id="subtitle"]]
[[!template text="""desktop and window management in GNU Emacs.""" start="00:09:37.660" video="mainVideo-world" id="subtitle"]]
[[!template text="""We'll start with `task-view`.""" start="00:09:40.460" video="mainVideo-world" id="subtitle"]]
[[!template text="""Top row shows all the desktops,""" start="00:09:47.740" video="mainVideo-world" id="subtitle"]]
[[!template text="""and rest of the images are the active windows""" start="00:09:50.467" video="mainVideo-world" id="subtitle"]]
[[!template text="""in that particular desktop.""" start="00:09:54.400" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can tap to select""" start="00:09:59.300" video="mainVideo-world" id="subtitle"]]
[[!template text="""and double tap to activate a particular window.""" start="00:10:09.160" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can use m to move selected windows""" start="00:10:13.320" video="mainVideo-world" id="subtitle"]]
[[!template text="""to any of the desktops at the top.""" start="00:10:16.767" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's check the third desktop.""" start="00:10:25.100" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's bring it back to the second desktop.""" start="00:10:29.320" video="mainVideo-world" id="subtitle"]]
[[!template text="""The best part,""" start="00:10:49.980" video="mainVideo-world" id="subtitle"]]
[[!template text="""you can select multiple windows""" start="00:10:51.300" video="mainVideo-world" id="subtitle"]]
[[!template text="""and form a group by pressing g.""" start="00:10:54.800" video="mainVideo-world" id="subtitle"]]
[[!template text="""Then you can select any of the windows""" start="00:10:59.980" video="mainVideo-world" id="subtitle"]]
[[!template text="""in this group to activate the complete group.""" start="00:11:04.867" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks.""" start="00:11:07.640" video="mainVideo-world" id="subtitle"]]

Screen mirroring in GNU Emacs

[[!template new="1" text="""Hello. In this video, we will look at""" start="00:11:10.440" video="mainVideo-world" id="subtitle"]]
[[!template text="""screen mirroring using GNU Emacs.""" start="00:11:12.433" video="mainVideo-world" id="subtitle"]]
[[!template text="""Run `wfd`. Select an interface.""" start="00:11:14.280" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now it will scan for all the available devices""" start="00:11:18.780" video="mainVideo-world" id="subtitle"]]
[[!template text="""for screen mirroring.""" start="00:11:20.967" video="mainVideo-world" id="subtitle"]]
[[!template text="""I'll select my TV, which is an LG WebOS TV.""" start="00:11:24.800" video="mainVideo-world" id="subtitle"]]
[[!template text="""If you don't decline, it will start streaming.""" start="00:11:30.400" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's change some buffer to check the visuals.""" start="00:11:38.720" video="mainVideo-world" id="subtitle"]]
[[!template text="""To terminate the session, just click on quit.""" start="00:11:45.140" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks.""" start="00:11:50.220" video="mainVideo-world" id="subtitle"]]

Swipe for Text Input in GNU Emacs

[[!template new="1" text="""[Using Sweep to swipe and type &quot;as you like it.&quot;]""" start="00:11:53.033" video="mainVideo-world" id="subtitle"]]

Formula Editor in GNU Emacs

[[!template new="1" text="""[Formula Editor]""" start="00:12:25.533" video="mainVideo-world" id="subtitle"]]
[[!template text="""[Typing fractions in the formula]""" start="00:12:39.900" video="mainVideo-world" id="subtitle"]]
[[!template text="""[Adding brackets and an exponent]""" start="00:12:45.033" video="mainVideo-world" id="subtitle"]]

Transliteration in Emacs

[[!template new="1" text="""[Hindi (Devanagari script) Phonetic typing]""" start="00:12:59.433" video="mainVideo-world" id="subtitle"]]
[[!template text="""[Phonetic typing Gujarati, Bangla, Kannada, and Tamil]""" start="00:13:05.200" video="mainVideo-world" id="subtitle"]]

Social Media client - Tumblr, Reddit

[[!template new="1" text="""[Browsing Reddit in Emacs]""" start="00:13:09.433" video="mainVideo-world" id="subtitle"]]
[[!template text="""[Browsing Tumblr in Emacs]""" start="00:13:19.533" video="mainVideo-world" id="subtitle"]]
[[!template text="""[Browsing X (Twitter) in Emacs]""" start="00:13:29.533" video="mainVideo-world" id="subtitle"]]

Comics Builder

[[!template new="1" text="""[Generating comic from a text script]""" start="00:13:40.000" video="mainVideo-world" id="subtitle"]]

Matching game

[[!template new="1" text="""[Matching color names with color boxes]""" start="00:13:49.567" video="mainVideo-world" id="subtitle"]]

Interactive XPath Builder in GNU Emacs

[[!template new="1" text="""[Running `xpath-builder` on an XML file]""" start="00:13:59.567" video="mainVideo-world" id="subtitle"]]
[[!template text="""[Filtering `title`, `para`, and `author` from the XML]""" start="00:14:01.833" video="mainVideo-world" id="subtitle"]]

Interactive JSON Builder in GNU Emacs

[[!template new="1" text="""[Filtering `father`, `father.name`, `children`""" start="00:14:10.767" video="mainVideo-world" id="subtitle"]]
[[!template text="""`children[1]` from a JSON using JSON Builder]""" start="00:14:29.200" video="mainVideo-world" id="subtitle"]]

GNU Emacs as a lightweight IDE (CEDET Semantic): Java - Generate getter/setter

[[!template new="1" text="""Hello. In this video, we will look at""" start="00:14:35.233" video="mainVideo-world" id="subtitle"]]
[[!template text="""generating getters and setters in Java using Emacs.""" start="00:14:37.633" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will run `srecode-getset-dialog`.""" start="00:14:41.660" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will get an option to select particular fields,""" start="00:14:46.233" video="mainVideo-world" id="subtitle"]]
[[!template text="""you can expand and collapse.""" start="00:14:48.767" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can select all or deselect all,""" start="00:14:51.833" video="mainVideo-world" id="subtitle"]]
[[!template text="""or you can choose any particular getter.""" start="00:14:54.100" video="mainVideo-world" id="subtitle"]]
[[!template text="""So let's do protected version of this. Here you go.""" start="00:14:56.386" video="mainVideo-world" id="subtitle"]]
[[!template text="""If you want to generate for other fields,""" start="00:15:02.633" video="mainVideo-world" id="subtitle"]]
[[!template text="""you can re-run it.""" start="00:15:06.067" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can check the one that you have already""" start="00:15:08.300" video="mainVideo-world" id="subtitle"]]
[[!template text="""generated is not there.""" start="00:15:11.267" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now select all, and you can see rest of the""" start="00:15:13.100" video="mainVideo-world" id="subtitle"]]
[[!template text="""getters and setters have been generated.""" start="00:15:22.300" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks.""" start="00:15:23.933" video="mainVideo-world" id="subtitle"]]

Generate C header

[[!template new="1" text="""[Generating C headers using `srecode-gen-header`]""" start="00:15:26.133" video="mainVideo-world" id="subtitle"]]

C Rename symbols

[[!template new="1" text="""Hello. In this video, we will look at""" start="00:16:11.640" video="mainVideo-world" id="subtitle"]]
[[!template text="""renaming method across multiple files in a project.""" start="00:16:13.833" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's start with `semantic-symref-symbol`.""" start="00:16:17.633" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now we have the references.""" start="00:16:24.640" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's use the menu to open all these occurrences.""" start="00:16:26.800" video="mainVideo-world" id="subtitle"]]
[[!template text="""To rename it, we have to use""" start="00:16:35.400" video="mainVideo-world" id="subtitle"]]
[[!template text="""&quot;Rename Symbol in Open hits.&quot;""" start="00:16:38.433" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's rename it to underscore 1 (`_1`).""" start="00:16:41.920" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will verify it by compiling the project.""" start="00:16:46.440" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's open the `*Messages*` buffer to see the results""" start="00:16:57.720" video="mainVideo-world" id="subtitle"]]
[[!template text="""more clearly. No errors.""" start="00:17:00.300" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks.""" start="00:17:04.167" video="mainVideo-world" id="subtitle"]]

SQL (offline)

[[!template new="1" text="""Hello. In this video, we will look at""" start="00:17:07.640" video="mainVideo-world" id="subtitle"]]
[[!template text="""SQL editing with Semantic.""" start="00:17:09.733" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will define a schema in this SQL document.""" start="00:17:12.440" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's create a table.""" start="00:17:16.620" video="mainVideo-world" id="subtitle"]]
[[!template text="""We get already existing tables""" start="00:17:27.000" video="mainVideo-world" id="subtitle"]]
[[!template text="""in the current document.""" start="00:17:30.267" video="mainVideo-world" id="subtitle"]]
[[!template text="""It also supports auto-completion of some keywords.""" start="00:17:38.533" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now we can do some queries on the tables.""" start="00:17:57.033" video="mainVideo-world" id="subtitle"]]
[[!template text="""We have `SELECT` as the keyword or the SQL,""" start="00:18:00.900" video="mainVideo-world" id="subtitle"]]
[[!template text="""so we will select the SQL.""" start="00:18:03.333" video="mainVideo-world" id="subtitle"]]
[[!template text="""Here we have all the tables existing in this schema.""" start="00:18:06.833" video="mainVideo-world" id="subtitle"]]
[[!template text="""We can also use an alias for completions.""" start="00:18:13.560" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now let's look at a more complex example.""" start="00:18:25.633" video="mainVideo-world" id="subtitle"]]
[[!template text="""We will try to do a join on two tables.""" start="00:18:31.267" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's add a `WHERE` clause.""" start="00:18:43.367" video="mainVideo-world" id="subtitle"]]
[[!template text="""Next, let's do insert.""" start="00:19:06.600" video="mainVideo-world" id="subtitle"]]
[[!template text="""You can just click on Tab to go to the next field.""" start="00:19:23.333" video="mainVideo-world" id="subtitle"]]
[[!template text="""Let's fill in the columns.""" start="00:19:27.967" video="mainVideo-world" id="subtitle"]]
[[!template text="""And do a Tab to go to the values""" start="00:19:30.700" video="mainVideo-world" id="subtitle"]]
[[!template text="""and add the corresponding values.""" start="00:19:32.667" video="mainVideo-world" id="subtitle"]]
[[!template text="""Finally, an update.""" start="00:19:37.000" video="mainVideo-world" id="subtitle"]]
[[!template text="""Now we will try to delete this""" start="00:19:48.033" video="mainVideo-world" id="subtitle"]]
[[!template text="""with a `WHERE col11 = 4`.""" start="00:20:00.700" video="mainVideo-world" id="subtitle"]]
[[!template text="""Lastly, let's try dropping the table.""" start="00:20:07.333" video="mainVideo-world" id="subtitle"]]
[[!template text="""That's all for this video. Thanks.""" start="00:20:16.267" video="mainVideo-world" id="subtitle"]]
[[!template text="""Slide with the text &quot;Let's Make Computing Personal.&quot;""" start="00:20:21.867" video="mainVideo-world" id="subtitle"]]



Captioner: bhavin192

Questions or comments? Please e-mail [emacsconf-org-private@gnu.org](mailto:emacsconf-org-private@gnu.org?subject=Comment%20for%20EmacsConf%202023%20world%3A%20GNU%20Emacs%3A%20A%20World%20of%20Possibilities)


<!-- End of emacsconf-publish-after-page -->