Light Table 0.5.0
chris-granger.com
chris-granger.com
I want to like this so badly, but so far I can't justify spending the time to learn to use it just yet.
It might just be a problem with the docs, and maybe I'm just not understanding what light table is on a conceptual level but:
* docs reference tabs that do not exist in my version of the interface ( a trip to the view menu produced no option to show or hide them, so I assume they're from an older version?)
* they expect me to already have created files elsewhere?
* cmd/ctrl-o dialog? what does this do? (seems like nothing, looks like file prompt, but no tab-completion....am I supposed to type out /home/uname/file/x/y/z?)
* cmd-shift-o opens files....but not directories, how do I get a file tree like in the screenshots?
* if the browser tab has focus, cmd-shift-o dialog will not show (as I'm asked to do in the docs)
* control-tab doesn't switch between tabs
* what is the relationship between this browser window and my js file?
after this I gave up.
I guess I am late to the party? Where can I find the real docs?
I have high hopes for this to mature and someday become something that I can say goodbye to vim/sublime, but at this point, I'd need a better onboarding to really give it a go.
Despite their perceived difficulty to use, both emacs and vim provide extensive awesome help without having to resort to a third party.
Sublime may have help somewhere, but since it works just like every other desktop program I've never needed to refer to it.
If this is going to be something that's so wildly different from the text editors I'm used to, I'm going to need more hand-holding to get excited about it.
ctlr-o is the equivalent of ctrl-p in sublime or ctrl-t in textmate. It shows you the files available in your workspace. It used to tell you how to add files to your workspace when it was empty but that seems to have gotten nuked. [1] If you go to view->workspace you have a tree you can then fill in with folders and files. Click the folder button and off you go.
I'll add a menu item for opening a folder. [2]
> if the browser tab has focus, cmd-shift-o dialog will not show (as I'm asked to do in the docs)
Unfortunately this depends on whether the site tries to be clever and capture keys, though, there could just be a regular bug here. Will take a look.
> control-tab doesn't switch between tabs
Ah, I used chrome's default ctrl-shift-[ and ctrl-shift-]. Makes sense to add that one too though. [3]
> what is the relationship between this browser window and my js file?
If you press ctrl-enter or ctrl-shift-enter you have now evaled that file into that browser window. Any time you eval again, you'll be injecting code into that frame.
> Sublime may have help somewhere, but since it works just like every other desktop program I've never needed to refer to it.
Can you tell me more about what's missing here? Are there specific menu items, etc? If you tried to use it just like Sublime (as in none of the other fancy stuff), what is harder/more difficult to wrap your head around?
[1]: https://github.com/Kodowa/Light-Table-Playground/issues/695
[2]: https://github.com/Kodowa/Light-Table-Playground/issues/694
[3]: https://github.com/Kodowa/Light-Table-Playground/issues/697
Basic idea: bring in 3 or 4 programmers who've never seen Light Table before, explain that you're testing the app and not them, and ask them to perform a few simple editing tasks without help, narrating their thought process, while you watch and take notes.
It can be painful to watch people struggle the first time you do a study, but you learn a lot about what people find confusing in your app — and how you can make it better. Then fix the biggest issues you identify and do another study in a month. I've seen this approach yield massive improvements, and I bet it would for you too.
Note that [ and ] are hard to type with modifiers on most non-English keyboards. It's very unadvisable to use a default binding of [+anything for anything, because if you have any international traction, a third of your users will have to rebind it.
[edit]: cleaned up text for clarity.
In your user behaviors add this: :editor [:lt.plugins.vim/activate-vim]
and then save.
This should be the next great text-editor once it's open-sourced - I'm too young to bother with vim/emacs, and a bit too poor to buy Sublime Text, great though it is!
The fact that it's written in Clojure(script) makes me want to dive into the source, and find out how a modern desktop application is built using a Lisp.
What does this mean? The younger the better, there's quite a bit to learn about using both.
If you mean they're too "Old-school" as in there are a lot of keyboard commands to learn to use them effectively...give them a try, you might find after a while that ctrl-n really is easier than moving all the way over to the down arrow key when you're in the zone and building something.
A modern IDE written entirely in Clojure would be Clooj (which IS open-source).
On the other hand, it has Paredit mode, which is still "coming soon" for Light Table :)
One thing: I fired up the built-in browser and pointed it at a local static server which sits in front of some apps I'm building with Google Polymer[1]. The apps don't work at all in that browser environment -- the console reports lots of errors related to invalid html and css.
I was able to connect LightTable (per the docs) to an external browser, but that seems to lessen the LT experience somewhat.
Would it be possible for the LT team to look into why the Polymer polyfills don't work properly with the built-in browser?
http://research.microsoft.com/apps/pubs/default.aspx?id=1898...
(not lighttable, but more research on the topic)
For instance, I put a watch on this javascript:
window.scrollY;
I expected it to update every time I scrolled. In reality, I had to put an event hook onto the window's scroll event with window.scrollY inside of it. This is a bit confusing.Also, Chris, anyone you can put an update somewhere when you get the docs finished? This is the first release that is stable enough for me to actually use, so I don't really know how to do anything. Seems like the docs are way out of date (ie: How the heck do I search for files in my workspace?).
Great release though! I'm pumped that LightTable is finally stable enough for me to attempt to replace sublime!
Thanks for the new release. Is it possible to reopen the open files from the previous session on startup? I find myself frustrated with having to look at the welcome screen instead of getting what I was working on in my previous session. It's also a bit annoying to reopen all the files at the beginning of each session. Am I missing something?
:editor [:lt.objs.editor/no-wrap
(:lt.objs.style/set-theme "default")
:lt.plugins.vim/activate-vim]
Instead of this, you can write :lt.plugins.emacs/activate-emacs to activate emacs mode.Note that this page has nice completion-matching--for example, if you delete the interior of the string "default" you can see fuzzy completions, and putting the cursor within a keyword will explain what setting it's bound to.
To change the skin/theme you can put the following in your user behaviors:
:app [(:lt.objs.style/set-skin "light")]
:editor [(:lt.objs.style/set-theme "codemirror")]bootstrap.js[16107]: nil screen-dark.css[43]: Invalid CSS selector: #content ol li::marker
I get its still in Alpha, but just what difference.
Can't find this in the documentation, so wondering two things:
1. Is there a way to get a python console?
2. I have a Flask app. Can I run it directly from LT?
2. Yes!
Admittedly, that's not too user friendly