June 9, 2021
VSCode as a Markdown Editor
Product: Visual Studio Code - Code Editing. Redefined
There is nothing right about this adventure. A Microsoft product? An Electron product?
I have lost my mind.
I blame Gabe Weatherhead. He talked about how he is enjoying VSCode and I got curious.
I am not doing any coding. That is not my focus. I am writing. Taking notes and doodling with words. That is what I use a text editor for.
How does VSCode fare?
Short Version: Surprisingly well.
Now for the much longer version.
The best extension for Markdown is Markdown All in One. It makes Alfred, Keyboard Maestro, and aText - Text template, shortcut, expansion for Mac and Windows text expansions not work.
In Alfred, you can click the Features>Snippets>Auto Expansion button, go to the Tweaking pane and make the Simulated key event speed a notch lower than Fastest. That works. However, that makes Obsidian lose the ability to handle snippets from Alfred. That was a solution I did not care for. I like working in Obsidian.
The other solution I found was going to the Keyboard Shortcuts preference in VSCode and turning off the
markdown.extension.onBackspaceKey. It has a key assigned to it. Delete it. I don’t know what that keyboard command was supposed to do, but it fixed the issue. The expansions work and the Alfred expansions work on the Fastest setting.
Experience of Working in VSCode
In VSCode, I am writing Markdown, text files, and the occasional JSON and CSS-based theme files. The experience of using VSCode as a code editor might be significantly different from mine.
As a Markdown-focused text editor, it does a good job.
Easy Entry of Markdown Syntax
VSCode has a pulldown menu that gives you the common Markdown syntax when you press ⌃+[Spacebar]. You choose the option you are looking for and the cursor is put in the middle of the syntax and you continue writing.
Markdown Shortcuts gives you a list of commands in the command palette which makes the entry of Markdown syntax easy.
Extensions I Found Useful
One of the strengths of VSCode is the extensive extensions library available for the product. Developers across the world have made useful extensions and you can add them to the program. Choose the ones you think are the most useful to you and get writing.
These are the extensions that I have found useful:
- Markdown All in One
- Markdown Footnotes
- Markdown Shortcuts
- Markdown Todo
- Bracket Pair Colorizer 2
- Dictionary Completion
- Numbered Bookmarks - Visual Studio Marketplace
- Numbered Bookmarks
- Typewriter Scroll Mode
- Word Count
Writing in VSCode
VSCode is nimble for an Electron application. I found it to be quick and responsive to my needs. Using it on an old iMac (mid-2011 with 16 megs of memory), it has no performance issues. I can keep a bunch of files open. I can move between them and the program chugs along.
I have opened large files (>8 megs) in it. It isn’t as fast as BBEdit 13, or Sublime Text, but it is fast and stable enough for work with larger files.
One of the things I like about VSCode is the smooth scrolling cursor. You push the cursor along and it helps focus on words appearing on the screen. You turn it on through the settings of VSCode.
A setting that I find useful is the location of the sidebar. On the right. Keeps your editing window from moving around when you hide/display the sidebar (⌘K ⌥B).
Sidebar to the right
The abundance of extensions means that the program supports almost everything. Two extensions which I was glad to find were:
- CriticMarkup for Visual Studio Code
- Better Fountain
Customization and Settings
VSCode is customizable. You can spend a lot of time doing that, but once you are done, you can have an editor that you love writing in.
The settings are presented in two ways. The tab pane preferences with a good search function:
and a JSON file representation:
Pick your favorite and customize the editor to behave as you want it to.
I added the iA Writer cursor color to VSCode:
You can, through GitHub, sync your settings to be used in all your machines. It is built into the program and that makes it easy to have the same customized environment available on all your computers.
Oh, before I forget. There is a great Solarized theme available. Find it at Better Solarized.
VSCode performs surprisingly well for an Electron application. The Extensions Marketplace makes the editor shine. It is fast, stable, and a pleasure to write in.
The criticism is generic to Electron apps. Non macOS compliance. No support for Services. No support for the system spell checker and text entry shortcuts built into the macOS. No support for the ability to type two spaces to get a period, or the ability to capitalize the first letter of a new sentence. This is what I call “lazy type.” The absence of that is annoying.
Sublime Text is the closest competitor to VSCode. It is a commercial application. It is “more” macOS compliant. It uses the Services menu, and doesn’t let you “lazy type.” The Markdown plugin for Sublime Text, MarkdownEditing is better. The GitHub Markdown Snippets makes it easy to work in Markdown. I also have the advantage of being comfortable in Sublime Text, there is no good reason for me to switch to VSCode.
If I do switch to an Electron app, it will be Obsidian. It is focused on Markdown and has a feature set geared to note-taking.
If you are new to text editors. VSCode is a good choice. Distinguished by being free and supported by a vibrant extensions ecosystem, it is the dominant text editor in almost all platforms at this point.
If you can live with Electron, VSCode is a good solution for your Markdown-based text editing needs.
macosxguru at the gmail thingie.
June 3, 2021
Product: Hidden Bar
Github: dwarvesf/hidden: An ultra-light MacOS utility that helps hide menu bar icons
Hidden Bar is not needed on the iMac. But on a laptop, it is essential.
This is the menu bar on the MacBook Air.
Menu bar sans Hidden Bar
As you can see, there are way too many icons. They are a distraction. They have little notifications which pop up, they change depending on what the program is doing in the background and I don’t care for any of it. I would like to see them when I need to.
Hidden Bar lets me do that.
Menu bar with Hidden Bar
Everything hidden except the ones I want to see. LittleSnitch activity, Wifi status and battery state. The rest of the stuff? Hidden.
This is the menu bar unhidden.
Menu bar unhidden
When I need to, I can expand the menu bar or contract it when I don’t need it. Makes for a better environment.
Hidden Bar has well designed preferences.
Hidden bar preferences
Dozer Is Another Alternative
Mortennn/Dozer: Hide menu bar icons on macOS is another free and open source application which does the same thing.
Bartender is Another Choice
Bartender is a commercial application which does the same thing with a few more features. It costs $15 to buy.
I chose Hidden Bar because this is not a feature which I want to spend $15 on. Your decision might be different. They are all good solutions for a clean menubar without distractions.
I recommend Hidden Bar enthusiastically.
macosxguru at the gmail thingie.
May 23, 2021
Product: Menuwhere · Many Tricks
Once in a while, you run into an app which does one thing and does it well. Menuwhere is an example of such an app. Menuwhere gives you a dropdown menu with the frontmost app’s menus at the current mouse location. Like this,
The Menuwhere web site does a job of being amusing and giving you an extensive rundown on what the product does. I am not going to repeat it here. Go read it. It doesn’t do much, so it is going to be a quick read.
I like Menuwhere because it lets me keep my hands on the keyboard and not have to mouse my way to the menubar. It has become an essential part of the workflow. Specially for apps where I do not know all the keyboard commands or for those menu items which do not have a keyboard command assigned to them.
Menuwhere is recommended heartily.
macosxguru at the gmail thingie.
May 9, 2021
Warning Before Changing a File Extension in the Finder
I am pleasantly surprised when after all these years of using macOS I discover something I didn’t know.
A few iterations ago, macOS added a Rename… item in the Finder contextual menu. You could select a file/files in the Finder, ⌃Click and get a drop-down menu which included the option of Renaming the files.
The only problem was that the Finder would seek confirmation for each item you wished to rename. The same dialog again and again. It was unusable if you wanted to rename multiple files. I had taken to using a product called A Better Finder Rename when I had to rename files.
I came across Disable confirmation dialog when changing File Extension in macOS Finder - Ask Different which solved the problem of the confirmation dialog.
This is the process:
You choose the Rename… option from the contextual menu after selecting a bunch of files, you get this dialog box:
Rename to what?
When you fill in your requirements and hit Enter. You get the following dialog box.
Are you sure?
In Big Sur, Apple has added the Apply to All option, which was not present in High Sierra. You can click this and the OS won’t bug you anymore.
But you can get rid of this annoyance completely by going to Finder preferences. In the Finder, type ⌘,. Choose the Advanced tab, and deselect this:
Thank you. This is so useful.
I still find A Better Finder Rename to be a valuable tool for file renaming. Unlike the Finder, it lets you sequence a series of steps to rename your files. It is a useful utility and one I rely on all the time.
macosxguru at the gmail thingie.
April 8, 2021
Price: Pricing - Obsidian Free for personal use.
Obsidian is described by the developers as:
Obsidian is a powerful knowledge base that works on top of a local folder of plain text Markdown files.
I need to restart.
Obsidian is an Electron program. I hate those. They feel like a compromise. In fact, by design, they are the lowest common denominator for any platform that you can run them on.
Obsidian runs on Windows, Linux, and macOS. It doesn’t support any of the features which make Windows, Linux, or macOS special or unique. I don’t know anything about Windows or Linux. I know the macOS and I am going to point out things that Obsidian doesn’t support on macOS:
- Services menu.
- Text replacements and settings in the Keyboard preference pane of macOS. No two spaces turn into a period. No capitalizing the first letter of a sentence.
- Doesn’t use the system dictionaries.
These are features unique to macOS and they are not supported at all. I hate the experience. Why am I writing about Obsidian?
Obsidian brings a new take on the task of note-taking to macOS. It is built around the concept of linking notes together, explicitly making obvious the links between your notes. The core feature of Obsidian is the ability to link your notes and make visible the interconnected linked knowledge base that you have built with your notes.
Along with that focus on creating links, Obsidian has the following features which are relevant to me.
Pure Text Files
Obsidian files are Markdown-formatted plain text files. They are local, I keep them in the Dropbox folder. Plain text files give me the ability to switch from the program if I want. I am not locked in. The files are accessible and editable in any text editor.
If I decide to adopt a different text editor, I can move on without any pain.
The Ability to Access Multiple Folders
Obsidian is not restricted to a single folder. The program conceptualizes folders as vaults and a vault can have multiple folders in it. You can switch to different vaults, depending on your needs. In addition, you can assign different themes and features to individual vaults.
Full Support of Markdown and Other Goodies
Along with its wiki-style linking, Obsidian supports CommonMark and GitHub Flavored Markdown.
If you haven’t been exposed to Mermaid, it might be worth your while to take a deep dive into it.
Obsidian has a slides plugin that lets you create presentations in Obsidian. Another feature that might be something you want to take a deep dive into.
Obsidian is heaven for anyone interested in tweaking their editor. You have complete control over the look of the program through themes. There are a bunch of those available in the program and you can edit them for your own needs.
Keyboard commands are customizable. You can assign/change any of the keyboard commands which ship with the program. This enables macOS standard keyboard commands. You can define them yourself.
Extendable Through Plugins
Obsidian has a published API (in beta) for extending the program through third-party plugins. Early adopter developers are adding a slew of third-party plugins to the program and they have enhanced my use of the program.
The plugin architecture makes it possible for users to add features to the editor and it lets non-developers benefit from the creativity and ideas of the user base.
I am going to highlight three plugins that I find useful:
- Typewriter Scroll Obsidian Plugin: Has added typewriter scrolling and focus mode to the program. Two features I was missing from iA Writer now available in Obsidian.
- Paste URLs into selected text “notion style”: Highlight text, paste an URL, and that turns it into a Markdown-formatted link. Convenient and easy.
- advanced-tables-obsidian: Improved table navigation, formatting, and manipulation in Obsidian.md: Makes the process of creating, editing, and presenting tables easier and prettier.
User-designed plugins let users customize and extend the product in ways that a developer alone can never match. It is what makes Atom, Visual Studio Code, Sublime Text, Vim, and GNU Emacs special. I am excited to see this feature brought to a note-taking application.
This subject is new to me.
Obsidian is focused on the concept of creating and maintaining a second brain. The design of the product, the features it introduces, and the execution are geared towards the concept of a second brain. In other words, knowledge management.
There are a bunch of folks who are trying to think through this and come up with solutions designed to make you and your note-taking system efficient. Two examples:
- The PARA Method: A Universal System for Organizing Digital Information - Forte Labs
- Linking Your Thinking Workshop
I have no idea of the relative efficacy of these and other alternatives. I am in the process of exploring the ideas and trying to make sense of them.
This is what I do know:
- I read the book How to Take Smart Notes by Ahrens, Sönke.
- I explored the Zettelkasten Method site and have used the product The Archive (macOS) • Zettelkasten Method. I wrote about it, The Archive Adds Zettelkästen to the Note-Taking Arsenal - Bicycle For Your Mind.
I used to view my notes as a collection of information. A subset of my notes is geared towards that goal. I install a new Alfred workflow, I need to remember what the triggers were to launch the workflow, I have that information in a note. It is not going to be a part of a thinking exercise in the future. It is an information unit which is going to be useful at a future date.
Now I also create other kinds of notes. Notes that are geared towards the end goal of clarifying my thinking about a topic. I view them as inputs to aid my ability to think. I create these notes with the notion that it would be pleasurable to read them again. That means I care about what I write. I try to see how it fits into the constellation of thoughts I have had around that topic. I link to other notes which deal with the same topic or express similar notions. It is a deliberate activity rather than the dump of information which I used to consider the main purpose of my note-taking. It is a new way for me to think about my note-taking.
Niklas Luhmann was an extremely productive social scientist and he used a note-taking system (Zettelkästen) to help him think things through. Adopting or adapting his system, for your thinking is not going to make you as productive as him.
Going into the weeds on a Zettelkästen system like How Long a Zettel is Too Long? is not going to make you as productive as Luhmann either. I am not sure that it is going to make you productive at all.
Concentrate on the thinking. Don’t get distracted by the tools or processes which aid your thinking. Focus on the act of thinking, pay attention to the process of moving from point A to point B, explore the assumptions behind that move. Understand and challenge those assumptions. Refine your thinking. Rehash your thinking. Reform your thinking. Reject your thinking. Think. Write it down. Read it. Write some more.
This field of Knowledge Management has given birth to a cottage industry of “experts.” How does one define “good” thinking as opposed to “bad” thinking? What are the measurable units? How do you know that one process being sold is better than the other?
Obsidian reminds me of Tinderbox: The Tool For Notes. There are folks, folks who are smarter than me, who swear by the effect Tinderbox has had on their thinking. Didn’t do anything for me. I tried. I got the University to buy me a copy. I bought the Tinderbox Way. Read it several times and couldn’t figure out how best to utilize the program to help me. After several attempts, I gave up. I couldn’t understand Tinderbox.
I don’t understand the utility of this either. What does it tell me? It is pretty. I need to explore this idea because I don’t get it.
- Be skeptical. Don’t copy anyone’s system.
- Think and write. Write and think. Repeat ad nauseam.
- Surround yourself with people who are brighter than you.
- Argue with them.
- Be honest with yourself. Question your assumptions. Question your logical progression. Recognize that you are fallible and probably close to being an idiot. You don’t have all the answers. Try to improve.
Back to Using Obsidian
I use Obsidian like a text editor. I like the linking and back-linking but that is not the focus of my use of Obsidian. My interest is in using the product as the application for all of my writing. It is a replacement for Sublime Text, BBEdit, iA Writer, or nvUltra.
It fulfills that role for me. These are the things that make it suitable for the task of my primary text editor:
- Great Markdown support.
- Typewriter Scroll Obsidian Plugin gives me typewriter scrolling.
- Folding of headers.
- Ability to handle large files.
- Customizable keyboard commands.
- Easy switching between oft-used files through obsidian-shortcuts-for-starred-files
- Fantastic theme and its settings. Minimal theme for Obsidian and its Settings plugin to control colors and fonts in Minimal Theme
Obsidian can be “The One Text Editor” for all my needs. It is not for the following reasons:
- Obsidian is a memory hog. It isn’t the fault of Obsidian. All Electron apps are.
- The non-native nature of Obsidian irks me. I miss the Services menu. Typora, an Electron app that supports Services. It is doable, wish Obsidian would support that. Would make life easier for those of us reliant on Services.
Obsidian is a good solution, but both Sublime Text and BBEdit are better solutions for my needs.
If you are an academic, try Obsidian. As an aside, if you are an academic, please concentrate on your teaching. Don’t ignore the teaching to focus on your research. I know it is not your fault, the institutional incentives are geared towards research, but the focus of a University should be on teaching and not on producing research nobody but other academics are going to read. This is a phenomenon that plagues the social sciences and it is disgusting.
Obsidian is a great app for the dual activities of thinking/writing if you are willing to put up with the non-native nature of Electron apps. It brings innovation to the field of note-taking and the plug-in infrastructure is exciting.
macosxguru at the gmail thingie.
Resources and Other Takes on Obsidian:
An interesting perspective on Obsidian: BSAG » Obsidian
A list of Obsidian resources: Obsidian Resources - Dynalist
An opinionated take on notes and note-taking: Evergreen notes - Andy Matuschak Notes - Obsidian Publish
From the guy who wrote the book on “Smart Notes”: how to take smart notes - YouTube
A different perspective: Learn to play the fool - Austin Kleon
The Second Brain. Building a Second Brain: An Overview - Forte Labs
Detailed User Experience with Obsidian: 100 Days in Obsidian, Pt. 1 – Interdependent Thoughts
Another Perspective on Obsidian: Loving right now: Obsidian.md