Compare commits

...
121 Commits
Author SHA1 Message Date
Jules Aguillon b807f217a0 Release 2.0.3 (54) 2026-05-06 23:29:15 +02:00
Jules Aguillon 9d0a849d34 Make building libcdict reproducible (#1282)
This is needed to release on F-Droid.
2026-05-06 23:25:37 +02:00
Jules Aguillon 267894b5ff Release 2.0.2 (53) 2026-05-06 01:29:04 +02:00
Jules Aguillon 56edba7b18 Remove mention of network access from store description (#1280)
This part of the store description is no longer true, as the application
makes a network request when downloading a dictionary.
2026-05-06 01:16:47 +02:00
alotbsol555 11b735bfe8 Update README (#1279)
Removed mention of network requests from the README, due to dictionary downloads.
2026-05-06 01:03:47 +02:00
7587c68d7f Merge weblate translations before 2.0.2 (#1277)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Juan M Sevilla <jumase@disroot.org>
Co-authored-by: Jules <jules@j3s.fr>
Co-authored-by: Priit Jõerüüt <jrthwlate@users.noreply.hosted.weblate.org>
Co-authored-by: Summer-Box1228 <tingrong1228@gmail.com>
2026-05-05 12:43:05 +02:00
Jules Aguillon e57cdc45f2 Revert to the 1.32.1 Russian layout (#1276)
Partly revert be0aa07.
2026-05-05 12:37:39 +02:00
Jon Musselwhite 7b07b14a80 Fix missing null gate (#1273) 2026-05-05 02:26:41 +02:00
Jules Aguillon 063756eb50 Release 2.0.1 (52) 2026-05-03 19:30:18 +02:00
Jules Aguillon 9189921719 Add languages for which a dictionary is available (#1267)
* gen_method_xml.py: Warn for unused dictionaries

Helps catch missing locales.

* Add languages for which a dictionary is available

Make dictionaries are available to more languages. Extra keys are added
for as many languages as possible but no layout is added.

Some languages are still not added, mainly because they use a script
that the keyboard doesn't support yet:

    pa, gu, or, te, mai, sat, km, iw, zgh, sd, ml, sa
2026-05-03 19:19:51 +02:00
Jules Aguillon 2e1859fb1a Fix the keyboard drawing behind the navigation bar (#1265)
The width of the navigation was not accounted correctly.

This reverts be8a99bd
2026-05-03 18:10:43 +02:00
Jules Aguillon 139d1c5691 Fix crash when the cursor moves past an emoji (#1264)
The cursor might move in the middle of a surrogate pair.
2026-05-03 17:09:43 +02:00
Jules Aguillon 20a4916ff6 Fix wrong locale selection for English (#1263)
The "en" locale, which was meant to be the default for English locales
that are not in the list, was used instead of exact locales like "en_US".

The "en" locale was also used as the default locale for languages that
are not in the list at all. The "en_GB" locale is used for this instead.
2026-05-03 16:50:41 +02:00
Jules Aguillon 54c25b79e4 Update dictionaries.xml (#1262)
The dictionary sizes were not correct.
2026-05-03 13:50:51 +02:00
Jules Aguillon 82d61d4406 Fix crash when installing dictionaries (#1261)
This happens in release mode due to minification.
2026-05-03 12:55:27 +02:00
Jules Aguillon e2fdced765 releases: Update languages supported by Google Play (#1257)
Remove languages from fastlane metadata that are not supported by Google
Play and prevented the release from continuing.
2026-05-02 21:34:19 +02:00
Jules Aguillon 78a7ffc473 Release 2.0.0 (51) 2026-05-02 21:11:07 +02:00
+34 467d7e83a5 Merge changes from Weblate (#1256)
Co-authored-by: Anonymous <noreply@weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: solokot <solokot@gmail.com>
Co-authored-by: ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝) <coool@mail.lv>
Co-authored-by: Packss <enzoana@hotmail.com>
Co-authored-by: A <meow98317@gmail.com>
Co-authored-by: Joppla <joppla@gmx.com>
Co-authored-by: Validbit <validbit@outlook.com>
Co-authored-by: Chasm Solacer <chasmsolacer@users.noreply.hosted.weblate.org>
Co-authored-by: Akal! <ihsani.akmal.0@gmail.com>
Co-authored-by: Edgars Andersons <Edgars+Weblate@gaitenis.id.lv>
Co-authored-by: Mehmet Ali Cuma <v6lhost@proton.me>
Co-authored-by: 是果宝呐 <shiguobaona@163.com>
Co-authored-by: Giuseppe Barichello <beppuz@gmx.com>
Co-authored-by: marciozomb13 <marciozomb13@outlook.com>
Co-authored-by: Bora Atıcı <boratici.acc@gmail.com>
Co-authored-by: Péter Czeglédy <czegledyp2@gmail.com>
Co-authored-by: Jonatas P <jonatasp5592@gmail.com>
Co-authored-by: Rasel Molla <msg4mrm@gmail.com>
Co-authored-by: Bi Bi Le <lebibibioihandsomeboy.ghost@gmail.com>
Co-authored-by: Juan M Sevilla <jumase@disroot.org>
Co-authored-by: Shine WaiLinn <shinelinn1897@users.noreply.hosted.weblate.org>
Co-authored-by: Sai Hak Moe Htike <pekhejdj@gmail.com>
Co-authored-by: Matteo Borella <borella.matteo@gmail.com>
Co-authored-by: Ulpi Antor <weblate.residual441@passmail.net>
Co-authored-by: Nataniel Dika Kurniawan <hikawaart2@gmail.com>
Co-authored-by: Yusif Omran <yusifrad20@gmail.com>
Co-authored-by: Samuel Jabez P <jrbros2346@gmail.com>
Co-authored-by: Regu_Miabyss <cyanogenmod.cid@gmail.com>
Co-authored-by: Tannaz M <tannaz.monajemi@gmail.com>
Co-authored-by: winver <kirillstuzhuk@gmail.com>
Co-authored-by: Summer-Box1228 <tingrong1228@gmail.com>
Co-authored-by: E. Ta. <eta00823@gmail.com>
Co-authored-by: Abo Moayd <aboeanas0y2014@gmail.com>
Co-authored-by: meQ Qentlh <brynnhold@gmail.com>
Co-authored-by: Adrià Vilanova Martínez <me@avm99963.com>
Co-authored-by: QonDonion <dolchanat.a@gmail.com>
Co-authored-by: Leonardo Taglialegne <leonardo@taglialegne.it>
Co-authored-by: Mikael Kujanpää <mikael.pajunen@gmail.com>
Co-authored-by: Vaisakh K M <vaisakhkm2625@gmail.com>
Co-authored-by: Debojit Mozumder <debojitmozumder38@gmail.com>
Co-authored-by: Rifat <rifatstudent463@gmail.com>
Co-authored-by: Guzleon <guzleon@yahoo.es>
2026-05-02 20:11:56 +02:00
Jules Aguillon 5d9a105e5d Update the README and screenshots in preparation for the release (#1255)
* README: Acknowledge NLnet

* Move FUNDING.yml into .github/

* Update screenshots

Redo the screenshots with the suggestions visible.
2026-05-02 19:43:23 +02:00
Jules Aguillon 9c23e6c5f3 Emoji suggestion (#1235)
Suggest an emoji in addition to the 3 suggested words when the
current word matches an alias in the emoji dictionary, if
available.
2026-05-02 19:32:21 +02:00
Jules Aguillon d164820bca Reduce the size of suggestions to fit (#1248)
The font size of the suggested words is reduced if the word would
otherwise split on two lines.
2026-05-01 20:25:20 +02:00
Jules Aguillon b844af1f28 Fix the spacebar in Hangul combining (#1244)
* Fix the spacebar in Hangul combining

The encoding for the spacebar changed and the Hangul combining code was
not updated.

* Change the default layout for Korean
2026-04-24 11:32:19 +02:00
Jules Aguillon 6477c90506 CI: Run the tests (#1245)
Run the tests before building the debug APK in CI. This checks that the
unit tests pass and that the generated files are uptodate.

Doesn't fail if the generated files are outdated. Instead, the APK is
built with them updated.
2026-04-18 21:09:55 +02:00
Jules Aguillon c6774196ea Add more symbols to superscript and small_caps (#1198)
* Add more symbols to accent_syperscript
* Add all uppercase and lowercase variants to accent_small_caps
* Use ʁ instead of ᴚ in accent_small_caps
2026-04-18 16:18:13 +02:00
Jules Aguillon af5f6df02c Autocorrect middle word (#1242)
* Fix crash when typing space in the middle of a word

* Don't trigger autocorrect when the cursor is not at the end of a word

This prevented from editing a word that was already typed.

* Don't undo autocorrect at the wrong time

Backspace was trying to undo autocorrect even after some other action
were done after the last autocorrect. This ensures that the keyboard
remembers accurately the last action.
2026-04-16 15:33:28 +02:00
Tony O 08eb3a04a6 Change default locale for en_* and update IME layout (#1237)
Change default unknown locale dictionary from en_US to en_GB
2026-04-14 19:41:53 +02:00
Jules Aguillon e832c3cd80 Fix crash added in #1233 (#1234)
Crash added in https://github.com/Julow/Unexpected-Keyboard/pull/1233
2026-04-12 14:41:28 +02:00
Jules Aguillon a1d0342033 Better spell check with cursor in the middle of a word (#1233)
* Better spell check with cursor in the middle of a word

Suggestions are based on the entire word and no longer the part of the
word just before the cursor. Also, tapping a suggestion or the space bar
autocorrect replaces the entire word.

* Reduce the number of calls to refresh_current_word

While the cursor moves, calls to refresh_current_word are now only done
when the cursor exits the current word.
2026-04-12 14:33:27 +02:00
Jules Aguillon 5ec663c306 Insert a space when undoing autocorrect (#1232)
This prevents the same suggestions to be presented again and autocorrect
to be activated again when pressing space.

This extra space is wanted because pressing the spacebar triggered
autocorrect in the first place.
2026-04-12 14:30:04 +02:00
Jules Aguillon 833b4a2154 Better suggestion with diacritics (#1223)
* Update cdict

* scripts/subst_of_compose.py: Compute substitutions

from compose mappings. They are used when building dictionaries.

* Add substitutions compose data

* Better suggestion with diacritics

This improves the suggestions for words that contain diacritics and
uppercase letters.

This works by stripping diacritics both when building the dictionaries
(using word aliases added in cdict: https://github.com/Julow/cdict/pull/3)
and during lookup. Cdict then takes care of resolving the correct word.

The substitutions are generated using mappings from `fn`, `shift` and
all the `accent_*` modifiers into srcs/compose/substitutions.json
This can be updated easily when more mappings are added.
2026-04-10 19:08:23 +02:00
Jules Aguillon 8921de7f02 Handle Google Keep bug (#1230)
The Google Keep text area sends contradictory flags to keyboards,
resulting in the suggestions to be disabled.
This seems to be a bug in Google Keep.
2026-04-10 19:04:03 +02:00
Jules Aguillon afa7c0187a Refresh suggestions immediately after language switch (#1229)
* Switch dictionary when language changes

The dictionary was otherwise updated by closing and opening the keyboard
again.

* Refresh suggestions immediately after language switch
2026-04-10 19:03:51 +02:00
Jules Aguillon 7bd9306a9f Dictionary activity: Status message when the keyboard is not enabled (#1228)
This shows a reason why the list is empty and removes confusion.
2026-04-10 19:03:37 +02:00
Jules Aguillon f29ae92ba7 Disable spacebar autocomplete when suggestions are hidden (#1227)
The spacebar autocomplete option was still working even when the
suggestions strip was correctly hidden in applications like Termux.
2026-04-10 19:03:20 +02:00
Jules Aguillon 5f63214c08 Increase lookback when looking for the last word (#1226)
For example, typing "dictionarirs" suggests "dictionaries" but moving
the cursor away and back results in no suggestion. Because the lookback
was 10 characters long, the keyboard was seeing "ctionarirs".
2026-04-10 15:18:50 +02:00
Spike 0f3ec187c9 Documentation: Point to default mappings as requested in #1222 (#1225) 2026-04-10 14:46:29 +02:00
Jure Varlec 13f1996af9 Fix building on NixOS (#1219)
* shell.nix: bump platform version to match target

* shell.nix: make gradlew work on NixOS

This removes the wrapper provided by `shell.nix`. Folks expect the
`./gradlew` wrapper to work, so this approach is more straightforward.
2026-04-08 17:38:45 +02:00
Hopeine 35ccaafe65 doc: Fix hyperlink of bottomw_row.xml and number_row.xml (#1216)
Add blob/master/
2026-04-08 17:29:34 +02:00
Tony O 963399417e Add Finnish QWERTY keyboard layout XML (#1221) 2026-04-05 23:34:36 +02:00
Jules Aguillon 4dab3a609c CI: Check whether ComposeKeyData is uptodate (#1204) 2026-03-16 00:00:41 +01:00
Jules Aguillon 2966a45922 CI: Disable workflow runs on push (#1202) 2026-03-15 01:34:19 +01:00
Tyler b25b670c6b Making dictionaries compatible with 16 KB devices. (#1199) 2026-03-15 01:27:37 +01:00
Jules Aguillon ece8fb51ce Add Assamese layout (#1196) 2026-03-06 13:45:01 +01:00
dzaima 18157a1cd8 Make layout text editor not redraw every frame (#1192) 2026-03-06 13:44:48 +01:00
dzaima 27fdcb6bfc Some slider changes (#1195)
* Helper for whether a slider is vertical

* Only accumulate delta for the current slider's direction

* Slow down horizontal cursor movement while ctrl is held
2026-02-27 00:41:48 +01:00
dzaima 6a19f7ccd3 Separate colors for pressed vs activated labels (#1193) 2026-02-25 23:57:39 +01:00
dzaima 164c8732c0 Add missing alphabet + ~ compose sequences (#1194) 2026-02-25 23:55:31 +01:00
Jules Aguillon 958900ca2f Update target SDK version to 36 (#1190)
* Fix keyboard not showing on Android 16

* Update target SDK version to 36
2026-02-25 00:12:43 +01:00
Jules Aguillon ae4a9d4514 Fix no keyboard after switching from clipboard manager (#1189) 2026-02-24 23:57:10 +01:00
Jules Aguillon 91b2970c1f Fix crash introduced in #1183 (#1187) 2026-02-24 22:50:28 +01:00
Jules Aguillon 9863dcea9e gradle: Show an error when Git submodules are not initialized (#1188)
* CONTRIBUTING: Document Git submodules

* build: Error during build if the submodules are not initialized
2026-02-24 22:50:16 +01:00
Jules Aguillon a80afa5fbe Improve suggestion for capitalized words (#1183)
Suggestions were previously case-sensitive, which gave very bad results
for the first word of a sentence.

This makes sure that the suggestions for capitalized words are as good
as for all lower-case words and that the suggestion doesn't turn the
uppercase letter into lower case.
2026-02-22 21:13:11 +01:00
Jules Aguillon d172455eb4 Fix space and delete not repeating (#1182) 2026-02-21 13:08:42 +01:00
Jules Aguillon df3594bd53 Autocomplete on space bar and undo on delete (#1179)
* Refactor: Implement the space key as an editing action

The space key is no longer a CHAR key but now an EDITING key. This
allows changing the behavior of the space bar while allowing custom
layout users to define a key outputing a space as before.

KeyModifier and ComposeKey are updated to treat the space key as before.

* Enter the best suggestion when the space bar is pressed

* Refactor: Implement backspace as an editing action

* Undo suggestion when delete is pressed

The delete key (backspace internally) undoes the suggestion if the last
action done was entering the suggestion with either the space bar or the
candidates view.

* Add an option to enable space bar autocomplete

This option is off by default. Undoing a completion with backspace works
in any case.

* Refactor: Track selection emptyness in CurrentlyTypedWord

This removes an expensive RPC call.
2026-02-19 00:37:42 +01:00
Jules Aguillon ebf80415d8 Refactor: KeyValue constants (#1180)
* Refactor: KeyValue constants

Add constants for keys that are accessed from the app's code. This
simplifies the fake pointer handling in Keyboard2View.

* Refactor: Pre-compute action key replacement

The action key and the enter swap are pre-computed in EditorConfig. This
simplifies the code.
2026-02-19 00:35:14 +01:00
Jules Aguillon 1cd252f8fa Increase maximum value for the bottom margin option (#1178) 2026-02-14 16:04:30 +01:00
Jules Aguillon 0109f30e22 Fix label color when keys are pressed (#1173)
The color of labels on a pressed key that were not the label being
activated (eg. the labels on the corners when activating the label in
the centre) was not correct.
2026-02-08 00:33:52 +01:00
Jules Aguillon 77c4a27c4c Spell checking (#1137)
This adds dictionary-based spell checking to the keyboard. The keyboard looks at the word being typed and matches it against a dictionary to either complete the rest of the word or find alternative spellings.

The core of this feature is implemented in cdict, which is included as a
submodule in vendor/cidct.

Cdict is developped at https://github.com/Julow/cdict
The dictionaries are hosted at https://github.com/Julow/Unexpected-Keyboard-dictionaries/
The wordlists used to build the dictionaries are the same ones used by
HeliBoard from https://codeberg.org/Helium314/aosp-dictionaries

- Add an activity accessible from the launcher app that lists available
  dictionaries with a download button.
  The DictionaryListView view shows the list of available dictionaries and
  handles downloading and installing them.

- The Dictionaries class manages installed dictionaries. Dictionaries are
  installed as individual files into the app's private directory.

- Available dictionaries are listed in dictionaries.xml, which is generated
  when building Unexpected-Keyboard-dictionaries.
  method.xml mentions the dictionary name for each locales.
2026-02-02 00:20:00 +01:00
Jules Aguillon 2ecf93d990 Candidates view improvements (#1168)
* Refactor: Create subpackage 'suggestions'

* Candidates view: Status message when no dictionary installed

Show a message on the candidates view instead of leaving it empty. A
button points to the dictionary installation activity.

* Add an option to disable the suggestions

* Refactor: Remove Config.should_show_candidates_view

This was moved to EditorConfig.

* Don't disable text suggestions in some text boxes

* Suggestion text size matching settings

The candidates view height is based on the height of keyboard rows and
the suggestion text size is based on the size of labels on the keys.

This is influenced by symbol size and keyboard height options.
2026-02-01 23:25:38 +01:00
Jules Aguillon b9072daaf6 Avoid loops in modmaps (#1167)
It was possible to define a loop that would crash the app with the
following modmap:

    <ctrl a="left" b="left:ctrl,left"/>

With this change, modmap are not taken into account while evaluating
macros. The modmap above modifies ctrl+left into ctrl+left.
2026-01-31 15:36:22 +01:00
Jules Aguillon 1b8506876a Option to switch to the previously used keyboard (#1165)
The "Switch to the last used keyboard" is renamed to "Switching between
input methods" and allows to select "Switch to last used", which was the
default in older releases.
2026-01-30 21:18:48 +01:00
Jules Aguillon e05be0821b README: Remove the "Similar apps" section (#1163) 2026-01-25 13:47:44 +01:00
Jules Aguillon c669a755a6 Add the small capital letters dead key (#1156)
* Add the small capital letters dead key

It can be added to the keyboard from the settings or into custom layouts
as `accent_small_caps`.

Add all the symbols listed on https://en.wikipedia.org/wiki/Small_caps
2026-01-18 21:57:17 +01:00
Jules Aguillon 3b4aa33ff3 Fix crash when using the Monet themes on Android 9 (#1155)
The color resources starting with `@android:color/system_` are not
available on API < 31.

No effort is made to implement the Monet feature on Android 9. Instead,
the monet themes look like the Dark and Light themes.
2026-01-18 17:28:10 +01:00
Jules Aguillon a848897586 Refactor: Split DeviceLocales out of Keyboard2 (#1154)
* Refactor: Split DeviceLocales out of Keyboard2

This moves the code from Keyboard2 that handles the active IME subtypes
and the current one.

The goal is to access this information from the dictionary activity
while simplifying the code of Keyboard2.

* Refresh the candidates view when subtype changes

This fixes the status message being inconsistently shown.

* Refactor: Load DeviceLocales less often

Previously, [DeviceLocales.load()] was called everytime the keyboard was
shown on the screen. This operation is moderately costly and only need
to be done when the IME subtype changes.

* EditorConfig: Fix crash on Android 9
2026-01-18 17:26:41 +01:00
Jules Aguillon 4d4c22b4e2 Merge pull request #1150 from Julow/candidates_view
Candidates view
2025-12-28 19:02:45 +01:00
Jules Aguillon bdb05bcef0 Fix CurrentlyTypedWord counting the first letter twice 2025-12-28 18:13:17 +01:00
Jules Aguillon 2208079e48 CurrentlyTypedWord: Handle key events
Currently, refreshing the current word on each key event.
Refreshing is done after a short delay, to ensure the editor has handled
the event.
2025-12-28 18:13:17 +01:00
Jules Aguillon c4d802d873 CurrentlyTypedWord: Handle selection
When selection is entered, the current word is cleared.
2025-12-28 18:13:16 +01:00
Jules Aguillon 2b60f94ead Enter the suggestion when it's pressed
The current word is replaced by the pressed suggestion.
2025-12-28 18:08:36 +01:00
Jules Aguillon f082fcdebc Track the currently typed word
The `CurrentlyTypedWord` class tracks the word that is being typed. It's
implemented on the same model as Autocapitalisation and avoid expensive
IPC calls when possible.

The `Suggestions` class is where the suggestion lookup should go. It
currently just echoes the current word.
2025-12-28 18:08:12 +01:00
Jules Aguillon 98c1b8db82 Candidates view
The `CandidatesView` is implemented as a `LinearLayout` that is divided
horizontally with up to 3 `TextView`. It might in the future contain
buttons on the sides.

The candidate view is nested into the input view rather than using
Android's `setCandidatesView` and callbacks as the API is unreliable and
complicated.

The first suggestion goes in the middle to be more accessible. The
second suggestion goes on the right to be more accessible to the
right-handed, because it must go somewhere.
2025-12-28 17:56:37 +01:00
Jules Aguillon dfaf4dbb57 More practical definition of method.xml (#1149)
Locale are now defined in `gen_method_xml.py` in a more convenient and
checked way. It contains both the locale definition and the generation
script.

`method.xml` is generated with:

    gradle test

The goal is to support dictionaries for spell checking.
2025-12-27 23:49:50 +01:00
Jules Aguillon dab50e0572 Fix clipboard manager crashes (#1148)
* Fix background crash in clipboard history service

The clipboard history service might crash when the connection between
the keyboard and the system is in a bad state.

* Fix race condition in clipboard history service

The clipboard history service callback appears to be called concurrently
leading to concurrent accesses to data and to concurrent calls to
'on_clipboard_history_change'. Access are now synchronized.

* Fix clipboard manager crash when device is locked
2025-12-26 16:43:34 +01:00
Jules Aguillon b40be68773 Fix various linting issues (#1146) 2025-12-22 01:27:07 +01:00
Jules Aguillon 258215f26c gradle: Remove unecessary rule
The output APKs used to be named 'juloo.keyboard2.apk' are now named
'Unexpected-Keyboard-release.apk' since the Gradle upgrade and the rule
setting it hasn't been working since.
2025-12-18 19:50:22 +01:00
Jules Aguillon 41777fdda6 Disable selection mode in text editors (#1141)
* Disable selection mode in text editors

Selection mode removes the space bar key (which is replaced by the Esc
key) and can be annoying in Emacs for example.
Text editor users probably have the `esc` key available.

* Refactor: Move EditorInfo related code to EditorConfig

Add the new EditorConfig class that handles configuration extracted from
the EditorInfo. It is accessible from the Config class for convenience.

This aims at reducing the length of already large classes and group the
code that was spread over several classes.
2025-12-18 19:15:32 +01:00
10Develops be0aa07a2a Added keyboards (#1129)
* Delete srcs/layouts/armenian_ph_am.xml

There is a phonetic layout which is used in old typewriters

* Amendments according to GOST 6431-90
* Russian traditional layout cyrl_jiuken.xml
* Create cyrl_yawerty.xml

Added ЯВЕРТЫ layout

* Update cyrl_jcuken_ru.xml

Typo fixed

* Added QZERTY layout for Italian and Latin
2025-12-13 23:05:29 +01:00
Jules Aguillon 5fc1da0a2e Remove emoji history migration function (#1139)
This function was used to migrate the representation of the emoji
history and needed a very large table.

This reduces the app size by 22KB.
2025-12-13 22:12:36 +01:00
Jules Aguillon f834b2a82a AZERTY: Make sure the accents are available (#1140)
Remove the `loc` prefix for important accent dead keys and add ê.
2025-12-13 22:09:57 +01:00
Jules Aguillon 498194231f Update the emoji list to Unicode 17.0 (#1138) 2025-12-13 21:40:46 +01:00
Jules Aguillon 08ebf8fabc Fix parsing of escaped characters in macros (#1126)
* refactor: Better printing for KeyValue in tests

* Fix parsing of escaped characters in macros

The parsing code was bugged with custom macros like `symbol:\abc` and
`symbol:\\abc`.
2025-12-13 15:58:34 +01:00
Andy Callisto 0ad03c6dea Ukrainian l10n update (#1128)
* Ukrainian l10n update

* "Debug" translated
2025-11-19 21:00:21 +01:00
dzaima be8a99bdc6 Fix insets being excluded from computed width (#1127) 2025-11-10 18:32:41 +01:00
Jules Aguillon 00cf534e00 build: Avoid unreproducible rules in regular builds (#1125)
The genEmojis rule makes a network request and must not be done during a
regular build.
The compileComposeSequences updates a file that is checked in the
repository and doesn't need to be updated in a regular build. Both are
now handled like 'genLayoutsList'.
2025-11-10 16:27:29 +01:00
Autissima c717461ef5 Turkish F layout (#1096) 2025-11-01 23:47:35 +01:00
Jules Aguillon eae05bb9bd gradle: Set explicit dependency for rule genLayoutsList 2025-11-01 23:43:03 +01:00
Jules Aguillon ac498d4ee9 Update ComposeKeyData.java
Missing from previous commit.
2025-11-01 23:24:34 +01:00
Houfalafel 02c11132b2 Update extra.json (#1118)
change compose for n͠g to g + n + ~ to avoid overlap. this in order to add n + g = ŋ. also added lowercase Ğ.
2025-11-01 23:23:22 +01:00
wei lang 635c7d5882 Cobalt & Pine theme (#1084) 2025-09-29 01:03:35 +02:00
Matej Drobnič df8e7a01e0 Make history duration configurable (#1074) 2025-09-29 00:56:23 +02:00
J. Fronny 7fdf63b930 Upgrade Gradle (#1097)
* Enable configuration cache and up-to-date checking
2025-09-29 00:37:26 +02:00
Spike 462b860e4e Custom-layouts.md: Document minimum row height (#1101) 2025-09-15 14:16:26 +02:00
Jules Aguillon 8db00d51ab Allow smaller row height in custom layouts (#1100)
The height of row set with `<row height="...">` cannot be lower than 0.5
to avoid rendering problems.
This restriction is not necessary when the row has no key and is lifted
in this case.
2025-09-15 14:15:55 +02:00
Jules Aguillon ab85fb717d shell.nix: Remove repoJson
nixpkgs-unstable is now uptodate.
2025-09-04 00:25:56 +02:00
Autissima 5b3dc8d5ed Python script encoding fix (#1093)
* Changed Python scripts so they work on my machine

file open() used default encoding (cp1252 on my machine) but the text is utf-8, had to specify encoding in check_layout.py
2025-09-03 22:41:10 +02:00
Jules Aguillon 795889bf81 README: Remove capitals in "Open Source" 2025-09-01 00:02:02 +02:00
Jules Aguillon 6d0aa4cf51 Use the <fn /> mappings first when typing a gesture (#1085)
This allows assigning mappings to letters without changing the Shift
mappings and making uppercase impossible to type.

For gestures, the Shift modifier is still applied first, unless a custom
mapping for <fn/> is set for the key.
2025-08-31 23:35:34 +02:00
Animesh dfb2c7eaf9 add Everforest Light theme (#1080) 2025-08-24 22:36:45 +02:00
Jules Aguillon cedf3aeb1c Slider sensitivity option and improve slider ergonimics (#1070)
* Add option 'Space bar slider sensitivity'

* Fix slider moving the cursor twice at the beginning

The slider was generating two events when first activated.
Since 2bed42857.

* Make slider less sensitive for the first step

This moves the second slider step approximately 40% further and takes the
new sensitivity option into account.
Allows moving the cursor by one spot more easily.
2025-08-17 19:24:08 +02:00
Jules Aguillon c1d473b4a0 Add support for four important Nigerian languages (#1077)
This adds the English, Hausa, Yoruba and Igbo languages for Nigeria. The
goal is to add the ₦ symbol as well as basic support for these
languages. No layout is added.
2025-08-17 01:59:46 +02:00
Jules Aguillon 00d7d88271 gradle: Disable sync_translations (#1076)
The diffs created by sync_translations.py creates conflicts with the
changes made on Weblate. It is disable to make merging translations from
Weblate easier.
2025-08-16 18:55:26 +02:00
dom 7e4e4bf4d9 Update Custom-layouts.md reference to web editor (#1064) 2025-08-07 20:15:55 +02:00
Jules Aguillon 020e80019b Fix very small label size on 11+ columns layouts (#1046)
The label size was computed against the width of keys on the keyboard,
which resulted in a different label size on different layouts.
Notably, it made the labels very small on a 11 columns layout and
relatively larger on the numpad.

The label size is now computed against a baseline of 1/10 of the width
of the screen.
2025-08-07 20:07:59 +02:00
Jules Aguillon 679f52cf45 Add '⊢' to the greekmath layout 2025-08-07 12:25:42 +02:00
cillyvms 9588f55619 Fix alternate keyboard layouts rendering behind navbar on some devices. (#1062) 2025-07-30 22:47:37 +02:00
Skynetcat 5c7484388f doc: Added Arabic diacritics to documentation of possible key values (#1061) 2025-07-26 12:35:24 +02:00
Jules Aguillon 2bed42857b Fix missing swipe vibration and visual feedback (#1054)
This was removed by mistake in 42528ab211.
2025-07-22 22:03:53 +02:00
Harry-Ais0 fad74bb123 Add compose sequences for ꜩ Ꜩ (#1058) 2025-07-22 22:02:55 +02:00
Anastázius Kaejatídarján 43dd3a2818 Added Majuscules to the Cyrillic Compose Sequences (#1042)
* add majuscules to compose
* add tse to compose
* added reverse ya FN to modernize it FROM the older form
* fix accent FN and add reverse arabic-heh FN
* little improvements and additions
* QoL improvements for Kurdish Sorani
2025-07-19 17:54:57 +02:00
JeelsBoobz c4a1e2e664 Fix autocapitalisation flicker (#1047) 2025-07-19 17:50:27 +02:00
Mal Bajun 13acf90541 Replaced combining_acute with combining_aigu (#1040) 2025-07-13 19:51:55 +02:00
Matej Drobnič a83b40066e Use screen width to switch layouts (#1029)
This changes layout switching logic to detect screen width rather than increasingly specific portrait/landscape/unfolded state.

This reduces number of different auto-layouts back to 2: narrow devices (such as a phone in portrait) and wide devices (such as a phone in landscape or a tablet).
2025-07-11 19:14:36 +02:00
Mal Bajun c6e35ba4b6 Improve layout cyrl_jcuken_as (#1039) 2025-07-11 18:55:20 +02:00
Jules Aguillon e013128142 Release 1.32.1 (50)
Check layouts / Generated files (push) Has been cancelled
Check layouts / check_layout.output (push) Has been cancelled
Make Apk CI / Build-Apk (push) Has been cancelled
2025-07-09 00:24:29 +02:00
Jules Aguillon 898956256a Workaround Godot editor not implementing setSelection() (#1033)
This was tested against:

    org.godotengine.editor.v3
    org.godotengine.editor.v4
2025-07-06 23:18:58 +02:00
Jules Aguillon 8cb9b30461 Fix crash with unexpected value in NumberLayout pref (#1036) 2025-07-06 21:57:41 +02:00
solokot 309fba4766 Update Russian translation (#1035) 2025-07-05 12:45:51 +02:00
Jules Aguillon d1dfc80df6 ci: Disable translation check
The translation check is creating conflicts with changes done on Weblate
and is superfluous.
2025-07-02 23:15:33 +02:00
Joey Schaff 5c4964e438 Add a missing comma in /res/values/strings.xml (#1026) 2025-07-02 23:13:12 +02:00
Jules Aguillon 957dbdc7fe Fix fastlane metadata 2025-07-02 01:52:43 +02:00
193 changed files with 8982 additions and 2399 deletions
View File
+39
View File
@@ -0,0 +1,39 @@
name: Check generated files
on:
workflow_dispatch:
push:
branches:
- master
pull_request:
jobs:
gen-layouts:
name: Layout list
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- run: python3 gen_layouts.py
- name: "Run 'python3 gen_layouts.py' to update the generated files."
run: git diff --exit-code
check-layouts:
name: Layout warnings
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- run: python3 check_layout.py
- name: "Fix your layout accordingly or run 'python3 check_layout.py' to promote the warnings"
run: git diff --exit-code
check-compose:
name: Compose key data
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- run: python3 srcs/compose/compile.py srcs/compose/{*.json,compose} > srcs/juloo.keyboard2/ComposeKeyData.java
- name: "Run 'gradle test' to update the generated files."
run: git diff --exit-code
-26
View File
@@ -1,26 +0,0 @@
name: Check layouts
on:
workflow_dispatch:
push:
pull_request:
jobs:
gen-layouts:
name: Generated files
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- run: python3 gen_layouts.py
- name: "Run 'python3 gen_layouts.py' to update generated files"
run: git diff --exit-code
check-layouts:
name: check_layout.output
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- run: python3 check_layout.py
- name: "Fix your layout accordingly or run 'python3 check_layout.py' to promote the warnings"
run: git diff --exit-code
-16
View File
@@ -1,16 +0,0 @@
name: Check translations
on:
workflow_dispatch:
push:
pull_request:
jobs:
check-translations:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- run: python3 sync_translations.py
- name: "Check that strings files are uptodate, otherwise run 'python3 sync_translations.py'"
run: git add -N . && git diff --exit-code
+24 -8
View File
@@ -3,18 +3,19 @@ name: Make Apk CI
on:
workflow_dispatch:
push:
branches:
- master
pull_request:
jobs:
Build-Apk:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-java@v4
with:
distribution: 'zulu' # See 'Supported distributions' for available options
java-version: '17'
- name: Checkout repo
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
submodules: true
- name: Restore debug keystore from GitHub Secrets
run: |
# Check if exist and use the secret named DEBUG_KEYSTORE
@@ -28,15 +29,30 @@ jobs:
gpg -d --passphrase "debug0" --batch "debug.keystore.asc" > "debug.keystore"
fi
fi
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
- name: Run tests
run: |
gradle test
# Warn about outdated generated files.
if ! git diff --name-only; then
echo "Warning: Generated files are not uptodate. Run 'gradle test'."
fi
- name: Build debug APK
uses: gradle/gradle-build-action@v3
run: ./gradlew assembleDebug
env:
DEBUG_KEYSTORE: "debug.keystore"
DEBUG_KEYSTORE_PASSWORD: debug0
DEBUG_KEY_ALIAS: debug
DEBUG_KEY_PASSWORD: debug0
with:
arguments: assembleDebug
- name: Artifact naming
run: |
artifact="${{github.repository_owner}} ${{github.ref_name}}"
+3
View File
@@ -0,0 +1,3 @@
[submodule "vendor/cdict"]
path = vendor/cdict
url = https://github.com/Julow/cdict
+9 -1
View File
@@ -2,6 +2,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:hardwareAccelerated="false">
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application android:label="@string/app_name" android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:hardwareAccelerated="false">
<service android:name="juloo.keyboard2.Keyboard2" android:label="@string/app_name" android:permission="android.permission.BIND_INPUT_METHOD" android:exported="true" android:directBootAware="true">
@@ -11,7 +13,7 @@
<meta-data android:name="android.view.im" android:resource="@xml/method"/>
</service>
<activity android:name="juloo.keyboard2.SettingsActivity" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/settingsTheme" android:exported="true" android:directBootAware="true">
<activity android:name="juloo.keyboard2.SettingsActivity" android:icon="@mipmap/ic_launcher" android:theme="@style/settingsTheme" android:exported="true" android:directBootAware="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
</intent-filter>
@@ -23,6 +25,12 @@
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity android:name="juloo.keyboard2.dict.DictionariesActivity" android:icon="@mipmap/ic_launcher" android:theme="@style/appTheme" android:exported="true" android:directBootAware="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
</intent-filter>
</activity>
</application>
<!-- To query enabled input methods for voice IME detection -->
+10 -4
View File
@@ -7,10 +7,16 @@ Thanks for contributing :)
The application uses Gradle and can be used with Android Studio, but using
Android Studio is not required. The build dependencies are:
- OpenJDK 17
- Android SDK: build tools (minimum `28.0.1`), platform `30`
- Android SDK: build tools, platform `36`
Python 3 is required to update generated files but not to build the app.
Make sure the Git submodules are initialized and point to the right revision:
```sh
git submodule update --init
```
For Android Studio users, no more setup is needed.
For Nix users, the right environment can be obtained with `nix-shell ./shell.nix`.
@@ -173,13 +179,13 @@ Remove the `<!--` and `-->` parts and change the text.
### Adding a translation
The preferred method for translating the app is to use Weblate:
https://hosted.weblate.org/engage/unexpected-keyboard/
The `res/values-<language_tag>/strings.xml` file must be created by copying the
default translation in `res/values/strings.xml`, which contain the structure of
the file and the English strings.
To check that `strings.xml` is formatted correctly, run
`python sync_translations.py`. This will modify your files.
Store descriptions in `fastlane/metadata/android/` are updated automatically.
Translating changelogs is not useful.
+5 -5
View File
@@ -16,7 +16,7 @@ The main feature is that you can type more characters by swiping the keys toward
This application was originally designed for programmers using Termux.
Now perfect for everyday use.
This application contains no ads, doesn't make any network requests and is Open Source.
This application contains no ads and is open source.
Usage: to apply the symbols located in the corners of each key, slide your finger in the direction of the symbols. For example, the Settings are opened by sliding in the left down corner.
@@ -30,11 +30,11 @@ Improve the application translations [using Weblate](https://hosted.weblate.org/
[<img src="https://hosted.weblate.org/widget/unexpected-keyboard/multi-auto.svg" alt="État de la traduction" />](https://hosted.weblate.org/engage/unexpected-keyboard/)
## Similar apps
* [Calculator++](https://git.bubu1.eu/Bubu/android-calculatorpp) - Calculator with a similar UX, swipe to corners for advanced math symbols and operators.
## Contributing
For instructions on building the application, see
[Contributing](CONTRIBUTING.md).
## Acknowledgement
The [NLnet foundation](https://nlnet.nl/) funded the work on the spell checking feature.
-197
View File
@@ -1,197 +0,0 @@
plugins {
id 'com.android.application' version '8.6.0'
}
dependencies {
implementation "androidx.window:window-java:1.3.0"
implementation "androidx.core:core:1.16.0"
testImplementation "junit:junit:4.13.2"
}
android {
namespace 'juloo.keyboard2'
compileSdk 35
defaultConfig {
applicationId "juloo.keyboard2"
minSdk 21
targetSdkVersion 35
versionCode 49
versionName "1.32.0"
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['srcs/juloo.keyboard2']
res.srcDirs = ['res', 'build/generated-resources']
assets.srcDirs = ['assets']
}
test {
java.srcDirs = ['test']
}
}
signingConfigs {
// Debug builds will always be signed. If no environment variables are set, a default
// keystore will be initialized by the task initDebugKeystore and used. This keystore
// can be uploaded to GitHub secrets by following instructions in CONTRIBUTING.md
// in order to always receive correctly signed debug APKs from the CI.
debug {
storeFile(System.env.DEBUG_KEYSTORE ? file(System.env.DEBUG_KEYSTORE) : file("debug.keystore"))
storePassword(System.env.DEBUG_KEYSTORE_PASSWORD ? "$System.env.DEBUG_KEYSTORE_PASSWORD" : "debug0")
keyAlias(System.env.DEBUG_KEY_ALIAS ? "$System.env.DEBUG_KEY_ALIAS" : "debug")
keyPassword(System.env.DEBUG_KEY_PASSWORD ? "$System.env.DEBUG_KEY_PASSWORD" : "debug0")
}
release {
if (System.env.RELEASE_KEYSTORE) {
storeFile file(System.env.RELEASE_KEYSTORE)
storePassword "$System.env.RELEASE_KEYSTORE_PASSWORD"
keyAlias "$System.env.RELEASE_KEY_ALIAS"
keyPassword "$System.env.RELEASE_KEY_PASSWORD"
}
}
}
buildTypes {
release {
minifyEnabled true
shrinkResources true
debuggable false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt')
resValue "string", "app_name", "@string/app_name_release"
signingConfig signingConfigs.release
}
debug {
minifyEnabled false
shrinkResources false
debuggable true
applicationIdSuffix ".debug"
resValue "string", "app_name", "@string/app_name_debug"
resValue "bool", "debug_logs", "true"
signingConfig signingConfigs.debug
}
}
// Name outputs after the application ID.
android.applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = "${applicationId}.apk"
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
lintOptions {
// Translation are already checked by 'syncTranslations'
disable 'MissingTranslation'
}
}
tasks.register('buildKeyboardFont') {
println "\nBuilding assets/special_font.ttf"
mkdir "$buildDir"
exec {
workingDir "$projectDir/srcs/special_font"
def svgFiles = workingDir.listFiles().findAll {
it.isFile() && it.name.endsWith(".svg")
}
commandLine("fontforge", "-lang=ff", "-script", "build.pe", "$buildDir/special_font.ttf", *svgFiles)
}
copy {
from "$buildDir/special_font.ttf"
into "assets"
}
}
tasks.register('genEmojis') {
println "\nGenerating res/raw/emojis.txt"
exec {
workingDir = projectDir
commandLine "python", "gen_emoji.py"
}
}
tasks.withType(Test).configureEach {
dependsOn 'genLayoutsList'
dependsOn 'checkKeyboardLayouts'
dependsOn 'syncTranslations'
dependsOn 'compileComposeSequences'
}
tasks.register('genLayoutsList') {
println "\nGenerating res/values/layouts.xml"
exec {
workingDir = projectDir
commandLine "python", "gen_layouts.py"
}
}
tasks.register('checkKeyboardLayouts') {
println "\nChecking layouts"
exec {
workingDir = projectDir
commandLine("python", "check_layout.py")
}
}
tasks.register('syncTranslations') {
println "\nUpdating translations"
exec {
workingDir = projectDir
commandLine "python", "sync_translations.py"
}
}
tasks.register('compileComposeSequences') {
def out = "srcs/juloo.keyboard2/ComposeKeyData.java"
println "\nGenerating ${out}"
exec {
def sequences = new File(projectDir, "srcs/compose").listFiles().findAll {
!it.name.endsWith(".py") && !it.name.endsWith(".md")
}
workingDir = projectDir
commandLine("python", "srcs/compose/compile.py", *sequences)
standardOutput = new FileOutputStream("${projectDir}/${out}")
}
}
tasks.named("preBuild") {
dependsOn += "initDebugKeystore"
dependsOn += "copyRawQwertyUS"
dependsOn += "copyLayoutDefinitions"
}
tasks.register('initDebugKeystore') {
if (!file("debug.keystore").exists()) {
println "Initializing default debug keystore"
exec {
// A shell script might be needed if this line requires input from the user
commandLine "keytool", "-genkeypair", "-dname", "cn=d, ou=e, o=b, c=ug", "-alias", "debug", "-keypass", "debug0", "-keystore", "debug.keystore", "-keyalg", "rsa", "-storepass", "debug0", "-validity", "10000"
}
}
}
// latn_qwerty_us is used as a raw resource by the custom layout option.
tasks.register('copyRawQwertyUS')
{
copy {
from "srcs/layouts/latn_qwerty_us.xml"
into "build/generated-resources/raw"
}
}
tasks.register('copyLayoutDefinitions')
{
copy {
from "srcs/layouts"
include "*.xml"
into "build/generated-resources/xml"
}
}
+197
View File
@@ -0,0 +1,197 @@
import com.android.build.gradle.internal.api.BaseVariantOutputImpl
import java.io.FileOutputStream
plugins {
id("com.android.application") version "8.13.2"
}
dependencies {
// Following versions of androidx.window require sdk version 23
implementation("androidx.window:window-java:1.4.0")
implementation("androidx.core:core:1.16.0") // Version 1.17.0 available with sdk 36
testImplementation("junit:junit:4.13.2")
}
android {
namespace = "juloo.keyboard2"
compileSdkVersion = "android-36"
defaultConfig {
applicationId = "juloo.keyboard2"
minSdk = 21
targetSdk { version = release(36) }
versionCode = 54
versionName = "2.0.3"
}
sourceSets {
named("main") {
manifest.srcFile("AndroidManifest.xml")
java.srcDirs("srcs/juloo.keyboard2", "vendor/cdict/java/juloo.cdict")
res.srcDirs("res", "build/generated-resources")
assets.srcDirs("assets")
}
named("test") {
java.srcDirs("test")
}
}
externalNativeBuild {
ndkBuild {
path = file("vendor/Android.mk")
}
}
signingConfigs {
// Debug builds will always be signed. If no environment variables are set, a default
// keystore will be initialized by the task initDebugKeystore and used. This keystore
// can be uploaded to GitHub secrets by following instructions in CONTRIBUTING.md
// in order to always receive correctly signed debug APKs from the CI.
named("debug") {
storeFile = file(System.getenv("DEBUG_KEYSTORE") ?: "debug.keystore")
storePassword = System.getenv("DEBUG_KEYSTORE_PASSWORD") ?: "debug0"
keyAlias = System.getenv("DEBUG_KEY_ALIAS") ?: "debug"
keyPassword = System.getenv("DEBUG_KEY_PASSWORD") ?: "debug0"
}
create("release") {
val ks = System.getenv("RELEASE_KEYSTORE")
if (ks != null) {
storeFile = file(ks)
storePassword = System.getenv("RELEASE_KEYSTORE_PASSWORD")
keyAlias = System.getenv("RELEASE_KEY_ALIAS")
keyPassword = System.getenv("RELEASE_KEY_PASSWORD")
}
}
}
buildTypes {
named("release") {
isMinifyEnabled = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro")
isShrinkResources = true
isDebuggable = false
resValue("string", "app_name", "@string/app_name_release")
signingConfig = signingConfigs["release"]
}
named("debug") {
isMinifyEnabled = false
isShrinkResources = false
isDebuggable = true
applicationIdSuffix = ".debug"
resValue("string", "app_name", "@string/app_name_debug")
resValue("bool", "debug_logs", "true")
signingConfig = signingConfigs["debug"]
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
}
// This raises an error with an informative message instead of the confusing
// ndk-build errors that occur when submodules are not initialized.
gradle.projectsEvaluated {
if (!file("vendor/cdict/java").exists())
throw GradleException("Git submodules not initialized. Run 'git submodule update --init'")
}
val buildKeyboardFont by tasks.registering(Exec::class) {
val `in` = projectDir.resolve("srcs/special_font")
val out = layout.projectDirectory.file("assets/special_font.ttf")
inputs.dir(`in`)
outputs.file(out)
doFirst { println("\nBuilding assets/special_font.ttf") }
workingDir = `in`
val svgFiles = `in`.listFiles()!!.filter {
it.isFile && it.name.endsWith(".svg")
}.toTypedArray()
commandLine("fontforge", "-lang=ff", "-script", "build.pe", out.asFile.absolutePath, *svgFiles)
}
val genEmojis by tasks.registering(Exec::class) {
doFirst { println("\nGenerating res/raw/emojis.txt") }
workingDir = projectDir
commandLine("python", "gen_emoji.py")
}
val genLayoutsList by tasks.registering(Exec::class) {
inputs.dir(projectDir.resolve("srcs/layouts"))
outputs.file(projectDir.resolve("res/values/layouts.xml"))
doFirst { println("\nGenerating res/values/layouts.xml") }
workingDir = projectDir
commandLine("python", "gen_layouts.py")
}
val genMethodXml by tasks.registering(Exec::class) {
val out = projectDir.resolve("res/xml/method.xml")
inputs.file(projectDir.resolve("gen_method_xml.py"))
inputs.file(projectDir.resolve("res/values/dictionaries.xml"))
outputs.file(out)
doFirst { println("\nGenerating res/xml/method.xml") }
doFirst { standardOutput = FileOutputStream(out) }
workingDir = projectDir
commandLine("python", "gen_method_xml.py")
}
val checkKeyboardLayouts by tasks.registering(Exec::class) {
inputs.dir(projectDir.resolve("srcs/layouts"))
inputs.file(projectDir.resolve("srcs/juloo.keyboard2/KeyValue.java"))
outputs.file(projectDir.resolve("check_layout.output"))
doFirst { println("\nChecking layouts") }
workingDir = projectDir
commandLine("python", "check_layout.py")
}
val compileComposeSequences by tasks.registering(Exec::class) {
val `in` = projectDir.resolve("srcs/compose")
val out = projectDir.resolve("srcs/juloo.keyboard2/ComposeKeyData.java")
inputs.dir(`in`)
outputs.file(out)
doFirst { println("\nGenerating $out") }
val sequences = `in`.listFiles { it: File ->
!it.name.endsWith(".py") && !it.name.endsWith(".md")
}!!.map { it.absolutePath }.toTypedArray()
workingDir = projectDir
commandLine("python", `in`.resolve("compile.py").absolutePath, *sequences)
doFirst { standardOutput = FileOutputStream(out) }
}
tasks.withType(Test::class).configureEach {
dependsOn(genLayoutsList, checkKeyboardLayouts, compileComposeSequences, genMethodXml)
}
val initDebugKeystore by tasks.registering(Exec::class) {
doFirst { println("Initializing default debug keystore") }
isEnabled = !file("debug.keystore").exists()
// A shell script might be needed if this line requires input from the user
commandLine("keytool", "-genkeypair", "-dname", "cn=d, ou=e, o=b, c=ug", "-alias", "debug", "-keypass", "debug0", "-keystore", "debug.keystore", "-keyalg", "rsa", "-storepass", "debug0", "-validity", "10000")
}
// latn_qwerty_us is used as a raw resource by the custom layout option.
val copyRawQwertyUS by tasks.registering(Copy::class) {
from("srcs/layouts/latn_qwerty_us.xml")
into("build/generated-resources/raw")
}
val copyLayoutDefinitions by tasks.registering(Copy::class) {
from("srcs/layouts")
include("*.xml")
into("build/generated-resources/xml")
}
tasks.named("preBuild") {
dependsOn(initDebugKeystore, copyRawQwertyUS, copyLayoutDefinitions)
// 'mustRunAfter' defines ordering between tasks (which is required by
// Gradle) but doesn't create a dependency. These rules update files that are
// checked in the repository that don't need to be updated during regular
// builds.
mustRunAfter(genEmojis, genLayoutsList, compileComposeSequences, genMethodXml)
}
+9 -2
View File
@@ -5,21 +5,28 @@ arab_pc_ckb: Layout includes some ASCII punctuation but not all, missing: ", %,
arab_pc_ckb_fa: Layout includes some ASCII punctuation but not all, missing: ", #, $, %, &, ', ,, /, ;, ?, @, \, ^, `, |, ~
arab_pc_hindu: Layout includes some ASCII punctuation but not all, missing: !, ', +, ;, ?, \, |
arab_pc_ir: Layout includes some ASCII punctuation but not all, missing: ", %, ', ,, /, ;, <, =, >, ?, [, \, ], `, {, |, }
armn_cpbsmo: Layout includes some ASCII punctuation but not all, missing: !, ", #, $, %, &, ', *, +, <, =, >, ?, @, [, ], ^, `, {, }, ~
armn_kvertc: Layout includes some ASCII punctuation but not all, missing: !, ", #, $, %, &, ', *, +, <, =, >, ?, @, [, ], ^, `, {, }, ~
beng_assamese: Layout includes some ASCII punctuation but not all, missing: #, $, %, &, ', *, +, -, /, :, ;, <, =, >, ?, [, \, ], ^, _, `, {, |, }, ~
beng_national: Layout includes some ASCII punctuation but not all, missing: $
beng_provat: Layout includes some ASCII punctuation but not all, missing: $, &, *, ., /, <, >, [, \, ], `, {, |, }
cyrl_jcuken_as: Layout includes some ASCII punctuation but not all, missing: ', ^, ~
cyrl_jcuken_as: Layout contains unknown keys: combining_acute
cyrl_jiuken: Layout includes some ASCII punctuation but not all, missing: #, $, &, ', *, +, <, =, >, @, [, ], ^, _, `, {, }, ~
cyrl_lynyertdz_mk: Layout includes some ASCII punctuation but not all, missing: "
cyrl_yaverti: Layout includes some ASCII punctuation but not all, missing: ~
cyrl_yawerty: Layout includes some ASCII punctuation but not all, missing: #, $, &, ', *, <, >, @, [, ], ^, `, {, }, ~
cyrl_yxukeng_os: Layout includes some ASCII punctuation but not all, missing: ", #, $, &, ', @, [, ], ~
deva_alt: Layout includes some ASCII punctuation but not all, missing: #, $, %, &, ', (, ), *, +, ., /, :, <, =, >, [, \, ], ^, _, `, {, |, }, ~
deva_inscript: Layout includes some ASCII punctuation but not all, missing: ", $, ', ^, _, `, |
hebr_1_il: Layout includes some ASCII punctuation but not all, missing: (, ), <, >, [, ], {, }
hebr_2_il: Layout includes some ASCII punctuation but not all, missing: (, ), <, >, [, ], {, }
kann_kannada: Layout includes some ASCII punctuation but not all, missing: #, $, %, (, ), *, +, /, <, =, >, [, \, ], ^, `, {, |, }, ~
latin_kbdtuf_tr: Layout includes some ASCII punctuation but not all, missing: $
latin_kbdtuf_tr: These keys are now added automatically, unexpected: f11_placeholder, f12_placeholder
latin_kbdtuf_tr: Missing programming keys, missing: loc esc, loc tab
latn_colemak: Some keys contain whitespaces, unexpected: ́
latn_dvorak: Missing important key, missing: loc capslock
latn_neo2: Layout redefines the bottom row but some important keys are missing, missing: loc switch_clipboard
latn_qwertz_cz_multifunctional: Layout includes some ASCII punctuation but not all, missing: `
latn_qwertz_sk: Layout includes some ASCII punctuation but not all, missing: `
latn_qzerty_it: Layout includes some ASCII punctuation but not all, missing: #, $, \, `, ~
urdu_phonetic_ur: Layout includes some ASCII punctuation but not all, missing: <, >, ?, `, |, ~
+2 -2
View File
@@ -116,7 +116,7 @@ def check_layout(layout):
# Fill 'known_keys', which is used for some checks
def parse_known_keys():
global known_keys
with open("srcs/juloo.keyboard2/KeyValue.java", "r") as f:
with open("srcs/juloo.keyboard2/KeyValue.java", "r", encoding="utf-8") as f:
known_keys = set(
( m.group(1) for m in re.finditer('case "([^"]+)":', f.read()) )
)
@@ -134,6 +134,6 @@ for fname in sorted(glob.glob("srcs/layouts/*.xml")):
else:
check_layout(layout)
with open("check_layout.output", "w") as out:
with open("check_layout.output", "w", encoding="utf-8") as out:
for w in warnings:
print(w, file=out)
+9 -4
View File
@@ -6,7 +6,7 @@ We recommend you keep your work in a file outside Unexpected Keyboard (named som
Put initial contents into your file in one of these ways:
* Copypaste the code Unexpected displays for _Custom layout_.
* Make a copy of one of the built-in layouts found in [`/srcs/layouts`](https://github.com/Julow/Unexpected-Keyboard/tree/master/srcs/layouts).
* Use the [web-based editor](https://unexpected-keyboard-layout-editor.lixquid.com/). Interact with this web page to define keys and swipes and move keys to desired positions, and it will write the XML code for you. You can make the web page put the XML in a text file or copy it to the clipboard.
* Use the [web-based editor](https://domportera.github.io/app-unexpected-keyboard-layout-editor/). Interact with this web page to define keys and swipes and move keys to desired positions, and it will write the XML code for you. You can make the web page put the XML in a text file or copy it to the clipboard.
When you have prepared suitable XML code in one of these ways, copy it to the clipboard and paste it into Unexpected Keyboard.
@@ -44,8 +44,8 @@ The `<keyboard>`...`</keyboard>` pair follows the declaration tag and encloses t
* `numpad_script`: The script to use for the numpad. This is useful for scripts where a different, non-ASCII set of numerals is used, like Devanagari and Arabic. It defaults to the same as `script`.
* `bottom_row`: Whether or not to show the built-in bottom row. It accepts `true` or `false`, and defaults to `true`. If your custom layout defines the bottom row, then specify `bottom_row="false"` to disable the built-in bottom row.
+ We recommend your layout use the built-in bottom row, because it is still evolving and your layout will incorporate innovations in future versions. However, to define your own, the current definition of the bottom row is in [bottom_row.xml](https://github.com/Julow/Unexpected-Keyboard/res/xml/bottom_row.xml). You can copypaste this XML into your custom layout as a starting point.
+ Likewise, the current definition of the top (number) row is in [number_row.xml](https://github.com/Julow/Unexpected-Keyboard/res/xml/number_row.xml).
+ We recommend your layout use the built-in bottom row, because it is still evolving and your layout will incorporate innovations in future versions. However, to define your own, the current definition of the bottom row is in [bottom_row.xml](https://github.com/Julow/Unexpected-Keyboard/blob/master/res/xml/bottom_row.xml). You can copypaste this XML into your custom layout as a starting point.
+ Likewise, the current definition of the top (number) row is in [number_row.xml](https://github.com/Julow/Unexpected-Keyboard/blob/master/res/xml/number_row.xml).
* `embedded_number_row`: Whether the layout has an embedded number row, and thus the "Show number row" setting shouldn't add another one. It accepts `true` or `false`, and defaults to `false`.
@@ -59,6 +59,8 @@ The `<row>`...`</row>` pair encloses one row on the keyboard. It has the followi
A row's default height is 1.0 (one quarter of the keyboard height specified on the Settings menu). The `height` property makes the row taller or shorter than this. For example, if you define a 5-row keyboard but one row has `height="0.7"`, then the keyboard's total height is 4.7 units. If the total is different from 4.0, the keyboard will be taller or shorter than that specified in Settings.
(A row of keys is drawn with a minimum height of 0.5 even if you specify a smaller value for `height`. There is no such minimum for a row without keys, such as a spacer row.)
## Key
The `<key />` tag defines a key on the keyboard. Its position in the sequence of keys inside `<row>`...`</row>` indicates its position in the row from left to right. What the key does is defined by optional properties.
@@ -134,7 +136,7 @@ This means that when the Fn modifier is on, the key `before` is changed into `af
```
This means that when the Ctrl modifier is on, the key `before` is changed into `after`. The `<ctrl />` mapping is special in that the Ctrl modifier is applied to `after` after the mapping.
The clockwise circle and the round-trip gestures are affected by both `<shift />` and `<fn />` mappings. The Shift mappings are used first and if that did not modify the key, the Fn mappings are used instead.
The clockwise circle and the round-trip gestures are affected by the `<fn />` mappings. Otherwise, they are defined by the Shift mappings (including the `<shift />` mappings), then, if that did not modify the key, the builtin Fn mappings are used instead.
### Examples
① Turkish keyboards use the Latin alphabet, but when "i" is shifted, it should produce "İ". This is achieved with the following mapping:
@@ -149,6 +151,9 @@ The clockwise circle and the round-trip gestures are affected by both `<shift />
```
This maps Ctrl+в to Ctrl+V—not to v.
### Default mappings
Unexpected Keyboard's built-in mappings are not expressed as a modmap but by a series of .json files in `https://github.com/Julow/Unexpected-Keyboard/tree/master/srcs/compose`. For example, the mappings for `fn` are in [`fn.json`](https://github.com/Julow/Unexpected-Keyboard/blob/master/srcs/compose/fn.json). These built-in mappings are common to every language.
## Portrait vs. landscape
Unexpected Keyboard remembers *separately* which layout has last been used in portrait and landscape orientation. So you may have one custom layout for portrait orientation, but another custom layout for landscape orientation, and Unexpected Keyboard will switch between them without your intervention.
+15
View File
@@ -128,6 +128,7 @@ Value | Meaning
`accent_horn` | Horn accent. `ơ`
`accent_hook_above` | Hook accent. `ả`
`accent_double_grave` | Double grave accent. `ȁ`
`accent_small_caps` | Small capital letters. `ᴀ`
`superscript` | Superscript. `ᵃ`
`subscript` | Subscript. `ₐ`
`ordinal` | Turns `a` and `o` into `ª` and `º`.
@@ -141,6 +142,20 @@ Value | Meaning
`rlm` | Right-to-left mark.
`b(`, `b)`, `b[`, `b]`, `b{`, `b}`, `blt`, `bgt` | Sends the bracket characters, but with mirrored key legends for right-to-left languages. (`blt` and `bgt` print `<` and `>` respectively.)
## Arabic
These are the diacritics for Arabic
Value | Meaning
:------ | :------
`combining_fatha` | َ
`combining_dammah` | ُ
`combining_kasra` | ِ
`combining_sukun` | ْ
`combining_shaddah` | ّ
`combining_hamza_above` | ٔ
`combining_hamza_below` | ٕ
## Hebrew
Keys ending in `_placeholder` are normally hidden unless the Fn key is pressed.
@@ -0,0 +1,4 @@
الميزة الرئيسة هي إمكانية كتابة المزيد من الأحرف عن طريق تمرير المفاتيح نحو الزوايا.
صُمم هذا التطبيق في الأصل للمبرمجين الذين يستخدمون Termux.
أصبح الآن مثاليًا للاستخدام اليومي.
@@ -0,0 +1 @@
لوحة مفاتيح افتراضية خفيفة الوزن ومراعية للخصوصية لنظام أندرويد.
@@ -0,0 +1,6 @@
La característica principal és que pots escriure més caràcters arrossegant les tecles cap a les cantonades.
Aquesta aplicació va ser dissenyada originalment per als programadors que usen Termux.
Ara és perfecta per a un ús quotidià.
Aquesta aplicació no conté anuncis i és de codi obert.
@@ -0,0 +1 @@
Un teclat virtual lleuger per a Android que és conscient de la teva privacitat.
@@ -3,4 +3,4 @@ Hlavní funkcí je možnost psát více znaků posunutím kláves směrem k roh
Tato aplikace byla původně navržena pro programátory používající Termux.
Nyní je ideální pro každodenní použití.
Tato aplikace neobsahuje žádné reklamy, nevyužívá připojení k síti a je Open Source.
Tato aplikace neobsahuje žádné reklamy a je Open Source.
@@ -3,4 +3,4 @@ Diese Tastatur zeichnet sich dadurch aus, dass man zusätzliche Zeichen durch Wi
Die Anwendung wurde ursprünglich für das Programmieren in Termux entwickelt.
Mittlerweile ist sie auch für den täglichen Gebrauch perfekt geeignet.
Diese App enthält keine Werbung, benötigt keinen Netzwerkzugriff und ist quelloffen.
Diese App enthält keine Werbung und ist quelloffen.
@@ -4,4 +4,3 @@ Improved selection mode
Bug fixes and many other improvements
Huge thanks to the contributors: @alotbsol555, @bergentroll, @dacc9, @HaleyHalcyon, @Jaoheah, @jorexdeveloper, @malbajun, @matejdro, @Spike-from-NH, @tenextractor
And to the translators: ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝), Packss, Joppla, Validbit, Chasm Solacer, Akal!, Edgars Andersons, Mehmet Ali Cuma, 是果宝呐, Giuseppe Barichello, marciozomb13, Bora Atıcı, Péter Czeglédy, Jonatas P
@@ -0,0 +1 @@
Bug fixes
@@ -0,0 +1,6 @@
Spell checking and autocorrect are here !
This releases comes with a very large number of improvements,
support for more languages and new themes!
Huge thanks to the contributors: @10Develops @anaskaejdar @andyca111100 @Autissima @bqv @cillyvms @domportera @dzaima @exzombie @Harry-Ais0 @Houfalafel @JeelsBoobz @JFronny @Julow @lan700ng @malbajun @matejdro @n-ce @skynetcat @sperareine @Spike-from-NH @xxcavemanxx
@@ -0,0 +1,6 @@
Spell checking and autocorrect are here !
This releases comes with a very large number of improvements,
support for many languages and new themes!
Huge thanks to the contributors: @10Develops @anaskaejdar @andyca111100 @Autissima @bqv @cillyvms @domportera @dzaima @exzombie @Harry-Ais0 @Houfalafel @JeelsBoobz @JFronny @Julow @lan700ng @malbajun @matejdro @n-ce @skynetcat @sperareine @Spike-from-NH @xxcavemanxx
@@ -0,0 +1,3 @@
Bug fixes
Huge thanks to the contributors: @alotbsol555 @FlippingBinary
@@ -0,0 +1,6 @@
Spell checking and autocorrect are here !
This releases comes with a very large number of improvements,
support for many languages and new themes!
Huge thanks to the contributors: @10Develops @alotbsol555 @anaskaejdar @andyca111100 @Autissima @bqv @cillyvms @domportera @dzaima @exzombie @FlippingBinary @Harry-Ais0 @Houfalafel @JeelsBoobz @JFronny @Julow @lan700ng @malbajun @matejdro @n-ce @skynetcat @sperareine @Spike-from-NH @xxcavemanxx
@@ -3,4 +3,4 @@ The main feature is that you can type more characters by swiping the keys toward
This application was originally designed for programmers using Termux.
Now perfect for everyday use.
This application contains no ads, doesn't make any network requests and is Open Source.
This application contains no ads and is Open Source.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 115 KiB

@@ -3,4 +3,4 @@ La característica principal es que hay acceso a más caractéres deslizando hac
Esta aplicación fue originalmente diseñada para programadores que usaran Termux.
Ahora es perfecta para uso cotidiano.
La misma no contiene ningún anuncio/publicidad, no realiza peticiones de red y es de Fuente Abierta.
La misma no contiene ningún anuncio/publicidad y es de Fuente Abierta.
@@ -3,4 +3,4 @@ Ang pangunahing feature ay maaari kang mag-type ng mas marami pang karakter sa p
Noong simula, ginawa itong application para sa mga programmer sa na nagte-Termux.
Ngayo'y perpekto na sa pang-araw-araw.
Walang ads, hindi nagne-network request at Open Source ang application na ito.
Walang ads at Open Source ang application na ito.
+1
View File
@@ -0,0 +1 @@
Unexpected Keyboard
@@ -3,4 +3,4 @@ La fonctionnalité principale est l'accès rapide à plus de caractères en bala
Cette application a été conçue à l'origine pour les programmeurs utilisant Termux.
Elle est maintenant parfaite pour une utilisation quotidienne.
Cette application ne contient pas de publicité, n'accède pas au réseau et est Open Source.
Cette application ne contient pas de publicité et est Open Source.
@@ -3,4 +3,4 @@ Fitur utamanya adalah Anda dapat mengetik lebih banyak karakter dengan menggeser
Aplikasi ini awalnya dirancang untuk programmer yang menggunakan Termux.
Sekarang sempurna untuk penggunaan sehari-hari.
Aplikasi ini tidak berisi iklan, tidak membuat permintaan jaringan dan Open Source.
Aplikasi ini tidak berisi iklan dan Open Source.
+1
View File
@@ -0,0 +1 @@
Unexpected Keyboard
@@ -1,6 +1,6 @@
La principale funzionalita` e' che si possono digitare caratteri aggiuntivi scorrendo sui tasti verso gli angoli.
.
Questa app e' stata inizialmente progettata per i programmatori che usavano Termux.
Oggi e' perfetta per l'utilizzo quotidiano,
.
Questa app non contiene pubblicita`, non genera chiamate di rete ed e' Open Source.
La caratteristica principale è quella di poter digitare altri caratteri scorrendo verso i bordi dei tasti.
L'applicazione era originariamente pensata per l'utilizzo di Termux da parte di programmatori.
Ora è perfetta anche per l'uso quotidiano.
L'applicazione non contiene pubblicità ed è Open Source.
@@ -1 +1 @@
Una Tastiera Virtuale Leggera Per La Programmazione
Una tastiera virtuale leggera ed attenta alla privacy per Android.
@@ -3,5 +3,3 @@
このアプリは元々はTermuxでのプログラミング用に設計されました。
しかし、今では普段の入力にも適しています。
PCキーボードでの半角入力を再現しています。日本語入力、変換は出来ません。
このアプリは広告を含まず、インターネットに接続せず、そしてオープンソースです。
@@ -2,5 +2,3 @@
이 앱은 처음에는 Termux를 사용하는 프로그래머들을 위한 것으로 개발되었습니다.
지금은 일상적인 용도로도 완벽합니다.
이 응용 프로그램에는 광고가 없으며 네트워크 요청을 하지 않고 오픈 소스입니다.
@@ -3,4 +3,4 @@ Galvenā tastatūras iespēja ir viegli ievadīt vairāk rakstzīmju ar pavilkš
Sākotnēji šī lietotne tika izstrādāta programmētājiem, kas izmanto Termux.
Tagad tā lieliski piemērota ikdienas lietošanai.
Lietotne nesatur reklāmas, neveic nekādus tīkla pieprasījumus, un tās pirmkods ir pieejams visiem.
Lietotne nesatur reklāmas, un tās pirmkods ir pieejams visiem.
@@ -3,4 +3,4 @@ De belangrijkste functie is dat je meer tekens kunt typen door de toetsen naar d
Deze applicatie is oorspronkelijk ontworpen voor programmeurs die Termux gebruiken.
Nu perfect voor dagelijks gebruik.
Deze applicatie bevat geen advertenties, doet geen netwerkverzoeken en is Open Source.
Deze applicatie bevat geen advertenties en is Open Source.
@@ -3,4 +3,4 @@ Główną cechą tej klawiatury jest możliwość wprowadzania więcej znaków p
Ta aplikacja została pierwotnie zaprojektowana z myślą o programistach używających Termuxa.
Obecnie nadaje się doskonale do codziennego użytku.
Aplikacja nie zawiera reklam, nie żąda dostępu do internetu, a jej kod źródłowy jest dostępny publicznie.
Aplikacja nie zawiera reklam, a jej kod źródłowy jest dostępny publicznie.
@@ -3,4 +3,4 @@ A principal característica é que você pode digitar mais caracteres deslizando
O app foi criado originalmente para desenvolvedores que usam Termux.
Agora aperfeiçoado para o uso diário.
Este aplicativo não contém anúncios, não faz nenhuma solicitação de rede e é Open Source.
Este aplicativo não contém anúncios e é Open Source.
@@ -3,4 +3,4 @@ Funcționalitatea principală este accesul rapid la o mulțime de caractere ASCI
Această aplicație a fost concepută inițial pentru programatori care folosec Termux.
Este perfectă pentru uzul cotidian.
Această aplicație nu conține publicitate, nu folosește rețeaua deloc și e Open Source.
Această aplicație nu conține publicitate și e Open Source.
@@ -3,4 +3,4 @@
Приложение изначально было разработано для использования с Termux.
На данный момент оно также удобно в повседневном использовании.
Приложение не содержит рекламы, не осуществляет никаких запросов в сеть и имеет открытый исходный код.
Приложение не содержит рекламы и имеет открытый исходный код.
@@ -0,0 +1,4 @@
คีย์บอร์ดนี้สามารถเขียนตัวอักษรได้หลายตัวมากขึ้นโดยใช้การปัดคีย์ไปที่มุมต่างๆ
คีย์บอร์ดนี้ถูกออกแบบมาเพื่อนักเขียนโปรแกรมที่ใช้เทอร์มักซ์ (Termux)
แต่ตอนนี้เพอร์เฟ็กต์สำหรับคนทั่วไป
@@ -0,0 +1 @@
คีย์บอร์ดสำหรับแอนดรอยด์ที่กินทรัพยากรน้อยและโฟกัสที่ความเป็นส่วนตัว
+1
View File
@@ -0,0 +1 @@
Unexpected Keyboard
@@ -3,4 +3,4 @@ Bu uygulama özünde tuşların kenarlarından kaydırarak daha fazla karakter y
Bu uygulama aslında Termux kullanıcıları için geliştirildi.
Artık gündelik kullanım için de uygun.
Bu uygulama açık kaynaklıdır. Reklam içermez ve internete bağlanmaz.
Bu uygulama açık kaynaklıdır. Reklam içermez.
@@ -3,4 +3,4 @@
Ця програма спочатку була розроблена для програмістів, які використовують Termux.
Тепер ідеально підходить для щоденного використання.
Ця програма не містить реклами, не надсилає жодних мережевих запитів і має відкритий код.
Ця програма не містить реклами і має відкритий код.
@@ -3,4 +3,4 @@ Chức năng chính là dễ dàng gõ nhiều ký tự bằng cách kéo phím
Ứng dụng này ban đầu được thiết kế cho các lập trình viên dùng Termux.
Bây giờ đã hoàn hảo cho việc sử dụng hàng ngày.
Ứng dụng này không chứa quảng cáo, không cần đến mạng, và có mã nguồn mở.
Ứng dụng này không chứa quảng cáo, có mã nguồn mở.
@@ -2,5 +2,3 @@
此应用最初是为使用 Termux 的程序员而设计的。
现在对于日常使用来说也很完美。
此应用没有广告,不会发送任何网络请求,而且是开源的。
@@ -0,0 +1,4 @@
你能透過往按鍵角落滑動來輸入更多字元。
該軟體原先被設計給Termux使用者使用。
現在已完善並可日用。
@@ -0,0 +1 @@
為Android打造的輕量、注重隱私的虛擬鍵盤。
@@ -0,0 +1 @@
Unexpected Keyboard
+3 -3
View File
@@ -57,8 +57,8 @@ def generate_arrays(out, layouts):
root.append(mk_array("string-array", "pref_layout_entries", entries_items))
root.append(mk_array("integer-array", "layout_ids", ids_items))
XML.indent(root)
XML.ElementTree(element=root).write(out, encoding="unicode", xml_declaration=True)
XML.ElementTree(element=root).write(out, encoding="utf-8", xml_declaration=True)
layouts = sort_layouts(read_layouts(glob.glob("srcs/layouts/*.xml")))
with open("res/values/layouts.xml", "w") as out:
generate_arrays(out, layouts)
with open("res/values/layouts.xml", "wb") as out:
generate_arrays(out, layouts)
+183
View File
@@ -0,0 +1,183 @@
import xml.etree.ElementTree as ET
import itertools as it
import sys
# This script generates res/xml/method.xml.
def warn(msg):
print("Warning: " + msg, file=sys.stderr)
def loc(loc_name, script, default_layout, **kwargs):
return { "name": loc_name, "script": script,
"default_layout": default_layout, **kwargs }
# The locales are defined here. To add support for a language, add it to the
# following block:
LOCALES = [
loc("ar", "arabic", "arab_pc_hindu"),
loc("ar_TN", "arabic", "arab_pc"),
loc("as", "beng", "beng_assamese"),
loc("az_AZ", "latin", "latn_qwerty_az", extra_keys="accent_trema:ü:ö@w|accent_cedille:ç:ş@s|ğ@g|ı@k|ə@l"),
loc("be_BY", "cyrillic", "cyrl_jcuken_ru", extra_keys="ґ|є|і|ї|ў"),
loc("bg_BG", "cyrillic", "cyrl_ueishsht", extra_keys="€"),
loc("bn_BD", "latin", "latn_qwerty_us", extra_keys="৳"),
loc("bs", "latin", "latn_qwerty_us", extra_keys="đ|ž|lj|nj|ć|č|dž|š"),
loc("ca", "latin", "latn_qwerty_us", extra_keys="accent_grave:à:ò:è|accent_cedille:ç@c|accent_aigu:é:í:ú:ó|accent_trema:ï:ü|ŀl|€"),
loc("cs_CZ", "latin", "latn_qwertz_cz", extra_keys="accent_aigu:á:é:í:ó:ú:ý@d|accent_ring:ů@s|accent_caron:č:ě:ň:ř:š:ž:ď:ť@f"),
loc("cy_GB", "latin", "latn_qwerty_cy"),
loc("da_DK", "latin", "latn_qwerty_da", extra_keys="€|æ|å|ø"),
loc("de_BE", "latin", "latn_azerty_be", extra_keys="accent_grave:è@f|accent_aigu:á:é:í:ó:ú:ý:j́@d|accent_circonflexe:ê@f|accent_cedille:ç@c|accent_trema@u|€"),
loc("de_CH", "latin", "latn_qwertz_de", extra_keys="accent_trema:ä:ö:ü@u|ß"),
loc("de_DE", "latin", "latn_qwertz_de", extra_keys="accent_trema:ä:ö:ü@u|ß|€"),
loc("el", "latin", "grek_qwerty", extra_keys="£@l|€"),
loc("en", "latin", "latn_qwerty_us", dictionary="en_GB"),
loc("en_AU", "latin", "latn_qwerty_us"),
loc("en_CA", "latin", "latn_qwerty_us"),
loc("en_GB", "latin", "latn_qwerty_gb", extra_keys="£@l"),
loc("en_IN", "latin", "latn_qwerty_us"),
loc("en_NG", "latin", "latn_qwerty_us", extra_keys="₦"),
loc("en_US", "latin", "latn_qwerty_us"),
loc("es_ES", "latin", "latn_qwerty_es", extra_keys="accent_aigu:á:é:í:ó:ú@d|accent_tilde:ñ@n|accent_grave@f|accent_trema@u|€"),
loc("et_EE", "latin", "latn_qwerty_et", extra_keys="accent_trema:ä:ö:ü@u|accent_tilde:õ@o|accent_caron:š:ž@s|€"),
loc("eu", "latin", "latn_qwerty_us", extra_keys="ñ|ç|ü|dd|ll|rr|ts|tt|tx|tz"),
loc("fa_IR", "persian", "arab_pc_ir"),
loc("fi", "latin", "latn_qwerty_fi", extra_keys="å|accent_ring|accent_aigu|accent_trema|ö|ä|€"),
loc("fr_BE", "latin", "latn_azerty_be", extra_keys="accent_grave:à:è:ù@f|accent_aigu:é@d|accent_circonflexe:ê:û@f|accent_cedille:ç@c|accent_trema@u|€"),
loc("fr_CA", "latin", "latn_azerty_fr", extra_keys="accent_grave:à:è:ù@f|accent_aigu:é@d|accent_circonflexe:â:ê:ô:û@f|accent_cedille:ç@c|accent_trema:ë:ï:ü:ÿ@u"),
loc("fr_CH", "latin", "latn_qwertz_fr_ch", extra_keys="accent_grave:à:è:ù@f|accent_aigu:é@d|accent_circonflexe:â:ê:ô:û@o|accent_cedille:ç@c|accent_trema:ë:ï:ü:ÿ@u|€"),
loc("fr_FR", "latin", "latn_azerty_fr", extra_keys="accent_grave:à:è:ù@d|accent_aigu:é@d|accent_circonflexe:â:ê:ô:û@o|accent_cedille:ç@c|accent_trema:ë:ï:ü@l|€"),
loc("ga_IE", "latin", "latn_qwerty_ga", extra_keys="accent_aigu:á:é:í:ó:ú@k|accent_dot_above@l"),
loc("gl", "latin", "latn_qwerty_us"),
loc("ha_NG", "latin", "latn_qwerty_us", extra_keys="₦|ɓ|ɗ|ƙ|’|ƴ|r̃"),
loc("haw_US", "latin", "latn_qwerty_haw", extra_keys="ʻ@l|accent_macron:ā:ē:ī:ō:ū@m"),
loc("he_IL", "hebrew", "default_layout=hebr_1_il,extra_keys=₪@r|€"),
loc("hi_IN", "devanagari", "deva_inscript", extra_keys="₹"),
loc("hr", "latin", "latn_qwerty_us", extra_keys="č|ć|dž|đ|lj|nj|š|ž"),
loc("hu_HU", "latin", "latn_qwertz_hu", extra_keys="accent_aigu:á:é:í:ó:ú@d|accent_trema:ö:ü@u|accent_ogonek@s|accent_double_aigu:ő:ű@k|€"),
loc("hy", "armenian", "armenian_ph_am"),
loc("ig_NG", "latin", "latn_qwerty_us", extra_keys="₦|ṅ|ọ|ụ"),
loc("is_IS", "latin", "latn_qwerty_is", extra_keys="ð|þ|æ|accent_trema:ö@o|accent_aigu:á:é:í:ó:ú:ý@d|accent_circonflexe|accent_ring|accent_grave"),
loc("it_IT", "latin", "latn_qwerty_us", extra_keys="accent_grave:à:è:ì:ò:ù@f|accent_aigu:é:ó@d|accent_circonflexe:î@f|€|ə"),
loc("ka_GE", "latin", "georgian_mes"),
loc("kk_KZ", "latin", "cyrl_jcuken_kk"),
loc("kn_IN", "kannada", "kann_kannada"),
loc("ko_KR", "hangul", "hang_dubeolsik_kr"),
loc("lb", "latin", "latn_qwerty_us", extra_keys="é|ä|ë|accent_grave|accent_cedille@c|accent_aigu|accent_trema|€"),
loc("lt_LT", "latin", "latn_qwerty_lt", extra_keys="accent_ogonek:ą:ę:į:ų@s|accent_caron:č:š:ž@f|accent_dot_above:ė@s|accent_macron:ū@o|€"),
loc("lv_LV", "latin", "latn_qwerty_lv", extra_keys="accent_macron:ā:ē:ī:ū@o|accent_caron:č:š:ž@f|accent_ogonek:ķ:ļ:ņ@s|accent_cedille:ģ@c|€"),
loc("mk", "cyrillic", "cyrl_lynyertdz_mk", extra_keys="ѕ|ѓ|ќ|ѝ|ѐ|љ|њ|џ|„|“|€"),
loc("mn_MN", "cyrillic", "cyrl_fcuzhen_mn", extra_keys="ү|ө"),
loc("mr_IN", "devanagari", "deva_inscript", extra_keys="₹"),
loc("mt_MT", "latin", "latn_qwerty_mt", extra_keys="accent_grave:à:è:ì:ò:ù|accent_dot_above:ċ:ż:ġ|ħ"),
loc("nb", "latin", "latn_qwerty_us", extra_keys="€|æ@a|å@a|ø@o|accent_aigu:é:ó@d|accent_grave:è:ò:ù@f|accent_circonflexe:ê:ô@f"),
loc("ne_NE", "devanagari", "deva_inscript", extra_keys="₹"),
loc("nl_BE", "latin", "latn_azerty_be", extra_keys="accent_grave:è@f|accent_aigu:á:é:í:ó:ú:ý:j́@d|accent_circonflexe:ê@f|accent_cedille:ç@c|accent_trema@u|€"),
loc("no_NO", "latin", "latn_qwerty_us", extra_keys="€|æ@a|å@a|ø@o|accent_aigu:é:ó@d|accent_grave:è:ò:ù@f|accent_circonflexe:ê:ô@f"),
loc("pl_PL", "latin", "latn_qwerty_pl"),
loc("pt_BR", "latin", "latn_qwerty_pt", extra_keys="accent_aigu:á:é:í:ó:ú@d|accent_cedille:ç@c|accent_circonflexe:â:ê:ô@f|accent_grave:à:ò@f|accent_tilde:ã:õ@n|€|ª|º"),
loc("pt_PT", "latin", "latn_qwerty_pt", extra_keys="accent_aigu:á:é:í:ó:ú@d|accent_cedille:ç@c|accent_circonflexe:â:ê:ô@f|accent_grave:à:ò@f|accent_tilde:ã:õ@n|€|ª|º"),
loc("ro_RO", "latin", "latn_qwerty_ro", extra_keys="ă|â|î|ș|ț|€|$"),
loc("ru_RU", "latin", "cyrl_jcuken_ru"),
loc("si_LK", "sinhala", "sinhala_phonetic", extra_keys="₨"),
loc("sk_SK", "latin", "latn_qwertz_sk", extra_keys="accent_caron:ě:ř:ž:š:č:ň:ď:ľ:ť@f|accent_ring:ů@s|accent_circonflexe:ô@f|accent_trema:ä:ü:ö@u|accent_aigu:á:é:í:ó:ú:ŕ:ś:ĺ:ý@d"),
loc("sl", "latin", "latn_qwerty_us", extra_keys="accent_caron:Č:Š:Ž|€"),
loc("sq_AL", "latin", "latn_qwertz_sq"),
loc("sr_", "latin", "cyrl_lynyertz_sr"),
loc("sv_SE", "latin", "latn_qwerty_se", extra_keys="accent_aigu:á@d|accent_trema:ä:ö@o|accent_ring:å@s|€"),
loc("ta_IN", "tamil", "tamil_default"),
loc("tly_AZ", "latin", "latn_qwerty_tly", extra_keys="á|ú|â|ê|ı|š|ž"),
loc("tly_IR", "persian", "arab_hamvaj_tly"),
loc("tr_TR", "latin", "latn_qwerty_tr", extra_keys="accent_cedille:ç:ş@c|accent_trema:ö:ü@u|accent_circonflexe:â:î:û@f|₺|ı|ğ"),
loc("uk_UA", "cyrillic", "cyrl_jcuken_uk", extra_keys="ґ|є|і|ї|₴"),
loc("ur", "persian", "arab_pc_ir"),
loc("uz_UZ", "latin", "latn_qwerty_uz", extra_keys="ʻ|ʼ"),
loc("vi_VN", "latin", "latn_qwerty_vi"),
loc("yo_NG", "latin", "latn_qwerty_us", extra_keys="₦|ẹ|ọ|ṣ")
]
# The locale that is at the beginning of the list.
DEFAULT_LOCALE = "en_GB"
def parse_dictionaries():
tree = ET.parse("res/values/dictionaries.xml")
root = tree.getroot()
return set(( it.text for it in root.findall('*[@name="dictionaries_locale"]/item') ))
# Available dictionares of the form "de" or "de_CH".
available_dictionaries = parse_dictionaries()
# Warn when a dictionary is attached to no locale
def check_locales_for_dictionaries(locales):
used = { l["dictionary"] for l in locales if "dictionary" in l }
for d in available_dictionaries:
if d not in used:
warn("Dictionary '%s' is attached to no locale" % d)
def subtype_elem(root, loc):
tag = loc["tag"].replace("_", "-")
extra_keys = ",extra_keys=" + loc["extra_keys"] if "extra_keys" in loc else ""
dictionaries = ",dictionary=" + loc["dictionary"] if loc["dictionary"] != None else ""
extra_value = f'script={loc["script"]},default_layout={loc["default_layout"]}{dictionaries}{extra_keys}'
ET.SubElement(root, "subtype", attrib={
"android:label": "%s",
"android:languageTag": tag,
"android:imeSubtypeLocale": loc["name"],
"android:imeSubtypeMode": "keyboard",
"android:isAsciiCapable": "true",
"android:imeSubtypeExtraValue": extra_value
})
# Return locales with the "tag" and "dictionary" attributes added.
def compute_attrs():
locales_grouped = {} # Locales grouped by language tag
def lang(loc):
return loc["name"].split("_")[0]
for loc in LOCALES:
locales_grouped.setdefault(lang(loc), []).append(loc)
def tag(loc):
l = lang(loc)
if loc["name"] == l: return l # Locales like "en"
if loc["name"] == f"{l}_{l.upper()}": return l # Locales like "fr_FR"
# Return a short tag when it's not shared between several locales
return l if len(locales_grouped[l]) == 1 else loc["name"]
def dictionary(loc):
if loc["name"] in available_dictionaries: return loc["name"]
l = lang(loc)
if l in available_dictionaries: return l
return None
def add_attrs(loc):
loc = dict(**loc)
loc["tag"] = tag(loc)
loc["dictionary"] = dictionary(loc)
return loc
return map(add_attrs, LOCALES)
def sort_locales(locales):
# The default locale for a language (eg. "en") might shadow the exact
# locale (eg. "en_US"). Makes sure the default locale sorts after the exact
# ones.
def key(l):
s = l["name"].split("_")
return (l["name"] != DEFAULT_LOCALE), s[0], (len(s) == 1), s[1:]
return sorted(locales, key=key)
def gen():
locales = sort_locales(compute_attrs())
check_locales_for_dictionaries(locales)
root = ET.Element("input-method", attrib={
"xmlns:android": "http://schemas.android.com/apk/res/android",
"android:settingsActivity": "juloo.keyboard2.SettingsActivity",
"android:supportsSwitchingToNextInputMethod": "true",
})
root.append(ET.Comment(text=""" This file is automatically generated. DO NOT EDIT.
Locales definitions should go into 'gen_method_xml.py'.
Update this file with 'gradle test'.
"""))
for loc in locales:
subtype_elem(root, loc)
ET.indent(root)
print(ET.tostring(root, encoding="utf-8", xml_declaration=True).decode("UTF-8"))
gen()
+1
View File
@@ -1,3 +1,4 @@
org.gradle.jvmargs=-Dfile.encoding=UTF-8
android.useAndroidX=true
android.nonTransitiveRClass=true
org.gradle.configuration-cache=true
Binary file not shown.
+3 -2
View File
@@ -1,6 +1,7 @@
#Mon Aug 21 18:13:41 CEST 2023
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Vendored
+182 -116
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env sh
#!/bin/sh
#
# Copyright 2015 the original author or authors.
# Copyright © 2015-2021 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -15,81 +15,115 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
#
##############################################################################
##
## Gradle start up script for UN*X
##
#
# Gradle start up script for POSIX generated by Gradle.
#
# Important for running:
#
# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
# noncompliant, but you have some other compliant shell such as ksh or
# bash, then to run this script, type that shell name before the whole
# command line, like:
#
# ksh Gradle
#
# Busybox and similar reduced shells will NOT work, because this script
# requires all of these POSIX shell features:
# * functions;
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
# * compound commands having a testable exit status, especially «case»;
# * various built-in commands including «command», «set», and «ulimit».
#
# Important for patching:
#
# (2) This script targets any POSIX shell, so it avoids extensions provided
# by Bash, Ksh, etc; in particular arrays are avoided.
#
# The "traditional" practice of packing multiple parameters into a
# space-separated string is a well documented source of bugs and security
# problems, so this is (mostly) avoided, by progressively accumulating
# options in "$@", and eventually passing that to Java.
#
# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
# see the in-line comments for details.
#
# There are tweaks for specific operating systems such as AIX, CygWin,
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
#
##############################################################################
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
app_path=$0
# Need this for daisy-chained symlinks.
while
APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
[ -h "$app_path" ]
do
ls=$( ls -ld "$app_path" )
link=${ls#*' -> '}
case $link in #(
/*) app_path=$link ;; #(
*) app_path=$APP_HOME$link ;;
esac
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
MAX_FD=maximum
warn () {
echo "$*"
}
} >&2
die () {
echo
echo "$*"
echo
exit 1
}
} >&2
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
NONSTOP* )
nonstop=true
;;
case "$( uname )" in #(
CYGWIN* ) cygwin=true ;; #(
Darwin* ) darwin=true ;; #(
MSYS* | MINGW* ) msys=true ;; #(
NONSTOP* ) nonstop=true ;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
JAVACMD=$JAVA_HOME/jre/sh/java
else
JAVACMD="$JAVA_HOME/bin/java"
JAVACMD=$JAVA_HOME/bin/java
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
@@ -98,88 +132,120 @@ Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD="java"
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
JAVACMD=java
if ! command -v java >/dev/null 2>&1
then
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
MAX_FD="$MAX_FD_LIMIT"
fi
ulimit -n $MAX_FD
if [ $? -ne 0 ] ; then
warn "Could not set maximum file descriptor limit: $MAX_FD"
fi
else
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# For Darwin, add options to specify how the application appears in the dock
if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin or MSYS, switch paths to Windows format before running java
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
SEP=""
for dir in $ROOTDIRSRAW ; do
ROOTDIRS="$ROOTDIRS$SEP$dir"
SEP="|"
done
OURCYGPATTERN="(^($ROOTDIRS))"
# Add a user-defined pattern to the cygpath arguments
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=`expr $i + 1`
done
case $i in
0) set -- ;;
1) set -- "$args0" ;;
2) set -- "$args0" "$args1" ;;
3) set -- "$args0" "$args1" "$args2" ;;
4) set -- "$args0" "$args1" "$args2" "$args3" ;;
5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC2039,SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
case $MAX_FD in #(
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC2039,SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
fi
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
APP_ARGS=`save "$@"`
# Collect all arguments for the java command, stacking in reverse order:
# * args from the command line
# * the main class name
# * -classpath
# * -D...appname settings
# * --module-path (only if needed)
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
# For Cygwin or MSYS, switch paths to Windows format before running java
if "$cygwin" || "$msys" ; then
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
JAVACMD=$( cygpath --unix "$JAVACMD" )
# Now convert the arguments - kludge to limit ourselves to /bin/sh
for arg do
if
case $arg in #(
-*) false ;; # don't mess with options #(
/?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
[ -e "$t" ] ;; #(
*) false ;;
esac
then
arg=$( cygpath --path --ignore --mixed "$arg" )
fi
# Roll the args list around exactly as many times as the number of
# args, so each arg winds up back in the position where it started, but
# possibly modified.
#
# NB: a `for` loop captures its iteration list before it begins, so
# changing the positional parameters here affects neither the number of
# iterations, nor the values presented in `arg`.
shift # remove old arg
set -- "$@" "$arg" # push replacement arg
done
fi
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
-jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
if ! command -v xargs >/dev/null 2>&1
then
die "xargs is not available"
fi
# Use "xargs" to parse quoted args.
#
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
#
# In Bash we could simply go:
#
# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
# set -- "${ARGS[@]}" "$@"
#
# but POSIX shell has neither arrays nor command substitution, so instead we
# post-process each arg (as a line of input to sed) to backslash-escape any
# character that might be a shell metacharacter, then use eval to reverse
# that process (while maintaining the separation between arguments), and wrap
# the whole thing up as a single "set" statement.
#
# This will of course break if any of these variables contains a newline or
# an unmatched quote.
#
eval "set -- $(
printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
xargs -n1 |
sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
tr '\n' ' '
)" '"$@"'
exec "$JAVACMD" "$@"
Vendored
+23 -18
View File
@@ -13,8 +13,10 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@rem SPDX-License-Identifier: Apache-2.0
@rem
@if "%DEBUG%" == "" @echo off
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@@ -25,7 +27,8 @@
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
if "%DIRNAME%"=="" set DIRNAME=.
@rem This is normally unused
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@@ -40,13 +43,13 @@ if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto execute
if %ERRORLEVEL% equ 0 goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
echo. 1>&2
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2
goto fail
@@ -56,32 +59,34 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
echo. 1>&2
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2
goto fail
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
set CLASSPATH=
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
if %ERRORLEVEL% equ 0 goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
set EXIT_CODE=%ERRORLEVEL%
if %EXIT_CODE% equ 0 set EXIT_CODE=1
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
exit /b %EXIT_CODE%
:mainEnd
if "%OS%"=="Windows_NT" endlocal
+3
View File
@@ -0,0 +1,3 @@
-keep public class juloo.cdict.* {
public protected private *;
}
+1 -1
View File
@@ -1 +1 @@
<!-- drawable/delete.xml --><vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="24dp" android:width="24dp" android:viewportWidth="24" android:viewportHeight="24"><path android:fillColor="#000000" android:pathData="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" /></vector>
<!-- drawable/delete.xml --><vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="24dp" android:width="24dp" android:viewportWidth="24" android:viewportHeight="24"><path android:fillColor="#000000" android:pathData="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" /></vector>
+2
View File
@@ -0,0 +1,2 @@
<!-- From https://pictogrammers.com/library/mdi/icon/download/ -->
<!-- drawable/download.xml --><vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="24dp" android:width="24dp" android:viewportWidth="24" android:viewportHeight="24"><path android:fillColor="#000000" android:pathData="M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z" /></vector>
+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" style="@style/candidates_status">
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/candidates_status_no_dict"/>
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/candidates_status_install" android:onClick="launch_dictionaries_activity"/>
</LinearLayout>
+1 -1
View File
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content">
<EditText android:id="@+id/text" android:inputType="text" android:importantForAutofill="no" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_margin="10dp"/>
<EditText android:id="@+id/text" android:hint="@string/pref_dialog_edit_text" android:inputType="text" android:importantForAutofill="no" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_margin="10dp"/>
</LinearLayout>
+7
View File
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" android:fitsSystemWindows="true">
<LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical">
<TextView style="@style/paragraph" android:text="@string/dictionaries_from_internet"/>
<juloo.keyboard2.dict.DictionaryListView style="@style/dictionary_list_view"/>
</LinearLayout>
</ScrollView>
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" style="@style/dictionary_download_item">
<TextView android:id="@+id/dictionary_download_locale" style="@style/dictionary_download_locale"/>
<TextView android:id="@+id/dictionary_download_size" style="@style/dictionary_download_size"/>
<View android:id="@+id/dictionary_download_button" style="@style/dictionary_download_button" android:background="@drawable/ic_download"/>
</LinearLayout>
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android" style="@style/paragraph" android:paddingHorizontal="24dp" android:gravity="center" android:text="@string/dictionaries_activity_not_enabled"/>
+9 -1
View File
@@ -1,2 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<juloo.keyboard2.Keyboard2View xmlns:android="http://schemas.android.com/apk/res/android" android:hardwareAccelerated="false" android:background="?attr/colorKeyboard"/>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:hardwareAccelerated="false" android:orientation="vertical" android:background="?attr/colorKeyboard">
<juloo.keyboard2.suggestions.CandidatesView android:id="@+id/candidates_view" style="@style/candidates_view">
<TextView android:id="@+id/candidates_emoji" style="@style/candidates_emoji"/>
<TextView android:id="@+id/candidates_left" style="@style/candidates_item"/>
<TextView android:id="@+id/candidates_middle" style="@style/candidates_item"/>
<TextView android:id="@+id/candidates_right" style="@style/candidates_item"/>
</juloo.keyboard2.suggestions.CandidatesView>
<juloo.keyboard2.Keyboard2View android:id="@+id/keyboard_view" android:layout_width="match_parent" android:layout_height="wrap_content"/>
</LinearLayout>
+5 -4
View File
@@ -4,21 +4,22 @@
<TextView style="@style/paragraph" android:text="@string/launcher_description"/>
<Button style="@style/paragraph" android:text="@string/launcher_button_imesettings" android:onClick="launch_imesettings" android:layout_width="wrap_content"/>
<Button style="@style/paragraph" android:text="@string/launcher_button_imepicker" android:onClick="launch_imepicker" android:layout_width="wrap_content"/>
<Button style="@style/paragraph" android:text="@string/launcher_button_dictionaries" android:onClick="launch_dictionaries_activity" android:layout_width="wrap_content"/>
<LinearLayout style="@style/anim_box">
<ImageView style="@style/anim" android:id="@+id/launcher_anim_swipe" android:background="@drawable/doc_key_u" android:src="@drawable/doc_anim_swipe"/>
<TextView style="@style/anim_text" android:text="7"/>
<TextView style="@style/anim_text" android:text="@string/launcher_anim_7"/>
</LinearLayout>
<LinearLayout style="@style/anim_box">
<ImageView style="@style/anim" android:id="@+id/launcher_anim_circle" android:background="@drawable/doc_key_g" android:src="@drawable/doc_anim_circle"/>
<TextView style="@style/anim_text" android:text="G"/>
<TextView style="@style/anim_text" android:text="@string/launcher_anim_g"/>
</LinearLayout>
<LinearLayout style="@style/anim_box">
<ImageView style="@style/anim" android:id="@+id/launcher_anim_round_trip" android:background="@drawable/doc_key_g" android:src="@drawable/doc_anim_round_trip"/>
<TextView style="@style/anim_text" android:text="–"/>
<TextView style="@style/anim_text" android:text="@string/launcher_anim_dash"/>
</LinearLayout>
<TextView android:id="@+id/launcher_tryhere_text" style="@style/paragraph" android:text="@string/launcher_tryhere"/>
<EditText android:id="@+id/launcher_tryhere_area" style="@style/paragraph" android:inputType="text" android:hint="@string/launcher_tryhere_hint" android:importantForAutofill="no"/>
<TextView style="@style/paragraph" android:text="@string/launcher_sourcecode"/>
<TextView style="@style/paragraph" android:text="https://github.com/Julow/Unexpected-Keyboard" android:autoLink="web" android:linksClickable="true"/>
<TextView style="@style/paragraph" android:text="@string/launcher_repo_url" android:autoLink="web" android:linksClickable="true"/>
</LinearLayout>
</ScrollView>
+179 -8
View File
@@ -55,6 +55,7 @@
😪
🤤
😴
🫩
😷
🤒
🤕
@@ -82,6 +83,7 @@
😯
😲
😳
🫪
🥺
🥹
😦
@@ -155,6 +157,7 @@
💋
💯
💢
🫯
💥
💫
💦
@@ -1489,6 +1492,7 @@
🧟‍♂️
🧟‍♀️
🧌
🫈
💆
💆🏻
💆🏼
@@ -1759,6 +1763,12 @@
🏃🏽‍♂️‍➡️
🏃🏾‍♂️‍➡️
🏃🏿‍♂️‍➡️
🧑‍🩰
🧑🏻‍🩰
🧑🏼‍🩰
🧑🏽‍🩰
🧑🏾‍🩰
🧑🏿‍🩰
💃
💃🏻
💃🏼
@@ -1778,8 +1788,83 @@
🕴🏾
🕴🏿
👯
👯🏻
👯🏼
👯🏽
👯🏾
👯🏿
👯‍♂️
👯🏻‍♂️
👯🏼‍♂️
👯🏽‍♂️
👯🏾‍♂️
👯🏿‍♂️
👯‍♀️
👯🏻‍♀️
👯🏼‍♀️
👯🏽‍♀️
👯🏾‍♀️
👯🏿‍♀️
🧑🏻‍🐰‍🧑🏼
🧑🏻‍🐰‍🧑🏽
🧑🏻‍🐰‍🧑🏾
🧑🏻‍🐰‍🧑🏿
🧑🏼‍🐰‍🧑🏻
🧑🏼‍🐰‍🧑🏽
🧑🏼‍🐰‍🧑🏾
🧑🏼‍🐰‍🧑🏿
🧑🏽‍🐰‍🧑🏻
🧑🏽‍🐰‍🧑🏼
🧑🏽‍🐰‍🧑🏾
🧑🏽‍🐰‍🧑🏿
🧑🏾‍🐰‍🧑🏻
🧑🏾‍🐰‍🧑🏼
🧑🏾‍🐰‍🧑🏽
🧑🏾‍🐰‍🧑🏿
🧑🏿‍🐰‍🧑🏻
🧑🏿‍🐰‍🧑🏼
🧑🏿‍🐰‍🧑🏽
🧑🏿‍🐰‍🧑🏾
👨🏻‍🐰‍👨🏼
👨🏻‍🐰‍👨🏽
👨🏻‍🐰‍👨🏾
👨🏻‍🐰‍👨🏿
👨🏼‍🐰‍👨🏻
👨🏼‍🐰‍👨🏽
👨🏼‍🐰‍👨🏾
👨🏼‍🐰‍👨🏿
👨🏽‍🐰‍👨🏻
👨🏽‍🐰‍👨🏼
👨🏽‍🐰‍👨🏾
👨🏽‍🐰‍👨🏿
👨🏾‍🐰‍👨🏻
👨🏾‍🐰‍👨🏼
👨🏾‍🐰‍👨🏽
👨🏾‍🐰‍👨🏿
👨🏿‍🐰‍👨🏻
👨🏿‍🐰‍👨🏼
👨🏿‍🐰‍👨🏽
👨🏿‍🐰‍👨🏾
👩🏻‍🐰‍👩🏼
👩🏻‍🐰‍👩🏽
👩🏻‍🐰‍👩🏾
👩🏻‍🐰‍👩🏿
👩🏼‍🐰‍👩🏻
👩🏼‍🐰‍👩🏽
👩🏼‍🐰‍👩🏾
👩🏼‍🐰‍👩🏿
👩🏽‍🐰‍👩🏻
👩🏽‍🐰‍👩🏼
👩🏽‍🐰‍👩🏾
👩🏽‍🐰‍👩🏿
👩🏾‍🐰‍👩🏻
👩🏾‍🐰‍👩🏼
👩🏾‍🐰‍👩🏽
👩🏾‍🐰‍👩🏿
👩🏿‍🐰‍👩🏻
👩🏿‍🐰‍👩🏼
👩🏿‍🐰‍👩🏽
👩🏿‍🐰‍👩🏾
🧖
🧖🏻
🧖🏼
@@ -1993,8 +2078,83 @@
🤸🏾‍♀️
🤸🏿‍♀️
🤼
🤼🏻
🤼🏼
🤼🏽
🤼🏾
🤼🏿
🤼‍♂️
🤼🏻‍♂️
🤼🏼‍♂️
🤼🏽‍♂️
🤼🏾‍♂️
🤼🏿‍♂️
🤼‍♀️
🤼🏻‍♀️
🤼🏼‍♀️
🤼🏽‍♀️
🤼🏾‍♀️
🤼🏿‍♀️
🧑🏻‍🫯‍🧑🏼
🧑🏻‍🫯‍🧑🏽
🧑🏻‍🫯‍🧑🏾
🧑🏻‍🫯‍🧑🏿
🧑🏼‍🫯‍🧑🏻
🧑🏼‍🫯‍🧑🏽
🧑🏼‍🫯‍🧑🏾
🧑🏼‍🫯‍🧑🏿
🧑🏽‍🫯‍🧑🏻
🧑🏽‍🫯‍🧑🏼
🧑🏽‍🫯‍🧑🏾
🧑🏽‍🫯‍🧑🏿
🧑🏾‍🫯‍🧑🏻
🧑🏾‍🫯‍🧑🏼
🧑🏾‍🫯‍🧑🏽
🧑🏾‍🫯‍🧑🏿
🧑🏿‍🫯‍🧑🏻
🧑🏿‍🫯‍🧑🏼
🧑🏿‍🫯‍🧑🏽
🧑🏿‍🫯‍🧑🏾
👨🏻‍🫯‍👨🏼
👨🏻‍🫯‍👨🏽
👨🏻‍🫯‍👨🏾
👨🏻‍🫯‍👨🏿
👨🏼‍🫯‍👨🏻
👨🏼‍🫯‍👨🏽
👨🏼‍🫯‍👨🏾
👨🏼‍🫯‍👨🏿
👨🏽‍🫯‍👨🏻
👨🏽‍🫯‍👨🏼
👨🏽‍🫯‍👨🏾
👨🏽‍🫯‍👨🏿
👨🏾‍🫯‍👨🏻
👨🏾‍🫯‍👨🏼
👨🏾‍🫯‍👨🏽
👨🏾‍🫯‍👨🏿
👨🏿‍🫯‍👨🏻
👨🏿‍🫯‍👨🏼
👨🏿‍🫯‍👨🏽
👨🏿‍🫯‍👨🏾
👩🏻‍🫯‍👩🏼
👩🏻‍🫯‍👩🏽
👩🏻‍🫯‍👩🏾
👩🏻‍🫯‍👩🏿
👩🏼‍🫯‍👩🏻
👩🏼‍🫯‍👩🏽
👩🏼‍🫯‍👩🏾
👩🏼‍🫯‍👩🏿
👩🏽‍🫯‍👩🏻
👩🏽‍🫯‍👩🏼
👩🏽‍🫯‍👩🏾
👩🏽‍🫯‍👩🏿
👩🏾‍🫯‍👩🏻
👩🏾‍🫯‍👩🏼
👩🏾‍🫯‍👩🏽
👩🏾‍🫯‍👩🏿
👩🏿‍🫯‍👩🏻
👩🏿‍🫯‍👩🏼
👩🏿‍🫯‍👩🏽
👩🏿‍🫯‍👩🏾
🤽
🤽🏻
🤽🏼
@@ -2426,6 +2586,7 @@
🧑‍🧒
🧑‍🧒‍🧒
👣
🫆
🐵
🐒
🦍
@@ -2526,6 +2687,7 @@
🐳
🐋
🐬
🫍
🦭
🐟
🐠
@@ -2535,6 +2697,11 @@
🐚
🪸
🪼
🦀
🦞
🦐
🦑
🦪
🐌
🦋
🐛
@@ -2579,6 +2746,7 @@
🪹
🪺
🍄
🪾
🍇
🍈
🍉
@@ -2617,6 +2785,7 @@
🫚
🫛
🍄‍🟫
🫜
🍞
🥐
🥖
@@ -2668,11 +2837,6 @@
🥟
🥠
🥡
🦀
🦞
🦐
🦑
🦪
🍦
🍧
🍨
@@ -2723,6 +2887,7 @@
🧭
🏔️
⛰️
🛘
🌋
🗻
🏕️
@@ -3083,16 +3248,18 @@
🎧
📻
🎷
🎺
🪊
🪗
🎸
🎹
🎺
🎻
🪕
🥁
🪘
🪇
🪈
🪉
📱
📲
☎️
@@ -3146,8 +3313,9 @@
📑
🔖
🏷️
💰
🪙
💰
🪎
💴
💵
💶
@@ -3231,6 +3399,7 @@
🧰
🧲
🪜
🪏
⚗️
🧪
🧫
@@ -3416,6 +3585,7 @@
©️
®️
™️
🫟
#️⃣
*️⃣
0️⃣
@@ -3561,6 +3731,7 @@
🇨🇳
🇨🇴
🇨🇵
🇨🇶
🇨🇷
🇨🇺
🇨🇻
@@ -3772,4 +3943,4 @@
🏴󠁧󠁢󠁳󠁣󠁴󠁿
🏴󠁧󠁢󠁷󠁬󠁳󠁿
0 168 2428 2581 2716 2934 3019 3281 3504
0 171 2589 2749 2880 3099 3184 3450 3674
+166
View File
@@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (تصحيح الأخطاء)</string>
<string name="short_description">لوحة مفاتيح افتراضية خفيفة الوزن ومراعية للخصوصية لنظام أندرويد.</string>
<string name="store_description">الميزة الرئيسة هي إمكانية كتابة المزيد من الأحرف عن طريق تمرير المفاتيح نحو الزوايا.\n\nصُمم هذا التطبيق في الأصل للمبرمجين الذين يستخدمون Termux.\nأصبح الآن مثاليًا للاستخدام اليومي.</string>
<string name="pref_portrait">في الوضع العمودي</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">في الوضع الأفقي</string>
<!-- <string name="pref_landscape_unfolded">In landscape mode unfolded</string> -->
<string name="pref_category_layout">التخطيط</string>
<string name="pref_label_brightness">ضبط سطوع التسمية</string>
<string name="pref_keyboard_opacity">ضبط شفافية خلفية لوحة المفاتيح</string>
<string name="pref_key_opacity">ضبط عتامة المفتاح</string>
<string name="pref_key_activated_opacity">ضبط عتامة المفتاح المضغوط</string>
<string name="pref_layout_e_system">إعدادات النظام</string>
<string name="pref_layout_e_custom">تخطيط مُخصص</string>
<string name="pref_layouts_add">إضافة تخطيط بديل</string>
<string name="pref_layouts_item">التخطيط %1$d: %2$s</string>
<string name="pref_layouts_remove_custom">إزالة التخطيط</string>
<string name="pref_custom_layout_title">تخطيط مُخصص</string>
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
<!-- <string name="pref_show_number_row_symbols">Number row with symbols</string> -->
<string name="pref_show_numpad_title">إظهار لوحة الأرقام</string>
<string name="pref_show_numpad_never">أبدًا</string>
<string name="pref_show_numpad_landscape">فقط في الوضع الأفقي</string>
<string name="pref_show_numpad_always">دائمًا</string>
<string name="pref_number_row_title">إظهار صف الأرقام</string>
<string name="pref_numpad_layout">تخطيط لوحة الأرقام</string>
<string name="pref_numpad_layout_e_high_first">الأرقام العالية أولاً</string>
<string name="pref_numpad_layout_e_low_first">الأرقام السفلى أولاً</string>
<string name="pref_extra_keys_title">إضافة مفاتيح إلى لوحة المفاتيح</string>
<string name="pref_extra_keys_custom">إضافة مفاتيح مخصصة</string>
<string name="pref_extra_keys_internal">حدد المفاتيح المراد إضافتها إلى لوحة المفاتيح</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">الكتابة</string>
<string name="pref_swipe_dist_title">مسافة التمرير</string>
<string name="pref_swipe_dist_summary">مسافة الأحرف في زوايا المفاتيح (%s)</string>
<string name="pref_long_timeout_title">مهلة الضغط لفترة طويلة</string>
<string name="pref_long_interval_title">فترة تكرار المفتاح</string>
<string name="pref_keyrepeat_enabled">تكرار المفتاح عند الضغط لفترة طويلة</string>
<string name="pref_lock_double_tap_title">نقرة مُزدوجة على زر Shift لوضع الأحرف الكبيرة</string>
<string name="pref_lock_double_tap_summary">يمكنك قفل أي معدل من خلال الضغط عليه باستمرار</string>
<string name="pref_category_behavior">السلوك</string>
<string name="pref_autocapitalisation_title">الكتابة تلقائيًّا بالأحرف الكبيرة</string>
<string name="pref_autocapitalisation_summary">ضغط زر Shift في بداية جملة</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">اهتزاز مُخصص</string>
<string name="pref_vibrate_duration_title">شدّة الاهتزاز</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
<string name="pref_category_style">الأسلوب</string>
<string name="pref_margin_bottom_title">هامش سفلي</string>
<string name="pref_keyboard_height_title">ارتفاع لوحة المفاتيح</string>
<string name="pref_horizontal_margin_title">هامش أفقي</string>
<string name="pref_character_size_title">حجم التسمية</string>
<string name="pref_character_size_summary">حجم الأحرف المعروضة على لوحة المفاتيح (%.2fx)</string>
<string name="pref_theme">السمة</string>
<string name="pref_theme_e_system">إعدادات النظام</string>
<string name="pref_theme_e_dark">داكن</string>
<string name="pref_theme_e_light">فاتح</string>
<string name="pref_theme_e_black">أسود</string>
<string name="pref_theme_e_altblack">أسود بديل</string>
<string name="pref_theme_e_white">أبيض</string>
<string name="pref_theme_e_epaper">ورق إلكتروني</string>
<string name="pref_theme_e_desert">الصحراء</string>
<string name="pref_theme_e_jungle">الغابة</string>
<string name="pref_theme_e_monet">مونيه (النظام)</string>
<string name="pref_theme_e_monetlight">مونيه (فاتح)</string>
<string name="pref_theme_e_monetdark">مونيه (داكن)</string>
<string name="pref_theme_e_rosepine">الصنوبر الوردي</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">قصير جدًّا</string>
<string name="pref_swipe_dist_e_short">قصير</string>
<string name="pref_swipe_dist_e_default">طبيعي</string>
<string name="pref_swipe_dist_e_far">بعيد</string>
<string name="pref_swipe_dist_e_very_far">بعيد جدًّا</string>
<string name="pref_key_horizontal_space">المسافة الأفقية بين المفاتيح</string>
<string name="pref_key_vertical_space">المسافة الرأسية بين المفاتيح</string>
<string name="pref_border_config_title">خصّص الحدود</string>
<string name="pref_border_width_title">عرض الحدود</string>
<string name="pref_corners_radius_title">شعاع الزاوية</string>
<string name="pref_circle_sensitivity_title">حساسية إيماءة الدائرة</string>
<string name="pref_circle_sensitivity_e_high">عالي</string>
<string name="pref_circle_sensitivity_e_medium">متوسط</string>
<string name="pref_circle_sensitivity_e_low">مُنخفض</string>
<string name="pref_circle_sensitivity_e_disabled">معطَّل</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">التالي</string>
<string name="key_action_done">تم</string>
<string name="key_action_go">ذهاب</string>
<string name="key_action_prev">رجوع</string>
<string name="key_action_search">بحث</string>
<string name="key_action_send">إرسال</string>
<string name="launcher_button_imesettings">مكّن لوحة المفاتيح</string>
<string name="launcher_button_imepicker">حدّد لوحة المفاتيح</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">هذا التطبيق عبارة عن لوحة مفاتيح افتراضية. انتقل إلى إعدادات النظام بالنقر على الزر أدناه ومكّن Unexpected Keyboard.</string>
<string name="launcher_sourcecode">هذا التطبيق مجاني ومفتوح المصدر. يمكنك إيجاد كود المصدر أو الإبلاغ عن الأخطاء على GitHub.</string>
<string name="launcher_tryhere">بعد التمكين، يمكنك تجربة لوحة المفاتيح هنا:</string>
<string name="launcher_tryhere_hint">جرّب هنا</string>
<string name="key_descr_capslock">وضع الأحرف الكبيرة</string>
<string name="key_descr_compose">إنشاء</string>
<string name="key_descr_switch_greekmath">الرموز اليونانية والرياضية</string>
<string name="key_descr_change_method">تبديل لوحة المفاتيح</string>
<string name="key_descr_voice_typing">الكتابة بالصوت</string>
<string name="key_descr_copy">نسخ</string>
<string name="key_descr_paste">لصق</string>
<string name="key_descr_cut">قص</string>
<string name="key_descr_selectAll">حدّد الكل</string>
<string name="key_descr_pasteAsPlainText">اللصق كنص عادي</string>
<string name="key_descr_undo">تراجَع</string>
<string name="key_descr_redo">أعِد</string>
<string name="key_descr_ª">مؤشّر ترتيبي</string>
<string name="key_descr_º">مؤشّر ترتيبي</string>
<string name="key_descr_superscript">رمز علوي</string>
<string name="key_descr_subscript">رمز سفلي</string>
<string name="key_descr_page_up">الصفحة لأعلى</string>
<string name="key_descr_page_down">الصفحة لأسفل</string>
<string name="key_descr_home">الرئيسية</string>
<string name="key_descr_end">إنهاء</string>
<string name="key_descr_clipboard">مُدير الحافظة</string>
<string name="key_descr_combining">علامة تشكيل قابلة للجمع</string>
<string name="key_descr_dead_key">مفتاح هامد</string>
<string name="key_descr_zwj">واصل بعرض صفر</string>
<string name="key_descr_zwnj">فاصل بعرض صفر</string>
<string name="key_descr_nbsp">مسافة غير فاصلة</string>
<string name="key_descr_nnbsp">مسافة ضيّقة غير فاصلة</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<string name="clipboard_history_heading">نص تمّ نسخه مؤخّرًا</string>
<string name="clipboard_pin_heading">المثبّتة</string>
<string name="clipboard_remove_confirm">هل أنت متأكّد من إزالة هذه الحافظة؟</string>
<string name="clipboard_remove_confirmed">نعم</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+166
View File
@@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (تصحيح الأخطاء)</string>
<string name="short_description">كيبورد افتراضي خفيف الوزن ويراعي الخصوصية لآندرويد.</string>
<string name="store_description">الميزة الرئيسية إنّه تقدر تكتب حروف أكثر عن طريق تمرير المفاتيح باتّجاه الزوايا\n\nهذا التطبيق أصلاً تسوّى علشان المبرمجين إلّي يستخدمون طرفية Termux.\nالآن صار تمام للاستخدام اليومي.</string>
<string name="pref_portrait">وضع لوحي</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">وضع أفقي</string>
<!-- <string name="pref_landscape_unfolded">In landscape mode unfolded</string> -->
<string name="pref_category_layout">التخطيط</string>
<string name="pref_label_brightness">اضبط سطوع التسمية</string>
<string name="pref_keyboard_opacity">اضبط شفافية خلفية الكيبورد</string>
<string name="pref_key_opacity">اضبط شفافية المفتاح</string>
<string name="pref_key_activated_opacity">اضبط شفافية المفتاح المضغوط</string>
<string name="pref_layout_e_system">إعدادات النظام</string>
<string name="pref_layout_e_custom">تخطيط مخصص</string>
<string name="pref_layouts_add">ضيف تخطيط بديل</string>
<string name="pref_layouts_item">التخطيط %1$d: %2$s</string>
<string name="pref_layouts_remove_custom">امسح التخطيط</string>
<string name="pref_custom_layout_title">تخطيط مخصص</string>
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
<!-- <string name="pref_show_number_row_symbols">Number row with symbols</string> -->
<string name="pref_show_numpad_title">إظهار لوحة الأرقام</string>
<string name="pref_show_numpad_never">أبدًا</string>
<string name="pref_show_numpad_landscape">بس في الوضع الأفقي</string>
<string name="pref_show_numpad_always">دايمًا</string>
<string name="pref_number_row_title">أظهر صف الأرقام</string>
<string name="pref_numpad_layout">تخطيط لوحة الأرقام</string>
<string name="pref_numpad_layout_e_high_first">الأرقام العالية أولاً</string>
<string name="pref_numpad_layout_e_low_first">الأرقام المنخفضة أولاً</string>
<string name="pref_extra_keys_title">ضيف مفاتيح للكيبورد</string>
<string name="pref_extra_keys_custom">ضيف مفاتيح مخصصة</string>
<string name="pref_extra_keys_internal">اختار المفاتيح إلّي تبغى تضيفها للكيبورد</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">الكتابة</string>
<string name="pref_swipe_dist_title">مسافة التمرير</string>
<string name="pref_swipe_dist_summary">المسافة بين الحروف في زوايا المفاتيح (%s)</string>
<string name="pref_long_timeout_title">مهلة الضغط لفترة طويلة</string>
<string name="pref_long_interval_title">فاصل تكرير المفتاح</string>
<string name="pref_keyrepeat_enabled">تكرير المفتاح عند الضغط المطوّل</string>
<string name="pref_lock_double_tap_title">نقرتين على زر Shift للكتابة بالحروف الكبيرة</string>
<string name="pref_lock_double_tap_summary">تقدر تقفّل أي مفتاح تعديل بالضغط عليه باستمرار</string>
<string name="pref_category_behavior">السلوك</string>
<string name="pref_autocapitalisation_title">الكتابة التلقائية بالحروف الكبيرة</string>
<string name="pref_autocapitalisation_summary">اضغط على مفتاح Shift في بداية جملة</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">اهتزاز مخصص</string>
<string name="pref_vibrate_duration_title">شدّة الاهتزاز</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
<string name="pref_category_style">الأسلوب</string>
<string name="pref_margin_bottom_title">هامش سفلي</string>
<string name="pref_keyboard_height_title">ارتفاع الكيبورد</string>
<string name="pref_horizontal_margin_title">هامش أفقي</string>
<string name="pref_character_size_title">حجم التسمية</string>
<string name="pref_character_size_summary">حجم الحروف المعروضة على الكيبورد (%.2fx)</string>
<string name="pref_theme">الثيم</string>
<string name="pref_theme_e_system">إعدادات النظام</string>
<string name="pref_theme_e_dark">داكن</string>
<string name="pref_theme_e_light">فاتح</string>
<string name="pref_theme_e_black">أسود</string>
<string name="pref_theme_e_altblack">أسود بديل</string>
<string name="pref_theme_e_white">أبيض</string>
<string name="pref_theme_e_epaper">ورق إلكتروني</string>
<string name="pref_theme_e_desert">الصحراء</string>
<string name="pref_theme_e_jungle">الغابة</string>
<string name="pref_theme_e_monet">مونيه (النظام)</string>
<string name="pref_theme_e_monetlight">مونيه (فاتح)</string>
<string name="pref_theme_e_monetdark">مونيه (داكن)</string>
<string name="pref_theme_e_rosepine">صنوبر وردي</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">مرة قصير</string>
<string name="pref_swipe_dist_e_short">قصير</string>
<string name="pref_swipe_dist_e_default">عادي</string>
<string name="pref_swipe_dist_e_far">بعيد</string>
<string name="pref_swipe_dist_e_very_far">مرة بعيد</string>
<string name="pref_key_horizontal_space">المسافة الأفقية بين المفاتيح</string>
<string name="pref_key_vertical_space">المسافة الرأسية بين المفاتيح</string>
<string name="pref_border_config_title">خصّص الحدود</string>
<string name="pref_border_width_title">عرض الحدود</string>
<string name="pref_corners_radius_title">شعاع الزاوية</string>
<string name="pref_circle_sensitivity_title">حساسية إيماءة الدايرة</string>
<string name="pref_circle_sensitivity_e_high">عالي</string>
<string name="pref_circle_sensitivity_e_medium">متوسط</string>
<string name="pref_circle_sensitivity_e_low">منخفض</string>
<string name="pref_circle_sensitivity_e_disabled">موقَّف</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">التالي</string>
<string name="key_action_done">تمام</string>
<string name="key_action_go">ذهاب</string>
<string name="key_action_prev">تراجُع</string>
<string name="key_action_search">بحث</string>
<string name="key_action_send">إرسال</string>
<string name="launcher_button_imesettings">شغّل الكيبورد</string>
<string name="launcher_button_imepicker">اختار الكيبورد</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">هذا التطبيق كيبورد افتراضي. روح لإعدادات النظام عن طريق الضغط على الزر إلّي تحت وشغّل Unexpected Keyboard.</string>
<string name="launcher_sourcecode">هذا تطبيق مجاني ومفتوح المصدر. تقدر تلاقي كود المصدر أو الإبلاغ عن أخطاء على GitHub.</string>
<string name="launcher_tryhere">بعد التشغيل، تقدر تجرّب الكيبورد هنا:</string>
<string name="launcher_tryhere_hint">جرّب هنا</string>
<string name="key_descr_capslock">وضع الحروف الكبيرة</string>
<string name="key_descr_compose">تكوين</string>
<string name="key_descr_switch_greekmath">الرموز الرياضية واليونانية</string>
<string name="key_descr_change_method">غيّر الكيبورد</string>
<string name="key_descr_voice_typing">الكتابة بالصوت</string>
<string name="key_descr_copy">نسخ</string>
<string name="key_descr_paste">لصق</string>
<string name="key_descr_cut">قص</string>
<string name="key_descr_selectAll">تحديد الكل</string>
<string name="key_descr_pasteAsPlainText">اللصق كنص عادي</string>
<string name="key_descr_undo">تراجع</string>
<string name="key_descr_redo">عيد</string>
<string name="key_descr_ª">مؤشّر ترتيبي</string>
<string name="key_descr_º">مؤشّر ترتيبي</string>
<string name="key_descr_superscript">رمز علوي</string>
<string name="key_descr_subscript">رمز سفلي</string>
<string name="key_descr_page_up">الصفحة لفوق</string>
<string name="key_descr_page_down">الصفحة لتحت</string>
<string name="key_descr_home">الرئيسية</string>
<string name="key_descr_end">إنهاء</string>
<string name="key_descr_clipboard">مدير الحافظة</string>
<string name="key_descr_combining">حركة قابلة للجمع</string>
<string name="key_descr_dead_key">مفتاح التشكيل</string>
<string name="key_descr_zwj">واصل بعرض صفر</string>
<string name="key_descr_zwnj">فاصل بعرض صفر</string>
<string name="key_descr_nbsp">مسافة غير فاصلة</string>
<string name="key_descr_nnbsp">مسافة ضيقة غير فاصلة</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<string name="clipboard_history_heading">نص تم نسخه تو</string>
<string name="clipboard_pin_heading">مثبّت</string>
<string name="clipboard_remove_confirm">هل إنت متأكّد إنّك تبغى تمسح هذه الحافظة؟</string>
<string name="clipboard_remove_confirmed">إيه</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+166
View File
@@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (تصحيح الأخطاء)</string>
<string name="short_description">لوحة مفاتيح افتراضية خفيفة ومُراعية للخصوصية لنظام آندرويد.</string>
<string name="store_description">الميزة الرئيسة هي أنّه يمكنك كتابة المزيد من الأحرف عن طريق تمرير المفاتيح نحو الزوايا.\n\nهذا التطبيق كان مُصممًا للمُبرمجين الذين يستخدمون طرفية Termux.\nالآن صار مثاليًا للاستخدام اليومي.</string>
<string name="pref_portrait">في الوضع اللوحي</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">في الوضع الأفقي</string>
<!-- <string name="pref_landscape_unfolded">In landscape mode unfolded</string> -->
<string name="pref_category_layout">التخطيط</string>
<string name="pref_label_brightness">ضبط سطوع التسمية</string>
<string name="pref_keyboard_opacity">ضبط عتامة خلفية لوحة المفاتيح</string>
<string name="pref_key_opacity">ضبط عتامة المفتاح</string>
<string name="pref_key_activated_opacity">ضبط عتامة المفتاح المضغوط</string>
<string name="pref_layout_e_system">إعدادات النظام</string>
<string name="pref_layout_e_custom">تخطيط مُخصص</string>
<string name="pref_layouts_add">إضافة تخطيط بديل</string>
<string name="pref_layouts_item">التخطيط %1$d:%2$s</string>
<string name="pref_layouts_remove_custom">إزالة التخطيط</string>
<string name="pref_custom_layout_title">تخطيط مُخصص</string>
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
<!-- <string name="pref_show_number_row_symbols">Number row with symbols</string> -->
<string name="pref_show_numpad_title">إظهار لوحة الأرقام</string>
<string name="pref_show_numpad_never">أبدًا</string>
<string name="pref_show_numpad_landscape">في الوضع الأفقي فقط</string>
<string name="pref_show_numpad_always">دائمًا</string>
<string name="pref_number_row_title">إظهار صف الأرقام</string>
<string name="pref_numpad_layout">تخطيط لوحة الأرقام</string>
<string name="pref_numpad_layout_e_high_first">الأرقام العالية أولاً</string>
<string name="pref_numpad_layout_e_low_first">الأرقام السفلى أولاً</string>
<string name="pref_extra_keys_title">إضافة مفاتيح للوحة المفاتيح</string>
<string name="pref_extra_keys_custom">إضافة مفاتيح مُخصصة</string>
<string name="pref_extra_keys_internal">حدّد المفاتيح المراد إضافتها إلى لوحة المفاتيح</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">الكتابة</string>
<string name="pref_swipe_dist_title">مسافة التمرير</string>
<string name="pref_swipe_dist_summary">مسافة الأحرف في زوايا المفاتيح (%s)</string>
<string name="pref_long_timeout_title">مهلة الضغط لفترة طويلة</string>
<string name="pref_long_interval_title">فترة تكرار المفتاح</string>
<string name="pref_keyrepeat_enabled">تكرار المفتاح عند الضغط لفترة طويلة</string>
<string name="pref_lock_double_tap_title">نقرة مُزدوجة على زر Shift لوضع الأحرف الكبيرة</string>
<string name="pref_lock_double_tap_summary">يمكنك قفل أي معدِّل من خلال الضغط عليه باستمرار</string>
<string name="pref_category_behavior">السلوك</string>
<string name="pref_autocapitalisation_title">الكتابة تلقائيًّا بالأحرف الكبيرة</string>
<string name="pref_autocapitalisation_summary">ضغط زر Shift في بداية جملة</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">اهتزاز مُخصص</string>
<string name="pref_vibrate_duration_title">شدّة الاهتزاز</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
<string name="pref_category_style">الأسلوب</string>
<string name="pref_margin_bottom_title">هامش سفلي</string>
<string name="pref_keyboard_height_title">ارتفاع لوحة المفاتيح</string>
<string name="pref_horizontal_margin_title">هامش أفقي</string>
<string name="pref_character_size_title">حجم التسمية</string>
<string name="pref_character_size_summary">حجم الأحرف المعروضة على لوحة المفاتيح (%.2fx)</string>
<string name="pref_theme">السمة</string>
<string name="pref_theme_e_system">إعدادات النظام</string>
<string name="pref_theme_e_dark">داكن</string>
<string name="pref_theme_e_light">فاتح</string>
<string name="pref_theme_e_black">أسود</string>
<string name="pref_theme_e_altblack">أسود بديل</string>
<string name="pref_theme_e_white">أبيض</string>
<string name="pref_theme_e_epaper">ورق إلكتروني</string>
<string name="pref_theme_e_desert">الصحراء</string>
<string name="pref_theme_e_jungle">الغابة</string>
<string name="pref_theme_e_monet">مونيه (النظام)</string>
<string name="pref_theme_e_monetlight">مونيه (فاتح)</string>
<string name="pref_theme_e_monetdark">مونيه (داكن)</string>
<string name="pref_theme_e_rosepine">الصنوبر الوردي</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">قصير جدًّا</string>
<string name="pref_swipe_dist_e_short">قصير</string>
<string name="pref_swipe_dist_e_default">طبيعي</string>
<string name="pref_swipe_dist_e_far">بعيد</string>
<string name="pref_swipe_dist_e_very_far">بعيد جدًّا</string>
<string name="pref_key_horizontal_space">المسافة الأفقية بين المفاتيح</string>
<string name="pref_key_vertical_space">المسافة الرأسية بين المفاتيح</string>
<string name="pref_border_config_title">خصّص الحدود</string>
<string name="pref_border_width_title">عرض الحدود</string>
<string name="pref_corners_radius_title">شعاع الزاوية</string>
<string name="pref_circle_sensitivity_title">حساسية إيماءة الدائرة</string>
<string name="pref_circle_sensitivity_e_high">عالي</string>
<string name="pref_circle_sensitivity_e_medium">متوسط</string>
<string name="pref_circle_sensitivity_e_low">مُنخفض</string>
<string name="pref_circle_sensitivity_e_disabled">معطَّل</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">التالي</string>
<string name="key_action_done">تم</string>
<string name="key_action_go">ذهاب</string>
<string name="key_action_prev">رجوع</string>
<string name="key_action_search">بحث</string>
<string name="key_action_send">إرسال</string>
<string name="launcher_button_imesettings">مكّن لوحة المفاتيح</string>
<string name="launcher_button_imepicker">حدّد لوحة المفاتيح</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">هذا التطبيق عبارة عن لوحة مفاتيح افتراضية. انتقل إلى إعدادات النظام بالنقر على الزر أدناه ومكّن Unexpected Keyboard.</string>
<string name="launcher_sourcecode">هذا التطبيق مجاني ومفتوح المصدر. يمكنك إيجاد كود المصدر أو الإبلاغ عن الأخطاء على GitHub.</string>
<string name="launcher_tryhere">بعد التمكين، يمكنك تجربة لوحة المفاتيح هنا:</string>
<string name="launcher_tryhere_hint">جرّب هنا</string>
<string name="key_descr_capslock">وضع الأحرف الكبيرة</string>
<string name="key_descr_compose">إنشاء</string>
<string name="key_descr_switch_greekmath">الرموز اليونانية والرياضية</string>
<string name="key_descr_change_method">تبديل لوحة المفاتيح</string>
<string name="key_descr_voice_typing">الكتابة بالصوت</string>
<string name="key_descr_copy">نسخ</string>
<string name="key_descr_paste">لصق</string>
<string name="key_descr_cut">قص</string>
<string name="key_descr_selectAll">حدّد الكل</string>
<string name="key_descr_pasteAsPlainText">اللصق كنص عادي</string>
<string name="key_descr_undo">تراجَع</string>
<string name="key_descr_redo">أعِد</string>
<string name="key_descr_ª">مؤشّر ترتيبي</string>
<string name="key_descr_º">مؤشّر ترتيبي</string>
<string name="key_descr_superscript">رمز علوي</string>
<string name="key_descr_subscript">رمز سفلي</string>
<string name="key_descr_page_up">الصفحة لأعلى</string>
<string name="key_descr_page_down">الصفحة لأسفل</string>
<string name="key_descr_home">الرئيسية</string>
<string name="key_descr_end">إنهاء</string>
<string name="key_descr_clipboard">مُدير الحافظة</string>
<string name="key_descr_combining">علامة تشكيل قابلة للجمع</string>
<string name="key_descr_dead_key">مفتاح هامد</string>
<string name="key_descr_zwj">واصل بعرض صفر</string>
<string name="key_descr_zwnj">فاصل بعرض صفر</string>
<string name="key_descr_nbsp">مسافة غير فاصلة</string>
<string name="key_descr_nnbsp">مسافة ضيّقة غير فاصلة</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<string name="clipboard_history_heading">نص تمّ نسخه مؤخّرًا</string>
<string name="clipboard_pin_heading">المثبّتة</string>
<string name="clipboard_remove_confirm">هل أنت متأكّد من إزالة هذه الحافظة؟</string>
<string name="clipboard_remove_confirmed">نعم</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+166
View File
@@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_release">অপ্রত্যাশিত কীবোর্ড</string>
<string name="app_name_debug">অপ্রত্যাশিত কিবোর্ড (ডিবাগ)</string>
<string name="short_description">অ্যান্ড্রোয়েডের জন্য হালকা এবং গোপনীয়তা-সচেতন ভার্চুয়াল কিবোর্ড।</string>
<string name="store_description">এর প্রধান বৈশিষ্ট্য হলো, কি-গুলোর কোণার দিকে সোয়াইপ করে আপনি আরও বেশি অক্ষর টাইপ করতে পারবেন।\n\nএই অ্যাপ্লিকেশনটি মূলত টার্মাক্স (Termux) ব্যবহারকারী প্রোগ্রামারদের জন্য ডিজাইন করা হয়েছিল।\nএখন এটি দৈনন্দিন ব্যবহারের জন্য উপযুক্ত।</string>
<string name="pref_portrait">পোর্ট্রেড বিন্যাসে</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">ল্যান্ডস্কেপ বিন্যাসে</string>
<!-- <string name="pref_landscape_unfolded">In landscape mode unfolded</string> -->
<string name="pref_category_layout">বিন্যাস</string>
<string name="pref_label_brightness">লেবেলের উজ্জ্বলতা নির্ধারণ করুন</string>
<string name="pref_keyboard_opacity">কিবোর্ডের পৃষ্ঠভূমির গাঢ়ত্ব নির্ধারণ করুন</string>
<string name="pref_key_opacity">কি-এর গাঢ়ত্ব নির্ধারণ করুন</string>
<string name="pref_key_activated_opacity">চেপে ধরা কি-এর গাঢ়ত্ব নির্ধারণ করুন</string>
<string name="pref_layout_e_system">সিস্টেম সেটিংস</string>
<string name="pref_layout_e_custom">অপ্রাথমিক বিন্যাস</string>
<string name="pref_layouts_add">একটি বিকল্প লেআউট যোগ করুন</string>
<string name="pref_layouts_item">লেআউট %1$d: %2$s</string>
<string name="pref_layouts_remove_custom">লেআউট সরান</string>
<string name="pref_custom_layout_title">কাস্টম লেআউট</string>
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
<!-- <string name="pref_show_number_row_symbols">Number row with symbols</string> -->
<string name="pref_show_numpad_title">নামপ্যাড দেখান</string>
<string name="pref_show_numpad_never">কখনো না</string>
<string name="pref_show_numpad_landscape">শুধুমাত্র ল্যান্ডস্কেপ মোডে</string>
<string name="pref_show_numpad_always">সর্বদা</string>
<string name="pref_number_row_title">নম্বর সারি দেখান</string>
<string name="pref_numpad_layout">নামপ্যাড লেআউট</string>
<string name="pref_numpad_layout_e_high_first">প্রথমে উচ্চ সংখ্যা</string>
<string name="pref_numpad_layout_e_low_first">প্রথমে নিম্ন সংখ্যা</string>
<string name="pref_extra_keys_title">কিবোর্ডে কী যোগ করুন</string>
<string name="pref_extra_keys_custom">কাস্টম কী যোগ করুন</string>
<string name="pref_extra_keys_internal">কিবোর্ডে যোগ করার জন্য কী-গুলো নির্বাচন করুন</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">টাইপিং</string>
<string name="pref_swipe_dist_title">সোয়াইপিং দূরত্ব</string>
<string name="pref_swipe_dist_summary">কী-গুলোর কোণায় থাকা অক্ষরগুলোর দূরত্ব (%s)</string>
<string name="pref_long_timeout_title">দীর্ঘক্ষণ চাপ দিয়ে টাইমআউট</string>
<string name="pref_long_interval_title">মূল পুনরাবৃত্তি ব্যবধান</string>
<string name="pref_keyrepeat_enabled">দীর্ঘক্ষণ চাপলে কী-টি পুনরাবৃত্তি হয়</string>
<string name="pref_lock_double_tap_title">ক্যাপস লক করার জন্য শিফট-এ ডাবল ট্যাপ করুন</string>
<string name="pref_lock_double_tap_summary">আপনি যেকোনো মডিফায়ার চেপে ধরে লক করতে পারেন</string>
<string name="pref_category_behavior">আচরণ</string>
<string name="pref_autocapitalisation_title">স্বয়ংক্রিয় মূলধনীকরণ</string>
<string name="pref_autocapitalisation_summary">বাক্যের শুরুতে Shift চাপুন</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">কাস্টম কম্পন</string>
<string name="pref_vibrate_duration_title">কম্পন তীব্রতা</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
<string name="pref_category_style">স্টাইল</string>
<string name="pref_margin_bottom_title">নিচের মার্জিন</string>
<string name="pref_keyboard_height_title">কিবোর্ড এর উচ্চতা</string>
<string name="pref_horizontal_margin_title">অনুভূমিক মার্জিন</string>
<string name="pref_character_size_title">লেবেলের আকার</string>
<string name="pref_character_size_summary">কিবোর্ডে প্রদর্শিত অক্ষরের আকার (%.2fx)</string>
<string name="pref_theme">থিম</string>
<string name="pref_theme_e_system">সিস্টেম সেটিংস</string>
<string name="pref_theme_e_dark">অন্ধকার</string>
<string name="pref_theme_e_light">উজ্জ্বল</string>
<string name="pref_theme_e_black">কালো</string>
<string name="pref_theme_e_altblack">বিকল্প কালো</string>
<string name="pref_theme_e_white">সাদা</string>
<string name="pref_theme_e_epaper">ই-পেপার</string>
<string name="pref_theme_e_desert">মরুভূমি</string>
<string name="pref_theme_e_jungle">জঙ্গল</string>
<string name="pref_theme_e_monet">মোনেট (সিস্টেম)</string>
<string name="pref_theme_e_monetlight">মনেট (উজ্জ্বল)</string>
<string name="pref_theme_e_monetdark">মনেট (অন্ধকার)</string>
<string name="pref_theme_e_rosepine">রোজে পাইন</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">খুব ছোট</string>
<string name="pref_swipe_dist_e_short">সংক্ষিপ্ত</string>
<string name="pref_swipe_dist_e_default">স্বাভাবিক</string>
<string name="pref_swipe_dist_e_far">দূরে</string>
<string name="pref_swipe_dist_e_very_far">অনেক দূরে</string>
<string name="pref_key_horizontal_space">কীগুলির মধ্যে অনুভূমিক ব্যবধান</string>
<string name="pref_key_vertical_space">কীগুলির মধ্যে উল্লম্ব ব্যবধান</string>
<string name="pref_border_config_title">সীমানা কাস্টমাইজ করুন</string>
<string name="pref_border_width_title">সীমানার প্রস্থ</string>
<string name="pref_corners_radius_title">কোণার ব্যাসার্ধ</string>
<string name="pref_circle_sensitivity_title">বৃত্তাকার অঙ্গভঙ্গি সংবেদনশীলতা</string>
<string name="pref_circle_sensitivity_e_high">উচ্চ</string>
<string name="pref_circle_sensitivity_e_medium">মাঝারি</string>
<string name="pref_circle_sensitivity_e_low">নিম্ন</string>
<string name="pref_circle_sensitivity_e_disabled">অক্ষম</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">পরবর্তী</string>
<string name="key_action_done">সম্পন্ন</string>
<string name="key_action_go">যান</string>
<string name="key_action_prev">পূর্ববর্তী</string>
<string name="key_action_search">অনুসন্ধান</string>
<string name="key_action_send">পাঠান</string>
<string name="launcher_button_imesettings">কিবোর্ড সক্রিয় করুন</string>
<string name="launcher_button_imepicker">কিবোর্ড নির্বাচন করুন</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">এই অ্যাপ্লিকেশনটি একটি ভার্চুয়াল কীবোর্ড। নিচের বোতামে ক্লিক করে সিস্টেম সেটিংসে যান এবং ‘Unexpected-Keyboard’ সক্রিয় করুন।</string>
<string name="launcher_sourcecode">এটি একটি ফ্রি এবং ওপেন সোর্স অ্যাপ্লিকেশন। আপনি গিটহাবে এর সোর্স কোড খুঁজে পেতে পারেন অথবা বাগ রিপোর্ট করতে পারেন।</string>
<string name="launcher_tryhere">সক্রিয় করার পর, আপনি এখানে কীবোর্ডটি ব্যবহার করে দেখতে পারেন:</string>
<string name="launcher_tryhere_hint">এখানে চেষ্টা করুন</string>
<string name="key_descr_capslock">ক্যাপস লক</string>
<string name="key_descr_compose">রচনা করুন</string>
<string name="key_descr_switch_greekmath">গ্রীক এবং গণিতের প্রতীক</string>
<string name="key_descr_change_method">কিবোর্ড পরিবর্তন করুন</string>
<string name="key_descr_voice_typing">ভয়েস টাইপিং</string>
<string name="key_descr_copy">অনুলিপি</string>
<string name="key_descr_paste">পেস্ট</string>
<string name="key_descr_cut">কাট</string>
<string name="key_descr_selectAll">সবগুলো নির্বাচন করুন</string>
<string name="key_descr_pasteAsPlainText">সাধারণ টেক্সট হিসেবে পেস্ট করুন</string>
<string name="key_descr_undo">পূর্বাবস্থায় ফেরান</string>
<string name="key_descr_redo">পুনরায় করুন</string>
<string name="key_descr_ª">ক্রমিক সূচক</string>
<string name="key_descr_º">ক্রমিক সূচক</string>
<string name="key_descr_superscript">সুপারস্ক্রিপ্ট</string>
<string name="key_descr_subscript">সাবস্ক্রিপ্ট</string>
<string name="key_descr_page_up">পৃষ্ঠা উপরে</string>
<string name="key_descr_page_down">পৃষ্ঠা নিচে</string>
<string name="key_descr_home">হোম</string>
<string name="key_descr_end">শেষ</string>
<string name="key_descr_clipboard">ক্লিপবোর্ড ম্যানেজার</string>
<string name="key_descr_combining">ডায়াক্রিটিক একত্রিত করা</string>
<string name="key_descr_dead_key">ডেড কী</string>
<string name="key_descr_zwj">শূন্য প্রস্থের সংযোগকারী</string>
<string name="key_descr_zwnj">শূন্য প্রস্থের অ-সংযোজক</string>
<string name="key_descr_nbsp">নন-ব্রেকিং স্পেস</string>
<string name="key_descr_nnbsp">সংকীর্ণ অবিচ্ছিন্ন স্থান</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<string name="clipboard_history_heading">সম্প্রতি অনুলিপি করা পাঠ্য</string>
<string name="clipboard_pin_heading">পিন করা</string>
<string name="clipboard_remove_confirm">এই ক্লিপবোর্ডটি সরাবেন?</string>
<string name="clipboard_remove_confirmed">হ্যা</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+166
View File
@@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (depuració)</string>
<string name="short_description">Un teclat virtual lleuger per a Android que és conscient de la teva privacitat.</string>
<string name="store_description">La característica principal és que pots escriure més caràcters arrossegant les tecles cap a les cantonades.\n\nAquesta aplicació va ser dissenyada originalment per als programadors que usen Termux.\nAra és perfecta per a un ús quotidià.\n\nAquesta aplicació no conté anuncis i és de codi obert.</string>
<string name="pref_portrait">En mode vertical</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">En mode apaïsat</string>
<!-- <string name="pref_landscape_unfolded">In landscape mode unfolded</string> -->
<string name="pref_category_layout">Distribució</string>
<string name="pref_label_brightness">Ajusta la brillantor dels símbols</string>
<string name="pref_keyboard_opacity">Ajusta l\'opacitat del fons del teclat</string>
<string name="pref_key_opacity">Ajusta l\'opacitat de les tecles</string>
<string name="pref_key_activated_opacity">Ajusta l\'opacitat de la tecla quan es prem</string>
<string name="pref_layout_e_system">Cobfiguració del sistema</string>
<string name="pref_layout_e_custom">Distribució personalitzada</string>
<string name="pref_layouts_add">Afegeix una distribució alternativa</string>
<string name="pref_layouts_item">Distribució %1$d: %2$s</string>
<string name="pref_layouts_remove_custom">Eliminar distribució</string>
<string name="pref_custom_layout_title">Distribució personalitzada</string>
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
<!-- <string name="pref_show_number_row_symbols">Number row with symbols</string> -->
<string name="pref_show_numpad_title">Mostra el teclat numèric</string>
<string name="pref_show_numpad_never">Mai</string>
<string name="pref_show_numpad_landscape">Només en mode apaïsat</string>
<string name="pref_show_numpad_always">Sempre</string>
<string name="pref_number_row_title">Mostra la fila de nombres</string>
<string name="pref_numpad_layout">Distribució del teclat numèric</string>
<string name="pref_numpad_layout_e_high_first">En ordre descendent</string>
<string name="pref_numpad_layout_e_low_first">En ordre ascendent</string>
<string name="pref_extra_keys_title">Afegeix tecles al teclat</string>
<string name="pref_extra_keys_custom">Afegeix tecles personalitzades</string>
<string name="pref_extra_keys_internal">Selecciona tecles per afegir al teclat</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">Escriptura</string>
<string name="pref_swipe_dist_title">Distància d\'arrossegament</string>
<string name="pref_swipe_dist_summary">Distància dels caràcters a les cantonades de les tecles: %s</string>
<string name="pref_long_timeout_title">Temps d\'espera per tocs llargs</string>
<string name="pref_long_interval_title">Interval de repetició de la tecla</string>
<string name="pref_keyrepeat_enabled">Repeteix la tecla al mantenir-la premuda</string>
<string name="pref_lock_double_tap_title">Activa fer doble toc a shift pel bloqueig de majúscules</string>
<string name="pref_lock_double_tap_summary">Pots bloquejar qualsevol modificador prement-lo</string>
<string name="pref_category_behavior">Comportament</string>
<string name="pref_autocapitalisation_title">Majúscules automàtiques</string>
<string name="pref_autocapitalisation_summary">Fa que sigui innecesari prémer Shift a l\'inici de cada frase</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">Personalitza la vibració</string>
<string name="pref_vibrate_duration_title">Intensitat de la vibració</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
<string name="pref_category_style">Estil</string>
<string name="pref_margin_bottom_title">Marge inferior</string>
<string name="pref_keyboard_height_title">Alçada del teclat</string>
<string name="pref_horizontal_margin_title">Marge horitzontal</string>
<string name="pref_character_size_title">Mida dels símbols</string>
<string name="pref_character_size_summary">Mida dels caràcters que es mostren al teclat: x%.2f</string>
<string name="pref_theme">Tema</string>
<string name="pref_theme_e_system">Configuració del sistema</string>
<string name="pref_theme_e_dark">Fosc</string>
<string name="pref_theme_e_light">Clar</string>
<string name="pref_theme_e_black">Negre</string>
<string name="pref_theme_e_altblack">Negre alternatiu</string>
<string name="pref_theme_e_white">Blanc</string>
<string name="pref_theme_e_epaper">Tinta electrònica</string>
<string name="pref_theme_e_desert">Desert</string>
<string name="pref_theme_e_jungle">Jungla</string>
<string name="pref_theme_e_monet">Monet (sistema)</string>
<string name="pref_theme_e_monetlight">Monet (clar)</string>
<string name="pref_theme_e_monetdark">Monet (fosc)</string>
<string name="pref_theme_e_rosepine">Rosé Pine (pi rosat)</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">Molt curta</string>
<string name="pref_swipe_dist_e_short">Curta</string>
<string name="pref_swipe_dist_e_default">Normal</string>
<string name="pref_swipe_dist_e_far">Llarga</string>
<string name="pref_swipe_dist_e_very_far">Molt llarga</string>
<string name="pref_key_horizontal_space">Espaiat horitzontal entre les tecles</string>
<string name="pref_key_vertical_space">Espaiat vertical entre les tecles</string>
<string name="pref_border_config_title">Personalitza les vores</string>
<string name="pref_border_width_title">Amplada de la vora</string>
<string name="pref_corners_radius_title">Radi de les cantonades</string>
<string name="pref_circle_sensitivity_title">Sensibilitat al moviment en cercle</string>
<string name="pref_circle_sensitivity_e_high">Alta</string>
<string name="pref_circle_sensitivity_e_medium">Mitjana</string>
<string name="pref_circle_sensitivity_e_low">Baixa</string>
<string name="pref_circle_sensitivity_e_disabled">Desactivada</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">Següent</string>
<string name="key_action_done">Fet</string>
<string name="key_action_go">Ves</string>
<string name="key_action_prev">Anterior</string>
<string name="key_action_search">Cerca</string>
<string name="key_action_send">Envia</string>
<string name="launcher_button_imesettings">Activa el teclat</string>
<string name="launcher_button_imepicker">Selecciona el teclat</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">Aquesta aplicació és un teclat virtual. Ves a la configuració del sistema fent clic al botó de sota i activa Unexpected Keyboard.</string>
<string name="launcher_sourcecode">Aquesta és una aplicació de codi obert. Pots trobar el codi font o informar d\'errors a GitHub.</string>
<string name="launcher_tryhere">Després d\'activar-lo, pots provar el teclat aquí:</string>
<string name="launcher_tryhere_hint">Prova\'l aquí</string>
<string name="key_descr_capslock">Bloq Maj</string>
<string name="key_descr_compose">Compon</string>
<string name="key_descr_switch_greekmath">Símbols grecs i matemàtics</string>
<string name="key_descr_change_method">Canvia el teclat</string>
<string name="key_descr_voice_typing">Dicta amb la veu</string>
<string name="key_descr_copy">Copia</string>
<string name="key_descr_paste">Enganxa</string>
<string name="key_descr_cut">Talla</string>
<string name="key_descr_selectAll">Selecciona tot</string>
<string name="key_descr_pasteAsPlainText">Enganxa com a text sense format</string>
<string name="key_descr_undo">Desfés</string>
<string name="key_descr_redo">Refés</string>
<string name="key_descr_ª">Indicador d\'ordinal</string>
<string name="key_descr_º">Indicador d\'ordinal</string>
<string name="key_descr_superscript">Superíndex</string>
<string name="key_descr_subscript">Subíndex</string>
<string name="key_descr_page_up">Re Pàg</string>
<string name="key_descr_page_down">Av Pàg</string>
<string name="key_descr_home">Inici</string>
<string name="key_descr_end">Final</string>
<string name="key_descr_clipboard">Porta-retalls</string>
<string name="key_descr_combining">Combina un diacrític</string>
<string name="key_descr_dead_key">Tecla morta</string>
<string name="key_descr_zwj">Unió d\'ample zero</string>
<string name="key_descr_zwnj">No unió d\'ample zero</string>
<string name="key_descr_nbsp">Espai no separable</string>
<string name="key_descr_nnbsp">Espai fi no separable</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<string name="clipboard_history_heading">Text copiat recentment</string>
<string name="clipboard_pin_heading">Fixat</string>
<string name="clipboard_remove_confirm">Voleu eliminar-ho del porta-retalls?</string>
<string name="clipboard_remove_confirmed">Sí</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+33 -5
View File
@@ -3,7 +3,7 @@
<string name="app_name_release">Klávesnice Unexpected</string>
<string name="app_name_debug">Klávesnice Unexpected (pro ladění)</string>
<string name="short_description">Nenáročná virtuální klávesnice pro vývojáře.</string>
<string name="store_description">Hlavní funkcí je možnost psát více znaků posunutím kláves směrem k rohům.\n\nTato aplikace byla původně navržena pro programátory používající Termux.\nNyní je ideální pro každodenní použití.\n\nTato aplikace neobsahuje žádné reklamy, nevyužívá připojení k síti a je Open Source.</string>
<string name="store_description">Hlavní funkcí je možnost psát více znaků posunutím kláves směrem k rohům.\n\nTato aplikace byla původně navržena pro programátory používající Termux.\nNyní je ideální pro každodenní použití.\n\nTato aplikace neobsahuje žádné reklamy a je Open Source.</string>
<string name="pref_portrait">V režimu na výšku</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">V režimu na šířku</string>
@@ -27,13 +27,17 @@
<string name="pref_show_numpad_landscape">Pouze v režimu na šířku</string>
<string name="pref_show_numpad_always">Vždy</string>
<string name="pref_number_row_title">Zobrazit řádek s čísly</string>
<string name="pref_number_row_summary">Přidá řádek s čísly nad klávesnici, pokud je NumPad skrytý</string>
<string name="pref_numpad_layout">Rozložení NumPadu</string>
<string name="pref_numpad_layout_e_high_first">Vyšší číslice jako první (horní řádek 789)</string>
<string name="pref_numpad_layout_e_low_first">Nižší číslice jako první (horní řádek 123)</string>
<string name="pref_extra_keys_title">Přidat klávesy do klávesnice</string>
<string name="pref_extra_keys_custom">Přidat vlastní klávesy</string>
<string name="pref_extra_keys_internal">Výbrané klávesy k přidaní do klávesnice</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">Psaní</string>
<string name="pref_swipe_dist_title">Vzdálenost posunutí prstem</string>
<string name="pref_swipe_dist_summary">Jak daleko je třeba posunout prst pro zadání znaku/znaménka v rohu klávey (%s)</string>
@@ -45,11 +49,13 @@
<string name="pref_category_behavior">Chování</string>
<string name="pref_autocapitalisation_title">Automatická kapitalizace</string>
<string name="pref_autocapitalisation_summary">Stiskne Shift na začátku věty</string>
<string name="pref_switch_input_immediate_title">Přepnout na posledně užívanou klávesnici</string>
<string name="pref_switch_input_immediate_summary">Jak bude klávesa pro přepnutí klávesnice reagovat</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">Vlastní vibrace</string>
<string name="pref_vibrate_duration_title">Síla vibrace</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -73,6 +79,10 @@
<string name="pref_theme_e_monetlight">Monet (Světlý)</string>
<string name="pref_theme_e_monetdark">Monet (Tmavý)</string>
<string name="pref_theme_e_rosepine">Růžová borovice</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">Velmi krátká</string>
<string name="pref_swipe_dist_e_short">Krátká</string>
<string name="pref_swipe_dist_e_default">Běžná</string>
@@ -88,6 +98,10 @@
<string name="pref_circle_sensitivity_e_medium">Střední</string>
<string name="pref_circle_sensitivity_e_low">Nízká</string>
<string name="pref_circle_sensitivity_e_disabled">Deaktivováno</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">Další</string>
<string name="key_action_done">Dokončit</string>
<string name="key_action_go">Spustit</string>
@@ -96,6 +110,7 @@
<string name="key_action_send">Odeslat</string>
<string name="launcher_button_imesettings">Aktivovat klávesnici</string>
<string name="launcher_button_imepicker">Vybrat klávesnici</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">Tato aplikace je pouhou virtuální klávesnicí. Přejděte do systémového nastavení, kliknutím na tlačítko níže a aktivujte ji.</string>
<string name="launcher_sourcecode">Toto je volná, open-source aplikace. Její zdrojový kód, či hlášení chyb, naleznete na Githubu.</string>
<string name="launcher_tryhere">Po aktivaci můžete klávesnici rovnou vyzkoušet zde:</string>
@@ -135,4 +150,17 @@
<string name="clipboard_remove_confirm">Odebrat ze schránky?</string>
<string name="clipboard_remove_confirmed">Ano</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+41 -13
View File
@@ -3,7 +3,7 @@
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (Debug)</string>
<string name="short_description">Eine schlanke, datenschutzfreundliche Bildschirmtastatur für Android.</string>
<string name="store_description">Diese Tastatur zeichnet sich dadurch aus, dass man zusätzliche Zeichen durch Wischgesten in Richtung der Tastenecken eingeben kann.\n\nDie Anwendung wurde ursprünglich für das Programmieren in Termux entwickelt.\nMittlerweile ist sie auch für den täglichen Gebrauch perfekt geeignet.\n\nDiese App enthält keine Werbung, benötigt keinen Netzwerkzugriff und ist quelloffen.</string>
<string name="store_description">Diese Tastatur zeichnet sich dadurch aus, dass man zusätzliche Zeichen durch Wischgesten in Richtung der Tastenecken eingeben kann.\n\nDie Anwendung wurde ursprünglich für das Programmieren in Termux entwickelt.\nMittlerweile ist sie auch für den täglichen Gebrauch perfekt geeignet.\n\nDiese App enthält keine Werbung und ist quelloffen.</string>
<string name="pref_portrait">Im Hochformatmodus</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">Im Querformatmodus</string>
@@ -27,13 +27,17 @@
<string name="pref_show_numpad_landscape">Nur im Querformat</string>
<string name="pref_show_numpad_always">Immer</string>
<string name="pref_number_row_title">Zahlenreihe anzeigen</string>
<string name="pref_number_row_summary">Eine Zahlenreihe oben an der Tastatur hinzufügen, wenn der Ziffernblock ausgeblendet ist</string>
<string name="pref_numpad_layout">Zahlenblock-Layout</string>
<string name="pref_numpad_layout_e_high_first">Hohe Ziffern zuerst</string>
<string name="pref_numpad_layout_e_low_first">Niedrige Ziffern zuerst</string>
<string name="pref_extra_keys_title">Zusätzliche Zeichen zur Tastatur hinzufügen</string>
<string name="pref_extra_keys_custom">Benutzerdefinierte Tasten hinzufügen</string>
<string name="pref_extra_keys_internal">Tasten auswählen, die der Tastatur hinzugefügt werden sollen</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">Tippen</string>
<string name="pref_swipe_dist_title">Länge der Wischgeste</string>
<string name="pref_swipe_dist_summary">Abstand der Zeichen in den Ecken der Tasten (%s)</string>
@@ -45,11 +49,13 @@
<string name="pref_category_behavior">Verhalten</string>
<string name="pref_autocapitalisation_title">Automatische Großschreibung</string>
<string name="pref_autocapitalisation_summary">Umschalttaste am Satzanfang aktivieren</string>
<string name="pref_switch_input_immediate_title">Sofort zur nächsten Tastatur wechseln</string>
<string name="pref_switch_input_immediate_summary">Verhalten der Tastaturumschalttaste</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">Benutzerdefinierte Vibration</string>
<string name="pref_vibrate_duration_title">Vibrationsstärke</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -72,7 +78,11 @@
<string name="pref_theme_e_monet">Monet (System)</string>
<string name="pref_theme_e_monetlight">Monet (Hell)</string>
<string name="pref_theme_e_monetdark">Monet (Dunkel)</string>
<!-- <string name="pref_theme_e_rosepine">Rosé Pine</string> -->
<string name="pref_theme_e_rosepine">Rosé Pine</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">Sehr kurz</string>
<string name="pref_swipe_dist_e_short">Kurz</string>
<string name="pref_swipe_dist_e_default">Normal</string>
@@ -88,6 +98,10 @@
<string name="pref_circle_sensitivity_e_medium">Mittel</string>
<string name="pref_circle_sensitivity_e_low">Niedrig</string>
<string name="pref_circle_sensitivity_e_disabled">Aus</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">Nächstes</string>
<string name="key_action_done">Fertig</string>
<string name="key_action_go">Los</string>
@@ -96,6 +110,7 @@
<string name="key_action_send">Senden</string>
<string name="launcher_button_imesettings">Tastatur aktivieren</string>
<string name="launcher_button_imepicker">Tastatur auswählen</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">Diese App ist eine virtuelle Tastatur. Tippe auf den Button unten und aktivere Unexpected Keyboard in den Systemeinstellungen.</string>
<string name="launcher_sourcecode">Dies ist eine freie und quelloffene App. Du findest den Quellcode auf Github. Dort können auch Bugs gemeldet werden.</string>
<string name="launcher_tryhere">Nach Aktivierung kannst du die Tastatur hier ausprobieren:</string>
@@ -121,18 +136,31 @@
<string name="key_descr_home">Pos1</string>
<string name="key_descr_end">Ende</string>
<string name="key_descr_clipboard">Clipboard-Manager</string>
<!-- <string name="key_descr_combining">Combining diacritic</string> -->
<!-- <string name="key_descr_dead_key">Dead key</string> -->
<!-- <string name="key_descr_zwj">Zero width joiner</string> -->
<!-- <string name="key_descr_zwnj">Zero width non-joiner</string> -->
<!-- <string name="key_descr_nbsp">Non-breaking space</string> -->
<!-- <string name="key_descr_nnbsp">Narrow non-breaking space</string> -->
<string name="key_descr_combining">Kombinierbar Diakritikum</string>
<string name="key_descr_dead_key">Tot-Taste</string>
<string name="key_descr_zwj">Breitenloser Verbinder</string>
<string name="key_descr_zwnj">Bindehemmer</string>
<string name="key_descr_nbsp">Geschütztes Leerzeichen</string>
<string name="key_descr_nnbsp">Schmales geschütztes Leerzeichen</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<string name="clipboard_history_heading">Zuletzt kopierter Text</string>
<string name="clipboard_pin_heading">Angeheftet</string>
<!-- <string name="clipboard_remove_confirm">Remove this clipboard item?</string> -->
<string name="clipboard_remove_confirm">Aus der Zwischenablage entfernen?</string>
<string name="clipboard_remove_confirmed">Ja</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+91 -19
View File
@@ -3,7 +3,7 @@
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (debug)</string>
<string name="short_description">Un teclado virtual ligero para Android consciente de su privacidad.</string>
<string name="store_description">La característica principal es que hay acceso a más caractéres deslizando hacia las esquinas de las teclas.\n\nEsta aplicación fue originalmente diseñada para programadores que usaran Termux.\nAhora es perfecta para uso cotidiano.\n\nLa misma no contiene ningún anuncio/publicidad, no realiza peticiones de red y es de Fuente Abierta.</string>
<string name="store_description">La característica principal es que hay acceso a más caractéres deslizando hacia las esquinas de las teclas.\n\nEsta aplicación fue originalmente diseñada para programadores que usaran Termux.\nAhora es perfecta para uso cotidiano.\n\nLa misma no contiene ningún anuncio/publicidad y es de Fuente Abierta.</string>
<string name="pref_portrait">En modo vertical</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">En modo horizontal</string>
@@ -27,13 +27,17 @@
<string name="pref_show_numpad_landscape">Solo en modo horizontal</string>
<string name="pref_show_numpad_always">Siempre</string>
<string name="pref_number_row_title">Mostrar fila de números</string>
<string name="pref_number_row_summary">Agrega la fila numérica a la parte superior del teclado si el teclado numérico está oculto</string>
<string name="pref_numpad_layout">Diseño del teclado numérico</string>
<string name="pref_numpad_layout_e_high_first">Dígitos descendientes</string>
<string name="pref_numpad_layout_e_low_first">Dígitos ascendientes</string>
<string name="pref_numpad_layout_e_high_first">Dígitos descendentes</string>
<string name="pref_numpad_layout_e_low_first">Dígitos ascendentes</string>
<string name="pref_extra_keys_title">Agregar teclas</string>
<string name="pref_extra_keys_custom">Agregar teclas personalizadas</string>
<string name="pref_extra_keys_internal">Selecciona teclas para agregar al teclado</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">Escritura</string>
<string name="pref_swipe_dist_title">Distancia de deslizamiento</string>
<string name="pref_swipe_dist_summary">Distancia de caracteres en las esquinas de las teclas (%s)</string>
@@ -45,11 +49,13 @@
<string name="pref_category_behavior">Comportamiento</string>
<string name="pref_autocapitalisation_title">Mayúsculas automáticas</string>
<string name="pref_autocapitalisation_summary">Presionar Mayús al principio de una oración</string>
<string name="pref_switch_input_immediate_title">Cambiar al último teclado usado</string>
<string name="pref_switch_input_immediate_summary">Comportamiento de la tecla para cambiar diseño</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">Vibración personalizada</string>
<string name="pref_vibrate_duration_title">Intensidad de vibración</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -66,13 +72,17 @@
<string name="pref_theme_e_black">Negro</string>
<string name="pref_theme_e_altblack">Negro alternativo</string>
<string name="pref_theme_e_white">Blanco</string>
<string name="pref_theme_e_epaper">ePaper</string>
<string name="pref_theme_e_epaper">Tinta electrónica</string>
<string name="pref_theme_e_desert">Desierto</string>
<string name="pref_theme_e_jungle">Selva</string>
<string name="pref_theme_e_monet">Monet (de sistema)</string>
<string name="pref_theme_e_monetlight">Monet (claro)</string>
<string name="pref_theme_e_monetdark">Monet (oscuro)</string>
<!-- <string name="pref_theme_e_rosepine">Rosé Pine</string> -->
<string name="pref_theme_e_rosepine">Pino rosado</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">Muy corta</string>
<string name="pref_swipe_dist_e_short">Corta</string>
<string name="pref_swipe_dist_e_default">Normal</string>
@@ -82,12 +92,16 @@
<string name="pref_key_vertical_space">Espacio vertical entre las teclas</string>
<string name="pref_border_config_title">Bordes personalizados</string>
<string name="pref_border_width_title">Ancho de bordes</string>
<string name="pref_corners_radius_title">Radio de rincones</string>
<string name="pref_corners_radius_title">Radio de las esquinas</string>
<string name="pref_circle_sensitivity_title">Sensibilidad a gestos circulares</string>
<string name="pref_circle_sensitivity_e_high">Alta</string>
<string name="pref_circle_sensitivity_e_medium">Mediana</string>
<string name="pref_circle_sensitivity_e_low">Baja</string>
<string name="pref_circle_sensitivity_e_disabled">Apagada</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">Siguiente</string>
<string name="key_action_done">Hecho</string>
<string name="key_action_go">Ir</string>
@@ -96,10 +110,11 @@
<string name="key_action_send">Enviar</string>
<string name="launcher_button_imesettings">Habilitar teclado</string>
<string name="launcher_button_imepicker">Seleccionar método de entrada</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">Esta aplicación es un teclado virtual. Presiona el botón de abajo para ir a Ajustes y habilitar Unexpected Keyboard.</string>
<string name="launcher_sourcecode">Esta es una aplicación gratuita, libre y de código abierto. Puedes encontrar el código fuente o reportar errores en GitHub.</string>
<string name="launcher_tryhere">Tras habilitarlo, puedes probar el teclado en este campo:</string>
<string name="launcher_tryhere_hint">Intentar aquí</string>
<string name="launcher_tryhere_hint">Probar aquí</string>
<string name="key_descr_capslock">Bloq Mayús</string>
<string name="key_descr_compose">Componer</string>
<string name="key_descr_switch_greekmath">Símb. griegos y matemáticos</string>
@@ -120,19 +135,76 @@
<string name="key_descr_page_down">Re Pág</string>
<string name="key_descr_home">Inicio</string>
<string name="key_descr_end">Fin</string>
<string name="key_descr_clipboard">Arreglar portapapeles</string>
<!-- <string name="key_descr_combining">Combining diacritic</string> -->
<!-- <string name="key_descr_dead_key">Dead key</string> -->
<!-- <string name="key_descr_zwj">Zero width joiner</string> -->
<!-- <string name="key_descr_zwnj">Zero width non-joiner</string> -->
<!-- <string name="key_descr_nbsp">Non-breaking space</string> -->
<!-- <string name="key_descr_nnbsp">Narrow non-breaking space</string> -->
<string name="key_descr_clipboard">Administrador del portapapeles</string>
<string name="key_descr_combining">Diacrítico de combinación</string>
<string name="key_descr_dead_key">Tecla inerte</string>
<string name="key_descr_zwj">Unión de ancho cero</string>
<string name="key_descr_zwnj">No unión de ancho cero</string>
<string name="key_descr_nbsp">Espacio duro</string>
<string name="key_descr_nnbsp">Espacio duro fino</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<string name="clipboard_history_heading">Textos recién copiados</string>
<string name="clipboard_pin_heading">Pegado</string>
<string name="clipboard_pin_heading">Fijado</string>
<string name="clipboard_remove_confirm">¿Sacar este portapapeles?</string>
<string name="clipboard_remove_confirmed">Sí</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
<string name="pref_show_number_row_no_number_row">Sin fila de números</string>
<string name="pref_show_number_row_no_symbols">Fila de números sin símbolos</string>
<string name="pref_show_number_row_symbols">Fila de números con símbolos</string>
<string name="pref_category_suggestions">Sugerencias</string>
<string name="pref_suggestions_title">Sugerencias</string>
<string name="pref_suggestions_summary">Habilitar compleción de palablas y revisión de escritura</string>
<string name="pref_space_bar_auto_complete_title">Autocompletar con barra espaciadora</string>
<string name="pref_space_bar_auto_complete_summary">Ingresar la mejor sugerencia al presionar espacio</string>
<string name="pref_change_method_key_replacement_title">Cambio de métodos de entrada</string>
<string name="pref_change_method_key_replacement_e_picker">Mostrar selector de método de entrada (presión larga)</string>
<string name="pref_change_method_key_replacement_e_prev">Cambiar al último usado</string>
<string name="pref_change_method_key_replacement_e_next">Cambiar al siguiente en la lista</string>
<string name="pref_number_entry_title">Diseño al escribir números, fechas y números de teléfono</string>
<string name="pref_number_entry_layout_pin">Entrada de pin</string>
<string name="pref_number_entry_layout_number">Panel numérico</string>
<string name="pref_number_entry_layout_normal">Usar diseño principal</string>
<string name="pref_theme_e_everforestlight">Bosque eterno claro</string>
<string name="pref_theme_e_cobalt">Cobalto</string>
<string name="pref_theme_e_pine">Pino</string>
<string name="pref_theme_e_epaperblack">Tinta electrónica negro</string>
<string name="pref_slider_sensitivity_title">Sensibilidad del deslizamiento de la barra espaciadora</string>
<string name="pref_slider_sensitivity_slow">Lento</string>
<string name="pref_slider_sensitivity_medium">Moderado</string>
<string name="pref_slider_sensitivity_fast">Rápido</string>
<string name="launcher_button_dictionaries">Instalar diccionarios</string>
<string name="key_descr_delete_word">Borrar una palabra</string>
<string name="key_descr_forward_delete_word">Borrar una palabra a la derecha</string>
<string name="key_descr_gesture">Gesto</string>
<string name="toast_no_voice_input">No hay ninguna aplicación de escritura por voz instalada</string>
<string name="pref_category_clipboard">Portapapeles</string>
<string name="pref_clipboard_history_duration">Duración de la memoria del portapapeles</string>
<string name="pref_clipboard_history_duration_1">A lo sumo 1 minuto</string>
<string name="pref_clipboard_history_duration_5">A lo sumo 5 minutos</string>
<string name="pref_clipboard_history_duration_30">A lo sumo 30 minutos</string>
<string name="pref_clipboard_history_duration_stop">Hasta que la aplicación se detenga</string>
<string name="pref_dialog_edit_text">Definición personalizada</string>
<string name="dictionaries_from_internet">Descargar un diccionario de internet</string>
<string name="dictionaries_download_success">Diccionario instalado</string>
<string name="dictionaries_download_failed">Falló la descarga</string>
<string name="dictionaries_activity_not_enabled">Primero tienes que habilitar al teclado para descargar diccionarios.</string>
<string name="candidates_status_no_dict">No hay diccionarios instalados</string>
<string name="candidates_status_install">Instalar</string>
<string name="pref_portrait_unfolded">En modo vertical desplegado</string>
<string name="pref_landscape_unfolded">En modo horizontal desplegado</string>
</resources>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="pref_show_numpad_title">Näita numbriklahvistikku</string>
<string name="pref_show_numpad_never">Mitte kunagi</string>
<string name="pref_show_numpad_landscape">Vaid rõhtvaates</string>
<string name="pref_show_numpad_always">Alati</string>
<string name="pref_number_row_title">Näita numbrite rida</string>
<string name="pref_numpad_layout">Numbriklahvistiku paigutus</string>
</resources>
+66 -38
View File
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_release">صفحه کلید غیرمنتظره</string>
<string name="app_name_debug">صفحه کلید غیرمنتظره</string>
<!-- <string name="short_description">Lightweight and privacy-conscious virtual keyboard for Android.</string> -->
<!-- <string name="store_description">The main feature is that you can type more characters by swiping the keys towards the corners.\n\nThis application was originally designed for programmers using Termux.\nNow perfect for everyday use.\n\nThis application contains no ads, doesn\'t make any network requests and is Open Source.</string> -->
<string name="app_name_release">صفحه‌کلید غیرمنتظره</string>
<string name="app_name_debug">صفحه‌کلید غیرمنتظره (دیباگ كردن)</string>
<string name="short_description">صفحه‌کلید مجازی سبک و با حفظ حریم خصوصی برای اندروید.</string>
<string name="store_description">ویژگی اصلی این است که می‌توانید با کشیدن کلیدها به سمت گوشه‌ها، نویسه های (کاراکترهای) بیشتری تایپ کنید.\n\nاین برنامه در ابتدا برای برنامه‌نویسانی که از Termux استفاده می‌کنند طراحی شده بود.\n\nاکنون برای استفاده روزمره عالی است.</string>
<string name="pref_portrait">در حالت عمودی</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">در حالت افقی</string>
@@ -15,9 +15,9 @@
<string name="pref_key_activated_opacity">تنظیم کدر بودن کلید فشرده شده</string>
<string name="pref_layout_e_system">تنظیمات سامانه</string>
<string name="pref_layout_e_custom">طرح صفارشی</string>
<!-- <string name="pref_layouts_add">Add an alternate layout</string> -->
<!-- <string name="pref_layouts_item">Layout %1$d: %2$s</string> -->
<!-- <string name="pref_layouts_remove_custom">Remove layout</string> -->
<string name="pref_layouts_add">افزودن چیدمان جایگزین</string>
<string name="pref_layouts_item">چیدمان %1$d: %2$s</string>
<string name="pref_layouts_remove_custom">حذف چیدمان</string>
<string name="pref_custom_layout_title">طرح شخصی</string>
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
@@ -27,29 +27,35 @@
<string name="pref_show_numpad_landscape">فقط در حالت افقی</string>
<string name="pref_show_numpad_always">همیشه</string>
<string name="pref_number_row_title">نمایش ردیف اعداد</string>
<string name="pref_number_row_summary">افزودن ردیف اعداد زمانیکه پد شماره‌ها پنهان است</string>
<string name="pref_numpad_layout">طرح پد شماره‌ها</string>
<string name="pref_numpad_layout_e_high_first">ابتدا اعداد بزرگ</string>
<string name="pref_numpad_layout_e_low_first">ابتدا اعداد کوچک</string>
<string name="pref_extra_keys_title">افزودن کلیدها به صفحه کلید</string>
<!-- <string name="pref_extra_keys_custom">Add custom keys</string> -->
<!-- <string name="pref_extra_keys_internal">Select keys to add to the keyboard</string> -->
<string name="pref_extra_keys_custom">افزودن کلیدهای سفارشی</string>
<string name="pref_extra_keys_internal">کلیدهای مورد نظر برای افزودن به صفحه کلید را انتخاب کنید</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">درحال نوشتن</string>
<string name="pref_swipe_dist_title">فاصله کشیدن</string>
<string name="pref_swipe_dist_summary">فاصله حروف از گوشه‌های کلیدها )(%s)</string>
<!-- <string name="pref_long_timeout_title">Long press timeout</string> -->
<string name="pref_long_timeout_title">مدت زمان نگه داشتن کلید</string>
<string name="pref_long_interval_title">فاصله تکرار کلید</string>
<!-- <string name="pref_keyrepeat_enabled">Key repeat on long press</string> -->
<string name="pref_keyrepeat_enabled">تکرار کلید هنگام نگه داشتن به مدت طولانی</string>
<string name="pref_lock_double_tap_title">دوبار ضربه روی دگرساز برای فعال شدن کپس لاک</string>
<string name="pref_lock_double_tap_summary">شما میتوانید قفل کنید هر میانبری را با نگه داشتن آن</string>
<string name="pref_category_behavior">ٰرفتار</string>
<string name="pref_category_behavior">رفتار</string>
<string name="pref_autocapitalisation_title">بزرگسازی خودکار</string>
<string name="pref_autocapitalisation_summary">در شروع جملات دگرساز را فشار دهید</string>
<string name="pref_switch_input_immediate_title">انتقال به آخرین صفحه کلید استفاده شده</string>
<string name="pref_switch_input_immediate_summary">رفتار کلید تغییردهنده صفحه کلید</string>
<!-- <string name="pref_vibrate_custom">Custom vibration</string> -->
<!-- <string name="pref_vibrate_duration_title">Vibration intensity</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">لرزش سفارشی</string>
<string name="pref_vibrate_duration_title">شدت لرزش</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -67,12 +73,16 @@
<string name="pref_theme_e_altblack">سیاه مشابه</string>
<string name="pref_theme_e_white">سفید</string>
<string name="pref_theme_e_epaper">ای-پیپر</string>
<!-- <string name="pref_theme_e_desert">Desert</string> -->
<!-- <string name="pref_theme_e_jungle">Jungle</string> -->
<!-- <string name="pref_theme_e_monet">Monet (System)</string> -->
<!-- <string name="pref_theme_e_monetlight">Monet (Light)</string> -->
<!-- <string name="pref_theme_e_monetdark">Monet (Dark)</string> -->
<!-- <string name="pref_theme_e_rosepine">Rosé Pine</string> -->
<string name="pref_theme_e_desert">کویر</string>
<string name="pref_theme_e_jungle">جنگل</string>
<string name="pref_theme_e_monet">مونه (سیستم)</string>
<string name="pref_theme_e_monetlight">مونه (روشن)</string>
<string name="pref_theme_e_monetdark">مونه (تاریک)</string>
<string name="pref_theme_e_rosepine">رُزه کاج</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">بسیار کوتاه</string>
<string name="pref_swipe_dist_e_short">کوتاه</string>
<string name="pref_swipe_dist_e_default">عادی</string>
@@ -80,14 +90,18 @@
<string name="pref_swipe_dist_e_very_far">بسیار دور</string>
<string name="pref_key_horizontal_space">فاصله افقی بین کلیدها</string>
<string name="pref_key_vertical_space">فاصله عمودی بین کلیدها</string>
<!-- <string name="pref_border_config_title">Customize borders</string> -->
<!-- <string name="pref_border_width_title">Border Width</string> -->
<!-- <string name="pref_corners_radius_title">Corner radius</string> -->
<!-- <string name="pref_circle_sensitivity_title">Circle gesture sensitivity</string> -->
<!-- <string name="pref_circle_sensitivity_e_high">High</string> -->
<!-- <string name="pref_circle_sensitivity_e_medium">Medium</string> -->
<!-- <string name="pref_circle_sensitivity_e_low">Low</string> -->
<!-- <string name="pref_circle_sensitivity_e_disabled">Disabled</string> -->
<string name="pref_border_config_title">سفارشی سازی حاشیه ها</string>
<string name="pref_border_width_title">ضخامت حاشیه</string>
<string name="pref_corners_radius_title">شعاع گوشه</string>
<string name="pref_circle_sensitivity_title">حساسیت به ژست دایره‌ای</string>
<string name="pref_circle_sensitivity_e_high">بزرگ</string>
<string name="pref_circle_sensitivity_e_medium">متوسط</string>
<string name="pref_circle_sensitivity_e_low">کوچک</string>
<string name="pref_circle_sensitivity_e_disabled">غیرفعال‌شده</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">بعدی</string>
<string name="key_action_done">اتمام</string>
<string name="key_action_go">برو</string>
@@ -95,15 +109,16 @@
<string name="key_action_search">جستجو</string>
<string name="key_action_send">ارسال</string>
<string name="launcher_button_imesettings">فعال کردن صفحه کلید</string>
<!-- <string name="launcher_button_imepicker">Select keyboard</string> -->
<string name="launcher_button_imepicker">برگزیدن صفحه‌کلید</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">این برنامه یک صفحه کلید مجازی است. با کلیک روی گزینه زیر به تنظیمات سامانه بروید و صفحه کلید غیرمنتظره را فعال کنید.</string>
<string name="launcher_sourcecode">این یک برنامه متن باز و آزاد است. شما می‌توانید کد منبع را در گیتهاب پیدا کرده و نیز باگ‌ها را گزارش کنید.</string>
<string name="launcher_tryhere">بعد از فعالسازی، صفحه کلید را اینجا امتحان کنید:</string>
<!-- <string name="launcher_tryhere_hint">Try here</string> -->
<!-- <string name="key_descr_capslock">Caps lock</string> -->
<!-- <string name="key_descr_compose">Compose</string> -->
<!-- <string name="key_descr_switch_greekmath">Greek &amp; math symbols</string> -->
<!-- <string name="key_descr_change_method">Switch keyboard</string> -->
<string name="launcher_tryhere_hint">آزمودن اینجا</string>
<string name="key_descr_capslock">با حالت حروف بزرگ</string>
<string name="key_descr_compose">نوشتن</string>
<string name="key_descr_switch_greekmath">نمادهای یونانی و ریاضی</string>
<string name="key_descr_change_method">تغییر صفحه‌کلید</string>
<!-- <string name="key_descr_voice_typing">Voice typing</string> -->
<!-- <string name="key_descr_copy">Copy</string> -->
<!-- <string name="key_descr_paste">Paste</string> -->
@@ -135,4 +150,17 @@
<!-- <string name="clipboard_remove_confirm">Remove this clipboard item?</string> -->
<!-- <string name="clipboard_remove_confirmed">Yes</string> -->
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+166
View File
@@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- <string name="app_name_release">Unexpected Keyboard</string> -->
<!-- <string name="app_name_debug">Unexpected Keyboard (Debug)</string> -->
<!-- <string name="short_description">Lightweight and privacy-conscious virtual keyboard for Android.</string> -->
<!-- <string name="store_description">The main feature is that you can type more characters by swiping the keys towards the corners.\n\nThis application was originally designed for programmers using Termux.\nNow perfect for everyday use.\n\nThis application contains no ads and is Open Source.</string> -->
<!-- <string name="pref_portrait">In portrait mode</string> -->
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<!-- <string name="pref_landscape">In landscape mode</string> -->
<!-- <string name="pref_landscape_unfolded">In landscape mode unfolded</string> -->
<!-- <string name="pref_category_layout">Layout</string> -->
<!-- <string name="pref_label_brightness">Adjust label brightness</string> -->
<!-- <string name="pref_keyboard_opacity">Adjust keyboard background opacity</string> -->
<!-- <string name="pref_key_opacity">Adjust key opacity</string> -->
<!-- <string name="pref_key_activated_opacity">Adjust pressed key opacity</string> -->
<!-- <string name="pref_layout_e_system">System settings</string> -->
<!-- <string name="pref_layout_e_custom">Custom layout</string> -->
<!-- <string name="pref_layouts_add">Add an alternate layout</string> -->
<!-- <string name="pref_layouts_item">Layout %1$d: %2$s</string> -->
<!-- <string name="pref_layouts_remove_custom">Remove layout</string> -->
<!-- <string name="pref_custom_layout_title">Custom layout</string> -->
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
<!-- <string name="pref_show_number_row_symbols">Number row with symbols</string> -->
<!-- <string name="pref_show_numpad_title">Show NumPad</string> -->
<!-- <string name="pref_show_numpad_never">Never</string> -->
<!-- <string name="pref_show_numpad_landscape">Only in landscape mode</string> -->
<!-- <string name="pref_show_numpad_always">Always</string> -->
<!-- <string name="pref_number_row_title">Show number row</string> -->
<!-- <string name="pref_numpad_layout">NumPad layout</string> -->
<!-- <string name="pref_numpad_layout_e_high_first">High digits first</string> -->
<!-- <string name="pref_numpad_layout_e_low_first">Low digits first</string> -->
<!-- <string name="pref_extra_keys_title">Add keys to the keyboard</string> -->
<!-- <string name="pref_extra_keys_custom">Add custom keys</string> -->
<!-- <string name="pref_extra_keys_internal">Select keys to add to the keyboard</string> -->
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<!-- <string name="pref_category_typing">Typing</string> -->
<!-- <string name="pref_swipe_dist_title">Swiping distance</string> -->
<!-- <string name="pref_swipe_dist_summary">Distance of characters in the corners of the keys (%s)</string> -->
<!-- <string name="pref_long_timeout_title">Long press timeout</string> -->
<!-- <string name="pref_long_interval_title">Key repeat interval</string> -->
<!-- <string name="pref_keyrepeat_enabled">Key repeat on long press</string> -->
<!-- <string name="pref_lock_double_tap_title">Double tap on shift for caps lock</string> -->
<!-- <string name="pref_lock_double_tap_summary">You can lock any modifier by holding it</string> -->
<!-- <string name="pref_category_behavior">Behavior</string> -->
<!-- <string name="pref_autocapitalisation_title">Automatic capitalisation</string> -->
<!-- <string name="pref_autocapitalisation_summary">Press Shift at the beginning of a sentence</string> -->
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<!-- <string name="pref_vibrate_custom">Custom vibration</string> -->
<!-- <string name="pref_vibrate_duration_title">Vibration intensity</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
<!-- <string name="pref_category_style">Style</string> -->
<!-- <string name="pref_margin_bottom_title">Margin bottom</string> -->
<!-- <string name="pref_keyboard_height_title">Keyboard height</string> -->
<!-- <string name="pref_horizontal_margin_title">Horizontal margin</string> -->
<!-- <string name="pref_character_size_title">Label size</string> -->
<!-- <string name="pref_character_size_summary">Size of characters displayed on the keyboard (%.2fx)</string> -->
<!-- <string name="pref_theme">Theme</string> -->
<!-- <string name="pref_theme_e_system">System settings</string> -->
<!-- <string name="pref_theme_e_dark">Dark</string> -->
<!-- <string name="pref_theme_e_light">Light</string> -->
<!-- <string name="pref_theme_e_black">Black</string> -->
<!-- <string name="pref_theme_e_altblack">Alternative Black</string> -->
<!-- <string name="pref_theme_e_white">White</string> -->
<!-- <string name="pref_theme_e_epaper">ePaper</string> -->
<!-- <string name="pref_theme_e_desert">Desert</string> -->
<!-- <string name="pref_theme_e_jungle">Jungle</string> -->
<!-- <string name="pref_theme_e_monet">Monet (System)</string> -->
<!-- <string name="pref_theme_e_monetlight">Monet (Light)</string> -->
<!-- <string name="pref_theme_e_monetdark">Monet (Dark)</string> -->
<!-- <string name="pref_theme_e_rosepine">Rosé Pine</string> -->
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<!-- <string name="pref_swipe_dist_e_very_short">Very short</string> -->
<!-- <string name="pref_swipe_dist_e_short">Short</string> -->
<!-- <string name="pref_swipe_dist_e_default">Normal</string> -->
<!-- <string name="pref_swipe_dist_e_far">Far</string> -->
<!-- <string name="pref_swipe_dist_e_very_far">Very far</string> -->
<!-- <string name="pref_key_horizontal_space">Horizontal spacing between the keys</string> -->
<!-- <string name="pref_key_vertical_space">Vertical spacing between the keys</string> -->
<!-- <string name="pref_border_config_title">Customize borders</string> -->
<!-- <string name="pref_border_width_title">Border Width</string> -->
<!-- <string name="pref_corners_radius_title">Corner radius</string> -->
<!-- <string name="pref_circle_sensitivity_title">Circle gesture sensitivity</string> -->
<!-- <string name="pref_circle_sensitivity_e_high">High</string> -->
<!-- <string name="pref_circle_sensitivity_e_medium">Medium</string> -->
<!-- <string name="pref_circle_sensitivity_e_low">Low</string> -->
<!-- <string name="pref_circle_sensitivity_e_disabled">Disabled</string> -->
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<!-- <string name="key_action_next">Next</string> -->
<!-- <string name="key_action_done">Done</string> -->
<!-- <string name="key_action_go">Go</string> -->
<!-- <string name="key_action_prev">Prev</string> -->
<!-- <string name="key_action_search">Search</string> -->
<!-- <string name="key_action_send">Send</string> -->
<!-- <string name="launcher_button_imesettings">Enable keyboard</string> -->
<!-- <string name="launcher_button_imepicker">Select keyboard</string> -->
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<!-- <string name="launcher_description">This application is a virtual keyboard. Go to the system settings by clicking on the button below and enable Unexpected-Keyboard.</string> -->
<!-- <string name="launcher_sourcecode">This is a free and open source application. You can find the source code or report bugs on GitHub.</string> -->
<!-- <string name="launcher_tryhere">After enabling, you can try the keyboard here:</string> -->
<!-- <string name="launcher_tryhere_hint">Try here</string> -->
<!-- <string name="key_descr_capslock">Caps lock</string> -->
<!-- <string name="key_descr_compose">Compose</string> -->
<!-- <string name="key_descr_switch_greekmath">Greek &amp; math symbols</string> -->
<!-- <string name="key_descr_change_method">Switch keyboard</string> -->
<!-- <string name="key_descr_voice_typing">Voice typing</string> -->
<!-- <string name="key_descr_copy">Copy</string> -->
<!-- <string name="key_descr_paste">Paste</string> -->
<!-- <string name="key_descr_cut">Cut</string> -->
<!-- <string name="key_descr_selectAll">Select all</string> -->
<!-- <string name="key_descr_pasteAsPlainText">Paste as plain text</string> -->
<!-- <string name="key_descr_undo">Undo</string> -->
<!-- <string name="key_descr_redo">Redo</string> -->
<!-- <string name="key_descr_ª">Ordinal Indicator</string> -->
<!-- <string name="key_descr_º">Ordinal Indicator</string> -->
<!-- <string name="key_descr_superscript">Superscript</string> -->
<!-- <string name="key_descr_subscript">Subscript</string> -->
<!-- <string name="key_descr_page_up">Page Up</string> -->
<!-- <string name="key_descr_page_down">Page Down</string> -->
<!-- <string name="key_descr_home">Home</string> -->
<!-- <string name="key_descr_end">End</string> -->
<!-- <string name="key_descr_clipboard">Clipboard manager</string> -->
<!-- <string name="key_descr_combining">Combining diacritic</string> -->
<!-- <string name="key_descr_dead_key">Dead key</string> -->
<!-- <string name="key_descr_zwj">Zero width joiner</string> -->
<!-- <string name="key_descr_zwnj">Zero width non-joiner</string> -->
<!-- <string name="key_descr_nbsp">Non-breaking space</string> -->
<!-- <string name="key_descr_nnbsp">Narrow non-breaking space</string> -->
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<!-- <string name="clipboard_history_heading">Recently copied text</string> -->
<!-- <string name="clipboard_pin_heading">Pinned</string> -->
<!-- <string name="clipboard_remove_confirm">Remove this clipboard item?</string> -->
<!-- <string name="clipboard_remove_confirmed">Yes</string> -->
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+37 -9
View File
@@ -3,7 +3,7 @@
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (Debug)</string>
<string name="short_description">Magaan at privacy-conscious na virtual keyboard sa Android.</string>
<string name="store_description">Ang pangunahing feature ay maaari kang mag-type ng mas marami pang karakter sa pag-swipe sa gilid ng mga key.\n\nNoong simula, ginawa itong application para sa mga programmer sa na nagte-Termux.\nNgayo\'y perpekto na sa pang-araw-araw.\n\nWalang ads, hindi nagne-network request at Open Source ang application na ito.</string>
<string name="store_description">Ang pangunahing feature ay maaari kang mag-type ng mas marami pang karakter sa pag-swipe sa gilid ng mga key.\n\nNoong simula, ginawa itong application para sa mga programmer sa na nagte-Termux.\nNgayo\'y perpekto na sa pang-araw-araw.\n\nWalang ads at Open Source ang application na ito.</string>
<string name="pref_portrait">Nakapatayo</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">Nakapahiga</string>
@@ -27,13 +27,17 @@
<string name="pref_show_numpad_landscape">Kapag nakapahiga lamang</string>
<string name="pref_show_numpad_always">Palagi</string>
<string name="pref_number_row_title">Ipakita ang number row</string>
<string name="pref_number_row_summary">Maglagay ng number row sa itaas ng keyboard kapag nakatago ang numpad</string>
<string name="pref_numpad_layout">Layout ng NumPad</string>
<string name="pref_numpad_layout_e_high_first">Pinakamataas muna</string>
<string name="pref_numpad_layout_e_low_first">Pinakamababa muna</string>
<string name="pref_extra_keys_title">Maglagay ng key sa keyboard</string>
<string name="pref_extra_keys_custom">Maglagay ng custom na key</string>
<string name="pref_extra_keys_internal">Pumili ng key na ilalagay sa keyboard</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">Pag-type</string>
<string name="pref_swipe_dist_title">Layo ng swipe</string>
<string name="pref_swipe_dist_summary">Layo ng karakter sa gilid ng mga key (%s)</string>
@@ -45,11 +49,13 @@
<string name="pref_category_behavior">Ugali</string>
<string name="pref_autocapitalisation_title">Automatikong pagkakapitalisa</string>
<string name="pref_autocapitalisation_summary">Mag-Shift sa simula ng pangungusap</string>
<string name="pref_switch_input_immediate_title">Lumipat sa huling ginamit na keyboard</string>
<string name="pref_switch_input_immediate_summary">Ugali ng key sa pagpapalit ng keyboard</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">Custom na vibration</string>
<string name="pref_vibrate_duration_title">Lakas ng vibration</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -73,6 +79,10 @@
<string name="pref_theme_e_monetlight">Monet (maliwanag)</string>
<string name="pref_theme_e_monetdark">Monet (madilim)</string>
<string name="pref_theme_e_rosepine">Rosé Pine</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">Maikling-maikli</string>
<string name="pref_swipe_dist_e_short">Maikli</string>
<string name="pref_swipe_dist_e_default">Normal</string>
@@ -88,16 +98,21 @@
<string name="pref_circle_sensitivity_e_medium">Katamtaman</string>
<string name="pref_circle_sensitivity_e_low">Mahina</string>
<string name="pref_circle_sensitivity_e_disabled">Nakapatay</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">Sunod</string>
<string name="key_action_done">OK</string>
<string name="key_action_done">Tapos</string>
<string name="key_action_go">Sige</string>
<string name="key_action_prev">Balik</string>
<string name="key_action_search">Maghanap</string>
<string name="key_action_search">Hanapin</string>
<string name="key_action_send">Send</string>
<string name="launcher_button_imesettings">Paganahin ang keyboard</string>
<string name="launcher_button_imepicker">Pumili ng keyboard</string>
<string name="launcher_description">Itong application ay isang virtual keyboard. Pindutin ang buton sa ilalim nang pumunta sa system settings at buksan ang Unexpected-Keyboard.</string>
<string name="launcher_sourcecode">Libre at open source ito na application. Maaaring makita ang source code o makapagreport ng bugs sa Github.</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">Itong application ay isang virtual keyboard. Pindutin ang button sa ilalim nang pumunta sa system settings at buksan ang Unexpected-Keyboard.</string>
<string name="launcher_sourcecode">Libre at open source ito na application. Maaaring makita ang source code o makapag-report ng bug sa Github.</string>
<string name="launcher_tryhere">Pagkatapos buksan, masusubukan mo ang keyboard dito:</string>
<string name="launcher_tryhere_hint">Subukan dito</string>
<string name="key_descr_capslock">Caps lock</string>
@@ -135,4 +150,17 @@
<string name="clipboard_remove_confirm">Tanggalin ito sa clipboard?</string>
<string name="clipboard_remove_confirmed">Oo</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+73 -23
View File
@@ -3,37 +3,41 @@
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (debug)</string>
<string name="short_description">Clavier virtuel léger et respectueux de la vie privée pour Android.</string>
<string name="store_description">La fonctionnalité principale est l\'accès rapide à plus de caractères en balayant les touches vers les coins.\n\nCette application a été conçue à l\'origine pour les programmeurs utilisant Termux.\nElle est maintenant parfaite pour une utilisation quotidienne.\n\nCette application ne contient pas de publicité, n\'accède pas au réseau et est Open Source.</string>
<string name="store_description">La fonctionnalité principale est l\'accès rapide à plus de caractères en balayant les touches vers les coins.\n\nCette application a été conçue à l\'origine pour les programmeurs utilisant Termux.\nElle est maintenant parfaite pour une utilisation quotidienne.\n\nCette application ne contient pas de publicité et est Open Source.</string>
<string name="pref_portrait">En mode portrait</string>
<string name="pref_portrait_unfolded">En mode portrait déplié</string>
<string name="pref_landscape">En mode landscape</string>
<string name="pref_landscape_unfolded">En mode landscape déplié</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">En mode paysage</string>
<!-- <string name="pref_landscape_unfolded">In landscape mode unfolded</string> -->
<string name="pref_category_layout">Disposition</string>
<string name="pref_label_brightness">Luminosité des symboles</string>
<string name="pref_keyboard_opacity">Transparence du clavier</string>
<string name="pref_key_opacity">Transparence des touches</string>
<string name="pref_key_activated_opacity">Transparence des touches pressées</string>
<string name="pref_layout_e_system">Paramètre système</string>
<string name="pref_layout_e_system">Paramètres système</string>
<string name="pref_layout_e_custom">Disposition personnalisée</string>
<string name="pref_layouts_add">Ajouter un clavier alternatif</string>
<string name="pref_layouts_item">Disposition %1$d: %2$s</string>
<string name="pref_layouts_remove_custom">Supprimer</string>
<string name="pref_custom_layout_title">Disposition personnalisée</string>
<string name="pref_show_number_row_no_number_row">Pas de rangée de chiffres</string>
<string name="pref_show_number_row_no_symbols">Rangée de chiffres sans symboles</string>
<string name="pref_show_number_row_symbols">Rangée de chiffres avec symboles</string>
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
<!-- <string name="pref_show_number_row_symbols">Number row with symbols</string> -->
<string name="pref_show_numpad_title">Afficher le pavé numérique</string>
<string name="pref_show_numpad_never">Jamais</string>
<string name="pref_show_numpad_landscape">Seulement en mode paysage</string>
<string name="pref_show_numpad_always">Toujour</string>
<string name="pref_number_row_title">Rangée de chiffres</string>
<string name="pref_number_row_summary">Ajoute une rangée de chiffres en haut du clavier quand le pavé numérique est caché</string>
<string name="pref_show_numpad_always">Toujours</string>
<string name="pref_number_row_title">Montrer la rangée de chiffres</string>
<string name="pref_numpad_layout">Disposition du pavé numérique</string>
<string name="pref_numpad_layout_e_high_first">Du plus haut au plus bas</string>
<string name="pref_numpad_layout_e_low_first">Du plus bas au plus haut</string>
<string name="pref_extra_keys_title">Ajouter des touches au clavier</string>
<string name="pref_extra_keys_custom">Ajouter des touches personnalisées</string>
<string name="pref_extra_keys_internal">Sélectionner les touches à ajouter au clavier</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">Saisie</string>
<string name="pref_swipe_dist_title">Distance de swipe</string>
<string name="pref_swipe_dist_summary">La distance des caractères dans les coins (%s)</string>
@@ -45,14 +49,16 @@
<string name="pref_category_behavior">Comportement</string>
<string name="pref_autocapitalisation_title">Majuscule automatique</string>
<string name="pref_autocapitalisation_summary">Activer Shift au début des phrases</string>
<string name="pref_switch_input_immediate_title">Changer vers le clavier utilisé en dernier</string>
<string name="pref_switch_input_immediate_summary">Comportement de la touche de changement de clavier</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">Vibrations personnalisées</string>
<string name="pref_vibrate_duration_title">Intensité des vibrations</string>
<string name="pref_number_entry_title">Disposition pour les nombres, dates et numéros de téléphone</string>
<string name="pref_number_entry_layout_pin">Clavier PIN</string>
<string name="pref_number_entry_layout_number">Écran des nombres</string>
<string name="pref_number_entry_layout_normal">Utiliser le clavier principal</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
<string name="pref_category_style">Style</string>
<string name="pref_margin_bottom_title">Marge du bas</string>
<string name="pref_keyboard_height_title">Hauteur du clavier</string>
@@ -73,6 +79,10 @@
<string name="pref_theme_e_monetlight">Monet (Clair)</string>
<string name="pref_theme_e_monetdark">Monet (Sombre)</string>
<string name="pref_theme_e_rosepine">Rosé Pine</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">Très courte</string>
<string name="pref_swipe_dist_e_short">Courte</string>
<string name="pref_swipe_dist_e_default">Normale</string>
@@ -88,6 +98,10 @@
<string name="pref_circle_sensitivity_e_medium">Moyenne</string>
<string name="pref_circle_sensitivity_e_low">Basse</string>
<string name="pref_circle_sensitivity_e_disabled">Désactivée</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">Suiv.</string>
<string name="key_action_done">Fini</string>
<string name="key_action_go">Aller</string>
@@ -95,10 +109,11 @@
<string name="key_action_search">Chercher</string>
<string name="key_action_send">Envoyer</string>
<string name="launcher_button_imesettings">Activer le clavier</string>
<string name="launcher_button_imepicker">Selectionner le clavier</string>
<string name="launcher_button_imepicker">Selectionner le keyboard</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">Cette application est un clavier virtuel. Activez-le dans les paramètres système en cliquant sur le bouton ci-dessous.</string>
<string name="launcher_sourcecode">Cette application est libre et open-source. Lisez le source code et reportez des problèmes sur Github.</string>
<string name="launcher_tryhere">Après l\'avoir activé, vous pouvez l\'essayer ici :</string>
<string name="launcher_tryhere">Après l\'avoir activé, vous pouvez l\'essayer ici :</string>
<string name="launcher_tryhere_hint">Essayer ici</string>
<string name="key_descr_capslock">Verrouillage majuscules</string>
<string name="key_descr_compose">Composition</string>
@@ -127,12 +142,47 @@
<string name="key_descr_zwnj">Antiliant sans chasse</string>
<string name="key_descr_nbsp">Espace insécable</string>
<string name="key_descr_nnbsp">Espace fine insécable</string>
<string name="key_descr_delete_word">Effacer un mot</string>
<string name="key_descr_forward_delete_word">Effacer un mot à droite</string>
<string name="key_descr_gesture">Geste</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
<string name="clipboard_history_heading">Texte récemment copié</string>
<string name="clipboard_pin_heading">Épinglé</string>
<string name="clipboard_remove_confirm">Supprimer ce presse-papiers ?</string>
<string name="clipboard_remove_confirmed">Oui</string>
<string name="toast_no_voice_input">Pas d\'application de saisie vocale</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
<string name="pref_portrait_unfolded">En mode portrait déplié</string>
<string name="pref_landscape_unfolded">En mode paysage déplié</string>
<string name="pref_show_number_row_no_number_row">Aucune rangée de chiffres</string>
<string name="pref_show_number_row_no_symbols">Rangée de chiffres sans symboles</string>
<string name="pref_show_number_row_symbols">Rangée de chiffres avec symboles</string>
<string name="pref_category_suggestions">Suggestions</string>
<string name="pref_suggestions_title">Suggestions</string>
<string name="pref_suggestions_summary">Activer la suggestion de mots correction orthographique</string>
<string name="pref_space_bar_auto_complete_title">Correction automatique avec la barre d\'espace</string>
<string name="pref_space_bar_auto_complete_summary">Entrer la meilleure suggestion en appuyant sur espace</string>
<string name="pref_change_method_key_replacement_title">Changer de méthode de saisie</string>
<string name="pref_change_method_key_replacement_e_picker">Afficher le sélecteur de méthode de saisie (appui long)</string>
<string name="pref_change_method_key_replacement_e_prev">Changer vers le dernier utilisé</string>
<string name="pref_change_method_key_replacement_e_next">Changer vers le suivant dans la liste</string>
<string name="pref_number_entry_title">Disposition pour écrire des nombres, des dates et des numéros de téléphone</string>
<string name="pref_number_entry_layout_pin">Code PIN</string>
<string name="pref_number_entry_layout_number">Panneau des chiffres</string>
<string name="pref_number_entry_layout_normal">Utiliser la disposition principale</string>
<string name="pref_theme_e_everforestlight">Everforest Light</string>
<string name="pref_theme_e_cobalt">Cobalt</string>
<string name="pref_theme_e_pine">Pine</string>
<string name="pref_theme_e_epaperblack">ePaper Noir</string>
</resources>
+33 -5
View File
@@ -3,7 +3,7 @@
<!-- <string name="app_name_release">Unexpected Keyboard</string> -->
<!-- <string name="app_name_debug">Unexpected Keyboard (Debug)</string> -->
<!-- <string name="short_description">Lightweight and privacy-conscious virtual keyboard for Android.</string> -->
<!-- <string name="store_description">The main feature is that you can type more characters by swiping the keys towards the corners.\n\nThis application was originally designed for programmers using Termux.\nNow perfect for everyday use.\n\nThis application contains no ads, doesn\'t make any network requests and is Open Source.</string> -->
<!-- <string name="store_description">The main feature is that you can type more characters by swiping the keys towards the corners.\n\nThis application was originally designed for programmers using Termux.\nNow perfect for everyday use.\n\nThis application contains no ads and is Open Source.</string> -->
<!-- <string name="pref_portrait">In portrait mode</string> -->
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<!-- <string name="pref_landscape">In landscape mode</string> -->
@@ -27,13 +27,17 @@
<!-- <string name="pref_show_numpad_landscape">Only in landscape mode</string> -->
<!-- <string name="pref_show_numpad_always">Always</string> -->
<!-- <string name="pref_number_row_title">Show number row</string> -->
<!-- <string name="pref_number_row_summary">Add a number row at the top of the keyboard when the numpad is hidden</string> -->
<!-- <string name="pref_numpad_layout">NumPad layout</string> -->
<!-- <string name="pref_numpad_layout_e_high_first">High digits first</string> -->
<!-- <string name="pref_numpad_layout_e_low_first">Low digits first</string> -->
<!-- <string name="pref_extra_keys_title">Add keys to the keyboard</string> -->
<!-- <string name="pref_extra_keys_custom">Add custom keys</string> -->
<!-- <string name="pref_extra_keys_internal">Select keys to add to the keyboard</string> -->
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<!-- <string name="pref_category_typing">Typing</string> -->
<!-- <string name="pref_swipe_dist_title">Swiping distance</string> -->
<!-- <string name="pref_swipe_dist_summary">Distance of characters in the corners of the keys (%s)</string> -->
@@ -45,11 +49,13 @@
<!-- <string name="pref_category_behavior">Behavior</string> -->
<!-- <string name="pref_autocapitalisation_title">Automatic capitalisation</string> -->
<!-- <string name="pref_autocapitalisation_summary">Press Shift at the beginning of a sentence</string> -->
<!-- <string name="pref_switch_input_immediate_title">Switch to the last used keyboard</string> -->
<!-- <string name="pref_switch_input_immediate_summary">Behavior of the keyboard-switching key</string> -->
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<!-- <string name="pref_vibrate_custom">Custom vibration</string> -->
<!-- <string name="pref_vibrate_duration_title">Vibration intensity</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -73,6 +79,10 @@
<!-- <string name="pref_theme_e_monetlight">Monet (Light)</string> -->
<!-- <string name="pref_theme_e_monetdark">Monet (Dark)</string> -->
<!-- <string name="pref_theme_e_rosepine">Rosé Pine</string> -->
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<!-- <string name="pref_swipe_dist_e_very_short">Very short</string> -->
<!-- <string name="pref_swipe_dist_e_short">Short</string> -->
<!-- <string name="pref_swipe_dist_e_default">Normal</string> -->
@@ -88,6 +98,10 @@
<!-- <string name="pref_circle_sensitivity_e_medium">Medium</string> -->
<!-- <string name="pref_circle_sensitivity_e_low">Low</string> -->
<!-- <string name="pref_circle_sensitivity_e_disabled">Disabled</string> -->
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<!-- <string name="key_action_next">Next</string> -->
<!-- <string name="key_action_done">Done</string> -->
<!-- <string name="key_action_go">Go</string> -->
@@ -96,6 +110,7 @@
<!-- <string name="key_action_send">Send</string> -->
<!-- <string name="launcher_button_imesettings">Enable keyboard</string> -->
<!-- <string name="launcher_button_imepicker">Select keyboard</string> -->
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<!-- <string name="launcher_description">This application is a virtual keyboard. Go to the system settings by clicking on the button below and enable Unexpected-Keyboard.</string> -->
<!-- <string name="launcher_sourcecode">This is a free and open source application. You can find the source code or report bugs on GitHub.</string> -->
<!-- <string name="launcher_tryhere">After enabling, you can try the keyboard here:</string> -->
@@ -135,4 +150,17 @@
<!-- <string name="clipboard_remove_confirm">Remove this clipboard item?</string> -->
<!-- <string name="clipboard_remove_confirmed">Yes</string> -->
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+39 -11
View File
@@ -3,7 +3,7 @@
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (Debug)</string>
<string name="short_description">Keyboard virtual yang ringan dan sadar privasi untuk Android.</string>
<string name="store_description">Fitur utamanya adalah Anda dapat mengetik lebih banyak karakter dengan menggeser tombol ke arah sudut.\n\nAplikasi ini awalnya dirancang untuk programmer yang menggunakan Termux.\nSekarang sempurna untuk penggunaan sehari-hari.\n\nAplikasi ini tidak berisi iklan, tidak membuat permintaan jaringan dan Open Source.</string>
<string name="store_description">Fitur utamanya adalah Anda dapat mengetik lebih banyak karakter dengan menggeser tombol ke arah sudut.\n\nAplikasi ini awalnya dirancang untuk programmer yang menggunakan Termux.\nSekarang sempurna untuk penggunaan sehari-hari.\n\nAplikasi ini tidak berisi iklan dan Open Source.</string>
<string name="pref_portrait">Dalam mode potret</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">Dalam mode lansekap</string>
@@ -27,13 +27,17 @@
<string name="pref_show_numpad_landscape">Hanya dalam mode lanskap</string>
<string name="pref_show_numpad_always">Selalu</string>
<string name="pref_number_row_title">Tampilkan baris nomor</string>
<string name="pref_number_row_summary">Menambahkan baris angka di bagian atas keyboard saat numpad disembunyikan</string>
<string name="pref_numpad_layout">Tata letak NumPad</string>
<string name="pref_numpad_layout_e_high_first">digit tinggi dulu</string>
<string name="pref_numpad_layout_e_low_first">digit rendah dulu</string>
<string name="pref_extra_keys_title">Tambahkan tombol ke keyboard</string>
<string name="pref_extra_keys_custom">Menambahkan tombol khusus</string>
<string name="pref_extra_keys_internal">Pilih tombol untuk ditambahkan ke keyboard</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">Mengetik</string>
<string name="pref_swipe_dist_title">Jarak menggeser</string>
<string name="pref_swipe_dist_summary">Jarak karakter di sudut tombol (%s)</string>
@@ -45,11 +49,13 @@
<string name="pref_category_behavior">Perilaku</string>
<string name="pref_autocapitalisation_title">Kapitalisasi Otomatis</string>
<string name="pref_autocapitalisation_summary">Tekan shift di awal kalimat</string>
<string name="pref_switch_input_immediate_title">Beralih ke keyboard yang terakhir digunakan</string>
<string name="pref_switch_input_immediate_summary">Perilaku tombol penggantian keyboard</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">Getaran kustom</string>
<string name="pref_vibrate_duration_title">Intensitas getaran</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -67,12 +73,16 @@
<string name="pref_theme_e_altblack">Alternatif Hitam</string>
<string name="pref_theme_e_white">Putih</string>
<string name="pref_theme_e_epaper">ePaper</string>
<string name="pref_theme_e_desert">Desert</string>
<string name="pref_theme_e_jungle">Jungle</string>
<string name="pref_theme_e_desert">Gurun</string>
<string name="pref_theme_e_jungle">Hutan</string>
<string name="pref_theme_e_monet">Monet (Sistem)</string>
<string name="pref_theme_e_monetlight">Monet (Terang)</string>
<string name="pref_theme_e_monetdark">Monet (Gelap)</string>
<string name="pref_theme_e_rosepine">Rosé Pine</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">Sangat pendek</string>
<string name="pref_swipe_dist_e_short">Pendek</string>
<string name="pref_swipe_dist_e_default">Normal</string>
@@ -88,6 +98,10 @@
<string name="pref_circle_sensitivity_e_medium">Sedang</string>
<string name="pref_circle_sensitivity_e_low">Rendah</string>
<string name="pref_circle_sensitivity_e_disabled">Mati</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">Lanjut</string>
<string name="key_action_done">Selesai</string>
<string name="key_action_go">Pergi</string>
@@ -96,6 +110,7 @@
<string name="key_action_send">Kirim</string>
<string name="launcher_button_imesettings">Aktifkan keyboard</string>
<string name="launcher_button_imepicker">Pilih keyboard</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">Aplikasi ini adalah keyboard virtual. Buka pengaturan sistem dengan mengklik tombol di bawah ini dan aktifkan Unexpected-Keyboard.</string>
<string name="launcher_sourcecode">Ini adalah aplikasi sumber terbuka dan gratis. Anda dapat menemukan kode sumber atau melaporkan bug di GitHub.</string>
<string name="launcher_tryhere">Setelah mengaktifkan, Anda dapat mencoba keyboard di sini:</string>
@@ -110,12 +125,12 @@
<string name="key_descr_cut">Potong</string>
<string name="key_descr_selectAll">Pilih semua</string>
<string name="key_descr_pasteAsPlainText">Tempel sebagai teks biasa</string>
<string name="key_descr_undo">Undo</string>
<string name="key_descr_redo">Redo</string>
<string name="key_descr_undo">Membuka</string>
<string name="key_descr_redo">Mengulangi</string>
<string name="key_descr_ª">Indikator ordinal</string>
<string name="key_descr_º">Indikator ordinal</string>
<string name="key_descr_superscript">Superscript</string>
<string name="key_descr_subscript">Subscript</string>
<string name="key_descr_superscript">Skrip super</string>
<string name="key_descr_subscript">Subskrip</string>
<string name="key_descr_page_up">Halaman atas</string>
<string name="key_descr_page_down">Halaman bawah</string>
<string name="key_descr_home">Beranda</string>
@@ -135,4 +150,17 @@
<string name="clipboard_remove_confirm">Hapus clipboard ini?</string>
<string name="clipboard_remove_confirmed">Ya</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+87 -59
View File
@@ -1,39 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (debug)</string>
<string name="short_description">Una Tastiera Virtuale Leggera Per La Programmazione</string>
<string name="store_description">La principale funzionalita` e\' che si possono digitare caratteri aggiuntivi scorrendo sui tasti verso gli angoli.\n.\nQuesta app e\' stata inizialmente progettata per i programmatori che usavano Termux.\nOggi e\' perfetta per l\'utilizzo quotidiano,\n.\nQuesta app non contiene pubblicita`, non genera chiamate di rete ed e\' Open Source.</string>
<string name="pref_portrait">In modalita` verticale</string>
<string name="app_name_debug">Unexpected Keyboard (Debug)</string>
<string name="short_description">Una tastiera virtuale leggera ed attenta alla privacy per Android.</string>
<string name="store_description">La caratteristica principale è quella di poter digitare altri caratteri scorrendo verso i bordi dei tasti.\n\nL\'applicazione era originariamente pensata per l\'utilizzo di Termux da parte di programmatori.\nOra è perfetta anche per l\'uso quotidiano.\n\nL\'applicazione non contiene pubblicità ed è Open Source.</string>
<string name="pref_portrait">In modalità verticale</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">In modalita` orizzontale</string>
<string name="pref_landscape">In modalità orizzontale</string>
<!-- <string name="pref_landscape_unfolded">In landscape mode unfolded</string> -->
<string name="pref_category_layout">Layout</string>
<string name="pref_label_brightness">Regolare la luminosita` della descrizione</string>
<string name="pref_keyboard_opacity">Regolare l\'opacita` dello sfondo della tastiera</string>
<string name="pref_key_opacity">Regolare l\'opacita` dei tasti</string>
<string name="pref_key_activated_opacity">Regolare l\'opacita` del tasto premuto</string>
<string name="pref_label_brightness">Regolare la luminosità della descrizione</string>
<string name="pref_keyboard_opacity">Regola l\'opacità dello sfondo della tastiera</string>
<string name="pref_key_opacity">Regola l\'opacità dei tasti</string>
<string name="pref_key_activated_opacity">Regola l\'opacità dei tasti premuti</string>
<string name="pref_layout_e_system">Impostazioni di sistema</string>
<string name="pref_layout_e_custom">Layout personalizzato</string>
<string name="pref_layouts_add">Aggiungere un layout alternativo</string>
<string name="pref_layouts_add">Aggiungi un layout alternativo</string>
<string name="pref_layouts_item">Layout %1$d: %2$s</string>
<string name="pref_layouts_remove_custom">Eliminare layout</string>
<string name="pref_layouts_remove_custom">Rimuovi layout</string>
<string name="pref_custom_layout_title">Layout personalizzato</string>
<!-- <string name="pref_show_number_row_no_number_row">No number row</string> -->
<!-- <string name="pref_show_number_row_no_symbols">Number row without symbols</string> -->
<!-- <string name="pref_show_number_row_symbols">Number row with symbols</string> -->
<string name="pref_show_numpad_title">Mostrare il tastierino numerico</string>
<string name="pref_show_numpad_title">Mostra la tastiera dei numeri</string>
<string name="pref_show_numpad_never">Mai</string>
<string name="pref_show_numpad_landscape">Solo in modalita` orizzontale</string>
<string name="pref_show_numpad_landscape">Solo modalità orizzontale</string>
<string name="pref_show_numpad_always">Sempre</string>
<string name="pref_number_row_title">Mostrare la riga dei numeri</string>
<string name="pref_number_row_summary">Aggiungere una riga dei numeri sopra la tastiera quando il tastierino numerico e\' nascosto</string>
<string name="pref_numpad_layout">Layout del yadtierino numerico</string>
<string name="pref_numpad_layout_e_high_first">Prima i numeri piu` alti</string>
<string name="pref_numpad_layout_e_low_first">Prima i numeri piu` bassi</string>
<string name="pref_number_row_title">Mostra la riga dei numeri</string>
<string name="pref_numpad_layout">Layout del tastierino numerico</string>
<string name="pref_numpad_layout_e_high_first">Prima i numeri più alti</string>
<string name="pref_numpad_layout_e_low_first">Prima i numeri più bassi</string>
<string name="pref_extra_keys_title">Aggiungi altri simboli alla tastiera</string>
<string name="pref_extra_keys_custom">Aggiungere tasti personalizzati</string>
<string name="pref_extra_keys_internal">Selezionare tasti da aggiungere alla tastiera</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">Digitando</string>
<string name="pref_swipe_dist_title">Distanza swipe</string>
<string name="pref_swipe_dist_summary">Distanza dei caratteri negli angoli dei tasti (%s)</string>
@@ -45,11 +49,13 @@
<string name="pref_category_behavior">Comportamento</string>
<string name="pref_autocapitalisation_title">Maiuscole Automatiche</string>
<string name="pref_autocapitalisation_summary">Premi Shift all\'inizio di una frase</string>
<string name="pref_switch_input_immediate_title">Passare all\'ultima tastiera usata</string>
<string name="pref_switch_input_immediate_summary">Comportamento del tasto di cambio tastiera</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">Vibrazione personalizzata</string>
<string name="pref_vibrate_duration_title">Intensita` della vibrazione</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<string name="pref_vibrate_duration_title">Intensità della vibrazione</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -64,15 +70,19 @@
<string name="pref_theme_e_dark">Scuro</string>
<string name="pref_theme_e_light">Chiaro</string>
<string name="pref_theme_e_black">Nero</string>
<!-- <string name="pref_theme_e_altblack">Alternative Black</string> -->
<!-- <string name="pref_theme_e_white">White</string> -->
<!-- <string name="pref_theme_e_epaper">ePaper</string> -->
<!-- <string name="pref_theme_e_desert">Desert</string> -->
<!-- <string name="pref_theme_e_jungle">Jungle</string> -->
<!-- <string name="pref_theme_e_monet">Monet (System)</string> -->
<!-- <string name="pref_theme_e_monetlight">Monet (Light)</string> -->
<!-- <string name="pref_theme_e_monetdark">Monet (Dark)</string> -->
<!-- <string name="pref_theme_e_rosepine">Rosé Pine</string> -->
<string name="pref_theme_e_altblack">Nero alternativo</string>
<string name="pref_theme_e_white">Bianco</string>
<string name="pref_theme_e_epaper">ePaper</string>
<string name="pref_theme_e_desert">Deserto</string>
<string name="pref_theme_e_jungle">Giungla</string>
<string name="pref_theme_e_monet">Monet (Sistema)</string>
<string name="pref_theme_e_monetlight">Monet (Chiaro)</string>
<string name="pref_theme_e_monetdark">Monet (Scuro)</string>
<string name="pref_theme_e_rosepine">Rosé Pine</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">Veramente breve</string>
<string name="pref_swipe_dist_e_short">Breve</string>
<string name="pref_swipe_dist_e_default">Normale</string>
@@ -80,33 +90,38 @@
<string name="pref_swipe_dist_e_very_far">Molto distante</string>
<string name="pref_key_horizontal_space">Spazio orizzontale tra i tasti</string>
<string name="pref_key_vertical_space">Spazio verticale tra i tasti</string>
<!-- <string name="pref_border_config_title">Customize borders</string> -->
<!-- <string name="pref_border_width_title">Border Width</string> -->
<!-- <string name="pref_corners_radius_title">Corner radius</string> -->
<!-- <string name="pref_circle_sensitivity_title">Circle gesture sensitivity</string> -->
<!-- <string name="pref_circle_sensitivity_e_high">High</string> -->
<!-- <string name="pref_circle_sensitivity_e_medium">Medium</string> -->
<!-- <string name="pref_circle_sensitivity_e_low">Low</string> -->
<!-- <string name="pref_circle_sensitivity_e_disabled">Disabled</string> -->
<string name="pref_border_config_title">Personalizza bordi</string>
<string name="pref_border_width_title">Larghezza bordo</string>
<string name="pref_corners_radius_title">Raggio dell\'angolo</string>
<string name="pref_circle_sensitivity_title">Sensibilità del gesto circolare</string>
<string name="pref_circle_sensitivity_e_high">Altezza</string>
<string name="pref_circle_sensitivity_e_medium">Medio</string>
<string name="pref_circle_sensitivity_e_low">Basso</string>
<string name="pref_circle_sensitivity_e_disabled">Disabilitato</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">Prossimo</string>
<string name="key_action_done">Fatto</string>
<string name="key_action_go">Vai</string>
<string name="key_action_prev">Precedente</string>
<string name="key_action_search">Cerca</string>
<string name="key_action_send">Invia</string>
<!-- <string name="launcher_button_imesettings">Enable keyboard</string> -->
<!-- <string name="launcher_button_imepicker">Select keyboard</string> -->
<!-- <string name="launcher_description">This application is a virtual keyboard. Go to the system settings by clicking on the button below and enable Unexpected-Keyboard.</string> -->
<!-- <string name="launcher_sourcecode">This is a free and open source application. You can find the source code or report bugs on GitHub.</string> -->
<!-- <string name="launcher_tryhere">After enabling, you can try the keyboard here:</string> -->
<!-- <string name="launcher_tryhere_hint">Try here</string> -->
<!-- <string name="key_descr_capslock">Caps lock</string> -->
<!-- <string name="key_descr_compose">Compose</string> -->
<!-- <string name="key_descr_switch_greekmath">Greek &amp; math symbols</string> -->
<!-- <string name="key_descr_change_method">Switch keyboard</string> -->
<!-- <string name="key_descr_voice_typing">Voice typing</string> -->
<!-- <string name="key_descr_copy">Copy</string> -->
<!-- <string name="key_descr_paste">Paste</string> -->
<string name="launcher_button_imesettings">Abilita tastiera</string>
<string name="launcher_button_imepicker">Seleziona tastiera</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">Questa applicazione è una tastiera virtuale. Vai alle impostazioni di sistema cliccando sul pulsante qui sotto e abilita Unexpected-Keyboard.</string>
<string name="launcher_sourcecode">Questa è un\'applicazione gratuita e open source. Puoi trovare il codice sorgente o segnalare bug su GitHub.</string>
<string name="launcher_tryhere">Dopo averla abilitata, puoi provare la tastiera qui:</string>
<string name="launcher_tryhere_hint">Prova qui</string>
<string name="key_descr_capslock">Bloc Maiusc</string>
<string name="key_descr_compose">Componi</string>
<string name="key_descr_switch_greekmath">Simboli greci e matematici</string>
<string name="key_descr_change_method">Cambia tastiera</string>
<string name="key_descr_voice_typing">Dettatura vocale</string>
<string name="key_descr_copy">Copia</string>
<string name="key_descr_paste">Incolla</string>
<string name="key_descr_cut">Taglia</string>
<string name="key_descr_selectAll">Seleziona tutto</string>
<string name="key_descr_pasteAsPlainText">Incolla testo non formattato</string>
@@ -115,18 +130,18 @@
<string name="key_descr_ª">Ordinale</string>
<string name="key_descr_º">Ordinale</string>
<string name="key_descr_superscript">All\'esponente</string>
<!-- <string name="key_descr_subscript">Subscript</string> -->
<string name="key_descr_subscript">Pedice</string>
<string name="key_descr_page_up">Pagina su</string>
<string name="key_descr_page_down">Pagina giu`</string>
<string name="key_descr_page_down">Pagina giù</string>
<string name="key_descr_home">Inizio</string>
<string name="key_descr_end">Fine</string>
<string name="key_descr_clipboard">Clipboard-Manager</string>
<!-- <string name="key_descr_combining">Combining diacritic</string> -->
<string name="key_descr_clipboard">Gestore degli appunti</string>
<string name="key_descr_combining">Combinazione di segni diacritici</string>
<string name="key_descr_dead_key">Tasto vuoto</string>
<!-- <string name="key_descr_zwj">Zero width joiner</string> -->
<!-- <string name="key_descr_zwnj">Zero width non-joiner</string> -->
<string name="key_descr_zwj">Giunto a larghezza zero</string>
<string name="key_descr_zwnj">Separatore a larghezza zero</string>
<string name="key_descr_nbsp">Spazio senza interruzione</string>
<!-- <string name="key_descr_nnbsp">Narrow non-breaking space</string> -->
<string name="key_descr_nnbsp">Spazio stretto non divisore</string>
<!-- <string name="key_descr_delete_word">Delete a word</string> -->
<!-- <string name="key_descr_forward_delete_word">Delete a word on the right</string> -->
<!-- <string name="key_descr_gesture">Gesture</string> -->
@@ -135,4 +150,17 @@
<string name="clipboard_remove_confirm">Eliminare questi appunti?</string>
<string name="clipboard_remove_confirmed">Si</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+33 -5
View File
@@ -3,7 +3,7 @@
<string name="app_name_release">Unexpected Keyboard</string>
<string name="app_name_debug">Unexpected Keyboard (Debug)</string>
<string name="short_description">軽量でプライバシーに配慮したAndroid用仮想キーボード</string>
<string name="store_description">このキーボードは、キーの角をスワイプすることで様々なキーを入力できます。\n\nこのアプリは元々はTermuxでのプログラミング用に設計されました。\nしかし、今では普段の入力にも適しています。\nPCキーボードでの半角入力を再現しています。日本語入力、変換は出来ません。\n\nこのアプリは広告を含まず、インターネットに接続せず、そしてオープンソースです。</string>
<string name="store_description">このキーボードは、キーの角をスワイプすることで様々なキーを入力できます。\n\nこのアプリは元々はTermuxでのプログラミング用に設計されました。\nしかし、今では普段の入力にも適しています。\nPCキーボードでの半角入力を再現しています。日本語入力、変換は出来ません。</string>
<string name="pref_portrait">縦向き</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">横向き</string>
@@ -27,13 +27,17 @@
<string name="pref_show_numpad_landscape">横向きの時は表示</string>
<string name="pref_show_numpad_always">表示する</string>
<string name="pref_number_row_title">数字の行を表示</string>
<string name="pref_number_row_summary">テンキーが非表示の場合最上段に数字の行を追加します</string>
<string name="pref_numpad_layout">テンキーのレイアウト</string>
<string name="pref_numpad_layout_e_high_first">大きい数字を上に</string>
<string name="pref_numpad_layout_e_low_first">小さい数字を上に</string>
<string name="pref_extra_keys_title">追加のキーの設定</string>
<string name="pref_extra_keys_custom">キーを追加</string>
<string name="pref_extra_keys_internal">キーボードに表示するキーを選択</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">入力</string>
<string name="pref_swipe_dist_title">スワイプ距離</string>
<string name="pref_swipe_dist_summary">キーの角をスワイプする距離 (%s)</string>
@@ -45,11 +49,13 @@
<string name="pref_category_behavior">挙動</string>
<string name="pref_autocapitalisation_title">自動大文字化</string>
<string name="pref_autocapitalisation_summary">文章の先頭でShiftキーを自動入力</string>
<string name="pref_switch_input_immediate_title">最後に使用したキーボードに切替</string>
<string name="pref_switch_input_immediate_summary">キーボード切替キーの挙動</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">キーボード独自の振動設定</string>
<string name="pref_vibrate_duration_title">振動の時間</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -73,6 +79,10 @@
<string name="pref_theme_e_monetlight">Monet (ライト)</string>
<string name="pref_theme_e_monetdark">Monet (ダーク)</string>
<!-- <string name="pref_theme_e_rosepine">Rosé Pine</string> -->
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">短い</string>
<string name="pref_swipe_dist_e_short">やや短い</string>
<string name="pref_swipe_dist_e_default">普通</string>
@@ -88,6 +98,10 @@
<string name="pref_circle_sensitivity_e_medium">中</string>
<string name="pref_circle_sensitivity_e_low">低</string>
<string name="pref_circle_sensitivity_e_disabled">無効</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">次へ</string>
<string name="key_action_done">完了</string>
<string name="key_action_go">実行</string>
@@ -96,6 +110,7 @@
<string name="key_action_send">送信</string>
<string name="launcher_button_imesettings">キーボードを有効化</string>
<string name="launcher_button_imepicker">キーボードを選択</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">このアプリは仮想キーボードです。下のボタンからシステム設定を開いてUnexpected Keyboardを有効化してください。</string>
<string name="launcher_sourcecode">このアプリはオープンソースのフリーウェアです。GitHubでソースコードを入手したり、不具合を報告したりできます。</string>
<string name="launcher_tryhere">有効化されている場合、ここでキーボードを試すことができます。</string>
@@ -135,4 +150,17 @@
<string name="clipboard_remove_confirm">クリップボードから削除しますか?</string>
<string name="clipboard_remove_confirmed">はい</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>
+35 -7
View File
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_release">Unexpected Keyboard</string>
<!-- <string name="app_name_debug">Unexpected Keyboard (Debug)</string> -->
<string name="app_name_debug">Unexpected Keyboard (디버그)</string>
<string name="short_description">개발자들을 위한 가벼운 가상 키보드.</string>
<string name="store_description">주요 기능은 모서리 방향으로 키를 스와이프하여 더 많은 문자를 입력할 수 있다는 것입니다.\n\n이 앱은 처음에는 Termux를 사용하는 프로그래머들을 위한 것으로 개발되었습니다.\n지금은 일상적인 용도로도 완벽합니다.\n\n이 응용 프로그램에는 광고가 없으며 네트워크 요청을 하지 않고 오픈 소스입니다.</string>
<string name="store_description">주요 기능은 모서리 방향으로 키를 스와이프하여 더 많은 문자를 입력할 수 있다는 것입니다.\n\n이 앱은 처음에는 Termux를 사용하는 프로그래머들을 위한 것으로 개발되었습니다.\n지금은 일상적인 용도로도 완벽합니다.</string>
<string name="pref_portrait">세로 화면</string>
<!-- <string name="pref_portrait_unfolded">In portrait mode unfolded</string> -->
<string name="pref_landscape">가로 화면</string>
@@ -27,13 +27,17 @@
<string name="pref_show_numpad_landscape">가로 모드에서만</string>
<string name="pref_show_numpad_always">항상</string>
<string name="pref_number_row_title">숫자 열 표시</string>
<string name="pref_number_row_summary">NumPad이 숨겨진 경우 키보드 상단에 숫자 행을 추가합니다.</string>
<string name="pref_numpad_layout">NumPad 레이아웃</string>
<string name="pref_numpad_layout_e_high_first">높은 자리수 우선</string>
<string name="pref_numpad_layout_e_low_first">낮은 자리수 우선</string>
<string name="pref_extra_keys_title">키보드에 추가 키 설정</string>
<string name="pref_extra_keys_custom">사용자 정의 키 추가</string>
<string name="pref_extra_keys_internal">키보드에 추가할 키 선택</string>
<!-- <string name="pref_category_suggestions">Suggestions</string> -->
<!-- <string name="pref_suggestions_title">Suggestions</string> -->
<!-- <string name="pref_suggestions_summary">Enable word completion and spell checking</string> -->
<!-- <string name="pref_space_bar_auto_complete_title">Autocomplete with the space bar</string> -->
<!-- <string name="pref_space_bar_auto_complete_summary">Enter the best suggestion by pressing space</string> -->
<string name="pref_category_typing">입력</string>
<string name="pref_swipe_dist_title">스와이프 범위</string>
<string name="pref_swipe_dist_summary">키 모서리 문자의 입력 범위 (%s)</string>
@@ -45,11 +49,13 @@
<string name="pref_category_behavior">동작</string>
<string name="pref_autocapitalisation_title">자동 대문자 전환</string>
<string name="pref_autocapitalisation_summary">문장의 시작에서 Shift 키를 눌러 대문자로 전환합니다.</string>
<string name="pref_switch_input_immediate_title">마지막으로 사용한 키보드로 전환</string>
<string name="pref_switch_input_immediate_summary">키보드 전환 키의 동작 방식입니다.</string>
<!-- <string name="pref_change_method_key_replacement_title">Switching between input methods</string> -->
<!-- <string name="pref_change_method_key_replacement_e_picker">Show the input method picker (long press)</string> -->
<!-- <string name="pref_change_method_key_replacement_e_prev">Switch to last used</string> -->
<!-- <string name="pref_change_method_key_replacement_e_next">Switch to the next in the list</string> -->
<string name="pref_vibrate_custom">사용자 정의 진동</string>
<string name="pref_vibrate_duration_title">진동 강도</string>
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates and phone numbers</string> -->
<!-- <string name="pref_number_entry_title">Layout when typing numbers, dates, and phone numbers</string> -->
<!-- <string name="pref_number_entry_layout_pin">PIN Entry</string> -->
<!-- <string name="pref_number_entry_layout_number">Number pane</string> -->
<!-- <string name="pref_number_entry_layout_normal">Use the main layout</string> -->
@@ -72,7 +78,11 @@
<string name="pref_theme_e_monet">모네트 (시스템)</string>
<string name="pref_theme_e_monetlight">모네트 (라이트)</string>
<string name="pref_theme_e_monetdark">모네트 (다크)</string>
<!-- <string name="pref_theme_e_rosepine">Rosé Pine</string> -->
<string name="pref_theme_e_rosepine">로제파인</string>
<!-- <string name="pref_theme_e_everforestlight">Everforest Light</string> -->
<!-- <string name="pref_theme_e_cobalt">Cobalt</string> -->
<!-- <string name="pref_theme_e_pine">Pine</string> -->
<!-- <string name="pref_theme_e_epaperblack">ePaper Black</string> -->
<string name="pref_swipe_dist_e_very_short">매우 짧음</string>
<string name="pref_swipe_dist_e_short">짧음</string>
<string name="pref_swipe_dist_e_default">보통</string>
@@ -88,6 +98,10 @@
<string name="pref_circle_sensitivity_e_medium">중간</string>
<string name="pref_circle_sensitivity_e_low">낮음</string>
<string name="pref_circle_sensitivity_e_disabled">사용 안 함</string>
<!-- <string name="pref_slider_sensitivity_title">Space bar slider sensitivity</string> -->
<!-- <string name="pref_slider_sensitivity_slow">Slow</string> -->
<!-- <string name="pref_slider_sensitivity_medium">Medium</string> -->
<!-- <string name="pref_slider_sensitivity_fast">Fast</string> -->
<string name="key_action_next">다음</string>
<string name="key_action_done">확인</string>
<string name="key_action_go">엔터</string>
@@ -96,6 +110,7 @@
<string name="key_action_send">보내기</string>
<string name="launcher_button_imesettings">키보드 활성화</string>
<string name="launcher_button_imepicker">키보드 선택</string>
<!-- <string name="launcher_button_dictionaries">Install dictionaries</string> -->
<string name="launcher_description">이 앱은 가상 키보드입니다.Unexpected-Keyboard를 클릭하여 시스템 설정으로 이동하고 아래 버튼을 클릭하세요.</string>
<string name="launcher_sourcecode">이것은 무료이고 오픈 소스 응용 프로그램입니다. GitHub에서 원본 코드를 찾을 수 있습니다 또는 버그를 신고할 수 있습니다.</string>
<string name="launcher_tryhere">켜면 여기에서 키보드를 시험해 볼 수 있습니다:</string>
@@ -135,4 +150,17 @@
<string name="clipboard_remove_confirm">이 클립보드를 제거하시겠습니까?</string>
<string name="clipboard_remove_confirmed">예</string>
<!-- <string name="toast_no_voice_input">No voice typing app installed</string> -->
<!-- <string name="pref_category_clipboard">Clipboard</string> -->
<!-- <string name="pref_clipboard_history_duration">Clipboard memory duration</string> -->
<!-- <string name="pref_clipboard_history_duration_1">At most 1 minute</string> -->
<!-- <string name="pref_clipboard_history_duration_5">At most 5 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_30">At most 30 minutes</string> -->
<!-- <string name="pref_clipboard_history_duration_stop">Until the app stops</string> -->
<!-- <string name="pref_dialog_edit_text">Custom definition</string> -->
<!-- <string name="dictionaries_from_internet">Download a dictionary from the Internet</string> -->
<!-- <string name="dictionaries_download_success">Dictionary installed</string> -->
<!-- <string name="dictionaries_download_failed">Download failed</string> -->
<!-- <string name="dictionaries_activity_not_enabled">You must first enable the keyboard to download dictionaries.</string> -->
<!-- <string name="candidates_status_no_dict">No dictionary installed</string> -->
<!-- <string name="candidates_status_install">Install</string> -->
</resources>

Some files were not shown because too many files have changed in this diff Show More