Π‘ΠΊΡΠΈΠΏΡΡ Π½Π° c: Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΈ Ρ ΡΠ΅ΠΌ ΠΈΡ Π΅Π΄ΡΡ β Lua & C++ / Π₯Π°Π±Ρ
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΏΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΡ Π½Π° C++?
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΌΠ½Π΅ ΠΎΠΏΡΡΡ/ΡΠ½ΠΎΠ²Π° ΠΏΠΎΠ³ΡΡΠ·ΠΈΡΡΡΡ Π²Β ΡΡΠ΄Π΅ΡΠ½ΡΠΉ ΠΌΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Linux ΡΠΊΡΠΈΠΏΡΠΎΠ². ΠΒ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅, Π΄Π΅Π»ΠΎ Π½Π΅Β ΠΎΡΠ΅Π½Ρ Ρ ΠΈΡΡΠΎΠ΅, Π½ΠΎΒ ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΠ½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡΡΡ ΡΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π΅Β ΡΠ°ΡΡΠΎ, ΡΠΎΒ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΈΠ·ΡΡΠ°Ρ Π·Π°Π½ΠΎΠ²ΠΎ. ΠΠ½Π°Ρ ΡΠΎΡΠ½ΠΎ, ΡΡΠΎΒ Π·Π°Π²ΡΡΠ° ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π·Π°Π±ΡΠ΄Ρ ΠΈΒ ΡΠ΅ΡΠ΅Π·Β ΠΌΠ΅ΡΡΡ ΠΎΠΏΡΡΡ Π±ΡΠ΄Ρ Π³ΡΠ³Π»ΠΈΡΡ, ΠΊΠ°ΠΊΒ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΎΒ ΠΈΠ»ΠΈΒ ΡΡΠΎ. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π΅ΡΠ΅ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π²Β ΡΠΎΠΌ, ΡΡΠΎΒ Π·Π°ΡΠ°ΡΡΡΡ Π½Π΅Β ΠΏΠΈΡΠ΅ΡΡ ΡΠΊΡΠΈΠΏΡ Π·Π°Π½ΠΎΠ²ΠΎ, Π°Β ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ, ΡΠΆΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΊΠ΅ΠΌ-ΡΠΎ. ΠΒ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅Β bash, Π°Β sh ΠΈΠ»ΠΈΒ Π΅ΡΠ΅ ΡΡΠΎ-ΡΠΎβ¦ Π Π°Π·Π»ΠΈΡΠΈΡ Π²Β ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ Π΅ΡΡΡ, ΡΡΠΎΒ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π²Β sh ΠΏΠΎΒ ΠΈΠ΄Π΅Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΒ Π²Β bash, Π½ΠΎΒ Π½Π΅Β Π²ΡΠ΅Π³Π΄Π° Π½Π°ΠΎΠ±ΠΎΡΠΎΡ. ΠΒ Π΅ΡΠ»ΠΈ ΡΠ°ΠΌΒ dash ΠΈΠ»ΠΈΒ ash? Π―Β Π½Π΅Β Π·Π½Π°Ρβ¦ Π Π°Π·Π»ΠΈΡΠΈΡ Π²Β ΡΡΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΡ ΡΠ·ΡΠΊΠ°Ρ Π²ΡΠ΅ ΠΆΠ΅ Π΅ΡΡΡ, ΠΈΒ ΠΎΠ½ΠΈ ΡΠ±ΠΈΠ²Π°ΡΡ ΡΒ ΡΠΎΠ»ΠΊΠ°. ΠΡ ΠΈΒ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π»ΠΈΡΠ½ΠΎ Π΄Π»ΡΒ ΠΌΠ΅Π½Ρ, Π²ΠΈΡΠ΅Π½ΠΊΠ° Π½Π°Β ΡΠΎΡΡΠ΅, ΠΊΠΎΠ³Π΄Π° ΡΠΊΡΠΈΠΏΡ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΊΠ°ΠΊΠΎΠΉ Π½ΠΈΠ±ΡΠ΄Ρ sed ΠΈΠ»ΠΈΒ awk ΠΈΒ ΡΠ°ΠΌΒ ΡΠ°ΠΊΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π²Β ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, ΡΡΠΎΒ ΡΠΌΠΎΡΡΠΈΡΡ Π½Π°Β Π½ΠΈΡ ΠΈΒ Π΄ΠΈΠ²Ρ Π΄Π°Π΅ΡΡΡΡ. ΠΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎΒ ΡΡΠΎ Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡΒ ΠΊΠ²Π°Π»ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°, Π½ΠΎΒ Π²ΠΎΡ ΡΒ ΠΌΠ΅Π½Ρ Π½Π΅Β Π²ΡΠ΅ Π²Β Π³ΠΎΠ»ΠΎΠ²Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ. ΠΒ Π²ΠΎΡ ΡΠ΅ΠΉΡΠ°Ρ ΠΌΠΎΠ΅ ΡΠ΅ΡΠΏΠ΅Π½ΠΈΠ΅ Π»ΠΎΠΏΠ½ΡΠ»ΠΎ ΠΈΒ ΡΒ ΠΏΠΎΠ΄ΡΠΌΠ°Π», ΡΡΠΎΒ ΠΎΡΠ½ΡΠ½Π΅ Ρ ΠΎΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΏΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΡ Π½Π°Β c++β¦
Π―Β ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, ΡΡΠΎΒ Π΄Π»ΡΒ true ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΌΠΎΡ ΠΌΡΡΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΊΡΠ°ΠΌΠΎΠ»ΡΠ½ΠΎΠΉ. ΠΠΎΒ ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ ΠΈΒ Π½Π΅Ρ?
ΠΡΠ°ΠΊ, ΠΌΡΡΠ»Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠ°Ρ. Π―Β Ρ
ΠΎΡΡ ΠΏΠΈΡΠ°ΡΡ c++ ΡΠΊΡΠΈΠΏΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊΒ ΠΏΠΈΡΡΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ, ΡΠΎΒ Π΅ΡΡΡ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΊΡΠΈΠΏΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ shebang ΠΈΒ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π°Β ΠΏΡΡΡ ΠΊΒ Β«ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡΒ»: #!/bin/c++
ΠΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΠΊΡΠΈΠΏΡΠ° Π±ΡΠ΄ΡΡ ΠΏΡΠΎΡΡΠΎ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ Π½Π°Β c++.
Π―Β Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ Β«ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΒ» ΡΠΊΡΠΈΠΏΡΠ° c++. ΠΠ°ΠΏΠΈΡΠ°ΡΡ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Β ΡΠ΅ΠΌ ΡΠ³ΠΎΠ΄Π½ΠΎ, Π΄Π°Β Ρ
ΠΎΡΡ Π½Π°Β bash (ΡΡΠΎ Π²Β ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ°Π·, Ρ
ΠΎΡΡ Π½Π΅Β ΡΠΎΡΠ½ΠΎ). ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π½Π΅Β ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ, Π°Β ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ.
ΠΠΎΡ ΡΡΠΎΒ ΡΒ ΠΌΠ΅Π½Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ:
#!/bin/bash
msg_file=/dev/null
#msg_file=/dev/stdout
tmp_path=$HOME"/.cache/c++/"
mkdir -p $tmp_path
tmp_file=$1".c++"
exe_file=$1".bin"
if test $1 -nt $tmp_path$exe_file; then
echo "Need to recompile.." > $msg_file
tail -n +2 $1 > $tmp_path$tmp_file
eval "g++ -o $tmp_path$exe_file $tmp_path$tmp_file > /dev/null 2>&1"
if [ $? -eq 0 ]
then
echo "Compiled ok" > $msg_file
else
echo "Compile error" > $msg_file
exit 255
fi
fi
eval "$tmp_path$exe_file $@1"
ΠΡΠΎΡ ΡΠΊΡΠΈΠΏΡ Π΄Π΅Π»Π°Π΅Ρ Π²ΡΠ΅, ΡΡΠΎΒ Π½ΡΠΆΠ½ΠΎ. ΠΒ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ ΡΒ Π²ΡΠ±ΡΠ°Π» ΠΏΠ°ΠΏΠΊΡ ~/.cache/c++. ΠΒ ΡΡΡ ΠΏΠ°ΠΏΠΊΡ Π±ΡΠ΄Π΅Ρ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΡΠΊΡΠΈΠΏΡ, Π½ΠΎΒ Π±Π΅Π·Β ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΒ shebang. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ tail. ΠΠΌΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π±ΡΠ΄Π΅Ρ ΠΊΠ°ΠΊΒ ΡΒ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°, Π½ΠΎΒ ΡΒ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ c++. ΠΒ ΡΠΎΠΉ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊ, ΡΒ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .bin. ΠΠΎ, ΡΠΏΠ΅ΡΠ²Π°, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Β«if testΒ» Π½Π°Β Π²ΡΠ΅ΠΌΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊΠ°. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊ ΡΡΡΠ°ΡΠ΅Π» ΠΏΠΎΒ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΒ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊΒ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ Β«ΡΠΊΡΠΈΠΏΡΡΒ». ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ eval ΠΈΒ Π΅ΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π²ΡΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ.
ΠΡΠΎΡ Π€Π°ΠΉΠ» c++ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π²Β ΠΏΠ°ΠΏΠΊΡ /bin ΠΈΒ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΌ (chmod a+x).
ΠΠΎΠΏΡΠΎΠ±ΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ Β«c++ ΡΠΊΡΠΈΠΏΡΒ»:
#!/bin/c++
#include
#include
using namespace std;
int main( int argc, char *argv[] )
{
cout
ΠΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²Ρ
ΠΎΠ΄Π½ΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΈΒ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΡ
Β ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ + 60.
ΠΠ°ΠΏΡΡΠΊΠ°Ρ ΠΌΠΎΠΉ Β«ΡΠΊΡΠΈΠΏΡΒ»:
Π Π°Π±ΠΎΡΠ°Π΅Ρ!!!
ΠΡΠ»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π²Β c++ ΠΊΠΎΠ΄Π΅ ΠΎΡΠΈΠ±ΠΊΡ, ΡΠΎΒ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π΅Β Π·Π°ΠΏΡΡΡΠΈΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊΒ Π½Π΅Β ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ, Π½ΠΎΒ echo $? Π²Π΅ΡΠ½Π΅Ρ 255. ΠΠΎΒ ΡΠ°ΠΊ ΠΈΒ Π·Π°Π΄ΡΠΌΠ°Π½ΠΎ Π±ΡΠ»ΠΎ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ c++ Π΄Π°Π΅Ρ Π³ΡΠΎΠΌΠ°Π΄Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΏΡΠΈΠ²ΡΡΠ½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ. ΠΠΎ-Π²ΡΠΎΡΡΡ , ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ Π²ΡΠΎΠ΄Π΅ std: vector, std: map ΠΈΠ»ΠΈΒ std: string Ρ Π΄ΡΡΠ³ΠΈΠ΅Β β Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡΠ΅ Π²Π΅ΡΠΈ. Π’Π° ΠΆΠ΅ ΡΡΡΠΎΠΊΠ°Β β ΡΡΠΎΒ Ρ ΠΎΡΠ΅ΡΡ ΡΒ Π½Π΅ΠΉ Π΄Π΅Π»Π°ΠΉ, ΠΈΡΠΈ Π²Β ΡΡΡΠΎΠΊΠ΅, ΡΠ°Π·Π±ΠΈΠ²Π°ΠΉ Π½Π°Β ΠΏΠΎΠ΄ΡΡΡΠΎΠΊΠΈ, ΡΠ°Π·ΡΠ΅Π΄ΠΈΠ½ΡΠΉ ΠΈΒ Π²Π»Π°ΡΡΠ²ΡΠΉ, ΠΏΠΎΠ»ΡΡΠ°ΠΉ ΠΌΠ°ΡΡΠΈΠ²Ρ. ΠΒ Π½Π΅Β Π½ΡΠΆΠ½Ρ ΠΌΠ½Π΅ Π½ΠΈΒ sed Π½ΠΈΒ awk. Π-ΡΡΠ΅ΡΡΠΈΡ , ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΒ β Π³ΠΎΡΠΏΠΎΠ΄ΠΈ! ΠΊΠ°ΠΊΠΎΠ΅ ΡΡΠ°ΡΡΡΠ΅! ΡΒ ΠΌΠ΅Π½Ρ Π΄Π»ΡΒ ΡΠΊΡΠΈΠΏΡΠ° Π΅ΡΡΡ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ gdb! ΠΠ°Π»ΡΡΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ std: filesystem (Π΅ΡΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ). ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡβ¦
ΠΒ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΡΒ ΠΌΠ΅Π½Ρ ΡΠ°ΡΡΠΎ Π±ΡΠ²Π°Π΅Ρ, ΡΡΠΎΒ ΡΠΏΠ΅ΡΠ²Π° ΡΠ΄Π΅Π»Π°Ρ, Π°Β ΠΏΠΎΡΠΎΠΌ ΠΏΠΎΠ΄ΡΠΌΠ°Ρ: Β«Π°Β Π²Π΄ΡΡΠ³ ΠΊΡΠΎ-ΡΠΎΒ ΡΠ°ΠΊΠΎΠ΅ ΡΠΆΠ΅ ΡΠ΄Π΅Π»Π°Π»?Β». ΠΒ Π²Β ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, ΡΒ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅Β ΠΏΠ΅ΡΠ²ΡΠΉ, ΠΊΡΠΎ ΠΏΡΠΈΠ΄ΡΠΌΠ°Π» Π΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ ΠΆΠ΅. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ: https://github.com/dimgel/cpp-linux-scripts ΠΈΠ΄Π΅Ρ ΡΠ° ΠΆΠ΅, ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄ΡΡΠ³Π°Ρ. ΠΠΎΡΠΎΠΌ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎΒ Π΅ΡΡΡ ΠΈΒ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ: https://hackaday.com/2019/09/17/linux-fu-shell-scripts-in-c-c-and-others/
ΠΒ ΠΎΠ±ΡΠ΅ΠΌ, ΠΈΡΠΏΡΡΠ°Π» Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠ°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²Β ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π½Π΅ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ, ΠΏΠΎΠΈΡΠΊΠ°Π» ΠΏΠΎΒ Ρ Π°Π±ΡΡΒ β ΠΏΠΎΡ ΠΎΠΆΠ΅Π³ΠΎ Π½Π΅Β Π½Π°ΡΠ΅Π». ΠΠΎΠΆΠ΅Ρ ΠΊΠΎΠΌΡ-ΡΠΎΒ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Ρ ΠΎΡΡ Π±Ρ Π»ΡΠ±ΠΎΠΏΡΡΠ½ΡΠΌ?
© Habrahabr.ru
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ c++
Π― Ρ ΠΎΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ°ΡΡΠΈ ΠΌΠΎΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΠΏΡΠΎΡΡΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ, ΡΡΠΎΠ±Ρ Π»ΡΠ΄ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΡΠΈΠ»ΡΠ½ΡΡ Π·Π½Π°Π½ΠΈΠΉ c++, ΠΌΠΎΠ³Π»ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΠΎΡΡΡ Π΄Π»Ρ ΡΡΠΈΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π². Π ΠΈΠ΄Π΅Π°Π»Π΅ Ρ Ρ ΠΎΡΡ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ c++ Π²ΡΠ·ΡΠ²Π°Π»ΠΎ ΡΡΠ½ΠΊΡΠΈΡ ΡΠΊΡΠΈΠΏΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ (Π² ΠΏΠΎΡΠΎΠΊΠ΅ c++) Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΡΡΡΠΏΠΈΡ ΡΠΎΡΠΊΠ° ΠΏΠ°ΡΠ·Ρ (Wait(x)) ΠΈΠ»ΠΈ ΠΎΠ½Π° Π½Π΅ Π²Π΅ΡΠ½Π΅ΡΡΡ. Π ΡΠ»ΡΡΠ°Π΅ Π΅Π³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΎ Π³ΠΎΡΠΎΠ²ΡΠΌ ΠΊ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΡ ΡΠΊΡΠΈΠΏΡΠ° Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΡΠΈΠΊΠ»ΠΈΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
Π‘ΠΊΡΠΈΠΏΡΡ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° c++, Π² ΠΈΠ΄Π΅Π°Π»Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ»Π°ΡΡΡ c++, Π° Π½Π΅ ΠΏΡΠΎΡΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ-ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Π²ΠΎΠΊΡΡΠ³ ΠΊΠ»Π°ΡΡΠΎΠ² c++.
Π― Π½Π΅ Ρ ΠΎΡΡ ΡΡΠ°ΡΠΈΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠΎΠ³ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅, ΡΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ. Π― ΡΠ»ΡΡΠ°Π», ΡΡΠΎ Python ΠΈ Lua ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Ρ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ c++, Π½ΠΎ Ρ Π½Π΅ Π·Π½Π°Ρ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π΄Π»Ρ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΈΡ ΡΠ΅Π»Π΅ΠΉ.
- Π‘ΠΊΡΠΈΠΏΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ c++
- Π‘ΠΊΡΠΈΠΏΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ «pause» ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡΠ΅), ΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠ΅Π½ ΡΠ½ΠΎΠ²Π° ΠΏΠΎΡΠΎΠΊΠΎΠΌ c++
- ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π±ΡΡΡΡΠΎ-ΡΡΠΎ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΏΡΡΠ΅Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π².
ΠΠ΅ΡΠΎΡΡΠ½ΠΎ, Ρ ΠΌΠΎΠ³Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠ²Π΅ΡΠ½ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ, ΡΡΠΎ ΡΠΊΡΠΈΠΏΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠ΅Π½Ρ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΡΠΎΠΊΠΎΠΌ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΠΎΠΌ).
c++
scripting
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
ΠΡΡΠΎΡΠ½ΠΈΠΊ
Fire Lancer Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 15:11
9 ΠΎΡΠ²Π΅ΡΠΎΠ²
26
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΈΠ±ΠΎ Lua, Π»ΠΈΠ±ΠΎ Python. Lua Π±ΠΎΠ»ΡΡΠ΅ «lightweight», ΡΠ΅ΠΌ python. ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ΅Π½ΡΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ΅ΠΌ python, ΠΈ, ΠΏΠΎ Π½Π°ΡΠ΅ΠΌΡ ΠΎΠΏΡΡΡ, Π΅Π³ΠΎ Π±ΡΠ»ΠΎ Π»Π΅Π³ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ (ΠΏΡΠΎΠ±Π΅Π³ Π»ΡΠ΄Π΅ΠΉ Π½Π° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π²Π°ΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ). ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ. Lua, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΡ/Π·Π°ΠΏΡΡΠΊ ΠΏΠΎΡΠΎΠΊΠΎΠ² ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅.
Boost.python-ΡΡΠΎ Ρ ΠΎΡΠΎΡΠΎ, Π½ΠΎ ΠΏΠΎ ΠΌΠΎΠ΅ΠΌΡ (ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠΌΡ) ΠΎΠΏΡΡΡ Π½Π°ΠΌ Π±ΡΠ»ΠΎ ΡΡΡΠ΄Π½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π΄Π»Ρ Π½Π°ΡΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ΅Π΄ ΠΈ Π±ΡΠ»ΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΡΠΆΠ΅Π»ΠΎ. Π£ Π½Π΅Π³ΠΎ Π΅ΡΡΡ (Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄) Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ ΡΡΠ΅Π±ΡΠ΅Ρ Boost. ΠΠ»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ΅Π½ Boost (ΠΈΠ»ΠΈ Π²Ρ Π΅Π³ΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅), Π²Ρ Π²Π²ΠΎΠ΄ΠΈΡΠ΅ ΡΠΎΠ½Π½Ρ ΠΊΠΎΠ΄Π°, ΡΡΠΎΠ±Ρ Π·Π°ΡΡΠ°Π²ΠΈΡΡ Boost.python ΡΠ°Π±ΠΎΡΠ°ΡΡ. YMMV.
ΠΡ Π²ΡΡΡΠΎΠΈΠ»ΠΈ Lua Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ (win32, Xbox360 ΠΈ PS3). Π― Π²Π΅ΡΡ, ΡΡΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° x64. ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΡΠ°Π±ΠΈΠ½Π΄-ΡΡΠΎ Ρ ΠΎΡΠΎΡΠΎ. ΠΡ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΠΈ ΡΠ΅ΠΌ, ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ Π½Π°Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ, ΠΈ Ρ ΠΎΡΡ ΠΎΠ½ Π½Π΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ»ΠΎΠΆΠ΅Π½, Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΊΠ»Π΅Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ Π²Π°ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΡΠ³ΡΠ±ΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΡ.
ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ Π»ΡΠ±ΠΎΠΌ ΠΈΠ· ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΠΎΠ»Π΅Π·Π½Π΅Π½Π½ΠΎΠΉ. Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Ρ Π½Π°Ρ Π½Π΅Ρ Ρ ΠΎΡΠΎΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ² Lua, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ Π² Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ python Π² Π½Π°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ , Ρ Π½Π΅ ΠΌΠΎΠ³Ρ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°ΠΌ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ, Π½ΠΎ ΠΏΠ°ΡΡ Π»Π΅Ρ Π½Π°Π·Π°Π΄ Π»Π°Π½Π΄ΡΠ°ΡΡ Π±ΡΠ» ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅-ΠΏΠ»ΠΎΡ Π°Ρ ΠΎΡΠ»Π°Π΄ΠΊΠ°. ΠΠ°Π»ΠΈΡΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ-ΡΡΠΎ Ρ ΠΎΡΠΎΡΠΎ, Π½ΠΎ ΠΎΡΠΈΠ±ΠΊΠΈ Π² ΡΡΠ΅Π½Π°ΡΠΈΡΡ ΠΌΠΎΠ³ΡΡ Π²ΡΠ·Π²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΡΡΠ΄Π½ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Ρ.
Π‘Π°ΠΌ ΠΊΠΎΠ΄ Lua Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π³ΡΡΠ·Π΅Π½ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²Π½Π΅ΡΡΠΈ Π² Π½Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΡ Π²ΠΈΠ΄Π΅Π»ΠΈ ΠΎΡΠΈΠ±ΠΊΠΈ Π² ΡΠ°ΠΌΠΎΠΉ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Π΅ Lua, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΎ ΡΡΡΠ΄Π½ΠΎ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ. Π― ΠΏΠΎΠ΄ΠΎΠ·ΡΠ΅Π²Π°Ρ, ΡΡΠΎ Boost::Python ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π Ρ Π»ΡΠ±ΡΠΌ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ ΡΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ «non-programmers» Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ, ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊ, Π½ΠΎ Π²Ρ, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΠΏΠΎΡΡΠ°ΡΠΈΡΠ΅ ΠΈΠ·ΡΡΠ΄Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΎΡΠ»Π°Π΄ΠΊΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Lua.
Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΡ Π±ΡΠ»ΠΈ ΠΎΡΠ΅Π½Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½Ρ Lua ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ Π΅Π³ΠΎ Π² Π΄Π²ΡΡ ΠΈΠ³ΡΠ°Ρ . Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΌΡ Π½Π΅ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΠΌ ΠΎΡΡ ΠΎΠ΄ΠΈΡΡ ΠΎΡ ΡΡΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ°. Π ΠΎΠ±ΡΠ΅ΠΌ, ΠΌΡ Π½Π°ΡΠ»ΠΈ Π΅Π³ΠΎ Π»ΡΡΡΠ΅, ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΈΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΏΠ°ΡΡ Π»Π΅Ρ Π½Π°Π·Π°Π΄. Python (ΠΈ IronPython) — ΡΡΠΎ Π΄ΡΡΠ³ΠΈΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ, Π½ΠΎ, ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡ Π½Π° ΠΎΠΏΡΡΠ΅, ΠΎΠ½ΠΈ ΠΊΠ°ΠΆΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΆΠ΅Π»ΡΠΌΠΈ, ΡΠ΅ΠΌ Lua. Π₯ΠΎΡΡ ΠΌΠ½Π΅ Π±Ρ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΡΡΠ»ΡΡΠ°ΡΡ ΠΎ Π΄ΡΡΠ³ΠΈΡ Π²ΠΏΠ΅ΡΠ°ΡΠ»Π΅Π½ΠΈΡΡ ΡΠ°ΠΌ.
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
Mark Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 16:56
9
Π― ΠΎΡΠ΅Π½Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ Π²Π°ΠΌ Π²Π·Π³Π»ΡΠ½ΡΡΡ Π½Π° ΠΡΠ°Π±ΠΈΠ½Π΄ . ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Lua Π² Π²Π°Ρ ΠΊΠΎΠ΄ C++ ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ°Π²ΠΈΡΡ ΡΠ΅Π»ΡΠ΅ ΠΊΠ»Π°ΡΡΡ C++ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² Lua.
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
TrolleFar Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 15:19
5
ΠΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π²Π»ΠΎΠΆΠΈΡΡ Π»ΠΈΠ±ΠΎ lua (www.lua.org), Π»ΠΈΠ±ΠΎ python (www.python.org). ΠΠ±Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΠΈΠ³ΡΠΎΠ²ΠΎΠΉ ΠΈΠ½Π΄ΡΡΡΡΠΈΠΈ, ΠΈ ΠΎΠ±Π° ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΠ½ΠΊΡΠΈΡΠΌ extern «C» ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ, Π° lua ΠΈΠΌΠ΅Π΅Ρ Π·Π΄Π΅ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ (ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Π»Π΅Π³ΡΠ΅ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ lua ΠΈ C). ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ C++ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ Ρ Π²Π°ΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, Π² Google ΠΈΠ»ΠΈ Π½Π° Π΄ΠΈΡΠΊΡΡΡΠΈΠΎΠ½Π½ΡΡ ΡΠΎΡΡΠΌΠ°Ρ lua ΠΈΠ»ΠΈ python.
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ!
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
Kevin Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 15:27
- UUID v1 Objective-C ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
Π― Ρ ΠΎΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ UUID v1 Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ iOS. Π― Π·Π½Π°Ρ, ΡΡΠΎ ΠΎΠ½ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Mac-Π°Π΄ΡΠ΅ΡΠ° ΠΈ timestamp, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² http://en.wikipedia.org/wiki/ Universally_unique_identifier#Version_1_.28MAC_address.29 Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π»ΠΈ ΠΊΠ°ΠΊΠ°Ρ-Π»ΠΈΠ±ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ objective-c Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ V1, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡ CFUUID ? Π£…
- ΠΠ°ΠΏΡΡΠΊ python ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ iOS
ΠΠ½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ python ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ios. Π― Π½Π°ΡΠ΅Π» ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ python Π² ios Π² ΠΎΡΠ²Π΅Ρ ΠΎΠ½ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Python.h #include <Python.h> ΠΠ΄Π΅ Ρ ΠΌΠΎΠ³Ρ Π΄ΠΎΡΡΠ°ΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ»? Π ΠΊΠ°ΠΊΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΠΈΠ»ΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ΅? ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠΊΠ°Π·Π°Π» ΠΌΠ½Π΅: Python. h ΡΠ°ΠΉΠ» Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Mac OS…
3
ΠΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π΅Π»Π°ΡΡ Ρ Python Π²ΡΠ΅, ΡΡΠΎ Ρ ΠΎΡΠΈΡΠ΅. ΠΠΎΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ ΠΏΠΎ Π²ΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΡ Python Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π― ΠΏΠΎΡΡΠΈ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ Lua ΡΠΎΠΆΠ΅ ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΏΡΠΎΡΡΠΎ Ρ Ρ Π½ΠΈΠΌ ΠΌΠ΅Π½Π΅Π΅ Π·Π½Π°ΠΊΠΎΠΌ.
ΠΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΠ΅ ΠΊΠΎΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΠΎΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΡΡΠ΅Π½Π°ΡΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Break ΠΈΠ»ΠΈ Wait. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π»ΡΡΡΠΈΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡΠ»ΠΎ Π±Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ·ΡΠΊ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π² Π΅Π³ΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅, Π° Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΡΡΡΠ΅ΠΊΡΡ ΠΈΠ»ΠΈ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ·ΡΠΊΠΎΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΈ rest Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π³Π»ΡΡΠ½ΡΠΉ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π²ΡΠ·ΡΠ²Π°Π΅Ρ Break() Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ°ΡΡΠΎ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π·Π°ΠΌΠΎΡΠΎΠ·ΠΈΡΡ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
dmazzoni Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 15:22
2
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Lua (Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΠ΄Π΅ΡΠ΅ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΡΡΠΈ), ΡΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ DeCoda, ΠΈ ΡΡΠΎ Π±ΡΠ»ΠΎ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ. ΠΠ½ ΠΏΡΠΈΡΠ²ΠΎΡΡΠ΅ΡΡΡ IDE, Π½ΠΎ Π²ΡΠΎΠ΄Π΅ ΠΊΠ°ΠΊ ΡΠ΅ΡΠΏΠΈΡ Π½Π΅ΡΠ΄Π°ΡΡ, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΊ visual studio ΠΈ ΡΠΏΡΡΡΠΈΡΡΡΡ Π²Π½ΠΈΠ· ΠΏΠΎ ΡΡΠ΅ΠΊΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² Π² ΡΠΎΡΠΊΠ°Ρ ΠΎΡΡΠ°Π½ΠΎΠ²Π°. ΠΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ.
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
Unknown Β Β
20 Π΄Π΅ΠΊΠ°Π±ΡΡ 2008 Π² 17:54
2
ΠΠ·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Boost.Python. ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΎ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅.
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
Ferruccio Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 15:18
2
ΠΠ·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° SWIG . Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» Π΅Π³ΠΎ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Python, Π½ΠΎ ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠΎΠ².
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
Harold Ekstrom Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 17:04
2
ΠΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π³ΠΎΠ»ΠΎΡ Π·Π° Lua. ΠΠ½ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ, Π±ΡΡΡΡΡΠΉ, Π½Π΅ ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ (Π΄Π»Ρ ΠΈΠ³Ρ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ Π±ΡΡΠ΅Ρ ΠΏΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠ΄Π° Π²ΡΠ΅ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ Lua). ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ tolua Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΡΠΈΠ²ΡΠ·ΠΎΠΊ, Π½ΠΎ Π΅ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½ΡΡΠ΅/ΠΏΡΠΎΡΠ΅ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ (IMO), ΡΠ΅ΠΌ boost.python.
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
yrp Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 17:22
1
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΡΡΠΎΠΈΡΡ ΡΠΊΡΠΈΠΏΡΡ C/C++ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Ch . Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΅Π³ΠΎ Π΄Π»Ρ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π½Π°Π΄ ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ°Π±ΠΎΡΠ°Ρ, ΠΈ ΠΎΠ½ Ρ ΠΎΡΠΎΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. Π₯ΠΎΡΠΎΡΠ΅Π΅ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅ ΡΠΈΠ»Ρ ΠΈ ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»ΡΠ΅ΠΌΠΎΡΡΠΈ.
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ
moswald Β Β
15 ΡΠ΅Π½ΡΡΠ±ΡΡ 2008 Π² 16:08
ΠΠΎΡ ΠΎΠΆΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ:
Apache HTTP ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ° Π² C# (C Sharp)
Π― ΠΈΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ HTTP Π² C# Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΏΠ»Π°Π³ΠΈΠ½Π°ΠΌΠΈ Apache, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠΌ Π½Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ΠΎΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π²Π΅ΡΠ°ΠΌΠΈ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π»ΠΈ ΠΊΠ°ΠΊΠ°Ρ-Π»ΠΈΠ±ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ°…
ΠΡΡΡ Π»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅Π»Π΅ΠΊΡΠΎΡΠΎΠ² Sizzle/jQuery Π² C#?
ΠΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ· html Π² ΠΌΠΎΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ C#. Π― Π±Ρ ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» Linq — Sql, Π½ΠΎ ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎ/ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΡΠ΅ΠΌΠΎ Π² ΡΡΡΠΎΠΊΡ. Π― ΠΌΠΎΠ³ Π±Ρ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ XPath, Π½ΠΎ…
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° C Π² Python ΠΈΠ»ΠΈ JavaScript?
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π»ΠΈ ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° C, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π»ΠΈΠ±ΠΎ Π² Python, Π»ΠΈΠ±ΠΎ Π² JavaScript? Π― ΠΈΡΡ ΡΠΏΠΎΡΠΎΠ± Π½Π°Π΄Π΅ΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ C (ΠΈ C ΠΊΠ°ΠΊ) ΠΈ Ρ ΠΎΡΡ ΠΈΠΌΠ΅ΡΡ…
ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΏΠΈΡΠΊΠ° ΡΠ²ΠΎΠΉΡΡΠ² apple (plist) Π² c++
ΠΠ½Π΅ ΠΏΠΎΡΡΡΠ΅Π½ΠΎ ΡΠΈΡΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ ΡΠΏΠΈΡΠΊΠ° ΡΠ²ΠΎΠΉΡΡΠ² Apple Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ c++. ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ plist-ΡΠ°ΠΉΠ»Π°ΠΌ ΡΠΈΠΏΠ° xml, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π² OS X, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠΈΡΠΈΡΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΈΠΏΠ° xml.. Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Apple ΡΠ²ΠΎΠ΅Π³ΠΎ…
ΠΠΎΠ³Ρ Π»ΠΈ Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ PowerShell ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Silverlight?
ΠΠΎΠ³Ρ Π»ΠΈ Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ PowerShell ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Silverlight?
UUID v1 Objective-C ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
Π― Ρ ΠΎΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ UUID v1 Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ iOS. Π― Π·Π½Π°Ρ, ΡΡΠΎ ΠΎΠ½ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Mac-Π°Π΄ΡΠ΅ΡΠ° ΠΈ timestamp, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² http://en.wikipedia.org/wiki/…
ΠΠ°ΠΏΡΡΠΊ python ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ iOS
ΠΠ½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ python ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ios. Π― Π½Π°ΡΠ΅Π» ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ python Π² ios Π² ΠΎΡΠ²Π΅Ρ ΠΎΠ½ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Python.h #include <Python.h> ΠΠ΄Π΅ Ρ ΠΌΠΎΠ³Ρ Π΄ΠΎΡΡΠ°ΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ»? Π…
V8: console.log ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ V8 Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ C++ ΠΈ Ρ ΠΎΡΠ΅Π» Π±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ console.log() . ΠΡΡΡ Π»ΠΈ ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ Ρ ΠΎΡΠΎΡΠ°Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Ρ ΠΌΠΎΠ³Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ? Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Ρ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΡΠ²ΠΎΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ…
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ² Python Π² Android Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΊΡΠΈΠΏΡΠΎΠ² python, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ numpy ΠΈ scipy. ΠΠ°ΠΊ Ρ ΠΌΠΎΠ³Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ/Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠΈ ΡΠΊΡΠΈΠΏΡΡ Π²…
ΠΠ°ΡΠ°Π»ΠΎΠ³ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² shell Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ rails
Π ΠΌΠΎΠ΅ΠΌ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Rails (Π²ΡΠΏΡΡΠΊ 6) Ρ Π±ΡΠ΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ bash Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΠΊΡΠΈΠΏΡ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠΌ Π²Π½ΡΡΡΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈ. def…
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΈ Ρ ΡΠ΅ΠΌ ΠΈΡ Π΅Π΄ΡΡ β Lua & C++ β ΠΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠΉ ΠΠ΅Π±ΠΌΠ°ΡΡΠ΅Ρ
Π Π΅ΡΠΈΠ» Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠΎΡ ΡΠΎΠΏΠΈΠΊ Π½Π° ΡΠ΅ΠΌΡ ΡΠΊΡΠΈΠΏΡΠΎΠ²
Π§ΡΠΎ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ?
- Π‘++ Π½Π° ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ (Π² ΡΡΠΎΠΊΠ΅ Π±ΡΠ΄ΡΡ ΡΠ°Π±Π»ΠΎΠ½Ρ β template)
- Lua, ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΈΠΉ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΠΉ ΡΠ·ΡΠΊ. Π‘ΠΎΠ²Π΅ΡΡΡ ΡΡΠΎΡ ΡΡΠΎΠΊ.
ΠΠΎΡΠ΅ΠΌΡ ΠΏΠΈΡΠ°ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ ΠΈΠ³ΡΡ Π². cpp ΡΠ°ΠΉΠ»Π΅ Π±ΡΠ»ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΠΈ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ (ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΠ΅ ΠΈΠ³ΡΡ), Π·Π°ΠΌΠ΅ΡΠ°Π»ΠΈ, ΡΡΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΡΠΎΡΠ½Π΅ΠΉ ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈΠ΄Π΅Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅ΠΉ?
Π ΠΈΠ³ΡΠ΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΡΡΠΆΠΈΡ, Π±ΠΎΠ»ΡΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ², Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅Π½Ρ, Π±ΠΎΠ»ΡΡΠ΅ etc.
ΠΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ Π³Π»Π°Π²Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΡ Π² ΡΠ²ΡΠ·ΠΈ Ρ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΡΠΌΠΈ β ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π±Π΅ΡΡΡΠ΅ΡΠ½ΠΎΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΎΡΡΠΆΠΈΡ ΠΈ Π±Π΅ΠΉΠ΄ΠΆΠΈΠΊΠΎΠ² Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠ΅ Π·Π°Π½ΡΡΠΈΠ΅.
Π ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΡΡΠ±Π° Π΄ΡΡΠ³Π°/Π±ΠΎΡΡΠ°/Π½Π°ΠΏΠ°ΡΠ½ΠΈΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΠΉ Π²ΠΈΠ΄ ΠΎΡΡΠΆΠΈΡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΏΡΠΈΠ±Π΅Π³Π°ΡΡ ΠΊ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΠΌΠ΅ΡΠ°ΠΌ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΏΠΈΡΠΈ Π²ΡΠ΅ΠΉ ΡΡΠΎΠΉ ΡΠΈΠ³Π½ΠΈ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ.
ΠΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π³Π΅ΠΉΠΌΠ΄Π΅Π²Π΅Π»ΠΎΠΏΠ΅Ρ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡΠ΄Ρ Π΄Π΅Π»Π°Π» ΠΊΠ°ΡΡΡ ΡΡΠΎΠ²Π½Π΅ΠΉ ΠΈΠ»ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΈ ΠΏΠΎΡΠΎΠΌ ΠΈΡ ΡΡΠΈΡΡΠ²Π°Π». ΠΠ·ΡΡΡ Ρ ΠΎΡΡ Π±Ρ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ β ΠΎΠ»ΠΈΠΌΠΏΠΈΠ°Π΄Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΏΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΊΠ΅ Ρ ΡΠ°ΠΉΠ»ΠΎΠΌ Π²Π²ΠΎΠ΄Π°
ΠΠΎ Π΅ΡΡΡ ΡΠΏΠΎΡΠΎΠ±, Π½Π° Π³ΠΎΠ»ΠΎΠ²Ρ Π²ΡΡΠ΅ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ².
Π Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ
Β«ΠΠΊΠ΅ΠΉ, Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ Π΄Π΅Π» Ρ Π²Π°ΡΠ°Π΅Ρ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΎΠ² ΠΈΠ³ΡΠΎΠΊΠ°. ΠΠΎ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Π² Π±ΡΡΠ½ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΠ΅ΠΌΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΏΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠΆΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π»ΠΎΠ³ΠΈΠΊΡ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΈΠ³ΡΠΎΠΊΠ°, ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π· ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ?Β»
Π₯ΠΎΡΠΎΡΠΈΠΉ Π²ΠΎΠΏΡΠΎΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π°ΠΌ Π½Π° ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΡΡ ΡΠΊΡΠΈΠΏΡΡ, Π΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π»ΠΎΠ³ΠΈΠΊΡ ΠΈΠ³ΡΠΎΠΊΠ° ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌΠΈ Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΈΠ³ΡΡ.
ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΠ΄ΠΎΠ±Π½Π΅Π΅ Π²ΡΠ΅Π³ΠΎ Π΄Π΅ΡΠΆΠ°ΡΡ, Π»ΠΎΠ³ΠΈΠΊΡ ΠΈΠ³ΡΠΎΠΊΠ° Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ΄Π° ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ΅ΡΠ²Π°Ρ ΠΌΡΡΠ»Ρ β Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ°, Π²ΡΠΊΠΈΠ΄ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ· ΠΌΠΎΠ·Π³Π° ΡΠ΅ΡΠ΅Π· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠ½Π΄. ΠΠΎΠ³ΠΈΠΊΠ° ΠΈΠ³ΡΠΎΠΊΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ Π½Π΅ ΡΡΠΎΠΈΡ ΡΠ°ΠΊΠΈΡ ΠΆΡΡΠΊΠΈΡ Π·Π°ΡΡΠ°Ρ.
Π ΡΡΠ°ΡΡΡΡ, Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΡ ΡΠ·ΡΠΊΠΎΠ² Π΄Π»Ρ Π‘++, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π½Π° Π²Ρ ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΅Π³ΠΎ.
ΠΠ± ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΊΠΎΠΌ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Lua ΠΏΠΎΠΉΠ΄Π΅Ρ ΡΠ΅ΡΡ.
ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ?
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ, Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΠΉ ΡΠ·ΡΠΊ. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ Π² ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΡ ΡΠ·ΡΠΊΠ°Ρ Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΌΠ°Π»ΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ for, while, if, ΠΏΡΠΎΡΠΈΡ .
Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ, ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ.
ΠΠ°ΠΊ ΠΆΠ΅ ΡΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ³ΡΠΎΠΊΠΎΠΌ ΡΠ΅ΡΠ΅Π· ΡΠΊΡΠΈΠΏΡΡ?
ΠΡ Π² Π‘++-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π΄Π΅Π»Π°Π΅ΠΌ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ, Β«ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌΒ» ΠΈΡ ΠΏΠΎΠ΄ ΠΊΠ°ΠΊΠΈΠΌ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π² ΡΠΊΡΠΈΠΏΡΠ΅ ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅ΠΌ Π² ΡΠΊΡΠΈΠΏΡΠ΅. Π’ΠΎ Π΅ΡΡΡ Π΅ΡΠ»ΠΈ ΠΌΡ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ SetPos(x, y) Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΈΠ³ΡΠΎΠΊΠ° Π² Π‘++-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅, ΡΠΎ, Π²ΡΡΡΠ΅ΡΠΈΠ² ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π² ΡΠΊΡΠΈΠΏΡΠ΅, Β«ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΒ» ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π² Π‘++-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅, Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ΠΉ Π²ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ².
Π£Π΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π΄Π°. )
UPD: ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅! ΠΠ΄ΠΈΠ½ ΡΠ·Π΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΠ»ΡΡ ΠΌΠ½Π΅ Ρ ΠΌΠ΅ΠΉΠ»ΠΎΠΌ, ΡΡΠΎ, ΠΊΠΎΠ³Π΄Π° Ρ Π·Π°Π»ΠΈΠ²Π°Π» ΠΊΠΎΠ΄, Ρ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΡΡΠ°Π½ΠΈΠ» Π²ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ β habrahabr. ru/post/196272/#comment_6850016
Π ΠΊΠΎΠ΄Π΅ Ρ ΠΏΠΎΠ·Π²ΠΎΠ»Π΅Π½ΠΈΡ Ρ Π°Π±ΡΠ° ΠΏΡΠΎΠ½ΠΈΠΊΠ»ΠΈ ΠΆΡΡΠΊΠΈ
ΠΠ°ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΡΠ°ΡΡΠΊΠΈ ΠΊΠΎΠ΄Π° Π²ΡΠΎΠ΄Π΅
Π Π΅ΡΠ΅ Π²ΠΌΠ΅ΡΡΠΎ lua_CFunction ΠΏΡΠΎΡΠΊΠ°ΠΊΠΈΠ²Π°Π΅Ρ lua_cfunction
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ!
Π― Π³ΠΎΡΠΎΠ²!
ΠΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠ½ΡΠ»ΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ!
Π‘ΠΊΠ°ΡΠ°ΠΉΡΠ΅ ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π° Π³ΠΈΡΡ Π°Π±Π΅ (Π½ΠΈΠ· ΡΠΎΠΏΠΈΠΊΠ°) libβΡ ΠΈ includβΡ Lua, Π»ΠΈΠ±ΠΎ Π²ΠΎΠ·ΠΌΠΈΡΠ΅ ΠΈΡ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΡΠ΅.
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π»ΠΈΠ±ΠΎ Win32 (ΡΡΠΎ Π½Π΅Π²Π°ΠΆΠ½ΠΎ) Π² Visual Studio (Ρ ΠΌΠ΅Π½Ρ ΡΡΠΎΠΈΡ Π²Π΅ΡΡΠΈΡ 2012)
ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ Π² ΠΡΠΎΠ΅ΠΊΡ->Π‘Π²ΠΎΠΉΡΡΠ²Π°->Π‘Π²ΠΎΠΉΡΡΠ²Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ->ΠΠ°ΡΠ°Π»ΠΎΠ³ΠΈ VC++ ΠΈ Π² Β«ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡΒ» ΠΈ Β«ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΒ» Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΏΠ°ΠΏΠΊΡ Include ΠΈ Lib ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ°ΠΉΠ» main. cpp, ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π΅ΠΌ:
ΠΠ°ΠΊ Π²Ρ Π΄ΠΎΠ³Π°Π΄Π°Π»ΠΈΡΡ, Ρ ΠΌΠ΅Π½Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΊΠΎΠ΄ΠΈΠ½Π³Ρ
ΠΠ±Π΅ΡΠ°Ρ, ΡΡΠΎ Π±ΡΠ΄Ρ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΡΡΠ½ΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ
Π£ Π½Π°Ρ Π·Π° ΡΠΊΡΠΈΠΏΡΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΠΊΠ»Π°ΡΡ Script. Π― Π±ΡΠ΄Ρ ΠΎΠ±ΡΡΠ²Π»ΡΡΡ ΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π² Script. h/.cpp
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Script. cpp ΠΈ ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π΅ΠΌ
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Script. h ΠΈ ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π΅ΠΌ
ΠΠΎΡΠ»Π΅ 2 ΡΡΡΠΎΡΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅Π΄ #endif ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΊΠ»Π°ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ²
ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΠΈΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠΎΠΏΡΡΡΠΈΠΌ, ΡΡΠΎ ΡΠ°ΠΉΠ» Game. h ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅Ρ Script. h, Π° Script. h ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅Ρ Game. h β Π½Π΅ΠΏΠΎΡΡΠ΄ΠΎΠΊ! Π Ρ ΡΠ°ΠΊΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ 1 ΡΠ°Π·
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΈΡΠ΅ΠΌ Π²Π½ΡΡΡΠΈ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π²ΠΎΡ ΡΡΠΎ
ΠΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΡΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ°ΠΌ lua. lib ΠΈΠ· Π°ΡΡ ΠΈΠ²Π°.
ΠΠ»Ρ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ΅Π½ extern Β«CΒ»? ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ lua Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π‘ ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ.
ΠΠ°Π»ΡΡΠ΅ ΠΈΠ΄Π΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΡ
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈΡΡΡΠΏΠΈΠΌ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ°
Π‘Π°ΠΌΡΠΉ Π³Π»Π°Π²Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Lua Π΄Π»Ρ C++ β lua_State, ΠΎΠ½ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ²
ΠΠ°Π»ΡΡΠ΅ ΠΈΠ΄ΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ lua_State
ΠΊΠ°ΠΊ Π²ΡΡΠ°Π²ΠΈΡΡ ΡΠΊΡΠΈΠΏΡ
Π΄Π»Ρ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ΅Π½ ΡΠΊΡΠΈΠΏΡ
ΠΊΠ°ΠΊ ΠΎΡΠΊΡΡΡΡ ΡΠΊΡΠΈΠΏΡ
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Π€ΡΠ½ΠΊΡΠΈΡΠΌ Bash Ρ ΠΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ
Bash β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ, Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π² Unix. ΠΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π·Π²ΡΡΠΈΡ ΠΊΠ°ΠΊΒ Β«Bourne Again ShellΒ». ΠΡΠ±ΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Linux, ΡΠΌΠ΅ΡΡΠΈΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΡΠΎΠ³Π»Π°ΡΠΈΡΡΡ, ΡΡΠΎ bash ΠΈ bash-ΡΠΊΡΠΈΠΏΡΡ β ΠΌΠΎΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ. Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ!
Π Unix Π΅ΡΡΡ 2 ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΈΠΏΠ° ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ.
Bourne shell ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΠΊΠΈΠ΅ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΠΈ:
- Korn shell (ksh)
- Bourne shell (sh)
- POSIX shell (sh)
- Bourne Again shell (bash)
C shell ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΠΊΠΈΠ΅ Π²Π°ΡΠΈΠ°ΡΠΈΠΈ:
- C shell (csh)
- TENEX (TOPS) C shell (tcsh)
Bash-ΡΠΊΡΠΈΠΏΡΡ ΡΠ²Π»ΡΡΡΡΡ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ ΠΌΠΎΡΠ½ΡΠΌ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. Π‘ ΠΈΡ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ Π·Π°Π΄Π°ΡΠΈ ΠΊ ΠΎΠ΄Π½ΠΎΡΡΡΠΎΡΠ½ΠΎΠΌΡ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΈ. Π ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ Π² ΠΎΠ΄ΠΈΠ½ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΠΊΠΎΠ΄.
Bash Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΠΎ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΡΡ Linux ΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ. Π‘ΠΏΠΈΡΠΎΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, Π²Π²Π΅Π΄Ρ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
cat /etc/shells
ΠΡΠ²ΠΎΠ΄ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΡΡΠΎΠ³ΠΎ:
/bin/bash /bin/sh /bin/tcsh /bin/csh
ΠΠ°ΡΠ΅ΠΌ ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π€ΡΠ½ΠΊΡΠΈΠΈ Bash?
Π€ΡΠ½ΠΊΡΠΈΡ Bash β ΡΡΠΎ ΠΏΠΎ ΡΡΡΠΈ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·. Π¦Π΅Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΈ β ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ Π²Π°ΡΠΈ bash-ΡΠΊΡΠΈΠΏΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΡΠΌΠΈ ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΊΠΎΠ΄Π°. Bash-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ:
- Π£ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ Π·Π°Π΄Π°ΡΠΈ
- Π‘ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π²ΡΠ΅ΠΌΡ
- ΠΠ°ΡΡ Ρ ΠΎΡΠΎΡΠΎ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ, ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΡ ΠΈ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π΄Π°Π²Π°ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ
- Π£ΠΏΡΠΎΡΡΠΈΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π·Π°ΠΌΠ΅Π½ΠΈΠ² ΠΈΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ Π±Π»ΠΎΠΊ
- Π‘ΠΎΠ·Π΄Π°Π½Π° Π΅Π΄ΠΈΠ½ΠΎΠΆΠ΄Ρ, ΡΡΠ½ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΏΡΡΠ΅Π½Π° Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·.
- ΠΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠΎΡΠΎΠΊΠΎΠ²
- Bash-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ cron-Π·Π°Π΄Π°Π½ΠΈΡ
- ΠΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΡΠ»Π°ΠΆΠ΅Π½Ρ
- ΠΠΊΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π²ΠΎΠ΄ΡΡΡΡ Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ
Bash, Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΡΠΏΠΎΡΠΎΠ±Π½ΡΠΉ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π±Π΅Π·Π³ΡΠ°Π½ΠΈΡΠ½Ρ, ΠΏΠΎΡΡΠΎΠΌΡ Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠ°Π·Π±Π΅ΡΡΠΌΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΎΡΠ½ΠΎΠ²Π°ΠΌΠΈ. ΠΡΠ°ΠΊ, ΠΏΡΠΈΠ³ΠΎΡΠΎΠ²ΠΈΡΠ΅ΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π²Π°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠΊΡΠΈΠΏΡ!
Bash-ΡΠΊΡΠΈΠΏΡΡ: ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ Π Π°Π±ΠΎΡΠ΅
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ VPS-ΡΠ΅ΡΠ²Π΅ΡΡ ΡΠ΅ΡΠ΅Π· SSH. ΠΡΠ»ΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Ρ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π²ΠΎΠΏΡΠΎΡΡ, Π·Π°Π³Π»ΡΠ½ΠΈΡΠ΅ Π² ΡΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ.
Π§ΡΠΎΠ±Ρ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡ Π· Π±Π°Π·ΠΎΠ²ΡΠΌΠΈ ΠΎΠΏΡΠΈΡΠΌΠΈ bash, Π²ΡΠ·ΠΎΠ²ΠΈΡΠ΅ ΡΠΏΡΠ°Π²ΠΊΡ:
man bash
Π ΠΎΠ±ΡΠ΅ΠΌ-ΡΠΎ ΡΡΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², ΠΈΠ»ΠΈ bash-ΡΠΊΡΠΈΠΏΡΠΎΠ² Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π²ΡΠ΅ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ». Π Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΠΌ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ ΡΠ°ΠΉΠ»Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠ½Π°ΡΠ°Π»Π° Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» .sh. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ VIM. Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ», Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
vim primerScripta.sh
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ ΠΊ ΡΠ°ΠΉΠ»Ρ .sh, Π³Π΄Π΅ ΡΠΌΠΎΠΆΠ΅ΠΌ Π΅Π³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ.
Π§ΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ bash, ΠΊΠ°ΠΆΠ΄ΡΠΉ bash-ΡΠΊΡΠΈΠΏΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ ΡΠΎ ΡΡΡΠΎΠΊΠΈ:
#!/bin/bash
ΠΠΎΠΌΠ°Π½Π΄Π° Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΠΏΡΡΡ ΠΊ bash-ΡΡΠ΅Π½Π°ΡΠΈΡ.
which bash
ΠΠ°ΠΊ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠ²ΠΎΠ΄ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ:
/bin/bash
ΠΠ±ΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ bash:
ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠΌΡΠ€ΡΠ½ΠΊΡΠΈΠΈ { ΠΏΠ΅ΡΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠΎΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° }
Π’Π°ΠΊΠΆΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΊ:
ΠΈΠΌΡΠ€ΡΠ½ΠΊΡΠΈΠΈ (){ ΠΏΠ΅ΡΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠΎΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° }
ΠΠ»ΠΈ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ:
ΠΈΠΌΡΠ€ΡΠ½ΠΊΡΠΈΠΈ() { ΠΏΠ΅ΡΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°; Π²ΡΠΎΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°; } caca
ΠΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½ΠΈΠΆΠ΅, Π³Π΄Π΅ ΠΌΡ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°ΡΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Π° Π·Π°ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΠ΅ΠΌ ΠΏΡΡΡ, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π» Π½Π° Π½ΠΎΠ²ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³:
sampleFunction () { mkdir -p $1 cd $1 }
$1 ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΡΠ°Π²Π»Π΅Π½Π° ββΠ² ΡΡΠ½ΠΊΡΠΈΡ.Β Bash ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.Β Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
sampleFunction myDir
ΠΠ΄Π΅ΡΡ myDir ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½. ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ pwd, ΡΠΎ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ Π²Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠΌ myDir.
Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ Π»ΡΠ±Π°Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΡ bash.
ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ» .sh Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ VIM, Π½Π°ΠΆΠΌΠΈΡΠ΅ ESC, ΡΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, Π° Π·Π°ΡΠ΅ΠΌ :wq, ΡΡΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π²ΡΠΉΡΠΈ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Bash-ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ bash:
#!/bin/bash testfunction(){ Β Β Β echo "ΠΠΎΡ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ" } testfunction
ΠΡΠ»ΠΈ Π²Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ Π² testFunction.sh ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ./testFunction.sh, Π² Π²ΡΠ²ΠΎΠ΄Π΅ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅:
ΠΠΎΡ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ
Π€ΡΠ½ΠΊΡΠΈΡ echo Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Ρ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ, ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅. ΠΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΡΠΉ Π½ΠΈΠΆΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° Π²ΡΠ΄Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ.
#!/bin/bash testfunction testfunction(){ Β Β Β echo "ΠΠΎΡ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ" }
Π‘Π½Π°ΡΠ°Π»Π° Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ, Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ·Π²Π°ΡΡ Π΅Ρ.
Π€ΡΠ½ΠΊΡΠΈΠΈ bash ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ½ΡΡΡ Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². ΠΡΠΈΠΌΠ΅Ρ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°:
#!/bin/bash testfunction(){ Β Β Β echo $1 Β Β Β echo $2 }
testfunction "Hello" "World"
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ Π²Π²ΠΎΠ΄ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ bash. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½ΠΈΠΆΠ΅:
#!/bin/bash addition(){ Β Β Β sum=$(($1+$2)) Β Β Β return $sum } read -p "Enter a number: " int1 read -p "Enter a number: " int2 add $int1 $int2 echo "The result is : " $?
Π ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ sum, ΠΈ ΠΎΠ½ΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ Π²Π²ΠΎΠ΄ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ read Π΄Π»Ρ ΠΎΠ±ΠΎΠΈΡ ΡΠΈΡΠ΅Π». ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠ΅ΡΠ°ΡΠ°Π΅ΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° $?, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΡΠ°Π½ΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ $sum ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΈ.
Π€ΡΠ½ΠΊΡΠΈΠΈ Bash Π²ΡΠ΅Π³Π΄Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊ ΡΠ°ΠΉΠ»Ρ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π·Π½Π°ΡΠΎΠΊΒ #.
Bash-ΡΠΊΡΠΈΠΏΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ:
- Π¦ΠΈΠΊΠ» while
- Π¦ΠΈΠΊΠ» for
- Π‘ΡΠ΅ΠΉΡΠΌΠ΅Π½Ρ if
- ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π
- ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΠ»ΠΈ
- Π‘ΡΠ΅ΠΉΡΠΌΠ΅Π½Ρ else if
- ΠΠΏΠ΅ΡΠ°ΡΠΎΡ case
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΈΠΊΠ»Π° while.
#!/bin/bash isvalid=true count=1 while [ $isvalid ] do echo $count if [ $count -eq 5 ]; then break fi ((count++)) done
Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ while ΠΈ if. ΠΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠΈΠΊΠ» while 5 ΡΠ°Π· ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΡ ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° if.
ΠΠΎΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ:
1 2 3 4 5
Π¦ΠΈΠΊΠ» for ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π΄Π»Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ, ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠ². ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΡΠΈΠΊΠ»Π° for ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½ΠΈΠΆΠ΅:
#!/bin/bash for (( count=10; count>0; count-- )) do echo -n "$count " done
Π Π²ΠΎΡ Π²ΡΠ²ΠΎΠ΄ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π°:
10 9 8 7 6 5 4 3 2 1
Π Bash && ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ || ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΠΠ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² If ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Else if. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½ΠΈΠΆΠ΅:
#!/bin/bash echo "Enter a valid number" read n if [ $n -eq 101 ]; then echo "This is first number" elif [ $n -eq 510 ]; then echo " This is second number " elif [ $n -eq 999 ]; then echo " This is third number " else echo "No numbers over here" fi
Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΡ ΠΎΠΆΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΠΎ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ case:
#!/bin/bash echo " Enter a valid number" read n case $n in 101) Echo " This is the first number " ;; 510) echo " This is the second number " ;; 999) echo " This is the third number " ;; *) echo " No numbers over here " ;; esac
Π ΡΡΠ΅ΠΉΡΠΌΠ΅Π½ΡΠ°Ρ case ;; ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΊΠΎΠ½Π΅Ρ case.
ΠΡΠΎΠ³ΠΈ
ΠΠ° ΡΡΠΎΠΌ ΠΌΡ Π·Π°Π²Π΅ΡΡΠ°Π΅ΠΌ Π½Π°Ρ ΠΎΠ±Π·ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ bash. Bash-ΡΠΊΡΠΈΠΏΡΡ β Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΈ Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΎΡΠ²ΠΎΠΈΡΡ. ΠΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΡΠ°ΡΡ Π΄Π»Ρ Π²Π°Ρ ΠΎΡΠΏΡΠ°Π²Π½ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉΒ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»Π° Bash. Π£Π΄Π°ΡΠΈ!
ΠΠ»ΡΠ³Π° ΡΠΆΠ΅ ΠΎΠΊΠΎΠ»ΠΎ ΠΏΡΡΠΈ Π»Π΅Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠΌ Π² ΡΡΠ΅ΡΠ΅ IT. ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ β ΠΎΠ΄Π½Π° ΠΈΠ· Π΅Ρ Π³Π»Π°Π²Π½ΡΡ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΠ΅ΠΉ. ΠΡ Ρ ΠΎΠ±Π±ΠΈ β ΡΠ·Π½Π°Π²Π°ΡΡ ΡΡΠΎ-ΡΠΎ Π½ΠΎΠ²ΠΎΠ΅ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΡΠ°ΡΡΠΈ ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡ , Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅, ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π΄ΡΡΠ³ΠΎΠΌ.
19 ΠΏΠΎΠ»Π΅Π·Π½ΡΡ shell-ΡΠΊΡΠΈΠΏΡΠΎΠ² Π½Π° Π²ΡΠ΅ ΡΠ»ΡΡΠ°ΠΈ ΠΆΠΈΠ·Π½ΠΈ β Β«Π₯Π°ΠΊΠ΅ΡΒ»
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΡΠ°ΡΡΠΈ
ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ° ΠΈ ΡΠ΅ Π½Π΅Π²ΠΎΠΎΠ±ΡΠ°Π·ΠΈΠΌΡΠ΅ Π²Π΅ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π΅Π΅ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΎΡΠΈΡΡ, β Π²ΠΈΠ·ΠΈΡΠ½Π°Ρ ΠΊΠ°ΡΡΠΎΡΠΊΠ° UNIX ΠΈ Π²ΡΠ΅Ρ Π΅Π΅ Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠΎΠ². Π Π³Π΄Π΅ Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ°, ΡΠ°ΠΌ Π΅ΡΡΡ ΡΠΊΡΠΈΠΏΡΡ. Π ΡΠ΅Π³ΠΎΠ΄Π½Ρ… Π½Π΅Ρ, ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΡΡΠΈΡΡΡΡ ΠΏΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΡ, ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΈΠ· Π½ΠΈΡ , ΡΠ΅, ΡΡΠΎ ΡΡ ΡΠΌΠΎΠΆΠ΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΠΊΡΡΠ³Π° Π·Π°Π΄Π°Ρ, Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ ΡΠ²ΠΎΠ΄ΠΊΠΈ ΠΏΠΎΠ³ΠΎΠ΄Ρ ΠΈ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ° Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ Π±ΠΎΡΠΎΠΌ Π΄Π»Ρ ΡΠ²ΠΈΡΡΠ΅ΡΠ° Π² Π΄Π΅ΡΡΡΡ ΡΡΡΠΎΠΊ ΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠΌ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΎΡΡΠ΅Π½Ρ-ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
Π‘ΡΠ°Π·Ρ ΠΎΠ³ΠΎΠ²ΠΎΡΡΡΡ, ΡΡΠΎ Ρ Π²ΠΎΠ²ΡΠ΅ Π½Π΅ ΠΏΡΠΈΠ²Π΅ΡΠΆΠ΅Π½Π΅Ρ ΡΠ°ΠΌΠ°Π½ΠΈΠ·ΠΌΠ° ΠΈ Π½ΠΈ Π² ΠΊΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ ΠΏΡΠΈΠ·ΡΠ²Π°Ρ ΡΠ΅Π±Ρ ΡΠΈΠ΄Π΅ΡΡ Π² Π·Π΅Π»Π΅Π½ΠΎ-ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΈ Π½Π°Π±ΠΈΡΠ°ΡΡ ΠΊΡΡΡ Π±ΡΠΊΠ², ΡΡΠΎΠ±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ Π² Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π°Π²Π΅ΡΡΠΈ ΠΌΡΡΠΊΡ Π½Π° Π½ΡΠΆΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ. ΠΠ΄Π½Π°ΠΊΠΎ Ρ ΡΠ±Π΅ΠΆΠ΄Π΅Π½, ΡΡΠΎ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠ½ΠΎΠ³ΠΈΡ Π·Π°Π΄Π°Ρ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΈ ΡΠΊΡΠΈΠΏΡΡ Π³ΠΎΠ΄ΡΡΡΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π»ΡΡΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠ΅Π½Π΅Π±ΡΠ΅Π³Π°ΡΡ ΠΈΠΌΠΈ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅Π»ΡΠ·Ρ. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΎ Π»ΡΠ±Π°Ρ DE ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π»Ρ ΡΠΊΡΠΈΠΏΡΠ° ΠΈΠΊΠΎΠ½ΠΊΡ, ΡΠ°ΠΊ ΡΡΠΎ Π΄Π»Ρ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° Π΄Π°ΠΆΠ΅ Π½Π΅ Π½Π°Π΄ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΊΡΡΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ.
Β
ΠΡΠΎΡΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ
ΠΡΠ°ΠΊ, Π½Π΅ ΡΠ°Π·Π³Π»Π°Π³ΠΎΠ»ΡΡΡΠ²ΡΡ ΠΏΠΎΠ½Π°ΠΏΡΠ°ΡΠ½Ρ, ΡΡΠ°Π·Ρ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌ:
$ curl ifconfig.co
ΠΡΠ° ΠΏΡΠΎΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΠ΅Π±Π΅ Π²Π½Π΅ΡΠ½ΠΈΠΉ IP β ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, Π΅ΡΠ»ΠΈ Π² Π‘Π΅ΡΡ ΡΡ Ρ ΠΎΠ΄ΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΎΡΡΠ΅Ρ. ΠΡΠ΅, ΡΡΠΎ ΠΎΠ½Π° Π΄Π΅Π»Π°Π΅Ρ, β ΠΏΡΠΎΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ ifconfig.co, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ IP-ΡΠ½ΠΈΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ.
Π Π΄Π°, ΡΡΠΎ Π²ΠΎΠ²ΡΠ΅ Π½Π΅ ΡΠΊΡΠΈΠΏΡ, ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°, Π½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΡΠΊΡΠΈΠΏΡ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π΅Π΅ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΡΠ΅Π±Π°Π½Π³, ΡΠΎ Π΅ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ #!, Π·Π° ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°:
#!/bin/bash
curl ifconfig. co
ΠΠ°Π»Π΅Π΅ ΡΠΊΡΠΈΠΏΡ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ~/bin ΠΈ Π½Π°Π·Π½Π°ΡΠ°Π΅ΠΌ ΠΏΡΠ°Π²Π° Π½Π° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅:
$ chmod +x ~/bin/myip.sh
Π’Π΅ΠΏΠ΅ΡΡ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ myip.sh.
ΠΠ΄Π΅ΠΌ Π΄Π°Π»ΡΡΠ΅.
#!/bin/sh
curl -4 wttr.in/Moscow
ΠΡΠΎΡ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ²ΠΎΠ΄ΠΊΡ ΠΏΠΎΠ³ΠΎΠ΄Ρ Π½Π° ΡΠ΅ΡΡΡΠ΅ Π΄Π½Ρ. ΠΡΠΈΠ½ΡΠΈΠΏ ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² ΡΠ»ΡΡΠ°Π΅ Ρ ifconfig.co.
Π‘Π²ΠΎΠ΄ΠΊΠ° ΠΏΠΎΠ³ΠΎΠ΄Ρ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ
#!/bin/sh
dig +short txt $1.wp.dg.cx
Π ΡΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ΅Π³ΠΎ-Π»ΠΈΠ±ΠΎ Π² ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ, ΠΏΡΠΈΡΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ DNS-Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΡ. ΠΡΡΠ°ΡΠΈ, Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ ΡΠΎΠΆΠ΅ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°ΡΡ:
#!/bin/sh
while ( nc -l 80 < file.html > : ) ; do : ; done
ΠΠ°Π½Π½ΡΠΉ ΡΠΊΡΠΈΠΏΡ ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΡΡΠΈΠ»ΠΈΡΠ΅ netcat (nc), ΠΊΠΎΡΠΎΡΡΡ Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠ²Π΅ΠΉΡΠ°ΡΡΠΊΠΈΠΌ Π°ΡΠΌΠ΅ΠΉΡΠΊΠΈΠΌ Π½ΠΎΠΆΠΎΠΌ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ. Π‘ΠΊΡΠΈΠΏΡ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠΈΠΊΠ», Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ nc, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ»ΡΡΠ°Π΅Ρ 80-ΠΉ ΠΏΠΎΡΡ ΠΈ Π² ΠΎΡΠ²Π΅Ρ Π½Π° Π·Π°ΠΏΡΠΎΡ ΠΎΡΠ΄Π°Π΅Ρ file. html, ΠΎΡΠΏΡΠ°Π²Π»ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ Π² Π½ΠΈΠΊΡΠ΄Π° (ΡΠΈΠΌΠ²ΠΎΠ» ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ noop, ΡΠΎ Π΅ΡΡΡ ΠΏΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ).
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΡΡΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΠΎΡΡΠΎ ΡΠ»ΡΡΠ°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΡΠ°Π΄ΠΈΠΎ:
#!/bin/sh
mpv --volume=50 -playlist ~/16bit.fm_128.m3u
ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠ»Π΅ΠΉ-Π»ΠΈΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ M3U Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠ°Π½Π΅Π΅ ΡΠΊΠ°ΡΠ°ΡΡ Ρ ΡΠ°ΠΉΡΠ° ΡΠ°Π΄ΠΈΠΎΡΡΠ°Π½ΡΠΈΠΈ. ΠΡΡΠ°ΡΠΈ, Π΅ΡΠ»ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ MPlayer Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ —input-ipc-server=/tmp/mpvsocket, ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ, Π·Π°ΠΏΠΈΡΡΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΡΠ°ΠΉΠ». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π°ΡΡΡΠΎΠΈΡΡ Π³ΡΠΎΠΌΠΊΠΎΡΡΡ:
echo 'volume +10' | socat - /tmp/mpvsocket
Π‘ΠΎΠ·Π΄Π°ΠΉ Π΄Π²Π° ΡΠΊΡΠΈΠΏΡΠ°: ΠΎΠ΄ΠΈΠ½ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°, Π΄ΡΡΠ³ΠΎΠΉ Π΄Π»Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ°Π΄ΠΈΠΎ (ΡΠΎ ΡΡΡΠΎΠΊΠΎΠΉ killall mpv), ΠΏΠΎΠ²Π΅ΡΡ ΠΈΡ Π½Π° ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ» ΠΈ Π½Π°ΡΡΡΠΎΠΉ Π³ΠΎΡΡΡΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ DE Π½Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ. ΠΡΠ°Π»Ρ, Ρ ΡΠ΅Π±Ρ Π³ΠΎΡΠΎΠ² ΠΏΠ»Π΅Π΅Ρ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΡΠ°Π΄ΠΈΠΎ, Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΎΡΡΠΎ ΠΊΠ»ΠΈΠΊΠ½ΡΠ² ΠΏΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΡΠΎΠ»Π΅. Π ΠΎΠ½ ΠΏΠΎΡΡΠΈ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡ ΠΎΠ΄ΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΌΡΡΡ ΠΈΠ»ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΡΡΠ΅ΠΉ.
ΠΠΎ ΠΎΡΠ²Π»Π΅ΡΠ΅ΠΌΡΡ ΠΎΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈ Π²Π΅ΡΠ½Π΅ΠΌΡΡ ΠΊ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ Π΄Π΅Π»Π°ΠΌ.
#!/bin/sh
tar -czf "../${PWD##*/}.tar.gz" .
ΠΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΌΠΎΠΈΡ
Π»ΡΠ±ΠΈΠΌΡΡ
ΡΠΊΡΠΈΠΏΡΠΎΠ². ΠΠ½ ΡΠΎΠ·Π΄Π°Π΅Ρ Π°ΡΡ
ΠΈΠ² tar.gz ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°. ΠΡΠΎΠ±ΠΎΠ³ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ Π·Π΄Π΅ΡΡ Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ${PWD##*/}
, ΠΊΠΎΡΠΎΡΠ°Ρ Π±Π΅ΡΠ΅Ρ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΡΡΡ Π΄ΠΎ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ $PWD) ΠΈ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΈΠ· Π½Π΅Π³ΠΎ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°ΡΡΡ Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ»Π΅ΡΠ°, ΠΎΡΡΠ°Π²Π»ΡΡ, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠΌΡ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°. ΠΠ°Π»Π΅Π΅ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ tar.gz. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎ ΡΠ°ΠΊΠΈΡ
ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡΡ
ΡΡ ΠΌΠΎΠΆΠ΅ΡΡ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π² man bash.
#!/bin/sh
while true; do
inotifywait -r -e MODIFY ΠΠΠ’ΠΠΠΠ && Π’ΠΠΠ―_ΠΠΠΠΠΠΠ
done
Π ΡΡΠΎ ΡΠΆΠ΅ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΠΎΡΠ²Π΅Ρ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅. ΠΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΠ°Π·Π½ΡΡ ΡΠ΅Π»Π΅ΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠ»Π΅Π΅ΡΠ° ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ MP3-ΡΠ°ΠΉΠ»Π°. ΠΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π΅ΡΠΊΡΠΎΠΏ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ notify-send:
notify-send "Π€Π°ΠΉΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½"
Β
ΠΠ΅ΡΠΊΡΠΎΠΏ
Π Π°Π· ΡΠΆ ΠΌΡ Π·Π°Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΠΎ Π΄Π΅ΡΠΊΡΠΎΠΏΠ΅, ΡΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ. &]+jpg’ |\
shuf -n 1 |\
xargs wget -O background.jpg
feh —bg-fill background.jpg
ΠΠ΄Π΅ΡΡ Π²ΡΠ΅ ΠΏΡΠΎΡΡΠΎ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ wget ΡΠΊΡΠΈΠΏΡ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ www.reddit.com/r/wallpaper, ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π΅Π΅ grep, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠ΅Ρ Π½Π° Π½Π΅ΠΉ ΡΡΡΠ»ΠΊΠΈ Π½Π° imgur, Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΡΡΠ»ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ shuf, Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ Π΅Π΅ ΠΎΠΏΡΡΡ ΠΆΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ wget ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΠΎΠ΅Π², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ feh (ΡΡΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΌΠΈΠ½ΠΈΠ°ΡΡΡΠ½ΡΠΉ ΠΏΡΠΎΡΠΌΠΎΡΡΡΠΈΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, Π΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ). Π‘ΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π° ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ», ΠΈ ΡΠΎΠ³Π΄Π° ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡ Ρ ΡΠ΅Π±Ρ Π±ΡΠ΄ΡΡ ΠΌΠ΅Π½ΡΡΡΡΡ ΠΎΠ±ΠΎΠΈ.
#!/bin/sh
state=`synclient | grep TouchpadOff | cut -d '=' -f 2`
if [ $state = "1" ]; then
synclient TouchpadOff=0
else
synclient TouchpadOff=1
fi
Π ΡΡΠΎ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ/Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ°ΡΠΏΠ°Π΄Π° Π½ΠΎΡΡΠ±ΡΠΊΠ°: Π²ΠΊΠ»ΡΡΠ°Π΅Ρ, Π΅ΡΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½, ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ. Π ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΈΠ»ΠΈΡΡ synclient, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ°ΡΠΏΠ°Π΄Π°ΠΌΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° Synaptics (90% ΡΠ°ΡΠΏΠ°Π΄ΠΎΠ² Π΄Π΅Π»Π°ΡΡ ΠΎΠ½ΠΈ). ΠΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ Π±Π΅Π· Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠΈΠ»ΠΈΡΠ° Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°ΡΠΏΠ°Π΄Π΅, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΡΡΡΠΎΠΊΡ TouchpadOff = 1, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½, ΠΈ TouchpadOff = 2, Π΅ΡΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½. Π‘ΠΊΡΠΈΠΏΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠ°ΡΠΏΠ°Π΄Π° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ Π΅Π³ΠΎ.
!#/bin/bash
mpv tv:// -frames 3 -vo jpeg
mv 00000003.jpg photo.jpg
rm -f 0000*.jpg
Π ΡΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ½ΠΈΠΌΠΎΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²Π΅Π±-ΠΊΠ°ΠΌΠ΅ΡΡ. Π‘ΠΊΡΠΈΠΏΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²ΠΈΠ΄Π΅ΠΎΠΏΠ»Π΅Π΅Ρ mpv, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΡΠΈ ΠΊΠ°Π΄ΡΠ°, ΡΠ½ΡΡΡΠ΅ ΠΊΠ°ΠΌΠ΅ΡΠΎΠΉ, Π² JPEG-ΡΠ°ΠΉΠ»Ρ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ 0000000.jpg, 00000002.jpg, 00000003.jpg, Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°Π΅Ρ ΡΡΠ΅ΡΠΈΠΉ ΡΠ½ΠΈΠΌΠΎΠΊ Π² ΡΠ°ΠΉΠ» photo.jpg, Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΄Π°Π»ΡΠ΅Ρ. Π’ΡΠΈ ΡΠ½ΠΈΠΌΠΊΠ° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΌΠ΅ΡΠ° ΡΡΠΏΠ΅Π»Π° ΠΏΡΠΎΠ²Π΅ΡΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠ΅ΡΠ²ΡΠ΅ Π΄Π²Π° ΠΏΠΎΠ»ΡΡΠ°ΡΡΡΡ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ΡΠ½ΡΠΌΠΈ. ΠΠ½ΠΎΠ³Π΄Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΠ½ΡΡΡΠΌ; ΡΡΠΎΠ±Ρ ΡΡΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ, mpv ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Ρ ΡΠ»Π°Π³ΠΎΠΌ -vf flip
:
$ mpv tv:// -frames 3 -vf flip -vo jpeg
Π’Ρ ΠΆΠ΅ ΡΠ°ΠΌΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ ΠΊΠ°ΠΌΠ΅ΡΡ ΡΠ»Π΅ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π΅Π»Π°Π΅Ρ ΡΠ½ΠΈΠΌΠΊΠΈ Π² ΠΌΠΎΠΌΠ΅Π½ΡΡ, ΠΊΠΎΠ³Π΄Π° ΡΠ·Π΅Ρ ΠΏΡΠΈΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΠΌΡΡΠΈ:
#!/bin/bash
while true; do
sudo cat /dev/input/mouse0 | read -n1
mpv tv:// -frames 3 -vo jpeg
mv 00000003. jpg `date +%F-%H-%M`.jpg
rm -f 0000*.jpg
sleep 10
done
Π‘ΠΊΡΠΈΠΏΡ Π²Ρ
ΠΎΠ΄ΠΈΡ Π² Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ», ΠΎΠΆΠΈΠ΄Π°Ρ Π΄Π°Π½Π½ΡΠ΅ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ /dev/input/mouse0
. ΠΡΠ»ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π΅ΡΡΡ, Π·Π½Π°ΡΠΈΡ, ΠΌΡΡΡ ΡΠ΄Π²ΠΈΠ½ΡΠ»Π°ΡΡ ΠΈΠ»ΠΈ Π±ΡΠ»Π° Π½Π°ΠΆΠ°ΡΠ° ΠΎΠ΄Π½Π° ΠΈΠ· Π΅Π΅ ΠΊΠ»Π°Π²ΠΈΡ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ mpv, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΈ ΡΠ½ΠΈΠΌΠΊΠ°, Π΄Π°Π΅Ρ ΡΡΠ΅ΡΡΠ΅ΠΌΡ ΡΠ½ΠΈΠΌΠΊΡ ΠΈΠΌΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π΄Π°ΡΡ ΠΈ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅.
ΠΠ»Ρ Π·Π°ΠΏΠΈΡΠΈ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π΅ΠΎ Ρ Π²Π΅Π±-ΠΊΠ°ΠΌΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΠΊΡΠΈΠΏΡ:
#!/bin/bash
mencoder tv:// -tv driver=v4l2:width=800:height=600:device=/dev/video0:fps=30:outfmt=yuy2:forceaudio:alsa:adevice=hw.2,0 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1800 -ffourcc xvid -oac mp3lame -lameopts cbr=128 -o video.avi
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ video.avi Π² ΡΠΎΡΠΌΠ°ΡΠ΅ MPEG4 Ρ Π±ΠΈΡΡΠ΅ΠΉΡΠΎΠΌ 1800 ΠΈ Π°ΡΠ΄ΠΈΠΎΠ΄ΠΎΡΠΎΠΆΠΊΠΎΠΉ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ MP3 Ρ Π±ΠΈΡΡΠ΅ΠΉΡΠΎΠΌ 128.
#!/bin/bash
ffmpeg -f x11grab -r 25 -s 1366x768 -i :0.0 screencast.mpg
Π ΡΠ°ΠΊ ΡΡ ΠΌΠΎΠΆΠ΅ΡΡ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠ½ΠΊΠ°ΡΡ. 1366×768 β ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π°. ΠΡΠΎΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΊΡΠΈΠ½ΡΠΎΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ import:
import screenshot.png
ΠΠΎΡΠ»Π΅ Π΅Π΅ Π·Π°ΠΏΡΡΠΊΠ° Π·Π½Π°ΡΠΎΠΊ ΠΌΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ Π½Π° Β«ΠΏΡΠΈΡΠ΅Π»Β», Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΎΠΊΠ½ΠΎ. ΠΠΎΠ²Π΅ΡΠΈΠ² ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ, ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ½ΡΡΠΈΡ ΡΠΊΡΠΈΠ½ΡΠΎΡΠΎΠ², Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π½Π΅ ΠΆΡΡΡΡΡ ΠΏΠ°ΠΌΡΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π²ΠΈΡΡΡΠΈΠ΅ Π² ΡΡΠ΅Π΅.
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡ ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:
#!/bin/sh
if [ -z "$1" ]; then
exit
fi
if [ $1 == "off" ]; then
xrandr --output VGA-0 --off
xrandr -s 0
else if [ $1 == "on"]; then
xrandr --output LVDS --auto --primary --output VGA-0 --auto --left-of LVDS
xrandr --newmode "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode VGA-0 1920x1080
xrandr --output VGA-0 --mode 1920x1080
fi
xrandr --dpi 96
ΠΠ°Π½Π½ΡΠΉ ΡΠΊΡΠΈΠΏΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ, ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡ Π½ΠΎΡΠΈΡ ΠΈΠΌΡ LVDS, Π° Π²Π½Π΅ΡΠ½ΠΈΠΉ β VGA-0. ΠΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ Π΄Π»Ρ Π½ΠΎΡΡΠ±ΡΠΊΠΎΠ²; Π΅ΡΠ»ΠΈ ΡΡ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, ΠΌΠΎΠΆΠ΅ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π²ΡΠ²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ xrandr: ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° off ΠΎΠ½ ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡ, Π°ΡΠ³ΡΠΌΠ΅Π½Ρ on, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π΅Π³ΠΎ, ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Ρ ΠΏΠΎ Π»Π΅Π²ΡΡ ΡΡΠΎΡΠΎΠ½Ρ ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ (Π°ΡΠ³ΡΠΌΠ΅Π½Ρ —left-of LVDS Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅). ΠΠ°Π»Π΅Π΅ ΡΠΊΡΠΈΠΏΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π½ΠΎΠ²ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ 1920 x 1080 ΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ. Π ΡΠ°ΠΌΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ ΡΠΊΡΠΈΠΏΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π΄Π΅ΡΠΎΠ»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ DPI β ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°, ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° Ρ Π΄ΡΡΠ³ΠΈΠΌ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ½ΠΎ ΡΠ°ΡΡΠΎ ΡΠ»Π΅ΡΠ°Π΅Ρ.
ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ xrandr —newmode … ΠΈ xrandr —addmode … Π½Π΅ Π½ΡΠΆΠ½Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Xorg ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΠΈΠΌ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ EDID. ΠΠ½ΠΎΠ³Π΄Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΡΡΠΎΠ³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΈ ΡΡΡΠΎΠΊΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌΡΡ ΠΏΠΎΡΠ»Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° —newmode, ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° cvt:
$ cvt 1920 1080
ΠΠ½ ΠΆΠ΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Β«Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅Β» ΠΌΠΎΠ½ΠΈΡΠΎΡΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
Β
Google, Twitter, Dropbox ΠΈ ΡΠΎΡΡΠ΅Π½ΡΡ
ΠΡΠ²Π»Π΅ΡΠ΅ΠΌΡΡ ΠΎΡ Π΄Π΅ΡΠΊΡΠΎΠΏΠ½ΡΡ Π΄Π΅Π» ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΠ΅ΡΠ΅Π²ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ . ΠΠ°ΡΠ½Π΅ΠΌ, ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, Ρ Google. ΠΠΎΡ ΡΠ°ΠΊ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΡΡ Π΄Π΅ΡΡΡΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΠΏΠΎΠΈΡΠΊΠ°:
#!/bin/bash
Q="$@"
URL='https://www.google.de/search?tbs=li:1&q='
AGENT="Mozilla/4.0"
stream=$(curl -A "$AGENT" -skLm 10 "${GOOG_URL}${Q//\ /+}" | grep -oP '\/url\?q=.+?&' | sed 's|/url?q=||; s|&||')
echo -e "${stream//\%/\x}"
Π‘ΠΊΡΠΈΠΏΡ Π΄Π΅Π»Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡ ΠΊ Google Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ Π½Π°ΠΌ curl, Π·Π°ΠΌΠ΅Π½ΡΡ ΠΏΡΠΎΠ±Π΅Π»Ρ Π² ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π½Π° ΠΏΠ»ΡΡΡ. ΠΠ°Π»Π΅Π΅ Π²ΡΠΈΡΠΊΠΈΠ²Π°Π΅Ρ Π² ΠΎΡΠ²Π΅ΡΠ½ΠΎΠΌ HTML ΡΡΡΠ»ΠΊΠΈ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΡ Π½Π° ΡΠΊΡΠ°Π½. ΠΡΠ΅ ΠΏΡΠΎΡΡΠΎ, Ρ ΠΎΡΡ ΠΈ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠΌ.
ΠΡΠ΅ΠΌ Π² Google ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ
ΠΡΠΎΡΠΎΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΡΠ΅ΡΠ²ΠΈΡ β YouTube:
#!/bin/bash
mpv -fs -quiet `youtube-dl -g "$1"`
ΠΠ΄Π΅ΡΡ Π²ΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎ. Π‘ΠΊΡΠΈΠΏΡ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π΅Ρ Π²ΠΈΠ΄Π΅ΠΎ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ΅ ID Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ»Π΅Π΅ΡΠ° mpv. ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, youtube-dl ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π·Π°ΡΠ°Π½Π΅Π΅.
ΠΠ°ΠΊ Π½Π°ΡΡΠ΅Ρ ΡΠ²ΠΈΡΡΠ΅ΡΠ°? ΠΠ΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π²ΠΎΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΉ Π±ΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π° Π²Ρ ΠΎΠ΄Π΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π΅Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ ΡΠ·Π΅ΡΡ.
#!/bin/bash
USER="Π’ΠΠΠ_ΠΠΠ"
while true; do
CMD=`echo "/dma +1" | ttytter -script | sed 's/\[.*\]\ //'
if [ $CMD != $OLD_CMD ]; then
REPL=`$CMD`
echo "/dm $USER ${REPL:0:140}" | ttytter -script
CMD = $OLD_COMD
fi
sleep 60
done
Π‘ΠΊΡΠΈΠΏΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ ttytter, ΡΠΈΡΠ°Ρ Π² ΡΠΈΠΊΠ»Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ direct message, Π΄Π°Π»Π΅Π΅ ΠΎΠ½ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, Π½Π΅ Π±ΡΠ»Π° Π»ΠΈ ΡΠ°ΠΊΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π°, ΠΈ, Π΅ΡΠ»ΠΈ Π½Π΅Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π΅Π΅ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ USER ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΠΎΠΏΡΡΠ½ΠΎ ΠΎΠ±ΡΠ΅Π·Π°Ρ Π΄ΠΎ 140 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
Π§ΡΠΎΠ±Ρ Π²ΡΠ΅ Π·Π°ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ, ΡΠ΅Π±Π΅ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ttytter, Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅Π³ΠΎ, Π²Π²Π΅ΡΡΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ ΠΈΠΌ ΡΡΡΠ»ΠΊΡ Π² Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ°, ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π±ΡΠ°ΡΠ·Π΅ΡΠΎΠΌ ΠΊΠ»ΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ Π²Π²Π΅ΡΡΠΈ Π΅Π³ΠΎ Π² ttytter. ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°Π²Π΅ΡΡΠΈ Π΄Π»Ρ Π±ΠΎΡΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ·Π΅ΡΠ° ΠΈ Π·Π°Π»ΠΎΠ³ΠΈΠ½ΠΈΡΡΡΡ ΠΏΠΎΠ΄ Π΅Π³ΠΎ ΡΡΠ΅ΡΠΊΠΎΠΉ.
Ttytter Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΊΠ»ΡΡ
Π’Π²ΠΈΡΡΠ΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄, Π½ΠΎ ΠΈ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΌΠ°ΡΠΈΠ½Ρ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΊΡΠΈΠΏΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π² Π»Π΅Π½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΌΠ°ΡΠΈΠ½Ρ (ΠΈΠΌΡ Ρ ΠΎΡΡΠ°, uptime, Π½Π°Π³ΡΡΠ·ΠΊΠ°, ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ ΠΏΠ°ΠΌΡΡΡ ΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠ° Π½Π° CPU):
#!/bin/bash
HOST=`hostname -s`
UP=`uptime | cut -d" " -f4,5 | cut -d"," -f1`
LOAD=`uptime | cut -d":" -f5,6`
MEM=`ps aux | awk '{ sum += $4 }; END { print sum }'`
CPU=`ps aux | awk '{ sum += $3 }; END { print sum }'`
tweet="Host: ${HOST}, uptime: ${UP}, cpu: ${CPU}%, memory: ${MEM}%, loadavg ${LOAD}"
if [ $(echo "${tweet}" | wc -c) -gt 140 ]; then
echo "FATAL: The tweet is longer than 140 characters!"
exit 1
fi
echo $tweet | ttytter -script
ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΌΠ°ΡΠΈΠ½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Twitter
ΠΡ ΠΈ ΠΏΠΎΠ΄ ΠΊΠΎΠ½Π΅Ρ ΠΏΡΠΈΠ²Π΅Π΄Ρ ΡΠΊΡΠΈΠΏΡ, Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΡΠ΅ΡΠ΅Π²ΡΠΌΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ, Π½ΠΎ ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΠΏΡΡΠΌΠΎΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠ΅ΡΡΠΌ ΠΈ ΠΊ ΡΠΎΠΌΡ, Π·Π°ΡΠ΅ΠΌ ΠΌΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ. ΠΡΠΎ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΈ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΎΡΡΠ΅Π½Ρ-ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΡΡΠΎΡ ΠΌΠ°ΡΠΈΠ½Ρ:
#!/bin/bash
IDLE=600000
STOPCMD="transmission-remote -S"
STARTCMD="transmission-remote -s"
STOPPED="yes"
while true; do
if [ `xprintidle` -gt $IDLE ]; then
if [ $STOPPED = "yes" ]; then
$STARTCMD
STOPPED="no"
fi
else
if [ $STOPPED = "no" ]; then
$STOPCMD
STOPPED="yes"
fi
fi
sleep 60
done
Π‘ΠΊΡΠΈΠΏΡ ΡΡ ΠΎΠ΄ΠΈΡ Π² Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ», ΠΊΠ°ΠΆΠ΄ΡΡ ΠΌΠΈΠ½ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄ ΠΏΡΠΎΡΠ»ΠΎ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΊΠΎΠ³Π΄Π° ΡΠ·Π΅Ρ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ Π΄Π΅Π»Π°Π» (Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° xprintidle). ΠΡΠ»ΠΈ ΠΏΡΠΎΡΠ»ΠΎ ΡΠΆΠ΅ 600 000 ΠΌΡ (Π΄Π΅ΡΡΡΡ ΠΌΠΈΠ½ΡΡ), ΡΠΊΡΠΈΠΏΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ STARTCMD. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ STOPCMD, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎ Π½Π΅Π΅ Π±ΡΠ»Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° STARTCMD. ΠΡΠ»ΠΈ ΠΊΡΠ°ΡΠΊΠΎ: Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅ΡΡ Π·Π° ΠΊΠΎΠΌΠΏΠΎΠΌ Π΄Π΅ΡΡΡΡ ΠΌΠΈΠ½ΡΡ β Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ STARTCMD, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°ΠΏΡΡΠΊΠ° Π²ΡΠ΅Ρ Π·Π°ΠΊΠ°ΡΠ΅ΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Transmission, Π΅ΡΠ»ΠΈ Π½Π΅Ρ β ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²ΡΠ΅Ρ Π·Π°ΠΊΠ°ΡΠ΅ΠΊ. ΠΠ΅ Π»ΡΠ±ΠΈΡΡ Transmission? ΠΠ΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π²ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ Deluge:
STOPCMD="deluge-console pause \*"
STARTCMD="deluge-console resume \*"
Β
ΠΠΌΠ΅ΡΡΠΎ Π²ΡΠ²ΠΎΠ΄ΠΎΠ²
ΠΠ΅ ΡΠ΄ΠΈΠ²Π»ΡΡΡ, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ Π² ΡΡΠ°ΡΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΠ΅Π±Π΅ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΡΠΌ Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄ΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ΠΌ, ΠΈ Π΄Π°ΠΆΠ΅ ΡΠΎΠ³Π»Π°ΡΡΡΡ Ρ ΡΠ°ΠΊΠΈΠΌ ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ. ΠΡΠ΅-ΡΠ°ΠΊΠΈ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ Linux β ΡΡΠΎ Π½Π΅ ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Π΄Π»Ρ ΡΡΠΌΠ°ΡΡΠ΅Π΄ΡΠΈΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°ΡΠΎΡΠΎΠ², ΠΊΠ°ΠΊΠΎΠΉ ΠΎΠ½Π° Π±ΡΠ»Π° ΠΏΡΡΠ½Π°Π΄ΡΠ°ΡΡ Π»Π΅Ρ Π½Π°Π·Π°Π΄. Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ, ΠΎΡΠ»Π°ΠΆΠ΅Π½Π½ΡΠΉ ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ. ΠΡΡΠ³ΠΎΠ΅ Π΄Π΅Π»ΠΎ, ΡΡΠΎ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎΠΈΡ Π»ΠΈ Π·Π°Ρ Π»Π°ΠΌΠ»ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠΆΠ΅Π»ΠΎΠ²Π΅ΡΠ½ΡΠΌΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΌΠΈ Π½Π° Python ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Ρ ΠΊΡΡΠ΅ΠΉ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΠΊΠΎΠ³Π΄Π° ΡΡ ΠΆΠ΅ Π·Π°Π΄Π°ΡΡ Π»Π΅Π³ΠΊΠΎ ΡΠ΅ΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΡΡΠ΅Π½ΡΠΊΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°.
ΠΠ°ΠΊΠΈΠΌ ΠΏΡΡΠ΅ΠΌ ΠΏΠΎΠΉΡΠΈ β Π²ΡΠ±ΠΈΡΠ°ΡΡ ΡΠ΅Π±Π΅. ΠΡΡΠ°Π½Π΅ΡΡ Π»ΠΈ ΡΡ Π½Π° ΡΠ΅ΠΌΠ½ΡΡ ΡΡΠΎΡΠΎΠ½Ρ ΠΈΠ»ΠΈ Π²ΡΠ±Π΅ΡΠ΅ΡΡ ΠΏΡΡΡ Π΄ΠΆΠ΅Π΄Π°Ρ?
telnet towel.blinkenlights.nl
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ArcGIS REST APIβΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ArcGIS Server (Linux)
ArcGIS for Server ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡΠ° RESTful, ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Π² ArcGIS REST API. (ΠΠ°ΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ArcGIS Server Manager Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π·Π°ΠΏΡΠΎΡΡ ΠΊ REST API Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΠΈ.) ΠΠ»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ArcGIS for Server Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ·ΡΠΊ ΡΠΊΡΠΈΠΏΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ URL-Π°Π΄ΡΠ΅ΡΠ° ΠΈ Π·Π°ΠΏΡΠΎΡΡ HTTP, Π° ΡΠ°ΠΊΠΆΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠΊΠ»ΠΈΠΊΠΈ HTTP. Π ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ , ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π² Π½Π°ΡΡΠΎΡΡΠ΅ΠΉ ΡΠΏΡΠ°Π²ΠΊΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ·ΡΠΊ Python.
ΠΠ°ΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ArcGIS REST API Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π°Π»ΠΈΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Esri Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΊΡΠΈΠΏΡ. ΠΠ°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π·Π°ΠΏΡΠΎΡΡ HTTP ΠΊ Π²Π°ΡΠ΅ΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ ΠΠΠ‘.
ΠΠ°ΡΠ°Π»ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ArcGIS REST API
ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ArcGIS REST API Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π·Π°ΠΏΡΠΎΡ HTTP Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΆΠ΅Π»Π°Π΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ, ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² Π½Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ HTTP-Π·Π°ΠΏΡΠΎΡ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΊ ΡΠ°ΠΉΡΡ.
http://gisserver.domain.com:6080/arcgis/admin/machines/registermachineName=GISSERVER1. DOMAIN.COMadminURL=http://GISSERVER1.DOMAIN.COM:6080/arcgis/admin
ΠΡΠΎΡΡΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ArcGIS for Server Administrator Directory.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Administrator Directory
ArcGIS for Server Administrator Directory ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ArcGIS for Server. Administrator Directory ΠΎΠ±ΡΡΠ½ΠΎ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ http://gisserver.domain.com:6080/arcgis/admin.
Administrator Directory ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ΄Π° ΠΏΡΡΠ΅Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΠΎ ΡΠ΅ΡΡΡΡΠ°ΠΌ ArcGIS for Server, Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ REST API. ΠΠ°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ°ΠΌ Π² Administrator Directory ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ URL ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ ΠΊ Π²Π°ΡΠ΅ΠΌΡ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΈ Π·Π°ΠΏΡΠΎΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΡΠ΅Π· HTTP Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ·ΡΠΊΠ° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠ° ΠΏΠΎ Π²Π°ΡΠ΅ΠΌΡ Π²ΡΠ±ΠΎΡΡ.
ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Administrator Directory Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²Π²Π΅ΡΡΠΈ, ΠΈ ΠΈΠ·ΡΡΠΈΡΠ΅ URL-Π°Π΄ΡΠ΅Ρ Π² ΡΡΡΠΎΠΊΠ΅ Π²Π°ΡΠ΅Π³ΠΎ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ. ΠΠ»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠ΅Π»Π° Π·Π°ΠΏΡΠΎΡΠ° ΠΈ ΠΎΡΠΊΠ»ΠΈΠΊΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°, ΠΊΠ°ΠΊ Fiddler ΠΈΠ»ΠΈ Firebug. ΠΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡΠ΅Π½Ρ ΡΠ΅Π½Π½Π° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ HTTP Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ·ΡΠΊΠ° Python ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠΎΠ² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ².
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Administrator Directory Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π΄Π»Ρ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π΄Π°Π½Π½ΠΎΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ REST API. Π¦Π΅Π»Π΅Π²ΡΠΌ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ArcGIS Server ΡΠ²Π»ΡΠ΅ΡΡΡ ArcGIS Server Manager.
ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΠΊΠ΅ΡΠ° Π² ΡΠΊΡΠΈΠΏΡΠ°Ρ
ΠΡΠΈ Π²Ρ ΠΎΠ΄Π΅ Π² ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ (Manager) ΠΈΠ»ΠΈ Administrator Directory Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²Π²Π΅ΡΡΠΈ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΈΠ»ΠΈ ΠΈΠ·Π΄Π°ΡΠ΅Π»Ρ Π΄Π»Ρ ArcGIS for Server. ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΉ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈ ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ². ΠΠ°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ. Π‘Π΅ΡΠ²Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡ Π²ΠΎΠ·Π²ΡΠ°Ρ ΠΌΠ°ΡΠΊΠ΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡΠ΅Π³ΠΎ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠΉ ΠΌΠ°ΡΠΊΠ΅Ρ Π² Π»ΡΠ±ΠΎΠΉ Π·Π°ΠΏΡΠΎΡ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ.
ΠΠ°ΡΠΊΠ΅Ρ (ΡΠΎΠΊΠ΅Π½) Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΌ; ΠΎΠ½ ΡΠΎΠ·Π΄Π°Π½ ΡΠΎ ΡΡΠΎΠΊΠΎΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΡΠΎ ΠΈΡΠΊΠ»ΡΡΠ°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΅Π³ΠΎ ΠΊΡΠ°ΠΆΠΈ ΠΈ Π½Π΅ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ-Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠΌ. ΠΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠΊΡΠΈΠΏΡΠ° Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π·Π°ΠΏΡΠΎΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°ΡΠΊΠ΅ΡΠ° (Π½ΠΎ Π½Π΅ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅).
Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ Python Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ ΠΌΠ°ΡΠΊΠ΅ΡΠ°. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π½ΠΎΠΌΠ΅Ρ ΠΏΠΎΡΡΠ°, ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ.
ΠΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ ΠΌΠ°ΡΠΊΠ΅ΡΠ° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ ArcGIS for Server.
def getToken(username, password, serverName, serverPort):
# Token URL is typically http://server[:port]/arcgis/admin/generateToken
tokenURL = "/arcgis/admin/generateToken"
# URL-encode the token parameters:-
params = urllib.urlencode({'username': username, 'password': password, 'client': 'requestip', 'f': 'json'})
headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
# Connect to URL and post parameters
httpConn = httplib.HTTPConnection(serverName, serverPort)
httpConn.request("POST", tokenURL, params, headers)
# Read response
response = httpConn.getresponse()
if (response.status != 200):
httpConn.close()
print "Error while fetch tokens from admin URL. Please check the URL and try again."
return
else:
data = response.read()
httpConn.close()
# Extract the token from it
token = json.loads(data)
return token['token']
Π Π°Π±ΠΎΡΠ° Ρ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ ΠΈ ΠΎΡΠΊΠ»ΠΈΠΊΠ°ΠΌΠΈ
ΠΠ»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡΠ° ArcGIS for Server Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ URL Π΄Π»Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΌΠ°ΡΠΊΠ΅ΡΠ° ΡΠ°ΠΊΠΎΠΌΡ ΠΆΠ΅ ΠΌΠ°ΡΠΊΠ΅ΡΡ, ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠΌΡ Π²ΡΡΠ΅.
ΠΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ ΠΎΡΠΊΠ»ΠΈΠΊΡ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΡΠ½ΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ JavaScript Object Notation (JSON). Π―Π·ΡΠΊΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Python, ΠΈΠΌΠ΅ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΎΡΠΊΠ»ΠΈΠΊ JSON. ΠΠ½ΠΎΠ³Π΄Π° Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΡΠ΅Π½ΠΈΡΡ ΡΡΠΏΠ΅ΡΠ½ΠΎΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, Π²Π°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ΄ ΡΡΠ°ΡΡΡΠ° HTTP (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ΄ 200 ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠ°ΡΡΡΡ «OK»). ΠΠ½ΠΎΠ³Π΄Π° ΡΠ°ΠΊΠΈΠ΅ ΠΎΡΠΊΠ»ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π΄Π°Π½Π½ΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΆΡΡΠ½Π°Π»Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΈΠ·ΡΡΠΈΡΡ.
Π‘ΠΌ. ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΊΠΎΠ΄Π°, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΠ΅, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΊ ArcGIS for Server ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΎΡΠΊΠ»ΠΈΠΊ.
ΠΡΠ·ΡΠ² ΠΏΠΎ ΡΡΠΎΠΌΡ ΡΠ°Π·Π΄Π΅Π»Ρ?
SIIRC: IRC-ΡΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ Π‘Π
Π‘ΠΊΡΠΈΠΏΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΠΎΡΡΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΠ³Ρ Π² Β«Π‘Π²ΠΎΡ ΠΈΠ³ΡΡΒ», Π½Π΅ΡΠ΅Π΄ΠΊΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΠΌΡΡ
Π² ΡΠ°ΡΠ°Ρ
ΡΠ΅ΡΠΈ IRC.
ΠΠ΅ΡΠ²ΡΠΉ ΡΠΊΡΠΈΠΏΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΈΠ³ΡΡ Π² ΡΠΏΠΎΡΡΠΈΠ²Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ Π‘Π, Π²ΡΠΎΡΠΎΠΉ β Π² ΡΠ΅Π»Π΅Π²ΠΈΠ·ΠΈΠΎΠ½Π½ΡΠΉ Π°Π½Π°Π»ΠΎΠ³. ΠΠ΅ΡΠ²ΡΠΉ ΡΠΊΡΠΈΠΏΡ Π·Π°Π΄Π°ΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π²ΡΠΎΡΠΎΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄Π΅Π»Π°ΡΡ Π²ΡΠ±ΠΎΡ ΡΠ΅ΠΌΡ ΠΈ Π²ΠΎΠΏΡΠΎΡΠ° Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ°ΡΠ½Π΄Π΅.
Π‘ΠΊΡΠΈΠΏΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠΈΡΡΠ²Π°ΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΈ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΠΈ Π²ΡΠ²ΠΎΠ΄ΡΡ ΠΈΡ
Π½Π° ΠΊΠ°Π½Π°Π». Π’Π°ΠΊΠΆΠ΅ ΠΎΠ½ΠΈ Π²Π΅Π΄ΡΡ ΠΈΠ³ΡΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Ρ ΡΡΠΌΠΌΠ°ΠΌΠΈ ΠΈΠ³ΡΠΎΠΊΠΎΠ² Π±Π°Π·ΠΎΠ²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° ΠΊΠ°Π½Π°Π».
ΠΠΎΡΡ ΠΈ Π°ΡΠΊΡΠΈΠΎΠ½Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΡΡΠΎ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡ Π²Π΅Π΄ΡΡΠ΅Π³ΠΎ β ΡΠ°ΠΌΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΡ ΠΈΠ³ΡΠΎΠΊΠ°, ΠΎΡΠ²Π΅ΡΠ°Π²ΡΠ΅Π³ΠΎ Π½Π° ΡΠΏΠ΅ΡΠ²ΠΎΠΏΡΠΎΡ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π²Π΅Π΄ΡΡΠ΅Π³ΠΎ ΠΈ Π΄Π΅Π»Π°Π΅Ρ Π΅Ρ ΡΠΊΠΎΡΠ΅Π΅ ΡΠ°Π·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ, Π½Π΅ΠΆΠ΅Π»ΠΈ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ, Π½Π΅ΡΠΎΠΌΠ½Π΅Π½Π½ΠΎ, ΡΠ°ΠΊΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΠ»Π΅Π·Π½Ρ.
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² (13.09.2007):
- Π²ΠΎΠΏΡΠΎΡΡ ΠΈ ΠΎΡΠ²Π΅ΡΡ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Π²ΠΎΠΏΡΠΎΡΡ Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ Π½Π° ΠΊΠ°Π½Π°Π», Π²Π΅Π΄ΡΡΠΈΠΉ Π²ΠΈΠ΄ΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ ΠΎΡΠ²Π΅ΡΠ° ΠΈΠ³ΡΠΎΠΊΠ°
- ΡΠΊΡΠΈΠΏΡ ΡΠ°ΠΌ ΠΎΡΡΡΠΈΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ΠΌΡ Π½Π° ΡΠ°Π·ΠΌΡΡΠ»Π΅Π½ΠΈΠ΅ ΠΈ Π½Π° ΠΎΡΠ²Π΅Ρ
- ΡΠΊΡΠΈΠΏΡ ΡΠ°ΠΌ ΡΠ΅Π°Π³ΠΈΡΡΠ΅Ρ Π½Π° ΠΏΠΎΠ΄Π°ΡΡ ΡΠΈΠ³Π½Π°Π»Π° ΠΎΡ ΠΈΠ³ΡΠΎΠΊΠ°, ΠΆΠ΅Π»Π°ΡΡΠ΅Π³ΠΎ Π΄Π°ΡΡ ΠΎΡΠ²Π΅Ρ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΈΠ³Π½Π°Π» β Β«!ΠΏΠΈΠΏΒ») ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΎΡΠ²Π΅ΡΠΈΡΡ ΡΠΎΠΌΡ, ΡΠ΅ΠΉ ΡΠΈΠ³Π½Π°Π» ΠΏΡΠΈΡΡΠ» ΠΏΠ΅ΡΠ²ΡΠΌ
- ΡΠΊΡΠΈΠΏΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π΅Π΄ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ³ΡΠΎΠΊΠΎΠ² (ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ) ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π΅Ρ Π½Π° ΠΊΠ°Π½Π°Π»
- Β«Π·Π°ΠΊΡΡΡΡΠΉ ΡΠ΅ΠΆΠΈΠΌΒ» β ΠΈΠ³ΡΠ° ΠΈΠ΄ΡΡ Π»ΠΈΡΡ Ρ ΡΠ΅ΠΌΠΈ, ΠΊΡΠΎ Π²Π½Π΅ΡΡΠ½ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ³ΡΠΎΠΊΠΎΠ²
- ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΡΠΌΠΌΡ Π½Π° ΡΡΡΡΠ΅ ΠΈΠ³ΡΠΎΠΊΠΎΠ² Π²ΡΡΡΠ½ΡΡ β Π² ΡΠ»ΡΡΠ°Π΅ Β«ΠΠΎΡΠΎΠ²Β», Β«ΠΡΠΊΡΠΈΠΎΠ½ΠΎΠ²Β» ΠΈ Π°ΠΏΠ΅Π»Π»ΡΡΠΈΠΉ
- Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΠΏΠΈΡΠ°Π½Ρ Π² ΡΠ°ΠΉΠ»Π΅ ΠΏΠΎΠΌΠΎΡΠΈ
ΠΡ
ΠΎΠ΄Π½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π΄Π»Ρ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΡΡ Β«Π Π΅Π΄Π°ΠΊΡΠΎΡΠΎΠΌ Π²ΠΎΠΏΡΠΎΡΠΎΠ² SIGameΒ» Π²Π΅ΡΡΠΈΠ΅ΠΉ 3.0 ΠΈ Π²ΡΡΠ΅. Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΏΠΎ ΡΠΊΡΠΈΠΏΡΠ°ΠΌ Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ Ρ ΡΠ°ΠΌΠΈΠΌ ΡΠΊΡΠΈΠΏΡΠ°ΠΌΠΈ.
Π‘ΠΏΠΎΡΡΠ‘Π ΡΠΊΡΠΈΠΏΡ, Π²Π΅ΡΡΠΈΡ 1.1 (08.10.2007)
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΡΠΈΠ³Π½Π°Π» Β«ΠΉΒ»
- Π‘ΠΊΡΠΈΠΏΡ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠΌΠ΅Π΅Ρ ΠΎΡΡΠ³ΡΡΠ²Π°ΡΡ ΠΊΠΎΡΠΎΠ² ΠΈ Π°ΡΠΊΡΠΈΠΎΠ½Ρ (ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ Π²Π΅Π΄ΡΡΠ΅Π³ΠΎ)
- ΠΠ΅Π΄ΡΡΠΈΠΉ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ Π»Π°Π³Π°ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΠΈ Π½Π°Π·Π½Π°ΡΠΈΡΡ Π΅Π³ΠΎ Π²ΡΡΡΠ½ΡΡ
- ΠΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΏΠΎΠ΄Π°ΡΡ ΡΠΈΠ³Π½Π°Π»Π° Β«!ΠΏΠΈΠΏΒ» ΠΏΠΎΡΠ»Π΅ 0 ΡΠ°ΠΉΠΌΠ΅ΡΠ°
- ΠΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠΎΡΠΊΠ΅ ΠΊ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ Π²ΠΎΠΏΡΠΎΡΡ ΡΠ΅ΠΏΠ΅ΡΡ: Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ Π²ΠΎΠΏΡΠΎΡ Π² ΡΠ΅ΠΌΠ΅, ΡΠΎ ΠΈΠ³ΡΠ° Π½Π°ΡΠ½ΡΡΡΡ Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΌΡ; Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ Π²ΠΎΠΏΡΠΎΡ Π² ΡΠ°ΡΠ½Π΄Π΅, ΡΠΎ ΠΈΠ³ΡΠ° Π½Π°ΡΠ½ΡΡΡΡ Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΠ°ΡΠ½Π΄Π°
Π‘ΠΏΠΎΡΡΠ‘Π ΠΈ Π’ΠΠ‘Π ΡΠΊΡΠΈΠΏΡΡ, Π²Π΅ΡΡΠΈΡ 1.2 (13.11.2007)
ΠΡΡ ΠΎΠ΄ΠΈΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Β«Π‘Π²ΠΎΡΠΊ-ΡΠΎΡΡ 2Β». ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΡΠ»ΠΈΡΠΈΡ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ: Π±ΠΎΠ»ΡΡΠ°Ρ Π΄ΡΡΠΆΠ΅Π»ΡΠ±Π½ΠΎΡΡΡ ΠΈ ΠΏΡΠΎΡΡΠΎΡΠ° Π² ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ.
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°ΠΉΠ» Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅, Π½Π΅ Π²Π²ΠΎΠ΄Ρ Π²ΡΡΡΠ½ΡΡ Π΅Π³ΠΎ ΠΈΠΌΡ
- ΠΠΎΠ»Π΅Π΅ Π΄ΡΡΠΆΠ΅Π»ΡΠ±Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ β Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΎΠΊ ΠΎΡ ΡΠΊΡΠΈΠΏΡΠ°
- ΠΠ°ΡΠΈ Π»ΠΈΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΠΎΡ ΠΈΠ³ΡΡ ΠΊ ΠΈΠ³ΡΠ΅
- ΠΠΎΠ΄Π΅Π»Π°Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Β«ΠΠΎΡΠΎΠ² Π² ΠΌΠ΅ΡΠΊΠ΅Β» ΠΈ Β«ΠΡΠΊΡΠΈΠΎΠ½ΠΎΠ²Β». ΠΡΠΏΠΎΠ»Π½Π΅Π½Ρ Π·Π°Π΄Π΅Π»Ρ ΠΏΠΎΠ΄ ΠΎΠ±ΠΎΠ±ΡΡΠ½Π½ΡΠ΅ ΡΠΈΠΏΡ (ΡΠΌ. ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠ΅ΠΊΡΡ)
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΏΠΎΠ»Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊ Π²ΠΎΠΏΡΠΎΡΡ. Π’Π΅ΠΏΠ΅ΡΡ Π²Π΅Π΄ΡΡΠΈΠΉ Π΅Π³ΠΎ Π²ΠΈΠ΄ΠΈΡ Π΄ΠΎ Π²ΠΎΠΏΡΠΎΡΠ°
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² ΠΊ Π²Π΅Π΄ΡΡΠ΅ΠΌΡ. ΠΡΠΎ Π°Π±Π·Π°Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΉΡΡ Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° *. Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΡΡΠ°Π·Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΠΊΠ½ΠΎ ΠΊΠ°Π½Π°Π»Π°, Π½ΠΎ Π²ΠΈΠ΄ΠΈΡ Π΅Π³ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π²Π΅Π΄ΡΡΠΈΠΉ
- ΠΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΡΠ°ΠΉΠ»Π° Π½Π΅Π²Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠ° ΡΠΊΡΠΈΠΏΡ Π½Π΅ Π²ΠΈΡΠ½Π΅Ρ, Π° Π²ΡΠ΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°ΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
- ΠΠ΅Π»ΡΠ·Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΄Π»Ρ ΠΈΠ³ΡΡ Π½Π΅ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ Π² ΡΠ°ΠΉΠ»Π΅ Π²ΠΎΠΏΡΠΎΡ
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄Π±ΠΈΡΠ°Π΅ΡΡΡ ΠΈΠΌΡ ΠΊΠ°Π½Π°Π»Π° Π΄Π»Ρ ΠΈΠ³ΡΡ
- ΠΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΠΎΠ² ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²Π΅Π΄ΡΡΠ΅ΠΌΡ
Π‘ΠΏΠΎΡΡΠ‘Π ΠΈ Π’ΠΠ‘Π ΡΠΊΡΠΈΠΏΡΡ, Π²Π΅ΡΡΠΈΡ 1.3 (28.01.2008)
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- Π€Π°ΠΉΠ»Ρ ΠΏΠΎΠΌΠΎΡΠΈ Π·Π°ΠΏΠΈΡΠ°Π½Ρ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ html
- ΠΠΎΠΏΡΠΎΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡΡ ΠΊΡΡΠΊΠ°ΠΌΠΈ ΠΈ ΠΈΠ³ΡΠ°ΡΡΡΡ ΠΏΠΎ ΠΌΠΎΡΠΊΠΎΠ²ΡΠΊΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ β Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΏΠΈΠΏΠ°ΡΡ ΠΏΠΎΡΡΠ΅Π΄ΠΈ Π²ΠΎΠΏΡΠΎΡΠ° ΠΈ Π΄Π°Π²Π°ΡΡ ΠΎΡΠ²Π΅Ρ
- Π’Π΅ΠΏΠ΅ΡΡ Π² Π²ΠΎΠΏΡΠΎΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ, Π½Π΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΡΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠΌ. ΠΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ [q#type]. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ°Π·ΡΠ³ΡΡΠ²Π°ΡΡΡΡ Π²ΡΡΡΠ½ΡΡ ΠΏΠΎ Π»ΡΠ±ΡΠΌ ΡΠΊΠ·ΠΎΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ. ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΡΠΊΡΠΈΠΏΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ ΡΠ°Π±ΠΎΡΡ
Π‘ΠΏΠΎΡΡΠ‘Π ΠΈ Π’ΠΠ‘Π ΡΠΊΡΠΈΠΏΡΡ, Π²Π΅ΡΡΠΈΡ 1.4 (26.09.2008)
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- Π‘ΠΊΡΠΈΠΏΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅Π΅ΡΡΡ ΡΠΈΠΏΠΎΠ² Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π‘Π. ΠΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ³ΡΡΠ²Π°ΡΡ Β«ΠΠΎΠΏΡΠΎΡΡ ΠΎΡ ΡΠΏΠΎΠ½ΡΠΎΡΠ°Β» ΠΈ Β«ΠΠ±ΠΎΠ±ΡΡΠ½Π½ΡΡ ΠΠΎΡΠΎΠ² Π² ΠΌΠ΅ΡΠΊΠ΅Β»
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ±ΠΎΡΠ° ΡΠ²Π΅ΡΠ° Π΄Π»Ρ Π²Π΅Π΄ΡΡΠ΅Π³ΠΎ. ΠΠ»Ρ ΡΠ²Π΅ΡΠΎΠ² Ρ ΠΊΠΎΠ΄ΠΎΠΌ ΠΌΠ΅Π½ΡΡΠΈΠΌ 10 ΡΠ΅ΠΊΡΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡΡ Ρ ΠΎΡΡΡΡΠΏΠΎΠΌ (ΠΈΠ·-Π·Π° IRC-ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ»ΠΈΠΏΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΡΠ²Π΅ΡΠ° ΠΈ ΡΡΠ°Π·Ρ, Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅ΠΉΡΡ Ρ ΡΠΈΡΠ»Π°)
- Π‘ΠΊΡΠΈΠΏΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ΄ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ Π²Π΅ΡΠ½ΡΡ ΠΈ Π½Π΅Π²Π΅ΡΠ½ΡΡ ΠΎΡΠ²Π΅ΡΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ³ΡΠΎΠΊΠ°. Π‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π° Π²ΡΡΡΠ½ΡΡ.
- Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈ ΡΠ°ΡΡΠΈΡΠ½ΠΎΠΌ Π²ΡΠ²ΠΎΠ΄Π΅ Π²ΠΎΠΏΡΠΎΡΠ° ΠΏΠΎΡΠ»Π΅ Π²Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ° ΠΎΡΡΠ°ΡΠΎΠΊ Π²ΠΎΠΏΡΠΎΡΠ° Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΡΠ°Π·Ρ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ
Π‘ΠΏΠΎΡΡΠ‘Π ΠΈ Π’ΠΠ‘Π ΡΠΊΡΠΈΠΏΡΡ, Π²Π΅ΡΡΠΈΡ 1.41 (19.02.2009)
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π·Π°Π²ΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠ° Π½Π° Π±ΡΡΡΡΠΎΠΌ Π²ΡΠ²ΠΎΠ΄Π΅ Π΄Π»ΠΈΠ½Π½ΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ².
Π‘ΠΏΠΎΡΡΠ‘Π ΠΈ Π’ΠΠ‘Π ΡΠΊΡΠΈΠΏΡΡ, Π²Π΅ΡΡΠΈΡ 1.42 (20.06.2009)
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- ΠΡΠΏΡΠ°Π²Π»Π΅Π½Ρ ΠΌΠ΅Π»ΠΊΠΈΠ΅ Π±Π°Π³ΠΈ.
Π‘ΠΏΠΎΡΡΠ‘Π ΡΠΊΡΠΈΠΏΡ, Π²Π΅ΡΡΠΈΡ 1.43 (21.08.2009)
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- Π‘ΠΊΡΠΈΠΏΡ Π½Π΅ ΡΠ΅Π°Π³ΠΈΡΡΠ΅Ρ Π½Π° ΡΡΡΠΎΠΊΡ ΡΠ΅ΠΊΡΡΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ «ΠΉ».
- ΠΡΠ²ΠΎΠ΄ΡΡΡΡ Π°Π²ΡΠΎΡΡ ΡΠ΅ΠΌ ΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ Π²ΠΎΠΏΡΠΎΡΠΎΠ².
Π‘ΠΏΠΎΡΡΠ‘Π ΡΠΊΡΠΈΠΏΡ, Π²Π΅ΡΡΠΈΡ 1.44 (30.08.2009)
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- ΠΠΎΠΏΡΠ°Π²Π»Π΅Π½ Π±Π°Π³ Ρ ΡΠ΅Π°ΠΊΡΠΈΠ΅ΠΉ Π½Π° «ΠΉ».
Π‘ΠΏΠΎΡΡΠ‘Π ΡΠΊΡΠΈΠΏΡ, Π²Π΅ΡΡΠΈΡ 1.45 (21.01.2010)
Π£Π»ΡΡΡΠ΅Π½ΠΈΡ:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ Π²ΡΠ±ΠΎΡ ΠΈΠ³ΡΠΎΠΊΠ°.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π°!
Π‘ΠΊΠ°ΡΠ°ΡΡ
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΠΊΡΠΈΠΏΡΠ°ΠΌΠΈ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΠ³ΡΡ ΡΠ°ΠΉΠ»Ρ [sport/tv]sihelp.htm Π² ΠΏΠ°ΠΏΠΊΠ°Ρ ΡΠΊΡΠΈΠΏΡΠΎΠ².
ΠΠ·ΡΡΠ΅Π½ΠΈΠ΅ C # ΠΈ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² Unity Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³Ρ
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
Π Unity ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π²Π°ΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π²Π²Π΅ΡΡ Ρ, ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ . ΠΠ΄Π΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ Β«publicΒ» ΠΈΠ»ΠΈ Β«privateΒ» Π² Π½Π°ΡΠ°Π»Π΅, Π·Π° ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ»Π΅Π΄ΡΡΡ ΡΠΈΠΏ ΠΈ ΠΈΠΌΡ.
ΠΠΎΠ³Π΄Π° ΠΌΡ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌ Π²Π°ΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏΠΎΠ² Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ, Π½ΠΎ Π΄Π²Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡΡ ΠΈΠ· Π½ΠΈΡ — ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΈ ΡΠ°ΡΡΠ½ΡΠΉ.
ΠΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π²ΡΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠΌ Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΊΠΎΠ΄Π°, Π° Π·Π°ΡΠ΅ΠΌ Π²Π΅ΡΠ½Π΅ΡΠ΅ΡΡ Π² Unity ΠΈ Π½Π°Π·Π½Π°ΡΠΈΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΉ GameObject, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΈ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ²Π΅ΡΠ°, ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π² ΠΠ½ΡΠΏΠ΅ΠΊΡΠΎΡΠ΅, Π½ΠΎ Π²Ρ Π½Π΅ ΠΌΠΎΠ³Ρ Π²ΠΈΠ΄Π΅ΡΡ ΡΠ°ΡΡΠ½ΡΠΉ. Π ΡΡΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΊΠ°ΠΊ Β«ΡΠ°ΡΡΠ½ΠΎΠ΅Β», ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΡΠΎΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΡΠΊΡΠΈΠΏΡΠ΅, Π² ΡΡΠΎΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅ ΡΡΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ, ΡΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ Π² ΠΠ½ΡΠΏΠ΅ΠΊΡΠΎΡΠ΅ ΠΈΠ· ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° Unity.Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄ΡΡΠ³ΠΈΠ΅ Π»ΡΠ΄ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΡΡΡΠΏ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ ΡΠ΅Π½Π½ΠΎΡΡΡ.
ΠΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΡΠΈΠ½ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΡΡΠ½ΡΠΌ ΠΈΠ»ΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌ. Π§Π°ΡΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΡΡΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²Π½ΡΡΡΠΈ ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°. ΠΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΎΡΠ»Π°Π΄ΠΊΡ ΠΈ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°.
ΠΡΠ»ΠΈ Π²Ρ Π²ΡΠ±ΡΠ°Π»ΠΈ Β«ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉΒ» ΠΈ Ρ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°Π³Π»ΡΠ½ΡΡΡ Π²Π½ΡΡΡΡ ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ, ΡΡΠΎΠ±Ρ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ (ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ) Π±ΡΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌΠΈ.
ΠΡΡΠ³ΠΎΠΉ Π²Π°ΠΆΠ½ΡΠΉ Π°ΡΠΏΠ΅ΠΊΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ — ΡΡΠΎ ΡΠΈΠΏ. Π’ΠΈΠΏ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΠΊΠ°ΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΈΡΠ»ΠΎ, ΡΠ΅ΠΊΡΡ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΠΈΠΏΡ, ΠΊΠ°ΠΊ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ Π½ΠΈΠΆΠ΅: Transform, Light ΠΈ Demo Script Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ Π½ΠΈΠΆΠ΅ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠ²Π»ΡΡΡΡΡ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ Π½Π° ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. Unity Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΡΡΠΎ ΡΠΈΠΏ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΡΡΠΎΠ±Ρ Π·Π½Π°ΡΡ, ΠΊΠ°ΠΊ Ρ Π½ΠΈΠΌ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ.
ΠΡΠ΅ ΠΎΠ΄Π½Π° Π²Π°ΠΆΠ½Π°Ρ Π²Π΅ΡΡ ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ — ΡΡΠΎ ΠΈΠΌΡ. ΠΠ»Π°Π²Π½ΠΎΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΎΠ± ΠΈΠΌΠ΅Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ ΡΠΈΡΠ»Π° ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ². Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π΅ΡΡΡ ΡΡΠΈΠ»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΈΠΌΠ΅Π½. Π C # ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΈΠΌΠ΅Π½Π°Ρ — camelCase: Π²Ρ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΡΠΎ ΡΡΡΠΎΡΠ½ΠΎΠΉ Π±ΡΠΊΠ²Ρ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΠ΅ ΡΠ»ΠΎΠ²Π° Π±Π΅Π· ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ², Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ Π±ΡΠΊΠ²Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ «ΠΌΠΎΠΉ ΡΠ²Π΅Ρ».
ΠΠΎΠ³Π΄Π° Unity ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΡΠΊΡΠΈΠΏΡ, ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²ΠΈΠ΄ΠΈΠΌΡΠΌΠΈ Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅.Π‘ΠΌΠΎΡΡΠΈΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½ΠΈΠΆΠ΅ ΠΎΡ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΎΡΠ°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π½Π° C | Computerworld
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΎΡΠ΅Π½ΠΊΠΈ Unix —
Π₯ΠΎΡΡ ΠΌΡ ΠΎΠ±ΡΡΠ½ΠΎ Π΄ΡΠΌΠ°Π΅ΠΌ ΠΎ C ΠΊΠ°ΠΊ ΠΎ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅-ΠΏΡΠΎΡΠΎΡΠΈΠΏΠ΅ — ΠΆΠ΅ΡΡΠΊΠΎΠΌ, Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΠΈ ΠΎΠΏΠ°ΡΠ½ΠΎΠΌ, — ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΏΡΡΠ°Π»ΠΈΡΡ ΠΎΠ±Π΅ΡΠ½ΡΡΡ C Π² Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΡΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ Π±ΡΠ»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ Π±ΠΎΠ»Π΅Π΅ 20 Π»Π΅Ρ Π½Π°Π·Π°Π΄. Π‘ΡΠ΅Π΄ΠΈ Π²ΡΠΆΠΈΠ²ΡΠΈΡ , ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅:
- CINT
- EiC
- ElastiC
- ICI
- LPC
- Π©ΡΠΊΠ°
ΠΠ°Ρ ΠΎΠΏΡΠΎΡ ΠΈΡΠΊΠ»ΡΡΠ°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌ Unix (ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ QNC ΠΈ Think C), ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ (ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ UPS C) ΠΈ ΡΡΡΠ°ΡΠ΅Π²Π°ΡΡΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ.ΠΡ Π½Π°ΡΠ»ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ², Π² ΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ ΡΠ·ΡΠΊΠ° C, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π²ΡΠ²Π΅Π΄Π΅Π½Ρ ΠΈΠ· ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π»Π΅Ρ, Π½ΠΎ Π²ΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅.
CINT
Β«CINT ΠΏΠΎΠΊΡΡΠ²Π°Π΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 95 ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ² ANSI C ΠΈ 85 ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ² C ++Β», Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄, ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ CINT. CERN, ΡΠ° ΠΆΠ΅ ΠΌΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½Π°Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠ°Ρ Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π’ΠΈΠΌ ΠΠ΅ΡΠ½Π΅ΡΡ-ΠΠΈ ΡΠ°Π±ΠΎΡΠ°Π» Π½Π°Π΄ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ World Wide Web, Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΠΏΠΎΠ½ΡΠΈΡΡΠ΅Ρ CINT.
ΠΠ°ΡΠ°Ρ Π°ΡΡ ΠΠΎΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π» CINT Π² 1991 Π³ΠΎΠ΄Ρ, ΠΊΠΎΠ³Π΄Π° ΡΠ°Π±ΠΎΡΠ°Π» Π² Hewlett-Packard Japan.Π’Π΅ΠΏΠ΅ΡΡ, Π±ΡΠ΄ΡΡΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠΌ Π² Agilent, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ HP ΠΏΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌ, ΠΊΠΎΡΠΎΡΠΎΠ΅ HP Π²ΡΠ΄Π΅Π»ΠΈΠ»Π° Π² ΠΊΠΎΠ½ΡΠ΅ ΠΏΡΠΎΡΠ»ΠΎΠ³ΠΎ Π³ΠΎΠ΄Π°, ΠΎΠ½ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ CINT.
Π 1995 Π³ΠΎΠ΄Ρ Π Π΅Π½Π΅ ΠΡΡΠ½ ΠΈ Π€ΠΎΠ½Ρ Π Π°Π΄Π΅ΠΌΠ°ΠΊΠ΅ΡΡ Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ ROOT Π² Π¦ΠΠ Π, ΡΡΠΎΠ±Ρ Π±ΡΡΡΡΠΎ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡ ΡΠΈΠ·ΠΈΠΊΠΎΠ² Ρ Π½ΠΎΠ²ΡΠΌ ΠΌΠΈΡΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ C ++ ΠΈ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΡΡΠΏΠ½ΠΎΠΌΠ°ΡΡΡΠ°Π±Π½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½ΡΡ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΡΠ»Π΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ Tcl / Tk ΠΈ Python, Π Π°Π΄Π΅ΠΌΠ°ΠΊΠ΅ΡΡ ΠΈ ΠΡΡΠ½ Π²ΡΠ±ΡΠ°Π»ΠΈ CINT Π² 1996 Π³ΠΎΠ΄Ρ Π΄Π»Ρ ROOT. ΠΠ°ΠΊ ΠΈ CINT, ROOT — ΡΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.Π¦ΠΠ Π ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ROOT Π΄Π»Ρ ΡΡΡΡΠΊΡΡΡΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ², ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΡΠ½ΡΠ΅Ρ ΠΡΡΠ½Ρ, Β«ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ² Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ Π°Π΄ΡΠΎΠ½Π½ΡΠΌ ΠΊΠΎΠ»Π»Π°ΠΉΠ΄Π΅ΡΠΎΠΌ (LHC), ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠΊΠΎΠ»ΠΎ Π΄Π΅ΡΡΡΠΈ ΠΏΠ΅ΡΠ°Π±Π°ΠΉΡ Π΄Π°Π½Π½ΡΡ Π² Π³ΠΎΠ΄ Π² 2005 Π³ΠΎΠ΄Ρ. ROOT ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΎΡΠ½ΡΡ Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠΈΠΉ [ΡΠΈΠ·ΠΈΠΊΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠ½ΡΡ ΡΠ°ΡΡΠΈΡ] Π² ΠΌΠΈΡΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ Π½Π΅Π½Π°ΡΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ΅Π½Ρ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌΡ Π΄Π°Π½Π½ΡΡ Β». Π€ΠΈΠ½Π°Π½ΡΡ — ΡΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ Π²Π½Π΅ ΡΠΈΠ·ΠΈΠΊΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ, ΠΊΠ°ΠΊ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, CINT ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.
Π‘ΠΏΠΎΠ½ΡΠΎΡΡΡΠ²ΠΎ ROOT ΠΏΠΎΠ±ΡΠ΄ΠΈΠ»ΠΎ CINT ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ° C ++, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΈΠΏΠ°Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ.Β«ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΡΠ°ΠΏΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠ½Π΅ΡΡΡ ΡΡΠΎΠΉ ΠΎΡΠ΅Π½ΡΡ, ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΉ ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½ΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² GRID ΠΊΠ°ΠΊ Π² ΠΠ²ΡΠΎΠΏΠ΅, ΡΠ°ΠΊ ΠΈ Π² Π‘Π¨ΠΒ», — Π·Π°ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΡΡΠ½.
CINT Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° Unix, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ Win NT. Π‘ΡΠ΅Π΄ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ Π½Π΅Π΄Π°Π²Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΎΠΊ CINT — RDBS, ΠΊΠΎΡΠΎΡΠ°Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Ρ ODBC ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ JDBC.
EiC
Β«EiC ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ ΠΊΠ°ΠΊ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ … ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΡΡ , ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠΎΠ² C, ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½ΡΒ», — ΠΏΠΈΡΠ΅Ρ ΠΠ΄ΠΌΠΎΠ½Π΄ ΠΠΆ.ΠΡΠΈΠ½ Π½Π° Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ EiC. ΠΠ½ Π΄ΠΎΠ±ΠΈΠ»ΡΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΡΠΏΠ΅Ρ Π°: EiC Π΄Π°ΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠ» ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΡΠ·ΡΠ²Ρ Π² ΡΠ°ΠΊΠΈΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡΡ , ΠΊΠ°ΠΊ Linux Magazine .
ΠΡΠΈΠ½ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π» EiC Π΄Π»Ρ Π»Π΅Π³ΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΠΈ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ, ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΌΠΈ ΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ. EiC Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΡΠΎΡΠ°ΡΡ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅, ΠΈ ΡΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ. Π Π°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡΡ Π΅Π³ΠΎ Ρ ΠΎΡΠΎΡΡΡ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΡ Π½Π°ΡΡΡΠ΅Π½ΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, EiC Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΠΎΡΡΠ°ΡΠΈΠ²Π΅Π½.ΠΠΎΡΡΡΠΏΠ½Ρ Π²Π΅ΡΡΠΈΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ, Π²ΠΊΠ»ΡΡΠ°Ρ Π½Π΅Π΄Π°Π²Π½ΠΈΠΉ ΠΏΠ΅ΡΠ΅Π½ΠΎΡ Π½Π° ΠΊΠ°ΡΠΌΠ°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ Psion Π½Π° Π±Π°Π·Π΅ EPOC. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ EiC ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΅Π³ΠΎ Π΄Π»Ρ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΈ ΡΡΠ΅Π΄ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π΄Π»Ρ MySQL ΠΈ OpenGL. ΠΠ΅Π±-ΡΠ°ΠΉΡ EiC ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ·ΡΠΊΠ΅ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΠΈ Π°ΠΊΡΠΈΠ²Π½ΡΡ ΡΠΏΠΈΡΠΊΠ° ΡΠ°ΡΡΡΠ»ΠΊΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ EiC.
Π Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΡ ΠΏΠ»Π°Π½Π°Ρ ΠΡΠΈΠ½Π° — ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ C99. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΡ EiC ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΠ΄Π½Ρ ΠΈΠ· Π΅Π³ΠΎ ΡΠ°ΠΌΡΡ ΡΠ΅ΡΡΠ΅Π·Π½ΡΡ ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ.ΠΠΌΡ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π½Π°Π½ΡΡΡ Π΄ΡΡΠ³ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠΌΠΎΡΠΈ Ρ ΠΏΠΎΡΡΠ°ΠΌΠΈ EiC, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΌΠΎΠ³ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° Π²ΡΠΏΡΡΠΊΠ΅ Linux, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π΄ΠΎΠ±ΡΠΎΠ²ΠΎΠ»ΡΡΡ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎΠ΅ Π΄Π»Ρ Windows, Solaris ΠΈ Π΄ΡΡΠ³ΠΈΡ Π²Π΅ΡΡΠΈΠΉ.
ΠΠ»Π°ΡΡΠΈΠΊ
ElastiC Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΡΠΏΠΎΠΌΡΠ½ΡΡΡΡ Π·Π΄Π΅ΡΡ ΡΠ·ΡΠΊΠΎΠ². ΠΡΡΠ°Π»ΡΠ½ΡΠ΅ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΈΠΌΠ΅ΡΡ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΡ C Ρ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ Π²Π°ΡΠΈΠ°ΡΠΈΡΠΌΠΈ. ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊ ΠΠ°ΡΠΊΠΎ ΠΠ°Π½ΡΠ°Π»Π΅ΠΎΠ½ΠΈ, Π½Π°ΠΏΡΠΎΡΠΈΠ², Π±ΠΎΠ»Π΅Π΅ Π°ΠΌΠ±ΠΈΡΠΈΠΎΠ·Π΅Π½ ΠΈ ΡΠ»ΠΎΠΆΠ΅Π½. Π₯ΠΎΡΡ Π΅Π³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π·Π½Π°ΠΊΠΎΠΌ Π²ΡΠ΅ΠΌ, ΠΊΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ Ρ C, ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΎΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π»Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠ΅ΡΠ°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Smalltalk, ΠΏΡΠΈΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡΠΌΠΈ, ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΠΎΡΠΈΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡΠΌΠΈ, Π·Π½Π°ΠΊΠΎΠΌΡΠΌΠΈ ΠΏΠΎ ΡΠ°ΠΊΠΈΠΌ ΡΠ·ΡΠΊΠ°ΠΌ, ΠΊΠ°ΠΊ Scheme ΠΈ Python.
ElastiC ΠΌΠΎΠ»ΠΎΠΆΠ΅ Π΄ΡΡΠ³ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ, ΡΠΏΠΎΠΌΡΠ½ΡΡΡΡ Π·Π΄Π΅ΡΡ, ΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ·Π°Π±ΠΎΡΠ΅Π½ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ, ΡΠ΅ΠΌ Π΄Π΅ΡΠ°Π»ΡΠΌΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π²Π΅Π±-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²Π°ΠΌΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΠ°Π½ΡΠ°Π»Π΅ΠΎΠ½ΠΈ, ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ Linuxcare Italia spa, ΠΏΠΎΡ ΠΎΠΆΠ΅, Π·Π°Π»ΠΎΠΆΠΈΠ» Π΄Π»Ρ ElastiC ΠΏΡΠΎΡΠ½ΡΡ ΠΎΡΠ½ΠΎΠ²Ρ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ°Π», ΡΡΠΎΠ±Ρ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π²ΡΡΡΠΎΠΈΡΡ, Π° ΠΊΠΎΠ΄ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ ΠΈ Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ. ΠΡΠΎ ΡΠΆΠ΅ SWIGgable, Π° Pantaleoni ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»ΠΈ GTK ΠΈ inet.Π₯ΠΎΡΡ ΠΊΠΎΠ΄ ΡΠΈΡΡΡΠΉ, ΠΏΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΎΠ½ Π±ΡΠ» ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π²Π΅Π΄ΡΡΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Unix ΠΈ Windows.
ΠΠΠ
ΠΡ ΠΏΠΎΡΠ²ΡΡΠΈΠ»ΠΈ ICI ΠΊΠΎΠ»ΠΎΠ½ΠΊΡ Regular Expressions Π·Π° Π°ΠΏΡΠ΅Π»Ρ 1999 Π³. Π‘ ΡΠ΅Ρ ΠΏΠΎΡ ΡΡΠΎΡ C-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠ·ΡΠΊ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π² Π²Π΅ΡΡΠΈΠΈ 2.1.4, ΠΈ Π² ΡΡΠΎΠΌ ΠΌΠ΅ΡΡΡΠ΅ Π±ΡΠ»ΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Ρ ΠΏΠ»Π°Π½Ρ Π½Π° 3.0. Π‘Π°ΠΌΠΎΠΉ Π±ΠΎΠ»ΡΡΠΎΠΉ Π½ΠΎΠ²ΠΎΡΡΡΡ Π»Π΅ΡΠ° ΡΡΠ°Π» ΠΏΠ΅ΡΠ΅Π½ΠΎΡ ΡΠ°Π±ΠΎΡΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Π² CVS-ΠΌΠ°Π³Π°Π·ΠΈΠ½ SourceForge. Β«ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΏΠΈΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°Β», — Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ Π½Π° Π²Π΅Π±-ΡΠ°ΠΉΡΠ΅ ICI.
GTK — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΎΠ²Π΅ΠΉΡΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ICI. Π Π°Π½Π½ΡΡ ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ 3.0 ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΠΈΠ³Π½Π°Π»Ρ Π² ΡΡΠΈΠ»Π΅ Unix. ΠΠ΄Π½ΠΎ ΠΈΠ· ΠΎΡΠ»ΠΈΡΠΈΠΉ ICI — ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ Π΅Π³ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ; Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ² Canon Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ICI.
LPC
ΠΠΎΠΌΠ°ΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΠ° LPC ΡΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ, ΡΡΠΎ LPC — ΡΡΠΎ Β«Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ·ΡΠΊ ΡΠΈΠΏΠ° C, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ ΠΠ°ΡΡΠΎΠΌ ΠΠ΅Π½ΡΡΡ Π΄Π»Ρ LP-MUD, ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΡΡΠ΅Π΄Ρ Dungeon ΠΏΠΎΠ΄ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ UnixΒ». Π‘ΠΊΡΠΈΠΏΡΡ LPC ΠΎΠ±ΡΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠΌΠ½Π°ΡΡ, ΠΎΡΡΠΆΠΈΠ΅, ΠΈΠ³ΡΠΎΠΊΠΎΠ² ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ.LPC ΡΠ΅ΡΡΠ΅Π·Π½ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ Π½Π° MUDding ΠΈ, ΠΏΠΎΡ ΠΎΠΆΠ΅, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
Π©ΡΠΊΠ°
LPC ΡΠ°ΠΊΠΆΠ΅ Π²Π°ΠΆΠ΅Π½ Π΄Π»Ρ ΠΊΠΎΡΠ²Π΅Π½Π½ΠΎΠΉ Π·Π°ΡΠΈΡΡ ΠΎΡ ΡΠ°ΠΌΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π²Π΅Π±-Π΄Π΅ΠΌΠΎΠ½ΠΎΠ². Π¨ΠΈΡΠΎΠΊΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΎ, Π½ΠΎ ΠΎΡΠΈΠ±ΠΎΡΠ½ΠΎ, ΠΌΠ½Π΅Π½ΠΈΠ΅, ΡΡΠΎ Apache ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ. Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΠ΅ Π²Π΅Π±-Π΄Π΅ΠΌΠΎΠ½Ρ, Π½ΠΎ ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΡΠΉ, ΠΊΠ°ΠΊ ΠΈ Apache, ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΈΡΡΠ΅ΠΌΡΠΉ.
ΠΠ»Π°ΡΡΠΎΡΠΌΠ° Roxen ΡΠΎΡΠ΅ΡΠ°Π΅Ρ Π² ΡΠ΅Π±Π΅ Π²ΡΠ΅ ΡΡΠΈ Π΄ΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π°, ΠΈ ΠΎΡΠ½ΠΎΠ²ΠΎΠΉ Π΅Π΅ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·ΡΠΊΠ΅, ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠΎΠΌ Pike.ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π ΠΎΠΊΡΠ΅Π½Π° ΠΈ ΠΠ°ΠΉΠΊΠ° Π² Π²ΡΠΏΡΡΠΊΠ΅ Regular Expressions Π² ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π΅ Π½ΠΎΡΠ±ΡΡ 1999 Π³ΠΎΠ΄Π°. Π¨Π²Π΅Π΄ΡΠΊΠ°Ρ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΡ Roxen Internet Software AB, ΡΡΠΎΡΡΠ°Ρ Π·Π° Pike, ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»Π° ΡΠ²ΠΎΠΉ Π²Π΅Π±-ΡΠ°ΠΉΡ Π² Π½Π°ΡΠ°Π»Π΅ Π°Π²Π³ΡΡΡΠ° 2000 Π³ΠΎΠ΄Π°.
LPC Π²Π΄ΠΎΡ Π½ΠΎΠ²ΠΈΠ» ΠΏΠ΅ΡΠ²ΡΡ Π²Π΅ΡΡΠΈΡ Pike Π² 1994 Π³ΠΎΠ΄Ρ, Ρ ΠΎΡΡ ΡΠΎΠ·Π΄Π°ΡΠ΅Π»Ρ Π€ΡΠ΅Π΄ΡΠΈΠΊ Π₯ΡΠ±ΠΈΠ½Π΅ΡΡ ΠΈ Π΅Π³ΠΎ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ Π½Π΅ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈΡΡ Π½Π° ΡΡΠΎΠΌ ΠΈΠΌΠ΅Π½ΠΈ Π΄ΠΎ 1996 Π³ΠΎΠ΄Π°.
PiGTK Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ GTK 1.1 ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°ΠΊΠΈΠ΅ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ, ΠΊΠ°ΠΊ DNS, IMAP, SMTP, HTTP, LDAP ΠΈ X.
ΠΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ — Π±ΠΎΠ³Π°ΡΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ — Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ΡΡ C ΠΈ Π΅Π³ΠΎ Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠΌΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠ°ΠΌΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΡΡ Π³Π»ΡΠ±ΠΈΠ½Ρ ΠΠΈΠ»Π°Π½Π°, ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ Python ΠΈΠ»ΠΈ Tcl ΠΈΠ»ΠΈ Π΅Π²Π°Π½Π³Π΅Π»ΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΎΡΠΈΠ±ΠΎΠΊ Perl. ΠΡΠ±ΠΎΠΉ ΠΈΠ· Π²ΡΡΠ΅ΡΠΏΠΎΠΌΡΠ½ΡΡΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠΎΠ² C Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π°Π΄Π΅ΠΆΠ΅Π½ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π²ΡΠ΅ ΠΎΠ½ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ, ΠΈ Π²Ρ ΡΠΆΠ΅ Π·Π½Π°Π΅ΡΠ΅ ΠΈΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (Π·Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡΠΌΠΈ). ΠΡΠ²Π΅Π΄ΠΈΡΠ΅ ΠΈΡ Π½Π° ΡΠ΅ΡΡ-Π΄ΡΠ°ΠΉΠ². ΠΠ°ΡΠ»Π°ΠΆΠ΄Π°ΡΡΡΡ.
ΠΡΠΎΡ ΡΠ°ΡΡΠΊΠ°Π· Β«Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Ρ CΒ» Π±ΡΠ» ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½
ITworld.
Copyright Β© 2001 IDG Communications, Inc.
Π‘ΡΠ΅Π½Π°ΡΠΈΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ C
Π‘ΡΠ΅Π½Π°ΡΠΈΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ C
- ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡ — ΡΡΠΎ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ, ΡΠΎΡΡΠΎΡΡΠΈΠ΅ ΠΈΠ· ΠΊΠΎΠ½ΡΡΠ°Π½Ρ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΈ
ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°. ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ»ΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌ.ΠΡΠΈΠΌΠ΅Ρ 1. ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π³Π΄Π΅ «a» ΠΈ «t» — ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅,
Β«3Β» ΠΈ Β«4Β» — ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, Π° Β«=Β» ΠΈ Β«+Β» — ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ.Π° = 3 + 4Ρ
ΠΡΠΈΠΌΠ΅Ρ 2: Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ «ΠΈΡΡΠΈΠ½Π°» ΠΈΠ»ΠΈ
«Π»ΠΎΠΆΠ½ΡΠΉ». Π‘ΡΡΠΎΠΊΠ° exit — ΡΡΠΎ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°, var — ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ, Π°
«(«, «)» ΠΈ «==» — ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ.($ var == Π²ΡΡ ΠΎΠ΄)
- Π ΡΡΠ΅Π½Π°ΡΠΈΡΡ
ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΡΠ²ΠΎΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°
Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ. — ΠΏΠΎΠ±ΠΈΡΠΎΠ²ΠΎΠ΅ ΠΈΡΠΊΠ»ΡΡΠ°ΡΡΠ΅Π΅ ΠΠΠ
| — ΠΏΠΎΠ±ΠΈΡΠΎΠ²ΠΎΠ΅ ΠΠΠ Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ
&& — Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π
|| — Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΠΠ
- ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ
Π ΡΠ·ΡΠΊΠ°Ρ
ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Β«Π΅ΡΠ»ΠΈΒ»
Π²ΡΡΠΊΠ°Π·ΡΠ²Π°Π½ΠΈΡ ΠΈ Β«ΠΏΠ΅ΡΠ»ΠΈΒ».Π’Π΅, ΡΡΠΎ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π΄Π»Ρ C Shell, ΠΎΠΏΠΈΡΠ°Π½Ρ Π½ΠΈΠΆΠ΅.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΡΠ»ΠΈ
ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΈΡΡΠΈΠ½Π°, ΡΠΎΠ³Π΄Π° Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ
Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ. ΠΠΎΠΌΠ°Π½Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, Π° Π½Π΅ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠΎΠΌ,
ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ»ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΡΠΊΠΎΠ±ΠΊΠ°Ρ
.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
if (expr) ΠΊΠΎΠΌΠ°Π½Π΄Π° [Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ]
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh if ($ # argv == 0) echo ΠΠ΅Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ C Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠ°ΠΉΠ»Π°.ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
Π΅ΡΠ»ΠΈ (-e myfile) echo myfile ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΠ°ΡΡΡΠ° ΡΠ°ΠΉΠ»Π°:
d - ΡΠ°ΠΉΠ» ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠ΅ΠΉ e - ΡΠ°ΠΉΠ» ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ f - ΡΠ°ΠΉΠ» ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» o - ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π»Π°Π΄Π΅Π΅Ρ ΡΠ°ΠΉΠ»ΠΎΠΌ r - Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΅ΡΡΡ Π΄ΠΎΡΡΡΠΏ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠ°ΠΉΠ»Ρ w - ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠ°Π²Π° Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ°ΠΉΠ» x - Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΅ΡΡΡ Π΄ΠΎΡΡΡΠΏ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΡΠ°ΠΉΠ»Ρ z - ΡΠ°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ Π΄Π»ΠΈΠ½Ρ 0 Π±Π°ΠΉΡ
Π‘ΠΊΡΠΈΠΏΡΡ Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ
ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ.ΠΡΠ»ΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΡΠΈΠ½Π½ΠΎ, ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ else ΡΠ²Π»ΡΡΡΡΡ
Π²ΡΠΏΠΎΠ»Π½Π΅Π½; Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ expr2 ΠΈΡΡΠΈΠ½Π½ΠΎ, ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ Π²ΡΠΎΡΠΎΠ³ΠΎ else
Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΈ Ρ. Π΄. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°Ρ else-if; Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ
endif Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ. Π§Π°ΡΡΡ else ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π°.
Π‘Π»ΠΎΠ²Π° else ΠΈ endif Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π² Π½Π°ΡΠ°Π»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ;
if Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΈΠ»ΠΈ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ else.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
Π΅ΡΠ»ΠΈ (Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅) ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ½Π°ΡΠ΅ Π΅ΡΠ»ΠΈ (expr2) ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ endif
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh Π΅ΡΠ»ΠΈ ($ # argv == 0) ΡΠΎ echo Β«ΠΠ΅Ρ ΡΠΈΡΠ»Π° Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈΒ» ΠΈΠ½Π°ΡΠ΅, Π΅ΡΠ»ΠΈ ($ # argv> 0), ΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΈΡΠ»ΠΎ = $ argv [1] if (Π½ΠΎΠΌΠ΅Ρ $
Π‘ΠΊΡΠΈΠΏΡΡ Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ foreach — ΡΡΠΎ ΡΠΈΠΏ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΡΠΈΠΊΠ»Π°.ΠΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠ»Π΅Π½Ρ ΡΠΏΠΈΡΠΊΠ° ΡΠ»ΠΎΠ² ΠΈ
ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π΄ΠΎ ΡΠ΅Ρ
ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ end.
Π foreach, ΠΈ end Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΡΡΡΠΎΠΊΠ°Ρ
.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
ΠΈΠΌΡ foreach (ΡΠΏΠΈΡΠΎΠΊ ΡΠ»ΠΎΠ²) ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΊΠΎΠ½Π΅Ρ
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ²Π΅Ρ (ΠΊΡΠ°ΡΠ½ΡΠΉ ΠΎΡΠ°Π½ΠΆΠ΅Π²ΡΠΉ ΠΆΠ΅Π»ΡΡΠΉ Π·Π΅Π»Π΅Π½ΡΠΉ ΡΠΈΠ½ΠΈΠΉ) ΡΡ ΠΎ $ ΡΠ²Π΅Ρ ΠΊΠΎΠ½Π΅Ρ
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ while — ΡΡΠΎ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΏ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΡΠΈΠΊΠ»Π°.ΠΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π² ΡΠΈΠΊΠ»Π΅ while / end ΡΡΠ»ΠΎΠ²Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅
ΠΏΡΠΈ ΠΎΡΠ΅Π½ΠΊΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΠΊΠ°ΠΊ while, ΡΠ°ΠΊ ΠΈ ΠΊΠΎΠ½Π΅Ρ
Π² ΠΎΠ΄ΠΈΠ½ΠΎΡΠΊΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΡΡΡΠΎΠΊΠ°Ρ
.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ (Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅) ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΊΠΎΠ½Π΅Ρ
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»ΠΎΠ²ΠΎ = "ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ" ΠΏΠΎΠΊΠ° ($ word! = "") echo -n "ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠ»ΠΎΠ²ΠΎ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ (ΠΠ΅ΡΠ½ΡΡΡΡΡ Π΄Π»Ρ Π²ΡΡ ΠΎΠ΄Π°):" ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»ΠΎΠ²ΠΎ = $
Π‘ΠΊΡΠΈΠΏΡΡ Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΈΠΊΠ»Π° foreach ΠΈΠ»ΠΈ while.ΠΠ΅ΡΠ΅Π²ΠΎΠ΄Ρ
ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΏΠΎΡΠ»Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° end, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π·Π°Π²Π΅ΡΡΠ°Ρ
ΠΏΠ΅ΡΠ»Ρ. ΠΡΠ»ΠΈ Π΅ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΡΠΎΠΉ ΠΆΠ΅ ΡΡΡΠΎΠΊΠ΅, ΡΡΠΎ ΠΈ ΡΠ°Π·ΡΡΠ²
ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΡΠ°Π·ΡΡΠ².
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠ΅ ΡΠ°Π·ΡΡΠ²Ρ, Π΅ΡΠ»ΠΈ ΠΈΡ
Π²ΡΠ΅ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅.
ΠΏΠ΅ΡΠ΅ΡΡΠ²
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ (ΠΎΠ΄ΠΈΠ½, Π΄Π²Π°, ΡΡΠΈ, Π²ΡΡ ΠΎΠ΄, ΡΠ΅ΡΡΡΠ΅) Π΅ΡΠ»ΠΈ ($ number == exit), ΡΠΎ ΡΡ ΠΎ Π΄ΠΎΡΡΠΈΠ³Π»ΠΎ Π²ΡΡ ΠΎΠ΄Π° ΠΏΠ΅ΡΠ΅ΡΡΠ² endif ΡΡ ΠΎ $ ΡΠΈΡΠ»ΠΎ ΠΊΠΎΠ½Π΅Ρ
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΈΠΊΠ»Π° foreach ΠΈΠ»ΠΈ while.ΠΠ΅ΡΠ΅Π²ΠΎΠ΄Ρ
Π΄ΠΎ ΠΊΠΎΠ½ΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ
ΠΏΠ΅ΡΠ»Ρ. ΠΡΠ»ΠΈ Π΅ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΡΠΎΠΉ ΠΆΠ΅ ΡΡΡΠΎΠΊΠ΅, ΡΡΠΎ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅
ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅.
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ (ΠΎΠ΄ΠΈΠ½, Π΄Π²Π°, ΡΡΠΈ, Π²ΡΡ ΠΎΠ΄, ΡΠ΅ΡΡΡΠ΅) Π΅ΡΠ»ΠΈ ($ number == exit), ΡΠΎ ΡΡ ΠΎ Π΄ΠΎΡΡΠΈΠ³Π»ΠΎ Π²ΡΡ ΠΎΠ΄Π° ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ endif ΡΡ ΠΎ $ ΡΠΈΡΠ»ΠΎ ΠΊΠΎΠ½Π΅Ρ
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ goto ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ, Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅ΠΌΡΡΡ Ρ
ΠΌΠ΅ΡΠΊΠ°:
ΠΌΠ΅ΡΠΊΠ° goto
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh if ($ # argv! = 1) ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ΅ 1 Π΅ΡΠ»ΠΈ ($ argv [1]
Π‘ΡΡΡΠΊΡΡΡΠ° ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ΅ΡΠΈΡ ΡΠ΅ΡΡΠΎΠ² ΠΈ
ΡΡΠ»ΠΎΠ²Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΡΠΎΠΊΠΈ.ΠΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΌΠ΅ΡΠΎΠΊ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΠ΅ΡΠΊΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΉΠ΄Π΅Π½Π°, ΡΠΎΠ³Π΄Π°
Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΌΠ΅ΡΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΡΠ»ΡΠΊ ΡΠ»ΡΡΠ°Ρ ΠΈ ΡΡΠ»ΡΠΊ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ Π²
Π½Π°ΡΠ°Π»ΠΎ ΡΡΡΠΎΠΊΠΈ. ΠΠΎΠΌΠ°Π½Π΄Π° breaksw Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅
ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΠΏΠΎΡΠ»Π΅ endw. ΠΠ½Π°ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ²Π°Π»ΠΈΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΏΡΡ
ΠΌΠ΅ΡΠΊΠΈ ΠΈ ΠΌΠ΅ΡΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΡΠ»ΠΈ ΠΌΠ΅ΡΠΊΠ° Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ ΠΈ Π½Π΅Ρ
ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ endw.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ (ΡΡΡΠΎΠΊΠ°) case str1: ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π»ΠΎΠΌΠ°Π΅ΡΡΡ case str2: ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π»ΠΎΠΌΠ°Π΅ΡΡΡ ... ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π»ΠΎΠΌΠ°Π΅ΡΡΡ ΠΊΠΎΠ½Π΅Ρ
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh Π΅ΡΠ»ΠΈ ($ # argv == 0) ΡΠΎ echo "ΠΡΠ³ΡΠΌΠ΅Π½ΡΡ Π½Π΅ ΡΠΊΠ°Π·Π°Π½Ρ ... Π²ΡΡ ΠΎΠ΄" Π²ΡΡ ΠΎΠ΄ 1 Π΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ ($ argv [1]) case [yY] [eE] [sS]: echo ΠΡΠ³ΡΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠ²ΡΠΉ - Π΄Π°. Π»ΠΎΠΌΠ°Π΅ΡΡΡ case [nN] [oO]: echo ΠΡΠ³ΡΠΌΠ΅Π½Ρ ΠΎΠ΄ΠΈΠ½ - Π½Π΅Ρ. Π»ΠΎΠΌΠ°Π΅ΡΡΡ ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: echo ΠΠ΅ΡΠ²ΡΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ - Π½ΠΈ Π΄Π°, Π½ΠΈ Π½Π΅Ρ. Π»ΠΎΠΌΠ°Π΅ΡΡΡ ΠΊΠΎΠ½Π΅Ρ endif
Π‘ΠΊΡΠΈΠΏΡΡ Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ onintr ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΈ (CTRL-C)
ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ.Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π½Π° Π½Π°ΡΠ°Π»ΠΎ Π²ΡΠΏΠΈΡΠΊΠΈ
Ρ ΡΡΠΈΠΊΠ΅ΡΠΊΠΎΠΉ:
ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎΠΉ ΠΎΡΠΈΡΡΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Π²ΡΡ
ΠΎΠ΄Π°
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΡΠ΅ΡΠ²Π°Π½Π°.
ΡΡΠΈΠΊΠ΅ΡΠΊΠ° onintr
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh onintr Π·Π°ΠΊΡΡΡΡ Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ (1 == 1) ΡΡ ΠΎ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π·Π°ΠΏΡΡΠ΅Π½Π° ΡΠΏΠ°ΡΡ 2 ΠΊΠΎΠ½Π΅Ρ ΠΠ°ΠΊΡΡΡΡ: echo ΠΠΎΠ½Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
ΠΠΈΠΆΠ΅ ΠΎΠΏΠΈΡΠ°Π½Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° C Shell.
#! / bin / csh ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ opt = -l ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ x1 = 'ls $ opt' ΡΡ ΠΎ $ x1 ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ x2 = "ls $ opt" ΡΡ ΠΎ $ x2 ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅ΠΌ Π²ΡΠ²ΠΎΠ΄: ls $ opt ls -l
ΠΡΠΈΠΌΠ΅Ρ 2: ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
#! / bin / csh ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ls1 = 'Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ: [a-z] *' ΡΡ ΠΎ $ ls1 ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ls2 = "Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ: [a-z] *" ΡΡ ΠΎ $ ls2 ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π° (ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΡΠΉ): Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ: csh.html ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ man ΡΠ°Π·Π½ΠΎΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ: csh.html ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΡΠ°Π·Π½ΠΎΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ
ΠΠ±ΠΎΠ»ΠΎΡΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΡΡ
ΠΎΠ΄Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
Π² ΠΎΠ±ΡΠ°ΡΠ½ΡΡ
ΠΊΠ°Π²ΡΡΠΊΠ°Ρ
. ΠΡΠΎΡ Π²ΡΠ²ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ Π²
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠ°ΡΠ΅ΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½ ΠΊΠ°ΠΊ
ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ.
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ = `ΠΊΠΎΠΌΠ°Π½Π΄Π°`
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ date_fields = `date` ΡΡ ΠΎ $ date_fields echo $ date_fields [1] echo $ date_fields [2] ΠΏΠΎΠ»Π΅ foreach (`Π΄Π°ΡΠ°`) echo $ field ΠΊΠΎΠ½Π΅Ρ ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°: Π§Ρ, 9 ΠΌΠ°ΡΡΠ°, 22:25:45 HST 1995 Π§Ρ ΠΠ°Ρ Π§Ρ ΠΠ°Ρ 9 22:25:45 HST 1995 Π³.
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΈΠ±ΠΎ «$
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΡΠ΄ΡΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ ΠΈ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ «$
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ = $
ΠΡΠΈΠΌΠ΅Ρ:
#! / bin / csh echo -n ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅: ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ input = $
ΠΠ° ΡΡΠΎΠΌ ΡΡΠΎΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½.ΠΠ΅ΡΠ½ΡΡΡΡΡ ΠΊ
ΠΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅
ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² grass Valley :: ΠΡΠΈΠΌΠ΅ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² C #
ΠΠ»Π°Π²Π½Π°Ρ> API> AppServer API> ΠΡΠΈΠΌΠ΅ΡΡ> Π Π΅ΡΡΡΡΡ> ΠΡΠΈΠΌΠ΅ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² C #
ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π½Π° CS-Script — Π²Π΅Π±-ΡΠ°ΠΉΡ C # Script Engine.
CS-Script (ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠΈΡΡΡ ΠΊΠ°ΠΊ C-sharp script) — ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ CLR (Common Language Runtime), ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ECMA-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ C # Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ½ ΡΠΎΡΠ΅ΡΠ°Π΅Ρ Π² ΡΠ΅Π±Π΅ ΠΌΠΎΡΡ ΠΈ Π±ΠΎΠ³Π°ΡΡΡΠ²ΠΎ C # Ρ Π³ΠΈΠ±ΠΊΠΎΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π².
ΠΡΠΈΠΌΠ΅ΡΡ C #, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° CS-Script , ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΠΊΠΎΠ΄ K2, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° C #. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΡΡΡΡ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ DOS ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΡΠ°ΠΊ ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ:
C: \> cscs.exe PlayClip.cs
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈ ΠΎΠ±ΡΠ°Π·ΡΡ, Π²Π°ΠΌ ΡΠ½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΌΠ°ΡΠΈΠ½Ρ:
1. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΈΡΠ΅ΡΠ΅ ΠΊΠΎΠ΄ Π½Π° ΠΠ, Π° Π½Π΅ Π½Π° K2, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Control Point Π½Π° ΡΠ²ΠΎΠΉ ΠΠ.
2. ΠΠ°ΡΠ΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ CS-Script :
- Π‘ΠΊΠ°ΡΠ°ΡΡ cs-ΡΠΊΡΠΈΠΏΡ.zip. Π Π°ΡΠΏΠ°ΠΊΡΠΉΡΠ΅ Π΅Π³ΠΎ Π² Β«C: \ Program FilesΒ». ΠΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ Π½ΠΎΠ²ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«C: \ Program Files \ cs-scriptΒ».
- ΠΠ°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ «C: \ Program Files \ cs-script \ css_config.exe». ΠΡΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΡΠ΅Π΄Ρ ΠΈ Π²ΡΠ·ΠΎΠ²Π΅Ρ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΠ°ΠΊΡΡΡΡΒ».
- ΠΠ»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Β«C: \ Program Files \ cs-script \ config.batΒ» ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΠ΅Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡΒ» Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Β«ΠΠ±ΡΠΈΠ΅Β» Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΡΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡ Π»ΡΠ±ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ CS-Script.
3. (ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ) Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ, ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ Π΄Π»Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° (ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ: Notepad ++.)
4. Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Β«c: \ profileΒ», Π·Π°ΡΠ΅ΠΌ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ DOS Π·Π°ΠΏΡΡΡΠΈΡΠ΅: Β«cscs.exeΒ»
Summit Samples:
LivePlay.cs | ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌΡΠΉ Π²ΠΆΠΈΠ²ΡΡ ΠΊΠ»ΠΈΠΏ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ 0,5 ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΎΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠΈ. |
FlyingMixEffects.cs | ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΡΠ΅ΠΊΡΡ Β«Π»Π΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΠΌΠΈΠΊΡΠ°Β» ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ ΠΏΠ΅ΡΠ΅Π΄Π½Π΅Π³ΠΎ ΠΈ Π·Π°Π΄Π½Π΅Π³ΠΎ ΠΏΠ»Π°Π½Π° ΠΊΠ°Π½Π°Π»Π°. |
PlaylistMixEffects.cs | ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π°ΠΌΠΈ ΡΡΡΠ΅ΠΊΡΠΎΠ² ΠΌΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ² ΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ. |
ΠΡΠΈΠΌΠ΅ΡΡ: (ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ Π·Π΄Π΅ΡΡ, ΡΡΠΎΠ±Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π²ΡΠ΅ ΠΎΠ±ΡΠ°Π·ΡΡ)
Π€Π°ΠΉΠ» | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | ||
HelloWorld.cs | Π±Π°Π·ΠΎΠ²Π°Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° C # ΡΠΊΡΠΈΠΏΡΠ° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΡΡΡΠΎΠΊΠΈ, ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π°, ΠΏΠ΅ΡΠ°ΡΡ ΡΠ΅ΠΊΡΡΠ° ΠΈ Π²ΠΎΠ·Π²ΡΠ°Ρ ΠΊΠΎΠ΄Π° Π²ΡΡ ΠΎΠ΄Π° | ||
BasicK2Connection.cs | ΡΠΊΡΠΈΠΏΡ, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ ΡΠ°Π³ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ K2. ΠΠ½ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ. | ||
K2ScriptTemplate.cs | Π»ΡΡΡΠΈΠΉ ΡΠ°Π±Π»ΠΎΠ½ ΡΡΠ΅Π½Π°ΡΠΈΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ K2, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π² ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ. ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. | ||
GetSystemStatus.cs | ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΠ°ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ | ||
LogMessage.cs | Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ | ||
PlayClip.cs | Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΊΠ»ΠΈΠΏ | ||
RecordClip.cs | Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠ»ΠΈΠΏ | ||
ScheduledPlay.cs | Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΊΠ»ΠΈΠΏ Π² Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ | ||
ScheduledRecord.cs | Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠ»ΠΈΠΏ Π² Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ | ||
CopyClip.cs | ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ»ΠΈΠΏ | ||
DeleteClip.cs | ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ»ΠΈΠΏ | ||
TransferaClip.cs | ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΊΠ»ΠΈΠΏ | ||
GetVersion.cs | ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²Π΅ΡΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΡ | ||
GetDiskSpace.cs | ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅ | ||
GetChannelOwner.cs | ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ ΠΊΠ°Π½Π°Π»Π° | ||
GetAssetProperties. GetChannelProperties.cs | ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΊΠ°Π½Π°Π»Π° | ||
CreateBin.cs | ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠΎΡΠ·ΠΈΠ½Ρ | ||
GetXmlChanges.cs | ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ XML | ||
ClipCacheCalls.cs | Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ Π²ΡΠ·ΠΎΠ²Ρ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΡΡΠ° ΠΊΠ»ΠΈΠΏΠΎΠ² | ||
EnumerateVolumes.cs | ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΠΎΠΌΠΎΠ² | ||
MonitorTransfers.cs | ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° | ||
PlayList | |||
RecordAndRenameClip.cs | Π·Π°ΠΏΠΈΡΡ ΠΊΠ»ΠΈΠΏΠ°, ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠΏΠ° | ||
viewmovie.cs | ΠΏΡΠΎΡΠΌΠΎΡΡ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΡΠΈΠ»ΡΠΌΠ° | ||
GetTimecode.cs | ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ°ΠΉΠΌ-ΠΊΠΎΠ΄ ΠΏΠ»Π΅Π΅ΡΠ° | ||
InsertEditTwoHead.cs | Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°ΡΡ Π²ΡΡΠ°Π²ΠΊΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π²Π΅ Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π΄Π»Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ | ||
PlayerCreateSubclip.cs | ΡΠΎΠ·Π΄Π°ΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΊΠ»ΠΈΠΏ ΠΈΠ· ΠΊΠ»ΠΈΠΏΠ° | ||
MediaMgrCreateSubclip.cs | ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΠΈΠΏ ΠΈΠ· ΠΊΠ»ΠΈΠΏΠ°, ΠΠ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΠ΅Π»Ρ | ||
ImportDeleteTracks.cs | ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ, ΡΠ΄Π°Π»ΡΡΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ ΠΈ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²Π°ΡΡ Π΄ΠΎΡΠΎΠΆΠΊΠΈ Π² ΠΊΠ»ΠΈΠΏΠ΅ | .cs | ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ, Π·Π°ΠΌΠ΅Π½ΡΡΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΊΠ»ΠΈΠΏ. |
LoadSaveConfig. cs | ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈΠ· ΠΈΠ»ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅. | ||
SetAssetARC.cs | ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΡΡΠΎΡΠΎΠ½ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠΏΠ°. | ||
GenerateAsRunLog.cs | ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΆΡΡΠ½Π°Π» Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΡΠ΅ΠΌ Π°Π½Π°Π»ΠΈΠ·Π° ΡΠ°ΠΉΠ»Π° ΠΆΡΡΠ½Π°Π»Π° Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ ΠΊΠ»ΠΈΠΏΠΎΠ². | ||
DisplayPlayedAssets.cs | ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΠΈΠΌΠ΅Π½Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² Π² ΡΠΏΠΈΡΠΊΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ. | ||
GetSetTrackLabels.cs | ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΌΠ΅ΡΠΎΠΊ Π΄ΠΎΡΠΎΠΆΠ΅ΠΊ ΠΊΠ»ΠΈΠΏΠ°. | ||
GetInfoFromClipXML.cs | ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· XML-ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ»ΠΈΠΏΠ°. | ||
SplitAndCombineEdits.cs | ΠΊΠ°ΠΊ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠ»ΠΈΠΏΠ° |
|
ΠΡΠΈΠΌΠ΅ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π²
Π‘ΡΠ΅Π½Π°ΡΠΈΠΈ
ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π² Echoview, ΠΊΠΎΡΠΎΡΡΠ΅ Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Ρ Π±Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΠΈ Π²ΡΡΡΠ½ΡΡ.ΠΡΠΈ Π·Π°Π΄Π°ΡΠΈ Π²Π°ΡΡΠΈΡΡΡΡΡΡ ΠΎΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Echoview Π΄ΠΎ ΡΠΊΡΠΏΠΎΡΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ . ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ ΡΡΡΠΈΠ½Π½ΡΡ Π·Π°Π΄Π°Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π²Π°ΡΠ΅ Π΄ΡΠ°Π³ΠΎΡΠ΅Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
Π‘ΡΠ΅Π½Π°ΡΠΈΠΈ
ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Ρ Visual Basic, Python, Java, C ++, MATLAB ΠΈΠ»ΠΈ R, ΠΈ ΡΡΠΎ Π»ΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ . ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π° Π½Π° Π΄ΡΡΠ³ΠΎΠΌ ΡΠ·ΡΠΊΠ΅, ΠΊΠΎΡΠΎΡΡΠΌ Π²Ρ Ρ ΠΎΡΠ΅Π»ΠΈ Π±Ρ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ, ΠΈΠ»ΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΠΎ Π»ΡΠ±ΠΎΠΌΡ Π°ΡΠΏΠ΅ΠΊΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², ΡΠ²ΡΠΆΠΈΡΠ΅ΡΡ Ρ Π½Π°ΠΌΠΈ. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π½Π°ΡΠ° Π³ΡΡΠΏΠΏΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ ΠΏΠΎΠΌΠΎΡΡ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Π½Π° ΡΠ·ΡΠΊΠ°Ρ , ΠΎΡΠ»ΠΈΡΠ½ΡΡ ΠΎΡ Visual Basic ΠΈΠ»ΠΈ C ++.
ΠΠΎΠ΄ΡΠ»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Ρ Echoview.
Π£ΡΠ΅Π±Π½ΠΎΠ΅ ΠΏΠΎΡΠΎΠ±ΠΈΠ΅ Β«ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² COMΒ» Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Β«ΠΠ°Π³ΡΡΠ·ΠΊΠΈΒ».
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Echoview Software, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΊΠΎΠ΄, ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ Echoview Π½Π° Π΄ΡΡΠ³ΠΈΡ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°Ρ . ΠΡΠΌΠ°ΠΉΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ ΠΊΠ°ΠΊ ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ COM-ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Echoview ΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ, ΠΏΡΠΈΠ·Π²Π°Π½Π½ΡΡ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π²Π°ΡΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π². ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°, ΡΠ΅Π»ΡΠΎΠΊ ΠΏΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π½ΠΈΠΆΠ΅ ΡΡΡΠ»ΠΊΠ°ΠΌ ΡΡΠ΅Π½Π°ΡΠΈΡ Π»ΠΈΠ±ΠΎ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² Π²Π°ΡΠ΅ΠΌ Π²Π΅Π±-Π±ΡΠ°ΡΠ·Π΅ΡΠ΅, Π»ΠΈΠ±ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ.ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Β«Π©Π΅Π»ΠΊΠ½ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈΒ»> Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡβ¦Β», ΡΡΠΎΠ±Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½Π° ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ Π² ΡΠ»ΡΠΆΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Echoview, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΡΡΡΠ»ΠΊΡ Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π° Π½Π° Π²Π°Ρ ΡΠ°ΠΉΡ.
Π‘ΠΊΡΠΈΠΏΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Ρ Echoview
EV script 001 — ΠΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ EV Π΄Π»Ρ ΠΏΠ°ΠΏΠΊΠΈ data.vbs (VBScript)
- Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Echoview ΠΏΡΡΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΡΡΡΡΡ Π΄Π°Π½Π½ΡΡ
- Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΡΡ ΠΎΠΊΠΎΠ½ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° (Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° ΠΏΠ°ΠΏΠΎΠΊ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ Ρ. Π.)
- ΠΠΊΡΠΏΠΎΡΡ ΡΡΡΠΎΠΊΠΈ
- Π¦ΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² Visual Basic (ΡΠ΄ΡΠΎ ΡΡΠ΅Π½Π°ΡΠΈΡ — ΡΠΈΠΊΠ» Β«ForΒ» — Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΡΠΎΠΊΠ°Ρ 302-327)
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 002 — ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»Π°Ρ EV. Vbs (VBScript)
- ΠΡΠ±ΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² ev
- ΠΡΠ±ΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ev
- ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ΅ΡΠΊΠΈ)
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 003 — ΠΡΠ±ΠΎΡ ΠΈ ΡΠΊΡΠΏΠΎΡΡ ΡΡΡΠΎΠΊ Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»Π°Ρ EV Π² ΠΏΠ°ΠΏΠΊΠ΅.vbs (VBScript)
- ΠΡΠΊΡΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°ΠΉΠ» EV ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ
- ΠΡΠ±ΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
- ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΡΡΡΠΎΠΊΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ
- ΠΠΊΡΠΏΠΎΡΡ ΡΡΡΠΎΠΊ Π² ΡΠΎΡΠΌΠ°Ρ csv
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ» EV
- ΠΠΎΠ²ΡΠΎΡΠΈΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² EV Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 004 — ΠΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π°Π½Π½ΡΡ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ EV Π² ΠΏΠ°ΠΏΠΊΠ΅. Vbs (VBScript)
- ΠΡΠΊΡΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°ΠΉΠ» EV ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ
- ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π½ΠΎΠ²ΡΡ Π·Π°ΠΏΠΈΡΡ Π² Π‘Π²ΠΎΠΉΡΡΠ²Π° ΡΠ°ΠΉΠ»Π° EV> Π€Π°ΠΉΠ»Ρ EV> Π Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π°Π½Π½ΡΡ
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ» EV
- ΠΠΎΠ²ΡΠΎΡΠΈΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² EV Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 005 — ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² EVI Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² EV Π² ΠΏΠ°ΠΏΠΊΠ°Ρ .vbs (VBScript)
- ΠΡΠΊΡΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°ΠΉΠ» EV ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ
- ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΈΡΠ°ΠΉΡΠ΅ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°ΠΉΠ»Π΅ EV Π΄Π»Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² EVI
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ» EV
- ΠΠΎΠ²ΡΠΎΡΠΈΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² EV Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅
- ΠΠΎΠ²ΡΠΎΡΠΈΡΠ΅ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² EV Π² ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΠ°Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ
EV ΡΠΊΡΠΈΠΏΡ 006 — ΠΠΌΠΏΠΎΡΡ, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡ ΡΡΡΠΎΠΊΠΈ. Vbs (VBScript)
- ΠΡΠΊΡΡΡΡ Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» EV
- ΠΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠΎΠΊΡ.ΠΠΎΠ³Π΄Π° ΡΡΡΠΎΠΊΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡΡΡΡ, ΠΈΠΌ Π΄Π°Π΅ΡΡΡ ΠΈΠΌΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Line n).
- ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΡΠΎΠΊΡ
- ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΡΠΎΠΊΡ
- ΠΠ°ΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΡΡ ΡΡΡΠΎΠΊΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 007 — ΠΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» EV Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π±Π»ΠΎΠ½Π°, ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠΊΡΠΏΠΎΡΡΠ° ΡΠ»Π΅Π΄ΠΎΠ² ΡΡΠ±Ρ (VBScript)
- Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» EV ΠΈΠ· ΡΠ°Π±Π»ΠΎΠ½Π°
- ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ
- ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΠΎΠ² ΡΡΠ±Ρ ΠΏΠΎ Π½ΠΎΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ
- ΠΠ½Π°Π»ΠΈΠ· ΠΎΠ±Π»Π°ΡΡΠΈ ΡΠΊΡΠΏΠΎΡΡΠ½ΡΡ ΡΡΠ°Π΅ΠΊΡΠΎΡΠΈΠΉ
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
- ΠΠΎΠ²ΡΠΎΡΠΈΡΡ Π΄Π»Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π°Π½Π½ΡΡ
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 008 — ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ EV.vbs (VBScript)
- ΠΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
- Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
- ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ Π΄Π»Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 009 — ΠΠΌΠΏΠΎΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ°ΠΉΠ» EV. Vbs (VBScript)
- ΠΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
- ΠΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° EV
- ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Ρ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 010 — ΠΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» EV Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π±Π»ΠΎΠ½Π°, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ , ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ.py (Python)
- Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» EV ΠΈΠ· ΡΠ°Π±Π»ΠΎΠ½Π°
- ΠΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π΄Π°Π½Π½ΡΡ Π² ΠΏΠ°ΠΏΠΊΡ
- ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π΄Π½Π°
- Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΉ Ρ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π³Π»ΡΠ±ΠΈΠ½ΠΎΠΉ ΠΈ Π΄Π½ΠΎΠΌ
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 011 — Π£ΠΏΠ°ΠΊΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ» EV ΠΈ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΎΠ΄ΠΈΠ½ ΡΠΎΠΌ.m (Matlab)
- ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» EV
- ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΡΠ°ΠΉΠ» EV
- Π‘ΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΡΠ°ΠΉΠ» EV ΠΈ ΡΠ°ΠΉΠ»Ρ Π΄Π°Π½Π½ΡΡ Π² Π½ΠΎΠ²ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ
EV ΡΠΊΡΠΈΠΏΡ 012 — ΠΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ», Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ , ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π°ΡΡΡΠΎΠ΅ΠΊ, ΡΠΊΡΠΏΠΎΡΡ.r (R)
- ΠΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ»
- ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ Π΄Π°Π½Π½ΡΡ
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π»ΠΈΠ½ΠΈΡ Ρ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π³Π»ΡΠ±ΠΈΠ½ΠΎΠΉ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π»ΠΈΠ½ΠΈΡ
- ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ
- ΠΠΊΡΠΏΠΎΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 013 — ΠΠΊΡΠΏΠΎΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΡ ΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² EV Π² ΠΏΠ°ΠΏΠΊΠ΅. Vbs (VBScript)
- ΠΡΠΊΡΡΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π΄Π»Ρ Π²Π²ΠΎΠ΄Π° ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² EV
- ΠΡΠΊΡΡΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π΄Π»Ρ Π²Π²ΠΎΠ΄Π° ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
- ΠΠΊΡΠΏΠΎΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ EV Π² ΡΠ°ΠΉΠ»Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ ΡΠ°ΠΉΠ» EV
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 014 — ΠΠΊΡΠΏΠΎΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΡ ΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² EV Π² ΠΏΠ°ΠΏΠΊΠ΅.ΠΌ (Matlab)
- ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ΅Π½Π°ΡΠΈΡ EV Π² Matlab 013
EV ΡΠΊΡΠΈΠΏΡ 015 — ΠΡΠΊΡΡΡΡ ΠΈ Π·Π°ΠΊΡΡΡΡ Echoview.txt (Perl — ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° .pl ΠΏΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ)
- ΠΡΠΊΡΡΡΡ Echoview
- ΠΠΎΠΌΠ΅Ρ Π²Π΅ΡΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ° Echoview
- ΠΠ°ΠΊΡΡΡΡ Echoview
Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ EV 016 — ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ COM ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ . Vbs (VBScript)
- ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» EV Ρ ΠΏΠΎΠΌΠΎΡΡΡ COM
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π²ΡΠ΅ Π°ΠΊΡΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ COM
- Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΠΈ Π·Π°ΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» EV Ρ ΠΏΠΎΠΌΠΎΡΡΡ COM
Π‘ΠΊΡΠΈΠΏΡΡ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΡΠ°ΠΉΡΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ»ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Echoview
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Echoview Software Π½Π΅ Π½Π΅ΡΠ΅Ρ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ Π·Π° ΡΠΊΡΠΈΠΏΡΡ, ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° Π΄ΡΡΠ³ΠΈΡ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°Ρ .
ΠΠ°ΠΊΠ΅Ρ R EchoviewR — Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ΅ΠΆΠ΄Ρ Echoview ΠΈ R Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² COM
- EchoviewR — ΡΡΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΈ ΠΎΠ±ΡΠΈΡΠ½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΠΊΠ°ΠΊ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ΅ΠΆΠ΄Ρ R ΠΈ Echoview, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ ΠΠ²ΡΡΡΠ°Π»ΠΈΠΉΡΠΊΠΈΠΌ Π°Π½ΡΠ°ΡΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΎΡΠ΄Π΅Π»ΠΎΠΌ.
R & Echoview
- Π Π°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΠ²Π΅ΡΡ ΠΈ ΠΏΡΠΈΠ΅ΠΌΡ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ COM Echoview Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ R.
saildrone-2018
- ΠΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ Π°Π½Π°Π»ΠΈΠ·Ρ Π΄Π°Π½Π½ΡΡ Simrad WBAT-mini, ΡΠΎΠ±ΡΠ°Π½Π½ΡΡ Ρ Saildrone, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² Levine et al.(2020).
IMOS-Bioacoustics
ΠΠΎΠ»ΠΎΠ»Ρ — 6.Ρ. ΠΡΠΈΠΌΠ΅ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π²
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡ: ΠΌΠΈΠ³Π°Π΅Ρ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π·Π°ΡΡΠ°Π²ΠΈΡ ΠΊΡΠ°ΡΠ½ΡΠΉ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄ Π½Π° Maestro ΠΌΠΈΠ³Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ:
# ΠΡΠ°ΡΠ½ΡΠΉ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄ ΠΌΠΈΠ³Π°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ. Π½Π°ΡΠΈΠ½Π°ΡΡ led_on 100 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° led_off 900 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΉΡΠΈ ΡΠ΅ΡΠ΅Π· ΡΡΠΎΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ Π΅ΡΠ΅ ΡΠΎ ΡΡΠ΅Π½Π°ΡΠΈΡΠΌΠΈ Π² Maestro.Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«100Β» ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ ΡΠΈΡΠ»ΠΎ 100 Π² ΡΡΠ΅ΠΊ, Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° DELAY ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΎ ΡΠΈΡΠ»ΠΎ. Π ΡΠ·ΡΠΊΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² Maestro Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π²ΡΠ΅Π³Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Ρ Π² ΡΡΠ΅ΠΊ ΠΏΠ΅ΡΠ΅Π΄ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ, ΡΡΠΎ Π·Π°ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ·ΡΠΊ ΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡΡΡΠ°Π»ΡΠΌ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ·ΡΠΊΠ°ΠΌΠΈ. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²ΡΡΠ΅:
# ΠΡΠ°ΡΠ½ΡΠΉ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄ ΠΌΠΈΠ³Π°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.Π½Π°ΡΠΈΠ½Π°ΡΡ 900 100 led_on Π·Π°Π΄Π΅ΡΠΆΠΊΠ° led_off Π·Π°Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ
Π§ΠΈΡΠ»Π° ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΡΡΠ΅ΠΊ Π² Π½Π°ΡΠ°Π»Π΅ ΡΠΈΠΊΠ»Π°, Π° Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΏΠΎΠ·ΠΆΠ΅ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π·Π΄Π΅ΡΡ ΡΠΈΡΠ΅Π»: 900 ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΡΡΠ΅ΠΊ ΡΠ½Π°ΡΠ°Π»Π° , ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ .
ΠΡΠΎΡΡΠ°Ρ ΡΠ΅ΡΠ²ΠΎ-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ 0 Π² ΠΏΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΡΠΈΠΊΠ»Π΅.
# ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ΅ΡΠ²ΠΎ 0 Π² ΠΏΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΡΠΈΠΊΠ»Π΅.Π½Π°ΡΠΈΠ½Π°ΡΡ 4000 0 ΡΠ΅ΡΠ²ΠΎ # ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΡΠ²ΠΎ ΠΎΡ 0 Π΄ΠΎ 1,00 ΠΌΡ 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° 5000 0 ΡΠ΅ΡΠ²ΠΎ # 1,25 ΠΌΡ 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° 6000 0 ΡΠ΅ΡΠ²ΠΎ # 1,50 ΠΌΡ 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° 7000 0 ΡΠ΅ΡΠ²ΠΎ # 1,75 ΠΌΡ 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° 8000 0 ΡΠ΅ΡΠ²ΠΎ # 2,00 ΠΌΡ 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ , Π° Π½Π΅ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ, ΡΡΠΎΠ±Ρ ΡΡΠΎΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΡΠ°Π±ΠΎΡΠ°Π». Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ Maestro Π½Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅Ρ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΡΠ΅ΡΠ²ΠΎ Π²ΡΡ ΠΎΠ΄Ρ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ ΡΡΠ°ΡΡΠΎΠ²ΡΠΉ Π±Π°ΠΉΡ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° ΡΠΊΠ°Π·Π°Π½Ρ Π² Π΅Π΄ΠΈΠ½ΠΈΡΠ°Ρ 0.25 ΠΌΠΊΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 4000 ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ 1 ΠΌΡ. Π’Π΅ΠΊΡΡ ΠΏΠΎΡΠ»Π΅ # — ΡΡΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ; ΠΎΠ½ Π½Π΅ Π·Π°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π΄Π»Ρ Π·Π°ΠΌΠ΅ΡΠΎΠΊ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°. Π₯ΠΎΡΠΎΡΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π΄Π»Ρ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΠΠΠΠ ΠΠΠ; Π±Π΅Π· Π½ΠΈΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΆΠ΄Π°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΡΠ²ΠΎ-ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ, Π²ΡΠΏΠΎΠ»Π½ΡΡ ΡΠΈΠΊΠ» ΡΠΎΡΠ½ΠΈ ΡΠ°Π· Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.
Π‘ΠΆΠ°ΡΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²ΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 58 Π±Π°ΠΉΡΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°: 11 Π±Π°ΠΉΡΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° ΠΈ 3 Π±Π°ΠΉΡΠ° Π΄Π»Ρ ΡΠΈΠΊΠ»Π°.ΠΡΠΈ ΡΠ°ΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π΄ΠΎ 92 ΡΠ΅ΡΠ²ΠΎΠΏΠΎΠ·ΠΈΡΠΈΠΉ Π² 1024-Π±Π°ΠΉΡΠΎΠ²ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Micro Maestro ΠΈΠ»ΠΈ 744 ΡΠ΅ΡΠ²ΠΎΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π² 8192-Π±Π°ΠΉΡΠΎΠ²ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Mini Maestros. Π§ΡΠΎΠ±Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ ΠΏΠ°ΠΌΡΡΡ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠΆΠ°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅ΠΌ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Β«0 servo 500 delayΒ» Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ ΠΈΡ Π² ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΠΌΠ΅ΡΡΠ°. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΡΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΊΠΎΠ΄ ΠΈ ΡΠΏΡΠΎΡΠ°Π΅Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄ΡΡΠΈΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ Π²ΡΠ΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
# ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ΅ΡΠ²ΠΎ 0 Π² ΠΏΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΡΠΈΠΊΠ»Π΅. Π½Π°ΡΠΈΠ½Π°ΡΡ 4000 Π Π°ΠΌΠΊΠ° 5000 Π Π°ΠΌΠΊΠ° 6000 Π Π°ΠΌΠΊΠ° 7000 Π Π°ΠΌΠΊΠ° 8000 Π Π°ΠΌΠΊΠ° ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΏΠΎΠ΄ΡΠ°ΠΌΠ½ΠΈΠΊ 0 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΎΠ·Π²ΡΠ°Ρ
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠΎΠΊΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠ΅Π½Π°ΡΠΈΡ Π΄ΠΎ 31 Π±Π°ΠΉΡΠ°: 4 Π±Π°ΠΉΡΠ° Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΈ 11 Π±Π°ΠΉΡΠΎΠ² ΡΠ»ΡΠΆΠ΅Π±Π½ΡΡ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΡΠΈΠΊΠ»Π° ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ FRAME. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΉΡΠΈ Π΄Π°Π»ΡΡΠ΅: ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π΄Π»Ρ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π² ΡΡΠ΅ΠΊ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ 3 Π±Π°ΠΉΡΠ°: ΠΎΠ΄ΠΈΠ½ Π±Π°ΠΉΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ Π΄Π²Π° Π΄Π»Ρ Π΄Π²ΡΡ Π±Π°ΠΉΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°.Π§ΠΈΡΠ»Π° ΠΎΡ 0 Π΄ΠΎ 255 ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½Ρ Π² ΡΡΠ΅ΠΊ Π²ΡΠ΅Π³ΠΎ Π΄Π²ΡΠΌΡ Π±Π°ΠΉΡΠ°ΠΌΠΈ. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π² Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½Π°ΠΌ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° 0,25 ΠΌΠΊΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΠ΅ Π½Π°ΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΊΡΠ°ΡΠ½Ρ 100. Π’ΠΎΠ³Π΄Π° ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅Π½ΡΡΠΈΠ΅ ΡΠΈΡΠ»Π° Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π±Π°ΠΉΡΠ°:
# ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ΅ΡΠ²ΠΎ 0 Π² ΠΏΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΡΠΈΠΊΠ»Π΅. Π½Π°ΡΠΈΠ½Π°ΡΡ 40 ΠΊΠ°Π΄ΡΠΎΠ² 50 ΠΊΠ°Π΄ΡΠΎΠ² 60 ΠΊΠ°Π΄ΡΠΎΠ² 70 ΠΊΠ°Π΄Ρ 80 ΠΊΠ°Π΄Ρ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ # Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΠΊΠ°Π΄Ρ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π² Π΅Π΄ΠΈΠ½ΠΈΡΠ°Ρ 25 us ΠΏΠΎΠ΄ΡΠ°ΠΌΠ½ΠΈΠΊ 100 ΡΠ°Π· 0 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΎΠ·Π²ΡΠ°Ρ
ΠΠ»ΠΈΠ½Π° ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ 29 Π±Π°ΠΉΡΠΎΠ², ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ 3 Π±Π°ΠΉΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΈ 14 Π±Π°ΠΉΡΠΎΠ² ΡΠ»ΡΠΆΠ΅Π±Π½ΡΡ Π΄Π°Π½Π½ΡΡ .ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°ΠΊΡΡ ββΠΆΠ΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ, Π΅ΡΠ»ΠΈ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ SERVO_8BIT, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡΠΎΠ²ΡΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΠΎΡ 0 Π΄ΠΎ 254. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΉΡΠΈ Π΅ΡΠ΅ ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ»ΠΎΠΆΠΈΠ² Π²ΡΠ΅ ΡΠΈΡΠ»Π° Π²ΠΌΠ΅ΡΡΠ΅:
# ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ΅ΡΠ²ΠΎ 0 Π² ΠΏΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΡΠΈΠΊΠ»Π΅. Π½Π°ΡΠΈΠ½Π°ΡΡ 80 70 60 50 40 ΡΠ°ΠΌΠ° ΡΠ°ΠΌΠ° ΡΠ°ΠΌΠ° ΡΠ°ΠΌΠ° ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ # Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΠΊΠ°Π΄Ρ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π² Π΅Π΄ΠΈΠ½ΠΈΡΠ°Ρ 25 us ΠΏΠΎΠ΄ΡΠ°ΠΌΠ½ΠΈΠΊ 100 ΡΠ°Π· 0 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΎΠ·Π²ΡΠ°Ρ
ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΠΉΠ΄Π΅ΡΠ΅ ΡΠ΅ΡΠ΅Π· ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²Π΅ΡΡΠΈΠΈ, Π²Ρ ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅, ΡΡΠΎ Π²ΡΠ΅ ΠΏΡΡΡ ΡΠΈΡΠ΅Π» ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΡΡΠ΅ΠΊ Π·Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π³: ΡΡΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΈΡΠ΅Π» Π² ΡΡΠ΅ΠΊ.ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΈΡΠ΅Π» ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ ΠΌΠ΅ΡΡΠΎ: ΡΠ΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ ΠΎΡΡΠ°Π»ΠΎΡΡ Π²ΡΠ΅Π³ΠΎ 26 Π±Π°ΠΉΡ. Π’ΠΎΠ»ΡΠΊΠΎ 12 Π±Π°ΠΉΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ 5 ΠΊΠ°Π΄ΡΠΎΠ², Π² ΡΡΠ΅Π΄Π½Π΅ΠΌ 2,4 Π±Π°ΠΉΡΠ° Π½Π° ΠΊΠ°Π΄Ρ. ΠΠ΅ΡΠΎΡΡΠ½ΠΎ, ΡΡΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΠΎ — Π΄ΡΠ±Π»ΠΈΡΡΡ ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ, ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ 420 ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΉ Π² 1024-Π±Π°ΠΉΡΠΎΠ²ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Micro Maestro. ΠΠ΄Π½Π°ΠΊΠΎ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ Π΅ΡΠ΅ ΠΌΠ΅Π½ΡΡΠ΅. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠΎΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ 31 ΠΊΠ°Π΄Ρ Π΄Π»Ρ ΠΏΠ»Π°Π²Π½ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Π²ΠΏΠ΅ΡΠ΅Π΄ ΠΈ Π½Π°Π·Π°Π΄:
# ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅Ρ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ ΡΠΈΠ½ΡΡΠΎΠΈΠ΄Π°Π»ΡΠ½ΠΎ ΠΎΡ 1 Π΄ΠΎ 2 ΠΌΡ.Π½Π°ΡΠΈΠ½Π°ΡΡ 60 64 68 71 74 77 79 80 80 79 78 76 73 70 66 62 58 54 50 47 44 42 41 40 40 41 43 46 49 52 56 all_frames ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ sub all_frames Π½Π°ΡΠΈΠ½Π°ΡΡ Π³Π»ΡΠ±ΠΈΠ½Π° ΠΏΠΎΠΊΠ° 100 ΡΠ°Π· 0 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ 100 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ Π²ΠΎΠ·Π²ΡΠ°Ρ
Π ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π° ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°Π»ΠΈ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ FRAME, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ DEPTH Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΊΠ°Π΄ΡΠΎΠ² ΠΈΠ· ΡΡΠ΅ΠΊΠ° Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΎΡΡΠ°Π½Π΅ΡΡΡ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ°Π΄ΡΠ°. ΠΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ 34 Π±Π°ΠΉΡΠ° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ 31 ΠΊΠ°Π΄ΡΠ°, Π² ΡΡΠ΅Π΄Π½Π΅ΠΌ Π²ΡΠ΅Π³ΠΎ 1,1 Π±Π°ΠΉΡΠ° Π½Π° ΠΊΠ°Π΄Ρ. ΠΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ 900 ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΉ Π² ΠΏΠ°ΠΌΡΡΠΈ Micro Maestro, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠ»Π°Π²Π½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ GET_MOVING_STATE
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ»Π°Π²Π½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Maestro. ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ±ΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π²Ρ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ°Π΄ΡΠ°ΠΌΠΈ, ΡΡΠΎΠ±Ρ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ Π΄ΠΎΡΡΠΈΠ³ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ GET_MOVING_STATE Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ»Π°Π²Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²ΠΌΠ΅ΡΡΠΎ DELAY:
# Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΠ»Π°Π²Π½ΠΎΠ³ΠΎ # Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΏΠ΅ΡΠ΅Π΄ ΠΈ Π½Π°Π·Π°Π΄ ΠΎΡ 1 Π΄ΠΎ 2 ΠΌΡ.3 0 ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ 30 0 ΡΠΊΠΎΡΠΎΡΡΡ Π½Π°ΡΠΈΠ½Π°ΡΡ 4000 0 ΡΠ΅ΡΠ²ΠΎ # ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΡΠ²ΠΎ ΠΎΡ 0 Π΄ΠΎ 1,00 ΠΌΡ moving_wait 8000 0 ΡΠ΅ΡΠ²ΠΎ # 2,00 ΠΌΡ moving_wait ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ sub moving_wait Π½Π°ΡΠΈΠ½Π°ΡΡ get_moving_state ΠΏΠΎΠΊΠ° # ΠΏΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡΠ΅, ΠΏΠΎΠΊΠ° ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π½Π΅Ρ Π΄Π²ΠΈΠ³Π°ΡΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ Π²ΠΎΠ·Π²ΡΠ°Ρ
GET_MOVING_STATE Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ 1, Π΅ΡΠ»ΠΈ Π΅ΡΡΡ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄ΠΈΠ½ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΈΠ»ΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ, Π²ΡΠ΅ Π΅ΡΠ΅ Π΄Π²ΠΈΠΆΡΡΠΈΠΉΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Ρ ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠΆΠ΄Π°ΡΡΡΡ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²ΡΠ΅Π³ΠΎ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΡΠ°Π³Ρ ΡΠΊΡΠΈΠΏΡΠ°. .
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄Π° Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π°ΠΌΠΈ
ΠΠ°ΠΆΠ½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ Maestro ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ Ρ Π΄Π°ΡΡΠΈΠΊΠΎΠ², ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΉ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ². Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠΎΠΌΠ΅ΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π°. Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠΎΠΌΠ΅ΡΡ, ΡΡΠΎΠ±Ρ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ 5 Π ΠΈ 0, Ρ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΌ Π²ΡΠ²ΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΌ ΠΊ ΠΊΠ°Π½Π°Π»Ρ 1. ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ ΠΊΠ°Π½Π°Π» 1 ΠΊΠ°ΠΊ Π²Ρ ΠΎΠ΄ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΠΈΠ³Π½Π°Π» Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Β«Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅Β» Π² Π¦Π΅Π½ΡΡΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Maestro.ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΎΡ 0 Π΄ΠΎ 255 ΠΌΠΊΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΡΠ΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠΎΠΌΠ΅ΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ Π² Π΄ΡΡΠ³ΡΡ. Π Π²Π°ΡΠ΅ΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΡΡΠΎΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΡΠ»Π°ΠΌ ΠΎΡ 0 Π΄ΠΎ 1023. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ ΡΠΈΡΠ»ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π΄ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π°, Π° Π·Π°ΡΠ΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° Π½Π° ΡΡΠΎ ΡΠΈΡΠ»ΠΎ, Π²ΡΠ΅ Π² ΡΠΈΠΊΠ»Π΅:
# Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΅ΡΠ²ΠΎ 0 Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄Π°. Π½Π°ΡΠΈΠ½Π°ΡΡ 1 get_position # ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±Π°Π½ΠΊΠ°, 0-1023 4 ΡΠ°Π·Π° 4000 ΠΏΠ»ΡΡ # ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠΉΡΠ΅ Π΄ΠΎ 4000-8092, ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 1-2 ΠΌΡ 0 ΡΠ΅ΡΠ²ΠΎ # ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΡΠ²ΠΎ 0 Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Ρ ΠΎΡΠ΅ΡΡ, ΡΡΠΎΠ±Ρ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠ» Π² Π΄ΠΈΡΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:
# Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ Π½Π° 4000, 6000 ΠΈΠ»ΠΈ 8000 Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄Π°.Π½Π°ΡΠΈΠ½Π°ΡΡ 1 get_position # ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±Π°Π½ΠΊΠ°, 0-1023 dup 300 less_than Π΅ΡΠ»ΠΈ 4000 # ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ 4000 Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ 0-299 Π΅ΡΠ΅ dup 600 less_than Π΅ΡΠ»ΠΈ 6000 # ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ 6000 Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ 300-599 Π΅ΡΠ΅ 8000 # ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ 8000 Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ 600-1023 endif endif 0 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ drop # ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΠΊΠΎΠΏΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π±Π°Π½ΠΊΠ° ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΡΠ΅Π½ΡΠΈΠΎΠΌΠ΅ΡΡ Π±Π»ΠΈΠ·ΠΎΠΊ ΠΊ 300 ΠΈΠ»ΠΈ 600, ΡΡΠΌ ΠΏΡΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΎ-ΡΠΈΡΡΠΎΠ²ΠΎΠΌ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ Π±ΡΠ΄Π΅Ρ Π±Π΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ½ΠΎ ΠΏΡΡΠ³Π°ΡΡ Π²ΠΏΠ΅ΡΠ΅Π΄ ΠΈ Π½Π°Π·Π°Π΄.ΠΡΡΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Ρ Π³ΠΈΡΡΠ΅ΡΠ΅Π·ΠΈΡΠΎΠΌ:
# Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ Π½Π° 4000, 6000 ΠΈΠ»ΠΈ 8000 Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄Π° Ρ Π³ΠΈΡΡΠ΅ΡΠ΅Π·ΠΈΡΠΎΠΌ. Π½Π°ΡΠΈΠ½Π°ΡΡ 4000 0300 servo_range 6000 300 600 Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 8000600 1023 servo_range ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ # ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅:servo_range # ΠΡΠ»ΠΈ Π±Π°Π½ΠΊ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ low ΠΈ high, # ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅ΡΠ²ΠΎ 0 Π² ΠΏΠΎΠ·ΠΈΡΠΈΠΈ, ΠΏΠΎΠΊΠ° Π³ΠΎΡΡΠΎΠΊ Π½Π΅ Π²ΡΠΉΠ΄Π΅Ρ ΠΈΠ· ΡΡΠΎΠ³ΠΎ # Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, Ρ Π³ΠΈΡΡΠ΅ΡΠ΅Π·ΠΈΡΠΎΠΌ. sub servo_range Π³ΠΎΡΡΠΎΠΊ 2 Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅_ΡΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡΠ½ΠΎ_Π½Π΅ #> = Π½ΠΈΠ·ΠΊΠΈΠΉ Π³ΠΎΡΡΠΎΠΊ 2 Π²ΡΠ±ΡΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅_ΡΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅_Π½Π΅ # <= Π²ΡΡΠΎΠΊΠΎΠ΅ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅_ΠΈ Π΅ΡΠ»ΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡ Π±Π°Π½ΠΊ 2 Π²ΡΠ±ΠΈΡΠ°Π΅Ρ 10 ΠΌΠΈΠ½ΡΡ ΠΌΠ΅Π½ΡΡΠ΅_ ΡΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅_Π½Π΅ #> = Π½ΠΈΠ·ΠΊΠΎΠ΅ - 10 Π±Π°Π½ΠΊ 2 Π²ΡΠ±ΠΈΡΠ°Π΅Ρ 10 ΠΏΠ»ΡΡ Π±ΠΎΠ»ΡΡΠ΅_ΡΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅_Π½Π΅ # <= Π²ΡΡΠΎΠΊΠΎΠ΅ + 10 Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅_ΠΈ ΠΏΠΎΠΊΠ° 2 Π²ΡΠ±ΡΠ°ΡΡ 0 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ endif ΠΊΠ°ΠΏΠ»Ρ ΠΊΠ°ΠΏΠ»Ρ ΠΊΠ°ΠΏΠ»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠΉ Π³ΠΎΡΡΠΎΠΊ 1 get_position Π²ΠΎΠ·Π²ΡΠ°Ρ
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΡΠ΄Π° ΠΈΠ΄ΡΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π°, Π·Π°ΡΠ΅ΠΌ ΠΎΠ½ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ, ΠΏΠΎΠΊΠ° ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ ΠΏΠΎΠΊΠΈΠ½Π΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠΈΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄.ΠΠΎΠΊΠ° ΡΠ°Π·Π½ΠΈΡΠ° (10 Π² ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅) Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΌΠ°, ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΠΏΡΡΠΆΠΊΠΈ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΡΠ²ΠΎΠΉ ΠΏΠΎΡΠ΅Π½ΡΠΈΠΎΠΌΠ΅ΡΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ· ΠΊΠ°Π½Π°Π»ΠΎΠ² Ρ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΡΠΌ Π²Ρ ΠΎΠ΄ΠΎΠΌ (ΠΊΠ°Π½Π°Π»Ρ 0β11). ΠΡ ΠΎΠ΄Ρ Π½Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΠΊΠ°Π½Π°Π»Π°Ρ ΡΠΈΡΡΠΎΠ²ΡΠ΅.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π°ΠΌΠΈ
ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΠΊ Maestro ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² Π²Π°ΡΠ΅ΠΌ ΡΠΊΡΠΈΠΏΡΠ΅. ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π½ΠΈΠΆΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅Ρ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ ΡΠ΅ΡΠ΅Π· Π·Π°ΡΠ°Π½Π΅Π΅ Π·Π°Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΡΠ°Π³Ρ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ.ΠΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠ°Π½Π°Π» 0 Π΄Π»Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΊΠ°Π½Π°Π» 1 Π΄Π»Ρ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π°.
ΠΠ°Π½Π°Π» ΠΊΠ½ΠΎΠΏΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π½Π°ΡΡΡΠΎΠ΅Π½ ΠΊΠ°ΠΊ Π²Ρ ΠΎΠ΄ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½. Π‘ΠΌ. Π Π°Π·Π΄Π΅Π» 7.b Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΊ Maestro Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΠ΅Π·ΠΈΡΡΠΎΡΠ°, ΡΡΠΎΠ±Ρ Π½Π° Π²Ρ ΠΎΠ΄Π΅ ΠΎΠ±ΡΡΠ½ΠΎ Π±ΡΠ» Π²ΡΡΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ, Π° ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΎΠ½ ΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΡΡ Π½ΠΈΠ·ΠΊΠΈΠΌ.
goto main_loop # ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΈΠΊΠ» ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠΊΡΠΈΠΏΡΠ° (ΡΠΌ. Π½ΠΈΠΆΠ΅). # ΠΡΠ° ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ 1, Π΅ΡΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π°ΠΆΠ°ΡΠ°, ΠΈ 0 Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅. # ΠΠ»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ (0-1023) Π² ΡΠΈΡΡΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ (0 ΠΈΠ»ΠΈ 1), ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ΅Π΅ # ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π΄Π΅Π»Π°Π΅ΠΌ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΌ ΠΏΠΎΡΠΎΠ³ΠΎΠΌ (500).# ΠΡΠ° ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ Π² ΡΡΠ΅ΠΊ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 1 ΠΈΠ»ΠΈ 0, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ # ΠΎΡ ΡΠΎΠ³ΠΎ, Π½Π°ΠΆΠ°ΡΠ° ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΈΠ»ΠΈ Π½Π΅Ρ. Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ° 0 get_position 500 less_than Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ # ΠΡΠ° ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ Π²ΡΡΠ΅ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ BUTTON Π΄Π»Ρ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ, # Π²ΠΊΠ»ΡΡΠ°Ρ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΡ Π΄Π»Ρ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠΌΠ° ΠΈΠ»ΠΈ Π΄ΡΠ΅Π±Π΅Π·Π³Π° Π½Π° Π²Ρ ΠΎΠ΄Π΅. sub wait_for_button_press wait_for_button_open_10ms wait_for_button_closed_10ms Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ # ΠΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡΠ΅, ΠΏΠΎΠΊΠ° ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΠ ββΠ±ΡΠ΄Π΅Ρ Π½Π°ΠΆΠ°ΡΠ° ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ 10 ΠΌΡ. sub wait_for_button_open_10ms get_ms # ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΠΌ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π² ΡΡΠ΅ΠΊ Π½Π°ΡΠΈΠ½Π°ΡΡ # ΡΠ±ΡΠΎΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π² ΡΡΠ΅ΠΊΠ΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π±ΡΠ» Π½Π°ΠΆΠ°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ° Π΅ΡΠ»ΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ get_ms Π΅ΡΠ΅ get_ms Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠΈΠ½ΡΡ 10 Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π΅ΡΠ»ΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°Ρ endif endif ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ # ΠΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡΠ΅, ΠΏΠΎΠΊΠ° ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡΠ΄Π΅Ρ Π½Π°ΠΆΠ°ΡΠ° Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 10 ΠΌΡ.sub wait_for_button_closed_10ms get_ms Π½Π°ΡΠΈΠ½Π°ΡΡ # ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΠΌ Π²ΡΠ΅ΠΌΡ Π² ΡΡΠ΅ΠΊΠ΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΎ Π½Π΅ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° Π΅ΡΠ»ΠΈ get_ms Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠΈΠ½ΡΡ 10 Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π΅ΡΠ»ΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°Ρ endif Π΅ΡΠ΅ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ get_ms endif ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ # ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ wait_for_button_press ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½ΠΈΠΆΠ΅: # ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ WAIT_FOR_BUTTON_PRESS, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΎΠΉΡΠΈ ΡΠ΅ΡΠ΅Π· # ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΉ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 1. main_loop: Π½Π°ΡΠΈΠ½Π°ΡΡ 4000 ΠΊΠ°Π΄ΡΠΎΠ² 5000 ΠΊΠ°Π΄ΡΠΎΠ² 6000 ΠΊΠ°Π΄Ρ 7000 ΠΊΠ°Π΄ΡΠΎΠ² 8000 ΠΊΠ°Π΄ΡΠΎΠ² ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΏΠΎΠ΄ΡΠ°ΠΌΠ½ΠΈΠΊ wait_for_button_press 1 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ Π²ΠΎΠ·Π²ΡΠ°Ρ
ΠΠ°ΠΊ ΠΈ Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΡ, ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠ°Π΄ΡΠΎΠ², Π½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ°Π΄ΡΠ°ΠΌΠΈ Π² ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ Π½Π°ΠΆΠ°ΡΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ.ΠΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° WAIT_FOR_BUTTON_PRESS ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΡΡ Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠΆΠ΄Π°ΡΡΡΡ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΡΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ½ΠΎΠΏΠΎΠΊ, Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π΄ΡΡΠ³ΠΈΡ ΡΠΈΠΏΠΎΠ² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΉ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π°ΠΌΠΈ
ΠΡΠΎΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Maestro ΠΊ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌ. ΠΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
# ΠΠΎΠ³Π΄Π° ΡΠΊΡΠΈΠΏΡ Π±ΠΎΠ»ΡΡΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ, # ΡΡΠΎΡ ΡΠΈΠΊΠ» Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°ΡΡ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ.ΠΠΎΠ³Π΄Π° ΠΊΠ½ΠΎΠΏΠΊΠ° # Π½Π°ΠΆΠΈΠΌΠ°Π΅ΡΡΡ, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. Π½Π°ΡΠΈΠ½Π°ΡΡ button_a, Π΅ΡΠ»ΠΈ sequence_a endif button_b, Π΅ΡΠ»ΠΈ sequence_b endif button_c, Π΅ΡΠ»ΠΈ sequence_c endif ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ # ΠΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΡΡΠΈΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ 1, Π΅ΡΠ»ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ # Π½Π°ΠΆΠ°ΡΠ° ΠΊΠ½ΠΎΠΏΠΊΠ°, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Π΅ΡΠ½ΠΈΡΠ΅ 0. # Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ button_a Π½Π°Π·Π½Π°ΡΠ΅Π½ ΠΊΠ°Π½Π°Π»Ρ 0, # button_b Π½Π°Π·Π½Π°ΡΠ΅Π½ ΠΊΠ°Π½Π°Π»Ρ 1, Π° # button_c Π½Π°Π·Π½Π°ΡΠ΅Π½ ΠΊΠ°Π½Π°Π»Ρ 2. # ΠΡΠΈ ΠΊΠ°Π½Π°Π»Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π½Π°ΡΡΡΠΎΠ΅Π½Ρ ΠΊΠ°ΠΊ Π²Ρ ΠΎΠ΄Ρ Π² # ΠΠΊΠ»Π°Π΄ΠΊΠ° ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΠΊΠ°Π½Π°Π»Π°. sub button_a 0 get_position 500 less_than Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ sub button_b 1 get_position Π½Π° 500 ΠΌΠ΅Π½ΡΡΠ΅_, ΡΠ΅ΠΌ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ sub button_c 2 get_position Π½Π° 500 less_than Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ # ΠΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΡΡΠΈΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ # Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π°.ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ , ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°Π»ΠΈ # Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. sub sequence_a 4000 3 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 1000 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° 6000 3 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ sub sequence_b 8000 4 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 900 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° 7000 4 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 900 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° 6000 4 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 900 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ sub sequence_c 10 4 ΡΠΊΠΎΡΠΎΡΡΠΈ 7000 4 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 3000 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° 6000 4 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄Π° 3000 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΎΠ·Π²ΡΠ°Ρ
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΎΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΠΎΡΡΡ. ΠΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ, ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ Π½Π°ΠΆΠ°ΡΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΏΠΎΠΊΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π°. ΠΠΎΠΆΠ½ΠΎ Π·Π°ΡΡΠ°Π²ΠΈΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ, Π½ΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π΅Π΅.Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Ρ ΠΊΠ²Π°Π»ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Ρ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ°ΡΡΡΡΠΎ.
ΠΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π°Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ DELAY ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 32 ΡΠ΅ΠΊΡΠ½Π΄Ρ. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π²Ρ Π·Π°Ρ ΠΎΡΠΈΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ»ΡΡΠ΅ ΡΡΠΎΠ³ΠΎ. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ, ΠΊΠ°ΠΊ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠ½Π΄ ΠΈΠ»ΠΈ ΠΌΠΈΠ½ΡΡ:
# ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅Ρ ΡΠ΅ΡΠ²ΠΎ 0 Π²ΠΏΠ΅ΡΠ΅Π΄ ΠΈ Π½Π°Π·Π°Π΄ Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΎΠΉ 10 ΠΌΠΈΠ½ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡΠΌΠΈ. Π½Π°ΡΠΈΠ½Π°ΡΡ 4000 0 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ 10 delay_minutes 8000 0 ΡΠ΅ΡΠ²ΠΎΠΏΡΠΈΠ²ΠΎΠ΄ 10 delay_minutes ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ # Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄, Π΄ΠΎ 65535 Ρ sub delay_seconds begin dup while # ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, Π΄ΠΎΡΡΠΈΠ³ Π»ΠΈ ΡΡΠ΅ΡΡΠΈΠΊ Π½ΡΠ»Ρ 1 ΠΌΠΈΠ½ΡΡ 1000 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° # Π²ΡΡΡΠΈΡΠ΅ Π΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈ Π·Π°Π΄Π΅ΡΠΆΠΈΡΠ΅ 1 Ρ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ drop return # ΡΠ΄Π°Π»ΠΈΡΡ 0 ΠΈΠ· ΡΡΠ΅ΠΊΠ° ΠΈ Π²Π΅ΡΠ½ΡΡΡ # Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΌΠΈΠ½ΡΡ, Π΄ΠΎ 65535 ΠΌΠΈΠ½ sub delay_minutes Π½Π°ΡΠ°ΡΡ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠΊΠ° 1 ΠΌΠΈΠ½ΡΡ 60 delay_seconds # Π²ΡΡΡΠΈΡΠ΅ Π΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈ Π·Π°Π΄Π΅ΡΠΆΠΈΡΠ΅ 1 ΠΌΠΈΠ½. ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ drop return # ΡΠ΄Π°Π»ΠΈΡΡ 0 ΠΈΠ· ΡΡΠ΅ΠΊΠ° ΠΈ Π²Π΅ΡΠ½ΡΡΡ
ΠΠ΅Π³ΠΊΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ Π·Π°Π΄Π΅ΡΠΆΠ΅ΠΊ Π½Π° ΡΠ°ΡΡ, Π΄Π½ΠΈ, Π½Π΅Π΄Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ.ΠΠ΄Π½Π°ΠΊΠΎ ΠΈΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΡΠ°ΠΉΠΌΠ΅Ρ Micro Maestro Π½Π΅ ΡΠ°ΠΊΠΎΠΉ ΡΠΎΡΠ½ΡΠΉ, ΠΊΠ°ΠΊ ΡΠ΅ΠΊΡΠ½Π΄ΠΎΠΌΠ΅Ρ - ΡΡΠΈ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Ρ Π½Π° 1%.
Π¦ΠΈΡΡΠΎΠ²ΠΎΠΉ Π²ΡΡ ΠΎΠ΄
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Micro Maestro ΠΊ ΡΠ΅ΠΏΠΎΡΠΊΠ΅ ShiftBars. ΠΠ΄ΠΈΠ½ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΏΠΈΡΠ°Π½ΠΈΡ 12 Π ΠΏΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. |
---|
Π€ΡΠ½ΠΊΡΠΈΡ ΡΠΈΡΡΠΎΠ²ΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π° Maestro ΡΠΏΠΎΡΠΎΠ±Π½Π° ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΠΌ ΡΠ³ΠΎΠ΄Π½ΠΎ, ΠΎΡ ΠΏΡΠΎΡΡΡΡ ΡΡ Π΅ΠΌ Π΄ΠΎ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄Π½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ShiftBrite ΠΈ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄Π½ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ShiftBar, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ».Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΊΠΎΠ½ΡΠ°ΠΊΡΡ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ, Π·Π°ΡΠ΅Π»ΠΊΠΈ ΠΈ Π΄Π°Π½Π½ΡΡ ShiftBrite ΠΈΠ»ΠΈ ShiftBar ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Ρ ΠΊ ΡΠ΅ΡΠ²ΠΎΠΊΠ°Π½Π°Π»Π°ΠΌ 0, 1 ΠΈ 2 ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈ Π²ΡΠ΅ ΡΡΠΈ ΠΊΠ°Π½Π°Π»Ρ Π½Π°ΡΡΡΠΎΠ΅Π½Ρ ΠΊΠ°ΠΊ Π²ΡΡ ΠΎΠ΄Ρ. ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ Π·Π΄Π΅ΡΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° RGB Π±Π΅ΡΠ΅Ρ ΠΈΠ· ΡΡΠ΅ΠΊΠ° 10-Π±ΠΈΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ, Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΈΠ½Π΅Π³ΠΎ ΡΠ²Π΅ΡΠΎΠ², Π·Π°ΡΠ΅ΠΌ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ 32-Π±Π°ΠΉΡΠΎΠ²ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ ΡΠ²Π΅ΡΠ° ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡΠΈΡΡ Π·Π°ΡΠ΅Π»ΠΊΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ShiftBrite Π½ΠΎΠ²ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π΅ΡΠ°. ΠΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΎΠΉ ShiftBrites.
Π½Π°ΡΠΈΠ½Π°ΡΡ 1023 0 0 RGB 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° # ΠΊΡΠ°ΡΠ½ΡΠΉ 0 1023 0 RGB 500 Π·Π°Π΄Π΅ΡΠΆΠΊΠ° # Π·Π΅Π»Π΅Π½ΡΠΉ 0 0 1023 rgb 500 delay # ΡΠΈΠ½ΠΈΠΉ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ # ΠΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ RGB Π΄Π»Ρ ShiftBrite / ShiftBar.# ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ: 1023 511 255 rgb sub rgb 0 send_bit # ΡΡΠΎΡ Π±ΠΈΡ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 0 send_bit # Π±ΠΈΡ Π°Π΄ΡΠ΅ΡΠ° - 0 ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ²Π΅ΡΠ° ΡΠ²ΠΎΠΏ Π³Π½ΠΈΠ»Ρ Π³Π½ΠΈΠ»Ρ send_10_bit_value send_10_bit_value send_10_bit_value 0 1 8000 1 ΡΠ΅ΡΠ²ΠΎ ΡΠ΅ΡΠ²ΠΎ # ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ ΡΠΈΠΊΡΠ°ΡΠΎΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ # ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ· 10 Π±ΠΈΡ sub send_10_bit_value 512 Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΎΠ±ΠΌΠ°Π½ ΠΏΠΎΠΊΠ° over over bitwise_and send_bit 1 shift_right ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ # ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ Π±ΠΈΡ sub send_bit Π΅ΡΠ»ΠΈ 8000 ΠΈΠ½Π°ΡΠ΅ 0 endif 2 ΡΠ΅ΡΠ²ΠΎ # ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΠΠΠΠ«Π Π½Π° 0 ΠΈΠ»ΠΈ 1 0 0 8000 0 ΡΠ΅ΡΠ²ΠΎ ΡΠ΅ΡΠ²ΠΎ # ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡ. Π§ΠΠ‘Π« Π²ΠΎΠ·Π²ΡΠ°Ρ
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ 0 Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΈ 8000 Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π²ΡΠ²ΠΎΠ΄Π°.ΠΡΠΎ ΡΠ°Π·ΡΠΌΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ, Π½ΠΎ Π»ΡΠ±ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ 0 Π΄ΠΎ 5999 ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, Π° Π»ΡΠ±ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ 6000 Π΄ΠΎ 32767 ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ.
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ Π²ΡΡ ΠΎΠ΄ (ΡΠΎΠ»ΡΠΊΠΎ Mini Maestro 12, 18 ΠΈ 24)
ΠΠ° Mini Maestro 12, 18 ΠΈ 24 ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΡΡ ΡΡΠΎΠ²Π½Ρ TTL (TX). ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Maestro ΠΌΠΎΠΆΠ΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Maestro, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠ°Π½Π°Π»ΠΎΠ² Π±Π΅Π· ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°. ΠΠΎΡ ΠΏΡΠΎΡΡΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΈΠΌ Maestro.Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄, Π½Π°ΡΡΡΠΎΠΉΡΠ΅ ΠΎΠ±Π° Maestros Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ UART Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ TX Π½Π° Π²Π΅Π΄ΡΡΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ ΠΊ RX Π½Π° Π²Π΅Π΄ΠΎΠΌΠΎΠΌ.
100 delay # Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠ°, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΡΡΠΎ Π΅ΡΡΡ Π²ΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡ 127 0 mini_ssc # ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΡΠ²ΠΎ 0 Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 127, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ mini-SSC 254 0 mini_ssc # ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΡΠ²ΠΎ 0 Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 254 ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ sub mini_ssc 0xFF serial_send_byte serial_send_byte serial_send_byte Π²ΠΎΠ·Π²ΡΠ°Ρ
.