{"schemaVersion":1,"contentVersion":"3.4.0","id":"intermediate.5","languages":{"javascript":{"id":"intermediate.5","title":"Copy and move text","moduleName":"Boundaries and reusable text","tips":"","concept":"<p class=\"lead\">Predict where characterwise and linewise copies will be put.</p><p><strong>Before this lesson:</strong> Operators and line boundaries.</p><p>y copies; d removes and copies. yy and dd are linewise: p puts their content below the current line, P above. A characterwise copy such as yiw is put after the cursor with p or before it with P. The unnamed register can change after another deletion.</p><h3>Example</h3><p>With the cursor on a first checklist line, yy then p duplicates that line below. A later dd moves a line instead of leaving the original.</p><p>Use Reset to try again.</p>","teaches":["linewise","put:p"],"introduces":["y","p","P","yy","dd","linewise"],"constraints":[],"drills":[{"task":"Move the first step below the second; keep the archive last.","hint":"Compare the complete target, including spaces, delimiters and protected lines. Undo is available.","mode":"jsx","start":"// Review dates\n// Publish note\n// Keep archive","startCursor":{"line":0,"ch":0},"paths":[{"keys":["d","d","p"],"tier":"idiomatic","technique":"linewise","core":["linewise"],"note":"Linewise put inserts a whole line below the cursor; moving and copying have different effects on the source."}],"target":"// Publish note\n// Review dates\n// Keep archive","language":"javascript","evidence":"guided","canonicalKey":"intermediate.5#0","canonicalFingerprint":"1pn0but"},{"task":"Move the first step below the second; keep the archive last.","hint":"Compare the complete target, including spaces, delimiters and protected lines. Undo is available.","mode":"jsx","start":"// Review dates\n// Publish note\n// Keep archive","startCursor":{"line":0,"ch":0},"paths":[{"keys":["d","d","p"],"tier":"idiomatic","technique":"put:p","core":["put:p"],"note":"Linewise put inserts a whole line below the cursor; moving and copying have different effects on the source."}],"target":"// Publish note\n// Review dates\n// Keep archive","language":"javascript","evidence":"guided","canonicalKey":"intermediate.5#1","canonicalFingerprint":"1pn0but"}]},"python":{"id":"intermediate.5","title":"Copy and move text","moduleName":"Boundaries and reusable text","tips":"","concept":"<p class=\"lead\">Predict where characterwise and linewise copies will be put.</p><p><strong>Before this lesson:</strong> Operators and line boundaries.</p><p>y copies; d removes and copies. yy and dd are linewise: p puts their content below the current line, P above. A characterwise copy such as yiw is put after the cursor with p or before it with P. The unnamed register can change after another deletion.</p><h3>Example</h3><p>With the cursor on a first checklist line, yy then p duplicates that line below. A later dd moves a line instead of leaving the original.</p><p>Use Reset to try again.</p>","teaches":["linewise","put:p"],"introduces":["y","p","P","yy","dd","linewise"],"constraints":[],"drills":[{"task":"Move the first step below the second; keep the archive last.","hint":"Compare the complete target, including spaces, delimiters and protected lines. Undo is available.","mode":"python","start":"# Review dates\n# Publish note\n# Keep archive","startCursor":{"line":0,"ch":0},"paths":[{"keys":["d","d","p"],"tier":"idiomatic","technique":"linewise","core":["linewise"],"note":"Linewise put inserts a whole line below the cursor; moving and copying have different effects on the source."}],"target":"# Publish note\n# Review dates\n# Keep archive","language":"python","evidence":"guided","canonicalKey":"intermediate.5#0","canonicalFingerprint":"1pn0but"},{"task":"Move the first step below the second; keep the archive last.","hint":"Compare the complete target, including spaces, delimiters and protected lines. Undo is available.","mode":"python","start":"# Review dates\n# Publish note\n# Keep archive","startCursor":{"line":0,"ch":0},"paths":[{"keys":["d","d","p"],"tier":"idiomatic","technique":"put:p","core":["put:p"],"note":"Linewise put inserts a whole line below the cursor; moving and copying have different effects on the source."}],"target":"# Publish note\n# Review dates\n# Keep archive","language":"python","evidence":"guided","canonicalKey":"intermediate.5#1","canonicalFingerprint":"1pn0but"}]},"text":{"id":"intermediate.5","title":"Copy and move text","moduleName":"Boundaries and reusable text","tips":"","concept":"<p class=\"lead\">Predict where characterwise and linewise copies will be put.</p><p><strong>Before this lesson:</strong> Operators and line boundaries.</p><p>y copies; d removes and copies. yy and dd are linewise: p puts their content below the current line, P above. A characterwise copy such as yiw is put after the cursor with p or before it with P. The unnamed register can change after another deletion.</p><h3>Example</h3><p>With the cursor on a first checklist line, yy then p duplicates that line below. A later dd moves a line instead of leaving the original.</p><p>Use Reset to try again.</p>","teaches":["linewise","put:p"],"introduces":["y","p","P","yy","dd","linewise"],"constraints":[],"drills":[{"task":"Move the first step below the second; keep the archive last.","hint":"Compare the complete target, including spaces, delimiters and protected lines. Undo is available.","mode":"text/plain","start":"Review dates\nPublish note\nKeep archive","startCursor":{"line":0,"ch":0},"paths":[{"keys":["d","d","p"],"tier":"idiomatic","technique":"linewise","core":["linewise"],"note":"Linewise put inserts a whole line below the cursor; moving and copying have different effects on the source."}],"target":"Publish note\nReview dates\nKeep archive","language":"text","evidence":"guided","canonicalKey":"intermediate.5#0","canonicalFingerprint":"1pn0but"},{"task":"Move the first step below the second; keep the archive last.","hint":"Compare the complete target, including spaces, delimiters and protected lines. Undo is available.","mode":"text/plain","start":"Review dates\nPublish note\nKeep archive","startCursor":{"line":0,"ch":0},"paths":[{"keys":["d","d","p"],"tier":"idiomatic","technique":"put:p","core":["put:p"],"note":"Linewise put inserts a whole line below the cursor; moving and copying have different effects on the source."}],"target":"Publish note\nReview dates\nKeep archive","language":"text","evidence":"guided","canonicalKey":"intermediate.5#1","canonicalFingerprint":"1pn0but"}]}}}