mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-26 18:31:11 +00:00
Compare commits
109
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
35db2cd89b | ||
|
|
1e87d56482 | ||
|
|
1c90ba78a5 | ||
|
|
bb1e68aa94 | ||
|
|
02f148123d | ||
|
|
7c55b07736 | ||
|
|
156e096a9b | ||
|
|
050ebbb1f4 | ||
|
|
e840187edc | ||
|
|
5be1f8f209 | ||
|
|
02736fee16 | ||
|
|
ffee402494 | ||
|
|
4fd7fdb3fa | ||
|
|
322dc9b6a6 | ||
|
|
6c0f5eee55 | ||
|
|
6a52ea1818 | ||
|
|
b6e4f52c05 | ||
|
|
ba22a87a0b | ||
|
|
542cd18d19 | ||
|
|
57092d5abd | ||
|
|
f529692ac0 | ||
|
|
728cf63c3d | ||
|
|
7580d8ef8c | ||
|
|
d5dbd96dd6 | ||
|
|
0225cadff0 | ||
|
|
c5aedd1cea | ||
|
|
78eef79ffe | ||
|
|
56d2c527cb | ||
|
|
fd23b74b99 | ||
|
|
50dfcff031 | ||
|
|
d322b1a156 | ||
|
|
ee6613a4b8 | ||
|
|
e9d421050e | ||
|
|
5e6895ddd2 | ||
|
|
6dbdb1d07e | ||
|
|
117ed0060d | ||
|
|
c5d2944ee0 | ||
|
|
5005ecc88b | ||
|
|
7be7f07551 | ||
|
|
54fe28ab08 | ||
|
|
b422636740 | ||
|
|
c806a09c7c | ||
|
|
1a8f39c5f7 | ||
|
|
9421e7fa9b | ||
|
|
af9fd10d7a | ||
|
|
74aed7a2bb | ||
|
|
8bff9aaf32 | ||
|
|
83723e2a7b | ||
|
|
e2fd46f82c | ||
|
|
b216813bf0 | ||
|
|
b3296fa199 | ||
|
|
6d9a9eeb04 | ||
|
|
8e243faa3a | ||
|
|
b5412221b6 | ||
|
|
f444176df8 | ||
|
|
a684c6daf6 | ||
|
|
7f10c73dce | ||
|
|
945520b827 | ||
|
|
b281c91b99 | ||
|
|
b57d7a67e2 | ||
|
|
18ca06ec6b | ||
|
|
32a4e0fb37 | ||
|
|
f9ed5843c0 | ||
|
|
7c73739e1a | ||
|
|
aa4e28b2b5 | ||
|
|
408db4b3b0 | ||
|
|
169189498e | ||
|
|
72784cfe91 | ||
|
|
ef4815b26c | ||
|
|
b97ca3c0ac | ||
|
|
f73566dd2b | ||
|
|
7fbfb7ba87 | ||
|
|
23bd320076 | ||
|
|
a10d9e77cf | ||
|
|
1d023216f2 | ||
|
|
dc2796209f | ||
|
|
194ef34080 | ||
|
|
4e1caa39eb | ||
|
|
38f5c84e7f | ||
|
|
4d8ce0e8a7 | ||
|
|
38cb1ae8d1 | ||
|
|
32f82b64e7 | ||
|
|
e56d7aeb80 | ||
|
|
4758dc6c68 | ||
|
|
596cbb8b2d | ||
|
|
6312caaf13 | ||
|
|
79dcace1ac | ||
|
|
8dfc7a14b9 | ||
|
|
1534268183 | ||
|
|
501af81ba9 | ||
|
|
16c44940d2 | ||
|
|
acb0be6ed9 | ||
|
|
14b05a4d8e | ||
|
|
71c4eebfc9 | ||
|
|
00f558aa18 | ||
|
|
3145f28bb7 | ||
|
|
e00906a833 | ||
|
|
56c28fc102 | ||
|
|
0013c1da34 | ||
|
|
5afc6ae9b2 | ||
|
|
adb0ca3dc3 | ||
|
|
08128911e3 | ||
|
|
0a7ac3f2ac | ||
|
|
d865e9e6e1 | ||
|
|
7aaeea2bd2 | ||
|
|
9e635925c8 | ||
|
|
ec22a58c40 | ||
|
|
a636243ec0 | ||
|
|
b9e1db41a0 |
@@ -32,9 +32,17 @@ body:
|
|||||||
attributes:
|
attributes:
|
||||||
label: OrcaSlicer Version
|
label: OrcaSlicer Version
|
||||||
description: Which version of Orca Slicer are you running? You can see the full version in `Help` -> `About Orca Slicer`.
|
description: Which version of Orca Slicer are you running? You can see the full version in `Help` -> `About Orca Slicer`.
|
||||||
placeholder: e.g. 1.9.0
|
placeholder: e.g. 2.5.0
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
- type: input
|
||||||
|
id: working_version
|
||||||
|
attributes:
|
||||||
|
label: Regression compared to a previous version
|
||||||
|
description: Did it work in a previous version?
|
||||||
|
placeholder: e.g. 2.3.2
|
||||||
|
validations:
|
||||||
|
required: false
|
||||||
- type: dropdown
|
- type: dropdown
|
||||||
id: os_type
|
id: os_type
|
||||||
attributes:
|
attributes:
|
||||||
|
|||||||
@@ -1,8 +1,12 @@
|
|||||||
name: Check profiles
|
name: Check profiles
|
||||||
on:
|
on:
|
||||||
pull_request:
|
pull_request:
|
||||||
|
# release/* is included because pr-merge-bot.yml lets delegates merge into
|
||||||
|
# it, and it gates on this workflow's result. Without it a delegated merge
|
||||||
|
# into a release branch would run no profile validation at all.
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
- release/*
|
||||||
paths:
|
paths:
|
||||||
- 'resources/profiles/**'
|
- 'resources/profiles/**'
|
||||||
- ".github/workflows/check_profiles.yml"
|
- ".github/workflows/check_profiles.yml"
|
||||||
@@ -20,6 +24,8 @@ permissions:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
check_profiles:
|
check_profiles:
|
||||||
|
# This job name is the check-run name pr-merge-bot.yml requires before a
|
||||||
|
# delegated merge. Renaming it silently disables that gate.
|
||||||
name: Check profiles
|
name: Check profiles
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
@@ -0,0 +1,510 @@
|
|||||||
|
name: PR Merge Bot
|
||||||
|
|
||||||
|
# Merges a pull request on request from a delegated vendor profile maintainer.
|
||||||
|
# The merge is performed by this workflow's GITHUB_TOKEN, so a delegate needs no
|
||||||
|
# repository access.
|
||||||
|
#
|
||||||
|
# Commands, posted as a comment on the PR:
|
||||||
|
# /bot merge squash-merge the PR
|
||||||
|
# /bot merge --dry-run report the verdict without merging
|
||||||
|
#
|
||||||
|
# Merges only when the commenter holds a grant covering every changed path, the
|
||||||
|
# PR targets main or release/*, and CI is green on the head commit. Otherwise it
|
||||||
|
# comments naming the files that fell outside the grant.
|
||||||
|
#
|
||||||
|
# Grants come from the FOLDER_MERGERS variable in the `merge-delegation`
|
||||||
|
# environment: one per line, `account: path`, `#` comments and blank lines
|
||||||
|
# allowed. Paths may contain spaces. A vendor takes two grants, the folder and
|
||||||
|
# its sibling bundle JSON:
|
||||||
|
#
|
||||||
|
# # Acme profiles
|
||||||
|
# vendor-maintainer: resources/profiles/Acme/
|
||||||
|
# vendor-maintainer: resources/profiles/Acme.json
|
||||||
|
#
|
||||||
|
# Edit the grant list (environment scope, so admin only):
|
||||||
|
# gh variable set FOLDER_MERGERS --env merge-delegation --body "$(cat folder-mergers.txt)"
|
||||||
|
# gh variable get FOLDER_MERGERS --env merge-delegation
|
||||||
|
#
|
||||||
|
# Stop all merging without touching this file:
|
||||||
|
# gh variable set MERGE_BOT_DRY_RUN --body true
|
||||||
|
|
||||||
|
on:
|
||||||
|
issue_comment:
|
||||||
|
types:
|
||||||
|
- created
|
||||||
|
|
||||||
|
# One merge attempt per PR at a time, so two quick comments cannot race.
|
||||||
|
concurrency:
|
||||||
|
group: ${{ github.workflow }}-${{ github.event.issue.number }}
|
||||||
|
cancel-in-progress: false
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
merge:
|
||||||
|
# Skips the job unless a PR comment mentions the command.
|
||||||
|
if: >-
|
||||||
|
github.repository == 'OrcaSlicer/OrcaSlicer'
|
||||||
|
&& github.event.issue.pull_request != null
|
||||||
|
&& contains(github.event.comment.body, '/bot merge')
|
||||||
|
permissions:
|
||||||
|
contents: write # pulls.merge
|
||||||
|
pull-requests: write # pulls.merge
|
||||||
|
issues: write # feedback comment + reactions
|
||||||
|
actions: write # re-dispatch build_all.yml after the merge
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
timeout-minutes: 10
|
||||||
|
# Supplies FOLDER_MERGERS. Must carry no protection rules, or every
|
||||||
|
# delegated merge would wait for a human reviewer.
|
||||||
|
environment: merge-delegation
|
||||||
|
steps:
|
||||||
|
- name: Merge PR on behalf of a folder delegate
|
||||||
|
uses: actions/github-script@v9
|
||||||
|
env:
|
||||||
|
# Read as env vars, never interpolated into the script body.
|
||||||
|
FOLDER_MERGERS: ${{ vars.FOLDER_MERGERS }}
|
||||||
|
MERGE_BOT_DRY_RUN: ${{ vars.MERGE_BOT_DRY_RUN }}
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
function isPermissionDenied(error) {
|
||||||
|
return error && error.status === 403 && /Resource not accessible by integration/i.test(error.message || '');
|
||||||
|
}
|
||||||
|
|
||||||
|
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
||||||
|
|
||||||
|
const MARKER = '<!-- pr-merge-bot -->';
|
||||||
|
// No grant may reach outside this root.
|
||||||
|
const DELEGATABLE_ROOT = 'resources/profiles/';
|
||||||
|
const ALLOWED_BASE_BRANCH = /^(?:main|release\/.+)$/;
|
||||||
|
const MERGE_METHOD = 'squash';
|
||||||
|
const REQUIRED_CHECK = 'Check profiles'; // job name in check_profiles.yml
|
||||||
|
const MAX_CHANGED_FILES = 500; // policy cap, well under listFiles' 3000
|
||||||
|
const LISTFILES_CAP = 3000;
|
||||||
|
const MAX_REPORTED_FILES = 12;
|
||||||
|
const MERGEABLE_ATTEMPTS = 5;
|
||||||
|
const MERGEABLE_DELAY_MS = 2000;
|
||||||
|
const OK_CONCLUSIONS = new Set(['success', 'neutral', 'skipped']);
|
||||||
|
const REGULAR_FILE_MODES = new Set(['100644', '100755']);
|
||||||
|
|
||||||
|
// Paths refused whatever the grants say. Checked before grants, so
|
||||||
|
// delegating a new root means removing it from this list too.
|
||||||
|
const DENIED_PATTERNS = [
|
||||||
|
/^\.github\//,
|
||||||
|
/(^|\/)\.git(attributes|modules|ignore|config)$/,
|
||||||
|
/^(?:src|deps|deps_src|tests|tools|cmake|sandboxes|scripts|docs?|localization|bbl)\//,
|
||||||
|
/(^|\/)cmakelists\.txt$/,
|
||||||
|
/\.cmake$/,
|
||||||
|
/^build_[^/]*\.(?:sh|bat)$/,
|
||||||
|
/^version\.inc$/,
|
||||||
|
// Executables, including those inside the delegatable root.
|
||||||
|
/\.(?:sh|bash|bat|cmd|ps1|py|js|mjs|cjs|ts|rb|pl|php)$/
|
||||||
|
];
|
||||||
|
|
||||||
|
function parseGrants(raw) {
|
||||||
|
// GitHub login: 1-39 chars, alphanumerics with single interior hyphens.
|
||||||
|
const loginPattern = /^[A-Za-z0-9](?:[A-Za-z0-9]|-(?=[A-Za-z0-9])){0,38}$/;
|
||||||
|
const grantsByLogin = new Map();
|
||||||
|
const problems = [];
|
||||||
|
|
||||||
|
(raw || '').split(/\r?\n/).forEach((rawLine, index) => {
|
||||||
|
const line = rawLine.trim();
|
||||||
|
if (!line || line.startsWith('#')) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Splits on the first colon only, so paths may contain ':' and spaces.
|
||||||
|
const separator = line.indexOf(':');
|
||||||
|
if (separator === -1) {
|
||||||
|
problems.push(`line ${index + 1}: expected \`account: path\``);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const login = line.slice(0, separator).trim().replace(/^@/, '');
|
||||||
|
const path = line.slice(separator + 1).trim().replace(/\/+$/, '');
|
||||||
|
|
||||||
|
if (!loginPattern.test(login)) {
|
||||||
|
problems.push(`line ${index + 1}: \`${login}\` is not a valid GitHub account name`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (/[\\*?\u0000-\u001f\u007f]/.test(path) || path.split('/').includes('..') || path.includes('//')) {
|
||||||
|
problems.push(`line ${index + 1}: invalid path (no globs, \`..\`, \`//\`, backslashes or control characters)`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Rejects anything outside the root, and the bare root itself.
|
||||||
|
if (!path.startsWith(DELEGATABLE_ROOT) || path.length <= DELEGATABLE_ROOT.length) {
|
||||||
|
problems.push(`line ${index + 1}: \`${path}\` is not inside \`${DELEGATABLE_ROOT}\``);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const key = login.toLowerCase();
|
||||||
|
grantsByLogin.set(key, (grantsByLogin.get(key) || []).concat(path));
|
||||||
|
});
|
||||||
|
|
||||||
|
return { grantsByLogin, problems };
|
||||||
|
}
|
||||||
|
|
||||||
|
function isDenied(path) {
|
||||||
|
if (/[\\\u0000-\u001f\u007f]/.test(path) || path.startsWith('/') || path.split('/').includes('..')) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
const normalized = path.normalize('NFKC').toLowerCase();
|
||||||
|
return DENIED_PATTERNS.some((pattern) => pattern.test(normalized));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Byte-exact match on directory boundaries, so a grant of
|
||||||
|
// `.../Acme` covers neither `.../Acme Labs/x.json` nor `.../Acme.json`.
|
||||||
|
function isGranted(path, grants) {
|
||||||
|
return grants.some((grant) => path === grant || path.startsWith(`${grant}/`));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Both endpoints of a rename; both must satisfy the grant.
|
||||||
|
function pathsFor(file) {
|
||||||
|
return [file.filename, file.previous_filename].filter(Boolean);
|
||||||
|
}
|
||||||
|
|
||||||
|
function formatList(items) {
|
||||||
|
const unique = [...new Set(items)];
|
||||||
|
const shown = unique.slice(0, MAX_REPORTED_FILES).map((item) => `- \`${item}\``);
|
||||||
|
if (unique.length > MAX_REPORTED_FILES) {
|
||||||
|
shown.push(`- …and ${unique.length - MAX_REPORTED_FILES} more`);
|
||||||
|
}
|
||||||
|
return shown.join('\n');
|
||||||
|
}
|
||||||
|
|
||||||
|
const { owner, repo } = context.repo;
|
||||||
|
const issue = context.payload.issue;
|
||||||
|
const comment = context.payload.comment;
|
||||||
|
|
||||||
|
if (!issue.pull_request) {
|
||||||
|
core.info('Ignoring comment that is not on a pull request.');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Ignores a comment whose sender is not its author.
|
||||||
|
if (context.payload.action !== 'created' || context.payload.sender.login !== comment.user.login) {
|
||||||
|
core.warning('Ignoring comment whose sender does not match its author.');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (comment.user.type !== 'User') {
|
||||||
|
core.info('Ignoring bot-authored command.');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const commandLine = (comment.body || '')
|
||||||
|
.split('\n')
|
||||||
|
.map((line) => line.trim())
|
||||||
|
.find((line) => /^\/bot\s+merge\b/i.test(line));
|
||||||
|
|
||||||
|
if (!commandLine) {
|
||||||
|
core.info('No /bot merge command found.');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const commenter = comment.user.login;
|
||||||
|
const { grantsByLogin, problems } = parseGrants(process.env.FOLDER_MERGERS);
|
||||||
|
const grants = grantsByLogin.get(commenter.toLowerCase()) || [];
|
||||||
|
|
||||||
|
for (const problem of problems) {
|
||||||
|
core.warning(`FOLDER_MERGERS ${problem}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Says nothing to accounts with no grant, so it cannot be used to spam.
|
||||||
|
if (!grants.length) {
|
||||||
|
core.info(`Ignoring /bot merge from @${commenter}: not listed in FOLDER_MERGERS.`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Warns instead of failing when the token cannot post feedback.
|
||||||
|
async function bestEffort(call, warning) {
|
||||||
|
try {
|
||||||
|
await call();
|
||||||
|
} catch (error) {
|
||||||
|
if (isPermissionDenied(error)) {
|
||||||
|
core.warning(warning);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
throw error;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const react = (content) => bestEffort(
|
||||||
|
() => github.rest.reactions.createForIssueComment({ owner, repo, comment_id: comment.id, content }),
|
||||||
|
`Cannot add the "${content}" reaction because the token cannot write.`);
|
||||||
|
|
||||||
|
const say = (body) => bestEffort(
|
||||||
|
() => github.rest.issues.createComment({ owner, repo, issue_number: issue.number, body: `${MARKER}\n${body}` }),
|
||||||
|
'Cannot post a comment because the token cannot write comments.');
|
||||||
|
|
||||||
|
// Declines the command: warns in the log, reacts, explains on the PR.
|
||||||
|
async function refuse(reason) {
|
||||||
|
const configNote = problems.length
|
||||||
|
? `\n\n\`FOLDER_MERGERS\` also has problems a maintainer needs to fix:\n${problems.map((problem) => `- ${problem}`).join('\n')}`
|
||||||
|
: '';
|
||||||
|
const grantsNote = `\n\n<details><summary>Your current grants</summary>\n\n${formatList(grants)}\n\n</details>`;
|
||||||
|
|
||||||
|
core.warning(`Refused /bot merge from @${commenter}: ${reason}`);
|
||||||
|
await react('-1');
|
||||||
|
await say(`@${commenter} I can't merge this PR: ${reason}${configNote}${grantsNote}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
await react('eyes');
|
||||||
|
|
||||||
|
const args = (commandLine.match(/^\/bot\s+merge\s*(.*)$/i)[1] || '').trim().split(/\s+/).filter(Boolean);
|
||||||
|
const unknownArgs = args.filter((arg) => arg.toLowerCase() !== '--dry-run');
|
||||||
|
const dryRun = String(process.env.MERGE_BOT_DRY_RUN || '').toLowerCase() === 'true'
|
||||||
|
|| unknownArgs.length !== args.length;
|
||||||
|
|
||||||
|
if (unknownArgs.length) {
|
||||||
|
return refuse(
|
||||||
|
`I don't understand ${unknownArgs.map((arg) => `\`${arg}\``).join(', ')}. ` +
|
||||||
|
'Usage: `/bot merge` or `/bot merge --dry-run`.'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Refuses everything while the grant list is malformed.
|
||||||
|
if (problems.length) {
|
||||||
|
return refuse(
|
||||||
|
'the `FOLDER_MERGERS` grant list has malformed lines, so I refuse every merge until it is fixed.'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
let { data: pr } = await github.rest.pulls.get({
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
pull_number: issue.number
|
||||||
|
});
|
||||||
|
|
||||||
|
if (pr.merged) {
|
||||||
|
return refuse('it is already merged.');
|
||||||
|
}
|
||||||
|
if (pr.state !== 'open') {
|
||||||
|
return refuse(`its state is \`${pr.state}\`, not \`open\`.`);
|
||||||
|
}
|
||||||
|
if (pr.draft) {
|
||||||
|
return refuse('it is still a draft. Mark it ready for review first.');
|
||||||
|
}
|
||||||
|
if (!ALLOWED_BASE_BRANCH.test(pr.base.ref)) {
|
||||||
|
return refuse(`it targets \`${pr.base.ref}\`. Delegated merges are only allowed into \`main\` and \`release/*\`.`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ---- folder scope ----
|
||||||
|
const files = await github.paginate(github.rest.pulls.listFiles, {
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
pull_number: pr.number,
|
||||||
|
per_page: 100
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!files.length) {
|
||||||
|
return refuse('it changes no files, so there is nothing to verify or merge.');
|
||||||
|
}
|
||||||
|
// Refuses when the file list is truncated or disagrees with the PR.
|
||||||
|
if (files.length >= LISTFILES_CAP || files.length !== pr.changed_files) {
|
||||||
|
return refuse(
|
||||||
|
`it reports ${pr.changed_files} changed files but the API listed ${files.length}, ` +
|
||||||
|
'so the file list is truncated and I cannot verify the folder scope. A maintainer must merge this one.'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (pr.changed_files > MAX_CHANGED_FILES) {
|
||||||
|
return refuse(`it changes ${pr.changed_files} files; delegated merges are capped at ${MAX_CHANGED_FILES}.`);
|
||||||
|
}
|
||||||
|
|
||||||
|
const deniedFiles = [];
|
||||||
|
const outsideFiles = [];
|
||||||
|
|
||||||
|
for (const file of files) {
|
||||||
|
for (const path of pathsFor(file)) {
|
||||||
|
if (isDenied(path)) {
|
||||||
|
deniedFiles.push(path);
|
||||||
|
} else if (!isGranted(path, grants)) {
|
||||||
|
outsideFiles.push(path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (deniedFiles.length) {
|
||||||
|
core.error(`@${commenter} attempted a delegated merge touching protected paths: ${deniedFiles.join(', ')}`);
|
||||||
|
return refuse(
|
||||||
|
'it touches paths that are never delegatable, whatever the grants say ' +
|
||||||
|
`(CI, build, scripts or executable files):\n\n${formatList(deniedFiles)}\n\nA maintainer should look at this before it goes any further.`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (outsideFiles.length) {
|
||||||
|
return refuse(
|
||||||
|
`${outsideFiles.length} changed path(s) fall outside your grants:\n\n${formatList(outsideFiles)}\n\n` +
|
||||||
|
'A vendor needs both grants: `resources/profiles/<Vendor>/` **and** `resources/profiles/<Vendor>.json`.'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ---- file modes: rejects symlinks and submodules ----
|
||||||
|
// Fetches the delegatable subtree only; listFiles does not report modes.
|
||||||
|
const headSha = pr.head.sha;
|
||||||
|
const { data: tree } = await github.rest.git.getTree({
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
tree_sha: `${headSha}:${DELEGATABLE_ROOT.replace(/\/$/, '')}`,
|
||||||
|
recursive: 'true'
|
||||||
|
});
|
||||||
|
|
||||||
|
if (tree.truncated) {
|
||||||
|
return refuse('the git tree is too large to verify file modes. A maintainer must merge this one.');
|
||||||
|
}
|
||||||
|
|
||||||
|
// Entry paths are subtree-relative.
|
||||||
|
const modesByPath = new Map(tree.tree.map((entry) => [`${DELEGATABLE_ROOT}${entry.path}`, entry.mode]));
|
||||||
|
const irregularFiles = files
|
||||||
|
.filter((file) => file.status !== 'removed')
|
||||||
|
.map((file) => [file.filename, modesByPath.get(file.filename)])
|
||||||
|
.filter(([, mode]) => !REGULAR_FILE_MODES.has(mode))
|
||||||
|
.map(([path, mode]) => `${path} (mode ${mode || 'missing'})`);
|
||||||
|
|
||||||
|
if (irregularFiles.length) {
|
||||||
|
core.error(`@${commenter} attempted a delegated merge with non-regular files: ${irregularFiles.join(', ')}`);
|
||||||
|
return refuse(
|
||||||
|
`it adds symlinks, submodules or files I cannot verify:\n\n${formatList(irregularFiles)}\n\nA maintainer should look at this before it goes any further.`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ---- mergeability: waits for GitHub to compute it ----
|
||||||
|
for (let attempt = 0; pr.mergeable === null && attempt < MERGEABLE_ATTEMPTS; attempt += 1) {
|
||||||
|
core.info(`Mergeability not computed yet; retrying in ${MERGEABLE_DELAY_MS}ms.`);
|
||||||
|
await sleep(MERGEABLE_DELAY_MS);
|
||||||
|
({ data: pr } = await github.rest.pulls.get({
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
pull_number: pr.number
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pr.mergeable === null) {
|
||||||
|
return refuse('GitHub is still working out whether it can be merged. Try `/bot merge` again in a minute.');
|
||||||
|
}
|
||||||
|
if (!pr.mergeable) {
|
||||||
|
return refuse(`it is not mergeable (\`${pr.mergeable_state}\`) - most likely a conflict with \`${pr.base.ref}\`.`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ---- CI on the head commit ----
|
||||||
|
const checkRuns = await github.paginate(github.rest.checks.listForRef, {
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
ref: headSha,
|
||||||
|
filter: 'latest',
|
||||||
|
per_page: 100
|
||||||
|
});
|
||||||
|
const pendingChecks = checkRuns.filter((run) => run.status !== 'completed');
|
||||||
|
const failedChecks = checkRuns.filter((run) => run.status === 'completed' && !OK_CONCLUSIONS.has(run.conclusion));
|
||||||
|
|
||||||
|
if (pendingChecks.length) {
|
||||||
|
return refuse(
|
||||||
|
`${pendingChecks.length} check(s) are still running on \`${headSha.slice(0, 7)}\`:\n\n` +
|
||||||
|
`${formatList(pendingChecks.map((run) => run.name))}\n\nRe-run \`/bot merge\` once they finish.`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (failedChecks.length) {
|
||||||
|
return refuse(
|
||||||
|
`${failedChecks.length} check(s) are not green on \`${headSha.slice(0, 7)}\`:\n\n` +
|
||||||
|
formatList(failedChecks.map((run) => `${run.name} (${run.conclusion})`))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
const { data: combined } = await github.rest.repos.getCombinedStatusForRef({
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
ref: headSha
|
||||||
|
});
|
||||||
|
// total_count 0 only means there are no legacy statuses.
|
||||||
|
if (combined.total_count > 0 && combined.state !== 'success') {
|
||||||
|
return refuse(
|
||||||
|
`the combined commit status on \`${headSha.slice(0, 7)}\` is \`${combined.state}\`:\n\n` +
|
||||||
|
formatList(combined.statuses.filter((status) => status.state !== 'success')
|
||||||
|
.map((status) => `${status.context} (${status.state})`))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Requires the check to have actually run, not merely to have not failed.
|
||||||
|
const requiredCheck = checkRuns.find((run) =>
|
||||||
|
run.name === REQUIRED_CHECK &&
|
||||||
|
run.app && run.app.slug === 'github-actions' &&
|
||||||
|
run.status === 'completed' && OK_CONCLUSIONS.has(run.conclusion));
|
||||||
|
|
||||||
|
if (!requiredCheck) {
|
||||||
|
return refuse(
|
||||||
|
`the \`${REQUIRED_CHECK}\` check has not succeeded on \`${headSha.slice(0, 7)}\`. ` +
|
||||||
|
'If it never ran, a maintainer needs to approve the workflow run first.'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
const scopeSummary = `${files.length} file(s), all within:\n${formatList(grants)}`;
|
||||||
|
|
||||||
|
if (dryRun) {
|
||||||
|
core.info('Dry run: every gate passed, not merging.');
|
||||||
|
await react('+1');
|
||||||
|
await say(
|
||||||
|
`@${commenter} **dry run** - this PR passes every gate and I *would* squash-merge it ` +
|
||||||
|
`at \`${headSha.slice(0, 7)}\`.\n\nVerified scope: ${scopeSummary}`
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ---- re-validate, then merge ----
|
||||||
|
// An unchanged head SHA means the verified file list still holds.
|
||||||
|
const { data: fresh } = await github.rest.pulls.get({
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
pull_number: pr.number
|
||||||
|
});
|
||||||
|
|
||||||
|
if (fresh.head.sha !== headSha || fresh.base.ref !== pr.base.ref || fresh.state !== 'open' || fresh.merged || fresh.draft) {
|
||||||
|
return refuse('it changed while I was checking it. Nothing was merged - re-run `/bot merge`.');
|
||||||
|
}
|
||||||
|
|
||||||
|
let merged;
|
||||||
|
try {
|
||||||
|
// Pinned to the verified head: a moved head fails with 409.
|
||||||
|
({ data: merged } = await github.rest.pulls.merge({
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
pull_number: pr.number,
|
||||||
|
sha: headSha,
|
||||||
|
merge_method: MERGE_METHOD,
|
||||||
|
commit_title: `${pr.title} (#${pr.number})`,
|
||||||
|
commit_message:
|
||||||
|
`Merged by /bot merge on behalf of @${commenter} (id ${comment.user.id}).\n` +
|
||||||
|
`Grants: ${grants.join(', ')}\nHead: ${headSha}\n`
|
||||||
|
}));
|
||||||
|
} catch (error) {
|
||||||
|
const hint = {
|
||||||
|
403: 'the workflow token cannot write to the repository.',
|
||||||
|
405: 'GitHub refused the merge - branch protection, a required review or check, a newly added CODEOWNERS file, or squash merging being disabled.',
|
||||||
|
409: `the head commit moved after I verified it (was \`${headSha.slice(0, 7)}\`).`,
|
||||||
|
422: 'GitHub rejected the merge as invalid.'
|
||||||
|
}[error.status];
|
||||||
|
|
||||||
|
if (!hint) {
|
||||||
|
throw error;
|
||||||
|
}
|
||||||
|
|
||||||
|
await refuse(`${hint}\n\n> ${error.message}\n\nNothing was merged.`);
|
||||||
|
core.setFailed(`Delegated merge failed: ${error.status} ${error.message}`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
core.info(`Merged #${pr.number} as ${merged.sha}.`);
|
||||||
|
await react('rocket');
|
||||||
|
await say(
|
||||||
|
`@${commenter} squash-merged into \`${pr.base.ref}\` as ${merged.sha}.\n\nVerified scope: ${scopeSummary}`
|
||||||
|
);
|
||||||
|
|
||||||
|
// ---- re-kick the build ----
|
||||||
|
// A GITHUB_TOKEN merge fires no push event, so build_all.yml would
|
||||||
|
// otherwise never see these files.
|
||||||
|
try {
|
||||||
|
await github.rest.actions.createWorkflowDispatch({
|
||||||
|
owner,
|
||||||
|
repo,
|
||||||
|
workflow_id: 'build_all.yml',
|
||||||
|
ref: pr.base.ref
|
||||||
|
});
|
||||||
|
core.info(`Dispatched build_all.yml on ${pr.base.ref}.`);
|
||||||
|
} catch (error) {
|
||||||
|
core.warning(`Merged successfully, but dispatching build_all.yml failed: ${error.message}`);
|
||||||
|
}
|
||||||
@@ -56,6 +56,7 @@ ctest --test-dir ./tests/fff_print
|
|||||||
- Add helper functions or utilities only when existing code cannot reasonably be reused. Avoid duplication.
|
- Add helper functions or utilities only when existing code cannot reasonably be reused. Avoid duplication.
|
||||||
- Keep code concise and clear. Manually simplify AI generated bloated codes before review.
|
- Keep code concise and clear. Manually simplify AI generated bloated codes before review.
|
||||||
- Include targeted tests or documented verification for behavior changes, especially in slicing logic, profiles, formats, and GUI defaults.
|
- Include targeted tests or documented verification for behavior changes, especially in slicing logic, profiles, formats, and GUI defaults.
|
||||||
|
- For profile changes (`resources/profiles/<Vendor>/**`), check that `version` in the sibling `resources/profiles/<Vendor>.json` was bumped.
|
||||||
- For translation changes (`localization/i18n/**/*.po`), check that recurring terms match the [Localization glossary](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/guides/localization_glossary.md) for that language.
|
- For translation changes (`localization/i18n/**/*.po`), check that recurring terms match the [Localization glossary](https://github.com/OrcaSlicer/OrcaSlicer_WIKI/blob/main/guides/localization_glossary.md) for that language.
|
||||||
|
|
||||||
## Localization & translations
|
## Localization & translations
|
||||||
|
|||||||
@@ -152,7 +152,7 @@ echo on
|
|||||||
set CMAKE_POLICY_VERSION_MINIMUM=3.5
|
set CMAKE_POLICY_VERSION_MINIMUM=3.5
|
||||||
if "%USE_NINJA%"=="1" (
|
if "%USE_NINJA%"=="1" (
|
||||||
cmake .. -G %CMAKE_GENERATOR% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type%
|
cmake .. -G %CMAKE_GENERATOR% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type%
|
||||||
cmake --build . --config %build_type% --target ALL_BUILD
|
cmake --build . --config %build_type% --target all
|
||||||
) else (
|
) else (
|
||||||
cmake .. -G %CMAKE_GENERATOR% -A %arch% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type%
|
cmake .. -G %CMAKE_GENERATOR% -A %arch% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type%
|
||||||
cmake --build . --config %build_type% --target ALL_BUILD -- -m
|
cmake --build . --config %build_type% --target ALL_BUILD -- -m
|
||||||
|
|||||||
Vendored
+98
@@ -0,0 +1,98 @@
|
|||||||
|
# Copyright (c) 2020-2021 Intel Corporation
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
set(TBB_LINK_DEF_FILE_FLAG ${CMAKE_LINK_DEF_FILE_FLAG})
|
||||||
|
set(TBB_DEF_FILE_PREFIX win${TBB_ARCH})
|
||||||
|
|
||||||
|
# Workaround for CMake issue https://gitlab.kitware.com/cmake/cmake/issues/18317.
|
||||||
|
# TODO: consider use of CMP0092 CMake policy.
|
||||||
|
string(REGEX REPLACE "/W[0-4]" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
||||||
|
|
||||||
|
set(TBB_WARNING_LEVEL $<$<BOOL:${TBB_STRICT}>:/W4> $<$<BOOL:${TBB_STRICT}>:/WX>)
|
||||||
|
|
||||||
|
# Warning suppression C4324: structure was padded due to alignment specifier
|
||||||
|
set(TBB_WARNING_SUPPRESS /wd4324)
|
||||||
|
set(TBB_TEST_COMPILE_FLAGS /bigobj)
|
||||||
|
|
||||||
|
if (MSVC_VERSION LESS_EQUAL 1900)
|
||||||
|
# Warning suppression C4503 for VS2015 and earlier:
|
||||||
|
# decorated name length exceeded, name was truncated.
|
||||||
|
# More info can be found at
|
||||||
|
# https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4503
|
||||||
|
set(TBB_TEST_COMPILE_FLAGS ${TBB_TEST_COMPILE_FLAGS} /wd4503)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(TBB_LIB_COMPILE_FLAGS -D_CRT_SECURE_NO_WARNINGS /GS)
|
||||||
|
set(TBB_COMMON_COMPILE_FLAGS /volatile:iso /FS /EHsc)
|
||||||
|
|
||||||
|
# Ignore /WX set through add_compile_options() or added to CMAKE_CXX_FLAGS if TBB_STRICT is disabled.
|
||||||
|
if (NOT TBB_STRICT AND COMMAND tbb_remove_compile_flag)
|
||||||
|
tbb_remove_compile_flag(/WX)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (WINDOWS_STORE OR TBB_WINDOWS_DRIVER)
|
||||||
|
set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} /D_WIN32_WINNT=0x0A00)
|
||||||
|
set(TBB_COMMON_LINK_FLAGS -NODEFAULTLIB:kernel32.lib -INCREMENTAL:NO)
|
||||||
|
set(TBB_COMMON_LINK_LIBS OneCore.lib)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (WINDOWS_STORE)
|
||||||
|
if (NOT CMAKE_SYSTEM_VERSION EQUAL 10.0)
|
||||||
|
message(FATAL_ERROR "CMAKE_SYSTEM_VERSION must be equal to 10.0")
|
||||||
|
endif()
|
||||||
|
set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} /ZW /ZW:nostdlib)
|
||||||
|
# CMake define this extra lib, remove it for this build type
|
||||||
|
string(REGEX REPLACE "WindowsApp.lib" "" CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_CXX_STANDARD_LIBRARIES}")
|
||||||
|
|
||||||
|
if (TBB_NO_APPCONTAINER)
|
||||||
|
set(TBB_LIB_LINK_FLAGS ${TBB_LIB_LINK_FLAGS} -APPCONTAINER:NO)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (TBB_WINDOWS_DRIVER)
|
||||||
|
# Since this is universal driver disable this variable
|
||||||
|
set(CMAKE_SYSTEM_PROCESSOR "")
|
||||||
|
# CMake define list additional libs, remove it for this build type
|
||||||
|
set(CMAKE_CXX_STANDARD_LIBRARIES "")
|
||||||
|
set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} /D _UNICODE /DUNICODE /DWINAPI_FAMILY=WINAPI_FAMILY_APP /D__WRL_NO_DEFAULT_LIB__)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (NOT DEFINED TBB_ENABLE_IPO)
|
||||||
|
if (DEFINED CMAKE_INTERPROCEDURAL_OPTIMIZATION)
|
||||||
|
set(TBB_ENABLE_IPO ${CMAKE_INTERPROCEDURAL_OPTIMIZATION})
|
||||||
|
else()
|
||||||
|
set(TBB_ENABLE_IPO ON)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (TBB_ENABLE_IPO)
|
||||||
|
if (CMAKE_CXX_COMPILER_ID MATCHES "(Clang|IntelLLVM)")
|
||||||
|
if (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86|AMD64)")
|
||||||
|
set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} -mrtm -mwaitpkg)
|
||||||
|
endif()
|
||||||
|
set(TBB_OPENMP_NO_LINK_FLAG TRUE)
|
||||||
|
set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||||
|
else()
|
||||||
|
set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:/GL>)
|
||||||
|
set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-LTCG> $<$<NOT:$<CONFIG:Debug>>:-INCREMENTAL:NO>)
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
if (CMAKE_CXX_COMPILER_ID MATCHES "(Clang|IntelLLVM)" AND CMAKE_SYSTEM_PROCESSOR MATCHES "(x86|AMD64)")
|
||||||
|
set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} -mrtm -mwaitpkg)
|
||||||
|
endif()
|
||||||
|
set(TBB_IPO_COMPILE_FLAGS "")
|
||||||
|
set(TBB_IPO_LINK_FLAGS "")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(TBB_OPENMP_FLAG /openmp)
|
||||||
Vendored
+5
-1
@@ -1,4 +1,6 @@
|
|||||||
if (FLATPAK AND "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
if (MSVC)
|
||||||
|
set(_patch_command ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/MSVC.cmake ./cmake/compilers/MSVC.cmake)
|
||||||
|
elseif (FLATPAK AND "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||||
set(_patch_command ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/GNU.cmake ./cmake/compilers/GNU.cmake)
|
set(_patch_command ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/GNU.cmake ./cmake/compilers/GNU.cmake)
|
||||||
else()
|
else()
|
||||||
set(_patch_command "")
|
set(_patch_command "")
|
||||||
@@ -13,6 +15,8 @@ orcaslicer_add_cmake_project(
|
|||||||
-DTBB_BUILD_SHARED=OFF
|
-DTBB_BUILD_SHARED=OFF
|
||||||
-DTBB_BUILD_TESTS=OFF
|
-DTBB_BUILD_TESTS=OFF
|
||||||
-DTBB_TEST=OFF
|
-DTBB_TEST=OFF
|
||||||
|
-DTBB_ENABLE_IPO=OFF
|
||||||
|
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||||
-DCMAKE_DEBUG_POSTFIX=_debug
|
-DCMAKE_DEBUG_POSTFIX=_debug
|
||||||
)
|
)
|
||||||
|
|||||||
+28
@@ -0,0 +1,28 @@
|
|||||||
|
---
|
||||||
|
build/cmake/wxWidgetsConfig.cmake.in | 10 +++++++++-
|
||||||
|
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/build/cmake/wxWidgetsConfig.cmake.in b/build/cmake/wxWidgetsConfig.cmake.in
|
||||||
|
index 1a83f36..70ad8a4 100644
|
||||||
|
--- a/build/cmake/wxWidgetsConfig.cmake.in
|
||||||
|
+++ b/build/cmake/wxWidgetsConfig.cmake.in
|
||||||
|
@@ -58,7 +58,16 @@ if(WIN32_MSVC_NAMING)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/@PROJECT_NAME@Targets.cmake")
|
||||||
|
+if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
|
||||||
|
+ if (CMAKE_GENERATOR_PLATFORM STREQUAL "ARM64" OR CMAKE_VS_PLATFORM_NAME STREQUAL "ARM64" OR CMAKE_SYSTEM_PROCESSOR MATCHES "^(ARM64|arm64|aarch64)$")
|
||||||
|
+ set(_wx_clang_msvc_lib_dir "vc_arm64_lib")
|
||||||
|
+ else()
|
||||||
|
+ set(_wx_clang_msvc_lib_dir "vc_x64_lib")
|
||||||
|
+ endif()
|
||||||
|
+ include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/${_wx_clang_msvc_lib_dir}/@PROJECT_NAME@Targets.cmake")
|
||||||
|
+else()
|
||||||
|
+ include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/@PROJECT_NAME@Targets.cmake")
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
macro(wx_inherit_property source dest name)
|
||||||
|
# property name without _<CONFIG>
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
Vendored
+1
@@ -28,6 +28,7 @@ orcaslicer_add_cmake_project(
|
|||||||
GIT_SHALLOW ON
|
GIT_SHALLOW ON
|
||||||
GIT_SUBMODULES 3rdparty/catch 3rdparty/pcre 3rdparty/libwebp
|
GIT_SUBMODULES 3rdparty/catch 3rdparty/pcre 3rdparty/libwebp
|
||||||
DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG} ${JPEG_PKG}
|
DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG} ${JPEG_PKG}
|
||||||
|
PATCH_COMMAND git apply --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-Clang-CL-fix.patch
|
||||||
CMAKE_ARGS
|
CMAKE_ARGS
|
||||||
-DwxBUILD_PRECOMP=ON
|
-DwxBUILD_PRECOMP=ON
|
||||||
${_wx_toolkit}
|
${_wx_toolkit}
|
||||||
|
|||||||
@@ -37,7 +37,11 @@ target_include_directories(Clipper2
|
|||||||
)
|
)
|
||||||
|
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
target_compile_options(Clipper2 PRIVATE /W4 /WX)
|
if (MSVC AND NOT CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
||||||
|
target_compile_options(Clipper2 PRIVATE /W4 /WX)
|
||||||
|
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
|
||||||
|
target_compile_options(Clipper2 PRIVATE /W4)
|
||||||
|
endif()
|
||||||
else()
|
else()
|
||||||
target_compile_options(Clipper2 PRIVATE -Wall -Wextra -Wpedantic -Werror)
|
target_compile_options(Clipper2 PRIVATE -Wall -Wextra -Wpedantic -Werror)
|
||||||
target_link_libraries(Clipper2 PUBLIC -lm)
|
target_link_libraries(Clipper2 PUBLIC -lm)
|
||||||
|
|||||||
@@ -2856,6 +2856,7 @@ const ImWchar* ImFontAtlas::GetGlyphRangesDefault()
|
|||||||
{
|
{
|
||||||
0x0020, 0x00FF, // Basic Latin + Latin Supplement
|
0x0020, 0x00FF, // Basic Latin + Latin Supplement
|
||||||
0x2000, 0x206F, // General Punctuation
|
0x2000, 0x206F, // General Punctuation
|
||||||
|
0x2103, 0x2103, // ℃ Celsius symbol
|
||||||
0x3000, 0x30FF, // CJK Symbols and Punctuations, Hiragana, Katakana
|
0x3000, 0x30FF, // CJK Symbols and Punctuations, Hiragana, Katakana
|
||||||
0x31F0, 0x31FF, // Katakana Phonetic Extensions
|
0x31F0, 0x31FF, // Katakana Phonetic Extensions
|
||||||
0xFF00, 0xFFEF, // Half-width characters
|
0xFF00, 0xFFEF, // Half-width characters
|
||||||
|
|||||||
@@ -11,6 +11,8 @@ add_library(miniz_static STATIC
|
|||||||
|
|
||||||
if(${CMAKE_C_COMPILER_ID} STREQUAL "GNU")
|
if(${CMAKE_C_COMPILER_ID} STREQUAL "GNU")
|
||||||
target_compile_definitions(miniz_static PRIVATE _GNU_SOURCE)
|
target_compile_definitions(miniz_static PRIVATE _GNU_SOURCE)
|
||||||
|
elseif (CMAKE_C_COMPILER_ID STREQUAL "Clang" AND CMAKE_C_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
|
||||||
|
target_compile_options(miniz_static PRIVATE /clang:-Wno-error=incompatible-pointer-types)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(miniz INTERFACE miniz_static)
|
target_link_libraries(miniz INTERFACE miniz_static)
|
||||||
|
|||||||
@@ -7781,19 +7781,19 @@ msgid "Replaced with 3D files from directory:\n"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, possible-boost-format
|
#, possible-boost-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, possible-boost-format
|
#, possible-boost-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, possible-boost-format
|
#, possible-boost-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, possible-boost-format
|
#, possible-boost-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
|
|||||||
@@ -8361,21 +8361,21 @@ msgstr "No s'ha seleccionat el directori per a la substitució"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Substituït amb fitxers 3D del directori:\n"
|
msgstr "Substituït amb fitxers 3D del directori:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Omès %1%: mateix fitxer.\n"
|
msgstr "✖ Omès %s: mateix fitxer.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Omès %1%: el fitxer no existeix.\n"
|
msgstr "✖ Omès %s: el fitxer no existeix.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Omès %1%: la substitució ha fallat.\n"
|
msgstr "✖ Omès %s: la substitució ha fallat.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Substituït %1%.\n"
|
msgstr "✔ Substituït %s.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Volums substituïts"
|
msgstr "Volums substituïts"
|
||||||
|
|||||||
@@ -8320,21 +8320,21 @@ msgstr "Nebyla vybrána složka pro nahrazení"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Nahrazeno 3D soubory ze složky:\n"
|
msgstr "Nahrazeno 3D soubory ze složky:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Přeskočeno %1%: stejný soubor.\n"
|
msgstr "✖ Přeskočeno %s: stejný soubor.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Přeskočeno %1%: soubor neexistuje.\n"
|
msgstr "✖ Přeskočeno %s: soubor neexistuje.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Přeskočeno %1%: nahrazení se nezdařilo.\n"
|
msgstr "✖ Přeskočeno %s: nahrazení se nezdařilo.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Nahrazeno %1%.\n"
|
msgstr "✔ Nahrazeno %s.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Nahrazené objemy"
|
msgstr "Nahrazené objemy"
|
||||||
|
|||||||
@@ -8191,21 +8191,21 @@ msgstr "Verzeichnis um daraus zu ersetzen wurde nicht ausgewählt"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Ersetzt durch 3D-Dateien aus Verzeichnis:\n"
|
msgstr "Ersetzt durch 3D-Dateien aus Verzeichnis:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Übersprungen %1%: gleiche Datei.\n"
|
msgstr "✖ Übersprungen %s: gleiche Datei.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Übersprungen %1%: Datei existiert nicht.\n"
|
msgstr "✖ Übersprungen %s: Datei existiert nicht.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Übersprungen %1%: Ersetzen fehlgeschlagen.\n"
|
msgstr "✖ Übersprungen %s: Ersetzen fehlgeschlagen.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Ersetzt %1%.\n"
|
msgstr "✔ Ersetzt %s.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Ersetzte Volumen"
|
msgstr "Ersetzte Volumen"
|
||||||
|
|||||||
@@ -7776,20 +7776,20 @@ msgstr ""
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
|
|||||||
@@ -7997,21 +7997,21 @@ msgstr "No se seleccionó el directorio para el reemplazo"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Reemplazado con archivos 3D desde el directorio:\n"
|
msgstr "Reemplazado con archivos 3D desde el directorio:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Omitido %1%: mismo archivo.\n"
|
msgstr "✖ Omitido %s: mismo archivo.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Omitido %1%: el archivo no existe.\n"
|
msgstr "✖ Omitido %s: el archivo no existe.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Omitido %1%: fallo al reemplazar.\n"
|
msgstr "✖ Omitido %s: fallo al reemplazar.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Reemplazado %1%.\n"
|
msgstr "✔ Reemplazado %s.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Volúmenes reemplazados"
|
msgstr "Volúmenes reemplazados"
|
||||||
|
|||||||
@@ -8064,21 +8064,21 @@ msgstr "Ez da ordezkatzeko direktoriorik hautatu"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Direktorio honetako 3D fitxategiekin ordeztuta:\n"
|
msgstr "Direktorio honetako 3D fitxategiekin ordeztuta:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ %1% saltatu da: fitxategi bera.\n"
|
msgstr "✖ %s saltatu da: fitxategi bera.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ %1% saltatu da: fitxategia ez da existitzen.\n"
|
msgstr "✖ %s saltatu da: fitxategia ez da existitzen.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ %1% saltatu da: ezin izan da ordeztu.\n"
|
msgstr "✖ %s saltatu da: ezin izan da ordeztu.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ %1% ordezkatu da.\n"
|
msgstr "✔ %s ordezkatu da.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Ordeztutako bolumenak"
|
msgstr "Ordeztutako bolumenak"
|
||||||
@@ -12013,11 +12013,11 @@ msgstr "Purgatze-dorreak euskarriak objektuaren geruza-altuera bera izatea eskat
|
|||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "For Organic supports, two walls are supported only with the Hollow/Default base pattern."
|
msgid "For Organic supports, two walls are supported only with the Hollow/Default base pattern."
|
||||||
msgstr "Euskarri organikoetan, bi horma Hollow/Default oinarri-patroiarekin soilik onartzen dira."
|
msgstr "Euskarri organikoetan, bi horma Hutsa/Lehenetsia oinarri-patroiarekin soilik onartzen dira."
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "The Lightning base pattern is not supported by this support type; Rectilinear will be used instead."
|
msgid "The Lightning base pattern is not supported by this support type; Rectilinear will be used instead."
|
||||||
msgstr "Lightning oinarri-patroia ez du euskarri mota honek onartzen; Rectilinear erabiliko da horren ordez."
|
msgstr "Tximista oinarri-patroia ez du euskarri mota honek onartzen; Lerrozuzena erabiliko da horren ordez."
|
||||||
|
|
||||||
msgid "Organic support tree tip diameter must not be smaller than support material extrusion width."
|
msgid "Organic support tree tip diameter must not be smaller than support material extrusion width."
|
||||||
msgstr "Euskarri organikoaren zuhaitz-muturraren diametroak ezin du izan euskarri-materialaren estrusio-zabalera baino txikiagoa."
|
msgstr "Euskarri organikoaren zuhaitz-muturraren diametroak ezin du izan euskarri-materialaren estrusio-zabalera baino txikiagoa."
|
||||||
@@ -12030,7 +12030,7 @@ msgstr "Euskarri organikoaren adar-diametroak ezin du izan euskarri-zuhaitzaren
|
|||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "The Hollow base pattern is not supported by this support type; Rectilinear will be used instead."
|
msgid "The Hollow base pattern is not supported by this support type; Rectilinear will be used instead."
|
||||||
msgstr "Hollow oinarri-patroia ez du euskarri mota honek onartzen; Rectilinear erabiliko da horren ordez."
|
msgstr "Hutsa oinarri-patroia ez du euskarri mota honek onartzen; Lerrozuzena erabiliko da horren ordez."
|
||||||
|
|
||||||
msgid "Support enforcers are used but support is not enabled. Please enable support."
|
msgid "Support enforcers are used but support is not enabled. Please enable support."
|
||||||
msgstr "Euskarri-behartzaileak erabiltzen dira, baina euskarria ez dago gaituta. Gaitu euskarriak."
|
msgstr "Euskarri-behartzaileak erabiltzen dira, baina euskarria ez dago gaituta. Gaitu euskarriak."
|
||||||
@@ -13252,7 +13252,7 @@ msgstr "Moderatua"
|
|||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Top surface pattern"
|
msgid "Top surface pattern"
|
||||||
msgstr "Goiko gainazalaren patroia"
|
msgstr "Goiko gainazaleko patroia"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "This is the line pattern for top surface infill."
|
msgid "This is the line pattern for top surface infill."
|
||||||
@@ -13265,13 +13265,13 @@ msgid "Monotonic line"
|
|||||||
msgstr "Lerro monotonikoa"
|
msgstr "Lerro monotonikoa"
|
||||||
|
|
||||||
msgid "Rectilinear"
|
msgid "Rectilinear"
|
||||||
msgstr "Rectilinear"
|
msgstr "Lerrozuzena"
|
||||||
|
|
||||||
msgid "Aligned Rectilinear"
|
msgid "Aligned Rectilinear"
|
||||||
msgstr "Lerrozuzen lerrokatua"
|
msgstr "Lerrozuzen lerrokatua"
|
||||||
|
|
||||||
msgid "Concentric"
|
msgid "Concentric"
|
||||||
msgstr "Concentric"
|
msgstr "Kontzentrikoa"
|
||||||
|
|
||||||
msgid "Hilbert Curve"
|
msgid "Hilbert Curve"
|
||||||
msgstr "Hilbert kurba"
|
msgstr "Hilbert kurba"
|
||||||
@@ -13337,7 +13337,7 @@ msgstr "Kanporantz"
|
|||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Bottom surface pattern"
|
msgid "Bottom surface pattern"
|
||||||
msgstr "Beheko gainazalaren patroia"
|
msgstr "Beheko gainazaleko patroia"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "This is the line pattern of bottom surface infill, not including bridge infill."
|
msgid "This is the line pattern of bottom surface infill, not including bridge infill."
|
||||||
@@ -13362,7 +13362,7 @@ msgid ""
|
|||||||
"Outward starts at the center of the surface, so any excess material is pushed towards the edge where it is least visible. Inward starts at the edge and ends with the tight curves at the center.\n"
|
"Outward starts at the center of the surface, so any excess material is pushed towards the edge where it is least visible. Inward starts at the edge and ends with the tight curves at the center.\n"
|
||||||
"Default uses shortest-path ordering, which may run in either direction."
|
"Default uses shortest-path ordering, which may run in either direction."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Gaineko gainazalak betetzen diren noranzkoa zentroan oinarritutako patroia erabiltzen denean (Konzentrikoa, Arkimedeen Akordeak, Oktograma Espirala).\n"
|
"Goiko gainazalak betetzen diren noranzkoa zentroan oinarritutako patroia erabiltzen denean (Kontzentrikoa, Arkimedesen kordak, Oktagrama-kiribila).\n"
|
||||||
"Kanporanzkoa erdialdean hasten da, beraz, gehiegizko materiala gutxien ikusten den ertzera bultzatzen da. Barruranzkoa ertzean hasten da eta erdian kurba estuekin amaitzen da.\n"
|
"Kanporanzkoa erdialdean hasten da, beraz, gehiegizko materiala gutxien ikusten den ertzera bultzatzen da. Barruranzkoa ertzean hasten da eta erdian kurba estuekin amaitzen da.\n"
|
||||||
"Lehenetsiak bide laburreneko ordena erabiltzen du, zeina norabide batean zein bestean ibil daitekeen."
|
"Lehenetsiak bide laburreneko ordena erabiltzen du, zeina norabide batean zein bestean ibil daitekeen."
|
||||||
|
|
||||||
@@ -13375,7 +13375,7 @@ msgid ""
|
|||||||
"Inward starts each surface with the wider outer curves, which improves first layer adhesion on build plates where the tight curves at the center may not stick. Outward starts at the center, pushing any excess material towards the edge.\n"
|
"Inward starts each surface with the wider outer curves, which improves first layer adhesion on build plates where the tight curves at the center may not stick. Outward starts at the center, pushing any excess material towards the edge.\n"
|
||||||
"Default uses shortest-path ordering, which may run in either direction."
|
"Default uses shortest-path ordering, which may run in either direction."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Beheko gainazalak betetzen diren noranzkoa zentroan oinarritutako patroia erabiltzen denean (Konzentrikoa, Arkimedeen Akordeak, Oktograma Espirala).\n"
|
"Beheko gainazalak betetzen diren noranzkoa zentroan oinarritutako patroia erabiltzen denean (Kontzentrikoa, Arkimedesen kordak, Oktagrama-kiribila).\n"
|
||||||
"Barruranzkoa hasten da gainazal bakoitza kanpoko kurba zabalagoekin, eta horrek lehen geruzaren atxikimendua hobetzen du erdiko kurba estuak itsatsi ez daitezkeen inprimatze-plaketan. Kanporanzkoa erdialdean hasten da, gehiegizko materiala ertzera bultzatuz.\n"
|
"Barruranzkoa hasten da gainazal bakoitza kanpoko kurba zabalagoekin, eta horrek lehen geruzaren atxikimendua hobetzen du erdiko kurba estuak itsatsi ez daitezkeen inprimatze-plaketan. Kanporanzkoa erdialdean hasten da, gehiegizko materiala ertzera bultzatuz.\n"
|
||||||
"Lehenetsiak bide laburreneko ordena erabiltzen du, zeina norabide batean zein bestean ibil daitekeen."
|
"Lehenetsiak bide laburreneko ordena erabiltzen du, zeina norabide batean zein bestean ibil daitekeen."
|
||||||
|
|
||||||
@@ -16431,9 +16431,9 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Euskarriaren lerro-patroia.\n"
|
"Euskarriaren lerro-patroia.\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Zuhaitz-euskarrien aukera lehenetsia Hutsa da, hau da, ez dago oinarri-patroirik. Beste euskarri motetarako, aukera lehenetsia patroi zuzenekoa da.\n"
|
"Zuhaitz-euskarrien aukera lehenetsia Hutsa da, hau da, ez dago oinarri-patroirik. Beste euskarri motetarako, aukera lehenetsia patroi lerrozuzena da.\n"
|
||||||
"\n"
|
"\n"
|
||||||
"OHARRA: Euskarri organikoetan, bi hormak Hutsa/Lehenetsia oinarri-patroiarekin bakarrik onartzen dira. Tximistetan oinarritutako patroia Zuhaitz mehea/Indartsua/Hibridoa euskarriek bakarrik onartzen dute. Beste euskarri motetarako, Zuzenekoa erabiliko da Tximistenaren ordez."
|
"OHARRA: Euskarri organikoetan, bi hormak Hutsa/Lehenetsia oinarri-patroiarekin bakarrik onartzen dira. Tximista oinarri-patroia Zuhaitz mehea/Indartsua/Hibridoa euskarriek bakarrik onartzen dute. Beste euskarri motetarako, Lerrozuzena erabiliko da Tximistaren ordez."
|
||||||
|
|
||||||
msgid "Rectilinear grid"
|
msgid "Rectilinear grid"
|
||||||
msgstr "Sare lerrozuzena"
|
msgstr "Sare lerrozuzena"
|
||||||
@@ -16713,7 +16713,7 @@ msgid ""
|
|||||||
" - Each Model: centers the pattern on each connected body. Parts that touch or overlap share one center; parts detached from the rest each get their own.\n"
|
" - Each Model: centers the pattern on each connected body. Parts that touch or overlap share one center; parts detached from the rest each get their own.\n"
|
||||||
" - Each Assembly: uses a single shared center for the whole object or assembly."
|
" - Each Assembly: uses a single shared center for the whole object or assembly."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Goiko eta beheko gainazaleko patroi zentratuen (Arkimedesen kordak, Oktagrama-espirala) zentroa non kokatzen den aukeratzen du.\n"
|
"Goiko eta beheko gainazaleko patroi zentratuen (Arkimedesen kordak, Oktagrama-kiribila) zentroa non kokatzen den aukeratzen du.\n"
|
||||||
" - Gainazal bakoitza: patroia gainazal-eskualde bakoitzean zentratzen du, uharte bakoitza bere kabuz simetrikoa izan dadin.\n"
|
" - Gainazal bakoitza: patroia gainazal-eskualde bakoitzean zentratzen du, uharte bakoitza bere kabuz simetrikoa izan dadin.\n"
|
||||||
" - Modelo bakoitza: patroia konektatutako gorputz bakoitzean zentratzen du. Elkar ukitzen edo gainjartzen diren piezek zentro bera partekatzen dute; gainerakoetatik bereizitako piezek beren zentroa dute.\n"
|
" - Modelo bakoitza: patroia konektatutako gorputz bakoitzean zentratzen du. Elkar ukitzen edo gainjartzen diren piezek zentro bera partekatzen dute; gainerakoetatik bereizitako piezek beren zentroa dute.\n"
|
||||||
" - Muntaketa bakoitza: zentro partekatu bakarra erabiltzen du objektu edo muntaketa osorako."
|
" - Muntaketa bakoitza: zentro partekatu bakarra erabiltzen du objektu edo muntaketa osorako."
|
||||||
@@ -17144,7 +17144,7 @@ msgid "Detect narrow internal solid infills"
|
|||||||
msgstr "Detektatu barruko betegarri solido estua"
|
msgstr "Detektatu barruko betegarri solido estua"
|
||||||
|
|
||||||
msgid "This option will auto-detect narrow internal solid infill areas. If enabled, the concentric pattern will be used for the area to speed up printing. Otherwise, the rectilinear pattern will be used by default."
|
msgid "This option will auto-detect narrow internal solid infill areas. If enabled, the concentric pattern will be used for the area to speed up printing. Otherwise, the rectilinear pattern will be used by default."
|
||||||
msgstr "Aukera honek barruko betegarri solido estuko eremuak automatikoki detektatuko ditu. Gaituta badago, eremu horretan patroi zentrokidea erabiliko da inprimaketa azkartzeko. Bestela, patroi lerrozuzena erabiliko da lehenespenez."
|
msgstr "Aukera honek barruko betegarri solido estuko eremuak automatikoki detektatuko ditu. Gaituta badago, eremu horretan patroi kontzentrikoa erabiliko da inprimaketa azkartzeko. Bestela, patroi lerrozuzena erabiliko da lehenespenez."
|
||||||
|
|
||||||
msgid "invalid value "
|
msgid "invalid value "
|
||||||
msgstr "balio baliogabea "
|
msgstr "balio baliogabea "
|
||||||
@@ -18703,7 +18703,7 @@ msgstr "YOLO (perfekzionista)"
|
|||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Top Surface Pattern"
|
msgid "Top Surface Pattern"
|
||||||
msgstr "Goiko gainazalaren patroia"
|
msgstr "Goiko gainazaleko patroia"
|
||||||
|
|
||||||
msgid "Choose a slot for the selected color"
|
msgid "Choose a slot for the selected color"
|
||||||
msgstr "Aukeratu zirrikitu bat hautatutako kolorearentzat"
|
msgstr "Aukeratu zirrikitu bat hautatutako kolorearentzat"
|
||||||
|
|||||||
@@ -8120,21 +8120,21 @@ msgstr "Le répertoire pour le remplacement n'a pas été sélectionné"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Remplacé par des fichiers 3D depuis le répertoire :\n"
|
msgstr "Remplacé par des fichiers 3D depuis le répertoire :\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Ignoré %1% : même fichier.\n"
|
msgstr "✖ Ignoré %s : même fichier.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Ignoré %1% : le fichier n'existe pas.\n"
|
msgstr "✖ Ignoré %s : le fichier n'existe pas.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Ignoré %1% : échec du remplacement.\n"
|
msgstr "✖ Ignoré %s : échec du remplacement.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Remplacé %1%.\n"
|
msgstr "✔ Remplacé %s.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Volumes remplacés"
|
msgstr "Volumes remplacés"
|
||||||
@@ -9283,22 +9283,22 @@ msgid "DEV host: api-dev.bambu-lab.com/v1"
|
|||||||
msgstr "Hôte DEV : api-dev.bambu-lab.com/v1"
|
msgstr "Hôte DEV : api-dev.bambu-lab.com/v1"
|
||||||
|
|
||||||
msgid "QA host: api-qa.bambu-lab.com/v1"
|
msgid "QA host: api-qa.bambu-lab.com/v1"
|
||||||
msgstr "Hôte AQ : api-qa.bambu-lab.com/v1"
|
msgstr "Hôte QA : api-qa.bambu-lab.com/v1"
|
||||||
|
|
||||||
msgid "PRE host: api-pre.bambu-lab.com/v1"
|
msgid "PRE host: api-pre.bambu-lab.com/v1"
|
||||||
msgstr "Hébergeur PRE : api-pre.bambu-lab.com/v1"
|
msgstr "Hôte PRE : api-pre.bambu-lab.com/v1"
|
||||||
|
|
||||||
msgid "Product host"
|
msgid "Product host"
|
||||||
msgstr "Hôte du produit"
|
msgstr "Hôte du produit"
|
||||||
|
|
||||||
msgid "Debug save button"
|
msgid "Debug save button"
|
||||||
msgstr "bouton d'enregistrement de débogage"
|
msgstr "Bouton d'enregistrement de debugage"
|
||||||
|
|
||||||
msgid "Save debug settings"
|
msgid "Save debug settings"
|
||||||
msgstr "enregistrer les paramètres de débogage"
|
msgstr "Enregistrer les paramètres de debugage"
|
||||||
|
|
||||||
msgid "Debug settings have been saved successfully!"
|
msgid "Debug settings have been saved successfully!"
|
||||||
msgstr "Les paramètres DEBUG ont été enregistrés avec succès !"
|
msgstr "Les paramètres de debug ont été enregistrés avec succès !"
|
||||||
|
|
||||||
msgid "Cloud environment switched; please login again!"
|
msgid "Cloud environment switched; please login again!"
|
||||||
msgstr "L'environnement Cloud a changé, veuillez vous reconnecter !"
|
msgstr "L'environnement Cloud a changé, veuillez vous reconnecter !"
|
||||||
|
|||||||
@@ -8244,21 +8244,21 @@ msgstr "A cseréhez nem lett mappa kiválasztva"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Cserélve a mappából származó 3D fájlokra:\n"
|
msgstr "Cserélve a mappából származó 3D fájlokra:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Kihagyva %1%: azonos fájl.\n"
|
msgstr "✖ %s kihagyva: azonos fájl.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Kihagyva %1%: a fájl nem létezik.\n"
|
msgstr "✖ %s kihagyva: a fájl nem létezik.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Kihagyva %1%: a csere sikertelen.\n"
|
msgstr "✖ %s kihagyva: a csere sikertelen.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Lecserélve: %1%.\n"
|
msgstr "✔%s lecserélve.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Lecserélt térfogatok"
|
msgstr "Lecserélt térfogatok"
|
||||||
|
|||||||
@@ -8244,21 +8244,21 @@ msgstr "La directory per la sostituzione non è stata selezionata"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Sostituito con file 3D dalla directory:\n"
|
msgstr "Sostituito con file 3D dalla directory:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Saltato %1%: stesso file.\n"
|
msgstr "✖ Saltato %s: stesso file.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Saltato %1%: il file non esiste.\n"
|
msgstr "✖ Saltato %s: il file non esiste.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Saltato %1%: sostituzione fallita.\n"
|
msgstr "✖ Saltato %s: sostituzione fallita.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Sostituito %1%.\n"
|
msgstr "✔ Sostituito %s.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Volumi sostituiti"
|
msgstr "Volumi sostituiti"
|
||||||
|
|||||||
@@ -8262,21 +8262,21 @@ msgstr "置換用のディレクトリが選択されていません"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "ディレクトリの3Dファイルで置換しました:\n"
|
msgstr "ディレクトリの3Dファイルで置換しました:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ スキップ %1%: 同一ファイル。\n"
|
msgstr "✖ スキップ %s: 同一ファイル。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ スキップ %1%: ファイルが存在しません。\n"
|
msgstr "✖ スキップ %s: ファイルが存在しません。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ スキップ %1%: 置換に失敗しました。\n"
|
msgstr "✖ スキップ %s: 置換に失敗しました。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ 置換しました %1%。\n"
|
msgstr "✔ 置換しました %s。\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "置換されたボリューム"
|
msgstr "置換されたボリューム"
|
||||||
|
|||||||
@@ -8288,24 +8288,24 @@ msgid "Replaced with 3D files from directory:\n"
|
|||||||
msgstr "다음 디렉터리의 3D 파일로 교체했습니다:\n"
|
msgstr "다음 디렉터리의 3D 파일로 교체했습니다:\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ 건너뜀 %1%: 동일한 파일입니다.\n"
|
msgstr "✖ 건너뜀 %s: 동일한 파일입니다.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ 건너뜀 %1%: 파일이 존재하지 않습니다.\n"
|
msgstr "✖ 건너뜀 %s: 파일이 존재하지 않습니다.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ 건너뜀 %1%: 교체하지 못했습니다.\n"
|
msgstr "✖ 건너뜀 %s: 교체하지 못했습니다.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ %1%을(를) 교체했습니다.\n"
|
msgstr "✔ %s을(를) 교체했습니다.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
|
|||||||
@@ -8239,21 +8239,21 @@ msgstr ""
|
|||||||
"Pakeista 3D failais iš katalogo:\n"
|
"Pakeista 3D failais iš katalogo:\n"
|
||||||
"\n"
|
"\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Praleistas %1%: tas pats failas.\n"
|
msgstr "✖ Praleistas %s: tas pats failas.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Praleistas %1%: failas neegzistuoja.\n"
|
msgstr "✖ Praleistas %s: failas neegzistuoja.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Praleistas %1%: nepavyko pakeisti.\n"
|
msgstr "✖ Praleistas %s: nepavyko pakeisti.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Pakeistas %1%.\n"
|
msgstr "✔ Pakeistas %s.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Pakeisti tūriai"
|
msgstr "Pakeisti tūriai"
|
||||||
|
|||||||
@@ -8999,24 +8999,24 @@ msgid "Replaced with 3D files from directory:\n"
|
|||||||
msgstr "Vervangen door 3D-bestanden uit de map:\n"
|
msgstr "Vervangen door 3D-bestanden uit de map:\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Overgeslagen %1%: hetzelfde bestand.\n"
|
msgstr "✖ Overgeslagen %s: hetzelfde bestand.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Overgeslagen %1%: bestand bestaat niet.\n"
|
msgstr "✖ Overgeslagen %s: bestand bestaat niet.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Overgeslagen %1%: vervangen is mislukt.\n"
|
msgstr "✖ Overgeslagen %s: vervangen is mislukt.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Vervangen %1%.\n"
|
msgstr "✔ Vervangen %s.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
|
|||||||
@@ -8444,24 +8444,24 @@ msgid "Replaced with 3D files from directory:\n"
|
|||||||
msgstr "Zastąpiono plikami 3D z katalogu:\n"
|
msgstr "Zastąpiono plikami 3D z katalogu:\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Pominięto %1%: ten sam plik.\n"
|
msgstr "✖ Pominięto %s: ten sam plik.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Pominięto %1%: plik nie istnieje.\n"
|
msgstr "✖ Pominięto %s: plik nie istnieje.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Pominięto %1%: nie udało się zastąpić.\n"
|
msgstr "✖ Pominięto %s: nie udało się zastąpić.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Zastąpiono %1%.\n"
|
msgstr "✔ Zastąpiono %s.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -9088,24 +9088,24 @@ msgid "Replaced with 3D files from directory:\n"
|
|||||||
msgstr "Ersatt med 3D-filer från mappen:\n"
|
msgstr "Ersatt med 3D-filer från mappen:\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Hoppade över %1%: samma fil.\n"
|
msgstr "✖ Hoppade över %s: samma fil.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Hoppade över %1%: filen finns inte.\n"
|
msgstr "✖ Hoppade över %s: filen finns inte.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Hoppade över %1%: det gick inte att ersätta.\n"
|
msgstr "✖ Hoppade över %s: det gick inte att ersätta.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Ersatte %1%.\n"
|
msgstr "✔ Ersatte %s.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -4,7 +4,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: Orca Slicer\n"
|
"Project-Id-Version: Orca Slicer\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2026-07-29 17:40-0300\n"
|
"POT-Creation-Date: 2026-07-29 17:40-0300\n"
|
||||||
"PO-Revision-Date: 2026-08-01 20:32+0300\n"
|
"PO-Revision-Date: 2026-08-04 19:36+0300\n"
|
||||||
"Last-Translator: GlauTech\n"
|
"Last-Translator: GlauTech\n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
"Language: tr\n"
|
"Language: tr\n"
|
||||||
@@ -738,9 +738,8 @@ msgstr "Sabit adım sürükleme"
|
|||||||
msgid "Context Menu"
|
msgid "Context Menu"
|
||||||
msgstr "Bağlam Menüsü"
|
msgstr "Bağlam Menüsü"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Toggle Auto-Drop"
|
msgid "Toggle Auto-Drop"
|
||||||
msgstr "Otomatik Bırakmayı Aç/Kapat"
|
msgstr "Otomatik düşürmeyi aç / kapat"
|
||||||
|
|
||||||
msgid "Single sided scaling"
|
msgid "Single sided scaling"
|
||||||
msgstr "Tek taraflı ölçekleme"
|
msgstr "Tek taraflı ölçekleme"
|
||||||
@@ -791,9 +790,8 @@ msgstr "Nesne"
|
|||||||
msgid "Part"
|
msgid "Part"
|
||||||
msgstr "Parça"
|
msgstr "Parça"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Relative"
|
msgid "Relative"
|
||||||
msgstr "Göreli"
|
msgstr "Göreceli"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Coordinate system used for transform actions."
|
msgid "Coordinate system used for transform actions."
|
||||||
@@ -2306,7 +2304,7 @@ msgid "new or open project file is not allowed during the slicing process!"
|
|||||||
msgstr "dilimleme işlemi sırasında yeni veya açık proje dosyasına izin verilmez!"
|
msgstr "dilimleme işlemi sırasında yeni veya açık proje dosyasına izin verilmez!"
|
||||||
|
|
||||||
msgid "Open Project"
|
msgid "Open Project"
|
||||||
msgstr "Projeyi Aç"
|
msgstr "Projeyi aç"
|
||||||
|
|
||||||
msgid "The version of Orca Slicer is too low and needs to be updated to the latest version before it can be used normally."
|
msgid "The version of Orca Slicer is too low and needs to be updated to the latest version before it can be used normally."
|
||||||
msgstr "Orca Slicer'ın sürümü çok düşük ve normal şekilde kullanılabilmesi için en son sürüme güncellenmesi gerekiyor."
|
msgstr "Orca Slicer'ın sürümü çok düşük ve normal şekilde kullanılabilmesi için en son sürüme güncellenmesi gerekiyor."
|
||||||
@@ -2734,16 +2732,15 @@ msgstr "Simit"
|
|||||||
msgid "Orca Cube"
|
msgid "Orca Cube"
|
||||||
msgstr "Orca Küpü"
|
msgstr "Orca Küpü"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "OrcaSliced Combo"
|
msgid "OrcaSliced Combo"
|
||||||
msgstr "OrcaSliced Combo"
|
msgstr "Orca Dilimleme Paketi"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Orca Badge"
|
msgid "Orca Badge"
|
||||||
msgstr "Orca Rozeti"
|
msgstr "Orca Rozeti"
|
||||||
|
|
||||||
msgid "Orca Tolerance Test"
|
msgid "Orca Tolerance Test"
|
||||||
msgstr "Orca tolerans testi"
|
msgstr "Orca Tolerans Testi"
|
||||||
|
|
||||||
msgid "3DBenchy"
|
msgid "3DBenchy"
|
||||||
msgstr "3DBenchy"
|
msgstr "3DBenchy"
|
||||||
@@ -2807,7 +2804,7 @@ msgid "Set as Individual Objects"
|
|||||||
msgstr "Bireysel nesneler olarak ayarla"
|
msgstr "Bireysel nesneler olarak ayarla"
|
||||||
|
|
||||||
msgid "Fill bed with copies"
|
msgid "Fill bed with copies"
|
||||||
msgstr "Yatağı kopyalarla doldurun"
|
msgstr "Tablayı kopyalarla doldur"
|
||||||
|
|
||||||
msgid "Fill the remaining area of bed with copies of the selected object"
|
msgid "Fill the remaining area of bed with copies of the selected object"
|
||||||
msgstr "Yatağın kalan alanını seçilen nesnenin kopyalarıyla doldurun"
|
msgstr "Yatağın kalan alanını seçilen nesnenin kopyalarıyla doldurun"
|
||||||
@@ -2815,9 +2812,8 @@ msgstr "Yatağın kalan alanını seçilen nesnenin kopyalarıyla doldurun"
|
|||||||
msgid "Printable"
|
msgid "Printable"
|
||||||
msgstr "Yazdırılabilir"
|
msgstr "Yazdırılabilir"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Auto Drop"
|
msgid "Auto Drop"
|
||||||
msgstr "Otomatik Bırakma"
|
msgstr "Otomatik düşür"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Automatically drops the selected object to the build plate."
|
msgid "Automatically drops the selected object to the build plate."
|
||||||
@@ -2967,7 +2963,7 @@ msgid "Add Models"
|
|||||||
msgstr "Model ekle"
|
msgstr "Model ekle"
|
||||||
|
|
||||||
msgid "Show Labels"
|
msgid "Show Labels"
|
||||||
msgstr "Etiketleri Göster"
|
msgstr "Etiketleri göster"
|
||||||
|
|
||||||
msgid "To Objects"
|
msgid "To Objects"
|
||||||
msgstr "Nesnelere"
|
msgstr "Nesnelere"
|
||||||
@@ -3009,7 +3005,7 @@ msgid "Select all objects on the current plate"
|
|||||||
msgstr "Mevcut plakadaki tüm nesneleri seç"
|
msgstr "Mevcut plakadaki tüm nesneleri seç"
|
||||||
|
|
||||||
msgid "Select All Plates"
|
msgid "Select All Plates"
|
||||||
msgstr "Tüm Plakaları Seç"
|
msgstr "Tüm plakaları seç"
|
||||||
|
|
||||||
msgid "Select all objects on all plates"
|
msgid "Select all objects on all plates"
|
||||||
msgstr "Tüm plakalardaki tüm nesneleri seç"
|
msgstr "Tüm plakalardaki tüm nesneleri seç"
|
||||||
@@ -3045,13 +3041,13 @@ msgid "Remove the selected plate"
|
|||||||
msgstr "Seçilen plakayı kaldır"
|
msgstr "Seçilen plakayı kaldır"
|
||||||
|
|
||||||
msgid "Add instance"
|
msgid "Add instance"
|
||||||
msgstr "Örnek ekle"
|
msgstr "Kopya ekle"
|
||||||
|
|
||||||
msgid "Add one more instance of the selected object"
|
msgid "Add one more instance of the selected object"
|
||||||
msgstr "Seçilen nesnenin bir örneğini daha ekle"
|
msgstr "Seçilen nesnenin bir örneğini daha ekle"
|
||||||
|
|
||||||
msgid "Remove instance"
|
msgid "Remove instance"
|
||||||
msgstr "Örneği kaldır"
|
msgstr "Kopyayı kaldır"
|
||||||
|
|
||||||
msgid "Remove one instance of the selected object"
|
msgid "Remove one instance of the selected object"
|
||||||
msgstr "Seçilen nesnenin bir örneğini kaldır"
|
msgstr "Seçilen nesnenin bir örneğini kaldır"
|
||||||
@@ -3060,10 +3056,10 @@ msgid "Set number of instances"
|
|||||||
msgstr "Örnek sayısını ayarlayın"
|
msgstr "Örnek sayısını ayarlayın"
|
||||||
|
|
||||||
msgid "Change the number of instances of the selected object"
|
msgid "Change the number of instances of the selected object"
|
||||||
msgstr "Seçilen nesnenin örnek sayısını değiştirme"
|
msgstr "Seçilen nesnenin kopya sayısını değiştirme"
|
||||||
|
|
||||||
msgid "Fill bed with instances"
|
msgid "Fill bed with instances"
|
||||||
msgstr "Yatağı örneklerle doldurun"
|
msgstr "Tablayı kopyalarla doldur"
|
||||||
|
|
||||||
msgid "Fill the remaining area of bed with instances of the selected object"
|
msgid "Fill the remaining area of bed with instances of the selected object"
|
||||||
msgstr "Yatağın kalan alanını seçilen nesnenin örnekleriyle doldurun"
|
msgstr "Yatağın kalan alanını seçilen nesnenin örnekleriyle doldurun"
|
||||||
@@ -3075,7 +3071,7 @@ msgid "Simplify Model"
|
|||||||
msgstr "Modeli basitleştir"
|
msgstr "Modeli basitleştir"
|
||||||
|
|
||||||
msgid "Subdivision mesh"
|
msgid "Subdivision mesh"
|
||||||
msgstr "Alt bölüm ağı"
|
msgstr "Poligon artırma"
|
||||||
|
|
||||||
msgid "(Lost color)"
|
msgid "(Lost color)"
|
||||||
msgstr "(Renk kaybı)"
|
msgstr "(Renk kaybı)"
|
||||||
@@ -3090,10 +3086,10 @@ msgid "Edit Process Settings"
|
|||||||
msgstr "İşlem ayarlarını düzenle"
|
msgstr "İşlem ayarlarını düzenle"
|
||||||
|
|
||||||
msgid "Copy Process Settings"
|
msgid "Copy Process Settings"
|
||||||
msgstr "İşlem Ayarlarını Kopyala"
|
msgstr "İşlem ayarlarını kopyala"
|
||||||
|
|
||||||
msgid "Paste Process Settings"
|
msgid "Paste Process Settings"
|
||||||
msgstr "İşlem Ayarlarını Yapıştır"
|
msgstr "İşlem ayarlarını yapıştır"
|
||||||
|
|
||||||
msgid "Edit print parameters for a single object"
|
msgid "Edit print parameters for a single object"
|
||||||
msgstr "Tek bir nesne için yazdırma parametrelerini düzenleme"
|
msgstr "Tek bir nesne için yazdırma parametrelerini düzenleme"
|
||||||
@@ -3478,7 +3474,7 @@ msgid "More"
|
|||||||
msgstr "Daha"
|
msgstr "Daha"
|
||||||
|
|
||||||
msgid "Open Preferences"
|
msgid "Open Preferences"
|
||||||
msgstr "Tercihleri Aç"
|
msgstr "Tercihleri aç"
|
||||||
|
|
||||||
msgid "Open next tip"
|
msgid "Open next tip"
|
||||||
msgstr "Sonraki ipucunu aç"
|
msgstr "Sonraki ipucunu aç"
|
||||||
@@ -5450,10 +5446,10 @@ msgid "Acceleration"
|
|||||||
msgstr "Hızlanma"
|
msgstr "Hızlanma"
|
||||||
|
|
||||||
msgid "Jerk"
|
msgid "Jerk"
|
||||||
msgstr "Jerk"
|
msgstr "Sarsıntı"
|
||||||
|
|
||||||
msgid "Fan Speed"
|
msgid "Fan Speed"
|
||||||
msgstr "Fan hızı"
|
msgstr "Fan Hızı"
|
||||||
|
|
||||||
msgid "Flow"
|
msgid "Flow"
|
||||||
msgstr "Akış"
|
msgstr "Akış"
|
||||||
@@ -5468,7 +5464,7 @@ msgid "Layer Time"
|
|||||||
msgstr "Katman Süresi"
|
msgstr "Katman Süresi"
|
||||||
|
|
||||||
msgid "Layer Time (log)"
|
msgid "Layer Time (log)"
|
||||||
msgstr "Katman Süresi (günlük)"
|
msgstr "Katman Süresi (log)"
|
||||||
|
|
||||||
msgid "Pressure Advance"
|
msgid "Pressure Advance"
|
||||||
msgstr "Basınç İlerlemesi"
|
msgstr "Basınç İlerlemesi"
|
||||||
@@ -5477,10 +5473,10 @@ msgid "Noop"
|
|||||||
msgstr "Hayır"
|
msgstr "Hayır"
|
||||||
|
|
||||||
msgid "Retract"
|
msgid "Retract"
|
||||||
msgstr "Geri Çekme"
|
msgstr "Geri çekme"
|
||||||
|
|
||||||
msgid "Unretract"
|
msgid "Unretract"
|
||||||
msgstr "İleri İtme"
|
msgstr "İleri itme"
|
||||||
|
|
||||||
msgid "Seam"
|
msgid "Seam"
|
||||||
msgstr "Dikiş"
|
msgstr "Dikiş"
|
||||||
@@ -5578,7 +5574,7 @@ msgid "Acceleration: "
|
|||||||
msgstr "İvme: "
|
msgstr "İvme: "
|
||||||
|
|
||||||
msgid "Jerk: "
|
msgid "Jerk: "
|
||||||
msgstr "Jerk: "
|
msgstr "Sarsıntı: "
|
||||||
|
|
||||||
msgid "PA: "
|
msgid "PA: "
|
||||||
msgstr "PA: "
|
msgstr "PA: "
|
||||||
@@ -5608,7 +5604,7 @@ msgid "Actual speed profile"
|
|||||||
msgstr "Gerçek hız profili"
|
msgstr "Gerçek hız profili"
|
||||||
|
|
||||||
msgid "Statistics of All Plates"
|
msgid "Statistics of All Plates"
|
||||||
msgstr "Tüm Plakaların İstatistikleri"
|
msgstr "Tüm plakaların istatistikleri"
|
||||||
|
|
||||||
msgid "Display"
|
msgid "Display"
|
||||||
msgstr "Ekran"
|
msgstr "Ekran"
|
||||||
@@ -5708,7 +5704,7 @@ msgid "Acceleration (mm/s²)"
|
|||||||
msgstr "İvme (mm/s²)"
|
msgstr "İvme (mm/s²)"
|
||||||
|
|
||||||
msgid "Jerk (mm/s)"
|
msgid "Jerk (mm/s)"
|
||||||
msgstr "Jerk (mm/s)"
|
msgstr "Sarsıntı (mm/s)"
|
||||||
|
|
||||||
msgid "Fan speed (%)"
|
msgid "Fan speed (%)"
|
||||||
msgstr "Fan hızı (%)"
|
msgstr "Fan hızı (%)"
|
||||||
@@ -5759,9 +5755,8 @@ msgstr "Normal mod"
|
|||||||
msgid "Total Filament"
|
msgid "Total Filament"
|
||||||
msgstr "Toplam filament"
|
msgstr "Toplam filament"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Model Filament"
|
msgid "Model Filament"
|
||||||
msgstr "Model Filamenti"
|
msgstr "Model filamenti"
|
||||||
|
|
||||||
msgid "Prepare time"
|
msgid "Prepare time"
|
||||||
msgstr "Hazırlık süresi"
|
msgstr "Hazırlık süresi"
|
||||||
@@ -6282,20 +6277,19 @@ msgid "Setup Wizard"
|
|||||||
msgstr "Kurulum sihirbazı"
|
msgstr "Kurulum sihirbazı"
|
||||||
|
|
||||||
msgid "Show Configuration Folder"
|
msgid "Show Configuration Folder"
|
||||||
msgstr "Yapılandırma Klasörünü Göster"
|
msgstr "Yapılandırma klasörünü göster"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Troubleshoot Center"
|
msgid "Troubleshoot Center"
|
||||||
msgstr "Sorun Giderme Merkezi"
|
msgstr "Sorun giderme merkezi"
|
||||||
|
|
||||||
msgid "Open Network Test"
|
msgid "Open Network Test"
|
||||||
msgstr "Ağ Testini Aç"
|
msgstr "Ağ testini aç"
|
||||||
|
|
||||||
msgid "Show Tip of the Day"
|
msgid "Show Tip of the Day"
|
||||||
msgstr "Günün İpucunu Göster"
|
msgstr "Günün ipucunu göster"
|
||||||
|
|
||||||
msgid "Check for Updates"
|
msgid "Check for Updates"
|
||||||
msgstr "Güncellemeleri Kontrol Et"
|
msgstr "Güncellemeleri kontrol et"
|
||||||
|
|
||||||
#, c-format, boost-format
|
#, c-format, boost-format
|
||||||
msgid "&About %s"
|
msgid "&About %s"
|
||||||
@@ -6349,7 +6343,7 @@ msgid "Recent files"
|
|||||||
msgstr "Son dosyalar"
|
msgstr "Son dosyalar"
|
||||||
|
|
||||||
msgid "Save Project"
|
msgid "Save Project"
|
||||||
msgstr "Projeyi Kaydet"
|
msgstr "Projeyi kaydet"
|
||||||
|
|
||||||
msgid "Save current project to file"
|
msgid "Save current project to file"
|
||||||
msgstr "Mevcut projeyi dosyaya kaydet"
|
msgstr "Mevcut projeyi dosyaya kaydet"
|
||||||
@@ -6415,13 +6409,13 @@ msgid "Export toolpaths as OBJ"
|
|||||||
msgstr "Takımyollarını OBJ olarak dışa aktar"
|
msgstr "Takımyollarını OBJ olarak dışa aktar"
|
||||||
|
|
||||||
msgid "Export Preset Bundle"
|
msgid "Export Preset Bundle"
|
||||||
msgstr "Ön Ayar Paketini Dışa Aktar"
|
msgstr "Ön ayar paketini dışa aktar"
|
||||||
|
|
||||||
msgid "Export current configuration to files"
|
msgid "Export current configuration to files"
|
||||||
msgstr "Geçerli yapılandırmayı dosyalara aktar"
|
msgstr "Geçerli yapılandırmayı dosyalara aktar"
|
||||||
|
|
||||||
msgid "Export"
|
msgid "Export"
|
||||||
msgstr "Dışa Aktar"
|
msgstr "Dışa aktar"
|
||||||
|
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Çıkış"
|
msgstr "Çıkış"
|
||||||
@@ -6478,13 +6472,13 @@ msgid "Deselects all objects"
|
|||||||
msgstr "Tüm nesnelerin seçimini kaldırır"
|
msgstr "Tüm nesnelerin seçimini kaldırır"
|
||||||
|
|
||||||
msgid "Use Perspective View"
|
msgid "Use Perspective View"
|
||||||
msgstr "Perspektif Görünüm"
|
msgstr "Perspektif görünüm"
|
||||||
|
|
||||||
msgid "Use Orthogonal View"
|
msgid "Use Orthogonal View"
|
||||||
msgstr "Ortogonal Görünüm"
|
msgstr "Ortogonal görünüm"
|
||||||
|
|
||||||
msgid "Auto Perspective"
|
msgid "Auto Perspective"
|
||||||
msgstr "Otomatik Perspektif"
|
msgstr "Otomatik perspektif"
|
||||||
|
|
||||||
msgid "Automatically switch between orthographic and perspective when changing from top/bottom/side views."
|
msgid "Automatically switch between orthographic and perspective when changing from top/bottom/side views."
|
||||||
msgstr "Üst/Alt/Yan görünümler arasında geçiş yaparken ortografik ve perspektif arasında otomatik olarak geçiş yapın."
|
msgstr "Üst/Alt/Yan görünümler arasında geçiş yaparken ortografik ve perspektif arasında otomatik olarak geçiş yapın."
|
||||||
@@ -6496,37 +6490,37 @@ msgid "Show G-code window in Preview scene."
|
|||||||
msgstr "Previce sahnesinde G-kodu penceresini göster."
|
msgstr "Previce sahnesinde G-kodu penceresini göster."
|
||||||
|
|
||||||
msgid "Show 3D Navigator"
|
msgid "Show 3D Navigator"
|
||||||
msgstr "3D Gezgini Göster"
|
msgstr "3D gezgini göster"
|
||||||
|
|
||||||
msgid "Show 3D navigator in Prepare and Preview scene."
|
msgid "Show 3D navigator in Prepare and Preview scene."
|
||||||
msgstr "Hazırlama ve Önizleme sahnesinde 3D gezgini göster."
|
msgstr "Hazırlama ve Önizleme sahnesinde 3D gezgini göster."
|
||||||
|
|
||||||
msgid "Show Gridlines"
|
msgid "Show Gridlines"
|
||||||
msgstr "Kılavuz Çizgilerini Göster"
|
msgstr "Kılavuz çizgilerini göster"
|
||||||
|
|
||||||
msgid "Show Gridlines on plate"
|
msgid "Show Gridlines on plate"
|
||||||
msgstr "Kılavuz Çizgilerini plaka üzerinde göster"
|
msgstr "Kılavuz Çizgilerini plaka üzerinde göster"
|
||||||
|
|
||||||
msgid "Reset Window Layout"
|
msgid "Reset Window Layout"
|
||||||
msgstr "Pencere Düzenini Sıfırla"
|
msgstr "Pencere düzenini sıfırla"
|
||||||
|
|
||||||
msgid "Reset to default window layout"
|
msgid "Reset to default window layout"
|
||||||
msgstr "Varsayılan pencere düzenine sıfırla"
|
msgstr "Varsayılan pencere düzenine sıfırla"
|
||||||
|
|
||||||
msgid "Show &Labels"
|
msgid "Show &Labels"
|
||||||
msgstr "Etiketleri Göster"
|
msgstr "Etiketleri göster"
|
||||||
|
|
||||||
msgid "Show object labels in 3D scene."
|
msgid "Show object labels in 3D scene."
|
||||||
msgstr "3B sahnede nesne etiketlerini göster."
|
msgstr "3B sahnede nesne etiketlerini göster."
|
||||||
|
|
||||||
msgid "Show &Overhang"
|
msgid "Show &Overhang"
|
||||||
msgstr "Çıkıntıyı Göster"
|
msgstr "Çıkıntıyı göster"
|
||||||
|
|
||||||
msgid "Show object overhang highlight in 3D scene."
|
msgid "Show object overhang highlight in 3D scene."
|
||||||
msgstr "3B sahnede nesne çıkıntısı vurgusunu göster."
|
msgstr "3B sahnede nesne çıkıntısı vurgusunu göster."
|
||||||
|
|
||||||
msgid "Show Selected Outline (beta)"
|
msgid "Show Selected Outline (beta)"
|
||||||
msgstr "Seçilen Taslağı Göster (Deneysel)"
|
msgstr "Seçilen taslağı göster (deneysel)"
|
||||||
|
|
||||||
msgid "Show outline around selected object in 3D scene."
|
msgid "Show outline around selected object in 3D scene."
|
||||||
msgstr "3D sahnede seçilen nesnenin etrafındaki ana hatları göster."
|
msgstr "3D sahnede seçilen nesnenin etrafındaki ana hatları göster."
|
||||||
@@ -6542,13 +6536,11 @@ msgstr "Düzen"
|
|||||||
msgid "View"
|
msgid "View"
|
||||||
msgstr "Görünüm"
|
msgstr "Görünüm"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Preset Bundle"
|
msgid "Preset Bundle"
|
||||||
msgstr "Ön Ayar Paketi"
|
msgstr "Ön ayar paketi"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Sync Presets"
|
msgid "Sync Presets"
|
||||||
msgstr "Ön Ayarları Eşitle"
|
msgstr "Ön ayarları eşitle"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Pull and apply the latest presets from OrcaCloud"
|
msgid "Pull and apply the latest presets from OrcaCloud"
|
||||||
@@ -6590,10 +6582,10 @@ msgid "Cornering calibration"
|
|||||||
msgstr "Viraj kalibrasyonu"
|
msgstr "Viraj kalibrasyonu"
|
||||||
|
|
||||||
msgid "Input Shaping Frequency"
|
msgid "Input Shaping Frequency"
|
||||||
msgstr "Input shaping Frekansı"
|
msgstr "Input shaping frekansı"
|
||||||
|
|
||||||
msgid "Input Shaping Damping/zeta factor"
|
msgid "Input Shaping Damping/zeta factor"
|
||||||
msgstr "Input shaping Sönümleme/zeta faktörü"
|
msgstr "Input shaping sönümleme/zeta faktörü"
|
||||||
|
|
||||||
msgid "Input Shaping"
|
msgid "Input Shaping"
|
||||||
msgstr "Input shaping"
|
msgstr "Input shaping"
|
||||||
@@ -6601,9 +6593,8 @@ msgstr "Input shaping"
|
|||||||
msgid "VFA"
|
msgid "VFA"
|
||||||
msgstr "VFA"
|
msgstr "VFA"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Calibration Guide"
|
msgid "Calibration Guide"
|
||||||
msgstr "Kalibrasyon Kılavuzu"
|
msgstr "Kalibrasyon kılavuzu"
|
||||||
|
|
||||||
msgid "&Open G-code"
|
msgid "&Open G-code"
|
||||||
msgstr "&G kodunu aç"
|
msgstr "&G kodunu aç"
|
||||||
@@ -8219,9 +8210,8 @@ msgstr "Bu dosyalar birden fazla parçadan oluşan tek bir nesne olarak mı yük
|
|||||||
msgid "An object with multiple parts was detected"
|
msgid "An object with multiple parts was detected"
|
||||||
msgstr "Birden fazla parçaya sahip nesne algılandı"
|
msgstr "Birden fazla parçaya sahip nesne algılandı"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Auto-Drop"
|
msgid "Auto-Drop"
|
||||||
msgstr "Otomatik Bırakma"
|
msgstr "Otomatik düşür"
|
||||||
|
|
||||||
#, c-format, boost-format
|
#, c-format, boost-format
|
||||||
msgid "Connected printer is %s. It must match the project preset for printing.\n"
|
msgid "Connected printer is %s. It must match the project preset for printing.\n"
|
||||||
@@ -8296,9 +8286,8 @@ msgstr "Seçilen nesne bölünemedi."
|
|||||||
msgid "Split to Objects"
|
msgid "Split to Objects"
|
||||||
msgstr "Nesnelere Ayır"
|
msgstr "Nesnelere Ayır"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Disable Auto-Drop to preserve Z positioning?\n"
|
msgid "Disable Auto-Drop to preserve Z positioning?\n"
|
||||||
msgstr "Z konumunu korumak için Otomatik Bırakma devre dışı bırakılsın mı?\n"
|
msgstr "Z konumunu korumak için Otomatik düşürme devre dışı bırakılsın mı?\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Object with floating parts was detected"
|
msgid "Object with floating parts was detected"
|
||||||
@@ -8335,21 +8324,21 @@ msgstr "Değiştirme için dizin seçilmedi"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Dizindeki 3D dosyalarla değiştirildi:\n"
|
msgstr "Dizindeki 3D dosyalarla değiştirildi:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ %1% atlandı: aynı dosya.\n"
|
msgstr "✖ %s atlandı: aynı dosya.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ %1% atlandı: dosya mevcut değil.\n"
|
msgstr "✖ %s atlandı: dosya mevcut değil.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ %1% atlandı: değiştirilemedi.\n"
|
msgstr "✖ %s atlandı: değiştirilemedi.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ %1% değiştirildi.\n"
|
msgstr "✔ %s değiştirildi.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Değiştirilen birimler"
|
msgstr "Değiştirilen birimler"
|
||||||
@@ -8433,7 +8422,7 @@ msgid "Creating a new project"
|
|||||||
msgstr "Yeni bir proje oluşturma"
|
msgstr "Yeni bir proje oluşturma"
|
||||||
|
|
||||||
msgid "Load project"
|
msgid "Load project"
|
||||||
msgstr "Projeyi Aç"
|
msgstr "Projeyi aç"
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Failed to save the project.\n"
|
"Failed to save the project.\n"
|
||||||
@@ -8869,10 +8858,10 @@ msgid "Current Association: "
|
|||||||
msgstr "Mevcut Bağlantı: "
|
msgstr "Mevcut Bağlantı: "
|
||||||
|
|
||||||
msgid "Current Instance"
|
msgid "Current Instance"
|
||||||
msgstr "Mevcut Örnek"
|
msgstr "Mevcut Kopya"
|
||||||
|
|
||||||
msgid "Current Instance Path: "
|
msgid "Current Instance Path: "
|
||||||
msgstr "Mevcut Örnek Yolu: "
|
msgstr "Mevcut Kopya Yolu: "
|
||||||
|
|
||||||
msgid "General"
|
msgid "General"
|
||||||
msgstr "Genel"
|
msgstr "Genel"
|
||||||
@@ -10708,7 +10697,7 @@ msgid "Reserved keywords found"
|
|||||||
msgstr "Ayrılmış anahtar kelimeler bulundu"
|
msgstr "Ayrılmış anahtar kelimeler bulundu"
|
||||||
|
|
||||||
msgid "Setting Overrides"
|
msgid "Setting Overrides"
|
||||||
msgstr "Ayarların Üzerine Yazma"
|
msgstr "Ayarların Üzerine Yaz"
|
||||||
|
|
||||||
msgid "Basic information"
|
msgid "Basic information"
|
||||||
msgstr "Temel Bilgiler"
|
msgstr "Temel Bilgiler"
|
||||||
@@ -12227,7 +12216,7 @@ msgid "Group error in manual mode. Please check nozzle count or regroup."
|
|||||||
msgstr "Elle modda gruplama hatası. Lütfen nozul sayısını denetleyin veya yeniden gruplayın."
|
msgstr "Elle modda gruplama hatası. Lütfen nozul sayısını denetleyin veya yeniden gruplayın."
|
||||||
|
|
||||||
msgid "Internal Bridge"
|
msgid "Internal Bridge"
|
||||||
msgstr "İç Köprü"
|
msgstr "İç köprü"
|
||||||
|
|
||||||
msgid "undefined error"
|
msgid "undefined error"
|
||||||
msgstr "bilinmeyen hata"
|
msgstr "bilinmeyen hata"
|
||||||
@@ -12920,7 +12909,6 @@ msgstr "Çıkıntı bu belirtilen eşiği aştığında, soğutma fanını aşa
|
|||||||
msgid "External bridge infill direction"
|
msgid "External bridge infill direction"
|
||||||
msgstr "Dış köprü dolgu yönü"
|
msgstr "Dış köprü dolgu yönü"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
#, no-c-format, no-boost-format
|
#, no-c-format, no-boost-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"External Bridging angle override.\n"
|
"External Bridging angle override.\n"
|
||||||
@@ -12937,14 +12925,13 @@ msgstr ""
|
|||||||
"Aksi hâlde verilen açı şuna göre kullanılır:\n"
|
"Aksi hâlde verilen açı şuna göre kullanılır:\n"
|
||||||
" - Mutlak koordinatlar\n"
|
" - Mutlak koordinatlar\n"
|
||||||
" - Mutlak koordinatlar + Model dönüşü: Yönleri modele hizala etkinse\n"
|
" - Mutlak koordinatlar + Model dönüşü: Yönleri modele hizala etkinse\n"
|
||||||
" - En uygun otomatik açı + bu değer: 'Göreli Köprü Açısı' etkinse\n"
|
" - En uygun otomatik açı + bu değer: ‘Göreceli Köprü Açısı' etkinse\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Sıfır mutlak açı için 180° kullanın."
|
"Sıfır mutlak açı için 180° kullanın."
|
||||||
|
|
||||||
msgid "Internal bridge infill direction"
|
msgid "Internal bridge infill direction"
|
||||||
msgstr "İç köprü dolgu yönü"
|
msgstr "İç köprü dolgu yönü"
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Internal Bridging angle override.\n"
|
"Internal Bridging angle override.\n"
|
||||||
"If left to zero, the bridging angle will be calculated automatically for each specific bridge.\n"
|
"If left to zero, the bridging angle will be calculated automatically for each specific bridge.\n"
|
||||||
@@ -12960,13 +12947,12 @@ msgstr ""
|
|||||||
"Aksi hâlde verilen açı şuna göre kullanılır:\n"
|
"Aksi hâlde verilen açı şuna göre kullanılır:\n"
|
||||||
" - Mutlak koordinatlar\n"
|
" - Mutlak koordinatlar\n"
|
||||||
" - Mutlak koordinatlar + Model dönüşü: Yönleri modele hizala etkinse\n"
|
" - Mutlak koordinatlar + Model dönüşü: Yönleri modele hizala etkinse\n"
|
||||||
" - En uygun otomatik açı + bu değer: 'Göreli Köprü Açısı' etkinse\n"
|
" - En uygun otomatik açı + bu değer: 'Göreceli Köprü Açısı' etkinse\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Sıfır mutlak açı için 180° kullanın."
|
"Sıfır mutlak açı için 180° kullanın."
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Relative bridge angle"
|
msgid "Relative bridge angle"
|
||||||
msgstr "Göreli köprü açısı"
|
msgstr "Göreceli köprü açısı"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "When enabled, the bridge angle values are added to the automatically calculated bridge direction instead of overriding it."
|
msgid "When enabled, the bridge angle values are added to the automatically calculated bridge direction instead of overriding it."
|
||||||
@@ -13413,7 +13399,7 @@ msgstr ""
|
|||||||
"Not: Elde edilen değer ilk katman akış oranından etkilenmez."
|
"Not: Elde edilen değer ilk katman akış oranından etkilenmez."
|
||||||
|
|
||||||
msgid "Brim follows compensated outline"
|
msgid "Brim follows compensated outline"
|
||||||
msgstr "Kenar telafi edilen taslağı takip ediyor"
|
msgstr "Kenar toleranslı dış sınırı takip etsin"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -13724,13 +13710,13 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Dikey kabuk kalınlığını garanti etmek için eğimli yüzeylerin yakınına katı dolgu ekleyin (üst + alt katı katmanlar)\n"
|
"Dikey kabuk kalınlığını garanti etmek için eğimli yüzeylerin yakınına katı dolgu ekleyin (üst + alt katı katmanlar)\n"
|
||||||
"Yok: Hiçbir yere katı dolgu eklenmez. Dikkat: Modelinizin eğimli yüzeyleri varsa bu seçeneği dikkatli kullanın.\n"
|
"Yok: Hiçbir yere katı dolgu eklenmez. Dikkat: Modelinizin eğimli yüzeyleri varsa bu seçeneği dikkatli kullanın.\n"
|
||||||
"Yalnızca kritik: Duvarlar için katı dolgu eklemekten kaçının\n"
|
"Kritik: Duvarlar için katı dolgu eklemekten kaçının\n"
|
||||||
"Orta: Yalnızca çok eğimli yüzeyler için katı dolgu ekleyin\n"
|
"Orta: Yalnızca çok eğimli yüzeyler için katı dolgu ekleyin\n"
|
||||||
"Hepsi: Tüm uygun eğimli yüzeyler için katı dolgu ekleyin\n"
|
"Hepsi: Tüm uygun eğimli yüzeyler için katı dolgu ekleyin\n"
|
||||||
"Varsayılan değer Tümü'dür."
|
"Varsayılan değer Tümü'dür."
|
||||||
|
|
||||||
msgid "Critical Only"
|
msgid "Critical Only"
|
||||||
msgstr "Yalnızca kritik"
|
msgstr "Kritik"
|
||||||
|
|
||||||
msgid "Moderate"
|
msgid "Moderate"
|
||||||
msgstr "Orta"
|
msgstr "Orta"
|
||||||
@@ -14247,7 +14233,7 @@ msgid "By First filament"
|
|||||||
msgstr "İlk filamente göre"
|
msgstr "İlk filamente göre"
|
||||||
|
|
||||||
msgid "By Highest Temp"
|
msgid "By Highest Temp"
|
||||||
msgstr "En Yüksek Sıcaklığa Göre"
|
msgstr "En yüksek sıcaklığa göre"
|
||||||
|
|
||||||
msgid "Filament diameter is used to calculate extrusion variables in G-code, so it is important that this is accurate and precise."
|
msgid "Filament diameter is used to calculate extrusion variables in G-code, so it is important that this is accurate and precise."
|
||||||
msgstr "Filament çapı, gcode'da ekstrüzyonu hesaplamak için kullanılır; bu nedenle önemlidir ve doğru olmalıdır."
|
msgstr "Filament çapı, gcode'da ekstrüzyonu hesaplamak için kullanılır; bu nedenle önemlidir ve doğru olmalıdır."
|
||||||
@@ -14685,10 +14671,10 @@ msgid "Marlin Firmware Junction Deviation (replaces the traditional XY Jerk sett
|
|||||||
msgstr "Marlin Firmware Köşe Sapması (geleneksel XY Sarsıntı ayarının yerini alır)"
|
msgstr "Marlin Firmware Köşe Sapması (geleneksel XY Sarsıntı ayarının yerini alır)"
|
||||||
|
|
||||||
msgid "Jerk of outer walls."
|
msgid "Jerk of outer walls."
|
||||||
msgstr "Dış duvar JERK değeri."
|
msgstr "Dış duvar sarsıntı değeri."
|
||||||
|
|
||||||
msgid "Jerk of inner walls."
|
msgid "Jerk of inner walls."
|
||||||
msgstr "İç duvarlar JERK değeri."
|
msgstr "İç duvarlar sarsıntı değeri."
|
||||||
|
|
||||||
msgid "Jerk for top surface."
|
msgid "Jerk for top surface."
|
||||||
msgstr "Üst yüzey için JERK değeri."
|
msgstr "Üst yüzey için JERK değeri."
|
||||||
@@ -15721,7 +15707,7 @@ msgid ""
|
|||||||
"If your Marlin 2 printer uses Classic Jerk set this value to 0.)"
|
"If your Marlin 2 printer uses Classic Jerk set this value to 0.)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Maksimum bağlantı sapması (M205 J, yalnızca Marlin Aygıt Yazılımı için JD > 0 ise geçerlidir)\n"
|
"Maksimum bağlantı sapması (M205 J, yalnızca Marlin Aygıt Yazılımı için JD > 0 ise geçerlidir)\n"
|
||||||
"Marlin 2 yazıcınız Classic Jerk kullanıyorsa bu değeri 0 olarak ayarlayın.)"
|
"Marlin 2 yazıcınız Classic sarsıntı kullanıyorsa bu değeri 0 olarak ayarlayın.)"
|
||||||
|
|
||||||
msgid "Minimum speed for extruding"
|
msgid "Minimum speed for extruding"
|
||||||
msgstr "Ekstrüzyon için minimum hız"
|
msgstr "Ekstrüzyon için minimum hız"
|
||||||
@@ -16914,7 +16900,7 @@ msgid "This setting only generates supports that begin on the build plate."
|
|||||||
msgstr "Model yüzeyinde destek oluşturmayın, yalnızca baskı plakasında."
|
msgstr "Model yüzeyinde destek oluşturmayın, yalnızca baskı plakasında."
|
||||||
|
|
||||||
msgid "Support critical regions only"
|
msgid "Support critical regions only"
|
||||||
msgstr "Yalnızca kritik bölgeleri destekleyin"
|
msgstr "Kritik bölgeleri destekleyin"
|
||||||
|
|
||||||
msgid "Only create support for critical regions including sharp tail, cantilever, etc."
|
msgid "Only create support for critical regions including sharp tail, cantilever, etc."
|
||||||
msgstr "Yalnızca keskin kuyruk, konsol vb. gibi kritik bölgeler için destek oluşturun."
|
msgstr "Yalnızca keskin kuyruk, konsol vb. gibi kritik bölgeler için destek oluşturun."
|
||||||
@@ -19288,13 +19274,13 @@ msgid ""
|
|||||||
"To test Classic Jerk, set 'Maximum Junction Deviation' in Motion ability to 0."
|
"To test Classic Jerk, set 'Maximum Junction Deviation' in Motion ability to 0."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Marlin 2 Kavşak Sapması tespit edildi:\n"
|
"Marlin 2 Kavşak Sapması tespit edildi:\n"
|
||||||
"Classic Jerk'i test etmek için Hareket yeteneğinde 'Maksimum Kavşak Sapması'nı 0'a ayarlayın."
|
"Classic sarsıntıyı test etmek için Hareket yeteneğinde 'Maksimum Kavşak Sapması'nı 0'a ayarlayın."
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Marlin 2 Classic Jerk detected:\n"
|
"Marlin 2 Classic Jerk detected:\n"
|
||||||
"To test Junction Deviation, set 'Maximum Junction Deviation' in Motion ability to a value > 0."
|
"To test Junction Deviation, set 'Maximum Junction Deviation' in Motion ability to a value > 0."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Marlin 2 Classic Jerk tespit edildi:\n"
|
"Marlin 2 Classic sarsıntı tespit edildi:\n"
|
||||||
"Kavşak Sapmasını test etmek için Hareket yeteneğinde 'Maksimum Kavşak Sapması'nı > 0 değerine ayarlayın."
|
"Kavşak Sapmasını test etmek için Hareket yeteneğinde 'Maksimum Kavşak Sapması'nı > 0 değerine ayarlayın."
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -19538,7 +19524,7 @@ msgid "Start Test Single-Thread"
|
|||||||
msgstr "Tek İş Parçacığı Testini Başlat"
|
msgstr "Tek İş Parçacığı Testini Başlat"
|
||||||
|
|
||||||
msgid "Export Log"
|
msgid "Export Log"
|
||||||
msgstr "Logu Dışa Aktar"
|
msgstr "Logu dışa aktar"
|
||||||
|
|
||||||
msgid "OrcaSlicer Version:"
|
msgid "OrcaSlicer Version:"
|
||||||
msgstr "OrcaSlicer Sürümü:"
|
msgstr "OrcaSlicer Sürümü:"
|
||||||
@@ -20281,9 +20267,8 @@ msgstr "Sistem klasörü silinemedi..."
|
|||||||
msgid "Failed to determine executable path."
|
msgid "Failed to determine executable path."
|
||||||
msgstr "Yürütülebilir dosya yolu belirlenemedi."
|
msgstr "Yürütülebilir dosya yolu belirlenemedi."
|
||||||
|
|
||||||
# AI Translated
|
|
||||||
msgid "Failed to launch a new instance."
|
msgid "Failed to launch a new instance."
|
||||||
msgstr "Yeni bir örnek başlatılamadı."
|
msgstr "Yeni bir kopya başlatılamadı."
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "log(s)"
|
msgid "log(s)"
|
||||||
|
|||||||
@@ -8306,21 +8306,21 @@ msgstr "Каталог для заміни не вибрано"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "Замінено 3D-файлами з каталогу:\n"
|
msgstr "Замінено 3D-файлами з каталогу:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Пропущено %1%: той самий файл.\n"
|
msgstr "✖ Пропущено %s: той самий файл.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Пропущено %1%: файл не існує.\n"
|
msgstr "✖ Пропущено %s: файл не існує.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Пропущено %1%: не вдалося замінити.\n"
|
msgstr "✖ Пропущено %s: не вдалося замінити.\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Замінено %1%.\n"
|
msgstr "✔ Замінено %s.\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "Замінені обʼєми"
|
msgstr "Замінені обʼєми"
|
||||||
|
|||||||
@@ -8721,24 +8721,24 @@ msgid "Replaced with 3D files from directory:\n"
|
|||||||
msgstr "Đã thay thế bằng file 3D từ thư mục:\n"
|
msgstr "Đã thay thế bằng file 3D từ thư mục:\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ Đã bỏ qua %1%: cùng một file.\n"
|
msgstr "✖ Đã bỏ qua %s: cùng một file.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ Đã bỏ qua %1%: file không tồn tại.\n"
|
msgstr "✖ Đã bỏ qua %s: file không tồn tại.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ Đã bỏ qua %1%: thay thế thất bại.\n"
|
msgstr "✖ Đã bỏ qua %s: thay thế thất bại.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ Đã thay thế %1%.\n"
|
msgstr "✔ Đã thay thế %s.\n"
|
||||||
|
|
||||||
# AI Translated
|
# AI Translated
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
|
|||||||
@@ -8028,21 +8028,21 @@ msgstr "未选择替换目录"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "替换为目录中的 3D 文件:\n"
|
msgstr "替换为目录中的 3D 文件:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ 跳过 %1%:同一文件。\n"
|
msgstr "✖ 跳过 %s:同一文件。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ 跳过%1%:文件不存在。\n"
|
msgstr "✖ 跳过%s:文件不存在。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ 跳过%1%:替换失败。\n"
|
msgstr "✖ 跳过%s:替换失败。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ 替换了 %1%。\n"
|
msgstr "✔ 替换了 %s。\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "替换的卷"
|
msgstr "替换的卷"
|
||||||
|
|||||||
@@ -8193,21 +8193,21 @@ msgstr "未選擇替換的目錄"
|
|||||||
msgid "Replaced with 3D files from directory:\n"
|
msgid "Replaced with 3D files from directory:\n"
|
||||||
msgstr "已從目錄替換為 3D 檔案:\n"
|
msgstr "已從目錄替換為 3D 檔案:\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: same file.\n"
|
msgid "✖ Skipped %s: same file.\n"
|
||||||
msgstr "✖ 已跳過 %1%:相同檔案。\n"
|
msgstr "✖ 已跳過 %s:相同檔案。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: file does not exist.\n"
|
msgid "✖ Skipped %s: file does not exist.\n"
|
||||||
msgstr "✖ 已跳過 %1%:檔案不存在。\n"
|
msgstr "✖ 已跳過 %s:檔案不存在。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✖ Skipped %1%: failed to replace.\n"
|
msgid "✖ Skipped %s: failed to replace.\n"
|
||||||
msgstr "✖ 已跳過 %1%:無法替換。\n"
|
msgstr "✖ 已跳過 %s:無法替換。\n"
|
||||||
|
|
||||||
#, boost-format
|
#, c-format
|
||||||
msgid "✔ Replaced %1%.\n"
|
msgid "✔ Replaced %s.\n"
|
||||||
msgstr "✔ 已替換 %1%。\n"
|
msgstr "✔ 已替換 %s。\n"
|
||||||
|
|
||||||
msgid "Replaced volumes"
|
msgid "Replaced volumes"
|
||||||
msgstr "已替換體積"
|
msgstr "已替換體積"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "Creality",
|
"name": "Creality",
|
||||||
"version": "02.03.02.75",
|
"version": "02.03.02.76",
|
||||||
"force_update": "0",
|
"force_update": "0",
|
||||||
"description": "Creality configurations",
|
"description": "Creality configurations",
|
||||||
"machine_model_list": [
|
"machine_model_list": [
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -38,7 +38,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -128,7 +128,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -124,7 +124,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
+1
-1
@@ -38,7 +38,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -128,7 +128,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -128,7 +128,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -38,7 +38,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "1",
|
"enable_prime_tower": "1",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -126,7 +126,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
"draft_shield": "disabled",
|
"draft_shield": "disabled",
|
||||||
"elefant_foot_compensation": "0.15",
|
"elefant_foot_compensation": "0.15",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enable_prime_tower": "0",
|
"enable_prime_tower": "0",
|
||||||
"enable_support": "0",
|
"enable_support": "0",
|
||||||
|
|||||||
@@ -126,7 +126,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
+1
-1
@@ -126,7 +126,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
@@ -126,7 +126,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
@@ -126,7 +126,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
+1
-1
@@ -126,7 +126,7 @@
|
|||||||
"detect_narrow_internal_solid_infill": "1",
|
"detect_narrow_internal_solid_infill": "1",
|
||||||
"dont_filter_internal_bridges": "disabled",
|
"dont_filter_internal_bridges": "disabled",
|
||||||
"elefant_foot_compensation_layers": "1",
|
"elefant_foot_compensation_layers": "1",
|
||||||
"enable_arc_fitting": "1",
|
"enable_arc_fitting": "0",
|
||||||
"enable_overhang_speed": "1",
|
"enable_overhang_speed": "1",
|
||||||
"enforce_support_layers": "0",
|
"enforce_support_layers": "0",
|
||||||
"ensure_vertical_shell_thickness": "ensure_all",
|
"ensure_vertical_shell_thickness": "ensure_all",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "Custom Printer",
|
"name": "Custom Printer",
|
||||||
"version": "02.04.00.01",
|
"version": "02.04.00.03",
|
||||||
"force_update": "0",
|
"force_update": "0",
|
||||||
"description": "My configurations",
|
"description": "My configurations",
|
||||||
"machine_model_list": [
|
"machine_model_list": [
|
||||||
|
|||||||
@@ -24,12 +24,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -24,12 +24,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -24,12 +24,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -24,12 +24,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -25,12 +25,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -25,12 +25,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -25,12 +25,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -25,12 +25,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -25,12 +25,6 @@
|
|||||||
"filament_loading_speed_start": [
|
"filament_loading_speed_start": [
|
||||||
"50"
|
"50"
|
||||||
],
|
],
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"1"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"40"
|
|
||||||
],
|
|
||||||
"filament_stamping_distance": [
|
"filament_stamping_distance": [
|
||||||
"45"
|
"45"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -116,7 +116,7 @@
|
|||||||
"deretraction_speed": [
|
"deretraction_speed": [
|
||||||
"30"
|
"30"
|
||||||
],
|
],
|
||||||
"z_hop_types": "Normal Lift",
|
"z_hop_types": "Slope Lift",
|
||||||
"silent_mode": "0",
|
"silent_mode": "0",
|
||||||
"single_extruder_multi_material": "1",
|
"single_extruder_multi_material": "1",
|
||||||
"change_filament_gcode": "",
|
"change_filament_gcode": "",
|
||||||
|
|||||||
@@ -118,7 +118,7 @@
|
|||||||
"deretraction_speed": [
|
"deretraction_speed": [
|
||||||
"30"
|
"30"
|
||||||
],
|
],
|
||||||
"z_hop_types": "Normal Lift",
|
"z_hop_types": "Slope Lift",
|
||||||
"silent_mode": "0",
|
"silent_mode": "0",
|
||||||
"single_extruder_multi_material": "1",
|
"single_extruder_multi_material": "1",
|
||||||
"change_filament_gcode": "",
|
"change_filament_gcode": "",
|
||||||
|
|||||||
@@ -116,7 +116,7 @@
|
|||||||
"deretraction_speed": [
|
"deretraction_speed": [
|
||||||
"30"
|
"30"
|
||||||
],
|
],
|
||||||
"z_hop_types": "Normal Lift",
|
"z_hop_types": "Slope Lift",
|
||||||
"silent_mode": "0",
|
"silent_mode": "0",
|
||||||
"single_extruder_multi_material": "1",
|
"single_extruder_multi_material": "1",
|
||||||
"change_filament_gcode": "",
|
"change_filament_gcode": "",
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
"instantiation": "false",
|
"instantiation": "false",
|
||||||
"gcode_flavor": "klipper",
|
"gcode_flavor": "klipper",
|
||||||
"single_extruder_multi_material": "0",
|
"single_extruder_multi_material": "0",
|
||||||
|
"wait_for_temp_on_wipe_tower": "1",
|
||||||
"default_filament_profile": [
|
"default_filament_profile": [
|
||||||
"Generic PLA @MyToolChanger"
|
"Generic PLA @MyToolChanger"
|
||||||
],
|
],
|
||||||
@@ -172,11 +173,11 @@
|
|||||||
"0.4"
|
"0.4"
|
||||||
],
|
],
|
||||||
"z_hop_types": [
|
"z_hop_types": [
|
||||||
"Normal Lift",
|
"Slope Lift",
|
||||||
"Normal Lift",
|
"Slope Lift",
|
||||||
"Normal Lift",
|
"Slope Lift",
|
||||||
"Normal Lift",
|
"Slope Lift",
|
||||||
"Normal Lift"
|
"Slope Lift"
|
||||||
],
|
],
|
||||||
"purge_in_prime_tower": "0",
|
"purge_in_prime_tower": "0",
|
||||||
"machine_pause_gcode": "M601",
|
"machine_pause_gcode": "M601",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "OrcaFilamentLibrary",
|
"name": "OrcaFilamentLibrary",
|
||||||
"version": "02.04.00.03",
|
"version": "02.04.00.04",
|
||||||
"force_update": "0",
|
"force_update": "0",
|
||||||
"description": "Orca Filament Library",
|
"description": "Orca Filament Library",
|
||||||
"filament_list": [
|
"filament_list": [
|
||||||
|
|||||||
@@ -36,6 +36,9 @@
|
|||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"8"
|
"8"
|
||||||
],
|
],
|
||||||
|
"filament_multitool_ramming_flow": [
|
||||||
|
"8"
|
||||||
|
],
|
||||||
"filament_type": [
|
"filament_type": [
|
||||||
"PET-CF"
|
"PET-CF"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -39,6 +39,9 @@
|
|||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"8"
|
"8"
|
||||||
],
|
],
|
||||||
|
"filament_multitool_ramming_flow": [
|
||||||
|
"8"
|
||||||
|
],
|
||||||
"filament_vendor": [
|
"filament_vendor": [
|
||||||
"Bambu Lab"
|
"Bambu Lab"
|
||||||
],
|
],
|
||||||
|
|||||||
+3
@@ -39,6 +39,9 @@
|
|||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"6"
|
"6"
|
||||||
],
|
],
|
||||||
|
"filament_multitool_ramming_flow": [
|
||||||
|
"6"
|
||||||
|
],
|
||||||
"filament_vendor": [
|
"filament_vendor": [
|
||||||
"Bambu Lab"
|
"Bambu Lab"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -21,6 +21,9 @@
|
|||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"6"
|
"6"
|
||||||
],
|
],
|
||||||
|
"filament_multitool_ramming_flow": [
|
||||||
|
"6"
|
||||||
|
],
|
||||||
"filament_type": [
|
"filament_type": [
|
||||||
"PLA-AERO"
|
"PLA-AERO"
|
||||||
],
|
],
|
||||||
|
|||||||
+3
@@ -27,6 +27,9 @@
|
|||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"6"
|
"6"
|
||||||
],
|
],
|
||||||
|
"filament_multitool_ramming_flow": [
|
||||||
|
"6"
|
||||||
|
],
|
||||||
"filament_scarf_seam_type": [
|
"filament_scarf_seam_type": [
|
||||||
"none"
|
"none"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -21,6 +21,9 @@
|
|||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"6"
|
"6"
|
||||||
],
|
],
|
||||||
|
"filament_multitool_ramming_flow": [
|
||||||
|
"6"
|
||||||
|
],
|
||||||
"filament_vendor": [
|
"filament_vendor": [
|
||||||
"Bambu Lab"
|
"Bambu Lab"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -36,6 +36,9 @@
|
|||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"1"
|
"1"
|
||||||
],
|
],
|
||||||
|
"filament_multitool_ramming_flow": [
|
||||||
|
"1"
|
||||||
|
],
|
||||||
"filament_retraction_minimum_travel": [
|
"filament_retraction_minimum_travel": [
|
||||||
"3"
|
"3"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -72,15 +72,6 @@
|
|||||||
"fan_min_speed": [
|
"fan_min_speed": [
|
||||||
"10"
|
"10"
|
||||||
],
|
],
|
||||||
"filament_cooling_final_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cooling_initial_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cooling_moves": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cost": [
|
"filament_cost": [
|
||||||
"599"
|
"599"
|
||||||
],
|
],
|
||||||
@@ -99,30 +90,12 @@
|
|||||||
"filament_is_support": [
|
"filament_is_support": [
|
||||||
"0"
|
"0"
|
||||||
],
|
],
|
||||||
"filament_loading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_loading_speed_start": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_long_retractions_when_cut": [
|
"filament_long_retractions_when_cut": [
|
||||||
"nil"
|
"nil"
|
||||||
],
|
],
|
||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"15"
|
"15"
|
||||||
],
|
],
|
||||||
"filament_minimal_purge_on_wipe_tower": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"10"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_volume": [
|
|
||||||
"10"
|
|
||||||
],
|
|
||||||
"filament_notes": [
|
"filament_notes": [
|
||||||
""
|
""
|
||||||
],
|
],
|
||||||
@@ -165,21 +138,6 @@
|
|||||||
"filament_soluble": [
|
"filament_soluble": [
|
||||||
"0"
|
"0"
|
||||||
],
|
],
|
||||||
"filament_stamping_distance": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_stamping_loading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_toolchange_delay": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_unloading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_unloading_speed_start": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_vendor": [
|
"filament_vendor": [
|
||||||
"Elas"
|
"Elas"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -42,15 +42,6 @@
|
|||||||
"fan_min_speed": [
|
"fan_min_speed": [
|
||||||
"20"
|
"20"
|
||||||
],
|
],
|
||||||
"filament_cooling_final_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cooling_initial_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cooling_moves": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cost": [
|
"filament_cost": [
|
||||||
"445"
|
"445"
|
||||||
],
|
],
|
||||||
@@ -69,30 +60,12 @@
|
|||||||
"filament_is_support": [
|
"filament_is_support": [
|
||||||
"0"
|
"0"
|
||||||
],
|
],
|
||||||
"filament_loading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_loading_speed_start": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_long_retractions_when_cut": [
|
"filament_long_retractions_when_cut": [
|
||||||
"1"
|
"1"
|
||||||
],
|
],
|
||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"18"
|
"18"
|
||||||
],
|
],
|
||||||
"filament_minimal_purge_on_wipe_tower": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"10"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_volume": [
|
|
||||||
"10"
|
|
||||||
],
|
|
||||||
"filament_notes": [
|
"filament_notes": [
|
||||||
""
|
""
|
||||||
],
|
],
|
||||||
@@ -135,21 +108,6 @@
|
|||||||
"filament_soluble": [
|
"filament_soluble": [
|
||||||
"0"
|
"0"
|
||||||
],
|
],
|
||||||
"filament_stamping_distance": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_stamping_loading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_toolchange_delay": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_unloading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_unloading_speed_start": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_wipe": [
|
"filament_wipe": [
|
||||||
"nil"
|
"nil"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -71,15 +71,6 @@
|
|||||||
"fan_min_speed": [
|
"fan_min_speed": [
|
||||||
"60"
|
"60"
|
||||||
],
|
],
|
||||||
"filament_cooling_final_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cooling_initial_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cooling_moves": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cost": [
|
"filament_cost": [
|
||||||
"449.5"
|
"449.5"
|
||||||
],
|
],
|
||||||
@@ -98,30 +89,12 @@
|
|||||||
"filament_is_support": [
|
"filament_is_support": [
|
||||||
"0"
|
"0"
|
||||||
],
|
],
|
||||||
"filament_loading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_loading_speed_start": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_long_retractions_when_cut": [
|
"filament_long_retractions_when_cut": [
|
||||||
"nil"
|
"nil"
|
||||||
],
|
],
|
||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"25"
|
"25"
|
||||||
],
|
],
|
||||||
"filament_minimal_purge_on_wipe_tower": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"10"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_volume": [
|
|
||||||
"10"
|
|
||||||
],
|
|
||||||
"filament_notes": [
|
"filament_notes": [
|
||||||
""
|
""
|
||||||
],
|
],
|
||||||
@@ -164,21 +137,6 @@
|
|||||||
"filament_soluble": [
|
"filament_soluble": [
|
||||||
"0"
|
"0"
|
||||||
],
|
],
|
||||||
"filament_stamping_distance": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_stamping_loading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_toolchange_delay": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_unloading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_unloading_speed_start": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_vendor": [
|
"filament_vendor": [
|
||||||
"Elas"
|
"Elas"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -71,15 +71,6 @@
|
|||||||
"fan_min_speed": [
|
"fan_min_speed": [
|
||||||
"100"
|
"100"
|
||||||
],
|
],
|
||||||
"filament_cooling_final_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cooling_initial_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cooling_moves": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_cost": [
|
"filament_cost": [
|
||||||
"500"
|
"500"
|
||||||
],
|
],
|
||||||
@@ -98,30 +89,12 @@
|
|||||||
"filament_is_support": [
|
"filament_is_support": [
|
||||||
"0"
|
"0"
|
||||||
],
|
],
|
||||||
"filament_loading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_loading_speed_start": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_long_retractions_when_cut": [
|
"filament_long_retractions_when_cut": [
|
||||||
"nil"
|
"nil"
|
||||||
],
|
],
|
||||||
"filament_max_volumetric_speed": [
|
"filament_max_volumetric_speed": [
|
||||||
"18"
|
"18"
|
||||||
],
|
],
|
||||||
"filament_minimal_purge_on_wipe_tower": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_flow": [
|
|
||||||
"10"
|
|
||||||
],
|
|
||||||
"filament_multitool_ramming_volume": [
|
|
||||||
"10"
|
|
||||||
],
|
|
||||||
"filament_notes": [
|
"filament_notes": [
|
||||||
""
|
""
|
||||||
],
|
],
|
||||||
@@ -164,21 +137,6 @@
|
|||||||
"filament_soluble": [
|
"filament_soluble": [
|
||||||
"0"
|
"0"
|
||||||
],
|
],
|
||||||
"filament_stamping_distance": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_stamping_loading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_toolchange_delay": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_unloading_speed": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_unloading_speed_start": [
|
|
||||||
"0"
|
|
||||||
],
|
|
||||||
"filament_vendor": [
|
"filament_vendor": [
|
||||||
"Elas"
|
"Elas"
|
||||||
],
|
],
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user