home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 June / PCWorld_2005-06_cd.bin / software / vyzkuste / firewally / firewally.exe / framework-2.3.exe / tutor.vim < prev    next >
Text File  |  2003-08-12  |  3KB  |  95 lines

  1. " Vim tutor support file
  2. " Author: Eduardo F. Amatria <eferna1@platea.pntic.mec.es>
  3. " Last Change:    2003 Mar 21
  4.  
  5. " This small source file is used for detecting if a translation of the
  6. " tutor file exist, i.e., a tutor.xx file, where xx is the language.
  7. " If the translation does not exist, or no extension is given,
  8. " it defaults to the english version.
  9.  
  10. " It is invoked by the vimtutor shell script.
  11.  
  12. " 1. Build the extension of the file, if any:
  13. let s:ext = ""
  14. if strlen($xx) > 1
  15.   let s:ext = "." . $xx
  16. else
  17.   let s:lang = ""
  18.   if exists("v:lang") && v:lang != "C"
  19.     let s:lang = v:lang
  20.   elseif strlen($LANG) > 0 && $LANG != "C"
  21.     let s:lang = $LANG
  22.   endif
  23.   if s:lang != ""
  24.     " Remove "@euro" (ignoring case), it may be at the end
  25.     let s:lang = substitute(s:lang, '\c@euro', '', '')
  26.     " On MS-Windows it may be German_Germany.1252 or Polish_Poland.1250.  How
  27.     " about other languages?
  28.     if s:lang =~ "German"
  29.       let s:ext = ".de"
  30.     elseif s:lang =~ "Polish"
  31.       let s:ext = ".pl"
  32.     else
  33.       let s:ext = "." . strpart(s:lang, 0, 2)
  34.     endif
  35.   endif
  36. endif
  37.  
  38. " The japanese tutor is available in two encodings, guess which one to use
  39. " The "sjis" one is actually "cp932", it doesn't matter for this text.
  40. if s:ext =~? '\.ja'
  41.   if &enc =~ "euc"
  42.     let s:ext = ".ja.euc"
  43.   else
  44.     let s:ext = ".ja.sjis"
  45.   endif
  46. endif
  47.  
  48. " The Chinese tutor is available in two encodings, guess which one to use
  49. " This segment is from the above lines and modified by
  50. " Mendel L Chan <beos@turbolinux.com.cn> for Chinese vim tutorial
  51. if s:ext =~? '\.zh'
  52.   if &enc =~ 'big5\|cp950'
  53.     let s:ext = ".zh.big5"
  54.   else
  55.     let s:ext = ".zh.euc"
  56.   endif
  57. endif
  58.  
  59. " The Polish tutor is available in two encodings, guess which one to use.
  60. if s:ext =~? '\.pl' && &enc =~ 1250
  61.   let s:ext = ".pl.cp1250"
  62. endif
  63.  
  64. " The Greek tutor is available in two encodings, guess which one to use
  65. if s:ext =~? '\.gr' && &enc =~ 737
  66.   let s:ext = ".gr.cp737"
  67. endif
  68.  
  69. " Somehow ".ge" (Germany) is sometimes used for ".de" (Deutsch).
  70. if s:ext =~? '\.ge'
  71.   let s:ext = ".de"
  72. endif
  73.  
  74. if s:ext =~? '\.en'
  75.   let s:ext = ""
  76. endif
  77.  
  78. " 2. Build the name of the file:
  79. let s:tutorfile = "/tutor/tutor"
  80. let s:tutorxx = $VIMRUNTIME . s:tutorfile . s:ext
  81.  
  82. " 3. Finding the file:
  83. if filereadable(s:tutorxx)
  84.   let $TUTOR = s:tutorxx
  85. else
  86.   let $TUTOR = $VIMRUNTIME . s:tutorfile
  87.   echo "The file " . s:tutorxx . " does not exist.\n"
  88.   echo "Copying English version: " . $TUTOR
  89.   4sleep
  90. endif
  91.  
  92. " 4. Making the copy and exiting Vim:
  93. e $TUTOR
  94. wq! $TUTORCOPY
  95.