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

F3 功能体验, 优化建议, #862

Open
xxxdo1 opened this issue Sep 21, 2024 · 13 comments
Open

F3 功能体验, 优化建议, #862

xxxdo1 opened this issue Sep 21, 2024 · 13 comments
Milestone

Comments

@xxxdo1
Copy link

xxxdo1 commented Sep 21, 2024

选中一段文本 "settings", 按F3, 不显示查找对话框, 直接查找下一个匹配项, Alt+F3 查找上一个匹配项,

image

快速查找关键词, 这样会方便很多

@zufuliu
Copy link
Owner

zufuliu commented Sep 21, 2024

It's indented to open the dialog:

notepad4/src/Notepad4.cpp

Lines 3810 to 3820 in c547da6

if (StrIsEmpty(efrData.szFind)) {
if (LOWORD(wParam) != IDM_EDIT_REPLACENEXT) {
SendWMCommand(hwnd, IDM_EDIT_FIND);
} else {
SendWMCommand(hwnd, IDM_EDIT_REPLACE);
}
} else {
switch (LOWORD(wParam)) {
case IDM_EDIT_FINDNEXT:
EditFindNext(&efrData, false);

@xxxdo1
Copy link
Author

xxxdo1 commented Sep 21, 2024

可以优化一下这个功能吗, 或者可以增加一项配置

@xxxdo1
Copy link
Author

xxxdo1 commented Sep 21, 2024

这需要判断 "查找对话框" 是否打开状态, F3以 "查找对话框" 查找下一个匹配项, 或者以 "选中文本" 查找下一个匹配项

@xxxdo1
Copy link
Author

xxxdo1 commented Sep 21, 2024

F3 这个功能在 Visual Studio Code 也有, 非常希望能把它优化一下

@Jackarain
Copy link

@xxxdo1 我也有这个需求,我已经按自己的想法修改好了一个版本,具体来说,查找用法不变,只有在“查找对话框”已经打开的状态下,可以随着时通过选择其它文本,来快速切换查找内容,取消任何选择则即可按查找框中的原来的文本查找。

@xxxdo1
Copy link
Author

xxxdo1 commented Oct 11, 2024

@Jackarain 能发一下你的修改版吗, 体验一下

@Jackarain
Copy link

Jackarain commented Oct 11, 2024

@xxxdo1
Copy link
Author

xxxdo1 commented Oct 11, 2024

@Jackarain 看简介你这个深色主题的版本很漂亮, 但是这个版本我这边打开闪退, 这是什么情况

@Jackarain
Copy link

Jackarain commented Oct 11, 2024

@Jackarain 看简介你这个深色主题的版本很漂亮, 但是这个版本我这边打开闪退, 这是什么情况

闪退问题确定问题了,已经修复,分配内存的时候少计算了长度+1。

@xxxdo1
Copy link
Author

xxxdo1 commented Oct 11, 2024

@Jackarain
体验了一下你这个版本, 首次F3, 还是会打开 "搜索对话框", 关闭对话框, 后面几次就不会了, 还有能否构建一个32位版本呢, 32位理论上比64位占用小启动快更快, 而这也是这个编辑器最大的优点

@Jackarain
Copy link

Jackarain commented Oct 11, 2024

@xxxdo1 现在的 CPU 都是64位的,所以理论上32位的版本实际上会更慢。

这是因为在64位 CPU 上运行32位应用程序需要通过兼容性层来实现支持32位指令(如 Windows 上的 WOW64 子系统),这会带来一定的性能开销,不过通常这个开销较小。

目前来说,32位的程序仅有的优势是占用磁盘空间会稍小一点,但也并不明显,因为 Notepad2 本身已经非常非常小了,所以大小的优势也是不太可能被感知的。

首次F3, 还是会打开 "搜索对话框", 关闭对话框, 后面几次就不会了

至于这个问题,首先是我对 Notepad2 的源码并不是特别熟悉,如何在不显示 "搜索对话框" 的情况下进行 F3 查找,可能还得有空了再研究,或者最好是原作者能够把它实现,我就直接拿来用就行了 😄,不过目前这样的做法,这也是我自己想要的效果吧

当然你还可以使用我修改的 Notepad3 的 Darkmode 分支,我在 Notepad3 上面完美支持了在不显示 "搜索对话框" 的情况下按 F3 搜索 😄。

@xxxdo1
Copy link
Author

xxxdo1 commented Oct 12, 2024

@Jackarain Notepad3 我已经放弃了, 它启动速度不及Notepad4, 支持的语法方案也少 , 还有Notepad4 更新的更勤快一些, 你的修改版F3改好了记得再发一个版本, 很喜欢这个菜单深色主题

@zufuliu zufuliu added this to the v24.11 milestone Oct 12, 2024
zufuliu added a commit that referenced this issue Oct 12, 2024
of current selected text when find text not initialized, issue #862.
@zufuliu
Copy link
Owner

zufuliu commented Oct 12, 2024

Implemented by 8d1ce64, but probably you are looking for Ctrl+F3 and Ctrl+Shift+F3, i.e. find next/previous occurrence of current selected text regardless of the saved search string.

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

No branches or pull requests

3 participants