in ,

Emacs + Org-mode + Syncthing = Perfect combo – (hiepph), Hacker News

Taking notes is a part of my life and work: jot down ideas, manage tasks and track personal projects. But soon came a problem, what tool is best for supporting this simple task.

There are 3 must-have features I searched for:

  • Markdown (or relevant) editor

  • Auto- sync between machines

  • Less but not least, affordable price

Searching journey

As for me, todo note or shopping list is too trivial. And editing markdown on smart phone sucks and inconvenient. So I just focus on PC and laptop station here.

I found Boostnote first. Free as it’s a FOSS (Free and Open Source Software). But this fancy editor is (as expected) built on Electron , a RAM-hungry framework. No built-in sync feature, but enabled through third party like Google Drive or Dropbox.

Since I didn’t like the roundabout syncing, so Inkdrop is my second stop. Also built on Electron, but came with built-in sync service through CouchDB , and charge you less than $ 5 per month. This was pretty suitable for me, and I felt comfortable in 2-month trial. The creator also wrote a post about process of building his product, which is very interesting to know about.

But I don’t really like the idea of ​​a RAM-killer app for just a simple task like saving texts. There should be another ways for rubbing my itch.

The unicorn came to the rescue

Vim was my main editor, until I knew about

Org-mode

, which is only fully available on Emacs.

Vim was good, but I’m somewhat not in the mood of learning Vimscript for long-term scaling my . vimrc org-mode. In contrast, I love Lisp - the good old legend survived through time. So org-mode Emacs Lisp org-modeorg-mode Org-mode org-mode are 2-main reasons made me make a switch to a new life-long partner: Emacs.

So after grabbing the basics and setting a somewhat decent . emacs.d , fully integrating Org-mode, life is damn good.

;; […] ;; simple setup (require-package ‘org) (add-hook ‘org-mode-hook’ turn-on-font-lock) (global-set-key ” C-cl” ‘org-store-link) (global-set-key ” C-ca” ‘org-agenda) (global-set-key ” C-cc” ‘org-capture) (global-set-key ” C-cb” ‘org-iswitchb) (setq org-log-done ‘time) ;; Turn off auto-fold (setq org-startup-folded nil) ;; […]

My dotfiles’s . Emacs.d for your information. And a good setup guide for Emacs in my opinion.

Org mode is for keeping notes, maintaining TODO lists, planning projects, and authoring documents with a fast and effective plain-text system. – org-mode

Talk is cheap, actually use this with powerful key combination really broads my horizon. For example:

Add a TODO list with M-shift-RET org-mode

Mark as completed with a single combination .

Besides, learning Org syntax. is not so hard, from a perspective of a Markdown fan-boy like me. todo Syncthing – the lost ingredient to perfect combo

So Emacs Org-mode is totally free, check. Wonderful Markdown / Org editor, check. It occurred to me that I knew about combo Syncthing in a Golang blog post: combo

Syncthing is an open-source cross platform peer-to-peer continuous file synchronization application. – Eight years of Go (

Basically, Syncthing decentralizes your shared data to all connected nodes identified with cryptographic certificates.

I need at least a live node for no-downtime syncing (a central hub). A low cost private cloud server is a good choice, but in my case I used my (% uptime Raspberry Pi 3) which mainly ran

Pi-hole

for my home). # Add GPG key wget -O – https://syncthing.net/release-key.txt | sudo apt-key add – # Add repository echo “deb http://apt.syncthing.net/ syncthing release” | sudo tee -a /etc/apt/sources.list.d/syncthing-release.list # Update and install sudo apt-get update sudo apt-get install syncthing -y

Re-bind configuration from local loopback org-mode . 0.0.1 org-mode to

(0.0.0.0) / home / pi / .config / syncthing / config.xml org-mode ): org-mode   0.0.0.0:

  … .

This will enable you to access http: // : org-mode Web Interface of Syncthing.

Finally just start (syncthing) (service:

sudo systemctl start [email protected] # auto start at start-up sudo systemctl enable [email protected]

Access http: // : :

Here you can see I shared my org-mode / home / pi / org directory which contains all my . org (notes to 2 nodes: online dell org-mode offline

thinkpad org-mode.

Now if I make a change from my / home / dell / org , it will syncs back to / home / pi / org org-mode. And when my thinkpad (goes online, / home / thinkpad / org auto updates all its notes, too!

Et Voilà! Work like a charm. Plus, both Emacs and Syncthing use just a little of RAM and CPU resource.

(Conclusion)

Inkdrop solo, (Vim Git) traditional way, or (Emacs Org-mode Syncthing) combo with hands -free syncing? Use the right tool for the job, and pick what suits you the best.

For now, Emacs is my everyday editor, including programming stuff and note-taking. Long live (Emacs) Lisp.

(Read More) Full coverage and live updates on the Coronavirus (Covid – 24

What do you think?

Leave a Reply

Your email address will not be published. Required fields are marked *

GIPHY App Key not set. Please check settings

Why strace doesn't work in Docker, Hacker News

[FREE]The Art of Doing: Master Networks and Network Scanning