summaryrefslogtreecommitdiff
path: root/config/vim/autoload/emmet/lorem/ja.vim
blob: f99d8fa1f9e7b9222bcaca7882b8a447683dca13 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
scriptencoding utf-8

function! emmet#lorem#ja#expand(command) abort
  let wcount = matchstr(a:command, '^\%(lorem\|lipsum\)\(\d*\)}$', '\1', '')
  let wcount = wcount > 0 ? wcount : 30

  let url = "http://www.aozora.gr.jp/cards/000081/files/470_15407.html"
  let content = emmet#util#cache(url)
  if len(content) == 0
    let content = emmet#util#getContentFromURL(url)
    let content = matchstr(content, '<div[^>]*>\zs.\{-}</div>')
    let content = substitute(content, '[ \r]', '', 'g')
    let content = substitute(content, '<br[^>]*>', "\n", 'g')
    let content = substitute(content, '<[^>]\+>', '', 'g')
    let content = join(filter(split(content, "\n"), 'len(v:val)>0'), "\n")
    call emmet#util#cache(url, content)
  endif
  
  let content = substitute(content, "、\n", "、", "g")
  let clines = split(content, '\n')
  let lines = filter(clines, 'len(substitute(v:val,".",".","g"))<=wcount')
  if len(lines) == 0
    let lines = clines
  endif
  let r = emmet#util#rand()
  return lines[r % len(lines)]
endfunction