2 Angajamente 6db6397867 ... 31db525045

Autor SHA1 Permisiunea de a trimite mesaje. Dacă este dezactivată, utilizatorul nu va putea trimite nici un fel de mesaj Data
  Daniel Sheffield 31db525045 adjust abbreviation for Amos so it doesn't conflict with commonly used word 1 lună în urmă
  Daniel Sheffield 3829236b0a make versification abbreviations a plugin so they only load when needed 1 lună în urmă
2 a modificat fișierele cu 135 adăugiri și 79 ștergeri
  1. 135 0
      vim/vimfiles/plugin/versification.vim
  2. 0 79
      vim/vimfiles/vimrc

+ 135 - 0
vim/vimfiles/plugin/versification.vim

@@ -0,0 +1,135 @@
+if exists('g:versification') && g:versification
+    finish
+endif
+let g:versification=1
+
+augroup Versification
+  autocmd!
+  autocmd BufRead,BufNewFile *.md call VersificationDetect()
+  autocmd BufRead,BufNewFile *.md call SetupVersification()
+augroup END
+
+function! SetupVersification()
+  if exists('b:versification') && !empty(b:versification)
+    call VersificationAbbreviations('on')
+  else
+    call VersificationAbbreviations('off')
+  endif
+endfunction
+
+function! VersificationDetect()
+  if exists('b:versification')
+      unlet b:versification
+  endif
+  let lines = getline(1, &modelines)
+
+  for line in lines
+    if line =~ 'versification:'
+      let parts = split(line, ':')
+      let trimmed_parts = map(parts, 'v:val->trim()')
+      let b:versification = get(trimmed_parts, 1, '')
+      return
+    endif
+  endfor
+endfunction
+
+let g:bible_abbrevs = [
+\    'gen', 'ex', 'lev', 'num', 'de',
+\    'jsh', 'jdg', 'rut', '1sa', '2sa', '1kn', '2kn', '1ch', '2ch',
+\    'ezr', 'neh', 'est',
+\    'job', 'ps', 'pr', 'ecc', 'song',
+\    'isa', 'jer', 'lam', 'eze', 'dan',
+\    'hos', 'joe', 'amo', 'ob', 'jon', 'mic', 'nah', 'hab', 'zep', 'hag', 'zech', 'mal',
+\    'mt', 'mk', 'lk', 'jn',
+\    'act',
+\    'rom', '1co', '2co', 'gal', 'eph', 'php', 'col', '1th', '2th', '1ti', '2ti', 'tit', 'phm', 'heb',
+\    'jm',
+\    '1pt', '2pt',
+\    '1jn', '2jn', '3jn',
+\    'jud',
+\    'rev'
+\]
+
+function! VersificationAbbreviations(state)
+    if a:state == 'on'
+        iabbrev <buffer> gen Genesis
+        iabbrev <buffer> ex Exodus
+        iabbrev <buffer> lev Leviticus
+        iabbrev <buffer> num Numbers
+        iabbrev <buffer> de Deuteronomy
+
+        iabbrev <buffer> jsh Joshua
+        iabbrev <buffer> jdg Judges
+        iabbrev <buffer> rut Ruth
+        iabbrev <buffer> 1sa 1 Samuel
+        iabbrev <buffer> 2sa 2 Samuel
+        iabbrev <buffer> 1kn 1 Kings
+        iabbrev <buffer> 2kn 2 Kings
+        iabbrev <buffer> 1ch 1 Chronicles
+        iabbrev <buffer> 2ch 2 Chronicles
+        iabbrev <buffer> ezr Ezra
+        iabbrev <buffer> neh Nehemiah
+        iabbrev <buffer> est Esther
+
+        iabbrev <buffer> job Job
+        iabbrev <buffer> ps Psalm
+        iabbrev <buffer> pr Proverbs
+        iabbrev <buffer> ecc Ecclesiastes
+        iabbrev <buffer> song Song of Solomon
+        iabbrev <buffer> isa Isaiah
+        iabbrev <buffer> jer Jeremiah
+        iabbrev <buffer> lam Lamentations
+        iabbrev <buffer> eze Ezekiel
+        iabbrev <buffer> dan Daniel
+        iabbrev <buffer> hos Hosea
+        iabbrev <buffer> joe Joel
+        iabbrev <buffer> amo Amos
+        iabbrev <buffer> ob Obadiah
+        iabbrev <buffer> jon Jonah
+        iabbrev <buffer> mic Micah
+        iabbrev <buffer> nah Nahum
+        iabbrev <buffer> hab Habakkuk
+        iabbrev <buffer> zep Zephaniah
+        iabbrev <buffer> hag Haggai
+        iabbrev <buffer> zech Zechariah
+        iabbrev <buffer> mal Malachi
+
+        iabbrev <buffer> mt Matthew
+        iabbrev <buffer> mk Mark
+        iabbrev <buffer> lk Luke
+        iabbrev <buffer> jn John
+
+        iabbrev <buffer> act Acts
+
+        iabbrev <buffer> rom Romans
+        iabbrev <buffer> 1co 1 Corinthians
+        iabbrev <buffer> 2co 2 Corinthians
+
+        iabbrev <buffer> gal Galatians
+        iabbrev <buffer> eph Ephesians
+        iabbrev <buffer> php Philippians
+        iabbrev <buffer> col Colossians
+        iabbrev <buffer> 1th 1 Thessalonians
+        iabbrev <buffer> 2th 2 Thessalonians
+        iabbrev <buffer> 1ti 1 Timothy
+        iabbrev <buffer> 2ti 2 Timothy
+        iabbrev <buffer> tit Titus
+        iabbrev <buffer> phm Philemon
+
+        iabbrev <buffer> heb Hebrews
+        iabbrev <buffer> jm James
+        iabbrev <buffer> 1pt 1 Peter
+        iabbrev <buffer> 2pt 2 Peter
+        iabbrev <buffer> 1jn 1 John
+        iabbrev <buffer> 2jn 2 John
+        iabbrev <buffer> 3jn 3 John
+        iabbrev <buffer> jud Jude
+
+        iabbrev <buffer> rev Revelation
+    else
+        for abbr in g:bible_abbrevs
+            silent! exec 'iunabbrev <buffer> ' . abbr
+        endfor
+    endif
+endfunction
+

+ 0 - 79
vim/vimfiles/vimrc

@@ -486,82 +486,3 @@ silent! call feedkeys(":nohlsearch\<CR>")
 
 set belloff=all
 
-augroup bible
-  autocmd!
-  autocmd FileType markdown {
-    iabbrev <buffer> gen Genesis
-    iabbrev <buffer> ex Exodus
-    iabbrev <buffer> lev Leviticus
-    iabbrev <buffer> num Numbers
-    iabbrev <buffer> de Deuteronomy
-
-    iabbrev <buffer> jsh Joshua
-    iabbrev <buffer> jdg Judges
-    iabbrev <buffer> rut Ruth
-    iabbrev <buffer> 1sa 1 Samuel
-    iabbrev <buffer> 2sa 2 Samuel
-    iabbrev <buffer> 1kn 1 Kings
-    iabbrev <buffer> 2kn 2 Kings
-    iabbrev <buffer> 1ch 1 Chronicles
-    iabbrev <buffer> 2ch 2 Chronicles
-    iabbrev <buffer> ezr Ezra
-    iabbrev <buffer> neh Nehemiah
-    iabbrev <buffer> est Esther
-
-    iabbrev <buffer> job Job
-    iabbrev <buffer> ps Psalm
-    iabbrev <buffer> pr Proverbs
-    iabbrev <buffer> ecc Ecclesiastes
-    iabbrev <buffer> song Song of Solomon
-    iabbrev <buffer> isa Isaiah
-    iabbrev <buffer> jer Jeremiah
-    iabbrev <buffer> lam Lamentations
-    iabbrev <buffer> eze Ezekiel
-    iabbrev <buffer> dan Daniel
-    iabbrev <buffer> hos Hosea
-    iabbrev <buffer> joe Joel
-    iabbrev <buffer> am Amos
-    iabbrev <buffer> ob Obadiah
-    iabbrev <buffer> jon Jonah
-    iabbrev <buffer> mic Micah
-    iabbrev <buffer> nah Nahum
-    iabbrev <buffer> hab Habakkuk
-    iabbrev <buffer> zep Zephaniah
-    iabbrev <buffer> hag Haggai
-    iabbrev <buffer> zech Zechariah
-    iabbrev <buffer> mal Malachi
-
-    iabbrev <buffer> mt Matthew
-    iabbrev <buffer> mk Mark
-    iabbrev <buffer> lk Luke
-    iabbrev <buffer> jn John
-
-    iabbrev <buffer> act Acts
-
-    iabbrev <buffer> rom Romans
-    iabbrev <buffer> 1co 1 Corinthians
-    iabbrev <buffer> 2co 2 Corinthians
-
-    iabbrev <buffer> gal Galatians
-    iabbrev <buffer> eph Ephesians
-    iabbrev <buffer> php Philippians
-    iabbrev <buffer> col Colossians
-    iabbrev <buffer> 1th 1 Thessalonians
-    iabbrev <buffer> 2th 2 Thessalonians
-    iabbrev <buffer> 1ti 1 Timothy
-    iabbrev <buffer> 2ti 2 Timothy
-    iabbrev <buffer> tit Titus
-    iabbrev <buffer> phm Philemon
-
-    iabbrev <buffer> heb Hebrews
-    iabbrev <buffer> jm James
-    iabbrev <buffer> 1pt 1 Peter
-    iabbrev <buffer> 2pt 2 Peter
-    iabbrev <buffer> 1jn 1 John
-    iabbrev <buffer> 2jn 2 John
-    iabbrev <buffer> 3jn 3 John
-    iabbrev <buffer> jud Jude
-
-    iabbrev <buffer> rev Revelation
-}
-augroup END