gomjellie / zsh-hangul

🇰🇷 터미널 한영전환 실수 방지 플러그인
MIT License
166 stars 1 forks source link

타이핑시 _convert_gksdud:9: bad math expression: operand expected at `한글' 에러 발생 #16

Closed say8425 closed 4 months ago

say8425 commented 1 year ago

https://github.com/gomjellie/zsh-hangul/assets/3258867/7d25fd4f-6f75-4a0b-94c8-e5f4a10a80a7

_convert_gksdud:9: bad math expression: operand expected at `ㅂ'

언제부턴가 위와 같은 에러가 발생하면서 작동이 안되고 있네요ㅠ

zsh 5.9 (x86_64-apple-darwin22.0)
// oh my zsh version
master (b06663df)

현재 사용중인 버전은 위와 같으며, zsh-hangul 도 최신 버전입니다

gomjellie commented 1 year ago

오류 제보 감사합니다! 확인해보겠습니다 (감기에 걸려서 시간이 좀 걸릴 수 있습니다)

eunchurn commented 1 year ago

저도 같은 이슈가 있어서 꺼놓고 쓰고 있습니다. 혹시 https://stackoverflow.com/a/66466076 와 같은 문제일 수 있을까요? oh-my-zsh 업데이트하다가 중간에 오류가 있던적이 있었는데 그 문제인지...

gomjellie commented 1 year ago

오늘은 기필코 확인해서 고쳐보겠습니다.... ㅠㅠ

gomjellie commented 1 year ago

문제를 재현하지 못하고 있어서 고치지 못하고 있는데, 혹시 고쳐주실 수 있을까요....? 🙇🏻 염치 불구하고 부탁드립니다 ㅠㅠ @eunchurn @say8425

gomjellie commented 1 year ago

https://github.com/gomjellie/zsh-hangul/blob/master/INSTALL.md#oh-my-zsh 문서처럼 oh-my-zsh 통해서 플러그인 설정하셨을까요?

say8425 commented 1 year ago
plugins=(
  asdf
  yarn
  aws
  git
  macos
  zsh-hangul
  zsh-autosuggestions
)

reply 가 늦어져서 죄송해요 맞아요 첨부해주신 방법대로 plugins 에 넣어서 한 3년전부터 사용하고 있었어요 약간 늦었지만, 이 자리를 빌어서 좋은 plugin 만들어주셔서 정말 감사합니다 🙇‍♂️

혹시 해서 zsh-hangul 을 pull 땡겨서 최신화해보고, plugins 순서도 변경해보고 여러가지로 시도해봤는데 동일한 에러가 발생하더라요 shell script 는 저도 별로 자신 없는데ㅠ 시간 나는대로 한번 살펴볼게요

say8425 commented 1 year ago

약간 비슷한 이슈인데 https://github.com/ohmyzsh/ohmyzsh/issues/9294#issuecomment-700260444 에서 디버깅 용도로 typeset -f -t __docker_plugins 타이핑을 주문하셨더라요

typeset -f -t _convert_gksdud

그래서 zsh_hangul 에서도 동일하게 커맨드했더니, 아래와 같이 떨어졌어요

+_convert_gksdud:2> echo
+_convert_gksdud:2> grep '--color=auto' '--exclude-dir=.bzr' '--exclude-dir=CVS' '--exclude-dir=.git' '--exclude-dir=.hg' '--exclude-dir=.svn' '--exclude-dir=.idea' '--exclude-dir=.tox' -o '"'
+_convert_gksdud:2> wc -l
+_convert_gksdud:2> xargs
+_convert_gksdud:2> let 'n_double_quote=0'
+_convert_gksdud:3> echo
+_convert_gksdud:3> grep '--color=auto' '--exclude-dir=.bzr' '--exclude-dir=CVS' '--exclude-dir=.git' '--exclude-dir=.hg' '--exclude-dir=.svn' '--exclude-dir=.idea' '--exclude-dir=.tox' -o \'
+_convert_gksdud:3> wc -l
+_convert_gksdud:3> xargs
+_convert_gksdud:3> let 'n_single_quote=0'
+_convert_gksdud:4> echo
+_convert_gksdud:4> grep '--color=auto' '--exclude-dir=.bzr' '--exclude-dir=CVS' '--exclude-dir=.git' '--exclude-dir=.hg' '--exclude-dir=.svn' '--exclude-dir=.idea' '--exclude-dir=.tox' -o '`'
+_convert_gksdud:4> wc -l
+_convert_gksdud:4> xargs
+_convert_gksdud:4> let 'n_back_quote=0'
+_convert_gksdud:6> [[ 0 -eq 0 ]]
+_convert_gksdud:7> [[ 0 -eq 0 ]]
+_convert_gksdud:8> [[ 0 -eq 0 ]]

+_convert_gksdud:9> BUFFER=_convert_gksdud:9: bad math expression: operand expected at `ㅇ'
sni-J commented 1 year ago

.zshrc에 source $ZSH/custom/plugins/zsh-hangul/zsh-hangul.plugin.zsh 추가하면 일단은 사용가능한 것 같습니다.

동일 환경(zsh 5.9 (x86_64-apple-darwin22.0))에서 동일한 오류 발생하여 아래와 같이 확인해보았는데요,

plugins=(
  git
  zsh-hangul
  zsh-syntax-highlighting
  zsh-autosuggestions
)

source $ZSH/custom/plugins/zsh-hangul/zsh-hangul.plugin.zsh  # <- 추가

plugins에 zsh-hangul이 있어도 정상적으로 설정되지 않는 것 같은데요, Shell에 대해서 잘 알지는 못하다보니 이 지점에서 발생하는 문제인 것 같긴 하지만 정확히 어떤 문제인지는 잘 모르겠습니다😓

say8425 commented 1 year ago

오류 상황에서 source $ZSH/custom/plugins/zsh-hangul/zsh-hangul.plugin.zsh을 실행하였을 때에도 정상적으로 동작 확인

@sni-J 와우! 해결 실마리를 찾아내셨군요! 정말 감사합니다 🙇‍♂️

어느 시점에서 zsh plugins spec 이 바껴서, 수동으로 source 커맨드 해야하는 상황에 봉착한 거 같군요 zsh releases 에서 plugins 관련 deprecated 나 critical changes 가 있었나? 확인해보면 될 거 같네요

저도 시간 나는대로 한번 찾아볼게요 다시 한번 도움 주셔서 감사합니다