Если Вы выполняете единственную команду (pwd
в Вашем случае) через ssh
, это не интерактивная оболочка, таким образом, поведение корректно, по-моему.
Необходимо установить Ваш PATH
в ~/.profile
или ~/.bash_profile
, не в ~/.bashrc
.
Как найдено в bash(1)
страница справочника:
PARAMETERS (...) Special Parameters The shell treats several parameters specially. These parameters may only be referenced; assignment to them is not allowed. (...) - Expands to the current option flags as specified upon invoca- tion, by the set builtin command, or those set by the shell itself (such as the -i option).
Так i
содержавшийся в $-
средства, что -i
опция использовалась (или автоматически устанавливалась оболочкой, будучи интерактивной).
В X11 (на консоли я не знаю) можно сделать это путем переопределения поведения Клавиши выхода. Я посмотрел на "сдвиг (break_caps)" определение, чтобы видеть, как это работает и адаптировало его.
Посмотрите на этот ответ на xkb для получения дополнительной информации о том, как/где поместить локально измененные файлы и загрузить их.
И для того, чтобы сделать, что Вы хотите, Вам нужно в локальном файле символов (например: ~/.xkb/symbols/mysymbols
) раздел как это:
partial modifier_keys
xkb_symbols "esc_breaks_caps" {
key <ESC> {
type = "ALPHABETIC",
actions [Group1] = [
SetMods(modifiers=none),
SetMods(modifiers=Lock,clearLocks)
]
};
};
и в локальном файле контурной карты (например: ~/.xkb/keymap/mykbd
; можно создать его с setxkbmap -print > ~/.xkb/keymap/mykbd
) изменитесь xkb_symbols
строка для добавления +mysymbols(esc_breaks_caps)
.
Можно теперь загрузить его: xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY
и нажатие Esc удалит состояние CapsLock (на самом деле, эффект происходит на выпуске Esc; я думаю, что только ключи модификаторов имеют непосредственный эффект; другие эффект после их выпуска.)
О, если Вы хотите также подкачать Клавиши выхода и клавиши Caps Lock; затем используйте это вместо этого (и Вы помещаете "+mysymbols (esc_swap_and_breaks_caps)" в свой mykbd файл):
partial modifier_keys
xkb_symbols "esc_swap_and_breaks_caps" {
replace key <CAPS> {
type = "ALPHABETIC",
symbols = [ Escape, Escape ],
actions [Group1] = [
SetMods(modifiers=none),
SetMods(modifiers=Lock,clearLocks)
]
};
replace key <ESC> { [ CapsLock, CapsLock ] };
};
обратите внимание, что физические ключи <CAPS>
и <ESC>
; <CAPS>
(ключ выгравировал CapsLock в Вашей клавиатуре), отправляют Escape и <ESC>
(ключ выгравировал Esc), отправляет CapsLock, с <CAPS>
(отправляющий Escape) также сбрасывающий capslock состояние
Добавьте эти строки к ~/.Xmodmap
:
clear lock
keycode 0x42 = Escape
Затем введите команду:
xmodmap ~/.Xmodmap
Ваша клавиша Caps Lock теперь повторно отображается на клавише Esc.
Также пройдите эту хорошую статью об Отображении CapsLock для Выхода в Ubuntu, которая, кажется, unix.se пользователь :)
Esc
и Capslocks
после этих изменений?
– mtk
20.02.2013, 13:57
ESC
введите CapsLock
функционируйте переключатели, и при нажатии CapsLock
введите ESC
команда отправляется (т.е. ESC
ключ повторно отображается на CapsLock
и CapsLock
ключ повторно отображается на ESC
). Моя цель с этим вопросом состоит в том, чтобы иметь нажатие CapsLock
ключ выполняет обоих ESC
функция (который это в настоящее время делает) и выключает CapsLock
функционируйте если и только если CapsLock
функция включена (т.е. не переключатель CapsLock
функция, а скорее отключают его если CapsLock
включен).
– dotancohen
20.02.2013, 14:43
Я не уверен, отвечает ли это на Ваш вопрос, но отобразить функцию Esc на клавишу Caps Lock, можно использовать это:
setxkbmap -option "caps:escape"