
Скачать можно здесь.
Скачать можно здесь.
Что уже реализовано:
Кодогенератор и виртуальная машина к языку пока находятся на стадии прототипа (реализация рабочая, но далека от оптимальной).
Пример кода на GScript:
import myPackage.myModule;
func main()
{
var x = 10;
var a, b;
a = x * 2 + 1;
while(a > 0)
{
a = a - 1;
b = b + 1;
}
writeln(x, a, b);
}
Исходники проекта доступны на GitHub:
https://github.com/gecko0307/gscript
Примеры скриптов
Приветствуются предлолжения и пожелания – какую функциональность вы бы хотели видеть в языке (оговорка: поддержка ООП в ближайшее время не планируется).
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from gimpfu import *
def python_fu_thumbnailer(image, layer, width, height):
origWidth = pdb.gimp_image_width(image)
origHeight = pdb.gimp_image_height(image)
newWidth = origWidth
newHeight = origHeight
newX = 0
newY = 0
if (origWidth > origHeight):
newWidth = origHeight
newX = -(origWidth/2 - newWidth/2)
elif (origWidth < origHeight):
newHeight = origWidth
newY = -(origHeight/2 - newHeight/2)
pdb.gimp_layer_resize(layer, newWidth, newHeight, newX, newY)
pdb.gimp_image_resize_to_layers(image)
pdb.gimp_context_set_interpolation(INTERPOLATION_LANCZOS)
pdb.gimp_image_scale(image, width, height)
register(
"python-fu-thumbnailer",
"Thumbnailer",
"Thumbnailer 0.1",
"Timur Gafarov",
"(c) Copyright 2013 Timur Gafarov",
"09-02-2013",
"Make a thumbnail...",
"RGB*, GRAY*",
[
(PF_IMAGE, "image", "Target image", None),
(PF_DRAWABLE, "drawable", "Target layer", None),
(PF_SPINNER, "width", "Width:", 128, (1, 262144, 1)),
(PF_SPINNER, "height", "Height:", 128, (1, 262144, 1))
],
[],
python_fu_thumbnailer,
menu = "
/Python-Fu/Transform")
main()
Тестировал с GIMP 2.7.4 и Python 2.7.1.