mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-05-12 20:21:15 -03:00
Compare commits
34 Commits
publish-tr
...
Integratio
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1f6cd5fc2d | ||
|
|
635525be96 | ||
|
|
280791c0f5 | ||
|
|
91faa1be49 | ||
|
|
24e529ea07 | ||
|
|
595bfda331 | ||
|
|
0f358756a2 | ||
|
|
0ace46d127 | ||
|
|
a143a67318 | ||
|
|
047b9d96a0 | ||
|
|
c942b034ba | ||
|
|
0f1caacae4 | ||
|
|
f332cdc757 | ||
|
|
c6912c6721 | ||
|
|
678edbd223 | ||
|
|
1a78407efe | ||
|
|
3ecf1bc46d | ||
|
|
4d99e51e62 | ||
|
|
a9576d44e3 | ||
|
|
2c0e912fe1 | ||
|
|
1f96e58852 | ||
|
|
03f4bf262a | ||
|
|
bb61c948af | ||
|
|
fa59a736bf | ||
|
|
97dc8f69d9 | ||
|
|
57753474e4 | ||
|
|
d5f4cedeb5 | ||
|
|
ec4700308e | ||
|
|
1d5ae08696 | ||
|
|
bb5b583d63 | ||
|
|
7d80a599f2 | ||
|
|
284d8fa3d1 | ||
|
|
a03f52add0 | ||
|
|
89fa81123b |
2
.github/workflows/main.yml
vendored
2
.github/workflows/main.yml
vendored
@@ -163,7 +163,7 @@ jobs:
|
||||
# --break-system-packages because homebrew has now declared itself "externally managed".
|
||||
# this is CI so we don't actually care.
|
||||
sudo pip3 install --break-system-packages pexpect
|
||||
brew install gettext tmux
|
||||
brew install tmux
|
||||
- name: cmake
|
||||
run: |
|
||||
mkdir build && cd build
|
||||
|
||||
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -150,8 +150,6 @@ jobs:
|
||||
uses: ./.github/actions/rust-toolchain@stable
|
||||
with:
|
||||
targets: aarch64-apple-darwin
|
||||
- name: Install dependencies
|
||||
run: brew install gettext
|
||||
- name: Build and codesign
|
||||
run: |
|
||||
die() { echo >&2 "$*"; exit 1; }
|
||||
|
||||
56
.github/workflows/update-event-feeds.yml
vendored
56
.github/workflows/update-event-feeds.yml
vendored
@@ -1,56 +0,0 @@
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [opened, synchronize]
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
pr_number:
|
||||
description: Pull request number
|
||||
required: true
|
||||
type: number
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
update-event-feeds:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt install python3-git python3-polib
|
||||
sudo pip3 install --break-system-packages feedgen==1.0.0
|
||||
- name: Update event feeds
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ github.token }}
|
||||
run: |
|
||||
set -x
|
||||
if [ "${{ github.event_name }}" = pull_request ]; then
|
||||
pr_number=${{ github.event.pull_request.number }}
|
||||
else
|
||||
pr_number=${{ inputs.pr_number }}
|
||||
fi
|
||||
# E.g. https://github.com/fish-shell/fish-shell
|
||||
repo_url=${{ github.server_url }}/${{ github.repository }}
|
||||
workflow_sha=${{ github.workflow_sha }}
|
||||
run_id=${{ github.run_id }}
|
||||
events_ref=refs/fish-shell-events
|
||||
git clone "$repo_url" --revision="$events_ref" worktree --depth=1
|
||||
cd worktree
|
||||
git fetch origin "$workflow_sha" --depth=1
|
||||
set -o pipefail
|
||||
git show "$workflow_sha":build_tools/event-feeds.py |
|
||||
python - "$pr_number"
|
||||
git add .
|
||||
if git diff --cached --exit-code; then
|
||||
exit
|
||||
fi
|
||||
git config user.name fish-shell-bot
|
||||
git config user.email fish-shell-bot
|
||||
git commit -m "update via github run ID $run_id"
|
||||
cat >>.git/config <<'EOF'
|
||||
[credential]
|
||||
username = fish-shell-bot
|
||||
helper = !sh -c 'echo "password=$GITHUB_TOKEN"'
|
||||
EOF
|
||||
# Might fail due to a race; that's usually fine to ignore...
|
||||
git push origin HEAD:"$events_ref" ||:
|
||||
@@ -1,8 +1,5 @@
|
||||
fish ?.?.? (released ???)
|
||||
=========================
|
||||
|
||||
fish 4.1.1 (released ???)
|
||||
=========================
|
||||
fish 4.1.1 (released September 30, 2025)
|
||||
========================================
|
||||
|
||||
This release fixes the following regressions identified in 4.1.0:
|
||||
|
||||
|
||||
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -105,7 +105,7 @@ checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
|
||||
|
||||
[[package]]
|
||||
name = "fish"
|
||||
version = "4.1.0-snapshot"
|
||||
version = "4.1.1"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"cc",
|
||||
|
||||
@@ -64,7 +64,7 @@ debug = true
|
||||
|
||||
[package]
|
||||
name = "fish"
|
||||
version = "4.1.0-snapshot"
|
||||
version = "4.1.1"
|
||||
edition.workspace = true
|
||||
rust-version.workspace = true
|
||||
default-run = "fish"
|
||||
|
||||
@@ -1,155 +0,0 @@
|
||||
from datetime import datetime
|
||||
from pathlib import Path
|
||||
from typing import Tuple
|
||||
import dateutil.tz
|
||||
import json
|
||||
import re
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
# TODO maybe use https://github.com/getpelican/feedgenerator instead?
|
||||
from feedgen.feed import FeedGenerator
|
||||
import git
|
||||
import polib
|
||||
|
||||
|
||||
def message_dictionary(repo, ref, file: Path):
|
||||
po_contents = repo.git().show(f"{ref}:{file}")
|
||||
messages = polib.pofile(po_contents)
|
||||
return {e.msgid: e.msgstr for e in messages}
|
||||
|
||||
|
||||
def write_feed(
|
||||
feed_path: Path,
|
||||
base_ref_oid: str,
|
||||
title: str,
|
||||
subtitle: str,
|
||||
this_pr: Tuple[str, str] | None,
|
||||
):
|
||||
fg = FeedGenerator()
|
||||
tree_url = (
|
||||
"https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events"
|
||||
)
|
||||
feed_url = f"{tree_url}/{feed_path}"
|
||||
fg.id(feed_url)
|
||||
fg.title(title)
|
||||
fg.subtitle(subtitle)
|
||||
fg.link(href=feed_url, rel="self")
|
||||
generator_url = f"https://github.com/fish-shell/fish-shell/blob/{base_ref_oid}/.github/workflows/update-event-feeds.yml"
|
||||
fg.link(href=generator_url, rel="alternate")
|
||||
|
||||
entries = {}
|
||||
if feed_path.exists():
|
||||
tree = ET.parse(feed_path)
|
||||
root = tree.getroot()
|
||||
xmlns = "{http://www.w3.org/2005/Atom}"
|
||||
for child in root.findall(f"{xmlns}entry"):
|
||||
pr_url = child.find(f"{xmlns}id").text
|
||||
pr_title = child.find(f"{xmlns}title").text
|
||||
updated = child.find(f"{xmlns}updated").text
|
||||
updated = datetime.fromisoformat(updated)
|
||||
entries[pr_url] = (pr_title, updated)
|
||||
if this_pr is not None:
|
||||
(this_pr_title, this_pr_url) = this_pr
|
||||
if this_pr_url not in entries:
|
||||
entries[this_pr_url] = (this_pr_title, datetime.now(dateutil.tz.tzutc()))
|
||||
for pr_url, (pr_title, updated) in entries.items():
|
||||
fe = fg.add_entry()
|
||||
fe.id(pr_url)
|
||||
fe.title(pr_title)
|
||||
fe.updated(updated)
|
||||
fe.link(href=pr_url)
|
||||
atomfeed = fg.atom_str(pretty=True).decode()
|
||||
feed_path.write_text(atomfeed)
|
||||
|
||||
|
||||
def pull_request_data(pr_number: str):
|
||||
data = json.loads(
|
||||
subprocess.check_output(
|
||||
(
|
||||
"gh",
|
||||
"pr",
|
||||
"view",
|
||||
"--json",
|
||||
"baseRefOid,headRefOid,title,url",
|
||||
str(pr_number),
|
||||
),
|
||||
text=True,
|
||||
)
|
||||
)
|
||||
base_ref_oid = data["baseRefOid"]
|
||||
head_ref_oid = data["headRefOid"]
|
||||
this_pr_title = data["title"]
|
||||
this_pr_url = data["url"]
|
||||
return (base_ref_oid, head_ref_oid, this_pr_title, this_pr_url)
|
||||
|
||||
|
||||
def main():
|
||||
pr_number = sys.argv[1]
|
||||
|
||||
(base_ref_oid, head_ref_oid, this_pr_title, this_pr_url) = pull_request_data(
|
||||
pr_number
|
||||
)
|
||||
|
||||
repo = git.Repo()
|
||||
repo.git().execute(("git", "fetch", "origin", base_ref_oid, head_ref_oid))
|
||||
po_files = (
|
||||
Path(file)
|
||||
for file in repo.git()
|
||||
.execute(("git", "ls-tree", "--name-only", base_ref_oid, ":/po/"))
|
||||
.splitlines()
|
||||
)
|
||||
changed_files = {
|
||||
Path(file)
|
||||
for file in subprocess.check_output(
|
||||
("git", "diff", "--name-only", base_ref_oid, head_ref_oid), text=True
|
||||
).splitlines()
|
||||
if re.match(r"^po/\w+\.po$", file)
|
||||
}
|
||||
Path("po").mkdir(exist_ok=True)
|
||||
for po_file in po_files:
|
||||
file_without_extension = str(po_file).removesuffix(".po")
|
||||
ll_CC = os.path.basename(file_without_extension)
|
||||
feed_additions_path = Path(f"{file_without_extension}-additions.atom")
|
||||
feed_removals_path = Path(f"{file_without_extension}-removals.atom")
|
||||
|
||||
def title(verb: str):
|
||||
return f"fish-shell PRs {verb} {ll_CC} translations"
|
||||
|
||||
def write_additions(this_pr):
|
||||
subtitle = "PRs that add new translations"
|
||||
write_feed(
|
||||
feed_additions_path, base_ref_oid, title("adding"), subtitle, this_pr
|
||||
)
|
||||
|
||||
def write_removals(this_pr):
|
||||
subtitle = "PRs that remove translations, often due to a change in the messages source"
|
||||
write_feed(
|
||||
feed_removals_path, base_ref_oid, title("removing"), subtitle, this_pr
|
||||
)
|
||||
|
||||
if not feed_additions_path.exists():
|
||||
write_additions(None)
|
||||
if not feed_removals_path.exists():
|
||||
write_removals(None)
|
||||
|
||||
if po_file not in changed_files:
|
||||
continue
|
||||
old = message_dictionary(repo, base_ref_oid, po_file)
|
||||
new = message_dictionary(repo, head_ref_oid, po_file)
|
||||
if any(
|
||||
new_msgstr != old.get(new_msgid) and new_msgstr != ""
|
||||
for (new_msgid, new_msgstr) in new.items()
|
||||
):
|
||||
write_additions((this_pr_title, this_pr_url))
|
||||
elif any(
|
||||
old_msgstr != "" and new.get(old_msgid, "") == ""
|
||||
for (old_msgid, old_msgstr) in old.items()
|
||||
):
|
||||
write_removals((this_pr_title, this_pr_url))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -27,19 +27,11 @@ begin
|
||||
else
|
||||
set rust_extraction_file (mktemp)
|
||||
# We need to build to ensure that the proc macro for extracting strings runs.
|
||||
FISH_GETTEXT_EXTRACTION_FILE=$rust_extraction_file cargo check --no-default-features --features=gettext-extract
|
||||
FISH_GETTEXT_EXTRACTION_FILE=$rust_extraction_file cargo check --features=gettext-extract
|
||||
or exit 1
|
||||
end
|
||||
|
||||
function mark_section
|
||||
set -l section_name $argv[1]
|
||||
echo 'msgid "fish-section-'$section_name'"'
|
||||
echo 'msgstr ""'
|
||||
echo ''
|
||||
end
|
||||
|
||||
mark_section tier1-from-rust
|
||||
|
||||
echo '# fish-section-tier1-from-rust'
|
||||
# Get rid of duplicates and sort.
|
||||
msguniq --no-wrap --strict --sort-output $rust_extraction_file
|
||||
or exit 1
|
||||
@@ -85,13 +77,13 @@ begin
|
||||
# This regex handles explicit requests to translate a message. These are more important to translate
|
||||
# than messages which should be implicitly translated.
|
||||
set -l explicit_regex '.*\( *_ (([\'"]).+?(?<!\\\\)\\2) *\).*'
|
||||
mark_section "$tier-from-script-explicitly-added"
|
||||
echo "# fish-section-$tier-from-script-explicitly-added"
|
||||
extract_fish_script_messages_impl $explicit_regex $argv
|
||||
|
||||
# This regex handles descriptions for `complete` and `function` statements. These messages are not
|
||||
# particularly important to translate. Hence the "implicit" label.
|
||||
set -l implicit_regex '^(?:\s|and |or )*(?:complete|function).*? (?:-d|--description) (([\'"]).+?(?<!\\\\)\\2).*'
|
||||
mark_section "$tier-from-script-implicitly-added"
|
||||
echo "# fish-section-$tier-from-script-implicitly-added"
|
||||
extract_fish_script_messages_impl $implicit_regex $argv
|
||||
end
|
||||
|
||||
|
||||
@@ -201,7 +201,7 @@ done
|
||||
git push git@github.com:$repository_owner/fish-site HEAD:master
|
||||
)
|
||||
|
||||
if [ -n "$integration_branch" ]; then {
|
||||
if [ -n "$integration_branch" ]; then
|
||||
git push $remote "$version^{commit}":refs/heads/$integration_branch
|
||||
else
|
||||
changelog=$(cat - CHANGELOG.rst <<EOF
|
||||
@@ -213,6 +213,21 @@ EOF
|
||||
printf %s\\n "$changelog" >CHANGELOG.rst
|
||||
CommitVersion ${version}-snapshot "start new cycle"
|
||||
git push $remote HEAD:master
|
||||
fi
|
||||
|
||||
# TODO This can currently require a TTY for editing and password
|
||||
# prompts.
|
||||
if [ "$repository_owner" = fish-shell ]; then {
|
||||
mail=$(mktemp)
|
||||
cat >$mail <<EOF
|
||||
From: $(git var GIT_AUTHOR_IDENT | sed 's/ [0-9]* +[0-9]*$//')
|
||||
Subject: fish $version released
|
||||
|
||||
See https://github.com/fish-shell/fish-shell/releases/tag/$version
|
||||
EOF
|
||||
git send-email --suppress-cc=all --confirm=always $mail \
|
||||
--to="fish-users Mailing List <fish-users@lists.sourceforge.net>"
|
||||
rm $mail
|
||||
} fi
|
||||
|
||||
exit
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
set -gx LC_ALL C.UTF-8
|
||||
|
||||
set -l build_tools (status dirname)
|
||||
set -g tmpdir
|
||||
set -l po_dir $build_tools/../po
|
||||
|
||||
set -l extract
|
||||
@@ -45,8 +46,8 @@ if test -z $argv[1]
|
||||
else
|
||||
set -l po_dir_id (stat --format='%d:%i' -- $po_dir)
|
||||
for arg in $argv
|
||||
set -l arg_dir_id (stat --format='%d:%i' -- (dirname $arg) 2>/dev/null)
|
||||
if test $po_dir_id != "$arg_dir_id"
|
||||
set -l arg_dir_id (stat --format='%d:%i' -- (dirname $arg))
|
||||
if test $po_dir_id != $arg_dir_id
|
||||
echo "Argument $arg is not a file in the directory $(realpath $po_dir)."
|
||||
echo "Non-option arguments must specify paths to files in this directory."
|
||||
echo ""
|
||||
@@ -98,38 +99,44 @@ if set -l --query _flag_dry_run
|
||||
cp -r $po_dir/* $tmpdir
|
||||
end
|
||||
|
||||
# This is used to identify lines which should be set here via $header_lines.
|
||||
# Make sure that this prefix does not appear elsewhere in the file and only contains characters
|
||||
# without special meaning in a sed pattern.
|
||||
set -g header_prefix "# fish-note: "
|
||||
|
||||
function print_header -a po_file
|
||||
set -l ll_CC (basename $po_file .po)
|
||||
set -l header_lines \
|
||||
"To subscribe to proposed updates, point your feed reader at:" \
|
||||
https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/$ll_CC-additions.atom \
|
||||
https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/$ll_CC-removals.atom \
|
||||
"Translations are divided into sections, each starting with a fish-section-* pseudo-message." \
|
||||
"The first few sections are more important." \
|
||||
"Ignore the tier3 sections unless you have a lot of time."
|
||||
for line in $header_lines
|
||||
printf '%s%s\n' $header_prefix $line
|
||||
end
|
||||
end
|
||||
|
||||
function merge_po_files --argument-names template_file po_file
|
||||
msgmerge --no-wrap --update --no-fuzzy-matching --backup=none --quiet \
|
||||
$po_file $template_file
|
||||
or cleanup_exit
|
||||
set -l new_po_file (mktemp) # TODO Remove on failure.
|
||||
# Remove obsolete messages instead of keeping them as #~ entries.
|
||||
and msgattrib --no-wrap --no-obsolete -o $new_po_file $po_file
|
||||
or cleanup_exit
|
||||
|
||||
begin
|
||||
print_header $po_file
|
||||
# Paste PO file without old header lines.
|
||||
sed '/^'$header_prefix'/d' $new_po_file
|
||||
echo "# fish-note-sections: Translations are divided into sections, each starting with a fish-section-* comment."
|
||||
echo "# fish-note-sections: The first few sections are more important."
|
||||
echo "# fish-note-sections: Ignore the tier3 sections unless you have a lot of time."
|
||||
sed -i '
|
||||
/^# fish-note-sections:/d;
|
||||
/^# fish-section-/d;
|
||||
' $new_po_file
|
||||
|
||||
set -l next_line 1
|
||||
set -l section
|
||||
awk <$template_file '
|
||||
/^# fish-section-\S*$/ {
|
||||
section = $0
|
||||
}
|
||||
section != "" && /^msgid ".+"$/ {
|
||||
print section
|
||||
print $0
|
||||
section = ""
|
||||
}
|
||||
' |
|
||||
while read -l section
|
||||
read -l msgid_line
|
||||
set -l line_number (grep -m1 -Fxn $msgid_line $new_po_file | string split :)[1]
|
||||
sed -n "$next_line,$(math $line_number - 1)"p $new_po_file
|
||||
echo $section
|
||||
set next_line $line_number
|
||||
# set section
|
||||
end
|
||||
sed -n "$next_line,\$"p $new_po_file
|
||||
end >$po_file
|
||||
rm $new_po_file
|
||||
end
|
||||
@@ -142,10 +149,7 @@ for po_file in $po_files
|
||||
if test -e $po_file
|
||||
merge_po_files $template_file $po_file
|
||||
else
|
||||
begin
|
||||
print_header $po_file
|
||||
cat $template_file
|
||||
end >$po_file
|
||||
cp $template_file $po_file
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
env,
|
||||
ffi::OsStr,
|
||||
path::{Path, PathBuf},
|
||||
process::{Command, Stdio},
|
||||
process::Command,
|
||||
};
|
||||
|
||||
fn main() {
|
||||
@@ -34,11 +34,7 @@ fn embed_localizations(cache_dir: &Path) {
|
||||
// for the respective language.
|
||||
let mut catalogs = phf_codegen::Map::new();
|
||||
|
||||
match Command::new("msgfmt")
|
||||
.arg("-h")
|
||||
.stdout(Stdio::null())
|
||||
.status()
|
||||
{
|
||||
match Command::new("msgfmt").arg("-h").status() {
|
||||
Err(e) if e.kind() == std::io::ErrorKind::NotFound => {
|
||||
rsconf::warn!(
|
||||
"Cannot find msgfmt to build gettext message catalogs. Localization will not work."
|
||||
@@ -101,12 +97,6 @@ fn embed_localizations(cache_dir: &Path) {
|
||||
.arg(&po_file_path)
|
||||
.output()
|
||||
.unwrap();
|
||||
if !output.status.success() {
|
||||
panic!(
|
||||
"msgfmt failed:\n{}",
|
||||
String::from_utf8(output.stderr).unwrap()
|
||||
);
|
||||
}
|
||||
let mo_data = output.stdout;
|
||||
|
||||
// Extract map from MO data.
|
||||
|
||||
39
po/de.po
39
po/de.po
@@ -1,9 +1,6 @@
|
||||
# fish-note: To subscribe to proposed updates, point your feed reader at:
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/de-additions.atom
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/de-removals.atom
|
||||
# fish-note: Translations are divided into sections, each starting with a fish-section-* pseudo-message.
|
||||
# fish-note: The first few sections are more important.
|
||||
# fish-note: Ignore the tier3 sections unless you have a lot of time.
|
||||
# fish-note-sections: Translations are divided into sections, each starting with a fish-section-* comment.
|
||||
# fish-note-sections: The first few sections are more important.
|
||||
# fish-note-sections: Ignore the tier3 sections unless you have a lot of time.
|
||||
# translation of de.po to deutsch
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
|
||||
@@ -24,9 +21,6 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 3.5\n"
|
||||
|
||||
msgid "fish-section-tier1-from-rust"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"\n"
|
||||
" PID Command\n"
|
||||
@@ -35,6 +29,7 @@ msgstr ""
|
||||
" PID Befehl\n"
|
||||
|
||||
#, c-format
|
||||
# fish-section-tier1-from-rust
|
||||
msgid " (%ls)\n"
|
||||
msgstr " (%ls)\n"
|
||||
|
||||
@@ -205,6 +200,7 @@ msgstr "%ls: %ls: ungültiger Unterbefehl\n"
|
||||
msgid "%ls: %ls: invalid variable name. See `help identifiers`\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: %ls: option does not take an argument\n"
|
||||
msgstr ""
|
||||
@@ -413,6 +409,7 @@ msgstr ""
|
||||
msgid "%ls: Invalid --min-args value '%ls'\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Invalid --unknown-arguments value '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -705,6 +702,7 @@ msgstr ""
|
||||
msgid "%ls: expected a numeric value"
|
||||
msgstr "%ls: Erwartete numerischen Wert"
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: fish was not built with embedded files"
|
||||
msgstr ""
|
||||
@@ -801,14 +799,17 @@ msgstr ""
|
||||
msgid "%s"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s %s: unrecognized feature '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s and %s are mutually exclusive"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s could not read response to Primary Device Attribute query after waiting for %d seconds. This is often due to a missing feature in your terminal. See 'help terminal-compatibility' or 'man fish-terminal-compatibility'. This %s process will no longer wait for outstanding queries, which disables some optional features."
|
||||
msgstr ""
|
||||
@@ -1116,6 +1117,7 @@ msgstr ""
|
||||
msgid "Failed to assign shell to its own process group"
|
||||
msgstr "Konnte Shell nicht einer eigenen Prozessgruppe zuweisen"
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "Failed to set terminal mode (%s)"
|
||||
msgstr ""
|
||||
@@ -1193,6 +1195,7 @@ msgstr "Illegale Instruktion"
|
||||
msgid "Incomplete escape sequence '%ls'"
|
||||
msgstr "Unvollständige Escapesequenz '%ls'"
|
||||
|
||||
#
|
||||
msgid "Information request"
|
||||
msgstr ""
|
||||
|
||||
@@ -1519,6 +1522,7 @@ msgstr "Derzeit ausführende Funktion stoppen"
|
||||
msgid "Stop the innermost loop"
|
||||
msgstr "Innerste Schleife beenden"
|
||||
|
||||
#
|
||||
msgid "Synchronized file access"
|
||||
msgstr ""
|
||||
|
||||
@@ -1706,6 +1710,7 @@ msgstr "Nicht passender Platzhalter"
|
||||
msgid "Unsupported use of '='. In fish, please use 'set %ls %ls'."
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Unused signal"
|
||||
msgstr ""
|
||||
|
||||
@@ -1733,6 +1738,7 @@ msgstr ""
|
||||
msgid "Variables cannot be bracketed. In fish, please use {$%ls}."
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Virtual timer expired"
|
||||
msgstr ""
|
||||
|
||||
@@ -1896,9 +1902,7 @@ msgstr "unbegrenzt\n"
|
||||
msgid "|& is not valid. In fish, use &| to pipe both stdout and stderr."
|
||||
msgstr "|& ist ungültig. In fish, nutze &| um stdout und stderr gleichzeitig zu pipen"
|
||||
|
||||
msgid "fish-section-tier1-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-explicitly-added
|
||||
msgid "%ls: %ls: expected %d arguments; got %d\\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -2121,9 +2125,7 @@ msgstr "oder die Datei war leer"
|
||||
msgid "python executable not found"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-implicitly-added
|
||||
msgid "# comments"
|
||||
msgstr ""
|
||||
|
||||
@@ -3825,12 +3827,7 @@ msgstr ""
|
||||
msgid "~ expansion"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier3-from-script-implicitly-added
|
||||
msgid " "
|
||||
msgstr ""
|
||||
|
||||
|
||||
39
po/en.po
39
po/en.po
@@ -1,9 +1,6 @@
|
||||
# fish-note: To subscribe to proposed updates, point your feed reader at:
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/en-additions.atom
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/en-removals.atom
|
||||
# fish-note: Translations are divided into sections, each starting with a fish-section-* pseudo-message.
|
||||
# fish-note: The first few sections are more important.
|
||||
# fish-note: Ignore the tier3 sections unless you have a lot of time.
|
||||
# fish-note-sections: Translations are divided into sections, each starting with a fish-section-* comment.
|
||||
# fish-note-sections: The first few sections are more important.
|
||||
# fish-note-sections: Ignore the tier3 sections unless you have a lot of time.
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
@@ -24,15 +21,13 @@ msgstr ""
|
||||
"X-Poedit-Basepath: /home/david/src/fish-shell\n"
|
||||
"X-Generator: Poedit 1.8.11\n"
|
||||
|
||||
msgid "fish-section-tier1-from-rust"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"\n"
|
||||
" PID Command\n"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
# fish-section-tier1-from-rust
|
||||
msgid " (%ls)\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -203,6 +198,7 @@ msgstr ""
|
||||
msgid "%ls: %ls: invalid variable name. See `help identifiers`\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: %ls: option does not take an argument\n"
|
||||
msgstr ""
|
||||
@@ -383,6 +379,7 @@ msgstr "%ls: Expected exactly two names (current function name, and new function
|
||||
msgid "%ls: Expected generic | variable | signal | exit | job-id for --handlers-type\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Function '%ls' already exists. Cannot create copy of '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -411,6 +408,7 @@ msgstr ""
|
||||
msgid "%ls: Invalid --min-args value '%ls'\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Invalid --unknown-arguments value '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -703,6 +701,7 @@ msgstr ""
|
||||
msgid "%ls: expected a numeric value"
|
||||
msgstr "%ls: expected a numeric value"
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: fish was not built with embedded files"
|
||||
msgstr ""
|
||||
@@ -799,14 +798,17 @@ msgstr ""
|
||||
msgid "%s"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s %s: unrecognized feature '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s and %s are mutually exclusive"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s could not read response to Primary Device Attribute query after waiting for %d seconds. This is often due to a missing feature in your terminal. See 'help terminal-compatibility' or 'man fish-terminal-compatibility'. This %s process will no longer wait for outstanding queries, which disables some optional features."
|
||||
msgstr ""
|
||||
@@ -910,6 +912,7 @@ msgstr "An error occurred while setting up pipe"
|
||||
msgid "Argument is not a number: '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Await background process completion"
|
||||
msgstr ""
|
||||
|
||||
@@ -1114,6 +1117,7 @@ msgstr ""
|
||||
msgid "Failed to assign shell to its own process group"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "Failed to set terminal mode (%s)"
|
||||
msgstr ""
|
||||
@@ -1517,6 +1521,7 @@ msgstr "Stop the currently evaluated function"
|
||||
msgid "Stop the innermost loop"
|
||||
msgstr "Stop the innermost loop"
|
||||
|
||||
#
|
||||
msgid "Synchronized file access"
|
||||
msgstr ""
|
||||
|
||||
@@ -1731,6 +1736,7 @@ msgstr ""
|
||||
msgid "Variables cannot be bracketed. In fish, please use {$%ls}."
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Virtual timer expired"
|
||||
msgstr ""
|
||||
|
||||
@@ -1894,9 +1900,7 @@ msgstr ""
|
||||
msgid "|& is not valid. In fish, use &| to pipe both stdout and stderr."
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-explicitly-added
|
||||
msgid "%ls: %ls: expected %d arguments; got %d\\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -2119,9 +2123,7 @@ msgstr ""
|
||||
msgid "python executable not found"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-implicitly-added
|
||||
msgid "# comments"
|
||||
msgstr ""
|
||||
|
||||
@@ -3823,12 +3825,7 @@ msgstr ""
|
||||
msgid "~ expansion"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier3-from-script-implicitly-added
|
||||
msgid " "
|
||||
msgstr ""
|
||||
|
||||
|
||||
39
po/fr.po
39
po/fr.po
@@ -1,9 +1,6 @@
|
||||
# fish-note: To subscribe to proposed updates, point your feed reader at:
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/fr-additions.atom
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/fr-removals.atom
|
||||
# fish-note: Translations are divided into sections, each starting with a fish-section-* pseudo-message.
|
||||
# fish-note: The first few sections are more important.
|
||||
# fish-note: Ignore the tier3 sections unless you have a lot of time.
|
||||
# fish-note-sections: Translations are divided into sections, each starting with a fish-section-* comment.
|
||||
# fish-note-sections: The first few sections are more important.
|
||||
# fish-note-sections: Ignore the tier3 sections unless you have a lot of time.
|
||||
# translation of fr.po to Français
|
||||
# FRENCH TRANSLATION FOR FISH
|
||||
# Copyright (C) 2006 Xavier Douville
|
||||
@@ -123,9 +120,6 @@ msgstr ""
|
||||
"X-Generator: Gtranslator 2.91.7\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
msgid "fish-section-tier1-from-rust"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"\n"
|
||||
" PID Command\n"
|
||||
@@ -134,6 +128,7 @@ msgstr ""
|
||||
" PID Commande\n"
|
||||
|
||||
#, c-format
|
||||
# fish-section-tier1-from-rust
|
||||
msgid " (%ls)\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -304,6 +299,7 @@ msgstr ""
|
||||
msgid "%ls: %ls: invalid variable name. See `help identifiers`\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: %ls: option does not take an argument\n"
|
||||
msgstr ""
|
||||
@@ -484,6 +480,7 @@ msgstr "%ls : Exactement deux noms attendus (noms de fonctions actuel et projet
|
||||
msgid "%ls: Expected generic | variable | signal | exit | job-id for --handlers-type\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Function '%ls' already exists. Cannot create copy of '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -512,6 +509,7 @@ msgstr "%ls : Valeur --max-args '%ls' invalide\n"
|
||||
msgid "%ls: Invalid --min-args value '%ls'\n"
|
||||
msgstr "%ls : Valeur --min-args '%ls' invalide\n"
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Invalid --unknown-arguments value '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -804,6 +802,7 @@ msgstr ""
|
||||
msgid "%ls: expected a numeric value"
|
||||
msgstr "%ls : valeur numérique attendue"
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: fish was not built with embedded files"
|
||||
msgstr ""
|
||||
@@ -900,14 +899,17 @@ msgstr ""
|
||||
msgid "%s"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s %s: unrecognized feature '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s and %s are mutually exclusive"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s could not read response to Primary Device Attribute query after waiting for %d seconds. This is often due to a missing feature in your terminal. See 'help terminal-compatibility' or 'man fish-terminal-compatibility'. This %s process will no longer wait for outstanding queries, which disables some optional features."
|
||||
msgstr ""
|
||||
@@ -1011,6 +1013,7 @@ msgstr "Une erreur est survenue lors du paramétrage du tube"
|
||||
msgid "Argument is not a number: '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Await background process completion"
|
||||
msgstr ""
|
||||
|
||||
@@ -1215,6 +1218,7 @@ msgstr ""
|
||||
msgid "Failed to assign shell to its own process group"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "Failed to set terminal mode (%s)"
|
||||
msgstr ""
|
||||
@@ -1618,6 +1622,7 @@ msgstr "Arrêter la fonction actuellement en évaluation"
|
||||
msgid "Stop the innermost loop"
|
||||
msgstr "Arrêter la boucle interne"
|
||||
|
||||
#
|
||||
msgid "Synchronized file access"
|
||||
msgstr ""
|
||||
|
||||
@@ -1832,6 +1837,7 @@ msgstr "Les variables ne peuvent être placées entre crochets. Dans fish, veuil
|
||||
msgid "Variables cannot be bracketed. In fish, please use {$%ls}."
|
||||
msgstr "Les variables ne peuvent être placées entre crochets. Dans fish, veuillez utiliser {$%ls}."
|
||||
|
||||
#
|
||||
msgid "Virtual timer expired"
|
||||
msgstr ""
|
||||
|
||||
@@ -1995,9 +2001,7 @@ msgstr ""
|
||||
msgid "|& is not valid. In fish, use &| to pipe both stdout and stderr."
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-explicitly-added
|
||||
msgid "%ls: %ls: expected %d arguments; got %d\\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -2220,9 +2224,7 @@ msgstr "ou le fichier était vide"
|
||||
msgid "python executable not found"
|
||||
msgstr "Exécutable python introuvable"
|
||||
|
||||
msgid "fish-section-tier1-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-implicitly-added
|
||||
msgid "# comments"
|
||||
msgstr ""
|
||||
|
||||
@@ -3924,12 +3926,7 @@ msgstr ""
|
||||
msgid "~ expansion"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier3-from-script-implicitly-added
|
||||
msgid " "
|
||||
msgstr ""
|
||||
|
||||
|
||||
39
po/pl.po
39
po/pl.po
@@ -1,9 +1,6 @@
|
||||
# fish-note: To subscribe to proposed updates, point your feed reader at:
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/pl-additions.atom
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/pl-removals.atom
|
||||
# fish-note: Translations are divided into sections, each starting with a fish-section-* pseudo-message.
|
||||
# fish-note: The first few sections are more important.
|
||||
# fish-note: Ignore the tier3 sections unless you have a lot of time.
|
||||
# fish-note-sections: Translations are divided into sections, each starting with a fish-section-* comment.
|
||||
# fish-note-sections: The first few sections are more important.
|
||||
# fish-note-sections: Ignore the tier3 sections unless you have a lot of time.
|
||||
# Translation of fish in Polish
|
||||
# This file is distributed under the same license as the fish package.
|
||||
# Author: m4sk1n <m4sk1n@vivaldi.net>
|
||||
@@ -20,15 +17,13 @@ msgstr ""
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
"X-Generator: GlotPress/2.2.2\n"
|
||||
|
||||
msgid "fish-section-tier1-from-rust"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"\n"
|
||||
" PID Command\n"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
# fish-section-tier1-from-rust
|
||||
msgid " (%ls)\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -199,6 +194,7 @@ msgstr ""
|
||||
msgid "%ls: %ls: invalid variable name. See `help identifiers`\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: %ls: option does not take an argument\n"
|
||||
msgstr ""
|
||||
@@ -379,6 +375,7 @@ msgstr "%ls: Oczekiwano dokładnie dwóch nazw (nazwa obecnej funkcji i nazwa no
|
||||
msgid "%ls: Expected generic | variable | signal | exit | job-id for --handlers-type\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Function '%ls' already exists. Cannot create copy of '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -407,6 +404,7 @@ msgstr ""
|
||||
msgid "%ls: Invalid --min-args value '%ls'\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Invalid --unknown-arguments value '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -699,6 +697,7 @@ msgstr ""
|
||||
msgid "%ls: expected a numeric value"
|
||||
msgstr "%ls: oczekiwano wartości liczbowej"
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: fish was not built with embedded files"
|
||||
msgstr ""
|
||||
@@ -795,14 +794,17 @@ msgstr ""
|
||||
msgid "%s"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s %s: unrecognized feature '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s and %s are mutually exclusive"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s could not read response to Primary Device Attribute query after waiting for %d seconds. This is often due to a missing feature in your terminal. See 'help terminal-compatibility' or 'man fish-terminal-compatibility'. This %s process will no longer wait for outstanding queries, which disables some optional features."
|
||||
msgstr ""
|
||||
@@ -906,6 +908,7 @@ msgstr ""
|
||||
msgid "Argument is not a number: '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Await background process completion"
|
||||
msgstr ""
|
||||
|
||||
@@ -1110,6 +1113,7 @@ msgstr ""
|
||||
msgid "Failed to assign shell to its own process group"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "Failed to set terminal mode (%s)"
|
||||
msgstr ""
|
||||
@@ -1513,6 +1517,7 @@ msgstr "Zatrzymaj obecnie używaną funkcję"
|
||||
msgid "Stop the innermost loop"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Synchronized file access"
|
||||
msgstr ""
|
||||
|
||||
@@ -1727,6 +1732,7 @@ msgstr "Zmienne nie mogą znajdować się w nawiasach. W fish używane jest \"$%
|
||||
msgid "Variables cannot be bracketed. In fish, please use {$%ls}."
|
||||
msgstr "Zmienne nie mogą znajdować się w nawiasach. W fish używane jest {$%ls}."
|
||||
|
||||
#
|
||||
msgid "Virtual timer expired"
|
||||
msgstr ""
|
||||
|
||||
@@ -1890,9 +1896,7 @@ msgstr ""
|
||||
msgid "|& is not valid. In fish, use &| to pipe both stdout and stderr."
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-explicitly-added
|
||||
msgid "%ls: %ls: expected %d arguments; got %d\\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -2115,9 +2119,7 @@ msgstr ""
|
||||
msgid "python executable not found"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-implicitly-added
|
||||
msgid "# comments"
|
||||
msgstr ""
|
||||
|
||||
@@ -3819,12 +3821,7 @@ msgstr ""
|
||||
msgid "~ expansion"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier3-from-script-implicitly-added
|
||||
msgid " "
|
||||
msgstr ""
|
||||
|
||||
|
||||
61
po/pt_BR.po
61
po/pt_BR.po
@@ -1,9 +1,6 @@
|
||||
# fish-note: To subscribe to proposed updates, point your feed reader at:
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/pt_BR-additions.atom
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/pt_BR-removals.atom
|
||||
# fish-note: Translations are divided into sections, each starting with a fish-section-* pseudo-message.
|
||||
# fish-note: The first few sections are more important.
|
||||
# fish-note: Ignore the tier3 sections unless you have a lot of time.
|
||||
# fish-note-sections: Translations are divided into sections, each starting with a fish-section-* comment.
|
||||
# fish-note-sections: The first few sections are more important.
|
||||
# fish-note-sections: Ignore the tier3 sections unless you have a lot of time.
|
||||
# Portuguese translations for fish package.
|
||||
# Copyright (C) 2014 THE fish'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the fish package.
|
||||
@@ -25,15 +22,13 @@ msgstr ""
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 1.8.4\n"
|
||||
|
||||
msgid "fish-section-tier1-from-rust"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"\n"
|
||||
" PID Command\n"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
# fish-section-tier1-from-rust
|
||||
msgid " (%ls)\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -204,6 +199,7 @@ msgstr ""
|
||||
msgid "%ls: %ls: invalid variable name. See `help identifiers`\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: %ls: option does not take an argument\n"
|
||||
msgstr ""
|
||||
@@ -384,6 +380,7 @@ msgstr "%ls: Esperava exatamente dois nomes (nome atual da função, e novo nome
|
||||
msgid "%ls: Expected generic | variable | signal | exit | job-id for --handlers-type\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Function '%ls' already exists. Cannot create copy of '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -412,6 +409,7 @@ msgstr ""
|
||||
msgid "%ls: Invalid --min-args value '%ls'\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Invalid --unknown-arguments value '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -704,6 +702,7 @@ msgstr ""
|
||||
msgid "%ls: expected a numeric value"
|
||||
msgstr "%ls: esperava valor numérico"
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: fish was not built with embedded files"
|
||||
msgstr ""
|
||||
@@ -800,14 +799,17 @@ msgstr ""
|
||||
msgid "%s"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s %s: unrecognized feature '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s and %s are mutually exclusive"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s could not read response to Primary Device Attribute query after waiting for %d seconds. This is often due to a missing feature in your terminal. See 'help terminal-compatibility' or 'man fish-terminal-compatibility'. This %s process will no longer wait for outstanding queries, which disables some optional features."
|
||||
msgstr ""
|
||||
@@ -911,6 +913,7 @@ msgstr "Ocorreu um erro ao preparar pipe"
|
||||
msgid "Argument is not a number: '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Await background process completion"
|
||||
msgstr ""
|
||||
|
||||
@@ -1115,6 +1118,7 @@ msgstr ""
|
||||
msgid "Failed to assign shell to its own process group"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "Failed to set terminal mode (%s)"
|
||||
msgstr ""
|
||||
@@ -1518,6 +1522,7 @@ msgstr "Pára a função em execução"
|
||||
msgid "Stop the innermost loop"
|
||||
msgstr "Pára o laço mais interno"
|
||||
|
||||
#
|
||||
msgid "Synchronized file access"
|
||||
msgstr ""
|
||||
|
||||
@@ -1732,6 +1737,7 @@ msgstr ""
|
||||
msgid "Variables cannot be bracketed. In fish, please use {$%ls}."
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Virtual timer expired"
|
||||
msgstr ""
|
||||
|
||||
@@ -1895,9 +1901,7 @@ msgstr ""
|
||||
msgid "|& is not valid. In fish, use &| to pipe both stdout and stderr."
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-explicitly-added
|
||||
msgid "%ls: %ls: expected %d arguments; got %d\\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -2120,9 +2124,7 @@ msgstr ""
|
||||
msgid "python executable not found"
|
||||
msgstr "executável python não encontrado"
|
||||
|
||||
msgid "fish-section-tier1-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-implicitly-added
|
||||
msgid "# comments"
|
||||
msgstr ""
|
||||
|
||||
@@ -3824,12 +3826,7 @@ msgstr ""
|
||||
msgid "~ expansion"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier3-from-script-implicitly-added
|
||||
msgid " "
|
||||
msgstr ""
|
||||
|
||||
@@ -19607,6 +19604,11 @@ msgstr ""
|
||||
msgid "Do not list files that match the given pattern"
|
||||
msgstr ""
|
||||
|
||||
# Notas:
|
||||
# Adicionar nota
|
||||
#
|
||||
# Caminhos:
|
||||
# share/functions/__fish_complete_ls.fish:49
|
||||
msgid "Do not list implied entries matching specified shell pattern"
|
||||
msgstr "Não lista entradas com o padrão especificado"
|
||||
|
||||
@@ -26015,6 +26017,11 @@ msgstr ""
|
||||
msgid "File is on filesystem of specified type"
|
||||
msgstr ""
|
||||
|
||||
# Notas:
|
||||
# Adicionar nota
|
||||
#
|
||||
# Caminhos:
|
||||
# share/functions/__fish_complete_ls.fish:49
|
||||
msgid "File is symlink matching specified case insensitive pattern"
|
||||
msgstr ""
|
||||
|
||||
@@ -36551,6 +36558,12 @@ msgstr ""
|
||||
msgid "Machine-readable description of custom origin"
|
||||
msgstr ""
|
||||
|
||||
# Notas:
|
||||
# Adicionar nota
|
||||
#
|
||||
# Caminhos:
|
||||
# proc.cpp:1279
|
||||
# proc.cpp:1305
|
||||
msgid "Mail address to send alerts to"
|
||||
msgstr ""
|
||||
|
||||
@@ -46049,6 +46062,12 @@ msgstr ""
|
||||
msgid "Process last file first"
|
||||
msgstr ""
|
||||
|
||||
# Notas:
|
||||
# Adicionar nota
|
||||
#
|
||||
# Caminhos:
|
||||
# proc.cpp:1279
|
||||
# proc.cpp:1305
|
||||
msgid "Process log file"
|
||||
msgstr ""
|
||||
|
||||
|
||||
41
po/sv.po
41
po/sv.po
@@ -1,9 +1,6 @@
|
||||
# fish-note: To subscribe to proposed updates, point your feed reader at:
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/sv-additions.atom
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/sv-removals.atom
|
||||
# fish-note: Translations are divided into sections, each starting with a fish-section-* pseudo-message.
|
||||
# fish-note: The first few sections are more important.
|
||||
# fish-note: Ignore the tier3 sections unless you have a lot of time.
|
||||
# fish-note-sections: Translations are divided into sections, each starting with a fish-section-* comment.
|
||||
# fish-note-sections: The first few sections are more important.
|
||||
# fish-note-sections: Ignore the tier3 sections unless you have a lot of time.
|
||||
# Copyright © 2006
|
||||
# This file is distributed under the same license as the fish package.
|
||||
# Axel Liljencrantz <liljencrantz@gmail.com>, 2006
|
||||
@@ -21,15 +18,13 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "fish-section-tier1-from-rust"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"\n"
|
||||
" PID Command\n"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
# fish-section-tier1-from-rust
|
||||
msgid " (%ls)\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -200,6 +195,7 @@ msgstr ""
|
||||
msgid "%ls: %ls: invalid variable name. See `help identifiers`\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: %ls: option does not take an argument\n"
|
||||
msgstr ""
|
||||
@@ -380,6 +376,7 @@ msgstr ""
|
||||
msgid "%ls: Expected generic | variable | signal | exit | job-id for --handlers-type\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Function '%ls' already exists. Cannot create copy of '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -408,6 +405,7 @@ msgstr ""
|
||||
msgid "%ls: Invalid --min-args value '%ls'\n"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: Invalid --unknown-arguments value '%ls'\n"
|
||||
msgstr ""
|
||||
@@ -700,6 +698,7 @@ msgstr ""
|
||||
msgid "%ls: expected a numeric value"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%ls: fish was not built with embedded files"
|
||||
msgstr ""
|
||||
@@ -796,14 +795,17 @@ msgstr ""
|
||||
msgid "%s"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s %s: unrecognized feature '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s and %s are mutually exclusive"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "%s could not read response to Primary Device Attribute query after waiting for %d seconds. This is often due to a missing feature in your terminal. See 'help terminal-compatibility' or 'man fish-terminal-compatibility'. This %s process will no longer wait for outstanding queries, which disables some optional features."
|
||||
msgstr ""
|
||||
@@ -907,6 +909,7 @@ msgstr "Ett fel inträffade under skapandet av ett rör"
|
||||
msgid "Argument is not a number: '%ls'"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Await background process completion"
|
||||
msgstr ""
|
||||
|
||||
@@ -1111,6 +1114,7 @@ msgstr ""
|
||||
msgid "Failed to assign shell to its own process group"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
#, c-format
|
||||
msgid "Failed to set terminal mode (%s)"
|
||||
msgstr ""
|
||||
@@ -1514,6 +1518,7 @@ msgstr "Avbryt den nuvarande funktionen"
|
||||
msgid "Stop the innermost loop"
|
||||
msgstr "Avbryt den innersta loopen"
|
||||
|
||||
#
|
||||
msgid "Synchronized file access"
|
||||
msgstr ""
|
||||
|
||||
@@ -1728,6 +1733,7 @@ msgstr ""
|
||||
msgid "Variables cannot be bracketed. In fish, please use {$%ls}."
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Virtual timer expired"
|
||||
msgstr ""
|
||||
|
||||
@@ -1891,9 +1897,7 @@ msgstr ""
|
||||
msgid "|& is not valid. In fish, use &| to pipe both stdout and stderr."
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-explicitly-added
|
||||
msgid "%ls: %ls: expected %d arguments; got %d\\n"
|
||||
msgstr ""
|
||||
|
||||
@@ -2065,12 +2069,14 @@ msgstr ""
|
||||
msgid "Too many args for cd command"
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Type %shelp%s for instructions on how to use fish"
|
||||
msgstr "Skriv %shelp%s för instruktioner om hur man använder fish"
|
||||
|
||||
msgid "Warning: the file containing this function has not been saved. Changes may be lost when fish is closed."
|
||||
msgstr ""
|
||||
|
||||
#
|
||||
msgid "Welcome to fish, the friendly interactive shell"
|
||||
msgstr "Välkommen till fish, det vänliga interaktiva skalet"
|
||||
|
||||
@@ -2116,9 +2122,7 @@ msgstr ""
|
||||
msgid "python executable not found"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier1-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-implicitly-added
|
||||
msgid "# comments"
|
||||
msgstr ""
|
||||
|
||||
@@ -3820,12 +3824,7 @@ msgstr ""
|
||||
msgid "~ expansion"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier3-from-script-implicitly-added
|
||||
msgid " "
|
||||
msgstr ""
|
||||
|
||||
|
||||
61
po/zh_CN.po
61
po/zh_CN.po
@@ -1,10 +1,20 @@
|
||||
# fish-note: To subscribe to proposed updates, point your feed reader at:
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/zh_CN-additions.atom
|
||||
# fish-note: https://raw.githubusercontent.com/fish-shell/fish-shell/fish-shell-events/po/zh_CN-removals.atom
|
||||
# fish-note: Translations are divided into sections, each starting with a fish-section-* pseudo-message.
|
||||
# fish-note: The first few sections are more important.
|
||||
# fish-note: Ignore the tier3 sections unless you have a lot of time.
|
||||
#
|
||||
# fish-note-sections: Translations are divided into sections, each starting with a fish-section-* comment.
|
||||
# fish-note-sections: The first few sections are more important.
|
||||
# fish-note-sections: Ignore the tier3 sections unless you have a lot of time.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: fish 1.21.8\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-03-10 16:38+0100\n"
|
||||
"PO-Revision-Date: 2025-09-30 19:14+0800\n"
|
||||
"Last-Translator: Yuyi Wang <Strawberry_Str@hotmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: zh_CN\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 3.7\n"
|
||||
|
||||
# General Notices 凡例
|
||||
# abort: 中止
|
||||
# argument: 参数
|
||||
@@ -31,23 +41,6 @@
|
||||
# token: 记号
|
||||
# universal (variable): 通用
|
||||
# valid & invalid: 有效 & 无效
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: fish 1.21.8\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-03-10 16:38+0100\n"
|
||||
"PO-Revision-Date: 2025-09-30 19:14+0800\n"
|
||||
"Last-Translator: Yuyi Wang <Strawberry_Str@hotmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: zh_CN\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 3.7\n"
|
||||
|
||||
msgid "fish-section-tier1-from-rust"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"\n"
|
||||
" PID Command\n"
|
||||
@@ -56,6 +49,7 @@ msgstr ""
|
||||
" PID 命令\n"
|
||||
|
||||
#, c-format
|
||||
# fish-section-tier1-from-rust
|
||||
msgid " (%ls)\n"
|
||||
msgstr " (%ls)\n"
|
||||
|
||||
@@ -1923,9 +1917,7 @@ msgstr "无限制\n"
|
||||
msgid "|& is not valid. In fish, use &| to pipe both stdout and stderr."
|
||||
msgstr "|& 无效。在 fish 中,用 &| 来同时管道链接 stdout 和 stderr。"
|
||||
|
||||
msgid "fish-section-tier1-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-explicitly-added
|
||||
msgid "%ls: %ls: expected %d arguments; got %d\\n"
|
||||
msgstr "%ls: %ls: 期望 %d 个参数;收到 %d 个\\n"
|
||||
|
||||
@@ -2148,9 +2140,7 @@ msgstr "或文件为空"
|
||||
msgid "python executable not found"
|
||||
msgstr "找不到 python 可执行文件"
|
||||
|
||||
msgid "fish-section-tier1-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier1-from-script-implicitly-added
|
||||
msgid "# comments"
|
||||
msgstr "# 注释"
|
||||
|
||||
@@ -3676,7 +3666,7 @@ msgid "What characters are allowed in names"
|
||||
msgstr "名称中允许什么字符"
|
||||
|
||||
msgid "What set -x does"
|
||||
msgstr "`set -x` 做什么"
|
||||
msgstr "设置 -x 做什么"
|
||||
|
||||
msgid "Where to direct debug output to"
|
||||
msgstr "将调试输出导向何处"
|
||||
@@ -3852,12 +3842,7 @@ msgstr "{a,b} 大括号展开"
|
||||
msgid "~ expansion"
|
||||
msgstr "~ 展开"
|
||||
|
||||
msgid "fish-section-tier3-from-script-explicitly-added"
|
||||
msgstr ""
|
||||
|
||||
msgid "fish-section-tier3-from-script-implicitly-added"
|
||||
msgstr ""
|
||||
|
||||
# fish-section-tier3-from-script-implicitly-added
|
||||
msgid " "
|
||||
msgstr " "
|
||||
|
||||
@@ -40063,7 +40048,7 @@ msgid "Operate quietly and do not report progress"
|
||||
msgstr "安静操作,不报告进度"
|
||||
|
||||
msgid "Operate recursively"
|
||||
msgstr "递归操作"
|
||||
msgstr "递归操"
|
||||
|
||||
msgid "Operate recursively on datasets"
|
||||
msgstr "在数据集上递归操作"
|
||||
|
||||
@@ -87,7 +87,7 @@ function fish_config --description "Launch fish's web based configuration"
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l prompt_dir $__fish_data_dir/tools/web_config/sample_prompts
|
||||
set -l prompt_dir $__fish_data_dir/sample_prompts $__fish_data_dir/tools/web_config/sample_prompts
|
||||
switch $cmd
|
||||
case show
|
||||
set -l fish (status fish-path)
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
#RUN: %fish %s
|
||||
|
||||
# This still demos the current theme.
|
||||
fish_config theme show non-existent-theme
|
||||
fish_config theme show non-existant-theme
|
||||
# CHECK: {{\x1b\[m}}{{\x1b\[4m}}Current{{\x1b\[m}}
|
||||
# CHECK: /bright/vixens{{\x1b\[m}} jump{{\x1b\[m}} |{{\x1b\[m}} "fowl"{{\x1b\[m}} > quack{{\x1b\[m}} &{{\x1b\[m}} # This is a comment
|
||||
# CHECK: {{\x1b\[m}}echo{{\x1b\[m}} 'Errors are the portal to discovery
|
||||
# CHECK: {{\x1b\[m}}Th{{\x1b\[m}}is an autosuggestion
|
||||
|
||||
fish_config prompt show non-existent-prompt
|
||||
fish_config prompt show non-existant-prompt
|
||||
|
||||
fish_config prompt show default
|
||||
# CHECK: {{\x1b\[4m}}default{{\x1b\[m}}
|
||||
|
||||
Reference in New Issue
Block a user