-hello and welcome to the stock -
-the title of the stock is a tour feature -
-a fast and fully featured terminal -
-emulator -
-inside new e-max so let's try to -
-understand what we mean with the pass -
-and fully featured -
-and to do that we'll compare v term with -
-the -
-packages which are built in Emacs mean -
-the term -
-so let's let's jump into the v term so -
-this is a feature buffer -
-and this is a ansi term buffer what I'm -
-going to do now is first I'm going to -
-prove you -
-what we move fast so to do that let me -
-open a large file display on screen or -
-large file this is about one megabyte of -
-data -
-and let me time that it takes about 0.6 -
-seconds -
-with feature let's do the same with -
-with ancient term well we already -
-already see the difference -
-so I will use this time to tell you -
-what's different and -
-what is v term exactly so v term is a -
-terminal emulator built -
-on top of an external library the -
-library is called libvi term -
-and is the same library used by newton -
-for their own terminal emulator -
-it's a c library and this is what gives -
-us -
-a lot of good features first the speed -
-time spent here 0.6 is essentially the -
-time that it takes to -
-one convert the emax representation of -
-like text -
-into the visa and representation of what -
-was a string and two into -
-actually displaying that and that can -
-take time -
-if there's a if there's quantification -
-involved so these are the 0.6 seconds -
-there -
-as we say in the in ancestor that's much -
-much -
-more time it's much slower so the -
-terminal will feel much snappier much -
-faster -
-but that's not the main benefit or the -
-only benefit of using this external -
-library -
-feature the second big benefit -
-is that v term has support for all the -
-escape codes -
-that exterm has support for so v term is -
-essentially as running x term -
-inside an imax buffer so let's see that -
-this for example -
-let's start by looking at the support -
-for colors -
-we have support for all the colors out -
-of the box we don't have to do anything -
-and if we did the same here well we have -
-only -
-20 colors there's a way to get all the -
-colors but it's much more involved -
-but this is not where v term shines -
-uh we can run all the commands that we -
-want -
-h top and cdu -
-everything runs here also this title -
-it's a -
-it's a fairly complicated manipulation -
-of -
-the window and it will not work here -
-it just doesn't work actually now the -
-terminal is probably messed up -
-yes so using this external library -
-removes the burden from the developers -
-of having to implement -
-support for all these cape codes we just -
-use those -
-so in many ways running veteran -
-is us running extern inside a max -
-but it's better than that because since -
-this is an e-max buffer -
-we can enjoy a lot of features from -
-Emacs -
-as well as a tighter integration with -
-e-max itself -
-for example as you see here the title of -
-my buffer -
-is from the director I'm in so let's go -
-to my tmp -
-the title will change so there's -
-information being exchanged between v -
-term and index -
-and of course the title is not the only -
-place where information is exchanged -
-I can find a file and I will be in the -
-directory -
-where my terminal is this feature is -
-also available in nc term -
-and it works also on b term and it -
-follows me so if I go to tmp I'll get -
-the tmp -
-if I ssh to a remote server it will work -
-also -
-on remote servers as well which is a -
-very nice way to edit files remotely -
-while we're working on a shelf and -
-second while vterm -
-is not an e-lisp interpreter like -
-initial what we can do is we can -
-still run inbox functions so for example -
-that requires some configuration the -
-term -
-command message I as you see there's a -
-higher so what I'm doing -
-is I'm executing the eagles function I -
-and I can drop that -
-and turn it around uh hash function to -
-run -
-a-list functions or another one file see -
-we call this feature message passing and -
-it requires -
-some configuration on the emac side as -
-well as in the shell side -
-it's important to stress what's the -
-nature of feature -
-for instance every time I'm sending a -
-key binding it's not immediately clear -
-if my intention is to send it to the -
-shell or to imax so v term implements -
-some reasonable defaults -
-but at the moment it's mainly packaged -
-to display characters on a screen -
-so for example if you're using evil the -
-editing commands in evil will not work -
-immediately there's some work to be done -
-and integration can be improved on that -
-side but -
-sometimes we really want this to behave -
-exactly like a imax buffer -
-we want to be able to search if -
-if I try to get it to search it will not -
-work I will send it to the shop so to do -
-that -
-we enabled the term copy mode so as you -
-see -
-copy mode and now this buffer is -
-essentially a fundamental buffer -
-I can move around as I can search -
-uh so it must have I -
-can do everything I want and there are -
-additional features for example I can -
-jump around -
-all the prompts and I find this -
-extremely useful -
-because I can copy update from my -
-programs or -
-what I always have to do is I have to -
-google some errors so what I do is I -
-select that -
-and I have my keybinding in maksakov and -
-I'm googling -
-what I have to google so this is very -
-nice and -
-if I now that have selected something if -
-I just press return I will -
-go back to my normal editing mode with -
-the -
-text copied so I can paste it back so -
-it's a quick way to -
-interact with copy and interact with uh -
-with the output of a buffer so finally -
-let's discuss how to actually -
-use beta let's circle back and let's go -
-and let's look at the github repo -
-where development is happening v term is -
-available in velpa -
-but since it's leveraging the power of -
-an external module -
-you must have Emacs compiled with -
-support for modules -
-and many distros like ubuntu debian -
-that's not there so you have to get -
-Emacs with support for modules compiling -
-or -
-getting images somewhere else and also -
-the first time you are going to use this -
-which -
-works only on mac or -
-new linux systems Emacs will try to find -
-and compile this module -
-so it's important this requirement is -
-important if you're using windows -
-well that's not it's not available and -
-will not work -
-so to conclude I want to just advertise -
-this page -
-if you have problems look at the issues -
-and -
-open unusual in case we'll try to help -
-you we are very excited about feature -
-and I think it's a transformative -
-terminal experience inside glue imax -- cgit v1.2.3