Time Tagging in WorkFlowy

Does any of this describe you?

  • Need a time estimate for that next big project?
  • Could use a reality check on that ambitious @today list?
  • Maybe you’d like to track billable hours?
  • Or perhaps you’re simply a lifelogger, Pomodoro counter or all-around Time Nazi?

WorkFlowy and WFcount offer a simple solution: Time Tags

AlarmClock

What is a Time Tag?

It’s a WorkFlowy tag, starting with “#” followed by any number of digits, and ending with an ‘h’ for hours or an ‘m’ for minutes. Like this:

  • #2h = 2 hours
  • #15m = 15 minutes
  • Combine them: #2h #15m = 2 hours, 15 minutes
  • This works too: #135m

Just Click to Count

With a single click, the WFcount bookmarklet adds up the visible Time Tags and displays the total time.
Time Tag Examples

Simple. Intuitive. Fast.

Veritably WorkFlowy-ish!

Installation:

Go to the original WFcount blog post.

Time Output Option:

The default output format is:
“Total Time = 2h 15m”.

If you’d like hours only (perhaps to plug into a spreadsheet) you can edit the bookmarklet code as follows: Near the beginning, change “timeFormat=0” to “timeFormat=1”.

With this setting, WFcount will generate hours out to two decimal places like this:
“Total Hours = 2.25”

Happy Time Tagging!

Advertisements

Count Stuff in WorkFlowy

With the WFcount Bookmarklet.

IMG_1519
Von Tag!

…Two Tags!

……Tree Tags!

………Ah, Ah, Ah!

WFcount can count like a purple Muppet (only just WorkFlowy stuff, like bullets, parents, children, completed items and tags).

It works on a very simple premise: count what is visible. So you control what gets counted by expanding, collapsing and zooming on bullets. Then click on the bookmarklet to get a summary of your counts.

Update Feb 9, 2016: Now with Time Tags!

Here’s what it looks like…

WFcount Bookmarklet

Tips:

  • When zoomed, double clicking the bullet title will toggle expand/collapse of all children.
  • When viewing your WorkFlowy home page, double clicking “workflowy” will do the same. (Handy if you want to count everything in your WorkFlowy castle.)
  • Alternately, either zoomed or from your Home page, you can search for “@ OR #” (no quotes) to reveal all your tags. This method can be preferable to expanding all, especially if you wish to preserve the expand/collapse state of some of your nodes.

Installation Options:

1) WFcount: Desktop

  • Opens in a small browser window (see the screenshot above)
  • Can selectively copy count information.
  • Leave the window open and it will append count summaries in that window.
  • Monospace font
  • Click here for a link you can drag to your Bookmarks Bar.

2) iWFcount: Mobile or Desktop

  • Displays counts in an alert dialog.
  • Good option for “quick view” where you don’t need to copy.
  • For Desktop Install: Triple click the code below to select it, then drag to your Bookmarks Bar. Rename the bookmark.
  • For Mobile Install: Bookmark this page, and save it to your favorites folder.
  • Select all the code in the box below and copy it to the clipboard.
javascript:(function(){var%20version=%22v1.4i%22,timeFormat=0,br=%22\n%22;if(-1!=location.href.indexOf(%22workflowy.com%22)){var%20projectSelected=document.title.replace(/%20-%20WorkFlowy$/,%22%22),bullets=document.getElementsByClassName(%22bullet%22).length,parents=document.getElementsByClassName(%22parent%22).length,children=bullets-parents,tags=document.getElementsByClassName(%22project%20selected%22)[0].getElementsByClassName(%22contentTag%22),completed=document.getElementsByClassName(%22project%20selected%22)[0].getElementsByClassName(%22done%22).length;if(0==document.getElementsByClassName(%22showCompleted%22).length)var%20completed=%22Hidden%22;var%20finalCount=%22%22,totalHours=%22%22;if(tags.length%3E0){var%20i,tagList=[];for(i=0;i%3Ctags.length;i++)tagList.push(tags[i].textContent.toLowerCase());tagList.sort();var%20tagCount={};tagList.forEach(function(x){tagCount[x]=(tagCount[x]||0)+1});for(var%20tagTitle%20in%20tagCount)finalCount+=tagTitle+%22%20=%20%22+tagCount[tagTitle]+br;var%20tagNames=finalCount.match(/=/g).length,timeTags=finalCount.match(/(%23)(\d+)(m|h)(%20=%20)(\d+)/g);if(null!==timeTags){var%20final=0;for(i=0;i%3CtimeTags.length;i++)findTime=/(%23)(\d+)(m|h)(%20=%20)(\d+)/,total=timeTags[i].match(findTime)[2]*timeTags[i].match(findTime)[5],-1!==timeTags[i].indexOf(%22h%22)%26%26(total=60*total),final+=total;var%20totalHours=br+%22Total%20Time%20=%20%22+Math.floor(final/60)+%22h%20%22+final%2560+%22m%22;if(0!==timeFormat)var%20totalHours=br+%22Total%20Hours%20=%20%22+Math.round(final/60*100)/100}}else%20var%20tagNames=0;alert(projectSelected+br+br+%22Parents%20=%20%22+parents+br+%22Children%20=%20%22+children+br+%22Completed%20=%20%22+completed+br+br+%22Tag%20Count%20=%20%22+tags.length+br+%22Tag%20Names%20=%20%22+tagNames+totalHours+br+br+finalCount+br+br+version)}})();

iOS Tip: Press, hold, and release on “javascript” to select it, then gently swipe down on the right grabber, until you see only the left grabber and then copy.

  • Open the bookmarks menu and edit the bookmark you just created.
  • Clear the URL/Address field, and paste the code you copied above.
  • Save your changes and exit out of the bookmarks menu.

View: WFcount source code

Happy counting arithmomaniacs! Ah, Ah, Ah!

How Many WorkFlowy Bullets Do I Have?

UPDATE: WorkFlowy remembers the expand/collapse state of your last view for each bullet, and that’s a nice thing. This post has been updated with a new method that will not alter these expand/collapse states.

I recommend you read all the instructions before clicking the search link in Step #1.

1) Click on this WorkFlowy search.

This will enter last-changed:10000d in WorkFlowy’s home page search box, finding every bullet you’ve edited or created in the last 10,000 days. That should cover things. Have some patience, it may take a few seconds to render your last 27 years of work.

2) Type Ctrl+A twice to select all bullets (use Cmd for Mac).

3) Look at the right pop up menu to revel in your bullet proclivity.

Bullet Proclivity

4) Press Esc to clear the search.

* The last-changed: search operator automatically toggles to Completed:Visible. If you want to count only incomplete bullets, click the toolbar to toggle back to Completed:Hidden and repeat Step #2.

Select Completed Status

Bonus Tip: Count all the bullets under a single bullet

  • Zoom on the bullet
  • Enter last-changed:10000d in the search box
  • Press Tab to move focus away from the Search box
  • Repeat from Step #2.

Happy counting!

Flat WorkFlowy Lists

I love WorkFlowy.  Dump your brain into this versatile web-app. Tame it with intuitive and flexible outlines. Tag to connect the disconnected. Zoom to focus. Power in simplicity. What’s not to love?

While WorkFlowy’s standard tag/text search is great for showing context and relationships, there are times you don’t want the noise of an outline. You just need a simple, flat list.

Meet FlatFlowy.
erica_workflowy

FlatFlowy is a bookmarklet that hides the “breadcrumb” header, removes indentation, hides parents, and (optionally) hides notes. The result is a simple, flat, distraction-free list when searching for tags or text in WorkFlowy. It works as a toggle; click once for flat lists, and again to return to the standard view. FlatFlowy is compatible with most browsers, even mobile ones.

There are two versions: Show Notes and Hide Notes. Which one you choose will depend on how you structure things in WorkFlowy. You can install both to test (or use). As of version 1.7, you can run both simultaneously; no page reload is required.

I use the Show Notes version, and here’s why: When a search yields a ton of matches, FlatFlowy can dramatically reduce the number of items to scan. You can easily toggle to view context. The Hide Notes version will omit any matches in notes, so you may not see complete search results in flat view.

View the FlatFlowy code

Big Hat Tip To: the fabulous Erica Heinz for the original CSS and screenshot. Thanks Erica!

Tips:

  • Flat mode takes effect only while searching for tags or text.
  • You can open two WorkFlowy tabs and keep one flat, one standard.
  • A page refresh (F5) always clears FlatFlowy’s custom stylesheet.
  • FlatFlowy doesn’t work when viewing shared content via a shared link.
  • Important! Don’t move or multi-edit items while viewing a flat list. Since some content is hidden, you could get unexpected results.
  • Launch FlatFlowy with the keyboard in Chrome with this tip.
  • In the Show Notes version, a match in notes will not show a bullet, making clicking on a nonexistent bullet, uh, difficult. Click on the note text and press Alt+Right to zoom from flat mode.
  • FlatFlowy doesn’t work with WorkFlowy’s special search operators.

Desktop Installation:

Drag to the bookmarks bar.

  1. Make sure your bookmarks bar is showing.
  2. Open FlatFlowy’s desktop installation page.

Mobile Installation:

Create and edit the bookmark manually:

  1. Bookmark this page, and save it to your favorites folder.
  2. Select all the code in one of the boxes below and copy it to the clipboard.

    iOS Tip: Press, hold, and release on “javascript” to select it, then gently swipe down on the right grabber, until you see only the left grabber and then copy.

    This version hides notes in flat mode:

    javascript:(function flatFlowy_2_0(css){function flatMessage(m){if(!search.inSearchMode()){showMessage('Flatflowy: <b>'+m+'</b>');setTimeout(function(){hideMessage();},1500);}} var h='data:text/css;charset=UTF-8,'+css;var s=document.styleSheets;for(i=0,max=s.length;i<max;i++){if(s[i].href==h){var d=!s[i].disabled?true:false;var state=!s[i].disabled?'OFF':'ON';flatMessage(state);return void(s.item(i).disabled=d);}} var a=document.createElement('link');a.rel='stylesheet';a.href=h;document.getElementsByTagName('head')[0].appendChild(a);flatMessage('ON');})('.page.searching .project .name,.page.searching .project .notes{display:none!important}.page.searching .project.matches .name.matches{display:block!important}.page.searching .selected>.children>.project .project{margin:0 0 4px!important}.page.searching .children{margin:0!important;padding:0!important;border:0!important}.page.searching .childrenEnd{height:0!important}');

    This version shows notes in flat mode:

    javascript:(function flatFlowy_2_0(css){function flatMessage(m){if(!search.inSearchMode()){showMessage('Flatflowy: <b>'+m+'</b>');setTimeout(function(){hideMessage();},1500);}} var h='data:text/css;charset=UTF-8,'+css;var s=document.styleSheets;for(i=0,max=s.length;i<max;i++){if(s[i].href==h){var d=!s[i].disabled?true:false;var state=!s[i].disabled?'OFF':'ON';flatMessage(state);return void(s.item(i).disabled=d);}} var a=document.createElement('link');a.rel='stylesheet';a.href=h;document.getElementsByTagName('head')[0].appendChild(a);flatMessage('ON');})('.page.searching .project .name{display:none!important}.page.searching .project.matches .name.matches{display:block!important}.page.searching .selected>.children>.project .project{margin:0 0 4px!important}.page.searching .children{margin:0!important;padding:0!important;border:0!important}.page.searching .childrenEnd{height:0!important}');
  3. Open the bookmarks menu and edit the bookmark you just created.
  4. Edit the title to whatever you want.
  5. Clear the URL/Address field, and paste the code you copied above.
  6. Save your changes and exit out of the bookmarks menu.

Happy flat flowing!

WorkFindy: Search WorkFlowy from Anywhere

From any website or Workflowy page. Select text or enter it. Simple. Surprisingly useful.

WorkFlowy’s excellent search feature confines search to the current bullet and below. When you are zoomed on your “Work” node, you only search (or filter) on Work, and in most cases that is a good thing.

But what if you are zoomed multiple levels deep and need to search all of WorkFlowy for a tag or phrase? Maybe you’re browsing a website, and need to search WorkFlowy?

What is WorkFindy?

  • A Google Chrome Extension that makes searching WorkFlowy a snap.
    (also available as a bookmarklet for non-Chrome browsers)
  • WorkFindy always searches ‘globally’ from your WorkFlowy home page.
  • Select text and WorkFindy searches for your selection.
  • With no text selected, enter search terms into a prompt.
  • Inside WorkFlowy: results appear instantly in the same tab.
  • Outside WorkFlowy: results open in a new WorkFlowy tab.
  • Assign a keyboard shortcut at the bottom of the Chrome Extensions page. Do this! It really helps. I use ‘Alt+W’, and never click the icon.

Where is WorkFindy?

  • Get WorkFindy in the Chrome Web Store.
  • Get the bookmarklet here.

View the WorkFindy bookmarklet code.

Tips:

  • WorkFindy makes a great WorkFlowy launcher.
  • To launch your home page: activate WorkFindy with no selection, immediately press Enter or click OK.
  • Or simply enter search terms to get somewhere in WorkFlowy faster.
  • Convert a “child” search into a global search: Select the search box text and activate WorkFindy.
  • Slow computer and/or huge outline? Tired of waiting for search results with each key press? Use WorkFindy instead for instant searching when you say so.

Happy Finding!

Quickly Create WorkFlowy Reminders in iOS with Siri

Ask WorkFlowy users what new features they want, and reminders is usually near the top of the list. With iOS 9, Siri gets some new functionality that makes creating WorkFlowy reminders a snap.

To use this tip you need to view WorkFlowy in iOS Safari and not the app. In iOS, there are lots of good reasons to use Safari for WorkFlowy (alongside the app), but that is a future blog post.

Here are the intricate instructions:

  • In Safari, zoom on the WorkFlowy bullet you want to be reminded about.
  • Tell Siri: “Remind me about this tomorrow 9 am”

RemindMeAboutThis

  • When the reminder sounds, simply tap the Safari icon to jump to the WorkFlowy bullet.

Pretty awesome.