解決 Maya2018 for Mac 在Sierra 下無法顯示中文介面的問題
阿新 • • 發佈:2018-12-31
不知道為什麼自己明明下載的中文版的Maya,在mac安裝好卻成了英文的了。
在網上找了一圈,找到了解決辦法:原貼地址
儲存以下程式碼到:maya.py,檔案中
#encoding:utf-8 import os import sys import re _CONTENTS_DIR = '/Applications/Autodesk/maya2018/Maya.app/Contents/' # _CONTENTS_DIR = os.path.dirname(os.path.abspath(sys.argv[0])) + '/Maya.app/Contents/' def replaceScripts(default_dir): exist_in_zh_count = 0 for file_name in os.listdir(os.path.abspath(default_dir)): default_file_path = os.path.join(default_dir, file_name) zh_dir = _CONTENTS_DIR + 'Resources/zh_CN.lproj/scripts' zh_file_path = os.path.join(os.path.abspath(zh_dir), file_name) if os.path.exists(zh_file_path): new_default_file_path = default_file_path + '.old' new_zh_file_path = default_file_path cmd = 'mv ' + default_file_path + ' ' + new_default_file_path os.popen(cmd); cmd = 'cp ' + zh_file_path + ' ' + new_zh_file_path os.popen(cmd) exist_in_zh_count += 1 default_file = open(new_default_file_path, 'rU') zh_file = open(new_zh_file_path, 'r+') try: default_lines = default_file.readlines() zh_lines = zh_file.readlines() if not len(default_lines) == len(zh_lines): # print '[info]: modify ' + new_zh_file_path for line in default_lines: pattern = re.compile(r'displayString\s-replace\s-value') match = pattern.match(line) if not match: if not line.startswith('//'): print 'Warning: 發現不能處理語句:' + line continue pattern = re.compile(r'(?<="\s).*?(?=;)') match = pattern.search(line) if not match: print 'Error: 錯誤的語句' break key = str(match.group()) exist_in_zh = False for zh_line in zh_lines: pattern = re.compile(key) match = pattern.search(zh_line) if match: exist_in_zh = True break if not exist_in_zh: zh_file.write(line) except Exception as e: print str(e) finally: default_file.close() zh_file.close() def replaceResource(): default_file_path = _CONTENTS_DIR + 'Resources/MayaStrings' zh_file_path = _CONTENTS_DIR + 'Resources/zh_CN.lproj/MayaStrings' new_default_file_path = default_file_path + '.old' new_zh_file_path = default_file_path cmd = 'mv ' + default_file_path + ' ' + new_default_file_path os.popen(cmd) cmd = 'cp ' + zh_file_path + ' ' + new_zh_file_path os.popen(cmd) default_file = open(new_default_file_path, 'rU') zh_file = open(new_zh_file_path, 'r+') try: default_lines = default_file.readlines() zh_lines = zh_file.readlines() for line in default_lines: pattern = re.compile(r'^.*?(?=\s=\s")') match = pattern.match(line) if not match: if not line.startswith('//'): print 'Warning: 發現不能處理語句:' + line continue exist_in_zh = False for zh_line in zh_lines: if zh_line.startswith(str(match.group())): exist_in_zh = True zh_lines.remove(zh_line) break if not exist_in_zh: zh_file.write(line) except Exception as e: print str(e) finally: default_file.close() zh_file.close() _SCRIPTS_DIR = _CONTENTS_DIR + 'scripts/' replaceScripts(_SCRIPTS_DIR + 'startup') replaceScripts(_SCRIPTS_DIR + 'shelves') replaceScripts(_SCRIPTS_DIR + 'others') replaceScripts(_SCRIPTS_DIR + 'AETemplates') replaceResource()
然後開啟終端,輸入:
cd “maya.py所在位置”
sudo python maya.py
輸入系統登入密碼,開啟maya,成功!