5.4 KiB
各种开发工具配置
Indium
Indium 是一个可以在 Emacs 里直接调试运行在 Chrome 中的 JavaScript 的软件。
感觉双屏用这个软件应该会很爽。安装使用步骤如下:
安装服务端
npm install -g indium
安装 Emacs 客服端
;; 直接从melpa源里安装
(require-package 'indium)
;; 配置
(require 'indium)
(add-hook 'js-mode-hook 'indium-interaction-mode)
indium 配置文件: .indium.json
{
"configurations": [
{
"name": "Indium Demo",
"type": "chrome",
"host": "0.0.0.0",
"post": 9222,
"url": "http://0.0.0.0:3000"
}
]
}
配置项说明:
name: 随便起一个就好
type: Chrome 调试直接写 chrome 就行了,其他参考Indium Setup
host: 本地调试地址
port: Chrome 的调试协议端口号,和项目无关,和 Chrome 的启动参数有关
url: 项目的首页地址,按项目设置
启动 Chrome
在命令行里启动 Chrome 的时候带上参数
chrome --remote-debugging-port=9222
在 Gentoo 里面,自己编译的 Chromium 中,有个配置文件 /etc/chromium/default ,
其中有 CHROMIUM_FLAGS 配置项,将其设置为上面启动参数的内容即可。即:
CHROMIUM_FLAGS="--remote-debugging-port=9222"
开始调试
在要调试的 JavaScript 文件中执行 Emacs 命令 indium-connect 即可开始调试
(indium-connect)
用快捷键或 Indium 插件提供的命令加入断点,即可开始愉快的调试了。
更多用法参考Indium手册。
Input method
有时候输入法在 firefox 中不工作,这是因为设置不对造成的,通过查询资料,最终
在 archwiki 中找到方法,将 .xprofile 文件中的
export XMODIFIERS=@im=SCIM
export GTK_IM_MODULE="scim"
export QT_IM_MODULE="scim"
改成
export XMODIFIERS=@im=SCIM
export GTK_IM_MODULE="xim"
export QT_IM_MODULE="scim"
即可解决该问题。
rime升级问题
librime 升级到 1.5.3 版本时, fcitx-rime 无法使用,同时在 Emacs 中通过
pyim 使用 rime 输入法也没法工作,通过安装 ibus-rime 测试,发现也不工作,
但将 librime 降回 1.4.0 版本时,汉字可正常输入,故判定该问题是新版本的
librime 引起到。
由此,将 librime-1.5.3 加入到 package.mask 中使其不升级,问题解决
[2019/8/24]今天发现上面的问题并不成立,这段时间在网上搜索,并没有发现相似的问题,
故怀疑是 librime 配置的问题,最终发现在 installation.yaml 中,
有 rime-version: 1.4.0 这样的配置,想到是否 librime 升级之后是否需要重新生成
用户词库相关的文件,将之前的词库删除后重启 fcitx 输入法发现, librime-1.5.3
能正常工作了。该问题解决。
结论: 升级 librime 后,需要删除相关词库数据,重新生成
双系统时间问题
Linux 和 Windows 双系统时区不统一的问题,该问题是因为兩个系统的时区标准
不同, Windows 系统显示的是 BIOS 时间, Linux 则是将 BIOS 时间作为
UTC 时间,具体显示的是各个地区的时间。
解决办法为,修改注册表,使 Windows 也采用与 Linux 相同的时间策略,修改
代码为
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v
RealTimeIsUniversal /t REG_DWORD /d 1
Firefox播放网易云音乐问题
不知道从哪个版本开始,Firefox播放网易云音乐的声音很奇怪,通过网络查询,
是 MSE 的问题,在浏览器这中禁用 MSE 即可!禁用方法:
- about:config -> media.mediasource.enable 改成 false 即可
- 现该问题网易云音乐已修复该bug
pcmanfm安装不上到问题
安装 pcmanfm 时发现, libfm 和 menu-cache 之间出现了循环依赖问题,
导致安装这两个 package 的时候会安装不上,并且依赖这两个 package 的软
件由于这两个 package 装不上,也会无法安装,经上网查询,早在 2017 年
8 月的时候就有人提出了相同到问题,当时的 libfm 版本是 1.2.5 ,并且
libfm 官方已经修复了该问题,现在在 libfm-1.3.1 中再次出现该问题,解决
办法就是在要安装 libfm 时,先安装 libfm-1.2.5 ,然后通过升级的方式将
libfm 升级到 1.3.1 版本即可。
lsp clangd
配置 clangd 需要在项目根目录下创建一个 compile_commands.json 文件,
其模板如下所示:
[{
"directory": "project directory",
"command": "clang -g -pthread -I<header file directory>",
"file": "main.c"
}]
其中 command 参数中的 -I 可以有多个,表示从多个文件夹下导入头文件。