0:00:01.155,0:00:03.500 Hey guys, this is Steve Losh. 0:00:03.500,0:00:06.803 If you're watching this screencast you probably already know that I've been writing a book 0:00:06.803,0:00:08.739 called "Learn Vimscript the Hard Way". 0:00:08.739,0:00:11.900 I figured I'd do a screencast while I wrote one of the shorter chapters 0:00:11.900,0:00:15.300 just to show you kind of how I work and how I'm making the book. 0:00:15.300,0:00:21.202 So first what I'm going to do is open an iTerm window... 0:00:21.571,0:00:25.009 and let's make it nice and big... okay. 0:00:25.009,0:00:30.290 I'm going to open DVTM, which is -- it's a terminal multiplexer, kind of like Tmux or Screen, 0:00:30.290,0:00:33.878 just a lot simpler. I don't really use all the functionality of Tmux or Screen, 0:00:33.878,0:00:38.329 so DVTM does pretty much everything I need. 0:00:38.329,0:00:43.200 And I'm going to open three splits with one of them a little smaller. 0:00:43.200,0:00:50.038 I'm going to go into the repo for the book in each of them. 0:00:54.346,0:01:02.015 In this window I'm going to run a little script -- a little program called "kicker", 0:01:02.015,0:01:07.193 which is open source, it's Ruby so you can just "gem install kicker". 0:01:07.193,0:01:11.935 What it does is it basically monitors all the files that you tell it 0:01:11.935,0:01:14.371 and whenever any one of them changes it just runs a command. 0:01:14.371,0:01:15.992 Any shell command you want. 0:01:15.992,0:01:18.507 So in this case I'm the command that builds the book, 0:01:18.507,0:01:22.985 so any time I make a change to the book it will automatically get built, which is really handy. 0:01:22.985,0:01:27.867 So I'm going to run that, and it fires off -- oops, sorry, I need to be in the virtualenv. 0:01:27.867,0:01:32.318 "workon" the virtualenv... okay. Now I'm going to run kicker... okay. 0:01:32.318,0:01:34.807 And it goes ahead and does it once to begin with, 0:01:34.807,0:01:37.233 and then any time I touch a file that I told it to watch, 0:01:37.233,0:01:43.448 so if I go here and say "touch preface" you can it executes again. 0:01:43.448,0:01:49.000 Okay. The other thing I'm going to do is "cd" into the "build" directory, 0:01:49.000,0:01:53.985 where the output of Bookmarkdown is going to put the HTML files, 0:01:53.985,0:01:58.367 and I'm just going to run "serve_this", which is a little alias 0:01:58.367,0:02:02.867 that basically serves the current directory on port 8000. 0:02:02.867,0:02:09.892 And if you want to see what it is, it's just a Python module -- it's just 0:02:09.892,0:02:12.733 "python -m SimpleHTTPServer" 0:02:12.733,0:02:15.579 SimpleHTTPServer is a built-in Python module, 0:02:15.579,0:02:20.225 so anywhere that has Python, I mean a relatively recent version, will have this. 0:02:20.225,0:02:24.800 So it's just a simple command to serve a directory on port 8000. 0:02:24.800,0:02:31.362 And I'm going to open Firefox and open localhost:8000. 0:02:31.362,0:02:36.433 Alright, so this is our book, right, this is what I've got so far. 0:02:36.433,0:02:40.062 I'm going to move that over here... okay, 0:02:40.062,0:02:43.200 ah, we don't need it that big. 0:02:43.200,0:02:50.533 Alright, we've got a book. And now I'm just going to open Vim and start working. 0:02:50.533,0:02:53.041 I'm not going to comment on everything and explain how I do everything 0:02:53.041,0:02:54.730 because that would just take forever. 0:02:54.730,0:02:57.400 Everything's in my muscle memory and I'd have to stop and think about every key I press 0:02:57.400,0:03:01.278 so if you see something that I do and you're kinda wondering how I did it 0:03:01.278,0:03:06.340 just leave a comment with the time in the video that it appears and I'll do my best to explain it for you. 0:03:06.340,0:03:10.438 With that said, I'm just going to put my headphones on and start typing. Cool. 0:44:16.900,0:44:19.533 Okay guys, I think that's about it. 0:44:19.533,0:44:25.467 I'm going to encode this screencast and upload it to Vimeo and that should be about it. 0:44:25.467,0:44:29.501 Like I said, if there's anything that you saw and you liked and you want to know how I did it 0:44:29.501,0:44:32.339 or you think I have a special mapping, 0:44:32.339,0:44:36.695 just post a comment on the video and -- or just tweet at me, either one -- 0:44:36.695,0:44:42.541 and just let me know the time and what it looks like and I'll let you know. 0:44:42.541,9:59:59.000 Otherwise I guess that's it. Alright, cool. Thanks guys.