software &mdash; The Psalms https://bilge.world/tag:software A <a href="https://davidblue.wtf/db.vcf">narcoleptic yokel</a> on software and culture. Wed, 21 Sep 2022 10:32:42 +0000 On Drafts' Mail Integration https://bilge.world/drafts-mail-integration?pk_campaign=rss-feed <![CDATA[Send2Self Example in Mail One of the app's most universal 'native' advantages, revisited. !--more-- I've spent more cumulative time playing with my Obsidian configuration in the past 24 hour hours than the sum of the whole I'd spent doing so in the 3(?) years since I installed beta (or was it alpha?) one. While I still find it janky as hell and deeply untrustworthy - among far too many other woes - I must admit that the bulk of shear hype surrounding its existence has indeed resulted in enough developer attention to achieve some technically interesting capabilities. Naturally, most of these feel absurdly redundant in context and all rely on age-old dependencies, but... well, today I uploaded the text of my almost five-year-old Microsoft Surface Laptop 2 Review to its own dedicated Archive.org page in thirteen different formats rendered using Obsidian's (desktop-only) Pandoc integration! I lambaste with the sincere intent, at least, of being genuinely constructive, and I began upon this post hoping to do so and finally get around to highlighting one of Drafts' most essential (and taken for granted, I suspect) powers in its entirely cross-platform, system-level integration with Mail on Apple Platforms. One of Drafts' most immediately apparent advantages as a native iOS/iPadOS/macOS application is readily found in its integration with Mail. Though I've personally managed to almost escape my twenties having yet to endure an email-heavy job, I still find the practice of sending topical/sacred information to myself to be the upmost reliable and direct means of retrieving it. As I've configured it, within Drafts on any of its 3 platforms, all I need do is press ^M to have the text of the current Draft sent instantly to an iCloud Mail alias I use for such things. video controls width="520" height=auto   source src="https://user-images.githubusercontent.com/43663476/189148302-688897be-b837-4f94-b5ea-c89972516c5a.MOV" /video If I were sending to more folks than just myself on a regular basis, I'd definitely make use of Drafts' Mail Action Wizard to help simplify and solidify the process of creating a dedicated action, which almost certainly would not have the Send in Background toggle selected, as demonstrated, for the sake of giving myself a preview of outbound messages to... important folks. For macOS users, there's also a bespoke Catalyst app called Mail Assistant, which I've yet to try. Formatting The parameters of the Mail action step can be filled with any combination of items from the original Drafts template tags array or from the relatively new set of mustache template tags. https://gist.github.com/extratone/8cc2cd8cc7b8e95a80f9e60b5fe71bd4 The current version of my personal Send-to-Self action sent this example result using the format represented in the Gist embedded above. If you'd like, you can wrap the body] tag (or any part of the message, actually) in double %s and select the Send as HTML toggle to have the result rendered as HTML. (See [this example.) Setting a Drafts Mail-to-Self-specific rule on iCloud Mail on the Web If - like me - you're an iCloud Mail user primarily from iOS/iPadOS, here's how to create an iCloud Mail rule for messages you've sent yourself from Drafts: Visit iCloud.com/mail in your web browser and authenticate. Open the Rules settings menu by tapping the gear icon in the upper left ⇨ Preferences ⇨ Rules. Create a new rule with the "Add rule" link. By default, the "If a message..." field selection should be "is from." In the text entry field, enter drafts-mail@drafts5.agiletortoise.com. By default, the "Then..." field selection is "Move to Folder." I have personally set mine to "Move to Folder and Mark as Read," but this depends on your preference. Select a folder or mailbox for Drafts messages to be moved to and click "Add." Publishing via Email I've spent a lot of time this year working on integrating Drafts with NeoCities, Write.as, and other publishing services, but - for new users, especially - Drafts' mail integration offers a pathway to publishing with virtually zero configuration for those services who still offer mail-to-save/post email addresses. These include WordPress, Blogger, Write.as, LiveJournal, Evernote, Day One, Things, Todoist, and more. Perhaps the easiest method of setting this up would involve finding your private email address for a given service(s), pasting them in the aforementioned Mail Action Wizard, titling the action by the name of the service, and installing. There's also an Email to Myself action on the Drafts Action Directory to get you started. video controls width="520" height=auto   source src="https://user-images.githubusercontent.com/43663476/189246053-c53d970a-a6ea-48da-8878-116d0abf2a2b.MOV" /video Drag and Drop to Formatted Markdown Hyperlinks from Apple Mail Going the other direction, users of Apple Mail (the client) might find it pleasantly surprising that one can drag a message from Mail into Drafts in order to automatically create a markdown-formatted hyperlink that opens said message from anywhere. For more details, see the official 'Sending Mail with Drafts' Integration Guide. a href="https://remark.as/p/bilge.world/drafts-mail-integration"Discuss.../a software ]]> Send2Self Example in Mail

One of the app's most universal 'native' advantages, revisited.

I've spent more cumulative time playing with my Obsidian configuration in the past 24 hour hours than the sum of the whole I'd spent doing so in the 3(?) years since I installed beta (or was it alpha?) one. While I still find it janky as hell and deeply untrustworthy – among far too many other woes – I must admit that the bulk of shear hype surrounding its existence has indeed resulted in enough developer attention to achieve some technically interesting capabilities. Naturally, most of these feel absurdly redundant in context and all rely on age-old dependencies, but... well, today I uploaded the text of my almost five-year-old Microsoft Surface Laptop 2 Review to its own dedicated Archive.org page in thirteen different formats rendered using Obsidian's (desktop-only) Pandoc integration!

I lambaste with the sincere intent, at least, of being genuinely constructive, and I began upon this post hoping to do so and finally get around to highlighting one of Drafts' most essential (and taken for granted, I suspect) powers in its entirely cross-platform, system-level integration with Mail on Apple Platforms.

One of Drafts' most immediately apparent advantages as a native iOS/iPadOS/macOS application is readily found in its integration with Mail. Though I've personally managed to almost escape my twenties having yet to endure an email-heavy job, I still find the practice of sending topical/sacred information to myself to be the upmost reliable and direct means of retrieving it.

As I've configured it, within Drafts on any of its 3 platforms, all I need do is press ^M to have the text of the current Draft sent instantly to an iCloud Mail alias I use for such things.

If I were sending to more folks than just myself on a regular basis, I'd definitely make use of Drafts' Mail Action Wizard to help simplify and solidify the process of creating a dedicated action, which almost certainly would not have the Send in Background toggle selected, as demonstrated, for the sake of giving myself a preview of outbound messages to... important folks. For macOS users, there's also a bespoke Catalyst app called Mail Assistant, which I've yet to try.

Formatting

The parameters of the Mail action step can be filled with any combination of items from the original Drafts template tags array or from the relatively new set of mustache template tags.

The current version of my personal Send-to-Self action sent this example result using the format represented in the Gist embedded above. If you'd like, you can wrap the [body] tag (or any part of the message, actually) in double %s and select the Send as HTML toggle to have the result rendered as HTML. (See this example.)

Setting a Drafts Mail-to-Self-specific rule on iCloud Mail on the Web

If – like me – you're an iCloud Mail user primarily from iOS/iPadOS, here's how to create an iCloud Mail rule for messages you've sent yourself from Drafts:

  1. Visit iCloud.com/mail in your web browser and authenticate.
  2. Open the Rules settings menu by tapping the gear icon in the upper left ⇨ Preferences ⇨ Rules.
  3. Create a new rule with the “Add rule” link.
  4. By default, the “If a message...” field selection should be “is from.” In the text entry field, enter drafts-mail@drafts5.agiletortoise.com.
  5. By default, the “Then...” field selection is “Move to Folder.” I have personally set mine to “Move to Folder and Mark as Read,” but this depends on your preference. Select a folder or mailbox for Drafts messages to be moved to and click “Add.”

Publishing via Email

I've spent a lot of time this year working on integrating Drafts with NeoCities, Write.as, and other publishing services, but – for new users, especially – Drafts' mail integration offers a pathway to publishing with virtually zero configuration for those services who still offer mail-to-save/post email addresses. These include WordPress, Blogger, Write.as, LiveJournal, Evernote, Day One, Things, Todoist, and more.

Perhaps the easiest method of setting this up would involve finding your private email address for a given service(s), pasting them in the aforementioned Mail Action Wizard, titling the action by the name of the service, and installing. There's also an Email to Myself action on the Drafts Action Directory to get you started.

Going the other direction, users of Apple Mail (the client) might find it pleasantly surprising that one can drag a message from Mail into Drafts in order to automatically create a markdown-formatted hyperlink that opens said message from anywhere.

For more details, see the official 'Sending Mail with Drafts' Integration Guide.

Discuss...

#software

]]>
https://bilge.world/drafts-mail-integration Wed, 14 Sep 2022 19:11:36 +0000
Siri Shortcuts and the DJ Screw Discography https://bilge.world/dj-screw-shortcuts?pk_campaign=rss-feed <![CDATA[DJ Screw Discography Shortcut Result The most magical configurables I've ever created for iOS by a long way. !--more-- Though I don't believe I've ever discussed it, here, the continuance of the fandom for Houston music legend, DJ Screw, on into the 21st century is an issue I remain very invested in. I doubt you want to hear much about it, but the issue of actually obtaining audio files from the Screw collection is a worthwhile one to engage for context's sake. I was first introduced to the ~343-chapter collection by my high school best friend, who'd acquired it via an ancient Pirate Bay torrent some hero set up in the early 2000s. It was complete - probably - and more or less correctly organized by chapter, but that's about it as far as reliable metadata was concerned. The results one would find elsewhere on the web, from sites like DatPiff, were hardly any better - many, in fact, were obviously sourced from that same torrent. DJ Screw on the iTunes Store and Apple Music a href="https://music.apple.com/us/artist/dj-screw/80923709?itsct=musicboxbadge&amp;itscg=30200&amp;app=music&amp;ls=1" style="display: inline-block; overflow: hidden; border-radius: 13px; width: 250px; height: 83px;"img src="https://tools.applemediaservices.com/api/badges/listen-on-apple-music/badge/en-us?size=250x83&h=cdbcefe9e23b0310ab61b31e72e2dcdb" alt="Listen on Apple Music" style="border-radius: 13px; width: 250px; height: 83px;"/a In the interim, a lot has changed about music consumption. You know this, but - as you might've already imagined - none of the mainstream services you fuckers partake in have managed to do Robert Earl Davis III justice in the modern era. Apple Music and Spotify, both, will send you in neatly identical spirals pretty much regardless which of their pet vectors you choose to populate with His Name. As much as I've vouched for the former, it's perhaps the worst of them all in this context - departing the marque entirely into the (respectable but... incorrect) world of non-Davis SLOWED 'n" THOWED almost immediately. Perhaps one day, I'll find it within myself to tackle this issue - DJ Screw in the Щ́̇͋ͯ̋̅Σ̾̒͋ͯͭ ̊ᄂ̋̈͐İͬV̏̆̊͛̍̌Σ̆ͣͣͭ͐ͫ̆̊ ͪͬ̿̈́̑ͤ̚IͫП̎̿͑ͦ͆̚ ͣͫ͌ͨ̈Λ̃͛̓ͦͪ͒̑̽ ͛̑ͤ͊ͭƬ̒I̅͌̊̑ͧͪM̈́̓Σ̋̏͂͐͊͆ͣ, generally - but I actually have extremely wonderful, urgent news. You see, dearest archive.org was actually provided the entire, impeccably tagged Discography by actual Culture Heroes some years ago. All of it, accessible in multiple file formats, embeddable, superbly shareable! This is the most important truth I have to impart to you today, really, but - for iPhone, iPad, and Mac users, there's even more... iframe src="https://archive.org/details/dj-screw-discography&playlist=1&listheight=150" width="500" height="300" frameborder="0" webkitallowfullscreen="true" mozallowfullscreen="true" allowfullscreen/iframe Automation Download Random Screw Tape Shortcut As of right now, just two Siri Shortcuts - Download Random Screw Tape and DJ Screw Discography. The first is perhaps the most delightful - if all goes well, running it right out of the box should result in a random tape from the library downloaded in a folder of your specification (at install,) as well actual playback, in correct order, within the shortcut, itself. https://youtu.be/9voc7GmvvM This is magic, yes, but the second is true power. After picking folders at installation for 1) downloaded archive.org-sourced .zip files to live in temporarily before they are extracted and deleted and 2) your complete, correctly metatagged DJ Screw Tape library could - in theory, anyway - magically appear in a single, undoubtedly several hours-long run. I have yet to actually test the full bit myself, technically, but I can advise you to set Auto-Lock (Settings ⇨ Display & Brightness ⇨ Auto-Lock) to Never, make sure you leave the Shortcut open within the Shortcuts App, itself, and give it a shot, if possible. a href="https://remark.as/p/bilge.world/dj-screw-shortcuts"Discuss.../a #software #automation #music [1] I attempted to find this torrent for the sake of this post and well... The Pirate Bay looks a lot different than I remembered. 2] This is not criticism. If it was, it would be [ridiculously hypocritical. 3] If RoutineHub is struggling/you find it untrustworthy, the direct iCloud Share links are [here and here. Please contact me if you encounter any issues.]]> DJ Screw Discography Shortcut Result

The most magical configurables I've ever created for iOS by a long way.

Though I don't believe I've ever discussed it, here, the continuance of the fandom for Houston music legend, DJ Screw, on into the 21st century is an issue I remain very invested in. I doubt you want to hear much about it, but the issue of actually obtaining audio files from the Screw collection is a worthwhile one to engage for context's sake. I was first introduced to the ~343-chapter collection by my high school best friend, who'd acquired it via an ancient Pirate Bay torrent some hero set up in the early 2000s[^1]. It was complete – probably – and more or less correctly organized by chapter, but that's about it as far as reliable metadata was concerned. The results one would find elsewhere on the web, from sites like DatPiff, were hardly any better – many, in fact, were obviously sourced from that same torrent.

DJ Screw on the iTunes Store and Apple Music

Listen on Apple Music

In the interim, a lot has changed about music consumption. You know this, but – as you might've already imagined – none of the mainstream services you fuckers partake in have managed to do Robert Earl Davis III justice in the modern era. Apple Music and Spotify, both, will send you in neatly identical spirals pretty much regardless which of their pet vectors you choose to populate with His Name. As much as I've vouched for the former, it's perhaps the worst of them all in this context – departing the marque entirely into the (respectable but... incorrect) world of non-Davis SLOWED 'n” THOWED[^2] almost immediately.

Perhaps one day, I'll find it within myself to tackle this issue – DJ Screw in the Щ́̇͋ͯ̋̅Σ̾̒͋ͯͭ ̊ᄂ̋̈͐İͬV̏̆̊͛̍̌Σ̆ͣͣͭ͐ͫ̆̊ ͪͬ̿̈́̑ͤ̚IͫП̎̿͑ͦ͆̚ ͣͫ͌ͨ̈Λ̃͛̓ͦͪ͒̑̽ ͛̑ͤ͊ͭƬ̒I̅͌̊̑ͧͪM̈́̓Σ̋̏͂͐͊͆ͣ, generally – but I actually have extremely wonderful, urgent news. You see, dearest archive.org was actually provided the entire, impeccably tagged Discography by actual Culture Heroes some years ago. All of it, accessible in multiple file formats, embeddable, superbly shareable! This is the most important truth I have to impart to you today, really, but – for iPhone, iPad, and Mac users, there's even more...

Automation

Download Random Screw Tape Shortcut

As of right now, just two Siri Shortcuts – Download Random Screw Tape and DJ Screw Discography[^3]. The first is perhaps the most delightful – if all goes well, running it right out of the box should result in a random tape from the library downloaded in a folder of your specification (at install,) as well actual playback, in correct order, within the shortcut, itself.

This is magic, yes, but the second is true power. After picking folders at installation for 1) downloaded archive.org-sourced .zip files to live in temporarily before they are extracted and deleted and 2) your complete, correctly metatagged DJ Screw Tape library could – in theory, anyway – magically appear in a single, undoubtedly several hours-long run. I have yet to actually test the full bit myself, technically, but I can advise you to set Auto-Lock (Settings ⇨ Display & Brightness ⇨ Auto-Lock) to Never, make sure you leave the Shortcut open within the Shortcuts App, itself, and give it a shot, if possible.

Discuss...

#software #automation #music

[1] I attempted to find this torrent for the sake of this post and well... The Pirate Bay looks a lot different than I remembered. [2] This is not criticism. If it was, it would be ridiculously hypocritical. [3] If RoutineHub is struggling/you find it untrustworthy, the direct iCloud Share links are here and here. Please contact me if you encounter any issues.

]]>
https://bilge.world/dj-screw-shortcuts Sun, 07 Aug 2022 01:23:32 +0000
Quick Key Command Formatting with ksc and Siri Shortcuts https://bilge.world/ksc-shortcut?pk_campaign=rss-feed <![CDATA[Key Command Formatting with ksc !--more-- During the course of my iPhone Keyboarding project, I managed to discover "a command line tool to document and describe keyboard shortcuts in a standardized and properly formatted way" called ksc. It's a Python utility that translates natural-language-formatted keyboard commands "command control q" into symbolized and standardized form: ⌃+⌘+Q. Though it's not of particular use to me at this point, with my now well-established Text Replacements and TextExpander Snippets, I realized - being a Python thing - that ksc might work with the iOS/iPadOS shell emulator, a-Shell, and therefore, that a Siri Shortcut for converting plain language input to formatted key commands might be a cinch, and it was! pip install ksc Requirements a-Shell for iOS/iPadOS (Free) Actions for iOS/iPadOS (Also free) ksc installed in a-Shell (Which should be as easy as pip install ksc) Using an Ask For Input action, my shortcut will prompt you to enter a natural language keyboard command. For the fullest explanation of supported inputs, see ksc's documentation. Your inputted command will be "transformed" via Actions' action into "dash-case" and placed within a command in the following format: ksc -ms -p command(Pre-Transformation Text) Transformed Text.txt By default, the arguments -ms and -p are included, but these are entirely optional. From said docs: There are several command line options to modify the output. The -ms or --modifier-symbols options output the modifers as unicode symbols: $ ksc -ms shift command u ⇧⌘U Apple says you should include a plus sign between symbols, but I think that it looks ugly, so that's not the default. If you want it, add the -p or --plus-sign when using -ms: $ ksc -ms -p shift command u ⇧+⌘+U Creating a text file for each command within a-Shell may not be Best Practices, per se, but it's the simplest method I've found of reliably retrieving text back from the app within Siri Shortcuts. That said, the above command creates a text file containing the formatted output. A Get File a-Shell action paired with a Get Text From Input native action then retrieves the file contents, which is first cleaned up via another Actions action (trimming leading and trailing whitespace) before being copied to the system clipboard. Download my Key Command Formatting shortcut on RoutineHub. a href="https://remark.as/p/bilge.world/ksc-shortcut"Discuss.../a #software #automation]]> Key Command Formatting with ksc

During the course of my iPhone Keyboarding project, I managed to discover “a command line tool to document and describe keyboard shortcuts in a standardized and properly formatted way” called ksc. It's a Python utility that translates natural-language-formatted keyboard commands “command control q” into symbolized and standardized form: ⌃+⌘+Q. Though it's not of particular use to me at this point, with my now well-established Text Replacements and TextExpander Snippets, I realized – being a Python thing – that ksc might work with the iOS/iPadOS shell emulator, a-Shell, and therefore, that a Siri Shortcut for converting plain language input to formatted key commands might be a cinch, and it was!

pip install ksc

Requirements

  1. a-Shell for iOS/iPadOS (Free)
  2. Actions for iOS/iPadOS (Also free)
  3. ksc installed in a-Shell (Which should be as easy as pip install ksc)

Using an Ask For Input action, my shortcut will prompt you to enter a natural language keyboard command. For the fullest explanation of supported inputs, see ksc's documentation. Your inputted command will be “transformed” via Actions' action into “dash-case” and placed within a command in the following format:

ksc -ms -p command(Pre-Transformation Text) > Transformed Text.txt

By default, the arguments -ms and -p are included, but these are entirely optional. From said docs:

There are several command line options to modify the output. The -ms or --modifier-symbols options output the modifers as unicode symbols:

$ ksc -ms shift command u ⇧⌘U

Apple says you should include a plus sign between symbols, but I think that it looks ugly, so that's not the default. If you want it, add the -p or --plus-sign when using -ms:

$ ksc -ms -p shift command u ⇧+⌘+U

Creating a text file for each command within a-Shell may not be Best Practices, per se, but it's the simplest method I've found of reliably retrieving text back from the app within Siri Shortcuts. That said, the above command creates a text file containing the formatted output. A Get File a-Shell action paired with a Get Text From Input native action then retrieves the file contents, which is first cleaned up via another Actions action (trimming leading and trailing whitespace) before being copied to the system clipboard.

Download my Key Command Formatting shortcut on RoutineHub.

Discuss...

#software #automation

]]>
https://bilge.world/ksc-shortcut Sat, 02 Jul 2022 06:33:12 +0000
How I Maintain a Vocabulary List in Drafts with Terminology https://bilge.world/drafts-terminology-vocabulary?pk_campaign=rss-feed <![CDATA[Terminology URL Scheme and Vocabulary Workspace !--more-- As I wrote in my app store review of Terminology (which is not shown publicly, I’ve since learned,) I prefer it over popular dictionary apps like LookUp (which I also have and use regularly) because it allows me to add new terms that don’t show up in search results. Somehow, the idea that one might store words that don’t necessarily appear in any dictionary seems a foreign one to the creators of LookUp, which I’ve since found out to be the cause of its Siri Shortcuts actions failing on me. https://twitter.com/NeoYokel/status/1477323450549219328 Terminology does support adding “custom” terms, if unintentionally, through its “notes” function. Because it’s related to Drafts (they’re from the same creator,) it was quite easy to “integrate” the two in order to form the workflow you see demonstrated in the video below. https://imgur.com/gallery/Q04Kxrg First, I use the Lookup in Terminology action paired with a keyboard shortcut (^⇧D) in Drafts to search a selected word in Terminology. There, I “like” the word and - if needed - add a definition via the notes button (immediately to the left of the heart in the upper right corner.) I’ve configured a custom button - “[Drafts-definition](terminology://x-callback-url/importAction?name=Drafts-definition&shortName=Drafts&description=Send%20term%20and%20full%20Markdown%20definitions%20to%20Drafts&urlTemplate=drafts://create?text%3D%5B%5Bdefinitions%5D%5D%250A%5B%5Bnote%5D%5D&dispatchType=0 terminology://x-callback-url/importAction?name=Drafts-definition&shortName=Drafts&description=Send%20term%20and%20full%20Markdown%20definitions%20to%20Drafts&urlTemplate=drafts://create?text%3D%5B%5Bdefinitions%5D%5D%250A%5B%5Bnote%5D%5D&dispatchType=0)” - (which you should be able to import with that hyperlink) that sends the term including its notes back to Drafts with the following configuration: drafts://create?text=[[definitions]]%0A[[note]] That button results in a new Draft in a specific format, demonstrated by this example: Antagonistic Vocabulary Draft Example I then manually add the “Vocabulary” tag to the Draft, completing the process and placing it within the parameters defined by my Vocabulary workspace, which shows only drafts with that tag, sorted alphabetically. Publication For the past few weeks, I’ve been wreaking havoc on NeoCities’ global activity feed using the action group I created on the /drafts directory of davidblue dot wtf. Specifically, the action that uploads HTML files to that directory named by the UUID of the draft. (Here’s the corresponding link for this post, for example.) With consequent draftopenurls left in the footer of each as per my current, more or less universal HTML template, I’m able to immediately open the appropriate draft locally. Vocabulary Index Shortcut In order to maintain an updated index of the whole list, I’ve created a Siri Shortcut which transforms the UUIDs of the drafts in the vocabulary workspace into markdown-formatted hyperlinks of their web-dwelling counterparts. Terminology Favorites List Even if you’ve no intention of publishing your personal vocabulary - or integrating it with Drafts - Terminology is still the dictionary app I’d recommend over any others. a href="https://remark.as/p/bilge.world/drafts-terminology-vocabulary"Discuss.../a #configuration #software #automation]]> Terminology URL Scheme and Vocabulary Workspace

As I wrote in my app store review of Terminology (which is not shown publicly, I’ve since learned,) I prefer it over popular dictionary apps like LookUp (which I also have and use regularly) because it allows me to add new terms that don’t show up in search results. Somehow, the idea that one might store words that don’t necessarily appear in any dictionary seems a foreign one to the creators of LookUp, which I’ve since found out to be the cause of its Siri Shortcuts actions failing on me.

Terminology does support adding “custom” terms, if unintentionally, through its “notes” function. Because it’s related to Drafts (they’re from the same creator,) it was quite easy to “integrate” the two in order to form the workflow you see demonstrated in the video below.

First, I use the Lookup in Terminology action paired with a keyboard shortcut (^⇧D) in Drafts to search a selected word in Terminology. There, I “like” the word and – if needed – add a definition via the notes button (immediately to the left of the heart in the upper right corner.) I’ve configured a custom button – “Drafts-definition” – (which you should be able to import with that hyperlink) that sends the term including its notes back to Drafts with the following configuration:

drafts://create?text=[[definitions]]%0A[[note]]

That button results in a new Draft in a specific format, demonstrated by this example:

Antagonistic Vocabulary Draft Example

I then manually add the “Vocabulary” tag to the Draft, completing the process and placing it within the parameters defined by my Vocabulary workspace, which shows only drafts with that tag, sorted alphabetically.

Publication

For the past few weeks, I’ve been wreaking havoc on NeoCities’ global activity feed using the action group I created on the /drafts directory of davidblue dot wtf. Specifically, the action that uploads HTML files to that directory named by the UUID of the draft. (Here’s the corresponding link for this post, for example.) With consequent draftopenurls left in the footer of each as per my current, more or less universal HTML template, I’m able to immediately open the appropriate draft locally.

Vocabulary Index Shortcut

In order to maintain an updated index of the whole list, I’ve created a Siri Shortcut which transforms the UUIDs of the drafts in the vocabulary workspace into markdown-formatted hyperlinks of their web-dwelling counterparts.

Terminology Favorites List

Even if you’ve no intention of publishing your personal vocabulary – or integrating it with Drafts – Terminology is still the dictionary app I’d recommend over any others.

Discuss...

#configuration #software #automation

]]>
https://bilge.world/drafts-terminology-vocabulary Tue, 03 May 2022 06:31:51 +0000
TildeTown on iPhone with Blink Shell https://bilge.world/tildetown-iphone-blink-shell?pk_campaign=rss-feed <![CDATA[Blink Folder The ideal means of On The Go participation in The Tildeverse. !--more-- audio controls   source src="https://davidblue.wtf/audio/blink.m4a" /audio I was completely unaware of the Tildeverse’s origin story - documented in a Medium post by WIRED Editor-in-Chief, Paul Ford - until this year, somehow, though I knew of its existence as far back as 2018. I was living in an unairconditioned Portland apartment, then, and had found myself stuck with Linux for the first time in my adult life. Consequentially, this period of my life became my first true introduction to the Command Line - a space about which I knew no more than the layest layman. Hopping between my ten-year-old, post-corporate system’s shell and the DOS machines I was emulating on it (exploring the history of word processors, mostly,) I believe I struggled through dare I say a Rite of Computing Passage, obtaining the capability (and eventually, the muscle memory) to navigate a filesystem with cd, ls, and (on DOS) dir. It wasn’t until I came home in ‘19 that I discovered the two primary emulated Linux shells on iOS: iSH Shell and a-Shell. iSH Shell and a-Shell The former is designed to emulate Alpine Linux and has just recently added direct filesystem access via the Files app. The latter is, I’m told, quite extensible, and includes Siri Shortcuts actions that have enabled it to underpin powerful scraping shortcuts like SW-DLT - a sort of frontend for youtube-dl and now yt-dlp. Both are open source, but a-Shell is actually a fork of our subject app, now called “Blink Shell & Code” in the App Store. bbj Out Blink’s tag is “a professional, desktop grade terminal for iOS.” Its landing page touts a “first class iOS experience, with software and hardware keyboard, and the full edge-to-edge experience” experience. On iPad, Blink’s heyday was well documented by the likes of Paul Miller’s 2018 article for The Verge and Fatih Arslan’s 2019 “Using the iPad Pro as my development machine.” These pieces more or less detail different use cases of the exact sort Blink was designed for - “professional” work done using an iPad as the terminal for a remote Linux/macOS machine. Apreche Reply Since I’ve apparently ended up with a primary life mission of doing stuff on my iPhone originally meant to be done on iPads, I’ve managed to find myself an active member of the Tilde.Town community - a place exclusively accessible via SSH, aside from public pages - exclusively through my iPhone 12 Pro Max. I’m not the first to use Blink to do this - note Apreche’s reply to my thread, embedded above - but I suspect I’m the first to spend significant Town Time on my fucking phone, so I thought it might be worth laying out some of the particulars I’ve learned along the way. It’s important to note that 99% of the use detailed in this guide/account involves the use of a paired Bluetooth keyboard. Blink Settings Locally First, Blink’s settings menu is accessed by typing config and/or ⌘,. Unfortunately, there’s no method of installing the entire selection of available fonts or themes - you’ll have to do so one at a time, though you can optimize the process by learning/copy-and-pasting the url scheme for the fonts/themes directories on their respective repos. I especially recommend CLRS, Man Page, and MonaLisa, but this Post is saturated with too many mocked up screenshots of Blink themes to reasonably continue that list any further. Local UNIX Commands in Blink-ManPage Compared with its fork, a-Shell, Blink’s local UNIX command list is a bit sparse. It’s accessed exclusively with TAB. Where a-Shell has pickFolder, Blink has link-files, which does effectively the same thing: the Files app is opened, prompting you to select a folder, which will become visible and accessible in the command line. Repository Cleaning Linking The Psalms’ GitHub Repository in Working Copy with link-files in Blink had profound results. I was offered a brief glance of that enhanced productivity command line evangelists always seem to be on about, if only because the files and directories were color-coded by type so distinctly. open also somehow lead to swifter previews than in Working Copy, despite that app’s brilliance. BaityYouTubeThumbnail Some other particularly intriguing standouts include say, which unfortunately does not use your preferred Siri voice to speak aloud text, but rather the oldest there is. facecam will open a manipulatable circle of your device’s front-facing camera view, as shown in the screenshot embedded above. openurl will instantly open a formally-formatted web URL in Safari, which can come in handy. pbcopy and pbpaste really do manipulate the iOS system clipboard, which I probably find more impressive than I should. code is the newest to the bunch and will open a local instance of GitHub Codespaces(?) If this is truly useful on iPad - which plenty of positive feedback on social suggests it is, to at least a few human beings - it is barely usable on iPhone, which is to be expected, really. Blink and Code Blink’s own “UNIX Command Line Tools Roundup” does an okay job of outlining the rest of the basic networking and file management commands included that act locally, though I’ve still been unable to find out what skstore does. xcall opens x-callback-URLs, though I’m still trying to figure out what the command’s options are. ed the ancient command line text editor is available, though I’ve yet to learn to use it, and uptime appears to be actually accurate? Being able to run whois locally on iPhone has its uses, especially given the aforementioned support of pbcopy. whois bilge.world | pbcopy copies The Psalms domain registry information to the iOS clipboard in a flash. Blink Keyboard Shortcuts Keyboarding To its credit, I think Blink’s landing page represents the most explicitly pro-keyboard literature I’ve ever seen for an iOS app. From my fairly extensive use, its Bluetooth keyboard support fully reflects these declarations, even on iPhone. Out of the list of shortcuts you see in the screenshot embedded above, Share Selection is by far the one I use most, usually to open a link from the Tilde IRC chat. If I’m lucky/accurate, double tapping said link will select all of it and only it. After a link is selected - which sometimes involves rotating the phone and/or zooming far out to get longer URLS in a single line - I’m able to call it up in the iOS sharesheet with ⌥U, then open it in Safari with a Siri Shortcut I’ve placed there entitled “O P E N.” Or - in the case of a direct link to a file - I could use another shortcut of mine just below it, called “DOWNLOAD,” which uses the Get Contents of URL action to download files directly to my Downloads folder in iCloud Drive. Googling a selection (⌥G) has come in handy once or twice. I tried the Stack Overflow shortcut for kicks, but was meant with an endless string of CAPTCHA requests. Blink Custom Key Presses An extraordinary feature of Blink’s which I originally misunderstood and have just begun to play with: custom key presses. In Config ⇨ Keyboard ⇨ Custom Presses, one can assign any text that can be hex encoded (Base16) to a keyboard shortcut. I’ve created a Siri Shortcut that requires the free version of GizmoPack to aid myself (and you, hopefully,) in quickly converting plain text commands to this format. In the screenshots embedded above, the shortcuts listed on the left correspond in order with the commands listed on the right. You’ll note I’ve begun to attempt assigning quick keys to my most commonly typed-out commands. Importing Keys in Blink Shell Remotes with SSH and Mosh If you’re entirely new to SSH as a concept, I’ve found no better introduction than Tilde.Town’s own SSH Primer. I screwed up my first attempt at obtaining a key, but Town Maintainer vilmibm kindly responded to my Twitter DM in December of last year asking to instate a new key. I can’t remember whether or not I generated it originally within Blink, but regardless, the app’s key management is as intuitive as I’ve seen. Blink Autocomplete One of my unexpected favorite bits about Blink is its autocomplete feature which applies to both “commands and hosts” as quoted from its singular mention in the docs. There very well could be a better means of typing out absurdly long filenames in other terminal emulators, but I’ve personally not come across anything remotely like this magic of Blink’s. Especially for someone newish to the command line like myself, its autocomplete occasionally borders on “intelligent autosuggestion” without actually crossing the threshold in an irritating way. Once I configured Tilde.Town as a host (with the local name Tilde.Town,) all I need do to connect is begin to type ssh T or mosh T (ssh keys == mosh keys, which I wish I knew weeks ago) and TAB to complete the full ssh Tilde.Town or mosh Tilde.Town commands. Adding Files App Locations in Blink Once you’ve connected to Town, you should take advantage of Blink’s Files app integration by adding a location at the bottom of its entry in the Hosts menu. This adds Blink to the master, root list of file providers in the app. From there, all of the Files app’s features (including drag-and-drop) will apply to Tilde.Town as long as you’re sustaining at least one connection via ssh or mosh. Blink File Providers To illustrate, here’s a wee, one-take tutorial on uploading images this way: Mini Tutorial: Uploading images to the Tildeverse with Blink Shell video controls source src="https://tilde.town/~extratone/videos/uploadingimageswithblink.MP4" /video Novel Chat Fixed Chat The IRC client TildeTown uses is called WeeChat and - especially if it’s been as long for you as it had been for me - you might find (as I did) learning the ropes to be a bit dubitable. I’ve duplicated the full User Guide for your consideration. I got stuck at the concept of switching buffers, so my Big Pro hint is to start off running /buffer 1 followed by help. In order to display the chat even remotely readably in portrait mode on an iPhone, you’ll need to remove the buffer list by hiding it. (Try /help bar in the first buffer.) You’ll also need to zoom out a bit and set the display mode to Fill via the menus that appear with a three-finger tap anywhere on screen. To achieve the look shown in the screenshot embedded above, you’ll need to hide a few things, but I’ll come back to those specific commands in a sec. Assuming you intend to stay connected to Town IRC On The Go, I’d advise always starting your intended chat window with mosh, which - through a whole bunch of alchemy I’m incapable of understanding - establishes a much more flexible sort of connection that’s actually realistically dependable from within the uncertain world of a backgrounded iPhone app. Optionally, the geo command can be used to force iOS into allowing Blink a more genuine background running state with geo track. Additionally, geo current displays a nicely-formatted set of location information: { “Latitude” : 38.933988900043886, “AltitudeRef” : 0, “GPSVersion” : “2.3.0.0”, “DateStamp” : “2022:03:09”, “Altitude” : 203.0797061920166, “Longitude” : 92.388242309618036, “LongitudeRef” : “W”, “TimeStamp” : “14:35:13.140000”, “LatitudeRef” : “N”, “DOP” : 35 } As you’d expect, the persistence allowed by this feature - which does, indeed, extend to remote files access in the Files app as you move about the world - comes at a significant consumptive power and resource sacrifice. If you parse the slapdash language in the docs, the implication is that you should only need to use the geo command to make ssh connections persistent, not mosh connections. Since encountering this wording, I’ve yet to have an opportunity to explore the real world truth of this supposition because I have only my rotting legs to propel me around, these days. If I remember correctly, I once found a surprisingly capable (for the time and circumstances) iPhone IRC app in Colloquy’s iPhone OS offering, though it appears to have fallen far, far out of support, now. LimeChat’s iPhone app isn’t listed on the App Store anymore and its landing page proudly touts support for iOS 4 multitasking! Connections are kept in 10 minutes after going to background. My memories of computer use from that time are ever so vague, but after just a brief junket to the era’s surviving app literature, some abyssal images within me were stirred. I suspect I tried every possible solution as I’ve always tended to, even back then, on my first generation iPhone and then my 4S. I remember Colloquy being the most tenable, but far from persistent, of course. As I recall, one could maintain a conversation as a passenger on a car trip, for instance, but remaining ambiently, eternally Logged In - as is the ancient custom of Internet Relay Chat - was too far out of reach to even be of consideration. To be honest, I still find the whole idea unnatural, and I’m not alone, but I can promise you that running Blink on a recent iPhone with the average American cellular connection is as close to the full WeeChat experience as is possible on a handset, today, for whatever that may be worth to you. Thanks to some incredibly helpful new TildeTown friends, its copious configurability pivoted from an insurmountable, puzzling ordeal to a never before conceived of solution. If you haven’t already, skim the actual conversation contained within the pre-header screenshot, above. WeeChat Configuration The following is the precise set of commands involved in making WeeChat look as the screenshot does, though in no particular order. As m455 pointed out, fset is the tool that lists available configurable options and their current status in a linear way. The default of the second option in the list is apparently 11, but I fiddled quite a bit to find 9 more optimum. fset /set weechat.look.prefixalignmax 9 /bar hide bufflist /bar hide fset /bar hide title /bar hide nicklist /set weechat.look.buffertimeformat "%M" If you eliminate the value of the very last command (so just “”) and add /bar hide status to the list, you’ll end up with a more minimal-looking, timestamp-less experience: Spacedust Chat Minimal If indeed there is a “reasonable” configuration for command line IRC display on a telephone in the year 2022, surely, this is it. Town TV Town Television Due largely to its primary market of iPad-bound developers living and working in remote Digital Ocean droplets, significant effort (I assume) has been expended in making Blink Shell one of the few iOS apps which usably supports external AirPlay displays, even, yes, on iPhone. As far as I can tell, all of the iPad options in the appearance settings menu seen below have also functioned in my tests on iPhone, casting an entirely separate set of Blink windows to my mom’s Huge Ass Samsung television in ten-eighty pee. Blink Appearance Settings If you’ve somehow found yourself this far, you’re probably looking for the keyboard shortcut⌘O, which switches your currently active cursor between the device and the external display. “You can also move windows between iPad and External Display with ⇧⌘O,” say the docs. Other considerations I’ve discovered through experiments with this: You can lock the phone with the external display running, but it won’t update, even with mosh or withgeo track. AirPlay will also cease after a period I couldn’t be bothered to determine, so if anything, this is more of an inconvenience than a feature. Notifications in Blink Other Considerations Blink has a URL scheme - blinkshell://run?key=YourKey]&cmd= - but it’s not particularly useful, largely because it’s for the moment left [without any real documentation. I was able to create a Drafts action that runs one’s current selection as a command in Blink, but the app doesn’t appear to like it very much, if you know what I mean. Blink also integrates with iOS system notifications - as exemplified in the screenshot embedded above - and they do work consistently with mentions in town chat, even outside the app, though I’ve yet to see one including any useful information. You’ll know that something happened, maybe. Recently, the app has taken to displaying a nondescript notification every time I re-open WeeChat, even without new messages since the last time I opened it. Somehow, upon logging into macOS for the first time since installing all the aforementioned themes in Blink, I found the same themes available in the Mac Terminal. I’m sure there’s an explanation involving hidden iCloud Drive folders - and I can’t imagine being anything but pleasantly surprised to find oneself flush with more Terminal themes - but it’s still worth a heads up. Philosophically, one might declare the practice I’ve outlined here to be definitively against everything the Tildeverse is about - the small web, Linuxy stuff. Bringing this up in TildeChat a few times, I was met only with acceptance. In fact, acceptance, curiosity, and support is all I’ve been met with throughout my first few months as a townie, and I hope this Post encourages/aids more folks to come join me in this shared computer. You can find the sign-up form for TildeTown here and the corresponding GitHub Issue for this post (with a bunch more screenshots) here. #software #configuration --- 1] [Blink’s icon is perhaps my most favorite of any application, ever. 2] Yes, that is my real location information and yes, I did include it intentionally. Please come kill me as soon as possible. Also, “DOR” is apparently an acronym for “[Dilution of Precision),” which is a mildly interesting measurement to read up on. 3] As [the screenshots I captured suggest, anyway. Obviously, I do not posess the means to test the true resolution display to mine eyes.]]> Blink Folder

The ideal means of On The Go participation in The Tildeverse.

I was completely unaware of the Tildeverse’s origin story – documented in a Medium post by WIRED Editor-in-Chief, Paul Ford – until this year, somehow, though I knew of its existence as far back as 2018. I was living in an unairconditioned Portland apartment, then, and had found myself stuck with Linux for the first time in my adult life. Consequentially, this period of my life became my first true introduction to the Command Line – a space about which I knew no more than the layest layman. Hopping between my ten-year-old, post-corporate system’s shell and the DOS machines I was emulating on it (exploring the history of word processors, mostly,) I believe I struggled through dare I say a Rite of Computing Passage, obtaining the capability (and eventually, the muscle memory) to navigate a filesystem with cd, ls, and (on DOS) dir. It wasn’t until I came home in ‘19 that I discovered the two primary emulated Linux shells on iOS: iSH Shell and a-Shell.

iSH Shell and a-Shell

The former is designed to emulate Alpine Linux and has just recently added direct filesystem access via the Files app. The latter is, I’m told, quite extensible, and includes Siri Shortcuts actions that have enabled it to underpin powerful scraping shortcuts like SW-DLT – a sort of frontend for youtube-dl and now yt-dlp. Both are open source, but a-Shell is actually a fork of our subject app, now called “Blink Shell & Code” in the App Store.[^1]

bbj Out

Blink’s tag is “a professional, desktop grade terminal for iOS.” Its landing page touts a “first class iOS experience, with software and hardware keyboard, and the full edge-to-edge experience” experience. On iPad, Blink’s heyday was well documented by the likes of Paul Miller’s 2018 article for The Verge and Fatih Arslan’s 2019 “Using the iPad Pro as my development machine.” These pieces more or less detail different use cases of the exact sort Blink was designed for – “professional” work done using an iPad as the terminal for a remote Linux/macOS machine.

Apreche Reply

Since I’ve apparently ended up with a primary life mission of doing stuff on my iPhone originally meant to be done on iPads, I’ve managed to find myself an active member of the Tilde.Town community – a place exclusively accessible via SSH, aside from public pages – exclusively through my iPhone 12 Pro Max. I’m not the first to use Blink to do this – note Apreche’s reply to my thread, embedded above – but I suspect I’m the first to spend significant Town Time on my fucking phone, so I thought it might be worth laying out some of the particulars I’ve learned along the way.

It’s important to note that 99% of the use detailed in this guide/account involves the use of a paired Bluetooth keyboard.

Blink Settings

Locally

First, Blink’s settings menu is accessed by typing config and/or ⌘,. Unfortunately, there’s no method of installing the entire selection of available fonts or themes – you’ll have to do so one at a time, though you can optimize the process by learning/copy-and-pasting the url scheme for the fonts/themes directories on their respective repos. I especially recommend CLRS, Man Page, and MonaLisa, but this Post is saturated with too many mocked up screenshots of Blink themes to reasonably continue that list any further.

Local UNIX Commands in Blink-ManPage

Compared with its fork, a-Shell, Blink’s local UNIX command list is a bit sparse. It’s accessed exclusively with TAB. Where a-Shell has pickFolder, Blink has link-files, which does effectively the same thing: the Files app is opened, prompting you to select a folder, which will become visible and accessible in the command line.

Repository Cleaning

Linking The Psalms’ GitHub Repository in Working Copy with link-files in Blink had profound results. I was offered a brief glance of that enhanced productivity command line evangelists always seem to be on about, if only because the files and directories were color-coded by type so distinctly. open also somehow lead to swifter previews than in Working Copy, despite that app’s brilliance.

BaityYouTubeThumbnail

Some other particularly intriguing standouts include say, which unfortunately does not use your preferred Siri voice to speak aloud text, but rather the oldest there is. facecam will open a manipulatable circle of your device’s front-facing camera view, as shown in the screenshot embedded above. openurl will instantly open a formally-formatted web URL in Safari, which can come in handy. pbcopy and pbpaste really do manipulate the iOS system clipboard, which I probably find more impressive than I should. code is the newest to the bunch and will open a local instance of GitHub Codespaces(?) If this is truly useful on iPad – which plenty of positive feedback on social suggests it is, to at least a few human beings – it is barely usable on iPhone, which is to be expected, really.

Blink and Code

Blink’s own “UNIX Command Line Tools Roundup” does an okay job of outlining the rest of the basic networking and file management commands included that act locally, though I’ve still been unable to find out what skstore does. xcall opens x-callback-URLs, though I’m still trying to figure out what the command’s options are. ed the ancient command line text editor is available, though I’ve yet to learn to use it, and uptime appears to be actually accurate? Being able to run whois locally on iPhone has its uses, especially given the aforementioned support of pbcopy. whois bilge.world | pbcopy copies The Psalms domain registry information to the iOS clipboard in a flash.

Blink Keyboard Shortcuts

Keyboarding

To its credit, I think Blink’s landing page represents the most explicitly pro-keyboard literature I’ve ever seen for an iOS app. From my fairly extensive use, its Bluetooth keyboard support fully reflects these declarations, even on iPhone. Out of the list of shortcuts you see in the screenshot embedded above, Share Selection is by far the one I use most, usually to open a link from the Tilde IRC chat. If I’m lucky/accurate, double tapping said link will select all of it and only it.

After a link is selected – which sometimes involves rotating the phone and/or zooming far out to get longer URLS in a single line – I’m able to call it up in the iOS sharesheet with ⌥U, then open it in Safari with a Siri Shortcut I’ve placed there entitled “O P E N.” Or – in the case of a direct link to a file – I could use another shortcut of mine just below it, called “DOWNLOAD,” which uses the Get Contents of URL action to download files directly to my Downloads folder in iCloud Drive. Googling a selection (⌥G) has come in handy once or twice. I tried the Stack Overflow shortcut for kicks, but was meant with an endless string of CAPTCHA requests.

Blink Custom Key Presses

An extraordinary feature of Blink’s which I originally misunderstood and have just begun to play with: custom key presses. In Config ⇨ Keyboard ⇨ Custom Presses, one can assign any text that can be hex encoded (Base16) to a keyboard shortcut. I’ve created a Siri Shortcut that requires the free version of GizmoPack to aid myself (and you, hopefully,) in quickly converting plain text commands to this format. In the screenshots embedded above, the shortcuts listed on the left correspond in order with the commands listed on the right. You’ll note I’ve begun to attempt assigning quick keys to my most commonly typed-out commands.

Importing Keys in Blink Shell

Remotes with SSH and Mosh

If you’re entirely new to SSH as a concept, I’ve found no better introduction than Tilde.Town’s own SSH Primer. I screwed up my first attempt at obtaining a key, but Town Maintainer vilmibm kindly responded to my Twitter DM in December of last year asking to instate a new key. I can’t remember whether or not I generated it originally within Blink, but regardless, the app’s key management is as intuitive as I’ve seen.

Blink Autocomplete

One of my unexpected favorite bits about Blink is its autocomplete feature which applies to both “commands and hosts” as quoted from its singular mention in the docs. There very well could be a better means of typing out absurdly long filenames in other terminal emulators, but I’ve personally not come across anything remotely like this magic of Blink’s. Especially for someone newish to the command line like myself, its autocomplete occasionally borders on “intelligent autosuggestion” without actually crossing the threshold in an irritating way. Once I configured Tilde.Town as a host (with the local name Tilde.Town,) all I need do to connect is begin to type ssh T or mosh T (ssh keys == mosh keys, which I wish I knew weeks ago) and TAB to complete the full ssh Tilde.Town or mosh Tilde.Town commands.

Adding Files App Locations in Blink

Once you’ve connected to Town, you should take advantage of Blink’s Files app integration by adding a location at the bottom of its entry in the Hosts menu. This adds Blink to the master, root list of file providers in the app. From there, all of the Files app’s features (including drag-and-drop) will apply to Tilde.Town as long as you’re sustaining at least one connection via ssh or mosh.

Blink File Providers

To illustrate, here’s a wee, one-take tutorial on uploading images this way:

Novel Chat Fixed

Chat

The IRC client TildeTown uses is called WeeChat and – especially if it’s been as long for you as it had been for me – you might find (as I did) learning the ropes to be a bit dubitable. I’ve duplicated the full User Guide for your consideration. I got stuck at the concept of switching buffers, so my Big Pro hint is to start off running /buffer 1 followed by help. In order to display the chat even remotely readably in portrait mode on an iPhone, you’ll need to remove the buffer list by hiding it. (Try /help bar in the first buffer.) You’ll also need to zoom out a bit and set the display mode to Fill via the menus that appear with a three-finger tap anywhere on screen. To achieve the look shown in the screenshot embedded above, you’ll need to hide a few things, but I’ll come back to those specific commands in a sec.

Assuming you intend to stay connected to Town IRC On The Go, I’d advise always starting your intended chat window with mosh, which – through a whole bunch of alchemy I’m incapable of understanding – establishes a much more flexible sort of connection that’s actually realistically dependable from within the uncertain world of a backgrounded iPhone app. Optionally, the geo command can be used to force iOS into allowing Blink a more genuine background running state with geo track. Additionally, geo current displays a nicely-formatted set of location information:[^2]

{
  “Latitude” : 38.933988900043886,
  “AltitudeRef” : 0,
  “GPSVersion” : “2.3.0.0”,
  “DateStamp” : “2022:03:09”,
  “Altitude” : 203.0797061920166,
  “Longitude” : 92.388242309618036,
  “LongitudeRef” : “W”,
  “TimeStamp” : “14:35:13.140000”,
  “LatitudeRef” : “N”,
  “DOP” : 35
}

As you’d expect, the persistence allowed by this feature – which does, indeed, extend to remote files access in the Files app as you move about the world – comes at a significant consumptive power and resource sacrifice. If you parse the slapdash language in the docs, the implication is that you should only need to use the geo command to make ssh connections persistent, not mosh connections. Since encountering this wording, I’ve yet to have an opportunity to explore the real world truth of this supposition because I have only my rotting legs to propel me around, these days.

If I remember correctly, I once found a surprisingly capable (for the time and circumstances) iPhone IRC app in Colloquy’s iPhone OS offering, though it appears to have fallen far, far out of support, now. LimeChat’s iPhone app isn’t listed on the App Store anymore and its landing page proudly touts support for iOS 4 multitasking!

Connections are kept in 10 minutes after going to background.

My memories of computer use from that time are ever so vague, but after just a brief junket to the era’s surviving app literature, some abyssal images within me were stirred. I suspect I tried every possible solution as I’ve always tended to, even back then, on my first generation iPhone and then my 4S. I remember Colloquy being the most tenable, but far from persistent, of course. As I recall, one could maintain a conversation as a passenger on a car trip, for instance, but remaining ambiently, eternally Logged In – as is the ancient custom of Internet Relay Chat – was too far out of reach to even be of consideration.

To be honest, I still find the whole idea unnatural, and I’m not alone, but I can promise you that running Blink on a recent iPhone with the average American cellular connection is as close to the full WeeChat experience as is possible on a handset, today, for whatever that may be worth to you. Thanks to some incredibly helpful new TildeTown friends, its copious configurability pivoted from an insurmountable, puzzling ordeal to a never before conceived of solution. If you haven’t already, skim the actual conversation contained within the pre-header screenshot, above.

WeeChat Configuration

The following is the precise set of commands involved in making WeeChat look as the screenshot does, though in no particular order. As m455 pointed out, fset is the tool that lists available configurable options and their current status in a linear way. The default of the second option in the list is apparently 11, but I fiddled quite a bit to find 9 more optimum.

  • fset
  • /set weechat.look.prefix_align_max 9
  • /bar hide bufflist
  • /bar hide fset
  • /bar hide title
  • /bar hide nicklist
  • /set weechat.look.buffer_time_format "%M"

If you eliminate the value of the very last command (so just “”) and add /bar hide status to the list, you’ll end up with a more minimal-looking, timestamp-less experience:

Spacedust Chat Minimal

If indeed there is a “reasonable” configuration for command line IRC display on a telephone in the year 2022, surely, this is it.

Town TV

Town Television

Due largely to its primary market of iPad-bound developers living and working in remote Digital Ocean droplets, significant effort (I assume) has been expended in making Blink Shell one of the few iOS apps which usably supports external AirPlay displays, even, yes, on iPhone. As far as I can tell, all of the iPad options in the appearance settings menu seen below have also functioned in my tests on iPhone, casting an entirely separate set of Blink windows to my mom’s Huge Ass Samsung television in ten-eighty pee.[^3]

Blink Appearance Settings

If you’ve somehow found yourself this far, you’re probably looking for the keyboard shortcut⌘O, which switches your currently active cursor between the device and the external display. “You can also move windows between iPad and External Display with ⇧⌘O,” say the docs. Other considerations I’ve discovered through experiments with this: You can lock the phone with the external display running, but it won’t update, even with mosh or withgeo track. AirPlay will also cease after a period I couldn’t be bothered to determine, so if anything, this is more of an inconvenience than a feature.

Notifications in Blink

Other Considerations

Blink has a URL scheme – blinkshell://run?key=[YourKey]&cmd= – but it’s not particularly useful, largely because it’s for the moment left without any real documentation. I was able to create a Drafts action that runs one’s current selection as a command in Blink, but the app doesn’t appear to like it very much, if you know what I mean. Blink also integrates with iOS system notifications – as exemplified in the screenshot embedded above – and they do work consistently with mentions in town chat, even outside the app, though I’ve yet to see one including any useful information. You’ll know that something happened, maybe. Recently, the app has taken to displaying a nondescript notification every time I re-open WeeChat, even without new messages since the last time I opened it.

Somehow, upon logging into macOS for the first time since installing all the aforementioned themes in Blink, I found the same themes available in the Mac Terminal. I’m sure there’s an explanation involving hidden iCloud Drive folders – and I can’t imagine being anything but pleasantly surprised to find oneself flush with more Terminal themes – but it’s still worth a heads up.

Philosophically, one might declare the practice I’ve outlined here to be definitively against everything the Tildeverse is about – the small web, Linuxy stuff. Bringing this up in TildeChat a few times, I was met only with acceptance. In fact, acceptance, curiosity, and support is all I’ve been met with throughout my first few months as a townie, and I hope this Post encourages/aids more folks to come join me in this shared computer. You can find the sign-up form for TildeTown here and the corresponding GitHub Issue for this post (with a bunch more screenshots) here.

#software #configuration


[1] Blink’s icon is perhaps my most favorite of any application, ever. [2] Yes, that is my real location information and yes, I did include it intentionally. Please come kill me as soon as possible. Also, “DOR” is apparently an acronym for “Dilution of Precision,” which is a mildly interesting measurement to read up on. [3] As the screenshots I captured suggest, anyway. Obviously, I do not posess the means to test the true resolution display to mine eyes.

]]>
https://bilge.world/tildetown-iphone-blink-shell Mon, 14 Mar 2022 01:47:53 +0000
Run Siri Shortcuts with Hyperlinks https://bilge.world/run-siri-shortcuts-with-hyperlinks?pk_campaign=rss-feed <![CDATA[Shortcuts Run Links Imagine running shortcuts from anywhere you can place a link. !--more-- There seemed to be a bit of confusion regarding a shortcut I posted on RoutineHub a few days ago entitled “Generate Shortcuts Run Links List,” so I thought I’d attempt to overview how I’ve come to use Shortcuts’ URL scheme as my primary method of calling shortcuts across both iOS and macOS. The basis of the whole shit is shortcuts://run-shortcut?name= and shortcuts://x-callback-url/run-shortcut?name=. Using these along with URL-encoded shortcuts titles (for those containing a space,) we can create links that will run shortcuts from anywhere on iOS or macOS as hyperlinks. These days, this is how I run most of my even semi-regular-use shortcuts, largely from my first Dot in Iconfactory’s Tot. Tot With a few exceptions, all the links you see in the above screenshot above “Drafts Instrument Panel” are shortcuts run links of the same type. Most of these, I typed out by hand with a TextExpander snippet. Here’s what the mess looks like underneath: Tot Code I had a bit of an issue creating the shortcut, itself. Though Shortcuts includes a native URL Encode action, I couldn’t seem to get it to reliably generate URL-encoded shortcuts names, which is why I inserted the Text Case action, instead. a href="https://remark.as/p/bilge.world/run-siri-shortcuts-with-hyperlinks"Discuss.../a #automation #software #configuration]]> Shortcuts Run Links

There seemed to be a bit of confusion regarding a shortcut I posted on RoutineHub a few days ago entitled “Generate Shortcuts Run Links List,” so I thought I’d attempt to overview how I’ve come to use Shortcuts’ URL scheme as my primary method of calling shortcuts across both iOS and macOS.

The basis of the whole shit is shortcuts://run-shortcut?name= and shortcuts://x-callback-url/run-shortcut?name=. Using these along with URL-encoded shortcuts titles (for those containing a space,) we can create links that will run shortcuts from anywhere on iOS or macOS as hyperlinks. These days, this is how I run most of my even semi-regular-use shortcuts, largely from my first Dot in Iconfactory’s Tot.

Tot

With a few exceptions, all the links you see in the above screenshot above “Drafts Instrument Panel” are shortcuts run links of the same type. Most of these, I typed out by hand with a TextExpander snippet. Here’s what the mess looks like underneath:

Tot Code

I had a bit of an issue creating the shortcut, itself. Though Shortcuts includes a native URL Encode action, I couldn’t seem to get it to reliably generate URL-encoded shortcuts names, which is why I inserted the Text Case action, instead.

Discuss...

#automation #software #configuration

]]>
https://bilge.world/run-siri-shortcuts-with-hyperlinks Fri, 04 Mar 2022 17:10:47 +0000
Windows Eternal Drafts Theme https://bilge.world/windows-eternal?pk_campaign=rss-feed <![CDATA[WindowsEternal-iPadPro I believe I have finally manifested the Drafts interpretation of Winders users’ dreams. !--more-- If you still follow me on Twitter, you’ve seen me posting a lot of mockups and links related to Agile Tortoise’s Drafts, lately. I know it probably seems like a phase - and I suppose it is, technically - but I’ve actually been using this darned application for the entirety of my adult life. It’s just that I’ve only recently (read: since 2020 or so) returned to Drafts as my primary text living space from Bear for what I’m sure you’ll regard as silly reasons. In terms of themes for Drafts, I’ve already hit you with one based on this very blog and “Windows Iowa” - both of which have faired far better than I would’ve ever expected on the Drafts Directory. Switching SwitchingLandscape Now, though, I would like to present “Windows Eternal” - a celebratory theme of ye olde Winders™ Aesthetic, based on one of my very favorite themes for Telegram Messenger for iOS. Telegram Theme I’m actually not sure what it was called originally, but I’ve archived the Telegram theme as Windows Eternal, too. WindowsEternalTelegramLandscape WindowsEternalTelegram If you or someone you know might remember who the original creator was, please do get in touch because they absolutely deserve to be credited here and elsewhere. Windows Eternal Portrait Clean Details If you’re interested, the full source of Windows Eternal is publicly available, though I would recommend using the “Open in Theme Builder” button on its Drafts Directory page to view the details visually, especially if you’re a Drafts user who’s never tried it. You’ll note that I made heavy use of #327c7d (that darkish green color) as often as possible along with #bfc0c1 (the main gray) and #000DA6 (the main bright blue.) Buttons Drafts Directory Link GitHub Issue Source Tilde (More screenshots) Telegram Theme a href="https://remark.as/p/bilge.world/windows-eternal"Discuss.../a #software #configuration]]> WindowsEternal-iPadPro

I believe I have finally manifested the Drafts interpretation of Winders users’ dreams.

If you still follow me on Twitter, you’ve seen me posting a lot of mockups and links related to Agile Tortoise’s Drafts, lately. I know it probably seems like a phase – and I suppose it is, technically – but I’ve actually been using this darned application for the entirety of my adult life. It’s just that I’ve only recently (read: since 2020 or so) returned to Drafts as my primary text living space from Bear for what I’m sure you’ll regard as silly reasons. In terms of themes for Drafts, I’ve already hit you with one based on this very blog and “Windows Iowa” – both of which have faired far better than I would’ve ever expected on the Drafts Directory.

Switching

SwitchingLandscape

Now, though, I would like to present “Windows Eternal” – a celebratory theme of ye olde Winders™ Aesthetic, based on one of my very favorite themes for Telegram Messenger for iOS.

Telegram Theme

I’m actually not sure what it was called originally, but I’ve archived the Telegram theme as Windows Eternal, too.

WindowsEternalTelegramLandscape

WindowsEternalTelegram

If you or someone you know might remember who the original creator was, please do get in touch because they absolutely deserve to be credited here and elsewhere.

Windows Eternal Portrait Clean

Details

If you’re interested, the full source of Windows Eternal is publicly available, though I would recommend using the “Open in Theme Builder” button on its Drafts Directory page to view the details visually, especially if you’re a Drafts user who’s never tried it. You’ll note that I made heavy use of #327c7d (that darkish green color) as often as possible along with #bfc0c1 (the main gray) and #000DA6 (the main bright blue.)

Buttons

Discuss...

#software #configuration

]]>
https://bilge.world/windows-eternal Sun, 20 Feb 2022 11:17:58 +0000
The Fastest Route to Twitter Jail https://bilge.world/twitter-jail?pk_campaign=rss-feed <![CDATA[TwitterJail My new Twitter Jail Siri Shortcut marks a milestone in Social Foolery. !--more-- I graduated high school in 2012. Back then, TweetDeck was still a standalone desktop client that allowed one to post with just the ENTER or return key. I'd made it part of the Drywall Prime Directive to generally keep @ihadtopee in Twitter Jail as much as possible, which meant pounding my way into it ASAP, daily. This was often my very first task upon returning home from school. All memories - much less computing memories - are quite obscured from that era, but I wouldn't be surprised if I was spending a cumulative 45 minutes every school day punishing the fuck out of my first flat generation w/keypad Apple Keyboard to TweetDeck in Windows 7. https://twitter.com/TWlTTER_JAIL/status/746295481123274752 It's not that automating Tweets wasn't possible in that era - I'd been posting WHEN IM COMIN DINE IN MY FOREIGN AND IM ROLLIN ONE DEEP THAT SHOULD TELL YA BOUT ME across all my social accounts every morning at 0610 since Freshman year via IFTT (now IFTTT) - but doing so at any sustained rate required actual knowledge. https://www.youtube.com/watch?v=4qyHYslaQx4 Today, even an rube like myself can whip up a Siri Shortcut capable of jailing a user account in less than four minutes from nill - what appears to be a statically-set rate limit of 310 Tweets in that time. Mind you, we're talking about entirely on-device processing here, and - in case you weren't aware - the device I'm referring to is my fucking cellular phone. TwitterJailTimeline Twitter Jail technically requires three apps - two of which are ridiculously small, 100% Apple cross-platform, and entirely free - and the third represents simply the most refined and delightful means anyone has ever interacted with The Bird Site. Requirements Actions - Free across all platforms and just 3.3mb to download! Tweetbot (You might also try Aviary if you absolutely cannot bring yourself to pay a subscription fee, ever.) Data Jar (More or less optional.) Upon installation, you'll be asked 1.) to set the default number of repeats (Tweets) per run. Obviously, I'd recommend ~310 to optimize your jailing. 2.) To specify which Tweetbot-authenticated user account you'd like to get jailed, and 3.) which "key path" (jar) you'd like to store the URLs of said Tweets in. The third is almost certainly useless and entirely optional (just delete the Data Jar action,) but... you never know when... you might need... those URLs. Depending on your device (to some extent, I'd imagine,) proceeding to run the shortcut shouldn't take long. It randomly generates 91 characters text from a string (which you should also feel empowered to customize/add to,) Tweets them from your specified account, and stores the URLs of those Tweets in the jar you may or may not have specified. You might expect me to express envy of any youths reading, but I absolutely feel none. All I can do is encourage you to fucking try Mastodon for God's sake and your own. Twitter Jail macOS Update: macOS Version Published I’ve created a macOS version of Twitter Jail which also requires the Actions app but substitutes Aviary for Tweetbot given the former’s native Siri Shortcuts action does not require the app to open for each Tweet. 1] It's actually still available from [various sources - including the Mac App Store - but has fallen way, way out of support. #automation #software #configuration]]> TwitterJail

My new Twitter Jail Siri Shortcut marks a milestone in Social Foolery.

I graduated high school in 2012. Back then, TweetDeck was still a standalone desktop client[^1] that allowed one to post with just the ENTER or return key. I'd made it part of the Drywall Prime Directive to generally keep @ihadtopee in Twitter Jail as much as possible, which meant pounding my way into it ASAP, daily. This was often my very first task upon returning home from school. All memories – much less computing memories – are quite obscured from that era, but I wouldn't be surprised if I was spending a cumulative 45 minutes every school day punishing the fuck out of my first flat generation w/keypad Apple Keyboard to TweetDeck in Windows 7.

It's not that automating Tweets wasn't possible in that era – I'd been posting WHEN IM COMIN DINE IN MY FOREIGN AND IM ROLLIN ONE DEEP THAT SHOULD TELL YA BOUT ME across all my social accounts every morning at 0610 since Freshman year via IFTT (now IFTTT) – but doing so at any sustained rate required actual knowledge.

Today, even an rube like myself can whip up a Siri Shortcut capable of jailing a user account in less than four minutes from nill – what appears to be a statically-set rate limit of 310 Tweets in that time. Mind you, we're talking about entirely on-device processing here, and – in case you weren't aware – the device I'm referring to is my fucking cellular phone.

TwitterJailTimeline

Twitter Jail technically requires three apps – two of which are ridiculously small, 100% Apple cross-platform, and entirely free – and the third represents simply the most refined and delightful means anyone has ever interacted with The Bird Site.

Requirements

  • Actions – Free across all platforms and just 3.3mb to download!
  • Tweetbot (You might also try Aviary if you absolutely cannot bring yourself to pay a subscription fee, ever.)
  • Data Jar (More or less optional.)

Upon installation, you'll be asked 1.) to set the default number of repeats (Tweets) per run. Obviously, I'd recommend ~310 to optimize your jailing. 2.) To specify which Tweetbot-authenticated user account you'd like to get jailed, and 3.) which “key path” (jar) you'd like to store the URLs of said Tweets in. The third is almost certainly useless and entirely optional (just delete the Data Jar action,) but... you never know when... you might need... those URLs.

Depending on your device (to some extent, I'd imagine,) proceeding to run the shortcut shouldn't take long. It randomly generates 91 characters text from a string (which you should also feel empowered to customize/add to,) Tweets them from your specified account, and stores the URLs of those Tweets in the jar you may or may not have specified.

You might expect me to express envy of any youths reading, but I absolutely feel none. All I can do is encourage you to fucking try Mastodon for God's sake and your own.

Twitter Jail macOS

Update: macOS Version Published

I’ve created a macOS version of Twitter Jail which also requires the Actions app but substitutes Aviary for Tweetbot given the former’s native Siri Shortcuts action does not require the app to open for each Tweet.

[1] It's actually still available from various sourcesincluding the Mac App Store – but has fallen way, way out of support.

#automation #software #configuration

]]>
https://bilge.world/twitter-jail Mon, 14 Feb 2022 08:35:27 +0000
Using Drafts with NeoCities https://bilge.world/using-drafts-with-neocities?pk_campaign=rss-feed <![CDATA[DraftsxNeoCities A Drafts Action Group for interacting with WebDAV-enabled sites. !--more-- audio controls   source src="https://davidblue.wtf/audio/draftsandneocities.mp3" /audio Thanks to recent learning, I have managed to manifest one of my alltime fantasy integrations: I have tied Drafts and NeoCities together directly via my NeoCities Action Group, which uses Drafts' native WebDAV support to (technically) interact with any website based on the protocol. I created it largely to interact with NeoCities over iOS, but frankly I was already doing so more effectively than the Action Group will ever offer with the iOS app Koder. It’s odd and a bit out of support, but incredibly useful and supported all the way back to iOS 9. Unfortunately, many of its functions - like deleting remote files, for instance - will result in a crash on modern devices. Also unfortunate - I’m afraid my Action Group doesn’t offer solutions to these problems. On iOS, it’s limited in function to pushing files to your WebDAV server and then opening them in a web browser. NeoCitiesActionGroup It wasn't as simple as HTML encoding the draft] content with percentage signs, either. In order to produce [satisfactory results, I had to wrap every output in a very custom HTML template which I would very much encourage you to personalize before using (considering especially that it includes my personalized footer links and colors.) You can view that template in full here. To be honest, I can’t quite recall where I found the original, but it was probably either included with a native Drafts action or found among Stephen Millard’s TAD library. toDraft-UUID The most reliable means of identifying, pushing, and retrieving a draft from a WebDAV site (that I found, anyway,) is by using its Universally unique identifier (UUID) in its pathname. An apt example: the draft I’m currently whittling on, enumerated 7247282E-340B-4890-A2F7-0481AF31321E. The action above - Draft to /drafts as UUID.html - will push the contents of your current draft to /drafts/the Draft’s UUID.html. (That's how I created the example.) NeoCitiesActionGroup-Viewedonmacos I've done my best to color code the actions based on the potential "severity" of their result, but the way they display will depend almost entirely on which particular Drafts theme you're using at the moment. Nevertheless, blue/green indicate the "safest" actions - like the ones that simply open a link to a draft you've already pushed - and yellow/orange/red actions involve pushing/manipulating files at the root of your site. Below is the full documentation of each of the actions (and the separators, even,) including individual install links, though I would very much recommend you install the whole bit. You'll need to edit each action and replace davidblue.wtf with your own URL(s) unless you'd like to try and attempt my absolutely gargantuan NeoCities password. NeoCities Action Group Root Type: Separator Keyboard Shortcut: Icon: Colour: none Confirm to Run: false Notifications: All Log Level: All Number of Steps: 0 Unique ID: 69B625EC-D9E2-41B7-9767-3532666E7C97 Description: Push Draft to Root as HTML Type: Action Keyboard Shortcut: Icon: 383-keyhole Colour: orange Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 81C89DC8-F26E-4644-87D7-BF454B345C24 Description: Push the current draft to the /drafts directory as an HTML file by the draft’s safetitle. Draft to Root as UUID.html Type: Action Keyboard Shortcut: Icon: binary Colour: yellow Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: ABAA6A02-806F-4B45-BEA6-E9D5F8D32236 Description: Push the current draft to the root directory as an HTML file titled by its UUID. Draft to Root as Text Timestamp Type: Action Keyboard Shortcut: Icon: alarm Colour: orange Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: EFF08ADA-81B6-49C3-B132-5DB477A95685 Description: Push the current draft to the root directory as a .txt file titled by timestamp. Draft to /{title} as index.html Type: Action Keyboard Shortcut: Icon: indent Colour: red Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 15401CFC-114E-429C-B747-054E19C46911 Description: Push the current draft to /NeoCities as index.html Open /{title} Type: Action Keyboard Shortcut: Icon: idea Colour: green Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 34630C90-6180-4394-A296-C2A5018DFEFB Description: Open /drafts/[Current Draft UUID].html. /path Type: Separator Keyboard Shortcut: Icon: Colour: none Confirm to Run: false Notifications: All Log Level: All Number of Steps: 0 Unique ID: 6F0BE49F-3B6F-49AF-ABA7-04BA7F437C1A Description: Push Draft to /drafts as HTML Type: Action Keyboard Shortcut: Icon: 383-keyhole Colour: orange Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 34A59A1C-95A8-42A9-9C23-677E9731EFC8 Description: Push the current draft to the /drafts directory as an HTML file by the draft’s safe_title. Draft to /drafts as UUID.html Type: Action Keyboard Shortcut: Icon: binary Colour: none Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 9C9FCDA8-687C-475A-8213-A8185CEFEE4D Description: Push the current draft to the /drafts directory as an HTML file titled by its UUID. Open pushed /drafts file by UUID. Type: Action Keyboard Shortcut: Icon: idea Colour: green Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: BADE45C1-AEC4-46A6-B4BE-7B88B2357C04 Description: Open /drafts/[Current Draft UUID].html. Draft to /drafts/{title} as index.html Type: Action Keyboard Shortcut: Icon: indent Colour: violet Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 5555699A-B3A6-432D-9A20-ECA78F6A5D88 Description: Push the current draft to drafts/NeoCities as index.html Open /drafts/{title} Type: Action Keyboard Shortcut: Icon: idea Colour: green Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 1E5CB9D6-B8FE-4934-8AEC-E795A651C45A Description: Open /drafts/{title} Draft to Specified Path as index.html Type: Action Keyboard Shortcut: Icon: signs-alt Colour: orange Confirm to Run: false Notifications: All Log Level: All Number of Steps: 2 Unique ID: A7D5BE00-36D3-4E08-9058-7923571189AA Description: Push Draft to specified directory as index.html. /[input]/index.html Misc Type: Separator Keyboard Shortcut: Icon: Colour: none Confirm to Run: false Notifications: All Log Level: All Number of Steps: 0 Unique ID: 06296787-B9EE-4759-9B9C-5F994CAA894A Description: Push clipboard .txt to clipboard/timestamp Type: Action Keyboard Shortcut: Icon: clipboard-content Colour: blue Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 98AF9E4B-1D48-4F95-8D2D-C879FE16BE40 Description: Push contents of the clipboard to the /clipboard directory as a .txt file. Open NeoCities Workspace Type: Action Keyboard Shortcut: ⇧⌃N Icon: cat-face Colour: gray Confirm to Run: false Notifications: All Log Level: All Number of Steps: 1 Unique ID: 4B8E95CE-F6A3-4F53-88CB-B01C8398A990 Description: Open workspace entitled “NeoCities.” NeoCities list / (macOS-Only) Type: Action Keyboard Shortcut: Icon: directions-merge Colour: gray Confirm to Run: false Notifications: All Log Level: All Number of Steps: 2 Unique ID: 898038F4-E5E4-4BDA-B15A-D2ED2D388D82 Description: Calls a shortcut entitled “NeoCitiesRoot” with a Run Shell Script action containing the following: neocities list / Can only be run on macOS and requires the NeoCities CLI. #software #configuration #automation]]> DraftsxNeoCities

A Drafts Action Group for interacting with WebDAV-enabled sites.

Thanks to recent learning, I have managed to manifest one of my alltime fantasy integrations: I have tied Drafts and NeoCities together directly via my NeoCities Action Group, which uses Drafts' native WebDAV support to (technically) interact with any website based on the protocol. I created it largely to interact with NeoCities over iOS, but frankly I was already doing so more effectively than the Action Group will ever offer with the iOS app Koder. It’s odd and a bit out of support, but incredibly useful and supported all the way back to iOS 9. Unfortunately, many of its functions – like deleting remote files, for instance – will result in a crash on modern devices. Also unfortunate – I’m afraid my Action Group doesn’t offer solutions to these problems. On iOS, it’s limited in function to pushing files to your WebDAV server and then opening them in a web browser.

NeoCitiesActionGroup

It wasn't as simple as HTML encoding the [draft] content with percentage signs, either. In order to produce satisfactory results, I had to wrap every output in a very custom HTML template which I would very much encourage you to personalize before using (considering especially that it includes my personalized footer links and colors.) You can view that template in full here. To be honest, I can’t quite recall where I found the original, but it was probably either included with a native Drafts action or found among Stephen Millard’s TAD library.

toDraft-UUID

The most reliable means of identifying, pushing, and retrieving a draft from a WebDAV site (that I found, anyway,) is by using its Universally unique identifier (UUID) in its pathname. An apt example: the draft I’m currently whittling on, enumerated 7247282E-340B-4890-A2F7-0481AF31321E. The action above – Draft to /drafts as UUID.html – will push the contents of your current draft to /drafts/the Draft’s UUID.html. (That's how I created the example.)

NeoCitiesActionGroup-Viewedonmacos

I've done my best to color code the actions based on the potential “severity” of their result, but the way they display will depend almost entirely on which particular Drafts theme you're using at the moment. Nevertheless, blue/green indicate the “safest” actions – like the ones that simply open a link to a draft you've already pushed – and yellow/orange/red actions involve pushing/manipulating files at the root of your site.

Below is the full documentation of each of the actions (and the separators, even,) including individual install links, though I would very much recommend you install the whole bit. You'll need to edit each action and replace davidblue.wtf with your own URL(s) unless you'd like to try and attempt my absolutely gargantuan NeoCities password.

NeoCities Action Group

Root

Type: Separator Keyboard Shortcut:
Icon:
Colour: none
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 0
Unique ID: 69B625EC-D9E2-41B7-9767-3532666E7C97
Description:

Push Draft to Root as HTML

Type: Action
Keyboard Shortcut:
Icon: 383-keyhole
Colour: orange
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 81C89DC8-F26E-4644-87D7-BF454B345C24
Description:
Push the current draft to the /drafts directory as an HTML file by the draft’s safe_title.

Draft to Root as UUID.html

Type: Action
Keyboard Shortcut:
Icon: binary
Colour: yellow
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: ABAA6A02-806F-4B45-BEA6-E9D5F8D32236
Description:
Push the current draft to the root directory as an HTML file titled by its UUID.

Draft to Root as Text Timestamp

Type: Action
Keyboard Shortcut:
Icon: alarm
Colour: orange
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: EFF08ADA-81B6-49C3-B132-5DB477A95685
Description:
Push the current draft to the root directory as a .txt file titled by timestamp.

Draft to /{title} as index.html

Type: Action
Keyboard Shortcut:
Icon: indent
Colour: red
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 15401CFC-114E-429C-B747-054E19C46911
Description:
Push the current draft to /NeoCities as index.html

Open /{title}

Type: Action
Keyboard Shortcut:
Icon: idea
Colour: green
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 34630C90-6180-4394-A296-C2A5018DFEFB
Description:
Open /drafts/[Current Draft UUID].html.

/path

Type: Separator Keyboard Shortcut:
Icon:
Colour: none
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 0
Unique ID: 6F0BE49F-3B6F-49AF-ABA7-04BA7F437C1A
Description:

Push Draft to /drafts as HTML

Type: Action
Keyboard Shortcut:
Icon: 383-keyhole
Colour: orange
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 34A59A1C-95A8-42A9-9C23-677E9731EFC8
Description:
Push the current draft to the /drafts directory as an HTML file by the draft’s safe_title.

Draft to /drafts as UUID.html

Type: Action
Keyboard Shortcut:
Icon: binary
Colour: none
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 9C9FCDA8-687C-475A-8213-A8185CEFEE4D
Description:
Push the current draft to the /drafts directory as an HTML file titled by its UUID.

Open pushed /drafts file by UUID.

Type: Action
Keyboard Shortcut:
Icon: idea
Colour: green
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: BADE45C1-AEC4-46A6-B4BE-7B88B2357C04
Description:
Open /drafts/[Current Draft UUID].html.

Draft to /drafts/{title} as index.html

Type: Action
Keyboard Shortcut:
Icon: indent
Colour: violet
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 5555699A-B3A6-432D-9A20-ECA78F6A5D88
Description:
Push the current draft to drafts/NeoCities as index.html

Open /drafts/{title}

Type: Action
Keyboard Shortcut:
Icon: idea
Colour: green
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 1E5CB9D6-B8FE-4934-8AEC-E795A651C45A
Description:
Open /drafts/{title}

Draft to Specified Path as index.html

Type: Action
Keyboard Shortcut:
Icon: signs-alt
Colour: orange
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 2
Unique ID: A7D5BE00-36D3-4E08-9058-7923571189AA
Description:
Push Draft to specified directory as index.html.

/[input]/index.html

Misc

Type: Separator Keyboard Shortcut:
Icon:
Colour: none
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 0
Unique ID: 06296787-B9EE-4759-9B9C-5F994CAA894A
Description:

Push clipboard .txt to clipboard/timestamp

Type: Action
Keyboard Shortcut:
Icon: clipboard-content
Colour: blue
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 98AF9E4B-1D48-4F95-8D2D-C879FE16BE40
Description:
Push contents of the clipboard to the /clipboard directory as a .txt file.

Open NeoCities Workspace

Type: Action
Keyboard Shortcut: ⇧⌃N
Icon: cat-face
Colour: gray
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 1
Unique ID: 4B8E95CE-F6A3-4F53-88CB-B01C8398A990
Description:
Open workspace entitled “NeoCities.”

NeoCities list / (macOS-Only)

Type: Action
Keyboard Shortcut:
Icon: directions-merge
Colour: gray
Confirm to Run: false
Notifications: All
Log Level: All
Number of Steps: 2
Unique ID: 898038F4-E5E4-4BDA-B15A-D2ED2D388D82
Description:
Calls a shortcut entitled “NeoCitiesRoot” with a Run Shell Script action containing the following:

neocities list /

Can only be run on macOS and requires the NeoCities CLI.

#software #configuration #automation

]]>
https://bilge.world/using-drafts-with-neocities Sun, 13 Feb 2022 15:38:41 +0000
Zalgo Text in a Keyboard Shortcut https://bilge.world/drafts-zalgo-action?pk_campaign=rss-feed <![CDATA[ZalgoTextinaKeyboardShortcut !--more-- Earlier this afternoon, I put out an ask on Twitter regarding how to use JavaScript to create a native Drafts Action for Zalgo Text. Delightfully, tagging @draftsapp in that post paid off, for just a bit ago, Greg - Drafts’ sole creator and guardian - actually replied with a link to an action he’d just posted called “Zalgos.” https://twitter.com/draftsapp/status/1492645727729766400 Obviously, I installed it immediately, and configured it to ^ + ⇧ + Z. Now, within Drafts, I can select and Z̻̯͔̘̲ͥ́̕̕͝a̵̜̤̫͓̘̘̾́͊͛͜ĺ̸̶̦̣̉ͧg̶̶̟̩͒͗̊̆ͦ͜͡o̲̎̿̇́̂ ą̨̙̳̟̕n̆̄҉̸̥̳̯̱̲̂ͧ̊͟͞y̺̋ͮ͟ t̻̣̾ͣ̔̏è̘ͮ̋x͎̣ͫt̢̺̙̋͒. video controls source src="https://user-images.githubusercontent.com/43663476/153733588-cae8e5ec-51fe-4f46-a14a-a3552bb0337c.MOV" /video As I said on Twitter, this is almost certainly the second most thoughtful gift I’ve ever recieved, though I had to share it with you. I’ve also created a shortlink: bit.ly/ddzalgo. #software #configuration]]> ZalgoTextinaKeyboardShortcut

Earlier this afternoon, I put out an ask on Twitter regarding how to use JavaScript to create a native Drafts Action for Zalgo Text. Delightfully, tagging @draftsapp in that post paid off, for just a bit ago, Greg – Drafts’ sole creator and guardian – actually replied with a link to an action he’d just posted called “Zalgos.”

Obviously, I installed it immediately, and configured it to ^ + ⇧ + Z. Now, within Drafts, I can select and Z̻̯͔̘̲ͥ́̕̕͝a̵̜̤̫͓̘̘̾́͊͛͜ĺ̸̶̦̣̉ͧg̶̶̟̩͒͗̊̆ͦ͜͡o̲̎̿̇́̂ ą̨̙̳̟̕n̆̄҉̸̥̳̯̱̲̂ͧ̊͟͞y̺̋ͮ͟ t̻̣̾ͣ̔̏è̘ͮ̋x͎̣ͫt̢̺̙̋͒.

As I said on Twitter, this is almost certainly the second most thoughtful gift I’ve ever recieved, though I had to share it with you. I’ve also created a shortlink: bit.ly/ddzalgo.

#software #configuration

]]>
https://bilge.world/drafts-zalgo-action Sun, 13 Feb 2022 00:49:26 +0000