一些乱七八糟的东西

修改文件默认打开方式

自从用了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.listmimeapps.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, ...

通过这个提示可以完成设置:

  1. 将以下内容添加到文件/etc/modprobe.d/hid_apple.conf 中(没有则创建);

    options hid_apple fnmode=2
    
  2. /etc/modprobe.d/hid_apple.conf添加到/etc/mkinitcpio.confFILES一项中,将modconf添加到HOOKS一项中;

  3. 手动重新生成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=./
posted @ 2023-01-09 12:44  昤昽  阅读(146)  评论(0编辑  收藏  举报