

Syntax control for the command line - kainosnoema
https://github.com/stephencelis/syn

======
bilalq
Before people get up in arms about iA patents, see this tweet where they
announced that they're dropping their patents pending:
[https://twitter.com/iA/statuses/416393539182796800](https://twitter.com/iA/statuses/416393539182796800)

That aside, this is pretty cool. I'm not sure if I'd ever use it, but it would
be cool to see a vim plugin that offers similar functionality.

~~~
jeremiep
Here's the discussion with DHH that led to this decision:

[http://storify.com/nthnclrk/conversation-with-dhh-ia-and-
ste...](http://storify.com/nthnclrk/conversation-with-dhh-ia-and-stevieness)

------
JasonFruit
See
[https://news.ycombinator.com/item?id=6966528](https://news.ycombinator.com/item?id=6966528).
This is pretty much the best response I can imagine.

------
alexchamberlain
Couple of `git` points: why are you committing binaries to your master branch?
Personally, I also won't be moving anything from a random git repo into
/usr/local/bin...

~~~
stephencelis
For those that are worried, the source is there to inspect and compile. For
those that aren't, there's reduced friction. It's a young project and I could
move the binary elsewhere, but I'm not sure that would change your concern?

Is there an alternate process you would suggest?

~~~
jewel
I believe GP was saying two separate things. First of all, it's unusual to
commit binaries to source control, because they can't be merged, etc. Second
of all, he personally isn't comfortable with binaries and would rather compile
from source.

It'd be more traditional to release binaries separately, maybe using the
following: [https://github.com/blog/1547-release-your-
software](https://github.com/blog/1547-release-your-software)

~~~
stephencelis
Ah, I'd missed that update. Thanks! I prefer this to the current workflow.

------
gliese1337
That's _natural language_ syntax, BTW. And just part-of-speech tag info at
that, not full-on syntax-tree-aware stuff. Still, cool. Didn't know OS X had
that stuff built-in.

------
tunesmith
What's the point here? Is this a demonstration of prior art? Or is it just
demonstrating that a patent's technology is easily re-implemented?

Because if it's the latter, that doesn't really prove anything. Patents are to
protect technologies/inventions that are far easier to produce after invention
than before. That's the _good_ part of a patent, when the patent system works
as designed.

If it's a demonstration of prior art though, that's pretty cool - it might
help to make it more obvious, though.

~~~
kainosnoema
It's neither prior art (though it was started prior to the recent patent
publicity), nor a re-implementation (as stated in the readme, it's just a
wrapper around OS X's NSLinguisticTagger).

Why can't it just be a useful tool? I'm looking forward to using it while
writing project documentation and will be working on editor plugins using the
JSON formatted output
([https://github.com/stephencelis/syn/commit/d2d36473f7295c6cf...](https://github.com/stephencelis/syn/commit/d2d36473f7295c6cfb220f4e322c6b7b2ca798fe)).

------
wodenokoto
OSX has built-in NLP tools? I tried doing a google search for it, but I can't
find any documentation. Do any of you know anything about it?

~~~
bodhi
Tools, as in command line tools, I'm not so sure about. But Cocoa has
NSLinguisticTagger. Good overviews:

[http://www.objc.io/issue-7/linguistic-
tagging.html](http://www.objc.io/issue-7/linguistic-tagging.html)
[http://nshipster.com/nslinguistictagger/](http://nshipster.com/nslinguistictagger/)

And SDK documentation:

[https://developer.apple.com/library/ios/documentation/cocoa/...](https://developer.apple.com/library/ios/documentation/cocoa/reference/NSLinguisticTagger_Class/Reference/Reference.html)

~~~
wodenokoto
Thanks!

------
jbrooksuk
If I find some time I may write a plugin for Sublime Text :)

~~~
kainosnoema
The OP is working on a nicer machine-readable output for exactly this purpose,
though I think he's hoping for a Vim plugin.

I'm also be wanting a Sublime plugin, preferably one that can cycle the
selection through tagged words and allow editing. I started hacking one out
last night, but got stuck on the complexity of the plugin architecture. I'll
update this if I ever get something working.

