DICTIONARY

Dictionary
VARIABLES
Set variable
Shortcut Settings
to
Dictionary
DOCUMENTS
Create Folder
Path
[{'value': '/Shortcuts/', 'class': 'text'}, {'class': 'magic', 'value': 'Shortcut Settings', 'glyph': 'assets/cat/Variable.svg', 'UUID': ''}, {'value': '/', 'class': 'text'}]
DOCUMENTS
Get File
File Path
/Shortcuts/example.txt

File
SCRIPTING
If
File
does not have any value
SCRIPTING
Ask
How many articles (per feed) should the shortcut fetch?

Provided Input
DICTIONARY

Dictionary
LIST

List
SCRIPTING
Choose from
List
Prompt
What should happen to articles after being read?

Chosen Item
TEXT
Match
(Delete|Mark|nothing)
in
Chosen Item

Matches
SCRIPTING
Set
After Read
to
Matches
in
Dictionary

Dictionary
SCRIPTING
Choose from Menu

Menu Result
SCRIPTING
Once a week

Menu Result
NUMBER
10080

Number
SCRIPTING
Once every 24 hours

Menu Result
NUMBER
1440

Number
SCRIPTING
Once every hour

Menu Result
NUMBER
60

Number
SCRIPTING
Once every 30 minutes

Menu Result
NUMBER
30

Number
SCRIPTING
Custom

Menu Result
SCRIPTING
Ask
How many MINUTES between refreshes?

Provided Input
SCRIPTING
Only manually

Menu Result
COMMENT
Let's just set 100 years (hrs = 100*365*24*60) between auto updates... makes it a little easier ... if you still have this running as-is in a 100 years, hats off to you 🎩
NUMBER
52560000

Number
SCRIPTING
End Menu

Menu Result
SCRIPTING
Set
Update frequency
to
Menu Result
in
Dictionary

Dictionary
TEXT
{
"The Verge - Apple": "https://www.theverge.com/rss/apple/index.xml",
"Six Colors": "http://feedpress.me/sixcolors?type=xml",
"MacStories": "https://www.macstories.net/feed/",
"Daring Fireball": "https://daringfireball.net/feeds/main",
"MacRumors": "http://feeds.macrumors.com/MacRumors-All",
"512 Pixels": "http://feedpress.me/512pixels",
"9to5Mac": "https://9to5mac.com/feed",
"Macworld": "http://www.macworld.com/index.rss",
"iMore": "http://www.imore.com/feed",
"Cult of Mac": "https://www.cultofmac.com/feed/"
}

Text
SCRIPTING
Set
Feeds
to
Default Feed Dictionary
in
Dictionary

Dictionary
DOCUMENTS
Save
Dictionary
Destination Path
[{'value': '/Shortcuts/', 'class': 'text'}, {'class': 'magic', 'value': 'Shortcut Settings', 'glyph': 'assets/cat/Variable.svg', 'UUID': ''}, {'value': '/Settings.json', 'class': 'text'}]Overwrite If File Exists

Saved File
SCRIPTING
End If

If Result
SCRIPTING
Get dictionary from
If Result

Dictionary
VARIABLES
Set variable
Settings
to
Dictionary
SCRIPTING
If
Shortcut Input
does not have any value
SCRIPTING
Get
Value
for
Last Update
in
Settings

Dictionary Value
SCRIPTING
Otherwise
DOCUMENTS
Get File
File Path
/Shortcuts/example.txt

File
SCRIPTING
If
File
has any value
DOCUMENTS
SCRIPTING
End If

If Result
SCRIPTING
End If

If Result
DOCUMENTS
Get File
File Path
/Shortcuts/example.txt

File
SCRIPTING
If
File
does not have any value
SCRIPTING
Get
Value
for
Last Update
in
Settings

Dictionary Value
SCRIPTING
If
Dictionary Value
has any value
NOTIFICATIONS
Show notification
Input
Options Under Construction
SCRIPTING
Otherwise
NOTIFICATIONS
Show notification
Input
Options Under Construction
SCRIPTING
End If

If Result
SCRIPTING
Set
Last Update
to
Current Date
in
Dictionary

Dictionary
VARIABLES
Set variable
Settings
to
Dictionary
DOCUMENTS
Save
Settings
Destination Path
[{'value': '/Shortcuts/', 'class': 'text'}, {'class': 'magic', 'value': 'Shortcut Settings', 'glyph': 'assets/cat/Variable.svg', 'UUID': ''}, {'value': '/Settings.json', 'class': 'text'}]Overwrite If File Exists

Saved File
VARIABLES
Set variable
RSS Feeds
to
Settings
COMMENT
Enter comment...
DICTIONARY

Dictionary
VARIABLES
Set variable
Articles
to
Dictionary
DOCUMENTS
Get File
File Path
/Shortcuts/example.txt

File
SCRIPTING
Get
All Keys
in
RSS Feeds

Dictionary Value
SCRIPTING
Repeat with each item in
All Keys

Repeat Results
SCRIPTING
Get
Value
for
Repeat Item
in
RSS Feeds

Dictionary Value
WEB
Get
Settings
from
Dictionary Value

Items from RSS Feed
SCRIPTING
Repeat with each item in
Items from RSS Feed

Repeat Results
DOCUMENTS
Replace
(\(|\)|\^|\$|\[|\]|\\|\.|\||\+|\?|\*)
with
\\$1
in
Repeat Item 2

Updated Text
TEXT
Match
Regex Ready URL
in
File

Matches
SCRIPTING
Get
Value
for
After Read
in
Settings

Dictionary Value
SCRIPTING
If
Matches
has any value
SCRIPTING
If
After Read
is
Mark
TEXT
✅

Text
SCRIPTING
Otherwise
TEXT
Text

Text
SCRIPTING
End If

If Result
SCRIPTING
Otherwise
TEXT
Text

Text
SCRIPTING
End If

If Result

Text
SCRIPTING
If
Matches
has any value
SCRIPTING
If
After Read
is
Delete
NOTHING
Nothing
SCRIPTING
Otherwise
TEXT
Text

Text
SCRIPTING
End If

If Result
SCRIPTING
Otherwise
TEXT
Text

Text
SCRIPTING
End If

If Result
SCRIPTING
End Repeat

Repeat Results
SCRIPTING
End Repeat

Repeat Results
TEXT
BEGIN:VCARD
VERSION:3.0
N:❌ Close
NICKNAME:50000000000000
ORG:
END:VCARD
BEGIN:VCARD
VERSION:3.0
N:🔄 Update Articles
NICKNAME:30000000000000
ORG:
END:VCARD
BEGIN:VCARD
VERSION:3.0
N:⚙️ Settings
NICKNAME:40000000000000
ORG:
END:VCARD

Text
SCRIPTING
Set name of
Combined Text
to
Articles.vcf

Renamed Item
DOCUMENTS
Save
Renamed Item
Destination Path
[{'value': '/Shortcuts/', 'class': 'text'}, {'class': 'magic', 'value': 'Shortcut Settings', 'glyph': 'assets/cat/Variable.svg', 'UUID': ''}]Overwrite If File Exists

Saved File
SCRIPTING
End If

If Result
VARIABLES
Set variable
Menu
to
If Result
CONTACTS

Contacts
SCRIPTING
Get
Value
for
Last Update
in
Settings

Dictionary Value
TEXT
What would you like to read?
Last updated
Dictionary Value

Text
SCRIPTING
Choose from
Contacts
Prompt
[{'class': 'magic', 'value': 'Text', 'glyph': '', 'UUID': '211EDCC1-E704-456A-A061-7D176841C0E4'}]

Chosen Item
VARIABLES
Set variable
Chosen Action
to
Chosen Item
SCRIPTING
Otherwise
CONTACTS
Get contacts from
Shortcut Input

Contacts