diff --git a/site/content/tutorial/08-stores/03-readable-stores/app-a/stores.js b/site/content/tutorial/08-stores/03-readable-stores/app-a/stores.js
index 1e5d11e2d9..ec0a749d79 100644
--- a/site/content/tutorial/08-stores/03-readable-stores/app-a/stores.js
+++ b/site/content/tutorial/08-stores/03-readable-stores/app-a/stores.js
@@ -1,9 +1,7 @@
import { readable } from 'svelte/store';
-export const time = readable(function start(set) {
+export const time = readable(null, function start(set) {
// implementation goes here
- return function stop() {
-
- };
-});
\ No newline at end of file
+ return function stop() {};
+});
diff --git a/site/content/tutorial/08-stores/03-readable-stores/app-b/stores.js b/site/content/tutorial/08-stores/03-readable-stores/app-b/stores.js
index 015de5ad45..8c11f6d3aa 100644
--- a/site/content/tutorial/08-stores/03-readable-stores/app-b/stores.js
+++ b/site/content/tutorial/08-stores/03-readable-stores/app-b/stores.js
@@ -1,6 +1,6 @@
import { readable } from 'svelte/store';
-export const time = readable(function start(set) {
+export const time = readable(new Date(), function start(set) {
const interval = setInterval(() => {
set(new Date());
}, 1000);
@@ -8,4 +8,4 @@ export const time = readable(function start(set) {
return function stop() {
clearInterval(interval);
};
-}, new Date());
\ No newline at end of file
+});
diff --git a/site/content/tutorial/08-stores/03-readable-stores/text.md b/site/content/tutorial/08-stores/03-readable-stores/text.md
index 6ef989fffa..25c02a9c0a 100644
--- a/site/content/tutorial/08-stores/03-readable-stores/text.md
+++ b/site/content/tutorial/08-stores/03-readable-stores/text.md
@@ -4,10 +4,10 @@ title: Readable stores
Not all stores should be writable by whoever has a reference to them. For example, you might have a store representing the mouse position or the user's geolocation, and it doesn't make sense to be able to set those values from 'outside'. For those cases, we have *readable* stores.
-Click over to the `stores.js` tab. The first argument to `readable` is a `start` function that takes a `set` callback and returns a `stop` function. The `start` function is called when the store gets its first subscriber; `stop` is called when the last subscriber unsubscribes. The second (optional) argument is the initial value.
+Click over to the `stores.js` tab. The first argument to `readable` is an initial value, which can be `null` or `undefined` if you don't have one yet. The second argument is a `start` function that takes a `set` callback and returns a `stop` function. The `start` function is called when the store gets its first subscriber; `stop` is called when the last subscriber unsubscribes.
```js
-export const time = readable(function start(set) {
+export const time = readable(new Date(), function start(set) {
const interval = setInterval(() => {
set(new Date());
}, 1000);
@@ -15,5 +15,5 @@ export const time = readable(function start(set) {
return function stop() {
clearInterval(interval);
};
-}, new Date());
-```
\ No newline at end of file
+});
+```
diff --git a/src/preprocess/index.ts b/src/preprocess/index.ts
index 8538a65acc..2666e5fb7f 100644
--- a/src/preprocess/index.ts
+++ b/src/preprocess/index.ts
@@ -95,8 +95,8 @@ export default async function preprocess(
for (const fn of script) {
source = await replace_async(
source,
- /
+
+ foo
+
+
diff --git a/test/preprocess/samples/partial-names/output.svelte b/test/preprocess/samples/partial-names/output.svelte
new file mode 100644
index 0000000000..34c789a826
--- /dev/null
+++ b/test/preprocess/samples/partial-names/output.svelte
@@ -0,0 +1,8 @@
+
+ foo
+
+
+
+ foo
+
+