[JS] Въоръжаване за изпита по JS със sublime text 2


51

Пускам тази тема за всички, които ще ползват редактора sublime text 2 и искат да си направят build система за тестване на javascript кода, както и как да си качвате package и да подкарате някакъв intellisence.

За да подкарате build - а първо е нужно да си свалите nodejs, който може да изтеглите от тук

След като го инсталирате стартирайте sublime text 2 и от менюто изберете tools -> build system -> new build system

В кода, който ще се появи запишете следното

{

     "cmd":  ["node",  "$file"]

}

След това запишете файла като javascript.sublime-build

След това рестартирайте програмата и напишете нещо да се изпълни в console.log() и натиснете F7 за да билднете.

Ето малко скрийншоти при успешен билд и неуспешен.

 

 

Препоръчвам ви да тествате примерните входове, като си ги изнесете отвън и направо в console.log да ви отпечатва резултата от функцията Solve. Така няма да се обърквате и да триете примерни входове в Solve и да си направите беля в bgcoder.

За intellisence  първо трябва да инсталирате package control за sublime text 2.

За да направите това натиснете Control + `. В полето, което ще се появи пльокнете следното нещо 

import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp) if not os.path.exists(ipp) else None;open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()) 

 

 След това рестартирайте и вече имате package control. Сега от preferences изберете Package control и след това изберете install package. Следва да намерите и инсталирате SublimeCodeIntel. Сега тествайте дали имате intellisence, като на скрийншота по-долу. 

За пълна информация може да прегледате тук

Ами това е нинджи. Успех и ще се видим на бойното поле.




Отговори



4
Изключително полезно.
И най-важното има интеграция с nodejs, което е и engine-а който ползваме в bgcoder.com

от Nikolay.IT (39117 точки)


0

intellisence-a по-добре ли се представя от на VS?


от todor_pr (1527 точки)


0
специално codeIntel-а не е лош, не очаквай кой знае какво.

от kaobg (212 точки)


5

Здравейте,

Да допълня - при инсталиране node.js Ви пита дали да се добави в path.

Ако сте изпуснали тази стъпка при опит за Build Ви казва нещо от рода на "Cannot find the file specified".

За да го избегнете може да редактирате файла и да напишете пълния път до node.js. Ако сте с 64 битов ОС: 

 

{
     "cmd":  ["c:\\Program Files (x86)\\nodejs\\node.exe",  "$file"]
}
 
ПП: Двойните кавички са за ескейпване.
 
За да подкарате интелисенса трябва да минете през следните стъпки.
 
 
Поздрави!

от nikolaikolarov (2177 точки)


0
Възраждам темата с една поправка. Вече пътя на инсталатора е в
c:\\Program Files\\nodejs\\node.exe
Благодарско на koko_pz, че точно неговия коментар веднага ме подсети кое се е омацало!

от rkunev (470 точки)

0
А ако някой има този проблем на OSX, пътят е: "cmd": ["/usr/local/bin/node", "$file"]

от mimirerelala (374 точки)



1
Браво. Аз доста се намъчих с Sublime text 2 , защото все не намирах подходяща информация в интернет. Писах няколко пъти и тук , накрая се отзова PDrenovska ( благодаря й сърдечно ;))) . Искам да питам нещо за Javascript, за да не пускам специално нова тема. Това нали е език, който раздвижва елементите в една уеб страница? Може да има и други функции, но това му е основната що се отнася за правенето на сайтове, нали? Тогава , защо ще се провежда изпит в който ще се решават задачи в стил С# ? Моите уважения, но аз нито искам , нито имам капацитета да стана програмист. Искам да науча да си движа страницата. Нали ме разбирате? Никога няма да ми се наложи да броя Жоро колко пъти скачал и къде скачал. Записах се за изпита, но очаквах съвсем друг тип задачи, сега като видях, че това си е чист С# ( който без особен зор съм му взел първа и втора част - за обща култура и най-вече от уважение към Наков , щото той настоятелно ми го препоръча ;))) . Но толкова ми стига - нямам вече време, искам да почвам да правя сайтове, ( безработен съм ) но няма как да твърдя , че знам Javascript. Не се оплаквам - вината си е моя , научих неща които няма да ми донесат хляб ( поне засега ) , а други които са ми важни не ги знам.....Понякога не е достъчно да си умен......трябва да действаш адекватно на ситуацията.....;(((

от ilv323 (803 точки)


0
Нали се сещаш, че в първия момент в който ти кажат да "раздвижиш" примерно една галерия със снимки, а ти идея си нямаш от да кажем масиви и цикли и алгоритми за работа с тях, нещата ще приключат много бързо.

от kensen (220 точки)

0
Именно за това говоря. Щом съм взел С шарп едно и две масивите и циклите съм ги научил, макар че не виждам къде е връзката с раздвижването на снимки ..., а ако има такава , защо не ни я казват в Академията ? Или ще кажеш - като за без пари толкова ми стига? ;))) Сигурен бях - винаги има уловка и като печелиш уж нещо, понякога губиш доста повече....

от ilv323 (803 точки)



3
Само да допълня, не знам дали знаете, но от Preferences -> Browse Packages можете да си едитвате абсолютно всеки снипет, супер полезно е.

от kaobg (212 точки)


1
Един въпрос. Как мога да задам на CodeIntel- а да разпознава, допълнителен файл с разширение .js? Имам предвид "js-console.js" на Дончо, защото не ми го разпознава променливата jsConsole, а от там и методите.



0

И аз го позлзвам това и предвид, че все пак ще правим някакви базови неща - все пак сме на изпит по JS1, мисля, че ще е предостатъчно :)


от kensen (220 точки)


1

Не знам дали при мен е така но startsWith и endWith не работеха.Ако някой също има този проблем може да използва този код за да си ги добави:
startsWith:

String.prototype.startsWith = function(str) 
{return (this.match("^"+str)==str)}

endsWith:

String.prototype.endsWith = function(str) 
{return (this.match(str+"$")==str)}

от Sharkey (505 точки)


1

Някой случайно да е успял да подкара на тоя пич дебъгера:

http://www.youtube.com/watch?v=LaH_43N34Jg

https://github.com/sokolovstas/SublimeWebInspector

на мен само ми отваря нов хром таб, но не зарежда самия скрипт.


от glubox (395 точки)


1

Здравейте колеги , ето как да си инсталирате nodejs на Sublime Text 2 :

За целта използвайте Sublime Package Control  site . Идете на този линк http://wbond.net/sublime_packages/package_control/installation  , копирайте инсталационния код :

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print('Please restart Sublime Text to finish installation')

В Sublime Text kликнете Ctrl+R за да се покаже конзолата ,после Paste на инсталационния код , натискате Enter. Рестартирайте Sublime Text 2 и сега вече можете да ползвате Sublime Package Control

От меню Preferences /Package Control намерете Discover Packages.Вашият браузер ще намери available packages.Натиснете Installs да ги сортирате по популярност , там се намира и Nodejs. Отворете sublime text2 , от Preferences/Package control , натиснете Install package и напишете в полето Nodejs , Package Control ще филтрира резултатите автоматично.Кликнете върху Nodejs да го инсталирате.Статус барът ще покаже вашият прогрес и ще ви информира , когато инсталацията завърши.

 

 

 

 


от Валентин Георгиев (0 точки)