Please include a usage section in your readme, I like the idea of a console editor written in Go, I was recently looking for a good one and ended up writing my own.
The only problem is that I have no idea how to use your editor. Instead of the "why" section I would rather like to have a concise manual with all keyboard shortcuts and possible command line parameters explained.
Also I was trying to call bed with -h --help and /? which I think should all really print the same kind of help that should be in the readme.
Thanks very much for sharing this editor!
As it is, in replace mode, backspace can delete bytes which exist before entering replace mode.
It is clearly different from Vim.
Moreover, it may be frustrating to partially undo replacing.
This product is my hobby product. Please do not ask me when some features will be implemented. I will implement what I want when I need (mostly) on weekends.
Your advice for new features are welcome. I'm not familiar with reverse-engineering, I'm not an expert of some binary file format.
This project is open sourced. You can freely create a fork of the repository. I appreciate if you send me patches to improve features, fix some bugs and so on.
:new/:vnew should accept count to open with the specific height/width
More features
Please do not expect me to implement these features, but I'm interested in. I need some feedbacks.
Help buffer (:help)
Embed markdown documents?
Diff (:diffthis/:diffoff)
File format inspector
Using debug/elf package?
It'll be tough to implement many kinds of binary file formats. But I think I have to support for executables at least. There are already many soft-wares so needs investigation.
I'm also interested in image formats.
Support multiple text encodings
bed is a binary editor. Maybe supporting for analyzer of executables has higher priority than text encodings.
Configuration
I think this product should provide the good defaults. I'm not sure which parts users may want to configure. Mappings, displayed formats, event hooks ...
Plugin
I can't imagine what kind of plugin is required for binary editors. I need some investigation of other editors.
Also, I don't want to create a new scripting language. gRPC support?
Tabs
I like the tab behavior of Vim. But I hear that many people like displaying buffers in tabs.
Since #25 users cannot leave the editor with :q if they have unsaved changes.
If I edit a file but undo it till the state I opened the file, I am still forced to quit with :q! even though there are no changes.
I think this could be solved if for the file maybe a hash would be saved of the last saved state.
But I am not sure if this is the best way to solve this minor problem.
I didn't see this on the roadmap, so it would be a nice feature if the cursor automatically moves in the previous/next line if the cursor in on the left or right side.
E.g. Cursor at 0/b + press โ/L should jump to 0c/0 and not stuck at the same place.
When using the search (/) command I can't seem to get results for any strings that aren't already visible on the screen. If I scroll down to where a string becomes visible, then hitting 'n' will then jump to it, but if it's not on the screen, 'n' will do nothing. Is this correct?