mirror of
https://github.com/syncthing/syncthing.git
synced 2025-12-24 06:28:10 -05:00
Compare commits
22 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
99f96c5cb7 | ||
|
|
4329ba316f | ||
|
|
a78aedec7e | ||
|
|
f0d5dc5696 | ||
|
|
e40289ce7a | ||
|
|
b6d1e16b4e | ||
|
|
e700ef3208 | ||
|
|
45d145a281 | ||
|
|
b2996eee87 | ||
|
|
21d04b895a | ||
|
|
40bb52fdd8 | ||
|
|
1242ac74ab | ||
|
|
3bfd41c48b | ||
|
|
4fb7e04686 | ||
|
|
dc0dbed96e | ||
|
|
0cba3154f0 | ||
|
|
fec476cc80 | ||
|
|
bc3d306dd7 | ||
|
|
5237337626 | ||
|
|
368094e15d | ||
|
|
0f93e76e80 | ||
|
|
083fa1803a |
28
.github/workflows/update-docs-translations.yaml
vendored
Normal file
28
.github/workflows/update-docs-translations.yaml
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
name: Update translations and documentation
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: '42 3 * * 1'
|
||||
|
||||
jobs:
|
||||
|
||||
update_transifex_docs:
|
||||
runs-on: ubuntu-latest
|
||||
name: Update translations and documentation
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
token: ${{ secrets.ACTIONS_GITHUB_TOKEN }}
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: ^1.17.6
|
||||
- run: |
|
||||
set -euo pipefail
|
||||
git config --global user.name 'Syncthing Release Automation'
|
||||
git config --global user.email 'release@syncthing.net'
|
||||
bash build.sh translate
|
||||
bash build.sh prerelease
|
||||
git push
|
||||
env:
|
||||
TRANSIFEX_USER: ${{ secrets.TRANSIFEX_USER }}
|
||||
TRANSIFEX_PASS: ${{ secrets.TRANSIFEX_PASS }}
|
||||
5
build.go
5
build.go
@@ -47,6 +47,7 @@ var (
|
||||
cc string
|
||||
run string
|
||||
benchRun string
|
||||
buildOut string
|
||||
debugBinary bool
|
||||
coverage bool
|
||||
long bool
|
||||
@@ -374,6 +375,7 @@ func parseFlags() {
|
||||
flag.StringVar(&run, "run", "", "Specify which tests to run")
|
||||
flag.StringVar(&benchRun, "bench", "", "Specify which benchmarks to run")
|
||||
flag.BoolVar(&withNextGenGUI, "with-next-gen-gui", withNextGenGUI, "Also build 'newgui'")
|
||||
flag.StringVar(&buildOut, "build-out", "", "Set the '-o' value for 'go build'")
|
||||
flag.Parse()
|
||||
}
|
||||
|
||||
@@ -506,6 +508,9 @@ func build(target target, tags []string) {
|
||||
}
|
||||
|
||||
args := []string{"build", "-v"}
|
||||
if buildOut != "" {
|
||||
args = append(args, "-o", buildOut)
|
||||
}
|
||||
args = appendParameters(args, tags, target.buildPkgs...)
|
||||
runPrint(goCmd, args...)
|
||||
}
|
||||
|
||||
@@ -10,8 +10,10 @@ import (
|
||||
"bytes"
|
||||
"context"
|
||||
"crypto/tls"
|
||||
"encoding/base64"
|
||||
"encoding/json"
|
||||
"encoding/pem"
|
||||
"errors"
|
||||
"fmt"
|
||||
"log"
|
||||
"math/rand"
|
||||
@@ -229,10 +231,10 @@ func (s *apiSrv) handleGET(ctx context.Context, w http.ResponseWriter, req *http
|
||||
func (s *apiSrv) handlePOST(ctx context.Context, remoteAddr *net.TCPAddr, w http.ResponseWriter, req *http.Request) {
|
||||
reqID := ctx.Value(idKey).(requestID)
|
||||
|
||||
rawCert := certificateBytes(req)
|
||||
if rawCert == nil {
|
||||
rawCert, err := certificateBytes(req)
|
||||
if err != nil {
|
||||
if debug {
|
||||
log.Println(reqID, "no certificates")
|
||||
log.Println(reqID, "no certificates:", err)
|
||||
}
|
||||
announceRequestsTotal.WithLabelValues("no_certificate").Inc()
|
||||
w.Header().Set("Retry-After", errorRetryAfterString())
|
||||
@@ -304,9 +306,9 @@ func handlePing(w http.ResponseWriter, r *http.Request) {
|
||||
w.WriteHeader(204)
|
||||
}
|
||||
|
||||
func certificateBytes(req *http.Request) []byte {
|
||||
func certificateBytes(req *http.Request) ([]byte, error) {
|
||||
if req.TLS != nil && len(req.TLS.PeerCertificates) > 0 {
|
||||
return req.TLS.PeerCertificates[0].Raw
|
||||
return req.TLS.PeerCertificates[0].Raw, nil
|
||||
}
|
||||
|
||||
var bs []byte
|
||||
@@ -319,7 +321,7 @@ func certificateBytes(req *http.Request) []byte {
|
||||
hdr, err := url.QueryUnescape(hdr)
|
||||
if err != nil {
|
||||
// Decoding failed
|
||||
return nil
|
||||
return nil, err
|
||||
}
|
||||
|
||||
bs = []byte(hdr)
|
||||
@@ -338,6 +340,15 @@ func certificateBytes(req *http.Request) []byte {
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if hdr := req.Header.Get("X-Tls-Client-Cert-Der-Base64"); hdr != "" {
|
||||
// Caddy {tls_client_certificate_der_base64}
|
||||
hdr, err := base64.StdEncoding.DecodeString(hdr)
|
||||
if err != nil {
|
||||
// Decoding failed
|
||||
return nil, err
|
||||
}
|
||||
|
||||
bs = pem.EncodeToMemory(&pem.Block{Type: "CERTIFICATE", Bytes: hdr})
|
||||
} else if hdr := req.Header.Get("X-Forwarded-Tls-Client-Cert"); hdr != "" {
|
||||
// Traefik 2 passtlsclientcert
|
||||
// The certificate is in PEM format with url encoding but without newlines
|
||||
@@ -346,7 +357,7 @@ func certificateBytes(req *http.Request) []byte {
|
||||
hdr, err := url.QueryUnescape(hdr)
|
||||
if err != nil {
|
||||
// Decoding failed
|
||||
return nil
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for i := 64; i < len(hdr); i += 65 {
|
||||
@@ -359,16 +370,16 @@ func certificateBytes(req *http.Request) []byte {
|
||||
}
|
||||
|
||||
if bs == nil {
|
||||
return nil
|
||||
return nil, errors.New("empty certificate header")
|
||||
}
|
||||
|
||||
block, _ := pem.Decode(bs)
|
||||
if block == nil {
|
||||
// Decoding failed
|
||||
return nil
|
||||
return nil, errors.New("certificate decode result is empty")
|
||||
}
|
||||
|
||||
return block.Bytes
|
||||
return block.Bytes, nil
|
||||
}
|
||||
|
||||
// fixupAddresses checks the list of addresses, removing invalid ones and
|
||||
|
||||
@@ -10,8 +10,10 @@ import (
|
||||
"bytes"
|
||||
"context"
|
||||
"crypto/tls"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"io"
|
||||
"net"
|
||||
"net/http"
|
||||
"strings"
|
||||
@@ -25,6 +27,7 @@ import (
|
||||
type APIClient interface {
|
||||
Get(url string) (*http.Response, error)
|
||||
Post(url, body string) (*http.Response, error)
|
||||
PutJSON(url string, o interface{}) (*http.Response, error)
|
||||
}
|
||||
|
||||
type apiClient struct {
|
||||
@@ -118,20 +121,36 @@ func (c *apiClient) Do(req *http.Request) (*http.Response, error) {
|
||||
return resp, checkResponse(resp)
|
||||
}
|
||||
|
||||
func (c *apiClient) Get(url string) (*http.Response, error) {
|
||||
request, err := http.NewRequest("GET", c.Endpoint()+"rest/"+url, nil)
|
||||
func (c *apiClient) Request(url, method string, r io.Reader) (*http.Response, error) {
|
||||
request, err := http.NewRequest(method, c.Endpoint()+"rest/"+url, r)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return c.Do(request)
|
||||
}
|
||||
|
||||
func (c *apiClient) Post(url, body string) (*http.Response, error) {
|
||||
request, err := http.NewRequest("POST", c.Endpoint()+"rest/"+url, bytes.NewBufferString(body))
|
||||
func (c *apiClient) RequestString(url, method, data string) (*http.Response, error) {
|
||||
return c.Request(url, method, bytes.NewBufferString(data))
|
||||
}
|
||||
|
||||
func (c *apiClient) RequestJSON(url, method string, o interface{}) (*http.Response, error) {
|
||||
data, err := json.Marshal(o)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return c.Do(request)
|
||||
return c.Request(url, method, bytes.NewBuffer(data))
|
||||
}
|
||||
|
||||
func (c *apiClient) Get(url string) (*http.Response, error) {
|
||||
return c.RequestString(url, "GET", "")
|
||||
}
|
||||
|
||||
func (c *apiClient) Post(url, body string) (*http.Response, error) {
|
||||
return c.RequestString(url, "POST", body)
|
||||
}
|
||||
|
||||
func (c *apiClient) PutJSON(url string, o interface{}) (*http.Response, error) {
|
||||
return c.RequestJSON(url, "PUT", o)
|
||||
}
|
||||
|
||||
var errNotFound = errors.New("invalid endpoint or API call")
|
||||
|
||||
@@ -7,8 +7,12 @@
|
||||
package cli
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/syncthing/syncthing/lib/config"
|
||||
"github.com/syncthing/syncthing/lib/fs"
|
||||
"github.com/urfave/cli"
|
||||
)
|
||||
|
||||
@@ -38,6 +42,12 @@ var operationCommand = cli.Command{
|
||||
ArgsUsage: "[folder id]",
|
||||
Action: expects(1, foldersOverride),
|
||||
},
|
||||
{
|
||||
Name: "default-ignores",
|
||||
Usage: "Set the default ignores (config) from a file",
|
||||
ArgsUsage: "path",
|
||||
Action: expects(1, setDefaultIgnores),
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -74,3 +84,29 @@ func foldersOverride(c *cli.Context) error {
|
||||
}
|
||||
return fmt.Errorf("Folder " + rid + " not found")
|
||||
}
|
||||
|
||||
func setDefaultIgnores(c *cli.Context) error {
|
||||
client, err := getClientFactory(c).getClient()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dir, file := filepath.Split(c.Args()[0])
|
||||
filesystem := fs.NewFilesystem(fs.FilesystemTypeBasic, dir)
|
||||
|
||||
fd, err := filesystem.Open(file)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
scanner := bufio.NewScanner(fd)
|
||||
var lines []string
|
||||
for scanner.Scan() {
|
||||
lines = append(lines, scanner.Text())
|
||||
}
|
||||
fd.Close()
|
||||
if err := scanner.Err(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
_, err = client.PutJSON("config/defaults/ignores", config.Ignores{Lines: lines})
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -12,4 +12,5 @@ type CommonOptions struct {
|
||||
ConfDir string `name:"config" placeholder:"PATH" help:"Set configuration directory (config and keys)"`
|
||||
HomeDir string `name:"home" placeholder:"PATH" help:"Set configuration and data directory"`
|
||||
NoDefaultFolder bool `env:"STNODEFAULTFOLDER" help:"Don't create the \"default\" folder on first startup"`
|
||||
SkipPortProbing bool `help:"Don't try to find free ports for GUI and listen addresses on first startup"`
|
||||
}
|
||||
|
||||
@@ -53,18 +53,18 @@ func (c *CLI) Run() error {
|
||||
reader := bufio.NewReader(os.Stdin)
|
||||
password, _, err := reader.ReadLine()
|
||||
if err != nil {
|
||||
return fmt.Errorf("Failed reading GUI password: %w", err)
|
||||
return fmt.Errorf("failed reading GUI password: %w", err)
|
||||
}
|
||||
c.GUIPassword = string(password)
|
||||
}
|
||||
|
||||
if err := Generate(c.ConfDir, c.GUIUser, c.GUIPassword, c.NoDefaultFolder); err != nil {
|
||||
return fmt.Errorf("Failed to generate config and keys: %w", err)
|
||||
if err := Generate(c.ConfDir, c.GUIUser, c.GUIPassword, c.NoDefaultFolder, c.SkipPortProbing); err != nil {
|
||||
return fmt.Errorf("failed to generate config and keys: %w", err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func Generate(confDir, guiUser, guiPassword string, noDefaultFolder bool) error {
|
||||
func Generate(confDir, guiUser, guiPassword string, noDefaultFolder, skipPortProbing bool) error {
|
||||
dir, err := fs.ExpandTilde(confDir)
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -90,20 +90,13 @@ func Generate(confDir, guiUser, guiPassword string, noDefaultFolder bool) error
|
||||
log.Println("Device ID:", myID)
|
||||
|
||||
cfgFile := locations.Get(locations.ConfigFile)
|
||||
var cfg config.Wrapper
|
||||
if _, err := os.Stat(cfgFile); err == nil {
|
||||
if guiUser == "" && guiPassword == "" {
|
||||
log.Println("WARNING: Config exists; will not overwrite.")
|
||||
return nil
|
||||
}
|
||||
|
||||
if cfg, _, err = config.Load(cfgFile, myID, events.NoopLogger); err != nil {
|
||||
return fmt.Errorf("load config: %w", err)
|
||||
}
|
||||
} else {
|
||||
if cfg, err = syncthing.DefaultConfig(cfgFile, myID, events.NoopLogger, noDefaultFolder); err != nil {
|
||||
cfg, _, err := config.Load(cfgFile, myID, events.NoopLogger)
|
||||
if fs.IsNotExist(err) {
|
||||
if cfg, err = syncthing.DefaultConfig(cfgFile, myID, events.NoopLogger, noDefaultFolder, skipPortProbing); err != nil {
|
||||
return fmt.Errorf("create config: %w", err)
|
||||
}
|
||||
} else if err != nil {
|
||||
return fmt.Errorf("load config: %w", err)
|
||||
}
|
||||
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
@@ -136,7 +129,7 @@ func updateGUIAuthentication(guiCfg *config.GUIConfiguration, guiUser, guiPasswo
|
||||
|
||||
if guiPassword != "" && guiCfg.Password != guiPassword {
|
||||
if err := guiCfg.HashAndSetPassword(guiPassword); err != nil {
|
||||
return fmt.Errorf("Failed to set GUI authentication password: %w", err)
|
||||
return fmt.Errorf("failed to set GUI authentication password: %w", err)
|
||||
}
|
||||
log.Println("Updated GUI authentication password.")
|
||||
}
|
||||
|
||||
@@ -329,7 +329,7 @@ func (options serveOptions) Run() error {
|
||||
}
|
||||
|
||||
if options.BrowserOnly {
|
||||
if err := openGUI(protocol.EmptyDeviceID); err != nil {
|
||||
if err := openGUI(); err != nil {
|
||||
l.Warnln("Failed to open web UI:", err)
|
||||
os.Exit(svcutil.ExitError.AsInt())
|
||||
}
|
||||
@@ -337,7 +337,7 @@ func (options serveOptions) Run() error {
|
||||
}
|
||||
|
||||
if options.GenerateDir != "" {
|
||||
if err := generate.Generate(options.GenerateDir, "", "", options.NoDefaultFolder); err != nil {
|
||||
if err := generate.Generate(options.GenerateDir, "", "", options.NoDefaultFolder, options.SkipPortProbing); err != nil {
|
||||
l.Warnln("Failed to generate config and keys:", err)
|
||||
os.Exit(svcutil.ExitError.AsInt())
|
||||
}
|
||||
@@ -406,8 +406,8 @@ func (options serveOptions) Run() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func openGUI(myID protocol.DeviceID) error {
|
||||
cfg, err := loadOrDefaultConfig(myID, events.NoopLogger)
|
||||
func openGUI() error {
|
||||
cfg, err := loadOrDefaultConfig()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -452,7 +452,7 @@ func (e *errNoUpgrade) Error() string {
|
||||
}
|
||||
|
||||
func checkUpgrade() (upgrade.Release, error) {
|
||||
cfg, err := loadOrDefaultConfig(protocol.EmptyDeviceID, events.NoopLogger)
|
||||
cfg, err := loadOrDefaultConfig()
|
||||
if err != nil {
|
||||
return upgrade.Release{}, err
|
||||
}
|
||||
@@ -471,7 +471,7 @@ func checkUpgrade() (upgrade.Release, error) {
|
||||
}
|
||||
|
||||
func upgradeViaRest() error {
|
||||
cfg, err := loadOrDefaultConfig(protocol.EmptyDeviceID, events.NoopLogger)
|
||||
cfg, err := loadOrDefaultConfig()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -551,7 +551,7 @@ func syncthingMain(options serveOptions) {
|
||||
evLogger := events.NewLogger()
|
||||
earlyService.Add(evLogger)
|
||||
|
||||
cfgWrapper, err := syncthing.LoadConfigAtStartup(locations.Get(locations.ConfigFile), cert, evLogger, options.AllowNewerConfig, options.NoDefaultFolder)
|
||||
cfgWrapper, err := syncthing.LoadConfigAtStartup(locations.Get(locations.ConfigFile), cert, evLogger, options.AllowNewerConfig, options.NoDefaultFolder, options.SkipPortProbing)
|
||||
if err != nil {
|
||||
l.Warnln("Failed to initialize config:", err)
|
||||
os.Exit(svcutil.ExitError.AsInt())
|
||||
@@ -711,12 +711,15 @@ func setupSignalHandling(app *syncthing.App) {
|
||||
}()
|
||||
}
|
||||
|
||||
func loadOrDefaultConfig(myID protocol.DeviceID, evLogger events.Logger) (config.Wrapper, error) {
|
||||
// loadOrDefaultConfig creates a temporary, minimal configuration wrapper if no file
|
||||
// exists. As it disregards some command-line options, that should never be persisted.
|
||||
func loadOrDefaultConfig() (config.Wrapper, error) {
|
||||
cfgFile := locations.Get(locations.ConfigFile)
|
||||
cfg, _, err := config.Load(cfgFile, myID, evLogger)
|
||||
cfg, _, err := config.Load(cfgFile, protocol.EmptyDeviceID, events.NoopLogger)
|
||||
|
||||
if err != nil {
|
||||
cfg, err = syncthing.DefaultConfig(cfgFile, myID, evLogger, true)
|
||||
newCfg := config.New(protocol.EmptyDeviceID)
|
||||
return config.Wrap(cfgFile, newCfg, protocol.EmptyDeviceID, events.NoopLogger), nil
|
||||
}
|
||||
|
||||
return cfg, err
|
||||
|
||||
@@ -20,11 +20,9 @@ import (
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
"github.com/syncthing/syncthing/lib/events"
|
||||
"github.com/syncthing/syncthing/lib/fs"
|
||||
"github.com/syncthing/syncthing/lib/locations"
|
||||
"github.com/syncthing/syncthing/lib/osutil"
|
||||
"github.com/syncthing/syncthing/lib/protocol"
|
||||
"github.com/syncthing/syncthing/lib/svcutil"
|
||||
"github.com/syncthing/syncthing/lib/sync"
|
||||
)
|
||||
@@ -564,7 +562,7 @@ func childEnv() []string {
|
||||
// panicUploadMaxWait uploading panics...
|
||||
func maybeReportPanics() {
|
||||
// Try to get a config to see if/where panics should be reported.
|
||||
cfg, err := loadOrDefaultConfig(protocol.EmptyDeviceID, events.NoopLogger)
|
||||
cfg, err := loadOrDefaultConfig()
|
||||
if err != nil {
|
||||
l.Warnln("Couldn't load config; not reporting crash")
|
||||
return
|
||||
|
||||
11
go.mod
11
go.mod
@@ -3,8 +3,7 @@ module github.com/syncthing/syncthing
|
||||
require (
|
||||
github.com/AudriusButkevicius/pfilter v0.0.10
|
||||
github.com/AudriusButkevicius/recli v0.0.6
|
||||
github.com/alecthomas/kong v0.2.17
|
||||
github.com/bkaradzic/go-lz4 v0.0.0-20160924222819-7224d8d8f27e
|
||||
github.com/alecthomas/kong v0.3.0
|
||||
github.com/calmh/xdr v1.1.0
|
||||
github.com/ccding/go-stun v0.1.3
|
||||
github.com/certifi/gocertifi v0.0.0-20210507211836-431795d63e8d // indirect
|
||||
@@ -17,7 +16,6 @@ require (
|
||||
github.com/getsentry/raven-go v0.2.0
|
||||
github.com/go-asn1-ber/asn1-ber v1.5.3 // indirect
|
||||
github.com/go-ldap/ldap/v3 v3.4.1
|
||||
github.com/go-ole/go-ole v1.2.6-0.20210915003542-8b1f7f90f6b1 // indirect
|
||||
github.com/gobwas/glob v0.2.3
|
||||
github.com/gogo/protobuf v1.3.2
|
||||
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da
|
||||
@@ -30,19 +28,20 @@ require (
|
||||
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
|
||||
github.com/klauspost/cpuid/v2 v2.0.9 // indirect
|
||||
github.com/lib/pq v1.10.3
|
||||
github.com/lucas-clemente/quic-go v0.24.0
|
||||
github.com/lucas-clemente/quic-go v0.25.0
|
||||
github.com/maruel/panicparse v1.6.1
|
||||
github.com/maxbrunsfeld/counterfeiter/v6 v6.3.0
|
||||
github.com/minio/sha256-simd v1.0.0
|
||||
github.com/miscreant/miscreant.go v0.0.0-20200214223636-26d376326b75
|
||||
github.com/oschwald/geoip2-golang v1.5.0
|
||||
github.com/pierrec/lz4/v4 v4.1.12
|
||||
github.com/pkg/errors v0.9.1
|
||||
github.com/prometheus/client_golang v1.11.0
|
||||
github.com/prometheus/common v0.30.0 // indirect
|
||||
github.com/prometheus/procfs v0.7.3 // indirect
|
||||
github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475
|
||||
github.com/sasha-s/go-deadlock v0.3.1
|
||||
github.com/shirou/gopsutil/v3 v3.21.8
|
||||
github.com/shirou/gopsutil/v3 v3.21.12
|
||||
github.com/syncthing/notify v0.0.0-20210616190510-c6b7342338d2
|
||||
github.com/syndtr/goleveldb v1.0.1-0.20200815071216-d9e9293bd0f7
|
||||
github.com/thejerf/suture/v4 v4.0.1
|
||||
@@ -51,7 +50,7 @@ require (
|
||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519
|
||||
golang.org/x/mod v0.5.1 // indirect
|
||||
golang.org/x/net v0.0.0-20210924151903-3ad01bbaa167
|
||||
golang.org/x/sys v0.0.0-20210925032602-92d5a993a665
|
||||
golang.org/x/sys v0.0.0-20211013075003-97ac67df715c
|
||||
golang.org/x/text v0.3.7
|
||||
golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac
|
||||
golang.org/x/tools v0.1.6
|
||||
|
||||
40
go.sum
40
go.sum
@@ -46,10 +46,10 @@ github.com/Azure/go-ntlmssp v0.0.0-20200615164410-66371956d46c h1:/IBSNwUN8+eKzU
|
||||
github.com/Azure/go-ntlmssp v0.0.0-20200615164410-66371956d46c/go.mod h1:chxPXzSsl7ZWRAuOIE23GDNzjWuZquvFlgA8xmpunjU=
|
||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
||||
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
|
||||
github.com/StackExchange/wmi v1.2.1 h1:VIkavFPXSjcnS+O8yTq7NI32k0R5Aj+v39y29VYDOSA=
|
||||
github.com/StackExchange/wmi v1.2.1/go.mod h1:rcmrprowKIVzvc+NUiLncP2uuArMWLCbu9SBzvHz7e8=
|
||||
github.com/alecthomas/kong v0.2.17 h1:URDISCI96MIgcIlQyoCAlhOmrSw6pZScBNkctg8r0W0=
|
||||
github.com/alecthomas/kong v0.2.17/go.mod h1:ka3VZ8GZNPXv9Ov+j4YNLkI8mTuhXyr/0ktSlqIydQQ=
|
||||
github.com/alecthomas/kong v0.3.0 h1:qOLFzu0dGPNz8z5TiXGzgW3gb3RXfWVJKeAxcghVW88=
|
||||
github.com/alecthomas/kong v0.3.0/go.mod h1:uzxf/HUh0tj43x1AyJROl3JT7SgsZ5m+icOv1csRhc0=
|
||||
github.com/alecthomas/repr v0.0.0-20210801044451-80ca428c5142 h1:8Uy0oSf5co/NZXje7U1z8Mpep++QJOldL2hs/sBQf48=
|
||||
github.com/alecthomas/repr v0.0.0-20210801044451-80ca428c5142/go.mod h1:2kn6fqh/zIyPLmm3ugklbEi5hg5wS435eygvNfaDQL8=
|
||||
github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
|
||||
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
|
||||
github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
|
||||
@@ -60,8 +60,6 @@ github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24
|
||||
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
|
||||
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
|
||||
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
|
||||
github.com/bkaradzic/go-lz4 v0.0.0-20160924222819-7224d8d8f27e h1:2augTYh6E+XoNrrivZJBadpThP/dsvYKj0nzqfQ8tM4=
|
||||
github.com/bkaradzic/go-lz4 v0.0.0-20160924222819-7224d8d8f27e/go.mod h1:0YdlkowM3VswSROI7qDxhRvJ3sLhlFrRRwjwegp5jy4=
|
||||
github.com/bradfitz/go-smtpd v0.0.0-20170404230938-deb6d6237625/go.mod h1:HYsPBTaaSFSlLx/70C2HPIMNZpVV8+vt/A+FMnYP11g=
|
||||
github.com/buger/jsonparser v0.0.0-20181115193947-bf1c66bbce23/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s=
|
||||
github.com/calmh/xdr v1.1.0 h1:U/Dd4CXNLoo8EiQ4ulJUXkgO1/EyQLgDKLgpY1SOoJE=
|
||||
@@ -124,9 +122,8 @@ github.com/go-ldap/ldap/v3 v3.4.1/go.mod h1:iYS1MdmrmceOJ1QOTnRXrIs7i3kloqtmGQjR
|
||||
github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
|
||||
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
|
||||
github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
|
||||
github.com/go-ole/go-ole v1.2.5/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
|
||||
github.com/go-ole/go-ole v1.2.6-0.20210915003542-8b1f7f90f6b1 h1:4dntyT+x6QTOSCIrgczbQ+ockAEha0cfxD5Wi0iCzjY=
|
||||
github.com/go-ole/go-ole v1.2.6-0.20210915003542-8b1f7f90f6b1/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
|
||||
github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY=
|
||||
github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
|
||||
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
|
||||
github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0 h1:p104kn46Q8WdvHunIJ9dAyjPVtrBPhSr3KT2yUst43I=
|
||||
github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE=
|
||||
@@ -181,8 +178,9 @@ github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
|
||||
github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU=
|
||||
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.6 h1:BKbKCqvP6I+rmFHt06ZmyQtvB8xAkWdhFyr0ZUNZcxQ=
|
||||
github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-github v17.0.0+incompatible/go.mod h1:zLgOLi98H3fifZn+44m+umXrS52loVEgC2AApnigrVQ=
|
||||
github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
@@ -242,8 +240,9 @@ github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
github.com/lib/pq v1.10.3 h1:v9QZf2Sn6AmjXtQeFpdoq/eaNtYP6IN+7lcrygsIAtg=
|
||||
github.com/lib/pq v1.10.3/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=
|
||||
github.com/lucas-clemente/quic-go v0.22.0/go.mod h1:vF5M1XqhBAHgbjKcJOXY3JZz3GP0T3FQhz/uyOUS38Q=
|
||||
github.com/lucas-clemente/quic-go v0.24.0 h1:ToR7SIIEdrgOhgVTHvPgdVRJfgVy+N0wQAagH7L4d5g=
|
||||
github.com/lucas-clemente/quic-go v0.24.0/go.mod h1:paZuzjXCE5mj6sikVLMvqXk8lJV2AsqtJ6bDhjEfxx0=
|
||||
github.com/lucas-clemente/quic-go v0.25.0 h1:K+X9Gvd7JXsOHtU0N2icZ2Nw3rx82uBej3mP4CLgibc=
|
||||
github.com/lucas-clemente/quic-go v0.25.0/go.mod h1:YtzP8bxRVCBlO77yRanE264+fY/T2U9ZlW1AaHOsMOg=
|
||||
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I=
|
||||
github.com/lunixbochs/vtclean v1.0.0/go.mod h1:pHhQNgMf3btfWnGBVipUOjRYhoOsdGqdm/+2c2E2WMI=
|
||||
github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/marten-seemann/qpack v0.2.1/go.mod h1:F7Gl5L1jIgN1D11ucXefiuJS9UMVP2opoCp2jDKb7wc=
|
||||
@@ -254,6 +253,8 @@ github.com/marten-seemann/qtls-go1-16 v0.1.4/go.mod h1:gNpI2Ol+lRS3WwSOtIUUtRwZE
|
||||
github.com/marten-seemann/qtls-go1-17 v0.1.0-rc.1/go.mod h1:fz4HIxByo+LlWcreM4CZOYNuz3taBQ8rN2X6FqvaWo8=
|
||||
github.com/marten-seemann/qtls-go1-17 v0.1.0 h1:P9ggrs5xtwiqXv/FHNwntmuLMNq3KaSIG93AtAZ48xk=
|
||||
github.com/marten-seemann/qtls-go1-17 v0.1.0/go.mod h1:fz4HIxByo+LlWcreM4CZOYNuz3taBQ8rN2X6FqvaWo8=
|
||||
github.com/marten-seemann/qtls-go1-18 v0.1.0-beta.1 h1:EnzzN9fPUkUck/1CuY1FlzBaIYMoiBsdwTNmNGkwUUM=
|
||||
github.com/marten-seemann/qtls-go1-18 v0.1.0-beta.1/go.mod h1:PUhIQk19LoFt2174H4+an8TYvWOGjb/hHwphBeaDHwI=
|
||||
github.com/maruel/panicparse v1.6.1 h1:803MjBzGcUgE1vYgg3UMNq3G1oyYeKkMu3t6hBS97x0=
|
||||
github.com/maruel/panicparse v1.6.1/go.mod h1:uoxI4w9gJL6XahaYPMq/z9uadrdr1SyHuQwV2q80Mm0=
|
||||
github.com/maruel/panicparse/v2 v2.1.1/go.mod h1:AeTWdCE4lcq8OKsLb6cHSj1RWHVSnV9HBCk7sKLF4Jg=
|
||||
@@ -299,12 +300,16 @@ github.com/oschwald/maxminddb-golang v1.8.0 h1:Uh/DSnGoxsyp/KYbY1AuP0tYEwfs0sCph
|
||||
github.com/oschwald/maxminddb-golang v1.8.0/go.mod h1:RXZtst0N6+FY/3qCNmZMBApR19cdQj43/NM9VkrNAis=
|
||||
github.com/petermattis/goid v0.0.0-20180202154549-b0b1615b78e5 h1:q2e307iGHPdTGp0hoxKjt1H5pDo6utceo3dQVK3I5XQ=
|
||||
github.com/petermattis/goid v0.0.0-20180202154549-b0b1615b78e5/go.mod h1:jvVRKCrJTQWu0XVbaOlby/2lO20uSCHEMzzplHXte1o=
|
||||
github.com/pierrec/lz4/v4 v4.1.12 h1:44l88ehTZAUGW4VlO1QC4zkilL99M6Y9MXNwEs0uzP8=
|
||||
github.com/pierrec/lz4/v4 v4.1.12/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4=
|
||||
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c h1:ncq/mPwQF4JjgDlrVEn3C11VoGHZN7m8qihwgMEtzYw=
|
||||
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE=
|
||||
github.com/prometheus/client_golang v0.8.0/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
|
||||
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
|
||||
github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
|
||||
@@ -342,8 +347,8 @@ github.com/sasha-s/go-deadlock v0.3.1/go.mod h1:F73l+cr82YSh10GxyRI6qZiCgK64VaZj
|
||||
github.com/sclevine/spec v1.4.0 h1:z/Q9idDcay5m5irkZ28M7PtQM4aOISzOpj4bUPkDee8=
|
||||
github.com/sclevine/spec v1.4.0/go.mod h1:LvpgJaFyvQzRvc1kaDs0bulYwzC70PbiYjC4QnFHkOM=
|
||||
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
|
||||
github.com/shirou/gopsutil/v3 v3.21.8 h1:nKct+uP0TV8DjjNiHanKf8SAuub+GNsbrOtM9Nl9biA=
|
||||
github.com/shirou/gopsutil/v3 v3.21.8/go.mod h1:YWp/H8Qs5fVmf17v7JNZzA0mPJ+mS2e9JdiUF9LlKzQ=
|
||||
github.com/shirou/gopsutil/v3 v3.21.12 h1:VoGxEW2hpmz0Vt3wUvHIl9fquzYLNpVpgNNB7pGJimA=
|
||||
github.com/shirou/gopsutil/v3 v3.21.12/go.mod h1:BToYZVTlSVlfazpDDYFnsVZLaoRG+g8ufT6fPQLdJzA=
|
||||
github.com/shurcooL/component v0.0.0-20170202220835-f88ec8f54cc4/go.mod h1:XhFIlyj5a1fBNx5aJTbKoIq0mNaPvOagO+HjB3EtxrY=
|
||||
github.com/shurcooL/events v0.0.0-20181021180414-410e4ca65f48/go.mod h1:5u70Mqkb5O5cxEA8nxTsgrgLehJeAw6Oc4Ab1c/P1HM=
|
||||
github.com/shurcooL/github_flavored_markdown v0.0.0-20181002035957-2122de532470/go.mod h1:2dOwnU2uBioM+SGy2aZoq1f/Sd1l9OkAeAUvjSyvgU0=
|
||||
@@ -403,6 +408,8 @@ github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de
|
||||
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
|
||||
github.com/yuin/goldmark v1.4.0/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
|
||||
github.com/yusufpapurcu/wmi v1.2.2 h1:KBNDSne4vP5mbSWnJbO+51IMOXJB67QiYCSBrubbPRg=
|
||||
github.com/yusufpapurcu/wmi v1.2.2/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0=
|
||||
go.opencensus.io v0.18.0/go.mod h1:vKdFvxhtzZ9onBp9VKHK8z/sRpBMnKAsufL7wlDrCOA=
|
||||
go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU=
|
||||
go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8=
|
||||
@@ -569,6 +576,7 @@ golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7w
|
||||
golang.org/x/sys v0.0.0-20200814200057-3d37ad5750ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
@@ -579,8 +587,8 @@ golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBc
|
||||
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20210816074244-15123e1e1f71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20210925032602-92d5a993a665 h1:QOQNt6vCjMpXE7JSK5VvAzJC1byuN3FgTNSBwf+CJgI=
|
||||
golang.org/x/sys v0.0.0-20210925032602-92d5a993a665/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20211013075003-97ac67df715c h1:taxlMj0D/1sOAuv/CbSD+MMDof2vbyPTqz5FNYKpXt8=
|
||||
golang.org/x/sys v0.0.0-20211013075003-97ac67df715c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
|
||||
@@ -166,16 +166,13 @@ table.table-auto td {
|
||||
display: none;
|
||||
}
|
||||
|
||||
*[language-select] > .dropdown-menu {
|
||||
li[language-select] > .dropdown-menu {
|
||||
column-count: 2;
|
||||
column-gap: 0;
|
||||
width: 450px;
|
||||
}
|
||||
|
||||
*[language-select] > .dropdown-menu > li {
|
||||
float: left;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
*[language-select] > .dropdown-menu > li > a {
|
||||
li[language-select] > .dropdown-menu > li > a {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
@@ -351,17 +348,19 @@ ul.three-columns li, ul.two-columns li {
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
*[language-select] {
|
||||
li[language-select] {
|
||||
position: static !important;
|
||||
}
|
||||
|
||||
*[language-select] > .dropdown-menu {
|
||||
li[language-select] > .dropdown-menu {
|
||||
column-count: auto;
|
||||
margin-left: 15px;
|
||||
margin-right: 15px;
|
||||
margin-top: -12px !important;
|
||||
max-width: 450px;
|
||||
height: 265px;
|
||||
overflow-y: scroll;
|
||||
/* height of 5.5 elements + negative margin-top */
|
||||
height: 276px;
|
||||
}
|
||||
|
||||
table.table-condensed td,
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Добавяне на папка",
|
||||
"Add Remote Device": "Добавяне на устройство",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Добавяйте устройства през поръчителите за взаимно споделени папки.",
|
||||
"Add ignore patterns": "Добавяне на шаблони за пренебрегване",
|
||||
"Add new folder?": "Добавяне на тази папка?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Също така интервалът за повторно обхождане ще бъде увеличен (60 пъти, пр. новият интервал бъде 1ч). Освен това може да го зададете и ръчно за всяка папка след като изберете Не.",
|
||||
"Address": "Адрес",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Разрешаване на анонимното отчитане на употребата?",
|
||||
"Allowed Networks": "Разрешени мрежи",
|
||||
"Alphabetic": "Азбучен ред",
|
||||
"Altered by ignoring deletes.": "Пренебрегнати са премахнати файлове.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Външна команда управлява версиите. Тя трябва да премахне файла от синхронизираната папка. Ако в пътя до приложението има интервали, то той трябва да бъде поставен в кавички.",
|
||||
"Anonymous Usage Reporting": "Анонимно отчитане на употреба",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Форматът на данните за анонимно отчитане на употреба е променен. Желаете ли да използвате него вместо стария?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Пренебрегване",
|
||||
"Ignore Patterns": "Шаблони за пренебрегване",
|
||||
"Ignore Permissions": "Пренебрегване на права",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Пренебрегнати устройства",
|
||||
"Ignored Folders": "Пренебрегнати папки",
|
||||
"Ignored at": "Пренебрегнато на",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Изберете папките, които да споделите с устройството.",
|
||||
"Send & Receive": "Изпраща и получава",
|
||||
"Send Only": "Само изпраща",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Настройки",
|
||||
"Share": "Споделяне",
|
||||
"Share Folder": "Споделяне на папка",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "пълна документация",
|
||||
"items": "елемента",
|
||||
"seconds": "секунди",
|
||||
"theme-name-black": "Черна",
|
||||
"theme-name-dark": "Тъмна",
|
||||
"theme-name-default": "По подразбиране",
|
||||
"theme-name-light": "Светла",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} споделя папката „{{folder}}“.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} споделя папката „{{folder}}“. ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "Поръчителят {{reintroducer}} може отново да предложи това устройство."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Afegir carpeta",
|
||||
"Add Remote Device": "Afegir Dispositiu Remot.",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Afegir dispositius des-de l'introductor a la nostra llista de dispositius, per a tindre carpetes compartides mútuament",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Afegir nova carpeta?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Adicionalment s'augmentarà l'interval d'escaneig complet (times 60, per exemple, ficarà el nou temps per defecte a 1 hora). També pots configurar-ho manualment per a cada carpeta més tard elegint No.",
|
||||
"Address": "Direcció",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Permetre informes d'ús anònim?",
|
||||
"Allowed Networks": "Xarxes permeses",
|
||||
"Alphabetic": "Alfabètic",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Un comandament extern maneja el versionat. És necessari eliminar el fitxer de la carpeta compartida. Si la ruta a l'aplicació conté espais, hi ha que ficar-los entre cometes.",
|
||||
"Anonymous Usage Reporting": "Informe d'ús anònim",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "El format del informe anònim d'ús ha canviat. Vols canviar al nou format?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignorar",
|
||||
"Ignore Patterns": "Patrons a ignorar",
|
||||
"Ignore Permissions": "Permisos a ignorar",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Dispositius Ignorats",
|
||||
"Ignored Folders": "Carpetes Ignorades",
|
||||
"Ignored at": "Ignorat en",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Selecciona les carpetes per a compartir amb aquest dispositiu.",
|
||||
"Send & Receive": "Enviar i Rebre",
|
||||
"Send Only": "Enviar Solament",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Ajustos",
|
||||
"Share": "Compartir",
|
||||
"Share Folder": "Compartir carpeta",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "Documentació completa",
|
||||
"items": "Elements",
|
||||
"seconds": "seconds",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} vol compartit la carpeta \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} vol compartir la carpeta \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Přidat složku",
|
||||
"Add Remote Device": "Přidat vzdálené zařízení",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Přidat zařízení z uvaděče do místního seznamu zařízení a získat tak vzájemně sdílené složky.",
|
||||
"Add ignore patterns": "Přidat vzory ignorovaného",
|
||||
"Add new folder?": "Přidat novou složku?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Dále bude prodloužen interval mezi plnými skeny (60krát, t.j. nová výchozí hodnota 1h). V případě, že nyní zvolíte Ne, stále ještě toto později můžete u každé složky jednotlivě ručně upravit.",
|
||||
"Address": "Adresa",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Povolit anonymní hlášení o používání?",
|
||||
"Allowed Networks": "Sítě, ze kterých je umožněn přístup",
|
||||
"Alphabetic": "Abecední",
|
||||
"Altered by ignoring deletes.": "Změněno pomocí vzorů ignorovaného",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Správu verzí obstarává externí příkaz. U toho je třeba, aby neaktuální soubory jím byly odsouvány pryč ze sdílené složky. Pokud popis umístění tohoto příkazu obsahuje mezeru, je třeba popis umístění uzavřít do uvozovek.",
|
||||
"Anonymous Usage Reporting": "Anonymní hlášení o používání",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Formát anonymního hlášení o používání byl změněn. Chcete přejít na nový formát?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignorovat",
|
||||
"Ignore Patterns": "Vzory ignorovaného",
|
||||
"Ignore Permissions": "Ignorovat oprávnění",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Vzory ignorovaného lze přidat až po vytvoření složky. Pokud je zatrženo, budete vyzváni k zadání vzoru po uložení.",
|
||||
"Ignored Devices": "Ignorovaná zařízení",
|
||||
"Ignored Folders": "Ignorované složky",
|
||||
"Ignored at": "Ignorováno v",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Vybrat složky ke sdílení s tímto zařízením.",
|
||||
"Send & Receive": "Odesílací a přijímací",
|
||||
"Send Only": "Pouze odesílací",
|
||||
"Set Ignores on Added Folder": "Promítnout ignorování do přidané složky.",
|
||||
"Settings": "Nastavení",
|
||||
"Share": "Sdílet",
|
||||
"Share Folder": "Sdílet složku",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "úplná dokumentace",
|
||||
"items": "položky",
|
||||
"seconds": "sekund",
|
||||
"theme-name-black": "Černý",
|
||||
"theme-name-dark": "Tmavý",
|
||||
"theme-name-default": "Výchozí",
|
||||
"theme-name-light": "Světlý",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} chce sdílet složku „{{folder}}“.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} chce sdílet složku „{{folderlabel}}“ ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} může toto zařízení znovu uvést."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Tilføj mappe",
|
||||
"Add Remote Device": "Tilføj fjernenhed",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Tilføj enheder fra den introducerende enhed til vores enhedsliste for gensidigt delte mapper.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Tilføj ny mappe",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Derudover vil intervallet for den komplette genskan blive forøget (60 gange, dvs. ny standard er 1 time). Du kan også konfigurere det manuelt for hver mappe senere efter at have valgt Nej.",
|
||||
"Address": "Adresse",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Tillad anonym brugerstatistik?",
|
||||
"Allowed Networks": "Tilladte netværk",
|
||||
"Alphabetic": "Alfabetisk",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "En ekstern kommando styrer versioneringen. Den skal fjerne filen fra den delte mappe. Hvis stien til programmet indeholder mellemrum, bør den sættes i anførselstegn.",
|
||||
"Anonymous Usage Reporting": "Anonym brugerstatistik",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Formatet for anonym brugerstatistik er ændret. Vil du flytte til det nye format?",
|
||||
@@ -91,7 +93,7 @@
|
||||
"Disabled periodic scanning and disabled watching for changes": "Deaktiverede periodisk skanning og deaktiverede overvågning af ændringer",
|
||||
"Disabled periodic scanning and enabled watching for changes": "Deaktiverede periodisk skanning og aktiverede overvågning af ændringer",
|
||||
"Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:": "Deaktiverede periodisk skanning fra og lykkedes ikke med at opsætte overvågning af ændringer; prøver igen hvert minut:",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "Deaktiverer sammenligning og synkronisering af fil tilladelser. Nyttigt på systemer med ikke-eksisterende eller tilpasset tilladelser (f.eks. FAT, exFAT, Synology, Android).",
|
||||
"Discard": "Behold ikke",
|
||||
"Disconnected": "Ikke tilsluttet",
|
||||
"Disconnected (Unused)": "Ikke tilsluttet (ubrugt)",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignorér",
|
||||
"Ignore Patterns": "Ignoreringsmønstre",
|
||||
"Ignore Permissions": "Ignorér rettigheder",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ignorerede enheder",
|
||||
"Ignored Folders": "Ignorerede mapper",
|
||||
"Ignored at": "Ignoreret på",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Vælg hvilke mapper du vil dele med denne enhed.",
|
||||
"Send & Receive": "Send og modtag",
|
||||
"Send Only": "Send kun",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Indstillinger",
|
||||
"Share": "Del",
|
||||
"Share Folder": "Del mappe",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "fuld dokumentation",
|
||||
"items": "filer",
|
||||
"seconds": "sekunder",
|
||||
"theme-name-black": "Sort",
|
||||
"theme-name-dark": "Mørk",
|
||||
"theme-name-default": "Standard",
|
||||
"theme-name-light": "Lys",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} ønsker at dele mappen “{{folder}}”.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} ønsker at dele mappen “{{folderlabel}}” ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} vil muligvis genindføre denne enhed."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Ordner hinzufügen",
|
||||
"Add Remote Device": "Gerät hinzufügen",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Fügt Geräte vom Verteilergerät zu der eigenen Geräteliste hinzu, um gegenseitig geteilte Ordner zu ermöglichen.",
|
||||
"Add ignore patterns": "Ignoriermuster hinzufügen",
|
||||
"Add new folder?": "Neuen Ordner hinzufügen?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Zusätzlich wird das Scaninterval erhöht (um Faktor 60, also 1 Stunde als neuer Standard). Es kann auch manuell für jeden Ordner gesetzt werden, wenn Nein geklickt wird.",
|
||||
"Address": "Adresse",
|
||||
@@ -18,20 +19,21 @@
|
||||
"Advanced": "Erweitert",
|
||||
"Advanced Configuration": "Erweiterte Konfiguration",
|
||||
"All Data": "Alle Daten",
|
||||
"All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.": "Alle Ordner, welche mit diesem Gerät geteilt werden, müssen von einem Passwort geschützt werden, sodass die gesendeten Daten ohne Kenntnis des Passworts nicht gelesen werden können. ",
|
||||
"All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.": "Alle Ordner, welche mit diesem Gerät geteilt werden, müssen von einem Passwort geschützt werden, sodass keine gesendeten Daten ohne Kenntnis des Passworts gelesen werden können. ",
|
||||
"Allow Anonymous Usage Reporting?": "Übertragung von anonymen Nutzungsberichten erlauben?",
|
||||
"Allowed Networks": "Erlaubte Netzwerke",
|
||||
"Alphabetic": "Alphabetisch",
|
||||
"Altered by ignoring deletes.": "Weicht ab, weil Löschungen ignoriert werden.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Ein externer Befehl behandelt die Versionierung. Die Datei aus dem freigegebenen Ordner muss entfernen werden. Wenn der Pfad der Anwendung Leerzeichen enthält, sollte dieser in Anführungszeichen stehen.",
|
||||
"Anonymous Usage Reporting": "Anonymer Nutzungsbericht",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Das Format des anonymen Nutzungsberichts hat sich geändert. Möchten Sie auf das neue Format umsteigen?",
|
||||
"Are you sure you want to continue?": "Sind Sie sicher, dass Sie fortfahren möchten?",
|
||||
"Are you sure you want to override all remote changes?": "Are you sure you want to override all remote changes?",
|
||||
"Are you sure you want to override all remote changes?": "Sind Sie sicher, dass Sie alle entfernten Änderungen überschreiben möchten?",
|
||||
"Are you sure you want to permanently delete all these files?": "Sind Sie sicher, dass Sie all diese Dateien dauerhaft löschen möchten?",
|
||||
"Are you sure you want to remove device {%name%}?": "Sind Sie sicher, dass sie das Gerät {{name}} entfernen möchten?",
|
||||
"Are you sure you want to remove folder {%label%}?": "Sind Sie sicher, dass sie den Ordner {{label}} entfernen möchten?",
|
||||
"Are you sure you want to restore {%count%} files?": "Sind Sie sicher, dass Sie {{count}} Dateien wiederherstellen möchten?",
|
||||
"Are you sure you want to revert all local changes?": "Are you sure you want to revert all local changes?",
|
||||
"Are you sure you want to revert all local changes?": "Sind Sie sicher, dass Sie alle lokalen Änderungen zurücksetzen möchten?",
|
||||
"Are you sure you want to upgrade?": "Sind Sie sicher, dass Sie ein Upgrade durchführen möchten?",
|
||||
"Auto Accept": "Automatische Annahme",
|
||||
"Automatic Crash Reporting": "Automatische Absturzmeldung",
|
||||
@@ -98,7 +100,7 @@
|
||||
"Discovered": "Ermittelt",
|
||||
"Discovery": "Gerätesuche",
|
||||
"Discovery Failures": "Gerätesuchfehler",
|
||||
"Discovery Status": "Discovery Status",
|
||||
"Discovery Status": "Status der Gerätesuche",
|
||||
"Dismiss": "Ausblenden",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Nicht zur Ignorierliste hinzufügen, diese Benachrichtigung kann erneut auftauchen.",
|
||||
"Do not restore": "Nicht wiederherstellen",
|
||||
@@ -126,7 +128,7 @@
|
||||
"Error": "Fehler",
|
||||
"External File Versioning": "Externe Dateiversionierung",
|
||||
"Failed Items": "Fehlgeschlagene Elemente",
|
||||
"Failed to load ignore patterns.": "Failed to load ignore patterns.",
|
||||
"Failed to load ignore patterns.": "Fehler beim Laden der Ignoriermuster.",
|
||||
"Failed to setup, retrying": "Fehler beim Installieren, versuche erneut",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "Ein Verbindungsfehler zu IPv6-Servern ist zu erwarten, wenn es keine IPv6-Konnektivität gibt.",
|
||||
"File Pull Order": "Dateiübertragungsreihenfolge",
|
||||
@@ -168,9 +170,10 @@
|
||||
"Ignore": "Ignorieren",
|
||||
"Ignore Patterns": "Ignoriermuster",
|
||||
"Ignore Permissions": "Berechtigungen ignorieren",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignoriermuster können erst hinzugefügt werden, nachdem der Ordner erstellt wurde. Bei Auswahl erscheint nach dem Speichern ein Eingabefeld zum setzen der Ignoriermuster.",
|
||||
"Ignored Devices": "Ignorierte Geräte",
|
||||
"Ignored Folders": "Ignorierte Ordner",
|
||||
"Ignored at": "Ignoriert bei/von",
|
||||
"Ignored at": "Ignoriert am",
|
||||
"Incoming Rate Limit (KiB/s)": "Eingehendes Datenratelimit (KiB/s)",
|
||||
"Incorrect configuration may damage your folder contents and render Syncthing inoperable.": "Eine falsche Konfiguration kann den Ordnerinhalt beschädigen und Syncthing in einen unausführbaren Zustand versetzen.",
|
||||
"Introduced By": "Verteilt von",
|
||||
@@ -184,8 +187,8 @@
|
||||
"Latest Change": "Letzte Änderung",
|
||||
"Learn more": "Mehr erfahren",
|
||||
"Limit": "Limit",
|
||||
"Listener Failures": "Listener Failures",
|
||||
"Listener Status": "Listener Status",
|
||||
"Listener Failures": "Fehler bei Listener",
|
||||
"Listener Status": "Status der Listener",
|
||||
"Listeners": "Zuhörer",
|
||||
"Loading data...": "Daten werden geladen...",
|
||||
"Loading...": "Wird geladen...",
|
||||
@@ -224,7 +227,7 @@
|
||||
"Out of Sync": "Nicht synchronisiert",
|
||||
"Out of Sync Items": "Nicht synchronisierte Elemente",
|
||||
"Outgoing Rate Limit (KiB/s)": "Ausgehendes Datenratelimit (KiB/s)",
|
||||
"Override": "Override",
|
||||
"Override": "Überschreiben",
|
||||
"Override Changes": "Änderungen überschreiben",
|
||||
"Path": "Pfad",
|
||||
"Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "Pfad zum Ordner auf dem lokalen Gerät. Ordner wird erzeugt, wenn er nicht existiert. Das Tilden-Zeichen (~) kann als Abkürzung benutzt werden für",
|
||||
@@ -274,7 +277,7 @@
|
||||
"Resume": "Fortsetzen",
|
||||
"Resume All": "Alles fortsetzen",
|
||||
"Reused": "Erneut benutzt",
|
||||
"Revert": "Revert",
|
||||
"Revert": "Zurücksetzen",
|
||||
"Revert Local Changes": "Lokale Änderungen zurücksetzen",
|
||||
"Save": "Speichern",
|
||||
"Scan Time Remaining": "Verbleibende Scanzeit",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Wähle Sie die Ordner aus, die Sie mit diesem Gerät teilen möchten.",
|
||||
"Send & Receive": "Senden & Empfangen",
|
||||
"Send Only": "Nur senden",
|
||||
"Set Ignores on Added Folder": "Ignoriermuster für neuen Ordner setzen",
|
||||
"Settings": "Einstellungen",
|
||||
"Share": "Teilen",
|
||||
"Share Folder": "Ordner teilen",
|
||||
@@ -358,7 +362,7 @@
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "Die folgenden Methoden werden verwendet, um andere Geräte im Netzwerk aufzufinden und dieses Gerät anzukündigen, damit es von anderen gefunden wird:",
|
||||
"The following unexpected items were found.": "Die folgenden unerwarteten Elemente wurden gefunden.",
|
||||
"The interval must be a positive number of seconds.": "Das Intervall muss eine positive Zahl von Sekunden sein.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "Das Intervall, in Sekunden, zwischen den Bereinigungen im Versionsverzeichnis. 0 um das regelmäßige Bereinigen zu deaktivieren.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "Das Intervall, in Sekunden, zwischen den Bereinigungen im Versionsverzeichnis. Null um das regelmäßige Bereinigen zu deaktivieren.",
|
||||
"The maximum age must be a number and cannot be blank.": "Das Höchstalter muss angegeben werden und eine Zahl sein.",
|
||||
"The maximum time to keep a version (in days, set to 0 to keep versions forever).": "Die längste Zeit, die alte Versionen vorgehalten werden (in Tagen) (0 um alte Versionen für immer zu behalten).",
|
||||
"The number of days must be a number and cannot be blank.": "Die Anzahl von Versionen muss eine Ganzzahl und darf nicht leer sein.",
|
||||
@@ -402,7 +406,7 @@
|
||||
"Usage reporting is always enabled for candidate releases.": "Nutzungsbericht ist für Veröffentlichungskandidaten immer aktiviert.",
|
||||
"Use HTTPS for GUI": "HTTPS für Benutzeroberfläche verwenden",
|
||||
"Use notifications from the filesystem to detect changed items.": "Benachrichtigungen des Dateisystems nutzen, um Änderungen zu erkennen.",
|
||||
"Username/Password has not been set for the GUI authentication. Please consider setting it up.": "Benutzername und Passwort für die Benutzeroberfläche sind nicht gesetzt. Setzen Sie diese zum Schutz ihrer Daten. ",
|
||||
"Username/Password has not been set for the GUI authentication. Please consider setting it up.": "Benutzername und Passwort für die Benutzeroberfläche sind nicht gesetzt. Bitte richten Sie diese zur Absicherung ein.",
|
||||
"Version": "Version",
|
||||
"Versions": "Versionen",
|
||||
"Versions Path": "Versionierungspfad",
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Προσθήκη φακέλου",
|
||||
"Add Remote Device": "Προσθήκη Απομακρυσμένης Συσκευής",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Προσθήκη συσκευών από το Βασικό κόμβο στη λίστα συσκευών μας, για όσους κοινούς φακέλους υπάρχουν μεταξύ τους.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Προσθήκη νέου φακέλου;",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Θα αυξηθεί επίσης το διάστημα επανασαρώσεων στο 60-πλάσιο (νέα προεπιλεγμένη τιμή: 1 ώρα). Μπορείτε να το προσαρμόσετε για κάθε φάκελο αφού επιλέξετε «Όχι».",
|
||||
"Address": "Διεύθυνση",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Να επιτρέπεται η αποστολή ανώνυμων στοιχείων χρήσης;",
|
||||
"Allowed Networks": "Επιτρεπόμενα δίκτυα",
|
||||
"Alphabetic": "Αλφαβητικά",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Μια εξωτερική εντολή χειρίζεται την τήρηση εκδόσεων και αναλαμβάνει να αφαιρέσει το αρχείο από τον συγχρονισμένο φάκελο. Αν η διαδρομή προς την εφαρμογή περιέχει διαστήματα, πρέπει να εσωκλείεται σε εισαγωγικά. ",
|
||||
"Anonymous Usage Reporting": "Ανώνυμα στοιχεία χρήσης",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Η μορφή της αναφοράς ανώνυμων στοιχείων χρήσης έχει αλλάξει. Επιθυμείτε να μεταβείτε στη νέα μορφή;",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Αγνόησε",
|
||||
"Ignore Patterns": "Πρότυπο για αγνόηση",
|
||||
"Ignore Permissions": "Αγνόησε τα δικαιώματα",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Αγνοηθείσες συσκευές",
|
||||
"Ignored Folders": "Αγνοηθέντες φάκελοι",
|
||||
"Ignored at": "Αγνοήθηκε στην",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Διάλεξε ποιοι φάκελοι θα διαμοιράζονται προς αυτή τη συσκευή.",
|
||||
"Send & Receive": "Αποστολή και λήψη",
|
||||
"Send Only": "Μόνο αποστολή",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Ρυθμίσεις",
|
||||
"Share": "Διαμοίραση",
|
||||
"Share Folder": "Διαμοίραση φακέλου",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "πλήρης τεκμηρίωση",
|
||||
"items": "εγγραφές",
|
||||
"seconds": "δευτερόλεπτα",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "Η συσκευή {{device}} θέλει να μοιράσει τον φάκελο «{{folder}}».",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "Η συσκευή {{device}} επιθυμεί να διαμοιράσει τον φάκελο \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Add Folder",
|
||||
"Add Remote Device": "Add Remote Device",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Add devices from the introducer to our device list, for mutually shared folders.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Add new folder?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.",
|
||||
"Address": "Address",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Allow Anonymous Usage Reporting?",
|
||||
"Allowed Networks": "Allowed Networks",
|
||||
"Alphabetic": "Alphabetic",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.",
|
||||
"Anonymous Usage Reporting": "Anonymous Usage Reporting",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Anonymous usage report format has changed. Would you like to move to the new format?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignore",
|
||||
"Ignore Patterns": "Ignore Patterns",
|
||||
"Ignore Permissions": "Ignore Permissions",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ignored Devices",
|
||||
"Ignored Folders": "Ignored Folders",
|
||||
"Ignored at": "Ignored at",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Select the folders to share with this device.",
|
||||
"Send & Receive": "Send & Receive",
|
||||
"Send Only": "Send Only",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Settings",
|
||||
"Share": "Share",
|
||||
"Share Folder": "Share Folder",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "full documentation",
|
||||
"items": "items",
|
||||
"seconds": "seconds",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} wants to share folder \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} wants to share folder \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Add Folder",
|
||||
"Add Remote Device": "Add Remote Device",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Add devices from the introducer to our device list, for mutually shared folders.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Add new folder?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.",
|
||||
"Address": "Address",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Allow Anonymous Usage Reporting?",
|
||||
"Allowed Networks": "Allowed Networks",
|
||||
"Alphabetic": "Alphabetic",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.",
|
||||
"Anonymous Usage Reporting": "Anonymous Usage Reporting",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Anonymous usage report format has changed. Would you like to move to the new format?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignore",
|
||||
"Ignore Patterns": "Ignore Patterns",
|
||||
"Ignore Permissions": "Ignore Permissions",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ignored Devices",
|
||||
"Ignored Folders": "Ignored Folders",
|
||||
"Ignored at": "Ignored at",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Select the folders to share with this device.",
|
||||
"Send & Receive": "Send & Receive",
|
||||
"Send Only": "Send Only",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Settings",
|
||||
"Share": "Share",
|
||||
"Share Folder": "Share Folder",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "full documentation",
|
||||
"items": "items",
|
||||
"seconds": "seconds",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} wants to share folder \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} wants to share folder \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Add Folder",
|
||||
"Add Remote Device": "Add Remote Device",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Add devices from the introducer to our device list, for mutually shared folders.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Add new folder?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.",
|
||||
"Address": "Address",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Allow Anonymous Usage Reporting?",
|
||||
"Allowed Networks": "Allowed Networks",
|
||||
"Alphabetic": "Alphabetic",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.",
|
||||
"Anonymous Usage Reporting": "Anonymous Usage Reporting",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Anonymous usage report format has changed. Would you like to move to the new format?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignore",
|
||||
"Ignore Patterns": "Ignore Patterns",
|
||||
"Ignore Permissions": "Ignore Permissions",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ignored Devices",
|
||||
"Ignored Folders": "Ignored Folders",
|
||||
"Ignored at": "Ignored at",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Select the folders to share with this device.",
|
||||
"Send \u0026 Receive": "Send \u0026 Receive",
|
||||
"Send Only": "Send Only",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Settings",
|
||||
"Share": "Share",
|
||||
"Share Folder": "Share Folder",
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Aldoni dosierujon",
|
||||
"Add Remote Device": "Aldoni foran aparaton",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Aldoni aparatojn de la enkondukanto ĝis nia aparatlisto, por reciproke komunigitaj dosierujoj.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Ĉu aldoni novan dosierujon ?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Aldone, plena reskana intervalo estos pliigita (60-oble, t.e. nova defaŭlto estas 1h). Vi povas ankaŭ agordi ĝin permane por ĉiu dosierujo poste post elekto de Ne.",
|
||||
"Address": "Adreso",
|
||||
@@ -18,20 +19,21 @@
|
||||
"Advanced": "Altnivela",
|
||||
"Advanced Configuration": "Altnivela Agordo",
|
||||
"All Data": "Ĉiuj Datumoj",
|
||||
"All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.": "All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.",
|
||||
"All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.": "Ĉiuj dosierujoj, kiuj estas dividitaj kun ĉi tiu aparato devas esti protektitaj per pasvorto, tiel ĉiuj senditaj datumoj estas nelegeblaj sen la pasvorto.",
|
||||
"Allow Anonymous Usage Reporting?": "Permesi Anoniman Raporton de Uzado?",
|
||||
"Allowed Networks": "Permesitaj Retoj",
|
||||
"Alphabetic": "Alfabeta",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Ekstera komando manipulas la version. Ĝi devas forigi la dosieron el la komunigita dosierujo. Se la vojo al la apliko elhavas blankoj, ĝi devas esti inter citiloj.",
|
||||
"Anonymous Usage Reporting": "Anonima Raporto de Uzado",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Formato de anonima raporto de uzado ŝanĝis. Ĉu vi ŝatus transiri al la nova formato?",
|
||||
"Are you sure you want to continue?": "Are you sure you want to continue?",
|
||||
"Are you sure you want to override all remote changes?": "Are you sure you want to override all remote changes?",
|
||||
"Are you sure you want to permanently delete all these files?": "Are you sure you want to permanently delete all these files?",
|
||||
"Are you sure you want to continue?": "Ĉu vi certas, ke vi volas daŭrigi?",
|
||||
"Are you sure you want to override all remote changes?": "Ĉu vi certas, ke vi volas transpasi ĉiujn forajn ŝanĝojn?",
|
||||
"Are you sure you want to permanently delete all these files?": "Ĉu vi certas, ke vi volas porĉiame forigi ĉiujn ĉi tiujn dosierojn?",
|
||||
"Are you sure you want to remove device {%name%}?": "Ĉu vi certas, ke vi volas forigi aparaton {{name}}?",
|
||||
"Are you sure you want to remove folder {%label%}?": "Ĉu vi certas, ke vi volas forigi dosierujon {{label}}?",
|
||||
"Are you sure you want to restore {%count%} files?": "Ĉu vi certas, ke vi volas restarigi {{count}} dosierojn?",
|
||||
"Are you sure you want to revert all local changes?": "Are you sure you want to revert all local changes?",
|
||||
"Are you sure you want to revert all local changes?": "Ĉu vi certas, ke vi volas malfari ĉiujn lokajn ŝanĝojn?",
|
||||
"Are you sure you want to upgrade?": "Ĉu vi certe volas plinovigi ?",
|
||||
"Auto Accept": "Akcepti Aŭtomate",
|
||||
"Automatic Crash Reporting": "Aŭtomata raportado de kraŝoj",
|
||||
@@ -42,13 +44,13 @@
|
||||
"Available debug logging facilities:": "Disponeblaj elpurigadaj protokoliloj:",
|
||||
"Be careful!": "Atentu!",
|
||||
"Bugs": "Cimoj",
|
||||
"Cancel": "Cancel",
|
||||
"Cancel": "Nuligi",
|
||||
"Changelog": "Ŝanĝoprotokolo",
|
||||
"Clean out after": "Purigi poste",
|
||||
"Cleaning Versions": "Cleaning Versions",
|
||||
"Cleanup Interval": "Cleanup Interval",
|
||||
"Click to see discovery failures": "Alklaku por vidi malsukcesajn malkovrojn",
|
||||
"Click to see full identification string and QR code.": "Click to see full identification string and QR code.",
|
||||
"Click to see full identification string and QR code.": "Alklaku por vidi la plenan identigan signovicon kaj QR-kodo",
|
||||
"Close": "Fermi",
|
||||
"Command": "Komando",
|
||||
"Comment, when used at the start of a line": "Komento, kiam uzita ĉe la komenco de lineo",
|
||||
@@ -66,12 +68,12 @@
|
||||
"Currently Shared With Devices": "Nune komunigita kun aparatoj",
|
||||
"Danger!": "Danĝero!",
|
||||
"Debugging Facilities": "Elpurigadiloj",
|
||||
"Default Configuration": "Default Configuration",
|
||||
"Default Configuration": "Defaŭlta agordo",
|
||||
"Default Device": "Default Device",
|
||||
"Default Folder": "Default Folder",
|
||||
"Default Folder": "Defaŭlta Dosierujo",
|
||||
"Default Folder Path": "Defaŭlta Dosieruja Vojo",
|
||||
"Defaults": "Defaults",
|
||||
"Delete": "Delete",
|
||||
"Delete": "Forigu",
|
||||
"Delete Unexpected Items": "Delete Unexpected Items",
|
||||
"Deleted": "Forigita",
|
||||
"Deselect All": "Malelekti Ĉiujn",
|
||||
@@ -82,7 +84,7 @@
|
||||
"Device ID": "Aparato ID",
|
||||
"Device Identification": "Identigo de Aparato",
|
||||
"Device Name": "Nomo de Aparato",
|
||||
"Device is untrusted, enter encryption password": "Device is untrusted, enter encryption password",
|
||||
"Device is untrusted, enter encryption password": "Aparato ne estas fidinda, entajpu pasvorto por ĉifrado",
|
||||
"Device rate limits": "Limoj de rapideco de aparato",
|
||||
"Device that last modified the item": "Aparato kiu laste modifis la eron",
|
||||
"Devices": "Aparatoj",
|
||||
@@ -164,10 +166,11 @@
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.",
|
||||
"Identification": "Identification",
|
||||
"If untrusted, enter encryption password": "If untrusted, enter encryption password",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "Se vi volas malhelpi aliajn uzantojn sur ĉi tiu komputilo atingi Syncthing kaj per ĝi viajn dosierojn, konsideru agordi aŭtentokontrolon.",
|
||||
"Ignore": "Ignoru",
|
||||
"Ignore Patterns": "Ignorantaj Ŝablonoj",
|
||||
"Ignore Permissions": "Ignori Permesojn",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ignoritaj Aparatoj",
|
||||
"Ignored Folders": "Ignoritaj Dosierujoj",
|
||||
"Ignored at": "Ignorita ĉe",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Elekti la dosierujojn por komunigi kun ĉi tiu aparato.",
|
||||
"Send & Receive": "Sendi kaj Ricevi",
|
||||
"Send Only": "Nur Sendi",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Agordoj",
|
||||
"Share": "Komunigi",
|
||||
"Share Folder": "Komunigu Dosierujon",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "tuta dokumentado",
|
||||
"items": "eroj",
|
||||
"seconds": "seconds",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} volas komunigi dosierujon \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} volas komunigi dosierujon \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Agregar Carpeta",
|
||||
"Add Remote Device": "Añadir un dispositivo",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Añadir dispositivos desde el introductor a nuestra lista de dispositivos, para las carpetas compartidas mutuamente.",
|
||||
"Add ignore patterns": "Agregar patrones a ignorar",
|
||||
"Add new folder?": "¿Agregar una carpeta nueva?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "De manera adicional, el intervalo de escaneo será incrementado (por ejemplo, times 60, establece un nuevo intervalo por defecto de una hora). También puedes configurarlo manualmente para cada carpeta tras elegir el número.",
|
||||
"Address": "Dirección",
|
||||
@@ -22,16 +23,17 @@
|
||||
"Allow Anonymous Usage Reporting?": "¿Deseas permitir el envío anónimo de informes de uso?",
|
||||
"Allowed Networks": "Redes permitidas",
|
||||
"Alphabetic": "Alfabético",
|
||||
"Altered by ignoring deletes.": "Alterado al ignorar eliminaciones.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Un comando externo maneja el versionado. Tiene que eliminar el fichero de la carpeta compartida. Si la ruta a la aplicación contiene espacios, hay que escribirla entre comillas.",
|
||||
"Anonymous Usage Reporting": "Informe anónimo de uso",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "El formato del informe anónimo de uso ha cambiado. ¿Quieres cambiar al nuevo formato?",
|
||||
"Are you sure you want to continue?": "Are you sure you want to continue?",
|
||||
"Are you sure you want to override all remote changes?": "Are you sure you want to override all remote changes?",
|
||||
"Are you sure you want to permanently delete all these files?": "¿Esta seguro(a) de que desea eliminar permanentemente todos estos archivos?",
|
||||
"Are you sure you want to continue?": "¿Está seguro(a) de que desea continuar?",
|
||||
"Are you sure you want to override all remote changes?": "¿Está seguro(a) de que desea sobreescribir todos los cambios remotos?",
|
||||
"Are you sure you want to permanently delete all these files?": "¿Estás seguro(a) de que quieres eliminar permanentemente todos estos ficheros?",
|
||||
"Are you sure you want to remove device {%name%}?": "¿Estás seguro de que quieres quitar el dispositivo {{name}}?",
|
||||
"Are you sure you want to remove folder {%label%}?": "¿Estás seguro de que quieres quitar la carpeta {{label}}?",
|
||||
"Are you sure you want to restore {%count%} files?": "¿Estás seguro de que quieres restaurar {{count}} ficheros?",
|
||||
"Are you sure you want to revert all local changes?": "Are you sure you want to revert all local changes?",
|
||||
"Are you sure you want to revert all local changes?": "¿Está seguro(a) de que desea revertir todos los cambios locales?",
|
||||
"Are you sure you want to upgrade?": "¿Está seguro(a) de que desea actualizar?",
|
||||
"Auto Accept": "Auto aceptar",
|
||||
"Automatic Crash Reporting": "Informe automático de errores",
|
||||
@@ -42,13 +44,13 @@
|
||||
"Available debug logging facilities:": "Ayudas disponibles para la depuración del registro:",
|
||||
"Be careful!": "¡Ten cuidado!",
|
||||
"Bugs": "Errores",
|
||||
"Cancel": "Cancel",
|
||||
"Cancel": "Cancelar",
|
||||
"Changelog": "Registro de cambios",
|
||||
"Clean out after": "Limpiar tras",
|
||||
"Cleaning Versions": "Limpiando Versiones",
|
||||
"Cleanup Interval": "Intervalo de Limpieza",
|
||||
"Click to see discovery failures": "Clica para ver fallos de descubrimiento.",
|
||||
"Click to see full identification string and QR code.": "Click to see full identification string and QR code.",
|
||||
"Click to see full identification string and QR code.": "Haga clic para ver la cadena de identificación completa y su código QR.",
|
||||
"Close": "Cerrar",
|
||||
"Command": "Acción",
|
||||
"Comment, when used at the start of a line": "Comentar, cuando se usa al comienzo de una línea",
|
||||
@@ -91,16 +93,16 @@
|
||||
"Disabled periodic scanning and disabled watching for changes": "Desactivados el escaneo periódico y la vigilancia de cambios",
|
||||
"Disabled periodic scanning and enabled watching for changes": "Desactivado el escaneo periódico y activada la vigilancia de cambios",
|
||||
"Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:": "Desactivado el escaneo periódico y falló la activación de la vigilancia de cambios, reintentando cada 1 minuto:",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "Desactiva la comparación y sincronización de los permisos de los archivos. Útil en sistemas con permisos inexistentes o personalizados (por ejemplo, FAT, exFAT, Synology, Android).",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "Desactiva la comparación y sincronización de los permisos de los ficheros. Útil en sistemas con permisos inexistentes o personalizados (por ejemplo, FAT, exFAT, Synology, Android).",
|
||||
"Discard": "Descartar",
|
||||
"Disconnected": "Desconectado",
|
||||
"Disconnected (Unused)": "Desconectado (Sin uso)",
|
||||
"Discovered": "Descubierto",
|
||||
"Discovery": "Descubrimiento",
|
||||
"Discovery Failures": "Fallos de Descubrimiento",
|
||||
"Discovery Status": "Discovery Status",
|
||||
"Dismiss": "Dismiss",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Do not add it to the ignore list, so this notification may recur.",
|
||||
"Discovery Status": "Estado de Descubrimiento",
|
||||
"Dismiss": "Descartar",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "No agregarlo a la lista de ignorados, de modo que esta notificación sea recurrente.",
|
||||
"Do not restore": "No restaurar",
|
||||
"Do not restore all": "No restaurar todo",
|
||||
"Do you want to enable watching for changes for all your folders?": "Quieres activar la vigilancia de cambios para todas tus carpetas?",
|
||||
@@ -126,7 +128,7 @@
|
||||
"Error": "Error",
|
||||
"External File Versioning": "Versionado externo de fichero",
|
||||
"Failed Items": "Elementos fallidos",
|
||||
"Failed to load ignore patterns.": "Failed to load ignore patterns.",
|
||||
"Failed to load ignore patterns.": "Fallo al cargar patrones a ignorar",
|
||||
"Failed to setup, retrying": "Fallo al configurar, reintentando",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "Se espera un fallo al conectar a los servidores IPv6 si no hay conectividad IPv6.",
|
||||
"File Pull Order": "Orden de obtención de los ficheros",
|
||||
@@ -143,7 +145,7 @@
|
||||
"Folder Label": "Etiqueta de la Carpeta",
|
||||
"Folder Path": "Ruta de la carpeta",
|
||||
"Folder Type": "Tipo de carpeta",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "Folder type \"{{receiveEncrypted}}\" can only be set when adding a new folder.",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "El tipo de carpeta \"{{receiveEncrypted}}\" solo puede ser establecido al agregar una nueva carpeta.",
|
||||
"Folder type \"{%receiveEncrypted%}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.": "El tipo de carpeta \"{{receiveEncrypted}}\" no se puede cambiar después de añadir la carpeta. Es necesario eliminar la carpeta, borrar o descifrar los datos en el disco y volver a añadir la carpeta.",
|
||||
"Folders": "Carpetas",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "Para las siguientes carpetas ocurrió un error cuando se empezó a vigilar los cambios. Se reintentará cada minuto, así que puede ser que los errores desaparezcan pronto. Si persisten, intenta solucionar el problema subyacente y pide ayuda en el caso de que no puedas.",
|
||||
@@ -162,12 +164,13 @@
|
||||
"Help": "Ayuda",
|
||||
"Home page": "Página de inicio",
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "Sin embargo, su configuración actual indica que puede no querer habilitarlo. Hemos deshabilitado el informe automático de errores por usted.",
|
||||
"Identification": "Identification",
|
||||
"Identification": "Identificación",
|
||||
"If untrusted, enter encryption password": "Si no es de confianza, ingrese la contraseña de cifrado.",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "Si quiere impedirle a otros usuarios de esta computadora acceder a Syncthing y, a través de este, a sus archivos, considere establecer la autenticación.",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "Si quiere impedirle a otros usuarios de esta computadora acceder a Syncthing y, a través de este, a sus ficheros, considere establecer la autenticación.",
|
||||
"Ignore": "Ignorar",
|
||||
"Ignore Patterns": "Patrones a ignorar",
|
||||
"Ignore Permissions": "Permisos a ignorar",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Los patrones a ignorar solo se pueden agregar luego de que la carpeta sea creada. Cuando se marca, se presentará un campo de entrada para introducir los patrones a ignorar después de guardar.",
|
||||
"Ignored Devices": "Dispositivos Ignorados",
|
||||
"Ignored Folders": "Carpetas Ignoradas",
|
||||
"Ignored at": "Ignorado En",
|
||||
@@ -184,8 +187,8 @@
|
||||
"Latest Change": "Último Cambio",
|
||||
"Learn more": "Saber más",
|
||||
"Limit": "Límite",
|
||||
"Listener Failures": "Listener Failures",
|
||||
"Listener Status": "Listener Status",
|
||||
"Listener Failures": "Fallos de Oyente",
|
||||
"Listener Status": "Estado de Oyente",
|
||||
"Listeners": "Oyentes",
|
||||
"Loading data...": "Cargando datos...",
|
||||
"Loading...": "Cargando...",
|
||||
@@ -224,7 +227,7 @@
|
||||
"Out of Sync": "No sincronizado",
|
||||
"Out of Sync Items": "Elementos no sincronizados",
|
||||
"Outgoing Rate Limit (KiB/s)": "Límite de subida (KiB/s)",
|
||||
"Override": "Override",
|
||||
"Override": "Sobreescribir",
|
||||
"Override Changes": "Anular cambios",
|
||||
"Path": "Parche",
|
||||
"Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "Ruta a la carpeta en la máquina local. Se creará si no existe. El carácter de la tilde (~) puede usarse como atajo.",
|
||||
@@ -238,7 +241,7 @@
|
||||
"Periodic scanning at given interval and disabled watching for changes": "Escaneo periódico en un intervalo determinado y desactivada la vigilancia de cambios",
|
||||
"Periodic scanning at given interval and enabled watching for changes": "Escaneo periódico en un intervalo determinado y activada la vigilancia de cambios",
|
||||
"Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:": "Escaneo periódico en un intervalo determinado y falló la configuración de la vigilancia de cambios, se reintentará cada 1 minuto:",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Permanently add it to the ignore list, suppressing further notifications.",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Agregarlo permanentemente a la lista de ignorados, suprimiendo futuras notificaciones.",
|
||||
"Permissions": "Permisos",
|
||||
"Please consult the release notes before performing a major upgrade.": "Por favor, consultar las notas de la versión antes de realizar una actualización importante.",
|
||||
"Please set a GUI Authentication User and Password in the Settings dialog.": "Por favor, introduzca un Usuario y Contraseña para la Autenticación de la Interfaz de Usuario en el panel de Ajustes.",
|
||||
@@ -274,7 +277,7 @@
|
||||
"Resume": "Continuar",
|
||||
"Resume All": "Continuar todo",
|
||||
"Reused": "Reutilizado",
|
||||
"Revert": "Revert",
|
||||
"Revert": "Revertir",
|
||||
"Revert Local Changes": "Revertir los cambios locales",
|
||||
"Save": "Guardar",
|
||||
"Scan Time Remaining": "Tiempo Restante de Escaneo",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Selecciona las carpetas para compartir con este dispositivo.",
|
||||
"Send & Receive": "Enviar y Recibir",
|
||||
"Send Only": "Solo Enviar",
|
||||
"Set Ignores on Added Folder": "Establecer Ignorados en Carpeta Agregada",
|
||||
"Settings": "Ajustes",
|
||||
"Share": "Compartir",
|
||||
"Share Folder": "Compartir carpeta",
|
||||
@@ -299,8 +303,8 @@
|
||||
"Sharing": "Compartiendo",
|
||||
"Show ID": "Mostrar ID",
|
||||
"Show QR": "Mostrar QR",
|
||||
"Show detailed discovery status": "Show detailed discovery status",
|
||||
"Show detailed listener status": "Show detailed listener status",
|
||||
"Show detailed discovery status": "Mostrar estado de descubrimiento detallado",
|
||||
"Show detailed listener status": "Mostrar estado de oyente detallado",
|
||||
"Show diff with previous version": "Muestra las diferencias con la versión previa",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "Se muestra en lugar del ID del dispositivo en el estado del grupo (cluster). Se notificará a los otros dispositivos como nombre opcional por defecto.",
|
||||
"Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.": "Se muestra en lugar del ID del dispositivo en el estado del grupo (cluster). Se actualizará al nombre que el dispositivo anuncia si se deja vacío.",
|
||||
@@ -310,9 +314,9 @@
|
||||
"Single level wildcard (matches within a directory only)": "Comodín de nivel único (coincide solamente dentro de un directorio)",
|
||||
"Size": "Tamaño",
|
||||
"Smallest First": "El más pequeño primero",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "Some discovery methods could not be established for finding other devices or announcing this device:",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "No se han podido establecer algunos métodos de descubrimiento para encontrar otros dispositivos o para anunciar este dispositivo:",
|
||||
"Some items could not be restored:": "Algunos ítems no se pudieron restaurar:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Some listening addresses could not be enabled to accept connections:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Algunas direcciones de escucha no pudieron ser activadas para aceptar conexiones:",
|
||||
"Source Code": "Código fuente",
|
||||
"Stable releases and release candidates": "Versiones estables y versiones candidatas",
|
||||
"Stable releases are delayed by about two weeks. During this time they go through testing as release candidates.": "Las versiones estables son publicadas cada dos semanas. Durante este tiempo son probadas como versiones candidatas.",
|
||||
@@ -329,8 +333,8 @@
|
||||
"Syncthing has been shut down.": "Syncthing se ha detenido.",
|
||||
"Syncthing includes the following software or portions thereof:": "Syncthing incluye el siguiente software o partes de él:",
|
||||
"Syncthing is Free and Open Source Software licensed as MPL v2.0.": "Syncthing es Software Gratuito y Open Source Software licenciado como MPL v2.0.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing is listening on the following network addresses for connection attempts from other devices:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing está a la escucha en las siguientes direcciones de red en busca de intentos de conexión de otros dispositivos:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing no está a la escucha de intentos de conexión de otros dispositivos en ninguna dirección. Solo pueden funcionar las conexiones salientes de este dispositivo.",
|
||||
"Syncthing is restarting.": "Syncthing se está reiniciando.",
|
||||
"Syncthing is upgrading.": "Syncthing se está actualizando.",
|
||||
"Syncthing now supports automatically reporting crashes to the developers. This feature is enabled by default.": "Syncthing ahora permite el informe automático de errores a los desarrolladores. Esta característica está activada por defecto.",
|
||||
@@ -349,13 +353,13 @@
|
||||
"The entered device ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "La ID del dispositivo introducida no parece válida. Debe ser una cadena de 52 ó 56 caracteres formada por letras y números, con espacios y guiones opcionales.",
|
||||
"The folder ID cannot be blank.": "La ID de la carpeta no puede estar vacía.",
|
||||
"The folder ID must be unique.": "La ID de la carpeta debe ser única.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "El contenido de las carpetas de otros dispositivos será sobreescritos para que sea idéntico al de este dispositivo. Ficheros no presentes aquí serán eliminados de otros dispositivos.",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "El contenido de las carpetas en este dispositivo será sobreescrito para ser idéntico al de otros dispositivos. Los ficheros que se agreguen aquí se eliminarán.",
|
||||
"The folder path cannot be blank.": "La ruta de la carpeta no puede estar en blanco.",
|
||||
"The following intervals are used: for the first hour a version is kept every 30 seconds, for the first day a version is kept every hour, for the first 30 days a version is kept every day, until the maximum age a version is kept every week.": "Se utilizan los siguientes intervalos: para la primera hora se mantiene una versión cada 30 segundos, para el primer día se mantiene una versión cada hora, para los primeros 30 días se mantiene una versión diaria hasta la edad máxima de una semana.",
|
||||
"The following items could not be synchronized.": "Los siguientes elementos no pueden ser sincronizados.",
|
||||
"The following items were changed locally.": "Los siguientes ítems fueron cambiados localmente.",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "The following methods are used to discover other devices on the network and announce this device to be found by others:",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "Los siguientes métodos son usados para descubrir otros dispositivos en la red y anunciar este dispositivo para que sea encontrado por otros:",
|
||||
"The following unexpected items were found.": "Los siguientes elementos inesperados fueron encontrados.",
|
||||
"The interval must be a positive number of seconds.": "El intervalo debe ser un número positivo de segundos.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "El intervalo, en segundos, para realizar la limpieza del directorio de versiones. Cero para desactivar la limpieza periódica.",
|
||||
@@ -373,7 +377,7 @@
|
||||
"They are retried automatically and will be synced when the error is resolved.": "Se reintentarán de forma automática y se sincronizarán cuando se resuelva el error.",
|
||||
"This Device": "Este Dispositivo",
|
||||
"This can easily give hackers access to read and change any files on your computer.": "Esto podría permitir fácilmente el acceso a hackers para leer y modificar cualquier fichero de tu equipo.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "Este dispositivo no puede descubrir automáticamente a otros dispositivos o anunciar su propia dirección para que sea encontrado con otros. Solo dispositivos con direcciones configuradas como estáticas pueden conectarse.",
|
||||
"This is a major version upgrade.": "Hay una actualización importante.",
|
||||
"This setting controls the free space required on the home (i.e., index database) disk.": "Este ajuste controla el espacio libre necesario en el disco principal (por ejemplo, el índice de la base de datos).",
|
||||
"Time": "Hora",
|
||||
@@ -410,7 +414,7 @@
|
||||
"Waiting to Clean": "Esperando para Limpiar",
|
||||
"Waiting to Scan": "Esperando para Escanear",
|
||||
"Waiting to Sync": "Esperando para Sincronizar",
|
||||
"Warning": "Warning",
|
||||
"Warning": "Advertencia",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolder%}\".": "¡Peligro! Esta ruta es un directorio principal de la carpeta ya existente \"{{otherFolder}}\".",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "'Peligro! Esta ruta es un subdirectorio de la carpeta ya existente \"{{otherFolderLabel}}\" ({{otherFolder}}).",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolder%}\".": "Peligro! Esta ruta es un subdirectorio de una carpeta ya existente llamada \"{{otherFolder}}\".",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "Documentación completa",
|
||||
"items": "Elementos",
|
||||
"seconds": "segundos",
|
||||
"theme-name-black": "Negro",
|
||||
"theme-name-dark": "Oscuro",
|
||||
"theme-name-default": "Por Defecto",
|
||||
"theme-name-light": "Claro",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} quiere compartir la carpeta \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} quiere compartir la carpeta \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} puede reintroducir este equipo."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Agregar Carpeta",
|
||||
"Add Remote Device": "Añadir un dispositivo",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Añadir dispositivos desde el introductor a nuestra lista de dispositivos, para las carpetas compartidas mutuamente.",
|
||||
"Add ignore patterns": "Agregar patrones a ignorar",
|
||||
"Add new folder?": "¿Agregar una carpeta nueva?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Además, el intervalo de reexploración completo se incrementará (60 veces, es decir, nuevo valor predeterminado de 1h). También puedes configurarlo manualmente para cada carpeta más adelante después de seleccionar No",
|
||||
"Address": "Dirección",
|
||||
@@ -22,16 +23,17 @@
|
||||
"Allow Anonymous Usage Reporting?": "¿Deseas permitir el envío anónimo de informes de uso?",
|
||||
"Allowed Networks": "Redes permitidas",
|
||||
"Alphabetic": "Alfabético",
|
||||
"Altered by ignoring deletes.": "Alterado al ignorar eliminaciones.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Un comando externo maneja las versiones. Tienes que eliminar el archivo de la carpeta compartida. Si la ruta a la aplicación contiene espacios, ésta debe estar entre comillas.",
|
||||
"Anonymous Usage Reporting": "Informe anónimo de uso",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "El formato del informe de uso anónimo a cambiado. ¿Desearía usar el nuevo formato?",
|
||||
"Are you sure you want to continue?": "Are you sure you want to continue?",
|
||||
"Are you sure you want to override all remote changes?": "Are you sure you want to override all remote changes?",
|
||||
"Are you sure you want to continue?": "¿Está seguro(a) de que desea continuar?",
|
||||
"Are you sure you want to override all remote changes?": "¿Está seguro(a) de que desea sobreescribir todos los cambios remotos?",
|
||||
"Are you sure you want to permanently delete all these files?": "¿Está seguro de que desea eliminar permanente todos estos archivos?",
|
||||
"Are you sure you want to remove device {%name%}?": "¿Está seguro que desea eliminar el dispositivo {{name}}?",
|
||||
"Are you sure you want to remove folder {%label%}?": "¿Está seguro que desea eliminar la carpeta {{label}}?",
|
||||
"Are you sure you want to restore {%count%} files?": "¿Está seguro que desea restaurar {{count}} archivos?",
|
||||
"Are you sure you want to revert all local changes?": "Are you sure you want to revert all local changes?",
|
||||
"Are you sure you want to revert all local changes?": "¿Está seguro(a) de que desea revertir todos los cambios locales?",
|
||||
"Are you sure you want to upgrade?": "¿Está seguro(a) de que desea actualizar?",
|
||||
"Auto Accept": "Aceptar automáticamente",
|
||||
"Automatic Crash Reporting": "Informe Automático de Fallos",
|
||||
@@ -42,13 +44,13 @@
|
||||
"Available debug logging facilities:": "Funciones de registro de depuración disponibles:",
|
||||
"Be careful!": "¡Ten cuidado!",
|
||||
"Bugs": "Errores",
|
||||
"Cancel": "Cancel",
|
||||
"Cancel": "Cancelar",
|
||||
"Changelog": "Registro de cambios",
|
||||
"Clean out after": "Limpiar tras",
|
||||
"Cleaning Versions": "Limpiando Versiones",
|
||||
"Cleanup Interval": "Intervalo de Limpieza",
|
||||
"Click to see discovery failures": "Clica para ver fallos de descubrimiento.",
|
||||
"Click to see full identification string and QR code.": "Click to see full identification string and QR code.",
|
||||
"Click to see full identification string and QR code.": "Haga clic para ver la cadena de identificación completa y su código QR.",
|
||||
"Close": "Cerrar",
|
||||
"Command": "Acción",
|
||||
"Comment, when used at the start of a line": "Comentar, cuando se usa al comienzo de una línea",
|
||||
@@ -71,7 +73,7 @@
|
||||
"Default Folder": "Carpeta Predeterminada",
|
||||
"Default Folder Path": "Ruta de la carpeta por defecto",
|
||||
"Defaults": "Valores Predeterminados",
|
||||
"Delete": "Suprimir",
|
||||
"Delete": "Eliminar",
|
||||
"Delete Unexpected Items": "Borrar Elementos Inesperados",
|
||||
"Deleted": "Eliminado",
|
||||
"Deselect All": "Deseleccionar Todo",
|
||||
@@ -98,9 +100,9 @@
|
||||
"Discovered": "Descubierto",
|
||||
"Discovery": "Descubrimiento",
|
||||
"Discovery Failures": "Fallos de Descubrimiento",
|
||||
"Discovery Status": "Discovery Status",
|
||||
"Dismiss": "Dismiss",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Do not add it to the ignore list, so this notification may recur.",
|
||||
"Discovery Status": "Estado de Descubrimiento",
|
||||
"Dismiss": "Descartar",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "No agregarlo a la lista de ignorados, de modo que esta notificación sea recurrente.",
|
||||
"Do not restore": "No restaurar",
|
||||
"Do not restore all": "No restaurar todos",
|
||||
"Do you want to enable watching for changes for all your folders?": "¿Deseas activar el control de cambios en todas tus carpetas?",
|
||||
@@ -126,7 +128,7 @@
|
||||
"Error": "Error",
|
||||
"External File Versioning": "Versionado externo de fichero",
|
||||
"Failed Items": "Elementos fallidos",
|
||||
"Failed to load ignore patterns.": "Failed to load ignore patterns.",
|
||||
"Failed to load ignore patterns.": "Fallo al cargar patrones a ignorar",
|
||||
"Failed to setup, retrying": "Fallo en la configuración, reintentando",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "Se espera un fallo al conectar a los servidores IPv6 si no hay conectividad IPv6.",
|
||||
"File Pull Order": "Orden de Obtención de los Archivos",
|
||||
@@ -143,7 +145,7 @@
|
||||
"Folder Label": "Etiqueta de la Carpeta",
|
||||
"Folder Path": "Ruta de la carpeta",
|
||||
"Folder Type": "Tipo de carpeta",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "Folder type \"{{receiveEncrypted}}\" can only be set when adding a new folder.",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "El tipo de carpeta \"{{receiveEncrypted}}\" solo puede ser establecido al agregar una nueva carpeta.",
|
||||
"Folder type \"{%receiveEncrypted%}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.": "El tipo de carpeta \"{{receiveEncrypted}}\" no se puede cambiar después de añadir la carpeta. Es necesario eliminar la carpeta, borrar o descifrar los datos en el disco y volver a añadir la carpeta.",
|
||||
"Folders": "Carpetas",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "En las siguientes carpetas se ha producido un error al empezar a buscar cambios. Se volverá a intentar cada minuto, por lo que los errores podrían solucionarse pronto. Si persisten, trata de arreglar el problema subyacente y pide ayuda si no puedes.",
|
||||
@@ -162,12 +164,13 @@
|
||||
"Help": "Ayuda",
|
||||
"Home page": "Página de inicio",
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "Sin embargo, su configuración actual indica que puede no quererla activa. Hemos desactivado los informes automáticos de fallos por usted.",
|
||||
"Identification": "Identification",
|
||||
"Identification": "Identificación",
|
||||
"If untrusted, enter encryption password": "Si no es de confianza, introduzca la contraseña de cifrado",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "Si desea evitar que otros usuarios de esta computadora accedan a Syncthing y, a través de él, a sus archivos, considere establecer la autenticación.",
|
||||
"Ignore": "Ignorar",
|
||||
"Ignore Patterns": "Patrones a ignorar",
|
||||
"Ignore Permissions": "Permisos a ignorar",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Los patrones a ignorar solo se pueden agregar luego de que la carpeta sea creada. Cuando se marca, se presentará un campo de entrada para introducir los patrones a ignorar después de guardar.",
|
||||
"Ignored Devices": "Dispositivos ignorados",
|
||||
"Ignored Folders": "Carpetas ignoradas",
|
||||
"Ignored at": "Ignorados en",
|
||||
@@ -184,8 +187,8 @@
|
||||
"Latest Change": "Último Cambio",
|
||||
"Learn more": "Saber más",
|
||||
"Limit": "Límite",
|
||||
"Listener Failures": "Listener Failures",
|
||||
"Listener Status": "Listener Status",
|
||||
"Listener Failures": "Fallos de Oyente",
|
||||
"Listener Status": "Estado de Oyente",
|
||||
"Listeners": "Oyentes",
|
||||
"Loading data...": "Cargando datos...",
|
||||
"Loading...": "Cargando...",
|
||||
@@ -224,7 +227,7 @@
|
||||
"Out of Sync": "No sincronizado",
|
||||
"Out of Sync Items": "Elementos no sincronizados",
|
||||
"Outgoing Rate Limit (KiB/s)": "Límite de subida (KiB/s)",
|
||||
"Override": "Override",
|
||||
"Override": "Sobreescribir",
|
||||
"Override Changes": "Anular cambios",
|
||||
"Path": "Ruta",
|
||||
"Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "Ruta a la carpeta en la máquina local. Se creará si no existe. El carácter de la tilde (~) puede usarse como atajo.",
|
||||
@@ -238,19 +241,19 @@
|
||||
"Periodic scanning at given interval and disabled watching for changes": "Escaneando periódicamente a un intervalo dado y detección de cambios desactivada",
|
||||
"Periodic scanning at given interval and enabled watching for changes": "Escaneando periódicamente a un intervalo dado y detección de cambios activada",
|
||||
"Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:": "Escaneando periódicamente a un intervalo dado y falló la configuración para detectar cambios, volviendo a intentarlo cada 1 m:",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Permanently add it to the ignore list, suppressing further notifications.",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Agregarlo permanentemente a la lista de ignorados, suprimiendo futuras notificaciones.",
|
||||
"Permissions": "Permisos",
|
||||
"Please consult the release notes before performing a major upgrade.": "Por favor, consultar las notas de la versión antes de realizar una actualización importante.",
|
||||
"Please set a GUI Authentication User and Password in the Settings dialog.": "Por favor, introduzca un Usuario y Contraseña para la Autenticación de la Interfaz de Usuario en el panel de Ajustes.",
|
||||
"Please wait": "Por favor, espere",
|
||||
"Prefix indicating that the file can be deleted if preventing directory removal": "Prefix indicating that the file can be deleted if preventing directory removal",
|
||||
"Prefix indicating that the file can be deleted if preventing directory removal": "Prefijo que indica que el archivo puede ser eliminado si se impide el borrado del directorio",
|
||||
"Prefix indicating that the pattern should be matched without case sensitivity": "Prefix indicating that the pattern should be matched without case sensitivity",
|
||||
"Preparing to Sync": "Preparándose para Sincronizar",
|
||||
"Preview": "Vista previa",
|
||||
"Preview Usage Report": "Informe de uso de vista previa",
|
||||
"Quick guide to supported patterns": "Guía rápida de patrones soportados",
|
||||
"Random": "Aleatorio",
|
||||
"Receive Encrypted": "Recibir Encriptado(s)",
|
||||
"Receive Encrypted": "Recibir Encriptado",
|
||||
"Receive Only": "Solo Recibir",
|
||||
"Received data is already encrypted": "Los datos recibidos ya están cifrados",
|
||||
"Recent Changes": "Cambios recientes",
|
||||
@@ -274,7 +277,7 @@
|
||||
"Resume": "Continuar",
|
||||
"Resume All": "Continuar todo",
|
||||
"Reused": "Reutilizado",
|
||||
"Revert": "Revert",
|
||||
"Revert": "Revertir",
|
||||
"Revert Local Changes": "Revertir Cambios Locales",
|
||||
"Save": "Guardar",
|
||||
"Scan Time Remaining": "Tiempo Restante de Escaneo",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Selecciona las carpetas para compartir con este dispositivo.",
|
||||
"Send & Receive": "Enviar y Recibir",
|
||||
"Send Only": "Solo Enviar",
|
||||
"Set Ignores on Added Folder": "Establecer Ignorados en Carpeta Agregada",
|
||||
"Settings": "Ajustes",
|
||||
"Share": "Compartir",
|
||||
"Share Folder": "Compartir carpeta",
|
||||
@@ -299,8 +303,8 @@
|
||||
"Sharing": "Compartiendo",
|
||||
"Show ID": "Mostrar ID",
|
||||
"Show QR": "Mostrar QR",
|
||||
"Show detailed discovery status": "Show detailed discovery status",
|
||||
"Show detailed listener status": "Show detailed listener status",
|
||||
"Show detailed discovery status": "Mostrar estado de descubrimiento detallado",
|
||||
"Show detailed listener status": "Mostrar estado de oyente detallado",
|
||||
"Show diff with previous version": "Mostrar la diferencia con la versión anterior",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "Se muestra en lugar del ID del dispositivo en el estado del grupo (cluster). Se notificará a los otros dispositivos como nombre opcional por defecto.",
|
||||
"Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.": "Se muestra en lugar del ID del dispositivo en el estado del grupo (cluster). Se actualizará al nombre que el dispositivo anuncia si se deja vacío.",
|
||||
@@ -310,9 +314,9 @@
|
||||
"Single level wildcard (matches within a directory only)": "Comodín de nivel único (coincide solamente dentro de un directorio)",
|
||||
"Size": "Tamaño",
|
||||
"Smallest First": "El más pequeño primero",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "Some discovery methods could not be established for finding other devices or announcing this device:",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "No se han podido establecer algunos métodos de descubrimiento para encontrar otros dispositivos o para anunciar este dispositivo:",
|
||||
"Some items could not be restored:": "Algunos ítemes no pudieron ser restaurados:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Some listening addresses could not be enabled to accept connections:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Algunas direcciones de escucha no pudieron ser activadas para aceptar conexiones:",
|
||||
"Source Code": "Código fuente",
|
||||
"Stable releases and release candidates": "Versiones estables y versiones candidatas",
|
||||
"Stable releases are delayed by about two weeks. During this time they go through testing as release candidates.": "Las versiones estables son publicadas cada dos semanas. Durante este tiempo son probadas como versiones candidatas.",
|
||||
@@ -329,8 +333,8 @@
|
||||
"Syncthing has been shut down.": "Syncthing se ha detenido.",
|
||||
"Syncthing includes the following software or portions thereof:": "Syncthing incluye el siguiente software o partes de él:",
|
||||
"Syncthing is Free and Open Source Software licensed as MPL v2.0.": "Syncthing es Software Libre y de Código Abierto con licencia MPL v2.0.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing is listening on the following network addresses for connection attempts from other devices:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing está a la escucha en las siguientes direcciones de red en busca de intentos de conexión de otros dispositivos:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing no está a la escucha de intentos de conexión de otros dispositivos en ninguna dirección. Solo pueden funcionar las conexiones salientes de este dispositivo.",
|
||||
"Syncthing is restarting.": "Syncthing se está reiniciando.",
|
||||
"Syncthing is upgrading.": "Syncthing se está actualizando.",
|
||||
"Syncthing now supports automatically reporting crashes to the developers. This feature is enabled by default.": "Syncthing ahora soporta el reportar automáticamente las fallas a los desarrolladores. Esta característica está habilitada por defecto.",
|
||||
@@ -349,13 +353,13 @@
|
||||
"The entered device ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "La ID del dispositivo introducida no parece válida. Debe ser una cadena de 52 ó 56 caracteres formada por letras y números, con espacios y guiones opcionales.",
|
||||
"The folder ID cannot be blank.": "La ID de la carpeta no puede estar vacía.",
|
||||
"The folder ID must be unique.": "La ID de la carpeta debe ser única.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "El contenido de las carpetas de otros dispositivos será sobreescritos para que sea idéntico al de este dispositivo. Archivos no presentes aquí serán eliminados de otros dispositivos.",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "El contenido de las carpetas en este dispositivo será sobreescrito para ser idéntico al de otros dispositivos. Los archivos que se agreguen aquí se eliminarán.",
|
||||
"The folder path cannot be blank.": "La ruta de la carpeta no puede estar en blanco.",
|
||||
"The following intervals are used: for the first hour a version is kept every 30 seconds, for the first day a version is kept every hour, for the first 30 days a version is kept every day, until the maximum age a version is kept every week.": "Se utilizan los siguientes intervalos: para la primera hora se mantiene una versión cada 30 segundos, para el primer día se mantiene una versión cada hora, para los primeros 30 días se mantiene una versión diaria hasta la edad máxima de una semana.",
|
||||
"The following items could not be synchronized.": "Los siguientes elementos no pueden ser sincronizados.",
|
||||
"The following items were changed locally.": "Los siguientes elementos fueron cambiados localmente.",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "The following methods are used to discover other devices on the network and announce this device to be found by others:",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "Los siguientes métodos son usados para descubrir otros dispositivos en la red y anunciar este dispositivo para que sea encontrado por otros:",
|
||||
"The following unexpected items were found.": "Los siguientes elementos inesperados fueron encontrados.",
|
||||
"The interval must be a positive number of seconds.": "El intervalo debe ser un número de segundos positivo.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "El intervalo, en segundos, para ejecutar la limpieza del directorio de versiones. Cero para desactivar la limpieza periódica.",
|
||||
@@ -373,7 +377,7 @@
|
||||
"They are retried automatically and will be synced when the error is resolved.": "Se reintentarán de forma automática y se sincronizarán cuando se resuelva el error.",
|
||||
"This Device": "Este Dispositivo",
|
||||
"This can easily give hackers access to read and change any files on your computer.": "Esto podría permitir fácilmente el acceso a hackers para leer y modificar cualquier fichero de tu equipo.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "Este dispositivo no puede descubrir automáticamente a otros dispositivos o anunciar su propia dirección para que sea encontrado con otros. Solo dispositivos con direcciones configuradas como estáticas pueden conectarse.",
|
||||
"This is a major version upgrade.": "Hay una actualización importante.",
|
||||
"This setting controls the free space required on the home (i.e., index database) disk.": "Este ajuste controla el espacio libre necesario en el disco principal (por ejemplo, el índice de la base de datos).",
|
||||
"Time": "Hora",
|
||||
@@ -401,7 +405,7 @@
|
||||
"Uptime": "Tiempo de funcionamiento",
|
||||
"Usage reporting is always enabled for candidate releases.": "El informe de uso está siempre habilitado en las versiones candidatas.",
|
||||
"Use HTTPS for GUI": "Usar HTTPS para la Interfaz Gráfica de Usuario (GUI)",
|
||||
"Use notifications from the filesystem to detect changed items.": "Use notifications from the filesystem to detect changed items.",
|
||||
"Use notifications from the filesystem to detect changed items.": "Usar notificaciones del sistema de archivos para detectar elementos cambiados.",
|
||||
"Username/Password has not been set for the GUI authentication. Please consider setting it up.": "No se ha configurado el nombre de usuario/la contraseña para la autenticación de la GUI. Por favor, considere configurarlos.",
|
||||
"Version": "Versión",
|
||||
"Versions": "Versiones",
|
||||
@@ -410,7 +414,7 @@
|
||||
"Waiting to Clean": "Esperando para Limpiar",
|
||||
"Waiting to Scan": "Esperando para Escanear",
|
||||
"Waiting to Sync": "Esperando para Sincronizar",
|
||||
"Warning": "Warning",
|
||||
"Warning": "Advertencia",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolder%}\".": "¡Peligro! Esta ruta es un directorio principal de la carpeta ya existente \"{{otherFolder}}\".",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "'Peligro! Esta ruta es un subdirectorio de la carpeta ya existente \"{{otherFolderLabel}}\" ({{otherFolder}}).",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolder%}\".": "Peligro! Esta ruta es un subdirectorio de una carpeta ya existente llamada \"{{otherFolder}}\".",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "Documentación completa",
|
||||
"items": "Elementos",
|
||||
"seconds": "segundos",
|
||||
"theme-name-black": "Negro",
|
||||
"theme-name-dark": "Oscuro",
|
||||
"theme-name-default": "Por Defecto",
|
||||
"theme-name-light": "Claro",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} quiere compartir la carpeta \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} quiere compartir la carpeta \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} puede reintroducir este dispositivo."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Karpeta gehitu",
|
||||
"Add Remote Device": "Urrundikako tresna bat gehitu",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Gure tresna zerrendan tresnak gehitzea baimendu, partekatzeetan.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Karpeta berria gehitu?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Gainera, berresplorazio osoaren tartea handitu egingo da (60 aldiz, hau da, lehenetsitako balio berria, 1 ordukoa). Halaber, eskuz konfigura dezakezu karpeta bakoitzerako, Ez hautatu ondoren.",
|
||||
"Address": "Helbidea",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Izenik gabeko erabiltze erreportak baimendu?",
|
||||
"Allowed Networks": "Sare baimenduak",
|
||||
"Alphabetic": "Alfabetikoa",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Kanpoko kontrolagailu batek fitxategien bertsioak kudeatzen ditu. Fitxategiak kendu behar ditu errepertorio sinkronizatuan. Aplikaziorako ibilbideak espazioak baditu, komatxo artean egon behar du.",
|
||||
"Anonymous Usage Reporting": "Izenik gabeko erabiltze erreportak",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Erabilera anonimoko txostenaren formatua aldatu egin da. Formatu berria erabili nahi duzu?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Kontuan ez hartu",
|
||||
"Ignore Patterns": "Baztertzeak",
|
||||
"Ignore Permissions": "Baimenak kontuan ez hartu",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Bazter utzitako tresnak",
|
||||
"Ignored Folders": "Bazter utzitako karpetak",
|
||||
"Ignored at": "Hemen baztertuak",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Tresna honek erabiltzen dituen partekatzeak hauta itzazu",
|
||||
"Send & Receive": "Igorri eta errezibitu",
|
||||
"Send Only": "Igorrri bakarrik",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Konfigurazioa",
|
||||
"Share": "Partekatu",
|
||||
"Share Folder": "Partekatzea",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "Dokumentazio osoa",
|
||||
"items": "Elementuak",
|
||||
"seconds": "segunduak",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}}k \"{{folder}}\" partekatze hontan gomitatzen zaitu.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}}k \"{{folderlabel}}\" ({{folder}}) hontan gomitatzen zaitu.",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} -ek gailu hau birsar lezake."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Lisää kansio",
|
||||
"Add Remote Device": "Lisää laite",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Lisää laitteet esittelijältä tämän koneen laitelistaan yhteisiksi jaetuiksi kansioiksi.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Lisää uusi kansio?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Lisäksi täysi kansioiden skannausväli kasvaa (60-kertaiseksi, uusi oletus on siis yksi tunti). Voit kuitenkin asettaa skannausvälin kansiokohtaisesti myöhemmin vaikka valitset nyt \"ei\".",
|
||||
"Address": "Osoite",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Salli anonyymi käyttöraportointi?",
|
||||
"Allowed Networks": "Sallitut verkot",
|
||||
"Alphabetic": "Aakkosellinen",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Ulkoinen komento hallitsee versionnin. Sen täytyy poistaa tiedosto synkronoidusta kansiosta. Mikäli ohjelman polussa on välilyöntejä se on laitettava lainausmerkkeihin.",
|
||||
"Anonymous Usage Reporting": "Anonyymi käyttöraportointi",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Anonyymi käyttöraportti on muuttunut. Haluatko vaihtaa uuteen muotoon?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ohita",
|
||||
"Ignore Patterns": "Ohituslausekkeet",
|
||||
"Ignore Permissions": "Jätä oikeudet huomiotta",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ohitetut laitteet",
|
||||
"Ignored Folders": "Ohitetut kansiot",
|
||||
"Ignored at": "Ohitettu (laitteessa)",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Valitse kansiot jaettavaksi tämän laitteen kanssa.",
|
||||
"Send & Receive": "Lähetä & vastaanota",
|
||||
"Send Only": "Vain lähetys",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Asetukset",
|
||||
"Share": "Jaa",
|
||||
"Share Folder": "Jaa kansio",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "täysi dokumentaatio",
|
||||
"items": "kohteet",
|
||||
"seconds": "seconds",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} haluaa jakaa kansion \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} haluaa jakaa kansion \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Ajouter un partage...",
|
||||
"Add Remote Device": "Ajouter un appareil...",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "ATTENTION !!! Lui permettre d'ajouter et enlever des membres à toutes mes listes de membres des partages dont il fait (ou fera !) partie (ceci permet de créer automatiquement toutes les liaisons point à point possibles en complétant mes listes par les siennes, meilleur débit de réception par cumul des débits d'envoi, indépendance vis à vis de l'introducteur, etc).",
|
||||
"Add ignore patterns": "Ajouter des masques d'exclusion",
|
||||
"Add new folder?": "Ajouter ce partage ?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Dans ce cas, l'intervalle de réanalyse complète sera augmenté (60 fois, c.-à-d. une nouvelle valeur par défaut de 1h). Vous pouvez également la configurer manuellement plus tard, pour chaque partage, après avoir choisi Non.",
|
||||
"Address": "Adresse",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Autoriser l'envoi de statistiques d'utilisation anonymisées ?",
|
||||
"Allowed Networks": "Réseaux autorisés",
|
||||
"Alphabetic": "Alphabétique",
|
||||
"Altered by ignoring deletes.": "Altéré par \"Ignore Delete\".",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Une commande externe gère les versions de fichiers. Il lui incombe de supprimer les fichiers du répertoire partagé. Si le chemin contient des espaces, il doit être spécifié entre guillemets.",
|
||||
"Anonymous Usage Reporting": "Rapport anonyme de statistiques d'utilisation",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Le format du rapport anonyme d'utilisation a changé. Voulez-vous passer au nouveau format ?",
|
||||
@@ -100,7 +102,7 @@
|
||||
"Discovery Failures": "Échecs de découverte",
|
||||
"Discovery Status": "État de la découverte",
|
||||
"Dismiss": "Écarter",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Ne pas l'ajouter à la liste permanente à ignorer, pour que cette notification puisse réapparaître.",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Attendre la disparition de cette demande : évite l'ajout immédiat à la liste noire persistante.",
|
||||
"Do not restore": "Ne pas restaurer",
|
||||
"Do not restore all": "Ne pas tout restaurer",
|
||||
"Do you want to enable watching for changes for all your folders?": "Voulez-vous activer la surveillance des changements sur tous vos partages ?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Refuser",
|
||||
"Ignore Patterns": "Exclusions...",
|
||||
"Ignore Permissions": "Ignorer les permissions",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "L'ajout de masques d'exclusion ne peut se faire qu'après la création du partage. En cochant cette case il vous sera proposé de saisir (ou si vous avez déjà défini des valeurs par défaut, de compléter) une liste d'exclusions après l'enregistrement. ",
|
||||
"Ignored Devices": "Appareils refusés",
|
||||
"Ignored Folders": "Partages refusés",
|
||||
"Ignored at": "Refusé le",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Choisir les partages auxquels cet appareil doit participer :",
|
||||
"Send & Receive": "Envoi & réception",
|
||||
"Send Only": "Envoi (lecture seule)",
|
||||
"Set Ignores on Added Folder": "Définir des exclusions pour le nouveau partage",
|
||||
"Settings": "Configuration",
|
||||
"Share": "Partager",
|
||||
"Share Folder": "Partager",
|
||||
@@ -433,9 +437,13 @@
|
||||
"days": "Jours",
|
||||
"directories": "répertoires",
|
||||
"files": "Fichiers",
|
||||
"full documentation": "Documentation complète ici",
|
||||
"full documentation": "Documentation complète ici (en anglais)",
|
||||
"items": "élément(s)",
|
||||
"seconds": "secondes",
|
||||
"theme-name-black": "Noir",
|
||||
"theme-name-dark": "Sombre",
|
||||
"theme-name-default": "Par défaut (système)",
|
||||
"theme-name-light": "Clair",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} vous invite au partage \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} vous invite au partage \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} pourrait ré-enrôler cet appareil."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Map taheakje",
|
||||
"Add Remote Device": "Apparaat op Ofstân Taheakje",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Heakje apparaten fan de yntrodusearders ta oan ús apparatenlyst, foar mei-inoar dielde mappen.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Nije map taheakje?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Boppedat wurd it ynterfal foar in folledige wer-sken omheech brocht (kear 60 minuten, dit is in nije standert fan 1 oere). Jo kinne dit ek letter foar elke map hânmjittich ynstelle nei it kiezen fan Nee.",
|
||||
"Address": "Adres",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Anonime brûkensrapportaazje tastean?",
|
||||
"Allowed Networks": "Tasteane Netwurken",
|
||||
"Alphabetic": "Alfabetysk",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "In ekstern kommando soarget foar it ferzjebehear. It moat de triem út de dielde map fuortsmite. As it paad nei de applikaasje romtes hat, moat it tusken oanheltekens sette wurden.",
|
||||
"Anonymous Usage Reporting": "Anonym brûkensrapportaazje",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "It formaat fan de rapportaazje fan anonime gebrûksynformaasje is feroare. Wolle jo op dit nije formaat oerstappe?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Negearje",
|
||||
"Ignore Patterns": "Negear-patroanen",
|
||||
"Ignore Permissions": "Negear-rjochten",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Negearde Apparaten",
|
||||
"Ignored Folders": "Negearde Mappen",
|
||||
"Ignored at": "Negeard op ",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Sykje de mappen út om mei dit apparaat te dielen.",
|
||||
"Send & Receive": "Stjoere & Untfange",
|
||||
"Send Only": "Allinnich Stjoere",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Ynstellings",
|
||||
"Share": "Diele",
|
||||
"Share Folder": "Map diele",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "komplete dokumintaasje",
|
||||
"items": "items",
|
||||
"seconds": "sekonden",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} wol map \"{{folder}}\" diele.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} wol map \"{{folderlabel}}\" ({{folder}}) diele.",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} kin dit apparaat opnij yntrodusearje."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Mappa hozzáadása",
|
||||
"Add Remote Device": "Távoli eszköz hozzáadása",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Eszközök hozzáadása a bevezetőről az eszköz listához, a közösen megosztott mappákhoz.",
|
||||
"Add ignore patterns": "Mellőzési minták hozzáadása",
|
||||
"Add new folder?": "Hozzáadható az új mappa?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Ezzel együtt a teljes átnézési intervallum jóval meg fog nőni (60-szoros értékre, vagyis 1 óra az új alapértelmezett érték). A „Nem” kiválasztásával később kézzel is módosítható ez az érték minden egyes mappára külön-külön.",
|
||||
"Address": "Cím",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "A névtelen felhasználási adatok elküldhetők?",
|
||||
"Allowed Networks": "Engedélyezett hálózatok",
|
||||
"Alphabetic": "ABC sorrendben",
|
||||
"Altered by ignoring deletes.": "Módosítva a törlések figyelmen kívül hagyásával.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Külső program kezeli a fájlverzió-követést. Az távolítja el a fájlt a megosztott mappából. Ha az alkalmazás útvonala szóközöket tartalmaz, zárójelezni szükséges az útvonalat.",
|
||||
"Anonymous Usage Reporting": "Névtelen felhasználási adatok küldése",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "A névtelen használati jelentés formátuma megváltozott. Szeretnél áttérni az új formátumra?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Mellőzés",
|
||||
"Ignore Patterns": "Mellőzési minták",
|
||||
"Ignore Permissions": "Jogosultságok mellőzése",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Mellőzési minták csak a mappa létrehozása után adhatók hozzá. Bejelölve egy beviteli mező fog megjelenni mentés után a mellőzési minták számára.",
|
||||
"Ignored Devices": "Mellőzött eszközök",
|
||||
"Ignored Folders": "Mellőzött mappák",
|
||||
"Ignored at": "Mellőzve:",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Mappák, amelyek megosztandók ezzel az eszközzel.",
|
||||
"Send & Receive": "Küldés és fogadás",
|
||||
"Send Only": "Csak küldés",
|
||||
"Set Ignores on Added Folder": "Mellőzések beállítása a hozzáadott mappán",
|
||||
"Settings": "Beállítások",
|
||||
"Share": "Megosztás",
|
||||
"Share Folder": "Mappa megosztása",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "teljes dokumentáció",
|
||||
"items": "elem",
|
||||
"seconds": "másodperc",
|
||||
"theme-name-black": "Fekete",
|
||||
"theme-name-dark": "Sötét",
|
||||
"theme-name-default": "Alapértelmezett",
|
||||
"theme-name-light": "Világos",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} szeretné megosztani a mappát: „{{folder}}”.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} szeretné megosztani a mappát: „{{folderlabel}}” ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} újra bevezetheti ezt az eszközt."
|
||||
|
||||
@@ -11,17 +11,19 @@
|
||||
"Add Folder": "Tambah Folder",
|
||||
"Add Remote Device": "Tambah Perangkat Jarak Jauh",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Tambahkan perangkat dari pengenal ke daftar perangkat kita, untuk folder yang saling terbagi.",
|
||||
"Add ignore patterns": "Tambahkan pola pengabaian",
|
||||
"Add new folder?": "Tambah folder baru?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Selain itu, interval pindai ulang secara penuh akan ditambah (kali 60, yaitu bawaan baru selama 1 jam). Anda juga bisa mengkonfigurasi secara manual untuk setiap folder setelah memilih Tidak.",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Selain itu, interval pindai ulang secara penuh akan ditambah (kali 60, yaitu bawaan baru selama 1 jam). Anda juga dapat mengkonfigurasi secara manual untuk setiap folder setelah memilih Tidak.",
|
||||
"Address": "Alamat",
|
||||
"Addresses": "Alamat",
|
||||
"Advanced": "Tingkat Lanjut",
|
||||
"Advanced Configuration": "Konfigurasi Tingkat Lanjut",
|
||||
"All Data": "Semua Data",
|
||||
"All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.": "Semua folder yang dibagi dengan perangkat ini harus dilindungi dengan sandi, sehingga semua data tidak dapat dilihat tanpa sandi.",
|
||||
"Allow Anonymous Usage Reporting?": "Aktifkan Laporan Penggunaan Anonim?",
|
||||
"Allow Anonymous Usage Reporting?": "Izinkan Laporan Penggunaan Anonim?",
|
||||
"Allowed Networks": "Jaringan Terizinkan",
|
||||
"Alphabetic": "Alfabet",
|
||||
"Altered by ignoring deletes.": "Diubah dengan mengabaikan penghapusan.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Perintah eksternal menangani pemversian. Ia harus menghapus berkas dari folder yang dibagi. Jika lokasi aplikasi terdapat spasi, itu harus dikutip.",
|
||||
"Anonymous Usage Reporting": "Pelaporan Penggunaan Anonim",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Format pelaporan penggunaan anonim telah berubah. Maukah anda pindah menggunakan format yang baru?",
|
||||
@@ -100,7 +102,7 @@
|
||||
"Discovery Failures": "Kegagalan Penemuan",
|
||||
"Discovery Status": "Status Penemuan",
|
||||
"Dismiss": "Tolak",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Jangan tambahkan ke daftar pengabaian, maka notifkasi ini mungkin muncul kembali.",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Jangan tambahkan ke daftar pengabaian, maka notifikasi ini mungkin muncul kembali.",
|
||||
"Do not restore": "Jangan pulihkan",
|
||||
"Do not restore all": "Jangan pulihkan semua",
|
||||
"Do you want to enable watching for changes for all your folders?": "Apakah anda ingin mengaktifkan fitur melihat perubahan untuk semua folder anda?",
|
||||
@@ -125,7 +127,7 @@
|
||||
"Enter up to three octal digits.": "Masukkan hingga tiga digit oktal.",
|
||||
"Error": "Galat",
|
||||
"External File Versioning": "Pemversian Berkas Eksternal",
|
||||
"Failed Items": "Materi yang gagal",
|
||||
"Failed Items": "Berkas yang gagal",
|
||||
"Failed to load ignore patterns.": "Gagal memuat pola pengabaian.",
|
||||
"Failed to setup, retrying": "Gagal menyiapkan, mengulang",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "Gagal untuk menyambung ke server IPv6 itu disangka apabila tidak ada konektivitas IPv6.",
|
||||
@@ -168,11 +170,12 @@
|
||||
"Ignore": "Abaikan",
|
||||
"Ignore Patterns": "Pola Pengabaian",
|
||||
"Ignore Permissions": "Abaikan Izin Berkas",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Pola pengabaian hanya dapat ditambahkan setelah folder dibuat. Jika dicek, sebuah bidang input untuk memasukkan pola pengabaian akan ditunjukkan setelah disimpan.",
|
||||
"Ignored Devices": "Perangkat yang Diabaikan",
|
||||
"Ignored Folders": "Folder yang Diabaikan",
|
||||
"Ignored at": "Diabaikan di",
|
||||
"Incoming Rate Limit (KiB/s)": "Batas Kecepatan Unduh (KiB/s)",
|
||||
"Incorrect configuration may damage your folder contents and render Syncthing inoperable.": "Konfigurasi salah bisa merusak isi folder dan membuat Syncthing tidak bisa dijalankan.",
|
||||
"Incorrect configuration may damage your folder contents and render Syncthing inoperable.": "Konfigurasi salah dapat merusak isi folder dan membuat Syncthing tidak dapat dijalankan.",
|
||||
"Introduced By": "Dikenalkan Oleh",
|
||||
"Introducer": "Pengenal",
|
||||
"Inversion of the given condition (i.e. do not exclude)": "Inversi dari kondisi yang diberikan (yakni jangan dikecualikan)",
|
||||
@@ -204,9 +207,9 @@
|
||||
"Minimum Free Disk Space": "Ruang Penyimpanan Kosong Minimum",
|
||||
"Mod. Device": "Perangkat Pengubah",
|
||||
"Mod. Time": "Waktu Diubah",
|
||||
"Move to top of queue": "Move to top of queue",
|
||||
"Move to top of queue": "Pindah ke daftar tunggu teratas",
|
||||
"Multi level wildcard (matches multiple directory levels)": "Wildcard multi tingkat (cocok dalam tingkat direktori apapun)",
|
||||
"Never": "Never",
|
||||
"Never": "Tidak Pernah",
|
||||
"New Device": "Perangkat Baru",
|
||||
"New Folder": "Folder Baru",
|
||||
"Newest First": "Terbaru Dahulu",
|
||||
@@ -232,8 +235,8 @@
|
||||
"Path where versions should be stored (leave empty for the default .stversions directory in the shared folder).": "Lokasi berbagai versi berkas disimpan (tinggalkan kosong untuk menggunakan direktori .stversions bawaan dalam folder).",
|
||||
"Pause": "Jeda",
|
||||
"Pause All": "Jeda Semua",
|
||||
"Paused": "Telah Berjeda",
|
||||
"Paused (Unused)": "Telah Berjeda (Tidak Digunakan)",
|
||||
"Paused": "Terjeda",
|
||||
"Paused (Unused)": "Terjeda (Tidak Digunakan)",
|
||||
"Pending changes": "Perubahan yang tertunda",
|
||||
"Periodic scanning at given interval and disabled watching for changes": "Pemindaian periodik pada interval tertentu dan fitur melihat perubahan dinonaktifkan",
|
||||
"Periodic scanning at given interval and enabled watching for changes": "Pemindaian periodik pada interval tertentu dan fitur melihat perubahan diaktifkan",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Pilih folder yang akan dibagi dengan perangkat ini.",
|
||||
"Send & Receive": "Kirim & Terima",
|
||||
"Send Only": "Hanya Kirim",
|
||||
"Set Ignores on Added Folder": "Atur Pengabaian dalam Folder yang Ditambahkan",
|
||||
"Settings": "Pengaturan",
|
||||
"Share": "Bagi",
|
||||
"Share Folder": "Bagi Folder",
|
||||
@@ -366,7 +370,7 @@
|
||||
"The number of old versions to keep, per file.": "Jumlah versi lama untuk disimpan, setiap berkas.",
|
||||
"The number of versions must be a number and cannot be blank.": "Jumlah versi harus berupa angka dan tidak dapat kosong.",
|
||||
"The path cannot be blank.": "Lokasi tidak dapat kosong.",
|
||||
"The rate limit must be a non-negative number (0: no limit)": "Pembatasan kecepatan harus berupa angka positif (0: tidak ada batas)",
|
||||
"The rate limit must be a non-negative number (0: no limit)": "Pembatasan kecepatan harus berupa angka positif (0: tidak terbatas)",
|
||||
"The rescan interval must be a non-negative number of seconds.": "Interval pemindaian ulang harus berupa angka positif.",
|
||||
"There are no devices to share this folder with.": "Tidak ada perangkat untuk membagikan folder ini.",
|
||||
"There are no folders to share with this device.": "Tidak ada folder untuk dibagi dengan perangkat ini.",
|
||||
@@ -382,7 +386,7 @@
|
||||
"Type": "Tipe",
|
||||
"UNIX Permissions": "Izin UNIX",
|
||||
"Unavailable": "Tidak Tersedia",
|
||||
"Unavailable/Disabled by administrator or maintainer": "Tidak Tersedia/Dinonaktifkan oleh administrator atau pengelola",
|
||||
"Unavailable/Disabled by administrator or maintainer": "Tidak tersedia/Dinonaktifkan oleh administrator atau pengelola",
|
||||
"Undecided (will prompt)": "Belum terpilih (akan mengingatkan)",
|
||||
"Unexpected Items": "Berkas Tidak Terduga",
|
||||
"Unexpected items have been found in this folder.": "Berkas tidak terduga telah ditemukan dalam folder ini.",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "dokumentasi penuh",
|
||||
"items": "berkas",
|
||||
"seconds": "detik",
|
||||
"theme-name-black": "Hitam",
|
||||
"theme-name-dark": "Gelap",
|
||||
"theme-name-default": "Bawaan",
|
||||
"theme-name-light": "Terang",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} ingin berbagi folder \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} ingin berbagi folder \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} mungkin memperkenalkan ulang perangkat ini."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Aggiungi Cartella",
|
||||
"Add Remote Device": "Aggiungi Dispositivo Remoto",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Aggiungi dispositivi dall'introduttore all'elenco dei dispositivi, per cartelle condivise reciprocamente.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Aggiungere una nuova cartella?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Inoltre, verrà incrementato l'intervallo di scansione completo (60 volte, vale a dire un nuovo default di 1h). Puoi anche configurarlo manualmente per ogni cartella dopo aver scelto No.",
|
||||
"Address": "Indirizzo",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Abilitare Statistiche Anonime di Utilizzo?",
|
||||
"Allowed Networks": "Reti Consentite.",
|
||||
"Alphabetic": "Alfabetico",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Il controllo versione è gestito da un comando esterno. Quest'ultimo deve rimuovere il file dalla cartella condivisa. Se il percorso dell'applicazione contiene spazi, deve essere indicato tra virgolette.",
|
||||
"Anonymous Usage Reporting": "Statistiche Anonime di Utilizzo",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Il formato delle statistiche anonime di utilizzo è cambiato. Vuoi passare al nuovo formato?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignora",
|
||||
"Ignore Patterns": "Schemi Esclusione File",
|
||||
"Ignore Permissions": "Ignora Permessi",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Dispositivi ignorati",
|
||||
"Ignored Folders": "Cartelle ignorate",
|
||||
"Ignored at": "Ignorato a",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Seleziona le cartelle da condividere con questo dispositivo.",
|
||||
"Send & Receive": "Invia & Ricevi",
|
||||
"Send Only": "Invia Soltanto",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Impostazioni",
|
||||
"Share": "Condividi",
|
||||
"Share Folder": "Condividi la Cartella",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "documentazione completa",
|
||||
"items": "elementi",
|
||||
"seconds": "secondi",
|
||||
"theme-name-black": "Nero",
|
||||
"theme-name-dark": "Scuro",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Chiaro",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} vuole condividere la cartella \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} vuole condividere la cartella \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} potrebbe reintrodurre questo dispositivo."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "フォルダーを追加",
|
||||
"Add Remote Device": "接続先デバイスを追加",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "紹介者デバイスから紹介されたデバイスは、相互に共有しているフォルダーがある場合、このデバイス上にも追加されます。",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "新しいフォルダーとして追加しますか?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.",
|
||||
"Address": "アドレス",
|
||||
@@ -22,27 +23,28 @@
|
||||
"Allow Anonymous Usage Reporting?": "匿名で使用状況をレポートすることを許可しますか?",
|
||||
"Allowed Networks": "許可されているネットワーク",
|
||||
"Alphabetic": "アルファベット順",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.",
|
||||
"Anonymous Usage Reporting": "匿名での使用状況レポート",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "匿名での使用状況レポートのフォーマットが変わりました。新形式でのレポートに移行しますか?",
|
||||
"Are you sure you want to continue?": "続行してもよろしいですか?",
|
||||
"Are you sure you want to override all remote changes?": "Are you sure you want to override all remote changes?",
|
||||
"Are you sure you want to override all remote changes?": "リモートでの変更をすべて上書きしてもよろしいですか?",
|
||||
"Are you sure you want to permanently delete all these files?": "これらのファイルをすべて完全に削除してもよろしいですか?",
|
||||
"Are you sure you want to remove device {%name%}?": "デバイス {{name}} を削除してよろしいですか?",
|
||||
"Are you sure you want to remove folder {%label%}?": "フォルダー {{label}} を削除してよろしいですか?",
|
||||
"Are you sure you want to restore {%count%} files?": "{{count}} ファイルを復元してもよろしいですか?",
|
||||
"Are you sure you want to revert all local changes?": "Are you sure you want to revert all local changes?",
|
||||
"Are you sure you want to revert all local changes?": "ローカルでの変更をすべて取り消してもよろしいですか?",
|
||||
"Are you sure you want to upgrade?": "アップグレードしてよろしいですか?",
|
||||
"Auto Accept": "自動承諾",
|
||||
"Automatic Crash Reporting": "自動クラッシュレポート",
|
||||
"Automatic upgrade now offers the choice between stable releases and release candidates.": "自動アップグレードは、安定版とリリース候補版のいずれかを選べるようになりました。",
|
||||
"Automatic upgrades": "自動アップグレード",
|
||||
"Automatic upgrades are always enabled for candidate releases.": "Automatic upgrades are always enabled for candidate releases.",
|
||||
"Automatic upgrades are always enabled for candidate releases.": "リリース候補版ではアップデートは常に自動で行われます。",
|
||||
"Automatically create or share folders that this device advertises at the default path.": "このデバイスが通知するデフォルトのパスで自動的にフォルダを作成、共有します。",
|
||||
"Available debug logging facilities:": "Available debug logging facilities:",
|
||||
"Be careful!": "注意!",
|
||||
"Bugs": "バグ",
|
||||
"Cancel": "Cancel",
|
||||
"Cancel": "キャンセル",
|
||||
"Changelog": "更新履歴",
|
||||
"Clean out after": "以下の期間後に完全に削除する",
|
||||
"Cleaning Versions": "Cleaning Versions",
|
||||
@@ -146,7 +148,7 @@
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "Folder type \"{{receiveEncrypted}}\" can only be set when adding a new folder.",
|
||||
"Folder type \"{%receiveEncrypted%}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.": "Folder type \"{{receiveEncrypted}}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.",
|
||||
"Folders": "フォルダー",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "以下のフォルダへの変更の監視を始めるにあたってエラーが発生しました。1分ごとに再試行するため、すぐに回復するかもしれません。エラーが続くようであれば、原因に対処するか、必要に応じて助けを求めましょう。",
|
||||
"Full Rescan Interval (s)": "フルスキャンの間隔 (秒)",
|
||||
"GUI": "GUI",
|
||||
"GUI Authentication Password": "GUI認証パスワード",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "無視",
|
||||
"Ignore Patterns": "無視するファイル名",
|
||||
"Ignore Permissions": "パーミッションを無視する",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "無視したデバイス",
|
||||
"Ignored Folders": "無視したフォルダー",
|
||||
"Ignored at": "無視指定日時",
|
||||
@@ -195,7 +198,7 @@
|
||||
"Local State (Total)": "ローカル状態 (合計)",
|
||||
"Locally Changed Items": "Locally Changed Items",
|
||||
"Log": "ログ",
|
||||
"Log tailing paused. Scroll to the bottom to continue.": "Log tailing paused. Scroll to the bottom to continue.",
|
||||
"Log tailing paused. Scroll to the bottom to continue.": "ログのリアルタイム表示を停止しています。下部までスクロールすると再開されます。",
|
||||
"Logs": "ログ",
|
||||
"Major Upgrade": "メジャーアップグレード",
|
||||
"Mass actions": "Mass actions",
|
||||
@@ -245,7 +248,7 @@
|
||||
"Please wait": "お待ちください",
|
||||
"Prefix indicating that the file can be deleted if preventing directory removal": "このファイルが中に残っているためにディレクトリを削除できない場合、このファイルごと消してもよいことを示す接頭辞",
|
||||
"Prefix indicating that the pattern should be matched without case sensitivity": "大文字・小文字を同一視してマッチさせる接頭辞",
|
||||
"Preparing to Sync": "Preparing to Sync",
|
||||
"Preparing to Sync": "同期の準備中",
|
||||
"Preview": "プレビュー",
|
||||
"Preview Usage Report": "使用状況レポートのプレビュー",
|
||||
"Quick guide to supported patterns": "サポートされているパターンのクイックガイド",
|
||||
@@ -275,7 +278,7 @@
|
||||
"Resume All": "すべて再開",
|
||||
"Reused": "中断後再利用",
|
||||
"Revert": "Revert",
|
||||
"Revert Local Changes": "Revert Local Changes",
|
||||
"Revert Local Changes": "ローカルでの変更を取り消す",
|
||||
"Save": "保存",
|
||||
"Scan Time Remaining": "スキャン残り時間",
|
||||
"Scanning": "スキャン中",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "このデバイスと共有するフォルダーを選択してください。",
|
||||
"Send & Receive": "送受信",
|
||||
"Send Only": "送信のみ",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "設定",
|
||||
"Share": "共有",
|
||||
"Share Folder": "フォルダーを共有する",
|
||||
@@ -299,7 +303,7 @@
|
||||
"Sharing": "共有",
|
||||
"Show ID": "IDを表示",
|
||||
"Show QR": "QRコードを表示",
|
||||
"Show detailed discovery status": "Show detailed discovery status",
|
||||
"Show detailed discovery status": "詳細な探索ステータスを表示する",
|
||||
"Show detailed listener status": "Show detailed listener status",
|
||||
"Show diff with previous version": "前バージョンとの差分を表示",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "ステータス画面でデバイスIDの代わりに表示されます。他のデバイスに対してもデフォルトの名前として通知されます。",
|
||||
@@ -349,7 +353,7 @@
|
||||
"The entered device ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "入力されたデバイスIDが正しくありません。デバイスIDは52文字または56文字で、アルファベットと数字からなります。スペースとハイフンは入力してもしなくてもかまいません。",
|
||||
"The folder ID cannot be blank.": "フォルダーIDは空欄にできません。",
|
||||
"The folder ID must be unique.": "フォルダーIDが重複しています。",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "他のデバイス上にあるフォルダーの中身は、このデバイスのものと同じになるように上書きされます。他のデバイスにあっても、ここに表示されていないファイルは削除されます。",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.",
|
||||
"The folder path cannot be blank.": "フォルダーパスは空欄にできません。",
|
||||
"The following intervals are used: for the first hour a version is kept every 30 seconds, for the first day a version is kept every hour, for the first 30 days a version is kept every day, until the maximum age a version is kept every week.": "保存間隔は次の通りです。初めの1時間は30秒ごとに古いバージョンを保存します。同様に、初めの1日間は1時間ごと、初めの30日間は1日ごと、その後最大保存日数までは1週間ごとに、古いバージョンを保存します。",
|
||||
@@ -357,7 +361,7 @@
|
||||
"The following items were changed locally.": "The following items were changed locally.",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "The following methods are used to discover other devices on the network and announce this device to be found by others:",
|
||||
"The following unexpected items were found.": "The following unexpected items were found.",
|
||||
"The interval must be a positive number of seconds.": "The interval must be a positive number of seconds.",
|
||||
"The interval must be a positive number of seconds.": "間隔は0秒以下にはできません。",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.",
|
||||
"The maximum age must be a number and cannot be blank.": "最大保存日数には数値を指定してください。空欄にはできません。",
|
||||
"The maximum time to keep a version (in days, set to 0 to keep versions forever).": "古いバージョンを保持する最大日数 (0で無期限)",
|
||||
@@ -368,7 +372,7 @@
|
||||
"The path cannot be blank.": "パスを入力してください。",
|
||||
"The rate limit must be a non-negative number (0: no limit)": "帯域制限値は0以上で指定して下さい。 (0で無制限)",
|
||||
"The rescan interval must be a non-negative number of seconds.": "再スキャン間隔は0秒以上で指定してください。",
|
||||
"There are no devices to share this folder with.": "There are no devices to share this folder with.",
|
||||
"There are no devices to share this folder with.": "どのデバイスともフォルダーを共有していません。",
|
||||
"There are no folders to share with this device.": "There are no folders to share with this device.",
|
||||
"They are retried automatically and will be synced when the error is resolved.": "エラーが解決すると、自動的に再試行され同期されます。",
|
||||
"This Device": "このデバイス",
|
||||
@@ -381,8 +385,8 @@
|
||||
"Trash Can File Versioning": "ゴミ箱によるバージョン管理",
|
||||
"Type": "タイプ",
|
||||
"UNIX Permissions": "UNIX パーミッション",
|
||||
"Unavailable": "Unavailable",
|
||||
"Unavailable/Disabled by administrator or maintainer": "Unavailable/Disabled by administrator or maintainer",
|
||||
"Unavailable": "利用不可",
|
||||
"Unavailable/Disabled by administrator or maintainer": "利用不可、または管理者によって無効化されています",
|
||||
"Undecided (will prompt)": "未決定(再確認する)",
|
||||
"Unexpected Items": "Unexpected Items",
|
||||
"Unexpected items have been found in this folder.": "Unexpected items have been found in this folder.",
|
||||
@@ -415,7 +419,7 @@
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "警告: 入力されたパスは、設定済みのフォルダー「{{otherFolderLabel}}」 ({{otherFolder}}) の親ディレクトリです。",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolder%}\".": "警告: 入力されたパスは、設定済みのフォルダー「{{otherFolder}}」のサブディレクトリです。",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "警告: 入力されたパスは、設定済みのフォルダー「{{otherFolderLabel}}」 ({{otherFolder}}) のサブディレクトリです。",
|
||||
"Warning: If you are using an external watcher like {%syncthingInotify%}, you should make sure it is deactivated.": "Warning: If you are using an external watcher like {{syncthingInotify}}, you should make sure it is deactivated.",
|
||||
"Warning: If you are using an external watcher like {%syncthingInotify%}, you should make sure it is deactivated.": "注意: {{syncthingInotify}} などの外部の監視ソフトは必ず無効にしてください。",
|
||||
"Watch for Changes": "変更の監視",
|
||||
"Watching for Changes": "変更の監視",
|
||||
"Watching for changes discovers most changes without periodic scanning.": "変更の監視は、定期スキャンを行わずにほとんどの変更を検出できます。",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "詳細なマニュアル",
|
||||
"items": "項目",
|
||||
"seconds": "seconds",
|
||||
"theme-name-black": "ブラック",
|
||||
"theme-name-dark": "ダーク",
|
||||
"theme-name-default": "デフォルト",
|
||||
"theme-name-light": "ライト",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} がフォルダー \"{{folder}}\" を共有するよう求めています。",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} がフォルダー「{{folderlabel}}」 ({{folder}}) を共有するよう求めています。",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"A device with that ID is already added.": "이 기기 ID는 이미 존재합니다.",
|
||||
"A negative number of days doesn't make sense.": "음수로는 지정할 수 없습니다.",
|
||||
"A new major version may not be compatible with previous versions.": "새로운 주요 버전은 이전 버전과 호환되지 않을 수 있습니다.",
|
||||
"A device with that ID is already added.": "이 ID 번호를 가진 기기가 이미 추가되어 있습니다.",
|
||||
"A negative number of days doesn't make sense.": "일수를 음수로 입력하는 것은 말이 되지 않습니다.",
|
||||
"A new major version may not be compatible with previous versions.": "새로운 주요 버전이 이전 버전과 호환되지 않을 수 있습니다.",
|
||||
"API Key": "API 키",
|
||||
"About": "정보",
|
||||
"Action": "동작",
|
||||
@@ -10,62 +10,64 @@
|
||||
"Add Device": "기기 추가",
|
||||
"Add Folder": "폴더 추가",
|
||||
"Add Remote Device": "다른 기기 추가",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "상호 공유 폴더에 대해 유도자의 기기를 내 기기 목록에 추가합니다.",
|
||||
"Add new folder?": "새로운 폴더를 추가하시겠습니까?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "추가적으로 전체 탐색 간격이 늘어납니다 (시간이 60, 즉 기본값 인 1 시간). 아니요를 선택한 후에 모든 폴더에 대해 직접 설정도 가능합니다.",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "상호 공유 폴더에 대해 중계자의 기기가 현재 기기 목록에 추가됩니다.",
|
||||
"Add ignore patterns": "무시 양식 추가",
|
||||
"Add new folder?": "새 폴더를 추가하시겠습니까?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "또한 완전 재탐색 간격도 확장됩니다(곱하기 60, 즉 새 기본값인 1시간으로). 폴더별로 나중에 직접 설정하려면 아니요를 선택하십시오.",
|
||||
"Address": "주소",
|
||||
"Addresses": "주소",
|
||||
"Advanced": "고급",
|
||||
"Advanced Configuration": "고급 설정",
|
||||
"All Data": "전체 데이터",
|
||||
"All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.": "All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.",
|
||||
"Allow Anonymous Usage Reporting?": "익명 사용 보고서를 보내시겠습니까?",
|
||||
"Allowed Networks": "허가된 네트워크",
|
||||
"All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.": "송신하는 데이터 모두를 비밀번호 없이 읽을 수 없도록 이 기기와 공유한 모든 폴더를 비밀번호로 보호해야 합니다.",
|
||||
"Allow Anonymous Usage Reporting?": "익명 사용 보고를 허용하시겠습니까?",
|
||||
"Allowed Networks": "허가된 망",
|
||||
"Alphabetic": "가나다순",
|
||||
"Altered by ignoring deletes.": "삭제 항목 무시로 변경됨.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "외부 명령이 파일 버전을 관리합니다. 공유 폴더에서 파일을 삭제해야 합니다. 응용 프로그램의 경로에 공백이 있으면 따옴표로 묶어야 합니다.",
|
||||
"Anonymous Usage Reporting": "익명 사용 보고서",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "익명 사용 보고서의 형식이 변경되었습니다. 새 형식으로 이동하시겠습니까?",
|
||||
"Anonymous Usage Reporting": "익명 사용 보고",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "익명 사용 보고의 형식이 변경되었습니다. 새 형식으로 설정을 변경하시겠습니까?",
|
||||
"Are you sure you want to continue?": "계속하시겠습니까?",
|
||||
"Are you sure you want to override all remote changes?": "다른 기기의 모든 변경 항목을 덮어쓰시겠습니까?",
|
||||
"Are you sure you want to permanently delete all these files?": "이 모든 파일을 영구 삭제하시겠습니까?",
|
||||
"Are you sure you want to override all remote changes?": "다른 기기의 변경 항목 모두를 덮어쓰시겠습니까?",
|
||||
"Are you sure you want to permanently delete all these files?": "이 파일 모두를 영구 삭제하시겠습니까?",
|
||||
"Are you sure you want to remove device {%name%}?": "{{name}} 기기를 제거하시겠습니까?",
|
||||
"Are you sure you want to remove folder {%label%}?": "{{label}} 폴더를 제거하시겠습니까?",
|
||||
"Are you sure you want to restore {%count%} files?": "{{count}} 개의 파일을 복원하시겠습니까?",
|
||||
"Are you sure you want to revert all local changes?": "이 기기의 모든 변경 항목을 되돌리시겠습니까?",
|
||||
"Are you sure you want to restore {%count%} files?": "{{count}} 개의 파일을 복구하시겠습니까?",
|
||||
"Are you sure you want to revert all local changes?": "현재 기기의 변경 항목 모두를 되돌리시겠습니까?",
|
||||
"Are you sure you want to upgrade?": "업데이트를 하시겠습니까?",
|
||||
"Auto Accept": "자동 수락",
|
||||
"Automatic Crash Reporting": "자동 충돌 보고서",
|
||||
"Automatic upgrade now offers the choice between stable releases and release candidates.": "자동 업데이트가 안정 버전과 출시 후보 중 선택할 수 있게 바뀌었습니다.",
|
||||
"Automatic Crash Reporting": "자동 충돌 보고",
|
||||
"Automatic upgrade now offers the choice between stable releases and release candidates.": "자동 업데이트가 안정 버전과 출시 후보 중 선택할 수 있게 변경되었습니다.",
|
||||
"Automatic upgrades": "자동 업데이트",
|
||||
"Automatic upgrades are always enabled for candidate releases.": "출시 후보는 자동 업데이트가 항상 활성화되어 있습니다.",
|
||||
"Automatically create or share folders that this device advertises at the default path.": "이 기기가 기본 경로에서 알리는 폴더를 자동으로 만들거나 공유합니다.",
|
||||
"Available debug logging facilities:": "사용 가능한 디버그 로깅 기능:",
|
||||
"Automatically create or share folders that this device advertises at the default path.": "이 기기가 통보하는 폴더들을 기본 경로에서 자동으로 생성 또는 공유합니다.",
|
||||
"Available debug logging facilities:": "사용 가능한 디버그 기록 기능:",
|
||||
"Be careful!": "주의하십시오!",
|
||||
"Bugs": "버그",
|
||||
"Cancel": "취소",
|
||||
"Changelog": "바뀐 점",
|
||||
"Clean out after": "삭제 후",
|
||||
"Cleaning Versions": "버전 정리 중",
|
||||
"Changelog": "변경 기록",
|
||||
"Clean out after": "보관 기간",
|
||||
"Cleaning Versions": "버전 정리",
|
||||
"Cleanup Interval": "정리 간격",
|
||||
"Click to see discovery failures": "탐지 실패 보기",
|
||||
"Click to see full identification string and QR code.": "기기 식별자 및 QR 코드 보기",
|
||||
"Click to see full identification string and QR code.": "기기 식별자 전체 및 QR 코드 보기",
|
||||
"Close": "닫기",
|
||||
"Command": "명령",
|
||||
"Comment, when used at the start of a line": "명령행에서 시작을 할수 있어요.",
|
||||
"Comment, when used at the start of a line": "주석(줄 앞에 사용할 때)",
|
||||
"Compression": "압축",
|
||||
"Configured": "설정됨",
|
||||
"Connected (Unused)": "연결됨 (미사용)",
|
||||
"Connection Error": "연결 오류",
|
||||
"Connection Type": "연결 유형",
|
||||
"Connections": "연결",
|
||||
"Continuously watching for changes is now available within Syncthing. This will detect changes on disk and issue a scan on only the modified paths. The benefits are that changes are propagated quicker and that less full scans are required.": "Syncthing는 변경 사항을 지속적으로 감지 할 수 있습니다. 이렇게 하면 디스크의 변경 사항을 감지하고 수정 된 경로에서만 검사를 실행합니다. 이점은 변경 사항이 더 빠르게 전파되고 전체 탐색 횟수가 줄어듭니다.",
|
||||
"Continuously watching for changes is now available within Syncthing. This will detect changes on disk and issue a scan on only the modified paths. The benefits are that changes are propagated quicker and that less full scans are required.": "지속적 변경 항목 감시 기능이 Syncthing에 추가되었습니다. 저장장치에서 변경 항목이 감시되면 변경된 경로에서만 탐색이 실시됩니다. 변경 항목이 더 빠르게 전파되며 완전 탐색 횟수가 줄어드는 이점이 있습니다.",
|
||||
"Copied from elsewhere": "다른 곳에서 복사됨",
|
||||
"Copied from original": "원본에서 복사됨",
|
||||
"Copyright © 2014-2019 the following Contributors:": "Copyright © 2014-2019 the following Contributors:",
|
||||
"Creating ignore patterns, overwriting an existing file at {%path%}.": "무시 패턴 생성 중, {{path}}에 존재하는 파일을 덮어씁니다.",
|
||||
"Copyright © 2014-2019 the following Contributors:": "Copyright © 2014-2019 하위 기여자들:",
|
||||
"Creating ignore patterns, overwriting an existing file at {%path%}.": "무시 양식 생성 중; {{path}} 경로의 기존 파일을 덮어씁니다.",
|
||||
"Currently Shared With Devices": "현재 공유된 기기",
|
||||
"Danger!": "위험!",
|
||||
"Debugging Facilities": "디버깅 기능",
|
||||
"Debugging Facilities": "디버그 기능",
|
||||
"Default Configuration": "기본 설정",
|
||||
"Default Device": "기본 기기",
|
||||
"Default Folder": "기본 폴더",
|
||||
@@ -75,151 +77,152 @@
|
||||
"Delete Unexpected Items": "예기치 못한 항목 삭제",
|
||||
"Deleted": "삭제됨",
|
||||
"Deselect All": "모두 선택 해제",
|
||||
"Deselect devices to stop sharing this folder with.": "Deselect devices to stop sharing this folder with.",
|
||||
"Deselect folders to stop sharing with this device.": "Deselect folders to stop sharing with this device.",
|
||||
"Deselect devices to stop sharing this folder with.": "이 폴더를 공유하지 않을 기기를 선택 해제하십시오.",
|
||||
"Deselect folders to stop sharing with this device.": "현재 기기와 공유하지 않을 폴더를 선택 해제하십시오.",
|
||||
"Device": "기기",
|
||||
"Device \"{%name%}\" ({%device%} at {%address%}) wants to connect. Add new device?": "다른 기기가 \"{{name}}\" ({{device}} {{address}})에서 접속을 요청했습니다. 새 기기를 추가하시겠습니까?",
|
||||
"Device ID": "기기 ID",
|
||||
"Device \"{%name%}\" ({%device%} at {%address%}) wants to connect. Add new device?": "\"{{name}}\" ({{device}} 기기가 {{address}}) 주소에서 접속을 요청했습니다. 새 기기를 추가하시겠습니까?",
|
||||
"Device ID": "기기 ID 번호",
|
||||
"Device Identification": "기기 식별자",
|
||||
"Device Name": "기기명",
|
||||
"Device is untrusted, enter encryption password": "신뢰하지 않는 기기입니다. 암호화 비밀번호를 입력하십시오.",
|
||||
"Device is untrusted, enter encryption password": "신뢰하지 않는 기기입니다; 암호화 비밀번호를 입력하십시오.",
|
||||
"Device rate limits": "기기 속도 제한",
|
||||
"Device that last modified the item": "항목을 마지막으로 수정한 기기",
|
||||
"Device that last modified the item": "항목 최근 수정 기기",
|
||||
"Devices": "기기",
|
||||
"Disable Crash Reporting": "충돌 보고서 해제",
|
||||
"Disable Crash Reporting": "충돌 보고 비활성화",
|
||||
"Disabled": "비활성화됨",
|
||||
"Disabled periodic scanning and disabled watching for changes": "주기적 탐색을 사용 중지하고 변경 사항을 감시하지 않음",
|
||||
"Disabled periodic scanning and enabled watching for changes": "주기적 탐색을 사용 중지하고 변경 사항 감시 하기",
|
||||
"Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:": "Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).",
|
||||
"Discard": "무시",
|
||||
"Disabled periodic scanning and disabled watching for changes": "주기적 탐색 비활성화됨 및 변경 항목 감시 비활성화됨",
|
||||
"Disabled periodic scanning and enabled watching for changes": "주기적 탐색 비활성화됨 및 변경 항목 감시 활성화됨",
|
||||
"Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:": "주기적 탐색 비활성화됨 및 변경 항목 감시 설정에 실패함; 1분마다 재시도 중:",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "파일의 권한을 비교 및 동기화를 비활성화합니다. FAT, exFAT, Synology, Android 등 파일 권한이 존재하지 않거나 비표준 파일 권한을 사용하는 체제에서 유용합니다.",
|
||||
"Discard": "일시적 무시",
|
||||
"Disconnected": "연결 끊김",
|
||||
"Disconnected (Unused)": "연결 끊김 (미사용)",
|
||||
"Discovered": "탐지됨",
|
||||
"Discovery": "탐지",
|
||||
"Discovery Failures": "탐지 실패",
|
||||
"Discovery Status": "탐지 현황",
|
||||
"Dismiss": "무시",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Do not add it to the ignore list, so this notification may recur.",
|
||||
"Do not restore": "복구 하지 않기",
|
||||
"Do not restore all": "모두 복구 하지 않기",
|
||||
"Do you want to enable watching for changes for all your folders?": "변경 사항 감시를 당신의 모든 폴더에서 활성화 하는걸 원하시나요?",
|
||||
"Dismiss": "나중에",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "무시 항목에 추가되지 않으니 이 알림이 다시 표시될 수 있습니다.",
|
||||
"Do not restore": "복구하지 않기",
|
||||
"Do not restore all": "모두 복구하지 않기",
|
||||
"Do you want to enable watching for changes for all your folders?": "변경 항목 감시를 모든 폴더에서 활성화하시겠습니까?",
|
||||
"Documentation": "사용 설명서",
|
||||
"Download Rate": "수신 속도",
|
||||
"Downloaded": "수신됨",
|
||||
"Downloading": "수신 중",
|
||||
"Downloading": "수신",
|
||||
"Edit": "편집",
|
||||
"Edit Device": "기기 편집",
|
||||
"Edit Device Defaults": "기기 기본 설정 편집",
|
||||
"Edit Folder": "폴더 편집",
|
||||
"Edit Folder Defaults": "폴더 기본 설정 편집",
|
||||
"Editing {%path%}.": "{{path}} 편집 중",
|
||||
"Enable Crash Reporting": "충돌 보고서 활성화",
|
||||
"Enable NAT traversal": "NAT traversal 활성화",
|
||||
"Enable Relaying": "Relaying 활성화",
|
||||
"Editing {%path%}.": "{{path}} 경로 편집 중",
|
||||
"Enable Crash Reporting": "충돌 보고 활성화",
|
||||
"Enable NAT traversal": "NAT 통과 활성화",
|
||||
"Enable Relaying": "중계 활성화",
|
||||
"Enabled": "활성화됨",
|
||||
"Enter a non-negative number (e.g., \"2.35\") and select a unit. Percentages are as part of the total disk size.": "음수가 아닌 수 (예, \"2.35\") 를 입력 후 단위를 선택하세요. 백분율은 총 디스크 크기의 일부입니다.",
|
||||
"Enter a non-privileged port number (1024 - 65535).": "비 특권 포트 번호를 입력하세요 (1024 - 65535).",
|
||||
"Enter comma separated (\"tcp://ip:port\", \"tcp://host:port\") addresses or \"dynamic\" to perform automatic discovery of the address.": "Enter comma separated (\"tcp://ip:port\", \"tcp://host:port\") addresses or \"dynamic\" to perform automatic discovery of the address.",
|
||||
"Enter ignore patterns, one per line.": "무시할 패턴을 한 줄에 하나씩 입력하세요.",
|
||||
"Enter up to three octal digits.": "최대 3자리의 8진수를 입력하세요.",
|
||||
"Enter a non-negative number (e.g., \"2.35\") and select a unit. Percentages are as part of the total disk size.": "양수(예: \"2.35\")를 입력한 후에 단위를 선택하십시오. 백분율은 저장 장치의 총용량에서 계산됩니다.",
|
||||
"Enter a non-privileged port number (1024 - 65535).": "비특권 포트 번호(1024~65535)를 입력하십시오.",
|
||||
"Enter comma separated (\"tcp://ip:port\", \"tcp://host:port\") addresses or \"dynamic\" to perform automatic discovery of the address.": "쉼표로 나눈 주소(\"tcp://ip:port\", \"tcp://host:port\") 또는 주소를 자동 탐지해주는 \"dynamic\"을 입력하십시오.",
|
||||
"Enter ignore patterns, one per line.": "무시할 양식을 한 줄에 하나씩 입력하십시오.",
|
||||
"Enter up to three octal digits.": "최대 3자리의 8진수를 입력하십시오.",
|
||||
"Error": "오류",
|
||||
"External File Versioning": "외부 파일 버전 관리",
|
||||
"Failed Items": "실패 항목",
|
||||
"Failed to load ignore patterns.": "Failed to load ignore patterns.",
|
||||
"Failed to load ignore patterns.": "무시 양식을 불러오기에 실패했습니다.",
|
||||
"Failed to setup, retrying": "설정 적용 실패, 재시도 중",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "IPv6 네트워크에 연결되지 않은 경우 IPv6 서버에 연결 할 수 없습니다.",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "IPv6 연결이 없을 때는 IPv6 서버에 접속하지 못하는 것이 정상입니다.",
|
||||
"File Pull Order": "파일 수신 순서",
|
||||
"File Versioning": "파일 버전 관리",
|
||||
"Files are moved to .stversions directory when replaced or deleted by Syncthing.": "파일이 Syncthing에 의해서 교체되거나 삭제되면 .stversions 폴더로 이동됩니다.",
|
||||
"Files are moved to date stamped versions in a .stversions directory when replaced or deleted by Syncthing.": "파일이 Syncthing에 의해서 교체되거나 삭제되면 .stversions 폴더에 있는 날짜가 바뀐 버전으로 이동됩니다.",
|
||||
"Files are protected from changes made on other devices, but changes made on this device will be sent to the rest of the cluster.": "다른 기기가 파일을 편집할 수 없으며 반드시 이 장치의 내용을 기준으로 동기화합니다.",
|
||||
"Files are synchronized from the cluster, but any changes made locally will not be sent to other devices.": "Files are synchronized from the cluster, but any changes made locally will not be sent to other devices.",
|
||||
"Files are moved to .stversions directory when replaced or deleted by Syncthing.": "Syncthing에 의해 교체 또는 삭제된 파일은 .stversions 폴더로 이동됩니다.",
|
||||
"Files are moved to date stamped versions in a .stversions directory when replaced or deleted by Syncthing.": "Syncthing에 의해 교체 또는 삭제된 파일은 날짜가 찍힌 채 .stversions 폴더로 이동됩니다.",
|
||||
"Files are protected from changes made on other devices, but changes made on this device will be sent to the rest of the cluster.": "파일이 다른 기기에서 변경된 내용으로부터 보호되어 있지만 현재 기기에서 변경된 항목은 다른 기기로 전송됩니다.",
|
||||
"Files are synchronized from the cluster, but any changes made locally will not be sent to other devices.": "파일이 다른 기기로부터 동기화되지만 현재 기기에서 변경된 항목은 다른 기기로 전송되지 않습니다.",
|
||||
"Filesystem Watcher Errors": "파일 시스템 감시 오류",
|
||||
"Filter by date": "날짜별 정렬",
|
||||
"Filter by name": "이름별 정렬",
|
||||
"Filter by date": "날짜별 보기",
|
||||
"Filter by name": "이름별 보기",
|
||||
"Folder": "폴더",
|
||||
"Folder ID": "폴더 ID",
|
||||
"Folder ID": "폴더 ID 번호",
|
||||
"Folder Label": "폴더명",
|
||||
"Folder Path": "폴더 경로",
|
||||
"Folder Type": "폴더 유형",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "Folder type \"{{receiveEncrypted}}\" can only be set when adding a new folder.",
|
||||
"Folder type \"{%receiveEncrypted%}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.": "Folder type \"{{receiveEncrypted}}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "\"{{receiveEncrypted}}\" 폴더 유형은 새 폴더를 추가할 때만 설정할 수 있습니다.",
|
||||
"Folder type \"{%receiveEncrypted%}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.": "\"{{receiveEncrypted}}\" 폴더 유형은 폴더를 추가한 후에 변경할 수 없습니다. 폴더를 먼저 삭제하고, 저장 장치에 있는 데이터를 삭제 또는 해독한 다음에 폴더를 다시 추가하십시오.",
|
||||
"Folders": "폴더",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.",
|
||||
"Full Rescan Interval (s)": "전체 재탐색 간격 (초)",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "다음 폴더에서 변경 항목 감시를 실행하는 과정에서 오류가 발생했습니다. 1분마다 재시도할 예정이므로 오류는 곧 사라질 수 있습니다. 만일 사라지지 않으면 문제의 원인을 해결 시도하거나 스스로 해결하지 못할 경우에는 도움을 요청하십시오.",
|
||||
"Full Rescan Interval (s)": "완전 재탐색 간격(초)",
|
||||
"GUI": "GUI",
|
||||
"GUI Authentication Password": "GUI 인증 비밀번호",
|
||||
"GUI Authentication User": "GUI 인증 사용자",
|
||||
"GUI Authentication: Set User and Password": "GUI 인증: 사용자와 비밀번호를 설정하십시오",
|
||||
"GUI Listen Address": "GUI 수신 주소",
|
||||
"GUI Authentication: Set User and Password": "GUI 인증: 사용자 이름과 비밀번호를 설정하십시오",
|
||||
"GUI Listen Address": "GUI 대기 주소",
|
||||
"GUI Theme": "GUI 테마",
|
||||
"General": "일반",
|
||||
"Generate": "생성",
|
||||
"Global Discovery": "글로벌 탐지",
|
||||
"Global Discovery Servers": "글로벌 탐지 서버",
|
||||
"Global State": "글로벌 서버 상태",
|
||||
"Global State": "전체 기기 상태",
|
||||
"Help": "도움말",
|
||||
"Home page": "홈페이지",
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.",
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "다만, 현재 설정에 의하면 이 기능을 활성화하고 싶지 않을 확률이 높습니다. 따라서 자동 충돌 보고를 비활성화시켰습니다.",
|
||||
"Identification": "식별자",
|
||||
"If untrusted, enter encryption password": "신뢰하지 않는 경우 암호화 비밀번호를 입력하십시오.",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.",
|
||||
"If untrusted, enter encryption password": "신뢰하지 않으면 암호화 비밀번호를 입력하십시오.",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "이 컴퓨터의 다른 사용자로부터 Syncthing과 이를 통한 파일 접속을 막으려면 인증을 설정하는 것이 좋습니다.",
|
||||
"Ignore": "무시",
|
||||
"Ignore Patterns": "무시 패턴",
|
||||
"Ignore Patterns": "무시 양식",
|
||||
"Ignore Permissions": "권한 무시",
|
||||
"Ignored Devices": "무시된 기기",
|
||||
"Ignored Folders": "무시된 폴더",
|
||||
"Ignored at": "Ignored at",
|
||||
"Incoming Rate Limit (KiB/s)": "수신 속도 제한 (KiB/s)",
|
||||
"Incorrect configuration may damage your folder contents and render Syncthing inoperable.": "잘못된 설정은 폴더의 컨텐츠를 훼손하거나 Syncthing의 오작동을 일으킬 수 있습니다.",
|
||||
"Introduced By": "Introduced By",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "무시 양식은 폴더가 생성된 후에만 추가할 수 있습니다. 체크할 경우, 폴더를 저장할 다음에 무시 양식을 입력하는 새 창으로 이동합니다.",
|
||||
"Ignored Devices": "무시한 기기",
|
||||
"Ignored Folders": "무시한 폴더",
|
||||
"Ignored at": "무시된 기기",
|
||||
"Incoming Rate Limit (KiB/s)": "수신 속도 제한(KiB/s)",
|
||||
"Incorrect configuration may damage your folder contents and render Syncthing inoperable.": "잘못된 설정은 폴더의 내용을 훼손하거나 Syncthing을 작동하지 못하게 할 수 있습니다.",
|
||||
"Introduced By": "유도한 기기",
|
||||
"Introducer": "유도자",
|
||||
"Inversion of the given condition (i.e. do not exclude)": "주어진 조건의 반대 (전혀 배제하지 않음)",
|
||||
"Keep Versions": "버전 보관",
|
||||
"Inversion of the given condition (i.e. do not exclude)": "특정한 조건의 반대(즉, 배제하지 않음)",
|
||||
"Keep Versions": "버전 수",
|
||||
"LDAP": "LDAP",
|
||||
"Largest First": "큰 파일 순",
|
||||
"Last Scan": "마지막 탐색",
|
||||
"Last seen": "마지막 접속",
|
||||
"Last Scan": "최근 탐색",
|
||||
"Last seen": "최근 접속",
|
||||
"Latest Change": "최신 변경 항목",
|
||||
"Learn more": "더 알아보기",
|
||||
"Limit": "제한",
|
||||
"Listener Failures": "수신자 실패",
|
||||
"Listener Status": "수신자 현황",
|
||||
"Listeners": "수신자",
|
||||
"Listener Failures": "대기자 실패",
|
||||
"Listener Status": "대기자 현황",
|
||||
"Listeners": "대기자",
|
||||
"Loading data...": "데이터를 불러오는 중...",
|
||||
"Loading...": "불러오는 중...",
|
||||
"Local Additions": "로컬 변경 항목",
|
||||
"Local Additions": "현재 기기 추가 항목",
|
||||
"Local Discovery": "로컬 탐지",
|
||||
"Local State": "로컬 상태",
|
||||
"Local State (Total)": "로컬 상태 (합계)",
|
||||
"Locally Changed Items": "로컬 변경 항목",
|
||||
"Local State": "현재 기기 상태",
|
||||
"Local State (Total)": "현재 기기 상태(합계)",
|
||||
"Locally Changed Items": "현재 기기 변경 항목",
|
||||
"Log": "기록",
|
||||
"Log tailing paused. Scroll to the bottom to continue.": "Log tailing paused. Scroll to the bottom to continue.",
|
||||
"Log tailing paused. Scroll to the bottom to continue.": "기록의 자동 새로고침이 비활성화되었습니다. 재개하려면 창 밑으로 내려가십시오.",
|
||||
"Logs": "기록",
|
||||
"Major Upgrade": "주요 업데이트",
|
||||
"Mass actions": "Mass actions",
|
||||
"Maximum Age": "최대 보존 기간",
|
||||
"Mass actions": "다중 동작",
|
||||
"Maximum Age": "최대 보관 기간",
|
||||
"Metadata Only": "메타데이터만",
|
||||
"Minimum Free Disk Space": "최소 여유 디스크 용량",
|
||||
"Mod. Device": "수정된 기기",
|
||||
"Mod. Time": "수정된 시간",
|
||||
"Minimum Free Disk Space": "저장 장치 최소 여유 공간",
|
||||
"Mod. Device": "수정 기기",
|
||||
"Mod. Time": "수정 시간",
|
||||
"Move to top of queue": "대기열 상단으로 이동",
|
||||
"Multi level wildcard (matches multiple directory levels)": "다중 레벨 와일드 카드 (여러 단계의 디렉토리와 일치하는 경우)",
|
||||
"Multi level wildcard (matches multiple directory levels)": "다중 수준 와일드카드(여러 단계의 디렉토리에서 적용됨)",
|
||||
"Never": "사용 안 함",
|
||||
"New Device": "새 기기",
|
||||
"New Folder": "새 폴더",
|
||||
"Newest First": "최신 파일 순",
|
||||
"No": "아니요",
|
||||
"No File Versioning": "파일 버전 관리 안 함",
|
||||
"No files will be deleted as a result of this operation.": "No files will be deleted as a result of this operation.",
|
||||
"No upgrades": "업데이트 안함",
|
||||
"No files will be deleted as a result of this operation.": "이 작업으로 인해서는 아무 파일도 삭제되지 않습니다.",
|
||||
"No upgrades": "업데이트 안 함",
|
||||
"Not shared": "공유되지 않음",
|
||||
"Notice": "공지",
|
||||
"OK": "확인",
|
||||
"Off": "꺼짐",
|
||||
"Oldest First": "오래된 파일 순",
|
||||
"Optional descriptive label for the folder. Can be different on each device.": "폴더 라벨은 편의를 위한 것입니다. 기기마다 다르게 설정할 수 있습니다.",
|
||||
"Optional descriptive label for the folder. Can be different on each device.": "폴더를 묘사하는 선택적 이름입니다. 기기마다 달리 설정해도 됩니다.",
|
||||
"Options": "옵션",
|
||||
"Out of Sync": "동기화 실패",
|
||||
"Out of Sync Items": "동기화 실패 항목",
|
||||
@@ -227,44 +230,44 @@
|
||||
"Override": "덮어쓰기",
|
||||
"Override Changes": "변경 항목 덮어쓰기",
|
||||
"Path": "경로",
|
||||
"Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "로컬 컴퓨터에 있는 폴더의 경로를 지정합니다. 존재하지 않는 폴더일 경우 자동으로 생성됩니다. 물결 기호 (~)는 아래와 같은 폴더를 나타냅니다.",
|
||||
"Path where new auto accepted folders will be created, as well as the default suggested path when adding new folders via the UI. Tilde character (~) expands to {%tilde%}.": "Path where new auto accepted folders will be created, as well as the default suggested path when adding new folders via the UI. Tilde character (~) expands to {{tilde}}.",
|
||||
"Path where versions should be stored (leave empty for the default .stversions directory in the shared folder).": "버전을 보관할 경로 (비워둘 시 공유된 폴더 안의 기본값 .stversions 폴더로 지정됨)",
|
||||
"Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "현재 기기에 있는 폴더의 경로입니다. 존재하지 않을 경우에는 자동으로 생성됩니다. 물결표(~)는 다음 폴더를 나타냅니다.",
|
||||
"Path where new auto accepted folders will be created, as well as the default suggested path when adding new folders via the UI. Tilde character (~) expands to {%tilde%}.": "자동 수락한 폴더가 생성되는 경로이며, UI를 통해 폴더를 추가할 때 자동 완성되는 기본값 경로입니다. 물결표(~)는 {{tilde}}로 확장됩니다.",
|
||||
"Path where versions should be stored (leave empty for the default .stversions directory in the shared folder).": "버전을 보관할 경로입니다. 공유된 폴더 안의 기본값 .stversions 폴더를 사용하려면 비워 두십시오.",
|
||||
"Pause": "일시 중지",
|
||||
"Pause All": "모두 일시 중지",
|
||||
"Paused": "일시 중지됨",
|
||||
"Paused (Unused)": "일시 중지됨 (미사용)",
|
||||
"Pending changes": "Pending changes",
|
||||
"Periodic scanning at given interval and disabled watching for changes": "Periodic scanning at given interval and disabled watching for changes",
|
||||
"Periodic scanning at given interval and enabled watching for changes": "Periodic scanning at given interval and enabled watching for changes",
|
||||
"Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:": "Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Permanently add it to the ignore list, suppressing further notifications.",
|
||||
"Paused (Unused)": "일시 중지됨(미사용)",
|
||||
"Pending changes": "대기 중 변경 항목",
|
||||
"Periodic scanning at given interval and disabled watching for changes": "설정한 간격으로 주기적 탐색 활성화됨 및 변경 항목 감시 비활성화됨",
|
||||
"Periodic scanning at given interval and enabled watching for changes": "설정한 간격으로 주기적 탐색 활성화됨 및 변경 항목 감시 활성화됨",
|
||||
"Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:": "설정한 간격으로 주기적 탐색 활성화됨 및 변경 항목 감시 설정에 실패함; 1분마다 재시도 중:",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "무시 목록에 영구 추가되어 앞으로의 알림을 방지합니다.",
|
||||
"Permissions": "권한",
|
||||
"Please consult the release notes before performing a major upgrade.": "메이저 업데이트를 하기 전에 먼저 릴리즈 노트를 살펴보세요.",
|
||||
"Please set a GUI Authentication User and Password in the Settings dialog.": "설정에서 GUI 인증용 User와 암호를 입력해주세요.",
|
||||
"Please consult the release notes before performing a major upgrade.": "주요 업데이트를 적용하기 전에는 출시 버전의 기록 정보를 확인하시기 바랍니다.",
|
||||
"Please set a GUI Authentication User and Password in the Settings dialog.": "설정 창에서 GUI 인증 사용자 이름과 비밀번호를 설정하십시오.",
|
||||
"Please wait": "기다려 주십시오",
|
||||
"Prefix indicating that the file can be deleted if preventing directory removal": "디렉토리 제거를 방지 할 경우 파일을 삭제할 수 있음을 나타내는 접두사",
|
||||
"Prefix indicating that the pattern should be matched without case sensitivity": "대소 문자를 구분하지 않고 패턴을 일치시켜야 함을 나타내는 접두사",
|
||||
"Preparing to Sync": "동기화 준비 중",
|
||||
"Prefix indicating that the file can be deleted if preventing directory removal": "디렉터리 제거를 방지하는 파일을 삭제할 수 있음을 나타내는 접두사",
|
||||
"Prefix indicating that the pattern should be matched without case sensitivity": "대소문자 구분 없이 양식을 적용함을 나타내는 접두사",
|
||||
"Preparing to Sync": "동기화 준비",
|
||||
"Preview": "미리 보기",
|
||||
"Preview Usage Report": "사용 보고서 미리 보기",
|
||||
"Quick guide to supported patterns": "지원하는 패턴에 대한 빠른 도움말",
|
||||
"Quick guide to supported patterns": "지원하는 양식에 대한 빠른 도움말",
|
||||
"Random": "무작위",
|
||||
"Receive Encrypted": "암호화 수신",
|
||||
"Receive Only": "수신 전용",
|
||||
"Received data is already encrypted": "수신된 데이터는 이미 암호화되어 있습니다",
|
||||
"Recent Changes": "최근 변경 항목",
|
||||
"Reduced by ignore patterns": "무시 패턴으로 축소",
|
||||
"Release Notes": "릴리즈 노트",
|
||||
"Release candidates contain the latest features and fixes. They are similar to the traditional bi-weekly Syncthing releases.": "출시 후보는 최신 기능과 버그 픽스를 포함 하고 있습니다. 이 버전은 예전 방식인 2주 주기 Syncthing 출시와 비슷합니다.",
|
||||
"Reduced by ignore patterns": "무시 양식으로 축소됨",
|
||||
"Release Notes": "출시 버전의 기록 정보",
|
||||
"Release candidates contain the latest features and fixes. They are similar to the traditional bi-weekly Syncthing releases.": "출시 후보는 최신 기능과 버그 수정을 포함하고 있습니다. 2주마다 출시되던 예전의 Syncthing 버전과 유사합니다.",
|
||||
"Remote Devices": "다른 기기",
|
||||
"Remote GUI": "원격 GUI",
|
||||
"Remove": "제거",
|
||||
"Remove Device": "기기 제거",
|
||||
"Remove Folder": "폴더 제거",
|
||||
"Required identifier for the folder. Must be the same on all cluster devices.": "폴더 식별자가 필요합니다. 모든 기기에서 동일해야 합니다.",
|
||||
"Required identifier for the folder. Must be the same on all cluster devices.": "필수로 필요한 폴더의 식별자입니다. 모든 기기에서 동일해야 합니다.",
|
||||
"Rescan": "재탐색",
|
||||
"Rescan All": "전체 재탐색",
|
||||
"Rescan All": "모두 재탐색",
|
||||
"Rescans": "재탐색",
|
||||
"Restart": "재시작",
|
||||
"Restart Needed": "재시작 필요",
|
||||
@@ -273,170 +276,175 @@
|
||||
"Restore Versions": "버전 복구",
|
||||
"Resume": "재개",
|
||||
"Resume All": "모두 재개",
|
||||
"Reused": "재사용",
|
||||
"Reused": "재사용됨",
|
||||
"Revert": "되돌리기",
|
||||
"Revert Local Changes": "본 기기의 변경 항목 되돌리기",
|
||||
"Revert Local Changes": "현재 기기 변경 항목 되돌리기",
|
||||
"Save": "저장",
|
||||
"Scan Time Remaining": "탐색 남은 시간",
|
||||
"Scanning": "탐색 중",
|
||||
"See external versioning help for supported templated command line parameters.": "지원되는 템플릿 명령 행 매개 변수에 대해서는 외부 버전 도움말을 참조하십시오.",
|
||||
"Scan Time Remaining": "남은 탐색 시간",
|
||||
"Scanning": "탐색",
|
||||
"See external versioning help for supported templated command line parameters.": "지원하는 견본 명령 매개 변수에 대해서는 외부 파일 버전 관리 도움말을 참조하십시오.",
|
||||
"Select All": "모두 선택",
|
||||
"Select a version": "버전을 선택하십시오.",
|
||||
"Select additional devices to share this folder with.": "이 폴더를 추가로 공유할 기기를 선택하십시오.",
|
||||
"Select additional folders to share with this device.": "이 기기와 추가로 공유할 폴더를 선택하십시오.",
|
||||
"Select latest version": "가장 최신 버전 선택하십시오.",
|
||||
"Select oldest version": "가장 오래된 버전 선택하십시오.",
|
||||
"Select latest version": "가장 최신 버전 선택",
|
||||
"Select oldest version": "가장 오랜 버전 선택",
|
||||
"Select the folders to share with this device.": "이 기기와 공유할 폴더를 선택하십시오.",
|
||||
"Send & Receive": "송신 & 수신",
|
||||
"Send & Receive": "송수신",
|
||||
"Send Only": "송신 전용",
|
||||
"Set Ignores on Added Folder": "추가된 폴더에 무시 양식을 설정하십시오",
|
||||
"Settings": "설정",
|
||||
"Share": "공유",
|
||||
"Share Folder": "폴더 공유",
|
||||
"Share Folders With Device": "폴더를 공유할 기기",
|
||||
"Share this folder?": "이 폴더를 공유하시겠습니까?",
|
||||
"Shared Folders": "공유 폴더",
|
||||
"Shared With": "~와 공유",
|
||||
"Shared Folders": "공유된 폴더",
|
||||
"Shared With": "공유된 기기",
|
||||
"Sharing": "공유",
|
||||
"Show ID": "기기 ID 보기",
|
||||
"Show ID": "기기 ID 번호 보기",
|
||||
"Show QR": "QR 코드 보기",
|
||||
"Show detailed discovery status": "탐지 현황 상세 보기",
|
||||
"Show detailed listener status": "수신자 현황 상세 보기",
|
||||
"Show diff with previous version": "이전 버전과 변경사항 보기",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "기기에 대한 아이디로 표시됩니다. 옵션에 얻은 기본 이름으로 다른 기기에 통보합니다.",
|
||||
"Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.": "아이디가 비어 있는 경우 기본 값으로 다른 기기에 업데이트됩니다.",
|
||||
"Show detailed listener status": "대기자 현황 상세 보기",
|
||||
"Show diff with previous version": "이전 버전과의 diff 보기",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "기기 ID 번호를 대신해 기기 목록에서 나타납니다. 다른 기기에 선택적 기본값 이름으로 통보됩니다.",
|
||||
"Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.": "기기 ID 번호를 대신해 기기 목록에서 나타납니다. 비워 둘 경우 다른 기기에서 통보한 이름으로 갱신됩니다.",
|
||||
"Shutdown": "종료",
|
||||
"Shutdown Complete": "종료 완료",
|
||||
"Simple File Versioning": "간단한 파일 버전 관리",
|
||||
"Single level wildcard (matches within a directory only)": "단일 레벨 와일드카드 (하나의 디렉토리만 일치하는 경우)",
|
||||
"Single level wildcard (matches within a directory only)": "단일 수준 와일드카드(하나의 디렉토리 내에서만 적용됨)",
|
||||
"Size": "크기",
|
||||
"Smallest First": "작은 파일 순",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "Some discovery methods could not be established for finding other devices or announcing this device:",
|
||||
"Some items could not be restored:": "몇몇 항목들은 복구할 수 없었습니다:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Some listening addresses could not be enabled to accept connections:",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "다른 기기 검색 또는 현재 기기 통보를 위한 탐지 방식 중 일부가 실행되지 못했습니다:",
|
||||
"Some items could not be restored:": "몇몇 항목은 복구할 수 없었습니다:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "접속을 수락해주는 대기 주소 중 일부가 활성화되지 못했습니다:",
|
||||
"Source Code": "소스 코드",
|
||||
"Stable releases and release candidates": "안정 버전과 출시 후보",
|
||||
"Stable releases are delayed by about two weeks. During this time they go through testing as release candidates.": "안정 버전은 약 2주 정도 지연되어 출시됩니다. 그 기간 동안 출시 후보에 대한 테스트를 거칩니다.",
|
||||
"Stable releases and release candidates": "안정 버전 및 출시 후보",
|
||||
"Stable releases are delayed by about two weeks. During this time they go through testing as release candidates.": "안정 버전은 약 2주 정도 지연되어 출시됩니다. 그 기간 동안 출시 후보로서 실험이 진행됩니다.",
|
||||
"Stable releases only": "안정 버전만",
|
||||
"Staggered File Versioning": "타임스탬프 기준 파일 버전 관리",
|
||||
"Staggered File Versioning": "시차제 파일 버전 관리",
|
||||
"Start Browser": "브라우저 열기",
|
||||
"Statistics": "통계",
|
||||
"Stopped": "중지됨",
|
||||
"Stores and syncs only encrypted data. Folders on all connected devices need to be set up with the same password or be of type \"{%receiveEncrypted%}\" too.": "Stores and syncs only encrypted data. Folders on all connected devices need to be set up with the same password or be of type \"{{receiveEncrypted}}\" too.",
|
||||
"Stores and syncs only encrypted data. Folders on all connected devices need to be set up with the same password or be of type \"{%receiveEncrypted%}\" too.": "암호화된 데이터만이 보관되어 동기화됩니다. 모든 공유된 기기의 폴더가 동일한 비밀번호를 설정하거나 동일한 \"{{receiveEncrypted}}\" 폴더 유형이어야 합니다.",
|
||||
"Support": "지원",
|
||||
"Support Bundle": "Support Bundle",
|
||||
"Sync Protocol Listen Addresses": "동기화 프로토콜 수신 주소",
|
||||
"Syncing": "동기화 중",
|
||||
"Support Bundle": "지원 묶음",
|
||||
"Sync Protocol Listen Addresses": "동기화 규약 대기 주소",
|
||||
"Syncing": "동기화",
|
||||
"Syncthing has been shut down.": "Syncthing이 종료되었습니다.",
|
||||
"Syncthing includes the following software or portions thereof:": "Syncthing은 다음과 같은 소프트웨어나 그 일부를 포함합니다:",
|
||||
"Syncthing is Free and Open Source Software licensed as MPL v2.0.": "Syncthing는 MPL v2.0 으로 라이센스 된 무료 및 오픈 소스 소프트웨어입니다.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing is listening on the following network addresses for connection attempts from other devices:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.",
|
||||
"Syncthing includes the following software or portions thereof:": "Syncthing은 다음과 같은 소프트웨어 또는 그 일부를 포함합니다:",
|
||||
"Syncthing is Free and Open Source Software licensed as MPL v2.0.": "Syncthing은 MPL v2.0으로 허가된 자유-오픈 소스 소프트웨어입니다.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing이 다른 기기로부터 들어오는 접속 시도를 다음 주소에서 대기 중입니다:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing이 다른 기기로부터 들어오는 접속 시도를 아무 주소에서도 대기하지 않습니다. 현재 기기에서 송신하는 접속만이 연결에 성공할 수 있습니다.",
|
||||
"Syncthing is restarting.": "Syncthing이 재시작 중입니다.",
|
||||
"Syncthing is upgrading.": "Syncthing이 업데이트 중입니다.",
|
||||
"Syncthing now supports automatically reporting crashes to the developers. This feature is enabled by default.": "Syncthing는 이제 개발자에게 충돌보고를 자동으로 지원합니다. 이 기능은 기본적으로 활성화 되어 있습니다.",
|
||||
"Syncthing seems to be down, or there is a problem with your Internet connection. Retrying…": "Syncthing이 중지되었거나 인터넷 연결에 문제가 있는 것 같습니다. 재시도 중입니다...",
|
||||
"Syncthing seems to be experiencing a problem processing your request. Please refresh the page or restart Syncthing if the problem persists.": "Syncthing에서 요청을 처리하는 중에 문제가 발생했습니다. 계속 문제가 발생하면 페이지를 다시 불러오거나 Syncthing을 재시작해 보세요.",
|
||||
"Take me back": "취소",
|
||||
"The GUI address is overridden by startup options. Changes here will not take effect while the override is in place.": "The GUI address is overridden by startup options. Changes here will not take effect while the override is in place.",
|
||||
"Syncthing now supports automatically reporting crashes to the developers. This feature is enabled by default.": "개발자에게 충돌을 자동으로 보고하는 기능이 Syncthing에 추가되었습니다. 이 기능은 기본값으로 활성화되어 있습니다.",
|
||||
"Syncthing seems to be down, or there is a problem with your Internet connection. Retrying…": "Syncthing이 중지되었거나 인터넷 연결에 문제가 발생했습니다. 재시도 중…",
|
||||
"Syncthing seems to be experiencing a problem processing your request. Please refresh the page or restart Syncthing if the problem persists.": "Syncthing에서 요청을 처리하는 중에 문제가 발행했습니다. 문제가 지속되면 페이지를 새로 고치거나 Syncthing을 재시작해 보십시오.",
|
||||
"Take me back": "뒤로",
|
||||
"The GUI address is overridden by startup options. Changes here will not take effect while the override is in place.": "시작 옵션이 GUI 주소를 덮어쓰고 있습니다. 덮어쓰기가 지속되는 동안에는 설정을 변경할 수 없습니다.",
|
||||
"The Syncthing Authors": "The Syncthing Authors",
|
||||
"The Syncthing admin interface is configured to allow remote access without a password.": "Syncthing 관리자 인터페이스가 암호 없이 원격 접속이 허가되도록 설정되었습니다.",
|
||||
"The aggregated statistics are publicly available at the URL below.": "수집된 통계는 아래 URL에서 공개적으로 볼 수 있습니다.",
|
||||
"The Syncthing admin interface is configured to allow remote access without a password.": "Syncthing의 관리자 인터페이스가 비밀번호 없이 원격 접속할 수 있도록 설정되어 있습니다.",
|
||||
"The aggregated statistics are publicly available at the URL below.": "수집된 통계는 아래의 주소에서 공람되어 있습니다.",
|
||||
"The cleanup interval cannot be blank.": "정리 간격은 비워 둘 수 없습니다.",
|
||||
"The configuration has been saved but not activated. Syncthing must restart to activate the new configuration.": "설정이 저장되었지만 활성화되지 않았습니다. 설정을 활성화 하려면 Syncthing을 다시 시작하세요.",
|
||||
"The device ID cannot be blank.": "기기 ID는 비워 둘 수 없습니다.",
|
||||
"The device ID to enter here can be found in the \"Actions > Show ID\" dialog on the other device. Spaces and dashes are optional (ignored).": "여기에 입력한 기기 ID가 다른 기기의 \"동작 > ID 보기\"에 표시됩니다. 공백과 하이픈은 세지 않습니다. 즉 무시됩니다.",
|
||||
"The encrypted usage report is sent daily. It is used to track common platforms, folder sizes and app versions. If the reported data set is changed you will be prompted with this dialog again.": "암호화된 사용 보고서는 매일 전송됩니다 사용 중인 플랫폼과 폴더 크기, 앱 버전이 포함되어 있습니다. 전송되는 데이터가 변경되면 다시 이 대화 상자가 나타납니다.",
|
||||
"The entered device ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "입력한 기기 ID가 올바르지 않습니다. 52/56자의 알파벳과 숫자로 구성되어 있으며, 공백과 하이픈은 포함되지 않습니다.",
|
||||
"The folder ID cannot be blank.": "폴더 ID는 비워 둘 수 없습니다.",
|
||||
"The folder ID must be unique.": "폴더 ID는 중복될 수 없습니다.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.",
|
||||
"The configuration has been saved but not activated. Syncthing must restart to activate the new configuration.": "설정이 저장되었으나 아직 활성화되지 않았습니다. 새 설정을 활성화하려면 Syncthing을 재시작하십시오.",
|
||||
"The device ID cannot be blank.": "기기 ID 번호는 비워 둘 수 없습니다.",
|
||||
"The device ID to enter here can be found in the \"Actions > Show ID\" dialog on the other device. Spaces and dashes are optional (ignored).": "이 자리에 입력할 기기 ID 번호는 다른 기기의 \"동작 > 기기 ID 번호 보기\"에서 찾을 수 있습니다. 공백과 하이픈은 선택적입니다(무시됩니다).",
|
||||
"The encrypted usage report is sent daily. It is used to track common platforms, folder sizes and app versions. If the reported data set is changed you will be prompted with this dialog again.": "암호화된 사용 보고서는 매일 전송됩니다. 사용 중인 운영체제, 폴더 크기와 앱 버전을 추적하기 위해서입니다. 만일 보고되는 정보가 변경되면 이 알림창이 다시 표시됩니다.",
|
||||
"The entered device ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "입력한 기기 ID 번호가 올바르지 않습니다. 52 또는 56자의 알파벳과 숫자로 구성되어야 하며, 공백과 하이픈은 선택적입니다.",
|
||||
"The folder ID cannot be blank.": "폴더 ID 번호는 비워 둘 수 없습니다.",
|
||||
"The folder ID must be unique.": "폴더 ID 번호는 유일무이해야 합니다.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "다른 기기의 폴더 내용을 현재 기기와 동일하도록 덮어씁니다. 현재 기기의 폴더에 없는 파일은 다른 기기에서 삭제됩니다.",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "현재 기기의 폴더 내용이 다른 기기와 동일하도록 덮어쓰입니다. 현재 기기의 폴더에 새로 추가된 파일은 삭제됩니다.",
|
||||
"The folder path cannot be blank.": "폴더 경로는 비워 둘 수 없습니다.",
|
||||
"The following intervals are used: for the first hour a version is kept every 30 seconds, for the first day a version is kept every hour, for the first 30 days a version is kept every day, until the maximum age a version is kept every week.": "다음과 같은 간격이 사용됩니다: 첫 한 시간 동안은 버전이 매 30초마다 유지되며, 첫 하루 동안은 매 시간, 첫 한 달 동안은 매 일마다 유지됩니다. 그리고 최대 날짜까지는 버전이 매 주마다 유지됩니다.",
|
||||
"The following items could not be synchronized.": "이 항목들은 동기화 할 수 없습니다.",
|
||||
"The following items were changed locally.": "다음 로컬 변경 항목이 발견되었습니다.",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "The following methods are used to discover other devices on the network and announce this device to be found by others:",
|
||||
"The following unexpected items were found.": "예기치 못한 항목이 발견되었습니다.",
|
||||
"The interval must be a positive number of seconds.": "간격은 초 단위의 자연수여야 합니다.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.",
|
||||
"The maximum age must be a number and cannot be blank.": "최대 보존 기간은 숫자여야 하며 비워 둘 수 없습니다.",
|
||||
"The maximum time to keep a version (in days, set to 0 to keep versions forever).": "버전을 유지할 최대 시간을 지정합니다. 일단위이며 버전을 계속 유지하려면 0을 입력하세요,",
|
||||
"The number of days must be a number and cannot be blank.": "날짜는 숫자여야 하며 비워 둘 수 없습니다.",
|
||||
"The number of days to keep files in the trash can. Zero means forever.": "설정된 날짜 동안 파일이 휴지통에 보관됩니다. 0은 무제한입니다.",
|
||||
"The number of old versions to keep, per file.": "각 파일별로 유지할 이전 버전의 개수를 지정합니다.",
|
||||
"The following intervals are used: for the first hour a version is kept every 30 seconds, for the first day a version is kept every hour, for the first 30 days a version is kept every day, until the maximum age a version is kept every week.": "다음과 같은 간격이 사용됩니다: 첫 한 시간 동안은 30초마다, 첫 하루 동안은 1시간마다, 첫 30일 동안은 1일마다, 그리고 최대 보관 기간까지는 1주일마다 버전이 보관됩니다.",
|
||||
"The following items could not be synchronized.": "다음 항목이 동기화되지 못했습니다.",
|
||||
"The following items were changed locally.": "다음 항목이 현재 기기에서 변경되었습니다.",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "망 내의 다른 기기 탐지 및 현재 기기 통보를 위한 다음 방식이 실행 중입니다:",
|
||||
"The following unexpected items were found.": "다음 예기치 못한 항목이 발견되었습니다.",
|
||||
"The interval must be a positive number of seconds.": "간격은 초 단위의 양수여야 합니다.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "버전 폴더를 정리하는 초 단위의 간격입니다. 주기적 정리를 비활성화하려면 0을 입력하십시오.",
|
||||
"The maximum age must be a number and cannot be blank.": "최대 보관 기간은 숫자여야 하며 비워 둘 수 없습니다.",
|
||||
"The maximum time to keep a version (in days, set to 0 to keep versions forever).": "버전을 보관할 최대 시간입니다(일 단위이며 버전을 영구 보관하려면 0을 입력하십시오).",
|
||||
"The number of days must be a number and cannot be blank.": "일수는 숫자여야 하며 비워 둘 수 없습니다.",
|
||||
"The number of days to keep files in the trash can. Zero means forever.": "휴지통에서 파일을 보관할 일수입니다. 0은 무제한을 의미합니다.",
|
||||
"The number of old versions to keep, per file.": "파일별로 유지할 이전 버전의 개수입니다.",
|
||||
"The number of versions must be a number and cannot be blank.": "버전 개수는 숫자여야 하며 비워 둘 수 없습니다.",
|
||||
"The path cannot be blank.": "경로는 비워 둘 수 없습니다.",
|
||||
"The rate limit must be a non-negative number (0: no limit)": "대역폭 제한 설정은 반드시 양수로 입력해야 합니다 (0: 무제한)",
|
||||
"The rescan interval must be a non-negative number of seconds.": "재탐색 간격은 초단위이며 양수로 입력해야 합니다.",
|
||||
"The rate limit must be a non-negative number (0: no limit)": "속도 제한은 양수여야 합니다(0: 무제한)",
|
||||
"The rescan interval must be a non-negative number of seconds.": "재탐색 간격은 초 단위의 양수여야 합니다.",
|
||||
"There are no devices to share this folder with.": "이 폴더를 공유할 기기가 없습니다.",
|
||||
"There are no folders to share with this device.": "이 기기와 공유할 폴더가 없습니다.",
|
||||
"They are retried automatically and will be synced when the error is resolved.": "오류가 해결되면 자동적으로 동기화 됩니다.",
|
||||
"They are retried automatically and will be synced when the error is resolved.": "자동 재시도 중이며 문제가 해결되는 대로 동기화됩니다.",
|
||||
"This Device": "현재 기기",
|
||||
"This can easily give hackers access to read and change any files on your computer.": "이 설정은 해커가 손쉽게 사용자 컴퓨터의 모든 파일을 읽고 변경할 수 있도록 할 수 있습니다.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.",
|
||||
"This is a major version upgrade.": "이 업데이트는 메이저 버전입니다.",
|
||||
"This setting controls the free space required on the home (i.e., index database) disk.": "이 설정은 홈 디스크에 필요한 여유 공간을 제어합니다. (즉, 인덱스 데이터베이스)",
|
||||
"This can easily give hackers access to read and change any files on your computer.": "이로 인해서는 해커가 손쉽게 컴퓨터의 모든 파일을 읽고 편집할 수 있게 됩니다.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "이 기기는 다른 기기를 자동으로 탐지하거나 다른 기기로부터 발견되도록 자신의 주소를 통보할 수 없습니다. 고정 주소가 설정된 기기만이 현재 기기에 접속할 수 있습니다.",
|
||||
"This is a major version upgrade.": "주요 버전 업데이트입니다.",
|
||||
"This setting controls the free space required on the home (i.e., index database) disk.": "이 설정은 홈(즉, 인덕스 데이터베이스) 저장 장치의 여유 공간을 제어합니다.",
|
||||
"Time": "시간",
|
||||
"Time the item was last modified": "항목이 마지막으로 수정 된 시간",
|
||||
"Time the item was last modified": "항목 최근 변경 시간",
|
||||
"Trash Can File Versioning": "휴지통을 통한 파일 버전 관리",
|
||||
"Type": "유형",
|
||||
"UNIX Permissions": "UNIX 권한",
|
||||
"Unavailable": "불가능",
|
||||
"Unavailable/Disabled by administrator or maintainer": "운영자 또는 관리자에 의해 불가능/비활성화 됨",
|
||||
"Undecided (will prompt)": "Undecided (will prompt)",
|
||||
"Unavailable": "변경 불가",
|
||||
"Unavailable/Disabled by administrator or maintainer": "운영 관리자에 의해 변경 불가 또는 비활성화됨",
|
||||
"Undecided (will prompt)": "미정(재알림 예정)",
|
||||
"Unexpected Items": "예기치 못한 항목",
|
||||
"Unexpected items have been found in this folder.": "이 폴더에 예기치 못한 항목이 발견되었습니다.",
|
||||
"Unexpected items have been found in this folder.": "이 폴더에서 예기치 못한 항목이 발견되었습니다.",
|
||||
"Unignore": "무시 취소",
|
||||
"Unknown": "알 수 없음",
|
||||
"Unshared": "공유되지 않음",
|
||||
"Unshared Devices": "공유되지 않은 기기",
|
||||
"Unshared Folders": "공유되지 않은 폴더",
|
||||
"Untrusted": "신뢰하지 않음",
|
||||
"Up to Date": "최신 데이터",
|
||||
"Up to Date": "최신 상태",
|
||||
"Updated": "업데이트 완료",
|
||||
"Upgrade": "업데이트",
|
||||
"Upgrade To {%version%}": "{{version}}으로 업데이트",
|
||||
"Upgrading": "업데이트 중",
|
||||
"Upload Rate": "업로드 속도",
|
||||
"Upload Rate": "송신 속도",
|
||||
"Uptime": "가동 시간",
|
||||
"Usage reporting is always enabled for candidate releases.": "출시 후보 버전에서는 사용 보고서가 항상 활성화 됩니다.",
|
||||
"Use HTTPS for GUI": "GUI에서 HTTPS 프로토콜 사용",
|
||||
"Use notifications from the filesystem to detect changed items.": "Use notifications from the filesystem to detect changed items.",
|
||||
"Username/Password has not been set for the GUI authentication. Please consider setting it up.": "Username/Password has not been set for the GUI authentication. Please consider setting it up.",
|
||||
"Usage reporting is always enabled for candidate releases.": "출시 후보 버전에서는 사용 보고가 항상 활성화되어 있습니다.",
|
||||
"Use HTTPS for GUI": "GUI에서 HTTPS 규약 사용",
|
||||
"Use notifications from the filesystem to detect changed items.": "파일 시스템 알림을 사용하여 변경 항목을 감시합니다.",
|
||||
"Username/Password has not been set for the GUI authentication. Please consider setting it up.": "GUI 인증을 위한 사용자 이름과 비밀번호가 설정되지 않았습니다. 이들을 설정하는 것을 고려해 보십시오.",
|
||||
"Version": "버전",
|
||||
"Versions": "버전",
|
||||
"Versions Path": "버전 저장 경로",
|
||||
"Versions are automatically deleted if they are older than the maximum age or exceed the number of files allowed in an interval.": "최대 보존 기간보다 오래되었거나 지정한 개수를 넘긴 버전은 자동으로 삭제됩니다.",
|
||||
"Waiting to Clean": "정리 대기 중",
|
||||
"Waiting to Scan": "탐색 대기 중",
|
||||
"Waiting to Sync": "동기화 대기 중",
|
||||
"Versions Path": "보관 경로",
|
||||
"Versions are automatically deleted if they are older than the maximum age or exceed the number of files allowed in an interval.": "최대 보관 기간보다 오래되었거나 간격 내에서 허용되는 파일 개수를 넘긴 버전은 자동으로 삭제됩니다.",
|
||||
"Waiting to Clean": "정리 대기",
|
||||
"Waiting to Scan": "탐색 대기",
|
||||
"Waiting to Sync": "동기화 대기",
|
||||
"Warning": "경고",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolder%}\".": "경고 : 이 경로는 현재 존재하는 폴더 \"{{otherFolder}}\"의 상위 폴더입니다.",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "경고 : 이 경로는 현재 존재하는 폴더 \"{{otherFolderLabel}}\" ({{otherFolder}})의 상위 폴더입니다.",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolder%}\".": "경고 : 이 경로는 현재 존재하는 폴더 \"{{otherFolder}}\"의 하위 폴더입니다.",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "경고 : 이 경로는 현재 존재하는 폴더 \"{{otherFolderLabel}}\" ({{otherFolder}})의 하위 폴더입니다.",
|
||||
"Warning: If you are using an external watcher like {%syncthingInotify%}, you should make sure it is deactivated.": "경고 : {{syncthingInotify}}와 같은 외부 감시 도구를 사용하는 경우 비활성화되어 있는지 확인해야 합니다.",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolder%}\".": "경고 : 이 경로는 기존 \"{{otherFolder}}\" 폴더의 상위 폴더입니다.",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "경고 : 이 경로는 기존 \"{{otherFolderLabel}}\" ({{otherFolder}}) 폴더의 상위 폴더입니다.",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolder%}\".": "경고 : 이 경로는 기존 \"{{otherFolder}}\" 폴더의 하위 폴더입니다.",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "경고 : 이 경로는 기존 \"{{otherFolderLabel}}\" ({{otherFolder}}) 폴더의 하위 폴더입니다.",
|
||||
"Warning: If you are using an external watcher like {%syncthingInotify%}, you should make sure it is deactivated.": "경고 : {{syncthingInotify}} 등 외부 감시 도구를 사용할 경우에는 이 설정을 반드시 비활성화해야 합니다.",
|
||||
"Watch for Changes": "변경 항목 감시",
|
||||
"Watching for Changes": "변경 항목 감시 중",
|
||||
"Watching for changes discovers most changes without periodic scanning.": "Watching for changes discovers most changes without periodic scanning.",
|
||||
"When adding a new device, keep in mind that this device must be added on the other side too.": "새 기기를 추가할 시 추가한 기기 쪽에서도 이 기기를 추가해야 합니다.",
|
||||
"When adding a new folder, keep in mind that the Folder ID is used to tie folders together between devices. They are case sensitive and must match exactly between all devices.": "새 폴더를 추가할 시 폴더 ID는 기기 간에 폴더를 묶을 때 사용됩니다. 대소문자를 구분하며 모든 기기에서 같은 ID를 사용해야 합니다.",
|
||||
"Watching for Changes": "변경 항목 감시",
|
||||
"Watching for changes discovers most changes without periodic scanning.": "변경 항목 감시는 주기적으로 탐색하지 않아도 대부분의 변경 항목을 탐지합니다.",
|
||||
"When adding a new device, keep in mind that this device must be added on the other side too.": "새 기기를 추가할 때 추가한 기기에서도 현재 기기를 추가해야 합니다.",
|
||||
"When adding a new folder, keep in mind that the Folder ID is used to tie folders together between devices. They are case sensitive and must match exactly between all devices.": "새 폴더를 추가할 때 폴더 ID 번호는 기기 간에 폴더를 묶어줍니다. 대소문자가 구분되며 모든 기기에서 동일해야 합니다.",
|
||||
"Yes": "예",
|
||||
"You can also select one of these nearby devices:": "주변 기기 중 하나를 선택할 수 있습니다:",
|
||||
"You can change your choice at any time in the Settings dialog.": "설정창 에서 언제든지 원하시는 때에 설정을 변경하는 것이 가능합니다.",
|
||||
"You can read more about the two release channels at the link below.": "이 두 개의 출시 채널에 대해 아래 링크에서 자세하게 읽어 보실 수 있습니다.",
|
||||
"You have no ignored devices.": "무시된 기기가 없습니다.",
|
||||
"You have no ignored folders.": "무시된 폴더가 없습니다.",
|
||||
"You have unsaved changes. Do you really want to discard them?": "저장되지 않은 변경사항이 있습니다. 변경사항을 무시하시겠습니까?",
|
||||
"You can also select one of these nearby devices:": "주변의 기기 중 하나를 선택할 수도 있습니다.",
|
||||
"You can change your choice at any time in the Settings dialog.": "설정창에서 기존의 설정을 언제나 변경할 수 있습니다.",
|
||||
"You can read more about the two release channels at the link below.": "두 가지의 출시 경로에 대해서는 아래의 링크를 참조해서 자세히 읽어보실 수 있습니다.",
|
||||
"You have no ignored devices.": "무시한 기기가 없습니다.",
|
||||
"You have no ignored folders.": "무시한 폴더가 없습니다.",
|
||||
"You have unsaved changes. Do you really want to discard them?": "저장되지 않은 변경 사항이 있습니다. 변경 사항을 무시하시겠습니까?",
|
||||
"You must keep at least one version.": "최소 한 개의 버전은 유지해야 합니다.",
|
||||
"You should never add or change anything locally in a \"{%receiveEncrypted%}\" folder.": "You should never add or change anything locally in a \"{{receiveEncrypted}}\" folder.",
|
||||
"You should never add or change anything locally in a \"{%receiveEncrypted%}\" folder.": "\"{{receiveEncrypted}}\" 유형의 폴더는 현재 기기에서 아무것도 추가 또는 변경해서는 안 됩니다.",
|
||||
"days": "일",
|
||||
"directories": "폴더",
|
||||
"files": "파일",
|
||||
"full documentation": "전체 사용 설명서",
|
||||
"items": "항목",
|
||||
"seconds": "초",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} 에서 폴더 \\\"{{folder}}\\\" 를 공유하길 원합니다.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} 에서 폴더 \"{{folderLabel}}\" ({{folder}})를 공유하길 원합니다.",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
"theme-name-black": "검은색",
|
||||
"theme-name-dark": "어두운 색",
|
||||
"theme-name-default": "기본 색",
|
||||
"theme-name-light": "밝은 색",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} 기기에서 \"{{folder}}\" 폴더를 공유하길 원합니다.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} 기기에서 \"{{folderlabel}}\" ({{folder}}) 폴더를 공유하길 원합니다.",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} 기기에서 이 기기를 다시 유도할 수 있습니다."
|
||||
}
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Pridėti aplanką",
|
||||
"Add Remote Device": "Pridėti nuotolinį įrenginį",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Pridėti įrenginius iš supažindintojo į mūsų įrenginių sąrašą, siekiant abipusiškai bendrinti aplankus.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Pridėti naują aplanką?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Pilnas nuskaitymo iš naujo intervalas bus papildomai padidintas (60 kartų, t.y. nauja numatytoji 1 val. reikšmė). Taip pat vėliau, pasirinkę Ne, galite jį konfigūruoti rankiniu būdu kiekvienam atskiram aplankui.",
|
||||
"Address": "Adresas",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Siųsti anoniminę naudojimo ataskaitą?",
|
||||
"Allowed Networks": "Leidžiami tinklai",
|
||||
"Alphabetic": "Abėcėlės tvarka",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Išorinė komanda apdoroja versijų valdymą. Ji turi pašalinti failą iš bendrinamo aplanko. Jei kelyje į programą yra tarpų, jie turėtų būti imami į kabutes.",
|
||||
"Anonymous Usage Reporting": "Anoniminė naudojimo ataskaita",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Anoniminės naudojimo ataskaitos formatas pasikeitė. Ar norėtumėte pereiti prie naujojo formato?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Nepaisyti",
|
||||
"Ignore Patterns": "Nepaisyti šablonų",
|
||||
"Ignore Permissions": "Nepaisyti failų prieigos leidimų",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Nepaisomi įrenginiai",
|
||||
"Ignored Folders": "Nepaisomi aplankai",
|
||||
"Ignored at": "Nepaisoma ties",
|
||||
@@ -224,7 +227,7 @@
|
||||
"Out of Sync": "Išsisinchronizavę",
|
||||
"Out of Sync Items": "Nesutikrinta",
|
||||
"Outgoing Rate Limit (KiB/s)": "Išsiunčiamo srauto maksimalus greitis (KiB/s)",
|
||||
"Override": "Override",
|
||||
"Override": "Nustelbti",
|
||||
"Override Changes": "Perrašyti pakeitimus",
|
||||
"Path": "Kelias",
|
||||
"Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "Kelias iki aplanko šiame kompiuteryje. Bus sukurtas, jei neegzistuoja. Tildės simbolis (~) gali būti naudojamas kaip trumpinys",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Pasirinkite aplankus kuriais norite dalintis su šiuo įrenginiu.",
|
||||
"Send & Receive": "Siųsti ir gauti",
|
||||
"Send Only": "Tik siųsti",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Nustatymai",
|
||||
"Share": "Dalintis",
|
||||
"Share Folder": "Dalintis aplanku",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "pilna dokumentacija",
|
||||
"items": "įrašai",
|
||||
"seconds": "sek.",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} nori dalintis aplanku \"{{folder}}\"",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} nori dalintis aplanku \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Legg til mappe",
|
||||
"Add Remote Device": "Legg til ekstern enhet",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Legg til enheter fra introdusøren til vår enhetsliste, for innbyrdes delte mapper.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Legg til ny mappe?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "I tillegg vil omskanningsintervallen bli økt (ganger 60. altså nytt forvalg på 1t). Du kan også sette den opp manuelt for hver mappe senere etter å ha valgt \"Nei\".",
|
||||
"Address": "Adresse",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Tillat anonym innsamling av brukerdata?",
|
||||
"Allowed Networks": "Tillatte nettverk",
|
||||
"Alphabetic": "Alfabetisk",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "En ekstern kommando tar hånd om versjoneringen. Den må fjerne filen fra den delte mappen. Hvis stien til programmet inneholder mellomrom, må den siteres.",
|
||||
"Anonymous Usage Reporting": "Anonym innsamling av brukerdata",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Det anonyme bruksrapportformatet har endret seg. Ønsker du å gå over til det nye formatet?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignorer",
|
||||
"Ignore Patterns": "Utelatelsesmønster",
|
||||
"Ignore Permissions": "Ignorer rettigheter",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ignorerte enheter",
|
||||
"Ignored Folders": "Utelatte mapper",
|
||||
"Ignored at": "Ignorert i",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Velg hvilke mapper som skal deles med denne enheten.",
|
||||
"Send & Receive": "Sende og motta",
|
||||
"Send Only": "Bare send",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Innstillinger",
|
||||
"Share": "Del",
|
||||
"Share Folder": "Del mappe",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "all dokumentasjon",
|
||||
"items": "elementer",
|
||||
"seconds": "sekunder",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} ønsker å dele mappa \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} ønsker å dele mappa \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Map toevoegen",
|
||||
"Add Remote Device": "Extern apparaat toevoegen",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Apparaten van het introductie-apparaat aan onze lijst met apparaten toevoegen, voor gemeenschappelijk gedeelde mappen.",
|
||||
"Add ignore patterns": "Negeerpatronen toevoegen",
|
||||
"Add new folder?": "Nieuwe map toevoegen?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Het interval van volledige scan zal daarbij ook vergroot worden (maal 60, dit is een nieuwe standaardwaarde van 1 uur). U kunt het later voor elke map manueel configureren nadat u nee kiest.",
|
||||
"Address": "Adres",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Versturen van anonieme gebruikersstatistieken toestaan?",
|
||||
"Allowed Networks": "Toegestane netwerken",
|
||||
"Alphabetic": "Alfabetisch",
|
||||
"Altered by ignoring deletes.": "Veranderd door het negeren van verwijderingen.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Een externe opdracht regelt het versiebeheer. Hij moet het bestand verwijderen uit de gedeelde map. Als het pad naar de toepassing spaties bevat, moet dit tussen aanhalingstekens geplaatst worden.",
|
||||
"Anonymous Usage Reporting": "Anonieme gebruikersstatistieken",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Het formaat voor anonieme gebruikersrapporten is gewijzigd. Wilt u naar het nieuwe formaat overschakelen?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Negeren",
|
||||
"Ignore Patterns": "Negeerpatronen",
|
||||
"Ignore Permissions": "Machtigingen negeren",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Negeerpatronen kunnen alleen worden toegevoegd nadat de map is aangemaakt. Indien aangevinkt, zal na het opslaan een invoerveld voor negeerpatronen worden getoond.",
|
||||
"Ignored Devices": "Genegeerde apparaten",
|
||||
"Ignored Folders": "Genegeerde mappen",
|
||||
"Ignored at": "Genegeerd op",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Selecteer de mappen om te delen met dit apparaat.",
|
||||
"Send & Receive": "Verzenden en ontvangen",
|
||||
"Send Only": "Alleen verzenden",
|
||||
"Set Ignores on Added Folder": "Negeringen instellen op map \"toegevoegd\"",
|
||||
"Settings": "Instellingen",
|
||||
"Share": "Delen",
|
||||
"Share Folder": "Map delen",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "volledige documentatie",
|
||||
"items": "items",
|
||||
"seconds": "seconden",
|
||||
"theme-name-black": "Zwart",
|
||||
"theme-name-dark": "Donker",
|
||||
"theme-name-default": "Standaard",
|
||||
"theme-name-light": "Licht",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} wil map \"{{folder}}\" delen.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} wil map \"{{folderlabel}}\" ({{folder}}) delen.",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} kan dit apparaat mogelijk opnieuw introduceren."
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
{
|
||||
"A device with that ID is already added.": "Urządzenie o tym ID już istnieje.",
|
||||
"A device with that ID is already added.": "Urządzenie o tym numerze ID już istnieje.",
|
||||
"A negative number of days doesn't make sense.": "Ujemna liczba dni nie ma sensu.",
|
||||
"A new major version may not be compatible with previous versions.": "Nowa duża wersja może nie być kompatybilna z poprzednimi wersjami.",
|
||||
"API Key": "Klucz API",
|
||||
"About": "O Syncthing",
|
||||
"Action": "Akcja",
|
||||
"Actions": "Akcje",
|
||||
"About": "Informacje",
|
||||
"Action": "Działanie",
|
||||
"Actions": "Działania",
|
||||
"Add": "Dodaj",
|
||||
"Add Device": "Dodaj urządzenie",
|
||||
"Add Folder": "Dodaj folder",
|
||||
"Add Remote Device": "Dodaj urządzenie zdalne",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Dodaj urządzenia od wprowadzającego do własnej listy urządzeń dla folderów współdzielonych obustronnie.",
|
||||
"Add ignore patterns": "Dodaj wzorce ignorowania",
|
||||
"Add new folder?": "Czy chcesz dodać nowy folder?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Dodatkowo, czas przedziału pełnego ponownego skanowania zostanie zwiększony (o 60 razy, tj. do nowej domyślnej wartości \"1h\"). Możesz również ustawić go później ręcznie dla każdego folderu wybierając \"Nie\".",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Dodatkowo czas przedziału pełnego ponownego skanowania zostanie zwiększony (o 60 razy, tj. do nowej domyślnej wartości \"1h\"). Można również ustawić go później ręcznie dla każdego folderu wybierając \"Nie\".",
|
||||
"Address": "Adres",
|
||||
"Addresses": "Adresy",
|
||||
"Advanced": "Zaawansowane",
|
||||
@@ -22,7 +23,8 @@
|
||||
"Allow Anonymous Usage Reporting?": "Czy chcesz zezwolić na anonimowe statystyki użycia?",
|
||||
"Allowed Networks": "Dozwolone sieci",
|
||||
"Alphabetic": "Alfabetycznie",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Zewnętrzne polecenie odpowiedzialne jest za wersjonowanie. Musi ono usunąć plik ze współdzielonego folderu. Jeśli ścieżka do aplikacji zawiera spacje, powinna ona być zamknięta w cudzysłowie.",
|
||||
"Altered by ignoring deletes.": "Zmieniono przez ignorowanie usuniętych.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Zewnętrzne polecenie odpowiedzialne jest za wersjonowanie. Musi ono usunąć plik ze współdzielonego folderu. Jeżeli ścieżka do aplikacji zawiera spacje, to powinna ona być zamknięta w cudzysłowie.",
|
||||
"Anonymous Usage Reporting": "Anonimowe statystyki użycia",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Format anonimowych statystyk użycia uległ zmianie. Czy chcesz przejść na nowy format?",
|
||||
"Are you sure you want to continue?": "Czy na pewno chcesz kontynuować?",
|
||||
@@ -38,7 +40,7 @@
|
||||
"Automatic upgrade now offers the choice between stable releases and release candidates.": "Automatycznie aktualizacje pozwalają teraz na wybór pomiędzy wydaniami stabilnymi oraz wydaniami kandydującymi.",
|
||||
"Automatic upgrades": "Automatyczne aktualizacje",
|
||||
"Automatic upgrades are always enabled for candidate releases.": "Automatyczne aktualizacje są zawsze włączone dla wydań kandydujących.",
|
||||
"Automatically create or share folders that this device advertises at the default path.": "Automatycznie utwórz lub współdziel foldery wysyłane przez to urządzenie w domyślnej ścieżce.",
|
||||
"Automatically create or share folders that this device advertises at the default path.": "Automatycznie współdziel lub utwórz w domyślnej ścieżce foldery anonsowane przez to urządzenie.",
|
||||
"Available debug logging facilities:": "Dostępne narzędzia logujące do debugowania:",
|
||||
"Be careful!": "Ostrożnie!",
|
||||
"Bugs": "Błędy",
|
||||
@@ -58,11 +60,11 @@
|
||||
"Connection Error": "Błąd połączenia",
|
||||
"Connection Type": "Rodzaj połączenia",
|
||||
"Connections": "Połączenia",
|
||||
"Continuously watching for changes is now available within Syncthing. This will detect changes on disk and issue a scan on only the modified paths. The benefits are that changes are propagated quicker and that less full scans are required.": "Ciągłe obserwowanie zmian jest już dostępne w Syncthing. Będzie ono wykrywać zmiany na dysku i uruchamiać skanowanie tylko w zmodyfikowanych ścieżkach. Zalety tego są takie, że zmiany rozsyłane są znacznie szybciej oraz że wymagana jest mniejsza liczba pełnych skanowań.",
|
||||
"Continuously watching for changes is now available within Syncthing. This will detect changes on disk and issue a scan on only the modified paths. The benefits are that changes are propagated quicker and that less full scans are required.": "Ciągłe obserwowanie zmian jest już dostępne w programie Syncthing. Będzie ono wykrywać zmiany na dysku i uruchamiać skanowanie tylko w zmodyfikowanych ścieżkach. Zalety tego rozwiązania są takie, że zmiany rozsyłane są szybciej oraz że wymagane jest mniej pełnych skanowań.",
|
||||
"Copied from elsewhere": "Skopiowane z innego miejsca ",
|
||||
"Copied from original": "Skopiowane z oryginału",
|
||||
"Copyright © 2014-2019 the following Contributors:": "Wszelkie prawa zastrzeżone © 2014-2019 dla współtwórców:",
|
||||
"Creating ignore patterns, overwriting an existing file at {%path%}.": "Tworzenie wzorów ignorowania, nadpisze istniejący plik w {{path}}.",
|
||||
"Copyright © 2014-2019 the following Contributors:": "Wszelkie prawa zastrzeżone © 2014-2019 dla następujących współtwórców:",
|
||||
"Creating ignore patterns, overwriting an existing file at {%path%}.": "Tworzenie wzorców ignorowania; nadpisuje istniejący plik w {{path}}.",
|
||||
"Currently Shared With Devices": "Obecnie współdzielony z urządzeniami",
|
||||
"Danger!": "Niebezpieczeństwo!",
|
||||
"Debugging Facilities": "Narzędzia do debugowania",
|
||||
@@ -78,11 +80,11 @@
|
||||
"Deselect devices to stop sharing this folder with.": "Odznacz urządzenia, z którymi chcesz przestać współdzielić ten folder.",
|
||||
"Deselect folders to stop sharing with this device.": "Odznacz foldery, które chcesz przestać współdzielić z tym urządzeniem.",
|
||||
"Device": "Urządzenie",
|
||||
"Device \"{%name%}\" ({%device%} at {%address%}) wants to connect. Add new device?": "Urządzenie \"{{name}}\" {{device}} pod ({{address}}) chce się połączyć. Dodać nowe urządzenie?",
|
||||
"Device ID": "ID urządzenia",
|
||||
"Device \"{%name%}\" ({%device%} at {%address%}) wants to connect. Add new device?": "Urządzenie o nazwie \"{{name}}\" {{device}} pod adresem ({{address}}) chce się połączyć. Czy dodać nowe urządzenie?",
|
||||
"Device ID": "Numer ID urządzenia",
|
||||
"Device Identification": "Identyfikator urządzenia",
|
||||
"Device Name": "Nazwa urządzenia",
|
||||
"Device is untrusted, enter encryption password": "Urządzenie jest niezaufane. Wprowadź szyfrujące hasło.",
|
||||
"Device is untrusted, enter encryption password": "Urządzenie jest niezaufane; wprowadź szyfrujące hasło.",
|
||||
"Device rate limits": "Ograniczenia prędkości urządzenia",
|
||||
"Device that last modified the item": "Urządzenie, które jako ostatnie zmodyfikowało ten element",
|
||||
"Devices": "Urządzenia",
|
||||
@@ -90,7 +92,7 @@
|
||||
"Disabled": "Wyłączone",
|
||||
"Disabled periodic scanning and disabled watching for changes": "Wyłączone okresowe skanowanie i wyłączone obserwowanie zmian",
|
||||
"Disabled periodic scanning and enabled watching for changes": "Wyłączone okresowe skanowanie i włączone obserwowanie zmian",
|
||||
"Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:": "Wyłączone okresowe skanowanie i nieudane ustawienie obserwowania zmian, ponawiam co minutę:",
|
||||
"Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:": "Wyłączone okresowe skanowanie i nieudane ustawienie obserwowania zmian; ponawiam co minutę:",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "Wyłącza porównywanie i synchronizację uprawnień plików. Przydatne w systemach, w których uprawnienia nie istnieją bądź są one niestandardowe (np. FAT, exFAT, Synology, Android).",
|
||||
"Discard": "Odrzuć",
|
||||
"Disconnected": "Rozłączony",
|
||||
@@ -113,61 +115,62 @@
|
||||
"Edit Device Defaults": "Edytuj domyślne ustawienia urządzeń",
|
||||
"Edit Folder": "Edytuj folder",
|
||||
"Edit Folder Defaults": "Edytuj domyślne ustawienia folderów",
|
||||
"Editing {%path%}.": "Edytowanie {{path}}.",
|
||||
"Editing {%path%}.": "Edytowanie ścieżki {{path}}.",
|
||||
"Enable Crash Reporting": "Włącz zgłaszanie awarii",
|
||||
"Enable NAT traversal": "Włącz trawersowanie NAT",
|
||||
"Enable Relaying": "Włącz przekazywanie",
|
||||
"Enabled": "Włączone",
|
||||
"Enter a non-negative number (e.g., \"2.35\") and select a unit. Percentages are as part of the total disk size.": "Wprowadź nieujemną liczbę (np. \"2.35\") oraz wybierz jednostkę. Procenty odnoszą się do rozmiaru całego dysku.",
|
||||
"Enter a non-privileged port number (1024 - 65535).": "Wprowadź nieuprzywilejowany numer portu (1024-65535).",
|
||||
"Enter comma separated (\"tcp://ip:port\", \"tcp://host:port\") addresses or \"dynamic\" to perform automatic discovery of the address.": "Wprowadź adresy oddzielone przecinkiem (\"tcp://ip:port\", \"tcp://host:port\") lub \"dynamic\" w celu automatycznego odnajdywania adresu.",
|
||||
"Enter comma separated (\"tcp://ip:port\", \"tcp://host:port\") addresses or \"dynamic\" to perform automatic discovery of the address.": "Wprowadź oddzielone przecinkiem adresy (\"tcp://ip:port\", \"tcp://host:port\") lub \"dynamic\" w celu automatycznego odnajdywania adresu.",
|
||||
"Enter ignore patterns, one per line.": "Wprowadź wzorce ignorowania, po jednym w każdej linii.",
|
||||
"Enter up to three octal digits.": "Wprowadź maksymalnie trzy cyfry ósemkowe.",
|
||||
"Error": "Błąd",
|
||||
"External File Versioning": "Zewnętrzne wersjonowanie plików",
|
||||
"Failed Items": "Elementy zakończone niepowodzeniem",
|
||||
"Failed to load ignore patterns.": "Nie udało się załadować wzorców ignorowania.",
|
||||
"Failed to setup, retrying": "Nie udało się ustawić, ponawiam",
|
||||
"Failed to setup, retrying": "Nie udało się ustawić; ponawiam próbę",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "Błąd połączenia do serwerów IPv6 może wystąpić, gdy w ogóle nie ma połączenia po IPv6.",
|
||||
"File Pull Order": "Kolejność pobierania plików",
|
||||
"File Versioning": "Wersjonowanie plików",
|
||||
"Files are moved to .stversions directory when replaced or deleted by Syncthing.": "Pliki zmienione lub usunięte przez Syncthing są przenoszone do katalogu .stversions.",
|
||||
"Files are moved to date stamped versions in a .stversions directory when replaced or deleted by Syncthing.": "Pliki zmienione lub usunięte przez Syncthing są datowane i przenoszone do katalogu .stversions.",
|
||||
"Files are protected from changes made on other devices, but changes made on this device will be sent to the rest of the cluster.": "Pliki są zabezpieczone przed zmianami dokonanymi na innych urządzeniach, ale zmiany dokonane na tym urządzeniu będą wysyłane do pozostałych urządzeń.",
|
||||
"Files are synchronized from the cluster, but any changes made locally will not be sent to other devices.": "Pliki są synchronizowane z pozostałych urządzeń, ale jakiekolwiek zmiany dokonane lokalnie nie będą wysyłanie do innych urządzeń.",
|
||||
"Files are synchronized from the cluster, but any changes made locally will not be sent to other devices.": "Pliki są synchronizowane z pozostałych urządzeń, ale wszelkie zmiany dokonane lokalnie nie będą wysyłanie do innych urządzeń.",
|
||||
"Filesystem Watcher Errors": "Błędy obserwatora plików",
|
||||
"Filter by date": "Filtruj według daty",
|
||||
"Filter by name": "Filtruj według nazwy",
|
||||
"Folder": "Folder",
|
||||
"Folder ID": "ID folderu",
|
||||
"Folder ID": "Numer ID folderu",
|
||||
"Folder Label": "Etykieta folderu",
|
||||
"Folder Path": "Ścieżka folderu",
|
||||
"Folder Type": "Rodzaj folderu",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "Rodzaj folderu \"{{receiveEncrypted}}\" może być ustawiony tylko przy dodawaniu nowego folderu.",
|
||||
"Folder type \"{%receiveEncrypted%}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.": "Rodzaj folderu \"{{receiveEncrypted}}\" nie może być zmieniony po dodaniu folderu. Musisz najpierw usunąć folder, skasować bądź też odszyfrować dane na dysku, a następnie dodać folder ponownie.",
|
||||
"Folders": "Foldery",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "Wystąpił błąd podczas rozpoczynania obserwowania zmian w następujących folderach. Akcja będzie ponawiana co minutę, więc błędy mogą niebawem zniknąć. Jeżeli nie uda pozbyć się błędów, spróbuj naprawić ukryty problem lub poproś o pomoc, jeżeli nie będziesz w stanie tego zrobić.",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "Wystąpił błąd podczas włączania obserwowania zmian w następujących folderach. Akcja będzie ponawiana co minutę, więc te błędy mogą niebawem zniknąć. Jeżeli nie uda pozbyć się błędów, spróbuj naprawić odpowiedzialny za to problem lub poproś o pomoc, jeżeli nie będziesz sam w stanie tego zrobić.",
|
||||
"Full Rescan Interval (s)": "Przedział czasowy pełnego skanowania (s)",
|
||||
"GUI": "GUI",
|
||||
"GUI Authentication Password": "Hasło uwierzytelniające GUI",
|
||||
"GUI Authentication User": "Użytkownik uwierzytelniający GUI",
|
||||
"GUI Authentication: Set User and Password": "Uwierzytelnianie GUI: ustaw użytkownika i hasło",
|
||||
"GUI Authentication: Set User and Password": "Uwierzytelnianie GUI: ustaw nazwę użytkownika i hasło",
|
||||
"GUI Listen Address": "Adres nasłuchu GUI",
|
||||
"GUI Theme": "Motyw GUI",
|
||||
"General": "Ogólne",
|
||||
"Generate": "Generuj",
|
||||
"Generate": "Wygeneruj",
|
||||
"Global Discovery": "Odnajdywanie globalne",
|
||||
"Global Discovery Servers": "Serwery odnajdywania globalnego",
|
||||
"Global State": "Stan globalny",
|
||||
"Help": "Pomoc",
|
||||
"Home page": "Strona domowa",
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "Niemniej jednak, obecne ustawienia wskazują, że możesz nie chcieć włączać tej funkcji. Automatyczne zgłaszanie awarii zostało wyłączone na tym urządzeniu.",
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "Niemniej jednak, obecne ustawienia wskazują, że możesz nie chcieć włączać tej funkcji. Automatyczne zgłaszanie awarii zostało więc wyłączone na tym urządzeniu.",
|
||||
"Identification": "Identyfikator",
|
||||
"If untrusted, enter encryption password": "Jeżeli folder jest niezaufany, wprowadź szyfrujące hasło",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "Jeżeli chcesz zakazać innym użytkownikom tego komputera dostępu do Syncthing, a przez niego do swoich plików, zastanów się nad włączeniem uwierzytelniania.",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "Jeżeli chcesz zakazać innym użytkownikom tego komputera dostępu do programu Syncthing, a przez niego do swoich plików, zastanów się nad ustawieniem uwierzytelniania.",
|
||||
"Ignore": "Ignoruj",
|
||||
"Ignore Patterns": "Wzorce ignorowania",
|
||||
"Ignore Permissions": "Ignorowanie uprawnień",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Wzorce ignorowania można dodać dopiero po utworzeniu folderu. Jeżeli zaznaczysz to pole, to po zapisaniu zmian pojawi się nowe okienko, gdzie będziesz mógł wpisać wzorce ignorowania.",
|
||||
"Ignored Devices": "Ignorowane urządzenia",
|
||||
"Ignored Folders": "Ignorowane foldery",
|
||||
"Ignored at": "Ignorowane od",
|
||||
@@ -178,7 +181,7 @@
|
||||
"Inversion of the given condition (i.e. do not exclude)": "Odwrotność danego warunku (np. nie wykluczaj)",
|
||||
"Keep Versions": "Zachowuj wersje",
|
||||
"LDAP": "LDAP",
|
||||
"Largest First": "Największe na początku",
|
||||
"Largest First": "Od największych",
|
||||
"Last Scan": "Ostatnie skanowanie",
|
||||
"Last seen": "Ostatnio widziany",
|
||||
"Latest Change": "Ostatnia zmiana",
|
||||
@@ -209,17 +212,17 @@
|
||||
"Never": "Nigdy",
|
||||
"New Device": "Nowe urządzenie",
|
||||
"New Folder": "Nowy folder",
|
||||
"Newest First": "Najnowsze na początku",
|
||||
"Newest First": "Od najnowszych",
|
||||
"No": "Nie",
|
||||
"No File Versioning": "Bez wersjonowania plików",
|
||||
"No files will be deleted as a result of this operation.": "Żadne pliki nie zostaną usunięte w wyniki tego działania.",
|
||||
"No files will be deleted as a result of this operation.": "Żadne pliki nie zostaną usunięte w wyniku tego działania.",
|
||||
"No upgrades": "Brak aktualizacji",
|
||||
"Not shared": "Niewspółdzielony",
|
||||
"Notice": "Wskazówka",
|
||||
"OK": "OK",
|
||||
"Off": "Wyłączona",
|
||||
"Oldest First": "Najstarsze na początku",
|
||||
"Optional descriptive label for the folder. Can be different on each device.": "Opcjonalna opisowa etykieta dla folderu. Może być różna na każdym urządzeniu.",
|
||||
"Oldest First": "Od najstarszych",
|
||||
"Optional descriptive label for the folder. Can be different on each device.": "Opcjonalna opisowa etykieta dla folderu. Może być inna na każdym urządzeniu.",
|
||||
"Options": "Opcje",
|
||||
"Out of Sync": "Niezsynchronizowane",
|
||||
"Out of Sync Items": "Elementy niezsynchronizowane",
|
||||
@@ -237,15 +240,15 @@
|
||||
"Pending changes": "Oczekujące zmiany",
|
||||
"Periodic scanning at given interval and disabled watching for changes": "Okresowe skanowanie w podanym przedziale czasowym i wyłączone obserwowanie zmian",
|
||||
"Periodic scanning at given interval and enabled watching for changes": "Okresowe skanowanie w podanym przedziale czasowym i włączone obserwowanie zmian",
|
||||
"Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:": "Okresowe skanowanie w podanym przedziale czasowym i nieudane ustawienie obserwowania zmian, ponawiam co minutę:",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Dodaje na stałe od listy ignorowanych, wyciszając kolejne powiadomienia.",
|
||||
"Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:": "Okresowe skanowanie w podanym przedziale czasowym i nieudane ustawienie obserwowania zmian; ponawiam co minutę:",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Dodaje na stałe od listy ignorowanych wyciszając kolejne powiadomienia.",
|
||||
"Permissions": "Uprawnienia",
|
||||
"Please consult the release notes before performing a major upgrade.": "Zapoznaj się z informacjami o wersji przed przeprowadzeniem dużej aktualizacji.",
|
||||
"Please set a GUI Authentication User and Password in the Settings dialog.": "Ustaw użytkownika i hasło do uwierzytelniania GUI w oknie Ustawień.",
|
||||
"Please consult the release notes before performing a major upgrade.": "Prosimy zapoznać się z informacjami o wersji przed przeprowadzeniem dużej aktualizacji.",
|
||||
"Please set a GUI Authentication User and Password in the Settings dialog.": "Ustaw nazwę użytkownika i hasło do uwierzytelniania GUI w oknie Ustawień.",
|
||||
"Please wait": "Proszę czekać",
|
||||
"Prefix indicating that the file can be deleted if preventing directory removal": "Prefiks wskazujący, że plik może zostać usunięty, gdy blokuje on usunięcie katalogu",
|
||||
"Prefix indicating that the pattern should be matched without case sensitivity": "Prefiks wskazujący, że wzorzec ma być wyszukiwany bez rozróżniania wielkości liter",
|
||||
"Preparing to Sync": "Przygotowywanie do synchronizacji",
|
||||
"Prefix indicating that the file can be deleted if preventing directory removal": "Przedrostek wskazujący, że plik może zostać usunięty, gdy blokuje on usunięcie katalogu",
|
||||
"Prefix indicating that the pattern should be matched without case sensitivity": "Przedrostek wskazujący, że wzorzec ma być wyszukiwany bez rozróżniania wielkości liter",
|
||||
"Preparing to Sync": "Przygotowanie do synchronizacji",
|
||||
"Preview": "Podgląd",
|
||||
"Preview Usage Report": "Podgląd statystyk użycia",
|
||||
"Quick guide to supported patterns": "Krótki przewodnik po obsługiwanych wzorcach",
|
||||
@@ -256,7 +259,7 @@
|
||||
"Recent Changes": "Ostatnie zmiany",
|
||||
"Reduced by ignore patterns": "Ograniczono przez wzorce ignorowania",
|
||||
"Release Notes": "Informacje o wersji",
|
||||
"Release candidates contain the latest features and fixes. They are similar to the traditional bi-weekly Syncthing releases.": "Wydania kandydujące zawierają najnowsze funkcje oraz poprawki błędów. Są one podobne do tradycyjnych codwutygodniowych wydań Syncthing.",
|
||||
"Release candidates contain the latest features and fixes. They are similar to the traditional bi-weekly Syncthing releases.": "Wydania kandydujące zawierają najnowsze funkcje oraz poprawki błędów. Są one podobne do tradycyjnych codwutygodniowych wydań programu Syncthing.",
|
||||
"Remote Devices": "Urządzenia zdalne",
|
||||
"Remote GUI": "Zdalne GUI",
|
||||
"Remove": "Usuń",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Zaznacz foldery, które chcesz współdzielić z tym urządzeniem.",
|
||||
"Send & Receive": "Wyślij i odbierz",
|
||||
"Send Only": "Tylko wyślij",
|
||||
"Set Ignores on Added Folder": "Ustaw wzorce ignorowania dla dodanego folderu",
|
||||
"Settings": "Ustawienia",
|
||||
"Share": "Współdziel",
|
||||
"Share Folder": "Współdziel folder",
|
||||
@@ -297,25 +301,25 @@
|
||||
"Shared Folders": "Współdzielone foldery",
|
||||
"Shared With": "Współdzielony z",
|
||||
"Sharing": "Współdzielenie",
|
||||
"Show ID": "Pokaż ID",
|
||||
"Show ID": "Pokaż numer ID",
|
||||
"Show QR": "Pokaż kod QR",
|
||||
"Show detailed discovery status": "Pokaż szczegółowy stan odnajdywania",
|
||||
"Show detailed listener status": "Pokaż szczegółowy stan nasłuchujących",
|
||||
"Show diff with previous version": "Pokaż różnice z poprzednią wersją",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "Widoczna na liście urządzeń zamiast ID urządzenia. Zostanie wysłana do innych urządzeń jako opcjonalna nazwa domyślna.",
|
||||
"Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.": "Widoczna na liście urządzeń zamiast ID urządzenia. Zostanie zaktualizowana do nazwy wysłanej przez urządzenie, jeżeli pozostanie pusta.",
|
||||
"Show diff with previous version": "Pokaż diff z poprzednią wersją",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "Widoczna na liście urządzeń zamiast numeru ID urządzenia. Będzie anonsowana do innych urządzeń jako opcjonalna nazwa domyślna.",
|
||||
"Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.": "Widoczna na liście urządzeń zamiast numeru ID urządzenia. Będzie zaktualizowana do nazwy anonsowanej przez urządzenie, jeżeli pozostanie pusta.",
|
||||
"Shutdown": "Wyłącz",
|
||||
"Shutdown Complete": "Wyłączanie ukończone",
|
||||
"Simple File Versioning": "Proste wersjonowanie plików",
|
||||
"Single level wildcard (matches within a directory only)": "Wieloznacznik jednopoziomowy (wyszukuje tylko wewnątrz katalogu)",
|
||||
"Size": "Rozmiar",
|
||||
"Smallest First": "Najmniejsze na początku",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "Nie udało się ustawić niektórych metod odnajdywania w celu szukania innych urządzeń oraz ogłaszania tego urządzenia:",
|
||||
"Smallest First": "Od najmniejszych",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "Nie udało się uruchomić niektórych metod odnajdywania w celu szukania innych urządzeń oraz ogłaszania tego urządzenia:",
|
||||
"Some items could not be restored:": "Niektórych elementów nie udało się przywrócić:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Nie udało się włączyć niektórych adresów nasłuchujących w celu przyjmowania połączeń:",
|
||||
"Source Code": "Kod źródłowy",
|
||||
"Stable releases and release candidates": "Wydania stabilne i wydania kandydujące",
|
||||
"Stable releases are delayed by about two weeks. During this time they go through testing as release candidates.": "Wydania stabilne są opóźnione o ok. dwa tygodnie. W tym czasie są one testowane jako wydania kandydujące.",
|
||||
"Stable releases are delayed by about two weeks. During this time they go through testing as release candidates.": "Wydania stabilne są opóźnione o około dwa tygodnie. W tym czasie są one testowane jako wydania kandydujące.",
|
||||
"Stable releases only": "Tylko wydania stabilne",
|
||||
"Staggered File Versioning": "Rozbudowane wersjonowanie plików",
|
||||
"Start Browser": "Uruchom przeglądarkę",
|
||||
@@ -339,16 +343,16 @@
|
||||
"Take me back": "Powrót",
|
||||
"The GUI address is overridden by startup options. Changes here will not take effect while the override is in place.": "Adres GUI jest nadpisywany przez opcje uruchamiania. Zmiany dokonane tutaj nie będą obowiązywać, dopóki nadpisywanie jest w użyciu.",
|
||||
"The Syncthing Authors": "The Syncthing Authors",
|
||||
"The Syncthing admin interface is configured to allow remote access without a password.": "Ustawienia interfejsu administracyjnego Syncthing zezwalają na zdalny dostęp bez hasła.",
|
||||
"The Syncthing admin interface is configured to allow remote access without a password.": "Ustawienia interfejsu administracyjnego programu Syncthing zezwalają na zdalny dostęp bez hasła.",
|
||||
"The aggregated statistics are publicly available at the URL below.": "Zebrane statystyki są publicznie dostępne pod poniższym adresem.",
|
||||
"The cleanup interval cannot be blank.": "Przedział czasowy czyszczenia nie może być pusty.",
|
||||
"The configuration has been saved but not activated. Syncthing must restart to activate the new configuration.": "Ustawienia zostały zapisane, ale nie są jeszcze aktywne. Syncthing musi zostać uruchomiony ponownie, aby aktywować nowe ustawienia.",
|
||||
"The device ID cannot be blank.": "ID urządzenia nie może być puste.",
|
||||
"The device ID to enter here can be found in the \"Actions > Show ID\" dialog on the other device. Spaces and dashes are optional (ignored).": "ID urządzenia do wpisania tutaj można znaleźć w oknie \"Akcje > Pokaż ID\" na innym urządzeniu. Spacje i myślniki są opcjonalne (ignorowane).",
|
||||
"The device ID cannot be blank.": "Numer ID urządzenia nie może być puste.",
|
||||
"The device ID to enter here can be found in the \"Actions > Show ID\" dialog on the other device. Spaces and dashes are optional (ignored).": "Numer ID urządzenia do wpisania tutaj można znaleźć w oknie \"Działania > Pokaż numer ID\" na innym urządzeniu. Spacje i myślniki są opcjonalne (ignorowane).",
|
||||
"The encrypted usage report is sent daily. It is used to track common platforms, folder sizes and app versions. If the reported data set is changed you will be prompted with this dialog again.": "Zaszyfrowane statystyki użycia są wysyłane codziennie. Używane są one do śledzenia popularności systemów, rozmiarów folderów oraz wersji programu. Jeżeli wysyłane statystyki ulegną zmianie, zostaniesz poproszony o ponowne udzielenie zgody w tym oknie.",
|
||||
"The entered device ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "Wprowadzone ID urządzenia wygląda na niepoprawne. Musi ono zawierać 52 lub 56 znaków składających się z liter i cyfr. Spacje i myślniki są opcjonalne.",
|
||||
"The folder ID cannot be blank.": "ID folderu nie może być puste.",
|
||||
"The folder ID must be unique.": "ID folderu musi być unikatowe.",
|
||||
"The entered device ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "Wprowadzony numer ID urządzenia wygląda na niepoprawny. Musi ono zawierać 52 lub 56 znaków składających się z liter i cyfr. Spacje i myślniki są opcjonalne.",
|
||||
"The folder ID cannot be blank.": "Numer ID folderu nie może być pusty.",
|
||||
"The folder ID must be unique.": "Numer ID folderu musi być niepowtarzalny.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "Zawartość folderu na innych urządzeniach zostanie nadpisana tak, aby upodobnić się do tego urządzenia. Pliki nieobecne tutaj zostaną usunięte na innych urządzeniach.",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "Zawartość folderu na tym urządzeniu zostanie nadpisana tak, aby upodobnić się do innych urządzeń. Pliki nowo dodane tutaj zostaną usunięte.",
|
||||
"The folder path cannot be blank.": "Ścieżka folderu nie może być pusta.",
|
||||
@@ -359,18 +363,18 @@
|
||||
"The following unexpected items were found.": "Znaleziono następujące elementy nieoczekiwane.",
|
||||
"The interval must be a positive number of seconds.": "Przedział czasowy musi być dodatnią liczbą sekund.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "Przedział czasowy, w sekundach, w którym nastąpi czyszczenie katalogu wersjonowania. Ustaw na zero, aby wyłączyć czyszczenie okresowe.",
|
||||
"The maximum age must be a number and cannot be blank.": "Maksymalny wiek musi być liczbą oraz nie może być pusty.",
|
||||
"The maximum time to keep a version (in days, set to 0 to keep versions forever).": "Maksymalny czas zachowania wersji (w dniach, ustaw na 0, aby zachować na zawsze).",
|
||||
"The maximum age must be a number and cannot be blank.": "Maksymalny wiek musi być wartością liczbową oraz nie może być pusty.",
|
||||
"The maximum time to keep a version (in days, set to 0 to keep versions forever).": "Maksymalny czas zachowania wersji (w dniach; ustaw na 0, aby zachować na zawsze).",
|
||||
"The number of days must be a number and cannot be blank.": "Liczba dni musi być wartością liczbową oraz nie może być pusta.",
|
||||
"The number of days to keep files in the trash can. Zero means forever.": "Liczba dni, przez które pliki trzymane będą w koszu. Zero oznacza nieskończoność.",
|
||||
"The number of old versions to keep, per file.": "Liczba starszych wersji do zachowania, dla pojedynczego pliku.",
|
||||
"The number of versions must be a number and cannot be blank.": "Liczba wersji musi być wartością liczbową oraz nie może być pusta.",
|
||||
"The path cannot be blank.": "Ścieżka nie może być pusta.",
|
||||
"The rate limit must be a non-negative number (0: no limit)": "Ograniczenie prędkości musi być nieujemną liczbą (0: brak ograniczeń)",
|
||||
"The rate limit must be a non-negative number (0: no limit)": "Ograniczenie prędkości musi być nieujemną wartością liczbową (0: brak ograniczeń)",
|
||||
"The rescan interval must be a non-negative number of seconds.": "Przedział czasowy ponownego skanowania musi być nieujemną liczbą sekund.",
|
||||
"There are no devices to share this folder with.": "Brak urządzeń, z którymi możesz współdzielić ten folder.",
|
||||
"There are no folders to share with this device.": "Brak folderów, które możesz współdzielić z tym urządzeniem.",
|
||||
"They are retried automatically and will be synced when the error is resolved.": "Ponowne próby zachodzą automatycznie. Synchronizacja nastąpi po usunięciu błędu.",
|
||||
"There are no devices to share this folder with.": "Brak urządzeń, z którymi można współdzielić ten folder.",
|
||||
"There are no folders to share with this device.": "Brak folderów, które można współdzielić z tym urządzeniem.",
|
||||
"They are retried automatically and will be synced when the error is resolved.": "Ponowne próby zachodzą automatycznie, a synchronizacja nastąpi po usunięciu błędu.",
|
||||
"This Device": "To urządzenie",
|
||||
"This can easily give hackers access to read and change any files on your computer.": "Może to umożliwić hakerom dostęp do odczytu i zmian dowolnych plików na tym komputerze.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "To urządzenie nie jest w stanie automatycznie odnajdować innych urządzeń oraz ogłaszać swojego adresu, aby mogło ono zostać znalezione przez nie. Tylko urządzenia z adresem ustawionym statycznie są w stanie się połączyć.",
|
||||
@@ -386,7 +390,7 @@
|
||||
"Undecided (will prompt)": "Jeszcze nie zdecydowałem (przypomnij później)",
|
||||
"Unexpected Items": "Elementy nieoczekiwane",
|
||||
"Unexpected items have been found in this folder.": "Znaleziono elementy nieoczekiwane w tym folderze.",
|
||||
"Unignore": "Wyłącz ignorowanie",
|
||||
"Unignore": "Przestań ignorować",
|
||||
"Unknown": "Nieznany",
|
||||
"Unshared": "Niewspółdzielony",
|
||||
"Unshared Devices": "Niewspółdzielone urządzenia",
|
||||
@@ -402,7 +406,7 @@
|
||||
"Usage reporting is always enabled for candidate releases.": "Statystyki użycia są zawsze włączone dla wydań kandydujących.",
|
||||
"Use HTTPS for GUI": "Użyj HTTPS dla GUI",
|
||||
"Use notifications from the filesystem to detect changed items.": "Używaj powiadomień systemu plików do wykrywania zmienionych elementów.",
|
||||
"Username/Password has not been set for the GUI authentication. Please consider setting it up.": "Użytkownik i hasło do uwierzytelniania GUI nie zostały skonfigurowane. Zastanów się nad ich ustawieniem.",
|
||||
"Username/Password has not been set for the GUI authentication. Please consider setting it up.": "Nazwa użytkownika i hasło do uwierzytelniania GUI nie zostały skonfigurowane. Zastanów się nad ich ustawieniem.",
|
||||
"Version": "Wersja",
|
||||
"Versions": "Wersje",
|
||||
"Versions Path": "Ścieżka wersji",
|
||||
@@ -411,16 +415,16 @@
|
||||
"Waiting to Scan": "Oczekiwanie na skanowanie",
|
||||
"Waiting to Sync": "Oczekiwanie na synchronizację",
|
||||
"Warning": "Uwaga",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolder%}\".": "Uwaga, ta ścieżka to nadkatalog istniejącego folderu \"{{otherFolder}}\".",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "Uwaga, ta ścieżka to nadkatalog istniejącego folderu \"{{otherFolderLabel}}\" ({{otherFolder}}).",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolder%}\".": "Uwaga, ta ścieżka to podkatalog istniejącego folderu \"{{otherFolder}}\".",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "Uwaga, ten folder to podkatalog istniejącego folderu \"{{otherFolderLabel}}\" ({{otherFolder}}).",
|
||||
"Warning: If you are using an external watcher like {%syncthingInotify%}, you should make sure it is deactivated.": "Uwaga: Jeżeli korzystasz z zewnętrznego obserwatora, takiego jak {{syncthingInotify}}, upewnij się, że ta opcja jest wyłączona.",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolder%}\".": "Uwaga: ta ścieżka to nadkatalog istniejącego folderu \"{{otherFolder}}\".",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "Uwaga: ta ścieżka to nadkatalog istniejącego folderu \"{{otherFolderLabel}}\" ({{otherFolder}}).",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolder%}\".": "Uwaga: ta ścieżka to podkatalog istniejącego folderu \"{{otherFolder}}\".",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "Uwaga: ten folder to podkatalog istniejącego folderu \"{{otherFolderLabel}}\" ({{otherFolder}}).",
|
||||
"Warning: If you are using an external watcher like {%syncthingInotify%}, you should make sure it is deactivated.": "Uwaga: jeżeli korzystasz z zewnętrznego obserwatora, takiego jak {{syncthingInotify}}, upewnij się, że ta opcja jest wyłączona.",
|
||||
"Watch for Changes": "Obserwuj zmiany",
|
||||
"Watching for Changes": "Obserwowanie zmian",
|
||||
"Watching for changes discovers most changes without periodic scanning.": "Obserwowanie wykrywa większość zmian bez potrzeby okresowego skanowania.",
|
||||
"When adding a new device, keep in mind that this device must be added on the other side too.": "Gdy dodajesz nowe urządzenie pamiętaj, że to urządzenie musi zostać dodane także po drugiej stronie.",
|
||||
"When adding a new folder, keep in mind that the Folder ID is used to tie folders together between devices. They are case sensitive and must match exactly between all devices.": "Gdy dodajesz nowy folder pamiętaj, że ID folderu używane jest do łączenia folderów pomiędzy urządzeniami. Wielkość liter ma znaczenie i musi ono być identyczne na wszystkich urządzeniach.",
|
||||
"When adding a new device, keep in mind that this device must be added on the other side too.": "Dodając nowe urządzenie pamiętaj, że musi ono zostać dodane także po drugiej stronie.",
|
||||
"When adding a new folder, keep in mind that the Folder ID is used to tie folders together between devices. They are case sensitive and must match exactly between all devices.": "Dodając nowy folder pamiętaj, że numer ID jest używany do parowania folderów pomiędzy urządzeniami. Wielkość liter ma znaczenie i musi on być identyczny na wszystkich urządzeniach.",
|
||||
"Yes": "Tak",
|
||||
"You can also select one of these nearby devices:": "Możesz również wybrać jedno z pobliskich urządzeń:",
|
||||
"You can change your choice at any time in the Settings dialog.": "Możesz zmienić swój wybór w dowolnej chwili w oknie Ustawień.",
|
||||
@@ -436,7 +440,11 @@
|
||||
"full documentation": "pełna dokumentacja",
|
||||
"items": "elementy",
|
||||
"seconds": "sekundy",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} chce współdzielić folder \"{{folder}}\"",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} chce współdzielić folder \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} może ponownie wprowadzić to urządzenie."
|
||||
"theme-name-black": "Czarny",
|
||||
"theme-name-dark": "Ciemny",
|
||||
"theme-name-default": "Domyślny",
|
||||
"theme-name-light": "Jasny",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "Urządzenie {{device}} chce współdzielić folder \"{{folder}}\"",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "Urządzenie {{device}} chce współdzielić folder \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "Urządzenie {{reintroducer}} może ponownie wprowadzić to urządzenie."
|
||||
}
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Adicionar pasta",
|
||||
"Add Remote Device": "Adicionar dispositivo remoto",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Adicionar dispositivos do introdutor à sua lista de dispositivos para pastas compartilhadas mutualmente.",
|
||||
"Add ignore patterns": "Adicionar padrões de exclusão",
|
||||
"Add new folder?": "Adicionar nova pasta?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Além disso, o intervalo de nova verificação será aumentado (vezes 60, ou seja, novo padrão de 1h). Você também pode configurá-lo manualmente para cada pasta depois de escolher Não.",
|
||||
"Address": "Endereço",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Permitir envio de relatórios anônimos de uso?",
|
||||
"Allowed Networks": "Redes permitidas",
|
||||
"Alphabetic": "Alfabética",
|
||||
"Altered by ignoring deletes.": "Alterado ignorando exclusões.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Um comando externo controla o controle de versão. Tem que remover o arquivo da pasta compartilhada. Se o caminho para o aplicativo contiver espaços, ele deve ser colocado entre aspas.",
|
||||
"Anonymous Usage Reporting": "Relatórios anônimos de uso",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "O formato do relatório anônimo de uso mudou. Gostaria de usar o formato novo?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignorar",
|
||||
"Ignore Patterns": "Filtros",
|
||||
"Ignore Permissions": "Ignorar permissões",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Padrões de exclusão só podem ser adicionados depois de criar a pasta. Se esta opção estiver marcada, depois de gravar será apresentado um campo para escrever os padrões de exclusão.",
|
||||
"Ignored Devices": "Dispositivos ignorados",
|
||||
"Ignored Folders": "Pastas ignoradas",
|
||||
"Ignored at": "Ignorada em",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Selecione as pastas a serem compartilhadas com este dispositivo.",
|
||||
"Send & Receive": "Envia e recebe",
|
||||
"Send Only": "Somente envia",
|
||||
"Set Ignores on Added Folder": "Definir padrões de exclusão na pasta adicionada",
|
||||
"Settings": "Configurações",
|
||||
"Share": "Compartilhar",
|
||||
"Share Folder": "Compartilhar pasta",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "documentação completa",
|
||||
"items": "itens",
|
||||
"seconds": "segundos",
|
||||
"theme-name-black": "Preto",
|
||||
"theme-name-dark": "Escuro",
|
||||
"theme-name-default": "Padrão",
|
||||
"theme-name-light": "Claro",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} quer compartilhar a pasta \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} quer compartilhar a pasta \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} pode reintroduzir este dispositivo."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Adicionar pasta",
|
||||
"Add Remote Device": "Adicionar dispositivo remoto",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Adicione dispositivos do apresentador à nossa lista de dispositivos para ter pastas mutuamente partilhadas.",
|
||||
"Add ignore patterns": "Adicionar padrões de exclusão",
|
||||
"Add new folder?": "Adicionar nova pasta?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Para além disso o intervalo entre verificações completas irá ser aumentado (vezes 60, ou seja, um novo valor predefinido de 1h). Também o pode configurar manualmente para cada pasta, posteriormente, depois de seleccionar Não.",
|
||||
"Address": "Endereço",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Permitir envio de relatórios anónimos de utilização?",
|
||||
"Allowed Networks": "Redes permitidas",
|
||||
"Alphabetic": "Alfabética",
|
||||
"Altered by ignoring deletes.": "Alterado por terem sido ignoradas as eliminações.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Um comando externo controla as versões. Esse comando tem que remover o ficheiro da pasta partilhada. Se o caminho para a aplicação contiver espaços, então terá de o escrever entre aspas.",
|
||||
"Anonymous Usage Reporting": "Enviar relatórios anónimos de utilização",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "O formato do relatório anónimo de utilização foi alterado. Gostaria de mudar para o novo formato?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignorar",
|
||||
"Ignore Patterns": "Padrões de exclusão",
|
||||
"Ignore Permissions": "Ignorar permissões",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Padrões de exclusão só podem ser adicionados depois de criar a pasta. Se esta opção estiver marcada, depois de gravar será apresentado um campo para escrever os padrões de exclusão.",
|
||||
"Ignored Devices": "Dispositivos ignorados",
|
||||
"Ignored Folders": "Pastas ignoradas",
|
||||
"Ignored at": "Ignorado em",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Seleccione as pastas a partilhar com este dispositivo.",
|
||||
"Send & Receive": "envia e recebe",
|
||||
"Send Only": "envia apenas",
|
||||
"Set Ignores on Added Folder": "Definir padrões de exclusão na pasta adicionada",
|
||||
"Settings": "Configurações",
|
||||
"Share": "Partilhar",
|
||||
"Share Folder": "Partilhar pasta",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "documentação completa",
|
||||
"items": "itens",
|
||||
"seconds": "segundos",
|
||||
"theme-name-black": "Preto",
|
||||
"theme-name-dark": "Escuro",
|
||||
"theme-name-default": "Predefinido",
|
||||
"theme-name-light": "Claro",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} quer partilhar a pasta \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} quer partilhar a pasta \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} poderá reintroduzir este dispositivo."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Adaugă Mapă",
|
||||
"Add Remote Device": "Adaugă dispozitiv la distanță",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Adăugați dispozitive de la introductor la lista dispozitivelor noastre, pentru folderele partajate reciproc.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Adauga o mapă nouă?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "În plus, intervalul complet de rescanare va fi mărit (de 60 de ori, adică noul implict de 1 oră). Puteți, de asemenea, să o configurați manual pentru fiecare dosar mai târziu după alegerea nr.",
|
||||
"Address": "Adresă",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Permiteţi raportarea anonimă de folosire a aplicaţiei?",
|
||||
"Allowed Networks": "Rețele permise",
|
||||
"Alphabetic": "Alfabetic",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "O comandă externă gestionează versiunea. Trebuie să elimine fișierul din folderul partajat. Dacă calea către aplicație conține spații, ar trebui să fie pusă între ghilimele.",
|
||||
"Anonymous Usage Reporting": "Raport Anonim despre Folosirea Aplicației",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Formatul raportului de utilizare anonim s-a schimbat. Doriți să vă mutați în noul format?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignoră",
|
||||
"Ignore Patterns": "Reguli de excludere",
|
||||
"Ignore Permissions": "Ignoră Permisiuni",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ignored Devices",
|
||||
"Ignored Folders": "Ignored Folders",
|
||||
"Ignored at": "Ignored at",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Alege mapele pe care vrei sa le imparți cu acest dispozitiv.",
|
||||
"Send & Receive": "Send & Receive",
|
||||
"Send Only": "Send Only",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Setări",
|
||||
"Share": "Împarte",
|
||||
"Share Folder": "Împarte Mapa",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "toată documentaţia",
|
||||
"items": "obiecte",
|
||||
"seconds": "seconds",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{Dispozitivul}} vrea să transmită mapa {{Mapa}}",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} wants to share folder \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Добавить папку",
|
||||
"Add Remote Device": "Добавить удалённое устройство",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Добавлять устройства, известные рекомендателю, в список устройств, если есть общие с ними папки.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Добавить новую папку?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Также будет увеличен интервал полного сканирования (в 60 раз, т.е. новое значение - 1 час). Вы можете вручную настроить интервал для каждой папки, выбрав \"Нет\".",
|
||||
"Address": "Адрес",
|
||||
@@ -22,16 +23,17 @@
|
||||
"Allow Anonymous Usage Reporting?": "Разрешить анонимный отчет об использовании?",
|
||||
"Allowed Networks": "Разрешённые сети",
|
||||
"Alphabetic": "По алфавиту",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Для версионирования используется внешняя программа. Ей нужно удалить файл из общей папки. Если путь к приложению содержит пробелы, его нужно взять в кавычки.",
|
||||
"Anonymous Usage Reporting": "Анонимный отчет об использовании",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Формат анонимных отчётов изменился. Хотите переключиться на новый формат?",
|
||||
"Are you sure you want to continue?": "Уверены, что хотите продолжить?",
|
||||
"Are you sure you want to override all remote changes?": "Are you sure you want to override all remote changes?",
|
||||
"Are you sure you want to override all remote changes?": "Уверены, что хотите перезаписать все удалённые изменения?",
|
||||
"Are you sure you want to permanently delete all these files?": "Уверены, что хотите навсегда удалить эти файлы?",
|
||||
"Are you sure you want to remove device {%name%}?": "Уверены, что хотите удалить устройство {{name}}?",
|
||||
"Are you sure you want to remove folder {%label%}?": "Уверены, что хотите удалить папку {{label}}?",
|
||||
"Are you sure you want to restore {%count%} files?": "Уверены, что хотите восстановить {{count}} файлов?",
|
||||
"Are you sure you want to revert all local changes?": "Are you sure you want to revert all local changes?",
|
||||
"Are you sure you want to revert all local changes?": "Уверены, что хотите отменить все локальные изменения?",
|
||||
"Are you sure you want to upgrade?": "Уверены, что хотите обновить?",
|
||||
"Auto Accept": "Автопринятие",
|
||||
"Automatic Crash Reporting": "Автоматическая отправка отчётов о сбоях",
|
||||
@@ -48,7 +50,7 @@
|
||||
"Cleaning Versions": "Очистка Версий",
|
||||
"Cleanup Interval": "Интервал очистки",
|
||||
"Click to see discovery failures": "Щёлкните, чтобы посмотреть ошибки",
|
||||
"Click to see full identification string and QR code.": "Click to see full identification string and QR code.",
|
||||
"Click to see full identification string and QR code.": "Нажмите, чтобы увидеть полную строку идентификации и QR код.",
|
||||
"Close": "Закрыть",
|
||||
"Command": "Команда",
|
||||
"Comment, when used at the start of a line": "Комментарий, если используется в начале строки",
|
||||
@@ -98,9 +100,9 @@
|
||||
"Discovered": "Обнаружено",
|
||||
"Discovery": "Обнаружение",
|
||||
"Discovery Failures": "Ошибки обнаружения",
|
||||
"Discovery Status": "Discovery Status",
|
||||
"Discovery Status": "Статус обнаружения",
|
||||
"Dismiss": "Отклонить",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Do not add it to the ignore list, so this notification may recur.",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Не добавлять в список игнорирования, это уведомление может повториться.",
|
||||
"Do not restore": "Не восстанавливать",
|
||||
"Do not restore all": "Не восстанавливать все",
|
||||
"Do you want to enable watching for changes for all your folders?": "Хотите включить слежение за изменениями для всех своих папок?",
|
||||
@@ -126,7 +128,7 @@
|
||||
"Error": "Ошибка",
|
||||
"External File Versioning": "Внешний контроль версий файлов",
|
||||
"Failed Items": "Сбои",
|
||||
"Failed to load ignore patterns.": "Failed to load ignore patterns.",
|
||||
"Failed to load ignore patterns.": "Не удалось загрузить шаблоны игнорирования.",
|
||||
"Failed to setup, retrying": "Не удалось настроить, пробуем ещё",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "Если нет IPv6-соединений, при подключении к IPv6-серверам произойдёт ошибка.",
|
||||
"File Pull Order": "Порядок получения файлов",
|
||||
@@ -162,12 +164,13 @@
|
||||
"Help": "Помощь",
|
||||
"Home page": "Сайт",
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "Ваши настройки указывают что вы не хотите, чтобы эта функция была включена. Мы отключили отправку отчетов о сбоях.",
|
||||
"Identification": "Identification",
|
||||
"Identification": "Идентификация",
|
||||
"If untrusted, enter encryption password": "Если ненадёжное, укажите пароль шифрования",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "Если вы хотите запретить другим пользователям на этом компьютере доступ к Syncthing и через него к вашим файлам, подумайте о настройке аутентификации.",
|
||||
"Ignore": "Игнорировать",
|
||||
"Ignore Patterns": "Шаблоны игнорирования",
|
||||
"Ignore Permissions": "Игнорировать файловые права доступа",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Игнорируемые устройства",
|
||||
"Ignored Folders": "Игнорируемые папки",
|
||||
"Ignored at": "Добавлено",
|
||||
@@ -184,8 +187,8 @@
|
||||
"Latest Change": "Последнее изменение",
|
||||
"Learn more": "Узнать больше",
|
||||
"Limit": "Ограничение",
|
||||
"Listener Failures": "Listener Failures",
|
||||
"Listener Status": "Listener Status",
|
||||
"Listener Failures": "Ошибки прослушивателя",
|
||||
"Listener Status": "Статус прослушивателя",
|
||||
"Listeners": "Прослушиватель",
|
||||
"Loading data...": "Загрузка данных...",
|
||||
"Loading...": "Загрузка...",
|
||||
@@ -224,7 +227,7 @@
|
||||
"Out of Sync": "Нет синхронизации",
|
||||
"Out of Sync Items": "Несинхронизированные элементы",
|
||||
"Outgoing Rate Limit (KiB/s)": "Ограничение исходящей скорости (КиБ/с)",
|
||||
"Override": "Override",
|
||||
"Override": "Перезаписать",
|
||||
"Override Changes": "Перезаписать изменения",
|
||||
"Path": "Путь",
|
||||
"Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "Путь к папке на локальном компьютере. Если её не существует, то она будет создана. Тильда (~) может использоваться как сокращение для",
|
||||
@@ -238,7 +241,7 @@
|
||||
"Periodic scanning at given interval and disabled watching for changes": "Периодическое сканирование с заданным интервалом, отслеживание изменений отключено",
|
||||
"Periodic scanning at given interval and enabled watching for changes": "Периодическое сканирование с заданным интервалом и включено отслеживание изменений",
|
||||
"Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:": "Периодическое сканирование с заданным интервалом, не удалось включить отслеживание изменений, повторная попытка каждую минуту.",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Permanently add it to the ignore list, suppressing further notifications.",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Добавление в список игнорирования навсегда с подавлением будущих уведомлений.",
|
||||
"Permissions": "Разрешения",
|
||||
"Please consult the release notes before performing a major upgrade.": "Перед проведением обновления основной версии ознакомьтесь, пожалуйста, с замечаниями к версии",
|
||||
"Please set a GUI Authentication User and Password in the Settings dialog.": "Установите имя пользователя и пароль для интерфейса в настройках",
|
||||
@@ -258,7 +261,7 @@
|
||||
"Release Notes": "Примечания к выпуску",
|
||||
"Release candidates contain the latest features and fixes. They are similar to the traditional bi-weekly Syncthing releases.": "Кандидаты в релизы содержат последние улучшения и исправления. Они похожи на традиционные двухнедельные выпуски Syncthing.",
|
||||
"Remote Devices": "Удалённые устройства",
|
||||
"Remote GUI": "Удаленный GUI",
|
||||
"Remote GUI": "Удалённый GUI",
|
||||
"Remove": "Удалить",
|
||||
"Remove Device": "Удалить устройство",
|
||||
"Remove Folder": "Удалить папку",
|
||||
@@ -274,7 +277,7 @@
|
||||
"Resume": "Возобновить",
|
||||
"Resume All": "Возобновить все",
|
||||
"Reused": "Повторно использовано",
|
||||
"Revert": "Revert",
|
||||
"Revert": "Обратить",
|
||||
"Revert Local Changes": "Отменить изменения на этом компьютере",
|
||||
"Save": "Сохранить",
|
||||
"Scan Time Remaining": "Оставшееся время сканирования",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Выберите папки, которые будут доступны этому устройству.",
|
||||
"Send & Receive": "Отправить и получить",
|
||||
"Send Only": "Только отправить",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Настройки",
|
||||
"Share": "Предоставить доступ",
|
||||
"Share Folder": "Предоставить доступ к папке",
|
||||
@@ -299,8 +303,8 @@
|
||||
"Sharing": "Предоставление доступа",
|
||||
"Show ID": "Показать ID",
|
||||
"Show QR": "Показать QR-код",
|
||||
"Show detailed discovery status": "Show detailed discovery status",
|
||||
"Show detailed listener status": "Show detailed listener status",
|
||||
"Show detailed discovery status": "Показать подробный статус обнаружения",
|
||||
"Show detailed listener status": "Показать подробный статус прослушивателя",
|
||||
"Show diff with previous version": "Показать различия с предыдущей версией",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "Отображается вместо ID устройства в статусе группы. Будет разослан другим устройствам в качестве имени по умолчанию.",
|
||||
"Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.": "Отображается вместо ID устройства в статусе группы. Если поле не заполнено, то будет установлено имя, передаваемое этим устройством.",
|
||||
@@ -310,9 +314,9 @@
|
||||
"Single level wildcard (matches within a directory only)": "Одноуровневая маска (поиск совпадений только внутри папки)",
|
||||
"Size": "Размер",
|
||||
"Smallest First": "Сначала маленькие",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "Some discovery methods could not be established for finding other devices or announcing this device:",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "Некоторые методы обнаружения не могут быть использованы для поиска других устройств или анонсирования этого устройства:",
|
||||
"Some items could not be restored:": "Не удалось восстановить некоторые объекты:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Some listening addresses could not be enabled to accept connections:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Некоторые адреса для прослушивания не могут быть активированы для приёма соединений:",
|
||||
"Source Code": "Исходный код",
|
||||
"Stable releases and release candidates": "Стабильные выпуски и кандидаты в релизы",
|
||||
"Stable releases are delayed by about two weeks. During this time they go through testing as release candidates.": "Стабильные выпуски выходят с задержкой около двух недель. За это время они проходят тестирование в качестве кандидатов в релизы.",
|
||||
@@ -329,8 +333,8 @@
|
||||
"Syncthing has been shut down.": "Syncthing был выключен.",
|
||||
"Syncthing includes the following software or portions thereof:": "Syncthing включает в себя следующее ПО или его части:",
|
||||
"Syncthing is Free and Open Source Software licensed as MPL v2.0.": "Syncthing — свободное программное обеспечение с открытым кодом под лицензией MPL v2.0.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing is listening on the following network addresses for connection attempts from other devices:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing ожидает подключения от других устройств на следующих сетевых адресах:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing не ожидает попыток подключения ни на каких адресах. Только исходящие подключения могут работать на этом устройстве.",
|
||||
"Syncthing is restarting.": "Перезапуск Syncthing.",
|
||||
"Syncthing is upgrading.": "Обновление Syncthing.",
|
||||
"Syncthing now supports automatically reporting crashes to the developers. This feature is enabled by default.": "Syncthing теперь поддерживает автоматическую отправку отчетов о сбоях разработчикам. Эта функция включена по умолчанию.",
|
||||
@@ -355,7 +359,7 @@
|
||||
"The following intervals are used: for the first hour a version is kept every 30 seconds, for the first day a version is kept every hour, for the first 30 days a version is kept every day, until the maximum age a version is kept every week.": "Используются следующие интервалы: в первый час версия меняется каждые 30 секунд, в первый день - каждый час, первые 30 дней - каждый день, после, до максимального срока - каждую неделю.",
|
||||
"The following items could not be synchronized.": "Невозможно синхронизировать следующие объекты",
|
||||
"The following items were changed locally.": "Следующие объекты были изменены локально",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "The following methods are used to discover other devices on the network and announce this device to be found by others:",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "Для обнаружения других устройств в сети и анонсирования этого устройства используются следующие методы:",
|
||||
"The following unexpected items were found.": "Были найдены следующие объекты.",
|
||||
"The interval must be a positive number of seconds.": "Интервал секунд должен быть положительным.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "Интервал в секундах для запуска очистки в каталоге версий. Ноль, чтобы отключить периодическую очистку.",
|
||||
@@ -373,7 +377,7 @@
|
||||
"They are retried automatically and will be synced when the error is resolved.": "Будут синхронизированы автоматически когда ошибка будет исправлена.",
|
||||
"This Device": "Это устройство",
|
||||
"This can easily give hackers access to read and change any files on your computer.": "Это может дать доступ хакерам для чтения и изменения любых файлов на вашем компьютере.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "Это устройство не может автоматически обнаруживать другие устройства или анонсировать свой адрес для обнаружения извне. Только устройства со статически заданными адресами могут подключиться.",
|
||||
"This is a major version upgrade.": "Это обновление основной версии продукта.",
|
||||
"This setting controls the free space required on the home (i.e., index database) disk.": "Эта настройка управляет свободным местом, необходимым на домашнем диске (например, для базы индексов).",
|
||||
"Time": "Время",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "полная документация",
|
||||
"items": "элементы",
|
||||
"seconds": "сек.",
|
||||
"theme-name-black": "Чёрная",
|
||||
"theme-name-dark": "Тёманя",
|
||||
"theme-name-default": "По умолчанию",
|
||||
"theme-name-light": "Светлая",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} хочет поделиться папкой «{{folder}}».",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} хочет поделиться папкой «{{folderlabel}}» ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} может повторно рекомендовать это устройство."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Pridať adresár",
|
||||
"Add Remote Device": "Pridať vzdialené zariadenie",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Pre vzájomne zdieľané adresáre pridaj zariadenie od zavádzača do svojho zoznamu zariadení.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Pridať nový adresár?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Navyše, interval plného skenovania bude navýšený (60krát, t.j. nová výchozia hodnota 1h). Môžete to nastaviť aj manuálne pre každý adresár ak zvolíte Nie.",
|
||||
"Address": "Adresa",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Povoliť anoynmné hlásenia o použivaní?",
|
||||
"Allowed Networks": "Povolené siete",
|
||||
"Alphabetic": "Abecedne",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.",
|
||||
"Anonymous Usage Reporting": "Anonymné hlásenie o používaní",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Formát anonymného hlásenia o používaní sa zmenil. Chcete prejsť na nový formát?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ignorovať",
|
||||
"Ignore Patterns": "Ignorované vzory",
|
||||
"Ignore Permissions": "Ignorované práva",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ignorované zariadenia",
|
||||
"Ignored Folders": "Ingorované priečinky",
|
||||
"Ignored at": "Ignorované na",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Vyberte adresáre ktoré chcete zdieľať s týmto zariadením.",
|
||||
"Send & Receive": "Prijímať a odosielať",
|
||||
"Send Only": "Iba odosielať",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Nastavenia",
|
||||
"Share": "Zdieľať",
|
||||
"Share Folder": "Zdieľať adresár",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "úplná dokumntácia",
|
||||
"items": "položiek",
|
||||
"seconds": "sekúnd",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} chce zdieľať adresár \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} chce zdieľať adresár \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
450
gui/default/assets/lang/lang-sl.json
Normal file
450
gui/default/assets/lang/lang-sl.json
Normal file
@@ -0,0 +1,450 @@
|
||||
{
|
||||
"A device with that ID is already added.": "Naprava z istim ID-jem že obstaja.",
|
||||
"A negative number of days doesn't make sense.": "Negativno število dni nima smisla.",
|
||||
"A new major version may not be compatible with previous versions.": "Nova glavna različica morda ni združljiva s prejšnjimi različicami. ",
|
||||
"API Key": "Ključ API",
|
||||
"About": "O sistemu ...",
|
||||
"Action": "Dejanje",
|
||||
"Actions": "Dejanja",
|
||||
"Add": "Dodaj",
|
||||
"Add Device": "Dodaj napravo",
|
||||
"Add Folder": "Dodaj mapo",
|
||||
"Add Remote Device": "Dodaj oddaljeno napravo",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Dodajte naprave od uvajalca na naš seznam naprav, za vzajemno deljenje map.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Dodaj novo mapo",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Poleg tega bo celoten interval ponovnega skeniranja se povečal (60 krat, torej nova privzeta vrednost 1 ure). Ti lahko tudi nastaviš si to ročno za vsako mapo pozneje, če ste prej izbrali Ne.",
|
||||
"Address": "Naslov",
|
||||
"Addresses": "Naslovi",
|
||||
"Advanced": "Napredno",
|
||||
"Advanced Configuration": "Napredna konfiguracija",
|
||||
"All Data": "Vsi podatki",
|
||||
"All folders shared with this device must be protected by a password, such that all sent data is unreadable without the given password.": "Vse deljene mape z to napravo morajo biti zaščitena z geslom, tako, da so vsi poslani podatki neberljivi, brez podanega gesla. ",
|
||||
"Allow Anonymous Usage Reporting?": "Ali naj se dovoli brezimno poročanje o uporabi?",
|
||||
"Allowed Networks": "Dovoljena omrežja",
|
||||
"Alphabetic": "Po abecedi",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Zunanji ukaz upravlja z različicami. To mora odstraniti datoteko od deljene mape. Če pot do aplikacije vsebuje presledke, jo postavite v dvojne narekovaje.",
|
||||
"Anonymous Usage Reporting": "Brezimno poročanje o uporabi",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Format anonimnega poročanja uporabe se je spremenil. Ali želite se premakniti na novi format?",
|
||||
"Are you sure you want to continue?": "Ste prepričani, da želite nadaljevati?",
|
||||
"Are you sure you want to override all remote changes?": "Ali ste prepričani, da želite preglasiti vse oddaljene spremembe?",
|
||||
"Are you sure you want to permanently delete all these files?": "Ste prepričani, da želite trajno izbrisati datoteke?",
|
||||
"Are you sure you want to remove device {%name%}?": "Ste prepričani, da želite odstraniti napravo {{name}}?",
|
||||
"Are you sure you want to remove folder {%label%}?": "Ste prepričani, da želite odstraniti mapo {{label}}?",
|
||||
"Are you sure you want to restore {%count%} files?": "Ste prepričani, da želite obnoviti {{count}} datotek?",
|
||||
"Are you sure you want to revert all local changes?": "Ste prepričani, da želite povrniti vse lokalne spremembe?",
|
||||
"Are you sure you want to upgrade?": "Ali ste prepričani, da želite nadgraditi?",
|
||||
"Auto Accept": "Samodejno sprejmi",
|
||||
"Automatic Crash Reporting": "Avtomatsko poročanje o sesutju",
|
||||
"Automatic upgrade now offers the choice between stable releases and release candidates.": "Samodejna nadgradnja zdaj ponuja izbiro med stabilnimi izdajami in kandidati za izdajo.",
|
||||
"Automatic upgrades": "Avtomatično posodabljanje",
|
||||
"Automatic upgrades are always enabled for candidate releases.": "Samodejne nadgradnje so vedno omogočene za kandidatne izdaje.",
|
||||
"Automatically create or share folders that this device advertises at the default path.": "Samodejno ustvarite ali delite mape, ki jih ta naprava oglašuje na privzeti poti.",
|
||||
"Available debug logging facilities:": "Razpoložljive naprave za beleženje napak:",
|
||||
"Be careful!": "Previdno!",
|
||||
"Bugs": "Hrošči",
|
||||
"Cancel": "Prekliči",
|
||||
"Changelog": "Spremembe",
|
||||
"Clean out after": "Počisti kasneje",
|
||||
"Cleaning Versions": "Različice za očistiti",
|
||||
"Cleanup Interval": "Interval čiščenja",
|
||||
"Click to see discovery failures": "Pritisnite za ogled napak pri odkrivanju",
|
||||
"Click to see full identification string and QR code.": "Pritisnite, če si želite ogledati celoten identifikacijski niz in QR kodo.",
|
||||
"Close": "Zapri",
|
||||
"Command": "Ukaz",
|
||||
"Comment, when used at the start of a line": "Komentar uporabljen na začetku vrstice",
|
||||
"Compression": "Stisnjeno",
|
||||
"Configured": "Nastavljeno",
|
||||
"Connected (Unused)": "Povezano (neuporabljeno)",
|
||||
"Connection Error": "Napaka povezave",
|
||||
"Connection Type": "Tip povezave",
|
||||
"Connections": "Povezave",
|
||||
"Continuously watching for changes is now available within Syncthing. This will detect changes on disk and issue a scan on only the modified paths. The benefits are that changes are propagated quicker and that less full scans are required.": "Nenehno spremljanje sprememb je zdaj na voljo v Syncthing-u. To bo zaznalo spremembe na disku in izdalo skeniranje samo na spremenjenih poteh. Prednosti so, da se spremembe hitreje širijo in da je potrebnih manj popolnih pregledov.",
|
||||
"Copied from elsewhere": "Prekopirano od drugod.",
|
||||
"Copied from original": "Kopiranje z originala",
|
||||
"Copyright © 2014-2019 the following Contributors:": "Avtorske pravice © 2014-2019 pripadajo naslednjim sodelavcem:",
|
||||
"Creating ignore patterns, overwriting an existing file at {%path%}.": "Ustvarjanje prezrtih vzorcev, prepisovanje obstoječe datoteke na {{path}}.",
|
||||
"Currently Shared With Devices": "Trenutno deljeno z napravami",
|
||||
"Danger!": "Nevarno!",
|
||||
"Debugging Facilities": "Možnosti za odpravljanje napak",
|
||||
"Default Configuration": "Privzeta konfiguracija",
|
||||
"Default Device": "Privzeta naprava",
|
||||
"Default Folder": "Privzeta mapa",
|
||||
"Default Folder Path": "Privzeta pot do mape",
|
||||
"Defaults": "Privzeti",
|
||||
"Delete": "Izbriši",
|
||||
"Delete Unexpected Items": "Izbrišite nepričakovane predmete",
|
||||
"Deleted": "Izbrisana",
|
||||
"Deselect All": "Prekliči vse",
|
||||
"Deselect devices to stop sharing this folder with.": "Prekliči izbiro naprav, z katerimi ne želiš več deliti mape.",
|
||||
"Deselect folders to stop sharing with this device.": "Prekliči mape, da se ne delijo več z to napravo.",
|
||||
"Device": "Naprava",
|
||||
"Device \"{%name%}\" ({%device%} at {%address%}) wants to connect. Add new device?": "Naprava \"{{name}}\" {{device}} na ({{address}}) želi vzpostaviti povezavo. Dodaj novo napravo?",
|
||||
"Device ID": "ID Naprave",
|
||||
"Device Identification": "Identifikacija naprave",
|
||||
"Device Name": "Ime naprave",
|
||||
"Device is untrusted, enter encryption password": "Naprava ni zaupljiva, vnesite geslo za šifriranje",
|
||||
"Device rate limits": "Omejitve hitrosti naprave",
|
||||
"Device that last modified the item": "Naprava, ki je nazadnje spremenila predmet",
|
||||
"Devices": "Naprave",
|
||||
"Disable Crash Reporting": "Onemogoči poročanje o zrušitvah",
|
||||
"Disabled": "Onemogočeno",
|
||||
"Disabled periodic scanning and disabled watching for changes": "Onemogočeno občasno skeniranje in onemogočeno spremljanje sprememb",
|
||||
"Disabled periodic scanning and enabled watching for changes": "Onemogočeno občasno skeniranje in omogočeno spremljanje sprememb",
|
||||
"Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:": "Onemogočeno periodično skeniranje in neuspešna nastavitev opazovanja sprememb, ponovni poskus vsake 1 minute:",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "Onemogoči primerjavo in sinhronizacijo dovoljenj za datoteke. Uporabno v sistemih z neobstoječimi dovoljenji ali dovoljenji po meri (npr. FAT, exFAT, Synology, Android).",
|
||||
"Discard": "Zavrzi",
|
||||
"Disconnected": "Brez povezave",
|
||||
"Disconnected (Unused)": "Ni povezave (neuporabljeno)",
|
||||
"Discovered": "Odkrito",
|
||||
"Discovery": "Odkritje",
|
||||
"Discovery Failures": "Napake odkritja",
|
||||
"Discovery Status": "Stanje odkritja",
|
||||
"Dismiss": "Opusti",
|
||||
"Do not add it to the ignore list, so this notification may recur.": "Ne dodajte to na seznam prezrtih, tako, da se obvestilo lahko ponovi.",
|
||||
"Do not restore": "Ne obnovi",
|
||||
"Do not restore all": "Ne obnovi vse",
|
||||
"Do you want to enable watching for changes for all your folders?": "Ali želite omogočiti spremljanje sprememb za vse svoje mape?",
|
||||
"Documentation": "Dokumentacija",
|
||||
"Download Rate": "Hitrost prejemanja",
|
||||
"Downloaded": "Prenešeno",
|
||||
"Downloading": "Prenašanje",
|
||||
"Edit": "Uredi",
|
||||
"Edit Device": "Uredi napravo",
|
||||
"Edit Device Defaults": "Uredi privzete nastavitve naprave",
|
||||
"Edit Folder": "Uredi mapo",
|
||||
"Edit Folder Defaults": "Uredi privzete nastavitve mape",
|
||||
"Editing {%path%}.": "Ureja se {{path}}.",
|
||||
"Enable Crash Reporting": "Omogoči poročanje o zrušitvah",
|
||||
"Enable NAT traversal": "Omogoči NAT prehod",
|
||||
"Enable Relaying": "Omogoči posredovanje",
|
||||
"Enabled": "Omogočeno",
|
||||
"Enter a non-negative number (e.g., \"2.35\") and select a unit. Percentages are as part of the total disk size.": "Vnesite število, katera ni negativno (npr. \"2,35\") in izberite enoto. Odstotki so del celotne velikosti diska.",
|
||||
"Enter a non-privileged port number (1024 - 65535).": "Vnesite neprivilegirano številko omrežnih vrat (1024 - 65535).",
|
||||
"Enter comma separated (\"tcp://ip:port\", \"tcp://host:port\") addresses or \"dynamic\" to perform automatic discovery of the address.": "Vnesi z vejico ločene naslove (\"tcp://ip:port\", \"tcp://host:port\") ali \"dynamic\" za samodejno odkrivanje naslova.",
|
||||
"Enter ignore patterns, one per line.": "Vnesite spregledni vzorec, enega v vrsto",
|
||||
"Enter up to three octal digits.": "Vnesite do tri osmiške števke.",
|
||||
"Error": "Napaka",
|
||||
"External File Versioning": "Zunanje beleženje različic datotek",
|
||||
"Failed Items": "Neuspeli predmeti",
|
||||
"Failed to load ignore patterns.": "Prezrih vzorcev ni bilo mogoče naložiti.",
|
||||
"Failed to setup, retrying": "Nastavitev ni uspela, ponovni poskus",
|
||||
"Failure to connect to IPv6 servers is expected if there is no IPv6 connectivity.": "Neuspeh povezav z IPv6 strežniki je pričakovan, če ni IPv6 povezljivost.",
|
||||
"File Pull Order": "Vrstni red prenosa datotek",
|
||||
"File Versioning": "Beleženje različic datotek",
|
||||
"Files are moved to .stversions directory when replaced or deleted by Syncthing.": "Datoteke so premaknjene v .stversions mapo ob brisanju ali zamenjavi s strani programa Syncthing.",
|
||||
"Files are moved to date stamped versions in a .stversions directory when replaced or deleted by Syncthing.": "Datoteke se premaknejo v datumsko označene različice v mapi .stversions, ko jih zamenja ali izbriše Syncthing.",
|
||||
"Files are protected from changes made on other devices, but changes made on this device will be sent to the rest of the cluster.": "Datoteke so zaščitene pred spremembami z drugih naprav, ampak spremembe narejene na tej napravi bodo poslane na ostale naprave.",
|
||||
"Files are synchronized from the cluster, but any changes made locally will not be sent to other devices.": "Datoteke se sinhronizirajo iz gruče, vendar vse spremembe, narejene lokalno, ne bodo poslane drugim napravam.",
|
||||
"Filesystem Watcher Errors": "Napake opazovalca datotečnega sistema",
|
||||
"Filter by date": "Filtriraj po datumu",
|
||||
"Filter by name": "Filtriraj po imenu",
|
||||
"Folder": "Mapa",
|
||||
"Folder ID": "ID Mape",
|
||||
"Folder Label": "Oznaka mape",
|
||||
"Folder Path": "Pot do mape",
|
||||
"Folder Type": "Vrsta mape",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "Vrsta mape »{{receiveEncrypted}}« je mogoče nastaviti samo ob dodajanju nove mape.",
|
||||
"Folder type \"{%receiveEncrypted%}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.": "Vrste mape »{{receiveEncrypted}}« po dodajanju mape ni mogoče spremeniti. Odstraniti morate mapo, izbrisati ali dešifrirati podatke na disku in ponovno dodati mapo.",
|
||||
"Folders": "Mape",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "Za naslednje mape je prišlo do napake, ko so se začele spremljati spremembe. Se bo ponovno poskusilo vsako minuto, tako da lahko napake kmalu izginejo. Če vztrajajo, poskusite odpraviti osnovno težavo in prosite za pomoč, če ne morete.",
|
||||
"Full Rescan Interval (s)": "Polni interval osveževanja (v sekundah)",
|
||||
"GUI": "Vmesnik",
|
||||
"GUI Authentication Password": "Geslo overjanja vmesnika",
|
||||
"GUI Authentication User": "Uporabniško ime overjanja vmesnika",
|
||||
"GUI Authentication: Set User and Password": "Overjanje za grafični vmesnik: Nastavi uporabnika in geslo",
|
||||
"GUI Listen Address": "Naslov grafičnega vmesnika",
|
||||
"GUI Theme": "Slog grafičnega vmesnika",
|
||||
"General": "Splošno",
|
||||
"Generate": "Ustvari",
|
||||
"Global Discovery": "Splošno odkrivanje",
|
||||
"Global Discovery Servers": "Strežniki splošnega odkrivanja",
|
||||
"Global State": "Stanje odkrivanja",
|
||||
"Help": "Pomoč",
|
||||
"Home page": "Domača stran",
|
||||
"However, your current settings indicate you might not want it enabled. We have disabled automatic crash reporting for you.": "Vendar pa vaše trenutne nastavitve kažejo, da morda ne želite to omogočiti. Za vas smo onemogočili samodejno poročanje o zrušitvah.",
|
||||
"Identification": "Identifikacija",
|
||||
"If untrusted, enter encryption password": "Če ni zaupanja vreden, vnesite geslo za šifriranje",
|
||||
"If you want to prevent other users on this computer from accessing Syncthing and through it your files, consider setting up authentication.": "Če želite drugim uporabnikom v tem računalniku preprečiti dostop do Syncthinga in prek njega do vaših datotek, razmislite o nastavitvi preverjanja pristnosti.",
|
||||
"Ignore": "Prezri",
|
||||
"Ignore Patterns": "Vzorec preziranja",
|
||||
"Ignore Permissions": "Prezri dovoljenja",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Prezrte naprave",
|
||||
"Ignored Folders": "Prezrte mape",
|
||||
"Ignored at": "Prezrt pri",
|
||||
"Incoming Rate Limit (KiB/s)": "Omejitev nalaganja (KiB/s)",
|
||||
"Incorrect configuration may damage your folder contents and render Syncthing inoperable.": "Nepravilna konfiguracija lahko poškodujejo vsebino vaše mape in povzroči, da Syncthing postane neoperativen.",
|
||||
"Introduced By": "Predstavil",
|
||||
"Introducer": "Uvajalec",
|
||||
"Inversion of the given condition (i.e. do not exclude)": "Inverzija podanega pogoja (primer. ne vključi)",
|
||||
"Keep Versions": "Ohrani različice",
|
||||
"LDAP": "LDAP",
|
||||
"Largest First": "najprej največja",
|
||||
"Last Scan": "Zadnje skeniranje",
|
||||
"Last seen": "Zadnjič videno",
|
||||
"Latest Change": "Najnovejša sprememba",
|
||||
"Learn more": "Nauči se več",
|
||||
"Limit": "Omejitev",
|
||||
"Listener Failures": "Napake vmesnika",
|
||||
"Listener Status": "Stanje vmesnika",
|
||||
"Listeners": "Poslušalci",
|
||||
"Loading data...": "Nalaganje podatkov...",
|
||||
"Loading...": "Nalaganje...",
|
||||
"Local Additions": "Lokalni dodatki",
|
||||
"Local Discovery": "Krajevno odkrivanje",
|
||||
"Local State": "Krajevno stanje",
|
||||
"Local State (Total)": "Krajevno stanje (vsota)",
|
||||
"Locally Changed Items": "Lokalno spremenjeni predmeti",
|
||||
"Log": "Dnevnik",
|
||||
"Log tailing paused. Scroll to the bottom to continue.": "Odvajanje dnevnika je zaustavljeno. Za nadaljevanje se pomaknite do dna.",
|
||||
"Logs": "Dnevniki",
|
||||
"Major Upgrade": "Večja nadgradnja",
|
||||
"Mass actions": "Množične akcije",
|
||||
"Maximum Age": "Največja starost",
|
||||
"Metadata Only": "Samo metapodatki ",
|
||||
"Minimum Free Disk Space": "Minimalen nezaseden prostor na disku",
|
||||
"Mod. Device": "Spremenjeno od naprave",
|
||||
"Mod. Time": "Čas spremembe",
|
||||
"Move to top of queue": "Premakni na vrh čakalne vrste",
|
||||
"Multi level wildcard (matches multiple directory levels)": "Več ravni map (sklada se z več ravni map in podmap)",
|
||||
"Never": "Nikoli",
|
||||
"New Device": "Nova Naprava",
|
||||
"New Folder": "Nova Mapa",
|
||||
"Newest First": "najprej najnovejši",
|
||||
"No": "Ne",
|
||||
"No File Versioning": "Brez beleženja različic datotek",
|
||||
"No files will be deleted as a result of this operation.": "Nobene datoteke se ne bodo izbrisale kot rezultat od te operacije.",
|
||||
"No upgrades": "Nobene posodobitve",
|
||||
"Not shared": "Ni deljeno",
|
||||
"Notice": "Obvestilo",
|
||||
"OK": "V redu",
|
||||
"Off": "Brez",
|
||||
"Oldest First": "Najprej najstarejši",
|
||||
"Optional descriptive label for the folder. Can be different on each device.": "Izbirna opisna oznaka za mapo. Na vsaki napravi je lahko drugačna.",
|
||||
"Options": "Možnosti",
|
||||
"Out of Sync": "Neusklajeno",
|
||||
"Out of Sync Items": "Predmeti izven sinhronizacije",
|
||||
"Outgoing Rate Limit (KiB/s)": "Omejitev prenašanja (KiB/s)",
|
||||
"Override": "Preglasi",
|
||||
"Override Changes": "Prepiši spremembe",
|
||||
"Path": "Pot",
|
||||
"Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "Pot do mape v lokalnem računalniku. Ustvarjeno bo, če ne obstaja. Znak tilde (~) lahko uporabite kot bližnjico za",
|
||||
"Path where new auto accepted folders will be created, as well as the default suggested path when adding new folders via the UI. Tilde character (~) expands to {%tilde%}.": "Pot, kjer bodo ustvarjene nove samodejno sprejete mape, kot tudi privzeta predlagana pot pri dodajanju novih map prek uporabniškega vmesnika. Znak tilde (~) se razširi na {{tilde}}.",
|
||||
"Path where versions should be stored (leave empty for the default .stversions directory in the shared folder).": "Pot, kjer naj bodo shranjene različice (pustite prazno za privzeto mapo .stversions v mapi skupne rabe).",
|
||||
"Pause": "Premor",
|
||||
"Pause All": "Začasno ustavi vse",
|
||||
"Paused": "V premoru",
|
||||
"Paused (Unused)": "Zaustavljeno (neuporabljeno)",
|
||||
"Pending changes": "Čakajoče spremembe",
|
||||
"Periodic scanning at given interval and disabled watching for changes": "Občasno skeniranje v določenem intervalu in onemogočeno spremljanje sprememb",
|
||||
"Periodic scanning at given interval and enabled watching for changes": "Periodično skeniranje v določenem intervalu in omogočeno spremljanje sprememb",
|
||||
"Periodic scanning at given interval and failed setting up watching for changes, retrying every 1m:": "Periodično skeniranje v določenem intervalu in neuspešna nastavitev spremljanje sprememb, ponovni poskus vsake 1 minute:",
|
||||
"Permanently add it to the ignore list, suppressing further notifications.": "Trajno ga dodajte na seznam prezrtih, tako da preprečite nadaljnja obvestila.",
|
||||
"Permissions": "Dovoljenja",
|
||||
"Please consult the release notes before performing a major upgrade.": "Prosimo, da preverite opombe ob izdaji, preden izvedete nadgradnjo na glavno različico.",
|
||||
"Please set a GUI Authentication User and Password in the Settings dialog.": "Prosimo, nastavite uporabnika in geslo za preverjanje pristnosti grafičnega vmesnika v pozivnem oknu Nastavitve.",
|
||||
"Please wait": "Počakajte ...",
|
||||
"Prefix indicating that the file can be deleted if preventing directory removal": "Predpona, ki označuje, da je datoteko mogoče izbrisati, če preprečuje odstranitev imenika",
|
||||
"Prefix indicating that the pattern should be matched without case sensitivity": "Predpona, ki označuje, da je treba vzorec ujemati brez občutljivosti velikih in malih črk",
|
||||
"Preparing to Sync": "Priprava na sinhronizacijo",
|
||||
"Preview": "Predogled",
|
||||
"Preview Usage Report": "Predogled poročila uporabe",
|
||||
"Quick guide to supported patterns": "Hitri vodnik za podprte vzorce",
|
||||
"Random": "Naključno",
|
||||
"Receive Encrypted": "Prejmi šifrirano",
|
||||
"Receive Only": "Samo prejemanje",
|
||||
"Received data is already encrypted": "Prejeti podatki so že šifrirani",
|
||||
"Recent Changes": "Nedavne spremembe",
|
||||
"Reduced by ignore patterns": "Zmanjšano z ignoriranjem vzorcev",
|
||||
"Release Notes": "Opombe ob izdaji",
|
||||
"Release candidates contain the latest features and fixes. They are similar to the traditional bi-weekly Syncthing releases.": "Kandidati za izdajo vsebujejo najnovejše funkcije in popravke. Podobne so tradicionalnim dvotedenskim izdajam Syncthing.",
|
||||
"Remote Devices": "Oddaljene naprave",
|
||||
"Remote GUI": "Oddaljeni grafični vmesnik",
|
||||
"Remove": "Odstrani",
|
||||
"Remove Device": "Odstranite napravo",
|
||||
"Remove Folder": "Odstranite mapo",
|
||||
"Required identifier for the folder. Must be the same on all cluster devices.": "Zahtevan identifikator za mapo. Biti mora enak na vseh napravah v gruči.",
|
||||
"Rescan": "Ponovno osveži",
|
||||
"Rescan All": "Osveži vse",
|
||||
"Rescans": "Ponovno skeniranje",
|
||||
"Restart": "Ponovno zaženi",
|
||||
"Restart Needed": "Zahtevan je ponovni zagon",
|
||||
"Restarting": "Poteka ponovni zagon",
|
||||
"Restore": "Obnovi",
|
||||
"Restore Versions": "Obnovi različice",
|
||||
"Resume": "Nadaljuj",
|
||||
"Resume All": "Nadaljuj vse",
|
||||
"Reused": "Ponovno uporabi",
|
||||
"Revert": "Povrni",
|
||||
"Revert Local Changes": "Razveljavi lokalne spremembe",
|
||||
"Save": "Shrani",
|
||||
"Scan Time Remaining": "Preostali čas skeniranja",
|
||||
"Scanning": "Osveževanje",
|
||||
"See external versioning help for supported templated command line parameters.": "Oglejte si zunanjo pomoč za urejanje različic za podprte predloge parametrov ukazne vrstice.",
|
||||
"Select All": "Izberi vse",
|
||||
"Select a version": "Izberite različico",
|
||||
"Select additional devices to share this folder with.": "Izberite dodatne naprave za skupno rabo te mape.",
|
||||
"Select additional folders to share with this device.": "Izberite dodatne mape za skupno rabo s to napravo.",
|
||||
"Select latest version": "Izberite najnovejšo različico",
|
||||
"Select oldest version": "Izberite najstarejšo različico",
|
||||
"Select the folders to share with this device.": "Izberi mapo za deljenje z to napravo.",
|
||||
"Send & Receive": "Pošlji in Prejmi",
|
||||
"Send Only": "Samo pošiljanje",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Nastavitve",
|
||||
"Share": "Deli",
|
||||
"Share Folder": "Deli mapo",
|
||||
"Share Folders With Device": "Deli mapo z napravo",
|
||||
"Share this folder?": "Deli to mapo?",
|
||||
"Shared Folders": "Skupne mape",
|
||||
"Shared With": "Usklajeno z",
|
||||
"Sharing": "Skupna raba",
|
||||
"Show ID": "Pokaži ID",
|
||||
"Show QR": "Pokaži QR",
|
||||
"Show detailed discovery status": "Pokaži podroben status odkritja",
|
||||
"Show detailed listener status": "Pokaži podroben status vmesnika",
|
||||
"Show diff with previous version": "Pokaži razliko s prejšnjo različico",
|
||||
"Shown instead of Device ID in the cluster status. Will be advertised to other devices as an optional default name.": "Prikazano namesto ID-ja naprave v stanju gruče. Oglašuje se drugim napravam kot neobvezno privzeto ime.",
|
||||
"Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.": "Prikazano namesto ID-ja naprave v stanju gruče. Če ostane prazno, bo posodobljeno na ime, ki ga oglašuje naprava.",
|
||||
"Shutdown": "Izklopi",
|
||||
"Shutdown Complete": "Izklop končan",
|
||||
"Simple File Versioning": "Enostvno beleženje različic datotek",
|
||||
"Single level wildcard (matches within a directory only)": "Enostopenjski nadomestni znak (ujema se samo v imeniku)",
|
||||
"Size": "Velikost",
|
||||
"Smallest First": "najprej najmanjša",
|
||||
"Some discovery methods could not be established for finding other devices or announcing this device:": "Nekaterih metod odkrivanja ni bilo mogoče vzpostaviti za iskanje drugih naprav ali objavo te naprave:",
|
||||
"Some items could not be restored:": "Nekaterih predmetov ni bilo mogoče obnoviti:",
|
||||
"Some listening addresses could not be enabled to accept connections:": "Nekaterim naslovom za poslušanje ni bilo mogoče omogočiti sprejemanja povezav:",
|
||||
"Source Code": "Izvorna koda",
|
||||
"Stable releases and release candidates": "Stabilne izdaje in kandidati za sprostitev",
|
||||
"Stable releases are delayed by about two weeks. During this time they go through testing as release candidates.": "Stabilne izdaje zamujajo za približno dva tedna. V tem času gredo skozi testiranje kot kandidati za izdajo.",
|
||||
"Stable releases only": "Samo stabilne izdaje",
|
||||
"Staggered File Versioning": "Razporeditveno beleženje različic datotek",
|
||||
"Start Browser": "Zaženi brskalnik",
|
||||
"Statistics": "Statistika",
|
||||
"Stopped": "Zaustavljeno",
|
||||
"Stores and syncs only encrypted data. Folders on all connected devices need to be set up with the same password or be of type \"{%receiveEncrypted%}\" too.": "Shranjuje in sinhronizira samo šifrirane podatke. Mape na vseh povezanih napravah morajo biti nastavljene z istim geslom ali pa morajo biti tudi vrste \"{{receiveEncrypted}}\".",
|
||||
"Support": "Pomoč",
|
||||
"Support Bundle": "Podporni paket",
|
||||
"Sync Protocol Listen Addresses": "Naslovi poslušanja protokola sinhronizacije",
|
||||
"Syncing": "Usklajevanje",
|
||||
"Syncthing has been shut down.": "Program Syncthing je onemogočen.",
|
||||
"Syncthing includes the following software or portions thereof:": "Syncthing vključuje naslednjo programsko opremo ali njene dele:",
|
||||
"Syncthing is Free and Open Source Software licensed as MPL v2.0.": "Syncthing je brezplačna odprtokodna programska oprema, licencirana kot MPL v2.0.",
|
||||
"Syncthing is listening on the following network addresses for connection attempts from other devices:": "Syncthing posluša na naslednjih omrežnih naslovih poskuse povezovanja iz drugih naprav:",
|
||||
"Syncthing is not listening for connection attempts from other devices on any address. Only outgoing connections from this device may work.": "Syncthing ne posluša poskusov povezovanja drugih naprav na katerem koli naslovu. Delujejo lahko samo odhodne povezave iz te naprave.",
|
||||
"Syncthing is restarting.": "Program Syncthing se ponovno zaganja.",
|
||||
"Syncthing is upgrading.": "Program Syncthing se posodablja",
|
||||
"Syncthing now supports automatically reporting crashes to the developers. This feature is enabled by default.": "Syncthing zdaj podpira samodejno poročanje o zrušitvah razvijalcem. Ta funkcija je privzeto omogočena.",
|
||||
"Syncthing seems to be down, or there is a problem with your Internet connection. Retrying…": "Zdi se, da je Syncthing ni delujoč ali pa je prišlo do težave z vašo internetno povezavo. Ponovni poskus …",
|
||||
"Syncthing seems to be experiencing a problem processing your request. Please refresh the page or restart Syncthing if the problem persists.": "Zdi se, da ima Syncthing težave pri obdelavi vaše zahteve. Osvežite stran ali znova zaženite Syncthing, če se težava ponovi.",
|
||||
"Take me back": "Daj me nazaj",
|
||||
"The GUI address is overridden by startup options. Changes here will not take effect while the override is in place.": "Naslov grafičnega vmesnika preglasijo možnosti zagona. Spremembe tukaj ne bodo veljale, dokler je preglasitev v veljavi.",
|
||||
"The Syncthing Authors": "Syncthing avtorji",
|
||||
"The Syncthing admin interface is configured to allow remote access without a password.": "Skrbniški vmesnik Syncthing je konfiguriran tako, da omogoča oddaljeni dostop brez gesla.",
|
||||
"The aggregated statistics are publicly available at the URL below.": "Zbrani statistični podatki so javno dostopni na spodnjem URL-ju.",
|
||||
"The cleanup interval cannot be blank.": "Interval čiščenja ne sme biti prazen.",
|
||||
"The configuration has been saved but not activated. Syncthing must restart to activate the new configuration.": "Konfiguracija je bila shranjena, vendar ni aktivirana. Sinhronizacija se mora znova zagnati, da aktivirate novo konfiguracijo.",
|
||||
"The device ID cannot be blank.": "ID naprave ne more biti prazno.",
|
||||
"The device ID to enter here can be found in the \"Actions > Show ID\" dialog on the other device. Spaces and dashes are optional (ignored).": "ID naprave, ki ga vnesete tukaj, najdete v pozivnem oknu »Dejanja > Pokaži ID« na drugi napravi. Presledki in pomišljaji so neobvezni (prezrti).",
|
||||
"The encrypted usage report is sent daily. It is used to track common platforms, folder sizes and app versions. If the reported data set is changed you will be prompted with this dialog again.": "Poročilo o šifrirani uporabi se pošilja vsak dan. Uporablja se za sledenje običajnih platform, velikosti map in različic aplikacij. Če se sporočeni nabor podatkov spremeni, boste znova pozvani k temu pozivnem oknu.",
|
||||
"The entered device ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "Vneseni ID naprave ni videti veljaven. To mora biti niz z 52 ali 56 znaki, sestavljen iz črk in številk, pri čemer so presledki in pomišljaji neobvezni.",
|
||||
"The folder ID cannot be blank.": "ID mape ne more biti prazno.",
|
||||
"The folder ID must be unique.": "ID mape more biti edinstveno.",
|
||||
"The folder content on other devices will be overwritten to become identical with this device. Files not present here will be deleted on other devices.": "Vsebina mape na drugih napravah bo prepisana, da bo postala identična tej napravi. Datoteke, ki niso tukaj, bodo izbrisane na drugih napravah.",
|
||||
"The folder content on this device will be overwritten to become identical with other devices. Files newly added here will be deleted.": "Vsebina mape na drugih napravah bo prepisana, da bo postala identična tej napravi. Tu na novo dodane datoteke bodo izbrisane.",
|
||||
"The folder path cannot be blank.": "Pot mape ne more biti prazno.",
|
||||
"The following intervals are used: for the first hour a version is kept every 30 seconds, for the first day a version is kept every hour, for the first 30 days a version is kept every day, until the maximum age a version is kept every week.": "Uporabljajo se sledeči intervali: prvo uro se različica hrani vsakih 30 sekund, prvi dan se različica hrani vsako uro, prvih 30 dni se različica hrani vsak dan, do najvišje starosti se različica hrani vsaki teden.",
|
||||
"The following items could not be synchronized.": "Naslednjih predmetov ni bilo mogoče sinhronizirati.",
|
||||
"The following items were changed locally.": "Naslednji predmeti so bili lokalno spremenjeni.",
|
||||
"The following methods are used to discover other devices on the network and announce this device to be found by others:": "Naslednje metode se uporabljajo za odkrivanje drugih naprav v omrežju in oznanitev, da jo najdejo drugi:",
|
||||
"The following unexpected items were found.": "Najdeni so bili naslednji nepričakovani predmeti.",
|
||||
"The interval must be a positive number of seconds.": "Interval mora biti pozitivno število od sekund.",
|
||||
"The interval, in seconds, for running cleanup in the versions directory. Zero to disable periodic cleaning.": "Interval, v sekundah, za zagon čiščenja v mapi različic. 0 za onemogočanje občasnega čiščenja.",
|
||||
"The maximum age must be a number and cannot be blank.": "Najvišja starost mora biti številka in ne sme biti prazno.",
|
||||
"The maximum time to keep a version (in days, set to 0 to keep versions forever).": "Najdaljši čas za shranjevanje različice (v dnevih, nastavite na 0, da se različice ohranijo za vedno).",
|
||||
"The number of days must be a number and cannot be blank.": "Število dni mora biti število in ne more biti prazno.",
|
||||
"The number of days to keep files in the trash can. Zero means forever.": "Število dni kolikor se hranijo datoteke v Smetnjaku. Nič pomeni za zmeraj. ",
|
||||
"The number of old versions to keep, per file.": "Število starejših različic za hrambo na datoteko.",
|
||||
"The number of versions must be a number and cannot be blank.": "Število različic mora biti število in ne more biti prazno.",
|
||||
"The path cannot be blank.": "Pot ne more biti prazna.",
|
||||
"The rate limit must be a non-negative number (0: no limit)": "Omejitev stopnje odzivnosti mora biti nenegativno število (0: brez omejitve)",
|
||||
"The rescan interval must be a non-negative number of seconds.": "Interval skeniranja mora biti pozitivna številka.",
|
||||
"There are no devices to share this folder with.": "Ni naprav za skupno rabo te mape.",
|
||||
"There are no folders to share with this device.": "Ni map za skupno rabo s to napravo.",
|
||||
"They are retried automatically and will be synced when the error is resolved.": "Samodejno se poskuša znova in bo sinhronizirano, ko je napaka odpravljena.",
|
||||
"This Device": "Ta naprava",
|
||||
"This can easily give hackers access to read and change any files on your computer.": "To lahko hekerjem preprosto omogoči dostop do branja in spreminjanja vseh datotek v vašem računalniku.",
|
||||
"This device cannot automatically discover other devices or announce its own address to be found by others. Only devices with statically configured addresses can connect.": "Ta naprava ne more samodejno odkriti drugih naprav ali objaviti svojega naslova, da ga najdejo drugi. Povezujejo se lahko samo naprave s statično konfiguriranimi naslovi.",
|
||||
"This is a major version upgrade.": "To je nadgradnja glavne različice",
|
||||
"This setting controls the free space required on the home (i.e., index database) disk.": "Ta nastavitev nadzoruje prosti prostor potreben na domačem (naprimer, indeksirana podatkovna baza) pogonu.",
|
||||
"Time": "Čas",
|
||||
"Time the item was last modified": "Čas, ko je bil element nazadnje spremenjen",
|
||||
"Trash Can File Versioning": "Beleženje različic datotek s Smetnjakom",
|
||||
"Type": "Vrsta",
|
||||
"UNIX Permissions": "UNIX dovoljenja",
|
||||
"Unavailable": "Ni na voljo",
|
||||
"Unavailable/Disabled by administrator or maintainer": "Ni na voljo/Onemogočeno od administratorja ali vzdrževalca",
|
||||
"Undecided (will prompt)": "Neodločen (bo pozval)",
|
||||
"Unexpected Items": "Nepričakovani predmeti",
|
||||
"Unexpected items have been found in this folder.": "V tej mapi so bili najdeni nepričakovani predmeti.",
|
||||
"Unignore": "Odignoriraj",
|
||||
"Unknown": "Neznano",
|
||||
"Unshared": "Ne deli",
|
||||
"Unshared Devices": "Naprave, ki niso v skupni rabi",
|
||||
"Unshared Folders": "Mape, ki niso v skupni rabi",
|
||||
"Untrusted": "Nezaupno",
|
||||
"Up to Date": "Posodobljeno",
|
||||
"Updated": "Posodobljeno",
|
||||
"Upgrade": "Posodobi",
|
||||
"Upgrade To {%version%}": "Posodobi na različico {{version}}",
|
||||
"Upgrading": "Posodabljanje",
|
||||
"Upload Rate": "Hitrost prejemanja",
|
||||
"Uptime": "Čas delovanja",
|
||||
"Usage reporting is always enabled for candidate releases.": "Poročanje o uporabi je vedno omogočeno za kandidatne izdaje.",
|
||||
"Use HTTPS for GUI": "Uporabi protokol HTTPS za vmesnik",
|
||||
"Use notifications from the filesystem to detect changed items.": "Za odkrivanje spremenjenih elementov uporabite obvestila iz datotečnega sistema.",
|
||||
"Username/Password has not been set for the GUI authentication. Please consider setting it up.": "Uporabniško ime/geslo ni bilo nastavljeno za preverjanje pristnosti na grafičnem vmesniku. Razmislite o nastavitvi.",
|
||||
"Version": "Različica",
|
||||
"Versions": "Različice",
|
||||
"Versions Path": "Pot do različic",
|
||||
"Versions are automatically deleted if they are older than the maximum age or exceed the number of files allowed in an interval.": "Različice se samodejno izbrišejo, če so starejše od najvišje starosti ali presegajo dovoljeno število datotek v intervalu.",
|
||||
"Waiting to Clean": "Čakanje na čiščenje",
|
||||
"Waiting to Scan": "Čakanje na skeniranje",
|
||||
"Waiting to Sync": "Čakanje na sinhronizacijo",
|
||||
"Warning": "Opozorilo",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolder%}\".": "Opozorilo, ta pot je nadrejena mapa obstoječe mape \"{{otherFolder}}\".",
|
||||
"Warning, this path is a parent directory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "Opozorilo, ta pot je nadrejena mapa obstoječe mape \"{{otherFolderLabel}}\" ({{otherFolder}}).",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolder%}\".": "Opozorilo, ta pot je že podmapa obstoječe mape \"{{otherFolder}}\".",
|
||||
"Warning, this path is a subdirectory of an existing folder \"{%otherFolderLabel%}\" ({%otherFolder%}).": "Opozorilo, ta pot je že podmapa obstoječe mape \"{{otherFolderLabel}}\" ({{otherFolder}}).",
|
||||
"Warning: If you are using an external watcher like {%syncthingInotify%}, you should make sure it is deactivated.": "Opozorilo: Če uporabljate zunanji opazovalec, kot je {{syncthingInotify}}, se prepričajte, da je deaktiviran.",
|
||||
"Watch for Changes": "Gleda se za spremembe",
|
||||
"Watching for Changes": "Gledanje za spremembe",
|
||||
"Watching for changes discovers most changes without periodic scanning.": "Opazovanje sprememb odkrije večino sprememb brez občasnega skeniranja.",
|
||||
"When adding a new device, keep in mind that this device must be added on the other side too.": "Ob dodajanju nove naprave imejte v mislih, da ta naprava mora biti dodana tudi na drugi strani.",
|
||||
"When adding a new folder, keep in mind that the Folder ID is used to tie folders together between devices. They are case sensitive and must match exactly between all devices.": "Ko dodajate novo mapo, ne pozabite, da se ID mape uporablja za povezovanje map med napravami. Razlikujejo se na velike in male črke in se morajo natančno ujemati med vsemi napravami.",
|
||||
"Yes": "Da",
|
||||
"You can also select one of these nearby devices:": "Izberete lahko tudi eno od teh naprav v bližini:",
|
||||
"You can change your choice at any time in the Settings dialog.": "Svojo izbiro lahko kadar koli spremenite v pozivnem oknu Nastavitve.",
|
||||
"You can read more about the two release channels at the link below.": "Več o obeh kanalih za izdajo si lahko preberete na spodnji povezavi.",
|
||||
"You have no ignored devices.": "Nimate prezrtih naprav.",
|
||||
"You have no ignored folders.": "Nimate prezrtih map.",
|
||||
"You have unsaved changes. Do you really want to discard them?": "Imate neshranjene spremembe. Ali jih res želite zavreči?",
|
||||
"You must keep at least one version.": "Potrebno je obdržati vsaj eno verzijo.",
|
||||
"You should never add or change anything locally in a \"{%receiveEncrypted%}\" folder.": "Nikoli ne smete ničesar dodati ali spremeniti lokalno v mapi \"{{receiveEncrypted}}\".",
|
||||
"days": "dnevi",
|
||||
"directories": "mape",
|
||||
"files": "datoteke",
|
||||
"full documentation": "celotna dokumentacija",
|
||||
"items": "predmeti",
|
||||
"seconds": "sekunde",
|
||||
"theme-name-black": "Črna",
|
||||
"theme-name-dark": "Temno",
|
||||
"theme-name-default": "Privzeto",
|
||||
"theme-name-light": "Svetlo",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} želi deliti mapo \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} želi deliti mapo \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} bo morda znova predstavil to napravo."
|
||||
}
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Lägg till mapp",
|
||||
"Add Remote Device": "Lägg till fjärrenhet",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Lägg till enheter från introduktören till vår enhetslista för ömsesidigt delade mappar.",
|
||||
"Add ignore patterns": "Lägg till ignoreringsmönster",
|
||||
"Add new folder?": "Lägg till ny mapp?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Dessutom kommer det fullständiga återkommande skanningsintervallet att höjas (60 gånger, d.v.s. ny standard på 1h). Du kan också konfigurera den manuellt för varje mapp senare efter att du har valt Nej.",
|
||||
"Address": "Adress",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Tillåt anonym användarstatistiksrapportering?",
|
||||
"Allowed Networks": "Tillåtna nätverk",
|
||||
"Alphabetic": "Alfabetisk",
|
||||
"Altered by ignoring deletes.": "Ändrad genom att ignorera borttagningar.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Ett externt kommando hanterar versionen. Det måste ta bort filen från den delade mappen. Om sökvägen till applikationen innehåller mellanslag bör den citeras.",
|
||||
"Anonymous Usage Reporting": "Anonym användarstatistiksrapportering",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Anonymt användningsrapportformat har ändrats. Vill du flytta till det nya formatet?",
|
||||
@@ -92,7 +94,7 @@
|
||||
"Disabled periodic scanning and enabled watching for changes": "Inaktiverad periodisk skanning och aktiverad bevakning av ändringar",
|
||||
"Disabled periodic scanning and failed setting up watching for changes, retrying every 1m:": "Inaktiverad periodisk skanning och misslyckades med att ställa in bevakning av ändringar, försöker igen var 1:e minut:",
|
||||
"Disables comparing and syncing file permissions. Useful on systems with nonexistent or custom permissions (e.g. FAT, exFAT, Synology, Android).": "Inaktiverar att jämföra och synkronisera filbehörigheter. Användbart för system med obefintliga eller anpassade behörigheter (t.ex. FAT, exFAT, Synology, Android).",
|
||||
"Discard": "Kasta",
|
||||
"Discard": "Kassera",
|
||||
"Disconnected": "Frånkopplad",
|
||||
"Disconnected (Unused)": "Frånkopplad (oanvänd)",
|
||||
"Discovered": "Upptäckt",
|
||||
@@ -168,10 +170,11 @@
|
||||
"Ignore": "Ignorera",
|
||||
"Ignore Patterns": "Ignorera mönster",
|
||||
"Ignore Permissions": "Ignorera rättigheter",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignoreringsmönster kan bara läggas till efter att mappen har skapats. Om markerad kommer ett inmatningsfält för att ställa in ignoreringsmönster att visas efter att du har sparat.",
|
||||
"Ignored Devices": "Ignorerade enheter",
|
||||
"Ignored Folders": "Ignorerade mappar",
|
||||
"Ignored at": "Ignorerad vid",
|
||||
"Incoming Rate Limit (KiB/s)": "Inkommande hastighetsgräns (KiB/s)",
|
||||
"Incoming Rate Limit (KiB/s)": "Ingående hastighetsgräns (KiB/s)",
|
||||
"Incorrect configuration may damage your folder contents and render Syncthing inoperable.": "Inkorrekt konfiguration kan skada innehållet i mappen and få Syncthing att sluta fungera.",
|
||||
"Introduced By": "Introducerad av",
|
||||
"Introducer": "Introduktör",
|
||||
@@ -278,7 +281,7 @@
|
||||
"Revert Local Changes": "Återställ lokala ändringar",
|
||||
"Save": "Spara",
|
||||
"Scan Time Remaining": "Återstående skanningstid",
|
||||
"Scanning": "Skannar",
|
||||
"Scanning": "Skanning",
|
||||
"See external versioning help for supported templated command line parameters.": "Se hjälp för extern version för stödda mallade kommandoradsparametrar.",
|
||||
"Select All": "Markera alla",
|
||||
"Select a version": "Välj en version",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Välj mapparna som ska delas med denna enhet.",
|
||||
"Send & Receive": "Skicka & ta emot",
|
||||
"Send Only": "Skicka endast",
|
||||
"Set Ignores on Added Folder": "Ställ in ignoreringar för tillagd mapp",
|
||||
"Settings": "Inställningar",
|
||||
"Share": "Dela",
|
||||
"Share Folder": "Dela mapp",
|
||||
@@ -427,7 +431,7 @@
|
||||
"You can read more about the two release channels at the link below.": "Du kan läsa mer om de två publiceringsskanalerna på länken nedan.",
|
||||
"You have no ignored devices.": "Du har inga ignorerade enheter.",
|
||||
"You have no ignored folders.": "Du har inga ignorerade mappar.",
|
||||
"You have unsaved changes. Do you really want to discard them?": "Du har osparade ändringar. Vill du verkligen kasta dem?",
|
||||
"You have unsaved changes. Do you really want to discard them?": "Du har osparade ändringar. Vill du verkligen kassera dem?",
|
||||
"You must keep at least one version.": "Du måste behålla åtminstone en version.",
|
||||
"You should never add or change anything locally in a \"{%receiveEncrypted%}\" folder.": "Du ska aldrig lägga till eller ändra något lokalt i en \"{{receiveEncrypted}}\"-mapp.",
|
||||
"days": "dagar",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "fullständig dokumentation",
|
||||
"items": "objekt",
|
||||
"seconds": "sekunder",
|
||||
"theme-name-black": "Svart",
|
||||
"theme-name-dark": "Mörkt",
|
||||
"theme-name-default": "Standard",
|
||||
"theme-name-light": "Ljust",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} vill dela mapp \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} vill dela mapp \"{{folderlabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} kan återinföra denna enhet."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Klasör Ekle",
|
||||
"Add Remote Device": "Uzak Cihaz Ekle",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Karşılıklı olarak paylaşılan klasörler için tanıtıcıdan cihaz listemize cihazlar ekleyin.",
|
||||
"Add ignore patterns": "Yoksayma şekilleri ekle",
|
||||
"Add new folder?": "Yeni klasör eklensin mi?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Ek olarak, tam yeniden tarama aralığı artacaktır (60 defa, yani 1 saat yeni varsayılan). Ayrıca, Hayır'ı seçtikten daha sonra her klasör için el ile de yapılandırabilirsiniz.",
|
||||
"Address": "Adres",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "İsimsiz Kullanım Bildirmeye İzin Verilsin Mi?",
|
||||
"Allowed Networks": "İzin Verilen Ağlar",
|
||||
"Alphabetic": "Alfabetik",
|
||||
"Altered by ignoring deletes.": "Silmeler yoksayılarak değiştirildi.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Harici bir komut sürümlendirmeyi gerçekleştirir. Dosyayı paylaşılan klasörden kaldırmak zorundadır. Eğer uygulama yolu boşluklar içeriyorsa, tırnak içine alınmalıdır.",
|
||||
"Anonymous Usage Reporting": "İsimsiz Kullanım Bildirme",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "İsimsiz kullanım raporu biçimi değişti. Yeni biçime geçmek ister misiniz?",
|
||||
@@ -143,7 +145,7 @@
|
||||
"Folder Label": "Klasör Etiketi",
|
||||
"Folder Path": "Klasör Yolu",
|
||||
"Folder Type": "Klasör Türü",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "Klasör türü \"{{receiveEncrypted}}\" sadece yeni bir klasör eklerken ayarlanabilir.",
|
||||
"Folder type \"{%receiveEncrypted%}\" can only be set when adding a new folder.": "Klasör türü \"{{receiveEncrypted}}\" yalnızca yeni bir klasör eklerken ayarlanabilir.",
|
||||
"Folder type \"{%receiveEncrypted%}\" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.": "Klasör türü \"{{receiveEncrypted}}\", klasör eklendikten sonra değiştirilemez. Klasörü kaldırmanız, diskteki verileri silmeniz veya şifresini çözmeniz ve klasörü tekrar eklemeniz gerekir.",
|
||||
"Folders": "Klasörler",
|
||||
"For the following folders an error occurred while starting to watch for changes. It will be retried every minute, so the errors might go away soon. If they persist, try to fix the underlying issue and ask for help if you can't.": "Aşağıdaki klasörler için değişiklikleri izlemeye başlarken bir hata meydana geldi. Her dakika yeniden denenecektir, böylece hatalar kısa süre içinde ortadan kalkabilir. Devam ederse, altta yatan sorunu düzeltmeye çalışın ve yapamazsanız yardım isteyin.",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Yoksay",
|
||||
"Ignore Patterns": "Yoksayma Şekilleri",
|
||||
"Ignore Permissions": "İzinleri Yoksay",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Yoksayma şekilleri yalnızca klasör oluşturulduktan sonra eklenebilir. Eğer işaretlendiyse, kaydettikten sonra yoksayma şekillerini girmek için bir giriş alanı sunulacaktır.",
|
||||
"Ignored Devices": "Yoksayılan Cihazlar",
|
||||
"Ignored Folders": "Yoksayılan Klasörler",
|
||||
"Ignored at": "Yoksayılma",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Bu cihazla paylaşılacak klasörleri seçin.",
|
||||
"Send & Receive": "Gönder ve Al",
|
||||
"Send Only": "Yalnızca Gönder",
|
||||
"Set Ignores on Added Folder": "Eklenen Klasörde Yoksayılanları Ayarla",
|
||||
"Settings": "Ayarlar",
|
||||
"Share": "Paylaş",
|
||||
"Share Folder": "Paylaşım Klasörü",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "tam belgelendirme",
|
||||
"items": "öğe",
|
||||
"seconds": "saniye",
|
||||
"theme-name-black": "Siyah",
|
||||
"theme-name-dark": "Koyu",
|
||||
"theme-name-default": "Varsayılan",
|
||||
"theme-name-light": "Açık",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}}, \"{{folder}}\" klasörünü paylaşmak istiyor.",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}}, \"{{folderlabel}}\" ({{folder}}) klasörünü paylaşmak istiyor.",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} bu cihazı yeniden tanıtabilir."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "Додати директорію",
|
||||
"Add Remote Device": "Додати віддалений пристрій",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "Додати пристрої від пристрою-рекомендувача до нашого списку пристроїв для спільно розділених директорій.",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "Додати нову директорію?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "Крім того, буде збільшений інтервал повного сканування (у 60 разів, тобто нове значення за замовчанням - 1 година). Ви також можете налаштувати його вручну для кожної папки пізніше після вибору \"Ні\".",
|
||||
"Address": "Адреса",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "Дозволити програмі збирати анонімну статистику використання?",
|
||||
"Allowed Networks": "Дозволені мережі",
|
||||
"Alphabetic": "За алфавітом",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "Зовнішня команда керування версіями. Вона має видалити файл із спільної директорії. Якщо шлях до програми містить пробіли, він буде взятий у лапки.",
|
||||
"Anonymous Usage Reporting": "Анонімна статистика використання",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "Змінився формат анонімного звіту про користування. Бажаєте перейти на новий формат?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "Ігнорувати",
|
||||
"Ignore Patterns": "Шаблони винятків",
|
||||
"Ignore Permissions": "Ігнорувати права доступу до файлів",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "Ігноровані пристрої",
|
||||
"Ignored Folders": "Ігноровані папки",
|
||||
"Ignored at": "Ігноруються в",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "Оберіть директорії до яких матиме доступ цей пристрій.",
|
||||
"Send & Receive": "Відправити та отримати",
|
||||
"Send Only": "Лише відправити",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "Налаштування",
|
||||
"Share": "Розповсюдити ",
|
||||
"Share Folder": "Розповсюдити каталог",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "повна документація",
|
||||
"items": "елементи",
|
||||
"seconds": "секунд",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} хоче поділитися директорією \"{{folder}}\".",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} хоче поділитися директорією \"{{folderLabel}}\" ({{folder}}).",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} might reintroduce this device."
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "添加文件夹",
|
||||
"Add Remote Device": "添加远程设备",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "将这个设备上那些,跟本机有着共同文件夹的“远程设备”,都添加到本机的“远程设备”列表。",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "添加新文件夹?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "另外,完整重新扫描的间隔将增大(时间 60,以新的默认 1 小时为例)。你也可以在选择“否”后手动配置每个文件夹的时间。",
|
||||
"Address": "地址",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "允许匿名使用报告?",
|
||||
"Allowed Networks": "允许的网络",
|
||||
"Alphabetic": "字母顺序",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "外部命令接管了版本控制。该外部命令必须自行从共享文件夹中删除该文件。如果此应用程序的路径包含空格,应该用半角引号括起来。",
|
||||
"Anonymous Usage Reporting": "匿名使用报告",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "匿名使用情况的报告格式已经变更。是否要迁移到新的格式?",
|
||||
@@ -114,9 +116,9 @@
|
||||
"Edit Folder": "编辑文件夹",
|
||||
"Edit Folder Defaults": "编辑文件夹默认值",
|
||||
"Editing {%path%}.": "正在编辑 {{path}}。",
|
||||
"Enable Crash Reporting": "启用自动发送崩溃报告",
|
||||
"Enable NAT traversal": "启用 NAT 遍历",
|
||||
"Enable Relaying": "开启中继",
|
||||
"Enable Crash Reporting": "启用崩溃报告",
|
||||
"Enable NAT traversal": "启用 NAT 穿透",
|
||||
"Enable Relaying": "启用中继",
|
||||
"Enabled": "已启用",
|
||||
"Enter a non-negative number (e.g., \"2.35\") and select a unit. Percentages are as part of the total disk size.": "输入一个非负数(例如“2.35”)并选择单位。%表示占磁盘总容量的百分比。",
|
||||
"Enter a non-privileged port number (1024 - 65535).": "输入一个非特权的端口号 (1024 - 65535)。",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "忽略",
|
||||
"Ignore Patterns": "忽略模式",
|
||||
"Ignore Permissions": "忽略文件权限",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "已忽略的设备",
|
||||
"Ignored Folders": "已忽略的文件夹",
|
||||
"Ignored at": "已忽略于",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "选择与该设备共享的文件夹。",
|
||||
"Send & Receive": "发送与接收",
|
||||
"Send Only": "仅发送",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "设置",
|
||||
"Share": "共享",
|
||||
"Share Folder": "共享文件夹",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "完整文档",
|
||||
"items": "条目",
|
||||
"seconds": "秒",
|
||||
"theme-name-black": "黑色",
|
||||
"theme-name-dark": "深色",
|
||||
"theme-name-default": "默认",
|
||||
"theme-name-light": "浅色",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} 想将 “{{folder}}” 文件夹共享给您。",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} 想要共享 \"{{folderlabel}}\" ({{folder}}) 文件夹给您。",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}}可能会重新引入此设备。"
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "新增資料夾",
|
||||
"Add Remote Device": "新增遠程設備",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "將這個設備上那些,跟本機有著共同文件夾的「遠程設備」,都添加到本機的「遠程設備」列表。",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "新增新文件夾?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "另外,完整重新掃瞄的間隔將增大(時間 60,以新的默認 1 小時為例)。你也可以在選擇「否」後手動配置每個文件夾的時間。",
|
||||
"Address": "地址",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "允許匿名使用報告?",
|
||||
"Allowed Networks": "允許的網絡",
|
||||
"Alphabetic": "字母順序",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "外部命令接管了版本控制。該外部命令必須自行從共享文件夾中刪除該文件。如果此應用程序的路徑包含空格,應該用半角引號括起來。",
|
||||
"Anonymous Usage Reporting": "匿名使用報告",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "匿名使用情況的報告格式已經變更。是否要遷移到新的格式?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "忽略",
|
||||
"Ignore Patterns": "忽略模式",
|
||||
"Ignore Permissions": "忽略文件權限",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "已忽略的設備",
|
||||
"Ignored Folders": "已忽略的文件夾",
|
||||
"Ignored at": "已忽略於",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "選擇與該設備共享的文件夾。",
|
||||
"Send & Receive": "發送與接收",
|
||||
"Send Only": "僅發送",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "設置",
|
||||
"Share": "共享",
|
||||
"Share Folder": "共享文件夾",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "完整文檔",
|
||||
"items": "條目",
|
||||
"seconds": "秒",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} 想將 「{{folder}}」 文件夾共享給您。",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} 想要共享 \"{{folderlabel}}\" ({{folder}}) 文件夾給您。",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} 可能會重新引入此設備。"
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
"Add Folder": "添加資料夾",
|
||||
"Add Remote Device": "新增遠端裝置",
|
||||
"Add devices from the introducer to our device list, for mutually shared folders.": "對於共享的資料夾,匯入引入者的裝置清單。",
|
||||
"Add ignore patterns": "Add ignore patterns",
|
||||
"Add new folder?": "新增資料夾?",
|
||||
"Additionally the full rescan interval will be increased (times 60, i.e. new default of 1h). You can also configure it manually for every folder later after choosing No.": "另外,完整地重新掃瞄的間隔將增大(時間 60,例如:新的預設值為 1 小時)。您也可以在選擇「否」後,手動配置每個資料夾的時間間隔。",
|
||||
"Address": "位址",
|
||||
@@ -22,6 +23,7 @@
|
||||
"Allow Anonymous Usage Reporting?": "允許回報匿名數據?",
|
||||
"Allowed Networks": "允許的網路",
|
||||
"Alphabetic": "字母順序",
|
||||
"Altered by ignoring deletes.": "Altered by ignoring deletes.",
|
||||
"An external command handles the versioning. It has to remove the file from the shared folder. If the path to the application contains spaces, it should be quoted.": "外部指令接管了版本控制。它必須將檔案自分享資料夾中移除。如果應用程式的路徑包含了空格,則必須使用雙引號刮起。",
|
||||
"Anonymous Usage Reporting": "匿名數據回報",
|
||||
"Anonymous usage report format has changed. Would you like to move to the new format?": "匿名數據回報格式已經變更,想要移至新格式嗎?",
|
||||
@@ -168,6 +170,7 @@
|
||||
"Ignore": "忽略",
|
||||
"Ignore Patterns": "忽略樣式",
|
||||
"Ignore Permissions": "忽略權限",
|
||||
"Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.": "Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.",
|
||||
"Ignored Devices": "已忽略的裝置",
|
||||
"Ignored Folders": "已忽略的資料夾",
|
||||
"Ignored at": "忽略時間",
|
||||
@@ -289,6 +292,7 @@
|
||||
"Select the folders to share with this device.": "選擇要共享這個資料夾的裝置。",
|
||||
"Send & Receive": "傳送及接收",
|
||||
"Send Only": "僅傳送",
|
||||
"Set Ignores on Added Folder": "Set Ignores on Added Folder",
|
||||
"Settings": "設定",
|
||||
"Share": "共享",
|
||||
"Share Folder": "共享資料夾",
|
||||
@@ -436,6 +440,10 @@
|
||||
"full documentation": "完整說明文件",
|
||||
"items": "個項目",
|
||||
"seconds": "秒",
|
||||
"theme-name-black": "Black",
|
||||
"theme-name-dark": "Dark",
|
||||
"theme-name-default": "Default",
|
||||
"theme-name-light": "Light",
|
||||
"{%device%} wants to share folder \"{%folder%}\".": "{{device}} 想要共享資料夾 \"{{folder}}\"。",
|
||||
"{%device%} wants to share folder \"{%folderlabel%}\" ({%folder%}).": "{{device}} 想要共享資料夾 \"{{folderlabel}}\" ({{folder}})。",
|
||||
"{%reintroducer%} might reintroduce this device.": "{{reintroducer}} 可能會重新引入此裝置。"
|
||||
|
||||
@@ -1 +1 @@
|
||||
var langPrettyprint = {"bg":"Bulgarian","ca@valencia":"Catalan (Valencian)","cs":"Czech","da":"Danish","de":"German","el":"Greek","en":"English","en-AU":"English (Australia)","en-GB":"English (United Kingdom)","eo":"Esperanto","es":"Spanish","es-ES":"Spanish (Spain)","eu":"Basque","fi":"Finnish","fr":"French","fy":"Western Frisian","hu":"Hungarian","id":"Indonesian","it":"Italian","ja":"Japanese","ko-KR":"Korean (Korea)","lt":"Lithuanian","nb":"Norwegian Bokmål","nl":"Dutch","pl":"Polish","pt-BR":"Portuguese (Brazil)","pt-PT":"Portuguese (Portugal)","ro-RO":"Romanian (Romania)","ru":"Russian","sk":"Slovak","sv":"Swedish","tr":"Turkish","uk":"Ukrainian","zh-CN":"Chinese (China)","zh-HK":"Chinese (Hong Kong)","zh-TW":"Chinese (Taiwan)"}
|
||||
var langPrettyprint = {"bg":"Bulgarian","ca@valencia":"Catalan (Valencian)","cs":"Czech","da":"Danish","de":"German","el":"Greek","en":"English","en-AU":"English (Australia)","en-GB":"English (United Kingdom)","eo":"Esperanto","es":"Spanish","es-ES":"Spanish (Spain)","eu":"Basque","fi":"Finnish","fr":"French","fy":"Western Frisian","hu":"Hungarian","id":"Indonesian","it":"Italian","ja":"Japanese","ko-KR":"Korean (Korea)","lt":"Lithuanian","nb":"Norwegian Bokmål","nl":"Dutch","pl":"Polish","pt-BR":"Portuguese (Brazil)","pt-PT":"Portuguese (Portugal)","ro-RO":"Romanian (Romania)","ru":"Russian","sk":"Slovak","sl":"Slovenian","sv":"Swedish","tr":"Turkish","uk":"Ukrainian","zh-CN":"Chinese (China)","zh-HK":"Chinese (Hong Kong)","zh-TW":"Chinese (Taiwan)"}
|
||||
|
||||
@@ -1 +1 @@
|
||||
var validLangs = ["bg","ca@valencia","cs","da","de","el","en","en-AU","en-GB","eo","es","es-ES","eu","fi","fr","fy","hu","id","it","ja","ko-KR","lt","nb","nl","pl","pt-BR","pt-PT","ro-RO","ru","sk","sv","tr","uk","zh-CN","zh-HK","zh-TW"]
|
||||
var validLangs = ["bg","ca@valencia","cs","da","de","el","en","en-AU","en-GB","eo","es","es-ES","eu","fi","fr","fy","hu","id","it","ja","ko-KR","lt","nb","nl","pl","pt-BR","pt-PT","ro-RO","ru","sk","sl","sv","tr","uk","zh-CN","zh-HK","zh-TW"]
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
<h4 class="text-center" translate>The Syncthing Authors</h4>
|
||||
<div class="row">
|
||||
<div class="col-md-12" id="contributor-list">
|
||||
Jakob Borg, Audrius Butkevicius, Jesse Lucas, Simon Frei, Alexander Graf, Alexandre Viau, Anderson Mesquita, André Colomb, Antony Male, Ben Schulz, Caleb Callaway, Daniel Harte, Evgeny Kuznetsov, Lars K.W. Gohlke, Lode Hoste, Michael Ploujnikov, Nate Morrison, Philippe Schommers, Ryan Sullivan, Sergey Mishin, Stefan Tatschner, Tomasz Wilczyński, Wulf Weich, dependabot-preview[bot], greatroar, Aaron Bieber, Adam Piggott, Adel Qalieh, Alan Pope, Alberto Donato, Alessandro G., Alex Lindeman, Alex Xu, Aman Gupta, Andrew Dunham, Andrew Rabert, Andrey D, Anjan Momi, Antoine Lamielle, Anur, Aranjedeath, Arkadiusz Tymiński, Arthur Axel fREW Schmidt, Artur Zubilewicz, Aurélien Rainone, BAHADIR YILMAZ, Bart De Vries, Ben Curthoys, Ben Shepherd, Ben Sidhom, Benedikt Heine, Benedikt Morbach, Benjamin Nater, Benno Fünfstück, Benny Ng, Boqin Qin, Boris Rybalkin, Brandon Philips, Brendan Long, Brian R. Becker, Carsten Hagemann, Cathryne Linenweaver, Cedric Staniewski, Chih-Hsuan Yen, Choongkyu, Chris Howie, Chris Joel, Chris Tonkinson, Christian Prescott, Colin Kennedy, Cromefire_, Cyprien Devillez, Dale Visser, Dan, Daniel Bergmann, Daniel Martí, Darshil Chanpura, David Rimmer, Denis A., Dennis Wilson, Dmitry Saveliev, Domenic Horner, Dominik Heidler, Elias Jarlebring, Elliot Huffman, Emil Hessman, Eric Lesiuta, Erik Meitner, Federico Castagnini, Felix Ableitner, Felix Lampe, Felix Unterpaintner, Francois-Xavier Gsell, Frank Isemann, Gahl Saraf, Gilli Sigurdsson, Gleb Sinyavskiy, Graham Miln, Han Boetes, HansK-p, Harrison Jones, Heiko Zuerker, Hugo Locurcio, Iain Barnett, Ian Johnson, Ikko Ashimine, Ilya Brin, Iskander Sharipov, Jaakko Hannikainen, Jacek Szafarkiewicz, Jack Croft, Jacob, Jake Peterson, James Patterson, Jaroslav Lichtblau, Jaroslav Malec, Jaya Chithra, Jens Diemer, Jerry Jacobs, Jochen Voss, Johan Andersson, Johan Vromans, John Rinehart, Jonas Thelemann, Jonathan, Jonathan Cross, Jonta, Jose Manuel Delicado, Jörg Thalheim, Jędrzej Kula, Kalle Laine, Karol Różycki, Keith Turner, Kelong Cong, Ken'ichi Kamada, Kevin Allen, Kevin Bushiri, Kevin White, Jr., Kurt Fitzner, Lars Lehtonen, Laurent Arnoud, Laurent Etiemble, Leo Arias, Liu Siyuan, Lord Landon Agahnim, Lukas Lihotzki, Majed Abdulaziz, Marc Laporte, Marc Pujol, Marcin Dziadus, Marcus Legendre, Mario Majila, Mark Pulford, Mateusz Naściszewski, Mateusz Ż, Matic Potočnik, Matt Burke, Matt Robenolt, Matteo Ruina, Maurizio Tomasi, Max, Max Schulze, MaximAL, Maxime Thirouin, MichaIng, Michael Jephcote, Michael Rienstra, Michael Tilli, Mike Boone, MikeLund, MikolajTwarog, Mingxuan Lin, Nicholas Rishel, Nico Stapelbroek, Nicolas Braud-Santoni, Nicolas Perraut, Niels Peter Roest, Nils Jakobi, NinoM4ster, Nitroretro, NoLooseEnds, Oliver Freyermuth, Otiel, Oyebanji Jacob Mayowa, Pablo, Pascal Jungblut, Paul Brit, Pawel Palenica, Paweł Rozlach, Peter Badida, Peter Dave Hello, Peter Hoeg, Peter Marquardt, Phani Rithvij, Phil Davis, Phill Luby, Pier Paolo Ramon, Piotr Bejda, Pramodh KP, Quentin Hibon, Rahmi Pruitt, Richard Hartmann, Robert Carosi, Roberto Santalla, Robin Schoonover, Roman Zaynetdinov, Ross Smith II, Ruslan Yevdokymov, Sacheendra Talluri, Scott Klupfel, Shaarad Dalvi, Simon Mwepu, Sly_tom_cat, Stefan Kuntz, Steven Eckhoff, Suhas Gundimeda, Taylor Khan, Thomas Hipp, Tim Abell, Tim Howes, Tobias Klauser, Tobias Nygren, Tobias Tom, Tom Jakubowski, Tommy Thorn, Tully Robinson, Tyler Brazier, Tyler Kropp, Unrud, Veeti Paananen, Victor Buinsky, Vil Brekin, Vladimir Rusinov, William A. Kennington III, Xavier O., Yannic A., andresvia, andyleap, boomsquared, bt90, chenrui, chucic, deepsource-autofix[bot], dependabot[bot], derekriemer, desbma, georgespatton, ghjklw, janost, jaseg, jelle van der Waa, jtagcat, klemens, marco-m, mclang, mv1005, otbutz, overkill, perewa, rubenbe, wangguoliang, wouter bolsterlee, xarx00, xjtdy888, 佛跳墙
|
||||
Aaron Bieber, Adam Piggott, Adel Qalieh, Alan Pope, Alberto Donato, Alessandro G., Alex Lindeman, Alex Xu, Alexander Graf, Alexandre Viau, Aman Gupta, Anderson Mesquita, Andrew Dunham, Andrew Rabert, Andrey D, André Colomb, Anjan Momi, Antoine Lamielle, Antony Male, Anur, Aranjedeath, Arkadiusz Tymiński, Arthur Axel fREW Schmidt, Artur Zubilewicz, Audrius Butkevicius, Aurélien Rainone, BAHADIR YILMAZ, Bart De Vries, Ben Curthoys, Ben Schulz, Ben Shepherd, Ben Sidhom, Benedikt Heine, Benedikt Morbach, Benjamin Nater, Benno Fünfstück, Benny Ng, Boqin Qin, Boris Rybalkin, Brandon Philips, Brendan Long, Brian R. Becker, Caleb Callaway, Carsten Hagemann, Cathryne Linenweaver, Cedric Staniewski, Chih-Hsuan Yen, Choongkyu, Chris Howie, Chris Joel, Chris Tonkinson, Christian Prescott, Colin Kennedy, Cromefire_, Cyprien Devillez, Dale Visser, Dan, Daniel Bergmann, Daniel Harte, Daniel Martí, Darshil Chanpura, David Rimmer, Denis A., Dennis Wilson, Dmitry Saveliev, Domenic Horner, Dominik Heidler, Elias Jarlebring, Elliot Huffman, Emil Hessman, Eric Lesiuta, Erik Meitner, Evgeny Kuznetsov, Federico Castagnini, Felix Ableitner, Felix Lampe, Felix Unterpaintner, Francois-Xavier Gsell, Frank Isemann, Gahl Saraf, Gilli Sigurdsson, Gleb Sinyavskiy, Graham Miln, Han Boetes, HansK-p, Harrison Jones, Heiko Zuerker, Hugo Locurcio, Iain Barnett, Ian Johnson, Ikko Ashimine, Ilya Brin, Iskander Sharipov, Jaakko Hannikainen, Jacek Szafarkiewicz, Jack Croft, Jacob, Jake Peterson, Jakob Borg, James Patterson, Jaroslav Lichtblau, Jaroslav Malec, Jaya Chithra, Jens Diemer, Jerry Jacobs, Jesse Lucas, Jochen Voss, Johan Andersson, Johan Vromans, John Rinehart, Jonas Thelemann, Jonathan, Jonathan Cross, Jonta, Jose Manuel Delicado, Jörg Thalheim, Jędrzej Kula, Kalle Laine, Karol Różycki, Keith Turner, Kelong Cong, Ken'ichi Kamada, Kevin Allen, Kevin Bushiri, Kevin White, Jr., Kurt Fitzner, Lars K.W. Gohlke, Lars Lehtonen, Laurent Arnoud, Laurent Etiemble, Leo Arias, Liu Siyuan, Lode Hoste, Lord Landon Agahnim, Lukas Lihotzki, Majed Abdulaziz, Marc Laporte, Marc Pujol, Marcin Dziadus, Marcus Legendre, Mario Majila, Mark Pulford, Mateusz Naściszewski, Mateusz Ż, Matic Potočnik, Matt Burke, Matt Robenolt, Matteo Ruina, Maurizio Tomasi, Max, Max Schulze, MaximAL, Maxime Thirouin, MichaIng, Michael Jephcote, Michael Ploujnikov, Michael Rienstra, Michael Tilli, Mike Boone, MikeLund, MikolajTwarog, Mingxuan Lin, Nate Morrison, Nicholas Rishel, Nico Stapelbroek, Nicolas Braud-Santoni, Nicolas Perraut, Niels Peter Roest, Nils Jakobi, NinoM4ster, Nitroretro, NoLooseEnds, Oliver Freyermuth, Otiel, Oyebanji Jacob Mayowa, Pablo, Pascal Jungblut, Paul Brit, Pawel Palenica, Paweł Rozlach, Peter Badida, Peter Dave Hello, Peter Hoeg, Peter Marquardt, Phani Rithvij, Phil Davis, Philippe Schommers, Phill Luby, Pier Paolo Ramon, Piotr Bejda, Pramodh KP, Quentin Hibon, Rahmi Pruitt, Richard Hartmann, Robert Carosi, Roberto Santalla, Robin Schoonover, Roman Zaynetdinov, Ross Smith II, Ruslan Yevdokymov, Ryan Sullivan, Sacheendra Talluri, Scott Klupfel, Sergey Mishin, Shaarad Dalvi, Simon Frei, Simon Mwepu, Sly_tom_cat, Stefan Kuntz, Stefan Tatschner, Steven Eckhoff, Suhas Gundimeda, Taylor Khan, Thomas Hipp, Tim Abell, Tim Howes, Tobias Klauser, Tobias Nygren, Tobias Tom, Tom Jakubowski, Tomasz Wilczyński, Tommy Thorn, Tully Robinson, Tyler Brazier, Tyler Kropp, Unrud, Veeti Paananen, Victor Buinsky, Vil Brekin, Vladimir Rusinov, William A. Kennington III, Wulf Weich, Xavier O., Yannic A., andresvia, andyleap, boomsquared, bt90, chenrui, chucic, deepsource-autofix[bot], dependabot-preview[bot], dependabot[bot], derekriemer, desbma, georgespatton, ghjklw, greatroar, janost, jaseg, jelle van der Waa, jtagcat, klemens, marco-m, mclang, mv1005, otbutz, overkill, perewa, rubenbe, wangguoliang, wouter bolsterlee, xarx00, xjtdy888, 佛跳墙
|
||||
</div>
|
||||
</div>
|
||||
<hr />
|
||||
@@ -37,7 +37,7 @@ Jakob Borg, Audrius Butkevicius, Jesse Lucas, Simon Frei, Alexander Graf, Alexan
|
||||
<li><a href="https://github.com/AudriusButkevicius/go-nat-pmp">AudriusButkevicius/go-nat-pmp</a>, Copyright © 2013 John Howard Palevich.</li>
|
||||
<li><a href="https://github.com/AudriusButkevicius/recli">AudriusButkevicius/recli</a>, Copyright © 2019 Audrius Butkevicius.</li>
|
||||
<li><a href="https://github.com/beorn7/perks">beorn7/perks</a>, Copyright © 2013 Blake Mizerany.</li>
|
||||
<li><a href="https://github.com/bkaradzic/go-lz4">bkaradzic/go-lz4</a>, Copyright © 2011-2012 Branimir Karadzic, 2013 Damian Gryski.</li>
|
||||
<li><a href="https://github.com/pierrec/lz4">pierrec/lz4</a>, Copyright © 2015 Pierre Curto.</li>
|
||||
<li><a href="https://github.com/calmh/du">calmh/du</a>, Public domain.</li>
|
||||
<li><a href="https://github.com/calmh/xdr">calmh/xdr</a>, Copyright © 2014 Jakob Borg.</li>
|
||||
<li><a href="https://github.com/chmduquesne/rollinghash">chmduquesne/rollinghash</a>, Copyright © 2015 Christophe-Marie Duquesne.</li>
|
||||
|
||||
@@ -58,6 +58,9 @@ angular.module('syncthing.core')
|
||||
text: '',
|
||||
error: null,
|
||||
disabled: false,
|
||||
originalLines: [],
|
||||
defaultLines: [],
|
||||
saved: false,
|
||||
};
|
||||
resetRemoteNeed();
|
||||
|
||||
@@ -396,6 +399,10 @@ angular.module('syncthing.core')
|
||||
});
|
||||
|
||||
$scope.$on(Events.FOLDER_ERRORS, function (event, arg) {
|
||||
if (!$scope.model[arg.data.folder]) {
|
||||
console.log("Dropping folder errors event for unknown folder", arg.data.folder)
|
||||
return;
|
||||
}
|
||||
$scope.model[arg.data.folder].errors = arg.data.errors.length;
|
||||
});
|
||||
|
||||
@@ -409,8 +416,14 @@ angular.module('syncthing.core')
|
||||
console.log("FolderScanProgress", data);
|
||||
});
|
||||
|
||||
// May be called through .error with the presented arguments, or through
|
||||
// .catch with the http response object containing the same arguments.
|
||||
$scope.emitHTTPError = function (data, status, headers, config) {
|
||||
$scope.$emit('HTTPError', { data: data, status: status, headers: headers, config: config });
|
||||
var out = data;
|
||||
if (data && !data.data) {
|
||||
out = { data: data, status: status, headers: headers, config: config };
|
||||
}
|
||||
$scope.$emit('HTTPError', out);
|
||||
};
|
||||
|
||||
var debouncedFuncs = {};
|
||||
@@ -741,7 +754,7 @@ angular.module('syncthing.core')
|
||||
}
|
||||
|
||||
function shouldSetDefaultFolderPath() {
|
||||
return $scope.config.defaults.folder.path && !$scope.editingExisting && $scope.folderEditor.folderPath.$pristine && !$scope.editingDefaults;
|
||||
return $scope.config.defaults.folder.path && $scope.folderEditor.folderPath.$pristine && $scope.currentFolder._editing == "add";
|
||||
}
|
||||
|
||||
function resetRemoteNeed() {
|
||||
@@ -750,7 +763,6 @@ angular.module('syncthing.core')
|
||||
$scope.remoteNeedDevice = undefined;
|
||||
}
|
||||
|
||||
|
||||
function setDefaultTheme() {
|
||||
if (!document.getElementById("fallback-theme-css")) {
|
||||
|
||||
@@ -767,13 +779,9 @@ angular.module('syncthing.core')
|
||||
}
|
||||
}
|
||||
|
||||
function saveIgnores(ignores, cb) {
|
||||
$http.post(urlbase + '/db/ignores?folder=' + encodeURIComponent($scope.currentFolder.id), {
|
||||
function saveIgnores(ignores) {
|
||||
return $http.post(urlbase + '/db/ignores?folder=' + encodeURIComponent($scope.currentFolder.id), {
|
||||
ignore: ignores
|
||||
}).success(function () {
|
||||
if (cb) {
|
||||
cb();
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
@@ -1268,8 +1276,9 @@ angular.module('syncthing.core')
|
||||
if (cfg) {
|
||||
cfg.paused = pause;
|
||||
$scope.config.folders = folderList($scope.folders);
|
||||
$scope.saveConfig();
|
||||
return $scope.saveConfig();
|
||||
}
|
||||
return $q.when();
|
||||
};
|
||||
|
||||
$scope.showListenerStatus = function () {
|
||||
@@ -1421,18 +1430,14 @@ angular.module('syncthing.core')
|
||||
});
|
||||
};
|
||||
|
||||
$scope.saveConfig = function (callback) {
|
||||
$scope.saveConfig = function () {
|
||||
var cfg = JSON.stringify($scope.config);
|
||||
var opts = {
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
};
|
||||
$http.put(urlbase + '/config', cfg, opts).finally(refreshConfig).then(function() {
|
||||
if (callback) {
|
||||
callback();
|
||||
}
|
||||
}, $scope.emitHTTPError);
|
||||
return $http.put(urlbase + '/config', cfg, opts).finally(refreshConfig).catch($scope.emitHTTPError);
|
||||
};
|
||||
|
||||
$scope.urVersions = function () {
|
||||
@@ -1512,7 +1517,7 @@ angular.module('syncthing.core')
|
||||
// here as well...
|
||||
$scope.devices = deviceMap($scope.config.devices);
|
||||
|
||||
$scope.saveConfig(function () {
|
||||
$scope.saveConfig().then(function () {
|
||||
if (themeChanged) {
|
||||
document.location.reload(true);
|
||||
}
|
||||
@@ -1578,11 +1583,11 @@ angular.module('syncthing.core')
|
||||
}
|
||||
|
||||
$scope.editDeviceModalTitle = function() {
|
||||
if ($scope.editingDefaults) {
|
||||
if ($scope.editingDeviceDefaults()) {
|
||||
return $translate.instant("Edit Device Defaults");
|
||||
}
|
||||
var title = '';
|
||||
if ($scope.editingExisting) {
|
||||
if ($scope.editingDeviceExisting()) {
|
||||
title += $translate.instant("Edit Device");
|
||||
} else {
|
||||
title += $translate.instant("Add Device");
|
||||
@@ -1595,16 +1600,23 @@ angular.module('syncthing.core')
|
||||
};
|
||||
|
||||
$scope.editDeviceModalIcon = function() {
|
||||
if ($scope.editingDefaults || $scope.editingExisting) {
|
||||
if ($scope.has(["existing", "defaults"], $scope.currentDevice._editing)) {
|
||||
return 'fas fa-pencil-alt';
|
||||
}
|
||||
return 'fas fa-desktop';
|
||||
};
|
||||
|
||||
$scope.editingDeviceDefaults = function() {
|
||||
return $scope.currentDevice._editing == 'defaults';
|
||||
}
|
||||
|
||||
$scope.editingDeviceExisting = function() {
|
||||
return $scope.currentDevice._editing == 'existing';
|
||||
}
|
||||
|
||||
$scope.editDeviceExisting = function (deviceCfg) {
|
||||
$scope.currentDevice = $.extend({}, deviceCfg);
|
||||
$scope.editingExisting = true;
|
||||
$scope.editingDefaults = false;
|
||||
$scope.currentDevice._editing = "existing";
|
||||
$scope.willBeReintroducedBy = undefined;
|
||||
if (deviceCfg.introducedBy) {
|
||||
var introducerDevice = $scope.devices[deviceCfg.introducedBy];
|
||||
@@ -1633,7 +1645,7 @@ angular.module('syncthing.core')
|
||||
$scope.editDeviceDefaults = function () {
|
||||
$http.get(urlbase + '/config/defaults/device').then(function (p) {
|
||||
$scope.currentDevice = p.data;
|
||||
$scope.editingDefaults = true;
|
||||
$scope.currentDevice._editing = "defaults";
|
||||
editDeviceModal();
|
||||
}, $scope.emitHTTPError);
|
||||
};
|
||||
@@ -1671,8 +1683,7 @@ angular.module('syncthing.core')
|
||||
$scope.currentDevice = p.data;
|
||||
$scope.currentDevice.name = name;
|
||||
$scope.currentDevice.deviceID = deviceID;
|
||||
$scope.editingExisting = false;
|
||||
$scope.editingDefaults = false;
|
||||
$scope.currentDevice._editing = "add";
|
||||
initShareEditing('device');
|
||||
$scope.currentSharing.unrelated = $scope.folderList();
|
||||
editDeviceModal();
|
||||
@@ -1682,7 +1693,7 @@ angular.module('syncthing.core')
|
||||
|
||||
$scope.deleteDevice = function () {
|
||||
$('#editDevice').modal('hide');
|
||||
if (!$scope.editingExisting) {
|
||||
if ($scope.currentDevice._editing != "existing") {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1705,13 +1716,13 @@ angular.module('syncthing.core')
|
||||
return x.trim();
|
||||
});
|
||||
delete $scope.currentDevice._addressesStr;
|
||||
if ($scope.editingDefaults) {
|
||||
if ($scope.currentDevice._editing == "defaults") {
|
||||
$scope.config.defaults.device = $scope.currentDevice;
|
||||
} else {
|
||||
setDeviceConfig();
|
||||
}
|
||||
delete $scope.currentSharing;
|
||||
delete $scope.currentDevice;
|
||||
$scope.currentDevice = {};
|
||||
$scope.saveConfig();
|
||||
};
|
||||
|
||||
@@ -1955,20 +1966,34 @@ angular.module('syncthing.core')
|
||||
$('#folder-ignores textarea').focus();
|
||||
}
|
||||
}).one('hidden.bs.modal', function () {
|
||||
window.location.hash = "";
|
||||
$scope.currentFolder = {};
|
||||
var p = $q.when();
|
||||
// If the modal was closed default patterns should still apply
|
||||
if ($scope.currentFolder._editing == "add-ignores" && !$scope.ignores.saved && $scope.ignores.defaultLines) {
|
||||
p = saveFolderAddIgnores($scope.currentFolder.id, true);
|
||||
}
|
||||
p.then(function () {
|
||||
window.location.hash = "";
|
||||
$scope.currentFolder = {};
|
||||
$scope.ignores = {};
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
$scope.editFolderModalTitle = function() {
|
||||
if ($scope.editingDefaults) {
|
||||
if ($scope.editingFolderDefaults()) {
|
||||
return $translate.instant("Edit Folder Defaults");
|
||||
}
|
||||
var title = '';
|
||||
if ($scope.editingExisting) {
|
||||
title += $translate.instant("Edit Folder");
|
||||
} else {
|
||||
title += $translate.instant("Add Folder");
|
||||
switch ($scope.currentFolder._editing) {
|
||||
case "existing":
|
||||
title = $translate.instant("Edit Folder");
|
||||
break;
|
||||
case "add":
|
||||
title = $translate.instant("Add Folder");
|
||||
break;
|
||||
case "add-ignores":
|
||||
title = $translate.instant("Set Ignores on Added Folder");
|
||||
break;
|
||||
}
|
||||
if ($scope.currentFolder.id !== '') {
|
||||
title += ' (' + $scope.folderLabel($scope.currentFolder.id) + ')';
|
||||
@@ -1977,12 +2002,20 @@ angular.module('syncthing.core')
|
||||
};
|
||||
|
||||
$scope.editFolderModalIcon = function() {
|
||||
if ($scope.editingDefaults || $scope.editingExisting) {
|
||||
if ($scope.has(["existing", "defaults"], $scope.currentFolder._editing)) {
|
||||
return 'fas fa-pencil-alt';
|
||||
}
|
||||
return 'fas fa-folder';
|
||||
};
|
||||
|
||||
$scope.editingFolderDefaults = function() {
|
||||
return $scope.currentFolder._editing == 'defaults';
|
||||
}
|
||||
|
||||
$scope.editingFolderExisting = function() {
|
||||
return $scope.currentFolder._editing == 'existing';
|
||||
}
|
||||
|
||||
function editFolder(initialTab) {
|
||||
if ($scope.currentFolder.path.length > 1 && $scope.currentFolder.path.slice(-1) === $scope.system.pathSeparator) {
|
||||
$scope.currentFolder.path = $scope.currentFolder.path.slice(0, -1);
|
||||
@@ -2033,39 +2066,65 @@ angular.module('syncthing.core')
|
||||
};
|
||||
|
||||
$scope.editFolderExisting = function(folderCfg, initialTab) {
|
||||
$scope.editingExisting = true;
|
||||
$scope.editingDefaults = false;
|
||||
$scope.currentFolder = angular.copy(folderCfg);
|
||||
|
||||
$scope.ignores.text = 'Loading...';
|
||||
$scope.ignores.error = null;
|
||||
$scope.ignores.disabled = true;
|
||||
$http.get(urlbase + '/db/ignores?folder=' + encodeURIComponent($scope.currentFolder.id))
|
||||
.success(function (data) {
|
||||
$scope.currentFolder.ignores = data.ignore || [];
|
||||
$scope.ignores.text = $scope.currentFolder.ignores.join('\n');
|
||||
$scope.ignores.error = data.error;
|
||||
$scope.ignores.disabled = false;
|
||||
})
|
||||
.error(function (err) {
|
||||
$scope.ignores.text = $translate.instant("Failed to load ignore patterns.");
|
||||
$scope.emitHTTPError(err);
|
||||
});
|
||||
|
||||
$scope.currentFolder._editing = "existing";
|
||||
editFolderLoadIgnores();
|
||||
editFolder(initialTab);
|
||||
};
|
||||
|
||||
$scope.editFolderDefaults = function() {
|
||||
$http.get(urlbase + '/config/defaults/folder')
|
||||
.success(function (data) {
|
||||
$scope.currentFolder = data;
|
||||
$scope.editingExisting = false;
|
||||
$scope.editingDefaults = true;
|
||||
editFolder();
|
||||
})
|
||||
.error($scope.emitHTTPError);
|
||||
function editFolderLoadingIgnores() {
|
||||
$scope.ignores.text = 'Loading...';
|
||||
$scope.ignores.error = null;
|
||||
$scope.ignores.disabled = true;
|
||||
}
|
||||
|
||||
function editFolderGetIgnores() {
|
||||
return $http.get(urlbase + '/db/ignores?folder=' + encodeURIComponent($scope.currentFolder.id))
|
||||
.then(function(r) {
|
||||
return r.data;
|
||||
}, function (response) {
|
||||
$scope.ignores.text = $translate.instant("Failed to load ignore patterns.");
|
||||
return $q.reject(response);
|
||||
});
|
||||
};
|
||||
|
||||
function editFolderLoadIgnores() {
|
||||
editFolderLoadingIgnores();
|
||||
return editFolderGetIgnores().then(function(data) {
|
||||
if (!data) {
|
||||
return;
|
||||
}
|
||||
editFolderInitIgnores(data.ignore, data.error);
|
||||
}, $scope.emitHTTPError);
|
||||
}
|
||||
|
||||
$scope.editFolderDefaults = function() {
|
||||
$q.all([
|
||||
$http.get(urlbase + '/config/defaults/folder').then(function (response) {
|
||||
$scope.currentFolder = response.data;
|
||||
$scope.currentFolder._editing = "defaults";
|
||||
}),
|
||||
getDefaultIgnores().then(editFolderInitIgnores),
|
||||
]).then(editFolder, $scope.emitHTTPError);
|
||||
};
|
||||
|
||||
function getDefaultIgnores() {
|
||||
return $http.get(urlbase + '/config/defaults/ignores').then(function (r) {
|
||||
return r.data.lines;
|
||||
});
|
||||
}
|
||||
|
||||
function editFolderInitIgnores(lines, error) {
|
||||
$scope.ignores.originalLines = lines || [];
|
||||
setIgnoresText(lines);
|
||||
$scope.ignores.error = error;
|
||||
$scope.ignores.disabled = false;
|
||||
}
|
||||
|
||||
function setIgnoresText(lines) {
|
||||
$scope.ignores.text = lines ? lines.join('\n') : "";
|
||||
}
|
||||
|
||||
$scope.selectAllSharedDevices = function (state) {
|
||||
var devices = $scope.currentSharing.shared;
|
||||
for (var i = 0; i < devices.length; i++) {
|
||||
@@ -2093,9 +2152,6 @@ angular.module('syncthing.core')
|
||||
|
||||
$scope.addFolderAndShare = function (folderID, pendingFolder, device) {
|
||||
addFolderInit(folderID).then(function() {
|
||||
$scope.currentFolder.viewFlags = {
|
||||
importFromOtherDevice: true
|
||||
};
|
||||
$scope.currentSharing.selected[device] = true;
|
||||
$scope.currentFolder.label = pendingFolder.offeredBy[device].label;
|
||||
for (var k in pendingFolder.offeredBy) {
|
||||
@@ -2110,19 +2166,16 @@ angular.module('syncthing.core')
|
||||
};
|
||||
|
||||
function addFolderInit(folderID) {
|
||||
$scope.editingExisting = false;
|
||||
$scope.editingDefaults = false;
|
||||
return $http.get(urlbase + '/config/defaults/folder').then(function(p) {
|
||||
$scope.currentFolder = p.data;
|
||||
return $http.get(urlbase + '/config/defaults/folder').then(function (response) {
|
||||
$scope.currentFolder = response.data;
|
||||
$scope.currentFolder._editing = "add";
|
||||
$scope.currentFolder.id = folderID;
|
||||
|
||||
initShareEditing('folder');
|
||||
$scope.currentSharing.unrelated = $scope.currentSharing.unrelated.concat($scope.currentSharing.shared);
|
||||
$scope.currentSharing.shared = [];
|
||||
|
||||
$scope.ignores.text = '';
|
||||
$scope.ignores.error = null;
|
||||
$scope.ignores.disabled = false;
|
||||
// Ignores don't need to be initialized here, as that happens in
|
||||
// a second step if the user indicates in the creation modal
|
||||
// that they want to set ignores
|
||||
}, $scope.emitHTTPError);
|
||||
}
|
||||
|
||||
@@ -2142,7 +2195,14 @@ angular.module('syncthing.core')
|
||||
};
|
||||
|
||||
$scope.saveFolder = function () {
|
||||
$('#editFolder').modal('hide');
|
||||
if ($scope.currentFolder._editing == "add-ignores") {
|
||||
// On modal being hidden without clicking save, the defaults will be saved.
|
||||
$scope.ignores.saved = true;
|
||||
saveFolderAddIgnores($scope.currentFolder.id);
|
||||
hideFolderModal();
|
||||
return;
|
||||
}
|
||||
|
||||
var folderCfg = angular.copy($scope.currentFolder);
|
||||
$scope.currentSharing.selected[$scope.myID] = true;
|
||||
var newDevices = [];
|
||||
@@ -2191,44 +2251,88 @@ angular.module('syncthing.core')
|
||||
}
|
||||
delete folderCfg._guiVersioning;
|
||||
|
||||
if ($scope.editingDefaults) {
|
||||
if ($scope.currentFolder._editing == "defaults") {
|
||||
hideFolderModal();
|
||||
$scope.config.defaults.ignores.lines = ignoresArray();
|
||||
$scope.config.defaults.folder = folderCfg;
|
||||
$scope.saveConfig();
|
||||
} else {
|
||||
saveFolderExisting(folderCfg);
|
||||
return;
|
||||
}
|
||||
|
||||
// This is a new folder where ignores should apply before it first starts.
|
||||
if ($scope.currentFolder._addIgnores) {
|
||||
folderCfg.paused = true;
|
||||
}
|
||||
$scope.folders[folderCfg.id] = folderCfg;
|
||||
$scope.config.folders = folderList($scope.folders);
|
||||
|
||||
if ($scope.currentFolder._editing == "existing") {
|
||||
hideFolderModal();
|
||||
saveFolderIgnoresExisting();
|
||||
$scope.saveConfig();
|
||||
return;
|
||||
}
|
||||
|
||||
// No ignores to be set on the new folder, save directly.
|
||||
if (!$scope.currentFolder._addIgnores) {
|
||||
hideFolderModal();
|
||||
$scope.saveConfig();
|
||||
return;
|
||||
}
|
||||
|
||||
// Add folder (paused), load existing ignores and if there are none,
|
||||
// load default ignores, then let the user edit them.
|
||||
$scope.saveConfig().then(function() {
|
||||
editFolderLoadingIgnores();
|
||||
$scope.currentFolder._editing = "add-ignores";
|
||||
$('.nav-tabs a[href="#folder-ignores"]').tab('show');
|
||||
return editFolderGetIgnores();
|
||||
}).then(function(data) {
|
||||
// Error getting ignores -> leave error message.
|
||||
if (!data) {
|
||||
return;
|
||||
}
|
||||
if ((data.ignore && data.ignore.length > 0) || data.error) {
|
||||
editFolderInitIgnores(data.ignore, data.error);
|
||||
} else {
|
||||
getDefaultIgnores().then(function(lines) {
|
||||
setIgnoresText(lines);
|
||||
$scope.ignores.defaultLines = lines;
|
||||
$scope.ignores.disabled = false;
|
||||
});
|
||||
}
|
||||
}, $scope.emitHTTPError);
|
||||
};
|
||||
|
||||
function saveFolderExisting(folderCfg) {
|
||||
var ignoresLoaded = !$scope.ignores.disabled;
|
||||
function saveFolderIgnoresExisting() {
|
||||
if ($scope.ignores.disabled) {
|
||||
return;
|
||||
}
|
||||
var ignores = ignoresArray();
|
||||
|
||||
function arrayDiffers(a, b) {
|
||||
return !a !== !b || a.length !== b.length || a.some(function(v, i) { return v !== b[i]; });
|
||||
}
|
||||
if (arrayDiffers(ignores, $scope.ignores.originalLines)) {
|
||||
return saveIgnores(ignores);
|
||||
};
|
||||
}
|
||||
|
||||
function saveFolderAddIgnores(folderID, useDefault) {
|
||||
var ignores = useDefault ? $scope.ignores.defaultLines : ignoresArray();
|
||||
return saveIgnores(ignores).then(function () {
|
||||
return $scope.setFolderPause(folderID, $scope.currentFolder.paused);
|
||||
});
|
||||
};
|
||||
|
||||
function ignoresArray() {
|
||||
var ignores = $scope.ignores.text.split('\n');
|
||||
// Split always returns a minimum 1-length array even for no patterns
|
||||
if (ignores.length === 1 && ignores[0] === "") {
|
||||
ignores = [];
|
||||
}
|
||||
if (!$scope.editingExisting && ignores.length) {
|
||||
folderCfg.paused = true;
|
||||
};
|
||||
|
||||
$scope.folders[folderCfg.id] = folderCfg;
|
||||
$scope.config.folders = folderList($scope.folders);
|
||||
|
||||
function arrayEquals(a, b) {
|
||||
return a.length === b.length && a.every(function(v, i) { return v === b[i] });
|
||||
}
|
||||
|
||||
if (ignoresLoaded && $scope.editingExisting && !arrayEquals(ignores, folderCfg.ignores)) {
|
||||
saveIgnores(ignores);
|
||||
};
|
||||
|
||||
$scope.saveConfig(function () {
|
||||
if (!$scope.editingExisting && ignores.length) {
|
||||
saveIgnores(ignores, function () {
|
||||
$scope.setFolderPause(folderCfg.id, false);
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
return ignores;
|
||||
}
|
||||
|
||||
$scope.ignoreFolder = function (device, folderID, offeringDevice) {
|
||||
var ignoredFolder = {
|
||||
@@ -2282,8 +2386,8 @@ angular.module('syncthing.core')
|
||||
};
|
||||
|
||||
$scope.deleteFolder = function (id) {
|
||||
$('#editFolder').modal('hide');
|
||||
if (!$scope.editingExisting) {
|
||||
hideFolderModal();
|
||||
if ($scope.currentFolder._editing != "existing") {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2295,6 +2399,10 @@ angular.module('syncthing.core')
|
||||
$scope.saveConfig();
|
||||
};
|
||||
|
||||
function hideFolderModal() {
|
||||
$('#editFolder').modal('hide');
|
||||
}
|
||||
|
||||
function resetRestoreVersions() {
|
||||
$scope.restoreVersions = {
|
||||
folder: null,
|
||||
@@ -2808,7 +2916,7 @@ angular.module('syncthing.core')
|
||||
|
||||
$scope.themeName = function (theme) {
|
||||
var translation = $translate.instant("theme-name-" + theme);
|
||||
if (translation.startsWith("theme-name-")) {
|
||||
if (translation.indexOf("theme-name-") == 0) {
|
||||
// Fall back to simple Title Casing on missing translation
|
||||
translation = theme.toLowerCase().replace(/(?:^|\s)\S/g, function (a) {
|
||||
return a.toUpperCase();
|
||||
@@ -2839,6 +2947,10 @@ angular.module('syncthing.core')
|
||||
return Object.keys(dict).length;
|
||||
};
|
||||
|
||||
$scope.has = function (array, element) {
|
||||
return array.indexOf(element) >= 0;
|
||||
};
|
||||
|
||||
$scope.dismissNotification = function (id) {
|
||||
var idx = $scope.config.options.unackedNotificationIDs.indexOf(id);
|
||||
if (idx > -1) {
|
||||
|
||||
@@ -4,7 +4,7 @@ angular.module('syncthing.core')
|
||||
require: 'ngModel',
|
||||
link: function (scope, elm, attrs, ctrl) {
|
||||
ctrl.$parsers.unshift(function (viewValue) {
|
||||
if (scope.editingExisting) {
|
||||
if (scope.currentFolder._editing != "add") {
|
||||
// we shouldn't validate
|
||||
ctrl.$setValidity('uniqueFolder', true);
|
||||
} else if (scope.folders.hasOwnProperty(viewValue)) {
|
||||
|
||||
@@ -4,7 +4,7 @@ angular.module('syncthing.core')
|
||||
require: 'ngModel',
|
||||
link: function (scope, elm, attrs, ctrl) {
|
||||
ctrl.$parsers.unshift(function (viewValue) {
|
||||
if (scope.editingExisting) {
|
||||
if (scope.currentDevice._editing != "add") {
|
||||
// we shouldn't validate
|
||||
ctrl.$setValidity('validDeviceid', true);
|
||||
} else {
|
||||
|
||||
@@ -3,14 +3,14 @@
|
||||
<form role="form" name="deviceEditor">
|
||||
<ul class="nav nav-tabs" ng-init="loadFormIntoScope(deviceEditor)">
|
||||
<li class="active"><a data-toggle="tab" href="#device-general"><span class="fas fa-cog"></span> <span translate>General</span></a></li>
|
||||
<li ng-if="!editingDefaults"><a data-toggle="tab" href="#device-sharing"><span class="fas fa-share-alt"></span> <span translate>Sharing</span></a></li>
|
||||
<li ng-if="!editingDeviceDefaults()"><a data-toggle="tab" href="#device-sharing"><span class="fas fa-share-alt"></span> <span translate>Sharing</span></a></li>
|
||||
<li><a data-toggle="tab" href="#device-advanced"><span class="fas fa-cogs"></span> <span translate>Advanced</span></a></li>
|
||||
</ul>
|
||||
<div class="tab-content">
|
||||
<div id="device-general" class="tab-pane in active">
|
||||
<div ng-if="!editingDefaults" class="form-group" ng-class="{'has-error': deviceEditor.deviceID.$invalid && deviceEditor.deviceID.$dirty}" ng-init="loadFormIntoScope(deviceEditor)">
|
||||
<div ng-if="!editingDeviceDefaults()" class="form-group" ng-class="{'has-error': deviceEditor.deviceID.$invalid && deviceEditor.deviceID.$dirty}" ng-init="loadFormIntoScope(deviceEditor)">
|
||||
<label translate for="deviceID">Device ID</label>
|
||||
<div ng-if="!editingExisting">
|
||||
<div ng-if="!editingDeviceExisting()">
|
||||
<div class="input-group">
|
||||
<input name="deviceID" id="deviceID" class="form-control text-monospace" type="text" ng-model="currentDevice.deviceID" required="" valid-deviceid list="discovery-list" aria-required="true" />
|
||||
<div class="input-group-btn">
|
||||
@@ -40,7 +40,7 @@
|
||||
<span translate ng-if="deviceEditor.deviceID.$error.unique && deviceEditor.deviceID.$dirty">A device with that ID is already added.</span>
|
||||
</p>
|
||||
</div>
|
||||
<div ng-if="editingExisting" class="input-group">
|
||||
<div ng-if="editingDeviceExisting()" class="input-group">
|
||||
<div class="well well-sm text-monospace form-control" style="height: auto;" select-on-click>{{currentDevice.deviceID}}</div>
|
||||
<div class="input-group-btn">
|
||||
<button type="button" class="btn btn-default" data-toggle="modal" data-target="#idqr">
|
||||
@@ -56,7 +56,7 @@
|
||||
<p translate ng-if="currentDevice.deviceID != myID" class="help-block">Shown instead of Device ID in the cluster status. Will be updated to the name the device advertises if left empty.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div ng-if="!editingDefaults" id="device-sharing" class="tab-pane">
|
||||
<div ng-if="!editingDeviceDefaults()" id="device-sharing" class="tab-pane">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
@@ -172,7 +172,7 @@
|
||||
<button type="button" class="btn btn-default btn-sm" data-dismiss="modal">
|
||||
<span class="fas fa-times"></span> <span translate>Close</span>
|
||||
</button>
|
||||
<div ng-if="editingExisting && !editingDefaults" class="pull-left">
|
||||
<div ng-if="has(['existing', 'defaults'], currentDevice._editing)" class="pull-left">
|
||||
<button type="button" class="btn btn-warning btn-sm" data-toggle="modal" data-target="#remove-device-confirmation">
|
||||
<span class="fas fa-minus-circle"></span> <span translate>Remove</span>
|
||||
</button>
|
||||
|
||||
@@ -2,44 +2,44 @@
|
||||
<div class="modal-body">
|
||||
<form role="form" name="folderEditor">
|
||||
<ul class="nav nav-tabs" ng-init="loadFormIntoScope(folderEditor)">
|
||||
<li class="active"><a data-toggle="tab" href="#folder-general"><span class="fas fa-cog"></span> <span translate>General</span></a></li>
|
||||
<li><a data-toggle="tab" href="#folder-sharing"><span class="fas fa-share-alt"></span> <span translate>Sharing</span></a></li>
|
||||
<li><a data-toggle="tab" href="#folder-versioning"><span class="fas fa-copy"></span> <span translate>File Versioning</span></a></li>
|
||||
<li ng-if="!editingDefaults" ng-class="{'disabled': currentFolder._recvEnc}"><a ng-attr-data-toggle="{{ currentFolder._recvEnc ? undefined : 'tab'}}" href="{{currentFolder._recvEnc ? '#' : '#folder-ignores'}}"><span class="fas fa-filter"></span> <span translate>Ignore Patterns</span></a></li>
|
||||
<li><a data-toggle="tab" href="#folder-advanced"><span class="fas fa-cogs"></span> <span translate>Advanced</span></a></li>
|
||||
<li ng-class="{'disabled': currentFolder._editing == 'add-ignores'}" class="active"><a data-toggle="tab" href="{{currentFolder._editing == 'add-ignores' ? '' : '#folder-general'}}"><span class="fas fa-cog"></span> <span translate>General</span></a></li>
|
||||
<li ng-class="{'disabled': currentFolder._editing == 'add-ignores'}"><a data-toggle="tab" href="{{currentFolder._editing == 'add-ignores' ? '' : '#folder-sharing'}}"><span class="fas fa-share-alt"></span> <span translate>Sharing</span></a></li>
|
||||
<li ng-class="{'disabled': currentFolder._editing == 'add-ignores'}"><a data-toggle="tab" href="{{currentFolder._editing == 'add-ignores' ? '' : '#folder-versioning'}}"><span class="fas fa-copy"></span> <span translate>File Versioning</span></a></li>
|
||||
<li ng-class="{'disabled': currentFolder._recvEnc}"><a data-toggle="tab" href="{{currentFolder._recvEnc ? '' : '#folder-ignores'}}"><span class="fas fa-filter"></span> <span translate>Ignore Patterns</span></a></li>
|
||||
<li ng-class="{'disabled': currentFolder._editing == 'add-ignores'}"><a data-toggle="tab" href="{{currentFolder._editing == 'add-ignores' ? '' : '#folder-advanced'}}"><span class="fas fa-cogs"></span> <span translate>Advanced</span></a></li>
|
||||
</ul>
|
||||
<div class="tab-content">
|
||||
|
||||
<div id="folder-general" class="tab-pane in active">
|
||||
<div class="form-group" ng-class="{'has-error': folderEditor.folderLabel.$invalid && folderEditor.folderLabel.$dirty && !editingDefaults}">
|
||||
<div class="form-group" ng-class="{'has-error': folderEditor.folderLabel.$invalid && folderEditor.folderLabel.$dirty && !editingFolderDefaults()}">
|
||||
<label for="folderLabel"><span translate>Folder Label</span></label>
|
||||
<input name="folderLabel" id="folderLabel" class="form-control" type="text" ng-model="currentFolder.label" value="{{currentFolder.label}}" />
|
||||
<p class="help-block">
|
||||
<span translate ng-if="folderEditor.folderLabel.$valid || folderEditor.folderLabel.$pristine">Optional descriptive label for the folder. Can be different on each device.</span>
|
||||
</p>
|
||||
</div>
|
||||
<div ng-if="!editingDefaults" class="form-group" ng-class="{'has-error': folderEditor.folderID.$invalid && folderEditor.folderID.$dirty}">
|
||||
<div ng-if="!editingFolderDefaults()" class="form-group" ng-class="{'has-error': folderEditor.folderID.$invalid && folderEditor.folderID.$dirty}">
|
||||
<label for="folderID"><span translate>Folder ID</span></label>
|
||||
<input name="folderID" ng-readonly="editingExisting || (!editingExisting && currentFolder.viewFlags.importFromOtherDevice)" id="folderID" class="form-control" type="text" ng-model="currentFolder.id" required="" aria-required="true" unique-folder value="{{currentFolder.id}}" />
|
||||
<input name="folderID" ng-readonly="has(['existing', 'add'], currentFolder._editing)" id="folderID" class="form-control" type="text" ng-model="currentFolder.id" required="" aria-required="true" unique-folder value="{{currentFolder.id}}" />
|
||||
<p class="help-block">
|
||||
<span translate ng-if="folderEditor.folderID.$valid || folderEditor.folderID.$pristine">Required identifier for the folder. Must be the same on all cluster devices.</span>
|
||||
<span translate ng-if="folderEditor.folderID.$error.uniqueFolder">The folder ID must be unique.</span>
|
||||
<span translate ng-if="folderEditor.folderID.$error.required && folderEditor.folderID.$dirty">The folder ID cannot be blank.</span>
|
||||
<span translate ng-show="!editingExisting">When adding a new folder, keep in mind that the Folder ID is used to tie folders together between devices. They are case sensitive and must match exactly between all devices.</span>
|
||||
<span translate ng-show="!editingFolderExisting()">When adding a new folder, keep in mind that the Folder ID is used to tie folders together between devices. They are case sensitive and must match exactly between all devices.</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="form-group" ng-class="{'has-error': folderEditor.folderPath.$invalid && folderEditor.folderPath.$dirty && !editingDefaults}">
|
||||
<div class="form-group" ng-class="{'has-error': folderEditor.folderPath.$invalid && folderEditor.folderPath.$dirty && !editingFolderDefaults()}">
|
||||
<label translate for="folderPath">Folder Path</label>
|
||||
<input name="folderPath" ng-readonly="editingExisting && !editingDefaults" id="folderPath" class="form-control" type="text" ng-model="currentFolder.path" list="directory-list" ng-required="!editingDefaults" ng-aria-required="!editingDefaults" path-is-sub-dir />
|
||||
<input name="folderPath" ng-readonly="editingFolderExisting()" id="folderPath" class="form-control" type="text" ng-model="currentFolder.path" list="directory-list" ng-required="!editingFolderDefaults()" ng-aria-required="!editingFolderDefaults()" path-is-sub-dir />
|
||||
<datalist id="directory-list">
|
||||
<option ng-repeat="directory in directoryList" value="{{ directory }}" />
|
||||
</datalist>
|
||||
<p class="help-block">
|
||||
<span ng-if="folderEditor.folderPath.$valid || folderEditor.folderPath.$pristine"><span translate>Path to the folder on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for</span> <code>{{system.tilde}}</code>.</br></span>
|
||||
<span translate ng-if="folderEditor.folderPath.$error.required && folderEditor.folderPath.$dirty && !editingDefaults">The folder path cannot be blank.</span>
|
||||
<span translate ng-if="folderEditor.folderPath.$error.required && folderEditor.folderPath.$dirty && !editingFolderDefaults()">The folder path cannot be blank.</span>
|
||||
<span class="text-danger" translate translate-value-other-folder="{{folderPathErrors.otherID}}" ng-if="folderPathErrors.isSub && folderPathErrors.otherLabel.length == 0">Warning, this path is a subdirectory of an existing folder "{%otherFolder%}".</span>
|
||||
<span class="text-danger" translate translate-value-other-folder="{{folderPathErrors.otherID}}" translate-value-other-folder-label="{{folderPathErrors.otherLabel}}" ng-if="folderPathErrors.isSub && folderPathErrors.otherLabel.length != 0">Warning, this path is a subdirectory of an existing folder "{%otherFolderLabel%}" ({%otherFolder%}).</span>
|
||||
<span ng-if="folderPathErrors.isParent && !editingDefaults">
|
||||
<span ng-if="folderPathErrors.isParent && !editingFolderDefaults()">
|
||||
<span class="text-danger" translate translate-value-other-folder="{{folderPathErrors.otherID}}" ng-if="folderPathErrors.otherLabel.length == 0">Warning, this path is a parent directory of an existing folder "{%otherFolder%}".</span>
|
||||
<span class="text-danger" translate translate-value-other-folder="{{folderPathErrors.otherID}}" translate-value-other-folder-label="{{folderPathErrors.otherLabel}}" ng-if="folderPathErrors.otherLabel.length != 0">Warning, this path is a parent directory of an existing folder "{%otherFolderLabel%}" ({%otherFolder%}).</span>
|
||||
</span>
|
||||
@@ -148,33 +148,42 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div ng-if="!editingDefaults" id="folder-ignores" class="tab-pane">
|
||||
<p translate>Enter ignore patterns, one per line.</p>
|
||||
<div ng-class="{'has-error': ignores.error != null}">
|
||||
<textarea class="form-control" rows="5" ng-model="ignores.text" ng-disabled="ignores.disabled"></textarea>
|
||||
<p class="help-block" ng-if="ignores.error">
|
||||
{{ignores.error}}
|
||||
</p>
|
||||
<div id="folder-ignores" class="tab-pane" ng-switch="currentFolder._editing">
|
||||
<div ng-switch-when="add">
|
||||
<label>
|
||||
<input type="checkbox" ng-model="currentFolder._addIgnores" > <span translate>Add ignore patterns</span>
|
||||
</label>
|
||||
<p translate class="help-block">Ignore patterns can only be added after the folder is created. If checked, an input field to enter ignore patterns will be presented after saving.</p>
|
||||
</div>
|
||||
<div ng-switch-default>
|
||||
<p translate>Enter ignore patterns, one per line.</p>
|
||||
<div ng-class="{'has-error': ignores.error != null}">
|
||||
<textarea class="form-control" name="ignoresText" rows="5" ng-model="ignores.text" ng-disabled="ignores.disabled"></textarea>
|
||||
<p class="help-block" ng-if="ignores.error">
|
||||
{{ignores.error}}
|
||||
</p>
|
||||
</div>
|
||||
<hr />
|
||||
<p class="small"><span translate>Quick guide to supported patterns</span> (<a href="https://docs.syncthing.net/users/ignoring.html" target="_blank" translate>full documentation</a>):</p>
|
||||
<dl class="dl-horizontal dl-narrow small">
|
||||
<dt><code>(?d)</code></dt>
|
||||
<dd><b><span translate>Prefix indicating that the file can be deleted if preventing directory removal</span></b></dd>
|
||||
<dt><code>(?i)</code></dt>
|
||||
<dd><span translate>Prefix indicating that the pattern should be matched without case sensitivity</span></dd>
|
||||
<dt><code>!</code></dt>
|
||||
<dd><span translate>Inversion of the given condition (i.e. do not exclude)</span></dd>
|
||||
<dt><code>*</code></dt>
|
||||
<dd><span translate>Single level wildcard (matches within a directory only)</span></dd>
|
||||
<dt><code>**</code></dt>
|
||||
<dd><span translate>Multi level wildcard (matches multiple directory levels)</span></dd>
|
||||
<dt><code>//</code></dt>
|
||||
<dd><span translate>Comment, when used at the start of a line</span></dd>
|
||||
</dl>
|
||||
<div ng-if="!editingFolderDefaults()">
|
||||
<hr />
|
||||
<span translate translate-value-path="{{currentFolder.path}}{{system.pathSeparator}}.stignore">Editing {%path%}.</span>
|
||||
</div>
|
||||
</div>
|
||||
<hr />
|
||||
<p class="small"><span translate>Quick guide to supported patterns</span> (<a href="https://docs.syncthing.net/users/ignoring.html" target="_blank" translate>full documentation</a>):</p>
|
||||
<dl class="dl-horizontal dl-narrow small">
|
||||
<dt><code>(?d)</code></dt>
|
||||
<dd><b><span translate>Prefix indicating that the file can be deleted if preventing directory removal</span></b></dd>
|
||||
<dt><code>(?i)</code></dt>
|
||||
<dd><span translate>Prefix indicating that the pattern should be matched without case sensitivity</span></dd>
|
||||
<dt><code>!</code></dt>
|
||||
<dd><span translate>Inversion of the given condition (i.e. do not exclude)</span></dd>
|
||||
<dt><code>*</code></dt>
|
||||
<dd><span translate>Single level wildcard (matches within a directory only)</span></dd>
|
||||
<dt><code>**</code></dt>
|
||||
<dd><span translate>Multi level wildcard (matches multiple directory levels)</span></dd>
|
||||
<dt><code>//</code></dt>
|
||||
<dd><span translate>Comment, when used at the start of a line</span></dd>
|
||||
</dl>
|
||||
<hr />
|
||||
<span translate ng-show="editingExisting" translate-value-path="{{currentFolder.path}}{{system.pathSeparator}}.stignore">Editing {%path%}.</span>
|
||||
<span translate ng-show="!editingExisting" translate-value-path="{{currentFolder.path}}{{system.pathSeparator}}.stignore">Creating ignore patterns, overwriting an existing file at {%path%}.</span>
|
||||
</div>
|
||||
|
||||
<div id="folder-advanced" class="tab-pane">
|
||||
@@ -205,17 +214,17 @@
|
||||
<div class="col-md-6 form-group">
|
||||
<label translate>Folder Type</label>
|
||||
<a href="https://docs.syncthing.net/users/foldertypes.html" target="_blank"><span class="fas fa-question-circle"></span> <span translate>Help</span></a>
|
||||
<select class="form-control" ng-change="setDefaultsForFolderType()" ng-model="currentFolder.type" ng-disabled="editingExisting && currentFolder.type == 'receiveencrypted'">
|
||||
<select class="form-control" ng-change="setDefaultsForFolderType()" ng-model="currentFolder.type" ng-disabled="editingFolderExisting() && currentFolder.type == 'receiveencrypted'">
|
||||
<option value="sendreceive" translate>Send & Receive</option>
|
||||
<option value="sendonly" translate>Send Only</option>
|
||||
<option value="receiveonly" translate>Receive Only</option>
|
||||
<option value="receiveencrypted" ng-disabled="editingExisting" translate>Receive Encrypted</option>
|
||||
<option value="receiveencrypted" ng-disabled="editingFolderExisting()" translate>Receive Encrypted</option>
|
||||
</select>
|
||||
<p ng-if="currentFolder.type == 'sendonly'" translate class="help-block">Files are protected from changes made on other devices, but changes made on this device will be sent to the rest of the cluster.</p>
|
||||
<p ng-if="currentFolder.type == 'receiveonly'" translate class="help-block">Files are synchronized from the cluster, but any changes made locally will not be sent to other devices.</p>
|
||||
<p ng-if="currentFolder.type == 'receiveencrypted'" translate class="help-block" translate-value-receive-encrypted="{{'Receive Encrypted' | translate}}">Stores and syncs only encrypted data. Folders on all connected devices need to be set up with the same password or be of type "{%receiveEncrypted%}" too.</p>
|
||||
<p ng-if="editingExisting && currentFolder.type == 'receiveencrypted'" translate class="help-block" translate-value-receive-encrypted="{{'Receive Encrypted' | translate}}">Folder type "{%receiveEncrypted%}" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.</p>
|
||||
<p ng-if="editingExisting && currentFolder.type != 'receiveencrypted'" translate class="help-block" translate-value-receive-encrypted="{{'Receive Encrypted' | translate}}">Folder type "{%receiveEncrypted%}" can only be set when adding a new folder.</p>
|
||||
<p ng-if="editingFolderExisting() && currentFolder.type == 'receiveencrypted'" translate class="help-block" translate-value-receive-encrypted="{{'Receive Encrypted' | translate}}">Folder type "{%receiveEncrypted%}" cannot be changed after adding the folder. You need to remove the folder, delete or decrypt the data on disk, and add the folder again.</p>
|
||||
<p ng-if="editingFolderExisting() && currentFolder.type != 'receiveencrypted'" translate class="help-block" translate-value-receive-encrypted="{{'Receive Encrypted' | translate}}">Folder type "{%receiveEncrypted%}" can only be set when adding a new folder.</p>
|
||||
</div>
|
||||
<div class="col-md-6 form-group">
|
||||
<label translate>File Pull Order</label>
|
||||
@@ -274,7 +283,7 @@
|
||||
<button type="button" class="btn btn-default btn-sm" data-dismiss="modal">
|
||||
<span class="fas fa-times"></span> <span translate>Close</span>
|
||||
</button>
|
||||
<button type="button" class="btn btn-warning pull-left btn-sm" data-toggle="modal" data-target="#remove-folder-confirmation" ng-if="editingExisting && !editingDefaults">
|
||||
<button type="button" class="btn btn-warning pull-left btn-sm" data-toggle="modal" data-target="#remove-folder-confirmation" ng-if="editingFolderExisting()">
|
||||
<span class="fas fa-minus-circle"></span> <span translate>Remove</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@@ -313,6 +313,7 @@ func (s *service) Serve(ctx context.Context) error {
|
||||
configBuilder.registerDevice("/rest/config/devices/:id")
|
||||
configBuilder.registerDefaultFolder("/rest/config/defaults/folder")
|
||||
configBuilder.registerDefaultDevice("/rest/config/defaults/device")
|
||||
configBuilder.registerDefaultIgnores("/rest/config/defaults/ignores")
|
||||
configBuilder.registerOptions("/rest/config/options")
|
||||
configBuilder.registerLDAP("/rest/config/ldap")
|
||||
configBuilder.registerGUI("/rest/config/gui")
|
||||
|
||||
@@ -229,6 +229,28 @@ func (c *configMuxBuilder) registerDefaultDevice(path string) {
|
||||
})
|
||||
}
|
||||
|
||||
func (c *configMuxBuilder) registerDefaultIgnores(path string) {
|
||||
c.HandlerFunc(http.MethodGet, path, func(w http.ResponseWriter, _ *http.Request) {
|
||||
sendJSON(w, c.cfg.DefaultIgnores())
|
||||
})
|
||||
|
||||
c.HandlerFunc(http.MethodPut, path, func(w http.ResponseWriter, r *http.Request) {
|
||||
var ignores config.Ignores
|
||||
if err := unmarshalTo(r.Body, &ignores); err != nil {
|
||||
http.Error(w, err.Error(), http.StatusBadRequest)
|
||||
return
|
||||
}
|
||||
waiter, err := c.cfg.Modify(func(cfg *config.Configuration) {
|
||||
cfg.Defaults.Ignores = ignores
|
||||
})
|
||||
if err != nil {
|
||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||
return
|
||||
}
|
||||
c.finish(w, waiter)
|
||||
})
|
||||
}
|
||||
|
||||
func (c *configMuxBuilder) registerOptions(path string) {
|
||||
c.HandlerFunc(http.MethodGet, path, func(w http.ResponseWriter, _ *http.Request) {
|
||||
sendJSON(w, c.cfg.Options())
|
||||
|
||||
@@ -113,18 +113,16 @@ func New(myID protocol.DeviceID) Configuration {
|
||||
return cfg
|
||||
}
|
||||
|
||||
func NewWithFreePorts(myID protocol.DeviceID) (Configuration, error) {
|
||||
cfg := New(myID)
|
||||
|
||||
func (cfg *Configuration) ProbeFreePorts() error {
|
||||
port, err := getFreePort("127.0.0.1", DefaultGUIPort)
|
||||
if err != nil {
|
||||
return Configuration{}, errors.Wrap(err, "get free port (GUI)")
|
||||
return errors.Wrap(err, "get free port (GUI)")
|
||||
}
|
||||
cfg.GUI.RawAddress = fmt.Sprintf("127.0.0.1:%d", port)
|
||||
|
||||
port, err = getFreePort("0.0.0.0", DefaultTCPPort)
|
||||
if err != nil {
|
||||
return Configuration{}, errors.Wrap(err, "get free port (BEP)")
|
||||
return errors.Wrap(err, "get free port (BEP)")
|
||||
}
|
||||
if port == DefaultTCPPort {
|
||||
cfg.Options.RawListenAddresses = []string{"default"}
|
||||
@@ -136,7 +134,7 @@ func NewWithFreePorts(myID protocol.DeviceID) (Configuration, error) {
|
||||
}
|
||||
}
|
||||
|
||||
return cfg, nil
|
||||
return nil
|
||||
}
|
||||
|
||||
type xmlConfiguration struct {
|
||||
@@ -623,3 +621,9 @@ func ensureZeroForNodefault(empty interface{}, target interface{}) {
|
||||
return len(v) > 0
|
||||
})
|
||||
}
|
||||
|
||||
func (i Ignores) Copy() Ignores {
|
||||
out := Ignores{Lines: make([]string, len(i.Lines))}
|
||||
copy(out.Lines, i.Lines)
|
||||
return out
|
||||
}
|
||||
|
||||
@@ -69,8 +69,9 @@ func (m *Configuration) XXX_DiscardUnknown() {
|
||||
var xxx_messageInfo_Configuration proto.InternalMessageInfo
|
||||
|
||||
type Defaults struct {
|
||||
Folder FolderConfiguration `protobuf:"bytes,1,opt,name=folder,proto3" json:"folder" xml:"folder"`
|
||||
Device DeviceConfiguration `protobuf:"bytes,2,opt,name=device,proto3" json:"device" xml:"device"`
|
||||
Folder FolderConfiguration `protobuf:"bytes,1,opt,name=folder,proto3" json:"folder" xml:"folder"`
|
||||
Device DeviceConfiguration `protobuf:"bytes,2,opt,name=device,proto3" json:"device" xml:"device"`
|
||||
Ignores Ignores `protobuf:"bytes,3,opt,name=ignores,proto3" json:"ignores" xml:"ignores"`
|
||||
}
|
||||
|
||||
func (m *Defaults) Reset() { *m = Defaults{} }
|
||||
@@ -106,56 +107,98 @@ func (m *Defaults) XXX_DiscardUnknown() {
|
||||
|
||||
var xxx_messageInfo_Defaults proto.InternalMessageInfo
|
||||
|
||||
type Ignores struct {
|
||||
Lines []string `protobuf:"bytes,1,rep,name=lines,proto3" json:"lines" xml:"line"`
|
||||
}
|
||||
|
||||
func (m *Ignores) Reset() { *m = Ignores{} }
|
||||
func (m *Ignores) String() string { return proto.CompactTextString(m) }
|
||||
func (*Ignores) ProtoMessage() {}
|
||||
func (*Ignores) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_baadf209193dc627, []int{2}
|
||||
}
|
||||
func (m *Ignores) XXX_Unmarshal(b []byte) error {
|
||||
return m.Unmarshal(b)
|
||||
}
|
||||
func (m *Ignores) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
||||
if deterministic {
|
||||
return xxx_messageInfo_Ignores.Marshal(b, m, deterministic)
|
||||
} else {
|
||||
b = b[:cap(b)]
|
||||
n, err := m.MarshalToSizedBuffer(b)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return b[:n], nil
|
||||
}
|
||||
}
|
||||
func (m *Ignores) XXX_Merge(src proto.Message) {
|
||||
xxx_messageInfo_Ignores.Merge(m, src)
|
||||
}
|
||||
func (m *Ignores) XXX_Size() int {
|
||||
return m.ProtoSize()
|
||||
}
|
||||
func (m *Ignores) XXX_DiscardUnknown() {
|
||||
xxx_messageInfo_Ignores.DiscardUnknown(m)
|
||||
}
|
||||
|
||||
var xxx_messageInfo_Ignores proto.InternalMessageInfo
|
||||
|
||||
func init() {
|
||||
proto.RegisterType((*Configuration)(nil), "config.Configuration")
|
||||
proto.RegisterType((*Defaults)(nil), "config.Defaults")
|
||||
proto.RegisterType((*Ignores)(nil), "config.Ignores")
|
||||
}
|
||||
|
||||
func init() { proto.RegisterFile("lib/config/config.proto", fileDescriptor_baadf209193dc627) }
|
||||
|
||||
var fileDescriptor_baadf209193dc627 = []byte{
|
||||
// 654 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x94, 0xcd, 0x6e, 0xd3, 0x40,
|
||||
0x10, 0xc7, 0xed, 0xa6, 0x4d, 0xda, 0xed, 0x17, 0x32, 0x08, 0x5c, 0x3e, 0xbc, 0x61, 0x15, 0x50,
|
||||
0x41, 0xa5, 0x95, 0xca, 0x05, 0x71, 0x23, 0x44, 0x94, 0x0a, 0x24, 0x2a, 0xa3, 0x22, 0xe0, 0x82,
|
||||
0x92, 0x78, 0xeb, 0xae, 0x94, 0xd8, 0x96, 0xbd, 0xae, 0xda, 0x47, 0xe0, 0x86, 0x78, 0x02, 0x4e,
|
||||
0x48, 0xdc, 0x79, 0x88, 0xdc, 0x92, 0x23, 0xa7, 0x95, 0x9a, 0xdc, 0x7c, 0xf4, 0x91, 0x13, 0xda,
|
||||
0x0f, 0xbb, 0xb6, 0x6a, 0xe0, 0x64, 0xcf, 0xfc, 0xff, 0xf3, 0x9b, 0xd5, 0x78, 0xc7, 0xe0, 0xc6,
|
||||
0x80, 0xf4, 0x76, 0xfa, 0xbe, 0x77, 0x44, 0x5c, 0xf5, 0xd8, 0x0e, 0x42, 0x9f, 0xfa, 0x46, 0x5d,
|
||||
0x46, 0x37, 0x5b, 0x05, 0xc3, 0x91, 0x3f, 0x70, 0x70, 0x28, 0x83, 0x38, 0xec, 0x52, 0xe2, 0x7b,
|
||||
0xd2, 0x5d, 0x72, 0x39, 0xf8, 0x84, 0xf4, 0x71, 0x95, 0xeb, 0x6e, 0xc1, 0xe5, 0xc6, 0xa4, 0xca,
|
||||
0x82, 0x0a, 0x96, 0x81, 0xd3, 0x0d, 0xaa, 0x3c, 0xf7, 0x0a, 0x1e, 0x3f, 0xe0, 0x42, 0x54, 0x65,
|
||||
0xdb, 0x28, 0xda, 0x7a, 0x11, 0x0e, 0x4f, 0xb0, 0xa3, 0xa4, 0x25, 0x7c, 0x4a, 0xe5, 0x2b, 0xfa,
|
||||
0xde, 0x00, 0xab, 0xcf, 0x8b, 0xd5, 0x86, 0x0d, 0x1a, 0x27, 0x38, 0x8c, 0x88, 0xef, 0x99, 0x7a,
|
||||
0x53, 0xdf, 0x5c, 0x68, 0x3f, 0x49, 0x18, 0xcc, 0x52, 0x29, 0x83, 0xc6, 0xe9, 0x70, 0xf0, 0x14,
|
||||
0xa9, 0x78, 0xab, 0x4b, 0x69, 0x88, 0x7e, 0x33, 0x58, 0x23, 0x1e, 0x4d, 0xc6, 0xad, 0x95, 0x62,
|
||||
0xde, 0xce, 0xaa, 0x8c, 0x77, 0xa0, 0x21, 0x87, 0x17, 0x99, 0x73, 0xcd, 0xda, 0xe6, 0xf2, 0xee,
|
||||
0xad, 0x6d, 0x35, 0xed, 0x17, 0x22, 0x5d, 0x3a, 0x41, 0x1b, 0x8e, 0x18, 0xd4, 0x78, 0x53, 0x55,
|
||||
0x93, 0x32, 0xb8, 0x22, 0x9a, 0xca, 0x18, 0xd9, 0x99, 0xc0, 0xb9, 0x72, 0xdc, 0x91, 0x59, 0x2b,
|
||||
0x73, 0x3b, 0x22, 0xfd, 0x17, 0xae, 0xaa, 0xc9, 0xb9, 0x32, 0x46, 0x76, 0x26, 0x18, 0x36, 0xa8,
|
||||
0xb9, 0x31, 0x31, 0xe7, 0x9b, 0xfa, 0xe6, 0xf2, 0xae, 0x99, 0x31, 0xf7, 0x0e, 0xf7, 0xcb, 0xc0,
|
||||
0xfb, 0x1c, 0x38, 0x65, 0xb0, 0xb6, 0x77, 0xb8, 0x9f, 0x30, 0xc8, 0x6b, 0x52, 0x06, 0x97, 0x04,
|
||||
0xd3, 0x8d, 0x09, 0xfa, 0x3a, 0x69, 0x71, 0xc9, 0xe6, 0x82, 0xf1, 0x01, 0xcc, 0xf3, 0x2f, 0x6a,
|
||||
0x2e, 0x08, 0xe8, 0x46, 0x06, 0x7d, 0xdd, 0x79, 0x76, 0x50, 0xa6, 0x3e, 0x54, 0xd4, 0x79, 0x2e,
|
||||
0x25, 0x0c, 0x8a, 0xb2, 0x94, 0x41, 0x20, 0xb8, 0x3c, 0xe0, 0x60, 0xa1, 0xda, 0x42, 0x33, 0xde,
|
||||
0x83, 0x86, 0xba, 0x08, 0x66, 0x5d, 0xd0, 0x6f, 0x67, 0xf4, 0x37, 0x32, 0x5d, 0x6e, 0xd0, 0xcc,
|
||||
0xe6, 0xa0, 0x8a, 0x52, 0x06, 0x57, 0x05, 0x5b, 0xc5, 0xc8, 0xce, 0x14, 0xe3, 0x87, 0x0e, 0xd6,
|
||||
0x89, 0xeb, 0xf9, 0x21, 0x76, 0x3e, 0x65, 0x93, 0x6e, 0x88, 0x49, 0x5f, 0xcf, 0x5b, 0xa8, 0xbb,
|
||||
0x25, 0x27, 0xde, 0x3e, 0x56, 0xf0, 0x6b, 0x21, 0x1e, 0xfa, 0x14, 0xef, 0xcb, 0xe2, 0x4e, 0x3e,
|
||||
0xf1, 0x0d, 0xd1, 0xa9, 0x42, 0x44, 0xc9, 0xb8, 0x75, 0xb5, 0x22, 0x9f, 0x8e, 0x5b, 0x95, 0x2c,
|
||||
0x7b, 0x8d, 0x94, 0x62, 0xe3, 0xb3, 0x0e, 0xd6, 0x03, 0xec, 0x39, 0xc4, 0x73, 0xf3, 0xb3, 0x2e,
|
||||
0xfe, 0xf3, 0xac, 0x2f, 0xd5, 0xa4, 0xcd, 0x0e, 0x0e, 0x42, 0xdc, 0xef, 0x52, 0xec, 0x1c, 0x48,
|
||||
0x80, 0x62, 0x26, 0x0c, 0xea, 0x8f, 0x52, 0x06, 0xef, 0x88, 0x43, 0x07, 0x45, 0x6d, 0xcb, 0x1f,
|
||||
0x12, 0x8a, 0x87, 0x01, 0x3d, 0x43, 0xa6, 0x6e, 0xaf, 0x95, 0xb4, 0xc8, 0x38, 0x00, 0x8b, 0x0e,
|
||||
0x3e, 0xea, 0xc6, 0x03, 0x1a, 0x99, 0x4b, 0xe2, 0x93, 0x5c, 0xb9, 0xb8, 0x99, 0x32, 0xdf, 0x46,
|
||||
0x6a, 0x52, 0xb9, 0x33, 0x65, 0x70, 0x4d, 0xdd, 0x47, 0x99, 0x40, 0x76, 0xae, 0xa1, 0x9f, 0x3a,
|
||||
0x58, 0xcc, 0x4a, 0x8d, 0xb7, 0xa0, 0x2e, 0x57, 0x40, 0xac, 0xe8, 0x7f, 0xd6, 0xc9, 0x52, 0x7d,
|
||||
0x54, 0xc9, 0xa5, 0x6d, 0x52, 0x79, 0x0e, 0x95, 0x63, 0x33, 0xe7, 0xca, 0xd0, 0xaa, 0x5d, 0xca,
|
||||
0xa1, 0xb2, 0xe4, 0xd2, 0x2a, 0xa9, 0x7c, 0xfb, 0xd5, 0xe8, 0xdc, 0xd2, 0x26, 0xe7, 0x96, 0x36,
|
||||
0x9a, 0x5a, 0xfa, 0x64, 0x6a, 0xe9, 0x5f, 0x66, 0x96, 0xf6, 0x6d, 0x66, 0xe9, 0x93, 0x99, 0xa5,
|
||||
0xfd, 0x9a, 0x59, 0xda, 0xc7, 0x07, 0x2e, 0xa1, 0xc7, 0x71, 0x6f, 0xbb, 0xef, 0x0f, 0x77, 0xa2,
|
||||
0x33, 0xaf, 0x4f, 0x8f, 0x89, 0xe7, 0x16, 0xde, 0x2e, 0x7e, 0x63, 0xbd, 0xba, 0xf8, 0x67, 0x3d,
|
||||
0xfe, 0x13, 0x00, 0x00, 0xff, 0xff, 0x50, 0xe9, 0xd5, 0x50, 0xb6, 0x05, 0x00, 0x00,
|
||||
// 709 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x94, 0x4b, 0x6f, 0xd3, 0x40,
|
||||
0x10, 0xc7, 0xe3, 0xa6, 0x8d, 0x9b, 0xed, 0x0b, 0x19, 0x44, 0x5d, 0x1e, 0xde, 0xb0, 0x0a, 0x28,
|
||||
0xa0, 0x3e, 0xa4, 0x72, 0xa9, 0xb8, 0x11, 0x22, 0x4a, 0x55, 0x24, 0x2a, 0xa3, 0x22, 0xe0, 0x82,
|
||||
0x92, 0x78, 0xeb, 0xae, 0x94, 0xd8, 0x96, 0xed, 0x54, 0xed, 0x91, 0x23, 0x37, 0xc4, 0x27, 0xe0,
|
||||
0x84, 0xc4, 0x37, 0xe9, 0xad, 0x39, 0x72, 0x5a, 0xa9, 0xcd, 0xcd, 0x47, 0x1f, 0x39, 0xa1, 0x7d,
|
||||
0x39, 0xb6, 0x6a, 0xe0, 0x94, 0xcc, 0xfc, 0xff, 0xf3, 0xdb, 0xd5, 0xec, 0x8c, 0xc1, 0xea, 0x80,
|
||||
0xf4, 0xb6, 0xfa, 0xbe, 0x77, 0x44, 0x5c, 0xf9, 0xb3, 0x19, 0x84, 0x7e, 0xec, 0x1b, 0x35, 0x11,
|
||||
0xdd, 0x69, 0xe6, 0x0c, 0x47, 0xfe, 0xc0, 0xc1, 0xa1, 0x08, 0x46, 0x61, 0x37, 0x26, 0xbe, 0x27,
|
||||
0xdc, 0x05, 0x97, 0x83, 0x4f, 0x48, 0x1f, 0x97, 0xb9, 0x1e, 0xe4, 0x5c, 0xee, 0x88, 0x94, 0x59,
|
||||
0x50, 0xce, 0x32, 0x70, 0xba, 0x41, 0x99, 0xe7, 0x61, 0xce, 0xe3, 0x07, 0x4c, 0x88, 0xca, 0x6c,
|
||||
0x6b, 0x79, 0x5b, 0x2f, 0xc2, 0xe1, 0x09, 0x76, 0xa4, 0x54, 0xc7, 0xa7, 0xb1, 0xf8, 0x8b, 0x7e,
|
||||
0xe8, 0x60, 0xe9, 0x45, 0xbe, 0xda, 0xb0, 0x81, 0x7e, 0x82, 0xc3, 0x88, 0xf8, 0x9e, 0xa9, 0x35,
|
||||
0xb4, 0xd6, 0x5c, 0x7b, 0x27, 0xa1, 0x50, 0xa5, 0x52, 0x0a, 0x8d, 0xd3, 0xe1, 0xe0, 0x19, 0x92,
|
||||
0xf1, 0x7a, 0x37, 0x8e, 0x43, 0xf4, 0x9b, 0xc2, 0x2a, 0xf1, 0xe2, 0xe4, 0xa2, 0xb9, 0x98, 0xcf,
|
||||
0xdb, 0xaa, 0xca, 0x78, 0x07, 0x74, 0xd1, 0xbc, 0xc8, 0x9c, 0x69, 0x54, 0x5b, 0x0b, 0xdb, 0x77,
|
||||
0x37, 0x65, 0xb7, 0x5f, 0xf2, 0x74, 0xe1, 0x06, 0x6d, 0x78, 0x4e, 0x61, 0x85, 0x1d, 0x2a, 0x6b,
|
||||
0x52, 0x0a, 0x17, 0xf9, 0xa1, 0x22, 0x46, 0xb6, 0x12, 0x18, 0x57, 0xb4, 0x3b, 0x32, 0xab, 0x45,
|
||||
0x6e, 0x87, 0xa7, 0xff, 0xc2, 0x95, 0x35, 0x19, 0x57, 0xc4, 0xc8, 0x56, 0x82, 0x61, 0x83, 0xaa,
|
||||
0x3b, 0x22, 0xe6, 0x6c, 0x43, 0x6b, 0x2d, 0x6c, 0x9b, 0x8a, 0xb9, 0x7b, 0xb8, 0x57, 0x04, 0x3e,
|
||||
0x62, 0xc0, 0x2b, 0x0a, 0xab, 0xbb, 0x87, 0x7b, 0x09, 0x85, 0xac, 0x26, 0xa5, 0xb0, 0xce, 0x99,
|
||||
0xee, 0x88, 0xa0, 0x6f, 0xe3, 0x26, 0x93, 0x6c, 0x26, 0x18, 0x1f, 0xc0, 0x2c, 0x7b, 0x51, 0x73,
|
||||
0x8e, 0x43, 0xd7, 0x14, 0xf4, 0x75, 0xe7, 0xf9, 0x41, 0x91, 0xfa, 0x44, 0x52, 0x67, 0x99, 0x94,
|
||||
0x50, 0xc8, 0xcb, 0x52, 0x0a, 0x01, 0xe7, 0xb2, 0x80, 0x81, 0xb9, 0x6a, 0x73, 0xcd, 0x78, 0x0f,
|
||||
0x74, 0x39, 0x08, 0x66, 0x8d, 0xd3, 0xef, 0x29, 0xfa, 0x1b, 0x91, 0x2e, 0x1e, 0xd0, 0x50, 0x7d,
|
||||
0x90, 0x45, 0x29, 0x85, 0x4b, 0x9c, 0x2d, 0x63, 0x64, 0x2b, 0xc5, 0xf8, 0xa9, 0x81, 0x15, 0xe2,
|
||||
0x7a, 0x7e, 0x88, 0x9d, 0x4f, 0xaa, 0xd3, 0x3a, 0xef, 0xf4, 0xed, 0xec, 0x08, 0x39, 0x5b, 0xa2,
|
||||
0xe3, 0xed, 0x63, 0x09, 0xbf, 0x15, 0xe2, 0xa1, 0x1f, 0xe3, 0x3d, 0x51, 0xdc, 0xc9, 0x3a, 0xbe,
|
||||
0xc6, 0x4f, 0x2a, 0x11, 0x51, 0x72, 0xd1, 0xbc, 0x59, 0x92, 0x4f, 0x2f, 0x9a, 0xa5, 0x2c, 0x7b,
|
||||
0x99, 0x14, 0x62, 0xe3, 0x8b, 0x06, 0x56, 0x02, 0xec, 0x39, 0xc4, 0x73, 0xb3, 0xbb, 0xce, 0xff,
|
||||
0xf3, 0xae, 0xaf, 0x64, 0xa7, 0xcd, 0x0e, 0x0e, 0x42, 0xdc, 0xef, 0xc6, 0xd8, 0x39, 0x10, 0x00,
|
||||
0xc9, 0x4c, 0x28, 0xd4, 0x36, 0x52, 0x0a, 0xef, 0xf3, 0x4b, 0x07, 0x79, 0x6d, 0xdd, 0x1f, 0x92,
|
||||
0x18, 0x0f, 0x83, 0xf8, 0x0c, 0x99, 0x9a, 0xbd, 0x5c, 0xd0, 0x22, 0xe3, 0x00, 0xcc, 0x3b, 0xf8,
|
||||
0xa8, 0x3b, 0x1a, 0xc4, 0x91, 0x59, 0xe7, 0x4f, 0x72, 0x63, 0x3a, 0x99, 0x22, 0xdf, 0x46, 0xb2,
|
||||
0x53, 0x99, 0x33, 0xa5, 0x70, 0x59, 0xce, 0xa3, 0x48, 0x20, 0x3b, 0xd3, 0xd0, 0xe7, 0x19, 0x30,
|
||||
0xaf, 0x4a, 0x8d, 0xb7, 0xa0, 0x26, 0x56, 0x80, 0xaf, 0xe8, 0x7f, 0xd6, 0xc9, 0x92, 0xe7, 0xc8,
|
||||
0x92, 0x6b, 0xdb, 0x24, 0xf3, 0x0c, 0x2a, 0xda, 0x66, 0xce, 0x14, 0xa1, 0x65, 0xbb, 0x94, 0x41,
|
||||
0x45, 0xc9, 0xb5, 0x55, 0x92, 0x79, 0x63, 0x1f, 0xe8, 0xe2, 0x99, 0xd8, 0x86, 0x32, 0xea, 0x8a,
|
||||
0xa2, 0x8a, 0xd7, 0x8c, 0xa6, 0xd3, 0x28, 0x7d, 0xd9, 0x34, 0xca, 0x18, 0xd9, 0x4a, 0x41, 0x3b,
|
||||
0x40, 0x97, 0x55, 0xc6, 0x06, 0x98, 0x1b, 0x10, 0x0f, 0x47, 0xa6, 0xd6, 0xa8, 0xb6, 0xea, 0xed,
|
||||
0xd5, 0x84, 0x42, 0x91, 0x98, 0x2e, 0x0a, 0xf1, 0x30, 0xb2, 0x45, 0xb2, 0xbd, 0x7f, 0x7e, 0x69,
|
||||
0x55, 0xc6, 0x97, 0x56, 0xe5, 0xfc, 0xca, 0xd2, 0xc6, 0x57, 0x96, 0xf6, 0x75, 0x62, 0x55, 0xbe,
|
||||
0x4f, 0x2c, 0x6d, 0x3c, 0xb1, 0x2a, 0xbf, 0x26, 0x56, 0xe5, 0xe3, 0x63, 0x97, 0xc4, 0xc7, 0xa3,
|
||||
0xde, 0x66, 0xdf, 0x1f, 0x6e, 0x45, 0x67, 0x5e, 0x3f, 0x3e, 0x26, 0x9e, 0x9b, 0xfb, 0x37, 0xfd,
|
||||
0x9a, 0xf6, 0x6a, 0xfc, 0xd3, 0xf9, 0xf4, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x77, 0x7d, 0xcb,
|
||||
0x2a, 0x3d, 0x06, 0x00, 0x00,
|
||||
}
|
||||
|
||||
func (m *Configuration) Marshal() (dAtA []byte, err error) {
|
||||
@@ -302,6 +345,16 @@ func (m *Defaults) MarshalToSizedBuffer(dAtA []byte) (int, error) {
|
||||
_ = i
|
||||
var l int
|
||||
_ = l
|
||||
{
|
||||
size, err := m.Ignores.MarshalToSizedBuffer(dAtA[:i])
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
i -= size
|
||||
i = encodeVarintConfig(dAtA, i, uint64(size))
|
||||
}
|
||||
i--
|
||||
dAtA[i] = 0x1a
|
||||
{
|
||||
size, err := m.Device.MarshalToSizedBuffer(dAtA[:i])
|
||||
if err != nil {
|
||||
@@ -325,6 +378,38 @@ func (m *Defaults) MarshalToSizedBuffer(dAtA []byte) (int, error) {
|
||||
return len(dAtA) - i, nil
|
||||
}
|
||||
|
||||
func (m *Ignores) Marshal() (dAtA []byte, err error) {
|
||||
size := m.ProtoSize()
|
||||
dAtA = make([]byte, size)
|
||||
n, err := m.MarshalToSizedBuffer(dAtA[:size])
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return dAtA[:n], nil
|
||||
}
|
||||
|
||||
func (m *Ignores) MarshalTo(dAtA []byte) (int, error) {
|
||||
size := m.ProtoSize()
|
||||
return m.MarshalToSizedBuffer(dAtA[:size])
|
||||
}
|
||||
|
||||
func (m *Ignores) MarshalToSizedBuffer(dAtA []byte) (int, error) {
|
||||
i := len(dAtA)
|
||||
_ = i
|
||||
var l int
|
||||
_ = l
|
||||
if len(m.Lines) > 0 {
|
||||
for iNdEx := len(m.Lines) - 1; iNdEx >= 0; iNdEx-- {
|
||||
i -= len(m.Lines[iNdEx])
|
||||
copy(dAtA[i:], m.Lines[iNdEx])
|
||||
i = encodeVarintConfig(dAtA, i, uint64(len(m.Lines[iNdEx])))
|
||||
i--
|
||||
dAtA[i] = 0xa
|
||||
}
|
||||
}
|
||||
return len(dAtA) - i, nil
|
||||
}
|
||||
|
||||
func encodeVarintConfig(dAtA []byte, offset int, v uint64) int {
|
||||
offset -= sovConfig(v)
|
||||
base := offset
|
||||
@@ -390,6 +475,23 @@ func (m *Defaults) ProtoSize() (n int) {
|
||||
n += 1 + l + sovConfig(uint64(l))
|
||||
l = m.Device.ProtoSize()
|
||||
n += 1 + l + sovConfig(uint64(l))
|
||||
l = m.Ignores.ProtoSize()
|
||||
n += 1 + l + sovConfig(uint64(l))
|
||||
return n
|
||||
}
|
||||
|
||||
func (m *Ignores) ProtoSize() (n int) {
|
||||
if m == nil {
|
||||
return 0
|
||||
}
|
||||
var l int
|
||||
_ = l
|
||||
if len(m.Lines) > 0 {
|
||||
for _, s := range m.Lines {
|
||||
l = len(s)
|
||||
n += 1 + l + sovConfig(uint64(l))
|
||||
}
|
||||
}
|
||||
return n
|
||||
}
|
||||
|
||||
@@ -831,6 +933,124 @@ func (m *Defaults) Unmarshal(dAtA []byte) error {
|
||||
return err
|
||||
}
|
||||
iNdEx = postIndex
|
||||
case 3:
|
||||
if wireType != 2 {
|
||||
return fmt.Errorf("proto: wrong wireType = %d for field Ignores", wireType)
|
||||
}
|
||||
var msglen int
|
||||
for shift := uint(0); ; shift += 7 {
|
||||
if shift >= 64 {
|
||||
return ErrIntOverflowConfig
|
||||
}
|
||||
if iNdEx >= l {
|
||||
return io.ErrUnexpectedEOF
|
||||
}
|
||||
b := dAtA[iNdEx]
|
||||
iNdEx++
|
||||
msglen |= int(b&0x7F) << shift
|
||||
if b < 0x80 {
|
||||
break
|
||||
}
|
||||
}
|
||||
if msglen < 0 {
|
||||
return ErrInvalidLengthConfig
|
||||
}
|
||||
postIndex := iNdEx + msglen
|
||||
if postIndex < 0 {
|
||||
return ErrInvalidLengthConfig
|
||||
}
|
||||
if postIndex > l {
|
||||
return io.ErrUnexpectedEOF
|
||||
}
|
||||
if err := m.Ignores.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
|
||||
return err
|
||||
}
|
||||
iNdEx = postIndex
|
||||
default:
|
||||
iNdEx = preIndex
|
||||
skippy, err := skipConfig(dAtA[iNdEx:])
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if skippy < 0 {
|
||||
return ErrInvalidLengthConfig
|
||||
}
|
||||
if (iNdEx + skippy) < 0 {
|
||||
return ErrInvalidLengthConfig
|
||||
}
|
||||
if (iNdEx + skippy) > l {
|
||||
return io.ErrUnexpectedEOF
|
||||
}
|
||||
iNdEx += skippy
|
||||
}
|
||||
}
|
||||
|
||||
if iNdEx > l {
|
||||
return io.ErrUnexpectedEOF
|
||||
}
|
||||
return nil
|
||||
}
|
||||
func (m *Ignores) Unmarshal(dAtA []byte) error {
|
||||
l := len(dAtA)
|
||||
iNdEx := 0
|
||||
for iNdEx < l {
|
||||
preIndex := iNdEx
|
||||
var wire uint64
|
||||
for shift := uint(0); ; shift += 7 {
|
||||
if shift >= 64 {
|
||||
return ErrIntOverflowConfig
|
||||
}
|
||||
if iNdEx >= l {
|
||||
return io.ErrUnexpectedEOF
|
||||
}
|
||||
b := dAtA[iNdEx]
|
||||
iNdEx++
|
||||
wire |= uint64(b&0x7F) << shift
|
||||
if b < 0x80 {
|
||||
break
|
||||
}
|
||||
}
|
||||
fieldNum := int32(wire >> 3)
|
||||
wireType := int(wire & 0x7)
|
||||
if wireType == 4 {
|
||||
return fmt.Errorf("proto: Ignores: wiretype end group for non-group")
|
||||
}
|
||||
if fieldNum <= 0 {
|
||||
return fmt.Errorf("proto: Ignores: illegal tag %d (wire type %d)", fieldNum, wire)
|
||||
}
|
||||
switch fieldNum {
|
||||
case 1:
|
||||
if wireType != 2 {
|
||||
return fmt.Errorf("proto: wrong wireType = %d for field Lines", wireType)
|
||||
}
|
||||
var stringLen uint64
|
||||
for shift := uint(0); ; shift += 7 {
|
||||
if shift >= 64 {
|
||||
return ErrIntOverflowConfig
|
||||
}
|
||||
if iNdEx >= l {
|
||||
return io.ErrUnexpectedEOF
|
||||
}
|
||||
b := dAtA[iNdEx]
|
||||
iNdEx++
|
||||
stringLen |= uint64(b&0x7F) << shift
|
||||
if b < 0x80 {
|
||||
break
|
||||
}
|
||||
}
|
||||
intStringLen := int(stringLen)
|
||||
if intStringLen < 0 {
|
||||
return ErrInvalidLengthConfig
|
||||
}
|
||||
postIndex := iNdEx + intStringLen
|
||||
if postIndex < 0 {
|
||||
return ErrInvalidLengthConfig
|
||||
}
|
||||
if postIndex > l {
|
||||
return io.ErrUnexpectedEOF
|
||||
}
|
||||
m.Lines = append(m.Lines, string(dAtA[iNdEx:postIndex]))
|
||||
iNdEx = postIndex
|
||||
default:
|
||||
iNdEx = preIndex
|
||||
skippy, err := skipConfig(dAtA[iNdEx:])
|
||||
|
||||
@@ -113,6 +113,9 @@ func TestDefaultValues(t *testing.T) {
|
||||
Compression: protocol.CompressionMetadata,
|
||||
IgnoredFolders: []ObservedFolder{},
|
||||
},
|
||||
Ignores: Ignores{
|
||||
Lines: []string{},
|
||||
},
|
||||
},
|
||||
IgnoredDevices: []ObservedDevice{},
|
||||
}
|
||||
|
||||
@@ -40,6 +40,16 @@ type Wrapper struct {
|
||||
defaultFolderReturnsOnCall map[int]struct {
|
||||
result1 config.FolderConfiguration
|
||||
}
|
||||
DefaultIgnoresStub func() config.Ignores
|
||||
defaultIgnoresMutex sync.RWMutex
|
||||
defaultIgnoresArgsForCall []struct {
|
||||
}
|
||||
defaultIgnoresReturns struct {
|
||||
result1 config.Ignores
|
||||
}
|
||||
defaultIgnoresReturnsOnCall map[int]struct {
|
||||
result1 config.Ignores
|
||||
}
|
||||
DeviceStub func(protocol.DeviceID) (config.DeviceConfiguration, bool)
|
||||
deviceMutex sync.RWMutex
|
||||
deviceArgsForCall []struct {
|
||||
@@ -449,6 +459,59 @@ func (fake *Wrapper) DefaultFolderReturnsOnCall(i int, result1 config.FolderConf
|
||||
}{result1}
|
||||
}
|
||||
|
||||
func (fake *Wrapper) DefaultIgnores() config.Ignores {
|
||||
fake.defaultIgnoresMutex.Lock()
|
||||
ret, specificReturn := fake.defaultIgnoresReturnsOnCall[len(fake.defaultIgnoresArgsForCall)]
|
||||
fake.defaultIgnoresArgsForCall = append(fake.defaultIgnoresArgsForCall, struct {
|
||||
}{})
|
||||
stub := fake.DefaultIgnoresStub
|
||||
fakeReturns := fake.defaultIgnoresReturns
|
||||
fake.recordInvocation("DefaultIgnores", []interface{}{})
|
||||
fake.defaultIgnoresMutex.Unlock()
|
||||
if stub != nil {
|
||||
return stub()
|
||||
}
|
||||
if specificReturn {
|
||||
return ret.result1
|
||||
}
|
||||
return fakeReturns.result1
|
||||
}
|
||||
|
||||
func (fake *Wrapper) DefaultIgnoresCallCount() int {
|
||||
fake.defaultIgnoresMutex.RLock()
|
||||
defer fake.defaultIgnoresMutex.RUnlock()
|
||||
return len(fake.defaultIgnoresArgsForCall)
|
||||
}
|
||||
|
||||
func (fake *Wrapper) DefaultIgnoresCalls(stub func() config.Ignores) {
|
||||
fake.defaultIgnoresMutex.Lock()
|
||||
defer fake.defaultIgnoresMutex.Unlock()
|
||||
fake.DefaultIgnoresStub = stub
|
||||
}
|
||||
|
||||
func (fake *Wrapper) DefaultIgnoresReturns(result1 config.Ignores) {
|
||||
fake.defaultIgnoresMutex.Lock()
|
||||
defer fake.defaultIgnoresMutex.Unlock()
|
||||
fake.DefaultIgnoresStub = nil
|
||||
fake.defaultIgnoresReturns = struct {
|
||||
result1 config.Ignores
|
||||
}{result1}
|
||||
}
|
||||
|
||||
func (fake *Wrapper) DefaultIgnoresReturnsOnCall(i int, result1 config.Ignores) {
|
||||
fake.defaultIgnoresMutex.Lock()
|
||||
defer fake.defaultIgnoresMutex.Unlock()
|
||||
fake.DefaultIgnoresStub = nil
|
||||
if fake.defaultIgnoresReturnsOnCall == nil {
|
||||
fake.defaultIgnoresReturnsOnCall = make(map[int]struct {
|
||||
result1 config.Ignores
|
||||
})
|
||||
}
|
||||
fake.defaultIgnoresReturnsOnCall[i] = struct {
|
||||
result1 config.Ignores
|
||||
}{result1}
|
||||
}
|
||||
|
||||
func (fake *Wrapper) Device(arg1 protocol.DeviceID) (config.DeviceConfiguration, bool) {
|
||||
fake.deviceMutex.Lock()
|
||||
ret, specificReturn := fake.deviceReturnsOnCall[len(fake.deviceArgsForCall)]
|
||||
@@ -1752,6 +1815,8 @@ func (fake *Wrapper) Invocations() map[string][][]interface{} {
|
||||
defer fake.defaultDeviceMutex.RUnlock()
|
||||
fake.defaultFolderMutex.RLock()
|
||||
defer fake.defaultFolderMutex.RUnlock()
|
||||
fake.defaultIgnoresMutex.RLock()
|
||||
defer fake.defaultIgnoresMutex.RUnlock()
|
||||
fake.deviceMutex.RLock()
|
||||
defer fake.deviceMutex.RUnlock()
|
||||
fake.deviceListMutex.RLock()
|
||||
|
||||
@@ -100,6 +100,7 @@ type Wrapper interface {
|
||||
GUI() GUIConfiguration
|
||||
LDAP() LDAPConfiguration
|
||||
Options() OptionsConfiguration
|
||||
DefaultIgnores() Ignores
|
||||
|
||||
Folder(id string) (FolderConfiguration, bool)
|
||||
Folders() map[string]FolderConfiguration
|
||||
@@ -437,6 +438,13 @@ func (w *wrapper) GUI() GUIConfiguration {
|
||||
return w.cfg.GUI.Copy()
|
||||
}
|
||||
|
||||
// DefaultIgnores returns the list of ignore patterns to be used by default on folders.
|
||||
func (w *wrapper) DefaultIgnores() Ignores {
|
||||
w.mut.Lock()
|
||||
defer w.mut.Unlock()
|
||||
return w.cfg.Defaults.Ignores.Copy()
|
||||
}
|
||||
|
||||
// IgnoredDevice returns whether or not connection attempts from the given
|
||||
// device should be silently ignored.
|
||||
func (w *wrapper) IgnoredDevice(id protocol.DeviceID) bool {
|
||||
|
||||
@@ -706,26 +706,12 @@ func (m *model) UsageReportingStats(report *contract.Report, version int, previe
|
||||
|
||||
type ConnectionInfo struct {
|
||||
protocol.Statistics
|
||||
Connected bool
|
||||
Paused bool
|
||||
Address string
|
||||
ClientVersion string
|
||||
Type string
|
||||
Crypto string
|
||||
}
|
||||
|
||||
func (info ConnectionInfo) MarshalJSON() ([]byte, error) {
|
||||
return json.Marshal(map[string]interface{}{
|
||||
"at": info.At,
|
||||
"inBytesTotal": info.InBytesTotal,
|
||||
"outBytesTotal": info.OutBytesTotal,
|
||||
"connected": info.Connected,
|
||||
"paused": info.Paused,
|
||||
"address": info.Address,
|
||||
"clientVersion": info.ClientVersion,
|
||||
"type": info.Type,
|
||||
"crypto": info.Crypto,
|
||||
})
|
||||
Connected bool `json:"connected"`
|
||||
Paused bool `json:"paused"`
|
||||
Address string `json:"address"`
|
||||
ClientVersion string `json:"clientVersion"`
|
||||
Type string `json:"type"`
|
||||
Crypto string `json:"crypto"`
|
||||
}
|
||||
|
||||
// NumConnections returns the current number of active connected devices.
|
||||
@@ -769,12 +755,10 @@ func (m *model) ConnectionStats() map[string]interface{} {
|
||||
res["connections"] = conns
|
||||
|
||||
in, out := protocol.TotalInOut()
|
||||
res["total"] = ConnectionInfo{
|
||||
Statistics: protocol.Statistics{
|
||||
At: time.Now().Truncate(time.Second),
|
||||
InBytesTotal: in,
|
||||
OutBytesTotal: out,
|
||||
},
|
||||
res["total"] = map[string]interface{}{
|
||||
"at": time.Now().Truncate(time.Second),
|
||||
"inBytesTotal": in,
|
||||
"outBytesTotal": out,
|
||||
}
|
||||
|
||||
return res
|
||||
@@ -1667,6 +1651,11 @@ func (m *model) handleAutoAccepts(deviceID protocol.DeviceID, folder protocol.Fo
|
||||
|
||||
if len(ccDeviceInfos.remote.EncryptionPasswordToken) > 0 || len(ccDeviceInfos.local.EncryptionPasswordToken) > 0 {
|
||||
fcfg.Type = config.FolderTypeReceiveEncrypted
|
||||
} else {
|
||||
ignores := m.cfg.DefaultIgnores()
|
||||
if err := m.setIgnores(fcfg, ignores.Lines); err != nil {
|
||||
l.Warnf("Failed to apply default ignores to auto-accepted folder %s at path %s: %v", folder.Description(), fcfg.Path, err)
|
||||
}
|
||||
}
|
||||
|
||||
l.Infof("Auto-accepted %s folder %s at path %s", deviceID, folder.Description(), fcfg.Path)
|
||||
@@ -2051,11 +2040,6 @@ func (m *model) LoadIgnores(folder string) ([]string, []string, error) {
|
||||
return nil, nil, nil
|
||||
}
|
||||
|
||||
// On creation a new folder with ignore patterns validly has no marker yet.
|
||||
if err := cfg.CheckPath(); err != nil && err != config.ErrMarkerMissing {
|
||||
return nil, nil, err
|
||||
}
|
||||
|
||||
if !ignoresOk {
|
||||
ignores = ignore.New(cfg.Filesystem())
|
||||
}
|
||||
@@ -2097,7 +2081,10 @@ func (m *model) SetIgnores(folder string, content []string) error {
|
||||
if !ok {
|
||||
return fmt.Errorf("folder %s does not exist", cfg.Description())
|
||||
}
|
||||
return m.setIgnores(cfg, content)
|
||||
}
|
||||
|
||||
func (m *model) setIgnores(cfg config.FolderConfiguration, content []string) error {
|
||||
err := cfg.CheckPath()
|
||||
if err == config.ErrPathMissing {
|
||||
if err = cfg.CreateRoot(); err != nil {
|
||||
@@ -2115,7 +2102,7 @@ func (m *model) SetIgnores(folder string, content []string) error {
|
||||
}
|
||||
|
||||
m.fmut.RLock()
|
||||
runner, ok := m.folderRunners[folder]
|
||||
runner, ok := m.folderRunners[cfg.ID]
|
||||
m.fmut.RUnlock()
|
||||
if ok {
|
||||
runner.ScheduleScan()
|
||||
|
||||
@@ -1515,7 +1515,7 @@ func TestIgnores(t *testing.T) {
|
||||
t.Error("No error")
|
||||
}
|
||||
|
||||
// Invalid path, marker should be missing, hence returns an error.
|
||||
// Invalid path, treated like no patterns at all.
|
||||
fcfg := config.FolderConfiguration{ID: "fresh", Path: "XXX"}
|
||||
ignores := ignore.New(fcfg.Filesystem(), ignore.WithCache(m.cfg.Options().CacheIgnoredFiles))
|
||||
m.fmut.Lock()
|
||||
@@ -1524,8 +1524,8 @@ func TestIgnores(t *testing.T) {
|
||||
m.fmut.Unlock()
|
||||
|
||||
_, _, err = m.LoadIgnores("fresh")
|
||||
if err == nil {
|
||||
t.Error("No error")
|
||||
if err != nil {
|
||||
t.Error("Got error for inexistent folder path")
|
||||
}
|
||||
|
||||
// Repeat tests with paused folder
|
||||
|
||||
@@ -23,7 +23,7 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
lz4 "github.com/bkaradzic/go-lz4"
|
||||
lz4 "github.com/pierrec/lz4/v4"
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
@@ -63,6 +63,10 @@ var sha256OfEmptyBlock = map[int][sha256.Size]byte{
|
||||
16 << MiB: {0x8, 0xa, 0xcf, 0x35, 0xa5, 0x7, 0xac, 0x98, 0x49, 0xcf, 0xcb, 0xa4, 0x7d, 0xc2, 0xad, 0x83, 0xe0, 0x1b, 0x75, 0x66, 0x3a, 0x51, 0x62, 0x79, 0xc8, 0xb9, 0xd2, 0x43, 0xb7, 0x19, 0x64, 0x3e},
|
||||
}
|
||||
|
||||
var (
|
||||
errNotCompressible = errors.New("not compressible")
|
||||
)
|
||||
|
||||
func init() {
|
||||
for blockSize := MinBlockSize; blockSize <= MaxBlockSize; blockSize *= 2 {
|
||||
BlockSizes = append(BlockSizes, blockSize)
|
||||
@@ -800,7 +804,7 @@ func (c *rawConnection) writeCompressedMessage(msg message, marshaled []byte, ov
|
||||
}
|
||||
|
||||
cOverhead := 2 + hdrSize + 4
|
||||
maxCompressed := cOverhead + lz4.CompressBound(len(marshaled))
|
||||
maxCompressed := cOverhead + lz4.CompressBlockBound(len(marshaled))
|
||||
buf := BufferPool.Get(maxCompressed)
|
||||
defer BufferPool.Put(buf)
|
||||
|
||||
@@ -994,10 +998,10 @@ func (c *rawConnection) pingReceiver() {
|
||||
}
|
||||
|
||||
type Statistics struct {
|
||||
At time.Time
|
||||
InBytesTotal int64
|
||||
OutBytesTotal int64
|
||||
StartedAt time.Time
|
||||
At time.Time `json:"at"`
|
||||
InBytesTotal int64 `json:"inBytesTotal"`
|
||||
OutBytesTotal int64 `json:"outBytesTotal"`
|
||||
StartedAt time.Time `json:"startedAt"`
|
||||
}
|
||||
|
||||
func (c *rawConnection) Statistics() Statistics {
|
||||
@@ -1010,32 +1014,30 @@ func (c *rawConnection) Statistics() Statistics {
|
||||
}
|
||||
|
||||
func lz4Compress(src, buf []byte) (int, error) {
|
||||
compressed, err := lz4.Encode(buf, src)
|
||||
// The compressed block is prefixed by the size of the uncompressed data.
|
||||
binary.BigEndian.PutUint32(buf, uint32(len(src)))
|
||||
|
||||
n, err := lz4.CompressBlock(src, buf[4:], nil)
|
||||
if err != nil {
|
||||
return -1, err
|
||||
}
|
||||
if &compressed[0] != &buf[0] {
|
||||
panic("bug: lz4.Compress allocated, which it must not (should use buffer pool)")
|
||||
} else if len(src) > 0 && n == 0 {
|
||||
return -1, errNotCompressible
|
||||
}
|
||||
|
||||
binary.BigEndian.PutUint32(compressed, binary.LittleEndian.Uint32(compressed))
|
||||
return len(compressed), nil
|
||||
return n + 4, nil
|
||||
}
|
||||
|
||||
func lz4Decompress(src []byte) ([]byte, error) {
|
||||
size := binary.BigEndian.Uint32(src)
|
||||
binary.LittleEndian.PutUint32(src, size)
|
||||
var err error
|
||||
buf := BufferPool.Get(int(size))
|
||||
decoded, err := lz4.Decode(buf, src)
|
||||
|
||||
n, err := lz4.UncompressBlock(src[4:], buf)
|
||||
if err != nil {
|
||||
BufferPool.Put(buf)
|
||||
return nil, err
|
||||
}
|
||||
if &decoded[0] != &buf[0] {
|
||||
panic("bug: lz4.Decode allocated, which it must not (should use buffer pool)")
|
||||
}
|
||||
return decoded, nil
|
||||
|
||||
return buf[:n], nil
|
||||
}
|
||||
|
||||
func newProtocolError(err error, msgContext string) error {
|
||||
|
||||
@@ -17,7 +17,7 @@ import (
|
||||
"testing/quick"
|
||||
"time"
|
||||
|
||||
lz4 "github.com/bkaradzic/go-lz4"
|
||||
lz4 "github.com/pierrec/lz4/v4"
|
||||
"github.com/syncthing/syncthing/lib/rand"
|
||||
"github.com/syncthing/syncthing/lib/testutils"
|
||||
)
|
||||
@@ -484,7 +484,7 @@ func TestLZ4Compression(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
comp := make([]byte, lz4.CompressBound(dataLen))
|
||||
comp := make([]byte, lz4.CompressBlockBound(dataLen))
|
||||
compLen, err := lz4Compress(data, comp)
|
||||
if err != nil {
|
||||
t.Errorf("compressing %d bytes: %v", dataLen, err)
|
||||
@@ -506,6 +506,36 @@ func TestLZ4Compression(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestLZ4CompressionUpdate(t *testing.T) {
|
||||
uncompressed := []byte("this is some arbitrary yet fairly compressible data")
|
||||
|
||||
// Compressed, as created by the LZ4 implementation in Syncthing 1.18.6 and earlier.
|
||||
oldCompressed, _ := hex.DecodeString("00000033f0247468697320697320736f6d65206172626974726172792079657420666169726c7920636f6d707265737369626c652064617461")
|
||||
|
||||
// Verify that we can decompress
|
||||
|
||||
res, err := lz4Decompress(oldCompressed)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !bytes.Equal(uncompressed, res) {
|
||||
t.Fatal("result does not match")
|
||||
}
|
||||
|
||||
// Verify that our current compression is equivalent
|
||||
|
||||
buf := make([]byte, 128)
|
||||
n, err := lz4Compress(uncompressed, buf)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !bytes.Equal(oldCompressed, buf[:n]) {
|
||||
t.Logf("%x", oldCompressed)
|
||||
t.Logf("%x", buf[:n])
|
||||
t.Fatal("compression does not match")
|
||||
}
|
||||
}
|
||||
|
||||
func TestCheckFilename(t *testing.T) {
|
||||
cases := []struct {
|
||||
name string
|
||||
|
||||
@@ -59,9 +59,12 @@ func GenerateCertificate(certFile, keyFile string) (tls.Certificate, error) {
|
||||
return tlsutil.NewCertificate(certFile, keyFile, tlsDefaultCommonName, deviceCertLifetimeDays)
|
||||
}
|
||||
|
||||
func DefaultConfig(path string, myID protocol.DeviceID, evLogger events.Logger, noDefaultFolder bool) (config.Wrapper, error) {
|
||||
newCfg, err := config.NewWithFreePorts(myID)
|
||||
if err != nil {
|
||||
func DefaultConfig(path string, myID protocol.DeviceID, evLogger events.Logger, noDefaultFolder, skipPortProbing bool) (config.Wrapper, error) {
|
||||
newCfg := config.New(myID)
|
||||
|
||||
if skipPortProbing {
|
||||
l.Infoln("Using default network port numbers instead of probing for free ports")
|
||||
} else if err := newCfg.ProbeFreePorts(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -84,11 +87,11 @@ func DefaultConfig(path string, myID protocol.DeviceID, evLogger events.Logger,
|
||||
// creates a default one, without the default folder if noDefaultFolder is ture.
|
||||
// Otherwise it checks the version, and archives and upgrades the config if
|
||||
// necessary or returns an error, if the version isn't compatible.
|
||||
func LoadConfigAtStartup(path string, cert tls.Certificate, evLogger events.Logger, allowNewerConfig, noDefaultFolder bool) (config.Wrapper, error) {
|
||||
func LoadConfigAtStartup(path string, cert tls.Certificate, evLogger events.Logger, allowNewerConfig, noDefaultFolder, skipPortProbing bool) (config.Wrapper, error) {
|
||||
myID := protocol.NewDeviceID(cert.Certificate[0])
|
||||
cfg, originalVersion, err := config.Load(path, myID, evLogger)
|
||||
if fs.IsNotExist(err) {
|
||||
cfg, err = DefaultConfig(path, myID, evLogger, noDefaultFolder)
|
||||
cfg, err = DefaultConfig(path, myID, evLogger, noDefaultFolder, skipPortProbing)
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "failed to generate default config")
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "STDISCOSRV" "1" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "STDISCOSRV" "1" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
stdiscosrv \- Syncthing Discovery Server
|
||||
.SH SYNOPSIS
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "STRELAYSRV" "1" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "STRELAYSRV" "1" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
strelaysrv \- Syncthing Relay Server
|
||||
.SH SYNOPSIS
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-BEP" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-BEP" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-bep \- Block Exchange Protocol v1
|
||||
.SH INTRODUCTION AND DEFINITIONS
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-CONFIG" "5" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-CONFIG" "5" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-config \- Syncthing Configuration
|
||||
.SH SYNOPSIS
|
||||
@@ -115,12 +115,18 @@ may no longer correspond to the defaults.
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
<configuration version="30">
|
||||
<configuration version="35">
|
||||
<folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
|
||||
<filesystemType>basic</filesystemType>
|
||||
<device id="3LT2GA5\-CQI4XJM\-WTZ264P\-MLOGMHL\-MCRLDNT\-MZV4RD3\-KA745CL\-OGAERQZ"></device>
|
||||
<device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" introducedBy="">
|
||||
<encryptionPassword></encryptionPassword>
|
||||
</device>
|
||||
<minDiskFree unit="%">1</minDiskFree>
|
||||
<versioning></versioning>
|
||||
<versioning>
|
||||
<cleanupIntervalS>3600</cleanupIntervalS>
|
||||
<fsPath></fsPath>
|
||||
<fsType>basic</fsType>
|
||||
</versioning>
|
||||
<copiers>0</copiers>
|
||||
<pullerMaxPendingKiB>0</pullerMaxPendingKiB>
|
||||
<hashers>0</hashers>
|
||||
@@ -140,14 +146,18 @@ may no longer correspond to the defaults.
|
||||
<disableFsync>false</disableFsync>
|
||||
<blockPullOrder>standard</blockPullOrder>
|
||||
<copyRangeMethod>standard</copyRangeMethod>
|
||||
<caseSensitiveFS>false</caseSensitiveFS>
|
||||
<junctionsAsDirs>false</junctionsAsDirs>
|
||||
</folder>
|
||||
<device id="3LT2GA5\-CQI4XJM\-WTZ264P\-MLOGMHL\-MCRLDNT\-MZV4RD3\-KA745CL\-OGAERQZ" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
|
||||
<device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
|
||||
<address>dynamic</address>
|
||||
<paused>false</paused>
|
||||
<autoAcceptFolders>false</autoAcceptFolders>
|
||||
<maxSendKbps>0</maxSendKbps>
|
||||
<maxRecvKbps>0</maxRecvKbps>
|
||||
<ignoredFolder time="2022\-01\-09T19:09:52Z" id="br63e\-wyhb7" label="Foo"></ignoredFolder>
|
||||
<maxRequestKiB>0</maxRequestKiB>
|
||||
<untrusted>false</untrusted>
|
||||
<remoteGUIPort>0</remoteGUIPort>
|
||||
</device>
|
||||
<gui enabled="true" tls="false" debugging="false">
|
||||
@@ -190,8 +200,8 @@ may no longer correspond to the defaults.
|
||||
<releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
|
||||
<overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
|
||||
<tempIndexMinBlocks>10</tempIndexMinBlocks>
|
||||
<unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
|
||||
<trafficClass>0</trafficClass>
|
||||
<defaultFolderPath>~</defaultFolderPath>
|
||||
<setLowPriority>true</setLowPriority>
|
||||
<maxFolderConcurrency>0</maxFolderConcurrency>
|
||||
<crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
|
||||
@@ -201,7 +211,58 @@ may no longer correspond to the defaults.
|
||||
<stunServer>default</stunServer>
|
||||
<databaseTuning>auto</databaseTuning>
|
||||
<maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
|
||||
<announceLANAddresses>true</announceLANAddresses>
|
||||
<sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
|
||||
<connectionLimitEnough>0</connectionLimitEnough>
|
||||
<connectionLimitMax>0</connectionLimitMax>
|
||||
<insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
|
||||
</options>
|
||||
<remoteIgnoredDevice time="2022\-01\-09T20:02:01Z" id="5SYI2FS\-LW6YAXI\-JJDYETS\-NDBBPIO\-256MWBO\-XDPXWVG\-24QPUM4\-PDW4UQU" name="bugger" address="192.168.0.20:22000"></remoteIgnoredDevice>
|
||||
<defaults>
|
||||
<folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
|
||||
<filesystemType>basic</filesystemType>
|
||||
<device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" introducedBy="">
|
||||
<encryptionPassword></encryptionPassword>
|
||||
</device>
|
||||
<minDiskFree unit="%">1</minDiskFree>
|
||||
<versioning>
|
||||
<cleanupIntervalS>3600</cleanupIntervalS>
|
||||
<fsPath></fsPath>
|
||||
<fsType>basic</fsType>
|
||||
</versioning>
|
||||
<copiers>0</copiers>
|
||||
<pullerMaxPendingKiB>0</pullerMaxPendingKiB>
|
||||
<hashers>0</hashers>
|
||||
<order>random</order>
|
||||
<ignoreDelete>false</ignoreDelete>
|
||||
<scanProgressIntervalS>0</scanProgressIntervalS>
|
||||
<pullerPauseS>0</pullerPauseS>
|
||||
<maxConflicts>10</maxConflicts>
|
||||
<disableSparseFiles>false</disableSparseFiles>
|
||||
<disableTempIndexes>false</disableTempIndexes>
|
||||
<paused>false</paused>
|
||||
<weakHashThresholdPct>25</weakHashThresholdPct>
|
||||
<markerName>.stfolder</markerName>
|
||||
<copyOwnershipFromParent>false</copyOwnershipFromParent>
|
||||
<modTimeWindowS>0</modTimeWindowS>
|
||||
<maxConcurrentWrites>2</maxConcurrentWrites>
|
||||
<disableFsync>false</disableFsync>
|
||||
<blockPullOrder>standard</blockPullOrder>
|
||||
<copyRangeMethod>standard</copyRangeMethod>
|
||||
<caseSensitiveFS>false</caseSensitiveFS>
|
||||
<junctionsAsDirs>false</junctionsAsDirs>
|
||||
</folder>
|
||||
<device id="" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
|
||||
<address>dynamic</address>
|
||||
<paused>false</paused>
|
||||
<autoAcceptFolders>false</autoAcceptFolders>
|
||||
<maxSendKbps>0</maxSendKbps>
|
||||
<maxRecvKbps>0</maxRecvKbps>
|
||||
<maxRequestKiB>0</maxRequestKiB>
|
||||
<untrusted>false</untrusted>
|
||||
<remoteGUIPort>0</remoteGUIPort>
|
||||
</device>
|
||||
</defaults>
|
||||
</configuration>
|
||||
.ft P
|
||||
.fi
|
||||
@@ -213,14 +274,14 @@ may no longer correspond to the defaults.
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
<configuration version="30">
|
||||
<configuration version="35">
|
||||
<folder></folder>
|
||||
<device></device>
|
||||
<gui></gui>
|
||||
<ldap></ldap>
|
||||
<options></options>
|
||||
<ignoredDevice>5SYI2FS\-LW6YAXI\-JJDYETS\-NDBBPIO\-256MWBO\-XDPXWVG\-24QPUM4\-PDW4UQU</ignoredDevice>
|
||||
<ignoredFolder>bd7q3\-zskm5</ignoredFolder>
|
||||
<remoteIgnoredDevice></remoteIgnoredDevice>
|
||||
<defaults></defaults>
|
||||
</configuration>
|
||||
.ft P
|
||||
.fi
|
||||
@@ -235,19 +296,14 @@ The config version. Increments whenever a change is made that requires
|
||||
migration from previous formats.
|
||||
.UNINDENT
|
||||
.sp
|
||||
It contains the elements described in the following sections and these two
|
||||
additional child elements:
|
||||
It contains the elements described in the following sections and any number of
|
||||
this additional child element:
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B ignoredDevice
|
||||
.B remoteIgnoredDevice
|
||||
Contains the ID of the device that should be ignored. Connection attempts
|
||||
from this device are logged to the console but never displayed in the web
|
||||
GUI.
|
||||
.TP
|
||||
.B ignoredFolder
|
||||
Contains the ID of the folder that should be ignored. This folder will
|
||||
always be skipped when advertised from a remote device, i.e. this will be
|
||||
logged, but there will be no dialog shown in the web GUI.
|
||||
.UNINDENT
|
||||
.SH FOLDER ELEMENT
|
||||
.INDENT 0.0
|
||||
@@ -257,9 +313,15 @@ logged, but there will be no dialog shown in the web GUI.
|
||||
.ft C
|
||||
<folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
|
||||
<filesystemType>basic</filesystemType>
|
||||
<device id="3LT2GA5\-CQI4XJM\-WTZ264P\-MLOGMHL\-MCRLDNT\-MZV4RD3\-KA745CL\-OGAERQZ"></device>
|
||||
<device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" introducedBy="">
|
||||
<encryptionPassword></encryptionPassword>
|
||||
</device>
|
||||
<minDiskFree unit="%">1</minDiskFree>
|
||||
<versioning></versioning>
|
||||
<versioning>
|
||||
<cleanupIntervalS>3600</cleanupIntervalS>
|
||||
<fsPath></fsPath>
|
||||
<fsType>basic</fsType>
|
||||
</versioning>
|
||||
<copiers>0</copiers>
|
||||
<pullerMaxPendingKiB>0</pullerMaxPendingKiB>
|
||||
<hashers>0</hashers>
|
||||
@@ -279,6 +341,8 @@ logged, but there will be no dialog shown in the web GUI.
|
||||
<disableFsync>false</disableFsync>
|
||||
<blockPullOrder>standard</blockPullOrder>
|
||||
<copyRangeMethod>standard</copyRangeMethod>
|
||||
<caseSensitiveFS>false</caseSensitiveFS>
|
||||
<junctionsAsDirs>false</junctionsAsDirs>
|
||||
</folder>
|
||||
.ft P
|
||||
.fi
|
||||
@@ -519,16 +583,18 @@ See folder\-copyRangeMethod for details.
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
<device id="5SYI2FS\-LW6YAXI\-JJDYETS\-NDBBPIO\-256MWBO\-XDPXWVG\-24QPUM4\-PDW4UQU" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="2CYF2WQ\-AKZO2QZ\-JAKWLYD\-AGHMQUM\-BGXUOIS\-GYILW34\-HJG3DUK\-LRRYQAR">
|
||||
<device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="2CYF2WQ\-AKZO2QZ\-JAKWLYD\-AGHMQUM\-BGXUOIS\-GYILW34\-HJG3DUK\-LRRYQAR">
|
||||
<address>dynamic</address>
|
||||
<paused>false</paused>
|
||||
<autoAcceptFolders>false</autoAcceptFolders>
|
||||
<maxSendKbps>0</maxSendKbps>
|
||||
<maxRecvKbps>0</maxRecvKbps>
|
||||
<ignoredFolder time="2022\-01\-09T19:09:52Z" id="br63e\-wyhb7" label="Foo"></ignoredFolder>
|
||||
<maxRequestKiB>0</maxRequestKiB>
|
||||
<untrusted>false</untrusted>
|
||||
<remoteGUIPort>0</remoteGUIPort>
|
||||
</device>
|
||||
<device id="2CYF2WQ\-AKZO2QZ\-JAKWLYD\-AGHMQUM\-BGXUOIS\-GYILW34\-HJG3DUK\-LRRYQAR" name="syno local" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
|
||||
<device id="2CYF2WQ\-AKZO2QZ\-JAKWLYD\-AGHMQUM\-BGXUOIS\-GYILW34\-HJG3DUK\-LRRYQAR" name="syno local" compression="metadata" introducer="true" skipIntroductionRemovals="false" introducedBy="">
|
||||
<address>tcp://192.0.2.1:22001</address>
|
||||
<paused>true</paused>
|
||||
<allowedNetwork>192.168.0.0/16</allowedNetwork>
|
||||
@@ -536,6 +602,7 @@ See folder\-copyRangeMethod for details.
|
||||
<maxSendKbps>100</maxSendKbps>
|
||||
<maxRecvKbps>100</maxRecvKbps>
|
||||
<maxRequestKiB>65536</maxRequestKiB>
|
||||
<untrusted>false</untrusted>
|
||||
<remoteGUIPort>8384</remoteGUIPort>
|
||||
</device>
|
||||
.ft P
|
||||
@@ -669,6 +736,11 @@ the config name looking like kilobits/second.
|
||||
Maximum receive rate to use for this device. Unit is kibibytes/second,
|
||||
despite the config name looking like kilobits/second.
|
||||
.TP
|
||||
.B ignoredFolder
|
||||
Contains the ID of the folder that should be ignored. This folder will
|
||||
always be skipped when advertised from the containing remote device,
|
||||
i.e. this will be logged, but there will be no dialog shown in the web GUI.
|
||||
.TP
|
||||
.B maxRequestKiB
|
||||
Maximum amount of data to have outstanding in requests towards this device.
|
||||
Unit is kibibytes.
|
||||
@@ -688,7 +760,7 @@ work for link\-local IPv6 addresses because of modern browser limitations.
|
||||
.ft C
|
||||
<gui enabled="true" tls="false" debugging="false">
|
||||
<address>127.0.0.1:8384</address>
|
||||
<apikey>l7jSbCqPD95JYZ0g8vi4ZLAMg3ulnN1b</apikey>
|
||||
<apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
|
||||
<theme>default</theme>
|
||||
</gui>
|
||||
.ft P
|
||||
@@ -717,7 +789,7 @@ The following child elements may be present:
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B address
|
||||
Set the listen address. One address element must be present. Allowed address formats are:
|
||||
Set the listen address. Exactly one address element must be present. Allowed address formats are:
|
||||
.INDENT 7.0
|
||||
.TP
|
||||
.B IPv4 address and port (\fB127.0.0.1:8384\fP)
|
||||
@@ -856,8 +928,8 @@ Skip verification (\fBtrue\fP or \fBfalse\fP).
|
||||
<releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
|
||||
<overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
|
||||
<tempIndexMinBlocks>10</tempIndexMinBlocks>
|
||||
<unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
|
||||
<trafficClass>0</trafficClass>
|
||||
<defaultFolderPath>~</defaultFolderPath>
|
||||
<setLowPriority>true</setLowPriority>
|
||||
<maxFolderConcurrency>0</maxFolderConcurrency>
|
||||
<crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
|
||||
@@ -867,6 +939,11 @@ Skip verification (\fBtrue\fP or \fBfalse\fP).
|
||||
<stunServer>default</stunServer>
|
||||
<databaseTuning>auto</databaseTuning>
|
||||
<maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
|
||||
<announceLANAddresses>true</announceLANAddresses>
|
||||
<sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
|
||||
<connectionLimitEnough>0</connectionLimitEnough>
|
||||
<connectionLimitMax>0</connectionLimitMax>
|
||||
<insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
|
||||
</options>
|
||||
.ft P
|
||||
.fi
|
||||
@@ -1030,10 +1107,6 @@ expanded to
|
||||
Interval in seconds between contacting a STUN server to
|
||||
maintain NAT mapping. Default is \fB24\fP and you can set it to \fB0\fP to
|
||||
disable contacting STUN servers.
|
||||
.TP
|
||||
.B defaultFolderPath
|
||||
The UI will propose to create new folders at this path. This can be disabled by
|
||||
setting this to an empty string.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
@@ -1046,6 +1119,85 @@ to nine; on Windows, set the process priority class to below normal. To
|
||||
disable this behavior, for example to control process priority yourself
|
||||
as part of launching Syncthing, set this option to \fBfalse\fP\&.
|
||||
.UNINDENT
|
||||
.SH DEFAULTS ELEMENT
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
<defaults>
|
||||
<folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
|
||||
<filesystemType>basic</filesystemType>
|
||||
<device id="S7UKX27\-GI7ZTXS\-GC6RKUA\-7AJGZ44\-C6NAYEB\-HSKTJQK\-KJHU2NO\-CWV7EQW" introducedBy="">
|
||||
<encryptionPassword></encryptionPassword>
|
||||
</device>
|
||||
<minDiskFree unit="%">1</minDiskFree>
|
||||
<versioning>
|
||||
<cleanupIntervalS>3600</cleanupIntervalS>
|
||||
<fsPath></fsPath>
|
||||
<fsType>basic</fsType>
|
||||
</versioning>
|
||||
<copiers>0</copiers>
|
||||
<pullerMaxPendingKiB>0</pullerMaxPendingKiB>
|
||||
<hashers>0</hashers>
|
||||
<order>random</order>
|
||||
<ignoreDelete>false</ignoreDelete>
|
||||
<scanProgressIntervalS>0</scanProgressIntervalS>
|
||||
<pullerPauseS>0</pullerPauseS>
|
||||
<maxConflicts>10</maxConflicts>
|
||||
<disableSparseFiles>false</disableSparseFiles>
|
||||
<disableTempIndexes>false</disableTempIndexes>
|
||||
<paused>false</paused>
|
||||
<weakHashThresholdPct>25</weakHashThresholdPct>
|
||||
<markerName>.stfolder</markerName>
|
||||
<copyOwnershipFromParent>false</copyOwnershipFromParent>
|
||||
<modTimeWindowS>0</modTimeWindowS>
|
||||
<maxConcurrentWrites>2</maxConcurrentWrites>
|
||||
<disableFsync>false</disableFsync>
|
||||
<blockPullOrder>standard</blockPullOrder>
|
||||
<copyRangeMethod>standard</copyRangeMethod>
|
||||
<caseSensitiveFS>false</caseSensitiveFS>
|
||||
<junctionsAsDirs>false</junctionsAsDirs>
|
||||
</folder>
|
||||
<device id="" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
|
||||
<address>dynamic</address>
|
||||
<paused>false</paused>
|
||||
<autoAcceptFolders>false</autoAcceptFolders>
|
||||
<maxSendKbps>0</maxSendKbps>
|
||||
<maxRecvKbps>0</maxRecvKbps>
|
||||
<maxRequestKiB>0</maxRequestKiB>
|
||||
<untrusted>false</untrusted>
|
||||
<remoteGUIPort>0</remoteGUIPort>
|
||||
</device>
|
||||
</defaults>
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
The \fBdefaults\fP element describes a template for newly added device and folder
|
||||
options. These will be used when adding a new remote device or folder, either
|
||||
through the GUI or the command line interface. The following child elements can
|
||||
be present in the \fBdefaults\fP element:
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B device
|
||||
Template for a \fBdevice\fP element, with the same internal structure. Any
|
||||
fields here will be used for a newly added remote device. The \fBid\fP
|
||||
attribute is meaningless in this context.
|
||||
.TP
|
||||
.B folder
|
||||
Template for a \fBfolder\fP element, with the same internal structure. Any
|
||||
fields here will be used for a newly added shared folder. The \fBid\fP
|
||||
attribute is meaningless in this context.
|
||||
.sp
|
||||
The UI will propose to create new folders at the path given in the \fBpath\fP
|
||||
attribute (used to be \fBdefaultFolderPath\fP under \fBoptions\fP). It also
|
||||
applies to folders automatically accepted from a remote device.
|
||||
.sp
|
||||
Even sharing with other remote devices can be done in the template by
|
||||
including the appropriate \fBdevice\fP element underneath.
|
||||
.UNINDENT
|
||||
.SS Listen Addresses
|
||||
.sp
|
||||
The following address types are accepted in sync protocol listen addresses.
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-DEVICE-IDS" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-DEVICE-IDS" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-device-ids \- Understanding Device IDs
|
||||
.sp
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-EVENT-API" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-EVENT-API" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-event-api \- Event API
|
||||
.SH DESCRIPTION
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-FAQ" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-FAQ" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-faq \- Frequently Asked Questions
|
||||
.INDENT 0.0
|
||||
@@ -45,7 +45,7 @@ syncthing-faq \- Frequently Asked Questions
|
||||
.IP \(bu 2
|
||||
\fI\%How does Syncthing differ from BitTorrent/Resilio Sync?\fP
|
||||
.IP \(bu 2
|
||||
\fI\%Why is there no iOS client?\fP
|
||||
\fI\%Is there an iOS client?\fP
|
||||
.IP \(bu 2
|
||||
\fI\%Should I keep my device IDs secret?\fP
|
||||
.UNINDENT
|
||||
@@ -93,6 +93,8 @@ syncthing-faq \- Frequently Asked Questions
|
||||
.IP \(bu 2
|
||||
\fI\%When I do have two distinct Syncthing\-managed folders on two hosts, how does Syncthing handle moving files between them?\fP
|
||||
.IP \(bu 2
|
||||
\fI\%Can I help initial sync by copying files manually?\fP
|
||||
.IP \(bu 2
|
||||
\fI\%Is Syncthing my ideal backup application?\fP
|
||||
.IP \(bu 2
|
||||
\fI\%How can I exclude files with brackets ([]) in the name?\fP
|
||||
@@ -153,7 +155,10 @@ File or directory owners and Groups (not preserved)
|
||||
.IP \(bu 2
|
||||
Directory modification times (not preserved)
|
||||
.IP \(bu 2
|
||||
Hard links and Windows directory junctions (followed, not preserved)
|
||||
Hard links (followed, not preserved)
|
||||
.IP \(bu 2
|
||||
Windows junctions (synced as ordinary directories; require enabling
|
||||
in the configuration on a per\-folder basis)
|
||||
.IP \(bu 2
|
||||
Extended attributes, resource forks (not preserved)
|
||||
.IP \(bu 2
|
||||
@@ -172,9 +177,9 @@ the faster an additional device will receive the data
|
||||
because small blocks will be fetched from all devices in parallel.
|
||||
.sp
|
||||
Syncthing handles renaming files and updating their metadata in an efficient
|
||||
manner. This means that renaming a large file will not cause a retransmission of
|
||||
that file. Additionally, appending data to existing large files should be
|
||||
handled efficiently as well.
|
||||
manner. This means that renaming a file will not cause a retransmission of
|
||||
that file. Additionally, appending data to existing files should be handled
|
||||
efficiently as well.
|
||||
.sp
|
||||
Temporary files are used to store partial data
|
||||
downloaded from other devices. They are automatically removed whenever a file
|
||||
@@ -195,12 +200,16 @@ mechanisms in use are well defined and visible in the source code. Resilio
|
||||
Sync uses an undocumented, closed protocol with unknown security properties.
|
||||
.IP [1] 5
|
||||
\fI\%https://en.wikipedia.org/wiki/Resilio_Sync\fP
|
||||
.SS Why is there no iOS client?
|
||||
.SS Is there an iOS client?
|
||||
.sp
|
||||
There is an alternative implementation of Syncthing (using the same network
|
||||
protocol) called \fBfsync()\fP\&. There are no plans by the current Syncthing
|
||||
team to support iOS in the foreseeable future, as the code required to do so
|
||||
would be quite different from what Syncthing is today.
|
||||
There are no plans by the current Syncthing team to officially support iOS in the foreseeable future.
|
||||
.sp
|
||||
iOS has significant restrictions on background processing that make it very hard to
|
||||
run Syncthing reliably and integrate it into the system.
|
||||
.sp
|
||||
However, there is a commercial packaging of Syncthing for iOS that attempts to work within these limitations. [2]
|
||||
.IP [2] 5
|
||||
\fI\%https://www.mobiussync.com\fP
|
||||
.SS Should I keep my device IDs secret?
|
||||
.sp
|
||||
No. The IDs are not sensitive. Given a device ID it’s possible to find the IP
|
||||
@@ -225,7 +234,7 @@ device\-ids
|
||||
.sp
|
||||
Syncthing logs to stdout by default. On Windows Syncthing by default also
|
||||
creates \fBsyncthing.log\fP in Syncthing’s home directory (run \fBsyncthing
|
||||
\-paths\fP to see where that is). The command line option \fB\-logfile\fP can be
|
||||
\-\-paths\fP to see where that is). The command line option \fB\-\-logfile\fP can be
|
||||
used to specify a user\-defined logfile.
|
||||
.sp
|
||||
If you’re running a process manager like systemd, check there. If you’re
|
||||
@@ -332,7 +341,7 @@ crashes and other bugs.
|
||||
.SS How can I view the history of changes?
|
||||
.sp
|
||||
The web GUI contains a \fBRecent Changes\fP button under the device list which
|
||||
displays changes since the last (re)start of Syncthing. With the \fB\-audit\fP
|
||||
displays changes since the last (re)start of Syncthing. With the \fB\-\-audit\fP
|
||||
option you can enable a persistent, detailed log of changes and most
|
||||
activities, which contains a \fBJSON\fP formatted sequence of events in the
|
||||
\fB~/.config/syncthing/audit\-_date_\-_time_.log\fP file.
|
||||
@@ -397,7 +406,7 @@ The easy way to rename or move a synced folder on the local system is to
|
||||
remove the folder in the Syncthing UI, move it on disk, then re\-add it using
|
||||
the new path.
|
||||
.sp
|
||||
It’s best to do this when the folder is already in sync between your
|
||||
It’s important to do this when the folder is already in sync between your
|
||||
devices, as it is otherwise unpredictable which changes will “win” after the
|
||||
move. Changes made on other devices may be overwritten, or changes made
|
||||
locally may be overwritten by those on other devices.
|
||||
@@ -432,6 +441,19 @@ block) from A, and then as A gets rescanned, it will remove the files from A.
|
||||
.sp
|
||||
A workaround would be to copy first from A to B, rescan B, wait for B to
|
||||
copy the files on the remote side, and then delete from A.
|
||||
.SS Can I help initial sync by copying files manually?
|
||||
.sp
|
||||
If you have a large folder that you want to keep in sync over a not\-so\-fast network, and you have the possibility to move all files to the remote device in a faster manner, here is a procedure to follow:
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
Create the folder on the local device, but don’t share it with the remote device yet.
|
||||
.IP \(bu 2
|
||||
Copy the files from the local device to the remote device using regular file copy. If this takes a long time (perhaps requiring travelling there physically), it may be a good idea to make sure that the files on the local device are not updated while you are doing this.
|
||||
.IP \(bu 2
|
||||
Create the folder on the remote device, and copy the Folder ID from the folder on the local device, as we want the folders to be considered the same. Then wait until scanning the folder is done.
|
||||
.IP \(bu 2
|
||||
Now share the folder with the other device, on both sides. Syncthing will exchange file information, updating the database, but existing files will not be transferred. This may still take a while initially, be patient and wait until it settled.
|
||||
.UNINDENT
|
||||
.SS Is Syncthing my ideal backup application?
|
||||
.sp
|
||||
No. Syncthing is not a great backup application because all changes to your
|
||||
@@ -517,8 +539,8 @@ $ ssh \-N \-L 9090:127.0.0.1:8384 user@othercomputer.example.com
|
||||
If only your remote computer is Unix\-like,
|
||||
you can still access it with ssh from Windows.
|
||||
.sp
|
||||
Under Windows 10 (64 bit) you can use the same ssh command if you install
|
||||
the \fI\%Windows Subsystem for Linux\fP <\fBhttps://docs.microsoft.com/windows/wsl/install-win10\fP>\&.
|
||||
Under Windows 10 or later (64\-bit only) you can use the same ssh command
|
||||
if you install the \fI\%Windows Subsystem for Linux\fP <\fBhttps://docs.microsoft.com/windows/wsl/install\fP>\&.
|
||||
.sp
|
||||
Another Windows way to run ssh is to install \fI\%gow (Gnu On Windows)\fP <\fBhttps://github.com/bmatzelle/gow\fP>\&. The easiest way to install gow is with the \fI\%chocolatey\fP <\fBhttps://chocolatey.org/\fP> package manager.
|
||||
.SS I don’t like the GUI or the theme. Can it be changed?
|
||||
@@ -531,7 +553,7 @@ own.
|
||||
By default, Syncthing will look for a directory \fBgui\fP inside the Syncthing
|
||||
home folder. To change the directory to look for themes, you need to set the
|
||||
STGUIASSETS environment variable. To get the concrete directory, run
|
||||
syncthing with the \fB\-paths\fP parameter. It will print all the relevant paths,
|
||||
syncthing with the \fB\-\-paths\fP parameter. It will print all the relevant paths,
|
||||
including the “GUI override directory”.
|
||||
.sp
|
||||
To add e.g. a red theme, you can create the file \fBred/assets/css/theme.css\fP
|
||||
@@ -553,7 +575,7 @@ upgrade itself automatically within 24 hours of a new release.
|
||||
The upgrade button appears in the web GUI when a new version has been
|
||||
released. Pressing it will perform an upgrade.
|
||||
.IP \(bu 2
|
||||
To force an upgrade from the command line, run \fBsyncthing \-upgrade\fP\&.
|
||||
To force an upgrade from the command line, run \fBsyncthing \-\-upgrade\fP\&.
|
||||
.UNINDENT
|
||||
.sp
|
||||
Note that your system should have CA certificates installed which allows a
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-GLOBALDISCO" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-GLOBALDISCO" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-globaldisco \- Global Discovery Protocol v3
|
||||
.SH ANNOUNCEMENTS
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-LOCALDISCO" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-LOCALDISCO" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-localdisco \- Local Discovery Protocol v4
|
||||
.SH MODE OF OPERATION
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-NETWORKING" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-NETWORKING" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-networking \- Firewall Setup
|
||||
.SH ROUTER SETUP
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-RELAY" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-RELAY" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-relay \- Relay Protocol v1
|
||||
.SH WHAT IS A RELAY?
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-REST-API" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-REST-API" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-rest-api \- REST API
|
||||
.sp
|
||||
@@ -100,22 +100,23 @@ Returns the current configuration.
|
||||
.nf
|
||||
.ft C
|
||||
{
|
||||
"version": 30,
|
||||
"version": 35,
|
||||
"folders": [
|
||||
{
|
||||
"id": "GXWxf\-3zgnU",
|
||||
"label": "MyFolder",
|
||||
"id": "default",
|
||||
"label": "Default Folder",
|
||||
"filesystemType": "basic",
|
||||
"path": "...",
|
||||
"type": "sendreceive",
|
||||
"devices": [
|
||||
{
|
||||
"deviceID": "...",
|
||||
"introducedBy": ""
|
||||
"introducedBy": "",
|
||||
"encryptionPassword": ""
|
||||
}
|
||||
],
|
||||
"rescanIntervalS": 60,
|
||||
"fsWatcherEnabled": false,
|
||||
"rescanIntervalS": 3600,
|
||||
"fsWatcherEnabled": true,
|
||||
"fsWatcherDelayS": 10,
|
||||
"ignorePerms": false,
|
||||
"autoNormalize": true,
|
||||
@@ -124,10 +125,11 @@ Returns the current configuration.
|
||||
"unit": "%"
|
||||
},
|
||||
"versioning": {
|
||||
"type": "simple",
|
||||
"params": {
|
||||
"keep": "5"
|
||||
}
|
||||
"type": "",
|
||||
"params": {},
|
||||
"cleanupIntervalS": 3600,
|
||||
"fsPath": "",
|
||||
"fsType": "basic"
|
||||
},
|
||||
"copiers": 0,
|
||||
"pullerMaxPendingKiB": 0,
|
||||
@@ -136,14 +138,20 @@ Returns the current configuration.
|
||||
"ignoreDelete": false,
|
||||
"scanProgressIntervalS": 0,
|
||||
"pullerPauseS": 0,
|
||||
"maxConflicts": 10,
|
||||
"maxConflicts": \-1,
|
||||
"disableSparseFiles": false,
|
||||
"disableTempIndexes": false,
|
||||
"paused": false,
|
||||
"weakHashThresholdPct": 25,
|
||||
"markerName": ".stfolder",
|
||||
"copyOwnershipFromParent": false,
|
||||
"modTimeWindowS": 0
|
||||
"modTimeWindowS": 0,
|
||||
"maxConcurrentWrites": 2,
|
||||
"disableFsync": false,
|
||||
"blockPullOrder": "standard",
|
||||
"copyRangeMethod": "standard",
|
||||
"caseSensitiveFS": false,
|
||||
"junctionsAsDirs": true
|
||||
}
|
||||
],
|
||||
"devices": [
|
||||
@@ -164,18 +172,27 @@ Returns the current configuration.
|
||||
"autoAcceptFolders": false,
|
||||
"maxSendKbps": 0,
|
||||
"maxRecvKbps": 0,
|
||||
"ignoredFolders": [],
|
||||
"maxRequestKiB": 0
|
||||
"ignoredFolders": [
|
||||
{
|
||||
"time": "2022\-01\-09T19:09:52Z",
|
||||
"id": "br63e\-wyhb7",
|
||||
"label": "Foo"
|
||||
}
|
||||
],
|
||||
"maxRequestKiB": 0,
|
||||
"untrusted": false,
|
||||
"remoteGUIPort": 0
|
||||
}
|
||||
],
|
||||
"gui": {
|
||||
"enabled": true,
|
||||
"address": "127.0.0.1:8384",
|
||||
"unixSocketPermissions": "",
|
||||
"user": "Username",
|
||||
"password": "$2a$10$ZFws69T4FlvWwsqeIwL.TOo5zOYqsa/.TxlUnsGYS.j3JvjFTmxo6",
|
||||
"authMode": "static",
|
||||
"useTLS": false,
|
||||
"apiKey": "pGahcht56664QU5eoFQW6szbEG6Ec2Cr",
|
||||
"apiKey": "k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1",
|
||||
"insecureAdminAccess": false,
|
||||
"theme": "default",
|
||||
"debugging": false,
|
||||
@@ -186,7 +203,9 @@ Returns the current configuration.
|
||||
"address": "",
|
||||
"bindDN": "",
|
||||
"transport": "plain",
|
||||
"insecureSkipVerify": false
|
||||
"insecureSkipVerify": false,
|
||||
"searchBaseDN": "",
|
||||
"searchFilter": ""
|
||||
},
|
||||
"options": {
|
||||
"listenAddresses": [
|
||||
@@ -204,14 +223,14 @@ Returns the current configuration.
|
||||
"reconnectionIntervalS": 60,
|
||||
"relaysEnabled": true,
|
||||
"relayReconnectIntervalM": 10,
|
||||
"startBrowser": false,
|
||||
"startBrowser": true,
|
||||
"natEnabled": true,
|
||||
"natLeaseMinutes": 60,
|
||||
"natRenewalMinutes": 30,
|
||||
"natTimeoutSeconds": 10,
|
||||
"urAccepted": \-1,
|
||||
"urSeen": 2,
|
||||
"urUniqueId": "",
|
||||
"urAccepted": 0,
|
||||
"urSeen": 0,
|
||||
"urUniqueId": "...",
|
||||
"urURL": "https://data.syncthing.net/newdata",
|
||||
"urPostInsecurely": false,
|
||||
"urInitialDelayS": 1800,
|
||||
@@ -230,9 +249,10 @@ Returns the current configuration.
|
||||
"alwaysLocalNets": [],
|
||||
"overwriteRemoteDeviceNamesOnConnect": false,
|
||||
"tempIndexMinBlocks": 10,
|
||||
"unackedNotificationIDs": [],
|
||||
"unackedNotificationIDs": [
|
||||
"authenticationUserAndPassword"
|
||||
],
|
||||
"trafficClass": 0,
|
||||
"defaultFolderPath": "~",
|
||||
"setLowPriority": true,
|
||||
"maxFolderConcurrency": 0,
|
||||
"crURL": "https://crash.syncthing.net/newcrash",
|
||||
@@ -243,9 +263,96 @@ Returns the current configuration.
|
||||
"default"
|
||||
],
|
||||
"databaseTuning": "auto",
|
||||
"maxConcurrentIncomingRequestKiB": 0
|
||||
"maxConcurrentIncomingRequestKiB": 0,
|
||||
"announceLANAddresses": true,
|
||||
"sendFullIndexOnUpgrade": false,
|
||||
"featureFlags": [],
|
||||
"connectionLimitEnough": 0,
|
||||
"connectionLimitMax": 0,
|
||||
"insecureAllowOldTLSVersions": false
|
||||
},
|
||||
"remoteIgnoredDevices": []
|
||||
"remoteIgnoredDevices": [
|
||||
{
|
||||
"time": "2022\-01\-09T20:02:01Z",
|
||||
"deviceID": "...",
|
||||
"name": "...",
|
||||
"address": "192.168.0.20:22000"
|
||||
}
|
||||
],
|
||||
"defaults": {
|
||||
"folder": {
|
||||
"id": "",
|
||||
"label": "",
|
||||
"filesystemType": "basic",
|
||||
"path": "~",
|
||||
"type": "sendreceive",
|
||||
"devices": [
|
||||
{
|
||||
"deviceID": "...",
|
||||
"introducedBy": "",
|
||||
"encryptionPassword": ""
|
||||
}
|
||||
],
|
||||
"rescanIntervalS": 3600,
|
||||
"fsWatcherEnabled": true,
|
||||
"fsWatcherDelayS": 10,
|
||||
"ignorePerms": false,
|
||||
"autoNormalize": true,
|
||||
"minDiskFree": {
|
||||
"value": 1,
|
||||
"unit": "%"
|
||||
},
|
||||
"versioning": {
|
||||
"type": "",
|
||||
"params": {},
|
||||
"cleanupIntervalS": 3600,
|
||||
"fsPath": "",
|
||||
"fsType": "basic"
|
||||
},
|
||||
"copiers": 0,
|
||||
"pullerMaxPendingKiB": 0,
|
||||
"hashers": 0,
|
||||
"order": "random",
|
||||
"ignoreDelete": false,
|
||||
"scanProgressIntervalS": 0,
|
||||
"pullerPauseS": 0,
|
||||
"maxConflicts": 10,
|
||||
"disableSparseFiles": false,
|
||||
"disableTempIndexes": false,
|
||||
"paused": false,
|
||||
"weakHashThresholdPct": 25,
|
||||
"markerName": ".stfolder",
|
||||
"copyOwnershipFromParent": false,
|
||||
"modTimeWindowS": 0,
|
||||
"maxConcurrentWrites": 2,
|
||||
"disableFsync": false,
|
||||
"blockPullOrder": "standard",
|
||||
"copyRangeMethod": "standard",
|
||||
"caseSensitiveFS": false,
|
||||
"junctionsAsDirs": false
|
||||
},
|
||||
"device": {
|
||||
"deviceID": "",
|
||||
"name": "",
|
||||
"addresses": [
|
||||
"dynamic"
|
||||
],
|
||||
"compression": "metadata",
|
||||
"certName": "",
|
||||
"introducer": false,
|
||||
"skipIntroductionRemovals": false,
|
||||
"introducedBy": "",
|
||||
"paused": false,
|
||||
"allowedNetworks": [],
|
||||
"autoAcceptFolders": false,
|
||||
"maxSendKbps": 0,
|
||||
"maxRecvKbps": 0,
|
||||
"ignoredFolders": [],
|
||||
"maxRequestKiB": 0,
|
||||
"untrusted": false,
|
||||
"remoteGUIPort": 0
|
||||
}
|
||||
}
|
||||
}
|
||||
.ft P
|
||||
.fi
|
||||
@@ -290,7 +397,7 @@ config, modify the needed parts and post it again.
|
||||
\fBNOTE:\fP
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
Return format changed in 0.13.0.
|
||||
Return format changed in versions 0.13.0 and 1.19.0.
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
@@ -305,14 +412,9 @@ The connection types are \fBTCP (Client)\fP, \fBTCP (Server)\fP, \fBRelay (Clien
|
||||
.ft C
|
||||
{
|
||||
"total" : {
|
||||
"paused" : false,
|
||||
"clientVersion" : "",
|
||||
"at" : "2015\-11\-07T17:29:47.691637262+01:00",
|
||||
"connected" : false,
|
||||
"inBytesTotal" : 1479,
|
||||
"type" : "",
|
||||
"outBytesTotal" : 1318,
|
||||
"address" : ""
|
||||
},
|
||||
"connections" : {
|
||||
"YZJBJFX\-RDBL7WY\-6ZGKJ2D\-4MJB4E7\-ZATSDUY\-LD6Y3L3\-MLFUYWE\-AEMXJAC" : {
|
||||
@@ -320,6 +422,7 @@ The connection types are \fBTCP (Client)\fP, \fBTCP (Server)\fP, \fBRelay (Clien
|
||||
"inBytesTotal" : 556,
|
||||
"paused" : false,
|
||||
"at" : "2015\-11\-07T17:29:47.691548971+01:00",
|
||||
"startedAt" : "2015\-11\-07T00:09:47Z",
|
||||
"clientVersion" : "v0.12.1",
|
||||
"address" : "127.0.0.1:22002",
|
||||
"type" : "TCP (Client)",
|
||||
@@ -330,6 +433,7 @@ The connection types are \fBTCP (Client)\fP, \fBTCP (Server)\fP, \fBRelay (Clien
|
||||
"type" : "",
|
||||
"address" : "",
|
||||
"at" : "0001\-01\-01T00:00:00Z",
|
||||
"startedAt" : "0001\-01\-01T00:00:00Z",
|
||||
"clientVersion" : "",
|
||||
"paused" : false,
|
||||
"inBytesTotal" : 0,
|
||||
@@ -343,6 +447,7 @@ The connection types are \fBTCP (Client)\fP, \fBTCP (Server)\fP, \fBRelay (Clien
|
||||
"inBytesTotal" : 0,
|
||||
"paused" : false,
|
||||
"at" : "0001\-01\-01T00:00:00Z",
|
||||
"startedAt" : "0001\-01\-01T00:00:00Z",
|
||||
"clientVersion" : ""
|
||||
}
|
||||
}
|
||||
@@ -549,7 +654,7 @@ $ curl \-X POST \-H "X\-API\-Key: abc123" http://localhost:8384/rest/system/rese
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
\fBCaution\fP: See \fB\-reset\-database\fP for \fB\&.stfolder\fP creation side\-effect and caution regarding mountpoints.
|
||||
\fBCaution\fP: See \fB\-\-reset\-database\fP for \fB\&.stfolder\fP creation side\-effect and caution regarding mountpoints.
|
||||
.SS POST /rest/system/restart
|
||||
.sp
|
||||
Post with empty body to immediately restart Syncthing.
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-SECURITY" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-SECURITY" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-security \- Security Principles
|
||||
.sp
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-STIGNORE" "5" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-STIGNORE" "5" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-stignore \- Prevent files from being synchronized to other nodes
|
||||
.SH SYNOPSIS
|
||||
@@ -89,8 +89,21 @@ any lower case character.
|
||||
.IP \(bu 2
|
||||
\fBBackslash\fP (\fB\e\fP) “escapes” a special character so that it loses its
|
||||
special meaning. For example, \fB\e{banana\e}\fP matches \fB{banana}\fP exactly
|
||||
and does not denote a set of alternatives as above. \fIEscaped characters
|
||||
are not supported on Windows.\fP
|
||||
and does not denote a set of alternatives as above.
|
||||
.UNINDENT
|
||||
.sp
|
||||
\fBNOTE:\fP
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
Escaped characters are not supported on Windows, where \fB\e\fP is the
|
||||
path separator. If you still need to match files that have square or
|
||||
curly brackets in their names, one possible workaround is to replace
|
||||
them with \fB?\fP, which will then match any character. For example,
|
||||
you can type \fB?banana?\fP to match both \fB[banana]\fP and
|
||||
\fB{banana}\fP, and so on.
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.IP \(bu 2
|
||||
A pattern beginning with \fB/\fP matches in the root of the folder only.
|
||||
\fB/foo\fP matches \fBfoo\fP but not \fBsubdir/foo\fP\&.
|
||||
|
||||
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING-VERSIONING" "7" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING-VERSIONING" "7" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing-versioning \- Keep automatic backups of deleted files by other nodes
|
||||
.sp
|
||||
@@ -205,21 +205,21 @@ rem Enable UTF\-8 encoding to deal with multilingual folder and file names
|
||||
chcp 65001
|
||||
|
||||
rem We need command extensions for md to create intermediate folders in one go
|
||||
setlocal EnableExtensions
|
||||
setlocal enableextensions
|
||||
|
||||
rem Where I want my versions stored
|
||||
set "VERSIONS_PATH=%USERPROFILE%\e.trashcan"
|
||||
set "versions_path=%USERPROFILE%\e.trashcan"
|
||||
|
||||
rem The parameters we get from Syncthing, \(aq~\(aq removes quotes if any
|
||||
set "FOLDER_PATH=%~1"
|
||||
set "FILE_PATH=%~2"
|
||||
set "folder_path=%~1"
|
||||
set "file_path=%~2"
|
||||
|
||||
rem First ensure the dir where we need to store the file exists
|
||||
for %%F in ("%VERSIONS_PATH%\e%FILE_PATH%") do set "OUTPUT_PATH=%%~dpF"
|
||||
if not exist "%OUTPUT_PATH%" md "%OUTPUT_PATH%" || exit /B
|
||||
for %%f in ("%versions_path%\e%file_path%") do set "output_path=%%~dpf"
|
||||
if not exist "%output_path%" md "%output_path%" || exit /b
|
||||
|
||||
rem Finally move the file, overwrite existing file if any
|
||||
move /Y "%FOLDER_PATH%\e%FILE_PATH%" "%VERSIONS_PATH%\e%FILE_PATH%"
|
||||
move /y "%folder_path%\e%file_path%" "%versions_path%\e%file_path%"
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
|
||||
253
man/syncthing.1
253
man/syncthing.1
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||
..
|
||||
.TH "SYNCTHING" "1" "Oct 17, 2021" "v1" "Syncthing"
|
||||
.TH "SYNCTHING" "1" "Jan 22, 2022" "v1" "Syncthing"
|
||||
.SH NAME
|
||||
syncthing \- Syncthing
|
||||
.SH SYNOPSIS
|
||||
@@ -36,13 +36,34 @@ syncthing \- Syncthing
|
||||
.sp
|
||||
.nf
|
||||
.ft C
|
||||
syncthing [\-audit] [\-auditfile=<file|\-|\-\->] [\-browser\-only] [device\-id]
|
||||
[\-generate=<dir>] [\-gui\-address=<address>] [\-gui\-apikey=<key>]
|
||||
[\-home=<dir> | \-config=<dir> \-data=<dir>]
|
||||
[\-logfile=<filename>] [\-logflags=<flags>]
|
||||
[\-no\-browser] [\-no\-console] [\-no\-restart] [\-paths] [\-paused]
|
||||
[\-reset\-database] [\-reset\-deltas] [\-unpaused] [\-upgrade]
|
||||
[\-upgrade\-check] [\-upgrade\-to=<url>] [\-verbose] [\-version]
|
||||
syncthing [serve]
|
||||
[\-\-audit] [\-\-auditfile=<file|\-|\-\->] [\-\-browser\-only] [\-\-device\-id]
|
||||
[\-\-generate=<dir>] [\-\-gui\-address=<address>] [\-\-gui\-apikey=<key>]
|
||||
[\-\-home=<dir> | \-\-config=<dir> \-\-data=<dir>]
|
||||
[\-\-logfile=<filename>] [\-\-logflags=<flags>]
|
||||
[\-\-log\-max\-old\-files=<num>] [\-\-log\-max\-size=<num>]
|
||||
[\-\-no\-browser] [\-\-no\-console] [\-\-no\-restart] [\-\-paths] [\-\-paused]
|
||||
[\-\-no\-default\-folder] [\-\-skip\-port\-probing]
|
||||
[\-\-reset\-database] [\-\-reset\-deltas] [\-\-unpaused] [\-\-allow\-newer\-config]
|
||||
[\-\-upgrade] [\-\-no\-upgrade] [\-\-upgrade\-check] [\-\-upgrade\-to=<url>]
|
||||
[\-\-verbose] [\-\-version] [\-\-help] [\-\-debug\-*]
|
||||
|
||||
syncthing generate
|
||||
[\-\-home=<dir> | \-\-config=<dir>]
|
||||
[\-\-gui\-user=<username>] [\-\-gui\-password=<password|\->]
|
||||
[\-\-no\-default\-folder] [\-\-skip\-port\-probing] [\-\-no\-console]
|
||||
[\-\-help]
|
||||
|
||||
syncthing decrypt (\-\-to=<dir> | \-\-verify\-only)
|
||||
[\-\-password=<pw>] [\-\-folder\-id=<id>] [\-\-token\-path=<file>]
|
||||
[\-\-continue] [\-\-verbose] [\-\-version] [\-\-help]
|
||||
<path>
|
||||
|
||||
syncthing cli
|
||||
[\-\-home=<dir> | \-\-config=<dir> \-\-data=<dir>]
|
||||
[\-\-gui\-address=<address>] [\-\-gui\-apikey=<key>]
|
||||
[\-\-help]
|
||||
<command> [command options...] [arguments...]
|
||||
.ft P
|
||||
.fi
|
||||
.UNINDENT
|
||||
@@ -66,39 +87,69 @@ few log messages.
|
||||
.SH OPTIONS
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-audit
|
||||
.B \-\-allow\-newer\-config
|
||||
Try loading a config file written by a newer program version, instead of
|
||||
failing immediately.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-audit
|
||||
Write events to timestamped file \fBaudit\-YYYYMMDD\-HHMMSS.log\fP\&.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-auditfile=<file|\-|\-\->
|
||||
.B \-\-auditfile=<file|\-|\-\->
|
||||
Use specified file or stream (\fB"\-"\fP for stdout, \fB"\-\-"\fP for stderr) for
|
||||
audit events, rather than the timestamped default file name.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-browser\-only
|
||||
.B \-\-browser\-only
|
||||
Open the web UI in a browser for an already running Syncthing instance.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-device\-id
|
||||
.B \-\-device\-id
|
||||
Print device ID to command line.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-generate=<dir>
|
||||
.B \-\-generate=<dir>
|
||||
Generate key and config in specified dir, then exit.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-gui\-address=<address>
|
||||
.B \-\-gui\-address=<address>
|
||||
Override GUI listen address. Set this to an address (\fB0.0.0.0:8384\fP)
|
||||
or file path (\fB/var/run/st.sock\fP, for UNIX sockets).
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-home=<dir>
|
||||
.B \-\-gui\-apikey=<string>
|
||||
Override the API key needed to access the GUI / REST API.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-gui\-password=<password|\->
|
||||
Specify new GUI authentication password, to update the config file. Read
|
||||
from the standard input stream if only a single dash (\fB\-\fP) is given. The
|
||||
password is hashed before writing to the config file. As a special case,
|
||||
giving the existing password hash as password will leave it untouched.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-gui\-user=<username>
|
||||
Specify new GUI authentication user name, to update the config file.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-help, \-h
|
||||
Show help text about command line usage. Context\-sensitive depending on the
|
||||
given subcommand.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-home=<dir>
|
||||
Set common configuration and data directory. The default configuration
|
||||
directory is \fB$HOME/.config/syncthing\fP (Unix\-like),
|
||||
\fB$HOME/Library/Application Support/Syncthing\fP (Mac) and
|
||||
@@ -106,26 +157,26 @@ directory is \fB$HOME/.config/syncthing\fP (Unix\-like),
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-config=<dir>
|
||||
Set configuration directory. Alternative to \fB\-home\fP and must be used
|
||||
together with \fB\-data\fP\&.
|
||||
.B \-\-config=<dir>
|
||||
Set configuration directory. Alternative to \fB\-\-home\fP and must be used
|
||||
together with \fB\-\-data\fP\&.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-data=<dir>
|
||||
Set data (e.g. database) directory. Alternative to \fB\-home\fP and must be used
|
||||
together with \fB\-config\fP\&.
|
||||
.B \-\-data=<dir>
|
||||
Set data (e.g. database) directory. Alternative to \fB\-\-home\fP and must be used
|
||||
together with \fB\-\-config\fP\&.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-logfile=<filename>
|
||||
.B \-\-logfile=<filename>
|
||||
Set destination filename for logging (use \fB"\-"\fP for stdout, which is the
|
||||
default option).
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-logflags=<flags>
|
||||
Select information in log line prefix. The \fB\-logflags\fP value is a sum of
|
||||
.B \-\-logflags=<flags>
|
||||
Select information in log line prefix. The \fB\-\-logflags\fP value is a sum of
|
||||
the following:
|
||||
.INDENT 7.0
|
||||
.IP \(bu 2
|
||||
@@ -140,40 +191,63 @@ the following:
|
||||
16: Short filename
|
||||
.UNINDENT
|
||||
.sp
|
||||
To prefix each log line with date and time, set \fB\-logflags=3\fP (1 + 2 from
|
||||
To prefix each log line with date and time, set \fB\-\-logflags=3\fP (1 + 2 from
|
||||
above). The value 0 is used to disable all of the above. The default is to
|
||||
show time only (2).
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-no\-browser
|
||||
.B \-\-log\-max\-old\-files=<num>
|
||||
Number of old files to keep (zero to keep only current). Applies only when
|
||||
log rotation is enabled through \fB\-\-log\-max\-size\fP\&.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-log\-max\-size=<num>
|
||||
Maximum size of any log file (zero to disable log rotation).
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-no\-browser
|
||||
Do not start a browser.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-no\-console
|
||||
.B \-\-no\-console
|
||||
Hide the console window. (On Windows only)
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-no\-restart
|
||||
.B \-\-no\-default\-folder
|
||||
Don’t create a default folder when generating an initial configuration /
|
||||
starting for the first time.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-no\-restart
|
||||
Do not restart Syncthing when it exits. The monitor process will still run
|
||||
to handle crashes and writing to logfiles (if configured to).
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-paths
|
||||
.B \-\-no\-upgrade
|
||||
Disable automatic upgrades. Equivalent to the \fBSTNOUPGRADE\fP environment
|
||||
variable, see below.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-paths
|
||||
Print the paths used for configuration, keys, database, GUI overrides,
|
||||
default sync folder and the log file.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-paused
|
||||
.B \-\-paused
|
||||
Start with all devices and folders paused.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-reset\-database
|
||||
.B \-\-reset\-database
|
||||
Reset the database, forcing a full rescan and resync. Create \fI\&.stfolder\fP
|
||||
folders in each sync folder if they do not already exist. \fBCaution\fP:
|
||||
Ensure that all sync folders which are mountpoints are already mounted.
|
||||
@@ -182,39 +256,77 @@ contains older versions.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-reset\-deltas
|
||||
.B \-\-reset\-deltas
|
||||
Reset delta index IDs, forcing a full index exchange.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-unpaused
|
||||
.B \-\-skip\-port\-probing
|
||||
Don’t try to find unused random ports for the GUI and listen address when
|
||||
generating an initial configuration / starting for the first time.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-unpaused
|
||||
Start with all devices and folders unpaused.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-upgrade
|
||||
.B \-\-upgrade
|
||||
Perform upgrade.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-upgrade\-check
|
||||
.B \-\-upgrade\-check
|
||||
Check for available upgrade.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-upgrade\-to=<url>
|
||||
.B \-\-upgrade\-to=<url>
|
||||
Force upgrade directly from specified URL.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-verbose
|
||||
.B \-\-verbose
|
||||
Print verbose log output.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-version
|
||||
.B \-\-version
|
||||
Show version.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-to=<dir>
|
||||
Destination directory where files should be stored after decryption.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-verify\-only
|
||||
Don’t write decrypted files to disk (but verify plaintext hashes).
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-password=<pw>
|
||||
Folder password for decryption / verification. Can be passed through the
|
||||
\fBFOLDER_PASSWORD\fP environment variable instead to avoid recording in a
|
||||
shell’s history buffer or sniffing from the running processes list.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-folder\-id=<id>
|
||||
Folder ID of the encrypted folder, if it cannot be determined automatically.
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-token\-path=<file>
|
||||
Path to the token file within the folder (used to determine folder ID).
|
||||
.UNINDENT
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-\-continue
|
||||
Continue processing next file in case of error, instead of aborting.
|
||||
.UNINDENT
|
||||
.SH EXIT CODES
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
@@ -237,6 +349,62 @@ Upgrading
|
||||
Exit codes over 125 are usually returned by the shell/binary loader/default
|
||||
signal handler. Exit codes over 128+N on Unix usually represent the signal which
|
||||
caused the process to exit. For example, \fB128 + 9 (SIGKILL) = 137\fP\&.
|
||||
.SH SUBCOMMANDS
|
||||
.sp
|
||||
The command line syntax actually supports different modes of operation through
|
||||
several subcommands, specified as the first argument. If omitted, the default
|
||||
\fBserve\fP is assumed.
|
||||
.sp
|
||||
The initial setup of a device ID and default configuration can be called
|
||||
explicitly with the \fBgenerate\fP subcommand. It can also update the configured
|
||||
GUI authentication credentials, without going through the REST API. An existing
|
||||
device certificate is left untouched. If the configuration file already exists,
|
||||
it is validated and updated to the latest configuration schema, including adding
|
||||
default values for any new options.
|
||||
.sp
|
||||
The \fBdecrypt\fP subcommand is used in conjunction with untrusted (encrypted)
|
||||
devices, see the relevant section on decryption for
|
||||
details. It does not depend on Syncthing to be running, but works on offline
|
||||
data.
|
||||
.sp
|
||||
To work with the REST API for debugging or automating things in Syncthing, the
|
||||
\fBcli\fP subcommand provides easy access to individual features. It basically
|
||||
saves the hassle of handling HTTP connections and API authentication.
|
||||
.sp
|
||||
The available subcommands are grouped into several nested hierarchies and some
|
||||
parts dynamically generated from the running Syncthing instance. On every
|
||||
level, the \fB\-\-help\fP option lists the available properties, actions and
|
||||
commands for the user to discover interactively. The top\-level groups are:
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B config
|
||||
Access the live configuration in a running instance over the REST API to
|
||||
retrieve (get) or update (set) values in a fine\-grained way. The hierarchy
|
||||
is based on the same structure as used in the JSON / XML representations.
|
||||
.TP
|
||||
.B show
|
||||
Show system properties and status of a running instance. The output is
|
||||
passed on directly from the REST API response and therefore requires parsing
|
||||
JSON format.
|
||||
.TP
|
||||
.B operations
|
||||
Control the overall program operation such as restarting or handling
|
||||
upgrades, as well as triggering some actions on a per\-folder basis.
|
||||
.TP
|
||||
.B errors
|
||||
Examine pending error conditions that need attention from the user, or
|
||||
acknowledge (clear) them.
|
||||
.TP
|
||||
.B debug
|
||||
Various tools to aid in diagnosing problems or collection information for
|
||||
bug reports. Some of these commands access the database directly and can
|
||||
therefore only work when Syncthing is not running.
|
||||
.TP
|
||||
.B \fB\-\fP (a single dash)
|
||||
Reads subsequent commands from the standard input stream, without needing to
|
||||
call the \fBsyncthing cli\fP command over and over. Exits on any invalid
|
||||
command or when EOF (end\-of\-file) is received.
|
||||
.UNINDENT
|
||||
.SH PROXIES
|
||||
.sp
|
||||
Syncthing can use a SOCKS, HTTP, or HTTPS proxy to talk to the outside
|
||||
@@ -267,7 +435,7 @@ path expansion may not be supported.
|
||||
Used to increase the debugging verbosity in specific or all facilities,
|
||||
generally mapping to a Go package. Enabling any of these also enables
|
||||
microsecond timestamps, file names plus line numbers. Enter a
|
||||
comma\-separated string of facilities to trace. \fBsyncthing \-help\fP always
|
||||
comma\-separated string of facilities to trace. \fBsyncthing \-\-help\fP always
|
||||
outputs an up\-to\-date list. The valid facility strings are:
|
||||
.INDENT 7.0
|
||||
.TP
|
||||
@@ -388,13 +556,14 @@ increases.
|
||||
.TP
|
||||
.B STNODEFAULTFOLDER
|
||||
Don’t create a default folder when starting for the first time. This
|
||||
variable will be ignored anytime after the first run.
|
||||
variable will be ignored anytime after the first run. Equivalent to the
|
||||
\fB\-\-no\-default\-folder\fP flag.
|
||||
.TP
|
||||
.B STNORESTART
|
||||
Equivalent to the \fB\-no\-restart\fP flag
|
||||
Equivalent to the \fB\-\-no\-restart\fP flag.
|
||||
.TP
|
||||
.B STNOUPGRADE
|
||||
Disable automatic upgrades.
|
||||
Disable automatic upgrades. Equivalent to the \fB\-\-no\-upgrade\fP flag.
|
||||
.TP
|
||||
.B STPROFILER
|
||||
Set to a listen address such as “127.0.0.1:9090” to start the profiler with
|
||||
|
||||
@@ -24,6 +24,11 @@ message Configuration {
|
||||
}
|
||||
|
||||
message Defaults {
|
||||
FolderConfiguration folder = 1;
|
||||
DeviceConfiguration device = 2;
|
||||
FolderConfiguration folder = 1;
|
||||
DeviceConfiguration device = 2;
|
||||
Ignores ignores = 3;
|
||||
}
|
||||
|
||||
message Ignores {
|
||||
repeated string lines = 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user