Issue 1:
Via atom/atom-dark-ui#19

Currently it's quite easy to change the background colors for selections.

.selection .region { background-color: @red }

But it seems to be impossible to change the foreground color, due to the fact that the selection container simply overlays the text, and does nothing to change the actual .line element containing the text. (see screenshot)

Issue 2:
This is another stab at atom/api#6, but in more concrete terms of guides / docs I think we should write to place on atom.io.

Many of the APIs these rely on are very in flux at the moment, though, so we'll probably need to write them near or after the API freeze.

Bit of background: links to problems / talk about package writing

http://gnuu.org/2014/03/10/my-week-with-githubs-atom-editor/

https://discuss.atom.io/t/how-to-speed-up-your-packages/10903

https://discuss.atom.io/t/looking-for-best-practices-for-iterative-development-on-atom/10889

Guides We Should Write

Events

Events seem to be the number one issue folks have with the API. There is confusion around

Which classes produce which events?

What is the difference between events and commands?

What is a subscription object?

Subscribe? on? which one? Where am I? It's dark in here!

This guide (and new APIs!) should address these things.

Serialization

WTF is it?

How does it work?

How to use it?

Inter-package communication

(API needs to be written!)

How to use

Best practices

Testing your package

Setting it up

Best practices

Grammar scopes

Creating a language package? A syntax theme? It's impossible to know what scopes to generate / select for in common cases. What are the scopes for a function? Punctuation? Class names? I have no idea. Currently, the only way to know what to do is to look through several other lang packages and themes to get an idea of the scopes involved.

Decorations

Currently the best docs are the example package and the blog post.

List of cookbooks / recipes

Cookbooks / Recipes (have not decided on naming) are small snippets that solve a specific problem. Often package authors (and me!) want to know "how do I do That Common Thing that I saw in package Y". They can also be an entry point into a related guide.

This list should be exhaustive. If you have ideas, let me know and I will add them.

Observing all the editors

Observing the active editor / pane item

Adding a pane item in a tab (like settings view)

Adding a panel (like find and replace)

Subscribing to a command

Highlighting a line / gutter-number (decoration)

Adding something to the status bar

How to get user input (like jump to line)

How to display a filterable list in a dialog (like command palette)

Changes we should make to existing guides

In Creating a package

This could provide more of an overview and be the entry point / index into other guides (like the one on events or serialization).

Section about activation events

Less concrete ideas for guides

Here are some ideas from atom/api#6 and from the summit that are less fleshed out.

Making your package fast: common pitfalls

Debugging your package

Package manager guide

Theme manager

Syntax/Grammar

Editor

Workspace/Panes

apm

~/.atom

cross-platform

dependency management in packages (where do I get the things I need?)

Updates

Writing these is getting closer, so I will be updating the body of this issue as comments roll in and we think of things.