Hexo 站点与 Windows Powershell

2024/06 更新:这篇文章又没用了,因为我从 Hexo 迁移到了 Hugo。以下为原先的正文。


目标

  1. 带着小破 Thinkpad 出门的时候能无痛 ssh 到服务器上
  2. 尽量容易/低阻力地更新博客站点页面

powershell 二三事

加载时间过长

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
Install the latest PowerShell for new features and improvements! https://aka.ms/PSWindows
Loading personal and system profiles took 1454ms.

也真好意思加载这么长时间

解决方案:把 Documents\PowerShell\Microsoft.PowerShell_profile.ps1 下面的 choco 加载代码注释了 (因为我已经用 choco gui 了)

# $ChocolateyProfile = "$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"
# if (Test-Path($ChocolateyProfile)) {
#   Import-Module "$ChocolateyProfile"
# }

handy features

  • 然后去 microsoft store 里下了一个 powershell 7.4 (中间思考怎么释放C盘空间去了

  • 有个小插曲是 powershell 的 tab 补全

    Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete
    

    这样就可以像 oh-my-zsh 那样 tab 后高亮选择填充文件了

  • 因为懒得安装vim:

    function vim { &"${Env:ProgramFiles}\Sublime Text\sublime_text.exe" $args }
    

注册 ssh key

  • 折腾了半天,目前这样的 .ssh/config 是好使的:

    Host xdroid_server
        Hostname [host domain]
        User xdroid
    #   IdentitiesOnly yes
        AddKeysToAgent yes
        IdentityFile ~\.ssh\private_key
    
  • 然后加了一个 windows terminal 的 profile,这样就可以一键登录到服务器上了

在 windows 下部署 hexo 环境

  1. 第一步是装 npm 环境,我这里用 pnpm,还能直接下载 node 的包,很方便

  2. 然后看了一眼 hexo 已经升级到 7.0 了(当年还是 hexo 从 2 到 3 有 api 的 breaking change),尝试 hexo g 编译了一下发现 WARN no layout found。搞了半天发现是没有 clone 我自己的主题文件,而且文件夹没有命名成是 _config.yml 里写的那个。

  3. 看文档的时候还发现 hexo g 可以加 -w 开关来监视文件变化,太有用了!

  4. 看了一下有类似 hexo-pro 之类的编辑器,不过想了想还是下次部署吧(毕竟静态文件是放 github 的资源服务器而非我自己的 vps 上的)。目前的解决方案是本地跑,当作一个好用的文本编辑器吧。