PDA

Pogčedajte punu verziju : Izmena latinice u ćirilicu i obrnuto


Mladjo
31. 05. 2008., 13:05
Nasao sam ovu scriptu na sajtu Radio Televizije Vojvodina
/**
* Klasa za prevod teksta sa cirilice na latinicu.
* @author Jelena Kutlaca [mailto:jelena.kutlaca@activez.net]
*/

var sadrzaj;

var prevod;

function setSadrzaj(sadrzaj){
// sadrzaj=sadrzaj;

}

function getPrevod(){
return prevod;
}

function cir2lat(Source) {
var retValue = Source;
latinica = new Array('lj','nj','dž','Lj','Nj','Dž','a','b','v','g ','d','đ','e','ž','z','i','j','k','l','m','n','o', 'p','r','s','t','ć','u','f','h','c','č','š','A','B ','V','G','D','Đ','E','Ž','Z','I','J','K','L','M', 'N','O','P','R','S','T','Ć','U','F','H','C','Č','Š ');
cirilica = new Array ('љ','њ','џ','Љ','Њ','Џ','а','б','в','г','д','ђ',' е','ж','з','и','ј','к','л','м','н','о','п','р','с' ,'т','ћ','у','ф','х','ц','ч','ш','А','Б','В','Г',' Д','Ђ','Е','Ж','З','И','Ј','К','Л','М','Н','О','П' ,'Р','С','Т','Ћ','У','Ф','Х','Ц','Ч','Ш');

for(i=0; i<latinica.length; i++){
p = new RegExp(cirilica[i], "g");
retValue = retValue.replace(p, latinica[i]);
}
return retValue;
}

function cirSmall2Big(Source) {
var retValue = Source;
cirilica_big = new Array('Љ','Њ','Џ','Љ','Њ','Џ','Џ','А','Б','В','Г', 'Д','Ђ','Е','Ж','З','И','Ј','К','Л','М','Н','О','П ','Р','С','Т','Ћ','У','Ф','Х','Ц','Ч','Ш','А','Б', 'В','Г','Д','Ђ','Е','Ж','З','И','Ј','К','Л','М','Н ','О','П','Р','С','Т','Ћ','У','Ф','Х','Ц','Ч','Ш') ;
cirilica_small = new Array ('љ','њ','џ','Љ','Њ','Џ','Џ','а','б','в','г','д',' ђ','е','ж','з','и','ј','к','л','м','н','о','п','р' ,'с','т','ћ','у','ф','х','ц','ч','ш','А','Б','В',' Г','Д','Ђ','Е','Ж','З','И','Ј','К','Л','М','Н','О' ,'П','Р','С','Т','Ћ','У','Ф','Х','Ц','Ч','Ш');

for(i=0; i<cirilica_big.length; i++){
p = new RegExp(cirilica_small[i], "g");
retValue = retValue.replace(p, cirilica_big[i]);
}
return retValue;
}

function latSmall2Big(Source) {
var retValue = Source;
latinica_big = new Array('Č','Ć','Ž','Š','Đ');
latinica_small = new Array ('č','ć','ž','š','đ');

for(i=0; i<latinica_big.length; i++){
p = new RegExp(latinica_small[i], "g");
retValue = retValue.replace(p, latinica_big[i]);
}
return retValue;
}


function lat2uni(Source) {
var retValue = Source;
latinica = new Array('lj','nj','dž','Lj','LJ','Nj','NJ','Dž','DŽ' ,'a','b','v','g','d','đ','e','ž','z','i','j','k',' l','m','n','o','p','r','s','t','ć','u','f','h','c' ,'č','š','A','B','V','G','D','Đ','E','Ž','Z','I',' J','K','L','M','N','O','P','R','S','T','Ć','U','F' ,'H','C','Č','Š');
uni = new Array ('lj','nj','dž','Lj','LJ','NJ','NJ','Dž','Ž','a',' b','v','g','d','đ','e','ž','z','i','j','k','l','m' ,'n','o','p','r','s','t','ć','u','f','h','c','č',' š','A','B','V','G','D','Đ','E','Ž','Z','I','J','K' ,'L','M','N','O','P','R','S','T','Ć','U','F','H',' C','Č','Š');

for(i=0; i<latinica.length; i++){
p = new RegExp(latinica[i], "g");
retValue = retValue.replace(p, uni[i]);
}
return retValue;
}

function stripLatinTags(Source) {
var retValue = Source;

patternCodeLatStart = new RegExp('&lt;lat', "g");
retValue = retValue.replace(patternCodeLatStart, '');
patternCodeLatEnd = new RegExp('/lat&gt;', "g");
retValue = retValue.replace(patternCodeLatEnd, '');

return retValue;
}

function stripInputLatinTags(Source) {
var retValue = Source;

patternCodeLatStart = new RegExp('<lat', "g");
retValue = retValue.replace(patternCodeLatStart, '');
patternCodeLatEnd = new RegExp('/lat>', "g");
retValue = retValue.replace(patternCodeLatEnd, '');

return retValue;
}

function lat2cir(Source) {
var retValue = Source;
var patArray = new Array();
var splitArray = new Array();

latinica = new Array('lj','nj','dž','Lj','LJ','Nj','NJ','Dž','DŽ' ,'a','b','v','g','d','đ','e','ž','z','i','j','k',' l','m','n','o','p','r','s','t','ć','u','f','h','c' ,'č','š','A','B','V','G','D','Đ','E','Ž','Z','I',' J','K','L','M','N','O','P','R','S','T','Ć','U','F' ,'H','C','Č','Š');
cirilica = new Array ('љ','њ','џ','Љ','Љ','Њ','Њ','Џ','Џ','а','б','в',' г','д','ђ','е','ж','з', 'и', 'ј', 'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'ћ', 'у', 'ф', 'х', 'ц', 'ч', 'ш', 'А', 'Б', 'В', 'Г', 'Д', 'Ђ', 'Е', 'Ж', 'З', 'И', 'Ј', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'Ћ', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш');
// specSerbCharacters = new Array ('&нбсп', '&лт', '&гт', '&qуот', '&амп', '&лсqуо', '&рсqуо', '&бдqуо', '&лдqуо', '&рдqуо', '&ндасх', '&поунд', '&копy', '&рег', '&yен', '&пара', '&лаqуо', '&раqуо', '&цент', '&еуро', '&фрасл', '&мдасх', '&лсаqуо', '&рсаqуо');
// specLatCharacters = new Array ('&nbsp', '&lt', '&gt', '&quot', '&amp', '&lsquo', '&rsquo', '&bdquo', '&ldquo', '&rdquo', '&ndash', '&pound', '&copy', '&reg', '&yen', '&para', '&laquo', '&raquo', '&cent', '&euro', '&frasl', '&mdash', '&lsaquo', '&rsaquo');

specSerbCharacters = new Array ('&нбсп;', '&амп;', '&qуот;', '&цент;', '&еуро;', '&поунд;', '&yен;', '&цопy;', '&рег;', '&траде;', '&пермил;', '&мицро;', '&миддот;',
'&булл;', '&хеллип;', '&приме;', '&Приме;', '&сецт;', '&пара;', '&сзлиг;', '&лсаqуо;', '&рсаqуо;', '&лаqуо;', '&раqуо;', '&лсqуо;',
'&рсqуо;', '&лдqуо;', '&рдqуо;', '&сбqуо;', '&бдqуо;', '&лт;', '&гт;', '&ле;', '&ге;', '&ндасх;', '&мдасх;', '&мацр;', '&олине;', '&цуррен;',
'&брвбар;', '&умл;', '&иеxцл;', '&иqуест;', '&цирц;', '&тилде;', '&дег;', '&минус;', '&плусмн;', '&дивиде;', '&фрасл;', '&тимес;',
'&суп1;', '&суп2;', '&суп3;', '&фрац14;', '&фрац12;', '&фрац34;', '&фноф;', '&инт;', '&сум;', '&инфин;', '&радиц;', '&асyмп;', '&не;',
'&еqуив;', '&прод;', '&нот;', '&цап;', '&парт;', '&ацуте;', '&цедил;', '&ордф;', '&ордм;', '&даггер;', '&Даггер;', '&Аграве;', '&Аацуте;',
'&Ацирц;', '&Атилде;', '&Аумл;', '&Аринг;', '&АЕлиг;', '&Ццедил;', '&Еграве;', '&Еацуте;', '&Ецирц;', '&Еумл;', '&Играве;', '&Иацуте;',
'&Ицирц;', '&Иумл;', '&ЕТХ;', '&Нтилде;', '&Ограве;', '&Оацуте;', '&Оцирц;', '&Отилде;', '&Оумл;', '&Осласх;', '&ОЕлиг;', '&Сцарон;',
'&Уграве;', '&Уацуте;', '&Уцирц;', '&Уумл;', '&Yацуте;', '&Yумл;', '&ТХОРН;', '&аграве;', '&аацуте;', '&ацирц;', '&атилде;', '&аумл;', '&аринг;',
'&аелиг;', '&ццедил;', '&еграве;', '&еацуте;', '&ецирц;', '&еумл;', '&играве;', '&иацуте;', '&ицирц;', '&иумл;', '&етх;', '&нтилде;',
'&ограве;', '&оацуте;', '&оцирц;', '&отилде;', '&оумл;', '&осласх;', '&оелиг;', '&сцарон;', '&уграве;', '&уацуте;', '&уцирц;', '&уумл;', '&yацуте;',
'&тхорн;', '&yумл;', '&Бета;', '&Гамма;', '&Делта;', '&Епсилон;', '&Зета;', '&Ета;', '&Тхета;', '&Иота;', '&Каппа;', '&Ламбда;', '&Му;',
'&Ну;', '&Xи;', '&Омицрон;', '&Пи;', '&Рхо;', '&Сигма;', '&Тау;', '&Упсилон;', '&Пхи;', '&Цхи;', '&Пси;', '&Омега;', '&алпха;', '&бета;', '&гамма;',
'&делта;', '&епсилон;', '&зета;', '&ета;', '&тхета;', '&иота;', '&каппа;', '&ламбда;', '&му;', '&ну;', '&xи;', '&омицрон;', '&пи;',
'&рхо;', '&сигмаф;', '&сигма;', '&тау;', '&упсилон;', '&пхи;', '&цхи;', '&пси;', '&омега;', '&ларр;', '&уарр;', '&рарр;', '&дарр;',
'&харр;', '&лоз;', '&цлубс;', '&хеартс;', '&диамс;');

specLatCharacters = new Array ('*', '&', '"', '¢', '€', '£', '¥', '©', '®', '™', '‰', 'µ', '·',
'•', '…', '′', '″', '§', '¶', 'ß', '‹', '›', '«', '»', '‘',
'’', '“', '”', '‚', '„', '<', '>', '≤', '≥', '–', '—', '¯',
'‾', '¤', '¦', '¨', '¡', '¿', 'ˆ', '˜', '°', '−', '±', '÷', '⁄',
'×', '¹', '²', '³', '¼', '½', '¾', 'ƒ', '∫', '∑', '∞', '√', '≈',
'≠', '≡', '∏', '¬', '∩', '∂', '´', '¸', 'ª', 'º', '†', '‡', 'À',
'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î',
'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', 'Ø', 'Œ', 'Š', 'Ù', 'Ú', 'Û',
'Ü', 'Ý', 'Ÿ', 'Þ', 'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é',
'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', 'ø',
'œ', 'š', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ', 'Β', 'Γ', 'Δ', 'Ε', 'Ζ',
'Η', 'Θ', 'Ι', 'Κ', 'Λ', 'Μ', 'Ν', 'Ξ', 'Ο', 'Π', 'Ρ', 'Σ', 'Τ', 'Υ',
'Φ', 'Χ', 'Ψ', 'Ω', 'α', 'β', 'γ', 'δ', 'ε', 'ζ', 'η', 'θ', 'ι', 'κ',
'λ', 'μ', 'ν', 'ξ', 'ο', 'π', 'ρ', 'ς', 'σ', 'τ', 'υ', 'φ', 'χ', 'ψ',
'ω', '←', '↑', '→', '↓', '↔', '◊', '♣', '♥', '♦');

var patternCodeLatStart = new RegExp('&lt;lat', "g");
retValue = retValue.replace(patternCodeLatStart, '<lat');
var patternCodeLatEnd = new RegExp('/lat&gt;', "g");
retValue = retValue.replace(patternCodeLatEnd, '/lat>');

pattern = new RegExp('<.*?>', "g");
patArray = retValue.match(pattern);

for(i=0; i<latinica.length; i++){
p = new RegExp(latinica[i], "g");
retValue = retValue.replace(p, cirilica[i]);
}

newPatArray = retValue.match(pattern);
posOfPatArray = new Array();
if(patArray != null && patArray.length>0){
var pos = 0;
var splitPos = 0;
var maxNum = 0;
var newRetValue = "";

splitArray = retValue.split(pattern);
posOfSplitArray = new Array();

for(i=0; i<patArray.length; i++){
pos = retValue.indexOf(newPatArray[i], pos);
posOfPatArray[i] = pos;
pos = pos + newPatArray[i].length;
}

if(splitArray != null && splitArray.length>0){
for(i=0; i<splitArray.length; i++){
splitPos = retValue.indexOf(splitArray[i], splitPos);
posOfSplitArray[i] = splitPos;
splitPos = splitPos + splitArray[i].length;
}
maxNum = patArray.length + splitArray.length;

var j = 0;
var k = 0;
for(i=0; i<maxNum; i++){
if(k<patArray.length){
if(j<splitArray.length){
if(posOfPatArray[k] < posOfSplitArray[j]){
newRetValue = newRetValue + patArray[k];
k++;
} else {
newRetValue = newRetValue + splitArray[j];
j++;
}
} else {
if(k<=patArray.length){
newRetValue = newRetValue + patArray[k];
k++;
}
}
} else {
if(j<=splitArray.length){
newRetValue = newRetValue + splitArray[j];
j++;
}
}
}
} else {
var k = 0;
maxNum = patArray.length;
for(i=0; i<maxNum; i++){
if(k<=patArray.length){
newRetValue = newRetValue + patArray[k];
k++;
}
}
}

for(i=0; i<specSerbCharacters.length; i++){
specPattern = new RegExp(specSerbCharacters[i], "g");
newRetValue = newRetValue.replace(specPattern, specLatCharacters[i]);
}
// alert("newRetValue: " + newRetValue);
patternCodeLatStart = new RegExp('<lat', "g");
newRetValue = newRetValue.replace(patternCodeLatStart, '');
patternCodeLatEnd = new RegExp('/lat>', "g");
newRetValue = newRetValue.replace(patternCodeLatEnd, '');

// alert("newRetValue: " + newRetValue);
return newRetValue;
}

for(i=0; i<specSerbCharacters.length; i++){
specPattern = new RegExp(specSerbCharacters[i], "g");
retValue = retValue.replace(specPattern, specLatCharacters[i]);
}
// alert("retValue: " + retValue);
return retValue;
}

/* function cir2uni(Source) {
uni = new Array('љ','њ','џ','Љ','Љ',
'Њ','Њ','Џ','Џ','а',
'б','в','г','д','ђ',
'е','ж','з','и','ј',
'к','л','м','н','о',
'п','р','с','т','ћ',
'у','ф','х','ц','ч',
'ш','А','Б','В','Г',
'Д','Ђ','Е','Ж','З',
'И','Ј','•','Л','М',
'Н','К','П','Р','С',
'Т','Ћ','У','Ф','Х','Ц');


cirilica = new Array ('љ','њ','џ','Љ','Љ',
'Њ','Њ','Џ','Џ','а',
'б','в','г','д','ђ',
'е','ж','з','и','ј',
'к','л','м','н','о',
'п','р','с','т','ћ',
'у','ф','х','ц','ч',
'ш','А','Б','В','Г',
'Д','Ђ','Е','Ж','З',
'И','Ј','K','Л','М',
'Н','O','П','Р','С',
'Т','Ћ','У','Ф','Х',
'Ц');
return preg_replace(cirilica,uni,Source);
} */

function cir2unilat(Source) { //cirilica u latinicni unicod
var retValue = Source;
cirilica = new Array('љ','њ','џ','Љ','Љ',
'Њ','Њ','Џ','Џ','а',
'б','в','г','д','ђ',
'е','ж','з','и','ј',
'к','л','м','н','о',
'п','р','с','т','ћ',
'у','ф','х','ц','ч',
'ш','А','Б','В','Г',
'Д','Ђ','Е','Ж','З',
'И','Ј','K','Л','М',
'Н','O','П','Р','С',
'Т','Ћ','У','Ф','Х',
'Ц');
uni = new Array ('lj','nj','dž','Lj','LJ',
'NJ','NJ','Dž','Ž',
'a','b','v','g','d','đ',
'e','ž','z','i','j','k',
'l','m','n','o','p','r','s',
't','ć','u','f','h','c',
'č','š','A','B','V',
'G','D','Đ','E','Ž',
'Z','I','J','K','L','M','N','O',
'P','R','S','T','Ć','U','F',
'H','C','Č','Š');

for(i=0; i<cirilica.length; i++){
p = new RegExp(cirilica[i], "g");
retValue = retValue.replace(p, uni[i]);
}
return retValue;
}

function cir2uni(Source) { //cirilica u unikod
var retValue = Source;
uni = new Array('љ','њ','џ','Љ','Љ',
'Њ','Њ','Џ','Џ','а',
'б','в','г','д','ђ',
'е','ж','з','и','ј',
'к','л','м','н','о',
'п','р','с','т','ћ',
'у','ф','х','ц','ч',
'ш','А','Б','В','Г',
'Д','Ђ','Е','Ж','З',
'И','Ј','Л','М','Н',
'П','Р','С','Т','Ћ',
'У','Ф','Х','Ц','Ч',
'Ш');
cirilica = new Array ('љ','њ','џ','Љ','Љ',
'Њ','Њ','Џ','Џ','а',
'б','в','г','д','ђ',
'е','ж','з','и','ј',
'к','л','м','н','о',
'п','р','с','т','ћ',
'у','ф','х','ц','ч',
'ш','А','Б','В','Г',
'Д','Ђ','Е','Ж','З',
'И','Ј','K','Л','М',
'Н','O','П','Р','С',
'Т','Ћ','У','Ф','Х',
'Ц');

for(i=0; i<cirilica.length; i++){
p = new RegExp(cirilica[i], "g");
retValue = retValue.replace(p, uni[i]);
}
return retValue;
//return preg_replace(cirilica,uni,Source);
}

/*
function stripuj(s){
s = stripslashes(s);
s = str_replace('"',"\"",s);
return s;
}

function prevedi_l(text){
return stripuj(lat2uni(text));
}

function prevedi_c(text){
return stripuj(cir2uni(text));
}

function prevedi_c_l(text){
return stripuj(cir2unilat(text));
}

function prevedi(){
prevod=stripuj(cir2lat(sadrzaj));
}

function prevedi_druga(text){
return stripuj(cir2lat(text));
}

function prev_u_cir(text){
return stripuj(lat2cir(text));
}

function prevedi_u_uni(text){
return stripuj(lat2uni(text));
}
*/

Samo mi nije jasno akko se ovo koristi. Scripta automatski prebacuje tekst iz latinice u cirilicu ili obratno.

ivanhoe
31. 05. 2008., 16:42
pa za pocetak ovom kodu ocigledno fale delovi (deklaracija klase)

drugo, ovo je preterano iskomplikovano, sve ove metode su vrlo skolski napisane, ali pola ovih funkcija ti nece nikad trebati. Moze to da se odradi mnogo krace, potrazi malo po netu, Pedja Supurovic ima neke klase za ovo, ima jos puno toga sto su drugi radili, a i ja sam cini mi se vesao par funkcija koje rade jednostavnu transliteraciju (dal ovde ili na Dizajn Zoni, ne secam se)

EDIT: I naravno, posto je ovo kod copyrightovan by Jelena Kutlaca, pitanje je da li ti uopste smes da ga koristis? Uostalom najbolje je da kontakiras nju, pa da vidis i za licencu i za uputstvo..

Nemanja Avramović
31. 05. 2008., 17:01
Ili možeš da koristiš moju klasu za transliteraciju (http://www.phpclasses.org/browse/package/3897.html). Nije savršena, ali verujem da može u dosta slučajeva da pomogne. A i GPL je ;)

jablan
31. 05. 2008., 21:52
pa za pocetak ovom kodu ocigledno fale delovi (deklaracija klase)
Koje klase, u pitanju je kamara JS funkcija?

BTW, što bi iko to radio iz javaskripta?

ivanhoe
31. 05. 2008., 22:49
pa pise: "Klasa za prevod teksta" :)

Mladjo
04. 06. 2008., 09:42
Ok, skup funkcija je ovo ali ipak savrseno radi na sajtu http://www.rtv.co.yu/ Moje pitanje je u stvari bilo kako da se ova scripta postavi na sajt i da radi. Pokusao sam da nadjem i druga resenja na internetu koja ocigledno ne postoje. Vidim da ima pokusaja da se cak napravi wp plugin. U stvari Zoltan Csala je imao taj plugin ali nazalost sajt vise ne radi. Ovde takodje ima jedan pokusaj da se to odradi http://blog.urosevic.net/2008/02/26/421/wp-translit-samo-sto-nije/
U principu meni bi puno pomoglo neko jednostavno objasnje kako da ja sa ovom javascript prevedem obicnu html stranicu. Hvala!

Mladjo
04. 06. 2008., 09:43
E da autora scripte nije moguce kontaktirati.

Ilija Studen
04. 06. 2008., 10:34
Sada neću reći ništa preterano korisno, ali korišćenjem ovog koda bez dozvole autora ti kršiš njegova autorska prava. Drugim rečima - kradeš. Ajd da bar razumeš šta radiš, nego samo juriš nešto gotov bez osnovnog razumevanja kao i šta funkcioniše. Zasuči malo rukave...

Dnevna doza pižđenja ispunjena. Idem sada da radim nešto korisno :)

Mladjo
04. 06. 2008., 13:25
Kako sam ja shvatio svrhu ovog foruma ona je da uz uzajamne diskusije naucimo nesto. Ja sam zasukao rukave i nekolika dana pokusavam da savladam ovo izmedju ostalog i trazeci pomoc na ovom forumu medjutim osim Nemanje i ivanhoe koji su mi dali osnovne smernice od ostalih osim pizdenja i isticanja licnog ega stvarno nisam cuo nista preterano korisno.
Sledece ovaj code nema nikakavu licencu, sajt autora ne postoji, email adresa ne radi tako da je diskutabilno i ovo "drugim recima" boldovano. Takodje mislim da bi jedno dobro i lako za koriscenje resenje preslovljava znacilo puno za srpski web.
Hvala ljudimi koji nesebicno dele svoje znanje u vezi ovog pitanja : http://www.datavoyage.com/ult/ i rade nesto vrlo korisno.

Ilija Studen
04. 06. 2008., 14:04
Ajd sad malo edukacije, da ne bude da ti niko nije rekao i da misliš da možeš da radiš šta ti padne na pamet sa stvarima koje nađeš na netu.

To što nije navedena licenca za korišenje rada ne čini isti javnim vlasništvom, čak suprotno - znači da je rad zaštićen. Zakon štiti rad po defaultu i samo dodatim licencnim informacijama ti definišeš šta može da se radi, a šta ne.

Čitaj to kao - ne smeš da čačkaš osim ako nije naznačeno drugačije, a ne kao smeš da čačkas osim ako nije naznačeno drugačije.

Stoga stoji ono što sam boldovao u prethodnoj poruci. Ako nemaš pismeno odobrenje od autora ili kod nije pod licencom koja dozvolja redistribuciju ili remix ti kradeš.

Pored toga što imam ogroman ego i što autorsko pravo shvatam ozbiljno imam i problem sa ljudima koji ističu zajedništvo i priču da su zajednicu tu da bismo zajedno radili i postizali nešto kada im je to u interesu i kada time prikviraju jednostavnu želju da im neko drugi uradi posao. Ti da si se stvarno udubio u kod imao bi neka konkretna pitanja, a ne nalepio platu koda i rekao: "Može li mi neko pomoći da nateram ovo da radi."

Mladjo
04. 06. 2008., 15:25
Kada kazes da autorsko pravo shvatas ozbiljno, pretpostavljam da postujes i ostala pravila. Medjutim u oba svoja posta na ovoj temi koja se zove latinica i cirilica i nalazi se u podforumu pocetnicka pitanja pises o licencama i svojoj licnoj isfrustriranosti. O open source, autorskim pravima, ljudskim pravima i slobodama, mozemo da pricamo ali u odgovaracujoj temi.
Pretpostavljam takodje da i sam koristis izvesno programsko okruzenje koje nisi izmislio. Recimo php ili jsp a koji su open source. I sledece sto si mogao da je ono sto i Bill Gates javno priznaje na pitanje kako microsfot pravi profit:
He says they do it by "embracing and extending" the ideas of others.
I to dolazimo do licence...
Da ponovim o copyright mozemo da pricamo negde drugde a svaki tvoj sledece post koji odstupa od teme smatracu krsenjem pravilnika ovog foruma. O tvom stanju ne zelim da pricam uopste.

bluesman
04. 06. 2008., 16:13
Nije ovo mesto da se raspravlja o tome naročito na taj način, ipak činjenica je da treba da pitaš autora koji je naveden da li možeš da koristiš to, možda autor čak hoće i da ti pomogne. To je ono što je razumno.

Nisam baš shvatio zašto citiraš Gates-a, ali ako bolje pročitaš citat videćeš da on govori o "idejama" a ne o source code. Da je on uzeo source code bez pitanja i provaljivao kako radi pa od toga pravio svoj kod, odrali bi mu guzicu od tužbi za neovlašćeno korišćenje.

Nemoj da mešaš ego sa ovom pričom, ego možda možeš da povežeš sa nečim drugim, ovde je u pitanju samo nečije znanje i trud koje neko želi da iskoristi bez znanja i dozvole autora.

Kako bi tebi bilo da recimo fotografišeš nešto, pa ta tvoja fotografija osvane sutra u nekim novinama, a da te niko nije pitao da li može to da koristi, da ne pričamo o tome da ti od toga ništa nisi zaradio? Da li bi onda pričao o "egu" ? Ili bi ti onda bilo jasnije da to jednostavno ne sme tako da funkcioniše jer je to vrlo blizu otimačine, razbojništva, koliko god ti mislio da je to teška reč. I koja je kvalitativna razlika između nekoga ko uzme tuđi trud bez pitanja i nekoga ko na primer sačekuje decu ispred škole i otima im užinu ili patike?

A sasvim je legitimno da ti uzmeš taj kod, dobiješ ideju, i onda napraviš svoje, kad već nemaš dozvolu autora.

jablan
04. 06. 2008., 20:41
Pošto je ovo zajednica koja treba da se međusobno ispomaže, da ti pomognem: skripta koju si okačio se ne koristi ni na RTV, niti će se koristiti na Uroševićevom sajtu.

Probaj da naučiš razliku između serverskog i klijentskog skriptinga za početak.

Mladjo
05. 06. 2008., 03:04
Iskreno mi je zao sto je ova tema otisla u pravcu u kome ne treba sto nije bila moja namera.
@bluesman
Mislim da je citat Gates upravo odgovarajuci mada ga nisam dovoljno objasnio. On u izajavi koja jeste izvucena iz konteksta ali se moze shvatiti kao njegov stav na osnovu svih ostalih njegovih intervjua objasnjava da on ima pravo da koristi tudje ideje (resenja) dok god je zasticen zakonom. Sto on obilato koristi, pravi se legalista ali je bar iskren.
Ovim primerom sam hteo da objasnim da niko od nas nije izmislio toplu vodu samo neki zele da prisvoje pravo ili na vodu ili na vatru koja je zagreva. Sve ovo je deo jedne vece rasprave o opstim ljudskim pravima kojoj nije mesto ovde.
Ja i dalje uporno pokusavam da kontaktiram autora koda, za sada bezuspesno. Medjutim ako su trenutno autorska prava sporno mozemo i da preformulisemo pitanje: "Kako upotrebiti neki javascript da odradi transliteraciju ili preslovljavanje teksta?"
@jablan
Naravno da poznajem razliku izmedju serve i client side scripting. Ako mislis na Urosevica koji pokusava da napravi wp plugin za preslovljavanje on to pokusava da odradi u php pretpostavljam koristeci ult library.
Ja ne znam kako se vrsi preslovljavanje na RTV sajtu ali script koji sam postavio se nalazi u header sajta. Upravo zbog toga me zanima kako to radi.
summa summarum:
I dalje nista korisno. Ovo me navodi na razmisljanje da temi mozda i nije mesto u podforumu pocetnicka pitanja jer je ovo ocigledno pitanje kojem niko nije dorastao.
Hvala na konstruktivnim odgovorima.

LiquidBrain
05. 06. 2008., 13:21
A da se banuje ovaj leonl?