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

I upvoted you for this - I think it's a really interesting idea.

Why can't my editor tokenize my code and then show it in the format I want? Why do I, as the programmer, have to worry about whether one whitespace convention works for you versus me, when you could just come up with whatever scheme you like and view code that way?




>Why can't my editor tokenize my code and then show it in the format I want?

Because editors are written by humans. And as of now, we haven't sold a whole lot of problems with their use.

For example, you get an IDE with lots of features, but a subpar editor, crammy UI and GC pauses (3 of the five most popular are written in Java).

Or you get something like VIM, with a great editor, but subpar compatibility with the rest of your system, not very good understanding of the code (refactoring, tokenizing etc). '80s GUI capabilities etc, ad-hoc collection of plugins to fix basic pain points (like file navigation).

Or you get Emacs, with millions of configurable options, a subpar extension language, script in various stages of great and rot, '80s GUI capabilities, etc.

In general, we lack tools that run the whole gamut: great editor, fluent shortcuts (either Emacs or Vim style), 2013 GUI capabilities, refactoring and intimate knowledge of program syntax (to the level of understanding the AST, no BS regex used for syntax highlighting), embedded REPLs and terminals, etc.

Something like a Lisp Machine + Smalltalk UI + Light Table + Visual Studio + Vim/Emacs combo.


"something like VIM, with a great editor, but subpar compatibility with the rest of your system"

Excuse me, but vim has much better compatibility/interoperability with the rest of my system than all the IDEs written in Java.


Between ^Z, :<range>!, :grep, make, and other tools, vim has great compatibility with my system, thanks :)


Do it have an in-editor terminal?

An in-editor debugger?

Does it offer a REPL?

Does it work with your build system and your SCM system without some ho-hum third party plugins?


In-editor terminal? ^Z or :shell (Asking for an in-editor terminal makes about as much sense as my whinging that Eclipse doesn't have an in-terminal editor)

In-editor debugger? I admit this is less than ideal.

A REPL? Languages suited to REPLs have REPLs, and a lot of them support SLIME, allowing me to interact with the REPL from vim. For everything else there's tmux.

Build system? :make and errorformat

SCM integration? ^Z. Or fugitive I guess. (a third party plugin, yes. But if you think it's ho-hum, you probably haven't used it).


Visual Studio with a VIM emulator plugin is pretty nice...


Well, there's stuff like word wrap and GNU indent and a host of pretty-printers, but I think you're looking for something more resource-intensive and integrated.

The question then becomes, why configure a transformer when you can just format it right the first time?


Because, aside from Python and its One True Way to format, different people have different ideas of what "formatting it right" means.


Funny, someone was just talking about 79 characters per line in regards to using soft tabs for editor display consistency, the other day.

http://www.reddit.com/r/java/comments/1j7iv4/would_it_not_be...

These are useful for static code analysis and finding congruence with typesetting conventions:

https://pypi.python.org/pypi/flake8

https://pypi.python.org/pypi/condent

https://pypi.python.org/pypi/pep8ify




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

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

Search: