{"action":"created","comment":{"url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/comments/29115487","id":29115487,"diff_hunk":"@@ -0,0 +1,1234 @@\n+#             Welcome   to   the   VIM   Tutor\n+\n+Vim is a very powerful and popular editor that has many commands. Unlike most\n+text editors where you use the keyboard to enter text and arrow keys to move you\n+cursor, Vim uses the keyboard to enter commands to manipulate the text.\n+There is a great amount of commands, too many to explain in a tutor such as\n+this, but as you will see over the course of this tutorial series these commands\n+are not arbitrarily chosen, they form a language with its own grammar.\n+\n+This tutor is designed to describe enough of the commands\n+that you will be able to easily use Vim as an all-purpose editor.  It is\n+IMPORTANT to remember that this tutor is set up to teach by use.  That means\n+that you need to do the exercises to learn them properly.  If you only read\n+the text, you will soon forget what is most important!\n+\n+NOTE: The commands in the lessons will modify the text, but those changes won't\n+be saved.  Don't worry about messing things up; just remember that pressing\n+[«<Esc>»](<Esc>) and then [u](u) will undo the latest change.\n+\n+This tutorial is interactive, and there are a few things you should know.\n+Pressing [«<Enter>»](<Enter>) over text highlighted [like this](holy-grail) will take you to some relevant\n+help (hopefully), and pressing ? over any word will try to do so too.  You can close\n+the help window by pressing «q».  Sometimes you will be required to modify text like\n+--->  this here {expect:this here}\n+Once you have done the changes correctly, the ✗ sign at the left will change\n+to ✓. I imagine you can already see how neat Vim can be ;)\n+Other times, you'll be prompted to run a command (I'll explain this later):\n+~~~ viml\n+    :help <Enter>\n+~~~\n+or press a sequence of keys\n+\n+    <Esc>0f<SPACE>d3wP$P\n+\n+Text within <'s and >'s (like <Enter>) describes a key to press instead of text\n+to type.\n+\n+Now, make sure that your Shift-Lock key is NOT depressed and press the «j»\n+key enough times to move the cursor so that Lesson 1.1 completely fills the\n+screen.\n+\n+## Lesson 1.1: MOVING THE CURSOR\n+\n+** To move the cursor, press the «h», «j», «k», «l» keys as indicated. **\n+\n+           ↑\n+           k       Hint: The h key is at the left and moves left.\n+        ←h   l→          The l key is at the right and moves right.\n+           j             The j key looks like a down arrow.\n+           ↓\n+\n+        ← ↓ ↑ →\n+        h j k l\n+\n+  1. Move the cursor around the screen until you are comfortable.\n+\n+  2. Hold down the down key (j) until it repeats.\n+     Now you know how to move to the next lesson.\n+\n+  3. Using the down key, move to Lesson 1.2.\n+\n+NOTE: If you are ever unsure about something you typed, press <Esc> to place\n+      you in Normal mode.  Then retype the command you wanted.\n+\n+NOTE: The cursor keys should also work, but these keys have not been chosen\n+      arbitrarily, they are on the right-hand side of the home row, allowing you\n+      to mode the curse without taking youre hand off. Once getting used to hjkl\n+      you will be able to move around much faster. Really!\n+\n+# Lesson 1.2: EXITING VIM\n+\n+!! NOTE: Before executing any of the steps below, read this entire lesson !!\n+\n+  1. Press the <Esc> key (to make sure you are in [Normal](Normal) [mode](vim-modes)).\n+\n+  2. Type:\n+\n+     :q! <Enter>.\n+\n+     This exits the editor, DISCARDING any changes you have made. The\n+\t exclamation mark \"supercharges\" the [:q](:q) command.\n+\n+  3. Open vim and get back here by executing the command that got you into this\n+     tutor. That might be:\n+\n+     :Vimtutor <Enter>\n+\n+  4. If you have these steps memorized and are confident, execute steps\n+     1 through 3 to exit and re-enter the editor.\n+\n+NOTE:  The command  [:q!](:q) <Enter>  discards any changes you have made. In a\n+       few lessons you will learn how to save the changes to a file.\n+\n+  5. Move the cursor down to Lesson 1.3.\n+\n+# Part 1: COUNT, OPERATOR, MOTION -- ACTION\n+\n+Before we continue we need to understand the concept of modal editing first:\n+most editors have two modes, a mode where you enter text and a mode where you\n+select text.\n+\n+You have already met two of Vim's modes so far: normal mode which\n+is the default mode of Vim where you move around the cursor, and command mode\n+when you entered the command to quit Vim. You will soon meet insert mode which\n+lets you type text and visual mode which lets you visually select text. Out of\n+these normal mode is where you will spend most of your time.\n+\n+Keyboard keys have different effects depending on the mode you are in: pressing\n+the j key in normal mode will move the cursor downwards, but pressing the same\n+key in insert mode will place a j character in your text.\n+\n+The next important thing we need to keep in mind is how the syntax of Vim\n+commands works: unlike most editor where keyboard commands are just shortcuts,\n+Vim commands are part of a language with its own grammar and vocabulary.\n+\n+The structure of a \"sentence\" is *count**operator**motion*. Don't think too\n+much about if for now, all that is important to know is that once you have\n+learned a new vocable you can use it along with the ones you already know to\n+construct completely new sentences. This is what makes Vim so productive, you\n+tell it exactly what it is you want to do. Soon a sequence like this\n+\n+    <Esc>0f<SPACE>d3wP$P\n+\n+will read to you like a regular sentence instead of a seemingly random\n+collection of letters and symbols.\n+\n+You have already learned four motions so far: h, j, k and l.\n+\n+\n+# Lesson 2.4: USING A COUNT FOR A MOTION\n+\n+** Typing a number before a motion repeats it that many times. **\n+\n+  1. Move the cursor to the start of the line marked ---> below.\n+\n+  2. Type  «2l»  to move the cursor two characters forward.\n+\n+  3. Type  «3h»  to move the cursor three character backwards.\n+\n+  4. Type  «0»  ([zero](0)) to move to the start of the line.\n+\n+  5. Repeat steps 2 and 3 with different numbers.\n+\n+---> This is just a line with words you can move around in. {expect:NULL}\n+\n+  6. Move on to Lesson 2.5.\n+\n+Strictly speaking 0 on its own is not a count, it is a motion that moves to the\n+beginning of the current line, but a count can contain the digit 0. Typing «10j»\n+will move the cursor ten lines down.\n+\n+You can now move more than one character at a time, but constantly typing in a\n+count is cumbersome. There are better motions for moving around.\n+\n+# Lesson something.something: WORD-WISE MOTION\n+\n+** Moving word-wise is faster than character-wise **\n+\n+  1. Move the cursor to the start of the line marked ---> below.\n+\n+  2. Press «w» to move the cursor to the first character of the next word.\n+\n+  3. Press «e» to move the cursor to the last character of the current word.\n+\n+  4. Press «b» to move the cursor to the first character of the current word or\n+     first character of the previous word.\n+\n+  5. Now try to above commands by prepending a count: «2w».\n+\n+  6. Press «W», «E» and «B», moves across WORDs instead of words.\n+\n+---> This is just a line with words you can move around in. {expect:NULL}\n+\n+The mnemonics of these operators have been chosen to be easy to remember:\n+[w](w) stands for *word*, [e](e) stands for *end* and [b](b) stands for\n+*beginning*.\n+\n+But what do [W](W), [E](E) and [B](B) stand for? Vim knows of two different\n+types of \"words\": [word](word) and [WORD](WORD). A word is what you will want\n+pretty much all the time, because it is more restrictive, while a WORD is any\n+sequence of non-blank characters. Try it out, compare the lower-case motions\n+with their upper-case variants.\n+\n+---> The string class.method is three words but only one WORD. {expect:NULL}\n+\n+For the exact definitions consult the help. This also goes to demonstrate a\n+common convention: an upper-case variant of an operator performs a similar but\n+\"supercharged\" version of the operator.\n+\n+\n+We will learn more motions later, but with these three you can already move\n+much faster through your text than if you were using the cursor keys directly,\n+especially if you combine them with a count. Character-wise movement should\n+only be used for small position adjustments from now on.\n+\n+\n+## Lesson 1.3: TEXT EDITING - DELETION\n+\n+** Press  «x»  to delete the character under the cursor. **\n+\n+  1. Move the cursor to the line below marked --->.\n+\n+  2. To fix the errors, move the cursor until it is on top of the\n+     character to be deleted.\n+\n+  3. Press [the «x» key](x) to delete the unwanted character.\n+\n+  4. Repeat steps 2 through 4 until the sentence is correct.\n+\n+  5. Press «2x» to delete two characters at a time, starting with the character\n+     under the cursor.\n+\n+---> The ccow jumpedd ovverrr thhhe mooon. {expect:The cow jumped over the moon.}\n+\n+  5. Now that the line is correct, go on to Lesson 1.4.\n+\n+The «x» command is an operator, meaning it tells Vim to do something. You can\n+combine it with a count, but it does not take a motion, it always operates on\n+the character it is on. So you can tell it to delete two characters, but not to\n+delete the current word. We will use a different operator for that.\n+\n+\n+# Lesson 1.4: TEXT EDITING: INSERTION\n+\n+** Press  «i» and «I» to insert text. **\n+\n+  1. Move the cursor to the first line below marked --->.\n+\n+  2. To make the first line the same as the second, move the cursor on top\n+     of the first character AFTER where the text is to be inserted.\n+\n+\t Tip: use the «w» motion you learned before to jump to the beginning of the\n+\t      word where you want to insert.\n+\n+  3. Press  [«i»](i)  and type in the necessary additions.\n+\n+  4. As each error is fixed press <Esc> to return to Normal mode.\n+     Repeat steps 2 through 4 to correct the sentence.\n+\n+---> There is text misng this . {expect:There is some text missing from this line.}\n+---> There is some text missing from this line. {expect:There is some text missing from this line.}\n+\n+  5. You can use the upper-case version «I» to insert text at the beginning of\n+     the line regardless of where on the line your custor is. Place the cursor\n+\t anywhere on the line below and hit «I» to insert.\n+\n+---> is some text missing from this line. {expect:There is some text missing from this line.}\n+---> There is some text missing from this line. {expect:There is some text missing from this line.}\n+\n+The «i» operator does not take any count or motion, it drops us straight into\n+insert mode. There are actually operators that can take a cound and motion\n+before transitioning into insert mode, but they wouldn't make sense here.\n+\n+# Lesson 1.5: TEXT EDITING: APPENDING\n+\n+** Press  «a» and «A»  to append text. **\n+\n+  1. Move the cursor to the first line below marked --->.\n+\n+  2. To make the first line the same as the second, move the cursor on top\n+     of the first character BEFORE where the text is to be inserted.\n+\n+\t Tip: use the «e» motion you learned before to jump to the end of the word\n+\t where you want to append.\n+\n+  3. As the text has been appended press <Esc> to return to Normal mode.\n+\n+---> There is text misng this. {expect:There is some text missing from this line.}\n+---> There is some text missing from this line. {expect:There is some text missing from this line.}\n+\n+  5. You can use the upper-case version «A» to append text at the end of the\n+     line regardless of where on the line your custor is. Place the cursor\n+     anywhere on the line below and hit «A» to append.\n+\n+---> There is some text missing from th {expect:There is some text missing from this line.}\n+---> There is some text missing from this line. {expect:There is some text missing from this line.}\n+\n+Appending is very similar to inserting, except it appends text after the cursor.\n+You will use both commands frequently, so you should get into the habit of using\n+both when they are appropiate. Don't use «li» (move left, then insert) to append\n+text, that is slower and less repeatable than appending directly.  One core idea\n+in Vim is to do tasks in as few steps as possible, which can then be automated.\n+Get early into the habit of being lazy.\n+\n+# Lesson 6.1: THE OPEN COMMAND\n+\n+** Type  o  to open a line below the cursor and place you in Insert mode. **\n+\n+You can create a new line and enter insert mode immediately using this one\n+operator.\n+\n+  1. Move the cursor to the line below marked --->.\n+\n+  2. Type the lowercase letter «o» to [open](o) up a line BELOW the cursor and place\n+     you in Insert mode.\n+\n+  3. Now type some text and press <Esc> to exit Insert mode.\n+\n+---> After typing  o  the cursor is placed on the open line in Insert mode. {expect:NULL}\n+\n+  4. To open up a line ABOVE the cursor, simply type a [capital O](O), rather\n+     than a lowercase «o».  Try this on the line below.\n+\n+---> Open up a line above this by typing O while the cursor is on this line. {expect:NULL}\n+\n+This is faster and more repeatable than moving to the end of a line,\n+entering append mode and adding a new line.\n+\n+# Lesson something.something: DELETING\n+\n+** Press «d» and «D» to delete text **\n+\n+  1. Move the cursor to the first line below marked --->.\n+\n+  2. Move the cursor to the beginning of a word that needs to be deleted.\n+\n+  3. Type [«d»](d)[«w»](w) to make the word disappear.\n+\n+---> There are a some words fun that don't belong paper in this sentence. {expect:There are some words that don't belong in this sentence.}\n+---> There are a some words that don't belong in this sentence. {expect:There are some words that don't belong in this sentence.}\n+\n+  4. Now try deleting two words at a time using a count: Position the cursor on\n+     the beginning of \"two\" and type «2dw»\n+\n+---> There are too many words in this sentence. {expect:There are words in this sentence.}\n+---> There are words in this sentence. {expect:There are words in this sentence.}\n+\n+  4. On the line below move the curse behind the period. We don't want anyone\n+     to read the second sentence, so move the cursor behind the period and hit\n+     [«D»](D) to delete until the end of the line.\n+\n+---> The report will be done by Thursday. I hate my job so much... {expect:The report will be done by Thursday.}\n+\n+The operator [«d»](d) stands for \"delete\" and deletes according to a motion. If\n+we type «dw» it will delete anything up until the beginning of the next word.\n+We can use any other motion as well, so «de» will delete until including the\n+last character of the current word, «dh» will delete the character left from the\n+cursor and «dl» will delete the character under the cursor, similar to «x». Go\n+ahead and try the «d» command with all the motions you have learned so far.\n+\n+# Lesson something.something: CHANGING TEXT\n+\n+** The «c» operator deletes text and places us in insert mode. **\n+\n+  1. Place the cursor at the beginning of a word you want to change.\n+\n+  2. Press «ce» or «cw» to change the word without affecting the surrounding whitespace.\n+\n+---> This lubw has a few wptfd that mrrf changing usf the change operator. {expect:This line has a few words that need changing using the change operator.}\n+---> This line has a few words that need changing using the change operator. {expect:This line has a few words that need changing using the change operator.}\n+\n+  3. We want to change the last sentence. Move the cursor behind the first\n+     period and press «C», enter to correct sentence and leave inster mode.\n+\n+---> The report will be done by Thursday. I hate my job so much... {expect:The report will be done by Thursday. This is the best job ever!}\n+---> The report will be done by Thursday. This is the best job ever! {expect:The report will be done by Thursday. This is the best job ever!}\n+\n+The «c» operator is like deleting a piece of text with the «d» operator and\n+then entering instert mode via «i». However, having an operator that does both\n+in one step makes the action more repeatable.\n+\n+One word of caution: the «c» operator is somewhat of an anomaly when used with\n+the «w» motion. Usually that motion would move to the beginning of the next\n+word, but in this particular case it acts like the «e» motion. This is\n+conscious design choice by the Vim developers, not a bug.\n+\n+# Lesson something.something: REPLACING TEXT\n+\n+** The «r» operator overwrites a character and «R» overwrites multiple ones **\n+\n+When we want to correct only one character it would be too much work to enter\n+and exit insert mode just for that.\n+\n+  1. Position your cursor on a wrong character.\n+\n+  2. Type «r» followed by the correct character to replace it.\n+\n+  3. Repeat for the remaining characters.\n+\n+---> Whan this lime was tuoed in, someone presswd some wrojg keys! {expect:When this line was typed in, someone pressed some wrong keys!}\n+---> When this line was typed in, someone pressed some wrong keys! {expect:When this line was typed in, someone pressed some wrong keys!}\n+\n+If we have many characters to replace it would be cumbersome and unrepeatable\n+to hit «r» every time. There is a supercharged version of the operator.\n+\n+  1. Move the cursor to the beginning of the first \"xxx\".\n+\n+  2. Now press «R» ([capital R](R)) and type the number below it in the second line, so that it\n+     replaces the \"xxx\".\n+\n+  3. Write over the existing characters. If you make a mistake press backspace\n+     to restore the character.\n+\n+  3. Press <Esc> to leave [Replace mode](mode-replace).  Notice that the rest of the line\n+     remains unmodified.\n+\n+  4. Repeat the steps to replace the remaining xxx.\n+\n+---> Adding 123 to xxx gives you xxx. {expect:Adding 123 to 456 gives you 579.}\n+---> Adding 123 to 456 gives you 579. {expect:Adding 123 to 456 gives you 579.}\n+\n+\n+# Lesson something.something: BEGINNING AND END OF LINE MOTIONS\n+\n+Often times we want to do something with the beginning or the end of a line.\n+There are two particular motions for this: «0» and «$».\n+\n+  1. Move your cursor on the first letter of the word \"This\".\n+\n+  2. Press «d0» to delete everything until the beginning of the line.\n+\n+  3. Press «$» to jump to the end of the line and press «i» to insert the\n+     missing word.\n+\n+---> asdf This is a. {expect:This is a sentence.}\n+---> This is a sentence. {expect:This is a sentence.}\n+\n+These two motions can be combined with any of the previous operators to affect\n+everything on the line before or after the cursort. You can also use them to\n+jump the cursor quickly around.\n+\n+We have already met the «D» and «C» operators which act exacly the same way as\n+«d$» and «c$», so which one should you use? They are both equally repeatable\n+because both are only once action, but the former require fewer keystrokes.\n+\n+\n+# Lesson something.something: CHARACTER- AND LINEWISE MOTION\n+\n+** The «l» motion operates on a single character and «_» on the line **\n+\n+  1. Position your cursor on the p in \"mption\".\n+\n+  2. Press «cl» to enter insert mode, make the correction and exit back.\n+\n+---> Every mption we learn allows construction of new actions. {expect:Every motion we learn allows construction of new actions.}\n+---> Every motion we learn allows construction of new actions. {expect:Every motion we learn allows construction of new actions.}\n+\n+Since this is a very common motion you can also use the space bar, it has the\n+same effect. Pick whichever you prefer.\n+\n+Now let's try the line-wise motion.\n+\n+  1. Position your cursor anywhere on the line below.\n+\n+  2. Press «d_» to delete the entire line.\n+\n+---> This line has to go. {expect:NULL}\n+\n+Line-wise actions are very common and so there is a special convention: use the\n+operator as motion as well to affect the entire line.\n+\n+  1. Press «cc» To change the contents of the entire line.\n+\n+---> Change this line. {expect:This is the way it should be.}\n+---> This is the way it should be. {expect:This is the way it should be.}\n+\n+This is generally preferrable to the underscore motion above. Ultimately it\n+makes no difference, but most instruction use the doubled form.\n+\n+\n+# Lesson something.something: FINDING MOTION\n+\n+** The «f» and «t» motions can jump to a particular character **\n+\n+We have already learned about word-wise motions, but what if we want to make\n+even bigger jumps? We can specify a character to jump to. We can repeat the\n+jump with «;».\n+\n+  1. Move the cursor to the beginning of the line.\n+\n+  2. Press «fu» to jump to the first occurence of the 'u' character.\n+\n+  3. Oops, we haven't reached our target yet. Press «;» to repeat the search.\n+\n+  4. Now change the word.\n+\n+---> The brown fox jumps under the lazy dog. {expect:The brown fox jumps over the lazy dog.}\n+---> The brown fox jumps over the lazy dog. {expect:The brown fox jumps over the lazy dog.}\n+\n+If we don't want to include the character we have searched for we can use the\n+«t» motion. It stands for \"'til\" as in \"until\".\n+\n+  1. Place the cursor at the first character of the sequence to change.\n+\n+  2. Press «ct» to change 'til the period.\n+\n+---> This sentence was good until I lost it. {expect:This sentence is just right.}\n+---> This sentence is just right. {expect:This sentence is just right.}\n+\n+We can also perform these motion in the other direction using their upper-case\n+variants. This time the upper-case does not supercharge the motion, it does its\n+opposite. That's also common convention. Try it out:\n+\n+  1. Place the cursor at the end of the sentence.\n+\n+  2. Press «cFu» to jump backwards and change the sentence.\n+\n+---> The brown fox jumps under the bus. {expect:The brown fox jumps over the lazy dog.}\n+---> The brown fox jumps over the lazy dog. {expect:The brown fox jumps over the lazy dog.}\n+\n+It is not always a good idea to search for the character we want. If it's a very\n+common character we will waste keystrokes skipping over the false positives.\n+Often times it's better to jump to a nearby but less common character and then\n+correct the position by one or two.\n+\n+# Lesson something.something: UNDO, REDO AND REPEAT\n+\n+** We can undo and redo changes. More imporantly though, we can repeat them **\n+\n+To undo a change press «u», press «C-R» to redo it again.\n+\n+  1. Make some change to the line to break it.\n+\n+  2. Undo your change by pressing «u».\n+\n+  3. You can re-apply the change pressing «C-R».\n+\n+---> Everything is great. {expect:Everything is great.}\n+\n+In the lessons above I have been metioning repeatability of actions and here is\n+where it comes into play. We can repeat any last action using the period «.»\n+operator.\n+\n+  1. Navigate to the first wrong word and change it with «ce».\n+\n+  2. After the change exit insert mode immediately and jump to the next word.\n+\n+  3. Now press «.» and see the change take effect immediately.\n+\n+---> Roses are blue, and tomatoes are blue as well. {expect:Roses are red, and tomatoes are red as well.}\n+---> Roses are red, and tomatoes are red as well. {expect:Roses are red, and tomatoes are red as well.}\n+\n+An action consits of a count, an operator and a motion, you know that already.\n+What I did not tell you is that everything you type in isert mode is part of\n+the action as well. This means you can repeat entire phrases, sentences or even\n+paragraphs. The only catch is that you cannot leave insert mode or it ends the\n+action.\n+\n+The dot is actually a macro and always contains the last action. We will\n+later learn how to define our own macros which are more powerful than that. We\n+will also learn how to transplant text properly.\n+\n+The dot is still very powerful and you should use it whenever the possibility\n+arises. Like most other operators it can be combined with a motion.\n+\n+## Lesson something.something: THE PUT COMMAND\n+\n+** Typ p to put previously deleted text after the cursor. **\n+\n+The «p» operator can put previously deleted text after the cursor, and the\n+upper-case variant places it in front of the cursor.\n+\n+  1. Type  «dd»  on the d) line to delete the.\n+\n+  2. Move the cursor to the c) line, ABOVE where the deleted line should go.\n+\n+  3. Type   «p»   to put the line below the cursor.\n+\n+  4. Now delete the a) line below and move the cursor to the b) line.\n+\n+  5. Type   «P»   to put the line above the cursor.\n+\n+---> d) Can you learn too? {expect:NULL}\n+---> b) Violets are blue, {expect:NULL}\n+---> c) Intelligence is learned, {expect:NULL}\n+---> a) Roses are red, {expect:NULL}\n+\n+The deleted text is stored in a register and always contains the last deletion","path":"new_01-vim-beginner.tutor","position":568,"original_position":568,"commit_id":"96b81c290a0fba900f7601c4208a931e5e834f20","original_commit_id":"96b81c290a0fba900f7601c4208a931e5e834f20","user":{"login":"HiPhish","id":4954650,"avatar_url":"https://avatars.githubusercontent.com/u/4954650?v=3","gravatar_id":"","url":"https://api.github.com/users/HiPhish","html_url":"https://github.com/HiPhish","followers_url":"https://api.github.com/users/HiPhish/followers","following_url":"https://api.github.com/users/HiPhish/following{/other_user}","gists_url":"https://api.github.com/users/HiPhish/gists{/gist_id}","starred_url":"https://api.github.com/users/HiPhish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HiPhish/subscriptions","organizations_url":"https://api.github.com/users/HiPhish/orgs","repos_url":"https://api.github.com/users/HiPhish/repos","events_url":"https://api.github.com/users/HiPhish/events{/privacy}","received_events_url":"https://api.github.com/users/HiPhish/received_events","type":"User","site_admin":false},"body":"Buffer is a no-go, as the term means something very specific in Vim. how about:\r\n\r\n> The deleted text is stored in a so-called register, memory holding some text\r\ntemporarliy, and always contains the last deletion or yank (see next lesson).","created_at":"2015-04-26T23:20:29Z","updated_at":"2015-04-26T23:20:29Z","html_url":"https://github.com/fmoralesc/vim-tutor-mode/pull/24#discussion_r29115487","pull_request_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/24","_links":{"self":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/comments/29115487"},"html":{"href":"https://github.com/fmoralesc/vim-tutor-mode/pull/24#discussion_r29115487"},"pull_request":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/24"}}},"pull_request":{"url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/24","id":33907708,"html_url":"https://github.com/fmoralesc/vim-tutor-mode/pull/24","diff_url":"https://github.com/fmoralesc/vim-tutor-mode/pull/24.diff","patch_url":"https://github.com/fmoralesc/vim-tutor-mode/pull/24.patch","issue_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/issues/24","number":24,"state":"open","locked":false,"title":"First draft of the first tutorial.","user":{"login":"HiPhish","id":4954650,"avatar_url":"https://avatars.githubusercontent.com/u/4954650?v=3","gravatar_id":"","url":"https://api.github.com/users/HiPhish","html_url":"https://github.com/HiPhish","followers_url":"https://api.github.com/users/HiPhish/followers","following_url":"https://api.github.com/users/HiPhish/following{/other_user}","gists_url":"https://api.github.com/users/HiPhish/gists{/gist_id}","starred_url":"https://api.github.com/users/HiPhish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HiPhish/subscriptions","organizations_url":"https://api.github.com/users/HiPhish/orgs","repos_url":"https://api.github.com/users/HiPhish/repos","events_url":"https://api.github.com/users/HiPhish/events{/privacy}","received_events_url":"https://api.github.com/users/HiPhish/received_events","type":"User","site_admin":false},"body":"The PR you wanted.","created_at":"2015-04-22T22:25:14Z","updated_at":"2015-04-26T23:20:29Z","closed_at":null,"merged_at":null,"merge_commit_sha":"b363274ac36484b13055ff5320af686d7fe23ae4","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/24/commits","review_comments_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/24/comments","review_comment_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/comments{/number}","comments_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/issues/24/comments","statuses_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/statuses/96b81c290a0fba900f7601c4208a931e5e834f20","head":{"label":"HiPhish:feature-tut1","ref":"feature-tut1","sha":"96b81c290a0fba900f7601c4208a931e5e834f20","user":{"login":"HiPhish","id":4954650,"avatar_url":"https://avatars.githubusercontent.com/u/4954650?v=3","gravatar_id":"","url":"https://api.github.com/users/HiPhish","html_url":"https://github.com/HiPhish","followers_url":"https://api.github.com/users/HiPhish/followers","following_url":"https://api.github.com/users/HiPhish/following{/other_user}","gists_url":"https://api.github.com/users/HiPhish/gists{/gist_id}","starred_url":"https://api.github.com/users/HiPhish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HiPhish/subscriptions","organizations_url":"https://api.github.com/users/HiPhish/orgs","repos_url":"https://api.github.com/users/HiPhish/repos","events_url":"https://api.github.com/users/HiPhish/events{/privacy}","received_events_url":"https://api.github.com/users/HiPhish/received_events","type":"User","site_admin":false},"repo":{"id":34199149,"name":"vim-tutor-mode","full_name":"HiPhish/vim-tutor-mode","owner":{"login":"HiPhish","id":4954650,"avatar_url":"https://avatars.githubusercontent.com/u/4954650?v=3","gravatar_id":"","url":"https://api.github.com/users/HiPhish","html_url":"https://github.com/HiPhish","followers_url":"https://api.github.com/users/HiPhish/followers","following_url":"https://api.github.com/users/HiPhish/following{/other_user}","gists_url":"https://api.github.com/users/HiPhish/gists{/gist_id}","starred_url":"https://api.github.com/users/HiPhish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HiPhish/subscriptions","organizations_url":"https://api.github.com/users/HiPhish/orgs","repos_url":"https://api.github.com/users/HiPhish/repos","events_url":"https://api.github.com/users/HiPhish/events{/privacy}","received_events_url":"https://api.github.com/users/HiPhish/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/HiPhish/vim-tutor-mode","description":"interactive tutorials for vim","fork":true,"url":"https://api.github.com/repos/HiPhish/vim-tutor-mode","forks_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/forks","keys_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/keys{/key_id}","collaborators_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/teams","hooks_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/hooks","issue_events_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/issues/events{/number}","events_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/events","assignees_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/assignees{/user}","branches_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/branches{/branch}","tags_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/tags","blobs_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/git/refs{/sha}","trees_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/git/trees{/sha}","statuses_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/statuses/{sha}","languages_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/languages","stargazers_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/stargazers","contributors_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/contributors","subscribers_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/subscribers","subscription_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/subscription","commits_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/commits{/sha}","git_commits_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/git/commits{/sha}","comments_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/comments{/number}","issue_comment_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/issues/comments{/number}","contents_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/contents/{+path}","compare_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/compare/{base}...{head}","merges_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/merges","archive_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/downloads","issues_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/issues{/number}","pulls_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/pulls{/number}","milestones_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/milestones{/number}","notifications_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/labels{/name}","releases_url":"https://api.github.com/repos/HiPhish/vim-tutor-mode/releases{/id}","created_at":"2015-04-19T08:30:56Z","updated_at":"2015-04-19T08:30:57Z","pushed_at":"2015-04-20T22:12:43Z","git_url":"git://github.com/HiPhish/vim-tutor-mode.git","ssh_url":"git@github.com:HiPhish/vim-tutor-mode.git","clone_url":"https://github.com/HiPhish/vim-tutor-mode.git","svn_url":"https://github.com/HiPhish/vim-tutor-mode","homepage":"","size":176,"stargazers_count":0,"watchers_count":0,"language":"VimL","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"fmoralesc:master","ref":"master","sha":"3dc55e4160248c47b1cf3beb0f88f3e3806720e3","user":{"login":"fmoralesc","id":221465,"avatar_url":"https://avatars.githubusercontent.com/u/221465?v=3","gravatar_id":"","url":"https://api.github.com/users/fmoralesc","html_url":"https://github.com/fmoralesc","followers_url":"https://api.github.com/users/fmoralesc/followers","following_url":"https://api.github.com/users/fmoralesc/following{/other_user}","gists_url":"https://api.github.com/users/fmoralesc/gists{/gist_id}","starred_url":"https://api.github.com/users/fmoralesc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fmoralesc/subscriptions","organizations_url":"https://api.github.com/users/fmoralesc/orgs","repos_url":"https://api.github.com/users/fmoralesc/repos","events_url":"https://api.github.com/users/fmoralesc/events{/privacy}","received_events_url":"https://api.github.com/users/fmoralesc/received_events","type":"User","site_admin":false},"repo":{"id":28312035,"name":"vim-tutor-mode","full_name":"fmoralesc/vim-tutor-mode","owner":{"login":"fmoralesc","id":221465,"avatar_url":"https://avatars.githubusercontent.com/u/221465?v=3","gravatar_id":"","url":"https://api.github.com/users/fmoralesc","html_url":"https://github.com/fmoralesc","followers_url":"https://api.github.com/users/fmoralesc/followers","following_url":"https://api.github.com/users/fmoralesc/following{/other_user}","gists_url":"https://api.github.com/users/fmoralesc/gists{/gist_id}","starred_url":"https://api.github.com/users/fmoralesc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fmoralesc/subscriptions","organizations_url":"https://api.github.com/users/fmoralesc/orgs","repos_url":"https://api.github.com/users/fmoralesc/repos","events_url":"https://api.github.com/users/fmoralesc/events{/privacy}","received_events_url":"https://api.github.com/users/fmoralesc/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/fmoralesc/vim-tutor-mode","description":"interactive tutorials for vim","fork":false,"url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode","forks_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/forks","keys_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/keys{/key_id}","collaborators_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/teams","hooks_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/hooks","issue_events_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/issues/events{/number}","events_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/events","assignees_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/assignees{/user}","branches_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/branches{/branch}","tags_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/tags","blobs_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/git/refs{/sha}","trees_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/git/trees{/sha}","statuses_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/statuses/{sha}","languages_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/languages","stargazers_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/stargazers","contributors_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/contributors","subscribers_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/subscribers","subscription_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/subscription","commits_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/commits{/sha}","git_commits_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/git/commits{/sha}","comments_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/comments{/number}","issue_comment_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/issues/comments{/number}","contents_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/contents/{+path}","compare_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/compare/{base}...{head}","merges_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/merges","archive_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/downloads","issues_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/issues{/number}","pulls_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls{/number}","milestones_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/milestones{/number}","notifications_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/labels{/name}","releases_url":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/releases{/id}","created_at":"2014-12-21T20:26:41Z","updated_at":"2015-04-19T23:46:53Z","pushed_at":"2015-04-22T22:25:15Z","git_url":"git://github.com/fmoralesc/vim-tutor-mode.git","ssh_url":"git@github.com:fmoralesc/vim-tutor-mode.git","clone_url":"https://github.com/fmoralesc/vim-tutor-mode.git","svn_url":"https://github.com/fmoralesc/vim-tutor-mode","homepage":"","size":692,"stargazers_count":43,"watchers_count":43,"language":"VimL","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":5,"mirror_url":null,"open_issues_count":7,"forks":5,"open_issues":7,"watchers":43,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/24"},"html":{"href":"https://github.com/fmoralesc/vim-tutor-mode/pull/24"},"issue":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/issues/24"},"comments":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/issues/24/comments"},"review_comments":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/24/comments"},"review_comment":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/pulls/24/commits"},"statuses":{"href":"https://api.github.com/repos/fmoralesc/vim-tutor-mode/statuses/96b81c290a0fba900f7601c4208a931e5e834f20"}}}}