Во-первых, всякий раз, когда я пытаюсь отредактировать любую из этих команд запуска sleep, они, кажется, не работают:
sleep 20; setxkbmap -option caps:none
или же...
sleep 20 && setxkbmap -option caps:none
И, во-вторых, если я удаляю команду sleep из всех команд запуска, а затем помещаю команду отключения Caps Lock вверху списка, она не работает, а другие работают ...
Все команды, если они выполняются в терминале, вне запуска приложений, работают нормально, поэтому я не уверен, почему они не работают при загрузке.
ОБНОВИТЬ
Основываясь на ответе @ Xen2050, я адаптировал предложенные им методы в работоспособное решение. Для двух команд запуска я использую эту форму:
bash -c "sleep 20; specific_command"
А остальные я оставил в качестве команд запуска по умолчанию. Это нормально, потому что машина загружается быстрее, а команда отключения Caps Lock работает согласованно.
ОБНОВЛЕНИЕ 2
Провел дополнительное исследование и выяснил, что xkbэто, вероятно, лучший способ отключить Caps Lock. Поскольку этот вопрос касался запуска приложений, принятый ответ действителен. Но если кто-то еще придет сюда в поисках отключения ключа Caps Lock в Ubuntu 16.04, вот несколько полезных советов:
Я пошел с редактированием /usr/share/X11/xkb/symbols/pc, но я думаю, что использование пользовательских переопределений, вероятно, является правильным способом сделать это (как предложено @quixotic):
GNOME любит принимать настройки xkb самостоятельно, поэтому вам нужно либо [убедить GNOME использовать ваши настройки] (http://unix.stackexchange.com/questions/66624/where-is-xkb-getting-its-configuration ) или [убедить GNOME оставить настройки клавиатуры в покое] (http://askubuntu.com/a/582498). для настройки макетов или параметров xkb лучше [создавать пользовательские файлы, чем изменять системные файлы] (http://superuser.com/questions/1133476/make-terminal-recognize-pageup-and-pagedown-when-remapped-to- различные клавиши / 1168603 # 1168603).
quixotic 7 лет назад
1
@quixotic Спасибо за ресурсы. Я посмотрю на это.
nicorellius 7 лет назад
0
1 ответ на вопрос
1
Xen2050
Я думаю, что файлы .desktop не запускают свои Exec=команды в полной / обычной оболочке, поэтому, если вы хотите использовать несколько команд, вам нужно явно запустить оболочку с этими командами. Например, это должно работать:
Спасибо за ответ и советы ... Я попробовал это, и, похоже, одна из моих команд запуска работает с этим методом, но с небольшим исключением. Я использую: `bash -c" sleep 20; specific_command "`. Однако две другие команды запуска возвращаются к своим «значениям по умолчанию», которые были установлены при установке. И, тем не менее, команда `setxkbmap` по-прежнему не работает, если другие используют команду` sleep` (или выполняются в оболочке, как вы предложили).
nicorellius 7 лет назад
0
Хм, может там какие-то пропущенные настройки или неправильный pwd? Я попробовал файл .desktop, который выводит некоторые команды в bash на файл, и `env` в основном такой же, как в терминале, но без TERM =, и он запускается в ~ / .config / autostart, тогда как` set` имеет разные SHELLOPTS & TERM = тупой и много функций там нет. Можно попытаться перенаправить stdout & stderr в файлы, если есть какие-либо сообщения, которые могут быть полезны, или запуск `bash -c" stuff "` в терминале имеет очень похожие настройки и легче видеть вывод.
Xen2050 7 лет назад
0
PS что "setxkbmap caps: none" требует некоторой очистки и переустановки работы, чтобы снова исправить capslock, я не использую setxkbmap регулярно, поэтому я не уверен, почему это не сработает. Также вы имели в виду, что две другие команды запуска не сохраняют новые настройки / новую строку Exec =? Я думал, вы имеете в виду, что они работают с настройками по умолчанию, но если файл .desktop не сохраняется должным образом, попробуйте отредактировать его, войдя в другую учетную запись, даже живую iso, и т. Д., Некоторые из моих настроек не «остаются неизменными», если залогинился, особенно настройки рабочего стола
Xen2050 7 лет назад
1
Спасибо @ Xen2050 за дополнительную информацию. Что вы используете, чтобы отключить Caps Lock? Я думаю, что вы в целом правы, так как после пары перезагрузок, когда я подумал, что все работает, я вижу, что моя проклятая клавиша Caps Lock загорелась ... В настоящее время единственный воспроизводимый способ, которым я достиг чего-то работающего, - это "спать" `setxkbmap caps: none` до тех пор, пока не будут выполнены другие команды. Но это плохо, так как клавиша Caps Lock работает, когда я вхожу в систему (кажется, что она отключена через несколько секунд после входа, например, в оболочке входа в систему), что является одной из причин, почему я хочу отключить ее в первую очередь.
nicorellius 7 лет назад
0
Моя блокировка заглавных букв начинается "выключено", и я не делаю ничего особенного, чтобы отключить ее, на самом деле мне пришлось некоторое время прочитать страницу руководства и поковыряться, чтобы снова заработала кнопка блокировки заглавных букв после того, как я вставил команду "caps: none" без действительно зная, что он будет делать (это выглядело достаточно безопасно ;-) Возможно, вы захотите запустить команду раньше, перед тем как войти в систему, у этого Q есть несколько способов запустить вещи при запуске https://askubuntu.com/questions/228304/ как-ду-я-запуск-а-скрипт-на-запуска
Xen2050 7 лет назад
0