GGSheng commited on
Commit
72787f4
·
verified ·
1 Parent(s): f8145c4

feat: deploy to hf space | model=llama-12257b

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +22 -0
  2. DEPLOY_GUIDE.md +425 -0
  3. DEPLOY_GUIDE_zh.md +425 -0
  4. Dockerfile +537 -0
  5. LICENSE +21 -0
  6. README.md +333 -5
  7. README_zh.md +315 -0
  8. bt-source/conf/softList.conf +7 -0
  9. bt-source/init/bt6.init +422 -0
  10. bt-source/init/bt7.init +497 -0
  11. bt-source/install/public.sh +193 -0
  12. bt-source/panel/BT-Panel +532 -0
  13. bt-source/panel/BT-Task +14 -0
  14. bt-source/panel/BTPanel/__init__.py +0 -0
  15. bt-source/panel/BTPanel/static/ckeditor/CHANGES.md +0 -0
  16. bt-source/panel/BTPanel/static/ckeditor/LICENSE.md +1420 -0
  17. bt-source/panel/BTPanel/static/ckeditor/README.md +39 -0
  18. bt-source/panel/BTPanel/static/ckeditor/adapters/jquery.js +10 -0
  19. bt-source/panel/BTPanel/static/ckeditor/build-config.js +190 -0
  20. bt-source/panel/BTPanel/static/ckeditor/ckeditor.js +0 -0
  21. bt-source/panel/BTPanel/static/ckeditor/config.js +11 -0
  22. bt-source/panel/BTPanel/static/ckeditor/contents.css +208 -0
  23. bt-source/panel/BTPanel/static/ckeditor/lang/af.js +5 -0
  24. bt-source/panel/BTPanel/static/ckeditor/lang/ar.js +5 -0
  25. bt-source/panel/BTPanel/static/ckeditor/lang/az.js +5 -0
  26. bt-source/panel/BTPanel/static/ckeditor/lang/bg.js +5 -0
  27. bt-source/panel/BTPanel/static/ckeditor/lang/bn.js +5 -0
  28. bt-source/panel/BTPanel/static/ckeditor/lang/bs.js +5 -0
  29. bt-source/panel/BTPanel/static/ckeditor/lang/ca.js +5 -0
  30. bt-source/panel/BTPanel/static/ckeditor/lang/cs.js +5 -0
  31. bt-source/panel/BTPanel/static/ckeditor/lang/cy.js +5 -0
  32. bt-source/panel/BTPanel/static/ckeditor/lang/da.js +5 -0
  33. bt-source/panel/BTPanel/static/ckeditor/lang/de-ch.js +5 -0
  34. bt-source/panel/BTPanel/static/ckeditor/lang/de.js +5 -0
  35. bt-source/panel/BTPanel/static/ckeditor/lang/el.js +5 -0
  36. bt-source/panel/BTPanel/static/ckeditor/lang/en-au.js +5 -0
  37. bt-source/panel/BTPanel/static/ckeditor/lang/en-ca.js +5 -0
  38. bt-source/panel/BTPanel/static/ckeditor/lang/en-gb.js +5 -0
  39. bt-source/panel/BTPanel/static/ckeditor/lang/en.js +5 -0
  40. bt-source/panel/BTPanel/static/ckeditor/lang/eo.js +5 -0
  41. bt-source/panel/BTPanel/static/ckeditor/lang/es-mx.js +5 -0
  42. bt-source/panel/BTPanel/static/ckeditor/lang/es.js +5 -0
  43. bt-source/panel/BTPanel/static/ckeditor/lang/et.js +5 -0
  44. bt-source/panel/BTPanel/static/ckeditor/lang/eu.js +5 -0
  45. bt-source/panel/BTPanel/static/ckeditor/lang/fa.js +5 -0
  46. bt-source/panel/BTPanel/static/ckeditor/lang/fi.js +5 -0
  47. bt-source/panel/BTPanel/static/ckeditor/lang/fo.js +5 -0
  48. bt-source/panel/BTPanel/static/ckeditor/lang/fr-ca.js +5 -0
  49. bt-source/panel/BTPanel/static/ckeditor/lang/fr.js +5 -0
  50. bt-source/panel/BTPanel/static/ckeditor/lang/gl.js +5 -0
.gitattributes CHANGED
@@ -33,3 +33,25 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ bt-source/panel/BTPanel/static/editor/icons/file-icons.woff2 filter=lfs diff=lfs merge=lfs -text
37
+ bt-source/panel/BTPanel/static/font/file-icons.woff2 filter=lfs diff=lfs merge=lfs -text
38
+ bt-source/panel/BTPanel/static/images/bg-default.png filter=lfs diff=lfs merge=lfs -text
39
+ bt-source/panel/BTPanel/static/images/bg-images.png filter=lfs diff=lfs merge=lfs -text
40
+ bt-source/panel/BTPanel/static/images/bg-main-dark.png filter=lfs diff=lfs merge=lfs -text
41
+ bt-source/panel/BTPanel/static/images/bg-main.png filter=lfs diff=lfs merge=lfs -text
42
+ bt-source/panel/BTPanel/static/images/dep_ico/youmiactivitys.png filter=lfs diff=lfs merge=lfs -text
43
+ bt-source/panel/BTPanel/static/images/home/home-load-transparent-bg.png filter=lfs diff=lfs merge=lfs -text
44
+ bt-source/panel/BTPanel/static/images/soft_ico/ico-portblast.svg filter=lfs diff=lfs merge=lfs -text
45
+ bt-source/panel/BTPanel/static/img/dep_ico/shop.png filter=lfs diff=lfs merge=lfs -text
46
+ bt-source/panel/BTPanel/static/img/dep_ico/yd_tc_plus.png filter=lfs diff=lfs merge=lfs -text
47
+ bt-source/panel/BTPanel/static/img/report/img_01.png filter=lfs diff=lfs merge=lfs -text
48
+ bt-source/panel/BTPanel/static/img/report/新建项目.png filter=lfs diff=lfs merge=lfs -text
49
+ bt-source/panel/class/PluginLoader.aarch64.Python3.7.so filter=lfs diff=lfs merge=lfs -text
50
+ bt-source/panel/class/PluginLoader.i686.Python3.7.so filter=lfs diff=lfs merge=lfs -text
51
+ bt-source/panel/class/PluginLoader.loongarch64.Python3.7.so filter=lfs diff=lfs merge=lfs -text
52
+ bt-source/panel/class/PluginLoader.x86_64.Python3.7.so filter=lfs diff=lfs merge=lfs -text
53
+ bt-source/panel/class/PluginLoader.x86_64.glibc214.Python3.7.so filter=lfs diff=lfs merge=lfs -text
54
+ bt-source/panel/class/btdockerModel/config/docker_hub_repos.db filter=lfs diff=lfs merge=lfs -text
55
+ bt-source/panel/class/projectModel/wordpress.db filter=lfs diff=lfs merge=lfs -text
56
+ bt-source/panel/class/safeModel/tpl.docx filter=lfs diff=lfs merge=lfs -text
57
+ bt-source/panel/config/GeoLite2-City.mmdb filter=lfs diff=lfs merge=lfs -text
DEPLOY_GUIDE.md ADDED
@@ -0,0 +1,425 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Deploying OpenClaw on Hugging Face Spaces (with Auto Backup & Restore)
2
+
3
+ > **Source**: [tenfy's blog - Deploying OpenClaw on Hugging Face Spaces](https://tenfy.cn/posts/openclaw-hf-space-deploy/) (adapted for this project)
4
+ >
5
+ > **Original Author**: tenfyzhong([https://tenfy.cn](https://tenfy.cn))
6
+ >
7
+ > **Adapted by**: ClawCopilot Team([https://github.com/ClawCopilot/Openclaw-Hf-Docker](https://github.com/ClawCopilot/Openclaw-Hf-Docker))
8
+ >
9
+ > **Original Post Date**: 2026-03-25
10
+
11
+ ---
12
+
13
+ ## What This Solution Solves
14
+
15
+ This project builds on tenfy's `openclaw-hf` by adding **BT Panel (Baota)** as PID 1, providing a user-friendly web management interface:
16
+
17
+ - Build OpenClaw container image on top of `ubuntu:24.04`
18
+ - **BT Panel (Baota)** as container PID 1, listening on port `7860` (default HF Space port), provides web management interface
19
+ - **OpenClaw Gateway** runs on separate port `18789` (default)
20
+ - Support pre-configuring third-party OpenAI-compatible models via environment variables (`base_url + api_key`)
21
+ - OpenClaw config and workspace stored in `/root/.openclaw`
22
+ - Auto-restore latest backup from HF Dataset on startup
23
+ - Periodic backup to HF Dataset via `cron`
24
+ - **Supervisord** manages `cron` and `openclaw-gateway` processes
25
+ - Pre-installed tools: `vim`, `opencode`, `codex`, `claude`, `sshx` for debugging and interaction inside the container
26
+ - Built-in DDNS-GO for dynamic DNS updates (non-critical, installation failure doesn't break the build)
27
+
28
+ ---
29
+
30
+ ## Container Architecture
31
+
32
+ ```
33
+ PID 1 (bt-panel)
34
+ └── /usr/local/bin/hf-entrypoint.sh
35
+ ├── /usr/bin/supervisord
36
+ │ ├── cron (scheduled backup tasks)
37
+ │ └── openclaw-gateway (OpenClaw Gateway, port 18789)
38
+ └── node hf-server.js (container health check)
39
+ ```
40
+
41
+ - **BT Panel**: port `7860`, web management interface
42
+ - **OpenClaw Gateway**: port `18789`, AI Gateway API
43
+ - **Supervisord**: process manager, manages both `cron` and `openclaw-gateway`
44
+ - **Health check**: `curl http://localhost:7860`, called by Hugging Face platform
45
+
46
+ ---
47
+
48
+ ## 1. Register Hugging Face & Generate HF_TOKEN
49
+
50
+ If you don't have a Hugging Face account yet, sign up first: [https://huggingface.co/join](https://huggingface.co/join)
51
+
52
+ After preparing your account, create a token following these steps:
53
+
54
+ 1. Open Hugging Face Token page: [https://huggingface.co/settings/tokens](https://huggingface.co/settings/tokens)
55
+ 2. Create a new token (recommended name: `deploy-openclaw`)
56
+ 3. Grant the required permissions (need ability to create Spaces and write to Datasets)
57
+ 4. Copy the token (format: `hf_xxx...`)
58
+
59
+ Login locally and verify:
60
+
61
+ ```bash
62
+ hf auth login
63
+ hf auth whoami
64
+ ```
65
+
66
+ When `bootstrap-hf.sh` prompts for `HF_TOKEN for backup dataset`:
67
+ - You can paste the newly created token directly
68
+ - Or leave it empty to let the script reuse the current `hf auth login` local credentials
69
+
70
+ ---
71
+
72
+ ## 2. One-Click Deployment (Recommended)
73
+
74
+ The repository provides an interactive script. It's recommended to use the script instead of manual setup.
75
+
76
+ ### 1. Clone the Repository
77
+
78
+ ```bash
79
+ git clone https://github.com/ClawCopilot/Openclaw-Hf-Docker.git
80
+ cd Openclaw-Hf-Docker
81
+ ```
82
+
83
+ ### 2. Run the Bootstrap Script
84
+
85
+ macOS / Linux:
86
+
87
+ ```bash
88
+ ./scripts/bootstrap-hf.sh
89
+ ```
90
+
91
+ Windows PowerShell:
92
+
93
+ ```powershell
94
+ powershell -ExecutionPolicy ByPass -File .\scripts\bootstrap-hf.ps1
95
+ ```
96
+
97
+ ### 3. What the Script Does Automatically
98
+
99
+ - Check and install `hf` CLI if missing
100
+ - Check Hugging Face login status (trigger `hf auth login` if needed)
101
+ - Ask for and confirm deployment parameters (including final `Proceed with these settings?` confirmation)
102
+ - Ask for BT Panel port, username, and password
103
+ - Create private Space and private backup Dataset, upload current repository to Space
104
+ - Auto-write Variables / Secrets (including backup, gateway credentials, BT Panel config, etc.)
105
+ - Write security-related variables by default:
106
+ - `OPENCLAW_GATEWAY_CONTROLUI_ALLOW_INSECURE_AUTH=false`
107
+ - `OPENCLAW_GATEWAY_CONTROLUI_DANGEROUSLY_DISABLE_DEVICE_AUTH=false`
108
+
109
+ ### 4. BT Panel Username Rules
110
+
111
+ **Must satisfy the following**:
112
+ - Start with a lowercase letter
113
+ - Can only contain lowercase letters and numbers
114
+ - Length 3-32 characters
115
+
116
+ Examples: `btadmin`, `mypanel123`, `openclawspace`
117
+
118
+ ---
119
+
120
+ ## 3. Use Agent for Auto Deployment
121
+
122
+ Suitable for users who don't want to manually configure. You can directly send this to an AI Agent:
123
+
124
+ ```
125
+ Please deploy OpenClaw to Hugging Face by strictly following the deployment skill in https://github.com/tenfyzhong/openclaw-hf/blob/main/SKILL.md
126
+ ```
127
+
128
+ Agent usually does:
129
+
130
+ 1. Check dependencies first (`git`, `hf`, `python3`, `huggingface_hub`)
131
+ 2. Collect deployment parameters from you in fixed order
132
+ 3. Call `bootstrap-hf.sh` / `bootstrap-hf.ps1` to execute deployment
133
+ 4. Report Space / Dataset / App / Health URLs and version info
134
+ 5. If gateway credentials are auto-generated, also report them
135
+
136
+ If you want to provide all parameters at once, send this template to the Agent:
137
+
138
+ ```
139
+ space_name: openclaw-hf
140
+ dataset_name: openclaw-hf-backup
141
+ openclaw_version: latest
142
+ gateway_token: <leave empty to auto-generate, or fill manually>
143
+ gateway_password: <leave empty to auto-generate, or fill manually>
144
+ hf_token: <your HF_TOKEN, or leave empty to reuse local login>
145
+ configure_custom_llm: no
146
+ openclaw_sshx_auto_start: true
147
+ bt_panel_port: 7860
148
+ bt_panel_username: btadmin
149
+ bt_panel_password: <leave empty to auto-generate, or fill manually>
150
+ proceed_with_settings: yes
151
+ ```
152
+
153
+ ---
154
+
155
+ ## 4. Pre-Deployment Requirements
156
+
157
+ The script depends on the following commands:
158
+
159
+ ```bash
160
+ git --version
161
+ hf version
162
+ python3 --version
163
+ ```
164
+
165
+ Also requires Python package:
166
+
167
+ ```bash
168
+ python3 -c "import huggingface_hub" >/dev/null 2>&1 || \
169
+ python3 -m pip install --user 'huggingface_hub[cli]'
170
+ ```
171
+
172
+ ---
173
+
174
+ ## 5. Key Variables & Secrets
175
+
176
+ In Space's `Settings -> Variables and secrets`, at minimum you need:
177
+
178
+ - Variable: `OPENCLAW_BACKUP_DATASET_REPO` (format: `username/dataset-name`)
179
+ - Secret: `HF_TOKEN` (needs write permission to the backup Dataset)
180
+ - Secret: `OPENCLAW_GATEWAY_TOKEN` (recommended)
181
+ - Secret: `OPENCLAW_GATEWAY_PASSWORD` (optional)
182
+ - Variable: `BT_PANEL_PORT` (default `7860`)
183
+ - Variable: `BT_PANEL_USERNAME` (default `btadmin`)
184
+ - Secret: `BT_PANEL_PASSWORD` (BT Panel password)
185
+
186
+ If you use `bootstrap-hf.sh` / `bootstrap-hf.ps1`, the above will be configured automatically.
187
+
188
+ ### Optional: Pre-configure LLM (all three must be provided together)
189
+
190
+ - `OPENCLAW_LLM_BASE_URL`
191
+ - `OPENCLAW_LLM_MODEL`
192
+ - `OPENCLAW_LLM_API_KEY`
193
+
194
+ If only 1-2 of them are filled, the entrypoint script will skip model pre-configuration.
195
+
196
+ ### Common Optional Variables
197
+
198
+ | Variable | Default | Description |
199
+ |----------|---------|-------------|
200
+ | `OPENCLAW_VERSION` | `latest` | OpenClaw version |
201
+ | `OPENCLAW_BACKUP_CRON` | `*/30 * * * *` | Backup interval (every 30 min by default) |
202
+ | `OPENCLAW_BACKUP_KEEP_COUNT` | `24` | Number of latest backups to keep |
203
+ | `OPENCLAW_SSHX_AUTO_START` | `false` | Set to `true` to auto-start sshx |
204
+ | `OPENCLAW_GATEWAY_PORT` | `18789` | Gateway listening port |
205
+ | `BT_PANEL_PORT` | `7860` | BT Panel listening port |
206
+ | `BT_PANEL_USERNAME` | `btadmin` | BT Panel username (lowercase letter start) |
207
+ | `BT_PANEL_PASSWORD` | auto-generated | BT Panel password |
208
+
209
+ ---
210
+
211
+ ## 6. What the Script Will Ask You
212
+
213
+ Following the flow, main inputs are:
214
+
215
+ 1. `space_name` (default `openclaw-hf`)
216
+ 2. `dataset_name` (default `<space_name>-backup`)
217
+ 3. `OPENCLAW_VERSION` (default auto-detect latest version)
218
+ 4. `OPENCLAW_GATEWAY_TOKEN` (can leave empty for auto-generated 32-char random value)
219
+ 5. `OPENCLAW_GATEWAY_PASSWORD` (can leave empty for auto-generated 16-char random value)
220
+ 6. `HF_TOKEN` (can leave empty, reuse locally logged-in token)
221
+ 7. Whether to configure LLM immediately (all three must be filled for it to take effect)
222
+ 8. If not configuring LLM, whether to enable `OPENCLAW_SSHX_AUTO_START`
223
+ 9. **BT Panel port** (default `7860`)
224
+ 10. **BT Panel username** (must start with lowercase letter, only lowercase letters and numbers, 3-32 chars)
225
+ 11. **BT Panel password** (can leave empty for auto-generation)
226
+ 12. Final confirmation: `Proceed with these settings?` (selecting `no` will exit without remote changes)
227
+
228
+ If token/password is auto-generated by the script, it will be printed at the end. Please save it promptly.
229
+
230
+ ---
231
+
232
+ ## 7. How to Verify After Deployment
233
+
234
+ Assuming Space repo is `<owner>/<space_name>`, available URLs:
235
+
236
+ | Service | URL |
237
+ |---------|-----|
238
+ | BT Panel Admin | `https://<owner>-<space_name>.hf.space:7860` |
239
+ | BT Panel Health | `https://<owner>-<space_name>.hf.space` |
240
+ | OpenClaw Gateway | `https://<owner>-<space_name>.hf.space:18789` |
241
+ | Space Page | `https://huggingface.co/spaces/<owner>/<space_name>` |
242
+
243
+ For example:
244
+
245
+ ```bash
246
+ OPENCLAW_HF_SPACE_ID="yourname/openclaw-hf"
247
+ SPACE_HOST="${OPENCLAW_HF_SPACE_ID/\//-}.hf.space"
248
+ echo "BT Panel: https://${SPACE_HOST}:7860"
249
+ echo "Gateway: https://${SPACE_HOST}:18789"
250
+ ```
251
+
252
+ > **Note**: Some network environments may restrict direct access to port `:18789`. The BT Panel admin interface (7860) is the primary access entry point.
253
+
254
+ ---
255
+
256
+ ## 8. BT Panel Usage Guide
257
+
258
+ ### Login to BT Panel
259
+
260
+ 1. After deployment completes, wait for container to start (~2-5 minutes)
261
+ 2. Visit `https://<owner>-<space_name>.hf.space:7860`
262
+ 3. Login with the `BT_PANEL_USERNAME` and `BT_PANEL_PASSWORD` set during deployment
263
+
264
+ > On first login, you may need to wait for BT Panel service to fully start. If the page is inaccessible, please try again later.
265
+
266
+ ### BT Panel Security Recommendations
267
+
268
+ - After deployment, it is recommended to modify `BT_PANEL_PASSWORD` in `Settings -> Variables and secrets`
269
+ - Avoid exposing BT Panel admin interface to the public internet
270
+ - `BT_PANEL_USERNAME` must conform to rules: start with lowercase letter, only lowercase letters and numbers
271
+
272
+ ---
273
+
274
+ ## 9. How to Do OpenClaw Initial Configuration
275
+
276
+ 1. Open Hugging Face Space page, go to container logs, find the temporary access link output by `sshx`
277
+ 2. Open that link in browser to enter container shell, execute `openclaw onboard` and follow the guide
278
+ 3. During onboarding, OpenClaw may restart, and the `sshx` link may also change; if current link expires, go back to logs to get the new link and continue
279
+ 4. Official wizard reference: [https://docs.openclaw.ai/start/wizard](https://docs.openclaw.ai/start/wizard)
280
+ 5. After configuration is complete, remember to go back to `Settings -> Variables and secrets`, change `OPENCLAW_SSHX_AUTO_START` to `false` (or delete this variable), then restart Space to turn off `sshx`
281
+
282
+ If you modified OpenClaw configuration and want it to take effect immediately, you can restart the corresponding process (example):
283
+
284
+ ```bash
285
+ ps -ef | grep 'openclaw-gateway' | grep -v 'grep' | awk '{print $2}' | xargs -I{} kill {}
286
+ ```
287
+
288
+ ---
289
+
290
+ ## 10. Backup & Restore Mechanism
291
+
292
+ The data lifecycle of this project is as follows:
293
+
294
+ - **Startup Restore**: On container startup, it fetches `latest-backup.json` from Dataset to locate the latest backup and restore
295
+ - **Scheduled Backup**: Upload periodically based on `OPENCLAW_BACKUP_CRON` (every 30 minutes by default)
296
+ - **Shutdown Backup**: Do a final backup when container receives stop signal before exiting
297
+ - **Artifacts include**:
298
+ - `backups/openclaw-backup-<timestamp>.tar.gz`
299
+ - `latest-backup.json`
300
+ - **Retention Policy**: Only keep the latest `OPENCLAW_BACKUP_KEEP_COUNT` timestamped archives (default `24`)
301
+
302
+ ---
303
+
304
+ ## 11. Keep-Alive & 24/7 Running Suggestions
305
+
306
+ - Free `cpu-basic` will sleep (currently after about 48 hours of no access)
307
+ - Strict 24/7 requires paid hardware, set `Sleep time` to `Never`
308
+ - For private Space health checks, must include `Authorization: Bearer <HF_TOKEN>`, otherwise you'll see 404 (normal access control behavior)
309
+
310
+ If you just want to reduce cold start probability, you can periodically request the BT Panel health check address; but on free tier, this is not an officially guaranteed always-on solution.
311
+
312
+ ### Using cron-job.org for Keep-Alive
313
+
314
+ If you don't want to maintain scheduled tasks yourself, you can use [https://cron-job.org/](https://cron-job.org/).
315
+
316
+ According to their official FAQ ([https://cron-job.org/faq/](https://cron-job.org/faq/)), they support custom headers, HTTPS, and up to once per minute calls. For OpenClaw Space, pinging once every 10-15 minutes is usually sufficient.
317
+
318
+ #### 1. Create a Task
319
+
320
+ 1. Open [https://cron-job.org/](https://cron-job.org/) and register/login (console is at `console.cron-job.org`)
321
+ 2. Create new HTTP cron job
322
+ 3. URL: `https://<owner>-<space_name>.hf.space` (BT Panel health check)
323
+ 4. Method: `GET`
324
+ 5. Schedule: recommend once every 10-15 minutes
325
+
326
+ #### 2. Add Header for Private Space
327
+
328
+ ```
329
+ Authorization: Bearer <HF_TOKEN>
330
+ ```
331
+
332
+ It's recommended to create a separate low-permission token for keep-alive only, don't reuse the high-permission backup token.
333
+
334
+ #### 3. Do Test Run Before Enabling Alerts
335
+
336
+ After creating the task, test it manually once first, then enable failure notifications (email, etc.) to be notified promptly when Space is unavailable or token expires.
337
+
338
+ ---
339
+
340
+ ## 12. sshx Usage (Optional)
341
+
342
+ `sshx` is pre-installed in the image (along with `vim`, `opencode`, `codex`, `claude`).
343
+
344
+ ### 1. Auto Start (Environment Variable)
345
+
346
+ ```bash
347
+ OPENCLAW_SSHX_AUTO_START=true
348
+ ```
349
+
350
+ ### 2. Manual Start Inside Container
351
+
352
+ ```bash
353
+ sshx
354
+ ```
355
+
356
+ ### 3. Start via OpenClaw Terminal in Background
357
+
358
+ ```bash
359
+ nohup sshx >/proc/1/fd/1 2>/proc/1/fd/2 &
360
+ ```
361
+
362
+ If you temporarily need `sshx` later, you can also let OpenClaw start it via IM; after use, remember to let OpenClaw turn off `sshx` via IM as well.
363
+
364
+ ### Cleanup After Use
365
+
366
+ ```bash
367
+ pgrep -fa sshx
368
+ pkill -TERM -f '(^|/)sshx($| )'
369
+ ```
370
+
371
+ ---
372
+
373
+ ## 13. Process Management
374
+
375
+ This project uses **Supervisord** to manage processes (PM2 has been removed):
376
+
377
+ ```
378
+ PID 1 (bt-panel)
379
+ └── supervisord
380
+ ├── cron
381
+ └── openclaw-gateway
382
+ ```
383
+
384
+ - **Supervisord**: as a child process of bt-panel, correctly managed
385
+ - **cron**: scheduled backup tasks (runs every 30 minutes by default)
386
+ - **openclaw-gateway**: OpenClaw Gateway service, listening on port 18789
387
+ - **PM2**: removed from this project, no longer used for managing Gateway
388
+
389
+ ### Check Process Status
390
+
391
+ Inside container:
392
+
393
+ ```bash
394
+ supervisorctl status
395
+ ```
396
+
397
+ ### View Logs
398
+
399
+ ```bash
400
+ # supervisord logs
401
+ tail -f /var/log/hf-entrypoint/supervisord-stdout.log
402
+
403
+ # cron logs
404
+ tail -f /var/log/hf-entrypoint/cron-stdout.log
405
+
406
+ # openclaw-gateway logs
407
+ tail -f /var/log/hf-entrypoint/openclaw-gateway-stdout.log
408
+ ```
409
+
410
+ ---
411
+
412
+ ## 14. Summary
413
+
414
+ If your goal is "quickly running a restorable OpenClaw instance on Hugging Face", this project has covered the key aspects: deployment, configuration, backup, restore, keep-alive, and remote debugging, with BT Panel providing a more user-friendly web management interface.
415
+
416
+ It's recommended to first use the repository's `bootstrap-hf` script to get the default configuration working, then add LLM, keep-alive, and `sshx` strategies as needed.
417
+
418
+ ---
419
+
420
+ ## Related Links
421
+
422
+ - Repository: [https://github.com/ClawCopilot/Openclaw-Hf-Docker](https://github.com/ClawCopilot/Openclaw-Hf-Docker)
423
+ - Original Article: [https://tenfy.cn/posts/openclaw-hf-space-deploy/](https://tenfy.cn/posts/openclaw-hf-space-deploy/)
424
+ - OpenClaw Official Wizard: [https://docs.openclaw.ai/start/wizard](https://docs.openclaw.ai/start/wizard)
425
+ - BT Panel Official Site: [https://www.bt.cn/](https://www.bt.cn/)
DEPLOY_GUIDE_zh.md ADDED
@@ -0,0 +1,425 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # 用 Hugging Face Spaces 部署 OpenClaw(含自动备份与恢复)
2
+
3
+ > **来源**: [tenfy's blog - 用 Hugging Face Spaces 部署 OpenClaw(含自动备份与恢复)](https://tenfy.cn/posts/openclaw-hf-space-deploy/)(经本项目定制改编)
4
+ >
5
+ > **原文作者**: tenfyzhong([https://tenfy.cn](https://tenfy.cn))
6
+ >
7
+ > **改编作者**: ClawCopilot Team([https://github.com/ClawCopilot/Openclaw-Hf-Docker](https://github.com/ClawCopilot/Openclaw-Hf-Docker))
8
+ >
9
+ > **原文日期**: 2026-03-25
10
+
11
+ ---
12
+
13
+ ## 这个方案解决了什么问题
14
+
15
+ 本项目在 tenfy's `openclaw-hf` 基础上,引入 **BT Panel(宝塔面板)** 作为 PID 1,提供更易用的 Web 管理界面:
16
+
17
+ - 基于 `ubuntu:24.04` 构建 OpenClaw 容器镜像
18
+ - **BT Panel(宝塔面板)** 作为容器 PID 1,监听端口 `7860`(Hugging Face Space 默认端口),提供 Web 管理界面
19
+ - **OpenClaw Gateway** 运行在独立端口 `18789`(默认)
20
+ - 支持通过环境变量预置第三方 OpenAI 兼容模型(`base_url + api_key`)
21
+ - OpenClaw 配置和工作目录存储在 `/root/.openclaw`
22
+ - 启动时自动从 HF Dataset 恢复最近备份
23
+ - 通过 `cron` 定时备份到 HF Dataset
24
+ - 通过 **Supervisord** 管理 `cron` 和 `openclaw-gateway` 进程
25
+ - 镜像内预装 `vim`、`opencode`、`codex`、`claude`、`sshx`,方便容器内排障与交互
26
+ - 内置 DDNS-GO,支持动态 DNS 更新(非关键功能,安装失败不影响构建)
27
+
28
+ ---
29
+
30
+ ## 容器架构
31
+
32
+ ```
33
+ PID 1 (bt-panel)
34
+ └── /usr/local/bin/hf-entrypoint.sh
35
+ ├── /usr/bin/supervisord
36
+ │ ├── cron(定时备份任务)
37
+ │ └── openclaw-gateway(OpenClaw Gateway,端口 18789)
38
+ └── node hf-server.js(容器健康检查)
39
+ ```
40
+
41
+ - **BT Panel**:端口 `7860`,Web 管理界面
42
+ - **OpenClaw Gateway**:端口 `18789`,AI Gateway API
43
+ - **Supervisord**:进程管理器,同时管理 `cron` 和 `openclaw-gateway`
44
+ - **健康检查**:`curl http://localhost:7860`,由 Hugging Face 平台调用
45
+
46
+ ---
47
+
48
+ ## 一、先注册 Hugging Face 并生成 HF_TOKEN
49
+
50
+ 如果你还没有 Hugging Face 账号,先去注册:[https://huggingface.co/join](https://huggingface.co/join)
51
+
52
+ 账号准备好后,按下面步骤创建 token(用于脚本配置备份与 Space):
53
+
54
+ 1. 打开 Hugging Face Token 页面:[https://huggingface.co/settings/tokens](https://huggingface.co/settings/tokens)
55
+ 2. 创建一个新 token(建议命名为 `deploy-openclaw`)
56
+ 3. 授予所需权限(需要有创建 Space 和写 Dataset 的权限)
57
+ 4. 复制 token(形如 `hf_xxx...`)
58
+
59
+ 本地可先登录并校验:
60
+
61
+ ```bash
62
+ hf auth login
63
+ hf auth whoami
64
+ ```
65
+
66
+ `bootstrap-hf.sh` 提示 `HF_TOKEN for backup dataset` 时:
67
+ - 可以直接粘贴新建 token
68
+ - 也可以留空,让脚本复用当前 `hf auth login` 的本地凭证
69
+
70
+ ---
71
+
72
+ ## 二、一键部署(推荐)
73
+
74
+ 仓库已提供交互式脚本,建议优先走脚本,不要手搓流程。
75
+
76
+ ### 1. 克隆仓库
77
+
78
+ ```bash
79
+ git clone https://github.com/ClawCopilot/Openclaw-Hf-Docker.git
80
+ cd Openclaw-Hf-Docker
81
+ ```
82
+
83
+ ### 2. 运行引导脚本
84
+
85
+ macOS / Linux:
86
+
87
+ ```bash
88
+ ./scripts/bootstrap-hf.sh
89
+ ```
90
+
91
+ Windows PowerShell:
92
+
93
+ ```powershell
94
+ powershell -ExecutionPolicy ByPass -File .\scripts\bootstrap-hf.ps1
95
+ ```
96
+
97
+ ### 3. 脚本会自动完成
98
+
99
+ - 检查并安装 `hf` CLI(如缺失)
100
+ - 检查 Hugging Face 登录状态(需要时触发 `hf auth login`)
101
+ - 询问并确认部署参数(包含一次最终 `Proceed with these settings?` 确认)
102
+ - 询问 BT Panel 端口、用户名和密码
103
+ - 创建私有 Space 与私有备份 Dataset,并上传当前仓库到 Space
104
+ - 自动写入 Variables / Secrets(含备份、网关凭据、BT Panel 配置等)
105
+ - 默认写入安全相关变量:
106
+ - `OPENCLAW_GATEWAY_CONTROLUI_ALLOW_INSECURE_AUTH=false`
107
+ - `OPENCLAW_GATEWAY_CONTROLUI_DANGEROUSLY_DISABLE_DEVICE_AUTH=false`
108
+
109
+ ### 4. BT Panel 用户名规范
110
+
111
+ **必须满足以下条件**:
112
+ - 以小写字母开头
113
+ - 只能包含小写字母和数字
114
+ - 长度 3-32 位
115
+
116
+ 例如:`btadmin`、`mypanel123`、`openclawspace`
117
+
118
+ ---
119
+
120
+ ## 三、使用 Agent 自动部署
121
+
122
+ 适合不想手动点配置的用户。可以直接发给 AI Agent:
123
+
124
+ ```
125
+ Please deploy OpenClaw to Hugging Face by strictly following the deployment skill in https://github.com/tenfyzhong/openclaw-hf/blob/main/SKILL.md
126
+ ```
127
+
128
+ Agent 通常会做这些事:
129
+
130
+ 1. 先检查依赖(`git`、`hf`、`python3`、`huggingface_hub`)
131
+ 2. 按固定顺序向你收集部署参数
132
+ 3. 调用 `bootstrap-hf.sh` / `bootstrap-hf.ps1` 执行部署
133
+ 4. 回传 Space / Dataset / App / Health 地址与版本信息
134
+ 5. 如果网关凭据是自动生成的,也会一并回传
135
+
136
+ 如果你希望一次性把参数给全,可以发这个模板给 Agent:
137
+
138
+ ```
139
+ space_name: openclaw-hf
140
+ dataset_name: openclaw-hf-backup
141
+ openclaw_version: latest
142
+ gateway_token: <留空自动生成或手动填写>
143
+ gateway_password: <留空自动生成或手动填写>
144
+ hf_token: <���的 HF_TOKEN,或留空复用本地登录>
145
+ configure_custom_llm: no
146
+ openclaw_sshx_auto_start: true
147
+ bt_panel_port: 7860
148
+ bt_panel_username: btadmin
149
+ bt_panel_password: <留空自动生成或手动填写>
150
+ proceed_with_settings: yes
151
+ ```
152
+
153
+ ---
154
+
155
+ ## 四、部署前准备
156
+
157
+ 脚本依赖以下命令:
158
+
159
+ ```bash
160
+ git --version
161
+ hf version
162
+ python3 --version
163
+ ```
164
+
165
+ 还需要 Python 包:
166
+
167
+ ```bash
168
+ python3 -c "import huggingface_hub" >/dev/null 2>&1 || \
169
+ python3 -m pip install --user 'huggingface_hub[cli]'
170
+ ```
171
+
172
+ ---
173
+
174
+ ## 五、关键变量与密钥
175
+
176
+ 在 Space 的 `Settings -> Variables and secrets` 中,至少要有:
177
+
178
+ - 变量: `OPENCLAW_BACKUP_DATASET_REPO`(格式:`username/dataset-name`)
179
+ - 密钥: `HF_TOKEN`(需要对备份 Dataset 有写权限)
180
+ - 密钥: `OPENCLAW_GATEWAY_TOKEN`(推荐)
181
+ - 密钥: `OPENCLAW_GATEWAY_PASSWORD`(可选)
182
+ - 变量: `BT_PANEL_PORT`(默认 `7860`)
183
+ - 变量: `BT_PANEL_USERNAME`(默认 `btadmin`)
184
+ - 密钥: `BT_PANEL_PASSWORD`(BT Panel 密码)
185
+
186
+ 如果你使用 `bootstrap-hf.sh` / `bootstrap-hf.ps1`,以上会自动配置。
187
+
188
+ ### 可选:预置 LLM(三项必须同时提供)
189
+
190
+ - `OPENCLAW_LLM_BASE_URL`
191
+ - `OPENCLAW_LLM_MODEL`
192
+ - `OPENCLAW_LLM_API_KEY`
193
+
194
+ 只填其中 1-2 项不会生效,入口脚本会跳过模型预配置。
195
+
196
+ ### 常见可选变量
197
+
198
+ | 变量 | 默认值 | 说明 |
199
+ |------|--------|------|
200
+ | `OPENCLAW_VERSION` | `latest` | OpenClaw 版本 |
201
+ | `OPENCLAW_BACKUP_CRON` | `*/30 * * * *` | 备份周期(默认每 30 分钟) |
202
+ | `OPENCLAW_BACKUP_KEEP_COUNT` | `24` | 保留最新备份数量 |
203
+ | `OPENCLAW_SSHX_AUTO_START` | `false` | 设为 `true` 自动启动 sshx |
204
+ | `OPENCLAW_GATEWAY_PORT` | `18789` | Gateway 监听端口 |
205
+ | `BT_PANEL_PORT` | `7860` | BT Panel 监听端口 |
206
+ | `BT_PANEL_USERNAME` | `btadmin` | BT Panel 用户名(小写字母开头) |
207
+ | `BT_PANEL_PASSWORD` | 自动生成 | BT Panel 密码 |
208
+
209
+ ---
210
+
211
+ ## 六、脚本会问哪些问题
212
+
213
+ 按流程,主要输入如下:
214
+
215
+ 1. `space_name`(默认 `openclaw-hf`)
216
+ 2. `dataset_name`(默认 `<space_name>-backup`)
217
+ 3. `OPENCLAW_VERSION`(默认自动探测最新版本)
218
+ 4. `OPENCLAW_GATEWAY_TOKEN`(可留空自动生成 32 位随机值)
219
+ 5. `OPENCLAW_GATEWAY_PASSWORD`(可留空自动生成 16 位随机值)
220
+ 6. `HF_TOKEN`(可留空,复用本地已登录 token)
221
+ 7. 是否立即配置 LLM(三项全填才生效)
222
+ 8. 如果不配 LLM,是否启用 `OPENCLAW_SSHX_AUTO_START`
223
+ 9. **BT Panel 端口**(默认 `7860`)
224
+ 10. **BT Panel 用户名**(必须以小写字母开头,只能包含小写字母和数字,长度 3-32 位)
225
+ 11. **BT Panel 密码**(可留空自动生成)
226
+ 12. 最终确认:`Proceed with these settings?`(选 `no` 会退出,不做远端变更)
227
+
228
+ 如果 token/password 由脚本自动生成,会在结束时打印出来,请及时保存。
229
+
230
+ ---
231
+
232
+ ## 七、部署完成后如何验证
233
+
234
+ 假设 Space repo 是 `<owner>/<space_name>`,可用地址如下:
235
+
236
+ | 服务 | 地址 |
237
+ |------|------|
238
+ | BT Panel 管理界面 | `https://<owner>-<space_name>.hf.space:7860` |
239
+ | BT Panel 健康检查 | `https://<owner>-<space_name>.hf.space` |
240
+ | OpenClaw Gateway | `https://<owner>-<space_name>.hf.space:18789` |
241
+ | Space 页面 | `https://huggingface.co/spaces/<owner>/<space_name>` |
242
+
243
+ 例如:
244
+
245
+ ```bash
246
+ OPENCLAW_HF_SPACE_ID="yourname/openclaw-hf"
247
+ SPACE_HOST="${OPENCLAW_HF_SPACE_ID/\//-}.hf.space"
248
+ echo "BT Panel: https://${SPACE_HOST}:7860"
249
+ echo "Gateway: https://${SPACE_HOST}:18789"
250
+ ```
251
+
252
+ > **注意**:部分网络环境下直接访问 `:18789` 端口可能受限。BT Panel 管理界面(7860)是主要访问入口。
253
+
254
+ ---
255
+
256
+ ## 八、BT Panel 使用说明
257
+
258
+ ### 登录 BT Panel
259
+
260
+ 1. 部署完成后,等待容器启动(约 2-5 分钟)
261
+ 2. 访问 `https://<owner>-<space_name>.hf.space:7860`
262
+ 3. 使用部署时设置的 `BT_PANEL_USERNAME` 和 `BT_PANEL_PASSWORD` 登录
263
+
264
+ > 首次登录可能需要等待 BT Panel 服务完全启动,如果页面无法访问,请稍后再试。
265
+
266
+ ### BT Panel 安全建议
267
+
268
+ - 部署完成后,建议在 `Settings -> Variables and secrets` 中修改 `BT_PANEL_PASSWORD`
269
+ - 避免在公网暴露 BT Panel 管理界面
270
+ - `BT_PANEL_USERNAME` 必须符合规范:以小写字母开头,只能包含小写字母和数字
271
+
272
+ ---
273
+
274
+ ## 九、如何进行 OpenClaw 首次配置
275
+
276
+ 1. 打开 Hugging Face Space 页面,进入容器日志,找到 `sshx` 输出的临时访问链接
277
+ 2. 在浏览器打开该链接进入容器 shell,执行 `openclaw onboard` 按引导完成配置
278
+ 3. onboarding 过程中 OpenClaw 可能重启,`sshx` 链接也可能变化;若当前链接失效,回到日志获取新链接继续执行
279
+ 4. 官方向导可参考:[https://docs.openclaw.ai/start/wizard](https://docs.openclaw.ai/start/wizard)
280
+ 5. 配置完成后,记得回到 `Settings -> Variables and secrets`,将 `OPENCLAW_SSHX_AUTO_START` 改为 `false`(或删除该变量),然后重启 Space,把 `sshx` 关闭
281
+
282
+ 如果你修改了 OpenClaw 配置并希望立即生效,可以重启对应进程(示例):
283
+
284
+ ```bash
285
+ ps -ef | grep 'openclaw-gateway' | grep -v 'grep' | awk '{print $2}' | xargs -I{} kill {}
286
+ ```
287
+
288
+ ---
289
+
290
+ ## 十、备份与恢复机制
291
+
292
+ 本项目的数据生命周期如下:
293
+
294
+ - **启动恢复**:容器启动时从 Dataset 获取 `latest-backup.json` 来定位最新备份并恢复
295
+ - **定时备份**:根据 `OPENCLAW_BACKUP_CRON` 周期上传(默认每 30 分钟)
296
+ - **退出兜底**:容器收到停止信号时再做一次最终备份
297
+ - **产物包含**:
298
+ - `backups/openclaw-backup-<timestamp>.tar.gz`
299
+ - `latest-backup.json`
300
+ - **保留策略**:只保留最近 `OPENCLAW_BACKUP_KEEP_COUNT` 个时间戳归档(默认 `24`)
301
+
302
+ ---
303
+
304
+ ## 十一、Keep-Alive 与 24/7 运行建议
305
+
306
+ - 免费 `cpu-basic` 会休眠(当前一般约 48 小时无访问后)
307
+ - 严格 24/7 需要付费硬件,并把 `Sleep time` 设为 `Never`
308
+ - 私有 Space 做健康检查必须带 `Authorization: Bearer <HF_TOKEN>`,否则会看到 404(正常权限行为)
309
+
310
+ 如果你只是减少冷启动概率,可以定时请求 BT Panel 健康检查地址;在免费层这不是官方保证的常驻方案。
311
+
312
+ ### 使用 cron-job.org 做保活
313
+
314
+ 如果你不想自己维护定时任务,可以用 [https://cron-job.org/](https://cron-job.org/)。
315
+
316
+ 根据其官方 FAQ([https://cron-job.org/faq/](https://cron-job.org/faq/)),支持自定义 Header、HTTPS,以及最高每分钟一次调用。对 OpenClaw Space 来说,每 10-15 分钟 ping 一次通常就够。
317
+
318
+ #### 1. 创建任务
319
+
320
+ 1. 打开 [https://cron-job.org/](https://cron-job.org/) 并注册/登录(控制台在 `console.cron-job.org`)
321
+ 2. 新建 HTTP cron job
322
+ 3. URL 填:`https://<owner>-<space_name>.hf.space`(BT Panel 健康检查)
323
+ 4. Method 选 `GET`
324
+ 5. 调度建议每 10-15 分钟一次
325
+
326
+ #### 2. 私有 Space 添加 Header
327
+
328
+ ```
329
+ Authorization: Bearer <HF_TOKEN>
330
+ ```
331
+
332
+ 建议单独创建一个仅用于保活的低权限 token,不要复用高权限备份 token。
333
+
334
+ #### 3. 先做 Test Run 再开告警
335
+
336
+ 创建任务后先手动测试一次,再启用失败通知(邮件等),方便第一时间发现 Space 不可用或 token 过期。
337
+
338
+ ---
339
+
340
+ ## 十二、sshx 用法(可选)
341
+
342
+ 镜像已预装 `sshx`(以及 `vim`、`opencode`、`codex`、`claude`)。
343
+
344
+ ### 1. 自动启动(环境变量)
345
+
346
+ ```bash
347
+ OPENCLAW_SSHX_AUTO_START=true
348
+ ```
349
+
350
+ ### 2. 容器内手动启动
351
+
352
+ ```bash
353
+ sshx
354
+ ```
355
+
356
+ ### 3. 让 OpenClaw 终端后台启动
357
+
358
+ ```bash
359
+ nohup sshx >/proc/1/fd/1 2>/proc/1/fd/2 &
360
+ ```
361
+
362
+ 后续如果临时需要 `sshx`,也可以通过 IM 让 OpenClaw 启动一个;使用完成后,记得再通过 IM 让 OpenClaw 把 `sshx` 关掉。
363
+
364
+ ### 使用结束后建议及时清理
365
+
366
+ ```bash
367
+ pgrep -fa sshx
368
+ pkill -TERM -f '(^|/)sshx($| )'
369
+ ```
370
+
371
+ ---
372
+
373
+ ## 十三、进程管理说明
374
+
375
+ 本项目使用 **Supervisord** 管理进程,而非 PM2:
376
+
377
+ ```
378
+ PID 1 (bt-panel)
379
+ └── supervisord
380
+ ├── cron
381
+ └── openclaw-gateway
382
+ ```
383
+
384
+ - **Supervisord**:作为 bt-panel 的子进程,被正确管理
385
+ - **cron**:定时备份任务(每 30 分钟执行一次)
386
+ - **openclaw-gateway**:OpenClaw Gateway 服务,监听端口 18789
387
+ - **PM2**:已从本项目中移除,不再用于管理 Gateway
388
+
389
+ ### 查看进程状态
390
+
391
+ 容器内执行:
392
+
393
+ ```bash
394
+ supervisorctl status
395
+ ```
396
+
397
+ ### 查看日志
398
+
399
+ ```bash
400
+ # supervisord 日志
401
+ tail -f /var/log/hf-entrypoint/supervisord-stdout.log
402
+
403
+ # cron 日志
404
+ tail -f /var/log/hf-entrypoint/cron-stdout.log
405
+
406
+ # openclaw-gateway 日志
407
+ tail -f /var/log/hf-entrypoint/openclaw-gateway-stdout.log
408
+ ```
409
+
410
+ ---
411
+
412
+ ## 十四、总结
413
+
414
+ 如果你的目标是"在 Hugging Face 上快速跑起来一个可恢复的 OpenClaw 实例",本项目已经覆盖了部署、配置、备份、恢复、保活和远程调试这些关键环节,并且通过 BT Panel 提供了更易用的 Web 管理界面。
415
+
416
+ 建议优先使用仓库自带的 `bootstrap-hf` 脚本先跑通默认配置,再按需叠加 LLM、保活和 `sshx` 策略。
417
+
418
+ ---
419
+
420
+ ## 相关链接
421
+
422
+ - 仓库地址:[https://github.com/ClawCopilot/Openclaw-Hf-Docker](https://github.com/ClawCopilot/Openclaw-Hf-Docker)
423
+ - 原文链接:[https://tenfy.cn/posts/openclaw-hf-space-deploy/](https://tenfy.cn/posts/openclaw-hf-space-deploy/)
424
+ - OpenClaw 官方向导:[https://docs.openclaw.ai/start/wizard](https://docs.openclaw.ai/start/wizard)
425
+ - BT Panel 官网:[https://www.bt.cn/](https://www.bt.cn/)
Dockerfile ADDED
@@ -0,0 +1,537 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # syntax=docker/dockerfile:1.7
2
+ # enable BuildKit cache mounts
3
+ # use with: docker buildx build --load .
4
+
5
+ FROM ubuntu:24.04
6
+
7
+ ARG DEBIAN_FRONTEND=noninteractive
8
+
9
+ # OpenClaw version (build-time default: latest)
10
+ ARG OPENCLAW_VERSION
11
+ ENV OPENCLAW_VERSION=${OPENCLAW_VERSION:-latest}
12
+
13
+ # ============================================
14
+ # Runtime Override Variables
15
+ # docker run -e VAR=value or docker build --build-arg VAR=value
16
+ # ============================================
17
+
18
+ # ----- HuggingFace Core -----
19
+ ARG HF_TOKEN
20
+ ARG OPENCLAW_HF_SPACE_ID
21
+ ARG OPENCLAW_BACKUP_DATASET_REPO
22
+ ARG OPENCLAW_RESTORE_DATASET_REPO
23
+ ARG OPENCLAW_BACKUP_REPO_TYPE
24
+ ARG OPENCLAW_BACKUP_PATH_PREFIX
25
+
26
+ # ----- Backup Enable/Disable -----
27
+ ARG OPENCLAW_BACKUP_ENABLED
28
+ ARG OPENCLAW_BACKUP_NPM_ENABLED
29
+ ARG OPENCLAW_RESTORE_NPM_ENABLED
30
+
31
+ # ----- Backup Schedule -----
32
+ ARG OPENCLAW_BACKUP_CRON
33
+ ARG OPENCLAW_INCREMENTAL_BACKUP
34
+ ARG OPENCLAW_INCREMENTAL_INTERVAL_MINUTES
35
+ ARG OPENCLAW_FULL_BACKUP_INTERVAL_HOURS
36
+ ARG OPENCLAW_MAX_INCREMENTAL_BACKUPS
37
+
38
+ # ----- Backup Encryption -----
39
+ ARG OPENCLAW_BACKUP_ENCRYPTION_ENABLED
40
+ ARG OPENCLAW_BACKUP_ENCRYPTION_PASSWORD
41
+
42
+ # ----- Backup Retention & Compression -----
43
+ ARG OPENCLAW_BACKUP_KEEP_COUNT
44
+ ARG OPENCLAW_BACKUP_COMPRESSION_LEVEL
45
+ ARG OPENCLAW_BACKUP_SPLIT_SIZE
46
+ ARG OPENCLAW_BACKUP_SIZE_WARNING_MB
47
+
48
+ # ----- Dynamic Backup Strategy -----
49
+ ARG OPENCLAW_DYNAMIC_BACKUP
50
+ ARG OPENCLAW_DYNAMIC_SMALL_THRESHOLD_MB
51
+ ARG OPENCLAW_DYNAMIC_MEDIUM_THRESHOLD_MB
52
+ ARG OPENCLAW_DYNAMIC_HIGH_CHANGE_RATE
53
+ ARG OPENCLAW_DYNAMIC_LOW_CHANGE_RATE
54
+ ARG OPENCLAW_DYNAMIC_MIN_CHANGED_FILES
55
+ ARG OPENCLAW_DYNAMIC_MIN_CHANGED_SIZE_KB
56
+
57
+ # ----- Backup Extra Paths -----
58
+ ARG OPENCLAW_BACKUP_EXTRA_DIRS
59
+ ARG OPENCLAW_BACKUP_EXTRA_FILES
60
+
61
+ # ----- Restore & Watchdog -----
62
+ ARG OPENCLAW_RESTORE_TIMEOUT
63
+ ARG WATCHDOG_INTERVAL
64
+ ARG MAX_BACKUP_AGE_MINUTES
65
+ ARG FORCE_BACKUP_INTERVAL
66
+
67
+ # ----- SSH & SSHX -----
68
+ ARG OPENCLAW_SSH_AGENT_AUTOSTART
69
+ ARG OPENCLAW_SSHX_AUTO_START
70
+ ARG ROOT_PASSWORD
71
+
72
+ # ----- LLM Configuration -----
73
+ ARG OPENCLAW_LLM_BASE_URL
74
+ ARG OPENCLAW_LLM_MODEL
75
+
76
+ # ----- BT Panel -----
77
+ ARG BT_PANEL_PORT
78
+ ARG BT_PANEL_USERNAME
79
+ ARG BT_PANEL_PASSWORD
80
+ ARG BT_PANEL_SAFE_PATH
81
+ ARG BT_PANEL_TIMEZONE
82
+
83
+ # ----- Claude Code Model Router -----
84
+ ARG CCMR_ENABLED
85
+ ARG CCMR_PORT
86
+
87
+ # ============================================
88
+ # Environment Variables (with defaults)
89
+ # ============================================
90
+
91
+ # ----- HuggingFace Core -----
92
+ ENV HF_TOKEN=${HF_TOKEN:-}
93
+ ENV OPENCLAW_HF_SPACE_ID=${OPENCLAW_HF_SPACE_ID:-}
94
+ ENV OPENCLAW_BACKUP_DATASET_REPO=${OPENCLAW_BACKUP_DATASET_REPO:-}
95
+ ENV OPENCLAW_RESTORE_DATASET_REPO=${OPENCLAW_RESTORE_DATASET_REPO:-}
96
+ ENV OPENCLAW_BACKUP_REPO_TYPE=${OPENCLAW_BACKUP_REPO_TYPE:-dataset}
97
+ ENV OPENCLAW_BACKUP_PATH_PREFIX=${OPENCLAW_BACKUP_PATH_PREFIX:-backups}
98
+
99
+ # ----- Backup Enable/Disable -----
100
+ ENV OPENCLAW_BACKUP_ENABLED=${OPENCLAW_BACKUP_ENABLED:-false}
101
+ ENV OPENCLAW_BACKUP_NPM_ENABLED=${OPENCLAW_BACKUP_NPM_ENABLED:-false}
102
+ ENV OPENCLAW_RESTORE_NPM_ENABLED=${OPENCLAW_RESTORE_NPM_ENABLED:-false}
103
+
104
+ # ----- Backup Schedule -----
105
+ ENV OPENCLAW_BACKUP_CRON=${OPENCLAW_BACKUP_CRON:-"*/10 * * * *"}
106
+ ENV OPENCLAW_INCREMENTAL_BACKUP=${OPENCLAW_INCREMENTAL_BACKUP:-true}
107
+ ENV OPENCLAW_INCREMENTAL_INTERVAL_MINUTES=${OPENCLAW_INCREMENTAL_INTERVAL_MINUTES:-15}
108
+ ENV OPENCLAW_FULL_BACKUP_INTERVAL_HOURS=${OPENCLAW_FULL_BACKUP_INTERVAL_HOURS:-1}
109
+ ENV OPENCLAW_MAX_INCREMENTAL_BACKUPS=${OPENCLAW_MAX_INCREMENTAL_BACKUPS:-15}
110
+
111
+ # ----- Backup Encryption -----
112
+ ENV OPENCLAW_BACKUP_ENCRYPTION_ENABLED=${OPENCLAW_BACKUP_ENCRYPTION_ENABLED:-false}
113
+ ENV OPENCLAW_BACKUP_ENCRYPTION_PASSWORD=${OPENCLAW_BACKUP_ENCRYPTION_PASSWORD:-}
114
+
115
+ # ----- Backup Retention & Compression -----
116
+ ENV OPENCLAW_BACKUP_KEEP_COUNT=${OPENCLAW_BACKUP_KEEP_COUNT:-48}
117
+ ENV OPENCLAW_BACKUP_COMPRESSION_LEVEL=${OPENCLAW_BACKUP_COMPRESSION_LEVEL:-6}
118
+ ENV OPENCLAW_BACKUP_SPLIT_SIZE=${OPENCLAW_BACKUP_SPLIT_SIZE:-500M}
119
+ ENV OPENCLAW_BACKUP_SIZE_WARNING_MB=${OPENCLAW_BACKUP_SIZE_WARNING_MB:-1500}
120
+
121
+ # ----- Dynamic Backup Strategy -----
122
+ ENV OPENCLAW_DYNAMIC_BACKUP=${OPENCLAW_DYNAMIC_BACKUP:-true}
123
+ ENV OPENCLAW_DYNAMIC_SMALL_THRESHOLD_MB=${OPENCLAW_DYNAMIC_SMALL_THRESHOLD_MB:-500}
124
+ ENV OPENCLAW_DYNAMIC_MEDIUM_THRESHOLD_MB=${OPENCLAW_DYNAMIC_MEDIUM_THRESHOLD_MB:-2000}
125
+ ENV OPENCLAW_DYNAMIC_HIGH_CHANGE_RATE=${OPENCLAW_DYNAMIC_HIGH_CHANGE_RATE:-10}
126
+ ENV OPENCLAW_DYNAMIC_LOW_CHANGE_RATE=${OPENCLAW_DYNAMIC_LOW_CHANGE_RATE:-2}
127
+ ENV OPENCLAW_DYNAMIC_MIN_CHANGED_FILES=${OPENCLAW_DYNAMIC_MIN_CHANGED_FILES:-5}
128
+ ENV OPENCLAW_DYNAMIC_MIN_CHANGED_SIZE_KB=${OPENCLAW_DYNAMIC_MIN_CHANGED_SIZE_KB:-100}
129
+
130
+ # ----- Backup Extra Paths -----
131
+ ENV OPENCLAW_BACKUP_EXTRA_DIRS=${OPENCLAW_BACKUP_EXTRA_DIRS:-}
132
+ ENV OPENCLAW_BACKUP_EXTRA_FILES=${OPENCLAW_BACKUP_EXTRA_FILES:-}
133
+
134
+ # ----- Restore & Watchdog -----
135
+ ENV OPENCLAW_RESTORE_TIMEOUT=${OPENCLAW_RESTORE_TIMEOUT:-5400}
136
+ ENV WATCHDOG_INTERVAL=${WATCHDOG_INTERVAL:-600}
137
+ ENV MAX_BACKUP_AGE_MINUTES=${MAX_BACKUP_AGE_MINUTES:-30}
138
+ ENV FORCE_BACKUP_INTERVAL=${FORCE_BACKUP_INTERVAL:-14400}
139
+
140
+ # ----- SSH & SSHX -----
141
+ ENV OPENCLAW_SSH_AGENT_AUTOSTART=${OPENCLAW_SSH_AGENT_AUTOSTART:-true}
142
+ ENV OPENCLAW_SSHX_AUTO_START=${OPENCLAW_SSHX_AUTO_START:-false}
143
+ ENV ROOT_PASSWORD=${ROOT_PASSWORD:-"lauer3912"}
144
+
145
+ # ----- LLM Configuration -----
146
+ ENV OPENCLAW_LLM_BASE_URL=${OPENCLAW_LLM_BASE_URL:-}
147
+ ENV OPENCLAW_LLM_MODEL=${OPENCLAW_LLM_MODEL:-}
148
+
149
+ # ----- BT Panel -----
150
+ ENV BT_PANEL_PORT=${BT_PANEL_PORT:-7860}
151
+ ENV BT_PANEL_USERNAME=${BT_PANEL_USERNAME:-btadmin}
152
+ ENV BT_PANEL_PASSWORD=${BT_PANEL_PASSWORD:-}
153
+ ENV BT_PANEL_SAFE_PATH=${BT_PANEL_SAFE_PATH:-}
154
+ ENV BT_PANEL_TIMEZONE=${BT_PANEL_TIMEZONE:-Asia/Shanghai}
155
+
156
+ # ----- Claude Code Model Router -----
157
+ ENV CCMR_ENABLED=${CCMR_ENABLED:-false}
158
+ ENV CCMR_PORT=${CCMR_PORT:-8080}
159
+ ENV CCMR_CONFIG_DIR=${CCMR_CONFIG_DIR:-/root/.ccmr}
160
+
161
+ # ----- Supervisor -----
162
+ ENV SUPERVISOR_HTTP_AUTH=${SUPERVISOR_HTTP_AUTH:-supervisor}
163
+
164
+ # ============================================
165
+ # BuildKit cache mounts for faster builds
166
+ # ============================================
167
+ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
168
+ --mount=type=cache,target=/var/lib/apt,sharing=locked \
169
+ --mount=type=cache,target=/root/.cache/pip,sharing=locked \
170
+ --mount=type=cache,target=/root/.go/cache,sharing=locked \
171
+ set -eux; \
172
+ echo "BuildKit cache mounts enabled"
173
+
174
+ RUN printf 'Acquire::Retries "5";\nAcquire::http::Timeout "30";\nAcquire::https::Timeout "30";\n' \
175
+ > /etc/apt/apt.conf.d/80-openclaw-retries && \
176
+ set -eux; \
177
+ for attempt in 1 2 3 4 5; do \
178
+ if apt-get update && apt-get install -y --no-install-recommends \
179
+ ca-certificates \
180
+ cmake \
181
+ cron \
182
+ curl \
183
+ sudo \
184
+ supervisor \
185
+ g++ \
186
+ gh \
187
+ git \
188
+ lsof \
189
+ gnupg \
190
+ gosu \
191
+ openssh-server \
192
+ openssh-client \
193
+ hostname \
194
+ jq \
195
+ libasound2t64 \
196
+ libatk-bridge2.0-0 \
197
+ libatk1.0-0 \
198
+ libatspi2.0-0 \
199
+ libcairo2 \
200
+ libcups2t64 \
201
+ libdbus-1-3 \
202
+ libgbm1 \
203
+ libglib2.0-0 \
204
+ libnspr4 \
205
+ libnss3 \
206
+ libpango-1.0-0 \
207
+ libx11-6 \
208
+ libxcb1 \
209
+ libxcomposite1 \
210
+ libxdamage1 \
211
+ libxext6 \
212
+ libxfixes3 \
213
+ libxkbcommon0 \
214
+ libxrandr2 \
215
+ make \
216
+ neovim \
217
+ nginx \
218
+ openssl \
219
+ procps \
220
+ python3 \
221
+ python3-pip \
222
+ tar \
223
+ unzip \
224
+ vim \
225
+ ffmpeg \
226
+ imagemagick \
227
+ inotify-tools \
228
+ sshpass \
229
+ wget \
230
+ libbz2-dev \
231
+ libcurl4-openssl-dev \
232
+ libffi-dev \
233
+ libfreetype-dev \
234
+ libgdbm-dev \
235
+ libicu-dev \
236
+ libjpeg-dev \
237
+ liblzma-dev \
238
+ libncurses-dev \
239
+ libpcap-dev \
240
+ libpcre3-dev \
241
+ libpng-dev \
242
+ libreadline-dev \
243
+ libsqlite3-dev \
244
+ libssl-dev \
245
+ libwebp-dev \
246
+ libxml2-dev \
247
+ libxslt-dev \
248
+ tk-dev \
249
+ zlib1g-dev; then \
250
+ break; \
251
+ fi; \
252
+ if [ "$attempt" -eq 5 ]; then \
253
+ exit 1; \
254
+ fi; \
255
+ echo "apt bootstrap failed on attempt $attempt, retrying..." >&2; \
256
+ rm -rf /var/lib/apt/lists/*; \
257
+ sleep $((attempt * 5)); \
258
+ done; \
259
+ rm -rf /var/lib/apt/lists/*
260
+
261
+ # Install Go 1.25 (official binary release)
262
+ RUN ARCH="$(dpkg --print-architecture)" && \
263
+ case "$ARCH" in \
264
+ amd64) GO_ARCH="amd64" ;; \
265
+ arm64) GO_ARCH="arm64" ;; \
266
+ *) echo "unsupported arch for go: $ARCH" >&2; exit 1 ;; \
267
+ esac && \
268
+ curl -fsSL "https://go.dev/dl/go1.25.9.linux-${GO_ARCH}.tar.gz" -o /tmp/go.tar.gz && \
269
+ rm -rf /usr/local/go && \
270
+ tar -C /usr/local -xzf /tmp/go.tar.gz && \
271
+ rm /tmp/go.tar.gz && \
272
+ /usr/local/go/bin/go version
273
+
274
+ # Install Rust stable via rustup
275
+ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable && \
276
+ . "$HOME/.cargo/env" && \
277
+ rustc --version && \
278
+ cargo --version
279
+ RUN curl -fsSL https://deb.nodesource.com/setup_24.x | bash - && \
280
+ apt-get install -y --no-install-recommends nodejs && \
281
+ node --version && \
282
+ npm --version && \
283
+ rm -rf /var/lib/apt/lists/*
284
+
285
+ RUN /bin/bash -lc 'set -euo pipefail; \
286
+ CFT_VERSION="$(curl -fsSL https://googlechromelabs.github.io/chrome-for-testing/LATEST_RELEASE_STABLE)"; \
287
+ DEB_ARCH="$(dpkg --print-architecture)"; \
288
+ case "$DEB_ARCH" in \
289
+ amd64) CFT_ARCH=linux64 ;; \
290
+ arm64) CFT_ARCH=linux-arm64 ;; \
291
+ *) echo "unsupported architecture for chromium: $DEB_ARCH" >&2; exit 1 ;; \
292
+ esac; \
293
+ CFT_ZIP="chrome-${CFT_ARCH}.zip"; \
294
+ CFT_DIR="chrome-${CFT_ARCH}"; \
295
+ CFT_URL="https://storage.googleapis.com/chrome-for-testing-public/${CFT_VERSION}/${CFT_ARCH}/${CFT_ZIP}"; \
296
+ curl -fsSL "$CFT_URL" -o "/tmp/${CFT_ZIP}"; \
297
+ rm -rf "/opt/${CFT_DIR}"; \
298
+ unzip -q "/tmp/${CFT_ZIP}" -d /opt; \
299
+ rm -f "/tmp/${CFT_ZIP}"; \
300
+ ln -sf "/opt/${CFT_DIR}/chrome" /usr/local/bin/chromium; \
301
+ chromium --version >/dev/null'
302
+
303
+
304
+ RUN /bin/bash -lc 'set -euo pipefail; \
305
+ OPENCLAW_VERSION_VALUE="${OPENCLAW_VERSION:-latest}"; \
306
+ HOME=/root curl -fsSL https://openclaw.ai/install.sh | bash -s -- --no-onboard --version "$OPENCLAW_VERSION_VALUE"'
307
+
308
+ RUN /bin/bash -lc 'set -euo pipefail; \
309
+ OPENCLAW_BIN="$(command -v openclaw || true)"; \
310
+ if [[ -z "$OPENCLAW_BIN" ]] && [[ -x /root/.npm-global/bin/openclaw ]]; then \
311
+ OPENCLAW_BIN=/root/.npm-global/bin/openclaw; \
312
+ elif [[ -z "$OPENCLAW_BIN" ]] && [[ -x /root/.local/bin/openclaw ]]; then \
313
+ OPENCLAW_BIN=/root/.local/bin/openclaw; \
314
+ fi; \
315
+ if [[ -z "$OPENCLAW_BIN" ]]; then \
316
+ echo "openclaw command not found after installer" >&2; \
317
+ exit 1; \
318
+ fi; \
319
+ ln -sf "$OPENCLAW_BIN" /usr/local/bin/openclaw; \
320
+ /usr/local/bin/openclaw --help >/dev/null'
321
+
322
+ RUN /bin/bash -lc 'set -euo pipefail; \
323
+ if ! command -v npm >/dev/null; then \
324
+ echo "npm command not found; cannot install developer CLIs" >&2; \
325
+ exit 1; \
326
+ fi; \
327
+ npm install -g --no-audit --no-fund opencode-ai @openai/codex @anthropic-ai/claude-code @larksuite/cli; \
328
+ npm install -g --no-audit --no-fund claude-code-model-router; \
329
+ npx skills add larksuite/cli -y -g; \
330
+ NPM_PREFIX="$(npm config get prefix)"; \
331
+ NPM_BIN="${NPM_PREFIX%/}/bin"; \
332
+ for cmd in opencode codex claude ccmr; do \
333
+ CLI_BIN="$(command -v "$cmd" || true)"; \
334
+ if [[ -z "$CLI_BIN" ]] && [[ -x "$NPM_BIN/$cmd" ]]; then \
335
+ CLI_BIN="$NPM_BIN/$cmd"; \
336
+ elif [[ -z "$CLI_BIN" ]] && [[ -x /root/.npm-global/bin/"$cmd" ]]; then \
337
+ CLI_BIN=/root/.npm-global/bin/"$cmd"; \
338
+ elif [[ -z "$CLI_BIN" ]] && [[ -x /root/.local/bin/"$cmd" ]]; then \
339
+ CLI_BIN=/root/.local/bin/"$cmd"; \
340
+ fi; \
341
+ if [[ -z "$CLI_BIN" ]]; then \
342
+ echo "$cmd command not found after npm install" >&2; \
343
+ exit 1; \
344
+ fi; \
345
+ ln -sf "$CLI_BIN" "/usr/local/bin/$cmd"; \
346
+ "/usr/local/bin/$cmd" --help >/dev/null; \
347
+ done'
348
+
349
+ # Install PM2 for process management
350
+ RUN npm install -g --no-audit --no-fund pm2 && pm2 --version
351
+
352
+ RUN python3 -m pip install --no-cache-dir --break-system-packages "huggingface_hub[cli]>=0.31.1" "uv>=0.6.0" "Pillow>=10.0.0" && \
353
+ hf --help >/dev/null && \
354
+ uv --version >/dev/null
355
+
356
+ RUN python3 --version >/dev/null && \
357
+ gh --version >/dev/null && \
358
+ nvim --version >/dev/null && \
359
+ command -v chromium >/dev/null
360
+
361
+ RUN HOME=/root /bin/bash -lc "curl -sSf https://sshx.io/get | sh" && \
362
+ if [ -x /root/.local/bin/sshx ]; then ln -sf /root/.local/bin/sshx /usr/local/bin/sshx; fi && \
363
+ sshx --help >/dev/null
364
+
365
+ # Install DDNS-GO for dynamic DNS updates (non-critical, don't fail build)
366
+ RUN /bin/bash -lc ' \
367
+ DDNS_VERSION="$(curl -fsSL https://api.github.com/repos/jeessy2/ddns-go/releases/latest 2>/dev/null | python3 -c "import sys,json; print(json.load(sys.stdin)[\"tag_name\"])" 2>/dev/null || echo "v6.1.0")"; \
368
+ DEB_ARCH="$(dpkg --print-architecture)"; \
369
+ case "$DEB_ARCH" in \
370
+ amd64) DDNS_ARCH=amd64 ;; \
371
+ arm64) DDNS_ARCH=arm64 ;; \
372
+ *) echo "unsupported architecture for ddns-go: $DEB_ARCH" >&2; exit 0 ;; \
373
+ esac; \
374
+ curl -fsSL "https://github.com/jeessy2/ddns-go/releases/download/${DDNS_VERSION}/ddns-go_${DDNS_VERSION#v}_linux_${DDNS_ARCH}.tar.gz" -o /tmp/ddns-go.tar.gz && \
375
+ tar -xzf /tmp/ddns-go.tar.gz -C /tmp && \
376
+ mv /tmp/ddns-go /usr/local/bin/ddns-go && \
377
+ chmod +x /usr/local/bin/ddns-go && \
378
+ rm -f /tmp/ddns-go.tar.gz && \
379
+ ddns-go --version || true'
380
+
381
+ WORKDIR /root
382
+
383
+ # Copy all scripts and configs first
384
+ COPY scripts/openclaw-entrypoint.sh /usr/local/bin/openclaw-entrypoint.sh
385
+ COPY scripts/openclaw-backup-cron.sh /usr/local/bin/openclaw-backup-cron.sh
386
+ COPY scripts/openclaw-backup-health.sh /usr/local/bin/openclaw-backup-health.sh
387
+ COPY scripts/openclaw-backup-watchdog.sh /usr/local/bin/openclaw-backup-watchdog.sh
388
+ COPY scripts/openclaw-restore.sh /usr/local/bin/openclaw-restore.sh
389
+ COPY scripts/openclaw-gateway-ctl /usr/local/bin/openclaw-gateway-ctl
390
+ COPY scripts/hf-entrypoint.sh /usr/local/bin/hf-entrypoint.sh
391
+ COPY scripts/ssh-agent-autostart.sh /usr/local/bin/ssh-agent-autostart.sh
392
+ COPY scripts/save-env.sh /usr/local/bin/save-env.sh
393
+ COPY scripts/update-env-from-secrets.sh /usr/local/bin/update-env-from-secrets.sh
394
+ COPY scripts/openclaw-env-sync.sh /usr/local/bin/openclaw-env-sync.sh
395
+ COPY scripts/upgrade-openclaw.sh /usr/local/bin/upgrade-openclaw.sh
396
+ COPY scripts/nginx-demo.sh /usr/local/bin/nginx-demo.sh
397
+ COPY scripts/supervisord.conf /etc/supervisor/supervisord.conf
398
+ COPY pm2/ecosystem.config.js /app/pm2/ecosystem.config.js
399
+ COPY scripts/server.js /app/hf-server.js
400
+ COPY scripts/ccmr-setup.sh /usr/local/bin/ccmr-setup.sh
401
+ COPY scripts/ccmr-wrapper.sh /usr/local/bin/ccmr-wrapper.sh
402
+ COPY scripts/ccmr.env.example /root/.env.d/ccmr.env.example
403
+ COPY openclaw_hf /opt/openclaw-hf/openclaw_hf
404
+ COPY hf-patch-v1.0.0.tar.gz.enc /root/.hf-patch/hf-patch-v1.0.0.tar.gz.enc
405
+
406
+ # Set execute permissions on all scripts
407
+ RUN chmod 755 /usr/local/bin/openclaw-entrypoint.sh \
408
+ /usr/local/bin/openclaw-backup-cron.sh \
409
+ /usr/local/bin/openclaw-backup-health.sh \
410
+ /usr/local/bin/openclaw-backup-watchdog.sh \
411
+ /usr/local/bin/openclaw-restore.sh \
412
+ /usr/local/bin/openclaw-gateway-ctl \
413
+ /usr/local/bin/hf-entrypoint.sh \
414
+ /usr/local/bin/ssh-agent-autostart.sh \
415
+ /usr/local/bin/save-env.sh \
416
+ /usr/local/bin/update-env-from-secrets.sh \
417
+ /usr/local/bin/openclaw-env-sync.sh \
418
+ /usr/local/bin/ccmr-setup.sh \
419
+ /usr/local/bin/ccmr-wrapper.sh \
420
+ /usr/local/bin/upgrade-openclaw.sh \
421
+ /usr/local/bin/nginx-demo.sh && \
422
+ mkdir -p /root/.openclaw/workspace /var/log/openclaw /root/.pm2 /var/log/supervisor /var/run /root/.ssh && \
423
+ chmod 700 /root/.ssh
424
+
425
+ ENV NODE_ENV=production
426
+ ENV PM2_HOME=/root/.pm2
427
+ ENV PYTHONUNBUFFERED=1
428
+ ENV HOME=/root
429
+ ENV PATH="/usr/local/go/bin:/root/.cargo/bin:$PATH"
430
+ ENV GOPROXY=https://goproxy.cn,direct
431
+ ENV OPENCLAW_HOME=/root
432
+ ENV OPENCLAW_USER=root
433
+ ENV OPENCLAW_GROUP=root
434
+ ENV OPENCLAW_STATE_DIR=/root/.openclaw
435
+ ENV OPENCLAW_WORKSPACE_DIR=/root/.openclaw/workspace
436
+ ENV OPENCLAW_CONFIG_PATH=/root/.openclaw/openclaw.json
437
+ ENV OPENCLAW_GATEWAY_BIND=lan
438
+ ENV OPENCLAW_GATEWAY_PORT=18789
439
+ ENV OPENCLAW_INIT_GATEWAY_MODE=local
440
+ ENV OPENCLAW_GATEWAY_AUTH_MODE=token
441
+ ENV OPENCLAW_GATEWAY_CONTROLUI_DANGEROUSLY_ALLOW_HOST_HEADER_ORIGIN_FALLBACK=true
442
+ ENV OPENCLAW_GATEWAY_CONTROLUI_ALLOW_INSECURE_AUTH=false
443
+ ENV OPENCLAW_GATEWAY_CONTROLUI_DANGEROUSLY_DISABLE_DEVICE_AUTH=false
444
+ ENV OPENCLAW_LLM_PROVIDER=thirdparty
445
+ ENV OPENCLAW_LLM_API=openai-completions
446
+ ENV OPENCLAW_BACKUP_SOURCE_DIR=/root/.openclaw
447
+ ENV OPENCLAW_BACKUP_ROOT_CONFIG_DIR=/root/.config
448
+ ENV OPENCLAW_BACKUP_ROOT_CODEX_DIR=/root/.codex
449
+ ENV OPENCLAW_BACKUP_ROOT_CLAUDE_DIR=/root/.claude
450
+ ENV OPENCLAW_BACKUP_ROOT_CARGO_DIR=/root/.cargo
451
+ ENV OPENCLAW_BACKUP_ROOT_PIP_DIR=/root/.pip
452
+ ENV OPENCLAW_BACKUP_ROOT_RUSTUP_DIR=/root/.rustup
453
+ ENV OPENCLAW_BACKUP_ROOT_AGENTS_DIR=/root/.agents
454
+ ENV OPENCLAW_BACKUP_ROOT_SSH_DIR=/root/.ssh
455
+ ENV OPENCLAW_BACKUP_ROOT_ENV_DIR=/root/.env.d
456
+ ENV OPENCLAW_BACKUP_ROOT_NPM_DIR=/root/.npm
457
+ ENV OPENCLAW_BACKUP_ROOT_LARK_CLI_DIR=/root/.lark-cli
458
+ ENV OPENCLAW_BACKUP_PRIVATE=true
459
+
460
+ # Backup health check configuration
461
+ ENV OPENCLAW_BACKUP_HEALTH_CHECK_ENABLED=false
462
+ ENV OPENCLAW_BACKUP_HEALTH_CHECK_BEFORE=false
463
+ ENV OPENCLAW_BACKUP_HEALTH_CHECK_AFTER=false
464
+ ENV OPENCLAW_BACKUP_MAX_RETRIES=3
465
+ ENV OPENCLAW_MAX_BACKUP_AGE_MINUTES=90
466
+ ENV OPENCLAW_MAX_FAILED_ATTEMPTS=3
467
+
468
+ # ============================================
469
+ # Labels
470
+ # ============================================
471
+ ARG BUILD_VERSION
472
+ ENV BUILD_VERSION=${BUILD_VERSION:-latest}
473
+ LABEL org.opencontainers.image.title="GGSheng ClawCopilot HF Space"
474
+ LABEL org.opencontainers.image.description="GGSheng ClawCopilot with BT Panel on HuggingFace Spaces"
475
+ LABEL org.opencontainers.image.version="${BUILD_VERSION:-latest}"
476
+ LABEL org.opencontainers.image.authors="GGSheng ClawCopilot Team"
477
+ LABEL org.opencontainers.image.source="https://github.com/ClawCopilot/Openclaw-Hf-Docker"
478
+
479
+ # ============================================
480
+ # Healthcheck
481
+ # ============================================
482
+ # 检查宝塔面板和SSH服务
483
+ HEALTHCHECK --interval=30s --timeout=10s --start-period=10s --retries=3 \
484
+ CMD /usr/local/bin/check_ssh_health.sh --no-response >/dev/null 2>&1 && \
485
+ curl -f http://localhost:7860 >/dev/null 2>&1 || exit 1
486
+
487
+ # BT Panel default port (使用变量支持构建时自定义)
488
+ EXPOSE ${BT_PANEL_PORT:-7860}
489
+ # Openclaw default gateway port (使用变量支持构建时自定义)
490
+ EXPOSE ${OPENCLAW_GATEWAY_PORT:-18789}
491
+ # CCMR port (Claude Code Model Router)
492
+ EXPOSE ${CCMR_PORT:-8080}
493
+ # tunnel listen port
494
+ EXPOSE ${TUNNEL_LISTEN_PORT:-1080}
495
+
496
+ # Install BT Panel (宝塔面板) with custom root route
497
+ # 使用本地修改后的宝塔源码和依赖
498
+ COPY scripts/bt_install_panel_custom.sh /tmp/bt-install-panel.sh
499
+ COPY bt-source/panel /www/server/panel
500
+ COPY bt-source/init/bt6.init /www/server/panel/install/src/bt6.init
501
+ COPY bt-source/init/bt7.init /www/server/panel/install/src/bt7.init
502
+ COPY bt-source/install/public.sh /www/server/panel/install/public.sh
503
+ COPY bt-source/conf/softList.conf /www/server/panel/install/conf/softList.conf
504
+
505
+ COPY index.html /www/server/panel/index.html
506
+
507
+ # SSH Stability Optimization
508
+ COPY scripts/optimize_ssh.sh /tmp/optimize_ssh.sh
509
+ COPY scripts/ssh_service_watchdog.sh /usr/local/bin/ssh_service_watchdog.sh
510
+ COPY scripts/check_ssh_health.sh /usr/local/bin/check_ssh_health.sh
511
+ RUN chmod +x /tmp/optimize_ssh.sh && \
512
+ chmod +x /usr/local/bin/ssh_service_watchdog.sh && \
513
+ chmod +x /usr/local/bin/check_ssh_health.sh && \
514
+ if [ -f /etc/ssh/sshd_config ]; then \
515
+ bash /tmp/optimize_ssh.sh || echo "SSH optimization completed with warnings"; \
516
+ fi && \
517
+ rm -f /tmp/optimize_ssh.sh && \
518
+ echo "[SSH-WATCHDOG] SSH服务看门狗脚本已安装"
519
+
520
+
521
+ RUN chmod 755 /tmp/bt-install-panel.sh && \
522
+ echo "[BT-PANEL] 开始自动化安装..." && \
523
+ echo "[BT-PANEL] 使用本地修改后的源码和依赖" && \
524
+ echo " - PANEL_PORT: ${BT_PANEL_PORT:-7860}" && \
525
+ export PANEL_PORT="${BT_PANEL_PORT:-7860}" && \
526
+ export PANEL_USER="${BT_PANEL_USERNAME:-bt}" && \
527
+ export PANEL_PASSWORD="${BT_PANEL_PASSWORD:-}" && \
528
+ export SAFE_PATH="${BT_PANEL_SAFE_PATH:-}" && \
529
+ export BT_TIMEZONE="${BT_PANEL_TIMEZONE:-Asia/Shanghai}" && \
530
+ export go=y && \
531
+ export yes=yes && \
532
+ bash /tmp/bt-install-panel.sh; \
533
+ rm -f /tmp/bt-install-panel.sh
534
+
535
+ # HF Spaces entrypoint: bt-panel as PID 1, PM2 manages openclaw
536
+ ENTRYPOINT ["/usr/local/bin/hf-entrypoint.sh"]
537
+ CMD []
LICENSE ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ MIT License
2
+
3
+ Copyright (c) 2026 tenfyzhong
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
README.md CHANGED
@@ -1,10 +1,338 @@
1
  ---
2
- title: Action
3
- emoji: 🦀
4
- colorFrom: pink
5
- colorTo: green
6
  sdk: docker
 
 
 
 
7
  pinned: false
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ title: action
3
+ emoji: 🦞
4
+ colorFrom: blue
5
+ colorTo: indigo
6
  sdk: docker
7
+ sdk_version: 29.0.4
8
+ python_version: 3.14.4
9
+ app_port: 7860
10
+ app_file: mian.py
11
  pinned: false
12
  ---
13
 
14
+ # OpenClaw on Hugging Face Space (Docker)
15
+
16
+ > **Languages:** [English](./README.md) · [简体中文](./README_zh.md)
17
+ > **Deployment Guide:** [DEPLOY_GUIDE.md](./DEPLOY_GUIDE.md) | [中文部署指南](./DEPLOY_GUIDE_zh.md)
18
+
19
+ This setup is designed to provide the following:
20
+
21
+ - Build the OpenClaw container on top of `ubuntu:24.04`
22
+ - Serve the OpenClaw dashboard directly on port `7860` (default Space access port)
23
+ - Use third-party OpenAI-compatible `base_url + api_key` by default (injected via environment variables)
24
+ - Store OpenClaw config/workspace under `/root/.openclaw`
25
+ - Restore state automatically from a Hugging Face Dataset on startup
26
+ - Run scheduled backups of OpenClaw data to a Hugging Face Dataset via `cron` (as `root` user)
27
+ - Incremental backup + dynamic strategy + AES-256-CBC encryption + large file splitting
28
+ - Backup watchdog (auto-triggers backup when cron fails)
29
+ - SSH service with auto-healing watchdog + host key generation
30
+ - CCMR (Claude Code Model Router) with 10 platform API key support
31
+ - Multi-dataset restore (restore from a different dataset)
32
+ - Preinstall `python3`, `uv`, `vim`, `neovim`, `chromium` (via Chrome for Testing archive), `gh`, `hf`, `opencode`, `codex`, `claude` (Claude Code CLI), `@larksuite/cli` (with `npx skills add larksuite/cli -y -g`), and `sshx` in the image for interactive terminal use
33
+
34
+ ## Repository Layout
35
+
36
+ - `Dockerfile`: Runtime image for the Space
37
+ - `scripts/openclaw-entrypoint.sh`: Main startup flow (restore, config generation, cron setup, gateway start)
38
+ - `scripts/hf-entrypoint.sh`: HF Spaces container entrypoint (PID 1, manages supervisord + SSH + PM2 + BT Panel)
39
+ - `scripts/supervisord.conf`: Supervisord config, manages cron, backup-watchdog, openclaw-gateway, ccmr-gateway
40
+ - `openclaw_hf/backup.py`: Backup/restore implementation (full/incremental, encryption, split, dynamic strategy, resume)
41
+ - `scripts/openclaw-backup-cron.sh`: Cron entrypoint for backup jobs
42
+ - `scripts/openclaw-backup-watchdog.sh`: Backup watchdog, auto-triggers backup when overdue
43
+ - `scripts/openclaw-backup-health.sh`: Backup health check & auto-repair
44
+ - `scripts/openclaw-restore.sh`: Startup restore entrypoint
45
+ - `scripts/openclaw-gateway-ctl`: Gateway process management (start/stop/restart/reload)
46
+ - `scripts/openclaw-env-sync.sh`: Sync environment variables from HF API
47
+ - `scripts/update-env-from-secrets.sh`: Fetch latest env vars from HF API
48
+ - `scripts/bt_install_panel_custom.sh`: BT Panel installation script
49
+ - `scripts/bootstrap-hf.sh`: Interactive bootstrap for Space/Dataset creation, upload, and Space variables/secrets setup (macOS/Linux)
50
+ - `scripts/bootstrap-hf.ps1`: Interactive bootstrap for Space/Dataset creation, upload, and Space variables/secrets setup (Windows PowerShell)
51
+ - `scripts/rebuild-space.sh`: Force push latest code to Space and trigger rebuild
52
+ - `scripts/delete-backups.sh`: Batch cleanup old backups from Dataset
53
+ - `scripts/delete-hf.py`: HF resource deletion tool (Space/Dataset/files/storage)
54
+ - `scripts/find-largest-backup.py`: Find best backup in Dataset
55
+ - `scripts/ssh_service_watchdog.sh`: SSH service watchdog (process monitor + auto-recovery)
56
+ - `scripts/check_ssh_health.sh`: SSH health check (used by Docker HEALTHCHECK)
57
+ - `scripts/ssh-agent-autostart.sh`: SSH agent auto-start and key loading
58
+ - `scripts/optimize_ssh.sh`: SSH configuration optimization
59
+ - `scripts/save-env.sh`: Save environment to `/etc/profile.d`
60
+ - `scripts/hf-storage.sh` / `scripts/hf-storage.py`: HuggingFace storage utilities
61
+ - `scripts/ccmr-setup.sh`: CCMR configuration generation
62
+ - `scripts/ccmr-wrapper.sh`: CCMR Supervisor wrapper (hot-reload + crash recovery)
63
+ - `scripts/server.js`: PID 1 keep-alive HTTP server
64
+ - `pm2/ecosystem.config.js`: PM2 configuration (optional extension)
65
+ - `tests/test_backup.py`: Unit tests for the backup module
66
+ - `tests/test_entrypoint_config.py`: Unit tests for gateway config generation behavior
67
+
68
+ ## Required Variables (Space Settings)
69
+
70
+ In your Hugging Face Space (`Settings -> Variables and secrets`), configure at least:
71
+
72
+ - Variable: `OPENCLAW_BACKUP_DATASET_REPO`: Backup target Dataset in `username/dataset-name` format
73
+ - Secret: `HF_TOKEN`: Used to write backups to the Dataset (must have write permission to that Dataset)
74
+ - Secret: `OPENCLAW_GATEWAY_TOKEN`: Gateway token (recommended; if omitted in deployment workflow, generate a random 32-character value)
75
+ - Secret: `OPENCLAW_GATEWAY_PASSWORD`: Gateway password (optional; if omitted in deployment workflow, generate a random 16-character value)
76
+
77
+ When using `./scripts/bootstrap-hf.sh` (macOS/Linux) or `./scripts/bootstrap-hf.ps1` (Windows PowerShell), these values are configured automatically on the target Space.
78
+
79
+ ## Optional LLM Variables (All-Or-None)
80
+
81
+ Set all of these together only when you want OpenClaw to preconfigure a custom third-party model:
82
+
83
+ - Variable: `OPENCLAW_LLM_BASE_URL`: Third-party base URL (for example OpenAI-compatible `/v1`)
84
+ - Variable: `OPENCLAW_LLM_MODEL`: Third-party model ID
85
+ - Secret: `OPENCLAW_LLM_API_KEY`: Third-party API key
86
+
87
+ If any of the three is missing, entrypoint skips custom model generation.
88
+ In that case, you can still configure from inside the container (for example via `sshx`).
89
+
90
+ ## Common Optional Variables
91
+
92
+ | Variable | Default | Description |
93
+ |----------|---------|-------------|
94
+ | `OPENCLAW_VERSION` | `latest` | OpenClaw version for Docker install |
95
+ | `OPENCLAW_GATEWAY_PORT` | `18789` | Gateway listen port |
96
+ | `OPENCLAW_GATEWAY_BIND` | `lan` | Gateway bind mode (`lan`/`local`) |
97
+ | `OPENCLAW_STATE_DIR` | `/root/.openclaw` | OpenClaw state directory |
98
+ | `OPENCLAW_USER` | `root` | Runtime user for gateway and cron |
99
+ | `OPENCLAW_GROUP` | `root` | Runtime group |
100
+ | `OPENCLAW_CONFIG_PATH` | `/root/.openclaw/openclaw.json` | Gateway config path |
101
+ | `OPENCLAW_WORKSPACE_DIR` | `/root/.openclaw/workspace` | Workspace directory |
102
+ | `OPENCLAW_BACKUP_CRON` | `*/10 * * * *` | Backup cron expression |
103
+ | `OPENCLAW_BACKUP_SOURCE_DIR` | `/root/.openclaw` | Backup/restore base directory |
104
+ | `OPENCLAW_BACKUP_ROOT_*_DIR` | Various | Extra backup dirs (config, codex, claude, agents, ssh, env, npm, lark-cli) |
105
+ | `OPENCLAW_BACKUP_PATH_PREFIX` | `backups` | Backup path prefix |
106
+ | `OPENCLAW_BACKUP_KEEP_COUNT` | `24` | Number of backups to keep |
107
+ | `OPENCLAW_BACKUP_ENCRYPTION_ENABLED` | `false` | Enable AES-256-CBC encryption |
108
+ | `OPENCLAW_BACKUP_SPLIT_SIZE` | `500M` | Large file split volume size |
109
+ | `OPENCLAW_INCREMENTAL_BACKUP` | `true` | Enable incremental backup |
110
+ | `OPENCLAW_DYNAMIC_BACKUP` | `true` | Enable dynamic backup strategy |
111
+ | `OPENCLAW_FULL_BACKUP_INTERVAL_HOURS` | `1` | Force full backup interval |
112
+ | `OPENCLAW_MAX_INCREMENTAL_BACKUPS` | `15` | Max incremental backups before full |
113
+ | `OPENCLAW_RESTORE_TIMEOUT` | `5400` | Restore timeout (seconds, 90 min) |
114
+ | `WATCHDOG_INTERVAL` | `600` | Backup watchdog check interval (s) |
115
+ | `MAX_BACKUP_AGE_MINUTES` | `30` | Max backup age (minutes) |
116
+ | `FORCE_BACKUP_INTERVAL` | `14400` | Force backup interval (seconds) |
117
+ | `OPENCLAW_SSHX_AUTO_START` | `false` | Auto-start `sshx` on boot |
118
+ | `OPENCLAW_GATEWAY_AUTH_MODE` | `token` | Auth mode (`token`/`password`) |
119
+ | `ROOT_PASSWORD` | `lauer3912` | SSH root password |
120
+ | `CCMR_ENABLED` | `false` | Enable Claude Code Model Router |
121
+ | `CCMR_PORT` | `8080` | CCMR gateway port |
122
+
123
+ ## Quick Deployment
124
+
125
+ Run the interactive bootstrap script from repo root:
126
+
127
+ ```bash
128
+ ./scripts/bootstrap-hf.sh
129
+ ```
130
+
131
+ ```powershell
132
+ powershell -ExecutionPolicy ByPass -File .\scripts\bootstrap-hf.ps1
133
+ ```
134
+
135
+ `bootstrap-hf.sh` / `bootstrap-hf.ps1` will:
136
+
137
+ - Check/install `hf` CLI:
138
+ - macOS/Linux: `curl -LsSf https://hf.co/cli/install.sh | bash`
139
+ - Windows PowerShell: `powershell -ExecutionPolicy ByPass -c "irm https://hf.co/cli/install.ps1 | iex"`
140
+ - Resolve HF auth first (before all other variables):
141
+ - if `hf auth whoami` is not logged in: prompt `HF_TOKEN` and run `hf auth login --token <HF_TOKEN>`
142
+ - if already logged in: ask whether to use current user
143
+ - choose `yes`: continue
144
+ - choose `no`: backup current token, prompt new `HF_TOKEN`, run `hf auth login --token <HF_TOKEN>`, and restore the previous token at the end
145
+ - Ask for `space_name`, `dataset_name`, `OPENCLAW_VERSION`, gateway token/password, and optional LLM settings
146
+ - Default `OPENCLAW_VERSION` to latest detected from npm registry (`openclaw`), fallback `latest` when detection fails
147
+ - Auto-generate `OPENCLAW_GATEWAY_TOKEN` (32 chars) and `OPENCLAW_GATEWAY_PASSWORD` (16 chars) if left empty
148
+ - Create private Space + Dataset and upload this repository
149
+ - Configure Space `Variables and secrets` automatically, including:
150
+ - `OPENCLAW_BACKUP_DATASET_REPO`
151
+ - `OPENCLAW_VERSION`
152
+ - `HF_TOKEN`
153
+ - `OPENCLAW_GATEWAY_TOKEN`
154
+ - `OPENCLAW_GATEWAY_PASSWORD`
155
+ - `OPENCLAW_GATEWAY_CONTROLUI_ALLOW_INSECURE_AUTH=false`
156
+ - `OPENCLAW_GATEWAY_CONTROLUI_DANGEROUSLY_DISABLE_DEVICE_AUTH=false`
157
+ - Optionally configure LLM triplet and set `OPENCLAW_SSHX_AUTO_START` from prompt choice (`true`/`false`)
158
+ - Print planned deployment settings and require a final confirmation before creating/updating Space/Dataset resources
159
+ - Print Hugging Face Space page URL, app URL, and `/healthz`
160
+
161
+ If gateway token/password were auto-generated, the script prints them at the end.
162
+
163
+ ## Agent Hand-off Prompt
164
+
165
+ Copy and send to your agent:
166
+
167
+ ```
168
+ Please deploy OpenClaw to Hugging Face by strictly following the deployment skill in https://github.com/tenfyzhong/openclaw-hf/blob/main/SKILL.md
169
+ ```
170
+
171
+ ## Hugging Face Keep-Alive
172
+
173
+ How to keep a Space available depends on hardware tier:
174
+
175
+ - Free `cpu-basic`: the Space sleeps after inactivity (currently around 48h). It cannot be configured to run forever on free hardware.
176
+ - Paid hardware: the Space runs continuously by default. In `Settings -> Hardware`, set `Sleep time` to `Never` (or use API with `sleep_time=-1`) for true 24/7 availability.
177
+ - Cost-saving mode on paid hardware: set a custom `Sleep time` (for example `3600` seconds) so it auto-sleeps and auto-wakes on the next visit.
178
+
179
+ Space URL composition:
180
+
181
+ - Space repo ID format: `<owner>/<space_name>` (example: `tenfyzhong/openclaw-hf`)
182
+ - Public runtime host format: `https://<owner>-<space_name>.hf.space`
183
+ - OpenClaw health check URL: `https://<owner>-<space_name>.hf.space/healthz`
184
+ - Inside the Space runtime, Hugging Face also provides `SPACE_HOST`, so health URL can be built as `https://${SPACE_HOST}/healthz`.
185
+
186
+ Example:
187
+
188
+ ```bash
189
+ OPENCLAW_HF_SPACE_ID="tenfyzhong/openclaw-hf"
190
+ SPACE_HOST="${OPENCLAW_HF_SPACE_ID/\//-}.hf.space"
191
+ HEALTH_URL="https://${SPACE_HOST}/healthz"
192
+ echo "$HEALTH_URL"
193
+ ```
194
+
195
+ Keep-alive by periodic health checks:
196
+
197
+ ```bash
198
+ */12 * * * * HF_TOKEN=hf_xxx /path/to/repo/scripts/check-space-health.sh tenfyzhong/openclaw-hf >/dev/null || true
199
+ ```
200
+
201
+ Notes:
202
+
203
+ - For private Spaces, unauthenticated calls to `https://<owner>-<space_name>.hf.space/healthz` return a Hub 404 page. This is expected access control behavior.
204
+ - For private Spaces, include `Authorization: Bearer <HF_TOKEN>` (the helper script above does this automatically via `HF_TOKEN` or `HUGGINGFACE_HUB_TOKEN`).
205
+ - This ping strategy is a practical workaround for reducing idle sleep on free hardware, but it is not a guaranteed always-on method.
206
+ - If you need strict 24/7 uptime, use paid hardware and set sleep time to `Never`.
207
+
208
+ References:
209
+
210
+ - <https://huggingface.co/docs/hub/spaces-gpus#sleep-time>
211
+ - <https://huggingface.co/docs/huggingface_hub/package_reference/space_runtime>
212
+ - <https://huggingface.co/docs/hub/spaces-overview>
213
+
214
+ Programmatic options (owner token required):
215
+
216
+ ```python
217
+ from huggingface_hub import HfApi
218
+
219
+ api = HfApi(token="hf_xxx")
220
+ repo_id = "your-username/your-space"
221
+
222
+ # Keep running (paid hardware)
223
+ api.set_space_sleep_time(repo_id=repo_id, sleep_time=-1)
224
+
225
+ # Or sleep after 1 hour of inactivity
226
+ api.set_space_sleep_time(repo_id=repo_id, sleep_time=3600)
227
+
228
+ # Manual control
229
+ api.pause_space(repo_id=repo_id)
230
+ api.restart_space(repo_id=repo_id)
231
+ ```
232
+
233
+ For this project, if you need stable dashboard access without cold starts, use paid hardware and set sleep time to `Never`.
234
+
235
+ ## SSH Service
236
+
237
+ The container has a comprehensive SSH service guarding system to ensure continuous availability:
238
+
239
+ - **Auto-start**: Entrypoint generates host keys, cleans stale PID files, starts sshd
240
+ - **SSH Watchdog** (`ssh_service_watchdog.sh`): Monitors sshd every 30s, auto-recovers on failure
241
+ - **Multi-level repair**: Config corruption → backup config → minimal config → auto-reinstall openssh-server
242
+ - **Exponential backoff**: Gradually increases wait time on consecutive failures
243
+ - **Health check** (`check_ssh_health.sh`): Used by Docker HEALTHCHECK
244
+ - **SSH Agent auto-load**: Auto-starts ssh-agent and loads keys from `/root/.ssh/`
245
+ - **Root password**: Set via `ROOT_PASSWORD` environment variable
246
+
247
+ ## CCMR (Claude Code Model Router)
248
+
249
+ CCMR gateway is integrated and managed by Supervisord with hot-reload support:
250
+
251
+ - **Auto-config**: Set `CCMR_*_API_KEY` env vars to enable
252
+ - **10 API Key slots**: DeepSeek, Qwen, Kimi, GLM, MiniMax (CN/Global), MiMo (SGP/CN/AMS/PAYG)
253
+ - **File hot-reload**: Edit `/root/.env.d/ccmr.env` and changes apply immediately without restart
254
+ - **Crash recovery**: Supervisord auto-restarts CCMR process
255
+
256
+ ## Backup/Restore Flow
257
+
258
+ ### Restore
259
+
260
+ **Automatic restore on startup** (always runs on container restart/rebuild):
261
+
262
+ - `openclaw-state` -> `OPENCLAW_BACKUP_SOURCE_DIR` (default `/root/.openclaw`)
263
+ - `root-config` -> `OPENCLAW_BACKUP_ROOT_CONFIG_DIR` (default `/root/.config`)
264
+ - `root-codex` -> `OPENCLAW_BACKUP_ROOT_CODEX_DIR` (default `/root/.codex`)
265
+ - `root-claude` -> `OPENCLAW_BACKUP_ROOT_CLAUDE_DIR` (default `/root/.claude`)
266
+ - `root-agents` -> `OPENCLAW_BACKUP_ROOT_AGENTS_DIR` (default `/root/.agents`)
267
+ - `root-ssh` -> `OPENCLAW_BACKUP_ROOT_SSH_DIR` (default `/root/.ssh`)
268
+ - `root-env` -> `OPENCLAW_BACKUP_ROOT_ENV_DIR` (default `/root/.env.d`)
269
+ - `root-npm` -> `OPENCLAW_BACKUP_ROOT_NPM_DIR` (default `/root/.npm`)
270
+ - `root-lark-cli` -> `OPENCLAW_BACKUP_ROOT_LARK_CLI_DIR` (default `/root/.lark-cli`)
271
+
272
+ Multi-dataset restore: set `OPENCLAW_RESTORE_DATASET_REPO` to restore from a different dataset.
273
+
274
+ ### Backup
275
+
276
+ - **Scheduled backup**: Runs based on `OPENCLAW_BACKUP_CRON` (default every 10 min)
277
+ - **Incremental backup** (default on): Only backs up changed files after a full backup
278
+ - **Dynamic strategy** (default on): Auto-adjusts compression and splitting based on file size and change rate
279
+ - **Manual force full backup**: `python3 backup.py backup --force-full` skips incremental checks
280
+ - **AES-256-CBC encryption**: Optional, allows secure storage on public datasets
281
+ - **Large file splitting**: Default 500MB per volume, avoids upload failures
282
+ - **Resume support**: Creates checkpoint files during upload, allows resume on interruption
283
+ - **Shutdown backup**: Final backup before container exit on stop signal
284
+ - **Retention**: Keeps newest `OPENCLAW_BACKUP_KEEP_COUNT` (default 24) archives, auto-deletes older ones
285
+
286
+ ### Backup Watchdog
287
+
288
+ `openclaw-backup-watchdog.sh` acts as the **last line of defense**:
289
+
290
+ - Auto-triggers backup when no backup for `MAX_BACKUP_AGE_MINUTES` (default 30 min)
291
+ - Force backup every `FORCE_BACKUP_INTERVAL` (default 4 hours)
292
+ - File lock prevents concurrent execution
293
+ - Automatic backoff on consecutive failures
294
+
295
+ ## Use sshx Inside the Container
296
+
297
+ `sshx` is preinstalled in the image.
298
+
299
+ 1. Auto-start `sshx` in background via environment variables:
300
+
301
+ ```bash
302
+ OPENCLAW_SSHX_AUTO_START=true
303
+ ```
304
+
305
+ When enabled, entrypoint starts `sshx` in background and sends `sshx` output directly to container stdout/stderr logs (no file logging).
306
+
307
+ 2. Manual start inside container:
308
+
309
+ ```bash
310
+ sshx
311
+ ```
312
+
313
+ 3. Let OpenClaw start a process itself (run in OpenClaw terminal/tool):
314
+
315
+ ```bash
316
+ nohup sshx >/proc/1/fd/1 2>/proc/1/fd/2 &
317
+ ```
318
+
319
+ 4. After use, close `sshx` process promptly:
320
+
321
+ ```bash
322
+ pgrep -fa sshx
323
+ pkill -TERM -f '(^|/)sshx($| )'
324
+ ```
325
+
326
+ ## Local Test
327
+
328
+ ```bash
329
+ python3 -m unittest discover -s tests -p 'test_*.py'
330
+ ```
331
+
332
+ Pull Requests to `main` run GitHub Actions CI automatically (`.github/workflows/pr-ci.yml`):
333
+ - Unit tests: `python3 -m unittest discover -s tests -p 'test_*.py'`
334
+ - Docker image build: `docker build` (via Buildx) with `OPENCLAW_VERSION=latest`
335
+
336
+ ## License
337
+
338
+ MIT. See `LICENSE`.
README_zh.md ADDED
@@ -0,0 +1,315 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: OpenClaw HF Space
3
+ emoji: 🦞
4
+ colorFrom: blue
5
+ colorTo: indigo
6
+ sdk: docker
7
+ sdk_version: 29.0.4
8
+ app_port: 7860
9
+ app_file: mian.py
10
+ pinned: false
11
+ ---
12
+
13
+ # OpenClaw HF Space 部署工具(中文版)
14
+
15
+ > **Languages:** [English](./README.md) · [简体中文](./README_zh.md)
16
+ > **部署指南:** [English](./DEPLOY_GUIDE.md) · [中文部署指南](./DEPLOY_GUIDE_zh.md)
17
+
18
+ 本项目提供在 Hugging Face Space 上部署 OpenClaw 的完整解决方案。
19
+
20
+ ## 功能特性
21
+
22
+ - 基于 `ubuntu:24.04` 构建 OpenClaw 容器镜像
23
+ - 默认通过 BT Panel(宝塔面板)管理服务,端口 `7860`
24
+ - OpenClaw Gateway 运行在独立端口 `18789`(默认)
25
+ - 默认使用第三方 OpenAI 兼容接口(`base_url + api_key`),通过环境变量注入
26
+ - OpenClaw 配置和工作目录存储在 `/root/.openclaw`
27
+ - 启动时自动从 Hugging Face Dataset 恢复状态
28
+ - 通过 `cron` 定时备份 OpenClaw 数据到 Hugging Face Dataset
29
+ - 增量备份 + 动态备份策略 + AES-256-CBC 加密 + 大文件分卷
30
+ - 备份看门狗(兜底保障,cron 失效时自动触发备份)
31
+ - SSH 服务自动守护(看门狗监控自愈 + 自动生成主机密钥)
32
+ - CCMR(Claude Code Model Router)支持,自动配置 10 个平台 API Key
33
+ - 多数据集恢复支持(可从不同 Dataset 恢复)
34
+ - 预装工具:`python3`、`uv`、`vim`、`neovim`、`chromium`(Chrome for Testing)、`gh`、`hf`、`opencode`、`codex`、`claude`(Claude Code CLI)、`@larksuite/cli`、`sshx`
35
+ - 内置 DDNS-GO,支持动态 DNS 更新(非关键功能,安装失败不影响构建)
36
+
37
+ ## 项目结构
38
+
39
+ - `Dockerfile`: Space 运行时镜像
40
+ - `scripts/openclaw-entrypoint.sh`: 主启动流程(恢复、配置生成、cron 设置、gateway 启动)
41
+ - `scripts/hf-entrypoint.sh`: HF Spaces 容器入口(PID 1,管理 supervisord + SSH + PM2 + BT Panel)
42
+ - `scripts/supervisord.conf`: Supervisord 配置,管理 cron、backup-watchdog、openclaw-gateway、ccmr-gateway
43
+ - `openclaw_hf/backup.py`: 备份/恢复实现(全量/增量、加密、分卷、动态策略、断点续传)
44
+ - `scripts/openclaw-backup-cron.sh`: Cron 备份任务入口
45
+ - `scripts/openclaw-backup-watchdog.sh`: 备份看门狗,兜底保障自动触发备份
46
+ - `scripts/openclaw-backup-health.sh`: 备份健康检查与自动修复
47
+ - `scripts/openclaw-restore.sh`: 启动恢复入口
48
+ - `scripts/openclaw-gateway-ctl`: Gateway 进程管理(start/stop/restart/reload)
49
+ - `scripts/openclaw-env-sync.sh`: 从 HF API 同步环境变量
50
+ - `scripts/update-env-from-secrets.sh`: 从 HF API 获取最新环境变量
51
+ - `scripts/bt_install_panel_custom.sh`: BT Panel 安装脚本
52
+ - `scripts/bootstrap-hf.sh`: 交互式引导脚本(macOS/Linux)
53
+ - `scripts/bootstrap-hf.ps1`: 交互式引导脚本(Windows PowerShell)
54
+ - `scripts/rebuild-space.sh`: 强制推送最新代码到 Space 并触发重建
55
+ - `scripts/delete-backups.sh`: 批量清理 Dataset 中的旧备份
56
+ - `scripts/delete-hf.py`: HF 资源删除工具(Space/Dataset/文件/存储)
57
+ - `scripts/find-largest-backup.py`: 查找 Dataset 中最佳备份
58
+ - `scripts/ssh_service_watchdog.sh`: SSH 服务看门狗(进程监控 + 自动恢复)
59
+ - `scripts/check_ssh_health.sh`: SSH 健康检查脚本(Docker HEALTHCHECK 使用)
60
+ - `scripts/ssh-agent-autostart.sh`: SSH Agent 自动启动和加载密钥
61
+ - `scripts/optimize_ssh.sh`: SSH 配置优化
62
+ - `scripts/save-env.sh`: 保存环境变量到 `/etc/profile.d`
63
+ - `scripts/hf-storage.sh` / `scripts/hf-storage.py`: HuggingFace 公共存储工具
64
+ - `scripts/ccmr-setup.sh`: CCMR 配置生成脚本
65
+ - `scripts/ccmr-wrapper.sh`: CCMR Supervisor 启动包装(文件热加载 + 崩溃恢复)
66
+ - `scripts/server.js`: PID 1 存活 HTTP 服务
67
+ - `pm2/ecosystem.config.js`: PM2 配置文件(可选扩展)
68
+ - `tests/test_backup.py`: 备份模块单元测试
69
+ - `tests/test_entrypoint_config.py`: Gateway 配置生成行为单元测试
70
+
71
+ ## 必填变量(Space Settings)
72
+
73
+ 在 Hugging Face Space 的 `Settings -> Variables and secrets` 中配置:
74
+
75
+ - 变量: `OPENCLAW_BACKUP_DATASET_REPO`: 备份目标 Dataset,格式 `username/dataset-name`
76
+ - 密钥: `HF_TOKEN`: 用于向 Dataset 写入备份(必须对该 Dataset 有写权限)
77
+ - 密钥: `OPENCLAW_GATEWAY_TOKEN`: Gateway 令牌(建议填写;留空则自动生成 32 位随机值)
78
+ - 密钥: `OPENCLAW_GATEWAY_PASSWORD`: Gateway 密码(可选;留空则自动生成 16 位随机值)
79
+
80
+ 使用 `./scripts/bootstrap-hf.sh` 或 `./scripts/bootstrap-hf.ps1` 时,这些值会自动配置到目标 Space。
81
+
82
+ ## BT Panel 变量
83
+
84
+ - `BT_PANEL_PORT`(默认: `7860`): BT Panel 监听端口
85
+ - `BT_PANEL_USERNAME`(默认: `btadmin`): BT Panel 用户名,**必须以小写字母开头,只能包含小写字母和数字,长度 3-32 位**
86
+ - `BT_PANEL_PASSWORD`: BT Panel 密码,留空则自动生成
87
+ - `BT_PANEL_SAFE_PATH`: BT Panel 安全入口路径(默认: `lauer3912`)
88
+ - `BT_PANEL_TIMEZONE`(默认: `Asia/Shanghai`): BT Panel 时区
89
+
90
+ ## SSH 服务
91
+
92
+ 容器内置 SSH 服务守护体系,确保 SSH 持续可用:
93
+
94
+ - **自动启动**: 入口点自动生成主机密钥、清理残留 PID、启动 sshd
95
+ - **SSH 看门狗** (`ssh_service_watchdog.sh`): 每 30 秒监控 sshd 进程,异常时自动恢复
96
+ - **多级修复**: 配置损坏→使用备份配置→生成最小配置→自动重装 openssh-server
97
+ - **指数退避**: 连续失败时逐步增加等待时间,避免频繁重试
98
+ - **健康检查** (`check_ssh_health.sh`): 配合 Docker HEALTHCHECK 使用
99
+ - **SSH Agent 自动加载**: 自动启动 ssh-agent 并加载 `/root/.ssh/` 下的私钥
100
+ - **ROOT 密码**: 通过 `ROOT_PASSWORD` 环境变量设置
101
+
102
+ ## CCMR(Claude Code Model Router)
103
+
104
+ 集成 CCMR 网关,通过 Supervisor 管理,支持热加载:
105
+
106
+ - **自动配置**: 设置 `CCMR_*_API_KEY` 环境变量即可启用
107
+ - **10 个 API Key 支持**: DeepSeek、通义千问、Kimi、智谱 GLM、MiniMax(CN/Global)、MiMo(SGP/CN/AMS/PAYG)
108
+ - **文件热加载**: 编辑 `/root/.env.d/ccmr.env` 后立即生效,无需重启
109
+ - **崩溃恢复**: Supervisor 自动重启 CCMR 进程
110
+
111
+ ## 可选 LLM 变量(全有或全无)
112
+
113
+ 只有在需要 OpenClaw 预配置自定义第三方模型时才设置这三个:
114
+
115
+ - 变量: `OPENCLAW_LLM_BASE_URL`: 第三方 base URL(如 OpenAI 兼容的 `/v1`)
116
+ - 变量: `OPENCLAW_LLM_MODEL`: 第三方模型 ID
117
+ - 密钥: `OPENCLAW_LLM_API_KEY`: 第三方 API key
118
+
119
+ 三者任一缺失则跳过自定义模型生成,此时仍可在容器内通过 `sshx` 配置 LLM。
120
+
121
+ ## 常用可选变量
122
+
123
+ | 变量 | 默认值 | 说明 |
124
+ |------|--------|------|
125
+ | `OPENCLAW_VERSION` | `latest` | OpenClaw 版本,用于 Docker 安装步骤 |
126
+ | `OPENCLAW_GATEWAY_PORT` | `18789` | Gateway 监听端口(避免与 BT Panel 的 7860 冲突) |
127
+ | `OPENCLAW_GATEWAY_BIND` | `lan` | Gateway 绑定方式(`lan`/`local`) |
128
+ | `OPENCLAW_STATE_DIR` | `/root/.openclaw` | OpenClaw 状态目录 |
129
+ | `OPENCLAW_USER` | `root` | Gateway 和 cron 任务的运行时用户 |
130
+ | `OPENCLAW_GROUP` | `root` | 运行时用户组 |
131
+ | `OPENCLAW_CONFIG_PATH` | `/root/.openclaw/openclaw.json` | Gateway 配置文件路径 |
132
+ | `OPENCLAW_WORKSPACE_DIR` | `/root/.openclaw/workspace` | 工作目录 |
133
+ | `OPENCLAW_BACKUP_CRON` | `*/10 * * * *` | 备份 cron 表达式(默认每 10 分钟) |
134
+ | `OPENCLAW_BACKUP_SOURCE_DIR` | `/root/.openclaw` | 备份/恢复基础目录 |
135
+ | `OPENCLAW_BACKUP_ROOT_*_DIR` | 各有默认值 | 额外备份目录(config、codex、claude、agents、ssh、npm、lark-cli) |
136
+ | `OPENCLAW_BACKUP_PATH_PREFIX` | `backups` | 备份路径前缀 |
137
+ | `OPENCLAW_BACKUP_KEEP_COUNT` | `24` | 保留的最新备份数量 |
138
+ | `OPENCLAW_BACKUP_ENCRYPTION_ENABLED` | `false` | 启用 AES-256-CBC 加密备份 |
139
+ | `OPENCLAW_BACKUP_SPLIT_SIZE` | `500M` | 大文件分卷大小 |
140
+ | `OPENCLAW_INCREMENTAL_BACKUP` | `true` | 启用增量备份 |
141
+ | `OPENCLAW_DYNAMIC_BACKUP` | `true` | 启用动态备份策略 |
142
+ | `OPENCLAW_FULL_BACKUP_INTERVAL_HOURS` | `1` | 强制全量备份间隔 |
143
+ | `OPENCLAW_MAX_INCREMENTAL_BACKUPS` | `15` | 增量备份次数上限 |
144
+ | `OPENCLAW_RESTORE_TIMEOUT` | `5400` | 恢复超时(秒,默认 90 分钟) |
145
+ | `WATCHDOG_INTERVAL` | `600` | 备份看门狗检查间隔(秒) |
146
+ | `MAX_BACKUP_AGE_MINUTES` | `30` | 备份最大间隔(分钟) |
147
+ | `FORCE_BACKUP_INTERVAL` | `14400` | 强制备份间隔(秒) |
148
+ | `OPENCLAW_SSHX_AUTO_START` | `false` | 设为 `true` 启动时自动后台运行 `sshx` |
149
+ | `OPENCLAW_GATEWAY_AUTH_MODE` | `token` | 认证模式(`token`/`password`) |
150
+ | `OPENCLAW_GATEWAY_CONTROLUI_ALLOW_INSECURE_AUTH` | `false` | 允许不安全认证 |
151
+ | `OPENCLAW_GATEWAY_CONTROLUI_DANGEROUSLY_DISABLE_DEVICE_AUTH` | `false` | 禁用设备配对(**强烈不建议在公网开启**) |
152
+ | `ROOT_PASSWORD` | `lauer3912` | SSH root 用户密码 |
153
+ | `CCMR_ENABLED` | `false` | 启用 Claude Code Model Router |
154
+ | `CCMR_PORT` | `8080` | CCMR 网关端口 |
155
+
156
+ ## 快速部署
157
+
158
+ 从仓库根目录运行交互式引导脚本:
159
+
160
+ ```bash
161
+ ./scripts/bootstrap-hf.sh
162
+ ```
163
+
164
+ ```powershell
165
+ powershell -ExecutionPolicy ByPass -File .\scripts\bootstrap-hf.ps1
166
+ ```
167
+
168
+ `bootstrap-hf.sh` / `bootstrap-hf.ps1` 会执行以下操作:
169
+
170
+ 1. 检查/安装 `hf` CLI
171
+ 2. 解析 HF 认证状态(未登录则提示输入 `HF_TOKEN` 并登录;已登录则询问是否使用当前用户)
172
+ 3. 询问 `space_name`、`dataset_name`、`OPENCLAW_VERSION`、Gateway 令牌/密码及可选 LLM 配置
173
+ 4. 自动生成 `OPENCLAW_GATEWAY_TOKEN`(32 位)和 `OPENCLAW_GATEWAY_PASSWORD`(16 位)
174
+ 5. 创建私有 Space + Dataset 并上传仓库
175
+ 6. 自动配置 Space 的 `Variables and secrets`
176
+ 7. 显示部署设置并要求确认
177
+ 8. 输出 Hugging Face Space 页面地址、应用地址和 `/healthz` 健康检查地址
178
+
179
+ 如自动生成了令牌/密码,脚本结束时会自动显示。
180
+
181
+ ## Hugging Face Space 保活策略
182
+
183
+ Space 保活策略取决于硬件套餐:
184
+
185
+ - 免费 `cpu-basic`:Space 在不活跃后进入休眠(约 48 小时),无法配置为永久运行
186
+ - 付费硬件:Space 默认持续运行。在 `Settings -> Hardware` 中将 `Sleep time` 设为 `Never` 可实现真正的 24/7 可用性
187
+ - 付费硬件节能模式:设置自定义 `Sleep time`(如 `3600` 秒),实现自动休眠和自动唤醒
188
+
189
+ Space URL 构成:
190
+
191
+ - Space Repo ID 格式: `<owner>/<space_name>`(示例: `username/openclaw-hf`)
192
+ - 公开运行时地址: `https://<owner>-<space_name>.hf.space`
193
+ - 健康检查地址: `https://<owner>-<space_name>.hf.space/healthz`
194
+
195
+ 定时健康检查保持活跃:
196
+
197
+ ```bash
198
+ */12 * * * * HF_TOKEN=hf_xxx /path/to/repo/scripts/check-space-health.sh username/openclaw-hf >/dev/null || true
199
+ ```
200
+
201
+ 注意:
202
+ - 私有 Space 的 `https://<owner>-<space_name>.hf.space/healthz` 返回 Hub 404,这是正常的访问控制行为
203
+ - 私有 Space 请求需要包含 `Authorization: Bearer <HF_TOKEN>`
204
+
205
+ ## 备份/恢复流程
206
+
207
+ ### 恢复流程
208
+
209
+ **启动时从 Dataset 自动恢复**,容器重启或重建时必定执行:
210
+
211
+ - `openclaw-state` -> `OPENCLAW_BACKUP_SOURCE_DIR`(默认 `/root/.openclaw`)
212
+ - `root-config` -> `OPENCLAW_BACKUP_ROOT_CONFIG_DIR`(默认 `/root/.config`)
213
+ - `root-codex` -> `OPENCLAW_BACKUP_ROOT_CODEX_DIR`(默认 `/root/.codex`)
214
+ - `root-claude` -> `OPENCLAW_BACKUP_ROOT_CLAUDE_DIR`(默认 `/root/.claude`)
215
+ - `root-agents` -> `OPENCLAW_BACKUP_ROOT_AGENTS_DIR`(默认 `/root/.agents`)
216
+ - `root-ssh` -> `OPENCLAW_BACKUP_ROOT_SSH_DIR`(默认 `/root/.ssh`)
217
+ - `root-env` -> `OPENCLAW_BACKUP_ROOT_ENV_DIR`(默认 `/root/.env.d`)
218
+ - `root-npm` -> `OPENCLAW_BACKUP_ROOT_NPM_DIR`(默认 `/root/.npm`)
219
+ - `root-lark-cli` -> `OPENCLAW_BACKUP_ROOT_LARK_CLI_DIR`(默认 `/root/.lark-cli`)
220
+
221
+ 支持多数据集恢复:设置 `OPENCLAW_RESTORE_DATASET_REPO` 可以从不同 Dataset 恢复。
222
+
223
+ ### 备份流程
224
+
225
+ - **定时备份**:根据 `OPENCLAW_BACKUP_CRON`(默认每 10 分钟)执行
226
+ - **增量备份**(默认开启):全量备份后只备份变化文件,大幅减少数据量
227
+ - **动态备份策略**(默认开启):根据文件大小和变化率自动调整压缩级别和分卷策略
228
+ - **手动强制全备份**:`python3 backup.py backup --force-full` 可跳过增量检查强制执行全量备份
229
+ - **AES-256-CBC 加密**:可选开启,加密后的备份可安全存储在公开 Dataset
230
+ - **大文件分卷**:默认 500MB 分卷,避免单文件过大导致上传失败
231
+ - **断点续传**:上传过程中创建 checkpoint 文件,中断后可恢复
232
+ - **关机备份**:容器收到停止信号时,执行最后一次备份后再退出
233
+ - **保留策略**:上传后只保留最新的 `OPENCLAW_BACKUP_KEEP_COUNT`(默认 24 个)带时间戳的备份归档,自动删除更旧的
234
+
235
+ ### 备份看门狗
236
+
237
+ `openclaw-backup-watchdog.sh` 作为备份系统的**兜底保障**:
238
+
239
+ - 即使 cron 失效,看门狗也会在超过 `MAX_BACKUP_AGE_MINUTES`(默认 30 分钟)无备份时自动触发
240
+ - 每 `FORCE_BACKUP_INTERVAL`(默认 4 小时)强制执行一次备份
241
+ - 使用文件锁防止并发执行
242
+ - 连续失败时自动退避
243
+
244
+ ## 在容器内使用 sshx
245
+
246
+ `sshx` 已预装在镜像中。
247
+
248
+ 1. 通过环境变量自动启动:
249
+ ```bash
250
+ OPENCLAW_SSHX_AUTO_START=true
251
+ ```
252
+ 启用后入口脚本会在后台启动 `sshx`,输出直接发送到容器 stdout/stderr
253
+
254
+ 2. 在容器内手动启动:
255
+ ```bash
256
+ sshx
257
+ ```
258
+
259
+ 3. 通过 OpenClaw 终端/工具启动:
260
+ ```bash
261
+ nohup sshx >/proc/1/fd/1 2>/proc/1/fd/2 &
262
+ ```
263
+
264
+ 4. 使用完毕后及时关闭:
265
+ ```bash
266
+ pgrep -fa sshx
267
+ pkill -TERM -f '(^|/)sshx($| )'
268
+ ```
269
+
270
+ ## 本地测试
271
+
272
+ ```bash
273
+ python3 -m unittest discover -s tests -p 'test_*.py'
274
+ ```
275
+
276
+ ## CI/CD
277
+
278
+ 向 `main` 分支提交 Pull Request 后,GitHub Actions CI 会自动运行(`.github/workflows/pr-ci.yml`):
279
+ - 单元测试:`python3 -m unittest discover -s tests -p 'test_*.py'`
280
+ - Docker 镜像构建:`docker build`(通过 Buildx),使用 `OPENCLAW_VERSION=latest`
281
+
282
+ ## 架构说明
283
+
284
+ 容器启动顺序(`hf-entrypoint.sh` 作为 PID 1):
285
+
286
+ ```
287
+ PID 1 (node hf-server.js)
288
+ ├── supervisord (后台)
289
+ │ ├── cron
290
+ │ ├── backup-watchdog
291
+ │ ├── openclaw-gateway (via openclaw-entrypoint.sh)
292
+ │ │ └── openclaw (gateway 进程管理器)
293
+ │ └── ccmr-gateway (via ccmr-wrapper.sh, 启用时)
294
+ ├── sshd
295
+ ├── ssh_service_watchdog.sh (SSH 看门狗)
296
+ ├── PM2 (可选,ecosystem.config.js 有配置时)
297
+ └── BT Panel
298
+ ```
299
+
300
+ 进程管理使用 **Supervisord** 管理后台服务,原因:
301
+ - Supervisord 是为"进程管理者"设计的,适合 PID 1 下运行
302
+ - 信号传递正确,SIGTERM 能正确传递给子进程
303
+ - 相比 PM2 更轻量,职责单一
304
+
305
+ 关键启动步骤:
306
+ 1. `supervisord` 后台启动,管理 cron/backup-watchdog/openclaw-gateway/ccmr-gateway
307
+ 2. 生成 SSH 主机密钥,启动 sshd + SSH 看门狗
308
+ 3. 等待 openclaw-gateway 完成备份恢复
309
+ 4. 可选启动 PM2 管理附加进程
310
+ 5. 启动 BT Panel
311
+ 6. `node hf-server.js` 作为 PID 1 前台进程接管容器生命周期
312
+
313
+ ## License
314
+
315
+ MIT. See `LICENSE`.
bt-source/conf/softList.conf ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ [{"name":"Nginx","versions":[{"status":false,"version":"1.28"},{"status":false,"version":"1.26"},{"status":false,"version":"1.25"},{"status":false,"version":"1.24"},{"status":false,"version":"1.22"},{"status":false,"version":"-Tengine2.2"},{"status":false,"version":"openresty"}],"type":"Web服务器","msg":"Nginx是一款轻量级的Web服务器!","shell":"nginx.sh","check":"server/nginx/sbin/nginx"},
2
+ {"name":"Apache","versions":[{"status":false,"version":"2.4"}],"type":"Web服务器","msg":"Apache是世界使用排名第一的Web服务器软件。","shell":"httpd.sh","check":"server/apache/bin/httpd"},
3
+ {"name":"MySQL","versions":[{"status":false,"version":"5.5"},{"status":false,"version":"5.6"},{"status":false,"version":"5.7"},{"status":false,"version":"8.0"},{"status":false,"version":"8.4"},{"status":false,"version":"mariadb_10.4"},{"status":false,"version":"mariadb_10.5"}],"type":"数据库","msg":"推荐安装!","shell":"mysql.sh","check":"server/mysql/bin/mysql"},
4
+ {"name":"Pure-Ftpd","versions":[{"status":false,"version":"1.0.49"}],"type":"FTP服务器","msg":"PureFTPd是一款专注于程序健壮和软件安全的免费FTP服务器软件","shell":"pure-ftpd.sh","check":"server/pure-ftpd/bin/pure-pw"},
5
+ {"name":"PHP","versions":[{"status":false,"version":"8.2"},{"status":false,"version":"5.4"},{"status":false,"version":"5.6"},{"status":false,"version":"7.1"},{"status":false,"version":"7.2"},{"status":false,"version":"7.3"},{"status":false,"version":"7.4"},{"status":false,"version":"8.0"},{"status":false,"version":"8.1"},{"status":false,"version":"8.3"}],"type":"语言解释器","msg":"若非必要,请安装更新的版本!","shell":"php.sh","check":"server/php/VERSION/bin/php"},
6
+ {"name":"Tomcat","versions":[{"status":false,"version":"7"},{"status":false,"version":"8"},{"status":false,"version":"9"}],"type":"语言解释器","msg":"java-ee解释器","shell":"tomcat.sh","check":"server/tomcat/bin/catalina.sh"},
7
+ {"name":"phpMyAdmin","versions":[{"status":false,"version":"4.4"},{"status":false,"version":"4.9"},{"status":false,"version":"5.1"},{"status":false,"version":"5.2"}],"type":"数据库工具","msg":"Web端MySQL管理工具","shell":"phpmyadmin.sh","check":"server/phpmyadmin/version.pl"}]
bt-source/init/bt6.init ADDED
@@ -0,0 +1,422 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ # chkconfig: 2345 55 25
3
+ # description: bt Cloud Service
4
+
5
+ ### BEGIN INIT INFO
6
+ # Provides: bt
7
+ # Required-Start: $all
8
+ # Required-Stop: $all
9
+ # Default-Start: 2 3 4 5
10
+ # Default-Stop: 0 1 6
11
+ # Short-Description: starts bt
12
+ # Description: starts the bt
13
+ ### END INIT INFO
14
+ panel_init(){
15
+ panel_path=/www/server/panel
16
+ pidfile=$panel_path/logs/panel.pid
17
+ cd $panel_path
18
+ env_path=$panel_path/pyenv/bin/python3
19
+ if [ -f $env_path ];then
20
+ pythonV=$panel_path/pyenv/bin/python3
21
+ chmod -R 700 $panel_path/pyenv/bin &> /dev/null
22
+ else
23
+ pythonV=/usr/bin/python
24
+ fi
25
+ reg="^#\!$pythonV\$"
26
+ is_sed=$(cat $panel_path/BT-Panel|head -n 1|grep -E $reg)
27
+ if [ "${is_sed}" = "" ];then
28
+ sed -i "s@^#!.*@#!$pythonV@" $panel_path/BT-Panel &> /dev/null
29
+ fi
30
+ is_python=$(cat $panel_path/BT-Task|grep import)
31
+ if [ "${is_python}" != "" ];then
32
+ is_sed=$(cat $panel_path/BT-Task|head -n 1|grep -E $reg)
33
+ if [ "${is_sed}" = "" ];then
34
+ sed -i "s@^#!.*@#!$pythonV@" $panel_path/BT-Task &> /dev/null
35
+ fi
36
+ fi
37
+ chmod 700 $panel_path/BT-Panel &> /dev/null
38
+ chmod 700 $panel_path/BT-Task &> /dev/null
39
+ log_file=$panel_path/logs/error.log
40
+ task_log_file=$panel_path/logs/task.log
41
+ if [ -f $panel_path/data/ssl.pl ];then
42
+ log_file=/dev/null
43
+ fi
44
+
45
+ port=$(cat $panel_path/data/port.pl)
46
+ }
47
+ panel_init
48
+
49
+ get_panel_pids(){
50
+ isStart=$(ps aux|grep -E '(runserver|BT-Panel)'|grep -v grep|awk '{print $2}'|xargs)
51
+ pids=$isStart
52
+ arr=$isStart
53
+ }
54
+
55
+ get_task_pids(){
56
+ isStart=$(ps aux|grep -E '(task.py|BT-Task)'|grep -v grep|awk '{print $2}'|xargs)
57
+ pids=$isStart
58
+ arr=$isStart
59
+ }
60
+
61
+ panel_start()
62
+ {
63
+ isStart=`ps aux|grep 'runserver:app'|grep -v grep|awk '{print $2}'`
64
+ if [ "$isStart" != '' ];then
65
+ kill -9 $isStart
66
+ fi
67
+ get_panel_pids
68
+
69
+ if [ -f $panel_path/script/init_db.py ]; then
70
+ $pythonV $panel_path/script/init_db.py init_db # 初始化面板数据库
71
+ $pythonV $panel_path/tools.py check_db # 检查面板数据库,默认数据
72
+ fi
73
+ if [ "$isStart" == '' ];then
74
+ rm -f $pidfile &> /dev/null
75
+
76
+ echo -e "Starting Bt-Panel...\c"
77
+ echo '\n' >> $log_file
78
+ if [ $? -ne 0 ];then
79
+ $panel_path/BT-Panel > /dev/null 2>&1
80
+ else
81
+ $panel_path/BT-Panel >> $log_file 2>&1
82
+ fi
83
+ isStart=""
84
+ n=0
85
+ while [[ "$isStart" == "" ]];
86
+ do
87
+ echo -e ".\c"
88
+ sleep 0.5
89
+ get_panel_pids
90
+ let n+=1
91
+ if [ $n -gt 8 ];then
92
+ break;
93
+ fi
94
+ done
95
+ if [ "$isStart" == '' ];then
96
+ panel_port_check
97
+ echo -e "\033[31mfailed\033[0m"
98
+ echo '------------------------------------------------------'
99
+ tail -n 20 $log_file
100
+ echo '------------------------------------------------------'
101
+ echo -e "\033[31mError: BT-Panel service startup failed.\033[0m"
102
+ fi
103
+ echo -e " \033[32mdone\033[0m"
104
+ else
105
+ echo "Starting Bt-Panel... Bt-Panel (pid $(echo $isStart)) already running"
106
+ fi
107
+
108
+ get_task_pids
109
+ if [ "$isStart" == '' ];then
110
+ echo -e "Starting Bt-Tasks... \c"
111
+ echo '\n' >> $task_log_file
112
+ if [ $? -ne 0 ];then
113
+ $panel_path/BT-Task > /dev/null 2>&1
114
+ else
115
+ $panel_path/BT-Task >> $task_log_file 2>&1
116
+ fi
117
+ sleep 0.2
118
+ get_task_pids
119
+ if [ "$isStart" == '' ];then
120
+ echo -e "\033[31mfailed\033[0m"
121
+ echo '------------------------------------------------------'
122
+ tail -n 20 $task_log_file
123
+ echo '------------------------------------------------------'
124
+ echo -e "\033[31mError: BT-Task service startup failed.\033[0m"
125
+ return;
126
+ fi
127
+ echo -e " \033[32mdone\033[0m"
128
+ else
129
+ echo "Starting Bt-Tasks... Bt-Tasks (pid $isStart) already running"
130
+ fi
131
+
132
+ if [[ -f ${panel_path}/data/panel_ssl_error.pl ]]; then
133
+ port=$(cat $panel_path/data/port.pl)
134
+ password=$(cat $panel_path/default.pl)
135
+ if [ -f $panel_path/data/domain.conf ];then
136
+ address=$(cat $panel_path/data/domain.conf)
137
+ fi
138
+ auth_path=/login
139
+ if [ -f $panel_path/data/admin_path.pl ];then
140
+ auth_path=$(cat $panel_path/data/admin_path.pl)
141
+ fi
142
+ if [ "$address" = "" ];then
143
+ address=$(curl -sS --connect-timeout 10 -m 60 https://www.bt.cn/Api/getIpAddress)
144
+ fi
145
+ if [ "$auth_path" == "/" ];then
146
+ auth_path=/login
147
+ fi
148
+ LOCAL_IP=$(ip addr | grep -E -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -E -v "^127\.|^255\.|^0\." | head -n 1)
149
+ echo ""
150
+ echo -e "=================================================================="
151
+ echo -e "\033[32m您的面板SSL证书似乎出现了问题,已为您临时关闭面板HTTPS访问\033[0m"
152
+ echo -e "\033[32m请使用如下地址访问宝塔面板,随后到面板设置中重新开启面板SSL证书即可!\033[0m"
153
+ echo -e "=================================================================="
154
+ echo "外网面板地址: http://${address}:${port}${auth_path}"
155
+ echo "内网面板地址: http://${LOCAL_IP}:${port}${auth_path}"
156
+ echo -e `$pythonV $panel_path/tools.py username`
157
+ echo -e "password: $password"
158
+ echo -e "\033[33mWarning:\033[0m"
159
+ echo -e "\033[33mIf you cannot access the panel, \033[0m"
160
+ echo -e "\033[33mrelease the following port (8888|888|80|443|20|21) in the security group\033[0m"
161
+ echo -e "\033[33m注意:初始密码仅在首次登录面板前能正确获取,其它时间请通过 bt 5 命令修改密码\033[0m"
162
+ echo -e "=================================================================="
163
+ echo -e "=================================================================="
164
+ echo ""
165
+ rm -rf ${panel_path}/data/panel_ssl_error.pl
166
+ fi
167
+ }
168
+
169
+ panel_port_check()
170
+ {
171
+ is_process=$(lsof -n -P -i:$port -sTCP:LISTEN|grep LISTEN|grep -v grep|awk '{print $1}'|sort|uniq|xargs)
172
+ for pn in ${is_process[@]}
173
+ do
174
+ if [ "$pn" = "nginx" ];then
175
+ /etc/init.d/nginx restart
176
+ fi
177
+
178
+ if [ "$pn" = "httpd" ];then
179
+ /etc/init.d/httpd restart
180
+ fi
181
+
182
+ if [ "$pn" = "mysqld" ];then
183
+ /etc/init.d/mysqld restart
184
+ fi
185
+
186
+ if [ "$pn" = "superviso" ];then
187
+ pkill -9 superviso
188
+ sleep 0.2
189
+ supervisord -c /etc/supervisor/supervisord.conf
190
+ fi
191
+
192
+ if [ "$pn" = "pure-ftpd" ];then
193
+ /etc/init.d/pure-ftpd restart
194
+ fi
195
+
196
+ if [ "$pn" = "memcached" ];then
197
+ /etc/init.d/memcached restart
198
+ fi
199
+
200
+ if [ "$pn" = "sudo" ];then
201
+ if [ -f /etc/init.d/redis ];then
202
+ /etc/init.d/redis restart
203
+ fi
204
+ fi
205
+
206
+ if [ "$pn" = "php-fpm" ];then
207
+ php_v=(52 53 54 55 56 70 71 72 73 74);
208
+ for pv in ${php_v[@]};
209
+ do
210
+ if [ -f /etc/init.d/php-fpm-${pv} ];then
211
+ if [ -f /www/server/php/%{pv}/sbin/php-fpm ];then
212
+ if [ -f /tmp/php-cgi-${pv}.sock ];then
213
+ /etc/init.d/php-fpm-${pv} start
214
+ fi
215
+ /etc/init.d/php-fpm-${pv} restart
216
+ fi
217
+ fi
218
+ done
219
+ fi
220
+ done
221
+
222
+ is_ports=$(lsof -n -P -i:$port|grep LISTEN|grep -v grep|awk '{print $2}'|xargs)
223
+ if [ "$is_ports" != '' ];then
224
+ kill -9 $is_ports
225
+ sleep 1
226
+ fi
227
+ }
228
+
229
+ panel_stop()
230
+ {
231
+ echo -e "Stopping Bt-Tasks...\c";
232
+ get_task_pids
233
+ arr=($pids)
234
+ for p in ${arr[@]}
235
+ do
236
+ kill -9 $p
237
+ done
238
+ echo -e " \033[32mdone\033[0m"
239
+
240
+ echo -e "Stopping Bt-Panel...\c";
241
+
242
+ get_panel_pids
243
+ for p in ${arr[@]}
244
+ do
245
+ kill -9 $p &>/dev/null
246
+ done
247
+
248
+ if [ -f $pidfile ];then
249
+ rm -f $pidfile &> /dev/null
250
+ fi
251
+ echo -e " \033[32mdone\033[0m"
252
+ }
253
+
254
+ panel_status()
255
+ {
256
+ port=$(cat $panel_path/data/port.pl)
257
+ get_panel_pids
258
+ if [ "$isStart" != '' ];then
259
+ echo -e "\033[32mBt-Panel (pid $(echo $isStart)) already running\033[0m"
260
+ else
261
+ echo -e "\033[31mBt-Panel not running\033[0m"
262
+ fi
263
+
264
+ get_task_pids
265
+ if [ "$isStart" != '' ];then
266
+ echo -e "\033[32mBt-Task (pid $isStart) already running\033[0m"
267
+ else
268
+ echo -e "\033[31mBt-Task not running\033[0m"
269
+ fi
270
+ }
271
+
272
+ panel_reload()
273
+ {
274
+ isStart=$(ps aux|grep 'runserver:app'|grep -v grep|awk '{print $2}')
275
+ if [ "$isStart" != '' ];then
276
+ kill -9 $isStart
277
+ sleep 0.5
278
+ fi
279
+ get_panel_pids
280
+ if [ "$isStart" != '' ];then
281
+
282
+ get_panel_pids
283
+ for p in ${arr[@]}
284
+ do
285
+ kill -9 $p
286
+ done
287
+ rm -f $pidfile
288
+ echo -e "Reload Bt-Panel.\c";
289
+ nohup $panel_path/BT-Panel >> $log_file 2>&1 &
290
+ isStart=""
291
+ n=0
292
+ while [[ "$isStart" == "" ]];
293
+ do
294
+ echo -e ".\c"
295
+ sleep 0.5
296
+ get_panel_pids
297
+ let n+=1
298
+ if [ $n -gt 8 ];then
299
+ break;
300
+ fi
301
+ done
302
+ if [ "$isStart" == '' ];then
303
+ panel_port_check
304
+ echo -e "\033[31mfailed\033[0m"
305
+ echo '------------------------------------------------------'
306
+ tail -n 20 $log_file
307
+ echo '------------------------------------------------------'
308
+ echo -e "\033[31mError: BT-Panel service startup failed.\033[0m"
309
+ return;
310
+ fi
311
+ echo -e " \033[32mdone\033[0m"
312
+ else
313
+ echo -e "\033[31mBt-Panel not running\033[0m"
314
+ panel_start
315
+ fi
316
+ }
317
+
318
+ install_used()
319
+ {
320
+ if [ -f $panel_path/aliyun.pl ];then
321
+ password=$(cat /dev/urandom | head -n 16 | md5sum | head -c 12)
322
+ username=$($pythonV $panel_path/tools.py panel $password)
323
+ echo "$password" > $panel_path/default.pl
324
+ rm -f $panel_path/aliyun.pl
325
+ chattr +i $panel_path/default.pl
326
+ fi
327
+
328
+ if [ -f $panel_path/php_mysql_auto.pl ];then
329
+ bash $panel_path/script/mysql_auto.sh &> /dev/null
330
+ bash $panel_path/script/php_auto.sh &> /dev/null
331
+ rm -f $panel_path/php_mysql_auto.pl
332
+ fi
333
+
334
+ pip_file=/www/server/panel/pyenv/bin/pip3
335
+ python_file=/www/server/panel/pyenv/bin/python3
336
+ if [ -f $pip_file ];then
337
+ is_rep=$(ls -l /usr/bin/btpip|grep pip3.)
338
+ if [ "${is_rep}" != "" ];then
339
+ rm -f /usr/bin/btpip /usr/bin/btpython
340
+ ln -sf $pip_file /usr/bin/btpip
341
+ ln -sf $python_file /usr/bin/btpython
342
+ fi
343
+ fi
344
+
345
+ }
346
+
347
+ error_logs()
348
+ {
349
+ tail -n 100 $log_file
350
+ }
351
+
352
+
353
+ case "$1" in
354
+ 'start')
355
+ install_used
356
+ panel_start
357
+ ;;
358
+ 'stop')
359
+ panel_stop
360
+ ;;
361
+ 'restart')
362
+ panel_stop
363
+ sleep 1
364
+ panel_start
365
+ ;;
366
+ 'reload')
367
+ panel_reload
368
+ ;;
369
+ 'status')
370
+ panel_status
371
+ ;;
372
+ 'logs')
373
+ error_logs
374
+ ;;
375
+ 'panel')
376
+ $pythonV $panel_path/tools.py cli $2
377
+ ;;
378
+ 'default')
379
+ port=$(cat $panel_path/data/port.pl)
380
+ password=$(cat $panel_path/default.pl)
381
+ if [ -f $panel_path/data/domain.conf ];then
382
+ address=$(cat $panel_path/data/domain.conf)
383
+ fi
384
+ auth_path=/login
385
+ if [ -f $panel_path/data/admin_path.pl ];then
386
+ auth_path=$(cat $panel_path/data/admin_path.pl)
387
+ fi
388
+ if [ "$address" = "" ];then
389
+ address=$(curl -sS --connect-timeout 10 -m 60 https://www.bt.cn/Api/getIpAddress)
390
+ fi
391
+ pool=http
392
+ if [ -f $panel_path/data/ssl.pl ];then
393
+ pool=https
394
+ fi
395
+ if [ "$auth_path" == "/" ];then
396
+ auth_path=/login
397
+ fi
398
+ LOCAL_IP=$(ip addr | grep -E -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -E -v "^127\.|^255\.|^0\." | head -n 1)
399
+ echo -e "=================================================================="
400
+ echo -e "\033[32mBT-Panel default info!\033[0m"
401
+ echo -e "=================================================================="
402
+ echo "外网面板地址: $pool://${address}:${port}${auth_path}"
403
+ echo "内网面板地址: $pool://${LOCAL_IP}:${port}${auth_path}"
404
+ echo -e `$pythonV $panel_path/tools.py username`
405
+ echo -e "password: $password"
406
+ echo -e "\033[33mWarning:\033[0m"
407
+ echo -e "\033[33mIf you cannot access the panel, \033[0m"
408
+ echo -e "\033[33mrelease the following port (8888|888|80|443|20|21) in the security group\033[0m"
409
+ echo -e "\033[33m注意:初始密码仅在首次登录面板前能正确获取,其它时间请通过 bt 5 命令修改密码\033[0m"
410
+ echo -e "=================================================================="
411
+ ;;
412
+ *)
413
+ if [ "${LANG}" != "en_US.UTF-8" ];then
414
+ export LANG=en_US.UTF-8 &> /dev/null
415
+ fi
416
+ if [ "${LC_ALL}" != "en_US.UTF-8" ];then
417
+ export LC_ALL=en_US.UTF-8 &> /dev/null
418
+ fi
419
+ $pythonV $panel_path/tools.py cli $1
420
+ ;;
421
+ esac
422
+
bt-source/init/bt7.init ADDED
@@ -0,0 +1,497 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ # chkconfig: 2345 55 25
3
+ # description: bt Cloud Service
4
+
5
+ ### BEGIN INIT INFO
6
+ # Provides: bt
7
+ # Required-Start: $all
8
+ # Required-Stop: $all
9
+ # Default-Start: 2 3 4 5
10
+ # Default-Stop: 0 1 6
11
+ # Short-Description: starts bt
12
+ # Description: starts the bt
13
+ ### END INIT INFO
14
+
15
+ if [ "$(id -u)" -ne 0 ]; then
16
+ echo "===================警告======================"
17
+ echo "检测到非root用户权限执行bt命令,可能存在异常 "
18
+ echo "请使用此命令重新执行:sudo bt"
19
+ echo "============================================="
20
+ fi
21
+
22
+ panel_init(){
23
+ panel_path=/www/server/panel
24
+ pidfile=$panel_path/logs/panel.pid
25
+ cd $panel_path
26
+ env_path=$panel_path/pyenv/bin/python3
27
+ if [ -f $env_path ];then
28
+ pythonV=$panel_path/pyenv/bin/python3
29
+ chmod -R 700 $panel_path/pyenv/bin &> /dev/null
30
+ is_sed_panel=$(cat $panel_path/BT-Panel|head -n 1|grep '^#!/www/server/panel/pyenv/bin/python3$')
31
+ is_sed_task=$(cat $panel_path/BT-Task|head -n 1|grep '^#!/www/server/panel/pyenv/bin/python3$')
32
+ else
33
+ pythonV=/usr/bin/python
34
+ is_sed_panel=$(cat $panel_path/BT-Panel|head -n 1|grep '^#!/usr/bin/python$')
35
+ is_sed_task=$(cat $panel_path/BT-Task|head -n 1|grep '^#!/usr/bin/python$')
36
+ fi
37
+ if [ "${is_sed_panel}" = "" ];then
38
+ sed -i "s@^#!.*@#!$pythonV@" $panel_path/BT-Panel &> /dev/null
39
+ fi
40
+ is_python=$(cat $panel_path/BT-Task|grep import)
41
+ if [ "${is_python}" != "" ];then
42
+ if [ "${is_sed_task}" = "" ];then
43
+ sed -i "s@^#!.*@#!$pythonV@" $panel_path/BT-Task &> /dev/null
44
+ fi
45
+ fi
46
+ chmod 700 $panel_path/BT-Panel &> /dev/null
47
+ chmod 700 $panel_path/BT-Task &> /dev/null
48
+ log_file=$panel_path/logs/error.log
49
+ task_log_file=$panel_path/logs/task.log
50
+ if [ -f $panel_path/data/ssl.pl ];then
51
+ log_file=/dev/null
52
+ fi
53
+
54
+ port=$(cat $panel_path/data/port.pl)
55
+ }
56
+ panel_init
57
+
58
+ get_panel_pids(){
59
+ isStart=$(ps aux|grep -E '(runserver|BT-Panel)'|grep -v grep|awk '{print $2}'|xargs)
60
+ pids=$isStart
61
+ arr=$isStart
62
+ }
63
+
64
+ get_task_pids(){
65
+ isStart=$(ps aux|grep -E '(task.py|BT-Task)'|grep -v grep|awk '{print $2}'|xargs)
66
+ pids=$isStart
67
+ arr=$isStart
68
+ }
69
+
70
+ panel_start()
71
+ {
72
+ isStart=`ps aux|grep 'runserver:app'|grep -v grep|awk '{print $2}'`
73
+ if [ "$isStart" != '' ];then
74
+ kill -9 $isStart
75
+ fi
76
+ get_panel_pids
77
+
78
+ if [ -f $panel_path/script/init_db.py ]; then
79
+ $pythonV $panel_path/script/init_db.py init_db # 初始化面板数据库
80
+ $pythonV $panel_path/tools.py check_db # 检查面板数据库,默认数据
81
+ fi
82
+ if [ "$isStart" == '' ];then
83
+ rm -f $pidfile &> /dev/null
84
+
85
+ echo -e "Starting Bt-Panel...\c"
86
+ echo '\n' >> $log_file
87
+ if [ $? -ne 0 ];then
88
+ $panel_path/BT-Panel > /dev/null 2>&1
89
+ else
90
+ $panel_path/BT-Panel >> $log_file 2>&1
91
+ fi
92
+ isStart=""
93
+ n=0
94
+ while [[ "$isStart" == "" ]];
95
+ do
96
+ echo -e ".\c"
97
+ sleep 0.5
98
+ get_panel_pids
99
+ let n+=1
100
+ if [ $n -gt 8 ];then
101
+ break;
102
+ fi
103
+ done
104
+ if [ "$isStart" == '' ];then
105
+ panel_port_check
106
+ echo -e "\033[31mfailed\033[0m"
107
+ echo '------------------------------------------------------'
108
+ tail -n 20 $log_file
109
+ echo '------------------------------------------------------'
110
+ echo -e "\033[31mError: BT-Panel service startup failed.\033[0m"
111
+ fi
112
+ echo -e " \033[32mdone\033[0m"
113
+ else
114
+ echo "Starting Bt-Panel... Bt-Panel (pid $(echo $isStart)) already running"
115
+ fi
116
+
117
+ get_task_pids
118
+ if [ "$isStart" == '' ];then
119
+ echo -e "Starting Bt-Tasks... \c"
120
+ echo '\n' >> $task_log_file
121
+ if [ $? -ne 0 ];then
122
+ $panel_path/BT-Task > /dev/null 2>&1
123
+ else
124
+ $panel_path/BT-Task >> $task_log_file 2>&1
125
+ fi
126
+ sleep 0.2
127
+ get_task_pids
128
+ if [ "$isStart" == '' ];then
129
+ echo -e "\033[31mfailed\033[0m"
130
+ echo '------------------------------------------------------'
131
+ tail -n 20 $task_log_file
132
+ echo '------------------------------------------------------'
133
+ echo -e "\033[31mError: BT-Task service startup failed.\033[0m"
134
+ return;
135
+ fi
136
+ echo -e " \033[32mdone\033[0m"
137
+ else
138
+ echo "Starting Bt-Tasks... Bt-Tasks (pid $isStart) already running"
139
+ fi
140
+
141
+ if [[ -f ${panel_path}/data/panel_ssl_error.pl ]]; then
142
+ port=$(cat $panel_path/data/port.pl)
143
+ password=$(cat $panel_path/default.pl)
144
+ if [ -f $panel_path/data/domain.conf ];then
145
+ address=$(cat $panel_path/data/domain.conf)
146
+ fi
147
+ auth_path=/login
148
+ if [ -f $panel_path/data/admin_path.pl ];then
149
+ auth_path=$(cat $panel_path/data/admin_path.pl)
150
+ fi
151
+ if [ "$address" = "" ];then
152
+ address=$(curl -sS --connect-timeout 10 -m 60 https://www.bt.cn/Api/getIpAddress)
153
+ fi
154
+ if [ "$auth_path" == "/" ];then
155
+ auth_path=/login
156
+ fi
157
+ LOCAL_IP=$(ip addr | grep -E -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -E -v "^127\.|^255\.|^0\." | head -n 1)
158
+ echo ""
159
+ echo -e "=================================================================="
160
+ echo -e "\033[32m您的面板SSL证书似乎出现了问题,已为您临时关闭面板HTTPS访问\033[0m"
161
+ echo -e "\033[32m请使用如下地址访问宝塔面板,随后到面板设置中重新开启面板SSL证书即可!\033[0m"
162
+ echo -e "=================================================================="
163
+ echo "外网面板地址: http://${address}:${port}${auth_path}"
164
+ echo "内网面板地址: http://${LOCAL_IP}:${port}${auth_path}"
165
+ echo -e `$pythonV $panel_path/tools.py username`
166
+ echo -e "password: $password"
167
+ echo -e "\033[33mWarning:\033[0m"
168
+ echo -e "\033[33mIf you cannot access the panel, \033[0m"
169
+ echo -e "\033[33mrelease the following port (8888|888|80|443|20|21) in the security group\033[0m"
170
+ echo -e "\033[33m注意:初始密码仅在首次登录面板前能正确获取,其它时间请通过 bt 5 命令修改密码\033[0m"
171
+ echo -e "=================================================================="
172
+ echo -e "=================================================================="
173
+ echo ""
174
+ rm -rf ${panel_path}/data/panel_ssl_error.pl
175
+ fi
176
+ }
177
+
178
+ panel_port_check()
179
+ {
180
+ is_process=$(lsof -n -P -i:$port -sTCP:LISTEN|grep LISTEN|grep -v grep|awk '{print $1}'|sort|uniq|xargs)
181
+ for pn in ${is_process[@]}
182
+ do
183
+ if [ "$pn" = "nginx" ];then
184
+ /etc/init.d/nginx restart
185
+ fi
186
+
187
+ if [ "$pn" = "httpd" ];then
188
+ /etc/init.d/httpd restart
189
+ fi
190
+
191
+ if [ "$pn" = "mysqld" ];then
192
+ /etc/init.d/mysqld restart
193
+ fi
194
+
195
+ if [ "$pn" = "superviso" ];then
196
+ pkill -9 superviso
197
+ sleep 0.2a
198
+ supervisord -c /etc/supervisor/supervisord.conf
199
+ fi
200
+
201
+ if [ "$pn" = "pure-ftpd" ];then
202
+ /etc/init.d/pure-ftpd restart
203
+ fi
204
+
205
+ if [ "$pn" = "memcached" ];then
206
+ /etc/init.d/memcached restart
207
+ fi
208
+
209
+ if [ "$pn" = "sudo" ];then
210
+ if [ -f /etc/init.d/redis ];then
211
+ /etc/init.d/redis restart
212
+ fi
213
+ fi
214
+
215
+ if [ "$pn" = "php-fpm" ];then
216
+ php_v=(52 53 54 55 56 70 71 72 73 74);
217
+ for pv in ${php_v[@]};
218
+ do
219
+ if [ -f /etc/init.d/php-fpm-${pv} ];then
220
+ if [ -f /www/server/php/%{pv}/sbin/php-fpm ];then
221
+ if [ -f /tmp/php-cgi-${pv}.sock ];then
222
+ /etc/init.d/php-fpm-${pv} start
223
+ fi
224
+ /etc/init.d/php-fpm-${pv} restart
225
+ fi
226
+ fi
227
+ done
228
+ fi
229
+ done
230
+
231
+ is_ports=$(lsof -n -P -i:$port|grep LISTEN|grep -v grep|awk '{print $2}'|xargs)
232
+ if [ "$is_ports" != '' ];then
233
+ kill -9 $is_ports
234
+ sleep 1
235
+ fi
236
+ }
237
+
238
+ panel_stop()
239
+ {
240
+ echo -e "Stopping Bt-Tasks...\c";
241
+ get_task_pids
242
+ arr=($pids)
243
+ for p in ${arr[@]}
244
+ do
245
+ kill -9 $p
246
+ done
247
+ echo -e " \033[32mdone\033[0m"
248
+
249
+ echo -e "Stopping Bt-Panel...\c";
250
+
251
+ get_panel_pids
252
+ for p in ${arr[@]}
253
+ do
254
+ kill -9 $p &>/dev/null
255
+ done
256
+
257
+ if [ -f $pidfile ];then
258
+ rm -f $pidfile &> /dev/null
259
+ fi
260
+ echo -e " \033[32mdone\033[0m"
261
+ }
262
+
263
+ panel_status()
264
+ {
265
+ port=$(cat $panel_path/data/port.pl)
266
+ get_panel_pids
267
+ if [ "$isStart" != '' ];then
268
+ echo -e "\033[32mBt-Panel (pid $(echo $isStart)) already running\033[0m"
269
+ else
270
+ echo -e "\033[31mBt-Panel not running\033[0m"
271
+ fi
272
+
273
+ get_task_pids
274
+ if [ "$isStart" != '' ];then
275
+ echo -e "\033[32mBt-Task (pid $isStart) already running\033[0m"
276
+ else
277
+ echo -e "\033[31mBt-Task not running\033[0m"
278
+ fi
279
+ }
280
+
281
+ panel_reload()
282
+ {
283
+ isStart=$(ps aux|grep 'runserver:app'|grep -v grep|awk '{print $2}')
284
+ if [ "$isStart" != '' ];then
285
+ kill -9 $isStart
286
+ sleep 0.5
287
+ fi
288
+ get_panel_pids
289
+ if [ "$isStart" != '' ];then
290
+
291
+ get_panel_pids
292
+ for p in ${arr[@]}
293
+ do
294
+ kill -9 $p
295
+ done
296
+ rm -f $pidfile
297
+ echo -e "Reload Bt-Panel.\c";
298
+ nohup $panel_path/BT-Panel >> $log_file 2>&1 &
299
+ isStart=""
300
+ n=0
301
+ while [[ "$isStart" == "" ]];
302
+ do
303
+ echo -e ".\c"
304
+ sleep 0.5
305
+ get_panel_pids
306
+ let n+=1
307
+ if [ $n -gt 8 ];then
308
+ break;
309
+ fi
310
+ done
311
+ if [ "$isStart" == '' ];then
312
+ panel_port_check
313
+ echo -e "\033[31mfailed\033[0m"
314
+ echo '------------------------------------------------------'
315
+ tail -n 20 $log_file
316
+ echo '------------------------------------------------------'
317
+ echo -e "\033[31mError: BT-Panel service startup failed.\033[0m"
318
+ return;
319
+ fi
320
+ echo -e " \033[32mdone\033[0m"
321
+ else
322
+ echo -e "\033[31mBt-Panel not running\033[0m"
323
+ panel_start
324
+ fi
325
+ }
326
+
327
+ install_used()
328
+ {
329
+ if [ -f $panel_path/random_path.pl ];then
330
+ random_path=$(cat /dev/urandom | head -n 16 | md5sum | head -c 6)
331
+ echo "/${random_path}" > $panel_path/data/admin_path.pl
332
+ random_user=$(cat /dev/urandom | head -n 16 | md5sum | head -c 8)
333
+ re_user=$($pythonV $panel_path/tools.py reusername $random_user)
334
+ rm -f $panel_path/random_path.pl
335
+ fi
336
+
337
+ if [ -f $panel_path/aliyun.pl ];then
338
+ random_user=$(cat /dev/urandom | head -n 16 | md5sum | head -c 8)
339
+ re_user=$($pythonV $panel_path/tools.py reusername $random_user)
340
+ password=$(cat /dev/urandom | head -n 16 | md5sum | head -c 12)
341
+ username=$($pythonV $panel_path/tools.py panel $password)
342
+ echo "$password" > $panel_path/default.pl
343
+ if [ -f "/www/server/panel/data/o.pl" ];then
344
+ IDC_CODE=$(cat /www/server/panel/data/o.pl)
345
+ else
346
+ IDC_CODE=""
347
+ fi
348
+ if [ -f "/www/server/panel/script/download_ip.sh" ];then
349
+ echo "bash /www/server/panel/script/download_ip.sh > /dev/null 2>&1" |at now + 5 minutes
350
+ fi
351
+ echo "curl -sS --connect-timeout 10 -m 60 https://www.bt.cn/Api/SetupCount?type=Linux\&o=$IDC_CODE > /dev/null 2>&1" |at now + 5 minutes
352
+ rm -f $panel_path/aliyun.pl
353
+ chattr +i $panel_path/default.pl
354
+ fi
355
+
356
+ if [ -f $panel_path/php_mysql_auto.pl ];then
357
+ bash $panel_path/script/mysql_auto.sh &> /dev/null
358
+ bash $panel_path/script/php_auto.sh &> /dev/null
359
+ rm -f $panel_path/php_mysql_auto.pl
360
+ fi
361
+
362
+ pip_file=/www/server/panel/pyenv/bin/pip3
363
+ python_file=/www/server/panel/pyenv/bin/python3
364
+ if [ -f $pip_file ];then
365
+ is_rep=$(ls -l /usr/bin/btpip|grep pip3.)
366
+ if [ "${is_rep}" != "" ];then
367
+ rm -f /usr/bin/btpip /usr/bin/btpython
368
+ ln -sf $pip_file /usr/bin/btpip
369
+ ln -sf $python_file /usr/bin/btpython
370
+ fi
371
+ fi
372
+
373
+ }
374
+
375
+
376
+
377
+ error_logs()
378
+ {
379
+ tail -n 100 $log_file
380
+ }
381
+
382
+
383
+ case "$1" in
384
+ 'start')
385
+ install_used
386
+ panel_start
387
+ ;;
388
+ 'stop')
389
+ panel_stop
390
+ ;;
391
+ 'restart')
392
+ if [ -f "/www/server/panel/script/reload_check.py" ];then
393
+ btpython /www/server/panel/script/reload_check.py
394
+ fi
395
+ panel_stop
396
+ sleep 1
397
+ panel_start
398
+ ;;
399
+ 'reload')
400
+ panel_reload
401
+ ;;
402
+ 'status')
403
+ panel_status
404
+ ;;
405
+ 'logs')
406
+ error_logs
407
+ ;;
408
+ 'panel')
409
+ $pythonV $panel_path/tools.py cli $2
410
+ ;;
411
+ 'default')
412
+ port=$(cat $panel_path/data/port.pl)
413
+ password=$(cat $panel_path/default.pl)
414
+ if [ -f $panel_path/data/domain.conf ];then
415
+ address=$(cat $panel_path/data/domain.conf)
416
+ fi
417
+ auth_path=/login
418
+ if [ -f $panel_path/data/admin_path.pl ];then
419
+ auth_path=$(cat $panel_path/data/admin_path.pl)
420
+ fi
421
+ ipv4_address=""
422
+ ipv6_address=""
423
+ if [ "$address" = "" ];then
424
+ ipv4_address=$(curl -4 -sS --connect-timeout 4 -m 5 https://api.bt.cn/Api/getIpAddress 2>&1)
425
+ if [ -z "${ipv4_address}" ];then
426
+ ipv4_address=$(curl -4 -sS --connect-timeout 4 -m 5 https://www.bt.cn/Api/getIpAddress 2>&1)
427
+ if [ -z "${ipv4_address}" ];then
428
+ ipv4_address=$(curl -4 -sS --connect-timeout 4 -m 5 https://www.aapanel.com/api/common/getClientIP 2>&1)
429
+ fi
430
+ fi
431
+ IPV4_REGEX="^([0-9]{1,3}\.){3}[0-9]{1,3}$"
432
+ if ! [[ $ipv4_address =~ $IPV4_REGEX ]]; then
433
+ ipv4_address=""
434
+ fi
435
+
436
+ ipv6_address=$(curl -6 -sS --connect-timeout 4 -m 5 https://www.bt.cn/Api/getIpAddress 2>&1)
437
+ IPV6_REGEX="^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$"
438
+ if ! [[ $ipv6_address =~ $IPV6_REGEX ]]; then
439
+ ipv6_address=""
440
+ else
441
+ if [[ ! $ipv6_address =~ ^\[ ]]; then
442
+ ipv6_address="[$ipv6_address]"
443
+ fi
444
+ fi
445
+ fi
446
+
447
+ pool=http
448
+ if [ -f $panel_path/data/ssl.pl ];then
449
+ pool=https
450
+ fi
451
+ if [ "$auth_path" == "/" ];then
452
+ auth_path=/login
453
+ fi
454
+ panel_site_address=""
455
+ if [ -f /www/server/panel/data/panel_site_address.pl ];then
456
+ panel_site_address=$(cat /www/server/panel/data/panel_site_address.pl)
457
+ fi
458
+ LOCAL_IP=$(ip addr | grep -E -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -E -v "^127\.|^255\.|^0\." | head -n 1)
459
+ echo -e "=================================================================="
460
+ echo -e "\033[32mBT-Panel default info!\033[0m"
461
+ echo -e "=================================================================="
462
+ if [ "$address" = "" ] && [ "$ipv4_address" = "" ] && [ "$ipv6_address" = "" ];then
463
+ address="服务器公网IP"
464
+ echo "获取外网IP失败,请使用服务器公网IP+端口访问面板"
465
+ fi
466
+ if [ "$ipv4_address" ];then
467
+ echo "外网ipv4面板地址: $pool://${ipv4_address}:${port}${auth_path}"
468
+ fi
469
+ if [ "$ipv6_address" ];then
470
+ echo "外网ipv6面板地址: $pool://${ipv6_address}:${port}${auth_path}"
471
+ fi
472
+ if [ "$address" ];then
473
+ echo "外网面板地址: $pool://${address}:${port}${auth_path}"
474
+ fi
475
+ echo "内网面板地址: $pool://${LOCAL_IP}:${port}${auth_path}"
476
+ if [ "$panel_site_address" != "" ];then
477
+ echo "面板免端口地址: ${panel_site_address}"
478
+ fi
479
+ echo -e `$pythonV $panel_path/tools.py username`
480
+ echo -e "password: $password"
481
+ echo -e "\033[33mWarning:\033[0m"
482
+ echo -e "\033[33mIf you cannot access the panel, \033[0m"
483
+ echo -e "\033[33mrelease the following port (8888|888|80|443|20|21) in the security group\033[0m"
484
+ echo -e "\033[33m注意:初始密码仅在首次登录面板前能正确获取,其它时间请通过 bt 5 命令修改密码\033[0m"
485
+ echo -e "=================================================================="
486
+ ;;
487
+ *)
488
+ if [ "${LANG}" != "en_US.UTF-8" ];then
489
+ export LANG=en_US.UTF-8 &> /dev/null
490
+ fi
491
+ if [ "${LC_ALL}" != "en_US.UTF-8" ];then
492
+ export LC_ALL=en_US.UTF-8 &> /dev/null
493
+ fi
494
+ $pythonV $panel_path/tools.py cli $1
495
+ ;;
496
+ esac
497
+
bt-source/install/public.sh ADDED
@@ -0,0 +1,193 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
3
+ pyenv_bin=/www/server/panel/pyenv/bin
4
+ rep_path=${pyenv_bin}:$PATH
5
+ if [ -d "$pyenv_bin" ];then
6
+ PATH=$rep_path
7
+ fi
8
+ export PATH
9
+ export LANG=en_US.UTF-8
10
+ export LANGUAGE=en_US:en
11
+
12
+ NODE_FILE_CHECK=$(cat /www/server/panel/data/node.json |grep 125.88.182.172)
13
+ if [ "${NODE_FILE_CHECK}" ];then
14
+ rm -f /www/server/panel/data/node.json
15
+ fi
16
+
17
+ if [ -f "/www/server/panel/install/d_node.pl" ];then
18
+ LOCAL_DATE=$(date +%Y-%m-%d)
19
+ FILE_DATE=$(stat /www/server/panel/install/d_node.pl|grep Change|awk '{print $2}')
20
+ if [ "${LOCAL_DATE}" != "${FILE_DATE}" ];then
21
+ rm -f /www/server/panel/install/d_node.pl
22
+ else
23
+ test_url=$(cat /www/server/panel/install/d_node.pl)
24
+ HTTP_CHECK=$(curl --connect-timeout 3 -m 3 2>/dev/null -w "%{http_code} %{time_total}" ${test_url}/net_test|xargs|awk '{print $2}')
25
+ if [ "${HTTP_CHECK}" == "200" ];then
26
+ NODE_URL=$test_url
27
+ fi
28
+ fi
29
+ fi
30
+
31
+ get_node_url(){
32
+ nodes=(https://dg2.bt.cn https://download.bt.cn https://ctcc1-node.bt.cn https://cmcc1-node.bt.cn https://ctcc2-node.bt.cn https://hk1-node.bt.cn https://na1-node.bt.cn https://jp1-node.bt.cn https://cf1-node.aapanel.com);
33
+
34
+ if [ -f "/www/server/panel/data/domestic_ip.pl" ];then
35
+ nodes=(https://dg2.bt.cn https://download.bt.cn https://ctcc1-node.bt.cn https://cmcc1-node.bt.cn https://ctcc2-node.bt.cn https://hk1-node.bt.cn);
36
+ fi
37
+
38
+ if [ -f "/www/server/panel/data/foreign_ip.pl" ];then
39
+ nodes=(https://cf1-node.aapanel.com https://dg2.bt.cn https://na1-node.bt.cn https://jp1-node.bt.cn https://download.bt.cn https://ctcc1-node.bt.cn https://ctcc2-node.bt.cn https://hk1-node.bt.cn);
40
+ fi
41
+
42
+ if [ "$1" ];then
43
+ nodes=($(echo ${nodes[*]}|sed "s#${1}##"))
44
+ fi
45
+
46
+ tmp_file1=/dev/shm/net_test1.pl
47
+ tmp_file2=/dev/shm/net_test2.pl
48
+ [ -f "${tmp_file1}" ] && rm -f ${tmp_file1}
49
+ [ -f "${tmp_file2}" ] && rm -f ${tmp_file2}
50
+ touch $tmp_file1
51
+ touch $tmp_file2
52
+ for node in ${nodes[@]};
53
+ do
54
+ if [ "${node}" == "https://cf1-node.aapanel.com" ];then
55
+ NODE_CHECK=$(curl --connect-timeout 3 -m 3 2>/dev/null -w "%{http_code} %{time_total}" ${node}/1net_test|xargs)
56
+ else
57
+ NODE_CHECK=$(curl --connect-timeout 3 -m 3 2>/dev/null -w "%{http_code} %{time_total}" ${node}/net_test|xargs)
58
+ fi
59
+ RES=$(echo ${NODE_CHECK}|awk '{print $1}')
60
+ NODE_STATUS=$(echo ${NODE_CHECK}|awk '{print $2}')
61
+ TIME_TOTAL=$(echo ${NODE_CHECK}|awk '{print $3 * 1000 - 500 }'|cut -d '.' -f 1)
62
+ if [ "${NODE_STATUS}" == "200" ];then
63
+ if [ $TIME_TOTAL -lt 300 ];then
64
+ if [ $RES -ge 1500 ];then
65
+ echo "$RES $node" >> $tmp_file1
66
+ fi
67
+ else
68
+ if [ $RES -ge 1500 ];then
69
+ echo "$TIME_TOTAL $node" >> $tmp_file2
70
+ fi
71
+ fi
72
+
73
+ i=$(($i+1))
74
+ if [ $TIME_TOTAL -lt 300 ];then
75
+ if [ $RES -ge 2390 ];then
76
+ break;
77
+ fi
78
+ fi
79
+ fi
80
+ done
81
+
82
+ NODE_URL=$(cat $tmp_file1|sort -r -g -t " " -k 1|head -n 1|awk '{print $2}')
83
+ if [ -z "$NODE_URL" ];then
84
+ NODE_URL=$(cat $tmp_file2|sort -g -t " " -k 1|head -n 1|awk '{print $2}')
85
+ if [ -z "$NODE_URL" ];then
86
+ NODE_URL='https://download.bt.cn';
87
+ fi
88
+ fi
89
+ rm -f $tmp_file1
90
+ rm -f $tmp_file2
91
+ }
92
+
93
+ GetCpuStat(){
94
+ time1=$(cat /proc/stat |grep 'cpu ')
95
+ sleep 1
96
+ time2=$(cat /proc/stat |grep 'cpu ')
97
+ cpuTime1=$(echo ${time1}|awk '{print $2+$3+$4+$5+$6+$7+$8}')
98
+ cpuTime2=$(echo ${time2}|awk '{print $2+$3+$4+$5+$6+$7+$8}')
99
+ runTime=$((${cpuTime2}-${cpuTime1}))
100
+ idelTime1=$(echo ${time1}|awk '{print $5}')
101
+ idelTime2=$(echo ${time2}|awk '{print $5}')
102
+ idelTime=$((${idelTime2}-${idelTime1}))
103
+ useTime=$(((${runTime}-${idelTime})*3))
104
+ [ ${useTime} -gt ${runTime} ] && cpuBusy="true"
105
+ if [ "${cpuBusy}" == "true" ]; then
106
+ cpuCore=$((${cpuInfo}/2))
107
+ else
108
+ cpuCore=$((${cpuInfo}-1))
109
+ fi
110
+ }
111
+ GetPackManager(){
112
+ if [ -f "/usr/bin/yum" ] && [ -f "/etc/yum.conf" ]; then
113
+ PM="yum"
114
+ elif [ -f "/usr/bin/apt-get" ] && [ -f "/usr/bin/dpkg" ]; then
115
+ PM="apt-get"
116
+ fi
117
+ }
118
+
119
+ bt_check(){
120
+ p_path=/www/server/panel/class/panelPlugin.py
121
+ if [ -f $p_path ];then
122
+ is_ext=$(cat $p_path|grep btwaf)
123
+ if [ "$is_ext" != "" ];then
124
+ send_check
125
+ fi
126
+ fi
127
+
128
+ p_path=/www/server/panel/BTPanel/templates/default/index.html
129
+ if [ -f $p_path ];then
130
+ is_ext=$(cat $p_path|grep fbi)
131
+ if [ "$is_ext" != "" ];then
132
+ send_check
133
+ fi
134
+ fi
135
+ }
136
+
137
+ send_check(){
138
+ chattr -i /etc/init.d/bt
139
+ chmod +x /etc/init.d/bt
140
+ p_path2=/www/server/panel/class/common.py
141
+ p_version=$(cat $p_path2|grep "version = "|awk '{print $3}'|tr -cd [0-9.])
142
+ curl -sS --connect-timeout 3 -m 60 https://www.bt.cn/api/panel/notpro?version=$p_version
143
+ NODE_URL=""
144
+ exit 0;
145
+ }
146
+ GetSysInfo(){
147
+ if [ "${PM}" = "yum" ]; then
148
+ SYS_VERSION=$(cat /etc/redhat-release)
149
+ elif [ "${PM}" = "apt-get" ]; then
150
+ SYS_VERSION=$(cat /etc/issue)
151
+ fi
152
+ SYS_INFO=$(uname -msr)
153
+ SYS_BIT=$(getconf LONG_BIT)
154
+ MEM_TOTAL=$(free -m|grep Mem|awk '{print $2}')
155
+ CPU_INFO=$(getconf _NPROCESSORS_ONLN)
156
+ GCC_VER=$(gcc -v 2>&1|grep "gcc version"|awk '{print $3}')
157
+ CMAKE_VER=$(cmake --version|grep version|awk '{print $3}')
158
+
159
+ echo -e ${SYS_VERSION}
160
+ echo -e Bit:${SYS_BIT} Mem:${MEM_TOTAL}M Core:${CPU_INFO} gcc:${GCC_VER} cmake:${CMAKE_VER}
161
+ echo -e ${SYS_INFO}
162
+ }
163
+ cpuInfo=$(getconf _NPROCESSORS_ONLN)
164
+ if [ "${cpuInfo}" -ge "4" ];then
165
+ GetCpuStat
166
+ else
167
+ cpuCore="1"
168
+ fi
169
+ GetPackManager
170
+
171
+ if [ -d "/www/server/phpmyadmin/pma" ];then
172
+ rm -rf /www/server/phpmyadmin/pma
173
+ EN_CHECK=$(cat /www/server/panel/config/config.json |grep English)
174
+ if [ "${EN_CHECK}" ];then
175
+ curl https://download.bt.cn/install/update6_en.sh|bash
176
+ else
177
+ curl https://download.bt.cn/install/update6.sh|bash
178
+ fi
179
+ echo > /www/server/panel/data/restart.pl
180
+ fi
181
+
182
+ if [ ! $NODE_URL ];then
183
+ EN_CHECK=$(cat /www/server/panel/config/config.json |grep English)
184
+ if [ -z "${EN_CHECK}" ];then
185
+ echo '正在选择下载节点...';
186
+ else
187
+ echo "selecting download node...";
188
+ fi
189
+ get_node_url
190
+ bt_check
191
+ fi
192
+
193
+
bt-source/panel/BT-Panel ADDED
@@ -0,0 +1,532 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/www/server/panel/pyenv/bin/python
2
+ #coding: utf-8
3
+ # +-------------------------------------------------------------------
4
+ # | 宝塔Linux面板
5
+ # +-------------------------------------------------------------------
6
+ # | Copyright (c) 2015-2099 宝塔软件(http://bt.cn) All rights reserved.
7
+ # +-------------------------------------------------------------------
8
+ # | Author: hwliang <hwl@bt.cn>
9
+ # +-------------------------------------------------------------------
10
+
11
+ import os
12
+ import sys
13
+ import ssl
14
+ import time
15
+ import logging
16
+ import threading
17
+ import pyinotify
18
+ import socket
19
+ import re
20
+ from gevent import monkey
21
+ from gevent.pywsgi import WSGIServer
22
+ from gevent.pool import Pool
23
+ from concurrent.futures import ThreadPoolExecutor
24
+
25
+ # 尽早打猴子补丁,确保所有I/O操作被协程化
26
+ monkey.patch_all(socket=True, select=True)
27
+
28
+ # 常量定义
29
+ _PATH = '/www/server/panel'
30
+ PID_FILE = f"{_PATH}/logs/panel.pid"
31
+ TASK_PID_FILE = f"{_PATH}/logs/task.pid"
32
+ UPGRADE_FLASK_TIME_FILE = f"{_PATH}/upgrade_flask_time.pl"
33
+ ERROR_LOG = f"{_PATH}/logs/error.log"
34
+ PORT_FILE = f"{_PATH}/data/port.pl"
35
+ IPV6_FLAG = f"{_PATH}/data/ipv6.pl"
36
+ SSL_FLAG = f"{_PATH}/data/ssl.pl"
37
+ SSL_KEY = f"{_PATH}/ssl/privateKey.pem"
38
+ SSL_CERT = f"{_PATH}/ssl/certificate.pem"
39
+ SSL_ERROR_FLAG = f"{_PATH}/data/panel_ssl_error.pl"
40
+ SSL_VERIFY_FLAG = f"{_PATH}/data/ssl_verify_data.pl"
41
+ SSL_CRL = f"{_PATH}/ssl/crl.pem"
42
+ SSL_CA = f"{_PATH}/ssl/ca.pem"
43
+ UPGRADE_FILE = f"{_PATH}/script/upgrade_flask.sh"
44
+
45
+ # 性能优化参数
46
+ MAX_WORKERS = 1000 # 最大协程数
47
+ MAX_THREAD_WORKERS = 10 # 线程池大小(用于CPU密集型任务)
48
+ TCP_BUFFER_SIZE = 1024*1024 # TCP缓冲区大小
49
+
50
+ # 设置工作目录和导入路径
51
+ os.chdir(_PATH)
52
+ if 'class/' not in sys.path:
53
+ sys.path.insert(0, 'class/')
54
+
55
+ # 导入面板模块
56
+ from BTPanel import app, public
57
+
58
+ # 检查调试模式
59
+ is_debug = os.path.exists('data/debug.pl')
60
+
61
+ # 创建协程池和线程池
62
+ greenlet_pool = Pool(MAX_WORKERS)
63
+ thread_pool = ThreadPoolExecutor(max_workers=MAX_THREAD_WORKERS)
64
+
65
+ # 配置日志
66
+ logging.basicConfig(
67
+ level=logging.DEBUG if is_debug else logging.WARNING,
68
+ format="[%(asctime)s][%(levelname)s] - %(message)s"
69
+ )
70
+ logger = logging.getLogger(app.name)
71
+
72
+ def setup_logging():
73
+ """设置日志配置"""
74
+ if is_debug:
75
+ logger.setLevel(logging.DEBUG)
76
+ else:
77
+ logger.setLevel(logging.WARNING)
78
+
79
+ # 将Flask应用日志与主日志集成
80
+ app.logger.handlers = logger.handlers
81
+ app.logger.setLevel(logger.level)
82
+
83
+ def check_plugin_loader():
84
+ """检查并加载适当的插件加载器"""
85
+ try:
86
+ machine = os.uname().machine
87
+ except Exception as e:
88
+ logger.error(f"获取系统架构失败: {e}")
89
+ machine = 'x86_64'
90
+
91
+ plugin_loader_file = 'class/PluginLoader.so'
92
+ plugin_loader_src_file = f"class/PluginLoader.{machine}.Python3.7.so"
93
+
94
+ # 特殊处理x86_64架构的glibc版本
95
+ if machine == 'x86_64':
96
+ glibc_version = public.get_glibc_version()
97
+ if glibc_version in ['2.14', '2.13', '2.12', '2.11', '2.10']:
98
+ plugin_loader_src_file = f"class/PluginLoader.{machine}.glibc214.Python3.7.so"
99
+
100
+ if os.path.exists(plugin_loader_src_file):
101
+ try:
102
+ os.system(f"\cp -f {plugin_loader_src_file} {plugin_loader_file}")
103
+ logger.info(f"已加载插件加载器: {plugin_loader_src_file}")
104
+ except Exception as e:
105
+ logger.error(f"加载插件加载器失败: {e}")
106
+
107
+ def start_background_task():
108
+ """启动后台任务"""
109
+ try:
110
+ public.ExecShell(f"chmod 700 {_PATH}/BT-Task")
111
+ public.ExecShell(f"{_PATH}/BT-Task")
112
+ logger.info("后台任务已启动")
113
+ except Exception as e:
114
+ logger.error(f"启动后台任务失败: {e}")
115
+
116
+ def monitor_task():
117
+ """监控后台任务状态,必要时重启"""
118
+ cycle = 60
119
+ while True:
120
+ try:
121
+ time.sleep(cycle)
122
+
123
+ # 检查pid文件
124
+ if not os.path.exists(TASK_PID_FILE):
125
+ logger.warning("任务PID文件不存在,重启任务")
126
+ start_background_task()
127
+ continue
128
+
129
+ # 读取pid
130
+ task_pid = public.readFile(TASK_PID_FILE).strip()
131
+ if not task_pid:
132
+ logger.warning("任务PID为空,重启任务")
133
+ start_background_task()
134
+ continue
135
+
136
+ # 检查进程是否存在
137
+ comm_file = f"/proc/{task_pid}/comm"
138
+ if not os.path.exists(comm_file):
139
+ logger.warning(f"任务进程 {task_pid} 不存在,重启任务")
140
+ start_background_task()
141
+ continue
142
+
143
+ # 检查是否为面板任务进程
144
+ comm = public.readFile(comm_file).strip()
145
+ if 'BT-Task' not in comm:
146
+ logger.warning(f"进程 {task_pid} 不是面板任务,重启任务")
147
+ start_background_task()
148
+
149
+ except Exception as e:
150
+ logger.error(f"监控任务时发生错误: {e}")
151
+
152
+ def setup_ssl_context():
153
+ """配置SSL上下文"""
154
+ if not (os.path.exists(SSL_FLAG) and os.path.exists(SSL_KEY) and os.path.exists(SSL_CERT)):
155
+ return None
156
+
157
+ # 检查证书文件大小
158
+ if os.path.getsize(SSL_KEY) < 10 or os.path.getsize(SSL_CERT) < 10:
159
+ logger.warning("SSL证书文件大小异常,禁用SSL")
160
+ try:
161
+ os.remove(SSL_KEY)
162
+ os.remove(SSL_CERT)
163
+ os.remove(SSL_FLAG)
164
+ public.writeFile(SSL_ERROR_FLAG, 'True')
165
+ except Exception as e:
166
+ logger.error(f"清理SSL文件失败: {e}")
167
+ return None
168
+
169
+ try:
170
+ ssl_context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
171
+ ssl_context.load_cert_chain(certfile=SSL_CERT, keyfile=SSL_KEY)
172
+
173
+ # 设置最低TLS版本
174
+ if hasattr(ssl_context, "minimum_version"):
175
+ ssl_context.minimum_version = ssl.TLSVersion.TLSv1_2
176
+ else:
177
+ ssl_context.options |= (ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3 | ssl.OP_NO_TLSv1 | ssl.OP_NO_TLSv1_1)
178
+
179
+ # 设置加密套件
180
+ ssl_context.set_ciphers("ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE")
181
+
182
+ # 证书验证配置
183
+ if os.path.exists(SSL_VERIFY_FLAG):
184
+ if os.path.exists(SSL_CA):
185
+ ssl_context.load_verify_locations(SSL_CA)
186
+ ssl_context.verify_mode = ssl.CERT_REQUIRED
187
+ ssl_context.set_default_verify_paths()
188
+ logger.info("启用SSL证书验证")
189
+ else:
190
+ logger.warning("SSL验证数据存在但CA证书不存在")
191
+
192
+ logger.info("SSL上下文配置完成")
193
+ return ssl_context
194
+ except Exception as e:
195
+ logger.error(f"配置SSL上下文失败: {e}")
196
+ return None
197
+
198
+ def check_upgrade():
199
+ """检查并执行面板升级"""
200
+ try:
201
+ need_upgrade = True
202
+ # 检查是否需要升级
203
+ last_upgrade_time = 0 if not os.path.exists(UPGRADE_FLASK_TIME_FILE) else os.path.getmtime(UPGRADE_FLASK_TIME_FILE)
204
+ if time.time() - last_upgrade_time < 86400: # 24小时内不重复升级
205
+ logger.info("未到升级时间,跳过升级检查")
206
+ need_upgrade = False
207
+
208
+ for path_dir in sys.path:
209
+ if not path_dir.endswith("site-packages"):
210
+ continue
211
+ file = os.path.join(path_dir, "flask", "__init__.py")
212
+ if os.path.exists(file):
213
+ with open(file, "rt") as f:
214
+ data = f.read()
215
+ if re.search("__version__\s*=\s*\"1\.\d+", data):
216
+ need_upgrade = True
217
+
218
+ if not need_upgrade:
219
+ return
220
+
221
+ # 检查升级时间文件
222
+ if not os.path.exists(UPGRADE_FLASK_TIME_FILE):
223
+ with open(UPGRADE_FLASK_TIME_FILE, 'w') as f:
224
+ f.write(str(time.time()))
225
+ logger.info("创建升级时间文件")
226
+
227
+ # 执行升级脚本
228
+ if os.path.exists(UPGRADE_FILE):
229
+ logger.info("开始执行面板升级...")
230
+ os.system(f"nohup bash {UPGRADE_FILE} &>/dev/null &")
231
+ with open(UPGRADE_FLASK_TIME_FILE, 'w') as f:
232
+ f.write(str(time.time()))
233
+ logger.info("面板升级已启动")
234
+ except Exception as e:
235
+ logger.error(f"检查升级时发生错误: {e}")
236
+
237
+ def cleanup():
238
+ """清理临时文件和旧文件"""
239
+ try:
240
+ # 清理临时文件
241
+ public.clear_tmp_file()
242
+ logger.info("临时文件清理完成")
243
+
244
+ # 移除旧的flask目录
245
+ if os.path.exists('class/flask'):
246
+ os.system('rm -rf class/flask')
247
+ logger.info("移除旧的Flask目录")
248
+ except Exception as e:
249
+ logger.error(f"清理过程中发生错误: {e}")
250
+
251
+ def init_database():
252
+ """初始化数据库(如果需要)"""
253
+ if not os.path.exists(f"{_PATH}/data/db"):
254
+ try:
255
+ logger.info("初始化数据库...")
256
+ os.system(f"nohup {public.get_python_bin()} {_PATH}/script/init_db.py &>/dev/null &")
257
+ except Exception as e:
258
+ logger.error(f"初始化数据库失败: {e}")
259
+
260
+ class PanelEventHandler(pyinotify.ProcessEvent):
261
+ """面板文件变更事件处理器"""
262
+ _exts = ['py', 'html', 'BT-Panel', 'so']
263
+ _exclude_patterns = [
264
+ re.compile(f'{_PATH}/plugin/.+'),
265
+ re.compile(f'{_PATH}/(tmp|temp|install)/.+'),
266
+ re.compile(f'{_PATH}/pyenv/.+'),
267
+ re.compile(f'{_PATH}/class/projectModel/.+'),
268
+ re.compile(f'{_PATH}/class/databaseModel/.+')
269
+ ]
270
+ _last_time = 0
271
+
272
+ def is_ext(self, filename):
273
+ """检查文件是否为需要监控的类型"""
274
+ fname = os.path.basename(filename)
275
+ if not fname or '.' not in fname:
276
+ return False
277
+
278
+ ext = fname.split('.')[-1]
279
+ if ext not in self._exts:
280
+ return False
281
+
282
+ for pattern in self._exclude_patterns:
283
+ if pattern.match(filename):
284
+ return False
285
+
286
+ return True
287
+
288
+ def panel_reload(self, filename, event_type):
289
+ """处理面板重载事件"""
290
+ stime = time.time()
291
+ if stime - self._last_time < 2: # 防抖处理
292
+ return
293
+
294
+ self._last_time = stime
295
+ logger.debug(f'检测到文件: {filename} -> {event_type}')
296
+
297
+ fname = os.path.basename(filename)
298
+ if fname in ['BT-Task', 'task.py']:
299
+ logger.info('正在重启后台任务...')
300
+ public.ExecShell(f"nohup bash {_PATH}/init.sh restart &>{ERROR_LOG} &")
301
+ logger.info('后台任务已启动!')
302
+ else:
303
+ logger.info('正在重启面板...')
304
+ time.sleep(0.5) # 给系统一些时间处理文件变更
305
+ public.ExecShell(f"nohup bash {_PATH}/init.sh reload &>{ERROR_LOG} &")
306
+
307
+ def process_IN_CREATE(self, event):
308
+ """处理文件创建事件"""
309
+ if self.is_ext(event.pathname):
310
+ # 使用协程池处理事件
311
+ greenlet_pool.spawn(self.panel_reload, event.pathname, '[创建]')
312
+
313
+ def process_IN_DELETE(self, event):
314
+ """处理文件删除事件"""
315
+ if self.is_ext(event.pathname):
316
+ greenlet_pool.spawn(self.panel_reload, event.pathname, '[删除]')
317
+
318
+ def process_IN_MODIFY(self, event):
319
+ """处理文件修改事件"""
320
+ if self.is_ext(event.pathname):
321
+ greenlet_pool.spawn(self.panel_reload, event.pathname, '[修改]')
322
+
323
+ def process_IN_MOVED_TO(self, event):
324
+ """处理文件移动事件"""
325
+ if self.is_ext(event.pathname):
326
+ greenlet_pool.spawn(self.panel_reload, event.pathname, '[覆盖]')
327
+
328
+ def start_file_watcher():
329
+ """启动文件变更监控"""
330
+ logger.info('启动文件变更监控...')
331
+ try:
332
+ event_handler = PanelEventHandler()
333
+ watch_manager = pyinotify.WatchManager()
334
+ mask = pyinotify.IN_CREATE | pyinotify.IN_DELETE | pyinotify.IN_MODIFY | pyinotify.IN_MOVED_TO
335
+ watch_manager.add_watch(_PATH, mask, auto_add=True, rec=True)
336
+ notifier = pyinotify.Notifier(watch_manager, event_handler)
337
+ notifier.loop()
338
+ except Exception as e:
339
+ logger.error(f"启动文件监控失败: {e}")
340
+
341
+ def get_server_port():
342
+ """获取服务器端口配置"""
343
+ try:
344
+ with open(PORT_FILE) as f:
345
+ port = int(f.read().strip())
346
+ return port if port else 8888
347
+ except Exception as e:
348
+ logger.warning(f"读取端口配置失败,使用默认端口 8888: {e}")
349
+ return 8888
350
+
351
+ def get_server_host():
352
+ """获取服务器主机配置"""
353
+ return "0:0:0:0:0:0:0:0" if os.path.exists(IPV6_FLAG) else '0.0.0.0'
354
+
355
+ def optimize_socket_options(server_socket):
356
+ """优化套接字选项"""
357
+ try:
358
+ # 增大TCP缓冲区提高吞吐量
359
+ server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, TCP_BUFFER_SIZE)
360
+ server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, TCP_BUFFER_SIZE)
361
+
362
+ # 启用TCP keep-alive
363
+ server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
364
+
365
+ # 设置TCP keep-alive参数
366
+ server_socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_KEEPIDLE, 60)
367
+ server_socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_KEEPINTVL, 10)
368
+ server_socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_KEEPCNT, 5)
369
+
370
+ logger.info(f"套接字优化已应用: 缓冲区大小={TCP_BUFFER_SIZE}")
371
+ except Exception as e:
372
+ logger.warning(f"套接字优化失败: {e}")
373
+
374
+ def create_server_socket(host, port, ssl_context=None):
375
+ """创建并优化服务器套接字"""
376
+
377
+ # 创建套接字
378
+ if host == "0:0:0:0:0:0:0:0": # IPv6
379
+ server_socket = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)
380
+ server_socket.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0)
381
+ else: # IPv4
382
+ server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
383
+
384
+ # 设置套接字选项
385
+ server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
386
+ optimize_socket_options(server_socket)
387
+
388
+ # 绑定地址和端口
389
+ server_socket.bind((host, port))
390
+ server_socket.listen(100) # 增大backlog
391
+
392
+ logger.info(f"服务器套接字已创建: {host}:{port}")
393
+ return server_socket
394
+
395
+ def start_web_server():
396
+ """启动Web服务器"""
397
+ # 获取配置
398
+ PORT = get_server_port()
399
+ HOST = get_server_host()
400
+ ssl_context = setup_ssl_context()
401
+
402
+ # 启动服务器
403
+ try:
404
+ # 创建并优化服务器套接字
405
+ server_socket = create_server_socket(HOST, PORT, ssl_context)
406
+
407
+ # 尝试使用flask_sock
408
+ try:
409
+ import flask_sock
410
+ if ssl_context:
411
+ http_server = WSGIServer(server_socket, app, ssl_context=ssl_context, log=app.logger,spawn=100)
412
+ else:
413
+ http_server = WSGIServer(server_socket, app, log=app.logger,spawn=100)
414
+ logger.info(f"服务器将使用flask_sock在 {HOST}:{PORT} 启动")
415
+ except:
416
+ # 回退到geventwebsocket
417
+ from geventwebsocket.handler import WebSocketHandler
418
+ if ssl_context:
419
+ http_server = WSGIServer(server_socket, app, ssl_context=ssl_context,
420
+ handler_class=WebSocketHandler, log=app.logger,spawn=100)
421
+ else:
422
+ http_server = WSGIServer(server_socket, app, handler_class=WebSocketHandler, log=app.logger,spawn=100)
423
+ logger.info(f"服务器将使用geventwebsocket在 {HOST}:{PORT} 启动")
424
+
425
+ # 记录启动信息
426
+ protocol = "HTTPS" if ssl_context else "HTTP"
427
+ logger.info(f"{protocol} 服务器已启动,监听地址: {HOST}:{PORT}")
428
+
429
+ # 启动服务器
430
+ http_server.serve_forever()
431
+ except Exception as e:
432
+ try:
433
+ if e.errno == 98 or 'Address already in use' in str(e):
434
+ logger.info(f"端口 {PORT} 已被占用,请检查是否有其他程序占用该端口。")
435
+ logger.info(f"如是新安装面板可尝试重装解决")
436
+ except:
437
+ pass
438
+ logger.critical(f"启动Web服务器失败: {e}")
439
+ sys.exit(1)
440
+
441
+ def daemonize():
442
+ """将进程转为守护进程"""
443
+ # 确保我们不是进程组组长
444
+ if os.fork():
445
+ sys.exit(0)
446
+
447
+ # 创建新会话
448
+ os.setsid()
449
+
450
+ # 再次fork,确保我们不是会话组长
451
+ if os.fork():
452
+ sys.exit(0)
453
+
454
+ # 关闭标准输入输出
455
+ sys.stdout.flush()
456
+ sys.stderr.flush()
457
+
458
+ # 重定向标准输入到/dev/null
459
+ si = open(os.devnull, 'r')
460
+ os.dup2(si.fileno(), sys.stdin.fileno())
461
+
462
+ # 重定向标准输出和错误到日志文件
463
+ if is_debug:
464
+ try:
465
+ so = open(ERROR_LOG, 'a+')
466
+ os.dup2(so.fileno(), sys.stdout.fileno())
467
+ os.dup2(so.fileno(), sys.stderr.fileno())
468
+ except Exception as e:
469
+ logger.error(f"重定向输出失败: {e}")
470
+
471
+ def init_jobs():
472
+ '''初始化面板环境检查任务'''
473
+ public.ExecShell("nohup {} {}/class/jobs.py &>{}/logs/jobs.log &".format(public.get_python_bin(), _PATH, _PATH))
474
+
475
+ def main():
476
+ """主函数"""
477
+ try:
478
+ # 设置日志
479
+ setup_logging()
480
+
481
+ # 清理旧进程
482
+ if os.path.exists(PID_FILE):
483
+ try:
484
+ pid = public.readFile(PID_FILE).strip()
485
+ if pid:
486
+ os.system(f"kill -9 {pid}")
487
+ if os.path.exists(PID_FILE):
488
+ time.sleep(0.5)
489
+ os.system(f"kill -9 {pid}")
490
+ time.sleep(0.5)
491
+ logger.info(f"已终止旧面板进程 {pid}")
492
+ except Exception as e:
493
+ logger.warning(f"终止旧面板进程失败: {e}")
494
+
495
+ # 守护进程模式
496
+ daemonize()
497
+ # 写入新的PID
498
+ with open(PID_FILE, 'w') as f:
499
+ f.write(str(os.getpid()))
500
+
501
+ # 初始化
502
+ logger.info("面板启动中...")
503
+ check_plugin_loader()
504
+ cleanup()
505
+ check_upgrade()
506
+ init_database()
507
+ init_jobs()
508
+
509
+ # 启动后台任务
510
+ start_background_task()
511
+
512
+ # 启动任务监控线程
513
+ task_thread = threading.Thread(target=monitor_task)
514
+ task_thread.daemon = True
515
+ task_thread.start()
516
+
517
+ # 调试模式下启动文件监控
518
+ if is_debug:
519
+ logger.info("调试模式已启用")
520
+ dev_thread = threading.Thread(target=start_file_watcher)
521
+ dev_thread.daemon = True
522
+ dev_thread.start()
523
+
524
+ # 启动Web服务器
525
+ start_web_server()
526
+
527
+ except Exception as e:
528
+ logger.critical(f"面板启动失败: {e}")
529
+ sys.exit(1)
530
+
531
+ if __name__ == '__main__':
532
+ main()
bt-source/panel/BT-Task ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/www/server/panel/pyenv/bin/python
2
+ #coding: utf-8
3
+ # +-------------------------------------------------------------------
4
+ # | 宝塔Linux面板
5
+ # +-------------------------------------------------------------------
6
+ # | Copyright (c) 2015-2099 宝塔软件(http://bt.cn) All rights reserved.
7
+ # +-------------------------------------------------------------------
8
+ # | Author: hwliang <hwl@bt.cn>
9
+ # +-------------------------------------------------------------------
10
+
11
+ import os,sys
12
+ os.chdir('/www/server/panel')
13
+ import task
14
+ task.main()
bt-source/panel/BTPanel/__init__.py ADDED
The diff for this file is too large to render. See raw diff
 
bt-source/panel/BTPanel/static/ckeditor/CHANGES.md ADDED
The diff for this file is too large to render. See raw diff
 
bt-source/panel/BTPanel/static/ckeditor/LICENSE.md ADDED
@@ -0,0 +1,1420 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Software License Agreement
2
+ ==========================
3
+
4
+ CKEditor - The text editor for Internet - https://ckeditor.com/
5
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
6
+
7
+ Licensed under the terms of any of the following licenses at your
8
+ choice:
9
+
10
+ - GNU General Public License Version 2 or later (the "GPL")
11
+ http://www.gnu.org/licenses/gpl.html
12
+ (See Appendix A)
13
+
14
+ - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
15
+ http://www.gnu.org/licenses/lgpl.html
16
+ (See Appendix B)
17
+
18
+ - Mozilla Public License Version 1.1 or later (the "MPL")
19
+ http://www.mozilla.org/MPL/MPL-1.1.html
20
+ (See Appendix C)
21
+
22
+ You are not required to, but if you want to explicitly declare the
23
+ license you have chosen to be bound to when using, reproducing,
24
+ modifying and distributing this software, just include a text file
25
+ titled "legal.txt" in your version of this software, indicating your
26
+ license choice. In any case, your choice will not restrict any
27
+ recipient of your version of this software to use, reproduce, modify
28
+ and distribute this software under any of the above licenses.
29
+
30
+ Sources of Intellectual Property Included in CKEditor
31
+ -----------------------------------------------------
32
+
33
+ Where not otherwise indicated, all CKEditor content is authored by
34
+ CKSource engineers and consists of CKSource-owned intellectual
35
+ property. In some specific instances, CKEditor will incorporate work
36
+ done by developers outside of CKSource with their express permission.
37
+
38
+ The following libraries are included in CKEditor under the MIT license (see Appendix D):
39
+
40
+ * CKSource Samples Framework (included in the samples) - Copyright (c) 2014-2019, CKSource - Frederico Knabben.
41
+ * PicoModal (included in `samples/js/sf.js`) - Copyright (c) 2012 James Frasca.
42
+ * CodeMirror (included in the samples) - Copyright (C) 2014 by Marijn Haverbeke <marijnh@gmail.com> and others.
43
+
44
+ Parts of code taken from the following libraries are included in CKEditor under the MIT license (see Appendix D):
45
+
46
+ * jQuery (inspired the domReady function, ckeditor_base.js) - Copyright (c) 2011 John Resig, http://jquery.com/
47
+
48
+ The following libraries are included in CKEditor under the SIL Open Font License, Version 1.1 (see Appendix E):
49
+
50
+ * Font Awesome (included in the toolbar configurator) - Copyright (C) 2012 by Dave Gandy.
51
+
52
+ The following libraries are included in CKEditor under the BSD-3 License (see Appendix F):
53
+
54
+ * highlight.js (included in the `codesnippet` plugin) - Copyright (c) 2006, Ivan Sagalaev.
55
+ * YUI Library (included in the `uicolor` plugin) - Copyright (c) 2009, Yahoo! Inc.
56
+
57
+
58
+ Trademarks
59
+ ----------
60
+
61
+ CKEditor is a trademark of CKSource - Frederico Knabben. All other brand
62
+ and product names are trademarks, registered trademarks or service
63
+ marks of their respective holders.
64
+
65
+ ---
66
+
67
+ Appendix A: The GPL License
68
+ ---------------------------
69
+
70
+ ```
71
+ GNU GENERAL PUBLIC LICENSE
72
+ Version 2, June 1991
73
+
74
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
75
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
76
+ Everyone is permitted to copy and distribute verbatim copies
77
+ of this license document, but changing it is not allowed.
78
+
79
+ Preamble
80
+
81
+ The licenses for most software are designed to take away your
82
+ freedom to share and change it. By contrast, the GNU General Public
83
+ License is intended to guarantee your freedom to share and change free
84
+ software-to make sure the software is free for all its users. This
85
+ General Public License applies to most of the Free Software
86
+ Foundation's software and to any other program whose authors commit to
87
+ using it. (Some other Free Software Foundation software is covered by
88
+ the GNU Lesser General Public License instead.) You can apply it to
89
+ your programs, too.
90
+
91
+ When we speak of free software, we are referring to freedom, not
92
+ price. Our General Public Licenses are designed to make sure that you
93
+ have the freedom to distribute copies of free software (and charge for
94
+ this service if you wish), that you receive source code or can get it
95
+ if you want it, that you can change the software or use pieces of it
96
+ in new free programs; and that you know you can do these things.
97
+
98
+ To protect your rights, we need to make restrictions that forbid
99
+ anyone to deny you these rights or to ask you to surrender the rights.
100
+ These restrictions translate to certain responsibilities for you if you
101
+ distribute copies of the software, or if you modify it.
102
+
103
+ For example, if you distribute copies of such a program, whether
104
+ gratis or for a fee, you must give the recipients all the rights that
105
+ you have. You must make sure that they, too, receive or can get the
106
+ source code. And you must show them these terms so they know their
107
+ rights.
108
+
109
+ We protect your rights with two steps: (1) copyright the software, and
110
+ (2) offer you this license which gives you legal permission to copy,
111
+ distribute and/or modify the software.
112
+
113
+ Also, for each author's protection and ours, we want to make certain
114
+ that everyone understands that there is no warranty for this free
115
+ software. If the software is modified by someone else and passed on, we
116
+ want its recipients to know that what they have is not the original, so
117
+ that any problems introduced by others will not reflect on the original
118
+ authors' reputations.
119
+
120
+ Finally, any free program is threatened constantly by software
121
+ patents. We wish to avoid the danger that redistributors of a free
122
+ program will individually obtain patent licenses, in effect making the
123
+ program proprietary. To prevent this, we have made it clear that any
124
+ patent must be licensed for everyone's free use or not licensed at all.
125
+
126
+ The precise terms and conditions for copying, distribution and
127
+ modification follow.
128
+
129
+ GNU GENERAL PUBLIC LICENSE
130
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
131
+
132
+ 0. This License applies to any program or other work which contains
133
+ a notice placed by the copyright holder saying it may be distributed
134
+ under the terms of this General Public License. The "Program", below,
135
+ refers to any such program or work, and a "work based on the Program"
136
+ means either the Program or any derivative work under copyright law:
137
+ that is to say, a work containing the Program or a portion of it,
138
+ either verbatim or with modifications and/or translated into another
139
+ language. (Hereinafter, translation is included without limitation in
140
+ the term "modification".) Each licensee is addressed as "you".
141
+
142
+ Activities other than copying, distribution and modification are not
143
+ covered by this License; they are outside its scope. The act of
144
+ running the Program is not restricted, and the output from the Program
145
+ is covered only if its contents constitute a work based on the
146
+ Program (independent of having been made by running the Program).
147
+ Whether that is true depends on what the Program does.
148
+
149
+ 1. You may copy and distribute verbatim copies of the Program's
150
+ source code as you receive it, in any medium, provided that you
151
+ conspicuously and appropriately publish on each copy an appropriate
152
+ copyright notice and disclaimer of warranty; keep intact all the
153
+ notices that refer to this License and to the absence of any warranty;
154
+ and give any other recipients of the Program a copy of this License
155
+ along with the Program.
156
+
157
+ You may charge a fee for the physical act of transferring a copy, and
158
+ you may at your option offer warranty protection in exchange for a fee.
159
+
160
+ 2. You may modify your copy or copies of the Program or any portion
161
+ of it, thus forming a work based on the Program, and copy and
162
+ distribute such modifications or work under the terms of Section 1
163
+ above, provided that you also meet all of these conditions:
164
+
165
+ a) You must cause the modified files to carry prominent notices
166
+ stating that you changed the files and the date of any change.
167
+
168
+ b) You must cause any work that you distribute or publish, that in
169
+ whole or in part contains or is derived from the Program or any
170
+ part thereof, to be licensed as a whole at no charge to all third
171
+ parties under the terms of this License.
172
+
173
+ c) If the modified program normally reads commands interactively
174
+ when run, you must cause it, when started running for such
175
+ interactive use in the most ordinary way, to print or display an
176
+ announcement including an appropriate copyright notice and a
177
+ notice that there is no warranty (or else, saying that you provide
178
+ a warranty) and that users may redistribute the program under
179
+ these conditions, and telling the user how to view a copy of this
180
+ License. (Exception: if the Program itself is interactive but
181
+ does not normally print such an announcement, your work based on
182
+ the Program is not required to print an announcement.)
183
+
184
+ These requirements apply to the modified work as a whole. If
185
+ identifiable sections of that work are not derived from the Program,
186
+ and can be reasonably considered independent and separate works in
187
+ themselves, then this License, and its terms, do not apply to those
188
+ sections when you distribute them as separate works. But when you
189
+ distribute the same sections as part of a whole which is a work based
190
+ on the Program, the distribution of the whole must be on the terms of
191
+ this License, whose permissions for other licensees extend to the
192
+ entire whole, and thus to each and every part regardless of who wrote it.
193
+
194
+ Thus, it is not the intent of this section to claim rights or contest
195
+ your rights to work written entirely by you; rather, the intent is to
196
+ exercise the right to control the distribution of derivative or
197
+ collective works based on the Program.
198
+
199
+ In addition, mere aggregation of another work not based on the Program
200
+ with the Program (or with a work based on the Program) on a volume of
201
+ a storage or distribution medium does not bring the other work under
202
+ the scope of this License.
203
+
204
+ 3. You may copy and distribute the Program (or a work based on it,
205
+ under Section 2) in object code or executable form under the terms of
206
+ Sections 1 and 2 above provided that you also do one of the following:
207
+
208
+ a) Accompany it with the complete corresponding machine-readable
209
+ source code, which must be distributed under the terms of Sections
210
+ 1 and 2 above on a medium customarily used for software interchange; or,
211
+
212
+ b) Accompany it with a written offer, valid for at least three
213
+ years, to give any third party, for a charge no more than your
214
+ cost of physically performing source distribution, a complete
215
+ machine-readable copy of the corresponding source code, to be
216
+ distributed under the terms of Sections 1 and 2 above on a medium
217
+ customarily used for software interchange; or,
218
+
219
+ c) Accompany it with the information you received as to the offer
220
+ to distribute corresponding source code. (This alternative is
221
+ allowed only for noncommercial distribution and only if you
222
+ received the program in object code or executable form with such
223
+ an offer, in accord with Subsection b above.)
224
+
225
+ The source code for a work means the preferred form of the work for
226
+ making modifications to it. For an executable work, complete source
227
+ code means all the source code for all modules it contains, plus any
228
+ associated interface definition files, plus the scripts used to
229
+ control compilation and installation of the executable. However, as a
230
+ special exception, the source code distributed need not include
231
+ anything that is normally distributed (in either source or binary
232
+ form) with the major components (compiler, kernel, and so on) of the
233
+ operating system on which the executable runs, unless that component
234
+ itself accompanies the executable.
235
+
236
+ If distribution of executable or object code is made by offering
237
+ access to copy from a designated place, then offering equivalent
238
+ access to copy the source code from the same place counts as
239
+ distribution of the source code, even though third parties are not
240
+ compelled to copy the source along with the object code.
241
+
242
+ 4. You may not copy, modify, sublicense, or distribute the Program
243
+ except as expressly provided under this License. Any attempt
244
+ otherwise to copy, modify, sublicense or distribute the Program is
245
+ void, and will automatically terminate your rights under this License.
246
+ However, parties who have received copies, or rights, from you under
247
+ this License will not have their licenses terminated so long as such
248
+ parties remain in full compliance.
249
+
250
+ 5. You are not required to accept this License, since you have not
251
+ signed it. However, nothing else grants you permission to modify or
252
+ distribute the Program or its derivative works. These actions are
253
+ prohibited by law if you do not accept this License. Therefore, by
254
+ modifying or distributing the Program (or any work based on the
255
+ Program), you indicate your acceptance of this License to do so, and
256
+ all its terms and conditions for copying, distributing or modifying
257
+ the Program or works based on it.
258
+
259
+ 6. Each time you redistribute the Program (or any work based on the
260
+ Program), the recipient automatically receives a license from the
261
+ original licensor to copy, distribute or modify the Program subject to
262
+ these terms and conditions. You may not impose any further
263
+ restrictions on the recipients' exercise of the rights granted herein.
264
+ You are not responsible for enforcing compliance by third parties to
265
+ this License.
266
+
267
+ 7. If, as a consequence of a court judgment or allegation of patent
268
+ infringement or for any other reason (not limited to patent issues),
269
+ conditions are imposed on you (whether by court order, agreement or
270
+ otherwise) that contradict the conditions of this License, they do not
271
+ excuse you from the conditions of this License. If you cannot
272
+ distribute so as to satisfy simultaneously your obligations under this
273
+ License and any other pertinent obligations, then as a consequence you
274
+ may not distribute the Program at all. For example, if a patent
275
+ license would not permit royalty-free redistribution of the Program by
276
+ all those who receive copies directly or indirectly through you, then
277
+ the only way you could satisfy both it and this License would be to
278
+ refrain entirely from distribution of the Program.
279
+
280
+ If any portion of this section is held invalid or unenforceable under
281
+ any particular circumstance, the balance of the section is intended to
282
+ apply and the section as a whole is intended to apply in other
283
+ circumstances.
284
+
285
+ It is not the purpose of this section to induce you to infringe any
286
+ patents or other property right claims or to contest validity of any
287
+ such claims; this section has the sole purpose of protecting the
288
+ integrity of the free software distribution system, which is
289
+ implemented by public license practices. Many people have made
290
+ generous contributions to the wide range of software distributed
291
+ through that system in reliance on consistent application of that
292
+ system; it is up to the author/donor to decide if he or she is willing
293
+ to distribute software through any other system and a licensee cannot
294
+ impose that choice.
295
+
296
+ This section is intended to make thoroughly clear what is believed to
297
+ be a consequence of the rest of this License.
298
+
299
+ 8. If the distribution and/or use of the Program is restricted in
300
+ certain countries either by patents or by copyrighted interfaces, the
301
+ original copyright holder who places the Program under this License
302
+ may add an explicit geographical distribution limitation excluding
303
+ those countries, so that distribution is permitted only in or among
304
+ countries not thus excluded. In such case, this License incorporates
305
+ the limitation as if written in the body of this License.
306
+
307
+ 9. The Free Software Foundation may publish revised and/or new versions
308
+ of the General Public License from time to time. Such new versions will
309
+ be similar in spirit to the present version, but may differ in detail to
310
+ address new problems or concerns.
311
+
312
+ Each version is given a distinguishing version number. If the Program
313
+ specifies a version number of this License which applies to it and "any
314
+ later version", you have the option of following the terms and conditions
315
+ either of that version or of any later version published by the Free
316
+ Software Foundation. If the Program does not specify a version number of
317
+ this License, you may choose any version ever published by the Free Software
318
+ Foundation.
319
+
320
+ 10. If you wish to incorporate parts of the Program into other free
321
+ programs whose distribution conditions are different, write to the author
322
+ to ask for permission. For software which is copyrighted by the Free
323
+ Software Foundation, write to the Free Software Foundation; we sometimes
324
+ make exceptions for this. Our decision will be guided by the two goals
325
+ of preserving the free status of all derivatives of our free software and
326
+ of promoting the sharing and reuse of software generally.
327
+
328
+ NO WARRANTY
329
+
330
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
331
+ FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
332
+ OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
333
+ PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
334
+ OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
335
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
336
+ TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
337
+ PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
338
+ REPAIR OR CORRECTION.
339
+
340
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
341
+ WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
342
+ REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
343
+ INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
344
+ OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
345
+ TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
346
+ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
347
+ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
348
+ POSSIBILITY OF SUCH DAMAGES.
349
+
350
+ END OF TERMS AND CONDITIONS
351
+ ```
352
+
353
+ Appendix B: The LGPL License
354
+ ----------------------------
355
+
356
+ ```
357
+ GNU LESSER GENERAL PUBLIC LICENSE
358
+ Version 2.1, February 1999
359
+
360
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
361
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
362
+ Everyone is permitted to copy and distribute verbatim copies
363
+ of this license document, but changing it is not allowed.
364
+
365
+ [This is the first released version of the Lesser GPL. It also counts
366
+ as the successor of the GNU Library Public License, version 2, hence
367
+ the version number 2.1.]
368
+
369
+ Preamble
370
+
371
+ The licenses for most software are designed to take away your
372
+ freedom to share and change it. By contrast, the GNU General Public
373
+ Licenses are intended to guarantee your freedom to share and change
374
+ free software-to make sure the software is free for all its users.
375
+
376
+ This license, the Lesser General Public License, applies to some
377
+ specially designated software packages-typically libraries-of the
378
+ Free Software Foundation and other authors who decide to use it. You
379
+ can use it too, but we suggest you first think carefully about whether
380
+ this license or the ordinary General Public License is the better
381
+ strategy to use in any particular case, based on the explanations below.
382
+
383
+ When we speak of free software, we are referring to freedom of use,
384
+ not price. Our General Public Licenses are designed to make sure that
385
+ you have the freedom to distribute copies of free software (and charge
386
+ for this service if you wish); that you receive source code or can get
387
+ it if you want it; that you can change the software and use pieces of
388
+ it in new free programs; and that you are informed that you can do
389
+ these things.
390
+
391
+ To protect your rights, we need to make restrictions that forbid
392
+ distributors to deny you these rights or to ask you to surrender these
393
+ rights. These restrictions translate to certain responsibilities for
394
+ you if you distribute copies of the library or if you modify it.
395
+
396
+ For example, if you distribute copies of the library, whether gratis
397
+ or for a fee, you must give the recipients all the rights that we gave
398
+ you. You must make sure that they, too, receive or can get the source
399
+ code. If you link other code with the library, you must provide
400
+ complete object files to the recipients, so that they can relink them
401
+ with the library after making changes to the library and recompiling
402
+ it. And you must show them these terms so they know their rights.
403
+
404
+ We protect your rights with a two-step method: (1) we copyright the
405
+ library, and (2) we offer you this license, which gives you legal
406
+ permission to copy, distribute and/or modify the library.
407
+
408
+ To protect each distributor, we want to make it very clear that
409
+ there is no warranty for the free library. Also, if the library is
410
+ modified by someone else and passed on, the recipients should know
411
+ that what they have is not the original version, so that the original
412
+ author's reputation will not be affected by problems that might be
413
+ introduced by others.
414
+
415
+ Finally, software patents pose a constant threat to the existence of
416
+ any free program. We wish to make sure that a company cannot
417
+ effectively restrict the users of a free program by obtaining a
418
+ restrictive license from a patent holder. Therefore, we insist that
419
+ any patent license obtained for a version of the library must be
420
+ consistent with the full freedom of use specified in this license.
421
+
422
+ Most GNU software, including some libraries, is covered by the
423
+ ordinary GNU General Public License. This license, the GNU Lesser
424
+ General Public License, applies to certain designated libraries, and
425
+ is quite different from the ordinary General Public License. We use
426
+ this license for certain libraries in order to permit linking those
427
+ libraries into non-free programs.
428
+
429
+ When a program is linked with a library, whether statically or using
430
+ a shared library, the combination of the two is legally speaking a
431
+ combined work, a derivative of the original library. The ordinary
432
+ General Public License therefore permits such linking only if the
433
+ entire combination fits its criteria of freedom. The Lesser General
434
+ Public License permits more lax criteria for linking other code with
435
+ the library.
436
+
437
+ We call this license the "Lesser" General Public License because it
438
+ does Less to protect the user's freedom than the ordinary General
439
+ Public License. It also provides other free software developers Less
440
+ of an advantage over competing non-free programs. These disadvantages
441
+ are the reason we use the ordinary General Public License for many
442
+ libraries. However, the Lesser license provides advantages in certain
443
+ special circumstances.
444
+
445
+ For example, on rare occasions, there may be a special need to
446
+ encourage the widest possible use of a certain library, so that it becomes
447
+ a de-facto standard. To achieve this, non-free programs must be
448
+ allowed to use the library. A more frequent case is that a free
449
+ library does the same job as widely used non-free libraries. In this
450
+ case, there is little to gain by limiting the free library to free
451
+ software only, so we use the Lesser General Public License.
452
+
453
+ In other cases, permission to use a particular library in non-free
454
+ programs enables a greater number of people to use a large body of
455
+ free software. For example, permission to use the GNU C Library in
456
+ non-free programs enables many more people to use the whole GNU
457
+ operating system, as well as its variant, the GNU/Linux operating
458
+ system.
459
+
460
+ Although the Lesser General Public License is Less protective of the
461
+ users' freedom, it does ensure that the user of a program that is
462
+ linked with the Library has the freedom and the wherewithal to run
463
+ that program using a modified version of the Library.
464
+
465
+ The precise terms and conditions for copying, distribution and
466
+ modification follow. Pay close attention to the difference between a
467
+ "work based on the library" and a "work that uses the library". The
468
+ former contains code derived from the library, whereas the latter must
469
+ be combined with the library in order to run.
470
+
471
+ GNU LESSER GENERAL PUBLIC LICENSE
472
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
473
+
474
+ 0. This License Agreement applies to any software library or other
475
+ program which contains a notice placed by the copyright holder or
476
+ other authorized party saying it may be distributed under the terms of
477
+ this Lesser General Public License (also called "this License").
478
+ Each licensee is addressed as "you".
479
+
480
+ A "library" means a collection of software functions and/or data
481
+ prepared so as to be conveniently linked with application programs
482
+ (which use some of those functions and data) to form executables.
483
+
484
+ The "Library", below, refers to any such software library or work
485
+ which has been distributed under these terms. A "work based on the
486
+ Library" means either the Library or any derivative work under
487
+ copyright law: that is to say, a work containing the Library or a
488
+ portion of it, either verbatim or with modifications and/or translated
489
+ straightforwardly into another language. (Hereinafter, translation is
490
+ included without limitation in the term "modification".)
491
+
492
+ "Source code" for a work means the preferred form of the work for
493
+ making modifications to it. For a library, complete source code means
494
+ all the source code for all modules it contains, plus any associated
495
+ interface definition files, plus the scripts used to control compilation
496
+ and installation of the library.
497
+
498
+ Activities other than copying, distribution and modification are not
499
+ covered by this License; they are outside its scope. The act of
500
+ running a program using the Library is not restricted, and output from
501
+ such a program is covered only if its contents constitute a work based
502
+ on the Library (independent of the use of the Library in a tool for
503
+ writing it). Whether that is true depends on what the Library does
504
+ and what the program that uses the Library does.
505
+
506
+ 1. You may copy and distribute verbatim copies of the Library's
507
+ complete source code as you receive it, in any medium, provided that
508
+ you conspicuously and appropriately publish on each copy an
509
+ appropriate copyright notice and disclaimer of warranty; keep intact
510
+ all the notices that refer to this License and to the absence of any
511
+ warranty; and distribute a copy of this License along with the
512
+ Library.
513
+
514
+ You may charge a fee for the physical act of transferring a copy,
515
+ and you may at your option offer warranty protection in exchange for a
516
+ fee.
517
+
518
+ 2. You may modify your copy or copies of the Library or any portion
519
+ of it, thus forming a work based on the Library, and copy and
520
+ distribute such modifications or work under the terms of Section 1
521
+ above, provided that you also meet all of these conditions:
522
+
523
+ a) The modified work must itself be a software library.
524
+
525
+ b) You must cause the files modified to carry prominent notices
526
+ stating that you changed the files and the date of any change.
527
+
528
+ c) You must cause the whole of the work to be licensed at no
529
+ charge to all third parties under the terms of this License.
530
+
531
+ d) If a facility in the modified Library refers to a function or a
532
+ table of data to be supplied by an application program that uses
533
+ the facility, other than as an argument passed when the facility
534
+ is invoked, then you must make a good faith effort to ensure that,
535
+ in the event an application does not supply such function or
536
+ table, the facility still operates, and performs whatever part of
537
+ its purpose remains meaningful.
538
+
539
+ (For example, a function in a library to compute square roots has
540
+ a purpose that is entirely well-defined independent of the
541
+ application. Therefore, Subsection 2d requires that any
542
+ application-supplied function or table used by this function must
543
+ be optional: if the application does not supply it, the square
544
+ root function must still compute square roots.)
545
+
546
+ These requirements apply to the modified work as a whole. If
547
+ identifiable sections of that work are not derived from the Library,
548
+ and can be reasonably considered independent and separate works in
549
+ themselves, then this License, and its terms, do not apply to those
550
+ sections when you distribute them as separate works. But when you
551
+ distribute the same sections as part of a whole which is a work based
552
+ on the Library, the distribution of the whole must be on the terms of
553
+ this License, whose permissions for other licensees extend to the
554
+ entire whole, and thus to each and every part regardless of who wrote
555
+ it.
556
+
557
+ Thus, it is not the intent of this section to claim rights or contest
558
+ your rights to work written entirely by you; rather, the intent is to
559
+ exercise the right to control the distribution of derivative or
560
+ collective works based on the Library.
561
+
562
+ In addition, mere aggregation of another work not based on the Library
563
+ with the Library (or with a work based on the Library) on a volume of
564
+ a storage or distribution medium does not bring the other work under
565
+ the scope of this License.
566
+
567
+ 3. You may opt to apply the terms of the ordinary GNU General Public
568
+ License instead of this License to a given copy of the Library. To do
569
+ this, you must alter all the notices that refer to this License, so
570
+ that they refer to the ordinary GNU General Public License, version 2,
571
+ instead of to this License. (If a newer version than version 2 of the
572
+ ordinary GNU General Public License has appeared, then you can specify
573
+ that version instead if you wish.) Do not make any other change in
574
+ these notices.
575
+
576
+ Once this change is made in a given copy, it is irreversible for
577
+ that copy, so the ordinary GNU General Public License applies to all
578
+ subsequent copies and derivative works made from that copy.
579
+
580
+ This option is useful when you wish to copy part of the code of
581
+ the Library into a program that is not a library.
582
+
583
+ 4. You may copy and distribute the Library (or a portion or
584
+ derivative of it, under Section 2) in object code or executable form
585
+ under the terms of Sections 1 and 2 above provided that you accompany
586
+ it with the complete corresponding machine-readable source code, which
587
+ must be distributed under the terms of Sections 1 and 2 above on a
588
+ medium customarily used for software interchange.
589
+
590
+ If distribution of object code is made by offering access to copy
591
+ from a designated place, then offering equivalent access to copy the
592
+ source code from the same place satisfies the requirement to
593
+ distribute the source code, even though third parties are not
594
+ compelled to copy the source along with the object code.
595
+
596
+ 5. A program that contains no derivative of any portion of the
597
+ Library, but is designed to work with the Library by being compiled or
598
+ linked with it, is called a "work that uses the Library". Such a
599
+ work, in isolation, is not a derivative work of the Library, and
600
+ therefore falls outside the scope of this License.
601
+
602
+ However, linking a "work that uses the Library" with the Library
603
+ creates an executable that is a derivative of the Library (because it
604
+ contains portions of the Library), rather than a "work that uses the
605
+ library". The executable is therefore covered by this License.
606
+ Section 6 states terms for distribution of such executables.
607
+
608
+ When a "work that uses the Library" uses material from a header file
609
+ that is part of the Library, the object code for the work may be a
610
+ derivative work of the Library even though the source code is not.
611
+ Whether this is true is especially significant if the work can be
612
+ linked without the Library, or if the work is itself a library. The
613
+ threshold for this to be true is not precisely defined by law.
614
+
615
+ If such an object file uses only numerical parameters, data
616
+ structure layouts and accessors, and small macros and small inline
617
+ functions (ten lines or less in length), then the use of the object
618
+ file is unrestricted, regardless of whether it is legally a derivative
619
+ work. (Executables containing this object code plus portions of the
620
+ Library will still fall under Section 6.)
621
+
622
+ Otherwise, if the work is a derivative of the Library, you may
623
+ distribute the object code for the work under the terms of Section 6.
624
+ Any executables containing that work also fall under Section 6,
625
+ whether or not they are linked directly with the Library itself.
626
+
627
+ 6. As an exception to the Sections above, you may also combine or
628
+ link a "work that uses the Library" with the Library to produce a
629
+ work containing portions of the Library, and distribute that work
630
+ under terms of your choice, provided that the terms permit
631
+ modification of the work for the customer's own use and reverse
632
+ engineering for debugging such modifications.
633
+
634
+ You must give prominent notice with each copy of the work that the
635
+ Library is used in it and that the Library and its use are covered by
636
+ this License. You must supply a copy of this License. If the work
637
+ during execution displays copyright notices, you must include the
638
+ copyright notice for the Library among them, as well as a reference
639
+ directing the user to the copy of this License. Also, you must do one
640
+ of these things:
641
+
642
+ a) Accompany the work with the complete corresponding
643
+ machine-readable source code for the Library including whatever
644
+ changes were used in the work (which must be distributed under
645
+ Sections 1 and 2 above); and, if the work is an executable linked
646
+ with the Library, with the complete machine-readable "work that
647
+ uses the Library", as object code and/or source code, so that the
648
+ user can modify the Library and then relink to produce a modified
649
+ executable containing the modified Library. (It is understood
650
+ that the user who changes the contents of definitions files in the
651
+ Library will not necessarily be able to recompile the application
652
+ to use the modified definitions.)
653
+
654
+ b) Use a suitable shared library mechanism for linking with the
655
+ Library. A suitable mechanism is one that (1) uses at run time a
656
+ copy of the library already present on the user's computer system,
657
+ rather than copying library functions into the executable, and (2)
658
+ will operate properly with a modified version of the library, if
659
+ the user installs one, as long as the modified version is
660
+ interface-compatible with the version that the work was made with.
661
+
662
+ c) Accompany the work with a written offer, valid for at
663
+ least three years, to give the same user the materials
664
+ specified in Subsection 6a, above, for a charge no more
665
+ than the cost of performing this distribution.
666
+
667
+ d) If distribution of the work is made by offering access to copy
668
+ from a designated place, offer equivalent access to copy the above
669
+ specified materials from the same place.
670
+
671
+ e) Verify that the user has already received a copy of these
672
+ materials or that you have already sent this user a copy.
673
+
674
+ For an executable, the required form of the "work that uses the
675
+ Library" must include any data and utility programs needed for
676
+ reproducing the executable from it. However, as a special exception,
677
+ the materials to be distributed need not include anything that is
678
+ normally distributed (in either source or binary form) with the major
679
+ components (compiler, kernel, and so on) of the operating system on
680
+ which the executable runs, unless that component itself accompanies
681
+ the executable.
682
+
683
+ It may happen that this requirement contradicts the license
684
+ restrictions of other proprietary libraries that do not normally
685
+ accompany the operating system. Such a contradiction means you cannot
686
+ use both them and the Library together in an executable that you
687
+ distribute.
688
+
689
+ 7. You may place library facilities that are a work based on the
690
+ Library side-by-side in a single library together with other library
691
+ facilities not covered by this License, and distribute such a combined
692
+ library, provided that the separate distribution of the work based on
693
+ the Library and of the other library facilities is otherwise
694
+ permitted, and provided that you do these two things:
695
+
696
+ a) Accompany the combined library with a copy of the same work
697
+ based on the Library, uncombined with any other library
698
+ facilities. This must be distributed under the terms of the
699
+ Sections above.
700
+
701
+ b) Give prominent notice with the combined library of the fact
702
+ that part of it is a work based on the Library, and explaining
703
+ where to find the accompanying uncombined form of the same work.
704
+
705
+ 8. You may not copy, modify, sublicense, link with, or distribute
706
+ the Library except as expressly provided under this License. Any
707
+ attempt otherwise to copy, modify, sublicense, link with, or
708
+ distribute the Library is void, and will automatically terminate your
709
+ rights under this License. However, parties who have received copies,
710
+ or rights, from you under this License will not have their licenses
711
+ terminated so long as such parties remain in full compliance.
712
+
713
+ 9. You are not required to accept this License, since you have not
714
+ signed it. However, nothing else grants you permission to modify or
715
+ distribute the Library or its derivative works. These actions are
716
+ prohibited by law if you do not accept this License. Therefore, by
717
+ modifying or distributing the Library (or any work based on the
718
+ Library), you indicate your acceptance of this License to do so, and
719
+ all its terms and conditions for copying, distributing or modifying
720
+ the Library or works based on it.
721
+
722
+ 10. Each time you redistribute the Library (or any work based on the
723
+ Library), the recipient automatically receives a license from the
724
+ original licensor to copy, distribute, link with or modify the Library
725
+ subject to these terms and conditions. You may not impose any further
726
+ restrictions on the recipients' exercise of the rights granted herein.
727
+ You are not responsible for enforcing compliance by third parties with
728
+ this License.
729
+
730
+ 11. If, as a consequence of a court judgment or allegation of patent
731
+ infringement or for any other reason (not limited to patent issues),
732
+ conditions are imposed on you (whether by court order, agreement or
733
+ otherwise) that contradict the conditions of this License, they do not
734
+ excuse you from the conditions of this License. If you cannot
735
+ distribute so as to satisfy simultaneously your obligations under this
736
+ License and any other pertinent obligations, then as a consequence you
737
+ may not distribute the Library at all. For example, if a patent
738
+ license would not permit royalty-free redistribution of the Library by
739
+ all those who receive copies directly or indirectly through you, then
740
+ the only way you could satisfy both it and this License would be to
741
+ refrain entirely from distribution of the Library.
742
+
743
+ If any portion of this section is held invalid or unenforceable under any
744
+ particular circumstance, the balance of the section is intended to apply,
745
+ and the section as a whole is intended to apply in other circumstances.
746
+
747
+ It is not the purpose of this section to induce you to infringe any
748
+ patents or other property right claims or to contest validity of any
749
+ such claims; this section has the sole purpose of protecting the
750
+ integrity of the free software distribution system which is
751
+ implemented by public license practices. Many people have made
752
+ generous contributions to the wide range of software distributed
753
+ through that system in reliance on consistent application of that
754
+ system; it is up to the author/donor to decide if he or she is willing
755
+ to distribute software through any other system and a licensee cannot
756
+ impose that choice.
757
+
758
+ This section is intended to make thoroughly clear what is believed to
759
+ be a consequence of the rest of this License.
760
+
761
+ 12. If the distribution and/or use of the Library is restricted in
762
+ certain countries either by patents or by copyrighted interfaces, the
763
+ original copyright holder who places the Library under this License may add
764
+ an explicit geographical distribution limitation excluding those countries,
765
+ so that distribution is permitted only in or among countries not thus
766
+ excluded. In such case, this License incorporates the limitation as if
767
+ written in the body of this License.
768
+
769
+ 13. The Free Software Foundation may publish revised and/or new
770
+ versions of the Lesser General Public License from time to time.
771
+ Such new versions will be similar in spirit to the present version,
772
+ but may differ in detail to address new problems or concerns.
773
+
774
+ Each version is given a distinguishing version number. If the Library
775
+ specifies a version number of this License which applies to it and
776
+ "any later version", you have the option of following the terms and
777
+ conditions either of that version or of any later version published by
778
+ the Free Software Foundation. If the Library does not specify a
779
+ license version number, you may choose any version ever published by
780
+ the Free Software Foundation.
781
+
782
+ 14. If you wish to incorporate parts of the Library into other free
783
+ programs whose distribution conditions are incompatible with these,
784
+ write to the author to ask for permission. For software which is
785
+ copyrighted by the Free Software Foundation, write to the Free
786
+ Software Foundation; we sometimes make exceptions for this. Our
787
+ decision will be guided by the two goals of preserving the free status
788
+ of all derivatives of our free software and of promoting the sharing
789
+ and reuse of software generally.
790
+
791
+ NO WARRANTY
792
+
793
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
794
+ WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
795
+ EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
796
+ OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
797
+ KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
798
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
799
+ PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
800
+ LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
801
+ THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
802
+
803
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
804
+ WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
805
+ AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
806
+ FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
807
+ CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
808
+ LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
809
+ RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
810
+ FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
811
+ SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
812
+ DAMAGES.
813
+
814
+ END OF TERMS AND CONDITIONS
815
+ ```
816
+
817
+ Appendix C: The MPL License
818
+ ---------------------------
819
+
820
+ ```
821
+ MOZILLA PUBLIC LICENSE
822
+ Version 1.1
823
+
824
+ 1. Definitions.
825
+
826
+ 1.0.1. "Commercial Use" means distribution or otherwise making the
827
+ Covered Code available to a third party.
828
+
829
+ 1.1. "Contributor" means each entity that creates or contributes to
830
+ the creation of Modifications.
831
+
832
+ 1.2. "Contributor Version" means the combination of the Original
833
+ Code, prior Modifications used by a Contributor, and the Modifications
834
+ made by that particular Contributor.
835
+
836
+ 1.3. "Covered Code" means the Original Code or Modifications or the
837
+ combination of the Original Code and Modifications, in each case
838
+ including portions thereof.
839
+
840
+ 1.4. "Electronic Distribution Mechanism" means a mechanism generally
841
+ accepted in the software development community for the electronic
842
+ transfer of data.
843
+
844
+ 1.5. "Executable" means Covered Code in any form other than Source
845
+ Code.
846
+
847
+ 1.6. "Initial Developer" means the individual or entity identified
848
+ as the Initial Developer in the Source Code notice required by Exhibit
849
+ A.
850
+
851
+ 1.7. "Larger Work" means a work which combines Covered Code or
852
+ portions thereof with code not governed by the terms of this License.
853
+
854
+ 1.8. "License" means this document.
855
+
856
+ 1.8.1. "Licensable" means having the right to grant, to the maximum
857
+ extent possible, whether at the time of the initial grant or
858
+ subsequently acquired, any and all of the rights conveyed herein.
859
+
860
+ 1.9. "Modifications" means any addition to or deletion from the
861
+ substance or structure of either the Original Code or any previous
862
+ Modifications. When Covered Code is released as a series of files, a
863
+ Modification is:
864
+ A. Any addition to or deletion from the contents of a file
865
+ containing Original Code or previous Modifications.
866
+
867
+ B. Any new file that contains any part of the Original Code or
868
+ previous Modifications.
869
+
870
+ 1.10. "Original Code" means Source Code of computer software code
871
+ which is described in the Source Code notice required by Exhibit A as
872
+ Original Code, and which, at the time of its release under this
873
+ License is not already Covered Code governed by this License.
874
+
875
+ 1.10.1. "Patent Claims" means any patent claim(s), now owned or
876
+ hereafter acquired, including without limitation, method, process,
877
+ and apparatus claims, in any patent Licensable by grantor.
878
+
879
+ 1.11. "Source Code" means the preferred form of the Covered Code for
880
+ making modifications to it, including all modules it contains, plus
881
+ any associated interface definition files, scripts used to control
882
+ compilation and installation of an Executable, or source code
883
+ differential comparisons against either the Original Code or another
884
+ well known, available Covered Code of the Contributor's choice. The
885
+ Source Code can be in a compressed or archival form, provided the
886
+ appropriate decompression or de-archiving software is widely available
887
+ for no charge.
888
+
889
+ 1.12. "You" (or "Your") means an individual or a legal entity
890
+ exercising rights under, and complying with all of the terms of, this
891
+ License or a future version of this License issued under Section 6.1.
892
+ For legal entities, "You" includes any entity which controls, is
893
+ controlled by, or is under common control with You. For purposes of
894
+ this definition, "control" means (a) the power, direct or indirect,
895
+ to cause the direction or management of such entity, whether by
896
+ contract or otherwise, or (b) ownership of more than fifty percent
897
+ (50%) of the outstanding shares or beneficial ownership of such
898
+ entity.
899
+
900
+ 2. Source Code License.
901
+
902
+ 2.1. The Initial Developer Grant.
903
+ The Initial Developer hereby grants You a world-wide, royalty-free,
904
+ non-exclusive license, subject to third party intellectual property
905
+ claims:
906
+ (a) under intellectual property rights (other than patent or
907
+ trademark) Licensable by Initial Developer to use, reproduce,
908
+ modify, display, perform, sublicense and distribute the Original
909
+ Code (or portions thereof) with or without Modifications, and/or
910
+ as part of a Larger Work; and
911
+
912
+ (b) under Patents Claims infringed by the making, using or
913
+ selling of Original Code, to make, have made, use, practice,
914
+ sell, and offer for sale, and/or otherwise dispose of the
915
+ Original Code (or portions thereof).
916
+
917
+ (c) the licenses granted in this Section 2.1(a) and (b) are
918
+ effective on the date Initial Developer first distributes
919
+ Original Code under the terms of this License.
920
+
921
+ (d) Notwithstanding Section 2.1(b) above, no patent license is
922
+ granted: 1) for code that You delete from the Original Code; 2)
923
+ separate from the Original Code; or 3) for infringements caused
924
+ by: i) the modification of the Original Code or ii) the
925
+ combination of the Original Code with other software or devices.
926
+
927
+ 2.2. Contributor Grant.
928
+ Subject to third party intellectual property claims, each Contributor
929
+ hereby grants You a world-wide, royalty-free, non-exclusive license
930
+
931
+ (a) under intellectual property rights (other than patent or
932
+ trademark) Licensable by Contributor, to use, reproduce, modify,
933
+ display, perform, sublicense and distribute the Modifications
934
+ created by such Contributor (or portions thereof) either on an
935
+ unmodified basis, with other Modifications, as Covered Code
936
+ and/or as part of a Larger Work; and
937
+
938
+ (b) under Patent Claims infringed by the making, using, or
939
+ selling of Modifications made by that Contributor either alone
940
+ and/or in combination with its Contributor Version (or portions
941
+ of such combination), to make, use, sell, offer for sale, have
942
+ made, and/or otherwise dispose of: 1) Modifications made by that
943
+ Contributor (or portions thereof); and 2) the combination of
944
+ Modifications made by that Contributor with its Contributor
945
+ Version (or portions of such combination).
946
+
947
+ (c) the licenses granted in Sections 2.2(a) and 2.2(b) are
948
+ effective on the date Contributor first makes Commercial Use of
949
+ the Covered Code.
950
+
951
+ (d) Notwithstanding Section 2.2(b) above, no patent license is
952
+ granted: 1) for any code that Contributor has deleted from the
953
+ Contributor Version; 2) separate from the Contributor Version;
954
+ 3) for infringements caused by: i) third party modifications of
955
+ Contributor Version or ii) the combination of Modifications made
956
+ by that Contributor with other software (except as part of the
957
+ Contributor Version) or other devices; or 4) under Patent Claims
958
+ infringed by Covered Code in the absence of Modifications made by
959
+ that Contributor.
960
+
961
+ 3. Distribution Obligations.
962
+
963
+ 3.1. Application of License.
964
+ The Modifications which You create or to which You contribute are
965
+ governed by the terms of this License, including without limitation
966
+ Section 2.2. The Source Code version of Covered Code may be
967
+ distributed only under the terms of this License or a future version
968
+ of this License released under Section 6.1, and You must include a
969
+ copy of this License with every copy of the Source Code You
970
+ distribute. You may not offer or impose any terms on any Source Code
971
+ version that alters or restricts the applicable version of this
972
+ License or the recipients' rights hereunder. However, You may include
973
+ an additional document offering the additional rights described in
974
+ Section 3.5.
975
+
976
+ 3.2. Availability of Source Code.
977
+ Any Modification which You create or to which You contribute must be
978
+ made available in Source Code form under the terms of this License
979
+ either on the same media as an Executable version or via an accepted
980
+ Electronic Distribution Mechanism to anyone to whom you made an
981
+ Executable version available; and if made available via Electronic
982
+ Distribution Mechanism, must remain available for at least twelve (12)
983
+ months after the date it initially became available, or at least six
984
+ (6) months after a subsequent version of that particular Modification
985
+ has been made available to such recipients. You are responsible for
986
+ ensuring that the Source Code version remains available even if the
987
+ Electronic Distribution Mechanism is maintained by a third party.
988
+
989
+ 3.3. Description of Modifications.
990
+ You must cause all Covered Code to which You contribute to contain a
991
+ file documenting the changes You made to create that Covered Code and
992
+ the date of any change. You must include a prominent statement that
993
+ the Modification is derived, directly or indirectly, from Original
994
+ Code provided by the Initial Developer and including the name of the
995
+ Initial Developer in (a) the Source Code, and (b) in any notice in an
996
+ Executable version or related documentation in which You describe the
997
+ origin or ownership of the Covered Code.
998
+
999
+ 3.4. Intellectual Property Matters
1000
+ (a) Third Party Claims.
1001
+ If Contributor has knowledge that a license under a third party's
1002
+ intellectual property rights is required to exercise the rights
1003
+ granted by such Contributor under Sections 2.1 or 2.2,
1004
+ Contributor must include a text file with the Source Code
1005
+ distribution titled "LEGAL" which describes the claim and the
1006
+ party making the claim in sufficient detail that a recipient will
1007
+ know whom to contact. If Contributor obtains such knowledge after
1008
+ the Modification is made available as described in Section 3.2,
1009
+ Contributor shall promptly modify the LEGAL file in all copies
1010
+ Contributor makes available thereafter and shall take other steps
1011
+ (such as notifying appropriate mailing lists or newsgroups)
1012
+ reasonably calculated to inform those who received the Covered
1013
+ Code that new knowledge has been obtained.
1014
+
1015
+ (b) Contributor APIs.
1016
+ If Contributor's Modifications include an application programming
1017
+ interface and Contributor has knowledge of patent licenses which
1018
+ are reasonably necessary to implement that API, Contributor must
1019
+ also include this information in the LEGAL file.
1020
+
1021
+ (c) Representations.
1022
+ Contributor represents that, except as disclosed pursuant to
1023
+ Section 3.4(a) above, Contributor believes that Contributor's
1024
+ Modifications are Contributor's original creation(s) and/or
1025
+ Contributor has sufficient rights to grant the rights conveyed by
1026
+ this License.
1027
+
1028
+ 3.5. Required Notices.
1029
+ You must duplicate the notice in Exhibit A in each file of the Source
1030
+ Code. If it is not possible to put such notice in a particular Source
1031
+ Code file due to its structure, then You must include such notice in a
1032
+ location (such as a relevant directory) where a user would be likely
1033
+ to look for such a notice. If You created one or more Modification(s)
1034
+ You may add your name as a Contributor to the notice described in
1035
+ Exhibit A. You must also duplicate this License in any documentation
1036
+ for the Source Code where You describe recipients' rights or ownership
1037
+ rights relating to Covered Code. You may choose to offer, and to
1038
+ charge a fee for, warranty, support, indemnity or liability
1039
+ obligations to one or more recipients of Covered Code. However, You
1040
+ may do so only on Your own behalf, and not on behalf of the Initial
1041
+ Developer or any Contributor. You must make it absolutely clear than
1042
+ any such warranty, support, indemnity or liability obligation is
1043
+ offered by You alone, and You hereby agree to indemnify the Initial
1044
+ Developer and every Contributor for any liability incurred by the
1045
+ Initial Developer or such Contributor as a result of warranty,
1046
+ support, indemnity or liability terms You offer.
1047
+
1048
+ 3.6. Distribution of Executable Versions.
1049
+ You may distribute Covered Code in Executable form only if the
1050
+ requirements of Section 3.1-3.5 have been met for that Covered Code,
1051
+ and if You include a notice stating that the Source Code version of
1052
+ the Covered Code is available under the terms of this License,
1053
+ including a description of how and where You have fulfilled the
1054
+ obligations of Section 3.2. The notice must be conspicuously included
1055
+ in any notice in an Executable version, related documentation or
1056
+ collateral in which You describe recipients' rights relating to the
1057
+ Covered Code. You may distribute the Executable version of Covered
1058
+ Code or ownership rights under a license of Your choice, which may
1059
+ contain terms different from this License, provided that You are in
1060
+ compliance with the terms of this License and that the license for the
1061
+ Executable version does not attempt to limit or alter the recipient's
1062
+ rights in the Source Code version from the rights set forth in this
1063
+ License. If You distribute the Executable version under a different
1064
+ license You must make it absolutely clear that any terms which differ
1065
+ from this License are offered by You alone, not by the Initial
1066
+ Developer or any Contributor. You hereby agree to indemnify the
1067
+ Initial Developer and every Contributor for any liability incurred by
1068
+ the Initial Developer or such Contributor as a result of any such
1069
+ terms You offer.
1070
+
1071
+ 3.7. Larger Works.
1072
+ You may create a Larger Work by combining Covered Code with other code
1073
+ not governed by the terms of this License and distribute the Larger
1074
+ Work as a single product. In such a case, You must make sure the
1075
+ requirements of this License are fulfilled for the Covered Code.
1076
+
1077
+ 4. Inability to Comply Due to Statute or Regulation.
1078
+
1079
+ If it is impossible for You to comply with any of the terms of this
1080
+ License with respect to some or all of the Covered Code due to
1081
+ statute, judicial order, or regulation then You must: (a) comply with
1082
+ the terms of this License to the maximum extent possible; and (b)
1083
+ describe the limitations and the code they affect. Such description
1084
+ must be included in the LEGAL file described in Section 3.4 and must
1085
+ be included with all distributions of the Source Code. Except to the
1086
+ extent prohibited by statute or regulation, such description must be
1087
+ sufficiently detailed for a recipient of ordinary skill to be able to
1088
+ understand it.
1089
+
1090
+ 5. Application of this License.
1091
+
1092
+ This License applies to code to which the Initial Developer has
1093
+ attached the notice in Exhibit A and to related Covered Code.
1094
+
1095
+ 6. Versions of the License.
1096
+
1097
+ 6.1. New Versions.
1098
+ Netscape Communications Corporation ("Netscape") may publish revised
1099
+ and/or new versions of the License from time to time. Each version
1100
+ will be given a distinguishing version number.
1101
+
1102
+ 6.2. Effect of New Versions.
1103
+ Once Covered Code has been published under a particular version of the
1104
+ License, You may always continue to use it under the terms of that
1105
+ version. You may also choose to use such Covered Code under the terms
1106
+ of any subsequent version of the License published by Netscape. No one
1107
+ other than Netscape has the right to modify the terms applicable to
1108
+ Covered Code created under this License.
1109
+
1110
+ 6.3. Derivative Works.
1111
+ If You create or use a modified version of this License (which you may
1112
+ only do in order to apply it to code which is not already Covered Code
1113
+ governed by this License), You must (a) rename Your license so that
1114
+ the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape",
1115
+ "MPL", "NPL" or any confusingly similar phrase do not appear in your
1116
+ license (except to note that your license differs from this License)
1117
+ and (b) otherwise make it clear that Your version of the license
1118
+ contains terms which differ from the Mozilla Public License and
1119
+ Netscape Public License. (Filling in the name of the Initial
1120
+ Developer, Original Code or Contributor in the notice described in
1121
+ Exhibit A shall not of themselves be deemed to be modifications of
1122
+ this License.)
1123
+
1124
+ 7. DISCLAIMER OF WARRANTY.
1125
+
1126
+ COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
1127
+ WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
1128
+ WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF
1129
+ DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.
1130
+ THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE
1131
+ IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT,
1132
+ YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE
1133
+ COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
1134
+ OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
1135
+ ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
1136
+
1137
+ 8. TERMINATION.
1138
+
1139
+ 8.1. This License and the rights granted hereunder will terminate
1140
+ automatically if You fail to comply with terms herein and fail to cure
1141
+ such breach within 30 days of becoming aware of the breach. All
1142
+ sublicenses to the Covered Code which are properly granted shall
1143
+ survive any termination of this License. Provisions which, by their
1144
+ nature, must remain in effect beyond the termination of this License
1145
+ shall survive.
1146
+
1147
+ 8.2. If You initiate litigation by asserting a patent infringement
1148
+ claim (excluding declatory judgment actions) against Initial Developer
1149
+ or a Contributor (the Initial Developer or Contributor against whom
1150
+ You file such action is referred to as "Participant") alleging that:
1151
+
1152
+ (a) such Participant's Contributor Version directly or indirectly
1153
+ infringes any patent, then any and all rights granted by such
1154
+ Participant to You under Sections 2.1 and/or 2.2 of this License
1155
+ shall, upon 60 days notice from Participant terminate prospectively,
1156
+ unless if within 60 days after receipt of notice You either: (i)
1157
+ agree in writing to pay Participant a mutually agreeable reasonable
1158
+ royalty for Your past and future use of Modifications made by such
1159
+ Participant, or (ii) withdraw Your litigation claim with respect to
1160
+ the Contributor Version against such Participant. If within 60 days
1161
+ of notice, a reasonable royalty and payment arrangement are not
1162
+ mutually agreed upon in writing by the parties or the litigation claim
1163
+ is not withdrawn, the rights granted by Participant to You under
1164
+ Sections 2.1 and/or 2.2 automatically terminate at the expiration of
1165
+ the 60 day notice period specified above.
1166
+
1167
+ (b) any software, hardware, or device, other than such Participant's
1168
+ Contributor Version, directly or indirectly infringes any patent, then
1169
+ any rights granted to You by such Participant under Sections 2.1(b)
1170
+ and 2.2(b) are revoked effective as of the date You first made, used,
1171
+ sold, distributed, or had made, Modifications made by that
1172
+ Participant.
1173
+
1174
+ 8.3. If You assert a patent infringement claim against Participant
1175
+ alleging that such Participant's Contributor Version directly or
1176
+ indirectly infringes any patent where such claim is resolved (such as
1177
+ by license or settlement) prior to the initiation of patent
1178
+ infringement litigation, then the reasonable value of the licenses
1179
+ granted by such Participant under Sections 2.1 or 2.2 shall be taken
1180
+ into account in determining the amount or value of any payment or
1181
+ license.
1182
+
1183
+ 8.4. In the event of termination under Sections 8.1 or 8.2 above,
1184
+ all end user license agreements (excluding distributors and resellers)
1185
+ which have been validly granted by You or any distributor hereunder
1186
+ prior to termination shall survive termination.
1187
+
1188
+ 9. LIMITATION OF LIABILITY.
1189
+
1190
+ UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
1191
+ (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
1192
+ DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE,
1193
+ OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR
1194
+ ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY
1195
+ CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL,
1196
+ WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
1197
+ COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
1198
+ INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
1199
+ LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY
1200
+ RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW
1201
+ PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
1202
+ EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO
1203
+ THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
1204
+
1205
+ 10. U.S. GOVERNMENT END USERS.
1206
+
1207
+ The Covered Code is a "commercial item," as that term is defined in
1208
+ 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer
1209
+ software" and "commercial computer software documentation," as such
1210
+ terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48
1211
+ C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995),
1212
+ all U.S. Government End Users acquire Covered Code with only those
1213
+ rights set forth herein.
1214
+
1215
+ 11. MISCELLANEOUS.
1216
+
1217
+ This License represents the complete agreement concerning subject
1218
+ matter hereof. If any provision of this License is held to be
1219
+ unenforceable, such provision shall be reformed only to the extent
1220
+ necessary to make it enforceable. This License shall be governed by
1221
+ California law provisions (except to the extent applicable law, if
1222
+ any, provides otherwise), excluding its conflict-of-law provisions.
1223
+ With respect to disputes in which at least one party is a citizen of,
1224
+ or an entity chartered or registered to do business in the United
1225
+ States of America, any litigation relating to this License shall be
1226
+ subject to the jurisdiction of the Federal Courts of the Northern
1227
+ District of California, with venue lying in Santa Clara County,
1228
+ California, with the losing party responsible for costs, including
1229
+ without limitation, court costs and reasonable attorneys' fees and
1230
+ expenses. The application of the United Nations Convention on
1231
+ Contracts for the International Sale of Goods is expressly excluded.
1232
+ Any law or regulation which provides that the language of a contract
1233
+ shall be construed against the drafter shall not apply to this
1234
+ License.
1235
+
1236
+ 12. RESPONSIBILITY FOR CLAIMS.
1237
+
1238
+ As between Initial Developer and the Contributors, each party is
1239
+ responsible for claims and damages arising, directly or indirectly,
1240
+ out of its utilization of rights under this License and You agree to
1241
+ work with Initial Developer and Contributors to distribute such
1242
+ responsibility on an equitable basis. Nothing herein is intended or
1243
+ shall be deemed to constitute any admission of liability.
1244
+
1245
+ 13. MULTIPLE-LICENSED CODE.
1246
+
1247
+ Initial Developer may designate portions of the Covered Code as
1248
+ "Multiple-Licensed". "Multiple-Licensed" means that the Initial
1249
+ Developer permits you to utilize portions of the Covered Code under
1250
+ Your choice of the NPL or the alternative licenses, if any, specified
1251
+ by the Initial Developer in the file described in Exhibit A.
1252
+
1253
+ EXHIBIT A -Mozilla Public License.
1254
+
1255
+ ``The contents of this file are subject to the Mozilla Public License
1256
+ Version 1.1 (the "License"); you may not use this file except in
1257
+ compliance with the License. You may obtain a copy of the License at
1258
+ http://www.mozilla.org/MPL/
1259
+
1260
+ Software distributed under the License is distributed on an "AS IS"
1261
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
1262
+ License for the specific language governing rights and limitations
1263
+ under the License.
1264
+
1265
+ The Original Code is ______________________________________.
1266
+
1267
+ The Initial Developer of the Original Code is ________________________.
1268
+ Portions created by ______________________ are Copyright (C) ______
1269
+ _______________________. All Rights Reserved.
1270
+
1271
+ Contributor(s): ______________________________________.
1272
+
1273
+ Alternatively, the contents of this file may be used under the terms
1274
+ of the _____ license (the "[___] License"), in which case the
1275
+ provisions of [______] License are applicable instead of those
1276
+ above. If you wish to allow use of your version of this file only
1277
+ under the terms of the [____] License and not to allow others to use
1278
+ your version of this file under the MPL, indicate your decision by
1279
+ deleting the provisions above and replace them with the notice and
1280
+ other provisions required by the [___] License. If you do not delete
1281
+ the provisions above, a recipient may use your version of this file
1282
+ under either the MPL or the [___] License."
1283
+
1284
+ [NOTE: The text of this Exhibit A may differ slightly from the text of
1285
+ the notices in the Source Code files of the Original Code. You should
1286
+ use the text of this Exhibit A rather than the text found in the
1287
+ Original Code Source Code for Your Modifications.]
1288
+ ```
1289
+
1290
+ Appendix D: The MIT License
1291
+ ---------------------------
1292
+
1293
+ ```
1294
+ The MIT License (MIT)
1295
+
1296
+ Permission is hereby granted, free of charge, to any person obtaining a copy
1297
+ of this software and associated documentation files (the "Software"), to deal
1298
+ in the Software without restriction, including without limitation the rights
1299
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1300
+ copies of the Software, and to permit persons to whom the Software is
1301
+ furnished to do so, subject to the following conditions:
1302
+
1303
+ The above copyright notice and this permission notice shall be included in
1304
+ all copies or substantial portions of the Software.
1305
+
1306
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1307
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1308
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1309
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1310
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1311
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
1312
+ THE SOFTWARE.
1313
+ ```
1314
+
1315
+ Appendix E: The SIL Open Font License Version 1.1
1316
+ ---------------------------------------------
1317
+
1318
+ ```
1319
+ SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
1320
+ -----------------------------------------------------------
1321
+
1322
+ PREAMBLE
1323
+ The goals of the Open Font License (OFL) are to stimulate worldwide
1324
+ development of collaborative font projects, to support the font creation
1325
+ efforts of academic and linguistic communities, and to provide a free and
1326
+ open framework in which fonts may be shared and improved in partnership
1327
+ with others.
1328
+
1329
+ The OFL allows the licensed fonts to be used, studied, modified and
1330
+ redistributed freely as long as they are not sold by themselves. The
1331
+ fonts, including any derivative works, can be bundled, embedded,
1332
+ redistributed and/or sold with any software provided that any reserved
1333
+ names are not used by derivative works. The fonts and derivatives,
1334
+ however, cannot be released under any other type of license. The
1335
+ requirement for fonts to remain under this license does not apply
1336
+ to any document created using the fonts or their derivatives.
1337
+
1338
+ DEFINITIONS
1339
+ "Font Software" refers to the set of files released by the Copyright
1340
+ Holder(s) under this license and clearly marked as such. This may
1341
+ include source files, build scripts and documentation.
1342
+
1343
+ "Reserved Font Name" refers to any names specified as such after the
1344
+ copyright statement(s).
1345
+
1346
+ "Original Version" refers to the collection of Font Software components as
1347
+ distributed by the Copyright Holder(s).
1348
+
1349
+ "Modified Version" refers to any derivative made by adding to, deleting,
1350
+ or substituting -- in part or in whole -- any of the components of the
1351
+ Original Version, by changing formats or by porting the Font Software to a
1352
+ new environment.
1353
+
1354
+ "Author" refers to any designer, engineer, programmer, technical
1355
+ writer or other person who contributed to the Font Software.
1356
+
1357
+ PERMISSION & CONDITIONS
1358
+ Permission is hereby granted, free of charge, to any person obtaining
1359
+ a copy of the Font Software, to use, study, copy, merge, embed, modify,
1360
+ redistribute, and sell modified and unmodified copies of the Font
1361
+ Software, subject to the following conditions:
1362
+
1363
+ 1) Neither the Font Software nor any of its individual components,
1364
+ in Original or Modified Versions, may be sold by itself.
1365
+
1366
+ 2) Original or Modified Versions of the Font Software may be bundled,
1367
+ redistributed and/or sold with any software, provided that each copy
1368
+ contains the above copyright notice and this license. These can be
1369
+ included either as stand-alone text files, human-readable headers or
1370
+ in the appropriate machine-readable metadata fields within text or
1371
+ binary files as long as those fields can be easily viewed by the user.
1372
+
1373
+ 3) No Modified Version of the Font Software may use the Reserved Font
1374
+ Name(s) unless explicit written permission is granted by the corresponding
1375
+ Copyright Holder. This restriction only applies to the primary font name as
1376
+ presented to the users.
1377
+
1378
+ 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
1379
+ Software shall not be used to promote, endorse or advertise any
1380
+ Modified Version, except to acknowledge the contribution(s) of the
1381
+ Copyright Holder(s) and the Author(s) or with their explicit written
1382
+ permission.
1383
+
1384
+ 5) The Font Software, modified or unmodified, in part or in whole,
1385
+ must be distributed entirely under this license, and must not be
1386
+ distributed under any other license. The requirement for fonts to
1387
+ remain under this license does not apply to any document created
1388
+ using the Font Software.
1389
+
1390
+ TERMINATION
1391
+ This license becomes null and void if any of the above conditions are
1392
+ not met.
1393
+
1394
+ DISCLAIMER
1395
+ THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
1396
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
1397
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
1398
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
1399
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
1400
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
1401
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
1402
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
1403
+ OTHER DEALINGS IN THE FONT SOFTWARE.
1404
+ ```
1405
+
1406
+ Appendix F: The BSD-3 License
1407
+ -----------------------------
1408
+
1409
+ ```
1410
+ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1411
+
1412
+ 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
1413
+
1414
+ 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
1415
+
1416
+ 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
1417
+
1418
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1419
+ ```
1420
+
bt-source/panel/BTPanel/static/ckeditor/README.md ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ CKEditor 4
2
+ ==========
3
+
4
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
5
+ http://ckeditor.com - See LICENSE.md for license information.
6
+
7
+ CKEditor is a text editor to be used inside web pages. It's not a replacement
8
+ for desktop text editors like Word or OpenOffice, but a component to be used as
9
+ part of web applications and websites.
10
+
11
+ ## Documentation
12
+
13
+ The full editor documentation is available online at the following address:
14
+ http://docs.ckeditor.com
15
+
16
+ ## Installation
17
+
18
+ Installing CKEditor is an easy task. Just follow these simple steps:
19
+
20
+ 1. **Download** the latest version from the CKEditor website:
21
+ http://ckeditor.com. You should have already completed this step, but be
22
+ sure you have the very latest version.
23
+ 2. **Extract** (decompress) the downloaded file into the root of your website.
24
+
25
+ **Note:** CKEditor is by default installed in the `ckeditor` folder. You can
26
+ place the files in whichever you want though.
27
+
28
+ ## Checking Your Installation
29
+
30
+ The editor comes with a few sample pages that can be used to verify that
31
+ installation proceeded properly. Take a look at the `samples` directory.
32
+
33
+ To test your installation, just call the following page at your website:
34
+
35
+ http://<your site>/<CKEditor installation path>/samples/index.html
36
+
37
+ For example:
38
+
39
+ http://www.example.com/ckeditor/samples/index.html
bt-source/panel/BTPanel/static/ckeditor/adapters/jquery.js ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ (function(a){if("undefined"==typeof a)throw Error("jQuery should be loaded before CKEditor jQuery adapter.");if("undefined"==typeof CKEDITOR)throw Error("CKEditor should be loaded before CKEditor jQuery adapter.");CKEDITOR.config.jqueryOverrideVal="undefined"==typeof CKEDITOR.config.jqueryOverrideVal?!0:CKEDITOR.config.jqueryOverrideVal;a.extend(a.fn,{ckeditorGet:function(){var a=this.eq(0).data("ckeditorInstance");if(!a)throw"CKEditor is not initialized yet, use ckeditor() with a callback.";return a},
6
+ ckeditor:function(g,d){if(!CKEDITOR.env.isCompatible)throw Error("The environment is incompatible.");if(!a.isFunction(g)){var m=d;d=g;g=m}var k=[];d=d||{};this.each(function(){var b=a(this),c=b.data("ckeditorInstance"),f=b.data("_ckeditorInstanceLock"),h=this,l=new a.Deferred;k.push(l.promise());if(c&&!f)g&&g.apply(c,[this]),l.resolve();else if(f)c.once("instanceReady",function(){setTimeout(function(){c.element?(c.element.$==h&&g&&g.apply(c,[h]),l.resolve()):setTimeout(arguments.callee,100)},0)},
7
+ null,null,9999);else{if(d.autoUpdateElement||"undefined"==typeof d.autoUpdateElement&&CKEDITOR.config.autoUpdateElement)d.autoUpdateElementJquery=!0;d.autoUpdateElement=!1;b.data("_ckeditorInstanceLock",!0);c=a(this).is("textarea")?CKEDITOR.replace(h,d):CKEDITOR.inline(h,d);b.data("ckeditorInstance",c);c.on("instanceReady",function(d){var e=d.editor;setTimeout(function(){if(e.element){d.removeListener();e.on("dataReady",function(){b.trigger("dataReady.ckeditor",[e])});e.on("setData",function(a){b.trigger("setData.ckeditor",
8
+ [e,a.data])});e.on("getData",function(a){b.trigger("getData.ckeditor",[e,a.data])},999);e.on("destroy",function(){b.trigger("destroy.ckeditor",[e])});e.on("save",function(){a(h.form).submit();return!1},null,null,20);if(e.config.autoUpdateElementJquery&&b.is("textarea")&&a(h.form).length){var c=function(){b.ckeditor(function(){e.updateElement()})};a(h.form).submit(c);a(h.form).bind("form-pre-serialize",c);b.bind("destroy.ckeditor",function(){a(h.form).unbind("submit",c);a(h.form).unbind("form-pre-serialize",
9
+ c)})}e.on("destroy",function(){b.removeData("ckeditorInstance")});b.removeData("_ckeditorInstanceLock");b.trigger("instanceReady.ckeditor",[e]);g&&g.apply(e,[h]);l.resolve()}else setTimeout(arguments.callee,100)},0)},null,null,9999)}});var f=new a.Deferred;this.promise=f.promise();a.when.apply(this,k).then(function(){f.resolve()});this.editor=this.eq(0).data("ckeditorInstance");return this}});CKEDITOR.config.jqueryOverrideVal&&(a.fn.val=CKEDITOR.tools.override(a.fn.val,function(g){return function(d){if(arguments.length){var m=
10
+ this,k=[],f=this.each(function(){var b=a(this),c=b.data("ckeditorInstance");if(b.is("textarea")&&c){var f=new a.Deferred;c.setData(d,function(){f.resolve()});k.push(f.promise());return!0}return g.call(b,d)});if(k.length){var b=new a.Deferred;a.when.apply(this,k).done(function(){b.resolveWith(m)});return b.promise()}return f}var f=a(this).eq(0),c=f.data("ckeditorInstance");return f.is("textarea")&&c?c.getData():g.call(f)}}))})(window.jQuery);
bt-source/panel/BTPanel/static/ckeditor/build-config.js ADDED
@@ -0,0 +1,190 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * @license Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+
6
+ /**
7
+ * This file was added automatically by CKEditor builder.
8
+ * You may re-use it at any time to build CKEditor again.
9
+ *
10
+ * If you would like to build CKEditor online again
11
+ * (for example to upgrade), visit one the following links:
12
+ *
13
+ * (1) https://ckeditor.com/cke4/builder
14
+ * Visit online builder to build CKEditor from scratch.
15
+ *
16
+ * (2) https://ckeditor.com/cke4/builder/c3fc0dcaa9c80d707aab3e60fdcddbfb
17
+ * Visit online builder to build CKEditor, starting with the same setup as before.
18
+ *
19
+ * (3) https://ckeditor.com/cke4/builder/download/c3fc0dcaa9c80d707aab3e60fdcddbfb
20
+ * Straight download link to the latest version of CKEditor (Optimized) with the same setup as before.
21
+ *
22
+ * NOTE:
23
+ * This file is not used by CKEditor, you may remove it.
24
+ * Changing this file will not change your CKEditor configuration.
25
+ */
26
+
27
+ var CKBUILDER_CONFIG = {
28
+ skin: 'moono-lisa',
29
+ preset: 'full',
30
+ ignore: [
31
+ '.DS_Store',
32
+ '.bender',
33
+ '.editorconfig',
34
+ '.gitattributes',
35
+ '.gitignore',
36
+ '.idea',
37
+ '.jscsrc',
38
+ '.jshintignore',
39
+ '.jshintrc',
40
+ '.mailmap',
41
+ '.npm',
42
+ '.travis.yml',
43
+ 'bender-err.log',
44
+ 'bender-out.log',
45
+ 'bender.ci.js',
46
+ 'bender.js',
47
+ 'dev',
48
+ 'gruntfile.js',
49
+ 'less',
50
+ 'node_modules',
51
+ 'package.json',
52
+ 'tests'
53
+ ],
54
+ plugins : {
55
+ 'a11yhelp' : 1,
56
+ 'about' : 1,
57
+ 'basicstyles' : 1,
58
+ 'bidi' : 1,
59
+ 'blockquote' : 1,
60
+ 'clipboard' : 1,
61
+ 'colorbutton' : 1,
62
+ 'colordialog' : 1,
63
+ 'contextmenu' : 1,
64
+ 'copyformatting' : 1,
65
+ 'dialogadvtab' : 1,
66
+ 'div' : 1,
67
+ 'elementspath' : 1,
68
+ 'enterkey' : 1,
69
+ 'entities' : 1,
70
+ 'filebrowser' : 1,
71
+ 'find' : 1,
72
+ 'flash' : 1,
73
+ 'floatingspace' : 1,
74
+ 'font' : 1,
75
+ 'format' : 1,
76
+ 'forms' : 1,
77
+ 'horizontalrule' : 1,
78
+ 'htmlwriter' : 1,
79
+ 'iframe' : 1,
80
+ 'image' : 1,
81
+ 'indentblock' : 1,
82
+ 'indentlist' : 1,
83
+ 'justify' : 1,
84
+ 'language' : 1,
85
+ 'link' : 1,
86
+ 'list' : 1,
87
+ 'liststyle' : 1,
88
+ 'magicline' : 1,
89
+ 'maximize' : 1,
90
+ 'newpage' : 1,
91
+ 'pagebreak' : 1,
92
+ 'pastefromword' : 1,
93
+ 'pastetext' : 1,
94
+ 'preview' : 1,
95
+ 'print' : 1,
96
+ 'removeformat' : 1,
97
+ 'resize' : 1,
98
+ 'save' : 1,
99
+ 'scayt' : 1,
100
+ 'selectall' : 1,
101
+ 'showblocks' : 1,
102
+ 'showborders' : 1,
103
+ 'smiley' : 1,
104
+ 'sourcearea' : 1,
105
+ 'specialchar' : 1,
106
+ 'stylescombo' : 1,
107
+ 'tab' : 1,
108
+ 'table' : 1,
109
+ 'tableselection' : 1,
110
+ 'tabletools' : 1,
111
+ 'templates' : 1,
112
+ 'toolbar' : 1,
113
+ 'undo' : 1,
114
+ 'uploadimage' : 1,
115
+ 'wsc' : 1,
116
+ 'wysiwygarea' : 1
117
+ },
118
+ languages : {
119
+ 'af' : 1,
120
+ 'ar' : 1,
121
+ 'az' : 1,
122
+ 'bg' : 1,
123
+ 'bn' : 1,
124
+ 'bs' : 1,
125
+ 'ca' : 1,
126
+ 'cs' : 1,
127
+ 'cy' : 1,
128
+ 'da' : 1,
129
+ 'de' : 1,
130
+ 'de-ch' : 1,
131
+ 'el' : 1,
132
+ 'en' : 1,
133
+ 'en-au' : 1,
134
+ 'en-ca' : 1,
135
+ 'en-gb' : 1,
136
+ 'eo' : 1,
137
+ 'es' : 1,
138
+ 'es-mx' : 1,
139
+ 'et' : 1,
140
+ 'eu' : 1,
141
+ 'fa' : 1,
142
+ 'fi' : 1,
143
+ 'fo' : 1,
144
+ 'fr' : 1,
145
+ 'fr-ca' : 1,
146
+ 'gl' : 1,
147
+ 'gu' : 1,
148
+ 'he' : 1,
149
+ 'hi' : 1,
150
+ 'hr' : 1,
151
+ 'hu' : 1,
152
+ 'id' : 1,
153
+ 'is' : 1,
154
+ 'it' : 1,
155
+ 'ja' : 1,
156
+ 'ka' : 1,
157
+ 'km' : 1,
158
+ 'ko' : 1,
159
+ 'ku' : 1,
160
+ 'lt' : 1,
161
+ 'lv' : 1,
162
+ 'mk' : 1,
163
+ 'mn' : 1,
164
+ 'ms' : 1,
165
+ 'nb' : 1,
166
+ 'nl' : 1,
167
+ 'no' : 1,
168
+ 'oc' : 1,
169
+ 'pl' : 1,
170
+ 'pt' : 1,
171
+ 'pt-br' : 1,
172
+ 'ro' : 1,
173
+ 'ru' : 1,
174
+ 'si' : 1,
175
+ 'sk' : 1,
176
+ 'sl' : 1,
177
+ 'sq' : 1,
178
+ 'sr' : 1,
179
+ 'sr-latn' : 1,
180
+ 'sv' : 1,
181
+ 'th' : 1,
182
+ 'tr' : 1,
183
+ 'tt' : 1,
184
+ 'ug' : 1,
185
+ 'uk' : 1,
186
+ 'vi' : 1,
187
+ 'zh' : 1,
188
+ 'zh-cn' : 1
189
+ }
190
+ };
bt-source/panel/BTPanel/static/ckeditor/ckeditor.js ADDED
The diff for this file is too large to render. See raw diff
 
bt-source/panel/BTPanel/static/ckeditor/config.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * @license Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ * For licensing, see https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+
6
+ CKEDITOR.editorConfig = function (config) {
7
+ // Define changes to default configuration here. For example:
8
+ config.language = 'zh-cn'
9
+ config.height = 330
10
+ // config.uiColor = '#AADC6E';
11
+ }
bt-source/panel/BTPanel/static/ckeditor/contents.css ADDED
@@ -0,0 +1,208 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+
6
+ body
7
+ {
8
+ /* Font */
9
+ /* Emoji fonts are added to visualise them nicely in Internet Explorer. */
10
+ font-family: sans-serif, Arial, Verdana, "Trebuchet MS", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
11
+ font-size: var(--el-font-size-small);
12
+
13
+ /* Text color */
14
+ color: #333;
15
+
16
+ /* Remove the background color to make it transparent. */
17
+ background-color: #fff;
18
+
19
+ margin: 20px;
20
+ }
21
+
22
+ .cke_editable
23
+ {
24
+ font-size: 13px;
25
+ line-height: 1.6;
26
+
27
+ /* Fix for missing scrollbars with RTL texts. (#10488) */
28
+ word-wrap: break-word;
29
+ }
30
+
31
+ blockquote
32
+ {
33
+ font-style: italic;
34
+ font-family: Georgia, Times, "Times New Roman", serif;
35
+ padding: 2px 0;
36
+ border-style: solid;
37
+ border-color: #ccc;
38
+ border-width: 0;
39
+ }
40
+
41
+ .cke_contents_ltr blockquote
42
+ {
43
+ padding-left: 20px;
44
+ padding-right: 8px;
45
+ border-left-width: 5px;
46
+ }
47
+
48
+ .cke_contents_rtl blockquote
49
+ {
50
+ padding-left: 8px;
51
+ padding-right: 20px;
52
+ border-right-width: 5px;
53
+ }
54
+
55
+ a
56
+ {
57
+ color: #0782C1;
58
+ }
59
+
60
+ ol,ul,dl
61
+ {
62
+ /* IE7: reset rtl list margin. (#7334) */
63
+ *margin-right: 0px;
64
+ /* Preserved spaces for list items with text direction different than the list. (#6249,#8049)*/
65
+ padding: 0 40px;
66
+ }
67
+
68
+ h1,h2,h3,h4,h5,h6
69
+ {
70
+ font-weight: normal;
71
+ line-height: 1.2;
72
+ }
73
+
74
+ hr
75
+ {
76
+ border: 0px;
77
+ border-top: 1px solid #ccc;
78
+ }
79
+
80
+ img.right
81
+ {
82
+ border: 1px solid #ccc;
83
+ float: right;
84
+ margin-left: 15px;
85
+ padding: 5px;
86
+ }
87
+
88
+ img.left
89
+ {
90
+ border: 1px solid #ccc;
91
+ float: left;
92
+ margin-right: 15px;
93
+ padding: 5px;
94
+ }
95
+
96
+ pre
97
+ {
98
+ white-space: pre-wrap; /* CSS 2.1 */
99
+ word-wrap: break-word; /* IE7 */
100
+ -moz-tab-size: 4;
101
+ tab-size: 4;
102
+ }
103
+
104
+ .marker
105
+ {
106
+ background-color: Yellow;
107
+ }
108
+
109
+ span[lang]
110
+ {
111
+ font-style: italic;
112
+ }
113
+
114
+ figure
115
+ {
116
+ text-align: center;
117
+ outline: solid 1px #ccc;
118
+ background: rgba(0,0,0,0.05);
119
+ padding: 10px;
120
+ margin: 10px 20px;
121
+ display: inline-block;
122
+ }
123
+
124
+ figure > figcaption
125
+ {
126
+ text-align: center;
127
+ display: block; /* For IE8 */
128
+ }
129
+
130
+ a > img {
131
+ padding: 1px;
132
+ margin: 1px;
133
+ border: none;
134
+ outline: 1px solid #0782C1;
135
+ }
136
+
137
+ /* Widget Styles */
138
+ .code-featured
139
+ {
140
+ border: 5px solid red;
141
+ }
142
+
143
+ .math-featured
144
+ {
145
+ padding: 20px;
146
+ box-shadow: 0 0 2px rgba(200, 0, 0, 1);
147
+ background-color: rgba(255, 0, 0, 0.05);
148
+ margin: 10px;
149
+ }
150
+
151
+ .image-clean
152
+ {
153
+ border: 0;
154
+ background: none;
155
+ padding: 0;
156
+ }
157
+
158
+ .image-clean > figcaption
159
+ {
160
+ font-size: .9em;
161
+ text-align: right;
162
+ }
163
+
164
+ .image-grayscale
165
+ {
166
+ background-color: white;
167
+ color: var(--el-color-text-secondary);
168
+ }
169
+
170
+ .image-grayscale img, img.image-grayscale
171
+ {
172
+ filter: grayscale(100%);
173
+ }
174
+
175
+ .embed-240p
176
+ {
177
+ max-width: 426px;
178
+ max-height: 240px;
179
+ margin:0 auto;
180
+ }
181
+
182
+ .embed-360p
183
+ {
184
+ max-width: 640px;
185
+ max-height: 360px;
186
+ margin:0 auto;
187
+ }
188
+
189
+ .embed-480p
190
+ {
191
+ max-width: 854px;
192
+ max-height: 480px;
193
+ margin:0 auto;
194
+ }
195
+
196
+ .embed-720p
197
+ {
198
+ max-width: 1280px;
199
+ max-height: 720px;
200
+ margin:0 auto;
201
+ }
202
+
203
+ .embed-1080p
204
+ {
205
+ max-width: 1920px;
206
+ max-height: 1080px;
207
+ margin:0 auto;
208
+ }
bt-source/panel/BTPanel/static/ckeditor/lang/af.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['af']={"editor":"Woordverwerker","editorPanel":"Woordverwerkerpaneel","common":{"editorHelp":"Druk op ALT 0 vir hulp","browseServer":"Blaai op bediener","url":"URL","protocol":"Protokol","upload":"Oplaai","uploadSubmit":"Stuur aan die bediener","image":"Beeld","flash":"Flash","form":"Vorm","checkbox":"Merkhokkie","radio":"Radioknoppie","textField":"Teksveld","textarea":"Teksarea","hiddenField":"Versteekteveld","button":"Knop","select":"Keuseveld","imageButton":"Beeldknop","notSet":"<geen instelling>","id":"Id","name":"Naam","langDir":"Skryfrigting","langDirLtr":"Links na regs (LTR)","langDirRtl":"Regs na links (RTL)","langCode":"Taalkode","longDescr":"Lang beskrywing URL","cssClass":"CSS klasse","advisoryTitle":"Aanbevole titel","cssStyle":"Styl","ok":"OK","cancel":"Kanselleer","close":"Sluit","preview":"Voorbeeld","resize":"Skalierung","generalTab":"Algemeen","advancedTab":"Gevorderd","validateNumberFailed":"Hierdie waarde is nie 'n nommer nie.","confirmNewPage":"Alle wysiginge sal verlore gaan. Is jy seker dat jy 'n nuwe bladsy wil laai?","confirmCancel":"Sommige opsies is gewysig. Is jy seker dat jy hierdie dialoogvenster wil sluit?","options":"Opsies","target":"Teiken","targetNew":"Nuwe venster (_blank)","targetTop":"Boonste venster (_top)","targetSelf":"Selfde venster (_self)","targetParent":"Oorspronklike venster (_parent)","langDirLTR":"Links na Regs (LTR)","langDirRTL":"Regs na Links (RTL)","styles":"Styl","cssClasses":"CSS klasse","width":"Breedte","height":"Hoogte","align":"Orienteerung","left":"Links","right":"Regs","center":"Middel","justify":"Eweredig","alignLeft":"Links oplyn","alignRight":"Regs oplyn","alignCenter":"Middel oplyn","alignTop":"Bo","alignMiddle":"Middel","alignBottom":"Onder","alignNone":"Geen","invalidValue":"Ongeldige waarde","invalidHeight":"Hoogte moet 'n getal wees","invalidWidth":"Breedte moet 'n getal wees.","invalidLength":"Die waarde vir die veld \"%1\" moet 'n posetiewe nommer wees met of sonder die meeteenheid (%2).","invalidCssLength":"Die waarde vir die \"%1\" veld moet 'n posetiewe getal wees met of sonder 'n geldige CSS eenheid (px, %, in, cm, mm, em, ex, pt, of pc).","invalidHtmlLength":"Die waarde vir die \"%1\" veld moet 'n posetiewe getal wees met of sonder 'n geldige HTML eenheid (px of %).","invalidInlineStyle":"Ongeldige CSS. Formaat is een of meer sleutel-wert paare, \"naam : wert\" met kommapunte gesky.","cssLengthTooltip":"Voeg 'n getal wert in pixel in, of 'n waarde met geldige CSS eenheid (px, %, in, cm, mm, em, ex, pt, of pc).","unavailable":"%1<span class=\"cke_accessibility\">, nie beskikbaar nie</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Skuif","17":"Ctrl","18":"Alt","32":"Spasie","35":"Einde","36":"Tuis","46":"Verwyder","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Bevel"},"keyboardShortcut":"Sleutel kombenasie","optionDefault":"Verstek"},"about":{"copy":"Kopiereg &copy; $1. Alle regte voorbehou.","dlgTitle":"Meer oor CKEditor 4","moreInfo":"Vir lisensie-informasie, besoek asb. ons webwerf:"},"basicstyles":{"bold":"Vet","italic":"Skuins","strike":"Deurgestreep","subscript":"Onderskrif","superscript":"Bo-skrif","underline":"Onderstreep"},"bidi":{"ltr":"Skryfrigting van links na regs","rtl":"Skryfrigting van regs na links"},"blockquote":{"toolbar":"Sitaatblok"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Verklein werkbalk","toolbarExpand":"Vergroot werkbalk","toolbarGroups":{"document":"Dokument","clipboard":"Knipbord/Undo","editing":"Verander","forms":"Vorms","basicstyles":"Eenvoudige Styl","paragraph":"Paragraaf","links":"Skakels","insert":"Toevoeg","styles":"Style","colors":"Kleure","tools":"Gereedskap"},"toolbars":"Werkbalke"},"clipboard":{"copy":"Kopiëer","copyError":"U leser se sekuriteitsinstelling belet die kopiëringsaksie. Gebruik die sleutelbordkombinasie (Ctrl/Cmd+C).","cut":"Uitsnei","cutError":"U leser se sekuriteitsinstelling belet die outomatiese uitsnei-aksie. Gebruik die sleutelbordkombinasie (Ctrl/Cmd+X).","paste":"Byvoeg","pasteNotification":"Druk %1 om by te voeg. You leser ondersteun nie die toolbar knoppie of inoud kieslysie opsie nie. ","pasteArea":"Area byvoeg","pasteMsg":"Voeg jou inhoud in die gebied onder by en druk OK"},"colorbutton":{"auto":"Outomaties","bgColorTitle":"Agtergrondkleur","colors":{"000":"Swart","800000":"Meroen","8B4513":"Sjokoladebruin","2F4F4F":"Donkerleisteengrys","008080":"Blougroen","000080":"Vlootblou","4B0082":"Indigo","696969":"Donkergrys","B22222":"Rooibaksteen","A52A2A":"Bruin","DAA520":"Donkergeel","006400":"Donkergroen","40E0D0":"Turkoois","0000CD":"Middelblou","800080":"Pers","808080":"Grys","F00":"Rooi","FF8C00":"Donkeroranje","FFD700":"Goud","008000":"Groen","0FF":"Siaan","00F":"Blou","EE82EE":"Viooltjieblou","A9A9A9":"Donkergrys","FFA07A":"Ligsalm","FFA500":"Oranje","FFFF00":"Geel","00FF00":"Lemmetjie","AFEEEE":"Ligturkoois","ADD8E6":"Ligblou","DDA0DD":"Pruim","D3D3D3":"Liggrys","FFF0F5":"Linne","FAEBD7":"Ivoor","FFFFE0":"Liggeel","F0FFF0":"Heuningdou","F0FFFF":"Asuur","F0F8FF":"Ligte hemelsblou","E6E6FA":"Laventel","FFF":"Wit","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Meer Kleure...","panelTitle":"Kleure","textColorTitle":"Tekskleur"},"colordialog":{"clear":"Herstel","highlight":"Aktief","options":"Kleuropsies","selected":"Geselekteer","title":"Kies kleur"},"templates":{"button":"Sjablone","emptyListMsg":"(Geen sjablone gedefineer nie)","insertOption":"Vervang huidige inhoud","options":"Sjabloon opsies","selectPromptMsg":"Kies die sjabloon om te gebruik in die redigeerder (huidige inhoud gaan verlore):","title":"Inhoud Sjablone"},"contextmenu":{"options":"Konteks Spyskaart-opsies"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Aanbevole Titel","cssClassInputLabel":"CSS klasse","edit":"Wysig Div","inlineStyleInputLabel":"Inlyn Styl","langDirLTRLabel":"Links na regs (LTR)","langDirLabel":"Skryfrigting","langDirRTLLabel":"Regs na links (RTL)","languageCodeInputLabel":" Taalkode","remove":"Verwyder Div","styleSelectLabel":"Styl","title":"Skep Div houer","toolbar":"Skep Div houer"},"elementspath":{"eleLabel":"Elemente-pad","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Soek","findOptions":"Find Options","findWhat":"Soek na:","matchCase":"Hoof/kleinletter sensitief","matchCyclic":"Soek deurlopend","matchWord":"Hele woord moet voorkom","notFoundMsg":"Teks nie gevind nie.","replace":"Vervang","replaceAll":"Vervang alles","replaceSuccessMsg":"%1 voorkoms(te) vervang.","replaceWith":"Vervang met:","title":"Soek en vervang"},"fakeobjects":{"anchor":"Anker","flash":"Flash animasie","hiddenfield":"Verborge veld","iframe":"IFrame","unknown":"Onbekende objek"},"flash":{"access":"Skrip toegang","accessAlways":"Altyd","accessNever":"Nooit","accessSameDomain":"Selfde domeinnaam","alignAbsBottom":"Absoluut-onder","alignAbsMiddle":"Absoluut-middel","alignBaseline":"Basislyn","alignTextTop":"Teks bo","bgcolor":"Agtergrondkleur","chkFull":"Laat volledige skerm toe","chkLoop":"Herhaal","chkMenu":"Flash spyskaart aan","chkPlay":"Speel outomaties","flashvars":"Veranderlikes vir Flash","hSpace":"HSpasie","properties":"Flash eienskappe","propertiesTab":"Eienskappe","quality":"Kwaliteit","qualityAutoHigh":"Outomaties hoog","qualityAutoLow":"Outomaties laag","qualityBest":"Beste","qualityHigh":"Hoog","qualityLow":"Laag","qualityMedium":"Gemiddeld","scale":"Skaal","scaleAll":"Wys alles","scaleFit":"Presiese pas","scaleNoBorder":"Geen rand","title":"Flash eienskappe","vSpace":"VSpasie","validateHSpace":"HSpasie moet 'n heelgetal wees.","validateSrc":"Voeg die URL in","validateVSpace":"VSpasie moet 'n heelgetal wees.","windowMode":"Venster modus","windowModeOpaque":"Ondeursigtig","windowModeTransparent":"Deursigtig","windowModeWindow":"Venster"},"font":{"fontSize":{"label":"Grootte","voiceLabel":"Fontgrootte","panelTitle":"Fontgrootte"},"label":"Font","panelTitle":"Fontnaam","voiceLabel":"Font"},"forms":{"button":{"title":"Knop eienskappe","text":"Teks (Waarde)","type":"Soort","typeBtn":"Knop","typeSbm":"Stuur","typeRst":"Maak leeg"},"checkboxAndRadio":{"checkboxTitle":"Merkhokkie eienskappe","radioTitle":"Radioknoppie eienskappe","value":"Waarde","selected":"Geselekteer","required":"Required"},"form":{"title":"Vorm eienskappe","menu":"Vorm eienskappe","action":"Aksie","method":"Metode","encoding":"Kodering"},"hidden":{"title":"Verborge veld eienskappe","name":"Naam","value":"Waarde"},"select":{"title":"Keuseveld eienskappe","selectInfo":"Info","opAvail":"Beskikbare opsies","value":"Waarde","size":"Grootte","lines":"Lyne","chkMulti":"Laat meer as een keuse toe","required":"Required","opText":"Teks","opValue":"Waarde","btnAdd":"Byvoeg","btnModify":"Wysig","btnUp":"Op","btnDown":"Af","btnSetValue":"Stel as geselekteerde waarde","btnDelete":"Verwyder"},"textarea":{"title":"Teks-area eienskappe","cols":"Kolomme","rows":"Rye"},"textfield":{"title":"Teksveld eienskappe","name":"Naam","value":"Waarde","charWidth":"Breedte (karakters)","maxChars":"Maksimum karakters","required":"Required","type":"Soort","typeText":"Teks","typePass":"Wagwoord","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Opmaak","panelTitle":"Opmaak","tag_address":"Adres","tag_div":"Normaal (DIV)","tag_h1":"Opskrif 1","tag_h2":"Opskrif 2","tag_h3":"Opskrif 3","tag_h4":"Opskrif 4","tag_h5":"Opskrif 5","tag_h6":"Opskrif 6","tag_p":"Normaal","tag_pre":"Opgemaak"},"horizontalrule":{"toolbar":"Horisontale lyn invoeg"},"iframe":{"border":"Wys rand van raam","noUrl":"Gee die iframe URL","scrolling":"Skuifbalke aan","title":"IFrame Eienskappe","toolbar":"IFrame"},"image":{"alt":"Alternatiewe teks","border":"Rand","btnUpload":"Stuur na bediener","button2Img":"Wil u die geselekteerde afbeeldingsknop vervang met 'n eenvoudige afbeelding?","hSpace":"HSpasie","img2Button":"Wil u die geselekteerde afbeelding vervang met 'n afbeeldingsknop?","infoTab":"Afbeelding informasie","linkTab":"Skakel","lockRatio":"Vaste proporsie","menu":"Afbeelding eienskappe","resetSize":"Herstel grootte","title":"Afbeelding eienskappe","titleButton":"Afbeeldingsknop eienskappe","upload":"Oplaai","urlMissing":"Die URL na die afbeelding ontbreek.","vSpace":"VSpasie","validateBorder":"Rand moet 'n heelgetal wees.","validateHSpace":"HSpasie moet 'n heelgetal wees.","validateVSpace":"VSpasie moet 'n heelgetal wees."},"indent":{"indent":"Vergroot inspring","outdent":"Verklein inspring"},"smiley":{"options":"Lagbekkie opsies","title":"Voeg lagbekkie by","toolbar":"Lagbekkie"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Toegangsleutel","advanced":"Gevorderd","advisoryContentType":"Aanbevole inhoudstipe","advisoryTitle":"Aanbevole titel","anchor":{"toolbar":"Anker byvoeg/verander","menu":"Anker-eienskappe","title":"Anker-eienskappe","name":"Ankernaam","errorName":"Voltooi die ankernaam asseblief","remove":"Remove Anchor"},"anchorId":"Op element Id","anchorName":"Op ankernaam","charset":"Karakterstel van geskakelde bron","cssClasses":"CSS klasse","download":"Force Download","displayText":"Display Text","emailAddress":"E-posadres","emailBody":"Berig-inhoud","emailSubject":"Berig-onderwerp","id":"Id","info":"Skakel informasie","langCode":"Taalkode","langDir":"Skryfrigting","langDirLTR":"Links na regs (LTR)","langDirRTL":"Regs na links (RTL)","menu":"Wysig skakel","name":"Naam","noAnchors":"(Geen ankers beskikbaar in dokument)","noEmail":"Gee die e-posadres","noUrl":"Gee die skakel se URL","noTel":"Please type the phone number","other":"<ander>","phoneNumber":"Phone number","popupDependent":"Afhanklik (Netscape)","popupFeatures":"Eienskappe van opspringvenster","popupFullScreen":"Volskerm (IE)","popupLeft":"Posisie links","popupLocationBar":"Adresbalk","popupMenuBar":"Spyskaartbalk","popupResizable":"Herskaalbaar","popupScrollBars":"Skuifbalke","popupStatusBar":"Statusbalk","popupToolbar":"Werkbalk","popupTop":"Posisie bo","rel":"Relationship","selectAnchor":"Kies 'n anker","styles":"Styl","tabIndex":"Tab indeks","target":"Doel","targetFrame":"<raam>","targetFrameName":"Naam van doelraam","targetPopup":"<opspringvenster>","targetPopupName":"Naam van opspringvenster","title":"Skakel","toAnchor":"Anker in bladsy","toEmail":"E-pos","toUrl":"URL","toPhone":"Phone","toolbar":"Skakel invoeg/wysig","type":"Skakelsoort","unlink":"Verwyder skakel","upload":"Oplaai"},"list":{"bulletedlist":"Ongenommerde lys","numberedlist":"Genommerde lys"},"liststyle":{"bulletedTitle":"Eienskappe van ongenommerde lys","circle":"Sirkel","decimal":"Desimale syfers (1, 2, 3, ens.)","disc":"Skyf","lowerAlpha":"Kleinletters (a, b, c, d, e, ens.)","lowerRoman":"Romeinse kleinletters (i, ii, iii, iv, v, ens.)","none":"Geen","notset":"<nie ingestel nie>","numberedTitle":"Eienskappe van genommerde lys","square":"Vierkant","start":"Begin","type":"Tipe","upperAlpha":"Hoofletters (A, B, C, D, E, ens.)","upperRoman":"Romeinse hoofletters (I, II, III, IV, V, ens.)","validateStartNumber":"Beginnommer van lys moet 'n heelgetal wees."},"magicline":{"title":"Voeg paragraaf hier in"},"maximize":{"maximize":"Maksimaliseer","minimize":"Minimaliseer"},"newpage":{"toolbar":"Nuwe bladsy"},"pagebreak":{"alt":"Bladsy-einde","toolbar":"Bladsy-einde invoeg"},"pastetext":{"button":"Voeg by as eenvoudige teks","pasteNotification":"Druk %1 om by te voeg. Jou leser ondersteun nie byvoeg deur die toolbar knoppie of die konteks kieslys nie","title":"Voeg by as eenvoudige teks"},"pastefromword":{"confirmCleanup":"Die teks wat u wil byvoeg lyk asof dit uit Word gekopiëer is. Wil u dit eers skoonmaak voordat dit bygevoeg word?","error":"Die bygevoegte teks kon nie skoongemaak word nie, weens 'n interne fout","title":"Uit Word byvoeg","toolbar":"Uit Word byvoeg"},"preview":{"preview":"Voorbeeld"},"print":{"toolbar":"Druk"},"removeformat":{"toolbar":"Verwyder opmaak"},"save":{"toolbar":"Bewaar"},"selectall":{"toolbar":"Selekteer alles"},"showblocks":{"toolbar":"Toon blokke"},"sourcearea":{"toolbar":"Bron"},"specialchar":{"options":"Spesiale karakter-opsies","title":"Kies spesiale karakter","toolbar":"Voeg spesiaale karakter in"},"scayt":{"btn_about":"SCAYT info","btn_dictionaries":"Woordeboeke","btn_disable":"SCAYT af","btn_enable":"SCAYT aan","btn_langs":"Tale","btn_options":"Opsies","text_title":"Speltoets terwyl u tik"},"stylescombo":{"label":"Styl","panelTitle":"Vormaat style","panelTitle1":"Blok style","panelTitle2":"Inlyn style","panelTitle3":"Objek style"},"table":{"border":"Randbreedte","caption":"Naam","cell":{"menu":"Sel","insertBefore":"Voeg sel in voor","insertAfter":"Voeg sel in na","deleteCell":"Verwyder sel","merge":"Voeg selle saam","mergeRight":"Voeg saam na regs","mergeDown":"Voeg saam ondertoe","splitHorizontal":"Splits sel horisontaal","splitVertical":"Splits sel vertikaal","title":"Sel eienskappe","cellType":"Sel tipe","rowSpan":"Omspan rye","colSpan":"Omspan kolomme","wordWrap":"Woord terugloop","hAlign":"Horisontale oplyning","vAlign":"Vertikale oplyning","alignBaseline":"Basislyn","bgColor":"Agtergrondkleur","borderColor":"Randkleur","data":"Inhoud","header":"Opskrif","yes":"Ja","no":"Nee","invalidWidth":"Selbreedte moet 'n getal wees.","invalidHeight":"Selhoogte moet 'n getal wees.","invalidRowSpan":"Omspan rye moet 'n heelgetal wees.","invalidColSpan":"Omspan kolomme moet 'n heelgetal wees.","chooseColor":"Kies"},"cellPad":"Sel-spasie","cellSpace":"Sel-afstand","column":{"menu":"Kolom","insertBefore":"Voeg kolom in voor","insertAfter":"Voeg kolom in na","deleteColumn":"Verwyder kolom"},"columns":"Kolomme","deleteTable":"Verwyder tabel","headers":"Opskrifte","headersBoth":"Beide ","headersColumn":"Eerste kolom","headersNone":"Geen","headersRow":"Eerste ry","invalidBorder":"Randbreedte moet 'n getal wees.","invalidCellPadding":"Sel-spasie moet 'n getal wees.","invalidCellSpacing":"Sel-afstand moet 'n getal wees.","invalidCols":"Aantal kolomme moet 'n getal groter as 0 wees.","invalidHeight":"Tabelhoogte moet 'n getal wees.","invalidRows":"Aantal rye moet 'n getal groter as 0 wees.","invalidWidth":"Tabelbreedte moet 'n getal wees.","menu":"Tabel eienskappe","row":{"menu":"Ry","insertBefore":"Voeg ry in voor","insertAfter":"Voeg ry in na","deleteRow":"Verwyder ry"},"rows":"Rye","summary":"Opsomming","title":"Tabel eienskappe","toolbar":"Tabel","widthPc":"persent","widthPx":"piksels","widthUnit":"breedte-eenheid"},"undo":{"redo":"Oordoen","undo":"Ontdoen"},"widget":{"move":"Klik en trek on te beweeg","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Ignoreer","btnIgnoreAll":"Ignoreer alles","btnReplace":"Vervang","btnReplaceAll":"vervang alles","btnUndo":"Ontdoen","changeTo":"Verander na","errorLoading":"Fout by inlaai van diens: %s.","ieSpellDownload":"Speltoetser is nie geïnstalleer nie. Wil u dit nou aflaai?","manyChanges":"Klaar met speltoets: %1 woorde verander","noChanges":"Klaar met speltoets: Geen woorde verander nie","noMispell":"Klaar met speltoets: Geen foute nie","noSuggestions":"- Geen voorstel -","notAvailable":"Jammer, hierdie diens is nie nou beskikbaar nie.","notInDic":"Nie in woordeboek nie","oneChange":"Klaar met speltoets: Een woord verander","progress":"Spelling word getoets...","title":"Speltoetser","toolbar":"Speltoets"}};
bt-source/panel/BTPanel/static/ckeditor/lang/ar.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['ar']={"editor":"محرر النص الغني","editorPanel":"لائحة محرر النص المنسق","common":{"editorHelp":"إضغط على ALT + 0 للحصول على المساعدة.","browseServer":"تصفح","url":"الرابط","protocol":"البروتوكول","upload":"رفع","uploadSubmit":"أرسل","image":"صورة","flash":"فلاش","form":"نموذج","checkbox":"خانة إختيار","radio":"زر اختيار","textField":"مربع نص","textarea":"مساحة نصية","hiddenField":"إدراج حقل خفي","button":"زر ضغط","select":"اختار","imageButton":"زر صورة","notSet":"<بدون تحديد>","id":"الرقم","name":"إسم","langDir":"إتجاه النص","langDirLtr":"اليسار لليمين (LTR)","langDirRtl":"اليمين لليسار (RTL)","langCode":"رمز اللغة","longDescr":"الوصف التفصيلى","cssClass":"فئات التنسيق","advisoryTitle":"عنوان التقرير","cssStyle":"نمط","ok":"موافق","cancel":"إلغاء الأمر","close":"أغلق","preview":"استعراض","resize":"تغيير الحجم","generalTab":"عام","advancedTab":"متقدم","validateNumberFailed":"لايوجد نتيجة","confirmNewPage":"ستفقد أي متغييرات اذا لم تقم بحفظها اولا. هل أنت متأكد أنك تريد صفحة جديدة؟","confirmCancel":"بعض الخيارات قد تغيرت. هل أنت متأكد من إغلاق مربع النص؟","options":"خيارات","target":"هدف الرابط","targetNew":"نافذة جديدة","targetTop":"النافذة الأعلى","targetSelf":"داخل النافذة","targetParent":"النافذة الأم","langDirLTR":"اليسار لليمين (LTR)","langDirRTL":"اليمين لليسار (RTL)","styles":"نمط","cssClasses":"فئات التنسيق","width":"العرض","height":"الإرتفاع","align":"محاذاة","left":"يسار","right":"يمين","center":"وسط","justify":"ضبط","alignLeft":"محاذاة إلى اليسار","alignRight":"محاذاة إلى اليمين","alignCenter":"Align Center","alignTop":"أعلى","alignMiddle":"وسط","alignBottom":"أسفل","alignNone":"None","invalidValue":"قيمة غير مفبولة.","invalidHeight":"الارتفاع يجب أن يكون عدداً.","invalidWidth":"العرض يجب أن يكون عدداً.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"قيمة الخانة المخصصة لـ \"%1\" يجب أن تكون رقما موجبا، باستخدام أو من غير استخدام وحدة CSS قياس مقبولة (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"قيمة الخانة المخصصة لـ \"%1\" يجب أن تكون رقما موجبا، باستخدام أو من غير استخدام وحدة HTML قياس مقبولة (px or %).","invalidInlineStyle":"قيمة الخانة المخصصة لـ Inline Style يجب أن تختوي على مجموع واحد أو أكثر بالشكل التالي: \"name : value\", مفصولة بفاصلة منقزطة.","cssLengthTooltip":"أدخل رقما للقيمة بالبكسل أو رقما بوحدة CSS مقبولة (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, غير متاح</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"حقوق النشر &copy; $1. جميع الحقوق محفوظة.","dlgTitle":"عن CKEditor","moreInfo":"للحصول على معلومات الترخيص ، يرجى زيارة موقعنا:"},"basicstyles":{"bold":"عريض","italic":"مائل","strike":"يتوسطه خط","subscript":"منخفض","superscript":"مرتفع","underline":"تسطير"},"bidi":{"ltr":"إتجاه النص من اليسار إلى اليمين","rtl":"إتجاه النص من اليمين إلى اليسار"},"blockquote":{"toolbar":"اقتباس"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"تقليص شريط الأدوت","toolbarExpand":"تمديد شريط الأدوات","toolbarGroups":{"document":"مستند","clipboard":"الحافظة/الرجوع","editing":"تحرير","forms":"نماذج","basicstyles":"نمط بسيط","paragraph":"فقرة","links":"روابط","insert":"إدراج","styles":"أنماط","colors":"ألوان","tools":"أدوات"},"toolbars":"أشرطة أ��وات المحرر"},"clipboard":{"copy":"نسخ","copyError":"الإعدادات الأمنية للمتصفح الذي تستخدمه تمنع عمليات النسخ التلقائي. فضلاً إستخدم لوحة المفاتيح لفعل ذلك (Ctrl/Cmd+C).","cut":"قص","cutError":"الإعدادات الأمنية للمتصفح الذي تستخدمه تمنع القص التلقائي. فضلاً إستخدم لوحة المفاتيح لفعل ذلك (Ctrl/Cmd+X).","paste":"لصق","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"منطقة اللصق","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"تلقائي","bgColorTitle":"لون الخلفية","colors":{"000":"أسود","800000":"كستنائي","8B4513":"بني فاتح","2F4F4F":"رمادي أردوازي غامق","008080":"أزرق مخضر","000080":"أزرق داكن","4B0082":"كحلي","696969":"رمادي داكن","B22222":"طوبي","A52A2A":"بني","DAA520":"ذهبي داكن","006400":"أخضر داكن","40E0D0":"فيروزي","0000CD":"أزرق متوسط","800080":"بنفسجي غامق","808080":"رمادي","F00":"أحمر","FF8C00":"برتقالي داكن","FFD700":"ذهبي","008000":"أخضر","0FF":"تركواز","00F":"أزرق","EE82EE":"بنفسجي","A9A9A9":"رمادي شاحب","FFA07A":"برتقالي وردي","FFA500":"برتقالي","FFFF00":"أصفر","00FF00":"ليموني","AFEEEE":"فيروزي شاحب","ADD8E6":"أزرق فاتح","DDA0DD":"بنفسجي فاتح","D3D3D3":"رمادي فاتح","FFF0F5":"وردي فاتح","FAEBD7":"أبيض عتيق","FFFFE0":"أصفر فاتح","F0FFF0":"أبيض مائل للأخضر","F0FFFF":"سماوي","F0F8FF":"لبني","E6E6FA":"أرجواني","FFF":"أبيض","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"ألوان إضافية...","panelTitle":"Colors","textColorTitle":"لون النص"},"colordialog":{"clear":"مسح","highlight":"تحديد","options":"اختيارات الألوان","selected":"اللون المختار","title":"اختر اللون"},"templates":{"button":"القوالب","emptyListMsg":"(لم يتم تعريف أي قالب)","insertOption":"استبدال المحتوى","options":"خصائص القوالب","selectPromptMsg":"اختر القالب الذي تود وضعه في المحرر","title":"قوالب المحتوى"},"contextmenu":{"options":"خصائص قائمة السياق"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"هوية","advisoryTitleInputLabel":"عنوان التقرير","cssClassInputLabel":"فئات التنسيق","edit":"تحرير Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"اليسار لليمين (LTR)","langDirLabel":"إتجاه النص","langDirRTLLabel":"اليمين لليسار (RTL)","languageCodeInputLabel":"رمز اللغة","remove":"إزالة Div","styleSelectLabel":"نمط","title":"إحداث Div Container","toolbar":"إحداث Div Container"},"elementspath":{"eleLabel":"مسار العنصر","eleTitle":"عنصر 1%"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"بحث","findOptions":"Find Options","findWhat":"البحث بـ:","matchCase":"مطابقة حالة الأحرف","matchCyclic":"مطابقة دورية","matchWord":"مطابقة بالكامل","notFoundMsg":"لم يتم العثور على النص المحدد.","replace":"إستبدال","replaceAll":"إستبدال الكل","replaceSuccessMsg":"تم استبدال 1% من الحالات ","replaceWith":"إستبدال بـ:","title":"بحث واستبدال"},"fakeobjects":{"anchor":"إرساء","flash":"رسم متحرك بالفلاش","hiddenfield":"إدراج حقل خفي","iframe":"iframe","unknown":"عنصر غير معروف"},"flash":{"access":"دخول النص البرمجي","accessAlways":"دائماً","accessNever":"مطلقاً","accessSameDomain":"نفس النطاق","alignAbsBottom":"أسفل النص","alignAbsMiddle":"وسط السطر","alignBaseline":"على السطر","alignTextTop":"أعلى النص","bgcolor":"لون الخلفية","chkFull":"ملء الشاشة","chkLoop":"تكرار","chkMenu":"تمكين قائمة فيلم الفلاش","chkPlay":"تشغيل تلقائي","flashvars":"متغيرات الفلاش","hSpace":"تباعد أفقي","properties":"خصائص الفلاش","propertiesTab":"الخصائص","quality":"جودة","qualityAutoHigh":"عالية تلقائياً","qualityAutoLow":"منخفضة تلقائياً","qualityBest":"أفضل","qualityHigh":"عالية","qualityLow":"منخفضة","qualityMedium":"متوسطة","scale":"الحجم","scaleAll":"إظهار الكل","scaleFit":"ضبط تام","scaleNoBorder":"بلا حدود","title":"خصائص فيلم الفلاش","vSpace":"تباعد عمودي","validateHSpace":"HSpace يجب أن يكون عدداً.","validateSrc":"فضلاً أدخل عنوان الموقع الذي يشير إليه الرابط","validateVSpace":"VSpace يجب أن يكون عدداً.","windowMode":"وضع النافذة","windowModeOpaque":"غير شفاف","windowModeTransparent":"شفاف","windowModeWindow":"نافذة"},"font":{"fontSize":{"label":"حجم الخط","voiceLabel":"حجم الخط","panelTitle":"حجم الخط"},"label":"خط","panelTitle":"حجم الخط","voiceLabel":"حجم الخط"},"forms":{"button":{"title":"خصائص زر الضغط","text":"القيمة/التسمية","type":"نوع الزر","typeBtn":"زر","typeSbm":"إرسال","typeRst":"إعادة تعيين"},"checkboxAndRadio":{"checkboxTitle":"خصائص خانة الإختيار","radioTitle":"خصائص زر الخيار","value":"القيمة","selected":"محدد","required":"Required"},"form":{"title":"خصائص النموذج","menu":"خصائص النموذج","action":"اسم الملف","method":"الأسلوب","encoding":"تشفير"},"hidden":{"title":"خصائص الحقل المخفي","name":"الاسم","value":"القيمة"},"select":{"title":"خصائص اختيار الحقل","selectInfo":"اختار معلومات","opAvail":"الخيارات المتاحة","value":"القيمة","size":"الحجم","lines":"الأسطر","chkMulti":"السماح بتحديدات متعددة","required":"Required","opText":"النص","opValue":"القيمة","btnAdd":"إضافة","btnModify":"تعديل","btnUp":"أعلى","btnDown":"أسفل","btnSetValue":"إجعلها محددة","btnDelete":"إزالة"},"textarea":{"title":"خصائص مساحة النص","cols":"الأعمدة","rows":"الصفوف"},"textfield":{"title":"خصائص مربع النص","name":"الاسم","value":"القيمة","charWidth":"عرض السمات","maxChars":"اقصى عدد للسمات","required":"Required","type":"نوع المحتوى","typeText":"نص","typePass":"كلمة مرور","typeEmail":"بريد إلكتروني","typeSearch":"بحث","typeTel":"رقم الهاتف","typeUrl":"الرابط"}},"format":{"label":"تنسيق","panelTitle":"تنسيق الفقرة","tag_address":"عنوان","tag_div":"عادي (DIV)","tag_h1":"العنوان 1","tag_h2":"العنوان 2","tag_h3":"العنوان 3","tag_h4":"العنوان 4","tag_h5":"العنوان 5","tag_h6":"العنوان 6","tag_p":"عادي","tag_pre":"منسّق"},"horizontalrule":{"toolbar":"خط فاصل"},"iframe":{"border":"إظهار حدود الإطار","noUrl":"فضلا أكتب رابط الـ iframe","scrolling":"تفعيل أشرطة الإنتقال","title":"خصائص iframe","toolbar":"iframe"},"image":{"alt":"عنوان الصورة","border":"سمك الحدود","btnUpload":"أرسلها للخادم","button2Img":"هل تريد تحويل زر الصورة المختار إلى صورة بسيطة؟","hSpace":"تباعد أفقي","img2Button":"هل تريد تحويل الصورة المختارة إلى زر صورة؟","infoTab":"معلومات الصورة","linkTab":"الرابط","lockRatio":"تناسق الحجم","menu":"خصائص الصورة","resetSize":"إستعادة الحجم الأصلي","title":"خصائص الصورة","titleButton":"خصائص زر الصورة","upload":"رفع","urlMissing":"عنوان مصدر الصورة مفقود","vSpace":"تباعد عمودي","validateBorder":"الإطار يجب أن يكون عددا","validateHSpace":"HSpace يجب أن يكون عدداً.","validateVSpace":"VSpace يجب أن يكون عدداً."},"indent":{"indent":"زيادة المسافة البادئة","outdent":"إنقاص المسافة البادئة"},"smiley":{"options":"خصائص الإبتسامات","title":"إدراج ابتسامات","toolbar":"ابتسامات"},"language":{"button":"حدد اللغة","remove":"حذف اللغة"},"link":{"acccessKey":"مفاتيح الإختصار","advanced":"متقدم","advisoryContentType":"نوع التقرير","advisoryTitle":"عنوان التقرير","anchor":{"toolbar":"إشارة مرجعية","menu":"تحرير الإشارة المرجعية","title":"خصائص الإشارة المرجعية","name":"اسم الإشارة المرجعية","errorName":"الرجاء كتابة اسم الإشارة المرجعية","remove":"إزالة الإشارة المرجعية"},"anchorId":"حسب رقم العنصر","anchorName":"حسب إسم الإشارة المرجعية","charset":"ترميز المادة المطلوبة","cssClasses":"فئات التنسيق","download":"فرض التحميل","displayText":"نص العرض","emailAddress":"البريد الإلكتروني","emailBody":"محتوى الرسالة","emailSubject":"موضوع الرسالة","id":"هوية","info":"معلومات الرابط","langCode":"رمز اللغة","langDir":"إتجاه نص اللغة","langDirLTR":"اليسار لليمين (LTR)","langDirRTL":"اليمين لليسار (RTL)","menu":"تحرير الرابط","name":"إسم","noAnchors":"(لا توجد علامات مرجعية في هذا المستند)","noEmail":"الرجاء كتابة الريد الإلكتروني","noUrl":"الرجاء كتابة رابط الموقع","noTel":"Please type the phone number","other":"<أخرى>","phoneNumber":"Phone number","popupDependent":"تابع (Netscape)","popupFeatures":"خصائص النافذة المنبثقة","popupFullScreen":"ملئ الشاشة (IE)","popupLeft":"التمركز لليسار","popupLocationBar":"شريط العنوان","popupMenuBar":"القوائم الرئيسية","popupResizable":"قابلة التشكيل","popupScrollBars":"أشرطة التمرير","popupStatusBar":"شريط الحالة","popupToolbar":"شريط الأدوات","popupTop":"التمركز للأعلى","rel":"العلاقة","selectAnchor":"اختر علامة مرجعية","styles":"نمط","tabIndex":"الترتيب","target":"هدف الرابط","targetFrame":"<إطار>","targetFrameName":"اسم الإطار المستهدف","targetPopup":"<نافذة منبثقة>","targetPopupName":"اسم النافذة المنبثقة","title":"رابط","toAnchor":"مكان في هذا المستند","toEmail":"بريد إلكتروني","toUrl":"الرابط","toPhone":"Phone","toolbar":"رابط","type":"نوع الربط","unlink":"إزالة رابط","upload":"رفع"},"list":{"bulletedlist":"ادخال/حذف تعداد نقطي","numberedlist":"ادخال/حذف تعداد رقمي"},"liststyle":{"bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"إدراج فقرة هنا"},"maximize":{"maximize":"تكبير","minimize":"تصغير"},"newpage":{"toolbar":"صفحة جديدة"},"pagebreak":{"alt":"فاصل الصفحة","toolbar":"إدخال صفحة جديدة"},"pastetext":{"button":"لصق كنص بسيط","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"لصق كنص بسيط"},"pastefromword":{"confirmCleanup":"يبدو أن النص المراد لصقه منسوخ من برنامج وورد. هل تود تنظيفه قبل الشروع في عملية اللصق؟","error":"لم يتم مسح المعلومات الملصقة لخلل داخلي","title":"لصق من وورد","toolbar":"لصق من وورد"},"preview":{"preview":"معاينة الصفحة"},"print":{"toolbar":"طباعة"},"removeformat":{"toolbar":"إزالة التنسيقات"},"save":{"toolbar":"حفظ"},"selectall":{"toolbar":"تحديد الكل"},"showblocks":{"toolbar":"مخطط تفصيلي"},"sourcearea":{"toolbar":"المصدر"},"specialchar":{"options":"خيارات الأحرف الخاصة","title":"اختر حرف خاص","toolbar":"إدراج حرف خاص"},"scayt":{"btn_about":"عن SCAYT","btn_dictionaries":"قواميس","btn_disable":"تعطيل SCAYT","btn_enable":"تفعيل SCAYT","btn_langs":"لغات","btn_options":"خيارات","text_title":"تدقيق إملائي أثناء الكتابة"},"stylescombo":{"label":"أنماط","panelTitle":"أنماط التنسيق","panelTitle1":"أنماط الفقرة","panelTitle2":"أنماط مضمنة","panelTitle3":"أنماط الكائن"},"table":{"border":"الحدود","caption":"الوصف","cell":{"menu":"خلية","insertBefore":"إدراج خلية قبل","insertAfter":"إدراج خلية بعد","deleteCell":"حذف خلية","merge":"دمج خلايا","mergeRight":"دمج لليمين","mergeDown":"دمج للأسفل","splitHorizontal":"تقسيم الخلية أفقياً","splitVertical":"تقسيم الخلية عمودياً","title":"خصائص الخلية","cellType":"نوع الخلية","rowSpan":"امتداد الصفوف","colSpan":"امتداد الأعمدة","wordWrap":"التفاف النص","hAlign":"محاذاة أفقية","vAlign":"محاذاة رأسية","alignBaseline":"خط القاعدة","bgColor":"لون الخلفية","borderColor":"لون الحدود","data":"بيانات","header":"عنوان","yes":"نعم","no":"لا","invalidWidth":"عرض الخلية يجب أن يكون عدداً.","invalidHeight":"ارتفاع الخلية يجب أن يكون عدداً.","invalidRowSpan":"امتداد الصفوف يجب أن يكون عدداً صحيحاً.","invalidColSpan":"امتداد الأعمدة يجب أن يكون عدداً صحيحاً.","chooseColor":"اختر"},"cellPad":"المسافة البادئة","cellSpace":"تباعد الخلايا","column":{"menu":"عمود","insertBefore":"إدراج عمود قبل","insertAfter":"إدراج عمود بعد","deleteColumn":"حذف أعمدة"},"columns":"أعمدة","deleteTable":"حذف الجدول","headers":"العناوين","headersBoth":"كلاهما","headersColumn":"العمود الأول","headersNone":"بدون","headersRow":"الصف الأول","invalidBorder":"حجم الحد يجب أن يكون عدداً.","invalidCellPadding":"المسافة البادئة يجب أن تكون عدداً","invalidCellSpacing":"المسافة بين الخلايا يجب أن تكون عدداً.","invalidCols":"عدد الأعمدة يجب أن يكون عدداً أكبر من صفر.","invalidHeight":"ارتفاع الجدول يجب أن يكون عدداً.","invalidRows":"عدد الصفوف يجب أن يكون عدداً أكبر من صفر.","invalidWidth":"عرض الجدول يجب أن يكون عدداً.","menu":"خصائص الجدول","row":{"menu":"صف","insertBefore":"إدراج صف قبل","insertAfter":"إدراج صف بعد","deleteRow":"حذف صفوف"},"rows":"صفوف","summary":"الخلاصة","title":"خصائص الجدول","toolbar":"جدول","widthPc":"بالمئة","widthPx":"بكسل","widthUnit":"وحدة العرض"},"undo":{"redo":"إعادة","undo":"تراجع"},"widget":{"move":"إضغط و إسحب للتحريك","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"تجاهل","btnIgnoreAll":"تجاهل الكل","btnReplace":"تغيير","btnReplaceAll":"تغيير الكل","btnUndo":"تراجع","changeTo":"التغيير إلى","errorLoading":"خطأ في تحميل تطبيق خدمة الاستضافة: %s.","ieSpellDownload":"المدقق الإملائي (الإنجليزي) غير مثبّت. هل تود تحميله الآن؟","manyChanges":"تم إكمال التدقيق الإملائي: تم تغيير %1 من كلمات","noChanges":"تم التدقيق الإملائي: لم يتم تغيير أي كلمة","noMispell":"تم التدقيق الإملائي: لم يتم العثور على أي أخطاء إملائية","noSuggestions":"- لا توجد إقتراحات -","notAvailable":"عفواً، ولكن هذه الخدمة غير متاحة الان","notInDic":"ليست في القاموس","oneChange":"تم التدقيق الإملائي: تم تغيير كلمة واحدة فقط","progress":"جاري التدقيق الاملائى","title":"التدقيق الإملائي","toolbar":"تدقيق إملائي"}};
bt-source/panel/BTPanel/static/ckeditor/lang/az.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['az']={"editor":"Mətn Redaktoru","editorPanel":"Mətn Redaktorun Paneli","common":{"editorHelp":"Yardım üçün ALT 0 düymələrini basın","browseServer":"Fayların siyahı","url":"URL","protocol":"Protokol","upload":"Serverə yüklə","uploadSubmit":"Göndər","image":"Şəkil","flash":"Flash","form":"Forma","checkbox":"Çekboks","radio":"Radio düyməsi","textField":"Mətn xanası","textarea":"Mətn","hiddenField":"Gizli xana","button":"Düymə","select":"Opsiyaların seçilməsi","imageButton":"Şəkil tipli düymə","notSet":"<seçilməmiş>","id":"Id","name":"Ad","langDir":"Yaziların istiqaməti","langDirLtr":"Soldan sağa (LTR)","langDirRtl":"Sağdan sola (RTL)","langCode":"Dilin kodu","longDescr":"URL-ın ətraflı izahı","cssClass":"CSS klassları","advisoryTitle":"Başlıq","cssStyle":"CSS","ok":"Tədbiq et","cancel":"İmtina et","close":"Bağla","preview":"Baxış","resize":"Eni dəyiş","generalTab":"Əsas","advancedTab":"Əlavə","validateNumberFailed":"Rəqəm deyil.","confirmNewPage":"Yadda saxlanılmamış dəyişikliklər itiriləcək. Davam etmək istədiyinizə əminsinizmi?","confirmCancel":"Dəyişikliklər edilib. Pəncərəni bağlamaq istəyirsizə əminsinizmi?","options":"Seçimlər","target":"Hədəf çərçivə","targetNew":"Yeni pəncərə (_blank)","targetTop":"Əsas pəncərə (_top)","targetSelf":"Carı pəncərə (_self)","targetParent":"Ana pəncərə (_parent)","langDirLTR":"Soldan sağa (LTR)","langDirRTL":"Sağdan sola (RTL)","styles":"Üslub","cssClasses":"Üslub klası","width":"En","height":"Uzunluq","align":"Yerləşmə","left":"Sol","right":"Sağ","center":"Mərkəz","justify":"Eninə görə","alignLeft":"Soldan düzləndir","alignRight":"Sağdan düzləndir","alignCenter":"Align Center","alignTop":"Yuxarı","alignMiddle":"Orta","alignBottom":"Aşağı","alignNone":"Yoxdur","invalidValue":"Yanlışdır.","invalidHeight":"Hündürlük rəqəm olmalıdır.","invalidWidth":"En rəqəm olmalıdır.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"\"%1\" xanasında göstərilən məzmun tam və müsbət olmalıdır, CSS-də olan ölçü vahidlərin (px, %, in, cm, mm, em, ex, pt, or pc) istifadısinə icazə verilir.","invalidHtmlLength":"\"%1\" xanasında göstərilən məzmun tam və müsbət olmalıdır HTML-də olan ölçü vahidlərin (px və ya %) istifadısinə icazə verilir.","invalidInlineStyle":"Teq içində olan üslub \"ad : məzmun\" şəklidə, nöqtə-verqül işarəsi ilə bitməlidir","cssLengthTooltip":"Piksel sayı və ya digər CSS ölçü vahidləri (px, %, in, cm, mm, em, ex, pt, or pc) daxil edin.","unavailable":"%1<span class=\"cke_accessibility\">, mövcud deyil</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Boşluq","35":"Son","36":"Evə","46":"Sil","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Əmr"},"keyboardShortcut":"Qısayol düymələri","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. Bütün hüquqlar qorunur.","dlgTitle":"CKEditor haqqında","moreInfo":"Lisenziya informasiyası üçün zəhmət olmasa saytımızı ziyarət edin:"},"basicstyles":{"bold":"Qalın","italic":"Kursiv","strike":"Üstüxətli","subscript":"Aşağı indeks","superscript":"Yuxarı indeks","underline":"Altdan xətt"},"bidi":{"ltr":"Mətnin istiqaməti - soldan sağa","rtl":"Mətnin istiqaməti - sağdan sola"},"blockquote":{"toolbar":"Sitat bloku"},"notification":{"closed":"Xəbərdarlıq pəncərəsi bağlanıb"},"toolbar":{"toolbarCollapse":"Paneli gizlət","toolbarExpand":"Paneli göstər","toolbarGroups":{"document":"Mətn","clipboard":"Mübadilə buferi/İmtina et","editing":"Redaktə edilməsi","forms":"Formalar","basicstyles":"Əsas üslublar","paragraph":"Abzas","links":"Link","insert":"Əlavə et","styles":"Üslublar","colors":"Rənqlər","tools":"Alətləri"},"toolbars":"Redaktorun panelləri"},"clipboard":{"copy":"Köçür","copyError":"Avtomatik köçürülməsi mümkün deyil. Ctrl+C basın.","cut":"Kəs","cutError":"Avtomatik kəsmə mümkün deyil. Ctrl+X basın.","paste":"Əlavə et","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Paste Area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Avtomatik","bgColorTitle":"Doldurma rəngi","colors":{"000":"Qara","800000":"Şabalıdı","8B4513":"Açıq şabalı","2F4F4F":"Açıq boz","008080":"Firuzəyi göy","000080":"Tünd göy","4B0082":"İndigo","696969":"Tünd boz","B22222":"Kərpiç","A52A2A":"Şabalıdı","DAA520":"Qızıl ağcaqayın","006400":"Tünd yaşıl","40E0D0":"Firuzəyi","0000CD":"Göy","800080":"Bənövşəyi","808080":"Boz","F00":"Qırmızı","FF8C00":"Tünd narıncı","FFD700":"Qızılı","008000":"Yaşıl","0FF":"Mavi","00F":"Göy","EE82EE":"Açıq bənövşəyi","A9A9A9":"Asfalt rəngi","FFA07A":"Qızılbalıq","FFA500":"Narıncı","FFFF00":"Sarı","00FF00":"Laym","AFEEEE":"Acıq firuzəyi","ADD8E6":"Acıq göy","DDA0DD":"Gavalı","D3D3D3":"Acıq boz","FFF0F5":"Yasəmən","FAEBD7":"Kağız","FFFFE0":"Acıq sarı","F0FFF0":"Yemişi","F0FFFF":"Gömgöy","F0F8FF":"Solğun göy","E6E6FA":"Lavanda","FFF":"Ağ","1ABC9C":"Güclü mavi","2ECC71":"Zümrüd","3498DB":"Parlaq göy","9B59B6":"Ametist","4E5F70":"Bozlu göy","F1C40F":"Sapsarı","16A085":"Tünd mavi","27AE60":"Tünd zümrüd","2980B9":"Güclü göy","8E44AD":"Tünd bənövşəyi","2C3E50":"Rəngsiz göy","F39C12":"Narıncı","E67E22":"Yerkökülü","E74C3C":"Solğun qırmızı","ECF0F1":"Parlaq gümüşü","95A5A6":"Acıq bozlu mavi","DDD":"Acıq boz","D35400":"Balqabaqlı","C0392B":"Güclü qırmızı","BDC3C7":"Gümüşü","7F8C8D":"Bozlu mavi","999":"Tünd boz"},"more":"Digər rənglər...","panelTitle":"Rənglər","textColorTitle":"Mətnin rəngi"},"colordialog":{"clear":"Təmizlə","highlight":"Ayırmaq","options":"Rəng seçimləri","selected":"Seçilmiş rəng","title":"Rəngi seç"},"templates":{"button":"Şablon","emptyListMsg":"(Heç bir şablon təyin edilməyib)","insertOption":"Həqiqi içindəkiləri əvəz et","options":"Şablonun seçimləri","selectPromptMsg":"Redaktor ilə açmaq üçün şablonu seçin","title":"İçindəkinin şablonu"},"contextmenu":{"options":"Əlavə əməliyyatlar"},"copyformatting":{"label":"Formatı köçür","notification":{"copied":"Format köçürülüb","applied":"Format tədbiq edilib","canceled":"Format imtina edilib","failed":"Format etmək mümkün deyil. Siz üslubları köçürmədən onları tədbiq edə bilməzsiniz."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Məsləhətli başlıq","cssClassInputLabel":"Üslub klassları","edit":"DİV eıementini redaktə et","inlineStyleInputLabel":"Sözlərin üslubları","langDirLTRLabel":"Soldan sağa (LTR)","langDirLabel":"Yaziların istiqaməti","langDirRTLLabel":"Sağdan sola (RTL)","languageCodeInputLabel":"Dilin kodu","remove":"DİV elementini sil","styleSelectLabel":"Üslub","title":"DİV ilə əhatələməni yarat","toolbar":"DİV ilə əhatələməni yarat"},"elementspath":{"eleLabel":"Elementin izləri","eleTitle":"%1 element"},"filetools":{"loadError":"Faylını oxumaq mümkün deyil","networkError":"Xəta baş verdi.","httpError404":"Serverə göndərilməsinin zamanı xəta baş verdi (404 - fayl tapılmayıb)","httpError403":"Serverə göndərilməsinin zamanı xəta baş verdi (403 - gadağandır)","httpError":"Serverə göndərilməsinin zamanı xəta baş verdi (xətanın ststusu: %1)","noUrlError":"Yükləmə linki təyin edilməyib","responseError":"Serverin cavabı yanlışdır"},"find":{"find":"Tap","findOptions":"Axtarışın seçimləri","findWhat":"Nəyi axtarmaq","matchCase":"Reqistr nəzərə alınmaqla","matchCyclic":"Dövrəvi axtar","matchWord":"Tam sözünə uyğun","notFoundMsg":"Daxil etdiyiniz sorğu ilə heç bir nəticə tapılmayıb","replace":"Əvəz et","replaceAll":"Hamısını əvəz et","replaceSuccessMsg":"%1 daxiletmə(lər) əvəz edilib","replaceWith":"Əvəz etdirici mətn:","title":"Tap və əvəz et"},"fakeobjects":{"anchor":"Lövbər","flash":"Flash animasiya","hiddenfield":"Gizli xana","iframe":"IFrame","unknown":"Tanımamış obyekt"},"flash":{"access":"Skript tərəfindən müraciətlərin icazəsi","accessAlways":"Həmişə","accessNever":"Heç vaxt","accessSameDomain":"Eyni domen adından","alignAbsBottom":"Aşağıda","alignAbsMiddle":"Ortada","alignBaseline":"Əsas xətt","alignTextTop":"Mətnin yuxarıda","bgcolor":"Doldurma rəngi","chkFull":"Tam pəncərəyə aça bilər","chkLoop":"Dövrələmə","chkMenu":"Flash menyunu göstər","chkPlay":"Birbaşa oynat","flashvars":"Flash üçün dəyişənlər","hSpace":"Üfüqi boşluq","properties":"Flash xüsusiyyətləri","propertiesTab":"Xüsusiyyətlər","quality":"Keyfiyyət","qualityAutoHigh":"Avtomatik yüksək","qualityAutoLow":"Avtomatik aşağı","qualityBest":"Mükəmməl","qualityHigh":"Yüksək","qualityLow":"Aşağı","qualityMedium":"Orta","scale":"Dəyişkən","scaleAll":"Hamısını göstər","scaleFit":"Həqiqi ölçülər","scaleNoBorder":"Sərhədsiz","title":"Flash xüsusiyyətləri","vSpace":"Şaquli boşluq","validateHSpace":"Üfüqi boşluq rəqəm olmalıdır.","validateSrc":"Link boş ola bilməz","validateVSpace":"Şaquli boşluq rəqəm olmalıdır.","windowMode":"Pəncərənin rejimi","windowModeOpaque":"Görünən","windowModeTransparent":"Şəffaf","windowModeWindow":"Pəncərə"},"font":{"fontSize":{"label":"Şrift ölçüsü","voiceLabel":"Şrift ölçüsü","panelTitle":"Şrift ölçüsü"},"label":"Şrift","panelTitle":"Şrift","voiceLabel":"Şrift"},"forms":{"button":{"title":"Düymənin xüsusiyyətləri","text":"Mətn (kəmiyyət)","type":"Növ","typeBtn":"Düymə","typeSbm":"Təsdiq et","typeRst":"Dəyişiklikləri imtina et"},"checkboxAndRadio":{"checkboxTitle":"Qutucuqun xüsusiyyətləri","radioTitle":"Radio düyməsinin xüsusiyyətləri","value":"Kəmiyyət","selected":"Seçilmiş","required":"Tələb olunur"},"form":{"title":"Formanın xüsusiyyətləri","menu":"Formanın xüsusiyyətləri","action":"Emal edən ünvan","method":"Göndərilmə üsulu","encoding":"Kodlaşdırma"},"hidden":{"title":"Gizli xanasının xüsusiyyətləri","name":"Ad","value":"Kəmiyyət"},"select":{"title":"SELECT elementinin xüsusiyyətləri","selectInfo":"SELECT elementinin haqqında məlumat","opAvail":"Mövcud olan seçimləri","value":"Kəmiyyət","size":"Ölçülər","lines":"xəttlər","chkMulti":"Çox kəmiyyətli xana","required":"Tələb olunur","opText":"Mətn","opValue":"Kəmiyyət","btnAdd":"Əıavə et","btnModify":"Redaktə et","btnUp":"Yuxarı","btnDown":"Aşağı","btnSetValue":"Susmaya görə kəmiyyəti kimi seç","btnDelete":"Sil"},"textarea":{"title":"Mətn xanasının xüsusiyyətləri","cols":"Sütunlar","rows":"Sətirlər"},"textfield":{"title":"Mətn xanasının xüsusiyyətləri","name":"Ad","value":"Kəmiyyət","charWidth":"İşarənin eni","maxChars":"İşarələrin hüdudu","required":"Tələb olunur","type":"Növ","typeText":"Mətn","typePass":"Şifrə","typeEmail":"E-poçt","typeSearch":"Axtarış","typeTel":"Telefon nömrəsi","typeUrl":"Link"}},"format":{"label":"Format","panelTitle":"Abzasın formatı","tag_address":"Ünvan","tag_div":"Normal (DIV)","tag_h1":"Başlıq 1","tag_h2":"Başlıq 2","tag_h3":"Başlıq 3","tag_h4":"Başlıq 4","tag_h5":"Başlıq 5","tag_h6":"Başlıq 6","tag_p":"Normal","tag_pre":"Formatı saxla"},"horizontalrule":{"toolbar":"Sərhəd xətti yarat"},"iframe":{"border":"Çərçivə sərhədlərini göstər","noUrl":"Çərçivənin ünvanı daxil edin","scrolling":"Şürüşdürmələri əlavə et","title":"İFRAME elementinin alətləri","toolbar":"İFRAME"},"image":{"alt":"Alternativ mətn","border":"Sərhəd","btnUpload":"Serverə yüklə","button2Img":"Şəkil tipli düyməni şəklə çevirmək istədiyinizə əminsinizmi?","hSpace":"Üfüqi boşluq","img2Button":"Şəkli şəkil tipli düyməyə çevirmək istədiyinizə əminsinizmi?","infoTab":"Şəkil haqqında məlumat","linkTab":"Link","lockRatio":"Ölçülərin uyğunluğu saxla","menu":"Şəklin seçimləri","resetSize":"Ölçüləri qaytar","title":"Şəklin seçimləri","titleButton":"Şəkil tipli düyməsinin seçimləri","upload":"Serverə yüklə","urlMissing":"Şəklin ünvanı yanlışdır.","vSpace":"Şaquli boşluq","validateBorder":"Sərhədin eni rəqəm olmalıdır.","validateHSpace":"Üfüqi boşluq rəqəm olmalıdır.","validateVSpace":"Şaquli boşluq rəqəm olmalıdır."},"indent":{"indent":"Sol boşluqu artır","outdent":"Sol boşluqu azalt"},"smiley":{"options":"Smayli-nin seçimləri","title":"Smayli-ni daxil et","toolbar":"Smayli"},"language":{"button":"Dilini təyin et","remove":"Dilini sil"},"link":{"acccessKey":"Qısayol düyməsi","advanced":"Geniş seçimləri","advisoryContentType":"Məsləhətli məzmunun növü","advisoryTitle":"Məsləhətli başlıq","anchor":{"toolbar":"Xeş","menu":"Xeşi redaktə et","title":"Xeşin seçimləri","name":"Xeşin adı","errorName":"Xeşin adı yanlışdır","remove":"Xeşin adı sil"},"anchorId":"ID görə","anchorName":"Xeşin adına görə","charset":"Hədəfin kodlaşdırması","cssClasses":"Üslub klası","download":"Məcburi yükləmə","displayText":"Göstərilən mətn","emailAddress":"E-poçt ünvanı","emailBody":"Mesajın məzmunu","emailSubject":"Mesajın başlığı","id":"ID","info":"Linkin xüsusiyyətləri","langCode":"Dilin kodu","langDir":"Yaziların istiqaməti","langDirLTR":"Soldan sağa (LTR)","langDirRTL":"Sağdan sola (RTL)","menu":"Linki redaktə et","name":"Ad","noAnchors":"(heç bir xeş tapılmayıb)","noEmail":"E-poçt ünvanı daxil edin","noUrl":"Linkin URL-ı daxil edin","noTel":"Please type the phone number","other":"<digər>","phoneNumber":"Phone number","popupDependent":"Asılı (Netscape)","popupFeatures":"Pəncərənin xüsusiyyətləri","popupFullScreen":"Tam ekran rejimi (IE)","popupLeft":"Solda","popupLocationBar":"Ünvan paneli","popupMenuBar":"Menyu paneli","popupResizable":"Olçülər dəyişilir","popupScrollBars":"Sürüşdürmələr göstər","popupStatusBar":"Bildirişlərin paneli","popupToolbar":"Alətlərin paneli","popupTop":"Yuxarıda","rel":"Münasibət","selectAnchor":"Xeşi seçin","styles":"Üslub","tabIndex":"Tabın nömrəsi","target":"Hədəf çərçivə","targetFrame":"<freym>","targetFrameName":"Freymin adı","targetPopup":"<yeni pəncərə>","targetPopupName":"Pəncərənin adı","title":"Link","toAnchor":"Xeş","toEmail":"E-poçt","toUrl":"URL","toPhone":"Phone","toolbar":"Link","type":"Linkin növü","unlink":"Linki sil","upload":"Serverə yüklə"},"list":{"bulletedlist":"Markerlənmiş siyahını başlat/sil","numberedlist":"Nömrələnmiş siyahını başlat/sil"},"liststyle":{"bulletedTitle":"Markerl��nmiş siyahının xüsusiyyətləri","circle":"Dəirəcik","decimal":"Rəqəm (1, 2, 3 və s.)","disc":"Disk","lowerAlpha":"Kiçik hərflər (a, b, c, d, e və s.)","lowerRoman":"Rum rəqəmləri (i, ii, iii, iv, v və s.)","none":"Yoxdur","notset":"<seçilməmiş>","numberedTitle":"Nömrəli siyahının xüsusiyyətləri","square":"Dördbucaq","start":"Başlanğıc","type":"Növ","upperAlpha":"Böyük hərflər (a, b, c, d, e və s.)","upperRoman":"Böyük Rum rəqəmləri (I, II, III, IV, V və s.)","validateStartNumber":"Siyahının başlanğıc nömrəsi tam və müsbət rəqəm olmalıdır."},"magicline":{"title":"Abzası burada əlavə et"},"maximize":{"maximize":"Aşkarla","minimize":"Gizlət"},"newpage":{"toolbar":"Yeni səhifə"},"pagebreak":{"alt":"Vərəq ayırıcı nişanı","toolbar":"Vərəqin çapı üçün ayırıcı nişanı qoy"},"pastetext":{"button":"Yalnız mətni saxla","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"Əlavə edilən mətn Word-dan köçürülənə oxşayır. Təmizləmək istəyirsinizmi?","error":"Daxili səhvə görə əlavə edilən məlumatların təmizlənməsi mümkün deyil","title":"Word-dan əlavəetmə","toolbar":"Word-dan əlavəetmə"},"preview":{"preview":"Öncədən baxılması"},"print":{"toolbar":"Çap et"},"removeformat":{"toolbar":"Formatı sil"},"save":{"toolbar":"Yadda saxla"},"selectall":{"toolbar":"Hamısını seç"},"showblocks":{"toolbar":"Blokları göstər"},"sourcearea":{"toolbar":"HTML mənbəyini göstər"},"specialchar":{"options":"Xüsusi simvolların seçimləri","title":"Xüsusi simvolu seç","toolbar":"Xüsusi simvolu daxil et"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Üslub","panelTitle":"Format üslubları","panelTitle1":"Blokların üslubları","panelTitle2":"Sözlərin üslubları","panelTitle3":"Obyektlərin üslubları"},"table":{"border":"Sərhədlərin eni","caption":"Cədvəlin başlığı","cell":{"menu":"Xana","insertBefore":"Burdan əvvələ xanası çək","insertAfter":"Burdan sonra xanası çək","deleteCell":"Xanaları sil","merge":"Xanaları birləşdir","mergeRight":"Sağdan birləşdir","mergeDown":"Soldan birləşdir","splitHorizontal":"Üfüqi böl","splitVertical":"Şaquli böl","title":"Xanaların seçimləri","cellType":"Xana növü","rowSpan":"Sətirləri birləşdir","colSpan":"Sütunları birləşdir","wordWrap":"Sətirlərin sınması","hAlign":"Üfüqi düzləndirmə","vAlign":"Şaquli düzləndirmə","alignBaseline":"Mətn xətti","bgColor":"Doldurma rəngi","borderColor":"Sərhədin rəngi","data":"Məlumatlar","header":"Başlıq","yes":"Bəli","no":"Xeyr","invalidWidth":"Xanasın eni rəqəm olmalıdır.","invalidHeight":"Xanasın hündürlüyü rəqəm olmalıdır.","invalidRowSpan":"Birləşdirdiyiniz sütun xanaların sayı tam və müsbət rəqəm olmalıdır.","invalidColSpan":"Birləşdirdiyiniz sətir xanaların sayı tam və müsbət rəqəm olmalıdır.","chooseColor":"Seç"},"cellPad":"Xanalardakı kənar boşluqlar","cellSpace":"Xanalararası interval","column":{"menu":"Sütun","insertBefore":"Sola sütun əlavə et","insertAfter":"Sağa sütun əlavə et","deleteColumn":"Sütunları sil"},"columns":"Sütunlar","deleteTable":"Cədvəli sil","headers":"Başlıqlar","headersBoth":"Hər ikisi","headersColumn":"Birinci sütun","headersNone":"yox","headersRow":"Birinci sətir","invalidBorder":"Sərhədlərin eni müsbət rəqəm olmalıdır.","invalidCellPadding":"Xanalardakı kənar boşluqlar müsbət rəqəm olmalıdır.","invalidCellSpacing":"Xanalararası interval müsbət rəqəm olmalıdır.","invalidCols":"Sütunlarin sayı tam və müsbət olmalıdır.","invalidHeight":"Cədvəlin hündürlüyü rəqəm olmalıdır.","invalidRows":"Sətirlətin sayı tam və müsbət olmalıdır.","invalidWidth":"Cədvəlin eni rəqəm olmalıdır.","menu":"Cədvəl alətləri","row":{"menu":"Sətir","insertBefore":"Yuxarıya sətir əlavə et","insertAfter":"Aşağıya sətir əlavə et","deleteRow":"Sətirləri sil"},"rows":"Sətirlər","summary":"Xülasə","title":"Cədvəl alətləri","toolbar":"Cədvəl","widthPc":"faiz","widthPx":"piksel","widthUnit":"en vahidi"},"undo":{"redo":"Təkrar et","undo":"İmtina et"},"widget":{"move":"Tıklayın və aparın","label":"%1 vidjet"},"uploadwidget":{"abort":"Serverə yükləmə istifadəçi tərəfindən dayandırılıb","doneOne":"Fayl müvəffəqiyyətlə yüklənib","doneMany":"%1 fayllar müvəffəqiyyətlə yüklənib","uploadOne":"Faylın yüklənməsi ({percentage}%)","uploadMany":"Faylların yüklənməsi, {max}-dan {current} hazır ({percentage}%)..."},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
bt-source/panel/BTPanel/static/ckeditor/lang/bg.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['bg']={"editor":"Редактор за форматиран текст","editorPanel":"Панел на текстовия редактор","common":{"editorHelp":"натиснете ALT+0 за помощ","browseServer":"Избор от сървъра","url":"URL адрес","protocol":"Протокол","upload":"Качване","uploadSubmit":"Изпращане към сървъра","image":"Изображение","flash":"Флаш","form":"Форма","checkbox":"Поле за избор","radio":"Радио бутон","textField":"Текстово поле","textarea":"Текстова зона","hiddenField":"Скрито поле","button":"Бутон","select":"Поле за избор","imageButton":"Бутон за изображение","notSet":"<не е избрано>","id":"ID","name":"Име","langDir":"Посока на езика","langDirLtr":"От ляво надясно (LTR)","langDirRtl":"От дясно наляво (RTL)","langCode":"Код на езика","longDescr":"Уеб адрес за дълго описание","cssClass":"Класове за CSS","advisoryTitle":"Заглавие","cssStyle":"Стил","ok":"ОК","cancel":"Отказ","close":"Затвори","preview":"Преглед","resize":"Влачете за да оразмерите","generalTab":"Общи","advancedTab":"Разширено","validateNumberFailed":"Тази стойност не е число","confirmNewPage":"Всички незапазени промени ще бъдат изгубени. Сигурни ли сте, че желаете да заредите нова страница?","confirmCancel":"Някои от опциите са променени. Сигурни ли сте, че желаете да затворите прозореца?","options":"Опции","target":"Цел","targetNew":"Нов прозорец (_blank)","targetTop":"Най-горният прозорец (_top)","targetSelf":"Текущият прозорец (_self)","targetParent":"Горният прозорец (_parent)","langDirLTR":"От ляво надясно (LTR)","langDirRTL":"От дясно наляво (RTL)","styles":"Стил","cssClasses":"Класове за CSS","width":"Ширина","height":"Височина","align":"Подравняване","left":"Ляво","right":"Дясно","center":"Център","justify":"Двустранно","alignLeft":"Подравни ляво","alignRight":"Подравни дясно","alignCenter":"Подравни център","alignTop":"Горе","alignMiddle":"По средата","alignBottom":"Долу","alignNone":"Без подравняване","invalidValue":"Невалидна стойност.","invalidHeight":"Височината трябва да е число.","invalidWidth":"Ширина трябва да е число.","invalidLength":"Стойността на полето \"%1\" трябва да е положително число с или без валидна мерна единица (%2).","invalidCssLength":"Стойността на полето \"%1\" трябва да е положително число с или без валидна CSS мерна единица (px, %, in, cm, mm, em, ex, pt, или pc).","invalidHtmlLength":"Стойността на полето \"%1\" трябва да е положително число с или без валидна HTML мерна единица (px или %).","invalidInlineStyle":"Стойността на стилa трябва да съдържат една или повече двойки във формат \"name : value\", разделени с двоеточие.","cssLengthTooltip":"Въведете числена стойност в пиксели или друга валидна CSS единица (px, %, in, cm, mm, em, ex, pt, или pc).","unavailable":"%1<span class=\"cke_accessibility\">, недостъпно</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Клавишна комбинация","optionDefault":"По подразбиране"},"about":{"copy":"Авторско право &copy; $1. Всички права запазени.","dlgTitle":"Относно CKEditor 4","moreInfo":"За лицензионна информация моля посетете сайта ни:"},"basicstyles":{"bold":"Удебелен","italic":"Наклонен","strike":"Зачертан текст","subscript":"Долен индекс","superscript":"Горен индекс","underline":"Подчертан"},"bidi":{"ltr":"Посока на текста от ляво надясно","rtl":"Посока на текста от дясно наляво"},"blockquote":{"toolbar":"Блок за цитат"},"notification":{"closed":"Известието е затворено."},"toolbar":{"toolbarCollapse":"Свиване на лентата с инструменти","toolbarExpand":"Разширяване на лентата с инструменти","toolbarGroups":{"document":"Документ","clipboard":"Клипборд/Отмяна","editing":"Редакция","forms":"Форми","basicstyles":"Базови стилове","paragraph":"Параграф","links":"Връзки","insert":"Вмъкване","styles":"Стилове","colors":"Цветове","tools":"Инструменти"},"toolbars":"Ленти с инструменти"},"clipboard":{"copy":"Копирай","copyError":"Настройките за сигурност на вашия бразуър не разрешават на редактора да изпълни действията по копиране. За целта използвайте клавиатурата (Ctrl+C).","cut":"Отрежи","cutError":"Настройките за сигурност на вашия браузър не позволяват на редактора автоматично да изъплни действията за отрязване. За целта използвайте клавиатурата (Ctrl+X).","paste":"Вмъкни","pasteNotification":"Натиснете %1 за да вмъкнете. Вашият браузър не поддържа поставяне с бутон от лентата с инструменти или от контекстното меню.","pasteArea":"Зона за поставяне","pasteMsg":"Поставете съдържанието в зоната отдолу и натиснете OK."},"colorbutton":{"auto":"Автоматично","bgColorTitle":"Фонов цвят","colors":{"000":"Черно","800000":"Кестеняво","8B4513":"Светлокафяво","2F4F4F":"Тъмно плочесто сиво","008080":"Сиво птиче","000080":"Морско синьо","4B0082":"Индиго","696969":"Тъмно сиво","B22222":"Огнено червено","A52A2A":"Кафяво","DAA520":"Златисто","006400":"Тъмно зелено","40E0D0":"Тюркуазено","0000CD":"Средно синьо","800080":"Пурпурно","808080":"Сиво","F00":"Червено","FF8C00":"Тъмно оранжево","FFD700":"Златно","008000":"Зелено","0FF":"Светло синьо","00F":"Синьо","EE82EE":"Виолетово","A9A9A9":"Бледо сиво","FFA07A":"Светло розово-оранжево","FFA500":"Оранжево","FFFF00":"Жълто","00FF00":"Варосано","AFEEEE":"Тюркоазено остро","ADD8E6":"Светло синьо","DDA0DD":"Сливово","D3D3D3":"Светло сиво","FFF0F5":"Лавандула изчервено","FAEBD7":"Антично бяло","FFFFE0":"Светло жълто","F0FFF0":"Медена роса","F0FFFF":"Лазурно","F0F8FF":"Алиса синьо","E6E6FA":"Лавандула","FFF":"Бяло","1ABC9C":"Силно синьо-зелено","2ECC71":"Изомрудено","3498DB":"Ярко синьо","9B59B6":"Аметист","4E5F70":"Сивкаво синьо","F1C40F":"Блестящо жълто","16A085":"Тъмно синьо-зелено","27AE60":"Тъмно изомрудено","2980B9":"Силно синьо","8E44AD":"Тъмно виолетово","2C3E50":"Ненаситено синьо","F39C12":"Оранжево","E67E22":"Морков","E74C3C":"Бледо червено","ECF0F1":"Ярко сребърно","95A5A6":"Светло сивкаво синьо-зелено","DDD":"Светло сиво","D35400":"Тиквено","C0392B":"Силно червено","BDC3C7":"Сребърно","7F8C8D":"Сивкаво синьо-зелено","999":"Тъмно сиво"},"more":"Още цветове","panelTitle":"Цветове","textColorTitle":"Цвят на текста"},"colordialog":{"clear":"Изчистване","highlight":"Осветяване","options":"Цветови опции","selected":"Изберете цвят","title":"Избор на цвят"},"templates":{"button":"Шаблони","emptyListMsg":"(Няма дефинирани шаблони)","insertOption":"Замяна на актуалното съдържание","options":"Опции за шаблона","selectPromptMsg":"Моля изберете шаблон за отваряне в редактора","title":"Шаблони"},"contextmenu":{"options":"Опции на контекстното меню"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Заглавие","cssClassInputLabel":"Класове за CSS","edit":"Промяна на Div","inlineStyleInputLabel":"В редица","langDirLTRLabel":"От ляво надясно (LTR)","langDirLabel":"Посока на езика","langDirRTLLabel":"От дясно наляво (RTL)","languageCodeInputLabel":" Код на езика","remove":"Премахване на Div","styleSelectLabel":"Стил","title":"Създаване на Div контейнер","toolbar":"Създаване на Div контейнер"},"elementspath":{"eleLabel":"Път за елементите","eleTitle":"%1 елемент"},"filetools":{"loadError":"Възникна грешка при четене на файла.","networkError":"Възникна мрежова грешка при качването на файла.","httpError404":"Възникна HTTP грешка при качване на файла (404: Файлът не е намерен).","httpError403":"Възникна HTTP грешка при качване на файла (403: Забранено).","httpError":"Възникна HTTP грешка при качване на файла (статус на грешката: %1).","noUrlError":"URL адресът за качване не е дефиниран.","responseError":"Неправилен отговор на сървъра."},"find":{"find":"Търсене","findOptions":"Настройки за търсене","findWhat":"Търси за:","matchCase":"Съвпадение на големи/малки букви","matchCyclic":"Циклично търсене","matchWord":"Търсене по цели думи","notFoundMsg":"Указаният текст не е намерен.","replace":"Замяна","replaceAll":"Замени всички","replaceSuccessMsg":"%1 съвпадения заменени.","replaceWith":"Замяна с:","title":"Търсене и замяна"},"fakeobjects":{"anchor":"Кука","flash":"Флаш анимация","hiddenfield":"Скрито поле","iframe":"IFrame","unknown":"Неизвестен обект"},"flash":{"access":"Достъп до скрипт","accessAlways":"Винаги","accessNever":"Никога","accessSameDomain":"Същият домейн","alignAbsBottom":"Най-долу","alignAbsMiddle":"Точно по средата","alignBaseline":"Базова линия","alignTextTop":"Върху текста","bgcolor":"Цвят на фона","chkFull":"Позволи на цял екран","chkLoop":"Циклично","chkMenu":"Разрешено Flash меню","chkPlay":"Авто. пускане","flashvars":"Променливи за Флаш","hSpace":"X отстъп","properties":"Настройки за флаш","propertiesTab":"Настройки","quality":"Качество","qualityAutoHigh":"Авто високо","qualityAutoLow":"Авто ниско","qualityBest":"Отлично","qualityHigh":"Високо","qualityLow":"Ниско","qualityMedium":"Средно","scale":"Мащаб","scaleAll":"Показва всичко","scaleFit":"Според мястото","scaleNoBorder":"Без рамка","title":"Настройки за флаш","vSpace":"Y отстъп","validateHSpace":"X отстъп трябва да е число.","validateSrc":"URL адресът не трябва да е празен.","validateVSpace":"Y отстъп трябва да е число.","windowMode":"Режим на прозореца","windowModeOpaque":"Плътно","windowModeTransparent":"Прозрачно","windowModeWindow":"Прозорец"},"font":{"fontSize":{"label":"Размер","voiceLabel":"Размер на шрифт","panelTitle":"Размер на шрифт"},"label":"Шрифт","panelTitle":"Име на шрифт","voiceLabel":"Шрифт"},"forms":{"button":{"title":"Настройки на бутон","text":"Текст (стойност)","type":"Тип","typeBtn":"Бутон","typeSbm":"Добави","typeRst":"Нулиране"},"checkboxAndRadio":{"checkboxTitle":"Настройки на чекбокс","radioTitle":"Настройки на радиобутон","value":"Стойност","selected":"Избрано","required":"Задължително"},"form":{"title":"Настройки на форма","menu":"Настройки на форма","action":"Действие","method":"Метод","encoding":"Кодиране"},"hidden":{"title":"Настройки на скрито поле","name":"Име","value":"Стойност"},"select":{"title":"Настройки на поле за избор","selectInfo":"Селект инфо","opAvail":"Налични опции","value":"Стойност","size":"Размер","lines":"линии","chkMulti":"Разрешаване на няколко избора","required":"Задължително","opText":"Текст","opValue":"Стойност","btnAdd":"Добави","btnModify":"Промени","btnUp":"Нагоре","btnDown":"Надолу","btnSetValue":"Задай като избрана стойност","btnDelete":"Изтриване"},"textarea":{"title":"Настройки на текстова зона","cols":"Колони","rows":"Редове"},"textfield":{"title":"Настройки на текстово поле","name":"Име","value":"Стойност","charWidth":"Ширина на знаците","maxChars":"Макс. знаци","required":"Задължително","type":"Тип","typeText":"Текст","typePass":"Парола","typeEmail":"Имейл","typeSearch":"Търсене","typeTel":"Телефонен номер","typeUrl":"Уеб адрес"}},"format":{"label":"Формат","panelTitle":"Формат на параграф","tag_address":"Адрес","tag_div":"Нормален (DIV)","tag_h1":"Заглавие 1","tag_h2":"Заглавие 2","tag_h3":"Заглавие 3","tag_h4":"Заглавие 4","tag_h5":"Заглавие 5","tag_h6":"Заглавие 6","tag_p":"Нормален","tag_pre":"Форматиран"},"horizontalrule":{"toolbar":"Вмъкване на хоризонтална линия"},"iframe":{"border":"Показва рамка на карето","noUrl":"Моля въведете URL за iFrame","scrolling":"Активира прелистване","title":"IFrame настройки","toolbar":"IFrame"},"image":{"alt":"Алтернативен текст","border":"Рамка","btnUpload":"Изпрати на сървъра","button2Img":"Искате ли да превърнете избрания бутон за изображение в просто изображение?","hSpace":"Хоризонтален отстъп","img2Button":"Искате ли да превърнете избраното изображение в бутон за изображение?","infoTab":"Изображение","linkTab":"Връзка","lockRatio":"Заключване на съотношението","menu":"Настройки на изображение","resetSize":"Нулиране на размер","title":"Настройки на изображение","titleButton":"Настройки на бутон за изображение","upload":"Качване","urlMissing":"URL адресът на изображението липсва.","vSpace":"Вертикален отстъп","validateBorder":"Рамката трябва да е цяло число.","validateHSpace":"Хоризонтален отстъп трябва да е цяло число.","validateVSpace":"Вертикален отстъп трябва да е цяло число."},"indent":{"indent":"Увеличаване на отстъпа","outdent":"Намаляване на отстъпа"},"smiley":{"options":"Опции за усмивка","title":"Вмъкване на усмивка","toolbar":"Усмивка"},"language":{"button":"Задай език","remove":"Премахни език"},"link":{"acccessKey":"Клавиш за достъп","advanced":"Разширено","advisoryContentType":"Тип на съдържанието","advisoryTitle":"Заглавие","anchor":{"toolbar":"Котва","menu":"Промяна на котва","title":"Настройки на котва","name":"Име на котва","errorName":"Моля въведете име на котвата","remove":"Премахване на котва"},"anchorId":"По ID на елемент","anchorName":"По име на котва","charset":"Езиков код на свързания ресурс","cssClasses":"CSS класове","download":"Укажи изтегляне","displayText":"Текст за показване","emailAddress":"Имейл aдрес","emailBody":"Съдържание","emailSubject":"Тема","id":"Id","info":"Връзка","langCode":"Езиков код","langDir":"Посока на езика","langDirLTR":"От ляво надясно (LTR)","langDirRTL":"От дясно наляво (RTL)","menu":"Промяна на връзка","name":"Име","noAnchors":"(Няма котви в текущия документ)","noEmail":"Моля въведете имейл адрес","noUrl":"Моля въведете URL адрес","noTel":"Please type the phone number","other":"<друго>","phoneNumber":"Phone number","popupDependent":"Зависимост (Netscape)","popupFeatures":"Функции на изкачащ прозорец","popupFullScreen":"Цял екран (IE)","popupLeft":"Лява позиция","popupLocationBar":"Лента с локацията","popupMenuBar":"Лента за меню","popupResizable":"Оразмеряем","popupScrollBars":"Ленти за прелистване","popupStatusBar":"Статусна лента","popupToolbar":"Лента с инструменти","popupTop":"Горна позиция","rel":"Свързаност (rel атрибут)","selectAnchor":"Изберете котва","styles":"Стил","tabIndex":"Ред на достъп","target":"Цел","targetFrame":"<frame>","targetFrameName":"Име на целевия прозорец","targetPopup":"<изкачащ прозорец>","targetPopupName":"Име на изкачащ прозорец","title":"Връзка","toAnchor":"Връзк�� към котва в текста","toEmail":"Имейл","toUrl":"Уеб адрес","toPhone":"Phone","toolbar":"Връзка","type":"Тип на връзката","unlink":"Премахни връзката","upload":"Качване"},"list":{"bulletedlist":"Вмъкване/премахване на точков списък","numberedlist":"Вмъкване/премахване на номериран списък"},"liststyle":{"bulletedTitle":"Свойства на точков списък","circle":"Кръг","decimal":"Числа (1, 2, 3 и т.н.)","disc":"Диск","lowerAlpha":"Малки букви (а, б, в, г, д и т.н.)","lowerRoman":"Малки римски числа (i, ii, iii, iv, v и т.н.)","none":"Няма","notset":"<не е указано>","numberedTitle":"Numbered List Properties","square":"Квадрат","start":"Старт","type":"Тип","upperAlpha":"Големи букви (А, Б, В, Г, Д и т.н.)","upperRoman":"Големи римски числа (I, II, III, IV, V и т.н.)","validateStartNumber":"Началният номер на списъка трябва да е цяло число."},"magicline":{"title":"Вмъкнете параграф тук"},"maximize":{"maximize":"Максимизиране","minimize":"Минимизиране"},"newpage":{"toolbar":"Нова страница"},"pagebreak":{"alt":"Разделяне на страници","toolbar":"Вмъкване на нова страница при печат"},"pastetext":{"button":"Вмъкни като чист текст","pasteNotification":"Натиснете %1 за да поставите. Вашият браузър не поддържа поставяне с бутон от лентата с инструменти или контекстното меню.","title":"Вмъкни като чист текст"},"pastefromword":{"confirmCleanup":"Текстът, който искате да поставите, изглежда е копиран от Word. Искате ли да се почисти преди поставянето?","error":"Вмъкваните данни не могат да бъдат почистени поради вътрешна грешка","title":"Вмъкни от Word","toolbar":"Вмъкни от Word"},"preview":{"preview":"Преглед"},"print":{"toolbar":"Печат"},"removeformat":{"toolbar":"Премахване на форматирането"},"save":{"toolbar":"Запис"},"selectall":{"toolbar":"Избери всичко"},"showblocks":{"toolbar":"Показва блокове"},"sourcearea":{"toolbar":"Код"},"specialchar":{"options":"Опции за специален знак","title":"Избор на специален знак","toolbar":"Вмъкване на специален знак"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Речници","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Стилове","panelTitle":"Стилове за форматиране","panelTitle1":"Блокови стилове","panelTitle2":"Поредови стилове","panelTitle3":"Обектни стилове"},"table":{"border":"Размер на рамката","caption":"Заглавие","cell":{"menu":"Клетка","insertBefore":"Вмъкване на клетка преди","insertAfter":"Вмъкване на клетка след","deleteCell":"Изтриване на клетки","merge":"Сливане на клетки","mergeRight":"Сливане надясно","mergeDown":"Сливане надолу","splitHorizontal":"Разделяне клетката хоризонтално","splitVertical":"Разделяне клетката вертикално","title":"Настройки на клетката","cellType":"Тип на клетката","rowSpan":"Редове обединени","colSpan":"Колони обединени","wordWrap":"Авто. пренос","hAlign":"Хоризонтално подравняване","vAlign":"Вертикално подравняване","alignBaseline":"Базова линия","bgColor":"Фон","borderColor":"Цвят на рамката","data":"Данни","header":"Заглавие","yes":"Да","no":"Не","invalidWidth":"Ширината на клетката трябва да е число.","invalidHeight":"Височината на клетката трябва да е число.","invalidRowSpan":"Редове обединени трябва да е цяло число.","invalidColSpan":"Колони обединени трябва да е цяло число.","chooseColor":"Изберете"},"cellPad":"Отделяне на клетките","cellSpace":"Разстояние между клетките","column":{"menu":"Колона","insertBefore":"Вмъкване на колона преди","insertAfter":"Вмъкване на колона след","deleteColumn":"Изтриване на колони"},"columns":"Колони","deleteTable":"Изтриване на таблица","headers":"Заглавия","headersBoth":"И двете","headersColumn":"Първа колона","headersNone":"Няма","headersRow":"Първи ред","invalidBorder":"Размерът на рамката трябва да е число.","invalidCellPadding":"Отстоянието на клетките трябва да е положително число.","invalidCellSpacing":"Интервалът в клетките трябва да е положително число.","invalidCols":"Броят колони трябва да е по-голям от 0.","invalidHeight":"Височината на таблицата трябва да е число.","invalidRows":"Броят редове трябва да е по-голям от 0.","invalidWidth":"Ширината на таблицата трябва да е число.","menu":"Настройки на таблицата","row":{"menu":"Ред","insertBefore":"Вмъкване на ред преди","insertAfter":"Вмъкване на ред след","deleteRow":"Изтриване на редове"},"rows":"Редове","summary":"Обща информация","title":"Настройки на таблицата","toolbar":"Таблица","widthPc":"процент","widthPx":"пиксела","widthUnit":"единица за ширина"},"undo":{"redo":"Пренаправи","undo":"Отмени"},"widget":{"move":"Кликни и влачи, за да преместиш","label":"%1 приставка"},"uploadwidget":{"abort":"Качването е прекратено от потребителя.","doneOne":"Файлът е качен успешно.","doneMany":"Успешно са качени %1 файла.","uploadOne":"Качване на файл ({percentage}%)...","uploadMany":"Качване на файлове, {current} от {max} качени ({percentage}%)..."},"wsc":{"btnIgnore":"Игнорирай","btnIgnoreAll":"Игнорирай всичко","btnReplace":"Препокриване","btnReplaceAll":"Препокрий всичко","btnUndo":"Възтанови","changeTo":"Промени на","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- Няма препоръчани -","notAvailable":"Съжаляваме, но услугата не е достъпна за момента","notInDic":"Не е в речника","oneChange":"Spell check complete: One word changed","progress":"Проверява се правописа...","title":"Проверка на правопис","toolbar":"Проверка на правопис"}};
bt-source/panel/BTPanel/static/ckeditor/lang/bn.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['bn']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"ব্রাউজ সার্ভার","url":"URL","protocol":"প্রোটোকল","upload":"আপলোড","uploadSubmit":"ইহাকে সার্ভারে প্রেরন কর","image":"ছবির লেবেল যুক্ত কর","flash":"ফ্লাশ লেবেল যুক্ত কর","form":"ফর্ম","checkbox":"চেক বাক্স","radio":"রেডিও বাটন","textField":"টেক্সট ফীল্ড","textarea":"টেক্সট এরিয়া","hiddenField":"গুপ্ত ফীল্ড","button":"বাটন","select":"বাছাই ফীল্ড","imageButton":"ছবির বাটন","notSet":"<সেট নেই>","id":"আইডি","name":"নাম","langDir":"ভাষা লেখার দিক","langDirLtr":"বাম থেকে ডান (LTR)","langDirRtl":"ডান থেকে বাম (RTL)","langCode":"ভাষা কোড","longDescr":"URL এর লম্বা বর্ণনা","cssClass":"স্টাইল-শীট ক্লাস","advisoryTitle":"পরামর্শ শীর্ষক","cssStyle":"স্টাইল","ok":"ওকে","cancel":"বাতিল","close":"Close","preview":"প্রিভিউ","resize":"Resize","generalTab":"General","advancedTab":"এডভান্সড","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"টার্গেট","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"বাম থেকে ডান (LTR)","langDirRTL":"ডান থেকে বাম (RTL)","styles":"স্টাইল","cssClasses":"স্টাইল-শীট ক্লাস","width":"প্রস্থ","height":"দৈর্ঘ্য","align":"এলাইন","left":"বামে","right":"ডানে","center":"মাঝখানে","justify":"ব্লক জাস্টিফাই","alignLeft":"বা দিকে ঘেঁষা","alignRight":"ডান দিকে ঘেঁষা","alignCenter":"Align Center","alignTop":"উপর","alignMiddle":"মধ্য","alignBottom":"নীচে","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor 4","moreInfo":"For licensing information please visit our web site:"},"basicstyles":{"bold":"বোল্ড","italic":"বাঁকা","strike":"স্ট্রাইক থ্রু","subscript":"অধোলেখ","superscript":"অভিলেখ","underline":"আন্ডারলাইন"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"clipboard":{"copy":"ক��ি","copyError":"আপনার ব্রাউজারের নিরাপত্তা সেটিংসমূহ এডিটরকে স্বয়ংক্রিয়ভাবে কপি করার প্রক্রিয়া চালনা করার অনুমতি দেয় না। অনুগ্রহপূর্বক এই কাজের জন্য কিবোর্ড ব্যবহার করুন (Ctrl/Cmd+C)।","cut":"কাট","cutError":"আপনার ব্রাউজারের সুরক্ষা সেটিংস এডিটরকে অটোমেটিক কাট করার অনুমতি দেয়নি। দয়া করে এই কাজের জন্য কিবোর্ড ব্যবহার করুন (Ctrl/Cmd+X)।","paste":"পেস্ট","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Paste Area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"স্বয়ংক্রিয়ভাবে","bgColorTitle":"পৃষ্ঠতলের রং","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"আরও রং...","panelTitle":"Colors","textColorTitle":"টেক্স্ট রং"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"টেমপ্লেট","emptyListMsg":"(কোন টেমপ্লেট ডিফাইন করা নেই)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"অনুগ্রহ করে এডিটরে ওপেন করার জন্য টেমপ্লেট বাছাই করুন<br>(আসল কনটেন্ট হারিয়ে যাবে):","title":"কনটেন্ট টেমপ্লেট"},"contextmenu":{"options":"Context Menu Options"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"খুজিঁ","findOptions":"Find Options","findWhat":"যা খুঁজতে হবে:","matchCase":"কেস মিলাও","matchCyclic":"Match cyclic","matchWord":"পুরা শব্দ মেলাও","notFoundMsg":"আপনার উল্লেখিত টেকস্ট পাওয়া যায়নি","replace":"রিপ্লেস","replaceAll":"সব বদলে দাও","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"যার সাথে বদলাতে হবে:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs নীচে","alignAbsMiddle":"Abs উপর","alignBaseline":"মূল রেখা","alignTextTop":"টেক্সট উপর","bgcolor":"পৃষ্ঠতলের রং","chkFull":"Allow Fullscreen","chkLoop":"লূপ","chkMenu":"ফ্ল্যাশ মেনু এনাবল কর","chkPlay":"অটো প্লে","flashvars":"Variables for Flash","hSpace":"হরাইজন্টাল স্পেস","properties":"ফ্লাশ প্রোপার্টি","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"স্কেল","scaleAll":"সব দেখাও","scaleFit":"নিখুঁত ফিট","scaleNoBorder":"কোনো বর্ডার নেই","title":"ফ্ল্যাশ প্রোপার্টি","vSpace":"ভার্টিকেল স্পেস","validateHSpace":"HSpace must be a number.","validateSrc":"অনুগ্রহ করে URL লিংক টাইপ করুন","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"সাইজ","voiceLabel":"Font Size","panelTitle":"সাইজ"},"label":"ফন্ট","panelTitle":"ফন্ট","voiceLabel":"ফন্ট"},"forms":{"button":{"title":"বাটন সম্বন্ধীয়","text":"টেক্সট (ভ্যালু)","type":"প্রকার","typeBtn":"বাটন","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"চেক বক্স প্রোপার্টি","radioTitle":"রেডিও বাটন সম্বন্ধীয়","value":"ভ্যালু","selected":"সিলেক্টেড","required":"Required"},"form":{"title":"ফর্ম প্রোপার্টি","menu":"ফর্ম প্রোপার্টি","action":"একশ্যন","method":"পদ্ধতি","encoding":"Encoding"},"hidden":{"title":"গুপ্ত ফীল্ড প্রোপার্টি","name":"নাম","value":"ভ্যালু"},"select":{"title":"বাছাই ফীল্ড প্রোপার্টি","selectInfo":"তথ্য","opAvail":"অন্যান্য বিকল্প","value":"ভ্যালু","size":"সাইজ","lines":"লাইন সমূহ","chkMulti":"একাধিক সিলেকশন এলাউ কর","required":"Required","opText":"টেক্সট","opValue":"ভ্যালু","btnAdd":"যুক্ত","btnModify":"বদলে দাও","btnUp":"উপর","btnDown":"নীচে","btnSetValue":"বাছাই করা ভ্যালু হিসেবে সেট কর","btnDelete":"ডিলীট"},"textarea":{"title":"টেক্সট এরিয়া প্রোপার্টি","cols":"কলাম","rows":"রো"},"textfield":{"title":"টেক্সট ফীল্ড প্রোপার্টি","name":"নাম","value":"ভ্যালু","charWidth":"ক্যারেক্টার প্রশস্ততা","maxChars":"সর্বাধিক ক্যারেক্টার","required":"Required","type":"টাইপ","typeText":"টেক্সট","typePass":"পাসওয়ার্ড","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"ধরন-প্রকৃতি","panelTitle":"ফন্ট ফরমেট","tag_address":"ঠিকানা","tag_div":"শীর্ষক (DIV)","tag_h1":"শীর্ষক ১","tag_h2":"শীর্ষক ২","tag_h3":"শীর্ষক ৩","tag_h4":"শীর্ষক ৪","tag_h5":"শীর্ষক ৫","tag_h6":"শীর্ষক ৬","tag_p":"সাধারণ","tag_pre":"ফর্মেটেড"},"horizontalrule":{"toolbar":"অনুভূমিক লাইন যোগ করি"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alt":"বিকল্প টেক্সট","border":"বর্ডার","btnUpload":"ইহাকে সার্ভারে প্রেরন কর","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"হরাইজন্টাল স্পেস","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"ছবির তথ্য","linkTab":"লিংক","lockRatio":"অনুপাত লক কর","menu":"ছবির প্রোপার্টি","resetSize":"সাইজ পূর্বাবস্থায় ফিরিয়ে দাও","title":"ছবির প্রোপার্টি","titleButton":"ছবির বাটন সম্বন্ধীয়","upload":"আপলোড","urlMissing":"Image source URL is missing.","vSpace":"ভার্টিকেল স্পেস","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"ইনডেন্ট বাড়াই","outdent":"ইনডেন্ট কমাও"},"smiley":{"options":"Smiley Options","title":"স্মাইলী যুক্ত কর","toolbar":"স্মাইলী"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"প্রবেশ কী","advanced":"এডভান্সড","advisoryContentType":"পরামর্শ কন্টেন্টের প্রকার","advisoryTitle":"পরামর্শ শীর্ষক","anchor":{"toolbar":"নোঙ্গর","menu":"নোঙর প্রোপার্টি","title":"নোঙর প্রোপার্টি","name":"নোঙরের নাম","errorName":"নোঙরের নাম টাইপ করুন","remove":"Remove Anchor"},"anchorId":"নোঙরের আইডি দিয়ে","anchorName":"নোঙরের নাম দিয়ে","charset":"লিংক রিসোর্স ক্যারেক্টর সেট","cssClasses":"স্টাইল-শীট ক্লাস","download":"Force Download","displayText":"Display Text","emailAddress":"ইমেইল ঠিকানা","emailBody":"মেসেজের দেহ","emailSubject":"মেসেজের বিষয়","id":"আইডি","info":"লিংক তথ্য","langCode":"ভাষা লেখার দিক","langDir":"ভাষা লেখার দিক","langDirLTR":"বাম থেকে ডান (LTR)","langDirRTL":"ডান থেকে বাম (RTL)","menu":"লিংক সম্পাদন","name":"নাম","noAnchors":"(No anchors available in the document)","noEmail":"অনুগ্রহ করে ইমেইল এড্রেস টাইপ করুন","noUrl":"অনুগ্রহ করে URL লিংক টাইপ করুন","noTel":"Please type the phone number","other":"<other>","phoneNumber":"Phone number","popupDependent":"ডিপেন্ডেন্ট (Netscape)","popupFeatures":"পপআপ উইন্ডো ফীচার সমূহ","popupFullScreen":"পূর্ণ পর্দা জুড়ে (IE)","popupLeft":"বামের পজিশন","popupLocationBar":"লোকেশন বার","popupMenuBar":"মেন্যু বার","popupResizable":"Resizable","popupScrollBars":"স্ক্রল বার","popupStatusBar":"স্ট্যাটাস বার","popupToolbar":"টুল বার","popupTop":"ডানের পজিশন","rel":"Relationship","selectAnchor":"নোঙর বাছাই","styles":"স্টাইল","tabIndex":"ট্যাব ইন্ডেক্স","target":"টার্গেট","targetFrame":"<ফ্রেম>","targetFrameName":"টার্গেট ফ্রেমের নাম","targetPopup":"<পপআপ উইন্ডো>","targetPopupName":"পপআপ উইন্ডোর নাম","title":"লিংক","toAnchor":"এই পেজে নোঙর কর","toEmail":"ইমেইল","toUrl":"URL","toPhone":"Phone","toolbar":"লিংক যুক্ত কর","type":"লিংক প্রকার","unlink":"লিংক সরাও","upload":"আপলোড"},"list":{"bulletedlist":"বুলেটেড তালিকা প্রবেশ/অপসারন করি","numberedlist":"সাংখ্যিক লিস্টের লেবেল"},"liststyle":{"bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"নতুন পৃষ্ঠা"},"pagebreak":{"alt":"Page Break","toolbar":"পেজ ব্রেক"},"pastetext":{"button":"সাধারণ টেক্সট হিসেবে পেইস্ট করি","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"সাদা টেক্সট হিসেবে পেস্ট কর"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"পেস্ট (শব্দ)","toolbar":"পেস্ট (শব্দ)"},"preview":{"preview":"প্রাকদর্শন"},"print":{"toolbar":"প্���িন্ট করি"},"removeformat":{"toolbar":"ধরন-প্রকৃতি অপসারণ করি"},"save":{"toolbar":"সংরক্ষন করি"},"selectall":{"toolbar":"সব সিলেক্ট করি"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"উৎস"},"specialchar":{"options":"Special Character Options","title":"বিশেষ ক্যারেক্টার বাছাই কর","toolbar":"বিশেষ অক্ষর যুক্ত কর"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"ধরন","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"বর্ডারের সাইজ","caption":"শীর্ষক","cell":{"menu":"সেল","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"সেল মুছে দাও","merge":"সেল জোড়া দাও","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"পৃষ্ঠতলের রং","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"সেল প্যাডিং","cellSpace":"সেল স্পেস","column":{"menu":"কলাম","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"কলাম মুছে দাও"},"columns":"কলাম","deleteTable":"টেবিল ডিলীট কর","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"টেবিল প্রোপার্টি","row":{"menu":"রো","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"রো মুছে দাও"},"rows":"রো","summary":"সারাংশ","title":"টেবিল প্রোপার্টি","toolbar":"টেবিলের লেবেল যুক্ত কর","widthPc":"শতকরা","widthPx":"পিক্সেল","widthUnit":"width unit"},"undo":{"redo":"পুনরায় করি","undo":"আনডু"},"widget":{"move":"Click and drag to move","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"ইগনোর কর","btnIgnoreAll":"সব ইগনোর কর","btnReplace":"বদলে দাও","btnReplaceAll":"সব বদলে দাও","btnUndo":"আন্ডু","changeTo":"এতে বদলাও","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"বানান পরীক্ষক ইনস্টল করা নেই। আপনি কি এখনই এটা ডাউনলোড করতে চান?","manyChanges":"বানান পরীক্ষা শেষ: %1 গুলো শব্দ বদলে গ্যাছে","noChanges":"বানান পরীক্ষা শেষ: কোন শব্দ পরিবর্তন করা হয়নি","noMispell":"বানান পরীক্ষা শেষ: কোন ভুল বানান পাওয়া যায়নি","noSuggestions":"- কোন সাজেশন নেই -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"শব্দকোষে নেই","oneChange":"বানান পরীক্ষা শেষ: একটি মাত্র শব্দ পরিবর্তন করা হয়েছে","progress":"বানান পরীক্ষা চলছে...","title":"Spell Checker","toolbar":"বানান চেক"}};
bt-source/panel/BTPanel/static/ckeditor/lang/bs.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['bs']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protokol","upload":"Šalji","uploadSubmit":"Šalji na server","image":"Slika","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<nije podešeno>","id":"Id","name":"Naziv","langDir":"Smjer pisanja","langDirLtr":"S lijeva na desno (LTR)","langDirRtl":"S desna na lijevo (RTL)","langCode":"Jezièni kôd","longDescr":"Dugaèki opis URL-a","cssClass":"Klase CSS stilova","advisoryTitle":"Advisory title","cssStyle":"Stil","ok":"OK","cancel":"Odustani","close":"Close","preview":"Prikaži","resize":"Resize","generalTab":"General","advancedTab":"Naprednije","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Prozor","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"S lijeva na desno (LTR)","langDirRTL":"S desna na lijevo (RTL)","styles":"Stil","cssClasses":"Klase CSS stilova","width":"Širina","height":"Visina","align":"Poravnanje","left":"Lijevo","right":"Desno","center":"Centar","justify":"Puno poravnanje","alignLeft":"Lijevo poravnanje","alignRight":"Desno poravnanje","alignCenter":"Align Center","alignTop":"Vrh","alignMiddle":"Sredina","alignBottom":"Dno","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor 4","moreInfo":"For licensing information please visit our web site:"},"basicstyles":{"bold":"Boldiraj","italic":"Ukosi","strike":"Precrtaj","subscript":"Subscript","superscript":"Superscript","underline":"Podvuci"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"clipboard":{"copy":"Kopiraj","copyError":"Sigurnosne postavke Vašeg pretraživaèa ne dozvoljavaju operacije automatskog kopiranja. Molimo koristite kraticu na tastaturi (Ctrl/Cmd+C).","cut":"Izreži","cutError":"Sigurnosne postavke vašeg pretraživaèa ne dozvoljavaju operacije automatskog rezanja. Molimo koristite kraticu na tastaturi (Ctrl/Cmd+X).","paste":"Zalijepi","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Paste Area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatska","bgColorTitle":"Boja pozadine","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Više boja...","panelTitle":"Colors","textColorTitle":"Boja teksta"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory title","cssClassInputLabel":"Klase CSS stilova","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"S lijeva na desno (LTR)","langDirLabel":"Smjer pisanja","langDirRTLLabel":"S desna na lijevo (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Stil","title":"Create Div Container","toolbar":"Create Div Container"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Naði","findOptions":"Find Options","findWhat":"Naði šta:","matchCase":"Uporeðuj velika/mala slova","matchCyclic":"Match cyclic","matchWord":"Uporeðuj samo cijelu rijeè","notFoundMsg":"Traženi tekst nije pronaðen.","replace":"Zamjeni","replaceAll":"Zamjeni sve","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Zamjeni sa:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs dole","alignAbsMiddle":"Abs sredina","alignBaseline":"Bazno","alignTextTop":"Vrh teksta","bgcolor":"Boja pozadine","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"Molimo ukucajte URL link","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Velièina","voiceLabel":"Font Size","panelTitle":"Velièina"},"label":"Font","panelTitle":"Font","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected","required":"Required"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","required":"Required","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","required":"Required","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Ubaci horizontalnu liniju"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alt":"Tekst na slici","border":"Okvir","btnUpload":"Šalji na server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Info slike","linkTab":"Link","lockRatio":"Zakljuèaj odnos","menu":"Svojstva slike","resetSize":"Resetuj dimenzije","title":"Svojstva slike","titleButton":"Image Button Properties","upload":"Šalji","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Poveæaj uvod","outdent":"Smanji uvod"},"smiley":{"options":"Smiley Options","title":"Ubaci smješka","toolbar":"Smješko"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Pristupna tipka","advanced":"Naprednije","advisoryContentType":"Advisory vrsta sadržaja","advisoryTitle":"Advisory title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"Po Id-u elementa","anchorName":"Po nazivu sidra","charset":"Linked Resource Charset","cssClasses":"Klase CSS stilova","download":"Force Download","displayText":"Display Text","emailAddress":"E-Mail Adresa","emailBody":"Poruka","emailSubject":"Subjekt poruke","id":"Id","info":"Link info","langCode":"Smjer pisanja","langDir":"Smjer pisanja","langDirLTR":"S lijeva na desno (LTR)","langDirRTL":"S desna na lijevo (RTL)","menu":"Izmjeni link","name":"Naziv","noAnchors":"(Nema dostupnih sidra na stranici)","noEmail":"Molimo ukucajte e-mail adresu","noUrl":"Molimo ukucajte URL link","noTel":"Please type the phone number","other":"<other>","phoneNumber":"Phone number","popupDependent":"Ovisno (Netscape)","popupFeatures":"Moguænosti popup prozora","popupFullScreen":"Cijeli ekran (IE)","popupLeft":"Lijeva pozicija","popupLocationBar":"Traka za lokaciju","popupMenuBar":"Izborna traka","popupResizable":"Resizable","popupScrollBars":"Scroll traka","popupStatusBar":"Statusna traka","popupToolbar":"Traka sa alatima","popupTop":"Gornja pozicija","rel":"Relationship","selectAnchor":"Izaberi sidro","styles":"Stil","tabIndex":"Tab indeks","target":"Prozor","targetFrame":"<frejm>","targetFrameName":"Target Frame Name","targetPopup":"<popup prozor>","targetPopupName":"Naziv popup prozora","title":"Link","toAnchor":"Sidro na ovoj stranici","toEmail":"E-Mail","toUrl":"URL","toPhone":"Phone","toolbar":"Ubaci/Izmjeni link","type":"Tip linka","unlink":"Izbriši link","upload":"Šalji"},"list":{"bulletedlist":"Lista","numberedlist":"Numerisana lista"},"liststyle":{"bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"Novi dokument"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Zalijepi kao obièan tekst","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Zalijepi kao obièan tekst"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Zalijepi iz Word-a","toolbar":"Zalijepi iz Word-a"},"preview":{"preview":"Prikaži"},"print":{"toolbar":"Štampaj"},"removeformat":{"toolbar":"Poništi format"},"save":{"toolbar":"Snimi"},"selectall":{"toolbar":"Selektuj sve"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"HTML kôd"},"specialchar":{"options":"Special Character Options","title":"Izaberi specijalni karakter","toolbar":"Ubaci specijalni karater"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Stil","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Okvir","caption":"Naslov","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Briši æelije","merge":"Spoji æelije","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Uvod æelija","cellSpace":"Razmak æelija","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Briši kolone"},"columns":"Kolona","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Svojstva tabele","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Briši redove"},"rows":"Redova","summary":"Summary","title":"Svojstva tabele","toolbar":"Tabela","widthPc":"posto","widthPx":"piksela","widthUnit":"width unit"},"undo":{"redo":"Ponovi","undo":"Vrati"},"widget":{"move":"Click and drag to move","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
bt-source/panel/BTPanel/static/ckeditor/lang/ca.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['ca']={"editor":"Editor de text enriquit","editorPanel":"Panell de l'editor de text enriquit","common":{"editorHelp":"Premeu ALT 0 per ajuda","browseServer":"Veure servidor","url":"URL","protocol":"Protocol","upload":"Puja","uploadSubmit":"Envia-la al servidor","image":"Imatge","flash":"Flash","form":"Formulari","checkbox":"Casella de verificació","radio":"Botó d'opció","textField":"Camp de text","textarea":"Àrea de text","hiddenField":"Camp ocult","button":"Botó","select":"Camp de selecció","imageButton":"Botó d'imatge","notSet":"<no definit>","id":"Id","name":"Nom","langDir":"Direcció de l'idioma","langDirLtr":"D'esquerra a dreta (LTR)","langDirRtl":"De dreta a esquerra (RTL)","langCode":"Codi d'idioma","longDescr":"Descripció llarga de la URL","cssClass":"Classes del full d'estil","advisoryTitle":"Títol consultiu","cssStyle":"Estil","ok":"D'acord","cancel":"Cancel·la","close":"Tanca","preview":"Previsualitza","resize":"Arrossegueu per redimensionar","generalTab":"General","advancedTab":"Avançat","validateNumberFailed":"Aquest valor no és un número.","confirmNewPage":"Els canvis en aquest contingut que no es desin es perdran. Esteu segur que voleu carregar una pàgina nova?","confirmCancel":"Algunes opcions s'han canviat. Esteu segur que voleu tancar el quadre de diàleg?","options":"Opcions","target":"Destí","targetNew":"Nova finestra (_blank)","targetTop":"Finestra superior (_top)","targetSelf":"Mateixa finestra (_self)","targetParent":"Finestra pare (_parent)","langDirLTR":"D'esquerra a dreta (LTR)","langDirRTL":"De dreta a esquerra (RTL)","styles":"Estil","cssClasses":"Classes del full d'estil","width":"Amplada","height":"Alçada","align":"Alineació","left":"Ajusta a l'esquerra","right":"Ajusta a la dreta","center":"Centre","justify":"Justificat","alignLeft":"Alinea a l'esquerra","alignRight":"Alinea a la dreta","alignCenter":"Align Center","alignTop":"Superior","alignMiddle":"Centre","alignBottom":"Inferior","alignNone":"Cap","invalidValue":"Valor no vàlid.","invalidHeight":"L'alçada ha de ser un número.","invalidWidth":"L'amplada ha de ser un número.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"El valor especificat per als \"%1\" camps ha de ser un número positiu amb o sense unitat de mesura vàlida de CSS (px, %, in, cm, mm, em, ex, pt o pc).","invalidHtmlLength":"El valor especificat per als \"%1\" camps ha de ser un número positiu amb o sense unitat de mesura vàlida d'HTML (px o %).","invalidInlineStyle":"El valor especificat per l'estil en línia ha de constar d'una o més tuples amb el format \"name: value\", separats per punt i coma.","cssLengthTooltip":"Introduïu un número per un valor en píxels o un número amb una unitat vàlida de CSS (px, %, in, cm, mm, em, ex, pt o pc).","unavailable":"%1<span class=\"cke_accessibility\">, no disponible</span>","keyboard":{"8":"Retrocés","13":"Intro","16":"Majúscules","17":"Ctrl","18":"Alt","32":"Space","35":"Fi","36":"Inici","46":"Eliminar","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. Tots els drets reservats.","dlgTitle":"Quant al CKEditor 4","moreInfo":"Per informació sobre llicències visiteu el nostre lloc web:"},"basicstyles":{"bold":"Negreta","italic":"Cursiva","strike":"Ratllat","subscript":"Subíndex","superscript":"Superíndex","underline":"Subratllat"},"bidi":{"ltr":"Direcció del text d'esquerra a dreta","rtl":"Direcció del text de dreta a esquerra"},"blockquote":{"toolbar":"Bloc de cita"},"notification":{"closed":"Notificació tancada."},"toolbar":{"toolbarCollapse":"Redueix la barra d'eines","toolbarExpand":"Amplia la barra d'eines","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor de barra d'eines"},"clipboard":{"copy":"Copiar","copyError":"La configuració de seguretat del vostre navegador no permet executar automàticament les operacions de copiar. Si us plau, utilitzeu el teclat (Ctrl/Cmd+C).","cut":"Retallar","cutError":"La configuració de seguretat del vostre navegador no permet executar automàticament les operacions de retallar. Si us plau, utilitzeu el teclat (Ctrl/Cmd+X).","paste":"Enganxar","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Àrea d'enganxat","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automàtic","bgColorTitle":"Color de Fons","colors":{"000":"Negre","800000":"Grana","8B4513":"Marró sella","2F4F4F":"Gris pissarra fosca","008080":"Blau xarxet","000080":"Blau marí","4B0082":"Indi","696969":"Gris Fosc","B22222":"Foc Maó","A52A2A":"Marró","DAA520":"Solidago","006400":"Verd Fosc","40E0D0":"Turquesa","0000CD":"Blau 1/2","800080":"Lila","808080":"Gris","F00":"Vermell","FF8C00":"Taronja Fosc","FFD700":"Or","008000":"Verd","0FF":"Cian","00F":"Blau","EE82EE":"Violat","A9A9A9":"Gris clar","FFA07A":"Salmó clar","FFA500":"Taronja","FFFF00":"Groc","00FF00":"Verd Llima","AFEEEE":"Turquesa Pàl·lid","ADD8E6":"Blau Clar","DDA0DD":"Pruna","D3D3D3":"Gris Clar","FFF0F5":"Lavanda rosat","FAEBD7":"Blanc Antic","FFFFE0":"Groc Clar","F0FFF0":"Verd Pàl·lid","F0FFFF":"Atzur","F0F8FF":"Cian pàlid","E6E6FA":"Lavanda","FFF":"Blanc","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Més Colors...","panelTitle":"Colors","textColorTitle":"Color del Text"},"colordialog":{"clear":"Neteja","highlight":"Destacat","options":"Opcions del color","selected":"Color Seleccionat","title":"Seleccioni el color"},"templates":{"button":"Plantilles","emptyListMsg":"(No hi ha plantilles definides)","insertOption":"Reemplaça el contingut actual","options":"Opcions de plantilla","selectPromptMsg":"Seleccioneu una plantilla per usar a l'editor<br>(per defecte s'elimina el contingut actual):","title":"Plantilles de contingut"},"contextmenu":{"options":"Opcions del menú contextual"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Títol de guia","cssClassInputLabel":"Classes de la fulla d'estils","edit":"Edita la Capa","inlineStyleInputLabel":"Estil en línia","langDirLTRLabel":"D'esquerra a dreta (LTR)","langDirLabel":"Direcció de l'idioma","langDirRTLLabel":"De dreta a esquerra (RTL)","languageCodeInputLabel":" Codi d'idioma","remove":"Elimina la Capa","styleSelectLabel":"Estil","title":"Crea una Capa Contenidora","toolbar":"Crea una Capa Contenidora"},"elementspath":{"eleLabel":"Ruta dels elements","eleTitle":"%1 element"},"filetools":{"loadError":"S'ha produït un error durant la lectura del fitxer.","networkError":"S'ha produït un error de xarxa durant la càrrega del fitxer.","httpError404":"S'ha produït un error HTTP durant la càrrega del fitxer (404: Fitxer no trobat).","httpError403":"S'ha produït un error HTTP durant la càrrega del fitxer (403: Permís denegat).","httpError":"S'ha produït un error HTTP durant la càrrega del fitxer (estat d'error: %1).","noUrlError":"La URL de càrrega no està definida.","responseError":"Resposta incorrecte del servidor"},"find":{"find":"Cerca","findOptions":"Opcions de Cerca","findWhat":"Cerca el:","matchCase":"Distingeix majúscules/minúscules","matchCyclic":"Coincidència cíclica","matchWord":"Només paraules completes","notFoundMsg":"El text especificat no s'ha trobat.","replace":"Reemplaça","replaceAll":"Reemplaça-ho tot","replaceSuccessMsg":"%1 ocurrència/es reemplaçada/es.","replaceWith":"Reemplaça amb:","title":"Cerca i reemplaça"},"fakeobjects":{"anchor":"Àncora","flash":"Animació Flash","hiddenfield":"Camp ocult","iframe":"IFrame","unknown":"Objecte desconegut"},"flash":{"access":"Accés a scripts","accessAlways":"Sempre","accessNever":"Mai","accessSameDomain":"El mateix domini","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Superior","bgcolor":"Color de Fons","chkFull":"Permetre la pantalla completa","chkLoop":"Bucle","chkMenu":"Habilita menú Flash","chkPlay":"Reprodució automàtica","flashvars":"Variables de Flash","hSpace":"Espaiat horitzontal","properties":"Propietats del Flash","propertiesTab":"Propietats","quality":"Qualitat","qualityAutoHigh":"Alta automàtica","qualityAutoLow":"Baixa automàtica","qualityBest":"La millor","qualityHigh":"Alta","qualityLow":"Baixa","qualityMedium":"Mitjana","scale":"Escala","scaleAll":"Mostra-ho tot","scaleFit":"Mida exacta","scaleNoBorder":"Sense vores","title":"Propietats del Flash","vSpace":"Espaiat vertical","validateHSpace":"L'espaiat horitzontal ha de ser un número.","validateSrc":"La URL no pot estar buida.","validateVSpace":"L'espaiat vertical ha de ser un número.","windowMode":"Mode de la finestra","windowModeOpaque":"Opaca","windowModeTransparent":"Transparent","windowModeWindow":"Finestra"},"font":{"fontSize":{"label":"Mida","voiceLabel":"Mida de la lletra","panelTitle":"Mida de la lletra"},"label":"Tipus de lletra","panelTitle":"Tipus de lletra","voiceLabel":"Tipus de lletra"},"forms":{"button":{"title":"Propietats del botó","text":"Text (Valor)","type":"Tipus","typeBtn":"Botó","typeSbm":"Transmet formulari","typeRst":"Reinicia formulari"},"checkboxAndRadio":{"checkboxTitle":"Propietats de la casella de verificació","radioTitle":"Propietats del botó d'opció","value":"Valor","selected":"Seleccionat","required":"Necessari"},"form":{"title":"Propietats del formulari","menu":"Propietats del formulari","action":"Acció","method":"Mètode","encoding":"Codificació"},"hidden":{"title":"Propietats del camp ocult","name":"Nom","value":"Valor"},"select":{"title":"Propietats del camp de selecció","selectInfo":"Info","opAvail":"Opcions disponibles","value":"Valor","size":"Mida","lines":"Línies","chkMulti":"Permet múltiples seleccions","required":"Necessari","opText":"Text","opValue":"Valor","btnAdd":"Afegeix","btnModify":"Modifica","btnUp":"Amunt","btnDown":"Avall","btnSetValue":"Selecciona per defecte","btnDelete":"Elimina"},"textarea":{"title":"Propietats de l'àrea de text","cols":"Columnes","rows":"Files"},"textfield":{"title":"Propietats del camp de text","name":"Nom","value":"Valor","charWidth":"Amplada","maxChars":"Nombre màxim de caràcters","required":"Necessari","type":"Tipus","typeText":"Text","typePass":"Contrasenya","typeEmail":"Correu electrònic","typeSearch":"Cercar","typeTel":"Número de telèfon","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Adreça","tag_div":"Normal (DIV)","tag_h1":"Encapçalament 1","tag_h2":"Encapçalament 2","tag_h3":"Encapçalament 3","tag_h4":"Encapçalament 4","tag_h5":"Encapçalament 5","tag_h6":"Encapçalament 6","tag_p":"Normal","tag_pre":"Formatejat"},"horizontalrule":{"toolbar":"Insereix línia horitzontal"},"iframe":{"border":"Mostra la vora del marc","noUrl":"Si us plau, introdueixi la URL de l'iframe","scrolling":"Activa les barres de desplaçament","title":"Propietats de l'IFrame","toolbar":"IFrame"},"image":{"alt":"Text alternatiu","border":"Vora","btnUpload":"Envia-la al servidor","button2Img":"Voleu transformar el botó d'imatge seleccionat en una simple imatge?","hSpace":"Espaiat horit.","img2Button":"Voleu transformar la imatge seleccionada en un botó d'imatge?","infoTab":"Informació de la imatge","linkTab":"Enllaç","lockRatio":"Bloqueja les proporcions","menu":"Propietats de la imatge","resetSize":"Restaura la mida","title":"Propietats de la imatge","titleButton":"Propietats del botó d'imatge","upload":"Puja","urlMissing":"Falta la URL de la imatge.","vSpace":"Espaiat vert.","validateBorder":"La vora ha de ser un nombre enter.","validateHSpace":"HSpace ha de ser un nombre enter.","validateVSpace":"VSpace ha de ser un nombre enter."},"indent":{"indent":"Augmenta el sagnat","outdent":"Redueix el sagnat"},"smiley":{"options":"Opcions d'emoticones","title":"Insereix una icona","toolbar":"Icona"},"language":{"button":"Definir l'idioma","remove":"Eliminar idioma"},"link":{"acccessKey":"Clau d'accés","advanced":"Avançat","advisoryContentType":"Tipus de contingut consultiu","advisoryTitle":"Títol consultiu","anchor":{"toolbar":"Insereix/Edita àncora","menu":"Propietats de l'àncora","title":"Propietats de l'àncora","name":"Nom de l'àncora","errorName":"Si us plau, escriviu el nom de l'ancora","remove":"Remove Anchor"},"anchorId":"Per Id d'element","anchorName":"Per nom d'àncora","charset":"Conjunt de caràcters font enllaçat","cssClasses":"Classes del full d'estil","download":"Force Download","displayText":"Text a mostrar","emailAddress":"Adreça de correu electrònic","emailBody":"Cos del missatge","emailSubject":"Assumpte del missatge","id":"Id","info":"Informació de l'enllaç","langCode":"Direcció de l'idioma","langDir":"Direcció de l'idioma","langDirLTR":"D'esquerra a dreta (LTR)","langDirRTL":"De dreta a esquerra (RTL)","menu":"Edita l'enllaç","name":"Nom","noAnchors":"(No hi ha àncores disponibles en aquest document)","noEmail":"Si us plau, escrigui l'adreça correu electrònic","noUrl":"Si us plau, escrigui l'enllaç URL","noTel":"Please type the phone number","other":"<altre>","phoneNumber":"Phone number","popupDependent":"Depenent (Netscape)","popupFeatures":"Característiques finestra popup","popupFullScreen":"Pantalla completa (IE)","popupLeft":"Posició esquerra","popupLocationBar":"Barra d'adreça","popupMenuBar":"Barra de menú","popupResizable":"Redimensionable","popupScrollBars":"Barres d'scroll","popupStatusBar":"Barra d'estat","popupToolbar":"Barra d'eines","popupTop":"Posició dalt","rel":"Relació","selectAnchor":"Selecciona una àncora","styles":"Estil","tabIndex":"Index de Tab","target":"Destí","targetFrame":"<marc>","targetFrameName":"Nom del marc de destí","targetPopup":"<finestra emergent>","targetPopupName":"Nom finestra popup","title":"Enllaç","toAnchor":"Àncora en aquesta pàgina","toEmail":"Correu electrònic","toUrl":"URL","toPhone":"Phone","toolbar":"Insereix/Edita enllaç","type":"Tipus d'enllaç","unlink":"Elimina l'enllaç","upload":"Puja"},"list":{"bulletedlist":"Llista de pics","numberedlist":"Llista numerada"},"liststyle":{"bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insereix el paràgraf aquí"},"maximize":{"maximize":"Maximitza","minimize":"Minimitza"},"newpage":{"toolbar":"Nova pàgina"},"pagebreak":{"alt":"Salt de pàgina","toolbar":"Insereix salt de pàgina"},"pastetext":{"button":"Enganxa com a text no formatat","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Enganxa com a text no formatat"},"pastefromword":{"confirmCleanup":"El text que voleu enganxar sembla provenir de Word. Voleu netejar aquest text abans que sigui enganxat?","error":"No ha estat possible netejar les dades enganxades degut a un error intern","title":"Enganxa des del Word","toolbar":"Enganxa des del Word"},"preview":{"preview":"Visualització prèvia"},"print":{"toolbar":"Imprimeix"},"removeformat":{"toolbar":"Elimina Format"},"save":{"toolbar":"Desa"},"selectall":{"toolbar":"Selecciona-ho tot"},"showblocks":{"toolbar":"Mostra els blocs"},"sourcearea":{"toolbar":"Codi font"},"specialchar":{"options":"Opcions de caràcters especials","title":"Selecciona el caràcter especial","toolbar":"Insereix caràcter especial"},"scayt":{"btn_about":"Quant a l'SCAYT","btn_dictionaries":"Diccionaris","btn_disable":"Deshabilita SCAYT","btn_enable":"Habilitat l'SCAYT","btn_langs":"Idiomes","btn_options":"Opcions","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Estil","panelTitle":"Estils de format","panelTitle1":"Estils de bloc","panelTitle2":"Estils incrustats","panelTitle3":"Estils d'objecte"},"table":{"border":"Mida vora","caption":"Títol","cell":{"menu":"Cel·la","insertBefore":"Insereix abans","insertAfter":"Insereix després","deleteCell":"Suprimeix","merge":"Fusiona","mergeRight":"Fusiona a la dreta","mergeDown":"Fusiona avall","splitHorizontal":"Divideix horitzontalment","splitVertical":"Divideix verticalment","title":"Propietats de la cel·la","cellType":"Tipus de cel·la","rowSpan":"Expansió de files","colSpan":"Expansió de columnes","wordWrap":"Ajustar al contingut","hAlign":"Alineació Horizontal","vAlign":"Alineació Vertical","alignBaseline":"A la línia base","bgColor":"Color de fons","borderColor":"Color de la vora","data":"Dades","header":"Capçalera","yes":"Sí","no":"No","invalidWidth":"L'amplada de cel·la ha de ser un nombre.","invalidHeight":"L'alçada de cel·la ha de ser un nombre.","invalidRowSpan":"L'expansió de files ha de ser un nombre enter.","invalidColSpan":"L'expansió de columnes ha de ser un nombre enter.","chooseColor":"Trieu"},"cellPad":"Encoixinament de cel·les","cellSpace":"Espaiat de cel·les","column":{"menu":"Columna","insertBefore":"Insereix columna abans de","insertAfter":"Insereix columna darrera","deleteColumn":"Suprimeix una columna"},"columns":"Columnes","deleteTable":"Suprimeix la taula","headers":"Capçaleres","headersBoth":"Ambdues","headersColumn":"Primera columna","headersNone":"Cap","headersRow":"Primera fila","invalidBorder":"El gruix de la vora ha de ser un nombre.","invalidCellPadding":"L'encoixinament de cel·la ha de ser un nombre.","invalidCellSpacing":"L'espaiat de cel·la ha de ser un nombre.","invalidCols":"El nombre de columnes ha de ser un nombre major que 0.","invalidHeight":"L'alçada de la taula ha de ser un nombre.","invalidRows":"El nombre de files ha de ser un nombre major que 0.","invalidWidth":"L'amplada de la taula ha de ser un nombre.","menu":"Propietats de la taula","row":{"menu":"Fila","insertBefore":"Insereix fila abans de","insertAfter":"Insereix fila darrera","deleteRow":"Suprimeix una fila"},"rows":"Files","summary":"Resum","title":"Propietats de la taula","toolbar":"Taula","widthPc":"percentatge","widthPx":"píxels","widthUnit":"unitat d'amplada"},"undo":{"redo":"Refés","undo":"Desfés"},"widget":{"move":"Clicar i arrossegar per moure","label":"%1 widget"},"uploadwidget":{"abort":"Pujada cancel·lada per l'usuari.","doneOne":"Fitxer pujat correctament.","doneMany":"%1 fitxers pujats correctament.","uploadOne":"Pujant fitxer ({percentage}%)...","uploadMany":"Pujant fitxers, {current} de {max} finalitzats ({percentage}%)..."},"wsc":{"btnIgnore":"Ignora","btnIgnoreAll":"Ignora-les totes","btnReplace":"Canvia","btnReplaceAll":"Canvia-les totes","btnUndo":"Desfés","changeTo":"Reemplaça amb","errorLoading":"Error carregant el servidor: %s.","ieSpellDownload":"Verificació ortogràfica no instal·lada. Voleu descarregar-ho ara?","manyChanges":"Verificació ortogràfica: s'han canviat %1 paraules","noChanges":"Verificació ortogràfica: no s'ha canviat cap paraula","noMispell":"Verificació ortogràfica acabada: no hi ha cap paraula mal escrita","noSuggestions":"Cap suggeriment","notAvailable":"El servei no es troba disponible ara.","notInDic":"No és al diccionari","oneChange":"Verificació ortogràfica: s'ha canviat una paraula","progress":"Verificació ortogràfica en curs...","title":"Comprova l'ortografia","toolbar":"Revisa l'ortografia"}};
bt-source/panel/BTPanel/static/ckeditor/lang/cs.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['cs']={"editor":"Textový editor","editorPanel":"Panel textového editoru","common":{"editorHelp":"Stiskněte ALT 0 pro nápovědu","browseServer":"Vybrat na serveru","url":"URL","protocol":"Protokol","upload":"Odeslat","uploadSubmit":"Odeslat na server","image":"Obrázek","flash":"Flash","form":"Formulář","checkbox":"Zaškrtávací políčko","radio":"Přepínač","textField":"Textové pole","textarea":"Textová oblast","hiddenField":"Skryté pole","button":"Tlačítko","select":"Seznam","imageButton":"Obrázkové tlačítko","notSet":"<nenastaveno>","id":"Id","name":"Jméno","langDir":"Směr jazyka","langDirLtr":"Zleva doprava (LTR)","langDirRtl":"Zprava doleva (RTL)","langCode":"Kód jazyka","longDescr":"Dlouhý popis URL","cssClass":"Třída stylu","advisoryTitle":"Pomocný titulek","cssStyle":"Styl","ok":"OK","cancel":"Zrušit","close":"Zavřít","preview":"Náhled","resize":"Uchopit pro změnu velikosti","generalTab":"Obecné","advancedTab":"Rozšířené","validateNumberFailed":"Zadaná hodnota není číselná.","confirmNewPage":"Jakékoliv neuložené změny obsahu budou ztraceny. Skutečně chcete otevřít novou stránku?","confirmCancel":"Některá z nastavení byla změněna. Skutečně chcete zavřít dialogové okno?","options":"Nastavení","target":"Cíl","targetNew":"Nové okno (_blank)","targetTop":"Okno nejvyšší úrovně (_top)","targetSelf":"Stejné okno (_self)","targetParent":"Rodičovské okno (_parent)","langDirLTR":"Zleva doprava (LTR)","langDirRTL":"Zprava doleva (RTL)","styles":"Styly","cssClasses":"Třídy stylů","width":"Šířka","height":"Výška","align":"Zarovnání","left":"Vlevo","right":"Vpravo","center":"Na střed","justify":"Zarovnat do bloku","alignLeft":"Zarovnat vlevo","alignRight":"Zarovnat vpravo","alignCenter":"Zarovnat na střed","alignTop":"Nahoru","alignMiddle":"Na střed","alignBottom":"Dolů","alignNone":"Žádné","invalidValue":"Neplatná hodnota.","invalidHeight":"Zadaná výška musí být číslo.","invalidWidth":"Šířka musí být číslo.","invalidLength":"Hodnota určená pro pole \"%1\" musí být kladné číslo bez nebo s platnou jednotkou míry (%2).","invalidCssLength":"Hodnota určená pro pole \"%1\" musí být kladné číslo bez nebo s platnou jednotkou míry CSS (px, %, in, cm, mm, em, ex, pt, nebo pc).","invalidHtmlLength":"Hodnota určená pro pole \"%1\" musí být kladné číslo bez nebo s platnou jednotkou míry HTML (px nebo %).","invalidInlineStyle":"Hodnota určená pro řádkový styl se musí skládat z jedné nebo více n-tic ve formátu \"název : hodnota\", oddělené středníky","cssLengthTooltip":"Zadejte číslo jako hodnotu v pixelech nebo číslo s platnou jednotkou CSS (px, %, v cm, mm, em, ex, pt, nebo pc).","unavailable":"%1<span class=\"cke_accessibility\">, nedostupné</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Mezerník","35":"Konec","36":"Domů","46":"Smazat","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Klávesová zkratka","optionDefault":"Výchozí"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"O aplikaci CKEditor 4","moreInfo":"Pro informace o lincenci navštivte naši webovou stránku:"},"basicstyles":{"bold":"Tučné","italic":"Kurzíva","strike":"Přeškrtnuté","subscript":"Dolní index","superscript":"Horní index","underline":"Podtržené"},"bidi":{"ltr":"Směr textu zleva doprava","rtl":"Směr textu zprava doleva"},"blockquote":{"toolbar":"Citace"},"notification":{"closed":"Oznámení zavřeno."},"toolbar":{"toolbarCollapse":"Skrýt panel nástrojů","toolbarExpand":"Zobrazit panel nástrojů","toolbarGroups":{"document":"Dokument","clipboard":"Schránka/Zpět","editing":"Úpravy","forms":"Formuláře","basicstyles":"Základní styly","paragraph":"Odstavec","links":"Odkazy","insert":"Vložit","styles":"Styly","colors":"Barvy","tools":"Nástroje"},"toolbars":"Panely nástrojů editoru"},"clipboard":{"copy":"Kopírovat","copyError":"Bezpečnostní nastavení vašeho prohlížeče nedovolují editoru spustit funkci pro kopírování zvoleného textu do schránky. Prosím zkopírujte zvolený text do schránky pomocí klávesnice (Ctrl/Cmd+C).","cut":"Vyjmout","cutError":"Bezpečnostní nastavení vašeho prohlížeče nedovolují editoru spustit funkci pro vyjmutí zvoleného textu do schránky. Prosím vyjměte zvolený text do schránky pomocí klávesnice (Ctrl/Cmd+X).","paste":"Vložit","pasteNotification":"Stiskněte %1 pro vložení. Váš prohlížeč nepodporuje vkládání pomocí tlačítka na panelu nástrojů nebo volby kontextového menu.","pasteArea":"Oblast vkládání","pasteMsg":"Vložte svůj obsah do oblasti níže a stiskněte OK."},"colorbutton":{"auto":"Automaticky","bgColorTitle":"Barva pozadí","colors":{"000":"Černá","800000":"Kaštanová","8B4513":"Sedlová hněď","2F4F4F":"Tmavě bledě šedá","008080":"Čírka","000080":"Námořnická modř","4B0082":"Inkoustová","696969":"Tmavě šedá","B22222":"Pálená cihla","A52A2A":"Hnědá","DAA520":"Zlatý prut","006400":"Tmavě zelená","40E0D0":"Tyrkisová","0000CD":"Středně modrá","800080":"Purpurová","808080":"Šedá","F00":"Červená","FF8C00":"Tmavě oranžová","FFD700":"Zlatá","008000":"Zelená","0FF":"Azurová","00F":"Modrá","EE82EE":"Fialová","A9A9A9":"Kalně šedá","FFA07A":"Světle lososová","FFA500":"Oranžová","FFFF00":"Žlutá","00FF00":"Limetková","AFEEEE":"Bledě tyrkisová","ADD8E6":"Světle modrá","DDA0DD":"Švestková","D3D3D3":"Světle šedá","FFF0F5":"Levandulově ruměnná","FAEBD7":"Antická bílá","FFFFE0":"Světle žlutá","F0FFF0":"Medová rosa","F0FFFF":"Azurová","F0F8FF":"Alenčina modrá","E6E6FA":"Levandulová","FFF":"Bílá","1ABC9C":"Silná azurová","2ECC71":"Emeraldová","3498DB":"Jasně modrá","9B59B6":"Ametystová","4E5F70":"Šedomodrá","F1C40F":"Sytá žlutá","16A085":"Tmavě azurová","27AE60":"Tmavě emeraldová","2980B9":"Silná modrá","8E44AD":"Tmavě fialová","2C3E50":"Odsycená modrá","F39C12":"Oranžová","E67E22":"Mrkvová","E74C3C":"Bledě červená","ECF0F1":"Světle stříbrná","95A5A6":"Světlě šedoazurová","DDD":"Světle šedá","D35400":"Dýňová","C0392B":"Silná červená","BDC3C7":"Stříbrná","7F8C8D":"Šedoazurová","999":"Tmavošedá"},"more":"Více barev...","panelTitle":"Barvy","textColorTitle":"Barva textu"},"colordialog":{"clear":"Vyčistit","highlight":"Zvýraznit","options":"Nastavení barvy","selected":"Vybráno","title":"Výběr barvy"},"templates":{"button":"Šablony","emptyListMsg":"(Není definována žádná šablona)","insertOption":"Nahradit aktuální obsah","options":"Nastavení šablon","selectPromptMsg":"Prosím zvolte šablonu pro otevření v editoru<br>(aktuální obsah editoru bude ztracen):","title":"Šablony obsahu"},"contextmenu":{"options":"Nastavení kontextové nabídky"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Nápovědní titulek","cssClassInputLabel":"Třídy stylů","edit":"Změnit Div","inlineStyleInputLabel":"Vnitřní styly","langDirLTRLabel":"Zleva doprava (LTR)","langDirLabel":"Směr jazyka","langDirRTLLabel":"Zprava doleva (RTL)","languageCodeInputLabel":" Kód jazyka","remove":"Odstranit Div","styleSelectLabel":"Styly","title":"Vytvořit Div kontejner","toolbar":"Vytvořit Div kontejner"},"elementspath":{"eleLabel":"Cesta objektu","eleTitle":"%1 objekt"},"filetools":{"loadError":"Při čtení souboru došlo k chybě.","networkError":"Při nahrávání souboru došlo k chybě v síti.","httpError404":"Při nahrávání souboru došlo k chybě HTTP (404: Soubor nenalezen).","httpError403":"Při nahrávání souboru došlo k chybě HTTP (403: Zakázáno).","httpError":"Při nahrávání souboru došlo k chybě HTTP (chybový stav: %1).","noUrlError":"URL pro nahrání není zadána.","responseError":"Nesprávná odpověď serveru."},"find":{"find":"Hledat","findOptions":"Možnosti hledání","findWhat":"Co hledat:","matchCase":"Rozlišovat velikost písma","matchCyclic":"Procházet opakovaně","matchWord":"Pouze celá slova","notFoundMsg":"Hledaný text nebyl nalezen.","replace":"Nahradit","replaceAll":"Nahradit vše","replaceSuccessMsg":"%1 nahrazení.","replaceWith":"Čím nahradit:","title":"Najít a nahradit"},"fakeobjects":{"anchor":"Záložka","flash":"Flash animace","hiddenfield":"Skryté pole","iframe":"IFrame","unknown":"Neznámý objekt"},"flash":{"access":"Přístup ke skriptu","accessAlways":"Vždy","accessNever":"Nikdy","accessSameDomain":"Ve stejné doméně","alignAbsBottom":"Zcela dolů","alignAbsMiddle":"Doprostřed","alignBaseline":"Na účaří","alignTextTop":"Na horní okraj textu","bgcolor":"Barva pozadí","chkFull":"Povolit celoobrazovkový režim","chkLoop":"Opakování","chkMenu":"Nabídka Flash","chkPlay":"Automatické spuštění","flashvars":"Proměnné pro Flash","hSpace":"Horizontální mezera","properties":"Vlastnosti Flashe","propertiesTab":"Vlastnosti","quality":"Kvalita","qualityAutoHigh":"Vysoká - auto","qualityAutoLow":"Nízká - auto","qualityBest":"Nejlepší","qualityHigh":"Vysoká","qualityLow":"Nejnižší","qualityMedium":"Střední","scale":"Zobrazit","scaleAll":"Zobrazit vše","scaleFit":"Přizpůsobit","scaleNoBorder":"Bez okraje","title":"Vlastnosti Flashe","vSpace":"Vertikální mezera","validateHSpace":"Zadaná horizontální mezera musí být číslo.","validateSrc":"Zadejte prosím URL odkazu","validateVSpace":"Zadaná vertikální mezera musí být číslo.","windowMode":"Režim okna","windowModeOpaque":"Neprůhledné","windowModeTransparent":"Průhledné","windowModeWindow":"Okno"},"font":{"fontSize":{"label":"Velikost","voiceLabel":"Velikost písma","panelTitle":"Velikost"},"label":"Písmo","panelTitle":"Písmo","voiceLabel":"Písmo"},"forms":{"button":{"title":"Vlastnosti tlačítka","text":"Popisek","type":"Typ","typeBtn":"Tlačítko","typeSbm":"Odeslat","typeRst":"Obnovit"},"checkboxAndRadio":{"checkboxTitle":"Vlastnosti zaškrtávacího políčka","radioTitle":"Vlastnosti přepínače","value":"Hodnota","selected":"Zaškrtnuto","required":"Vyžadováno"},"form":{"title":"Vlastnosti formuláře","menu":"Vlastnosti formuláře","action":"Akce","method":"Metoda","encoding":"Kódování"},"hidden":{"title":"Vlastnosti skrytého pole","name":"Název","value":"Hodnota"},"select":{"title":"Vlastnosti seznamu","selectInfo":"Info","opAvail":"Dostupná nastavení","value":"Hodnota","size":"Velikost","lines":"Řádků","chkMulti":"Povolit mnohonásobné výběry","required":"Vyžadováno","opText":"Text","opValue":"Hodnota","btnAdd":"Přidat","btnModify":"Změnit","btnUp":"Nahoru","btnDown":"Dolů","btnSetValue":"Nastavit jako vybranou hodnotu","btnDelete":"Smazat"},"textarea":{"title":"Vlastnosti textové oblasti","cols":"Sloupců","rows":"Řádků"},"textfield":{"title":"Vlastnosti textového pole","name":"Název","value":"Hodnota","charWidth":"Šířka ve znacích","maxChars":"Maximální počet znaků","required":"Vyžadováno","type":"Typ","typeText":"Text","typePass":"Heslo","typeEmail":"Email","typeSearch":"Hledat","typeTel":"Telefonní číslo","typeUrl":"URL"}},"format":{"label":"Formát","panelTitle":"Formát","tag_address":"Adresa","tag_div":"Normální (DIV)","tag_h1":"Nadpis 1","tag_h2":"Nadpis 2","tag_h3":"Nadpis 3","tag_h4":"Nadpis 4","tag_h5":"Nadpis 5","tag_h6":"Nadpis 6","tag_p":"Normální","tag_pre":"Naformátováno"},"horizontalrule":{"toolbar":"Vložit vodorovnou linku"},"iframe":{"border":"Zobrazit okraj","noUrl":"Zadejte prosím URL obsahu pro IFrame","scrolling":"Zapnout posuvníky","title":"Vlastnosti IFrame","toolbar":"IFrame"},"image":{"alt":"Alternativní text","border":"Okraje","btnUpload":"Odeslat na server","button2Img":"Skutečně chcete převést zvolené obrázkové tlačítko na obyčejný obrázek?","hSpace":"Horizontální mezera","img2Button":"Skutečně chcete převést zvolený obrázek na obrázkové tlačítko?","infoTab":"Informace o obrázku","linkTab":"Odkaz","lockRatio":"Zámek","menu":"Vlastnosti obrázku","resetSize":"Původní velikost","title":"Vlastnosti obrázku","titleButton":"Vlastností obrázkového tlačítka","upload":"Odeslat","urlMissing":"Zadané URL zdroje obrázku nebylo nalezeno.","vSpace":"Vertikální mezera","validateBorder":"Okraj musí být nastaven v celých číslech.","validateHSpace":"Horizontální mezera musí být nastavena v celých číslech.","validateVSpace":"Vertikální mezera musí být nastavena v celých číslech."},"indent":{"indent":"Zvětšit odsazení","outdent":"Zmenšit odsazení"},"smiley":{"options":"Nastavení smajlíků","title":"Vkládání smajlíků","toolbar":"Smajlíci"},"language":{"button":"Nastavit jazyk","remove":"Odstranit jazyk"},"link":{"acccessKey":"Přístupový klíč","advanced":"Rozšířené","advisoryContentType":"Pomocný typ obsahu","advisoryTitle":"Pomocný titulek","anchor":{"toolbar":"Záložka","menu":"Vlastnosti záložky","title":"Vlastnosti záložky","name":"Název záložky","errorName":"Zadejte prosím název záložky","remove":"Odstranit záložku"},"anchorId":"Podle Id objektu","anchorName":"Podle jména kotvy","charset":"Přiřazená znaková sada","cssClasses":"Třída stylu","download":"Vynutit stažení","displayText":"Zobrazit text","emailAddress":"E-mailová adresa","emailBody":"Tělo zprávy","emailSubject":"Předmět zprávy","id":"Id","info":"Informace o odkazu","langCode":"Kód jazyka","langDir":"Směr jazyka","langDirLTR":"Zleva doprava (LTR)","langDirRTL":"Zprava doleva (RTL)","menu":"Změnit odkaz","name":"Jméno","noAnchors":"(Ve stránce není definována žádná kotva!)","noEmail":"Zadejte prosím e-mailovou adresu","noUrl":"Zadejte prosím URL odkazu","noTel":"Vyplňte prosím telefonní číslo","other":"<jiný>","phoneNumber":"Telefonní číslo","popupDependent":"Závislost (Netscape)","popupFeatures":"Vlastnosti vyskakovacího okna","popupFullScreen":"Celá obrazovka (IE)","popupLeft":"Levý okraj","popupLocationBar":"Panel umístění","popupMenuBar":"Panel nabídky","popupResizable":"Umožňující měnit velikost","popupScrollBars":"Posuvníky","popupStatusBar":"Stavový řádek","popupToolbar":"Panel nástrojů","popupTop":"Horní okraj","rel":"Vztah","selectAnchor":"Vybrat kotvu","styles":"Styl","tabIndex":"Pořadí prvku","target":"Cíl","targetFrame":"<rámec>","targetFrameName":"Název cílového rámu","targetPopup":"<vyskakovací okno>","targetPopupName":"Název vyskakovacího okna","title":"Odkaz","toAnchor":"Kotva v této stránce","toEmail":"E-mail","toUrl":"URL","toPhone":"Telefon","toolbar":"Odkaz","type":"Typ odkazu","unlink":"Odstranit odkaz","upload":"Odeslat"},"list":{"bulletedlist":"Odrážky","numberedlist":"Číslování"},"liststyle":{"bulletedTitle":"Vlastnosti odrážek","circle":"Kroužky","decimal":"Arabská čísla (1, 2, 3, atd.)","disc":"Kolečka","lowerAlpha":"Malá latinka (a, b, c, d, e, atd.)","lowerRoman":"Malé římské (i, ii, iii, iv, v, atd.)","none":"Nic","notset":"<nenastaveno>","numberedTitle":"Vlastnosti číslování","square":"Čtverce","start":"Počátek","type":"Typ","upperAlpha":"Velká latinka (A, B, C, D, E, atd.)","upperRoman":"Velké římské (I, II, III, IV, V, atd.)","validateStartNumber":"Číslování musí začínat celým číslem."},"magicline":{"title":"zde vložit odstavec"},"maximize":{"maximize":"Maximalizovat","minimize":"Minimalizovat"},"newpage":{"toolbar":"Nová stránka"},"pagebreak":{"alt":"Konec stránky","toolbar":"Vložit konec stránky"},"pastetext":{"button":"Vložit jako čistý text","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Vložit jako čistý text"},"pastefromword":{"confirmCleanup":"Jak je vidět, vkládaný text je kopírován z Wordu. Chcete jej před vložením vyčistit?","error":"Z důvodu vnitřní chyby nebylo možné provést vyčištění vkládaného textu.","title":"Vložit z Wordu","toolbar":"Vložit z Wordu"},"preview":{"preview":"Náhled"},"print":{"toolbar":"Tisk"},"removeformat":{"toolbar":"Odstranit formátování"},"save":{"toolbar":"Uložit"},"selectall":{"toolbar":"Vybrat vše"},"showblocks":{"toolbar":"Ukázat bloky"},"sourcearea":{"toolbar":"Zdroj"},"specialchar":{"options":"Nastavení speciálních znaků","title":"Výběr speciálního znaku","toolbar":"Vložit speciální znaky"},"scayt":{"btn_about":"O aplikaci SCAYT","btn_dictionaries":"Slovníky","btn_disable":"Vypnout SCAYT","btn_enable":"Zapnout SCAYT","btn_langs":"Jazyky","btn_options":"Nastavení","text_title":"Kontrola pravopisu během psaní (SCAYT)"},"stylescombo":{"label":"Styl","panelTitle":"Formátovací styly","panelTitle1":"Blokové styly","panelTitle2":"Řádkové styly","panelTitle3":"Objektové styly"},"table":{"border":"Ohraničení","caption":"Popis","cell":{"menu":"Buňka","insertBefore":"Vložit buňku před","insertAfter":"Vložit buňku za","deleteCell":"Smazat buňky","merge":"Sloučit buňky","mergeRight":"Sloučit doprava","mergeDown":"Sloučit dolů","splitHorizontal":"Rozdělit buňky vodorovně","splitVertical":"Rozdělit buňky svisle","title":"Vlastnosti buňky","cellType":"Typ buňky","rowSpan":"Spojit řádky","colSpan":"Spojit sloupce","wordWrap":"Zalamování","hAlign":"Vodorovné zarovnání","vAlign":"Svislé zarovnání","alignBaseline":"Na účaří","bgColor":"Barva pozadí","borderColor":"Barva okraje","data":"Data","header":"Hlavička","yes":"Ano","no":"Ne","invalidWidth":"Šířka buňky musí být číslo.","invalidHeight":"Zadaná výška buňky musí být číslená.","invalidRowSpan":"Zadaný počet sloučených řádků musí být celé číslo.","invalidColSpan":"Zadaný počet sloučených sloupců musí být celé číslo.","chooseColor":"Výběr"},"cellPad":"Odsazení obsahu v buňce","cellSpace":"Vzdálenost buněk","column":{"menu":"Sloupec","insertBefore":"Vložit sloupec před","insertAfter":"Vložit sloupec za","deleteColumn":"Smazat sloupec"},"columns":"Sloupce","deleteTable":"Smazat tabulku","headers":"Záhlaví","headersBoth":"Obojí","headersColumn":"První sloupec","headersNone":"Žádné","headersRow":"První řádek","invalidBorder":"Zdaná velikost okraje musí být číselná.","invalidCellPadding":"Zadané odsazení obsahu v buňce musí být číselné.","invalidCellSpacing":"Zadaná vzdálenost buněk musí být číselná.","invalidCols":"Počet sloupců musí být číslo větší než 0.","invalidHeight":"Zadaná výška tabulky musí být číselná.","invalidRows":"Počet řádků musí být číslo větší než 0.","invalidWidth":"Šířka tabulky musí být číslo.","menu":"Vlastnosti tabulky","row":{"menu":"Řádek","insertBefore":"Vložit řádek před","insertAfter":"Vložit řádek za","deleteRow":"Smazat řádky"},"rows":"Řádky","summary":"Souhrn","title":"Vlastnosti tabulky","toolbar":"Tabulka","widthPc":"procent","widthPx":"bodů","widthUnit":"jednotka šířky"},"undo":{"redo":"Znovu","undo":"Zpět"},"widget":{"move":"Klepněte a táhněte pro přesunutí","label":"Ovládací prvek %1"},"uploadwidget":{"abort":"Nahrávání zrušeno uživatelem.","doneOne":"Soubor úspěšně nahrán.","doneMany":"Úspěšně nahráno %1 souborů.","uploadOne":"Nahrávání souboru ({percentage}%)...","uploadMany":"Nahrávání souborů, {current} z {max} hotovo ({percentage}%)..."},"wsc":{"btnIgnore":"Přeskočit","btnIgnoreAll":"Přeskakovat vše","btnReplace":"Zaměnit","btnReplaceAll":"Zaměňovat vše","btnUndo":"Zpět","changeTo":"Změnit na","errorLoading":"Chyba nahrávání služby aplikace z: %s.","ieSpellDownload":"Kontrola pravopisu není nainstalována. Chcete ji nyní stáhnout?","manyChanges":"Kontrola pravopisu dokončena: %1 slov změněno","noChanges":"Kontrola pravopisu dokončena: Beze změn","noMispell":"Kontrola pravopisu dokončena: Žádné pravopisné chyby nenalezeny","noSuggestions":"- žádné návrhy -","notAvailable":"Omlouváme se, ale služba nyní není dostupná.","notInDic":"Není ve slovníku","oneChange":"Kontrola pravopisu dokončena: Jedno slovo změněno","progress":"Probíhá kontrola pravopisu...","title":"Kontrola pravopisu","toolbar":"Zkontrolovat pravopis"}};
bt-source/panel/BTPanel/static/ckeditor/lang/cy.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['cy']={"editor":"Golygydd Testun Cyfoethog","editorPanel":"Panel Golygydd Testun Cyfoethog","common":{"editorHelp":"Gwasgwch ALT 0 am gymorth","browseServer":"Pori'r Gweinydd","url":"URL","protocol":"Protocol","upload":"Lanlwytho","uploadSubmit":"Anfon i'r Gweinydd","image":"Delwedd","flash":"Flash","form":"Ffurflen","checkbox":"Blwch ticio","radio":"Botwm Radio","textField":"Maes Testun","textarea":"Ardal Testun","hiddenField":"Maes Cudd","button":"Botwm","select":"Maes Dewis","imageButton":"Botwm Delwedd","notSet":"<heb osod>","id":"Id","name":"Name","langDir":"Cyfeiriad Iaith","langDirLtr":"Chwith i'r Dde (LTR)","langDirRtl":"Dde i'r Chwith (RTL)","langCode":"Cod Iaith","longDescr":"URL Disgrifiad Hir","cssClass":"Dosbarthiadau Dalen Arddull","advisoryTitle":"Teitl Cynghorol","cssStyle":"Arddull","ok":"Iawn","cancel":"Diddymu","close":"Cau","preview":"Rhagolwg","resize":"Ailfeintio","generalTab":"Cyffredinol","advancedTab":"Uwch","validateNumberFailed":"'Dyw'r gwerth hwn ddim yn rhif.","confirmNewPage":"Byddwch chi'n colli unrhyw newidiadau i'r cynnwys sydd heb eu cadw. Ydych am barhau i lwytho tudalen newydd?","confirmCancel":"Cafodd rhai o'r opsiynau eu newid. Ydych chi wir am gau'r deialog?","options":"Opsiynau","target":"Targed","targetNew":"Ffenest Newydd (_blank)","targetTop":"Ffenest ar y Brig (_top)","targetSelf":"Yr un Ffenest (_self)","targetParent":"Ffenest y Rhiant (_parent)","langDirLTR":"Chwith i'r Dde (LTR)","langDirRTL":"Dde i'r Chwith (RTL)","styles":"Arddull","cssClasses":"Dosbarthiadau Dalen Arddull","width":"Lled","height":"Uchder","align":"Alinio","left":"Chwith","right":"Dde","center":"Canol","justify":"Unioni","alignLeft":"Alinio i'r Chwith","alignRight":"Alinio i'r Dde","alignCenter":"Align Center","alignTop":"Brig","alignMiddle":"Canol","alignBottom":"Gwaelod","alignNone":"None","invalidValue":"Gwerth annilys.","invalidHeight":"Mae'n rhaid i'r uchder fod yn rhif.","invalidWidth":"Mae'n rhaid i'r lled fod yn rhif.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Mae'n rhaid i'r gwerth ar gyfer maes \"%1\" fod yn rhif positif gyda neu heb uned fesuriad CSS dilys (px, %, in, cm, mm, em, ex, pt, neu pc).","invalidHtmlLength":"Mae'n rhaid i'r gwerth ar gyfer maes \"%1\" fod yn rhif positif gyda neu heb uned fesuriad HTML dilys (px neu %).","invalidInlineStyle":"Mae'n rhaid i'r gwerth ar gyfer arddull mewn-llinell gynnwys un set neu fwy ar y fformat \"enw : gwerth\", wedi'u gwahanu gyda hanner colon.","cssLengthTooltip":"Rhowch rif am werth mewn picsel neu rhif gydag uned CSS dilys (px, %, in, cm, mm, em, pt neu pc).","unavailable":"%1<span class=\"cke_accessibility\">, ddim ar gael</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Hawlfraint &copy; $1. Cedwir pob hawl.","dlgTitle":"About CKEditor 4","moreInfo":"Am wybodaeth ynghylch trwyddedau, ewch i'n gwefan:"},"basicstyles":{"bold":"Bras","italic":"Italig","strike":"Llinell Trwyddo","subscript":"Is-sgript","superscript":"Uwchsgript","underline":"Tanlinellu"},"bidi":{"ltr":"Cyfeiriad testun o'r chwith i'r dde","rtl":"Cyfeiriad testun o'r dde i'r chwith"},"blockquote":{"toolbar":"Dyfyniad bloc"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Cyfangu'r Bar Offer","toolbarExpand":"Ehangu'r Bar Offer","toolbarGroups":{"document":"Dogfen","clipboard":"Clipfwrdd/Dadwneud","editing":"Golygu","forms":"Ffurflenni","basicstyles":"Arddulliau Sylfaenol","paragraph":"Paragraff","links":"Dolenni","insert":"Mewnosod","styles":"Arddulliau","colors":"Lliwiau","tools":"Offer"},"toolbars":"Bariau offer y golygydd"},"clipboard":{"copy":"Copïo","copyError":"'Dyw gosodiadau diogelwch eich porwr ddim yn caniatàu'r golygydd i gynnal 'gweithredoedd copïo' yn awtomatig. Defnyddiwch y bysellfwrdd (Ctrl/Cmd+C).","cut":"Torri","cutError":"Nid yw gosodiadau diogelwch eich porwr yn caniatàu'r golygydd i gynnal 'gweithredoedd torri' yn awtomatig. Defnyddiwch y bysellfwrdd (Ctrl/Cmd+X).","paste":"Gludo","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Ardal Gludo","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Awtomatig","bgColorTitle":"Lliw Cefndir","colors":{"000":"Du","800000":"Marwn","8B4513":"Brown Cyfrwy","2F4F4F":"Llechen Tywyll","008080":"Corhwyad","000080":"Nefi","4B0082":"Indigo","696969":"Llwyd Tywyll","B22222":"Bric Tân","A52A2A":"Brown","DAA520":"Rhoden Aur","006400":"Gwyrdd Tywyll","40E0D0":"Gwyrddlas","0000CD":"Glas Canolig","800080":"Porffor","808080":"Llwyd","F00":"Coch","FF8C00":"Oren Tywyll","FFD700":"Aur","008000":"Gwyrdd","0FF":"Cyan","00F":"Glas","EE82EE":"Fioled","A9A9A9":"Llwyd Pwl","FFA07A":"Samwn Golau","FFA500":"Oren","FFFF00":"Melyn","00FF00":"Leim","AFEEEE":"Gwyrddlas Golau","ADD8E6":"Glas Golau","DDA0DD":"Eirinen","D3D3D3":"Llwyd Golau","FFF0F5":"Gwrid Lafant","FAEBD7":"Gwyn Hynafol","FFFFE0":"Melyn Golau","F0FFF0":"Melwn Gwyrdd Golau","F0FFFF":"Aswr","F0F8FF":"Glas Alys","E6E6FA":"Lafant","FFF":"Gwyn","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Mwy o Liwiau...","panelTitle":"Lliwiau","textColorTitle":"Lliw Testun"},"colordialog":{"clear":"Clirio","highlight":"Uwcholeuo","options":"Opsiynau Lliw","selected":"Lliw a Ddewiswyd","title":"Dewis lliw"},"templates":{"button":"Templedi","emptyListMsg":"(Dim templedi wedi'u diffinio)","insertOption":"Amnewid y cynnwys go iawn","options":"Opsiynau Templedi","selectPromptMsg":"Dewiswch dempled i'w agor yn y golygydd","title":"Templedi Cynnwys"},"contextmenu":{"options":"Opsiynau Dewislen Cyd-destun"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Teitl Cynghorol","cssClassInputLabel":"Dosbarthiadau Ffeil Arddull","edit":"Golygu Div","inlineStyleInputLabel":"Arddull Mewn Llinell","langDirLTRLabel":"Chwith i'r Dde (LTR)","langDirLabel":"Cyfeiriad yr Iaith","langDirRTLLabel":"Dde i'r Chwith (RTL)","languageCodeInputLabel":" Cod Iaith","remove":"Tynnu Div","styleSelectLabel":"Arddull","title":"Creu Cynhwysydd Div","toolbar":"Creu Cynhwysydd Div"},"elementspath":{"eleLabel":"Llwybr elfennau","eleTitle":"Elfen %1"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Chwilio","findOptions":"Opsiynau Chwilio","findWhat":"Chwilio'r term:","matchCase":"Cydweddu'r cas","matchCyclic":"Cydweddu'n gylchol","matchWord":"Cydweddu gair cyfan","notFoundMsg":"Nid oedd y testun wedi'i ddarganfod.","replace":"Amnewid Un","replaceAll":"Amnewid Pob","replaceSuccessMsg":"Amnewidiwyd %1 achlysur.","replaceWith":"Amnewid gyda:","title":"Chwilio ac Amnewid"},"fakeobjects":{"anchor":"Angor","flash":"Animeiddiant Flash","hiddenfield":"Maes Cudd","iframe":"IFrame","unknown":"Gwrthrych Anhysbys"},"flash":{"access":"Mynediad Sgript","accessAlways":"Pob amser","accessNever":"Byth","accessSameDomain":"R'un parth","alignAbsBottom":"Gwaelod Abs","alignAbsMiddle":"Canol Abs","alignBaseline":"Baslinell","alignTextTop":"Testun Top","bgcolor":"Lliw cefndir","chkFull":"Caniatàu Sgrin Llawn","chkLoop":"Lwpio","chkMenu":"Galluogi Dewislen Flash","chkPlay":"AwtoChwarae","flashvars":"Newidynnau ar gyfer Flash","hSpace":"BwlchLl","properties":"Priodweddau Flash","propertiesTab":"Priodweddau","quality":"Ansawdd","qualityAutoHigh":"Uchel Awto","qualityAutoLow":"Isel Awto","qualityBest":"Gorau","qualityHigh":"Uchel","qualityLow":"Isel","qualityMedium":"Canolig","scale":"Graddfa","scaleAll":"Dangos pob","scaleFit":"Ffit Union","scaleNoBorder":"Dim Ymyl","title":"Priodweddau Flash","vSpace":"BwlchF","validateHSpace":"Rhaid i'r BwlchLl fod yn rhif.","validateSrc":"Ni all yr URL fod yn wag.","validateVSpace":"Rhaid i'r BwlchF fod yn rhif.","windowMode":"Modd ffenestr","windowModeOpaque":"Afloyw","windowModeTransparent":"Tryloyw","windowModeWindow":"Ffenestr"},"font":{"fontSize":{"label":"Maint","voiceLabel":"Maint y Ffont","panelTitle":"Maint y Ffont"},"label":"Ffont","panelTitle":"Enw'r Ffont","voiceLabel":"Ffont"},"forms":{"button":{"title":"Priodweddau Botymau","text":"Testun (Gwerth)","type":"Math","typeBtn":"Botwm","typeSbm":"Anfon","typeRst":"Ailosod"},"checkboxAndRadio":{"checkboxTitle":"Priodweddau Blwch Ticio","radioTitle":"Priodweddau Botwm Radio","value":"Gwerth","selected":"Dewiswyd","required":"Required"},"form":{"title":"Priodweddau Ffurflen","menu":"Priodweddau Ffurflen","action":"Gweithred","method":"Dull","encoding":"Amgodio"},"hidden":{"title":"Priodweddau Maes Cudd","name":"Enw","value":"Gwerth"},"select":{"title":"Priodweddau Maes Dewis","selectInfo":"Gwyb Dewis","opAvail":"Opsiynau ar Gael","value":"Gwerth","size":"Maint","lines":"llinellau","chkMulti":"Caniatàu aml-ddewisiadau","required":"Required","opText":"Testun","opValue":"Gwerth","btnAdd":"Ychwanegu","btnModify":"Newid","btnUp":"Lan","btnDown":"Lawr","btnSetValue":"Gosod fel gwerth a ddewiswyd","btnDelete":"Dileu"},"textarea":{"title":"Priodweddau Ardal Testun","cols":"Colofnau","rows":"Rhesi"},"textfield":{"title":"Priodweddau Maes Testun","name":"Enw","value":"Gwerth","charWidth":"Lled Nod","maxChars":"Uchafswm y Nodau","required":"Required","type":"Math","typeText":"Testun","typePass":"Cyfrinair","typeEmail":"Ebost","typeSearch":"Chwilio","typeTel":"Rhif Ffôn","typeUrl":"URL"}},"format":{"label":"Fformat","panelTitle":"Fformat Paragraff","tag_address":"Cyfeiriad","tag_div":"Normal (DIV)","tag_h1":"Pennawd 1","tag_h2":"Pennawd 2","tag_h3":"Pennawd 3","tag_h4":"Pennawd 4","tag_h5":"Pennawd 5","tag_h6":"Pennawd 6","tag_p":"Normal","tag_pre":"Wedi'i Fformatio"},"horizontalrule":{"toolbar":"Mewnosod Llinell Lorweddol"},"iframe":{"border":"Dangos ymyl y ffrâm","noUrl":"Rhowch URL yr iframe","scrolling":"Galluogi bariau sgrolio","title":"Priodweddau IFrame","toolbar":"IFrame"},"image":{"alt":"Testun Amgen","border":"Ymyl","btnUpload":"Anfon i'r Gweinydd","button2Img":"Ydych am drawsffurfio'r botwm ddelwedd hwn ar ddelwedd syml?","hSpace":"BwlchLl","img2Button":"Ydych am drawsffurfio'r ddelwedd hon ar fotwm delwedd?","infoTab":"Gwyb Delwedd","linkTab":"Dolen","lockRatio":"Cloi Cymhareb","menu":"Priodweddau Delwedd","resetSize":"Ailosod Maint","title":"Priodweddau Delwedd","titleButton":"Priodweddau Botwm Delwedd","upload":"Lanlwytho","urlMissing":"URL gwreiddiol y ddelwedd ar goll.","vSpace":"BwlchF","validateBorder":"Rhaid i'r ymyl fod yn gyfanrif.","validateHSpace":"Rhaid i'r HSpace fod yn gyfanrif.","validateVSpace":"Rhaid i'r VSpace fod yn gyfanrif."},"indent":{"indent":"Cynyddu'r Mewnoliad","outdent":"Lleihau'r Mewnoliad"},"smiley":{"options":"Opsiynau Gwenogluniau","title":"Mewnosod Gwenoglun","toolbar":"Gwenoglun"},"language":{"button":"Gosod iaith","remove":"Tynnu iaith"},"link":{"acccessKey":"Allwedd Mynediad","advanced":"Uwch","advisoryContentType":"Math y Cynnwys Cynghorol","advisoryTitle":"Teitl Cynghorol","anchor":{"toolbar":"Angor","menu":"Golygu'r Angor","title":"Priodweddau'r Angor","name":"Enw'r Angor","errorName":"Teipiwch enw'r angor","remove":"Tynnwch yr Angor"},"anchorId":"Gan Id yr Elfen","anchorName":"Gan Enw'r Angor","charset":"Set Nodau'r Adnodd Cysylltiedig","cssClasses":"Dosbarthiadau Dalen Arddull","download":"Force Download","displayText":"Display Text","emailAddress":"Cyfeiriad E-Bost","emailBody":"Corff y Neges","emailSubject":"Testun y Neges","id":"Id","info":"Gwyb y Ddolen","langCode":"Cod Iaith","langDir":"Cyfeiriad Iaith","langDirLTR":"Chwith i'r Dde (LTR)","langDirRTL":"Dde i'r Chwith (RTL)","menu":"Golygu Dolen","name":"Enw","noAnchors":"(Dim angorau ar gael yn y ddogfen)","noEmail":"Teipiwch gyfeiriad yr e-bost","noUrl":"Teipiwch URL y ddolen","noTel":"Please type the phone number","other":"<eraill>","phoneNumber":"Phone number","popupDependent":"Dibynnol (Netscape)","popupFeatures":"Nodweddion Ffenestr Bop","popupFullScreen":"Sgrin Llawn (IE)","popupLeft":"Safle Chwith","popupLocationBar":"Bar Safle","popupMenuBar":"Dewislen","popupResizable":"Ailfeintiol","popupScrollBars":"Barrau Sgrolio","popupStatusBar":"Bar Statws","popupToolbar":"Bar Offer","popupTop":"Safle Top","rel":"Perthynas","selectAnchor":"Dewiswch Angor","styles":"Arddull","tabIndex":"Indecs Tab","target":"Targed","targetFrame":"<ffrâm>","targetFrameName":"Enw Ffrâm y Targed","targetPopup":"<ffenestr bop>","targetPopupName":"Enw Ffenestr Bop","title":"Dolen","toAnchor":"Dolen at angor yn y testun","toEmail":"E-bost","toUrl":"URL","toPhone":"Phone","toolbar":"Dolen","type":"Math y Ddolen","unlink":"Datgysylltu","upload":"Lanlwytho"},"list":{"bulletedlist":"Mewnosod/Tynnu Rhestr Bwled","numberedlist":"Mewnosod/Tynnu Rhestr Rhifol"},"liststyle":{"bulletedTitle":"Priodweddau Rhestr Fwled","circle":"Cylch","decimal":"Degol (1, 2, 3, ayyb.)","disc":"Disg","lowerAlpha":"Alffa Is (a, b, c, d, e, ayyb.)","lowerRoman":"Rhufeinig Is (i, ii, iii, iv, v, ayyb.)","none":"Dim","notset":"<heb osod>","numberedTitle":"Priodweddau Rhestr Rifol","square":"Sgwâr","start":"Dechrau","type":"Math","upperAlpha":"Alffa Uwch (A, B, C, D, E, ayyb.)","upperRoman":"Rhufeinig Uwch (I, II, III, IV, V, ayyb.)","validateStartNumber":"Rhaid bod y rhif cychwynnol yn gyfanrif."},"magicline":{"title":"Mewnosod paragraff yma"},"maximize":{"maximize":"Mwyhau","minimize":"Lleihau"},"newpage":{"toolbar":"Tudalen Newydd"},"pagebreak":{"alt":"Toriad Tudalen","toolbar":"Mewnosod Toriad Tudalen i Argraffu"},"pastetext":{"button":"Gludo fel testun plaen","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Gludo fel Testun Plaen"},"pastefromword":{"confirmCleanup":"Mae'r testun rydych chi am ludo wedi'i gopïo o Word. Ydych chi am ei lanhau cyn ei ludo?","error":"Doedd dim modd glanhau y data a ludwyd oherwydd gwall mewnol","title":"Gludo o Word","toolbar":"Gludo o Word"},"preview":{"preview":"Rhagolwg"},"print":{"toolbar":"Argraffu"},"removeformat":{"toolbar":"Tynnu Fformat"},"save":{"toolbar":"Cadw"},"selectall":{"toolbar":"Dewis Popeth"},"showblocks":{"toolbar":"Dangos Blociau"},"sourcearea":{"toolbar":"HTML"},"specialchar":{"options":"Opsiynau Nodau Arbennig","title":"Dewis Nod Arbennig","toolbar":"Mewnosod Nod Arbennig"},"scayt":{"btn_about":"Ynghylch SCAYT","btn_dictionaries":"Geiriaduron","btn_disable":"Analluogi SCAYT","btn_enable":"Galluogi SCAYT","btn_langs":"Ieithoedd","btn_options":"Opsiynau","text_title":"Gwirio'r Sillafu Wrth Deipio"},"stylescombo":{"label":"Arddulliau","panelTitle":"Arddulliau Fformatio","panelTitle1":"Arddulliau Bloc","panelTitle2":"Arddulliau Mewnol","panelTitle3":"Arddulliau Gwrthrych"},"table":{"border":"Maint yr Ymyl","caption":"Pennawd","cell":{"menu":"Cell","insertBefore":"Mewnosod Cell Cyn","insertAfter":"Mewnosod Cell Ar Ôl","deleteCell":"Dileu Celloedd","merge":"Cyfuno Celloedd","mergeRight":"Cyfuno i'r Dde","mergeDown":"Cyfuno i Lawr","splitHorizontal":"Hollti'r Gell yn Lorweddol","splitVertical":"Hollti'r Gell yn Fertigol","title":"Priodweddau'r Gell","cellType":"Math y Gell","rowSpan":"Rhychwant Rhesi","colSpan":"Rhychwant Colofnau","wordWrap":"Lapio Geiriau","hAlign":"Aliniad Llorweddol","vAlign":"Aliniad Fertigol","alignBaseline":"Baslinell","bgColor":"Lliw Cefndir","borderColor":"Lliw Ymyl","data":"Data","header":"Pennyn","yes":"Ie","no":"Na","invalidWidth":"Mae'n rhaid i led y gell fod yn rhif.","invalidHeight":"Mae'n rhaid i uchder y gell fod yn rhif.","invalidRowSpan":"Mae'n rhaid i rychwant y rhesi fod yn gyfanrif.","invalidColSpan":"Mae'n rhaid i rychwant y colofnau fod yn gyfanrif.","chooseColor":"Dewis"},"cellPad":"Padio'r gell","cellSpace":"Bylchiad y gell","column":{"menu":"Colofn","insertBefore":"Mewnosod Colofn Cyn","insertAfter":"Mewnosod Colofn Ar Ôl","deleteColumn":"Dileu Colofnau"},"columns":"Colofnau","deleteTable":"Dileu Tabl","headers":"Penynnau","headersBoth":"Y Ddau","headersColumn":"Colofn gyntaf","headersNone":"Dim","headersRow":"Rhes gyntaf","invalidBorder":"Mae'n rhaid i faint yr ymyl fod yn rhif.","invalidCellPadding":"Mae'n rhaid i badiad y gell fod yn rhif positif.","invalidCellSpacing":"Mae'n rhaid i fylchiad y gell fod yn rhif positif.","invalidCols":"Mae'n rhaid cael o leiaf un golofn.","invalidHeight":"Mae'n rhaid i uchder y tabl fod yn rhif.","invalidRows":"Mae'n rhaid cael o leiaf un rhes.","invalidWidth":"Mae'n rhaid i led y tabl fod yn rhif.","menu":"Priodweddau'r Tabl","row":{"menu":"Rhes","insertBefore":"Mewnosod Rhes Cyn","insertAfter":"Mewnosod Rhes Ar Ôl","deleteRow":"Dileu Rhesi"},"rows":"Rhesi","summary":"Crynodeb","title":"Priodweddau'r Tabl","toolbar":"Tabl","widthPc":"y cant","widthPx":"picsel","widthUnit":"uned lled"},"undo":{"redo":"Ailwneud","undo":"Dadwneud"},"widget":{"move":"Clcio a llusgo i symud","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Anwybyddu Un","btnIgnoreAll":"Anwybyddu Pob","btnReplace":"Amnewid Un","btnReplaceAll":"Amnewid Pob","btnUndo":"Dadwneud","changeTo":"Newid i","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Gwirydd sillafu heb ei arsefydlu. A ydych am ei lawrlwytho nawr?","manyChanges":"Gwirio sillafu wedi gorffen: Newidiwyd %1 gair","noChanges":"Gwirio sillafu wedi gorffen: Dim newidiadau","noMispell":"Gwirio sillafu wedi gorffen: Dim camsillaf.","noSuggestions":"- Dim awgrymiadau -","notAvailable":"Nid yw'r gwasanaeth hwn ar gael yn bresennol.","notInDic":"Nid i'w gael yn y geiriadur","oneChange":"Gwirio sillafu wedi gorffen: Newidiwyd 1 gair","progress":"Gwirio sillafu yn ar y gweill...","title":"Gwirio Sillafu","toolbar":"Gwirio Sillafu"}};
bt-source/panel/BTPanel/static/ckeditor/lang/da.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['da']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Tryk ALT 0 for hjælp","browseServer":"Gennemse...","url":"URL","protocol":"Protokol","upload":"Upload","uploadSubmit":"Upload","image":"Indsæt billede","flash":"Indsæt Flash","form":"Indsæt formular","checkbox":"Indsæt afkrydsningsfelt","radio":"Indsæt alternativknap","textField":"Indsæt tekstfelt","textarea":"Indsæt tekstboks","hiddenField":"Indsæt skjult felt","button":"Indsæt knap","select":"Indsæt liste","imageButton":"Indsæt billedknap","notSet":"<intet valgt>","id":"Id","name":"Navn","langDir":"Tekstretning","langDirLtr":"Fra venstre mod højre (LTR)","langDirRtl":"Fra højre mod venstre (RTL)","langCode":"Sprogkode","longDescr":"Udvidet beskrivelse","cssClass":"Typografiark (CSS)","advisoryTitle":"Titel","cssStyle":"Typografi (CSS)","ok":"OK","cancel":"Annullér","close":"Luk","preview":"Forhåndsvisning","resize":"Træk for at skalere","generalTab":"Generelt","advancedTab":"Avanceret","validateNumberFailed":"Værdien er ikke et tal.","confirmNewPage":"Alt indhold, der ikke er blevet gemt, vil gå tabt. Er du sikker på, at du vil indlæse en ny side?","confirmCancel":"Nogle af indstillingerne er blevet ændret. Er du sikker på, at du vil lukke vinduet?","options":"Vis muligheder","target":"Mål","targetNew":"Nyt vindue (_blank)","targetTop":"Øverste vindue (_top)","targetSelf":"Samme vindue (_self)","targetParent":"Samme vindue (_parent)","langDirLTR":"Venstre til højre (LTR)","langDirRTL":"Højre til venstre (RTL)","styles":"Style","cssClasses":"Stylesheetklasser","width":"Bredde","height":"Højde","align":"Justering","left":"Venstre","right":"Højre","center":"Center","justify":"Lige margener","alignLeft":"Venstrestillet","alignRight":"Højrestillet","alignCenter":"Centreret","alignTop":"Øverst","alignMiddle":"Centreret","alignBottom":"Nederst","alignNone":"Ingen","invalidValue":"Ugyldig værdi.","invalidHeight":"Højde skal være et tal.","invalidWidth":"Bredde skal være et tal.","invalidLength":"Værdien angivet for feltet \"%1\" skal være et positivt heltal med eller uden en gyldig måleenhed (%2).","invalidCssLength":"Værdien specificeret for \"%1\" feltet skal være et positivt nummer med eller uden en CSS måleenhed (px, %, in, cm, mm, em, ex, pt, eller pc).","invalidHtmlLength":"Værdien specificeret for \"%1\" feltet skal være et positivt nummer med eller uden en CSS måleenhed (px eller %).","invalidInlineStyle":"Værdien specificeret for inline style skal indeholde en eller flere elementer med et format som \"name:value\", separeret af semikoloner","cssLengthTooltip":"Indsæt en numerisk værdi i pixel eller nummer med en gyldig CSS værdi (px, %, in, cm, mm, em, ex, pt, eller pc).","unavailable":"%1<span class=\"cke_accessibility\">, ikke tilgængelig</span>","keyboard":{"8":"Backspace","13":"Retur","16":"Shift","17":"Ctrl","18":"Alt","32":"Mellemrum","35":"End","36":"Home","46":"Slet","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Kommando"},"keyboardShortcut":"Tastatur genvej","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. Alle rettigheder forbeholdes.","dlgTitle":"Om CKEditor 4","moreInfo":"For informationer omkring licens, se venligst vores hjemmeside (på engelsk):"},"basicstyles":{"bold":"Fed","italic":"Kursiv","strike":"Gennemstreget","subscript":"Sænket skrift","superscript":"Hævet skrift","underline":"Understreget"},"bidi":{"ltr":"Tekstretning fra venstre til højre","rtl":"Tekstretning fra højre til venstre"},"blockquote":{"toolbar":"Blokcitat"},"notification":{"closed":"Notefikation lukket."},"toolbar":{"toolbarCollapse":"Sammenklap værktøjslinje","toolbarExpand":"Udvid værktøjslinje","toolbarGroups":{"document":"Dokument","clipboard":"Udklipsholder/Fortryd","editing":"Redigering","forms":"Formularer","basicstyles":"Basis styles","paragraph":"Paragraf","links":"Links","insert":"Indsæt","styles":"Typografier","colors":"Farver","tools":"Værktøjer"},"toolbars":"Editors værktøjslinjer"},"clipboard":{"copy":"Kopiér","copyError":"Din browsers sikkerhedsindstillinger tillader ikke editoren at få automatisk adgang til udklipsholderen.<br><br>Brug i stedet tastaturet til at kopiere teksten (Ctrl/Cmd+C).","cut":"Klip","cutError":"Din browsers sikkerhedsindstillinger tillader ikke editoren at få automatisk adgang til udklipsholderen.<br><br>Brug i stedet tastaturet til at klippe teksten (Ctrl/Cmd+X).","paste":"Indsæt","pasteNotification":"Tryk %1 for at sætte ind. Din browser understøtter ikke indsættelse med værktøjslinje knappen eller kontekst menuen.","pasteArea":"Indsættelses område","pasteMsg":"Indsæt dit indhold i området nedenfor og tryk OK."},"colorbutton":{"auto":"Automatisk","bgColorTitle":"Baggrundsfarve","colors":{"000":"Sort","800000":"Mørkerød","8B4513":"Mørk orange","2F4F4F":"Dark Slate Grå","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Mørkegrå","B22222":"Scarlet / Rød","A52A2A":"Brun","DAA520":"Guld","006400":"Mørkegrøn","40E0D0":"Tyrkis","0000CD":"Mellemblå","800080":"Lilla","808080":"Grå","F00":"Rød","FF8C00":"Mørk orange","FFD700":"Guld","008000":"Grøn","0FF":"Cyan","00F":"Blå","EE82EE":"Violet","A9A9A9":"Matgrå","FFA07A":"Laksefarve","FFA500":"Orange","FFFF00":"Gul","00FF00":"Lime","AFEEEE":"Mat tyrkis","ADD8E6":"Lyseblå","DDA0DD":"Plum","D3D3D3":"Lysegrå","FFF0F5":"Lavender Blush","FAEBD7":"Antikhvid","FFFFE0":"Lysegul","F0FFF0":"Gul / Beige","F0FFFF":"Himmeblå","F0F8FF":"Alice blue","E6E6FA":"Lavendel","FFF":"Hvid","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Flere farver...","panelTitle":"Farver","textColorTitle":"Tekstfarve"},"colordialog":{"clear":"Nulstil","highlight":"Markér","options":"Farvemuligheder","selected":"Valgt farve","title":"Vælg farve"},"templates":{"button":"Skabeloner","emptyListMsg":"(Der er ikke defineret nogen skabelon)","insertOption":"Erstat det faktiske indhold","options":"Skabelon muligheder","selectPromptMsg":"Vælg den skabelon, som skal åbnes i editoren (nuværende indhold vil blive overskrevet):","title":"Indholdsskabeloner"},"contextmenu":{"options":"Muligheder for hjælpemenu"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Vejledende titel","cssClassInputLabel":"Typografiark","edit":"Rediger Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Venstre til højre (LTR)","langDirLabel":"Sprogretning","langDirRTLLabel":"Højre til venstre (RTL)","languageCodeInputLabel":" Sprogkode","remove":"Slet Div","styleSelectLabel":"Style","title":"Opret Div Container","toolbar":"Opret Div Container"},"elementspath":{"eleLabel":"Sti på element","eleTitle":"%1 element"},"filetools":{"loadError":"Der skete en fejl ved indlæsningen af filen.","networkError":"Der skete en netværks fejl under uploadingen.","httpError404":"Der skete en HTTP fejl under uploadingen (404: File not found).","httpError403":"Der skete en HTTP fejl under uploadingen (403: Forbidden).","httpError":"Der skete en HTTP fejl under uploadingen (error status: %1).","noUrlError":"Upload URL er ikke defineret.","responseError":"Ikke korrekt server svar."},"find":{"find":"Søg","findOptions":"Find muligheder","findWhat":"Søg efter:","matchCase":"Forskel på store og små bogstaver","matchCyclic":"Match cyklisk","matchWord":"Kun hele ord","notFoundMsg":"Søgeteksten blev ikke fundet","replace":"Erstat","replaceAll":"Erstat alle","replaceSuccessMsg":"%1 forekomst(er) erstattet.","replaceWith":"Erstat med:","title":"Søg og erstat"},"fakeobjects":{"anchor":"Anker","flash":"Flashanimation","hiddenfield":"Skjult felt","iframe":"Iframe","unknown":"Ukendt objekt"},"flash":{"access":"Scriptadgang","accessAlways":"Altid","accessNever":"Aldrig","accessSameDomain":"Samme domæne","alignAbsBottom":"Absolut nederst","alignAbsMiddle":"Absolut centreret","alignBaseline":"Grundlinje","alignTextTop":"Toppen af teksten","bgcolor":"Baggrundsfarve","chkFull":"Tillad fuldskærm","chkLoop":"Gentagelse","chkMenu":"Vis Flash-menu","chkPlay":"Automatisk afspilning","flashvars":"Variabler for Flash","hSpace":"Vandret margen","properties":"Egenskaber for Flash","propertiesTab":"Egenskaber","quality":"Kvalitet","qualityAutoHigh":"Auto høj","qualityAutoLow":"Auto lav","qualityBest":"Bedste","qualityHigh":"Høj","qualityLow":"Lav","qualityMedium":"Medium","scale":"Skalér","scaleAll":"Vis alt","scaleFit":"Tilpas størrelse","scaleNoBorder":"Ingen ramme","title":"Egenskaber for Flash","vSpace":"Lodret margen","validateHSpace":"Vandret margen skal være et tal.","validateSrc":"Indtast hyperlink URL!","validateVSpace":"Lodret margen skal være et tal.","windowMode":"Vinduestilstand","windowModeOpaque":"Gennemsigtig (opaque)","windowModeTransparent":"Transparent","windowModeWindow":"Vindue"},"font":{"fontSize":{"label":"Skriftstørrelse","voiceLabel":"Skriftstørrelse","panelTitle":"Skriftstørrelse"},"label":"Skrifttype","panelTitle":"Skrifttype","voiceLabel":"Skrifttype"},"forms":{"button":{"title":"Egenskaber for knap","text":"Tekst","type":"Type","typeBtn":"Knap","typeSbm":"Send","typeRst":"Nulstil"},"checkboxAndRadio":{"checkboxTitle":"Egenskaber for afkrydsningsfelt","radioTitle":"Egenskaber for alternativknap","value":"Værdi","selected":"Valgt","required":"Påkrævet"},"form":{"title":"Egenskaber for formular","menu":"Egenskaber for formular","action":"Handling","method":"Metode","encoding":"Kodning (encoding)"},"hidden":{"title":"Egenskaber for skjult felt","name":"Navn","value":"Værdi"},"select":{"title":"Egenskaber for liste","selectInfo":"Generelt","opAvail":"Valgmuligheder","value":"Værdi","size":"Størrelse","lines":"Linjer","chkMulti":"Tillad flere valg","required":"Påkrævet","opText":"Tekst","opValue":"Værdi","btnAdd":"Tilføj","btnModify":"Redigér","btnUp":"Op","btnDown":"Ned","btnSetValue":"Sæt som valgt","btnDelete":"Slet"},"textarea":{"title":"Egenskaber for tekstboks","cols":"Kolonner","rows":"Rækker"},"textfield":{"title":"Egenskaber for tekstfelt","name":"Navn","value":"Værdi","charWidth":"Bredde (tegn)","maxChars":"Max. antal tegn","required":"Påkrævet","type":"Type","typeText":"Tekst","typePass":"Adgangskode","typeEmail":"E-mail","typeSearch":"Søg","typeTel":"Telefon nummer","typeUrl":"URL"}},"format":{"label":"Formatering","panelTitle":"Formatering","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"Overskrift 1","tag_h2":"Overskrift 2","tag_h3":"Overskrift 3","tag_h4":"Overskrift 4","tag_h5":"Overskrift 5","tag_h6":"Overskrift 6","tag_p":"Normal","tag_pre":"Formateret"},"horizontalrule":{"toolbar":"Indsæt vandret streg"},"iframe":{"border":"Vis kant på rammen","noUrl":"Venligst indsæt URL på iframen","scrolling":"Aktiver scrollbars","title":"Iframe egenskaber","toolbar":"Iframe"},"image":{"alt":"Alternativ tekst","border":"Ramme","btnUpload":"Upload fil til serveren","button2Img":"Vil du lave billedknappen om til et almindeligt billede?","hSpace":"Vandret margen","img2Button":"Vil du lave billedet om til en billedknap?","infoTab":"Generelt","linkTab":"Hyperlink","lockRatio":"Lås størrelsesforhold","menu":"Egenskaber for billede","resetSize":"Nulstil størrelse","title":"Egenskaber for billede","titleButton":"Egenskaber for billedknap","upload":"Upload","urlMissing":"Kilde på billed-URL mangler","vSpace":"Lodret margen","validateBorder":"Kant skal være et helt nummer.","validateHSpace":"HSpace skal være et helt nummer.","validateVSpace":"VSpace skal være et helt nummer."},"indent":{"indent":"Forøg indrykning","outdent":"Formindsk indrykning"},"smiley":{"options":"Smileymuligheder","title":"Vælg smiley","toolbar":"Smiley"},"language":{"button":"Vælg sprog","remove":"Fjern sprog"},"link":{"acccessKey":"Genvejstast","advanced":"Avanceret","advisoryContentType":"Indholdstype","advisoryTitle":"Titel","anchor":{"toolbar":"Indsæt/redigér bogmærke","menu":"Egenskaber for bogmærke","title":"Egenskaber for bogmærke","name":"Bogmærkenavn","errorName":"Indtast bogmærkenavn","remove":"Fjern bogmærke"},"anchorId":"Efter element-Id","anchorName":"Efter ankernavn","charset":"Tegnsæt","cssClasses":"Typografiark","download":"Tving Download","displayText":"Vis tekst","emailAddress":"E-mailadresse","emailBody":"Besked","emailSubject":"Emne","id":"Id","info":"Generelt","langCode":"Tekstretning","langDir":"Tekstretning","langDirLTR":"Fra venstre mod højre (LTR)","langDirRTL":"Fra højre mod venstre (RTL)","menu":"Redigér hyperlink","name":"Navn","noAnchors":"(Ingen bogmærker i dokumentet)","noEmail":"Indtast e-mailadresse!","noUrl":"Indtast hyperlink-URL!","noTel":"Please type the phone number","other":"<anden>","phoneNumber":"Phone number","popupDependent":"Koblet/dependent (Netscape)","popupFeatures":"Egenskaber for popup","popupFullScreen":"Fuld skærm (IE)","popupLeft":"Position fra venstre","popupLocationBar":"Adresselinje","popupMenuBar":"Menulinje","popupResizable":"Justérbar","popupScrollBars":"Scrollbar","popupStatusBar":"Statuslinje","popupToolbar":"Værktøjslinje","popupTop":"Position fra toppen","rel":"Relation","selectAnchor":"Vælg et anker","styles":"Typografi","tabIndex":"Tabulatorindeks","target":"Mål","targetFrame":"<ramme>","targetFrameName":"Destinationsvinduets navn","targetPopup":"<popup vindue>","targetPopupName":"Popupvinduets navn","title":"Egenskaber for hyperlink","toAnchor":"Bogmærke på denne side","toEmail":"E-mail","toUrl":"URL","toPhone":"Phone","toolbar":"Indsæt/redigér hyperlink","type":"Type","unlink":"Fjern hyperlink","upload":"Upload"},"list":{"bulletedlist":"Punktopstilling","numberedlist":"Talopstilling"},"liststyle":{"bulletedTitle":"Værdier for cirkelpunktopstilling","circle":"Cirkel","decimal":"Decimal (1, 2, 3, osv.)","disc":"Værdier for diskpunktopstilling","lowerAlpha":"Små alfabet (a, b, c, d, e, etc.)","lowerRoman":"Små romerske (i, ii, iii, iv, v, etc.)","none":"Ingen","notset":"<ikke defineret>","numberedTitle":"Egenskaber for nummereret liste","square":"Firkant","start":"Start","type":"Type","upperAlpha":"Store alfabet (A, B, C, D, E, etc.)","upperRoman":"Store romerske (I, II, III, IV, V, etc.)","validateStartNumber":"Den nummererede liste skal starte med et rundt nummer"},"magicline":{"title":"Indsæt afsnit"},"maximize":{"maximize":"Maksimér","minimize":"Minimér"},"newpage":{"toolbar":"Ny side"},"pagebreak":{"alt":"Sideskift","toolbar":"Indsæt sideskift"},"pastetext":{"button":"Indsæt som ikke-formateret tekst","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Indsæt som ikke-formateret tekst"},"pastefromword":{"confirmCleanup":"Den tekst du forsøger at indsætte ser ud til at komme fra Word. Vil du rense teksten før den indsættes?","error":"Det var ikke muligt at fjerne formatteringen på den indsatte tekst grundet en intern fejl","title":"Indsæt fra Word","toolbar":"Indsæt fra Word"},"preview":{"preview":"Vis eksempel"},"print":{"toolbar":"Udskriv"},"removeformat":{"toolbar":"Fjern formatering"},"save":{"toolbar":"Gem"},"selectall":{"toolbar":"Vælg alt"},"showblocks":{"toolbar":"Vis afsnitsmærker"},"sourcearea":{"toolbar":"Kilde"},"specialchar":{"options":"Muligheder for specialkarakterer","title":"Vælg symbol","toolbar":"Indsæt symbol"},"scayt":{"btn_about":"Om SCAYT","btn_dictionaries":"Ordbøger","btn_disable":"Deaktivér SCAYT","btn_enable":"Aktivér SCAYT","btn_langs":"Sprog","btn_options":"Indstillinger","text_title":"Stavekontrol mens du skriver"},"stylescombo":{"label":"Typografi","panelTitle":"Formattering på stylesheet","panelTitle1":"Block typografi","panelTitle2":"Inline typografi","panelTitle3":"Object typografi"},"table":{"border":"Rammebredde","caption":"Titel","cell":{"menu":"Celle","insertBefore":"Indsæt celle før","insertAfter":"Indsæt celle efter","deleteCell":"Slet celle","merge":"Flet celler","mergeRight":"Flet til højre","mergeDown":"Flet nedad","splitHorizontal":"Del celle vandret","splitVertical":"Del celle lodret","title":"Celleegenskaber","cellType":"Celletype","rowSpan":"Række span (rows span)","colSpan":"Kolonne span (columns span)","wordWrap":"Tekstombrydning","hAlign":"Vandret justering","vAlign":"Lodret justering","alignBaseline":"Grundlinje","bgColor":"Baggrundsfarve","borderColor":"Rammefarve","data":"Data","header":"Hoved","yes":"Ja","no":"Nej","invalidWidth":"Cellebredde skal være et tal.","invalidHeight":"Cellehøjde skal være et tal.","invalidRowSpan":"Række span skal være et heltal.","invalidColSpan":"Kolonne span skal være et heltal.","chooseColor":"Vælg"},"cellPad":"Cellemargen","cellSpace":"Celleafstand","column":{"menu":"Kolonne","insertBefore":"Indsæt kolonne før","insertAfter":"Indsæt kolonne efter","deleteColumn":"Slet kolonne"},"columns":"Kolonner","deleteTable":"Slet tabel","headers":"Hoved","headersBoth":"Begge","headersColumn":"Første kolonne","headersNone":"Ingen","headersRow":"Første række","invalidBorder":"Rammetykkelse skal være et tal.","invalidCellPadding":"Cellemargen skal være et tal.","invalidCellSpacing":"Celleafstand skal være et tal.","invalidCols":"Antallet af kolonner skal være større end 0.","invalidHeight":"Tabelhøjde skal være et tal.","invalidRows":"Antallet af rækker skal være større end 0.","invalidWidth":"Tabelbredde skal være et tal.","menu":"Egenskaber for tabel","row":{"menu":"Række","insertBefore":"Indsæt række før","insertAfter":"Indsæt række efter","deleteRow":"Slet række"},"rows":"Rækker","summary":"Resumé","title":"Egenskaber for tabel","toolbar":"Tabel","widthPc":"procent","widthPx":"pixels","widthUnit":"Bredde på enhed"},"undo":{"redo":"Annullér fortryd","undo":"Fortryd"},"widget":{"move":"Klik og træk for at flytte","label":"%1 widget"},"uploadwidget":{"abort":"Upload er afbrudt af brugen.","doneOne":"Filen er uploadet.","doneMany":"Du har uploadet %1 filer.","uploadOne":"Uploader fil ({percentage}%)...","uploadMany":"Uploader filer, {current} af {max} er uploadet ({percentage}%)..."},"wsc":{"btnIgnore":"Ignorér","btnIgnoreAll":"Ignorér alle","btnReplace":"Erstat","btnReplaceAll":"Erstat alle","btnUndo":"Tilbage","changeTo":"Forslag","errorLoading":"Fejl ved indlæsning af host: %s.","ieSpellDownload":"Stavekontrol ikke installeret. Vil du installere den nu?","manyChanges":"Stavekontrol færdig: %1 ord ændret","noChanges":"Stavekontrol færdig: Ingen ord ændret","noMispell":"Stavekontrol færdig: Ingen fejl fundet","noSuggestions":"(ingen forslag)","notAvailable":"Stavekontrol er desværre ikke tilgængelig.","notInDic":"Ikke i ordbogen","oneChange":"Stavekontrol færdig: Et ord ændret","progress":"Stavekontrollen arbejder...","title":"Stavekontrol","toolbar":"Stavekontrol"}};
bt-source/panel/BTPanel/static/ckeditor/lang/de-ch.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['de-ch']={"editor":"WYSIWYG-Editor","editorPanel":"WYSIWYG-Editor-Leiste","common":{"editorHelp":"Drücken Sie ALT 0 für Hilfe","browseServer":"Server durchsuchen","url":"URL","protocol":"Protokoll","upload":"Hochladen","uploadSubmit":"Zum Server senden","image":"Bild","flash":"Flash","form":"Formular","checkbox":"Kontrollbox","radio":"Optionsfeld","textField":"Textfeld","textarea":"Textfeld","hiddenField":"Verstecktes Feld","button":"Schaltfläche","select":"Auswahlfeld","imageButton":"Bildschaltfläche","notSet":"<nicht festgelegt>","id":"Kennung","name":"Name","langDir":"Schreibrichtung","langDirLtr":"Links nach Rechts (LTR)","langDirRtl":"Rechts nach Links (RTL)","langCode":"Sprachcode","longDescr":"Langbeschreibungs-URL","cssClass":"Formatvorlagenklassen","advisoryTitle":"Titel Beschreibung","cssStyle":"Stil","ok":"OK","cancel":"Abbrechen","close":"Schliessen","preview":"Vorschau","resize":"Grösse ändern","generalTab":"Allgemein","advancedTab":"Erweitert","validateNumberFailed":"Dieser Wert ist keine Nummer.","confirmNewPage":"Alle nicht gespeicherten Änderungen gehen verlohren. Sind Sie sicher die neue Seite zu laden?","confirmCancel":"Einige Optionen wurden geändert. Wollen Sie den Dialog dennoch schliessen?","options":"Optionen","target":"Zielseite","targetNew":"Neues Fenster (_blank)","targetTop":"Oberstes Fenster (_top)","targetSelf":"Gleiches Fenster (_self)","targetParent":"Oberes Fenster (_parent)","langDirLTR":"Links nach Rechts (LNR)","langDirRTL":"Rechts nach Links (RNL)","styles":"Style","cssClasses":"Stylesheet Klasse","width":"Breite","height":"Höhe","align":"Ausrichtung","left":"Links","right":"Rechts","center":"Zentriert","justify":"Blocksatz","alignLeft":"Linksbündig","alignRight":"Rechtsbündig","alignCenter":"Align Center","alignTop":"Oben","alignMiddle":"Mitte","alignBottom":"Unten","alignNone":"Keine","invalidValue":"Ungültiger Wert.","invalidHeight":"Höhe muss eine Zahl sein.","invalidWidth":"Breite muss eine Zahl sein.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Wert spezifiziert für \"%1\" Feld muss ein positiver numerischer Wert sein mit oder ohne korrekte CSS Messeinheit (px, %, in, cm, mm, em, ex, pt oder pc).","invalidHtmlLength":"Wert spezifiziert für \"%1\" Feld muss ein positiver numerischer Wert sein mit oder ohne korrekte HTML Messeinheit (px oder %).","invalidInlineStyle":"Wert spezifiziert für inline Stilart muss enthalten ein oder mehr Tupels mit dem Format \"Name : Wert\" getrennt mit Semikolons.","cssLengthTooltip":"Gebe eine Zahl ein für ein Wert in pixels oder eine Zahl mit einer korrekten CSS Messeinheit (px, %, in, cm, mm, em, ex, pt oder pc).","unavailable":"%1<span class=\"cke_accessibility\">, nicht verfügbar</span>","keyboard":{"8":"Rücktaste","13":"Eingabe","16":"Umschalt","17":"Strg","18":"Alt","32":"Space","35":"Ende","36":"Pos1","46":"Entfernen","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. Alle Rechte vorbehalten.","dlgTitle":"Über CKEditor 4","moreInfo":"Für Informationen über unsere Lizenzbestimmungen besuchen sie bitte unsere Webseite:"},"basicstyles":{"bold":"Fett","italic":"Kursiv","strike":"Durchgestrichen","subscript":"Tiefgestellt","superscript":"Hochgestellt","underline":"Unterstrichen"},"bidi":{"ltr":"Leserichtung von Links nach Rechts","rtl":"Leserichtung von Rechts nach Links"},"blockquote":{"toolbar":"Zitatblock"},"notification":{"closed":"Benachrichtigung geschlossen."},"toolbar":{"toolbarCollapse":"Werkzeugleiste einklappen","toolbarExpand":"Werkzeugleiste ausklappen","toolbarGroups":{"document":"Dokument","clipboard":"Zwischenablage/Rückgängig","editing":"Editieren","forms":"Formulare","basicstyles":"Grundstile","paragraph":"Absatz","links":"Links","insert":"Einfügen","styles":"Stile","colors":"Farben","tools":"Werkzeuge"},"toolbars":"Editor Werkzeugleisten"},"clipboard":{"copy":"Kopieren","copyError":"Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch kopieren. Bitte benutzen Sie die System-Zwischenablage über STRG-C (kopieren).","cut":"Ausschneiden","cutError":"Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch auszuschneiden. Bitte benutzen Sie die System-Zwischenablage über STRG-X (ausschneiden) und STRG-V (einfügen).","paste":"Einfügen","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Einfügebereich","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatisch","bgColorTitle":"Hintergrundfarbe","colors":{"000":"Schwarz","800000":"Kastanienbraun","8B4513":"Braun","2F4F4F":"Dunkles Schiefergrau","008080":"Blaugrün","000080":"Marineblau","4B0082":"Indigo","696969":"Dunkelgrau","B22222":"Ziegelrot","A52A2A":"Braun","DAA520":"Goldgelb","006400":"Dunkelgrün","40E0D0":"Türkis","0000CD":"Mittelblau","800080":"Lila","808080":"Grau","F00":"Rot","FF8C00":"Dunkelorange","FFD700":"Gold","008000":"Grün","0FF":"Cyan","00F":"Blau","EE82EE":"Violett","A9A9A9":"Dunkelgrau","FFA07A":"Helles Lachsrosa","FFA500":"Orange","FFFF00":"Gelb","00FF00":"Lime","AFEEEE":"Blasstürkis","ADD8E6":"Hellblau","DDA0DD":"Pflaumenblau","D3D3D3":"Hellgrau","FFF0F5":"Lavendel","FAEBD7":"Antik Weiss","FFFFE0":"Hellgelb","F0FFF0":"Honigtau","F0FFFF":"Azurblau","F0F8FF":"Alice Blau","E6E6FA":"Lavendel","FFF":"Weiss","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Weitere Farben...","panelTitle":"Farben","textColorTitle":"Textfarbe"},"colordialog":{"clear":"Entfernen","highlight":"Hervorheben","options":"Farboptionen","selected":"Ausgewählte Farbe","title":"Farbe auswählen"},"templates":{"button":"Vorlagen","emptyListMsg":"(Keine Vorlagen definiert)","insertOption":"Aktuelle Inhalte ersetzen","options":"Vorlagenoptionen","selectPromptMsg":"Klicken Sie auf eine Vorlage, um sie im Editor zu öffnen","title":"Inhaltsvorlagen"},"contextmenu":{"options":"Kontextmenüoptionen"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Kennung","advisoryTitleInputLabel":"Tooltip","cssClassInputLabel":"Formatvorlagenklasse","edit":"Div bearbeiten","inlineStyleInputLabel":"Inline Stil","langDirLTRLabel":"Links nach Rechs (LTR)","langDirLabel":"Sprachrichtung","langDirRTLLabel":"Rechs nach Links (RTL)","languageCodeInputLabel":"Sprachcode","remove":"Div entfernen","styleSelectLabel":"Stil","title":"Div Container erzeugen","toolbar":"Div Container erzeugen"},"elementspath":{"eleLabel":"Elementepfad","eleTitle":"%1 Element"},"filetools":{"loadError":"Während dem Lesen der Datei ist ein Fehler aufgetreten.","networkError":"Während dem Hochladen der Datei ist ein Netzwerkfehler aufgetreten.","httpError404":"Während dem Hochladen der Datei ist ein HTTP-Fehler aufgetreten (404: Datei nicht gefunden).","httpError403":"Während dem Hochladen der Datei ist ein HTTP-Fehler aufgetreten (403: Verboten).","httpError":"Während dem Hochladen der Datei ist ein HTTP-Fehler aufgetreten (Fehlerstatus: %1).","noUrlError":"Hochlade-URL ist nicht definiert.","responseError":"Falsche Antwort des Servers."},"find":{"find":"Suchen","findOptions":"Suchoptionen","findWhat":"Suche nach:","matchCase":"Gross-/Kleinschreibung beachten","matchCyclic":"Zyklische Suche","matchWord":"Nur ganze Worte suchen","notFoundMsg":"Der angegebene Text wurde nicht gefunden.","replace":"Ersetzen","replaceAll":"Alle ersetzen","replaceSuccessMsg":"%1 Vorkommen ersetzt.","replaceWith":"Ersetze mit:","title":"Suchen und Ersetzen"},"fakeobjects":{"anchor":"Anker","flash":"Flash-Animation","hiddenfield":"Verstecktes Feld","iframe":"IFrame","unknown":"Unbekanntes Objekt"},"flash":{"access":"Skriptzugriff","accessAlways":"Immer","accessNever":"Nie","accessSameDomain":"Gleiche Domain","alignAbsBottom":"Abs Unten","alignAbsMiddle":"Abs Mitte","alignBaseline":"Basislinie","alignTextTop":"Text oben","bgcolor":"Hintergrundfarbe","chkFull":"Vollbildmodus erlauben","chkLoop":"Endlosschleife","chkMenu":"Flash-Menü aktivieren","chkPlay":"Automatisch Abspielen","flashvars":"Variablen für Flash","hSpace":"Horizontal-Abstand","properties":"Flash-Eigenschaften","propertiesTab":"Eigenschaften","quality":"Qualität","qualityAutoHigh":"Auto Hoch","qualityAutoLow":"Auto Niedrig","qualityBest":"Beste","qualityHigh":"Hoch","qualityLow":"Niedrig","qualityMedium":"Mittel","scale":"Skalierung","scaleAll":"Alles anzeigen","scaleFit":"Passgenau","scaleNoBorder":"Ohne Rand","title":"Flash-Eigenschaften","vSpace":"Vertikal-Abstand","validateHSpace":"HSpace muss eine Zahl sein.","validateSrc":"URL darf nicht leer sein.","validateVSpace":"VSpace muss eine Zahl sein.","windowMode":"Fenstermodus","windowModeOpaque":"Deckend","windowModeTransparent":"Transparent","windowModeWindow":"Fenster"},"font":{"fontSize":{"label":"Grösse","voiceLabel":"Schrifgrösse","panelTitle":"Schriftgrösse"},"label":"Schriftart","panelTitle":"Schriftartname","voiceLabel":"Schriftart"},"forms":{"button":{"title":"Schaltflächeneigenschaften","text":"Text (Wert)","type":"Typ","typeBtn":"Button","typeSbm":"Absenden","typeRst":"Zurücksetzen"},"checkboxAndRadio":{"checkboxTitle":"Kontrollboxeigenschaften","radioTitle":"Optionsfeldeigenschaften","value":"Wert","selected":"Ausgewählt","required":"Erforderlich"},"form":{"title":"Formulareigenschaften","menu":"Formulareigenschaften","action":"Aktion","method":"Methode","encoding":"Kodierung"},"hidden":{"title":"Versteckte Feldeigenschaften","name":"Name","value":"Wert"},"select":{"title":"Auswahlfeldeigenschaften","selectInfo":"Info auswählen","opAvail":"Verfügbare Optionen","value":"Wert","size":"Grösse","lines":"Linien","chkMulti":"Mehrfachauswahl erlauben","required":"Erforderlich","opText":"Text","opValue":"Wert","btnAdd":"Hinzufügen","btnModify":"Ändern","btnUp":"Hoch","btnDown":"Runter","btnSetValue":"Als ausgewählten Wert festlegen","btnDelete":"Entfernen"},"textarea":{"title":"Textfeldeigenschaften","cols":"Spalten","rows":"Reihen"},"textfield":{"title":"Textfeldeigenschaften","name":"Name","value":"Wert","charWidth":"Zeichenbreite","maxChars":"Max. Zeichen","required":"Erforderlich","type":"Typ","typeText":"Text","typePass":"Passwort","typeEmail":"E-mail","typeSearch":"Suche","typeTel":"Telefonnummer","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Absatzformat","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"Überschrift 1","tag_h2":"Überschrift 2","tag_h3":"Überschrift 3","tag_h4":"Überschrift 4","tag_h5":"Überschrift 5","tag_h6":"Überschrift 6","tag_p":"Normal","tag_pre":"Formatiert"},"horizontalrule":{"toolbar":"Horizontale Linie einfügen"},"iframe":{"border":"Rahmen anzeigen","noUrl":"Bitte geben Sie die IFrame-URL an","scrolling":"Rollbalken anzeigen","title":"IFrame-Eigenschaften","toolbar":"IFrame"},"image":{"alt":"Alternativer Text","border":"Rahmen","btnUpload":"Zum Server senden","button2Img":"Möchten Sie die ausgewählte Bildschaltfläche in ein einfaches Bild umwandeln?","hSpace":"Horizontal-Abstand","img2Button":"Möchten Sie das ausgewählte Bild in eine Bildschaltfläche umwandeln?","infoTab":"Bildinfo","linkTab":"Link","lockRatio":"Grössenverhältnis beibehalten","menu":"Bildeigenschaften","resetSize":"Grösse zurücksetzen","title":"Bildeigenschaften","titleButton":"Bildschaltflächeneigenschaften","upload":"Hochladen","urlMissing":"Bildquellen-URL fehlt.","vSpace":"Vertikal-Abstand","validateBorder":"Rahmen muss eine ganze Zahl sein.","validateHSpace":"Horizontal-Abstand muss eine ganze Zahl sein.","validateVSpace":"Vertikal-Abstand muss eine ganze Zahl sein."},"indent":{"indent":"Einzug erhöhen","outdent":"Einzug verringern"},"smiley":{"options":"Smiley-Optionen","title":"Smiley auswählen","toolbar":"Smiley"},"language":{"button":"Sprache festlegen","remove":"Sprache entfernen"},"link":{"acccessKey":"Zugriffstaste","advanced":"Erweitert","advisoryContentType":"Inhaltstyp","advisoryTitle":"Titel Beschreibung","anchor":{"toolbar":"Anker","menu":"Anker bearbeiten","title":"Ankereigenschaften","name":"Ankername","errorName":"Bitte geben Sie den Namen des Ankers ein","remove":"Anker entfernen"},"anchorId":"Nach Elementkennung","anchorName":"Nach Ankername","charset":"Verknüpfter Ressourcenzeichensatz","cssClasses":"Formatvorlagenklasse","download":"Force Download","displayText":"Display Text","emailAddress":"E-Mail-Adresse","emailBody":"Nachrichtentext","emailSubject":"Betreffzeile","id":"Kennung","info":"Linkinfo","langCode":"Sprachcode","langDir":"Schreibrichtung","langDirLTR":"Links nach Rechts (LTR)","langDirRTL":"Rechts nach Links (RTL)","menu":"Link bearbeiten","name":"Name","noAnchors":"(Keine Anker im Dokument vorhanden)","noEmail":"Bitte geben Sie E-Mail-Adresse an","noUrl":"Bitte geben Sie die Link-URL an","noTel":"Please type the phone number","other":"<andere>","phoneNumber":"Phone number","popupDependent":"Abhängig (Netscape)","popupFeatures":"Pop-up Fenstereigenschaften","popupFullScreen":"Vollbild (IE)","popupLeft":"Linke Position","popupLocationBar":"Adressleiste","popupMenuBar":"Menüleiste","popupResizable":"Grösse änderbar","popupScrollBars":"Rollbalken","popupStatusBar":"Statusleiste","popupToolbar":"Werkzeugleiste","popupTop":"Obere Position","rel":"Beziehung","selectAnchor":"Anker auswählen","styles":"Style","tabIndex":"Tab-Index","target":"Zielseite","targetFrame":"<Frame>","targetFrameName":"Ziel-Fenster-Name","targetPopup":"<Pop-up Fenster>","targetPopupName":"Pop-up Fenster-Name","title":"Link","toAnchor":"Anker in dieser Seite","toEmail":"E-Mail","toUrl":"URL","toPhone":"Phone","toolbar":"Link einfügen/editieren","type":"Link-Typ","unlink":"Link entfernen","upload":"Hochladen"},"list":{"bulletedlist":"Liste","numberedlist":"Nummerierte Liste einfügen/entfernen"},"liststyle":{"bulletedTitle":"Aufzählungslisteneigenschaften","circle":"Ring","decimal":"Dezimal (1, 2, 3, etc.)","disc":"Kreis","lowerAlpha":"Klein Alpha (a, b, c, d, e, usw.)","lowerRoman":"Klein römisch (i, ii, iii, iv, v, usw.)","none":"Keine","notset":"<nicht festgelegt>","numberedTitle":"Nummerierte Listeneigenschaften","square":"Quadrat","start":"Start","type":"Typ","upperAlpha":"Gross alpha (A, B, C, D, E, etc.)","upperRoman":"Gross römisch (I, II, III, IV, V, usw.)","validateStartNumber":"Listenstartnummer muss eine ganze Zahl sein."},"magicline":{"title":"Absatz hier einfügen"},"maximize":{"maximize":"Maximieren","minimize":"Minimieren"},"newpage":{"toolbar":"Neue Seite"},"pagebreak":{"alt":"Seitenumbruch","toolbar":"Seitenumbruch zum Drucken einfügen"},"pastetext":{"button":"Als Klartext einfügen","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Als Klartext einfügen"},"pastefromword":{"confirmCleanup":"Der Text, den Sie einfügen möchten, scheint aus MS-Word kopiert zu sein. Möchten Sie ihn zuvor bereinigen lassen?","error":"Aufgrund eines internen Fehlers war es nicht möglich die eingefügten Daten zu bereinigen","title":"Aus Word einfügen","toolbar":"Aus Word einfügen"},"preview":{"preview":"Vorschau"},"print":{"toolbar":"Drucken"},"removeformat":{"toolbar":"Formatierung entfernen"},"save":{"toolbar":"Speichern"},"selectall":{"toolbar":"Alles auswählen"},"showblocks":{"toolbar":"Blöcke anzeigen"},"sourcearea":{"toolbar":"Quellcode"},"specialchar":{"options":"Sonderzeichenoptionen","title":"Sonderzeichen auswählen","toolbar":"Sonderzeichen einfügen"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Stil","panelTitle":"Formatierungsstile","panelTitle1":"Blockstile","panelTitle2":"Inline Stilart","panelTitle3":"Objektstile"},"table":{"border":"Rahmengrösse","caption":"Überschrift","cell":{"menu":"Zelle","insertBefore":"Zelle davor einfügen","insertAfter":"Zelle danach einfügen","deleteCell":"Zelle löschen","merge":"Zellen verbinden","mergeRight":"Nach rechts verbinden","mergeDown":"Nach unten verbinden","splitHorizontal":"Zelle horizontal teilen","splitVertical":"Zelle vertikal teilen","title":"Zelleneigenschaften","cellType":"Zellart","rowSpan":"Anzahl Zeilen verbinden","colSpan":"Anzahl Spalten verbinden","wordWrap":"Zeilenumbruch","hAlign":"Horizontale Ausrichtung","vAlign":"Vertikale Ausrichtung","alignBaseline":"Grundlinie","bgColor":"Hintergrundfarbe","borderColor":"Rahmenfarbe","data":"Daten","header":"Überschrift","yes":"Ja","no":"Nein","invalidWidth":"Zellenbreite muss eine Zahl sein.","invalidHeight":"Zellenhöhe muss eine Zahl sein.","invalidRowSpan":"\"Anzahl Zeilen verbinden\" muss eine Ganzzahl sein.","invalidColSpan":"\"Anzahl Spalten verbinden\" muss eine Ganzzahl sein.","chooseColor":"Wählen"},"cellPad":"Zellenabstand innen","cellSpace":"Zellenabstand aussen","column":{"menu":"Spalte","insertBefore":"Spalte links davor einfügen","insertAfter":"Spalte rechts danach einfügen","deleteColumn":"Spalte löschen"},"columns":"Spalte","deleteTable":"Tabelle löschen","headers":"Kopfzeile","headersBoth":"Beide","headersColumn":"Erste Spalte","headersNone":"Keine","headersRow":"Erste Zeile","invalidBorder":"Die Rahmenbreite muss eine Zahl sein.","invalidCellPadding":"Der Zellenabstand innen muss eine positive Zahl sein.","invalidCellSpacing":"Der Zellenabstand aussen muss eine positive Zahl sein.","invalidCols":"Die Anzahl der Spalten muß grösser als 0 sein..","invalidHeight":"Die Tabellenbreite muss eine Zahl sein.","invalidRows":"Die Anzahl der Zeilen muß grösser als 0 sein.","invalidWidth":"Die Tabellenbreite muss eine Zahl sein.","menu":"Tabellen-Eigenschaften","row":{"menu":"Zeile","insertBefore":"Zeile oberhalb einfügen","insertAfter":"Zeile unterhalb einfügen","deleteRow":"Zeile entfernen"},"rows":"Zeile","summary":"Inhaltsübersicht","title":"Tabellen-Eigenschaften","toolbar":"Tabelle","widthPc":"%","widthPx":"Pixel","widthUnit":"Breite Einheit"},"undo":{"redo":"Wiederherstellen","undo":"Rückgängig"},"widget":{"move":"Zum Verschieben anwählen und ziehen","label":"%1 widget"},"uploadwidget":{"abort":"Hochladen durch den Benutzer abgebrochen.","doneOne":"Datei erfolgreich hochgeladen.","doneMany":"%1 Dateien erfolgreich hochgeladen.","uploadOne":"Datei wird hochgeladen ({percentage}%)...","uploadMany":"Dateien werden hochgeladen, {current} von {max} fertig ({percentage}%)..."},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
bt-source/panel/BTPanel/static/ckeditor/lang/de.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['de']={"editor":"WYSIWYG-Editor","editorPanel":"WYSIWYG-Editor-Leiste","common":{"editorHelp":"Drücken Sie ALT 0 für Hilfe","browseServer":"Server durchsuchen","url":"URL","protocol":"Protokoll","upload":"Hochladen","uploadSubmit":"Zum Server senden","image":"Bild","flash":"Flash","form":"Formular","checkbox":"Kontrollbox","radio":"Optionsfeld","textField":"Textfeld","textarea":"Textfeld","hiddenField":"Verstecktes Feld","button":"Schaltfläche","select":"Auswahlfeld","imageButton":"Bildschaltfläche","notSet":"<nicht festgelegt>","id":"Kennung","name":"Name","langDir":"Schreibrichtung","langDirLtr":"Links nach Rechts (LTR)","langDirRtl":"Rechts nach Links (RTL)","langCode":"Sprachcode","longDescr":"Langbeschreibungs-URL","cssClass":"Formatvorlagenklassen","advisoryTitle":"Titel Beschreibung","cssStyle":"Stil","ok":"OK","cancel":"Abbrechen","close":"Schließen","preview":"Vorschau","resize":"Größe ändern","generalTab":"Allgemein","advancedTab":"Erweitert","validateNumberFailed":"Dieser Wert ist keine Nummer.","confirmNewPage":"Alle nicht gespeicherten Änderungen gehen verloren. Sind Sie sicher die neue Seite zu laden?","confirmCancel":"Einige Optionen wurden geändert. Wollen Sie den Dialog dennoch schließen?","options":"Optionen","target":"Zielseite","targetNew":"Neues Fenster (_blank)","targetTop":"Oberstes Fenster (_top)","targetSelf":"Gleiches Fenster (_self)","targetParent":"Oberes Fenster (_parent)","langDirLTR":"Links nach Rechts (LNR)","langDirRTL":"Rechts nach Links (RNL)","styles":"Style","cssClasses":"Stylesheet Klasse","width":"Breite","height":"Höhe","align":"Ausrichtung","left":"Links","right":"Rechts","center":"Zentriert","justify":"Blocksatz","alignLeft":"Linksbündig","alignRight":"Rechtsbündig","alignCenter":"Zentriert","alignTop":"Oben","alignMiddle":"Mitte","alignBottom":"Unten","alignNone":"Keine","invalidValue":"Ungültiger Wert.","invalidHeight":"Höhe muss eine Zahl sein.","invalidWidth":"Breite muss eine Zahl sein.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Wert spezifiziert für \"%1\" Feld muss ein positiver numerischer Wert sein mit oder ohne korrekte CSS Messeinheit (px, %, in, cm, mm, em, ex, pt oder pc).","invalidHtmlLength":"Wert spezifiziert für \"%1\" Feld muss ein positiver numerischer Wert sein mit oder ohne korrekte HTML Messeinheit (px oder %).","invalidInlineStyle":"Wert spezifiziert für inline Stilart muss enthalten ein oder mehr Tupels mit dem Format \"Name : Wert\" getrennt mit Semikolons.","cssLengthTooltip":"Gebe eine Zahl ein für ein Wert in pixels oder eine Zahl mit einer korrekten CSS Messeinheit (px, %, in, cm, mm, em, ex, pt oder pc).","unavailable":"%1<span class=\"cke_accessibility\">, nicht verfügbar</span>","keyboard":{"8":"Rücktaste","13":"Eingabe","16":"Umschalt","17":"Strg","18":"Alt","32":"Leer","35":"Ende","36":"Pos1","46":"Entfernen","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Befehl"},"keyboardShortcut":"Tastaturkürzel","optionDefault":"Standard"},"about":{"copy":"Copyright &copy; $1. Alle Rechte vorbehalten.","dlgTitle":"Über CKEditor 4","moreInfo":"Für Informationen über unsere Lizenzbestimmungen besuchen sie bitte unsere Webseite:"},"basicstyles":{"bold":"Fett","italic":"Kursiv","strike":"Durchgestrichen","subscript":"Tiefgestellt","superscript":"Hochgestellt","underline":"Unterstrichen"},"bidi":{"ltr":"Leserichtung von Links nach Rechts","rtl":"Leserichtung von Rechts nach Links"},"blockquote":{"toolbar":"Zitatblock"},"notification":{"closed":"Benachrichtigung geschlossen."},"toolbar":{"toolbarCollapse":"Werkzeugleiste einklappen","toolbarExpand":"Werkzeugleiste ausklappen","toolbarGroups":{"document":"Dokument","clipboard":"Zwischenablage/Rückgängig","editing":"Editieren","forms":"Formulare","basicstyles":"Grundstile","paragraph":"Absatz","links":"Links","insert":"Einfügen","styles":"Stile","colors":"Farben","tools":"Werkzeuge"},"toolbars":"Editor Werkzeugleisten"},"clipboard":{"copy":"Kopieren","copyError":"Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch kopieren. Bitte benutzen Sie die System-Zwischenablage über STRG-C (kopieren).","cut":"Ausschneiden","cutError":"Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch auszuschneiden. Bitte benutzen Sie die System-Zwischenablage über STRG-X (ausschneiden) und STRG-V (einfügen).","paste":"Einfügen","pasteNotification":"Drücken Sie %1 zum Einfügen. Ihr Browser unterstützt nicht das Einfügen über dem Knopf in der Toolbar oder dem Kontextmenü.","pasteArea":"Einfügebereich","pasteMsg":"Fügen Sie den Inhalt in den unteren Bereich ein und drücken Sie OK."},"colorbutton":{"auto":"Automatisch","bgColorTitle":"Hintergrundfarbe","colors":{"000":"Schwarz","800000":"Kastanienbraun","8B4513":"Braun","2F4F4F":"Dunkles Schiefergrau","008080":"Blaugrün","000080":"Marineblau","4B0082":"Indigo","696969":"Dunkelgrau","B22222":"Ziegelrot","A52A2A":"Braun","DAA520":"Goldgelb","006400":"Dunkelgrün","40E0D0":"Türkis","0000CD":"Mittelblau","800080":"Lila","808080":"Grau","F00":"Rot","FF8C00":"Dunkelorange","FFD700":"Gold","008000":"Grün","0FF":"Cyan","00F":"Blau","EE82EE":"Violett","A9A9A9":"Dunkelgrau","FFA07A":"Helles Lachsrosa","FFA500":"Orange","FFFF00":"Gelb","00FF00":"Lime","AFEEEE":"Blasstürkis","ADD8E6":"Hellblau","DDA0DD":"Pflaumenblau","D3D3D3":"Hellgrau","FFF0F5":"Lavendel","FAEBD7":"Antik Weiß","FFFFE0":"Hellgelb","F0FFF0":"Honigtau","F0FFFF":"Azurblau","F0F8FF":"Alice Blau","E6E6FA":"Lavendel","FFF":"Weiß","1ABC9C":"Strong Cyan","2ECC71":"Smaragdgrün","3498DB":"Bright Blue","9B59B6":"Amethystblau","4E5F70":"Graublau","F1C40F":"Vivid Yellow","16A085":"Dunkelcyan","27AE60":"Dunkelsmaragdgrün","2980B9":"Strong Blue","8E44AD":"Dunkelviolett","2C3E50":"Entsättigtes blau","F39C12":"Orange","E67E22":"Möhrenfarben","E74C3C":"Blassrot","ECF0F1":"Glänzendes Silber","95A5A6":"Helles Graublau","DDD":"Hellgrau","D35400":"Kürbisfarben","C0392B":"Strong Red","BDC3C7":"Silber","7F8C8D":"Graucyan","999":"Dunkelgrau"},"more":"Weitere Farben...","panelTitle":"Farben","textColorTitle":"Textfarbe"},"colordialog":{"clear":"Entfernen","highlight":"Hervorheben","options":"Farboptionen","selected":"Ausgewählte Farbe","title":"Farbe auswählen"},"templates":{"button":"Vorlagen","emptyListMsg":"(Keine Vorlagen definiert)","insertOption":"Aktuelle Inhalte ersetzen","options":"Vorlagenoptionen","selectPromptMsg":"Klicken Sie auf eine Vorlage, um sie im Editor zu öffnen","title":"Inhaltsvorlagen"},"contextmenu":{"options":"Kontextmenüoptionen"},"copyformatting":{"label":"Formatierung kopieren","notification":{"copied":"Formatierung kopiert","applied":"Formatierung angewendet","canceled":"Formatierung abgebrochen","failed":"Formatierung fehlgeschlagen. Sie können Stile nicht anwenden, ohne sie zuerst zu kopieren."}},"div":{"IdInputLabel":"Kennung","advisoryTitleInputLabel":"Tooltip","cssClassInputLabel":"Formatvorlagenklasse","edit":"Div bearbeiten","inlineStyleInputLabel":"Inline Stil","langDirLTRLabel":"Links nach Rechs (LTR)","langDirLabel":"Sprachrichtung","langDirRTLLabel":"Rechs nach Links (RTL)","languageCodeInputLabel":"Sprachcode","remove":"Div entfernen","styleSelectLabel":"Stil","title":"Div Container erzeugen","toolbar":"Div Container erzeugen"},"elementspath":{"eleLabel":"Elementepfad","eleTitle":"%1 Element"},"filetools":{"loadError":"Während des Lesens der Datei ist ein Fehler aufgetreten.","networkError":"Während des Hochladens der Datei ist ein Netzwerkfehler aufgetreten.","httpError404":"Während des Hochladens der Datei ist ein HTTP-Fehler aufgetreten (404: Datei nicht gefunden).","httpError403":"Während des Hochladens der Datei ist ein HTTP-Fehler aufgetreten (403: Verboten).","httpError":"Während des Hochladens der Datei ist ein HTTP-Fehler aufgetreten (Fehlerstatus: %1).","noUrlError":"Hochlade-URL ist nicht definiert.","responseError":"Falsche Antwort des Servers."},"find":{"find":"Suchen","findOptions":"Suchoptionen","findWhat":"Suchen nach:","matchCase":"Groß-/Kleinschreibung beachten","matchCyclic":"Zyklische Suche","matchWord":"Nur ganzes Wort suchen","notFoundMsg":"Der angegebene Text wurde nicht gefunden.","replace":"Ersetzen","replaceAll":"Alle ersetzen","replaceSuccessMsg":"%1 Vorkommen ersetzt.","replaceWith":"Ersetzen mit:","title":"Suchen und Ersetzen"},"fakeobjects":{"anchor":"Anker","flash":"Flash-Animation","hiddenfield":"Verstecktes Feld","iframe":"IFrame","unknown":"Unbekanntes Objekt"},"flash":{"access":"Skriptzugriff","accessAlways":"Immer","accessNever":"Nie","accessSameDomain":"Gleiche Domain","alignAbsBottom":"Abs Unten","alignAbsMiddle":"Abs Mitte","alignBaseline":"Basislinie","alignTextTop":"Text oben","bgcolor":"Hintergrundfarbe","chkFull":"Vollbildmodus erlauben","chkLoop":"Endlosschleife","chkMenu":"Flash-Menü aktivieren","chkPlay":"Automatisch Abspielen","flashvars":"Variablen für Flash","hSpace":"Horizontal-Abstand","properties":"Flash-Eigenschaften","propertiesTab":"Eigenschaften","quality":"Qualität","qualityAutoHigh":"Auto Hoch","qualityAutoLow":"Auto Niedrig","qualityBest":"Beste","qualityHigh":"Hoch","qualityLow":"Niedrig","qualityMedium":"Mittel","scale":"Skalierung","scaleAll":"Alles anzeigen","scaleFit":"Passgenau","scaleNoBorder":"Ohne Rand","title":"Flash-Eigenschaften","vSpace":"Vertikal-Abstand","validateHSpace":"HSpace muss eine Zahl sein.","validateSrc":"URL darf nicht leer sein.","validateVSpace":"VSpace muss eine Zahl sein.","windowMode":"Fenstermodus","windowModeOpaque":"Deckend","windowModeTransparent":"Transparent","windowModeWindow":"Fenster"},"font":{"fontSize":{"label":"Größe","voiceLabel":"Schrifgröße","panelTitle":"Schriftgröße"},"label":"Schriftart","panelTitle":"Schriftartname","voiceLabel":"Schriftart"},"forms":{"button":{"title":"Schaltflächeneigenschaften","text":"Text (Wert)","type":"Typ","typeBtn":"Button","typeSbm":"Absenden","typeRst":"Zurücksetzen"},"checkboxAndRadio":{"checkboxTitle":"Kontrollboxeigenschaften","radioTitle":"Optionsfeldeigenschaften","value":"Wert","selected":"Ausgewählt","required":"Erforderlich"},"form":{"title":"Formulareigenschaften","menu":"Formulareigenschaften","action":"Aktion","method":"Methode","encoding":"Kodierung"},"hidden":{"title":"Versteckte Feldeigenschaften","name":"Name","value":"Wert"},"select":{"title":"Auswahlfeldeigenschaften","selectInfo":"Info auswählen","opAvail":"Verfügbare Optionen","value":"Wert","size":"Größe","lines":"Linien","chkMulti":"Mehrfachauswahl erlauben","required":"Erforderlich","opText":"Text","opValue":"Wert","btnAdd":"Hinzufügen","btnModify":"Ändern","btnUp":"Hoch","btnDown":"Runter","btnSetValue":"Als ausgewählten Wert festlegen","btnDelete":"Entfernen"},"textarea":{"title":"Textfeldeigenschaften","cols":"Spalten","rows":"Reihen"},"textfield":{"title":"Textfeldeigenschaften","name":"Name","value":"Wert","charWidth":"Zeichenbreite","maxChars":"Max. Zeichen","required":"Erforderlich","type":"Typ","typeText":"Text","typePass":"Passwort","typeEmail":"E-mail","typeSearch":"Suche","typeTel":"Telefonnummer","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Absatzformat","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"Überschrift 1","tag_h2":"Überschrift 2","tag_h3":"Überschrift 3","tag_h4":"Überschrift 4","tag_h5":"Überschrift 5","tag_h6":"Überschrift 6","tag_p":"Normal","tag_pre":"Formatiert"},"horizontalrule":{"toolbar":"Horizontale Linie einfügen"},"iframe":{"border":"Rahmen anzeigen","noUrl":"Bitte geben Sie die IFrame-URL an","scrolling":"Rollbalken anzeigen","title":"IFrame-Eigenschaften","toolbar":"IFrame"},"image":{"alt":"Alternativer Text","border":"Rahmen","btnUpload":"Zum Server senden","button2Img":"Möchten Sie die ausgewählte Bildschaltfläche in ein einfaches Bild umwandeln?","hSpace":"Horizontal-Abstand","img2Button":"Möchten Sie das ausgewählte Bild in eine Bildschaltfläche umwandeln?","infoTab":"Bildinfo","linkTab":"Link","lockRatio":"Größenverhältnis beibehalten","menu":"Bildeigenschaften","resetSize":"Größe zurücksetzen","title":"Bildeigenschaften","titleButton":"Bildschaltflächeneigenschaften","upload":"Hochladen","urlMissing":"Bildquellen-URL fehlt.","vSpace":"Vertikal-Abstand","validateBorder":"Rahmen muss eine ganze Zahl sein.","validateHSpace":"Horizontal-Abstand muss eine ganze Zahl sein.","validateVSpace":"Vertikal-Abstand muss eine ganze Zahl sein."},"indent":{"indent":"Einzug erhöhen","outdent":"Einzug verringern"},"smiley":{"options":"Smiley-Optionen","title":"Smiley auswählen","toolbar":"Smiley"},"language":{"button":"Sprache festlegen","remove":"Sprache entfernen"},"link":{"acccessKey":"Zugriffstaste","advanced":"Erweitert","advisoryContentType":"Inhaltstyp","advisoryTitle":"Titel Beschreibung","anchor":{"toolbar":"Anker","menu":"Anker bearbeiten","title":"Ankereigenschaften","name":"Ankername","errorName":"Bitte geben Sie den Namen des Ankers ein","remove":"Anker entfernen"},"anchorId":"Nach Elementkennung","anchorName":"Nach Ankername","charset":"Verknüpfter Ressourcenzeichensatz","cssClasses":"Formatvorlagenklasse","download":"Herunterladen erzwingen","displayText":"Anzeigetext","emailAddress":"E-Mail-Adresse","emailBody":"Nachrichtentext","emailSubject":"Betreffzeile","id":"Kennung","info":"Linkinfo","langCode":"Sprachcode","langDir":"Schreibrichtung","langDirLTR":"Links nach Rechts (LTR)","langDirRTL":"Rechts nach Links (RTL)","menu":"Link bearbeiten","name":"Name","noAnchors":"(Keine Anker im Dokument vorhanden)","noEmail":"Bitte geben Sie E-Mail-Adresse an","noUrl":"Bitte geben Sie die Link-URL an","noTel":"Please type the phone number","other":"<andere>","phoneNumber":"Phone number","popupDependent":"Abhängig (Netscape)","popupFeatures":"Pop-up Fenstereigenschaften","popupFullScreen":"Vollbild (IE)","popupLeft":"Linke Position","popupLocationBar":"Adressleiste","popupMenuBar":"Menüleiste","popupResizable":"Größe änderbar","popupScrollBars":"Rollbalken","popupStatusBar":"Statusleiste","popupToolbar":"Werkzeugleiste","popupTop":"Obere Position","rel":"Beziehung","selectAnchor":"Anker auswählen","styles":"Style","tabIndex":"Tab-Index","target":"Zielseite","targetFrame":"<Frame>","targetFrameName":"Ziel-Fenster-Name","targetPopup":"<Pop-up Fenster>","targetPopupName":"Pop-up Fenster-Name","title":"Link","toAnchor":"Anker in dieser Seite","toEmail":"E-Mail","toUrl":"URL","toPhone":"Phone","toolbar":"Link einfügen/editieren","type":"Link-Typ","unlink":"Link entfernen","upload":"Hochladen"},"list":{"bulletedlist":"Liste","numberedlist":"Nummerierte Liste einfügen/entfernen"},"liststyle":{"bulletedTitle":"Aufzählungslisteneigenschaften","circle":"Ring","decimal":"Dezimal (1, 2, 3, etc.)","disc":"Kreis","lowerAlpha":"Klein Alpha (a, b, c, d, e, usw.)","lowerRoman":"Klein römisch (i, ii, iii, iv, v, usw.)","none":"Keine","notset":"<nicht festgelegt>","numberedTitle":"Nummerierte Listeneigenschaften","square":"Quadrat","start":"Start","type":"Typ","upperAlpha":"Groß alpha (A, B, C, D, E, etc.)","upperRoman":"Groß römisch (I, II, III, IV, V, usw.)","validateStartNumber":"Listenstartnummer muss eine ganze Zahl sein."},"magicline":{"title":"Absatz hier einfügen"},"maximize":{"maximize":"Maximieren","minimize":"Minimieren"},"newpage":{"toolbar":"Neue Seite"},"pagebreak":{"alt":"Seitenumbruch","toolbar":"Seitenumbruch zum Drucken einfügen"},"pastetext":{"button":"Als Klartext einfügen","pasteNotification":"Drücken Sie %1 zum Einfügen. Ihr Browser unterstützt nicht das Einfügen über dem Knopf in der Toolbar oder dem Kontextmenü.","title":"Als Klartext einfügen"},"pastefromword":{"confirmCleanup":"Der Text, den Sie einfügen möchten, scheint aus MS-Word kopiert zu sein. Möchten Sie ihn zuvor bereinigen lassen?","error":"Aufgrund eines internen Fehlers war es nicht möglich die eingefügten Daten zu bereinigen","title":"Aus Word einfügen","toolbar":"Aus Word einfügen"},"preview":{"preview":"Vorschau"},"print":{"toolbar":"Drucken"},"removeformat":{"toolbar":"Formatierung entfernen"},"save":{"toolbar":"Speichern"},"selectall":{"toolbar":"Alles auswählen"},"showblocks":{"toolbar":"Blöcke anzeigen"},"sourcearea":{"toolbar":"Quellcode"},"specialchar":{"options":"Sonderzeichenoptionen","title":"Sonderzeichen auswählen","toolbar":"Sonderzeichen einfügen"},"scayt":{"btn_about":"Über SCAYT","btn_dictionaries":"Wörterbücher","btn_disable":"SCAYT ausschalten","btn_enable":"SCAYT einschalten","btn_langs":"Sprachen","btn_options":"Optionen","text_title":"Rechtschreibprüfung während der Texteingabe (SCAYT)"},"stylescombo":{"label":"Stil","panelTitle":"Formatierungsstile","panelTitle1":"Blockstile","panelTitle2":"Inline Stilart","panelTitle3":"Objektstile"},"table":{"border":"Rahmengröße","caption":"Überschrift","cell":{"menu":"Zelle","insertBefore":"Zelle davor einfügen","insertAfter":"Zelle danach einfügen","deleteCell":"Zelle löschen","merge":"Zellen verbinden","mergeRight":"Nach rechts verbinden","mergeDown":"Nach unten verbinden","splitHorizontal":"Zelle horizontal teilen","splitVertical":"Zelle vertikal teilen","title":"Zelleneigenschaften","cellType":"Zellart","rowSpan":"Anzahl Zeilen verbinden","colSpan":"Anzahl Spalten verbinden","wordWrap":"Zeilenumbruch","hAlign":"Horizontale Ausrichtung","vAlign":"Vertikale Ausrichtung","alignBaseline":"Grundlinie","bgColor":"Hintergrundfarbe","borderColor":"Rahmenfarbe","data":"Daten","header":"Überschrift","yes":"Ja","no":"Nein","invalidWidth":"Zellenbreite muss eine Zahl sein.","invalidHeight":"Zellenhöhe muss eine Zahl sein.","invalidRowSpan":"\"Anzahl Zeilen verbinden\" muss eine Ganzzahl sein.","invalidColSpan":"\"Anzahl Spalten verbinden\" muss eine Ganzzahl sein.","chooseColor":"Wählen"},"cellPad":"Zellenabstand innen","cellSpace":"Zellenabstand außen","column":{"menu":"Spalte","insertBefore":"Spalte links davor einfügen","insertAfter":"Spalte rechts danach einfügen","deleteColumn":"Spalte löschen"},"columns":"Spalte","deleteTable":"Tabelle löschen","headers":"Kopfzeile","headersBoth":"Beide","headersColumn":"Erste Spalte","headersNone":"Keine","headersRow":"Erste Zeile","invalidBorder":"Die Rahmenbreite muß eine Zahl sein.","invalidCellPadding":"Der Zellenabstand innen muß eine positive Zahl sein.","invalidCellSpacing":"Der Zellenabstand außen muß eine positive Zahl sein.","invalidCols":"Die Anzahl der Spalten muß größer als 0 sein..","invalidHeight":"Die Tabellenbreite muß eine Zahl sein.","invalidRows":"Die Anzahl der Zeilen muß größer als 0 sein.","invalidWidth":"Die Tabellenbreite muss eine Zahl sein.","menu":"Tabellen-Eigenschaften","row":{"menu":"Zeile","insertBefore":"Zeile oberhalb einfügen","insertAfter":"Zeile unterhalb einfügen","deleteRow":"Zeile entfernen"},"rows":"Zeile","summary":"Inhaltsübersicht","title":"Tabellen-Eigenschaften","toolbar":"Tabelle","widthPc":"%","widthPx":"Pixel","widthUnit":"Breite Einheit"},"undo":{"redo":"Wiederherstellen","undo":"Rückgängig"},"widget":{"move":"Zum Verschieben anwählen und ziehen","label":"%1 Steuerelement"},"uploadwidget":{"abort":"Hochladen durch den Benutzer abgebrochen.","doneOne":"Datei erfolgreich hochgeladen.","doneMany":"%1 Dateien erfolgreich hochgeladen.","uploadOne":"Datei wird hochgeladen ({percentage}%)...","uploadMany":"Dateien werden hochgeladen, {current} von {max} fertig ({percentage}%)..."},"wsc":{"btnIgnore":"Ignorieren","btnIgnoreAll":"Alle Ignorieren","btnReplace":"Ersetzen","btnReplaceAll":"Alle Ersetzen","btnUndo":"Rückgängig","changeTo":"Ändern in","errorLoading":"Fehler beim laden des Dienstanbieters: %s.","ieSpellDownload":"Rechtschreibprüfung nicht installiert. Möchten Sie sie jetzt herunterladen?","manyChanges":"Rechtschreibprüfung abgeschlossen - %1 Wörter geändert","noChanges":"Rechtschreibprüfung abgeschlossen - keine Worte geändert","noMispell":"Rechtschreibprüfung abgeschlossen - keine Fehler gefunden","noSuggestions":" - keine Vorschläge - ","notAvailable":"Entschuldigung, aber dieser Dienst steht im Moment nicht zur Verfügung.","notInDic":"Nicht im Wörterbuch","oneChange":"Rechtschreibprüfung abgeschlossen - ein Wort geändert","progress":"Rechtschreibprüfung läuft...","title":"Rechtschreibprüfung","toolbar":"Rechtschreibprüfung"}};
bt-source/panel/BTPanel/static/ckeditor/lang/el.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['el']={"editor":"Επεξεργαστής Πλούσιου Κειμένου","editorPanel":"Πίνακας Επεξεργαστή Πλούσιου Κειμένου","common":{"editorHelp":"Πατήστε το ALT 0 για βοήθεια","browseServer":"Εξερεύνηση Διακομιστή","url":"URL","protocol":"Πρωτόκολλο","upload":"Αποστολή","uploadSubmit":"Αποστολή στον Διακομιστή","image":"Εικόνα","flash":"Flash","form":"Φόρμα","checkbox":"Κουτί Επιλογής","radio":"Κουμπί Επιλογής","textField":"Πεδίο Κειμένου","textarea":"Περιοχή Κειμένου","hiddenField":"Κρυφό Πεδίο","button":"Κουμπί","select":"Πεδίο Επιλογής","imageButton":"Κουμπί Εικόνας","notSet":"<δεν έχει ρυθμιστεί>","id":"Id","name":"Όνομα","langDir":"Κατεύθυνση Κειμένου","langDirLtr":"Αριστερά προς Δεξιά (LTR)","langDirRtl":"Δεξιά προς Αριστερά (RTL)","langCode":"Κωδικός Γλώσσας","longDescr":"Αναλυτική Περιγραφή URL","cssClass":"Κλάσεις Φύλλων Στυλ","advisoryTitle":"Ενδεικτικός Τίτλος","cssStyle":"Μορφή Κειμένου","ok":"OK","cancel":"Ακύρωση","close":"Κλείσιμο","preview":"Προεπισκόπηση","resize":"Αλλαγή Μεγέθους","generalTab":"Γενικά","advancedTab":"Για Προχωρημένους","validateNumberFailed":"Αυτή η τιμή δεν είναι αριθμός.","confirmNewPage":"Οι όποιες αλλαγές στο περιεχόμενο θα χαθούν. Είσαστε σίγουροι ότι θέλετε να φορτώσετε μια νέα σελίδα;","confirmCancel":"Μερικές επιλογές έχουν αλλάξει. Είσαστε σίγουροι ότι θέλετε να κλείσετε το παράθυρο διαλόγου;","options":"Επιλογές","target":"Προορισμός","targetNew":"Νέο Παράθυρο (_blank)","targetTop":"Αρχική Περιοχή (_top)","targetSelf":"Ίδιο Παράθυρο (_self)","targetParent":"Γονεϊκό Παράθυρο (_parent)","langDirLTR":"Αριστερά προς Δεξιά (LTR)","langDirRTL":"Δεξιά προς Αριστερά (RTL)","styles":"Μορφή","cssClasses":"Κλάσεις Φύλλων Στυλ","width":"Πλάτος","height":"Ύψος","align":"Στοίχιση","left":"Αριστερά","right":"Δεξιά","center":"Κέντρο","justify":"Πλήρης Στοίχιση","alignLeft":"Στοίχιση Αριστερά","alignRight":"Στοίχιση Δεξιά","alignCenter":"Align Center","alignTop":"Πάνω","alignMiddle":"Μέση","alignBottom":"Κάτω","alignNone":"Χωρίς","invalidValue":"Μη έγκυρη τιμή.","invalidHeight":"Το ύψος πρέπει να είναι ένας αριθμός.","invalidWidth":"Το πλάτος πρέπει να είναι ένας αριθμός.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Η τιμή που ορίζεται για το πεδίο \"%1\" πρέπει να είναι ένας θετικός αριθμός με ή χωρίς μια έγκυρη μονάδα μέτρησης CSS (px, %, in, cm, mm, em, ex, pt, ή pc).","invalidHtmlLength":"Η τιμή που ορίζεται για το πεδίο \"%1\" πρέπει να είναι ένας θετικός αριθμός με ή χωρίς μια έγκυρη μονάδα μέτρησης HTML (px ή %).","invalidInlineStyle":"Η τιμή για το εν σειρά στυλ πρέπει να περιέχει ένα ή περισσότερα ζεύγη με την μορφή \"όνομα: τιμή\" διαχωρισμένα με Ελληνικό ερωτηματικό.","cssLengthTooltip":"Εισάγεται μια τιμή σε pixel ή έναν αριθμό μαζί με μια έγκυρη μονάδα μέτρησης CSS (px, %, in, cm, mm, em, ex, pt, ή pc).","unavailable":"%1<span class=\"cke_accessibility\">, δεν είναι διαθέσιμο</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Κενό","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Εντολή"},"keyboardShortcut":"Συντόμευση πληκτρολογίου","optionDefault":"Default"},"about":{"copy":"Πνευματικά δικαιώματα &copy; $1 Με επιφύλαξη παντός δικαιώματος.","dlgTitle":"Περί του CKEditor 4","moreInfo":"Για πληροφορίες σχετικές με την άδεια χρήσης, παρακαλούμε επισκεφθείτε την ιστοσελίδα μας:"},"basicstyles":{"bold":"Έντονη","italic":"Πλάγια","strike":"Διακριτή Διαγραφή","subscript":"Δείκτης","superscript":"Εκθέτης","underline":"Υπογράμμιση"},"bidi":{"ltr":"Διεύθυνση κειμένου από αριστερά στα δεξιά","rtl":"Διεύθυνση κειμένου από δεξιά στα αριστερά"},"blockquote":{"toolbar":"Περιοχή Παράθεσης"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Σύμπτυξη Εργαλειοθήκης","toolbarExpand":"Ανάπτυξη Εργαλειοθήκης","toolbarGroups":{"document":"Έγγραφο","clipboard":"Πρόχειρο/Αναίρεση","editing":"Επεξεργασία","forms":"Φόρμες","basicstyles":"Βασικά Στυλ","paragraph":"Παράγραφος","links":"Σύνδεσμοι","insert":"Εισαγωγή","styles":"Στυλ","colors":"Χρώματα","tools":"Εργαλεία"},"toolbars":"Εργαλειοθήκες επεξεργαστή"},"clipboard":{"copy":"Αντιγραφή","copyError":"Οι ρυθμίσεις ασφαλείας του περιηγητή σας δεν επιτρέπουν την επιλεγμένη εργασία αντιγραφής. Παρακαλώ χρησιμοποιείστε το πληκτρολόγιο (Ctrl/Cmd+C).","cut":"Αποκοπή","cutError":"Οι ρυθμίσεις ασφαλείας του περιηγητή σας δεν επιτρέπουν την επιλεγμένη εργασία αποκοπής. Παρακαλώ χρησιμοποιείστε το πληκτρολόγιο (Ctrl/Cmd+X).","paste":"Επικόλληση","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Περιοχή Επικόλλησης","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Αυτόματα","bgColorTitle":"Χρώμα Φόντου","colors":{"000":"Μαύρο","800000":"Καστανέρυθρο","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Βαθυκύανο","000080":"Μπλε μαρέν","4B0082":"Ινδικό","696969":"Σκούρο Γκρι","B22222":"Ανοικτό Κόκκινο","A52A2A":"Καφέ","DAA520":"Golden Rod","006400":"Σκούρο Πράσινο","40E0D0":"Τυρκουάζ","0000CD":"Medium Blue","800080":"Μοβ","808080":"Γκρι","F00":"Κόκκινο","FF8C00":"Σκούρο Πορτοκαλί","FFD700":"Χρυσαφί","008000":"Πράσινο","0FF":"Κυανό","00F":"Μπλε","EE82EE":"Μενεξεδί","A9A9A9":"Ποντικί","FFA07A":"Ανοικτό Σομόν","FFA500":"Πορτοκαλί","FFFF00":"Κίτρινο","00FF00":"Μοσχολέμονο","AFEEEE":"Pale Turquoise","ADD8E6":"Γαλάζιο","DDA0DD":"Δαμασκηνί","D3D3D3":"Ανοικτό Γκρι","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Ανοικτό Κίτρινο","F0FFF0":"Honeydew","F0FFFF":"Γαλανό","F0F8FF":"Alice Blue","E6E6FA":"Ελαφρός Ιώδες","FFF":"Λευκό","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Πορτοκαλί","E67E22":"Καροτί","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Αργυρό","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Περισσότερα Χρώματα…","panelTitle":"Χρώματα","textColorTitle":"Χρώμα Κειμένου"},"colordialog":{"clear":"Εκκαθάριση","highlight":"Σήμανση","options":"Επιλογές Χρωμάτων","selected":"Επιλεγμένο Χρώμα","title":"Επιλογή χρώματος"},"templates":{"button":"Πρότυπα","emptyListMsg":"(Δεν έχουν καθοριστεί πρότυπα)","insertOption":"Αντικατάσταση υπάρχοντων περιεχομένων","options":"Επιλογές Προτύπου","selectPromptMsg":"Παρακαλώ επιλέξτε πρότυπο για εισαγωγή στο πρόγραμμα","title":"Πρότυπα Περιεχομένου"},"contextmenu":{"options":"Επιλογές Αναδυόμενου Μενού"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Ενδεικτικός Τίτλος","cssClassInputLabel":"Κλάσεις Φύλλων Στυλ","edit":"Επεξεργασία Div","inlineStyleInputLabel":"Στυλ Εν Σειρά","langDirLTRLabel":"Αριστερά προς Δεξιά (LTR)","langDirLabel":"Κατεύθυνση Κειμένου","langDirRTLLabel":"Δεξιά προς Αριστερά (RTL)","languageCodeInputLabel":"Κωδικός Γλώσσας","remove":"Διαγραφή Div","styleSelectLabel":"Μορφή","title":"Δημιουργία Div","toolbar":"Δημιουργία Div"},"elementspath":{"eleLabel":"Διαδρομή Στοιχείων","eleTitle":"Στοιχείο %1"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Εύρεση","findOptions":"Επιλογές Εύρεσης","findWhat":"Εύρεση για:","matchCase":"Ταίριασμα πεζών/κεφαλαίων","matchCyclic":"Αναδρομική εύρεση","matchWord":"Εύρεση μόνο πλήρων λέξεων","notFoundMsg":"Το κείμενο δεν βρέθηκε.","replace":"Αντικατάσταση","replaceAll":"Αντικατάσταση Όλων","replaceSuccessMsg":"Ο(ι) όρος(-οι) αντικαταστήθηκε(-αν) %1 φορές.","replaceWith":"Αντικατάσταση με:","title":"Εύρεση και Αντικατάσταση"},"fakeobjects":{"anchor":"Άγκυρα","flash":"Ταινία Flash","hiddenfield":"Κρυφό Πεδίο","iframe":"IFrame","unknown":"Άγνωστο Αντικείμενο"},"flash":{"access":"Πρόσβαση Script","accessAlways":"Πάντα","accessNever":"Ποτέ","accessSameDomain":"Ίδιο όνομα τομέα","alignAbsBottom":"Απόλυτα Κάτω","alignAbsMiddle":"Απόλυτα στη Μέση","alignBaseline":"Γραμμή Βάσης","alignTextTop":"Κορυφή Κειμένου","bgcolor":"Χρώμα Υποβάθρου","chkFull":"Να Επιτρέπεται η Προβολή σε Πλήρη Οθόνη","chkLoop":"Επανάληψη","chkMenu":"Ενεργοποίηση Flash Menu","chkPlay":"Αυτόματη Εκτέλεση","flashvars":"Μεταβλητές για Flash","hSpace":"Οριζόντιο Διάστημα","properties":"Ιδιότητες Flash","propertiesTab":"Ιδιότητες","quality":"Ποιότητα","qualityAutoHigh":"Αυτόματη Υψηλή","qualityAutoLow":"Αυτόματη Χαμηλή","qualityBest":"Καλύτερη","qualityHigh":"Υψηλή","qualityLow":"Χαμηλή","qualityMedium":"Μεσαία","scale":"Μεγέθυνση","scaleAll":"Εμφάνιση όλων","scaleFit":"Ακριβές Μέγεθος","scaleNoBorder":"Χωρίς Περίγραμμα","title":"Ιδιότητες Flash","vSpace":"Κάθετο Διάστημα","validateHSpace":"Το HSpace πρέπει να είναι αριθμός.","validateSrc":"Εισάγετε την τοποθεσία (URL) του υπερσυνδέσμου (Link)","validateVSpace":"Το VSpace πρέπει να είναι αριθμός.","windowMode":"Τρόπος λειτουργίας παραθύρου","windowModeOpaque":"Συμπαγές","windowModeTransparent":"Διάφανο","windowModeWindow":"Παράθυρο"},"font":{"fontSize":{"label":"Μέγεθος","voiceLabel":"Μέγεθος Γραμματοσειράς","panelTitle":"Μέγεθος Γραμματοσειράς"},"label":"Γραμματοσειρά","panelTitle":"Όνομα Γραμματοσειράς","voiceLabel":"Γραμματοσειρά"},"forms":{"button":{"title":"Ιδιότητες Κουμπιού","text":"Κείμενο (Τιμή)","type":"Τύπος","typeBtn":"Κουμπί","typeSbm":"Υποβολή","typeRst":"Επαναφορά"},"checkboxAndRadio":{"checkboxTitle":"Ιδιότητες Κουτιού Επιλογής","radioTitle":"Ιδιότητες Κουμπιού Επιλογής","value":"Τιμή","selected":"Επιλεγμένο","required":"Απαιτείται"},"form":{"title":"Ιδιότητες Φόρμας","menu":"Ιδιότητες Φόρμας","action":"Ενέργεια","method":"Μέθοδος","encoding":"Κωδικοποίηση"},"hidden":{"title":"Ιδιότητες Κρυφού Πεδίου","name":"Όνομα","value":"Τιμή"},"select":{"title":"Ιδιότητες Πεδίου Επιλογής","selectInfo":"Πληροφορίες Πεδίου Επιλογής","opAvail":"Διαθέσιμες Επιλογές","value":"Τιμή","size":"Μέγεθος","lines":"γραμμές","chkMulti":"Να επιτρέπονται οι πολλαπλές επιλογές","required":"Required","opText":"Κείμενο","opValue":"Τιμή","btnAdd":"Προσθήκη","btnModify":"Τροποποίηση","btnUp":"Πάνω","btnDown":"Κάτω","btnSetValue":"Θέση ως προεπιλογή","btnDelete":"Διαγραφή"},"textarea":{"title":"Ιδιότητ��ς Περιοχής Κειμένου","cols":"Στήλες","rows":"Σειρές"},"textfield":{"title":"Ιδιότητες Πεδίου Κειμένου","name":"Όνομα","value":"Τιμή","charWidth":"Πλάτος Χαρακτήρων","maxChars":"Μέγιστοι χαρακτήρες","required":"Required","type":"Τύπος","typeText":"Κείμενο","typePass":"Κωδικός","typeEmail":"Email","typeSearch":"Αναζήτηση","typeTel":"Αριθμός Τηλεφώνου","typeUrl":"URL"}},"format":{"label":"Μορφοποίηση","panelTitle":"Μορφοποίηση Παραγράφου","tag_address":"Διεύθυνση","tag_div":"Κανονική (DIV)","tag_h1":"Κεφαλίδα 1","tag_h2":"Κεφαλίδα 2","tag_h3":"Κεφαλίδα 3","tag_h4":"Κεφαλίδα 4","tag_h5":"Κεφαλίδα 5","tag_h6":"Κεφαλίδα 6","tag_p":"Κανονική","tag_pre":"Προ-μορφοποιημένη"},"horizontalrule":{"toolbar":"Εισαγωγή Οριζόντιας Γραμμής"},"iframe":{"border":"Προβολή περιγράμματος πλαισίου","noUrl":"Παρακαλούμε εισάγεται το URL του iframe","scrolling":"Ενεργοποίηση μπαρών κύλισης","title":"Ιδιότητες IFrame","toolbar":"IFrame"},"image":{"alt":"Εναλλακτικό Κείμενο","border":"Περίγραμμα","btnUpload":"Αποστολή στον Διακομιστή","button2Img":"Θέλετε να μετατρέψετε το επιλεγμένο κουμπί εικόνας σε απλή εικόνα;","hSpace":"HSpace","img2Button":"Θέλετε να μεταμορφώσετε την επιλεγμένη εικόνα που είναι πάνω σε ένα κουμπί;","infoTab":"Πληροφορίες Εικόνας","linkTab":"Σύνδεσμος","lockRatio":"Κλείδωμα Αναλογίας","menu":"Ιδιότητες Εικόνας","resetSize":"Επαναφορά Αρχικού Μεγέθους","title":"Ιδιότητες Εικόνας","titleButton":"Ιδιότητες Κουμπιού Εικόνας","upload":"Αποστολή","urlMissing":"Το URL πηγής για την εικόνα λείπει.","vSpace":"VSpace","validateBorder":"Το περίγραμμα πρέπει να είναι ένας ακέραιος αριθμός.","validateHSpace":"Το HSpace πρέπει να είναι ένας ακέραιος αριθμός.","validateVSpace":"Το VSpace πρέπει να είναι ένας ακέραιος αριθμός."},"indent":{"indent":"Αύξηση Εσοχής","outdent":"Μείωση Εσοχής"},"smiley":{"options":"Επιλογές Φατσούλων","title":"Εισάγετε μια Φατσούλα","toolbar":"Φατσούλα"},"language":{"button":"Θέση γλώσσας","remove":"Αφαίρεση γλώσσας"},"link":{"acccessKey":"Συντόμευση","advanced":"Για Προχωρημένους","advisoryContentType":"Ενδεικτικός Τύπος Περιεχομένου","advisoryTitle":"Ενδεικτικός Τίτλος","anchor":{"toolbar":"Εισαγωγή/επεξεργασία Άγκυρας","menu":"Ιδιότητες άγκυρας","title":"Ιδιότητες άγκυρας","name":"Όνομα άγκυρας","errorName":"Παρακαλούμε εισάγετε όνομα άγκυρας","remove":"Αφαίρεση Άγκυρας"},"anchorId":"Βάσει του Element Id","anchorName":"Βάσει του Ονόματος Άγκυρας","charset":"Κωδικοποίηση Χαρακτήρων Προσαρτημένης Πηγής","cssClasses":"Κλάσεις Φύλλων Στυλ","download":"Force Download","displayText":"Display Text","emailAddress":"Διεύθυνση E-mail","emailBody":"Κείμενο Μηνύματος","emailSubject":"Θέμα Μηνύματος","id":"Id","info":"Πληροφορίες Συνδέσμου","langCode":"Κατεύθυνση Κειμένου","langDir":"Κατεύθυνση Κειμένου","langDirLTR":"Αριστερά προς Δεξιά (LTR)","langDirRTL":"Δεξιά προς Αριστερά (RTL)","menu":"Επεξεργασία Συνδέσμου","name":"Όνομα","noAnchors":"(Δεν υπάρχουν άγκυρες στο κείμενο)","noEmail":"Εισάγετε τη διεύθυνση ηλεκτρονικού ταχυδρομείου","noUrl":"Εισάγετε την τοποθεσία (URL) του συνδέσμου","noTel":"Please type the phone number","other":"<άλλο>","phoneNumber":"Phone number","popupDependent":"Εξαρτημένο (Netscape)","popupFeatures":"Επιλογές Αναδυόμενου Παραθύρου","popupFullScreen":"Πλήρης Οθόνη (IE)","popupLeft":"Θέση Αριστερά","popupLocationBar":"Γραμμή Τοποθεσίας","popupMenuBar":"Γραμμή Επιλογών","popupResizable":"Προσαρμοζόμενο Μέγεθος","popupScrollBars":"Μπάρες Κύλισης","popupStatusBar":"Γραμμή Κατάστασης","popupToolbar":"Εργαλειοθήκη","popupTop":"Θέση Πάν��","rel":"Σχέση","selectAnchor":"Επιλέξτε μια Άγκυρα","styles":"Μορφή","tabIndex":"Σειρά Μεταπήδησης","target":"Παράθυρο Προορισμού","targetFrame":"<πλαίσιο>","targetFrameName":"Όνομα Πλαισίου Προορισμού","targetPopup":"<αναδυόμενο παράθυρο>","targetPopupName":"Όνομα Αναδυόμενου Παραθύρου","title":"Σύνδεσμος","toAnchor":"Άγκυρα σε αυτήν τη σελίδα","toEmail":"E-Mail","toUrl":"URL","toPhone":"Phone","toolbar":"Σύνδεσμος","type":"Τύπος Συνδέσμου","unlink":"Αφαίρεση Συνδέσμου","upload":"Αποστολή"},"list":{"bulletedlist":"Εισαγωγή/Απομάκρυνση Λίστας Κουκκίδων","numberedlist":"Εισαγωγή/Απομάκρυνση Αριθμημένης Λίστας"},"liststyle":{"bulletedTitle":"Ιδιότητες Λίστας Σημείων","circle":"Κύκλος","decimal":"Δεκαδική (1, 2, 3, κτλ)","disc":"Δίσκος","lowerAlpha":"Μικρά Λατινικά (a, b, c, d, e, κτλ.)","lowerRoman":"Μικρά Ρωμαϊκά (i, ii, iii, iv, v, κτλ)","none":"Καμία","notset":"<δεν έχει οριστεί>","numberedTitle":"Ιδιότητες Αριθμημένης Λίστας ","square":"Τετράγωνο","start":"Εκκίνηση","type":"Τύπος","upperAlpha":"Κεφαλαία Λατινικά (A, B, C, D, E, κτλ)","upperRoman":"Κεφαλαία Ρωμαϊκά (I, II, III, IV, V, κτλ)","validateStartNumber":"Ο αριθμός εκκίνησης της αρίθμησης πρέπει να είναι ακέραιος αριθμός."},"magicline":{"title":"Εισάγετε παράγραφο εδώ"},"maximize":{"maximize":"Μεγιστοποίηση","minimize":"Ελαχιστοποίηση"},"newpage":{"toolbar":"Νέα Σελίδα"},"pagebreak":{"alt":"Αλλαγή Σελίδας","toolbar":"Εισαγωγή Τέλους Σελίδας για Εκτύπωση"},"pastetext":{"button":"Επικόλληση ως απλό κείμενο","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Επικόλληση ως απλό κείμενο"},"pastefromword":{"confirmCleanup":"Το κείμενο που επικολλάται φαίνεται να είναι αντιγραμμένο από το Word. Μήπως θα θέλατε να καθαριστεί προτού επικολληθεί;","error":"Δεν ήταν δυνατό να καθαριστούν τα δεδομένα λόγω ενός εσωτερικού σφάλματος","title":"Επικόλληση από το Word","toolbar":"Επικόλληση από το Word"},"preview":{"preview":"Προεπισκόπιση"},"print":{"toolbar":"Εκτύπωση"},"removeformat":{"toolbar":"Εκκαθάριση Μορφοποίησης"},"save":{"toolbar":"Αποθήκευση"},"selectall":{"toolbar":"Επιλογή όλων"},"showblocks":{"toolbar":"Προβολή Τμημάτων"},"sourcearea":{"toolbar":"Κώδικας"},"specialchar":{"options":"Επιλογές Ειδικών Χαρακτήρων","title":"Επιλέξτε Έναν Ειδικό Χαρακτήρα","toolbar":"Εισαγωγή Ειδικού Χαρακτήρα"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Λεξικά","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Γλώσσες","btn_options":"Επιλογές","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Μορφές","panelTitle":"Στυλ Μορφοποίησης","panelTitle1":"Στυλ Τμημάτων","panelTitle2":"Στυλ Εν Σειρά","panelTitle3":"Στυλ Αντικειμένων"},"table":{"border":"Πάχος Περιγράμματος","caption":"Λεζάντα","cell":{"menu":"Κελί","insertBefore":"Εισαγωγή Κελιού Πριν","insertAfter":"Εισαγωγή Κελιού Μετά","deleteCell":"Διαγραφή Κελιών","merge":"Ενοποίηση Κελιών","mergeRight":"Συγχώνευση Με Δεξιά","mergeDown":"Συγχώνευση Με Κάτω","splitHorizontal":"Οριζόντια Διαίρεση Κελιού","splitVertical":"Κατακόρυφη Διαίρεση Κελιού","title":"Ιδιότητες Κελιού","cellType":"Τύπος Κελιού","rowSpan":"Εύρος Γραμμών","colSpan":"Εύρος Στηλών","wordWrap":"Αναδίπλωση Λέξεων","hAlign":"Οριζόντια Στοίχιση","vAlign":"Κάθετη Στοίχιση","alignBaseline":"Γραμμή Βάσης","bgColor":"Χρώμα Φόντου","borderColor":"Χρώμα Περιγράμματος","data":"Δεδομένα","header":"Κεφαλίδα","yes":"Ναι","no":"Όχι","invalidWidth":"Το πλάτος του κελιού πρέπει να είναι αριθμός.","invalidHeight":"Το ύψος του κελιού πρέπει να είναι αριθμός.","invalidRowSpan":"Το εύρος των γραμμών πρέπει να είναι ακέραιος αριθμός.","invalidColSpan":"Το εύρος των στηλών πρέπει να είναι ακέραιος αριθμός.","chooseColor":"Επιλέξτε"},"cellPad":"Αναπλήρωση κελιών","cellSpace":"Απόσταση κελιών","column":{"menu":"Στήλη","insertBefore":"Εισαγωγή Στήλης Πριν","insertAfter":"Εισαγωγή Στήλης Μετά","deleteColumn":"Διαγραφή Στηλών"},"columns":"Στήλες","deleteTable":"Διαγραφή Πίνακα","headers":"Κεφαλίδες","headersBoth":"Και τα δύο","headersColumn":"Πρώτη στήλη","headersNone":"Κανένα","headersRow":"Πρώτη Γραμμή","invalidBorder":"Το πάχος του περιγράμματος πρέπει να είναι ένας αριθμός.","invalidCellPadding":"Η αναπλήρωση των κελιών πρέπει να είναι θετικός αριθμός.","invalidCellSpacing":"Η απόσταση μεταξύ των κελιών πρέπει να είναι ένας θετικός αριθμός.","invalidCols":"Ο αριθμός των στηλών πρέπει να είναι μεγαλύτερος από 0.","invalidHeight":"Το ύψος του πίνακα πρέπει να είναι αριθμός.","invalidRows":"Ο αριθμός των σειρών πρέπει να είναι μεγαλύτερος από 0.","invalidWidth":"Το πλάτος του πίνακα πρέπει να είναι ένας αριθμός.","menu":"Ιδιότητες Πίνακα","row":{"menu":"Γραμμή","insertBefore":"Εισαγωγή Γραμμής Πριν","insertAfter":"Εισαγωγή Γραμμής Μετά","deleteRow":"Διαγραφή Γραμμών"},"rows":"Γραμμές","summary":"Περίληψη","title":"Ιδιότητες Πίνακα","toolbar":"Πίνακας","widthPc":"τοις εκατό","widthPx":"pixel","widthUnit":"μονάδα πλάτους"},"undo":{"redo":"Επανάληψη","undo":"Αναίρεση"},"widget":{"move":"Κάνετε κλικ και σύρετε το ποντίκι για να μετακινήστε","label":"%1 widget"},"uploadwidget":{"abort":"Αποστολή ακυρώθηκε απο χρήστη.","doneOne":"Αρχείο εστάλη επιτυχώς.","doneMany":"Επιτυχής αποστολή %1 αρχείων.","uploadOne":"Αποστολή αρχείου ({percentage}%)…","uploadMany":"Αποστολή αρχείων, {current} από {max} ολοκληρωμένα ({percentage}%)…"},"wsc":{"btnIgnore":"Αγνόηση","btnIgnoreAll":"Αγνόηση όλων","btnReplace":"Αντικατάσταση","btnReplaceAll":"Αντικατάσταση όλων","btnUndo":"Αναίρεση","changeTo":"Αλλαγή σε","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Δεν υπάρχει εγκατεστημένος ορθογράφος. Θέλετε να τον κατεβάσετε τώρα;","manyChanges":"Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Άλλαξαν %1 λέξεις","noChanges":"Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Δεν άλλαξαν λέξεις","noMispell":"Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Δεν βρέθηκαν λάθη","noSuggestions":"- Δεν υπάρχουν προτάσεις -","notAvailable":"Η υπηρεσία δεν είναι διαθέσιμη αυτήν την στιγμή.","notInDic":"Δεν υπάρχει στο λεξικό","oneChange":"Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Άλλαξε μια λέξη","progress":"Γίνεται ορθογραφικός έλεγχος...","title":"Ορθογραφικός Έλεγχος","toolbar":"Ορθογραφικός Έλεγχος"}};
bt-source/panel/BTPanel/static/ckeditor/lang/en-au.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['en-au']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Align","left":"Left","right":"Right","center":"Centre","justify":"Justify","alignLeft":"Align Left","alignRight":"Align Right","alignCenter":"Align Centre","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor 4","moreInfo":"For licensing information please visit our web site:"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Paste Area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Colour","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Greyish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Greyish Cyan","DDD":"Light Grey","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Greyish Cyan","999":"Dark Grey"},"more":"More Colours...","panelTitle":"Colors","textColorTitle":"Text Colour"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Colour Options","selected":"Selected Colour","title":"Select colour"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background colour","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected","required":"Required"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","required":"Required","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","required":"Required","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","download":"Force Download","displayText":"Display Text","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","noTel":"Please type the phone number","other":"<other>","phoneNumber":"Phone number","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toPhone":"Phone","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximise","minimize":"Minimise"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a number.","invalidCellSpacing":"Cell spacing must be a number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"widget":{"move":"Click and drag to move","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
bt-source/panel/BTPanel/static/ckeditor/lang/en-ca.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['en-ca']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Align","left":"Left","right":"Right","center":"Centre","justify":"Justify","alignLeft":"Align Left","alignRight":"Align Right","alignCenter":"Align Center","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor 4","moreInfo":"For licensing information please visit our web site:"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Paste Area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Colour","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"More Colours...","panelTitle":"Colors","textColorTitle":"Text Colour"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background colour","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected","required":"Required"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","required":"Required","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","required":"Required","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","download":"Force Download","displayText":"Display Text","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","noTel":"Please type the phone number","other":"<other>","phoneNumber":"Phone number","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toPhone":"Phone","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a number.","invalidCellSpacing":"Cell spacing must be a number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"widget":{"move":"Click and drag to move","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
bt-source/panel/BTPanel/static/ckeditor/lang/en-gb.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['en-gb']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Drag to resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialogue window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Align","left":"Left","right":"Right","center":"Center","justify":"Justify","alignLeft":"Align Left","alignRight":"Align Right","alignCenter":"Align Center","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor 4","moreInfo":"For licensing information please visit our web site:"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Paste Area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Colour","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Grey","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Grey","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Grey","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Grey","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"More Colours...","panelTitle":"Colours","textColorTitle":"Text Colour"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Colour Options","selected":"Selected Colour","title":"Select colour"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background colour","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected","required":"Required"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","required":"Required","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","required":"Required","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"E-mail","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","download":"Force Download","displayText":"Display Text","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","noTel":"Please type the phone number","other":"<other>","phoneNumber":"Phone number","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toPhone":"Phone","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximise","minimize":"Minimise"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a number.","invalidCellSpacing":"Cell spacing must be a number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"widget":{"move":"Click and drag to move","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
bt-source/panel/BTPanel/static/ckeditor/lang/en.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['en']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Alignment","left":"Left","right":"Right","center":"Center","justify":"Justify","alignLeft":"Align Left","alignRight":"Align Right","alignCenter":"Align Center","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor 4","moreInfo":"For licensing information please visit our web site:"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strikethrough","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Paste Area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Color","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"More Colors...","panelTitle":"Colors","textColorTitle":"Text Color"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background color","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected","required":"Required"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","required":"Required","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","required":"Required","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","download":"Force Download","displayText":"Display Text","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","noTel":"Please type the phone number","other":"<other>","phoneNumber":"Phone number","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toPhone":"Phone","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"widget":{"move":"Click and drag to move","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
bt-source/panel/BTPanel/static/ckeditor/lang/eo.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['eo']={"editor":"RiĉTeksta Redaktilo","editorPanel":"Panelo de la RiĉTeksta Redaktilo","common":{"editorHelp":"Premu ALT 0 por helpilo","browseServer":"Foliumi en la Servilo","url":"URL","protocol":"Protokolo","upload":"Alŝuti","uploadSubmit":"Sendu al Servilo","image":"Bildo","flash":"Flaŝo","form":"Formularo","checkbox":"Markobutono","radio":"Radiobutono","textField":"Teksta kampo","textarea":"Teksta Areo","hiddenField":"Kaŝita Kampo","button":"Butono","select":"Elekta Kampo","imageButton":"Bildbutono","notSet":"<Defaŭlta>","id":"Id","name":"Nomo","langDir":"Skribdirekto","langDirLtr":"De maldekstro dekstren (LTR)","langDirRtl":"De dekstro maldekstren (RTL)","langCode":"Lingva Kodo","longDescr":"URL de Longa Priskribo","cssClass":"Klasoj de Stilfolioj","advisoryTitle":"Priskriba Titolo","cssStyle":"Stilo","ok":"Akcepti","cancel":"Rezigni","close":"Fermi","preview":"Vidigi Aspekton","resize":"Movigi por ŝanĝi la grandon","generalTab":"Ĝenerala","advancedTab":"Speciala","validateNumberFailed":"Tiu valoro ne estas nombro.","confirmNewPage":"La neregistritaj ŝanĝoj estas perdotaj. Ĉu vi certas, ke vi volas ŝargi novan paĝon?","confirmCancel":"Iuj opcioj esta ŝanĝitaj. Ĉu vi certas, ke vi volas fermi la dialogon?","options":"Opcioj","target":"Celo","targetNew":"Nova Fenestro (_blank)","targetTop":"Supra Fenestro (_top)","targetSelf":"Sama Fenestro (_self)","targetParent":"Patra Fenestro (_parent)","langDirLTR":"De maldekstro dekstren (LTR)","langDirRTL":"De dekstro maldekstren (RTL)","styles":"Stilo","cssClasses":"Stilfoliaj Klasoj","width":"Larĝo","height":"Alto","align":"Ĝisrandigo","left":"Maldekstre","right":"Dekstre","center":"Centre","justify":"Ĝisrandigi Ambaŭflanke","alignLeft":"Ĝisrandigi maldekstren","alignRight":"Ĝisrandigi dekstren","alignCenter":"Align Center","alignTop":"Supre","alignMiddle":"Centre","alignBottom":"Malsupre","alignNone":"Neniu","invalidValue":"Nevalida Valoro","invalidHeight":"Alto devas esti nombro.","invalidWidth":"Larĝo devas esti nombro.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"La valoro indikita por la \"%1\" kampo devas esti pozitiva nombro kun aŭ sen valida CSSmezurunuo (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"La valoro indikita por la \"%1\" kampo devas esti pozitiva nombro kun aŭ sen valida HTMLmezurunuo (px or %).","invalidInlineStyle":"La valoro indikita por la enlinia stilo devas konsisti el unu aŭ pluraj elementoj kun la formato de \"nomo : valoro\", apartigitaj per punktokomoj.","cssLengthTooltip":"Entajpu nombron por rastrumera valoro aŭ nombron kun valida CSSunuo (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, nehavebla</span>","keyboard":{"8":"Retropaŝo","13":"Enigi","16":"Registrumo","17":"Stirklavo","18":"Alt-klavo","32":"Spaco","35":"Fino","36":"Hejmo","46":"Forigi","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Komando"},"keyboardShortcut":"Fulmoklavo","optionDefault":"Defaŭlta"},"about":{"copy":"Copyright &copy; $1. Ĉiuj rajtoj rezervitaj.","dlgTitle":"Pri CKEditor 4","moreInfo":"Por informoj pri licenco, bonvolu viziti nian retpaĝaron:"},"basicstyles":{"bold":"Grasa","italic":"Kursiva","strike":"Trastreko","subscript":"Suba indico","superscript":"Supra indico","underline":"Substreko"},"bidi":{"ltr":"Tekstdirekto de maldekstre dekstren","rtl":"Tekstdirekto de dekstre maldekstren"},"blockquote":{"toolbar":"Citaĵo"},"notification":{"closed":"Sciigo fermita"},"toolbar":{"toolbarCollapse":"Faldi la ilbreton","toolbarExpand":"Malfaldi la ilbreton","toolbarGroups":{"document":"Dokumento","clipboard":"Poŝo/Malfari","editing":"Redaktado","forms":"Formularoj","basicstyles":"Bazaj stiloj","paragraph":"Paragrafo","links":"Ligiloj","insert":"Enmeti","styles":"Stiloj","colors":"Koloroj","tools":"Iloj"},"toolbars":"Ilobretoj de la redaktilo"},"clipboard":{"copy":"Kopii","copyError":"La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras kopiajn operaciojn. Bonvolu uzi la klavaron por tio (Ctrl/Cmd-C).","cut":"Eltondi","cutError":"La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras eltondajn operaciojn. Bonvolu uzi la klavaron por tio (Ctrl/Cmd-X).","paste":"Interglui","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Intergluoareo","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Aŭtomata","bgColorTitle":"Fona Koloro","colors":{"000":"Nigra","800000":"Kaŝtankolora","8B4513":"Mezbruna","2F4F4F":"Ardezgriza","008080":"Marĉanaskolora","000080":"Maristblua","4B0082":"Indigokolora","696969":"Malhelgriza","B22222":"Brikruĝa","A52A2A":"Bruna","DAA520":"Senbrilorkolora","006400":"Malhelverda","40E0D0":"Turkisblua","0000CD":"Reĝblua","800080":"Purpura","808080":"Griza","F00":"Ruĝa","FF8C00":"Malheloranĝkolora","FFD700":"Orkolora","008000":"Verda","0FF":"Verdblua","00F":"Blua","EE82EE":"Viola","A9A9A9":"Mezgriza","FFA07A":"Salmokolora","FFA500":"Oranĝkolora","FFFF00":"Flava","00FF00":"Limetkolora","AFEEEE":"Helturkiskolora","ADD8E6":"Helblua","DDA0DD":"Prunkolora","D3D3D3":"Helgriza","FFF0F5":"Lavendkolora vangoŝminko","FAEBD7":"Antikvablanka","FFFFE0":"Helflava","F0FFF0":"Vintromelonkolora","F0FFFF":"Lazura","F0F8FF":"Aliceblua","E6E6FA":"Lavendkolora","FFF":"Blanka","1ABC9C":"Fortverdblua","2ECC71":"Smeraldkolora","3498DB":"Brilblua","9B59B6":"Ametistkolora","4E5F70":"Grizblua","F1C40F":"Brilflava","16A085":"Malhelverdblua","27AE60":"Malhelsmeraldkolora","2980B9":"Fortblua","8E44AD":"Malhelviola","2C3E50":"Malsaturita Bluo","F39C12":"Oranĝkolora","E67E22":"Karotkolora","E74C3C":"Pale Ruĝa","ECF0F1":"Brile Arĝenta","95A5A6":"Helgrizverdblua","DDD":"Helgriza","D35400":"Kukurbokolora","C0392B":"Forte ruĝa","BDC3C7":"Arĝenta","7F8C8D":"Grizverdblua","999":"Malhelgriza"},"more":"Pli da Koloroj...","panelTitle":"Koloroj","textColorTitle":"Teksta Koloro"},"colordialog":{"clear":"Forigi","highlight":"Detaloj","options":"Opcioj pri koloroj","selected":"Selektita koloro","title":"Selekti koloron"},"templates":{"button":"Ŝablonoj","emptyListMsg":"(Neniu ŝablono difinita)","insertOption":"Anstataŭigi la nunan enhavon","options":"Opcioj pri ŝablonoj","selectPromptMsg":"Bonvolu selekti la ŝablonon por malfermi ĝin en la redaktilo","title":"Enhavo de ŝablonoj"},"contextmenu":{"options":"Opcioj de Kunteksta Menuo"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Priskriba Titolo","cssClassInputLabel":"Stilfolioklasoj","edit":"Redakti Div","inlineStyleInputLabel":"Enlinia stilo","langDirLTRLabel":"Maldekstre dekstren (angle LTR)","langDirLabel":"Skribdirekto","langDirRTLLabel":"Dekstre maldekstren (angle RTL)","languageCodeInputLabel":" Lingvokodo","remove":"Forigi Div","styleSelectLabel":"Stilo","title":"Krei DIV ujon","toolbar":"Krei DIV ujon"},"elementspath":{"eleLabel":"Vojo al Elementoj","eleTitle":"%1 elementoj"},"filetools":{"loadError":"Eraro okazis dum la dosiera legado.","networkError":"Reta eraro okazis dum la dosiera alŝuto.","httpError404":"HTTP eraro okazis dum la dosiera alŝuto (404: dosiero ne trovita).","httpError403":"HTTP eraro okazis dum la dosiera alŝuto (403: malpermesita).","httpError":"HTTP eraro okazis dum la dosiera alŝuto (erara stato: %1).","noUrlError":"Alŝuta URL ne estas difinita.","responseError":"Malĝusta respondo de la servilo."},"find":{"find":"Serĉi","findOptions":"Opcioj pri Serĉado","findWhat":"Serĉi:","matchCase":"Kongruigi Usklecon","matchCyclic":"Cikla Serĉado","matchWord":"Tuta Vorto","notFoundMsg":"La celteksto ne estas trovita.","replace":"Anstataŭigi","replaceAll":"Anstataŭigi Ĉion","replaceSuccessMsg":"%1 anstataŭigita(j) apero(j).","replaceWith":"Anstataŭigi per:","title":"Serĉi kaj Anstataŭigi"},"fakeobjects":{"anchor":"Ankro","flash":"FlaŝAnimacio","hiddenfield":"Kaŝita kampo","iframe":"Enlinia Kadro (IFrame)","unknown":"Nekonata objekto"},"flash":{"access":"Atingi skriptojn","accessAlways":"Ĉiam","accessNever":"Neniam","accessSameDomain":"Sama domajno","alignAbsBottom":"Absoluta Malsupro","alignAbsMiddle":"Absoluta Centro","alignBaseline":"TekstoMalsupro","alignTextTop":"TekstoSupro","bgcolor":"Fona Koloro","chkFull":"Permesi tutekranon","chkLoop":"Iteracio","chkMenu":"Ebligi flaŝmenuon","chkPlay":"Aŭtomata legado","flashvars":"Variabloj por Flaŝo","hSpace":"Horizontala Spaco","properties":"Flaŝatributoj","propertiesTab":"Atributoj","quality":"Kvalito","qualityAutoHigh":"Aŭtomate alta","qualityAutoLow":"Aŭtomate malalta","qualityBest":"Plej bona","qualityHigh":"Alta","qualityLow":"Malalta","qualityMedium":"Meza","scale":"Skalo","scaleAll":"Montri ĉion","scaleFit":"Origina grando","scaleNoBorder":"Neniu bordero","title":"Flaŝatributoj","vSpace":"Vertikala Spaco","validateHSpace":"Horizontala Spaco devas esti nombro.","validateSrc":"Bonvolu entajpi la retadreson (URL)","validateVSpace":"Vertikala Spaco devas esti nombro.","windowMode":"Fenestra reĝimo","windowModeOpaque":"Opaka","windowModeTransparent":"Travidebla","windowModeWindow":"Fenestro"},"font":{"fontSize":{"label":"Grado","voiceLabel":"Tipara grado","panelTitle":"Tipara grado"},"label":"Tiparo","panelTitle":"Tipara nomo","voiceLabel":"Tiparo"},"forms":{"button":{"title":"Butonaj atributoj","text":"Teksto (Valoro)","type":"Tipo","typeBtn":"Butono","typeSbm":"Validigi (submit)","typeRst":"Remeti en la originstaton (Reset)"},"checkboxAndRadio":{"checkboxTitle":"Markobutonaj Atributoj","radioTitle":"Radiobutonaj Atributoj","value":"Valoro","selected":"Selektita","required":"Postulata"},"form":{"title":"Formularaj Atributoj","menu":"Formularaj Atributoj","action":"Ago","method":"Metodo","encoding":"Kodoprezento"},"hidden":{"title":"Atributoj de Kaŝita Kampo","name":"Nomo","value":"Valoro"},"select":{"title":"Atributoj de Elekta Kampo","selectInfo":"Informoj pri la rulummenuo","opAvail":"Elektoj Disponeblaj","value":"Valoro","size":"Grando","lines":"Linioj","chkMulti":"Permesi Plurajn Elektojn","required":"Postulata","opText":"Teksto","opValue":"Valoro","btnAdd":"Aldoni","btnModify":"Modifi","btnUp":"Supren","btnDown":"Malsupren","btnSetValue":"Agordi kiel Elektitan Valoron","btnDelete":"Forigi"},"textarea":{"title":"Atributoj de Teksta Areo","cols":"Kolumnoj","rows":"Linioj"},"textfield":{"title":"Atributoj de Teksta Kampo","name":"Nomo","value":"Valoro","charWidth":"Signolarĝo","maxChars":"Maksimuma Nombro da Signoj","required":"Postulata","type":"Tipo","typeText":"Teksto","typePass":"Pasvorto","typeEmail":"retpoŝtadreso","typeSearch":"Serĉi","typeTel":"Telefonnumero","typeUrl":"URL"}},"format":{"label":"Formato","panelTitle":"ParagrafFormato","tag_address":"Adreso","tag_div":"Normala (DIV)","tag_h1":"Titolo 1","tag_h2":"Titolo 2","tag_h3":"Titolo 3","tag_h4":"Titolo 4","tag_h5":"Titolo 5","tag_h6":"Titolo 6","tag_p":"Normala","tag_pre":"Formatita"},"horizontalrule":{"toolbar":"Enmeti Horizontalan Linion"},"iframe":{"border":"Montri borderon de kadro (frame)","noUrl":"Bonvolu entajpi la retadreson de la ligilo al la enlinia kadro (IFrame)","scrolling":"Ebligi rulumskalon","title":"Atributoj de la enlinia kadro (IFrame)","toolbar":"Enlinia kadro (IFrame)"},"image":{"alt":"Anstataŭiga Teksto","border":"Bordero","btnUpload":"Sendu al Servilo","button2Img":"Ĉu vi volas transformi la selektitan bildbutonon en simplan bildon?","hSpace":"Horizontala Spaco","img2Button":"Ĉu vi volas transformi la selektitan bildon en bildbutonon?","infoTab":"Informoj pri Bildo","linkTab":"Ligilo","lockRatio":"Konservi Proporcion","menu":"Atributoj de Bildo","resetSize":"Origina Grando","title":"Atributoj de Bildo","titleButton":"Bildbutonaj Atributoj","upload":"Alŝuti","urlMissing":"La fontretadreso de la bildo mankas.","vSpace":"Vertikala Spaco","validateBorder":"La bordero devas esti entjera nombro.","validateHSpace":"La horizontala spaco devas esti entjera nombro.","validateVSpace":"La vertikala spaco devas esti entjera nombro."},"indent":{"indent":"Pligrandigi Krommarĝenon","outdent":"Malpligrandigi Krommarĝenon"},"smiley":{"options":"Opcioj pri mienvinjetoj","title":"Enmeti Mienvinjeton","toolbar":"Mienvinjeto"},"language":{"button":"Instali lingvon","remove":"Forigi lingvon"},"link":{"acccessKey":"Fulmoklavo","advanced":"Speciala","advisoryContentType":"Enhavotipo","advisoryTitle":"Priskriba Titolo","anchor":{"toolbar":"Ankro","menu":"Enmeti/Ŝanĝi Ankron","title":"Ankraj Atributoj","name":"Ankra Nomo","errorName":"Bv entajpi la ankran nomon","remove":"Forigi Ankron"},"anchorId":"Per Elementidentigilo","anchorName":"Per Ankronomo","charset":"Signaro de la Ligita Rimedo","cssClasses":"Klasoj de Stilfolioj","download":"Altrudi Elŝuton","displayText":"Vidigi Tekston","emailAddress":"Retpoŝto","emailBody":"Mesaĝa korpo","emailSubject":"Mesaĝa Temo","id":"Id","info":"Informoj pri la Ligilo","langCode":"Lingva Kodo","langDir":"Skribdirekto","langDirLTR":"De maldekstro dekstren (LTR)","langDirRTL":"De dekstro maldekstren (RTL)","menu":"Ŝanĝi Ligilon","name":"Nomo","noAnchors":"<Ne disponeblas ankroj en la dokumento>","noEmail":"Bonvolu entajpi la retpoŝtadreson","noUrl":"Bonvolu entajpi la URL-on","noTel":"Please type the phone number","other":"<alia>","phoneNumber":"Phone number","popupDependent":"Dependa (Netscape)","popupFeatures":"Atributoj de la Ŝprucfenestro","popupFullScreen":"Tutekrane (IE)","popupLeft":"Maldekstra Pozicio","popupLocationBar":"Adresobreto","popupMenuBar":"Menubreto","popupResizable":"Dimensiŝanĝebla","popupScrollBars":"Rulumskaloj","popupStatusBar":"Statobreto","popupToolbar":"Ilobreto","popupTop":"Supra Pozicio","rel":"Rilato","selectAnchor":"Elekti Ankron","styles":"Stilo","tabIndex":"Taba Indekso","target":"Celo","targetFrame":"<kadro>","targetFrameName":"Nomo de CelKadro","targetPopup":"<ŝprucfenestro>","targetPopupName":"Nomo de Ŝprucfenestro","title":"Ligilo","toAnchor":"Ankri en tiu ĉi paĝo","toEmail":"Retpoŝto","toUrl":"URL","toPhone":"Phone","toolbar":"Enmeti/Ŝanĝi Ligilon","type":"Tipo de Ligilo","unlink":"Forigi Ligilon","upload":"Alŝuti"},"list":{"bulletedlist":"Bula Listo","numberedlist":"Numera Listo"},"liststyle":{"bulletedTitle":"Atributoj de Bula Listo","circle":"Cirklo","decimal":"Dekumaj Nombroj (1, 2, 3, ktp.)","disc":"Disko","lowerAlpha":"Minusklaj Literoj (a, b, c, d, e, ktp.)","lowerRoman":"Minusklaj Romanaj Nombroj (i, ii, iii, iv, v, ktp.)","none":"Neniu","notset":"<Defaŭlta>","numberedTitle":"Atributoj de Numera Listo","square":"kvadrato","start":"Komenco","type":"Tipo","upperAlpha":"Majusklaj Literoj (A, B, C, D, E, ktp.)","upperRoman":"Majusklaj Romanaj Nombroj (I, II, III, IV, V, ktp.)","validateStartNumber":"La unua listero devas esti entjera nombro."},"magicline":{"title":"Enmeti paragrafon ĉi-tien"},"maximize":{"maximize":"Pligrandigi","minimize":"Malgrandigi"},"newpage":{"toolbar":"Nova Paĝo"},"pagebreak":{"alt":"Paĝavanco","toolbar":"Enmeti Paĝavancon por Presado"},"pastetext":{"button":"Interglui kiel platan tekston","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Interglui kiel platan tekston"},"pastefromword":{"confirmCleanup":"La teksto, kiun vi volas interglui, ŝajnas esti kopiita el Word. Ĉu vi deziras purigi ĝin antaŭ intergluo?","error":"Ne eblis purigi la intergluitajn datenojn pro interna eraro","title":"Interglui el Word","toolbar":"Interglui el Word"},"preview":{"preview":"Vidigi Aspekton"},"print":{"toolbar":"Presi"},"removeformat":{"toolbar":"Forigi Formaton"},"save":{"toolbar":"Konservi"},"selectall":{"toolbar":"Elekti ĉion"},"showblocks":{"toolbar":"Montri la blokojn"},"sourcearea":{"toolbar":"Fonto"},"specialchar":{"options":"Opcioj pri Specialaj Signoj","title":"Selekti Specialan Signon","toolbar":"Enmeti Specialan Signon"},"scayt":{"btn_about":"Pri OKDVT","btn_dictionaries":"Vortaroj","btn_disable":"Malebligi OKDVT","btn_enable":"Ebligi OKDVT","btn_langs":"Lingvoj","btn_options":"Opcioj","text_title":"OrtografiKontrolado Dum Vi Tajpas (OKDVT)"},"stylescombo":{"label":"Stiloj","panelTitle":"Stiloj pri enpaĝigo","panelTitle1":"Stiloj de blokoj","panelTitle2":"Enliniaj Stiloj","panelTitle3":"Stiloj de objektoj"},"table":{"border":"Bordero","caption":"Tabeltitolo","cell":{"menu":"Ĉelo","insertBefore":"Enmeti Ĉelon Antaŭ","insertAfter":"Enmeti Ĉelon Post","deleteCell":"Forigi la Ĉelojn","merge":"Kunfandi la Ĉelojn","mergeRight":"Kunfandi dekstren","mergeDown":"Kunfandi malsupren ","splitHorizontal":"Horizontale dividi","splitVertical":"Vertikale dividi","title":"Ĉelatributoj","cellType":"Ĉeltipo","rowSpan":"Kunfando de linioj","colSpan":"Kunfando de kolumnoj","wordWrap":"Cezuro","hAlign":"Horizontala ĝisrandigo","vAlign":"Vertikala ĝisrandigo","alignBaseline":"Malsupro de la teksto","bgColor":"Fonkoloro","borderColor":"Borderkoloro","data":"Datenoj","header":"Supra paĝotitolo","yes":"Jes","no":"No","invalidWidth":"Ĉellarĝo devas esti nombro.","invalidHeight":"Ĉelalto devas esti nombro.","invalidRowSpan":"Kunfando de linioj devas esti entjera nombro.","invalidColSpan":"Kunfando de kolumnoj devas esti entjera nombro.","chooseColor":"Elektu"},"cellPad":"Interna Marĝeno de la ĉeloj","cellSpace":"Spaco inter la Ĉeloj","column":{"menu":"Kolumno","insertBefore":"Enmeti kolumnon antaŭ","insertAfter":"Enmeti kolumnon post","deleteColumn":"Forigi Kolumnojn"},"columns":"Kolumnoj","deleteTable":"Forigi Tabelon","headers":"Supraj Paĝotitoloj","headersBoth":"Ambaŭ","headersColumn":"Unua kolumno","headersNone":"Neniu","headersRow":"Unua linio","invalidBorder":"La bordergrando devas esti nombro.","invalidCellPadding":"La interna marĝeno en la ĉeloj devas esti pozitiva nombro.","invalidCellSpacing":"La spaco inter la ĉeloj devas esti pozitiva nombro.","invalidCols":"La nombro de la kolumnoj devas superi 0.","invalidHeight":"La tabelalto devas esti nombro.","invalidRows":"La nombro de la linioj devas superi 0.","invalidWidth":"La tabellarĝo devas esti nombro.","menu":"Atributoj de Tabelo","row":{"menu":"Linio","insertBefore":"Enmeti linion antaŭ","insertAfter":"Enmeti linion post","deleteRow":"Forigi Liniojn"},"rows":"Linioj","summary":"Resumo","title":"Atributoj de Tabelo","toolbar":"Tabelo","widthPc":"elcentoj","widthPx":"Rastrumeroj","widthUnit":"unuo de larĝo"},"undo":{"redo":"Refari","undo":"Malfari"},"widget":{"move":"klaki kaj treni por movi","label":"%1 fenestraĵo"},"uploadwidget":{"abort":"Alŝuto ĉesigita de la uzanto","doneOne":"Dosiero sukcese alŝutita.","doneMany":"Sukcese alŝutitaj %1 dosieroj.","uploadOne":"alŝutata dosiero ({percentage}%)...","uploadMany":"Alŝutataj dosieroj, {current} el {max} faritaj ({percentage}%)..."},"wsc":{"btnIgnore":"Ignori","btnIgnoreAll":"Ignori Ĉion","btnReplace":"Anstataŭigi","btnReplaceAll":"Anstataŭigi Ĉion","btnUndo":"Malfari","changeTo":"Ŝanĝi al","errorLoading":"Eraro en la servoelŝuto el la gastiga komputiko: %s.","ieSpellDownload":"Ortografikontrolilo ne instalita. Ĉu vi volas elŝuti ĝin nun?","manyChanges":"Ortografikontrolado finita: %1 vortoj korektitaj","noChanges":"Ortografikontrolado finita: neniu vorto korektita","noMispell":"Ortografikontrolado finita: neniu eraro trovita","noSuggestions":"- Neniu propono -","notAvailable":"Bedaŭrinde la servo ne funkcias nuntempe.","notInDic":"Ne trovita en la vortaro","oneChange":"Ortografikontrolado finita: unu vorto korektita","progress":"La ortografio estas kontrolata...","title":"Kontroli la ortografion","toolbar":"Kontroli la ortografion"}};
bt-source/panel/BTPanel/static/ckeditor/lang/es-mx.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['es-mx']={"editor":"Editor de texto enriquecido","editorPanel":"Panel del editor de texto","common":{"editorHelp":"Presiona ALT + 0 para ayuda","browseServer":"Examinar servidor","url":"URL","protocol":"Protocolo","upload":"Subir","uploadSubmit":"Enviar al servidor","image":"Imagen","flash":"Flash","form":"Formulario","checkbox":"Casilla de verificación","radio":"Botón de opción","textField":"Campo de texto","textarea":"Área de texto","hiddenField":"Campo oculto","button":"Botón","select":"Campo de selección","imageButton":"Botón de imagen","notSet":"<not set>","id":"Id","name":"Nombre","langDir":"Dirección de idiomas","langDirLtr":"Izquierda a derecha (LTR)","langDirRtl":"Derecha a izquierda (RTL)","langCode":"Código de lenguaje","longDescr":"URL descripción larga","cssClass":"Clases de hoja de estilo","advisoryTitle":"Título del anuncio","cssStyle":"Estilo","ok":"OK","cancel":"Cancelar","close":"Cerrar","preview":"Vista previa","resize":"Redimensionar","generalTab":"General","advancedTab":"Avanzada","validateNumberFailed":"Este valor no es un número.","confirmNewPage":"Se perderán todos los cambios no guardados en este contenido. ¿Seguro que quieres cargar nueva página?","confirmCancel":"Ha cambiado algunas opciones. ¿Está seguro de que desea cerrar la ventana de diálogo?","options":"Opciones","target":"Objetivo","targetNew":"Nueva ventana (_blank)","targetTop":"Ventana superior (_top)","targetSelf":"Misma ventana (_self)","targetParent":"Ventana principal (_parent)","langDirLTR":"Izquierda a Derecha (LTR)","langDirRTL":"Derecha a Izquierda (RTL)","styles":"Estilo","cssClasses":"Clases de hojas de estilo","width":"Ancho","height":"Alto","align":"Alineación","left":"Izquierda","right":"Derecha","center":"Centrado","justify":"Justificado","alignLeft":"Alinear a la izquierda","alignRight":"Alinear a la derecha","alignCenter":"Align Center","alignTop":"Arriba","alignMiddle":"En medio","alignBottom":"Abajo","alignNone":"Ninguno","invalidValue":"Valor inválido","invalidHeight":"La altura debe ser un número.","invalidWidth":"La anchura debe ser un número.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"El valor especificado para el campo \"% 1\" debe ser un número positivo con o sin una unidad de medida CSS válida (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"El valor especificado para el campo \"% 1\" debe ser un número positivo con o sin una unidad de medición HTML válida (px or %).","invalidInlineStyle":"El valor especificado para el estilo en línea debe constar de una o más tuplas con el formato de \"nombre: valor\", separados por punto y coma","cssLengthTooltip":"Introduzca un número para un valor en píxeles o un número con una unidad CSS válida (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, no disponible</span>","keyboard":{"8":"Retroceso","13":"Intro","16":"Shift","17":"Ctrl","18":"Alt","32":"Espacio","35":"Fin","36":"Inicio","46":"Borrar","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Comando"},"keyboardShortcut":"Atajo de teclado","optionDefault":"Default"},"about":{"copy":"Derechos reservados &copy; $1. Todos los derechos reservados","dlgTitle":"Acerca de CKEditor 4","moreInfo":"Para información sobre la licencia por favor visita nuestro sitio web:"},"basicstyles":{"bold":"Negrita","italic":"Cursiva","strike":"Tachado","subscript":"subíndice","superscript":"Sobrescrito","underline":"Subrayada"},"bidi":{"ltr":"Dirección del texto de izquierda a derecha","rtl":"Dirección del texto de derecha a izquierda"},"blockquote":{"toolbar":"Entrecomillado"},"notification":{"closed":"Notificación cerrada."},"toolbar":{"toolbarCollapse":"Colapsar barra de herramientas","toolbarExpand":"Expandir barra de herramientas","toolbarGroups":{"document":"Documento","clipboard":"Portapapeles/deshacer","editing":"Editando","forms":"Formularios","basicstyles":"Estilo básico","paragraph":"Párrafo","links":"Enlaces","insert":"Insertar","styles":"Estilos","colors":"Colores","tools":"Herramientas"},"toolbars":"Editor de barra de herramientas"},"clipboard":{"copy":"Copiar","copyError":"La configuración de seguridad de su navegador no permite al editor ejecutar automáticamente operaciones de copiado. Por favor, utilice el teclado para (Ctrl/Cmd+C).","cut":"Cortar","cutError":"La configuración de seguridad de su navegador no permite al editor ejecutar automáticamente operaciones de corte. Por favor, utilice el teclado para (Ctrl/Cmd+X).","paste":"Pegar","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Paste Area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automático","bgColorTitle":"Color de fondo","colors":{"000":"Negro","800000":"Marrón","8B4513":"Café sucio","2F4F4F":"Gris pizarra oscuro","008080":"Teal","000080":"Armada","4B0082":"Indigo","696969":"Gris oscuro","B22222":"Ladrillo de fuego","A52A2A":"Café","DAA520":"Barra de oro","006400":"Verde oscuro","40E0D0":"Turquesa","0000CD":"Azul medio","800080":"Morado","808080":"Gris","F00":"Rojo","FF8C00":"Naranja oscuro","FFD700":"Oro","008000":"Verde","0FF":"Cian","00F":"Azul","EE82EE":"Violeta","A9A9A9":"Gris oscuro","FFA07A":"Salmón claro","FFA500":"Naranja","FFFF00":"Amarillo","00FF00":"Lima","AFEEEE":"Turquesa pálido","ADD8E6":"Azul claro","DDA0DD":"Ciruela","D3D3D3":"Gris claro","FFF0F5":"Rubor de lavanda","FAEBD7":"Blanco antiguo","FFFFE0":"Amarillo claro","F0FFF0":"Gotas de miel","F0FFFF":"Azul celeste","F0F8FF":"Azul Alicia","E6E6FA":"Lavanda","FFF":"Blanco","1ABC9C":"Cian fuerte","2ECC71":"Esmeralda","3498DB":"Azul brillante","9B59B6":"Amatista","4E5F70":"Azul grisáceo","F1C40F":"Amarillo vívido","16A085":"Cian oscuro","27AE60":"Esmeralda oscuro","2980B9":"Azul fuerte","8E44AD":"Violeta oscuro","2C3E50":"Azul Desaturado","F39C12":"Naranja","E67E22":"Zanahoria","E74C3C":"Rojo pálido","ECF0F1":"Plata brillante","95A5A6":"Cian grisáceo claro","DDD":"Gris claro","D35400":"Calabaza","C0392B":"Rojo fuerte","BDC3C7":"Plata","7F8C8D":"Cian grisáceo","999":"Gris oscuro"},"more":"Más colores...","panelTitle":"Colores","textColorTitle":"Color de texto"},"colordialog":{"clear":"Borrar","highlight":"Realce","options":"Opciones de color","selected":"Color seleccionado","title":"Selecciona un color"},"templates":{"button":"Plantillas","emptyListMsg":"(Sin plantilla definida)","insertOption":"Reemplazar contenido actual","options":"Opciones de la plantilla","selectPromptMsg":"Por favor selecciona una plantilla para abrir en el editor","title":"Contenido de las plantillas"},"contextmenu":{"options":"Opciones del menú contextual"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Título del anuncio","cssClassInputLabel":"Clases de la hoja de estilos","edit":"Editar Div","inlineStyleInputLabel":"Estilo de línea","langDirLTRLabel":"Izquierda a Derecha (LTR)","langDirLabel":"Dirección de idiomas","langDirRTLLabel":"Derecha a Izquierda (RTL)","languageCodeInputLabel":"Código del idioma","remove":"Remover Div","styleSelectLabel":"Estilo","title":"Crear contenedor Div","toolbar":"Crear contenedor Div"},"elementspath":{"eleLabel":"Ruta de los elementos","eleTitle":"%1 elemento"},"filetools":{"loadError":"Ha ocurrido un error al leer el archivo","networkError":"Ha ocurrido un error de red durante la carga del archivo.","httpError404":"Se ha producido un error HTTP durante la subida de archivos (404: archivo no encontrado).","httpError403":"Se ha producido un error HTTP durante la subida de archivos (403: Prohibido).","httpError":"Se ha producido un error HTTP durante la subida de archivos (error: %1).","noUrlError":"La URL de subida no está definida.","responseError":"Respuesta incorrecta del servidor."},"find":{"find":"Buscar","findOptions":"Opciones de busqueda","findWhat":"Buscar que:","matchCase":"Comparar mayúsculas","matchCyclic":"Comparación cíclica","matchWord":"Compare la palabra completa","notFoundMsg":"El texto especificado no fue encontrado.","replace":"Remplazar","replaceAll":"Remplazar todo","replaceSuccessMsg":"%1 ","replaceWith":"Reemplazar con:","title":"Busca y reemplaza"},"fakeobjects":{"anchor":"Ancla","flash":"Animación flash","hiddenfield":"Campo oculto","iframe":"IFrame","unknown":"Objeto desconocido"},"flash":{"access":"Acceso a secuencias de comandos","accessAlways":"Siempre","accessNever":"Nunca","accessSameDomain":"Mismo dominio","alignAbsBottom":"Abs Abajo","alignAbsMiddle":"Abs Medio","alignBaseline":"Base","alignTextTop":"Texto Arriba","bgcolor":"Color de fondo","chkFull":"Permitir pantalla completa","chkLoop":"Ciclíco","chkMenu":"Habilitar menú de flash","chkPlay":"Auto reproducción","flashvars":"Variables para flash","hSpace":"Espacio horizontal","properties":"Propiedades del flash","propertiesTab":"Propiedades","quality":"Calidad","qualityAutoHigh":"Alta automática","qualityAutoLow":"Baja automática","qualityBest":"La mejor","qualityHigh":"Alta","qualityLow":"Baja","qualityMedium":"Mediana","scale":"Escala","scaleAll":"Mostrar todo","scaleFit":"Ajuste exacto","scaleNoBorder":"Sin bordes","title":"Propiedades del flash","vSpace":"Espacio vertical","validateHSpace":"El espacio horizontal debe ser un número entero.","validateSrc":"La URL no puede estar vacia.","validateVSpace":"El espacio vertical debe ser un número entero.","windowMode":"Modo de la ventana","windowModeOpaque":"Opaco","windowModeTransparent":"Transparente","windowModeWindow":"Ventana"},"font":{"fontSize":{"label":"Tamaño","voiceLabel":"Tamaño de letra","panelTitle":"Tamaño de letra"},"label":"Letra","panelTitle":"Nombre de letra","voiceLabel":"Letra"},"forms":{"button":{"title":"Propiedades del botón","text":"Texto (valor)","type":"Tipo","typeBtn":"Botón","typeSbm":"Enviar","typeRst":"Reiniciar"},"checkboxAndRadio":{"checkboxTitle":"Propiedades de la casilla de verificación","radioTitle":"Propiedades de botón de opciones","value":"Valor","selected":"Seleccionado","required":"Requerido"},"form":{"title":"Propiedades del formulario","menu":"Propiedades del formulario","action":"Acción","method":"Método","encoding":"Codificación"},"hidden":{"title":"Propiedades del campo oculto","name":"Nombre","value":"Valor"},"select":{"title":"Propiedades del campo de selección","selectInfo":"Seleccionar información","opAvail":"Opciones disponobles","value":"Valor","size":"Tamaño","lines":"líneas","chkMulti":"Permitir múltiple selección","required":"Requerido","opText":"Texto","opValue":"Valor","btnAdd":"Agregar","btnModify":"Modificar","btnUp":"Subir","btnDown":"Bajar","btnSetValue":"Establecer como valor seleccionado","btnDelete":"Borrar"},"textarea":{"title":"Propiedades del área de texto","cols":"Columnas","rows":"Filas"},"textfield":{"title":"Propiedades del campo texto","name":"Nombre","value":"Valor","charWidth":"Ancho de caracteres","maxChars":"Máximo de caracteres","required":"Requerido","type":"Tipo","typeText":"Texto","typePass":"Contraseña","typeEmail":"Correo electrónico","typeSearch":"Busqueda","typeTel":"Número telefónico","typeUrl":"URL"}},"format":{"label":"Formato","panelTitle":"Formato de párrafo","tag_address":"Dirección","tag_div":"Normal (DIV)","tag_h1":"Encabezado 1","tag_h2":"Encabezado 2","tag_h3":"Encabezado 3","tag_h4":"Encabezado 4","tag_h5":"Encabezado 5","tag_h6":"Encabezado 6","tag_p":"Normal","tag_pre":"Formateado"},"horizontalrule":{"toolbar":"Insertar una línea horizontal"},"iframe":{"border":"Mostrar el borde del marco","noUrl":"Ingresa la URL del iframe","scrolling":"Habilitar la barra de desplazamiento","title":"Propiedades del IFrame","toolbar":"Iframe"},"image":{"alt":"Texto alternativo","border":"Borde","btnUpload":"Enviar al servidor","button2Img":"¿Desea transformar el botón de imagen seleccionado en una imagen simple?","hSpace":"Espacio horizontal","img2Button":"¿Desea transformar la imagen seleccionada en un botón de imagen?","infoTab":"Información de imagen","linkTab":"Enlace","lockRatio":"Bloquear aspecto","menu":"Propiedades de la imagen","resetSize":"Reiniciar tamaño","title":"Propiedades de la imagen","titleButton":"Propiedades del botón de imagen","upload":"Cargar","urlMissing":"Falta la URL de origen de la imagen.","vSpace":"Espacio vertical","validateBorder":"El borde debe ser un número entero.","validateHSpace":"El espacio horizontal debe ser un número entero.","validateVSpace":"El espacio vertical debe ser un número entero."},"indent":{"indent":"Incrementar sangría","outdent":"Decrementar sangría"},"smiley":{"options":"Opciones de smiley","title":"Insertar un smiley","toolbar":"Smiley"},"language":{"button":"Establecer idioma","remove":"Remover idioma"},"link":{"acccessKey":"Llave de acceso","advanced":"Avanzada","advisoryContentType":"Tipo de contenido consultivo","advisoryTitle":"Título asesor","anchor":{"toolbar":"Ancla","menu":"Editar ancla","title":"Propiedades del ancla","name":"Nombre del ancla","errorName":"Escriba el nombre del ancla","remove":"Remover ancla"},"anchorId":"Por Id del elemento","anchorName":"Por nombre del ancla","charset":"Recurso relacionado Charset","cssClasses":"Clases de estilo de hoja","download":"Forzar la descarga","displayText":"Mostrar texto","emailAddress":"Dirección de correo electrónico","emailBody":"Cuerpo del mensaje","emailSubject":"Asunto del mensaje","id":"Id","info":"Información del enlace","langCode":"Código del idioma","langDir":"Dirección del idioma","langDirLTR":"Izquierda a Derecha (LTR)","langDirRTL":"Derecha a Izquierda (RTL)","menu":"Editar enlace","name":"Nombre","noAnchors":"(No hay anclas disponibles en el documento)","noEmail":"Escriba la dirección de correo electrónico","noUrl":"Escriba la URL del enlace","noTel":"Please type the phone number","other":"<other>","phoneNumber":"Phone number","popupDependent":"Dependiente (Netscape)","popupFeatures":"Ventana emergente","popupFullScreen":"Pantalla completa (IE)","popupLeft":"Posición Izquierda","popupLocationBar":"Ubicación de la barra","popupMenuBar":"Barra de menú","popupResizable":"Redimensionable","popupScrollBars":"Barras de desplazamiento","popupStatusBar":"Barra de estado","popupToolbar":"Barra de herramienta","popupTop":"Posición superior","rel":"Relación","selectAnchor":"Selecciona un ancla","styles":"Estilo","tabIndex":"Indice de tabulación","target":"Objetivo","targetFrame":"<frame>","targetFrameName":"Nombre del marco de destino","targetPopup":"<popup window>","targetPopupName":"Nombre de ventana emergente","title":"Enlace","toAnchor":"Enlace al ancla en el texto","toEmail":"Correo electrónico","toUrl":"URL","toPhone":"Phone","toolbar":"Enlace","type":"Tipo de enlace","unlink":"Desconectar","upload":"Subir"},"list":{"bulletedlist":"Insertar/Remover Lista con viñetas","numberedlist":"Insertar/Remover Lista numerada"},"liststyle":{"bulletedTitle":"Propiedades de la lista con viñetas","circle":"Círculo","decimal":"Decimal (1, 2, 3, etc.)","disc":"Desc","lowerAlpha":"Alfabeto minúscula (a, b, c, d, e, etc.)","lowerRoman":"Romano minúscula (i, ii, iii, iv, v, etc.)","none":"Ninguno","notset":"<not set>","numberedTitle":"Propiedades de la lista numerada","square":"Cuadrado","start":"Inicio","type":"Tipo","upperAlpha":"Abecedario mayúscula (A, B, C, D, E, etc.)","upperRoman":"Romanos mayúscula (I, II, III, IV, V, etc.)","validateStartNumber":"El número de inicio de la lista debe ser un número entero."},"magicline":{"title":"Insertar un párrafo aquí"},"maximize":{"maximize":"Maximizar","minimize":"Minimizar"},"newpage":{"toolbar":"Página nueva"},"pagebreak":{"alt":"Salto de página","toolbar":"Insertar un salto de página para imprimir"},"pastetext":{"button":"Pegar como texto plano","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"El texto que desea pegar parece estar copiado de Word. ¿Quieres limpiarlo antes de pegarlo?","error":"No fue posible limpiar los datos pegados debido a un error interno","title":"Pegar desde word","toolbar":"Pegar desde word"},"preview":{"preview":"Vista previa"},"print":{"toolbar":"Imprimir"},"removeformat":{"toolbar":"Remover formato"},"save":{"toolbar":"Guardar"},"selectall":{"toolbar":"Seleccionar todo"},"showblocks":{"toolbar":"Mostrar bloques"},"sourcearea":{"toolbar":"Fuente"},"specialchar":{"options":"Opciones de carácteres especiales","title":"Seleccione un carácter especial","toolbar":"Inserta un carácter especial"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Estilos","panelTitle":"Estilos de formatos","panelTitle1":"Estilos de bloques","panelTitle2":"Estilos de líneas","panelTitle3":"Estilo de objetos"},"table":{"border":"Tamaño del borde","caption":"Subtítulo","cell":{"menu":"Celda","insertBefore":"Insertar una celda antes","insertAfter":"Insertar una celda despues","deleteCell":"Borrar celdas","merge":"Unir celdas","mergeRight":"Unir a la derecha","mergeDown":"Unir abajo","splitHorizontal":"Dividir celda horizontalmente","splitVertical":"Dividir celda verticalmente","title":"Propiedades de la celda","cellType":"Tipo de celda","rowSpan":"Extensión de las filas","colSpan":"Extensión de las columnas","wordWrap":"Ajuste de línea","hAlign":"Alineación horizontal","vAlign":"Alineación vertical","alignBaseline":"Base","bgColor":"Color de fondo","borderColor":"Color de borde","data":"Datos","header":"Encabezado","yes":"Si","no":"No","invalidWidth":"El ancho de la celda debe ser un número entero.","invalidHeight":"El alto de la celda debe ser un número entero.","invalidRowSpan":"El intervalo de filas debe ser un número entero.","invalidColSpan":"El intervalo de columnas debe ser un número entero.","chooseColor":"Escoger"},"cellPad":"relleno de celda","cellSpace":"Espacio de celda","column":{"menu":"Columna","insertBefore":"Insertar columna antes","insertAfter":"Insertar columna después","deleteColumn":"Borrar columnas"},"columns":"Columnas","deleteTable":"Borrar tabla","headers":"Encabezados","headersBoth":"Ambos","headersColumn":"Primera columna","headersNone":"Ninguna","headersRow":"Primera fila","invalidBorder":"El tamaño del borde debe ser un número entero.","invalidCellPadding":"El relleno de la celda debe ser un número positivo.","invalidCellSpacing":"El espacio de la celda debe ser un número positivo.","invalidCols":"El número de columnas debe ser un número mayo que 0.","invalidHeight":"La altura de la tabla debe ser un número.","invalidRows":"El número de filas debe ser mayor a 0.","invalidWidth":"El ancho de la tabla debe ser un número.","menu":"Propiedades de la tabla","row":{"menu":"Fila","insertBefore":"Inserta una fila antes","insertAfter":"Inserta una fila después","deleteRow":"Borrar filas"},"rows":"Filas","summary":"Resumen","title":"Propiedades de la tabla","toolbar":"Tabla","widthPc":"porcentaje","widthPx":"pixeles","widthUnit":"Unidad de ancho"},"undo":{"redo":"Rehacer","undo":"Deshacer"},"widget":{"move":"Presiona y arrastra para mover","label":"%1 widget"},"uploadwidget":{"abort":"La carga ha sido abortada por el usuario.","doneOne":"El archivo ha sido cargado completamente.","doneMany":"%1 archivos cargados completamente.","uploadOne":"Cargando archivo ({percentage}%)...","uploadMany":"Cargando archivos, {current} de {max} listo ({percentage}%)..."},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
bt-source/panel/BTPanel/static/ckeditor/lang/es.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['es']={"editor":"Editor de texto enriquecido","editorPanel":"Panel del Editor de Texto Enriquecido","common":{"editorHelp":"Pulse ALT 0 para ayuda","browseServer":"Ver Servidor","url":"URL","protocol":"Protocolo","upload":"Cargar","uploadSubmit":"Enviar al Servidor","image":"Imagen","flash":"Flash","form":"Formulario","checkbox":"Casilla de Verificación","radio":"Botones de Radio","textField":"Campo de Texto","textarea":"Area de Texto","hiddenField":"Campo Oculto","button":"Botón","select":"Campo de Selección","imageButton":"Botón Imagen","notSet":"<No definido>","id":"Id","name":"Nombre","langDir":"Orientación","langDirLtr":"Izquierda a Derecha (LTR)","langDirRtl":"Derecha a Izquierda (RTL)","langCode":"Cód. de idioma","longDescr":"Descripción larga URL","cssClass":"Clases de hojas de estilo","advisoryTitle":"Título","cssStyle":"Estilo","ok":"Aceptar","cancel":"Cancelar","close":"Cerrar","preview":"Previsualización","resize":"Arrastre para redimensionar","generalTab":"General","advancedTab":"Avanzado","validateNumberFailed":"El valor no es un número.","confirmNewPage":"Cualquier cambio que no se haya guardado se perderá.\r\n¿Está seguro de querer crear una nueva página?","confirmCancel":"Algunas de las opciones se han cambiado.\r\n¿Está seguro de querer cerrar el diálogo?","options":"Opciones","target":"Destino","targetNew":"Nueva ventana (_blank)","targetTop":"Ventana principal (_top)","targetSelf":"Misma ventana (_self)","targetParent":"Ventana padre (_parent)","langDirLTR":"Izquierda a derecha (LTR)","langDirRTL":"Derecha a izquierda (RTL)","styles":"Estilos","cssClasses":"Clase de la hoja de estilos","width":"Anchura","height":"Altura","align":"Alineación","left":"Izquierda","right":"Derecha","center":"Centrado","justify":"Justificado","alignLeft":"Alinear a Izquierda","alignRight":"Alinear a Derecha","alignCenter":"Align Center","alignTop":"Tope","alignMiddle":"Centro","alignBottom":"Pie","alignNone":"Ninguno","invalidValue":"Valor no válido","invalidHeight":"Altura debe ser un número.","invalidWidth":"Anchura debe ser un número.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"El valor especificado para el campo \"%1\" debe ser un número positivo, incluyendo optionalmente una unidad de medida CSS válida (px, %, in, cm, mm, em, ex, pt, o pc).","invalidHtmlLength":"El valor especificado para el campo \"%1\" debe ser un número positivo, incluyendo optionalmente una unidad de medida HTML válida (px o %).","invalidInlineStyle":"El valor especificado para el estilo debe consistir en uno o más pares con el formato \"nombre: valor\", separados por punto y coma.","cssLengthTooltip":"Introduca un número para el valor en pixels o un número con una unidad de medida CSS válida (px, %, in, cm, mm, em, ex, pt, o pc).","unavailable":"%1<span class=\"cke_accessibility\">, no disponible</span>","keyboard":{"8":"Retroceso","13":"Ingresar","16":"Mayús.","17":"Ctrl","18":"Alt","32":"Space","35":"Fin","36":"Inicio","46":"Suprimir","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. Todos los derechos reservados.","dlgTitle":"Acerca de CKEditor 4","moreInfo":"Para información de licencia, por favor visite nuestro sitio web:"},"basicstyles":{"bold":"Negrita","italic":"Cursiva","strike":"Tachado","subscript":"Subíndice","superscript":"Superíndice","underline":"Subrayado"},"bidi":{"ltr":"Dirección del texto de izquierda a derecha","rtl":"Dirección del texto de derecha a izquierda"},"blockquote":{"toolbar":"Cita"},"notification":{"closed":"Notificación cerrada."},"toolbar":{"toolbarCollapse":"Contraer barra de herramientas","toolbarExpand":"Expandir barra de herramientas","toolbarGroups":{"document":"Documento","clipboard":"Portapapeles/Deshacer","editing":"Edición","forms":"Formularios","basicstyles":"Estilos básicos","paragraph":"Párrafo","links":"Enlaces","insert":"Insertar","styles":"Estilos","colors":"Colores","tools":"Herramientas"},"toolbars":"Barras de herramientas del editor"},"clipboard":{"copy":"Copiar","copyError":"La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de copiado.\r\nPor favor use el teclado (Ctrl/Cmd+C).","cut":"Cortar","cutError":"La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de cortado.\r\nPor favor use el teclado (Ctrl/Cmd+X).","paste":"Pegar","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Zona de pegado","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automático","bgColorTitle":"Color de Fondo","colors":{"000":"Negro","800000":"Marrón oscuro","8B4513":"Marrón tierra","2F4F4F":"Pizarra Oscuro","008080":"Azul verdoso","000080":"Azul marino","4B0082":"Añil","696969":"Gris oscuro","B22222":"Ladrillo","A52A2A":"Marrón","DAA520":"Oro oscuro","006400":"Verde oscuro","40E0D0":"Turquesa","0000CD":"Azul medio-oscuro","800080":"Púrpura","808080":"Gris","F00":"Rojo","FF8C00":"Naranja oscuro","FFD700":"Oro","008000":"Verde","0FF":"Cian","00F":"Azul","EE82EE":"Violeta","A9A9A9":"Gris medio","FFA07A":"Salmón claro","FFA500":"Naranja","FFFF00":"Amarillo","00FF00":"Lima","AFEEEE":"Turquesa claro","ADD8E6":"Azul claro","DDA0DD":"Violeta claro","D3D3D3":"Gris claro","FFF0F5":"Lavanda rojizo","FAEBD7":"Blanco antiguo","FFFFE0":"Amarillo claro","F0FFF0":"Miel","F0FFFF":"Azul celeste","F0F8FF":"Azul pálido","E6E6FA":"Lavanda","FFF":"Blanco","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Más Colores...","panelTitle":"Colores","textColorTitle":"Color de Texto"},"colordialog":{"clear":"Borrar","highlight":"Muestra","options":"Opciones de colores","selected":"Elegido","title":"Elegir color"},"templates":{"button":"Plantillas","emptyListMsg":"(No hay plantillas definidas)","insertOption":"Reemplazar el contenido actual","options":"Opciones de plantillas","selectPromptMsg":"Por favor selecciona la plantilla a abrir en el editor<br>(el contenido actual se perderá):","title":"Contenido de Plantillas"},"contextmenu":{"options":"Opciones del menú contextual"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Título","cssClassInputLabel":"Clase de hoja de estilos","edit":"Editar Div","inlineStyleInputLabel":"Estilo","langDirLTRLabel":"Izquierda a Derecha (LTR)","langDirLabel":"Orientación","langDirRTLLabel":"Derecha a Izquierda (RTL)","languageCodeInputLabel":" Codigo de idioma","remove":"Quitar Div","styleSelectLabel":"Estilo","title":"Crear contenedor DIV","toolbar":"Crear contenedor DIV"},"elementspath":{"eleLabel":"Ruta de los elementos","eleTitle":"%1 elemento"},"filetools":{"loadError":"Ha ocurrido un error durante la lectura del archivo.","networkError":"Error de red ocurrido durante carga de archivo.","httpError404":"Un error HTTP ha ocurrido durante la carga del archivo (404: Archivo no encontrado).","httpError403":"Un error HTTP ha ocurrido durante la carga del archivo (403: Prohibido).","httpError":"Error HTTP ocurrido durante la carga del archivo (Estado del error: %1).","noUrlError":"URL cargada no está definida.","responseError":"Respueta del servidor incorrecta."},"find":{"find":"Buscar","findOptions":"Opciones de búsqueda","findWhat":"Texto a buscar:","matchCase":"Coincidir may/min","matchCyclic":"Buscar en todo el contenido","matchWord":"Coincidir toda la palabra","notFoundMsg":"El texto especificado no ha sido encontrado.","replace":"Reemplazar","replaceAll":"Reemplazar Todo","replaceSuccessMsg":"La expresión buscada ha sido reemplazada %1 veces.","replaceWith":"Reemplazar con:","title":"Buscar y Reemplazar"},"fakeobjects":{"anchor":"Ancla","flash":"Animación flash","hiddenfield":"Campo oculto","iframe":"IFrame","unknown":"Objeto desconocido"},"flash":{"access":"Acceso de scripts","accessAlways":"Siempre","accessNever":"Nunca","accessSameDomain":"Mismo dominio","alignAbsBottom":"Abs inferior","alignAbsMiddle":"Abs centro","alignBaseline":"Línea de base","alignTextTop":"Tope del texto","bgcolor":"Color de Fondo","chkFull":"Permitir pantalla completa","chkLoop":"Repetir","chkMenu":"Activar Menú Flash","chkPlay":"Autoejecución","flashvars":"Opciones","hSpace":"Esp.Horiz","properties":"Propiedades de Flash","propertiesTab":"Propiedades","quality":"Calidad","qualityAutoHigh":"Auto Alta","qualityAutoLow":"Auto Baja","qualityBest":"La mejor","qualityHigh":"Alta","qualityLow":"Baja","qualityMedium":"Media","scale":"Escala","scaleAll":"Mostrar todo","scaleFit":"Ajustado","scaleNoBorder":"Sin Borde","title":"Propiedades de Flash","vSpace":"Esp.Vert","validateHSpace":"Esp.Horiz debe ser un número.","validateSrc":"Por favor escriba el vínculo URL","validateVSpace":"Esp.Vert debe ser un número.","windowMode":"WindowMode","windowModeOpaque":"Opaco","windowModeTransparent":"Transparente","windowModeWindow":"Ventana"},"font":{"fontSize":{"label":"Tamaño","voiceLabel":"Tamaño de fuente","panelTitle":"Tamaño"},"label":"Fuente","panelTitle":"Fuente","voiceLabel":"Fuente"},"forms":{"button":{"title":"Propiedades de Botón","text":"Texto (Valor)","type":"Tipo","typeBtn":"Boton","typeSbm":"Enviar","typeRst":"Reestablecer"},"checkboxAndRadio":{"checkboxTitle":"Propiedades de Casilla","radioTitle":"Propiedades de Botón de Radio","value":"Valor","selected":"Seleccionado","required":"Requerido"},"form":{"title":"Propiedades de Formulario","menu":"Propiedades de Formulario","action":"Acción","method":"Método","encoding":"Codificación"},"hidden":{"title":"Propiedades de Campo Oculto","name":"Nombre","value":"Valor"},"select":{"title":"Propiedades de Campo de Selección","selectInfo":"Información","opAvail":"Opciones disponibles","value":"Valor","size":"Tamaño","lines":"Lineas","chkMulti":"Permitir múltiple selección","required":"Requerido","opText":"Texto","opValue":"Valor","btnAdd":"Agregar","btnModify":"Modificar","btnUp":"Subir","btnDown":"Bajar","btnSetValue":"Establecer como predeterminado","btnDelete":"Eliminar"},"textarea":{"title":"Propiedades de Area de Texto","cols":"Columnas","rows":"Filas"},"textfield":{"title":"Propiedades de Campo de Texto","name":"Nombre","value":"Valor","charWidth":"Caracteres de ancho","maxChars":"Máximo caracteres","required":"Requerido","type":"Tipo","typeText":"Texto","typePass":"Contraseña","typeEmail":"Correo electrónico","typeSearch":"Buscar","typeTel":"Número de teléfono","typeUrl":"URL"}},"format":{"label":"Formato","panelTitle":"Formato","tag_address":"Dirección","tag_div":"Normal (DIV)","tag_h1":"Encabezado 1","tag_h2":"Encabezado 2","tag_h3":"Encabezado 3","tag_h4":"Encabezado 4","tag_h5":"Encabezado 5","tag_h6":"Encabezado 6","tag_p":"Normal","tag_pre":"Con formato"},"horizontalrule":{"toolbar":"Insertar Línea Horizontal"},"iframe":{"border":"Mostrar borde del marco","noUrl":"Por favor, escriba la dirección del iframe","scrolling":"Activar barras de desplazamiento","title":"Propiedades de iframe","toolbar":"IFrame"},"image":{"alt":"Texto Alternativo","border":"Borde","btnUpload":"Enviar al Servidor","button2Img":"¿Desea convertir el botón de imagen en una simple imagen?","hSpace":"Esp.Horiz","img2Button":"¿Desea convertir la imagen en un botón de imagen?","infoTab":"Información de Imagen","linkTab":"Vínculo","lockRatio":"Proporcional","menu":"Propiedades de Imagen","resetSize":"Tamaño Original","title":"Propiedades de Imagen","titleButton":"Propiedades de Botón de Imagen","upload":"Cargar","urlMissing":"Debe indicar la URL de la imagen.","vSpace":"Esp.Vert","validateBorder":"El borde debe ser un número.","validateHSpace":"El espaciado horizontal debe ser un número.","validateVSpace":"El espaciado vertical debe ser un número."},"indent":{"indent":"Aumentar Sangría","outdent":"Disminuir Sangría"},"smiley":{"options":"Opciones de emoticonos","title":"Insertar un Emoticon","toolbar":"Emoticonos"},"language":{"button":"Fijar lenguaje","remove":"Quitar lenguaje"},"link":{"acccessKey":"Tecla de Acceso","advanced":"Avanzado","advisoryContentType":"Tipo de Contenido","advisoryTitle":"Título","anchor":{"toolbar":"Referencia","menu":"Propiedades de Referencia","title":"Propiedades de Referencia","name":"Nombre de la Referencia","errorName":"Por favor, complete el nombre de la Referencia","remove":"Quitar Referencia"},"anchorId":"Por ID de elemento","anchorName":"Por Nombre de Referencia","charset":"Fuente de caracteres vinculado","cssClasses":"Clases de hojas de estilo","download":"Force Download","displayText":"Display Text","emailAddress":"Dirección de E-Mail","emailBody":"Cuerpo del Mensaje","emailSubject":"Título del Mensaje","id":"Id","info":"Información de Vínculo","langCode":"Código idioma","langDir":"Orientación","langDirLTR":"Izquierda a Derecha (LTR)","langDirRTL":"Derecha a Izquierda (RTL)","menu":"Editar Vínculo","name":"Nombre","noAnchors":"(No hay referencias disponibles en el documento)","noEmail":"Por favor escriba la dirección de e-mail","noUrl":"Por favor escriba el vínculo URL","noTel":"Please type the phone number","other":"<otro>","phoneNumber":"Phone number","popupDependent":"Dependiente (Netscape)","popupFeatures":"Características de Ventana Emergente","popupFullScreen":"Pantalla Completa (IE)","popupLeft":"Posición Izquierda","popupLocationBar":"Barra de ubicación","popupMenuBar":"Barra de Menú","popupResizable":"Redimensionable","popupScrollBars":"Barras de desplazamiento","popupStatusBar":"Barra de Estado","popupToolbar":"Barra de Herramientas","popupTop":"Posición Derecha","rel":"Relación","selectAnchor":"Seleccionar una referencia","styles":"Estilo","tabIndex":"Indice de tabulación","target":"Destino","targetFrame":"<marco>","targetFrameName":"Nombre del Marco Destino","targetPopup":"<ventana emergente>","targetPopupName":"Nombre de Ventana Emergente","title":"Vínculo","toAnchor":"Referencia en esta página","toEmail":"E-Mail","toUrl":"URL","toPhone":"Phone","toolbar":"Insertar/Editar Vínculo","type":"Tipo de vínculo","unlink":"Eliminar Vínculo","upload":"Cargar"},"list":{"bulletedlist":"Viñetas","numberedlist":"Numeración"},"liststyle":{"bulletedTitle":"Propiedades de viñetas","circle":"Círculo","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disco","lowerAlpha":"Alfabeto en minúsculas (a, b, c, d, e, etc.)","lowerRoman":"Números romanos en minúsculas (i, ii, iii, iv, v, etc.)","none":"Ninguno","notset":"<sin establecer>","numberedTitle":"Propiedades de lista numerada","square":"Cuadrado","start":"Inicio","type":"Tipo","upperAlpha":"Alfabeto en mayúsculas (A, B, C, D, E, etc.)","upperRoman":"Números romanos en mayúsculas (I, II, III, IV, V, etc.)","validateStartNumber":"El Inicio debe ser un número entero."},"magicline":{"title":"Insertar párrafo aquí"},"maximize":{"maximize":"Maximizar","minimize":"Minimizar"},"newpage":{"toolbar":"Nueva Página"},"pagebreak":{"alt":"Salto de página","toolbar":"Insertar Salto de Página"},"pastetext":{"button":"Pegar como Texto Plano","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Pegar como Texto Plano"},"pastefromword":{"confirmCleanup":"El texto que desea parece provenir de Word.\r\n¿Desea depurarlo antes de pegarlo?","error":"No ha sido posible limpiar los datos debido a un error interno","title":"Pegar desde Word","toolbar":"Pegar desde Word"},"preview":{"preview":"Vista Previa"},"print":{"toolbar":"Imprimir"},"removeformat":{"toolbar":"Eliminar Formato"},"save":{"toolbar":"Guardar"},"selectall":{"toolbar":"Seleccionar Todo"},"showblocks":{"toolbar":"Mostrar bloques"},"sourcearea":{"toolbar":"Fuente HTML"},"specialchar":{"options":"Opciones de caracteres especiales","title":"Seleccione un caracter especial","toolbar":"Insertar Caracter Especial"},"scayt":{"btn_about":"Acerca de Corrector","btn_dictionaries":"Diccionarios","btn_disable":"Desactivar Corrector","btn_enable":"Activar Corrector","btn_langs":"Idiomas","btn_options":"Opciones","text_title":"Comprobar Ortografía Mientras Escribe"},"stylescombo":{"label":"Estilo","panelTitle":"Estilos para formatear","panelTitle1":"Estilos de párrafo","panelTitle2":"Estilos de carácter","panelTitle3":"Estilos de objeto"},"table":{"border":"Tamaño de Borde","caption":"Título","cell":{"menu":"Celda","insertBefore":"Insertar celda a la izquierda","insertAfter":"Insertar celda a la derecha","deleteCell":"Eliminar Celdas","merge":"Combinar Celdas","mergeRight":"Combinar a la derecha","mergeDown":"Combinar hacia abajo","splitHorizontal":"Dividir la celda horizontalmente","splitVertical":"Dividir la celda verticalmente","title":"Propiedades de celda","cellType":"Tipo de Celda","rowSpan":"Expandir filas","colSpan":"Expandir columnas","wordWrap":"Ajustar al contenido","hAlign":"Alineación Horizontal","vAlign":"Alineación Vertical","alignBaseline":"Linea de base","bgColor":"Color de fondo","borderColor":"Color de borde","data":"Datos","header":"Encabezado","yes":"Sí","no":"No","invalidWidth":"La anchura de celda debe ser un número.","invalidHeight":"La altura de celda debe ser un número.","invalidRowSpan":"La expansión de filas debe ser un número entero.","invalidColSpan":"La expansión de columnas debe ser un número entero.","chooseColor":"Elegir"},"cellPad":"Esp. interior","cellSpace":"Esp. e/celdas","column":{"menu":"Columna","insertBefore":"Insertar columna a la izquierda","insertAfter":"Insertar columna a la derecha","deleteColumn":"Eliminar Columnas"},"columns":"Columnas","deleteTable":"Eliminar Tabla","headers":"Encabezados","headersBoth":"Ambas","headersColumn":"Primera columna","headersNone":"Ninguno","headersRow":"Primera fila","invalidBorder":"El tamaño del borde debe ser un número.","invalidCellPadding":"El espaciado interior debe ser un número.","invalidCellSpacing":"El espaciado entre celdas debe ser un número.","invalidCols":"El número de columnas debe ser un número mayor que 0.","invalidHeight":"La altura de tabla debe ser un número.","invalidRows":"El número de filas debe ser un número mayor que 0.","invalidWidth":"La anchura de tabla debe ser un número.","menu":"Propiedades de Tabla","row":{"menu":"Fila","insertBefore":"Insertar fila en la parte superior","insertAfter":"Insertar fila en la parte inferior","deleteRow":"Eliminar Filas"},"rows":"Filas","summary":"Síntesis","title":"Propiedades de Tabla","toolbar":"Tabla","widthPc":"porcentaje","widthPx":"pixeles","widthUnit":"unidad de la anchura"},"undo":{"redo":"Rehacer","undo":"Deshacer"},"widget":{"move":"Dar clic y arrastrar para mover","label":"reproductor %1"},"uploadwidget":{"abort":"Carga abortada por el usuario.","doneOne":"Archivo cargado exitósamente.","doneMany":"%1 archivos exitósamente cargados.","uploadOne":"Cargando archivo ({percentage}%)...","uploadMany":"Cargando archivos, {current} de {max} hecho ({percentage}%)..."},"wsc":{"btnIgnore":"Ignorar","btnIgnoreAll":"Ignorar Todo","btnReplace":"Reemplazar","btnReplaceAll":"Reemplazar Todo","btnUndo":"Deshacer","changeTo":"Cambiar a","errorLoading":"Error cargando la aplicación del servidor: %s.","ieSpellDownload":"Módulo de Control de Ortografía no instalado.\r\n¿Desea descargarlo ahora?","manyChanges":"Control finalizado: se ha cambiado %1 palabras","noChanges":"Control finalizado: no se ha cambiado ninguna palabra","noMispell":"Control finalizado: no se encontraron errores","noSuggestions":"- No hay sugerencias -","notAvailable":"Lo sentimos pero el servicio no está disponible.","notInDic":"No se encuentra en el Diccionario","oneChange":"Control finalizado: se ha cambiado una palabra","progress":"Control de Ortografía en progreso...","title":"Comprobar ortografía","toolbar":"Ortografía"}};
bt-source/panel/BTPanel/static/ckeditor/lang/et.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['et']={"editor":"Rikkalik tekstiredaktor","editorPanel":"Rikkaliku tekstiredaktori paneel","common":{"editorHelp":"Abi saamiseks vajuta ALT 0","browseServer":"Serveri sirvimine","url":"URL","protocol":"Protokoll","upload":"Laadi üles","uploadSubmit":"Saada serverisse","image":"Pilt","flash":"Flash","form":"Vorm","checkbox":"Märkeruut","radio":"Raadionupp","textField":"Tekstilahter","textarea":"Tekstiala","hiddenField":"Varjatud lahter","button":"Nupp","select":"Valiklahter","imageButton":"Piltnupp","notSet":"<määramata>","id":"ID","name":"Nimi","langDir":"Keele suund","langDirLtr":"Vasakult paremale (LTR)","langDirRtl":"Paremalt vasakule (RTL)","langCode":"Keele kood","longDescr":"Pikk kirjeldus URL","cssClass":"Stiilistiku klassid","advisoryTitle":"Soovituslik pealkiri","cssStyle":"Laad","ok":"Olgu","cancel":"Loobu","close":"Sulge","preview":"Eelvaade","resize":"Suuruse muutmiseks lohista","generalTab":"Üldine","advancedTab":"Täpsemalt","validateNumberFailed":"See väärtus pole number.","confirmNewPage":"Kõik salvestamata muudatused lähevad kaotsi. Kas oled kindel, et tahad laadida uue lehe?","confirmCancel":"Mõned valikud on muudetud. Kas oled kindel, et tahad dialoogi sulgeda?","options":"Valikud","target":"Sihtkoht","targetNew":"Uus aken (_blank)","targetTop":"Kõige ülemine aken (_top)","targetSelf":"Sama aken (_self)","targetParent":"Vanemaken (_parent)","langDirLTR":"Vasakult paremale (LTR)","langDirRTL":"Paremalt vasakule (RTL)","styles":"Stiili","cssClasses":"Stiililehe klassid","width":"Laius","height":"Kõrgus","align":"Joondus","left":"Vasak","right":"Paremale","center":"Kesk","justify":"Rööpjoondus","alignLeft":"Vasakjoondus","alignRight":"Paremjoondus","alignCenter":"Align Center","alignTop":"Üles","alignMiddle":"Keskele","alignBottom":"Alla","alignNone":"Pole","invalidValue":"Vigane väärtus.","invalidHeight":"Kõrgus peab olema number.","invalidWidth":"Laius peab olema number.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"\"%1\" välja jaoks määratud väärtus peab olema positiivne täisarv CSS ühikuga (px, %, in, cm, mm, em, ex, pt või pc) või ilma.","invalidHtmlLength":"\"%1\" välja jaoks määratud väärtus peab olema positiivne täisarv HTML ühikuga (px või %) või ilma.","invalidInlineStyle":"Reasisese stiili määrangud peavad koosnema paarisväärtustest (tuples), mis on semikoolonitega eraldatult järgnevas vormingus: \"nimi : väärtus\".","cssLengthTooltip":"Sisesta väärtus pikslites või number koos sobiva CSS-i ühikuga (px, %, in, cm, mm, em, ex, pt või pc).","unavailable":"%1<span class=\"cke_accessibility\">, pole saadaval</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Tühik","35":"End","36":"Home","46":"Kustuta","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Vaikeväärtus"},"about":{"copy":"Copyright &copy; $1. Kõik õigused kaitstud.","dlgTitle":"About CKEditor 4","moreInfo":"Litsentsi andmed leiab meie veebilehelt:"},"basicstyles":{"bold":"Paks","italic":"Kursiiv","strike":"Läbijoonitud","subscript":"Allindeks","superscript":"Ülaindeks","underline":"Allajoonitud"},"bidi":{"ltr":"Teksti suund vasakult paremale","rtl":"Teksti suund paremalt vasakule"},"blockquote":{"toolbar":"Blokktsitaat"},"notification":{"closed":"Teavitused on suletud."},"toolbar":{"toolbarCollapse":"Tööriistariba peitmine","toolbarExpand":"Tööriistariba näitamine","toolbarGroups":{"document":"Dokument","clipboard":"Lõikelaud/tagasivõtmine","editing":"Muutmine","forms":"Vormid","basicstyles":"Põhistiilid","paragraph":"Lõik","links":"Lingid","insert":"Sisesta","styles":"Stiilid","colors":"Värvid","tools":"Tööriistad"},"toolbars":"Redaktori tööriistaribad"},"clipboard":{"copy":"Kopeeri","copyError":"Sinu veebisirvija turvaseaded ei luba redaktoril automaatselt kopeerida. Palun kasutage selleks klaviatuuri klahvikombinatsiooni (Ctrl/Cmd+C).","cut":"Lõika","cutError":"Sinu veebisirvija turvaseaded ei luba redaktoril automaatselt lõigata. Palun kasutage selleks klaviatuuri klahvikombinatsiooni (Ctrl/Cmd+X).","paste":"Aseta","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Asetamise ala","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automaatne","bgColorTitle":"Tausta värv","colors":{"000":"Must","800000":"Kastanpruun","8B4513":"Sadulapruun","2F4F4F":"Tume paehall","008080":"Sinakasroheline","000080":"Meresinine","4B0082":"Indigosinine","696969":"Tumehall","B22222":"Šamottkivi","A52A2A":"Pruun","DAA520":"Kuldkollane","006400":"Tumeroheline","40E0D0":"Türkiissinine","0000CD":"Keskmine sinine","800080":"Lilla","808080":"Hall","F00":"Punanae","FF8C00":"Tumeoranž","FFD700":"Kuldne","008000":"Roheline","0FF":"Tsüaniidsinine","00F":"Sinine","EE82EE":"Violetne","A9A9A9":"Tuhm hall","FFA07A":"Hele lõhe","FFA500":"Oranž","FFFF00":"Kollane","00FF00":"Lubja hall","AFEEEE":"Kahvatu türkiis","ADD8E6":"Helesinine","DDA0DD":"Ploomililla","D3D3D3":"Helehall","FFF0F5":"Lavendlipunane","FAEBD7":"Antiikvalge","FFFFE0":"Helekollane","F0FFF0":"Meloniroheline","F0FFFF":"Taevasinine","F0F8FF":"Beebisinine","E6E6FA":"Lavendel","FFF":"Valge","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Oraanž","E67E22":"Porgand","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Tume hall"},"more":"Rohkem värve...","panelTitle":"Värvid","textColorTitle":"Teksti värv"},"colordialog":{"clear":"Eemalda","highlight":"Näidis","options":"Värvi valikud","selected":"Valitud värv","title":"Värvi valimine"},"templates":{"button":"Mall","emptyListMsg":"(Ühtegi malli ei ole defineeritud)","insertOption":"Praegune sisu asendatakse","options":"Malli valikud","selectPromptMsg":"Palun vali mall, mis avada redaktoris<br />(praegune sisu läheb kaotsi):","title":"Sisumallid"},"contextmenu":{"options":"Kontekstimenüü valikud"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Soovitatav pealkiri","cssClassInputLabel":"Stiililehe klassid","edit":"Muuda Div","inlineStyleInputLabel":"Reasisene stiil","langDirLTRLabel":"Vasakult paremale (LTR)","langDirLabel":"Keele suund","langDirRTLLabel":"Paremalt vasakule (RTL)","languageCodeInputLabel":" Keelekood","remove":"Eemalda Div","styleSelectLabel":"Stiil","title":"Div-konteineri loomine","toolbar":"Div-konteineri loomine"},"elementspath":{"eleLabel":"Elementide asukoht","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Vigane serveri vastus."},"find":{"find":"Otsi","findOptions":"Otsingu valikud","findWhat":"Otsitav:","matchCase":"Suur- ja väiketähtede eristamine","matchCyclic":"Jätkatakse algusest","matchWord":"Ainult terved sõnad","notFoundMsg":"Otsitud teksti ei leitud.","replace":"Asenda","replaceAll":"Asenda kõik","replaceSuccessMsg":"%1 vastet asendati.","replaceWith":"Asendus:","title":"Otsimine ja asendamine"},"fakeobjects":{"anchor":"Ankur","flash":"Flashi animatsioon","hiddenfield":"Varjatud väli","iframe":"IFrame","unknown":"Tundmatu objekt"},"flash":{"access":"Skriptide ligipääs","accessAlways":"Kõigile","accessNever":"Mitte ühelegi","accessSameDomain":"Samalt domeenilt","alignAbsBottom":"Abs alla","alignAbsMiddle":"Abs keskele","alignBaseline":"Baasjoonele","alignTextTop":"Tekstist üles","bgcolor":"Tausta värv","chkFull":"Täisekraan lubatud","chkLoop":"Korduv","chkMenu":"Flashi menüü lubatud","chkPlay":"Automaatne start ","flashvars":"Flashi muutujad","hSpace":"H. vaheruum","properties":"Flashi omadused","propertiesTab":"Omadused","quality":"Kvaliteet","qualityAutoHigh":"Automaatne kõrge","qualityAutoLow":"Automaatne madal","qualityBest":"Parim","qualityHigh":"Kõrge","qualityLow":"Madal","qualityMedium":"Keskmine","scale":"Mastaap","scaleAll":"Näidatakse kõike","scaleFit":"Täpne sobivus","scaleNoBorder":"Äärist ei ole","title":"Flashi omadused","vSpace":"V. vaheruum","validateHSpace":"H. vaheruum peab olema number.","validateSrc":"Palun kirjuta lingi URL","validateVSpace":"V. vaheruum peab olema number.","windowMode":"Akna režiim","windowModeOpaque":"Läbipaistmatu","windowModeTransparent":"Läbipaistev","windowModeWindow":"Aken"},"font":{"fontSize":{"label":"Suurus","voiceLabel":"Kirja suurus","panelTitle":"Suurus"},"label":"Kiri","panelTitle":"Kiri","voiceLabel":"Kiri"},"forms":{"button":{"title":"Nupu omadused","text":"Tekst (väärtus)","type":"Liik","typeBtn":"Nupp","typeSbm":"Saada","typeRst":"Lähtesta"},"checkboxAndRadio":{"checkboxTitle":"Märkeruudu omadused","radioTitle":"Raadionupu omadused","value":"Väärtus","selected":"Märgitud","required":"Nõutud"},"form":{"title":"Vormi omadused","menu":"Vormi omadused","action":"Toiming","method":"Meetod","encoding":"Kodeering"},"hidden":{"title":"Varjatud lahtri omadused","name":"Nimi","value":"Väärtus"},"select":{"title":"Valiklahtri omadused","selectInfo":"Info","opAvail":"Võimalikud valikud:","value":"Väärtus","size":"Suurus","lines":"ridu","chkMulti":"Võimalik mitu valikut","required":"Nõutud","opText":"Tekst","opValue":"Väärtus","btnAdd":"Lisa","btnModify":"Muuda","btnUp":"Üles","btnDown":"Alla","btnSetValue":"Määra vaikimisi","btnDelete":"Kustuta"},"textarea":{"title":"Tekstiala omadused","cols":"Veerge","rows":"Ridu"},"textfield":{"title":"Tekstilahtri omadused","name":"Nimi","value":"Väärtus","charWidth":"Laius (tähemärkides)","maxChars":"Maksimaalselt tähemärke","required":"õutud","type":"Liik","typeText":"Tekst","typePass":"Parool","typeEmail":"E-mail","typeSearch":"Otsi","typeTel":"Telefon","typeUrl":"URL"}},"format":{"label":"Vorming","panelTitle":"Vorming","tag_address":"Aadress","tag_div":"Tavaline (DIV)","tag_h1":"Pealkiri 1","tag_h2":"Pealkiri 2","tag_h3":"Pealkiri 3","tag_h4":"Pealkiri 4","tag_h5":"Pealkiri 5","tag_h6":"Pealkiri 6","tag_p":"Tavaline","tag_pre":"Vormindatud"},"horizontalrule":{"toolbar":"Horisontaaljoone sisestamine"},"iframe":{"border":"Raami äärise näitamine","noUrl":"Vali iframe URLi liik","scrolling":"Kerimisribade lubamine","title":"IFrame omadused","toolbar":"IFrame"},"image":{"alt":"Alternatiivne tekst","border":"Joon","btnUpload":"Saada serverisse","button2Img":"Kas tahad teisendada valitud pildiga nupu tavaliseks pildiks?","hSpace":"H. vaheruum","img2Button":"Kas tahad teisendada valitud tavalise pildi pildiga nupuks?","infoTab":"Pildi info","linkTab":"Link","lockRatio":"Lukusta kuvasuhe","menu":"Pildi omadused","resetSize":"Lähtesta suurus","title":"Pildi omadused","titleButton":"Piltnupu omadused","upload":"Lae üles","urlMissing":"Pildi lähte-URL on puudu.","vSpace":"V. vaheruum","validateBorder":"Äärise laius peab olema täisarv.","validateHSpace":"Horisontaalne vaheruum peab olema täisarv.","validateVSpace":"Vertikaalne vaheruum peab olema täisarv."},"indent":{"indent":"Taande suurendamine","outdent":"Taande vähendamine"},"smiley":{"options":"Emotikonide valikud","title":"Sisesta emotikon","toolbar":"Emotikon"},"language":{"button":"Määra keel","remove":"Eemalda keel"},"link":{"acccessKey":"Juurdepääsu võti","advanced":"Täpsemalt","advisoryContentType":"Juhendava sisu tüüp","advisoryTitle":"Juhendav tiitel","anchor":{"toolbar":"Ankru sisestamine/muutmine","menu":"Ankru omadused","title":"Ankru omadused","name":"Ankru nimi","errorName":"Palun sisesta ankru nimi","remove":"Eemalda ankur"},"anchorId":"Elemendi id järgi","anchorName":"Ankru nime järgi","charset":"Lingitud ressursi märgistik","cssClasses":"Stiilistiku klassid","download":"Sunni allalaadimine","displayText":"Näidatav tekst","emailAddress":"E-posti aadress","emailBody":"Sõnumi tekst","emailSubject":"Sõnumi teema","id":"ID","info":"Lingi info","langCode":"Keele suund","langDir":"Keele suund","langDirLTR":"Vasakult paremale (LTR)","langDirRTL":"Paremalt vasakule (RTL)","menu":"Muuda linki","name":"Nimi","noAnchors":"(Selles dokumendis pole ankruid)","noEmail":"Palun kirjuta e-posti aadress","noUrl":"Palun kirjuta lingi URL","noTel":"Please type the phone number","other":"<muu>","phoneNumber":"Phone number","popupDependent":"Sõltuv (Netscape)","popupFeatures":"Hüpikakna omadused","popupFullScreen":"Täisekraan (IE)","popupLeft":"Vasak asukoht","popupLocationBar":"Aadressiriba","popupMenuBar":"Menüüriba","popupResizable":"Suurust saab muuta","popupScrollBars":"Kerimisribad","popupStatusBar":"Olekuriba","popupToolbar":"Tööriistariba","popupTop":"Ülemine asukoht","rel":"Suhe","selectAnchor":"Vali ankur","styles":"Laad","tabIndex":"Tab indeks","target":"Sihtkoht","targetFrame":"<raam>","targetFrameName":"Sihtmärk raami nimi","targetPopup":"<hüpikaken>","targetPopupName":"Hüpikakna nimi","title":"Link","toAnchor":"Ankur sellel lehel","toEmail":"E-post","toUrl":"URL","toPhone":"Phone","toolbar":"Lingi lisamine/muutmine","type":"Lingi liik","unlink":"Lingi eemaldamine","upload":"Lae üles"},"list":{"bulletedlist":"Punktloend","numberedlist":"Numberloend"},"liststyle":{"bulletedTitle":"Punktloendi omadused","circle":"Ring","decimal":"Numbrid (1, 2, 3, jne)","disc":"Täpp","lowerAlpha":"Väiketähed (a, b, c, d, e, jne)","lowerRoman":"Väiksed rooma numbrid (i, ii, iii, iv, v, jne)","none":"Puudub","notset":"<pole määratud>","numberedTitle":"Numberloendi omadused","square":"Ruut","start":"Algus","type":"Liik","upperAlpha":"Suurtähed (A, B, C, D, E, jne)","upperRoman":"Suured rooma numbrid (I, II, III, IV, V, jne)","validateStartNumber":"Loendi algusnumber peab olema täisarv."},"magicline":{"title":"Sisesta siia lõigu tekst"},"maximize":{"maximize":"Maksimeerimine","minimize":"Minimeerimine"},"newpage":{"toolbar":"Uus leht"},"pagebreak":{"alt":"Lehevahetuskoht","toolbar":"Lehevahetuskoha sisestamine"},"pastetext":{"button":"Asetamine tavalise tekstina","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Asetamine tavalise tekstina"},"pastefromword":{"confirmCleanup":"Tekst, mida tahad asetada näib pärinevat Wordist. Kas tahad selle enne asetamist puhastada?","error":"Asetatud andmete puhastamine ei olnud sisemise vea tõttu võimalik","title":"Asetamine Wordist","toolbar":"Asetamine Wordist"},"preview":{"preview":"Eelvaade"},"print":{"toolbar":"Printimine"},"removeformat":{"toolbar":"Vormingu eemaldamine"},"save":{"toolbar":"Salvestamine"},"selectall":{"toolbar":"Kõige valimine"},"showblocks":{"toolbar":"Blokkide näitamine"},"sourcearea":{"toolbar":"Lähtekood"},"specialchar":{"options":"Erimärkide valikud","title":"Erimärgi valimine","toolbar":"Erimärgi sisestamine"},"scayt":{"btn_about":"SCAYT-ist lähemalt","btn_dictionaries":"Sõnaraamatud","btn_disable":"SCAYT keelatud","btn_enable":"SCAYT lubatud","btn_langs":"Keeled","btn_options":"Valikud","text_title":"Õigekirjakontroll kirjutamise ajal"},"stylescombo":{"label":"Stiil","panelTitle":"Vormindusstiilid","panelTitle1":"Blokkstiilid","panelTitle2":"Reasisesed stiilid","panelTitle3":"Objektistiilid"},"table":{"border":"Joone suurus","caption":"Tabeli tiitel","cell":{"menu":"Lahter","insertBefore":"Sisesta lahter enne","insertAfter":"Sisesta lahter peale","deleteCell":"Eemalda lahtrid","merge":"Ühenda lahtrid","mergeRight":"Ühenda paremale","mergeDown":"Ühenda alla","splitHorizontal":"Poolita lahter horisontaalselt","splitVertical":"Poolita lahter vertikaalselt","title":"Lahtri omadused","cellType":"Lahtri liik","rowSpan":"Ridade vahe","colSpan":"Tulpade vahe","wordWrap":"Sõnade murdmine","hAlign":"Horisontaalne joondus","vAlign":"Vertikaalne joondus","alignBaseline":"Baasjoon","bgColor":"Tausta värv","borderColor":"Äärise värv","data":"Andmed","header":"Päis","yes":"Jah","no":"Ei","invalidWidth":"Lahtri laius peab olema number.","invalidHeight":"Lahtri kõrgus peab olema number.","invalidRowSpan":"Ridade vahe peab olema täisarv.","invalidColSpan":"Tulpade vahe peab olema täisarv.","chooseColor":"Vali"},"cellPad":"Lahtri täidis","cellSpace":"Lahtri vahe","column":{"menu":"Veerg","insertBefore":"Sisesta veerg enne","insertAfter":"Sisesta veerg peale","deleteColumn":"Eemalda veerud"},"columns":"Veerud","deleteTable":"Kustuta tabel","headers":"Päised","headersBoth":"Mõlemad","headersColumn":"Esimene tulp","headersNone":"Puudub","headersRow":"Esimene rida","invalidBorder":"Äärise suurus peab olema number.","invalidCellPadding":"Lahtrite polsterdus (padding) peab olema positiivne arv.","invalidCellSpacing":"Lahtrite vahe peab olema positiivne arv.","invalidCols":"Tulpade arv peab olema nullist suurem.","invalidHeight":"Tabeli kõrgus peab olema number.","invalidRows":"Ridade arv peab olema nullist suurem.","invalidWidth":"Tabeli laius peab olema number.","menu":"Tabeli omadused","row":{"menu":"Rida","insertBefore":"Sisesta rida enne","insertAfter":"Sisesta rida peale","deleteRow":"Eemalda read"},"rows":"Read","summary":"Kokkuvõte","title":"Tabeli omadused","toolbar":"Tabel","widthPc":"protsenti","widthPx":"pikslit","widthUnit":"laiuse ühik"},"undo":{"redo":"Toimingu kordamine","undo":"Tagasivõtmine"},"widget":{"move":"Click and drag to move","label":"%1 vidin"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"Fail on üles laaditud.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Ignoreeri","btnIgnoreAll":"Ignoreeri kõiki","btnReplace":"Asenda","btnReplaceAll":"Asenda kõik","btnUndo":"Võta tagasi","changeTo":"Muuda","errorLoading":"Viga rakenduse teenushosti laadimisel: %s.","ieSpellDownload":"Õigekirja kontrollija ei ole paigaldatud. Soovid sa selle alla laadida?","manyChanges":"Õigekirja kontroll sooritatud: %1 sõna muudetud","noChanges":"Õigekirja kontroll sooritatud: ühtegi sõna ei muudetud","noMispell":"Õigekirja kontroll sooritatud: õigekirjuvigu ei leitud","noSuggestions":"- Soovitused puuduvad -","notAvailable":"Kahjuks ei ole teenus praegu saadaval.","notInDic":"Puudub sõnastikust","oneChange":"Õigekirja kontroll sooritatud: üks sõna muudeti","progress":"Toimub õigekirja kontroll...","title":"Õigekirjakontroll","toolbar":"Õigekirjakontroll"}};
bt-source/panel/BTPanel/static/ckeditor/lang/eu.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['eu']={"editor":"Testu aberastuaren editorea","editorPanel":"Testu aberastuaren editorearen panela","common":{"editorHelp":"Sakatu ALT 0 laguntza jasotzeko","browseServer":"Arakatu zerbitzaria","url":"URLa","protocol":"Protokoloa","upload":"Kargatu","uploadSubmit":"Bidali zerbitzarira","image":"Irudia","flash":"Flash","form":"Formularioa","checkbox":"Kontrol-laukia","radio":"Aukera-botoia","textField":"Testu-eremua","textarea":"Testu-area","hiddenField":"Ezkutuko eremua","button":"Botoia","select":"Hautespen-eremua","imageButton":"Irudi-botoia","notSet":"<ezarri gabe>","id":"Id","name":"Izena","langDir":"Hizkuntzaren norabidea","langDirLtr":"Ezkerretik eskuinera (LTR)","langDirRtl":"Eskuinetik ezkerrera (RTL)","langCode":"Hizkuntzaren kodea","longDescr":"URLaren deskribapen luzea","cssClass":"Estilo-orriko klaseak","advisoryTitle":"Aholkatutako izenburua","cssStyle":"Estiloa","ok":"Ados","cancel":"Utzi","close":"Itxi","preview":"Aurrebista","resize":"Aldatu tamainaz","generalTab":"Orokorra","advancedTab":"Aurreratua","validateNumberFailed":"Balio hau ez da zenbaki bat.","confirmNewPage":"Eduki honetan gorde gabe dauden aldaketak galduko dira. Ziur zaude orri berri bat kargatu nahi duzula?","confirmCancel":"Aukera batzuk aldatu dituzu. Ziur zaude elkarrizketa-koadroa itxi nahi duzula?","options":"Aukerak","target":"Helburua","targetNew":"Leiho berria (_blank)","targetTop":"Goieneko leihoan (_top)","targetSelf":"Leiho berean (_self)","targetParent":"Leiho gurasoan (_parent)","langDirLTR":"Ezkerretik eskuinera (LTR)","langDirRTL":"Eskuinetik ezkerrera (RTL)","styles":"Estiloa","cssClasses":"Estilo-orriko klaseak","width":"Zabalera","height":"Altuera","align":"Lerrokatzea","left":"Ezkerrean","right":"Eskuinean","center":"Erdian","justify":"Justifikatu","alignLeft":"Lerrokatu ezkerrean","alignRight":"Lerrokatu eskuinean","alignCenter":"Align Center","alignTop":"Goian","alignMiddle":"Erdian","alignBottom":"Behean","alignNone":"Bat ere ez","invalidValue":"Balio desegokia.","invalidHeight":"Altuera zenbaki bat izan behar da.","invalidWidth":"Zabalera zenbaki bat izan behar da.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"\"%1\" eremurako zehaztutako balioak zenbaki positibo bat izan behar du, CSS neurri unitate batekin edo gabe (px, %, in, cm, mm, em, ex, pt edo pc).","invalidHtmlLength":"\"%1\" eremurako zehaztutako balioak zenbaki positibo bat izan behar du, HTML neurri unitate batekin edo gabe (px edo %).","invalidInlineStyle":"Lineako estiloan zehaztutako balioak \"izen : balio\" formatuko tupla bat edo gehiago izan behar dira, komaz bereiztuak.","cssLengthTooltip":"Sartu zenbaki bat edo zenbaki bat baliozko CSS unitate batekin (px, %, in, cm, mm, em, ex, pt, edo pc).","unavailable":"%1<span class=\"cke_accessibility\">, erabilezina</span>","keyboard":{"8":"Atzera tekla","13":"Sartu","16":"Maius","17":"Ktrl","18":"Alt","32":"Zuriunea","35":"Buka","36":"Etxea","46":"Ezabatu","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Komandoa"},"keyboardShortcut":"Laster-tekla","optionDefault":"Lehenetsia"},"about":{"copy":"Copyright &copy; $1. Eskubide guztiak erreserbaturik.","dlgTitle":"CKEditor 4ri buruz","moreInfo":"Lizentziari buruzko informazioa gure webgunean:"},"basicstyles":{"bold":"Lodia","italic":"Etzana","strike":"Marratua","subscript":"Azpi-indizea","superscript":"Goi-indizea","underline":"Azpimarratu"},"bidi":{"ltr":"Testuaren norantza ezkerretik eskuinera","rtl":"Testuaren norantza eskuinetik ezkerrera"},"blockquote":{"toolbar":"Aipamen blokea"},"notification":{"closed":"Jakinarazpena itxita."},"toolbar":{"toolbarCollapse":"Tolestu tresna-barra","toolbarExpand":"Zabaldu tresna-barra","toolbarGroups":{"document":"Dokumentua","clipboard":"Arbela/Desegin","editing":"Editatu","forms":"Formularioak","basicstyles":"Oinarrizko estiloak","paragraph":"Paragrafoa","links":"Estekak","insert":"Txertatu","styles":"Estiloak","colors":"Koloreak","tools":"Tresnak"},"toolbars":"Editorearen tresna-barrak"},"clipboard":{"copy":"Kopiatu","copyError":"Zure web nabigatzailearen segurtasun ezarpenek ez dute baimentzen testuak automatikoki kopiatzea. Mesedez teklatua erabil ezazu (Ctrl/Cmd+C).","cut":"Ebaki","cutError":"Zure web nabigatzailearen segurtasun ezarpenek ez dute baimentzen testuak automatikoki moztea. Mesedez teklatua erabil ezazu (Ctrl/Cmd+X).","paste":"Itsatsi","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Itsasteko area","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatikoa","bgColorTitle":"Atzeko planoko kolorea","colors":{"000":"Beltza","800000":"Granatea","8B4513":"Zela marroia","2F4F4F":"Arbel gris iluna","008080":"Urdin berdexka","000080":"Urdin iluna","4B0082":"Indigoa","696969":"Gris iluna","B22222":"Adreilu erregogorra","A52A2A":"Marroia","DAA520":"Urrezko makila","006400":"Berde iluna","40E0D0":"Turkesa","0000CD":"Urdin ertaina","800080":"Morea","808080":"Grisa","F00":"Gorria","FF8C00":"Laranja iluna","FFD700":"Urrea","008000":"Berdea","0FF":"Ziana","00F":"Urdina","EE82EE":"Bioleta","A9A9A9":"Gris ahula","FFA07A":"Izokin-kolore argia","FFA500":"Laranja","FFFF00":"Horia","00FF00":"Lima","AFEEEE":"Turkesa argia","ADD8E6":"Urdin argia","DDA0DD":"Aran-kolorea","D3D3D3":"Gris argia","FFF0F5":"Izpiliku-gorrixka","FAEBD7":"Zuri zaharra","FFFFE0":"Hori argia","F0FFF0":"Ezti-ihintza","F0FFFF":"Zeru-urdina","F0F8FF":"Alizia urdina","E6E6FA":"Izpilikua","FFF":"Zuria","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Gris iluna"},"more":"Kolore gehiago...","panelTitle":"Koloreak","textColorTitle":"Testu-kolorea"},"colordialog":{"clear":"Garbitu","highlight":"Nabarmendu","options":"Kolore aukerak","selected":"Hautatutako kolorea","title":"Hautatu kolorea"},"templates":{"button":"Txantiloiak","emptyListMsg":"(Ez dago txantiloirik definituta)","insertOption":"Ordeztu uneko edukiak","options":"Txantiloi aukerak","selectPromptMsg":"Mesedez hautatu txantiloia editorean irekitzeko","title":"Eduki txantiloiak"},"contextmenu":{"options":"Testuinguru-menuaren aukerak"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Aholkatutako izenburua","cssClassInputLabel":"Estilo-orriko klaseak","edit":"Editatu Div-a","inlineStyleInputLabel":"Lineako estiloa","langDirLTRLabel":"Ezkerretik eskuinera (LTR)","langDirLabel":"Hizkuntzaren norabidea","langDirRTLLabel":"Eskuinetik ezkerrera (RTL)","languageCodeInputLabel":"Hizkuntzaren kodea","remove":"Kendu Div-a","styleSelectLabel":"Estiloa","title":"Sortu Div edukiontzia","toolbar":"Sortu Div edukiontzia"},"elementspath":{"eleLabel":"Elementuen bidea","eleTitle":"%1 elementua"},"filetools":{"loadError":"Errorea gertatu da fitxategia irakurtzean.","networkError":"Sareko errorea gertatu da fitxategia kargatzean.","httpError404":"HTTP errorea gertatu da fitxategia kargatzean (404: Fitxategia ez da aurkitu).","httpError403":"HTTP errorea gertatu da fitxategia kargatzean (403: Debekatuta).","httpError":"HTTP errorea gertatu da fitxategia kargatzean (errore-egoera: %1).","noUrlError":"Kargatzeko URLa definitu gabe.","responseError":"Zerbitzariaren erantzun okerra."},"find":{"find":"Bilatu","findOptions":"Bilaketaren aukerak","findWhat":"Bilatu hau:","matchCase":"Maiuskula/minuskula","matchCyclic":"Bilaketa ziklikoa","matchWord":"Bilatu hitz osoa","notFoundMsg":"Ez da aurkitu zehazturiko testua.","replace":"Ordezkatu","replaceAll":"Ordezkatu guztiak","replaceSuccessMsg":"%1 aldiz ordezkatua.","replaceWith":"Ordezkatu honekin:","title":"Bilatu eta ordezkatu"},"fakeobjects":{"anchor":"Aingura","flash":"Flash animazioa","hiddenfield":"Ezkutuko eremua","iframe":"IFrame-a","unknown":"Objektu ezezaguna"},"flash":{"access":"Script atzipena","accessAlways":"Beti","accessNever":"Inoiz ere ez","accessSameDomain":"Domeinu berekoak","alignAbsBottom":"Abs behean","alignAbsMiddle":"Abs erdian","alignBaseline":"Oinean","alignTextTop":"Testua goian","bgcolor":"Atzeko planoko kolorea","chkFull":"Onartu pantaila osoa","chkLoop":"Begizta","chkMenu":"Gaitu Flash-en menua","chkPlay":"Erreproduzitu automatikoki","flashvars":"Flash-en aldagaiak","hSpace":"HSpace","properties":"Flash-en propietateak","propertiesTab":"Propietateak","quality":"Kalitatea","qualityAutoHigh":"Auto altua","qualityAutoLow":"Auto baxua","qualityBest":"Hoberena","qualityHigh":"Altua","qualityLow":"Baxua","qualityMedium":"Ertaina","scale":"Eskalatu","scaleAll":"Erakutsi dena","scaleFit":"Doitu","scaleNoBorder":"Ertzik gabe","title":"Flash-en propietateak","vSpace":"VSpace","validateHSpace":"HSpace zenbaki bat izan behar da.","validateSrc":"URLak ezin du hutsik egon.","validateVSpace":"VSpace zenbaki bat izan behar da.","windowMode":"Leiho-modua","windowModeOpaque":"Opakoa","windowModeTransparent":"Gardena","windowModeWindow":"Leihoa"},"font":{"fontSize":{"label":"Tamaina","voiceLabel":"Letra-tamaina","panelTitle":"Letra-tamaina"},"label":"Letra-tipoa","panelTitle":"Letra-tipoaren izena","voiceLabel":"Letra-tipoa"},"forms":{"button":{"title":"Botoiaren ezaugarriak","text":"Testua (balioa)","type":"Mota","typeBtn":"Botoia","typeSbm":"Bidali","typeRst":"Berrezarri"},"checkboxAndRadio":{"checkboxTitle":"Kontrol-laukiaren propietateak","radioTitle":"Aukera-botoiaren propietateak","value":"Balioa","selected":"Hautatuta","required":"Beharrezkoa"},"form":{"title":"Formularioaren propietateak","menu":"Formularioaren propietateak","action":"Ekintza","method":"Metodoa","encoding":"Kodeketa"},"hidden":{"title":"Ezkutuko eremuaren propietateak","name":"Izena","value":"Balioa"},"select":{"title":"Hautespen eremuaren propietateak","selectInfo":"Hautatu informazioa","opAvail":"Erabilgarri dauden aukerak","value":"Balioa","size":"Tamaina","lines":"lerro kopurua","chkMulti":"baimendu hautapen anitzak","required":"Beharrezkoa","opText":"Testua","opValue":"Balioa","btnAdd":"Gehitu","btnModify":"Aldatu","btnUp":"Gora","btnDown":"Behera","btnSetValue":"Ezarri hautatutako balio bezala","btnDelete":"Ezabatu"},"textarea":{"title":"Testu-arearen propietateak","cols":"Zutabeak","rows":"Errenkadak"},"textfield":{"title":"Testu-eremuaren propietateak","name":"Izena","value":"Balioa","charWidth":"Karaktere-zabalera","maxChars":"Gehienezko karaktereak","required":"Beharrezkoa","type":"Mota","typeText":"Testua","typePass":"Pasahitza","typeEmail":"E-posta","typeSearch":"Bilatu","typeTel":"Telefono zenbakia","typeUrl":"URLa"}},"format":{"label":"Formatua","panelTitle":"Paragrafoaren formatua","tag_address":"Helbidea","tag_div":"Normala (DIV)","tag_h1":"Izenburua 1","tag_h2":"Izenburua 2","tag_h3":"Izenburua 3","tag_h4":"Izenburua 4","tag_h5":"Izenburua 5","tag_h6":"Izenburua 6","tag_p":"Normala","tag_pre":"Formatuduna"},"horizontalrule":{"toolbar":"Txertatu marra horizontala"},"iframe":{"border":"Erakutsi markoaren ertza","noUrl":"Idatzi iframe-aren URLa, mesedez.","scrolling":"Gaitu korritze-barrak","title":"IFrame-aren propietateak","toolbar":"IFrame-a"},"image":{"alt":"Ordezko testua","border":"Ertza","btnUpload":"Bidali zerbitzarira","button2Img":"Hautatutako irudi-botoia irudi arrunt bihurtu nahi duzu?","hSpace":"HSpace","img2Button":"Hautatutako irudia irudi-botoi bihurtu nahi duzu?","infoTab":"Irudiaren informazioa","linkTab":"Esteka","lockRatio":"Blokeatu erlazioa","menu":"Irudiaren propietateak","resetSize":"Berrezarri tamaina","title":"Irudiaren propietateak","titleButton":"Irudi-botoiaren propietateak","upload":"Kargatu","urlMissing":"Irudiaren iturburuaren URLa falta da.","vSpace":"VSpace","validateBorder":"Ertza zenbaki oso bat izan behar da.","validateHSpace":"HSpace zenbaki oso bat izan behar da.","validateVSpace":"VSpace zenbaki oso bat izan behar da."},"indent":{"indent":"Handitu koska","outdent":"Txikitu koska"},"smiley":{"options":"Aurpegieren aukerak","title":"Txertatu aurpegiera","toolbar":"Aurpegierak"},"language":{"button":"Ezarri hizkuntza","remove":"Kendu hizkuntza"},"link":{"acccessKey":"Sarbide-tekla","advanced":"Aurreratua","advisoryContentType":"Aholkatutako eduki-mota","advisoryTitle":"Aholkatutako izenburua","anchor":{"toolbar":"Aingura","menu":"Editatu aingura","title":"Ainguraren propietateak","name":"Ainguraren izena","errorName":"Idatzi ainguraren izena","remove":"Kendu aingura"},"anchorId":"Elementuaren Id-aren arabera","anchorName":"Aingura-izenaren arabera","charset":"Estekatutako baliabide karaktere-jokoa","cssClasses":"Estilo-orriko klaseak","download":"Behartu deskarga","displayText":"Bistaratu testua","emailAddress":"E-posta helbidea","emailBody":"Mezuaren gorputza","emailSubject":"Mezuaren gaia","id":"Id","info":"Estekaren informazioa","langCode":"Hizkuntzaren kodea","langDir":"Hizkuntzaren norabidea","langDirLTR":"Ezkerretik eskuinera (LTR)","langDirRTL":"Eskuinetik ezkerrera (RTL)","menu":"Editatu esteka","name":"Izena","noAnchors":"(Ez dago aingurarik erabilgarri dokumentuan)","noEmail":"Mesedez idatzi e-posta helbidea","noUrl":"Mesedez idatzi estekaren URLa","noTel":"Please type the phone number","other":"<bestelakoa>","phoneNumber":"Phone number","popupDependent":"Menpekoa (Netscape)","popupFeatures":"Laster-leihoaren ezaugarriak","popupFullScreen":"Pantaila osoa (IE)","popupLeft":"Ezkerreko posizioa","popupLocationBar":"Kokaleku-barra","popupMenuBar":"Menu-barra","popupResizable":"Tamaina aldakorra","popupScrollBars":"Korritze-barrak","popupStatusBar":"Egoera-barra","popupToolbar":"Tresna-barra","popupTop":"Goiko posizioa","rel":"Erlazioa","selectAnchor":"Hautatu aingura","styles":"Estiloa","tabIndex":"Tabulazio indizea","target":"Helburua","targetFrame":"<frame>","targetFrameName":"Helburuko markoaren izena","targetPopup":"<laster-leihoa>","targetPopupName":"Laster-leihoaren izena","title":"Esteka","toAnchor":"Estekatu testuko aingurara","toEmail":"E-posta","toUrl":"URLa","toPhone":"Phone","toolbar":"Esteka","type":"Esteka-mota","unlink":"Kendu esteka","upload":"Kargatu"},"list":{"bulletedlist":"Buletdun Zerrenda","numberedlist":"Zenbakidun Zerrenda"},"liststyle":{"bulletedTitle":"Buletadun zerrendaren propietateak","circle":"Zirkulua","decimal":"Hamartarra (1, 2, 3...)","disc":"Diskoa","lowerAlpha":"Alfabetoa minuskulaz (a, b, c, d, e...)","lowerRoman":"Erromatarra minuskulaz (i, ii, iii, iv, v...)","none":"Bat ere ez","notset":"<ezarri gabea>","numberedTitle":"Zenbakidun zerrendaren propietateak","square":"Karratua","start":"Hasi","type":"Mota","upperAlpha":"Alfabetoa maiuskulaz (A, B, C, D, E...)","upperRoman":"Erromatarra maiuskulaz (I, II, III, IV, V, etc.)","validateStartNumber":"Zerrendaren hasierako zenbakiak zenbaki osoa izan behar du."},"magicline":{"title":"Txertatu paragrafoa hemen"},"maximize":{"maximize":"Maximizatu","minimize":"Minimizatu"},"newpage":{"toolbar":"Orrialde berria"},"pagebreak":{"alt":"Orrialde-jauzia","toolbar":"Txertatu orrialde-jauzia inprimatzean"},"pastetext":{"button":"Itsatsi testu arrunta bezala","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Itsatsi testu arrunta bezala"},"pastefromword":{"confirmCleanup":"Itsatsi nahi duzun testua Word-etik kopiatua dela dirudi. Itsatsi baino lehen garbitu nahi duzu?","error":"Barne-errore bat dela eta ezin izan da itsatsitako testua garbitu","title":"Itsatsi Word-etik","toolbar":"Itsatsi Word-etik"},"preview":{"preview":"Aurrebista"},"print":{"toolbar":"Inprimatu"},"removeformat":{"toolbar":"Kendu formatua"},"save":{"toolbar":"Gorde"},"selectall":{"toolbar":"Hautatu dena"},"showblocks":{"toolbar":"Erakutsi blokeak"},"sourcearea":{"toolbar":"Iturburua"},"specialchar":{"options":"Karaktere berezien aukerak","title":"Hautatu karaktere berezia","toolbar":"Txertatu karaktere berezia"},"scayt":{"btn_about":"SCAYTi buruz","btn_dictionaries":"Hiztegiak","btn_disable":"Desgaitu SCAYT","btn_enable":"Gaitu SCAYT","btn_langs":"Hizkuntzak","btn_options":"Aukerak","text_title":"Ortografia Zuzenketa Idatzi Ahala (SCAYT)"},"stylescombo":{"label":"Estiloak","panelTitle":"Formatu estiloak","panelTitle1":"Bloke estiloak","panelTitle2":"Lineako estiloak","panelTitle3":"Objektu estiloak"},"table":{"border":"Ertzaren zabalera","caption":"Epigrafea","cell":{"menu":"Gelaxka","insertBefore":"Txertatu gelaxka aurretik","insertAfter":"Txertatu gelaxka ondoren","deleteCell":"Ezabatu gelaxkak","merge":"Batu gelaxkak","mergeRight":"Batu eskuinetara","mergeDown":"Batu behera","splitHorizontal":"Banatu gelaxka horizontalki","splitVertical":"Banatu gelaxka bertikalki","title":"Gelaxkaren propietateak","cellType":"Gelaxka-mota","rowSpan":"Errenkaden hedadura","colSpan":"Zutabeen hedadura","wordWrap":"Itzulbira","hAlign":"Lerrokatze horizontala","vAlign":"Lerrokatze bertikala","alignBaseline":"Oinarri-lerroan","bgColor":"Atzeko planoaren kolorea","borderColor":"Ertzaren kolorea","data":"Data","header":"Goiburua","yes":"Bai","no":"Ez","invalidWidth":"Gelaxkaren zabalera zenbaki bat izan behar da.","invalidHeight":"Gelaxkaren altuera zenbaki bat izan behar da.","invalidRowSpan":"Errenkaden hedadura zenbaki osoa izan behar da.","invalidColSpan":"Zutabeen hedadura zenbaki osoa izan behar da.","chooseColor":"Aukeratu"},"cellPad":"Gelaxken betegarria","cellSpace":"Gelaxka arteko tartea","column":{"menu":"Zutabea","insertBefore":"Txertatu zutabea aurretik","insertAfter":"Txertatu zutabea ondoren","deleteColumn":"Ezabatu zutabeak"},"columns":"Zutabeak","deleteTable":"Ezabatu taula","headers":"Goiburuak","headersBoth":"Biak","headersColumn":"Lehen zutabea","headersNone":"Bat ere ez","headersRow":"Lehen errenkada","invalidBorder":"Ertzaren tamaina zenbaki bat izan behar da.","invalidCellPadding":"Gelaxken betegarria zenbaki bat izan behar da.","invalidCellSpacing":"Gelaxka arteko tartea zenbaki bat izan behar da.","invalidCols":"Zutabe kopurua 0 baino handiagoa den zenbakia izan behar da.","invalidHeight":"Taularen altuera zenbaki bat izan behar da.","invalidRows":"Errenkada kopurua 0 baino handiagoa den zenbakia izan behar da.","invalidWidth":"Taularen zabalera zenbaki bat izan behar da.","menu":"Taularen propietateak","row":{"menu":"Errenkada","insertBefore":"Txertatu errenkada aurretik","insertAfter":"Txertatu errenkada ondoren","deleteRow":"Ezabatu errenkadak"},"rows":"Errenkadak","summary":"Laburpena","title":"Taularen propietateak","toolbar":"Taula","widthPc":"ehuneko","widthPx":"pixel","widthUnit":"zabalera unitatea"},"undo":{"redo":"Berregin","undo":"Desegin"},"widget":{"move":"Klikatu eta arrastatu lekuz aldatzeko","label":"%1 widget"},"uploadwidget":{"abort":"Karga erabiltzaileak bertan behera utzita.","doneOne":"Fitxategia behar bezala kargatu da.","doneMany":"Behar bezala kargatu dira %1 fitxategi.","uploadOne":"Fitxategia kargatzen ({percentage}%)...","uploadMany":"Fitxategiak kargatzen, {current} / {max} eginda ({percentage}%)..."},"wsc":{"btnIgnore":"Ezikusi","btnIgnoreAll":"Denak Ezikusi","btnReplace":"Ordezkatu","btnReplaceAll":"Denak Ordezkatu","btnUndo":"Desegin","changeTo":"Honekin ordezkatu","errorLoading":"Errorea gertatu da aplikazioa zerbitzaritik kargatzean: %s.","ieSpellDownload":"Zuzentzaile ortografikoa ez dago instalatuta. Deskargatu nahi duzu?","manyChanges":"Zuzenketa ortografikoa bukatuta: %1 hitz aldatu dira","noChanges":"Zuzenketa ortografikoa bukatuta: Ez da ezer aldatu","noMispell":"Zuzenketa ortografikoa bukatuta: Akatsik ez","noSuggestions":"- Iradokizunik ez -","notAvailable":"Barkatu baina momentu honetan zerbitzua ez dago erabilgarri.","notInDic":"Ez dago hiztegian","oneChange":"Zuzenketa ortografikoa bukatuta: Hitz bat aldatu da","progress":"Zuzenketa ortografikoa martxan...","title":"Ortografia zuzenketa","toolbar":"Ortografia"}};
bt-source/panel/BTPanel/static/ckeditor/lang/fa.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['fa']={"editor":"ویرایش‌گر متن غنی","editorPanel":"پنل ویرایشگر متن غنی","common":{"editorHelp":"کلید Alt+0 را برای راهنمایی بفشارید","browseServer":"فهرست​نمایی سرور","url":"URL","protocol":"قرارداد","upload":"بالاگذاری","uploadSubmit":"به سرور بفرست","image":"تصویر","flash":"فلش","form":"فرم","checkbox":"چک‌باکس","radio":"دکمه‌ی رادیویی","textField":"فیلد متنی","textarea":"ناحیهٴ متنی","hiddenField":"فیلد پنهان","button":"دکمه","select":"فیلد انتخاب چند گزینه​ای","imageButton":"دکمه‌ی تصویری","notSet":"<تعیین‌نشده>","id":"شناسه","name":"نام","langDir":"جهت زبان","langDirLtr":"چپ به راست","langDirRtl":"راست به چپ","langCode":"کد زبان","longDescr":"URL توصیف طولانی","cssClass":"کلاس​های شیوه​نامه (Stylesheet)","advisoryTitle":"عنوان کمکی","cssStyle":"سبک","ok":"پذیرش","cancel":"انصراف","close":"بستن","preview":"پیش‌نمایش","resize":"تغییر اندازه","generalTab":"عمومی","advancedTab":"پیش‌رفته","validateNumberFailed":"این مقدار یک عدد نیست.","confirmNewPage":"هر تغییر ایجاد شده​ی ذخیره نشده از بین خواهد رفت. آیا اطمینان دارید که قصد بارگیری صفحه جدیدی را دارید؟","confirmCancel":"برخی از گزینه‌ها تغییر کرده‌اند. آیا واقعا قصد بستن این پنجره را دارید؟","options":"گزینه​ها","target":"مقصد","targetNew":"پنجره جدید","targetTop":"بالاترین پنجره","targetSelf":"همان پنجره","targetParent":"پنجره والد","langDirLTR":"چپ به راست","langDirRTL":"راست به چپ","styles":"سبک","cssClasses":"کلاس‌های سبک‌نامه","width":"عرض","height":"طول","align":"چینش","left":"چپ","right":"راست","center":"وسط","justify":"بلوک چین","alignLeft":"چپ چین","alignRight":"راست چین","alignCenter":"مرکز قرار بده","alignTop":"بالا","alignMiddle":"میانه","alignBottom":"پائین","alignNone":"هیچ","invalidValue":"مقدار نامعتبر.","invalidHeight":"ارتفاع باید یک عدد باشد.","invalidWidth":"عرض باید یک عدد باشد.","invalidLength":"عدد تعیین شده برای فیلد \"%1\" باید یک عدد مثبت با یا بدون یک واحد اندازه گیری معتبر (\"%2\") باشد.","invalidCssLength":"عدد تعیین شده برای فیلد \"%1\" باید یک عدد مثبت با یا بدون یک واحد اندازه گیری CSS معتبر باشد (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"عدد تعیین شده برای فیلد \"%1\" باید یک عدد مثبت با یا بدون یک واحد اندازه گیری HTML معتبر باشد (px or %).","invalidInlineStyle":"عدد تعیین شده برای سبک درون​خطی -Inline Style- باید دارای یک یا چند چندتایی با شکلی شبیه \"name : value\" که باید با یک \";\" از هم جدا شوند.","cssLengthTooltip":"یک عدد برای یک مقدار بر حسب پیکسل و یا یک عدد با یک واحد CSS معتبر وارد کنید (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">، غیر قابل دسترس</span>","keyboard":{"8":"عقبگرد","13":"ورود","16":"تعویض","17":"کنترل","18":"دگرساز","32":"فاصله","35":"پایان","36":"خانه","46":"حذف","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"فرمان"},"keyboardShortcut":"میانبر صفحه کلید","optionDefault":"پیش فرض"},"about":{"copy":"حق نشر &copy; $1. کلیه حقوق محفوظ است.","dlgTitle":"درباره CKEditor","moreInfo":"برای کسب اطلاعات مجوز لطفا به وب سایت ما مراجعه کنید:"},"basicstyles":{"bold":"درشت","italic":"خمیده","strike":"خط‌خورده","subscript":"زیرنویس","superscript":"بالانویس","underline":"زیرخط‌دار"},"bidi":{"ltr":"جهت متن از چپ به راست","rtl":"جهت متن از راست به چپ"},"blockquote":{"toolbar":"بلوک نقل قول"},"notification":{"closed":"آگاه‌سازی بسته شد"},"toolbar":{"toolbarCollapse":"بستن نوار ابزار","toolbarExpand":"بازکردن نوار ابزار","toolbarGroups":{"document":"سند","clipboard":"حافظه موقت/برگشت","editing":"در حال ویرایش","forms":"فرم​ها","basicstyles":"سبک‌های پایه","paragraph":"بند","links":"پیوندها","insert":"ورود","styles":"سبک‌ها","colors":"رنگ​ها","tools":"ابزارها"},"toolbars":"نوار ابزارهای ویرایش‌گر"},"clipboard":{"copy":"رونوشت","copyError":"تنظیمات امنیتی مرورگر شما اجازه نمیدهد که ویرایشگر به طور خودکار عملکردهای کپی کردن را انجام دهد. لطفا با دکمههای صفحه کلید این کار را انجام دهید (Ctrl/Cmd+C).","cut":"برش","cutError":"تنظیمات امنیتی مرورگر شما اجازه نمیدهد که ویرایشگر به طور خودکار عملکردهای برش را انجام دهد. لطفا با دکمههای صفحه کلید این کار را انجام دهید (Ctrl/Cmd+X).","paste":"چسباندن","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"محل چسباندن","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"خودکار","bgColorTitle":"رنگ پس​زمینه","colors":{"000":"سیاه","800000":"خرمایی","8B4513":"قهوه​ای شکلاتی","2F4F4F":"ارغوانی مایل به خاکستری","008080":"آبی مایل به خاکستری","000080":"آبی سیر","4B0082":"نیلی","696969":"خاکستری تیره","B22222":"آتش آجری","A52A2A":"قهوه​ای","DAA520":"میله​ی طلایی","006400":"سبز تیره","40E0D0":"فیروزه​ای","0000CD":"آبی روشن","800080":"ارغوانی","808080":"خاکستری","F00":"قرمز","FF8C00":"نارنجی پررنگ","FFD700":"طلایی","008000":"سبز","0FF":"آبی مایل به سبز","00F":"آبی","EE82EE":"بنفش","A9A9A9":"خاکستری مات","FFA07A":"صورتی کدر روشن","FFA500":"نارنجی","FFFF00":"زرد","00FF00":"فسفری","AFEEEE":"فیروزه​ای رنگ پریده","ADD8E6":"آبی کمرنگ","DDA0DD":"آلویی","D3D3D3":"خاکستری روشن","FFF0F5":"بنفش کمرنگ","FAEBD7":"عتیقه سفید","FFFFE0":"زرد روشن","F0FFF0":"عسلی","F0FFFF":"لاجوردی","F0F8FF":"آبی براق","E6E6FA":"بنفش کمرنگ","FFF":"سفید","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"رنگ​های بیشتر...","panelTitle":"رنگها","textColorTitle":"رنگ متن"},"colordialog":{"clear":"پاک کردن","highlight":"متمایز","options":"گزینه​های رنگ","selected":"رنگ انتخاب شده","title":"انتخاب رنگ"},"templates":{"button":"الگوها","emptyListMsg":"(الگوئی تعریف نشده است)","insertOption":"محتویات کنونی جایگزین شوند","options":"گزینه‌های الگو","selectPromptMsg":"لطفاً الگوی مورد نظر را برای بازکردن در ویرایشگر انتخاب کنید","title":"الگوهای محتویات"},"contextmenu":{"options":"گزینه​های منوی زمینه"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"شناسه","advisoryTitleInputLabel":"عنوان مشاوره","cssClassInputLabel":"کلاس​های شیوه​نامه","edit":"ویرایش Div","inlineStyleInputLabel":"سبک درون​خطی(Inline Style)","langDirLTRLabel":"چپ به راست (LTR)","langDirLabel":"جهت نوشتاری زبان","langDirRTLLabel":"راست به چپ (RTL)","languageCodeInputLabel":" کد زبان","remove":"حذف Div","styleSelectLabel":"سبک","title":"ایجاد یک محل DIV","toolbar":"ایجاد یک محل DIV"},"elementspath":{"eleLabel":"مسیر عناصر","eleTitle":"%1 عنصر"},"filetools":{"loadError":"هنگام خواندن فایل، خطایی رخ داد.","networkError":"هنگام آپلود فایل خطای شبکه رخ داد.","httpError404":"هنگام آپلود فایل خطای HTTP رخ داد (404: فایل یافت نشد).","httpError403":"هنگام آپلود فایل، خطای HTTP رخ داد (403: ممنوع).","httpError":"خطای HTTP در آپلود فایل رخ داده است (وضعیت خطا: %1).","noUrlError":"آدرس آپلود تعریف نشده است.","responseError":"پاسخ نادرست سرور."},"find":{"find":"جستجو","findOptions":"گزینه​های جستجو","findWhat":"چه چیز را مییابید:","matchCase":"همسانی در بزرگی و کوچکی نویسه​ها","matchCyclic":"همسانی با چرخه","matchWord":"همسانی با واژهٴ کامل","notFoundMsg":"متن موردنظر یافت نشد.","replace":"جایگزینی","replaceAll":"جایگزینی همهٴ یافته​ها","replaceSuccessMsg":"%1 رخداد جایگزین شد.","replaceWith":"جایگزینی با:","title":"جستجو و جایگزینی"},"fakeobjects":{"anchor":"لنگر","flash":"انیمشن فلش","hiddenfield":"فیلد پنهان","iframe":"IFrame","unknown":"شیء ناشناخته"},"flash":{"access":"دسترسی به اسکریپت","accessAlways":"همیشه","accessNever":"هرگز","accessSameDomain":"همان دامنه","alignAbsBottom":"پائین مطلق","alignAbsMiddle":"وسط مطلق","alignBaseline":"خط پایه","alignTextTop":"متن بالا","bgcolor":"رنگ پس​زمینه","chkFull":"اجازه تمام صفحه","chkLoop":"اجرای پیاپی","chkMenu":"در دسترس بودن منوی فلش","chkPlay":"آغاز خودکار","flashvars":"مقادیر برای فلش","hSpace":"فاصلهٴ افقی","properties":"ویژگی​های فلش","propertiesTab":"ویژگی​ها","quality":"کیفیت","qualityAutoHigh":"بالا - خودکار","qualityAutoLow":"پایین - خودکار","qualityBest":"بهترین","qualityHigh":"بالا","qualityLow":"پایین","qualityMedium":"متوسط","scale":"مقیاس","scaleAll":"نمایش همه","scaleFit":"جایگیری کامل","scaleNoBorder":"بدون کران","title":"ویژگی​های فلش","vSpace":"فاصلهٴ عمودی","validateHSpace":"مقدار فاصله گذاری افقی باید یک عدد باشد.","validateSrc":"لطفا URL پیوند را بنویسید","validateVSpace":"مقدار فاصله گذاری عمودی باید یک عدد باشد.","windowMode":"حالت پنجره","windowModeOpaque":"مات","windowModeTransparent":"شفاف","windowModeWindow":"پنجره"},"font":{"fontSize":{"label":"اندازه","voiceLabel":"اندازه قلم","panelTitle":"اندازه قلم"},"label":"قلم","panelTitle":"نام قلم","voiceLabel":"قلم"},"forms":{"button":{"title":"ویژگی​‌های دکمه","text":"متن (مقدار)","type":"نوع","typeBtn":"دکمه","typeSbm":"ثبت","typeRst":"بازنشانی (Reset)"},"checkboxAndRadio":{"checkboxTitle":"ویژگی​های خانهٴ گزینه​ای","radioTitle":"ویژگی​های دکمهٴ رادیویی","value":"مقدار","selected":"برگزیده","required":"ضروری"},"form":{"title":"ویژگی‌​های فرم","menu":"ویژگی​‌های فرم","action":"رویداد","method":"متد","encoding":"رمزنگاری"},"hidden":{"title":"ویژگی‌​های فیلد پنهان","name":"نام","value":"مقدار"},"select":{"title":"ویژگی‌​های فیلد چندگزینه‌​ای","selectInfo":"اطلاعات","opAvail":"گزینه​های دردسترس","value":"مقدار","size":"اندازه","lines":"خطوط","chkMulti":"گزینش چندگانه فراهم باشد","required":"ضروری","opText":"متن","opValue":"مقدار","btnAdd":"افزودن","btnModify":"ویرایش","btnUp":"بالا","btnDown":"پائین","btnSetValue":"تنظیم به عنوان مقدار برگزیده","btnDelete":"پاک‌کردن"},"textarea":{"title":"ویژگی​های ناحیهٴ متنی","cols":"ستون​ها","rows":"سطرها"},"textfield":{"title":"ویژگی‌​های فیلد متنی","name":"نام","value":"مقدار","charWidth":"پهنای نویسه","maxChars":"حداکثر کارکتر","required":"ضروری","type":"نوع","typeText":"متن","typePass":"گذرواژه","typeEmail":"ایمیل","typeSearch":"جستجو","typeTel":"شماره تلفن","typeUrl":"URL"}},"format":{"label":"قالب","panelTitle":"قالب بند","tag_address":"نشانی","tag_div":"بند","tag_h1":"سرنویس ۱","tag_h2":"سرنویس ۲","tag_h3":"سرنویس ۳","tag_h4":"سرنویس ۴","tag_h5":"سرنویس ۵","tag_h6":"سرنویس ۶","tag_p":"معمولی","tag_pre":"قالب‌دار"},"horizontalrule":{"toolbar":"گنجاندن خط افقی"},"iframe":{"border":"نمایش خطوط frame","noUrl":"لطفا مسیر URL iframe را درج کنید","scrolling":"نمایش خطکشها","title":"ویژگیهای IFrame","toolbar":"IFrame"},"image":{"alt":"متن جایگزین","border":"لبه","btnUpload":"به سرور بفرست","button2Img":"آیا مایلید از یک تصویر ساده روی دکمه تصویری انتخاب شده استفاده کنید؟","hSpace":"فاصلهٴ افقی","img2Button":"آیا مایلید از یک دکمه تصویری روی تصویر انتخاب شده استفاده کنید؟","infoTab":"اطلاعات تصویر","linkTab":"پیوند","lockRatio":"قفل کردن نسبت","menu":"ویژگی​های تصویر","resetSize":"بازنشانی اندازه","title":"ویژگی​های تصویر","titleButton":"ویژگی​های دکمهٴ تصویری","upload":"انتقال به سرور","urlMissing":"آدرس URL اصلی تصویر یافت نشد.","vSpace":"فاصلهٴ عمودی","validateBorder":"مقدار خطوط باید یک عدد باشد.","validateHSpace":"مقدار فاصله گذاری افقی باید یک عدد باشد.","validateVSpace":"مقدار فاصله گذاری عمودی باید یک عدد باشد."},"indent":{"indent":"افزایش تورفتگی","outdent":"کاهش تورفتگی"},"smiley":{"options":"گزینه​های خندانک","title":"گنجاندن خندانک","toolbar":"خندانک"},"language":{"button":"تعیین زبان","remove":"حذف زبان"},"link":{"acccessKey":"کلید دستیابی","advanced":"پیشرفته","advisoryContentType":"نوع محتوای کمکی","advisoryTitle":"عنوان کمکی","anchor":{"toolbar":"گنجاندن/ویرایش لنگر","menu":"ویژگی​های لنگر","title":"ویژگی​های لنگر","name":"نام لنگر","errorName":"لطفا نام لنگر را بنویسید","remove":"حذف لنگر"},"anchorId":"با شناسهٴ المان","anchorName":"با نام لنگر","charset":"نویسه​گان منبع پیوند شده","cssClasses":"کلاس​های شیوه​نامه(Stylesheet)","download":"Force Download","displayText":"نمایش متن","emailAddress":"نشانی پست الکترونیکی","emailBody":"متن پیام","emailSubject":"موضوع پیام","id":"شناسه","info":"اطلاعات پیوند","langCode":"جهت​نمای زبان","langDir":"جهت​نمای زبان","langDirLTR":"چپ به راست (LTR)","langDirRTL":"راست به چپ (RTL)","menu":"ویرایش پیوند","name":"نام","noAnchors":"(در این سند لنگری دردسترس نیست)","noEmail":"لطفا نشانی پست الکترونیکی را بنویسید","noUrl":"لطفا URL پیوند را بنویسید","noTel":"Please type the phone number","other":"<سایر>","phoneNumber":"Phone number","popupDependent":"وابسته (Netscape)","popupFeatures":"ویژگی​های پنجرهٴ پاپاپ","popupFullScreen":"تمام صفحه (IE)","popupLeft":"موقعیت چپ","popupLocationBar":"نوار موقعیت","popupMenuBar":"نوار منو","popupResizable":"قابل تغییر اندازه","popupScrollBars":"میله​های پیمایش","popupStatusBar":"نوار وضعیت","popupToolbar":"نوار ابزار","popupTop":"موقعیت بالا","rel":"وابستگی","selectAnchor":"یک لنگر برگزینید","styles":"شیوه (style)","tabIndex":"نمایهٴ دسترسی با برگه","target":"مقصد","targetFrame":"<فریم>","targetFrameName":"نام فریم مقصد","targetPopup":"<پنجرهٴ پاپاپ>","targetPopupName":"نام پنجرهٴ پاپاپ","title":"پیوند","toAnchor":"لنگر در همین صفحه","toEmail":"پست الکترونیکی","toUrl":"URL","toPhone":"Phone","toolbar":"گنجاندن/ویرایش پیوند","type":"نوع پیوند","unlink":"برداشتن پیوند","upload":"انتقال به سرور"},"list":{"bulletedlist":"فهرست نقطه​ای","numberedlist":"فهرست شماره​دار"},"liststyle":{"bulletedTitle":"خصوصیات فهرست نقطه‌ای","circle":"دایره","decimal":"ده‌دهی (۱، ۲، ۳، ...)","disc":"صفحه گرد","lowerAlpha":"پانویس الفبایی (a, b, c, d, e, etc.)","lowerRoman":"پانویس رومی (i, ii, iii, iv, v, etc.)","none":"هیچ","notset":"<تنظیم نشده>","numberedTitle":"ویژگیهای فهرست شمارهدار","square":"چهارگوش","start":"شروع","type":"نوع","upperAlpha":"بالانویس الفبایی (A, B, C, D, E, etc.)","upperRoman":"بالانویس رومی (I, II, III, IV, V, etc.)","validateStartNumber":"فهرست شماره شروع باید یک عدد صحیح باشد."},"magicline":{"title":"قرار دادن بند در اینجا"},"maximize":{"maximize":"بیشنه کردن","minimize":"کمینه کردن"},"newpage":{"toolbar":"برگهٴ تازه"},"pagebreak":{"alt":"شکستن صفحه","toolbar":"گنجاندن شکستگی پایان برگه"},"pastetext":{"button":"چسباندن به عنوان متن ساده","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"چسباندن به عنوان متن ساده"},"pastefromword":{"confirmCleanup":"متنی که میخواهید بچسبانید به نظر میرسد که از Word کپی شده است. آیا میخواهید قبل از چسباندن آن را پاکسازی کنید؟","error":"به دلیل بروز خطای داخلی امکان پاکسازی اطلاعات بازنشانی شده وجود ندارد.","title":"چسباندن از Word","toolbar":"چسباندن از Word"},"preview":{"preview":"پیشنمایش"},"print":{"toolbar":"چاپ"},"removeformat":{"toolbar":"برداشتن فرمت"},"save":{"toolbar":"ذخیره"},"selectall":{"toolbar":"گزینش همه"},"showblocks":{"toolbar":"نمایش بلوک‌ها"},"sourcearea":{"toolbar":"منبع"},"specialchar":{"options":"گزینه‌های نویسه‌های ویژه","title":"گزینش نویسه‌ی ویژه","toolbar":"گنجاندن نویسه‌ی ویژه"},"scayt":{"btn_about":"درباره SCAYT","btn_dictionaries":"دیکشنریها","btn_disable":"غیرفعالسازی SCAYT","btn_enable":"فعالسازی SCAYT","btn_langs":"زبانها","btn_options":"گزینهها","text_title":"بررسی املای تایپ شما"},"stylescombo":{"label":"سبک","panelTitle":"سبکهای قالببندی","panelTitle1":"سبکهای بلوک","panelTitle2":"سبکهای درونخطی","panelTitle3":"سبکهای شیء"},"table":{"border":"اندازهٴ لبه","caption":"عنوان","cell":{"menu":"سلول","insertBefore":"افزودن سلول قبل از","insertAfter":"افزودن سلول بعد از","deleteCell":"حذف سلولها","merge":"ادغام سلولها","mergeRight":"ادغام به راست","mergeDown":"ادغام به پایین","splitHorizontal":"جدا کردن افقی سلول","splitVertical":"جدا کردن عمودی سلول","title":"ویژگیهای سلول","cellType":"نوع سلول","rowSpan":"محدوده ردیفها","colSpan":"محدوده ستونها","wordWrap":"شکستن کلمه","hAlign":"چینش افقی","vAlign":"چینش عمودی","alignBaseline":"خط مبنا","bgColor":"رنگ زمینه","borderColor":"رنگ خطوط","data":"اطلاعات","header":"سرنویس","yes":"بله","no":"خیر","invalidWidth":"عرض سلول باید یک عدد باشد.","invalidHeight":"ارتفاع سلول باید عدد باشد.","invalidRowSpan":"مقدار محدوده ردیفها باید یک عدد باشد.","invalidColSpan":"مقدار محدوده ستونها باید یک عدد باشد.","chooseColor":"انتخاب"},"cellPad":"فاصلهٴ پرشده در سلول","cellSpace":"فاصلهٴ میان سلولها","column":{"menu":"ستون","insertBefore":"افزودن ستون قبل از","insertAfter":"افزودن ستون بعد از","deleteColumn":"حذف ستونها"},"columns":"ستونها","deleteTable":"پاک کردن جدول","headers":"سرنویسها","headersBoth":"هردو","headersColumn":"اولین ستون","headersNone":"هیچ","headersRow":"اولین ردیف","invalidBorder":"مقدار اندازه خطوط باید یک عدد باشد.","invalidCellPadding":"بالشتک سلول باید یک عدد باشد.","invalidCellSpacing":"مقدار فاصلهگذاری سلول باید یک عدد باشد.","invalidCols":"تعداد ستونها باید یک عدد بزرگتر از 0 باشد.","invalidHeight":"مقدار ارتفاع جدول باید یک عدد باشد.","invalidRows":"تعداد ردیفها باید یک عدد بزرگتر از 0 باشد.","invalidWidth":"مقدار پهنای جدول باید یک عدد باشد.","menu":"ویژگیهای جدول","row":{"menu":"سطر","insertBefore":"افزودن سطر قبل از","insertAfter":"افزودن سطر بعد از","deleteRow":"حذف سطرها"},"rows":"سطرها","summary":"خلاصه","title":"ویژگیهای جدول","toolbar":"جدول","widthPc":"درصد","widthPx":"پیکسل","widthUnit":"واحد پهنا"},"undo":{"redo":"بازچیدن","undo":"واچیدن"},"widget":{"move":"کلیک و کشیدن برای جابجایی","label":"ابزارک %1"},"uploadwidget":{"abort":"بارگذاری توسط کاربر لغو شد.","doneOne":"فایل با موفقیت بارگذاری شد.","doneMany":"%1 از فایل​ها با موفقیت بارگذاری شد.","uploadOne":"بارگذاری فایل ({percentage}%)...","uploadMany":"بارگذاری فایل​ها, {current} از {max} انجام شده ({percentage}%)..."},"wsc":{"btnIgnore":"چشمپوشی","btnIgnoreAll":"چشمپوشی همه","btnReplace":"جایگزینی","btnReplaceAll":"جایگزینی همه","btnUndo":"واچینش","changeTo":"تغییر به","errorLoading":"خطا در بارگیری برنامه خدمات میزبان: %s.","ieSpellDownload":"بررسی کنندهٴ املا نصب نشده است. آیا میخواهید آن را هماکنون دریافت کنید؟","manyChanges":"بررسی املا انجام شد. %1 واژه تغییر یافت","noChanges":"بررسی املا انجام شد. هیچ واژهای تغییر نیافت","noMispell":"بررسی املا انجام شد. هیچ غلط املائی یافت نشد","noSuggestions":"- پیشنهادی نیست -","notAvailable":"با عرض پوزش خدمات الان در دسترس نیستند.","notInDic":"در واژه~نامه یافت نشد","oneChange":"بررسی املا انجام شد. یک واژه تغییر یافت","progress":"بررسی املا در حال انجام...","title":"بررسی املا","toolbar":"بررسی املا"}};
bt-source/panel/BTPanel/static/ckeditor/lang/fi.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['fi']={"editor":"Rikastekstieditori","editorPanel":"Rikastekstieditoripaneeli","common":{"editorHelp":"Paina ALT 0 nähdäksesi ohjeen","browseServer":"Selaa palvelinta","url":"Osoite","protocol":"Protokolla","upload":"Lisää tiedosto","uploadSubmit":"Lähetä palvelimelle","image":"Kuva","flash":"Flash-animaatio","form":"Lomake","checkbox":"Valintaruutu","radio":"Radiopainike","textField":"Tekstikenttä","textarea":"Tekstilaatikko","hiddenField":"Piilokenttä","button":"Painike","select":"Valintakenttä","imageButton":"Kuvapainike","notSet":"<ei asetettu>","id":"Tunniste","name":"Nimi","langDir":"Kielen suunta","langDirLtr":"Vasemmalta oikealle (LTR)","langDirRtl":"Oikealta vasemmalle (RTL)","langCode":"Kielikoodi","longDescr":"Pitkän kuvauksen URL","cssClass":"Tyyliluokat","advisoryTitle":"Avustava otsikko","cssStyle":"Tyyli","ok":"OK","cancel":"Peruuta","close":"Sulje","preview":"Esikatselu","resize":"Raahaa muuttaaksesi kokoa","generalTab":"Yleinen","advancedTab":"Lisäominaisuudet","validateNumberFailed":"Arvon pitää olla numero.","confirmNewPage":"Kaikki tallentamattomat muutokset tähän sisältöön menetetään. Oletko varma, että haluat ladata uuden sivun?","confirmCancel":"Jotkut asetuksista on muuttuneet. Oletko varma, että haluat sulkea valintaikkunan?","options":"Asetukset","target":"Kohde","targetNew":"Uusi ikkuna (_blank)","targetTop":"Päällimmäinen ikkuna (_top)","targetSelf":"Sama ikkuna (_self)","targetParent":"Ylemmän tason ikkuna (_parent)","langDirLTR":"Vasemmalta oikealle (LTR)","langDirRTL":"Oikealta vasemmalle (RTL)","styles":"Tyyli","cssClasses":"Tyylitiedoston luokat","width":"Leveys","height":"Korkeus","align":"Kohdistus","left":"Vasemmalle","right":"Oikealle","center":"Keskelle","justify":"Tasaa molemmat reunat","alignLeft":"Tasaa vasemmat reunat","alignRight":"Tasaa oikeat reunat","alignCenter":"Align Center","alignTop":"Ylös","alignMiddle":"Keskelle","alignBottom":"Alas","alignNone":"Ei asetettu","invalidValue":"Virheellinen arvo.","invalidHeight":"Korkeuden täytyy olla numero.","invalidWidth":"Leveyden täytyy olla numero.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Kentän \"%1\" arvon täytyy olla positiivinen luku CSS mittayksikön (px, %, in, cm, mm, em, ex, pt tai pc) kanssa tai ilman.","invalidHtmlLength":"Kentän \"%1\" arvon täytyy olla positiivinen luku HTML mittayksikön (px tai %) kanssa tai ilman.","invalidInlineStyle":"Tyylille annetun arvon täytyy koostua yhdestä tai useammasta \"nimi : arvo\" parista, jotka ovat eroteltuna toisistaan puolipisteillä.","cssLengthTooltip":"Anna numeroarvo pikseleinä tai numeroarvo CSS mittayksikön kanssa (px, %, in, cm, mm, em, ex, pt, tai pc).","unavailable":"%1<span class=\"cke_accessibility\">, ei saatavissa</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. Kaikki oikeuden pidätetään.","dlgTitle":"Tietoa CKEditorista","moreInfo":"Lisenssitiedot löytyvät kotisivuiltamme:"},"basicstyles":{"bold":"Lihavoitu","italic":"Kursivoitu","strike":"Yliviivattu","subscript":"Alaindeksi","superscript":"Yläindeksi","underline":"Alleviivattu"},"bidi":{"ltr":"Tekstin suunta vasemmalta oikealle","rtl":"Tekstin suunta oikealta vasemmalle"},"blockquote":{"toolbar":"Lainaus"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Kutista työkalupalkki","toolbarExpand":"Laajenna työkalupalkki","toolbarGroups":{"document":"Dokumentti","clipboard":"Leikepöytä/Kumoa","editing":"Muokkaus","forms":"Lomakkeet","basicstyles":"Perustyylit","paragraph":"Kappale","links":"Linkit","insert":"Lisää","styles":"Tyylit","colors":"Värit","tools":"Työkalut"},"toolbars":"Editorin työkalupalkit"},"clipboard":{"copy":"Kopioi","copyError":"Selaimesi turva-asetukset eivät salli editorin toteuttaa kopioimista. Käytä näppäimistöä kopioimiseen (Ctrl+C).","cut":"Leikkaa","cutError":"Selaimesi turva-asetukset eivät salli editorin toteuttaa leikkaamista. Käytä näppäimistöä leikkaamiseen (Ctrl+X).","paste":"Liitä","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Leikealue","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automaattinen","bgColorTitle":"Taustaväri","colors":{"000":"Musta","800000":"Kastanjanruskea","8B4513":"Satulanruskea","2F4F4F":"Tumma liuskekivenharmaa","008080":"Sinivihreä","000080":"Laivastonsininen","4B0082":"Indigonsininen","696969":"Tummanharmaa","B22222":"Tiili","A52A2A":"Ruskea","DAA520":"Kultapiisku","006400":"Tummanvihreä","40E0D0":"Turkoosi","0000CD":"Keskisininen","800080":"Purppura","808080":"Harmaa","F00":"Punainen","FF8C00":"Tumma oranssi","FFD700":"Kulta","008000":"Vihreä","0FF":"Syaani","00F":"Sininen","EE82EE":"Violetti","A9A9A9":"Tummanharmaa","FFA07A":"Vaaleanlohenpunainen","FFA500":"Oranssi","FFFF00":"Keltainen","00FF00":"Limetin vihreä","AFEEEE":"Haalea turkoosi","ADD8E6":"Vaaleansininen","DDA0DD":"Luumu","D3D3D3":"Vaaleanharmaa","FFF0F5":"Laventelinpunainen","FAEBD7":"Antiikinvalkoinen","FFFFE0":"Vaaleankeltainen","F0FFF0":"Hunajameloni","F0FFFF":"Asurinsininen","F0F8FF":"Alice Blue -sininen","E6E6FA":"Lavanteli","FFF":"Valkoinen","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Lisää värejä...","panelTitle":"Värit","textColorTitle":"Tekstiväri"},"colordialog":{"clear":"Poista","highlight":"Korostus","options":"Värin ominaisuudet","selected":"Valittu","title":"Valitse väri"},"templates":{"button":"Pohjat","emptyListMsg":"(Ei määriteltyjä pohjia)","insertOption":"Korvaa koko sisältö","options":"Sisältöpohjan ominaisuudet","selectPromptMsg":"Valitse editoriin avattava pohja","title":"Sisältöpohjat"},"contextmenu":{"options":"Pikavalikon ominaisuudet"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Ohjeistava otsikko","cssClassInputLabel":"Tyylitiedoston luokat","edit":"Muokkaa Diviä","inlineStyleInputLabel":"Sisätyyli","langDirLTRLabel":"Vasemmalta oikealle (LTR)","langDirLabel":"Kielen suunta","langDirRTLLabel":"Oikealta vasemmalle (RTL)","languageCodeInputLabel":" Kielen koodi","remove":"Poista Div","styleSelectLabel":"Tyyli","title":"Luo div-kehikko","toolbar":"Luo div-kehikko"},"elementspath":{"eleLabel":"Elementin polku","eleTitle":"%1 elementti"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Etsi","findOptions":"Hakuasetukset","findWhat":"Etsi mitä:","matchCase":"Sama kirjainkoko","matchCyclic":"Kierrä ympäri","matchWord":"Koko sana","notFoundMsg":"Etsittyä tekstiä ei löytynyt.","replace":"Korvaa","replaceAll":"Korvaa kaikki","replaceSuccessMsg":"%1 esiintymä(ä) korvattu.","replaceWith":"Korvaa tällä:","title":"Etsi ja korvaa"},"fakeobjects":{"anchor":"Ankkuri","flash":"Flash animaatio","hiddenfield":"Piilokenttä","iframe":"IFrame-kehys","unknown":"Tuntematon objekti"},"flash":{"access":"Skriptien pääsy","accessAlways":"Aina","accessNever":"Ei koskaan","accessSameDomain":"Sama verkkotunnus","alignAbsBottom":"Aivan alas","alignAbsMiddle":"Aivan keskelle","alignBaseline":"Alas (teksti)","alignTextTop":"Ylös (teksti)","bgcolor":"Taustaväri","chkFull":"Salli kokoruututila","chkLoop":"Toisto","chkMenu":"Näytä Flash-valikko","chkPlay":"Automaattinen käynnistys","flashvars":"Muuttujat Flash:lle","hSpace":"Vaakatila","properties":"Flash-ominaisuudet","propertiesTab":"Ominaisuudet","quality":"Laatu","qualityAutoHigh":"Automaattinen korkea","qualityAutoLow":"Automaattinen matala","qualityBest":"Paras","qualityHigh":"Korkea","qualityLow":"Matala","qualityMedium":"Keskitaso","scale":"Levitä","scaleAll":"Näytä kaikki","scaleFit":"Tarkka koko","scaleNoBorder":"Ei rajaa","title":"Flash ominaisuudet","vSpace":"Pystytila","validateHSpace":"Vaakatilan täytyy olla numero.","validateSrc":"Linkille on kirjoitettava URL","validateVSpace":"Pystytilan täytyy olla numero.","windowMode":"Ikkuna tila","windowModeOpaque":"Läpinäkyvyys","windowModeTransparent":"Läpinäkyvä","windowModeWindow":"Ikkuna"},"font":{"fontSize":{"label":"Koko","voiceLabel":"Kirjaisimen koko","panelTitle":"Koko"},"label":"Kirjaisinlaji","panelTitle":"Kirjaisinlaji","voiceLabel":"Kirjaisinlaji"},"forms":{"button":{"title":"Painikkeen ominaisuudet","text":"Teksti (arvo)","type":"Tyyppi","typeBtn":"Painike","typeSbm":"Lähetä","typeRst":"Tyhjennä"},"checkboxAndRadio":{"checkboxTitle":"Valintaruudun ominaisuudet","radioTitle":"Radiopainikkeen ominaisuudet","value":"Arvo","selected":"Valittu","required":"Required"},"form":{"title":"Lomakkeen ominaisuudet","menu":"Lomakkeen ominaisuudet","action":"Toiminto","method":"Tapa","encoding":"Enkoodaus"},"hidden":{"title":"Piilokentän ominaisuudet","name":"Nimi","value":"Arvo"},"select":{"title":"Valintakentän ominaisuudet","selectInfo":"Info","opAvail":"Ominaisuudet","value":"Arvo","size":"Koko","lines":"Rivit","chkMulti":"Salli usea valinta","required":"Required","opText":"Teksti","opValue":"Arvo","btnAdd":"Lisää","btnModify":"Muuta","btnUp":"Ylös","btnDown":"Alas","btnSetValue":"Aseta valituksi","btnDelete":"Poista"},"textarea":{"title":"Tekstilaatikon ominaisuudet","cols":"Sarakkeita","rows":"Rivejä"},"textfield":{"title":"Tekstikentän ominaisuudet","name":"Nimi","value":"Arvo","charWidth":"Leveys","maxChars":"Maksimi merkkimäärä","required":"Required","type":"Tyyppi","typeText":"Teksti","typePass":"Salasana","typeEmail":"Sähköposti","typeSearch":"Haku","typeTel":"Puhelinnumero","typeUrl":"Osoite"}},"format":{"label":"Muotoilu","panelTitle":"Muotoilu","tag_address":"Osoite","tag_div":"Normaali (DIV)","tag_h1":"Otsikko 1","tag_h2":"Otsikko 2","tag_h3":"Otsikko 3","tag_h4":"Otsikko 4","tag_h5":"Otsikko 5","tag_h6":"Otsikko 6","tag_p":"Normaali","tag_pre":"Muotoiltu"},"horizontalrule":{"toolbar":"Lisää murtoviiva"},"iframe":{"border":"Näytä kehyksen reunat","noUrl":"Anna IFrame-kehykselle lähdeosoite (src)","scrolling":"Näytä vierityspalkit","title":"IFrame-kehyksen ominaisuudet","toolbar":"IFrame-kehys"},"image":{"alt":"Vaihtoehtoinen teksti","border":"Kehys","btnUpload":"Lähetä palvelimelle","button2Img":"Haluatko muuntaa valitun kuvanäppäimen kuvaksi?","hSpace":"Vaakatila","img2Button":"Haluatko muuntaa valitun kuvan kuvanäppäimeksi?","infoTab":"Kuvan tiedot","linkTab":"Linkki","lockRatio":"Lukitse suhteet","menu":"Kuvan ominaisuudet","resetSize":"Alkuperäinen koko","title":"Kuvan ominaisuudet","titleButton":"Kuvapainikkeen ominaisuudet","upload":"Lisää kuva","urlMissing":"Kuvan lähdeosoite puuttuu.","vSpace":"Pystytila","validateBorder":"Kehyksen täytyy olla kokonaisluku.","validateHSpace":"HSpace-määrityksen täytyy olla kokonaisluku.","validateVSpace":"VSpace-määrityksen täytyy olla kokonaisluku."},"indent":{"indent":"Suurenna sisennystä","outdent":"Pienennä sisennystä"},"smiley":{"options":"Hymiön ominaisuudet","title":"Lisää hymiö","toolbar":"Hymiö"},"language":{"button":"Aseta kieli","remove":"Poista kieli"},"link":{"acccessKey":"Pikanäppäin","advanced":"Lisäominaisuudet","advisoryContentType":"Avustava sisällön tyyppi","advisoryTitle":"Avustava otsikko","anchor":{"toolbar":"Lisää ankkuri/muokkaa ankkuria","menu":"Ankkurin ominaisuudet","title":"Ankkurin ominaisuudet","name":"Nimi","errorName":"Ankkurille on kirjoitettava nimi","remove":"Poista ankkuri"},"anchorId":"Ankkurin ID:n mukaan","anchorName":"Ankkurin nimen mukaan","charset":"Linkitetty kirjaimisto","cssClasses":"Tyyliluokat","download":"Force Download","displayText":"Display Text","emailAddress":"Sähköpostiosoite","emailBody":"Viesti","emailSubject":"Aihe","id":"Tunniste","info":"Linkin tiedot","langCode":"Kielen suunta","langDir":"Kielen suunta","langDirLTR":"Vasemmalta oikealle (LTR)","langDirRTL":"Oikealta vasemmalle (RTL)","menu":"Muokkaa linkkiä","name":"Nimi","noAnchors":"(Ei ankkureita tässä dokumentissa)","noEmail":"Kirjoita sähköpostiosoite","noUrl":"Linkille on kirjoitettava URL","noTel":"Please type the phone number","other":"<muu>","phoneNumber":"Phone number","popupDependent":"Riippuva (Netscape)","popupFeatures":"Popup ikkunan ominaisuudet","popupFullScreen":"Täysi ikkuna (IE)","popupLeft":"Vasemmalta (px)","popupLocationBar":"Osoiterivi","popupMenuBar":"Valikkorivi","popupResizable":"Venytettävä","popupScrollBars":"Vierityspalkit","popupStatusBar":"Tilarivi","popupToolbar":"Vakiopainikkeet","popupTop":"Ylhäältä (px)","rel":"Suhde","selectAnchor":"Valitse ankkuri","styles":"Tyyli","tabIndex":"Tabulaattori indeksi","target":"Kohde","targetFrame":"<kehys>","targetFrameName":"Kohdekehyksen nimi","targetPopup":"<popup ikkuna>","targetPopupName":"Popup ikkunan nimi","title":"Linkki","toAnchor":"Ankkuri tässä sivussa","toEmail":"Sähköposti","toUrl":"Osoite","toPhone":"Phone","toolbar":"Lisää linkki/muokkaa linkkiä","type":"Linkkityyppi","unlink":"Poista linkki","upload":"Lisää tiedosto"},"list":{"bulletedlist":"Luettelomerkit","numberedlist":"Numerointi"},"liststyle":{"bulletedTitle":"Numeroimattoman listan ominaisuudet","circle":"Ympyrä","decimal":"Desimaalit (1, 2, 3, jne.)","disc":"Levy","lowerAlpha":"Pienet aakkoset (a, b, c, d, e, jne.)","lowerRoman":"Pienet roomalaiset (i, ii, iii, iv, v, jne.)","none":"Ei mikään","notset":"<ei asetettu>","numberedTitle":"Numeroidun listan ominaisuudet","square":"Neliö","start":"Alku","type":"Tyyppi","upperAlpha":"Isot aakkoset (A, B, C, D, E, jne.)","upperRoman":"Isot roomalaiset (I, II, III, IV, V, jne.)","validateStartNumber":"Listan ensimmäisen numeron tulee olla kokonaisluku."},"magicline":{"title":"Lisää kappale tähän."},"maximize":{"maximize":"Suurenna","minimize":"Pienennä"},"newpage":{"toolbar":"Tyhjennä"},"pagebreak":{"alt":"Sivunvaihto","toolbar":"Lisää sivunvaihto"},"pastetext":{"button":"Liitä tekstinä","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Liitä tekstinä"},"pastefromword":{"confirmCleanup":"Liittämäsi teksti näyttäisi olevan Word-dokumentista. Haluatko siivota sen ennen liittämistä? (Suositus: Kyllä)","error":"Liitetyn tiedon siivoaminen ei onnistunut sisäisen virheen takia","title":"Liitä Word-dokumentista","toolbar":"Liitä Word-dokumentista"},"preview":{"preview":"Esikatsele"},"print":{"toolbar":"Tulosta"},"removeformat":{"toolbar":"Poista muotoilu"},"save":{"toolbar":"Tallenna"},"selectall":{"toolbar":"Valitse kaikki"},"showblocks":{"toolbar":"Näytä elementit"},"sourcearea":{"toolbar":"Koodi"},"specialchar":{"options":"Erikoismerkin ominaisuudet","title":"Valitse erikoismerkki","toolbar":"Lisää erikoismerkki"},"scayt":{"btn_about":"Tietoja oikoluvusta kirjoitetaessa","btn_dictionaries":"Sanakirjat","btn_disable":"Poista käytöstä oikoluku kirjoitetaessa","btn_enable":"Ota käyttöön oikoluku kirjoitettaessa","btn_langs":"Kielet","btn_options":"Asetukset","text_title":"Oikolue kirjoitettaessa"},"stylescombo":{"label":"Tyyli","panelTitle":"Muotoilujen tyylit","panelTitle1":"Lohkojen tyylit","panelTitle2":"Rivinsisäiset tyylit","panelTitle3":"Objektien tyylit"},"table":{"border":"Rajan paksuus","caption":"Otsikko","cell":{"menu":"Solu","insertBefore":"Lisää solu eteen","insertAfter":"Lisää solu perään","deleteCell":"Poista solut","merge":"Yhdistä solut","mergeRight":"Yhdistä oikealla olevan kanssa","mergeDown":"Yhdistä alla olevan kanssa","splitHorizontal":"Jaa solu vaakasuunnassa","splitVertical":"Jaa solu pystysuunnassa","title":"Solun ominaisuudet","cellType":"Solun tyyppi","rowSpan":"Rivin jatkuvuus","colSpan":"Solun jatkuvuus","wordWrap":"Rivitys","hAlign":"Horisontaali kohdistus","vAlign":"Vertikaali kohdistus","alignBaseline":"Alas (teksti)","bgColor":"Taustan väri","borderColor":"Reunan väri","data":"Data","header":"Ylätunniste","yes":"Kyllä","no":"Ei","invalidWidth":"Solun leveyden täytyy olla numero.","invalidHeight":"Solun korkeuden täytyy olla numero.","invalidRowSpan":"Rivin jatkuvuuden täytyy olla kokonaisluku.","invalidColSpan":"Solun jatkuvuuden täytyy olla kokonaisluku.","chooseColor":"Valitse"},"cellPad":"Solujen sisennys","cellSpace":"Solujen väli","column":{"menu":"Sarake","insertBefore":"Lisää sarake vasemmalle","insertAfter":"Lisää sarake oikealle","deleteColumn":"Poista sarakkeet"},"columns":"Sarakkeet","deleteTable":"Poista taulu","headers":"Ylätunnisteet","headersBoth":"Molemmat","headersColumn":"Ensimmäinen sarake","headersNone":"Ei","headersRow":"Ensimmäinen rivi","invalidBorder":"Reunan koon täytyy olla numero.","invalidCellPadding":"Solujen sisennyksen täytyy olla numero.","invalidCellSpacing":"Solujen välin täytyy olla numero.","invalidCols":"Sarakkeiden määrän täytyy olla suurempi kuin 0.","invalidHeight":"Taulun korkeuden täytyy olla numero.","invalidRows":"Rivien määrän täytyy olla suurempi kuin 0.","invalidWidth":"Taulun leveyden täytyy olla numero.","menu":"Taulun ominaisuudet","row":{"menu":"Rivi","insertBefore":"Lisää rivi yläpuolelle","insertAfter":"Lisää rivi alapuolelle","deleteRow":"Poista rivit"},"rows":"Rivit","summary":"Yhteenveto","title":"Taulun ominaisuudet","toolbar":"Taulu","widthPc":"prosenttia","widthPx":"pikseliä","widthUnit":"leveysyksikkö"},"undo":{"redo":"Toista","undo":"Kumoa"},"widget":{"move":"Siirrä klikkaamalla ja raahaamalla","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Jätä huomioimatta","btnIgnoreAll":"Jätä kaikki huomioimatta","btnReplace":"Korvaa","btnReplaceAll":"Korvaa kaikki","btnUndo":"Kumoa","changeTo":"Vaihda","errorLoading":"Virhe ladattaessa oikolukupalvelua isännältä: %s.","ieSpellDownload":"Oikeinkirjoituksen tarkistusta ei ole asennettu. Haluatko ladata sen nyt?","manyChanges":"Tarkistus valmis: %1 sanaa muutettiin","noChanges":"Tarkistus valmis: Yhtään sanaa ei muutettu","noMispell":"Tarkistus valmis: Ei virheitä","noSuggestions":"Ei ehdotuksia","notAvailable":"Valitettavasti oikoluku ei ole käytössä tällä hetkellä.","notInDic":"Ei sanakirjassa","oneChange":"Tarkistus valmis: Yksi sana muutettiin","progress":"Tarkistus käynnissä...","title":"Oikoluku","toolbar":"Tarkista oikeinkirjoitus"}};
bt-source/panel/BTPanel/static/ckeditor/lang/fo.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['fo']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Trýst ALT og 0 fyri vegleiðing","browseServer":"Ambætarakagi","url":"URL","protocol":"Protokoll","upload":"Send til ambætaran","uploadSubmit":"Send til ambætaran","image":"Myndir","flash":"Flash","form":"Formur","checkbox":"Flugubein","radio":"Radioknøttur","textField":"Tekstteigur","textarea":"Tekstumráði","hiddenField":"Fjaldur teigur","button":"Knøttur","select":"Valskrá","imageButton":"Myndaknøttur","notSet":"<ikki sett>","id":"Id","name":"Navn","langDir":"Tekstkós","langDirLtr":"Frá vinstru til høgru (LTR)","langDirRtl":"Frá høgru til vinstru (RTL)","langCode":"Málkoda","longDescr":"Víðkað URL frágreiðing","cssClass":"Typografi klassar","advisoryTitle":"Vegleiðandi heiti","cssStyle":"Typografi","ok":"Góðkent","cancel":"Avlýs","close":"Lat aftur","preview":"Frumsýn","resize":"Drag fyri at broyta stødd","generalTab":"Generelt","advancedTab":"Fjølbroytt","validateNumberFailed":"Hetta er ikki eitt tal.","confirmNewPage":"Allar ikki goymdar broytingar í hesum innihaldið hvørva. Skal nýggj síða lesast kortini?","confirmCancel":"Nakrir valmøguleikar eru broyttir. Ert tú vísur í, at dialogurin skal latast aftur?","options":"Options","target":"Target","targetNew":"Nýtt vindeyga (_blank)","targetTop":"Vindeyga ovast (_top)","targetSelf":"Sama vindeyga (_self)","targetParent":"Upphavligt vindeyga (_parent)","langDirLTR":"Frá vinstru til høgru (LTR)","langDirRTL":"Frá høgru til vinstru (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Breidd","height":"Hædd","align":"Justering","left":"Vinstra","right":"Høgra","center":"Miðsett","justify":"Javnir tekstkantar","alignLeft":"Vinstrasett","alignRight":"Høgrasett","alignCenter":"Align Center","alignTop":"Ovast","alignMiddle":"Miðja","alignBottom":"Botnur","alignNone":"Eingin","invalidValue":"Invalid value.","invalidHeight":"Hædd má vera eitt tal.","invalidWidth":"Breidd má vera eitt tal.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"Virðið sett í \"%1\" feltið má vera eitt positivt tal, við ella uttan gyldugum CSS mátieind (px, %, in, cm, mm, em, ex, pt, ella pc).","invalidHtmlLength":"Virðið sett í \"%1\" feltiðield má vera eitt positivt tal, við ella uttan gyldugum CSS mátieind (px ella %).","invalidInlineStyle":"Virði specifiserað fyri inline style má hava eitt ella fleiri pør (tuples) skrivað sum \"name : value\", hvørt parið sundurskilt við semi-colon.","cssLengthTooltip":"Skriva eitt tal fyri eitt virði í pixels ella eitt tal við gyldigum CSS eind (px, %, in, cm, mm, em, ex, pt, ella pc).","unavailable":"%1<span class=\"cke_accessibility\">, ikki tøkt</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"Um CKEditor 4","moreInfo":"Licens upplýsingar finnast á heimasíðu okkara:"},"basicstyles":{"bold":"Feit skrift","italic":"Skráskrift","strike":"Yvirstrikað","subscript":"Lækkað skrift","superscript":"Hækkað skrift","underline":"Undirstrikað"},"bidi":{"ltr":"Tekstkós frá vinstru til høgru","rtl":"Tekstkós frá høgru til vinstru"},"blockquote":{"toolbar":"Blockquote"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Lat Toolbar aftur","toolbarExpand":"Vís Toolbar","toolbarGroups":{"document":"Dokument","clipboard":"Clipboard/Undo","editing":"Editering","forms":"Formar","basicstyles":"Grundleggjandi Styles","paragraph":"Reglubrot","links":"Leinkjur","insert":"Set inn","styles":"Styles","colors":"Litir","tools":"Tól"},"toolbars":"Editor toolbars"},"clipboard":{"copy":"Avrita","copyError":"Trygdaruppseting alnótskagans forðar tekstviðgeranum í at avrita tekstin. Vinarliga nýt knappaborðið til at avrita tekstin (Ctrl/Cmd+C).","cut":"Kvett","cutError":"Trygdaruppseting alnótskagans forðar tekstviðgeranum í at kvetta tekstin. Vinarliga nýt knappaborðið til at kvetta tekstin (Ctrl/Cmd+X).","paste":"Innrita","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Avritingarumráði","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatiskt","bgColorTitle":"Bakgrundslitur","colors":{"000":"Svart","800000":"Maroon","8B4513":"Saðilsbrúnt","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Myrkagrátt","B22222":"Fire Brick","A52A2A":"Brúnt","DAA520":"Gullstavur","006400":"Myrkagrønt","40E0D0":"Turquoise","0000CD":"Meðal blátt","800080":"Purple","808080":"Grátt","F00":"Reytt","FF8C00":"Myrkt appelsingult","FFD700":"Gull","008000":"Grønt","0FF":"Cyan","00F":"Blátt","EE82EE":"Violet","A9A9A9":"Døkt grátt","FFA07A":"Ljósur laksur","FFA500":"Appelsingult","FFFF00":"Gult","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Ljósablátt","DDA0DD":"Plum","D3D3D3":"Ljósagrátt","FFF0F5":"Lavender Blush","FAEBD7":"Klassiskt hvítt","FFFFE0":"Ljósagult","F0FFF0":"Hunangsdøggur","F0FFFF":"Azure","F0F8FF":"Alice Blátt","E6E6FA":"Lavender","FFF":"Hvítt","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Fleiri litir...","panelTitle":"Litir","textColorTitle":"Tekstlitur"},"colordialog":{"clear":"Strika","highlight":"Framheva","options":"Litmøguleikar","selected":"Valdur litur","title":"Vel lit"},"templates":{"button":"Skabelónir","emptyListMsg":"(Ongar skabelónir tøkar)","insertOption":"Yvirskriva núverandi innihald","options":"Møguleikar fyri Template","selectPromptMsg":"Vinarliga vel ta skabelón, ið skal opnast í tekstviðgeranum<br>(Hetta yvirskrivar núverandi innihald):","title":"Innihaldsskabelónir"},"contextmenu":{"options":"Context Menu Options"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Redigera Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Vinstru til høgru (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Høgru til vinstru (RTL)","languageCodeInputLabel":" Language Code","remove":"Strika Div","styleSelectLabel":"Style","title":"Ger Div Container","toolbar":"Ger Div Container"},"elementspath":{"eleLabel":"Slóð til elementir","eleTitle":"%1 element"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Leita","findOptions":"Finn møguleikar","findWhat":"Finn:","matchCase":"Munur á stórum og smáum bókstavum","matchCyclic":"Match cyclic","matchWord":"Bert heil orð","notFoundMsg":"Leititeksturin varð ikki funnin","replace":"Yvirskriva","replaceAll":"Yvirskriva alt","replaceSuccessMsg":"%1 úrslit broytt.","replaceWith":"Yvirskriva við:","title":"Finn og broyt"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Fjaldur teigur","iframe":"IFrame","unknown":"Ókent Object"},"flash":{"access":"Script atgongd","accessAlways":"Altíð","accessNever":"Ongantíð","accessSameDomain":"Sama navnaøki","alignAbsBottom":"Abs botnur","alignAbsMiddle":"Abs miðja","alignBaseline":"Basislinja","alignTextTop":"Tekst toppur","bgcolor":"Bakgrundslitur","chkFull":"Loyv fullan skerm","chkLoop":"Endurspæl","chkMenu":"Ger Flash skrá virkna","chkPlay":"Avspælingin byrjar sjálv","flashvars":"Variablar fyri Flash","hSpace":"Høgri breddi","properties":"Flash eginleikar","propertiesTab":"Eginleikar","quality":"Góðska","qualityAutoHigh":"Auto høg","qualityAutoLow":"Auto Lág","qualityBest":"Besta","qualityHigh":"Høg","qualityLow":"Lág","qualityMedium":"Meðal","scale":"Skalering","scaleAll":"Vís alt","scaleFit":"Neyv skalering","scaleNoBorder":"Eingin bordi","title":"Flash eginleikar","vSpace":"Vinstri breddi","validateHSpace":"HSpace má vera eitt tal.","validateSrc":"Vinarliga skriva tilknýti (URL)","validateVSpace":"VSpace má vera eitt tal.","windowMode":"Slag av rúti","windowModeOpaque":"Ikki transparent","windowModeTransparent":"Transparent","windowModeWindow":"Rútur"},"font":{"fontSize":{"label":"Skriftstødd","voiceLabel":"Skriftstødd","panelTitle":"Skriftstødd"},"label":"Skrift","panelTitle":"Skrift","voiceLabel":"Skrift"},"forms":{"button":{"title":"Eginleikar fyri knøtt","text":"Tekstur","type":"Slag","typeBtn":"Knøttur","typeSbm":"Send","typeRst":"Nullstilla"},"checkboxAndRadio":{"checkboxTitle":"Eginleikar fyri flugubein","radioTitle":"Eginleikar fyri radioknøtt","value":"Virði","selected":"Valt","required":"Required"},"form":{"title":"Eginleikar fyri Form","menu":"Eginleikar fyri Form","action":"Hending","method":"Háttur","encoding":"Encoding"},"hidden":{"title":"Eginleikar fyri fjaldan teig","name":"Navn","value":"Virði"},"select":{"title":"Eginleikar fyri valskrá","selectInfo":"Upplýsingar","opAvail":"Tøkir møguleikar","value":"Virði","size":"Stødd","lines":"Linjur","chkMulti":"Loyv fleiri valmøguleikum samstundis","required":"Required","opText":"Tekstur","opValue":"Virði","btnAdd":"Legg afturat","btnModify":"Broyt","btnUp":"Upp","btnDown":"Niður","btnSetValue":"Set sum valt virði","btnDelete":"Strika"},"textarea":{"title":"Eginleikar fyri tekstumráði","cols":"kolonnur","rows":"røðir"},"textfield":{"title":"Eginleikar fyri tekstteig","name":"Navn","value":"Virði","charWidth":"Breidd (sjónlig tekn)","maxChars":"Mest loyvdu tekn","required":"Required","type":"Slag","typeText":"Tekstur","typePass":"Loyniorð","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Skriftsnið","panelTitle":"Skriftsnið","tag_address":"Adressa","tag_div":"Vanligt (DIV)","tag_h1":"Yvirskrift 1","tag_h2":"Yvirskrift 2","tag_h3":"Yvirskrift 3","tag_h4":"Yvirskrift 4","tag_h5":"Yvirskrift 5","tag_h6":"Yvirskrift 6","tag_p":"Vanligt","tag_pre":"Sniðgivið"},"horizontalrule":{"toolbar":"Ger vatnrætta linju"},"iframe":{"border":"Vís frame kant","noUrl":"Vinarliga skriva URL til iframe","scrolling":"Loyv scrollbars","title":"Møguleikar fyri IFrame","toolbar":"IFrame"},"image":{"alt":"Alternativur tekstur","border":"Bordi","btnUpload":"Send til ambætaran","button2Img":"Skal valdi myndaknøttur gerast til vanliga mynd?","hSpace":"Høgri breddi","img2Button":"Skal valda mynd gerast til myndaknøtt?","infoTab":"Myndaupplýsingar","linkTab":"Tilknýti","lockRatio":"Læs lutfallið","menu":"Myndaeginleikar","resetSize":"Upprunastødd","title":"Myndaeginleikar","titleButton":"Eginleikar fyri myndaknøtt","upload":"Send","urlMissing":"URL til mynd manglar.","vSpace":"Vinstri breddi","validateBorder":"Bordi má vera eitt heiltal.","validateHSpace":"HSpace má vera eitt heiltal.","validateVSpace":"VSpace má vera eitt heiltal."},"indent":{"indent":"Økja reglubrotarinntriv","outdent":"Minka reglubrotarinntriv"},"smiley":{"options":"Møguleikar fyri Smiley","title":"Vel Smiley","toolbar":"Smiley"},"language":{"button":"Velja tungumál","remove":"Remove language"},"link":{"acccessKey":"Snarvegisknöttur","advanced":"Fjølbroytt","advisoryContentType":"Vegleiðandi innihaldsslag","advisoryTitle":"Vegleiðandi heiti","anchor":{"toolbar":"Ger/broyt marknastein","menu":"Eginleikar fyri marknastein","title":"Eginleikar fyri marknastein","name":"Heiti marknasteinsins","errorName":"Vinarliga rita marknasteinsins heiti","remove":"Strika marknastein"},"anchorId":"Eftir element Id","anchorName":"Eftir navni á marknasteini","charset":"Atknýtt teknsett","cssClasses":"Typografi klassar","download":"Force Download","displayText":"Display Text","emailAddress":"Teldupost-adressa","emailBody":"Breyðtekstur","emailSubject":"Evni","id":"Id","info":"Tilknýtis upplýsingar","langCode":"Tekstkós","langDir":"Tekstkós","langDirLTR":"Frá vinstru til høgru (LTR)","langDirRTL":"Frá høgru til vinstru (RTL)","menu":"Broyt tilknýti","name":"Navn","noAnchors":"(Eingir marknasteinar eru í hesum dokumentið)","noEmail":"Vinarliga skriva teldupost-adressu","noUrl":"Vinarliga skriva tilknýti (URL)","noTel":"Please type the phone number","other":"<annað>","phoneNumber":"Phone number","popupDependent":"Bundið (Netscape)","popupFeatures":"Popup vindeygans víðkaðu eginleikar","popupFullScreen":"Fullur skermur (IE)","popupLeft":"Frástøða frá vinstru","popupLocationBar":"Adressulinja","popupMenuBar":"Skrábjálki","popupResizable":"Stødd kann broytast","popupScrollBars":"Rullibjálki","popupStatusBar":"Støðufrágreiðingarbjálki","popupToolbar":"Amboðsbjálki","popupTop":"Frástøða frá íerva","rel":"Relatión","selectAnchor":"Vel ein marknastein","styles":"Typografi","tabIndex":"Tabulator indeks","target":"Target","targetFrame":"<ramma>","targetFrameName":"Vís navn vindeygans","targetPopup":"<popup vindeyga>","targetPopupName":"Popup vindeygans navn","title":"Tilknýti","toAnchor":"Tilknýti til marknastein í tekstinum","toEmail":"Teldupostur","toUrl":"URL","toPhone":"Phone","toolbar":"Ger/broyt tilknýti","type":"Tilknýtisslag","unlink":"Strika tilknýti","upload":"Send til ambætaran"},"list":{"bulletedlist":"Punktmerktur listi","numberedlist":"Talmerktur listi"},"liststyle":{"bulletedTitle":"Eginleikar fyri lista við prikkum","circle":"Sirkul","decimal":"Vanlig tøl (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Lítlir bókstavir (a, b, c, d, e, etc.)","lowerRoman":"Lítil rómaratøl (i, ii, iii, iv, v, etc.)","none":"Einki","notset":"<ikki sett>","numberedTitle":"Eginleikar fyri lista við tølum","square":"Fýrkantur","start":"Byrjan","type":"Slag","upperAlpha":"Stórir bókstavir (A, B, C, D, E, etc.)","upperRoman":"Stór rómaratøl (I, II, III, IV, V, etc.)","validateStartNumber":"Byrjunartalið fyri lista má vera eitt heiltal."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maksimera","minimize":"Minimera"},"newpage":{"toolbar":"Nýggj síða"},"pagebreak":{"alt":"Síðuskift","toolbar":"Ger síðuskift"},"pastetext":{"button":"Innrita som reinan tekst","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Innrita som reinan tekst"},"pastefromword":{"confirmCleanup":"Teksturin, tú roynir at seta inn, sýnist at stava frá Word. Skal teksturin reinsast fyrst?","error":"Tað eydnaðist ikki at reinsa tekstin vegna ein internan feil","title":"Innrita frá Word","toolbar":"Innrita frá Word"},"preview":{"preview":"Frumsýning"},"print":{"toolbar":"Prenta"},"removeformat":{"toolbar":"Strika sniðgeving"},"save":{"toolbar":"Goym"},"selectall":{"toolbar":"Markera alt"},"showblocks":{"toolbar":"Vís blokkar"},"sourcearea":{"toolbar":"Kelda"},"specialchar":{"options":"Møguleikar við serteknum","title":"Vel sertekn","toolbar":"Set inn sertekn"},"scayt":{"btn_about":"Um SCAYT","btn_dictionaries":"Orðabøkur","btn_disable":"Nokta SCAYT","btn_enable":"Loyv SCAYT","btn_langs":"Tungumál","btn_options":"Uppseting","text_title":"Kanna stavseting, meðan tú skrivar"},"stylescombo":{"label":"Typografi","panelTitle":"Formatterings stílir","panelTitle1":"Blokk stílir","panelTitle2":"Inline stílir","panelTitle3":"Object stílir"},"table":{"border":"Bordabreidd","caption":"Tabellfrágreiðing","cell":{"menu":"Meski","insertBefore":"Set meska inn áðrenn","insertAfter":"Set meska inn aftaná","deleteCell":"Strika meskar","merge":"Flætta meskar","mergeRight":"Flætta meskar til høgru","mergeDown":"Flætta saman","splitHorizontal":"Kloyv meska vatnrætt","splitVertical":"Kloyv meska loddrætt","title":"Mesku eginleikar","cellType":"Mesku slag","rowSpan":"Ræð spenni","colSpan":"Kolonnu spenni","wordWrap":"Orðkloyving","hAlign":"Horisontal plasering","vAlign":"Loddrøtt plasering","alignBaseline":"Basislinja","bgColor":"Bakgrundslitur","borderColor":"Bordalitur","data":"Data","header":"Header","yes":"Ja","no":"Nei","invalidWidth":"Meskubreidd má vera eitt tal.","invalidHeight":"Meskuhædd má vera eitt tal.","invalidRowSpan":"Raðspennið má vera eitt heiltal.","invalidColSpan":"Kolonnuspennið má vera eitt heiltal.","chooseColor":"Vel"},"cellPad":"Meskubreddi","cellSpace":"Fjarstøða millum meskar","column":{"menu":"Kolonna","insertBefore":"Set kolonnu inn áðrenn","insertAfter":"Set kolonnu inn aftaná","deleteColumn":"Strika kolonnur"},"columns":"Kolonnur","deleteTable":"Strika tabell","headers":"Yvirskriftir","headersBoth":"Báðir","headersColumn":"Fyrsta kolonna","headersNone":"Eingin","headersRow":"Fyrsta rað","invalidBorder":"Borda-stødd má vera eitt tal.","invalidCellPadding":"Cell padding má vera eitt tal.","invalidCellSpacing":"Cell spacing má vera eitt tal.","invalidCols":"Talið av kolonnum má vera eitt tal størri enn 0.","invalidHeight":"Tabell-hædd má vera eitt tal.","invalidRows":"Talið av røðum má vera eitt tal størri enn 0.","invalidWidth":"Tabell-breidd má vera eitt tal.","menu":"Eginleikar fyri tabell","row":{"menu":"Rað","insertBefore":"Set rað inn áðrenn","insertAfter":"Set rað inn aftaná","deleteRow":"Strika røðir"},"rows":"Røðir","summary":"Samandráttur","title":"Eginleikar fyri tabell","toolbar":"Tabell","widthPc":"prosent","widthPx":"pixels","widthUnit":"breiddar unit"},"undo":{"redo":"Vend aftur","undo":"Angra"},"widget":{"move":"Click and drag to move","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Forfjóna","btnIgnoreAll":"Forfjóna alt","btnReplace":"Yvirskriva","btnReplaceAll":"Yvirskriva alt","btnUndo":"Angra","changeTo":"Broyt til","errorLoading":"Feilur við innlesing av application service host: %s.","ieSpellDownload":"Rættstavarin er ikki tøkur í tekstviðgeranum. Vilt tú heinta hann nú?","manyChanges":"Rættstavarin liðugur: %1 orð broytt","noChanges":"Rættstavarin liðugur: Einki orð varð broytt","noMispell":"Rættstavarin liðugur: Eingin feilur funnin","noSuggestions":"- Einki uppskot -","notAvailable":"Tíverri, ikki tøkt í løtuni.","notInDic":"Finst ikki í orðabókini","oneChange":"Rættstavarin liðugur: Eitt orð er broytt","progress":"Rættstavarin arbeiðir...","title":"Kanna stavseting","toolbar":"Kanna stavseting"}};
bt-source/panel/BTPanel/static/ckeditor/lang/fr-ca.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['fr-ca']={"editor":"Éditeur de texte enrichi","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Appuyez sur 0 pour de l'aide","browseServer":"Parcourir le serveur","url":"URL","protocol":"Protocole","upload":"Envoyer","uploadSubmit":"Envoyer au serveur","image":"Image","flash":"Animation Flash","form":"Formulaire","checkbox":"Case à cocher","radio":"Bouton radio","textField":"Champ texte","textarea":"Zone de texte","hiddenField":"Champ caché","button":"Bouton","select":"Liste déroulante","imageButton":"Bouton image","notSet":"<Par défaut>","id":"Id","name":"Nom","langDir":"Sens d'écriture","langDirLtr":"De gauche à droite (LTR)","langDirRtl":"De droite à gauche (RTL)","langCode":"Code langue","longDescr":"URL de description longue","cssClass":"Classes CSS","advisoryTitle":"Titre","cssStyle":"Style","ok":"OK","cancel":"Annuler","close":"Fermer","preview":"Aperçu","resize":"Redimensionner","generalTab":"Général","advancedTab":"Avancé","validateNumberFailed":"Cette valeur n'est pas un nombre.","confirmNewPage":"Les changements non sauvegardés seront perdus. Êtes-vous certain de vouloir charger une nouvelle page?","confirmCancel":"Certaines options ont été modifiées. Êtes-vous certain de vouloir fermer?","options":"Options","target":"Cible","targetNew":"Nouvelle fenêtre (_blank)","targetTop":"Fenêtre supérieur (_top)","targetSelf":"Cette fenêtre (_self)","targetParent":"Fenêtre parent (_parent)","langDirLTR":"De gauche à droite (LTR)","langDirRTL":"De droite à gauche (RTL)","styles":"Style","cssClasses":"Classe CSS","width":"Largeur","height":"Hauteur","align":"Alignement","left":"Gauche","right":"Droite","center":"Centré","justify":"Justifié","alignLeft":"Aligner à gauche","alignRight":"Aligner à Droite","alignCenter":"Align Center","alignTop":"Haut","alignMiddle":"Milieu","alignBottom":"Bas","alignNone":"None","invalidValue":"Valeur invalide.","invalidHeight":"La hauteur doit être un nombre.","invalidWidth":"La largeur doit être un nombre.","invalidLength":"Value specified for the \"%1\" field must be a positive number with or without a valid measurement unit (%2).","invalidCssLength":"La valeur spécifiée pour le champ \"%1\" doit être un nombre positif avec ou sans unité de mesure CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","invalidHtmlLength":"La valeur spécifiée pour le champ \"%1\" doit être un nombre positif avec ou sans unité de mesure HTML valide (px ou %).","invalidInlineStyle":"La valeur spécifiée pour le style intégré doit être composée d'un ou plusieurs couples de valeur au format \"nom : valeur\", separés par des points-virgules.","cssLengthTooltip":"Entrer un nombre pour la valeur en pixel ou un nombre avec une unité CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, indisponible</span>","keyboard":{"8":"Backspace","13":"Enter","16":"Shift","17":"Ctrl","18":"Alt","32":"Space","35":"End","36":"Home","46":"Delete","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Command"},"keyboardShortcut":"Keyboard shortcut","optionDefault":"Default"},"about":{"copy":"Copyright &copy; $1. Tous droits réservés.","dlgTitle":"À propos de CKEditor 4","moreInfo":"Pour les informations de licence, consulter notre site internet:"},"basicstyles":{"bold":"Gras","italic":"Italique","strike":"Barré","subscript":"Indice","superscript":"Exposant","underline":"Souligné"},"bidi":{"ltr":"Direction du texte de gauche à droite","rtl":"Direction du texte de droite à gauche"},"blockquote":{"toolbar":"Citation"},"notification":{"closed":"Notification closed."},"toolbar":{"toolbarCollapse":"Enrouler la barre d'outils","toolbarExpand":"Dérouler la barre d'outils","toolbarGroups":{"document":"Document","clipboard":"Presse papier/Annuler","editing":"Édition","forms":"Formulaires","basicstyles":"Styles de base","paragraph":"Paragraphe","links":"Liens","insert":"Insérer","styles":"Styles","colors":"Couleurs","tools":"Outils"},"toolbars":"Barre d'outils de l'éditeur"},"clipboard":{"copy":"Copier","copyError":"Les paramètres de sécurité de votre navigateur empêchent l'éditeur de copier automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl/Cmd+C).","cut":"Couper","cutError":"Les paramètres de sécurité de votre navigateur empêchent l'éditeur de couper automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl/Cmd+X).","paste":"Coller","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","pasteArea":"Coller la zone","pasteMsg":"Paste your content inside the area below and press OK."},"colorbutton":{"auto":"Automatique","bgColorTitle":"Couleur de fond","colors":{"000":"Noir","800000":"Marron","8B4513":"Brun foncé","2F4F4F":"Gris ardoise foncé","008080":"Sarcelle","000080":"Marine","4B0082":"Indigo","696969":"Gris foncé","B22222":"Rouge brique","A52A2A":"Brun","DAA520":"Doré","006400":"Vert foncé","40E0D0":"Turquoise","0000CD":"Bleu","800080":"Mauve","808080":"Gris","F00":"Rouge","FF8C00":"Orange foncé","FFD700":"Or","008000":"Vert","0FF":"Cyan","00F":"Bleu","EE82EE":"Violet","A9A9A9":"Gris pâle","FFA07A":"Saumon clair","FFA500":"Orange","FFFF00":"Jaune","00FF00":"Vert lime","AFEEEE":"Turquoise pâle","ADD8E6":"Bleu pâle","DDA0DD":"Prune","D3D3D3":"Gris pâle","FFF0F5":"Bleu lavande","FAEBD7":"Blanc antique","FFFFE0":"Jaune pâle","F0FFF0":"Miel doré","F0FFFF":"Azure","F0F8FF":"Bleu alice","E6E6FA":"Lavande","FFF":"Blanc","1ABC9C":"Strong Cyan","2ECC71":"Emerald","3498DB":"Bright Blue","9B59B6":"Amethyst","4E5F70":"Grayish Blue","F1C40F":"Vivid Yellow","16A085":"Dark Cyan","27AE60":"Dark Emerald","2980B9":"Strong Blue","8E44AD":"Dark Violet","2C3E50":"Desaturated Blue","F39C12":"Orange","E67E22":"Carrot","E74C3C":"Pale Red","ECF0F1":"Bright Silver","95A5A6":"Light Grayish Cyan","DDD":"Light Gray","D35400":"Pumpkin","C0392B":"Strong Red","BDC3C7":"Silver","7F8C8D":"Grayish Cyan","999":"Dark Gray"},"more":"Plus de couleurs...","panelTitle":"Couleurs","textColorTitle":"Couleur de texte"},"colordialog":{"clear":"Effacer","highlight":"Surligner","options":"Options de couleur","selected":"Couleur sélectionnée","title":"Choisir une couleur"},"templates":{"button":"Modèles","emptyListMsg":"(Aucun modèle disponible)","insertOption":"Remplacer tout le contenu actuel","options":"Options de modèles","selectPromptMsg":"Sélectionner le modèle à ouvrir dans l'éditeur","title":"Modèles de contenu"},"contextmenu":{"options":"Options du menu contextuel"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Titre","cssClassInputLabel":"Classes CSS","edit":"Modifier le DIV","inlineStyleInputLabel":"Style en ligne","langDirLTRLabel":"De gauche à droite (LTR)","langDirLabel":"Sens d'écriture","langDirRTLLabel":"De droite à gauche (RTL)","languageCodeInputLabel":"Code de langue","remove":"Supprimer le DIV","styleSelectLabel":"Style","title":"Créer un DIV","toolbar":"Créer un DIV"},"elementspath":{"eleLabel":"Chemin d'éléments","eleTitle":"element %1"},"filetools":{"loadError":"Error occurred during file read.","networkError":"Network error occurred during file upload.","httpError404":"HTTP error occurred during file upload (404: File not found).","httpError403":"HTTP error occurred during file upload (403: Forbidden).","httpError":"HTTP error occurred during file upload (error status: %1).","noUrlError":"Upload URL is not defined.","responseError":"Incorrect server response."},"find":{"find":"Rechercher","findOptions":"Options de recherche","findWhat":"Rechercher:","matchCase":"Respecter la casse","matchCyclic":"Recherche cyclique","matchWord":"Mot entier","notFoundMsg":"Le texte indiqué est introuvable.","replace":"Remplacer","replaceAll":"Tout remplacer","replaceSuccessMsg":"%1 remplacements.","replaceWith":"Remplacer par:","title":"Rechercher et remplacer"},"fakeobjects":{"anchor":"Ancre","flash":"Animation Flash","hiddenfield":"Champ caché","iframe":"IFrame","unknown":"Objet inconnu"},"flash":{"access":"Accès au script","accessAlways":"Toujours","accessNever":"Jamais","accessSameDomain":"Même domaine","alignAbsBottom":"Bas absolu","alignAbsMiddle":"Milieu absolu","alignBaseline":"Bas du texte","alignTextTop":"Haut du texte","bgcolor":"Couleur de fond","chkFull":"Permettre le plein-écran","chkLoop":"Boucle","chkMenu":"Activer le menu Flash","chkPlay":"Lecture automatique","flashvars":"Variables pour Flash","hSpace":"Espacement horizontal","properties":"Propriétés de l'animation Flash","propertiesTab":"Propriétés","quality":"Qualité","qualityAutoHigh":"Haute auto","qualityAutoLow":"Basse auto","qualityBest":"Meilleur","qualityHigh":"Haute","qualityLow":"Basse","qualityMedium":"Moyenne","scale":"Échelle","scaleAll":"Afficher tout","scaleFit":"Ajuster aux dimensions","scaleNoBorder":"Sans bordure","title":"Propriétés de l'animation Flash","vSpace":"Espacement vertical","validateHSpace":"L'espacement horizontal doit être un entier.","validateSrc":"Veuillez saisir l'URL","validateVSpace":"L'espacement vertical doit être un entier.","windowMode":"Mode de fenêtre","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Fenêtre"},"font":{"fontSize":{"label":"Taille","voiceLabel":"Taille","panelTitle":"Taille"},"label":"Police","panelTitle":"Police","voiceLabel":"Police"},"forms":{"button":{"title":"Propriétés du bouton","text":"Texte (Valeur)","type":"Type","typeBtn":"Bouton","typeSbm":"Soumettre","typeRst":"Réinitialiser"},"checkboxAndRadio":{"checkboxTitle":"Propriétés de la case à cocher","radioTitle":"Propriétés du bouton radio","value":"Valeur","selected":"Sélectionné","required":"Required"},"form":{"title":"Propriétés du formulaire","menu":"Propriétés du formulaire","action":"Action","method":"Méthode","encoding":"Encodage"},"hidden":{"title":"Propriétés du champ caché","name":"Nom","value":"Valeur"},"select":{"title":"Propriétés du champ de sélection","selectInfo":"Info","opAvail":"Options disponibles","value":"Valeur","size":"Taille","lines":"lignes","chkMulti":"Permettre les sélections multiples","required":"Required","opText":"Texte","opValue":"Valeur","btnAdd":"Ajouter","btnModify":"Modifier","btnUp":"Monter","btnDown":"Descendre","btnSetValue":"Valeur sélectionnée","btnDelete":"Supprimer"},"textarea":{"title":"Propriétés de la zone de texte","cols":"Colonnes","rows":"Lignes"},"textfield":{"title":"Propriétés du champ texte","name":"Nom","value":"Valeur","charWidth":"Largeur de caractères","maxChars":"Nombre maximum de caractères","required":"Required","type":"Type","typeText":"Texte","typePass":"Mot de passe","typeEmail":"Courriel","typeSearch":"Recherche","typeTel":"Numéro de téléphone","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format de paragraphe","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"En-tête 1","tag_h2":"En-tête 2","tag_h3":"En-tête 3","tag_h4":"En-tête 4","tag_h5":"En-tête 5","tag_h6":"En-tête 6","tag_p":"Normal","tag_pre":"Formaté"},"horizontalrule":{"toolbar":"Insérer un séparateur horizontale"},"iframe":{"border":"Afficher la bordure du cadre","noUrl":"Veuillez entre l'URL du IFrame","scrolling":"Activer les barres de défilement","title":"Propriétés du IFrame","toolbar":"IFrame"},"image":{"alt":"Texte alternatif","border":"Bordure","btnUpload":"Envoyer sur le serveur","button2Img":"Désirez-vous transformer l'image sélectionnée en image simple?","hSpace":"Espacement horizontal","img2Button":"Désirez-vous transformer l'image sélectionnée en bouton image?","infoTab":"Informations sur l'image","linkTab":"Lien","lockRatio":"Verrouiller les proportions","menu":"Propriétés de l'image","resetSize":"Taille originale","title":"Propriétés de l'image","titleButton":"Propriétés du bouton image","upload":"Téléverser","urlMissing":"L'URL de la source de l'image est manquant.","vSpace":"Espacement vertical","validateBorder":"La bordure doit être un entier.","validateHSpace":"L'espacement horizontal doit être un entier.","validateVSpace":"L'espacement vertical doit être un entier."},"indent":{"indent":"Augmenter le retrait","outdent":"Diminuer le retrait"},"smiley":{"options":"Options d'émoticônes","title":"Insérer un émoticône","toolbar":"Émoticône"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Touche d'accessibilité","advanced":"Avancé","advisoryContentType":"Type de contenu","advisoryTitle":"Description","anchor":{"toolbar":"Ancre","menu":"Modifier l'ancre","title":"Propriétés de l'ancre","name":"Nom de l'ancre","errorName":"Veuillez saisir le nom de l'ancre","remove":"Supprimer l'ancre"},"anchorId":"Par ID","anchorName":"Par nom","charset":"Encodage de la cible","cssClasses":"Classes CSS","download":"Force Download","displayText":"Afficher le texte","emailAddress":"Courriel","emailBody":"Corps du message","emailSubject":"Objet du message","id":"ID","info":"Informations sur le lien","langCode":"Code de langue","langDir":"Sens d'écriture","langDirLTR":"De gauche à droite (LTR)","langDirRTL":"De droite à gauche (RTL)","menu":"Modifier le lien","name":"Nom","noAnchors":"(Pas d'ancre disponible dans le document)","noEmail":"Veuillez saisir le courriel","noUrl":"Veuillez saisir l'URL","noTel":"Please type the phone number","other":"<autre>","phoneNumber":"Phone number","popupDependent":"Dépendante (Netscape)","popupFeatures":"Caractéristiques de la fenêtre popup","popupFullScreen":"Plein écran (IE)","popupLeft":"Position de la gauche","popupLocationBar":"Barre d'adresse","popupMenuBar":"Barre de menu","popupResizable":"Redimensionnable","popupScrollBars":"Barres de défilement","popupStatusBar":"Barre d'état","popupToolbar":"Barre d'outils","popupTop":"Position à partir du haut","rel":"Relation","selectAnchor":"Sélectionner une ancre","styles":"Style","tabIndex":"Ordre de tabulation","target":"Destination","targetFrame":"<Cadre>","targetFrameName":"Nom du cadre de destination","targetPopup":"<fenêtre popup>","targetPopupName":"Nom de la fenêtre popup","title":"Lien","toAnchor":"Ancre dans cette page","toEmail":"Courriel","toUrl":"URL","toPhone":"Phone","toolbar":"Lien","type":"Type de lien","unlink":"Supprimer le lien","upload":"Téléverser"},"list":{"bulletedlist":"Liste à puces","numberedlist":"Liste numérotée"},"liststyle":{"bulletedTitle":"Propriété de liste à puce","circle":"Cercle","decimal":"Décimal (1, 2, 3, etc.)","disc":"Disque","lowerAlpha":"Alphabétique minuscule (a, b, c, d, e, etc.)","lowerRoman":"Romain minuscule (i, ii, iii, iv, v, etc.)","none":"Aucun","notset":"<non défini>","numberedTitle":"Propriété de la liste numérotée","square":"Carré","start":"Début","type":"Type","upperAlpha":"Alphabétique majuscule (A, B, C, D, E, etc.)","upperRoman":"Romain Majuscule (I, II, III, IV, V, etc.)","validateStartNumber":"Le numéro de début de liste doit être un entier."},"magicline":{"title":"Insérer le paragraphe ici"},"maximize":{"maximize":"Maximizer","minimize":"Minimizer"},"newpage":{"toolbar":"Nouvelle page"},"pagebreak":{"alt":"Saut de page","toolbar":"Insérer un saut de page à l'impression"},"pastetext":{"button":"Coller comme texte","pasteNotification":"Press %1 to paste. Your browser doesn‘t support pasting with the toolbar button or context menu option.","title":"Coller comme texte"},"pastefromword":{"confirmCleanup":"Le texte que vous tentez de coller semble provenir de Word. Désirez vous le nettoyer avant de coller?","error":"Il n'a pas été possible de nettoyer les données collées du à une erreur interne","title":"Coller de Word","toolbar":"Coller de Word"},"preview":{"preview":"Prévisualiser"},"print":{"toolbar":"Imprimer"},"removeformat":{"toolbar":"Supprimer le formatage"},"save":{"toolbar":"Sauvegarder"},"selectall":{"toolbar":"Sélectionner tout"},"showblocks":{"toolbar":"Afficher les blocs"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Option des caractères spéciaux","title":"Sélectionner un caractère spécial","toolbar":"Insérer un caractère spécial"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Styles","panelTitle":"Styles de formattage","panelTitle1":"Styles de block","panelTitle2":"Styles en ligne","panelTitle3":"Styles d'objet"},"table":{"border":"Taille de la bordure","caption":"Titre","cell":{"menu":"Cellule","insertBefore":"Insérer une cellule avant","insertAfter":"Insérer une cellule après","deleteCell":"Supprimer des cellules","merge":"Fusionner les cellules","mergeRight":"Fusionner à droite","mergeDown":"Fusionner en bas","splitHorizontal":"Scinder la cellule horizontalement","splitVertical":"Scinder la cellule verticalement","title":"Propriétés de la cellule","cellType":"Type de cellule","rowSpan":"Fusion de lignes","colSpan":"Fusion de colonnes","wordWrap":"Retour à la ligne","hAlign":"Alignement horizontal","vAlign":"Alignement vertical","alignBaseline":"Bas du texte","bgColor":"Couleur d'arrière plan","borderColor":"Couleur de bordure","data":"Données","header":"En-tête","yes":"Oui","no":"Non","invalidWidth":"La largeur de cellule doit être un nombre.","invalidHeight":"La hauteur de cellule doit être un nombre.","invalidRowSpan":"La fusion de lignes doit être un nombre entier.","invalidColSpan":"La fusion de colonnes doit être un nombre entier.","chooseColor":"Sélectionner"},"cellPad":"Marge interne des cellules","cellSpace":"Espacement des cellules","column":{"menu":"Colonne","insertBefore":"Insérer une colonne avant","insertAfter":"Insérer une colonne après","deleteColumn":"Supprimer des colonnes"},"columns":"Colonnes","deleteTable":"Supprimer le tableau","headers":"En-têtes","headersBoth":"Les deux.","headersColumn":"Première colonne","headersNone":"Aucun","headersRow":"Première ligne","invalidBorder":"La taille de bordure doit être un nombre.","invalidCellPadding":"La marge interne des cellules doit être un nombre positif.","invalidCellSpacing":"L'espacement des cellules doit être un nombre positif.","invalidCols":"Le nombre de colonnes doit être supérieur à 0.","invalidHeight":"La hauteur du tableau doit être un nombre.","invalidRows":"Le nombre de lignes doit être supérieur à 0.","invalidWidth":"La largeur du tableau doit être un nombre.","menu":"Propriétés du tableau","row":{"menu":"Ligne","insertBefore":"Insérer une ligne avant","insertAfter":"Insérer une ligne après","deleteRow":"Supprimer des lignes"},"rows":"Lignes","summary":"Résumé","title":"Propriétés du tableau","toolbar":"Tableau","widthPc":"pourcentage","widthPx":"pixels","widthUnit":"unité de largeur"},"undo":{"redo":"Refaire","undo":"Annuler"},"widget":{"move":"Click and drag to move","label":"%1 widget"},"uploadwidget":{"abort":"Upload aborted by the user.","doneOne":"File successfully uploaded.","doneMany":"Successfully uploaded %1 files.","uploadOne":"Uploading file ({percentage}%)...","uploadMany":"Uploading files, {current} of {max} done ({percentage}%)..."},"wsc":{"btnIgnore":"Ignorer","btnIgnoreAll":"Ignorer tout","btnReplace":"Remplacer","btnReplaceAll":"Remplacer tout","btnUndo":"Annuler","changeTo":"Changer en","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Le Correcteur d'orthographe n'est pas installé. Souhaitez-vous le télécharger maintenant?","manyChanges":"Vérification d'orthographe terminée: %1 mots modifiés","noChanges":"Vérification d'orthographe terminée: Pas de modifications","noMispell":"Vérification d'orthographe terminée: pas d'erreur trouvée","noSuggestions":"- Pas de suggestion -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Pas dans le dictionnaire","oneChange":"Vérification d'orthographe terminée: Un mot modifié","progress":"Vérification d'orthographe en cours...","title":"Spell Checker","toolbar":"Orthographe"}};
bt-source/panel/BTPanel/static/ckeditor/lang/fr.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['fr']={"editor":"Éditeur de texte enrichi","editorPanel":"Tableau de bord de l'éditeur de texte enrichi","common":{"editorHelp":"Utilisez le raccourci Alt-0 pour obtenir de l'aide","browseServer":"Parcourir le serveur","url":"URL","protocol":"Protocole","upload":"Télécharger","uploadSubmit":"Envoyer sur le serveur","image":"Image","flash":"Flash","form":"Formulaire","checkbox":"Case à cocher","radio":"Bouton radio","textField":"Champ texte","textarea":"Zone de texte","hiddenField":"Champ invisible","button":"Bouton","select":"Liste déroulante","imageButton":"Bouton avec image","notSet":"<indéfini>","id":"ID","name":"Nom","langDir":"Sens d'écriture","langDirLtr":"Gauche à droite (LTR)","langDirRtl":"Droite à gauche (RTL)","langCode":"Code de langue","longDescr":"URL de description longue","cssClass":"Classes de style","advisoryTitle":"Infobulle","cssStyle":"Style","ok":"OK","cancel":"Annuler","close":"Fermer","preview":"Aperçu","resize":"Redimensionner","generalTab":"Général","advancedTab":"Avancé","validateNumberFailed":"Cette valeur n'est pas un nombre.","confirmNewPage":"Les changements non sauvegardés seront perdus. Êtes-vous sûr de vouloir charger une nouvelle page ?","confirmCancel":"Certaines options ont été modifiées. Êtes-vous sûr de vouloir fermer ?","options":"Options","target":"Cible","targetNew":"Nouvelle fenêtre (_blank)","targetTop":"Fenêtre supérieure (_top)","targetSelf":"Même fenêtre (_self)","targetParent":"Fenêtre parent (_parent)","langDirLTR":"Gauche à droite (LTR)","langDirRTL":"Droite à gauche (RTL)","styles":"Style","cssClasses":"Classes de style","width":"Largeur","height":"Hauteur","align":"Alignement","left":"Gauche","right":"Droite","center":"Centrer","justify":"Justifier","alignLeft":"Aligner à gauche","alignRight":"Aligner à droite","alignCenter":"Aligner au centre","alignTop":"Haut","alignMiddle":"Milieu","alignBottom":"Bas","alignNone":"Aucun","invalidValue":"Valeur invalide.","invalidHeight":"La hauteur doit être un nombre.","invalidWidth":"La largeur doit être un nombre.","invalidLength":"La valeur de \"%1\" doit être un nombre positif avec ou sans unité de mesure (%2).","invalidCssLength":"La valeur spécifiée pour le champ « %1 » doit être un nombre positif avec ou sans unité de mesure CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","invalidHtmlLength":"La valeur spécifiée pour le champ « %1 » doit être un nombre positif avec ou sans unité de mesure HTML valide (px ou %).","invalidInlineStyle":"La valeur spécifiée pour le style en ligne doit être composée d'un ou plusieurs couples au format « nom : valeur », séparés par des points-virgules.","cssLengthTooltip":"Entrer un nombre pour une valeur en pixels ou un nombre avec une unité de mesure CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, indisponible</span>","keyboard":{"8":"Retour arrière","13":"Entrée","16":"Majuscule","17":"Ctrl","18":"Alt","32":"Espace","35":"Fin","36":"Origine","46":"Supprimer","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Commande"},"keyboardShortcut":"Raccourci clavier","optionDefault":"Par défaut"},"about":{"copy":"Copyright &copy; $1. Tous droits réservés.","dlgTitle":"À propos de CKEditor 4","moreInfo":"Pour les informations de licence, veuillez visiter notre site web :"},"basicstyles":{"bold":"Gras","italic":"Italique","strike":"Barré","subscript":"Indice","superscript":"Exposant","underline":"Souligné"},"bidi":{"ltr":"Direction du texte de la gauche vers la droite","rtl":"Direction du texte de la droite vers la gauche"},"blockquote":{"toolbar":"Citation"},"notification":{"closed":"Notification fermée."},"toolbar":{"toolbarCollapse":"Enrouler la barre d'outils","toolbarExpand":"Dérouler la barre d'outils","toolbarGroups":{"document":"Document","clipboard":"Presse-papier/Défaire","editing":"Édition","forms":"Formulaires","basicstyles":"Styles de base","paragraph":"Paragraphe","links":"Liens","insert":"Insérer","styles":"Styles","colors":"Couleurs","tools":"Outils"},"toolbars":"Barres d'outils de l'éditeur"},"clipboard":{"copy":"Copier","copyError":"Les paramètres de sécurité de votre navigateur n'autorisent pas l'éditeur à exécuter automatiquement l'opération « Copier ». Veuillez utiliser le raccourci clavier à cet effet (Ctrl/Cmd+C).","cut":"Couper","cutError":"Les paramètres de sécurité de votre navigateur n'autorisent pas l'éditeur à exécuter automatiquement l'opération « Couper ». Veuillez utiliser le raccourci clavier à cet effet (Ctrl/Cmd+X).","paste":"Coller","pasteNotification":"Utilisez le raccourci %1 pour coller. Votre navigateur n'accepte pas de coller à l'aide du bouton ou du menu contextuel.","pasteArea":"Coller la zone","pasteMsg":"Collez votre contenu dans la zone de saisie ci-dessous et cliquez OK."},"colorbutton":{"auto":"Automatique","bgColorTitle":"Couleur d'arrière-plan","colors":{"000":"Noir","800000":"Marron","8B4513":"Brun de selle","2F4F4F":"Gris sombre d'ardoise","008080":"Canard","000080":"Bleu marine","4B0082":"Indigo","696969":"Gris foncé","B22222":"Rouge brique","A52A2A":"Brun","DAA520":"Or terni","006400":"Vert foncé","40E0D0":"Turquoise","0000CD":"Bleu royal","800080":"Violet","808080":"Gris","F00":"Rouge","FF8C00":"Orange foncé","FFD700":"Or","008000":"Vert","0FF":"Cyan","00F":"Bleu","EE82EE":"Violet","A9A9A9":"Gris tamisé","FFA07A":"Saumon clair","FFA500":"Orange","FFFF00":"Jaune","00FF00":"Lime","AFEEEE":"Turquoise clair","ADD8E6":"Bleu clair","DDA0DD":"Prune","D3D3D3":"Gris clair","FFF0F5":"Fard lavande","FAEBD7":"Blanc antique","FFFFE0":"Jaune clair","F0FFF0":"Vert rosée","F0FFFF":"Azur","F0F8FF":"Bleu Alice","E6E6FA":"Lavande","FFF":"Blanc","1ABC9C":"Cyan dur","2ECC71":"Émeraude","3498DB":"Bleu brillant","9B59B6":"Améthyste","4E5F70":"Bleu-gris","F1C40F":"Jaune vif","16A085":"Cyan foncé","27AE60":"Émeraude foncée","2980B9":"Bleu dur","8E44AD":"Violet foncé","2C3E50":"Bleu désaturé","F39C12":"Orange","E67E22":"Carotte","E74C3C":"Rouge pâle","ECF0F1":"Argent brillant","95A5A6":"Cyan-gris clair","DDD":"Gris clair","D35400":"Citrouille","C0392B":"Rouge dur","BDC3C7":"Argent","7F8C8D":"Cyan-gris","999":"Gris foncé"},"more":"Plus de couleurs...","panelTitle":"Couleurs","textColorTitle":"Couleur du texte"},"colordialog":{"clear":"Effacer","highlight":"Pointée","options":"Options de couleur","selected":"Couleur choisie","title":"Sélectionner une couleur"},"templates":{"button":"Modèles","emptyListMsg":"(Aucun modèle disponible)","insertOption":"Remplacer le contenu actuel","options":"Options des modèles","selectPromptMsg":"Veuillez sélectionner le modèle à ouvrir dans l'éditeur","title":"Contenu des modèles"},"contextmenu":{"options":"Options du menu contextuel"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Infobulle","cssClassInputLabel":"Classes de style","edit":"Modifier la division","inlineStyleInputLabel":"Style en ligne","langDirLTRLabel":"Gauche à droite (LTR)","langDirLabel":"Sens d'écriture","langDirRTLLabel":"Droite à gauche (RTL)","languageCodeInputLabel":"Code de langue","remove":"Enlever la division","styleSelectLabel":"Style","title":"Créer une division","toolbar":"Créer une division"},"elementspath":{"eleLabel":"Chemin des éléments","eleTitle":"Élément %1"},"filetools":{"loadError":"Une erreur est survenue lors de la lecture du fichier.","networkError":"Une erreur réseau est survenue lors du téléversement du fichier.","httpError404":"Une erreur HTTP est survenue durant le téléversement du fichier (404 : fichier non trouvé).","httpError403":"Une erreur HTTP est survenue durant le téléversement du fichier (403 : accès refusé).","httpError":"Une erreur HTTP est survenue durant le téléversement du fichier (erreur : %1).","noUrlError":"L'URL de téléversement n'est pas spécifiée.","responseError":"Réponse du serveur incorrecte."},"find":{"find":"Rechercher","findOptions":"Options de recherche","findWhat":"Rechercher :","matchCase":"Respecter la casse","matchCyclic":"Boucler","matchWord":"Mot entier uniquement","notFoundMsg":"Le texte spécifié ne peut être trouvé.","replace":"Remplacer","replaceAll":"Remplacer tout","replaceSuccessMsg":"%1 occurrence(s) remplacée(s).","replaceWith":"Remplacer par : ","title":"Rechercher et remplacer"},"fakeobjects":{"anchor":"Ancre","flash":"Animation Flash","hiddenfield":"Champ invisible","iframe":"Cadre de contenu incorporé","unknown":"Objet inconnu"},"flash":{"access":"Accès aux scripts","accessAlways":"Toujours","accessNever":"Jamais","accessSameDomain":"Même domaine","alignAbsBottom":"Bas absolu","alignAbsMiddle":"Milieu absolu","alignBaseline":"Ligne de base","alignTextTop":"Haut du texte","bgcolor":"Couleur d'arrière-plan","chkFull":"Permettre le plein écran","chkLoop":"Boucle","chkMenu":"Activer le menu Flash","chkPlay":"Lire automatiquement","flashvars":"Variables Flash","hSpace":"Espacement horizontal","properties":"Propriétés du Flash","propertiesTab":"Propriétés","quality":"Qualité","qualityAutoHigh":"Haute automatique","qualityAutoLow":"Basse automatique","qualityBest":"Maximale","qualityHigh":"Haute","qualityLow":"Basse","qualityMedium":"Moyenne","scale":"Échelle","scaleAll":"Afficher tout","scaleFit":"Adaptation automatique","scaleNoBorder":"Aucune bordure","title":"Propriétés du Flash","vSpace":"Espacement vertical","validateHSpace":"L'espacement horizontal doit être un nombre.","validateSrc":"L'URL doit être indiquée.","validateVSpace":"L'espacement vertical doit être un nombre.","windowMode":"Mode fenêtre","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Fenêtre"},"font":{"fontSize":{"label":"Taille","voiceLabel":"Taille de police","panelTitle":"Taille de police"},"label":"Police","panelTitle":"Style de police","voiceLabel":"Police"},"forms":{"button":{"title":"Propriétés du bouton","text":"Texte","type":"Type","typeBtn":"Bouton","typeSbm":"Validation","typeRst":"Remise à zéro"},"checkboxAndRadio":{"checkboxTitle":"Propriétés de la case à cocher","radioTitle":"Propriétés du bouton radio","value":"Valeur","selected":"Sélectionné","required":"Requis"},"form":{"title":"Propriétés du formulaire","menu":"Propriétés du formulaire","action":"Action","method":"Méthode","encoding":"Encodage"},"hidden":{"title":"Propriétés du champ invisible","name":"Nom","value":"Valeur"},"select":{"title":"Propriétés du menu déroulant","selectInfo":"Informations sur le menu déroulant","opAvail":"Options disponibles","value":"Valeur","size":"Taille","lines":"lignes","chkMulti":"Permettre les sélections multiples","required":"Requis","opText":"Texte","opValue":"Valeur","btnAdd":"Ajouter","btnModify":"Modifier","btnUp":"Haut","btnDown":"Bas","btnSetValue":"Définir comme valeur sélectionnée","btnDelete":"Supprimer"},"textarea":{"title":"Propriétés de la zone de texte","cols":"Colonnes","rows":"Lignes"},"textfield":{"title":"Propriétés du champ texte","name":"Nom","value":"Valeur","charWidth":"Largeur des caractères","maxChars":"Nombre maximum de caractères","required":"Requis","type":"Type","typeText":"Texte","typePass":"Mot de passe","typeEmail":"Courriel","typeSearch":"Rechercher","typeTel":"Numéro de téléphone","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format de paragraphe","tag_address":"Adresse","tag_div":"Division","tag_h1":"Titre 1","tag_h2":"Titre 2","tag_h3":"Titre 3","tag_h4":"Titre 4","tag_h5":"Titre 5","tag_h6":"Titre 6","tag_p":"Normal","tag_pre":"Préformaté"},"horizontalrule":{"toolbar":"Ligne horizontale"},"iframe":{"border":"Afficher la bordure du cadre","noUrl":"Veuillez entrer l'URL du contenu du cadre","scrolling":"Activer les barres de défilement","title":"Propriétés du cadre de contenu incorporé","toolbar":"Cadre de contenu incorporé"},"image":{"alt":"Texte alternatif","border":"Bordure","btnUpload":"Envoyer sur le serveur","button2Img":"Voulez-vous transformer le bouton avec image sélectionné en simple image ?","hSpace":"Espacement horizontal","img2Button":"Voulez-vous transformer l'image sélectionnée en bouton avec image ?","infoTab":"Informations sur l'image","linkTab":"Lien","lockRatio":"Conserver les proportions","menu":"Propriétés de l'image","resetSize":"Réinitialiser la taille","title":"Propriétés de l'image","titleButton":"Propriétés du bouton avec image","upload":"Téléverser","urlMissing":"L'URL source de l'image est manquante.","vSpace":"Espacement vertical","validateBorder":"La bordure doit être un nombre entier.","validateHSpace":"L'espacement horizontal doit être un nombre entier.","validateVSpace":"L'espacement vertical doit être un nombre entier."},"indent":{"indent":"Augmenter le retrait","outdent":"Diminuer le retrait"},"smiley":{"options":"Options des frimousses","title":"Insérer une frimousse","toolbar":"Frimousse"},"language":{"button":"Définir la langue","remove":"Supprimer la langue"},"link":{"acccessKey":"Touche d'accessibilité","advanced":"Avancé","advisoryContentType":"Type de contenu (indicatif)","advisoryTitle":"Infobulle","anchor":{"toolbar":"Ancre","menu":"Modifier l'ancre","title":"Propriétés de l'ancre","name":"Nom de l'ancre","errorName":"Veuillez entrer le nom de l'ancre.","remove":"Supprimer l'ancre"},"anchorId":"Par ID d'élément","anchorName":"Par nom d'ancre","charset":"Encodage de la ressource liée","cssClasses":"Classes de style","download":"Forcer le téléchargement","displayText":"Afficher le texte","emailAddress":"Adresse électronique","emailBody":"Corps du message","emailSubject":"Sujet du message","id":"ID","info":"Informations sur le lien","langCode":"Code de langue","langDir":"Sens d'écriture","langDirLTR":"Gauche à droite","langDirRTL":"Droite à gauche (RTL)","menu":"Modifier le lien","name":"Nom","noAnchors":"(Aucune ancre disponible dans ce document)","noEmail":"Veuillez entrer l'adresse électronique","noUrl":"Veuillez entrer l'URL du lien","noTel":"Please type the phone number","other":"<autre>","phoneNumber":"Phone number","popupDependent":"Dépendante (Netscape)","popupFeatures":"Caractéristiques de la fenêtre surgissante","popupFullScreen":"Plein écran (IE)","popupLeft":"À gauche","popupLocationBar":"Barre d'adresse","popupMenuBar":"Barre de menu","popupResizable":"Redimensionnable","popupScrollBars":"Barres de défilement","popupStatusBar":"Barre d'état","popupToolbar":"Barre d'outils","popupTop":"En haut","rel":"Relation","selectAnchor":"Sélectionner une ancre","styles":"Style","tabIndex":"Indice de tabulation","target":"Cible","targetFrame":"<cadre>","targetFrameName":"Nom du cadre affecté","targetPopup":"<fenêtre surgissante>","targetPopupName":"Nom de la fenêtre surgissante","title":"Lien","toAnchor":"Ancre","toEmail":"Courriel","toUrl":"URL","toPhone":"Phone","toolbar":"Lien","type":"Type de lien","unlink":"Supprimer le lien","upload":"Téléverser"},"list":{"bulletedlist":"Insérer/Supprimer une liste à puces","numberedlist":"Insérer/Supprimer une liste numérotée"},"liststyle":{"bulletedTitle":"Propriétés de la liste à puces","circle":"Cercle","decimal":"Décimal (1, 2, 3, etc.)","disc":"Disque","lowerAlpha":"Lettres minuscules (a, b, c, d, e, etc.)","lowerRoman":"Chiffres romains minuscules (i, ii, iii, iv, v, etc.)","none":"Aucun","notset":"<indéfini>","numberedTitle":"Propriétés de la liste numérotée","square":"Carré","start":"Début","type":"Type","upperAlpha":"Lettres majuscules (A, B, C, D, E, etc.)","upperRoman":"Chiffres romains majuscules (I, II, III, IV, V, etc.)","validateStartNumber":"Le premier élément de la liste doit être un nombre entier."},"magicline":{"title":"Insérer un paragraphe ici"},"maximize":{"maximize":"Agrandir","minimize":"Réduire"},"newpage":{"toolbar":"Nouvelle page"},"pagebreak":{"alt":"Saut de page","toolbar":"Insérer un saut de page pour l'impression"},"pastetext":{"button":"Coller comme texte brut","pasteNotification":"Utilisez le raccourci %1 pour coller. Votre navigateur n'accepte pas de coller à l'aide du bouton ou du menu contextuel.","title":"Coller comme texte brut"},"pastefromword":{"confirmCleanup":"Le texte à coller semble provenir de Word. Désirez-vous le nettoyer avant de coller ?","error":"Les données collées n'ont pas pu être nettoyées à cause d'une erreur interne","title":"Coller depuis Word","toolbar":"Coller depuis Word"},"preview":{"preview":"Aperçu"},"print":{"toolbar":"Imprimer"},"removeformat":{"toolbar":"Supprimer la mise en forme"},"save":{"toolbar":"Enregistrer"},"selectall":{"toolbar":"Tout sélectionner"},"showblocks":{"toolbar":"Afficher les blocs"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Options des caractères spéciaux","title":"Sélectionner un caractère","toolbar":"Insérer un caractère spécial"},"scayt":{"btn_about":"A propos de SCAYT","btn_dictionaries":"Dictionnaires","btn_disable":"Désactiver SCAYT","btn_enable":"Activer SCAYT","btn_langs":"Langues","btn_options":"Options","text_title":"Vérification de l'Orthographe en Cours de Frappe (SCAYT)"},"stylescombo":{"label":"Styles","panelTitle":"Styles de mise en forme","panelTitle1":"Styles de bloc","panelTitle2":"Styles en ligne","panelTitle3":"Styles d'objet"},"table":{"border":"Taille de la bordure","caption":"Titre du tableau","cell":{"menu":"Cellule","insertBefore":"Insérer une cellule avant","insertAfter":"Insérer une cellule après","deleteCell":"Supprimer les cellules","merge":"Fusionner les cellules","mergeRight":"Fusionner vers la droite","mergeDown":"Fusionner vers le bas","splitHorizontal":"Scinder la cellule horizontalement","splitVertical":"Scinder la cellule verticalement","title":"Propriétés de la cellule","cellType":"Type de cellule","rowSpan":"Lignes occupées","colSpan":"Colonnes occupées","wordWrap":"Césure","hAlign":"Alignement horizontal","vAlign":"Alignement vertical","alignBaseline":"Ligne de base","bgColor":"Couleur d'arrière-plan","borderColor":"Couleur de bordure","data":"Données","header":"En-tête","yes":"Oui","no":"Non","invalidWidth":"La largeur de la cellule doit être un nombre.","invalidHeight":"La hauteur de la cellule doit être un nombre.","invalidRowSpan":"Le nombre de colonnes occupées doit être un nombre entier.","invalidColSpan":"Le nombre de colonnes occupées doit être un nombre entier.","chooseColor":"Choisir"},"cellPad":"Marge interne des cellules","cellSpace":"Espacement entre les cellules","column":{"menu":"Colonne","insertBefore":"Insérer une colonne avant","insertAfter":"Insérer une colonne après","deleteColumn":"Supprimer les colonnes"},"columns":"Colonnes","deleteTable":"Supprimer le tableau","headers":"En-têtes","headersBoth":"Les deux","headersColumn":"Première colonne","headersNone":"Aucun","headersRow":"Première ligne","invalidBorder":"La taille de la bordure doit être un nombre.","invalidCellPadding":"La marge interne des cellules doit être un nombre positif.","invalidCellSpacing":"L'espacement entre les cellules doit être un nombre positif.","invalidCols":"Le nombre de colonnes doit être supérieur à 0.","invalidHeight":"La hauteur du tableau doit être un nombre.","invalidRows":"Le nombre de lignes doit être supérieur à 0.","invalidWidth":"La largeur du tableau doit être un nombre.","menu":"Propriétés du tableau","row":{"menu":"Ligne","insertBefore":"Insérer une ligne avant","insertAfter":"Insérer une ligne après","deleteRow":"Supprimer les lignes"},"rows":"Lignes","summary":"Résumé (description)","title":"Propriétés du tableau","toolbar":"Tableau","widthPc":"pour cent","widthPx":"pixels","widthUnit":"unité de largeur"},"undo":{"redo":"Rétablir","undo":"Annuler"},"widget":{"move":"Cliquer et glisser pour déplacer","label":"Élément %1"},"uploadwidget":{"abort":"Téléversement interrompu par l'utilisateur.","doneOne":"Fichier téléversé avec succès.","doneMany":"%1 fichiers téléversés avec succès.","uploadOne":"Téléversement du fichier en cours ({percentage} %)…","uploadMany":"Téléversement des fichiers en cours, {current} sur {max} effectués ({percentage} %)…"},"wsc":{"btnIgnore":"Ignorer","btnIgnoreAll":"Ignorer tout","btnReplace":"Remplacer","btnReplaceAll":"Remplacer tout","btnUndo":"Annuler","changeTo":"Modifier pour","errorLoading":"Erreur du chargement du service depuis l'hôte : %s.","ieSpellDownload":"La vérification d'orthographe n'est pas installée. Voulez-vous la télécharger maintenant?","manyChanges":"Vérification de l'orthographe terminée : %1 mots corrigés.","noChanges":"Vérification de l'orthographe terminée : Aucun mot corrigé.","noMispell":"Vérification de l'orthographe terminée : aucune erreur trouvée.","noSuggestions":"- Aucune suggestion -","notAvailable":"Désolé, le service est indisponible actuellement.","notInDic":"N'existe pas dans le dictionnaire.","oneChange":"Vérification de l'orthographe terminée : Un seul mot corrigé.","progress":"Vérification de l'orthographe en cours...","title":"Vérifier l'orthographe","toolbar":"Vérifier l'orthographe"}};
bt-source/panel/BTPanel/static/ckeditor/lang/gl.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /*
2
+ Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or https://ckeditor.com/license
4
+ */
5
+ CKEDITOR.lang['gl']={"editor":"Editor de texto mellorado","editorPanel":"Panel do editor de texto mellorado","common":{"editorHelp":"Prema ALT 0 para obter axuda","browseServer":"Examinar o servidor","url":"URL","protocol":"Protocolo","upload":"Enviar","uploadSubmit":"Enviar ao servidor","image":"Imaxe","flash":"Flash","form":"Formulario","checkbox":"Caixa de selección","radio":"Botón de opción","textField":"Campo de texto","textarea":"Área de texto","hiddenField":"Campo agochado","button":"Botón","select":"Campo de selección","imageButton":"Botón de imaxe","notSet":"<sen estabelecer>","id":"ID","name":"Nome","langDir":"Dirección de escritura do idioma","langDirLtr":"Esquerda a dereita (LTR)","langDirRtl":"Dereita a esquerda (RTL)","langCode":"Código do idioma","longDescr":"Descrición completa do URL","cssClass":"Clases da folla de estilos","advisoryTitle":"Título","cssStyle":"Estilo","ok":"Aceptar","cancel":"Cancelar","close":"Pechar","preview":"Vista previa","resize":"Redimensionar","generalTab":"Xeral","advancedTab":"Avanzado","validateNumberFailed":"Este valor non é un número.","confirmNewPage":"Calquera cambio que non gardara neste contido perderase.\r\nConfirma que quere cargar unha páxina nova?","confirmCancel":"Algunhas das opcións foron cambiadas.\r\nConfirma que quere pechar o diálogo?","options":"Opcións","target":"Destino","targetNew":"Nova xanela (_blank)","targetTop":"Xanela principal (_top)","targetSelf":"Mesma xanela (_self)","targetParent":"Xanela superior (_parent)","langDirLTR":"Esquerda a dereita (LTR)","langDirRTL":"Dereita a esquerda (RTL)","styles":"Estilo","cssClasses":"Clases da folla de estilos","width":"Largo","height":"Alto","align":"Aliñamento","left":"Esquerda","right":"Dereita","center":"Centro","justify":"Xustificado","alignLeft":"Aliñar á esquerda","alignRight":"Aliñar á dereita","alignCenter":"Aliñar ao centro","alignTop":"Arriba","alignMiddle":"Centro","alignBottom":"Abaixo","alignNone":"Ningún","invalidValue":"Valor incorrecto.","invalidHeight":"O alto debe ser un número.","invalidWidth":"O largo debe ser un número.","invalidLength":"O valor especificado para o campo «%1» debe ser un número positivo con ou sen unha unidade de medida correcta (%2).","invalidCssLength":"O valor especificado para o campo «%1» debe ser un número positivo con ou sen unha unidade de medida CSS correcta (px, %, in, cm, mm, em, ex, pt, ou pc).","invalidHtmlLength":"O valor especificado para o campo «%1» debe ser un número positivo con ou sen unha unidade de medida HTML correcta (px ou %).","invalidInlineStyle":"O valor especificado no estilo en liña debe consistir nunha ou máis tuplas co formato «nome : valor», separadas por punto e coma.","cssLengthTooltip":"Escriba un número para o valor en píxeles ou un número cunha unidade CSS correcta (px, %, in, cm, mm, em, ex, pt, ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, non dispoñíbel</span>","keyboard":{"8":"Ir atrás","13":"Intro","16":"Maiús","17":"Ctrl","18":"Alt","32":"Espazo","35":"Fin","36":"Inicio","46":"Supr","112":"F1","113":"F2","114":"F3","115":"F4","116":"F5","117":"F6","118":"F7","119":"F8","120":"F9","121":"F10","122":"F11","123":"F12","124":"F13","125":"F14","126":"F15","127":"F16","128":"F17","129":"F18","130":"F19","131":"F20","132":"F21","133":"F22","134":"F23","135":"F24","224":"Orde"},"keyboardShortcut":"Atallo de teclado","optionDefault":"Predeterminado"},"about":{"copy":"Copyright &copy; $1. Todos os dereitos reservados.","dlgTitle":"Sobre o CKEditor 4","moreInfo":"Para obter información sobre a licenza, visite o noso sitio web:"},"basicstyles":{"bold":"Negra","italic":"Cursiva","strike":"Riscado","subscript":"Subíndice","superscript":"Superíndice","underline":"Subliñado"},"bidi":{"ltr":"Dirección do texto de esquerda a dereita","rtl":"Dirección do texto de dereita a esquerda"},"blockquote":{"toolbar":"Cita"},"notification":{"closed":"Notificación pechada."},"toolbar":{"toolbarCollapse":"Contraer a barra de ferramentas","toolbarExpand":"Expandir a barra de ferramentas","toolbarGroups":{"document":"Documento","clipboard":"Portapapeis/desfacer","editing":"Edición","forms":"Formularios","basicstyles":"Estilos básicos","paragraph":"Paragrafo","links":"Ligazóns","insert":"Inserir","styles":"Estilos","colors":"Cores","tools":"Ferramentas"},"toolbars":"Barras de ferramentas do editor"},"clipboard":{"copy":"Copiar","copyError":"Os axustes de seguranza do seu navegador non permiten que o editor realice automaticamente as tarefas de copia. Use o teclado para iso (Ctrl/Cmd+C).","cut":"Cortar","cutError":"Os axustes de seguranza do seu navegador non permiten que o editor realice automaticamente as tarefas de corte. Use o teclado para iso (Ctrl/Cmd+X).","paste":"Pegar","pasteNotification":"Prema %1 para pegar. O seu navegador non admite pegar co botón da barra de ferramentas ou coa opción do menú contextual.","pasteArea":"Zona de pegado","pasteMsg":"Pegue o contido dentro da área de abaixo e prema Aceptar."},"colorbutton":{"auto":"Automático","bgColorTitle":"Cor do fondo","colors":{"000":"Negro","800000":"Marrón escuro","8B4513":"Ocre","2F4F4F":"Pizarra escuro","008080":"Verde azulado","000080":"Azul mariño","4B0082":"Índigo","696969":"Gris escuro","B22222":"Ladrillo","A52A2A":"Marrón","DAA520":"Dourado escuro","006400":"Verde escuro","40E0D0":"Turquesa","0000CD":"Azul medio","800080":"Púrpura","808080":"Gris","F00":"Vermello","FF8C00":"Laranxa escuro","FFD700":"Dourado","008000":"Verde","0FF":"Cian","00F":"Azul","EE82EE":"Violeta","A9A9A9":"Gris medio","FFA07A":"Salmón claro","FFA500":"Laranxa","FFFF00":"Amarelo","00FF00":"Lima","AFEEEE":"Turquesa pálido","ADD8E6":"Azul claro","DDA0DD":"Violeta pálido","D3D3D3":"Verde claro","FFF0F5":"Lavanda vermello","FAEBD7":"Branco antigo","FFFFE0":"Amarelo claro","F0FFF0":"Mel","F0FFFF":"Azul celeste","F0F8FF":"Azul pálido","E6E6FA":"Lavanda","FFF":"Branco","1ABC9C":"Cian forte","2ECC71":"Esmeralda","3498DB":"Azul brillante","9B59B6":"Amatista","4E5F70":"Azul agrisado","F1C40F":"Amarelo vívido","16A085":"Cian escuro","27AE60":"Esmeralda escuro","2980B9":"Azul forte","8E44AD":"Violeta escuro","2C3E50":"Azul desaturado","F39C12":"Laranxa","E67E22":"Cenoria","E74C3C":"Vermello pálido","ECF0F1":"Plata brillante","95A5A6":"Cian agrisado claro","DDD":"Gris claro","D35400":"Cabaza","C0392B":"Vermello forte","BDC3C7":"Plata","7F8C8D":"Cian agrisado","999":"Gris escuro"},"more":"Máis cores...","panelTitle":"Cores","textColorTitle":"Cor do texto"},"colordialog":{"clear":"Limpar","highlight":"Resaltar","options":"Opcións de cor","selected":"Cor seleccionado","title":"Seleccione unha cor"},"templates":{"button":"Modelos","emptyListMsg":"(Non hai modelos definidos)","insertOption":"Substituír o contido actual","options":"Opcións de modelos","selectPromptMsg":"Seleccione o modelo a abrir no editor","title":"Modelos de contido"},"contextmenu":{"options":"Opcións do menú contextual"},"copyformatting":{"label":"Copy Formatting","notification":{"copied":"Formatting copied","applied":"Formatting applied","canceled":"Formatting canceled","failed":"Formatting failed. You cannot apply styles without copying them first."}},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Título informativo","cssClassInputLabel":"Clases da folla de estilos","edit":"Editar Div","inlineStyleInputLabel":"Estilo de liña","langDirLTRLabel":"Esquerda a dereita (LTR)","langDirLabel":"Dirección de escritura do idioma","langDirRTLLabel":"Dereita a esquerda (RTL)","languageCodeInputLabel":"Código do idioma","remove":"Retirar Div","styleSelectLabel":"Estilo","title":"Crear un contedor Div","toolbar":"Crear un contedor Div"},"elementspath":{"eleLabel":"Ruta dos elementos","eleTitle":"Elemento %1"},"filetools":{"loadError":"Produciuse un erro durante a lectura do ficheiro.","networkError":"Produciuse un erro na rede durante o envío do ficheiro.","httpError404":"Produciuse un erro HTTP durante o envío do ficheiro (404: Ficheiro non atopado).","httpError403":"Produciuse un erro HTTP durante o envío do ficheiro (403: Acceso denegado).","httpError":"Produciuse un erro HTTP durante o envío do ficheiro (erro de estado: %1).","noUrlError":"Non foi definido o URL para o envío.","responseError":"Resposta incorrecta do servidor."},"find":{"find":"Buscar","findOptions":"Buscar opcións","findWhat":"Texto a buscar:","matchCase":"Coincidir Mai./min.","matchCyclic":"Coincidencia cíclica","matchWord":"Coincidencia coa palabra completa","notFoundMsg":"Non se atopou o texto indicado.","replace":"Substituir","replaceAll":"Substituír todo","replaceSuccessMsg":"%1 concorrencia(s) substituída(s).","replaceWith":"Substituír con:","title":"Buscar e substituír"},"fakeobjects":{"anchor":"Ancoraxe","flash":"Animación «Flash»","hiddenfield":"Campo agochado","iframe":"IFrame","unknown":"Obxecto descoñecido"},"flash":{"access":"Acceso de scripts","accessAlways":"Sempre","accessNever":"Nunca","accessSameDomain":"Mesmo dominio","alignAbsBottom":"Abs Inferior","alignAbsMiddle":"Abs centro","alignBaseline":"Liña de base","alignTextTop":"Tope do texto","bgcolor":"Cor do fondo","chkFull":"Permitir pantalla completa","chkLoop":"Repetir","chkMenu":"Activar o menú do «Flash»","chkPlay":"Reprodución auomática","flashvars":"Opcións do «Flash»","hSpace":"Esp. Horiz.","properties":"Propiedades do «Flash»","propertiesTab":"Propiedades","quality":"Calidade","qualityAutoHigh":"Alta, automática","qualityAutoLow":"Baixa, automática","qualityBest":"A mellor","qualityHigh":"Alta","qualityLow":"Baixa","qualityMedium":"Media","scale":"Escalar","scaleAll":"Amosar todo","scaleFit":"Encaixar axustando","scaleNoBorder":"Sen bordo","title":"Propiedades do «Flash»","vSpace":"Esp.Vert.","validateHSpace":"O espazado horizontal debe ser un número.","validateSrc":"O URL non pode estar baleiro.","validateVSpace":"O espazado vertical debe ser un número.","windowMode":"Modo da xanela","windowModeOpaque":"Opaca","windowModeTransparent":"Transparente","windowModeWindow":"Xanela"},"font":{"fontSize":{"label":"Tamaño","voiceLabel":"Tamaño da letra","panelTitle":"Tamaño da letra"},"label":"Tipo de letra","panelTitle":"Nome do tipo de letra","voiceLabel":"Tipo de letra"},"forms":{"button":{"title":"Propiedades do botón","text":"Texto (Valor)","type":"Tipo","typeBtn":"Botón","typeSbm":"Enviar","typeRst":"Restabelever"},"checkboxAndRadio":{"checkboxTitle":"Propiedades da caixa de selección","radioTitle":"Propiedades do botón de opción","value":"Valor","selected":"Seleccionado","required":"Requirido"},"form":{"title":"Propiedades do formulario","menu":"Propiedades do formulario","action":"Acción","method":"Método","encoding":"Codificación"},"hidden":{"title":"Propiedades do campo agochado","name":"Nome","value":"Valor"},"select":{"title":"Propiedades do campo de selección","selectInfo":"Información","opAvail":"Opcións dispoñíbeis","value":"Valor","size":"Tamaño","lines":"liñas","chkMulti":"Permitir múltiplas seleccións","required":"Requirido","opText":"Texto","opValue":"Valor","btnAdd":"Engadir","btnModify":"Modificar","btnUp":"Subir","btnDown":"Baixar","btnSetValue":"Estabelecer como valor seleccionado","btnDelete":"Eliminar"},"textarea":{"title":"Propiedades da área de texto","cols":"Columnas","rows":"Filas"},"textfield":{"title":"Propiedades do campo de texto","name":"Nome","value":"Valor","charWidth":"Largo do carácter","maxChars":"Núm. máximo de caracteres","required":"Requirido","type":"Tipo","typeText":"Texto","typePass":"Contrasinal","typeEmail":"Correo","typeSearch":"Buscar","typeTel":"Número de teléfono","typeUrl":"URL"}},"format":{"label":"Formato","panelTitle":"Formato do parágrafo","tag_address":"Enderezo","tag_div":"Normal (DIV)","tag_h1":"Enacabezado 1","tag_h2":"Encabezado 2","tag_h3":"Encabezado 3","tag_h4":"Encabezado 4","tag_h5":"Encabezado 5","tag_h6":"Encabezado 6","tag_p":"Normal","tag_pre":"Formatado"},"horizontalrule":{"toolbar":"Inserir unha liña horizontal"},"iframe":{"border":"Amosar o bordo do marco","noUrl":"Escriba o enderezo do iframe","scrolling":"Activar as barras de desprazamento","title":"Propiedades do iFrame","toolbar":"IFrame"},"image":{"alt":"Texto alternativo","border":"Bordo","btnUpload":"Enviar ao servidor","button2Img":"Quere converter o botón da imaxe seleccionada nunha imaxe sinxela?","hSpace":"Esp.Horiz.","img2Button":"Quere converter a imaxe seleccionada nun botón de imaxe?","infoTab":"Información da imaxe","linkTab":"Ligazón","lockRatio":"Proporcional","menu":"Propiedades da imaxe","resetSize":"Tamaño orixinal","title":"Propiedades da imaxe","titleButton":"Propiedades do botón de imaxe","upload":"Cargar","urlMissing":"Non se atopa o URL da imaxe.","vSpace":"Esp.Vert.","validateBorder":"O bordo debe ser un número.","validateHSpace":"O espazado horizontal debe ser un número.","validateVSpace":"O espazado vertical debe ser un número."},"indent":{"indent":"Aumentar a sangría","outdent":"Reducir a sangría"},"smiley":{"options":"Opcións de emoticonas","title":"Inserir unha emoticona","toolbar":"Emoticona"},"language":{"button":"Estabelezer o idioma","remove":"Retirar o idioma"},"link":{"acccessKey":"Chave de acceso","advanced":"Avanzado","advisoryContentType":"Tipo de contido informativo","advisoryTitle":"Título","anchor":{"toolbar":"Ancoraxe","menu":"Editar a ancoraxe","title":"Propiedades da ancoraxe","name":"Nome da ancoraxe","errorName":"Escriba o nome da ancoraxe","remove":"Retirar a ancoraxe"},"anchorId":"Polo ID do elemento","anchorName":"Polo nome da ancoraxe","charset":"Codificación do recurso ligado","cssClasses":"Clases da folla de estilos","download":"Forzar a descarga","displayText":"Amosar o texto","emailAddress":"Enderezo de correo","emailBody":"Corpo da mensaxe","emailSubject":"Asunto da mensaxe","id":"ID","info":"Información da ligazón","langCode":"Código do idioma","langDir":"Dirección de escritura do idioma","langDirLTR":"Esquerda a dereita (LTR)","langDirRTL":"Dereita a esquerda (RTL)","menu":"Editar a ligazón","name":"Nome","noAnchors":"(Non hai ancoraxes dispoñíbeis no documento)","noEmail":"Escriba o enderezo de correo","noUrl":"Escriba a ligazón URL","noTel":"Escriba o número de teléfono","other":"<other>","phoneNumber":"Número de teléfono","popupDependent":"Dependente (Netscape)","popupFeatures":"Características da xanela emerxente","popupFullScreen":"Pantalla completa (IE)","popupLeft":"Posición esquerda","popupLocationBar":"Barra de localización","popupMenuBar":"Barra do menú","popupResizable":"Redimensionábel","popupScrollBars":"Barras de desprazamento","popupStatusBar":"Barra de estado","popupToolbar":"Barra de ferramentas","popupTop":"Posición superior","rel":"Relación","selectAnchor":"Seleccionar unha ancoraxe","styles":"Estilo","tabIndex":"Índice de tabulación","target":"Destino","targetFrame":"<marco>","targetFrameName":"Nome do marco de destino","targetPopup":"<xanela emerxente>","targetPopupName":"Nome da xanela emerxente","title":"Ligazón","toAnchor":"Ligar coa ancoraxe no testo","toEmail":"Correo","toUrl":"URL","toPhone":"Teléfono","toolbar":"Ligazón","type":"Tipo de ligazón","unlink":"Eliminar a ligazón","upload":"Enviar"},"list":{"bulletedlist":"Inserir/retirar lista viñeteada","numberedlist":"Inserir/retirar lista numerada"},"liststyle":{"bulletedTitle":"Propiedades da lista viñeteada","circle":"Circulo","decimal":"Decimal (1, 2, 3, etc.)","disc":"Disc","lowerAlpha":"Alfabeto en minúsculas (a, b, c, d, e, etc.)","lowerRoman":"Números romanos en minúsculas (i, ii, iii, iv, v, etc.)","none":"Ningún","notset":"<sen estabelecer>","numberedTitle":"Propiedades da lista numerada","square":"Cadrado","start":"Inicio","type":"Tipo","upperAlpha":"Alfabeto en maiúsculas (A, B, C, D, E, etc.)","upperRoman":"Números romanos en maiúsculas (I, II, III, IV, V, etc.)","validateStartNumber":"O número de inicio da lista debe ser un número enteiro."},"magicline":{"title":"Inserir aquí o parágrafo"},"maximize":{"maximize":"Maximizar","minimize":"Minimizar"},"newpage":{"toolbar":"Páxina nova"},"pagebreak":{"alt":"Quebra de páxina","toolbar":"Inserir quebra de páxina"},"pastetext":{"button":"Pegar como texto simple","pasteNotification":"Prema %1 para pegar. O seu navegador non admite pegar co botón da barra de ferramentas ou coa opción do menú contextual.","title":"Pegar como texto simple"},"pastefromword":{"confirmCleanup":"O texto que quere pegar semella ser copiado desde o Word. Quere depuralo antes de pegalo?","error":"Non foi posíbel depurar os datos pegados por mor dun erro interno","title":"Pegar desde Word","toolbar":"Pegar desde Word"},"preview":{"preview":"Vista previa"},"print":{"toolbar":"Imprimir"},"removeformat":{"toolbar":"Retirar o formato"},"save":{"toolbar":"Gardar"},"selectall":{"toolbar":"Seleccionar todo"},"showblocks":{"toolbar":"Amosar os bloques"},"sourcearea":{"toolbar":"Orixe"},"specialchar":{"options":"Opcións de caracteres especiais","title":"Seleccione un carácter especial","toolbar":"Inserir un carácter especial"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"stylescombo":{"label":"Estilos","panelTitle":"Estilos de formatando","panelTitle1":"Estilos de bloque","panelTitle2":"Estilos de liña","panelTitle3":"Estilos de obxecto"},"table":{"border":"Tamaño do bordo","caption":"Título","cell":{"menu":"Cela","insertBefore":"Inserir a cela á esquerda","insertAfter":"Inserir a cela á dereita","deleteCell":"Eliminar celas","merge":"Combinar celas","mergeRight":"Combinar á dereita","mergeDown":"Combinar cara abaixo","splitHorizontal":"Dividir a cela en horizontal","splitVertical":"Dividir a cela en vertical","title":"Propiedades da cela","cellType":"Tipo de cela","rowSpan":"Expandir filas","colSpan":"Expandir columnas","wordWrap":"Axustar ao contido","hAlign":"Aliñación horizontal","vAlign":"Aliñación vertical","alignBaseline":"Liña de base","bgColor":"Cor do fondo","borderColor":"Cor do bordo","data":"Datos","header":"Cabeceira","yes":"Si","no":"Non","invalidWidth":"O largo da cela debe ser un número.","invalidHeight":"O alto da cela debe ser un número.","invalidRowSpan":"A expansión de filas debe ser un número enteiro.","invalidColSpan":"A expansión de columnas debe ser un número enteiro.","chooseColor":"Escoller"},"cellPad":"Marxe interior da cela","cellSpace":"Marxe entre celas","column":{"menu":"Columna","insertBefore":"Inserir a columna á esquerda","insertAfter":"Inserir a columna á dereita","deleteColumn":"Borrar Columnas"},"columns":"Columnas","deleteTable":"Borrar Táboa","headers":"Cabeceiras","headersBoth":"Ambas","headersColumn":"Primeira columna","headersNone":"Ningún","headersRow":"Primeira fila","invalidBorder":"O tamaño do bordo debe ser un número.","invalidCellPadding":"A marxe interior debe ser un número positivo.","invalidCellSpacing":"A marxe entre celas debe ser un número positivo.","invalidCols":"O número de columnas debe ser un número maior que 0.","invalidHeight":"O alto da táboa debe ser un número.","invalidRows":"O número de filas debe ser un número maior que 0","invalidWidth":"O largo da táboa debe ser un número.","menu":"Propiedades da táboa","row":{"menu":"Fila","insertBefore":"Inserir a fila por riba","insertAfter":"Inserir a fila por baixo","deleteRow":"Eliminar filas"},"rows":"Filas","summary":"Resumo","title":"Propiedades da táboa","toolbar":"Taboa","widthPc":"porcentaxe","widthPx":"píxeles","widthUnit":"unidade do largo"},"undo":{"redo":"Refacer","undo":"Desfacer"},"widget":{"move":"Prema e arrastre para mover","label":"Trebello %1"},"uploadwidget":{"abort":"Envío interrompido polo usuario.","doneOne":"Ficheiro enviado satisfactoriamente.","doneMany":"%1 ficheiros enviados satisfactoriamente.","uploadOne":"Enviando o ficheiro ({percentage}%)...","uploadMany":"Enviando ficheiros, {current} de {max} feito o ({percentage}%)..."},"wsc":{"btnIgnore":"Ignorar","btnIgnoreAll":"Ignorar Todas","btnReplace":"Substituir","btnReplaceAll":"Substituir Todas","btnUndo":"Desfacer","changeTo":"Cambiar a","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"O corrector ortográfico non está instalado. ¿Quere descargalo agora?","manyChanges":"Corrección ortográfica rematada: %1 verbas substituidas","noChanges":"Corrección ortográfica rematada: Non se substituiu nengunha verba","noMispell":"Corrección ortográfica rematada: Non se atoparon erros","noSuggestions":"- Sen candidatos -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Non está no diccionario","oneChange":"Corrección ortográfica rematada: Unha verba substituida","progress":"Corrección ortográfica en progreso...","title":"Spell Checker","toolbar":"Corrección Ortográfica"}};