0

私がやろうとしているのは、Geditに新しいウィンドウを開いてから、その新しいウィンドウでGeditを既に開いた状態で新しいタブを開くことです。私が書いているスクリプトは570行と少し大きいので、ここではそれを除いたものです。

File1="test"
File2="test2"
function Gedit() {
    local newwindow

    if [ "$2" == "yes" ]; then
         newwindow="--new-window"
    fi

    gedit $newwindow $1 & # & is Very Important b/c of KVIrc
}
function FunctionA {
    Gedit $a "yes"
    Gedit $b 
}

FunctionA

最後にアンパサンド(&)であることがわかりました。ただし、前述のように、スクリプトを実行するときはKVIrcで実行するため、これは非常に重要です。&を削除すると、KVIrcはGeditが完全に閉じるのを待ちます。-s、、--nameおよび--sm-client-idgeditを使用してみました。私も使ってみcoprocましたが、本当にうまくいきませんでした。どんな助けでも大歓迎です。ありがとうございました。

4

1 に答える 1

0

わかりました、これは私がそれを解決した方法です:

function OpenWithGedit() {
local newwin=$1
shift
local outfile ofile i
local newwindow

#splits $@ into two parts
ofile=${@:1:$(($#/2))}
outfile=${@:$(($#/2+1)):$#}

if [ "$newwin" == "yes" ]; then
    newwindow="--new-window"
fi 

for i in $outfile
do
    SayE "Gedit" $i #echos $i with some format
done
gedit $newwindow $ofile &
}

このコマンドの形式は次のとおりです。

OpenWithGedit "yes" $File1 $File2 $File3 $File1Out $File2Out $File3Out

ここで、必要な数の$Fileを使用できます。

于 2012-07-18T19:26:42.427 に答える