Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

jOpenSpace.cz 2016 ViM 8.0

221 views

Published on

Novinky ve ViM 8.0

Published in: Technology
  • Be the first to comment

  • Be the first to like this

jOpenSpace.cz 2016 ViM 8.0

  1. 1. jOpenSpace.cz 2016 – ViM 8.0 David Ondřich
  2. 2. Vi iMproved 8.0 – trivia hlavní vývojář Bram Moolenaar vydání 12. září 2016 [1] předchozí verze 7.0 vydána 8. 5. 2006, 7.4 vydána 10. 8. 2013 [2] Moolenaar začal ViM pro AmigaOS v r. 1988, veřejná verze 1.14 r. 1991 [3] původní  vi  vytvořen (Bill Joy, BSD Unix) r. 1976 jako vizuální režim pro editor  ex  vim.org portace: Amiga, Atari, BeOS, BSD, DOS (< 8!), linux, MacOS, OpenVMS, OS/2, QNX, Windows a další další odvozeniny původního  vi : elvis, nvi, vile, xvi, … neovim
  3. 3. hlavní funkce všudypřítomnost režimy konfigurovatelnost podpora (nejen) programovacích jazyků odsazování, syntax highlighting, párování závorek, folding, … pluginy & dostupné vychytávky pro stovky jazyků (shell, C/C++, Java, Perl, …, XML, HTML, TeX, markdown, …) práce s textem (věty, odstavce), blokové výběry, … skriptovací jazyk VimScript
  4. 4. novinky asynchronní I/O, kanály (podpora JSON) komunikace s procesy časovače lambdy, uzávěry a další: balíčky, nový styl testů, timestamps ve  .viminfo , podpora DirectX, GTK+ 3, … kompletní seznam novinek [4]
  5. 5. ukázky pro workshop 1.  :undol ,  :earlier ,  :later  (už ve verzi 7!) [5] 2.  |v_CTRL‐A| ,  |v_CTRL‐X|  – přičítání ve vizuálním výběru 3.  breakindent ,  breakindentopt ,  showbreak  4.  fixendofline  – <EOL> na poslední řádce 5.  termguicolors  – 24‒bit barvy v terminálu 6.  v:true ,  v:false ,  v:none ,  v:null 
  6. 6. ukázky pro workshop 7. kanály  ch_open() ,  ch_status() ,  ch_close()  režimy: JSON, JS, RAW, NL  ch_sendraw() ,  ch_evalraw()  callbacks (?) 8. procesy  job_start() ,  job_getchannel() ,  job_status()  stejné režimy  ch_read() , I/O buffery callbacks (?)
  7. 7. ukázky pro workshop 9. časovače  timer_start()  – parametr  repeat   timer_stop() ,  timer_stopall()  10. lambdy, uzávěry lambda syntax využití v  sort() ,  map() ,  filter()  ( timer_start() !) přístup do vnějšího scope pro funkce:  func! InnerFunc() closure  let FormatJOS = {year, place ‐> 'jOpenSpace '.year.', '.place}  echom FormatJOS(2016, 'Pelhřimov') 
  8. 8. další info  :help channel‐demo   :help job_start()   :help start_timer()   :help expr‐lambda ,  :help closure   :help version8  [1] https://groups.google.com/forum/#!topic/vim̲announce/EKTuhjF3ET0   [2] http://www.jovicailic.org/2014/06/the‒history‒of‒vim/   [3] https://en.wikipedia.org/wiki/Vim̲(text̲editor)   [4] https://github.com/vim/vim/blob/master/runtime/doc/version8.txt   [5] http://lifehacker.com/202093/go‒back‒in‒text‒file‒time‒with‒vim‒70
  9. 9. dík za pozornost david.ondrich@aveco.com vytvořeno pomocí ViM 8 a marpu

×