adonais / skylark

Skylark Editor is written in C, a high performance text/hex editor. Embedded Database-client/Redis-client/Lua-engine. You can run Lua scripts and SQL files directly.
https://sourceforge.net/projects/libportable/files/Skylark/
GNU General Public License v3.0
453 stars 44 forks source link

当文本被其它程序修改而重新加载后不能保持在当前视图 #78

Closed cnker closed 1 year ago

cnker commented 1 year ago

使用版本:Skylark Editor v4.0.2 32bit (UNICODE)

编译信息:clang 15.0.7 (2023-08-14 08:23:43 UTC)

当文本被其它程序修改后,选择重新加载,不能保持在当前视图位置,而是会跳到文件尾部。

20230820225040

adonais commented 1 year ago

早期的版本是保持在当前视图位置, 但这样做没有意义, 因为文件可能是在头部做了修改, 保持当前位置也是个错误的位置. 反之, 保持在尾部省了一步指令, 这对加载一个频繁被修改的文件有好处.

cnker commented 1 year ago

emeditor、everedit,甚至是typora、VS、VS Code,在遇到其它程序修改并重新加载后,都是保持在原视图位置。

所以还是希望skylark能采用相同逻辑,“保持原视图位置”,或是能提供一个设置选项来开启这个逻辑。

adonais commented 1 year ago

如果文件不是频繁被第三方软件修改, 可以使用shift+f5手动重载, 它会保持光标在原先行.

cnker commented 1 year ago

光标位置不一定是视图位置。