Dashboard
PHP:
8.3.30
OS:
Linux
User:
dh_mnqueb
/
/
usr
/
share
/
vim
/
vim82
/
ftplugin
π€ Upload
π New File
π New Folder
Close
Editing: raku.vim
" Vim filetype plugin file " Language: Raku " Maintainer: vim-perl <vim-perl@googlegroups.com> " Homepage: https://github.com/Raku/vim-raku " Bugs/requests: https://github.com/Raku/vim-raku/issues " Last Change: 2021-04-16 " Contributors: Hinrik Γrn SigurΓ°sson <hinrik.sig@gmail.com> " " Based on ftplugin/perl.vim by Dan Sharp <dwsharp at hotmail dot com> if exists("b:did_ftplugin") | finish | endif let b:did_ftplugin = 1 " Make sure the continuation lines below do not cause problems in " compatibility mode. let s:save_cpo = &cpo set cpo-=C setlocal formatoptions-=t setlocal formatoptions+=crqol setlocal keywordprg=p6doc setlocal comments=:#\|,:#=,:# setlocal commentstring=#%s " Provided by Ned Konz <ned at bike-nomad dot com> "--------------------------------------------- setlocal include=\\<\\(use\\\|require\\)\\> setlocal includeexpr=substitute(v:fname,'::','/','g') setlocal suffixesadd=.rakumod,.rakudoc,.pm6,.pm setlocal define=[^A-Za-z_] " The following line changes a global variable but is necessary to make " gf and similar commands work. Thanks to Andrew Pimlott for pointing out " the problem. If this causes a problem for you, add an " after/ftplugin/raku.vim file that contains " set isfname-=: set isfname+=: setlocal iskeyword=@,48-57,_,192-255,- " Raku exposes its CompUnits through $*REPO, but mapping module names to " compunit paths is nontrivial. Probably it's more convenient to rely on " people using zef, which has a handy store of sources for modules it has " installed. func s:compareReverseFtime(a, b) let atime = getftime(a:a) let btime = getftime(a:b) return atime > btime ? -1 : atime == btime ? 0 : 1 endfunc let &l:path = "lib,." if exists('$RAKULIB') let &l:path = &l:path . "," . $RAKULIB endif let &l:path = &l:path . "," . join( \ sort(glob("~/.zef/store/*/*/lib", 0, 1), "s:compareReverseFtime"), \ ',') " Convert ascii-based ops into their single-character unicode equivalent if get(g:, 'raku_unicode_abbrevs', 0) iabbrev <buffer> !(<) β iabbrev <buffer> !(<=) β iabbrev <buffer> !(>) β iabbrev <buffer> !(>=) β iabbrev <buffer> !(cont) β iabbrev <buffer> !(elem) β iabbrev <buffer> != β iabbrev <buffer> (&) β© iabbrev <buffer> (+) β iabbrev <buffer> (-) β iabbrev <buffer> (.) β iabbrev <buffer> (<) β iabbrev <buffer> (<+) βΌ iabbrev <buffer> (<=) β iabbrev <buffer> (>) β iabbrev <buffer> (>+) β½ iabbrev <buffer> (>=) β iabbrev <buffer> (\|) βͺ iabbrev <buffer> (^) β iabbrev <buffer> (atomic) β iabbrev <buffer> (cont) β iabbrev <buffer> (elem) β iabbrev <buffer> * Γ iabbrev <buffer> **0 β° iabbrev <buffer> **1 ΒΉ iabbrev <buffer> **2 Β² iabbrev <buffer> **3 Β³ iabbrev <buffer> **4 β΄ iabbrev <buffer> **5 β΅ iabbrev <buffer> **6 βΆ iabbrev <buffer> **7 β· iabbrev <buffer> **8 βΈ iabbrev <buffer> **9 βΉ iabbrev <buffer> ... β¦ iabbrev <buffer> / Γ· iabbrev <buffer> << Β« iabbrev <buffer> <<[=]<< Β«=Β« iabbrev <buffer> <<[=]>> Β«=Β» iabbrev <buffer> <= β€ iabbrev <buffer> =~= β iabbrev <buffer> >= β₯ iabbrev <buffer> >> Β» iabbrev <buffer> >>[=]<< Β»=Β« iabbrev <buffer> >>[=]>> Β»=Β» iabbrev <buffer> Inf β iabbrev <buffer> atomic-add-fetch β+= iabbrev <buffer> atomic-assign β= iabbrev <buffer> atomic-fetch β iabbrev <buffer> atomic-dec-fetch --β iabbrev <buffer> atomic-fetch-dec β-- iabbrev <buffer> atomic-fetch-inc β++ iabbrev <buffer> atomic-inc-fetch ++β iabbrev <buffer> atomic-sub-fetch ββ= iabbrev <buffer> e π iabbrev <buffer> o β iabbrev <buffer> pi Ο iabbrev <buffer> set() β iabbrev <buffer> tau Ο endif " Undo the stuff we changed. let b:undo_ftplugin = "setlocal fo< com< cms< inc< inex< def< isf< isk< kp< path<" . \ " | unlet! b:browsefilter" " Restore the saved compatibility options. let &cpo = s:save_cpo unlet s:save_cpo
Save
Cancel