Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

'한글 모드로 시작'이 정상동작하지 않음 #40

Closed
y-kim opened this issue Jun 8, 2016 · 10 comments
Closed

'한글 모드로 시작'이 정상동작하지 않음 #40

y-kim opened this issue Jun 8, 2016 · 10 comments

Comments

@y-kim
Copy link

y-kim commented Jun 8, 2016

사용환경 Ubuntu 16.04 LTS, ibus-hangul 버전 1.5.0-1

기본 언어를 영어로 설정해 둔 시스템에서 영어(국제어) 키보드를 사용하기 위하여 ibus-hangul에서는 한글만 입력되도록 설정하고자 '한글 모드로 시작'에 체크하였습니다.

하지만 옵션에 관계없이 입력 소스 전환시 로마자 상태로 시작합니다.
기본 언어를 한국어로 변경할 경우 입력 소스 전환시 한글 상태로 시작합니다.

'한글 모드로 시작' 옵션이 적용되지 않는 상황으로 추측됩니다.

@changwoo
Copy link

저는 재현되지 않네요. 말씀하신대로 했는데 전환할 때 한글 상태로 됩니다.

@tribela
Copy link

tribela commented May 13, 2018

반대로 저는 영문 모드로 전환 후 다른 창에 갔다가 오면 다시 한글모드로 바뀌는 문제가 있습니다. 이미 초기화가 된 창에서 다시 초기화를 하는 것 같은데 해결 방법이 없나요?
브라우저와 터미널 등에서 주로 사용하는 문자셋이 달라(터미널은 영문, 브라우저는 한글) 창마다 다른 소스 사용 옵션을 켜 두었습니다.

@umbria
Copy link

umbria commented Jun 12, 2018

저도 동일한 문제가 있습니다. 독일어 자판을 함께 사용하는데요. 독일어 자판에서 Next Input source ( Super + Space)를 누르면, 한글로 가고 싶은데, '한글 모드로 시작'을 활성화 해도 다시 영문모드로 바뀌어버리네요.
사용환경 Ubuntu 18.04 LTS, ibus-hangul 버전은 어떻게 보는지 모르겠네요.

@changwoo
Copy link

아마도 재시작해야 적용되는 것 같네요.

@choehwanjin
Copy link
Member

Ibus의 "기본 설정" -> "고급" -> "모든 어플리케이션에서 동일한 입력 방식 공유" 옵션 상태를 확인해 주시면 좋겠습니다.

@changwoo
Copy link

src/engine.c:settings_changed() 에서 설정 값 변화 감시하는 기능이 필요할 것 같습니다.

@changwoo
Copy link

git 버전 기준으로 이 옵션을 설정에서 조정하면 바로 적용되지 않고 ibus restart하면 적용되는데요. 그래서 설정값 변화 감시하는 거랑 관계있다고 생각했습니다. 다른 원인이 있을까요?

@choehwanjin
Copy link
Member

네, 로직이 잘못된 것 같네요.
initial_input_mode 값은 ibus_hangul_engine_init() 에서 한번만 사용하면 되는 것이라서
스테이틱 변수로 캐싱할 필요가 없는 것인데, 캐시하고 있어서 그런 것 같습니다.
사용 특성상 settings_changed에서 감시할 필요까지는 없을 것 같습니다.
ibus_hangul_engine_init()에서 바로 g_settings에서 바로 값을 가져오면 될 것 같습니다.

@umbria
Copy link

umbria commented Jun 13, 2018

이렇게 많은 답변이 달아주셔 고맙습니다. 오늘 확인해보니 잘 되네요. 재부팅하니 되는거 같아요. 아무튼 고맙습니다.

@choehwanjin
Copy link
Member

ibus_hangul_engine_init() 에서 매번 GSettings 값을 가져오는 것이 성능상의 문제가 있을 것 같네요.
원래 로직대로 캐시하는 대신 settings_changed에서 업데이트하는 것이 좋겠습니다.

choehwanjin added a commit that referenced this issue Jul 28, 2018
initial_input_mode value also need to be updated on GSettings
"changed" signal. When a new input context is opened, it will read
initial_input_mode. So we need to update it.

#40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants