File: README.md

package info (click to toggle)
libspelling 0.4.9-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 900 kB
  • sloc: ansic: 7,367; javascript: 33; sh: 21; makefile: 14
file content (77 lines) | stat: -rw-r--r-- 2,203 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# libspelling

A spellcheck library for GTK 4.

This library is heavily based upon GNOME Text Editor and GNOME Builder's
spellcheck implementation. However, it is licensed LGPLv2.1+.

## Documentation

[Our documentation](https://gnome.pages.gitlab.gnome.org/libspelling/libspelling-1/) is updated on every commit.

## Installing Dictionaries

Currently, libspelling wraps `enchant-2` only.
That means to get additional dictionaries you need to follow the same directions as enchant.
Generally, that means installing packages like `apsell-en` or `hunspell-fr` and so forth.

Enchant should pick those up and use them the next time a libspelling-based application is run.

## Example

### In C

```c
SpellingChecker *checker = spelling_checker_get_default ();
g_autoptr(SpellingTextBufferAdapter) adapter = spelling_text_buffer_adapter_new (source_buffer, checker);
GMenuModel *extra_menu = spelling_text_buffer_adapter_get_menu_model (adapter);

gtk_text_view_set_extra_menu (GTK_TEXT_VIEW (source_view), extra_menu);
gtk_widget_insert_action_group (GTK_WIDGET (source_view), "spelling", G_ACTION_GROUP (adapter));
spelling_text_buffer_adapter_set_enabled (adapter, TRUE);
```

### In Python

```python
from gi.repository import Spelling

checker = Spelling.Checker.get_default()
adapter = Spelling.TextBufferAdapter.new(buffer, checker)
extra_menu = adapter.get_menu_model()

view.set_extra_menu(extra_menu)
view.insert_action_group('spelling', adapter)

adapter.set_enabled(True)
```

### In JavaScript

```js
const Spelling = imports.gi.Spelling;

let checker = Spelling.Checker.get_default()
let adapter = Spelling.TextBufferAdapter.new(buffer, checker)
let extra_menu = adapter.get_menu_model()

view.set_extra_menu(extra_menu)
view.insert_action_group('spelling', adapter)

adapter.set_enabled(true)
```

### In Rust

Add the [bindings dependency](https://crates.io/crates/libspelling) to your Cargo.toml

```rust
let checker = libspelling::Checker::default();
let adapter = libspelling::TextBufferAdapter::new(&buffer, &checker);
let extra_menu = adapter.menu_model();

view.set_extra_menu(Some(&extra_menu));
view.insert_action_group("spelling", Some(&adapter));

adapter.set_enabled(true);
```