-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
Simplifies TextAttributes
- Loading branch information
There are no files selected for viewing
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
I represent a Markdown emphasis over a range of characters. The applied styling is expressed through my textAttribute. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
instance creation | ||
from: startPosition to: endPosition | ||
|
||
^ self new | ||
textAttribute: TextEmphasis italic; | ||
setFrom: startPosition to: endPosition; | ||
yourself |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
instance creation | ||
strongFrom: startPosition to: endPosition | ||
|
||
^ self new | ||
textAttribute: TextEmphasis bold; | ||
setFrom: startPosition to: endPosition; | ||
yourself |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
accessing | ||
setFrom: anInteger to: anotherInteger | ||
|
||
startPosition := anInteger. | ||
endPosition := anotherInteger |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
accessing | ||
textAttribute: aTextAttribute | ||
|
||
textAttribute := aTextAttribute |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
accessing | ||
textAttribute | ||
|
||
^ textAttribute |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
{ | ||
"class" : { | ||
"from:to:" : "kgr 7/23/2019 11:27", | ||
"strongFrom:to:" : "kgr 7/23/2019 11:19" }, | ||
"instance" : { | ||
"endPosition" : "fgo 5/21/2019 15:36", | ||
"setFrom:to:" : "fgo 7/10/2019 15:16", | ||
"startPosition" : "fgo 5/21/2019 15:36", | ||
"textAttribute" : "fgo 7/10/2019 14:39", | ||
"textAttribute:" : "fgo 7/10/2019 14:39" } } |
This file was deleted.
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
attributes | ||
delimiterLengthForAttributeWith: aMarkdownEmphasisDelimiter | ||
delimiterLengthForEmphasisWith: aMarkdownEmphasisDelimiter | ||
|
||
^ {self length. aMarkdownEmphasisDelimiter length. self boldLength} min |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
attributes | ||
emphasisFrom: start to: end delimiterLength: aLength | ||
|
||
aLength = 1 | ||
ifTrue: [^ MarkdownEmphasis from: start to: end] | ||
ifFalse: [^ MarkdownEmphasis strongFrom: start to: end] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
attributes | ||
emphasisStartingAt: openingEmphasisDelimiter | ||
|
||
| delimiterLength start end | | ||
delimiterLength := self delimiterLengthForEmphasisWith: openingEmphasisDelimiter. | ||
start := openingEmphasisDelimiter endPosition - delimiterLength + 1. | ||
end := self startPosition + delimiterLength - 1. | ||
^ self emphasisFrom: start to: end delimiterLength: delimiterLength | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,8 @@ | ||
styling | ||
add: aCollectionOfMarkdownAttributes to: aText | ||
add: aCollectionOfMarkdownEmphases to: aText | ||
|
||
aCollectionOfMarkdownAttributes do: [:attribute | | ||
attribute textAttributes do: [:textAttribute | | ||
aText | ||
addAttribute: textAttribute | ||
from: attribute startPosition | ||
to: attribute endPosition]] | ||
aCollectionOfMarkdownEmphases do: [:emphasis | | ||
aText | ||
addAttribute: emphasis textAttribute | ||
from: emphasis startPosition | ||
to: emphasis endPosition] |
This file was deleted.
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
accessing-private | ||
emphases: aCollectionOfMarkdownEmphases | ||
|
||
emphases := aCollectionOfMarkdownEmphases |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
accessing-private | ||
emphases | ||
|
||
^ emphases |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,5 +5,5 @@ parse: aString | |
clean; | ||
tokenize: aString; | ||
interpretTokens. | ||
^ self attributes | ||
^ self emphases | ||
|
This file was deleted.
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
*MarkdownEditor-Tests | ||
= aMarkdownEmphasis | ||
|
||
^ self endPosition = aMarkdownEmphasis endPosition | ||
and: [self startPosition = aMarkdownEmphasis startPosition] | ||
and: [self textAttribute = aMarkdownEmphasis textAttribute] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
*MarkdownEditor-Tests | ||
hash | ||
|
||
^ (self startPosition hash bitXor: self endPosition hash) | ||
bitXor: self textAttribute hash |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
{ | ||
"class" : { | ||
}, | ||
"instance" : { | ||
"=" : "kgr 7/23/2019 12:07", | ||
"hash" : "kgr 7/23/2019 12:26" } } |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
{ | ||
"name" : "MarkdownEmphasis" } |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,9 @@ | ||
tests - matching | ||
testBoldAttributeDelimiterLength | ||
testBoldEmphasisDelimiterLength | ||
|
||
| opener closer | | ||
closer := MarkdownEmphasisDelimiter new content: '**'; yourself. | ||
opener := MarkdownEmphasisDelimiter new content: '**'; yourself. | ||
|
||
self assert: 2 equals: (closer delimiterLengthForAttributeWith: opener) | ||
self assert: 2 equals: (closer delimiterLengthForEmphasisWith: opener) | ||
|