itchyny / bed

Binary editor written in Go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Roadmap: known issues and coming new features

itchyny opened this issue · comments

Thank you for getting interested in my product.

Notes:

  • 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.

Multi-platform distribution

  • Testing on TravisCI
  • Homebrew rule
  • Windows support
    • Fix panic: send on closed channel on exit 316b04c
    • Write fails with Access is denied.: disable overwrite on Windows for now fb381a7
    • Make tests pass on Windows 1fdf7a5
    • Test on AppVeyor e8df7d5
  • Distribution from GitHub Releases

Small bugs

  • Visual mode should accept count for key mappings 6ce206c
  • Cursor position should be taken into account on switching between windows
  • One key stroke is missing after process suspension on macOS (known issue of tcell)
  • Replace (r) should exit replace mode at once 1087bf9

New features and improvements

I will definitely fix or implement these features.

More commands

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.
  • Session restoration
  • Macro and repeating
  • GUI frontend or web-based UI
  • Stdin support

I think I started coding for what I want before doing research on existing editors.

maybe compare bed to bvi for people who do no want "a bin editor written in go" but "a bin editor that works well for me" and see what would make bvi stand out (for you/ or maybe for others)

  • It'll be tough to implement many kinds of binary file formats. But I think I have to support forexecutables at least. There are already many soft-wares so needs investigation.
  • I'm also interested in image formats.

Probably you could use Kaitai to parse the files