This commit is contained in:
crschnick
2025-04-23 13:20:38 +00:00
parent 9cea67964f
commit 12a5f4f10e
198 changed files with 86 additions and 1878 deletions

View File

@@ -4,7 +4,6 @@ import io.xpipe.app.browser.file.BrowserEntry;
import io.xpipe.app.browser.file.BrowserFileSystemTabModel;
import io.xpipe.app.storage.DataStoreEntryRef;
import io.xpipe.app.util.BooleanScope;
import io.xpipe.app.util.DerivedObservableList;
import io.xpipe.app.util.FileReference;
import io.xpipe.app.util.ThreadHelper;
import io.xpipe.core.store.FilePath;

View File

@@ -16,7 +16,6 @@ import com.fasterxml.jackson.databind.node.ObjectNode;
import lombok.SneakyThrows;
import lombok.Value;
import java.util.ArrayList;
import java.util.List;
@Value

View File

@@ -114,9 +114,7 @@ public class BrowserHistoryTabComp extends SimpleComp {
}
private Comp<?> createEmptyDisplay() {
var docs = new IntroComp(
"browserWelcomeDocs",
new LabelGraphic.IconGraphic("mdi2b-book-open-variant"));
var docs = new IntroComp("browserWelcomeDocs", new LabelGraphic.IconGraphic("mdi2b-book-open-variant"));
docs.setButtonAction(() -> {
DocumentationLink.GETTING_STARTED.open();
});

View File

@@ -5,7 +5,6 @@ import io.xpipe.app.comp.CompStructure;
import javafx.beans.property.SimpleDoubleProperty;
import javafx.beans.value.ChangeListener;
import javafx.collections.ObservableList;
import javafx.scene.control.SplitPane;
import javafx.scene.layout.Region;

View File

@@ -236,7 +236,8 @@ public class StoreCreationModel {
// Start session for later
if (s instanceof ShellStore ss) {
var sc = ss.getOrStartSession();
var unsupported = !sc.getShellDialect().getDumbMode().supportsAnyPossibleInteraction() || sc.getTtyState() != ShellTtyState.NONE;
var unsupported = !sc.getShellDialect().getDumbMode().supportsAnyPossibleInteraction()
|| sc.getTtyState() != ShellTtyState.NONE;
if (unsupported) {
ss.stopSessionIfNeeded();
}

View File

@@ -64,7 +64,9 @@ public class StoreEntryBatchSelectComp extends SimpleComp {
}
private void externalUpdate(CheckBox checkBox) {
var isSelected = section.getWrapper() == null ? checkBox.isSelected() : StoreViewState.get().isBatchModeSelected(section.getWrapper());
var isSelected = section.getWrapper() == null
? checkBox.isSelected()
: StoreViewState.get().isBatchModeSelected(section.getWrapper());
checkBox.setSelected(isSelected);
if (section.getShownChildren().getList().size() == 0) {
checkBox.setIndeterminate(false);

View File

@@ -8,12 +8,11 @@ import io.xpipe.app.prefs.AppearanceCategory;
import io.xpipe.app.prefs.EditorCategory;
import io.xpipe.app.prefs.TerminalCategory;
import io.xpipe.app.util.OptionsBuilder;
import javafx.geometry.Insets;
import javafx.scene.layout.Region;
public class AppConfigurationDialog {
public static void showIfNeeded() {
if (!AppProperties.get().isInitialLaunch()) {
return;

View File

@@ -166,8 +166,7 @@ public enum AppDistributionType implements Translatable {
}
if (OsType.getLocal().equals(OsType.WINDOWS) && !AppProperties.get().isStaging()) {
var out = LocalExec.readStdoutIfPossible(
"choco", "list", "xpipe");
var out = LocalExec.readStdoutIfPossible("choco", "list", "xpipe");
if (out.isPresent()) {
if (out.get().contains("xpipe")) {
return CHOCO;

View File

@@ -138,13 +138,13 @@ public class AppLayoutModel {
null,
() -> Hyperlinks.open(Hyperlinks.DISCORD),
null)));
// new Entry(
// AppI18n.observable("api"),
// new LabelGraphic.IconGraphic("mdi2c-code-json"),
// null,
// () -> Hyperlinks.open(
// "http://localhost:" + AppBeaconServer.get().getPort()),
// null),);
// new Entry(
// AppI18n.observable("api"),
// new LabelGraphic.IconGraphic("mdi2c-code-json"),
// null,
// () -> Hyperlinks.open(
// "http://localhost:" + AppBeaconServer.get().getPort()),
// null),);
if (AppDistributionType.get() != AppDistributionType.WEBTOP) {
l.add(new Entry(
AppI18n.observable("webtop"),

View File

@@ -3,7 +3,6 @@ package io.xpipe.app.core;
import io.xpipe.app.core.mode.OperationMode;
import io.xpipe.app.issue.TrackEvent;
import io.xpipe.app.util.PlatformState;
import io.xpipe.app.util.PlatformThread;
import io.xpipe.app.util.ThreadHelper;
import com.sun.jna.*;

View File

@@ -16,7 +16,6 @@ import io.xpipe.app.util.PlatformState;
import io.xpipe.app.util.PlatformThread;
import io.xpipe.core.process.ShellScript;
import javafx.application.Platform;
import javafx.beans.property.*;
import javafx.beans.value.ObservableBooleanValue;
import javafx.beans.value.ObservableDoubleValue;
@@ -583,7 +582,9 @@ public class AppPrefs {
}
// Migrate legacy password manager
if (passwordManagerCommand.get() != null && !passwordManagerCommand.get().isBlank() && passwordManager.getValue() == null) {
if (passwordManagerCommand.get() != null
&& !passwordManagerCommand.get().isBlank()
&& passwordManager.getValue() == null) {
passwordManager.setValue(PasswordManagerCommand.builder()
.script(new ShellScript(passwordManagerCommand.get()))
.build());

View File

@@ -45,9 +45,11 @@ public class AppearanceCategory extends AppPrefsCategory {
.pref(prefs.performanceMode)
.addToggle(prefs.performanceMode)
.pref(prefs.uiScale)
.addComp(new IntFieldComp(prefs.uiScale).maxWidth(100).apply(struc -> {
struc.get().setPromptText("100");
}), prefs.uiScale)
.addComp(
new IntFieldComp(prefs.uiScale).maxWidth(100).apply(struc -> {
struc.get().setPromptText("100");
}),
prefs.uiScale)
.hide(new SimpleBooleanProperty(OsType.getLocal() == OsType.MACOS))
.pref(prefs.useSystemFont)
.addToggle(prefs.useSystemFont)
@@ -101,9 +103,7 @@ public class AppearanceCategory extends AppPrefsCategory {
});
});
c.minWidth(600 / 2.0);
return new OptionsBuilder()
.pref(prefs.theme)
.addComp(c, prefs.theme);
return new OptionsBuilder().pref(prefs.theme).addComp(c, prefs.theme);
}
public static OptionsBuilder languageChoice() {
@@ -118,8 +118,6 @@ public class AppearanceCategory extends AppPrefsCategory {
struc.get().setAlignment(Pos.CENTER_LEFT);
struc.get().setSpacing(10);
});
return new OptionsBuilder()
.pref(prefs.language)
.addComp(h, prefs.language);
return new OptionsBuilder().pref(prefs.language).addComp(h, prefs.language);
}
}

View File

@@ -69,7 +69,8 @@ public class DeveloperCategory extends AppPrefsCategory {
.addToggle(prefs.developerPrintInitFiles);
if (AppProperties.get().isDevelopmentEnvironment()) {
sub.nameAndDescription("developerForceSshTty").addToggle(prefs.developerForceSshTty);
sub.nameAndDescription("developerDisableSshTunnelGateways").addToggle(prefs.developerDisableSshTunnelGateways);
sub.nameAndDescription("developerDisableSshTunnelGateways")
.addToggle(prefs.developerDisableSshTunnelGateways);
}
sub.nameAndDescription("shellCommandTest").addComp(runLocalCommand);
return new OptionsBuilder().addTitle("developer").sub(sub).buildComp();

View File

@@ -13,8 +13,6 @@ import javafx.geometry.Pos;
import org.kordamp.ikonli.javafx.FontIcon;
import java.util.List;
public class EditorCategory extends AppPrefsCategory {
@Override
@@ -46,7 +44,8 @@ public class EditorCategory extends AppPrefsCategory {
var builder = new OptionsBuilder()
.nameAndDescription("editorProgram")
.addComp(ChoiceComp.ofTranslatable(
prefs.externalEditor, PrefsChoiceValue.getSupported(ExternalEditorType.class), false).prefWidth(300))
prefs.externalEditor, PrefsChoiceValue.getSupported(ExternalEditorType.class), false)
.prefWidth(300))
.nameAndDescription("customEditorCommand")
.addComp(new TextFieldComp(prefs.customEditorCommand, true)
.apply(struc -> struc.get().setPromptText("myeditor $FILE")))

View File

@@ -62,12 +62,11 @@ public class TerminalCategory extends AppPrefsCategory {
.sub(terminalProxy())
.sub(terminalMultiplexer())
// .sub(terminalInitScript())
.sub(new OptionsBuilder()
.pref(prefs.clearTerminalOnInit)
.addToggle(prefs.clearTerminalOnInit)
// .pref(prefs.terminalPromptForRestart)
// .addToggle(prefs.terminalPromptForRestart)
)
.sub(
new OptionsBuilder().pref(prefs.clearTerminalOnInit).addToggle(prefs.clearTerminalOnInit)
// .pref(prefs.terminalPromptForRestart)
// .addToggle(prefs.terminalPromptForRestart)
)
.buildComp();
}
@@ -138,7 +137,11 @@ public class TerminalCategory extends AppPrefsCategory {
null,
ProcessControlProvider.get()
.createLocalProcessControl(true)
.command(ProcessControlProvider.get().getEffectiveLocalDialect().getEchoCommand("If you can read this, the terminal integration works", false)),
.command(ProcessControlProvider.get()
.getEffectiveLocalDialect()
.getEchoCommand(
"If you can read this, the terminal integration works",
false)),
UUID.randomUUID(),
false);
}
@@ -168,7 +171,10 @@ public class TerminalCategory extends AppPrefsCategory {
.ref()
: DataStorage.get().local().ref());
ref.addListener((observable, oldValue, newValue) -> {
prefs.terminalProxy.setValue(newValue != null && !newValue.get().equals(DataStorage.get().local()) ? newValue.get().getUuid() : null);
prefs.terminalProxy.setValue(
newValue != null && !newValue.get().equals(DataStorage.get().local())
? newValue.get().getUuid()
: null);
});
var proxyChoice = new DelayedInitComp(
Comp.of(() -> {

View File

@@ -1,7 +1,6 @@
package io.xpipe.app.terminal;
import io.xpipe.app.ext.ProcessControlProvider;
import io.xpipe.app.prefs.AppPrefs;
import io.xpipe.core.process.CommandBuilder;
import io.xpipe.core.process.ShellDialects;

View File

@@ -61,7 +61,9 @@ public abstract class ConfigFileTerminalPrompt implements TerminalPrompt {
FilePath configFile = null;
if (configuration != null && !configuration.isBlank()) {
configFile = shellControl.view().writeTextFileDeterministic(getTargetConfigFile(shellControl), configuration);
configFile = shellControl
.view()
.writeTextFileDeterministic(getTargetConfigFile(shellControl), configuration);
}
var s = shellControl

View File

@@ -197,7 +197,8 @@ public class OhMyPoshTerminalPrompt extends ConfigFileTerminalPrompt {
} else {
var configArg = config != null ? " --config \"" + config + "\"" : "";
if (ShellDialects.isPowershell(shellControl)) {
lines.add("& ([ScriptBlock]::Create((oh-my-posh init $(oh-my-posh get shell) --print" + configArg + ") -join \"`n\"))");
lines.add("& ([ScriptBlock]::Create((oh-my-posh init $(oh-my-posh get shell) --print" + configArg
+ ") -join \"`n\"))");
} else if (dialect == ShellDialects.FISH) {
lines.add("oh-my-posh init fish" + configArg + " | source");
} else {

View File

@@ -1,7 +1,6 @@
package io.xpipe.app.terminal;
import io.xpipe.app.ext.ProcessControlProvider;
import io.xpipe.app.prefs.AppPrefs;
import io.xpipe.core.process.CommandBuilder;
import io.xpipe.core.process.ShellDialects;

View File

@@ -76,7 +76,8 @@ public class TerminalLaunchConfiguration {
.replaceAll(" ", "_"));
try (var sc = LocalShell.getShell().start()) {
if (OsType.getLocal() == OsType.WINDOWS) {
var launcherScript = ShellDialects.POWERSHELL.terminalLauncherScript(request, adjustedTitle, promptRestart);
var launcherScript =
ShellDialects.POWERSHELL.terminalLauncherScript(request, adjustedTitle, promptRestart);
var content =
"""
echo 'Transcript started, output file is "sessions\\%s"'

View File

@@ -189,10 +189,14 @@ public class TerminalLauncher {
return;
}
var changedDialect = config.getScriptDialect() != ProcessControlProvider.get().getEffectiveLocalDialect();
var changedDialect =
config.getScriptDialect() != ProcessControlProvider.get().getEffectiveLocalDialect();
config = config.withScript(
ProcessControlProvider.get().getEffectiveLocalDialect(),
getTerminalRegisterCommand(request) + "\n" + (changedDialect ? config.getDialectLaunchCommand().buildSimple() : config.getScriptContent()));
getTerminalRegisterCommand(request) + "\n"
+ (changedDialect
? config.getDialectLaunchCommand().buildSimple()
: config.getScriptContent()));
launch(type, config, latch);
}
@@ -316,8 +320,11 @@ public class TerminalLauncher {
return Optional.empty();
}
var changedDialect = launchConfiguration.getScriptDialect() != ProcessControlProvider.get().getEffectiveLocalDialect();
var openCommand = changedDialect ? launchConfiguration.getDialectLaunchCommand().buildSimple() : launchConfiguration.getScriptContent();
var changedDialect = launchConfiguration.getScriptDialect()
!= ProcessControlProvider.get().getEffectiveLocalDialect();
var openCommand = changedDialect
? launchConfiguration.getDialectLaunchCommand().buildSimple()
: launchConfiguration.getScriptContent();
var launchCommand = proxyControl
.get()
.prepareIntermediateTerminalOpen(

View File

@@ -2,13 +2,9 @@ package io.xpipe.app.terminal;
import io.xpipe.app.core.AppCache;
import io.xpipe.app.core.AppProperties;
import io.xpipe.app.ext.ProcessControlProvider;
import io.xpipe.app.issue.ErrorEvent;
import io.xpipe.app.prefs.AppPrefs;
import io.xpipe.app.util.LocalShell;
import io.xpipe.app.util.ScriptHelper;
import io.xpipe.core.process.CommandBuilder;
import io.xpipe.core.process.ShellDialects;
import io.xpipe.core.store.FileNames;
import io.xpipe.core.util.JacksonMapper;
import io.xpipe.core.util.XPipeInstallation;

View File

@@ -186,13 +186,15 @@ public class DerivedObservableList<T> {
synchronized (list) {
var listSet = new HashSet<>(list);
cache.keySet().removeIf(t -> !listSet.contains(t));
toApply = listStream().map(v -> {
if (!cache.containsKey(v)) {
cache.put(v, map.apply(v));
}
toApply = listStream()
.map(v -> {
if (!cache.containsKey(v)) {
cache.put(v, map.apply(v));
}
return cache.get(v);
}).toList();
return cache.get(v);
})
.toList();
}
l1.setContent(toApply);
};
@@ -225,7 +227,9 @@ public class DerivedObservableList<T> {
Runnable runnable = () -> {
List<T> toApply;
synchronized (list) {
toApply = predicate.getValue() != null ? listStream().filter(predicate.getValue()).toList() : list;
toApply = predicate.getValue() != null
? listStream().filter(predicate.getValue()).toList()
: list;
}
d.setContent(toApply);
};

View File

@@ -10,7 +10,6 @@ import io.xpipe.app.issue.ErrorEvent;
import io.xpipe.app.storage.DataStorage;
import io.xpipe.app.storage.DataStoreEntryRef;
import io.xpipe.core.process.ShellControl;
import javafx.beans.property.*;
import javafx.collections.FXCollections;
import javafx.collections.ListChangeListener;

View File

@@ -11,9 +11,6 @@ import javafx.beans.property.*;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.scene.layout.Region;
import javafx.scene.layout.VBox;
import static javafx.scene.layout.Priority.ALWAYS;
class ScanSingleDialogComp extends ModalOverlayContentComp {

View File

@@ -139,7 +139,8 @@ public interface SecretRetrievalStrategy {
public SecretQueryResult query(String prompt) {
var pm = AppPrefs.get().passwordManager().getValue();
if (pm == null) {
ErrorEvent.fromMessage("A password manager was requested but no password manager has been set in the settings menu")
ErrorEvent.fromMessage(
"A password manager was requested but no password manager has been set in the settings menu")
.expected()
.handle();
return new SecretQueryResult(null, SecretQueryState.RETRIEVAL_FAILURE);

View File

@@ -1,8 +1,5 @@
package io.xpipe.core.store;
import java.util.ArrayList;
import java.util.concurrent.atomic.AtomicInteger;
public interface NetworkTunnelStore extends DataStore {
DataStore getNetworkParent();

View File

@@ -265,10 +265,11 @@ public interface SshIdentityStrategy {
}
if (resolved.endsWith(".ppk")) {
var ex = new IllegalArgumentException("Identity file " +
resolved +
" is in non-standard PuTTY Private Key format (.ppk), which is not supported by OpenSSH. Please export/convert it to a standard format like .pem via PuTTY");
ErrorEvent.preconfigure(ErrorEvent.fromThrowable(ex).expected().link("https://www.puttygen.com/convert-pem-to-ppk"));
var ex = new IllegalArgumentException(
"Identity file " + resolved
+ " is in non-standard PuTTY Private Key format (.ppk), which is not supported by OpenSSH. Please export/convert it to a standard format like .pem via PuTTY");
ErrorEvent.preconfigure(
ErrorEvent.fromThrowable(ex).expected().link("https://www.puttygen.com/convert-pem-to-ppk"));
throw ex;
}

View File

@@ -72,11 +72,8 @@ public class IncusContainerStore
@Override
public ShellControl control(ShellControl parent) throws Exception {
refreshContainerState(getInstall()
.getStore()
.getHost()
.getStore()
.getOrStartSession());
refreshContainerState(
getInstall().getStore().getHost().getStore().getOrStartSession());
var user = identity != null ? identity.unwrap().getUsername() : null;
var sc = new IncusCommandView(parent).exec(containerName, user, () -> {

View File

@@ -23,7 +23,6 @@ public class IncusInstallStoreProvider implements DataStoreProvider {
return DocumentationLink.LXC;
}
@Override
public DataStoreUsageCategory getUsageCategory() {
return DataStoreUsageCategory.GROUP;

View File

@@ -75,11 +75,7 @@ public class LxdContainerStore
@Override
public ShellControl control(ShellControl parent) throws Exception {
refreshContainerState(getCmd()
.getStore()
.getHost()
.getStore()
.getOrStartSession());
refreshContainerState(getCmd().getStore().getHost().getStore().getOrStartSession());
var user = identity != null ? identity.unwrap().getUsername() : null;
var sc = new LxdCommandView(parent).exec(containerName, user, () -> {

View File

@@ -77,7 +77,7 @@ public class PodmanCommandView extends CommandViewBase {
public String queryState(String container) throws Exception {
return build(commandBuilder -> commandBuilder.add(
"ls", "-a", "-f", "name=\"^" + container + "$\"", "--format=\"{{.Status}}\""))
"ls", "-a", "-f", "name=\"^" + container + "$\"", "--format=\"{{.Status}}\""))
.readStdoutOrThrow();
}

View File

@@ -136,11 +136,7 @@ public class PodmanContainerStore
@Override
public ShellControl control(ShellControl parent) throws Exception {
refreshContainerState(getCmd()
.getStore()
.getHost()
.getStore()
.getOrStartSession());
refreshContainerState(getCmd().getStore().getHost().getStore().getOrStartSession());
var pc = new PodmanCommandView(parent).container().exec(containerName);
pc.withSourceStore(PodmanContainerStore.this);
pc.withShellStateInit(PodmanContainerStore.this);
@@ -167,7 +163,8 @@ public class PodmanContainerStore
var view = new PodmanCommandView(sc).container();
var displayState = view.queryState(containerName);
var running = displayState.startsWith("Up");
var newState = state.toBuilder().containerState(displayState).running(running).build();
var newState =
state.toBuilder().containerState(displayState).running(running).build();
setState(newState);
}
}

View File

@@ -1,60 +0,0 @@
# Udførelsestyper
Du kan bruge et script i flere forskellige scenarier.
Når du aktiverer et script via dets aktiveringsknap, dikterer udførelsestyperne, hvad XPipe vil gøre med scriptet.
## Init-script-type
Når et script er angivet som init-script, kan det vælges i shell-miljøer til at blive kørt ved init.
Hvis et script er aktiveret, vil det desuden automatisk blive kørt ved init i alle kompatible shells.
Hvis du f.eks. opretter et simpelt init-script med
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
du vil have adgang til disse aliasser i alle kompatible shell-sessioner, hvis scriptet er aktiveret.
## Kørbar script-type
Et kørbart shell-script er beregnet til at blive kaldt for en bestemt forbindelse fra forbindelseshubben.
Når dette script er aktiveret, vil scriptet være tilgængeligt for kald fra scripts-knappen for en forbindelse med en kompatibel shell-dialekt.
Hvis du f.eks. opretter et simpelt `sh`-dialekt-shellscript med navnet `ps` for at vise den aktuelle procesliste med
```
ps -A
```
kan du kalde scriptet på enhver kompatibel forbindelse i menuen scripts.
## Fil script type
Endelig kan du også køre brugerdefinerede scripts med filinput fra filbrowserens grænseflade.
Når et filscript er aktiveret, vises det i filbrowseren, så det kan køres med filinput.
Hvis du f.eks. opretter et simpelt filscript med
```
diff "$1" "$2"
```
kan du køre scriptet på udvalgte filer, hvis scriptet er aktiveret.
I dette eksempel vil scriptet kun køre, hvis du har valgt præcis to filer.
Ellers vil diff-kommandoen mislykkes.
## Shell-session script type
Et sessionsscript er beregnet til at blive kaldt i en shell-session i din terminal.
Når det er aktiveret, vil scriptet blive kopieret til målsystemet og lagt i PATH i alle kompatible shells.
På den måde kan du kalde scriptet hvor som helst i en terminalsession.
Scriptnavnet skrives med små bogstaver, og mellemrum erstattes med understregninger, så du nemt kan kalde scriptet.
Hvis du for eksempel opretter et simpelt shellscript til `sh`-dialekter ved navn `apti` med
```
sudo apt install "$1"
```
kan du kalde scriptet på ethvert kompatibelt system med `apti.sh <pkg>` i en terminalsession, hvis scriptet er aktiveret.
## Flere typer
Du kan også markere flere felter for udførelsestyper af et script, hvis de skal bruges i flere scenarier.

View File

@@ -1,60 +0,0 @@
# Ausführungsarten
Du kannst ein Skript in vielen verschiedenen Szenarien verwenden.
Wenn du ein Skript über die Schaltfläche "Aktivieren" aktivierst, legen die Ausführungsarten fest, was XPipe mit dem Skript tun soll.
## Init-Skripttyp
Wenn ein Skript als Init-Skript gekennzeichnet ist, kann es in Shell-Umgebungen ausgewählt werden, um bei Init ausgeführt zu werden.
Wenn ein Skript aktiviert ist, wird es außerdem in allen kompatiblen Shells automatisch bei init ausgeführt.
Wenn du zum Beispiel ein einfaches Init-Skript mit
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
hast du in allen kompatiblen Shell-Sitzungen Zugang zu diesen Aliasen, wenn das Skript aktiviert ist.
## Lauffähiger Skripttyp
Ein lauffähiges Shell-Skript ist dafür gedacht, für eine bestimmte Verbindung vom Verbindungs-Hub aus aufgerufen zu werden.
Wenn dieses Skript aktiviert ist, kann das Skript über die Schaltfläche Skripte für eine Verbindung mit einem kompatiblen Shell-Dialekt aufgerufen werden.
Wenn du zum Beispiel ein einfaches Shell-Skript im `sh`-Dialekt mit dem Namen `ps` erstellst, um die aktuelle Prozessliste anzuzeigen mit
```
ps -A
```
kannst du das Skript auf jeder kompatiblen Verbindung im Menü Skripte aufrufen.
## Datei-Skripttyp
Schließlich kannst du auch benutzerdefinierte Skripte mit Dateieingaben über die Dateibrowser-Schnittstelle ausführen.
Wenn ein Dateiskript aktiviert ist, wird es im Dateibrowser angezeigt und kann mit Dateieingaben ausgeführt werden.
Wenn du zum Beispiel ein einfaches Dateiskript erstellst mit
```
diff "$1" "$2"
```
erstellst, kannst du das Skript für ausgewählte Dateien ausführen, wenn das Skript aktiviert ist.
In diesem Beispiel wird das Skript nur dann erfolgreich ausgeführt, wenn du genau zwei Dateien ausgewählt hast.
Andernfalls wird der Befehl diff fehlschlagen.
## Shell-Sitzung Skripttyp
Ein Sitzungsskript ist dafür gedacht, in einer Shell-Sitzung in deinem Terminal aufgerufen zu werden.
Wenn es aktiviert ist, wird das Skript auf das Zielsystem kopiert und in den PATH aller kompatiblen Shells aufgenommen.
So kannst du das Skript von überall in einer Terminalsitzung aufrufen.
Der Skriptname wird kleingeschrieben und Leerzeichen werden durch Unterstriche ersetzt, damit du das Skript leicht aufrufen kannst.
Wenn du zum Beispiel ein einfaches Shell-Skript für `sh`-Dialekte namens `apti` mit
```
sudo apt install "$1"
```
kannst du das Skript auf jedem kompatiblen System mit `apti.sh <pkg>` in einer Terminalsitzung aufrufen, wenn das Skript aktiviert ist.
## Mehrere Typen
Du kannst auch mehrere Kästchen für die Ausführungsarten eines Skripts ankreuzen, wenn sie in mehreren Szenarien verwendet werden sollen.

View File

@@ -1,60 +0,0 @@
# Execution types
You can use a script in multiple different scenarios.
When enabling a script via its enable toggle button, the execution types dictate what XPipe will do with the script.
## Init script type
When a script is designated as init script, it can be selected in shell environments to be run on init.
Furthermore, if a script is enabled, it will automatically be run on init in all compatible shells.
For example, if you create a simple init script with
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
you will have access to these aliases in all compatible shell sessions if the script is enabled.
## Runnable script type
A runnable shell script is intended to be called for a certain connection from the connection hub.
When this script is enabled, the script will be available to call from the scripts button for a connection with a compatible shell dialect.
For example, if you create a simple `sh` dialect shell script named `ps` to show the current process list with
```
ps -A
```
you can call the script on any compatible connection in the scripts menu.
## File script type
Lastly, you can also run custom script with file inputs from the file browser interface.
When a file script is enabled, it will show up in the file browser to be run with file inputs.
For example, if you create a simple file script with
```
diff "$1" "$2"
```
you can run the script on selected files if the script is enabled.
In this example, the script will only run successfully if you have exactly two files selected.
Otherwise, the diff command will fail.
## Shell session script type
A session script is intended to be called in a shell session in your terminal.
When enabled, the script will be copied to the target system and put into the PATH in all compatible shells.
This allows you to call the script from anywhere in a terminal session.
The script name will be lowercased and spaces will be replaced with underscores, allowing you to easily call the script.
For example, if you create a simple shell script for `sh` dialects named `apti` with
```
sudo apt install "$1"
```
you can call the script on any compatible system with `apti.sh <pkg>` in a terminal session if the script is enabled.
## Multiple types
You can also tick multiple boxes for execution types of a script if they should be used in multiple scenarios.

View File

@@ -1,60 +0,0 @@
# Tipos de ejecución
Puedes utilizar un script en múltiples escenarios diferentes.
Al activar un script mediante su botón de activación, los tipos de ejecución dictan lo que XPipe hará con el script.
## Tipo de script de inicio
Cuando un script se designa como script init, se puede seleccionar en entornos shell para que se ejecute en init.
Además, si un script está activado, se ejecutará automáticamente en init en todos los shells compatibles.
Por ejemplo, si creas un script init simple con
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
tendrás acceso a estos alias en todas las sesiones de shell compatibles si el script está activado.
## Tipo de script ejecutable
Un script de shell ejecutable está destinado a ser llamado para una determinada conexión desde el concentrador de conexiones.
Cuando este script está habilitado, el script estará disponible para ser llamado desde el botón de scripts para una conexión con un dialecto shell compatible.
Por ejemplo, si creas un sencillo script de shell de dialecto `sh` llamado `ps` para mostrar la lista de procesos actuales con
```
ps -A
```
puedes llamar al script en cualquier conexión compatible en el menú scripts.
## Archivo tipo script
Por último, también puedes ejecutar scripts personalizados con entradas de archivo desde la interfaz del explorador de archivos.
Cuando se habilita un script de archivo, aparecerá en el explorador de archivos para ser ejecutado con entradas de archivo.
Por ejemplo, si creas un script de archivo simple con
```
diff "$1" "$2"
```
puedes ejecutar el script en los archivos seleccionados si el script está activado.
En este ejemplo, el script sólo se ejecutará correctamente si tienes exactamente dos archivos seleccionados.
De lo contrario, el comando diff fallará.
## Sesión de shell tipo script
Un script de sesión está pensado para ser llamado en una sesión shell en tu terminal.
Cuando está activado, el script se copiará en el sistema de destino y se pondrá en el PATH en todos los shells compatibles.
Esto te permite llamar al script desde cualquier lugar de una sesión de terminal.
El nombre del script se escribirá en minúsculas y los espacios se sustituirán por guiones bajos, lo que te permitirá llamarlo fácilmente.
Por ejemplo, si creas un script de shell sencillo para dialectos `sh` llamado `apti` con
```
sudo apt install "$1"
```
puedes llamar al script en cualquier sistema compatible con `apti.sh <pkg>` en una sesión de terminal si el script está activado.
## Tipos múltiples
También puedes marcar varias casillas para los tipos de ejecución de un script si deben utilizarse en varios escenarios.

View File

@@ -1,60 +0,0 @@
# Types d'exécution
Tu peux utiliser un script dans plusieurs scénarios différents.
Lors de l'activation d'un script via son bouton bascule d'activation, les types d'exécution dictent ce que XPipe fera avec le script.
## Type de script d'initialisation
Lorsqu'un script est désigné comme script init, il peut être sélectionné dans les environnements shell pour être exécuté lors de l'init.
De plus, si un script est activé, il sera automatiquement exécuté lors de l'initialisation dans tous les shells compatibles.
Par exemple, si tu crées un script init simple avec
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
tu auras accès à ces alias dans toutes les sessions shell compatibles si le script est activé.
## Type de script exécutable
Un script shell exécutable est destiné à être appelé pour une certaine connexion à partir du hub de connexion.
Lorsque ce script est activé, il sera possible de l'appeler à partir du bouton scripts pour une connexion avec un dialecte shell compatible.
Par exemple, si tu crées un simple script shell de dialecte `sh` nommé `ps` pour afficher la liste des processus en cours avec
```
ps -A
```
tu peux appeler le script sur n'importe quelle connexion compatible dans le menu des scripts.
## Fichier type de script
Enfin, tu peux aussi exécuter des scripts personnalisés avec des entrées de fichiers à partir de l'interface du navigateur de fichiers.
Lorsqu'un script de fichier est activé, il s'affiche dans le navigateur de fichiers pour être exécuté avec des entrées de fichier.
Par exemple, si tu crées un script de fichier simple avec
```
diff "$1" "$2"
```
tu peux exécuter le script sur les fichiers sélectionnés si le script est activé.
Dans cet exemple, le script ne s'exécutera avec succès que si tu as exactement deux fichiers sélectionnés.
Sinon, la commande diff échouera.
## Session shell type de script
Un script de session est destiné à être appelé dans une session shell dans ton terminal.
Lorsqu'il est activé, le script est copié sur le système cible et placé dans le chemin d'accès (PATH) de tous les shells compatibles.
Cela te permet d'appeler le script depuis n'importe quel endroit d'une session de terminal.
Le nom du script sera en minuscules et les espaces seront remplacés par des traits de soulignement, ce qui te permettra d'appeler facilement le script.
Par exemple, si tu crées un script shell simple pour les dialectes `sh` nommé `apti` avec
```
sudo apt install "$1"
```
tu peux appeler le script sur n'importe quel système compatible avec `apti.sh <pkg>` dans une session de terminal si le script est activé.
## Plusieurs types
Tu peux aussi cocher plusieurs cases pour les types d'exécution d'un script s'ils doivent être utilisés dans plusieurs scénarios.

View File

@@ -1,60 +0,0 @@
# Jenis eksekusi
Anda dapat menggunakan skrip dalam beberapa skenario berbeda.
Saat mengaktifkan skrip melalui tombol sakelar aktifkan, jenis eksekusi menentukan apa yang akan dilakukan XPipe dengan skrip tersebut.
## Jenis skrip inisialisasi
Ketika skrip ditetapkan sebagai skrip init, skrip tersebut dapat dipilih di lingkungan shell untuk dijalankan pada init.
Lebih jauh lagi, jika skrip diaktifkan, skrip tersebut akan secara otomatis dijalankan pada init di semua shell yang kompatibel.
Sebagai contoh, jika Anda membuat skrip init sederhana dengan
```
alias ll = "ls -l"
alias la = "ls -A"
alias l = "ls -CF"
```
anda akan memiliki akses ke alias ini di semua sesi shell yang kompatibel jika skrip diaktifkan.
## Jenis skrip yang dapat dijalankan
Skrip shell yang dapat dijalankan dimaksudkan untuk dipanggil untuk koneksi tertentu dari hub koneksi.
Ketika skrip ini diaktifkan, skrip akan tersedia untuk dipanggil dari tombol skrip untuk koneksi dengan dialek shell yang kompatibel.
Misalnya, jika Anda membuat skrip shell dialek `sh` sederhana bernama `ps` untuk menampilkan daftar proses saat ini dengan
```
ps -A
```
anda dapat memanggil skrip tersebut pada koneksi yang kompatibel di menu skrip.
## Jenis skrip file
Terakhir, Anda juga dapat menjalankan skrip khusus dengan input file dari antarmuka peramban file.
Ketika skrip file diaktifkan, skrip tersebut akan muncul di peramban file untuk dijalankan dengan input file.
Sebagai contoh, jika Anda membuat skrip file sederhana dengan
```
diff "$1" "$2"
```
anda dapat menjalankan skrip pada file yang dipilih jika skrip diaktifkan.
Pada contoh ini, skrip hanya akan berhasil dijalankan jika Anda memiliki dua file yang dipilih.
Jika tidak, perintah diff akan gagal.
jenis skrip sesi shell ## Jenis skrip sesi shell
Skrip sesi dimaksudkan untuk dipanggil pada sesi shell di terminal Anda.
Ketika diaktifkan, skrip akan disalin ke sistem target dan dimasukkan ke dalam PATH pada semua shell yang kompatibel.
Hal ini memungkinkan Anda untuk memanggil skrip dari mana saja dalam sesi terminal.
Nama skrip akan menggunakan huruf kecil dan spasi akan diganti dengan garis bawah, sehingga Anda dapat dengan mudah memanggil skrip tersebut.
Sebagai contoh, jika Anda membuat skrip shell sederhana untuk dialek `sh` bernama `apti` dengan
```
sudo apt install "$1"
```
anda dapat memanggil skrip pada sistem apa pun yang kompatibel dengan `apti.sh <pkg>` dalam sesi terminal jika skrip tersebut diaktifkan.
## Beberapa jenis
Anda juga dapat mencentang beberapa kotak untuk tipe eksekusi skrip jika skrip tersebut harus digunakan dalam beberapa skenario.

View File

@@ -1,60 +0,0 @@
# Tipi di esecuzione
Puoi utilizzare uno script in diversi scenari.
Quando abiliti uno script tramite il pulsante di attivazione, i tipi di esecuzione stabiliscono cosa XPipe farà con lo script.
## Tipo di script iniziale
Quando uno script è designato come script di avvio, può essere selezionato negli ambienti shell per essere eseguito all'avvio.
Inoltre, se uno script è abilitato, verrà eseguito automaticamente all'avvio in tutte le shell compatibili.
Ad esempio, se crei un semplice script di avvio con
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
avrai accesso a questi alias in tutte le sessioni di shell compatibili se lo script è abilitato.
## Tipo di script eseguibile
Uno script di shell eseguibile è destinato a essere richiamato per una determinata connessione dall'hub di connessione.
Quando questo script è abilitato, sarà disponibile per essere richiamato dal pulsante script per una connessione con un dialetto shell compatibile.
Ad esempio, se crei un semplice script di shell in dialetto `sh` chiamato `ps` per mostrare l'elenco dei processi correnti con
```
ps -A
```
puoi richiamare lo script su qualsiasi connessione compatibile nel menu degli script.
## Tipo di file script
Infine, puoi anche eseguire script personalizzati con input da file dall'interfaccia del browser dei file.
Quando un file script è abilitato, viene visualizzato nel browser dei file per essere eseguito con gli input dei file.
Ad esempio, se crei un semplice file script con
```
diff "$1" "$2"
```
puoi eseguire lo script sui file selezionati se lo script è abilitato.
In questo esempio, lo script verrà eseguito correttamente solo se sono stati selezionati esattamente due file.
In caso contrario, il comando diff fallirà.
## Tipo di script della sessione di shell
Uno script di sessione è destinato a essere richiamato in una sessione di shell nel tuo terminale.
Se abilitato, lo script verrà copiato sul sistema di destinazione e inserito nel PATH in tutte le shell compatibili.
Questo ti permette di richiamare lo script da qualsiasi punto di una sessione di terminale.
Il nome dello script sarà minuscolo e gli spazi saranno sostituiti da trattini bassi, consentendoti di richiamare facilmente lo script.
Ad esempio, se crei un semplice script di shell per i dialetti `sh` chiamato `apti` con
```
sudo apt install "$1"
```
puoi richiamare lo script su qualsiasi sistema compatibile con `apti.sh <pkg>` in una sessione di terminale se lo script è abilitato.
## Tipi multipli
Puoi anche spuntare più caselle per i tipi di esecuzione di uno script se devono essere utilizzati in più scenari.

View File

@@ -1,60 +0,0 @@
# 実行タイプ
スクリプトは複数の異なるシナリオで使用できる。
有効化トグルボタンでスクリプトを有効にすると、実行タイプによってXPipeがスクリプトに対して何を行うかが決まる。
## スクリプトの初期タイプ
スクリプトをinitスクリプトとして指定すると、シェル環境でinit時に実行されるスクリプトを選択できる。
さらに、スクリプトを有効にすると、互換性のあるすべてのシェルで、 init時に自動的に実行される。
例えば、単純なinitスクリプトを
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
スクリプトが有効になっていれば、互換性のあるすべてのシェル・セッションでこれらのエイリアスにアクセスできる。
## 実行可能なスクリプトタイプ
実行可能なシェルスクリプトは、接続ハブから特定の接続に対して呼び出される ことを意図している。
このスクリプトが有効になっている場合, 互換性のあるシェル弁を持つ接続に対して, スクリプトボタンからスクリプトを呼び出すことができるようになる.
例えば、単純な `sh` 方言のシェルスクリプトを `ps` という名前で作成し、現在のプロセスリストを表示するために
```
ps -A
```
とすれば、互換性のある接続であれば、スクリプトメニューからそのスクリプトを呼び出すことができる。
## ファイルスクリプトの種類
最後に、カスタムスクリプトをファイルブラウザのインターフェイスからファイル入力で実行することもできる。
ファイルスクリプトが有効になると、ファイルブラウザに表示され、ファイル入力で実行できるようになる。
例えば、単純なファイルスクリプトを
```
diff "$1" "$2"
```
というスクリプトを作成すると、 スクリプトが有効になっていれば、選択されたファイルに対して スクリプトを実行することができる。
この例では、ちょうど2つのファイルが選択されているときだけ、 スクリプトは正常に実行される。
そうでない場合、diffコマンドは失敗する。
## シェルセッションのスクリプトタイプ
セッションスクリプトは、端末のシェルセッションで呼び出すためのものである。
有効にすると、スクリプトはターゲットシステムにコピーされ、互換性の あるすべてのシェルのPATHに入れられる。
これにより、ターミナルセッションのどこからでもスクリプトを呼び出すことができる。
スクリプト名は小文字になり、スペースはアンダースコアに置き換えられるので、簡単にスクリプトを呼び出すことができる。
例えば、`sh`方言用の簡単なシェルスクリプトを`apti`という名前で作成し、それを
```
sudo apt install "$1"
```
スクリプトが有効になっていれば、ターミナルセッションで`apti.sh <pkg>`を使って互換性のあるシステム上でスクリプトを呼び出すことができる。
## 複数のタイプ
スクリプトを複数のシナリオで使用する場合、スクリプトの実行タイプに複数のチェックを入れることもできる。

View File

@@ -1,60 +0,0 @@
# Uitvoeringstypen
Je kunt een script in meerdere verschillende scenario's gebruiken.
Wanneer je een script inschakelt via de inschakelknop, bepalen de uitvoeringstypen wat XPipe met het script zal doen.
## Init script type
Als een script is aangewezen als init-script, kan het in shell-omgevingen worden geselecteerd om bij init te worden uitgevoerd.
Bovendien, als een script is ingeschakeld, zal het automatisch op init worden uitgevoerd in alle compatibele shells.
Als je bijvoorbeeld een eenvoudig init-script maakt met
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
je hebt toegang tot deze aliassen in alle compatibele shell sessies als het script is ingeschakeld.
## Runnable scripttype
Een uitvoerbaar shellscript is bedoeld om te worden aangeroepen voor een bepaalde verbinding vanuit de verbindingshub.
Als dit script is ingeschakeld, is het script beschikbaar om aan te roepen via de scripts knop voor een verbinding met een compatibel shell dialect.
Als je bijvoorbeeld een eenvoudig `sh` dialect shellscript maakt met de naam `ps` om de huidige proceslijst te tonen met
```
ps -A
```
kun je het script op elke compatibele verbinding aanroepen in het menu scripts.
## Type bestandsscript
Tot slot kun je ook aangepaste scripts uitvoeren met bestandsinvoer vanuit de bestandsbrowserinterface.
Als een bestandsscript is ingeschakeld, verschijnt het in de bestandsbrowser om te worden uitgevoerd met bestandsinvoer.
Als je bijvoorbeeld een eenvoudig bestandsscript maakt met
```
diff "$1" "$2"
```
kun je het script uitvoeren op geselecteerde bestanden als het script is ingeschakeld.
In dit voorbeeld zal het script alleen succesvol draaien als je precies twee bestanden hebt geselecteerd.
Anders zal het diff commando mislukken.
## Shell sessie script type
Een sessie script is bedoeld om aangeroepen te worden in een shell sessie in je terminal.
Als het is ingeschakeld, wordt het script gekopieerd naar het doelsysteem en in het PATH van alle compatibele shells gezet.
Hierdoor kun je het script overal vandaan in een terminalsessie aanroepen.
De scriptnaam wordt met kleine letters geschreven en spaties worden vervangen door underscores, zodat je het script gemakkelijk kunt aanroepen.
Als je bijvoorbeeld een eenvoudig shellscript maakt voor `sh` dialecten met de naam `apti` met
```
sudo apt install "$1"
```
kun je het script op elk compatibel systeem aanroepen met `apti.sh <pkg>` in een terminal sessie als het script is ingeschakeld.
## Meerdere types
Je kunt ook meerdere vakjes aanvinken voor uitvoeringstypen van een script als ze in meerdere scenario's moeten worden gebruikt.

View File

@@ -1,60 +0,0 @@
# Typy wykonania
Możesz użyć skryptu w wielu różnych scenariuszach.
Po włączeniu skryptu za pomocą przycisku włączania, typy wykonania dyktują, co XPipe zrobi ze skryptem.
## Typ skryptu początkowego
Gdy skrypt jest oznaczony jako skrypt początkowy, można go wybrać w środowiskach powłoki, aby był uruchamiany podczas inicjowania.
Ponadto, jeśli skrypt jest włączony, będzie automatycznie uruchamiany w init we wszystkich kompatybilnych powłokach.
Na przykład, jeśli utworzysz prosty skrypt init z poleceniem
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
będziesz mieć dostęp do tych aliasów we wszystkich kompatybilnych sesjach powłoki, jeśli skrypt jest włączony.
## Typ skryptu do uruchomienia
Wykonywalny skrypt powłoki jest przeznaczony do wywołania dla określonego połączenia z koncentratora połączeń.
Gdy ten skrypt jest włączony, będzie on dostępny do wywołania z przycisku skryptów dla połączenia z kompatybilnym dialektem powłoki.
Na przykład, jeśli utworzysz prosty skrypt powłoki w dialekcie `sh` o nazwie `ps`, aby wyświetlić bieżącą listę procesów z
```
ps -A
```
możesz wywołać skrypt na dowolnym kompatybilnym połączeniu w menu skryptów.
## Typ skryptu pliku
Wreszcie, możesz także uruchomić niestandardowy skrypt z danymi wejściowymi pliku z interfejsu przeglądarki plików.
Gdy skrypt pliku jest włączony, pojawi się w przeglądarce plików, aby można go było uruchomić z danymi wejściowymi pliku.
Na przykład, jeśli utworzysz prosty skrypt pliku z atrybutem
```
diff "$1" "$2"
```
możesz uruchomić skrypt na wybranych plikach, jeśli skrypt jest włączony.
W tym przykładzie skrypt zostanie pomyślnie uruchomiony tylko wtedy, gdy wybierzesz dokładnie dwa pliki.
W przeciwnym razie polecenie diff nie powiedzie się.
## Typ skryptu sesji powłoki
Skrypt sesji jest przeznaczony do wywołania w sesji powłoki w twoim terminalu.
Po włączeniu, skrypt zostanie skopiowany do systemu docelowego i umieszczony w PATH we wszystkich kompatybilnych powłokach.
Pozwala to na wywołanie skryptu z dowolnego miejsca w sesji terminala.
Nazwa skryptu będzie pisana małymi literami, a spacje zostaną zastąpione podkreśleniami, co pozwoli Ci łatwo wywołać skrypt.
Na przykład, jeśli utworzysz prosty skrypt powłoki dla dialektów `sh` o nazwie `apti` z rozszerzeniem
```
sudo apt install "$1"
```
możesz wywołać skrypt na dowolnym kompatybilnym systemie za pomocą `apti.sh <pkg>` w sesji terminala, jeśli skrypt jest włączony.
## Wiele typów
Możesz także zaznaczyć wiele pól dla typów wykonania skryptu, jeśli mają być one używane w wielu scenariuszach.

View File

@@ -1,60 +0,0 @@
# Tipos de execução
Podes utilizar um script em vários cenários diferentes.
Ao ativar um script através do respetivo botão de alternância, os tipos de execução determinam o que o XPipe fará com o script.
## Tipo de script de inicialização
Quando um script é designado como script init, ele pode ser selecionado em ambientes shell para ser executado no init.
Além disso, se um script é habilitado, ele será automaticamente executado no init em todos os shells compatíveis.
Por exemplo, se criares um script init simples com
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
terás acesso a estes aliases em todas as sessões de shell compatíveis se o script estiver ativado.
## Tipo de script executável
Um script de shell executável destina-se a ser chamado para uma determinada ligação a partir do hub de ligação.
Quando este script está ativado, o script estará disponível para ser chamado a partir do botão de scripts para uma ligação com um dialeto de shell compatível.
Por exemplo, se você criar um script de shell de dialeto `sh` simples chamado `ps` para mostrar a lista de processos atual com
```
ps -A
```
podes chamar o script em qualquer conexão compatível no menu de scripts.
## Tipo de script de arquivo
Por fim, também podes executar um script personalizado com entradas de ficheiro a partir da interface do navegador de ficheiros.
Quando um script de ficheiro está ativado, aparece no navegador de ficheiros para ser executado com entradas de ficheiro.
Por exemplo, se criares um script de ficheiro simples com
```
diff "$1" "$2"
```
podes executar o script em ficheiros seleccionados se o script estiver ativado.
Neste exemplo, o script só será executado com êxito se tiveres exatamente dois arquivos selecionados.
Caso contrário, o comando diff falhará.
## Tipo de script da sessão do shell
Um script de sessão destina-se a ser chamado numa sessão de shell no teu terminal.
Quando ativado, o script será copiado para o sistema alvo e colocado no PATH em todas as shells compatíveis.
Isto permite-te chamar o script a partir de qualquer lugar numa sessão de terminal.
O nome do script será escrito em minúsculas e os espaços serão substituídos por sublinhados, permitindo-te chamar facilmente o script.
Por exemplo, se você criar um script de shell simples para dialetos `sh` chamado `apti` com
```
sudo apt instala "$1"
```
podes chamar o script em qualquer sistema compatível com `apti.sh <pkg>` numa sessão de terminal se o script estiver ativado.
## Múltiplos tipos
Também podes assinalar várias caixas para os tipos de execução de um script se estes tiverem de ser utilizados em vários cenários.

View File

@@ -1,60 +0,0 @@
# Типы исполнения
Ты можешь использовать скрипт в нескольких различных сценариях.
Когда ты включаешь скрипт с помощью кнопки включения, типы выполнения определяют, что XPipe будет делать со скриптом.
## Тип начального сценария
Когда скрипт обозначен как init script, он может быть выбран в shell-окружении для запуска при init.
Кроме того, если скрипт включен, он будет автоматически запускаться при init во всех совместимых оболочках.
Например, если ты создашь простой init-скрипт со значением
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
ты будешь иметь доступ к этим псевдонимам во всех совместимых сессиях оболочки, если скрипт включен.
## Тип запускаемого скрипта
Запускаемый скрипт оболочки предназначен для вызова из хаба соединений для определенного соединения.
Когда этот скрипт включен, он будет доступен для вызова из кнопки scripts для соединения с совместимым диалектом оболочки.
Например, если ты создашь простой shell-скрипт на диалекте `sh` с именем `ps` для отображения списка текущих процессов с
```
ps -A
```
ты сможешь вызвать этот скрипт на любом совместимом соединении в меню скриптов.
## Тип файла скрипта
Наконец, ты также можешь запускать пользовательский скрипт с файловыми входами из интерфейса браузера файлов.
Когда файловый скрипт включен, он будет отображаться в браузере файлов для запуска с файловыми входами.
Например, если ты создашь простой файловый скрипт с
```
diff "$1" "$2"
```
ты сможешь запустить скрипт на выбранных файлах, если он включен.
В этом примере скрипт будет успешно запущен только в том случае, если у тебя выбрано ровно два файла.
В противном случае команда diff завершится неудачей.
## Тип скрипта сеанса оболочки
Сессионный скрипт предназначен для вызова в сеансе оболочки в твоем терминале.
Если его включить, скрипт будет скопирован в целевую систему и помещен в PATH во всех совместимых оболочках.
Это позволит тебе вызывать скрипт из любого места терминальной сессии.
Имя скрипта будет написано в нижнем регистре, а пробелы будут заменены на подчеркивания, что позволит тебе легко вызывать скрипт.
Например, если ты создашь простой shell-скрипт для диалектов `sh` под названием `apti` с
```
sudo apt install "$1"
```
ты сможешь вызвать этот скрипт на любой совместимой системе с помощью `apti.sh <pkg>` в терминальной сессии, если скрипт включен.
## Несколько типов
Ты также можешь поставить несколько галочек напротив типов выполнения скрипта, если он должен использоваться в нескольких сценариях.

View File

@@ -1,60 +0,0 @@
# Exekveringstyper
Du kan använda ett skript i flera olika scenarier.
När du aktiverar ett skript via dess aktiveringsknapp dikterar exekveringstyperna vad XPipe kommer att göra med skriptet.
## Init skript typ
När ett skript betecknas som init-skript kan det väljas i skalmiljöer för att köras vid init.
Om ett skript är aktiverat kommer det dessutom automatiskt att köras på init i alla kompatibla skal.
Om du t.ex. skapar ett enkelt init-skript med
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
du kommer att ha tillgång till dessa alias i alla kompatibla shell-sessioner om skriptet är aktiverat.
## Körbar skripttyp
Ett körbart skalskript är avsett att anropas för en viss anslutning från anslutningshubben.
När det här skriptet är aktiverat kommer skriptet att vara tillgängligt för anrop från skriptknappen för en anslutning med en kompatibel skaldialekt.
Om du t.ex. skapar ett enkelt skalskript med `sh`-dialekt med namnet `ps` för att visa listan över aktuella processer med
```
ps -A
```
kan du anropa skriptet på vilken kompatibel anslutning som helst via skriptmenyn.
## Fil skript typ
Slutligen kan du också köra anpassade skript med filinmatningar från gränssnittet för filbläddraren.
När ett filskript är aktiverat kommer det att visas i filbläddraren för att köras med filinmatningar.
Om du t.ex. skapar ett enkelt filskript med
```
diff "$1" "$2"
```
kan du köra skriptet på valda filer om skriptet är aktiverat.
I det här exemplet kommer skriptet bara att köras framgångsrikt om du har valt exakt två filer.
Annars misslyckas diff-kommandot.
## Shell-session skript typ
Ett sessionsskript är avsett att anropas i en skalsession i din terminal.
När det är aktiverat kommer skriptet att kopieras till målsystemet och läggas till i PATH i alla kompatibla skal.
Detta gör att du kan anropa skriptet från var som helst i en terminalsession.
Skriptnamnet skrivs med små bokstäver och mellanslag ersätts med understreck, så att du enkelt kan anropa skriptet.
Om du till exempel skapar ett enkelt skalskript för `sh`-dialekter med namnet `apti` med
```
sudo apt installera "$1"
```
kan du anropa skriptet på alla kompatibla system med `apti.sh <pkg>` i en terminalsession om skriptet är aktiverat.
## Flera typer
Du kan också kryssa i flera rutor för exekveringstyper för ett skript om de ska användas i flera scenarier.

View File

@@ -1,60 +0,0 @@
# Yürütme türleri
Bir komut dosyasını birden fazla farklı senaryoda kullanabilirsiniz.
Bir komut dosyasını etkinleştirme geçiş düğmesi aracılığıyla etkinleştirirken, yürütme türleri XPipe'ın komut dosyasıyla ne yapacağını belirler.
## Başlangıç komut dosyası türü
Bir komut dosyası init komut dosyası olarak belirlendiğinde, init sırasında çalıştırılmak üzere kabuk ortamlarında seçilebilir.
Ayrıca, bir betik etkinleştirilirse, tüm uyumlu kabuklarda otomatik olarak init'te çalıştırılacaktır.
Örneğin, basit bir init betiği oluşturursanız
```
alias ll="ls -l"
alias la="ls -A"
alias l="ls -CF"
```
betik etkinleştirilmişse, tüm uyumlu kabuk oturumlarında bu takma adlara erişebileceksiniz.
## Çalıştırılabilir komut dosyası türü
Çalıştırılabilir bir kabuk betiği, bağlantı hub'ından belirli bir bağlantı için çağrılmak üzere tasarlanmıştır.
Bu komut dosyası etkinleştirildiğinde, komut dosyası, uyumlu bir kabuk lehçesine sahip bir bağlantı için komut dosyaları düğmesinden çağrılabilecektir.
Örneğin, geçerli işlem listesini göstermek için `ps` adında basit bir `sh` dialect kabuk betiği oluşturursanız
```
ps -A
```
komut dosyasını komut dosyaları menüsündeki herhangi bir uyumlu bağlantıda çağırabilirsiniz.
## Dosya komut dosyası türü
Son olarak, dosya tarayıcı arayüzünden dosya girdileriyle özel komut dosyası da çalıştırabilirsiniz.
Bir dosya komut dosyası etkinleştirildiğinde, dosya girdileriyle çalıştırılmak üzere dosya tarayıcısında görünecektir.
Örneğin, aşağıdakileri içeren basit bir dosya komut dosyası oluşturursanız
```
diff "$1" "$2"
```
komut dosyası etkinleştirilmişse komut dosyasını seçili dosyalar üzerinde çalıştırabilirsiniz.
Bu örnekte, komut dosyası yalnızca tam olarak iki dosya seçiliyse başarıyla çalışacaktır.
Aksi takdirde, diff komutu başarısız olacaktır.
## Kabuk oturumu komut dosyası türü
Bir oturum betiği, terminalinizdeki bir kabuk oturumunda çağrılmak üzere tasarlanmıştır.
Etkinleştirildiğinde, betik hedef sisteme kopyalanır ve tüm uyumlu kabuklarda PATH'e yerleştirilir.
Bu, betiği bir terminal oturumunun herhangi bir yerinden çağırmanıza olanak tanır.
Betik adı küçük harflerle yazılır ve boşluklar alt çizgilerle değiştirilir, böylece betiği kolayca çağırabilirsiniz.
Örneğin, `sh` lehçeleri için `apti` adında basit bir kabuk betiği oluşturursanız
```
sudo apt install "$1"
```
betik etkinleştirilmişse, betiği herhangi bir uyumlu sistemde terminal oturumunda `apti.sh <pkg>` ile çağırabilirsiniz.
## Çoklu tipler
Birden fazla senaryoda kullanılmaları gerekiyorsa, bir komut dosyasının yürütme türleri için birden fazla kutuyu da işaretleyebilirsiniz.

View File

@@ -1,60 +0,0 @@
# 执行类型
您可以在多种不同情况下使用脚本。
通过启用切换按钮启用脚本时,执行类型决定了 XPipe 将如何处理脚本。
## 初始脚本类型
当脚本被指定为初始脚本时,可在 shell 环境中选择该脚本,以便在启动时运行。
此外,如果脚本被启用,它将在所有兼容的 shell 中自动在 init 时运行。
例如,如果创建一个简单的初始化脚本,使用
```
别名 ll="ls -l"
alias la="ls -A"
别名 l="ls -CF"
```
如果脚本已启用,您就可以在所有兼容的 shell 会话中访问这些别名。
## 可运行脚本类型
可运行 shell 脚本用于从连接中心调用特定连接。
启用该脚本后,该脚本可通过脚本按钮调用,用于兼容 shell 方言的连接。
例如,如果您创建了一个名为 `ps` 的简单 `sh` 方言 shell 脚本,用
```
ps -A
```
就可以在脚本菜单中的任何兼容连接上调用该脚本。
## 文件脚本类型
最后,您还可以通过文件浏览器界面的文件输入运行自定义脚本。
启用文件脚本后,该脚本将显示在文件浏览器中,可通过文件输入运行。
例如,如果你创建了一个简单的文件脚本,其中包含
```
diff "$1" "$2"
```
的简单文件脚本,如果脚本已启用,就可以在选定的文件上运行该脚本。
在这个示例中,只有当你正好选择了两个文件时,脚本才能成功运行。
否则diff 命令将失败。
##hell 会话脚本类型
会话脚本用于在终端的 shell 会话中调用。
启用后,脚本将被复制到目标系统,并放入所有兼容 shell 的 PATH 中。
这样,你就可以在终端会话的任何地方调用脚本。
脚本名称将小写,空格将用下划线代替,以便于调用脚本。
例如,如果您为`sh`方言创建了一个简单的 shell 脚本,名为`apti`,其中包含
```
sudo apt install "$1"
```
如果脚本已启用,你就可以在终端会话中使用 `apti.sh <pkg>` 在任何兼容系统上调用该脚本。
## 多种类型
如果脚本需要在多种情况下使用,还可以勾选脚本执行类型的多个复选框。

View File

@@ -1,3 +0,0 @@
## Adgangskode
Hvis du bruger en mere kompleks SSH-godkendelse på din VM i stedet for et simpelt password, kan du bare tilføje systemet som en normal SSH-forbindelse i XPipe. Hvis det ikke er tilgængeligt udefra, kan du indstille det overordnede PVE-system som en SSH-gateway.

View File

@@ -1,3 +0,0 @@
## Passwort
Wenn du auf deiner VM eine komplexere SSH-Authentifizierung als ein einfaches Passwort verwendest, kannst du das System einfach als normale SSH-Verbindung in XPipe hinzufügen. Wenn es von außen nicht zugänglich ist, kannst du das übergeordnete PVE-System als SSH-Gateway einrichten.

View File

@@ -1,3 +0,0 @@
## Password
If you are using a more complex SSH authentication on your VM rather than a simple password, you can just add the system as a normal SSH connection in XPipe. If it is not accessible from the outside, you can set the parent PVE system as an SSH gateway.

View File

@@ -1,3 +0,0 @@
## Contraseña
Si utilizas una autenticación SSH más compleja en tu máquina virtual en lugar de una simple contraseña, puedes añadir el sistema como una conexión SSH normal en XPipe. Si no es accesible desde el exterior, puedes configurar el sistema PVE padre como pasarela SSH.

View File

@@ -1,3 +0,0 @@
## Mot de passe
Si tu utilises une authentification SSH plus complexe sur ta VM plutôt qu'un simple mot de passe, tu peux simplement ajouter le système comme une connexion SSH normale dans XPipe. S'il n'est pas accessible de l'extérieur, tu peux définir le système PVE parent comme une passerelle SSH.

View File

@@ -1,3 +0,0 @@
## Kata sandi
Jika Anda menggunakan autentikasi SSH yang lebih kompleks pada VM Anda daripada kata sandi sederhana, Anda dapat menambahkan sistem sebagai koneksi SSH biasa di XPipe. Jika tidak dapat diakses dari luar, Anda dapat mengatur sistem PVE induk sebagai gateway SSH.

View File

@@ -1,3 +0,0 @@
## Password
Se stai utilizzando un'autenticazione SSH più complessa sulla tua VM piuttosto che una semplice password, puoi aggiungere il sistema come una normale connessione SSH in XPipe. Se non è accessibile dall'esterno, puoi impostare il sistema PVE principale come gateway SSH.

View File

@@ -1,3 +0,0 @@
## パスワード
単純なパスワードではなく、より複雑なSSH認証をVMで使用する場合は、XPipeでシステムを通常のSSH接続として追加すればよい。外部からアクセスできない場合は、親PVEシステムをSSHゲートウェイとして設定できる。

View File

@@ -1,3 +0,0 @@
## Wachtwoord
Als je een complexere SSH-authenticatie gebruikt op je VM in plaats van een eenvoudig wachtwoord, kun je het systeem gewoon toevoegen als een normale SSH-verbinding in XPipe. Als het niet van buitenaf toegankelijk is, kun je het ouder PVE systeem instellen als een SSH gateway.

View File

@@ -1,3 +0,0 @@
## Hasło
Jeśli używasz bardziej złożonego uwierzytelniania SSH na swojej maszynie wirtualnej zamiast prostego hasła, możesz po prostu dodać system jako normalne połączenie SSH w XPipe. Jeśli nie jest on dostępny z zewnątrz, możesz ustawić nadrzędny system PVE jako bramę SSH.

View File

@@ -1,3 +0,0 @@
## Senha
Se estiveres a usar uma autenticação SSH mais complexa na tua VM em vez de uma simples senha, podes simplesmente adicionar o sistema como uma conexão SSH normal no XPipe. Se não é acessível a partir do exterior, podes definir o sistema PVE pai como um gateway SSH.

View File

@@ -1,3 +0,0 @@
## Пароль
Если ты используешь на своей ВМ более сложную SSH-аутентификацию, а не простой пароль, ты можешь просто добавить систему как обычное SSH-соединение в XPipe. Если она недоступна извне, ты можешь установить родительскую PVE-систему в качестве SSH-шлюза.

View File

@@ -1,3 +0,0 @@
## Lösenord
Om du använder en mer komplex SSH-autentisering på din VM snarare än ett enkelt lösenord kan du bara lägga till systemet som en vanlig SSH-anslutning i XPipe. Om det inte är tillgängligt från utsidan kan du ställa in det överordnade PVE-systemet som en SSH-gateway.

View File

@@ -1,3 +0,0 @@
## Şifre
Sanal makinenizde basit bir parola yerine daha karmaşık bir SSH kimlik doğrulaması kullanıyorsanız, sistemi XPipe'a normal bir SSH bağlantısı olarak ekleyebilirsiniz. Dışarıdan erişilemiyorsa, ana PVE sistemini bir SSH ağ geçidi olarak ayarlayabilirsiniz.

View File

@@ -1,3 +0,0 @@
## 密码
如果您在虚拟机上使用的是更复杂的 SSH 验证而非简单的密码,您只需在 XPipe 中将系统添加为普通 SSH 连接即可。如果无法从外部访问,可以将父 PVE 系统设置为 SSH 网关。

View File

@@ -1,5 +0,0 @@
## Brugernavn
Det brugernavn, du skal logge ind med. XPipe vil forsøge at oprette forbindelse via SSH ved hjælp af de angivne legitimationsoplysninger.
Hvis der ikke kører en SSH-server, vil den forsøge at starte den installerede SSH-server. Bemærk, at du kan deaktivere denne adfærd i menuen for sikkerhedsindstillinger.

View File

@@ -1,5 +0,0 @@
## Benutzername
Der Benutzername, mit dem du dich anmeldest. XPipe versucht, sich über SSH mit den angegebenen Anmeldedaten zu verbinden.
Wenn kein SSH-Server läuft, wird versucht, den installierten SSH-Server zu starten. Beachte, dass du dieses Verhalten im Menü Sicherheitseinstellungen deaktivieren kannst.

View File

@@ -1,5 +0,0 @@
## Username
The username to log in as. XPipe will attempt to connect via SSH using the provided credentials.
If no SSH server is running it will attempt to start the installed SSH server. Note that you can disable this behavior in the security settings menu.

View File

@@ -1,5 +0,0 @@
## Nombre de usuario
El nombre de usuario con el que iniciar sesión. XPipe intentará conectarse vía SSH utilizando las credenciales proporcionadas.
Si no hay ningún servidor SSH en ejecución, intentará iniciar el servidor SSH instalado. Ten en cuenta que puedes desactivar este comportamiento en el menú de configuración de seguridad.

View File

@@ -1,5 +0,0 @@
## Nom d'utilisateur
Le nom d'utilisateur sous lequel se connecter. XPipe tentera de se connecter via SSH en utilisant les informations d'identification fournies.
Si aucun serveur SSH n'est en cours d'exécution, il tentera de démarrer le serveur SSH installé. Note que tu peux désactiver ce comportement dans le menu des paramètres de sécurité.

View File

@@ -1,5 +0,0 @@
## Nama pengguna
Nama pengguna untuk masuk sebagai. XPipe akan mencoba menyambung melalui SSH menggunakan kredensial yang diberikan.
Jika tidak ada server SSH yang berjalan, XPipe akan mencoba memulai server SSH yang terinstal. Perhatikan bahwa Anda dapat menonaktifkan perilaku ini di menu pengaturan keamanan.

View File

@@ -1,5 +0,0 @@
## Nome utente
Il nome utente con cui accedere. XPipe tenterà di connettersi via SSH utilizzando le credenziali fornite.
Se non è in esecuzione alcun server SSH, tenterà di avviare il server SSH installato. È possibile disabilitare questo comportamento nel menu delle impostazioni di sicurezza.

View File

@@ -1,5 +0,0 @@
## ユーザー名
ログインするユーザー名。XPipe は与えられた認証情報を使って SSH 接続を試みる。
SSHサーバーが起動していない場合は、インストールされているSSHサーバーを起動しようとする。セキュリティ設定メニューでこの動作を無効にすることができる。

View File

@@ -1,5 +0,0 @@
## Gebruikersnaam
De gebruikersnaam om mee in te loggen. XPipe zal proberen verbinding te maken via SSH met de opgegeven gegevens.
Als er geen SSH-server draait, wordt geprobeerd de geïnstalleerde SSH-server te starten. Merk op dat je dit gedrag kunt uitschakelen in het menu Beveiligingsinstellingen.

View File

@@ -1,5 +0,0 @@
## Nazwa użytkownika
Nazwa użytkownika do zalogowania. XPipe spróbuje połączyć się przez SSH przy użyciu podanych poświadczeń.
Jeśli żaden serwer SSH nie jest uruchomiony, spróbuje uruchomić zainstalowany serwer SSH. Pamiętaj, że możesz wyłączyć to zachowanie w menu ustawień bezpieczeństwa.

View File

@@ -1,5 +0,0 @@
## Nome de utilizador
O nome de utilizador para iniciar sessão. XPipe tentará conectar-se via SSH usando as credenciais fornecidas.
Se nenhum servidor SSH estiver em execução, tenta iniciar o servidor SSH instalado. Nota que podes desativar este comportamento no menu de definições de segurança.

View File

@@ -1,5 +0,0 @@
## Имя пользователя
Имя пользователя, под которым нужно войти в систему. XPipe попытается подключиться по SSH, используя предоставленные учетные данные.
Если SSH-сервер не запущен, он попытается запустить установленный SSH-сервер. Обрати внимание, что ты можешь отключить это поведение в меню настроек безопасности.

View File

@@ -1,5 +0,0 @@
## Användarnamn
Användarnamnet för att logga in som. XPipe kommer att försöka ansluta via SSH med hjälp av de angivna referenser.
Om ingen SSH-server körs kommer den att försöka starta den installerade SSH-servern. Observera att du kan inaktivera detta beteende i menyn Säkerhetsinställningar.

View File

@@ -1,5 +0,0 @@
## Kullanıcı adı
Oturum açılacak kullanıcı adı. XPipe, sağlanan kimlik bilgilerini kullanarak SSH üzerinden bağlanmayı deneyecektir.
Eğer hiçbir SSH sunucusu çalışmıyorsa, kurulu SSH sunucusunu başlatmayı deneyecektir. Bu davranışı güvenlik ayarları menüsünden devre dışı bırakabileceğinizi unutmayın.

View File

@@ -1,5 +0,0 @@
## 用户名
要登录的用户名。XPipe 将尝试使用所提供的凭据通过 SSH 进行连接。
如果没有运行 SSH 服务器,它将尝试启动已安装的 SSH 服务器。请注意,您可以在安全设置菜单中禁用这一行为。

View File

@@ -1,5 +0,0 @@
## Midlertidige beholdere
Dette vil køre en midlertidig container ved hjælp af det angivne image, som automatisk vil blive fjernet, når den stoppes. Containeren bliver ved med at køre, selvom der ikke er angivet nogen kommando i containerbilledet, som vil køre.
Dette kan være nyttigt, hvis du hurtigt vil opsætte et bestemt miljø ved hjælp af et bestemt container-image. Du kan så gå ind i containeren som normalt i XPipe, udføre dine operationer og stoppe containeren, når der ikke længere er brug for den. Den bliver så fjernet automatisk.

View File

@@ -1,5 +0,0 @@
## Temporäre Container
Hiermit wird ein temporärer Container mit dem angegebenen Image gestartet, der automatisch entfernt wird, sobald er gestoppt wird. Der Container läuft auch dann weiter, wenn im Container-Image kein Befehl angegeben ist, der ausgeführt werden soll.
Das kann nützlich sein, wenn du schnell eine bestimmte Umgebung mit einem bestimmten Container-Image einrichten willst. Du kannst den Container dann wie gewohnt in XPipe betreten, deine Operationen durchführen und den Container stoppen, sobald er nicht mehr benötigt wird. Er wird dann automatisch entfernt.

View File

@@ -1,5 +0,0 @@
## Temporary containers
This will run a temporary container using the specified image that will get automatically removed once it is stopped. The container will keep running even if the container image does not have any command specified that will run.
This can be useful if you quickly want to set up a certain environment by using a certain container image. You can then enter the container as normal in XPipe, perform your operations, and stop the container once it's no longer needed. It is then removed automatically.

View File

@@ -1,5 +0,0 @@
## Contenedores temporales
Esto ejecutará un contenedor temporal utilizando la imagen especificada que se eliminará automáticamente cuando se detenga. El contenedor seguirá ejecutándose aunque la imagen del contenedor no tenga ningún comando especificado que se vaya a ejecutar.
Esto puede ser útil si quieres configurar rápidamente un determinado entorno utilizando una determinada imagen de contenedor. A continuación, puedes entrar en el contenedor de forma normal en XPipe, realizar tus operaciones y detener el contenedor cuando ya no sea necesario. Entonces se elimina automáticamente.

View File

@@ -1,5 +0,0 @@
## Conteneurs temporaires
Cette commande lance un conteneur temporaire à l'aide de l'image spécifiée, qui sera automatiquement supprimé une fois arrêté. Le conteneur continuera à fonctionner même si l'image du conteneur n'a pas de commande spécifiée qui s'exécutera.
Cela peut être utile si tu veux rapidement mettre en place un certain environnement en utilisant une certaine image de conteneur. Tu peux alors entrer dans le conteneur comme d'habitude dans XPipe, effectuer tes opérations, et arrêter le conteneur une fois qu'il n'est plus nécessaire. Il est alors supprimé automatiquement.

View File

@@ -1,5 +0,0 @@
## Wadah sementara
Ini akan menjalankan kontainer sementara menggunakan citra yang ditentukan yang akan dihapus secara otomatis setelah dihentikan. Kontainer akan tetap berjalan meskipun gambar kontainer tidak memiliki perintah yang ditentukan untuk dijalankan.
Ini dapat berguna jika Anda ingin menyiapkan lingkungan tertentu dengan cepat menggunakan citra kontainer tertentu. Anda kemudian dapat masuk ke dalam kontainer seperti biasa di XPipe, melakukan operasi Anda, dan menghentikan kontainer ketika sudah tidak diperlukan lagi. Kontainer ini kemudian akan dihapus secara otomatis.

View File

@@ -1,5 +0,0 @@
## Contenitori temporanei
Esegue un contenitore temporaneo utilizzando l'immagine specificata che verrà rimosso automaticamente una volta arrestato. Il contenitore continuerà a essere eseguito anche se l'immagine del contenitore non contiene alcun comando da eseguire.
Questo può essere utile se vuoi configurare rapidamente un certo ambiente utilizzando una certa immagine del contenitore. Puoi quindi entrare nel contenitore come di consueto in XPipe, eseguire le tue operazioni e arrestare il contenitore quando non è più necessario. In questo modo verrà rimosso automaticamente.

View File

@@ -1,5 +0,0 @@
## 一時的なコンテナ
指定したイメージを使って一時的なコンテナを実行し、停止すると自動的に削除される。コンテナイメージに実行するコマンドが指定されていなくても、コンテナは実行され続ける。
これは、特定のコンテナ・イメージを使って特定の環境を素早くセットアップしたい場合に便利である。その後、XPipeで通常通りコンテナに入り、操作を実行し、不要になったらコンテナを停止することができる。コンテナは自動的に削除される。

View File

@@ -1,5 +0,0 @@
## Tijdelijke containers
Hiermee wordt een tijdelijke container gestart met de gespecificeerde image die automatisch wordt verwijderd zodra hij wordt gestopt. De container blijft draaien, zelfs als de container image geen commando heeft dat wordt uitgevoerd.
Dit kan handig zijn als je snel een bepaalde omgeving wilt opzetten door een bepaalde container image te gebruiken. Je kunt dan de container zoals normaal in XPipe binnengaan, je bewerkingen uitvoeren en de container stoppen zodra hij niet meer nodig is. Hij wordt dan automatisch verwijderd.

View File

@@ -1,5 +0,0 @@
## Tymczasowe kontenery
Spowoduje to uruchomienie tymczasowego kontenera przy użyciu określonego obrazu, który zostanie automatycznie usunięty po jego zatrzymaniu. Kontener będzie nadal działał, nawet jeśli obraz kontenera nie zawiera żadnego polecenia, które zostanie uruchomione.
Może to być przydatne, jeśli chcesz szybko skonfigurować określone środowisko przy użyciu określonego obrazu kontenera. Następnie możesz wejść do kontenera jak zwykle w XPipe, wykonać operacje i zatrzymać kontener, gdy nie będzie już potrzebny. Zostanie on wtedy automatycznie usunięty.

View File

@@ -1,5 +0,0 @@
## Contentores temporários
Executa um contêiner temporário usando a imagem especificada que será removida automaticamente quando for interrompida. O container continuará rodando mesmo que a imagem do container não tenha nenhum comando especificado que será executado.
Isto pode ser útil se quiseres configurar rapidamente um determinado ambiente utilizando uma determinada imagem de contentor. Podes então entrar no contentor normalmente no XPipe, efetuar as tuas operações e parar o contentor quando já não for necessário. Em seguida, remove-o automaticamente.

View File

@@ -1,5 +0,0 @@
## Временные контейнеры
Эта команда запустит временный контейнер с указанным образом, который будет автоматически удален после его остановки. Контейнер продолжит работать, даже если в образе контейнера не будет указано ни одной команды, которая бы выполнялась.
Это может быть полезно, если ты хочешь быстро настроить определенное окружение, используя определенный образ контейнера. Тогда ты можешь войти в контейнер как обычно в XPipe, выполнить свои операции и остановить контейнер, когда он больше не нужен. Тогда он будет удален автоматически.

View File

@@ -1,5 +0,0 @@
## Tillfälliga behållare
Detta kör en tillfällig behållare med den angivna avbildningen som automatiskt tas bort när den stoppas. Containern fortsätter att köras även om containeravbildningen inte har något angivet kommando som ska köras.
Detta kan vara användbart om du snabbt vill konfigurera en viss miljö genom att använda en viss containeravbildning. Du kan sedan gå in i behållaren som vanligt i XPipe, utföra dina operationer och stoppa behållaren när den inte längre behövs. Den tas då bort automatiskt.

View File

@@ -1,5 +0,0 @@
## Geçici konteynerler
Bu, durdurulduğunda otomatik olarak kaldırılacak olan belirtilen imajı kullanarak geçici bir konteyner çalıştıracaktır. Konteyner imajında çalışacak herhangi bir komut belirtilmemiş olsa bile konteyner çalışmaya devam edecektir.
Bu, belirli bir konteyner imajını kullanarak belirli bir ortamı hızlı bir şekilde kurmak istediğinizde yararlı olabilir. Daha sonra XPipe'da konteynere normal şekilde girebilir, işlemlerinizi gerçekleştirebilir ve artık ihtiyaç duyulmadığında konteyneri durdurabilirsiniz. Daha sonra otomatik olarak kaldırılır.

View File

@@ -1,5 +0,0 @@
## 临时容器
这将使用指定的映像运行一个临时容器,一旦停止,该容器将自动移除。即使容器映像中没有指定要运行的命令,容器也会继续运行。
如果您想使用某个容器映像快速设置某个环境,这将非常有用。然后,您可以像在 XPipe 中一样正常进入容器,执行您的操作,并在不再需要时停止容器。容器会自动移除。

View File

@@ -1,13 +0,0 @@
## Script-kompatibilitet
Shell-typen styrer, hvor dette script kan køres.
Bortset fra et nøjagtigt match, dvs. at køre et `zsh`-script i `zsh`, vil XPipe også inkludere en bredere kompatibilitetskontrol.
### Posix-skaller
Ethvert script, der er erklæret som et `sh`-script, kan køre i ethvert posix-relateret shell-miljø såsom `bash` eller `zsh`.
Hvis du har til hensigt at køre et grundlæggende script på mange forskellige systemer, er det den bedste løsning kun at bruge `sh`-syntaks-scripts.
### PowerShell
Scripts, der er erklæret som normale `powershell`-scripts, kan også køre i `pwsh`-miljøer.

View File

@@ -1,13 +0,0 @@
## Skript-Kompatibilität
Der Shell-Typ bestimmt, wo das Skript ausgeführt werden kann.
Abgesehen von einer exakten Übereinstimmung, d.h. der Ausführung eines `zsh`-Skripts in `zsh`, führt XPipe auch eine breitere Kompatibilitätsprüfung durch.
### Posix-Shells
Jedes Skript, das als `sh`-Skript deklariert ist, kann in jeder Posix-Shell-Umgebung wie `bash` oder `zsh` ausgeführt werden.
Wenn du ein grundlegendes Skript auf vielen verschiedenen Systemen ausführen willst, ist die Verwendung von Skripten mit `sh`-Syntax die beste Lösung dafür.
### PowerShell
Skripte, die als normale `powershell`-Skripte deklariert sind, können auch in `pwsh`-Umgebungen ausgeführt werden.

View File

@@ -1,13 +0,0 @@
## Script compatibility
The shell type controls where this script can be run.
Aside from an exact match, i.e. running a `zsh` script in `zsh`, XPipe will also include wider compatibility checking.
### Posix Shells
Any script declared as a `sh` script is able to run in any posix-related shell environment such as `bash` or `zsh`.
If you intend to run a basic script on many different systems, then using only `sh` syntax scripts is the best solution for that.
### PowerShell
Scripts declared as normal `powershell` scripts are also able to run in `pwsh` environments.

View File

@@ -1,13 +0,0 @@
## Compatibilidad con guiones
El tipo de shell controla dónde se puede ejecutar este script.
Aparte de una coincidencia exacta, es decir, ejecutar un script `zsh` en `zsh`, XPipe también incluirá una comprobación de compatibilidad más amplia.
### Shell Posix
Cualquier script declarado como script `sh` puede ejecutarse en cualquier entorno shell relacionado con posix, como `bash` o `zsh`.
Si pretendes ejecutar un script básico en muchos sistemas distintos, la mejor solución es utilizar sólo scripts de sintaxis `sh`.
### PowerShell
Los scripts declarados como scripts `powershell` normales también pueden ejecutarse en entornos `pwsh`.

View File

@@ -1,13 +0,0 @@
## Compatibilité des scripts
Le type de shell contrôle l'endroit où ce script peut être exécuté.
Outre une correspondance exacte, c'est-à-dire l'exécution d'un script `zsh` dans `zsh`, XPipe inclura également une vérification plus large de la compatibilité.
### Shells Posix
Tout script déclaré comme un script `sh` est capable de s'exécuter dans n'importe quel environnement shell lié à Posix, tel que `bash` ou `zsh`.
Si tu as l'intention d'exécuter un script de base sur de nombreux systèmes différents, utiliser uniquement des scripts de syntaxe `sh` est la meilleure solution pour cela.
### PowerShell
Les scripts déclarés comme des scripts `powershell` normaux sont également capables de s'exécuter dans des environnements `pwsh`.

View File

@@ -1,13 +0,0 @@
## Kompatibilitas skrip
Jenis shell mengontrol di mana skrip ini dapat dijalankan.
Selain pencocokan yang sama persis, misalnya menjalankan skrip `zsh` di `zsh`, XPipe juga akan menyertakan pengecekan kompatibilitas yang lebih luas.
### Kerang Posix
Skrip apapun yang dideklarasikan sebagai skrip `sh` dapat dijalankan di lingkungan shell yang berhubungan dengan posix seperti `bash` atau `zsh`.
Jika Anda berniat untuk menjalankan skrip dasar pada banyak sistem yang berbeda, maka hanya menggunakan skrip sintaks `sh` adalah solusi terbaik untuk itu.
### PowerShell
Skrip yang dideklarasikan sebagai skrip `powershell` normal juga dapat dijalankan di lingkungan `pwsh`.

View File

@@ -1,13 +0,0 @@
## Compatibilità con gli script
Il tipo di shell controlla dove questo script può essere eseguito.
Oltre alla corrispondenza esatta, cioè all'esecuzione di uno script `zsh` in `zsh`, XPipe include anche un controllo di compatibilità più ampio.
### Gusci Posix
Qualsiasi script dichiarato come script `sh` è in grado di essere eseguito in qualsiasi ambiente shell posix come `bash` o `zsh`.
Se intendi eseguire uno script di base su molti sistemi diversi, allora utilizzare solo script con sintassi `sh` è la soluzione migliore.
### PowerShell
Gli script dichiarati come normali script `powershell` possono essere eseguiti anche in ambienti `pwsh`.

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