Paperless for iOS 7

Today I’m releasing a free update to Paperless that has been completely redesigned to better fit with the overall aesthetic of iOS 7.

When designing this update, I could have gone a couple of different ways:

  1. I could get rid of themes, and make the interface mostly white with colored buttons like many of Apple’s apps.
  2. I could keep the themes (including the colored navigation bar at the top and colored toolbar at the bottom), and make the buttons white.

I struggled over this for a while, but ultimately opted to keep themes in order to preserve the personality that Paperless has. Themes are something that many people have said they really liked about the app, and removing them would have been a disappointment to many.

Paperless for iOS 7

Paperless was certainly in need of some big changes though – and what I did borrow from iOS 7’s overall design was the clean flat look and thin lines. The heavy shadows and gradients in the bars at the top and bottom are gone, as are the shadows on the icons. Also, most of the user interface buttons have been made thinner, and some are completely different now in an effort to make it clearer what they are for.

There are now 30 themes available, and 24 of them are solid colors (for that clean flat look). I did keep a few of the old favorite patterned themes around though, and added a couple of new ones as well. You can see more here.

In addition to the design changes, there are some nice new features… you can now:

  • print lists and list items directly from the app to an AirPrint compatible printer. If your printer doesn’t support AirPrint, there is software that might help. I use Printopia.
  • post lists to Facebook
  • send lists via iMessage (you might be able to message lists to people not on iMessage as well, though depending on the cellular provider it may be split up into multiple messages if it’s over 160 characters)
  • copy a list as plain text into another app (perhaps you’d like to copy a list of things you did one day into a journaling app like Day One)
  • post individual list items to Facebook, Twitter, send them as text messages

There are many other small improvements as well. I hope you like the update, and if you do please take a moment to rate and review the app… your support will help ensure the continued improvement of Paperless.

Paperless 2.1.2 Released

Paperless version 2.1.2 is now available. In addition to the many improvements from Paperless 2.1, this release has a few small additions – plus some important improvements and bug fixes related to syncing.

What’s New

  • You can now sign up for the Crush Apps newsletter directly from the app (on the settings screen)… I’m working on something big, and want you to be the first to know about it.
  • A few people disliked the change that made new lists appear at the top, so there’s now an option in the settings to have them go to the bottom.
  • When you import a list from email, if there is an existing list with the same name, you’re now given the option to merge the two lists or import it as a new list.

Improved Syncing

  • This release eliminates the possibility of conflicted/duplicate copies of lists. Now when there’s a syncing conflict it happens on the item level. In all cases, Paperless preserves information… so, at worst, you may end up having a list item you previously deleted reappear, or two slightly different copies of a list item.
  • When you first sync a device, if there is a list on that device with the same name as a list already on Dropbox, the two lists are automatically merged.
  • Now if you unlink from Dropbox with the “Keep Lists And Unlink” option and then relink to that same Dropbox account, it no longer results in duplicate copies of lists.
  • Plus many other syncing related bug fixes and improvements. (Like letting you know when your Dropbox account is full.)

New URL Schemes

In addition to the URL schemes from the 2.1 update, there are two new ones:

If you’re using an app like Launch Center Pro, and want to open Paperless to a specific list, you would use this:

paperless://viewList?
	listName=YOUR_LIST_NAME

(note that if there are spaces in the list name, you’ll need to replace those with “%20”. For example, if your list name is “My To Do List”, you would use “My%20To%20Do%20List”)

Add multiple items to a specific list:

paperless://addItems?
	toListNamed=YOUR_LIST_NAME
	&listItems=ITEM_NAME1%0DITEM_NAME2%0DITEM_NAME3%0DITEM_NAME4

If there is no list with that name, it will automatically be created. If you don’t specify a list name, it will create a new list named “Untitled”.

You can also add optional parameters for the icon name, whether or not it’s a checklist, and whether or not new items should appear at the top of the list (if the list already exists, it will ignore them… it’s only used if the list hasn’t been created yet):

paperless://addItems?
	toListNamed=YOUR_LIST_NAME
	&isCheckList=YES
	&itemsToTop=YES
	&iconName=NAME_OF_ICON
	&listItems=ITEM_NAME1%0DITEM_NAME2%0DITEM_NAME3%0DITEM_NAME4

… and yes, this does make the previous addItem and addList URL schemes redundant, but they still work if you happen to be using them.

Paperless 2.1 Released

Paperless version 2.1 is now available in the App Store. This release adds a few new features, along with many subtle improvements and bug fixes. Here’s a list of the new features with details on how to use them:

Now includes over 450 icons

Including many that were requested by people who have purchased the app.

New icons

Select multiple lists to merge or delete

On the main screen, when you tap the “Edit” button, you can now select multiple lists to either delete or merge.

When selecting lists to merge, note that the first list you select is the one that lists will be merged into.

Merging Lists

Select multiple list items to move, copy or delete

When viewing a list, you can press the “Edit” button and select multiple list items to move, copy or delete. When deleting multiple items, whether or not you get a confirmation asking if you really want to delete the items depends on what you have the “Warning On Item Delete” switch set to in the app’s settings.

Selecting Multiple Items

Syncing: lists viewed from the Dropbox website are now pretty

When using the “Automatic Backup And Syncing” feature in Paperless, your lists are saved to your Dropbox account in a folder named “Paperless”. Each list is saved as a separate file ending in “.xml”.

Previously, if you viewed one of those XML files on the Dropbox website you’d see the raw XML code. However, now a style sheet has been added so that the list is nicely formatted for viewing. NOTE: You’ll need to modify the list in Paperless to make this change take effect (a new XML file has to be written to Dropbox).

You can also print the lists from the Dropbox website, but note that when printing a checklist you’ll need to do the following:

Safari – make sure the “Print backgrounds” option is selected

Firefox – make sure both the “Print Background Colors” and “Print Background Images” options are selected

Syncing: option to show lists that need to be synced in red text

There is a new option in the “Automatic Backup And Syncing” settings to “Highlight Unsynced”. With that feature turned on, lists that still need to be uploaded to Dropbox will be shown in red text on the main screen.

This should be useful to people who frequently use Paperless in areas with a poor wifi/cellular connection – as it will let you know if a list was unable to be uploaded. Then, once you’re somewhere with a good connection again, you can simply open Paperless and the list should automatically be uploaded (at that point the red text will change back to the normal colors).

Highlight Unsynced feature

Add an item or list via URL schemes

You can now add a list item or an entire list from certain other apps (like the popular app Drafts) by using URL schemes.

NOTE: in the examples below I’ve added spacing to make them easy to read… but in actual use you need to remove all spaces/returns.

To add a list item, the format of the URL scheme is:

paperless://addItem?
	itemName=YOUR_ITEM_NAME
	&itemNote=YOUR_ITEM_NOTE
	&toListNamed=YOUR_LIST_NAME

Both the item note and the list name are optional.

If you don’t specify a list name, the item will simply be added to the first list in Paperless. If you specify a list name that doesn’t exist, a new list will be created with that name.

To add an entire list, the format of the URL scheme is:

paperless://addList?
	listName=YOUR_LIST_NAME
	&isCheckList=YES
	&itemsToTop=YES
	&iconName=NAME_OF_ICON
	&listItems=ITEM_NAME1%0DITEM_NAME2%0DITEM_NAME3%0DITEM_NAME4

Everything but the list name is optional. Also note the %0D characters between each list item… that’s the equivalent of a carriage return. It looks complicated, but if you’re using something like Drafts, once you enter the URL scheme (or “URL Action”) it’s a breeze to use.

For those of you who use Drafts specifically, here are some possible URL Actions:

Item To Paperless

paperless://addItem?
	itemName=[[draft]]
	&toListNamed=Drafts

List To Paperless

paperless://addList?
	listName=Untitled
	&itemsToTop=YES
	&iconName=Folder%20-%20Add
	&listItems=[[draft]]

Checklist To Paperless

paperless://addList?
	listName=Untitled
	&isCheckList=YES
	&itemsToTop=YES
	&iconName=Folder%20-%20Add
	&listItems=[[draft]]

Named Checklist To Paperless (the first line of text is used for the list name)

paperless://addList?
	listName=[[title]]
	&isCheckList=YES
	&itemsToTop=YES
	&iconName=Folder%20-%20Add
	&listItems=[[body]]

See also: instructions on how to create a URL Action in Drafts.

Other improvements

  • new lists are now added to the top
  • improved search – if you search starting from the main screen, that search term is carried over into the list view
  • when using the “Import Items” feature, unnecessary dashes/bullet points are removed
  • fixed a rare but extremely frustrating problem on an iPad where the main screen of lists could be shown partially offscreen

I hope you find these new features useful!

Has it been 2 years already?

Today Paperless will reach $100,000 in revenue (since March 2010), with over 60,000 sales and over 146,000 downloads of the free version. It’s nowhere near as much as the huge runaway success stories in the app store – but it has been enough to keep me in business doing what I love.

It feels great to have created something that many people use every day – and to have generated that income completely on my own.

It’s not enough to sustain this business for the long term though. That $100,000 is before taxes are taken out, and I have a family to help take care of… so, for the past 8 months I’ve been working on another app that ties into my love of photography. I hope to release that within the next month or two.

To anyone who has purchased Paperless and helped support what I’m doing: THANK YOU!

More Fun With Siri Dictation

After figuring out how to use Siri dictation to quickly add items to a list in Paperless, I discovered some other commands it recognizes – based on this article about Dragon Dictation (a third party app for dictating text).

Here are the dictation commands that have worked for me with Siri.

Import ListFor Paperless users: If you’d like your very own “pocket guide to Siri dictation commands”, open this web page on your iOS device, then tap this link to import a list titled “Siri Dictation Commands” into Paperless.

Say this …

… to do this

new line move to the next line (like pressing “Return” on a keyboard)
new paragraph to start a new paragraph
cap to capitalize the next word

For example, saying:
I named my pet pig cap bacon

produces the text:
I named my pet pig Bacon

(interestingly, if you say “Kevin Bacon”, Bacon is automatically capitalized for you)

caps on … caps off to capitalize a section of text

For example, saying:
caps on twenty five ways to eat bacon caps off

produces the text:
25 Ways to Eat Bacon

all caps to make the next word all uppercase

For example, saying:
I am hungry feed me all caps now please

produces the text:
I am hungry feed me NOW please

all caps on … all caps off to make part of what you say uppercase

For example, saying:
I am hungry all caps on feed me now all caps off please

produces the text:
I am hungry FEED ME NOW please

no caps to make the next word lowercase

For example, saying:
I like no caps Mike

produces the text:
I like mike

no caps on … no caps off to make sure part of what you say is all lowercase

For example, saying:
Our friends no caps on Steve and Tina no caps off live in California

produces the text:
Our friends steve and tina live in California

space bar to prevent a hyphen from appearing in a normally hyphenated word

For example, saying:
This restaurant is first space bar class

prevents first-class from being hyphenated, and produces the text:
This restaurant is first class

no space to prevent a space between words

For example, saying:
This is the best no space tasting bacon ever

produces the text:
This is the besttasting bacon ever

no space on … no space off to prevent a section of text from having spaces between words

For example, saying:
This is no space on the best tasting bacon no space off ever

produces the text:
This is thebesttastingbacon ever

“period” or “full stop” to place a “.” at the end of a sentence
dot .

For example, saying:
The dot number pi is three dot one four

produces the text:
The.number pi is 3.14

(note the subtle difference between saying point and dotdot works between words)

point .

For example, saying:
The point number pi is three point one four

produces the text:
The point number pi 3.14

(note the subtle difference between saying point and dotdot works between words)

“ellipsis” or “dot dot dot”
comma ,
double comma ,,
“quote” or “quotation mark”

(although, if you need to place some text within quotation marks, using the “quote … end quote” commands may be more accurate)

“open single quote…close single quote” to place single quotes around a section of text

For example, saying:
Open single quote this is the best ice cream ever close single quote comma said Sally

produces the text:
‘this is the best ice cream ever’, said Sally

apostrophe

(although in many cases, apostrophes are automatically inserted, like when saying Sam’s new iPhone)

exclamation point !
inverted exclamation point ¡
question mark ?
inverted question mark ¿
ampersand &
asterisk *
open parenthesis (
close parenthesis )
open bracket [
close bracket ]
open brace {
close brace }
dash

For example, saying:
This dash is dash my dash cheese

produces the text:
This – is – my – cheese

(note the difference in spacing between this and when saying hyphen)

hyphen

For example, saying:
This hyphen is hyphen my hyphen cheese

produces the text:
This-is-my-cheese

(note the difference in spacing between this and when saying dash)

em dash
underscore _
plus sign +
minus sign
equals sign =
percent sign %
copyright sign ©
registered sign ®
section sign §
dollar sign $
cent sign ¢
euro sign
yen sign ¥
degree sign °
caret ^
at sign @
pound sterling sign £
pound sign #
greater than sign >
less than sign <
forward slash /
back slash
vertical bar |
“smiley” or “smiley face” or “smile face” 🙂
“frowny” or “frowny face” or “frown face” 🙁
“winky” or “winky face” or “wink face” 😉
e.g. (pronounced as “e g”) e.g.

For example, saying:
e g when you learn to ride a bike

produces the text:
E.g. when you learn to ride a bike

i.e. (pronounced as “i e”) i.e.

For example, saying:
i e when you learn to ride a bike

produces the text:
I.e. when you learn to ride a bike