系统安装和重装记录
鉴于笔记本可能还有潜在问题,重装系统的风险较高,这里记录一下系统重装的主要流程,以及日常使用的主要软件等,便于恢复。
准备工作
关于账号问题,目前使用outlook个人邮箱的微软账号联网登录,不使用本地账号登录,便于同步。
如果已经使用了本地ASUS管理员账号登录,可以重新添加一个联网的微软账号,然后将联网账号设置为管理员,反过来删除AUSU账号。
清理预装软件
- 杀毒软件迈卡菲
- 华硕大厅,华硕管家等
- 极智浏览器
- office365,自带的office套件(只能完整使用几天,不如直接卸载重装)
- 预装的其他没用的东西
升级系统
默认安装的系统很可能是家庭中文版,首先随便找一个密钥升级为专业版,然后下载英文语言包,切换为英文版系统。 这里选择在安装其他软件之前切换语言,避免在中文系统中安装软件时残留了很多中文信息(注册表,右键菜单,开始菜单等)。
系统本身在切换中英文时,就有很多的中文信息残留,处理办法没有找到。有的必须的办公软件(QQ,百度网盘等)只支持中文版,这是没有办法的。
Windows在升级专业版并切换到中文版之后,会出现中文字体显示错误的问题,典型的现象是在Edge浏览器的输入框中输入门这个汉字,有时会显示成日文字体,点被换成了竖线。 因为对于英文版系统,在显示中文时的查找顺序中,日文字体在中文字体之前。
解决办法是破坏性的:直接修改注册表,查找如下的项 1
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts
删除了 Yu Gothic 开头的 4 个 和 Microsoft JhengHei 开头的 3 个日语字体。 这可能导致当前系统在日语显示上的字体问题,但是我不需要显示日文字体,无所谓。
在切换英文版之后,将区域设置改成新加坡,避免一些软件的区域限制问题,然后将当前设置复制到新用户和欢迎页面上。
对non-unicode程序需要的代码页,仍然保留为简体中文(代码页chcp 936
),不选择启用beta性质的utf-8代码页,否则有的中文软件和中文脚本无法正常工作。
文件目录
对于文件管理器,必须进行几处修改:显示文件后缀名,显示隐藏的文件和文件夹,不显示系统保护的文件夹,关闭对磁盘的Bitlocker加密保护(磁盘的图标有个锁)。
在文件系统中划分3个磁盘:C盘是系统盘,D盘是应用和编程,E盘是文档数据等,每一个盘约500G。对于新内容的保存位置,在设置界面中全部改成E盘。
在文件管理器中,对于几个有图标的特殊文件夹(后三个基本上是空文件夹)
- Desktop
- Documents
- Downloads
- Music
- Pictures
- Videos
在它们的属性页面中将其改成E盘中的路径,例如E:\<user>\Desktop
。
E盘用户名目录下的主要文件夹结构为:
- Desktop
- Downloads:默认下载位置
- QQDownloads:QQ下载文件位置
- WechatDownloads:微信下载文件位置
- BaiduNetdiskDownload:百度网盘下载文件位置
- Documents
- MATLAB
- Wolfram Mathematica
- Tencent Files:腾讯软件的数据库位置,不是下载文件位置
- Powershell:关于pwsh的插件和配置文件位置
- ...
- Zotero7:Zotero数据库位置,文献的PDF实际存储在里面
- Music, Pictures, Videos:通常是空的
在安装了主要软件之后,D盘根目录下的主要文件夹结构为:
- Dropbox
- OneDrive
- WSL2
- BlogBase:Hexo博客
- Home:启动powershell时的默认位置,用来替换C盘中的家目录
- ProgramHuge:大型软件
- ProgramMain:主要软件
- ProgramLang:编程相关软件
- ProgramSmall:小型或绿色软件
- ProjectBackup:项目备份位置,对一些重要的项目压缩备份
- ProjectRoot:项目文件夹
- Develop:与学习无关的项目
- Work:与学习强相关的项目
- Test:简单的测试,例如TestPython,TestJava等
- ProjectTemp:临时的项目文件夹,主要是从Github下载下来学习的仓库
记录一下目前(2024年9月5日)几个软件文件夹的目录。
1 | - ProgramHuge/ |
主要软件
首先列举一下日常使用的大型软件:(软件安装包比较大,下载安装比较麻烦的)
- TeXLive 2024:安装包约5G,可以从镜像站下载,安装过程大约半个小时,安装调整一下安装位置即可,并且不建议精简其中的组件,全套安装比较省事;(后续还需要在系统中安装字体)
- MATLAB 2023b:由于被禁了,选择下载破解版本,具体流程见下文。
- Mathematica 14.0.0:本体安装包约2G,中文帮助文档约5G,(USTC正版软件提供了Mathematica,但是版本不是最新的),这里选择Mathematica 激活指南提供的资源,包括通过百度网盘获取的安装包和在线注册机。先安装本体,然后安装中文帮助文档,注意只有软件自身使用中文时,才会调用本地的中文帮助文档;
- Office:直接从USTC正版软件下载一个最新版,使用USTC正版软件提供的KMS激活脚本(管理员打开)激活即可,可以使用个人账号登录。
MATLAB的安装和激活操作流程如下(参考激活指南,需要断网操作!)
- 解压并装载iso文件,点击
setup.exe
启动安装(教程中使用的是管理员运行,但是我没有用) - 安装时选择使用文件安装密钥进行安装,输入资源包中提供的一串密钥数字
- 使用许可证文件
license.lic
- 修改安装位置,正常完成安装
- 找到安装目录下的
\bin\win64\matlab_startup_plugins\lmgrimpl
目录,将里面的动态库libmwlmgrimpl.dll
替换为资源包中的同名文件
基础的工具软件:
- Notepad3:用来代替默认记事本,改一下配置,开启显示:tab,空格,换行符(LF/CRLF);
- everything:比微软提供的搜索好用无数倍
- Typora:它限制只能支持两台设备激活,配置中值得修改的是换行符还有图片的处理
- SumatraPDF:安装版即可(绿色版可以放到U盘里),配置中值得改的是默认打开方式和是否启用tab,为了VS Code的双向跳转,将它的路径也添加到环境变量PATH;
- 火绒安全:这个不需要什么配置,改一下安装位置即可;
- Bitwarden(以及edge的Bitwarden插件):无法自定义安装位置,并且初次登录时需要的真人验证很恶心;
- Bandizip:使用的是无广告的旧版本6.26,使用祖传安装包进行安装,设置一下对压缩包的代码页自动检测,并且关联常见的压缩包格式;
- 百度网盘:先安装这个是因为Mathematica之类的软件必须通过百度网盘下载,在网页都下载不了,安装后改一下默认下载位置;
- Clash for Windows:作者虽然删库跑路了,但是还是可以用的,下载(英文版或中文版)安装后,加上订阅链接即可,先安装这个是因为有的软件使用的是谷歌账号登录,必须先安装Clash;
- Git:安装到合适的位置,注意它不是压缩包而是一个安装程序,有很多的安装选项,目前的选项为使用vim编辑提交文本,不将Git附带的那些工具所在的路径加入环境变量PATH。
还有日常高频使用的软件:
- QQ(NT版),改一下安装位置,登录之后再改一下默认下载位置(
E:\<user>\QQDownloads
)和聊天记录保存位置(E:\<user>\Documents\Tencent Files
); - 微信,改一下安装位置,登录之后再改一下文件下载位置(
E:\<user>\WechatDownloads\WeChat Files
); - QQ影音,这个在官网已经下架了,使用祖传安装包进行安装;
- Zoom,安装时无法改变位置,只能装在默认位置,日常使用并不需要科学上网;
- Onedrive,通过个人账户邮箱登录使用,改变一下Onedrive在文件系统中的位置(
D:\OneDrive
);(个人版的Onedrive只有5G的空间,在考虑要不要付费) - Dropbox,不管是下载还是使用都需要科学上网,改变一下Dropbox在文件系统中的位置(
D:\Deopbox
)。 - Edge,这是系统默认的浏览器,升级一下版本,然后在登录个人微软账号同步书签和收藏等,最后加上几个插件,改一下默认下载位置即可。
- Steam 和 Wallpaper Engine:先下载Steam,然后在Steam中下载Wallpaper Engine,注意一下Steam和Wallpaper Engine的存储位置即可,顺便把壁纸的声音关掉。
- PicGo:图床软件,配置仓库为
fenglielie/fenglielie.image
,存储路径为img/
,需要设置一下Token,测试正常上传即可。
在微软应用商店中(如果微软应用商店因为Clash无法联网,在UWP应用网络回环中进行配置),有几个实用小工具
- QuickLook,快捷预览小工具,可以装几个插件,例如预览
.ipynb
文件支持和预览目录支持。 - Snipaste,快速截图小工具
- DevToys
- PowerToys,这个很好用,各种小工具集合
除此之外,还有一些低频使用的软件,选择暂时不安装
- 音乐软件,视频软件
- XShell和Xftp
- 腾讯会议,暂时用不上,先不装了
这里有几个绝版的软件安装包:QQ影音安装包,Bandizip无广告旧版安装包,Clash for Windows安装包,目前在Onedrive和百度网盘中备份。
VS Code 配置
核心代码编辑器——VSCode,下载完成后安装改一下位置即可,注意这里VS Code的位置会对其他地方的配置产生连带的影响,例如LaTeX的双向跳转功能。
登录Github账号自动同步,主要同步的内容是插件和settings.json。
关于VS
Code的配置实在是太复杂了,因此这里不做详述,但是目前将profile导出为本地文件
fenglielie_profile_<date>.code-profile
,并在Onedrive中备份。
WSL2 安装与配置
这部分单独用一篇博客记录。
Cpp 编程环境配置(MinGW)
关于C++的编程环境配置,还有单独的博客进行记录。
在Windows上写C/C++代码只有两类选择:MSVC 和 MinGW,暂时没有必要安装巨大的Visual Studio,因此选择配置 MinGW 的环境。 MinGW的具体实现有很多,在MinGW downloads提供了很多种不同的实现,下面选择其中两个:
- LLVM-MinGW:这是基于LLVM的,它提供了clang,clang++以及配置的lldb,clangd等工具;也提供了gcc,g++,但其实就是clang和clang++换了个名字。在下载页面选择
llvm-mingw-<date>-ucrt-x86_64.zip
即可。 - WinLibs:这个提供了包含或者不包含LLVM/Clang/LLD/LLDB的版本,它提供的gcc和clang分别属于GNU和LLVM,而不是简单的换皮。
这两种实现提供的都是编译完成的二进制文件的压缩包,只需要将其解压到合适位置,然后将bin目录添加到环境变量PATH即可,安装完成后可以顺便测试一下它们的版本
1
2
3
4
5gcc -v
g++ -v
clang -v
clang++ -v
clangd -v
至于很多教程中仍然推荐的sourceforge下载的离线安装程序,版本实在是太低了。
在下载页面通常一次性提供了很多名称不同的安装文件,对于标准库可以选择ucrt和msvcrt(建议选择ucrt),架构必须选择含有x86_64(或x64,amd64)的安装文件或压缩包,对于线程模型可以选择POSIX和MCF(建议选择POSIX)。
对于复杂的C++项目,有必要使用CMake来组织项目,使用Ninja替换Make来加速编译,这两个工具都需要单独下载,直接解压放置到合适的位置,然后添加到环境变量PATH。
虽然前面的LLVM-MinGW和WinLibs提供了配套的CMake,甚至还可能有Ninja,但是这里还是单独下载了一遍。
Python 编程环境配置(Miniconda)
这部分单独用一篇博客记录。
Zotero 文献管理
这部分单独用一篇博客记录。
字体配置
虽然Windows有很多默认中文字体,但是为了更好地在TeXLive中编译中文文档,还需要安装常见的中文字体,例如几个开源的方正字体,还有一整套思源中文字体等,字体必须全局安装才能被TexLive使用,安装之后使用fc-cache -fv
刷新字体缓存。
对于编程字体,选择安装Meslo字体,在Windows
Terminal中使用MesloLGM Nerd Font
。(在VS
Code中使用Cascadia Code
字体)
2024年9月5日更新:这些字体全部都打包在百度网盘中保存。
Clash 配置
由于clash每次更新订阅的时候都会自动应用所有规则,但是我们有时需要对规则进行自定义的修改,此时就非常不便。 可以考虑在规则之上添加parser自定义规则,它的作用是在每次更新后自动执行javascript代码,对规则以预处理的方式进行修改, 达到添加自定义规则,防止更新覆盖的目的。
下面的代码的作用是移除所有含有bing的规则 1
2
3
4
5
6
7
8parsers:
- url: <url>
code: |
module.exports.parse = async (raw, { yaml }, { name, url, interval, selected }) => {
const obj = yaml.parse(raw);
// 过滤掉包含 "bing" 的规则
obj.rules = obj.rules.filter(rule => !rule.includes("bing"));
return yaml.stringify(obj);};
其中的url改为对应链接即可。
dotfiles同步
通过dotfiles仓库维护并同步的一些配置, 主要包括tmux,vim,git,fish,pwsh和clangd等的配置文件。
在Windows上的使用:
- git直接安装即可,dotfiles提供了用户级的.gitconfig,以软链接的形式放置在用户主目录
C:\Users\<user>\
下; - git使用的vim是git自己附带的,不单独安装Windows版本的vim,在dotfiles的配置中,pwsh提供的vim命令实际上是记事本;
- dotfiles还提供了.clang-format,.clang-tidy和.editorconfig,以软链接的形式放置在
D:\ProjectRoot\
目录下。 - tmux和fish在Windows上不支持;
关于pwsh的配置:
pwsh主要需要的如下位置的配置文件由dotfiles提供
1
E:\<user>\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
除此之外还需要安装插件,至少需要安装如下插件
- 通过winget安装oh-my-posh
- 通过winget安装posh-git
- 安装Zlocation,优化目录跳转
在dotfiles中提供了基于oh-my-posh定制的主题mzcy_pwsh_utils,直接使用即可