Upgraded to Gradle 7.1.
This commit is contained in:
parent
4c4f7da0da
commit
eb14e72255
20 changed files with 139 additions and 48 deletions
10
.idea/codeStyles/Project.xml
generated
Normal file
10
.idea/codeStyles/Project.xml
generated
Normal file
|
@ -0,0 +1,10 @@
|
|||
<component name="ProjectCodeStyleConfiguration">
|
||||
<code_scheme name="Project" version="173">
|
||||
<JetCodeStyleSettings>
|
||||
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
|
||||
</JetCodeStyleSettings>
|
||||
<codeStyleSettings language="kotlin">
|
||||
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
|
||||
</codeStyleSettings>
|
||||
</code_scheme>
|
||||
</component>
|
5
.idea/codeStyles/codeStyleConfig.xml
generated
Normal file
5
.idea/codeStyles/codeStyleConfig.xml
generated
Normal file
|
@ -0,0 +1,5 @@
|
|||
<component name="ProjectCodeStyleConfiguration">
|
||||
<state>
|
||||
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
|
||||
</state>
|
||||
</component>
|
10
.idea/jarRepositories.xml
generated
10
.idea/jarRepositories.xml
generated
|
@ -21,5 +21,15 @@
|
|||
<option name="name" value="MavenLocal" />
|
||||
<option name="url" value="file:$MAVEN_REPOSITORY$/" />
|
||||
</remote-repository>
|
||||
<remote-repository>
|
||||
<option name="id" value="MavenRepo" />
|
||||
<option name="name" value="MavenRepo" />
|
||||
<option name="url" value="https://repo.maven.apache.org/maven2/" />
|
||||
</remote-repository>
|
||||
<remote-repository>
|
||||
<option name="id" value="maven" />
|
||||
<option name="name" value="maven" />
|
||||
<option name="url" value="https://oss.sonatype.org/content/repositories/snapshots" />
|
||||
</remote-repository>
|
||||
</component>
|
||||
</project>
|
65
.idea/libraries-with-intellij-classes.xml
generated
Normal file
65
.idea/libraries-with-intellij-classes.xml
generated
Normal file
|
@ -0,0 +1,65 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="libraries-with-intellij-classes">
|
||||
<option name="intellijApiContainingLibraries">
|
||||
<list>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="ideaIU" />
|
||||
<option name="groupId" value="com.jetbrains.intellij.idea" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="ideaIU" />
|
||||
<option name="groupId" value="com.jetbrains" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="ideaIC" />
|
||||
<option name="groupId" value="com.jetbrains.intellij.idea" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="ideaIC" />
|
||||
<option name="groupId" value="com.jetbrains" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="pycharmPY" />
|
||||
<option name="groupId" value="com.jetbrains.intellij.pycharm" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="pycharmPY" />
|
||||
<option name="groupId" value="com.jetbrains" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="pycharmPC" />
|
||||
<option name="groupId" value="com.jetbrains.intellij.pycharm" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="pycharmPC" />
|
||||
<option name="groupId" value="com.jetbrains" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="clion" />
|
||||
<option name="groupId" value="com.jetbrains.intellij.clion" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="clion" />
|
||||
<option name="groupId" value="com.jetbrains" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="riderRD" />
|
||||
<option name="groupId" value="com.jetbrains.intellij.rider" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="riderRD" />
|
||||
<option name="groupId" value="com.jetbrains" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="goland" />
|
||||
<option name="groupId" value="com.jetbrains.intellij.goland" />
|
||||
</LibraryCoordinatesState>
|
||||
<LibraryCoordinatesState>
|
||||
<option name="artifactId" value="goland" />
|
||||
<option name="groupId" value="com.jetbrains" />
|
||||
</LibraryCoordinatesState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
2
.idea/misc.xml
generated
2
.idea/misc.xml
generated
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_14" default="false" project-jdk-name="14" project-jdk-type="JavaSDK" />
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="15" project-jdk-type="JavaSDK" />
|
||||
</project>
|
|
@ -2,8 +2,7 @@ import org.jetbrains.dokka.gradle.DokkaTask
|
|||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
|
||||
import org.gradle.api.tasks.testing.logging.TestLogEvent
|
||||
import java.io.FileInputStream
|
||||
import java.util.*
|
||||
|
||||
|
||||
plugins {
|
||||
id("com.github.ben-manes.versions") version "0.39.0"
|
||||
|
@ -91,8 +90,8 @@ tasks {
|
|||
jacocoTestReport {
|
||||
dependsOn(test)
|
||||
reports {
|
||||
xml.isEnabled = true
|
||||
html.isEnabled = true
|
||||
xml.required.set(true)
|
||||
html.required.set(true)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -22,12 +22,12 @@ application {
|
|||
|
||||
tasks {
|
||||
named<JavaExec>("run") {
|
||||
args = listOf("${project.projectDir}/example.html")
|
||||
args = listOf("${project.projectDir}/example.html")
|
||||
}
|
||||
|
||||
register<JavaExec>("runJava") {
|
||||
group = "application"
|
||||
main = "com.example.ReadingTimeSample"
|
||||
mainClass.set("com.example.ReadingTimeSample")
|
||||
classpath = sourceSets.main.get().runtimeClasspath
|
||||
args = listOf("${project.projectDir}/example.html")
|
||||
}
|
||||
|
|
BIN
examples/gradle/wrapper/gradle-wrapper.jar
vendored
BIN
examples/gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
|
@ -1,5 +1,5 @@
|
|||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.1-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
|
2
examples/gradlew
vendored
2
examples/gradlew
vendored
|
@ -72,7 +72,7 @@ case "`uname`" in
|
|||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
MSYS* | MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
NONSTOP* )
|
||||
|
|
|
@ -16,8 +16,8 @@ public class ReadingTimeSample {
|
|||
rt.setPlural("minutes to read");
|
||||
|
||||
System.out.println("It will take " + rt.calcReadingTime() + ' ' + ReadingTime.wordCount(rt.getText())
|
||||
+ " words and " + ReadingTime.imgCount(rt.getText()) + " images at " + rt.getWpm()
|
||||
+ " words per minute.");
|
||||
+ " words and " + ReadingTime.imgCount(rt.getText()) + " images at " + rt.getWpm()
|
||||
+ " words per minute.");
|
||||
} catch (IOException e) {
|
||||
System.err.println("The file could not be read or found.");
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ fun main(args: Array<String>) {
|
|||
|
||||
println(
|
||||
"It will take ${rt.calcReadingTime()} ${ReadingTime.wordCount(rt.text)} words and " +
|
||||
"${ReadingTime.imgCount(rt.text)} images at ${rt.wpm} words per minute."
|
||||
"${ReadingTime.imgCount(rt.text)} images at ${rt.wpm} words per minute."
|
||||
)
|
||||
} else {
|
||||
System.err.println("The file could not be read or found.")
|
||||
|
|
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,5 +1,5 @@
|
|||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.1-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
|
2
gradlew
vendored
2
gradlew
vendored
|
@ -72,7 +72,7 @@ case "`uname`" in
|
|||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
MSYS* | MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
NONSTOP* )
|
||||
|
|
|
@ -49,17 +49,17 @@ import java.math.RoundingMode
|
|||
* @param plural The value to be appended if the reading time is more than 1 minute.
|
||||
* @param excludeImages Images are excluded from the reading time when set.
|
||||
* @param extra Additional seconds to be added to the total reading time.
|
||||
* @param round The [RoundingMode] to apply. Default is [RoundingMode.HALF_DOWN].
|
||||
* @param roundingMode The [RoundingMode] to apply. Default is [RoundingMode.HALF_DOWN].
|
||||
*/
|
||||
class ReadingTime @JvmOverloads constructor(
|
||||
text: String,
|
||||
wpm: Int = 275,
|
||||
var postfix: String = "min read",
|
||||
var plural: String = "min read",
|
||||
excludeImages: Boolean = false,
|
||||
extra: Int = 0,
|
||||
var roundingMode: RoundingMode = RoundingMode.HALF_EVEN
|
||||
) {
|
||||
text: String,
|
||||
wpm: Int = 275,
|
||||
var postfix: String = "min read",
|
||||
var plural: String = "min read",
|
||||
excludeImages: Boolean = false,
|
||||
extra: Int = 0,
|
||||
var roundingMode: RoundingMode = RoundingMode.HALF_EVEN
|
||||
) {
|
||||
companion object {
|
||||
private const val INVALID: Double = -1.0
|
||||
|
||||
|
@ -110,7 +110,7 @@ class ReadingTime @JvmOverloads constructor(
|
|||
}
|
||||
|
||||
/**
|
||||
* Calculates and returns the reading time in seconds.
|
||||
* Calculates and returns the reading time in seconds.
|
||||
*
|
||||
* `((word count / wpm) * 60) + images + extra`
|
||||
*/
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<taglib version="2.0"
|
||||
<taglib xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
version="2.0"
|
||||
xmlns="http://java.sun.com/xml/ns/j2ee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd">
|
||||
<tlib-version>1.0</tlib-version>
|
||||
<short-name>ReadingTime</short-name>
|
||||
|
|
|
@ -94,7 +94,7 @@ class ReadingTimeTest {
|
|||
|
||||
rt.text = blogPost
|
||||
assertEquals(
|
||||
calcReadingTime(rt.text, rt.wpm) + calcImgTime(11), rt.calcReadingTimeInSec(), "blogPost"
|
||||
calcReadingTime(rt.text, rt.wpm) + calcImgTime(11), rt.calcReadingTimeInSec(), "blogPost"
|
||||
)
|
||||
|
||||
rt.excludeImages = true
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<section class="gx gy gz ha hb">
|
||||
<div class="n p">
|
||||
<div class="z ab ac ae af ht ah ai"><p id="d889"
|
||||
class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct">
|
||||
<div class="z ab ac ae af ht ah ai"><p class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct"
|
||||
id="d889">
|
||||
Eons ago, a couple of Medium engineers got fed up. They were sick of having to scroll all the way down the
|
||||
page to see how long a story was. It was wearing out their trackpad, it was making their fingers sore, and
|
||||
they figured there must be a better way. So they sat down and devised a simple formula, and the Medium read
|
||||
|
@ -13,48 +13,48 @@
|
|||
<div class="ls lt r">
|
||||
<div class="cc lo s t u ex ai bv lp lq"><img alt="Image for post"
|
||||
class="s t u ex ai lu lv lw"
|
||||
src="https://miro.medium.com/max/60/1*wju0JzgNZVpPzZDgfchajg.png?q=20"
|
||||
width="180" height="58"/></div>
|
||||
<img alt="Image for post" class="cc lo s t u ex ai lx" width="180" height="58"/>
|
||||
height="58"
|
||||
src="https://miro.medium.com/max/60/1*wju0JzgNZVpPzZDgfchajg.png?q=20" width="180"/></div>
|
||||
<img alt="Image for post" class="cc lo s t u ex ai lx" height="58" width="180"/>
|
||||
<noscript><img alt="Image for post" class="s t u ex ai"
|
||||
src="https://miro.medium.com/max/360/1*wju0JzgNZVpPzZDgfchajg.png"
|
||||
width="180" height="58"/></noscript>
|
||||
height="58"
|
||||
src="https://miro.medium.com/max/360/1*wju0JzgNZVpPzZDgfchajg.png" width="180"/></noscript>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</figure>
|
||||
<p id="8a5b" class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct">With the widespread
|
||||
<p class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct" id="8a5b">With the widespread
|
||||
adoption of this feature across the internet, we decided to shed some light on exactly what goes in to
|
||||
our read time calculation.</p>
|
||||
<blockquote class="ly"><p id="13d1" class="lz ma bj hw b mb mc md me mf mg ld bn">Read time is based on the
|
||||
<blockquote class="ly"><p class="lz ma bj hw b mb mc md me mf mg ld bn" id="13d1">Read time is based on the
|
||||
average reading speed of an adult (roughly 275 WPM). We take the total word count of a post and
|
||||
translate it into minutes. Then, we add 12 seconds for each inline image. <strong class="ay">Boom, read
|
||||
time.</strong></p></blockquote>
|
||||
<p id="17fc" class="kq kr bj ks b ip mh ku is mi kw kx mj ix kz mk ja lb ml jd ld gx ct">Lately, we have
|
||||
<p class="kq kr bj ks b ip mh ku is mi kw kx mj ix kz mk ja lb ml jd ld gx ct" id="17fc">Lately, we have
|
||||
seen more and more long form stories containing a ton of images. With our release of <a
|
||||
href="https://medium.com/the-story/introducing-image-grids-c592e5bc16d8"
|
||||
class="cg dj mm mn mo mp" target="_blank" rel="noopener">image grids</a>, we expect even more of
|
||||
class="cg dj mm mn mo mp"
|
||||
href="https://medium.com/the-story/introducing-image-grids-c592e5bc16d8" rel="noopener" target="_blank">image grids</a>, we expect even more of
|
||||
these types of essays.</p>
|
||||
<p id="c072" class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct">Our original read
|
||||
<p class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct" id="c072">Our original read
|
||||
time calculation was geared toward “slow” images, like comics, where you would really want to sit down
|
||||
and invest in the image. This resulted in articles with crazy big read times. For instance, this <a
|
||||
href="https://medium.com/@dahul/inside-medium-94931f66eebd" class="cg dj mm mn mo mp"
|
||||
target="_blank" rel="noopener">article</a> containing 140 images was clocking in at a whopping
|
||||
class="cg dj mm mn mo mp" href="https://medium.com/@dahul/inside-medium-94931f66eebd"
|
||||
rel="noopener" target="_blank">article</a> containing 140 images was clocking in at a whopping
|
||||
87 minute read. So we amended our read time calculation to count 12 seconds for the first image, 11 for
|
||||
the second, and minus an additional second for each subsequent image. Any images after the tenth image
|
||||
are counted at three seconds.</p>
|
||||
<p id="fbc9" class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct">You might see this
|
||||
<p class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct" id="fbc9">You might see this
|
||||
change reflected across the site. Keep in mind that our estimated read time is just that: <em
|
||||
class="mq">an estimation</em>. You might finish a story faster or slower depending on various
|
||||
factors such as how many children or cats you have, your caffeine/alcohol intake, or if you’re a
|
||||
time-traveler from the future and already read that story. We just want to give you a ballpark figure so
|
||||
you can decide whether you have time to read one more story before the bus comes, or if you should
|
||||
bookmark it for later.</p>
|
||||
<p id="369b" class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct">We aren’t done with
|
||||
<p class="kq kr bj ks b ip kt ku is kv kw kx ky ix kz la ja lb lc jd ld gx ct" id="369b">We aren’t done with
|
||||
read time yet. In the future, we’d like to tailor it to your reading speed, account for the <a
|
||||
href="https://medium.com/@fchimero/this-should-only-take-a-minute-or-four-probably-e38bb7bf2adf"
|
||||
class="cg dj mm mn mo mp" target="_blank" rel="noopener">complexity of an article</a>, and add
|
||||
class="cg dj mm mn mo mp"
|
||||
href="https://medium.com/@fchimero/this-should-only-take-a-minute-or-four-probably-e38bb7bf2adf" rel="noopener" target="_blank">complexity of an article</a>, and add
|
||||
support for other languages. We’ll be sure to let you know about these changes as they happen.</p></div>
|
||||
</div>
|
||||
</section>
|
||||
|
|
|
@ -11,11 +11,13 @@
|
|||
<dt>Definition list</dt>
|
||||
<dd>Consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
|
||||
aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
|
||||
commodo consequat.</dd>
|
||||
commodo consequat.
|
||||
</dd>
|
||||
<dt>Lorem ipsum dolor sit amet</dt>
|
||||
<dd>Consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
|
||||
aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
|
||||
commodo consequat.</dd>
|
||||
commodo consequat.
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue