summaryrefslogtreecommitdiffstats
path: root/2020/subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.sbv
diff options
context:
space:
mode:
Diffstat (limited to '2020/subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.sbv')
-rw-r--r--2020/subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.sbv459
1 files changed, 459 insertions, 0 deletions
diff --git a/2020/subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.sbv b/2020/subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.sbv
new file mode 100644
index 00000000..fa694a5f
--- /dev/null
+++ b/2020/subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.sbv
@@ -0,0 +1,459 @@
+0:00:00.080,0:00:04.960
+hello emacs conf this is john wigley i'm
+
+0:00:03.040,0:00:06.319
+one of the co-maintainers of emacs along
+
+0:00:04.960,0:00:09.280
+with ellie zoretsky
+
+0:00:06.319,0:00:09.840
+and lars ingebrigston and i wanted to
+
+0:00:09.280,0:00:12.639
+give you
+
+0:00:09.840,0:00:14.960
+a technical update on what has been
+
+0:00:12.639,0:00:18.400
+happening
+
+0:00:14.960,0:00:20.640
+with the emacs in the last year so
+
+0:00:18.400,0:00:21.600
+specifically uh we have a few notes that
+
+0:00:20.640,0:00:24.480
+i've gotten from
+
+0:00:21.600,0:00:25.840
+a call with ellie he's been in charge of
+
+0:00:24.480,0:00:28.000
+directing most of the
+
+0:00:25.840,0:00:30.160
+technical contributions on the mailing
+
+0:00:28.000,0:00:33.200
+list and monitoring all the patches
+
+0:00:30.160,0:00:35.840
+so i'm more here just as a messenger
+
+0:00:33.200,0:00:37.120
+he says that we have good progress and
+
+0:00:35.840,0:00:39.040
+support for cairo
+
+0:00:37.120,0:00:40.320
+this is going to be enabled by default
+
+0:00:39.040,0:00:42.480
+and emax 28
+
+0:00:40.320,0:00:44.800
+and cairo plus half buzz is going to be
+
+0:00:42.480,0:00:46.879
+the preferred rendering combination
+
+0:00:44.800,0:00:48.719
+so cairo support is not new but in the
+
+0:00:46.879,0:00:51.440
+past there were a lot of bugs in the
+
+0:00:48.719,0:00:52.960
+code and so it was made experimental
+
+0:00:51.440,0:00:54.960
+so most of those bugs have been fixed
+
+0:00:52.960,0:00:56.320
+recently and now it becomes the default
+
+0:00:54.960,0:00:58.320
+and the next major version
+
+0:00:56.320,0:01:00.320
+which will enable several good features
+
+0:00:58.320,0:01:01.680
+such as color emojis if you're looking
+
+0:01:00.320,0:01:04.720
+forward to those
+
+0:01:01.680,0:01:06.560
+xft as a result is deprecated there are
+
+0:01:04.720,0:01:07.760
+bugs not getting fixed in that code it
+
+0:01:06.560,0:01:08.720
+doesn't appear to be very well
+
+0:01:07.760,0:01:10.960
+maintained
+
+0:01:08.720,0:01:13.760
+it was the most advanced font mac end
+
+0:01:10.960,0:01:15.920
+and emax before cairo became dependable
+
+0:01:13.760,0:01:17.840
+so now that we have a more a better
+
+0:01:15.920,0:01:19.360
+maintained and available solution in
+
+0:01:17.840,0:01:23.200
+cairo we're going to go from that
+
+0:01:19.360,0:01:23.840
+go from xft to that native compilation
+
+0:01:23.200,0:01:26.400
+in lisp
+
+0:01:23.840,0:01:28.080
+will also be landing soon it's currently
+
+0:01:26.400,0:01:28.799
+on a branch but there are several people
+
+0:01:28.080,0:01:31.040
+using it
+
+0:01:28.799,0:01:32.479
+they say they're very impressed it does
+
+0:01:31.040,0:01:35.600
+require live gcc
+
+0:01:32.479,0:01:37.439
+jit to be installed for it to work and
+
+0:01:35.600,0:01:38.960
+this means you have to have gcc 10
+
+0:01:37.439,0:01:41.040
+installed
+
+0:01:38.960,0:01:42.240
+execution of emacs lisp with native
+
+0:01:41.040,0:01:45.280
+compilation on
+
+0:01:42.240,0:01:46.159
+is about 2.5 times faster than the
+
+0:01:45.280,0:01:48.399
+bytecode
+
+0:01:46.159,0:01:49.439
+interpreter we don't yet have any
+
+0:01:48.399,0:01:51.600
+measurements on
+
+0:01:49.439,0:01:52.960
+memory or how it affects resources
+
+0:01:51.600,0:01:54.720
+besides cpu so
+
+0:01:52.960,0:01:56.399
+we do look forward to having more
+
+0:01:54.720,0:01:58.320
+numbers and analysis to see what the
+
+0:01:56.399,0:02:01.360
+real impact of that is going to be
+
+0:01:58.320,0:02:02.799
+also it may vary in compute advantage
+
+0:02:01.360,0:02:04.320
+based on the type of workload that
+
+0:02:02.799,0:02:06.240
+you're performing
+
+0:02:04.320,0:02:08.080
+a downside to the native compilation at
+
+0:02:06.240,0:02:10.720
+the moment is that it takes a long
+
+0:02:08.080,0:02:12.720
+time to compile even when you're doing a
+
+0:02:10.720,0:02:14.959
+16 core build of emacs
+
+0:02:12.720,0:02:15.760
+it can still take 15 minutes to compile
+
+0:02:14.959,0:02:17.840
+emacs
+
+0:02:15.760,0:02:19.520
+and all of its in all of its lisp code
+
+0:02:17.840,0:02:21.840
+with this enabled
+
+0:02:19.520,0:02:23.120
+also this is going to have to happen on
+
+0:02:21.840,0:02:25.360
+every user's machine
+
+0:02:23.120,0:02:27.520
+because we cannot distribute the native
+
+0:02:25.360,0:02:28.319
+compilation products they are specific
+
+0:02:27.520,0:02:29.760
+to the compo
+
+0:02:28.319,0:02:31.440
+to the processor that you might be
+
+0:02:29.760,0:02:33.920
+running on so
+
+0:02:31.440,0:02:35.680
+the emax distribution will remain much
+
+0:02:33.920,0:02:37.760
+as it is now but if you want to have the
+
+0:02:35.680,0:02:39.599
+benefits of natively compiled
+
+0:02:37.760,0:02:41.519
+core lisp files you're going to have to
+
+0:02:39.599,0:02:42.400
+spend that time and have gcc 10
+
+0:02:41.519,0:02:45.840
+available
+
+0:02:42.400,0:02:48.959
+to get that compilation support um
+
+0:02:45.840,0:02:52.160
+the gtk only build is being prepared
+
+0:02:48.959,0:02:52.959
+for merging so what this does is it
+
+0:02:52.160,0:02:55.120
+throws away
+
+0:02:52.959,0:02:56.000
+most of the other tool kits that emacs
+
+0:02:55.120,0:02:59.280
+was using
+
+0:02:56.000,0:03:01.760
+and relies only on gtk making emacs
+
+0:02:59.280,0:03:03.920
+much more of a gtk application than it
+
+0:03:01.760,0:03:06.480
+has been
+
+0:03:03.920,0:03:08.480
+the main issue here is that we were
+
+0:03:06.480,0:03:09.360
+abusing gtk in some ways that weren't
+
+0:03:08.480,0:03:10.879
+really meant
+
+0:03:09.360,0:03:12.879
+and now we're going to be more of a
+
+0:03:10.879,0:03:14.080
+first club gtk will be more of a first
+
+0:03:12.879,0:03:17.040
+class citizen in the
+
+0:03:14.080,0:03:17.440
+approach and the ways that we use it and
+
+0:03:17.040,0:03:19.280
+and
+
+0:03:17.440,0:03:21.200
+be using it in the ways that the gtk
+
+0:03:19.280,0:03:23.360
+developers intended
+
+0:03:21.200,0:03:24.640
+there is going to be much more support
+
+0:03:23.360,0:03:27.280
+for xt mouse
+
+0:03:24.640,0:03:29.120
+so xt mouse allows you to use your mouse
+
+0:03:27.280,0:03:30.799
+inside of a terminal window
+
+0:03:29.120,0:03:33.120
+which you could do before but there were
+
+0:03:30.799,0:03:36.159
+certain aspects such as menus
+
+0:03:33.120,0:03:38.239
+that weren't supported so instead of
+
+0:03:36.159,0:03:39.840
+having kind of partial support for mouse
+
+0:03:38.239,0:03:42.879
+inside of an x term with xt
+
+0:03:39.840,0:03:44.959
+mouse you get full support this is going
+
+0:03:42.879,0:03:46.720
+to allow
+
+0:03:44.959,0:03:48.159
+changes in the way that things can be
+
+0:03:46.720,0:03:51.200
+bound the ways that
+
+0:03:48.159,0:03:53.200
+uh key bindings can the mouse events can
+
+0:03:51.200,0:03:56.879
+be mapped to key bindings while in
+
+0:03:53.200,0:03:58.480
+x terms and um yeah little by little
+
+0:03:56.879,0:03:59.040
+this support is being extended even
+
+0:03:58.480,0:04:01.599
+further
+
+0:03:59.040,0:04:04.080
+so we look forward to seeing that
+
+0:04:01.599,0:04:06.239
+develop in the near term
+
+0:04:04.080,0:04:08.080
+once this is merged by the way also then
+
+0:04:06.239,0:04:09.840
+emacs will have mouse support in every
+
+0:04:08.080,0:04:12.720
+one of its available configurations
+
+0:04:09.840,0:04:14.680
+which has not been true until now emacs
+
+0:04:12.720,0:04:17.519
+27 will be soon releasing
+
+0:04:14.680,0:04:19.919
+27.2 and the pretest for that should
+
+0:04:17.519,0:04:20.880
+begin sometime soon after emacs comp is
+
+0:04:19.919,0:04:23.360
+done
+
+0:04:20.880,0:04:24.800
+and finally emacs 28 is going to get
+
+0:04:23.360,0:04:26.479
+better emoji support
+
+0:04:24.800,0:04:29.120
+right now emojis are registered
+
+0:04:26.479,0:04:31.759
+internally within emacs as symbols
+
+0:04:29.120,0:04:33.759
+which works in some ways but does not
+
+0:04:31.759,0:04:37.360
+support some of the special features
+
+0:04:33.759,0:04:40.000
+of of emojis such as different
+
+0:04:37.360,0:04:41.120
+skin tones for the hand emoji or face
+
+0:04:40.000,0:04:43.280
+emojis
+
+0:04:41.120,0:04:45.199
+in emacs 28 emojis are going to have
+
+0:04:43.280,0:04:47.199
+their own support within the sequel
+
+0:04:45.199,0:04:49.360
+c code and then this is going to allow
+
+0:04:47.199,0:04:52.720
+those types of variations and other
+
+0:04:49.360,0:04:54.639
+emoji specific font setups so that is
+
+0:04:52.720,0:04:56.720
+everything for emacs
+
+0:04:54.639,0:04:59.120
+in the future i don't have a timeline
+
+0:04:56.720,0:05:01.520
+for you on when 28 will be available
+
+0:04:59.120,0:05:02.720
+but 27 is going to keep improving until
+
+0:05:01.520,0:05:04.479
+we're ready to get there
+
+0:05:02.720,0:05:06.479
+so have fun with the rest of you max
+
+0:05:04.479,0:05:09.199
+conf and i hope to see you there
+
+0:05:06.479,0:05:09.199
+bye
+