[HN Gopher] Show HN: CLI plain-text notes & bookmarks with Git, ...
       ___________________________________________________________________
        
       Show HN: CLI plain-text notes & bookmarks with Git, sync,
       encryption, and more
        
       Author : xwmx
       Score  : 145 points
       Date   : 2020-10-07 15:46 UTC (7 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | zorbash wrote:
       | It looks incredible, rich in features and the git syncing
       | capability is neat.
       | 
       | My only wish would be to be able to import my bookmarks somehow.
       | A few months back wrote my one CLI bookmark manager in Elixir
       | (https://github.com/tefter/cli). It's impressive how much nb
       | achieves yet being written in Bash.
        
         | z29LiTp5qUC30n wrote:
         | https://github.com/oriansj/orgmode-bookmarks
         | 
         | enjoy
        
         | xwmx wrote:
         | Thanks! That looks really interesting and very nicely designed
         | (both your CLI and the web app).
         | 
         | It should be pretty easy to create a bookmark import plugin for
         | `nb`, so that's likely to happen.
        
       | holmb wrote:
       | There have been a few of these note taking systems that have
       | passed through HN lately. I use org-mode for some notes and
       | sometimes open-junk-file (that I discovered in in Spacemacs).
       | What I miss is a tool that will help me keep some notes encrypted
       | at rest but will allow me to search filenames _and_ content. nb
       | seems to support searching, and encryption, but not the two in
       | combination.
        
         | phaer wrote:
         | Emacs can use GPG to encrypt files at rest pretty
         | transparently. Just save a files with the extension `.org.gpg`
         | and it should get encrypted automatically with Spacemacs (I
         | personally use https://github.com/hlissner/doom-emacs/).
         | 
         | Note that adding an encrypted file to your agenda, .e.g. `(setq
         | org-agenda-files '("~/org/secret-diary.org.gpg"))` will let
         | Emacs decrypt that file upon calling "org-agenda". Something
         | similar should be possible for search if it doesn't work out of
         | the box
        
           | holmb wrote:
           | I use this to encrypt files as well and I think Emacs handles
           | this very well for individual files. It is however the notes
           | management tool that doesn't support transparently search
           | through multiple files.
           | 
           | I imagine what is needed is using gpg-agent to handle
           | passwordless decryption of the files at rest.
        
       | w0m wrote:
       | Wow. Is This is the child of Gina Trapani's old notes.sh? I feel
       | like I've watched this grow incredibly over the last 15 years...
        
       | dengsauve wrote:
       | This looks fantastic, just from a quick download and playing
       | around for 5 minutes I know this is going to come in handy. I
       | don't always have a note taker open, but I almost always have a
       | terminal open.
        
       | auto wrote:
       | This looks awesome, and touches on a bunch of things that have
       | been on my to-do list of "find a thing that can do X", even if
       | that thing didn't let me stay in the command line, which this
       | obviously does.
       | 
       | Curious to see what people come here to say does all of this
       | better, because if it exists in a nice package like this, I
       | haven't seen it yet.
        
       | engineerX wrote:
       | Wow, looks great. Using git to sync is super convenient --
       | there's so much infrastructure available to support git so it's
       | basically no effort to start syncing with github etc.
       | 
       | I use dstask to manage my todo list which also uses git, it's
       | excellent.
        
         | jhoechtl wrote:
         | Thank you for dstask. I also have to take a deeper look into
         | this submission.
         | 
         | Are you aware of a currated list of git-synched solutions to
         | note taking and todo management? I used to use emacs org which
         | was very good in the beginning yet somehow started to overgrow
         | to the point where I found myself more in organizing than get
         | stuff done.
        
           | pbronez wrote:
           | That would definitely be helpful. This tool looks cool, but I
           | need windows support.
        
       | nyolfen wrote:
       | mad props, this is extremely cool. i only wish i had it ten years
       | ago so i wouldn't have my crap spread across one more system.
        
       | filmgirlcw wrote:
       | This looks fantastic! I've only spent a few minutes with this,
       | but the design is really, really smart and the featureset is top-
       | notch!
       | 
       | Congratulations!
        
       | benrbray wrote:
       | See also Logseq [1] (a roam alternative) and Cerveau/Neuron [2]
       | (a zettelkasten implemented in Haskell) for alternative git-based
       | note management. See also [3] for a Lobsters discussion from a
       | few days ago.
       | 
       | [1] https://logseq.com/ [2] https://www.cerveau.app/ [3]https://l
       | obste.rs/s/e5lx5p/what_note_taking_team_wiki_person...
        
       | ontouchstart wrote:
       | I am surprised to see there are 3,365 commits of this project
       | with a 5-year gap: https://github.com/xwmx/nb/graphs/contributors
       | 
       | Perhaps there are some interesting stories that the author would
       | like to tell?
        
         | xwmx wrote:
         | Yeah, it's a little unusual. No big story. I just did an early
         | version and then didn't update it for a long time, then got
         | hooked on working on it again over the past few months.
         | 
         | I don't know what to say about the number of commits. My
         | working style on this project has involved a lot of smaller
         | commits and little feature iterations, maybe because of the
         | single big script and single big README, or maybe something
         | about the feedback loop of this style of development.
        
       | erling wrote:
       | This looks amazing! Love how simple yet powerful it is. Great
       | job!
        
       | philips wrote:
       | I use pass[1] with this alias for daily notes. The nice thing
       | about that is there are lots of native clients
       | alias journal='pass edit journal/$(date +%Y-%m-%d)'
       | 
       | [1]: https://www.passwordstore.org/
        
         | xwmx wrote:
         | Very cool. `pass` is awesome and I didn't realize it had the
         | `pass edit` feature. I have written scripts that use the
         | 1Password and Keychain command line tools, and I definitely
         | want `nb` to use all three of these, maybe via a plugin.
        
       | maxioatic wrote:
       | This looks super cool and polished.
       | 
       | That it's a 11401 line shell script is blowing my mind.
        
         | dmd wrote:
         | I hate to be critical of what's a rather impressive piece of
         | work, but a lot of the reason for that length is just a lot of
         | repetition, e.g.
         | https://github.com/xwmx/nb/blob/master/nb#L10423
        
           | xwmx wrote:
           | That particular function, `nb show`, is a big `if` statement
           | checking the file type and environment for available tools.
           | I'm more than happy for suggestions and / or pull requests
           | for optimizing that.
           | 
           | Note that Bash is a weird language that doesn't provide
           | language features found in normal languages, and this targets
           | old Bash which doesn't even have associative arrays, so there
           | are things that might look "wrong", but aren't necessarily in
           | this context. That's a big part of what makes it interesting
           | to code in.
        
         | bachmeier wrote:
         | Everyone should use the language of their choice. That said,
         | looking over the code, I understand why Perl became popular as
         | a shell replacement.
        
         | pantulis wrote:
         | The completeness of the tool combined with the madness of shell
         | scripting. The author is a demigod, no doubt.
        
           | maxioatic wrote:
           | A shelligod, for sure
        
       | mrpf1ster wrote:
       | This tool is going into my workflow right away. I take notes in
       | markdown (with latex) for all my classes but they're disorganized
       | and searching through them for a specific topic is annoying. This
       | solves so many problems haha.
       | 
       | I noticed there's a way to tag bookmarks, is there a similar
       | functionality for tagging notes?
        
         | xwmx wrote:
         | Cool, your use case is exactly one I hope it works for. I find
         | that the notebooks are a really good way to organize by topic
         | or project, and should work really well for classes, too. You
         | can even archive a project or class notebook when it ends and
         | still easily access, revive, or drop into the content.
         | 
         | Tagging in _`nb`_ is really simple and is just a matter of
         | putting hashtags in your documents and then searching for those
         | hashtags using _`nb search`_ / _`nb q`_. _`nb <url>`_ makes
         | tagging a little more convenient when bookmarking by providing
         | a _`-t <tag1>,<tag2>...`_ / _`--tags <tag1>,<tag2>...`_ option
         | and saving them in a dedicated _`## Tags`_ section in
         | _`.bookmark.md`_ documents.
        
       | vinebase-albert wrote:
       | I love all of this! Just need a similar web-based GUI so my
       | coworkers can use the same back-end technology without having to
       | use the CLI.
        
         | etherio wrote:
         | You can check out https://github.com/Uzay-G/archivy/. It's
         | quite similar except uses a web interface. We're building it
         | out and are working on adding a login system so people can host
         | instances publicly with multiple users.
        
         | hghghhhjuu wrote:
         | If it's all just plain text, you could just put it on GitHub /
         | gitlab and edit the files from the built in "raw" editors.
        
           | xwmx wrote:
           | Indeed, it is, and you can do exactly that.
        
       ___________________________________________________________________
       (page generated 2020-10-07 23:00 UTC)