Live data from Hacker News

Why I Wrote a Programmer's Text Editor

rsms.me

31–40 of 59 posts

Re: Why I Wrote a Programmer's Text Editor

#31
post #11

Earlier quoted context omitted.

Don't sell yourself short. Just having a working prototype can be a god-send, no matter how inefficient.

It happened to be my second time ever coding in objC, so I'm fairly certain it was crap. My later patches (think I've made two or three so far) got accepted without change :) Hope I have time soon to make the automagic indentation feature that's possible with the new AST thingy. Also hope somebody hasn't beaten me to it yet :P

> It happened to be my second time ever coding in objC, so I'm fairly certain it was crap.

Your intellectual honesty and ability to judge your work dispassionately, as well as the fact that he accepted your work, lead me to believe that it might not have been crap.

See: Dunning Kruger effect. :)

http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect

Re: Why I Wrote a Programmer's Text Editor

#32
I was particularly surprised by the behavior of the tab key:

https://github.com/rsms/kod/wiki/Indentation

In a nutshell, if you press tab while anywhere on a line, it indents. Shift-Tab de-dents the line. After thinking about it a bit, I think I could get used to it. I like that they're exploring ideas like this.

I would like preferences "CMD ," to be bound to something though even if it's to opening the configuration file itself. It's a bit disconcerting to not be given an explanation of why there are no preferences. I didn't understand the reasoning until I read this blog posting.

Re: Why I Wrote a Programmer's Text Editor

#34

Is the font rendering on this guy's site screwed up for anyone else? The "t"'s have something wrong with them: http://ompldr.org/vNzVrZg/why_i_wrote_a_programmers_text_edi... Firefox 3.6 on Linux.

Seems to be an issue with the Droid font files. I'll look into it.

Re: Why I Wrote a Programmer's Text Editor

#35
post #30
post #3

Love the chromium backend of it - I'd love it even more if it were merged with vim in a macvim-esque sort of way.

The description says its chromium-like, not that it used code from Chrome, unfortunately.

It do uses some Chromium code. See https://github.com/rsms/chromium-tabs

Re: Why I Wrote a Programmer's Text Editor

#36
post #15

Can someone explain the relationship between Kod and node.js? The Kod website says it is "based on node.js", but I don't quite get that. I'm familiar with node.js as a server-side platform, but are we about to see a bunch of node.js desktop apps?

It's scriptable via javascript (because people generally get how to script with that) and is using node.js internally to run said javascript.

Exactly. Node.js is—just like Python, Ruby or LUA—an embed-able general-purpose JS runtime. You can simply link with libnode. Kod then uses a mix of libdispatch and libev constructs to perform inter-thread communication. The code for doing this is fairly orthogonally designed and can be found in the KNode* and node* source files.

Re: Why I Wrote a Programmer's Text Editor

#39
post #32

I was particularly surprised by the behavior of the tab key: https://github.com/rsms/kod/wiki/Indentation In a nutshell, if you press tab while anywhere on a line, it indents. Shift-Tab de-dents the line. After thinking about it a bit, I think I could get used to it. I like that they're exploring ideas like this. I would like preferences "CMD ," to be bound to something though even if it's to opening the configuratio…

I think you're describing the type of behavior that emacs uses when you press tab, except it indents the line according to the default tab style associated with the file type. It's great for programming; I never have to worry about indentation because it's handled automatically.

Re: Why I Wrote a Programmer's Text Editor

#40
post #15

Earlier quoted context omitted.

It's scriptable via javascript (because people generally get how to script with that) and is using node.js internally to run said javascript.

Exactly. Node.js is—just like Python, Ruby or LUA—an embed-able general-purpose JS runtime. You can simply link with libnode. Kod then uses a mix of libdispatch and libev constructs to perform inter-thread communication. The code for doing this is fairly orthogonally designed and can be found in the KNode* and node* source files.

I don't think anything is like Lua when it comes to embedding; I mean, it's what, 100k? Hard to top that.
Post reply on HN