{"id":577,"date":"2012-05-11T14:41:35","date_gmt":"2012-05-11T18:41:35","guid":{"rendered":"http:\/\/www.jetmore.org\/john\/blog\/?p=577"},"modified":"2013-02-20T15:54:56","modified_gmt":"2013-02-20T19:54:56","slug":"getting-up-to-speed-with-sublime-text-2","status":"publish","type":"post","link":"https:\/\/www.jetmore.org\/john\/blog\/2012\/05\/getting-up-to-speed-with-sublime-text-2\/","title":{"rendered":"Getting Up To Speed With Sublime Text 2 &#8211; Notes For Notepad++ Users"},"content":{"rendered":"<p>I recently started a love affair with the <a href=\"http:\/\/www.sublimetext.com\/2\">Sublime Text 2<\/a> text editor.  Looking around the web, I&#8217;m certainly not alone, and there are many great tips and tricks posts.  I probably can&#8217;t write anything better than what&#8217;s already out there, so this post is really just an attempt to document for my future self my own customization decisions and the logic behind my choices.<\/p>\n<p><!--more--><\/p>\n<h1>I Need Another Text Editor Like I Need a Hole In The Head<\/h1>\n<p>An important piece of context for this post:  I went looking for a new editor specifically because I was annoyed at switching between <a href=\"http:\/\/www.barebones.com\/products\/bbedit\/\">BBEdit<\/a> on Mac and <a href=\"http:\/\/notepad-plus-plus.org\/\">Notepad++<\/a> on Windows (I also use vi\/vim\/gvim on all platforms, but am not annoyed in the least with it).  If either BBEdit of Notepad++ were on both platforms, I would be using it and not considering ST2.  But they aren&#8217;t, and I am, and so much of this post is &#8220;how do I replicate this feature in Notepad++&#8221; or &#8220;I wish this cool BBEdit thing would work&#8221;.  There&#8217;s even the short term effect of turning off interesting features in ST2 because I found them distracting.  Long term I will revisit these choices, but in the short term my goal was to make ST2 as usable as BBEdit or Notepad++ as quickly as possible, even if that mean losing possible ST2 functionality.<\/p>\n<h1>Pay The Man<\/h1>\n<p>Sublime Text 2 is commercial software.  It&#8217;s free to use right now (it is in beta) but the author reserves the right to charge in the future.  After I used it for a while I didn&#8217;t need to wait.  This software is definitely worth the $59 I paid for it, and I hope it motivates the author to keep working on it.<\/p>\n<h1>Settings<\/h1>\n<p>I might as well start this by jumping straight into the user settings.  ST2 uses very readable JSON files to control things like preferences and keybindings.  Setting &#8220;preferences&#8221; is really just opening a JSON file in the editor itself and typing away.  All of the defaults are in a well-commented file, available from the &#8220;Settings &#8211; Default&#8221; menu option.  Here&#8217;s a snippet of the file contents:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n    \/\/ Set to true to insert spaces when tab is pressed\r\n    &quot;translate_tabs_to_spaces&quot;: false,\r\n\r\n    \/\/ If translate_tabs_to_spaces is true, use_tab_stops will make tab and\r\n    \/\/ backspace insert\/delete up to the next tabstop\r\n    &quot;use_tab_stops&quot;: true,\r\n\r\n    \/\/ Set to false to disable detection of tabs vs. spaces on load\r\n    &quot;detect_indentation&quot;: true,\r\n\r\n    \/\/ Calculates indentation automatically when pressing enter\r\n    &quot;auto_indent&quot;: true,\r\n<\/pre>\n<p>Two great side effect of using a commented text file for configuration:  Finding an option is as easy as searching for a keyword, and the configuration is versionable.  The awesomeness of neither of these should be underestimated.  <\/p>\n<p>Once you find a setting you want to tweak, open the user-specific settings file (&#8220;Settings &#8211; User&#8221;) and add them there.  Here is my current user-specific settings file, followed by some brief discussion of why I set the option:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n{\r\n    &quot;auto_match_enabled&quot;: false,\r\n    &quot;auto_complete&quot;: false,\r\n    &quot;color_scheme&quot;: &quot;Packages\/Color Scheme - Default\/Mac Classic.tmTheme&quot;,\r\n    &quot;draw_white_space&quot;: &quot;all&quot;,\r\n    &quot;font_face&quot;: &quot;Courier New&quot;,\r\n    &quot;trim_automatic_white_space&quot;: false,\r\n}\r\n<\/pre>\n<ul>\n<li><b>auto_match_enabled<\/b> &#8211; This is a great example of what is probably a powerful feature that my own habits made me turn off.  This option controls whether or not ST2 auto-closes braces and brackets for you.  I really liked the idea of this option, but in practice it was more trouble than it was worth.  It would auto-add the closing brace, and then I would either have to arrow\/mouse past the auto-added closing brace, or forget that it had been added already and re-add it, which would cause me to go back and remove the extra closing brace.  If I were to reimplement this feature, I would make ST2 try to detect whether I had just added an extra closing brace.  If I had, ST2 should remove the auto-added brace.  In the short term, it&#8217;s just easier to turn this feature off entirely.<\/li>\n<li><b>auto_complete<\/b> &#8211; While I had it turned on, auto_complete was pretty interesting.  The auto-complete of functions, language keywords, etc, was great.  The problem is that the little box that popped up for auto-completion options while you typed, even if you didn&#8217;t want to auto-complete, that I had to turn it off.  I think there are more tunables around this (for instance, increasing delay before completion options are presented, or requiring a manual keystroke to get completion options) but in the short term this option was actually making me less productive so I just turned it off.<\/li>\n<li><b>color_scheme<\/b> &#8211; I wanted to like all the dark color schemes that ST2 had to choose from, but in the end I had to have a white background.  The &#8220;Mac Classic&#8221; theme was the best &#8220;white background&#8221; theme I could find (which probably means it&#8217;s the closest to what Notepad++ uses by default).<\/li>\n<li><b>draw_white_space<\/b> &#8211; Visual white space was one of the first features on Notepad++ that I became completely addicted to and could not live without.  This option actually has three settings &#8211; &#8220;none&#8221;, &#8220;selection&#8221;, and &#8220;all&#8221;, with &#8220;selection&#8221; being the default.  &#8220;Selection&#8221; (in which whitespace is only made visual in selected text) is actually a really nice idea, but I had gotten addicted to having it turned on all the time.\n<li><b>font_face<\/b> &#8211; When I first began using ST2 I had a hard time engaging with it.  One of the factors were the dark-by-default themes, which I changed fairly quickly, but there was a lingering discomfort too that took me a while to identify.  I eventually realized that I wasn&#8217;t comfortable with the default font.  ST2 ships with &#8220;Consolas&#8221; as the default font on Windows, and &#8220;Menlo Regular&#8221; as the default on Mac OS X.  Changing these both to &#8220;Courier New&#8221; made a huge difference in my comfort in making ST2 my default editor.\n<li><b>trim_automatic_white_space<\/b> &#8211; Another feature I turned off.  ST2 has a fantastic auto-indenter (better than Notepad++&#8217;s in my opinion) but this feature worked against me.  Apparently I move the I-beam around a lot when I am working, and this feature caused the auto-added whitespace to be removed when I (very temporarily) moved the I-beam off the line, which was pretty awful.  I think one reason this was left on was that, technically, it results in &#8220;trailing white space&#8221; when you don&#8217;t type anything on a line.  I happen to see this as a feature when also using visual white space\n<\/ul>\n<h1>Sane Tab-Switching<\/h1>\n<p>Another tweak I made was changing the default tab-switching behavior.  The default, stack-like, MRU-ish behavior was unnatural to me.  I changed it to the more standard &#8220;cycle in tab order&#8221; style.  This is done in the &#8220;Preferences -> Key Bindings &#8211; User&#8221; file, by adding these two lines:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n    { &quot;keys&quot;: [&quot;ctrl+tab&quot;], &quot;command&quot;: &quot;next_view&quot; },\r\n    { &quot;keys&quot;: [&quot;ctrl+shift+tab&quot;], &quot;command&quot;: &quot;prev_view&quot; }\r\n<\/pre>\n<h1>Indenting<\/h1>\n<p>I&#8217;m of mixed opinion on ST2&#8217;s indenting vs. Notepad++&#8217;s (they are both better than BBEdit).  Out of the box, I think Notepad++&#8217;s is better, but with some tweaking I&#8217;m starting to think that ST2 has pulled ahead.<\/p>\n<h3>Understanding Alternate Indenting Styles<\/h3>\n<p>ST2 is definitely better at following the indent of the previous line, rather than sticking slavishly to the indents set for the file.  Specifically, consider the case of a single &#8220;line&#8221; of code split across multiple lines.  In that case I &#8220;tab&#8221; to the natural indent, and then indent with spaces after that.  In Notepad++, on the second space-indented line, it will indent with tabs, because it &#8220;knows&#8221; that tabs are the indent character for that doc.  Sublime Text 2, on the other hand, will recognize that I&#8217;ve altered my indenting and will use the same indenting for following lines:<\/p>\n<div id=\"attachment_643\" style=\"width: 400px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/indent-npp.png\"><img aria-describedby=\"caption-attachment-643\" decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/indent-npp.png\" alt=\"\" title=\"indent-npp\" width=\"390\" height=\"67\" class=\"size-full wp-image-643\" srcset=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/indent-npp.png 390w, https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/indent-npp-300x51.png 300w\" sizes=\"(max-width: 390px) 100vw, 390px\" \/><\/a><p id=\"caption-attachment-643\" class=\"wp-caption-text\">Notepadd++ annoyingly ignores the previous line and uses tabs in lines 3<\/p><\/div>\n<div id=\"attachment_644\" style=\"width: 386px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/indent-st2.png\"><img aria-describedby=\"caption-attachment-644\" decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/indent-st2.png\" alt=\"\" title=\"indent-st2\" width=\"376\" height=\"63\" class=\"size-full wp-image-644\" srcset=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/indent-st2.png 376w, https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/indent-st2-300x50.png 300w\" sizes=\"(max-width: 376px) 100vw, 376px\" \/><\/a><p id=\"caption-attachment-644\" class=\"wp-caption-text\">Sublime Text 2 awesomely recognizes my indent style in line 2 and mimics it in line 3<\/p><\/div>\n<h3>Reindenting<\/h3>\n<p>One area I&#8217;m really torn over is &#8220;re-indenting&#8221;.  I suspect that Sublime Text 2 is technically better at it, but that it&#8217;s more effort to make it work.  I maintain a lot of legacy code has often been maintained by copying tabbed code out of a teminal and then pasted into a new file, resulting in 8-space indents, instead of the 4-space-tab indents we&#8217;ve agreed to use.  In Notepad++, reindenting that code is very easy &#8211; Change a tab to 8-spaces in the preferences, select the entire block you want to re-indent, then hit tab (which indents the entire block one additional level, but also changes the 8-spaces into tabs), then hit shift-tab (which removes the extra indent level you just added, but leaves you with tabs instead of spaces).  Then change you tabs back to 4-spaces, and you&#8217;re done.  (It sounds complex as I read that back to myself, but it&#8217;s a fairly fluid action.)<\/p>\n<p>Sublime Text 2, on the other hand, doesn&#8217;t quite do this (by default).  It will block-indent\/unindent of course, but it won&#8217;t automatically convert spaces to tabs.  I finally realized that there&#8217;s an actual menu option to do what I want (Edit -> Line -> Reindent), and it works reasonably well.  I haven&#8217;t figured out all of the nuances yet, but it is not 100% rock-solid as Notepad++&#8217;s functionality.  It is good enough to use though.  It lacks a default key binding, and I use it enough that I added one (Preferences -> Key Bindings &#8211; User) to bind ctrl+shift+r to Reindent:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n    { &quot;keys&quot;: [&quot;ctrl+shift+r&quot;], &quot;command&quot;: &quot;reindent&quot; }\r\n<\/pre>\n<h1>Awesome stuff<\/h1>\n<p>While I first focused on getting ST2 modified to be as similar as possible to Notepad++ or BBEdit, there are (at least) a few things that have stood out as being awesome and unique to Sublime Text 2 (as far as I know).<\/p>\n<h3>Scrolling Past &#8220;End Of File&#8221;<\/h3>\n<p>The first one is really simple but amazingly useful.  When you scroll a file in ST2, you can scroll &#8220;past&#8221; the end of the file.  In other words, you can scroll all the way until the last line of the file is the only visible line in the document (contrasting with the standard practice of allowing you to scroll until the last line in the file is on the last (bottom) visbile line in the editor window).  This is shockingly useful, and not even abstractly &#8211; I&#8217;ve spent the last 15 years adding 20 lines of whitespace to the bottom of files as a poor-man&#8217;s version of this.  Having it as a native feature in the editor is wonderful, and a great example of something I never would have thought to ask for, because &#8220;that&#8217;s not how editors work&#8221;.<\/p>\n<blockquote><p>Update 2013-02-20: I recently switched to Mac OS X as my primary work environment and realized that this behavior is not the default on Mac OS X for some reason.  Set &#8220;scroll_past_end&#8221; to true in your user preferences to enable this.  I haven&#8217;t discovered why this option&#8217;s default value isn&#8217;t the same for all platforms<\/p><\/blockquote>\n<h3>&#8220;minimap&#8221;<\/h3>\n<div id=\"attachment_646\" style=\"width: 439px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/minimap.png\"><img aria-describedby=\"caption-attachment-646\" decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/minimap.png\" alt=\"\" title=\"minimap\" width=\"429\" height=\"355\" class=\"size-full wp-image-646\" srcset=\"https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/minimap.png 429w, https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/minimap-300x248.png 300w, https:\/\/www.jetmore.org\/john\/blog\/wp-content\/uploads\/2012\/05\/minimap-362x300.png 362w\" sizes=\"(max-width: 429px) 100vw, 429px\" \/><\/a><p id=\"caption-attachment-646\" class=\"wp-caption-text\">The text for this post - how meta!<\/p><\/div>\n<p>The minimap is another area that is phenomenal.  It&#8217;s like a visual scroll-bar, with sensitity set halfway between just scrolling the I-beam with the arrow keys and dragging the actual scrollbar.  It&#8217;s so good that I only just realized that the standard scrollbar doesn&#8217;t have arrows on the top and bottom &#8211; I&#8217;ve never needed to use them!<\/p>\n<blockquote><p><strong>Update 2012-07-25<\/strong>: Mike points out in the comment that Notepad++ does have the same functionality as ST2&#8217;s minimap, available from View -> Document Map.  I had never used this feature in NPP before, but I tried it out for the sake of fairness and in my opinion it&#8217;s not as good as ST2&#8217;s implementation.  In brief:<\/p>\n<ul>\n<li>NPP&#8217;s Document Map doesn&#8217;t include the current document&#8217;s language syntax coloring.  ST2&#8217;s inclusion of this definitely helps when scanning docs.<\/li>\n<li>NPP&#8217;s &#8220;scroll thumb&#8221; doesn&#8217;t properly map to the top and bottom of a long document.  Specifically, I opened a 2700 line file, then drug the thumb to the bottom of the document map.  In ST2 I&#8217;m now viewing lines ~2660-2700.  In NPP I&#8217;m now viewing lines ~540-600.  If you fiddle with the mouse you can make the thumb scroll you through the document, but it&#8217;s an annoying experience and doesn&#8217;t provide any visual feedback on the overall length of the document (a sense of where you are in the document) while scrolling.<\/li>\n<li>This is clearly a bug and not an implementation choice, but the doc I opened happened to be a perl script with no suffix, so NPP didn&#8217;t apply any language syntax highlighting to it (ST2 correctly detects perl, but that&#8217;s a different issue).  To test whether NPP&#8217;s map would use the language highlighting, I manually changed the doc to perl, and the document map turned black and stayed black until I closed the map and re-opened it.  Not the best first impression.<\/li>\n<\/ul>\n<p>All in all the NPP would probably serve the purpose if I had other reasons to stay with NPP, but it&#8217;s implementation definitely feels like something tacked on.  ST2&#8217;s map feels like a first-class feature, with performance similar to the rest of the product.<\/p><\/blockquote>\n<h3>Easy and Powerful Layout Switching<\/h3>\n<p>Another feature I didn&#8217;t know I needed was the fast layout switching.  The ability to quickly change from one-up to two-up, vertical or horizontal layouts is really powerful.  Since there&#8217;s no cognitive overhead to changing the layout (View -> Layout -> (option)) or moving documents to different frames, I&#8217;m much more likely to use it to compare docs, or use another doc as a ref, which I&#8217;ve found has a noticeable performance benefit.<\/p>\n<h3>Project and Folders<\/h3>\n<p>One feature I didn&#8217;t really think I would use was projects, or adding folders to an editor window.  It turns out that I tried it an instantly benefitted from it.  I haven&#8217;t developed an ecosystem of &#8220;projects&#8221;, but I have found that I add and remove folders from my editor fairly regularly as I work.  Being able to have all my files quickly reachable from within the editor itself, even if I don&#8217;t have them open for editing, is another time saver.<\/p>\n<h1>Open Issues<\/h1>\n<p>I don&#8217;t have a ton of open issues, but there are a couple of areas I&#8217;m still trying to figure out.<\/p>\n<h3>Unfocused Clicks on Minimap<\/h3>\n<p>The first is an issue with clicking in the minimap.  When Sublime Text 2 is in focus, clicking in the minimap, but outside of the &#8220;this is what you&#8217;re currently looking at&#8221; grey box, will jump you to where you clicked.  This makes sense.  However, it does the exact same thing if the ST2 window does NOT have focus.  I&#8217;ve lost the link now but this was raised on the ST2 forums and the author flatly stated that it wass working as designed and he would not change it.  In my opinion this is a really poor design choice.  I often switch back and forth between an editor, a terminal, and an scp client, and I can do it quickly my keeping parts of the windows visible and clicking into them.  This works great until I click into ST2 and suddenly I&#8217;m in a completely different part of the file because the part that was visible to click was the minimap.  More than anything, it surprised me that the author was so completely against it, to the point of being unwilling to offer a switch for the behavior.  I&#8217;ve learned to live with it but I&#8217;m still puzzled at the choice.<\/p>\n<h3>&#8220;Find All&#8221; Results<\/h3>\n<p>In general I&#8217;ve found searching in ST2 to be as good as searching in Notepad++, possibly a little better.  However, one of the few areas I&#8217;ve found in which Notepad++ is inarguably better (to the point where I suspect maybe I just haven&#8217;t found the right interface in ST2) is in the &#8220;Find all in document&#8221;, &#8220;Find all in open files&#8221;, and &#8220;Find in files&#8221; interfaces.  It&#8217;s not that ST2 doesn&#8217;t have these options, it&#8217;s that the results are unusable.  In Notepad++, there is a tray that opens from the bottom of the window that show all the matches and (if applicable), which file they are from.  These results can be copied, they can be collapsed by file name, and double clicking the line takes you that that line in the appropriate file.<\/p>\n<p>When searching in files, you can almost recreate the Notepad++ experience.  The results are presenting as in a new document.  Using a 2-up, row-based layout, you can have the results and the documents visible at the same time, and it appears that you can collapse files and double-click lines to go to the files.  However, this might be a case where flexibility actually hampers instead of helps.  I still much prefer the Notepad++ interface for this vs. the ST2 interface.  Additionally, that only really seems to be for &#8220;find in files&#8221;.  When doing &#8220;Find All&#8221; in just the active document, you end up with each match selected, but I haven&#8217;t found a good view of each of those matches.  I&#8217;m not sure if this it a shortcoming of ST2 or my ability to use it, but the area of finding multiple matches is one of the few areas I think Notepad++ is genuinely a better use experience than ST2.<\/p>\n<h3>Split Screen Editing Of A Single Document<\/h3>\n<p>One last item I would like to have is, surprisingly, a feature in BBEdit that I haven&#8217;t found in either Notepad++ or Sublime Text 2, and that&#8217;s split-editing a single document.  It&#8217;s can be wonderful to use one part of document as reference while editing a a different location in the same document.  I bet you could kludge something up for this in both NPP and ST2, but the ease of just grabbing the &#8220;splitter&#8221; on the scrollbar to make it happen is pretty wonderful, and something I would love to have in ST2.<\/p>\n<blockquote><p><strong>Update 2012-07-16<\/strong>: I had not pursued this complaint more, but Antonio fills in the missing details in the comments below.  File -> New File Into View does indeed open up a second &#8220;live&#8221; view of the doc (meaning I can type into one and the new typing is echoed in the other view in real time).  The second live tab can then be manipulated using the standard View -> Layout options.  This was much less discoverable than the scrollbar slider solution in BBEdit but much more powerful since you get access to the full set of Layout options.<\/p><\/blockquote>\n<blockquote><p><strong>Update 2012-10-14<\/strong>: And from Ilja in the comments regarding split-view editing in Notepad++: &#8220;It actually has been available in NPP for quite a while now. You access it by right clicking on a document tab and choosing \u201cClone to Other View\u201d menu item.&#8221;  Ayup.  Interesting that ST2 and NPP have very similar ways to access this feature, and I was looking for the BBEdit style (which I also like to think of as the &#8220;MS Word 5 for Mac&#8221; style).<\/p><\/blockquote>\n<h1>And For My Next Trick<\/h1>\n<p>This post has existed as a draft for the last several weeks.  I knew it was time to finish it when I stopped noting &#8220;how to make ST2 as good as Notepad++&#8221; and started jotting down features I&#8217;d found that were entirely new.  So, I&#8217;ll let this post stand for now, a summary of changes I made to bring the features of Sublime Text 2 quickly up to par with those of Notepad++ and BBEdit that I was used to using daily.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I recently started a love affair with the Sublime Text 2 text editor. Looking around the web, I&#8217;m certainly not alone, and there are many great tips and tricks posts. I probably can&#8217;t write anything better than what&#8217;s already out &hellip; <a href=\"https:\/\/www.jetmore.org\/john\/blog\/2012\/05\/getting-up-to-speed-with-sublime-text-2\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[5],"tags":[14],"_links":{"self":[{"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/posts\/577"}],"collection":[{"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/comments?post=577"}],"version-history":[{"count":10,"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/posts\/577\/revisions"}],"predecessor-version":[{"id":777,"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/posts\/577\/revisions\/777"}],"wp:attachment":[{"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/media?parent=577"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/categories?post=577"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jetmore.org\/john\/blog\/wp-json\/wp\/v2\/tags?post=577"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}