By: Team F09-1
Welcome to the Coupon Stash User Guide! Thank you so much for choosing Coupon Stash, the world’s most popular command-line coupon management desktop application*!
This guide will help you get started quickly, providing useful tips and hints along the way.
*as of April 2020
Contents | Section Number |
---|---|
Introduction |
1 |
About This Document |
2 |
Quick Start |
3 |
User Interface |
4 |
Features
|
5 |
Keyboard Shortcuts
|
6 |
FAQ |
7 |
Command Summary |
8 |
Appendix |
9 |
Hi! I’m Stasher, the mascot of Coupon Stash. Together, we are going to save so much money! Let me guide you to use this wonderful application.
- 1. Introduction
- 2. About This Document
- 3. Quick Start
- 4. User Interface
- 5. Features
- 5.1. Adding a coupon:
add
- 5.2. Editing a coupon:
edit
- 5.3. Deleting a coupon:
delete
- 5.4. Listing coupons:
list
- 5.5. Using a coupon:
used
- 5.6. Viewing savings:
saved
- 5.7. Archiving a coupon:
archive
- 5.8. Unarchiving a coupon:
unarchive
- 5.9. Finding coupons by name:
find
- 5.10. Listing all expiring coupons:
expiring
- 5.11. Sorting coupons:
sort
- 5.12. Copying a coupon:
copy
- 5.13. Sharing a coupon:
share
- 5.14. Undoing the previous command:
undo
- 5.15. Redoing the undone command:
redo
- 5.16. Going to a month-year on the calendar:
goto
- 5.17. Expanding a coupon:
expand
- 5.18. Setting currency symbol:
setcurrency
- 5.19. Viewing help:
help
- 5.20. Clearing all entries:
clear
- 5.21. Exiting the program:
exit
- 5.22. Reminding of coupon expiry
- 5.23. Saving the data
- 5.1. Adding a coupon:
- 6. Keyboard Shortcuts
- 7. FAQ
- 8. Command Summary
- 9. Appendix
Coupon Stash is meant for School of Computing (SoC) students and staff who enjoy managing their coupons with a desktop command-line interface. It is optimised for efficient usage in this aspect, while still offering a sleek, beautiful Graphical User Interface (GUI).
Jump to the Quick Start section to get started now. We sincerely hope you enjoy using Coupon Stash!
This document introduces the features of Coupon Stash.
The following are symbols and formatting used in this document:
💡
|
Tips are used to describe small features or techniques that may come in handy when using Coupon Stash! |
|
Warnings bring your attention to certain practices that may have unintended consequences! |
ℹ️
|
Notes describe certain features or behaviour that may not be so obvious! |
Boxes like these contain useful information, for emphasis and easy reference!
-
Coupon Stash command words are formatted with
code blocks
.
-
Blue, underlined words are links! Try clicking on the link on the left!
-
Keyboard buttons are represented in a box, and used to represent certain shortcuts in Coupon Stash. For example, the Ctrl key, which is used for most shortcuts.
Getting started! Look no further! The simple steps below will get you up to speed on this program faster than a beetle!
-
Ensure you have Java (version 11 or above) installed in your Computer. Java is an application development platform and version 11 can be downloaded here.
-
Download the latest
CouponStash.jar
. -
Copy the file to the folder you want to use as the home folder for your Coupon Stash.
-
Double-click the file to start the app. The Graphical User Interface (GUI) should appear in a few seconds. If nothing occurs, use the command
java -jar CouponStash.jar
on your computer’s Command Line Interface (CLI) to open the file up. -
Type the command in the command box and press Enter to execute it.
-
Some example commands you can try:
-
add:
add n/Domino’s Pizza Extra Large s/40% p/ILOVEDOMINOS e/30-4-2020 l/5 t/pizza t/delivery
-
adds a coupon named Domino’s Pizza Extra Large to the Coupon Stash, with an expiry date of 30th April 2020, 40% savings with promo code ILOVEDOMINOS, and a limit of 5 usages.
-
-
used:
used 3
: marks the third coupon shown in the current list as used, and automatically archives it if the limit is reached -
saved:
saved
: displays how much you have saved from all coupons -
exit : exits the app (your data will be saved automatically)
-
-
Refer to the Features section below for the details of each command.
In this section, we look at the key features of Coupon Stash’s graphical user interface. The interface can be broadly split into 4 different parts: the different tabs present in the program (Coupons, Summary and Help), the calendar, the command input box and the command result box.
Tab selection determines the content shown in the main window of Coupon Stash.
The tabs can be switched by pressing Ctrl + Tab or by clicking on the tabs bar on the left side of the application with the name of the tab you want to switch to. The current selected tab will be highlighted with a bolder text, and a darker blue.
ℹ️
|
The tabs bar is visible on every single tab! It serves as a good visual reference to tell you which tab is currently being displayed. |
The following sections explain the different features of each tab of Coupon Stash, as well as how to use them.
When you first start Coupon Stash, the default selected tab is the coupons tabs. The coupons tab contains a visual overview of the coupons which you have added to the application.
The coupon card displays information about each coupon, and it is styled to look like a coupon itself!
Coupon Fields
-
Name: Shopee - Name of the coupon.
-
Promo Code: NEWUSER - Promo code required to use the coupon at the merchant.
-
Expiry Date: 31-10-2020 - Expiry date of the coupon.
-
Start Date: 01-01-2020 - Start date of when the coupon can be used.
-
Remind Date: 28-10-2020 - A reminder will pop up when Coupon Stash is opened on this date.
-
Usage: 1/2 - Number of times the coupon was used (1), and the number of times the coupon can be used (2).
-
T&C: New users only - Terms and Condition applied for the valid usage of the coupon.
-
Savings (blue box): $7.00, USB-C cable, iPhone case - Savings ($7) generated from the use of this coupon. USB-C Cable and iPhone Case are saveables; free items that come along with the use of this coupon.
-
Tags (orange label): newuser - Tags to categorize coupons.
-
Index (beside Tags): 1 - Index of the coupon on the displayed list. Used accordingly with some commands of Coupon Stash.
ℹ️
|
Duplicate coupons cannot exist in the active coupon list! Coupons are duplicates when they have the same name, promo code, expiry date and savings. |
The summary tab provides an overview of how much you have saved from using coupons in Coupon Stash.
This tab provides an estimate of all the savings you have accumulated, provided the coupon that resulted in those savings is still present in Coupon Stash (this includes archived coupons). This estimate is displayed in the form of a monetary amount at the top of the page, with saved items that may not be easily quantified displayed in a lime-green box at the side, preceded by the text "And these saveables too!".
Also, a graph that shows the monetary amount saved every week is also displayed in the summary tab. The next section will tell you more about how to interpret this graph.
The savings graph provides a bar chart which holds statistics on the amount of money saved per week. The taller the bar, the more savings earned that week. The exact amount is also shown in white text at the top of each bar.
In the graph, Monday is taken to be the first day of a week, and Sunday the last. The date displayed on the bottom axis corresponds to the first day of that week (Monday). Earlier weeks are displayed towards the left, while later weeks are displayed towards the right (direction of time axis is from left to right).
The graph is drawn based on the latest week in which coupon usage was recorded by Coupon Stash, and shows a maximum of 10 bars or 10 weeks of savings before that latest date.
💡
|
Any savings that were recorded by Coupon Stash before the time period of 10 weeks will not be shown in the graph. However, they can still be calculated using the saved command. |
ℹ️
|
Although the total monetary amount and saveables list in the summary tab is obtained by adding up all the savings from every coupon regardless of the date, the savings graph may not display every weeks' savings as it only displays up to a maximum of 10 weeks. |
The calendar provides you with an overview of all your coupon’s expiry dates within a month year. It reflects the expiry
dates of the list of coupons in the coupons tab
.
The calendar title indicates the current month year on display in the calendar .
The left and right arrows enable you to change the month year on display on the calendar. A click on the left and right arrows displays the previous month and the next month respectively.
💡
|
You may also change the month year on display using the goto
command!
|
The numbers on the calendar represent each date in the current month year on display in the calendar.
Some date cells are highlighted. The following are the meanings of the various highlights:
-
Blue highlight: Indicates the system’s date (usually today’s date)
-
Red highlight: Indicates expiring coupon(s) on that date
The command input box is the main way you will interact with Coupon Stash. Simply type in your commands and hit enter!
This section introduces the features of Coupon Stash. There are some examples
for you to try out in Coupon Stash too!
Also, take note of the general format of all the commands below!
Command Format
-
Words in UPPERCASE: parameters to be supplied by you (the user)
-
e.g.
add n/NAME
-
-
INDEX
: positive integer that specifies the index number shown in the displayed coupon list. The index must be a positive integer-
e.g. 1, 2, 3, …
-
-
NAME
is a parameter which can be used asadd n/The Deck Chicken Rice
-
Letter(s) followed by a
/
: prefixes to come before some parameters-
e.g.
n/NAME
-
n/
is the prefix for theNAME
parameter
-
-
Items in square brackets: optional
-
e.g
n/NAME [t/TAG]
-
Can be used as
n/The Deck Chicken Rice t/value
orn/The Deck Chicken Rice
-
-
Items with … after them: can be used multiple times (including zero times)
-
e.g.
[t/TAG]…
-
can be used as
t/pizza
,t/friend t/value
or not used at all etc.
-
-
Parameters can be in any order
-
e.g. specifying
n/NAME s/SAVINGS
is the same ass/SAVINGS n/NAME
-
-
Dates are all in the D-M-YYYY format (Coupon Stash date format)
-
D and M can be one or two digits, but YYYY has to be four digits
-
e.g.
1-1-2020
and01-01-2020
are valid dates
-
-
MonthYear are all in the M-YYYY format (Coupon Stash MonthYear format)
-
M can be one or two digits, but YYYY has to be four digits
-
e.g.
1-2020
and01-2020
are valid MonthYears
-
Adds a coupon. Some fields like name
, expiry date
and savings
are
required.
Optional fields like promo code
and tags
may be provided as well.
Format: add n/NAME e/EXPIRY_DATE s/SAVINGS_OR_FREE_ITEM [sd/START_DATE] [r/REMIND_DATE] [p/PROMO_CODE] [c/CONDITIONS] [u/USAGE] [l/USAGE_LIMIT] [s/EXTRA_FREE_ITEMS]… [t/TAG]…
💡
|
A coupon can have any number of tags (including 0) |
ℹ️
|
If unspecified, the default remind date of a coupon will be set to 3 days before the expiry date. Go to Section 5.22, “Reminding of coupon expiry” to learn more about remind dates. |
-
Coupons must have at least one "savings" value, whether it is a flat monetary amount (e.g. $1.00), a percentage (e.g. 10%) or an item. (e.g. Free Water Bottle)
-
Savings can be represented by multiple free items, but not multiple monetary amounts or percentage amounts.
-
Free item names cannot contain any numbers. (e.g. iPhone 11 is an invalid free item name as it contains the number 11)
-
Coupons cannot have both a monetary amount and a percentage amount.
-
To add more free items, use the same prefix as before!
Examples:
-
add n/McDonald’s McGriddles p/ILOVEMCGRIDDLES e/31-12-2020 s/$2 sd/1-4-2020 l/2 t/value t/savoury
Adds a new Coupon:
-
add n/Grabfood s/40% e/30-4-2020 p/GRAB40 t/delivery
Adds a new Coupon:
💡
|
If your coupon allows for unlimited usage, set the limit of the coupon to a
number less than 1! E.g. l/0
|
Edits an existing coupon in the coupon book.
Format: edit INDEX [n/NAME] [e/EXPIRY_DATE] [sd/START_DATE] [r/REMIND_DATE] [p/PROMO_CODE] [c/CONDITION] [l/USAGE_LIMIT] [s/SAVINGS_OR_FREE_ITEMS]… [t/TAG]…
-
Edits the coupon at the specified
INDEX
. -
At least one of the optional fields must be provided.
-
Existing values will be updated to the input values.
-
When editing tags, the existing tags of the coupon will be removed. (i.e adding of tags is not cumulative)
-
You can remove all of a coupon’s tags by typing
t/
without specifying any tags after it. -
When editing savings, just like tags, existing savings of the coupon will also be removed.
-
Usage cannot be edited.
ℹ️
|
Savings cannot be cleared in the same way as clearing tags, as a coupon must have at least 1 saving. |
ℹ️
|
Remind date cannot be removed or cleared. Go to Section 5.22, “Reminding of coupon expiry” to learn more about remind dates. |
Examples:
-
edit 1 s/50%
Edits the savings of the first coupon in the coupon list to be 50% off. -
edit 2 n/The Deck Nasi Ayam Hainan t/
Edits the name of the second coupon in the coupon list to be The Deck Nasi Ayam Hainan and clears all existing tags.
Deletes the specified coupon from the Coupon Stash.
Format: delete INDEX
-
Deletes the coupon at the specified
INDEX
.
Examples:
-
list
delete 2
Deletes the second coupon in the coupon list. -
find rice
delete 1
Deletes the first coupon in the resulting coupon list of the find command.
Shows a list of coupons in the Coupon Stash.
There are 3 types of lists:
-
List of active coupons
-
List of archived coupons
-
List of used coupons
ℹ️
|
This command will change the month year on display in the calendar to the system’s date (usually today’s date). |
Format: list [PREFIX]
-
PREFIX
can be eithera/
oru/
. -
Using
a/
lists all coupons that are archived, whileu/
lists all used coupons (including archived coupons at the end of the list).
ℹ️
|
PREFIX can be left blank to list all active coupons (coupons that are not fully used/ not archived (except for
coupon(s) that are unarchived on purpose)).
|
Examples:
-
list
Shows a list of all active coupons in Coupon Stash. -
list a/
Shows a list of all archived coupons in Coupon Stash. -
list u/
Shows a list of all used coupons in Coupon Stash.
Use a coupon if its usage has yet to reach its limit.
Requires an original amount of purchase if the coupon has savings in a
percentage value.
Format: used INDEX
or used INDEX MONETARY_AMOUNT
where MONETARY_AMOUNT
is a number prefixed by a user-defined currency
symbol e.g. ($4.50, where the currency symbol is "$").
-
Uses the coupon at the specified INDEX.
Examples:
-
used 1
Uses the first coupon in the coupon list. -
used 1 $10.0
Uses the first coupon in the coupon list, which also has a percentage savings. The total savings of the coupon will be calculated, and can be seen with the commandsaved
.
Shows you how much you have saved by using coupons in Coupon Stash. There are three ways to use this command:
-
If just the word "saved" is entered, the total savings accumulated since you started using Coupon Stash will be shown.
Format:
saved
-
If a specific date is given, Coupon Stash will show you savings earned only on that day.
Format:
saved d/DATE_TO_SHOW
-
If a start date and end date are given, Coupon Stash will show you the total savings accumulated over all the dates between that start date and end date, inclusive of those dates as well.
Format:
saved sd/START_DATE e/END_DATE
-
Dates are given in Coupon Stash date format, namely D-M-YYYY where D and M can be single or double digits.
-
Shows you a numeric value (e.g. 12.00 to represent twelve dollars/euros/pounds/pesos) that represents how much money you saved since a certain date, as well as certain items that you might have saved.
-
This value changes depending on which coupons were marked as used during the time period specified.
Examples:
-
saved d/1-3-2020
A message with your total savings and saveables saved on 1 March 2020 will be displayed in the Command Result Box. -
saved sd/1-5-2019 e/20-3-2020
A message with your total savings and saveables saved between 1 May 2019 and 20 March 2020 will be displayed in the Command Result Box.
Archives a coupon when you want to keep a record of it, without cluttering your current stash of coupons.
ℹ️
|
To view archived coupons, the user can run the
list a/ command to list all
archived coupons. Alternatively, the find command explained below will
search all archived coupons, thus displaying archives that match the supplied
keywords below unarchived coupons. Finally, the
expiring command will also
include all archived coupons that are expiring in its results.
Read the section on find and
expiring
respectively to find out more.
|
Format: archive INDEX
-
Archives the coupon at the specified INDEX.
Examples:
-
archive 1
Archives the first coupon in the coupon list.
💡
|
To keep your coupons more organized, Coupon Stash will automatically archive your coupons once their usage limit has been reached, or when they have expired. |
Unarchive a coupon, thus bringing it back to your active coupons list.
ℹ️
|
To unarchive a coupon, you have to make sure that the archived coupon is
visible in the Coupon Stash first. Read the section on the
archive command to find out the ways that
you can display archived coupons.
|
Format: unarchive INDEX
-
Unarchive the coupon at the specified INDEX.
Examples:
-
unarchive 1
Unarchive the first coupon in the coupon list.
Find coupon(s) whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]…
-
The search is case insensitive. e.g mALa will match Mala.
-
The order of the keywords does not matter. e.g. Rice Chicken will match Chicken Rice.
-
Only full words will be matched e.g. Chicken will not match Chickens.
-
Coupons matching at least one keyword will be returned. e.g. Chicken Rice will return Duck Rice, Chicken Chop.
💡
|
For easy finding of coupons, include the store or brand name in your coupon name! |
Examples:
-
find ken
For example, coupons with the keyword ken would be returned:
Ken Kitchen, KEN RIDGE Optical, ken you build a snowman.
Shows a list of all your coupons expiring on a date or during a month year.
ℹ️
|
This command will change the month year on display in the calendar to the month year of specified
expiry date or month year. For example, expiring e/30-9-2020 & expiring my/9-2020 both changes the month year on display in the
calendar to September 2020.
|
Format: expiring e/EXPIRY_DATE
or expiring my/MONTH_YEAR
-
Lists all coupons that are expiring on the specified expiry date or during the specified month year.
-
The expiry date or month year must follow the Coupon Stash date format or the Coupon Stash MonthYear format respectively.
Examples:
-
expiring e/30-9-2020
Shows you all the coupons that expire on 30 September 2020. -
expiring my/9-2020
Shows you all the coupons that expire during September 2020.
ℹ️
|
The expiring command will include archived
coupons in its results too. Coupons that are expiring in the archives are
displayed below the non-archived matches.
|
Sorts the coupons in Coupon Stash in ascending order. It is possible to sort by coupon name, expiry date, or remind date.
|
When you edit or
add a coupon, the sorting order will revert to
the original order. Otherwise, the sorting order will persist throughout the
runtime of the program.
|
ℹ️
|
The command will sort any coupons currently on screen, including archived coupons, if they are present on screen. Archived coupons will always appear below active coupons. |
Format: sort PREFIX
-
The
PREFIX
can be eithern/
,e/
orr/
. -
Using
n/
would mean sorting by name,e/
would mean sorting by expiry date, andr/
would mean sorting by reminder date.
Examples:
-
sort n/
Sorts the Coupon Stash by name in ascending order. -
sort e/
Sorts the Coupon Stash by expiry date from earliest to latest. -
sort r/
Sorts the Coupon Stash by reminder date from earliest to latest.
Copies a coupon as an add
command to your
clipboard so that you can easily share it with your friends/family!
Format: copy INDEX
-
Copies the coupon at the specified INDEX.
-
The
add
command of the coupon will be copied to your clipboard. Simply Ctrl + V to paste it! (Cmd + V for macOS) -
Statistics like number of times used or amount of savings accumulated will not be copied.
-
The copied
add
command will only contain the following fields:-
Name
-
Savings
-
Expiry Date
-
Limit
-
Promo Code (if any)
-
Condition (if any)
-
Below is a short demonstration of the copy
command:
Examples:
Shares a coupon as a .png
image file (portable network graphic).
Now you can post your coupons on your social media platforms like Instagram!
Format: share INDEX
-
Shares the coupon at the specified INDEX.
-
A message with the file path to the
.png
file will be displayed in the Command Result Box.
|
Image generated will have an index of 1 regardless of its true index! Below is a sample of how a shared coupon image looks like: |
|
Do not try entering this command with MAX_INT value as INDEX.
This may lead to a bug.
|
Examples:
Undo the most recent operation on the Coupon Stash. Only operations that change the coupons in the Coupon Stash can be undone.
Format: undo
ℹ️
|
Changes to user preferences, such as the setting of the currency symbol, cannot be undone. |
|
You can only undo commands which you have input since you opened Coupon Stash. This means that after you close the application, your undo history will be lost! |
Examples:
Redo the previously undone operation. This is akin to undoing an
undo
.
Format: redo
Examples:
-
edit 1 r/ 25-12-2020
undo
redo
Un-undo theedit
command. Remind date of first coupon that was in the resulting coupon list is edited. -
delete 1
undo
redo
Un-undo the delete
command. First coupon that
was in the resulting coupon list is deleted.
Goes to the specified month and year on the calendar by changing the month year on display.
Format: goto my/MONTH_YEAR
Example:
-
goto my/12-2020
Goes to December 2020 on the calendar by changing the month year on display to December 2020.
Displays a coupon in its own window, giving you a complete expanded view of it.
Format: expand INDEX
-
Expands the coupon at the specified INDEX.
Examples:
-
expand 1
Opens the first coupon in the coupon list in a new window.
Sets the currency symbol used in Coupon Stash. This will force Coupon Stash to reload all coupons to use the new symbol instead.
-
The currency symbol may affect the visual look of the program, as well as modify commands entered!
-
For example, adding a coupon with savings of a certain monetary amount will require you to use the new symbol instead.
Format: setcurrency ms/NEW_MONEY_SYMBOL
Examples:
-
setcurrency ms/€
Sets the money symbol used in commands, as well as to display coupons' savings, to € (Euro). The changes will be visible immediately.
Open a browser window that accesses an offline copy of this user guide.
|
First run of this command may take some time as the program needs to extract an offline copy of the document. |
Format: help
Deletes every single coupon in Coupon Stash. This
includes archived and non-archived coupons!
Format: clear
💡
|
If you clear your Coupon Stash on accident, you can
use undo to restore
your Coupons! Just make sure you don’t close the application
immediately after you cleared your Coupons.
|
This command immediately exits the program when entered.
When you exit the program, all coupon data is saved to
your computer.
Format: exit
ℹ️
|
There are many ways of exiting the program! One other way is to click the cross at the top of the application (position of this cross button differs depending on operating system). |
By default, all added coupons have a remind date that is 3 days before its stated expiry date. This default value can be changed during the process of adding a new coupon or by editing an existing coupon. The remind dates for all coupons are checked on program launch. All coupons that have a remind date which falls on the date of program launch will be listed in a popup window on launch. The popup window can be closed by pressing Ctrl + q.
|
Remind dates are only checked during program launch. Thus, if a day passes while the program is open, even if there are coupons expiring on the new day, no new reminder window will open. |
As of now, there is no functionality for the disabling of reminders for coupons. This feature will be made available in version 2.0.
-
The format of dates entered via the
r/
field is in the D-M-YYYY format. (Coupon Stash date format)
Examples:
-
add n/McDonald’s McGriddles p/ILOVEMCGRIDDLES e/31-12-2020 s/$2 sd/1-4-2020 l/2 t/value t/savoury
Add a new Coupon without specifying a remind date. Note that the default remind date is 3 days before the state expiry date:
-
add n/Grabfood s/40% e/30-4-2020 p/GRAB40 t/delivery r/10-4-2020
Add a new Coupon while specifying a remind date of
10-04-2020
:
-
edit 1 r/10-4-2020
Edit the coupon at index 1 and change its remind date to
10-4-2020
.
With Coupon Stash being optimized for efficient command line usage, how can we not include some nifty keyboard shortcuts to further streamline your workflow! This section introduces some of the keyboard shortcuts available for use in this program.
Pressing the ↑ keyboard button while the focus is on the command box allows you to restore the text of the previous executed command. Pressing the ↓ keyboard button allows you to revert to a more recently entered command.
Demonstration:
After expanding
a coupon, you can close
the expanded coupon window by keeping the focus on the coupon window and
pressing the keyboard buttons Ctrl and q simultaneously. This
shortcut also works for closing reminder
windows.
Demonstration: during the process of adding .Animation of closing window with Ctrl+q. image::gifs/ctrl q.gif[]
Q: How do I transfer my data to another computer?
A: Simply install Stash in the other computer and overwrite the empty data
file with your intended data file.
Q: Can I add multiple coupons using a command line?
A: Sorry, not at the moment. We may consider adding this feature in version
2.0.0.
Q : Why do I need to tag my coupons?
A : Tagging is not compulsory. However, it allows you to group similar
coupons together for easier identification. For example, you can easily
identify all the coupons that are tagged "cheap", as these tags are
displayed in bright orange at the top of each coupon.
Do refer to section 4.1.1 for more details about the coupon card.
Q : How do I store coupons with no expiry date?
A : Sorry, at the moment, coupon entries with no expiry date cannot be
stored. You would need to enter a much further date like 1-1-2030. To
be added in version 2.0.0
Q : How do you calculate the savings value?
A : Whenever a coupon is marked as used, Coupon Stash will automatically
calculate the values saved based on the details of the coupon. You
can use the saved command to view the amount saved.
Q : What animal is Stasher?
A : Stasher is a beetle that loves discounts and hot deals!
Beetles are resourceful insects that know how to scavenge for
the best coupons, as well as remember these coupons safely
inside their tough exoskeleton and elytra.
This section has a summary of all the commands.
Action | Format |
---|---|
Add |
|
Edit |
|
Delete |
|
List |
|
Find |
|
Sort |
|
Expiring |
|
Used |
|
Saved |
saved d/DATE_TO_TRACK_FROM |
Archive |
|
Unarchive |
|
Copy |
|
Share |
|
Undo |
|
Redo |
|
Goto |
|
Expand |
|
SetCurrency |
|
Help |
|
Clear |
|
Exit |
|
This section talks about features that have not been implemented in Coupon Stash yet, but features that the developers are keen to add in upcoming versions.
Query expressions serve to enable users to perform efficient batch operations on stored coupons using SQL-like syntax.
Examples:
-
edit favorites set tag=hated where expiry < 19-2-2020
For all coupons tagged asfavorites'', set their tag to
hated'' if they expire before the 19th Feb 2020. -
delete favorites where expiry < 19-2-2020
For all coupons tagged as ``favorites'', delete them if they expire before the 19th Feb 2020.
Format: edit tag set field1=value1, field2=value2, … [where
condition]
-
The
edit
keyword is compulsory.-
If selecting all tags, put tag as
*
.
-
-
The
set
keyword is compulsory.-
If the field is present in a coupon, update the value, else create the field and value.
-
At least 1 field must be updated/added per edit operation.
-
-
The
where
keyword is optional.-
The
==
,>=
,⇐
,>
,<
,!=
, operators are supported in the condition. -
Only default fields can be compared.
-
Condition syntax:
DEFAULT_FIELD operator LITERAL_VALUE
-
AND
/OR
functionality is not available.
-
Version 2.0 will bring new features like confirmation of coupons before they are deleted!
Also, a "recycle bin" is in the works for version 3.0, similar to the Recycle Bin in Microsoft Windows.
Format: delete tag [where condition]
-
The
delete
keyword is compulsory.-
If selecting all tags, put tag as
*
.
-
-
The
where
keyword is optional.-
If the
where
keyword is omitted, deletes all coupons with that tag. -
Follows syntax explained above.
-