Tuesday, April 5, 2011

nvALT 2.0: two forks, merged…

NVForked updated and is now nvALT, a merger of two forks.

Big update. Huge. Back in January, Scrod released an update the NV that added a host of great features… and broke compatibility with my fork. Since then I’ve been working on updating my fork to add in his changes in the official NV:

  • Option for horizontal layout with multi-line previews in notes list
  • Words between [[double-brackets]] will become links to other notes
  • Tags can be synced to Dropbox and searched by Spotlight, via OpenMeta
  • Tags are auto-completed while typing in the tag-entry field
  • TaskPaper-compatible strikethrough formatting using the “@done” tag
  • Fully plain-text-based automatic list-bullet formatting
  • Note-titles inside double-brackets are (optionally) auto-completed
  • “Show in Finder” command for revealing selected note-files on disk
  • Highlighting of search terms can be disabled
  • Dragging the divider to the top or left of the window will hide search field
  • and more

I kept the new, official implementation of a horizontal layout, which uses a single column to display note title + metadata (dates and tags). Looks beautiful.

All the features from my fork are still there:

  • Fullscreen mode (cmd-shift-f)
  • Optional menubar icon/drop down menu
  • Optional no dock icon (menu bar icon only) mode.
  • The ability to add/edit tags for multiple notes at once (which now auto-completes the tags for you).
  • Multiple color schemes you can easily switch between:
  • Black/White
  • Low Contrast (light gray background, dark gray text)
  • User Customizable
  • Easily collapse/expand the notes list and search field (cmd-shift-c)
  • An option to improve the readability of notes by using margins to limit the width of the text (in preferences»Fonts&Colors)
  • Other eye candy (check the scrollbars out).

AND added some new features:

  • “Open in Text Editor” (Under the note menu, or Cmd-Shift-O) to will open the current note in the application of your choice (use WriteRoom if you prefer its fullscreen mode). This requires that you store your notes as separate files. The default app is the system wide default for whatever file type (.txt,.rtf,.html) you’re using. Probably Text Edit. But you can pick your preferred application in “Preferences»Editing”
  • Show Word Count (Under the View menu, or Cmd-Shift-K). Heavily requested. Adds a live word count of your note to the search field. Hold down the option key to temporarily see the word count.
  • Working Localization for French, German, and Portuguese. (Although some of the newer features show up in English. If you know French, German, or Portuguese and want to translate anything you see in English please email me or Brett).

Along the way, Brett Terpstra, the developer of another NV fork, nvALT, and I decided to “branch off and merge our forks”…. whatever that means. Well, it means that my fork and nvALT are now combined into a single release:nvALT, version 2. So this adds the features of nvALT 1.0.7 into the mix as well:

  • (Multi)Markdown/Textile Preview (in the Preview menu, or hit Cmd-Control-P). Also highly requested. Brought to you mainly by Christian Tietze and Brett Terpstra. Thanks! I’ve added one thing to their implementation: Hold down the control key to temporarily see the preview window.
  • HTML source code tab in the Preview window for fast copy/paste to blogs, etc.
  • Customizable HTML and CSS files for the Preview window
  • Custom HTML/CSS templates can be included in saved output from the Preview
  • Social note sharing via Peggd
  • Convert imported URLs to Markdown, and optionally strip excess content with Readability

And some other bug fixes and improvements. (Most noticeable: the search field is embedded in the window’s titlebar as in the official release, which I originally took out for going fullscreen, but got working again).

nvALT has its own auto-update channel. So it will only update to future nvALTs, and never to Scrod’s NV.

nvALT will create it own set of preferences from NV. This means that the first time you run nvALT it won’t have any prefs you’ve set in my old fork, the first version of nvALT, or the official NV. If you moved your notes to a custom location (like Dropbox) they won’t show up the first time you run nvALT; you just need to go back into preferences»Notes and set the “read notes from folder” to the right place. Apologies for the chance, it is a pain in the ass, but separating nvALT from NV means you can use both apps, store notes for each in a separate folder, and have fewer compatibility issues.

Note: Apparently our build is not particularly PowerPC compatible. Since neither Brett nor I have PPC machines its pretty hard to test/debug/build for them. We’ll do our best, but in the meantime its probably best for PPC users to hold off or use this experimentally only. Apologies.

Download nvALT, version 2 here.

The official project page for nvALT is on Brett’s site. Or you can check my old NV site.

Source code will be available (soon) here.

Follow my tumblr and/or Brett’s blog for news and updates about nvALT.

I’ll post a roadmap soon, after Brett and I have a little more time to agree on the next steps. In the meantime, enjoy the new release!

Big thanks to Scrod (aka Zachary Schneirov), Christian Tietze , and others whose work is a part of the fork.

Friday, October 22, 2010

NV fork updated: user theme and multi-tagging (again)

Another update to my fork of NV is available here.

release notes:

  • The universal build should now be… universal. As far I as I can tell and test this build should work on Leopard or Snow Leopard (and probably Lion :) on intel or PPC processors.

  • Multi-tagging should now work. There were a lot of bugs with my original implementation. Apologies for that. It should now just work. Select multiple notes in the notes list and hit cmd-shift-t.

  • You can now easily switch between 3 different color schemes for NV. The default, black and white, original NV look. The Low Contrast Scheme, light grey background, dark text color, I introduced two builds ago. And a User Scheme you can set the background and text colors for (in Preferences»Editing). You can switch between Color Schemes in the View Menu, there’s a Color Schemes submenu. Or Cmd-Shift-A (B/W), Cmd-Shift-S (Low Contrast), Cmd-Shift-D (User Scheme). I worked to integrate the two colors not just into the background and text of the NV window, but into all the UI elements. This ended up resulting in some other, subtle, UI changes. The scrollbars are now subtle, auto-hiding, translucent, for example. The changes are not finalized, and I welcome thoughts and ideas about the interface in the comments below or by email (elasticthreads att gmail).
Thursday, October 21, 2010

On its way…

Friday, October 15, 2010

NV fork updated: manage tags for multiple notes at once

You can now modify, delete, or add tags to multiple notes at once. This should help organize, and cross-reference notes easier.

You can now select multiple files and use the Tag command from the menu bar, the contextual menu, or cmd-shift-t (as before) and bring up a little HUD that will show any tags the selected files already share (letting you edit or delete that cross-referenced tag), or add more tags. Running the Tag command with only one note selected acts the same as before.

This build also fixed a bug that would crash NV if it was in fullscreen mode, the notes view collapsed, and you hit escape and then arrowed up or down, and then exited fullscreen mode.

Also fixed a UI glitch where the switch layout menu items in the view and statusbar menus had different keyboard shortcuts listed (the correct one should be cmd-shift-1).

About Notational Velocity should list your version as : “Version 2.0 β3et (6.4)”

If not, download it here.

Tuesday, October 12, 2010

Another update to NV: better readability

Made a dent in my (still growing) to do list. I guess an apology is in order: I was so excited by the initial builds of this fork (getting NV into fullscreen, etc) that I released a little too quick. There were a couple early bugs (already squashed in the last update) and some obvious improvements to build upon and extend. I’m starting to get into those. 

I’m really grateful for the awesome response to this stuff. Lots of ideas and energy pouring in. I’ll do what I can. Please don’t hesitate to email or tweet or post a comment with ideas or complaints. But considered yourself warned: Notational Velocity itself is a beta, and this is a quickly changing fork of a beta.   Luckily (now) NV saves as you type. And the changes I’m making don’t seem to affect stability. 

So here’s what’s new in 6.3 (6 is the version of the official NV build version number):

  1. A few visual bugs and annoyances squashed. There was a weird, unnecessary, 10pixel horizontal scrolling issue that is fixed. Switching between layouts no longer produces a jarringly large notes list. Some assorted other itches like that.
  2. You can now toggle between the default black text on white background to a “Low Contrast mode” of dark text on light grey background. Easier on the eyes (especially in full screen mode).  cmd-/ or  take a look in the view menu.
  3. NV should remember what layout you use between states. The default is still the old vertical layout in windowed mode and the horizontal layout in fullscreen (it gets switched automatically when you go into and out of full screen mode). If you toggle the layout style yourself, NV will remember your choice and keep to it in windowed mode.
  4. You can now have the limited text width with margins in windowed mode (just like in full screen mode), where the text won’t get wider than 600pixels; makes for better readability. Open preferences and click the Editing button and select the third checkbox down.  You might have to adjust the window or change what note your in before this takes affect. Eventually I’ll probably add a slider letting you adjust the margins and text width. In the meantime some of these features are apple-style my way or the highway.
  5. The optional menubar icon’s drop-down menu now has a proper bookmarks menu, which is key for those who want to go dockless.
  6. A small change, is that I accidentally made the keyboard shortcut to toggle layout styles cmd-1, when cmd-#s get automatically assigned to bookmarks. I’ve changed it in this version to cmd-shift-1. You can set your own in OS X’s system prefs.

To see if you have the most update to date version open NV and go to “About Notational Velocity” in the Notational Velocity menu. You should see the following version:    ”Version 2.0 β3et (6.3)”

Download it here.   (I’ll decide whether or not to hook up a specific auto-update channel for this fork or leave it connected to the main build soon. In the meantime its a manual download, unzip, and replace to install).

Keep an eye on the main page for this fork to be sure about the proper version and stay up to date on this project.

Monday, October 11, 2010

NV fork updated and [semi] permanent page for it

Some observant commenters sent in some early bug reports, and I fixed a couple key bugs.

The main one was a bug that kept NV from autosaving your writing when the notes list was collapsed. Also possibly fixed a scrollbar bug for users with small screens. My fork is still hooked up to Scrod’s autoupdate mechanism, so to get the fixed update to my NV for download it here. Then unzip and replace the old version with the new.

To see if you have downloaded the correct version of NV, open NV and up in the Notational Velocity menu click “About Notational Velocity”.

The correct version should be: Version 2.0 β3et (6.2)

Also, I just created a Tumblr page for my fork of NV where you can check for the most recent version and any updates. Check it out, pass it along, and bookmark it.

http://elasticthreads.tumblr.com/nv


Sunday, October 10, 2010

Notational Velocity forked: Fullscreen mode, menubar app, and more…

[Quick 10/22/10 update: there’s now user customizable themes, multiple note tagging, proper support for PPC machines, and more. Read about it here.

The correct version should be: Version 2.0 β3et (6.65)   <—I’ll keep this line up to date.]


Like everyone else, I love Notational Velocity*. As part of my effort to teach myself cocoa, I thought I’d dig into Notational Velocity’s code (its open source) and see what I could learn…

I ended up adding some features I’ve always wanted to be part of NV:

- fullscreen mode

- an optional horizontal layout

- a way to quickly hide the notes list

- a menubar only (no dock-icon) option

if you’re interested you can download my fork here (it’s universal and requires at least Leopard).  

The rest of this post goes a bit deeper into some of the UX decisions I made and how the features work. Read on at your own discretion.

You can switch between default vertical layout (with the notes list above the text of the note) to a (admittedly ipad app-like) horizontal layout, with the notes’ list to the left of the text. Outside of fullscreen mode, I definitely prefer the default orientation, but creating a way to get a horizontal layout was key to fullscreen mode (where having a really wide list of your notes isn’t all that useful). So I added a UI to let you switch layouts. just hit cmd-1 (or hit up the menu item under “View”).

Fullscreen mode is pretty self explainatory. You can cmd-shift-f (or hit up the menu item under “View”) and you’ll hit it. This will also automatically switch NV’s layout to horizontal layout so that the notes list is in a column on the left instead of above the text of the note. You’ll notice I limit the text of the note to 600pixels wide so that it doesn’t get unreadably stretched out across your mac’s widescreen.

You can quickly collapse the notes’ list so that it is hidden by hitting cmd-shift-c (or hit up the menu item under “View”). This is useful in fullscreen mode… yes, I’ll admit it, it does turn NV into YAWRC (Yet Another WriteRoom Clone), but it does make for focused writing right there in NV.

The fork also lets you add a menubar icon which has a drop down menu of most NV functions (I’m still working on getting the Bookmark’s menu into the menubar dropdown). Most of the code that enables the custom view of the menubar icon and drop-down menu is from one of Matt Gemmell’s excellent open source classes(it is easy to add a menubar icon, and easy to give it a dropdown menu, and easy to get a click on the icon to activate the application, but difficult to get it to do all of this, with right-clicks and left-clicks doing different things). If NV is in the background when you left-click the icon, it will pop NV into the foreground; if NV is already in the foreground you’ll get the dropdown menu. Right-click on the icon to get the menu when NV is in the background. 

The checkbox leaves the NV icon in your dock, but enables the menubar icon. You’ll need to manually restart NV to see the icon.

The button will add the menubar icon AND hide the NV dock icon (and cmd-tab task switcher icon). Clicking this will immediately restart NV as a menubar only app. 

I didn’t have to change too much code to make all this happen, so this fork should be as stable as the standard NV (and conveniently enough NV autosaves your work, so testing out a beta fork of a beta app isn’t too risky), but if you get any crashes when using any of the features discussed here, it’s probably my fault. Please post bugs in the comments below.

I’ll be posting the source code soon for my fork soon.

[Quick update: A quirk I just noticed, not a bug but a weirdness in Apple’s fullscreen API, is that if you have set NV to hide its dock icon and be menu bar only AND you go fullscreen, you won’t be able to show the OS X menu by mousing up to the top. Which might be fine, just know that once entering fullscreen mode like this the only way out is to exit fullscreen mode using the keyboard shortcut cmd-shift-f or to quit NV using cmd-Q ]

*Notational Velocity is an excellent open source app, created by scrod. Read about NV here.

Thursday, October 15, 2009

Snow Leopard Services… pt4, text clipping

Simple services for clipping selected text to various applications. Works as advertised. Just select text, right click, pick your poison, and that text will be used in a new document in the appropriate application.

The Evernote Clippers is a .zip which also includes a service to clip any image selected in the Finder to evernote. [edit— Also includes a service which takes any URL or Hyperlink and has Evernote create a note using the webpage of that URL]

Evernote Clippers

Text to Notational Velocity

The TextMate Service makes a clumsy attempt to see if you’re clipping code and, if so, to set the documents code type appropriately.

Text to TextMate