Ändra svenska bokstäver till HTML i Vim

Detta är något jag lagt in i min .vimrc som gör det möjligt att ändra öäå till korrekta html-taggar, det vill säga t.ex ö för ö. Jag kan även ändra html-taggar tillbaka till vanliga bokstäver om jag vill det.

" Encode or decode swedish characters to/from HTML entities
function! HtmlEntities(line1, line2, action)
  let search = @/
  let range = 'silent ' . a:line1 . ',' . a:line2
  if a:action == 0 " decode 
    execute range . 'sno/ö/ö/eg'
    execute range . 'sno/Ö/Ö/eg'
    execute range . 'sno/ä/ä/eg'
    execute range . 'sno/Ä/Ä/eg'
    execute range . 'sno/å/å/eg'
    execute range . 'sno/Å/Å/eg'
  else              " encode
    execute range . 'sno/ö/ö/eg'
    execute range . 'sno/Ö/Ö/eg'
    execute range . 'sno/ä/ä/eg'
    execute range . 'sno/Ä/Ä/eg'
    execute range . 'sno/å/å/eg'
    execute range . 'sno/Å/Å/eg'
  endif
  nohl
  let @/ = search
endfunction
" Create commands
command! -range SweEncode call HtmlEntities(, , 1)
command! -range SweDecode call HtmlEntities(, , 0)

" Lets bind some keys to do this for us
noremap  /s :SweDecode
noremap  /S :SweEncode

Efter du lagt in detta i din .vimrc så markerar du den text du vill ändra och sen trycker du bara /S i visual mode för att ändra bokstäver till html och /s för att ändra från html till bokstäver.

Kommentera

E-postadressen publiceras inte. Obligatoriska fält är märkta *