bang

BANG is a tool that lets you create tickets without ever leaving your code. Using twitter style tagging, you can simply add a !tag and a ^priority to comments, and BANG collects these for you in a purty interface.

BANG makes a perfect to-do list for individuals or small projects.

BANG requires no signing up or logging in, simply run it from the command line, and it will open your report for you.

To Install:

curl -s http://www.thecodebase.com/install.sh > install.sh &&
bash install.sh


Choose your language:


you@yourcomputer:~$ bang -ljs js_folder/
// This selector is awful, fix it !charlie !ui ^5
function showExample(id) {
    $('div').hide();
    $('#example-' + id).show();
    $('#example-' + id + ' div').show();
}
    

you@yourcomputer:~$ bang -ljava jaguar/src/
// Change to use GUIT style !gal ^7
import com.guit.client.binder.contributor.RunAsync;
import com.guit.client.place.Place;
import com.jwavro.jaguar.client.model.Building;

@RunAsync
public class BuildingList extends BuildingListBase implements Place <Integer> {

  @Inject
  @MainPanel
  public AcceptsOneWidget mainPanel;

  @Override
  void create$click() {
    placeManager.go(BuildingForm.class);
  }


}
    

you@yourcomputer:~$ bang -lpy python_project/

#Fix the tagList not being sorted correctly  !r1 ^7

for k, v in categories.iteritems():
    print k, '\n\t'
    tagList = sorted(v, key=lambda v: v.priority, reverse=True)
    for tag in tagList:
        print '\t' + str(tag)
    print '\n\n'
    

you@yourcomputer:~$ bang -lcpp node/src/


// Change the Arguments to use the new Arguments2 class !eventually
static Handle <Value> Pipe(const Arguments& args) {
  HandleScope scope;
  int fds[2];

  if (pipe(fds) < 0) return ThrowException(ErrnoException(errno, "pipe"));

  Local <Array> a = Array::New(2);
  a->Set(Integer::New(0), Integer::New(fds[0]));
  a->Set(Integer::New(1), Integer::New(fds[1]));
  return scope.Close(a);
}



you@yourcomputer:~$ bang -lphp php_project/

//Make a config file for the FILE_NAME and official tweet names !r2

require_once "SeverityStatus.enum.php";
require_once "TrainStatus.class.php";

class TubeTweetApi {

    public static $FILE_NAME = "/tmp/tube_tweet_serialized.txt";
    public static $OFFICIAL_TWEET_NAMES = array("tubeupdates", "tweetthetube", "tubetweetapp");


    private $trains = array();
    private $geoTweets; //= new ArrayObject(array());

    function __construct() {

        $this->trains [1] = $this->trains['Bakerloo'] = new TrainStatus("Bakerloo", "Bakerloo", "images/bakerloo.png", 1);
        $this->trains [2] = $this->trains['Central'] = new TrainStatus("Central", "Central", "images/central.png", 2);
        $this->trains [3] = $this->trains['Circle'] = new TrainStatus("Circle", "Circle", "images/circle.png", 3);
        $this->trains [4] = $this->trains['District'] = new TrainStatus("District", "District", "images/district.png", 4);
        $this->trains [5] = $this->trains['Hammersmith'] = new TrainStatus("Hammersmith & City", "Hammersmith", "images/hsmith.png", 5);
        $this->trains [6] = $this->trains['Jubilee'] = new TrainStatus("Jubilee", "Jubilee", "images/jubilee.png", 6);
        $this->trains [7] = $this->trains['Metro'] = new TrainStatus("Metro", "Metro", "images/metro.png", 7);
        $this->trains [8] = $this->trains['Northern'] = new TrainStatus("Northern", "Northern", "images/northern.png", 8);
        $this->trains [9] = $this->trains['Piccadilly'] = new TrainStatus("Piccadilly", "Piccadilly", "images/piccadilly.png", 9);
        $this->trains [10] = $this->trains['Victoria'] = new TrainStatus("Victoria", "Victoria", "images/victoria.png", 10);
        $this->trains [11] = $this->trains['Waterloo'] = new TrainStatus("Waterloo & City", "Waterloo", "images/waterloo.png", 11);
        $this->trains [12] = $this->trains['DLR'] = new TrainStatus("DLR", "DLR", "images/dlr.png", 12);
        $this->trains [13] = $this->trains['London'] = new TrainStatus("Overground", "Overground", "images/overground.png", 13);

        $this->geoTweets = new ArrayObject(array());

        $this->downloadTweets();

    }
}



The !tag is to categorize the comment , and the ^N is to mark the priority [0-9]

See an example report