Advertisement
Guest User

rename rusFiles to translit

a guest
Apr 13th, 2015
473
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ' http://sourceforge.net/projects/russfiles2trans/
  2. ' подправил для Directory Opus http://www.gpsoft.com.au/
  3. ' Tilks
  4.  
  5. @script vbscript
  6. Option Explicit
  7.  
  8. Dim russArr, latinArr, x, mapRu2Lat
  9.  
  10. ' абвгдеёжзийклмнопрстуфхцчшщъыьэюя
  11. russArr  = Array(" ", "а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ъ", "ы", "ь", "э", "ю", "я",_
  12.                       "А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж", "З", "И", "Й", "К", "Л", "М", "Н", "О", "П", "Р", "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э", "Ю", "Я")
  13. latinArr = Array("_", "a", "b", "v", "g", "d", "e", "jo", "zh", "z", "i", "j", "k", "l", "m", "n", "o", "p", "r", "s", "t", "u", "f", "h", "c", "ch", "sh", "w", "#", "y", "'", "je", "ju", "ja",_
  14.                       "A", "B", "V", "G", "D", "E", "Jo", "Zh", "Z", "I", "J", "K", "L", "M", "N", "O", "P", "R", "S", "T", "U", "F", "H", "C", "Ch", "Sh", "W", "#", "Y", "'", "Je", "Ju", "Ja")
  15.  
  16. Set mapRu2Lat = CreateObject("Scripting.Dictionary")
  17.  
  18. For x = 0 To UBound(russArr)
  19.     mapRu2Lat.Add russArr(x), latinArr(x)
  20. Next
  21. Function russToTranslit(aStr)
  22.     Dim x, ch, chMapped
  23.     russToTranslit = ""
  24.         For x = 1 To Len(aStr)
  25.         ch = Mid(aStr,x,1)
  26.         If mapRu2Lat.Exists(ch) Then
  27.             chMapped = mapRu2Lat.item(ch)
  28.             russToTranslit = russToTranslit & chMapped
  29.         Else
  30.             russToTranslit = russToTranslit & ch
  31.       End If
  32.     Next
  33.     'DOpus.OutputString "translited: " & russToTranslit
  34. End Function
  35.  
  36. Function Rename_GetNewName ( strFileName, strFilePath, fIsFolder, strOldName, ByRef strNewName )
  37.     'DOpus.OutputString strFileName
  38.     strNewName = russToTranslit (strFileName)
  39. End Function
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement