No, I'd like to try. It sounds like the key is ```with f:```
so if i have this:
```
    fid, tree, directory = fiff_open(fname)
    with fid:
        for t in directory:
            if t.kind == FIFF.FIFF_COORD_TRANS:
                tag = read_tag(fid, t.pos)
                break
        else:
            raise IOError('This does not seem to be a -trans.fif file.')

    trans = tag.data
    fid.close()
    return trans
```
out of curiosity what is the advantage of that over:
```

    fid, tree, directory = fiff_open(fname)

    for t in directory:
        if t.kind == FIFF.FIFF_COORD_TRANS:
            tag = read_tag(fid, t.pos)
            break
    else:
        fid.close()
        raise IOError('This does not seem to be a -trans.fif file.')

    trans = tag.data
    fid.close()
    return trans
```