Skip to content
This repository has been archived by the owner on Nov 4, 2019. It is now read-only.

Get busy

rsms edited this page Jan 4, 2011 · 34 revisions

Get busy -- a general TODO list

Having a Sunday all to yourself? Itchy coding fingers? Grab something from this list and start hacking!

Remember, fixing bugs may be boring but it makes for a good nights sleep -- check Open tickets in the issue tracker for bugs and problems which need some sweet hack love.

Long-lived bugs

The "Cmd+Q causes crash in -[KDocumentController windows]" bug

When terminating Kod it sometimes causes a BAD_ACCESS memory violation.

  • Ticket: Ticket 81
  • Currently hacking on this: (no one)

Features

Adding ODB support

http://www.barebones.com/support/develop/odbsuite.html is a text editor interface used and supported by many OS X editors () and applications utilizing external text editors (for instance Hog Bay Software's QuickCursor).

According to Hog Bay Software, the following applications already support this interface (this is not an exclusive list): "BBEdit, Espresso, MacVim, Smultron, SubEthaEdit, TextMate, TextWrangler, and WriteRoom".

This document gives a good overview of the interface specification: http://www.barebones.com/support/develop/odbsuite.html

  • Ticket: (none)
  • Currently hacking on this: (no one)

Override default syntax highlighter

Pointers from rsms:

  • You want to query the +[KLangMap sharedLangMap] object for a list of language ID's and descriptions.
  • Probably add a read-only property for accessing langIdToInfo_ which maps language id to an info dictionary (human readable title, etc)
  • Then the current document has a langId property which can be key-value-observed (you want to setup and tear down KVO in -[KStatusBarController updateWithContents:])

Note(rsms): There's work going on to replace the current sytnax highlighter with a more sophisticated and flexible system. However, this is in a longer time perspective.

Needs:

  • Slim dropdown in footer, to the right of the line/column numbers

  • Selecting option from it recomputed highlighting for the current viewed tab

  • Remember the choice, so when you close the file and reopen, it opens as the highlighter you selected (not the default chosen one)

  • Ticket: Ticket 53

  • Currently hacking on this: (no one)

A better and more flexible text parsing system

Kod currently uses Source Highlight to tokenize and parse text. This is a very limited system which has other issues as well (like being GPL so we can't patch it).

We want to have a system which have the following features:

  • Flexible and minimal core -- provide just enough low-level hooks to be able to do almost anything
  • High performance
  • Parallelize-able -- parsing should not be performed in the main thread as to avoid blocking the UI
  • Parsers written in JavaScript and executed by libv8 (libnode).
  • High-level human readable syntax "definitions" -- modeled on top of a universal/basic parser implementation

There is currently a kod-node API which should be "final" enough to start basing this work upon.

Syntax-aware indentation

Indentation controlled by the active text parser. See http://boredzo.org/blog/archives/2008-11-05/tabs-vs-spaces-redux

  • Ticket: Ticket 76
  • Currently hacking on this: (no one)
  • Depends on: New text parser system

Command-T "jump to file"

As described in https://github.com/rsms/kod/blob/master/ideas/location-bar-as-command-input.psd

Which would behave like https://github.com/jamis/fuzzy_file_finder (which is a derivative of http://www.vim.org/scripts/script.php?script_id=1984). Demonstrated in this short screencast: http://s3.amazonaws.com/buckblog/videos/fuzzyfinder_textmate.mov

  • Ticket: (none)
  • Currently hacking on this: @puls
  • Repository: puls/kod@jump
Clone this wiki locally