@mikedown/core 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/LICENSE.md +21 -0
- package/README.md +156 -2
- package/dist/dictionaries/en/LICENSE +347 -0
- package/dist/dictionaries/en/index.aff +205 -0
- package/dist/dictionaries/en/index.dic +49569 -0
- package/dist/dictionaries/en-GB/LICENSE +347 -0
- package/dist/dictionaries/en-GB/index.aff +205 -0
- package/dist/dictionaries/en-GB/index.dic +49602 -0
- package/dist/index.d.ts +459 -0
- package/dist/index.js +15055 -0
- package/dist/index.js.map +1 -0
- package/dist/shared/anchoring.d.ts +17 -0
- package/dist/shared/anchoring.js +21 -0
- package/dist/shared/anchoring.js.map +1 -0
- package/dist/shared/imagePaste.d.ts +100 -0
- package/dist/shared/imagePaste.js +298 -0
- package/dist/shared/imagePaste.js.map +1 -0
- package/dist/shared/sha1.d.ts +3 -0
- package/dist/shared/sha1.js +61 -0
- package/dist/shared/sha1.js.map +1 -0
- package/dist/shared/wordCount.d.ts +12 -0
- package/dist/shared/wordCount.js +17 -0
- package/dist/shared/wordCount.js.map +1 -0
- package/dist/styles.css +4641 -0
- package/dist/tokens.css +209 -0
- package/package.json +115 -4
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.1.0
|
|
4
|
+
|
|
5
|
+
First public release. The MikeDown WYSIWYG markdown editor as a framework-agnostic package, the same editor that ships in the MikeDown VS Code extension and MikeDown Desktop.
|
|
6
|
+
|
|
7
|
+
- `createMikeDownEditor(element, options)` returns a `MikeDownEditorHandle` (`getMarkdown`, `setMarkdown`, `markSaved`, `setTheme`, `updateSettings`, `setReadOnly`, `setTags`, `setBacklinks`, `setDocMeta`, `scrollToAnchor`, `getHtml`, `command`, `on`, `destroy`).
|
|
8
|
+
- `MikeDownHost` interface: only `onChange` is required; every other method is optional and turns its feature off when omitted. `NoopHost` is a minimal ready-made host.
|
|
9
|
+
- Rich editing on TipTap (ProseMirror) with `tiptap-markdown`, plus a CodeMirror 6 source mode (`Cmd/Ctrl+/`).
|
|
10
|
+
- Feature switches via `options.features`: toolbar, sidebar, source mode, slash commands, spell check, math (KaTeX), Mermaid, find and replace, frontmatter.
|
|
11
|
+
- Tables, task lists, GFM callouts, `==highlight==`, footnotes, emoji, wikilinks and code blocks with a language picker.
|
|
12
|
+
- Themeable through `--mikedown-*` custom properties (`@mikedown/core/tokens.css`), light, dark and auto themes. Styles ship as `@mikedown/core/styles.css`.
|
|
13
|
+
- Bundled Hunspell dictionaries (`en`, `en-GB`) in `dist/dictionaries/`, used only when `spellcheckDictionaryUrl` is set.
|
|
14
|
+
- Shared pure helpers under `@mikedown/core/shared/*`.
|
|
15
|
+
- ESM only. TipTap, CodeMirror, lowlight and `katex` are peer dependencies; `mermaid` is an optional peer.
|
package/LICENSE.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Michael Joseph
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,157 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @mikedown/core
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The MikeDown WYSIWYG markdown editor as a framework-agnostic package: TipTap (ProseMirror) for the rich view, CodeMirror 6 for source mode, `tiptap-markdown` for parse and serialize. It is the same editor that ships in the MikeDown VS Code extension. No Angular, React or VS Code dependency.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @mikedown/core
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Install the peer dependencies too (see [Peer dependencies](#peer-dependencies)). The package is ESM only.
|
|
12
|
+
|
|
13
|
+
## Minimal example
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
import { createMikeDownEditor } from '@mikedown/core';
|
|
17
|
+
import '@mikedown/core/styles.css';
|
|
18
|
+
|
|
19
|
+
const handle = createMikeDownEditor(document.getElementById('editor')!, {
|
|
20
|
+
host: {
|
|
21
|
+
onChange(markdown, { pristine }) {
|
|
22
|
+
if (!pristine) saveSomewhere(markdown);
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
initialMarkdown: '# Hello\n\nStart typing.',
|
|
26
|
+
theme: 'auto',
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
handle.getMarkdown();
|
|
30
|
+
handle.setTheme('dark');
|
|
31
|
+
handle.destroy();
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
The editor fills its container (`height: 100%`), so give the container a height. Without one the editor falls back to a `240px` minimum height; set `--mikedown-min-height` to change that floor.
|
|
35
|
+
|
|
36
|
+
## Host interface
|
|
37
|
+
|
|
38
|
+
`options.host` is a `MikeDownHost`. Only `onChange` is required. Every other method is optional, and leaving one out turns its feature off and hides its UI. `NoopHost` is a ready-made host with just `onChange`.
|
|
39
|
+
|
|
40
|
+
| Method | Without it |
|
|
41
|
+
| --- | --- |
|
|
42
|
+
| `onChange(markdown, { pristine })` | required |
|
|
43
|
+
| `onStats` | no status statistics |
|
|
44
|
+
| `openLink` | external links open in a new tab, relative links are ignored |
|
|
45
|
+
| `saveSettings` | Settings modal changes last for the session |
|
|
46
|
+
| `toggleTheme` | the editor flips its own theme |
|
|
47
|
+
| `openKeybindings` | Hotkeys tab button hidden |
|
|
48
|
+
| `uploadImage` | image paste and drop disabled |
|
|
49
|
+
| `pickImage` | `/image` hidden |
|
|
50
|
+
| `resizeImage` | image resize items hidden |
|
|
51
|
+
| `resolveImageSrc` | relative or absolute image paths show the missing-image placeholder with the raw path |
|
|
52
|
+
| `getLinkSuggestions`, `getFileHeadings` | link and `[[` wikilink autocomplete off |
|
|
53
|
+
| `resolveWikilinks`, `createWikilink`, `checkLinks` | wikilinks and broken-link marking off |
|
|
54
|
+
| `getTags`, `openTag` | tag autocomplete and sidebar tags off |
|
|
55
|
+
| `getDiffBaseline` | diff button hidden |
|
|
56
|
+
| `onHeadingRenamed`, `onHeadingRenameAmbiguous` | no rename callbacks |
|
|
57
|
+
| `exportHtml`, `printDocument`, `viewInBrowser` | export buttons hidden |
|
|
58
|
+
| `sidebarPrefs` | sidebar keeps in-memory defaults |
|
|
59
|
+
|
|
60
|
+
Request and response methods return Promises. For example `uploadImage(file)` receives `{ mime, bytes, name }` and resolves `{ src, alt }`.
|
|
61
|
+
|
|
62
|
+
The returned `MikeDownEditorHandle` takes pushes from the host: `setMarkdown`, `markSaved`, `updateSettings`, `setReadOnly`, `setTags`, `setBacklinks`, `setDocMeta`, `scrollToAnchor`, `getHtml`, `command(name)` and more. `handle.on('ready' | ...)` subscribes to events. All types are exported from the package root.
|
|
63
|
+
|
|
64
|
+
## Features
|
|
65
|
+
|
|
66
|
+
Switch UI blocks with `options.features`. Defaults shown.
|
|
67
|
+
|
|
68
|
+
| Feature | Default | Notes |
|
|
69
|
+
| --- | --- | --- |
|
|
70
|
+
| `toolbar` | on | Formatting toolbar |
|
|
71
|
+
| `sidebar` | off | Properties, Outline, Backlinks and Tags |
|
|
72
|
+
| `sourceMode` | on | CodeMirror view, `Cmd/Ctrl+/` |
|
|
73
|
+
| `slashCommands` | on | `/` menu |
|
|
74
|
+
| `spellcheck` | on | Inert unless `spellcheckDictionaryUrl` is set |
|
|
75
|
+
| `math` | on | KaTeX, `$...$` and `$$...$$` |
|
|
76
|
+
| `mermaid` | on | Renders `mermaid` fenced blocks |
|
|
77
|
+
| `findReplace` | on | `Cmd/Ctrl+F` and `Cmd/Ctrl+H` |
|
|
78
|
+
| `frontmatter` | on | Collapsible YAML block |
|
|
79
|
+
| `supportCard` | off | VS Code only |
|
|
80
|
+
|
|
81
|
+
Also built in: tables, task lists, GFM callouts (`> [!NOTE]`), `==highlight==`, footnotes, emoji, wikilinks, code blocks with language picker.
|
|
82
|
+
|
|
83
|
+
## Theming
|
|
84
|
+
|
|
85
|
+
Colors, fonts and radii come only from `--mikedown-*` custom properties, with light and dark defaults in `@mikedown/core/tokens.css` (already included in `styles.css`). Every selector is scoped under `.mikedown-root` and `.mikedown-portal`, so the stylesheet cannot restyle your page. Set `theme: 'light' | 'dark' | 'auto'` or call `handle.setTheme()`.
|
|
86
|
+
|
|
87
|
+
To re-theme, set tokens on `.mikedown-root` (light) and `.mikedown-root[data-mikedown-theme="dark"]`. Menus and dialogs live in a `.mikedown-portal` element on `<body>`, so set the same tokens there. The full token list is in `src/styles/tokens.md` in the repository.
|
|
88
|
+
|
|
89
|
+
Menus and dialogs share one portal that mirrors the theme of the most recently focused editor. Two editors on one page with different themes can therefore show overlays in the other editor's theme. Mermaid's theme is initialised once globally for the same reason. Pages that toggle all editors together (as the demo does) are unaffected.
|
|
90
|
+
|
|
91
|
+
## Spell check dictionaries
|
|
92
|
+
|
|
93
|
+
The package ships Hunspell dictionaries in `dist/dictionaries/` (`en/` and `en-GB/`, each with `index.aff`, `index.dic` and a license). Copy that folder to somewhere your app serves, then point the editor at it:
|
|
94
|
+
|
|
95
|
+
```ts
|
|
96
|
+
createMikeDownEditor(el, { host, spellcheckDictionaryUrl: '/assets/mikedown-dictionaries' });
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Without `spellcheckDictionaryUrl`, spell check stays off and nothing is fetched. In an Angular app, add `{ "glob": "**/*", "input": "node_modules/@mikedown/core/dist/dictionaries", "output": "assets/mikedown-dictionaries" }` to the `assets` array in `angular.json`.
|
|
100
|
+
|
|
101
|
+
## Shortcuts
|
|
102
|
+
|
|
103
|
+
The core binds `Mod-/` (Cmd on macOS, Ctrl elsewhere) to the source toggle in both the rich editor and source mode. A host that binds the shortcut itself, such as the VS Code keybinding, passes `hostOwnsShortcuts: true` so one keystroke never toggles twice.
|
|
104
|
+
|
|
105
|
+
## Peer dependencies
|
|
106
|
+
|
|
107
|
+
The app must have exactly one copy of ProseMirror and CodeMirror, so these are peers.
|
|
108
|
+
|
|
109
|
+
| Peer | Range |
|
|
110
|
+
| --- | --- |
|
|
111
|
+
| `@tiptap/core`, `@tiptap/pm`, `@tiptap/starter-kit` and the extension packages (code-block-lowlight, hard-break, highlight, image, link, placeholder, table, table-cell, table-header, table-row, task-item, task-list, text) | `^3.20.0` (highlight `^3.23.5`) |
|
|
112
|
+
| `@codemirror/state` | `^6.5.2` |
|
|
113
|
+
| `@codemirror/view` | `^6.36.4` |
|
|
114
|
+
| `@codemirror/commands` | `^6.8.0` |
|
|
115
|
+
| `@codemirror/language` | `^6.10.8` |
|
|
116
|
+
| `@codemirror/lang-markdown` | `^6.3.2` |
|
|
117
|
+
| `@codemirror/theme-one-dark` | `^6.1.2` |
|
|
118
|
+
| `lowlight` | `^3.3.0` |
|
|
119
|
+
| `mermaid` (optional) | `^11.15.0` |
|
|
120
|
+
| `katex` | `^0.16.47` |
|
|
121
|
+
|
|
122
|
+
`tiptap-markdown`, `markdown-it-emoji`, `markdown-it-footnote`, `markdown-it-mark` and `nspell` are regular dependencies and install with the package.
|
|
123
|
+
|
|
124
|
+
`katex` is a required peer because `styles.css` imports its stylesheet. `mermaid` is optional. Both are loaded with dynamic `import()` the first time a diagram or formula appears, so they stay out of your initial bundle. Without `mermaid` the diagram block shows an error or the raw source.
|
|
125
|
+
|
|
126
|
+
## Bundler notes
|
|
127
|
+
|
|
128
|
+
- **tiptap-markdown** is not bundled. Its `exports` map sends ESM consumers to the ES build, which Angular's builders, Vite and webpack 5 all honour. If your bundler resolves its UMD `main` file, add an alias to `tiptap-markdown/dist/tiptap-markdown.es.js` or put `module` first in `resolve.mainFields`.
|
|
129
|
+
- **KaTeX CSS.** `styles.css` begins with `@import 'katex/dist/katex.min.css'`, which Vite, webpack `css-loader` and the Angular application builder resolve from `node_modules`. If your toolchain does not, add `node_modules/katex/dist/katex.min.css` to your global styles (in Angular, the `styles` array in `angular.json`) and the import becomes harmless.
|
|
130
|
+
- **Old Angular CLI (14).** `exports` is ignored under `moduleResolution: node`, which is why `types` and `module` are set at the top level. Add `node_modules/@mikedown/core/dist/styles.css` to `angular.json` `styles` instead of importing it from Sass. Use `skipLibCheck: true`.
|
|
131
|
+
- **Types.** The published `.d.ts` references no `mermaid`, `katex` or `nspell` types.
|
|
132
|
+
|
|
133
|
+
## Content Security Policy (Mermaid)
|
|
134
|
+
|
|
135
|
+
Mermaid renders SVG with `securityLevel: 'strict'` and loads its diagram types by dynamic `import()`. Your CSP needs `script-src 'self'` (or wherever your chunks are served from) and must allow inline styles for the SVG output (`style-src 'unsafe-inline'`, or a nonce on the style elements your bundler injects). A page that cannot allow this should set `features: { mermaid: false }`. KaTeX needs no script or eval permissions, only its stylesheet and fonts.
|
|
136
|
+
|
|
137
|
+
## Demo
|
|
138
|
+
|
|
139
|
+
From a clone of the repository:
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
npm run demo:core
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
This builds the package and serves `packages/core/demo/` with two editors side by side, a theme toggle, a "Log markdown" button and an `uploadImage` stub that returns an object URL.
|
|
146
|
+
|
|
147
|
+
## Build
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
npm run build -w packages/core
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
Produces `dist/index.js` (ESM), `dist/index.d.ts`, `dist/styles.css`, `dist/tokens.css` and `dist/dictionaries/`.
|
|
154
|
+
|
|
155
|
+
## License
|
|
156
|
+
|
|
157
|
+
MIT
|
|
@@ -0,0 +1,347 @@
|
|
|
1
|
+
en_US Hunspell Dictionary
|
|
2
|
+
Version 2020.12.07
|
|
3
|
+
Mon Dec 7 20:14:35 2020 -0500 [5ef55f9]
|
|
4
|
+
http://wordlist.sourceforge.net
|
|
5
|
+
|
|
6
|
+
README file for English Hunspell dictionaries derived from SCOWL.
|
|
7
|
+
|
|
8
|
+
These dictionaries are created using the speller/make-hunspell-dict
|
|
9
|
+
script in SCOWL.
|
|
10
|
+
|
|
11
|
+
The following dictionaries are available:
|
|
12
|
+
|
|
13
|
+
en_US (American)
|
|
14
|
+
en_CA (Canadian)
|
|
15
|
+
en_GB-ise (British with "ise" spelling)
|
|
16
|
+
en_GB-ize (British with "ize" spelling)
|
|
17
|
+
en_AU (Australian)
|
|
18
|
+
|
|
19
|
+
en_US-large
|
|
20
|
+
en_CA-large
|
|
21
|
+
en_GB-large (with both "ise" and "ize" spelling)
|
|
22
|
+
en_AU-large
|
|
23
|
+
|
|
24
|
+
The normal (non-large) dictionaries correspond to SCOWL size 60 and,
|
|
25
|
+
to encourage consistent spelling, generally only include one spelling
|
|
26
|
+
variant for a word. The large dictionaries correspond to SCOWL size
|
|
27
|
+
70 and may include multiple spelling for a word when both variants are
|
|
28
|
+
considered almost equal. The larger dictionaries however (1) have not
|
|
29
|
+
been as carefully checked for errors as the normal dictionaries and
|
|
30
|
+
thus may contain misspelled or invalid words; and (2) contain
|
|
31
|
+
uncommon, yet valid, words that might cause problems as they are
|
|
32
|
+
likely to be misspellings of more common words (for example, "ort" and
|
|
33
|
+
"calender").
|
|
34
|
+
|
|
35
|
+
To get an idea of the difference in size, here are 25 random words
|
|
36
|
+
only found in the large dictionary for American English:
|
|
37
|
+
|
|
38
|
+
Bermejo Freyr's Guenevere Hatshepsut Nottinghamshire arrestment
|
|
39
|
+
crassitudes crural dogwatches errorless fetial flaxseeds godroon
|
|
40
|
+
incretion jalapeño's kelpie kishkes neuroglias pietisms pullulation
|
|
41
|
+
stemwinder stenoses syce thalassic zees
|
|
42
|
+
|
|
43
|
+
The en_US, en_CA and en_AU are the official dictionaries for Hunspell.
|
|
44
|
+
The en_GB and large dictionaries are made available on an experimental
|
|
45
|
+
basis. If you find them useful please send me a quick email at
|
|
46
|
+
kevina@gnu.org.
|
|
47
|
+
|
|
48
|
+
If none of these dictionaries suite you (for example, maybe you want
|
|
49
|
+
the normal dictionary that also includes common variants) additional
|
|
50
|
+
dictionaries can be generated at http://app.aspell.net/create or by
|
|
51
|
+
modifying speller/make-hunspell-dict in SCOWL. Please do let me know
|
|
52
|
+
if you end up publishing a customized dictionary.
|
|
53
|
+
|
|
54
|
+
If a word is not found in the dictionary or a word is there you think
|
|
55
|
+
shouldn't be, you can lookup the word up at http://app.aspell.net/lookup
|
|
56
|
+
to help determine why that is.
|
|
57
|
+
|
|
58
|
+
General comments on these list can be sent directly to me at
|
|
59
|
+
kevina@gnu.org or to the wordlist-devel mailing lists
|
|
60
|
+
(https://lists.sourceforge.net/lists/listinfo/wordlist-devel). If you
|
|
61
|
+
have specific issues with any of these dictionaries please file a bug
|
|
62
|
+
report at https://github.com/kevina/wordlist/issues.
|
|
63
|
+
|
|
64
|
+
IMPORTANT CHANGES INTRODUCED In 2016.11.20:
|
|
65
|
+
|
|
66
|
+
New Australian dictionaries thanks to the work of Benjamin Titze
|
|
67
|
+
(btitze@protonmail.ch).
|
|
68
|
+
|
|
69
|
+
IMPORTANT CHANGES INTRODUCED IN 2016.04.24:
|
|
70
|
+
|
|
71
|
+
The dictionaries are now in UTF-8 format instead of ISO-8859-1. This
|
|
72
|
+
was required to handle smart quotes correctly.
|
|
73
|
+
|
|
74
|
+
IMPORTANT CHANGES INTRODUCED IN 2016.01.19:
|
|
75
|
+
|
|
76
|
+
"SET UTF8" was changes to "SET UTF-8" in the affix file as some
|
|
77
|
+
versions of Hunspell do not recognize "UTF8".
|
|
78
|
+
|
|
79
|
+
ADDITIONAL NOTES:
|
|
80
|
+
|
|
81
|
+
The NOSUGGEST flag was added to certain taboo words. While I made an
|
|
82
|
+
honest attempt to flag the strongest taboo words with the NOSUGGEST
|
|
83
|
+
flag, I MAKE NO GUARANTEE THAT I FLAGGED EVERY POSSIBLE TABOO WORD.
|
|
84
|
+
The list was originally derived from Németh László, however I removed
|
|
85
|
+
some words which, while being considered taboo by some dictionaries,
|
|
86
|
+
are not really considered swear words in today's society.
|
|
87
|
+
|
|
88
|
+
COPYRIGHT, SOURCES, and CREDITS:
|
|
89
|
+
|
|
90
|
+
The English dictionaries come directly from SCOWL
|
|
91
|
+
and is thus under the same copyright of SCOWL. The affix file is
|
|
92
|
+
a heavily modified version of the original english.aff file which was
|
|
93
|
+
released as part of Geoff Kuenning's Ispell and as such is covered by
|
|
94
|
+
his BSD license. Part of SCOWL is also based on Ispell thus the
|
|
95
|
+
Ispell copyright is included with the SCOWL copyright.
|
|
96
|
+
|
|
97
|
+
The collective work is Copyright 2000-2018 by Kevin Atkinson as well
|
|
98
|
+
as any of the copyrights mentioned below:
|
|
99
|
+
|
|
100
|
+
Copyright 2000-2018 by Kevin Atkinson
|
|
101
|
+
|
|
102
|
+
Permission to use, copy, modify, distribute and sell these word
|
|
103
|
+
lists, the associated scripts, the output created from the scripts,
|
|
104
|
+
and its documentation for any purpose is hereby granted without fee,
|
|
105
|
+
provided that the above copyright notice appears in all copies and
|
|
106
|
+
that both that copyright notice and this permission notice appear in
|
|
107
|
+
supporting documentation. Kevin Atkinson makes no representations
|
|
108
|
+
about the suitability of this array for any purpose. It is provided
|
|
109
|
+
"as is" without express or implied warranty.
|
|
110
|
+
|
|
111
|
+
Alan Beale <biljir@pobox.com> also deserves special credit as he has,
|
|
112
|
+
in addition to providing the 12Dicts package and being a major
|
|
113
|
+
contributor to the ENABLE word list, given me an incredible amount of
|
|
114
|
+
feedback and created a number of special lists (those found in the
|
|
115
|
+
Supplement) in order to help improve the overall quality of SCOWL.
|
|
116
|
+
|
|
117
|
+
The 10 level includes the 1000 most common English words (according to
|
|
118
|
+
the Moby (TM) Words II [MWords] package), a subset of the 1000 most
|
|
119
|
+
common words on the Internet (again, according to Moby Words II), and
|
|
120
|
+
frequently class 16 from Brian Kelk's "UK English Wordlist
|
|
121
|
+
with Frequency Classification".
|
|
122
|
+
|
|
123
|
+
The MWords package was explicitly placed in the public domain:
|
|
124
|
+
|
|
125
|
+
The Moby lexicon project is complete and has
|
|
126
|
+
been place into the public domain. Use, sell,
|
|
127
|
+
rework, excerpt and use in any way on any platform.
|
|
128
|
+
|
|
129
|
+
Placing this material on internal or public servers is
|
|
130
|
+
also encouraged. The compiler is not aware of any
|
|
131
|
+
export restrictions so freely distribute world-wide.
|
|
132
|
+
|
|
133
|
+
You can verify the public domain status by contacting
|
|
134
|
+
|
|
135
|
+
Grady Ward
|
|
136
|
+
3449 Martha Ct.
|
|
137
|
+
Arcata, CA 95521-4884
|
|
138
|
+
|
|
139
|
+
grady@netcom.com
|
|
140
|
+
grady@northcoast.com
|
|
141
|
+
|
|
142
|
+
The "UK English Wordlist With Frequency Classification" is also in the
|
|
143
|
+
Public Domain:
|
|
144
|
+
|
|
145
|
+
Date: Sat, 08 Jul 2000 20:27:21 +0100
|
|
146
|
+
From: Brian Kelk <Brian.Kelk@cl.cam.ac.uk>
|
|
147
|
+
|
|
148
|
+
> I was wondering what the copyright status of your "UK English
|
|
149
|
+
> Wordlist With Frequency Classification" word list as it seems to
|
|
150
|
+
> be lacking any copyright notice.
|
|
151
|
+
|
|
152
|
+
There were many many sources in total, but any text marked
|
|
153
|
+
"copyright" was avoided. Locally-written documentation was one
|
|
154
|
+
source. An earlier version of the list resided in a filespace called
|
|
155
|
+
PUBLIC on the University mainframe, because it was considered public
|
|
156
|
+
domain.
|
|
157
|
+
|
|
158
|
+
Date: Tue, 11 Jul 2000 19:31:34 +0100
|
|
159
|
+
|
|
160
|
+
> So are you saying your word list is also in the public domain?
|
|
161
|
+
|
|
162
|
+
That is the intention.
|
|
163
|
+
|
|
164
|
+
The 20 level includes frequency classes 7-15 from Brian's word list.
|
|
165
|
+
|
|
166
|
+
The 35 level includes frequency classes 2-6 and words appearing in at
|
|
167
|
+
least 11 of 12 dictionaries as indicated in the 12Dicts package. All
|
|
168
|
+
words from the 12Dicts package have had likely inflections added via
|
|
169
|
+
my inflection database.
|
|
170
|
+
|
|
171
|
+
The 12Dicts package and Supplement is in the Public Domain.
|
|
172
|
+
|
|
173
|
+
The WordNet database, which was used in the creation of the
|
|
174
|
+
Inflections database, is under the following copyright:
|
|
175
|
+
|
|
176
|
+
This software and database is being provided to you, the LICENSEE,
|
|
177
|
+
by Princeton University under the following license. By obtaining,
|
|
178
|
+
using and/or copying this software and database, you agree that you
|
|
179
|
+
have read, understood, and will comply with these terms and
|
|
180
|
+
conditions.:
|
|
181
|
+
|
|
182
|
+
Permission to use, copy, modify and distribute this software and
|
|
183
|
+
database and its documentation for any purpose and without fee or
|
|
184
|
+
royalty is hereby granted, provided that you agree to comply with
|
|
185
|
+
the following copyright notice and statements, including the
|
|
186
|
+
disclaimer, and that the same appear on ALL copies of the software,
|
|
187
|
+
database and documentation, including modifications that you make
|
|
188
|
+
for internal use or for distribution.
|
|
189
|
+
|
|
190
|
+
WordNet 1.6 Copyright 1997 by Princeton University. All rights
|
|
191
|
+
reserved.
|
|
192
|
+
|
|
193
|
+
THIS SOFTWARE AND DATABASE IS PROVIDED "AS IS" AND PRINCETON
|
|
194
|
+
UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
|
|
195
|
+
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PRINCETON
|
|
196
|
+
UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES OF MERCHANT-
|
|
197
|
+
ABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
|
|
198
|
+
LICENSED SOFTWARE, DATABASE OR DOCUMENTATION WILL NOT INFRINGE ANY
|
|
199
|
+
THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
|
|
200
|
+
|
|
201
|
+
The name of Princeton University or Princeton may not be used in
|
|
202
|
+
advertising or publicity pertaining to distribution of the software
|
|
203
|
+
and/or database. Title to copyright in this software, database and
|
|
204
|
+
any associated documentation shall at all times remain with
|
|
205
|
+
Princeton University and LICENSEE agrees to preserve same.
|
|
206
|
+
|
|
207
|
+
The 40 level includes words from Alan's 3esl list found in version 4.0
|
|
208
|
+
of his 12dicts package. Like his other stuff the 3esl list is also in the
|
|
209
|
+
public domain.
|
|
210
|
+
|
|
211
|
+
The 50 level includes Brian's frequency class 1, words appearing
|
|
212
|
+
in at least 5 of 12 of the dictionaries as indicated in the 12Dicts
|
|
213
|
+
package, and uppercase words in at least 4 of the previous 12
|
|
214
|
+
dictionaries. A decent number of proper names is also included: The
|
|
215
|
+
top 1000 male, female, and Last names from the 1990 Census report; a
|
|
216
|
+
list of names sent to me by Alan Beale; and a few names that I added
|
|
217
|
+
myself. Finally a small list of abbreviations not commonly found in
|
|
218
|
+
other word lists is included.
|
|
219
|
+
|
|
220
|
+
The name files form the Census report is a government document which I
|
|
221
|
+
don't think can be copyrighted.
|
|
222
|
+
|
|
223
|
+
The file special-jargon.50 uses common.lst and word.lst from the
|
|
224
|
+
"Unofficial Jargon File Word Lists" which is derived from "The Jargon
|
|
225
|
+
File". All of which is in the Public Domain. This file also contain
|
|
226
|
+
a few extra UNIX terms which are found in the file "unix-terms" in the
|
|
227
|
+
special/ directory.
|
|
228
|
+
|
|
229
|
+
The 55 level includes words from Alan's 2of4brif list found in version
|
|
230
|
+
4.0 of his 12dicts package. Like his other stuff the 2of4brif is also
|
|
231
|
+
in the public domain.
|
|
232
|
+
|
|
233
|
+
The 60 level includes all words appearing in at least 2 of the 12
|
|
234
|
+
dictionaries as indicated by the 12Dicts package.
|
|
235
|
+
|
|
236
|
+
The 70 level includes Brian's frequency class 0 and the 74,550 common
|
|
237
|
+
dictionary words from the MWords package. The common dictionary words,
|
|
238
|
+
like those from the 12Dicts package, have had all likely inflections
|
|
239
|
+
added. The 70 level also included the 5desk list from version 4.0 of
|
|
240
|
+
the 12Dics package which is in the public domain.
|
|
241
|
+
|
|
242
|
+
The 80 level includes the ENABLE word list, all the lists in the
|
|
243
|
+
ENABLE supplement package (except for ABLE), the "UK Advanced Cryptics
|
|
244
|
+
Dictionary" (UKACD), the list of signature words from the YAWL package,
|
|
245
|
+
and the 10,196 places list from the MWords package.
|
|
246
|
+
|
|
247
|
+
The ENABLE package, mainted by M\Cooper <thegrendel@theriver.com>,
|
|
248
|
+
is in the Public Domain:
|
|
249
|
+
|
|
250
|
+
The ENABLE master word list, WORD.LST, is herewith formally released
|
|
251
|
+
into the Public Domain. Anyone is free to use it or distribute it in
|
|
252
|
+
any manner they see fit. No fee or registration is required for its
|
|
253
|
+
use nor are "contributions" solicited (if you feel you absolutely
|
|
254
|
+
must contribute something for your own peace of mind, the authors of
|
|
255
|
+
the ENABLE list ask that you make a donation on their behalf to your
|
|
256
|
+
favorite charity). This word list is our gift to the Scrabble
|
|
257
|
+
community, as an alternate to "official" word lists. Game designers
|
|
258
|
+
may feel free to incorporate the WORD.LST into their games. Please
|
|
259
|
+
mention the source and credit us as originators of the list. Note
|
|
260
|
+
that if you, as a game designer, use the WORD.LST in your product,
|
|
261
|
+
you may still copyright and protect your product, but you may *not*
|
|
262
|
+
legally copyright or in any way restrict redistribution of the
|
|
263
|
+
WORD.LST portion of your product. This *may* under law restrict your
|
|
264
|
+
rights to restrict your users' rights, but that is only fair.
|
|
265
|
+
|
|
266
|
+
UKACD, by J Ross Beresford <ross@bryson.demon.co.uk>, is under the
|
|
267
|
+
following copyright:
|
|
268
|
+
|
|
269
|
+
Copyright (c) J Ross Beresford 1993-1999. All Rights Reserved.
|
|
270
|
+
|
|
271
|
+
The following restriction is placed on the use of this publication:
|
|
272
|
+
if The UK Advanced Cryptics Dictionary is used in a software package
|
|
273
|
+
or redistributed in any form, the copyright notice must be
|
|
274
|
+
prominently displayed and the text of this document must be included
|
|
275
|
+
verbatim.
|
|
276
|
+
|
|
277
|
+
There are no other restrictions: I would like to see the list
|
|
278
|
+
distributed as widely as possible.
|
|
279
|
+
|
|
280
|
+
The 95 level includes the 354,984 single words, 256,772 compound
|
|
281
|
+
words, 4,946 female names and the 3,897 male names, and 21,986 names
|
|
282
|
+
from the MWords package, ABLE.LST from the ENABLE Supplement, and some
|
|
283
|
+
additional words found in my part-of-speech database that were not
|
|
284
|
+
found anywhere else.
|
|
285
|
+
|
|
286
|
+
Accent information was taken from UKACD.
|
|
287
|
+
|
|
288
|
+
The VarCon package was used to create the American, British, Canadian,
|
|
289
|
+
and Australian word list. It is under the following copyright:
|
|
290
|
+
|
|
291
|
+
Copyright 2000-2016 by Kevin Atkinson
|
|
292
|
+
|
|
293
|
+
Permission to use, copy, modify, distribute and sell this array, the
|
|
294
|
+
associated software, and its documentation for any purpose is hereby
|
|
295
|
+
granted without fee, provided that the above copyright notice appears
|
|
296
|
+
in all copies and that both that copyright notice and this permission
|
|
297
|
+
notice appear in supporting documentation. Kevin Atkinson makes no
|
|
298
|
+
representations about the suitability of this array for any
|
|
299
|
+
purpose. It is provided "as is" without express or implied warranty.
|
|
300
|
+
|
|
301
|
+
Copyright 2016 by Benjamin Titze
|
|
302
|
+
|
|
303
|
+
Permission to use, copy, modify, distribute and sell this array, the
|
|
304
|
+
associated software, and its documentation for any purpose is hereby
|
|
305
|
+
granted without fee, provided that the above copyright notice appears
|
|
306
|
+
in all copies and that both that copyright notice and this permission
|
|
307
|
+
notice appear in supporting documentation. Benjamin Titze makes no
|
|
308
|
+
representations about the suitability of this array for any
|
|
309
|
+
purpose. It is provided "as is" without express or implied warranty.
|
|
310
|
+
|
|
311
|
+
Since the original words lists come from the Ispell distribution:
|
|
312
|
+
|
|
313
|
+
Copyright 1993, Geoff Kuenning, Granada Hills, CA
|
|
314
|
+
All rights reserved.
|
|
315
|
+
|
|
316
|
+
Redistribution and use in source and binary forms, with or without
|
|
317
|
+
modification, are permitted provided that the following conditions
|
|
318
|
+
are met:
|
|
319
|
+
|
|
320
|
+
1. Redistributions of source code must retain the above copyright
|
|
321
|
+
notice, this list of conditions and the following disclaimer.
|
|
322
|
+
2. Redistributions in binary form must reproduce the above copyright
|
|
323
|
+
notice, this list of conditions and the following disclaimer in the
|
|
324
|
+
documentation and/or other materials provided with the distribution.
|
|
325
|
+
3. All modifications to the source code must be clearly marked as
|
|
326
|
+
such. Binary redistributions based on modified source code
|
|
327
|
+
must be clearly marked as modified versions in the documentation
|
|
328
|
+
and/or other materials provided with the distribution.
|
|
329
|
+
(clause 4 removed with permission from Geoff Kuenning)
|
|
330
|
+
5. The name of Geoff Kuenning may not be used to endorse or promote
|
|
331
|
+
products derived from this software without specific prior
|
|
332
|
+
written permission.
|
|
333
|
+
|
|
334
|
+
THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND
|
|
335
|
+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
336
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
337
|
+
ARE DISCLAIMED. IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE
|
|
338
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
339
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
340
|
+
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
341
|
+
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
342
|
+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
343
|
+
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
344
|
+
SUCH DAMAGE.
|
|
345
|
+
|
|
346
|
+
Build Date: Mon Dec 7 20:19:27 EST 2020
|
|
347
|
+
Wordlist Command: mk-list --accents=strip en_US 60
|