Hacker News new | past | comments | ask | show | jobs | submit login

Here's a python one-liner that will do it:

import os; import random; os.system("vim %s +%s" % (lambda f: (f, random.randint(1,len(open(f).readlines())+1)))(random.choice([f for f in sum([[os.path.join(p, f) for f in fs] for (p, ds, fs) in os.walk(".")], []) if not ".git" in f])))




That's one hell of a one-liner.


Old math joke: "It's a one line proof; if you start far enough to the left."


It's a great example of the trade-offs made in python (as opposed to, say, perl) design: It's not really a one-liner (yeah, it fits on one line, but it just cries out to be re-formatted) -- it's too verbose -- but the flip side is that it's actually rather readable.


Having to use lambdas just to get the syntax to allow for a one liner makes your point about reformatting.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: