{"id":18053764,"url":"https://github.com/hymkor/binview","last_synced_at":"2026-02-06T14:23:53.143Z","repository":{"id":45937856,"uuid":"297033585","full_name":"hymkor/binview","owner":"hymkor","description":"Terminal Binary Editor","archived":false,"fork":false,"pushed_at":"2024-04-20T13:03:38.000Z","size":268,"stargazers_count":20,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-10T22:53:25.541Z","etag":null,"topics":["binary","binary-data","editor","go","golang"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hymkor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-20T08:30:16.000Z","updated_at":"2025-02-28T11:20:58.000Z","dependencies_parsed_at":"2024-01-19T03:58:52.484Z","dependency_job_id":"f30b376e-935e-4565-85ad-e348169d595b","html_url":"https://github.com/hymkor/binview","commit_stats":null,"previous_names":["zetamatta/binview","zetamatta/binedit"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hymkor%2Fbinview","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hymkor%2Fbinview/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hymkor%2Fbinview/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hymkor%2Fbinview/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hymkor","download_url":"https://codeload.github.com/hymkor/binview/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248312172,"owners_count":21082638,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["binary","binary-data","editor","go","golang"],"created_at":"2024-10-31T00:07:56.932Z","updated_at":"2026-02-06T14:23:53.138Z","avatar_url":"https://github.com/hymkor.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"binview - Terminal Binary Editor\r\n================================\r\n\r\n![ScreenShot](./screenshot.png)\r\n\r\nKey Features\r\n------------\r\n\r\n* **Fast startup with asynchronous loading**\r\n  The viewer launches instantly and loads data in the background, allowing immediate interaction even with large files.\r\n\r\n* **Supports both files and standard input**\r\n  `binview` can read binary data not only from files but also from standard input, making it easy to use in pipelines.\r\n\r\n* **Vi-style navigation**\r\n  Navigation keys follow the familiar `vi` keybindings (`h`, `j`, `k`, `l`, etc.), allowing smooth movement for experienced users.  \r\n(Note: File name input uses Emacs-style key bindings.)\r\n\r\n* **Split-view with hex and character representations**\r\n  The screen is divided approximately 2:1 between hexadecimal and character views. Supported encodings include UTF-8, UTF-16 (LE/BE), and the current Windows code page. You can switch encoding on the fly with key commands.\r\n\r\n* **Smart decoding with character annotations**\r\n  Multi-byte characters are visually grouped based on byte structure. Special code points such as BOMs and control characters (e.g., newlines) are annotated with readable names or symbols, making it easier to understand mixed binary/text content and debug encoding issues.\r\n\r\n* **Minimal screen usage**\r\n  `binview` only uses as many terminal lines as needed (1 line = 16 bytes), without occupying the full screen. This makes it easy to inspect or edit small binary data while still seeing the surrounding terminal output.\r\n\r\n* **Cross-platform**\r\n  Written in Go, `binview` runs on both Windows and Linux. It should also build and work on other Unix-like systems.\r\n\r\nInstall\r\n--------\r\n\r\n### Manual installation\r\n\r\nDownload the binary package from [Releases](https://github.com/hymkor/binview/releases) and extract the executable.\r\n\r\n### Use \"go install\"\r\n\r\n```\r\ngo install github.com/hymkor/binview@latest\r\n```\r\n\r\n### Use scoop-installer\r\n\r\n```\r\nscoop install https://raw.githubusercontent.com/hymkor/binview/master/binview.json\r\n```\r\n\r\nor\r\n\r\n```\r\nscoop bucket add hymkor https://github.com/hymkor/scoop-bucket\r\nscoop install binview\r\n```\r\n\r\nUsage\r\n-----\r\n\r\n```\r\n$ binview [FILES...]\r\n```\r\n\r\nor\r\n\r\n```\r\n$ cat FILE | binview\r\n```\r\n\r\nKey-binding\r\n-----------\r\n\r\n* `q`, `ESCAPE`  \r\n    * Quit\r\n* `h`, `BACKSPACE`, `ARROW-LEFT`, `Ctrl-B`  \r\n    * Move the cursor left\r\n* `j`, `ARROW-DOWN`, `Ctrl-N`  \r\n    * Move the cursor down\r\n* `k`, `ARROW-UP`, `Ctrl-P`  \r\n    * Move the cursor up\r\n* `l`, `SPACE`, `ARROW-RIGHT`, `Ctrl-F`  \r\n    * Move the cursor right\r\n* `0` (zero), `^`, `Ctrl-A`  \r\n    * Move the cursor to the beginning of the current line\r\n* `$`, `Ctrl-E`  \r\n    * Move the cursor to the end of the current line\r\n* `\u003c`  \r\n    * Move the cursor to the beginning of the file\r\n* `\u003e`, `G`  \r\n    * Move the cursor to the end of the file\r\n* `r`  \r\n    * Replace the byte under the cursor\r\n* `i`  \r\n    * Insert data (e.g., `0xFF`, `U+0000`, `\"string\"`)\r\n* `a`  \r\n    * Append data (e.g., `0xFF`, `U+0000`, `\"string\"`)\r\n* `x`, `DEL`  \r\n    * Delete and yank the byte under the cursor\r\n* `p`  \r\n    * Paste one byte to the right side of the cursor\r\n* `P`  \r\n    * Paste one byte to the left side of the cursor\r\n* `u`  \r\n    * Undo\r\n* `w`  \r\n    * Write changes to file\r\n* `\u0026`  \r\n    * Jump to a specific address\r\n* `ALT-U`  \r\n    * Change the character encoding to UTF-8 (default)\r\n* `ALT-A`  \r\n    * Change the character encoding to ANSI (the current Windows code page)\r\n* `ALT-L`  \r\n    * Change the character encoding to UTF-16LE\r\n* `ALT-B`  \r\n    * Change the character encoding to UTF-16BE\r\n\r\nRelease Notes\r\n-------------\r\n\r\n- [English](/release_note_en.md)\r\n- [Japanese](/release_note_ja.md)\r\n\r\nAcknowledgements\r\n----------------\r\n\r\n- [spiegel-im-spiegel (Spiegel)](https://github.com/spiegel-im-spiegel) - [Issue #1](https://github.com/hymkor/binview/issues/1)\r\n\r\nAuthor\r\n------\r\n\r\n- [hymkor (HAYAMA Kaoru)](https://github.com/hymkor)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhymkor%2Fbinview","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhymkor%2Fbinview","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhymkor%2Fbinview/lists"}