2019

How to use a non-default table column separator in Asciidoc

As a brief note, if you ever need to use a different column separator when creating a table in Asciidoc, you can do so by specific the separator field in the table preamble.

For example, in the following Asciidoc table I can’t use the default pipe character | to separate the table columns, because I need to use that character in the content inside the table, so I set the separator character to be : instead:

<<methods_to_combine_cmds>> lists the ...

.Methods to combine external commands
[[methods_to_combine_cmds]]
[cols=",",options="header",separator=:,]
|===============================
:Methods :Description
:`cmd1 #| cmd2`  :The output of the first ...
:`cmd1 ### cmd2` :`cmd1` and `cmd2` will be ...
:`cmd1 #> cmd2`  :Normally used to write to ...
:`cmd1 #&& cmd2` :Run `cmd2` if `cmd1` runs ...
:`cmd1 #|| cmd2` :Run `cmd2` if `cmd1` ...
:`cmd1 #&& cmd2 #|| cmd3` :Run `cmd2` is ...
|===============================

I shortened that content so you don’t have to read through all the non-essential text, but the image shows the actual resulting Asciidoc table.

For more information, this asciidoctor.org URL was the most helpful resource for me. This other page shows how you can specify format="csv" to create a table from a CSV-style syntax.

In summary, if you needed to see how to create an Asciidoc table with a non-default table column separator, I hope this example is helpful.

The PDF of Functional Programming, Simplified is currently on sale for $15 alvin December 8, 2019 - 7:23pm

I normally don’t like to have sales on my books, but the short story is that the PDF version of Functional Programming, Simplified is currently on sale for $15.

Scala: How to search a directory tree with SimpleFileVisitor and Files.walkFileTree alvin December 7, 2019 - 2:01pm

As a brief note to self, if you ever want to write some code using Scala that recursively descends through a directory tree, here’s a solution that uses the Java SimpleFileVisitor and Files.walkFileTree method. First, here’s a skeleton class for the SimpleFileVisitor part of the solution:

Song of the Day: Never Surrender, by Corey Hart

So if you’re lost and on your own
You can never surrender
And if your path won’t lead you home
You can never surrender
And when the night is cold and dark
You can see, you can see light
Cause no one can take away your right
To fight and to never surrender

(Lyrics from the song Never Surrender, by Corey Hart. It was popular during my college bartending days, which was also a peak time for MTV and music videos.)

Never Surrender, by Corey Hart

Notes on using Dotty (Scala 3), SBT, and VS Code together alvin December 3, 2019 - 5:28pm

As a note to self, here are some ways to work with Dotty (Scala 3), SBT, and VS Code (Visual Studio Code).

Create a Dotty project:

sbt new lampepfl/dotty.g8

Launch VS Code inside that project directory, with Dotty support:

sbt launchIDE

Start SBT as usual:

sbt

Those notes are just a reminder for myself, but hopefully they’ll also help others work with Dotty, SBT, and VS Code.

Facebook deleted the “Lists (of friends)” link

When I use Facebook, I like to use lists to group people that I know, friends, relatives, people from different states, etc. But on Thanksgiving, or maybe the day before, Facebook deleted the “Lists” link from their web app. It used to be with this group of links. I don’t use their app on my phone, so it’s pretty crazy that they removed this.

So, dear friends, if I don’t see and like your stuff, it’s not my fault. I’m sure not going to type in the name of each friend to see if they posted anything.

A holiday love story

When I was in the hospital in Boulder, Colorado with the heart problem a few weeks ago, I asked a nurse about my cardiologist. I knew he had retired, but didn’t know why. “He’s 68 years old,” she said, “and he wants to spend more time with his girlfriend, who lives in Chicago.”

#HolidayLoveStory