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

在MacOS系统的Neovide编辑器中无法输入全角符号 #827

Closed
JianleiZhang opened this issue Dec 29, 2023 · 17 comments
Closed

在MacOS系统的Neovide编辑器中无法输入全角符号 #827

JianleiZhang opened this issue Dec 29, 2023 · 17 comments

Comments

@JianleiZhang
Copy link

在其他软件输入全角符号正常,只有在Neovide里无法输入全角符号。

开启输入法,输入逗号。上屏可以看到是半角的。
293137857-9bbb774b-9c3d-4cd1-8130-b9065e02c055

但是如果输入完中文,比如"quan"后面直接输入逗号,上屏的是全角符号。
293137821-35d66fc5-a3be-4025-b5a2-6a1bd933d5e6

我不确认这是否是输入法的问题,还是Neovide的问题。先在这提交吧。

@hetaozdh
Copy link

情况类似,在Neovide下首先发现的,但是随后发现在终端环境下使用Vim和Neovim仍然无法输入全角标点。
在Vim和Neovim下均无法正常输入全角符号,例如输入“。”却显示为“.”
在Vim和Neovim使用的背景终端环境下可正常输入全角符号。
使用Mac自带的中文输入法可以正常输入

@kola-web
Copy link

在alacritty中也会出现类似错误,感觉他们有一个共同点,neovide和alacritty都是用rust编写的
但是在wezterm(rust编写的)中却没有类似错误

@JianleiZhang
Copy link
Author

在alacritty中也会出现类似错误,感觉他们有一个共同点,neovide和alacritty都是用rust编写的 但是在wezterm(rust编写的)中却没有类似错误

已经让我改变用空格上屏的习惯了。

@kola-web
Copy link

#792 有人处理这个问题了,但是官方没有合并呢

@groverlynn
Copy link
Contributor

在alacritty中也会出现类似错误,感觉他们有一个共同点,neovide和alacritty都是用rust编写的 但是在wezterm(rust编写的)中却没有类似错误

應該和rust沒有關係,而是開發者完全不瞭解IMK的工作原理,自作聰明地增加了是否攔截鍵盤事件的判定,判定條件是IMK是否有inline buffer。#792 加入了反劫持,已解決現有bug。但是説不定他們下個更新又會有新的抽風設定

@ShikiSuen
Copy link
Contributor

@groverlynn 這怎麼聽著這麼像 MS Office 2011 Word?
(就是說非得在內文組字區裡面顯示點什麼,否則 IMK 處理過(返回 true)的 NSEvent 也會被送給客體。)

@groverlynn
Copy link
Contributor

groverlynn commented Feb 18, 2024

@groverlynn 這怎麼聽著這麼像 MS Office 2011 Word? (就是說非得在內文組字區裡面顯示點什麼,否則 IMK 處理過(返回 true)的 NSEvent 也會被送給客體。)

是的,IMK處理完的直接被吃掉了。而且有正着吃(沒有inline buffer就吃掉)也有反着吃(有inline buffer就吃掉)以及邊吃邊吐(IMK處理結果和他們的處理結果一起出)

@ShikiSuen
Copy link
Contributor

@groverlynn 感谢您提供的资讯。请问您方便举几个例子吗?
看来我得丰富一下威注音输入法的客体管理器对黑名单对象的分别处理方式了,居然有反着吃的。

@ShikiSuen
Copy link
Contributor

@groverlynn 已經發現了一個可能在反著吃的:Visual Studio for mac。
(不是 VSCode,VSCode 的問題是內文組字區不能自動換行。)

@epheien
Copy link

epheien commented Jul 4, 2024

在alacritty中也会出现类似错误,感觉他们有一个共同点,neovide和alacritty都是用rust编写的 但是在wezterm(rust编写的)中却没有类似错误

我在 neovide 和 alacritty 出现类似的同一个问题, 现象是, 我在 macOS 的拼音输入法选择中文使用半角标点符号, 结果是在拼音输入法下只能输入全角标点符号, 其他的 iterm2, kitty 都没有这个问题.

@kola-web
Copy link

kola-web commented Jul 5, 2024

感觉这个不是rime的问题,这个是alaritty的问题,我现在直接不用alacritty了,对我来说rime的vim_mode无法替代,但是alactitty可以用kitty替代

@ShikiSuen
Copy link
Contributor

Alacritty 的问题要追溯到他们用到的某个 Rust 跨平台 UI 模组。
我针对那个模组提供了个修复 PR,但这个 PR 拖了实在太久才被通过。
而这时我已经全然忘记接下来在 Alacritty 里面该怎么继续修这个问题了,所以 Alacritty 的问题只能搁置。

@ksqsf
Copy link
Member

ksqsf commented Sep 19, 2024

该问题目前仍存在。系统输入法无此问题,除此之外我测试的其他所有输入法(小企鹅、搜狗、微信、落格、清歌)都有完全相同的行为,因此大概率是程序本身的问题。

@ksqsf
Copy link
Member

ksqsf commented Sep 23, 2024

我 4 天前向 winit 报告了该问题( rust-windowing/winit#3925 ),然而暂时没有任何回音。个人暂时没有时间调试改进 winit。看到此消息的高手如有兴趣可以去帮帮他们。

@imroc
Copy link

imroc commented Oct 15, 2024

怎么还没修复?我是在 Neovim 中重度编辑 markdown 的用户,经常输入中文标点,但用 Alacritty 一直不行,切回 iTerm2 就可以

Mac 信息:
image

alacritty 版本:

$ alacritty --version
alacritty 0.13.2 (bb8ea18)

neovim 版本:

$ nvim --version
NVIM v0.10.1
Build type: Release
LuaJIT 2.1.1724512491
Run "nvim -V1 -v" for more info

输入法:
image

@ShikiSuen
Copy link
Contributor

@imroc 请测试 Alacritty 目前的 master 分支编译的成品。还没辙的话请跟他们开工单。

@imroc
Copy link

imroc commented Oct 15, 2024

@imroc 请测试 Alacritty 目前的 master 分支编译的成品。还没辙的话请跟他们开工单。

额,看错了,我以为这个就是 Alacritty 的 issue

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

8 participants