Windows终端(用的是powershell)中的vim输入全部是乱码
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows终端(用的是powershell)中的vim输入全部是乱码相关的知识,希望对你有一定的参考价值。
我在powershell中用vim编辑文档时输入的中文全是乱码
求好心人帮忙
系统是中文的,VIM也是中文的,是编码问题
请从下面一行复制:=========================================
" Platform
function! MySys()
if has("win16") || has("win32") || has("win64") || has("win95")
return "windows"
elseif has("unix")
return "linux"
endif
endfunction
"处理文本中显示乱码
set encoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936,big5,euc-jp,euc-kr,latin1
if MySys() == "windows"
set termencoding=chinese
set fileencoding=chinese
elseif MySys() == "linux"
let &termencoding=&encoding
set fileencodings=utf-8,gbk,ucs-bom,cp936
endif
"防止特殊符号无法正常显示。
if exists("&ambiwidth")
set ambiwidth=double
endif
"使用中文菜单,并使用 UTF-8 编码。
"如果没有这句的话,在非 UTF-8 的系统,如 Windows 下,用了 UTF-8 的 encoding 后
"菜单会乱码。
set langmenu=zh_CN.UTF-8
"使用中文提示信息,并使用 UTF-8 编码。
"如果没有这句的话,在非 UTF-8 的系统,用了 UTF-8 的 encoding 后
"系统提示会乱码。
language messages zh_CN.UTF-8
" 解决菜单乱码,先指定语言。>>>自己根据相关版本添加<<<
"导入删除菜单脚本,删除乱码的菜单
source $VIMRUNTIME/delmenu.vim
"导入正常的菜单脚本
source $VIMRUNTIME/menu.vim
到上面一行结束。================================================
希望对你有用! 参考技术A 我感觉应该是vim的问题,与PowerShell关系不大。在Windows下面去使用VIM,这个我倒蛮感兴趣的,呵呵。 参考技术B 是不是你的系统没有安装中文语言呢?
Windows powershell 自学指南1
参考MIT课程MIT-Missing-Semester(CS小白入门可学)。
原课程演示用的是Linux系统的操作指令,与我所用不同。
Windows powershell 下载安装略。Microsoft Store 搜索Windows Termianal下载。
Note1:如果需要help指令,以管理员身份运行Windows powershell ,然后输入指令:Update-help
然后会出现提示:
Update-help : 无法更新带有 UI 区域性 zh-CN 的模块“ConfigDefender, PSReadline”帮助: 在 HelpInfo XML 文件中检索不到 U
I 区域性 zh-CN。确保模块清单中的 HelpInfoUri 属性有效或检查网络连接是否正常,然后重试该命令。
所在位置 行:1 字符: 1
+ Update-help
+ ~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (:) [Update-Help], Exception
+ FullyQualifiedErrorId : UnableToRetrieveHelpInfoXml,Microsoft.PowerShell.Commands.UpdateHelpCommand
解决方案:修改操作系统的语言集为英文
或者使用如下代码替代:
Update-Help -ErrorAction SilentlyContinue
以下所有代码在Windows PowerShell下运行(不是Command Prompt)
输入:date 输出为:
2022年3月30日 22:17:18
输入:echo hello 输出为: hello
Windows PowerShell默认进入的路径是系统盘的目录:比如我的是C:\\Users\\dell>
输入 :dir 输出为C:\\Users\\dell>路径中的文件夹目录比如我的是:
目录: C:\\Users\\dell
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2021/5/12 21:02 .astropy
d----- 2021/5/21 16:47 .cache
d----- 2021/5/21 20:39 .matplotlib
d----- 2021/6/20 20:26 .texlive2021
d----- 2021/5/24 18:52 .vscode
d-r--- 2022/3/1 19:37 3D Objects
d----- 2021/2/2 14:54 ansel
d-r--- 2021/1/29 22:34 Contacts
d----- 2021/11/28 16:13 copytranslator
d-r--- 2022/3/30 11:06 Desktop
d-r--- 2022/1/9 12:12 Documents
d-r--- 2022/3/30 11:00 Downloads
d-r--- 2021/2/4 16:59 Favorites
d----- 2021/2/8 16:48 Flash Center
d-r--- 2021/10/9 16:36 Links
d-r--- 2021/1/29 22:34 Music
d----- 2022/3/23 11:03 mytest
d-r--- 2021/8/5 22:49 OneDrive
d-r--- 2022/2/18 21:56 Pictures
d-r--- 2021/1/29 22:34 Saved Games
d-r--- 2021/1/29 22:36 Searches
d----- 2021/11/3 20:33 source
d----- 2021/10/9 16:35 UIDowner
d-r--- 2022/3/30 10:43 Videos
-a---- 2021/7/18 19:13 672 .condarc
-a---- 2021/8/23 16:06 161 BullseyeCoverageError.txt
-a---- 2021/5/11 17:19 1937346 get-pip.py
-a---- 2022/3/23 10:43 0 test1
要查看当前所在路径,输入:pwd 输出:
Path
----
C:\\Users\\dell
要查看环境变量,输入:Get-ChildItem env: 输出:
Name Value
---- -----
ALLUSERSPROFILE C:\\ProgramData
APPDATA C:\\Users\\dell\\AppData\\Roaming
CommonProgramFiles C:\\Program Files\\Common Files
CommonProgramFiles(x86) C:\\Program Files (x86)\\Common Files
CommonProgramW6432 C:\\Program Files\\Common Files
COMPUTERNAME DESKTOP-HURPF4U
ComSpec C:\\Windows\\system32\\cmd.exe
DriverData C:\\Windows\\System32\\Drivers\\DriverData
HOMEDRIVE C:
HOMEPATH \\Users\\dell
LOCALAPPDATA C:\\Users\\dell\\AppData\\Local
LOGONSERVER \\\\DESKTOP-HURPF4U
NUMBER_OF_PROCESSORS 12
OneDrive C:\\Users\\dell\\OneDrive
OS Windows_NT
Path C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPo...
PATHEXT .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.CPL
PROCESSOR_ARCHITECTURE AMD64
PROCESSOR_IDENTIFIER Intel64 Family 6 Model 165 Stepping 2, GenuineIntel
PROCESSOR_LEVEL 6
PROCESSOR_REVISION a502
ProgramData C:\\ProgramData
ProgramFiles C:\\Program Files
ProgramFiles(x86) C:\\Program Files (x86)
ProgramW6432 C:\\Program Files
PSModulePath C:\\Users\\dell\\Documents\\WindowsPowerShell\\Modules;C:\\Program Files\\WindowsPowerShell\\...
PUBLIC C:\\Users\\Public
PyCharm Community Edition D:\\pycharm\\PyCharm Community Edition 2021.1.1\\bin;
SystemDrive C:
SystemRoot C:\\Windows
TEMP C:\\Users\\dell\\AppData\\Local\\Temp
TMP C:\\Users\\dell\\AppData\\Local\\Temp
USERDOMAIN DESKTOP-HURPF4U
USERDOMAIN_ROAMINGPROFILE DESKTOP-HURPF4U
USERNAME dell
USERPROFILE C:\\Users\\dell
windir C:\\Windows
WSLENV WT_SESSION::WT_PROFILE_ID
WT_PROFILE_ID 61c54bbd-c2c6-5271-96e7-009a87ff44bf
WT_SESSION d7061c74-806b-4c75-8a42-bfcf23353b2d
ZES_ENABLE_SYSMAN 1
要查找文件或者程序的位置(比如搜索matlab程序的路径),输入:gcm MATLAB 输出:
CommandType Name Version Source
----------- ---- ------- ------
Application matlab.exe 1.0.0.1 E:\\MATLAB\\bin\\matlab.exe
gcm在当前目录和上述环境变量中搜索
要返回上一级路径,现在是C:\\Users\\dell,我们想返回C:\\Users
输入: cd..(2个点) 那么路径变成C:\\Users
此时输入:pwd 查看当前路径,输出:
Path
----
C:\\Users
要更改路径,比如进入D盘,输入:D:或者(cd D:)这路径变为:D:\\>
要进入某个文件夹,比如我D盘里有个文件夹叫skr,输入:cd skr 这时路径变为:D:\\skr>
返回默认路径,输入:cd ~ 这时路径变为: C:\\Users\\dell>
查看某条指令的帮助 输入 :help 某条指令 比如 help cd 输出:
名称
Set-Location
摘要
Sets the current working location to a specified location.
语法
Set-Location -LiteralPath <System.String> [-PassThru] [-UseTransaction] [<CommonParameters>]
Set-Location [[-Path] <System.String>] [-PassThru] [-UseTransaction] [<CommonParameters>]
Set-Location [-PassThru] [-StackName <System.String>] [-UseTransaction] [<CommonParameters>]
说明
The `Set-Location` cmdlet sets the working location to a specified location. That location could be a directory, a
subdirectory, a registry location, or any provider path.
You can also use the StackName parameter to make a named location stack the current location stack. For more inform
ation about location stacks, see the Notes.
相关链接
Online Version: https://docs.microsoft.com/powershell/module/microsoft.powershell.management/set-location?view=powe
rshell-5.1&WT.mc_id=ps-gethelp
Get-Location
Pop-Location
需要清空当前并返回首行,输入:clear
在某个路径中新建一个文件夹,比如在D盘里建立一个名叫skr2的文件夹(路径)(确保D盘里事先没有skr2)
先进入D盘路径 输入: D:
再输入: ni skr2 -type dir 输出:
目录: D:\\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2022/3/30 22:44 skr2
比如在skr2里新建一个demo.txt文档
进入skr2 路径 cd skr2
再输入:ni demo.txt -type file 输出:
目录: D:\\skr2
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2022/3/30 22:48 0 demo.txt
在demo.txt文档里写入内容
输入: sc demo.txt "say hello to my little friends"
则demo.txt 的文档的第一行为:say hello to my little friends
sc指令会覆盖之前的内容
比如想再上述文档中追加新的内容
输入: ac demo.txt hello
则demo.txt 的文档的第二行为:hello
输出文档内容,输入:type demo.txt 输出:
say hello to my little friends
hello
移动demo.txt到demo1.txt (确保事先没有demo1.txt文件)输入: mv demo.txt demo1.txt
复制demo1.txt到demo2.txt (确保事先没有demo2.txt文件)输入: cp demo1.txt demo2.txt
删除demo.txt 输入:rm demo.txt
将所有的demo文件删除后才可以将路径skr2删除
返回D盘路径,输入:cd ..
然后输入:rm skr2
可以将skr2文件夹删除。
以上是关于Windows终端(用的是powershell)中的vim输入全部是乱码的主要内容,如果未能解决你的问题,请参考以下文章
将Pycharm中Terminal使用Powershell作为终端
所有 powershell 终端的 Windows 高级审核设置