mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-01-23 13:50:05 +08:00
63 lines
2.0 KiB
VimL
63 lines
2.0 KiB
VimL
"=============================================================================
|
|
" init.vim --- Language && encoding in SpaceVim
|
|
" Copyright (c) 2016-2017 Wang Shidong & Contributors
|
|
" Author: Wang Shidong < wsdjeg at 163.com >
|
|
" URL: https://spacevim.org
|
|
" License: GPLv3
|
|
"=============================================================================
|
|
|
|
let s:SYSTEM = SpaceVim#api#import('system')
|
|
|
|
"Use English for anything in vim
|
|
try
|
|
if s:SYSTEM.isWindows
|
|
silent exec 'lan mes en_US.UTF-8'
|
|
elseif s:SYSTEM.isOSX
|
|
silent exec 'language en_US.UTF-8'
|
|
else
|
|
let s:uname = system('uname -s')
|
|
if s:uname ==# "Darwin\n"
|
|
" in mac-terminal
|
|
silent exec 'language en_US.UTF-8'
|
|
elseif s:uname ==# "SunOS\n"
|
|
" in Sun-OS terminal
|
|
silent exec 'lan en_US.UTF-8'
|
|
elseif s:uname ==# "FreeBSD\n"
|
|
" in FreeBSD terminal
|
|
silent exec 'lan en_US.UTF-8'
|
|
else
|
|
" in linux-terminal
|
|
silent exec 'lan en_US.UTF-8'
|
|
endif
|
|
endif
|
|
catch /^Vim\%((\a\+)\)\=:E197/
|
|
call SpaceVim#logger#error('Can not set language to en_US.utf8')
|
|
endtry
|
|
|
|
" try to set encoding to utf-8
|
|
if s:SYSTEM.isWindows
|
|
" Be nice and check for multi_byte even if the config requires
|
|
" multi_byte support most of the time
|
|
if has('multi_byte')
|
|
" Windows cmd.exe still uses cp850. If Windows ever moved to
|
|
" Powershell as the primary terminal, this would be utf-8
|
|
if exists('&termencoding') && !has('nvim')
|
|
set termencoding=cp850
|
|
endif
|
|
setglobal fileencoding=utf-8
|
|
" Windows has traditionally used cp1252, so it's probably wise to
|
|
" fallback into cp1252 instead of eg. iso-8859-15.
|
|
" Newer Windows files might contain utf-8 or utf-16 LE so we might
|
|
" want to try them first.
|
|
set fileencodings=ucs-bom,utf-8,gbk,utf-16le,cp1252,iso-8859-15,cp936
|
|
endif
|
|
|
|
else
|
|
if exists('&termencoding') && !has('nvim')
|
|
set termencoding=utf-8
|
|
endif
|
|
set fileencoding=utf-8
|
|
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
|
|
endif
|
|
scriptencoding utf-8
|