{"id":41758,"date":"2024-01-11T14:23:07","date_gmt":"2024-01-11T19:23:07","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=41758"},"modified":"2024-01-29T11:34:45","modified_gmt":"2024-01-29T16:34:45","slug":"bbedit-15","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2024\/01\/11\/bbedit-15\/","title":{"rendered":"BBEdit 15"},"content":{"rendered":"<p><a href=\"https:\/\/www.barebones.com\/products\/bbedit\/bbedit15.html\">Bare Bones Software<\/a> (<a href=\"https:\/\/mastodon.social\/@bbedit\/111727873859115272\">Mastodon<\/a>):<\/p>\n\n<blockquote cite=\"https:\/\/www.barebones.com\/products\/bbedit\/bbedit15.html\"><p>A new Minimap palette shows a high-level overview of the active text document. This facilitates visualization of the document&rsquo;s overall structure, as well as navigation within larger documents.<\/p><\/blockquote>\n\n<p>I love the minimap in recent versions of Xcode, but I&rsquo;ve not found myself using the BBEdit version much. It&rsquo;s in a floating palette, which gives you more flexibility with the size and shape, but it requires more window management. It lacks the section labels, Git status, and hover functionality of the Xcode implementation.<\/p>\n\n<blockquote cite=\"https:\/\/www.barebones.com\/products\/bbedit\/bbedit15.html\"><p>Building on the concept of the Grep Cheat Sheet used in its Find windows, BBEdit 15 introduces the ability to create and use your own Cheat Sheets, which are functional references for text markup and editing.<\/p><\/blockquote>\n\n<p>This is great, and I like how they support syntax highlighting. The file format is documented <a href=\"https:\/\/www.barebones.com\/support\/technotes\/cheatsheets.html\">here<\/a>.<\/p>\n\n<blockquote cite=\"https:\/\/www.barebones.com\/products\/bbedit\/bbedit15.html\"><p>BBEdit 15&rsquo;s joins BBEdit&rsquo;s unique &ldquo;worksheet&rdquo; interface to <a href=\"https:\/\/openai.com\/chatgpt\">ChatGPT<\/a>, so that you can have conversations with ChatGPT right in BBEdit itself &mdash; no application switching or awkward copy\/paste from a web browser. Each chat worksheet that you create maintains its own history, so that you can easily refer back to past conversations, or keep a conversation going across an extended period of time.<\/p><\/blockquote>\n\n<p>Integrating this as worksheets feels very natural, and it seems to work well. I will admit that haven&rsquo;t found ChatGPT to be very useful in my development. I mostly ask it questions that I don&rsquo;t know the answers to, and it either doesn&rsquo;t know either or gives absurdly incorrect results. I need to figure out how to use it as an assistant to do what I <em>could<\/em> already do myself&mdash;but faster.<\/p>\n\n<blockquote cite=\"https:\/\/www.barebones.com\/products\/bbedit\/bbedit15.html\"><p>BBEdit project documents gain an awareness of the &ldquo;workspace root&rdquo;, which for a given project is the &ldquo;most important directory&rdquo; in the project.<\/p>\n<p>[&#8230;]<\/p>\n<p>BBEdit&rsquo;s unique &ldquo;Text Factory&rdquo; feature has been reimagined for version 15. All available transformations are listed for easy access, and assembling a factory requires fewer steps. A new &ldquo;Run Unix Command&rdquo; operation improves factory portability by storing the Unix command in the factory itself.<\/p><\/blockquote>\n\n<p>From the <a href=\"https:\/\/www.barebones.com\/support\/bbedit\/notes-15.0.html\">more detailed release notes<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.barebones.com\/support\/bbedit\/notes-15.0.html\"><p>The &ldquo;Text Merge&rdquo; command on the Text menu provides a new way to transform text in files, by employing a file containing a Grep search and replace pattern along with a table of substitution values.<\/p><p>[&#8230;]<\/p><p>The Git menu gets commands to push and pull the current branch to\/from its remote.<\/p><p>[&#8230;]<\/p><p>When choosing the &ldquo;Open Recent&rdquo; item on the File menu (directly), rather than anything off the submenu, BBEdit will open a panel listing all recent items and currently open documents. You can use the search field at the top to filter the results and find the desired item. (You can also select and open multiple items in the list, if desired.)<\/p><\/blockquote>\n<p>In my view, the new Open Recent window is the standout feature of BBEdit 15. It basically works like Open File By Name except that it&rsquo;s for recent documents. This lets me browse a shorter list of recent files, whose names I either might not remember or might not be able to easily find via a global search. I can search to narrow the list and navigate the results list with the keyboard to open one or more documents. I&rsquo;ve used LaunchBar for this in the past, but the BBEdit-specific window is faster and more convenient. I recommend assigning the Command-Control-O keyboard shortcut and going to the BBEdit settings to increase the number of recent documents remembered.<\/p>\n<blockquote cite=\"https:\/\/www.barebones.com\/support\/bbedit\/notes-15.0.html\"><p>When &ldquo;Grep&rdquo; is turned on in the Find and Multi-File Search windows, BBEdit will validate the pattern as you edit it. An indicator button will display the validation status of the pattern; you can click on it for information about the specific error.<\/p><p>[&#8230;]<\/p><p>The navigation bar for text documents includes an item which lists recent SCM revisions (git and\/or Subversion) as well as recent file system recorded versions of the file. This can be used as a shortcut to compare a file against a recent revision.<\/p><p>[&#8230;]<\/p><p>The Sidebar preferences have a setting: &ldquo;Allow keyboard focus in sidebar lists&rdquo;.<\/p><p>[&#8230;]<\/p><p>Differences windows gain keyboard navigation in the sidebar, which was not previously possible.<\/p><\/blockquote>\n<p>These are all great.<\/p>\n<blockquote cite=\"https:\/\/www.barebones.com\/support\/bbedit\/notes-15.0.html\"><p>The &ldquo;Expert Preferences&rdquo; section of the Preferences window lists available expert preferences (which can be manipulated from the command line), their current values, and their default values. Preferences which have been changed appear in boldface in the list.<\/p><p>[&#8230;]<\/p><p>The <code>bbedit<\/code> command-line tool gets a new argument: <code>--preview<\/code>.\nYou can use this to open a preview on an existing file, remote\nURL, or pipe data without opening a document.<\/p><p>[&#8230;]<\/p><p>Added &ldquo;Cut Line&rdquo;, &ldquo;Cut Line &amp; Append&rdquo;, &ldquo;Copy Line&rdquo;, and &ldquo;Copy Line &amp; Append&rdquo; to the Edit menu, as modifiers of Cut\/Copy. (The factory defaults are Control for the non-append versions, and Control-Shift for the append versions.) These can be used to perform the respective operations on a line without needing to select it.<\/p><\/blockquote>\n<p>I like these additions, too.<\/p>\n\n<p>The price has increased from $50 to $60 (or $4\/month or $40\/year in the Mac App Store), with upgrades still at $30.<\/p>\n\n<p>See also: <a href=\"https:\/\/sixcolors.com\/post\/2024\/01\/bbedit-15-adds-chatgpt-support\/\">Jason Snell<\/a>.<\/p>\n\n<p>Previously:<\/p>\n<ul>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2023\/05\/12\/llm-coding-tools-in-xcode\/\">LLM Coding Tools in Xcode<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2023\/02\/24\/chatgpt-for-apple-platforms-development\/\">ChatGPT for Apple Platforms Development<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2022\/12\/05\/chatgpt\/\">ChatGPT<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2022\/10\/03\/bbedit-14-6\/\">BBEdit 14.6<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2021\/07\/20\/bbedit-14\/\">BBEdit 14<\/a><\/li>\n<\/ul>\n\n<p id=\"bbedit-15-update-2024-01-23\">Update (2024-01-23): See also: <a href=\"https:\/\/tidbits.com\/2024\/01\/11\/bbedit-15-adds-chatgpt-minimap-cheat-sheets-and-more\/\">Adam Engst<\/a> and <a href=\"https:\/\/news.ycombinator.com\/item?id=38963301\">Hacker News<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Bare Bones Software (Mastodon): A new Minimap palette shows a high-level overview of the active text document. This facilitates visualization of the document&rsquo;s overall structure, as well as navigation within larger documents. I love the minimap in recent versions of Xcode, but I&rsquo;ve not found myself using the BBEdit version much. It&rsquo;s in a floating [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2024-01-11T19:23:09Z","apple_news_api_id":"3c20350a-569d-4319-981b-bf9f32a19571","apple_news_api_modified_at":"2024-01-29T16:34:49Z","apple_news_api_revision":"AAAAAAAAAAAAAAAAAAAABg==","apple_news_api_share_url":"https:\/\/apple.news\/APCA1CladQxmYG7-fMqGVcQ","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[2],"tags":[154,2317,649,467,30,32,2385,71,234,68,376,226],"class_list":["post-41758","post","type-post","status-publish","format-standard","hentry","category-technology","tag-bbedit","tag-chatgpt","tag-esoteric-preferences","tag-launchbar","tag-mac","tag-macapp","tag-macos-14-sonoma","tag-programming","tag-regex","tag-texteditor","tag-versioncontrol","tag-xcode"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/41758","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=41758"}],"version-history":[{"count":8,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/41758\/revisions"}],"predecessor-version":[{"id":41903,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/41758\/revisions\/41903"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=41758"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=41758"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=41758"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}