1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
|
* How to install a js2 environment:
** Emacs packages:
js2-mode
closure-glslint
** Linters:
*** gjslint
Either installed via apt-get or npm.
* How to install a nodejs environment:
Install the js2 environment.
** Emacs packages:
js-comint
** Node
Either installed with nvm or apt-get
* How to install a typescript environment:
** Node packages:
sudo npm -g install typescript
sudo npm -g install typescript-tools
This one seems to be pointless.
sudo npm -g install typescript-formatter
** Emacs packages:
flycheck-typescript-tslint
tide
tss
typescript
typescript-mode
** Emacs integration:
** Directory Structure:
project_root/
project_root/tsconfig.json
/scripts
/ts
/js
/tests
/ts
/js
/doc
** Making a tsconfig.json file:
https://basarat.gitbooks.io/typescript/content/docs/project/tsconfig.html
http://techiejs.com/Blog/Post/Leveraging-tsconfigjson-in-TypeScript-projects
https://github.com/Microsoft/TypeScript/wiki/tsconfig.json
Very basic for the above structure:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"declaration": false,
"noImplicitAny": false,
"removeComments": true,
"noLib": false,
"outDir": "scripts/js"
}
}
** Linting
*** tslint with standard unix formatter
sudo npm -g install tslint
*** Setup and edit a tslint.json file for configuration.
*** gjslint
One can also use gjslint as this offers the fixjsstyle option.
sudo npm -g install gjslint
apt-get install closure-linter
** Conventions
*** General Conventions:
https://github.com/Platypi/style_typescript
*** Naming conventions:
https://gist.github.com/aleksey-bykov/34599f736d745fee7136
*** Commenting conventions:
JS Doc style
http://usejsdoc.org/
|