Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zk-phi/bfbuilder
A brainfuck development environment with interactive debugger
https://github.com/zk-phi/bfbuilder
emacs
Last synced: 3 months ago
JSON representation
A brainfuck development environment with interactive debugger
- Host: GitHub
- URL: https://github.com/zk-phi/bfbuilder
- Owner: zk-phi
- Created: 2015-09-16T18:09:18.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2021-02-28T17:40:14.000Z (almost 4 years ago)
- Last Synced: 2024-05-30T16:36:00.389Z (8 months ago)
- Topics: emacs
- Language: Emacs Lisp
- Homepage:
- Size: 50.8 KB
- Stars: 39
- Watchers: 7
- Forks: 11
- Open Issues: 2
-
Metadata Files:
- Readme: Readme.org
Awesome Lists containing this project
README
* bfbuilder.el
Emacs 用の Brainfuck 開発環境
A brainfuck development environment with interactive debugger
** Screenshot
[[file:./bfbuilder.png]]
** Features
- syntax highlighting
- automatic indentation
- interactive debugger
- abbrev for repetition** Installation
Load "bfbuilder.el" and setup ~auto-mode-alist~
: (require 'bfbuilder)
: (add-to-list 'auto-mode-alist '("\\.bf$" . bfbuilder-mode))then ~bfbuilder-mode~ is activated when opening ".bf" files.
** Keybindings
~TAB~ expands the last abbrev if it exists, or indents current line
otherwise. Abbrev is something like ~+10~, or ~(+-)3~ and they expand
to ~++++++++++~ and ~+-+-+-~ respectively.~C-c C-c~ opens the debugger. You can execute the program step by step
with following keybindings. Any other key closes the debugger.- ~l~ :: execute an instruction
- ~j~ :: execute a line
- ~L~ :: execute a group of instructions like ~++++++~
- ~g~ :: initialize the debugger state
- ~G~ :: execute forward until it reaches a breakpoint (~@~ by default)** TODOs
- implement undo (backward execution) feature for the debugger