Install diffchar
(Github link для тех, кто использует автозагрузку плагинов). Начиная с версии 4.7, с включенным плагином Vim автоматически показывает более точные различия:
Вы можете нажать F7 (клавиатура по умолчанию) для переключения между обычной и плагином. Переназначьте с помощью:
nmap ToggleDiffCharAllLines
заменив
на соответствующий код клавиши.
Вы можете использовать больше цветов:
let g:DiffColors=100
К сожалению, это не работает через линии, насколько я могу судить. Однако, общие области остаются без подсветки (и сворачиваются, если становятся слишком длинными), так что вы можете воспользоваться этим.
Скопировано из моего сообщения на Vi и Vim Stack Exchange.
Не знаю почему, но проблема заключается в попытке удалить и добавить модуль при выходе из спящего режима .
Я столкнулся с той же проблемой, что и вы, и ваш скрипт fix-touchpad.sh
не работал, пока я не попытался удалить модуль перед переходом в спящий режим и добавить его обратно после.
Основываясь на этом ответе на форуме Fedora, это может быть что-то вроде:
$ cat /usr/lib/systemd/system-sleep/fix-touchpad.sh
#!/bin/bash
[ "$1" = "pre" ] && modprobe -r i2c_hid
[ "$1" = "post" ] && modprobe i2c_hid
exit 0
Я также нашел другой способ выполнения кода в режиме гибернации/возобновления, и он также работал только при удалении модуля перед переходом в режим гибернации . Как описано в Arch's Wiki Управление питанием #Перехватчики сна , вы можете создать службу systemd, которая запускается службой сна.
Опираясь на инструкции вики, я придумал следующее:
$ cat /etc/systemd/system/root-resume.service
[Unit]
Description=(un)load module i2c_hid when going to/from sleep
Before=sleep.target
StopWhenUnneeded=yes
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=modprobe -r i2c_hid
ExecStop=modprobe i2c_hid
[Install]
WantedBy=sleep.target
Служба должна быть включена с помощью systemd enable root-resume
. Обратите внимание, что ExecStart будет выполняться до sleep.target
, а ExecStop будет выполняться при возобновлении.
Проверьте пакет systemd-suspend-modules
в AUR . По сути, он определяет службу, которая выполняет Решение 1 для каждого модуля, указанного в файле конфигурации пользователя. Это может быть более подходящим для других модулей, поскольку «рекурсивно выгружает данные модули и все, что от них зависит» (https://github.com/parkouss/systemd-suspend-modules/blob/master/suspend-modules#L19).