一些乱七八糟的东西
修改文件默认打开方式
自从用了ranger,就再也不想用其他文件管理器了
但是每当我从piiv上下载图的时候,点击“Show in folder”总是没有反应。。。
今天终于解决了这个问题
首先,当点击show in folder时chrome会调用xdg-open,使用其配置的文件夹默认打开方式。
因此,需要将ranger设为默认的文件夹打开方式。
找到ranger.desktop 文件,一般在/usr/share/applications 下,将其复制到~/.local/share/applications 下;
修改ranger.desktop: Terminal=false Exev=alacritty -e ranger
,此处alacritty
可替换为自己想用的终端模拟器;
修改~/.local/share/applications
目录下的defaults.list
或mimeapps.list
,添加/修改: inode/directoy=ranger.desktop
;
万事大吉了~
关于ranger, 如果未经配置,当从ranger中退出时并不会进入当前路径。比如,在/home/admin/ 路径下启动ranger,之后在ranger中进入了路径/home/admin/Downloads ,则退出ranger时会重新回到/home/admin 。如果选择使用内置的“在当前文件进入终端“,则实际上并没有退出ranger,只是又套娃🪆开启了一个终端。
在fish中可以添加以下function来使ranger在退出时进入当前文件夹:
#!/usr/bin/env fish
function ranger
command ranger --choosedir=$HOME/.rangerdir; set LASTDIR (cat $HOME/.rangerdir); cd "$LASTDIR" $argv
end
在bash中可以在~/.bashrc 中添加以下内容:
alias ra='ranger --choosedir=$HOME/.rangerdir;LASTDIR=`cat $HOME/.rangerdir`; cd "$LASTDIR"'
这样会在家目录下创建一个.rangerdir
文件,通过这个文件可以实现ranger退出时进入当前文件夹。
另外,使用xdg-mime query filetype XXX 可查看对应文件的mime-type,在deaults.list中添加类似上述的语句可以配置程序默认打开方式。
配置触控板
默认的没有给触控板配置轻触左键、双指轻触右键
需要自己配置下
安装xf86-inupt-libinput与xf86-input-synaptics
配置一下,将一下文件复制到/etc/X11/xorg.conf.d/70-synaptics.conf
Section "InputClass"
Identifier "Apple Inc. Apple Internal Keyboard / Trackpad"
Driver "synaptics"
MatchIsTouchpad "on"
Option "TapButton1" "1"
Option "TapButton2" "3"
EndSection
其中,TapButton1是单指轻触,后面的“1”代表左键
TapButton2是双指轻触,后面的“3”代表右键。
Latex 中文显示
按照archwiki上装完texlive-bin、texlive-most等等包后,一通操作,,,发现并不好使。。。
下载TexStudio,选项→构建→默认编译器 选择XeTex,好耶,能编译了!
但是还是不能显示中文!没有任何报错,就是不能显示中文,很烦!
最后搞来搞去,是少了个poppler-data
的包。。。
装好就ok了
自动挂载磁盘
10-29 台式机换了manjaro,不戳不戳,针不戳。
不过因为有两张磁盘,所以需要配置一下对机械硬盘的自动挂载。
修改/etc/fstab
文件
在文件的最后添加如下内容:
/dev/sda1 /data ext4 defaults 0 0
其中/dev/sda1
是要挂载的设备,/data
是挂载点
添加完后,执行mount -a
进行检查,如果设备被挂载上,则说明配置正确。
为分区加标签
在挂载完机械硬盘后, 为其设置一个标签:
sudo e2label /dev/sda1 HHD
交换 caps lock 与左 ctrl
创建文件/etc/X11/xorg.conf.d/00-keyboard.conf
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbOptions" "ctrl:swapcaps"
EndSection
交换普通 FN 键与功能键
我现在 (2021) 用的这台电脑是 MacBook Air 2017 款, 默认按 F1, F2, F3 等触发的是调整键盘亮度、声音等功能, 要用原本的F1, F2, ...,就必须要按 Fn+F1, ...,但是我想要直接就是原本的 F1, F2, ...
通过这个提示可以完成设置:
-
将以下内容添加到文件/etc/modprobe.d/hid_apple.conf 中(没有则创建);
options hid_apple fnmode=2
-
将
/etc/modprobe.d/hid_apple.conf
添加到/etc/mkinitcpio.conf
的FILES
一项中,将modconf
添加到HOOKS
一项中; -
手动重新生成
initramfs
mkinitcpio -p linux
重启电脑, 设置完成.
开机后自动启动NumLock
因为我使用的是Lightdm, 因此可以在启动LightDM的时候启动NumLock.
在/etc/lightdm/lightdm.conf
文件中添加以下内容:
[Seat:*]
greeter-setup-script=/usr/bin/numlockx on
其中如果没有numlockx这个程序, 则可以安装numlockx包.
开机与睡眠苏醒后恢复亮度
开机恢复亮度
开机亮度的恢复, 即恢复上次关机时的亮度.
首先编写以下自定义服务: brihgtness-revocer.service
[Unit]
Description=Recover Brightness after lightdm launched.
After=display-manager.service
[Service]
ExecStart=sh /home/corona/Software/myScript/bright/brightness_recover_from_abs.sh
[Install]
WantedBy=multi-user.target
Alias=brightness-recover.service
将该脚本放到/etc/systemd/system 下, 然后启动服务:
systemctl enable brightness-recover.service
systemctl start brightness-recover.service
唤醒后恢复亮度
每次睡眠前及从睡眠中苏醒后, 都会执行/usr/lib/systemd/system-sleep 中的脚本, 而安装 tlp 之后会有一个 tlp 相关的脚本, 在每次苏醒之后唤醒tlp服务, 而将恢复亮度脚本放到该路径下之后, 其执行会在tlp之前执行, 恢复的亮度之后又被tlp给调到最亮了
因此, 需要修改/usr/lib/systemd/system-sleep/tlp
, 将恢复亮度的部分添加到tlp resume
之后.
#!/bin/sh
# tlp - systemd suspend/resume hook
#
# Copyright (c) 2021 Thomas Koch <linrunner at gmx.net> and others.
# This software is licensed under the GPL v2 or later.
case $1 in
pre) tlp suspend ;;
post)
tlp resume
bright=`cat /home/corona/.abs_brightness`
echo ${bright} > /sys/class/backlight/intel_backlight/brightness
if test $? -eq 0; then
echo "[`date`] Brightness(value=${bright}) Successfully Recoverd."
else
echo "[`date`] Brightness(value=${bright}) Failed to Recover."
fi
;;
esac
但是其实这样做, 唤醒后还有一个亮度变为最亮的过程, 只不过会自动调回去.
将 tlp 卸载后发现不是 tlp 的问题...有点迷惑
另外每次 tlp 更新都会重写这个脚本...或许应该找一下更好的解决方案.
fontconfig 与 fcitx5 候选框部分字符乱码
fcitx5 字体
原本以为是 emoji 不能显示, 后来经过反复比对, 发现 emoji 都能正常显示, 不能显示的是生僻字...
一开始路走窄了...
可以在这个网页上康康是否支持生僻字.
fontconfig 设置
安装了一个中华书局宋体,
将字体文件放到 /usr/local/share/fonts
即可,
然后更新 ~/.config/fontconfig/ fonts.conf
:
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Noto Sans CJK SC</family>
<family>Noto Sans</family>
<family>Noto Color Emoji</family>
<family>中华书局宋体00平面</family>
<family>中华书局宋体02平面</family>
<family>中华书局宋体15平面</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Noto Serif CJK SC</family>
<family>Noto Color Emoji</family>
<family>中华书局宋体00平面</family>
<family>中华书局宋体02平面</family>
<family>中华书局宋体15平面</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>mononoki Nerd Font</family>
<family>FiraCode Nerd Font</family>
<family>Noto Sans Mono CJK SC</family>
<family>Noto Color Emoji</family>
<family>中华书局宋体00平面</family>
<family>中华书局宋体02平面</family>
<family>中华书局宋体15平面</family>
</prefer>
</alias>
<dir>~/.fonts</dir>
</fontconfig>
更新了 fonts.conf
之后, 执行 fc-cache -v
.
flatpak 应用的字体问题
flatpak vscode 的 UI 界面字体显示有些问题, 可以将上面的 fonts.conf
文件放到以下路径:
cd $HOME/.var/app/com.visualstudio.code/config
mkdir -p fontconfig && cd fontconfig
cp $FONT_CONF_PATH/fonts.conf ./fonts.conf
然后重启应用就可以了.
开机自动连接蓝牙
首先,bluetooth内核模块要有,安装blueman.
然后,编辑/etc/bluetootn/main.conf
文件,找到以下两个选项取消注释并设为以下值:
FastConnectable = true
AutoEnable=true
GPGME Error No Data
当在网络有问题(比如未登录)的情况下更新系统往往会出现这个错误.
解决方案:
sudo rm /var/lib/pacman/sync/*
sudo pacman -Syyu
格式化U盘
在 Windows 下, 格式化U盘十分简单, 但是在Linux下如果不安装一些特定的软件的话, 还是比较麻烦的.
首先需要删除原有分区:
sudo fdisk /dev/sdb # 注意这里不是sdb1等带数字的
d # 删除所有分区
w # 写入
格式化分区
sudo mkfs.vfat -L labelname /dev/sdb1
# -L是可选命令
# 此处是/dev/sdb1而非/dev/sdb
如果要格式化为NTFS
格式, 那么需要一个ntfs-3g
包
sudo pacman -S ntfs-3g
sudo mkfs.ntfs -Q -L labelname /dev/sdb1
制作archiso
为了能够在系统寄掉后可以进入 arch live root 环境以修复系统, 有必要定时制作archiso启动盘.
首先需要下载ArchLinux ISO镜像文件:
下载完后, 将其写入到 U 盘:
dd bs=4M if=path/to/archlinux-version-x86_64.iso of=/dev/sdx conv=fsync oflag=direct status=progress
注意需要/dev/sdx
没有挂载, 另外此处sdx
没有数字, 即并非sdx1
之类.
Go Proxy
# 注意这里是3个1, 而不是2个
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
windows 卸载部分系统应用
# 获取帮助:
get-appxpackage *Microsoft.GetHelp* | remove-appxpackage
# 闹钟与时钟
get-appxpackage *Microsoft.WindowsAlarms* | remove-appxpackage
# 人脉:
get-appxpackage *Microsoft.People* | remove-appxpackage
# 照片:
get-appxpackage *Microsoft.Windows.Photos* | remove-appxpackage
# 相机:
get-appxpackage *Microsoft.WindowsCamera* | remove-appxpackage
在远程服务器上使用 tensorboard
将远程端口与本地端口做一个映射:
ssh -L 8080:127.0.0.1:8080 xu_lzh@115.154.137.51
然后在服务器上打开 tensorboard:
conda activate my-env
cd path/to/log/files
tensorboard --port=8080 --logdir=./