拯救者 Y9000p 安装双系统 Ubuntu20.04 卡在黑色转圈启动界面

2025-07-17
ubuntu20.04y9000p

现象十分复杂安装者昨晚使用 Rufus 制作 U 盘启动盘,并安装清华源的 ubuntu20.04.iso,成功进入 ubuntu 桌面后,使用 Softwares & Updates 安装 nvidia-driver-570. 重启电脑后:Grub 直接进入 Ubuntu 会卡在带有品牌图标、Ubuntu 字样和白色转圈的系统启动界面. 转圈未卡住.Grub Advanced Options 进入 5.15.0-197[maybe] kernel (Recovery mode) 和 5.15.0-93[maybe] kernel (Recovery mode) 会:大概率呈现若干文本 log 后卡住.其中有时包含 ACPI Error: AE_NOT_FOUND, while resolving 这样的四行报错.有时包含 Bluetooth 相关 error.小概率能进入紫色 TUI Recovery Menu其中大概率卡住,无法上下键移动选择项.小概率能上下键移动选择项,并进入命令行,可 sudo vi.Grub Advanced Options 进入较老内核的非 Recovery Mode,则可成功进入桌面.我的目标是让他能直接进入 Grub 默认的 Ubuntu.How did I solve this不要管 ACPI 和 Bluetooth 的报错. 我进入 Grub Advanced Options -> 老内核正常 Mode 的桌面,ref: AI & 搜索 ubuntu uninstall nvidia-driversudo apt remove --purge '^nvidia-.*'Softwares & Updates 安装 metapackage from nvidia-driver-535 (proprietary)sudo vi /etc/default/grub 并修改 quiet splash 所在字符串为 quiet splash acpi_osi=linuxsudo update-grubsudo apt install lightdm,弹出窗口中选择 lightdm.重启电脑.现在能正常进入 Grub 默认的 Ubuntu 的桌面了!注意:[who-did-the-job] 以上三个操作我无法确认是哪个有效

Ubuntu 22.04 和 20.04 安装搜狗拼音

2025-07-17
input-methodinput-sourcepinyinsogou-pinyinubuntu20.04ubuntu22.04

ref: https://www.zhihu.com/tardis/zm/art/615309698?source_id=1005以下刚刚为拯救者 Y9000p 双系统 Ubuntu20.04 成功安装输入法. 根据上次安装 22.04 输入法经验,应该也直接适用于 22.04.命令行: 注意 bash 并不能一次复制多行 apt install.sudo apt install fcitx sudo apt purge ibus sudo apt install libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2 libgsettings-qt1 sudo apt install -y libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2 sudo apt install -y libgsettings-qt1进入 Settings -> Region & Languages -> Manage ...选择 fcitx 并 Apply Systemwide.重启电脑.# don't `apt install`! sudo dpkg -i sogoupinyin_4.2.1.145_amd64.deb右上角键盘图标选择 Configure Current Input Method在新窗口中,左下角点击 + 键在新窗口中,取消 Only show current lang,搜索 pinyin 并添加 sogoupinyin.无需重启,直接 Ctrl + Space 切换到搜狗输入法

RoboTwin notes

2025-07-10
julyfunmanipulationnotesrobotwinsimulation

Menu数据集目录 https://robotwin-platform.github.io/doc/tasks/index.htmlSetup notesuv setup.[note] uv pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable" --no-build-isolationOK. all setup.Visualize collection processtask-config 仅含环境配置. bash collect_data.sh beat_block_hammer demo_randomized 0 中,demo_randomized 寻找环境 .yml,beat_block_hammer 则寻找 .py.数据集大纲HDF5 File: /home/julyfun/Documents/GitHub/RoboTwin2.0/data/beat_block_hammer/demo_randomized/data/episode0.hdf5 Content Outline: Group: endpose Group: joint_action Dataset: joint_action/left_arm (Shape: (116, 6), Type: float64) Dataset: joint_action/left_gripper (Shape: (116,), Type: float64) Dataset: joint_action/right_arm (Shape: (116, 6), Type: float64) Dataset: joint_action/right_gripper (Shape: (116,), Type: float64) Dataset: joint_action/vector (Shape: (116, 14), Type: float64) Group: observation Group: observation/front_camera Dataset: observation/front_camera/cam2world_gl (Shape: (116, 4, 4), Type: float32) Dataset: observation/front_camera/extrinsic_cv (Shape: (116, 3, 4), Type: float32) Dataset: observation/front_camera/intrinsic_cv (Shape: (116, 3, 3), Type: float32) Dataset: observation/front_camera/rgb (Shape: (116,), Type: |S16480) # 图像可能被编码为 Base64 字符串 Group: observation/head_camera Dataset: observation/head_camera/cam2world_gl (Shape: (116, 4, 4), Type: float32) Dataset: observation/head_camera/extrinsic_cv (Shape: (116, 3, 4), Type: float32) Dataset: observation/head_camera/intrinsic_cv (Shape: (116, 3, 3), Type: float32) Dataset: observation/head_camera/rgb (Shape: (116,), Type: |S21457) Group: observation/left_camera Dataset: observation/left_camera/cam2world_gl (Shape: (116, 4, 4), Type: float32) Dataset: observation/left_camera/extrinsic_cv (Shape: (116, 3, 4), Type: float32) Dataset: observation/left_camera/intrinsic_cv (Shape: (116, 3, 3), Type: float32) Dataset: observation/left_camera/rgb (Shape: (116,), Type: |S17777) Group: observation/right_camera Dataset: observation/right_camera/cam2world_gl (Shape: (116, 4, 4), Type: float32) Dataset: observation/right_camera/extrinsic_cv (Shape: (116, 3, 4), Type: float32) Dataset: observation/right_camera/intrinsic_cv (Shape: (116, 3, 3), Type: float32) Dataset: observation/right_camera/rgb (Shape: (116,), Type: |S12776) Dataset: pointcloud (Shape: (116, 0), Type: float64

flash.nvim with Neovim from Zero

2025-07-05
25flash.nvimlazy.nvimneovimvimvim-search

vim 模式下,想要跳转到屏幕上某个随机位置,并不是很方便. flash.nvim 是一个理想选择,与 easymotion, leap.nvim 相似但是更符合直觉.本文假设你:已经安装了 neovim可能仅使用 neovim 的 init.vim可能用过 easymotionflash.nvim 效果展示假设当前状态如下,光标在第 18 行,你想跳到第一个 neovim:按下 / n e o 后,会在所有匹配 neo 的地方显示一个标识字母,按下 q 跳转到第一个 neo 处:其实打下 / n 就会开始匹配,你输入几个字母就匹配几个字母. 原有的 / 搜索功能不受影响.如何安装 (Starting from installing lazy.nvim)注意 init.vim 和 init.lua 不能共存.将你的 init.vim 改名为 init2.vim.创建 init.lua,添加如下内容,它会加在你的 init2.vim,并安装 lazy.nvim 和 flash.nvim.local vimrc = vim.fn.stdpath("config") .. "/init2.vim" vim.cmd.source(vimrc) -- Bootstrap lazy.nvim local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not (vim.uv or vim.loop).fs_stat(lazypath) then local lazyrepo = "https://github.com/folke/lazy.nvim.git" local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) if vim.v.shell_error ~= 0 then vim.api.nvim_echo({ { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, { out, "WarningMsg" }, { "\nPress any key to exit..." }, }, true, {}) vim.fn.getchar() os.exit(1) end end vim.opt.rtp:prepend(lazypath) -- Make sure to setup `mapleader` and `maplocalleader` before -- loading lazy.nvim so that mappings are correct. -- This is also a good place to setup other settings (vim.opt) vim.g.mapleader = " " vim.g.maplocalleader = "\\" -- Setup lazy.nvim require("lazy").setup({ spec = { -- add your plugins here -- [flash.nvim] { "folke/flash.nvim", event = "VeryLazy", ---@type Flash.Config opts = { modes = { search = { enabled = true } } }, -- stylua: ignore keys = { { "s", mode = { "n", "x", "o" }, function() require("flash").treesitter() end, desc = "Flash Treesitter" }, { "<c-s>", mode = { "c" }, function() require("flash").toggle() end, desc = "Toggle Flash Search" }, }, } }, -- Configure any other settings here. See the documentation for more details. -- colorscheme that will be used when installing plugins. install = { colorscheme = { "habamax" } }, -- automatically check for plugin updates checker = { enabled = true }, }) 基于 flash.nvim 文档改动. search = { enabled = true } 这一行开启了 search 增强.<c-s> 似乎是用于 Toggle flash.nvim.添加上述脚本后,重新启动 nvim,会弹出安装窗口,过一会儿就装好了.其他功能flit 功能推荐. 这是默认开启的,可以增强你的 f 和 F.比如你正常地 f{,你就会跳到后面第一个 {(允许跨行)此时第一个 { 后所有的 { 都会高亮,如果你想跳到的其实是第三个 {,那么再按两次 f.不喜欢这个功能的话上面配置里的 opts = {} 可以加入:opts = { modes = { char = { enabled = false } } },treesitter 功能推荐. 在支持 treesitter 的环境下按下 s 可以显示附近作用域的首尾,按下 label 跳转过去.remote 功能不推荐,会 Ctrl + O 就用不着. 所以上面配置中我没有引入该功能.Postscript搜索功能正常支持中文字符.vim 插件我认为应该和 vim 原有键位贴近,不能离开了这个功能就不会用 vim 了,毕竟我们经常要在新电脑上用 vi 编辑东西.如果 git clone failed / checkout failed,可以尝试 .gitconfig 中加入 URL 替换 (works on my mac m1).[url "[email protected]:"] insteadOf = https://github.com/ [url "[email protected]:"] insteadOf = git://githu

7月3日让网站支持 Typst

2025-07-03
julyfunnotes

过程挺浪费时间的. 首先探索 Wypst 方案,发现支持不太行,很难成功 bun dev。Wypst 不维护了应该也是因为 typst 已经支持导出 svg 了,手动转义 AST 到 latex symbol 有点原始人了.Obsidian-wypst 更是依赖极其原始的 wypst:0.4.0。感觉 npm 这套依赖管理的 backward compability 和一致性不怎么样.谷歌找到 "@myriaddreamin/rehype-typst",尝试替代 rehype-mathjax。这是直接用 typst wasm 导出 svg. 但是这玩意儿怎么依赖 katex 呢,有点怪.起初渲染 typst 公式颜色不对,且独占一行. 使用 https://hanwen.io/zh/posts/use_typst_for_math_in_blog/ 中的 css + AI 写的 typst-inline 检测,看起来正常多了. 折腾了几个 commit 以后成功渲染 typst, 缺点是只支持 typst 而不支持 latex. 如果任何 $ 后不符合 typst 语法都会导致一篇文章无法部署.ps: 我不喜欢在博客里写个人感慨的东西。如果你在博客 Title 里说你写诗,那你就在博客里展示出来,show me the code.upd:Typst 群友 @纸夜 做的 Typst 前端集成决策树