Welcome to the lab.

A new Markdown Service Tool for easy MultiMarkdown tables

[Tweet : ADN : nvALT]

So first, the good news, I have my meds sorted out and it seems like I’m back on track. I’m sure I’ll talk more about it on Overtired, and will post more of the story here after I’m sure things have leveled out. I’m primarily directing my energy toward BitWriter (the nvALT update), but wanted a morning project, thus…

This tool converts CSV style input to MultiMarkdown tables. It’s based on Christopher Brandow’s Swift utility that I linked a little bit back. I took the idea and rebuilt it in Ruby, added handling for a few things I considered missing, and turned it into a Markdown Service Tool.

The Service lets you use simple CSV syntax for creating MultiMarkdown tables. Comma-separated cells, and alignment row is built based on Christopher’s syntax using “<”, “>”, and “=” (left, right, center).

This version allows the use of double quotes to include a comma within a cell, handles “cleaning” (justifying spaces based on alignment), and adds a few extra syntax characters.

Here’s a rundown:

Use CSV formatting, with cells separated by commas and newlines defining end of row.

Data 1, Data 2, Data 3

Header row

The first row is required and defines column headers.

Header 1, Header 2, Header 3
Data 1, Data 2, Data 3

Alignment row

A second row containing only <, >, =, and commas (whitespace ignored) can be added to force column aligment. If this row isn’t found, one will be created for you with a default “center” value for every column.

Header 1, Header 2, Header 3
<,<,=
Data 1, Data 2, Data 3

An alignment row must contain the same number of cells as the longest row. Because this tool can handle figuring out how to pad rows of different lengths, it’s forgiving in every area except this row.

Table caption

A line beginning with == at the beginning or the end of the CSV input will create a table caption.

== The title of my table
header 1, header 2
a,b

Column spanning

To make a cell span multiple columns, use a single > in the next cell(s)

For example:

1,2,3,4,5
one,>,two,>,>

creates:

 |   1   |   2   |   3   |   4   |   5   |
 | :---: | :---: | :---: | :---: | :---: |
 |  one         ||  two                |||

Which MultiMarkdown will interpret as “one” being two columns wide, “two” being three columns.

Notes

  • Two consecutive commas in a row creates a blank cell
  • To use a comma within cell data, surround the contents in double quotes

      one, "and, two", three
    
  • Whitespace surrounding cell data is ignored
  • Empty (blank) rows are stripped
    • To force an empty row, use a single comma on a line
    • To force a single-cell (full span) empty row, use » alone on the line

Example input

==Title
one, "two, and a half", three and a quarter
>, =, =, =, <
four, five,,, six
>>
hell, >, hath no, fury

Outputs:

|  one  | two, and a half | three and a quarter |       |       |
| ----: | :-------------: | :-----------------: | :---: | :---- |
|  four |      five       |                     |       | six   |
|||||
|  hell                  ||       hath no       | fury  |       |
[Title]

Which looks like:

Download the service as part of the Markdown Service Tools package. I’ve also thrown the script up as a Gist, as messy as it may be.

Markdown Service Tools v2.13

The Markdown Service Tools are a collection of OS X Services designed to make creating Markdown-formatted text that much easier. Services work in any OS X Cocoa based application.

Updated Wed Jul 27 2016.

More info…

MicFlip 2.0, the best USB cable I’ve ever had

[Tweet : ADN : nvALT]

A while back, WinnerGear sent me a reversible micro USB cable called the Micflip. It was the result of a Kickstarter project, and it was great. The micro USB end of the cable could be inserted into a port in either direction, a la Lightning adapters. I talked about it with Ed Zitron on Systematic 162, and we both agreed this should always have existed.

I just got the 2.0 version in the mail yesterday. In addition to gold plating, rubber protection on the plugs, a nylon braided cable, and the reversible Micro USB plug, the USB Type-A (the port on your computer or hub) at the other end is now reversible as well. This is amazing. This should absolutely always have existed.

The cable works for data and charging, and I can vouch that you can plug it into a hub with your eyes closed, first try. There’s not much else to say. This is awesome. You can pick one up for about $20. If you own any peripherals with micro USB adapters (and who doesn’t?), this is a no-brainer.

The intriguing legal ramifications of Pokémon GO

[Tweet : ADN : nvALT]

I have a guest post for you today. It’s by Gary Nissenbaum, Esq. (not pictured at right), the managing attorney for the Nissenbaum Law Group. His firm focuses on intellectual property cases and works with developers and cases pertaining to apps regularly.


Protecting the Developer’s Legal Interests: A Different Aspect of Augmented Reality Apps

By Gary Nissenbaum, Esq.

Recently, there has been a virtual tsunami of articles about the so-called hidden dangers of using the Pokémon GO app. The vast majority of them concern potential violations of the privacy rights of both consumers and landmark-owners. The media’s Chicken Little-like take on this is that augmented reality apps are opening the door to a dystopian future.

However, what has not been widely discussed is the impact of all this on the developers of augmented reality apps. That deserves some space as well.

Mac ‘Pick a Bundle’ 2016

[Tweet : ADN : nvALT]

The Mac ‘Pick a Bundle’ 2016 from Creatable has some real gems this year. Choose any 10 of the options to build your own bundle for $39. With options like Vox + Loop, Yummy FTP Pro, BlueSense, AppDelete, WaterMarker 2, TaskPaper, MailButler, Mind Vector, and many more, you can grab the software you don’t already have at a great price.

Check it out and build a useful bundle!

Back from Macstock

[Tweet : ADN : nvALT]

David Chartier, Me, and Mike Rose at Macstock 2016

I’m headed home from Macstock 2016 on an Amtrak train as I write this. It’s been a great weekend. I got ill on the way to Chicago, and remained under the weather for the duration of the conference, but hey, I feel good on the train ride home, which makes sense based on how little I enjoy traveling.

Macstock was an opportunity to meet up with many of the people and personalities I always enjoyed going to Macworld for. It’s not huge (yet), but it’s big enough to be a lot of fun, the speakers were great and the attendees were wonderful. I plan to go back next year (might even pitch a talk of my own), and hope to see it grow rapidly. Thanks to Mike, Barry, all the speakers, and all the people who headed out to support making a new big meetup for the Mac community.

By the time I post this, I’ll probably be 38. I only know this because my Mac popped up a notification from Facebook’s Birthday calendar this morning. It’s been a whirlwind few days. Systematic is on a brief hiatus as I’m traveling a lot more over the next few weeks, but Christina and I are trying to keep Overtired regular!

Web Excursions for July 13, 2016

[Tweet : ADN : nvALT]

This week’s web excursions brought to you in partnership with Udemy. Start learning on Udemy today!

A Quick Swift Script Yak Shave
A Swift script/OS X Service by Christopher Brandow for quickly creating MultiMarkdown tables with CSV-like shorthand, avoiding all the pipes, colons, and dashes that are painful to type.
How well do you know CSS display?
A complete overview of the display property in CSS. Worthwhile reading even if you’ve been designing web pages for years.
engageinteractive/front-end-baseplate - _mixins.scss
The mixins from Engage Interactive’s front-end baseplate are huge timesavers. For some highlights, see 10 Sass (SCSS) mixins you should be using in your projects.
iOS Stash
A Visual directory of iOS app development tools.
keith/reminders-cli
A simple Swift-based CLI for interacting with OS X reminders. Available from Homebrew or build it yourself.

Udemy Generic 728x90

Web Excursions for July 05, 2016

[Tweet : ADN : nvALT]

This week’s web excursions brought to you in partnership with Udemy. Learn Anything.

Brave
A new web browser project focusing on privacy and safety. It’s open source on GitHub as well, with versions for iOS, Mac, Windows, Android, and more.
Launch Center Pro
I’ve used Launch Center Pro on and off, but the addition of shortcuts you can add to a force touch from the homescreen and a customizable Today Widget pallete make it extremely handy.
anime.js
A flexible, lightweight JavaScript animation library using CSS, Individual Transforms, SVG, DOM attributes and JS Objects.
Type Anything
A free typography tool for creating and trying out font combinations for web projects. I’m a sucker for anything that makes typography easier…
Free Landing UI Kit
A free UI kit for creating landing pages in Sketch or Photoshop.

Udemy Banner