Syntasticред рдЕрд╕рд╛рд╡рдзрд╛рди рдФрд░ рдмрд╣реБрднрд╛рд╖реА рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрди

рдкреНрд░реЗрд░рдгрд╛



рдЖрдк рдХрд┐рддрдиреА рдмрд╛рд░ рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рджреЗрдЦрддреЗ рд╣реИрдВ? рдореИрдВ рдЕрдХреНрд╕рд░ред рдФрд░ рдХрд┐рддрдиреА рдмрд╛рд░, рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдкрд╛рдпрд╛ рдФрд░ рдареАрдХ рдХрд┐рдпрд╛, рдЖрдк рдлрд┐рд░ рд╕реЗ, рдЬрдм рдЖрдк рдХреЛрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рд╕рдорд╛рди рд╕рдВрджреЗрд╢ рджреЗрдЦреЗрдВ?

рдореИрдВ рдЕрдХреНрд╕рд░ ...

рдЗрд╕рдХреЗ рдХрдИ рдХрд╛рд░рдг рд╣реИрдВ:





рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЕрдЧрд░ рдпрд╣ рд╕рд┐рд░реНрдл рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рдкреГрд╖реНрда рд╣реИ рдФрд░ рдХреЛрдб рдЬрд▓реНрджреА рд╕реЗ рдЦреЗрд▓рддреЗ рд╣реИрдВред рдФрд░ рдЕрдЧрд░ рдпрд╣ рдХреБрдЫ рд╣реИ, рддреЛ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдХрд╣реАрдВ рдмрд╛рд╣рд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП / рдЖрджрд┐ рдореЗрдВред рдЖрджрд┐



рдореИрдВрдиреЗ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рдЪрд▓рд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреЛрдб рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рд╛рд╡рдзрд╛рдиреА рдмрд░рддрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд╛рдпрджрд╛ рдирд╣реАрдВ рд╣реБрдЖред рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рд╡рд╛рд▓реА рдлрд╛рдЗрд▓реЗрдВ рд▓рдВрдмреА рд╣реИрдВ рдФрд░ рдПрдХ рджреВрд╕рд░реЗ рдХреЛрд╖реНрдардХ рдХреЛ рдЦреЛрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред



рд╡рд┐рдХрд▓реНрдк



рдкреНрд░рддреНрдпреЗрдХ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рдо рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧ-рдЗрди рд╣реЛрдирд╛ рд╕рдВрднрд╡ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, js рдХреЗ рд▓рд┐рдП jslint рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреЗ рд░реИрдкрд░реЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдм рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЖрдк рдЗрд╕реЗ рд░реВрдмреА рдХреЗ рд▓рд┐рдП рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреВрд▓ рдЧрдП рдЬреЗрдПрд╕-рдХреЛрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ ... рдмреЗрд╢рдХ, рдЖрдк рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреНрд▓рдЧ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ - рдФрд░ рдпрд╣ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╢рд░реНрдд рдкрд░ ...



рдирд┐рд░реНрдгрдп



рдФрд░ рд╢рд░реНрдд рдпрд╣ рд╣реИ: рдЖрдк рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рд╕рд┐рдВрдЯреИрд╕реНрдЯрд┐рдХ рдХреНрдпрд╛ рд╣реИ ред

рдкреНрд▓рдЧрдЗрди рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдЕрднреНрдпрд╛рд╕ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рд╣рд░ рд╢реБрд░реБрдЖрдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╡рд┐рдо-рдПрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдлрд┐рд░ рд╕реЗ рдЕрд╕рд╛рд╡рдзрд╛рдиреА рдФрд░ рдЕрддреНрдпрдзрд┐рдХ рдЕрд╕реНрдерд┐рд░рддрд╛ рд╣реИ)ред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдЗрд╕ рдЫреЛрдЯреЗ рд╕реЗ рд▓реЗрдЦ рдХреЛ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВред

рддреЛ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрдирд╛:



git clone github.com/scrooloose/syntastic.git

cd syntastic

rake install

# ruby

p -r * ~/.vim/







рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдкреНрд▓рдЧрдЗрди рдХреБрдЫ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдФрд░ рдкреНрд▓рдЧрдЗрди рдХрд╛рдо рдХреЛ рджреГрд╢реНрдпрдорд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рд╡рд╣ рд╣реИ рдХрдорд╛рдВрдб рдХреЛ .vimrc рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ред



let g:syntastic_enable_signs=1





рдФрд░ vim рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ (рдпрд╣ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ .vimrc рдФрд░ vim рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛрдбрд╝рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ)ред рдХреЛрдб рдХреЗ рдмрд╛рдИрдВ рдУрд░ рдХреНрд░рдорд╢рдГ рд▓рд╛рд▓ рдФрд░ рдкреАрд▓реЗ рд░рдВрдЧ рдХреА рдкреГрд╖реНрдарднреВрдорд┐ рдкрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ >> рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рджрд░реНрдЬ рдХрд░реЗрдВ :Errors



ред рдЕрд╕реБрд╡рд┐рдзрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдЖрдк рдмрдлрд░ рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдХрдорд╛рдВрдб рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рддреЛ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╡рд┐рдВрдбреЛ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВ :Errors



ред



рдЖрдЧреЗ



рдзреНрдпрд╛рди рджреЗрдВ : рдЬрдм рддрдХ рдЖрдк рдЕрдкрдиреЗ PATH рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рд╕реА рднреА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ www.javascriptlint.com/download.htm рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рдмрд╛рдЗрдирд░реА рдХреЛ рдХреЙрдкреА рдирд╣реАрдВ рдХрд░рддреЗ, рддрдм рддрдХ js-code рдХреА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рд╣реЛрдЧреАред



рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ vim :h syntastic



рдореЗрдВ рдкрдврд╝рдирд╛ рди рднреВрд▓реЗрдВ



рдкреНрд▓рдЧрдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди



рдХреБрдЫ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдкреНрд▓рдЧрдЗрди рддреНрд░реБрдЯрд┐ рд░реЗрдЦрд╛ рдХреЗ рдмрд╛рдИрдВ рдУрд░ рдорд╛рд░реНрдХрд░ рдирд╣реАрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИ ред рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд┐рдВрдЯреИрд╕реНрдЯрд┐рдХ рд╕реНрдЯреЗрдЯрд╕ рдзреНрд╡рдЬ рд╣реИ - рдпрд╣ рдкреНрд▓рдЧрдЗрди рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХрд╛ рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рд╣реИред рдЗрд╕ :h syntastic-statusline-flag



рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ :h syntastic-statusline-flag







рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЙрдкрд╛рдп рд╣реИ рдХрд┐ рд▓рд╛рдЗрди рдХреЛ рдЬреЛрдбрд╝рдиреЗ let b:shell = 'sh'



рдпрд╛ let b:shell = 'bash'



to .vimrcред рдЙрд╕рдХреЗ рдмрд╛рдж, рдЯреЛрдХрди рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдкрд░реНрдпреБрдХреНрдд рд╕рд┐рдВрдЯреИрд╕реНрдЯрд┐рдХ рд╕реНрдЯреЗрдЯрд╕ рдХреЛрдб рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИред



All Articles