June 22, 2020

Paletro IconPaletro Icon

Paletro Brings the Command Palette Everywhere

Product: Paletro — Command Palette in any applications
Price: $6.99

The first time I was exposed to the Command Palette was in Sublime Text. All the commands are available to you when you press the keyboard command, ⌘⇧P in Sublime Text. You get a drop-down menu with fuzzy search, you can start typing and the list changes as the search is better defined. It is a lovely touch in a text editor. All the commands are available instantly. I fell in love with the feature and spent the next four years with Sublime Text as my main text editor.

The feature has been copied by Atom, Visual Studio Code, and even a file manager called fman.

As my knowledge and exposure increased, I discovered that this was an interesting implementation of an old idea. VIM and Emacs both have implementations of the command palette available. They are called with different keyboard commands, but they both implement the same idea. VIM does it with the : key in normal mode, and Emacs with Meta-X.

BBEdit has a similar feature with the ⇧⌘U keyboard command to give you the Command Palette.

Enter Paletro

Now we have Paletro with a Command Palette implementation which is system-wide. You can now press ⇧⌘P in any application and get the same command palette with all the commands of the frontmost application accessible to you in a fuzzy search equipped drop-down menu.

For instance, in Drafts, this is the initial window Paletro gives me.

Drafts with PaletroDrafts with Paletro

When I start typing, the contents in the window changes.

Find in DraftsFind in Drafts

Paletro is going to be a great addition to the workflow. The commands show up with the keyboard command next to it. You can learn the more esoteric keyboard commands while using the application.

Customizing Paletro

Customizing PaletroCustomizing Paletro

You can choose the keyboard command which activates Paletro. The more important feature is that you can enable and disable Paletro in applications of your choice. You can disable it in applications which have a native Command Palette.

The application ships with a collection of nice themes and the ability to design your themes is coming.

A Comment about Documentation

Paletro provides comprehensive documentation. It is not a complicated application but the documentation is fantastic. Good documentation is much appreciated.

Conclusions About Paletro

Paletro is a nice addition to the workflow. If you are interested in staying concentrated on the keyboard and not monkeying around with the mouse/trackpad and menu items, Paletro will help you.

I love it. It is a utility which I am elated to use.

Paletro is recommended heartily.

Note: I was provided a review license for Paletro by the developer when I asked for one.

macosxguru at the gmail thingie.

keyboard macOS
June 16, 2020

ClimbingClimbing

Part Two of My Battles With Emacs

TL;DR: I am confused. The journey continues.

At least one person liked my Part One. That gives me enough reason to try to document Part Two.

Travels Down the Customization Path

  1. Tried to set up a set of remember templates. Didn’t work.
  2. Set up Cua Mode to make the copy/paste/cut commands easier. It worked. Got exposed to Ergoemacs-mode. And that seemed more compatible with what I was trying to do. Switched cua-mode off and moved the keybindings to Ergoemacs. Learning curve reboot.
  3. Gave up on Ergoemacs. It brings new commands to learn and Doom was there. Didn’t want to get even more confused than I am.
  4. I got the line wrapping to work. It takes all my lines and soft-wraps to 90 characters. Makes the whole process of writing text much easier and comfortable.
    (setq-default word-wrap t)
    (setq fill-column 90)
    (setq visual-fill-column-width 90)
    (global-visual-fill-column-mode +1)
    (+global-word-wrap-mode +1)
  5. I turned on Deft, it makes the process of writing, managing, and searching for files in my notes directory much better. Like it.

I understand that this is what people do. They take the editor and customize it to suit them perfectly. I like the idea but I don’t have enough knowledge to try that. This is where the frustration sets in. This struggle is what is going to lead to knowledge but I am going to give it a break. I am going to use what I have for a while and then focus on what I need to change and what I need to incorporate. Let me get familiar with the basics, and then I will venture into the unknown of trying to tweak.

I can spend the rest of my life tweaking Emacs. Or I can start working in it and see where it takes me. I am going to stop tweaking. Start using.

I can have a bunch of buffers open in Emacs. There are files I work on every day which need to be opened by Emacs. I can find a list of buffers which are available to me with a quick keyboard command and switch between them. That seemed like a good thing to do. I set up an Alfred workflow. I can press one keyboard command and Emacs will open all the buffers I am interested in. If I need other files, I can open them from the directory later. But the major files are accessible when I need them.

Alfred workflow for EmacsAlfred workflow for Emacs

This solved the problem of individually picking files to look at. The core set is always loaded. That seems an improvement.

Comments After Four Weeks of Use

  • I am missing typewriter scrolling.
  • Outlining in Org mode is fantastic.
  • I am growing an appreciation for an editor which lets me do everything through keyboard commands. Using the mouse/trackpad is inefficient.
  • I like and dislike frames. The idea of having a large Emacs window and then different frames in the window which you can switch between, and they can all contain individual files is an interesting one. I am however used to tabs and must admit that I miss those in Emacs. The main problem I have with the window management setup in Emacs is that it is incredibly distracting. I like working, a document at a time, more than switching to a setup with multiple frames. Need to figure out workspaces and see if that solves my problem. As I am typing this, Projects and Workspaces | Doom Emacs | 프로젝트와 워크스페이스 - YouTube got posted. Seorenn - YouTube is fantastic. He did a great job with his SpaceMacs videos, and he has started on the Doom Emacs videos. I am looking forward to more of his instruction.
  • I have figured out how to use relative line numbers. Makes the process of moving around the document and editing things better. Adding the following code to the config.el helped with that:
    (setq display-line-numbers-type 'relative)
  • I was struggling with the simple copy and paste commands. This got solved when I learned of the VIM commands for copy, paste and cut.

Major Realization at This Point

I am not using Emacs.

Let me explain. Doom has turned my Emacs into VIM. Yes, there are things which are Emacs specific: like org-mode and markdown-mode, but I am using VIM for all the important actions. My editing commands, my navigation commands, and a lot else are all VIM. It took me a while to realize this. I was in Emacs. I thought I had to learn Emacs commands. Not true at all. Emacs with Doom runs better if you use VIM commands. This one realization made it a much better experience for me. I started looking at VIM videos, from ThePrimeagen. I am learning how to navigate in Emacs through the videos from this channel. Like I said, learning to live in Emacs with VIM commands.

Sincerely I don’t know whether this is a good idea. I am not sure at all. But it has the added benefit of making me pretty conversant with VIM commands. I can now use VIM if the love affair with org-mode doesn’t work out. I now know what to look for and what keyboard commands to use to get where I want to.

Strategy Moving Forward

I have decided to not add anything more to Emacs. I am going to learn what is available. That means, I will learn how to use deft, dired, search, and keep using the keyboard commands I am learning. I am staggering the number of keyboard commands I am incorporating into my workflow. I am adding them in batches. Don’t want to overwhelm myself. They have to be ingrained into my muscle memory. That will take time.

Pain-Points Document

I started a document listing the pain points I am experiencing with Emacs. I presume that after a while, I will get down to resolving these issues. The contents at this point:

  1. What are workspaces and how does one work with them?
  2. Typewriter Scrolling.
  3. How does one stop the Markdown export from org-mode files from including two spaces after the marker for lists? How does one customize that output?

A Discussion of Intent

I notice that the people who use Emacs, use it for everything. Email? Twitter? RSS feed reader? It is all done in Emacs. I do not want to do that. I am happy using MailMate for my email, Twitterrific 5 for Twitter and Reeder for my RSS feeds. They are optimized for their particular activity and I don’t see the benefit of changing from them.

If you visualize Emacs as an OS, and it is nearly one, you are using elisp bundles/packages within Emacs to perform particular functions, the integration of all these activities within Emacs makes sense. I can see that, but I am not on that road. I am using Emacs as an alternative to my other text editors. In other words, I am trying to replace Sublime Text, or BBEdit with Emacs. I am interested in writing in Markdown and org-mode. I am interested in dealing with my text files and that alone with Emacs. I am interested in reading large files in my text editor and doing it without much of a stress on the memory/processor load on my computer. That is what I am looking for. Not the kitchen sink approach that Emacs users seem to take with Emacs.

Sublime Text and to a lesser extent, BBEdit are good at that. I am unsure about what Emacs is bringing to the table for the task of dealing with my text files. These are the advantages of Emacs over the alternatives:

  1. Org-mode. This is big.
  2. Free. This is significant.
  3. A concentrated focus on the keyboard. Both BBEdit and Sublime Text can be exclusively keyboard driven, but that is not as explicit a goal of these two programs.

I suspect that my relationship with Emacs needs to mature before I am able to make an informed decision on the product. My apprehension with it is a function of my lack of knowledge/comfort with it.

I must admit that ‎Learn Emacs In Ten Years scared the hell out of me. I don’t have ten years. Not sure that I want to spend the next ten years of my life tweaking my config files for Emacs. I need to think this through before I put in a lot more time into this exercise.

Problems With Using Doom

  • Keybindings. There needs to be a list of Doom based keybindings available. The +evil-bindings.el file is not human-readable.
  • Documentation. This is a difficult task. If you assume that the user is someone who is familiar with VIM, the documentation will be different from the assumption that the user is clueless. I am looking for documentation for the clueless and that is not available.

Two VIM Books

These are the two VIM books which I am using to learn VIM.

Modern Vim: Craft Your Development Environment with Vim 8 and Neovim 1st Edition, Kindle Edition

Practical Vim: Edit Text at the Speed of Thought 2nd Edition, Kindle Edition

Resources

This is a great resource for learning Org Mode.

Org Mode - Organize Your Life In Plain Text

I am not alone. Org-roam vs other Roam-alikes

Conclusion

The journey continues. I am working at getting comfortable with Emacs. However, there is no certainty. I am questioning the reasoning behind this journey incessantly, and I am not any closer to the answer than before. At this point, I think it is stubbornness which is keeping me on the journey.

macosxguru at the gmail thingie.

Hat tip to: Photo by Suliman Sallehi from Pexels

emacs
May 26, 2020

Kudos iconKudos icon

Kudos Helps Me Collect Information

Product: Kudos a productivity tool for macOS
Price: App Store $4.99

I collect information all day long. Go to a website, find something that I want to archive, convert the information to Markdown and save a file to a folder in my hard drive.

I have been using fym to do this for me. It used to work most of the time, but lately it seems to choke a lot. I went looking for an alternative. Enter Kudos.

Kudos InterfaceKudos Interface

Kudos lets you select some text on a website, hit a keyboard command, and it captures the selected text into Kudos. It has a section where there is a reference the source of the information. This could be an URL, a reference to the file, and the application you captured the information from. You have the ability to save this captured text as a sound file(.aiff), or a .md .pdf, .rtf or a .txt file.

Kudos does a lot more but I am not interested in everything it does. I am interested in saving the document as a markdown file containing the following information:

  1. Source URL of the document.
  2. All the links referenced in the document as Markdown links.

That is what I need. Kudos provides that. It lets me edit the capture. I can put in some metadata, some notes, and some Markdown formatting, if I desire.

Kudos does support the links in Markdown format but it doesn’t do much else by way of Markdown syntax support. No headings, no tables, no bold or italic. Those are things you have to input yourself if you are so inclined.

Kudos does a better job saving content in the .rtf format. But I am not fond of that format. Love text files, so don’t use .rtf at all.

For my needs, Kudos is perfect.

Wish List

These are the things I would like Kudos to add to it’s arsenal:

  1. Extensive support for Markdown syntax. Headings, bold and italic would be a start. Table support would be excellent.
  2. The documentation is improving. But it could do with more examples of use cases.

The developer is a extremely responsive. You can bug him to make changes and he is eager to make the product better.

Conclusion

If you do research on the web, Kudos is a valuable addition to your arsenal of tools.

I recommend it heartily.

macosxguru at the gmail thingie.

kudos macOS
May 18, 2020

ObstaclesObstacles

Part One of My Battles with Emacs

There was no good reason to do this. Absolutely no damn reason.

I started tinkering with Emacs. I don’t have a good explanation for why I started on this journey. I was bored? I am a glutton for punishment? My pinky wasn’t getting enough exercise?

(Note: the last is an inside Emacs joke. Emacs commands seem to prefer the ⌃ key. Means that your pinky gets used a lot. I know. Not funny.)

I told myself that I was interested in org-mode. That was the ostensible reason behind this adventure. Let me step back a few.

I know a bit of Vim. Very little. I have tried to learn to live in Vim and gotten frustrated and moved away from it. I know even less of Emacs. The main cause of frustration with these editors were the following:

  1. I am comfortable with macOS. I take for granted some niceties that come with the OS. Keyboard commands which are standardized across the various programs in macOS, don’t work or don’t work all that well in these editors.
  2. I like iA Writer. It is distinguished by forcing some default choices on to the consumer and insisting that the user get on with writing and not worry about tweaking the interface. Vim and Emacs are not designed that way. They insist on letting you tweak everything. I mean everything. This ability to tweak coupled with my lack of knowledge means that I am stepping into the rabbit hole of customization all the time. Most of the time, I have no clue what I am doing. Some times my Google-fu leads to the right answer, and I am enthralled. Most of the time, what works for someone else, doesn’t work for me. Cue the frustration.
  3. Things which are simple in other editors. Number of letters in a line. Typewriter scrolling. A mystery to me in Emacs.
  4. These editors are designed for programmers. I am not one. I want to write in org-mode or Markdown. Don’t particularly care for programming conventions. There are solutions which are available on macOS which are geared towards Markdown. Programs which are optimized for Markdown: iA Writer, MultiMarkdown Composer, nvUltra to name a few. They deal with a subset of what text editors are capable of, but they specialize. They are optimized for dealing with this markup format. This lets them concentrate on providing the user with a writing environment and that is what they are good at. Emacs has a fantastic Markdown mode. But it is a completely new learning curve for me. Intuitive commands like ⌘+B for bold are replaced by ⌃C ⌃S b. Couple that with the realization that the environment is completely customizable. That means a lot of tweaking to get things just right. The writing environment? You gotta tweak that yourself.

Why am I doing this?

  1. I am old. I need to find that I can learn something new.
  2. I am intrigued by org-mode.
  3. Looking for an editor that I can live in for the rest of my life without paying a fee for that privilege. Times are hard. I want to reduce my spending.
  4. I came across an Emacs distribution called doom-emacs which intrigued me.

Worst of Both Worlds

doom-emacs lets you use Emacs with Vim keybindings, called evil mode.

The problem? I am not that good with Vim keybindings. I know some basic commands but am not comfortable with them. They are not second nature to me. So, it doesn’t really matter that I can use Vim keybindings. I don’t know them.

Like I said. This was a bad idea.

But I went through the installing process and now have an instance of Emacs which supports Vim and Emacs keybindings, none of which I am particularly familiar with.

First Things First

The font has to change.

These additions go into your config.el.

(setq
doom-font (font-spec :family "Input Mono Narrow" :size 18)
doom-big-font (font-spec :family "Input Mono Narrow" :size 36)
doom-variable-pitch-font (font-spec :family "Avenir Next" :size 18)
)

The line spacing was too close and I needed to change that.

(setq-default line-spacing 0.7)

Tao themeTao theme

The theme has to change. Doom ships with solarized light and dark pre-installed but I wanted to try something different. I ran across a lovely minimal theme called Tao.

(setq doom-theme 'tao-yang)

One of the things which Doom lets you do is move in a file through reference to the line numbers. I needed to show line numbers.

(setq display-line-numbers-type t)

I still haven’t figured out how to make every line width 90 characters. That is a work in progress. I haven’t given up that quest, but it hasn’t clicked yet. Typewriter scrolling? No answer to that one. Still looking. Haven’t given up the search. But no luck so far.

The Upside

I am learning. Finding that I can learn something new. Not too old for that. You have no idea how good that makes me feel. You will get it, once you are my age. By the way, I am 59 years old.

Doom-emacs is like a mesh of the best things of Emacs and Vim. This is a double-edged sword. You get the benefits of both editors, the evil keybindings along with Emacs and its org-mode. The complexity is astounding for someone who has limited experience with these tools. I am having to learn both Emacs and Vim concurrently.

Markdown mode in Emacs is fantastic. It is comprehensive and implemented well. I love writing Markdown in Emacs. It is well documented and it is sensible.

Suggestion 1: Buy the Guide to Markdown Mode for Emacs by Jason R. Blevins. Pay the price you can afford.

Suggestion 2: Search youtube for emacs related videos. There are a ton. Go through them.

Suggestion 3: Buy a few more books. These are two I can recommend:

  1. Mastering Emacs $39.99
  2. Harley Hahn’s Emacs Field Guide 1st ed., Hahn, Harley $29.99

Org-mode. It is overwhelming. It is great. I have just started this journey, I don’t have much to say about it yet. Except that tables are fantastic in org-mode. There is a whole calendar portion of it which I am not using. I don’t care to have my agenda maintained by Emacs. At least, not yet. I might get there but now I am using org-mode to write outlines. It is a great outlining program. All text and outlines. Folding of sections or the whole of the document. It is the best text based outlining solution that I have ever seen.

Conclusion

I am learning. I am having fun. Also tearing my remaining hair out. Frustration is a part of the learning curve. It is the most geeky thing I have attempted and the little successes add a tremendous amount of pleasure to my quarantined soul. This series is going to be continued…

macosxguru at the gmail thingie.

Thanks to: Photo by Vladislav Vasnetsov from Pexels

emacs
May 13, 2020

Produces BooksProduces Books

Books to Read 2020-05-13

Now that people have some time on their hands, I want to recommend some books to read.

Guy Kawasaki

Lessons From A Life Hardcover: 18.69 Kindle: 13.99

Kawasaki has written a few books and I have read most of them. I loved Enchantment: The Art of Changing Hearts, Minds, and Actions. I enjoyed Rules For Revolutionaries: The Capitalist Manifesto for Creating and Marketing New Products and Services. I liked How to Drive Your Competition Crazy: Creating Disruption for Fun and Profit. All of these are good but this one is better.

Wisdom imparted in an engaging manner. I will read this one a few times.

Chris Matthews

Hardball Paperback: 11.95 Kindle: 12.99

I am aware that he is a bit of an asshole. A misogynist from a bygone era. I don’t agree with his “politics as sport” viewpoint. In fact, I don’t agree with his politics at all.

I like this book though. Relevant to life and politics. I have read this one a few times.

Robert B. Cialdini

Influence: The Psychology of Persuasion Paperback: 10.99 Kindle: 12.99

I used to make my graduate students read this one. Insightful stuff written like a normal person. I have read this one a few times too.

Sarah Kendzior

Hiding in Plain Sight: The Invention of Donald Trump and the Erosion of America
Hardcover: $18.29
Kindle: $14.99

It is terrifying. The reality of the current state of America which most of us are unaware of. We are busy living our lives, trying to cope as best as we can. We are not processing what is going on with America. This book lays it out in vivid, graphic detail. An autocratic future most of us never wanted or are ready for. Well argued, masterfully written, informative and scary. Please read it.

Philip Marsden

The Crossing Place: A Journey among the Armenians
Paperback: $15.99 Kindle: $ 8.99

“The Crossing Place is Philip Marsden’s gripping account of his remarkable journey through the Middle East, Eastern Europe and the Caucasus in a quest to discover the secret of one of the world’s most extraordinary peoples.” This is an amazing book about the Armenians. Recommended for people who are even remotely interested in this region and their peoples.

Now for something much lighter.

Angus Donald

Outlaw: A Novel of Robin Hood (The Outlaw Chronicles Book 1)
Paperback: $12.74
Kindle: $11.99

Holy Warrior: A Novel of Robin Hood (The Outlaw Chronicles Book 2)
Paperback: $12.99
Kindle: $11.99

King’s Man: A Novel of Robin Hood (The Outlaw Chronicles Book 3)
Paperback: $17.89
Kindle: $9.99

This series has 9 books. I am listing the first three here. They are a breezy read with interesting characters and events. Inspired by historical events and remarkably close to the truth about some of it, this is an engaging read. If you are overwhelmed by the dark present times, the Dark Ages might be an appropriate refuge for your mind.

The links are Amazon affiliate links, which means that if you buy books from these links, the World Wildlife Fund and I will make a few pennies off your purchase.

macosxguru

Thanks to: Photo by Patrick Fore on Unsplash

books