glyphobet / fragments Goto Github PK
View Code? Open in Web Editor NEWtool for diff-based templating / fragmentation control
Home Page: http://glyphobet.github.io/fragments/
License: BSD 3-Clause "New" or "Revised" License
tool for diff-based templating / fragmentation control
Home Page: http://glyphobet.github.io/fragments/
License: BSD 3-Clause "New" or "Revised" License
The apply command should have options to control whether to insert conflict sections or just leave the file unmodified when it encounters a conflict.
Include a git-hook for automatically adding everything in _fragments/
directory
find . -name '_fragments' | xargs git add
The above command does not handle files renamed in fragments very well. Make sure that works too.
The bash completion on the second argument to the rename command should complete from un-followed files.
rename
should have aliases mv
and move
apply should have a dry-run mode that will tell you whether it will generate conflicts, apply cleanly, etc.
A non-ascii changed line causes fragments diff to crash with:
Traceback (most recent call last):
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/Users/matt/local/src/fragments/fragments/__main__.py", line 8, in <module>
_main()
File "/Users/matt/local/src/fragments/fragments/commands.py", line 412, in _main
print(str(l))
File "/Users/matt/local/src/fragments/fragments/color.py", line 25, in __str__
return '\033[%sm\033[%sm%s\033[0m' % (self.weight, self.color, super(ColoredString, self).__str__())
UnicodeEncodeError: 'ascii' codec can't encode character u'\xb4' in position 35: ordinal not in range(128)
Need XML/HTML diff mode
When I fork based on
<h3>Foo</h3>
and
<h3>Bar</h3>
I want
<h3></h3>
instead of a blank line.
the apply command should have an auto-commit option, off by default
the bash command line completion for the apply command only offers to complete modified files, but subsequent file name arguments to the apply command can be any tracked file.
fragments apply foo/bar/
should apply to all files under that path.
fragments mv foo/file.ext bar/
should expand to fragments mv foo/file.ext bar/file.ext
Renaming a file to directory path that doesn't exist leaves fragments in an inconsistent state. It renames the file in _fragments/
but fails to move the file to the new location.
foo.html
, it gets a key foo.html
in config.json
with a value of a hash of foo.html
foo.html
to bar.html
, it is now stored under key bar.html
in config.json
with a value of a hash of foo.html
foo.html
, it gets a key foo.html' in
config.jsonwith the same value as the key
bar.html` has.Now those files are broken because there are two keys pointing at the same value, and therefore the same file on disk.
the fork command should have an auto-follow command-line option, enabled by default
commit should have a -v
/--verbose
option controlling whether it outputs Could not commit 'foo' because it has not been changed
messages.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.