Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a8f4127ee | ||
|
|
c4421d3552 | ||
|
|
cdf3059d3d | ||
|
|
5e590056ff | ||
|
|
7b8cf2ffb5 | ||
|
|
6da838c81f | ||
|
|
a2e9f813a5 | ||
|
|
64d6beb4a0 | ||
|
|
84c529d58d | ||
|
|
fe355eebf8 | ||
|
|
b064f9ebd8 | ||
|
|
604bb7a74c | ||
|
|
7d064d6c6e | ||
|
|
1730fe756d | ||
|
|
996717885d | ||
|
|
34c223b581 | ||
|
|
7b35be6691 | ||
|
|
2186259c06 | ||
|
|
69b5cb1988 | ||
|
|
cb900fe494 | ||
|
|
1d618f72f7 | ||
|
|
d5df8b42a7 | ||
|
|
c0639d8b8e | ||
|
|
b816643e2d | ||
|
|
33a3ee3d6e | ||
|
|
2f24b69462 | ||
|
|
40db66f763 | ||
|
|
5361b56e9f | ||
|
|
0e73530b05 | ||
|
|
0f5c1ce4c6 | ||
|
|
b569782d4c | ||
|
|
d69b0598bf | ||
|
|
70834fc187 | ||
|
|
18d385cf2b | ||
|
|
648406c442 | ||
|
|
5f7bd307ef | ||
|
|
890ef86e1c | ||
|
|
0b855bfb48 | ||
|
|
10cd9b23c1 | ||
|
|
bf3578cf7c | ||
|
|
da22cde5e6 | ||
|
|
312858b420 | ||
|
|
a4d0c13662 | ||
|
|
61007c32e9 | ||
|
|
1cadfc051b | ||
|
|
46cd904ced | ||
|
|
9120a0fa1c | ||
|
|
406e4a1177 | ||
|
|
be0f49a8d8 | ||
|
|
24228c5568 | ||
|
|
6056db73cf | ||
|
|
ee3effcdd1 | ||
|
|
07e711e30c | ||
|
|
0b1a910b06 | ||
|
|
81cbab3f66 | ||
|
|
d31dddac7e | ||
|
|
485647d1c3 | ||
|
|
e1db639340 | ||
|
|
b918897241 | ||
|
|
6ba2d8f3e6 | ||
|
|
c01f623305 | ||
|
|
6dc6ebb2fb | ||
|
|
2d031244ca | ||
|
|
9498be05ef | ||
|
|
1b25ddd2b5 | ||
|
|
9741f98b70 | ||
|
|
02923f7947 | ||
|
|
6c5957a492 | ||
|
|
eb96e5e08d | ||
|
|
457e5fe4af | ||
|
|
1c0d4b0133 | ||
|
|
ba79f62fda | ||
|
|
a9c79b0359 | ||
|
|
a668afef35 | ||
|
|
deb8b38b1f | ||
|
|
b4ebc520e1 | ||
|
|
5def2102c7 | ||
|
|
0f511ebc60 | ||
|
|
b09210cf1f | ||
|
|
3bdfc3e528 | ||
|
|
baf5948c90 | ||
|
|
4b1516c990 | ||
|
|
1a5990f24b | ||
|
|
82e1845056 | ||
|
|
75a76afcf1 | ||
|
|
0922cf507a | ||
|
|
32c5f7f8df | ||
|
|
148505ba6b | ||
|
|
d960c6dcec | ||
|
|
bb9f08155f | ||
|
|
934db52126 | ||
|
|
dcef08f3b3 | ||
|
|
20e7b345e1 | ||
|
|
5f8453659d | ||
|
|
c7ff011649 | ||
|
|
2b71ccf50f | ||
|
|
310be728a3 | ||
|
|
e2728285e1 | ||
|
|
1d9abf8e95 | ||
|
|
31e90c2d47 | ||
|
|
ae1e72fb23 | ||
|
|
7710470559 | ||
|
|
2069399979 | ||
|
|
29dd4da2e4 | ||
|
|
394040a039 | ||
|
|
a8e1ed863c | ||
|
|
d7b1ae9fbc | ||
|
|
f0c7d950ea | ||
|
|
1e5d389b53 | ||
|
|
1cda85fc0e | ||
|
|
4999368dfe | ||
|
|
7e4d69be05 | ||
|
|
3abbd3d4cd | ||
|
|
8fc5276090 | ||
|
|
cf4b092112 | ||
|
|
ddf4a8d4f1 | ||
|
|
9c1edc80db | ||
|
|
20bf5b07a6 | ||
|
|
ade6bd2d0d | ||
|
|
125760b934 | ||
|
|
e231c0a6cb | ||
|
|
a16bc6bb6e | ||
|
|
51989c0f5d | ||
|
|
88b7f6eab8 | ||
|
|
2df3c0a03e | ||
|
|
1e9cc07e2d | ||
|
|
6221c0a540 | ||
|
|
ddbffa7f28 | ||
|
|
555ad8bea8 | ||
|
|
a561a3fff8 | ||
|
|
70ec009edd | ||
|
|
31a1c60eb1 | ||
|
|
0a2cf6ab6e | ||
|
|
07fa2a1b0c | ||
|
|
43b8e43303 | ||
|
|
2cec51ff8d | ||
|
|
684f45cc08 | ||
|
|
eae4e0f405 | ||
|
|
b2ac2794bb | ||
|
|
b565a32c7e | ||
|
|
a1835164d9 | ||
|
|
06e931d749 | ||
|
|
b9aa49853a | ||
|
|
03eb6302d5 | ||
|
|
5f8f798cf2 | ||
|
|
bbc0177a66 | ||
|
|
6ce9f9bd86 | ||
|
|
46254f79c4 | ||
|
|
ad659a5dc2 | ||
|
|
41f67b59e9 | ||
|
|
aa91a88be7 | ||
|
|
f299c9df3a | ||
|
|
b6c3231e30 | ||
|
|
496ad05247 | ||
|
|
93f9214aad | ||
|
|
22bbf9b177 | ||
|
|
7301323ed7 | ||
|
|
c6e4cf627c | ||
|
|
5c1c9852ae | ||
|
|
be2b2c3df7 | ||
|
|
1362a94448 | ||
|
|
189f66225c | ||
|
|
40d8b9c2f6 | ||
|
|
8af7028efc | ||
|
|
f1eff6700a | ||
|
|
082bb8ef45 | ||
|
|
7609450068 | ||
|
|
6570275176 | ||
|
|
4b579cddbe | ||
|
|
a84026d74d | ||
|
|
428b165198 | ||
|
|
56b2663e4d | ||
|
|
9dbb7ec53f | ||
|
|
7e9c7a52fd | ||
|
|
2e33fb9f81 | ||
|
|
208825807b | ||
|
|
381150a7b5 | ||
|
|
5fac8774f4 | ||
|
|
e9f20be15a | ||
|
|
9d06aae1f4 | ||
|
|
f574e39012 | ||
|
|
8495fae8a5 | ||
|
|
07a5dc09ac | ||
|
|
9e6fbe955a | ||
|
|
1217771fd0 | ||
|
|
3b86d13a96 | ||
|
|
c0f825c690 | ||
|
|
825999b151 | ||
|
|
cdf51fefbd | ||
|
|
665141f81d | ||
|
|
9cbd19d658 | ||
|
|
0e00fd24ab | ||
|
|
5780f183c7 | ||
|
|
b7d6554b80 | ||
|
|
0fabd92d61 | ||
|
|
7b290ddd56 | ||
|
|
094dee4928 | ||
|
|
5497bb3f5f | ||
|
|
d85ed4c3ed | ||
|
|
77b89edbdb | ||
|
|
80396841f1 | ||
|
|
c2e075178c | ||
|
|
e0f34a3e1d | ||
|
|
c2bab872be | ||
|
|
491f7d5d15 | ||
|
|
c6893b0c7f | ||
|
|
2ee91475e5 | ||
|
|
b632c712c1 | ||
|
|
f2c2106ce9 | ||
|
|
c5a605bf73 | ||
|
|
4b9f59c845 | ||
|
|
626695da25 | ||
|
|
ea9556948b | ||
|
|
0056df517d | ||
|
|
55901cf0a3 | ||
|
|
76eac6fb72 | ||
|
|
35d12f444d | ||
|
|
14ab4ce52d | ||
|
|
c56dcd9eb4 | ||
|
|
5a416aa1c9 | ||
|
|
2f8f5f423b | ||
|
|
ab6bdf54c0 | ||
|
|
2336b6aab1 | ||
|
|
9a400ea45c | ||
|
|
b7883e8298 | ||
|
|
8d2121ade6 | ||
|
|
f82ce8b732 | ||
|
|
419b738456 | ||
|
|
eed0b83a2d | ||
|
|
db0244365f | ||
|
|
2040d0f857 | ||
|
|
9fa1592aaa | ||
|
|
0c715b1717 | ||
|
|
ce8d3231be | ||
|
|
e23dc533bd | ||
|
|
fecfb2a7e9 | ||
|
|
31cfc8833a | ||
|
|
a91558655c | ||
|
|
dee9f43761 | ||
|
|
f82cd7f52b | ||
|
|
99b9e4f4f2 | ||
|
|
da9dc2f46a | ||
|
|
d301b94c70 | ||
|
|
ea9a560277 | ||
|
|
eb4aae4060 | ||
|
|
597ae19242 | ||
|
|
7e02a32f48 | ||
|
|
4cc0d2bbca | ||
|
|
4bcd89b38a | ||
|
|
64b2a51c09 | ||
|
|
ab9ab2497b | ||
|
|
98dab4ff82 | ||
|
|
1452748331 | ||
|
|
074dc22ba5 | ||
|
|
9c5f79a695 | ||
|
|
6114c99311 | ||
|
|
86f50edfdc | ||
|
|
e945577e3c | ||
|
|
8360d3e415 | ||
|
|
71fbdef164 | ||
|
|
8aba017c24 | ||
|
|
a37489204c | ||
|
|
dab12dc7c8 | ||
|
|
409c2ccafa | ||
|
|
e1b0f2dc9a | ||
|
|
bdd699557d | ||
|
|
9fdc9aeaa3 | ||
|
|
6789446df3 | ||
|
|
5e15cc49f6 | ||
|
|
6e10959e40 | ||
|
|
0764e25a58 | ||
|
|
5043b0b625 | ||
|
|
694a4ca1ec | ||
|
|
c276a90e73 | ||
|
|
dce45c2ff3 | ||
|
|
d9da5bdc1d | ||
|
|
b6a6e220f7 | ||
|
|
478177f25e | ||
|
|
654bd9f284 | ||
|
|
a2e3659d99 | ||
|
|
5c3267f7e6 | ||
|
|
0631d500e1 | ||
|
|
8f8cb336c2 | ||
|
|
3e24b71075 | ||
|
|
40c0e48b04 | ||
|
|
8820cd89be | ||
|
|
1d12d222f3 | ||
|
|
13dc8ae3b6 | ||
|
|
a2ad08e47e | ||
|
|
c83641d2f0 | ||
|
|
6e8a36be86 | ||
|
|
c65f80d22e | ||
|
|
f9457ef311 | ||
|
|
1374c1933f | ||
|
|
1f244f6282 | ||
|
|
80e5b338fd | ||
|
|
019471c804 | ||
|
|
88fb57dd3b | ||
|
|
a93ef16143 | ||
|
|
77d0e9b8fd | ||
|
|
d73a158418 | ||
|
|
1a23cc1912 | ||
|
|
48309d3040 | ||
|
|
718171fd7b | ||
|
|
efe3116610 | ||
|
|
aab44c1e0d | ||
|
|
eabc62f796 | ||
|
|
2971c60737 | ||
|
|
29e9557d5f | ||
|
|
89f54a85c8 | ||
|
|
73c77c29c2 |
@@ -0,0 +1,17 @@
|
||||
### Checklist
|
||||
|
||||
- [ ] follow [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/)
|
||||
- the scope should be the component's name e.g: `feat(StatusListItem): ... `
|
||||
- when adding new components, the scope is the module e.g: `feat(StatusQ.Controls): ...`
|
||||
- [ ] add documentation if necessary (new component, new feature)
|
||||
- [ ] update sandbox app
|
||||
- in case of new component, add new component page
|
||||
- in case of new features, add variation to existing component page
|
||||
- nice to have: add it to the demo application as well
|
||||
- [ ] test changes in both light and dark theme?
|
||||
- [ ] is this a breaking change?
|
||||
- [ ] use the dedicated `BREAKING CHANGE` commit message section
|
||||
- [ ] resolve breaking changes in [status-desktop](https://github.com/status-im/status-desktop)
|
||||
- [ ] (pre-merge) adapt code to breaking changes
|
||||
- [ ] (post-merge) update StatusQ submodule pointer
|
||||
- [ ] test changes in [status-desktop](https://github.com/status-im/status-desktop)
|
||||
@@ -12,3 +12,8 @@ Makefile
|
||||
.qmake.stash
|
||||
*_qml.cpp
|
||||
*_qmlcache.qrc
|
||||
sandbox/qmlcache_loader.cpp
|
||||
doc/html
|
||||
CMakeLists.txt.user
|
||||
.vscode
|
||||
build/
|
||||
|
||||
@@ -1,3 +1,329 @@
|
||||
<a name=""></a>
|
||||
## 0.25.0 (2022-03-07)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **@StatusListItem:** fix left padding ([f574e390](f574e390))
|
||||
* **StatusListItem:** add propagateTitleClicks property to StatusListItem ([8495fae8](8495fae8))
|
||||
* **StatusQ.Popups:** removed overlay setting (#557) ([665141f8](665141f8))
|
||||
* **StatusTagSelector:** Updates and fixes in the component ([07a5dc09](07a5dc09))
|
||||
* **build:** fix linux build ([9d06aae1](9d06aae1), closes [#413](413))
|
||||
* **sandbox:** Fix results popup component position ([cdf51fef](cdf51fef))
|
||||
|
||||
#### Features
|
||||
|
||||
* **@StatusListItem:** add option for tags ([381150a7](381150a7))
|
||||
* **StatusChatList:** Highlight chat item at creation time ([9e6fbe95](9e6fbe95))
|
||||
* **StatusChatListItem:** enable assigning emoji to chat item ([5fac8774](5fac8774))
|
||||
* **StatusContactVerificationIcons:** Create new row control that includes mutual connect and trust indicator icons (#559) ([c0f825c6](c0f825c6), closes [#542](542))
|
||||
* **StatusQ:** Moving docs outside sandbox ([825999b1](825999b1))
|
||||
* **StatusQ.Core:** add new arrow-left icon ([e9f20be1](e9f20be1))
|
||||
* **StatusSmartIdenticon:** Add support for color rings in StatusSmartIdenticon (#553) ([3b86d13a](3b86d13a), closes [#517](517))
|
||||
|
||||
#### Breaking Changes
|
||||
|
||||
* **StatusContactVerificationIcons:** Create new row control that includes mutual connect and trust indicator icons (#559) ([c0f825c6](c0f825c6), closes [#542](542))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## 0.24.0 (2022-02-14)
|
||||
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusListItem:** add highlighted property ([5780f183](5780f183))
|
||||
* **StatusQ.Components:** Adding StatusWizardSteper component ([b7d6554b](b7d6554b), closes [#522](522))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.23.0 (2022-02-08)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Icon components had wrong color in sandbox app ([b632c712](b632c712), closes [#538](538))
|
||||
* **StatusChatList:** unexisting property name for chat item fixed ([c2e07517](c2e07517))
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusQ.Components:**
|
||||
* Adding StatusToastMessage ([7b290ddd](7b290ddd), closes [#521](521))
|
||||
* Adding StatusTagSelector component ([094dee49](094dee49), closes [#526](526))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.22.0 (2022-01-31)
|
||||
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusMemberListItem:** Implement `StatusMemberListItem` (#539) ([c5a605bf](c5a605bf), closes [#515](515))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.21.0 (2022-01-24)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **build:** broken MacOS build (#533) ([55901cf0](55901cf0))
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusMessage:** Introducing a new StatusQ Component for Chat Messages ([ea955694](ea955694))
|
||||
* **StatusQ.Controls:** Introduce `StatusPasswordStrengthIndicator` ([626695da](626695da), closes [#528](528))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.20.0 (2022-01-17)
|
||||
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusBanner:** introduce type variants for different banner styles ([35d12f44](35d12f44))
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **StatusBaseInput:** Corrects allignment of the placeholder text in the StatusBaseInput. ([5a416aa1](5a416aa1))
|
||||
* **build:** Windows build ([14ab4ce5](14ab4ce5))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.19.0 (2021-12-03)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **StatusChatListItem:** This change fixes the issue of the chat list items getting a highlight even when they are not really hovered ([ab6bdf54](ab6bdf54))
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusModal:** introduce `hasCloseButton` property ([2336b6aa](2336b6aa))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.18.0 (2021-11-30)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **StatusAppNavBar:** Fixed position of profile button on the NavBar ([419b7384](419b7384))
|
||||
* **StatusImageWithTitle:** Fix position of the edit title button ([8d2121ad](8d2121ad))
|
||||
* **StatusListItem:** ensure title is elided ([b7883e82](b7883e82))
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusListItem:** Expose the Aside text so that it can be modified from the outside ([f82ce8b7](f82ce8b7))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.17.1 (2021-11-19)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **StatusAccountSelector:** Adapt ui to data model changed ([db024436](db024436))
|
||||
* **StatusAssetSelector:** Fixed error of crypto balance not updated correctly ([2040d0f8](2040d0f8))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.17.0 (2021-11-10)
|
||||
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusBaseButton:** introduce `Tiny` size ([dee9f437](dee9f437))
|
||||
* **StatusQ.Controls.Validators:** introduce `StatusUrlValidator` ([a9155865](a9155865))
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **StatusAccountSelector:** adapt AccountSelector to new model (#482) ([ce8d3231](ce8d3231))
|
||||
* **StatusExpandibleItem:** add missing hover indicator in `Secondary` type ([e23dc533](e23dc533), closes [#478](478))
|
||||
* **StatusInput:** ensure validator messages are rendered when validators return boolean values ([f82cd7f5](f82cd7f5))
|
||||
* **StatusListItem:** This solves the issue of channel list overlpaing when a category is collapsed. ([0c715b17](0c715b17))
|
||||
* **StatusSearchPopup:** disable enter and return keys to avoid UI breakage ([fecfb2a7](fecfb2a7))
|
||||
* **StatusSlider:** slider background and handle should not depend on root's height ([31cfc883](31cfc883))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.16.0 (2021-11-01)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **StatusModal:** render footer correctly based on `showFooter` flag ([da9dc2f4](da9dc2f4))
|
||||
* **StatusRoundButton:** ensure disabled state uses correct background color ([eb4aae40](eb4aae40))
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusQ.Controls:**
|
||||
* introduce `StatusWalletColorSelect` control ([ea9a5602](ea9a5602), closes [#467](467))
|
||||
* introduce `StatusWalletColorButton` component ([597ae192](597ae192), closes [#466](466))
|
||||
* **StatusQ.Platform:** introduce StatusMacNotification component ([d301b94c](d301b94c))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.15.0 (2021-10-26)
|
||||
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusQ.Controls:**
|
||||
* introduce StatusChatCommandButton ([4cc0d2bb](4cc0d2bb), closes [#429](429))
|
||||
* introduce `StatusTabBarIconButton` component ([4bcd89b3](4bcd89b3), closes [#428](428))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.14.0 (2021-10-25)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **Spellchecking:** Add check for hunspell existence ([ab9ab249](ab9ab249))
|
||||
* **StatusModal:**
|
||||
* ensure `onEditButtonClicked` signal is emitted ([074dc22b](074dc22b), closes [#454](454))
|
||||
* expose `header.editable` property ([9c5f79a6](9c5f79a6), closes [#452](452))
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusSmartIdenticon:** Created a new StatusQ componnent to accomodate: ([14527483](14527483))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.13.0 (2021-10-19)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* use proper double checkmark icon ([8aba017c](8aba017c))
|
||||
* **StatusBaseButton:** introduce missing `highlighted` property ([a3748920](a3748920))
|
||||
|
||||
#### Features
|
||||
|
||||
* **StatusFlatRoundButton:** Update the StatusFlatRoundButton to take over button behaviour from StatusIconButton under ui/shared/status ([71fbdef1](71fbdef1))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.12.0 (2021-10-18)
|
||||
|
||||
|
||||
#### Features
|
||||
|
||||
* Resolve StatusQ modules highlighting and add qml compiler for detecting coompile time errors ([e1b0f2dc](e1b0f2dc))
|
||||
* **StatusModal:** Add edit avatar button ([5043b0b6](5043b0b6))
|
||||
* **StatusQ.Components:** introduce `StatusAddress` component ([6789446d](6789446d), closes [#430](430))
|
||||
* **StatusQ.Controls:**
|
||||
* introduce StatusColorSelector component ([bdd69955](bdd69955), closes [#444](444))
|
||||
* introduce `StatusAssetSelector` component ([9fdc9aea](9fdc9aea), closes [#442](442))
|
||||
* introduce `StatusAccountSelector` component ([5e15cc49](5e15cc49), closes [#435](435))
|
||||
* introduce `StatusSelect` ([6e10959e](6e10959e), closes [#436](436))
|
||||
* **StatusQ.Popups:** introduce `StatusMenuItemDelegate` ([0764e25a](0764e25a))
|
||||
|
||||
#### Breaking Changes
|
||||
|
||||
* **StatusQ.Popups:** introduce `StatusMenuItemDelegate` ([0764e25a](0764e25a))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## Version 0.11.1(2021-10-12)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Sandbox doesn't build on Linux machines ([dce45c2f](dce45c2f))
|
||||
* **StatusChatInfoButton:** StatusChatInfoButton takes up entire available width ([c276a90e](c276a90e))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## v0.11.0 (2021-09-27)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* track category opened state ([0631d500](0631d500))
|
||||
* **StatusChatList:** ensure right click popup opens in correct position ([a2e3659d](a2e3659d))
|
||||
* **StatusSearchPopup:** use correct theme color for search result text ([654bd9f2](654bd9f2))
|
||||
* **StatusSpellcheckingMenuItems:** Exact menu items order ([478177f2](478177f2))
|
||||
|
||||
#### Features
|
||||
|
||||
* add star icons (#422) ([5c3267f7](5c3267f7))
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## v0.10.0 (2021-09-20)
|
||||
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **StatusChatInfoToolBar:** Right anchored title in StatusChatInfoToolBar ([6e8a36be](6e8a36be))
|
||||
* **StatusChatListCategoryItem:** Disable sensor when chevron clicked ([c83641d2](c83641d2))
|
||||
* **StatusQ.Controls.Validators:** fix bug that addressOrEns validator isn't properly exposed in QML ([1374c193](1374c193))
|
||||
|
||||
#### Features
|
||||
|
||||
* **Spellchecker:** Add Spellchecker class ([c65f80d2](c65f80d2))
|
||||
* **Spellchecking:**
|
||||
* Add dictionaries ([1d12d222](1d12d222))
|
||||
* Add huspell dependency ([f9457ef3](f9457ef3))
|
||||
* **StatusChatList:** expose `statusChatListItems` Repeater ([40c0e48b](40c0e48b))
|
||||
* **StatusExpandableItem:** Correct placement of expandable region in tertiary type ([1f244f62](1f244f62))
|
||||
* **StatusInput:**
|
||||
* add support for asynchronous validators ([8820cd89](8820cd89), closes [#395](395))
|
||||
* introduce `leftPadding` and `rightPadding` properties ([13dc8ae3](13dc8ae3))
|
||||
* introduce `reset` API ([a2ad08e4](a2ad08e4))
|
||||
* **StatusSpellcheckingMenuItems:** Add spellchecking menu ([3e24b710](3e24b710))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## v0.9.0 (2021-09-13)
|
||||
|
||||
|
||||
#### Breaking Changes
|
||||
|
||||
* **StatusExpandableItem:** Refactored the StatusExpandableSettingsItem to support different types ([718171fd](718171fd))
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **StatusAppThreePanelLayout:** Fix margin between left and center panels ([29e9557d](29e9557d))
|
||||
* **StatusChatListAndCategories:** rely on correct tooltip settings prop ([2971c607](2971c607))
|
||||
* **StatusCheckbox:** give checkbox label proper theme color ([88fb57dd](88fb57dd))
|
||||
* **StatusModal:** don't reserve header subtitle space ([eabc62f7](eabc62f7), closes [#378](378))
|
||||
|
||||
#### Features
|
||||
|
||||
* **Status.Core.Theme:** add RobotoMono font ([aab44c1e](aab44c1e), closes [#342](342))
|
||||
* **StatusBaseInput:** introduce `component` property ([019471c8](019471c8), closes [#380](380))
|
||||
* **StatusExpandableItem:** Refactored the StatusExpandableSettingsItem to support different types ([718171fd](718171fd))
|
||||
* **StatusInput:**
|
||||
* introduce `ValidationMode` ([d73a1584](d73a1584))
|
||||
* exposed edit component ([73c77c29](73c77c29))
|
||||
* **StatusQ.Controls.Validators:**
|
||||
* introduce `StatusAddressAndEnsValidator` ([a93ef161](a93ef161))
|
||||
* introduce `StatusAddressValidator` ([77d0e9b8](77d0e9b8))
|
||||
* **StatusSearchPopup:** introduce forceActiveFocus API ([efe31166](efe31166))
|
||||
* **StatusValidator:** allow validators to provide default `errorMessage` ([1a23cc19](1a23cc19))
|
||||
|
||||
|
||||
|
||||
<a name=""></a>
|
||||
## v0.8.0 (2021-09-06)
|
||||
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
cmake_minimum_required(VERSION 3.19)
|
||||
|
||||
project(StatusQ)
|
||||
|
||||
add_subdirectory(tests)
|
||||
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 7.5 KiB |
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 72 KiB |
|
After Width: | Height: | Size: 60 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 35 KiB |
|
After Width: | Height: | Size: 25 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 8.2 KiB |
|
After Width: | Height: | Size: 49 KiB |
@@ -0,0 +1,19 @@
|
||||
/*!
|
||||
\page statusq-index.html
|
||||
\title StatusQ
|
||||
\brief A components library for Status desktop client.
|
||||
|
||||
|
||||
StatusQ provides a collection of components....
|
||||
|
||||
StatusQ - Components and Interfaces
|
||||
\list
|
||||
\li \l{StatusQ Components}{Components}
|
||||
\li \l{StatusQ Controls}{Controls}
|
||||
\li \l{StatusQ Core}{Core}
|
||||
\li \l{StatusQ Layout}{Layout}
|
||||
\li \l{StatusQ Platform}{Platform}
|
||||
\li \l{StatusQ Popups}{Popups}
|
||||
\endlist
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
/*!
|
||||
\qmlmodule StatusQ.Components 0.1
|
||||
\title StatusQ Components
|
||||
\brief Basic set of Components StatusQ components
|
||||
|
||||
This is a listing of all Components components.
|
||||
|
||||
This module is part of the \l{StatusQ}{StatusQ} project.
|
||||
|
||||
\list
|
||||
\li \l{StatusAddress}
|
||||
\li \l{StatusBadge}
|
||||
\li \l{StatusChatInfoToolBar}
|
||||
\li \l{StatusChatList}
|
||||
\li \l{StatusChatListItem}
|
||||
\li \l{StatusImageSettings}
|
||||
\li \l{StatusChatListCategory}
|
||||
\li \l{StatusChatListCategoryItem}
|
||||
\li \l{StatusChatListAndCategories}
|
||||
\li \l{StatusChatToolBar}
|
||||
\li \l{StatusContactRequestsIndicatorListItem}
|
||||
\li \l{StatusDescriptionListItem}
|
||||
\li \l{StatusLetterIdenticon}
|
||||
\li \l{StatusListItem}
|
||||
\li \l{StatusListPicker}
|
||||
\li \l{StatusListSectionHeadline}
|
||||
\li \l{StatusLoadingIndicator}
|
||||
\li \l{StatusMemberListItem}
|
||||
\li \l{StatusNavigationListItem}
|
||||
\li \l{StatusNavigationPanelHeadline}
|
||||
\li \l{StatusRoundIcon}
|
||||
\li \l{StatusRoundedImage}
|
||||
\li \l{StatusMacWindowButtons}
|
||||
\li \l{StatusListItemBadge}
|
||||
\li \l{StatusExpandableItem}
|
||||
\li \l{StatusSmartIdenticon}
|
||||
\li \l{StatusMessage}
|
||||
\li \l{StatusMessageDetails}
|
||||
\li \l{StatusTagSelector}
|
||||
\li \l{StatusToastMessage}
|
||||
\li \l{StatusWizardStepper}
|
||||
\endlist
|
||||
*/
|
||||
@@ -0,0 +1,49 @@
|
||||
/*!
|
||||
\qmlmodule StatusQ.Controls 0.1
|
||||
\title StatusQ Controls
|
||||
\brief Basic set of Controls StatusQ components
|
||||
|
||||
This is a listing of all Controls components.
|
||||
|
||||
This module is part of the \l{StatusQ}{StatusQ} project.
|
||||
|
||||
\list
|
||||
\li \l{StatusAccountSelector}
|
||||
\li \l{StatusAssetSelector}
|
||||
\li \l{StatusBanner}
|
||||
\li \l{StatusChatCommandButton}
|
||||
\li \l{StatusChatInfoButton}
|
||||
\li \l{StatusChatListCategoryItemButton}
|
||||
\li \l{StatusColorSelector}
|
||||
\li \l{StatusIconTabButton}
|
||||
\li \l{StatusNavBarTabButton}
|
||||
\li \l{StatusTabBarIconButton}
|
||||
\li \l{StatusToolTip}
|
||||
\li \l{StatusBaseButton}
|
||||
\li \l{StatusButton}
|
||||
\li \l{StatusFlatButton}
|
||||
\li \l{StatusRoundButton}
|
||||
\li \l{StatusFlatRoundButton}
|
||||
\li \l{StatusSwitch}
|
||||
\li \l{StatusRadioButton}
|
||||
\li \l{StatusCheckBox}
|
||||
\li \l{StatusSlider}
|
||||
\li \l{StatusSelect}
|
||||
\li \l{StatusBaseInput}
|
||||
\li \l{StatusIdenticonRing}
|
||||
\li \l{StatusInput}
|
||||
\li \l{StatusItemPicker}
|
||||
\li \l{StatusPickerButton}
|
||||
\li \l{StatusPinInput}
|
||||
\li \l{StatusProgressBar}
|
||||
\li \l{StatusPasswordStrengthIndicator}
|
||||
\li \l{StatusSwitchTabButton}
|
||||
\li \l{StatusSwitchTabBar}
|
||||
\li \l{StatusSelectableText}
|
||||
\li \l{StatusWalletColorButton}
|
||||
\li \l{StatusWalletColorSelect}
|
||||
\li \l{StatusRegularExpressionValidator}
|
||||
\li \l{StatusIntValidator}
|
||||
\li \l{StatusSeedPhraseInput}
|
||||
\endlist
|
||||
*/
|
||||
@@ -0,0 +1,23 @@
|
||||
/*!
|
||||
\qmlmodule StatusQ.Core 0.1
|
||||
\title StatusQ Core
|
||||
\brief Basic set of Core StatusQ components
|
||||
|
||||
This is a listing of all Core components. These
|
||||
files are available for general import and they are based off the \l{https://doc.qt.io/qt-5/qtquick-qmlmodule.html}{Qt
|
||||
Quick Primitives} and \l{https://doc.qt.io/archives/qt-5.11/qtquick-controls2-qmlmodule.html}{Qt Quick Controls 2}.
|
||||
|
||||
This module is part of the \l{StatusQ}{StatusQ} project.
|
||||
|
||||
\list
|
||||
\li \l{StatusAppNavBarFilterModel}
|
||||
\li \l{StatusBaseText}
|
||||
\li \l{StatusIcon}
|
||||
\li \l{StatusIconBackgroundSettings}
|
||||
\li \l{StatusIconSettings}
|
||||
\li \l{StatusIdenticonRingSettings}
|
||||
\li \l{StatusImageSettings}
|
||||
\li \l{StatusModalHeaderSettings}
|
||||
\li \l{StatusTooltipSettings}
|
||||
\endlist
|
||||
*/
|
||||
@@ -0,0 +1,16 @@
|
||||
/*!
|
||||
\qmlmodule StatusQ.Layout 0.1
|
||||
\title StatusQ Layout
|
||||
\brief Basic set of Layout StatusQ components
|
||||
|
||||
This is a listing of all Layout components.
|
||||
|
||||
This module is part of the \l{StatusQ}{StatusQ} project.
|
||||
|
||||
\list
|
||||
\li \l{StatusAppLayout}
|
||||
\li \l{StatusAppNavBar}
|
||||
\li \l{StatusAppTwoPanelLayout}
|
||||
\li \l{StatusAppThreePanelLayout}
|
||||
\endlist
|
||||
*/
|
||||
@@ -0,0 +1,15 @@
|
||||
/*!
|
||||
\qmlmodule StatusQ.Platform 0.1
|
||||
\title StatusQ Platform
|
||||
\brief Basic set of Platform StatusQ components
|
||||
|
||||
This is a listing of all Platform components.
|
||||
|
||||
This module is part of the \l{StatusQ}{StatusQ} project.
|
||||
|
||||
\list
|
||||
\li \l{StatusMacTrafficLights}
|
||||
\li \l{StatusMacNotification}
|
||||
\li \l{StatusWindowsTitleBar}
|
||||
\endlist
|
||||
*/
|
||||
@@ -0,0 +1,22 @@
|
||||
/*!
|
||||
\qmlmodule StatusQ.Popups 0.1
|
||||
\title StatusQ Popups
|
||||
\brief Basic set of Popups StatusQ components
|
||||
|
||||
This is a listing of all Popups components.
|
||||
|
||||
This module is part of the \l{StatusQ}{StatusQ} project.
|
||||
|
||||
\list
|
||||
\li \l{StatusMenuSeparator}
|
||||
\li \l{StatusPopupMenu}
|
||||
\li \l{StatusMenuItem}
|
||||
\li \l{StatusMenuItemDelegate}
|
||||
\li \l{StatusModal}
|
||||
\li \l{StatusSearchPopup}
|
||||
\li \l{StatusModalDivider}
|
||||
\li \l{StatusSearchPopupMenuItem}
|
||||
\li \l{StatusSearchLocationMenu}
|
||||
\li \l{StatusSpellcheckingMenuItems}
|
||||
\endlist
|
||||
*/
|
||||
@@ -0,0 +1,36 @@
|
||||
project = StatusQ
|
||||
version = 0.1
|
||||
description = StatusQ Project
|
||||
url = https://github.com/status-im/StatusQ
|
||||
|
||||
#These are set implictly by qdoc as well, but only with these the module header can be found
|
||||
includepaths = -I . \
|
||||
-I $PWD/../src/StatusQ
|
||||
|
||||
imagedirs = src/images
|
||||
sourcedirs += src \
|
||||
$PWD/../src/StatusQ/Components \
|
||||
$PWD/../src/StatusQ/Controls \
|
||||
$PWD/../src/StatusQ/Core \
|
||||
$PWD/../src/StatusQ/Layout \
|
||||
$PWD/../src/StatusQ/Platform \
|
||||
$PWD/../src/StatusQ/Popups \
|
||||
|
||||
sources.fileextensions = "*.cpp *.qdoc *.qml"
|
||||
|
||||
depends += qtcore \
|
||||
qtquick \
|
||||
qtqml \
|
||||
qtgui \
|
||||
qtdoc \
|
||||
qtquickcontrols2
|
||||
|
||||
navigation.homepage = "StatusQ"
|
||||
|
||||
outputdir = $PWD/html
|
||||
outputformats = HTML
|
||||
|
||||
HTML.stylesheets = style.css
|
||||
HTML.headerstyles = "<link rel=\"stylesheet\" type=\"text/css\" href=\"style/style.css\"/>\n"
|
||||
HTML.postheader = "<p class=\"header\"><small>StatusQ - A Components selection for Status dekstop client. </p></small></p><hr/>"
|
||||
HTML.footer = "<hr/><div class=\"footer\"><p><acronym title=\"Copyright\">©</acronym> 2022 Status. All rights reserved. <a href=\"https://status.im\" target=\"_blank\"><small>status.im</a></small></p></div>"
|
||||
@@ -0,0 +1,41 @@
|
||||
body {
|
||||
font-family: "Verdana";
|
||||
font-size: 14px;
|
||||
max-width: 80%;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
color: #4360DF;
|
||||
}
|
||||
|
||||
div.sidebar {
|
||||
float: right;
|
||||
}
|
||||
|
||||
pre {
|
||||
padding: 15px;
|
||||
}
|
||||
div.qmlproto {
|
||||
padding-left: 15px;
|
||||
padding-right: 15px;
|
||||
}
|
||||
pre, div.qmlproto {
|
||||
font-family: "Courier New";
|
||||
font-size: 20px;
|
||||
margin-left: 2em;
|
||||
background-color: #F0F2F5;
|
||||
}
|
||||
|
||||
hr {
|
||||
margin-top: 2em;
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
|
||||
p.header {
|
||||
margin-bottom: -1em;
|
||||
}
|
||||
p.footer {
|
||||
text-align: right;
|
||||
margin-top: -1em;
|
||||
}
|
||||
@@ -9,6 +9,9 @@ import StatusQ.Layout 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
import StatusQ.Platform 0.1
|
||||
|
||||
import "demoapp"
|
||||
import "demoapp/data" 1.0
|
||||
|
||||
Rectangle {
|
||||
id: demoApp
|
||||
height: 602
|
||||
@@ -18,6 +21,32 @@ Rectangle {
|
||||
|
||||
property string titleStyle: "osx"
|
||||
|
||||
QtObject {
|
||||
id: appSectionType
|
||||
readonly property int chat: 0
|
||||
readonly property int community: 1
|
||||
readonly property int communitiesPortal: 2
|
||||
readonly property int wallet: 3
|
||||
readonly property int browser: 3
|
||||
readonly property int nodeManagement: 5
|
||||
readonly property int profileSettings: 6
|
||||
readonly property int apiDocumentation: 100
|
||||
readonly property int demoApp: 101
|
||||
}
|
||||
|
||||
function setActiveItem(sectionId) {
|
||||
for (var i = 0; i < Models.demoAppSectionsModel.count; i++) {
|
||||
let item = Models.demoAppSectionsModel.get(i)
|
||||
if (item.sectionId !== sectionId)
|
||||
{
|
||||
Models.demoAppSectionsModel.setProperty(i, "active", false)
|
||||
continue
|
||||
}
|
||||
|
||||
Models.demoAppSectionsModel.setProperty(i, "active", true);
|
||||
}
|
||||
}
|
||||
|
||||
StatusMacTrafficLights {
|
||||
anchors.left: parent.left
|
||||
anchors.top: parent.top
|
||||
@@ -48,32 +77,79 @@ Rectangle {
|
||||
|
||||
id: navBar
|
||||
|
||||
navBarChatButton: StatusNavBarTabButton {
|
||||
icon.name: "chat"
|
||||
tooltip.text: "Chat"
|
||||
checked: appView.sourceComponent == statusAppChatView
|
||||
onClicked: {
|
||||
appView.sourceComponent = statusAppChatView
|
||||
}
|
||||
communityTypeRole: "sectionType"
|
||||
communityTypeValue: appSectionType.community
|
||||
sectionModel: Models.demoAppSectionsModel
|
||||
|
||||
property bool communityAdded: false
|
||||
|
||||
onAboutToUpdateFilteredRegularModel: {
|
||||
communityAdded = false
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.model: ListModel {
|
||||
ListElement {
|
||||
name: "Status Community"
|
||||
tooltipText: "Status Community"
|
||||
}
|
||||
filterRegularItem: function(item) {
|
||||
if(item.sectionType === appSectionType.community)
|
||||
if(communityAdded)
|
||||
return false
|
||||
else
|
||||
communityAdded = true
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.delegate: StatusNavBarTabButton {
|
||||
id: communityBtn
|
||||
filterCommunityItem: function(item) {
|
||||
return item.sectionType === appSectionType.community
|
||||
}
|
||||
|
||||
regularNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.name
|
||||
tooltip.text: model.tooltipText
|
||||
icon.color: Theme.palette.miscColor6
|
||||
icon.source: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
checked: appView.sourceComponent == statusAppCommunityView
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
onClicked: {
|
||||
appView.sourceComponent = statusAppCommunityView
|
||||
if(model.sectionType === appSectionType.chat)
|
||||
{
|
||||
appView.sourceComponent = statusAppChatView
|
||||
demoApp.setActiveItem(model.sectionId)
|
||||
}
|
||||
else if(model.sectionType === appSectionType.communitiesPortal)
|
||||
{
|
||||
appView.sourceComponent = statusCommunityPortalView
|
||||
demoApp.setActiveItem(model.sectionId)
|
||||
}
|
||||
else if(model.sectionType === appSectionType.profileSettings)
|
||||
{
|
||||
appView.sourceComponent = statusAppProfileSettingsView
|
||||
demoApp.setActiveItem(model.sectionId)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
communityNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
onClicked: {
|
||||
if(model.sectionType === appSectionType.community)
|
||||
{
|
||||
appView.sourceComponent = statusAppCommunityView
|
||||
demoApp.setActiveItem(model.sectionId)
|
||||
}
|
||||
}
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
@@ -104,39 +180,7 @@ Rectangle {
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
navBarTabButtons: [
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "wallet"
|
||||
tooltip.text: "Wallet"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "bigger/browser"
|
||||
tooltip.text: "Browser"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "bigger/status-update"
|
||||
tooltip.text: "Timeline"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
id: profileNavButton
|
||||
icon.name: "bigger/settings"
|
||||
badge.visible: true
|
||||
badge.anchors.rightMargin: 4
|
||||
badge.anchors.topMargin: 5
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusAppNavBar.backgroundColor
|
||||
badge.border.width: 2
|
||||
|
||||
tooltip.text: "Profile"
|
||||
|
||||
checked: appView.sourceComponent == statusAppProfileSettingsView
|
||||
onClicked: {
|
||||
appView.sourceComponent = statusAppProfileSettingsView
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
appView: Loader {
|
||||
@@ -148,735 +192,36 @@ Rectangle {
|
||||
|
||||
Component {
|
||||
id: statusAppChatView
|
||||
|
||||
StatusAppTwoPanelLayout {
|
||||
|
||||
leftPanel: Item {
|
||||
anchors.fill: parent
|
||||
|
||||
StatusNavigationPanelHeadline {
|
||||
id: headline
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: 16
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
text: "Chat"
|
||||
}
|
||||
|
||||
Item {
|
||||
id: searchInputWrapper
|
||||
anchors.top: headline.bottom
|
||||
anchors.topMargin: 16
|
||||
width: parent.width
|
||||
height: searchInput.height
|
||||
|
||||
StatusBaseInput {
|
||||
id: searchInput
|
||||
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.left: parent.left
|
||||
anchors.right: actionButton.left
|
||||
anchors.leftMargin: 16
|
||||
anchors.rightMargin: 16
|
||||
|
||||
height: 36
|
||||
topPadding: 8
|
||||
bottomPadding: 0
|
||||
placeholderText: "Search"
|
||||
icon.name: "search"
|
||||
}
|
||||
|
||||
StatusRoundButton {
|
||||
id: actionButton
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: 8
|
||||
width: 32
|
||||
height: 32
|
||||
|
||||
type: StatusRoundButton.Type.Secondary
|
||||
icon.name: "add"
|
||||
state: "default"
|
||||
|
||||
onClicked: chatContextMenu.popup(actionButton.width-chatContextMenu.width, actionButton.height + 4)
|
||||
states: [
|
||||
State {
|
||||
name: "default"
|
||||
PropertyChanges {
|
||||
target: actionButton
|
||||
icon.rotation: 0
|
||||
highlighted: false
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "pressed"
|
||||
PropertyChanges {
|
||||
target: actionButton
|
||||
icon.rotation: 45
|
||||
highlighted: true
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
transitions: [
|
||||
Transition {
|
||||
from: "default"
|
||||
to: "pressed"
|
||||
|
||||
RotationAnimation {
|
||||
duration: 150
|
||||
direction: RotationAnimation.Clockwise
|
||||
easing.type: Easing.InCubic
|
||||
}
|
||||
},
|
||||
Transition {
|
||||
from: "pressed"
|
||||
to: "default"
|
||||
RotationAnimation {
|
||||
duration: 150
|
||||
direction: RotationAnimation.Counterclockwise
|
||||
easing.type: Easing.OutCubic
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
StatusPopupMenu {
|
||||
id: chatContextMenu
|
||||
|
||||
onOpened: {
|
||||
actionButton.state = "pressed"
|
||||
}
|
||||
|
||||
onClosed: {
|
||||
actionButton.state = "default"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Start new chat"
|
||||
icon.name: "private-chat"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Start group chat"
|
||||
icon.name: "group-chat"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Join public chat"
|
||||
icon.name: "public-chat"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Communities"
|
||||
icon.name: "communities"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
anchors.top: searchInputWrapper.bottom
|
||||
anchors.topMargin: 16
|
||||
width: parent.width
|
||||
spacing: 8
|
||||
|
||||
StatusContactRequestsIndicatorListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
title: "Contact requests"
|
||||
requestsCount: 3
|
||||
sensor.onClicked: demoContactRequestsModal.open()
|
||||
}
|
||||
|
||||
StatusChatList {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
chatListItems.model: models.demoChatListItems
|
||||
selectedChatId: "0"
|
||||
onChatItemSelected: selectedChatId = id
|
||||
onChatItemUnmuted: {
|
||||
for (var i = 0; i < models.demoChatListItems.count; i++) {
|
||||
let item = models.demoChatListItems.get(i);
|
||||
if (item.chatId === id) {
|
||||
models.demoChatListItems.setProperty(i, "muted", false)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
|
||||
property string chatId
|
||||
|
||||
openHandler: function (id) {
|
||||
chatId = id
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "View Profile"
|
||||
icon.name: "group-chat"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mute chat"
|
||||
icon.name: "notification"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mark as Read"
|
||||
icon.name: "checkmark-circle"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Clear history"
|
||||
icon.name: "close-circle"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Delete chat"
|
||||
icon.name: "delete"
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
rightPanel: Item {
|
||||
anchors.fill: parent
|
||||
|
||||
StatusChatToolBar {
|
||||
anchors.top: parent.top
|
||||
width: parent.width
|
||||
|
||||
chatInfoButton.title: "Amazing Funny Squirrel"
|
||||
chatInfoButton.subTitle: "Contact"
|
||||
chatInfoButton.icon.color: Theme.palette.miscColor7
|
||||
chatInfoButton.type: StatusChatInfoButton.Type.OneToOneChat
|
||||
chatInfoButton.pinnedMessagesCount: 1
|
||||
|
||||
searchButton.visible: false
|
||||
membersButton.visible: false
|
||||
notificationCount: 1
|
||||
|
||||
onNotificationButtonClicked: notificationCount = 0
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
id: contextMenu
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mute Chat"
|
||||
icon.name: "notification"
|
||||
}
|
||||
StatusMenuItem {
|
||||
text: "Mark as Read"
|
||||
icon.name: "checkmark-circle"
|
||||
}
|
||||
StatusMenuItem {
|
||||
text: "Clear History"
|
||||
icon.name: "close-circle"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Leave Chat"
|
||||
icon.name: "arrow-right"
|
||||
icon.width: 14
|
||||
iconRotation: 180
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
StatusAppChatView { }
|
||||
}
|
||||
|
||||
Component {
|
||||
id: statusAppCommunityView
|
||||
|
||||
StatusAppThreePanelLayout {
|
||||
id: root
|
||||
|
||||
handle: Rectangle {
|
||||
implicitWidth: 5
|
||||
color: SplitHandle.pressed ? Theme.palette.baseColor2
|
||||
: (SplitHandle.hovered ? Qt.darker(Theme.palette.baseColor5, 1.1) : "transparent")
|
||||
}
|
||||
leftPanel: Item {
|
||||
id: leftPanel
|
||||
|
||||
StatusChatInfoToolBar {
|
||||
id: statusChatInfoToolBar
|
||||
|
||||
anchors.top: parent.top
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
chatInfoButton.title: "CryptoKitties"
|
||||
chatInfoButton.subTitle: "128 Members"
|
||||
chatInfoButton.image.source: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
chatInfoButton.icon.color: Theme.palette.miscColor6
|
||||
chatInfoButton.onClicked: demoCommunityDetailModal.open()
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Create channel"
|
||||
icon.name: "channel"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Create category"
|
||||
icon.name: "channel-category"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Invite people"
|
||||
icon.name: "share-ios"
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
ScrollView {
|
||||
id: scrollView
|
||||
|
||||
anchors.top: statusChatInfoToolBar.bottom
|
||||
anchors.topMargin: 8
|
||||
anchors.bottom: parent.bottom
|
||||
width: leftPanel.width
|
||||
|
||||
contentHeight: communityCategories.height
|
||||
clip: true
|
||||
|
||||
StatusChatListAndCategories {
|
||||
id: communityCategories
|
||||
width: leftPanel.width
|
||||
height: implicitHeight > (leftPanel.height - 64) ? implicitHeight + 8 : leftPanel.height - 64
|
||||
|
||||
draggableItems: true
|
||||
draggableCategories: false
|
||||
chatList.model: models.demoCommunityChatListItems
|
||||
categoryList.model: models.demoCommunityCategoryItems
|
||||
|
||||
showCategoryActionButtons: true
|
||||
onChatItemSelected: selectedChatId = id
|
||||
|
||||
categoryPopupMenu: StatusPopupMenu {
|
||||
|
||||
property string categoryId
|
||||
|
||||
openHandler: function (id) {
|
||||
categoryId = id
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mute Category"
|
||||
icon.name: "notification"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mark as Read"
|
||||
icon.name: "checkmark-circle"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Edit Category"
|
||||
icon.name: "edit"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Delete Category"
|
||||
icon.name: "delete"
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
|
||||
chatListPopupMenu: StatusPopupMenu {
|
||||
|
||||
property string chatId
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mute chat"
|
||||
icon.name: "notification"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mark as Read"
|
||||
icon.name: "checkmark-circle"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Clear history"
|
||||
icon.name: "close-circle"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Delete chat"
|
||||
icon.name: "delete"
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
StatusMenuItem {
|
||||
text: "Create channel"
|
||||
icon.name: "channel"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Create category"
|
||||
icon.name: "channel-category"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Invite people"
|
||||
icon.name: "share-ios"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
centerPanel: Item {
|
||||
StatusChatToolBar {
|
||||
id: statusChatToolBar
|
||||
anchors.top: parent.top
|
||||
width: parent.width
|
||||
|
||||
chatInfoButton.title: "general"
|
||||
chatInfoButton.subTitle: "Community Chat"
|
||||
chatInfoButton.icon.color: Theme.palette.miscColor6
|
||||
chatInfoButton.type: StatusChatInfoButton.Type.CommunityChat
|
||||
onSearchButtonClicked: {
|
||||
searchButton.highlighted = !searchButton.highlighted;
|
||||
searchPopup.setSearchSelection(demoCommunityDetailModal.header.title,
|
||||
"",
|
||||
demoCommunityDetailModal.header.image.source);
|
||||
searchPopup.open();
|
||||
}
|
||||
membersButton.onClicked: membersButton.highlighted = !membersButton.highlighted
|
||||
onMembersButtonClicked: {
|
||||
root.showRightPanel = !root.showRightPanel;
|
||||
}
|
||||
}
|
||||
|
||||
StatusSearchPopup {
|
||||
id: searchPopup
|
||||
searchOptionsPopupMenu: searchPopupMenu
|
||||
onAboutToHide: {
|
||||
if (searchPopupMenu.visible) {
|
||||
searchPopupMenu.close();
|
||||
}
|
||||
//clear menu
|
||||
for (var i = 2; i < searchPopupMenu.count; i++) {
|
||||
searchPopupMenu.removeItem(searchPopupMenu.takeItem(i));
|
||||
}
|
||||
}
|
||||
onClosed: {
|
||||
statusChatToolBar.searchButton.highlighted = false
|
||||
searchPopupMenu.dismiss();
|
||||
}
|
||||
onSearchTextChanged: {
|
||||
if (searchPopup.searchText !== "") {
|
||||
searchPopup.loading = true;
|
||||
searchModelSimTimer.start();
|
||||
} else {
|
||||
searchPopup.searchResults = [];
|
||||
searchModelSimTimer.stop();
|
||||
}
|
||||
}
|
||||
Timer {
|
||||
id: searchModelSimTimer
|
||||
interval: 500
|
||||
onTriggered: {
|
||||
if (searchPopup.searchText.startsWith("c")) {
|
||||
searchPopup.searchResults = models.searchResultsA;
|
||||
} else {
|
||||
searchPopup.searchResults = models.searchResultsB;
|
||||
}
|
||||
searchPopup.loading = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
StatusSearchLocationMenu {
|
||||
id: searchPopupMenu
|
||||
searchPopup: searchPopup
|
||||
locationModel: models.optionsModel
|
||||
}
|
||||
}
|
||||
|
||||
rightPanel: Item {
|
||||
id: rightPanel
|
||||
StatusBaseText {
|
||||
id: titleText
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin:16
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: 16
|
||||
opacity: (rightPanel.width > 50) ? 1.0 : 0.0
|
||||
visible: (opacity > 0.1)
|
||||
font.pixelSize: 15
|
||||
text: qsTr("Members")
|
||||
}
|
||||
|
||||
ListView {
|
||||
anchors.top: titleText.bottom
|
||||
anchors.topMargin: 16
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: 8
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: 8
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.bottomMargin: 16
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
model: ["John", "Nick", "Maria", "Mike"]
|
||||
delegate: Row {
|
||||
width: parent.width
|
||||
height: 30
|
||||
spacing: 8
|
||||
Rectangle {
|
||||
width: 24
|
||||
height: 24
|
||||
radius: width/2
|
||||
color: Qt.rgba(Math.random(), Math.random(), Math.random(), 255)
|
||||
}
|
||||
StatusBaseText {
|
||||
height: parent.height
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
opacity: (rightPanel.width > 50) ? 1.0 : 0.0
|
||||
visible: (opacity > 0.1)
|
||||
font.pixelSize: 15
|
||||
color: Theme.palette.directColor1
|
||||
text: modelData
|
||||
}
|
||||
}
|
||||
}
|
||||
StatusAppCommunityView {
|
||||
communityDetailModalTitle: demoCommunityDetailModal.header.title
|
||||
communityDetailModalImage: demoCommunityDetailModal.header.image.source
|
||||
onChatInfoButtonClicked: {
|
||||
demoCommunityDetailModal.open();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component {
|
||||
id: statusAppProfileSettingsView
|
||||
|
||||
StatusAppTwoPanelLayout {
|
||||
|
||||
leftPanel: Item {
|
||||
anchors.fill: parent
|
||||
|
||||
StatusNavigationPanelHeadline {
|
||||
id: profileHeadline
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: 16
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
text: "Profile"
|
||||
}
|
||||
|
||||
ScrollView {
|
||||
anchors.top: profileHeadline.bottom
|
||||
anchors.topMargin: 16
|
||||
anchors.bottom: parent.bottom
|
||||
width: parent.width
|
||||
|
||||
contentHeight: profileMenuItems.height + 8
|
||||
contentWidth: parent.width
|
||||
clip: true
|
||||
|
||||
Column {
|
||||
id: profileMenuItems
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
spacing: 4
|
||||
|
||||
Repeater {
|
||||
model: models.demoProfileGeneralMenuItems
|
||||
delegate: StatusNavigationListItem {
|
||||
title: model.title
|
||||
icon.name: model.icon
|
||||
}
|
||||
}
|
||||
|
||||
StatusListSectionHeadline { text: "Settings" }
|
||||
|
||||
Repeater {
|
||||
model: models.demoProfileSettingsMenuItems
|
||||
delegate: StatusNavigationListItem {
|
||||
title: model.title
|
||||
icon.name: model.icon
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
id: invisibleSeparator
|
||||
height: 16
|
||||
width: parent.width
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: models.demoProfileOtherMenuItems
|
||||
delegate: StatusNavigationListItem {
|
||||
title: model.title
|
||||
icon.name: model.icon
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
rightPanel: Item {
|
||||
anchors.fill: parent
|
||||
}
|
||||
}
|
||||
StatusAppProfileSettingsView { }
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
Component {
|
||||
id: statusCommunityPortalView
|
||||
StatusAppCommunitiesPortalView { }
|
||||
}
|
||||
|
||||
DemoContactRequestsModal {
|
||||
id: demoContactRequestsModal
|
||||
anchors.centerIn: parent
|
||||
|
||||
header.title: "Contact Requests"
|
||||
headerActionButton: StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Secondary
|
||||
width: 32
|
||||
height: 32
|
||||
|
||||
icon.width: 20
|
||||
icon.height: 20
|
||||
icon.name: "notification"
|
||||
}
|
||||
|
||||
contentItem: StatusBaseText {
|
||||
anchors.centerIn: parent
|
||||
text: "Contact request will be shown here"
|
||||
font.pixelSize: 15
|
||||
color: Theme.palette.directColor1
|
||||
}
|
||||
|
||||
rightButtons: [
|
||||
StatusButton {
|
||||
text: "Decline all"
|
||||
type: StatusBaseButton.Type.Danger
|
||||
onClicked: demoContactRequestsModal.close()
|
||||
},
|
||||
StatusButton {
|
||||
text: "Accept all"
|
||||
onClicked: demoContactRequestsModal.close()
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
DemoCommunityDetailModal {
|
||||
id: demoCommunityDetailModal
|
||||
|
||||
anchors.centerIn: parent
|
||||
|
||||
header.title: "Cryptokitties"
|
||||
header.subTitle: "Public Community"
|
||||
header.image.source: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
|
||||
contentItem: Column {
|
||||
width: demoCommunityDetailModal.width
|
||||
|
||||
StatusModalDivider {
|
||||
bottomPadding: 8
|
||||
}
|
||||
|
||||
StatusBaseText {
|
||||
text: "A community of cat lovers, meow!"
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
font.pixelSize: 15
|
||||
height: 46
|
||||
color: Theme.palette.directColor1
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.leftMargin: 16
|
||||
anchors.rightMargin: 16
|
||||
}
|
||||
|
||||
StatusModalDivider {
|
||||
topPadding: 8
|
||||
bottomPadding: 8
|
||||
}
|
||||
|
||||
StatusDescriptionListItem {
|
||||
title: "Share community"
|
||||
subTitle: "https://join.status.im/u/0x04...45f19"
|
||||
tooltip.text: "Copy to clipboard"
|
||||
icon.name: "copy"
|
||||
iconButton.onClicked: tooltip.visible = !tooltip.visible
|
||||
width: parent.width
|
||||
}
|
||||
|
||||
StatusModalDivider {
|
||||
topPadding: 8
|
||||
bottomPadding: 8
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Members"
|
||||
icon.name: "group-chat"
|
||||
label: "184"
|
||||
components: [
|
||||
StatusIcon {
|
||||
icon: "chevron-down"
|
||||
rotation: 270
|
||||
color: Theme.palette.baseColor1
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Notifications"
|
||||
icon.name: "notification"
|
||||
components: [
|
||||
StatusSwitch {}
|
||||
]
|
||||
}
|
||||
|
||||
StatusModalDivider {
|
||||
topPadding: 8
|
||||
bottomPadding: 8
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Edit community"
|
||||
icon.name: "edit"
|
||||
type: StatusListItem.Type.Secondary
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Transfer ownership"
|
||||
icon.name: "exchange"
|
||||
type: StatusListItem.Type.Secondary
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Leave community"
|
||||
icon.name: "arrow-right"
|
||||
icon.rotation: 180
|
||||
type: StatusListItem.Type.Secondary
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Models {
|
||||
id: models
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,295 +0,0 @@
|
||||
import QtQuick 2.14
|
||||
import QtQuick.Controls 2.14
|
||||
import QtQuick.Layouts 1.14
|
||||
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Layout 0.1
|
||||
|
||||
Column {
|
||||
spacing: 5
|
||||
|
||||
StatusChatToolBar {
|
||||
chatInfoButton.title: "Some contact"
|
||||
chatInfoButton.subTitle: "Contact"
|
||||
chatInfoButton.icon.color: Theme.palette.miscColor7
|
||||
chatInfoButton.type: StatusChatInfoButton.Type.OneToOneChat
|
||||
}
|
||||
|
||||
StatusChatToolBar {
|
||||
chatInfoButton.title: "Some contact"
|
||||
chatInfoButton.subTitle: "Contact"
|
||||
chatInfoButton.icon.color: Theme.palette.miscColor7
|
||||
chatInfoButton.type: StatusChatInfoButton.Type.PublicChat
|
||||
chatInfoButton.pinnedMessagesCount: 1
|
||||
chatInfoButton.muted: true
|
||||
}
|
||||
|
||||
StatusChatToolBar {
|
||||
chatInfoButton.title: "Some contact"
|
||||
chatInfoButton.subTitle: "Contact"
|
||||
chatInfoButton.icon.color: Theme.palette.miscColor7
|
||||
chatInfoButton.type: StatusChatInfoButton.Type.OneToOneChat
|
||||
chatInfoButton.pinnedMessagesCount: 1
|
||||
notificationCount: 1
|
||||
}
|
||||
|
||||
Row {
|
||||
spacing: 5
|
||||
Button {
|
||||
id: btn
|
||||
text: "Append"
|
||||
onClicked: {
|
||||
buttons.append({
|
||||
name: "Test community",
|
||||
tooltipText: "Test Community"
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
navBarChatButton: StatusNavBarTabButton {
|
||||
icon.name: "chat"
|
||||
badge.value: 33
|
||||
badge.visible: true
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
tooltip.text: "Chat"
|
||||
}
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
navBarChatButton: StatusNavBarTabButton {
|
||||
icon.name: "chat"
|
||||
badge.value: 33
|
||||
badge.visible: true
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
tooltip.text: "Chat"
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.model: ListModel {
|
||||
id: buttons
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.delegate: StatusNavBarTabButton {
|
||||
name: model.name
|
||||
tooltip.text: model.name
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
navBarTabButtons: [
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "wallet"
|
||||
tooltip.text: "Wallet"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "browser"
|
||||
tooltip.text: "Browser"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "status-update"
|
||||
tooltip.text: "Timeline"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "profile"
|
||||
badge.visible: true
|
||||
badge.anchors.rightMargin: 4
|
||||
badge.anchors.topMargin: 5
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
|
||||
tooltip.text: "Profile"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
navBarChatButton: StatusNavBarTabButton {
|
||||
icon.name: "chat"
|
||||
badge.value: 33
|
||||
badge.visible: true
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
tooltip.text: "Chat"
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.model: ListModel {
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.delegate: StatusNavBarTabButton {
|
||||
name: model.name
|
||||
tooltip.text: model.name
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
navBarTabButtons: [
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "wallet"
|
||||
tooltip.text: "Wallet"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "browser"
|
||||
tooltip.text: "Browser"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
navBarChatButton: StatusNavBarTabButton {
|
||||
icon.name: "chat"
|
||||
badge.value: 33
|
||||
badge.visible: true
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
tooltip.text: "Chat"
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.model: ListModel {
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.delegate: StatusNavBarTabButton {
|
||||
name: model.name
|
||||
tooltip.text: model.name
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
navBarTabButtons: [
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "wallet"
|
||||
tooltip.text: "Wallet"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "browser"
|
||||
tooltip.text: "Browser"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "status-update"
|
||||
tooltip.text: "Timeline"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "profile"
|
||||
badge.visible: true
|
||||
badge.anchors.rightMargin: 4
|
||||
badge.anchors.topMargin: 5
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
|
||||
tooltip.text: "Profile"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
id: test
|
||||
navBarChatButton: StatusNavBarTabButton {
|
||||
icon.name: "chat"
|
||||
badge.value: 33
|
||||
badge.visible: true
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
tooltip.text: "Chat"
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.model: ListModel {
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
ListElement {
|
||||
name: "Test community"
|
||||
tooltipText: "Test Community"
|
||||
}
|
||||
}
|
||||
|
||||
navBarCommunityTabButtons.delegate: StatusNavBarTabButton {
|
||||
name: model.name
|
||||
tooltip.text: model.name
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
navBarTabButtons: [
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "wallet"
|
||||
tooltip.text: "Wallet"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "browser"
|
||||
tooltip.text: "Browser"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "status-update"
|
||||
tooltip.text: "Timeline"
|
||||
},
|
||||
StatusNavBarTabButton {
|
||||
icon.name: "profile"
|
||||
badge.visible: true
|
||||
badge.anchors.rightMargin: 4
|
||||
badge.anchors.topMargin: 5
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
|
||||
tooltip.text: "Profile"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,336 +0,0 @@
|
||||
import QtQuick 2.14
|
||||
import StatusQ.Components 0.1
|
||||
|
||||
QtObject {
|
||||
|
||||
property var demoChatListItems: ListModel {
|
||||
id: demoChatListItems
|
||||
ListElement {
|
||||
chatId: "0"
|
||||
name: "#status"
|
||||
chatType: StatusChatListItem.Type.PublicChat
|
||||
muted: false
|
||||
unreadMessagesCount: 0
|
||||
mentionsCount: 0
|
||||
color: "blue"
|
||||
position: 0
|
||||
}
|
||||
ListElement {
|
||||
chatId: "1"
|
||||
name: "status-desktop"
|
||||
chatType: StatusChatListItem.Type.PublicChat
|
||||
muted: false
|
||||
color: "red"
|
||||
unreadMessagesCount: 1
|
||||
mentionsCount: 1
|
||||
position: 1
|
||||
}
|
||||
ListElement {
|
||||
chatId: "2"
|
||||
name: "Amazing Funny Squirrel"
|
||||
chatType: StatusChatListItem.Type.OneToOneChat
|
||||
muted: false
|
||||
color: "green"
|
||||
identicon: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0Bh
|
||||
CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
||||
unreadMessagesCount: 0
|
||||
position: 2
|
||||
}
|
||||
ListElement {
|
||||
chatId: "3"
|
||||
name: "Black Ops"
|
||||
chatType: StatusChatListItem.Type.GroupChat
|
||||
muted: false
|
||||
color: "purple"
|
||||
unreadMessagesCount: 0
|
||||
position: 3
|
||||
}
|
||||
ListElement {
|
||||
chatId: "4"
|
||||
name: "Spectacular Growing Otter"
|
||||
chatType: StatusChatListItem.Type.OneToOneChat
|
||||
muted: true
|
||||
color: "Orange"
|
||||
unreadMessagesCount: 0
|
||||
position: 4
|
||||
}
|
||||
ListElement {
|
||||
chatId: "5"
|
||||
name: "channel-with-a-super-duper-long-name"
|
||||
chatType: StatusChatListItem.Type.PublicChat
|
||||
muted: false
|
||||
color: "green"
|
||||
unreadMessagesCount: 0
|
||||
position: 5
|
||||
}
|
||||
}
|
||||
|
||||
property var demoCommunityChatListItems: ListModel {
|
||||
id: demoCommunityChatListItems
|
||||
ListElement {
|
||||
chatId: "0"
|
||||
name: "general"
|
||||
chatType: StatusChatListItem.Type.CommunityChat
|
||||
muted: false
|
||||
unreadMessagesCount: 0
|
||||
color: "orange"
|
||||
position: 0
|
||||
}
|
||||
ListElement {
|
||||
chatId: "1"
|
||||
name: "random"
|
||||
chatType: StatusChatListItem.Type.CommunityChat
|
||||
muted: false
|
||||
unreadMessagesCount: 0
|
||||
color: "orange"
|
||||
categoryId: "public"
|
||||
position: 0
|
||||
}
|
||||
ListElement {
|
||||
chatId: "2"
|
||||
name: "watercooler"
|
||||
chatType: StatusChatListItem.Type.CommunityChat
|
||||
muted: false
|
||||
unreadMessagesCount: 0
|
||||
color: "orange"
|
||||
categoryId: "public"
|
||||
position: 1
|
||||
}
|
||||
ListElement {
|
||||
chatId: "3"
|
||||
name: "language-design"
|
||||
chatType: StatusChatListItem.Type.CommunityChat
|
||||
muted: false
|
||||
unreadMessagesCount: 0
|
||||
color: "orange"
|
||||
categoryId: "dev"
|
||||
position: 0
|
||||
}
|
||||
}
|
||||
|
||||
property var demoCommunityCategoryItems: ListModel {
|
||||
id: demoCommunityCategoryItems
|
||||
ListElement {
|
||||
categoryId: "public"
|
||||
name: "Public"
|
||||
position: 0
|
||||
}
|
||||
ListElement {
|
||||
categoryId: "dev"
|
||||
name: "Development"
|
||||
position: 1
|
||||
}
|
||||
}
|
||||
|
||||
property var demoProfileGeneralMenuItems: ListModel {
|
||||
id: demoProfileGeneralMenuItems
|
||||
|
||||
ListElement {
|
||||
title: "My Profile"
|
||||
icon: "profile"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Contacts"
|
||||
icon: "contact"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "ENS Usernames"
|
||||
icon: "username"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
property var demoProfileSettingsMenuItems: ListModel {
|
||||
id: demoProfileSettingsMenuItems
|
||||
|
||||
ListElement {
|
||||
title: "Privacy & Security"
|
||||
icon: "security"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Appearance"
|
||||
icon: "appearance"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Browser"
|
||||
icon: "browser"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Sounds"
|
||||
icon: "sound"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Language"
|
||||
icon: "language"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Notifications"
|
||||
icon: "notification"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Sync settings"
|
||||
icon: "mobile"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Advanced"
|
||||
icon: "settings"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
property var demoProfileOtherMenuItems: ListModel {
|
||||
id: demoProfileOtherMenuItems
|
||||
|
||||
ListElement {
|
||||
title: "Need help?"
|
||||
icon: "help"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "About"
|
||||
icon: "info"
|
||||
}
|
||||
|
||||
ListElement {
|
||||
title: "Sign out & Quit"
|
||||
icon: "logout"
|
||||
}
|
||||
}
|
||||
|
||||
//dummy search popup models
|
||||
property var searchResultsA: ListModel {
|
||||
ListElement { itemId: "i1"; titleId: "t1"; title: "@Flea"; sectionName: "Messages"; time: "18:55 AM"; content: "lorem ipsum <font color='#4360DF'>@Nick</font> dolor sit amet";
|
||||
image: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg";
|
||||
color: "orange";
|
||||
badgeImage: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg";
|
||||
badgePrimaryText: "CryptoKities";
|
||||
badgeSecondaryText: "";
|
||||
badgeIconColor: "";
|
||||
badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i2"; titleId: "t2"; image: ""; color: "blue"; title: "core"; sectionName: "Channels"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i3"; titleId: "t3"; image: ""; color: "yellow"; title: "communities-phase3"; sectionName: "Channels"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i4"; titleId: "t4"; image: ""; color: "black"; title: "core-ui"; sectionName: "Channels"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i5"; titleId: "t5"; image: ""; color: "green"; title: "desktop"; sectionName: "Channels"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i6"; titleId: "t6"; image: ""; color: "red"; title: "Crocodile Vanilla Bird"; sectionName: "Chat"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i7"; titleId: "t7"; image: ""; color: "purple"; title: "carmen eth"; sectionName: "Chat"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i8"; titleId: "t8"; image: ""; color: "red"; title: "CryptoKitties"; sectionName: "Communities"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i9"; titleId: "t9"; image: ""; color: "blue"; title: "MyCommunity"; sectionName: "Communities"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i10"; titleId: "t10"; image: ""; color: "green"; title: "Foo"; sectionName: "Communities"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
}
|
||||
property var searchResultsB: ListModel {
|
||||
ListElement { itemId: "i1"; titleId: "t1"; title: "@Ant"; sectionName: "Messages"; time: "11:43 AM"; content: "<font color='#4360DF'>@John</font>, lorem ipsum dolor sit amet, consectetur adipiscing 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. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum ";
|
||||
image: "";
|
||||
color: "orange";
|
||||
badgeImage: "";
|
||||
badgePrimaryText: "CryptoKities";
|
||||
badgeSecondaryText: "#design";
|
||||
badgeIconColor: "pink"; badgeIsLetterIdenticon: true }
|
||||
ListElement { itemId: "i2"; titleId: "t2"; image: ""; color: "blue"; title: "support"; sectionName: "Channels"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i3"; titleId: "t3"; image: ""; color: "red"; title: "desktop-ui"; sectionName: "Channels"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i4"; titleId: "t4"; image: ""; color: "orange"; title: "climate-change"; sectionName: "Chat"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i5"; titleId: "t5"; image: ""; color: "black"; title: "food"; sectionName: "Chat"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: "pink"; badgeIsLetterIdenticon: true }
|
||||
ListElement { itemId: "i6"; titleId: "t6"; image: ""; color: "green"; title: "CryptoKitties"; sectionName: "Communities"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i7"; titleId: "t7"; image: ""; color: "purple"; title: "CryptoRangers"; sectionName: "Communities"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: ""; badgeIsLetterIdenticon: false }
|
||||
ListElement { itemId: "i8"; titleId: "t8"; image: ""; color: "yellow"; title: "Foo"; sectionName: "Communities"; time: ""; content: ""; badgeImage: ""; badgePrimaryText: ""; badgeSecondaryText: ""; badgeIconColor: "orange"; badgeIsLetterIdenticon: true }
|
||||
}
|
||||
|
||||
property ListModel optionsModel: ListModel {
|
||||
ListElement {
|
||||
value: "item_1"
|
||||
title: "Item with icon"
|
||||
imageSource: ""
|
||||
iconName: "chat"
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
subItems: [
|
||||
ListElement {
|
||||
value: "sub_item_1_1"
|
||||
text: "Profile image item"
|
||||
imageSource: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
iconName: ""
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
},
|
||||
ListElement {
|
||||
value: "sub_item_1_2"
|
||||
text: "identicon item"
|
||||
imageSource: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0BhCExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
||||
iconName: ""
|
||||
iconColor: ""
|
||||
isIdenticon: true
|
||||
}]}
|
||||
ListElement {
|
||||
value: "item_2"
|
||||
title: "Community item";
|
||||
imageSource: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
iconName: ""
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
subItems: [
|
||||
ListElement {
|
||||
value: "sub_item_2_1"
|
||||
text: "welcome"
|
||||
imageSource: ""
|
||||
iconName: "channel"
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
},
|
||||
ListElement {
|
||||
value: "sub_item_2_2"
|
||||
text: "support"
|
||||
imageSource: ""
|
||||
iconName: "channel"
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
},
|
||||
ListElement {
|
||||
value: "sub_item_2_3"
|
||||
text: "news"
|
||||
imageSource: ""
|
||||
iconName: "channel"
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
}]}
|
||||
ListElement {
|
||||
value: "item_3"
|
||||
title: "Other";
|
||||
imageSource: "";
|
||||
iconName: "info"
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
subItems: [
|
||||
ListElement {
|
||||
value: "sub_item_3_1"
|
||||
text: "news"
|
||||
imageSource: ""
|
||||
iconName: "channel"
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
}]}
|
||||
ListElement {
|
||||
value: "item_4"
|
||||
title: "Letter identicon";
|
||||
imageSource: "";
|
||||
iconName: ""
|
||||
iconColor: "red"
|
||||
isIdenticon: false
|
||||
subItems: [
|
||||
ListElement {
|
||||
value: "sub_item_4_1"
|
||||
text: "news"
|
||||
imageSource: ""
|
||||
iconName: "channel"
|
||||
iconColor: ""
|
||||
isIdenticon: false
|
||||
}]}
|
||||
}
|
||||
}
|
||||
@@ -1,41 +0,0 @@
|
||||
import QtQuick 2.14
|
||||
import QtQuick.Layouts 1.14
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Components 0.1
|
||||
|
||||
GridLayout {
|
||||
columns: 6
|
||||
columnSpacing: 5
|
||||
rowSpacing: 5
|
||||
|
||||
StatusLoadingIndicator {
|
||||
color: Theme.palette.directColor4
|
||||
}
|
||||
|
||||
StatusLetterIdenticon {
|
||||
name: "#status"
|
||||
}
|
||||
|
||||
StatusRoundedImage {
|
||||
image.source: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
}
|
||||
|
||||
StatusBadge {}
|
||||
|
||||
StatusBadge {
|
||||
value: 1
|
||||
}
|
||||
|
||||
StatusBadge {
|
||||
value: 10
|
||||
}
|
||||
|
||||
StatusBadge {
|
||||
value: 100
|
||||
}
|
||||
|
||||
StatusRoundIcon {
|
||||
icon.name: "info"
|
||||
}
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
import QtQuick 2.14
|
||||
import QtQuick.Layouts 1.14
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Components 0.1
|
||||
|
||||
Column {
|
||||
spacing: 12
|
||||
width: 800
|
||||
anchors.top:parent.top
|
||||
leftPadding: 20
|
||||
rightPadding: 20
|
||||
|
||||
StatusExpandableSettingsItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
expandable: false
|
||||
icon.name: "seed-phrase"
|
||||
primaryText: qsTr("Back up seed phrase")
|
||||
secondaryText: qsTr("Back up your seed phrase now to secure this account ajhaDH SDHSAHDLSADBSA,DLISAHDLASD ADASDHASLDHALSDHAS DAS,DASJDGLIASGD")
|
||||
button.text: qsTr("Back up seed phrase")
|
||||
}
|
||||
|
||||
StatusExpandableSettingsItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
expandable: true
|
||||
icon.name: "secret"
|
||||
primaryText: qsTr("Account signing phrase")
|
||||
secondaryText: qsTr("View your signing phrase and ensure that you never get scammed")
|
||||
expandableComponent: notImplemented
|
||||
}
|
||||
|
||||
StatusExpandableSettingsItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
expandable: true
|
||||
icon.name: "seed-phrase"
|
||||
primaryText: qsTr("View private key")
|
||||
secondaryText: qsTr("Back up your seed phrase now to secure this account")
|
||||
expandableComponent: notImplemented
|
||||
button.text: qsTr("View private key")
|
||||
button.icon.name: "tiny/public-chat"
|
||||
button.onClicked: {
|
||||
// To-do open enter password Modal
|
||||
expanded = !expanded
|
||||
}
|
||||
}
|
||||
|
||||
Component {
|
||||
id: notImplemented
|
||||
Rectangle {
|
||||
anchors.centerIn: parent
|
||||
width: 654
|
||||
height: infoText.implicitHeight
|
||||
color: Theme.palette.baseColor5
|
||||
StatusBaseText {
|
||||
id: infoText
|
||||
anchors.centerIn: parent
|
||||
color: Theme.palette.directColor4
|
||||
font.pixelSize: 15
|
||||
lineHeight: 22
|
||||
lineHeightMode: Text.FixedHeight
|
||||
font.weight: Font.Medium
|
||||
text: qsTr("Not Implemented")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,119 +0,0 @@
|
||||
import QtQuick 2.14
|
||||
import QtQuick.Controls 2.14
|
||||
import QtQuick.Layouts 1.14
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Controls.Validators 0.1
|
||||
|
||||
import Sandbox 0.1
|
||||
|
||||
Column {
|
||||
spacing: 8
|
||||
|
||||
StatusInput {
|
||||
input.placeholderText: "Placeholder"
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
label: "Label"
|
||||
input.placeholderText: "Disabled"
|
||||
input.enabled: false
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
input.placeholderText: "Clearable"
|
||||
input.clearable: true
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
input.placeholderText: "Invalid"
|
||||
input.valid: false
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
label: "Label"
|
||||
|
||||
input.icon.name: "search"
|
||||
input.placeholderText: "Input with icon"
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
label: "Label"
|
||||
input.placeholderText: "Placeholder"
|
||||
input.clearable: true
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
charLimit: 30
|
||||
input.placeholderText: "Placeholder"
|
||||
input.clearable: true
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
label: "Label"
|
||||
charLimit: 30
|
||||
input.placeholderText: "Placeholder"
|
||||
input.clearable: true
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
label: "Label"
|
||||
charLimit: 30
|
||||
errorMessage: "Error message"
|
||||
|
||||
input.clearable: true
|
||||
input.valid: false
|
||||
input.placeholderText: "Placeholder"
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
label: "StatusInput"
|
||||
secondaryLabel: "with right icon"
|
||||
input.icon.width: 15
|
||||
input.icon.height: 11
|
||||
input.icon.name: text !== "" ? "checkmark" : ""
|
||||
input.leftIcon: false
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
label: "Label"
|
||||
secondaryLabel: "secondary label"
|
||||
input.placeholderText: "Placeholder"
|
||||
input.implicitHeight: 56
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
label: "Label"
|
||||
charLimit: 30
|
||||
input.placeholderText: "Input with validator"
|
||||
|
||||
validators: [
|
||||
StatusMinLengthValidator { minLength: 10 }
|
||||
]
|
||||
|
||||
onTextChanged: {
|
||||
if (errors && errors.minLength) {
|
||||
errorMessage = `Value can't be shorter than ${errors.minLength.min} but got ${errors.minLength.actual}`
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
input.multiline: true
|
||||
input.placeholderText: "Multiline"
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
input.multiline: true
|
||||
input.placeholderText: "Multiline with static height"
|
||||
input.implicitHeight: 100
|
||||
}
|
||||
|
||||
StatusInput {
|
||||
input.multiline: true
|
||||
input.placeholderText: "Multiline with max/min"
|
||||
input.minimumHeight: 80
|
||||
input.maximumHeight: 200
|
||||
}
|
||||
}
|
||||
@@ -7,6 +7,8 @@ Item {
|
||||
id: themeSwitchWrapper
|
||||
signal checkedChanged()
|
||||
|
||||
property alias lightThemeEnabled: switchControl.checked
|
||||
|
||||
width: themeSwitch.width
|
||||
height: themeSwitch.height
|
||||
|
||||
@@ -26,6 +28,7 @@ Item {
|
||||
}
|
||||
|
||||
StatusSwitch {
|
||||
id: switchControl
|
||||
onCheckedChanged: themeSwitchWrapper.checkedChanged()
|
||||
|
||||
StatusToolTip {
|
||||
|
||||
@@ -3,9 +3,10 @@ import QtQuick.Layouts 1.14
|
||||
import QtQuick.Dialogs 1.3
|
||||
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
|
||||
|
||||
Column {
|
||||
spacing: 10
|
||||
Grid {
|
||||
@@ -173,6 +174,25 @@ Column {
|
||||
loading: true
|
||||
}
|
||||
|
||||
// transparent
|
||||
|
||||
StatusRoundButton {
|
||||
type: StatusRoundButton.Type.Tertiary
|
||||
icon.name: "info"
|
||||
}
|
||||
|
||||
StatusRoundButton {
|
||||
type: StatusRoundButton.Type.Tertiary
|
||||
icon.name: "info"
|
||||
enabled: false
|
||||
}
|
||||
|
||||
StatusRoundButton {
|
||||
type: StatusRoundButton.Type.Tertiary
|
||||
icon.name: "info"
|
||||
loading: true
|
||||
}
|
||||
|
||||
// Rounded blue
|
||||
|
||||
StatusFlatRoundButton {
|
||||
@@ -240,6 +260,63 @@ Column {
|
||||
loading: true
|
||||
size: StatusBaseButton.Size.Small
|
||||
}
|
||||
|
||||
// Tertiary
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
icon.name: "gif"
|
||||
}
|
||||
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
icon.name: "gif"
|
||||
enabled: false
|
||||
}
|
||||
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
icon.name: "gif"
|
||||
loading: true
|
||||
}
|
||||
|
||||
// No background Tertiary
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
color: "transparent"
|
||||
icon.name: "gif"
|
||||
}
|
||||
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
icon.name: "gif"
|
||||
color: "transparent"
|
||||
enabled: false
|
||||
}
|
||||
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
icon.name: "gif"
|
||||
color: "transparent"
|
||||
loading: true
|
||||
}
|
||||
|
||||
// Quartenery
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Quaternary
|
||||
icon.name: "gif"
|
||||
}
|
||||
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Quaternary
|
||||
icon.name: "gif"
|
||||
enabled: false
|
||||
}
|
||||
|
||||
StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Quaternary
|
||||
icon.name: "gif"
|
||||
loading: true
|
||||
}
|
||||
}
|
||||
|
||||
StatusPickerButton {
|
||||
@@ -250,12 +327,20 @@ Column {
|
||||
onClicked: {
|
||||
colorDialog.open();
|
||||
}
|
||||
ColorDialog {
|
||||
id: colorDialog
|
||||
property bool colorSelected: false
|
||||
onAccepted: {
|
||||
colorSelected = true;
|
||||
}
|
||||
}
|
||||
|
||||
StatusColorDialog {
|
||||
id: colorDialog
|
||||
anchors.centerIn: parent
|
||||
property bool colorSelected: false
|
||||
onAccepted: {
|
||||
colorSelected = true;
|
||||
}
|
||||
}
|
||||
|
||||
// Button with emoji
|
||||
StatusButton {
|
||||
text: "Button with Emoji"
|
||||
icon.emoji: "🖼️️"
|
||||
}
|
||||
}
|
||||
@@ -12,6 +12,21 @@ GridLayout {
|
||||
columnSpacing: 5
|
||||
rowSpacing: 5
|
||||
|
||||
StatusSelectableText {
|
||||
color: Theme.palette.baseColor1
|
||||
text: "This is a multiline paragraph that can be selected and copied. A paragraph is a group of words put together to form a group that is usually longer than a sentence. Paragraphs are often made up of several sentences. There are usually between three and eight sentences. Paragraphs can begin with an indentation (about five spaces), or by missing a line out, and then starting again."
|
||||
font.pixelSize: 15
|
||||
width: 300
|
||||
multiline: true
|
||||
}
|
||||
|
||||
StatusSelectableText {
|
||||
color: Theme.palette.baseColor1
|
||||
text: "<p>This is a selectable link in rich text format to test <a href='www.google.com'>www.google.com</a></p>"
|
||||
font.pixelSize: 15
|
||||
width: 200
|
||||
}
|
||||
|
||||
StatusIconTabButton {
|
||||
icon.name: "chat"
|
||||
}
|
||||
@@ -173,4 +188,29 @@ GridLayout {
|
||||
to: 100
|
||||
value: 40
|
||||
}
|
||||
|
||||
StatusLabeledSlider {
|
||||
width: 360
|
||||
model: [ qsTr("XS"), qsTr("S"), qsTr("M"), qsTr("L"), qsTr("XL"), qsTr("XXL")]
|
||||
}
|
||||
|
||||
StatusLabeledSlider {
|
||||
width: 360
|
||||
model: [ qsTr("50%"), qsTr("100%"), qsTr("150%"), qsTr("200%")]
|
||||
}
|
||||
|
||||
StatusBanner {
|
||||
id: banner
|
||||
width: 360
|
||||
topPadding: 20
|
||||
type: StatusBanner.Type.Danger
|
||||
statusText: "Banner"
|
||||
}
|
||||
|
||||
StatusProgressBar {
|
||||
id: progressBar
|
||||
text: "Weak"
|
||||
value: 0.5
|
||||
fillColor : Theme.palette.pinColor1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,508 @@
|
||||
import QtQuick 2.14
|
||||
import QtQuick.Controls 2.14
|
||||
import QtQuick.Layouts 1.14
|
||||
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Layout 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
|
||||
Column {
|
||||
spacing: 10
|
||||
|
||||
StatusChatToolBar {
|
||||
toolbarComponent: chatInfoButton1
|
||||
width: 518
|
||||
|
||||
Component {
|
||||
id: chatInfoButton1
|
||||
|
||||
StatusChatInfoButton {
|
||||
width: Math.min(implicitWidth, parent.width)
|
||||
title: "Some contact"
|
||||
subTitle: "Contact"
|
||||
icon.color: Theme.palette.miscColor7
|
||||
type: StatusChatInfoButton.Type.OneToOneChat
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
StatusChatToolBar {
|
||||
toolbarComponent: chatInfoButton2
|
||||
width: 518
|
||||
|
||||
Component {
|
||||
id: chatInfoButton2
|
||||
StatusChatInfoButton {
|
||||
width: Math.min(implicitWidth, parent.width)
|
||||
title: "Some contact"
|
||||
subTitle: "Contact"
|
||||
icon.color: Theme.palette.miscColor7
|
||||
type: StatusChatInfoButton.Type.PublicChat
|
||||
pinnedMessagesCount: 1
|
||||
muted: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
StatusChatToolBar {
|
||||
notificationCount: 1
|
||||
toolbarComponent: chatInfoButton3
|
||||
width: 518
|
||||
|
||||
Component {
|
||||
id: chatInfoButton3
|
||||
|
||||
StatusChatInfoButton {
|
||||
width: Math.min(implicitWidth, parent.width)
|
||||
title: "Some contact"
|
||||
subTitle: "Contact"
|
||||
icon.color: Theme.palette.miscColor7
|
||||
type: StatusChatInfoButton.Type.OneToOneChat
|
||||
pinnedMessagesCount: 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
StatusChatToolBar {
|
||||
notificationCount: 1
|
||||
toolbarComponent: tagSelector
|
||||
width: 518
|
||||
|
||||
Component {
|
||||
id: tagSelector
|
||||
|
||||
StatusTagSelector {
|
||||
namesModel: ListModel {
|
||||
ListElement {
|
||||
publicId: "0x0"
|
||||
name: "Maria"
|
||||
icon: ""
|
||||
isIdenticon: false
|
||||
onlineStatus: 3
|
||||
isReadonly: true
|
||||
tagIcon: "crown"
|
||||
}
|
||||
ListElement {
|
||||
publicId: "0x1"
|
||||
name: "James"
|
||||
icon: ""
|
||||
isIdenticon: false
|
||||
onlineStatus: 1
|
||||
isReadonly: false
|
||||
tagIcon: ""
|
||||
}
|
||||
}
|
||||
toLabelText: qsTr("To: ")
|
||||
warningText: qsTr("USER LIMIT REACHED")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Row {
|
||||
spacing: 5
|
||||
Button {
|
||||
id: btn
|
||||
text: "Append"
|
||||
onClicked: {
|
||||
buttons.append({
|
||||
name: "Test community",
|
||||
tooltipText: "Test Community"
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
QtObject {
|
||||
id: appSectionType
|
||||
readonly property int chat: 0
|
||||
readonly property int community: 1
|
||||
readonly property int wallet: 2
|
||||
readonly property int browser: 3
|
||||
readonly property int nodeManagement: 4
|
||||
readonly property int profileSettings: 5
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
|
||||
sectionModel: ListModel {
|
||||
ListElement {sectionId: "chat"; sectionType: 0; name: "Chat"; active: true; image: ""; icon: "chat"; color: ""; hasNotification: true; notificationsCount: 12}
|
||||
}
|
||||
|
||||
regularNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
}
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
|
||||
communityTypeRole: "sectionType"
|
||||
communityTypeValue: appSectionType.community
|
||||
sectionModel: ListModel {
|
||||
ListElement {sectionId: "chat"; sectionType: 0; name: "Chat"; active: true; image: ""; icon: "chat"; color: ""; hasNotification: true; notificationsCount: 12}
|
||||
ListElement {sectionId: "0x0001"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 12}
|
||||
ListElement {sectionId: "wallet"; sectionType: 2; name: "Wallet"; active: false; image: ""; icon: "wallet"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "browser"; sectionType: 3; name: "Browser"; active: false; image: ""; icon: "bigger/browser"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "profile"; sectionType: 5; name: "Profile"; active: false; image: ""; icon: "bigger/settings"; color: ""; hasNotification: true; notificationsCount: 0}
|
||||
}
|
||||
|
||||
property bool communityAdded: false
|
||||
|
||||
filterRegularItem: function(item) {
|
||||
if(item.sectionType === appSectionType.community)
|
||||
if(communityAdded)
|
||||
return false
|
||||
else
|
||||
communityAdded = true
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
filterCommunityItem: function(item) {
|
||||
return item.sectionType === appSectionType.community
|
||||
}
|
||||
|
||||
regularNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
}
|
||||
|
||||
communityNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Invite People")
|
||||
icon.name: "share-ios"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("View Community")
|
||||
icon.name: "group"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Edit Community")
|
||||
icon.name: "edit"
|
||||
enabled: false
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Leave Community")
|
||||
icon.name: "arrow-right"
|
||||
icon.width: 14
|
||||
iconRotation: 180
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
|
||||
communityTypeRole: "sectionType"
|
||||
communityTypeValue: appSectionType.community
|
||||
sectionModel: ListModel {
|
||||
ListElement {sectionId: "chat"; sectionType: 0; name: "Chat"; active: true; image: ""; icon: "chat"; color: ""; hasNotification: true; notificationsCount: 12}
|
||||
ListElement {sectionId: "0x0001"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 12}
|
||||
ListElement {sectionId: "wallet"; sectionType: 2; name: "Wallet"; active: false; image: ""; icon: "wallet"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "browser"; sectionType: 3; name: "Browser"; active: false; image: ""; icon: "bigger/browser"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
}
|
||||
|
||||
property bool communityAdded: false
|
||||
|
||||
filterRegularItem: function(item) {
|
||||
if(item.sectionType === appSectionType.community)
|
||||
if(communityAdded)
|
||||
return false
|
||||
else
|
||||
communityAdded = true
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
filterCommunityItem: function(item) {
|
||||
return item.sectionType === appSectionType.community
|
||||
}
|
||||
|
||||
regularNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
}
|
||||
|
||||
communityNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Invite People")
|
||||
icon.name: "share-ios"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("View Community")
|
||||
icon.name: "group"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Edit Community")
|
||||
icon.name: "edit"
|
||||
enabled: false
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Leave Community")
|
||||
icon.name: "arrow-right"
|
||||
icon.width: 14
|
||||
iconRotation: 180
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
StatusAppNavBar {
|
||||
|
||||
communityTypeRole: "sectionType"
|
||||
communityTypeValue: appSectionType.community
|
||||
sectionModel: ListModel {
|
||||
ListElement {sectionId: "chat"; sectionType: 0; name: "Chat"; active: true; image: ""; icon: "chat"; color: ""; hasNotification: true; notificationsCount: 12}
|
||||
ListElement {sectionId: "0x0001"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "0x0002"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "0x0003"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "0x0004"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 0}
|
||||
ListElement {sectionId: "wallet"; sectionType: 2; name: "Wallet"; active: false; image: ""; icon: "wallet"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "browser"; sectionType: 3; name: "Browser"; active: false; image: ""; icon: "bigger/browser"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "profile"; sectionType: 5; name: "Profile"; active: false; image: ""; icon: "bigger/settings"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
}
|
||||
|
||||
property bool communityAdded: false
|
||||
|
||||
filterRegularItem: function(item) {
|
||||
if(item.sectionType === appSectionType.community)
|
||||
if(communityAdded)
|
||||
return false
|
||||
else
|
||||
communityAdded = true
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
filterCommunityItem: function(item) {
|
||||
return item.sectionType === appSectionType.community
|
||||
}
|
||||
|
||||
regularNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
}
|
||||
|
||||
communityNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Invite People")
|
||||
icon.name: "share-ios"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("View Community")
|
||||
icon.name: "group"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Edit Community")
|
||||
icon.name: "edit"
|
||||
enabled: false
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Leave Community")
|
||||
icon.name: "arrow-right"
|
||||
icon.width: 14
|
||||
iconRotation: 180
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
StatusAppNavBar {
|
||||
|
||||
communityTypeRole: "sectionType"
|
||||
communityTypeValue: appSectionType.community
|
||||
sectionModel: ListModel {
|
||||
ListElement {sectionId: "chat"; sectionType: 0; name: "Chat"; active: true; image: ""; icon: "chat"; color: ""; hasNotification: true; notificationsCount: 12}
|
||||
ListElement {sectionId: "0x0001"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 12}
|
||||
ListElement {sectionId: "0x0002"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "0x0003"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 0}
|
||||
ListElement {sectionId: "0x0004"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 1}
|
||||
ListElement {sectionId: "0x0005"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "0x0006"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 3}
|
||||
ListElement {sectionId: "0x0007"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 5}
|
||||
ListElement {sectionId: "0x0008"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 0}
|
||||
ListElement {sectionId: "0x0009"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "0x0010"; sectionType: 1; name: "Test Community"; active: false; image: ""; icon: ""; color: "#00ff00"; hasNotification: true; notificationsCount: 11}
|
||||
ListElement {sectionId: "wallet"; sectionType: 2; name: "Wallet"; active: false; image: ""; icon: "wallet"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "browser"; sectionType: 3; name: "Browser"; active: false; image: ""; icon: "bigger/browser"; color: ""; hasNotification: false; notificationsCount: 0}
|
||||
ListElement {sectionId: "profile"; sectionType: 5; name: "Profile"; active: false; image: ""; icon: "bigger/settings"; color: ""; hasNotification: true; notificationsCount: 0}
|
||||
}
|
||||
|
||||
property bool communityAdded: false
|
||||
|
||||
filterRegularItem: function(item) {
|
||||
if(item.sectionType === appSectionType.community)
|
||||
if(communityAdded)
|
||||
return false
|
||||
else
|
||||
communityAdded = true
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
filterCommunityItem: function(item) {
|
||||
return item.sectionType === appSectionType.community
|
||||
}
|
||||
|
||||
regularNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
}
|
||||
|
||||
communityNavBarButton: StatusNavBarTabButton {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
name: model.icon.length > 0? "" : model.name
|
||||
icon.name: model.icon
|
||||
icon.source: model.image
|
||||
tooltip.text: model.name
|
||||
autoExclusive: true
|
||||
checked: model.active
|
||||
badge.value: model.notificationsCount
|
||||
badge.visible: model.hasNotification
|
||||
badge.border.color: hovered ? Theme.palette.statusBadge.hoverBorderColor : Theme.palette.statusBadge.borderColor
|
||||
badge.border.width: 2
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Invite People")
|
||||
icon.name: "share-ios"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("View Community")
|
||||
icon.name: "group"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Edit Community")
|
||||
icon.name: "edit"
|
||||
enabled: false
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: qsTr("Leave Community")
|
||||
icon.name: "arrow-right"
|
||||
icon.width: 14
|
||||
iconRotation: 180
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Core.Utils 0.1
|
||||
|
||||
GridLayout {
|
||||
columns: 1
|
||||
@@ -25,7 +26,7 @@ GridLayout {
|
||||
badge.value: 1
|
||||
}
|
||||
StatusNavigationListItem {
|
||||
title: "Menu Item (selected)"
|
||||
title: "Menu Item (selected) with very long text"
|
||||
selected: true
|
||||
icon.name: "info"
|
||||
badge.value: 1
|
||||
@@ -64,6 +65,12 @@ GridLayout {
|
||||
type: StatusChatListItem.Type.CommunityChat
|
||||
}
|
||||
|
||||
StatusChatListItem {
|
||||
name: "community-channel-emoji"
|
||||
type: StatusChatListItem.Type.CommunityChat
|
||||
icon.emoji: "😁"
|
||||
}
|
||||
|
||||
StatusChatListItem {
|
||||
name: "community-channel-with-image"
|
||||
image.source: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
@@ -85,7 +92,8 @@ GridLayout {
|
||||
StatusChatListItem {
|
||||
name: "has-mentions"
|
||||
type: StatusChatListItem.Type.PublicChat
|
||||
badge.value: 1
|
||||
hasUnreadMessages: true
|
||||
notificationsCount: 1
|
||||
}
|
||||
|
||||
StatusChatListItem {
|
||||
@@ -100,7 +108,7 @@ GridLayout {
|
||||
type: StatusChatListItem.Type.PublicChat
|
||||
muted: true
|
||||
hasUnreadMessages: true
|
||||
badge.value: 1
|
||||
notificationsCount: 1
|
||||
}
|
||||
|
||||
StatusChatListItem {
|
||||
@@ -130,7 +138,7 @@ GridLayout {
|
||||
selected: true
|
||||
muted: true
|
||||
hasUnreadMessages: true
|
||||
badge.value: 1
|
||||
notificationsCount: 1
|
||||
}
|
||||
|
||||
|
||||
@@ -286,7 +294,7 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||
StatusListItem {
|
||||
title: "Title"
|
||||
icon.isLetterIdenticon: true
|
||||
icon.background.color: "orange"
|
||||
icon.color: "orange"
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
@@ -321,6 +329,43 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||
badge.icon.isLetterIdenticon: true
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
title: "List Item with Tags"
|
||||
icon.isLetterIdenticon: true
|
||||
bottomModel: 3
|
||||
bottomDelegate: StatusListItemTag {
|
||||
title: "tag"
|
||||
icon.isLetterIdenticon: true
|
||||
}
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
title: "List Item with Inline Tags"
|
||||
icon.isLetterIdenticon: true
|
||||
tagsModel : 2
|
||||
tagsDelegate: StatusListItemTag {
|
||||
color: "blue"
|
||||
height: 24
|
||||
radius: 6
|
||||
closeButtonVisible: false
|
||||
icon.emoji: "😁"
|
||||
icon.emojiSize: Emoji.size.verySmall
|
||||
icon.isLetterIdenticon: true
|
||||
title: "helloworld.eth"
|
||||
titleText.font.pixelSize: 12
|
||||
titleText.color: Theme.palette.indirectColor1
|
||||
}
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
title: "List Item with Emoji"
|
||||
subTitle: "Emoji"
|
||||
icon.emoji: "😁"
|
||||
icon.color: "yellow"
|
||||
icon.letterSize: 14
|
||||
icon.isLetterIdenticon: true
|
||||
}
|
||||
|
||||
StatusDescriptionListItem {
|
||||
title: "Title"
|
||||
subTitle: "Subtitle"
|
||||
@@ -345,4 +390,88 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||
title: "Contact requests"
|
||||
requestsCount: 3
|
||||
}
|
||||
|
||||
StatusMemberListItem {
|
||||
nickName: "This is an example"
|
||||
userName: "annabelle"
|
||||
pubKey: "0x043a7ed0e8752236a4688563652fd0296453cef00a5dcddbe252dc74f72cc1caa97a2b65e4a1a52d9c30a84c9966beaaaf6b333d659cbdd2e486b443ed1012cf04"
|
||||
isVerified: true
|
||||
isContact: true
|
||||
image.source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0BhCExPynn1gWf9bx498P7/
|
||||
nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
||||
image.isIdenticon: true
|
||||
status: 1 // FIXME: use enum
|
||||
ringSettings.ringSpecModel:
|
||||
ListModel {
|
||||
ListElement {colorId: 13; segmentLength: 5}
|
||||
ListElement {colorId: 31; segmentLength: 5}
|
||||
ListElement {colorId: 10; segmentLength: 1}
|
||||
ListElement {colorId: 2; segmentLength: 5}
|
||||
ListElement {colorId: 26; segmentLength: 2}
|
||||
ListElement {colorId: 19; segmentLength: 4}
|
||||
ListElement {colorId: 28; segmentLength: 3}
|
||||
}
|
||||
ringSettings.distinctiveColors: Theme.palette.identiconRingColors
|
||||
}
|
||||
|
||||
StatusMemberListItem {
|
||||
nickName: "carmen.eth"
|
||||
isUntrustworthy: true
|
||||
}
|
||||
|
||||
StatusMemberListItem {
|
||||
nickName: "very-long-annoying-nickname.eth"
|
||||
isUntrustworthy: true
|
||||
}
|
||||
|
||||
StatusMemberListItem {
|
||||
nickName: "This girl I know from work"
|
||||
userName: "annabelle"
|
||||
status: 1 // FIXME: use enum
|
||||
}
|
||||
|
||||
StatusMemberListItem {
|
||||
nickName: "Mark Cuban"
|
||||
userName: "annabelle"
|
||||
pubKey: "0x043a7ed0e8752236a4688563652fd0296453cef00a5dcddbe252dc74f72cc1caa97a2b65e4a1a52d9c30a84c9966beaaaf6b333d659cbdd2e486b443ed1012cf04"
|
||||
isContact: true
|
||||
image.source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0BhCExPynn1gWf9bx498P7/
|
||||
nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
||||
image.isIdenticon: true
|
||||
}
|
||||
|
||||
StatusMemberListItem {
|
||||
nickName: "admin.guy"
|
||||
isAdmin: true
|
||||
isUntrustworthy: true
|
||||
}
|
||||
|
||||
StatusBaseText {
|
||||
Layout.fillWidth: true
|
||||
Layout.topMargin: 16
|
||||
text: "Loading features:"
|
||||
font.pixelSize: 17
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
title: "Nokia 3310"
|
||||
subTitle: "Incoming device"
|
||||
label: "loading: true"
|
||||
icon.emoji: "😁"
|
||||
icon.color: "hotpink"
|
||||
icon.letterSize: 14
|
||||
icon.isLetterIdenticon: true
|
||||
loading: true
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
title: "Nokia 3310"
|
||||
subTitle: "Device"
|
||||
label: "loadingFailed: true"
|
||||
icon.emoji: "😁"
|
||||
icon.color: "hotpink"
|
||||
icon.letterSize: 14
|
||||
icon.isLetterIdenticon: true
|
||||
loadingFailed: true
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
import QtQuick 2.14
|
||||
import QtQuick.Layouts 1.14
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Components 0.1
|
||||
|
||||
ColumnLayout {
|
||||
GridLayout {
|
||||
Layout.fillWidth: true
|
||||
Layout.fillHeight: true
|
||||
|
||||
columns: 6
|
||||
columnSpacing: 5
|
||||
rowSpacing: 5
|
||||
|
||||
StatusLoadingIndicator {
|
||||
color: Theme.palette.directColor4
|
||||
}
|
||||
|
||||
StatusLetterIdenticon {
|
||||
name: "#status"
|
||||
}
|
||||
|
||||
StatusRoundedImage {
|
||||
image.source: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
}
|
||||
|
||||
StatusBadge {}
|
||||
|
||||
StatusBadge {
|
||||
value: 1
|
||||
}
|
||||
|
||||
StatusBadge {
|
||||
value: 10
|
||||
}
|
||||
|
||||
StatusBadge {
|
||||
value: 100
|
||||
}
|
||||
|
||||
StatusRoundIcon {
|
||||
icon.name: "info"
|
||||
}
|
||||
}
|
||||
|
||||
Flow {
|
||||
Layout.fillWidth: true
|
||||
spacing: 4
|
||||
|
||||
Repeater {
|
||||
model: 12
|
||||
StatusLetterIdenticon {
|
||||
name: "A"
|
||||
color: Theme.palette.userCustomizationColors[index]
|
||||
letterSize: 16
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,9 @@ import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
import StatusQ.Core.Utils 0.1
|
||||
|
||||
Column {
|
||||
spacing: 20
|
||||
@@ -13,6 +16,11 @@ Column {
|
||||
onClicked: simpleModal.open()
|
||||
}
|
||||
|
||||
StatusButton {
|
||||
text: "Simple title modal"
|
||||
onClicked: simpleTitleModal.open()
|
||||
}
|
||||
|
||||
StatusButton {
|
||||
text: "Modal with header image"
|
||||
onClicked: headerImageModal.open()
|
||||
@@ -48,6 +56,11 @@ Column {
|
||||
onClicked: modalWithIdenticon.open()
|
||||
}
|
||||
|
||||
StatusButton {
|
||||
text: "Modal with editable identicon"
|
||||
onClicked: modalWithEditableIdenticon.open()
|
||||
}
|
||||
|
||||
StatusButton {
|
||||
text: "Modal with long titles"
|
||||
onClicked: modalWithLongTitles.open()
|
||||
@@ -58,6 +71,27 @@ Column {
|
||||
onClicked: modalWithHeaderPopupMenu.open()
|
||||
}
|
||||
|
||||
StatusButton {
|
||||
text: "Spellchecking menu"
|
||||
onClicked: spellMenu.open()
|
||||
}
|
||||
|
||||
StatusButton {
|
||||
text: "Modal with Editable Title"
|
||||
onClicked: editTitleModal.open()
|
||||
}
|
||||
|
||||
StatusButton {
|
||||
text: "Modal with Advanced Header/Footer"
|
||||
onClicked: advancedHeaderFooterModal.open()
|
||||
}
|
||||
|
||||
|
||||
StatusButton {
|
||||
text: "Modal with Floating header Buttons"
|
||||
onClicked: floatingHeaderModal.open()
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
id: simpleModal
|
||||
anchors.centerIn: parent
|
||||
@@ -65,6 +99,12 @@ Column {
|
||||
header.subTitle: "Subtitle"
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
id: simpleTitleModal
|
||||
anchors.centerIn: parent
|
||||
header.title: "Some Title"
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
id: headerImageModal
|
||||
anchors.centerIn: parent
|
||||
@@ -243,6 +283,33 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||
]
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
id: modalWithEditableIdenticon
|
||||
anchors.centerIn: parent
|
||||
header.title: "Header"
|
||||
header.subTitle: "SubTitle"
|
||||
header.headerImageEditable: true
|
||||
header.image.source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0Bh
|
||||
CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
||||
header.image.isIdenticon: true
|
||||
|
||||
contentItem: StatusBaseText {
|
||||
anchors.centerIn: parent
|
||||
text: "Some text content"
|
||||
font.pixelSize: 15
|
||||
color: Theme.palette.directColor1
|
||||
}
|
||||
|
||||
rightButtons: [
|
||||
StatusButton {
|
||||
text: "Change text"
|
||||
onClicked: {
|
||||
modalWithIdenticon.contentItem.text = "Changed!"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
id: modalWithLongTitles
|
||||
anchors.centerIn: parent
|
||||
@@ -293,9 +360,105 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||
}
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
id: editTitleModal
|
||||
anchors.centerIn: parent
|
||||
header.title: "This title can be edited"
|
||||
header.editable: true
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
id: advancedHeaderFooterModal
|
||||
anchors.centerIn: parent
|
||||
showHeader: false
|
||||
showFooter: false
|
||||
showAdvancedHeader: true
|
||||
showAdvancedFooter: true
|
||||
height: 200
|
||||
advancedHeaderComponent: Rectangle {
|
||||
width: parent.width
|
||||
height: 50
|
||||
color: Theme.palette.baseColor1
|
||||
border.width: 1
|
||||
StatusBaseText {
|
||||
anchors.centerIn: parent
|
||||
text: "Add any header here"
|
||||
font.pixelSize: 15
|
||||
color: Theme.palette.directColor1
|
||||
}
|
||||
|
||||
}
|
||||
advancedFooterComponent: Rectangle {
|
||||
width: parent.width
|
||||
height: 50
|
||||
color: Theme.palette.baseColor1
|
||||
border.width: 1
|
||||
StatusBaseText {
|
||||
anchors.centerIn: parent
|
||||
text: "Add any footer here"
|
||||
font.pixelSize: 15
|
||||
color: Theme.palette.directColor1
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
StatusModal {
|
||||
id: floatingHeaderModal
|
||||
anchors.centerIn: parent
|
||||
height: 200
|
||||
showHeader: false
|
||||
showFooter: false
|
||||
showAdvancedHeader: true
|
||||
hasFloatingButtons: true
|
||||
advancedHeaderComponent: StatusFloatingButtonsSelector {
|
||||
id: floatingHeader
|
||||
model: dummyAccountsModel
|
||||
delegate: Rectangle {
|
||||
width: button.width
|
||||
height: button.height
|
||||
radius: 8
|
||||
visible: visibleIndices.includes(index)
|
||||
StatusButton {
|
||||
id: button
|
||||
topPadding: 8
|
||||
bottomPadding: 0
|
||||
implicitHeight: 32
|
||||
defaultLeftPadding: 4
|
||||
text: name
|
||||
icon.emoji: !!emoji ? emoji: ""
|
||||
icon.emojiSize: Emoji.size.middle
|
||||
icon.name: !emoji ? "filled-account": ""
|
||||
normalColor: "transparent"
|
||||
highlighted: index === floatingHeader.currentIndex
|
||||
onClicked: {
|
||||
floatingHeader.currentIndex = index
|
||||
}
|
||||
}
|
||||
}
|
||||
popupMenuDelegate: StatusListItem {
|
||||
implicitWidth: 272
|
||||
title: name
|
||||
onClicked: floatingHeader.itemSelected(index)
|
||||
visible: !visibleIndices.includes(index)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ListModel {
|
||||
id: dummyAccountsModel
|
||||
ListElement{name: "Account 1"; iconName: "filled-account"}
|
||||
ListElement{name: "Account 1"; iconName: "filled-account"; emoji: "🥑"}
|
||||
ListElement{name: "Account 2"; iconName: "filled-account"}
|
||||
ListElement{name: "Account 3"; iconName: "filled-account"}
|
||||
ListElement{name: "Account 4"; iconName: "filled-account"}
|
||||
ListElement{name: "Account 5"; iconName: "filled-account"}
|
||||
ListElement{name: "Account 6"; iconName: "filled-account"}
|
||||
ListElement{name: "Account 7"; iconName: "filled-account"}
|
||||
}
|
||||
|
||||
StatusSpellcheckingMenuItems {
|
||||
id: spellMenu
|
||||
anchors.centerIn: parent
|
||||
suggestions: ["suggestion1", "suggestion2", "suggestion3", "suggestion4"]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.12
|
||||
import QtQuick.Layouts 1.12
|
||||
import QtQml.Models 2.2
|
||||
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
|
||||
ListView {
|
||||
id: messageList
|
||||
anchors.fill: parent
|
||||
anchors.margins: 15
|
||||
clip: true
|
||||
delegate: StatusMessage {
|
||||
id: delegate
|
||||
width: parent.width
|
||||
|
||||
audioMessageInfoText: "Audio Message"
|
||||
cancelButtonText: "Cancel"
|
||||
saveButtonText: "Save"
|
||||
loadingImageText: "Loading image..."
|
||||
errorLoadingImageText: "Error loading the image"
|
||||
resendText: "Resend"
|
||||
pinnedMsgInfoText: "Pinned by"
|
||||
|
||||
messageDetails: StatusMessageDetails {
|
||||
contentType: model.contentType
|
||||
messageContent: model.messageContent
|
||||
amISender: model.amIsender
|
||||
displayName: model.userName
|
||||
secondaryName: model.localName !== "" && model.ensName.startsWith("@") ? model.ensName: ""
|
||||
chatID: model.chatKey
|
||||
profileImage: StatusImageSettings {
|
||||
width: 40
|
||||
height: 40
|
||||
source: model.profileImage
|
||||
isIdenticon: model.isIdenticon
|
||||
}
|
||||
messageText: model.message
|
||||
hasMention: model.hasMention
|
||||
isMutualContact: model.isMutualContact
|
||||
trustIndicator: model.trustIndicator
|
||||
isPinned: model.isPinned
|
||||
pinnedBy: model.pinnedBy
|
||||
hasExpired: model.hasExpired
|
||||
}
|
||||
timestamp.text: "10:00 am"
|
||||
timestamp.tooltip.text: "10:01 am"
|
||||
// reply related data
|
||||
isAReply: model.isReply
|
||||
replyDetails: StatusMessageDetails {
|
||||
amISender: model.isReply ? model.replyAmISender : ""
|
||||
displayName: model.isReply ? model.replySenderName: ""
|
||||
profileImage: StatusImageSettings {
|
||||
width: 20
|
||||
height: 20
|
||||
source: model.isReply ? model.replyProfileImage: ""
|
||||
isIdenticon: model.isReply ? model.replyIsIdenticon: ""
|
||||
}
|
||||
messageText: model.isReply ? model.replyMessageText: ""
|
||||
contentType: model.replyContentType
|
||||
messageContent: model.replyMessageContent
|
||||
}
|
||||
quickActions: [
|
||||
StatusFlatRoundButton {
|
||||
id: emojiBtn
|
||||
width: 32
|
||||
height: 32
|
||||
icon.name: "reaction-b"
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
tooltip.text: "Add reaction"
|
||||
},
|
||||
StatusFlatRoundButton {
|
||||
id: replyBtn
|
||||
width: 32
|
||||
height: 32
|
||||
icon.name: "reply"
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
tooltip.text: "Reply"
|
||||
},
|
||||
StatusFlatRoundButton {
|
||||
width: 32
|
||||
height: 32
|
||||
icon.name: "tiny/edit"
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
tooltip.text: "Edit"
|
||||
onClicked: {
|
||||
delegate.editMode = !delegate.editMode
|
||||
}
|
||||
},
|
||||
StatusFlatRoundButton {
|
||||
id: otherBtn
|
||||
width: 32
|
||||
height: 32
|
||||
icon.name: "more"
|
||||
type: StatusFlatRoundButton.Type.Tertiary
|
||||
tooltip.text: "More"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.12
|
||||
import QtQuick.Layouts 1.12
|
||||
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
|
||||
Page {
|
||||
id: root
|
||||
anchors.fill: parent
|
||||
anchors.margins: 16
|
||||
property ListModel contactsModel: null
|
||||
background: null
|
||||
|
||||
header: RowLayout {
|
||||
id: headerRow
|
||||
width: parent.width
|
||||
height: tagSelector.height
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: 8
|
||||
|
||||
StatusTagSelector {
|
||||
id: tagSelector
|
||||
Layout.fillWidth: true
|
||||
Layout.alignment: Qt.AlignVCenter | Qt.AlignLeft
|
||||
Layout.leftMargin: 17
|
||||
maxHeight: root.height
|
||||
toLabelText: qsTr("To: ")
|
||||
warningText: qsTr("USER LIMIT REACHED")
|
||||
listLabel: qsTr("Contacts")
|
||||
ringSpecModelGetter: function(pubKey) {
|
||||
//for simulation purposes only, in real app
|
||||
//this would be Utils.getColorHashAsJson(pubKey)
|
||||
var index = -1;
|
||||
if (!!contactsModel) {
|
||||
for (var i = 0; i < contactsModel.count; i++) {
|
||||
if (contactsModel.get(i).pubKey === pubKey) {
|
||||
index = i;
|
||||
}
|
||||
}
|
||||
return contactsModel.get(index).ringSpecModel;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
compressedKeyGetter: function(pubKey) {
|
||||
//for simulation purposes only, in real app
|
||||
//this would be Utils.getCompressedPk(pubKey);
|
||||
var possibleCharacters = pubKey.split('');
|
||||
var randomStringLength = 12; // assuming you want random strings of 12 characters
|
||||
var randomString = [];
|
||||
for (var i=0; i<randomStringLength; ++i) {
|
||||
var index = (Math.random() * possibleCharacters.length).toFixed(0);
|
||||
var nextChar = possibleCharacters[index];
|
||||
randomString.push(nextChar);
|
||||
}
|
||||
return randomString.join().toString().replace(/,/g, '');
|
||||
}
|
||||
colorIdForPubkeyGetter: function (pubKey) {
|
||||
//for simulation purposes only, in real app
|
||||
//this would be Utils.colorIdForPubkey(pubKey);
|
||||
return Math.floor(Math.random() * 10);
|
||||
}
|
||||
onTextChanged: {
|
||||
sortModel(root.contactsModel);
|
||||
}
|
||||
Component.onCompleted: {
|
||||
textEdit.forceActiveFocus();
|
||||
sortModel(root.contactsModel);
|
||||
}
|
||||
}
|
||||
|
||||
StatusButton {
|
||||
implicitHeight: 44
|
||||
Layout.alignment: Qt.AlignTop
|
||||
enabled: (tagSelector.namesModel.count > 0)
|
||||
text: "Confirm"
|
||||
}
|
||||
}
|
||||
|
||||
contentItem: Item {
|
||||
anchors.fill: parent
|
||||
anchors.topMargin: 68
|
||||
|
||||
StatusBaseText {
|
||||
visible: (contactsModel.count === 0)
|
||||
anchors.centerIn: parent
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
font.pixelSize: 15
|
||||
color: Theme.palette.baseColor1
|
||||
text: qsTr("You can only send direct messages to your Contacts. \n\n
|
||||
Send a contact request to the person you would like to chat with, you will be\n able to
|
||||
chat with them once they have accepted your contact request.")
|
||||
Component.onCompleted: {
|
||||
if (visible) {
|
||||
tagSelector.enabled = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,111 @@
|
||||
import QtQuick 2.12
|
||||
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
|
||||
StatusModal {
|
||||
id: root
|
||||
|
||||
anchors.centerIn: parent
|
||||
|
||||
header.title: "Cryptokitties"
|
||||
header.subTitle: "Public Community"
|
||||
header.image.source: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
|
||||
contentItem: Column {
|
||||
width: root.width
|
||||
|
||||
StatusModalDivider {
|
||||
bottomPadding: 8
|
||||
}
|
||||
|
||||
StatusBaseText {
|
||||
text: "A community of cat lovers, meow!"
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
font.pixelSize: 15
|
||||
height: 46
|
||||
color: Theme.palette.directColor1
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.leftMargin: 16
|
||||
anchors.rightMargin: 16
|
||||
}
|
||||
|
||||
StatusModalDivider {
|
||||
topPadding: 8
|
||||
bottomPadding: 8
|
||||
}
|
||||
|
||||
StatusDescriptionListItem {
|
||||
title: "Share community"
|
||||
subTitle: "https://join.status.im/u/0x04...45f19"
|
||||
tooltip.text: "Copy to clipboard"
|
||||
icon.name: "copy"
|
||||
iconButton.onClicked: tooltip.visible = !tooltip.visible
|
||||
width: parent.width
|
||||
}
|
||||
|
||||
StatusModalDivider {
|
||||
topPadding: 8
|
||||
bottomPadding: 8
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Members"
|
||||
icon.name: "group-chat"
|
||||
label: "184"
|
||||
components: [
|
||||
StatusIcon {
|
||||
icon: "chevron-down"
|
||||
rotation: 270
|
||||
color: Theme.palette.baseColor1
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Notifications"
|
||||
icon.name: "notification"
|
||||
components: [
|
||||
StatusSwitch {}
|
||||
]
|
||||
}
|
||||
|
||||
StatusModalDivider {
|
||||
topPadding: 8
|
||||
bottomPadding: 8
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Edit community"
|
||||
icon.name: "edit"
|
||||
type: StatusListItem.Type.Secondary
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Transfer ownership"
|
||||
icon.name: "exchange"
|
||||
type: StatusListItem.Type.Secondary
|
||||
}
|
||||
|
||||
StatusListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
statusListItemTitle.font.pixelSize: 17
|
||||
title: "Leave community"
|
||||
icon.name: "arrow-right"
|
||||
icon.rotation: 180
|
||||
type: StatusListItem.Type.Secondary
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
import QtQuick 2.12
|
||||
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
|
||||
StatusModal {
|
||||
id: root
|
||||
|
||||
header.title: "Contact Requests"
|
||||
headerActionButton: StatusFlatRoundButton {
|
||||
type: StatusFlatRoundButton.Type.Secondary
|
||||
width: 32
|
||||
height: 32
|
||||
|
||||
icon.width: 20
|
||||
icon.height: 20
|
||||
icon.name: "notification"
|
||||
}
|
||||
|
||||
contentItem: StatusBaseText {
|
||||
anchors.centerIn: parent
|
||||
text: "Contact request will be shown here"
|
||||
font.pixelSize: 15
|
||||
color: Theme.palette.directColor1
|
||||
}
|
||||
|
||||
rightButtons: [
|
||||
StatusButton {
|
||||
text: "Decline all"
|
||||
type: StatusBaseButton.Type.Danger
|
||||
onClicked: root.close()
|
||||
},
|
||||
StatusButton {
|
||||
text: "Accept all"
|
||||
onClicked: root.close()
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,197 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Layouts 1.12
|
||||
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Layout 0.1
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
|
||||
import "data" 1.0
|
||||
|
||||
StatusAppThreePanelLayout {
|
||||
id: root
|
||||
property bool createChat: false
|
||||
|
||||
leftPanel: Item {
|
||||
anchors.fill: parent
|
||||
|
||||
StatusNavigationPanelHeadline {
|
||||
id: headline
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: 16
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
text: "Chat"
|
||||
}
|
||||
|
||||
RowLayout {
|
||||
id: searchInputWrapper
|
||||
width: 288
|
||||
height: searchInput.height
|
||||
anchors.top: headline.bottom
|
||||
anchors.topMargin: 16
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
StatusBaseInput {
|
||||
id: searchInput
|
||||
Layout.fillWidth: true
|
||||
Layout.alignment: Qt.AlignVCenter
|
||||
implicitHeight: 36
|
||||
topPadding: 8
|
||||
bottomPadding: 8
|
||||
placeholderText: "Search"
|
||||
icon.name: "search"
|
||||
}
|
||||
|
||||
StatusIconTabButton {
|
||||
icon.name: "public-chat"
|
||||
}
|
||||
|
||||
StatusIconTabButton {
|
||||
icon.name: "edit"
|
||||
onClicked: {
|
||||
root.createChat = !root.createChat;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
anchors.top: searchInputWrapper.bottom
|
||||
anchors.topMargin: 16
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
spacing: 8
|
||||
|
||||
StatusContactRequestsIndicatorListItem {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
title: "Contact requests"
|
||||
requestsCount: 3
|
||||
sensor.onClicked: demoContactRequestsModal.open()
|
||||
}
|
||||
|
||||
StatusChatList {
|
||||
model: Models.demoChatListItems
|
||||
highlightItem: !root.createChat
|
||||
onChatItemUnmuted: {
|
||||
for (var i = 0; i < Models.demoChatListItems.count; i++) {
|
||||
let item = Models.demoChatListItems.get(i);
|
||||
if (item.chatId === id) {
|
||||
Models.demoChatListItems.setProperty(i, "muted", false)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
|
||||
property string chatId
|
||||
|
||||
openHandler: function (id) {
|
||||
chatId = id
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "View Profile"
|
||||
icon.name: "group-chat"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mute chat"
|
||||
icon.name: "notification"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mark as Read"
|
||||
icon.name: "checkmark-circle"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Clear history"
|
||||
icon.name: "close-circle"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Delete chat"
|
||||
icon.name: "delete"
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
centerPanel: Loader {
|
||||
anchors.fill: parent
|
||||
sourceComponent: root.createChat ? createChatView : chatChannelView
|
||||
Component {
|
||||
id: createChatView
|
||||
CreateChatView {
|
||||
contactsModel: Models.membersListModel
|
||||
}
|
||||
}
|
||||
|
||||
Component {
|
||||
id: chatChannelView
|
||||
ChatChannelView {
|
||||
model: Models.chatMessagesModel
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
rightPanel: Item {
|
||||
anchors.fill: parent
|
||||
|
||||
StatusChatToolBar {
|
||||
width: parent.width
|
||||
toolbarComponent: statusChatInfoButton
|
||||
searchButton.visible: false
|
||||
membersButton.visible: false
|
||||
notificationCount: 1
|
||||
|
||||
onNotificationButtonClicked: notificationCount = 0
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
id: contextMenu
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mute Chat"
|
||||
icon.name: "notification"
|
||||
}
|
||||
StatusMenuItem {
|
||||
text: "Mark as Read"
|
||||
icon.name: "checkmark-circle"
|
||||
}
|
||||
StatusMenuItem {
|
||||
text: "Clear History"
|
||||
icon.name: "close-circle"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Leave Chat"
|
||||
icon.name: "arrow-right"
|
||||
icon.width: 14
|
||||
iconRotation: 180
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
|
||||
Component {
|
||||
id: statusChatInfoButton
|
||||
|
||||
StatusChatInfoButton {
|
||||
width: Math.min(implicitWidth, parent.width)
|
||||
title: "Amazing Funny Squirrel"
|
||||
subTitle: "Contact"
|
||||
icon.color: Theme.palette.miscColor7
|
||||
type: StatusChatInfoButton.Type.OneToOneChat
|
||||
pinnedMessagesCount: 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,156 @@
|
||||
import QtQuick 2.13
|
||||
import QtQuick.Controls 2.13
|
||||
import QtQuick.Layouts 1.13
|
||||
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Components 0.1
|
||||
|
||||
import "../demoapp/data" 1.0
|
||||
|
||||
|
||||
ScrollView {
|
||||
id: root
|
||||
|
||||
QtObject {
|
||||
id: d
|
||||
|
||||
property ListModel featuredCommunitiesModel: Models.featuredCommunitiesModel
|
||||
property ListModel popularCommunitiesModel: Models.curatedCommunitiesModel
|
||||
property ListModel tagsModel: Models.tagsModel
|
||||
|
||||
property string searchText: ""
|
||||
property int layoutVMargin: 70
|
||||
property int layoutHMargin: 64
|
||||
property int titlePixelSize: 28
|
||||
property int subtitlePixelSize: 17
|
||||
property int stylePadding: 16
|
||||
|
||||
function navigateToCommunity(communityId) {
|
||||
console.info("Clicked community ID: " + communityId)
|
||||
}
|
||||
}
|
||||
|
||||
contentHeight: column.height + d.layoutVMargin
|
||||
contentWidth: column.width + d.layoutHMargin
|
||||
clip: true
|
||||
|
||||
ColumnLayout {
|
||||
id: column
|
||||
spacing: 18
|
||||
|
||||
StatusBaseText {
|
||||
Layout.topMargin: d.layoutVMargin
|
||||
Layout.leftMargin: d.layoutHMargin
|
||||
text: qsTr("Find community")
|
||||
font.weight: Font.Bold
|
||||
font.pixelSize: d.titlePixelSize
|
||||
color: Theme.palette.directColor1
|
||||
}
|
||||
|
||||
// Tags definition - Now hidden - Out of scope
|
||||
// TODO: Replace by `StatusListItemTagRow`
|
||||
Row {
|
||||
visible: d.tagsModel.count > 0
|
||||
Layout.leftMargin: d.layoutHMargin
|
||||
Layout.rightMargin: d.layoutHMargin
|
||||
width: 1234 // by design
|
||||
spacing: d.stylePadding/2
|
||||
|
||||
Repeater {
|
||||
model: d.tagsModel
|
||||
delegate: StatusListItemTag {
|
||||
border.color: Theme.palette.baseColor2
|
||||
color: "transparent"
|
||||
height: 32
|
||||
radius: 36
|
||||
closeButtonVisible: false
|
||||
icon.emoji: model.emoji
|
||||
icon.height: 32
|
||||
icon.width: icon.height
|
||||
icon.color: "transparent"
|
||||
icon.isLetterIdenticon: true
|
||||
title: model.name
|
||||
titleText.font.pixelSize: 15
|
||||
titleText.color: Theme.palette.primaryColor1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
StatusBaseText {
|
||||
Layout.leftMargin: d.layoutHMargin
|
||||
Layout.topMargin: 20
|
||||
text: qsTr("Featured")
|
||||
font.weight: Font.Bold
|
||||
font.pixelSize: d.subtitlePixelSize
|
||||
color: Theme.palette.directColor1
|
||||
}
|
||||
|
||||
GridLayout {
|
||||
id: featuredGrid
|
||||
Layout.leftMargin: d.layoutHMargin
|
||||
columns: 3
|
||||
columnSpacing: d.stylePadding
|
||||
rowSpacing: d.stylePadding
|
||||
|
||||
Repeater {
|
||||
model: d.featuredCommunitiesModel
|
||||
delegate: StatusCommunityCard {
|
||||
locale: "es"
|
||||
communityId: model.communityId
|
||||
loaded: model.available
|
||||
logo: model.logo
|
||||
name: model.name
|
||||
description: model.description
|
||||
members: model.members
|
||||
popularity: model.popularity
|
||||
communityColor: model.communityColor
|
||||
categories: ListModel {
|
||||
ListElement { name: "sport"; emoji: "🎾"}
|
||||
ListElement { name: "food"; emoji: "🥑"}
|
||||
ListElement { name: "privacy"; emoji: "👻"}
|
||||
}
|
||||
|
||||
onClicked: { d.navigateToCommunity(communityId) }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
StatusBaseText {
|
||||
Layout.leftMargin: d.layoutHMargin
|
||||
Layout.topMargin: 20
|
||||
text: qsTr("Popular")
|
||||
font.weight: Font.Bold
|
||||
font.pixelSize: d.subtitlePixelSize
|
||||
color: Theme.palette.directColor1
|
||||
}
|
||||
|
||||
GridLayout {
|
||||
Layout.leftMargin: d.layoutHMargin
|
||||
columns: 3
|
||||
columnSpacing: d.stylePadding
|
||||
rowSpacing: d.stylePadding
|
||||
|
||||
Repeater {
|
||||
model: d.popularCommunitiesModel
|
||||
delegate: StatusCommunityCard {
|
||||
locale: "es"
|
||||
communityId: model.communityId
|
||||
loaded: model.available
|
||||
logo: model.logo
|
||||
name: model.name
|
||||
description: model.description
|
||||
members: model.members
|
||||
activeUsers: model.activeUsers
|
||||
popularity: model.popularity
|
||||
tokenLogo: model.tokenLogo
|
||||
isPrivate: model.isPrivate
|
||||
banner: model.banner
|
||||
|
||||
onClicked: { d.navigateToCommunity(communityId) }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,282 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.14
|
||||
|
||||
import StatusQ.Core 0.1
|
||||
import StatusQ.Popups 0.1
|
||||
import StatusQ.Controls 0.1
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Layout 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
|
||||
import "data" 1.0
|
||||
|
||||
StatusAppThreePanelLayout {
|
||||
id: root
|
||||
|
||||
property string communityDetailModalTitle: ""
|
||||
property string communityDetailModalImage: ""
|
||||
signal chatInfoButtonClicked()
|
||||
|
||||
handle: Rectangle {
|
||||
implicitWidth: 5
|
||||
color: SplitHandle.pressed ? Theme.palette.baseColor2
|
||||
: (SplitHandle.hovered ? Qt.darker(Theme.palette.baseColor5, 1.1) : "transparent")
|
||||
}
|
||||
leftPanel: Item {
|
||||
id: leftPanel
|
||||
|
||||
StatusChatInfoToolBar {
|
||||
id: statusChatInfoToolBar
|
||||
|
||||
anchors.top: parent.top
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
chatInfoButton.title: "CryptoKitties"
|
||||
chatInfoButton.subTitle: "128 Members"
|
||||
chatInfoButton.image.source: "https://pbs.twimg.com/profile_images/1369221718338895873/T_5fny6o_400x400.jpg"
|
||||
chatInfoButton.icon.color: Theme.palette.miscColor6
|
||||
chatInfoButton.onClicked: { chatInfoButtonClicked(); }
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Create channel"
|
||||
icon.name: "channel"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Create category"
|
||||
icon.name: "channel-category"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Invite people"
|
||||
icon.name: "share-ios"
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
ScrollView {
|
||||
id: scrollView
|
||||
|
||||
anchors.top: statusChatInfoToolBar.bottom
|
||||
anchors.topMargin: 8
|
||||
anchors.bottom: parent.bottom
|
||||
width: leftPanel.width
|
||||
|
||||
contentHeight: communityCategories.height
|
||||
clip: true
|
||||
|
||||
StatusChatListAndCategories {
|
||||
id: communityCategories
|
||||
width: leftPanel.width
|
||||
height: implicitHeight > (leftPanel.height - 64) ? implicitHeight + 8 : leftPanel.height - 64
|
||||
|
||||
draggableItems: true
|
||||
draggableCategories: false
|
||||
model: Models.demoCommunityChatListItems
|
||||
|
||||
showCategoryActionButtons: true
|
||||
|
||||
categoryPopupMenu: StatusPopupMenu {
|
||||
|
||||
property string categoryId
|
||||
|
||||
openHandler: function (id) {
|
||||
categoryId = id
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mute Category"
|
||||
icon.name: "notification"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mark as Read"
|
||||
icon.name: "checkmark-circle"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Edit Category"
|
||||
icon.name: "edit"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Delete Category"
|
||||
icon.name: "delete"
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
|
||||
chatListPopupMenu: StatusPopupMenu {
|
||||
|
||||
property string chatId
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mute chat"
|
||||
icon.name: "notification"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Mark as Read"
|
||||
icon.name: "checkmark-circle"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Clear history"
|
||||
icon.name: "close-circle"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Delete chat"
|
||||
icon.name: "delete"
|
||||
type: StatusMenuItem.Type.Danger
|
||||
}
|
||||
}
|
||||
|
||||
popupMenu: StatusPopupMenu {
|
||||
StatusMenuItem {
|
||||
text: "Create channel"
|
||||
icon.name: "channel"
|
||||
}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Create category"
|
||||
icon.name: "channel-category"
|
||||
}
|
||||
|
||||
StatusMenuSeparator {}
|
||||
|
||||
StatusMenuItem {
|
||||
text: "Invite people"
|
||||
icon.name: "share-ios"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
centerPanel: Item {
|
||||
StatusChatToolBar {
|
||||
id: statusChatToolBar
|
||||
|
||||
width: parent.width
|
||||
toolbarComponent: statusChatInfoButton
|
||||
|
||||
onSearchButtonClicked: {
|
||||
searchButton.highlighted = !searchButton.highlighted;
|
||||
searchPopup.setSearchSelection(communityDetailModalTitle,
|
||||
"",
|
||||
communityDetailModalImage);
|
||||
searchPopup.open();
|
||||
}
|
||||
membersButton.onClicked: membersButton.highlighted = !membersButton.highlighted
|
||||
onMembersButtonClicked: {
|
||||
root.showRightPanel = !root.showRightPanel;
|
||||
}
|
||||
|
||||
Component {
|
||||
id: statusChatInfoButton
|
||||
|
||||
StatusChatInfoButton {
|
||||
width: Math.min(implicitWidth, parent.width)
|
||||
title: "general"
|
||||
subTitle: "Community Chat"
|
||||
icon.color: Theme.palette.miscColor6
|
||||
type: StatusChatInfoButton.Type.CommunityChat
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
StatusSearchPopup {
|
||||
id: searchPopup
|
||||
searchOptionsPopupMenu: searchPopupMenu
|
||||
onAboutToHide: {
|
||||
if (searchPopupMenu.visible) {
|
||||
searchPopupMenu.close();
|
||||
}
|
||||
//clear menu
|
||||
for (var i = 2; i < searchPopupMenu.count; i++) {
|
||||
searchPopupMenu.removeItem(searchPopupMenu.takeItem(i));
|
||||
}
|
||||
}
|
||||
onClosed: {
|
||||
statusChatToolBar.searchButton.highlighted = false
|
||||
searchPopupMenu.dismiss();
|
||||
}
|
||||
onSearchTextChanged: {
|
||||
if (searchPopup.searchText !== "") {
|
||||
searchPopup.loading = true;
|
||||
searchModelSimTimer.start();
|
||||
} else {
|
||||
searchPopup.searchResults = [];
|
||||
searchModelSimTimer.stop();
|
||||
}
|
||||
}
|
||||
Timer {
|
||||
id: searchModelSimTimer
|
||||
interval: 500
|
||||
onTriggered: {
|
||||
if (searchPopup.searchText.startsWith("c")) {
|
||||
searchPopup.searchResults = Models.searchResultsA;
|
||||
} else {
|
||||
searchPopup.searchResults = Models.searchResultsB;
|
||||
}
|
||||
searchPopup.loading = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
StatusSearchLocationMenu {
|
||||
id: searchPopupMenu
|
||||
searchPopup: searchPopup
|
||||
locationModel: Models.optionsModel
|
||||
}
|
||||
}
|
||||
|
||||
rightPanel: Item {
|
||||
id: rightPanel
|
||||
StatusBaseText {
|
||||
id: titleText
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin:16
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: 16
|
||||
opacity: (rightPanel.width > 50) ? 1.0 : 0.0
|
||||
visible: (opacity > 0.1)
|
||||
font.pixelSize: 15
|
||||
text: qsTr("Members")
|
||||
}
|
||||
|
||||
ListView {
|
||||
anchors.top: titleText.bottom
|
||||
anchors.topMargin: 16
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: 8
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: 8
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.bottomMargin: 16
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
model: Models.membersListModel
|
||||
delegate: StatusMemberListItem {
|
||||
implicitWidth: parent.width
|
||||
nickName: model.localNickname
|
||||
userName: model.displayName
|
||||
pubKey: model.pubKey
|
||||
isVerified: model.isVerified
|
||||
isUntrustworthy: model.isUntrustworthy
|
||||
isContact: model.isContact
|
||||
image.source: model.icon
|
||||
image.isIdenticon: false
|
||||
status: model.onlineStatus
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.14
|
||||
|
||||
import StatusQ.Components 0.1
|
||||
import StatusQ.Layout 0.1
|
||||
import StatusQ.Core.Theme 0.1
|
||||
|
||||
import "data" 1.0
|
||||
|
||||
StatusAppTwoPanelLayout {
|
||||
id: root
|
||||
|
||||
leftPanel: Item {
|
||||
anchors.fill: parent
|
||||
|
||||
StatusNavigationPanelHeadline {
|
||||
id: profileHeadline
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: 16
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
text: "Profile"
|
||||
}
|
||||
|
||||
ScrollView {
|
||||
anchors.top: profileHeadline.bottom
|
||||
anchors.topMargin: 16
|
||||
anchors.bottom: parent.bottom
|
||||
width: parent.width
|
||||
|
||||
contentHeight: profileMenuItems.height + 8
|
||||
contentWidth: parent.width
|
||||
clip: true
|
||||
|
||||
Column {
|
||||
id: profileMenuItems
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
spacing: 4
|
||||
|
||||
Repeater {
|
||||
model: Models.demoProfileGeneralMenuItems
|
||||
delegate: StatusNavigationListItem {
|
||||
title: model.title
|
||||
icon.name: model.icon
|
||||
}
|
||||
}
|
||||
|
||||
StatusListSectionHeadline { text: "Settings" }
|
||||
|
||||
Repeater {
|
||||
model: Models.demoProfileSettingsMenuItems
|
||||
delegate: StatusNavigationListItem {
|
||||
title: model.title
|
||||
icon.name: model.icon
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
id: invisibleSeparator
|
||||
height: 16
|
||||
width: parent.width
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: Models.demoProfileOtherMenuItems
|
||||
delegate: StatusNavigationListItem {
|
||||
title: model.title
|
||||
icon.name: model.icon
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
rightPanel: Item {
|
||||
anchors.fill: parent
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 190 KiB |
@@ -0,0 +1 @@
|
||||
singleton Models 1.0 Models.qml
|
||||
@@ -0,0 +1,68 @@
|
||||
Това е пакет за проверка на правописа за OpenOffice.org. Може
|
||||
да свалите OpenOffice.org от http://openoffice.org/.
|
||||
Пакетът е продукт на проекта bgOffice. За повече
|
||||
информация, прочетете файла README.bgOffice, който идва с
|
||||
този пакет или посетете страницата на проекта на адрес:
|
||||
http://bgoffice.sourceforge.net.
|
||||
|
||||
|
||||
Указания за инсталиране и настройка
|
||||
|
||||
|
||||
1. Копирате файловете bg_BG.dic и bg_BG.aff в директорията:
|
||||
|
||||
..\OpenOffice.org\share\dict\ooo
|
||||
|
||||
Ако сте инсталирали проверка на правописа на американски
|
||||
английски, то в тази директория трябва да се намират файловете
|
||||
en_US.aff, en_US.dic и dictionary.lst.
|
||||
|
||||
|
||||
2. Отваряте файла dictionary.lst с текстов редактор и добавяте
|
||||
следния ред на края му:
|
||||
|
||||
DICT bg BG bg_BG
|
||||
|
||||
|
||||
3. Стартирате OpenOffice и осъществявате следните настройки:
|
||||
- Избирате от менюто Tools/Options;
|
||||
- От менюто вляво на изскочилото диалогово прозорче избирате
|
||||
Language Settings/Writing Aids;
|
||||
- От диалога вдясно избирате
|
||||
Available language modules/OpenOffice MySpell SpellChecker;
|
||||
- Включвате опцията (ако не е включена);
|
||||
- Избирате бутона Edit вдясно от тази опция;
|
||||
- Избирате Language - Bulgarian;
|
||||
- В полето долу избирате Spelling/OpenOffice MySpell
|
||||
SpellChecker и включвате опцията;
|
||||
- Избирате бутона Close (за да затворите този диалогов
|
||||
прозорец);
|
||||
- Натискате бутона OK (за да потвърдите настройките).
|
||||
|
||||
|
||||
4. Ако текущият избран език не е български, то трябва да
|
||||
изпълните следните стъпки за да го изберете:
|
||||
- Избирате от менюто Tools/Options;
|
||||
- От менюто вляво на изскочилото диалогово прозорче избирате
|
||||
Language Settings/Languages;
|
||||
- Сега от същия диалог, но вдясно избирате
|
||||
Default languages for documents/Western/Bulgarian;
|
||||
- В този момент пред българския език (Bulgarian) трябва да
|
||||
виждате знака за проверка на правописа (малка икона с отметка
|
||||
на фона на буквите ABC). Това означава, че новите настройки са
|
||||
възприети;
|
||||
- Натискате бутона OK (за да потвърдите промените).
|
||||
|
||||
|
||||
5. В този момент проверката на правописа трябва да функционира.
|
||||
Ако имате проблеми, опитайте се да ги разрешите и да ми пишете.
|
||||
|
||||
|
||||
Всяка помощ е добра дошла. Търсят се доброволци да помагат.
|
||||
|
||||
|
||||
OOo-spell-bg
|
||||
Авторски права (C) 2001 Радостин Раднев <radnev@gmail.com>
|
||||
|
||||
OOo-spell-bg
|
||||
Copyright (C) 2001 Radostin Radnev <radnev@gmail.com>
|
||||
@@ -0,0 +1,584 @@
|
||||
# Copyright (c) 2001-2020 Korvigelloù An Drouizig
|
||||
#
|
||||
# Kit e darempred ganeomp : drouizig@drouizig.org - http://www.drouizig.org
|
||||
#
|
||||
# PEP GWIR MIRET STRIZH - KORVIGELLOÙ AN DROUIZIG
|
||||
|
||||
# po (part of speech) :
|
||||
# aa : adanv
|
||||
# b : anv benel
|
||||
# bev : bevezour
|
||||
# g : anv gourel
|
||||
# v : verb
|
||||
#
|
||||
# is (inflectional suffix(es)) :
|
||||
# pl : plural
|
||||
# comp : comparative
|
||||
# super : superlative
|
||||
# excl : exclamative
|
||||
#
|
||||
# ip (inflectional prefix(es)) :
|
||||
# dv : dre vlotaat
|
||||
# dg : dre galetaat
|
||||
# dc : dre c'hwezhañ
|
||||
# ke : kemmesket
|
||||
|
||||
SET UTF-8
|
||||
TRY esiaùnñrtolcdugmphbyfvkwzESIAÙNÑRTOLCDUGMPHBYFVKWZ'
|
||||
|
||||
WORDCHARS '
|
||||
|
||||
FLAG long
|
||||
|
||||
REP 6
|
||||
REP én ñ
|
||||
REP an añ
|
||||
REP en eñ
|
||||
REP in iñ
|
||||
REP on oñ
|
||||
REP un uñ
|
||||
|
||||
PFX a0 Y 10
|
||||
PFX a0 0 m' [aehiou]
|
||||
PFX a0 0 t' [aehiou]
|
||||
PFX a0 0 n' [aehiou]
|
||||
PFX a0 0 d' [aehiou]
|
||||
PFX a0 0 p' [aehiou]
|
||||
PFX a0 0 M' [aehiou]
|
||||
PFX a0 0 T' [aehiou]
|
||||
PFX a0 0 N' [aehiou]
|
||||
PFX a0 0 D' [aehiou]
|
||||
PFX a0 0 P' [aehiou]
|
||||
|
||||
# Kemmadurioù
|
||||
PFX m0 Y 30
|
||||
PFX m0 k g k
|
||||
PFX m0 K G K
|
||||
PFX m0 k c'h k
|
||||
PFX m0 K C'h K
|
||||
PFX m0 t d t
|
||||
PFX m0 T D T
|
||||
PFX m0 t z t
|
||||
PFX m0 T Z T
|
||||
PFX m0 p b p
|
||||
PFX m0 P B P
|
||||
PFX m0 p f p
|
||||
PFX m0 P F P
|
||||
PFX m0 G C'h G[^w]
|
||||
PFX m0 g c'h g[^w]
|
||||
PFX m0 G K G[^W]
|
||||
PFX m0 g k g[^w]
|
||||
PFX m0 gw w gw
|
||||
PFX m0 Gw W Gw
|
||||
PFX m0 Gw Kw Gw
|
||||
PFX m0 gw kw gw
|
||||
PFX m0 b v b
|
||||
PFX m0 B V B
|
||||
PFX m0 b p b
|
||||
PFX m0 B P B
|
||||
PFX m0 m v m
|
||||
PFX m0 M V M
|
||||
PFX m0 d z d
|
||||
PFX m0 D Z D
|
||||
PFX m0 d t d
|
||||
PFX m0 D T D
|
||||
|
||||
#Kemmadur ober (gra>ra)
|
||||
PFX m1 Y 1
|
||||
PFX m1 g 0 .
|
||||
|
||||
# Adanv
|
||||
SFX n1 Y 12
|
||||
SFX n1 0 añ [^hz] is:super
|
||||
SFX n1 0 at [^hz] is:excl
|
||||
SFX n1 0 oc'h [^hz] is:comp
|
||||
SFX n1 0 añ [^z]h is:super
|
||||
SFX n1 0 at [^z]h is:excl
|
||||
SFX n1 0 oc'h [^z]h is:comp
|
||||
SFX n1 z sañ z is:super
|
||||
SFX n1 z sat z is:excl
|
||||
SFX n1 z soc'h z is:comp
|
||||
SFX n1 zh shañ zh is:super
|
||||
SFX n1 zh shat zh is:excl
|
||||
SFX n1 zh shoc'h zh is:comp
|
||||
|
||||
# Liesterioù
|
||||
SFX p1 Y 1
|
||||
SFX p1 0 ed . is:pl
|
||||
|
||||
SFX p2 Y 1
|
||||
SFX p2 0 i . is:pl
|
||||
|
||||
SFX p3 Y 1
|
||||
SFX p3 0 ion . is:pl
|
||||
|
||||
SFX p4 Y 1
|
||||
SFX p4 0 ioù . is:pl
|
||||
|
||||
SFX p5 Y 1
|
||||
SFX p5 0 où . is:pl
|
||||
|
||||
SFX p6 Y 1
|
||||
SFX p6 0 ien . is:pl
|
||||
|
||||
SFX p7 Y 1
|
||||
SFX p7 où eier . is:pl
|
||||
|
||||
SFX p8 Y 1
|
||||
SFX p8 ad iz . is:pl
|
||||
|
||||
SFX p9 Y 1
|
||||
SFX p9 iad iz . is:pl
|
||||
|
||||
SFX p10 Y 1
|
||||
SFX p10 ad idi . is:pl
|
||||
|
||||
# Lostgerioù all
|
||||
SFX l4 Y 2
|
||||
SFX l4 0 ig .
|
||||
SFX l4 0 ioùigoù . is:pl
|
||||
|
||||
SFX l5 Y 2
|
||||
SFX l5 0 ig .
|
||||
SFX l5 0 oùigoù . is:pl
|
||||
|
||||
# Displegadurioù
|
||||
SFX a1 Y 42
|
||||
SFX a1 0 an .
|
||||
SFX a1 0 as .
|
||||
SFX a1 0 e .
|
||||
SFX a1 0 ec'h .
|
||||
SFX a1 0 ed .
|
||||
SFX a1 0 emp .
|
||||
SFX a1 0 en .
|
||||
SFX a1 0 ent .
|
||||
SFX a1 0 er .
|
||||
SFX a1 0 es .
|
||||
SFX a1 0 et .
|
||||
SFX a1 0 ez .
|
||||
SFX a1 0 fe .
|
||||
SFX a1 0 fec'h .
|
||||
SFX a1 0 fed .
|
||||
SFX a1 0 femp .
|
||||
SFX a1 0 fen .
|
||||
SFX a1 0 fent .
|
||||
SFX a1 0 fes .
|
||||
SFX a1 0 i .
|
||||
SFX a1 0 imp .
|
||||
SFX a1 0 in .
|
||||
SFX a1 0 int .
|
||||
SFX a1 0 is .
|
||||
SFX a1 0 it .
|
||||
SFX a1 0 je .
|
||||
SFX a1 0 jec'h .
|
||||
SFX a1 0 jed .
|
||||
SFX a1 0 jemp .
|
||||
SFX a1 0 jen .
|
||||
SFX a1 0 jent .
|
||||
SFX a1 0 jes .
|
||||
SFX a1 0 joc'h .
|
||||
SFX a1 0 jod .
|
||||
SFX a1 0 jomp .
|
||||
SFX a1 0 jont .
|
||||
SFX a1 0 jout .
|
||||
SFX a1 0 o .
|
||||
SFX a1 0 omp .
|
||||
SFX a1 0 ont .
|
||||
SFX a1 0 or .
|
||||
SFX a1 0 ot .
|
||||
|
||||
# Displegadurioù : verboù reizh
|
||||
SFX d1 Y 52
|
||||
SFX d1 0 0 . is:imp_p2_sg
|
||||
SFX d1 0 0 . is:pri_p3_sg
|
||||
SFX d1 0 an . is:pri_p1_sg
|
||||
SFX d1 0 as . is:past_p3_sg
|
||||
SFX d1 0 e . is:pii_p3_sg
|
||||
SFX d1 0 ec'h . is:pii_p2_pl
|
||||
SFX d1 0 ed . is:pii_impers_sp
|
||||
SFX d1 0 emp . is:pii_p1_pl
|
||||
SFX d1 0 en . is:pii_p1_sg
|
||||
SFX d1 0 ent . is:imp_p3_pl
|
||||
SFX d1 0 ent . is:pii_p3_pl
|
||||
SFX d1 0 er . is:pri_impers_sp
|
||||
SFX d1 0 es . is:pii_p2_sg
|
||||
SFX d1 0 et . is:imp_p3_sg
|
||||
SFX d1 0 et . is:pp
|
||||
SFX d1 0 etañ . is:sup
|
||||
SFX d1 0 etoc'h . is:comp
|
||||
SFX d1 0 ez . is:pri_p2_sg
|
||||
SFX d1 0 fe . is:cni_p3_sg
|
||||
SFX d1 0 fec'h . is:cni_p2_pl
|
||||
SFX d1 0 fed . is:cni_impers_sp
|
||||
SFX d1 0 femp . is:cni_p1_pl
|
||||
SFX d1 0 fen . is:cni_p1_sg
|
||||
SFX d1 0 fent . is:cni_p3_pl
|
||||
SFX d1 0 fes . is:cni_p2_sg
|
||||
SFX d1 0 i . is:fti_p2_sg
|
||||
SFX d1 0 imp . is:fti_p1_pl
|
||||
SFX d1 0 in . is:fti_p1_sg
|
||||
SFX d1 0 int . is:fti_p3_pl
|
||||
SFX d1 0 is . is:past_p1_sg
|
||||
SFX d1 0 it . is:imp_p2_pl
|
||||
SFX d1 0 it . is:pri_p2_pl
|
||||
SFX d1 0 je . is:cip_p3_sg
|
||||
SFX d1 0 jec'h . is:cip_p2_pl
|
||||
SFX d1 0 jed . is:cip_impers_sp
|
||||
SFX d1 0 jemp . is:cip_p1_pl
|
||||
SFX d1 0 jen . is:cip_p1_sg
|
||||
SFX d1 0 jent . is:cip_p3_pl
|
||||
SFX d1 0 jes . is:cip_p2_sg
|
||||
SFX d1 0 joc'h . is:past_p2_pl
|
||||
SFX d1 0 jod . is:past_impers_sp
|
||||
SFX d1 0 jomp . is:past_p1_pl
|
||||
SFX d1 0 jon . is:past_p1_sg
|
||||
SFX d1 0 jont . is:past_p3_pl
|
||||
SFX d1 0 jout . is:past_p2_sg
|
||||
SFX d1 0 o . is:fti_p3_sg
|
||||
SFX d1 0 oc'h . is:fti_p2_pl
|
||||
SFX d1 0 omp . is:imp_p1_pl
|
||||
SFX d1 0 omp . is:pri_p1_pl
|
||||
SFX d1 0 ont . is:pri_p3_pl
|
||||
SFX d1 0 or . is:fti_impers_sp
|
||||
SFX d1 0 ot . is:fti_p2_pl
|
||||
|
||||
# Displegadurioù : verboù reizh gant ur bennrann dre -a, -o et -eu
|
||||
# kuitaat : kuita-
|
||||
# pesketa : pesketa-
|
||||
SFX d2 Y 53
|
||||
SFX d2 0 0 . is:pri_p3_sg
|
||||
SFX d2 0 0 . is:imp_p2_sg
|
||||
SFX d2 0 an . is:pri_p1_sg
|
||||
SFX d2 0 as . is:past_p3_sg
|
||||
SFX d2 0 e . is:pii_p3_sg
|
||||
SFX d2 0 ec'h . is:pii_p2_pl
|
||||
SFX d2 0 ed . is:pii_impers_sp
|
||||
SFX d2 0 emp . is:pii_p1_pl
|
||||
SFX d2 0 en . is:pii_p1_sg
|
||||
SFX d2 0 ent . is:pii_p3_pl
|
||||
SFX d2 0 ent . is:imp_p3_pl
|
||||
SFX d2 0 er . is:pri_impers_sp
|
||||
SFX d2 0 es . is:pii_p2_sg
|
||||
SFX d2 0 et . is:pp
|
||||
SFX d2 0 et . is:imp_p3_sg
|
||||
SFX d2 0 etañ . is:sup
|
||||
SFX d2 0 etoc'h . is:comp
|
||||
SFX d2 0 ez . is:pri_p2_sg
|
||||
SFX d2 0 fe . is:cni_p3_sg
|
||||
SFX d2 0 fec'h . is:cni_p2_pl
|
||||
SFX d2 0 fed . is:cni_impers_sp
|
||||
SFX d2 0 femp . is:cni_p1_pl
|
||||
SFX d2 0 fen . is:cni_p1_sg
|
||||
SFX d2 0 fent . is:cni_p3_pl
|
||||
SFX d2 0 fes . is:cni_p2_sg
|
||||
SFX d2 0 i . is:fti_p2_sg
|
||||
SFX d2 0 imp . is:fti_p1_pl
|
||||
SFX d2 0 in . is:fti_p1_sg
|
||||
SFX d2 0 int . is:fti_p3_pl
|
||||
SFX d2 0 io . is:fti_p3_sg
|
||||
SFX d2 0 is . is:past_p1_sg
|
||||
SFX d2 0 it . is:pri_p2_pl
|
||||
SFX d2 0 it . is:imp_p2_pl
|
||||
SFX d2 0 je . is:cip_p3_sg
|
||||
SFX d2 0 jec'h . is:cip_p2_pl
|
||||
SFX d2 0 jed . is:cip_impers_sp
|
||||
SFX d2 0 jemp . is:cip_p1_pl
|
||||
SFX d2 0 jen . is:cip_p1_sg
|
||||
SFX d2 0 jent . is:cip_p3_pl
|
||||
SFX d2 0 jes . is:cip_p2_sg
|
||||
SFX d2 0 joc'h . is:past_p2_pl
|
||||
SFX d2 0 jod . is:past_impers_sp
|
||||
SFX d2 0 jomp . is:past_p1_pl
|
||||
SFX d2 0 jon . is:past_p1_sg
|
||||
SFX d2 0 jont . is:past_p3_pl
|
||||
SFX d2 0 jout . is:past_p2_sg
|
||||
SFX d2 0 oc'h . is:fti_p2_pl
|
||||
SFX d2 0 omp . is:pri_p1_pl
|
||||
SFX d2 0 omp . is:imp_p1_pl
|
||||
SFX d2 0 ont . is:pri_p3_pl
|
||||
SFX d2 0 or . is:fti_impers_sp
|
||||
SFX d2 0 ot . is:fti_p2_pl
|
||||
SFX d2 0 y . is:fti_p3_sg
|
||||
|
||||
# Displegadurioù : displegadur dazeilel ar verboù dre -a (pesketa, boueta, ...)
|
||||
# pesketa : pesketa-
|
||||
SFX d3 Y 53
|
||||
SFX d3 0 0/d2 .
|
||||
SFX d3 0 0 . is:imp_p2_sg
|
||||
SFX d3 0 0 . is:pri_p3_sg
|
||||
SFX d3 0 n . is:pri_p1_sg
|
||||
SFX d3 0 s . is:past_p3_sg
|
||||
SFX d3 a e . is:pii_p3_sg
|
||||
SFX d3 a ec'h . is:pii_p2_pl
|
||||
SFX d3 a ed . is:pii_impers_sp
|
||||
SFX d3 a emp . is:pii_p1_pl
|
||||
SFX d3 a en . is:pii_p1_sg
|
||||
SFX d3 a ent . is:imp_p3_pl
|
||||
SFX d3 a ent . is:pii_p3_pl
|
||||
SFX d3 a er . is:pri_impers_sp
|
||||
SFX d3 a es . is:pii_p2_sg
|
||||
SFX d3 a et . is:imp_p3_sg
|
||||
SFX d3 a et . is:pp
|
||||
SFX d3 a etañ . is:sup
|
||||
SFX d3 a etoc'h . is:comp
|
||||
SFX d3 a ez . is:pri_p2_sg
|
||||
SFX d3 a fe . is:cni_p3_sg
|
||||
SFX d3 a fec'h . is:cni_p2_pl
|
||||
SFX d3 a fed . is:cni_impers_sp
|
||||
SFX d3 a femp . is:cni_p1_pl
|
||||
SFX d3 a fen . is:cni_p1_sg
|
||||
SFX d3 a fent . is:cni_p3_pl
|
||||
SFX d3 a fes . is:cni_p2_sg
|
||||
SFX d3 a i . is:fti_p2_sg
|
||||
SFX d3 a imp . is:fti_p1_pl
|
||||
SFX d3 a in . is:fti_p1_sg
|
||||
SFX d3 a int . is:fti_p3_pl
|
||||
SFX d3 a is . is:past_p1_sg
|
||||
SFX d3 a it . is:imp_p2_pl
|
||||
SFX d3 a it . is:pri_p2_pl
|
||||
SFX d3 a je . is:cip_p3_sg
|
||||
SFX d3 a jec'h . is:cip_p2_pl
|
||||
SFX d3 a jed . is:cip_impers_sp
|
||||
SFX d3 a jemp . is:cip_p1_pl
|
||||
SFX d3 a jen . is:cip_p1_sg
|
||||
SFX d3 a jent . is:cip_p3_pl
|
||||
SFX d3 a jes . is:cip_p2_sg
|
||||
SFX d3 a joc'h . is:past_p2_pl
|
||||
SFX d3 a jod . is:past_impers_sp
|
||||
SFX d3 a jomp . is:past_p1_pl
|
||||
SFX d3 a jon . is:past_p1_sg
|
||||
SFX d3 a jont . is:past_p3_pl
|
||||
SFX d3 a jout . is:past_p2_sg
|
||||
SFX d3 a o . is:fti_p3_sg
|
||||
SFX d3 a oc'h . is:fti_p2_pl
|
||||
SFX d3 a omp . is:imp_p1_pl
|
||||
SFX d3 a omp . is:pri_p1_pl
|
||||
SFX d3 a ont . is:pri_p3_pl
|
||||
SFX d3 a or . is:fti_impers_sp
|
||||
SFX d3 a ot . is:fti_p2_pl
|
||||
|
||||
# Verboù dre -iañ
|
||||
# glebiañ : gleb-
|
||||
SFX d4 Y 52
|
||||
SFX d4 0 0 . is:imp_p2_sg
|
||||
SFX d4 0 0 . is:pri_p3_sg
|
||||
SFX d4 0 fe . is:cni_p3_sg
|
||||
SFX d4 0 fec'h . is:cni_p2_pl
|
||||
SFX d4 0 fed . is:cni_impers_sp
|
||||
SFX d4 0 femp . is:cni_p1_pl
|
||||
SFX d4 0 fen . is:cni_p1_sg
|
||||
SFX d4 0 fent . is:cni_p3_pl
|
||||
SFX d4 0 fes . is:cni_p2_sg
|
||||
SFX d4 0 i . is:fti_p2_sg
|
||||
SFX d4 0 ian . is:pri_p1_sg
|
||||
SFX d4 0 ias . is:past_p3_sg
|
||||
SFX d4 0 ie . is:pii_p3_sg
|
||||
SFX d4 0 iec'h . is:pii_p2_pl
|
||||
SFX d4 0 ied . is:pii_impers_sp
|
||||
SFX d4 0 iemp . is:pii_p1_pl
|
||||
SFX d4 0 ien . is:pii_p1_sg
|
||||
SFX d4 0 ient . is:imp_p3_pl
|
||||
SFX d4 0 ient . is:pii_p3_pl
|
||||
SFX d4 0 ier . is:pri_impers_sp
|
||||
SFX d4 0 ies . is:pii_p2_sg
|
||||
SFX d4 0 iet . is:imp_p3_sg
|
||||
SFX d4 0 iet . is:pp
|
||||
SFX d4 0 ietañ . is:sup
|
||||
SFX d4 0 ietoc'h . is:comp
|
||||
SFX d4 0 iez . is:pri_p2_sg
|
||||
SFX d4 0 imp . is:fti_p1_pl
|
||||
SFX d4 0 in . is:fti_p1_sg
|
||||
SFX d4 0 int . is:fti_p3_pl
|
||||
SFX d4 0 io . is:fti_p3_sg
|
||||
SFX d4 0 ioc'h . is:fti_p2_pl
|
||||
SFX d4 0 iomp . is:imp_p1_pl
|
||||
SFX d4 0 iomp . is:pri_p1_pl
|
||||
SFX d4 0 iont . is:pri_p3_pl
|
||||
SFX d4 0 ior . is:fti_impers_sp
|
||||
SFX d4 0 iot . is:fti_p2_pl
|
||||
SFX d4 0 is . is:past_p1_sg
|
||||
SFX d4 0 it . is:imp_p2_pl
|
||||
SFX d4 0 it . is:pri_p2_pl
|
||||
SFX d4 0 je . is:cip_p3_sg
|
||||
SFX d4 0 jec'h . is:cip_p2_pl
|
||||
SFX d4 0 jed . is:cip_impers_sp
|
||||
SFX d4 0 jemp . is:cip_p1_pl
|
||||
SFX d4 0 jen . is:cip_p1_sg
|
||||
SFX d4 0 jent . is:cip_p3_pl
|
||||
SFX d4 0 jes . is:cip_p2_sg
|
||||
SFX d4 0 joc'h . is:past_p2_pl
|
||||
SFX d4 0 jod . is:past_impers_sp
|
||||
SFX d4 0 jomp . is:past_p1_pl
|
||||
SFX d4 0 jon . is:past_p1_sg
|
||||
SFX d4 0 jont . is:past_p3_pl
|
||||
SFX d4 0 jout . is:past_p2_sg
|
||||
|
||||
# Verboù dre -liañ
|
||||
# kuzuliañ : kuzuilh-
|
||||
SFX d5 Y 52
|
||||
SFX d5 0 0 . is:pri_p3_sg
|
||||
SFX d5 0 0 . is:imp_p2_sg
|
||||
SFX d5 0 fe . is:cni_p3_sg
|
||||
SFX d5 0 fec'h . is:cni_p2_pl
|
||||
SFX d5 0 fed . is:cni_impers_sp
|
||||
SFX d5 0 femp . is:cni_p1_pl
|
||||
SFX d5 0 fen . is:cni_p1_sg
|
||||
SFX d5 0 fent . is:cni_p3_pl
|
||||
SFX d5 0 fes . is:cni_p2_sg
|
||||
SFX d5 0 i . is:fti_p2_sg
|
||||
SFX d5 0 imp . is:fti_p1_pl
|
||||
SFX d5 0 in . is:fti_p1_sg
|
||||
SFX d5 0 int . is:fti_p3_pl
|
||||
SFX d5 0 is . is:past_p1_sg
|
||||
SFX d5 0 it . is:pri_p2_pl
|
||||
SFX d5 0 it . is:imp_p2_pl
|
||||
SFX d5 0 je . is:cip_p3_sg
|
||||
SFX d5 0 jec'h . is:cip_p2_pl
|
||||
SFX d5 0 jed . is:cip_impers_sp
|
||||
SFX d5 0 jemp . is:cip_p1_pl
|
||||
SFX d5 0 jen . is:cip_p1_sg
|
||||
SFX d5 0 jent . is:cip_p3_pl
|
||||
SFX d5 0 jes . is:cip_p2_sg
|
||||
SFX d5 0 joc'h . is:past_p2_pl
|
||||
SFX d5 0 jod . is:past_impers_sp
|
||||
SFX d5 0 jomp . is:past_p1_pl
|
||||
SFX d5 0 jon . is:past_p1_sg
|
||||
SFX d5 0 jont . is:past_p3_pl
|
||||
SFX d5 0 jout . is:past_p2_sg
|
||||
SFX d5 ilh lian . is:pri_p1_sg
|
||||
SFX d5 ilh lias . is:past_p3_sg
|
||||
SFX d5 ilh lie . is:pii_p3_sg
|
||||
SFX d5 ilh liec'h . is:pii_p2_pl
|
||||
SFX d5 ilh lied . is:pii_impers_sp
|
||||
SFX d5 ilh liemp . is:pii_p1_pl
|
||||
SFX d5 ilh lien . is:pii_p1_sg
|
||||
SFX d5 ilh lient . is:pii_p3_pl
|
||||
SFX d5 ilh lient . is:imp_p3_pl
|
||||
SFX d5 ilh lier . is:pri_impers_sp
|
||||
SFX d5 ilh lies . is:pii_p2_sg
|
||||
SFX d5 ilh liet . is:pp
|
||||
SFX d5 ilh liet . is:imp_p3_sg
|
||||
SFX d5 ilh lietañ . is:sup
|
||||
SFX d5 ilh lietoc'h . is:comp
|
||||
SFX d5 ilh liez . is:pri_p2_sg
|
||||
SFX d5 ilh lio . is:fti_p3_sg
|
||||
SFX d5 ilh lioc'h . is:fti_p2_pl
|
||||
SFX d5 ilh liomp . is:pri_p1_pl
|
||||
SFX d5 ilh liomp . is:imp_p1_pl
|
||||
SFX d5 ilh liont . is:pri_p3_pl
|
||||
SFX d5 ilh lior . is:fti_impers_sp
|
||||
SFX d5 ilh liot . is:fti_p2_pl
|
||||
|
||||
# Verboù dre -niañ
|
||||
# koaniañ : koagn-
|
||||
SFX d6 Y 52
|
||||
SFX d6 0 0 . is:imp_p2_sg
|
||||
SFX d6 0 0 . is:pri_p3_sg
|
||||
SFX d6 0 fe . is:cni_p3_sg
|
||||
SFX d6 0 fec'h . is:cni_p2_pl
|
||||
SFX d6 0 fed . is:cni_impers_sp
|
||||
SFX d6 0 femp . is:cni_p1_pl
|
||||
SFX d6 0 fen . is:cni_p1_sg
|
||||
SFX d6 0 fent . is:cni_p3_pl
|
||||
SFX d6 0 fes . is:cni_p2_sg
|
||||
SFX d6 0 i . is:fti_p2_sg
|
||||
SFX d6 0 imp . is:fti_p1_pl
|
||||
SFX d6 0 in . is:fti_p1_sg
|
||||
SFX d6 0 int . is:fti_p3_pl
|
||||
SFX d6 0 is . is:past_p1_sg
|
||||
SFX d6 0 it . is:imp_p2_pl
|
||||
SFX d6 0 it . is:pri_p2_pl
|
||||
SFX d6 0 je . is:cip_p3_sg
|
||||
SFX d6 0 jec'h . is:cip_p2_pl
|
||||
SFX d6 0 jed . is:cip_impers_sp
|
||||
SFX d6 0 jemp . is:cip_p1_pl
|
||||
SFX d6 0 jen . is:cip_p1_sg
|
||||
SFX d6 0 jent . is:cip_p3_pl
|
||||
SFX d6 0 jes . is:cip_p2_sg
|
||||
SFX d6 0 joc'h . is:past_p2_pl
|
||||
SFX d6 0 jod . is:past_impers_sp
|
||||
SFX d6 0 jomp . is:past_p1_pl
|
||||
SFX d6 0 jon . is:past_p1_sg
|
||||
SFX d6 0 jont . is:past_p3_pl
|
||||
SFX d6 0 jout . is:past_p2_sg
|
||||
SFX d6 gn nian . is:pri_p1_sg
|
||||
SFX d6 gn nias . is:past_p3_sg
|
||||
SFX d6 gn nie . is:pii_p3_sg
|
||||
SFX d6 gn niec'h . is:pii_p2_pl
|
||||
SFX d6 gn nied . is:pii_impers_sp
|
||||
SFX d6 gn niemp . is:pii_p1_pl
|
||||
SFX d6 gn nien . is:pii_p1_sg
|
||||
SFX d6 gn nient . is:imp_p3_pl
|
||||
SFX d6 gn nient . is:pii_p3_pl
|
||||
SFX d6 gn nier . is:pri_impers_sp
|
||||
SFX d6 gn nies . is:pii_p2_sg
|
||||
SFX d6 gn niet . is:imp_p3_sg
|
||||
SFX d6 gn niet . is:pp
|
||||
SFX d6 gn nietañ . is:sup
|
||||
SFX d6 gn nietoc'h . is:comp
|
||||
SFX d6 gn niez . is:pri_p2_sg
|
||||
SFX d6 gn nio . is:fti_p3_sg
|
||||
SFX d6 gn nioc'h . is:fti_p2_pl
|
||||
SFX d6 gn niomp . is:imp_p1_pl
|
||||
SFX d6 gn niomp . is:pri_p1_pl
|
||||
SFX d6 gn niont . is:pri_p3_pl
|
||||
SFX d6 gn nior . is:fti_impers_sp
|
||||
SFX d6 gn niot . is:fti_p2_pl
|
||||
|
||||
# Displegadurioù : ober
|
||||
SFX d7 Y 54
|
||||
SFX d7 0 0 . is:pri_p3_sg
|
||||
SFX d7 0 0 . is:imp_p2_sg
|
||||
SFX d7 0 e . is:pii_p3_sg
|
||||
SFX d7 0 ec'h . is:pii_p2_pl
|
||||
SFX d7 0 ed . is:pii_impers_sp
|
||||
SFX d7 0 emp . is:pii_p1_pl
|
||||
SFX d7 0 en . is:pii_p1_sg
|
||||
SFX d7 0 ent . is:pii_p3_pl
|
||||
SFX d7 0 ent . is:imp_p3_pl
|
||||
SFX d7 0 es . is:pii_p2_sg
|
||||
SFX d7 0 et . is:imp_p3_sg
|
||||
SFX d7 0 et . is:pp
|
||||
SFX d7 0 etañ . is:sup
|
||||
SFX d7 0 etoc'h . is:comp
|
||||
SFX d7 0 fe . is:cni_p3_sg
|
||||
SFX d7 0 fec'h . is:cni_p2_pl
|
||||
SFX d7 0 fed . is:cni_impers_sp
|
||||
SFX d7 0 femp . is:cni_p1_pl
|
||||
SFX d7 0 fen . is:cni_p1_sg
|
||||
SFX d7 0 fent . is:cni_p3_pl
|
||||
SFX d7 0 fes . is:cni_p2_sg
|
||||
SFX d7 0 imp . is:fti_p1_pl
|
||||
SFX d7 0 int . is:fti_p3_pl
|
||||
SFX d7 0 io . is:fti_p3_sg
|
||||
SFX d7 0 je . is:cip_p3_sg
|
||||
SFX d7 0 jec'h . is:cip_p2_pl
|
||||
SFX d7 0 jed . is:cip_impers_sp
|
||||
SFX d7 0 jemp . is:cip_p1_pl
|
||||
SFX d7 0 jen . is:cip_p1_sg
|
||||
SFX d7 0 jent . is:cip_p3_pl
|
||||
SFX d7 0 jes . is:cip_p2_sg
|
||||
SFX d7 0 n . is:pri_p1_sg
|
||||
SFX d7 0 y . is:fti_p3_sg
|
||||
SFX d7 a eas . is:past_p3_sg
|
||||
SFX d7 a eer . is:pri_impers_sp
|
||||
SFX d7 a ejoc'h . is:past_p2_pl
|
||||
SFX d7 a ejod . is:past_impers_sp
|
||||
SFX d7 a ejomp . is:past_p1_pl
|
||||
SFX d7 a ejon . is:past_p1_sg
|
||||
SFX d7 a ejont . is:past_p3_pl
|
||||
SFX d7 a ejout . is:past_p2_sg
|
||||
SFX d7 a eoc'h . is:fti_p2_pl
|
||||
SFX d7 a eomp . is:pri_p1_pl
|
||||
SFX d7 a eomp . is:imp_p1_pl
|
||||
SFX d7 a eont . is:pri_p3_pl
|
||||
SFX d7 a eor . is:fti_impers_sp
|
||||
SFX d7 a eot . is:fti_p2_pl
|
||||
SFX d7 a ez . is:pri_p2_sg
|
||||
SFX d7 a i . is:fti_p2_sg
|
||||
SFX d7 a imp . is:fti_p1_pl
|
||||
SFX d7 a in . is:fti_p1_sg
|
||||
SFX d7 a is . is:past_p1_sg
|
||||
SFX d7 a it . is:pri_p2_pl
|
||||
SFX d7 a it . is:imp_p2_pl
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
Hunspell Breton (br_FR) dictionary
|
||||
Copyright (c) 2001-2018 Korvigelloù An Drouizig
|
||||
drouizig@drouizig.org - http://www.drouizig.org
|
||||
|
||||
Version 0.16 - release date: 2018-12-16
|
||||
--
|
||||
This dictionary is based on the original Breton
|
||||
word list created by Philippe Basciano-Le Gall for
|
||||
Korvigelloù an Drouizig. It is covered by the LGPL,
|
||||
MPL and GPL licenses. The affix file has been heavily
|
||||
modified by Michel "Boulc'hurun" Nedeleg.
|
||||
|
||||
Thanks to both authors for their wonderful work !
|
||||
|
||||
2020-06-06 Denis Arnaud (still on progress...)
|
||||
* Uppercases added in m0 mutations rule.
|
||||
* Plural rules ad>iz (p8), iad>iz (p9) and ad>idi (p10)
|
||||
|
||||
2018-12-16 Denis Arnaud
|
||||
* Review of the verbs list (still on progress)
|
||||
* new flags (m1 and d7) for some verbs (ober, gouzout...)
|
||||
* new replacement rules (én>ñ, en>eñ, un>uñ...)
|
||||
* In dictionary file, words not found in reference dictionaries have been marked by "kkeg" comment, mutation from g- to -h have been marked by "g>h" comment, mutation from gw- to -c'hw have been marked by "c'hw" comment, mutation from gou- to ou- have been marked by "g>o" comment, d3 conjugation applied to -aat verbs have been marked by "d3evaat". The reference dictionaries are Roparz Hemon-Ronan Huon, Favereau, devri.bzh, preder.net and termofis.
|
||||
* Words added (ejiptologour, daer, daerenn, adlabourat, adasavadenn)
|
||||
|
||||
2018-01-15 Denis Arnaud
|
||||
* Words added (anlennet, aodio, pennbajenn, kevanek, skript, proksi, daouglik, daouglikañ, kelennskrid, makro, frammlun, spisverk, spisverkan, stlenngrafer). Review of -niañ verbs list (flag d6).
|
||||
@@ -0,0 +1,8 @@
|
||||
Dual license:
|
||||
|
||||
* GNU General Public License, version 2 or later
|
||||
https://www.gnu.org/licenses/gpl-2.0.txt
|
||||
|
||||
* GNU Lesser General Public License, version 2.1 or later
|
||||
https://www.gnu.org/licenses/lgpl-2.1.txt
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
Dual license:
|
||||
|
||||
* GNU General Public License, version 2 or later
|
||||
https://www.gnu.org/licenses/gpl-2.0.txt
|
||||
|
||||
* GNU Lesser General Public License, version 2.1 or later
|
||||
https://www.gnu.org/licenses/lgpl-2.1.txt
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
The pack contains current versions of all OpenOffice.org Czech dictionares as of 2008-05-18.
|
||||
|
||||
Spellchecker
|
||||
------------
|
||||
|
||||
This dictionary for spell-checking Czech texts is licensed under GPL license.
|
||||
|
||||
The dictionary is based on Czech ispell dictionary created by Petr Kolar
|
||||
and numerous contributors.
|
||||
|
||||
Thesaurus
|
||||
----------
|
||||
|
||||
Copyright (c) 1994,2008 Karel Pala, Jan Všianský
|
||||
pala@fi.muni.cz
|
||||
|
||||
You can freely use the thesaurus in OpenOffice.org (or its derivatives).
|
||||
You can not modify it or use for commercial purposes without the author's
|
||||
approval.
|
||||
|
||||
Hyphenation dictionary
|
||||
----------------------
|
||||
|
||||
Language: Czech (Czech Republic) (cs CZ).
|
||||
Origin: Based on the TeX hyphenation tables
|
||||
License: GPL license, 2003
|
||||
Author: Pavel@Janik.cz (Pavel Janík)
|
||||
|
||||
HYPH cs CZ hyph_cs
|
||||
|
||||
These patterns were converted from TeX hyphenation patterns by the package
|
||||
lingucomponent-tools
|
||||
(http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/oo-cs/lingucomponent-tools/).
|
||||
|
||||
The license of original files is GNU GPL (they are both parts of csTeX). My
|
||||
work on them was to only run the scripts from lingucomponent-tools package
|
||||
(dual LGPL/SISSL license so it can be integrated).
|
||||
--
|
||||
Pavel Janík
|
||||
2003
|
||||
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
Stavekontrolden - Danish dictionary files for Hunspell and thesaurus files for MyThes
|
||||
Version 2.5.129 - 11-07-2020
|
||||
da_DK.dic, da_DK.aff, th_da_DK.dat, th_da_DK.idx: © 2020 Foreningen for frit tilgængelige sprogværktøjer - http://www.stavekontrolden.dk
|
||||
These files are published under the following open source licenses:
|
||||
|
||||
GNU GPL version 2.0 - https://www.gnu.org/licenses/gpl-2.0.html
|
||||
GNU LGPL version 2.1 - https://www.gnu.org/licenses/lgpl-2.1.html
|
||||
Mozilla MPL version 1.1 - https://www.mozilla.org/en-US/MPL/1.1/
|
||||
|
||||
This dictionary is based on data from Det Danske Sprog- og Litteraturselskab
|
||||
(The Danish Society for Language and Literature), https://dsl.dk.
|
||||
Thanks to Lyngby-Taarbæk Kommune, Gribskov Kommune and Region Midtjylland for financial support to the thesaurus project.
|
||||
@@ -0,0 +1,729 @@
|
||||
# this is the affix file of the de_AT Hunspell dictionary
|
||||
# derived from the igerman98 dictionary
|
||||
#
|
||||
# Version: 20161207
|
||||
#
|
||||
# Copyright (C) 1998-2015 Bjoern Jacke <bjoern@j3e.de>
|
||||
#
|
||||
# License: GPLv2, GPLv3
|
||||
# There should be a copy of both of this licenses included
|
||||
# with every distribution of this dictionary. Modified
|
||||
# versions using the GPL may only include the GPL
|
||||
|
||||
SET UTF-8
|
||||
TRY esijanrtolcdugmphbyfvkwqxzäüößáéêàâñESIJANRTOLCDUGMPHBYFVKWQXZÄÜÖÉ-.
|
||||
|
||||
PFX U Y 1
|
||||
PFX U 0 un .
|
||||
|
||||
PFX V Y 1
|
||||
PFX V 0 ver .
|
||||
|
||||
SFX F Y 35
|
||||
SFX F 0 nen in
|
||||
SFX F e in e
|
||||
SFX F e innen e
|
||||
SFX F 0 in [^i]n
|
||||
SFX F 0 innen [^i]n
|
||||
SFX F 0 in [^enr]
|
||||
SFX F 0 innen [^enr]
|
||||
SFX F 0 in [^e]r
|
||||
SFX F 0 innen [^e]r
|
||||
SFX F 0 in [^r]er
|
||||
SFX F 0 innen [^r]er
|
||||
SFX F 0 in [^e]rer
|
||||
SFX F 0 innen [^e]rer
|
||||
SFX F 0 in ierer
|
||||
SFX F 0 innen ierer
|
||||
SFX F er in [^i]erer
|
||||
SFX F er innen [^i]erer
|
||||
SFX F in In in
|
||||
SFX F in Innen in
|
||||
SFX F e In e
|
||||
SFX F e Innen e
|
||||
SFX F 0 In [^i]n
|
||||
SFX F 0 Innen [^i]n
|
||||
SFX F 0 In [^en]
|
||||
SFX F 0 Innen [^en]
|
||||
SFX F 0 In [^e]r
|
||||
SFX F 0 Innen [^e]r
|
||||
SFX F 0 In [^r]er
|
||||
SFX F 0 Innen [^r]er
|
||||
SFX F 0 In [^e]rer
|
||||
SFX F 0 Innen [^e]rer
|
||||
SFX F 0 In ierer
|
||||
SFX F 0 Innen ierer
|
||||
SFX F er In [^i]erer
|
||||
SFX F er Innen [^i]erer
|
||||
#SFX F en innen en
|
||||
#SFX F en Innen en
|
||||
|
||||
|
||||
SFX L N 12
|
||||
SFX L 0 tlich n
|
||||
SFX L 0 tliche n
|
||||
SFX L 0 tlicher n
|
||||
SFX L 0 tliches n
|
||||
SFX L 0 tlichem n
|
||||
SFX L 0 tlichen n
|
||||
SFX L 0 lich [^n]
|
||||
SFX L 0 liche [^n]
|
||||
SFX L 0 licher [^n]
|
||||
SFX L 0 liches [^n]
|
||||
SFX L 0 lichem [^n]
|
||||
SFX L 0 lichen [^n]
|
||||
|
||||
|
||||
#SFX H N 2
|
||||
#SFX H 0 heit .
|
||||
#SFX H 0 heiten .
|
||||
|
||||
|
||||
#SFX K N 2
|
||||
#SFX K 0 keit .
|
||||
#SFX K 0 keiten .
|
||||
|
||||
|
||||
SFX M N 10
|
||||
SFX M 0 chen [^se]
|
||||
SFX M 0 chens [^se]
|
||||
SFX M ass ässchen ass
|
||||
SFX M ass ässchens ass
|
||||
SFX M oss össchen oss
|
||||
SFX M oss össchens oss
|
||||
SFX M uss üsschen uss
|
||||
SFX M uss üsschens uss
|
||||
SFX M e chen e
|
||||
SFX M e chens e
|
||||
|
||||
|
||||
SFX A Y 46
|
||||
SFX A 0 r e
|
||||
SFX A 0 n e
|
||||
SFX A 0 m e
|
||||
SFX A 0 s e
|
||||
SFX A 0 e [^elr]
|
||||
SFX A 0 er [^elr]
|
||||
SFX A 0 en [^elr]
|
||||
SFX A 0 em [^elr]
|
||||
SFX A 0 es [^elr]
|
||||
SFX A 0 e [^e][rl]
|
||||
SFX A 0 er [^e][rl]
|
||||
SFX A 0 en [^e][rl]
|
||||
SFX A 0 em [^e][rl]
|
||||
SFX A 0 es [^e][rl]
|
||||
SFX A 0 e [^u]er
|
||||
SFX A 0 er [^u]er
|
||||
SFX A 0 en [^u]er
|
||||
SFX A 0 em [^u]er
|
||||
SFX A 0 es [^u]er
|
||||
SFX A er re uer
|
||||
SFX A er rer uer
|
||||
SFX A er ren uer
|
||||
SFX A er rem uer
|
||||
SFX A er res uer
|
||||
SFX A 0 e [eil]el
|
||||
SFX A 0 er [eil]el
|
||||
SFX A 0 en [eil]el
|
||||
SFX A 0 em [eil]el
|
||||
SFX A 0 es [eil]el
|
||||
SFX A el le [^eil]el
|
||||
SFX A el ler [^eil]el
|
||||
SFX A el len [^eil]el
|
||||
SFX A el lem [^eil]el
|
||||
SFX A el les [^eil]el
|
||||
SFX A lig elig [^aeiouhlräüö]lig
|
||||
SFX A lig elige [^aeiouhlräüö]lig
|
||||
SFX A lig eliger [^aeiouhlräüö]lig
|
||||
SFX A lig eligen [^aeiouhlräüö]lig
|
||||
SFX A lig eligem [^aeiouhlräüö]lig
|
||||
SFX A lig eliges [^aeiouhlräüö]lig
|
||||
SFX A erig rig [^hi]erig
|
||||
SFX A erig rige [^hi]erig
|
||||
SFX A erig riger [^hi]erig
|
||||
SFX A erig rigen [^hi]erig
|
||||
SFX A erig rigem [^hi]erig
|
||||
SFX A erig riges [^hi]erig
|
||||
|
||||
|
||||
SFX C Y 100
|
||||
SFX C 0 ere [^elr]
|
||||
SFX C 0 erer [^elr]
|
||||
SFX C 0 eren [^elr]
|
||||
SFX C 0 erem [^elr]
|
||||
SFX C 0 eres [^elr]
|
||||
SFX C 0 re e
|
||||
SFX C 0 rer e
|
||||
SFX C 0 ren e
|
||||
SFX C 0 rem e
|
||||
SFX C 0 res e
|
||||
SFX C 0 ere [^e][lr]
|
||||
SFX C 0 erer [^e][lr]
|
||||
SFX C 0 eren [^e][lr]
|
||||
SFX C 0 erem [^e][lr]
|
||||
SFX C 0 eres [^e][lr]
|
||||
SFX C el lere el
|
||||
SFX C el lerer el
|
||||
SFX C el leren el
|
||||
SFX C el lerem el
|
||||
SFX C el leres el
|
||||
SFX C er rere uer
|
||||
SFX C er rerer uer
|
||||
SFX C er reren uer
|
||||
SFX C er rerem uer
|
||||
SFX C er reres uer
|
||||
SFX C 0 ere [^u]er
|
||||
SFX C 0 erer [^u]er
|
||||
SFX C 0 eren [^u]er
|
||||
SFX C 0 erem [^u]er
|
||||
SFX C 0 eres [^u]er
|
||||
SFX C lig eligere [^aeiouhlräüö]lig
|
||||
SFX C lig eligerer [^aeiouhlräüö]lig
|
||||
SFX C lig eligeren [^aeiouhlräüö]lig
|
||||
SFX C lig eligerem [^aeiouhlräüö]lig
|
||||
SFX C lig eligeres [^aeiouhlräüö]lig
|
||||
SFX C erig rigere [^hi]erig
|
||||
SFX C erig rigerer [^hi]erig
|
||||
SFX C erig rigeren [^hi]erig
|
||||
SFX C erig rigerem [^hi]erig
|
||||
SFX C erig rigeres [^hi]erig
|
||||
SFX C 0 est [kßsuxz]
|
||||
SFX C 0 este [kßsuxz]
|
||||
SFX C 0 ester [kßsuxz]
|
||||
SFX C 0 esten [kßsuxz]
|
||||
SFX C 0 estem [kßsuxz]
|
||||
SFX C 0 estes [kßsuxz]
|
||||
SFX C 0 st et
|
||||
SFX C 0 ste et
|
||||
SFX C 0 ster et
|
||||
SFX C 0 sten et
|
||||
SFX C 0 stem et
|
||||
SFX C 0 stes et
|
||||
SFX C 0 st igt
|
||||
SFX C 0 ste igt
|
||||
SFX C 0 ster igt
|
||||
SFX C 0 sten igt
|
||||
SFX C 0 stem igt
|
||||
SFX C 0 stes igt
|
||||
SFX C 0 est [^i]gt
|
||||
SFX C 0 este [^i]gt
|
||||
SFX C 0 ester [^i]gt
|
||||
SFX C 0 esten [^i]gt
|
||||
SFX C 0 estem [^i]gt
|
||||
SFX C 0 estes [^i]gt
|
||||
SFX C 0 est [^eg]t
|
||||
SFX C 0 este [^eg]t
|
||||
SFX C 0 ester [^eg]t
|
||||
SFX C 0 esten [^eg]t
|
||||
SFX C 0 estem [^eg]t
|
||||
SFX C 0 estes [^eg]t
|
||||
SFX C 0 st [^kßstxz]
|
||||
SFX C 0 ste [^kßstxz]
|
||||
SFX C 0 ster [^kßstxz]
|
||||
SFX C 0 sten [^kßstxz]
|
||||
SFX C 0 stem [^kßstxz]
|
||||
SFX C 0 stes [^kßstxz]
|
||||
SFX C 0 st nd
|
||||
SFX C 0 ste nd
|
||||
SFX C 0 ster nd
|
||||
SFX C 0 sten nd
|
||||
SFX C 0 stem nd
|
||||
SFX C 0 stes nd
|
||||
SFX C 0 est [^n]d
|
||||
SFX C 0 este [^n]d
|
||||
SFX C 0 ester [^n]d
|
||||
SFX C 0 esten [^n]d
|
||||
SFX C 0 estem [^n]d
|
||||
SFX C 0 estes [^n]d
|
||||
SFX C lig eligst [^aeiouhlräüö]lig
|
||||
SFX C lig eligste [^aeiouhlräüö]lig
|
||||
SFX C lig eligster [^aeiouhlräüö]lig
|
||||
SFX C lig eligsten [^aeiouhlräüö]lig
|
||||
SFX C lig eligstem [^aeiouhlräüö]lig
|
||||
SFX C lig eligstes [^aeiouhlräüö]lig
|
||||
SFX C erig rigst [^hi]erig
|
||||
SFX C erig rigste [^hi]erig
|
||||
SFX C erig rigster [^hi]erig
|
||||
SFX C erig rigsten [^hi]erig
|
||||
SFX C erig rigstem [^hi]erig
|
||||
SFX C erig rigstes [^hi]erig
|
||||
|
||||
|
||||
SFX E Y 1
|
||||
SFX E 0 e .
|
||||
|
||||
|
||||
SFX f Y 4
|
||||
SFX f ph f ph
|
||||
SFX f ph fen ph
|
||||
SFX f phie fie phie
|
||||
SFX f phie fien phie
|
||||
|
||||
|
||||
SFX N Y 1
|
||||
SFX N 0 n .
|
||||
|
||||
|
||||
SFX P Y 1
|
||||
SFX P 0 en .
|
||||
|
||||
|
||||
SFX p Y 26
|
||||
SFX p auf äufe auf
|
||||
SFX p auf äufen auf
|
||||
SFX p aus äuser [hH]aus
|
||||
SFX p aus äusern [hH]aus
|
||||
SFX p arkt ärkte [mM]arkt
|
||||
SFX p arkt ärkten [mM]arkt
|
||||
SFX p ang änge ang
|
||||
SFX p ang ängen ang
|
||||
SFX p uß üße uß
|
||||
SFX p uß üßen uß
|
||||
SFX p oß öße oß
|
||||
SFX p oß ößen oß
|
||||
SFX p aum äume aum
|
||||
SFX p aum äumen aum
|
||||
SFX p ag äge ag
|
||||
SFX p ag ägen ag
|
||||
SFX p ug üge ug
|
||||
SFX p ug ügen ug
|
||||
SFX p all älle all
|
||||
SFX p all ällen all
|
||||
SFX p ass ässe ass
|
||||
SFX p ass ässen ass
|
||||
SFX p uss üsse uss
|
||||
SFX p uss üssen uss
|
||||
SFX p oss össe oss
|
||||
SFX p oss össen oss
|
||||
# last ...oss rules are for swiss de_CH only - but do not affect de_DE
|
||||
|
||||
|
||||
SFX R Y 3
|
||||
SFX R 0 er [^e]
|
||||
SFX R 0 ern [^e]
|
||||
SFX R 0 r e
|
||||
|
||||
|
||||
SFX S Y 1
|
||||
SFX S 0 s .
|
||||
|
||||
|
||||
SFX q Y 2
|
||||
SFX q 0 se s
|
||||
SFX q 0 sen s
|
||||
|
||||
|
||||
SFX Q Y 1
|
||||
SFX Q 0 ses s
|
||||
#SFX Q 0 se s
|
||||
#SFX Q 0 sen s
|
||||
|
||||
|
||||
SFX T Y 1
|
||||
SFX T 0 es .
|
||||
|
||||
|
||||
SFX J Y 12
|
||||
SFX J n ung [bgkpßsz]eln
|
||||
SFX J n ungen [bgkpßsz]eln
|
||||
SFX J eln lung eln
|
||||
SFX J n ung ern
|
||||
SFX J en ung en
|
||||
SFX J eln lungen eln
|
||||
SFX J n ungen ern
|
||||
SFX J en ungen en
|
||||
SFX J 0 ung [^n]
|
||||
SFX J 0 ungen [^n]
|
||||
SFX J el lung el
|
||||
SFX J el lungen el
|
||||
|
||||
|
||||
SFX B N 12
|
||||
SFX B n bar e[lr]n
|
||||
SFX B n bare e[lr]n
|
||||
SFX B n baren e[lr]n
|
||||
SFX B n barer e[lr]n
|
||||
SFX B n bares e[lr]n
|
||||
SFX B n barem e[lr]n
|
||||
SFX B en bar en
|
||||
SFX B en bare en
|
||||
SFX B en baren en
|
||||
SFX B en barer en
|
||||
SFX B en bares en
|
||||
SFX B en barem en
|
||||
|
||||
|
||||
SFX D Y 6
|
||||
SFX D 0 d n
|
||||
SFX D 0 de n
|
||||
SFX D 0 den n
|
||||
SFX D 0 der n
|
||||
SFX D 0 des n
|
||||
SFX D 0 dem n
|
||||
|
||||
|
||||
|
||||
SFX W Y 5
|
||||
SFX W en 0 en
|
||||
SFX W n 0 [^e]n
|
||||
SFX W st 0 [^s]st
|
||||
SFX W t 0 sst
|
||||
SFX W t 0 [^s]t
|
||||
|
||||
|
||||
SFX I Y 16
|
||||
SFX I n 0 en
|
||||
SFX I eln le eln
|
||||
SFX I n e eln
|
||||
SFX I ern re ern
|
||||
SFX I n e ern
|
||||
SFX I n t e[lr]n
|
||||
SFX I n t [dt]en
|
||||
SFX I en t [^dimnt]en
|
||||
SFX I en t eien
|
||||
SFX I n t [^e]ien
|
||||
SFX I n t chnen
|
||||
SFX I en t [^c]h[mn]en
|
||||
SFX I n t [^aäehilmnoöuür][mn]en
|
||||
SFX I en t [aäeilmnoöuür][mn]en
|
||||
SFX I n e un
|
||||
SFX I n t un
|
||||
|
||||
|
||||
SFX X Y 26
|
||||
SFX X n t e[lr]n
|
||||
SFX X n t [dtw]en
|
||||
SFX X en t eien
|
||||
SFX X n t [^e]ien
|
||||
SFX X en t [^ditmnw]en
|
||||
SFX X n t chnen
|
||||
SFX X en t [^c]h[mn]en
|
||||
SFX X n t [^aäehilmnoöuür][mn]en
|
||||
SFX X en t [aäeilmnoöuür][mn]en
|
||||
SFX X n t un
|
||||
SFX X st 0 tst
|
||||
SFX X n st e[lr]n
|
||||
SFX X n st [dtw]en
|
||||
SFX X en st [^dimnßstwzx]en
|
||||
SFX X en st eien
|
||||
SFX X n st [^e]ien
|
||||
SFX X n st chnen
|
||||
SFX X en st [^c]h[mn]en
|
||||
SFX X n st [^aäehilmnoöuür][mn]en
|
||||
SFX X en st [aäeilmnoöuür][mn]en
|
||||
SFX X n st un
|
||||
SFX X n st [ßsxz]en
|
||||
SFX X n st ssen
|
||||
SFX X n st schen
|
||||
SFX X t st [^sz]t
|
||||
SFX X t est zt
|
||||
|
||||
|
||||
SFX Y Y 36
|
||||
SFX Y n te e[lr]n
|
||||
SFX Y n te [dtw]en
|
||||
SFX Y en te [^dimntw]en
|
||||
SFX Y en te eien
|
||||
SFX Y n te [^e]ien
|
||||
SFX Y n te chnen
|
||||
SFX Y en te [^c]h[mn]en
|
||||
SFX Y n te [^aäehilmnoöuür][mn]en
|
||||
SFX Y en te [aäeilmnoöuür][mn]en
|
||||
SFX Y n test e[lr]n
|
||||
SFX Y n test [dtw]en
|
||||
SFX Y en test [^dimntw]en
|
||||
SFX Y en test eien
|
||||
SFX Y n test [^e]ien
|
||||
SFX Y n test chnen
|
||||
SFX Y en test [^c]h[mn]en
|
||||
SFX Y n test [^aäehilmnoöuür][mn]en
|
||||
SFX Y en test [aäeilmnoöuür][mn]en
|
||||
SFX Y n tet e[lr]n
|
||||
SFX Y n tet [dtw]en
|
||||
SFX Y en tet [^dimntw]en
|
||||
SFX Y en tet eien
|
||||
SFX Y n tet [^e]ien
|
||||
SFX Y n tet chnen
|
||||
SFX Y en tet [^c]h[mn]en
|
||||
SFX Y n tet [^aäehilmnoöuür][mn]en
|
||||
SFX Y en tet [aäeilmnoöuür][mn]en
|
||||
SFX Y n ten e[lr]n
|
||||
SFX Y n ten [dtw]en
|
||||
SFX Y en ten [^dimntw]en
|
||||
SFX Y en ten eien
|
||||
SFX Y n ten [^e]ien
|
||||
SFX Y n ten chnen
|
||||
SFX Y en ten [^c]h[mn]en
|
||||
SFX Y n ten [^aäehilmnoöuür][mn]en
|
||||
SFX Y en ten [aäeilmnoöuür][mn]en
|
||||
|
||||
|
||||
SFX Z Y 15
|
||||
SFX Z 0 st [^hßsz]
|
||||
SFX Z 0 st [^c]h
|
||||
SFX Z 0 st [^s]ch
|
||||
SFX Z 0 est [dfkstz]
|
||||
SFX Z 0 est ch
|
||||
SFX Z 0 est [au]ß
|
||||
SFX Z 0 est ieß
|
||||
SFX Z 0 est [io]ss
|
||||
SFX Z 0 t [^dt]
|
||||
SFX Z 0 et [dt]
|
||||
SFX Z 0 n e
|
||||
SFX Z 0 en ie
|
||||
SFX Z 0 en [^e]
|
||||
SFX Z 0 est iess
|
||||
SFX Z 0 est [au]ss
|
||||
# last two ...ss rules only used for swiss de_CH - but de_DE is unaffected
|
||||
|
||||
|
||||
SFX O Y 21
|
||||
SFX O n tes e[lr]n
|
||||
SFX O n tes [dtw]en
|
||||
SFX O en tes [^dmntw]en
|
||||
SFX O n tes chnen
|
||||
SFX O en tes [^c]h[mn]en
|
||||
SFX O n tes [^aäehilmnoöuür][mn]en
|
||||
SFX O en tes [aäeilmnoöuür][mn]en
|
||||
SFX O n ter e[lr]n
|
||||
SFX O n ter [dtw]en
|
||||
SFX O en ter [^dmntw]en
|
||||
SFX O n ter chnen
|
||||
SFX O en ter [^c]h[mn]en
|
||||
SFX O n ter [^aäehilmnoöuür][mn]en
|
||||
SFX O en ter [aäeilmnoöuür][mn]en
|
||||
SFX O n tem e[lr]n
|
||||
SFX O n tem [dtw]en
|
||||
SFX O en tem [^dmntw]en
|
||||
SFX O n tem chnen
|
||||
SFX O en tem [^c]h[mn]en
|
||||
SFX O n tem [^aäehilmnoöuür][mn]en
|
||||
SFX O en tem [aäeilmnoöuür][mn]en
|
||||
|
||||
REP 28
|
||||
REP f ph
|
||||
REP ph f
|
||||
REP ß ss
|
||||
REP ss ß
|
||||
REP s ss
|
||||
REP ss s
|
||||
REP i ie
|
||||
REP ie i
|
||||
REP ee e
|
||||
REP o oh
|
||||
REP oh o
|
||||
REP a ah
|
||||
REP ah a
|
||||
REP e eh
|
||||
REP eh e
|
||||
REP ae ä
|
||||
REP oe ö
|
||||
REP ue ü
|
||||
REP Ae Ä
|
||||
REP Oe Ö
|
||||
REP Ue Ü
|
||||
REP d t
|
||||
REP t d
|
||||
REP th t
|
||||
REP t th
|
||||
REP r rh
|
||||
REP ch k
|
||||
REP k ch
|
||||
#REP eee ee-E
|
||||
|
||||
|
||||
# this one will allow "-Eltern" - Hunspell 1.1.5 bug, but CHECKSHARPS obsoletes LANG de_DE
|
||||
#LANG de_DE
|
||||
CHECKSHARPS
|
||||
|
||||
|
||||
COMPOUNDBEGIN x
|
||||
COMPOUNDMIDDLE y
|
||||
COMPOUNDEND z
|
||||
FORBIDDENWORD d
|
||||
|
||||
# Prefixes are allowed at the beginning of compounds,
|
||||
# suffixes are allowed at the end of compounds by default:
|
||||
# (prefix)?(root)+(affix)?
|
||||
# Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
COMPOUNDPERMITFLAG c
|
||||
|
||||
ONLYINCOMPOUND o
|
||||
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
NEEDAFFIX h
|
||||
|
||||
# forbid uppercase characters at compound word bounds
|
||||
# BUT I want to take care about it myself ;-)
|
||||
# CHECKCOMPOUNDCASE
|
||||
KEEPCASE w
|
||||
|
||||
# Affixes signed with CIRCUMFIX flag may be on a word when this word also has a prefix with CIRCUMFIX flag and vice versa.
|
||||
# for decapitalizing nouns with fogemorphemes
|
||||
CIRCUMFIX f
|
||||
|
||||
# this one would make a separate dict entry "Denkmalsschutz" invalidate the
|
||||
# compound of "Denkmal"+"schutz". We do not want this feature here...
|
||||
# CHECKCOMPOUNDREP
|
||||
|
||||
# make not all possible suggestions for typos of Flicken or some rare words
|
||||
NOSUGGEST n
|
||||
|
||||
WORDCHARS ß-.
|
||||
|
||||
# - setting this to 2 decreases performance by 1/10 but is needed for "öl" and "ei"
|
||||
# - setting this to 1 for handling Fuge-elements with dashes (Arbeits-) dash will
|
||||
# be a special word but - is handled as a affix now
|
||||
COMPOUNDMIN 2
|
||||
|
||||
# this ones are for Duden R36 (old orthography)
|
||||
#CHECKCOMPOUNDPATTERN 2 #oldspell
|
||||
#CHECKCOMPOUNDPATTERN ee e #oldspell
|
||||
#CHECKCOMPOUNDPATTERN oo o #oldspell
|
||||
# also need oo o
|
||||
|
||||
# this one needs to be flagable to be used for old orthography
|
||||
#CHECKCOMPOUNDTRIPLE
|
||||
|
||||
|
||||
PFX i Y 1
|
||||
PFX i 0 -/coyf .
|
||||
|
||||
SFX j Y 3
|
||||
SFX j 0 0/xoc .
|
||||
SFX j 0 -/zocf .
|
||||
SFX j 0 -/cz .
|
||||
|
||||
# Female forms for compound/Compound words:
|
||||
# attention: [^e][^n] does also filter out "...er" !
|
||||
SFX g Y 12
|
||||
SFX g 0 innen/xyoc [^n]
|
||||
SFX g en innen/xyoc en
|
||||
SFX g 0 Innen/xyoc [^n]
|
||||
SFX g en Innen/xyoc en
|
||||
SFX g 0 innen/xyocf [^n]
|
||||
SFX g en innen/xyocf en
|
||||
SFX g 0 Innen/xyocf [^n]
|
||||
SFX g en Innen/xyocf en
|
||||
SFX g 0 innen-/cz [^n]
|
||||
SFX g en innen-/cz en
|
||||
SFX g 0 Innen-/cz [^n]
|
||||
SFX g en Innen-/cz en
|
||||
|
||||
|
||||
PFX k Y 2
|
||||
PFX k 0 -/coxf .
|
||||
PFX k 0 0/coy .
|
||||
|
||||
SFX e Y 2
|
||||
SFX e 0 0/yoc .
|
||||
SFX e 0 -/zc .
|
||||
|
||||
# for Uppercased end-words to prepend - and lowercase: (Tier/EPSm) (EX: Bettbezüge und *-laken*)
|
||||
# AND
|
||||
# for lowercased end-words to prepend - and re-uppercase : (tier/EPSozm) (EX: Arbeits*-Tier*)
|
||||
#PFX m A -a/co A
|
||||
#PFX m a -/ a
|
||||
PFX m Y 58
|
||||
PFX m A -a A
|
||||
PFX m B -b B
|
||||
PFX m C -c C
|
||||
PFX m D -d D
|
||||
PFX m E -e E
|
||||
PFX m F -f F
|
||||
PFX m G -g G
|
||||
PFX m H -h H
|
||||
PFX m I -i I
|
||||
PFX m J -j J
|
||||
PFX m K -k K
|
||||
PFX m L -l L
|
||||
PFX m M -m M
|
||||
PFX m N -n N
|
||||
PFX m O -o O
|
||||
PFX m P -p P
|
||||
PFX m Q -q Q
|
||||
PFX m R -r R
|
||||
PFX m S -s S
|
||||
PFX m T -t T
|
||||
PFX m U -u U
|
||||
PFX m V -v V
|
||||
PFX m W -w W
|
||||
PFX m X -x X
|
||||
PFX m Y -y Y
|
||||
PFX m Z -z Z
|
||||
PFX m Ä -ä Ä
|
||||
PFX m Ö -ö Ö
|
||||
PFX m Ü -ü Ü
|
||||
PFX m a -A/co a
|
||||
PFX m b -B/co b
|
||||
PFX m c -C/co c
|
||||
PFX m d -D/co d
|
||||
PFX m e -E/co e
|
||||
PFX m f -F/co f
|
||||
PFX m g -G/co g
|
||||
PFX m h -H/co h
|
||||
PFX m i -I/co i
|
||||
PFX m j -J/co j
|
||||
PFX m k -K/co k
|
||||
PFX m l -L/co l
|
||||
PFX m m -M/co m
|
||||
PFX m n -N/co n
|
||||
PFX m o -O/co o
|
||||
PFX m p -P/co p
|
||||
PFX m q -Q/co q
|
||||
PFX m r -R/co r
|
||||
PFX m s -S/co s
|
||||
PFX m t -T/co t
|
||||
PFX m u -U/co u
|
||||
PFX m v -V/co v
|
||||
PFX m w -W/co w
|
||||
PFX m x -X/co x
|
||||
PFX m y -Y/co y
|
||||
PFX m z -Z/co z
|
||||
PFX m ä -Ä/co ä
|
||||
PFX m ö -Ö/co ö
|
||||
PFX m ü -Ü/co ü
|
||||
|
||||
|
||||
# Decapitalizing: (not used ATM... )
|
||||
# /co(f) : compound permit, in coumpount only, (decapitalizing with fogemorphemes)
|
||||
#PFX l Y 29
|
||||
#PFX l A a/co A
|
||||
#PFX l Ä ä/co Ä
|
||||
#PFX l B b/co B
|
||||
#PFX l C c/co C
|
||||
#PFX l D d/co D
|
||||
#PFX l E e/co E
|
||||
#PFX l F f/co F
|
||||
#PFX l G g/co G
|
||||
#PFX l H h/co H
|
||||
#PFX l I i/co I
|
||||
#PFX l J j/co J
|
||||
#PFX l K k/co K
|
||||
#PFX l L l/co L
|
||||
#PFX l M m/co M
|
||||
#PFX l N n/co N
|
||||
#PFX l O o/co O
|
||||
#PFX l Ö ö/co Ö
|
||||
#PFX l P p/co P
|
||||
#PFX l Q q/co Q
|
||||
#PFX l R r/co R
|
||||
#PFX l S s/co S
|
||||
#PFX l T t/co T
|
||||
#PFX l U u/co U
|
||||
#PFX l Ü ü/co Ü
|
||||
#PFX l V v/co V
|
||||
#PFX l W w/co W
|
||||
#PFX l X x/co X
|
||||
#PFX l Y y/co Y
|
||||
#PFX l Z z/co Z
|
||||
|
||||
# private hunspell flags:
|
||||
# --x : not for capmain (rare words)
|
||||
|
||||
# With "BREAK -" some wrong forms are accepted but that is needed for US-Wirtschaft etc.
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
BREAK 2
|
||||
BREAK -
|
||||
BREAK .
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
igerman98 - dictionaries for German language
|
||||
Copyright (C) 1999-2016 Björn Jacke <bjoern@j3e.de>.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 or 3 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
@@ -0,0 +1,729 @@
|
||||
# this is the affix file of the de_CH Hunspell dictionary
|
||||
# derived from the igerman98 dictionary
|
||||
#
|
||||
# Version: 20161207
|
||||
#
|
||||
# Copyright (C) 1998-2015 Bjoern Jacke <bjoern@j3e.de>
|
||||
#
|
||||
# License: GPLv2, GPLv3
|
||||
# There should be a copy of both of this licenses included
|
||||
# with every distribution of this dictionary. Modified
|
||||
# versions using the GPL may only include the GPL
|
||||
|
||||
SET UTF-8
|
||||
TRY esijanrtolcdugmphbyfvkwqxzäüößáéêàâñESIJANRTOLCDUGMPHBYFVKWQXZÄÜÖÉ-.
|
||||
|
||||
PFX U Y 1
|
||||
PFX U 0 un .
|
||||
|
||||
PFX V Y 1
|
||||
PFX V 0 ver .
|
||||
|
||||
SFX F Y 35
|
||||
SFX F 0 nen in
|
||||
SFX F e in e
|
||||
SFX F e innen e
|
||||
SFX F 0 in [^i]n
|
||||
SFX F 0 innen [^i]n
|
||||
SFX F 0 in [^enr]
|
||||
SFX F 0 innen [^enr]
|
||||
SFX F 0 in [^e]r
|
||||
SFX F 0 innen [^e]r
|
||||
SFX F 0 in [^r]er
|
||||
SFX F 0 innen [^r]er
|
||||
SFX F 0 in [^e]rer
|
||||
SFX F 0 innen [^e]rer
|
||||
SFX F 0 in ierer
|
||||
SFX F 0 innen ierer
|
||||
SFX F er in [^i]erer
|
||||
SFX F er innen [^i]erer
|
||||
SFX F in In in
|
||||
SFX F in Innen in
|
||||
SFX F e In e
|
||||
SFX F e Innen e
|
||||
SFX F 0 In [^i]n
|
||||
SFX F 0 Innen [^i]n
|
||||
SFX F 0 In [^en]
|
||||
SFX F 0 Innen [^en]
|
||||
SFX F 0 In [^e]r
|
||||
SFX F 0 Innen [^e]r
|
||||
SFX F 0 In [^r]er
|
||||
SFX F 0 Innen [^r]er
|
||||
SFX F 0 In [^e]rer
|
||||
SFX F 0 Innen [^e]rer
|
||||
SFX F 0 In ierer
|
||||
SFX F 0 Innen ierer
|
||||
SFX F er In [^i]erer
|
||||
SFX F er Innen [^i]erer
|
||||
#SFX F en innen en
|
||||
#SFX F en Innen en
|
||||
|
||||
|
||||
SFX L N 12
|
||||
SFX L 0 tlich n
|
||||
SFX L 0 tliche n
|
||||
SFX L 0 tlicher n
|
||||
SFX L 0 tliches n
|
||||
SFX L 0 tlichem n
|
||||
SFX L 0 tlichen n
|
||||
SFX L 0 lich [^n]
|
||||
SFX L 0 liche [^n]
|
||||
SFX L 0 licher [^n]
|
||||
SFX L 0 liches [^n]
|
||||
SFX L 0 lichem [^n]
|
||||
SFX L 0 lichen [^n]
|
||||
|
||||
|
||||
#SFX H N 2
|
||||
#SFX H 0 heit .
|
||||
#SFX H 0 heiten .
|
||||
|
||||
|
||||
#SFX K N 2
|
||||
#SFX K 0 keit .
|
||||
#SFX K 0 keiten .
|
||||
|
||||
|
||||
SFX M N 10
|
||||
SFX M 0 chen [^se]
|
||||
SFX M 0 chens [^se]
|
||||
SFX M ass ässchen ass
|
||||
SFX M ass ässchens ass
|
||||
SFX M oss össchen oss
|
||||
SFX M oss össchens oss
|
||||
SFX M uss üsschen uss
|
||||
SFX M uss üsschens uss
|
||||
SFX M e chen e
|
||||
SFX M e chens e
|
||||
|
||||
|
||||
SFX A Y 46
|
||||
SFX A 0 r e
|
||||
SFX A 0 n e
|
||||
SFX A 0 m e
|
||||
SFX A 0 s e
|
||||
SFX A 0 e [^elr]
|
||||
SFX A 0 er [^elr]
|
||||
SFX A 0 en [^elr]
|
||||
SFX A 0 em [^elr]
|
||||
SFX A 0 es [^elr]
|
||||
SFX A 0 e [^e][rl]
|
||||
SFX A 0 er [^e][rl]
|
||||
SFX A 0 en [^e][rl]
|
||||
SFX A 0 em [^e][rl]
|
||||
SFX A 0 es [^e][rl]
|
||||
SFX A 0 e [^u]er
|
||||
SFX A 0 er [^u]er
|
||||
SFX A 0 en [^u]er
|
||||
SFX A 0 em [^u]er
|
||||
SFX A 0 es [^u]er
|
||||
SFX A er re uer
|
||||
SFX A er rer uer
|
||||
SFX A er ren uer
|
||||
SFX A er rem uer
|
||||
SFX A er res uer
|
||||
SFX A 0 e [eil]el
|
||||
SFX A 0 er [eil]el
|
||||
SFX A 0 en [eil]el
|
||||
SFX A 0 em [eil]el
|
||||
SFX A 0 es [eil]el
|
||||
SFX A el le [^eil]el
|
||||
SFX A el ler [^eil]el
|
||||
SFX A el len [^eil]el
|
||||
SFX A el lem [^eil]el
|
||||
SFX A el les [^eil]el
|
||||
SFX A lig elig [^aeiouhlräüö]lig
|
||||
SFX A lig elige [^aeiouhlräüö]lig
|
||||
SFX A lig eliger [^aeiouhlräüö]lig
|
||||
SFX A lig eligen [^aeiouhlräüö]lig
|
||||
SFX A lig eligem [^aeiouhlräüö]lig
|
||||
SFX A lig eliges [^aeiouhlräüö]lig
|
||||
SFX A erig rig [^hi]erig
|
||||
SFX A erig rige [^hi]erig
|
||||
SFX A erig riger [^hi]erig
|
||||
SFX A erig rigen [^hi]erig
|
||||
SFX A erig rigem [^hi]erig
|
||||
SFX A erig riges [^hi]erig
|
||||
|
||||
|
||||
SFX C Y 100
|
||||
SFX C 0 ere [^elr]
|
||||
SFX C 0 erer [^elr]
|
||||
SFX C 0 eren [^elr]
|
||||
SFX C 0 erem [^elr]
|
||||
SFX C 0 eres [^elr]
|
||||
SFX C 0 re e
|
||||
SFX C 0 rer e
|
||||
SFX C 0 ren e
|
||||
SFX C 0 rem e
|
||||
SFX C 0 res e
|
||||
SFX C 0 ere [^e][lr]
|
||||
SFX C 0 erer [^e][lr]
|
||||
SFX C 0 eren [^e][lr]
|
||||
SFX C 0 erem [^e][lr]
|
||||
SFX C 0 eres [^e][lr]
|
||||
SFX C el lere el
|
||||
SFX C el lerer el
|
||||
SFX C el leren el
|
||||
SFX C el lerem el
|
||||
SFX C el leres el
|
||||
SFX C er rere uer
|
||||
SFX C er rerer uer
|
||||
SFX C er reren uer
|
||||
SFX C er rerem uer
|
||||
SFX C er reres uer
|
||||
SFX C 0 ere [^u]er
|
||||
SFX C 0 erer [^u]er
|
||||
SFX C 0 eren [^u]er
|
||||
SFX C 0 erem [^u]er
|
||||
SFX C 0 eres [^u]er
|
||||
SFX C lig eligere [^aeiouhlräüö]lig
|
||||
SFX C lig eligerer [^aeiouhlräüö]lig
|
||||
SFX C lig eligeren [^aeiouhlräüö]lig
|
||||
SFX C lig eligerem [^aeiouhlräüö]lig
|
||||
SFX C lig eligeres [^aeiouhlräüö]lig
|
||||
SFX C erig rigere [^hi]erig
|
||||
SFX C erig rigerer [^hi]erig
|
||||
SFX C erig rigeren [^hi]erig
|
||||
SFX C erig rigerem [^hi]erig
|
||||
SFX C erig rigeres [^hi]erig
|
||||
SFX C 0 est [kßsuxz]
|
||||
SFX C 0 este [kßsuxz]
|
||||
SFX C 0 ester [kßsuxz]
|
||||
SFX C 0 esten [kßsuxz]
|
||||
SFX C 0 estem [kßsuxz]
|
||||
SFX C 0 estes [kßsuxz]
|
||||
SFX C 0 st et
|
||||
SFX C 0 ste et
|
||||
SFX C 0 ster et
|
||||
SFX C 0 sten et
|
||||
SFX C 0 stem et
|
||||
SFX C 0 stes et
|
||||
SFX C 0 st igt
|
||||
SFX C 0 ste igt
|
||||
SFX C 0 ster igt
|
||||
SFX C 0 sten igt
|
||||
SFX C 0 stem igt
|
||||
SFX C 0 stes igt
|
||||
SFX C 0 est [^i]gt
|
||||
SFX C 0 este [^i]gt
|
||||
SFX C 0 ester [^i]gt
|
||||
SFX C 0 esten [^i]gt
|
||||
SFX C 0 estem [^i]gt
|
||||
SFX C 0 estes [^i]gt
|
||||
SFX C 0 est [^eg]t
|
||||
SFX C 0 este [^eg]t
|
||||
SFX C 0 ester [^eg]t
|
||||
SFX C 0 esten [^eg]t
|
||||
SFX C 0 estem [^eg]t
|
||||
SFX C 0 estes [^eg]t
|
||||
SFX C 0 st [^kßstxz]
|
||||
SFX C 0 ste [^kßstxz]
|
||||
SFX C 0 ster [^kßstxz]
|
||||
SFX C 0 sten [^kßstxz]
|
||||
SFX C 0 stem [^kßstxz]
|
||||
SFX C 0 stes [^kßstxz]
|
||||
SFX C 0 st nd
|
||||
SFX C 0 ste nd
|
||||
SFX C 0 ster nd
|
||||
SFX C 0 sten nd
|
||||
SFX C 0 stem nd
|
||||
SFX C 0 stes nd
|
||||
SFX C 0 est [^n]d
|
||||
SFX C 0 este [^n]d
|
||||
SFX C 0 ester [^n]d
|
||||
SFX C 0 esten [^n]d
|
||||
SFX C 0 estem [^n]d
|
||||
SFX C 0 estes [^n]d
|
||||
SFX C lig eligst [^aeiouhlräüö]lig
|
||||
SFX C lig eligste [^aeiouhlräüö]lig
|
||||
SFX C lig eligster [^aeiouhlräüö]lig
|
||||
SFX C lig eligsten [^aeiouhlräüö]lig
|
||||
SFX C lig eligstem [^aeiouhlräüö]lig
|
||||
SFX C lig eligstes [^aeiouhlräüö]lig
|
||||
SFX C erig rigst [^hi]erig
|
||||
SFX C erig rigste [^hi]erig
|
||||
SFX C erig rigster [^hi]erig
|
||||
SFX C erig rigsten [^hi]erig
|
||||
SFX C erig rigstem [^hi]erig
|
||||
SFX C erig rigstes [^hi]erig
|
||||
|
||||
|
||||
SFX E Y 1
|
||||
SFX E 0 e .
|
||||
|
||||
|
||||
SFX f Y 4
|
||||
SFX f ph f ph
|
||||
SFX f ph fen ph
|
||||
SFX f phie fie phie
|
||||
SFX f phie fien phie
|
||||
|
||||
|
||||
SFX N Y 1
|
||||
SFX N 0 n .
|
||||
|
||||
|
||||
SFX P Y 1
|
||||
SFX P 0 en .
|
||||
|
||||
|
||||
SFX p Y 26
|
||||
SFX p auf äufe auf
|
||||
SFX p auf äufen auf
|
||||
SFX p aus äuser [hH]aus
|
||||
SFX p aus äusern [hH]aus
|
||||
SFX p arkt ärkte [mM]arkt
|
||||
SFX p arkt ärkten [mM]arkt
|
||||
SFX p ang änge ang
|
||||
SFX p ang ängen ang
|
||||
SFX p uß üße uß
|
||||
SFX p uß üßen uß
|
||||
SFX p oß öße oß
|
||||
SFX p oß ößen oß
|
||||
SFX p aum äume aum
|
||||
SFX p aum äumen aum
|
||||
SFX p ag äge ag
|
||||
SFX p ag ägen ag
|
||||
SFX p ug üge ug
|
||||
SFX p ug ügen ug
|
||||
SFX p all älle all
|
||||
SFX p all ällen all
|
||||
SFX p ass ässe ass
|
||||
SFX p ass ässen ass
|
||||
SFX p uss üsse uss
|
||||
SFX p uss üssen uss
|
||||
SFX p oss össe oss
|
||||
SFX p oss össen oss
|
||||
# last ...oss rules are for swiss de_CH only - but do not affect de_DE
|
||||
|
||||
|
||||
SFX R Y 3
|
||||
SFX R 0 er [^e]
|
||||
SFX R 0 ern [^e]
|
||||
SFX R 0 r e
|
||||
|
||||
|
||||
SFX S Y 1
|
||||
SFX S 0 s .
|
||||
|
||||
|
||||
SFX q Y 2
|
||||
SFX q 0 se s
|
||||
SFX q 0 sen s
|
||||
|
||||
|
||||
SFX Q Y 1
|
||||
SFX Q 0 ses s
|
||||
#SFX Q 0 se s
|
||||
#SFX Q 0 sen s
|
||||
|
||||
|
||||
SFX T Y 1
|
||||
SFX T 0 es .
|
||||
|
||||
|
||||
SFX J Y 12
|
||||
SFX J n ung [bgkpßsz]eln
|
||||
SFX J n ungen [bgkpßsz]eln
|
||||
SFX J eln lung eln
|
||||
SFX J n ung ern
|
||||
SFX J en ung en
|
||||
SFX J eln lungen eln
|
||||
SFX J n ungen ern
|
||||
SFX J en ungen en
|
||||
SFX J 0 ung [^n]
|
||||
SFX J 0 ungen [^n]
|
||||
SFX J el lung el
|
||||
SFX J el lungen el
|
||||
|
||||
|
||||
SFX B N 12
|
||||
SFX B n bar e[lr]n
|
||||
SFX B n bare e[lr]n
|
||||
SFX B n baren e[lr]n
|
||||
SFX B n barer e[lr]n
|
||||
SFX B n bares e[lr]n
|
||||
SFX B n barem e[lr]n
|
||||
SFX B en bar en
|
||||
SFX B en bare en
|
||||
SFX B en baren en
|
||||
SFX B en barer en
|
||||
SFX B en bares en
|
||||
SFX B en barem en
|
||||
|
||||
|
||||
SFX D Y 6
|
||||
SFX D 0 d n
|
||||
SFX D 0 de n
|
||||
SFX D 0 den n
|
||||
SFX D 0 der n
|
||||
SFX D 0 des n
|
||||
SFX D 0 dem n
|
||||
|
||||
|
||||
|
||||
SFX W Y 5
|
||||
SFX W en 0 en
|
||||
SFX W n 0 [^e]n
|
||||
SFX W st 0 [^s]st
|
||||
SFX W t 0 sst
|
||||
SFX W t 0 [^s]t
|
||||
|
||||
|
||||
SFX I Y 16
|
||||
SFX I n 0 en
|
||||
SFX I eln le eln
|
||||
SFX I n e eln
|
||||
SFX I ern re ern
|
||||
SFX I n e ern
|
||||
SFX I n t e[lr]n
|
||||
SFX I n t [dt]en
|
||||
SFX I en t [^dimnt]en
|
||||
SFX I en t eien
|
||||
SFX I n t [^e]ien
|
||||
SFX I n t chnen
|
||||
SFX I en t [^c]h[mn]en
|
||||
SFX I n t [^aäehilmnoöuür][mn]en
|
||||
SFX I en t [aäeilmnoöuür][mn]en
|
||||
SFX I n e un
|
||||
SFX I n t un
|
||||
|
||||
|
||||
SFX X Y 26
|
||||
SFX X n t e[lr]n
|
||||
SFX X n t [dtw]en
|
||||
SFX X en t eien
|
||||
SFX X n t [^e]ien
|
||||
SFX X en t [^ditmnw]en
|
||||
SFX X n t chnen
|
||||
SFX X en t [^c]h[mn]en
|
||||
SFX X n t [^aäehilmnoöuür][mn]en
|
||||
SFX X en t [aäeilmnoöuür][mn]en
|
||||
SFX X n t un
|
||||
SFX X st 0 tst
|
||||
SFX X n st e[lr]n
|
||||
SFX X n st [dtw]en
|
||||
SFX X en st [^dimnßstwzx]en
|
||||
SFX X en st eien
|
||||
SFX X n st [^e]ien
|
||||
SFX X n st chnen
|
||||
SFX X en st [^c]h[mn]en
|
||||
SFX X n st [^aäehilmnoöuür][mn]en
|
||||
SFX X en st [aäeilmnoöuür][mn]en
|
||||
SFX X n st un
|
||||
SFX X n st [ßsxz]en
|
||||
SFX X n st ssen
|
||||
SFX X n st schen
|
||||
SFX X t st [^sz]t
|
||||
SFX X t est zt
|
||||
|
||||
|
||||
SFX Y Y 36
|
||||
SFX Y n te e[lr]n
|
||||
SFX Y n te [dtw]en
|
||||
SFX Y en te [^dimntw]en
|
||||
SFX Y en te eien
|
||||
SFX Y n te [^e]ien
|
||||
SFX Y n te chnen
|
||||
SFX Y en te [^c]h[mn]en
|
||||
SFX Y n te [^aäehilmnoöuür][mn]en
|
||||
SFX Y en te [aäeilmnoöuür][mn]en
|
||||
SFX Y n test e[lr]n
|
||||
SFX Y n test [dtw]en
|
||||
SFX Y en test [^dimntw]en
|
||||
SFX Y en test eien
|
||||
SFX Y n test [^e]ien
|
||||
SFX Y n test chnen
|
||||
SFX Y en test [^c]h[mn]en
|
||||
SFX Y n test [^aäehilmnoöuür][mn]en
|
||||
SFX Y en test [aäeilmnoöuür][mn]en
|
||||
SFX Y n tet e[lr]n
|
||||
SFX Y n tet [dtw]en
|
||||
SFX Y en tet [^dimntw]en
|
||||
SFX Y en tet eien
|
||||
SFX Y n tet [^e]ien
|
||||
SFX Y n tet chnen
|
||||
SFX Y en tet [^c]h[mn]en
|
||||
SFX Y n tet [^aäehilmnoöuür][mn]en
|
||||
SFX Y en tet [aäeilmnoöuür][mn]en
|
||||
SFX Y n ten e[lr]n
|
||||
SFX Y n ten [dtw]en
|
||||
SFX Y en ten [^dimntw]en
|
||||
SFX Y en ten eien
|
||||
SFX Y n ten [^e]ien
|
||||
SFX Y n ten chnen
|
||||
SFX Y en ten [^c]h[mn]en
|
||||
SFX Y n ten [^aäehilmnoöuür][mn]en
|
||||
SFX Y en ten [aäeilmnoöuür][mn]en
|
||||
|
||||
|
||||
SFX Z Y 15
|
||||
SFX Z 0 st [^hßsz]
|
||||
SFX Z 0 st [^c]h
|
||||
SFX Z 0 st [^s]ch
|
||||
SFX Z 0 est [dfkstz]
|
||||
SFX Z 0 est ch
|
||||
SFX Z 0 est [au]ß
|
||||
SFX Z 0 est ieß
|
||||
SFX Z 0 est [io]ss
|
||||
SFX Z 0 t [^dt]
|
||||
SFX Z 0 et [dt]
|
||||
SFX Z 0 n e
|
||||
SFX Z 0 en ie
|
||||
SFX Z 0 en [^e]
|
||||
SFX Z 0 est iess
|
||||
SFX Z 0 est [au]ss
|
||||
# last two ...ss rules only used for swiss de_CH - but de_DE is unaffected
|
||||
|
||||
|
||||
SFX O Y 21
|
||||
SFX O n tes e[lr]n
|
||||
SFX O n tes [dtw]en
|
||||
SFX O en tes [^dmntw]en
|
||||
SFX O n tes chnen
|
||||
SFX O en tes [^c]h[mn]en
|
||||
SFX O n tes [^aäehilmnoöuür][mn]en
|
||||
SFX O en tes [aäeilmnoöuür][mn]en
|
||||
SFX O n ter e[lr]n
|
||||
SFX O n ter [dtw]en
|
||||
SFX O en ter [^dmntw]en
|
||||
SFX O n ter chnen
|
||||
SFX O en ter [^c]h[mn]en
|
||||
SFX O n ter [^aäehilmnoöuür][mn]en
|
||||
SFX O en ter [aäeilmnoöuür][mn]en
|
||||
SFX O n tem e[lr]n
|
||||
SFX O n tem [dtw]en
|
||||
SFX O en tem [^dmntw]en
|
||||
SFX O n tem chnen
|
||||
SFX O en tem [^c]h[mn]en
|
||||
SFX O n tem [^aäehilmnoöuür][mn]en
|
||||
SFX O en tem [aäeilmnoöuür][mn]en
|
||||
|
||||
REP 28
|
||||
REP f ph
|
||||
REP ph f
|
||||
REP ß ss
|
||||
REP ss ß
|
||||
REP s ss
|
||||
REP ss s
|
||||
REP i ie
|
||||
REP ie i
|
||||
REP ee e
|
||||
REP o oh
|
||||
REP oh o
|
||||
REP a ah
|
||||
REP ah a
|
||||
REP e eh
|
||||
REP eh e
|
||||
REP ae ä
|
||||
REP oe ö
|
||||
REP ue ü
|
||||
REP Ae Ä
|
||||
REP Oe Ö
|
||||
REP Ue Ü
|
||||
REP d t
|
||||
REP t d
|
||||
REP th t
|
||||
REP t th
|
||||
REP r rh
|
||||
REP ch k
|
||||
REP k ch
|
||||
#REP eee ee-E
|
||||
|
||||
|
||||
# this one will allow "-Eltern" - Hunspell 1.1.5 bug, but CHECKSHARPS obsoletes LANG de_DE
|
||||
#LANG de_DE
|
||||
CHECKSHARPS
|
||||
|
||||
|
||||
COMPOUNDBEGIN x
|
||||
COMPOUNDMIDDLE y
|
||||
COMPOUNDEND z
|
||||
FORBIDDENWORD d
|
||||
|
||||
# Prefixes are allowed at the beginning of compounds,
|
||||
# suffixes are allowed at the end of compounds by default:
|
||||
# (prefix)?(root)+(affix)?
|
||||
# Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
COMPOUNDPERMITFLAG c
|
||||
|
||||
ONLYINCOMPOUND o
|
||||
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
NEEDAFFIX h
|
||||
|
||||
# forbid uppercase characters at compound word bounds
|
||||
# BUT I want to take care about it myself ;-)
|
||||
# CHECKCOMPOUNDCASE
|
||||
KEEPCASE w
|
||||
|
||||
# Affixes signed with CIRCUMFIX flag may be on a word when this word also has a prefix with CIRCUMFIX flag and vice versa.
|
||||
# for decapitalizing nouns with fogemorphemes
|
||||
CIRCUMFIX f
|
||||
|
||||
# this one would make a separate dict entry "Denkmalsschutz" invalidate the
|
||||
# compound of "Denkmal"+"schutz". We do not want this feature here...
|
||||
# CHECKCOMPOUNDREP
|
||||
|
||||
# make not all possible suggestions for typos of Flicken or some rare words
|
||||
NOSUGGEST n
|
||||
|
||||
WORDCHARS ß-.
|
||||
|
||||
# - setting this to 2 decreases performance by 1/10 but is needed for "öl" and "ei"
|
||||
# - setting this to 1 for handling Fuge-elements with dashes (Arbeits-) dash will
|
||||
# be a special word but - is handled as a affix now
|
||||
COMPOUNDMIN 2
|
||||
|
||||
# this ones are for Duden R36 (old orthography)
|
||||
#CHECKCOMPOUNDPATTERN 2 #oldspell
|
||||
#CHECKCOMPOUNDPATTERN ee e #oldspell
|
||||
#CHECKCOMPOUNDPATTERN oo o #oldspell
|
||||
# also need oo o
|
||||
|
||||
# this one needs to be flagable to be used for old orthography
|
||||
#CHECKCOMPOUNDTRIPLE
|
||||
|
||||
|
||||
PFX i Y 1
|
||||
PFX i 0 -/coyf .
|
||||
|
||||
SFX j Y 3
|
||||
SFX j 0 0/xoc .
|
||||
SFX j 0 -/zocf .
|
||||
SFX j 0 -/cz .
|
||||
|
||||
# Female forms for compound/Compound words:
|
||||
# attention: [^e][^n] does also filter out "...er" !
|
||||
SFX g Y 12
|
||||
SFX g 0 innen/xyoc [^n]
|
||||
SFX g en innen/xyoc en
|
||||
SFX g 0 Innen/xyoc [^n]
|
||||
SFX g en Innen/xyoc en
|
||||
SFX g 0 innen/xyocf [^n]
|
||||
SFX g en innen/xyocf en
|
||||
SFX g 0 Innen/xyocf [^n]
|
||||
SFX g en Innen/xyocf en
|
||||
SFX g 0 innen-/cz [^n]
|
||||
SFX g en innen-/cz en
|
||||
SFX g 0 Innen-/cz [^n]
|
||||
SFX g en Innen-/cz en
|
||||
|
||||
|
||||
PFX k Y 2
|
||||
PFX k 0 -/coxf .
|
||||
PFX k 0 0/coy .
|
||||
|
||||
SFX e Y 2
|
||||
SFX e 0 0/yoc .
|
||||
SFX e 0 -/zc .
|
||||
|
||||
# for Uppercased end-words to prepend - and lowercase: (Tier/EPSm) (EX: Bettbezüge und *-laken*)
|
||||
# AND
|
||||
# for lowercased end-words to prepend - and re-uppercase : (tier/EPSozm) (EX: Arbeits*-Tier*)
|
||||
#PFX m A -a/co A
|
||||
#PFX m a -/ a
|
||||
PFX m Y 58
|
||||
PFX m A -a A
|
||||
PFX m B -b B
|
||||
PFX m C -c C
|
||||
PFX m D -d D
|
||||
PFX m E -e E
|
||||
PFX m F -f F
|
||||
PFX m G -g G
|
||||
PFX m H -h H
|
||||
PFX m I -i I
|
||||
PFX m J -j J
|
||||
PFX m K -k K
|
||||
PFX m L -l L
|
||||
PFX m M -m M
|
||||
PFX m N -n N
|
||||
PFX m O -o O
|
||||
PFX m P -p P
|
||||
PFX m Q -q Q
|
||||
PFX m R -r R
|
||||
PFX m S -s S
|
||||
PFX m T -t T
|
||||
PFX m U -u U
|
||||
PFX m V -v V
|
||||
PFX m W -w W
|
||||
PFX m X -x X
|
||||
PFX m Y -y Y
|
||||
PFX m Z -z Z
|
||||
PFX m Ä -ä Ä
|
||||
PFX m Ö -ö Ö
|
||||
PFX m Ü -ü Ü
|
||||
PFX m a -A/co a
|
||||
PFX m b -B/co b
|
||||
PFX m c -C/co c
|
||||
PFX m d -D/co d
|
||||
PFX m e -E/co e
|
||||
PFX m f -F/co f
|
||||
PFX m g -G/co g
|
||||
PFX m h -H/co h
|
||||
PFX m i -I/co i
|
||||
PFX m j -J/co j
|
||||
PFX m k -K/co k
|
||||
PFX m l -L/co l
|
||||
PFX m m -M/co m
|
||||
PFX m n -N/co n
|
||||
PFX m o -O/co o
|
||||
PFX m p -P/co p
|
||||
PFX m q -Q/co q
|
||||
PFX m r -R/co r
|
||||
PFX m s -S/co s
|
||||
PFX m t -T/co t
|
||||
PFX m u -U/co u
|
||||
PFX m v -V/co v
|
||||
PFX m w -W/co w
|
||||
PFX m x -X/co x
|
||||
PFX m y -Y/co y
|
||||
PFX m z -Z/co z
|
||||
PFX m ä -Ä/co ä
|
||||
PFX m ö -Ö/co ö
|
||||
PFX m ü -Ü/co ü
|
||||
|
||||
|
||||
# Decapitalizing: (not used ATM... )
|
||||
# /co(f) : compound permit, in coumpount only, (decapitalizing with fogemorphemes)
|
||||
#PFX l Y 29
|
||||
#PFX l A a/co A
|
||||
#PFX l Ä ä/co Ä
|
||||
#PFX l B b/co B
|
||||
#PFX l C c/co C
|
||||
#PFX l D d/co D
|
||||
#PFX l E e/co E
|
||||
#PFX l F f/co F
|
||||
#PFX l G g/co G
|
||||
#PFX l H h/co H
|
||||
#PFX l I i/co I
|
||||
#PFX l J j/co J
|
||||
#PFX l K k/co K
|
||||
#PFX l L l/co L
|
||||
#PFX l M m/co M
|
||||
#PFX l N n/co N
|
||||
#PFX l O o/co O
|
||||
#PFX l Ö ö/co Ö
|
||||
#PFX l P p/co P
|
||||
#PFX l Q q/co Q
|
||||
#PFX l R r/co R
|
||||
#PFX l S s/co S
|
||||
#PFX l T t/co T
|
||||
#PFX l U u/co U
|
||||
#PFX l Ü ü/co Ü
|
||||
#PFX l V v/co V
|
||||
#PFX l W w/co W
|
||||
#PFX l X x/co X
|
||||
#PFX l Y y/co Y
|
||||
#PFX l Z z/co Z
|
||||
|
||||
# private hunspell flags:
|
||||
# --x : not for capmain (rare words)
|
||||
|
||||
# With "BREAK -" some wrong forms are accepted but that is needed for US-Wirtschaft etc.
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
BREAK 2
|
||||
BREAK -
|
||||
BREAK .
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
igerman98 - dictionaries for German language
|
||||
Copyright (C) 1999-2016 Björn Jacke <bjoern@j3e.de>.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 or 3 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
@@ -0,0 +1,729 @@
|
||||
# this is the affix file of the de_DE Hunspell dictionary
|
||||
# derived from the igerman98 dictionary
|
||||
#
|
||||
# Version: 20161207
|
||||
#
|
||||
# Copyright (C) 1998-2015 Bjoern Jacke <bjoern@j3e.de>
|
||||
#
|
||||
# License: GPLv2, GPLv3
|
||||
# There should be a copy of both of this licenses included
|
||||
# with every distribution of this dictionary. Modified
|
||||
# versions using the GPL may only include the GPL
|
||||
|
||||
SET UTF-8
|
||||
TRY esijanrtolcdugmphbyfvkwqxzäüößáéêàâñESIJANRTOLCDUGMPHBYFVKWQXZÄÜÖÉ-.
|
||||
|
||||
PFX U Y 1
|
||||
PFX U 0 un .
|
||||
|
||||
PFX V Y 1
|
||||
PFX V 0 ver .
|
||||
|
||||
SFX F Y 35
|
||||
SFX F 0 nen in
|
||||
SFX F e in e
|
||||
SFX F e innen e
|
||||
SFX F 0 in [^i]n
|
||||
SFX F 0 innen [^i]n
|
||||
SFX F 0 in [^enr]
|
||||
SFX F 0 innen [^enr]
|
||||
SFX F 0 in [^e]r
|
||||
SFX F 0 innen [^e]r
|
||||
SFX F 0 in [^r]er
|
||||
SFX F 0 innen [^r]er
|
||||
SFX F 0 in [^e]rer
|
||||
SFX F 0 innen [^e]rer
|
||||
SFX F 0 in ierer
|
||||
SFX F 0 innen ierer
|
||||
SFX F er in [^i]erer
|
||||
SFX F er innen [^i]erer
|
||||
SFX F in In in
|
||||
SFX F in Innen in
|
||||
SFX F e In e
|
||||
SFX F e Innen e
|
||||
SFX F 0 In [^i]n
|
||||
SFX F 0 Innen [^i]n
|
||||
SFX F 0 In [^en]
|
||||
SFX F 0 Innen [^en]
|
||||
SFX F 0 In [^e]r
|
||||
SFX F 0 Innen [^e]r
|
||||
SFX F 0 In [^r]er
|
||||
SFX F 0 Innen [^r]er
|
||||
SFX F 0 In [^e]rer
|
||||
SFX F 0 Innen [^e]rer
|
||||
SFX F 0 In ierer
|
||||
SFX F 0 Innen ierer
|
||||
SFX F er In [^i]erer
|
||||
SFX F er Innen [^i]erer
|
||||
#SFX F en innen en
|
||||
#SFX F en Innen en
|
||||
|
||||
|
||||
SFX L N 12
|
||||
SFX L 0 tlich n
|
||||
SFX L 0 tliche n
|
||||
SFX L 0 tlicher n
|
||||
SFX L 0 tliches n
|
||||
SFX L 0 tlichem n
|
||||
SFX L 0 tlichen n
|
||||
SFX L 0 lich [^n]
|
||||
SFX L 0 liche [^n]
|
||||
SFX L 0 licher [^n]
|
||||
SFX L 0 liches [^n]
|
||||
SFX L 0 lichem [^n]
|
||||
SFX L 0 lichen [^n]
|
||||
|
||||
|
||||
#SFX H N 2
|
||||
#SFX H 0 heit .
|
||||
#SFX H 0 heiten .
|
||||
|
||||
|
||||
#SFX K N 2
|
||||
#SFX K 0 keit .
|
||||
#SFX K 0 keiten .
|
||||
|
||||
|
||||
SFX M N 10
|
||||
SFX M 0 chen [^se]
|
||||
SFX M 0 chens [^se]
|
||||
SFX M ass ässchen ass
|
||||
SFX M ass ässchens ass
|
||||
SFX M oss össchen oss
|
||||
SFX M oss össchens oss
|
||||
SFX M uss üsschen uss
|
||||
SFX M uss üsschens uss
|
||||
SFX M e chen e
|
||||
SFX M e chens e
|
||||
|
||||
|
||||
SFX A Y 46
|
||||
SFX A 0 r e
|
||||
SFX A 0 n e
|
||||
SFX A 0 m e
|
||||
SFX A 0 s e
|
||||
SFX A 0 e [^elr]
|
||||
SFX A 0 er [^elr]
|
||||
SFX A 0 en [^elr]
|
||||
SFX A 0 em [^elr]
|
||||
SFX A 0 es [^elr]
|
||||
SFX A 0 e [^e][rl]
|
||||
SFX A 0 er [^e][rl]
|
||||
SFX A 0 en [^e][rl]
|
||||
SFX A 0 em [^e][rl]
|
||||
SFX A 0 es [^e][rl]
|
||||
SFX A 0 e [^u]er
|
||||
SFX A 0 er [^u]er
|
||||
SFX A 0 en [^u]er
|
||||
SFX A 0 em [^u]er
|
||||
SFX A 0 es [^u]er
|
||||
SFX A er re uer
|
||||
SFX A er rer uer
|
||||
SFX A er ren uer
|
||||
SFX A er rem uer
|
||||
SFX A er res uer
|
||||
SFX A 0 e [eil]el
|
||||
SFX A 0 er [eil]el
|
||||
SFX A 0 en [eil]el
|
||||
SFX A 0 em [eil]el
|
||||
SFX A 0 es [eil]el
|
||||
SFX A el le [^eil]el
|
||||
SFX A el ler [^eil]el
|
||||
SFX A el len [^eil]el
|
||||
SFX A el lem [^eil]el
|
||||
SFX A el les [^eil]el
|
||||
SFX A lig elig [^aeiouhlräüö]lig
|
||||
SFX A lig elige [^aeiouhlräüö]lig
|
||||
SFX A lig eliger [^aeiouhlräüö]lig
|
||||
SFX A lig eligen [^aeiouhlräüö]lig
|
||||
SFX A lig eligem [^aeiouhlräüö]lig
|
||||
SFX A lig eliges [^aeiouhlräüö]lig
|
||||
SFX A erig rig [^hi]erig
|
||||
SFX A erig rige [^hi]erig
|
||||
SFX A erig riger [^hi]erig
|
||||
SFX A erig rigen [^hi]erig
|
||||
SFX A erig rigem [^hi]erig
|
||||
SFX A erig riges [^hi]erig
|
||||
|
||||
|
||||
SFX C Y 100
|
||||
SFX C 0 ere [^elr]
|
||||
SFX C 0 erer [^elr]
|
||||
SFX C 0 eren [^elr]
|
||||
SFX C 0 erem [^elr]
|
||||
SFX C 0 eres [^elr]
|
||||
SFX C 0 re e
|
||||
SFX C 0 rer e
|
||||
SFX C 0 ren e
|
||||
SFX C 0 rem e
|
||||
SFX C 0 res e
|
||||
SFX C 0 ere [^e][lr]
|
||||
SFX C 0 erer [^e][lr]
|
||||
SFX C 0 eren [^e][lr]
|
||||
SFX C 0 erem [^e][lr]
|
||||
SFX C 0 eres [^e][lr]
|
||||
SFX C el lere el
|
||||
SFX C el lerer el
|
||||
SFX C el leren el
|
||||
SFX C el lerem el
|
||||
SFX C el leres el
|
||||
SFX C er rere uer
|
||||
SFX C er rerer uer
|
||||
SFX C er reren uer
|
||||
SFX C er rerem uer
|
||||
SFX C er reres uer
|
||||
SFX C 0 ere [^u]er
|
||||
SFX C 0 erer [^u]er
|
||||
SFX C 0 eren [^u]er
|
||||
SFX C 0 erem [^u]er
|
||||
SFX C 0 eres [^u]er
|
||||
SFX C lig eligere [^aeiouhlräüö]lig
|
||||
SFX C lig eligerer [^aeiouhlräüö]lig
|
||||
SFX C lig eligeren [^aeiouhlräüö]lig
|
||||
SFX C lig eligerem [^aeiouhlräüö]lig
|
||||
SFX C lig eligeres [^aeiouhlräüö]lig
|
||||
SFX C erig rigere [^hi]erig
|
||||
SFX C erig rigerer [^hi]erig
|
||||
SFX C erig rigeren [^hi]erig
|
||||
SFX C erig rigerem [^hi]erig
|
||||
SFX C erig rigeres [^hi]erig
|
||||
SFX C 0 est [kßsuxz]
|
||||
SFX C 0 este [kßsuxz]
|
||||
SFX C 0 ester [kßsuxz]
|
||||
SFX C 0 esten [kßsuxz]
|
||||
SFX C 0 estem [kßsuxz]
|
||||
SFX C 0 estes [kßsuxz]
|
||||
SFX C 0 st et
|
||||
SFX C 0 ste et
|
||||
SFX C 0 ster et
|
||||
SFX C 0 sten et
|
||||
SFX C 0 stem et
|
||||
SFX C 0 stes et
|
||||
SFX C 0 st igt
|
||||
SFX C 0 ste igt
|
||||
SFX C 0 ster igt
|
||||
SFX C 0 sten igt
|
||||
SFX C 0 stem igt
|
||||
SFX C 0 stes igt
|
||||
SFX C 0 est [^i]gt
|
||||
SFX C 0 este [^i]gt
|
||||
SFX C 0 ester [^i]gt
|
||||
SFX C 0 esten [^i]gt
|
||||
SFX C 0 estem [^i]gt
|
||||
SFX C 0 estes [^i]gt
|
||||
SFX C 0 est [^eg]t
|
||||
SFX C 0 este [^eg]t
|
||||
SFX C 0 ester [^eg]t
|
||||
SFX C 0 esten [^eg]t
|
||||
SFX C 0 estem [^eg]t
|
||||
SFX C 0 estes [^eg]t
|
||||
SFX C 0 st [^kßstxz]
|
||||
SFX C 0 ste [^kßstxz]
|
||||
SFX C 0 ster [^kßstxz]
|
||||
SFX C 0 sten [^kßstxz]
|
||||
SFX C 0 stem [^kßstxz]
|
||||
SFX C 0 stes [^kßstxz]
|
||||
SFX C 0 st nd
|
||||
SFX C 0 ste nd
|
||||
SFX C 0 ster nd
|
||||
SFX C 0 sten nd
|
||||
SFX C 0 stem nd
|
||||
SFX C 0 stes nd
|
||||
SFX C 0 est [^n]d
|
||||
SFX C 0 este [^n]d
|
||||
SFX C 0 ester [^n]d
|
||||
SFX C 0 esten [^n]d
|
||||
SFX C 0 estem [^n]d
|
||||
SFX C 0 estes [^n]d
|
||||
SFX C lig eligst [^aeiouhlräüö]lig
|
||||
SFX C lig eligste [^aeiouhlräüö]lig
|
||||
SFX C lig eligster [^aeiouhlräüö]lig
|
||||
SFX C lig eligsten [^aeiouhlräüö]lig
|
||||
SFX C lig eligstem [^aeiouhlräüö]lig
|
||||
SFX C lig eligstes [^aeiouhlräüö]lig
|
||||
SFX C erig rigst [^hi]erig
|
||||
SFX C erig rigste [^hi]erig
|
||||
SFX C erig rigster [^hi]erig
|
||||
SFX C erig rigsten [^hi]erig
|
||||
SFX C erig rigstem [^hi]erig
|
||||
SFX C erig rigstes [^hi]erig
|
||||
|
||||
|
||||
SFX E Y 1
|
||||
SFX E 0 e .
|
||||
|
||||
|
||||
SFX f Y 4
|
||||
SFX f ph f ph
|
||||
SFX f ph fen ph
|
||||
SFX f phie fie phie
|
||||
SFX f phie fien phie
|
||||
|
||||
|
||||
SFX N Y 1
|
||||
SFX N 0 n .
|
||||
|
||||
|
||||
SFX P Y 1
|
||||
SFX P 0 en .
|
||||
|
||||
|
||||
SFX p Y 26
|
||||
SFX p auf äufe auf
|
||||
SFX p auf äufen auf
|
||||
SFX p aus äuser [hH]aus
|
||||
SFX p aus äusern [hH]aus
|
||||
SFX p arkt ärkte [mM]arkt
|
||||
SFX p arkt ärkten [mM]arkt
|
||||
SFX p ang änge ang
|
||||
SFX p ang ängen ang
|
||||
SFX p uß üße uß
|
||||
SFX p uß üßen uß
|
||||
SFX p oß öße oß
|
||||
SFX p oß ößen oß
|
||||
SFX p aum äume aum
|
||||
SFX p aum äumen aum
|
||||
SFX p ag äge ag
|
||||
SFX p ag ägen ag
|
||||
SFX p ug üge ug
|
||||
SFX p ug ügen ug
|
||||
SFX p all älle all
|
||||
SFX p all ällen all
|
||||
SFX p ass ässe ass
|
||||
SFX p ass ässen ass
|
||||
SFX p uss üsse uss
|
||||
SFX p uss üssen uss
|
||||
SFX p oss össe oss
|
||||
SFX p oss össen oss
|
||||
# last ...oss rules are for swiss de_CH only - but do not affect de_DE
|
||||
|
||||
|
||||
SFX R Y 3
|
||||
SFX R 0 er [^e]
|
||||
SFX R 0 ern [^e]
|
||||
SFX R 0 r e
|
||||
|
||||
|
||||
SFX S Y 1
|
||||
SFX S 0 s .
|
||||
|
||||
|
||||
SFX q Y 2
|
||||
SFX q 0 se s
|
||||
SFX q 0 sen s
|
||||
|
||||
|
||||
SFX Q Y 1
|
||||
SFX Q 0 ses s
|
||||
#SFX Q 0 se s
|
||||
#SFX Q 0 sen s
|
||||
|
||||
|
||||
SFX T Y 1
|
||||
SFX T 0 es .
|
||||
|
||||
|
||||
SFX J Y 12
|
||||
SFX J n ung [bgkpßsz]eln
|
||||
SFX J n ungen [bgkpßsz]eln
|
||||
SFX J eln lung eln
|
||||
SFX J n ung ern
|
||||
SFX J en ung en
|
||||
SFX J eln lungen eln
|
||||
SFX J n ungen ern
|
||||
SFX J en ungen en
|
||||
SFX J 0 ung [^n]
|
||||
SFX J 0 ungen [^n]
|
||||
SFX J el lung el
|
||||
SFX J el lungen el
|
||||
|
||||
|
||||
SFX B N 12
|
||||
SFX B n bar e[lr]n
|
||||
SFX B n bare e[lr]n
|
||||
SFX B n baren e[lr]n
|
||||
SFX B n barer e[lr]n
|
||||
SFX B n bares e[lr]n
|
||||
SFX B n barem e[lr]n
|
||||
SFX B en bar en
|
||||
SFX B en bare en
|
||||
SFX B en baren en
|
||||
SFX B en barer en
|
||||
SFX B en bares en
|
||||
SFX B en barem en
|
||||
|
||||
|
||||
SFX D Y 6
|
||||
SFX D 0 d n
|
||||
SFX D 0 de n
|
||||
SFX D 0 den n
|
||||
SFX D 0 der n
|
||||
SFX D 0 des n
|
||||
SFX D 0 dem n
|
||||
|
||||
|
||||
|
||||
SFX W Y 5
|
||||
SFX W en 0 en
|
||||
SFX W n 0 [^e]n
|
||||
SFX W st 0 [^s]st
|
||||
SFX W t 0 sst
|
||||
SFX W t 0 [^s]t
|
||||
|
||||
|
||||
SFX I Y 16
|
||||
SFX I n 0 en
|
||||
SFX I eln le eln
|
||||
SFX I n e eln
|
||||
SFX I ern re ern
|
||||
SFX I n e ern
|
||||
SFX I n t e[lr]n
|
||||
SFX I n t [dt]en
|
||||
SFX I en t [^dimnt]en
|
||||
SFX I en t eien
|
||||
SFX I n t [^e]ien
|
||||
SFX I n t chnen
|
||||
SFX I en t [^c]h[mn]en
|
||||
SFX I n t [^aäehilmnoöuür][mn]en
|
||||
SFX I en t [aäeilmnoöuür][mn]en
|
||||
SFX I n e un
|
||||
SFX I n t un
|
||||
|
||||
|
||||
SFX X Y 26
|
||||
SFX X n t e[lr]n
|
||||
SFX X n t [dtw]en
|
||||
SFX X en t eien
|
||||
SFX X n t [^e]ien
|
||||
SFX X en t [^ditmnw]en
|
||||
SFX X n t chnen
|
||||
SFX X en t [^c]h[mn]en
|
||||
SFX X n t [^aäehilmnoöuür][mn]en
|
||||
SFX X en t [aäeilmnoöuür][mn]en
|
||||
SFX X n t un
|
||||
SFX X st 0 tst
|
||||
SFX X n st e[lr]n
|
||||
SFX X n st [dtw]en
|
||||
SFX X en st [^dimnßstwzx]en
|
||||
SFX X en st eien
|
||||
SFX X n st [^e]ien
|
||||
SFX X n st chnen
|
||||
SFX X en st [^c]h[mn]en
|
||||
SFX X n st [^aäehilmnoöuür][mn]en
|
||||
SFX X en st [aäeilmnoöuür][mn]en
|
||||
SFX X n st un
|
||||
SFX X n st [ßsxz]en
|
||||
SFX X n st ssen
|
||||
SFX X n st schen
|
||||
SFX X t st [^sz]t
|
||||
SFX X t est zt
|
||||
|
||||
|
||||
SFX Y Y 36
|
||||
SFX Y n te e[lr]n
|
||||
SFX Y n te [dtw]en
|
||||
SFX Y en te [^dimntw]en
|
||||
SFX Y en te eien
|
||||
SFX Y n te [^e]ien
|
||||
SFX Y n te chnen
|
||||
SFX Y en te [^c]h[mn]en
|
||||
SFX Y n te [^aäehilmnoöuür][mn]en
|
||||
SFX Y en te [aäeilmnoöuür][mn]en
|
||||
SFX Y n test e[lr]n
|
||||
SFX Y n test [dtw]en
|
||||
SFX Y en test [^dimntw]en
|
||||
SFX Y en test eien
|
||||
SFX Y n test [^e]ien
|
||||
SFX Y n test chnen
|
||||
SFX Y en test [^c]h[mn]en
|
||||
SFX Y n test [^aäehilmnoöuür][mn]en
|
||||
SFX Y en test [aäeilmnoöuür][mn]en
|
||||
SFX Y n tet e[lr]n
|
||||
SFX Y n tet [dtw]en
|
||||
SFX Y en tet [^dimntw]en
|
||||
SFX Y en tet eien
|
||||
SFX Y n tet [^e]ien
|
||||
SFX Y n tet chnen
|
||||
SFX Y en tet [^c]h[mn]en
|
||||
SFX Y n tet [^aäehilmnoöuür][mn]en
|
||||
SFX Y en tet [aäeilmnoöuür][mn]en
|
||||
SFX Y n ten e[lr]n
|
||||
SFX Y n ten [dtw]en
|
||||
SFX Y en ten [^dimntw]en
|
||||
SFX Y en ten eien
|
||||
SFX Y n ten [^e]ien
|
||||
SFX Y n ten chnen
|
||||
SFX Y en ten [^c]h[mn]en
|
||||
SFX Y n ten [^aäehilmnoöuür][mn]en
|
||||
SFX Y en ten [aäeilmnoöuür][mn]en
|
||||
|
||||
|
||||
SFX Z Y 15
|
||||
SFX Z 0 st [^hßsz]
|
||||
SFX Z 0 st [^c]h
|
||||
SFX Z 0 st [^s]ch
|
||||
SFX Z 0 est [dfkstz]
|
||||
SFX Z 0 est ch
|
||||
SFX Z 0 est [au]ß
|
||||
SFX Z 0 est ieß
|
||||
SFX Z 0 est [io]ss
|
||||
SFX Z 0 t [^dt]
|
||||
SFX Z 0 et [dt]
|
||||
SFX Z 0 n e
|
||||
SFX Z 0 en ie
|
||||
SFX Z 0 en [^e]
|
||||
SFX Z 0 est iess
|
||||
SFX Z 0 est [au]ss
|
||||
# last two ...ss rules only used for swiss de_CH - but de_DE is unaffected
|
||||
|
||||
|
||||
SFX O Y 21
|
||||
SFX O n tes e[lr]n
|
||||
SFX O n tes [dtw]en
|
||||
SFX O en tes [^dmntw]en
|
||||
SFX O n tes chnen
|
||||
SFX O en tes [^c]h[mn]en
|
||||
SFX O n tes [^aäehilmnoöuür][mn]en
|
||||
SFX O en tes [aäeilmnoöuür][mn]en
|
||||
SFX O n ter e[lr]n
|
||||
SFX O n ter [dtw]en
|
||||
SFX O en ter [^dmntw]en
|
||||
SFX O n ter chnen
|
||||
SFX O en ter [^c]h[mn]en
|
||||
SFX O n ter [^aäehilmnoöuür][mn]en
|
||||
SFX O en ter [aäeilmnoöuür][mn]en
|
||||
SFX O n tem e[lr]n
|
||||
SFX O n tem [dtw]en
|
||||
SFX O en tem [^dmntw]en
|
||||
SFX O n tem chnen
|
||||
SFX O en tem [^c]h[mn]en
|
||||
SFX O n tem [^aäehilmnoöuür][mn]en
|
||||
SFX O en tem [aäeilmnoöuür][mn]en
|
||||
|
||||
REP 28
|
||||
REP f ph
|
||||
REP ph f
|
||||
REP ß ss
|
||||
REP ss ß
|
||||
REP s ss
|
||||
REP ss s
|
||||
REP i ie
|
||||
REP ie i
|
||||
REP ee e
|
||||
REP o oh
|
||||
REP oh o
|
||||
REP a ah
|
||||
REP ah a
|
||||
REP e eh
|
||||
REP eh e
|
||||
REP ae ä
|
||||
REP oe ö
|
||||
REP ue ü
|
||||
REP Ae Ä
|
||||
REP Oe Ö
|
||||
REP Ue Ü
|
||||
REP d t
|
||||
REP t d
|
||||
REP th t
|
||||
REP t th
|
||||
REP r rh
|
||||
REP ch k
|
||||
REP k ch
|
||||
#REP eee ee-E
|
||||
|
||||
|
||||
# this one will allow "-Eltern" - Hunspell 1.1.5 bug, but CHECKSHARPS obsoletes LANG de_DE
|
||||
#LANG de_DE
|
||||
CHECKSHARPS
|
||||
|
||||
|
||||
COMPOUNDBEGIN x
|
||||
COMPOUNDMIDDLE y
|
||||
COMPOUNDEND z
|
||||
FORBIDDENWORD d
|
||||
|
||||
# Prefixes are allowed at the beginning of compounds,
|
||||
# suffixes are allowed at the end of compounds by default:
|
||||
# (prefix)?(root)+(affix)?
|
||||
# Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
COMPOUNDPERMITFLAG c
|
||||
|
||||
ONLYINCOMPOUND o
|
||||
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
NEEDAFFIX h
|
||||
|
||||
# forbid uppercase characters at compound word bounds
|
||||
# BUT I want to take care about it myself ;-)
|
||||
# CHECKCOMPOUNDCASE
|
||||
KEEPCASE w
|
||||
|
||||
# Affixes signed with CIRCUMFIX flag may be on a word when this word also has a prefix with CIRCUMFIX flag and vice versa.
|
||||
# for decapitalizing nouns with fogemorphemes
|
||||
CIRCUMFIX f
|
||||
|
||||
# this one would make a separate dict entry "Denkmalsschutz" invalidate the
|
||||
# compound of "Denkmal"+"schutz". We do not want this feature here...
|
||||
# CHECKCOMPOUNDREP
|
||||
|
||||
# make not all possible suggestions for typos of Flicken or some rare words
|
||||
NOSUGGEST n
|
||||
|
||||
WORDCHARS ß-.
|
||||
|
||||
# - setting this to 2 decreases performance by 1/10 but is needed for "öl" and "ei"
|
||||
# - setting this to 1 for handling Fuge-elements with dashes (Arbeits-) dash will
|
||||
# be a special word but - is handled as a affix now
|
||||
COMPOUNDMIN 2
|
||||
|
||||
# this ones are for Duden R36 (old orthography)
|
||||
#CHECKCOMPOUNDPATTERN 2 #oldspell
|
||||
#CHECKCOMPOUNDPATTERN ee e #oldspell
|
||||
#CHECKCOMPOUNDPATTERN oo o #oldspell
|
||||
# also need oo o
|
||||
|
||||
# this one needs to be flagable to be used for old orthography
|
||||
#CHECKCOMPOUNDTRIPLE
|
||||
|
||||
|
||||
PFX i Y 1
|
||||
PFX i 0 -/coyf .
|
||||
|
||||
SFX j Y 3
|
||||
SFX j 0 0/xoc .
|
||||
SFX j 0 -/zocf .
|
||||
SFX j 0 -/cz .
|
||||
|
||||
# Female forms for compound/Compound words:
|
||||
# attention: [^e][^n] does also filter out "...er" !
|
||||
SFX g Y 12
|
||||
SFX g 0 innen/xyoc [^n]
|
||||
SFX g en innen/xyoc en
|
||||
SFX g 0 Innen/xyoc [^n]
|
||||
SFX g en Innen/xyoc en
|
||||
SFX g 0 innen/xyocf [^n]
|
||||
SFX g en innen/xyocf en
|
||||
SFX g 0 Innen/xyocf [^n]
|
||||
SFX g en Innen/xyocf en
|
||||
SFX g 0 innen-/cz [^n]
|
||||
SFX g en innen-/cz en
|
||||
SFX g 0 Innen-/cz [^n]
|
||||
SFX g en Innen-/cz en
|
||||
|
||||
|
||||
PFX k Y 2
|
||||
PFX k 0 -/coxf .
|
||||
PFX k 0 0/coy .
|
||||
|
||||
SFX e Y 2
|
||||
SFX e 0 0/yoc .
|
||||
SFX e 0 -/zc .
|
||||
|
||||
# for Uppercased end-words to prepend - and lowercase: (Tier/EPSm) (EX: Bettbezüge und *-laken*)
|
||||
# AND
|
||||
# for lowercased end-words to prepend - and re-uppercase : (tier/EPSozm) (EX: Arbeits*-Tier*)
|
||||
#PFX m A -a/co A
|
||||
#PFX m a -/ a
|
||||
PFX m Y 58
|
||||
PFX m A -a A
|
||||
PFX m B -b B
|
||||
PFX m C -c C
|
||||
PFX m D -d D
|
||||
PFX m E -e E
|
||||
PFX m F -f F
|
||||
PFX m G -g G
|
||||
PFX m H -h H
|
||||
PFX m I -i I
|
||||
PFX m J -j J
|
||||
PFX m K -k K
|
||||
PFX m L -l L
|
||||
PFX m M -m M
|
||||
PFX m N -n N
|
||||
PFX m O -o O
|
||||
PFX m P -p P
|
||||
PFX m Q -q Q
|
||||
PFX m R -r R
|
||||
PFX m S -s S
|
||||
PFX m T -t T
|
||||
PFX m U -u U
|
||||
PFX m V -v V
|
||||
PFX m W -w W
|
||||
PFX m X -x X
|
||||
PFX m Y -y Y
|
||||
PFX m Z -z Z
|
||||
PFX m Ä -ä Ä
|
||||
PFX m Ö -ö Ö
|
||||
PFX m Ü -ü Ü
|
||||
PFX m a -A/co a
|
||||
PFX m b -B/co b
|
||||
PFX m c -C/co c
|
||||
PFX m d -D/co d
|
||||
PFX m e -E/co e
|
||||
PFX m f -F/co f
|
||||
PFX m g -G/co g
|
||||
PFX m h -H/co h
|
||||
PFX m i -I/co i
|
||||
PFX m j -J/co j
|
||||
PFX m k -K/co k
|
||||
PFX m l -L/co l
|
||||
PFX m m -M/co m
|
||||
PFX m n -N/co n
|
||||
PFX m o -O/co o
|
||||
PFX m p -P/co p
|
||||
PFX m q -Q/co q
|
||||
PFX m r -R/co r
|
||||
PFX m s -S/co s
|
||||
PFX m t -T/co t
|
||||
PFX m u -U/co u
|
||||
PFX m v -V/co v
|
||||
PFX m w -W/co w
|
||||
PFX m x -X/co x
|
||||
PFX m y -Y/co y
|
||||
PFX m z -Z/co z
|
||||
PFX m ä -Ä/co ä
|
||||
PFX m ö -Ö/co ö
|
||||
PFX m ü -Ü/co ü
|
||||
|
||||
|
||||
# Decapitalizing: (not used ATM... )
|
||||
# /co(f) : compound permit, in coumpount only, (decapitalizing with fogemorphemes)
|
||||
#PFX l Y 29
|
||||
#PFX l A a/co A
|
||||
#PFX l Ä ä/co Ä
|
||||
#PFX l B b/co B
|
||||
#PFX l C c/co C
|
||||
#PFX l D d/co D
|
||||
#PFX l E e/co E
|
||||
#PFX l F f/co F
|
||||
#PFX l G g/co G
|
||||
#PFX l H h/co H
|
||||
#PFX l I i/co I
|
||||
#PFX l J j/co J
|
||||
#PFX l K k/co K
|
||||
#PFX l L l/co L
|
||||
#PFX l M m/co M
|
||||
#PFX l N n/co N
|
||||
#PFX l O o/co O
|
||||
#PFX l Ö ö/co Ö
|
||||
#PFX l P p/co P
|
||||
#PFX l Q q/co Q
|
||||
#PFX l R r/co R
|
||||
#PFX l S s/co S
|
||||
#PFX l T t/co T
|
||||
#PFX l U u/co U
|
||||
#PFX l Ü ü/co Ü
|
||||
#PFX l V v/co V
|
||||
#PFX l W w/co W
|
||||
#PFX l X x/co X
|
||||
#PFX l Y y/co Y
|
||||
#PFX l Z z/co Z
|
||||
|
||||
# private hunspell flags:
|
||||
# --x : not for capmain (rare words)
|
||||
|
||||
# With "BREAK -" some wrong forms are accepted but that is needed for US-Wirtschaft etc.
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
BREAK 2
|
||||
BREAK -
|
||||
BREAK .
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
igerman98 - dictionaries for German language
|
||||
Copyright (C) 1999-2016 Björn Jacke <bjoern@j3e.de>.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License version 2 or 3 as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
@@ -0,0 +1,937 @@
|
||||
SET UTF-8
|
||||
|
||||
MAXNGRAMSUGS 10
|
||||
MAXDIFF 8
|
||||
ONLYMAXDIFF
|
||||
NOSPLITSUGS
|
||||
FLAG UTF-8
|
||||
|
||||
|
||||
|
||||
REP 145
|
||||
REP ά ά
|
||||
REP ^ἠ ἡ
|
||||
REP ^ἄ ἀ
|
||||
REP ή ῆ
|
||||
REP ^ἰ ἱ
|
||||
REP ά ᾶ
|
||||
REP ῖ ί
|
||||
REP υ ῦ
|
||||
REP υ ὐ
|
||||
REP ω ο
|
||||
REP ώ ῶ
|
||||
REP ω ώ
|
||||
REP B Β
|
||||
REP Z Ζ
|
||||
REP K Κ
|
||||
REP M Μ
|
||||
REP N Ν
|
||||
REP P Ρ
|
||||
REP T Τ
|
||||
REP Y Υ
|
||||
REP X Χ
|
||||
REP ί ῖ
|
||||
REP ῑ ῖ
|
||||
REP ι ί
|
||||
REP ι ὶ
|
||||
REP ι ῖ
|
||||
REP ωϊ ωι
|
||||
REP όι όϊ
|
||||
REP x χ
|
||||
REP εῖ ῇ
|
||||
REP ῇ εῖ
|
||||
REP εῖ ῆ
|
||||
REP ῆ εῖ
|
||||
REP ῃ ει
|
||||
REP ᾶ εῖ
|
||||
REP οἴ οἶ
|
||||
REP ο ε
|
||||
REP ὄ ὅ
|
||||
REP Ἰ Ἱ
|
||||
REP εῖ ή
|
||||
REP ή εῖ
|
||||
REP ή εί
|
||||
REP ἦ εἶ
|
||||
REP ει εί
|
||||
REP ει η
|
||||
REP εί ει
|
||||
REP ή ός
|
||||
REP η ος
|
||||
REP εῖ ᾶ
|
||||
REP εί ύ
|
||||
REP ^εἴ ἤ
|
||||
REP ιέ εῖ
|
||||
REP ά έ
|
||||
REP ἄ ά
|
||||
REP ἄ ἀ
|
||||
REP n ν
|
||||
REP η ει
|
||||
REP ε αι
|
||||
REP αι ε
|
||||
REP αι ες
|
||||
REP έ αί
|
||||
REP αί έ
|
||||
REP ού οῦ
|
||||
REP ᾶ οῦ
|
||||
REP φτ φθ
|
||||
REP φτ πτ
|
||||
REP φθ φτ
|
||||
REP στ σθ
|
||||
REP σθ στ
|
||||
REP χτ κτ
|
||||
REP ευτ ευθ
|
||||
REP εύτ εύθ
|
||||
REP έψ εύσ
|
||||
REP ἕβ εὕ
|
||||
REP ἔβ εὕ
|
||||
REP εψ ευσ
|
||||
REP άψ αύσ
|
||||
REP σ σσ
|
||||
REP ^καλλίτερ καλύτερ
|
||||
REP ο$ ον
|
||||
REP ό$ όν
|
||||
REP ὸ$ ὸν
|
||||
REP ιο$ ιον
|
||||
REP ^θέτομαι τίθεμαι
|
||||
REP όμαστε$ ώμεθα
|
||||
REP ούμαστε$ ούμεθα
|
||||
REP ουμαστε$ ούμεθα
|
||||
REP θονταν$ θετο
|
||||
REP ειους$ είους
|
||||
REP ούμουν$ ούμην
|
||||
REP ούσουν$ εῖσο
|
||||
REP οῦταν$ εῖτο
|
||||
REP ούταν$ εῖτο
|
||||
REP ούνταν$ οῦντο
|
||||
REP νταν$ ντοο
|
||||
REP άει$ ᾶ
|
||||
REP ες$ οι
|
||||
REP ιδα$ ι
|
||||
REP ιδα$ ιν
|
||||
REP ^ὑπό ὑπέ
|
||||
REP ^ἔγκ ἐνέκ
|
||||
REP ^ἠρωϊ ἡρωι
|
||||
REP ^ἐπικεφαλής$ ἐπὶ_κεφαλῆς
|
||||
REP ^ἐπικεφαλῆς$ ἐπὶ_κεφαλῆς
|
||||
REP ^επιμέρους$ ἐπὶ_μέρους
|
||||
REP ^ἐπιμέρους$ ἐπὶ_μέρους
|
||||
REP ^επιτέλους$ ἐπὶ_τέλους
|
||||
REP ^ἐπιτέλους$ ἐπὶ_τέλους
|
||||
REP ^κατεξοχήν$ κατ'_ἐξοχήν
|
||||
REP ^κατεξοχὴν$ κατ'_ἐξοχὴν
|
||||
REP ^καταρχήν$ κατ'_ἀρχήν
|
||||
REP ^καταρχὴν$ κατ'_ἀρχὴν
|
||||
REP ^καταρχάς$ κατ'_ἀρχάς
|
||||
REP ^καταρχὰς$ κατ'_ἀρχὰς
|
||||
REP ^κατευθείαν$ κατ'_εὐθεῖαν
|
||||
REP ^ἀπευθείας$ ἀπ'_εὐθείας
|
||||
REP ^απευθείας$ ἀπ'_εὐθείας
|
||||
REP ^παρότι$ παρ'_ὅτι
|
||||
REP ^παρόλο$ παρ'_ὅλο
|
||||
REP ^παρόλα$ παρ'_ὅλα
|
||||
REP ^παρόλην$ παρ'_ὅλην
|
||||
REP ^παρόλη$ παρ'_ὅλη
|
||||
REP ^καθόλα$ καθ'_ὅλα
|
||||
REP ^εξαιτίας$ ἐξ_αἰτίας
|
||||
REP ^τελοσπάντων$ τέλος_πάντων
|
||||
REP ^ἀφενός$ ἀφ'_ἑνός
|
||||
REP ^ἀφενὸς$ ἀφ'_ἑνὸς
|
||||
REP ^ἀφετέρου$ ἀφ'_ἑτέρου
|
||||
REP ^αφενός$ ἀφ'_ἑνός
|
||||
REP ^αφετέρου$ ἀφ'_ἑτέρου
|
||||
REP ^εντούτοις$ ἐν_τούτοις
|
||||
REP ^ἐντούτοις$ ἐν_τούτοις
|
||||
REP ^περεταίρω$ περαιτέρω
|
||||
REP ^καθωσπρέπει$ καθὼς_πρέπει
|
||||
REP ^ἐσαεὶ$ ἐς_ἀεί
|
||||
REP ^εσαεὶ$ ἐς_ἀεί
|
||||
REP ^ἐσαεί$ ἐς_ἀεί
|
||||
REP ^εσαεί$ ἐς_ἀεί
|
||||
REP ^νοός$ νοῦ
|
||||
REP ^νοὸς$ νοῦ
|
||||
REP ^νόες$ νοῖ
|
||||
REP ^μεγαλο μεγα
|
||||
REP ῥ ρ
|
||||
REP ῤ ρ
|
||||
REP ῤῥ ρρ
|
||||
|
||||
TRY άόίϊΐέήύϋΰώιηυωοεαἀἐἠἰὀὠἁἑἡἱὁὑὡἄἔἤἴὄὤἅἕἥἵὅὕὥἆἦἶὦἇἧἷὗὧᾳῃῳᾷῇῷᾆᾖᾦᾇᾗᾧλςγδθφβζρξψχΑΕΗΙΥΟΩἈἘἨἸὈὨὙΡΤΘΠΣΔΦΓΞΚΛΖΧΨΒΝΜ'
|
||||
|
||||
MAP 7
|
||||
MAP αάᾶὰἀἄἆἂἁἅἇἃᾳᾷᾆᾇΑἈἌἊἎἉἍ
|
||||
MAP ηήῆὴἠἤἦἢἡἥἧἣῃῇᾖᾗΗἨἬἪἮἩἭιίῖὶϊΐἰἴἶἲἱἵἷἳΙἸἼἺἾἹἽΪυύῦὺϋΰὐὔὖὒὑὕὗὓΥὙὝὟΫ(ει)(οι)
|
||||
MAP εέὲἐἔἒἑἕἓΕἘἜἙἝ
|
||||
MAP οόὸὀὄὂὁὅὃωώῶὼὠὤὦὢὡὥὧὣῳῷᾦᾧΟὈὉὌὍΩὨὩὮὯὬὭ
|
||||
MAP (ου)(οῦ)(ού)(οὺ)(οὐ)
|
||||
MAP σς
|
||||
MAP ρῤῥ
|
||||
|
||||
PFX a Y 1
|
||||
PFX a ᾐ ἠ ᾐ
|
||||
|
||||
SFX A Y 60
|
||||
SFX A ά ὰ ά
|
||||
SFX A ή ὴ ή
|
||||
SFX A έ ὲ έ
|
||||
SFX A ί ὶ ί
|
||||
SFX A ό ὸ ό
|
||||
SFX A ύ ὺ ύ
|
||||
SFX A ώ ὼ ώ
|
||||
SFX A ών ὼν ών
|
||||
SFX A ώς ὼς ώς
|
||||
SFX A ός ὸς ός
|
||||
SFX A όν ὸν όν
|
||||
SFX A όλ ὸλ όλ
|
||||
SFX A ότ ὸτ ότ
|
||||
SFX A όρ ὸρ όρ
|
||||
SFX A ὅν ὃν ὅν
|
||||
SFX A ίς ὶς ίς
|
||||
SFX A ίν ὶν ίν
|
||||
SFX A ίτ ὶτ ίτ
|
||||
SFX A ίχ ὶχ ίχ
|
||||
SFX A ίμ ὶμ ίμ
|
||||
SFX A ίδ ὶδ ίδ
|
||||
SFX A ίθ ὶθ ίθ
|
||||
SFX A ίκ ὶκ ίκ
|
||||
SFX A ίλ ὶλ ίλ
|
||||
SFX A ίλμ ὶλμ ίλμ
|
||||
SFX A ίπ ὶπ ίπ
|
||||
SFX A ύς ὺς ύς
|
||||
SFX A ύν ὺν ύν
|
||||
SFX A ύλ ὺλ ύλ
|
||||
SFX A ύπ ὺπ ύπ
|
||||
SFX A ύθ ὺθ ύθ
|
||||
SFX A ής ὴς ής
|
||||
SFX A ήν ὴν ήν
|
||||
SFX A ἥν ἣν ἥν
|
||||
SFX A ήλ ὴλ ήλ
|
||||
SFX A ήμ ὴμ ήμ
|
||||
SFX A άς ὰς άς
|
||||
SFX A άμ ὰμ άμ
|
||||
SFX A άλ ὰλ άλ
|
||||
SFX A άτ ὰτ άτ
|
||||
SFX A άρ ὰρ άρ
|
||||
SFX A άζ ὰζ άζ
|
||||
SFX A άπ ὰπ άπ
|
||||
SFX A άχ ὰχ άχ
|
||||
SFX A ἅς ἃς ἅς
|
||||
SFX A άν ὰν άν
|
||||
SFX A άνς ὰνς άνς
|
||||
SFX A άξ ὰξ άξ
|
||||
SFX A όξ ὸξ όξ
|
||||
SFX A όκ ὸκ όκ
|
||||
SFX A ές ὲς ές
|
||||
SFX A έστ ὲστ έστ
|
||||
SFX A έν ὲν έν
|
||||
SFX A έλ ὲλ έλ
|
||||
SFX A έρ ὲρ έρ
|
||||
SFX A έμ ὲμ έμ
|
||||
SFX A έξ ὲξ έξ
|
||||
SFX A άρ ἀρ άρ
|
||||
SFX A ήρ ὴρ ήρ
|
||||
SFX A ίρ ὶρ ίρ
|
||||
|
||||
|
||||
SFX C Y 17
|
||||
SFX C ος ός ος
|
||||
SFX C ο ό ο
|
||||
SFX C ον όν ον
|
||||
SFX C ε έ ε
|
||||
SFX C α ά α
|
||||
SFX C ας άς ας
|
||||
SFX C αν άν αν
|
||||
SFX C αι αί αι
|
||||
SFX C ες ές ες
|
||||
SFX C ις ίς ις
|
||||
SFX C η ή η
|
||||
SFX C ιν ίν ιν
|
||||
SFX C ι ί ι
|
||||
SFX C ως ώς ως
|
||||
SFX C ων ών ων
|
||||
SFX C ης ής ης
|
||||
SFX C εν έν εν
|
||||
|
||||
SFX D Y 4
|
||||
SFX D ῃ η ῃ
|
||||
SFX D ῇ ῆ ῇ
|
||||
SFX D ῃς ης ῃς
|
||||
SFX D ῇς ῆς ῇς
|
||||
|
||||
|
||||
|
||||
|
||||
SFX F Y 13
|
||||
SFX F ός οῦ ός
|
||||
SFX F ός όν ός
|
||||
SFX F ός έ ός
|
||||
SFX F ός οί ός
|
||||
SFX F ός ῶν ός
|
||||
SFX F ός ούς ός
|
||||
SFX F ός ό ός
|
||||
SFX F ός ὸς ός
|
||||
SFX F ός ὸν ός
|
||||
SFX F ός ὲ ός
|
||||
SFX F ός οὶ ός
|
||||
SFX F ός οὺς ός
|
||||
SFX F ός ὸ ός
|
||||
|
||||
SFX E Y 11
|
||||
SFX E ός ή ός
|
||||
SFX E ός ῆς ός
|
||||
SFX E ός ήν ός
|
||||
SFX E ός αί ός
|
||||
SFX E ός ές ός
|
||||
SFX E ός άς ός
|
||||
SFX E ός ὴ ός
|
||||
SFX E ός ὴν ός
|
||||
SFX E ός αὶ ός
|
||||
SFX E ός ὲς ός
|
||||
SFX E ός ὰς ός
|
||||
|
||||
SFX B Y 11
|
||||
SFX B ός ά ός
|
||||
SFX B ός ᾶς ός
|
||||
SFX B ός άν ός
|
||||
SFX B ός αί ός
|
||||
SFX B ός ές ός
|
||||
SFX B ός άς ός
|
||||
SFX B ός ὰ ός
|
||||
SFX B ός ὰν ός
|
||||
SFX B ός αὶ ός
|
||||
SFX B ός ὲς ός
|
||||
SFX B ός ὰς ός
|
||||
|
||||
SFX ε Y 2
|
||||
SFX ε ός ά ός
|
||||
SFX ε ός ὰ ός
|
||||
|
||||
SFX Φ Y 2
|
||||
SFX Φ ός ῷ ός
|
||||
SFX Φ ός οῖς ός
|
||||
|
||||
SFX φ Y 2
|
||||
SFX φ ός ῇ ός
|
||||
SFX φ ός αῖς ός
|
||||
|
||||
SFX β Y 2
|
||||
SFX β ός ᾷ ός
|
||||
SFX β ός αῖς ός
|
||||
|
||||
|
||||
|
||||
SFX X Y 5
|
||||
SFX X ος ον ος
|
||||
SFX X ος ο ος
|
||||
SFX X ος ε ος
|
||||
SFX X ος οι ος
|
||||
SFX X ος α ος
|
||||
|
||||
SFX Γ Y 6
|
||||
SFX Γ ος ός ος
|
||||
SFX Γ ος όν ος
|
||||
SFX Γ ος ό ος
|
||||
SFX Γ ος έ ος
|
||||
SFX Γ ος οί ος
|
||||
SFX Γ ος ά ος
|
||||
|
||||
SFX Z Y 3
|
||||
SFX Z ος ου ος
|
||||
SFX Z ος ων ος
|
||||
SFX Z ος ους ος
|
||||
|
||||
SFX Δ Y 3
|
||||
SFX Δ ος ού ος
|
||||
SFX Δ ος ών ος
|
||||
SFX Δ ος ούς ος
|
||||
|
||||
SFX Θ Y 4
|
||||
SFX Θ ος ά ος
|
||||
SFX Θ ος άς ος
|
||||
SFX Θ ος άν ος
|
||||
SFX Θ ος ές ος
|
||||
|
||||
SFX Λ Y 4
|
||||
SFX Λ ος ή ος
|
||||
SFX Λ ος ής ος
|
||||
SFX Λ ος ήν ος
|
||||
SFX Λ ος ές ος
|
||||
|
||||
SFX Ξ Y 1
|
||||
SFX Ξ ος αί ος
|
||||
|
||||
|
||||
SFX x Y 4
|
||||
SFX x ου ῳ ου
|
||||
SFX x ου ων ου
|
||||
SFX x ου οις ου
|
||||
SFX x ου ους ου
|
||||
|
||||
SFX γ Y 4
|
||||
SFX γ ος η ος
|
||||
SFX γ ος ης ος
|
||||
SFX γ ος ην ος
|
||||
SFX γ ος ες ος
|
||||
|
||||
SFX κ Y 3
|
||||
SFX κ ου η ου
|
||||
SFX κ ου ης ου
|
||||
SFX κ ου ην ου
|
||||
|
||||
SFX δ Y 3
|
||||
SFX δ ου α ου
|
||||
SFX δ ου ας ου
|
||||
SFX δ ου αν ου
|
||||
|
||||
SFX ζ Y 3
|
||||
SFX ζ ος α ος
|
||||
SFX ζ ος ας ος
|
||||
SFX ζ ος αν ος
|
||||
|
||||
|
||||
SFX θ Y 2
|
||||
SFX θ ος αι ος
|
||||
SFX θ ος ες ος
|
||||
|
||||
SFX λ Y 1
|
||||
SFX λ ος ες ος
|
||||
|
||||
SFX ι Y 2
|
||||
SFX ι ου ᾳ ου
|
||||
SFX ι ου αις ου
|
||||
|
||||
SFX μ Y 3
|
||||
SFX μ ου ῃ ου
|
||||
SFX μ ου αις ου
|
||||
SFX μ ου ας ου
|
||||
|
||||
|
||||
|
||||
|
||||
SFX K Y 10
|
||||
SFX K ής ὴς ής
|
||||
SFX K ής οῦς ής
|
||||
SFX K ής εῖ ής
|
||||
SFX K ής ῆ ής
|
||||
SFX K ής ές ής
|
||||
SFX K ής ὲς ής
|
||||
SFX K ής εῖς ής
|
||||
SFX K ής ῶν ής
|
||||
SFX K ής έσι ής
|
||||
SFX K ής ῆ ής
|
||||
|
||||
SFX J Y 8
|
||||
SFX J ώδης ώδους ώδης
|
||||
SFX J ώδης ώδει ώδης
|
||||
SFX J ώδης ώδη ώδης
|
||||
SFX J ώδης ῶδες ώδης
|
||||
SFX J ώδης ώδεις ώδης
|
||||
SFX J ώδης ωδῶν ώδης
|
||||
SFX J ώδης ώδεσι ώδης
|
||||
SFX J ώδης ῶδες ώδης
|
||||
|
||||
SFX f Y 6
|
||||
SFX f ός ῶς .
|
||||
SFX f ος ως .
|
||||
SFX f ου ως .
|
||||
SFX f ύς έως .
|
||||
SFX f ώδης ωδῶς .
|
||||
SFX f ής ῶς .
|
||||
|
||||
|
||||
|
||||
SFX I Y 27
|
||||
SFX I ος ου .
|
||||
SFX I ος ον .
|
||||
SFX I ος ε .
|
||||
SFX I ος οι .
|
||||
SFX I ος ων .
|
||||
SFX I ος ους .
|
||||
SFX I ος ο .
|
||||
SFX I ος αι .
|
||||
SFX I ος ες .
|
||||
SFX I ος η .
|
||||
SFX I ος ης .
|
||||
SFX I ος ην .
|
||||
SFX I ος α .
|
||||
SFX I ος ός .
|
||||
SFX I ος ού .
|
||||
SFX I ος όν .
|
||||
SFX I ος έ .
|
||||
SFX I ος οί .
|
||||
SFX I ος ών .
|
||||
SFX I ος ούς .
|
||||
SFX I ος ό .
|
||||
SFX I ος αί .
|
||||
SFX I ος ές .
|
||||
SFX I ος ή .
|
||||
SFX I ος ής .
|
||||
SFX I ος ήν .
|
||||
SFX I ος ά .
|
||||
|
||||
SFX i Y 13
|
||||
SFX i ου ῳ
|
||||
SFX i ου ων
|
||||
SFX i ου οις
|
||||
SFX i ου ους
|
||||
SFX i ου αις
|
||||
SFX i ου ας
|
||||
SFX i ου α ρου
|
||||
SFX i ου ᾳ ρου
|
||||
SFX i ου αν ρου
|
||||
SFX i ου η του
|
||||
SFX i ου ης του
|
||||
SFX i ου ῃ του
|
||||
SFX i ου ην του
|
||||
|
||||
|
||||
SFX r Y 7
|
||||
SFX r ας ου ας
|
||||
SFX r ας α ας
|
||||
SFX r ας ᾳ ας
|
||||
SFX r ας αν ας
|
||||
SFX r ας αι ας
|
||||
SFX r ας ες ας
|
||||
SFX r ας αις ας
|
||||
|
||||
SFX s Y 3
|
||||
SFX s ας α ας
|
||||
SFX s ας αν ας
|
||||
SFX s ας ες ας
|
||||
|
||||
SFX u Y 6
|
||||
SFX u ης ου ης
|
||||
SFX u ης η ης
|
||||
SFX u ης ῃ ης
|
||||
SFX u ης ην ης
|
||||
SFX u ης αις ης
|
||||
SFX u ης ας ης
|
||||
|
||||
SFX t Y 1
|
||||
SFX t αι ες αι
|
||||
|
||||
SFX z Y 2
|
||||
SFX z αι ες αι
|
||||
SFX z αι α αι
|
||||
|
||||
SFX p Y 3
|
||||
SFX p ης η ης
|
||||
SFX p ης ην ης
|
||||
SFX p ης ες ης
|
||||
|
||||
SFX j Y 1
|
||||
SFX j ης η ης
|
||||
|
||||
SFX k Y 1
|
||||
SFX k ες ων ες
|
||||
|
||||
SFX M Y 18
|
||||
SFX M ής οῦ ής
|
||||
SFX M ής ῆ ής
|
||||
SFX M ής ῇ ής
|
||||
SFX M ής ήν ής
|
||||
SFX M ής ή ής
|
||||
SFX M ής ά ής
|
||||
SFX M ής αί ής
|
||||
SFX M ής ές ής
|
||||
SFX M ής ῶν ής
|
||||
SFX M ής αῖς ής
|
||||
SFX M ής άς ής
|
||||
SFX M ής ὴς ής
|
||||
SFX M ής ὴν ής
|
||||
SFX M ής ὴ ής
|
||||
SFX M ής ὰ ής
|
||||
SFX M ής αὶ ής
|
||||
SFX M ής ὲς ής
|
||||
SFX M ής ὰς ής
|
||||
|
||||
|
||||
SFX l Y 9
|
||||
SFX l α ας α
|
||||
SFX l α αν α
|
||||
SFX l α αι α
|
||||
SFX l α ες α
|
||||
SFX l α ά α
|
||||
SFX l α άς α
|
||||
SFX l α άν α
|
||||
SFX l α αί α
|
||||
SFX l α ές α
|
||||
|
||||
SFX m Y 3
|
||||
SFX m ης ῃ ης
|
||||
SFX m ης αις ης
|
||||
SFX m ης ας ης
|
||||
|
||||
SFX ψ Y 7
|
||||
SFX ψ α αν α
|
||||
SFX ψ α αι α
|
||||
SFX ψ α ες α
|
||||
SFX ψ α ά α
|
||||
SFX ψ α άν α
|
||||
SFX ψ α αί α
|
||||
SFX ψ α ές α
|
||||
|
||||
SFX n Y 4
|
||||
SFX n α ας α
|
||||
SFX n α ᾳ α
|
||||
SFX n α αν α
|
||||
SFX n α αις α
|
||||
|
||||
SFX h Y 9
|
||||
SFX h α ας α
|
||||
SFX h α αν α
|
||||
SFX h α αι α
|
||||
SFX h α ες α
|
||||
SFX h α ά α
|
||||
SFX h α άς α
|
||||
SFX h α άν α
|
||||
SFX h α αί α
|
||||
SFX h α ές α
|
||||
|
||||
SFX g Y 2
|
||||
SFX g ας ᾳ ας
|
||||
SFX g ας αις ας
|
||||
|
||||
SFX e Y 13
|
||||
SFX e ά ᾶς ά
|
||||
SFX e ά ᾷ ά
|
||||
SFX e ά άν ά
|
||||
SFX e ά αί ά
|
||||
SFX e ά ές ά
|
||||
SFX e ά ῶν ά
|
||||
SFX e ά αῖς ά
|
||||
SFX e ά άς ά
|
||||
SFX e ά ὰ ά
|
||||
SFX e ά ὰν ά
|
||||
SFX e ά αὶ ά
|
||||
SFX e ά ὲς ά
|
||||
SFX e ά ὰς ά
|
||||
|
||||
SFX d Y 5
|
||||
SFX d η ης η
|
||||
SFX d η ῃ η
|
||||
SFX d η ην η
|
||||
SFX d η αις η
|
||||
SFX d η ας η
|
||||
|
||||
SFX c Y 1
|
||||
SFX c αι ες αι
|
||||
|
||||
|
||||
SFX L Y 13
|
||||
SFX L ή ῆς ή
|
||||
SFX L ή ῇ ή
|
||||
SFX L ή ήν ή
|
||||
SFX L ή αί ή
|
||||
SFX L ή ές ή
|
||||
SFX L ή ῶν ή
|
||||
SFX L ή αῖς ή
|
||||
SFX L ή άς ή
|
||||
SFX L ή ὴ ή
|
||||
SFX L ή ὴν ή
|
||||
SFX L ή αὶ ή
|
||||
SFX L ή ὲς ή
|
||||
SFX L ή ὰς ή
|
||||
|
||||
SFX b Y 7
|
||||
SFX b ή ῆς ή
|
||||
SFX b ή ήν ή
|
||||
SFX b ή ῶν ή
|
||||
SFX b ή ές ή
|
||||
SFX b ή ὴ ή
|
||||
SFX b ή ὴν ή
|
||||
SFX b ή ὲς ή
|
||||
|
||||
|
||||
SFX G Y 7
|
||||
SFX G ί ιοῦ ί
|
||||
SFX G ί άκι ί
|
||||
SFX G ί ιά ί
|
||||
SFX G ί ιῶν ί
|
||||
SFX G ί άκια ί
|
||||
SFX G ί ὶ ί
|
||||
SFX G ί ιὰ ί
|
||||
|
||||
SFX H Y 13
|
||||
SFX H ίον ίου ίον
|
||||
SFX H ίον ίῳ ίον
|
||||
SFX H ίον ί ίον
|
||||
SFX H ίον ιοῦ ίον
|
||||
SFX H ίον άκι ίον
|
||||
SFX H ίον ία ίον
|
||||
SFX H ίον ίων ίον
|
||||
SFX H ίον ίοις ίον
|
||||
SFX H ίον ιά ίον
|
||||
SFX H ίον ιῶν ίον
|
||||
SFX H ίον άκια ίον
|
||||
SFX H ίον ὶ ίον
|
||||
SFX H ίον ιὰ ίον
|
||||
|
||||
SFX V Y 9
|
||||
SFX V ις ιν ις
|
||||
SFX V ις ι ις
|
||||
SFX V ις η ις
|
||||
SFX V ις ης ις
|
||||
SFX V ις ίς ις
|
||||
SFX V ις ίν ις
|
||||
SFX V ις ί ις
|
||||
SFX V ις ή ις
|
||||
SFX V ις ής ις
|
||||
|
||||
SFX u Y 2
|
||||
SFX u ις ιν ις
|
||||
SFX u ις ι ις
|
||||
|
||||
SFX α Y 2
|
||||
SFX α εως η εως
|
||||
SFX α εως ης εως
|
||||
|
||||
SFX v Y 9
|
||||
SFX v εως ει εως
|
||||
SFX v εως εις εως
|
||||
SFX v εως εων εως
|
||||
SFX v εως εσι εως
|
||||
SFX v εως εσιν εως
|
||||
SFX v εως εώς εως
|
||||
SFX v εως εών εως
|
||||
SFX v εως εσί εως
|
||||
SFX v εως εσίν εως
|
||||
|
||||
SFX ξ Y 9
|
||||
SFX ξ τος τι τος
|
||||
SFX ξ τος τα τος
|
||||
SFX ξ τος σι τος
|
||||
SFX ξ τος σιν τος
|
||||
SFX ξ τος τός τος
|
||||
SFX ξ τος τί τος
|
||||
SFX ξ τος τά τος
|
||||
SFX ξ τος σί τος
|
||||
SFX ξ τος σίν τος
|
||||
|
||||
SFX σ Y 3
|
||||
SFX σ ος α ος
|
||||
SFX σ ος ός ος
|
||||
SFX σ ος ά ος
|
||||
|
||||
SFX π Y 1
|
||||
SFX π ι ια ι
|
||||
|
||||
SFX Q Y 11
|
||||
SFX Q ων οντος ων
|
||||
SFX Q ων οντι ων
|
||||
SFX Q ων οντα ων
|
||||
SFX Q ων οντες ων
|
||||
SFX Q ων ουσι ων
|
||||
SFX Q ων ουσιν ων
|
||||
SFX Q ων ουσα ων
|
||||
SFX Q ων ουσας ων
|
||||
SFX Q ων ουσαν ων
|
||||
SFX Q ων ουσαι ων
|
||||
SFX Q ων ουσες ων
|
||||
|
||||
SFX q Y 5
|
||||
SFX q όντων ούσης όντων
|
||||
SFX q όντων ούσῃ όντων
|
||||
SFX q όντων ούσαις όντων
|
||||
SFX q όντων ούσας όντων
|
||||
SFX q όντων ουσῶν όντων
|
||||
|
||||
SFX S Y 10
|
||||
SFX S ας αντος ας
|
||||
SFX S ας αντι ας
|
||||
SFX S ας αντα ας
|
||||
SFX S ας αντες ας
|
||||
SFX S ας ασι ας
|
||||
SFX S ας ασιν ας
|
||||
SFX S ας ασα ας
|
||||
SFX S ας ασαν ας
|
||||
SFX S ας ασαι ας
|
||||
SFX S ας ασες ας
|
||||
|
||||
SFX s Y 5
|
||||
SFX s άντων άσης άντων
|
||||
SFX s άντων άσῃ άντων
|
||||
SFX s άντων άσαις άντων
|
||||
SFX s άντων άσας άντων
|
||||
SFX s άντων ασῶν άντων
|
||||
|
||||
SFX U Y 20
|
||||
SFX U ώς ὼς ώς
|
||||
SFX U ώς ότος ώς
|
||||
SFX U ώς ότι ώς
|
||||
SFX U ώς ότα ώς
|
||||
SFX U ώς ότες ώς
|
||||
SFX U ώς ότων ώς
|
||||
SFX U ώς όσι ώς
|
||||
SFX U ώς όσιν ώς
|
||||
SFX U ώς ότας ώς
|
||||
SFX U ώς υῖα ώς
|
||||
SFX U ώς υίας ώς
|
||||
SFX U ώς υίᾳ ώς
|
||||
SFX U ώς υῖαν ώς
|
||||
SFX U ώς υῖαι ώς
|
||||
SFX U ώς υιῶν ώς
|
||||
SFX U ώς υίαις ώς
|
||||
SFX U ώς υίας ώς
|
||||
SFX U ώς ός ώς
|
||||
SFX U ώς ὸς ώς
|
||||
SFX U ώς ότα ώς
|
||||
|
||||
SFX O Y 24
|
||||
SFX O ος ου ος
|
||||
SFX O ος ού ος
|
||||
SFX O ος ον ος
|
||||
SFX O ος όν ος
|
||||
SFX O ος ε ος
|
||||
SFX O ος έ ος
|
||||
SFX O ος οι ος
|
||||
SFX O ος οί ος
|
||||
SFX O ος ων ος
|
||||
SFX O ος ών ος
|
||||
SFX O ος ους ος
|
||||
SFX O ος ούς ος
|
||||
SFX O ος η ος
|
||||
SFX O ος ή ος
|
||||
SFX O ος ης ος
|
||||
SFX O ος ής ος
|
||||
SFX O ος αι ος
|
||||
SFX O ος αί ος
|
||||
SFX O ος ες ος
|
||||
SFX O ος ές ος
|
||||
SFX O ος ο ος
|
||||
SFX O ος ό ος
|
||||
SFX O ος α ος
|
||||
SFX O ος ά ος
|
||||
|
||||
SFX o Y 10
|
||||
SFX o ου ῳ ου
|
||||
SFX o ου ων ου
|
||||
SFX o ου οις ου
|
||||
SFX o ου ους ου
|
||||
SFX o ου η ου
|
||||
SFX o ου ης ου
|
||||
SFX o ου ῃ ου
|
||||
SFX o ου ην ου
|
||||
SFX o ου αις ου
|
||||
SFX o ου ας ου
|
||||
|
||||
SFX P Y 21
|
||||
SFX P είς εὶς είς
|
||||
SFX P είς έντος είς
|
||||
SFX P είς έντι είς
|
||||
SFX P είς έντα είς
|
||||
SFX P είς έντες είς
|
||||
SFX P είς έντων είς
|
||||
SFX P είς εῖσι είς
|
||||
SFX P είς εῖσιν είς
|
||||
SFX P είς έντας είς
|
||||
SFX P είς εῖσα είς
|
||||
SFX P είς είσης είς
|
||||
SFX P είς είσῃ είς
|
||||
SFX P είς εῖσαν είς
|
||||
SFX P είς εῖσαι είς
|
||||
SFX P είς εῖσες είς
|
||||
SFX P είς εισῶν είς
|
||||
SFX P είς είσαις είς
|
||||
SFX P είς είσας είς
|
||||
SFX P είς έν είς
|
||||
SFX P είς ὲν είς
|
||||
SFX P είς έντα είς
|
||||
|
||||
SFX N Y 19
|
||||
SFX N ος ου ος
|
||||
SFX N ος ῳ ος
|
||||
SFX N ος ον ος
|
||||
SFX N ος ο ος
|
||||
SFX N ος ε ος
|
||||
SFX N ος οι ος
|
||||
SFX N ος ων ος
|
||||
SFX N ος οις ος
|
||||
SFX N ος ους ος
|
||||
SFX N ος η ος
|
||||
SFX N ος ης ος
|
||||
SFX N ος ῃ ος
|
||||
SFX N ος ην ος
|
||||
SFX N ος αι ος
|
||||
SFX N ος ων ος
|
||||
SFX N ος αις ος
|
||||
SFX N ος ας ος
|
||||
SFX N ος ες ος
|
||||
SFX N ος α ος
|
||||
|
||||
SFX W Y 17
|
||||
SFX W ῶν οῦντος ῶν
|
||||
SFX W ῶν οῦντι ῶν
|
||||
SFX W ῶν οῦντα ῶν
|
||||
SFX W ῶν οῦντες ῶν
|
||||
SFX W ῶν ούντων ῶν
|
||||
SFX W ῶν οῦσι ῶν
|
||||
SFX W ῶν οῦσιν ῶν
|
||||
SFX W ῶν οῦντας ῶν
|
||||
SFX W ῶν οῦσα ῶν
|
||||
SFX W ῶν ούσης ῶν
|
||||
SFX W ῶν ούσῃ ῶν
|
||||
SFX W ῶν οῦσαν ῶν
|
||||
SFX W ῶν οῦσαι ῶν
|
||||
SFX W ῶν ουσῶν ῶν
|
||||
SFX W ῶν ούσαις ῶν
|
||||
SFX W ῶν ούσας ῶν
|
||||
SFX W ῶν οῦν ῶν
|
||||
|
||||
SFX w Y 17
|
||||
SFX w ῶν ῶντος ῶν
|
||||
SFX w ῶν ῶντι ῶν
|
||||
SFX w ῶν ῶντα ῶν
|
||||
SFX w ῶν ῶντες ῶν
|
||||
SFX w ῶν ώντων ῶν
|
||||
SFX w ῶν ῶσι ῶν
|
||||
SFX w ῶν ῶσιν ῶν
|
||||
SFX w ῶν ῶντας ῶν
|
||||
SFX w ῶν ῶσα ῶν
|
||||
SFX w ῶν ώσης ῶν
|
||||
SFX w ῶν ώσῃ ῶν
|
||||
SFX w ῶν ῶσαν ῶν
|
||||
SFX w ῶν ῶσαι ῶν
|
||||
SFX w ῶν ουσῶν ῶν
|
||||
SFX w ῶν ώσαις ῶν
|
||||
SFX w ῶν ώσας ῶν
|
||||
SFX w ῶν ῶν ῶν
|
||||
|
||||
SFX Σ Y 18
|
||||
SFX Σ ών όντος ών
|
||||
SFX Σ ών όντι ών
|
||||
SFX Σ ών όντα ών
|
||||
SFX Σ ών όντες ών
|
||||
SFX Σ ών όντων ών
|
||||
SFX Σ ών οῦσι ών
|
||||
SFX Σ ών οῦσιν ών
|
||||
SFX Σ ών όντας ών
|
||||
SFX Σ ών οῦσα ών
|
||||
SFX Σ ών ούσης ών
|
||||
SFX Σ ών ούσῃ ών
|
||||
SFX Σ ών οῦσαν ών
|
||||
SFX Σ ών οῦσαι ών
|
||||
SFX Σ ών ουσών ών
|
||||
SFX Σ ών ούσαις ών
|
||||
SFX Σ ών ούσας ών
|
||||
SFX Σ ών όν ών
|
||||
SFX Σ ών ὸν ών
|
||||
|
||||
SFX T Y 17
|
||||
SFX T ύς ύντος ύς
|
||||
SFX T ύς ύντι ύς
|
||||
SFX T ύς ύντα ύς
|
||||
SFX T ύς ύντες ύς
|
||||
SFX T ύς ύντων ύς
|
||||
SFX T ύς ῦσι ύς
|
||||
SFX T ύς ῦσιν ύς
|
||||
SFX T ύς ύντας ύς
|
||||
SFX T ύς ῦσα ύς
|
||||
SFX T ύς ύσης ύς
|
||||
SFX T ύς ύσῃ ύς
|
||||
SFX T ύς ῦσαν ύς
|
||||
SFX T ύς ῦσαι ύς
|
||||
SFX T ύς υσῶν ύς
|
||||
SFX T ύς ύσαις ύς
|
||||
SFX T ύς ύσας ύς
|
||||
SFX T ύς ύν ύς
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
Προϊόν: Πολυτονικὸς διορθωτὴς - συλλαβιστής "The Polytonic Project" 2.0.7
|
||||
Ἡμ. Ἐκδόσεως: 10/7/2016
|
||||
|
||||
License: GNU General Public License (τελευταία ἔκδοση)
|
||||
Ἐπικοινωνία: Α. Δεληγιάννη - The Polytonic Project - adeliyanni@yahoo.gr
|
||||
URL: http://www.thepolytonicproject.gr
|
||||
|
||||
Τὰ λεξιλογικὰ ἀρχεῖα ἔχουν συνταχθεῖ ἀπὸ τὴν Α. Δεληγιάννη τοῦ "The Polytonic Project" καὶ διανέμονται χωρὶς ἐγγύηση.
|
||||
Περισσότερες λεπτομέρειες γιὰ τὴν ἄδεια χρήσεως ὑπάρχουν στὸ κείμενο τῆς GNU General Public License.
|
||||
Θερμὲς εὐχαριστίες στοὺς κ. κ. Ε. Κριτσίνη καὶ Δ. Μπλέτσα γιὰ προτάσεις λέξεων.
|
||||
Ἐπίσης στοὺς χρῆστες ποὺ κατὰ καιροὺς ἐπισημαίνουν ἐλλείψεις καὶ λάθη.
|
||||
|
||||
Ὁ συλλαβισμὸς βασίζεται στὸ xetex-greek – Hyphenation for different variants of Greek, under xetex
|
||||
ποὺ διανέμεται μὲ ἄδεια χρήσεως LPPL καὶ συντηρεῖται ἀπὸ τὸν Α. Συρόπουλο.
|
||||
Περισσότερα στὸ http://ctan.org/tex-archive/macros/xetex/hyphenation/greek/
|
||||
Οι χρησιμοποιούμενοι κανόνες συλλαβισμοῦ προέρχονται ἀπὸ τὶς σχετικὲς ἐργασίες τοῦ Δ. Φιλίππου.
|
||||
|
||||
Σχετικὰ μὲ τὸ περιεχόμενο τοῦ λεξικοῦ:
|
||||
|
||||
Ἡ τελευταία ἔκδοση τοῦ λεξικοῦ περιλαμβάνει 26.180 λήμματα, προερχόμενα ἀπὸ σύγχρονα καὶ παλαιότερα κείμενα.
|
||||
Ὡς πρὸς τὴν πρώτη ἔκδοση περιέχει τὶς ἑξῆς βελτιώσεις:
|
||||
περὶ τὰ 3.000 περισσότερα λήμματα
|
||||
Διόρθωση σφαλμάτων
|
||||
Μικρότερο μέγεθος ἀρχείου .dic
|
||||
|
||||
Τὸ λεξικὸ καλύπτει τύπους τῆς δημοτικῆς, λογίας καὶ κατὰ περίπτωσιν ἀρχαΐζουσας γλώσσας.
|
||||
Γιὰ μεγαλύτερη ἐλευθερία τοῦ χρήστη περιλαμβάνονται τόσον οἱ σύγχρονες, ὅσο καὶ παλαιότερες ὀρθογραφίες, π.χ., "νεότερος" καὶ "νεώτερος".
|
||||
Ἀκολουθοῦνται οἱ κανόνες τοῦ ἱστορικοῦ τονισμοῦ τῆς ἑλληνικῆς. Ἔτσι, π.χ., ἡ λέξη "γλῶσσα" περισπᾶται, ἡ μετοχή "ἀγαπῶντας" περισπᾶται ὡς τύπος συνηρημένου ρήματος, κλπ.
|
||||
|
||||
Τὸ λεξικὸ συνεχίζει νὰ ἐμπλουτίζεται μὲ τὴν βοήθεια καὶ τῶν συνεργατῶν καὶ φίλων τοῦ The Polytonic Project.
|
||||
Συνιστᾶται ἡ ἀνανέωση τῆς ἐγκατάστασης μὲ τὶς καινούργιες ἐκδόσεις.
|
||||
|
||||
Διαφορὲς ἐκδόσεως 2.0.2 ἀπὸ 2.0.1:
|
||||
Συμπλήρωση ὁρισμένων τύπων μετοχῶν ρημάτων.
|
||||
Προσθήκη 328 λημμάτων στὸ λεξικό, σύνολον 25.873 λήμματα
|
||||
|
||||
Διαφορὲς ἐκδόσεως 2.0.4 ἀπὸ 2.0.2:
|
||||
Διορθώσεις σὲ ὁρισμενους τύπους μετοχῶν ρημάτων.
|
||||
Προσθήκη 179 λημμάτων στὸ λεξικό, σύνολον 26.052 λήμματα
|
||||
|
||||
Ἔκδοση 2.0.5: Μία διόρθωση καὶ 44 λέξεις ἐπὶ πλέον
|
||||
Ἔκδοση 2.0.6: Μία διόρθωση καὶ 26.160 λέξεις.
|
||||
|
||||
Ἔκδοση 2.0.7: Πολυτονικὸς συλλαβιστής.
|
||||
@@ -0,0 +1,820 @@
|
||||
# el_GR.aff
|
||||
# greek affix file
|
||||
# for MySpell (pspell)
|
||||
# GPL
|
||||
#
|
||||
#
|
||||
# LOG etc:
|
||||
# --------
|
||||
# Minor errors detected by Kevin Hendricks <kevin.hendricks@sympatico.ca>
|
||||
# and corrected by me 08/06/02 (evris)
|
||||
#
|
||||
# Fix the TRY order to be more useful. Added character mappings so the vowels
|
||||
# that have the same pronunciation be closely related to each other. Added a
|
||||
# replacement table to better describe the phonetic rules. 13/05/2004 (steve)
|
||||
#
|
||||
# Added 59 REP rules and one more letter for the TRY (patch by Nick Demou)
|
||||
#
|
||||
# Removed some REP rules and added some more (Nick Demou)
|
||||
#
|
||||
# Steve Stavropoulos <steve@math.upatras.gr> 01/05/2004
|
||||
#
|
||||
# Based on an older job :
|
||||
# Papakostas Evripidis evris@source.gr ep@rocketmail.com 27/01/02
|
||||
# Vryonis Panayotis vrypan@yassou.net 27/01/02
|
||||
#
|
||||
# Based on an older job :
|
||||
# greek.aff file
|
||||
# for ispell
|
||||
# Papakostas Evripidis evris@source.gr ep@rocketmail.com 1999
|
||||
#
|
||||
# Based on an older job :
|
||||
# ellhnika.aff for Greek language by Μήταλας Γιάννης and Σερασκέρης Νίκος
|
||||
# Καρλόβασι, Σάμος ,24-9-97
|
||||
|
||||
SET UTF-8
|
||||
# You are likely to forget the accent, so accented characters come first. If
|
||||
# you don't forget the accent, this order won't do any harm because it is higly
|
||||
# unlikely for a word that differs in one accented char plus some other mistake
|
||||
# to pop up in the possible suggestions (there has to be a closer match granted
|
||||
# that the word you are looking for exists).
|
||||
TRY άόίϊΐέήύϋΰώιηυωοεατνρσκμπλςγδθφβζξψχ
|
||||
|
||||
MAP 5
|
||||
MAP αά
|
||||
MAP εέ
|
||||
MAP ωώοό
|
||||
MAP ηήύϋυιίϊΐ
|
||||
MAP σς
|
||||
|
||||
# Do we have to put the accented characters in here or the MAP above is enough?
|
||||
# ANSWER: Looks like it is not! Maybe the map is only useful for the
|
||||
# suggestion order...
|
||||
#
|
||||
# Because of the automatic generation of the following REP there are some
|
||||
# combinations of letters that the greek language never uses, but I don't
|
||||
# think they will do any harm.
|
||||
REP 522
|
||||
REP α ά
|
||||
REP ά α
|
||||
REP γκ γγ
|
||||
REP γγ γκ
|
||||
REP πσ ψ
|
||||
REP ψ πσ
|
||||
REP κσ ξ
|
||||
REP ξ κσ
|
||||
REP άΰ άβ
|
||||
REP άΰ άυ
|
||||
REP άΰ άϋ
|
||||
REP άΰ αΰ
|
||||
REP άΰ αβ
|
||||
REP άΰ αυ
|
||||
REP άΰ αϋ
|
||||
REP άΰ αύ
|
||||
REP άβ άυ
|
||||
REP άβ άϋ
|
||||
REP άβ αΰ
|
||||
REP άβ αβ
|
||||
REP άβ αυ
|
||||
REP άβ αϋ
|
||||
REP άβ αύ
|
||||
REP άυ άβ
|
||||
REP άυ άϋ
|
||||
REP άυ αΰ
|
||||
REP άυ αβ
|
||||
REP άυ αυ
|
||||
REP άυ αϋ
|
||||
REP άυ αύ
|
||||
REP άϋ άβ
|
||||
REP άϋ άυ
|
||||
REP άϋ αΰ
|
||||
REP άϋ αβ
|
||||
REP άϋ αυ
|
||||
REP άϋ αϋ
|
||||
REP άϋ αύ
|
||||
REP άύ άβ
|
||||
REP άύ άυ
|
||||
REP άύ άϋ
|
||||
REP άύ αΰ
|
||||
REP άύ αβ
|
||||
REP άύ αυ
|
||||
REP άύ αϋ
|
||||
REP άύ αύ
|
||||
REP αΰ άβ
|
||||
REP αΰ άυ
|
||||
REP αΰ άϋ
|
||||
REP αΰ αβ
|
||||
REP αΰ αυ
|
||||
REP αΰ αϋ
|
||||
REP αΰ αύ
|
||||
REP αβ άβ
|
||||
REP αβ άυ
|
||||
REP αβ άϋ
|
||||
REP αβ αΰ
|
||||
REP αβ αυ
|
||||
REP αβ αϋ
|
||||
REP αβ αύ
|
||||
REP αυ άβ
|
||||
REP αυ άυ
|
||||
REP αυ άϋ
|
||||
REP αυ αΰ
|
||||
REP αυ αβ
|
||||
REP αυ αϋ
|
||||
REP αυ αύ
|
||||
REP αϋ άβ
|
||||
REP αϋ άυ
|
||||
REP αϋ άϋ
|
||||
REP αϋ αΰ
|
||||
REP αϋ αβ
|
||||
REP αϋ αυ
|
||||
REP αϋ αύ
|
||||
REP αύ άβ
|
||||
REP αύ άυ
|
||||
REP αύ άϋ
|
||||
REP αύ αΰ
|
||||
REP αύ αβ
|
||||
REP αύ αυ
|
||||
REP αύ αϋ
|
||||
REP ι ί
|
||||
REP ί ι
|
||||
REP ι ϊ
|
||||
REP ϊ ι
|
||||
REP ι ΐ
|
||||
REP ΐ ι
|
||||
REP ι η
|
||||
REP η ι
|
||||
REP ι ή
|
||||
REP ή ι
|
||||
REP ι υ
|
||||
REP υ ι
|
||||
REP ι ύ
|
||||
REP ύ ι
|
||||
REP ι ϋ
|
||||
REP ϋ ι
|
||||
REP ι ΰ
|
||||
REP ΰ ι
|
||||
REP ί ϊ
|
||||
REP ϊ ί
|
||||
REP ί ΐ
|
||||
REP ΐ ί
|
||||
REP ί η
|
||||
REP η ί
|
||||
REP ί ή
|
||||
REP ή ί
|
||||
REP ί υ
|
||||
REP υ ί
|
||||
REP ί ύ
|
||||
REP ύ ί
|
||||
REP ί ϋ
|
||||
REP ϋ ί
|
||||
REP ί ΰ
|
||||
REP ΰ ί
|
||||
REP ϊ ΐ
|
||||
REP ΐ ϊ
|
||||
REP ϊ η
|
||||
REP η ϊ
|
||||
REP ϊ ή
|
||||
REP ή ϊ
|
||||
REP ϊ υ
|
||||
REP υ ϊ
|
||||
REP ϊ ύ
|
||||
REP ύ ϊ
|
||||
REP ϊ ϋ
|
||||
REP ϋ ϊ
|
||||
REP ϊ ΰ
|
||||
REP ΰ ϊ
|
||||
REP ΐ η
|
||||
REP η ΐ
|
||||
REP ΐ ή
|
||||
REP ή ΐ
|
||||
REP ΐ υ
|
||||
REP υ ΐ
|
||||
REP ΐ ύ
|
||||
REP ύ ΐ
|
||||
REP ΐ ϋ
|
||||
REP ϋ ΐ
|
||||
REP ΐ ΰ
|
||||
REP ΰ ΐ
|
||||
REP η ή
|
||||
REP ή η
|
||||
REP η υ
|
||||
REP υ η
|
||||
REP η ύ
|
||||
REP ύ η
|
||||
REP η ϋ
|
||||
REP ϋ η
|
||||
REP η ΰ
|
||||
REP ΰ η
|
||||
REP ή υ
|
||||
REP υ ή
|
||||
REP ή ύ
|
||||
REP ύ ή
|
||||
REP ή ϋ
|
||||
REP ϋ ή
|
||||
REP ή ΰ
|
||||
REP ΰ ή
|
||||
REP υ ύ
|
||||
REP ύ υ
|
||||
REP υ ϋ
|
||||
REP ϋ υ
|
||||
REP υ ΰ
|
||||
REP ΰ υ
|
||||
REP ύ ϋ
|
||||
REP ϋ ύ
|
||||
REP ύ ΰ
|
||||
REP ΰ ύ
|
||||
REP ϋ ΰ
|
||||
REP ΰ ϋ
|
||||
REP ο ό
|
||||
REP ό ο
|
||||
REP ο ω
|
||||
REP ω ο
|
||||
REP ο ώ
|
||||
REP ώ ο
|
||||
REP ό ω
|
||||
REP ω ό
|
||||
REP ό ώ
|
||||
REP ώ ό
|
||||
REP ω ώ
|
||||
REP ώ ω
|
||||
REP έΰ έβ
|
||||
REP έΰ έυ
|
||||
REP έΰ έϋ
|
||||
REP έΰ εΰ
|
||||
REP έΰ εβ
|
||||
REP έΰ ευ
|
||||
REP έΰ εϋ
|
||||
REP έΰ εύ
|
||||
REP έβ έυ
|
||||
REP έβ έϋ
|
||||
REP έβ εΰ
|
||||
REP έβ εβ
|
||||
REP έβ ευ
|
||||
REP έβ εϋ
|
||||
REP έβ εύ
|
||||
REP έυ έβ
|
||||
REP έυ έϋ
|
||||
REP έυ εΰ
|
||||
REP έυ εβ
|
||||
REP έυ ευ
|
||||
REP έυ εϋ
|
||||
REP έυ εύ
|
||||
REP έϋ έβ
|
||||
REP έϋ έυ
|
||||
REP έϋ εΰ
|
||||
REP έϋ εβ
|
||||
REP έϋ ευ
|
||||
REP έϋ εϋ
|
||||
REP έϋ εύ
|
||||
REP έύ έβ
|
||||
REP έύ έυ
|
||||
REP έύ έϋ
|
||||
REP έύ εΰ
|
||||
REP έύ εβ
|
||||
REP έύ ευ
|
||||
REP έύ εϋ
|
||||
REP έύ εύ
|
||||
REP εΰ έβ
|
||||
REP εΰ έυ
|
||||
REP εΰ έϋ
|
||||
REP εΰ εβ
|
||||
REP εΰ ευ
|
||||
REP εΰ εϋ
|
||||
REP εΰ εύ
|
||||
REP εβ έβ
|
||||
REP εβ έυ
|
||||
REP εβ έϋ
|
||||
REP εβ εΰ
|
||||
REP εβ ευ
|
||||
REP εβ εϋ
|
||||
REP εβ εύ
|
||||
REP ευ έβ
|
||||
REP ευ έυ
|
||||
REP ευ έϋ
|
||||
REP ευ εΰ
|
||||
REP ευ εβ
|
||||
REP ευ εϋ
|
||||
REP ευ εύ
|
||||
REP εϋ έβ
|
||||
REP εϋ έυ
|
||||
REP εϋ έϋ
|
||||
REP εϋ εΰ
|
||||
REP εϋ εβ
|
||||
REP εϋ ευ
|
||||
REP εϋ εύ
|
||||
REP εύ έβ
|
||||
REP εύ έυ
|
||||
REP εύ έϋ
|
||||
REP εύ εΰ
|
||||
REP εύ εβ
|
||||
REP εύ ευ
|
||||
REP εύ εϋ
|
||||
REP έΐ έι
|
||||
REP έΐ έϊ
|
||||
REP έΐ εΐ
|
||||
REP έΐ εί
|
||||
REP έΐ ει
|
||||
REP έΐ εϊ
|
||||
REP έί έι
|
||||
REP έί έϊ
|
||||
REP έί εΐ
|
||||
REP έί εί
|
||||
REP έί ει
|
||||
REP έί εϊ
|
||||
REP έι έϊ
|
||||
REP έι εΐ
|
||||
REP έι εί
|
||||
REP έι ει
|
||||
REP έι εϊ
|
||||
REP έϊ έι
|
||||
REP έϊ εΐ
|
||||
REP έϊ εί
|
||||
REP έϊ ει
|
||||
REP έϊ εϊ
|
||||
REP εΐ έι
|
||||
REP εΐ έϊ
|
||||
REP εΐ εί
|
||||
REP εΐ ει
|
||||
REP εΐ εϊ
|
||||
REP εί έι
|
||||
REP εί έϊ
|
||||
REP εί εΐ
|
||||
REP εί ει
|
||||
REP εί εϊ
|
||||
REP ει έι
|
||||
REP ει έϊ
|
||||
REP ει εΐ
|
||||
REP ει εί
|
||||
REP ει εϊ
|
||||
REP εϊ έι
|
||||
REP εϊ έϊ
|
||||
REP εϊ εΐ
|
||||
REP εϊ εί
|
||||
REP εϊ ει
|
||||
REP άΐ άι
|
||||
REP άΐ άϊ
|
||||
REP άΐ αΐ
|
||||
REP άΐ αί
|
||||
REP άΐ αι
|
||||
REP άΐ αϊ
|
||||
REP άί άι
|
||||
REP άί άϊ
|
||||
REP άί αΐ
|
||||
REP άί αί
|
||||
REP άί αι
|
||||
REP άί αϊ
|
||||
REP άι άϊ
|
||||
REP άι αΐ
|
||||
REP άι αί
|
||||
REP άι αι
|
||||
REP άι αϊ
|
||||
REP άϊ άι
|
||||
REP άϊ αΐ
|
||||
REP άϊ αί
|
||||
REP άϊ αι
|
||||
REP άϊ αϊ
|
||||
REP αΐ άι
|
||||
REP αΐ άϊ
|
||||
REP αΐ αί
|
||||
REP αΐ αι
|
||||
REP αΐ αϊ
|
||||
REP αί άι
|
||||
REP αί άϊ
|
||||
REP αί αΐ
|
||||
REP αί αι
|
||||
REP αί αϊ
|
||||
REP αι άι
|
||||
REP αι άϊ
|
||||
REP αι αΐ
|
||||
REP αι αί
|
||||
REP αι αϊ
|
||||
REP αϊ άι
|
||||
REP αϊ άϊ
|
||||
REP αϊ αΐ
|
||||
REP αϊ αί
|
||||
REP αϊ αι
|
||||
REP άί έ
|
||||
REP άί ε
|
||||
REP άι έ
|
||||
REP άι ε
|
||||
REP έ άι
|
||||
REP έ αΐ
|
||||
REP έ αί
|
||||
REP έ αι
|
||||
REP έ αϊ
|
||||
REP έ ε
|
||||
REP αΐ έ
|
||||
REP αΐ ε
|
||||
REP αί έ
|
||||
REP αί ε
|
||||
REP αι έ
|
||||
REP αι ε
|
||||
REP αϊ έ
|
||||
REP αϊ ε
|
||||
REP ε άι
|
||||
REP ε έ
|
||||
REP ε αΐ
|
||||
REP ε αί
|
||||
REP ε αι
|
||||
REP ε αϊ
|
||||
REP ή ει
|
||||
REP ή οι
|
||||
REP ί ει
|
||||
REP ί οι
|
||||
REP εί η
|
||||
REP εί ι
|
||||
REP εί οι
|
||||
REP εί υ
|
||||
REP εί ή
|
||||
REP εί ί
|
||||
REP εί οί
|
||||
REP εί ύ
|
||||
REP ει ή
|
||||
REP ει ί
|
||||
REP ει η
|
||||
REP ει ι
|
||||
REP ει οί
|
||||
REP ει οι
|
||||
REP ει υ
|
||||
REP ει ύ
|
||||
REP η εί
|
||||
REP η ει
|
||||
REP η οί
|
||||
REP η οι
|
||||
REP ηβ ηυ
|
||||
REP ηυ ηβ
|
||||
REP ι εί
|
||||
REP ι ει
|
||||
REP ι οί
|
||||
REP ι οι
|
||||
REP κ κκ
|
||||
REP κκ κ
|
||||
REP λ λλ
|
||||
REP λλ λ
|
||||
REP μ μμ
|
||||
REP μμ μ
|
||||
REP οί ει
|
||||
REP οί η
|
||||
REP οί ι
|
||||
REP οί υ
|
||||
REP οι ή
|
||||
REP οι ί
|
||||
REP οι εί
|
||||
REP οι ει
|
||||
REP οι η
|
||||
REP οι ι
|
||||
REP οι υ
|
||||
REP οι ύ
|
||||
REP π ππ
|
||||
REP ππ π
|
||||
REP ρ ρρ
|
||||
REP ρρ ρ
|
||||
REP σ σσ
|
||||
REP σσ σ
|
||||
REP τ ττ
|
||||
REP ττ τ
|
||||
REP υ εί
|
||||
REP υ ει
|
||||
REP υ οί
|
||||
REP υ οι
|
||||
REP ύ ει
|
||||
REP ύ οι
|
||||
REP αυ αφ
|
||||
REP άυ αφ
|
||||
REP αύ αφ
|
||||
REP αυ άφ
|
||||
REP άυ άφ
|
||||
REP αύ άφ
|
||||
REP αφ αυ
|
||||
REP άφ αυ
|
||||
REP αφ αύ
|
||||
REP άφ αύ
|
||||
REP άφ αφ
|
||||
REP αφ άφ
|
||||
REP έι η
|
||||
REP έι ή
|
||||
REP έι ι
|
||||
REP έι ί
|
||||
REP ει ϊ
|
||||
REP έι ϊ
|
||||
REP εί ϊ
|
||||
REP ει ΐ
|
||||
REP έι ΐ
|
||||
REP εί ΐ
|
||||
REP έι οι
|
||||
REP έι οί
|
||||
REP έι υ
|
||||
REP έι ύ
|
||||
REP ει ϋ
|
||||
REP έι ϋ
|
||||
REP εί ϋ
|
||||
REP ει ΰ
|
||||
REP έι ΰ
|
||||
REP εί ΰ
|
||||
REP ευ εφ
|
||||
REP έυ εφ
|
||||
REP εύ εφ
|
||||
REP ευ έφ
|
||||
REP έυ έφ
|
||||
REP εύ έφ
|
||||
REP εφ ευ
|
||||
REP έφ ευ
|
||||
REP εφ εύ
|
||||
REP έφ εύ
|
||||
REP έφ εφ
|
||||
REP εφ έφ
|
||||
REP ή εί
|
||||
REP ή οί
|
||||
REP ϊ ει
|
||||
REP ΐ ει
|
||||
REP ί εί
|
||||
REP ϊ εί
|
||||
REP ΐ εί
|
||||
REP ϊ οι
|
||||
REP ΐ οι
|
||||
REP ί οί
|
||||
REP ϊ οί
|
||||
REP ΐ οί
|
||||
REP όι ει
|
||||
REP όι εί
|
||||
REP οί εί
|
||||
REP όι η
|
||||
REP όι ή
|
||||
REP οί ή
|
||||
REP όι ι
|
||||
REP όι ί
|
||||
REP οί ί
|
||||
REP οι ϊ
|
||||
REP όι ϊ
|
||||
REP οί ϊ
|
||||
REP οι ΐ
|
||||
REP όι ΐ
|
||||
REP οί ΐ
|
||||
REP όι οι
|
||||
REP οί οι
|
||||
REP οι οί
|
||||
REP όι οί
|
||||
REP όι υ
|
||||
REP όι ύ
|
||||
REP οί ύ
|
||||
REP οι ϋ
|
||||
REP όι ϋ
|
||||
REP οί ϋ
|
||||
REP οι ΰ
|
||||
REP όι ΰ
|
||||
REP οί ΰ
|
||||
REP όυ ου
|
||||
REP ού ου
|
||||
REP ου ού
|
||||
REP όυ ού
|
||||
REP ϋ ει
|
||||
REP ΰ ει
|
||||
REP ύ εί
|
||||
REP ϋ εί
|
||||
REP ΰ εί
|
||||
REP ϋ οι
|
||||
REP ΰ οι
|
||||
REP ύ οί
|
||||
REP ϋ οί
|
||||
REP ΰ οί
|
||||
|
||||
# prefix rules
|
||||
|
||||
|
||||
PFX A Y 1
|
||||
PFX A 0 α . # βάσιμος > αβάσιμος
|
||||
|
||||
PFX B Y 1
|
||||
PFX B 0 ξανα . # ζητώ > ξαναζητώ
|
||||
|
||||
PFX C Y 1
|
||||
PFX C 0 απο . # σύνθεση > αποσύνθεση
|
||||
|
||||
PFX D Y 1
|
||||
PFX D 0 κατα . # στροφή > καταστροφή
|
||||
|
||||
PFX E Y 1
|
||||
PFX E 0 παρα . # βλέπω > παραβλέπω
|
||||
|
||||
|
||||
# suffix rules
|
||||
|
||||
SFX F Y 4
|
||||
SFX F ώ ά . # αγαπώ > αγαπά
|
||||
SFX F ός ά . # καλός > καλά
|
||||
SFX F ό ά . # βουνό > βουνά
|
||||
SFX F άς ά . # σφουγγαράς > σφουγγαρά
|
||||
|
||||
SFX G Y 7
|
||||
SFX G ώ άς . # αγαπώ > αγαπάς
|
||||
SFX G 0 ς ά # καρδιά > καρδιάς
|
||||
SFX G ός ού . # ουρανός > ουρανού
|
||||
SFX G ό ού . # βουνό > βουνού
|
||||
SFX G ούς ού . # παππούς > παππού
|
||||
SFX G ω εις . # δένω > δένεις
|
||||
SFX G η εις . # σκέψη > σκέψεις
|
||||
|
||||
SFX H Y 3
|
||||
SFX H 0 ς [ώω] # Αργυρώ > Αργυρώς Δέσπω > Δέσπως
|
||||
SFX H ός ώς . # καλός > καλώς τελευταίος τελευταίως
|
||||
SFX H ής ώς . # # συνεχής > συνεχώς
|
||||
|
||||
SFX I Y 5
|
||||
SFX I ώ είς . # αγαπηθώ > αγαπηθείς
|
||||
SFX I ος α . # ωραίος > ωραία
|
||||
SFX I ο α . # βιβλίο > βιβλία
|
||||
SFX I ης α . # ζηλιάρης > ζηλιάρα
|
||||
SFX I ας α . # αγώνας > αγώνα
|
||||
|
||||
SFX J Y 5
|
||||
SFX J ώ εί . # αγαπηθώ > αγαπηθεί
|
||||
SFX J ός έ . # ουρανός > ουρανέ
|
||||
SFX J ές έ . # καφές > καφέ
|
||||
SFX J ύς ιούς . # βαθύς > βαθιούς
|
||||
SFX J ω οντας . # δένω > δένοντας
|
||||
|
||||
SFX K Y 4
|
||||
SFX K ώ ούμε . # αγαπώ > αγαπούμε
|
||||
SFX K ός οί . # ουρανός > ουρανοί
|
||||
SFX K ές έδες . # καφές > καφέδες
|
||||
SFX K 0 ς η # νίκη > νίκης
|
||||
|
||||
SFX L Y 5
|
||||
SFX L ός ών . # ουρανός > ουρανών
|
||||
SFX L ής ών . # νικητής > νικητών
|
||||
SFX L ά ών . # καρδιά > καρδιών
|
||||
SFX L ή ών . # ψυχή > ψυχών
|
||||
SFX L ό ών . # βουνό > βουνών
|
||||
|
||||
SFX M Y 4
|
||||
SFX M ώ ούν . # αγαπώ > αγαπούν
|
||||
SFX M ός ούς . # ουρανός > ουρανούς
|
||||
SFX M ώς ώτων . # καθεστώς > καθεστώτων
|
||||
SFX M ί ιού . # πουλί > πουλιού
|
||||
|
||||
SFX N Y 5
|
||||
SFX N ούς ούδων . # παππούς > παππούδων
|
||||
SFX N ας ες . # αγώνας > αγώνες
|
||||
SFX N α ες . # ώρα > ώρες
|
||||
SFX N η ες . # νίκη > νίκες
|
||||
SFX N ης ες . # ναύτης > ναύτες
|
||||
|
||||
SFX O Y 5
|
||||
SFX O ώ άμε . # αγαπώ > αγαπάμε
|
||||
SFX O ός ιά . # γλυκός > γλυκιά
|
||||
SFX O ής ιά . # σταχτής > σταχτιά
|
||||
SFX O ί ιά . # πουλί > πουλιά
|
||||
SFX O ύς ιά . # βαθύς > βαθιά
|
||||
|
||||
SFX P Y 4
|
||||
SFX P ώ άτε . # αγαπώ > αγαπάτε
|
||||
SFX P ός ότος . # γεγονός > γεγονότος
|
||||
SFX P ω ετε . # δένω > δένετε
|
||||
SFX P η εως . # σκέψη > σκέψεως
|
||||
|
||||
SFX Q Y 5
|
||||
SFX Q ώ άστε . # λυπώ > λυπάστε
|
||||
SFX Q ας ων . # αγώνας > αγώνων
|
||||
SFX Q ος ων . # δρόμος > δρόμων
|
||||
SFX Q ο ων . # σίδερο > σίδερων
|
||||
SFX Q ύς ύ . # βαθύς > βαθύ
|
||||
|
||||
|
||||
SFX R Y 4
|
||||
SFX R ώ ιέμαι . # αγαπώ > αγαπιέμαι
|
||||
SFX R ής άδες . # πραματευτής > πραματευτάδες
|
||||
SFX R άς άδες . # σφουγγαράς > σφουγγαράδες
|
||||
SFX R ω ομαι . # δένω > δένομαι
|
||||
|
||||
|
||||
SFX S Y 4
|
||||
SFX S ώ ιέσαι . # αγαπώ > αγαπιέσαι
|
||||
SFX S ής άδων . # πραματευτής > πραματευτάδων
|
||||
SFX S άς άδων . # σφουγγαράς > σφουγγαράδων
|
||||
SFX S ω εσαι . # δένω > δένεσαι
|
||||
|
||||
SFX T Y 4
|
||||
SFX T ώ άν . # αγαπώ > αγαπάν
|
||||
SFX T ός ότα . # γεγονός > γεγονότα
|
||||
SFX T ω ουν . # δένω > δένουν
|
||||
SFX T ας ατα . # κρέας > κρέατα
|
||||
|
||||
|
||||
SFX U Y 4
|
||||
SFX U ώ ιέται . # αγαπώ > αγαπιέται
|
||||
SFX U ής ήδες . # μπαλωματής > μπαλωματήδες
|
||||
SFX U ί ιών . # πουλί > πουλιών
|
||||
SFX U ύς ιών . # βαθύς > βαθιών
|
||||
|
||||
|
||||
SFX V Y 5
|
||||
SFX V ώ ιέστε . # αγαπώ > αγαπιέστε
|
||||
SFX V ούς ούδες . # παππούς > παππούδες
|
||||
SFX V ής ί . # σταχτής > σταχτί
|
||||
SFX V ω εστε . # δένω > δένεστε
|
||||
SFX V 0 τα μα # κύμα > κύματα
|
||||
|
||||
SFX W Y 5
|
||||
SFX W ώ ιούνται . # αγαπώ > αγαπιούνται
|
||||
SFX W ώς ώτα . # καθεστώς > καθεστώτα
|
||||
SFX W ω ονται . # δένω > δένονται
|
||||
SFX W 0 τος μα # κύμα > κύματος
|
||||
SFX W 0 ς ή # ψυχή > ψυχής
|
||||
|
||||
SFX X Y 5
|
||||
SFX X ώ ιόμουν . # αγαπώ > αγαπιόμουν
|
||||
SFX X ός ή . # καλός > καλή
|
||||
SFX X ος η . # δάσος > δάση
|
||||
SFX X ής ή . # νικητής > νικητή
|
||||
SFX X ης η . # ναύτης > ναύτη
|
||||
|
||||
SFX Y Y 4
|
||||
SFX Y ώ ιόσουν . # αγαπώ > αγαπιόσουν
|
||||
SFX Y όμουν όσουν . # δενόμουν > δενόσουν
|
||||
SFX Y ω ουμε . # δένω > δένουμε
|
||||
SFX Y η εων . # σκέψη > σκέψεων
|
||||
|
||||
|
||||
SFX Z Y 3
|
||||
SFX Z ώ ιόταν . # αγαπώ > αγαπιόταν
|
||||
SFX Z μουν ταν όμουν # δενόμουν > δενόταν
|
||||
SFX Z ς δων ές # καφές > καφέδων
|
||||
|
||||
SFX a Y 4
|
||||
SFX a ώ ιόμαστε . # αγαπώ > αγαπιόμαστε
|
||||
SFX a ός ό . # καλός > καλό
|
||||
SFX a ω αμε . # δένω > δέναμε
|
||||
SFX a 0 με α # αγαπούσα > αγαπούσαμε
|
||||
|
||||
|
||||
SFX b Y 4
|
||||
SFX b ώ ιόσαστε . # αγαπώ > αγαπιόσαστε
|
||||
SFX b ω ατε . # δένω > δένατε
|
||||
SFX b με τε αμε # αγαπήσαμε > αγαπήσατε
|
||||
SFX b 0 τε α # αγαπούσα > αγαπούσατε
|
||||
|
||||
SFX c Y 3
|
||||
SFX c ώ ιόνταν . # αγαπώ > αγαπιόνταν
|
||||
SFX c όμουν όνταν . # θυμόμουν > θυμόνταν
|
||||
SFX c ω ονταν . # δένω > δένονταν
|
||||
|
||||
SFX d Y 4
|
||||
SFX d ώ ιούνταν . # αγαπώ > αγαπιούνταν
|
||||
SFX d ω ου . # δένω > δένου
|
||||
SFX d 0 υ ο # σίδερο > σίδερου
|
||||
SFX d ς υ ος # δρόμος > δρόμου
|
||||
|
||||
SFX e Y 4
|
||||
SFX e ώ ούνται . # λυπώ > λυπούνται
|
||||
SFX e ω ε . # δένω > δένε
|
||||
SFX e ος ε . # δρόμος > δρόμε
|
||||
SFX e α ε . # αγαπούσα > αγαπούσε
|
||||
|
||||
SFX f Y 3
|
||||
SFX f ώ άσαι . # λυπώ > λυπάσαι
|
||||
SFX f ί ιού . # πουλί > πουλιού
|
||||
SFX f ς δες ης # νοικοκύρης > νοικοκύρηδες
|
||||
|
||||
SFX g Y 4
|
||||
SFX g ώ άται . # λυπώ > λυπάται
|
||||
SFX g ός ότων . # γεγονός γεγονότων
|
||||
SFX g ης ηδων . # νοικοκύρης > νοικοκύρηδων
|
||||
SFX g α αν . # αγαπούσα > αγαπούσαν
|
||||
|
||||
SFX h Y 4
|
||||
SFX h ώ ούμαστε . # λυπώ > λυπούμαστε
|
||||
SFX h ώς ώτος . # καθεστώς > καθεστώτος
|
||||
SFX h όμουν όμαστε . # δενόμουν > δενόμαστε
|
||||
SFX h α ας . # ώρα > ώρας
|
||||
|
||||
SFX i Y 4
|
||||
SFX i ώ ώντας . # αγαπώ > αγαπώντας
|
||||
SFX i ής ές . # νικητής > νικητές
|
||||
SFX i ά ές . # καρδιά > καρδιές
|
||||
SFX i ή ές . # ψυχή > ψυχές
|
||||
|
||||
SFX j Y 3
|
||||
SFX j ης ικο . # ζηλιάρης > ζηλιάρικο
|
||||
SFX j ω τε . # δέσω > δέστε
|
||||
SFX j ος ους . # δρόμος > δρόμους
|
||||
|
||||
SFX k Y 3
|
||||
SFX k ω εται . # δένω > δένεται
|
||||
SFX k ος οι . # δρόμος > δρόμοι
|
||||
SFX k ας ατος . # κρέας > κρέατος
|
||||
|
||||
SFX l Y 4
|
||||
SFX l υ ια . # βράδυ > βράδια
|
||||
SFX l ι ια . # καλοκαίρι > καλοκαίρια
|
||||
SFX l ώ ούμαι . # λυπώ > λυπούμαι
|
||||
SFX l ής ήδων . # μπαλωματής > μπαλωματήδων
|
||||
|
||||
SFX m Y 3
|
||||
SFX m ώ άει . # αγαπώ > αγαπάει
|
||||
SFX m όμουν όσαστε . # δενόμουν > δενόσαστε
|
||||
SFX m ω ει . # δένω > δένει
|
||||
|
||||
SFX n Y 3
|
||||
SFX n ύς ιοί . # βαθύς > βαθιοί
|
||||
SFX n ώ είτε . # αγαπηθώ > αγαπηθείτε
|
||||
SFX n ος ο . # δρόμος > δρόμο
|
||||
@@ -0,0 +1,54 @@
|
||||
name : el_GR 0.9 version of the greek dictionary
|
||||
dd/mm/yyyy: 14/03/2015
|
||||
License : MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
contact : Steve Stavropoulos
|
||||
URL : http://elspell.math.upatras.gr
|
||||
|
||||
Added about 240259 new words in this release (courtesy of Γιώργος Γέγος, with the kind help of Nick Demou).
|
||||
|
||||
Steve Stavropoulos
|
||||
|
||||
==================
|
||||
|
||||
name : el_GR (v.003) Enhanced Version
|
||||
dd/mm/yyyy: 08/02/2002
|
||||
License : GNU GPL
|
||||
contact : evris@source.gr
|
||||
URL : ispell.source.gr
|
||||
-----------------------------------------------
|
||||
This dictionary is based on greek wordlist and affixes used by ispell
|
||||
(which based on older work of Mitalas and Seraskeris). Many thanks to
|
||||
Voula Sanida (voulariba@source.gr) and Panayotis Vryonis (vrypan@yassou.net)
|
||||
for their help in converting the affix rules and to all the people that
|
||||
contributed words to the vocabulary.
|
||||
Evripidis Papakostas (evris@source.gr)
|
||||
|
||||
==================
|
||||
|
||||
The new Licence:
|
||||
|
||||
Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
|
||||
The contents of this file are subject to the Mozilla Public License Version
|
||||
1.1 (the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
http://www.mozilla.org/MPL/
|
||||
|
||||
Software distributed under the License is distributed on an "AS IS" basis,
|
||||
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
for the specific language governing rights and limitations under the
|
||||
License.
|
||||
|
||||
Alternatively, the contents of this file may be used under the terms of
|
||||
either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
of those above. If you wish to allow use of your version of this file only
|
||||
under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
use your version of this file under the terms of the MPL, indicate your
|
||||
decision by deleting the provisions above and replace them with the notice
|
||||
and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
the provisions above, a recipient may use your version of this file under
|
||||
the terms of any one of the MPL, the GPL or the LGPL.
|
||||
|
||||
|
||||
@@ -0,0 +1,205 @@
|
||||
SET UTF-8
|
||||
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
|
||||
ICONV 1
|
||||
ICONV ’ '
|
||||
NOSUGGEST !
|
||||
|
||||
# ordinal numbers
|
||||
COMPOUNDMIN 1
|
||||
# only in compounds: 1th, 2th, 3th
|
||||
ONLYINCOMPOUND c
|
||||
# compound rules:
|
||||
# 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
|
||||
# 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
|
||||
COMPOUNDRULE 2
|
||||
COMPOUNDRULE n*1t
|
||||
COMPOUNDRULE n*mp
|
||||
WORDCHARS 0123456789
|
||||
|
||||
PFX A Y 1
|
||||
PFX A 0 re .
|
||||
|
||||
PFX I Y 1
|
||||
PFX I 0 in .
|
||||
|
||||
PFX U Y 1
|
||||
PFX U 0 un .
|
||||
|
||||
PFX C Y 1
|
||||
PFX C 0 de .
|
||||
|
||||
PFX E Y 1
|
||||
PFX E 0 dis .
|
||||
|
||||
PFX F Y 1
|
||||
PFX F 0 con .
|
||||
|
||||
PFX K Y 1
|
||||
PFX K 0 pro .
|
||||
|
||||
SFX V N 2
|
||||
SFX V e ive e
|
||||
SFX V 0 ive [^e]
|
||||
|
||||
SFX N Y 3
|
||||
SFX N e ion e
|
||||
SFX N y ication y
|
||||
SFX N 0 en [^ey]
|
||||
|
||||
SFX X Y 3
|
||||
SFX X e ions e
|
||||
SFX X y ications y
|
||||
SFX X 0 ens [^ey]
|
||||
|
||||
SFX H N 2
|
||||
SFX H y ieth y
|
||||
SFX H 0 th [^y]
|
||||
|
||||
SFX Y Y 1
|
||||
SFX Y 0 ly .
|
||||
|
||||
SFX G Y 2
|
||||
SFX G e ing e
|
||||
SFX G 0 ing [^e]
|
||||
|
||||
SFX J Y 2
|
||||
SFX J e ings e
|
||||
SFX J 0 ings [^e]
|
||||
|
||||
SFX D Y 4
|
||||
SFX D 0 d e
|
||||
SFX D y ied [^aeiou]y
|
||||
SFX D 0 ed [^ey]
|
||||
SFX D 0 ed [aeiou]y
|
||||
|
||||
SFX T N 4
|
||||
SFX T 0 st e
|
||||
SFX T y iest [^aeiou]y
|
||||
SFX T 0 est [aeiou]y
|
||||
SFX T 0 est [^ey]
|
||||
|
||||
SFX R Y 4
|
||||
SFX R 0 r e
|
||||
SFX R y ier [^aeiou]y
|
||||
SFX R 0 er [aeiou]y
|
||||
SFX R 0 er [^ey]
|
||||
|
||||
SFX Z Y 4
|
||||
SFX Z 0 rs e
|
||||
SFX Z y iers [^aeiou]y
|
||||
SFX Z 0 ers [aeiou]y
|
||||
SFX Z 0 ers [^ey]
|
||||
|
||||
SFX S Y 4
|
||||
SFX S y ies [^aeiou]y
|
||||
SFX S 0 s [aeiou]y
|
||||
SFX S 0 es [sxzh]
|
||||
SFX S 0 s [^sxzhy]
|
||||
|
||||
SFX P Y 3
|
||||
SFX P y iness [^aeiou]y
|
||||
SFX P 0 ness [aeiou]y
|
||||
SFX P 0 ness [^y]
|
||||
|
||||
SFX M Y 1
|
||||
SFX M 0 's .
|
||||
|
||||
SFX B Y 3
|
||||
SFX B 0 able [^aeiou]
|
||||
SFX B 0 able ee
|
||||
SFX B e able [^aeiou]e
|
||||
|
||||
SFX L Y 1
|
||||
SFX L 0 ment .
|
||||
|
||||
REP 90
|
||||
REP a ei
|
||||
REP ei a
|
||||
REP a ey
|
||||
REP ey a
|
||||
REP ai ie
|
||||
REP ie ai
|
||||
REP alot a_lot
|
||||
REP are air
|
||||
REP are ear
|
||||
REP are eir
|
||||
REP air are
|
||||
REP air ere
|
||||
REP ere air
|
||||
REP ere ear
|
||||
REP ere eir
|
||||
REP ear are
|
||||
REP ear air
|
||||
REP ear ere
|
||||
REP eir are
|
||||
REP eir ere
|
||||
REP ch te
|
||||
REP te ch
|
||||
REP ch ti
|
||||
REP ti ch
|
||||
REP ch tu
|
||||
REP tu ch
|
||||
REP ch s
|
||||
REP s ch
|
||||
REP ch k
|
||||
REP k ch
|
||||
REP f ph
|
||||
REP ph f
|
||||
REP gh f
|
||||
REP f gh
|
||||
REP i igh
|
||||
REP igh i
|
||||
REP i uy
|
||||
REP uy i
|
||||
REP i ee
|
||||
REP ee i
|
||||
REP j di
|
||||
REP di j
|
||||
REP j gg
|
||||
REP gg j
|
||||
REP j ge
|
||||
REP ge j
|
||||
REP s ti
|
||||
REP ti s
|
||||
REP s ci
|
||||
REP ci s
|
||||
REP k cc
|
||||
REP cc k
|
||||
REP k qu
|
||||
REP qu k
|
||||
REP kw qu
|
||||
REP o eau
|
||||
REP eau o
|
||||
REP o ew
|
||||
REP ew o
|
||||
REP oo ew
|
||||
REP ew oo
|
||||
REP ew ui
|
||||
REP ui ew
|
||||
REP oo ui
|
||||
REP ui oo
|
||||
REP ew u
|
||||
REP u ew
|
||||
REP oo u
|
||||
REP u oo
|
||||
REP u oe
|
||||
REP oe u
|
||||
REP u ieu
|
||||
REP ieu u
|
||||
REP ue ew
|
||||
REP ew ue
|
||||
REP uff ough
|
||||
REP oo ieu
|
||||
REP ieu oo
|
||||
REP ier ear
|
||||
REP ear ier
|
||||
REP ear air
|
||||
REP air ear
|
||||
REP w qu
|
||||
REP qu w
|
||||
REP z ss
|
||||
REP ss z
|
||||
REP shun tion
|
||||
REP shun sion
|
||||
REP shun cion
|
||||
REP size cise
|
||||
@@ -0,0 +1,347 @@
|
||||
en_AU Hunspell Dictionary
|
||||
Version 2020.12.07
|
||||
Mon Dec 7 20:14:35 2020 -0500 [5ef55f9]
|
||||
http://wordlist.sourceforge.net
|
||||
|
||||
README file for English Hunspell dictionaries derived from SCOWL.
|
||||
|
||||
These dictionaries are created using the speller/make-hunspell-dict
|
||||
script in SCOWL.
|
||||
|
||||
The following dictionaries are available:
|
||||
|
||||
en_US (American)
|
||||
en_CA (Canadian)
|
||||
en_GB-ise (British with "ise" spelling)
|
||||
en_GB-ize (British with "ize" spelling)
|
||||
en_AU (Australian)
|
||||
|
||||
en_US-large
|
||||
en_CA-large
|
||||
en_GB-large (with both "ise" and "ize" spelling)
|
||||
en_AU-large
|
||||
|
||||
The normal (non-large) dictionaries correspond to SCOWL size 60 and,
|
||||
to encourage consistent spelling, generally only include one spelling
|
||||
variant for a word. The large dictionaries correspond to SCOWL size
|
||||
70 and may include multiple spelling for a word when both variants are
|
||||
considered almost equal. The larger dictionaries however (1) have not
|
||||
been as carefully checked for errors as the normal dictionaries and
|
||||
thus may contain misspelled or invalid words; and (2) contain
|
||||
uncommon, yet valid, words that might cause problems as they are
|
||||
likely to be misspellings of more common words (for example, "ort" and
|
||||
"calender").
|
||||
|
||||
To get an idea of the difference in size, here are 25 random words
|
||||
only found in the large dictionary for American English:
|
||||
|
||||
Bermejo Freyr's Guenevere Hatshepsut Nottinghamshire arrestment
|
||||
crassitudes crural dogwatches errorless fetial flaxseeds godroon
|
||||
incretion jalapeño's kelpie kishkes neuroglias pietisms pullulation
|
||||
stemwinder stenoses syce thalassic zees
|
||||
|
||||
The en_US, en_CA and en_AU are the official dictionaries for Hunspell.
|
||||
The en_GB and large dictionaries are made available on an experimental
|
||||
basis. If you find them useful please send me a quick email at
|
||||
kevina@gnu.org.
|
||||
|
||||
If none of these dictionaries suite you (for example, maybe you want
|
||||
the normal dictionary that also includes common variants) additional
|
||||
dictionaries can be generated at http://app.aspell.net/create or by
|
||||
modifying speller/make-hunspell-dict in SCOWL. Please do let me know
|
||||
if you end up publishing a customized dictionary.
|
||||
|
||||
If a word is not found in the dictionary or a word is there you think
|
||||
shouldn't be, you can lookup the word up at http://app.aspell.net/lookup
|
||||
to help determine why that is.
|
||||
|
||||
General comments on these list can be sent directly to me at
|
||||
kevina@gnu.org or to the wordlist-devel mailing lists
|
||||
(https://lists.sourceforge.net/lists/listinfo/wordlist-devel). If you
|
||||
have specific issues with any of these dictionaries please file a bug
|
||||
report at https://github.com/kevina/wordlist/issues.
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED In 2016.11.20:
|
||||
|
||||
New Australian dictionaries thanks to the work of Benjamin Titze
|
||||
(btitze@protonmail.ch).
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED IN 2016.04.24:
|
||||
|
||||
The dictionaries are now in UTF-8 format instead of ISO-8859-1. This
|
||||
was required to handle smart quotes correctly.
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED IN 2016.01.19:
|
||||
|
||||
"SET UTF8" was changes to "SET UTF-8" in the affix file as some
|
||||
versions of Hunspell do not recognize "UTF8".
|
||||
|
||||
ADDITIONAL NOTES:
|
||||
|
||||
The NOSUGGEST flag was added to certain taboo words. While I made an
|
||||
honest attempt to flag the strongest taboo words with the NOSUGGEST
|
||||
flag, I MAKE NO GUARANTEE THAT I FLAGGED EVERY POSSIBLE TABOO WORD.
|
||||
The list was originally derived from Németh László, however I removed
|
||||
some words which, while being considered taboo by some dictionaries,
|
||||
are not really considered swear words in today's society.
|
||||
|
||||
COPYRIGHT, SOURCES, and CREDITS:
|
||||
|
||||
The English dictionaries come directly from SCOWL
|
||||
and is thus under the same copyright of SCOWL. The affix file is
|
||||
a heavily modified version of the original english.aff file which was
|
||||
released as part of Geoff Kuenning's Ispell and as such is covered by
|
||||
his BSD license. Part of SCOWL is also based on Ispell thus the
|
||||
Ispell copyright is included with the SCOWL copyright.
|
||||
|
||||
The collective work is Copyright 2000-2018 by Kevin Atkinson as well
|
||||
as any of the copyrights mentioned below:
|
||||
|
||||
Copyright 2000-2018 by Kevin Atkinson
|
||||
|
||||
Permission to use, copy, modify, distribute and sell these word
|
||||
lists, the associated scripts, the output created from the scripts,
|
||||
and its documentation for any purpose is hereby granted without fee,
|
||||
provided that the above copyright notice appears in all copies and
|
||||
that both that copyright notice and this permission notice appear in
|
||||
supporting documentation. Kevin Atkinson makes no representations
|
||||
about the suitability of this array for any purpose. It is provided
|
||||
"as is" without express or implied warranty.
|
||||
|
||||
Alan Beale <biljir@pobox.com> also deserves special credit as he has,
|
||||
in addition to providing the 12Dicts package and being a major
|
||||
contributor to the ENABLE word list, given me an incredible amount of
|
||||
feedback and created a number of special lists (those found in the
|
||||
Supplement) in order to help improve the overall quality of SCOWL.
|
||||
|
||||
The 10 level includes the 1000 most common English words (according to
|
||||
the Moby (TM) Words II [MWords] package), a subset of the 1000 most
|
||||
common words on the Internet (again, according to Moby Words II), and
|
||||
frequently class 16 from Brian Kelk's "UK English Wordlist
|
||||
with Frequency Classification".
|
||||
|
||||
The MWords package was explicitly placed in the public domain:
|
||||
|
||||
The Moby lexicon project is complete and has
|
||||
been place into the public domain. Use, sell,
|
||||
rework, excerpt and use in any way on any platform.
|
||||
|
||||
Placing this material on internal or public servers is
|
||||
also encouraged. The compiler is not aware of any
|
||||
export restrictions so freely distribute world-wide.
|
||||
|
||||
You can verify the public domain status by contacting
|
||||
|
||||
Grady Ward
|
||||
3449 Martha Ct.
|
||||
Arcata, CA 95521-4884
|
||||
|
||||
grady@netcom.com
|
||||
grady@northcoast.com
|
||||
|
||||
The "UK English Wordlist With Frequency Classification" is also in the
|
||||
Public Domain:
|
||||
|
||||
Date: Sat, 08 Jul 2000 20:27:21 +0100
|
||||
From: Brian Kelk <Brian.Kelk@cl.cam.ac.uk>
|
||||
|
||||
> I was wondering what the copyright status of your "UK English
|
||||
> Wordlist With Frequency Classification" word list as it seems to
|
||||
> be lacking any copyright notice.
|
||||
|
||||
There were many many sources in total, but any text marked
|
||||
"copyright" was avoided. Locally-written documentation was one
|
||||
source. An earlier version of the list resided in a filespace called
|
||||
PUBLIC on the University mainframe, because it was considered public
|
||||
domain.
|
||||
|
||||
Date: Tue, 11 Jul 2000 19:31:34 +0100
|
||||
|
||||
> So are you saying your word list is also in the public domain?
|
||||
|
||||
That is the intention.
|
||||
|
||||
The 20 level includes frequency classes 7-15 from Brian's word list.
|
||||
|
||||
The 35 level includes frequency classes 2-6 and words appearing in at
|
||||
least 11 of 12 dictionaries as indicated in the 12Dicts package. All
|
||||
words from the 12Dicts package have had likely inflections added via
|
||||
my inflection database.
|
||||
|
||||
The 12Dicts package and Supplement is in the Public Domain.
|
||||
|
||||
The WordNet database, which was used in the creation of the
|
||||
Inflections database, is under the following copyright:
|
||||
|
||||
This software and database is being provided to you, the LICENSEE,
|
||||
by Princeton University under the following license. By obtaining,
|
||||
using and/or copying this software and database, you agree that you
|
||||
have read, understood, and will comply with these terms and
|
||||
conditions.:
|
||||
|
||||
Permission to use, copy, modify and distribute this software and
|
||||
database and its documentation for any purpose and without fee or
|
||||
royalty is hereby granted, provided that you agree to comply with
|
||||
the following copyright notice and statements, including the
|
||||
disclaimer, and that the same appear on ALL copies of the software,
|
||||
database and documentation, including modifications that you make
|
||||
for internal use or for distribution.
|
||||
|
||||
WordNet 1.6 Copyright 1997 by Princeton University. All rights
|
||||
reserved.
|
||||
|
||||
THIS SOFTWARE AND DATABASE IS PROVIDED "AS IS" AND PRINCETON
|
||||
UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
|
||||
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PRINCETON
|
||||
UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES OF MERCHANT-
|
||||
ABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
|
||||
LICENSED SOFTWARE, DATABASE OR DOCUMENTATION WILL NOT INFRINGE ANY
|
||||
THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
|
||||
|
||||
The name of Princeton University or Princeton may not be used in
|
||||
advertising or publicity pertaining to distribution of the software
|
||||
and/or database. Title to copyright in this software, database and
|
||||
any associated documentation shall at all times remain with
|
||||
Princeton University and LICENSEE agrees to preserve same.
|
||||
|
||||
The 40 level includes words from Alan's 3esl list found in version 4.0
|
||||
of his 12dicts package. Like his other stuff the 3esl list is also in the
|
||||
public domain.
|
||||
|
||||
The 50 level includes Brian's frequency class 1, words appearing
|
||||
in at least 5 of 12 of the dictionaries as indicated in the 12Dicts
|
||||
package, and uppercase words in at least 4 of the previous 12
|
||||
dictionaries. A decent number of proper names is also included: The
|
||||
top 1000 male, female, and Last names from the 1990 Census report; a
|
||||
list of names sent to me by Alan Beale; and a few names that I added
|
||||
myself. Finally a small list of abbreviations not commonly found in
|
||||
other word lists is included.
|
||||
|
||||
The name files form the Census report is a government document which I
|
||||
don't think can be copyrighted.
|
||||
|
||||
The file special-jargon.50 uses common.lst and word.lst from the
|
||||
"Unofficial Jargon File Word Lists" which is derived from "The Jargon
|
||||
File". All of which is in the Public Domain. This file also contain
|
||||
a few extra UNIX terms which are found in the file "unix-terms" in the
|
||||
special/ directory.
|
||||
|
||||
The 55 level includes words from Alan's 2of4brif list found in version
|
||||
4.0 of his 12dicts package. Like his other stuff the 2of4brif is also
|
||||
in the public domain.
|
||||
|
||||
The 60 level includes all words appearing in at least 2 of the 12
|
||||
dictionaries as indicated by the 12Dicts package.
|
||||
|
||||
The 70 level includes Brian's frequency class 0 and the 74,550 common
|
||||
dictionary words from the MWords package. The common dictionary words,
|
||||
like those from the 12Dicts package, have had all likely inflections
|
||||
added. The 70 level also included the 5desk list from version 4.0 of
|
||||
the 12Dics package which is in the public domain.
|
||||
|
||||
The 80 level includes the ENABLE word list, all the lists in the
|
||||
ENABLE supplement package (except for ABLE), the "UK Advanced Cryptics
|
||||
Dictionary" (UKACD), the list of signature words from the YAWL package,
|
||||
and the 10,196 places list from the MWords package.
|
||||
|
||||
The ENABLE package, mainted by M\Cooper <thegrendel@theriver.com>,
|
||||
is in the Public Domain:
|
||||
|
||||
The ENABLE master word list, WORD.LST, is herewith formally released
|
||||
into the Public Domain. Anyone is free to use it or distribute it in
|
||||
any manner they see fit. No fee or registration is required for its
|
||||
use nor are "contributions" solicited (if you feel you absolutely
|
||||
must contribute something for your own peace of mind, the authors of
|
||||
the ENABLE list ask that you make a donation on their behalf to your
|
||||
favorite charity). This word list is our gift to the Scrabble
|
||||
community, as an alternate to "official" word lists. Game designers
|
||||
may feel free to incorporate the WORD.LST into their games. Please
|
||||
mention the source and credit us as originators of the list. Note
|
||||
that if you, as a game designer, use the WORD.LST in your product,
|
||||
you may still copyright and protect your product, but you may *not*
|
||||
legally copyright or in any way restrict redistribution of the
|
||||
WORD.LST portion of your product. This *may* under law restrict your
|
||||
rights to restrict your users' rights, but that is only fair.
|
||||
|
||||
UKACD, by J Ross Beresford <ross@bryson.demon.co.uk>, is under the
|
||||
following copyright:
|
||||
|
||||
Copyright (c) J Ross Beresford 1993-1999. All Rights Reserved.
|
||||
|
||||
The following restriction is placed on the use of this publication:
|
||||
if The UK Advanced Cryptics Dictionary is used in a software package
|
||||
or redistributed in any form, the copyright notice must be
|
||||
prominently displayed and the text of this document must be included
|
||||
verbatim.
|
||||
|
||||
There are no other restrictions: I would like to see the list
|
||||
distributed as widely as possible.
|
||||
|
||||
The 95 level includes the 354,984 single words, 256,772 compound
|
||||
words, 4,946 female names and the 3,897 male names, and 21,986 names
|
||||
from the MWords package, ABLE.LST from the ENABLE Supplement, and some
|
||||
additional words found in my part-of-speech database that were not
|
||||
found anywhere else.
|
||||
|
||||
Accent information was taken from UKACD.
|
||||
|
||||
The VarCon package was used to create the American, British, Canadian,
|
||||
and Australian word list. It is under the following copyright:
|
||||
|
||||
Copyright 2000-2016 by Kevin Atkinson
|
||||
|
||||
Permission to use, copy, modify, distribute and sell this array, the
|
||||
associated software, and its documentation for any purpose is hereby
|
||||
granted without fee, provided that the above copyright notice appears
|
||||
in all copies and that both that copyright notice and this permission
|
||||
notice appear in supporting documentation. Kevin Atkinson makes no
|
||||
representations about the suitability of this array for any
|
||||
purpose. It is provided "as is" without express or implied warranty.
|
||||
|
||||
Copyright 2016 by Benjamin Titze
|
||||
|
||||
Permission to use, copy, modify, distribute and sell this array, the
|
||||
associated software, and its documentation for any purpose is hereby
|
||||
granted without fee, provided that the above copyright notice appears
|
||||
in all copies and that both that copyright notice and this permission
|
||||
notice appear in supporting documentation. Benjamin Titze makes no
|
||||
representations about the suitability of this array for any
|
||||
purpose. It is provided "as is" without express or implied warranty.
|
||||
|
||||
Since the original words lists come from the Ispell distribution:
|
||||
|
||||
Copyright 1993, Geoff Kuenning, Granada Hills, CA
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. All modifications to the source code must be clearly marked as
|
||||
such. Binary redistributions based on modified source code
|
||||
must be clearly marked as modified versions in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
(clause 4 removed with permission from Geoff Kuenning)
|
||||
5. The name of Geoff Kuenning may not be used to endorse or promote
|
||||
products derived from this software without specific prior
|
||||
written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
Build Date: Mon Dec 7 20:19:31 EST 2020
|
||||
Wordlist Command: mk-list --accents=strip en_AU 60
|
||||
@@ -0,0 +1,205 @@
|
||||
SET UTF-8
|
||||
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
|
||||
ICONV 1
|
||||
ICONV ’ '
|
||||
NOSUGGEST !
|
||||
|
||||
# ordinal numbers
|
||||
COMPOUNDMIN 1
|
||||
# only in compounds: 1th, 2th, 3th
|
||||
ONLYINCOMPOUND c
|
||||
# compound rules:
|
||||
# 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
|
||||
# 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
|
||||
COMPOUNDRULE 2
|
||||
COMPOUNDRULE n*1t
|
||||
COMPOUNDRULE n*mp
|
||||
WORDCHARS 0123456789
|
||||
|
||||
PFX A Y 1
|
||||
PFX A 0 re .
|
||||
|
||||
PFX I Y 1
|
||||
PFX I 0 in .
|
||||
|
||||
PFX U Y 1
|
||||
PFX U 0 un .
|
||||
|
||||
PFX C Y 1
|
||||
PFX C 0 de .
|
||||
|
||||
PFX E Y 1
|
||||
PFX E 0 dis .
|
||||
|
||||
PFX F Y 1
|
||||
PFX F 0 con .
|
||||
|
||||
PFX K Y 1
|
||||
PFX K 0 pro .
|
||||
|
||||
SFX V N 2
|
||||
SFX V e ive e
|
||||
SFX V 0 ive [^e]
|
||||
|
||||
SFX N Y 3
|
||||
SFX N e ion e
|
||||
SFX N y ication y
|
||||
SFX N 0 en [^ey]
|
||||
|
||||
SFX X Y 3
|
||||
SFX X e ions e
|
||||
SFX X y ications y
|
||||
SFX X 0 ens [^ey]
|
||||
|
||||
SFX H N 2
|
||||
SFX H y ieth y
|
||||
SFX H 0 th [^y]
|
||||
|
||||
SFX Y Y 1
|
||||
SFX Y 0 ly .
|
||||
|
||||
SFX G Y 2
|
||||
SFX G e ing e
|
||||
SFX G 0 ing [^e]
|
||||
|
||||
SFX J Y 2
|
||||
SFX J e ings e
|
||||
SFX J 0 ings [^e]
|
||||
|
||||
SFX D Y 4
|
||||
SFX D 0 d e
|
||||
SFX D y ied [^aeiou]y
|
||||
SFX D 0 ed [^ey]
|
||||
SFX D 0 ed [aeiou]y
|
||||
|
||||
SFX T N 4
|
||||
SFX T 0 st e
|
||||
SFX T y iest [^aeiou]y
|
||||
SFX T 0 est [aeiou]y
|
||||
SFX T 0 est [^ey]
|
||||
|
||||
SFX R Y 4
|
||||
SFX R 0 r e
|
||||
SFX R y ier [^aeiou]y
|
||||
SFX R 0 er [aeiou]y
|
||||
SFX R 0 er [^ey]
|
||||
|
||||
SFX Z Y 4
|
||||
SFX Z 0 rs e
|
||||
SFX Z y iers [^aeiou]y
|
||||
SFX Z 0 ers [aeiou]y
|
||||
SFX Z 0 ers [^ey]
|
||||
|
||||
SFX S Y 4
|
||||
SFX S y ies [^aeiou]y
|
||||
SFX S 0 s [aeiou]y
|
||||
SFX S 0 es [sxzh]
|
||||
SFX S 0 s [^sxzhy]
|
||||
|
||||
SFX P Y 3
|
||||
SFX P y iness [^aeiou]y
|
||||
SFX P 0 ness [aeiou]y
|
||||
SFX P 0 ness [^y]
|
||||
|
||||
SFX M Y 1
|
||||
SFX M 0 's .
|
||||
|
||||
SFX B Y 3
|
||||
SFX B 0 able [^aeiou]
|
||||
SFX B 0 able ee
|
||||
SFX B e able [^aeiou]e
|
||||
|
||||
SFX L Y 1
|
||||
SFX L 0 ment .
|
||||
|
||||
REP 90
|
||||
REP a ei
|
||||
REP ei a
|
||||
REP a ey
|
||||
REP ey a
|
||||
REP ai ie
|
||||
REP ie ai
|
||||
REP alot a_lot
|
||||
REP are air
|
||||
REP are ear
|
||||
REP are eir
|
||||
REP air are
|
||||
REP air ere
|
||||
REP ere air
|
||||
REP ere ear
|
||||
REP ere eir
|
||||
REP ear are
|
||||
REP ear air
|
||||
REP ear ere
|
||||
REP eir are
|
||||
REP eir ere
|
||||
REP ch te
|
||||
REP te ch
|
||||
REP ch ti
|
||||
REP ti ch
|
||||
REP ch tu
|
||||
REP tu ch
|
||||
REP ch s
|
||||
REP s ch
|
||||
REP ch k
|
||||
REP k ch
|
||||
REP f ph
|
||||
REP ph f
|
||||
REP gh f
|
||||
REP f gh
|
||||
REP i igh
|
||||
REP igh i
|
||||
REP i uy
|
||||
REP uy i
|
||||
REP i ee
|
||||
REP ee i
|
||||
REP j di
|
||||
REP di j
|
||||
REP j gg
|
||||
REP gg j
|
||||
REP j ge
|
||||
REP ge j
|
||||
REP s ti
|
||||
REP ti s
|
||||
REP s ci
|
||||
REP ci s
|
||||
REP k cc
|
||||
REP cc k
|
||||
REP k qu
|
||||
REP qu k
|
||||
REP kw qu
|
||||
REP o eau
|
||||
REP eau o
|
||||
REP o ew
|
||||
REP ew o
|
||||
REP oo ew
|
||||
REP ew oo
|
||||
REP ew ui
|
||||
REP ui ew
|
||||
REP oo ui
|
||||
REP ui oo
|
||||
REP ew u
|
||||
REP u ew
|
||||
REP oo u
|
||||
REP u oo
|
||||
REP u oe
|
||||
REP oe u
|
||||
REP u ieu
|
||||
REP ieu u
|
||||
REP ue ew
|
||||
REP ew ue
|
||||
REP uff ough
|
||||
REP oo ieu
|
||||
REP ieu oo
|
||||
REP ier ear
|
||||
REP ear ier
|
||||
REP ear air
|
||||
REP air ear
|
||||
REP w qu
|
||||
REP qu w
|
||||
REP z ss
|
||||
REP ss z
|
||||
REP shun tion
|
||||
REP shun sion
|
||||
REP shun cion
|
||||
REP size cise
|
||||
@@ -0,0 +1,347 @@
|
||||
en_CA Hunspell Dictionary
|
||||
Version 2020.12.07
|
||||
Mon Dec 7 20:14:35 2020 -0500 [5ef55f9]
|
||||
http://wordlist.sourceforge.net
|
||||
|
||||
README file for English Hunspell dictionaries derived from SCOWL.
|
||||
|
||||
These dictionaries are created using the speller/make-hunspell-dict
|
||||
script in SCOWL.
|
||||
|
||||
The following dictionaries are available:
|
||||
|
||||
en_US (American)
|
||||
en_CA (Canadian)
|
||||
en_GB-ise (British with "ise" spelling)
|
||||
en_GB-ize (British with "ize" spelling)
|
||||
en_AU (Australian)
|
||||
|
||||
en_US-large
|
||||
en_CA-large
|
||||
en_GB-large (with both "ise" and "ize" spelling)
|
||||
en_AU-large
|
||||
|
||||
The normal (non-large) dictionaries correspond to SCOWL size 60 and,
|
||||
to encourage consistent spelling, generally only include one spelling
|
||||
variant for a word. The large dictionaries correspond to SCOWL size
|
||||
70 and may include multiple spelling for a word when both variants are
|
||||
considered almost equal. The larger dictionaries however (1) have not
|
||||
been as carefully checked for errors as the normal dictionaries and
|
||||
thus may contain misspelled or invalid words; and (2) contain
|
||||
uncommon, yet valid, words that might cause problems as they are
|
||||
likely to be misspellings of more common words (for example, "ort" and
|
||||
"calender").
|
||||
|
||||
To get an idea of the difference in size, here are 25 random words
|
||||
only found in the large dictionary for American English:
|
||||
|
||||
Bermejo Freyr's Guenevere Hatshepsut Nottinghamshire arrestment
|
||||
crassitudes crural dogwatches errorless fetial flaxseeds godroon
|
||||
incretion jalapeño's kelpie kishkes neuroglias pietisms pullulation
|
||||
stemwinder stenoses syce thalassic zees
|
||||
|
||||
The en_US, en_CA and en_AU are the official dictionaries for Hunspell.
|
||||
The en_GB and large dictionaries are made available on an experimental
|
||||
basis. If you find them useful please send me a quick email at
|
||||
kevina@gnu.org.
|
||||
|
||||
If none of these dictionaries suite you (for example, maybe you want
|
||||
the normal dictionary that also includes common variants) additional
|
||||
dictionaries can be generated at http://app.aspell.net/create or by
|
||||
modifying speller/make-hunspell-dict in SCOWL. Please do let me know
|
||||
if you end up publishing a customized dictionary.
|
||||
|
||||
If a word is not found in the dictionary or a word is there you think
|
||||
shouldn't be, you can lookup the word up at http://app.aspell.net/lookup
|
||||
to help determine why that is.
|
||||
|
||||
General comments on these list can be sent directly to me at
|
||||
kevina@gnu.org or to the wordlist-devel mailing lists
|
||||
(https://lists.sourceforge.net/lists/listinfo/wordlist-devel). If you
|
||||
have specific issues with any of these dictionaries please file a bug
|
||||
report at https://github.com/kevina/wordlist/issues.
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED In 2016.11.20:
|
||||
|
||||
New Australian dictionaries thanks to the work of Benjamin Titze
|
||||
(btitze@protonmail.ch).
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED IN 2016.04.24:
|
||||
|
||||
The dictionaries are now in UTF-8 format instead of ISO-8859-1. This
|
||||
was required to handle smart quotes correctly.
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED IN 2016.01.19:
|
||||
|
||||
"SET UTF8" was changes to "SET UTF-8" in the affix file as some
|
||||
versions of Hunspell do not recognize "UTF8".
|
||||
|
||||
ADDITIONAL NOTES:
|
||||
|
||||
The NOSUGGEST flag was added to certain taboo words. While I made an
|
||||
honest attempt to flag the strongest taboo words with the NOSUGGEST
|
||||
flag, I MAKE NO GUARANTEE THAT I FLAGGED EVERY POSSIBLE TABOO WORD.
|
||||
The list was originally derived from Németh László, however I removed
|
||||
some words which, while being considered taboo by some dictionaries,
|
||||
are not really considered swear words in today's society.
|
||||
|
||||
COPYRIGHT, SOURCES, and CREDITS:
|
||||
|
||||
The English dictionaries come directly from SCOWL
|
||||
and is thus under the same copyright of SCOWL. The affix file is
|
||||
a heavily modified version of the original english.aff file which was
|
||||
released as part of Geoff Kuenning's Ispell and as such is covered by
|
||||
his BSD license. Part of SCOWL is also based on Ispell thus the
|
||||
Ispell copyright is included with the SCOWL copyright.
|
||||
|
||||
The collective work is Copyright 2000-2018 by Kevin Atkinson as well
|
||||
as any of the copyrights mentioned below:
|
||||
|
||||
Copyright 2000-2018 by Kevin Atkinson
|
||||
|
||||
Permission to use, copy, modify, distribute and sell these word
|
||||
lists, the associated scripts, the output created from the scripts,
|
||||
and its documentation for any purpose is hereby granted without fee,
|
||||
provided that the above copyright notice appears in all copies and
|
||||
that both that copyright notice and this permission notice appear in
|
||||
supporting documentation. Kevin Atkinson makes no representations
|
||||
about the suitability of this array for any purpose. It is provided
|
||||
"as is" without express or implied warranty.
|
||||
|
||||
Alan Beale <biljir@pobox.com> also deserves special credit as he has,
|
||||
in addition to providing the 12Dicts package and being a major
|
||||
contributor to the ENABLE word list, given me an incredible amount of
|
||||
feedback and created a number of special lists (those found in the
|
||||
Supplement) in order to help improve the overall quality of SCOWL.
|
||||
|
||||
The 10 level includes the 1000 most common English words (according to
|
||||
the Moby (TM) Words II [MWords] package), a subset of the 1000 most
|
||||
common words on the Internet (again, according to Moby Words II), and
|
||||
frequently class 16 from Brian Kelk's "UK English Wordlist
|
||||
with Frequency Classification".
|
||||
|
||||
The MWords package was explicitly placed in the public domain:
|
||||
|
||||
The Moby lexicon project is complete and has
|
||||
been place into the public domain. Use, sell,
|
||||
rework, excerpt and use in any way on any platform.
|
||||
|
||||
Placing this material on internal or public servers is
|
||||
also encouraged. The compiler is not aware of any
|
||||
export restrictions so freely distribute world-wide.
|
||||
|
||||
You can verify the public domain status by contacting
|
||||
|
||||
Grady Ward
|
||||
3449 Martha Ct.
|
||||
Arcata, CA 95521-4884
|
||||
|
||||
grady@netcom.com
|
||||
grady@northcoast.com
|
||||
|
||||
The "UK English Wordlist With Frequency Classification" is also in the
|
||||
Public Domain:
|
||||
|
||||
Date: Sat, 08 Jul 2000 20:27:21 +0100
|
||||
From: Brian Kelk <Brian.Kelk@cl.cam.ac.uk>
|
||||
|
||||
> I was wondering what the copyright status of your "UK English
|
||||
> Wordlist With Frequency Classification" word list as it seems to
|
||||
> be lacking any copyright notice.
|
||||
|
||||
There were many many sources in total, but any text marked
|
||||
"copyright" was avoided. Locally-written documentation was one
|
||||
source. An earlier version of the list resided in a filespace called
|
||||
PUBLIC on the University mainframe, because it was considered public
|
||||
domain.
|
||||
|
||||
Date: Tue, 11 Jul 2000 19:31:34 +0100
|
||||
|
||||
> So are you saying your word list is also in the public domain?
|
||||
|
||||
That is the intention.
|
||||
|
||||
The 20 level includes frequency classes 7-15 from Brian's word list.
|
||||
|
||||
The 35 level includes frequency classes 2-6 and words appearing in at
|
||||
least 11 of 12 dictionaries as indicated in the 12Dicts package. All
|
||||
words from the 12Dicts package have had likely inflections added via
|
||||
my inflection database.
|
||||
|
||||
The 12Dicts package and Supplement is in the Public Domain.
|
||||
|
||||
The WordNet database, which was used in the creation of the
|
||||
Inflections database, is under the following copyright:
|
||||
|
||||
This software and database is being provided to you, the LICENSEE,
|
||||
by Princeton University under the following license. By obtaining,
|
||||
using and/or copying this software and database, you agree that you
|
||||
have read, understood, and will comply with these terms and
|
||||
conditions.:
|
||||
|
||||
Permission to use, copy, modify and distribute this software and
|
||||
database and its documentation for any purpose and without fee or
|
||||
royalty is hereby granted, provided that you agree to comply with
|
||||
the following copyright notice and statements, including the
|
||||
disclaimer, and that the same appear on ALL copies of the software,
|
||||
database and documentation, including modifications that you make
|
||||
for internal use or for distribution.
|
||||
|
||||
WordNet 1.6 Copyright 1997 by Princeton University. All rights
|
||||
reserved.
|
||||
|
||||
THIS SOFTWARE AND DATABASE IS PROVIDED "AS IS" AND PRINCETON
|
||||
UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
|
||||
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PRINCETON
|
||||
UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES OF MERCHANT-
|
||||
ABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
|
||||
LICENSED SOFTWARE, DATABASE OR DOCUMENTATION WILL NOT INFRINGE ANY
|
||||
THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
|
||||
|
||||
The name of Princeton University or Princeton may not be used in
|
||||
advertising or publicity pertaining to distribution of the software
|
||||
and/or database. Title to copyright in this software, database and
|
||||
any associated documentation shall at all times remain with
|
||||
Princeton University and LICENSEE agrees to preserve same.
|
||||
|
||||
The 40 level includes words from Alan's 3esl list found in version 4.0
|
||||
of his 12dicts package. Like his other stuff the 3esl list is also in the
|
||||
public domain.
|
||||
|
||||
The 50 level includes Brian's frequency class 1, words appearing
|
||||
in at least 5 of 12 of the dictionaries as indicated in the 12Dicts
|
||||
package, and uppercase words in at least 4 of the previous 12
|
||||
dictionaries. A decent number of proper names is also included: The
|
||||
top 1000 male, female, and Last names from the 1990 Census report; a
|
||||
list of names sent to me by Alan Beale; and a few names that I added
|
||||
myself. Finally a small list of abbreviations not commonly found in
|
||||
other word lists is included.
|
||||
|
||||
The name files form the Census report is a government document which I
|
||||
don't think can be copyrighted.
|
||||
|
||||
The file special-jargon.50 uses common.lst and word.lst from the
|
||||
"Unofficial Jargon File Word Lists" which is derived from "The Jargon
|
||||
File". All of which is in the Public Domain. This file also contain
|
||||
a few extra UNIX terms which are found in the file "unix-terms" in the
|
||||
special/ directory.
|
||||
|
||||
The 55 level includes words from Alan's 2of4brif list found in version
|
||||
4.0 of his 12dicts package. Like his other stuff the 2of4brif is also
|
||||
in the public domain.
|
||||
|
||||
The 60 level includes all words appearing in at least 2 of the 12
|
||||
dictionaries as indicated by the 12Dicts package.
|
||||
|
||||
The 70 level includes Brian's frequency class 0 and the 74,550 common
|
||||
dictionary words from the MWords package. The common dictionary words,
|
||||
like those from the 12Dicts package, have had all likely inflections
|
||||
added. The 70 level also included the 5desk list from version 4.0 of
|
||||
the 12Dics package which is in the public domain.
|
||||
|
||||
The 80 level includes the ENABLE word list, all the lists in the
|
||||
ENABLE supplement package (except for ABLE), the "UK Advanced Cryptics
|
||||
Dictionary" (UKACD), the list of signature words from the YAWL package,
|
||||
and the 10,196 places list from the MWords package.
|
||||
|
||||
The ENABLE package, mainted by M\Cooper <thegrendel@theriver.com>,
|
||||
is in the Public Domain:
|
||||
|
||||
The ENABLE master word list, WORD.LST, is herewith formally released
|
||||
into the Public Domain. Anyone is free to use it or distribute it in
|
||||
any manner they see fit. No fee or registration is required for its
|
||||
use nor are "contributions" solicited (if you feel you absolutely
|
||||
must contribute something for your own peace of mind, the authors of
|
||||
the ENABLE list ask that you make a donation on their behalf to your
|
||||
favorite charity). This word list is our gift to the Scrabble
|
||||
community, as an alternate to "official" word lists. Game designers
|
||||
may feel free to incorporate the WORD.LST into their games. Please
|
||||
mention the source and credit us as originators of the list. Note
|
||||
that if you, as a game designer, use the WORD.LST in your product,
|
||||
you may still copyright and protect your product, but you may *not*
|
||||
legally copyright or in any way restrict redistribution of the
|
||||
WORD.LST portion of your product. This *may* under law restrict your
|
||||
rights to restrict your users' rights, but that is only fair.
|
||||
|
||||
UKACD, by J Ross Beresford <ross@bryson.demon.co.uk>, is under the
|
||||
following copyright:
|
||||
|
||||
Copyright (c) J Ross Beresford 1993-1999. All Rights Reserved.
|
||||
|
||||
The following restriction is placed on the use of this publication:
|
||||
if The UK Advanced Cryptics Dictionary is used in a software package
|
||||
or redistributed in any form, the copyright notice must be
|
||||
prominently displayed and the text of this document must be included
|
||||
verbatim.
|
||||
|
||||
There are no other restrictions: I would like to see the list
|
||||
distributed as widely as possible.
|
||||
|
||||
The 95 level includes the 354,984 single words, 256,772 compound
|
||||
words, 4,946 female names and the 3,897 male names, and 21,986 names
|
||||
from the MWords package, ABLE.LST from the ENABLE Supplement, and some
|
||||
additional words found in my part-of-speech database that were not
|
||||
found anywhere else.
|
||||
|
||||
Accent information was taken from UKACD.
|
||||
|
||||
The VarCon package was used to create the American, British, Canadian,
|
||||
and Australian word list. It is under the following copyright:
|
||||
|
||||
Copyright 2000-2016 by Kevin Atkinson
|
||||
|
||||
Permission to use, copy, modify, distribute and sell this array, the
|
||||
associated software, and its documentation for any purpose is hereby
|
||||
granted without fee, provided that the above copyright notice appears
|
||||
in all copies and that both that copyright notice and this permission
|
||||
notice appear in supporting documentation. Kevin Atkinson makes no
|
||||
representations about the suitability of this array for any
|
||||
purpose. It is provided "as is" without express or implied warranty.
|
||||
|
||||
Copyright 2016 by Benjamin Titze
|
||||
|
||||
Permission to use, copy, modify, distribute and sell this array, the
|
||||
associated software, and its documentation for any purpose is hereby
|
||||
granted without fee, provided that the above copyright notice appears
|
||||
in all copies and that both that copyright notice and this permission
|
||||
notice appear in supporting documentation. Benjamin Titze makes no
|
||||
representations about the suitability of this array for any
|
||||
purpose. It is provided "as is" without express or implied warranty.
|
||||
|
||||
Since the original words lists come from the Ispell distribution:
|
||||
|
||||
Copyright 1993, Geoff Kuenning, Granada Hills, CA
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. All modifications to the source code must be clearly marked as
|
||||
such. Binary redistributions based on modified source code
|
||||
must be clearly marked as modified versions in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
(clause 4 removed with permission from Geoff Kuenning)
|
||||
5. The name of Geoff Kuenning may not be used to endorse or promote
|
||||
products derived from this software without specific prior
|
||||
written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
Build Date: Mon Dec 7 20:19:28 EST 2020
|
||||
Wordlist Command: mk-list --accents=strip en_CA 60
|
||||
@@ -0,0 +1,205 @@
|
||||
SET UTF-8
|
||||
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
|
||||
ICONV 1
|
||||
ICONV ’ '
|
||||
NOSUGGEST !
|
||||
|
||||
# ordinal numbers
|
||||
COMPOUNDMIN 1
|
||||
# only in compounds: 1th, 2th, 3th
|
||||
ONLYINCOMPOUND c
|
||||
# compound rules:
|
||||
# 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
|
||||
# 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
|
||||
COMPOUNDRULE 2
|
||||
COMPOUNDRULE n*1t
|
||||
COMPOUNDRULE n*mp
|
||||
WORDCHARS 0123456789
|
||||
|
||||
PFX A Y 1
|
||||
PFX A 0 re .
|
||||
|
||||
PFX I Y 1
|
||||
PFX I 0 in .
|
||||
|
||||
PFX U Y 1
|
||||
PFX U 0 un .
|
||||
|
||||
PFX C Y 1
|
||||
PFX C 0 de .
|
||||
|
||||
PFX E Y 1
|
||||
PFX E 0 dis .
|
||||
|
||||
PFX F Y 1
|
||||
PFX F 0 con .
|
||||
|
||||
PFX K Y 1
|
||||
PFX K 0 pro .
|
||||
|
||||
SFX V N 2
|
||||
SFX V e ive e
|
||||
SFX V 0 ive [^e]
|
||||
|
||||
SFX N Y 3
|
||||
SFX N e ion e
|
||||
SFX N y ication y
|
||||
SFX N 0 en [^ey]
|
||||
|
||||
SFX X Y 3
|
||||
SFX X e ions e
|
||||
SFX X y ications y
|
||||
SFX X 0 ens [^ey]
|
||||
|
||||
SFX H N 2
|
||||
SFX H y ieth y
|
||||
SFX H 0 th [^y]
|
||||
|
||||
SFX Y Y 1
|
||||
SFX Y 0 ly .
|
||||
|
||||
SFX G Y 2
|
||||
SFX G e ing e
|
||||
SFX G 0 ing [^e]
|
||||
|
||||
SFX J Y 2
|
||||
SFX J e ings e
|
||||
SFX J 0 ings [^e]
|
||||
|
||||
SFX D Y 4
|
||||
SFX D 0 d e
|
||||
SFX D y ied [^aeiou]y
|
||||
SFX D 0 ed [^ey]
|
||||
SFX D 0 ed [aeiou]y
|
||||
|
||||
SFX T N 4
|
||||
SFX T 0 st e
|
||||
SFX T y iest [^aeiou]y
|
||||
SFX T 0 est [aeiou]y
|
||||
SFX T 0 est [^ey]
|
||||
|
||||
SFX R Y 4
|
||||
SFX R 0 r e
|
||||
SFX R y ier [^aeiou]y
|
||||
SFX R 0 er [aeiou]y
|
||||
SFX R 0 er [^ey]
|
||||
|
||||
SFX Z Y 4
|
||||
SFX Z 0 rs e
|
||||
SFX Z y iers [^aeiou]y
|
||||
SFX Z 0 ers [aeiou]y
|
||||
SFX Z 0 ers [^ey]
|
||||
|
||||
SFX S Y 4
|
||||
SFX S y ies [^aeiou]y
|
||||
SFX S 0 s [aeiou]y
|
||||
SFX S 0 es [sxzh]
|
||||
SFX S 0 s [^sxzhy]
|
||||
|
||||
SFX P Y 3
|
||||
SFX P y iness [^aeiou]y
|
||||
SFX P 0 ness [aeiou]y
|
||||
SFX P 0 ness [^y]
|
||||
|
||||
SFX M Y 1
|
||||
SFX M 0 's .
|
||||
|
||||
SFX B Y 3
|
||||
SFX B 0 able [^aeiou]
|
||||
SFX B 0 able ee
|
||||
SFX B e able [^aeiou]e
|
||||
|
||||
SFX L Y 1
|
||||
SFX L 0 ment .
|
||||
|
||||
REP 90
|
||||
REP a ei
|
||||
REP ei a
|
||||
REP a ey
|
||||
REP ey a
|
||||
REP ai ie
|
||||
REP ie ai
|
||||
REP alot a_lot
|
||||
REP are air
|
||||
REP are ear
|
||||
REP are eir
|
||||
REP air are
|
||||
REP air ere
|
||||
REP ere air
|
||||
REP ere ear
|
||||
REP ere eir
|
||||
REP ear are
|
||||
REP ear air
|
||||
REP ear ere
|
||||
REP eir are
|
||||
REP eir ere
|
||||
REP ch te
|
||||
REP te ch
|
||||
REP ch ti
|
||||
REP ti ch
|
||||
REP ch tu
|
||||
REP tu ch
|
||||
REP ch s
|
||||
REP s ch
|
||||
REP ch k
|
||||
REP k ch
|
||||
REP f ph
|
||||
REP ph f
|
||||
REP gh f
|
||||
REP f gh
|
||||
REP i igh
|
||||
REP igh i
|
||||
REP i uy
|
||||
REP uy i
|
||||
REP i ee
|
||||
REP ee i
|
||||
REP j di
|
||||
REP di j
|
||||
REP j gg
|
||||
REP gg j
|
||||
REP j ge
|
||||
REP ge j
|
||||
REP s ti
|
||||
REP ti s
|
||||
REP s ci
|
||||
REP ci s
|
||||
REP k cc
|
||||
REP cc k
|
||||
REP k qu
|
||||
REP qu k
|
||||
REP kw qu
|
||||
REP o eau
|
||||
REP eau o
|
||||
REP o ew
|
||||
REP ew o
|
||||
REP oo ew
|
||||
REP ew oo
|
||||
REP ew ui
|
||||
REP ui ew
|
||||
REP oo ui
|
||||
REP ui oo
|
||||
REP ew u
|
||||
REP u ew
|
||||
REP oo u
|
||||
REP u oo
|
||||
REP u oe
|
||||
REP oe u
|
||||
REP u ieu
|
||||
REP ieu u
|
||||
REP ue ew
|
||||
REP ew ue
|
||||
REP uff ough
|
||||
REP oo ieu
|
||||
REP ieu oo
|
||||
REP ier ear
|
||||
REP ear ier
|
||||
REP ear air
|
||||
REP air ear
|
||||
REP w qu
|
||||
REP qu w
|
||||
REP z ss
|
||||
REP ss z
|
||||
REP shun tion
|
||||
REP shun sion
|
||||
REP shun cion
|
||||
REP size cise
|
||||
@@ -0,0 +1,347 @@
|
||||
en_GB-ise Hunspell Dictionary
|
||||
Version 2020.12.07
|
||||
Mon Dec 7 20:14:35 2020 -0500 [5ef55f9]
|
||||
http://wordlist.sourceforge.net
|
||||
|
||||
README file for English Hunspell dictionaries derived from SCOWL.
|
||||
|
||||
These dictionaries are created using the speller/make-hunspell-dict
|
||||
script in SCOWL.
|
||||
|
||||
The following dictionaries are available:
|
||||
|
||||
en_US (American)
|
||||
en_CA (Canadian)
|
||||
en_GB-ise (British with "ise" spelling)
|
||||
en_GB-ize (British with "ize" spelling)
|
||||
en_AU (Australian)
|
||||
|
||||
en_US-large
|
||||
en_CA-large
|
||||
en_GB-large (with both "ise" and "ize" spelling)
|
||||
en_AU-large
|
||||
|
||||
The normal (non-large) dictionaries correspond to SCOWL size 60 and,
|
||||
to encourage consistent spelling, generally only include one spelling
|
||||
variant for a word. The large dictionaries correspond to SCOWL size
|
||||
70 and may include multiple spelling for a word when both variants are
|
||||
considered almost equal. The larger dictionaries however (1) have not
|
||||
been as carefully checked for errors as the normal dictionaries and
|
||||
thus may contain misspelled or invalid words; and (2) contain
|
||||
uncommon, yet valid, words that might cause problems as they are
|
||||
likely to be misspellings of more common words (for example, "ort" and
|
||||
"calender").
|
||||
|
||||
To get an idea of the difference in size, here are 25 random words
|
||||
only found in the large dictionary for American English:
|
||||
|
||||
Bermejo Freyr's Guenevere Hatshepsut Nottinghamshire arrestment
|
||||
crassitudes crural dogwatches errorless fetial flaxseeds godroon
|
||||
incretion jalapeño's kelpie kishkes neuroglias pietisms pullulation
|
||||
stemwinder stenoses syce thalassic zees
|
||||
|
||||
The en_US, en_CA and en_AU are the official dictionaries for Hunspell.
|
||||
The en_GB and large dictionaries are made available on an experimental
|
||||
basis. If you find them useful please send me a quick email at
|
||||
kevina@gnu.org.
|
||||
|
||||
If none of these dictionaries suite you (for example, maybe you want
|
||||
the normal dictionary that also includes common variants) additional
|
||||
dictionaries can be generated at http://app.aspell.net/create or by
|
||||
modifying speller/make-hunspell-dict in SCOWL. Please do let me know
|
||||
if you end up publishing a customized dictionary.
|
||||
|
||||
If a word is not found in the dictionary or a word is there you think
|
||||
shouldn't be, you can lookup the word up at http://app.aspell.net/lookup
|
||||
to help determine why that is.
|
||||
|
||||
General comments on these list can be sent directly to me at
|
||||
kevina@gnu.org or to the wordlist-devel mailing lists
|
||||
(https://lists.sourceforge.net/lists/listinfo/wordlist-devel). If you
|
||||
have specific issues with any of these dictionaries please file a bug
|
||||
report at https://github.com/kevina/wordlist/issues.
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED In 2016.11.20:
|
||||
|
||||
New Australian dictionaries thanks to the work of Benjamin Titze
|
||||
(btitze@protonmail.ch).
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED IN 2016.04.24:
|
||||
|
||||
The dictionaries are now in UTF-8 format instead of ISO-8859-1. This
|
||||
was required to handle smart quotes correctly.
|
||||
|
||||
IMPORTANT CHANGES INTRODUCED IN 2016.01.19:
|
||||
|
||||
"SET UTF8" was changes to "SET UTF-8" in the affix file as some
|
||||
versions of Hunspell do not recognize "UTF8".
|
||||
|
||||
ADDITIONAL NOTES:
|
||||
|
||||
The NOSUGGEST flag was added to certain taboo words. While I made an
|
||||
honest attempt to flag the strongest taboo words with the NOSUGGEST
|
||||
flag, I MAKE NO GUARANTEE THAT I FLAGGED EVERY POSSIBLE TABOO WORD.
|
||||
The list was originally derived from Németh László, however I removed
|
||||
some words which, while being considered taboo by some dictionaries,
|
||||
are not really considered swear words in today's society.
|
||||
|
||||
COPYRIGHT, SOURCES, and CREDITS:
|
||||
|
||||
The English dictionaries come directly from SCOWL
|
||||
and is thus under the same copyright of SCOWL. The affix file is
|
||||
a heavily modified version of the original english.aff file which was
|
||||
released as part of Geoff Kuenning's Ispell and as such is covered by
|
||||
his BSD license. Part of SCOWL is also based on Ispell thus the
|
||||
Ispell copyright is included with the SCOWL copyright.
|
||||
|
||||
The collective work is Copyright 2000-2018 by Kevin Atkinson as well
|
||||
as any of the copyrights mentioned below:
|
||||
|
||||
Copyright 2000-2018 by Kevin Atkinson
|
||||
|
||||
Permission to use, copy, modify, distribute and sell these word
|
||||
lists, the associated scripts, the output created from the scripts,
|
||||
and its documentation for any purpose is hereby granted without fee,
|
||||
provided that the above copyright notice appears in all copies and
|
||||
that both that copyright notice and this permission notice appear in
|
||||
supporting documentation. Kevin Atkinson makes no representations
|
||||
about the suitability of this array for any purpose. It is provided
|
||||
"as is" without express or implied warranty.
|
||||
|
||||
Alan Beale <biljir@pobox.com> also deserves special credit as he has,
|
||||
in addition to providing the 12Dicts package and being a major
|
||||
contributor to the ENABLE word list, given me an incredible amount of
|
||||
feedback and created a number of special lists (those found in the
|
||||
Supplement) in order to help improve the overall quality of SCOWL.
|
||||
|
||||
The 10 level includes the 1000 most common English words (according to
|
||||
the Moby (TM) Words II [MWords] package), a subset of the 1000 most
|
||||
common words on the Internet (again, according to Moby Words II), and
|
||||
frequently class 16 from Brian Kelk's "UK English Wordlist
|
||||
with Frequency Classification".
|
||||
|
||||
The MWords package was explicitly placed in the public domain:
|
||||
|
||||
The Moby lexicon project is complete and has
|
||||
been place into the public domain. Use, sell,
|
||||
rework, excerpt and use in any way on any platform.
|
||||
|
||||
Placing this material on internal or public servers is
|
||||
also encouraged. The compiler is not aware of any
|
||||
export restrictions so freely distribute world-wide.
|
||||
|
||||
You can verify the public domain status by contacting
|
||||
|
||||
Grady Ward
|
||||
3449 Martha Ct.
|
||||
Arcata, CA 95521-4884
|
||||
|
||||
grady@netcom.com
|
||||
grady@northcoast.com
|
||||
|
||||
The "UK English Wordlist With Frequency Classification" is also in the
|
||||
Public Domain:
|
||||
|
||||
Date: Sat, 08 Jul 2000 20:27:21 +0100
|
||||
From: Brian Kelk <Brian.Kelk@cl.cam.ac.uk>
|
||||
|
||||
> I was wondering what the copyright status of your "UK English
|
||||
> Wordlist With Frequency Classification" word list as it seems to
|
||||
> be lacking any copyright notice.
|
||||
|
||||
There were many many sources in total, but any text marked
|
||||
"copyright" was avoided. Locally-written documentation was one
|
||||
source. An earlier version of the list resided in a filespace called
|
||||
PUBLIC on the University mainframe, because it was considered public
|
||||
domain.
|
||||
|
||||
Date: Tue, 11 Jul 2000 19:31:34 +0100
|
||||
|
||||
> So are you saying your word list is also in the public domain?
|
||||
|
||||
That is the intention.
|
||||
|
||||
The 20 level includes frequency classes 7-15 from Brian's word list.
|
||||
|
||||
The 35 level includes frequency classes 2-6 and words appearing in at
|
||||
least 11 of 12 dictionaries as indicated in the 12Dicts package. All
|
||||
words from the 12Dicts package have had likely inflections added via
|
||||
my inflection database.
|
||||
|
||||
The 12Dicts package and Supplement is in the Public Domain.
|
||||
|
||||
The WordNet database, which was used in the creation of the
|
||||
Inflections database, is under the following copyright:
|
||||
|
||||
This software and database is being provided to you, the LICENSEE,
|
||||
by Princeton University under the following license. By obtaining,
|
||||
using and/or copying this software and database, you agree that you
|
||||
have read, understood, and will comply with these terms and
|
||||
conditions.:
|
||||
|
||||
Permission to use, copy, modify and distribute this software and
|
||||
database and its documentation for any purpose and without fee or
|
||||
royalty is hereby granted, provided that you agree to comply with
|
||||
the following copyright notice and statements, including the
|
||||
disclaimer, and that the same appear on ALL copies of the software,
|
||||
database and documentation, including modifications that you make
|
||||
for internal use or for distribution.
|
||||
|
||||
WordNet 1.6 Copyright 1997 by Princeton University. All rights
|
||||
reserved.
|
||||
|
||||
THIS SOFTWARE AND DATABASE IS PROVIDED "AS IS" AND PRINCETON
|
||||
UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
|
||||
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PRINCETON
|
||||
UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES OF MERCHANT-
|
||||
ABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
|
||||
LICENSED SOFTWARE, DATABASE OR DOCUMENTATION WILL NOT INFRINGE ANY
|
||||
THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
|
||||
|
||||
The name of Princeton University or Princeton may not be used in
|
||||
advertising or publicity pertaining to distribution of the software
|
||||
and/or database. Title to copyright in this software, database and
|
||||
any associated documentation shall at all times remain with
|
||||
Princeton University and LICENSEE agrees to preserve same.
|
||||
|
||||
The 40 level includes words from Alan's 3esl list found in version 4.0
|
||||
of his 12dicts package. Like his other stuff the 3esl list is also in the
|
||||
public domain.
|
||||
|
||||
The 50 level includes Brian's frequency class 1, words appearing
|
||||
in at least 5 of 12 of the dictionaries as indicated in the 12Dicts
|
||||
package, and uppercase words in at least 4 of the previous 12
|
||||
dictionaries. A decent number of proper names is also included: The
|
||||
top 1000 male, female, and Last names from the 1990 Census report; a
|
||||
list of names sent to me by Alan Beale; and a few names that I added
|
||||
myself. Finally a small list of abbreviations not commonly found in
|
||||
other word lists is included.
|
||||
|
||||
The name files form the Census report is a government document which I
|
||||
don't think can be copyrighted.
|
||||
|
||||
The file special-jargon.50 uses common.lst and word.lst from the
|
||||
"Unofficial Jargon File Word Lists" which is derived from "The Jargon
|
||||
File". All of which is in the Public Domain. This file also contain
|
||||
a few extra UNIX terms which are found in the file "unix-terms" in the
|
||||
special/ directory.
|
||||
|
||||
The 55 level includes words from Alan's 2of4brif list found in version
|
||||
4.0 of his 12dicts package. Like his other stuff the 2of4brif is also
|
||||
in the public domain.
|
||||
|
||||
The 60 level includes all words appearing in at least 2 of the 12
|
||||
dictionaries as indicated by the 12Dicts package.
|
||||
|
||||
The 70 level includes Brian's frequency class 0 and the 74,550 common
|
||||
dictionary words from the MWords package. The common dictionary words,
|
||||
like those from the 12Dicts package, have had all likely inflections
|
||||
added. The 70 level also included the 5desk list from version 4.0 of
|
||||
the 12Dics package which is in the public domain.
|
||||
|
||||
The 80 level includes the ENABLE word list, all the lists in the
|
||||
ENABLE supplement package (except for ABLE), the "UK Advanced Cryptics
|
||||
Dictionary" (UKACD), the list of signature words from the YAWL package,
|
||||
and the 10,196 places list from the MWords package.
|
||||
|
||||
The ENABLE package, mainted by M\Cooper <thegrendel@theriver.com>,
|
||||
is in the Public Domain:
|
||||
|
||||
The ENABLE master word list, WORD.LST, is herewith formally released
|
||||
into the Public Domain. Anyone is free to use it or distribute it in
|
||||
any manner they see fit. No fee or registration is required for its
|
||||
use nor are "contributions" solicited (if you feel you absolutely
|
||||
must contribute something for your own peace of mind, the authors of
|
||||
the ENABLE list ask that you make a donation on their behalf to your
|
||||
favorite charity). This word list is our gift to the Scrabble
|
||||
community, as an alternate to "official" word lists. Game designers
|
||||
may feel free to incorporate the WORD.LST into their games. Please
|
||||
mention the source and credit us as originators of the list. Note
|
||||
that if you, as a game designer, use the WORD.LST in your product,
|
||||
you may still copyright and protect your product, but you may *not*
|
||||
legally copyright or in any way restrict redistribution of the
|
||||
WORD.LST portion of your product. This *may* under law restrict your
|
||||
rights to restrict your users' rights, but that is only fair.
|
||||
|
||||
UKACD, by J Ross Beresford <ross@bryson.demon.co.uk>, is under the
|
||||
following copyright:
|
||||
|
||||
Copyright (c) J Ross Beresford 1993-1999. All Rights Reserved.
|
||||
|
||||
The following restriction is placed on the use of this publication:
|
||||
if The UK Advanced Cryptics Dictionary is used in a software package
|
||||
or redistributed in any form, the copyright notice must be
|
||||
prominently displayed and the text of this document must be included
|
||||
verbatim.
|
||||
|
||||
There are no other restrictions: I would like to see the list
|
||||
distributed as widely as possible.
|
||||
|
||||
The 95 level includes the 354,984 single words, 256,772 compound
|
||||
words, 4,946 female names and the 3,897 male names, and 21,986 names
|
||||
from the MWords package, ABLE.LST from the ENABLE Supplement, and some
|
||||
additional words found in my part-of-speech database that were not
|
||||
found anywhere else.
|
||||
|
||||
Accent information was taken from UKACD.
|
||||
|
||||
The VarCon package was used to create the American, British, Canadian,
|
||||
and Australian word list. It is under the following copyright:
|
||||
|
||||
Copyright 2000-2016 by Kevin Atkinson
|
||||
|
||||
Permission to use, copy, modify, distribute and sell this array, the
|
||||
associated software, and its documentation for any purpose is hereby
|
||||
granted without fee, provided that the above copyright notice appears
|
||||
in all copies and that both that copyright notice and this permission
|
||||
notice appear in supporting documentation. Kevin Atkinson makes no
|
||||
representations about the suitability of this array for any
|
||||
purpose. It is provided "as is" without express or implied warranty.
|
||||
|
||||
Copyright 2016 by Benjamin Titze
|
||||
|
||||
Permission to use, copy, modify, distribute and sell this array, the
|
||||
associated software, and its documentation for any purpose is hereby
|
||||
granted without fee, provided that the above copyright notice appears
|
||||
in all copies and that both that copyright notice and this permission
|
||||
notice appear in supporting documentation. Benjamin Titze makes no
|
||||
representations about the suitability of this array for any
|
||||
purpose. It is provided "as is" without express or implied warranty.
|
||||
|
||||
Since the original words lists come from the Ispell distribution:
|
||||
|
||||
Copyright 1993, Geoff Kuenning, Granada Hills, CA
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. All modifications to the source code must be clearly marked as
|
||||
such. Binary redistributions based on modified source code
|
||||
must be clearly marked as modified versions in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
(clause 4 removed with permission from Geoff Kuenning)
|
||||
5. The name of Geoff Kuenning may not be used to endorse or promote
|
||||
products derived from this software without specific prior
|
||||
written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
Build Date: Mon Dec 7 20:19:30 EST 2020
|
||||
Wordlist Command: mk-list --accents=strip en_GB-ise 60
|
||||
@@ -0,0 +1,709 @@
|
||||
MySpell English (South African) Spellchecker
|
||||
--------------------------------------------
|
||||
|
||||
1. Welcome
|
||||
2. Copyright
|
||||
3. Installation and Setup
|
||||
4. Contributing
|
||||
5. Copying
|
||||
|
||||
Enjoy!
|
||||
|
||||
1. Welcome
|
||||
==========
|
||||
|
||||
This spellchecker is Free Software:
|
||||
|
||||
Free to use - Free to share - Free to change.
|
||||
|
||||
See section 4. Contributing to see how you can help make it even better.
|
||||
|
||||
|
||||
Why Free Software?
|
||||
------------------
|
||||
|
||||
The Translate.org.za project's aim is to make language resources and software
|
||||
available to the speakers of that language and licensed in such a way that the
|
||||
resources remain Free and thus available to all the language's speakers.
|
||||
After all it is you, the speakers of South African English, who has actually developed
|
||||
it into the language that it is today.
|
||||
|
||||
What is Free Software?
|
||||
----------------------
|
||||
|
||||
For a good explanation of Free Software visit:
|
||||
http://www.gnu.org/philosophy/philosophy.html AND
|
||||
http://www.gnu.org/philosophy/free-sw.html
|
||||
|
||||
|
||||
2. Copyright
|
||||
============
|
||||
|
||||
British English Wordlist
|
||||
------------------------
|
||||
|
||||
The South African English wordlist uses the same list developed for the
|
||||
British English spell checker. That word list itself is derived from
|
||||
the English word lists developed for Aspell. This list is released
|
||||
under the LGPL.
|
||||
|
||||
More details of the British English dictionary project can be found here:
|
||||
http://en-gb.pyxidium.co.uk/dictionary
|
||||
|
||||
From the README for the British English Myspell spell checker:
|
||||
|
||||
This dictionary was initially based on a subset of the
|
||||
original English wordlist created by Kevin Atkinson for
|
||||
Pspell and Aspell and thus is covered by his original
|
||||
LGPL licence.
|
||||
|
||||
It has been extensively updated by David Bartlett, Brian Kelk
|
||||
and Andrew Brown:
|
||||
- numerous Americanism have been removed
|
||||
- numerous American spellings have been corrected
|
||||
- missing words have been added
|
||||
- many errors have been corrected
|
||||
- compound hyphenated words have been added where appropriate
|
||||
|
||||
Valuable inputs to this process were received from many other
|
||||
people - far too numerous to name. Serious thanks to you all
|
||||
for your greatly appreciated help.
|
||||
|
||||
This word list is intended to be a good representation of
|
||||
current modern British English and thus it should be a good
|
||||
basis for Commonwealth English in most countries of the world
|
||||
outside North America.
|
||||
|
||||
The affix file has been created completely from scratch
|
||||
by David Bartlett and Andrew Brown, based on the published
|
||||
rules for MySpell and is also provided under the LGPL.
|
||||
|
||||
In creating the affix rules an attempt has been made to
|
||||
reproduce the most general rules for English word
|
||||
formation, rather than merely use it as a means to
|
||||
compress the size of the dictionary. It is hoped that this
|
||||
will facilitate future localisation to other variants of
|
||||
English.
|
||||
|
||||
Please let David Bartlett <dwb@openoffice.org> know of any
|
||||
errors that you find.
|
||||
|
||||
The current release is R 1.18, 11/04/05
|
||||
|
||||
|
||||
MySpell Affix File
|
||||
------------------
|
||||
|
||||
Copyright David Bartlett and Andrew Brown
|
||||
Released under the LGPL
|
||||
|
||||
South African English Wordlists
|
||||
-------------------------------
|
||||
|
||||
See the respective header files of the source wordlists for their copyright.
|
||||
All those developed by the Zuza Software Foundation are released under the
|
||||
LGPL.
|
||||
|
||||
3. Installation and Setup
|
||||
=========================
|
||||
|
||||
Automated
|
||||
---------
|
||||
|
||||
Newer versions of OpenOffice.org have a built in macro to step you through an
|
||||
automatic install process.
|
||||
|
||||
File -> Autopilot -> Install new dictionaries...
|
||||
|
||||
If this is unavailable then download 'DicOOo.sxw' from:
|
||||
http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries/dicooo/DicOOo.sxw
|
||||
|
||||
Run the macro and follow the steps outlined. If you would like the dictionary
|
||||
to be available to all users then run the installation as the administrative or
|
||||
root user. It is best to restart OpenOffice.org after the installation.
|
||||
|
||||
The macro operates in two modes:
|
||||
|
||||
1) Online - the latest dictionaries are retrieved from the OpenOffice.org
|
||||
website.
|
||||
|
||||
2) Offline - an offline dictionary pack, which you have already downloaded, is
|
||||
installed from the hard-drive. Offline dictionaries can be downloaded from:
|
||||
http://lingucomponent.openoffice.org/dictpack.html
|
||||
OR
|
||||
http://sourceforge.net/project/showfiles.php?group_id=91920&package_id=103504
|
||||
|
||||
For more detailed instructions see:
|
||||
http://lingucomponent.openoffice.org/auto_instal.html
|
||||
|
||||
|
||||
Non-automated
|
||||
-------------
|
||||
|
||||
For instructions on how to install the Afrikaans dictionary manually please visit
|
||||
the following URL:
|
||||
http://lingucomponent.openoffice.org/manual_instal.html
|
||||
|
||||
|
||||
Spellchecker Selection
|
||||
----------------------
|
||||
|
||||
Once the spellchecker is installed you need to configure a few settings and
|
||||
perform some checks.
|
||||
|
||||
1) Check that the Afrikaans Spellchecker is enabled.
|
||||
|
||||
Tools -> Options -> Language Settings -> Writing Aids
|
||||
|
||||
In the section marked 'Available language modules' select 'Edit...'. Under
|
||||
the languages drop-down select Afrikaans and ensure that the 'OpenOffice.org
|
||||
MySpell SpellChecker' is enabled.
|
||||
|
||||
2) Set your default document language to Afrikaans
|
||||
|
||||
If most of your writing is in Afrikaans then this step will ensure that
|
||||
documents you compose from now on are treated as Afrikaans documents. If much
|
||||
of your writing is in English you might want to skip this step.
|
||||
|
||||
Tools -> Options -> Language Settings -> Languages
|
||||
|
||||
In the section marked 'Default languages for documents' is a drop-down labelled
|
||||
'Western'. Afrikaans has a tick next to it to indicate that a spellchecker is
|
||||
installed. Set your default language to Afrikaans.
|
||||
|
||||
3) Changing existing documents or paragraphs to Afrikaans
|
||||
|
||||
Some old document might be written in Afrikaans but the document was stored
|
||||
indicating that the text was in English. You can indicate that this is
|
||||
Afrikaans text by:
|
||||
|
||||
a) Select the relevant text (Ctrl-A selects the whole document)
|
||||
b) Format -> Character...
|
||||
Change the 'Language' drop-down to Afrikaans.
|
||||
|
||||
|
||||
4. Contributing
|
||||
===============
|
||||
|
||||
You can help to make this software better by:
|
||||
|
||||
a) Contributing corrections and missing words
|
||||
b) Contributing your wordlists
|
||||
c) Reviewing the existing wordlists and user contributed lists.
|
||||
d) Joining the Afrikaans translation and dictionary discussion list
|
||||
'translate-discuss-af' at:
|
||||
http://sourceforge.net/mail/?group_id=91920
|
||||
|
||||
Email your contributions to Dwayne Bailey <dwayne@translate.org.za>.
|
||||
|
||||
|
||||
5. Copying
|
||||
==========
|
||||
|
||||
This software is released under the LGPL which is included here for your
|
||||
information.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
[This is the first released version of the Lesser GPL. It also counts
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
Licenses are intended to guarantee your freedom to share and change
|
||||
free software--to make sure the software is free for all its users.
|
||||
|
||||
This license, the Lesser General Public License, applies to some
|
||||
specially designated software packages--typically libraries--of the
|
||||
Free Software Foundation and other authors who decide to use it. You
|
||||
can use it too, but we suggest you first think carefully about whether
|
||||
this license or the ordinary General Public License is the better
|
||||
strategy to use in any particular case, based on the explanations below.
|
||||
|
||||
When we speak of free software, we are referring to freedom of use,
|
||||
not price. Our General Public Licenses are designed to make sure that
|
||||
you have the freedom to distribute copies of free software (and charge
|
||||
for this service if you wish); that you receive source code or can get
|
||||
it if you want it; that you can change the software and use pieces of
|
||||
it in new free programs; and that you are informed that you can do
|
||||
these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
distributors to deny you these rights or to ask you to surrender these
|
||||
rights. These restrictions translate to certain responsibilities for
|
||||
you if you distribute copies of the library or if you modify it.
|
||||
|
||||
For example, if you distribute copies of the library, whether gratis
|
||||
or for a fee, you must give the recipients all the rights that we gave
|
||||
you. You must make sure that they, too, receive or can get the source
|
||||
code. If you link other code with the library, you must provide
|
||||
complete object files to the recipients, so that they can relink them
|
||||
with the library after making changes to the library and recompiling
|
||||
it. And you must show them these terms so they know their rights.
|
||||
|
||||
We protect your rights with a two-step method: (1) we copyright the
|
||||
library, and (2) we offer you this license, which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
To protect each distributor, we want to make it very clear that
|
||||
there is no warranty for the free library. Also, if the library is
|
||||
modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
restrictive license from a patent holder. Therefore, we insist that
|
||||
any patent license obtained for a version of the library must be
|
||||
consistent with the full freedom of use specified in this license.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the
|
||||
ordinary GNU General Public License. This license, the GNU Lesser
|
||||
General Public License, applies to certain designated libraries, and
|
||||
is quite different from the ordinary General Public License. We use
|
||||
this license for certain libraries in order to permit linking those
|
||||
libraries into non-free programs.
|
||||
|
||||
When a program is linked with a library, whether statically or using
|
||||
a shared library, the combination of the two is legally speaking a
|
||||
combined work, a derivative of the original library. The ordinary
|
||||
General Public License therefore permits such linking only if the
|
||||
entire combination fits its criteria of freedom. The Lesser General
|
||||
Public License permits more lax criteria for linking other code with
|
||||
the library.
|
||||
|
||||
We call this license the "Lesser" General Public License because it
|
||||
does Less to protect the user's freedom than the ordinary General
|
||||
Public License. It also provides other free software developers Less
|
||||
of an advantage over competing non-free programs. These disadvantages
|
||||
are the reason we use the ordinary General Public License for many
|
||||
libraries. However, the Lesser license provides advantages in certain
|
||||
special circumstances.
|
||||
|
||||
For example, on rare occasions, there may be a special need to
|
||||
encourage the widest possible use of a certain library, so that it becomes
|
||||
a de-facto standard. To achieve this, non-free programs must be
|
||||
allowed to use the library. A more frequent case is that a free
|
||||
library does the same job as widely used non-free libraries. In this
|
||||
case, there is little to gain by limiting the free library to free
|
||||
software only, so we use the Lesser General Public License.
|
||||
|
||||
In other cases, permission to use a particular library in non-free
|
||||
programs enables a greater number of people to use a large body of
|
||||
free software. For example, permission to use the GNU C Library in
|
||||
non-free programs enables many more people to use the whole GNU
|
||||
operating system, as well as its variant, the GNU/Linux operating
|
||||
system.
|
||||
|
||||
Although the Lesser General Public License is Less protective of the
|
||||
users' freedom, it does ensure that the user of a program that is
|
||||
linked with the Library has the freedom and the wherewithal to run
|
||||
that program using a modified version of the Library.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
program which contains a notice placed by the copyright holder or
|
||||
other authorized party saying it may be distributed under the terms of
|
||||
this Lesser General Public License (also called "this License").
|
||||
Each licensee is addressed as "you".
|
||||
|
||||
A "library" means a collection of software functions and/or data
|
||||
prepared so as to be conveniently linked with application programs
|
||||
(which use some of those functions and data) to form executables.
|
||||
|
||||
The "Library", below, refers to any such software library or work
|
||||
which has been distributed under these terms. A "work based on the
|
||||
Library" means either the Library or any derivative work under
|
||||
copyright law: that is to say, a work containing the Library or a
|
||||
portion of it, either verbatim or with modifications and/or translated
|
||||
straightforwardly into another language. (Hereinafter, translation is
|
||||
included without limitation in the term "modification".)
|
||||
|
||||
"Source code" for a work means the preferred form of the work for
|
||||
making modifications to it. For a library, complete source code means
|
||||
all the source code for all modules it contains, plus any associated
|
||||
interface definition files, plus the scripts used to control compilation
|
||||
and installation of the library.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running a program using the Library is not restricted, and output from
|
||||
such a program is covered only if its contents constitute a work based
|
||||
on the Library (independent of the use of the Library in a tool for
|
||||
writing it). Whether that is true depends on what the Library does
|
||||
and what the program that uses the Library does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Library's
|
||||
complete source code as you receive it, in any medium, provided that
|
||||
you conspicuously and appropriately publish on each copy an
|
||||
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||
all the notices that refer to this License and to the absence of any
|
||||
warranty; and distribute a copy of this License along with the
|
||||
Library.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) The modified work must itself be a software library.
|
||||
|
||||
b) You must cause the files modified to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
c) You must cause the whole of the work to be licensed at no
|
||||
charge to all third parties under the terms of this License.
|
||||
|
||||
d) If a facility in the modified Library refers to a function or a
|
||||
table of data to be supplied by an application program that uses
|
||||
the facility, other than as an argument passed when the facility
|
||||
is invoked, then you must make a good faith effort to ensure that,
|
||||
in the event an application does not supply such function or
|
||||
table, the facility still operates, and performs whatever part of
|
||||
its purpose remains meaningful.
|
||||
|
||||
(For example, a function in a library to compute square roots has
|
||||
a purpose that is entirely well-defined independent of the
|
||||
application. Therefore, Subsection 2d requires that any
|
||||
application-supplied function or table used by this function must
|
||||
be optional: if the application does not supply it, the square
|
||||
root function must still compute square roots.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Library,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Library, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote
|
||||
it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Library.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Library
|
||||
with the Library (or with a work based on the Library) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||
License instead of this License to a given copy of the Library. To do
|
||||
this, you must alter all the notices that refer to this License, so
|
||||
that they refer to the ordinary GNU General Public License, version 2,
|
||||
instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
|
||||
This option is useful when you wish to copy part of the code of
|
||||
the Library into a program that is not a library.
|
||||
|
||||
4. You may copy and distribute the Library (or a portion or
|
||||
derivative of it, under Section 2) in object code or executable form
|
||||
under the terms of Sections 1 and 2 above provided that you accompany
|
||||
it with the complete corresponding machine-readable source code, which
|
||||
must be distributed under the terms of Sections 1 and 2 above on a
|
||||
medium customarily used for software interchange.
|
||||
|
||||
If distribution of object code is made by offering access to copy
|
||||
from a designated place, then offering equivalent access to copy the
|
||||
source code from the same place satisfies the requirement to
|
||||
distribute the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
5. A program that contains no derivative of any portion of the
|
||||
Library, but is designed to work with the Library by being compiled or
|
||||
linked with it, is called a "work that uses the Library". Such a
|
||||
work, in isolation, is not a derivative work of the Library, and
|
||||
therefore falls outside the scope of this License.
|
||||
|
||||
However, linking a "work that uses the Library" with the Library
|
||||
creates an executable that is a derivative of the Library (because it
|
||||
contains portions of the Library), rather than a "work that uses the
|
||||
library". The executable is therefore covered by this License.
|
||||
Section 6 states terms for distribution of such executables.
|
||||
|
||||
When a "work that uses the Library" uses material from a header file
|
||||
that is part of the Library, the object code for the work may be a
|
||||
derivative work of the Library even though the source code is not.
|
||||
Whether this is true is especially significant if the work can be
|
||||
linked without the Library, or if the work is itself a library. The
|
||||
threshold for this to be true is not precisely defined by law.
|
||||
|
||||
If such an object file uses only numerical parameters, data
|
||||
structure layouts and accessors, and small macros and small inline
|
||||
functions (ten lines or less in length), then the use of the object
|
||||
file is unrestricted, regardless of whether it is legally a derivative
|
||||
work. (Executables containing this object code plus portions of the
|
||||
Library will still fall under Section 6.)
|
||||
|
||||
Otherwise, if the work is a derivative of the Library, you may
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
under terms of your choice, provided that the terms permit
|
||||
modification of the work for the customer's own use and reverse
|
||||
engineering for debugging such modifications.
|
||||
|
||||
You must give prominent notice with each copy of the work that the
|
||||
Library is used in it and that the Library and its use are covered by
|
||||
this License. You must supply a copy of this License. If the work
|
||||
during execution displays copyright notices, you must include the
|
||||
copyright notice for the Library among them, as well as a reference
|
||||
directing the user to the copy of this License. Also, you must do one
|
||||
of these things:
|
||||
|
||||
a) Accompany the work with the complete corresponding
|
||||
machine-readable source code for the Library including whatever
|
||||
changes were used in the work (which must be distributed under
|
||||
Sections 1 and 2 above); and, if the work is an executable linked
|
||||
with the Library, with the complete machine-readable "work that
|
||||
uses the Library", as object code and/or source code, so that the
|
||||
user can modify the Library and then relink to produce a modified
|
||||
executable containing the modified Library. (It is understood
|
||||
that the user who changes the contents of definitions files in the
|
||||
Library will not necessarily be able to recompile the application
|
||||
to use the modified definitions.)
|
||||
|
||||
b) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (1) uses at run time a
|
||||
copy of the library already present on the user's computer system,
|
||||
rather than copying library functions into the executable, and (2)
|
||||
will operate properly with a modified version of the library, if
|
||||
the user installs one, as long as the modified version is
|
||||
interface-compatible with the version that the work was made with.
|
||||
|
||||
c) Accompany the work with a written offer, valid for at
|
||||
least three years, to give the same user the materials
|
||||
specified in Subsection 6a, above, for a charge no more
|
||||
than the cost of performing this distribution.
|
||||
|
||||
d) If distribution of the work is made by offering access to copy
|
||||
from a designated place, offer equivalent access to copy the above
|
||||
specified materials from the same place.
|
||||
|
||||
e) Verify that the user has already received a copy of these
|
||||
materials or that you have already sent this user a copy.
|
||||
|
||||
For an executable, the required form of the "work that uses the
|
||||
Library" must include any data and utility programs needed for
|
||||
reproducing the executable from it. However, as a special exception,
|
||||
the materials to be distributed need not include anything that is
|
||||
normally distributed (in either source or binary form) with the major
|
||||
components (compiler, kernel, and so on) of the operating system on
|
||||
which the executable runs, unless that component itself accompanies
|
||||
the executable.
|
||||
|
||||
It may happen that this requirement contradicts the license
|
||||
restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
library, provided that the separate distribution of the work based on
|
||||
the Library and of the other library facilities is otherwise
|
||||
permitted, and provided that you do these two things:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work
|
||||
based on the Library, uncombined with any other library
|
||||
facilities. This must be distributed under the terms of the
|
||||
Sections above.
|
||||
|
||||
b) Give prominent notice with the combined library of the fact
|
||||
that part of it is a work based on the Library, and explaining
|
||||
where to find the accompanying uncombined form of the same work.
|
||||
|
||||
8. You may not copy, modify, sublicense, link with, or distribute
|
||||
the Library except as expressly provided under this License. Any
|
||||
attempt otherwise to copy, modify, sublicense, link with, or
|
||||
distribute the Library is void, and will automatically terminate your
|
||||
rights under this License. However, parties who have received copies,
|
||||
or rights, from you under this License will not have their licenses
|
||||
terminated so long as such parties remain in full compliance.
|
||||
|
||||
9. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Library or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Library (or any work based on the
|
||||
Library), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Library or works based on it.
|
||||
|
||||
10. Each time you redistribute the Library (or any work based on the
|
||||
Library), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute, link with or modify the Library
|
||||
subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Library at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Library by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Library.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under any
|
||||
particular circumstance, the balance of the section is intended to apply,
|
||||
and the section as a whole is intended to apply in other circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
12. If the distribution and/or use of the Library is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Library under this License may add
|
||||
an explicit geographical distribution limitation excluding those countries,
|
||||
so that distribution is permitted only in or among countries not thus
|
||||
excluded. In such case, this License incorporates the limitation as if
|
||||
written in the body of this License.
|
||||
|
||||
13. The Free Software Foundation may publish revised and/or new
|
||||
versions of the Lesser General Public License from time to time.
|
||||
Such new versions will be similar in spirit to the present version,
|
||||
but may differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Library
|
||||
specifies a version number of this License which applies to it and
|
||||
"any later version", you have the option of following the terms and
|
||||
conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
copyrighted by the Free Software Foundation, write to the Free
|
||||
Software Foundation; we sometimes make exceptions for this. Our
|
||||
decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Libraries
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
possible use to the public, we recommend making it free software that
|
||||
everyone can redistribute and change. You can do so by permitting
|
||||
redistribution under these terms (or, alternatively, under the terms of the
|
||||
ordinary General Public License).
|
||||
|
||||
To apply these terms, attach the following notices to the library. It is
|
||||
safest to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least the
|
||||
"copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
|
||||
@@ -0,0 +1,205 @@
|
||||
SET UTF-8
|
||||
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
|
||||
ICONV 1
|
||||
ICONV ’ '
|
||||
NOSUGGEST !
|
||||
|
||||
# ordinal numbers
|
||||
COMPOUNDMIN 1
|
||||
# only in compounds: 1th, 2th, 3th
|
||||
ONLYINCOMPOUND c
|
||||
# compound rules:
|
||||
# 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
|
||||
# 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
|
||||
COMPOUNDRULE 2
|
||||
COMPOUNDRULE n*1t
|
||||
COMPOUNDRULE n*mp
|
||||
WORDCHARS 0123456789
|
||||
|
||||
PFX A Y 1
|
||||
PFX A 0 re .
|
||||
|
||||
PFX I Y 1
|
||||
PFX I 0 in .
|
||||
|
||||
PFX U Y 1
|
||||
PFX U 0 un .
|
||||
|
||||
PFX C Y 1
|
||||
PFX C 0 de .
|
||||
|
||||
PFX E Y 1
|
||||
PFX E 0 dis .
|
||||
|
||||
PFX F Y 1
|
||||
PFX F 0 con .
|
||||
|
||||
PFX K Y 1
|
||||
PFX K 0 pro .
|
||||
|
||||
SFX V N 2
|
||||
SFX V e ive e
|
||||
SFX V 0 ive [^e]
|
||||
|
||||
SFX N Y 3
|
||||
SFX N e ion e
|
||||
SFX N y ication y
|
||||
SFX N 0 en [^ey]
|
||||
|
||||
SFX X Y 3
|
||||
SFX X e ions e
|
||||
SFX X y ications y
|
||||
SFX X 0 ens [^ey]
|
||||
|
||||
SFX H N 2
|
||||
SFX H y ieth y
|
||||
SFX H 0 th [^y]
|
||||
|
||||
SFX Y Y 1
|
||||
SFX Y 0 ly .
|
||||
|
||||
SFX G Y 2
|
||||
SFX G e ing e
|
||||
SFX G 0 ing [^e]
|
||||
|
||||
SFX J Y 2
|
||||
SFX J e ings e
|
||||
SFX J 0 ings [^e]
|
||||
|
||||
SFX D Y 4
|
||||
SFX D 0 d e
|
||||
SFX D y ied [^aeiou]y
|
||||
SFX D 0 ed [^ey]
|
||||
SFX D 0 ed [aeiou]y
|
||||
|
||||
SFX T N 4
|
||||
SFX T 0 st e
|
||||
SFX T y iest [^aeiou]y
|
||||
SFX T 0 est [aeiou]y
|
||||
SFX T 0 est [^ey]
|
||||
|
||||
SFX R Y 4
|
||||
SFX R 0 r e
|
||||
SFX R y ier [^aeiou]y
|
||||
SFX R 0 er [aeiou]y
|
||||
SFX R 0 er [^ey]
|
||||
|
||||
SFX Z Y 4
|
||||
SFX Z 0 rs e
|
||||
SFX Z y iers [^aeiou]y
|
||||
SFX Z 0 ers [aeiou]y
|
||||
SFX Z 0 ers [^ey]
|
||||
|
||||
SFX S Y 4
|
||||
SFX S y ies [^aeiou]y
|
||||
SFX S 0 s [aeiou]y
|
||||
SFX S 0 es [sxzh]
|
||||
SFX S 0 s [^sxzhy]
|
||||
|
||||
SFX P Y 3
|
||||
SFX P y iness [^aeiou]y
|
||||
SFX P 0 ness [aeiou]y
|
||||
SFX P 0 ness [^y]
|
||||
|
||||
SFX M Y 1
|
||||
SFX M 0 's .
|
||||
|
||||
SFX B Y 3
|
||||
SFX B 0 able [^aeiou]
|
||||
SFX B 0 able ee
|
||||
SFX B e able [^aeiou]e
|
||||
|
||||
SFX L Y 1
|
||||
SFX L 0 ment .
|
||||
|
||||
REP 90
|
||||
REP a ei
|
||||
REP ei a
|
||||
REP a ey
|
||||
REP ey a
|
||||
REP ai ie
|
||||
REP ie ai
|
||||
REP alot a_lot
|
||||
REP are air
|
||||
REP are ear
|
||||
REP are eir
|
||||
REP air are
|
||||
REP air ere
|
||||
REP ere air
|
||||
REP ere ear
|
||||
REP ere eir
|
||||
REP ear are
|
||||
REP ear air
|
||||
REP ear ere
|
||||
REP eir are
|
||||
REP eir ere
|
||||
REP ch te
|
||||
REP te ch
|
||||
REP ch ti
|
||||
REP ti ch
|
||||
REP ch tu
|
||||
REP tu ch
|
||||
REP ch s
|
||||
REP s ch
|
||||
REP ch k
|
||||
REP k ch
|
||||
REP f ph
|
||||
REP ph f
|
||||
REP gh f
|
||||
REP f gh
|
||||
REP i igh
|
||||
REP igh i
|
||||
REP i uy
|
||||
REP uy i
|
||||
REP i ee
|
||||
REP ee i
|
||||
REP j di
|
||||
REP di j
|
||||
REP j gg
|
||||
REP gg j
|
||||
REP j ge
|
||||
REP ge j
|
||||
REP s ti
|
||||
REP ti s
|
||||
REP s ci
|
||||
REP ci s
|
||||
REP k cc
|
||||
REP cc k
|
||||
REP k qu
|
||||
REP qu k
|
||||
REP kw qu
|
||||
REP o eau
|
||||
REP eau o
|
||||
REP o ew
|
||||
REP ew o
|
||||
REP oo ew
|
||||
REP ew oo
|
||||
REP ew ui
|
||||
REP ui ew
|
||||
REP oo ui
|
||||
REP ui oo
|
||||
REP ew u
|
||||
REP u ew
|
||||
REP oo u
|
||||
REP u oo
|
||||
REP u oe
|
||||
REP oe u
|
||||
REP u ieu
|
||||
REP ieu u
|
||||
REP ue ew
|
||||
REP ew ue
|
||||
REP uff ough
|
||||
REP oo ieu
|
||||
REP ieu oo
|
||||
REP ier ear
|
||||
REP ear ier
|
||||
REP ear air
|
||||
REP air ear
|
||||
REP w qu
|
||||
REP qu w
|
||||
REP z ss
|
||||
REP ss z
|
||||
REP shun tion
|
||||
REP shun sion
|
||||
REP shun cion
|
||||
REP size cise
|
||||