Adds NewsFax to Mac + Mac MAS

This commit is contained in:
Stuart Breckenridge 2022-02-05 07:04:55 +08:00
parent 0d2d39b89c
commit bac74ad90f
5 changed files with 816 additions and 0 deletions

View File

@ -853,6 +853,8 @@
D5F4EDB720074D6500B9E363 /* WebFeed+Scriptability.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5F4EDB620074D6500B9E363 /* WebFeed+Scriptability.swift */; };
D5F4EDB920074D7C00B9E363 /* Folder+Scriptability.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5F4EDB820074D7C00B9E363 /* Folder+Scriptability.swift */; };
DD82AB0A231003F6002269DF /* SharingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD82AB09231003F6002269DF /* SharingTests.swift */; };
DFD6AACE27ADE86E00463FAD /* NewsFax.nnwtheme in Resources */ = {isa = PBXBuildFile; fileRef = DFD6AACD27ADE86E00463FAD /* NewsFax.nnwtheme */; };
DFD6AACF27ADE86E00463FAD /* NewsFax.nnwtheme in Resources */ = {isa = PBXBuildFile; fileRef = DFD6AACD27ADE86E00463FAD /* NewsFax.nnwtheme */; };
FF3ABF13232599810074C542 /* ArticleSorterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF3ABF09232599450074C542 /* ArticleSorterTests.swift */; };
FF3ABF1523259DDB0074C542 /* ArticleSorter.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF3ABF1423259DDB0074C542 /* ArticleSorter.swift */; };
FF3ABF162325AF5D0074C542 /* ArticleSorter.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF3ABF1423259DDB0074C542 /* ArticleSorter.swift */; };
@ -1593,6 +1595,7 @@
D5F4EDB620074D6500B9E363 /* WebFeed+Scriptability.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WebFeed+Scriptability.swift"; sourceTree = "<group>"; };
D5F4EDB820074D7C00B9E363 /* Folder+Scriptability.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Folder+Scriptability.swift"; sourceTree = "<group>"; };
DD82AB09231003F6002269DF /* SharingTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SharingTests.swift; sourceTree = "<group>"; };
DFD6AACD27ADE86E00463FAD /* NewsFax.nnwtheme */ = {isa = PBXFileReference; lastKnownFileType = wrapper; path = NewsFax.nnwtheme; sourceTree = "<group>"; };
FF3ABF09232599450074C542 /* ArticleSorterTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArticleSorterTests.swift; sourceTree = "<group>"; };
FF3ABF1423259DDB0074C542 /* ArticleSorter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArticleSorter.swift; sourceTree = "<group>"; };
FFD43E372340F320009E5CA3 /* MarkAsReadAlertController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MarkAsReadAlertController.swift; sourceTree = "<group>"; };
@ -1860,6 +1863,7 @@
511D43CE231FA51100FB1562 /* Resources */ = {
isa = PBXGroup;
children = (
DFD6AACD27ADE86E00463FAD /* NewsFax.nnwtheme */,
51DEE81126FB9233006DAA56 /* Appanoose.nnwtheme */,
51077C5327A86C9E000C71DB /* Hyperlegible.nnwtheme */,
51DEE81726FBFF84006DAA56 /* Promenade.nnwtheme */,
@ -3391,6 +3395,7 @@
65ED405F235DEF6C0081F399 /* Preferences.storyboard in Resources */,
65ED4061235DEF6C0081F399 /* Assets.xcassets in Resources */,
65ED4063235DEF6C0081F399 /* RenameSheet.xib in Resources */,
DFD6AACF27ADE86E00463FAD /* NewsFax.nnwtheme in Resources */,
65ED4064235DEF6C0081F399 /* AddFolderSheet.xib in Resources */,
65ED4065235DEF6C0081F399 /* AccountsFeedbin.xib in Resources */,
65ED4066235DEF6C0081F399 /* TimelineTableView.xib in Resources */,
@ -3502,6 +3507,7 @@
8405DDA222168920008CE1BF /* TimelineTableView.xib in Resources */,
B528F81E23333C7E00E735DD /* page.html in Resources */,
8483630E2262A3FE00DA1D35 /* MainWindow.storyboard in Resources */,
DFD6AACE27ADE86E00463FAD /* NewsFax.nnwtheme in Resources */,
3B826DCB2385C84800FC1ADB /* AccountsFeedWrangler.xib in Resources */,
55E15BCB229D65A900D6602A /* AccountsReaderAPI.xib in Resources */,
49F40DF82335B71000552BF4 /* newsfoot.js in Resources */,

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Name</key>
<string>NewsFax</string>
<key>ThemeIdentifier</key>
<string>com.mynameisstuart.themes.newsfax</string>
<key>CreatorHomePage</key>
<string>https://mynameisstuart.com/</string>
<key>CreatorName</key>
<string>Stuart Breckenridge</string>
<key>Version</key>
<integer>1</integer>
</dict>
</plist>

View File

@ -0,0 +1,19 @@
The NewsFax themes uses the ModeSeven font throughout, which is available as Freeware.
Find out more [here](https://www.fontspace.com/modeseven-font-f2369).
ModeSeven is based on the bitmap font in Teletext televisions,
1980s-vintage Videotext terminals (such as the Prestel system used in
the UK), and the BBC Micro computer. (The name derives from the BBC
Micro screen mode which used the teletext character generator.)
This font looks "natural" at a size of 20 pixels, or any multiple thereof.
However, it has been hinted as to scale as well as an ex-bitmap font
can be expected to.
This font was created by hand with Fontographer 4.1.2 on a Macintosh.
The character definitions were worked out from a bitmap version of the
Teletext font created by James Fidell, and included in xbeeb (a BBC
Micro emulator for UNIX/X11). The spacing of the original has been
preserved, which is why many character shapes are aligned to the right
of their cells.

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,90 @@
<!-- Template Variables
title: The title of the article
preferred_link: The best link to associate with the article for linking out.
external_link_label: A localized label for the external link.
external_link_stripped: The external link minus the scheme. Useful for displaying the external link.
external_link: The external link of the article if there is one provided by the author.
feed_link_title: The name of the feed associated with this article.
feed_link: The URL of the feed associated with this article.
byline: HTML that combines all the authors and links to them if available.
avatar_src: The image source URL for the feed icon / avatar.
dateline_style: Either "articleDateline" or "articleDatelineTitle" depending on if the title was populated or not.
datetime_long: Long version of a combined publish date and time.
datetime_medium: Medium length version of a combined publish date and time.
datetime_short: Short version of a combined publish date and time.
date_long: Long version of the publish date.
date_medium: Medium version of the publish date.
date_short: Long version of the publish date.
time_long: Long version of the publish time.
time_medium: Medium version of the publish time.
time_short: Long version of the publish time.
text_size_class: The size class that the user has selected in Preferences for article text.
body: The body of the article.
-->
<div class="feedHeader">
<table width="100%">
<tr>
<th class="newsfax" align="left">NEWSFAX</th>
<th class="newsfax-page" align="left"></th>
<th></th>
<th align="right">[[datetime_short]]</th>
</tr>
</table>
<div class="articleTitle">
<h1><a href="[[preferred_link]]">[[title]]</a></h1>
</div>
<div><a href="[[feed_link]]">[[feed_link_title]]</a></div>
<div>[[byline]]</div>
</div>
<hr />
<article>
<div id="bodyContainer" class="articleBody [[text_size_class]]">[[body]]</div>
<div class="externalLink"><a href="[[external_link]]">[[external_link]]</a></div>
<table class="newsfax-footer" width="100%">
<tr>
<th class="newsfax-footer-cell-red"><a href="https://duckduckgo.com/?q=news&t=h_&iar=news&ia=news">Headlines</a></th>
<th class="newsfax-footer-cell-green"><a href="https://duckduckgo.com/?q=sports+news&t=h_&ia=web">Sport</a></th>
<th class="newsfax-footer-cell-yellow"><a href="https://duckduckgo.com/?q=local+tv&t=h_&ia=places">TV<a></th>
<th class="newsfax-footer-cell-blue"><a href="[[feed_link]]">Website</a></th>
</tr>
</table>
</article>
<script type="text/javascript">
/* Generate a random Newsfax page number */
function getRandomIntInclusive(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min + 1) + min); //The maximum is inclusive and the minimum is inclusive
}
let random = getRandomIntInclusive(100, 999);
let newsFaxElement = document.body.getElementsByClassName('newsfax-page')[0];
newsFaxElement.innerHTML = "P" + random;
/*
The arrow-circle-right SVG is provided by Font Awesome under the Creative Commons Attribution 4.0 International License.
For more details view the license here: https://fontawesome.com/license
*/
let externalLinkElement = document.body.getElementsByClassName('externalLink')[0].querySelectorAll('a')[0];
if (externalLinkElement.innerText != '') {
let host = externalLinkElement.hostname;
externalLinkElement.innerHTML = host + " " + '->';
}
</script>