사용자 지정 작성 키 시퀀스를 어떻게 추가 할 수 있습니까?


40

사용자 지정 작성 키 시퀀스를 어떻게 추가 할 수 있습니까?

예를 들어, 내가 좋아하는 것 Compose, |, >종류에 기호를.

나는 다음을 추가하려고 시도했다 ~/.XCompose.

# Import default rules from the system Compose file
include "%L"

# Custom definitions
<Multi_key> <bar> <greater> : "▸" U25B8 # Black right-pointing small triangle

그러나 xterm을 제외한 다른 곳에서는 새로운 시퀀스를 사용할 수 없습니다.

ibus-table-compose를 설치 한 다음 IBus에서 Compose 입력 방법을 활성화해도 문제가 해결되지 않았습니다. IBus는 많은 작성 키 시퀀스를 모방했지만 내가 만든 키 시퀀스는 아닙니다.


이제 기호를 어떻게 입력합니까? 키보드 레이아웃의 특정 키에 기호를 입력하는 데 사용하는 명령을 매핑 할 수 있습니다. 특정 키의 정확한 키 심을 찾으려면을 사용할 수 있습니다 xev. 그러나 물론 이것은 내 추측입니다.
Nitin Venkatesh 2016 년

3
I는 I가 keysym에 추가하여 설정할 수있는 사용자 정의 된 매핑 AltGr 키 +> 눌러서 입력 @nitstorm U25B8키 코드를 60하여 ~/.xmodmaprc. 타이핑하는 방법을 묻지 않습니다 ▸; 작성 키 시퀀스를 작성하는 방법을 묻습니다.
ændrük

답변:


7

다음을 포함하는 파일 ~/.XCompose( .XCompose"홈"폴더에 이름이 지정된 파일)을 만듭니다 .

include "%L"   # import the default Compose file for your locale
<Multi_key> <bar> <greater>     : "▸"

man 5 Compose이 파일의 형식에 대한 자세한 정보를 참조하십시오 .


2
산뜻한! X를 다시 시작하지 않고이 파일을 다시 읽을 수있는 방법이 있습니까?
Jeremy Kerr

1
이것은 유망한 것처럼 들리지만 ~/.XCompose재부팅 후에도 파일이 아무런 영향을 미치지 않는 것 같습니다. 이 작업을 수행 했습니까?
ændrük

@ Jeeremy : 확실하지 않지만 키보드 레이아웃을 다른 레이아웃으로 변경 한 다음 다시 작동 할 수 있습니다.
JanC

1
@ ændrük : Gtk / GNOME이 compose 키 설정을 어리석게 엉망으로 생각하는 것 같습니다 (예 : xterm에서 새 Compose 키 조합이 작동하는지 테스트 할 수 있음). 해결 방법이 문제가있는 메들 링을 우회하는 대체 입력 방법을 선택하는 것과 관련이 있다고 생각합니다. 이것뿐만 아니라 IIRC에도 유용하기 때문에 로케일 특정 작성 맵 등을 수정하기 때문에 그것에 대해 새로운 질문을 할 수도 있습니다.;)
JanC

1
현재 LTS 적어도 18.04 이 응답은 이제 변경 입력 방법 필요없이 작동한다.
ændrük

22
  1. 다음을 포함하는 .XCompose홈 디렉토리 ( ~/.XCompose)에 이름이 지정된 파일을 작성하십시오 .

    # import the default Compose file for your locale
    include "%L"
    
    <Multi_key> <bar> <greater>  : "▸"
    

    man 5 Compose이 파일의 형식에 대한 자세한 정보를 참조하십시오 .

  2. 다음에 추가하십시오 ~/.profile:

    export GTK_IM_MODULE="xim"
    

    우분투 18.04 (아마 다른 사람)에서는 다음을 대신 사용해야 할 수도 있습니다.

    export GTK_IM_MODULE="gtk-im-context-simple"
    
  3. 로그 오프했다가 다시 켜십시오. 또는 X를 다시 시작하거나 재부팅하십시오.


3
이 솔루션을 사용하면 더 이상 Ctrl-Shift-u를 사용하여 숫자로 유니 코드 문자를 삽입 할 수 없습니다. 그래서 이것은 Gnome 항목에서 ~ / .XCompose 파일로 구성된 X 항목으로 일반적인 것을 전환시킵니다. 대신 그놈 항목을 수정하는 방법이 있습니까? Ctrl-Shift-u 기능을 유지하고 싶습니다.
Alfe

2
@Alfe 우분투 포럼 의 맨 아래에 제안 된 UIM 사용 : 11.04에서 읽지 않은 .XCompose 파일 GNOME 은 데비안 jessie / sid의 기본 설정과 함께 작동합니다 im-config(사용자 정의는 (8) 참조 ). 즉, .XCompose 설정은 GTK (GNOME) 및 Qt (KDE) 애플리케이션에서 모두 작동하고 .XCompose 및 Ctrl + Shift + U는 GTK 애플리케이션 (Eclipse 등)에서 모두 작동합니다.
PointedEars

감사합니다! 그래서 당신은 단지 한 패키지를하거나 다른 구성 뭔가에 있었나요? apt-getuim
Alfe

1
나는 이것을 잠시 동안 실행하려고했지만 아무 소용이 없습니다. uim 패키지를 설치하는 것 외에 정확히 무엇을했는지 듣는 것이 매우 도움이됩니다. 적어도 이것은 귀하의 방식이 Ubuntu 12.04에서 작동하지 않는지 확인하는 데 도움이 될 수 있습니다.
Alfe

@dan_waterford 안녕하세요, 방금 이 질문을 했는데이 질문에 "중복 가능"했습니다. 그러나 귀하의 답변을 시도했지만 제대로 작동하지 않았습니다. 어떤 아이디어? :)
Owen_R

9

우분투 14.04에서 다음을 수행했습니다.

1) 설치된 uim소프트웨어 관리자를 사용하여, 다른 패키지 좋아 uim-xim, uim-gtk2, uim-gtk3uim-qt자동 설치됩니다. https://launchpad.net/ubuntu/+source/uim을 참조 하십시오 .

2) 다음 줄을 추가하여 환경 변수를 정의 ~/.profile하면 사용자 지정 작성 키 시퀀스가 ​​현재 사용자에게만 적용됩니다.

# Restart the X-server after making alterations using:
# $ sudo restart lightdm
# It seems only GTK_IM_MODULE or QT_IM_MODULE needs to be defined.
export GTK_IM_MODULE="uim"
export QT_IM_MODULE="uim"

~/.XComposeOP 의 -file은 1) Ubuntu 또는 2) 터미널에서 다음 명령을 실행하여 X 서버 만 다시 시작한 후에 작동해야합니다.

$ sudo restart lightdm

주의 : ~/.profile파일을 변경 한 후에 만 ​​다시 시작해야 ~/.XCompose하므로 다음에 응용 프로그램 (터미널, Gedit 등)이 시작될 때 변경 사항 이 적용됩니다.

환경 변수가 올바르게 설정되었는지 확인하려면 터미널에 다음 명령을 입력하십시오.

$ printenv | grep IM_MODULE

많은 감사합니다 :

사용자 지정 작성 키 시퀀스 정보 :

사용자 정의 키보드 매핑 정보 :

키보드 .Xcompose를 흉내내는 예제 파일 Window US International:

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.